基于51单片机的WiFi的温湿度智能开关设计

一.硬件方案

硬件电路主要由单片机电路、温湿度采集电路、液晶显示电路、继电器电路、wifi模块电路组成。本设计采用STC89C51单片机完成整个系统的控制流程。手机端软件设置操作界面登陆账号,wifi模块连入网络,实现系统设计。
主要由51单片机+最小系统+LCD1602液晶显示模块+温湿度采集模块+继电器驱动模块+风扇模块+LED指示灯模块+按键模块+AT24C02存储模块+蜂鸣器报警模块;如图:
基于51单片机的WiFi的温湿度智能开关设计

二.设计功能

(1)AT24c02芯片掉电存储设置的上下限。
(2)四个按键为设置、加、减、确定,实现了阀值的调节。
(3)LCD1602液晶显示,上面行显示当前的温度和湿度,下面行显示相应的冷、热、干、湿。
(4)配用全数字型温湿度传感器DHT11,温度测量范围0℃–50℃,湿度测量范围20%RH—90%RH,可以满足一般需要。
(5)当超过阀值的时候,有蜂鸣器闪烁报警提示。并有开关可以关闭或打开报警.
(6)当温度或湿度超限后,报警信号灯点亮同时相应的继电器吸合.

三.设计原理图

(1)原理图主要采用AD软件进行设计,如图:
基于51单片机的WiFi的温湿度智能开关设计

(2)Protues仿真图如下:
基于51单片机的WiFi的温湿度智能开关设计
(3)PCB图
基于51单片机的WiFi的温湿度智能开关设计

四.软件设计

主程序源码

void main()
{
	char *str2="AT+CIPSEND=14\r\n";
	unsigned char i;
 
	memset(&RsBuf[1],' ',18);
    Uart_init();
    lcd_init();
	wifi_init();

	while(1)
	{
	  	if(FlagStart==1)
		{ 
		     TR0=0;
             RH();
 			 FlagStart = 0;
			 write_1602com(0x83);						  //指定第一行第三个位置
			 write_1602dat(temperature%100/10+0x30);	  //显示温度的十位
			 write_1602dat(temperature%100%10+0x30);	  //显示温度个位
			 write_1602com(0x8d);						  //选中第一行第十三个位置
			 write_1602dat(humidity%100/10+0x30);		  //显示湿度十位
			 write_1602dat(humidity%100%10+0x30);		  //显示湿度个位
			 SendString("{\"UN\":\"yhdifiot024@163.com\",\"VER\":\"A1.1\",\"ID\":\"234103\",\"MAC\":\"18fe35f1cd4a\",\"TP\":\"");
			 //784551388@qq.com是账号  	234100是ID
	         SendASC(temperature%100/10+0x30);	  //1
	         SendASC(temperature%10+0x30);		//1
	         SendString("\",\"HM\":\"");		   //  8
	         SendASC(humidity%100/10+0x30);	  //1
	         SendASC(humidity%10+0x30);		//1
	         SendString("\",\"SOC\":\"99\",\"RET\":\"1\"}\r\n");	 
			 TR0=1;
			 Timer0_count=0;
			 Timer0_miao=0;
		}
	  
		write_1602com(0xc7);			 //选中第二行第七个位置
		if(LED1)						 //如果LED1等于1
	    write_1602dat('0');				 //显示0
		else							 //LED1不等于1
		write_1602dat('1');				 //显示1
		if(LED2)
	    write_1602dat('0');
		else
		write_1602dat('2');
		if(LED3)
	    write_1602dat('0');
		else
		write_1602dat('3');
		if(LED4)
	    write_1602dat('0');
		else
		write_1602dat('4');

		delay(100);
	}
    
}

如需资料请关注公众号“单片机实例设计”,首页回复“智能开关”获取资料;
基于51单片机的WiFi的温湿度智能开关设计

上一篇:python:将numpy数组写入csv文件


下一篇:《安富莱嵌入式周报》第228期:2021.08.30--2021.09.05