李亮 吳杰 石道勝
【摘 要】本設(shè)計(jì)采用模塊化編程,便于移植、二次開(kāi)發(fā)??刂拼a對(duì)PID算法進(jìn)行優(yōu)化,控制精度高、系統(tǒng)反應(yīng)靈敏,同時(shí)采用CRC校驗(yàn)方式進(jìn)行數(shù)據(jù)發(fā)送,保證了數(shù)據(jù)完整性和準(zhǔn)確性。可實(shí)現(xiàn)飛行器定高、定位飛行。
【關(guān)鍵詞】無(wú)人機(jī);PID控制;MPU6050
中圖分類號(hào): V279;V249.1 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 2095-2457(2018)24-0014-002
DOI:10.19694/j.cnki.issn2095-2457.2018.24.006
【Abstract】The design adopts modular programming,which is easy to transplant and redevelop.The code of PID algorithm is optimized with high control precision and sensitive response in the control system.At the same time,The CRC checking mode is used to send data and ensure the data integrity and accuracy.The aircraft can complete flight at fixed altitude and position.
【Key words】UAV;PID Control;MPU6050
0 前言
無(wú)人機(jī)是無(wú)人駕駛飛機(jī)(Unmanned Aerial Vehicle)的簡(jiǎn)稱,是由無(wú)線電遙控設(shè)備和自備程序控制裝置的不載人飛機(jī)構(gòu)成。包括無(wú)人直升機(jī)、固定翼機(jī)、多旋翼飛行器、無(wú)人飛艇、無(wú)人傘翼機(jī)。從某種角度來(lái)看,無(wú)人機(jī)可以在無(wú)人駕駛的條件下完成復(fù)雜空中飛行任務(wù)和各種負(fù)載任務(wù)。四旋翼在很早之前就已經(jīng)有人研究,但是限于當(dāng)時(shí)的科技還不夠發(fā)達(dá),因此并沒(méi)有引起大家的重視。進(jìn)入21世紀(jì)之后,隨著科學(xué)技術(shù)的不斷發(fā)展,以及微機(jī)電、微導(dǎo)航技術(shù)的出現(xiàn),引來(lái)了四旋翼發(fā)展的新時(shí)代,各國(guó)都開(kāi)設(shè)有相關(guān)的研究機(jī)構(gòu)來(lái)對(duì)四旋翼飛行器展開(kāi)研究。四旋翼?yè)碛锌刂旗`活、體積小、重量輕、穩(wěn)定性好、可垂直起降和定點(diǎn)懸停等特點(diǎn),不論是在軍事上還是民用上都擁有非常廣泛的應(yīng)用前景[1]。本簡(jiǎn)易四軸飛行器,去除以往其它飛行控制軟件的復(fù)雜性,并且保留了基本的四軸飛行器的功能。
1 四軸飛行器平衡設(shè)計(jì)
四軸飛行器與普通的飛行器飛行原理不同,是通過(guò)調(diào)節(jié)四個(gè)電機(jī)的轉(zhuǎn)速來(lái)改變旋翼轉(zhuǎn)速,實(shí)現(xiàn)升力的變化,從而控制飛行器的姿態(tài)和位置。由于飛行器是通過(guò)改變旋翼轉(zhuǎn)速實(shí)現(xiàn)升力變化,這樣會(huì)導(dǎo)致其動(dòng)力不穩(wěn)定,所以需要一種能夠長(zhǎng)期保穩(wěn)定的控制方法。我們選用PID控制算法對(duì)四旋翼的四個(gè)螺旋槳的輸出進(jìn)行控制。利用MPU6050進(jìn)行采集當(dāng)前環(huán)境的三軸加速度、三軸角速度。為此需要大量測(cè)試來(lái)解決數(shù)據(jù)采集與處理,控制等時(shí)間的分配問(wèn)題[2]。通過(guò)MPU6050采集的陀螺儀和加速度數(shù)據(jù)進(jìn)行姿態(tài)控制,使飛行器在有外部干擾的情況下依然保持四槳向上的的直立姿態(tài)保持飛行。
當(dāng)系統(tǒng)運(yùn)行后,先進(jìn)行系統(tǒng)初始化,包括微處理器的定時(shí)器、中斷、串口,以及傳感器的初始化。傳感器測(cè)量數(shù)據(jù),經(jīng)轉(zhuǎn)化后讀入程序中。根據(jù)讀入的數(shù)據(jù)計(jì)算出當(dāng)前的飛行器姿態(tài)。讀取控制信號(hào),并且計(jì)算出控制需要的目標(biāo)姿態(tài)。比較實(shí)際姿態(tài)與目標(biāo)姿態(tài),利用PID算法計(jì)算出每個(gè)電機(jī)的調(diào)整量,根據(jù)計(jì)算出的調(diào)整量來(lái)調(diào)整微處理器的PWM模塊,使PWM模塊產(chǎn)生的PWM波的占空比發(fā)生變化,從而調(diào)整電機(jī)的轉(zhuǎn)速,進(jìn)而調(diào)整了飛行器的姿態(tài)[3]。這樣系統(tǒng)通過(guò)以上的循環(huán)實(shí)現(xiàn)了對(duì)飛行器姿態(tài)的動(dòng)態(tài)控制。
2 四軸飛行器定高設(shè)計(jì)
本四軸飛行器定高采用超聲波模塊控制,模塊使用方法簡(jiǎn)單,工作電壓5V,只要給模塊一個(gè)10μs左右的高電平即可在模塊內(nèi)部自動(dòng)生成8個(gè)40KHz的方波進(jìn)行測(cè)距,收到回波后的高電平時(shí)間通過(guò)比例計(jì)算即可得到相應(yīng)的距離測(cè)量值。使用時(shí)不允許超過(guò)5.5V電壓,功耗電流:最小1mA,最大20mA,測(cè)量范圍1cm-5m。在環(huán)境惡劣的室外,超聲波依然可以保持較為準(zhǔn)確的測(cè)量穩(wěn)定性,作為穩(wěn)定的飛行高度測(cè)量模塊較為合適[4]。
3 四軸飛行器控制器設(shè)計(jì)
本簡(jiǎn)易四軸控制軟件主要分兩部分。分別為軟硬件初始化部分和控制主循環(huán)部分。第一部分,上電初始化,包括電機(jī)控制模塊,超聲波,六軸傳感器,串口,電子羅盤等等。初始化后等待發(fā)送接收的數(shù)據(jù),為接下來(lái)的控制部分提供必要的準(zhǔn)備。第二部分,主要接收遙控器傳輸過(guò)來(lái)的信息,主控芯片對(duì)信息進(jìn)行解碼,做出相應(yīng)的控制動(dòng)作,此外當(dāng)四軸懸停在空中時(shí),系統(tǒng)根據(jù)超聲波、加速度傳感器等的數(shù)據(jù)對(duì)四軸的無(wú)刷電機(jī)的轉(zhuǎn)速做出調(diào)整,控制四軸的飛行姿態(tài)以保持飛行器平穩(wěn)運(yùn)行[5]。飛行器采用模塊化編程實(shí)現(xiàn),流程圖1所示。四軸飛行器系統(tǒng)上電后定時(shí)器初始化,GPS和超聲波以及藍(lán)牙等傳感器初始化,初始化成功后,手機(jī)APP進(jìn)行陀螺儀和加速度計(jì)校準(zhǔn),能夠選擇定高模式,自由模式。MPU6050傳感器傳過(guò)來(lái)三軸數(shù)據(jù),通過(guò)反饋調(diào)節(jié)PID參數(shù),以達(dá)到系統(tǒng)整體保持平衡、平穩(wěn)的作用。
4 總結(jié)
本設(shè)計(jì)的四軸飛行器展示了四軸的飛行原理,控制驅(qū)動(dòng)原理等。同時(shí)設(shè)計(jì)實(shí)現(xiàn)了四軸飛行器的起飛,降落,定高,平衡,加油門,減油門,旋轉(zhuǎn)等動(dòng)作,首先各個(gè)系統(tǒng)初始化,超聲波定高初始化,定高PID初始化,油門PWM初始化,定時(shí)器初始化,GPS初始化。該四軸飛行器的代碼,運(yùn)用了定時(shí)器的四個(gè)PWM通道,軟件通過(guò)緩慢調(diào)節(jié)PWM實(shí)現(xiàn)慢慢加速,軟啟動(dòng),實(shí)現(xiàn)了起飛,在利用MPU6050六軸傳感器進(jìn)行PID調(diào)節(jié),實(shí)現(xiàn)了平衡,這里主要是利用PID反饋調(diào)節(jié)PWM。利用超聲波傳感器,調(diào)節(jié)PID來(lái)定高,NRF遙控器和手機(jī)APP來(lái)遙控。
【參考文獻(xiàn)】
[1]王鋒,吳江,周國(guó)慶等.多旋翼飛行器發(fā)展概況研究[J].科技視界,2015(13):6-7.
[2]張權(quán)權(quán),王立,成李浩.微型四旋翼飛行控制器設(shè)計(jì)[J].科技視界,2016(27):435-435.
[3]張新英,余發(fā)軍,劉聰.基于模糊PID控制的四旋翼無(wú)人機(jī)設(shè)計(jì)[J].實(shí)驗(yàn)室研究與探索,2017,36(4):56-59.
[4]劉祥,林維昌.多功能環(huán)境監(jiān)測(cè)無(wú)人機(jī)系統(tǒng)設(shè)計(jì)[J].科技視界,2016(12):55-56.
[5]潘春榮,許化.基于STM32的X型四旋翼無(wú)人機(jī)設(shè)計(jì)[J].工程設(shè)計(jì)學(xué)報(bào),2017,24(2):196-202.