白露(white dews)是二十四节气中的第十五个节气,是九月的头一个节气,更是干支历申月的结束以及酉月的起始;
时间点在公历每年9月7日到9日,太阳到达黄经165度时;
露是由于温度降低,水汽在地面或近地物体上凝结而成的水珠。
所以,白露实际上是表征天气已经转凉。
2019年9月4日-9月8日,有幸参加了省教育厅在河南师范大学举办“省培计划”项目“2019河南省中小学通用技术教师培训。
在课题设计中我们小组设计一个《智能垃圾桶》。现在创作过程分享一下:
一、作品用途:
我们平常投掷垃圾的时候,需要手掀开垃圾桶盖子或者脚踩垃圾桶底座的开关才能投掷垃圾,当今是一个信息的时代,智能家居已经走进了千家万户,我们利用Arduion板子设计一种智能垃圾桶,可以实现人靠近垃圾桶盖自动打开,人离开后自动关闭的功能,进而 方便大家的生活!
二、作品功能:
1.当人的手或物体接近垃圾桶约15cm时 ,绿灯灭,红灯闪烁 发出声音,垃圾桶自动开盖 ,屏幕显示:Hello ;
2.当人离开垃圾箱,投入完毕 ,红灯灭,蓝灯闪烁 停止播放声音,垃圾桶桶盖又自动关闭 ,屏幕显示:ByeBye 。
三、团队成员及分工:
1.康留元:项目程序编写 ;
2.霍欢欢 沈杰梅 :外壳搭建 ;
3.勾保卫 闫建良 :安装调试 ;
四、耗材清单
1.铅笔
2.彩纸
3.剪刀
4.胶带
5.胶棒
6.小刀
7.中性记号水笔
五、电路连接:
1. 红外传感器, 接arduion板子p12 ;
2.红灯、绿灯分别接 接arduion板子P6、P5 ;
.3.蜂鸣器: 接arduion板子P3 ;
4.舵机: 接arduion板子P4;
六、程序编写
步骤1 在Mind+1.5.6,选择上传模式,连接设备,com24,
步骤2 选择DFRduino UNO 主控板和相关传感器
步骤3 测试红外人体传感器数值
1.人站在红外人体传感器15cm时,串口输出1
2.人远离红外人体传感器时,串口输出0
步骤4 编写程序
步骤5 外观图片
#include <DFRobot_LiquidCrystal_I2C.h>
#include <DFRobot_Servo.h>
double mind_n_RenTiJianCe;
DFRobot_LiquidCrystal_I2C lcd1602(0x20, 16, 2);
Servo myservo4;
void dfrobotTone(int tonePin, int frequency, int duration) {
if(frequency == 0){
digitalWrite(tonePin,LOW);
return;
}
int period = 1000000.0 / frequency;
int pulse = period / 2.0;
pinMode(tonePin,OUTPUT);
for (int i = 1; i <= ((duration * 1000.0) / period); i++ ) {
digitalWrite(tonePin,HIGH);
delayMicroseconds(pulse);
digitalWrite(tonePin,LOW);
delayMicroseconds(pulse);
}
}
void setup() {
Serial.begin(9600);
// 初始LCD屏
lcd1602.init();
lcd1602.backlight();
myservo4.attach(4);
}
void loop() {
// 检测人体是否靠近
mind_n_RenTiJianCe = digitalRead(12);
delay(1000);
// 串口输出是否靠近
Serial.println(mind_n_RenTiJianCe);
if ((mind_n_RenTiJianCe == 0)) {
// 当人靠近垃圾箱,
// 绿灯灭,红灯闪烁,
// 发出声音,垃圾箱打开
// 屏幕显示:please throw rubbish,
digitalWrite(5, LOW);
lcd1602.clear();
dfrobotTone(3, 294, 1000);
lcd1602.setCursor(0, 1-1);
lcd1602.printLine("Hello");
myservo4.angle(abs(75));
digitalWrite(6, HIGH);
delay(1000);
digitalWrite(6, LOW);
}
if ((mind_n_RenTiJianCe == 1)) {
lcd1602.clear();
digitalWrite(3, LOW);
myservo4.angle(abs(10));
lcd1602.setCursor(0, 8);
lcd1602.print("ByeBye");
digitalWrite(5, HIGH);
delay(1000);
digitalWrite(5, LOW);
// 当人离开垃圾箱,
// 红灯灭,蓝灯闪烁,
// 停止播放声音,垃圾箱关闭
// 屏幕显示:byebye,
digitalWrite(6, LOW);
}
}
八、反思与拓展
1、编写舵机程序时,开启垃圾箱盖的角度由170调整75
2.垃圾桶添加人工智能语音识别垃圾类别,效果会更好!
评论