打造你專屬的無人機彈道降落傘復原系統

四月 20, 2018
Facebook
Twitter
圖片

時間:3~8小時
難度:中等
成本:155美元
自2015年12月21日起,美國聯邦航空總署(FAA)開始要求玩家登記他們的無人駕駛飛行系統(通常稱為無人機),以加強無人機操作的問責制度,並減少小型無人機的意外事故。經過兩天註冊後,資料庫統計共有4萬5千架私人用的飛行器。根據法規,只要重量在0.55磅(約250公克)至55磅(約25公斤)的個人無人機,如果沒有註冊,最高將處以2萬7千元美金(約新臺幣80萬元)的罰款。飛行機名人John Goglia在富比士雜誌於2017年5月19日刊登的文章「美國聯邦上訴法院宣布FAA註冊模型飛機規定無效」指出,一名聯邦法官於當年5月否決了FAA的註冊要求,但此案之後可能會上訴。
無人機隨處可見,事實上,FAA預估在2020年以前,天空中將會出現大約7百萬臺無人機。隨著越來越多人使用無人機,確保玩家在和平且安全的方式下操作的重責大任,就落到了FAA的肩上。如果你是一位無人機擁有者,可以造訪FAA的網站,查看必須遵守的限制規定,包括重量、視線(LoS)和飛行場所等等。這些規定的目的是要打造一個安全的環境,不只是為了無人機玩家,也為了那些沒有參與飛行的人。

我們都曾經看過四軸飛行器在空中飛行時雄偉的樣子,墜落時則像顆石頭似的直直落下。和固定翼飛機不同,當電池耗盡時,或甚至機體傾斜翻覆,四軸飛行器就會失去升力。隨著天空出現越來越多架無人機,每個人都必須為自己的飛行器安全負起責任。這個專題將探索小型無人飛行器的彈道降落傘復原系統的設計與結構。這種復原系統是以Arduino微控制器為基礎,使用感測器確定GPS座標,並且維持電池電壓與加速度。如果系統判定無人機的電池已經耗盡,或是在規定的界線之外飛行,又或是正處於自由落體狀態,復原系統就會切斷電動機的電源,並打開降落傘,讓飛行器以安全的速度落地。

一起為我們的無人機打造專屬的復原系統吧!自己的復原系統自己做!

注意:大部分的材料都很容易找得到,訂購時請考量零件的成本和操作簡易程度,本篇教學將概述復原系統的電路。請切記,安全第一。

材料

  • Ublox GY NEO6MV2 GPS模組

  • TGY-90S微型伺服馬達,或類似型號

  • 三軸加速度計擴充板ADXL330,可於Sparkfun購買

  • Uxcell 25V電壓感測器

  • Uxcell 5V繼電器

  • 7.4V LiPo電池

  • MARS Mini降落傘

  • T型電池轉接器

  • 母對母和公對母跳線

  • 公排針和母排針

設計

復原系統由無人機飛行計算機獨立控制,使用以額外的7.4V鋰聚合物電池(LiPo)供電的Arduino Nano微控制器,確保復原系統在主電池耗盡的情況下還能正常運作。這種微控制器負責所有的監測與決策,提供14個數位I/O腳位、8個類比腳位,和一個內建時脈速度16MHz、2Kb SRAM的5V穩壓電源。這個元件能完成所有控制和決策過程。透過數位和類比I/O腳位,微控制器能和每個硬體連接。

加速度計加速度計藉由類比輸入腳位和微控制器連接,並產生電壓值來讀取xyz軸上的加速度量。由於加速度計模組不需要太多電力,類比輸出腳位就能提供充足的電源。

GPS— GPS模組仰賴專用的復原系統電池供電,並透過微控制器數位I/O腳位上的串列(Software Serial 程式庫)連接通訊,藉由RS232串列連接將NMEA數據傳輸至Arduino。
 
電壓感測器—電壓感測器透過微控制器上的類比腳位連接,在Arduino類比輸入腳位上的類比轉換成數位電路限制內,做為4:1分壓器提供電壓範圍。
 
5V繼電器模組—繼電器模組由微控制器的5V數位訊號啟動,並在啟動時切斷無人機馬達的電源。這種專用繼電器是「高態動作」(Active HIGH),為啟動內部開關的模組提供5V訊號。
 
伺服馬達—伺服馬達負責部署降落傘,由微控制器數位腳位上的脈衝寬度調變(PWM)訊號所控制。為了節省電力,伺服馬達設定為最先關閉,再和系統分離。因為降落傘門的壓力會使門保持緊閉,這樣做可以減少電池和Arduino運作耗電量。
 
