從我的第一個機器人項目開始,我就使用游戲控制器執(zhí)行命令和功能。這當(dāng)然是我游戲玩家時代的影響力。我已經(jīng)使用PS2,Xbox 360控制器進行過項目...但是有一段時間我遇到一些接口問題并決定基于Arduino和nRF24L01(我的第一個用于大型/高級機器人的控制器)制作自己的控制器。
該當(dāng)前控制器的設(shè)計靈感來自N64,但顯然具有較少的按鈕/功能,因為它主要用于控制基于Arduino的小型機器人和RC汽車。定制的絲印和按鈕顏色也受超級任天堂的影響。
基本上,該控制器是具有N64控制器外形的大型PCB。右手柄上的四個按鈕...左手的模擬搖桿...一個蜂鳴器,用于根據(jù)命令播放某些音色...一個撥動開關(guān)打開...另一個撥動開關(guān)來更改按鈕的功能和搖桿...中間握把保留給Arduino Nano ...,命令由nRF24L01模塊遠程發(fā)送。
制作PCB
使用Inkscape制作形狀文件,從原始N64控制器導(dǎo)入圖像文件,并使用“繪制Bezier曲線和直線”工具繪制控制器輪廓。
板上元件的布置和布設(shè)都是通過Fritzing完成的。使用Fritzing,我還可以導(dǎo)出制造所需的文件(Gerber文件)。
電子和焊接
該項目的組件不需要太多的焊接經(jīng)驗,因為沒有使用SMD組件。為了焊接四個按鈕,操縱桿,蜂鳴器和排針,我使用了無鉛焊料和50W鐵。
控制器還具有兩個撥動開關(guān),在其上我焊接了跨接線,如視頻和圖中所示,該跨接線已連接到板上。
帶天線的nRF24L01模塊也通過跨接線連接到板上。
打造基地
我做了一個使控制器操作起來更舒適的基礎(chǔ)……因為觸摸組件的插針很難操作。
它由兩層高抗沖聚苯乙烯制成。
以PCB為指導(dǎo),直接在聚苯乙烯板上繪制輪廓。
我用美工刀切掉了不需要的碎片,留下了約1mm的邊緣。
這兩個層用即時粘合劑連接在一起。
然后,我從邊緣去除多余的材料。首先用美工刀。然后用砂紙。
底座還具有撥動開關(guān)和帶天線的nRF24L01模塊的支架。
制作底座的最后一步是繪畫……首先使用噴涂底漆……最后使用啞光黑完成。
程式設(shè)計
控制器(實際上是Arduino Nano)的編程是通過Arduino IDE進行的。
代碼非常簡單...例如,當(dāng)我按下藍色按鈕時,控制器發(fā)送17。當(dāng)我按下紅色按鈕時,控制器發(fā)送18 ...,接收器將獲取這些值,而Arduino將執(zhí)行分配給他們的動作。
該項目中使用的物料清單
Arduino nano 1個
母排針(1x15) 2個
拇指操縱桿 1個
12毫米帶彩色帽的觸覺按鈕 4個
撥動開關(guān) 2個
跳線(F / F) 12
跳線(M / M) 1個
帶天線的nRF24L01模塊 1個
蜂鳴器 1個
9V電池座 1個
M3螺絲 10個
M3支架 5個
M2螺絲 3個
M2螺母 3個
高強度聚苯乙烯板(2毫米厚) 1個
熱縮管(小件) 1個