本書系統(tǒng)介紹了動手制作(DIY)一個微型四旋翼飛行器的理論知識及實踐方法,主要目的是使讀者熟悉并掌握四旋翼飛行器的飛行控制及組裝原理,熟悉并掌握航電設(shè)備的使用。本書以四旋翼飛行器涉及的嵌入式系統(tǒng)基本概念、原理、定律和嵌入式系統(tǒng)軟/硬件開發(fā)方法為主線,以實際、實用、實踐為原則,淡化理論深度,突出工程應用,構(gòu)建科學、協(xié)調(diào)、可操作的內(nèi)容體系,知識結(jié)構(gòu)合理,注重課程交叉,及時引入課程*發(fā)展成果。
前言
本書主要講述動手制作(DIY)一個微型四旋翼飛行器涉及的理論及實踐知識。四旋翼知識體系主要涉及兩大方面,即機械部分和電控部分,本書側(cè)重電控部分,以四旋翼電控開發(fā)工程師為培養(yǎng)目標,而電控部分具體指嵌入式系統(tǒng)開發(fā),按照嵌入式系統(tǒng)層次組成,本書各章節(jié)關(guān)系如下圖所示:
除了上述章節(jié)外,還包括第1章緒論和第11章飛手實訓。
本書與各章節(jié)理論相結(jié)合給出的代碼基于我們自己開發(fā)的飛控系統(tǒng),該系統(tǒng)在首屆全國高校自動化專業(yè)青年教師實驗設(shè)備設(shè)計創(chuàng)客大賽中獲得銅獎(見下圖)。但本書的理論內(nèi)容不拘泥于此,任選一款開源飛控,都可以參考本書進行四旋翼飛行器的相關(guān)學習。
本書以應用為導向進行內(nèi)容安排。例如,四元數(shù)的概念放到第2章,四元數(shù)的微分方程放到第5.3節(jié);歐拉角的概念放到第2章,歐拉角奇點的概念在第3.3.5節(jié)中介紹,歐拉角和四元數(shù)的轉(zhuǎn)換放到第5.3節(jié)。
本書側(cè)重知識體系構(gòu)建及引導案例設(shè)計,例如第7章和第9章,給出了知識框架,而沒有分別寫成STM32系列芯片手冊和FreeRTOS庫函數(shù)手冊,因為我們的目的是讓讀者在本書的指導下入門嵌入式學習,而芯片手冊等像磚頭一樣的參考資料可以上網(wǎng)下載,使用的時候查找即可。
本書反復論述的一個核心:四旋翼能夠飛行主要是依靠傳感器系統(tǒng)獲取位姿信息并反饋到微處理器進行控制系統(tǒng)的運算,然后驅(qū)動電動機完成姿態(tài)控制分別在第3、7、8、9章從不同方面進行論述,希望讀者進行相應歸納。
現(xiàn)在是互聯(lián)網(wǎng)架空大學的時代,在四旋翼開發(fā)實踐中,與其說四旋翼是做出來的,不如說是從搜索引擎搜出來的,因此希望大家和Baidu、Google做朋友,如果遇到一個四旋翼動力系統(tǒng)參數(shù)匹配細節(jié)問題,可以搜索四旋翼動力設(shè)計網(wǎng)頁;如果遇到嵌入式開發(fā)stm32固件庫函數(shù)使用上的問題,可以搜索固件庫文檔;如果遇到卡爾曼濾波、PID算法等典型任務(wù),可以搜索示例代碼;當開發(fā)中遇到疑難雜癥時,可以提煉關(guān)鍵詞搜索是否有人遇到相同問題?傊,網(wǎng)絡(luò)就是大金礦,而搜索引擎就是采礦機器,善用搜索引擎可以幫助我們充分利用豐富的網(wǎng)絡(luò)資源來進行有效的學習和開發(fā)。
本書是DJI大疆創(chuàng)新產(chǎn)學合作專業(yè)綜合改革項目的成果之一,得到了國內(nèi)多旋翼知名企業(yè)大疆創(chuàng)新公司的支持,在此表示感謝。
本書由陳志旺等編著。其中,第1~3章、第7~10章和附錄由燕山大學陳志旺編寫;第4章由國網(wǎng)黑龍江省電力有限公司佳木斯供電公司宋娟編寫;第6章由國網(wǎng)黑龍江省電力有限公司佳木斯供電公司陳志興編寫;第11章由燕山大學寧志旋編寫;第5章由燕山大學呂宏詩編寫。全書由陳志旺統(tǒng)稿。參加本書編寫的還有薛佳偉、王敬、張子振、趙子錚、邵玉杰、王小飛、張健、黃興旺、白鋅和趙方亮。書中引用了一些網(wǎng)上文獻,無法一一注明出處,在此向原作者表示感謝!
由于編著者水平有限,書中難免存在錯誤與不妥之處,歡迎讀者朋友不吝賜教!
編著者
陳志旺博士,燕山大學副教授、碩導,主要從事預測控制、智能控制、嵌入式系統(tǒng)研發(fā)等方向的教學與科研工作,大學生創(chuàng)新性實驗計劃"嵌入式電動四旋翼飛行器的設(shè)計及實現(xiàn)"嵌入式四旋翼飛行器自主飛行的設(shè)計及實現(xiàn)指導教師,指導學生完成的"新型自適應四旋翼飛行器獲第12屆"挑戰(zhàn)杯"全國大學生課外學術(shù)科技作品競賽獎。
第1章 緒論
1.1 飛行器分類
1.2 無人機的概念
1.3 無人機自主飛行
1.3.1 自主飛行概念
1.3.2 無人機自主控制等級
1.3.3 無人機模塊化結(jié)構(gòu)
1.4 國際空中機器人大賽
1.5 開源飛控
1.6 飛行器控制涉及的知識
第2章 空間坐標系及姿態(tài)角描述
2.1 滿足右手定則的坐標系
2.2 方向余弦陣
2.2.1 二維坐標旋轉(zhuǎn)
2.2.2 三維坐標旋轉(zhuǎn)
2.3 歐拉角
2.4 由等效旋轉(zhuǎn)矢量到四元數(shù)
2.4.1 向量點乘和叉乘
2.4.2 等效旋轉(zhuǎn)矢量
2.4.3 復數(shù)形式四元數(shù)
2.5 四元數(shù)、歐拉角以及方向余弦陣對比
第3章 四旋翼飛行器數(shù)學模型
3.1 飛行要素
3.1.1 大氣飛行環(huán)境
3.1.2 伯努利定理
3.1.3 固定翼飛機的平飛
3.2 四旋翼飛行器的飛行原理
3.3 四旋翼飛行器的數(shù)學模型
3.3.1 數(shù)學模型概述
3.3.2 建模假設(shè)條件
3.3.3 動力子系統(tǒng)建模
3.3.4 動力學模型
3.3.5 運動學模型
3.3.6 模型的簡化
3.4 四旋翼飛行器的特點
第4章 傳感器及姿態(tài)角測量
4.1 基本概念
4.2 MEMS
4.3 陀螺儀
4.3.1 機械陀螺儀原理
4.3.2 MEMS陀螺儀
4.3.3 ITG3200應用
4.4 加速度計
4.4.1 加速度計原理
4.4.2 LIS3VDQ結(jié)構(gòu)
4.4.3 加速度計標定
4.5 磁羅盤
4.5.1 磁羅盤原理
4.5.2 磁羅盤LSM303DLH
4.5.3 磁羅盤標定
4.6 GPS
4.7 姿態(tài)角測量公式
4.7.1 俯仰角和滾轉(zhuǎn)角測量
4.7.2 偏航角測量
第5章 卡爾曼濾波
5.1 線性系統(tǒng)狀態(tài)能觀
5.2 卡爾曼濾波原理
5.2.1 數(shù)學基礎(chǔ)
5.2.2 卡爾曼濾波算法
5.2.3 卡爾曼濾波案例1
5.2.4 卡爾曼濾波案例2
5.2.5 參數(shù)分析
5.2.6 擴展卡爾曼濾波
5.3 卡爾曼濾波在姿態(tài)解算中的應用
5.3.1 四元數(shù)微分方程
5.3.2 狀態(tài)模型
5.3.3 測量模型
5.3.4 卡爾曼濾波算法步驟
5.3.5 四旋翼姿態(tài)解算代碼實現(xiàn)
第6章 動力系統(tǒng)
6.1 電動機
6.1.1 有刷電動機
6.1.2 空心杯電動機
6.1.3 無刷電動機特點
6.1.4 無刷電動機結(jié)構(gòu)
6.1.5 無刷電動機工作原理
6.1.6 無刷電動機參數(shù)
6.2 電調(diào)
6.2.1 電調(diào)功能
6.2.2 電調(diào)原理
6.2.3 電調(diào)參數(shù)
6.3 電池
6.3.1 鋰電池簡介
6.3.2 電池參數(shù)
6.3.3 電池使用注意事項
6.4 螺旋槳
6.4.1 螺旋槳的作用
6.4.2 螺旋槳的分類
6.4.3 螺旋槳的參數(shù)
6.5 導線
6.6 機架
第7章 嵌入式主控系統(tǒng)
7.1 微型計算機的組成
7.2 CM3體系結(jié)構(gòu)
7.3 CM3寄存器
7.4 STM32的存儲結(jié)構(gòu)
7.4.1 總線接口
7.4.2 CM3存儲器組織
7.4.3 STM32存儲器映射
7.4.4 大端和小端
7.4.5 字節(jié)對齊
7.4.6 動態(tài)內(nèi)存
7.5 ARM指令集
7.6 STM32F1和STM32F4的區(qū)別
7.7 STM32的選型
7.8 嵌入式系統(tǒng)分層結(jié)構(gòu)
第8章 PID控制算法
8.1 控制的基本過程
8.2 四旋翼飛行器PID控制器原理
8.2.1 PID控制基本理論
8.2.2 控制規(guī)律的選擇
8.2.3 四旋翼飛行器的串級PID控制
8.3 PID參數(shù)整定
8.3.1 PID參數(shù)對系統(tǒng)性能的影響
8.3.2 參數(shù)整定基本概念
8.3.3 單環(huán)PID參數(shù)整定
8.3.4 串級PID參數(shù)整定
第9章 嵌入式操作系統(tǒng)
9.1 操作系統(tǒng)基本概念
9.1.1 操作系統(tǒng)功能
9.1.2 操作系統(tǒng)工作過程
9.1.3 前后臺系統(tǒng)
9.1.4 實時操作系統(tǒng)
9.1.5 通用操作系統(tǒng)與實時操作系統(tǒng)的比較
9.2 飛行器與操作系統(tǒng)
9.3 操作系統(tǒng)中的任務(wù)
9.3.1 任務(wù)的特性
9.3.2 多任務(wù)的實現(xiàn)
9.3.3 任務(wù)劃分的目標
9.4 FreeRTOS操作系統(tǒng)簡介
9.5 FreeRTOS中的任務(wù)管理
9.5.1 FreeRTOS中的任務(wù)
9.5.2 相對延
9.5.3 絕對延
9.6 FreeRTOS中的互斥信號量
9.6.1 互斥信號量的概念
9.6.2 互斥信號量的應用
9.7 FreeRTOS中的任務(wù)通信
9.7.1 隊列概念
9.7.2 隊列通信案例
9.8 飛控操作系統(tǒng)中的任務(wù)及其通信
第10章 無線通信
10.1 無線通信原理
10.2 無線電波
10.2.1 無線通信按頻率分類
10.2.2 2.4GHz無線技術(shù)簡介
10.2.3 2.4GHz無線通信擴頻技術(shù)
10..2..4 2.4GHz無線技術(shù)特點
10.3 手持遙控器工作原理
10.3.1 發(fā)射機
10.3.2 接收機
10.3.3 設(shè)備使用中需注意的問題
10.4 飛行器的其他無線通信
第11章 飛手實訓
11.1 無人機就業(yè)職位要求
11.2 飛手練習方法
11.3 民用無人機空中交通管理辦法
11.4 飛行時的注意事項
11.4.1 人
11.4.2 機
11.4.3 環(huán)境
11.5 飛行器檢修及保養(yǎng)
附錄A 橢球相關(guān)程序
附錄B 卡爾曼濾波代碼
附錄C PID參數(shù)對系統(tǒng)性能影響試驗代碼
參考文獻