?
小編寄語:四軸飛行器著實(shí)火了一把,而且捧火了很多人,那么工程師們是否考慮過利用自身優(yōu)勢(shì)設(shè)計(jì)一款四軸飛行器呢?趙鎮(zhèn)同學(xué)付出了實(shí)際行動(dòng),他和他的隊(duì)友們經(jīng)過艱苦奮斗帶著自己的作品參加了比賽。本期《電賽有約》讓我們一起來看看他的設(shè)計(jì)歷程。
前前后后調(diào)試四軸也將近一年了,從去年國賽首次出現(xiàn)四軸題目以來就開始了四軸的制作了。今年一個(gè)多月就花在了山東省電子設(shè)計(jì)競(jìng)賽上,我們的參賽題目就是沖著四軸去的,畢竟過去也花了大量的時(shí)間和精力,這次電賽也是想證實(shí)下我們目前的實(shí)力。
之前聽到電賽有四軸飛行器的題目后我們馬上開始著手準(zhǔn)備了,到比賽結(jié)束大概歷時(shí)一個(gè)半月,還好以前就調(diào)試過,不然一個(gè)暑假想調(diào)好基本是不可能的。我們之前做過一個(gè)四軸,用的是STM32平臺(tái),也是簡(jiǎn)單的可以用遙控飛行,調(diào)試的艱辛還是記憶猶新的,簡(jiǎn)直可以說是虐心。
2014山東省電子設(shè)計(jì)競(jìng)賽
但這次的電賽必須使用TI的MCU,不過平臺(tái)的轉(zhuǎn)換倒是沒有打退我們的決心,反而有點(diǎn)暗暗竊喜,喜的并不是我們熟悉TI的MCU(除了Msp430外,其它TI芯片基本沒有接觸過)而是我們不怕?lián)Q平臺(tái),若是其他參賽隊(duì)伍都一起重新學(xué)習(xí)一款MCU再把四軸調(diào)試好,我想我們更具有優(yōu)勢(shì),憑借過去玩過51、PIC、430、K60、STM32、ARM9的經(jīng)驗(yàn)來說我們就有信心短時(shí)間內(nèi)換好平臺(tái)。
換平臺(tái)主要是移植,我們一開始就想過不能對(duì)一款平臺(tái)依賴太深,代碼編寫就得注意以后移植的問題。開始選TI微處理器時(shí)不知道改用哪款芯片,我們一開始就把430排除了,因?yàn)橛X得它的性能不能滿足要求,控制四軸能不能飛起來還不好說(但也聽說過有人用Msp430做的四軸)再加上攝像頭其他很多外設(shè)估計(jì)吃不消,再者我們一直就想用高達(dá)上的MCU,最后決定用TMS32028335 DSP(也是c2000系列高性能MCU),核心板到手后馬上開始了電賽之旅。
?
第一次接觸DSP也是很欣喜,很想看看它的高處理性能。但從零開始學(xué)習(xí)DSP確實(shí)有些難度,尤其是一開始。開發(fā)環(huán)境裝好后馬上看相關(guān)的使用資料和例程代碼,前后大概花了半個(gè)月的時(shí)間把原STM32上的四軸代碼移植了過來,對(duì)我們來說雖然時(shí)間不算很長但也一直埋怨進(jìn)度慢。核心控制代碼寫好后基本也可以飛起來了,這段過程還算順利,因?yàn)橹熬头e累了些經(jīng)驗(yàn),調(diào)試PID等都很順利,前期準(zhǔn)備就是加速計(jì)陀螺儀數(shù)據(jù)的融合處理了,當(dāng)把這兩者的數(shù)據(jù)輸出穩(wěn)定到在高頻震動(dòng)下依然很平穩(wěn)的情況下也就離成功不遠(yuǎn)了,以前走了很多彎路,一直去調(diào)試合適的PID卻沒有仔細(xì)注意數(shù)據(jù)的穩(wěn)定性,導(dǎo)致做了很多無用功,其實(shí)PID并不是確定的,只是有比較合適的而已,調(diào)試的過程會(huì)有很多組PID可以使用,有些效果也相差不大,還算穩(wěn)定就行不必硬是要找到最佳值。
之前花了兩三個(gè)月做的飛行器都飛不好,現(xiàn)在大半個(gè)月就OK了,還是換了個(gè)平臺(tái),最耽擱時(shí)間的還是在DSP底層配置上,比如預(yù)先要調(diào)好IIC、SPI等通信協(xié)議,這里建議是用硬件來實(shí)現(xiàn),盡量不要使用模擬時(shí)序的,因?yàn)樽约耗M的沒有單片機(jī)集成的速率高,穩(wěn)定性也沒保證。之外還要配置好4路PWM輸出控制電機(jī),capture捕獲模式獲取遙控或者超聲波信號(hào),定時(shí)器需要配置一個(gè),串口也需要,底層配置好之后就可以調(diào)試傳感器了。調(diào)試PID時(shí)建議是使用無線“在線”調(diào)試,不然修改一個(gè)參數(shù)得重新燒寫一遍程序那效率很低。
隊(duì)員合影
其實(shí)現(xiàn)在來說的話也沒什么可說的,真正比賽時(shí)也有很多隊(duì)飛都飛不穩(wěn),這情況我們之前也遇到過,現(xiàn)在總結(jié)出來有幾個(gè)核心點(diǎn):一是傳感器數(shù)據(jù)問題,上面也提到了,最后融合好的角度值一定要穩(wěn)定,可以把手機(jī)震動(dòng)情況下把傳感器放到上面測(cè)試,或者把飛行器電機(jī)啟動(dòng)后傳感器貼上面測(cè)試,看數(shù)據(jù)波形圖,如果在高頻震動(dòng)情況下數(shù)據(jù)基本是一條直線的話數(shù)據(jù)可信了,這里無非是把加速計(jì)和陀螺儀的數(shù)據(jù)融合,利用加速計(jì)在靜態(tài)下數(shù)據(jù)長期穩(wěn)定性和陀螺儀在運(yùn)動(dòng)下數(shù)據(jù)短期內(nèi)可信的特性結(jié)合兩者的優(yōu)勢(shì)實(shí)現(xiàn)互補(bǔ),類似于加權(quán)。與此類似后面還有將陀螺儀和電子羅盤的數(shù)據(jù)融合;二是電源管理,四軸電池基本用不了多久的,電池的電壓在慢慢下降,通過PWM占空比輸出到電機(jī)上的電壓也在變,也許先前調(diào)好的參數(shù)發(fā)現(xiàn)過會(huì)又沒有那么穩(wěn)定了,白白增加了無用功,最好是加個(gè)電源管理模塊,將電源的電壓和輸出功率穩(wěn)定在某個(gè)值;三是最好使用個(gè)起落架,接近地面時(shí)氣流很亂,飛行器很難穩(wěn)定下來。
???
若是基本可以起飛了,相信大家都在為怎么使四軸實(shí)現(xiàn)懸停苦惱吧,當(dāng)然前提不是使用遙控控制,不管怎么調(diào)只要不使用其他輔助傳感器的話是不可能實(shí)現(xiàn)懸停的,因?yàn)殡姍C(jī)不可能一模一樣,外界影響因數(shù)太多,四軸會(huì)慢慢偏移原先位置的,我們也尋找了很久的解決方案,一開始使用了光流傳感器,但效果不是很好,這次比賽需要懸停20秒,室內(nèi)GPS基本可以排除了,因?yàn)檫_(dá)不到需要的精度,如果是在室外的話倒是可以考慮。最后無奈,只能用攝像頭了(有黑線跑道可以識(shí)別)但是很遺憾我們沒那么多時(shí)間來完成。
???
到現(xiàn)在為止,也算告一段落了,以后若是再有時(shí)間調(diào)試的話再來總結(jié)吧。
我們做過的四軸全家福
與非網(wǎng)原創(chuàng)內(nèi)容,謝絕轉(zhuǎn)載!
如果你也想分享自己的參賽心得,歡迎繼續(xù)投稿,投稿郵箱:yunyun#eefocus.com(請(qǐng)將#換為@)。
項(xiàng)目匯總: