国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于STM32的四旋翼飛行器的設(shè)計(jì)與實(shí)現(xiàn)

2014-04-25 09:44:04謝義建陳躍東舒圣焱
關(guān)鍵詞:旋翼飛行器姿態(tài)

謝義建,陳躍東,舒圣焱

(安徽工程大學(xué)安徽省電氣傳動(dòng)與控制重點(diǎn)實(shí)驗(yàn)室,安徽 蕪湖 241000)

引 言

四旋翼飛行器是一種配有4個(gè)螺旋槳且螺旋槳呈十字形交叉的飛行器。與傳統(tǒng)的直升機(jī)不同,四旋翼飛行器只能通過(guò)改變螺旋槳的速度來(lái)實(shí)現(xiàn)各種動(dòng)作。由于它是一種六自由度的垂直起降機(jī),非常適合靜態(tài)和準(zhǔn)靜態(tài)條件下飛行,所以它在軍事和民用領(lǐng)域有廣闊的應(yīng)用[1]。但是四旋翼飛行器只有四個(gè)輸入力,同時(shí)卻有六個(gè)狀態(tài)輸出,所以它又是一種欠驅(qū)動(dòng)系統(tǒng),這使得飛行控制器的設(shè)計(jì)變得非常困難。因此,本文設(shè)計(jì)了一種基于STM32的四旋翼飛行器,由于STM32具有低功耗、高性能、外設(shè)資源豐富、處理速度快、開(kāi)發(fā)效率高并且還可以嵌入實(shí)時(shí)操作系統(tǒng)等優(yōu)點(diǎn),使得四旋翼飛行器的設(shè)計(jì)變得相對(duì)簡(jiǎn)單[2]。

1 飛行器的工作原理和系統(tǒng)框圖

1.1 飛行器的工作原理

四旋翼飛行器通常有兩種模式,即十字模式和X模式,其中X模式的結(jié)構(gòu)如圖1所示。在四個(gè)旋翼的頂端,均勻分布著四個(gè)電機(jī),其中同一條直線上的電機(jī)旋轉(zhuǎn)方向相同。即:電機(jī)1、3按照逆時(shí)針?lè)较蛐D(zhuǎn),電機(jī)2、4按照順時(shí)針?lè)较蛐D(zhuǎn)。在空間中,四旋翼飛行器一共具有6個(gè)自由度(分別沿著X、Y、Z三軸平移和旋轉(zhuǎn)),規(guī)定沿著Z軸正向運(yùn)動(dòng)為垂直運(yùn)動(dòng),則其他的五個(gè)自由度分別為俯仰運(yùn)動(dòng)、偏航運(yùn)動(dòng)、滾轉(zhuǎn)運(yùn)動(dòng)、前后運(yùn)動(dòng)、側(cè)向運(yùn)動(dòng),通過(guò)控制4個(gè)電機(jī)的旋轉(zhuǎn)速度即可控制這六個(gè)自由度[3]。例如:(1)垂直運(yùn)動(dòng):在圖1中,因?yàn)殡姍C(jī)1和電機(jī)3按照逆時(shí)針?lè)较蛐D(zhuǎn),電機(jī)2和電機(jī)4按照順時(shí)針?lè)较蛐D(zhuǎn),所以它們對(duì)飛行器自身的反扭矩相互抵消。當(dāng)同時(shí)增加四個(gè)電機(jī)的旋轉(zhuǎn)速度時(shí),飛行器總的拉力增大,若此時(shí)總拉力大于飛行器總重量時(shí),飛行器便離開(kāi)地面并垂直上升,反之,當(dāng)同時(shí)減小四個(gè)電機(jī)的旋轉(zhuǎn)速度時(shí),飛行器垂直下降直至平衡落地,因此便實(shí)現(xiàn)了沿Z軸的垂直運(yùn)動(dòng)。(2)滾轉(zhuǎn)運(yùn)動(dòng):改變電機(jī)2、4的旋轉(zhuǎn)速度,并且保持電機(jī)1、3的旋轉(zhuǎn)速度不變,飛行器即可繞X軸旋轉(zhuǎn),實(shí)現(xiàn)了滾轉(zhuǎn)運(yùn)動(dòng)。在無(wú)外界干擾的情況下,當(dāng)旋翼產(chǎn)生的總拉力等于飛行器的自身總重量時(shí),飛行器保持懸停狀態(tài)[4]。

1.2 飛行器控制系統(tǒng)的結(jié)構(gòu)框圖

圖1 X模式飛行器結(jié)構(gòu)示意圖

