畢業(yè)設(shè)計論文終極終極稿._第1頁
畢業(yè)設(shè)計論文終極終極稿._第2頁
畢業(yè)設(shè)計論文終極終極稿._第3頁
畢業(yè)設(shè)計論文終極終極稿._第4頁
畢業(yè)設(shè)計論文終極終極稿._第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、(2014屆)本科畢業(yè)設(shè)計(論文)資料題 目 名 稱:四旋翼飛行器PID控制器的設(shè)計 湖南工業(yè)大學(xué)教務(wù)處 2014屆本科畢業(yè)設(shè)計(論文)資料第一部分 畢業(yè)論文(2014屆)本科畢業(yè)設(shè)計(論文)2014年5月 湖南工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文)32摘 要近年來,隨著新材料的涌現(xiàn)及新傳感技術(shù)的發(fā)展,四旋翼飛行器迅速發(fā)展起來。四旋翼飛行器是一種具有四個對稱旋翼的直升機,結(jié)構(gòu)簡單,機動性強,飛行靈活,可垂直起降,懸停甚至完成一些高難度飛行動作。它所具備的優(yōu)越性能,使其應(yīng)用前景十分廣闊。本設(shè)計主要介紹一種四旋翼飛行器的實現(xiàn)方案,以意法半導(dǎo)體公司生產(chǎn)的基于AMR Cortex-M3內(nèi)核的STM32F103C

2、8T6微型控制器作為計算控制單元,以Invensense公司生產(chǎn)的MPU6050作為慣性測量單元,整合飛行器姿態(tài),以NRF24L01無線通信模塊作為通信渠道,實現(xiàn)了上位機與下位機各項數(shù)據(jù)的實時傳輸,使用WFLY07遙控器實現(xiàn)了對四旋翼飛行器的無線遙控。本文詳細(xì)介紹了四旋翼飛行器的飛行原理、硬件構(gòu)造和軟件設(shè)計,設(shè)計了一種PID控制器,實現(xiàn)了四軸飛行器的各項動作控制。關(guān)鍵詞: 四旋翼飛行器,STM32F103,MPU6050,姿態(tài)解算,PID控制器ABSTRACTIn recent years, with the new material and new MEMS technology, the

3、quad-rotor obtains a rapid development .And that made it become a popular flight model among many model aircraft enthusiasts. Quad-rotor is a kind of symmetry with the advantages of simple structure, strong flexibility, It can take off and land vertically, In addition, it can also hover in the air a

4、nd even do some difficult maneuver. Its superior performance has the very broad application prospects.This design will introduce a scheme to make a quad-rotor. The design used STM32F103C8T6 which worked with the new-fashioned ARM Cortex-M3 micro processer as the control unit. In addition, a chip nam

5、ed MPU6050 was used to measure the attitude data of the quad-rotor, and the wireless communication module named NRF24L01 to make the PC and the quad-rotor communicate well. Besides, a WFLY07 remote was used to control the quad-rotor. We stated the flight theory, and the structure of the hardware and

6、 software in detail importantly, a PID controller was designed to control the attitude and made it really worked.Keywords:Quad-rotor,STM32F103,MPU6050,Attitude calculation,PID controller 目 錄摘 要IABSTRACTII第一章 四旋翼飛行器概述11.1引言11.2四旋翼飛行器的國內(nèi)外研究現(xiàn)狀11.2.1 國外研究現(xiàn)狀11.2.2 國內(nèi)研究現(xiàn)狀21.3設(shè)計意義及應(yīng)用前景3第二章 四旋翼飛行器飛行原理4第三章 四

7、旋翼飛行器常用部件及安裝63.1四旋翼飛行器部件介紹63.1.1 風(fēng)火輪450機架63.1.2 新西達(dá)2212 930kv無刷電機63.1.3 新西達(dá)30A電子調(diào)速器73.1.4 1045正反漿83.1.5 2200mAh 11.1V 30C 充電鋰電池93.1.6 飛行主控stm32f103c8t693.1.7 慣性器件MPU6050103.1.8 天地飛7遙控器113.1.9 天地飛7無線接收機123.1.10 5V穩(wěn)壓電路133.2 四旋翼飛行器的安裝143.2.1 飛行器硬件連接圖143.2.2 x模式和+模式的區(qū)別143.2.2 安裝事項15第四章 四旋翼上位機及下位機164.1匿名

8、上位機軟件平臺164.1.1 匿名上位機功能164.1.2 匿名上位機通信協(xié)議164.2下位機程序模塊174.2.1 DMP使用方法174.2.2 NRF24L01無線通信184.2.3 無線接收機解碼程序184.2.4 電調(diào)驅(qū)動程序194.2.5 姿態(tài)解算程序194.2.6 PID控制器程序20第五章 四旋翼飛行器姿態(tài)解算215.1 捷聯(lián)式慣性導(dǎo)航系統(tǒng)介紹215.2 姿態(tài)解算22第六章 四旋翼飛行器PID控制器設(shè)計236.1 PID控制器介紹236.2 PID控制思想246.3 PID控制器程序?qū)崿F(xiàn)246.4 PID控制器參數(shù)整定25第七章 結(jié)論及存在的問題27第八章 心得體會28參考文獻(xiàn)2

9、9致謝30附錄31湖南工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文)第一章 四旋翼飛行器概述1.1引言目前國內(nèi)外對飛行器的研究主要包括三種:固定翼、旋翼及撲翼式,四旋翼飛行器在布局形式上屬于旋翼式的一種。國外早在上世紀(jì)初期就開始研究四旋翼飛行器。這種飛行器由軍方率先研發(fā)并制造用于情報偵查等領(lǐng)域。很多科技企業(yè)、大學(xué)及研究所也研發(fā)并實現(xiàn)了自己的四旋翼飛行器。2012年2月,由美國種子基金會(The Sapling Foundation)運營的非盈利組織TED大會請出了美國賓夕法尼亞大學(xué)(University Of Pennsylvania)動力科學(xué)院(School of Engineering and Applie

10、d Science)的一位教授和他所帶領(lǐng)的一個四旋翼飛行器研發(fā)團(tuán)隊,他們陳述了目前一些無人機的不足之處和四旋翼飛行器的優(yōu)越性,并多元化展示了他們研發(fā)的四旋翼飛行器在軍事,勘探等多種行業(yè)的多種用途。事實上,很多無人機都需要專業(yè)的飛行控制團(tuán)隊進(jìn)行遠(yuǎn)程操控,包括幾個專業(yè)的飛行員,遠(yuǎn)程雷達(dá)感應(yīng)操作員和團(tuán)隊協(xié)調(diào)員。除此之外,這些無人機在自身結(jié)構(gòu)、體積、重量及成本等方面都有缺點。而四旋翼飛行器結(jié)構(gòu)簡單,體積小巧,重量輕便,機動性強,飛行靈活,可垂直起降,懸停甚至完成一些高難度飛行動作。這些優(yōu)勢使四旋翼飛行器迅速成為無人機領(lǐng)域冉冉升起的新星,也讓人看到了它的研發(fā)價值和應(yīng)用前景。很多行業(yè)如軍事打擊、公安追捕、

