从我的第一个机器人项目开始,我就使用游戏控制器执行命令和功能。这当然是我游戏玩家时代的影响力。我已经使用PS2,Xbox 360控制器进行过项目...但是有一段时间我遇到一些接口问题并决定基于Arduino和nRF24L01(我的第一个用于大型/高级机器人的控制器)制作自己的控制器。
该当前控制器的设计灵感来自N64,但显然具有较少的按钮/功能,因为它主要用于控制基于Arduino的小型机器人和RC汽车。定制的丝印和按钮颜色也受超级任天堂的影响。
基本上,该控制器是具有N64控制器外形的大型PCB。右手柄上的四个按钮...左手的模拟摇杆...一个蜂鸣器,用于根据命令播放某些音色...一个拨动开关打开...另一个拨动开关来更改按钮的功能和摇杆...中间握把保留给Arduino Nano ...,命令由nRF24L01模块远程发送。
制作PCB
使用Inkscape制作形状文件,从原始N64控制器导入图像文件,并使用“绘制Bezier曲线和直线”工具绘制控制器轮廓。
板上元件的布置和布设都是通过Fritzing完成的。使用Fritzing,我还可以导出制造所需的文件(Gerber文件)。
电子和焊接
该项目的组件不需要太多的焊接经验,因为没有使用SMD组件。为了焊接四个按钮,操纵杆,蜂鸣器和排针,我使用了无铅焊料和50W铁。
控制器还具有两个拨动开关,在其上我焊接了跨接线,如视频和图中所示,该跨接线已连接到板上。
带天线的nRF24L01模块也通过跨接线连接到板上。
打造基地
我做了一个使控制器操作起来更舒适的基础……因为触摸组件的插针很难操作。
它由两层高抗冲聚苯乙烯制成。
以PCB为指导,直接在聚苯乙烯板上绘制轮廓。
我用美工刀切掉了不需要的碎片,留下了约1mm的边缘。
这两个层用即时粘合剂连接在一起。
然后,我从边缘去除多余的材料。首先用美工刀。然后用砂纸。
底座还具有拨动开关和带天线的nRF24L01模块的支架。
制作底座的最后一步是绘画……首先使用喷涂底漆……最后使用哑光黑完成。
程式设计
控制器(实际上是Arduino Nano)的编程是通过Arduino IDE进行的。
代码非常简单...例如,当我按下蓝色按钮时,控制器发送17。当我按下红色按钮时,控制器发送18 ...,接收器将获取这些值,而Arduino将执行分配给他们的动作。
该项目中使用的物料清单
Arduino nano 1个
母排针(1x15) 2个
拇指操纵杆 1个
12毫米带彩色帽的触觉按钮 4个
拨动开关 2个
跳线(F / F) 12
跳线(M / M) 1个
带天线的nRF24L01模块 1个
蜂鸣器 1个
9V电池座 1个
M3螺丝 10个
M3支架 5个
M2螺丝 3个
M2螺母 3个
高强度聚苯乙烯板(2毫米厚) 1个
热缩管(小件) 1个