四旋翼飛行器控制系統(tǒng)采用模塊化設(shè)計(jì),如圖2所示,分別由數(shù)據(jù)采集模塊,電源管理模塊,控制器模塊,串口通信模塊,遙控控制模塊,電機(jī)驅(qū)動(dòng)模塊,電機(jī)模塊等部分組成。其中,數(shù)據(jù)采集模塊由三只傳感器組成,負(fù)責(zé)采集飛行器的姿態(tài)信號(hào),并通過(guò)I2C總線將數(shù)據(jù)傳送到控制器模塊,其中,控制器模塊采用了意法半導(dǎo)體公司的STM32F103VET6作為系統(tǒng)的主控芯片,STM32系列是基于ARM Cortex-M3內(nèi)核的處理器,低功耗,處理速度快,最高工作頻率達(dá)到72 MHz。同時(shí),遙控控制模塊將通過(guò)RC接口,發(fā)送遙控信號(hào)給控制器,控制器接收到姿態(tài)信號(hào)和遙控信號(hào)后,快速進(jìn)行姿態(tài)的解算和處理,產(chǎn)生PWM方波信號(hào)給電機(jī)驅(qū)動(dòng)模塊,從而驅(qū)動(dòng)電機(jī)旋轉(zhuǎn),改變電機(jī)的轉(zhuǎn)速,控制飛行器的姿態(tài);整個(gè)系統(tǒng)由電源管理模塊提供電力[5]。

圖2 控制系統(tǒng)的結(jié)構(gòu)框圖

2 飛行控制器的硬件設(shè)計(jì)

2.1 數(shù)據(jù)采集模塊

為了提高系統(tǒng)的穩(wěn)定性和測(cè)量精度,本模塊選用MPU-6050,采用多傳感器設(shè)計(jì)。MPU-6050是全球首例9軸運(yùn)動(dòng)處理傳感器,集成了3軸MEMS陀螺儀,3軸加速度計(jì),以及一個(gè)可擴(kuò)展的數(shù)字運(yùn)動(dòng)處理器 DMP(Digital Motion Processor),可用 I2C接口連接一個(gè)第三方的數(shù)字傳感器。本方案將這個(gè)I2C接口與三軸數(shù)字羅盤(pán)HMC5883L相連接,擴(kuò)展之后就可以通過(guò)其 I2C接口輸出一個(gè)9軸的信號(hào),其中陀螺儀輸出飛行器的姿態(tài)角速率(偏航角速率、俯仰角速率、橫滾角速率),加速度計(jì)分別輸出X、Y、Z軸加速度,數(shù)字羅盤(pán)配合加速度計(jì)為飛行器導(dǎo)航提供可靠的方向信息。同時(shí),采用了MEAS(瑞士)公司推出的一款高分辨率氣壓傳感器MS5611,分辨率可達(dá)10 cm,它通過(guò)I2C總線與控制器STM32進(jìn)行通信,實(shí)現(xiàn)飛行器的氣壓定高。具體硬件電路如圖3所示[6]。

圖3 數(shù)據(jù)采集模塊硬件電路

2.2 電源管理模塊

電源管理模塊主要負(fù)責(zé)給各個(gè)模塊提供電能,本系統(tǒng)使用了3S、2200 mAh、25C的11.1 V鋰電池作為總電源,它通過(guò)電調(diào)將11.1 V轉(zhuǎn)換成5 V電壓,并送給四個(gè)電機(jī)和飛行控制器,飛行控制器再通過(guò)電源芯片AMS1117-3.3 V,將 5 V 轉(zhuǎn)換為 3.3 V,送給處理器STM32F103VET6和串口通信模塊。具體硬件電路如圖4 所示[7]。

圖4 電源管理模塊硬件電路

2.3 串口通信模塊

飛行器在靜止?fàn)顟B(tài)下,需要與PC上位機(jī)進(jìn)行通信來(lái)配置飛行器的參數(shù),串口通信模塊可實(shí)現(xiàn)這一功能。它采用美信公司的電平轉(zhuǎn)換芯片MAX3232,MAX3232采用專(zhuān)有低壓差發(fā)送器輸出級(jí),利用雙電荷泵在3.0 V至5.5 V電源供電時(shí)能夠?qū)崿F(xiàn)真正的RS-232性能,器件僅需四個(gè) 0.1 μF的外部小尺寸電荷泵電容。MAX3232確保在120 kbps數(shù)據(jù)速率的同時(shí)保持RS-232輸出電平,具體硬件電路如圖5所示。

圖5 串口通信模塊硬件電路

2.4 電機(jī)及電機(jī)驅(qū)動(dòng)模塊

針對(duì)飛行器設(shè)計(jì),選用了無(wú)刷電機(jī),由于飛行器的姿態(tài)控制需要快速響應(yīng),所以針對(duì)無(wú)刷電機(jī),使用了無(wú)刷電調(diào)。利用STM32的PWM通道輸出1~2 ms的方波脈沖,重復(fù)頻率為20~50 Hz,輸出到電調(diào)的油門(mén)線(控制線)。由于是單向電調(diào),1 ms表示0%的油門(mén),2 ms表示100%的油門(mén),從而實(shí)現(xiàn)電機(jī)轉(zhuǎn)速的控制。

2.5 遙控控制模塊

本模塊選用了天地飛七通道遙控器,同時(shí)將接收機(jī)上的油門(mén)、副翼、升降舵、方向舵通道分別與飛行控制器上的RC接口連接,通過(guò)接收機(jī),操縱遙控器上的搖桿便可實(shí)現(xiàn)飛行器的姿態(tài)控制[8]。

2.6 飛行控制器硬件實(shí)物