11、災(zāi)害搜救、農(nóng)林業(yè)調(diào)查、輸電線巡查、航拍等都成為四旋翼飛行器體現(xiàn)其優(yōu)越性的平臺。1.2四旋翼飛行器的國內(nèi)外研究現(xiàn)狀1.2.1 國外研究現(xiàn)狀目前,國內(nèi)外對四旋翼飛行器的研究主要集中在3個方面:基于慣性導(dǎo)行系統(tǒng)的自主飛行控制、基于視覺功能的自主飛行控制和自主飛行器系統(tǒng)方案,典型代表有:瑞士洛桑聯(lián)邦理工大學(xué)(EPFL)的OS4、賓夕法尼亞大學(xué)的HMX4。OS4是EPFL自動化系統(tǒng)實驗室開發(fā)的一種電動小型四旋翼飛行器,研究的重點是機構(gòu)設(shè)計和自主導(dǎo)航算法,目標(biāo)是實現(xiàn)室內(nèi)和室外完全自主飛行。OS4I最大長度約73cm,質(zhì)量為235g;它使用了Draganflyer的旋翼和機架,4個Faulhaber1724

12、電機,以及一個Xsense的MT9-B微慣性器件。通過萬向節(jié)將飛行器固定在飛行測試平臺上,使其在三個方向都可以靈活運動,便于調(diào)試。飛行器的能源供給、數(shù)據(jù)處理、電機驅(qū)動以及飛行控制都由外部提供。OS4已經(jīng)基于PID、LQ、Backstepping及Sliding-mode等多種控制算法實現(xiàn)了飛行器姿態(tài)控制。OS4第二代OS4II的機身最大長度72cm,重520g。機載230g的鋰電池,可以自主飛行30min。它與OS4I的區(qū)別主要是:旋翼的槳葉面積更大,無刷電機更輕、功率更大,不用電機減速箱而改用皮帶減速裝置,主控器、慣性器件、電池和電機驅(qū)動模塊等直接裝在機體上。最終在室內(nèi)實現(xiàn)了OS4II基于慣

13、性導(dǎo)行系統(tǒng)的自主懸停。賓夕法尼亞大學(xué)的HMX4最大長度76cm,重700g,機體底部有5個彩色標(biāo)記。地面攝像頭會實時跟蹤并飛行器底部標(biāo)記的位置與面積,從而計算出飛行器 的3個姿態(tài)角和位置。研究人員將整個系統(tǒng)安裝在一個實驗平臺上,使飛行器實現(xiàn)了自主懸停,使用的控制算法是Backstepping。之后HMX4的研究人員又研發(fā)出一種基于機載與地面雙攝像頭的視覺定位與定姿系統(tǒng),進(jìn)一步提高了測量精度。這種基于視覺的四旋翼飛行器控制可以很好地被用于執(zhí)行一些特殊任務(wù),如,在固定平臺自主起飛、降落,又如,與地面可移動機器人協(xié)同工作等。 賓夕法尼亞大學(xué)的四旋翼飛行器研究已經(jīng)從對單個飛行器的控制上升到對多個飛行器

14、的控制。研究重點是多個飛行器之間協(xié)調(diào)實現(xiàn)隊形排列,運動計算等算法設(shè)計,完成對飛行器機群的控制。比如賓法尼亞大學(xué)實現(xiàn)的四旋翼飛行器群可以分別演奏一種樂器,并可以實現(xiàn)相互之間的協(xié)調(diào),完成一首交響樂的演奏。目前國外四旋翼飛行器的研究發(fā)展迅速,美國、日本、韓國、澳大利亞和德國等在此項目上經(jīng)驗豐富,技術(shù)較為成熟。部分國外研發(fā)的飛控算法及制作的飛控板很多都已經(jīng)進(jìn)入我國并受到航模愛好者青睞,比如MWC飛控、KK飛控,MK飛控,因其開源,使用得較多。1.2.2 國內(nèi)研究現(xiàn)狀國內(nèi)對四旋翼飛行器的研究也比較多。清華大學(xué)、北京航空航天大學(xué)、上海交通大學(xué)、浙江大學(xué)等都有對此項目有很大的研發(fā)投入并獲取了一定研究成果。深

15、圳市大疆創(chuàng)新科技有限公司(DJI-Innovations,簡稱DJI),成立于2006年。是全球領(lǐng)先的無人飛行器控制系統(tǒng)及無人機解決方案的研發(fā)和生產(chǎn)商。憑借對創(chuàng)新的高度投入,大疆研發(fā)并推出了多個具有業(yè)界最頂尖水平的產(chǎn)品系列,包括Ace系列工業(yè)無人直升機智能飛行控制系統(tǒng)和地面站控制系統(tǒng),WooKong-M系列多旋翼控制系統(tǒng)級地面站系統(tǒng),Spreading Wings筋斗云系列多旋翼專業(yè)影視航拍飛行器,包含了高清數(shù)字圖傳的Ruling如來系列多功能手持地面控制終端。此外,大疆還推出了專門針對模型和玩具市場的WooKong-H遙控直升機飛控系統(tǒng),Naza系列飛控系統(tǒng),F(xiàn)lame Wheel 風(fēng)火輪系

16、列輕型多軸飛行器等產(chǎn)品。目前,國內(nèi)有很多致力于開源四旋翼飛行器研發(fā)的科技企業(yè)及技術(shù)團(tuán)隊,最受歡迎的有匿名科創(chuàng)開發(fā)的匿名四軸,圓點博士小四軸等。匿名四軸的控制方法主要是對姿態(tài)歐拉角進(jìn)行控制,圓點博士小四軸主要是對姿態(tài)四元數(shù)進(jìn)行控制,控制效果都很好。這給很多電子技術(shù)愛好者提供了豐富的學(xué)習(xí)資料。國內(nèi)有很多針對多旋翼飛行器的技術(shù)論壇,也有很多技術(shù)論壇專門開設(shè)了四旋翼飛行器討論版塊,匯聚了眾多四旋翼飛行器的愛好者,提供了飛行器技術(shù)學(xué)習(xí)和提升的平臺。 1.3設(shè)計意義及應(yīng)用前景四旋翼飛行器的控制有很多難點。首先,對四旋翼飛行器很難建立準(zhǔn)確的動力學(xué)模型。因為飛行過程中,影響因素較多,且具有不確定性。其次,現(xiàn)代

