NAVIO+ & Raspberry Pi & HUAWEI E3372

玩過用 4G 連線 Parrot DISCO,感受過無距離限制的FPV飛行後,很想以 Ardupilot 做同樣事: 以 4G 網絡連結無人機與 ground station,實時控制無人機,獲取飛行數據 以 4G 網絡傳送無人機鏡頭的實時影像 1小時或以上的飛行時間,30公里或以上的飛行距離 便在倉底找回2015年買下的NAVIO+,就以它來製作一部 4G 連線的定翼無人機,以下就是我的製作筆記。 使用的硬件 NAVIO+(現在出產的是 NAVIO2) Raspberry Pi 2 Model B SD card(8GB 或以上) Raspberry Pi camera module WiFi USB(方便連線做設定,但非必須) HUAWEI E3372 (4G USB) FX61機架 Panasonic NCR18650B Li-ion 電池(4S3P) 軟件設定 開始時,跟著 NAVIO 的官方文件做,由於我使用 ZeroTier 建 VPN,連結無人機與 ground station,NAVIO沒有這方面的資料,這部分設定要自己處理,以下就是軟件設定部分的筆記。 Raspberry Pi 基本設定 下載預先配置的 Raspbian image (md5),這是NAVIO廠方提供的專用 image 把下載的 image file 燒錄到 SC card,在 Mac 的 Terminal 執行以下程序(使用其他 OS 可參考官方文件): // show the SD card diskRead More →

DALRC XR220 + HGLRC F3

這是兩年前的拍下的影片,記錄了一次砌四軸機由開始到起飛的過程。這不是什麼砌機教學,只是縮時拍攝效果好有趣。 This is a video taken two years ago, recording the process from the start to the take-off of a FPV multi-copter. This is not a formal “how-to” video, but the effect of time-lapse shooting is interesting.

Parrot Disco installed Insta360 One X

我不能相信Parrot Disco能如此自由地拍攝。當我做了這個測試,效果比預計的還要好。超正! 「拍攝」 我把Insta360安裝在㡳部,就像很多其他的航拍機一般。現在我可以拍攝很多以前只能在航拍機才能取得的角度。 由於是360度全景video,在飛行時無需分心拍攝角度與取景。通過後期製作,我可以在電腦前找到喜歡的角度才剪輯。請留意(10:20)的畫面,那隻迎面衝來的鷹,是後期製作才發現的。由於速度快,現場補捉是沒有可能的。 「缺點」 解像度不足,此片是HD(1920×1080),不能拍攝4K 大風時、高速飛行或爬升時,鏡頭會有震動 (jello effect),這是後期製作不能消除的 (00:33) 後期製作會花費較多時間。360 video 的檔案較大,電腦的功能要求也較高 「安裝」 我在機身電池後方開了一個小洞,剛剛足夠Insta360穿進去,只把鏡頭部分留在外面。由於機身的發泡膠有彈性,Insta360能緊貼著機身,不會中途脫落。 「降落」 由於鏡頭在下方,Parrot Disco沒有起落架,在平地降可能會損害到Insta360,所以找到塊長滿長草的草地降落,效果滿意。(12:07) 「製作軟件」 Adobe premiere 2018; GoPro VR plugin; 「長距離飛行」 多謝disco4g的作者,提供了長距離飛行的工具。此片由單一鏡頭由起飛到降落,最遠距離是6.7公里。(08:26) 「VR Video」 以同一個文件,正在編輯VR video版本, 大家可以比較,請留意。

Parrot DISCO connected 4G network using iPhone hotspot

透過 Disco4G,你可以通過4G網絡來遙控 Parrot Disco,不再有遙控距離的限制。只要有電,有4G訊號,Disco可以去到10, 20甚至50公里以上。 這是我第一次的測試的過程。原裝電,最遠7.2公里,來回用電80%。 所需硬件: Parrot Disco* Huawei E3372h 天線 (2x CRC9) for the modem USB 轉線(Micro USB 2.0 to USB 2.0) 4G SIM咭2張 (基於覆蓋範圍考慮,買了CSL的點數咭) * 3個月前,官網把 Parrot Disco 價錢降至四仟餘港元,看來是想清貨。我便快手入了一部只賣HK$3,200的,原因只是包裝盒花了! 以下內容更新中⋯⋯ 所需軟件: Disco 所需服務: 所需Apps: 安裝: 下載 disco4g softmod 修改以下config文件: ; 登入Disco 上載softmod  

EMax 12A ESC flash BLHeli wiring

