• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

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

      2016-09-14 09:17:48王麗丹李夢(mèng)柯洪成昌江東風(fēng)
      電子設(shè)計(jì)工程 2016年2期
      關(guān)鍵詞:陀螺儀旋翼飛行器

      顏 平,王麗丹,李夢(mèng)柯,洪成昌,江東風(fēng)

      (西南大學(xué) 重慶 400715)

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

      顏 平,王麗丹,李夢(mèng)柯,洪成昌,江東風(fēng)

      (西南大學(xué) 重慶400715)

      本四旋翼飛行器以STM32F103RCT6為核心控制器,通過(guò)硬件連接快速接收MPU6050模塊實(shí)時(shí)檢測(cè)的飛行器姿態(tài)數(shù)據(jù),經(jīng)過(guò)UpdataIMU算法得到對(duì)應(yīng)的姿態(tài)角四元數(shù),互補(bǔ)濾波后進(jìn)行PID算法計(jì)算得出PWM波控制電機(jī),得到穩(wěn)定的飛行姿態(tài)。文中主要介紹了四旋翼飛行器的硬件設(shè)計(jì)、軟件設(shè)計(jì)以及調(diào)試方法,反復(fù)的試驗(yàn)證明本方法能設(shè)計(jì)出穩(wěn)定飛行的四旋翼飛行器。隨著研究的深入,四旋翼飛行器應(yīng)用前景廣闊。

      四旋翼飛行器;UpdataIMU算法;互補(bǔ)濾波;PID算法

      近年來(lái),四旋翼飛行器憑借優(yōu)良的飛行性能和巨大的應(yīng)用潛力日益得到關(guān)注。四旋翼飛行器融合了直升機(jī)與固定翼飛行器的優(yōu)點(diǎn),同時(shí)能在各種復(fù)雜地形飛行,現(xiàn)已發(fā)展為集軍用、商用、民用多位一體的實(shí)用工具,因此具有很高的科研價(jià)值。因此本項(xiàng)目結(jié)合現(xiàn)有的四旋翼飛行器的理論與技術(shù)基礎(chǔ),選用常用的STM32控制芯片結(jié)合流行的姿態(tài)控制芯片,利用合適的算法自主設(shè)計(jì)四旋翼飛行器。通過(guò)對(duì)四旋翼飛行器主要介紹和對(duì)四旋翼工作模式與控制參數(shù)的研究,進(jìn)行實(shí)際的控制算法和實(shí)物結(jié)合,從硬件搭建和軟件調(diào)試介紹了四旋翼飛行器飛行姿態(tài)控制的研發(fā)。

      1 四旋翼的硬件設(shè)計(jì)

      四旋翼飛行器的設(shè)計(jì)主要包括兩個(gè)部分:機(jī)架結(jié)構(gòu)和飛行控制系統(tǒng)。機(jī)架構(gòu)造是四旋翼的基礎(chǔ),為了保證飛行器在飛行過(guò)程中能經(jīng)歷更高的強(qiáng)度完成更多的功能,本項(xiàng)目選擇碳纖維材料做機(jī)架,碳纖維質(zhì)輕,強(qiáng)度高不易破損;在拓展功能中輕巧的機(jī)身使得旋翼可以搭載更多其他設(shè)備完成攝像,探測(cè)等任務(wù)。飛行控制系統(tǒng)由主控制器、姿態(tài)傳感器、無(wú)線通信和電機(jī)驅(qū)動(dòng)等部分組成。姿態(tài)傳感器用來(lái)測(cè)量四旋翼飛行器的飛行狀態(tài)信息 ,主控制器通過(guò)高速數(shù)模、模數(shù)轉(zhuǎn)換I/O口接收姿態(tài)傳感器反饋回來(lái)的狀態(tài)信息,并結(jié)合預(yù)定值經(jīng)過(guò)算法得出最直接的四路輸出量PWM值控制電機(jī)轉(zhuǎn)速,調(diào)整飛行器的姿態(tài),并不斷進(jìn)行反饋調(diào)節(jié),得到適當(dāng)力矩達(dá)到穩(wěn)定。整個(gè)四旋翼飛行器控制系統(tǒng)主要分為硬件連接和軟件控制兩個(gè)部分。

      1.1主控模塊

      本項(xiàng)目采用STM32開(kāi)發(fā)板對(duì)系統(tǒng)進(jìn)行控制,主控芯片STM32F103RCT6具有32位高精度高速度的浮點(diǎn)處理單元,72 MHz高速處理能力,112個(gè)高速I(mǎi)/O口,多達(dá)21個(gè)3×12-bit,1 μsA/D、D/A轉(zhuǎn)換通道,以及多路PWM輸出通道;它負(fù)責(zé)接收傳感器檢測(cè)到的姿態(tài)角速率等數(shù)據(jù)、三軸的線加速度,氣壓傳感器測(cè)得的高度和航向信息并結(jié)合控制算法和濾波處理[1]計(jì)算輸出控制量并不斷進(jìn)行循環(huán)檢測(cè)和計(jì)算以達(dá)到系統(tǒng)的穩(wěn)定性,并通過(guò)無(wú)線通信模塊與上位機(jī)進(jìn)行數(shù)據(jù)的交換,實(shí)現(xiàn)數(shù)據(jù)交互和飛行姿態(tài)控制[2]。

      圖1 硬件設(shè)計(jì)整體框圖Fig.1 Overall block diagram of the hardware design

      主控模塊供電模塊采用線性元器件PTN78000WAH構(gòu)成電壓轉(zhuǎn)換電路結(jié)合tps62160穩(wěn)壓,為單片機(jī)其他模塊供電,發(fā)熱小,紋波小,綜合效能高

      1.2傳感器模塊

      由四旋翼飛行器的簡(jiǎn)單物理模型可知,在一固定時(shí)刻,四旋翼的狀態(tài)由6個(gè)物理量來(lái)描述,包括在三維坐標(biāo)中的3個(gè)位置量和沿3個(gè)軸的姿態(tài)量,這些姿態(tài)數(shù)據(jù)的采集則由MPU6050模塊來(lái)實(shí)現(xiàn)。慣性傳感器有兩種類型:陀螺儀和加速度計(jì)。陀螺儀起到測(cè)量四旋翼飛行器的角速率的作用。因此,精度和穩(wěn)定性可作為陀螺儀選型的重要原則,MPU6050所測(cè)得的數(shù)據(jù)誤差較結(jié)合的陀螺儀和加速度計(jì)誤差更小、運(yùn)用和控制更方便。MPU6050是三軸陀螺儀和三軸加速器的結(jié)合,MPU6050的角速度全格感測(cè)范圍設(shè)定為±250、±500等,可準(zhǔn)確追蹤快速與慢速動(dòng)作,傳輸可透過(guò)最高至400 kHz的IC。慣性導(dǎo)航中,導(dǎo)航參數(shù)會(huì)隨著傳感器的測(cè)量誤差積累而發(fā)散[3],另外為了更加準(zhǔn)確,本四旋翼增加了三軸加速度計(jì)、GY-63氣壓傳感模塊和陀螺儀6D0F模塊與MPU6050所得數(shù)據(jù)進(jìn)行校準(zhǔn),以期更好地控制飛行。

      1.3無(wú)線通信模塊

      為了實(shí)現(xiàn)四旋翼飛行器和地面控制中心之間的通信必須使用無(wú)線通信模塊。本項(xiàng)目采用nRF24L01單片機(jī)無(wú)線收發(fā)芯片,工作在2.4~2.5 GHz的ISM頻段的單片無(wú)線收發(fā)器芯片。無(wú)線收發(fā)模塊包括:頻率發(fā)生器、增強(qiáng)型“SchockBurst”模式控制器、功率放大器、晶體振蕩器、調(diào)制器和解調(diào)器,能較好地完成通信。也可以利用WIFI進(jìn)行通信,通過(guò)電腦內(nèi)置無(wú)線網(wǎng)絡(luò)協(xié)議IEEE802.11協(xié)議棧以及TCP/IP協(xié)議棧,同樣能夠?qū)崿F(xiàn)電腦與WIFI芯片的無(wú)線數(shù)據(jù)傳輸,同時(shí)WIFI信息傳送數(shù)據(jù)速率可以達(dá)到600Mb,并且配置和使用也簡(jiǎn)單,但是在手動(dòng)控制飛行器的時(shí)候不如手持式無(wú)線終端靈活,但最終仍然能實(shí)現(xiàn)上位機(jī)對(duì)其的數(shù)據(jù)采集和實(shí)時(shí)操控。

      1.4電機(jī)、電調(diào)控制模塊

      本項(xiàng)目采用直接利用成品AL-ITW電調(diào),控制無(wú)刷電機(jī)方案,實(shí)現(xiàn)了STM32輸出PWM脈沖控制電調(diào),從而對(duì)電機(jī)達(dá)到線性控制目的??刂品绞綖橹骺匦酒鶕?jù)采集的姿態(tài)數(shù)據(jù)調(diào)整輸出PWM周期,最大油門(mén)值為2 ms高電平。

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

      軟件使用 keil,uvision4.1.0集成開(kāi)發(fā)環(huán)境,工具鏈為RealViewMDK-ARM Version4.12,驅(qū)動(dòng)采用官方的MPU6050驅(qū)動(dòng)inv_mpu.c和inv_mpu_dmp_motion_driver.c。

      本飛行控制器的軟件控制主要包括以下幾個(gè)方面。

      1)STM32單片機(jī)獲取mpu6050傳感器的初始數(shù)據(jù),通信方式采用I2C通信方式;

      2)得到飛行器的實(shí)時(shí)姿態(tài),濾波方式采用互補(bǔ)濾波;

      3)與此同時(shí),用HC06藍(lán)牙模塊接收到上位機(jī)發(fā)送的數(shù)據(jù),解算得到期望姿態(tài);

      4)之后將實(shí)時(shí)姿態(tài)和期望姿態(tài)作差,差值送入PID閉環(huán)控制器。

      控制過(guò)程如圖2所示。

      圖2 飛行控制器主要控制過(guò)程圖Fig.2 Flight controller main control process chart

      2.1讀取mpu6050初值

      根據(jù)mpu6050數(shù)據(jù)手冊(cè)的各寄存器地址,采用GPIO模擬I2C通信方式,讀取重力加速計(jì)和陀螺儀的各個(gè)分量。本飛行控制器傳感器采樣率設(shè)置為200 Hz;陀螺儀量程為±2 000°/s,加速計(jì)量程為±2g。量程不宜太大,量程越大取值越不準(zhǔn)確。

      2.2濾波和姿態(tài)融合

      采用互補(bǔ)濾波,融合時(shí),飛行器的瞬時(shí)運(yùn)動(dòng)情況很大程度上由陀螺儀的積分運(yùn)算決定,陀螺儀產(chǎn)生的誤差由重力加速度計(jì)長(zhǎng)時(shí)間累積不斷矯正,最終得到準(zhǔn)確的機(jī)身姿態(tài)。

      為了得到姿態(tài)角所對(duì)應(yīng)的四元數(shù),本控制器采用Madgwick提供的UpdateIMU算法[4],之后經(jīng)過(guò)簡(jiǎn)單運(yùn)算將四元數(shù)轉(zhuǎn)換為實(shí)時(shí)歐拉角,轉(zhuǎn)換方式[5]如下:

      首先定義四元數(shù)

      通過(guò)旋轉(zhuǎn)軸和繞該軸旋轉(zhuǎn)的角度可以構(gòu)造一個(gè)四元數(shù):

      其中是繞旋轉(zhuǎn)軸旋轉(zhuǎn)的角度,cos(βx)、cos(βy)、cos(βz)為旋轉(zhuǎn)軸在x、y、z方向的分量(由此確定了旋轉(zhuǎn)軸)。歐拉角到四元數(shù)的轉(zhuǎn)換公式如下:

      2.3獲取期望姿態(tài)

      讓用戶介入控制,通過(guò)HC-06藍(lán)牙模塊接連到STM32的串口1,再無(wú)線連接到控制端,獲得控制端不斷發(fā)送的數(shù)據(jù)包,并實(shí)時(shí)更新期望姿態(tài)角。需要注意輸出的姿態(tài)角和實(shí)時(shí)姿態(tài)角方向是否一致以及數(shù)據(jù)包的校驗(yàn)。

      2.4PID算法控制

      本飛行控制系統(tǒng)引入PID控制器來(lái)更好的糾正系統(tǒng)。

      PID基本要素包括 “比例proportional”、“積分integral”、“微分derivative”,每一項(xiàng)完成不同的任務(wù),對(duì)系統(tǒng)功能產(chǎn)生不同的影響。P代表控制系統(tǒng)的響應(yīng)速度,P越大響應(yīng)越快;I用來(lái)累積過(guò)去時(shí)間內(nèi)的誤差,修正P無(wú)法達(dá)到的期望姿態(tài)值(靜差);D加強(qiáng)對(duì)機(jī)體變化的快速響應(yīng),對(duì)P有抑制作用。

      2.5輸出PWM信號(hào)

      完成PID計(jì)算后,通過(guò)STM32自帶的定時(shí)器調(diào)制輸出四路pwm信號(hào),本控制器采用50 Hz的電調(diào)pwm,設(shè)置0.5~2.5 ms的高電平持續(xù)時(shí)間。

      至此,一個(gè)基于stm32和mpu6050搭建的飛控系統(tǒng)已經(jīng)實(shí)現(xiàn)。

      3 系統(tǒng)調(diào)試與飛行測(cè)試

      系統(tǒng)模型的建立通過(guò)數(shù)學(xué)模型模擬飛行器的飛行,但是系統(tǒng)模型并不能十分精確的展現(xiàn)飛行器的真實(shí)飛行狀況,理論分析所獲取的各類參數(shù)往往與實(shí)際參數(shù)會(huì)有些差錯(cuò),需要進(jìn)一步通過(guò)對(duì)系統(tǒng)進(jìn)行調(diào)試使飛行器達(dá)到最佳的飛行效果。本項(xiàng)目采用Matlab開(kāi)發(fā)的的上位機(jī)程序控制四旋翼飛行,從而獲得適合于四旋翼飛行的最佳控制參數(shù)。

      3.1開(kāi)機(jī)檢測(cè)

      1)電壓值檢測(cè)

      四旋翼飛行器需要在一定的電壓范圍內(nèi)才能保證其正常的飛行,當(dāng)電池電壓低于11.3 V時(shí),電動(dòng)馬達(dá)驅(qū)動(dòng)電壓過(guò)低,會(huì)使得飛行器不能夠正常飛行,在電池上安裝電壓報(bào)警器設(shè)備對(duì)電池電壓進(jìn)行監(jiān)控,調(diào)節(jié)報(bào)警電壓為11.3 V,當(dāng)電池電壓低于設(shè)定值時(shí),報(bào)警器被觸發(fā)響鈴,提醒及時(shí)充電。

      2)超聲波檢測(cè)

      利用主控計(jì)算機(jī)的GPIO端口讀取超聲波傳感器輸出的脈沖寬度,將其轉(zhuǎn)換為寬度。當(dāng)寬度小于設(shè)定的初始值時(shí),主控芯片會(huì)調(diào)節(jié)PWM的輸出,改變四旋翼飛行器原先的飛行狀態(tài),從而達(dá)到避障功能。

      3.2PID控制參數(shù)的設(shè)置

      圖3 PID控制基本框圖Fig.3 PID control of the basic block diagram

      通過(guò)MPU-6050傳回主控芯片的姿態(tài)數(shù)據(jù)結(jié)合PID算法對(duì)四旋翼飛行姿態(tài)進(jìn)行控制,圖3為PID控制基本框圖。

      其中error表示飛機(jī)各個(gè)姿態(tài)角和預(yù)設(shè)姿態(tài)角之間的偏差,送入上述框圖計(jì)算得到控制調(diào)整信號(hào)輸出給控制芯片編程PWM送出調(diào)整電機(jī)轉(zhuǎn)速進(jìn)行姿態(tài)調(diào)整。

      根據(jù)PID系統(tǒng)的結(jié)構(gòu)圖,通過(guò)matlab搭建Simulink仿真,經(jīng)過(guò)調(diào)試,得到以下參數(shù)取值表。

      表1 PID仿真參數(shù)值Tab.1 PID simulation parameters

      通過(guò)大量仿真實(shí)驗(yàn),當(dāng)P=3,i=0.7,d=20時(shí)飛行器能夠保持穩(wěn)定狀態(tài)飛行。

      圖4 Matlab仿真圖Fig.4 Matlab simulation map

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

      本項(xiàng)目結(jié)合四旋翼飛行器的器件選擇,硬件電路設(shè)計(jì)和控制系統(tǒng)程序?qū)崿F(xiàn)等方面系統(tǒng)地給出了設(shè)計(jì)步驟和方法,經(jīng)實(shí)驗(yàn)證明本套方案能設(shè)計(jì)出一套能穩(wěn)定起飛并且能在手持遙控器控制下平穩(wěn)飛行的四旋翼。鑒于各方面的突出優(yōu)勢(shì),如今四旋翼飛行器在生活很多地方都可以看到應(yīng)用,它是一種有巨大商業(yè)潛力和極寬應(yīng)用范圍的技術(shù),這項(xiàng)技術(shù)的研究能拓展更多的科研價(jià)值,在智能飛行、自主飛行方向的發(fā)展能更進(jìn)一步。

      [1]Hamel T,Mahony R,Lozano R,et al.Dynamic modeling and configuration stabilization for an X4-Flyer[C].15th Triennial World Congress,Barcelona,Spain,2002:665-670.

      [2]Bouabdallah S.Design and control of quadrotors with applicationto autonomous fIying[D].Ecole Polytechnique Federale de Lausanne,2007.

      [3]周權(quán).四旋翼飛行平臺(tái)飛行控制和慣性導(dǎo)航研究 [D].南京:南京航空航天大學(xué),2008.

      [4]IMU[EB/OL].[Online]Available:http://developer.mbed.org/ cookbook/IMU(2015-10-3).

      [5]Conversion between quaternions and Euler angles[EB/OL].Available:http://www.cnblogs.com/wqj1212/archive/2010/11/ 21/1883033.html(2015-10-3).

      [6]代曉巍,李振興,趙麗莉.飛行器外測(cè)數(shù)據(jù)連續(xù)型野值的抽取剔除方法[J].電子設(shè)計(jì)工程,2015(12):68-70.

      The design and achievement of quadrotor based on STM32

      YAN Ping,WANG Li-dan,LI Meng-ke,HONG Cheng-chang,JIANG Dong-feng
      (Southwest University,Chongqing 400715,China)

      The main controller of this Quadrotor is STM32F103RCT6,and we can quickly acquire quadrotor’s attitude data through hardware connection between MPU6050 module and controller;Then we use UpdataIMU algorithm to convert original data to corresponding attitude angle quaternion,complementary filter will deal with those data.At last,through PID algorithm,there will be PWM output wave to adjust speed of the motors,so that we succeeded in a stable flight attitude.This paper describes the quadrotor’s hardware design,software design and debugging methods,from repeated tests,this method can design a stable quadrotor aircraft.With further research,quadrotor aircraft has a broad application prospects.

      quadrotor;updataIMU algorithm;complementary filter;PID algorithm

      TN99

      A

      1674-6236(2016)02-0187-03

      2015-03-09稿件編號(hào):201503121

      國(guó)家級(jí)大學(xué)生創(chuàng)新訓(xùn)練項(xiàng)目資助(201410635080)

      顏 平(1993—),女,重慶人。研究方向:通信工程。

      猜你喜歡
      陀螺儀旋翼飛行器
      高超聲速飛行器
      基于EMD的MEMS陀螺儀隨機(jī)漂移分析方法
      改進(jìn)型自抗擾四旋翼無(wú)人機(jī)控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
      大載重長(zhǎng)航時(shí)油動(dòng)多旋翼無(wú)人機(jī)
      基于STM32的四旋翼飛行器的設(shè)計(jì)
      電子制作(2019年9期)2019-05-30 09:41:48
      復(fù)雜飛行器的容錯(cuò)控制
      電子制作(2018年2期)2018-04-18 07:13:25
      我國(guó)著名陀螺儀專家——林士諤
      微機(jī)械陀螺儀概述和發(fā)展
      四旋翼無(wú)人機(jī)動(dòng)態(tài)面控制
      MEMS三軸陀螺儀中不匹配干擾抑制方法
      贺兰县| 平南县| 和田市| 石家庄市| 明溪县| 全椒县| 镇赉县| 时尚| 平江县| 通榆县| 师宗县| 昌都县| 昭觉县| 察哈| 吕梁市| 大英县| 霞浦县| 岐山县| 诸城市| 清原| 衡南县| 阿克苏市| 长乐市| 临沧市| 文安县| 新余市| 子长县| 丹阳市| 文昌市| 宁强县| 左云县| 西乌珠穆沁旗| 湖北省| 柳州市| 峨眉山市| 永昌县| 肃宁县| 泗洪县| 吉安县| 原阳县| 邵阳县|