1.以51单片机为控制核心,利用温湿度传感器和烟雾传感器收集和处理室内环境数据;
2.LCD1602液晶实时显示温湿度、烟雾浓度等数据;
3.用户可以按键设置温湿度上下限报警阀值和烟雾报警阀值;
4.当室内温LED灯具提供声光报警;
本文设计了一个基础MQ-2和DHT11传感器室内温湿度-烟雾报警系统可实时监测和显示室内温湿度、可燃气体/烟雾浓度,并提供预警值设置和声光报警功能。
主要由系统硬件组成AT89C52单片机最小系统,MQ-2烟雾传感器模块,DHT11温湿度传感器模块LCD系统框架如下:1602显示模块、按键模块和声光报警模块。 其中,AT89C52单片机作为整个系统的控制核心,用于接收和处理传感器收集的信息,并发送处理后的信息LCD进行实时显示。
当室内温湿度、可燃气或烟雾浓度超过用户设定的阀门值时,相关LED指示灯亮起,蜂鸣器发出声音。
打开名称为室内温湿度烟雾监测.pdsprj模拟文件,双击单片机,点击弹出对话窗口中的黄色文件夹小图标,加载Monitor.hex运行仿真文件(位于C程序文件夹中),效果如下。 由图可知,LCD第1行显示Monitor System(监控系统)第二行显示当前室内温度为27℃,湿度为55%RH,烟雾浓度为14%。LCD显示结果与传感器上的值一致,表示数据采样正确。
通过DHT11传感器上的三个红色小箭头模拟室内温度和湿度的变化。前两个红色小箭头用于增加或减少值,后一个小箭头用于切换温度和湿度。
由于Proteus仿真没有MQ-2烟雾传感器元件,MQ-2传感器的原理是将烟雾浓度直接转化为电阻变化,因此用滑动变阻器代替。
点击滑动变阻器RV2上下红色箭头模拟室内烟雾浓度的变化。
例如,我们将室内温度调整为31℃,湿度为48%RH,结果如下,烟雾浓度为7%。 温湿度上下限报警阀值和烟雾报警阀值可通过调整键、加键和减键设置。
点击调整键,系统进入温湿度上下限,烟雾报警阀值设置界面,如下图所示。T代表温度,H代表湿度,S代表烟雾浓度。
默认温度范围为:20-35℃,湿度范围为40-85%RH,烟雾报警阀值为:15%。 进入设置界面后,温度下限光标闪烁。此时,可以通过添加/减键调整其值。调整完成后,继续单击调整键,温度上限光标闪烁。此时,可以调整上限。
依次类推,设置所有参数后,再次单击调整键,退出设置界面,返回系统显示界面。
例如,我们将温度范围设置为28-36℃,湿度范围为40-65%RH,烟雾报警阀值为5%。 当系统检测到室内温度和湿度不在设定的上下限范围内或烟雾浓度大于报警阀值时,蜂鸣器鸣叫,对应LED灯亮了。室内环境恢复正常时,报警解除。
返回显示界面后,系统监控当前室内烟雾浓度为7%,大于设定的5%。此时,烟雾报警灯点亮,蜂鸣器发出声音,提醒用户注意。 综上所述,模拟运行效果符合设计要求。
while(KeySet_P) // 如果设置键没有按下,则一直处于烟雾限值的设置 {
if(KeyDown_P==0) // 判断 “减按键“ 是否被按下 {
if(AlarmSK>0) // 只有当烟雾限值大于0时,才能减少1 AlarmSK--; LcdGotoXY(0,14); // 重新刷新显示更改后的烟雾限值 LcdPrintNum(AlarmSK); LcdGotoXY(0,15); // 重新定位闪烁的光标位置 DelayMs(350); while(!KeyDown_P); } if(KeyUp_P==0) // 判断 “加按键“ 是否被按下 {
if(AlarmSK<99) // 只有当烟雾限值小于99时,才能增加1 AlarmSK++;
LcdGotoXY(0,14); // 重新刷新显示更改后的烟雾限值
LcdPrintNum(AlarmSK);
LcdGotoXY(0,15); // 重新定位闪烁的光标位置
DelayMs(350); // 延时
while(!KeyUp_P);
}
}
LcdWriteCmd(0x0C); // 取消光标闪烁
LcdShowInit(); // 液晶显示为检测界面的
DelayMs(10); // 去除按键按下的抖动
while(!KeySet_P); // 等待按键释放
DelayMs(10); // 去除按键松开的抖动
(1)基于MQ-2和DHT11的室内温湿度烟雾报警系统设计论文;
(2)Proteus8.6仿真;
(3)C程序;
(4)AD原理图;
(5)Visio流程图;
(6)参考资料;
(7)元器件清单;
重要的事情说一遍!!!
由于室内环境监测系统设计是我的原创设计,获取全套资料,
请搜索查看我的【公】(众*)“号”:交院小智