【项目背景】
起夜上厕所的时候总要摸黑去打开过道廊灯的开关,本来就迷迷糊糊,总是找不到开关。因此市面上出现了一些感应小夜灯,在夜晚有人经过的时候自动点亮,不需要去开开关。这对那些经常起夜的人来说很方便。我们也可以做一个简单的感应小夜灯。
【器材选型】
感应小夜灯依靠红外热释电运动传感器来检测人的运动。至于夜灯,我选了一个便携 USB 灯,可以直接用充电宝供电。主控板可以选择好好搭搭的好搭酷 mini,十分小巧,不需要额外的扩展板转接。此外还需要一个继电器和一个电池盒。
步骤1 器材连接
因为充电宝和灯都是 USB 接口,因此通过 DC2.1 转 USB 接口连接到简易继电器上。将简易继电器接到好搭酷 mini 的 D1 接口,红外热释电运动传感器接到 D0 接口。电池盒接到供电 PH 2.0 接口。
步骤2 编写代码
代码部分很简单,如果 D0 接的红外热释电运动传感器检测到有人经过就把 D1 的继电器接通,点亮夜灯并延时 3 秒。没有人的时候就把继电器关了,关闭夜灯。
打开 http://www.haohaodada.com/Core/ 或离线软件好搭 Block,选择好搭酷 mini,编写代码如下:
代码
#include "Arduino.h"
#include "Wire.h"
#include "Servo.h"
#include "keyrest.h"
#include "Haoda.h"
void setup()
{
keyrest_init();
pinMode(6,INPUT);
pinMode(7,OUTPUT);
}
void loop()
{
if(digitalRead(6)){
digitalWrite(7,1);
delay(3000);
}
else{
digitalWrite(7,0);
}
}
步骤3 运行测试
将代码上传到好搭酷 mini 中,测试一下运行效果。
演示视频:
【小结】
夜灯功能基本实现,不过白天也会起作用。最好加上光线传感器,使得只有晚上才触发开灯。
评论