開源自制6通道航模遙控器,Arduino Pro Mini NRF24L01模組
前言
前段時間跟著LOLI大神的教程製作了LOLI三代控,效果很好。但是,由於LOLI三代控的接收機帶有資料回傳功能,也就是接收機的無線模組也承擔了發射資料功能,所以接收機也要使用帶有功率放大晶片的NRF24L01模組才能實現遠距離通訊,這不僅抬高了成本還帶來了體積的增加。於是筆者打算自制一個較簡單的6通道航模遙控器,正好手上有一個沒有接收機的天地飛-06X,決定對其進行改造,一番查閱資料後用Arduino Pro Mini開發板實現了基礎的功能,效果還不錯。
1.材料清單
USB轉TTL模組*1
Arduino Pro Mini開發板*2
NRF24L01無線通訊模組*2
ams1117-3.3電壓轉換晶片1個
100uF電解電容*2
104電容*2
三腳開關*4
10k電阻1,20k電阻1
導線及插針若干
2. 硬體部分
按照原理圖焊接電路,盡情飛線叭,有條件的話可以設計PCB做的好看一些。
a)遙控器端
遙控器端負責傳送資料,所以使用可以無線透傳2000m的NRF24L01無線通訊模組;
筆者的飛線不忍直視 ,100m的NRF24L01模組不夠用,果斷換了2000m的。
b)接收機端
接收機端負責接收資料,使用100m的NRF24L01無線通訊模組足夠了。
3.軟體部分
a)遙控器端
將USB轉TTL模組連線電腦,引腳接線如下:
TX0—RXD
RX1—TXD
VCC—3V3
GND—GND
開啟Arduino IDE,選擇遙控器端的程式開啟,這裡要下載RF24封裝庫,下載方法如下:
輸入RF24搜尋,選擇圖中的庫進行安裝,安裝完畢後點擊關閉;
燒寫程式之前,要先選擇自己的開發板型號,如下圖,處理器選擇自己的開發板型別,埠選擇USB轉TTL所在的埠號
點選上傳,燒寫程式;
通訊地址可以改為自己喜歡的地址,每個位是十六進位制(0~9、A~F) ;
向各個方向撥動搖桿,通過串列埠監視器檢視輸出值,然後把每個通道的最小值、 中值、最大值填入程式中,最後再上傳一次程式碼。
完整的Arduino程式碼如下...