基于NodeMCU的智能玻璃百叶窗控制系统的设计

2023-09-13 12:04林朋右王佳豪蔡益富
黑龙江科学 2023年16期
关键词:百叶窗舵机雨滴

林朋右,王佳豪,蔡益富

(泉州职业技术大学,福建 泉州 362000)

0 引言

随着科技的不断进步,人们对居住环境的舒适性、便利性、节能性要求不断提高,智能家居已成为市场热潮[1]。智能家居利用网络与传感器技术,实现了家居设备与家居环境的互连及交互,是一种智能化控制、自动化管理的新型家居系统。

传统的智能家居产品存在一些问题,如使用不方便、功能单一、安全性差等,这限制了智能家居的进一步发展。设计一种基于NodeMCU的智能玻璃百叶窗控制系统,使窗户能够根据天气变化自动开合,实现自动化控制及智能化管理。与传统的手动控制方式相比,本设计更加智能、便捷、节能,采用多种传感器技术,实时感知室内与室外的温度、湿度、光线、雨量、风力等参数,用户可通过手机或电脑远程控制并监控窗户的状态及运行情况,令窗户的开合更加智能化、精准化,实现窗户在不同天气环境下的自动开合控制,为人们提供更好的生活体验,满足人们对智能家居的需求,有望成为未来智能家居发展的重要方向之一。

1 总体设计

智能玻璃百叶窗控制系统的整体结构及外观设计如图1、图2所示。

图1 整体结构设计

该系统通过传感器采集信息,与本地数据进行比对,获得匹配的气象信号,根据预设的控制逻辑自动调整百叶窗的开合角度,以实现室内温度、湿度及光线的控制及窗户在不同天气环境下的自动开合控制。当室内温湿度值为30%~80%时,百叶窗的打开角度约为50°~60°;当温湿度小于30%时,为了避免室内过于干燥,百叶窗的打开角度约为 20°~30°;当温湿度大于80%时,为了避免室内过于潮湿,百叶窗的打开角度约为80°~90°。当风力大于4级或下雨时,为了避免风雨侵入室内,百叶窗直接关闭。

2 硬件设计

NodeMCU ESP8266模块是一款基于ESP8266 WiFi芯片的开源硬件平台,主要优势体现在强大的WiFi连接能力、丰富的硬件接口、开源硬件平台及丰富的软件支持等方面,已成为实现智能化控制及自动化管理的核心元件,能够为智能玻璃百叶窗窗控制系统提供强大的控制及联网功能[2],通过连接数字舵机、显示终端及多种传感器,实时感知环境参数,根据预设的控制逻辑自动调整开合角度,通过WiFi连接到互联网,实现设备之间的远程控制及监控。支持多种编程语言及软件库,加快了编写及调试代码的速度[3],提高了系统的性能及可靠性。硬件设计如图3所示。

图3 硬件设计

2.1 传感器模块硬件

采用多种传感器来检测环境信息,包括雨滴传感器、风力传感器、DHT11数字温湿度传感器及光敏亮度电阻传感器。雨滴传感器采用反应板与信号转换模块相互配合,通过检测反应板电阻值来判断是否有雨滴,当雨滴落入反应板时,反应板阻值会发生变化,信号转换模块将采集的数据转化为数字信号,通过D0端口传输给控制器进行处理[4]。风力传感器内含发电机及叶片,当风力作用于叶片时,会带动发电机转动,产生模拟电压输出。为了避免电压过高导致控制器损坏,通过电压检测模块将马达输出电压降低到1/5,再经过A0端口传输给控制器进行处理[5]。DHT11数字温湿度传感器采用数字式温湿度传感技术,内含正电子湿度计与NTC温度计,通过特殊的数字模块采集技术及温湿度传感技术输出数字信号,通过串行单线接口传输给控制器进行处理[6]。光敏亮度电阻传感器采用感光元件,将光信号变换成灵敏电信号,包括红外波长、紫外线等,通过探测器检测光线或将光信号转换成其他感测器的侦测元件,输出数字信号,通过特殊的包装形式连接到控制器进行处理。

