本書深入淺出,以MATLABR2014a為平臺,全面細致地講述MATLAB軟件的基礎應用及其技術的應用,加入大量MATLAB在工程領域前沿的技術和科研工作實例的介紹,理論與實踐并重,使讀者能夠很快入手掌握MATLAB圖像處理應用方法。全書共10章,內容包括MATLAB的運行環(huán)境、矩陣與數(shù)值計算、MATLAB圖形繪制、MATLAB程序設計、Simulink動態(tài)仿真環(huán)境,以及MATLAB在線性控制系統(tǒng)、智能控制系統(tǒng)、電路及電力電子系統(tǒng)、數(shù)字信號處理系統(tǒng)中的應用。本書系統(tǒng)性和應用性強,所有相關程序都經過上機驗證通過,且每章都附有小結和習題,方便讀者學習與總結。本書可以作為理工科學生MATLAB的本科生教材,也可供從事MATLAB領域研究的工程技術人員參考。
適讀人群 :電氣、通信]、自動化相關專業(yè)學生及行業(yè)工程師
計算機及電子信息專業(yè)本科生均可使用。全書精選100余個MATLAB應用實例,側重MATLAB軟件及應用環(huán)節(jié)的全面介紹!
MATLAB是美國Mathworks公司開發(fā)推出的一款集科學計算、可視化功能、幫助提示功能于一體的開放交互式大型軟件。目前,MATLAB已成為圖像處理、信號處理、自動控制等專業(yè)的基礎核心課程首選實驗平臺,而對于學生最有效的學習途徑是結合相關專業(yè)課程的學習來掌握MATLAB軟件的使用和編程。
相比于其他同類書籍,本書是在充分體現(xiàn)MATLAB高級語言編程的特點,提高用戶分析問題及解決問題能力的基礎上編寫的,有以下特點。
。1)基礎知識與最新功能并重。全書在介紹MATLAB軟件基本功能和應用的基礎上,對其新增功能進行了介紹和講解。
(2)結合實例和詳細注解。本書精選了一百多個例子,對實例附有詳細的注釋和解析,以及運行結果。
。3)面向實際應用。本書列舉了語音信號處理、溫度數(shù)據采集和通信、導航信息解算和自動控制理論等實例
全書共10章。第1-6章為基礎篇,介紹入門基礎、數(shù)值計算、程序設計、Simulink仿真、圖形繪制、GUI圖形用戶界面等基礎知識;第7-10章為應用篇,介紹MATLAB在語音處理、導航控制、數(shù)據采集通信、自動控制等方面的應用。各章內容簡單介紹如下。
第1章介紹MATLAB軟件的工作環(huán)境和幫助系統(tǒng),尤其是與舊版本不同的地方。第2章介紹了MATLAB的數(shù)據類型、數(shù)組和矩陣運算和稀疏矩陣的處理。第3章介紹了程序設計,包括變量與語句、程序控制、M文件編程和程序調試等。第4章介紹了Simulink仿真工具的使用,包括相關概念、工作環(huán)境、系統(tǒng)模型、子系統(tǒng)封裝和S函數(shù)等內容。第5章介紹了二維繪圖和三維繪圖的基本方法和圖形控制,以及特殊圖形的繪制。第6章介紹了GUI圖形用戶界面的設計,包括創(chuàng)建GUI控件、菜單、工具欄和對話框,以及創(chuàng)建GUI組件的回調函數(shù)設計方法。第7章介紹了數(shù)據采集和串口通信應用,第8章介紹了導航控制應用,第9章介紹了語音信號處理應用,第10章介紹了自動控制應用。
本書的編寫得到了華北水利水電大學和機械工業(yè)出版社的大力支持。本書是張濤和齊永奇共同完成的,其中齊永奇負責第3、4、7、9章的編寫,其余部分和全書的通稿由張濤完成。機械工業(yè)出版社的編緝?yōu)楸緯某霭娓冻隽诵燎诘膭趧。對于書中引用的論文和資料的作者,在此表示深深的感謝。
由于時間倉促,書中難免存在不妥之處,請讀者原諒,并提出寶貴意見。
目錄
第1章MATLAB基礎1
1.1MATLAB概述1
1.1.1MATLAB發(fā)展歷程1
1.1.2MATLAB系統(tǒng)構成2
1.1.3MATLAB功能2
1.1.4MATLAB常用工具箱3
1.2MATLAB操作環(huán)境4
1.2.1MATLAB啟動和退出4
1.2.2MATLAB主菜單和功能5
1.2.3命令窗口7
1.2.4命令歷史窗口8
1.2.5工作空間窗口9
1.2.6當前工作目錄窗口10
1.3MATLAB幫助使用11
1.3.1命令查詢11
1.3.2演示幫助13
1.3.3聯(lián)機幫助13
1.4習題14
第2章MATLAB矩陣計算15
2.1數(shù)據類型16
2.1.1基本數(shù)值類型16
2.1.2字符串18
2.1.3單元數(shù)組19
2.1.4結構體19
2.2矩陣基礎21
2.2.1矩陣創(chuàng)建21
2.2.2矩陣操作23
2.3矩陣運算27
2.3.1基本運算27
2.3.2其他運算31
2.4矩陣分析33
2.4.1矩陣信息量33
2.4.2矩陣分解37
2.5稀疏矩陣40
2.5.1稀疏矩陣存儲40
2.5.2創(chuàng)建稀疏矩陣40
2.5.3稀疏矩陣運算43
2.6習題44
第3章 MATLAB程序設計45
3.1M文件46
3.1.1腳本文件46
3.1.2函數(shù)文件47
3.1.3函數(shù)類型50
3.2變量和語句55
3.2.1變量類型55
3.2.2控制流56
3.3程序調試64
3.3.1直接調試法64
3.3.2工具調試法65
3.4函數(shù)設計和實現(xiàn)69
3.4.1建立數(shù)學模型69
3.4.2編寫代碼70
3.4.3運行程序70
3.5習題71
第4章Simulink仿真設計71
4.1Simulink概述72
4.1.1Simulink工作環(huán)境72
4.1.2Simulink模塊庫74
4.2Simulink模型的創(chuàng)建和仿真85
4.2.1模型建立86
4.2.2設置模型參數(shù)87
4.2.3運行仿真89
4.2.4仿真示例89
4.3仿真器參數(shù)配置92
4.3.1Solver面板92
4.3.2Data Import/Export面板94
4.3.3Optimization面板94
4.3.4Diagnotics面板95
4.3.5Hardware Implementation面板95
4.3.6Model Referencing面板96
4.4子系統(tǒng)創(chuàng)建和封裝96
4.4.1創(chuàng)建子系統(tǒng)97
4.4.2封裝子系統(tǒng)97
4.5S函數(shù)設計99
4.5.1S函數(shù)使用方法99
4.5.2S函數(shù)工作原理100
4.5.3S函數(shù)設計模板100
4.5.4S函數(shù)示例103
4.6習題107
第5章MATLAB繪圖108
5.1MATLAB繪圖基本流程109
5.2二維繪圖110
5.2.1基本二維繪圖110
5.2.2函數(shù)繪圖114
5.2.3特殊二維繪圖117
5.3二維繪圖顯示設置121
5.3.1曲線格式設置122
5.3.2圖形區(qū)域控制124
5.3.3圖形標注信息127
5.3.4圖形編輯器132
5.4三維繪圖134
5.4.1三維曲線134
5.4.2三維網格曲面135
5.4.3三維陰影曲面138
5.5三維圖形顯示控制141
5.5.1視角設置141
5.5.2光照設置142
5.5.3顏色設置144
5.6習題145
第6章GUI圖形用戶界面設計145
6.1圖形用戶界面實現(xiàn)146
6.1.1GUI設計原則146
6.1.2利用GUIDE工具實現(xiàn)圖形界面設計146
6.2創(chuàng)建用戶控件148
6.3編輯菜單149
6.3.1設計下拉菜單149
6.3.2設計右鍵彈出菜單152
6.4設計工具欄152
6.5生成對話框153
6.5.1文件打開和保存對話框153
6.5.2輸入對話框154
6.5.3問題對話框154
6.5.4消息對話框155
6.5.5錯誤對話框155
6.5.6警告對話框156
6.5.7進程條156
6.5.8列表對話框157
6.5.9幫助對話框157
6.6其他設計工具158
6.6.1控件位置編輯器158
6.6.2Tab順序編輯器158
6.6.3文件編輯器159
6.6.4屬性編輯器159
6.6.5對象瀏覽器160
6.7回調函數(shù)設計160
6.7.1界面初始化設計161
6.7.2對象回調函數(shù)設計162
6.7.3回調函數(shù)的數(shù)據管理171
6.8 GUI生成MATLAB App172
6.9習題174
第7章 MATLAB在數(shù)據采集中的應用174
7.1數(shù)據采集概述175
7.1.1數(shù)據采集系統(tǒng)175
7.1.2數(shù)據采集工具箱176
7.2 數(shù)據采集過程176
7.2.1聲卡的硬件屬性和特性177
7.2.2聲卡數(shù)據采集178
7.3串口通信185
7.3.1串口通信概念185
7.3.2串口通信標準186
7.4 MATLAB串口通信187
7.4.1MATLAB串口概述187
7.4.2 MATLAB串口通信過程188
7.5溫度采集和通信系統(tǒng)的設計實現(xiàn)190
7.5.1創(chuàng)建GUI190
7.5.2系統(tǒng)界面設計190
7.5.3代碼實現(xiàn)192
7.6習題196
第8章 MATLAB在導航定位中的應用196
8.1慣性導航系統(tǒng)197
8.1.1算法初始化198
8.1.2姿態(tài)算法198
8.1.3速度算法201
8.1.4位置算法202
8.1.5誤差模型202
8.1.6慣性導航的MATLAB實現(xiàn)204
8.2衛(wèi)星導航系統(tǒng)209
8.2.1 GPS系統(tǒng)組成209
8.2.2 GPS定位原理210
8.2.3 GPS導航特點211
8.3其他導航系統(tǒng)212
8.3.1視覺導航212
8.3.2聲學導航212
8.3.3地球物理導航213
8.3.4多普勒測速導航214
8.4組合導航和信息融合215
8.4.1組合導航信息融合構架215
8.4.2卡爾曼濾波217
8.4.3組合導航系統(tǒng)建模219
8.4.4組合導航信息融合的MATLAB實現(xiàn)221
8.5習題224
第9章 MATLAB在語音信號處理中的應用225
9.1語音信號概述226
9.2語音信號的采集226
9.3語音信號的加窗處理227
9.4短時時域分析229
9.4.1短時能量分析229
9.4.2短時過零分析231
9.4.3短時相關分析233
9.5短時頻域分析234
9.5.1短時傅里葉變換234
9.5.2短時頻域特征235
9.5.3頻域分析的應用238
9.6語音濾波處理239
9.6.1語音的加噪合成239
9.6.2語音的濾波處理241
9.7MATLAB語音處理綜合實例246
9.8習題258
第10章 MATLAB在自動控制中的應用259
10.1控制系統(tǒng)數(shù)學模型260
10.1.1傳遞函數(shù)模型260
10.1.2零極點模型261
10.1.3狀態(tài)空間模型262
10.1.4控制模型的轉換26