17、控制理論的控制器都要基于對被控對象的精確建模上,如果建模不準(zhǔn)確,控制器的性能就會不理想。第三,利用慣性器件測算四旋翼飛行器姿態(tài)信息的準(zhǔn)確度也是實現(xiàn)穩(wěn)定控制的關(guān)鍵。毋庸置疑,對此飛行器的研究將會推進(jìn)這三個問題的解決,是得人類對于復(fù)雜環(huán)境下的運動控制更進(jìn)一步。所以,其研究價值非同一般。四旋翼飛行器所具備的優(yōu)越性能,應(yīng)用前景十分廣闊??蓱?yīng)用于軍事偵察、監(jiān)視、巡邏、獲取情報等??捎糜谧匀粸?zāi)害之后的救援、搜索??捎糜谌穗y以到達(dá)的高壓線、水壩、橋墩和地震后路段的檢查,航拍和成圖。還可用于各類勘探工作等。所以,從工程和理論的角度來講,四旋翼飛行器的研究具有重要意義。本設(shè)計做的飛行器就從小方面來講,可以為我院

18、的同學(xué)做一個引子。第一,可以引起大家對四旋翼飛行器的興趣和熱情。第二,對四旋翼飛行器的飛行原理和基礎(chǔ)知識有詳細(xì)認(rèn)知,為后續(xù)同學(xué)打好基礎(chǔ)。第三,在技術(shù)上進(jìn)行一些先導(dǎo)性的嘗試,總結(jié)相關(guān)的經(jīng)驗和教訓(xùn),以供借鑒。四旋翼飛行器集成了慣性導(dǎo)航技術(shù)、軟硬件設(shè)計技術(shù)、自動控制技術(shù)、是一個多學(xué)科的綜合平臺,也是提高能力的平臺。第二章 四旋翼飛行器飛行原理四旋翼飛行器機架呈十字狀,有四個螺旋槳分別位于十字架的端點處,如下圖:圖1 四旋翼飛行器原理示意圖在任何一種模式下,四個螺旋槳順時針編號為1、2、3、4號,其中1、3號為A組,2、4號為B組,其中,A組螺旋槳順時針旋轉(zhuǎn),為正槳;B組螺旋槳逆時針旋轉(zhuǎn),為反槳。四旋

19、翼飛行器可分為兩種模式,即模式和模式。上圖展示的是模式。首先,以模式介紹飛行器的姿態(tài)角:Roll,Pitch,Yaw。這三個角反應(yīng)了飛行器的對地姿態(tài)。Roll角為橫滾角,如圖,設(shè)螺旋槳1為飛行器機頭。機體繞X軸旋轉(zhuǎn)產(chǎn)生與水平面的夾角,即為橫滾角,角度正負(fù)與慣性器件的安裝有關(guān)。Pitch角為俯仰角,如圖,機體繞Y軸旋轉(zhuǎn)產(chǎn)生與水平面的夾角,為俯仰角,角度正負(fù)與慣性器件安裝有關(guān)。Yaw角為偏航角,如圖,機體繞Z軸旋轉(zhuǎn)產(chǎn)生原來XOZ面的夾角,為偏航角。在模式下,A組螺旋槳與B組螺旋槳基本沒有關(guān)系。實現(xiàn)基本的飛行動作只需調(diào)節(jié)一組螺旋槳的轉(zhuǎn)速。當(dāng)四個螺旋槳轉(zhuǎn)速相同時,螺旋槳間的扭力矩相互抵消,實現(xiàn)飛行器姿

20、態(tài)水平,如果增加螺旋槳的轉(zhuǎn)速,可實現(xiàn)飛行器上升,下降等動作。當(dāng)1、3號螺旋槳轉(zhuǎn)速增加,而2、4號螺旋槳轉(zhuǎn)速不變時,飛行器可以實現(xiàn)偏航。當(dāng)1、3號螺旋槳轉(zhuǎn)速不變,2號螺旋槳轉(zhuǎn)速增加,4號螺旋槳轉(zhuǎn)速減小,飛行器可實現(xiàn)橫滾運動,即飛行器向左飛。當(dāng)2、4號螺旋槳轉(zhuǎn)速不變,1號螺旋槳轉(zhuǎn)速增加,3號螺旋槳轉(zhuǎn)速減小,飛行器可實現(xiàn)俯仰運動,即飛行器向前后飛。由此,可以想像飛行器在不同螺旋槳轉(zhuǎn)速下的飛行動作。X模式與模式不太相同。在X模式下,飛行器的四個螺旋槳都要參與到飛行動作的調(diào)節(jié)中,將圖1中機體坐標(biāo)繞Z軸順時針旋轉(zhuǎn)45°,就是X模式下的機體坐標(biāo)。此時,飛行器要實現(xiàn)飛行動作就要靠螺旋槳兩兩協(xié)調(diào)完成。

21、當(dāng)2、3好螺旋槳轉(zhuǎn)速增加,1、4號螺旋槳轉(zhuǎn)速減小,飛行器實現(xiàn)Roll方向的運動。當(dāng)1、2號螺旋槳轉(zhuǎn)速增加,3、4號螺旋槳轉(zhuǎn)速減小,飛行器是實現(xiàn)Pitch運動。當(dāng)1、3號螺旋槳轉(zhuǎn)速增加,2、4號螺旋槳轉(zhuǎn)速不變,飛行器實現(xiàn)Yaw運動。第三章 四旋翼飛行器常用部件及安裝3.1四旋翼飛行器部件介紹3.1.1 風(fēng)火輪450機架風(fēng)火輪450機架是深圳市大疆創(chuàng)新科技公司設(shè)計的多旋翼飛行器套裝。其電機軸距450mm,使用尼龍+纖材料,硬度高,耐摔。其自身重量非常輕便,加上螺旋槳大約在285g左右。圖3.1.1 風(fēng)火輪450機架3.1.2 新西達(dá)2212 930kv無刷電機無刷電機運用于航模,優(yōu)越性非常明顯:無

22、刷電機工作效率很高,一般的有刷電機摩擦大,損耗大,發(fā)熱多,壽命短,效率低,輸出功率小。而無刷電機無電刷,低干擾,噪音低,運轉(zhuǎn)順暢,效率高,可達(dá)到80%以上,壽命長,基本不需要維護(hù)。無刷電機通常適用于控制要求比較高,轉(zhuǎn)速比較高的設(shè)備。航模無疑是一個理想平臺。電機參數(shù)解釋:2212前兩位是指無刷電機轉(zhuǎn)子的直徑為22mm,后兩位是指無刷電機轉(zhuǎn)子高度為12mm。kv值是指外加1v電壓對應(yīng)的每分鐘空轉(zhuǎn)轉(zhuǎn)速。所以930kv就說明電機供電電壓增加1v,電機每分鐘空轉(zhuǎn)轉(zhuǎn)速提升930轉(zhuǎn)。因為輸入的是直流電,而無刷電機需要三相交流電才能驅(qū)動,所以,無刷電子調(diào)速器對無刷電機的使用至關(guān)重要。圖3.1.2 XXD221

