arduino综合实例_避障小车

Arduino zjczyx 149℃ 0评论

1.  说明:此实例实现通过蓝牙连接小车和手机,在手机端用软件控制小车前进,后退,左/右转向,控制行驶速度。并能让小车自动行驶,躲避障碍。用的是最便宜的黄色四驱小车,加了一个电机驱动模块(用于控制小车),一个蓝牙模块(用于与手机连接),一个距离传感器(测试前方是否有障碍物),一个舵机(在遇到障碍时,控制距离传感器转动,判断左/右哪边空间更大)。

2.  硬件:(加起来百十来块钱)

1)  小车硬件:小车(30+),含车架,车轮,电动机等。最便宜的一套30块钱左右(四驱),实验用没什么问题。

2)  电机驱动:电机驱动模块可使用L298n(5+)或L293D(8+)。一个L298N可驱动两个电机,一个L293D可驱动四个电机。

3)  传感器和步进电机:在小车上,一般用超声距离传感器(4+)加小舵机(6+)或红外距离传感器x 2 (2+)用作判断前方是否有障碍物。有的小车正面安装一个超声,左前右前各安一个红外;有的把超声安在一个小舵机上,通过步进电机实现“转头”的功能。超声距离传感器可测到具体的距离,而红外距离传感器则是设定一个阀值,据此判断回传0或1。由于日光里也有红外线,所以在户外会有一定影响,建议使用超声传感器加舵机的方案。

4) 电池和充电器:可使用航模电池加充电器(35+),也可以用电池盒。由于需要提供Arduino板和电机驱动的供电,一般使用6-12V,用电池盒则电压降得较快,建议购买航模充电电池。

5)  Arduino板:本例中使用了Arduino UNO R3 (15+) 和sensor shield v5.0 扩展板(6+),Arduino上一般有一个3.3V和一个5V供电,三个GND,外接硬件超过两个,供电就比较难插,这里至少需要一个蓝牙模块,一个距离传感器,一个控制传感器方向的舵机,一个电机驱动模块。扩展板为每个IO都配上了VCC和GND;且sensor shield v5.0可直接插在Arduino UNO R3上,非常方便。

6)  小车控制:
红外遥控接收器(2+)或蓝牙模块(17+)
红外遥控和蓝牙模块取其中之一即可,各有优势:红遥控接收器很便宜,可以和任何一个家用遥控板配合使用,但是必须对准,才起作用,小车行进的过程中就不太好用,另外因为日光中有红外线,所以户外不太好用;蓝牙模块稍贵,只要在附近就能收到,但需要其它蓝牙设备控制,如:手机控制,同时还要在手机端写相应程序,比较复杂。

7) 其它小配件:杜邦线若干(5+):公对公,母对公,公对母,15-20cm,开关一个(0.2+)

3.  小问题

1)   超声传感器如何固定?
超声传感器一般安装在小车前端,有时通过舵机相连。有的店卖一些塑料的连接板,购买时请注意和超声传感器是否配套,如不配套,可能安装不上,或者影响侦测距离。

2) 如何调速?
对于调速,有人说通过使能端调速ENA/ENB,我用的是L298n红板(控制四个电机-两两串联,也带得动),试了不管用,于是用Arduino的5,6,9,10(PWM)连接电机驱动板,并用AnalogWrite写入0-255即可调速。

3)   小车电机如何与电机驱动板相连?
我买的小车电动机有个铜片,我在其上焊了两条杜邦线,然后用胶封了一下。

4.  后记:总体来说,装硬件调试还是很麻烦。对于增加更多功能,我觉得比较好的解决方案是与手机相连,把更多软件的逻辑放在手机端,也能更好地利用手机的传感器,声音,以及摄像头等等,以实现更多功能,同时又不会让电路变得过于复杂。比如:把手机放车上,使用其上的重力传感和指南针,判断小车位置,绘制地图(手机上也有距离传感器);手机用蓝牙控制小车;用OpenGL辨别图像,实现追踪等功能;根据小车情况,加一些语音提示…

转载请注明:智能百宝箱 » arduino综合实例_避障小车

喜欢 (0)

您必须 登录 才能发表评论!