本書所使用的軟件版本為MATLAB R2016a。MATLAB R2016a 內嵌程序命令、注釋、說明和運行結果,圖文并茂,使抽象的理論變得生動形象。
本書內容涵蓋傳遞函數的建立、穩定性分析、系統校正、根軌跡校正、狀態反饋仿真、PID 控制器參數設計和復雜控制系統仿真。本書可作為高等院校自動化、電氣工程及其自動化等專業的教材,也可供工程技術人員自學參考。
前 言
MATLAB 具有強大的數據處理能力,提供了矩陣運算函數、數學處理函數、控制理論工具箱、Simulink 工具箱等,可完成分析系統的性能指標、對系統進行圖形仿真設計的任務,實現對控制系統穩定性、準確性和快速性的判別。
本書的最大特色是將MATLAB 軟件與自動化應用融為一體,含有控制系統頻域法設計、PID控制器設計、狀態空間極點配置及最優化設計。書中的大量案例以MATLAB 命令程序為核心,一方面幫助使用者學習MATALB 的編程方法,另一方面為學習自動控制理論的程序設計提供支持。
本書配套MOOC,讀者可登錄中國大學MOOC 網(http: / / www.icourse163.org),搜索課程“自動控制理論實驗” 進行輔助學習。
本書以自動控制原理的分析方法為依據,力求解決自動化中的工程應用問題。在MATLAB軟件應用上,講解了變量、M 文件的編寫、函數使用的命令規則、二維及三維繪圖、Simulink的圖形化仿真步驟以及界面設計。
本書根據自動控制理論中時域、頻域、根軌跡和狀態空間理論,列舉了時域的峰值時間、穩態時間、上升時間、超調量、穩態誤差等動態特性參數分析,頻域中的幅值裕量、相位裕量、穿越頻率、根軌跡校正及狀態空間極點配置的求解方法。書中包含典型環節、二階系統階躍響應、勞斯穩定判據、伯德圖、根軌跡校正、超前和滯后校正、狀態反饋系統矩陣求解及PID 參數設計等,以計算機為核心,以案例為導向,為學生自行設計被控對象、分析系統性能指標、設計校正環節、實現控制器參數設計奠定了基礎。
本書可作為高等院校自動化、電氣工程及其自動化等專業的教材,也可供工程技術人員自學參考。
由于水平有限,書中存在缺點和錯誤在所難免,懇請廣大讀者批評指正。
編 者
目 錄
序
前言
第1 章 MATLAB 的功能和基本應用 1
1.1 MATLAB R2016a 的工作環境 1
1.1.1 MATLAB R2016a 窗口界面 1
1.1.2 MATLAB R2016a 工具欄菜單 2
1.1.3 MATLAB R2016a 的主要功能 3
1.1.4 MATLAB 窗口常用操作命令 4
1.1.5 MATLAB 新建變量 5
1.2 MATLAB 語言基礎 5
1.2.1 變量命令規則 5
1.2.2 全局變量與數據類型 6
1.2.3 常用標點符號及功能 8
1.3 代數運算 9
1.3.1 MATLAB 的常量表示 9
1.3.2 基本運算 9
1.3.3 數學函數 13
1.3.4 轉換函數 16
1.3.5 字符串操作函數 17
1.3.6 判斷數據類型函數 17
1.3.7 文件操作函數 18
1.3.8 常用特殊矩陣 19
1.3.9 句柄函數 20
1.3.10 數組表示 21
1.4 多項式處理 23
1.4.1 多項式的四則運算 23
1.4.2 多項式求根 24
1.4.3 多項式求導 24
1.4.4 多項式求解 25
1.5 空間向量表示 26
1.5.1 用線性等間距生成向量矩陣 26
1.5.2 線性及對數空間表示 26
1.6 邏輯函數 27
1.6.1 查找函數 27
1.6.2 測試向量函數 28
1.7 符號運算 28
1.7.1 符號變量表示 29
1.7.2 常用符號運算 31
1.7.3 求解符號方程 33
1.7.4 傅里葉變換與反變換 36
1.7.5 拉普拉斯變換與反變換 37
1.7.6 Z 變換與Z 反變換 37
1.7.7 符號極限 38
1.7.8 符號導數 38
1.7.9 符號積分 39
1.7.10 級數 40
1.8 插值運算 41
第2 章 MATLAB 程序設計 45
2.1 數據的輸入和輸出 45
2.1.1 數據輸入 45
2.1.2 數據輸出 46
2.2 程序結構 47
2.2.1 順序結構 47
2.2.2 選擇結構 48
2.2.3 循環結構 52
2.2.4 try 語句 57
2.3 M 文件 58
2.3.1 腳本文件與函數文件 58
2.3.2 函數文件的使用 59
2.4 文件操作 60
2.4.1 文件的打開 61
2.4.2 二進制文件的讀寫 61
2.4.3 文件的關閉 62
2.4.4 文本文件的讀寫 63
2.4.5 文件定位和文件狀態 65
2.4.6 按行讀取數據 66
第3 章 MATLAB 的靜態與動態繪圖功能 67
3.1 二維繪圖功能 67
3.1.1 繪制一般函數曲線 67
3.1.2 圖形對象及其句柄 71
3.1.3 繪制對數坐標圖 74
3.1.4 繪制特殊二維圖形函數曲線 75
3.1.5 繪制符號函數曲線 76
3.2 三維繪圖功能 79
3.2.1 繪制三維空間曲線 79
3.2.2 繪制網格矩陣 80
3.2.3 繪制常用三維圖形 81
3.2.4 繪制三維曲面圖 83
3.2.5 特殊三維立體圖 87
3.2.6 圖形顏色的修飾 90
3.2.7 色彩的渲染 91
3.3 創建動畫過程 92
3.3.1 三維圖形不同姿態 92
3.3.2 動畫函數 93
3.3.3 創建動畫步驟 94
3.4 圖像動畫 98
3.4.1 圖像文件操作 98
3.4.2 播放電影動畫 98
3.4.3 電影動畫文件保存 99
第4 章 MATLAB 在時域分析中的應用 101
4.1 傳遞函數的建立方法及形式轉換 101
4.1.1 自動控制理論中常用傳遞函數的表示 101
4.1.2 傳遞函數的形式轉換 105
4.1.3 多項式傳遞函數分解 108
4.2 框圖化簡 109
4.2.1 串聯結構 109
4.2.2 并聯結構 110
4.2.3 反饋結構 111
4.2.4 復雜結構 112
4.3 二階系統階躍響應 114
4.3.1 典型二階系統 114
4.3.2 階躍響應曲線 115
4.3.3 計算二階系統特征參數 117
4.4 提高系統動態品質的方法 121
4.4.1 微分反饋 121
4.4.2 串聯比例微分環節 121
4.5 高階系統穩定性分析 123
4.5.1 特征方程的根對穩定性的影響 123
4.5.2 使用勞斯判據分析系統穩定性 124
4.5.3 系統零極點對穩定性的影響 127
4.5.4 系統增益對穩定性的影響 129
4.5.5 控制系統穩態誤差計算 131
第5 章 MATLAB 在頻域及根軌跡分析的應用 136
5.1 頻域分析法 136
5.1.1 繪制伯德圖 136
5.1.2 繪制奈奎斯特曲線 140
5.1.3 繪制尼柯爾斯圖 142
5.1.4 控制系統頻域設計 142
5.2 頻域法校正設計 146
5.2.1 頻域法超前校正 147
5.2.2 頻域法滯后校正 151
5.2.3 頻域法超前-滯后校正 156
5.3 繪制根軌跡 160
5.3.1 繪制根軌跡的基本規則 160
5.3.2 根軌跡函數 161
5.3.3 使用根軌跡確定閉環特征根 162
5.3.4 使用根軌跡判定系統穩定性 163
5.3.5 繪制指定參數根軌跡 164
5.3.6 繪制零度根軌跡 164
5.4 根軌跡法校正設計 165
5.4.1 根軌跡校正的作用 165
5.4.2 根軌跡超前校正 166
5.4.3 根軌跡滯后校正 170
第6 章 MATLAB 在狀態空間分析中的應用 174
6.1 極點配置與狀態反饋 174
6.1.1 基本概念 174
6.1.2 極點配置的條件 175
6.1.3 極點配置的原理方法 176
6.1.4 系統的可控性與可觀測性 177
6.1.5 極點配置 179
6.2 最優二次型設計 191
6.2.1 連續系統最優二次型設計 191
6.2.2 離散系統最優二次型設計 193
6.2.3 對輸出加權的最優二次型設計 195
6.2.4 Kalman 濾波器 196
第7 章 Simulink 在自動控制理論中的仿真 200
7.1 Simulink 仿真模型及參數設置 200
7.1.1 基本模塊 200
7.1.2 模塊的參數和屬性設置 205
7.2 Simulink 仿真命令 207
7.2.1 運行命令 207
7.2.2 線性化處理命令 207
7.2.3 構建模型命令 207
7.2.4 輸入、輸出操作命令 212
7.3 六種典型環節仿真分析 213
7.3.1 比例環節特性 213
7.3.2