基于M5310A与OneNET云平台的智能家居控制系统

2021-04-27 15:07邓成中何紫杨
物联网技术 2021年4期
关键词:环境参数窗帘底层

袁 兴,邓成中,谭 天,何紫杨

(西华大学 机械工程学院,四川 成都 610039)

0 引 言

近几年来,随着社会经济和科学技术的不断发展,人民的生活水平不断提高,人们对于生活品质的要求也越来越高,这促进了智能家居行业的快速发展。智能家居控制系统主要运用了自动控制技术、传感器技术、网络通信等技术来为人们提供一种安全、方便、舒适的居住环境[1]。目前的智能家居控制系统大多数采用蓝牙、WiFi、ZigBee等无线通信技术先构成无线局域网络后,再连接控制终端的方式来实现对家居环境参数和家用电器的监测与控制。但蓝牙、WiFi、ZigBee等无线通信技术存在着通信距离短、功耗大、连接小、成本高等缺点[2-3],在一定程度上限制了智能家居控制系统的发展。

低功耗广域网技术的不断发展与成熟为智能家居控制系统的发展开辟了一条新的道路。其中NB-IoT技术作为低功耗广域网技术中的一种,具有功耗低、覆盖广、连接大、成本低等优点[4-5]。基于NB-IoT技术的优势,本文设计了一种基于M5310A与OneNET云平台的智能家居控制系统。该系统通过采用基于M5310A芯片的NB-IoT无线传输模块将智能家居控制系统的硬件设备接入到OneNET云平台,OneNET云平台再连接用户终端,最后通过用户终端实现对智能家居环境参数的实时查询与常用家电的远程控制。由于采用了NB-IoT技术与OneNET云平台技术,使得本系统具有功耗低、覆盖广、开发周期短、成本低等特点。

1 系统总体设计

基于M5310A与OneNET云平台的智能家居控制系统由感知层、传输层、平台层和应用层组成[6],其总体系统结构如图1所示。

图1 系统总体结构图

感知层的主要功能是检测智能家居的环境参数以及控制常用家电的开启和关闭,其主要包括有各种环境参数检测传感器、微控制器、窗帘电机驱动模块、继电器驱动模块、火灾报警模块等。传输层主要包括NB-IoT模块和NB-IoT基站,其利用NB-IoT无线传输技术和物联网协议将系统的底层硬件接入到OneNET云平台,实现底层硬件与OneNET云平台之间的数据和命令传输。平台层主要用于接收和存储底层硬件上传的环境参数以及向底层硬件下发家电控制命令。应用层的主要作用是通过用户终端实现对智能家居环境参数的实时查询以及对常用家电进行远程控制。

2 系统硬件设计

底层硬件控制器硬件结构如图2所示,主要包括有传感器检测模块、电源模块、微控制器、窗帘电机驱动模块、继电器驱动模块和火灾报警模块等。传感器检测模块用于检测智能家居的环境参数,包括温湿度传感器DHT11、烟雾传感器MQ-2和光照传感器BH1750,分别用于对家居环境的温湿度参数、烟雾浓度和光照强度的检测[7]。微控制器采用的兆易创新生产的GD32F103CBT6单片机,其具有4个定时器,3个串口,2个ADC等丰富的内部资源,最高主频可达108 MHz。微控制器的主要作用是接收传感器检测模块采集

图2 底层硬件控制器硬件结构

2.1 底层硬件控制器设计

到的环境参数,并通过NB-IoT模块上传到OneNET云平台;以及通过NB-IoT模块接收OneNET云平台下发的家电控制命令,并根据控制命令类型控制常用家电的开启和关闭;并且还能驱动火灾报警模块实现火灾报警。微控制器最小系统硬件电路如图3所示。电源模块的作用是为智能家居控制系统的各个模块提供所需大小的电压。

图3 微控制器最小系统电路

窗帘电机驱动模块用于驱动窗帘直流电机正转或反转,实现对窗帘的拉开或关闭。本系统使用4个N型MOS管构成H桥电路来实现对窗帘直流电机的驱动[8],其硬件电路如图4所示。其中Q1~Q4为4个N型MOS管;EG2104芯片是一款高耐压带SD快速关断功能的MOS管专用驱动芯片,用于驱动4个MOS管;C11和C12为自举电容;IN1和IN2为一组互补PWM输入驱动信号;SD为快速关断信号。驱动电路工作原理如下:当IN1为高电平,IN2为低电平时,MOS管Q1、Q4导通,Q2、Q3截止;当IN1为低电平,IN2为高电平时,MOS 管Q2、Q3导通,Q1、Q4截止 ;Q1、Q4和 Q2、Q3交替导通驱动窗帘直流电机正转或反转;当SD为低电平时,Q1~Q4均截止,从而实现快速关断功能。

图4 窗帘电机驱动模块电路

继电器驱动模块用于实现对常用家用电器的开启或关闭,其硬件电路如图5所示。继电器驱动模块通过光耦和三极管控制继电器的通断来实现对常用家用电器的开启和关闭,如电灯、电视、饮水机、空调等。

