新聞中心

EEPW首頁(yè) > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > 基于STM32的四旋翼飛行器控制系統(tǒng)

基于STM32的四旋翼飛行器控制系統(tǒng)

作者: 時(shí)間:2018-08-14 來源:網(wǎng)絡(luò) 收藏

四旋翼飛行器是一種具有6個(gè)自由度和4個(gè)輸入的可垂直起降、懸停、前飛、側(cè)飛和倒飛的無人駕駛飛行器,4只旋翼可相互抵消反扭力矩,不需要專門的反扭矩槳。被廣泛應(yīng)用于無人偵察、森林防火、災(zāi)情監(jiān)測(cè)、城市巡邏等領(lǐng)域。飛行系統(tǒng)是四旋翼飛行器的核心部分,其性能的好壞決定了整個(gè)系統(tǒng)的性能。近年來,微小型四旋翼無人機(jī)的自主飛行得到了研究人員的廣泛關(guān)注。隨著計(jì)算機(jī)技術(shù)和電子技術(shù)的發(fā)展,國(guó)內(nèi)的小型飛行器研究開發(fā)工作逐漸升溫,許多公司形成了產(chǎn)業(yè)。例如大疆公司將四軸飛行器等多軸飛行器實(shí)現(xiàn)了商業(yè)化應(yīng)用。國(guó)內(nèi)研究的重點(diǎn)主要為三個(gè)方面:姿態(tài)控制、傳感器技術(shù)發(fā)展以及新材料的應(yīng)用、電池領(lǐng)域技術(shù)的研究。典型代表有哈工大、北京航空航天大學(xué)、南京航空航天大學(xué)、國(guó)防科技大學(xué)等。在控制算法上,先進(jìn)PID控制得到廣泛應(yīng)用。

本文引用地址:http://www.butianyuan.cn/article/201808/386776.htm

本文以ARM Cortex-M3架構(gòu)的STM32C8T6作為飛行器控制處理器,以MPU-6050作為飛行器的姿態(tài)傳感器,以低功耗2.4GHz的nRF24L01作為無線傳輸器件,以HC-RS04超聲波作為障礙物報(bào)警傳感器設(shè)計(jì)系統(tǒng)硬件電路。經(jīng)過實(shí)驗(yàn)調(diào)試,硬件系統(tǒng)能夠穩(wěn)定、可靠運(yùn)行。

1 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)

1.1 物理結(jié)構(gòu)設(shè)計(jì)

四旋翼飛行器由一個(gè)十字支架和四個(gè)螺旋槳組成,支架中間安放飛行控制處理器及外部設(shè)備,四個(gè)螺旋槳半徑和角度相同,呈左、右、前、后四個(gè)方向兩兩對(duì)稱排列。四個(gè)電機(jī)對(duì)稱安裝在支架端,其中,電機(jī)1和電機(jī)3逆時(shí)針旋轉(zhuǎn),電機(jī)2和電機(jī)4順時(shí)針旋轉(zhuǎn),通過改變四個(gè)電機(jī)的轉(zhuǎn)速來控制電機(jī)的運(yùn)行狀態(tài)。其結(jié)構(gòu)形式如圖1所示。

1.2 工作原理

四旋翼飛行器在工作時(shí),是通過電機(jī)調(diào)速系統(tǒng)對(duì)四個(gè)電機(jī)的轉(zhuǎn)速進(jìn)行調(diào)節(jié),以實(shí)現(xiàn)升力的不同變化,從而控制飛行器的運(yùn)行狀態(tài)。飛行器的電機(jī)1和電機(jī)3呈逆時(shí)針旋轉(zhuǎn),電機(jī)2和電機(jī)4呈順時(shí)針旋轉(zhuǎn),此時(shí)飛行器的陀螺效應(yīng)和空氣扭矩效應(yīng)均被抵消,從而保證飛行器能夠平衡穩(wěn)定的飛行。通過適當(dāng)?shù)馗淖冸姍C(jī)的轉(zhuǎn)速,來控制飛行器的飛行狀態(tài)。

1.3 飛行器控制系統(tǒng)總體系統(tǒng)設(shè)計(jì)

飛行控制系統(tǒng)分為地面和機(jī)載兩部分,其在物理上是彼此單獨(dú)的,在邏輯上是彼此相連的。地面部分又分為地面站部分和遙控器部分,這兩部分相互獨(dú)立。整個(gè)飛行控制系統(tǒng)由微控制器模塊、無線模塊、電機(jī)驅(qū)動(dòng)模塊、姿態(tài)測(cè)量模塊、高度測(cè)量模塊、報(bào)警電路模塊、地面站和遙控器等部分組成。系統(tǒng)總體框圖如圖2所示。

2 系統(tǒng)主要功能模塊硬件電路設(shè)計(jì)

2.1 微控制器模塊

