分享

自制Wifi遥控小车

 长沙7喜 2013-11-21

改进(基本原理):利用网络摄像头报警输出端口的继电器开开合合形成一个二进制的编码,然后用Arduino翻译,扩展摄像头I/O。

准备材料

  1、网络摄像头(上海KaiCong)
  2、Arduino控制板
  3、电机驱动扩展板
  4、Arduino稳压板(为了保证网络摄像头稳定的电源)
  5、10k电阻(端口上拉)及面包线
  6、小车底盘、(2WD / 4WD)(含直流电机、电源)

  这些东西TB上都能淘到,其中,网络摄像头和Arduino控制板比较核心,一个眼睛一个大脑,放到最后重点说。

L298P电机驱动扩展板:

wificar-01

  为了保证摄像头使用电压的稳定,我没有使用Arduino板上的5V电压,而是单独用了一块稳压扩展板。该扩展板在小车调试前期可不用,直接用稳压器给网络摄像头提供电源。

稳压扩展板:

wificar-02

  小车底盘(2WD /4WD)是路虎5履带底盘。最后找了一个直插的10k电阻,再准备一些面包线,这样所有的材料都准备好了。

组着完毕后的底盘:

wificar-03

开动!

  稳压扩展板的使用很简单,我们先来简单介绍一下。如下图的标识,将电池接到扩展板的输入端子,输入端子旁边的两个跳线帽要跳到PWRIN位置。然后调节输出电压微调电位器,用万用表测量电源输出端电压使其稳定在5V。最后将网路摄像头电源接口与扩展板电源输出端连在一起。

wificar-04

  至于电机驱动板的使用相信大家都比较熟悉了,这里再简单提两句。先要选择控制方式,这个制作中使用的是PWM方式。再者就是连接直流电机,如下图所示的连接端子。M1+和M1—连接一个直流电机,M2+和M2—连接另一个直流电机,电机驱动板占用Arduino的4、5、6、7脚。

wificar-05

连接眼睛和大脑

  最后,重点来说一下Arduino控制板与网络摄像头的连接。网上有朋友用摄像头公司提供的插件做了一个运行在PC端的app,以此来控制继电器产生宽窄不一的脉冲。这里我没有采用这种方式,做app也不是谁都能完成的。本人采用的方式是直接用Arduino捕获摄像头内控制步进电机的信号,拆掉了摄像头中左右转的步进电机,用摄像头本身左右旋转的信号来控制小车的左右转,而用继电器的吸合来控制小车的前进与停止。

wificar-06

具体方法如下:

  导线引出后,我们合上摄像头的底盖,来看看它背面的接口。如下图所示,在摄像头后面最中间的是天线接口,天线右侧的4个I/O口就是报警输出端口,4个I/O用1、2、3、4标识,其中1、2是报警输出端口,分别接到了继电器两端,3为报警输入端口(此端口未用),4为摄像头内容电路的数字地。

  这3个I/O(不包括3号I/O)加上之前的A+和B+总共5条线,与Arduino的连接关系如下图所示。连接摄像头内报警继电器一端的2脚连到Arduino的GND,而连接继电器另一端的1脚连到Arduino的9脚,同时在9脚加上10k的上拉电阻,这样当继电器未吸合时,9脚因为上拉电阻,所以状态为高;而当继电器吸合时,9脚接GND,所以状态为低。网络摄像头报警接口的4脚也要连接到Arduino的GND,以使网络摄像头控制板与Arduino共地。A+与B+分别连接到Arduino的2、3脚,这两个脚如果连反了可以在程序中调整。

wificar-07

  步进电机的控制方式是不断的变化A、B两相上的电压大小和电流方向,这样在A+和B+上就会产生一串脉冲。使用示波器观察我们发现,当发送左转的命令时,首先在A+上产生脉冲,而当发送右转的命令时,首先在B+上产生脉冲,效果如下图所示。

wificar-08

  我们就利用A+、B+上的信号差异,以及继电器的吸合来实现对小车的控制。Arduino端用到了外部中断功能,2脚对应Arduino外部中断0,3脚对应Arduino外部中断1。

  详细代码见下一页。>>

 

推荐阅读

  pconline万能的网友中自然也不乏高手,单片机全手工版,教程点这里,成品晒单帖点这里

20131101153701

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多