孙嘉成,刘搏飞,邢晓鹏,隋盛誉,刘春池,谢印庆
(大连理工大学 城市学院,辽宁大连, 116600)
国家十四五规划中物联网作为数字产业经济之一,物联网时代已经到来。随着“物联网+”智能家居逐渐出现在了许多家庭中,人们对智能、安全、舒适的居家环境有了强烈需求。长期离家时,传统窗帘长期紧闭,自家容易成为小偷的目标。夏季炎热的阳光,会引起室内温度升高,湿度过大时会抑制人体散热。
基于上述问题,我们设计了一款智能窗帘。用光电对射管检测窗户是否在无人时被强行打开,温湿度传感器实时采集室内温湿度的数值[1]。利用WiFi模块可以将数据传输到云平台中,用户就可以通过APP查看到实时的室内状况。同样用户可以通过APP来实现远程控制窗帘的开闭。
此设计采用STC89C52芯片,实现窗帘整体的运动,同时多个模块配合完成对智能窗帘的控制。其中温湿度传感器DHT11实时读取家中温湿度状况;光敏电阻与模数转换芯片ADC0832组成的电路对光照强度进行数字化并采集[2];对射型光电传感器用来监测窗户在无人时是否有被强行打开的情况,起到防盗的作用;电源采用USB 5V电压供电;WiFi模块连接OneNET云平台,通过物联网MQTT通信协议实现用户APP与STC89C52单片机进行数据交换,完成用户对智能窗帘的远程控制和家中实时情况的掌握;步进电机控制窗帘的开闭。系统设计方案如图1所示。系统模式分为两种:系统模式和用户模式。
图1 系统设计方案
系统模式可以让用户在生活中享受科技带来的便利,也可以在用户出远门时自动开合窗帘,避免带来心怀不轨之人的注意。同样可以根据室温来开关,不会让用户感到任何的不舒适。
用户模式可以让用户根据自身职业和习惯,设置窗帘的自动开合时间,更加贴近自身的生活,同时可以在特殊天气、特殊情况和个人需求下远程控制窗帘。
智能窗帘使用STC89C52芯片作为系统的控制核心。STC89C52是低功耗、高性能CMOS的微控制器,有8K在系统可编程的Flash存储器、512字节RAM、32位I/O口,自带4K字节的EEPROM,可直接使用串口下载[3]。51单片机的特点有处理性能强,运行速度快,低功耗;系统结构简单,控制性能好;环境适应能力强;价格低廉。PO口作为I/O口时需要上拉电阻,作为数据或者地址时不需要上拉电阻。图2为单片机最小系统。电源采用USB 5V电压供电。
图2 单片机最小系统
温湿度采集使用的是DHT11芯片。DHT11是含有已校准数字信号输出的复合传感器,有较好的可靠性和长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,可以与单片机连接[4]。单片机就可以不停接收传感器发送的数据。DHT11超低功耗,在5V电源电压下工作平均最大电流只有0.5mA;只有四引脚易于安装,不需要额外部件;精度达到湿度±5%RH, 温度±2℃,量程湿度5到95%RH, 温度-20℃~+60℃,输出为单总线数字信号,数据完整传输一的大小次为 40bit,按照高位在前,低位在后的顺序传输,8bit 湿度整数+8bit 湿度小数+8bit 温度整数+8bit 温度小数+8bit 校验和[5];抗干扰能力强,可以在阴雨或者特殊天气的情况下正常工作。DTHT11四引脚分别为接电源就、接地、空接、P00,串行数据DATA接单片机的P00。通信质量会受到DATA信号线的材质影响,我们使用高质量屏蔽线。温度会很大程度影响相对湿度,在测量时为了让保证测量湿度的准确性,安装时将其远离电子元件,并留下空隙隔热。
光照采集模块是由光敏电阻与模数转换器ADC0832芯片共同组成。光敏电阻阻值随光照变强而变小,无光照时恢复原来大小。ADC0832是双通道A/D转换芯片,最高分辨可达256级,电压精度为19.53mV,输入输出电平与TTL和COMS相兼容,一般工作仅有15mW。DO 端与 DI 端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时如果I/O口使用紧张,可以将 DO 和 DI 并联在一根数据线上,减少一个I/O口的使用。ADC0832可以将光敏电阻的光照模拟信号转化为数字信号,转化的数字信号传输到单片机内,实现单片机对光照强度的采集。光照采集电路连接如图3所示。
图3 光照采集模块
步进电机模块作为窗帘运动的驱动。步进电机是一种将电脉冲信号转化为角位移的器件,受电脉冲的控制。改变通电顺序,可以改变步进电机的旋转方向和通电频率,实现电机正转和反转,达到打开和闭合窗帘的效果,也可以相应改变步进电机的转速。步进电机工作电流电压较大,我们使用ULN2003芯片放大电路电流,使其达到步进电机所需的驱动电压,实现窗帘运动。
ULN2003是一个单片高电压、高电流的达林顿晶体管阵列集成电路,由7个达林顿管组成。每对达林顿管都有一个2.7kΩ串联电阻,可以直接和TTL或5V CMOS连接。输入端直接接单片机的引脚使用电平控制,输出端接步进电机,输入5V的电平,输出最高可达500mA/50V,从而完成对步进电机的控制。具体的电路连接如图4所示。
图4 步进电机模块
警报模块是由对射型光电传感器和蜂鸣器组成,监测窗户是否被打开。对射型光电传感器是由发送器,接收器和检测电路三个部分构成,将光信号转化为电信号实现控制的。光电传感器是光速,响应时间短;不需要接触物体检测,不容易造成损伤,可以长期使用;可以对塑料、玻璃、木材、液体等检测,限制少;透光光束是可见光,方便对位置进行调整。发送器里的半导体光源对准目标发射光束,通过透镜或者光圈到达由光电管组成的接收器,最后到检测电路,滤除有用信号,输出信号传送给蜂鸣器[6],然后通过WiFi模块将警报记录传送到用户APP中。光电对射管和蜂鸣器的电路连接如图5所示。
图5 警报模块
使用ESP8266芯片作为数据通信模块,通过 ESPAT 指令固件,为单片机提供WiFi连接功能;功耗较低睡眠电流小于 20μA;时钟速度最高可达160MHz,支持实时操作系统和WiFi协议栈;+19.5dBm的天线端输出功率,具有良好的覆盖范围。ESP8266芯片集成了天线开关、射频巴伦、功率放大器、低噪声接收放大器、滤波器等等射频模块,外围器件还有10个电阻电容电感、1个无源晶振、1个flash,工作温度范围:-40℃~125℃,支持softAP+station 共存的模式。ESP8266只负责将数据传输到目标地址,不对数据进行处理,发送和接收的数据内容和长度完全一致。
先将ESP-WROOM-02的管脚引出,和USB转TTL串口模块相接,然后就可以直接与电脑连接,通过下载软件将固件下载到Flash中,最后将ESP-WROOM-02切换为工作模式,重新上电就可以让芯片初始化从Flash中读取程序运行。下载固件到芯片中以后,我们用AT指令控制ESP8266连接到家里的路由器以后,就可以顺利通过单片机串口和WiFi模块,与OneNET云平台及APP连接。在云平台中下载设备,用户就可以通过设计的APP和单片机通过WiFi通信。ESP8266连接如图6所示。
图6 WiFi模块
软件流程图如图7所示。先将数据进行初始化,通过DHT11芯片和光照采集模块读取所需室内信息,信息通过单片机和WiFi模块上传到OneNET云平台,用户就可以通过APP查询到室内信息。如果室内温度或者湿度不在适宜度数以内,APP会记录,并设置弹窗提醒用户,这样用户就可以及时作出处理,让用户生活在更加舒适的环境中。室内信息上传完后进行判断,无人在家时窗户是否被强行打开,如果被强行打开会触发警报,蜂鸣器响起,警报记录上传并提醒用户警报触发。起到防盗作用,若已发生已经被盗取情况,可以通过APP种查询警报时间,帮助调查和确定犯罪嫌疑人。若警报没有触发,会继续扫描用户端是否发出指令,然后进行模式判断,最后步进电机会根据模式判断的结果实现正转与反转。
图7 软件流程图
在系统模式下会首先判断时间,保证在用户睡眠时窗帘一直保持在关闭的状态下。然后会通过光照强度进行判断,因为四季昼夜时长不同,冬季时,白天时间较短,系统会根据光照调整窗帘开合时间,当光照强度为0时会自动关上窗帘。最后进行温度判断,当室温满足18℃~28℃的情况下才会打开,目的是在一定程度调节温度,让室温保持在一个使人舒适的数值下。
APP用户端操作主要分为六个部分。其中两个为警报模式和系统模式的开启和关闭,系统模式关闭和窗帘控制时默认为用户模式。剩下四个分别为警报记录、室内实况记录、窗帘控制、用户自定义。警告记录中将会记录近20次在警报模式下强行打开窗户的时间,以表格的形式呈现给用户。室内实况记录会将湿度和温度分开做成两个折线图呈现给用户,并将高于正常值的数据和时间用表格记录出来,单独呈现。用户自定义是用来设置在用户模式下的各个判断数值的大小,贴近用户生活。
物联网云平台主要功能是通过分析存储在物联网云关上传输网络上的光照和温度等数据,为用户决策行为提供了实时可视化和数据动态分析处理的智能云平台。MySQL是关系数据库管理系统应用软件,同样是开源软件,因此可以大大降低总体拥有成本。物联网关系统的数据服务器用MQTT协议与云数据服务器通信[7]。APP将接收到的实时云服务器数据,做成可视化折线图呈现给用户。同样当用户使用手机APP开锁时,会向局域网传递一个信号,由于单片机也在ESP8266的局域网下并订阅了相同的主题,会接收到手机传递来的信号,从而电机转动,MQTT协议可以在有限的带宽下,为远程设备提供实时可靠的消息服务。
以数字化、网络化、智能化为特征的第四次工业革命正在兴起,物联网作为新一代信息技术与制造业深度融合的产物,融入家居系统是科技发展的趋势。未来巨大的市场需求一定会为物联网带来难得的发展机遇和广阔的发展空间。本设计利用物联网技术和STC89C52作为控制核心,搭配了不同模块实现警报、数据采集、数据交换和电机控制来便于用户了解室内情况。单片机还预留部分I/O口,可根据自身需求添加模块,进行二次开发。通过云平台或者程序设计可以其他智能家居进行交互,给用户更舒适的生活环境,具有很强的适用性。