如何在銀燕12A電調寫入BLHeli以支援OneShot125? 在淘寶買了銀燕12A電調,寫著是支援OneShot125。但其實「支援」不代表「安裝」,它裡面沒有寫入最新的BLHeli,也不能用OneShot125模式,最後唯有自己flash。(後來,貴一點的價錢,也有買來便可以用的OneShot版本,體積也小一點,這裡不是重點). 過程中發現這個video最有用: 透過以上的video,終於裝了最新版本的BLHeli,也可以使用OneShot125模式了。以下記錄了操作過程,方便有需要的同道。 準備 銀燕12A電調 EMax 12A ESC Arduino Nano(其他的Arduino也可以) 安裝BLHelioSuite 接線 如下圖焊接三條電線,完成後會移除,所以不用太在意鬆緊。接線的點很小,小心不要短路或燒掉ESC。(也可以學上面的YouTube,DIY一個頭,用手對位按著來flash,但個人覺得要對準個位好難,更要另一邊操電腦!) 線的另一端連接Arduino如下圖 把Arduino用USB接上電腦。 把ESC接上LiPo電池。 安裝(待續⋯⋯)  

DALRC XR220

剛砌了一部DALRC XR220很喜歡她的效能和表現。對於FPV我還是新手,但她的操控比我以前所飛過的都穩定。 機件設定:Frame : DALR(大力) XR220Motors: Emax motor 2205Props : 5″ (3 blade)FC : HGLRC F3 V3FC firmware : Cleanflight v1.13ESC: Littlebee 20AOnboard OSD firmware : MWOSDCCD: Runcam OwlCamera: RunCam 2Battery : 1500mAhWeight:298g (without battery) 飛控用了HGLRC F3 V3:它在SP Racing F3上加上了分電板和OSD,使機身輕了,接線也簡單很多。 買來的Littlebee 20A ESC,已安裝BlHeli v13,上OneShot125無問題。用Cleanflight flash ESC很方便,就順手update了firmware到v14.7了。 HGLRC F3 V3板內置MinimOSD,由於onboard,很多與飛控連接的線都不用了,方便很多,安裝時也簡單很多。(後記:經過幾次飛行後,OSD無原無故消失了,再接上PC也連接不了,是不是組件太密集使硬件易壞?不知道。) 用了幾次Emax motor 2205,性能很好,高轉數時沒有刺耳的高頻聲。為了簡潔,所有線當然要trim到盡了。 學飛試機片,請指教: 放飛地點:舊啟德機場跑道,由啓德公眾碼頭找有一條小路可以入去。 後記:這處現成為大盆的一部分,入唔到去了。

3D Printed FPV micro drone

3D Printed micro-copter for indoor FPV flight. FC: SP RACING F3 EVO Brush – running Cleanflight Motors: Brushed motors (8.5 x 20mm) 35000 RPM in 3V Props: 60mm Cam + VTx: 5.8G mini 25mw with CCD cam Rx: MicroFrX Receiver (8 Ch PPM Receiver) Weight: 50g (with 500mAh battery) Flight time: 4.5 minutes

最遠距離2.7公里 上次試過1.5公里的飛行,今次打算試飛3公里,用的也是IBCrazy的Airblade天線。 飛行路線以mission設定好,可讓我專心留意OSD的數據-用電量,距離等等。 到了2.7公里斷了圖,心一驚就回航了。其實只是mission轉向時天線在一些角度下被降落架遮擋所至,感覺上超越3公里都無問題。 電量問題 問題反而是電量支持不了,電量下跌至14.4時我還在海中心,mission設定了時速30公里,這個速度一定返不到來。就立刻轉為手動模式,一於高速返航。裝上了兩顆5400mAh 4S電池,飛行時間也只有10-12分鐘。試過後,覺得Y6機架是為了安全性而放棄了效率的設計。 最高時速95公里 高速返航時在OSD看到速度可達90公里以上,當時油門還未推盡,怕電機支持不了而收油了。感覺上,SkyHero真的是一隻力量型的機。 國產OSD質素很好 因為minimosd的顯示很差,還有兩次無故死掉,很想找一個代替品,直至找到了PlayUAV OSD。顯示很細緻,功能也多,硬件穩定,一試便知道我會繼續用了。何況是國產開發,還是開源project,就更少見,更應該支持了。 硬件設定 Air Antenna: IBCrazy 5.8 GHz Airblade Antenna Ground Antenna : FatShark Patch Antenna Frame: Sky Hero Spy 600 Controller : Pixhawk Firmware : ArduCopter 3.3 Props : APC 12″ MR Motors : Antigravity MT2814 710KV Batteries : 4S 5400mAh battery x 2 OSD : PlayUAV OSD Total distance : 6.2km Farthest distance : 2.7km