利用数字式温湿度传感技术、感光元件技术等技术,采集环境信息,将其转化为数字信号,通过特定接口传输给控制器进行处理,实时检测环境信息,从而实现自动控制。

2.2 无线通信模块

主要实现WiFi通信及物联网连接,完成状态监控、远程控制及联网,用户可通过手机APP或网页等查看并控制,实现监控家具、自动开合、调节百叶角度等功能,还能实现与其他智能家居设备的联动(如与智能灯光、空调等)及更加智能化、便捷化的居家生活。在技术方面,NodeMCU ESP8266模块采用WiFi通信技术及物联网连接技术,能够实现多种WiFi协议(如802.11 b/g/n等),支持多种加密方式(如WPA/WPA2-PSK等),可保证通信的安全性及稳定性。NodeMCU ESP8266模块支持多种物联网协议(如MQTT、HTTP等),可与其他智能家居设备及互联网连接[7]。无线通信模块的工作流程是连接WiFi及物联网、接收控制命令、执行控制命令,连接到正确的WiFi网络,获取网络连接及IP地址等信息[8],连接到物联网平台,获取控制命令及传输数据,接收用户的控制命令(如开合百叶、调节角度等),将其转化为控制信号,将控制信号传输给控制器,控制器根据信号控制开合及角度等。

2.3 电源模块

使用LM2596S DC-DC可调降压模块,体积小,功率低,适合安装在玻璃百叶窗内部,布线方便。能够将输入电压稳定降至所需的输出电压,具有过压、过流保护功能,可保证稳定输出电压及电流,满足控制系统的电源需求。采用封装技术,具有较好的防水、防尘、防静电等特性,能够避免因电源故障等因素导致的火灾、爆炸等安全问题。

2.4 数字舵机模块

DG-995MG型数字舵机具有超大的扭矩,可达到13 kg·cm,采用高精度数字控制技术来实现精确控制,响应速度快,能够在很短的时间内完成转动,快速控制开启与关闭。该舵机采用高品质材料及制造工艺,具有较高的可靠性,寿命长,能够保证控制系统的稳定性及耐用性。

3 软件设计

3.1 传感器模块

多传感器模块软件设计流程如下:通用初始化,包括对芯片进行复位、设定工作模式及时钟频率,对FIFO进行初始化操作。进行传感器模块的工作检查,确认模块可正常工作。主控制器向不同传感器模块发送读取指令,各传感器模块读取当前环境的传感器数据并将数据返回给主控制器。主控制器对返回的数据进行处理,根据预设的阈值或范围进行判断,触发相应的百叶窗开关功能。实现过程中需进行中断处理,以确保系统能够及时响应传感器的监测信号。还需对传感器返回的数据进行校验,确保数据的准确性及可靠性,通过与主控制器的通信,将传感器检测到的环境情况反馈给用户,以便用户了解当前环境状态及百叶窗的控制状态。针对不同的传感器模块,按照以下流程进行软件设计:

雨滴传感器模块:当检测到雨滴时,模块会向主控制器发送信号,主控制器接收到信号后触发百叶窗关闭功能。当雨滴停止时,模块会再次向主控制器发送信号,主控制器接收到信号后触发百叶窗打开功能。为了防止误触发,可设置一个阈值,只有当检测到的雨滴数量超过阈值时才会触发关闭功能。雨滴传感器模块工作流程如图4所示。

图4 雨滴传感器模块工作流程

风力传感器模块:当检测到风力超过预设阈值时,模块会向主控制器发送信号,主控制器接收到信号后触发百叶窗关闭功能。当风力减弱到预设阈值以下时,模块会再次向主控制器发送信号,主控制器接收到信号后触发百叶窗打开功能。为了防止误触发,可设置一个时间窗口,只有当风力超过预设阈值持续一定时间后才会触发关闭功能。

DHT11数字温湿度传感器模块:主控制器向传感器发送读取指令,传感器读取当前温湿度值并将数据返回给主控制器。主控制器对返回的数据进行处理,将温度与湿度值分别显示在屏幕上,以便用户了解当前的环境状态。主控制器根据预设的温湿度范围进行判断,若当前温度或湿度在某个预设范围内,则主控制器向百叶窗控制模块发送指令,触发数字舵机实现角度调整功能;当温湿度进入下一个范围,则会调整至其他角度。

