基于STC89C52单片机的智能家居系统

基于STC89C52单片机的智能家居系统一、开发环境/工具:环境:keil4器件:STC89C52RC、Wifi模块(ESP8266)、DHT11温湿度传感器、声音传感器,雨水传感器、LCD1602 二、项目描述:1、使用DHT11采集当前环境温度、湿度信息,监测敲门、监测室外天气;2、通过无线通信ESP8266模块发送到服务器,服务器连接局域网;3、手机可以通过访问局域网来访问家中的数据信息; …

一、开发环境/工具:

环境:keil4

器件:STC89C52RC、Wifi模块(ESP8266)、DHT11温湿度传感器、声音传感器,雨水传感器、LCD1602

 

二、项目描述:

1、 使用DHT11采集当前环境温度、湿度信息,监测敲门、监测室外天气;

2、 通过无线通信ESP8266模块发送到服务器,服务器连接局域网;

3、 手机可以通过访问局域网来访问家中的数据信息;

 

三、硬件模块描述:

基于STC89C52单片机的智能家居系统

图1 原理图

绘制系统板以最小系统板为原型,内外机功能实现不同,雨水传感器需要外接,所以绘制了最小系统板外界扩展传感器,外机由于天气变化无法预见,不装配LCD屏幕,以免损坏;

基于STC89C52单片机的智能家居系统

          图2 PCB图

 

四、具体功能及实现

用户可随时在局域网中获取室内室外的温度、湿度等信息,有人敲门时、室外下雨时会实时收到提醒。

功能实现:

内机主函数:

基于STC89C52单片机的智能家居系统

外机主函数:

基于STC89C52单片机的智能家居系统

ESP8266模块初始化函数:

基于STC89C52单片机的智能家居系统

 

将一系列的AT指令按照芯片手册要求通过串口发送到ESP8266模块后开启透传模式;

 

DHT11模块原理:

基于STC89C52单片机的智能家居系统

DHT11模块函数:

基于STC89C52单片机的智能家居系统

 

基于STC89C52单片机的智能家居系统

获得的温度湿度存放在全局数组RHS和TEM中;

 

五、功能展示:

硬件连接:

基于STC89C52单片机的智能家居系统

 

手机端联网后,打开Netassist软件,开启TCP server模式,设置端口号8080,端口号可以自行设置,最好大于两千,选择GBK编码方便中文显示;

基于STC89C52单片机的智能家居系统

Client端上电连接后,server端会收到操作提示信息;

开机上电后LCD显示启动画面和欢迎界面,此时后台给WiFi模块ESP8266发送AT指令,连接到路由器,连接到服务器并开启透传模式,透传模式下,服务器与WiFi模块的通信可以直接通过串口传输;

基于STC89C52单片机的智能家居系统

如图所示是,有LCD显示的为内机,有雨水传感器的为外机,启动时后台需要10秒左右的时间初始化各个模块,并开启WiFi模块的透传模式。

初始化接收后,内机lcd显示室内温湿度,此时初始化结束,系统稳定运行。

基于STC89C52单片机的智能家居系统

 

配置相应的外部中断检测声音传感器的敲门动作,主函数循环检测雨水传感器检测是否下雨,检测到之后均通过串口发送相应的信息给ESP8266,然后通过无线模块发送给单片机;

基于STC89C52单片机的智能家居系统

DHT11传感器通过IO口传输数据到单片机,当服务器端发送对应命令的时候,主机通过已经开启透传模式的ESP8266接收到数据,通过串口传输给主机,主机经过判断命令返回相应的:室内温度,室内湿度,室外温度,室外湿度给服务器。

 

  

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/38598.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注