《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于雙STM32多旋翼無人機控制系統(tǒng)設(shè)計
基于雙STM32多旋翼無人機控制系統(tǒng)設(shè)計
來源:電子技術(shù)應(yīng)用2013年第11期
袁安富, 徐金琦, 王 偉, 馬 浩
南京信息工程大學 信息與控制學院,江蘇 南京 210044
摘要: 提出一種基于雙STM32芯片的控制系統(tǒng)設(shè)計方法和具體實現(xiàn)方案??刂葡到y(tǒng)以2個STM32F107VCT6芯片作為主從控制器,通過高速SPI接口進行數(shù)據(jù)通信,以保證控制階段的實時性。介紹了系統(tǒng)的硬件布局,并且給出嵌入式系統(tǒng)的軟件設(shè)計流程。實驗結(jié)果證明,整個系統(tǒng)性能優(yōu)良,為后續(xù)復(fù)雜的控制運算提供可靠的運作平臺。
中圖分類號: V249
文獻標識碼: A
文章編號: 0258-7998(2013)11-0136-03
Control system design for multi-rotor unmanned aerial vehicle based on dual STM32
Yuan Anfu, Xu Jinqi, Wang Wei, Ma Hao
School of Information and Control,Nanjing University of Information Science & Technology, Nanjing 210044,China
Abstract: A design method that based on double STM32 chips is proposed. The control system uses two STM32F107VCT6 chips to ensure the real-time performance, the communication between the two chips is completed by the high-speed SPI interface. Additionally, the introduction of the system hardware layout and the software design flowchart detail is discussed. The experimental results demonstrate that the high-performance of the system, and provide a reliable operation platform for subsequent complex control arithmetic.
Key words : multi-rotor unmanned aerial vehicle; autonomous flight; dual chip; system design

    隨著科學技術(shù)的進步和時代發(fā)展的需求,無人機無論在軍事還是民用領(lǐng)域都具有廣泛的應(yīng)用前景。近年來,對無人機領(lǐng)域的研究已得到國內(nèi)外各大研究機構(gòu)的重視,特別是微小型多旋翼無人機的研究得到迅猛的發(fā)展。微小型多旋翼無人機可廣泛應(yīng)用于軍事偵察、高空拍攝、交通監(jiān)控及自然災(zāi)害勘察等領(lǐng)域。因此,實現(xiàn)微小型多旋翼無人機的自主飛行具有重要的現(xiàn)實意義[1]。然而,實現(xiàn)無人機的自主飛行不可避免地要涉及到飛行器姿態(tài)、速度、位置這幾個大方面的控制運算,因此對于控制器的運算能力有很高的要求。

    現(xiàn)有的飛行控制系統(tǒng)一般采用ARM7、DSP等高速處理器作為控制芯片。對于這類單芯片飛控系統(tǒng),一個控制周期內(nèi)要完成數(shù)據(jù)采集、數(shù)據(jù)處理、控制運算及指令輸出,同時還需將數(shù)據(jù)輸出到監(jiān)控系統(tǒng),過重的負荷影響了系統(tǒng)的可靠性[2]。針對這一問題,本文設(shè)計了一種雙芯片飛行控制系統(tǒng),采用2個STM32F107VCT6處理器同時分工協(xié)作的機制,完成對飛行控制的任務(wù)要求。該系統(tǒng)設(shè)計結(jié)構(gòu)可靠,運算處理能力強,穩(wěn)定性高。