光敏亮度电阻传感器模块:主控制器向传感器发送读取指令,传感器读取当前环境的光强值并将数据返回给主控制器。主控制器对返回的数据进行处理,将光强值显示在屏幕上,以便用户了解当前的环境状态。主控制器根据预设的光强范围进行判断,若当前光强低于预设范围,则主控制器会向百叶窗控制模块发送指令,触发关闭功能;若当前光强高于预设范围,则主控制器会向百叶窗控制模块发送指令,触发打开功能。

3.2 通信协议

软件设计主要采用自定义的通信协议,包括帧头、帧长、数据、校验和及帧尾5部分,具体格式如下:帧头:一个字节,固定为 0x0A,表示数据帧的开头。帧长:一个字节,表示数据部分的长度,可占用长度为1 Byte。数据:3~256 字节,表示传输的有效数据。校验和:一个字节,将有效数据进行累加并取余,用于检测数据传输过程中的错误。帧尾:一个字节,固定为 0x2A,表示数据帧的结尾。

3.3 无线通信模块

软件设计采用基于TCP可靠协议的控制协议,通过WiFi连接,实现与手机端的通信。实现过程中需考虑网络连接的稳定性与可靠性及错误处理与异常情况的处理。还需考虑网络传输的安全性及加密等问题,以确保数据的安全性及保密性[9]。实现过程中,需将WiFi的工作模式设为STA模式,设置station模式中所需的ssid及password。连接WiFi路由,获取客户端的IP地址进行无线通信。基于TCP可靠协议实现数据传输及通信,利用手机端发送指令给无线通信模块,无线通信模块接收指令并调用解析器解析出具体的指令含义。根据解析结果进行一系列操作,并将执行结果返回给手机端。无线连接流程如图5所示。

图5 无线连接流程

3.4 显示终端

包括传感器反馈的气象信息及当前的百叶窗开关说明。进行初始化并启动 NodeMCU无线接收模式,将识别后的传感器信号解析完成发送到显示端,显示端将气象信息内容显示在显示屏上,人们看到气象信息后可对百叶窗进行再调整,NodeMCU再将处理后的信息反馈到数字舵机进行二次调整。

3.5 数字舵机

软件设计主要采用基于PWM控制信号的控制方式,通过WiFi连接,实现与手机端的通信。根据传感器的反馈信号自动对百叶窗进行开合调整,使用PID控制算法提高控制精度及稳定性,根据传感器反馈信号对数字舵机的控制进行优化。实现过程中,需使用PWM控制信号控制数字舵机的旋转角度,通过调整PWM的占空比来实现舵机的精确控制。使用PID控制算法对数字舵机进行控制,以提高控制精度及稳定性。数字舵机不断接收传感器的反馈信号,自动调整百叶窗的开合角度,以满足用户需求。

4 结束语

智能玻璃百叶窗控制系统是一款基于数字舵机及传感器技术的智能家居控制系统。使用 PWM控制信号控制数字舵机的旋转角度,根据传感器反馈信号自动对百叶窗进行开合调整,使用PID控制算法提高控制精度及稳定性,通过WiFi连接,实现与手机端的通信,使用户可以随时随地远程控制百叶窗的开合状态。该设计提升了百叶窗的便利性,具有较高的实用价值及市场潜力,为智能家居的发展提供了新思路及技术支持,具有广阔的应用前景。

猜你喜欢
百叶窗舵机雨滴
小雨滴
可爱的小雨滴
含齿隙弹载舵机的全局反步模糊自适应控制
小雨滴
基于dsPIC单片机的飞艇舵机控制实现
让百叶窗动起来FlipFlic百叶窗开启器
发电百叶窗
基于高速同步485总线通信的多通道舵机控制器设计
纵向涡发生器对百叶窗翅片管换热器性能的提升
基于云模型的舵机同步控制