降落傘—復原系統使用的降落傘是知名品牌MARS Mini款,特殊的結構與設計使其也可以獨立使用。這款降落傘由伺服馬達控制門部署,控制門可以維持回壓。而降落傘布則由內部彈簧和活塞裝置向外發射。這個裝置可以重置,可用於快速檢測與安裝。該降落傘可由PVC管、大彈簧、底板、3D列印降落傘門、伺服馬達座與伺服馬達製作。請參閱圖示以了解更多詳情,下圖為復原系統的整體設計示意圖。

圖片

軟體

軟體負責持續監測三項條件,以判定飛機是否發生故障:主電池電壓損耗、飛行器呈自由落體狀態,或是在GPS上與操作員的LoS超出範圍。藉由前述所提及的硬體組件,可以從這些將被監測的組件中獲得即時值。
 
為正確使用復原系統,監測數值都必須經過特殊校準,例如設定好加速度計值,以偵測自由落體,和校準電壓感測器,才能正確切斷馬達的電壓。GPS必須透過衛星獲得飛行器當前的位置,並和儲存在微控制器中的期望值做比較。一旦這些組件都設置完畢,無人飛行載具就可以準備飛行了。軟體設計的流程大綱如下圖所示。
圖片

復原系統軟體流程圖表

GPS

GPS會以183.5的代碼格式不間斷傳送位置資訊,包括經緯度、高度與時間,該格式是由美國國家海洋電子學會(NMEA)所制定的美國資訊交換標準代碼(ASCII)。此系統透過RS232與Arduino Nano的串列連接,以38400bd的波特率通訊。
 
為遵守FAA目前的規定,無人機的操作員或╱和飛行助理,必須在飛行時全程保持與飛行器的LoS。假如飛行器與起飛點的距離超出預定範圍,該復原系統將會接管控制權,且切斷主系統的電源,一旦電源被切斷,復原系統就會部署降落傘,並使飛行器安全著陸。

電壓感測器

電壓感測器軟體會持續從主電池源輪詢(poll)一個數值。無人飛行載具經常使用的無刷DC馬達具有電壓依賴性,也就是說,主要由電源電壓來決定馬達是否能繼續運轉。LiPo電池技術通常見於業餘愛好者的無人機,這種電池能在充電過程中保持穩定電壓。此時,如果電池電壓迅速下降,在輪詢馬達電池電壓後,復原系統就會判斷飛行器的狀態使否足以安全飛行。如果是,系統就會繼續監測;但如果主電池電壓不足,復原系統就會透過繼電器切斷飛行器的電源,並部署降落傘以安全降落。多軸飛行器最適合以即時電池電壓處理,固定翼飛行器則能在空中斷電時滑翔飛行。與固定翼系統不同,多軸飛行器必須為所有馬達供電以穩定飛行。透過監測電池電壓,可以判斷出潛在的危險飛行狀況。

加速度計

附屬於復原系統的三軸加速度計,會持續監測施加在飛行器上的力量。加速度計的目標是要監測無人飛行載具是否呈自由落體狀態。作用在無人機上的外部力量,或許會影響其方向與移動,因此加速度計必須據此監看無人機的是否處在危險狀態。如果失去控制,許多無人飛行載具都無法從自由落體的加速度過程中恢復,此時復原系統就會部署降落傘,並透過繼電器切斷主控的電源。根據加速度計的計算方式,當飛行器在xyz軸上的加速度都是0時,加速度計就會判定飛行器為自由落體狀態。

如何組裝:

電子元件:

1. 蒐集本文列出的所有部件。若不打算使用排針的跳線,可能還需要烙鐵。本篇教學預設所有主板都已安裝排針,就算沒有,購置排針的費用也非常便宜。你還需要將最新的Arduino IDE下載並安裝至你的系統上。程式碼的每一步驟都已有註記文件紀錄。如果你從來沒使用過Arduino,這個專題會是很棒的開始!請根據你的設定編輯代碼。先校準好加速度計和GPS,才能確保每個復原元件發揮功用。首先,我們將為系統設定電子裝置。
 
2. 從你的元件中選出T型電池連接器,再剪斷無人機主電池的地線(或黑色電線)。該繼電器將串聯在黑色電源線的切口之間,用於切斷主系統的電源。剝去黑色電線的兩端絕緣層,將其中一端插入5V繼電器的常開接點(NO),另一端則插入共接點(COM )。
 
