Arduino 手部卫生计时器:教导孩子正确洗手的趣味项目
项目简介
这是一个非常适合亲子制作的 Arduino 项目,旨在通过直观的灯光提醒,帮助孩子养成正确洗手的习惯。在疫情时代,教导孩子「洗手 20 秒、关水龙头节约用水」的重要性显得尤为关键。本项目使用红外传感器检测手部靠近,启动计时:RGB LED 先亮红灯提示开始洗手,20 秒后转为绿灯表示完成,同时提醒关闭水龙头,践行环保理念。
核心组件清单
- Arduino UNO ×1 —— 主控板
- RGB 共阴极 LED ×1 —— 红/绿/蓝三色指示
- 红外收发器模块 ×1 —— 检测手部靠近
- 双面胶带 若干 —— 固定电路板
- 面包板、杜邦线、USB 数据线等基础材料
电路连接说明
请参考原理图进行接线:
- 红外传感器 OUT 接数字引脚 5(输入)
- RGB LED 的 R、G、B 脚分别接数字引脚 2、3、4(输出),共阴极接 GND
- 所有模块 VCC 接 5V,GND 接地
原理图已包含在项目文件中,建议焊接至万用板以便长期使用。
核心代码逻辑
/* Arduino 手部卫生计时器
由 Random Stuff We Make 社区开发
Instagram: @random_stuff_we_make */
void setup() {
pinMode(2, OUTPUT); // 红
pinMode(3, OUTPUT); // 绿
pinMode(4, OUTPUT); // 蓝
pinMode(5, INPUT); // 红外传感器
Serial.begin(9600);
}
void loop() {
int sensorVal = digitalRead(5);
Serial.println(sensorVal);
delay(100);
// 默认状态:绿灯亮(待机)
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
if (sensorVal == 1) { // 检测到手部
digitalWrite(3, LOW); // 关绿灯
digitalWrite(4, LOW); // 关蓝灯
// 红灯闪烁/常亮 20 秒
for (int i = 0; i < 20; i++) {
digitalWrite(2, HIGH);
delay(1000);
}
digitalWrite(2, LOW); // 熄灭红灯,循环回待机
}
}
功能亮点与改进建议
- 直观易懂:红/绿灯切换,无需阅读文字,幼童也能理解
- 节水提醒:计时结束暗示关水龙头,培养环保意识
- 低成本:核心器件不足 50 元人民币
- 可扩展性:可加蜂鸣器报警、OLED 显示倒计时、甚至接入 IoT 记录洗手频次
制作步骤概览
- 在面包板上按原理图搭建电路,上传代码测试
- 确认无误后,焊接至洞洞板,用双面胶固定于洗手台镜柜侧面
- 调整红外传感器角度,使其能准确检测伸手动作
- 邀请孩子试用,讲解「红灯洗手、绿灯停止」的规则
致谢
感谢 UTSOURCE.net 提供电子元器件支持。关注 Instagram @random_stuff_we_make 获取更多创意项目。
制造工艺
- Arduino 数字骰子:LCD 显示随机点数的电子骰子
- DIY Arduino USB 游戏手柄 — 自制高性能游戏手柄
- 使用 SparkFun 7 段数码管构建可靠的 Arduino 倒计时器
- Pixel Chaser:Arduino Nano 单键 NeoPixel 追逐小游戏
- Arduino 简易排斥式磁悬浮:电路与 DIY 指南
- Alexa 语音控制 Arduino 智能家居中枢:基于 Yun + PubNub + AWS Lambda 全栈实现
- Arduino Nano 驱动 NeoPixel 矩阵:自制霓虹乒乓游戏
- 智能手语手套:柔性传感器 + 加速度计 + 蓝牙将手势转文字/语音
- DIY LED 轮盘赌游戏机 —— Arduino Nano 打造单人桌面街机
- Arduino 智能安防系统:超声波测距 + 舵机扫描 + 声光报警
- DIY 智能免洗洗手液分配器:Arduino Nano + 超声波 + 舵机
- 用蜂鸣器和摇杆制作经典 Arduino LCD 街机游戏