概述
做一个自动感应门,用两个红外反射传感器检测有人靠近,舵机控制开门。
适合套件:mCookie302
模块清单
模块
其他设备
- USB数据线*1
- 传感器连接线*3
- 传感器外壳
- 乐高或其它固定结构
模块搭建
搭建
- 将模块和传感器组装起来:
- 将红色的核心模块,电池底座与绿色的扩展模块吸在一起;
- 将舵机转接板连接在Hub的6/7管脚;
- 将舵机连接在舵机转接板的1管脚(下面三个插针);
- 将红外反射传感器连接在Hub的A0/A1、A2/A3管脚。
- 将USB连接线一端插入电池底座,另一端连接电脑;
编程
使用的程序块
编程思路
自动门内外两侧分别检测距离,A或B的距离小于790(任何一侧有人接近),自动开门,同时延时2秒等待行人通过。A和B的距离均大于800(门两侧都没人)则关门。
开始编程
1、读取两个红外反射传感器距离并存储
变量A用来存储一侧红外反射传感器的值,变量B用来存储另一侧红外反射传感器的值,将A2管脚红外反射传感器的值存入变量A,将A0管脚红外反射传感器的值存入变量B。
2、判断任意一侧有人接近则开门
A或B的距离小于790(任何一侧有人接近)。
舵机转到10度,速度50度/秒(慢慢开门)。
延时2秒等待行人通过。
3、判断两侧都没人则关门
A和B的距离均大于800(门两侧都没人)。
舵机转到170度,速度50度/秒(慢慢关门)。
测试结果
当没有人靠近门口时,舵机处于关门状态;有人靠近门口时,舵机转为开门状态。
将两个红外反射传感器分别安装在门的两侧,用乐高搭建自动门外型。铁丝固定在舵机摇臂上,摇臂转到170度时关门,摇臂转动到10度时开门。
Q:有个问题?如果人恰好站在门框里,传感器是探测不到的,这时关门会夹到人,能不能加个关门提醒呢?
A:可以呀,用蜂鸣器或者灯都能提醒。
声明及赋值,有人接近,舵机控制开门
彩灯准备。
door变量用来记录门的开闭状态。
door赋值为1(门开了)。
门两侧没人,关门并点亮关门指示灯
如果door等于1(门是开着的)则执行内部程序。
door赋值为0(门关了)。
红灯闪烁3次(关门前提醒)。
技术规范
相关案例
Q&A
|