概述
我们做一个“别摸我”的摇头机器人,它可以利用安装在两耳位置的红外反射传感器感应人手从哪个方位接近,并将身体歪向另一侧,避开人手。
适合套件:mCookie302
模块清单
模块
其他设备
- USB数据线*1
- 传感器连接线*3
- 传感器外壳
- 积木或其它固定结构
模块搭建
搭建
- 将模块和传感器组装起来:
- 将红色的核心模块,电池底座与绿色的扩展模块吸在一起;
- 将舵机转接板连接在Hub的6/7管脚;
- 将舵机连接在舵机转接板的1管脚(下面三个插针);
- 将红外反射传感器连接在Hub的A0/A1、A2/A3管脚。
- 将USB连接线一端插入电池底座,另一端连接电脑;
编程
使用的程序块
编程思路
通过比较两侧传感器的距离值,两者进行比较,左侧障碍物距离更近,则舵机向右转,右侧障碍物距离更近,则舵机向左转。其他情况舵机保持中间位置。
开始编程
1、读取两个红外反射距离并存储
变量L用来存储左侧红外反射传感器的值,变量R用来存储右侧红外反射传感器的值,将A2管脚红外反射传感器的值存入变量L,将A0管脚红外反射传感器的值存入变量R。
2、判断哪个方向有物体靠近并控制舵机躲避
如果R减去L的结果大于100(左侧障碍物距离更近)。
舵机转到60度(向右扭头躲避)。
如果L减去R的结果大于100(右侧障碍物距离更近)。
舵机转到120度(向左扭头躲避)。
否则舵机转到90度(头部竖直)。
测试结果
上传成功后,没有物体靠近时舵机在90度(中间)位置,物体靠近A0管脚的红外反射传感器,舵机转到60度(向右)位置,物体靠近A2管脚的红外反射传感器,舵机转到120度(向左)位置。
Q:我感觉机器人躲闪速度很慢,如何能加快机器人的闪避速度呢?
A:我们可以将舵机的转速改为100,这样机器人的闪避速度就加快啦。
技术规范
相关案例
Q&A
|