要同時控制航拍機飛行及鏡頭的角度是一件困難的事,幸好多數航拍機都有自動導航的功能,只要在軟件中輸入路線,高度,速度等設定,航拍機就能自動航行。拍攝者就能專心地控制鏡頭的方向及角度,往往能拍出更多變化的片段。 我會在APM Planner小心計劃好路線,要特別留意飛行高度和地形的變化,最好是自己熟識的地點,而路線也要在視線範圍之內,有意外時可以立即接手操控。也會把自動返航(RTL)的高度設定得高一點(例如50米)。 我也會設定同一條路線飛行多次(DO_JUMP),第一次飛行時鏡頭向前平放,注要留意飛行高度,是否太接近障外物,做好除時取消導航的準備。當第一圈成功,就能專心於取景了。 在APM Planner裡還有一個很好用的功能(DO_SET_ROI),ROI是region of interest的簡寫,意思是航機的頭永遠向著這一點。上圖的#5就是ROI,所以航機飛到#6, #7機頭就會向著那更個半島。到了#8就取消了ROI,航拍機又會回復向前。 以下是一條短片,一次過飛了兩圈約六分鐘,已得到很多不同角度的片段。

How to DIY remote control LED light to your multicopter? 請先看以下完成品的片。可遙控開關,改變閃光效果,效果式樣也可以自定。如果你也想DIY到你的多軸機上,只要小於HK$100,一些焊接技巧和簡單的編程知識。 需要的材料如下: WS2812 燈條 SparkFun Pro Micro (Arduino) (淘寶貨) 470Ω電阻 5v 電源(可用一顆降壓板) 關於WS2812 我以為LED燈條就是LED燈條啦,但原來它們有很多種,甚麼WS2801, WS2811 和 WS2812,而我們要用的是WS2812,因為無論在接線和編程上它都比較簡單方便。 通常WS2812都是以一米為單位賣的,例如你隻四軸機想裝四條燈條,你可以買一條回來自己剪開便好了。 WS2812只有三條接線,5v電源,地線和數據線。要注意數據的方向,燈條上有箭頭指示。數據線要焊在DIN上, 如果焊錯了在DOUT,燈條是不會著的。 關於電源 你需要提供5v電源給Arduino和LED燈條。你可以用獨立電源或由多軸機電池取電。多軸機電池一般由7v-21v不等,所以必須降壓才可接上,否則你會馬上燒掉Arduino和燈條。 也不要由receiver,flight controller取電。如果你使用了大量的LED,receiver和flight controller都沒有足夠的電流可以提供,最壞的情況可使你失去愛機。 如果已經接上了燈條,不要單獨用USB接上Arduino,要先接上5v電才插USB,否則可能會燒了Arduino。 如果用降壓,也要知道它可提供的電流。每粒LED使用60mA電流,例如一條一米的燈條有60粒LED,60 x 60mA = 3600mA = 3.6A,要確保你的降壓板能提供3.6A電流而不會過熱燒掉。否則便要滅少LED的數量。  每一顆LED用60mA電(紅綠藍各20 mA) 關於Arduino Arduino是控制LED燈條如何閃動的控製器,如果你沒有接觸過Arduino,可以看看它的網站,有很清楚的教學,基本的如何使用就不在這裡說了。 Arduino有很多版本,我使用了SparkFun Pro Micro,因為它細,而且有USB頭,不用FTDI,比較方便。 淘寶有很多這個版本的複製品,名稱都不一樣,文件更不用說了。找了好一回才知道原版是SparkFun Pro Micro,也找到了清楚的文件,使用起來也確定些。(對不起,我有想過買原版的,但運費貴過塊版,實在買不下去。) LED data pin連接Arduino 我用了pin9-6連接4條LED,可以根據需要連接不同數量的燈條,pin位也可以任意,編程時對應輸出的pin位就行了。還要加上470Ω電阻,以保護Arduino。  關於遙控 我們可以用遙控來開關LED,改變顏色,閃光效果等。我用的receiver是FrSky X8R,把channel12連到Arduino的A0 pin,同樣地channel和pin位沒有硬性規定,視乎你的需要而改變,編程時應改動就好了。 我設定了channel12到遙控的TRN switch,這個鍵會自動回彈,剛好可用來每撥一次改變LED到下一個的顯示模式。     在Arduino編程控制WS2812 我們已完成了硬件的連接,可以看看如何加入軟件,使LED做事了。 控制LED,有兩個很好用的library: AdaFruit NeoPixel FastLED (FastSPI_LED)  如果你還沒有安裝Arduino的軟件,可以先看看入門篇。 如果你用SparkFun Pro Micro,可以跟這裡裝driver。 我用的是FastLED,由它的example中找了一些合適的再作修改,得到以下的程式:   [cpp] #include <FastLED.h>Read More →