23、2 930KV無刷電機3.1.3 新西達(dá)30A電子調(diào)速器新西達(dá)電子調(diào)速器是航模無刷電子調(diào)速器的一種。因為無刷電機運行起來之后,其需要很大的電流,這個電流是微控制器無法承受的,而電子調(diào)速器的作用就是將控制信號轉(zhuǎn)化為控制所需的三相電流,輸出到無刷電機可以直接驅(qū)動。電子調(diào)速器有三根輸出線。紅色和黑色線分別接入到電源正負(fù)極,白色線用于接收無線接收機的PWM信號。四旋翼飛行器就是通過控制電子調(diào)速器達(dá)到控制無刷電機的轉(zhuǎn)速從而使飛行器做出相關(guān)動作的。新西達(dá)30A電子調(diào)速器參數(shù)解釋:30A是指其最大能夠提供的電流不能超過30A。電子調(diào)速器的使用:電子調(diào)速器只接收舵機信號。所謂舵機信號就是指頻率為50Hz,高電

24、平為1-2ms的PWM信號。第一次使用電子調(diào)速器要對電子調(diào)速器初始化,初始化就是對電子調(diào)速器設(shè)置油門行程,確定電子調(diào)速器輸出最小和最大電流,還有其他一些保護(hù)模式,詳細(xì)的操作設(shè)置,可以參考新西達(dá)電子調(diào)速器說明書。圖3.1.3 XXD30A電子調(diào)速器3.1.4 1045正反漿為了抵消螺旋槳的自旋,需要正反槳使得相隔的槳旋轉(zhuǎn)方向不同,正反槳的風(fēng)都是向下吹,順時針旋轉(zhuǎn)的槳為正槳,逆時針旋轉(zhuǎn)的槳為反槳。正反槳是四旋翼飛行器常用的螺旋槳,一般選用碳纖和尼龍復(fù)合材料制成,硬度強。正反槳參數(shù)解釋:1045是指槳的直徑為10英寸(1英寸=254mm),槳的角度是45°。圖3.1.4 1045正反槳3.

25、1.5 2200mAh 11.1V 30C 充電鋰電池同樣容量的電池中,鋰電池的質(zhì)量最輕,所以本設(shè)計選擇鋰電池。電池參數(shù)解釋:2200 mAh表示電池的容量,如果電池以2200mA放電的話可以放電一小時。11.1V表示電池的額定電輸出壓。C是普通鋰電池與動力鋰電池的最大不同,動力鋰電池的容量與C值的乘積即為鋰電池的最大放電強度。本設(shè)計中的電池放電強度為2200*30=66000mA。隨著電池容量的增加,電池的質(zhì)量就會增加。這個必須考慮到設(shè)計中,因為選定電機,螺旋槳,飛行器的升力就大致確定了。所以,如果飛行器自身過重就會飛不起來,所以電池的容量要選擇合適。圖3.1.5 2200mAh 11.1V

26、 30C 充電鋰電池3.1.6 飛行主控stm32f103c8t6STM32系列是意法半導(dǎo)體公司基于ARM公司專為要求高性能、低成本、低功耗的嵌入式應(yīng)用專門設(shè)計內(nèi)核而設(shè)計的32位高性能,低功耗高級微控制器。本設(shè)計采用STM32系列的增強型F103系列。STM32F103C8T6是STM32系列中增強型中的中等容量微型控制器。其具有非常豐富的內(nèi)部資源。1、帶有128KB字節(jié)閃存的。2、最高主頻達(dá)到72MHz3、具有時鐘、復(fù)位、電源管理、低功耗功能。4、2個12位內(nèi)置模式轉(zhuǎn)換器,多大16個轉(zhuǎn)換通道,轉(zhuǎn)化之間僅1us。5、7通道DMA控制器,支持定時器、ADC、SPI、I2C和USART等外設(shè)。5、

27、多達(dá)8個定時器,其中2個高級定時器,4個普通定時器,2個基本定時器。6、2個I2C接口,2個SPI接口,3個USART接口,1個CAN接口,1個USB2.0全速接口。7、具有調(diào)試模式,包括串行單線調(diào)試SWD,和JTAG接口。8、芯片內(nèi)置了一個溫度傳感器。9、具有CRC計算單元。10、96位芯片唯一代碼。操作STM32微型控制器目前有兩種主流方式,即:寄存器操作法和庫函數(shù)操作法。意法半導(dǎo)體公司為所有STM32系列的控制器撰寫了完整的固件庫,目前已經(jīng)更新到v3.5版本。固件庫中包含了STM32所有內(nèi)部資源的操作源文件,使得用戶在對STM32編程時變得相當(dāng)簡潔方便,尤其是在對控制器的配置中顯得尤為突

28、出。作為初學(xué)者,建議使用庫函數(shù)操作法,其操作一目了然,如同閱讀一篇英文文章一樣,簡單易懂,省去了查詢寄存器的繁瑣工作。但是,這種操作方法對硬件本身的了解程度不如操作寄存器的方法。因為寄存器的操作具體到了寄存器的每一位配置。這對使用數(shù)據(jù)手冊的能力和編程能力要求較高。這兩種方法各有所長,依個人喜好和能力選擇。在線調(diào)試器和編程器方面,建議使用意法半導(dǎo)體的STLink。STLink是意法半導(dǎo)體為STM8和STM32系列專門設(shè)計制造的,其易于安裝,使用方便。此外,J-Link也可以,效果相同。圖3.1.6 主控stm32f103c8t63.1.7 慣性器件MPU6050MPU6050是美國InvenSe

29、nse公司研發(fā)的全球首例9軸運動處理傳感器。它集成了3軸MEMS陀螺儀,3軸MEMS加速度傳感器。預(yù)留出了XDA,XCL兩個管腳,可以擴展其他的IIC設(shè)備,比如電子羅盤。主控器可以通過XDA,XCL直接訪問擴展設(shè)備的寄存器,使其輸出9軸的運動數(shù)據(jù)。MPU-6050的陀螺儀和加速度傳感器的測量范圍都是可以編程的,陀螺儀的量程有±250,±500,±1000,±2000°/秒(dps),加速度計可測范圍為±2,±4,±8,±16g。MPU6050與所有設(shè)備寄存器之間的通信采用I2C接口。其片內(nèi)集成了一個精度很

