准备零件是一件复杂的工程,网络上的文章铺天盖地,一个人一个花样。经过了两三天的查阅资料、筛选,我大致确定了所有材料。如果后面做到某某具体功能发现缺少零件会后续补充。
所选用的零件是根据你所要实现的功能而定,并不是越多、越复杂越好。最初我打算直接在淘宝上购买一整套智能小车套件,涵盖了底盘、各种传感器、摄像头、驱动等等,还想要买一个麦克纳姆轮金属底盘。后面想了一下,发现没有必要,看起来花里胡哨实际上现阶段根本用不到。所以奉劝大家,一切从简,实用就好。
既然前面提到了零件根据功能而定,那么确定功能就是首要的事情。智能小车最常见的功能不外乎就是避障、寻迹、遥控等。
既定需求
1、首先,它得能跑;
2、避障 ——> 红外避障、超声波避障;
3、寻迹 ——> 红外寻迹;
4、感知人体;
5、语音控制;
6、自动驾驶;
7、目标追踪并自动响应;
8、深度学习,图像、人脸识别。
选定材料
与上面要求对应:
1、能跑起来,就需要小车底盘模块,动力以及控制系统。某宝上售卖的亚克力板小车底盘三四十就可以拿下,并且自带轮子和四电机。当然,驱动电机就需要电机驱动板,以及电池。控制系统看标题就知道,当然是树莓派啦,这里选用的是树莓派 3b+,因为 4b 的散热性能好像有些差劲,而且 3b+ 的性能已经足够用了。
2、自动避障根据原理可以分为红外线感知避障和超声波感知避障,分别对应红外传感器和超声波传感器。当然,超声波避障也能玩出花来——超声波摇头避障,而超声波模块本身是不能摇头的,这就需要大名鼎鼎的舵机了,当然,得给他配上个云台。
3、寻迹。寻迹没有什么花哨的,识别地上铺的黑白条。用到的同样是红外传感器。不过这里我选择的是红外4路寻迹传感器,性能更加出色,可以提前探测到大角度转弯,适合90°拐角。
4、感知人体主要依赖人体温度与环境温度的差值。需要用到人体红外传感器。
5、语言控制。主要逻辑需要依靠编程实现。另外语音输入需要用到麦克风阵列(也就是声学传感器)。
6、自动驾驶。同样主要依靠 python + OpenCV 编程实现逻辑。这里需要用到摄像头。推荐使用树莓派官方摄像头,另外,摄像头需要横向以及纵向转动,依靠摄像头本身并不能实现,所以同样需要用到舵机,而且得是双舵机,毕竟一个舵机智能控制一个方向的转动。双舵机需要搭配云台使用。
7/8、目标追踪并自动响应以及深度学习,图像、人脸识别这两点都是依靠上述零件实现。
总结陈述
* 小车底盘 + 4车轮 + 4电机;
* 红外传感器;
* 超声波传感器 HC-SRO4(搭配单舵机云台);
* 人体红外传感器;
* L298n电机驱动板;
* 18650可充电电池 *3 + 电池盒;
* 树莓派官方摄像头(搭配双舵机云台);
* 麦克风阵列(PlayStation Eyc 或者 Respeaker 2-Mics Pi HAT)
* 树莓派 3b+;
* 树莓派保护壳;
* 铜柱若干,螺丝螺母若干;
* 杜邦线 公对母、公对公、母对母若干。