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