本書基于MATLAB 2015版寫作,在共16章的篇幅中分別介紹了MATLAB的基礎(chǔ)操作、Simulink工具箱、MATLAB在自動(dòng)控制中的應(yīng)用、線性規(guī)劃工具箱、數(shù)字信號(hào)處理工具箱、圖像處理工具箱、系統(tǒng)辨識(shí)、模糊工具箱、以及MATLAB在自抗擾控制系統(tǒng)中的應(yīng)用。本書中所有章節(jié)通過適量的典型實(shí)例操作和重點(diǎn)知識(shí)講解相結(jié)合的方式,對(duì)MATLAB的基礎(chǔ)知識(shí)、功能以及命令函數(shù)進(jìn)行全面的講解。本書實(shí)例配操作視頻,對(duì)實(shí)例操作過程詳細(xì)講解,讀者可以通過觀看視頻來學(xué)習(xí)。
本書具有操作性強(qiáng),指導(dǎo)性強(qiáng),語(yǔ)言簡(jiǎn)潔的特點(diǎn),內(nèi)容涵蓋了MATLAB在當(dāng)前工程應(yīng)用中的主要應(yīng)用領(lǐng)域?勺鳛镸ATLAB軟件初學(xué)者的入門和提高的學(xué)習(xí)教程,或者作為各大中專院校教育、培訓(xùn)機(jī)構(gòu)的MATLAB教材,也可供工程實(shí)際等領(lǐng)域的人員參考。
謝龍漢,博士,研究方向CAD/CAE/CAM。在我社出版的《UG NX 中文版曲面造型基礎(chǔ)教程》,累計(jì)印刷14000冊(cè),成績(jī)還不錯(cuò)。 鐘翠霞,工學(xué)碩士,畢業(yè)于浙江大學(xué)過程裝備與控制工程專業(yè),研究方向CAD,現(xiàn)就職于廣州本田汽車有限公司研發(fā)中心。運(yùn)用UG進(jìn)行多個(gè)項(xiàng)目的設(shè)計(jì)工作,對(duì)UG的應(yīng)用有相當(dāng)多的心得。 王云高,產(chǎn)品設(shè)計(jì)及數(shù)控加工工程師,在模具行業(yè)工作已有十余年,對(duì)產(chǎn)品設(shè)計(jì)、數(shù)控加工等具有相當(dāng)豐富的經(jīng)驗(yàn),精通Pro/E的產(chǎn)品設(shè)計(jì)、模具設(shè)計(jì)、數(shù)控加工,設(shè)計(jì)過的產(chǎn)品不計(jì)其數(shù)。目前利用業(yè)余時(shí)間開展Pro/E培訓(xùn)工作。
第1章 基礎(chǔ)入門 1
1.1 MATLAB的安裝 1
1.2 MATLAB的啟動(dòng)及操作界面 3
1.2.1 MATLAB的啟動(dòng) 3
1.2.2 MATLAB的操作界面 3
1.3 M文件編輯器 4
1.3.1 M文件編輯器的啟動(dòng) 4
1.3.2 用M文件編寫簡(jiǎn)單的程序 5
1.4 MATLAB幫助系統(tǒng)及其使用 6
1.4.1 幫助系統(tǒng)的類型 6
1.4.2 常用幫助指令 6
1.4.3 Help幫助瀏覽器 7
第2章 符號(hào)計(jì)算 10
2.1 符號(hào)對(duì)象的創(chuàng)建 10
2.1.1 創(chuàng)建符號(hào)變量和表達(dá)式 10
2.1.2 符號(hào)與數(shù)值之間的轉(zhuǎn)化 14
2.1.3 符號(hào)表達(dá)式的化簡(jiǎn) 16
2.2 符號(hào)微積分 19
2.2.1 極限和導(dǎo)數(shù)的符號(hào)計(jì)算 20
2.2.2 序列/級(jí)數(shù)的符號(hào)求和 21
2.2.3 符號(hào)積分 22
2.3 微分方程的符號(hào)解法 24
2.3.1 求微分方程符號(hào)解的一般指令 24
2.3.2 符號(hào)微分方程解法實(shí)例 24
2.4 符號(hào)矩陣分析和代數(shù)方程解 26
2.4.1 符號(hào)矩陣分析 26
2.4.2 線性方程組的符號(hào)解法 30
2.5 符號(hào)變換及反變換 31
2.5.1 傅里葉變換及其反變換 31
2.5.2 拉普拉斯變換及其反變換 33
2.5.3 Z變換及其反變換 36
2.6 代數(shù)狀態(tài)方程求符號(hào)傳遞函數(shù) 38
2.6.1 結(jié)構(gòu)框圖的代數(shù)狀態(tài)方程解法 38
2.6.2 信號(hào)流圖的代數(shù)狀態(tài)方程解法 41
2.7 符號(hào)計(jì)算的簡(jiǎn)易繪圖函數(shù) 43
2.7.1 二維繪圖函數(shù) 43
2.7.2 三維繪圖函數(shù) 46
2.7.3 等高線繪圖函數(shù) 48
2.7.4 三維曲面繪圖函數(shù) 49
第3章 MATLAB數(shù)組和矩陣運(yùn)算基礎(chǔ) 53
3.1 數(shù)組的創(chuàng)建、運(yùn)算及其尋址 53
3.1.1 數(shù)組的創(chuàng)建 53
3.1.2 數(shù)組的運(yùn)算規(guī)則 57
3.1.3 數(shù)組的操作 59
3.1.4 數(shù)組的尋址 61
3.1.5 關(guān)系和邏輯操作 63
3.2 矩陣分析 65
3.2.1 矩陣運(yùn)算規(guī)則 66
3.2.2 矩陣分析計(jì)算 69
3.3 矩陣分解 75
3.3.1 特征值及特征向量 75
3.3.2 奇異值分解 79
3.3.3 LU分解 81
3.3.4 Cholesky分解 84
3.3.5 QR分解 85
3.4 特殊矩陣 89
3.4.1 常用特殊矩陣及其創(chuàng)建 89
3.4.2 其他特殊矩陣 92
第4章 數(shù)值計(jì)算 97
4.1 數(shù)理統(tǒng)計(jì)的MATLAB求解 97
4.1.1 常用的統(tǒng)計(jì)分布指令 98
4.1.2 概率函數(shù)、分布函數(shù)和隨機(jī)數(shù)的產(chǎn)生 100
4.2 多項(xiàng)式運(yùn)算 107
4.2.1 多項(xiàng)式的運(yùn)算及其函數(shù)表示 107
4.2.2 有限長(zhǎng)序列的卷積 115
4.3 插值和擬合 118
4.3.1 插值 119
4.3.2 擬合 126
4.4 線性方程(組)的求解 135
4.4.1 線性方程的數(shù)值求解 135
4.4.2 線性方程組的數(shù)值求解 137
4.5 數(shù)值微積分 139
4.5.1 數(shù)值微分 139
4.5.2 數(shù)值積分 141
4.5.3 常微分方程的數(shù)值求解 146
第5章 MATLAB繪圖處理 154
5.1 概述 154
5.1.1 離散數(shù)據(jù)圖形的繪制 154
5.1.2 連續(xù)函數(shù)曲線的繪制 155
5.2 二維圖形 156
5.2.1 基本繪圖函數(shù) 157
5.2.2 坐標(biāo)軸控制和圖形標(biāo)識(shí)命令 161
5.2.3 多重曲線繪圖 165
5.2.4 ginput指令簡(jiǎn)介 168
5.3 三維曲線和曲面 170
5.3.1 三維繪圖指令plot3 170
5.3.2 三維網(wǎng)格指令mesh 172
5.3.3 三維曲面指令surf 174
5.3.4 圖形視角及透視控制 176
5.3.5 圖形著色處理 182
5.3.6 圖形光照處理 190
5.4 圖形窗功能簡(jiǎn)介 195
5.4.1 圖形窗口的創(chuàng)建 195
5.4.2 圖形窗口的菜單 196
第6章 M文件程序設(shè)計(jì)基礎(chǔ) 201
6.1 M文件 201
6.1.1 M腳本文件 201
6.1.2 M函數(shù)文件 203
6.1.3 局部變量和全局變量 205
6.1.4 M函數(shù)文件的一般結(jié)構(gòu) 207
6.2 數(shù)據(jù)及數(shù)據(jù)文件 208
6.2.1 數(shù)據(jù)類型 208
6.2.2 數(shù)據(jù)輸入向?qū)В↖mport Wizard) 210
6.2.3 數(shù)據(jù)的輸入與輸出 211
6.3 程序的流程控制 214
6.3.1 循環(huán)語(yǔ)句 214
6.3.2 if條件語(yǔ)句 219
6.3.3 switch-case語(yǔ)句 222
6.3.4 控制程序流的其他常用指令 224
6.4 程序的調(diào)試與優(yōu)化 228
6.4.1 程序的直接調(diào)試法 228
6.4.2 調(diào)試器的使用 232
6.4.3 程序設(shè)計(jì)優(yōu)化 233
6.5 MATLAB函數(shù)類別 236
6.5.1 主函數(shù) 236
6.5.2 子函數(shù) 236
6.5.3 匿名函數(shù) 237
6.5.4 嵌套函數(shù) 237
6.5.5 私有函數(shù) 239
6.6 函數(shù)句柄 239
6.6.1 函數(shù)句柄的創(chuàng)建和顯示 239
6.6.2 函數(shù)句柄的基本操作 240
第7章 圖形用戶界面 243
7.1 對(duì)象和句柄 243
7.1.1 句柄 243
7.1.2 對(duì)象 244
7.2 GUI圖形簡(jiǎn)介 248
7.2.1 GUIDE的啟動(dòng) 248
7.2.2 GUI模板 249
7.2.3 圖形用戶界面的設(shè)計(jì)步驟 252
7.2.4 回調(diào)函數(shù) 252
7.3 GUI的底層代碼實(shí)現(xiàn) 257
7.3.1 GUI底層代碼實(shí)例 257
7.3.2 常用對(duì)象介紹 262
7.4 圖形用戶界面綜合實(shí)例 275
第8章 Notebook 280
8.1 Notebook的安裝及啟動(dòng) 280
8.1.1 Notebook的安裝 280
8.1.2 Notebook的啟動(dòng) 281
8.2 M-book的使用 282
8.3 M-book中代碼的運(yùn)行和結(jié)果輸出 282
8.4 輸出格式控制 286
8.5 Notebook使用中的幾個(gè)問題 288
第9章 Simulink交互式仿真集成環(huán)境 289
9.1 Simulink 運(yùn)行方法及其編輯窗口 290
9.2 Simulink常用模塊庫(kù) 291
9.2.1 連續(xù)(Continuous)模塊庫(kù) 291
9.2.2 非連續(xù)(Discontinuous)模塊庫(kù) 292
9.2.3 離散(Discrete)模塊庫(kù) 293
9.2.4 數(shù)學(xué)運(yùn)算(Math Operations)模塊庫(kù) 294
9.2.5 輸出(Sinks)模塊庫(kù) 295
9.2.6 輸入源(Sources)模塊庫(kù) 296
9.3 Simulink 功能模塊的處理 298
9.3.1 Simulink模塊參數(shù)設(shè)置 298
9.3.2 Simulink 模塊間連線處理 299
9.3.3 Simulink 模塊基本操作 300
9.4 Simulink建模與仿真實(shí)例 302
9.5 子系統(tǒng)與模塊封裝技術(shù) 311
9.5.1 子系統(tǒng) 312
9.5.2 封裝模塊 316
9.6 S函數(shù) 318
9.6.1 S函數(shù)基本概念 318
9.6.2 S函數(shù)工作原理 319
9.6.3 用M文件編寫S函數(shù) 319
9.7 本章小結(jié) 323
第10章 MATLAB在自動(dòng)控制中的應(yīng)用 325
10.1 控制系統(tǒng)穩(wěn)定性分析 325
10.1.1 代數(shù)穩(wěn)定判據(jù) 325
10.1.2 根軌跡穩(wěn)定性分析 329
10.1.3 頻域穩(wěn)定性分析 334
10.1.4 穩(wěn)態(tài)誤差的分析 343
10.2 控制系統(tǒng)的性能指標(biāo)分析 348
10.2.1 控制系統(tǒng)的時(shí)域特性 349
10.2.2 控制系統(tǒng)的頻域特性 352
10.3 控制系統(tǒng)校正設(shè)計(jì)的MATLAB實(shí)現(xiàn) 354
10.3.1 控制系統(tǒng)校正設(shè)計(jì)概述 354
10.3.2 控制系統(tǒng)伯德圖校正設(shè)計(jì)方法 354
10.3.3 控制系統(tǒng)的根軌跡校正設(shè)計(jì) 365
10.3.4 單輸入單輸出系統(tǒng)設(shè)計(jì)工具 373
第11章 最優(yōu)化方法 379
11.1 線性規(guī)劃基本內(nèi)容及MATLAB應(yīng)用 380
11.1.1 引例 380
11.1.2 線性規(guī)劃的基本算法—單純形法 381
11.2 無(wú)約束最優(yōu)化 387
11.2.1 無(wú)約束最優(yōu)化的基本算法 387
11.2.2 MATLAB解優(yōu)化問題 390
11.3 非線性規(guī)劃 398
11.3.1 非線性規(guī)劃的基本概念 398
11.3.2 懲罰函數(shù)法 399
11.3.3 MATLAB求解 401
第12章 數(shù)字信號(hào)處理 407
12.1 數(shù)字信號(hào)處理與離散時(shí)間系統(tǒng) 407
12.1.1 數(shù)字信號(hào)處理概述 407
12.1.2 數(shù)字信號(hào)處理的基本概念 408
12.1.3 離散時(shí)間信號(hào) 409
12.1.4 常用信號(hào)生成函數(shù) 417
12.1.5 離散時(shí)間信號(hào)的相關(guān)性 418
12.2 序列的傅里葉變換的MATLAB實(shí)現(xiàn) 420
12.2.1 序列的傅里葉變換公式 420
12.2.2 周期序列離散傅里葉級(jí)數(shù)及傅里葉變換的MATLAB實(shí)現(xiàn) 423
12.3 利用Z變換分析信號(hào)和系統(tǒng)頻域特性的MATLAB實(shí)現(xiàn) 424
12.3.1 Z變換的定義 425
12.3.2 Z變換的收斂域 425
12.3.3 Z變換的性質(zhì) 426
12.3.4 Z變換的MATLAB求解 427
12.3.5 利用Z變換求解差分方程 429
12.3.6 利用Z變換分析系統(tǒng)頻域特性 433
12.4 離散傅里葉變換(DFT)的MATLAB實(shí)現(xiàn) 437
12.4.1 DFT的定義和性質(zhì) 437
12.4.2 DFT的MATLAB實(shí)現(xiàn) 438
12.4.3 離散傅里葉級(jí)數(shù)及其MATLAB實(shí)現(xiàn) 439
12.5 快速傅里葉變換及其應(yīng)用的MATLAB實(shí)現(xiàn) 441
12.5.1 快速傅里葉變換的基本用法 442
12.5.2 快速傅里葉變換的應(yīng)用舉例 443
12.6 無(wú)限脈沖響應(yīng)數(shù)字濾波器的設(shè)計(jì)及MATLAB實(shí)現(xiàn) 450
12.6.1 數(shù)字濾波器概述 451
12.6.2 IIR濾波器的設(shè)計(jì)方法 452
12.6.3 濾波器的性能指標(biāo)及MATLAB函數(shù) 455
12.6.4 IIR數(shù)字濾波器設(shè)計(jì)常用的MATLAB函數(shù) 456
12.6.5 IIR數(shù)字濾波器的設(shè)計(jì) 458
12.6.6 MATLAB提供的IIR濾波器設(shè)計(jì)函數(shù):完全設(shè)計(jì)法 464
12.6.7 IIR數(shù)字濾波器的直接設(shè)計(jì)法 467
12.7 FIR數(shù)字濾波器設(shè)計(jì)及MATLAB實(shí)現(xiàn) 469
12.7.1 FIR數(shù)字濾波器概述 470
12.7.2 窗函數(shù)設(shè)計(jì)FIR濾波器 472
12.7.3 MATLAB提供的窗函數(shù)及窗函數(shù)設(shè)計(jì)的MATLAB實(shí)現(xiàn) 473
12.7.4 FIR數(shù)字濾波器的最優(yōu)化設(shè)計(jì)及MATLAB實(shí)現(xiàn) 486
第13章 圖像處理 492
13.1 數(shù)字圖像的基本原理 493
13.1.1 數(shù)字圖像的表示 493
13.1.2 數(shù)字圖像的MATLAB操作基礎(chǔ) 493
13.1.3 數(shù)字圖像的類型及其轉(zhuǎn)換 498
13.2 圖像增強(qiáng) 509
13.2.1 灰度變換增強(qiáng) 509
13.2.2 直方圖增強(qiáng) 514
13.2.3 圖像平滑 516
13.2.4 圖像銳化 527
13.2.5 頻域增強(qiáng) 531
13.3 圖像復(fù)原 536
13.3.1 退化模型 537
13.3.2 無(wú)約束圖像復(fù)原 538
13.3.3 有約束圖像復(fù)原 539
13.4 二值形態(tài)學(xué)操作 541
13.4.1 膨脹和腐蝕 541
13.4.2 開操作和閉操作 543
13.4.3 膨脹和腐蝕的MATLAB實(shí)現(xiàn)方法 543
13.4.4 一些基本的形態(tài)學(xué)算法 544
13.5 圖像壓縮編碼 545
13.5.1 圖像壓縮編碼概述 545
13.5.2 無(wú)損壓縮技術(shù) 546
13.5.3 有損壓縮技術(shù) 547
13.6 圖像分割 548
13.6.1 邊緣檢測(cè)方法 548
13.6.2 閾值分割技術(shù) 551
13.6.3 區(qū)域分割技術(shù) 552
第14章 系統(tǒng)辨識(shí) 554
14.1 系統(tǒng)辨識(shí)的基本理論 554
14.1.1 系統(tǒng)和模型 554
14.1.2 辨識(shí)問題 555
14.1.3 系統(tǒng)辨識(shí)的步驟 555
14.1.4 系統(tǒng)辨識(shí)的誤差準(zhǔn)則 556
14.2 最小二乘法參數(shù)辨識(shí)及其MATLAB仿真 558
14.2.1 最小二乘法的基本原理 558
14.2.2 加權(quán)最小二乘法的基本原理 560
14.2.3 最小二乘法的遞推算法 564
14.2.4 增廣最小二乘法及MATLAB實(shí)現(xiàn) 570
14.3 參數(shù)的梯度校正辨識(shí) 575
14.3.1 確定性問題的梯度校正參數(shù)辨識(shí)及MATLAB實(shí)現(xiàn) 575
14.3.2 隨機(jī)問題的梯度校正參數(shù)辨識(shí) 582
14.3.3 隨機(jī)逼近法 583
14.4 極大似然估計(jì)參數(shù)辨識(shí) 586
14.4.1 極大似然參數(shù)辨識(shí)的基本概念 586
14.4.2 系統(tǒng)模型參數(shù)的極大似然估計(jì) 588
14.4.3 遞推的極大似然參數(shù)估計(jì) 594
14.5 Bayes辨識(shí)方法及MATLAB實(shí)現(xiàn) 600
14.5.1 Bayes辨識(shí)方法的基本原理 600
14.5.2 最小二乘模型的Bayes參數(shù)辨識(shí) 601
14.5.3 MATLAB仿真實(shí)例 602
14.6 神經(jīng)網(wǎng)絡(luò)模型辨識(shí)方法及MATLAB實(shí)現(xiàn) 605
14.6.1 神經(jīng)網(wǎng)絡(luò)基本介紹 606
14.6.2 BP神經(jīng)網(wǎng)絡(luò) 609
14.6.3 RBF神經(jīng)網(wǎng)絡(luò)辨識(shí) 615
14.7 模糊系統(tǒng)辨識(shí)及MATLAB實(shí)現(xiàn) 620
14.7.1 模糊理論概述 620
14.7.2 基于T-S模型的模糊系統(tǒng)辨識(shí) 626
14.7.3 模糊逼近 629
第15章 自抗擾控制技術(shù)的MATLAB實(shí)現(xiàn) 633
15.1 經(jīng)典PID控制器 633
15.1.1 經(jīng)典PID控制律 633
15.1.2 經(jīng)典PID的優(yōu)勢(shì)與不足 637
15.2 安排過渡過程仿真 638
15.3 微分跟蹤器及其MATLAB仿真 645
15.3.1 經(jīng)典微分環(huán)節(jié)的噪聲放大效應(yīng) 645
15.3.2 微分跟蹤器 646
15.3.3 最速控制綜合函數(shù) 653
15.4 誤差反饋控制律 661
15.5 擴(kuò)張狀態(tài)觀測(cè)器 668
15.5.1 狀態(tài)觀測(cè)器 668
15.5.2 擴(kuò)張狀態(tài)觀測(cè)器 681
15.5.3 高增益狀態(tài)觀測(cè)器 688
15.6 自抗擾控制器 695
15.6.1 自抗擾控制器設(shè)計(jì)方法 695
15.6.2 改進(jìn)的非線性PID控制器 696
15.6.3 自抗擾控制器 703
第16章 模糊控制及其MATLAB應(yīng)用 715
16.1 模糊控制的基本理論 715
16.1.1 模糊控制基本理論概述 715
16.1.2 模糊集合的相關(guān)概念 716
16.1.3 模糊集合的基本運(yùn)算 717
16.1.4 隸屬函數(shù) 719
16.1.5 模糊推理規(guī)則 729
16.2 模糊控制系統(tǒng)的設(shè)計(jì) 732
16.2.1 模糊控制系統(tǒng)的組成 732
16.2.2 模糊控制系統(tǒng)的設(shè)計(jì) 732
16.3 MATLAB模糊邏輯工具箱 735
16.3.1 模糊推理系統(tǒng)編輯器 736
16.3.2 隸屬度函數(shù)編輯器 737
16.3.3 模糊規(guī)則編輯器 738
16.3.4 模糊規(guī)則觀察器 739
16.3.5 模糊推理輸入輸出曲面觀察器 739
16.3.6 使用MATLAB命令實(shí)現(xiàn)模糊邏輯系統(tǒng) 745
16.3.7 模糊邏輯工具箱命令函數(shù)簡(jiǎn)介 749
16.4 Sugeno型模糊推理系統(tǒng) 773
16.4.1 Sugeno型模糊推理系統(tǒng)簡(jiǎn)介 774
16.4.2 Sugeno型模糊推理系統(tǒng)實(shí)例 774
16.4.3 Mamdani系統(tǒng)與Sugeno系統(tǒng)的比較 776
16.5 模糊理論在控制工程中的應(yīng)用 777
16.5.1 模糊控制 777
16.5.2 模糊建!782
16.5.3 模糊控制與Simulink的結(jié)合應(yīng)用 785