1 系統(tǒng)硬件設(shè)計
1.1 系統(tǒng)功能劃分及硬件布局

    多旋翼無人機自主飛行控制系統(tǒng)較為復(fù)雜,一般需要設(shè)計3類控制器:位置控制器、速度控制器及姿態(tài)控制器。同時還有姿態(tài)角推算,導(dǎo)航數(shù)據(jù)融合等算法[3]。
    為了滿足以上控制和算法要求,機載部分的硬件布局就顯得尤為重要。若要得到很好的實時控制效果,控制頻率是一個重要的考慮因素。因此,為了完成高頻的控制運算,本文設(shè)計了一種雙芯片控制系統(tǒng),2個處理器同時處理數(shù)據(jù),協(xié)調(diào)工作, 達到自主飛行的目的[4]。協(xié)同任務(wù)的分配如表1所示。 其雙芯片系統(tǒng)結(jié)構(gòu)如圖1所示。主控制器部分有IMU模塊、GPS模塊、遙控器無線接收機及XBEE無線傳輸模塊;從控制器有陀螺儀傳感器、三軸加速度傳感器、地磁傳感器、氣壓傳感器、PWM輸出模塊及SD卡數(shù)據(jù)存儲器[5]。

1.2 系統(tǒng)硬件選型
    (1)主從控制器:采用ST公司STM32F107VCT6型號的32位微處理器,時鐘頻率達到72 MHz,其豐富硬件接口資源及功能強大的DMA控制方式,充分保證無人機控制系統(tǒng)的穩(wěn)定性與實時性。主從CPU之間采用高達18 MHz的SPI接口進行雙機通信[6]。針對實際應(yīng)用, 對通信接口增加硬件握手,主機每次在傳輸數(shù)據(jù)前詢問從機狀態(tài),如準備好,則開始發(fā)送數(shù)據(jù)。這樣可以避免主機發(fā)送數(shù)據(jù)時,而從機正處于中斷接收配置代碼區(qū),無法接收數(shù)據(jù),造成數(shù)據(jù)丟失,無法正確接收數(shù)據(jù)[7]。
    (2)模擬量傳感器:加速度傳感器(ADXL335)、陀螺儀傳感器(ADXRS610)。采用模擬量傳感器的優(yōu)勢在于可以高頻率且精確地進行數(shù)據(jù)采集,滿足400 Hz姿態(tài)控制頻率的要求。
    (3)數(shù)字量傳感器:地磁計(MAG3110)、氣壓計(BMP0805)、GPS模塊。數(shù)字量傳感器使用相對簡單,且在控制位置和速度時的頻率相對較低,數(shù)字量傳感器可以滿足要求。
    (4)無線傳輸模塊:遙控器、遙控器接收機、XBEE無線傳輸模塊。
    (5)擴展模塊: IMU模塊??梢酝ㄟ^搭載高性能的IMU
模塊來驗證控制板上各種傳感器的性能及估算的姿態(tài)角的準確性[8]。
2 嵌入式系統(tǒng)軟件設(shè)計
    系統(tǒng)軟件的設(shè)計是基于IAR軟件平臺下開發(fā),采用匯編語言和C語言混合編程實現(xiàn)。主要分為主控制器和從控制器兩部分的軟件設(shè)計?!?br/>2.1 主控制器軟件設(shè)計
    主控制器軟件流程圖如圖2所示。遙控器的數(shù)據(jù)接收、上位機的數(shù)據(jù)接收、GPS數(shù)據(jù)讀取、高度計和地磁計的數(shù)據(jù)讀取、主循環(huán)控制頻率等利用中斷程序完成。為了減輕CPU負載,對地面站的數(shù)據(jù)輸出采用DMA功能,無需CPU干預(yù)。

2.2 從控制器軟件設(shè)計
    從控制器需要完成400 Hz的控制運算,同樣需要分別配置STM32的USART接口、SPI接口及定時器中斷。采集頻率設(shè)定為2 000 Hz,并對采集到的數(shù)據(jù)進行巴特沃斯數(shù)字低通濾波。巴特沃斯數(shù)字濾波器相比其他數(shù)字濾波器而言,通帶內(nèi)具有最大平坦幅度、阻帶頻率響應(yīng)逐漸下降為零的特點。濾波器的性能指標如下:通帶截止頻率20 Hz,阻帶截止頻率100 Hz,阻帶最小衰減20 dB,通帶最大衰減3 dB[9]。對于SD卡的數(shù)據(jù)寫入同樣采用SPI的DMA功能,實現(xiàn)數(shù)據(jù)的快速寫入,節(jié)約CPU時間。
    從控制軟件流程圖如圖3所示,接收與發(fā)送主機數(shù)據(jù)、主循環(huán)頻率都利用中斷程序完成[5]。同時為了節(jié)約CPU對外圍設(shè)備的讀寫的時間,采用ADC的DMA功能實現(xiàn)對模擬量傳感器的數(shù)據(jù)讀取,并將數(shù)據(jù)采集和存儲交由DMA控制器。