3. 切斷與電池T型連接器相連的兩條小「探測裝置」導線,並剝去絕緣層。 這兩條導線提供了路徑,幫助我們偵測無人飛行系統的主電源電池電壓。將兩條導線插入電壓感測器的兩個端子,黑線做為接地線(GND ),紅線則負責連接電路(VCC)。如此一來,便能確保我們執行時的極性和預估數值無誤。
 
4. 由於我訂購的特定元件可能與你不同,我們製作復原系統時所需的步驟也可能不同,你必須斟酌調整。
 
製作一個5 Pin的雙排母連接器。將兩條導線水平焊接,使其中一組垂直連接器的輸入對應到下一個鄰接的輸入。請參閱排母連接器的圖示說明(Female Header Pin Connection.jpg)。該設置和5 條線的母母跳線組相同,我只是不想要再有額外的電線。
 
5. 現在,取一排8 Pin的排母連接器,並將導線焊接在一起,做為5V電源的連接集線器。重複一次相同的步驟,為GND也製作一個連接集線器。

6. 使用母母跳線,將5V繼電器EN腳連接到Arduino D5腳,接著用公母跳線將VCC和GND連接到相應的集線器。注意:集線器先不要和Arduino 5V和GND集線器連接。
 
7. 使用母母跳線將電壓感測器上的S腳連接到Arduino A7腳,將「-」(負極)腳連接到GND連接集線器。若用於更高的電壓檢測,該電壓感測器可做為分壓器使用。

8. 將一組2 Pin的母母跳線組連接到GPS模組上的VCC及GND腳位,並將另一組2 Pin的公母跳線組和接收數據端(RXD)及發送數據端(TXD)連接。接著,再將VCC和GND連接到各自對應的集線器。另外,將TXD連接到Arduino板上的D2腳,並將RXD連接到D3腳。
 
9. 最後,我們必須將加速度計連接到我們的系統。使用我們在步驟4所製作的5 Pin雙排母連接系統,將加速度計插入Arduino Nano的A1到A5類比腳位。請依照以下的指示連接:
 
A1: VCC
A2: X_OUT
A3: Y_OUT
A4: Z_OUT
A5: GND

你可以更改此配置,但是就必須修改代碼來對應你分配的腳位。為使加速度計更加穩定,建議你將VCC連接至Nano的5V電源,並將GND連接至Nano的GND。如此一來,便能為你未來的迭代(iteration)與校準做準備。
 
10. 最後一步是將已提供的Arduino程序(Ballistic_Parachute_System.ino)上傳到你的Arduino微控制器。上傳至Arduino IDE後,請選擇你的主控板和COM端子,然後點擊上傳鍵,就這麼簡單。

降落傘:

注意:看完這個降落傘設計之後,如果你想要的話,我非常鼓勵你自己製作一個。降落傘不過只是用一些繩索,把一塊布料(尼龍非常適合)綁在一起而已。請將你的降落傘由高處拋落測試,以做適當的調整。
 
1. MARS Mini款降落傘能輕鬆與系統連接,因為代碼已寫入Arduino程式,只需要將其連接到我們的系統。為完成此步驟,請將一條導線連接到Arduino Nano的D4腳。
 
2. 將降落傘伺服馬達上的紅線與黑線,連接至先前製作好的5V 和GND集線器,以完成組裝。

校準與測試:

在Arduino代碼中找出加速度計上的平衡狀態(x、y和z軸上的所有力量都相同),測試你的GPS訊號與位置數據,並找出LiPo電池電壓開始下降的數值。這樣的校準過程會花上一段時間,但這最終會讓你的飛行器更安全,保護所有直接或非直接參與的人。
 
祝製作順利!

結論與展望

此系統還有更多改善空間。首先,可以完成更精密的加速度計數據處理,也可以偵測異常的飛行姿態,例如旋翼機上下顛倒的情形,而不單單只是偵測自由落體狀態。特別是針對固定翼飛行器,如果機身的空氣動力穩定,飛行高度也足以在失速時啟動復原系統,那麼降落傘就可以晚一點再部署,讓飛行器在失速時有機會自行復原,或是借助操作員的協助復原。再來,可以界定出更精確的GPS地理圍欄(geo-fence),或許能以FAA的授權或豁免證書(COA)或其他操作規則為基礎,而不僅是從起飛點偵測距離範圍而已。

致謝

此專題於2016年夏季在奧本大學完成,屬於REU(大學部學生實習研究)計劃,由美國國家科學基金會、計劃主持人(PISaad Biaz博士、和計劃副主持人Richard Chapman博士贊助。Chapman博士同時也是最先提出這個問題的人。在此感謝他們的支持。

(譯:鄭芸婷)
【原文】

Social media & sharing icons powered by UltimatelySocial