2016/6/4 更新 - JJ1000 飛行時卡頓問題
利用 Arduino 來處理遙控器 PPM訊號(一般接教飛線或模擬器那個接頭),再將訊號藉由 NRF24L01+(BK2423/XN297 應該也行) 模組發射訊號來控制部分的玩具四軸.
RCGroup 原文(DIY Multiprotocol TX Module)是應用在 Taranis X9D 系列遙控器上,多高頻頭(CYRF/CC2500/NRF24L01/A7105)的專案,後來法國高手 Goebish 把 NRF24L01 部分擷取出來進行簡化/修改後的版本(CX-10 JR Module (Green, Blue PCBs)),相關程式碼及成品資料可參考這裡(Github).
台灣 RCTW (DIY Futaba FF9 & X9D+ 遙控 JJ1000
)及Facebook非公開社團 "小四軸亂搞社團 (穿越機) - 勇哥" 也有相關討論.
基本上裝上之後可以完敗偉力精準控,遙控非常多玩具四軸及部分初階版四軸.
自己 DIY 一個之後發現,切換協定時,常常都會卡關,切不過去,切不回來,有時遙控會 Lag,遙控距離很短.................
建了一個測試平台:
誤殺許多高頻頭之後,最後發現竟然是 Arduino nano 在搞鬼~~~???
麵包板上的完全正常,右邊那顆一直出問題(若不切換協定就還好!)
等到另一顆 Arduino Nano到手 , 重新再測試一次:
價錢由左至右遞減..........最左邊最貴,使用 FT232 晶片,右邊2片都是用 CH340G 晶片,中間那片有焊針附USB線LED是2紅+2綠,最右邊最便宜沒焊針沒USB線LED是4紅,電路板看似都是副廠公版製造的!
再將最右邊那片放上來,還是無法切換協定.............
難道真的不同便宜的 Arduino Nano 差這麼多?那早應該災情慘重才對呀?
原本電源供應一直是使用 3.7V升壓到5V的升壓器供電(如最上方照片上方那片),想到抽屜裡有一個 5V/3.3V 電源供應電路板,死馬當活馬醫,拿出來試試吧! 把平台改成這樣:
5V供電給 Arduino Nano , 高頻頭3.3V 也不用 Arduino Nano的 3.3V,而改用這個模組的 3.3V 供電.
Bingo 竟然OK了 ................. 最右邊那片原本不行的,改成這樣接法之後也可以了!!
原想就此打住,忍不住又把原本由供電模組提供 3.3V給高頻頭的部分,接回 Arduino Nano 的 3V3 port,結果 .......... 也OK!
所以,結論是:
1, 電源供應應該是一個原因,供電品質?電流?......
2, 不同廠牌 Arduino Nano 對於供電狀況敏感度不同,供電狀況差的時候,品質差的 Arduino Nano 就會先出狀況
3, 我人品不佳,竟然給我碰上最差組合!
結束!
---------------------------------------------------------------------------------
補充:
Arduino UNO 的測試平台:
---------------------------------------------------------------------------------
筆記一個資訊,Goebish的電路板及討論文中有提到,Frsky Taranis X9D(+) 的 PPM 輸出部分盡量不要直接接到 Arduino 的D2 接腳,最好用兩顆 10K歐姆電阻分壓之後再給 D2(若能接上一顆 BSS138 nFET更好),請看這裡,因為 PPM 輸出電壓太高.
實際拿電表量了幾台遙控器的 PPM輸出跟接地間電壓,大部分都在 3.6V以下,只有 Frsky Taranis X9D+ 的 PPM 輸出部分電壓高達 6.67V,看來接上分壓電阻似乎是比較好的做法!
若是PPM輸出電壓比較低的遙控器,Goebish也建議至少接上一顆電阻,以防意外狀況發生,請看這裡!
有時間再來繼續研究 Goebish 的電路板了!
高頻頭:
除了 NRF24L01以外,玩具四軸上拆下的 BK2423 其實也能用(下圖中間那顆,還含 PA(功率放大IC),真是不錯!) XN297 晶片有時間再來測試了.
Goebish 有提醒,若是使用不含 PA 的高頻頭,要改程式裡面的輸出功率,原本是:
#define RF_POWER TX_POWER_80mW
改成
#define RF_POWER TX_POWER_158mW
加大功率,增加遙控距離,對於常在家飛的飛友來說,可能就夠了!
這個模組超便宜..............請自行上露天找吧!
請看這裡
2016/4/11 更新:
部分飛友反映在 X9D/Radio link AT10上面都遇到操控時會反應慢半拍的狀況(lag),有飛友反映換成史巴克的Arduino nano 後就OK了! 目前累計兩家 85元的 Arduino nano 都會出現異常狀況.
2016/4/21 更新:
1, 使用不含 PA 的高頻頭 power 由 80mW改成158mW的確會增加遙控距離,但幅度很小,所以無PA的高頻頭還是以室內使用為主吧!!
2, 託友人買了兩個 Arduino pro mini 5V/16M跟3.3V/8M , 結果只來一片慘的是沒標示規格! 上傳程式時用 5V/16M跟3.3V/8M 都可以正常上傳沒有問題,但 ............... 用 5V/16M 時,JJ1000 功能完全異常,有時可對頻,但油門無反應,H8 mini 完全無法對頻; 搞了半天改用 3.3V/8M 上傳,Bingo 正常了!! 不過操控起來有時會頓一下(不是Lag),好像瞬間沒訊號,不知道是不是 8MHz 處理速度太慢了???
2016/5/3 更新:
半路遇到岔路,直接改為 OLED顯示+按鍵選擇協定了......Orz
請看這篇
2016/6/4 更新:
先前小四軸FB陸續有飛友反映此模組搭配JJ1000 飛行時會出現卡頓(lag)的問題,經詢問原作者 Goebish 後,他表示可能是 TXID 搭配問題, 只要在遙控器/模組啟動時把方向舵(RUDD/CH4) 打到最左邊,系統會自動更換 TXID(自動亂數產生,無法指定)再試試看應該可以解決;昨天試了三顆電池,目前都沒有發生卡頓(lag)的問題,看起來似乎有效~~~







