接触Arduino已经差不多2个月了,最大的乐趣在于既可以自己DIY硬件又可以写控制软件。工作比较忙,只能利用周末时间搞一下,在网上买了一块Arduino Mega 2560以及一些传感器,开始的时候就写点小程序玩玩那些传感器,后面觉得还是应该做搞出一个像样点的东西,于是开始DIY一个遥控的4WD小车。当然不可能“重新发明车轮”啦,从网上买了小车的配件(外壳、4个直流电机套件)、电机驱动板。本来想通过Iphone来做远程控制端的,但网上资料表明要么用Hijack,要么用连线,第二种方案明显不符合预期,第一种方案花销太大。其实还有另外一个需要实践的方案,用PS3的无线手柄来控制,不过似乎有点复杂。还是先用轻量一点的解决方案——ACP220,遥控距离远,而且花销要比用xbee小。小车到手后,发现底板上的固定孔位置不能满足自己需求,另外用于固定的铜柱也没有,还有就是自己要解决Arduino控制器的供电问题,所以前两个周末都跑去华强北,买了线材、热缩管、固定柱、焊枪、胶枪、电池连线。直流电机的有一个孔位可以固定,不像钻孔,只能用胶枪固定,不过效果还不错。一切硬件就绪后,开始写软件,我直接将四个直流电机的控制写成了一个MotoCar的库,放在library里面直接用。因为ACP220是用串口通讯的,不想用在IDE中输一个控制符还要敲一下回车的方式来控制,于是用MFC写了个简单的Dialog程序,可以直接响应按键然后发送控制符。
需要注意的是ACP220的RF TRx rate一定要大于(不要等于)串口的rate,不然会出现采样不到数据的问题。
一张PS3手柄的拆解照
Reference:
http://www.arduino.cc/
http://www.seeedstudio.com/(位于深圳,在深圳同学的可以自己取货)
http://www.dfrobot.com.cn/
http://blog.flamingoeda.com/
http://www.circuitsathome.com/
http://www.sparkfun.com/
http://hacknmod.com/hack/top-40-arduino-projects-of-the-web/