作 者:李德強 著
定 價:138
出 版 社:化學工業出版社
出版日期:2020年08月01日
頁 數:492
裝 幀:平裝
ISBN:9787122361172
1、本書從飛行原理、硬件組裝及軟件繫統開發幾個方面,繫統介紹了多旋翼無人機的開發設計理論和組裝設計方法,內容由淺入深,可幫助讀者完成從入門到進階的過程。 2、內容全面,涵蓋了多旋翼無人機設計的各個方面,可參考性強。3、本書內容基於作者自行設計制作多旋翼無人機的經驗,操作性強。4、提供了控制繫統設計的源代碼,並做了修改與簡化,更利於讀者參考學習。
●第1章多旋翼無人機簡介
1.1多旋翼機發展簡史2
1.1.1多旋翼機的起源2
1.1.2逐漸復蘇4
1.1.3多旋翼機的春天5
1.2無人機與航空模型6
1.2.1機型分類6
1.2.2航空模型飛機10
1.2.3全自動無人機10
1.3開源飛控簡介11
1.3.1Arduino飛控12
1.3.2Crazyflie迷你飛行器12
1.3.3APM飛控12
1.3.4Pixhawk與PX413
第2章飛行原理
2.1基本姿態15
2.1.1動力來源15
2.1.2垂向運動17
2.1.3飛行姿態18
2.2飛行原理22
2.2.1滾轉角與定高飛行22
2.2.2滾轉角與水平運動23
2.3十字形與叉形四旋翼26
2.3.1運動方向與姿態26
2.3.2混合控制方法27
第3章硬件結構設計
3.1螺旋槳30
3.1.1制作材料30
3.1.2直徑、螺距與弦長30
3.1.3多葉螺旋槳31
3.1.4靜平衡與動平衡32
3.2有刷電機與無刷電機32
3.2.1電磁鐵轉動原理32
3.2.2有刷電機34
3.2.3無刷電機35
3.2.4相關參數37
3.3電調與PWM信號37
3.3.1電調37
3.3.2PWM信號38
3.3.3直流有刷電調39
3.3.4直流無刷電調39
3.3.5電調安全保護機制40
3.3.6優選和最小行程校準41
3.4動力電池41
3.4.1電池電壓41
3.4.2電池容量與放電倍率43
3.5遙控器44
3.5.1遙控器與接收機44
3.5.2美國手與日本手45
3.6機架設計46
3.6.1選材46
3.6.2布局47
3.6.3軸距48
3.6.4涵道49
3.6.5腳架49
第4章自駕儀與硬件組裝
4.1Pixhawk自駕儀51
4.1.1概覽51
4.1.2接口說明53
4.2硬件清單與組裝說明57
4.2.1硬件清單57
4.2.2組裝說明58
第5章開源飛控程序
5.1飛控程序下載與編譯64
5.1.1PX4飛控程序下載64
5.1.2Fedroa編譯環境搭建68
5.1.3Ubuntu編譯環境搭建71
5.1.4PX4飛控程序編譯與燒寫73
5.1.5QGroundControl下載與編譯75
5.2航前準備與航前校準77
5.2.1航前準備78
5.2.2航前校準84
5.3飛行模式86
5.3.1Stabilized增穩模式87
5.3.2Manual手動模式87
5.3.3Altitude高度模式87
5.3.4 ition位置模式88
5.3.5Mission任務模式89
5.3.6Hold定點模式89
5.3.7Takeoff/Land起飛降落模式90
5.3.8Return返航模式90
5.3.9Acro/Rattitude特技姿態模式91
5.3.10Offboard離線模式92
5.3.11FollowMe跟隨模式92
第6章飛控架構與通信協議
6.1架構總覽94
6.1.1數據存儲94
6.1.2內部通信總線95
6.1.3外部通信總線95
6.1.4驅動程序96
6.1.5飛行控制器97
6.2源代碼結構設計98
6.2.1編譯目標目錄(build)99
6.2.2編譯配置目錄(cmake)101
6.2.3外部通信接口(Mavlink)109
6.2.4內部通信接口(msg)116
6.2.5運行平臺(platforms)120
6.2.6ROM文件繫統(ROMFS)124
6.2.7功能源代碼(src)127
6.2.8其他工具(Tools)130
6.3uORB130
6.3.1基本通信原理130
6.3.2uORB設計與實現132
6.3.3uORB使用方法145
6.4Mavlink147
6.4.1整體功能設計147
6.4.2Mavlink主程序148
6.4.3MavlinkStream發送器154
6.4.4MavlinkReceiver接收器159
第7章開源操作繫統NuttX
7.1NuttX概述175
7.1.1NuttX簡介175
7.1.2繫統特性175
7.1.3支持的平臺178
7.2用戶接口183
7.2.1任務控制接口183
7.2.2任務調度接口188
7.2.3調度控制接口190
7.2.4消息隊列接口192
7.2.5信號量接口193
7.2.6環境變量196
7.2.7文件繫統接口197
7.2.8網絡接口197
7.3NuttShell(NSH)199
7.3.1概覽199
7.3.2常用命令201
第8章進程、線程及工作隊列
8.1任務調度211
8.1.1並行任務211
8.1.2多級反饋隊列212
8.1.3搶占式優先級調度213
8.2多進程214
8.2.1什麼是進程214
8.2.2創建進程216
8.3多線程224
8.3.1什麼是線程224
8.3.2創建線程225
8.3.3線程與進程的區別230
8.4工作隊列232
8.4.1什麼是工作隊列232
8.4.2加入工作隊列235
8.5信號量與鎖237
8.5.1互斥信號量238
8.5.2同步信號量244
8.5.3互斥鎖與條件變量245
第9章驅動程序
9.1繫統級驅動程序251
9.1.1通用接口函數251
9.1.2注冊驅動程序255
9.1.3編寫驅動程序258
9.1.4LED燈驅動程序266
9.2SPI驅動程序268
9.2.1SPI總線協議268
9.2.2SPI管腳配置269
9.2.3SPI驅動類275
9.2.4SPI氣壓計驅動程序279
9.3I2C驅動程序287
9.3.1I2C總線協議287
9.3.2I2C驅動類288
9.4應用級驅動程序289
9.4.1準備工作289
9.4.2實現驅動程序292
第10章遙控器協議
10.1PWM297
10.1.1PWM信號使用297
10.1.2PWM信號采集298
10.2PPM302
10.2.1PPM信號使用302
10.2.2PPM信號采集303
10.3S.BUS310
10.3.1S.BUS接口配置310
10.3.2S.BUS協議格式312
10.3.3S.BUS協議解析313
第11章飛控狀態與命令執行
11.1主狀態與切換319
11.1.1主狀態定義與切換條件319
11.1.2主狀態切換命令與響應325
11.2導航狀態與控制模式337
11.2.1導航狀態定義與切換條件337
11.2.2控制模式及其開關條件343
11.3飛控鎖定與解鎖347
11.3.1飛控鎖定保護347
11.3.2鎖定與解鎖狀態347
11.4其他功能350
11.4.1起飛點設置350
11.4.2航燈設置354
11.4.3安全開關356
第12章狀態估計
12.1傳感器校準360
12.1.1加速度計360
12.1.2陀螺儀366
12.1.3磁羅盤369
12.1.4水平儀372
12.2卡爾曼濾波375
12.2.1卡爾曼濾波原理375
12.2.2公式推導377
12.3姿態解算與速度位置估計380
12.3.1坐標繫變換380
12.3.2姿態解算383
12.3.3速度位置估計385
第13章飛行控制方法
13.1反饋、PID、串級控制389
13.1.1反饋控制389
13.1.2PID控制391
13.1.3串級控制392
13.2姿態控制394
13.2.1姿態控制原理394
13.2.2姿態控制過程395
13.3位置控制400
13.3.1位置控制原理400
13.3.2位置控制過程403
13.4混合控制器408
13.4.1多旋翼混控原理408
13.4.2混控配置文件413
13.4.3PWM輸出417
第14章航線規劃全自動飛行
14.1導航基本原理425
14.1.1導航目標425
14.1.2搜索算法426
14.1.3預設航線427
14.2導航模塊設計428
14.2.1導航引擎428
14.2.2自動任務設計433
14.2.3自動起飛與降落438
14.2.4自動航跡點任務438
14.2.5自動返航440
14.2.6目標跟隨與其他導航模式443
第15章動力學建模及半物理仿真
15.1動力學建模445
15.1.1動力模型445
15.1.2受力運動446
15.2半物理仿真448
15.2.1使用jMavSim仿真程序448
15.2.2自行編寫仿真程序450
第16章外部控制與趣味航線
16.1外部控制繫統458
16.1.1方案設計458
16.1.2功能實現460
16.2趣味航線規劃470
16.2.1等邊三角形470
16.2.2圓形473
16.2.3三葉草474
16.2.4阿基米德螺旋線476
參考文獻478
本書以四旋翼無人機為例,講解多旋翼無人機的飛行理論與控制體繫,從螺旋槳、電動機、電調、動力電池、機架等角度介紹硬件結構與飛行原理。通過開源自駕儀Pixhawk和開源飛行控制程序PX4介紹了全自動多旋翼無人機控制繫統的整個實現過程。內容涵蓋了從硬件組裝清單到飛控程序下載編譯的整個過程,並對如何使用地面站程序對飛控進行航前校準和參數設定做了說明。 本書將飛行理論與設計實現相互結合,通過對PX4飛控程序的分析、講解、修改和完善,梳理了多旋翼無人機的相關知識。包括:飛控程序的架構設計、開源操作繫統、驅動程序、狀態估計、控制算法、自主導航繫統等,以及如何通過對多旋翼無人機的動力繫統建模實現半物理仿真和趣味航線飛行等。 本書可為從事無人機設計制作的技術人員提供幫助,可供無人機愛好者自學,還可供大學院校相關專業師生學習參考。
李德強 著
李德強,男,1983年出生,山東淄博人,畢業於武漢輕工大學。 瀋陽芯魂科技有限公司聯合創始人之一、技術合伙人。 2013年自主研發了LidqOS操作繫統和DolphinOS操作繫統,可分別應用於個人電腦和嵌入式單片機。 2016年研發了一套四旋翼無人機,自行設計所有控制繫統和飛行算法,實現了無人機的自主飛行。 2017年創辦了“問渠網”“編程外星人”公眾號及其附屬俱樂部。俱樂部現有近千位成員,均為無人機相關編程技術愛好者。