本控制系統(tǒng)是一個(gè)多輸入多輸出系統(tǒng),控制模塊的主要輸入信號(hào)有各個(gè)傳感器的測(cè)量數(shù)據(jù),輸出信號(hào)為四路變脈寬電機(jī)控制信號(hào),需要多個(gè)定時(shí)/計(jì)數(shù)器控制信號(hào)脈寬。系統(tǒng)需要處理很多傳感器傳來的數(shù)據(jù),并且需要將數(shù)據(jù)送回地面系統(tǒng),需要實(shí)時(shí)控制,響應(yīng)速度必須要快。此外,本系統(tǒng)傳感器的接口多樣化,需要更多樣的接口才能便于軟件讀取?;谶@些需求,本設(shè)計(jì)中飛行器微處理器模塊選用ARM Cortex-M3內(nèi)核的STM32F103C8T6,它的時(shí)鐘頻率可以達(dá)到72MHz,并且擁有IIC總線接口、JTAG接口、SPI接口、AD采集接口、多路PWM輸出和多個(gè)串口,便于多樣化傳感器的掛接和程序的下載與調(diào)試。此微控制器具有8個(gè)定時(shí)器,對(duì)于信號(hào)采集和PWM輸出均能滿足。

2.2 姿態(tài)測(cè)量模塊

四旋翼飛行器受電機(jī)振動(dòng)和外界干擾影響較大,精確數(shù)學(xué)模型建立較難,且其載重有限,一般以慣性器件作為姿態(tài)測(cè)量裝置,姿態(tài)測(cè)量部件是整個(gè)硬件系統(tǒng)的重要部分。本設(shè)計(jì)綜合考慮硬件設(shè)計(jì)原則,采用MPU-6050作為飛行器的姿態(tài)傳感器。MPU-6050通過IIC協(xié)議接口進(jìn)行通訊,只需要將MPU-6050的SDA數(shù)據(jù)線和SCL時(shí)鐘線與STM32通用I/O口相連接,其電路如圖3所示。為了穩(wěn)定輸出,避免空閑總線開漏,利用R2與R3作為SDA和SCL的上拉電阻,提高總線的負(fù)載能力。電路中C9為數(shù)字供電電壓濾波電容,C8為校準(zhǔn)濾波電容,C10為電荷泵電容,C11為供電電壓濾波電容。

2.3 無線通訊模塊

系統(tǒng)在這三個(gè)方面需要無線通訊:首先需要將遙控器的信號(hào)通過無線模塊發(fā)送出去。其次,地面站需要接收飛控端的姿態(tài)數(shù)據(jù),并需要發(fā)送控制參數(shù)。最后,在飛控端需要接收遙控器和地面站的數(shù)據(jù)。結(jié)合通訊距離,成本等因素,本設(shè)計(jì)選用nRF24L01無線模塊器件。其發(fā)射電路可以通過LC振蕩電路構(gòu)成。為了便于維修,利用接口將無線模塊獨(dú)立出來。

2.3.1 遙控器模塊

本設(shè)計(jì)采用搖桿控制方式,利用數(shù)-模轉(zhuǎn)換器將搖桿的模擬量轉(zhuǎn)化為數(shù)字量,再將轉(zhuǎn)化后的數(shù)字信號(hào)傳遞給小型控制器,經(jīng)過一定的數(shù)據(jù)處理,通過無線發(fā)射出去,供飛行器控制器接收利用。采用nRF24L01作為遙控器的無線發(fā)射器件,為了便于數(shù)-模轉(zhuǎn)換,遙控器搖桿采用搖桿電位器,通過采集電位器的電壓值去衡量遙控的行程量;由于遙控器處理信號(hào)單一,不需要高速的處理器,采用8位的51單片機(jī)STC89C52RC作為遙控器的控制器,用來采集搖桿的模擬信號(hào)和發(fā)送采集到的數(shù)據(jù)。采用PCF8591作為數(shù)據(jù)獲取器件,其含有4路模擬量輸入,1路模擬量輸出,屬于標(biāo)準(zhǔn)的IIC通訊,能夠滿足本設(shè)計(jì)要求。遙控器硬件電路如圖4所示。

2.3.2 地面站模塊

飛行器地面站主要完成以下兩個(gè)方面的功能:(1)在飛行器穩(wěn)定飛行時(shí)檢測(cè)飛行器的飛行狀態(tài),傳遞控制參數(shù)給飛行器,使其按照控制算法運(yùn)行;(2)在飛行器調(diào)試階段,完成飛行器PID參數(shù)的修改和調(diào)整。由于PC機(jī)一般留給用戶操作的多為USB接口,然而nRF24L01通訊接口為SPI接口,本設(shè)計(jì)選用51單片機(jī)讀取nRF24L01的數(shù)據(jù),繼續(xù)由單片機(jī)將數(shù)據(jù)通過USB轉(zhuǎn)串口芯片與PC機(jī)通訊,完成地面站數(shù)據(jù)的傳輸功能。

  • STM32單片機(jī)中文官網(wǎng)
  • STM32單片機(jī)官方開發(fā)工具
  • STM32單片機(jī)參考設(shè)計(jì)

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 通信 控制

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