本書主要講述如何自己動手制作(DIY)一個微型多旋翼飛行器。書中內(nèi)容主要分四篇:第一篇主要介紹飛行器的相關(guān)基礎(chǔ)知識,讓讀者對多旋翼飛行器有個感性的認(rèn)知;第二篇重點(diǎn)介紹飛行器的硬件平臺,包括模塊詳細(xì)解說、實物組裝、固件下載方法和飛行器的操作說明等;第三篇重點(diǎn)介紹飛行器的軟件開發(fā)環(huán)境、軟件各個功能部分的講解和各個模塊部分的連接、飛控系統(tǒng)的核心算法等;第四篇介紹多旋翼飛行器的拓展,控制操作入門和技巧,以及其在不同行業(yè)的應(yīng)用。
本書配套資料里面包含了微型多旋翼飛行器的代碼,同時也包含遙控器代碼。這些代碼均有詳細(xì)的注釋,讀者可參考它設(shè)計自己的固件,亦可通過書中介紹的方法,將編譯后的代碼下載到飛行器和遙控器中來體驗飛行。
本書主要針對未入門而有強(qiáng)烈意愿DIY的飛行器愛好者和即將參加賽事的大學(xué)生朋友,引導(dǎo)他們著手進(jìn)行設(shè)計;也可供初中生和高中生課外閱讀,以培養(yǎng)興趣和提高動手能力。
第一篇基礎(chǔ)篇
第1章多旋翼飛行器的起源與發(fā)展2
第2章多旋翼飛行器的工作原理和組成8
2.1多旋翼飛行器的工作原理8
2.2多旋翼飛行器的基本組成10
2.2.1電機(jī)10
2.2.2電調(diào)11
2.2.3正反槳12
2.2.4電池13
2.2.5機(jī)架14
2.2.6遙控器15
2.2.7飛控16
第3章烈火微型四旋翼飛行器介紹18
3.1初識四軸飛行器18
3.2折騰的開始24
3.3順利起飛25
3.4進(jìn)階27
3.5微型飛行器40
第二篇硬件篇
第4章烈火飛行器硬件平臺44
4.1烈火飛行器硬件資源介紹44
4.2烈火飛行器原理圖解讀49
第5章DIY遙控器硬件平臺55
5.1DIY遙控器硬件資源介紹55
5.2DIY遙控器原理圖解讀56
第6章烈火飛行器的硬件實物與組裝59
6.1飛行器的組裝60
6.2遙控器的組裝67
第7章烈火飛行器固件下載和使用說明71
7.1SWD模式71
7.2串口ISP模式74
7.3烈火飛行器操作說明77
7.3.1搖桿對中及傳感器校正78
7.3.2開機(jī)順序78
7.3.3微調(diào)旋鈕79
7.3.4關(guān)機(jī)順序79
7.3.5鎖尾模式79
7.3.6LED開關(guān)79
7.3.7電池電量檢測79
7.3.8電池充電79
第三篇軟件篇
第8章開發(fā)環(huán)境之RVMDK82
8.1新建工程指導(dǎo)82
8.2開發(fā)環(huán)境介紹91
8.2.1開發(fā)周期93
8.2.2μVision5集成開發(fā)環(huán)境94
8.3下載與調(diào)試94
第9章STM32交叉編譯環(huán)境Eclipse98
9.1ARM嵌入式交叉編譯工具鏈98
9.2Cygwin工具安裝99
9.3JRE + Eclipse安裝107
第10章軟件設(shè)計之各功能模塊實驗112
10.1STM32時鐘112
10.2LED指示燈實驗120
10.3STM32的USART實驗125
10.3.1相關(guān)介紹125
10.3.2程序講解126
10.4STM32的ADC與DMA實驗131
10.4.1相關(guān)介紹131
10.4.2用到的GPIO131
10.4.3代碼講解132
10.5STM32的 PWM驅(qū)動電機(jī)實驗136
10.5.1相關(guān)介紹136
10.5.2用到的GPIO136
10.5.3代碼講解137
10.6STM32與MPU6050 I2C通信實驗140
10.6.1MPU6050介紹140
10.6.2I2C總線介紹148
10.6.3模擬I2C驅(qū)動詳解149
10.7STM32與 NRF24L01 SPI通信實驗158
10.7.1SPI總線相關(guān)介紹158
10.7.2NRF24L01介紹158
10.7.3用到的GPIO165
10.7.4程序詳解166
第11章飛行器的姿態(tài)解算174
11.1姿態(tài)解算的意義174
11.2飛行器姿態(tài)表示方法174
11.2.1旋轉(zhuǎn)矩陣和歐拉角、轉(zhuǎn)軸轉(zhuǎn)角表示法174
11.2.2四元數(shù)表示法176
11.2.3四元數(shù)運(yùn)動學(xué)方程178
11.3互補(bǔ)濾波算法180
11.4基于四元數(shù)的姿態(tài)解算互補(bǔ)濾波算法182
第12章PID算法在多旋翼飛行器上的應(yīng)用186
12.1PID算法介紹186
12.1.1反饋的基本概念187
12.1.2歷史及應(yīng)用187
12.1.3公式定義188
12.2飛行器PID參數(shù)調(diào)試191
12.2.1各方法的簡介192
12.2.2PID調(diào)試軟件193
12.2.3PID控制的限制194
12.2.4PID算法的修改194
12.2.5串級PID控制器196
12.2.6其他PID的形式及其表示法196
12.2.7飛行器PID參數(shù)調(diào)試199
第13章上位機(jī)功能介紹201
13.1上位機(jī)環(huán)境201
13.2上位機(jī)與飛行板的通信202
13.3加速度計和陀螺儀的校準(zhǔn)204
13.4PID參數(shù)的調(diào)試204
13.5遙控器的數(shù)據(jù)監(jiān)視204
第14章飛行器的軟件實現(xiàn)206
14.1主函數(shù)206
14.2主循環(huán)中運(yùn)行頻率為1 000 Hz的任務(wù)209
14.3主循環(huán)中運(yùn)行頻率為500 Hz的任務(wù)217
14.4主循環(huán)中運(yùn)行頻率為250 Hz的任務(wù)219
第15章遙控器的軟件實現(xiàn)222
15.1遙控器的作用222
15.2遙控器的初始化223
15.3主循環(huán)中運(yùn)行頻率為500 Hz的任務(wù)225
15.4主循環(huán)中運(yùn)行頻率為100 Hz的任務(wù)228
15.5主循環(huán)中運(yùn)行頻率為25 Hz的任務(wù)229
15.6主循環(huán)中運(yùn)行頻率為4 Hz的任務(wù)231
15.7串口數(shù)據(jù)的處理233
第四篇拓展篇
第16章飛行器控制操作入門242
16.1練習(xí)“對尾飛行”242
16.2練習(xí)“對頭飛行”245
16.3練習(xí)飛航線245
第17章微型四旋翼的航拍和FPV246
17.1微型四旋翼的航拍246
17.2微型四旋翼的FPV249
第18章深入算法研究251
18.1四軸飛行器動力學(xué)251
18.2四軸飛行器的線性化控制方法 253
18.3卡爾曼濾波器介紹254
18.3.1系統(tǒng)模型254
18.3.2卡爾曼濾波方程255
18.3.3卡爾曼濾波器在四軸飛行器上的應(yīng)用255
第19章多旋翼飛行器的應(yīng)用258
19.1在影視行業(yè)的應(yīng)用258
19.2在消防行業(yè)的應(yīng)用259
19.3在電力行業(yè)的應(yīng)用260
19.4在農(nóng)業(yè)行業(yè)的應(yīng)用261
19.5在快遞行業(yè)的應(yīng)用261
19.6在載人多旋翼飛行器262
參考文獻(xiàn)265