30、高的振蕩器,可用來為MPU6050提供工作時鐘。MPU-6050可支持的電源范圍可以是2.5V、3.0V也可以到3.3V。要特別說明的是,MPU6050的內(nèi)部集成了一個可以擴展的數(shù)字運動處理器DMP(Digital Motion Processor),可謂功能強大,用戶可以通過對其編程,實現(xiàn)MPU6050內(nèi)部自動對ACC,GRYO數(shù)據(jù)進(jìn)行濾波,校準(zhǔn),并融合ACC、GRYO數(shù)據(jù),計算直接輸出姿態(tài)四元數(shù),非常方便,省去了姿態(tài)融合的算法,減小了主控器的計算負(fù)擔(dān)。DMP寄存器有專門配置的操作文件庫,最初是針對MSP430單片機寫的,用戶可以在此基礎(chǔ)上稍加修改,便可以移植到STM32上來,這樣讀出姿態(tài)數(shù)

31、據(jù)經(jīng)過本人測試,非常準(zhǔn)確。但有個問題需要注意,在開機或者復(fù)位8秒之內(nèi),MPU6050的DMP寄存器要進(jìn)行自身穩(wěn)定,所以這段時間輸出的數(shù)據(jù)都是假數(shù)據(jù),8秒之后輸出的數(shù)據(jù)就會很準(zhǔn)確。很多網(wǎng)友對DMP寄存器的評價也非常高。MPU6050集成度高,相比單個的電子陀螺儀和加速度傳感器成本低,精度高,性價比非常好,堪稱運動傳感器的典范。圖3.1.7 mpu60503.1.8 天地飛7遙控器天地飛遙控器是深圳天地飛科技開發(fā)有限公司開發(fā)設(shè)計并制造的專用航模遙控器,可用在固定翼、直升機及多旋翼等飛行器上。目前天地飛遙控器已經(jīng)發(fā)布到天地飛9版本。本設(shè)計使用天地飛7,如下圖。可以看到,天地飛7遙控有超大圖形點陣LC

32、D,中文、圖形顯示,人機交互界面設(shè)計人性化。該遙控器采用原生2.4G技術(shù),采用總線數(shù)據(jù)傳輸,極大提升了操控敏捷度。具有超強的抗干擾能力,使用了高端擴頻(DSSS)+ 跳頻技術(shù),可以60臺遙控器同時開機工作而不互相影響。航模遙控器分美國手和日本手兩種,區(qū)分這兩種遙控器的依據(jù)是遙控器油門在左邊還是右邊。油門在左手邊的是美國手,在右手邊的是日本手。本設(shè)計中采用美國手,即左邊搖桿上下圍油門,左右為方向舵。右邊搖桿上下為升降舵,左右為副翼。這種模式是可以通過遙控設(shè)置菜單中進(jìn)行設(shè)置的。一般常用的設(shè)置就是這些。詳細(xì)的設(shè)置說明可以參考WFT07中文說明書V1.3遙控器油門是控制四旋翼飛行器的螺旋槳轉(zhuǎn)速,油門大

33、,則無刷電機轉(zhuǎn)速加快,螺旋槳轉(zhuǎn)速加快。方向舵是控制飛行器的飛行方向,副翼是控制飛行器的橫滾角,升降舵是控制飛行器的俯仰角的。圖3-1-8 天地飛7遙控器3.1.9 天地飛7無線接收機天地飛7無線接收機是配套天地飛7遙控器一起使用的。工作電壓為4.8V6V。工作電流30mA。第一次使用接收機要將無線接收機與天地飛7遙控器進(jìn)行對碼。一旦實現(xiàn)對碼之后,以后的使用將無需進(jìn)行對碼,只要雙方都接通了電源,遙控器會自動與接收機對接。具體對碼操作可以參考WFT07中文說明書V1.3天地飛7遙控器有7個接收通道,按照通道號分別為:第一通道-AIL副翼第二通道-ELE升降舵第三通道-THR油門第四通道-RUD方向

34、舵第五通道-GRY起落架第六通道-PIT螺距第七通道-輔助通道圖3.1.9 天地飛7無線接收器3.1.10 5V穩(wěn)壓電路由于電池輸出的電壓有11V以上,而STM32的供電電壓只有5V,天地飛7無線接收機的工作電壓為4.8V6.0V,所以需要一個5V的穩(wěn)壓電路,專門對主控器和無線接收機供電。這樣可以解決電調(diào)BEC供電使電調(diào)發(fā)熱的問題采用常規(guī)5V穩(wěn)壓電路即可,對電池輸出電壓濾波,穩(wěn)壓,然后輸出即可。原理圖如下圖3.1.10 5V穩(wěn)壓電源電路圖3.2 四旋翼飛行器的安裝3.2.1 飛行器硬件連接圖 STM32F103C8T6 電機電調(diào)MPU5060電機電調(diào)電機電調(diào)電調(diào)電機5V穩(wěn)壓電路電池遙控器STM

35、32F103C8T6NRF24L01NRF24L01NRF24L01接收機圖3.2.1 飛行器硬件連接關(guān)系圖 3.2.2 x模式和+模式的區(qū)別在上文四旋翼飛行器原理中已經(jīng)介紹過四旋翼飛行器的兩種模式。X模式與模式在硬件安裝和軟件設(shè)計編寫都有區(qū)別。硬件上的區(qū)別在于慣性器件的安裝位置:模式的四旋翼飛行器的慣性器件X軸與一條機臂平行,Y軸與另外一條機臂平行。X模式的四旋翼飛行器的慣性器件安裝位置是把模式的慣性器件順時針或者逆時針旋轉(zhuǎn)45°就得到X模式的四旋翼飛行器。3.2.2安裝事項安裝四旋翼飛行器要注意以下事項:1、由于,四旋翼飛行器螺旋槳旋轉(zhuǎn)起來,產(chǎn)生的力矩很大,機體旋轉(zhuǎn)會產(chǎn)生非常大的

36、離心力,如果機架沒有安裝好,就會在離心力的作用下散架,發(fā)生螺旋槳打到人的危險事故。所以在安裝風(fēng)火輪機架時,一定要確保螺絲都擰緊了。2、電機的安裝要注意,每個電機都與機架所在的水平面呈90度角。3、螺旋槳的安裝也要注意螺旋槳的翼面要與機架所在水平面保持平行。同時,四個螺旋槳的翼面也要在一個平面內(nèi)。當(dāng)然有一點誤差也沒有太大關(guān)系。4、由于調(diào)試需要,要將主控器安裝在可以拆卸,容易插拔線的地方。5、將電池放在容易更換的地方。將飛行器安裝好之后,需要檢驗是否安裝正確,檢驗方法為:在有保護(hù)措施的情況下打開電機,遙控油門不要推太大,來檢查飛行器的螺旋槳的旋轉(zhuǎn)方向,是否正確。如果飛行器比較平穩(wěn),沒有很大幅度的震

