STM32F4+LD3320+ESP8266基于物联网技术的智能语音管家

        该系统以STM32F401CCU6微处理器作为控制核心,选择气体烟雾传感器MQ-2、温湿度传感器DHT11、火焰传感器来检测衣柜中甲醛等不良气体烟雾的浓度、温度及湿度、火焰是否存在,将上述检测值显示在衣柜OLED屏幕中,并通过ESP8266物联网WiFi通信技术传输至阿里云平台,显示在手机APP中,从而实现对衣柜的远程实时监测功能。同时,可以使用LD3320语音识别模块及手机APP两种方式下达指令,操控衣柜中负离子发生器,臭氧发生器、小风扇及PTC加热片的运行与停止,从而改善衣柜中的空气并消毒衣物,实现对衣柜的远程管理功能。用户还可以通过指令控制舵机旋转,使得不同季节的衣服呈现在最外侧。另外,还设计了报警功能,当出现火焰时蜂鸣器发出报警;当衣柜内气体烟雾浓度超过设定阈值发出警报。这一基于新兴物联网技术的智能语音衣柜管家课题的研究,具有很大的市场前景和社会价值。

控制代码

					printf("\"杀菌\"OK\r\n"); /*text.....*/
								GPIO_SetBits(GPIOB,GPIO_Pin_2);
												break;
			case CODE_1KL4:		/*命令“关灯”*/				
					printf("\"关闭杀菌\"OK\r\n"); /*text.....*/
						    GPIO_ResetBits(GPIOB,GPIO_Pin_2);
												break;			
			case CODE_2KL1:	 /*命令“....”*/
					printf("\"加热\"OK\r\n"); /*text.....*/
							 GPIO_SetBits(GPIOB,GPIO_Pin_10);
												break;
			case CODE_2KL2:	 /*命令“....”*/
					printf("\"关闭加热\"OK\r\n"); /*text.....*/
							 GPIO_ResetBits(GPIOB,GPIO_Pin_10);
												break;
			case CODE_2KL3:	 /*命令“....”*/
					printf("\"开启预警\"ok\r\n"); /*text.....*/			
					while(1)
					{
						delay_ms(1500);
						tDHT11_rec_data(&tem,&hum);
						sprintf(display_buf, "tem:%.2d C",tem);
						OLED_ShowString(1,1,display_buf);
						printf("AT+MQTTPUB=0,\"/k1eopI97kM6/ESP8266/user/update\",\"%d\",1,0\r\n",tem);	//发温度数据
						
						delay_ms(1500);
						tDHT11_rec_data(&tem,&hum);
						sprintf(display_buf, "hum:%.2d Rh",hum);
						OLED_ShowString(2,1,display_buf);
						printf("AT+MQTTPUB=0,\"/k1eopI97kM6/ESP8266/user/update\",\"%d\",1,0\r\n",hum);	//发温度数据
						
						delay_ms(1500);		
						MQ2_Value=Get_Adc_Average(ADC_Channel_1,10)*100/4095;//模拟烟雾浓度的值
						sprintf(display_buf, "smoke:%.2d mg",MQ2_Value);
						//printf("smog= %d \r\n",MQ2_Value);
						OLED_ShowString(3,1,display_buf);
						fmq(MQ2_Value);							  
						printf("AT+MQTTPUB=0,\"/k1eopI97kM6/ESP8266/user/update\",\"%d\",1,0\r\n",MQ2_Value);	//发温度数据
						
						delay_ms(1500);
						if(Fire_Get() ==1) {GPIO_SetBits(GPIOB, GPIO_Pin_15);//当检测到火焰
						OLED_ShowString(4,1,"Fire:Normal ");
						//printf("AT+MQTTPUB=0,\"/k1eopI97kM6/ESP8266/user/update\",\"%d\",1,0\r\n",1);
						}
						else{GPIO_ResetBits(GPIOB, GPIO_Pin_15);
						OLED_ShowString(4,1,"Fire:Warring");
						//fmq(MQ2_Value);							  
						printf("AT+MQTTPUB=0,\"/k1eopI97kM6/ESP8266/user/update\",\"%d\",1,0\r\n",119);}
						OLED_Update();

					}					
//		  Servo_SetAngle(90);
//			delay_s(1);
//		  Servo_SetAngle(0);
//			delay_ms(1500);
//		  Servo_SetAngle(90);
//			delay_ms(10);

//			MQ2_Value=Get_Adc_Average(ADC_Channel_1,10)*100/4095;//模拟烟雾浓度的值
//			printf("smog= %d \r\n",MQ2_Value);
//			delay_ms(1000);
	//		tDHT11_rec_data(&tem,&hum);
	//		printf("Temp= %d \r\n",tem);
	//		delay_ms(2000);
	//		printf("hum= %d \r\n",hum);
	//		delay_ms(2000);
			case CODE_2KL4:	 /*命令“....”*/
					printf("\"短袖\"OK\r\n"); /*text.....*/
						Servo_SetAngle(60);
						delay_s(3);
						Servo_SetAngle(0);
						delay_ms(1500);
												break;
						
			case CODE_3KL1:	 /*命令“....”*/
					printf("\"棉袄\"OK\r\n"); /*text.....*/
						Servo_SetAngle(120);
						delay_s(3);
						Servo_SetAngle(0);
						delay_ms(1500);
												break;
			case CODE_3KL2:	 /*命令“....”*/
					printf("\"外套\"OK\r\n"); /*text.....*/
						Servo_SetAngle(180);
						delay_s(3);
						Servo_SetAngle(0);
						delay_ms(1500);
												break;
			case CODE_3KL3:	 /*命令“....”*/
					printf("\"后退\"识别成功"); /*text.....*/

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值