图5 继电器驱动模块电路

当智能家居发生火灾时,传感器检测模块检测到环境的温度和烟雾浓度过高,则认为有火灾发生,微控制器驱动火灾报警模块报警。火灾报警模块的硬件电路如图6所示,这里通过驱动蜂鸣器和LED灯来实现声光报警。

图6 火灾报警模块电路

2.2 NB-IoT模块硬件设计

NB-IoT模块的作用是将智能家居控制系统的底层硬件接入到OneNET云平台,实现底层硬件与OneNET云平台之间的数据和命令交互,其硬件电路如图7所示,主要包括M5310A芯片、SIM卡座、RF天线和固件下载接口等。M5310A芯片是中移物联网公司生产的一款工业级多频段NB-IoT模组芯片,内嵌MQTT/LwM2M/COAP等多种传输协议及扩展AT指令,通过使用简单的AT指令即可实现NB-IoT模块与OneNET云平台之间的连接[9]。并且M5310A芯片支持PSM和eDRX两种节电技术,满足系统对低功耗的要求。通过NB-IoT模块可将智能家居的环境参数上传到OneNET云平台,以及接收OneNET云平台下发的家电控制命令。

图7 NB-IoT模块硬件电路

3 系统软件设计

系统软件设计主要包括环境参数采集与上传程序设计、命令接收与家电控制程序设计和用户终端界面设计3部分。

3.1 环境参数采集与上传程序设计

环境参数采集与上传程序流程图如图8所示。在系统上电后,首先对基本外设、I/O口、传感器检测模块和NB-IoT模块等进行初始化;接着通过向NB-IoT模块发送AT指令连接OneNET云平台;OneNET云平台连接成功后开启定时器中断并等待定时时间到;定时时间达到后利用传感器检测模块采集家居环境参数并通过NB-IoT模块上传到OneNET云平台;数据上传完成后等待下一次定时时间达到后再进行环境参数的采集与上传。

图8 环境参数采集与上传程序流程

3.2 命令接收与家电控制程序设计

命令接收与家电控制程序流程图如图9所示。首先对系统进行初始化操作;接着通过NB-IoT模块接收OneNET云平台下发的家电控制命令并通过串口发送给底层硬件控制器;底层硬件控制器通过串口接收下发的家电控制命令,并根据控制命令的类型驱动继电器或窗帘直流电机,实现对常用家用电器(窗帘、电灯、电视、饮水机、空调等)的开启与关闭。控制命令执行完成后继续等待接收下一个控制命令。

图9 命令接收与家电控制程序流程

3.3 用户终端界面设计

本系统通过用户终端可实现对智能家居环境参数的实时查询以及可对常用家电进行远程控制,其主要包括手机移动端和Web网页端。用户终端的界面设计是一个相对复杂的过程,但OneNET云平台为开发者提供了一个比较简单实用的开发工具,使开发者可以快速的构建自己的应用终端界面。开发者只需在OneNET云平台应用开发端拖拽相应控件,并设置好参数属性,即可完成应用终端界面设计[10]。本文利用OneNET云平台提供的应用开发工具来构建智能家居控制系统的手机APP和Web网页用户终端界面,用于对智能家居环境参数的实时查询与常用家电的远程控制。

4 系统测试

烧写好底层硬件控制器程序后对系统上电,登录OneNET云平台开发者中心,在设备列表中设备状态显示为在线状态,如图10所示,说明成功连接OneNET云平台。通过OneNET云平台应用管理Web网页和手机APP,可实时查询智能家居的环境参数(温湿度、烟雾浓度、光照强度),以及通过相应控件可远程控制常用家电(窗帘、电灯、电视、饮水机、空调等)的开启与关闭。测试结果表明,系统运行稳定、上传数据准确、控制命令的响应速度较快,满足系统要求。手机APP界面和Web网页界面分别如图11和图12所示。

图10 设备状态图

图11 手机APP界面

图12 Web网页界面

5 结 语

本文设计了一种基于M5310A与OneNET云平台的智能家居控制系统。该系统采用基于M5310A芯片的NB-IoT模块将智能家居控制系统的底层硬件接入到OneNET云平台,可通过用户终端实现对智能家居温湿度参数、烟雾浓度、光照强度等环境参数的实时查询,并且还能远程控制常用家电的开启和关闭。由于采用了NB-IoT技术与OneNET云平台技术,使得本系统具有功耗低、覆盖广、成本低、开发周期短等优势,在智能家居领域有一定的应用前景。

猜你喜欢
环境参数窗帘底层
航天企业提升采购能力的底层逻辑
风儿撩起了窗帘
基于云平台的智能家居环境参数协同监控系统设计
列车动力学模型时变环境参数自适应辨识
一种食用菌大棚环境参数测控系统设计
基于小型固定翼移动平台的区域大气环境参数采集系统设计
巧做窗帘
感恩的窗帘
窗帘
回到现实底层与悲悯情怀