国一B题方案解析:轴距仅210mm的四旋翼有多稳?
點擊上方“大魚機器人”,選擇“置頂/星標公眾號”
福利干貨,第一時間送達!
本文出品公眾號:達爾聞說
推薦各位關注
------------------正 文------------------
對無人機感興趣的同學,工程師都可放心“食用”。
高能預警:此組分享人(上海大學:程航,高良磊,劉成語 )是2019全國電賽B題復測該組別的第1名,也就是國一隊伍里的NO.1噢!!
B題可以說是所有題目里最具觀賞性的,↓↓戳演示視頻:
B題制勝的最關鍵點是?
如果一定要強調一點,那就是飛機設計的精巧。
這一點在我們飛機軸距上有很大的體現,我們飛機的軸距約為210mm,這次競賽大部分隊伍所使用的飛機軸距都在300mm以上,軸距變小,使得飛機PID調參變得更加方便簡單,也使飛機姿態調整速度快,更加靈巧。
針對此次競賽題目而言,小飛機也有天然優勢,比如拍照距離可以更近,飛機穩定性可以更好。
而針對小飛機存在的載重不足的固有缺陷,我們也通過精密計算,確定大致的載重需求,并挑選相匹配型號的電機,對該缺點進行了改進。
最終我們的飛機載重為680g左右,已經完全滿足了模塊搭載的需要,并且基本沒有影響到飛機的穩定性。
其次是方案設計巧妙(下文會有詳細介紹),在很多方面都跳出了題目的限制以及固有的思維,比如飛機巡線方案的設計、飛機自旋方案的設計相比之下都是獨樹一幟的,并且也取得了極好的飛行效果。
另外,在調試過程中完成的一些任務邏輯上的優化與改進也使得我們的設計方案更加完善,從而使得飛機能夠更好地適應意外情況。
最后是充足的準備。我們不僅利用撥碼開關設計了多版飛控程序,增強了飛機對于環境的適應性,并且針對自選題目也在測評前進行了突擊訓練,針對飛機的一些特殊飛行動作的軟件設計思路進行了詳細的整理,另外也準備了很多測評材料,在不違反賽事規則的前提下保證更加有利的測評環境,爭取更好的測評效果。
比起正式的方案,我想更多人關心的是我們的設計思路和思考的過程,于是我們花大篇幅來分享,這些點也是大家容易踩坑的地方:
巡線方案的選擇。與其他高校同學交流過后,發現大家都在被如何巡線的問題困擾,無論是地面很淡的灰白條紋,還是很細的電線,如果依靠圖像識別去完成該題目的確有很大難度,并且存在著很大的不確定性,從結果來看,采用此方案的隊伍驗收情況也不是很好,飛機飛行很難穩定。
我們組則跳出了巡線的限制,選擇依靠光流模塊去做直線來完成任務,利用這一方案,則需要考慮以下幾方面的問題:飛機穩定定高,我們的飛機定高采用的是超聲波模塊與氣壓計模塊的數據融合,再經過高度方向上的PID調參,則可保證穩定的定高效果;
起始點與終點的選擇,我們利用了激光測距模塊來確定A.B兩桿的位置,也就是確定飛機直線飛行的起點和終點,我們利用激光數據,保證飛機穩定飛行在距桿(線)30cm的位置,從而保證黃色色塊識別的成功率。這樣,飛機則可以保證穩定飛完全程。
地面的選擇。由于我們飛機飛行依靠光流模塊定位,因此地面環境的影響很大,題目中建議使用的灰白條紋同樣不適用于我們的方案。
因此在市賽中,我們使用的地面是木質地板,國賽中,我們使用的地面是鋪了半透明薄布大理石地面
(注:大理石由于其強反光性,光流是無法正常工作的,因此在征得評委同意后,在大理石地面上鋪了一層薄布,消除了大理石地面的反光,保留了大理石地面的紋理,從而解決了地面問題)。
飛機自旋的問題。飛機自旋看上去是比較直接的繞桿方法,但實際上飛機自旋會嚴重影響飛機飛行的穩定性,另外也會破壞依靠光流模塊建立的運動坐標系,從而增加軟件設計的難度。
因此我們選擇保持飛機朝向不變,僅通過前后左右平移來實現飛機的運動,同時加裝舵機來控制攝像頭旋轉,從而保證飛行途中條形碼與二維碼均能進入攝像頭視野中,這樣既保證了任務的正常完成,也保證了飛行的穩定性不受干擾。
條形碼與二維碼的拍攝問題。條形碼與二維碼的拍攝與掃描是該任務的重點,增加掃描成功率是該題目拿分的關鍵,因此我們從如下角度對這一問題進行解決和優化:
首先經測試發現,盲拍到的條形碼掃描成功率極低,因此我們在程序中加入了條形碼與二維碼的識別;
然后針對條形碼與二維碼識別率低的問題,我們在定位到黃色色塊和B桿時,加入了飛機位置調整的步驟,將飛機盡可能靠近條形碼(或二維碼),從而提升識別率以及照片的清晰度;
最后在任務優化的過程中,我們將碼識別方案改為限時識別,超時盲拍,從而保證了照片拍攝質量,又提高了任務完成效率。
另一方面,照片拍攝儲存也有一定講究,經實測后,我們發現,拍攝的照片為灰度圖時,照片質量較高,并且將分辨率格式設置為VGA格式后,拍攝到的照片會更加清楚,在照片存儲時,將照片格式保存為JPG,并將壓縮質量調至最高,則可最大限度提升照片質量。
通過這些設置,進一步提升了照片拍攝的質量,也就進一步提高了條形碼與二維碼的識別率。
任務魯棒性的提升。在我們的軟件設計中,有許多應對意外情況的保護措施。例如當激光模塊未掃描到A桿,到達一定距離后,飛機會進行往返運動,直至其掃描到A桿,保證任務的正常開始;
當視覺模塊掃描到黃色色塊時,飛機會進入距離屏蔽模式,在拍照離開色塊一定距離后,識別任務重新開始,以避免同一色塊重復識別的問題;當激光模塊未掃描到B桿,飛機飛至極限距離后,飛機會返回至固定點,進行盲拍,保證任務的繼續進行;
視覺模塊中也設計了不重復拍照,不重復識別的保護。這些措施均是對于在我們調試過程中發現的一些意外情況進行的優化,從而使得我們的飛機在出現任何意外情況均可以飛完全程。
當然,針對環境的變化,我們利用飛控板上的撥碼開關,可以進行飛行模式切換,從而適應激光模塊失效,二維碼位置變化等極端環境情況,大大增強了飛機飛行的可適應性,保證飛行任務的萬無一失。
B題巡線機器人的任務要求? ?
方案解析:硬件、軟件以及測試結果
以下主要分享的是軟硬件系統及軟件的流程,關于整體方案的論證選擇,以及理論分析、測試情況的完整報告,可以在“達爾聞”微信號回復:電賽無人機,獲取報告。
1)主要器件:
飛控板型號:TM4C129G
光流模塊型號:PWM3901
超聲波模塊型號:KS103
激光模塊型號:VL53L0X
姿態解算模塊型號:MPU9250
2)視覺模塊硬件設計:
主要器件方面,采用STM32H7高性能單片機作為主控,其主頻為400MHz。攝像頭采用的是軟排線的模組,非BGA封裝,體積減小的同時,還可以輕松焊接,并且可以根據實際需求更換不同功能的攝像頭。
接口方面,采用了USB-Type-C接口,其壽命和穩定性都有大幅提高且不易損壞。
降壓方面,選擇線性穩壓以確保輸出的電源穩定無波紋。
設計時,為了使設備工作更加穩定,選用了4枚大容量鉭電容,以確保圖像信號的穩定無雜波。
配備了兩個獨立的大功率驅動電路,負責放大IO的控制能力,其中一個現在用于控制蜂鳴器,保證聲音足夠響亮。
配備3路舵機控制信號輸出,用來快速轉動響應。為了在調試時不至于損壞電腦,在USB供電和DC供電間使用了2枚二極管和一個電感進行隔離。
3)飛控板硬件設計:
飛控主芯片采用高性能的TM4C129芯片,主頻為120MHz。
接口方面,從單片機引出了4路串口,1路IIC接口和2路SPI接口,具有豐富的擴展性。
配備2路舵機接口,可以由飛控直接控制舵機轉動。4位撥碼開關用于模式切換,以應對各種復雜的飛行任務。
一鍵起飛按鍵,可脫離遙控完成自主起飛。預留了nRF無線模塊的接口,可以方便的進行調試或遙控飛行。
電源方面,分離式雙電源供電,電池電壓經分壓板降壓后輸入飛控板,一路3.3V穩壓負責供應板子上的核心芯片,另一路負責所有的外部設備。供電部分預留50%以上的供電余量,防止出現供電不足的情況,同時可減少線性電源的發熱。
為了使設備工作更加穩定,選用了4枚大容量鉭電容,以應對電流陡升的情況,確保飛行穩定。外接擴展設備提供供電選擇跳線,可自行選擇3.3V或5V供電。
4)軟件框圖
飛行器工作流程圖?
流程解釋:上電之后飛行器初始化各個模塊,當按下按鈕之后兩秒飛行器自動起飛,之后飛行器會飛至A桿左側30cm處,然后沿黑線向B桿移動3m,檢測黃色凸起物。
若找到黃色凸起物,則發出聲光報警,前后調整位置讓黃色凸起物在視野中間,此過程限制4秒,若在4秒內黃色凸起物成功移動到視野中心,則飛行器向黑線靠近10cm識別黃色凸起物上的條形碼并拍照,若4秒內無法讓黃色凸起物移動到視野中心,則發出指令給OpenMV,令其直接拍3張照片。
當飛行器走滿3m時,則開始讀取激光測距數據,檢測到距離低于70cm時表示移到了B桿處,然后校正自身的位置到距離B桿30cm處,之后每移動0.15m拍一張照片,共拍3張,然后繞過B桿,云臺方向向左轉180度,從B桿向A桿移動3m,當看到黃色凸起物時聲光報警,最后在A桿邊降落。
5)測試結果
懸停,飛行器放置在自定起點位置,一鍵啟動,飛行器垂直上升至1m的高度,懸停十秒后自動降落,在此時間內,飛行器的水平坐標并未發生大幅偏移。
自主巡航,飛行器上電,一鍵啟動,能夠按照自定路線完成巡航,巡航過程中,攝像頭基本能夠拍攝到場地內的任意范圍。
通信,OpenMV模塊連接串口調試助手,雙方通信正常,OpenMV可以通過接收串口調試助手發出的指令完成識別任務,同時發送正確的應答。
識別,手持OpenMV測試黃色色塊識別,識別率接近百分之百。測試條形碼與二維碼的識別,在距離約為20cm處,識別率可以滿足任務要求。懸掛重物懸停,飛行器分別在四個旋翼軸下方懸掛重物,經過修改偏移量之后,飛行器能夠穩定懸停。
“此次比賽的成功,是意料之外卻又在情理之中的”,說到總結心得有幾點建議給到想要來年參賽的同學們:???
目標純粹方能走得更遠。我們參賽并非一心為榮譽,以學習心態參與,注重個人能力提升。珍惜每一次與其他高校交流的機會,保持低調,冷靜,迎難而上。
吃苦的精神。早9晚10,無周末,反復在實驗室訓練,多方面提升飛機性能。
充分的準備和試錯。提前備用各種材料,考慮各種情境、環境,以備不時之需。
推薦閱讀:
知乎超熱門話題:為什么要考985?
為什么程序員996會猝死,而企業家007卻不會?
//end
大家好,我是張巧龍,一名電子技術愛好者,會寫一些關于硬件與軟件結合的技術文章。
若覺得文章對你有幫助,轉發分享,也是我們繼續更新的動力。
關注下方公眾號,后臺回復:更多資源。
送你一份學習資源大禮包~
長按識別圖中二維碼關注
總結
以上是生活随笔為你收集整理的国一B题方案解析:轴距仅210mm的四旋翼有多稳?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 雷神推出 911T-Book Pro 游
- 下一篇: 35岁电子工程师的艰难抉择