37、蕩就說明安裝正確。建議最好是把自己的飛控程序下載到主控器,在檢驗飛行器安裝正確與否的同時也可以檢驗自己PID程序中ROLL,PITCH,YAW輸出量的符號問題。安裝好如下圖:圖3.2.2 安裝效果圖第四章 四旋翼上位機及下位機4.1匿名上位機軟件平臺4.1.1 匿名上位機功能 匿名科創(chuàng)開發(fā)的上位機軟件平臺目前最新的版本具有地面站功能,可以下載飛控程序。本設(shè)計中使用的上位機版本較低,但是功能方面已經(jīng)足夠使用。該上位機具有以下功能:(1)基本功能??梢援?dāng)做普通的串口收發(fā)數(shù)據(jù),可以選擇串口,選擇波特率范圍1200-500000,有數(shù)據(jù)校驗功能,具備兩種收發(fā)碼格式:CHR、HEX。(2)高級收碼。可以

38、將下位機發(fā)送至上位機的每幀數(shù)據(jù)顯示出來,可以分別顯示數(shù)據(jù)校驗位,數(shù)據(jù)和功能幀。共有10中幀格式可選,可以就一種功能的數(shù)據(jù)進(jìn)行篩選顯示。(3)波形顯示??梢詫崟r顯示出慣性器件測出的ACC的XYZ三軸波形,GRYO的XYZ三軸波形,3個姿態(tài)角的波形等。波形可以放大可以縮小,可以保存至PC機。(4)飛控狀態(tài)??梢詫崟r顯示飛行器的3D狀態(tài),實時顯示出3個姿態(tài)角,加速度計3軸數(shù)據(jù),陀螺儀3軸數(shù)據(jù),地磁計3軸數(shù)據(jù)。同時還可以實時顯示四個電機狀態(tài),7個遙控通道數(shù)據(jù),及電池的電量使用情況。(5)飛控設(shè)置。可以通過無線向飛控寫入PID參數(shù),也可以讀取飛控的PID參數(shù)。這對整定PID控制器的參數(shù)有很大的幫助,使得

39、參數(shù)調(diào)節(jié)方便高效。4.1.2 匿名上位機通信協(xié)議下位機發(fā)送數(shù)據(jù)格式為:0x88+FUN+LEN+DATA+SUM。FUN可以是0xA1到0xAA,共10個;LEN為DATA的長度。SUM是0x88一直到DATA最后一字節(jié)的和,uint8格式。FUN表示下位機的功能幀頭。以下介紹幾個常用到的功能幀:飛控姿態(tài)顯示對應(yīng)的功能幀為0xAF,幀格式為:0x88+0xAF+0x1C+ACC DATA+GYRO DATA+MAG DATA+ANGLE DATA+ 0x00 + 0x00+ 0x00+SUM,共32字節(jié)。遙控,電機pwm,電壓顯示對應(yīng)的幀F(xiàn)UN為0xAE,幀格式為:0x88+0xAE+0x12

40、+THROT YAW ROLL PITCH +AUX1 2 3 4 5 + PWM:1 2 3 4 + VOTAGE + SUM,共28字節(jié)。下位機發(fā)送PID數(shù)據(jù)給上位機的數(shù)據(jù)幀格式為:0X88 0XAC 0X1C 0XAD + PID數(shù)據(jù) + 無用數(shù)據(jù) + SUM上位機發(fā)送PID數(shù)據(jù)給下位機的格式為:0X8A 0X8B 0X1C 0XAE +PID數(shù)據(jù)+ 無用數(shù)據(jù) + SUM就四旋翼飛行器本身來講,上位機軟件平臺是可要可不要。因為上位機的功能就是提供一個四旋翼飛行器與人交互的平臺,使人可以看到飛行器實時的內(nèi)部數(shù)據(jù)和狀態(tài)。如果不要上位機,只要下位機做的好,飛行器也可以很好的起飛,可以完成所有動

41、作。4.2下位機程序模塊本章將詳細(xì)介紹下位機的任務(wù),模塊功能及實現(xiàn)方法。總體來說,下位機的任務(wù)就是測量四旋翼飛行器的實時姿態(tài)并返回主控,主控根據(jù)返回的姿態(tài)進(jìn)行PID控制,計算出能夠使飛行器達(dá)到目標(biāo)姿態(tài)的各個電機輸出的PWM量。同時,下位機將四旋翼飛行器的姿態(tài)數(shù)據(jù),電機動作量,遙控器數(shù)據(jù)通過無線模塊發(fā)送至上位機。4.2.1 DMP使用方法MPU6050有官方的DMP寄存器操作庫。該操作庫下包含了DMP操作的源文件。原本是基于MSP430單片機寫的,經(jīng)過一些修改就可以移植到STM32F103微控制器上。所有對DMP寄存器的操作都必須通過這個庫才能打開DMP引擎,進(jìn)行加速度傳感器和陀螺儀數(shù)據(jù)的濾波,

42、融合,輸出姿態(tài)數(shù)據(jù)。由于MPU6050的要通過IIC通信協(xié)議才能對寄存器操作,所以必須確保程序中的IIC程序正確。對于DMP寄存器的操作,主要是用到了以下操作函數(shù):mpu_init();對MPU進(jìn)行初始化mpu_set_sensors(INV_XYZ_GYRO | INV_XYZ_ACCEL);設(shè)置加速度傳感器和陀螺儀的最大量程mpu_configure_fifo(INV_XYZ_GYRO|INV_XYZ_ACCEL);配置FIFO通道m(xù)pu_set_sample_rate(DEFAULT_MPU_HZ);設(shè)置MPU采樣頻率。dmp_load_motion_driver_firmware();