根據(jù)以上的硬件描述,所設(shè)計(jì)的飛行控制器實(shí)物如圖6所示。

3 飛行控制器的軟件設(shè)計(jì)流程

飛行控制器的軟件程序事是在MDK4.12開(kāi)發(fā)環(huán)境下采用C語(yǔ)言編寫(xiě),其流程如圖7所示[9]。程序的開(kāi)始先對(duì)整個(gè)系統(tǒng)的硬件進(jìn)行初始化以及完成各傳感器的校準(zhǔn),并判斷系統(tǒng)是否正常。若系統(tǒng)正常,則從各傳感器獲取姿態(tài)數(shù)據(jù),并讀取遙控器信號(hào),控制器再解算姿態(tài)信號(hào)、解碼遙控信號(hào)、控制電機(jī)轉(zhuǎn)速等步驟,直到遙控發(fā)送停機(jī)信號(hào)結(jié)束飛行。

4 實(shí)驗(yàn)結(jié)果

圖6 飛行控制器實(shí)物

圖7 飛行控制器的軟件流程圖

本文所設(shè)計(jì)的飛行器能完成幾種基本的姿態(tài)控制,并能負(fù)載攝像頭進(jìn)行航拍,如圖8所示,在風(fēng)速4~5級(jí)、相對(duì)濕度70%的環(huán)境下進(jìn)行航拍,所得航拍圖片表明,飛行器在空中能進(jìn)行穩(wěn)定的航拍,抖動(dòng)小,抗干擾能力強(qiáng)。

圖8 航拍圖片

5 結(jié)束語(yǔ)

本文設(shè)計(jì)了一種基于STM32的四旋翼飛行器,它的高性能、低功耗、處理速度快等特點(diǎn)克服了以往使用單片機(jī)作為控制器的缺點(diǎn),實(shí)驗(yàn)證明,本系統(tǒng)的軟硬件設(shè)計(jì)合理,基本能完成飛行器各種姿態(tài)的控制;同時(shí),它也為后續(xù)的研究提供了一個(gè)平臺(tái),可以在這基礎(chǔ)上對(duì)系統(tǒng)建模、姿態(tài)解算、濾波算法等方面作進(jìn)一步的研究。

[1]梁延德,程 敏,何福本,等.基于互補(bǔ)濾波器的四旋翼飛行器姿態(tài)解算[J].傳感器與微系統(tǒng),2011,30(11):56-59.

[2]劉乾,孫志鋒.基于ARM的四旋翼無(wú)人飛行器控制系統(tǒng)[J].機(jī)電工程,2011,28(10):1237-1240.

[3]侯永鋒,陸連山,高尚德,等.基于PD算法的四旋翼飛行器控制系統(tǒng)研究[J].機(jī)械科學(xué)與技術(shù),2012,31(3):359-362.

[4]楊明志,王敏.四旋翼微型飛行器控制系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2008,16(4):485-490.

[5]郭曉鴻,楊忠,楊成順,等.一種基于STM32的四旋翼飛行器控制器[J].應(yīng)用科技,2011,38(7):35-40.

[6]呂 強(qiáng),郭善亮,王冬來(lái).基于DSP四旋翼飛行器姿態(tài)控制系統(tǒng)硬件設(shè)計(jì)[J].計(jì)算機(jī)與數(shù)學(xué)工程,2011,39(7):144-146.

[7]劉峰,呂強(qiáng),王國(guó)勝,等.四旋翼飛行器姿態(tài)控制系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2011,19(3):583-585.

[8]龐慶霈,李家文,黃文浩.四旋翼飛行器設(shè)計(jì)與平穩(wěn)控制仿真研究[J].電光與控制,2012,19(3):51-55.

[9]李 寧.基于MDK的STM32處理器開(kāi)發(fā)應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2008.

猜你喜歡
旋翼飛行器姿態(tài)
高超聲速飛行器
改進(jìn)型自抗擾四旋翼無(wú)人機(jī)控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
大載重長(zhǎng)航時(shí)油動(dòng)多旋翼無(wú)人機(jī)
攀爬的姿態(tài)
基于STM32的四旋翼飛行器的設(shè)計(jì)
電子制作(2019年9期)2019-05-30 09:41:48
全新一代宋的新姿態(tài)
跑與走的姿態(tài)
復(fù)雜飛行器的容錯(cuò)控制
電子制作(2018年2期)2018-04-18 07:13:25
四旋翼無(wú)人機(jī)動(dòng)態(tài)面控制
神秘的飛行器
瑞金市| 华池县| 临沭县| 双流县| 合川市| 红安县| 扶余县| 台中市| 惠来县| 尉犁县| 柞水县| 巴塘县| 恭城| 睢宁县| 清镇市| 陵水| 定兴县| 公主岭市| 益阳市| 双峰县| 昭觉县| 琼海市| 上蔡县| 安溪县| 涞水县| 建水县| 旺苍县| 武夷山市| 湖口县| 巴彦淖尔市| 五大连池市| 昌图县| 镇原县| 广丰县| 镇巴县| 蚌埠市| 嘉峪关市| 六安市| 新野县| 开江县| 彭阳县|