胡啟迪 何婷
摘要:四軸飛行器作為對稱式動力分布多旋翼飛行平臺中結構最為簡單,成本及能效比最高,但可靠性最低的一種,其非常適合作為一種多旋翼飛行器的練習、學習及研究平臺。本設計合理利用STC15系列單片機的片上外設資部署必需的傳感器及通信模塊的同時預留擴展接口,最終形成四軸飛行控制器的硬件體系。其配合相應的軟件可實現對微型四軸飛行器的遙控及半自主飛行控制。實驗表明,該設計成本低廉,運行穩(wěn)定,可擴展能力強,適用于多旋翼飛行器愛好者入門學習及51單片機的教學。
關鍵詞:四軸;飛行控制器;STC15
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2018)17-0246-02
Abstract: Four?axis aircraft is the simplest structure, cheapest price and highest energy efficiency one in symmetrical multi rotor flight platform. Although its reliability is low But can be used for training and studying. By rational use of on-chip peripherals of STC15 and Reserves extension interface, designed one hardware of system micro Four?axis aircraft. Combine with proper software, can control it flying automatically or by controller. The practice results show that this design has the advantages of low cost,stable flight attitude and easy for updated, apply to beginning learners of multi rotor flight and teaching of MCS-51.
Key words: Four-axis; Flight controller; STC15
1 前言
飛行器可分為多旋翼及固定翼兩大類,前者相較于后者的最突出優(yōu)勢為垂直起降及定點懸停,因此很容易擺脫場地限制及實現高精度作業(yè)?;谠搩?yōu)勢,其非常適用于執(zhí)行諸如偵察、跟隨以及低勻速空中作業(yè)等任務。可以看出,其可應用的領域相較于固定翼來說要廣泛得多,因此受到相關行業(yè)各類人員的廣泛關注,且關注點大都集中于4旋翼(四軸)飛行器上。在此背景下,結合國內高校普遍采用51內核單片機進行MCU教學的現狀,基于其中性能及外設均相對領先的STC15系列單片機設計一款微型四軸(最大軸距小于15cm,起飛重量小于500g)飛行控制器,無論是對單片機教學還是培養(yǎng)新一代無人機研發(fā)工程師均有積極的促進作用。
2 整體設計
本設計分為硬件和軟件兩個部分,其中硬件部分構成如圖1 所示,軟件部分構成如圖2所示。
從圖1可以看出,微型四軸飛行控制器的硬件部分通過一個穩(wěn)壓電路供電,其余部分圍繞一個MCU,通過適當的外圍芯片和電路,拓展出3D運動姿態(tài)獲取、電機驅動、運行狀態(tài)指示、無線通信以及擴展接口等5個功能模塊。3D運動姿態(tài)獲取是保證四軸飛行器穩(wěn)定飛行的前提,電機驅動是維持和改變飛行姿態(tài)的動力來源,運行狀態(tài)指示方便實時觀察飛控的工作狀態(tài),無線通信負責實現遠程遙控,通過擴展接口可根據飛行環(huán)境及要求增加適當的傳感器。該硬件構成在保證基本飛行要求的同時,具有一定的擴展能力。
從圖2可以看出,微型四軸飛行控制器的軟件結構上面,大體可以分為主和定時器中斷兩個流程。其中主流程負責控制狀態(tài)指示電路,接收無線控制數據,讀取各傳感器數據;定時器中斷流程負責解算當前實時的姿態(tài),根據主流程傳遞過來的數據計算期望姿態(tài),利用兩個姿態(tài)的差值通過PID的方式計算出四個電機所需實時功率對應的PWM輸出占空比;兩個流程之間通過全局變量進行數據傳遞。
3 硬件設計
硬件設計過程中最為重要的是器件選型及主控引腳分配。選型上要兼顧成本、適用性及擴展性三個方面;引腳分配上首先使用硬件方式實現通用接口時序以最大限度節(jié)約主控CPU開銷,其次使用片上集成外設以降低成本及電路復雜度,最后預留出最通用的接口以提高硬件后期的擴展能力。
3.1器件選型
在MCU選擇上,本設計采用STC15系列單片機中的IAP15W4K61S4,封裝為LQFP44。IAP代表該MCU的ROM總數為61k,且可以在此范圍內任意劃分為用戶ROM和程序存儲ROM,其在ROM使用上比STC開頭的型號更為靈活;51內核單片機勝在成本、穩(wěn)定和不俗的控制能力,輸在運算能力,為了揚長避短,通過串口擴展外設是明智選擇,而LQFP32封裝是能夠使用4個串口的最小封裝。
狀態(tài)指示一般通過屏幕和聲光效果實現,前一種一般適用于靜態(tài)設備,對于動態(tài)設備來說,后一種更為有效,且節(jié)約CPU開銷。因此,本設計中采用低功耗貼片LED作為狀態(tài)指示電路的核心器件。
無線通信模塊可選擇NRF24L01,Zigbee、藍牙以及低速Wifi(ESP8266)。其中藍牙和Wifi均可方便實現手機端控制,且可通過串口隨時擴展;Zigbee是目前物聯(lián)網中廣泛使用的無線通信方式,可以使飛行器隨時作為物聯(lián)網中的節(jié)點使用,同樣可通過串口隨時擴展;NRF24L01使用SPI接口,通信可靠性、實時性很高且價格低廉,是目前點對點無線遙控廣泛使用的模塊。綜上,本設計中的通信模塊選用NRF24L01。
電機驅動方面要根據被驅動對象來定。本設計主要用于微型四軸飛行器的控制,這種飛行器飛行重量不可大于500g,因此空心杯系列有刷電機是最為合適的。這種電機為直流電機,通過一定的電流即可驅動,無須相位切換,因此本設計中采用N溝道MOS管SI2302作為電機驅動電路的核心器件。
運動傳感器即可以輸出反應物體運動姿態(tài)、速度、方向數據的一類傳感器,這些數據通常由陀螺儀、加速度計以及磁力計得到。以上三種傳感器需要同時使用才可以獲得比較理想的效果,在同時使用時,需要注意x、y、z三個坐標軸要盡量一致。綜上,本設計中選用MPU9150作為運動傳感器,該傳感器使用IIC接口,同時集合了以上三種傳感器,降低了硬件設計復雜度的同時實現了三軸的高度一致,且內置DMP,可直接輸出四元數,大幅減少姿態(tài)解算運算量,結合本設計中的MCU,是一個比較理想的選擇。
3.2 引腳分配
本設計的主控引腳分配如圖3所示。
從圖3中可以看出,其SPI接口使用第1組引腳且分配給NRF24L01模塊;串口1~4均使用第1組引腳,其中串口1用于下載調試,串口2~4用于擴展其他通信模塊及串口輸出型傳感器模塊;PWM波形輸出2~5選擇引腳方式0分配給SI2302開關控制,間接調整空心杯電機轉速;P2.4~2.7用于四組狀態(tài)指示LED控制,P5.5、P2.0用于電源指示LED控制;P3.4、P3.5通過軟件模擬的方式實現IIC接口分配各MPU9150讀取姿態(tài)數據。以上分配方式在最大化利用了IAP15W4K61S4的外部引腳資源以及內部外設資源的基礎上兼顧一定的擴展能力。
基于上述的硬件設計描述,最終完成的微型四軸飛行控制器如圖4所示。從圖中可以看出,PCB板形狀采用四方形,且其上器件盡可能地采用對稱式分布,最終使整個費控的重心靠近其中心位置,這樣在實際飛行時容易實現整個飛行器的重心居中,提高飛行穩(wěn)定性。
4 軟件設計
如前文所述,設計軟件部分分為主和定時器中斷兩個流程,具體如圖5所示。需要注意的是,為了提高控制精度,控制頻率應在100Hz以上,因此定時器的中斷周期最大設定為10ms。姿態(tài)解算上全部使用浮點型變量,51內核單片機在浮點運算上效率比較低,因此主流程讀取的MPU9150數據設置為其DMP輸出,這么做可以減少幾乎一半的運算量,最終將定時器中斷持續(xù)時間控制在5ms以內,這樣在每個控制周期下主流程也可以有5ms的運行時間,這個時長在保證其必需任務所需時長外仍可有3ms左右的余量進行擴展。
5 結語
本設計基于增強型51內核單片機IAP15W4KS4實現了對微型四軸飛行器的控制。實驗表明,該設計成本低廉,運行穩(wěn)定,具有較強的擴展性,是對稱式多旋翼愛好者學習和單片機教學的優(yōu)選素材,配合其他通信模塊及傳感器也可以成為物聯(lián)網的移動節(jié)點。因此,本設計具有一定的教學及實用價值。
參考文獻:
[1]STC15系列單片機器件手冊[M]. 中國, 南通國芯微電子有限公司, 2014.
[2]nRF24L01+ Single Chip 2.4GHz Transceiver Product Specification v1.0[M]. Trondheim, Nordic, 2008.
[3]nRF24LE1 Ultra-low Power Wireless System On-Chip Solution Product Specification v1.6[M]. Trondheim, Nordic, 2010.
[4] 姜軍,齊俊桐,韓建達.面向機動飛行的多旋翼飛行器設計和建模與控制[J].科學通報,2013,58(12):135?144.
[5] 鮑凱.玩轉四軸飛行器[M].北京:清華大學出社,2015.
[6] 田衛(wèi)軍,李郁,何扣芳,等.四軸旋翼飛行器結構設計與模態(tài)分析[J].制造業(yè)自動化,2014,36(2):37?39.