一.硬件方案
智能家居环境监控系统的整体电路主要由stm32单片机最小系统,光MQ-2烟雾传感器电路,红外人体检测电路,DS18B20温度传感器,LCD1602显示电路,水泵驱动电路,风扇驱动电路,LED指示灯,蜂鸣器报警电路;原理图如图:
PCB如下:
二.设计功能
1.通过MQ-2烟雾传感器及检测电路对周围环境中的烟雾浓度值数据进行采集,由模数转换电路将mq-2检测电路输出的模拟量转换成数字量,根据电压值换算出当前烟雾浓度,通过DS18B20温度传感器检查当前环境温度,采用单总线的通信发送,最后将数据传送给微控制器,并由微控制器对数据进行处理分析。
2.单片机将烟雾传感器的检测数据显示在LCD1602液晶显示屏上,使烟雾温度浓度检测结果一目了然,方便人们随时随地的了解周围的烟雾浓度状况。
3.当系统检测到烟雾浓度超过报警值时,水泵开启,蜂鸣器报警,并发送短信。
4.如果温度浓度过高,便由微控制器通过报警电路进行必要的提醒,此时蜂鸣器响起,风扇开启,并发送短信。
5.人体红外通过热释电模块检查是否有人,如果开启防盗模式,检查到有人通过gsm来发送短信,并蜂鸣器报警。
6.设有的5个按键可对各个传感器参数的报警值进行调整;分别为设置键、加一键、减一键、一键报警键、报警开关键。
三.软件设计
主程序源码
int main(void)
{
u16 test_adc,count=0;
u8 shanshuo=0;
u8 RT_BJ = 0;
u8 send_flag1=0;
u8 send_flag2=0;
u8 send_flag3=0;
delay_init(); //延时函数初始化
NVIC_Configuration(); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
KEY_IO_Init();
DS18B20_Init();
delay_ms(300);
BEEP_DISENABLE();
RTHW_Init();
LCD_Init(); // 1602初始化
LCD_Write_String(0,0," GSM Init... ");
Usart1_Init(9600);
gsm_init();//gsm初始化
Adc_Init();
delay_ms(100);
LCD_Write_String(0,0,</