43、這個函數(shù)非常重要,它的作用是使能DMP寄存器的。如果這個函數(shù)執(zhí)行失敗,將無法使用DMP寄存器的功能。dmp_set_orientation(inv_orientation_matrix_to_scalar(gyro_orientation);與DMP計算輸出四元數(shù)有關(guān)。dmp_enable_feature(hal.dmp_features);dmp_set_fifo_rate(DEFAULT_MPU_HZ);設(shè)置FIFO通道的頻率 run_self_test();這個是MPU的自檢程序。自檢程序可以消除MPU測得數(shù)據(jù)的漂移。自檢結(jié)束后,傳感器才有輸出。mpu_set_dmp_state(1);

44、在一切設(shè)置完成之后,DMP就被成功使能,要得到實時姿態(tài)數(shù)據(jù),只需要在程序主函數(shù)的while(1)循環(huán)中調(diào)用dmp_read_fifo(gyro, accel, quat, &sensor_timestamp, &sensors, &more);這個函數(shù),就可以讀取飛行器的陀螺儀,加速度傳感器數(shù)據(jù),可以讀取姿態(tài)四元數(shù)。4.2.2 NRF24L01無線通信NRF24L01無線模塊與主控器之間通過SPI協(xié)議進(jìn)行通信。STM32F103C8T6主控器中含有兩個SPI模塊。所以我們的SPI程序就有兩種選擇,即:A、使用GPIO口進(jìn)行SPI模擬,B、直接使用SPI模塊進(jìn)行編程。這兩

45、種方法都有一定的好處當(dāng)然也有缺點。A方法的好處是不用局限于特定的GPIO口,但缺點是可能通信的質(zhì)量不如SPI模塊。而B方法剛好與A相反??傮w來講,主控器自身的SPI模塊還是相對好用一些,我們只需要對其特定寄存器進(jìn)行配置就可以完成通信,使得代碼量大大減少。我們需要兩塊NRF24L01通信模塊實現(xiàn)飛控與PC機的通信。同時要將其配置為雙線全雙工模式,實現(xiàn)兩個無線模塊間的相互通信。程序的關(guān)鍵在于SPI模塊的初始化和NRF24L01的初始化。程序流程圖如下:圖4.2.2 無線通信程序流程圖4.2.3 無線接收機解碼程序天地飛7無線接收機向主控輸入的信號為PWM信號,該信號也為舵機信號,即:周期為20ms

46、,高電平為1-2ms。遙控器發(fā)出的命令的不同就在于PWM信號的高電平時間的長短,所以我們解碼的關(guān)鍵問題就是捕捉無線接收機輸入到主控中的PWM信號高電平的時間。本設(shè)計使用了無線接收機的四個通道即:副翼通道、升降舵通道、油門通道、方向舵通道。所以要將這四個通道的PWM高電平時間采集出來并保存至主控的寄存器中。STM32F103支持一個普通定時器的四個通道捕捉外部PWM。支持上升沿觸發(fā)中斷或者下降沿觸發(fā)中斷。我們將此捕獲中斷設(shè)置為優(yōu)先級最高。而且這個設(shè)置是必須的,只有讓捕獲中斷的優(yōu)先級最高,主控器才能實時接收到遙控器的命令而不被其他中斷打斷。捕獲PWM高電平時間的思路是這樣的:首先,定義兩個全局變量

47、,一個用于標(biāo)記捕獲狀態(tài)status(8bits),我們讀bit0為第1位。一個用于記錄捕獲到一次下降沿時的TIM_CNT的值value。捕獲狀態(tài)變量的后6位用于記錄捕獲高電平后定時器溢出的次數(shù),第7位用于表示捕獲到高電平標(biāo)志,第8位是捕獲完成標(biāo)志。我們在TIMER的初始化中將每個通道設(shè)為上升沿中斷的,當(dāng)上升沿到來時,程序進(jìn)入捕獲中斷的服務(wù)函數(shù)中,判斷status的第7位是否為0,如果為0,則說明還未捕獲到新的上升沿,那么就把status、value和TIM_CNT置零。再將status第7位置1,表示捕獲到高電平,之后就把該通道設(shè)置為下降沿中斷,如果在等待下降沿的過程中發(fā)生率定時器溢出,那么s

48、tatus就對溢出次數(shù)計數(shù)。如果達(dá)到了最大溢出次數(shù),即使還沒有捕獲到下降沿,也強制標(biāo)記捕獲完成。當(dāng)下降沿到來的時候,先將status第8位置1,表示成功捕獲到一次高電平,然后讀取TIM_CNT至value,再設(shè)置該通道為上升沿捕獲。只要status 的第8 位一直為 1,那么第二次捕獲就不會進(jìn)行,在處理完捕獲數(shù)據(jù)后,將 status清0,就可以開啟第二次捕獲。4.2.4 電調(diào)驅(qū)動程序該程序模塊中也是使用了STM32F103另一個普通定時器,設(shè)置其功能為PWM輸出功能。主控器可以支持四個通道同時輸出四路PWM,對于四旋翼飛行器的電機驅(qū)動剛好適合。這個程序模塊主要就是對定時器進(jìn)行配置,但是有一點必

49、須注意,那就是主控器輸出的PWM頻率必須能夠被電子調(diào)速器識別,一般要求其輸出為舵機信號。這就必須配置好定時器每個通道TIM_Prescale和TIM_Period。計算方法為:Frequency = 72 000 000/TIM_Prescaler/TIM_Period.4.2.5 姿態(tài)解算程序姿態(tài)解算程序已經(jīng)在本章第一節(jié)中介紹過了,利用MPU6050的DMP寄存器直接輸出姿態(tài)數(shù)據(jù),然后主控對姿態(tài)四元數(shù)進(jìn)行變換,得到姿態(tài)歐拉角。下文將詳細(xì)介紹姿態(tài)解算原理。4.2.6 PID控制器程序PID控制器的主要任務(wù)就是處理慣性器件返回的姿態(tài)數(shù)據(jù)。將姿態(tài)數(shù)據(jù)輸入PID控制器,主控器使用PID控制器計算得到

50、使飛行器達(dá)到目標(biāo)姿態(tài)的四個電機的PWM值。使得四旋翼飛行器姿態(tài)可控。對四旋翼飛行器的控制屬于是3維運動控制,即,對ROLL,PITCH,YAW這三個量的控制。而這三個量分屬三個平面,基本上沒有相互制約相互影響的關(guān)系。所以,PID控制器分三個部分分別對這三個量進(jìn)行PID控制。需要說明的是,由于MPU6050的測出的偏航角在靜止時漂移很小,但是在運動的過程中會產(chǎn)生較大的漂移,所以,很多網(wǎng)友基本放棄MPU6050測出的YAW,而改用HMC5883L這種地磁傳感器來測YAW。其實,只要有對ROLL和PITCH的控制,飛行器就可以成功起飛,但是起飛時飛行器會自轉(zhuǎn),這種現(xiàn)象就是說明飛行器沒有了YAW,也就

51、沒有了方向感。本設(shè)計采用了位置式的PID控制。程序簡單,容易理解。詳細(xì)程序見附錄。第五章 四旋翼飛行器姿態(tài)解算四旋翼飛行器能不能成功起飛的根本因素在于其姿態(tài)解算的結(jié)果是否正確有效。姿態(tài)解算一旦錯誤,后續(xù)工作做的再好也是沒有用的。姿態(tài)解算的工作至關(guān)重要。本章主要介紹本設(shè)計在實踐過程中使用到的姿態(tài)解算知識。5.1 捷聯(lián)式慣性導(dǎo)航系統(tǒng)介紹根據(jù)不同的導(dǎo)航坐標(biāo)系的建立方法,慣性導(dǎo)航系統(tǒng)可以分為兩大類:平臺式慣性導(dǎo)航系統(tǒng)和捷聯(lián)式慣性導(dǎo)航系統(tǒng)。前者是以物理平臺模擬導(dǎo)航坐標(biāo)系,而后者則是采用數(shù)學(xué)算法計算導(dǎo)航坐標(biāo)系。四旋翼飛行器屬于捷聯(lián)式慣性導(dǎo)航系統(tǒng)。捷聯(lián)式慣性導(dǎo)航系統(tǒng)是指將慣性測量器件(陀螺儀和加速度傳感器)

52、直接安裝在飛行器、艦艇、導(dǎo)彈等需要姿態(tài)、速度、航向等導(dǎo)航信息的主體上,用計算機把測量到的信號變換為導(dǎo)航參數(shù)的一種導(dǎo)航系統(tǒng)。使用經(jīng)過校準(zhǔn)的慣性測量傳感器測出慣性數(shù)據(jù),通過數(shù)據(jù)融合算法就可以計算出飛行器的姿態(tài)。為了描述飛行器姿態(tài)信息,我們需要引入兩個三維坐標(biāo)系,一個用來表示飛行器的機體坐標(biāo)F,一個用于表示參考坐標(biāo)系R。假設(shè)初始時刻,兩坐標(biāo)系重合。參考坐標(biāo)系在飛行器飛行過程中保持不變,而機體坐標(biāo)系相對于參考坐標(biāo)系要經(jīng)過一次或多次旋轉(zhuǎn)。由于慣性器件安裝在飛行器上,所以測得的各項慣性數(shù)據(jù)都是基于機體坐標(biāo)的,所以在姿態(tài)解算之前要先將機體坐標(biāo)通過旋轉(zhuǎn)變換至參考坐標(biāo)。由此可見,旋轉(zhuǎn)變換對于姿態(tài)解算至關(guān)重要。一

53、般旋轉(zhuǎn)有4種表示方式:矩陣表示、歐拉角表示、軸角表示和四元數(shù)表示。由于歐拉角表示姿態(tài)非常直觀易懂,而四元數(shù)在組合旋轉(zhuǎn)方面非常方便,所以使用最多。四元數(shù)可以理解為一個實數(shù)和一個向量的組合,也可以理解為四維的向量。四元數(shù)表示方法有:q = w + xi + yi +zi;或者Q(w ,x, y, z)。規(guī)范化四元數(shù)可以表示一次旋轉(zhuǎn)。歐拉角是由歐拉首先提出的用來確定定點轉(zhuǎn)動剛體位置的3個一組獨立角參量,由章動角、旋進(jìn)角(即進(jìn)動角)和自轉(zhuǎn)角j組成。在慣性導(dǎo)航系統(tǒng)中,歐拉角即我們上文提到的橫滾角ROLL,俯仰角PITCH,偏航角YAW。本設(shè)計中MPU6050的DMP寄存器直接輸出了姿態(tài)四元數(shù),要將姿態(tài)四

54、元數(shù)轉(zhuǎn)換為歐拉角,轉(zhuǎn)換數(shù)學(xué)關(guān)系如下:5.2姿態(tài)解算首先,慣性器件必須校正。慣性測量器件的校正對姿態(tài)結(jié)算提供重要基礎(chǔ),如果未經(jīng)校正就進(jìn)行測量,后續(xù)輸出的姿態(tài)數(shù)據(jù)很可能就是錯誤的,導(dǎo)致整個飛行器系統(tǒng)根本無法正常運行。MPU6050一般采用軟件校正。第二,加速度計和陀螺儀的數(shù)據(jù)融合。由于加速度計是對比力的測量(作用在單位質(zhì)量上的非引力外力叫做比力,根據(jù)加速度計的工作原理,我們把加速度計又稱為比力計),其很容易受到運動的影響。所以其動態(tài)性能較差。一旦飛行器的電機啟動,機架就會有很大震動。這對加速度計有很大負(fù)面影響。但是陀螺儀受外部影響弱,穩(wěn)定性高,動態(tài)性能好,但其只輸出角速度,需要對角速度積分才能得到

55、姿態(tài),這樣就無法避免積分造成的誤差產(chǎn)生累積。所以,需要對各傳感器的數(shù)據(jù)取長補短,才能得到近實時且穩(wěn)定的姿態(tài)。利用上文介紹的方法操作MPU6050的DMP寄存器,可得到姿態(tài)四元數(shù)。由姿態(tài)四元數(shù)與歐拉角間的轉(zhuǎn)化公式將姿態(tài)四元數(shù)轉(zhuǎn)化為歐拉角。由于上一節(jié)介紹的姿態(tài)四元數(shù)與歐拉角之間的轉(zhuǎn)換結(jié)果中歐拉角單位為弧度,而我們實際使用要將其轉(zhuǎn)化為度,所以再進(jìn)行如下變換(以ROLL角為例):即實際變換如下:至此,姿態(tài)解算完成。 第六章 四旋翼飛行器PID控制器設(shè)計正確解算四旋翼飛行器的姿態(tài)就為姿態(tài)控制提供了關(guān)鍵依據(jù)。四旋翼飛行器的姿態(tài)控制方法一般分兩種:四元數(shù)控制和歐拉角控制。本章將介紹PID控制器及四旋翼飛行器

56、姿態(tài)控制的方法。6.1 PID控制器介紹PID控制器又稱比例-積分-微分控制器,由比例單元 P、積分單元 I 和微分單元 D 組成。PID控制器以其結(jié)構(gòu)簡單,穩(wěn)定性高,可靠性強的特點受到青睞,成為世界工業(yè)控制使用率最高的控制器。PID控制器是一個閉環(huán)控制系統(tǒng),其輸入值為被控變量的實際值與目標(biāo)值的偏差,經(jīng)過比例、積分和微分計算,得到一個調(diào)節(jié)量輸出至執(zhí)行機構(gòu)。然后再對執(zhí)行效果進(jìn)行采集并反饋回來再次與目標(biāo)值比較,如此往復(fù)計算執(zhí)行,直至消除偏差。在模擬系統(tǒng)中,PID算法表達(dá)式為:其中,P(t)-表示PID控制器的調(diào)節(jié)輸出量。e(t)-表示被控量的實際值與目標(biāo)值的差值。-表示控制器比例系數(shù)。-表示控制器積分時間-表示控制器微分時間基本原理如下圖所示:圖6.1 PID控制器原理圖不同類型的控制器,原理、結(jié)構(gòu)都各不相同,但對于PID控制器而言,基本控制規(guī)律只有三個:比例(P)控制、積分(I)控制和微分(D)控制。這三種基本控制規(guī)律可以單獨使用,但更多是組合使用。如比例微分(PD)控制、比例-積分(PI)控制、比例-積分-微分(PID)控制等。6.2 PID控制思想對于四旋翼飛行器姿態(tài)的控制有兩種方式:姿態(tài)四元數(shù)控制和歐拉角控制。兩種方法的基本思想相同:設(shè)定一個

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論