3 實驗結(jié)果
    為驗證系統(tǒng)方案的可行性,將含有速度控制和姿態(tài)控制的飛行控制系統(tǒng)搭載四旋翼飛行器進行室外飛行實驗[10],如圖4所示。

    圖5和圖6的實驗結(jié)果表明,控制器能夠很好地跟蹤速度目標值,實現(xiàn)飛行器按預(yù)定速度飛行。由此可知,整個系統(tǒng)具有良好的目標追蹤性及穩(wěn)定性。

 

 

    本文提出了一種新型的采用雙芯片結(jié)構(gòu)的多旋翼無人飛行器控制系統(tǒng)的設(shè)計方案。從硬件設(shè)計和軟件設(shè)計兩方面詳細介紹了設(shè)計與實現(xiàn)的過程,并在主機、從機上設(shè)計不同的控制器。實驗結(jié)果表明,該系統(tǒng)穩(wěn)定性高,可以完成各種方式的數(shù)據(jù)傳輸,處理速度快,能夠有效地完成自主飛行所需各種運算要求,為實現(xiàn)該類無人機的自主飛行奠定了良好的基礎(chǔ)。
參考文獻
[1] 李科杰, 宋萍. 微小型無人系統(tǒng)技術(shù)在未來戰(zhàn)爭中的重要意義及發(fā)展動向[J]. 傳感器世界, 2004(1):6-11.
[2] 李偵, 田夢君, 趙菲菲. 基于 DSP 的無人飛行器飛行控制系統(tǒng)設(shè)計[J]. 微處理機, 2010,31(4):125-128.
[3] NONAMI K, KENDOULG F,SUZUKI S,et al. Autonomous  flying robots-unmanned aerial vehicles and micro aerial vehicles[M]. Springer,2010.
[4] 范衛(wèi)剛, 袁冬莉, 王化會. 基于雙 DSP 的無人機導(dǎo)航系統(tǒng)設(shè)計[J].計算機測量與控制, 2011,19(1):152-154.
[5] 劉曉杰, 趙曉暉, 顧海軍,等.微小型四旋翼無人機實時嵌入式控制系統(tǒng)設(shè)計與實現(xiàn)[J]. 電子技術(shù)應(yīng)用, 2009,35(5):35-38.
[6] 王志,王文廉,張志杰. SPI及USB雙通信接口的設(shè)計與實現(xiàn)[J].自動化儀表,2010(1):72-75.
[7] 高振,羅秋鳳. SPI 接口與 CRC算法在雙 DSP數(shù)據(jù)通信中的應(yīng)用[J]. 電子產(chǎn)品世界, 2011(1):46-48.
[8] 陳杰, 陳超, 周建軍,等. 基于 RTOS 的小型無人機飛行控制系統(tǒng)[J]. 電子技術(shù)應(yīng)用, 2009,35(4):27-29.
[9] 王志,王文廉,張志杰. SPI 及 USB 雙通信接口的設(shè)計實現(xiàn)[J]. 自動化儀表,2010,36(1):72-75.
[10] WANG W,SUZUKI S,NONAMI K,et al. Fully autonomous quad-rotor MAV and flying performance with complete embedded system[C].Proceedings of the 9th International Conference on Motion and Vibration Control, Japan, 2008.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。