新农村移动互联智能家居系统设计
2020-10-13王艳
王艳
摘 要: 基于新农村建设,完成了一种学习型智能家居物联系统的设计。基于微信平台,详细阐述了个人习惯的提取算法,家庭总控制器通过网络同各家电设备互连通讯,微信平台的第三方服务器采用智能网关同家庭总控制器相连,从而将家电使用状态信息通过微信公众平台实时高效的向农村用户推送,农村用户可根据日常习惯通过微信平台对家电设备进行远程操控,学习型服务器会收集存储农村用户的日常使用习惯,并在此基础上进行分析,找出符合使用习惯的相关条件因素,在满足条件的情况下自动打开相应设备,进一步准确的提升新农村家居系统的智能水平。
关键词: 新农村建设; 移动互联; 智能家居系统; 微信平台; 实现路径
中图分类号: TU855;TP273 文献标志码: A
Abstract: Based on the construction of new countryside, this paper designed a learning-type smart home IoT system. The system is based on the WeChat platform, and elaborates the personal habit extraction algorithm. The home controller communicates with the home appliances through the network. The three-party server uses the intelligent gateway to connect with the home controller, so that the home appliance usage status information can be pushed to the countryside users in real time through the WeChat public platform. The countryside users can remotely control the home appliance through the WeChat platform according to daily habits, and the learning server collects the storage. The server can collect countryside users habits, and complete analysis to find out the relevant conditions that meet the usage habits, then automatically open the corresponding equipment in the case of meeting the conditions, further accurately improve the intelligence level of the home system in new countryside.
Key words: new countryside construction; mobile Internet; smart home system; WeChat platform; implementation path
0 引言
在新農村和科技快速发展的时代背景下,新农村日常家居生活对智能化、健康化水平的要求不断提高,促使了具备传统家居实用功能的智能家居的发展,而网络信息及物联网等技术为智能家居相关技术的发展和完善提供了强大的技术支撑,具备广阔发展前景的智能家居系统已成为行业研究的重点之一。智能家居控制系统的实现需对多项现代技术(包括自动化、系统集成、通信、传感器、安防等技术)进行综合运用,将家电和家居环境控制通过使用智能化设备及方法实现共享准确的控制过程,通过科学的管理和控制将安全舒适的生活居住环境提供给农村用户,提升居住质量。目前在智能家居系统中移动互联技术发挥着不可替代的作用,可使农村用户远程监控和管理家用电器及家居环境进行需求得以有效满足。本文从移动互联技术出发,设计了一种基于微信平台的新农村智能家居系统,为家居系统的智能性及实用性的进一步提升提供参考,通过人为监督与半监督式管理模式的结合运用使系统的智能化及个性化水平不断提升。
1 需求分析
新农村智能家居是基于新农村建设,通过多项现代技术(包括网络通信、计算机、综合布线技术等)的有效融合所构成的综合智能控制系统,将农村日常家居使用的各类家用电器进行有机结合及综合管理,从而提升了家居环境的舒适度及安全性。快速发展的物联网为日常生产和生活带来了极大的便利,在智能家居管理和控制上展现出了强大的优势,但由于物联网建设缺少对对网络传输互通共享方面的重视,通常只针对特定领域的应用群体,导致各移动互联智能应用系统相互独立,如各家公司的智能单品通常需安装专属APP应用程序才能实现对应功能,对智能家居系统感兴趣的农村用户需购买多种智能单品(对应多个APP)完成智能家居系统的构建,各厂商为满足不同平台及操作系统的适应需求而面临开发多版本APP的繁重工作,进而增加了智能家居系统的开发和使用成本,造成这一问题的根本原因在于智能家居系统互联互通的能力较低[1]。本文基于微信平台的新农村智能家居系统能更好的满足互联互通的需求,智能家居系统以家庭服务器作为控制系统的核心,需对家居环境变化参数和外部控制命令进行实时高效的采集,在此基础上通过使用移动终端设备实现对家用电器的智能控制,使农村用户享受到自动化家居管理服务,在营造舒适家庭生活空间的同时能够对系统信息进行全方位交换,帮助农村用户根据实际需要合理控制家居环境。
2 系统设计
2.1 系统结构
本文以新农村家居智能化为基本目标,所设计的智能家居物联系统基于微信平台,通过搭建与调用数据库使系统具备良好的学习属性,通过微信平台及公众号的综合使用实现智能家居系统的云端化管理。农村用户仅需通过微信平台即可实时对家电运行状态进行远程控制,系统会将农村用户日常使用习惯自动显示和记录,并且系统能够在无需人为设置的情况下自动控制家电(以农村用户习惯为依据),提升家居管理的智能化水平。农村用户通过关注微信家庭公众号后即可使用自己的微信号完成同各类家庭设备的直接绑定,成功绑定后即可在公众号里对菜单按钮进行自定义,对包括照明灯的开关及亮度、热水器、空调、电脑、洗衣机等在内的家庭设备进行远程管控(通过文字、语音命令的方式),并通过微信H5界面监控其运行状态。农村用户某一时间段内的家电使用情况会记录到使用习惯数据库中,在微信H5界面展示,更好的实现家居的智能化、云端化管理需求,例如,当农村用户外出务农或打工时可通过手机、电脑连接智能家居网络系统后对系统中的各电子设备及家居环境进行远程控制;在回家时提前开启空调和热水器,通过磁性传感器或红外线实现通道及家居照明灯的自动打开。本文所设计的系统结构示意图,如图1所示。
主要由安装有微信的智能手机、云数据库、微信及第三方服务器、家庭总机及各家居设备构成,农村用户数据由家居设备负责采集再通过网络向家庭总机传送,指定的云服务器接收到家庭总机传送的数据后向移动终端的微信及网页推送相关显示信息[2]。
2.2 系统硬件设计
(1) 家庭设备,该部分的构成较为简单,主要由stm32和ESP8266两种芯片构成,家庭网关会向设备传送相关数据并将其转化为相应动作,据此实现对设备运行状态的控制过程。
(2) 家庭总机和家庭网关,家庭总机主要由以太网、电源模块、STM32微处理器、无线网络模块(ESP8266)构成。家居设备通过网络同家庭网关相连实现了数据的高效传递,客户机/服务器模型通过使用多个ESP8266 芯片完成搭建,使数据的全双工通信(一对多)得以有效实现。家庭网关的服务器选用了W5500 芯片,为了在增强系统稳定性的同时降低编码难度,将以太网网络层协议置于W5500芯片中。家庭设备的客户机采用了ESP8266芯片,通过某一固定IP地址(在局域网内)的设置,客户机同系统主机间的数据的全双工通信通过建立TCP连接实现[3]。各家居设备的数据由家庭网关负责完成采集和编码后以发送请求的形式向服务器传递(通过HTTP协议),通过采用轮询的请求方式确保了设备最新的状态能够被服务器实时接收到。如图2所示。
2.3 系统软件设计
2.3.1 系统同微信公众平台间连接的搭建
家庭设备及微信端通过微信公众平台实现同第三方服务器数据间的通信过程,农村用户通过常用的微信公众平台即可享受智能家居系统提供的功能服务,包括家庭设备运行情况的实时查看及远程操控。本系统通过wechat中间件(已广泛应用于公交查询、校园助手、微信机器人等工具平台上)的引入进一步提升了微信服务器同公众平台间的交互能力,Wechat主要功能在于交互细节(包括认证及简单消息回复等)的有效接入,使系统开发过程中对所需完成的开发业务进行关注即可。接收消息后的第三方服务器需先完成解包后再进行后续处理,最后完成请求的回复[3]。wechat主要具备会话支持、等待回复及自动回复(可以文本、图片、文字、语音、视频等形式)三大功能,wechat应用还支持物联网硬件设备,在微信数据后台完成对具体业务逻辑的处理(以数据库封装内容为依据)。此外为实现微信远程控制的家居系统的构建,需先完成公众号的申请,申请成功后获取相应的access_token及appid(即公众号唯一的token和ID);此外还需申请一个能连接微信服务器的第三方服务器,本文选用了新浪的云服务器和mysql数据库。在此基础上即可接入认证微信公众号并在云服务器上根据实际需要完成相应开发过程。数据在微信与服务器间以XML格式传输,微信平台针对农村用户在聊天界面输入并发送的内容通过使用文字发送API向服务器发送文本信息,文本消息格式如下(To User Name对应农村用户原始ID号)[4]。
〈xml〉
〈To User Name〉〈CDATA/To User Name〉
〈From User Name〉〈CDATA/From User Name〉
〈Create Time〉
〈MsgType〉〈CDATA[text]〉
〈Content〉〈CDATA[this is a test]〉
〈MsgId〉
〈/xml〉
服务器信息执行流程,如图3所示。
收到消息的服务器需完成接收内容到数组形式的转换及其中农村用户原始ID号的提取,農村用户信息验证通过后即完成MsgType类型的确定,对于文本消息则直接提取出文本内容(从Content 标签中),对于语音消息则需先将其转换为文本消息(通过调用语言识别API接口完成)。服务器向微信平台发送数据时,需先打包数据(即将文本信息以xml格式进行打包处理),将文本内容及MsgType分别设置为Content和“text”类型[5]。
2.3.2 公众号交互界面设计
农村用户无需安装APP通过微信公众号同智能家居系统进行直接交互,显著提升了农村用户查看和控制家居设备的便利性和智能水平,文字回复及语音聊天交互功能通过使用微信自带的开放接口API实现,服务器以接收到的设备状态或控制参数为依据(数据在微信和服务器间以XML格式进行传送)实现了指令化控制(借助语音识别API完成)。为详细记录设备ID信息,针对设备ID号借助微信二维码绑定机制生成相应二维码,微信平台在农村用户扫描二维码后同该设备进行自动绑定并将向服务器发送相关信息,以确保只有该农村用户才能对家居设备进行控制,不同控制模式下的控制情况,如图4、图5所示。
通过微信语音聊天式控制功能(植入了聊天机器人)完成对家电方便快捷的控制过程,语音聊天控制通过语音语义接口API的调用实现[6]。在系统公众号平台中通过各种情景模式的设置使家居设备的一键式管理得以实现。
3 HTML5界面交互设计与实现
本文通过HTML5交互式界面的设计使集中显示与控制设备状态功能得以有效实现,HTML5控制页面如图6所示。
结合运用JavaScript的jQuery库及HTML5完成前端页面的设计,在同一行中数据和控制一一对应,以保证页面的稳定性,提升人机交互性能。使用AJAX异步通信方式进行数据通信,向服务器发送数据时则采用post方法,通过get方法的调用(由定时器完成)获取设备状态数据,对维修平台面板以预设的时间进行实时更新。浏览器定时器在农村用户点击链接按钮时开启并持续发送POST请求(在指定时间内),由服务器对该农村用户的授权情况进行验证,并据此处理该信息(执行或忽略)。对于通过服务器验证的农村用户ID,由post 回调函数对服务器发送内容进行读取,同时据此刷新状态显示区域。为简化服务器管理流程并确保安全机制的统一性,HTML5交互式页面所采用的原始ID验证机制同微信一致,在微信公众号中直接嵌入页面,即可微信中打开HTML5控制页面对家居设备(包括设备的一切可控参数)进行直接控制,实现了一键设置的智能化管理功能。在数据库中记录农村用户家用电器的使用习惯,据此获取适合农村用户习惯的时间点、开关状态及相关参数进行自动开启。HTML5页面通过AJAX同服务器交换数据,通过定时器实时更新显示数据[7]。 可根据实际需要运用HTML5的可拓展功能添加交互性元素,降低了系统后期运营和维护的成本。为弥补现有智能家电普遍存在的难以实现高效互联互通的不足,本文所设计的学习型系统可采集、存储并分析农村用户家电使用习惯方面的数据,从而形成有针对性的农村用户使用习惯数据并据此辅助系统农村用户实现对家电更高效的控制,通过大数据评价农村用户习惯为系统升级提供参考。采集分析农村用户习惯的主要步骤为:(1)需先完成负责对农村用户行为数据进行保存的加密数据库的创建,该数据库以家庭成员为单位创建相应数量的数据表,数据表主要由时间、设备号、开关状态、设备属性(time、ID、power、state_value)四个属性列构成,系统在开关状态或设备属性改变的情况下会自动在表中记录数据。(2)此外还需完成用于保存农村用户习惯的加密数据库的创建,同样以各家庭成员为单位创建数据表,数据表主要由习惯状态时间(作为主键)、设备号、开关状态、设备属性、习惯评级五个属性列(habit_time、ID、power、state_value、level)构成,表中数据从小到大排序(以时间为依据),系统获取各农村用户使用习惯数据后(通过统计计算)在该表中保存。(3)划分一天时间为n等份(即每份1 440/n分钟),农村用户在某个t时刻(分钟)操作该家电,服务器据此完成时间段的换算即t/(1 440/n)并将其存入到数据表(包括家电状态),统计周期为k天。在完成首个时间段各状态及次数(分别由Si、Ci表示,其中i=1,2,3,…,n)的统计的基础上,计算出在总次数中各状态次数的占比即各状态在第一个时间段内发生的概率,计算表达式为:pi=CiC1+C2+…+Cn,对应最大概率的状态Si为最大可能性状态,需作为习惯状态进行保存,同理获取其余各时间段习惯状态的计算与保存。(4)系统每经过预定的时间段(本文设置为5 天)执行一次(3)中的算法,再通过加权计算习惯数据获取农村用户的习惯等级[8]。
4 总结
互联网技术及智能化设备的不断发展促使人们的生活习惯发生着深刻的改变,智能家居兼顾了智能化、自动化及实用性,互联互通的家居系统已经成为解决智能单品应用分散问题的有效手段。为满足新农村移动互联智能家居系统的发展需求、顺应物联网和社交平台深度融合的趋势,本文完成了一种新农村智能家居物联系统的设计,在完成云服务平台接口开发的基础上,通过微信平台实现数据的交互和识别,关注微信号公众号后即可使用该系统的相关功能,农村用户可根据实际需要在微信平台上完成对智能家居系统的相关操作(包括显示、分享、更改、记录、借鉴等),从而实现系统及设备间的互联互通,通过采集和分析农村用户一系列行为掌握使用习惯进一步提升系统的智能水平。
参考文献
[1] 夏誓远. 智能家居的设计与前景[J]. 无线互联科技, 2018(9):63-67.
[2] 刘京锐.一款基于Arduino的遥控家居机器人的设计与实现[J]. 电子世界, 2019(1):140-141.
[3] 陈赫,赵丹梅. 基于单片机的智能家居遠程控制系统的设计与实现[J].电子技术与软件工程, 2018(22):238-239.
[4] 林木泉,许俊杰. 基于IntoRobot云平台的实时环境监测系统的设计与开发[J].宁德师范学院学报(自然科学版), 2017(4):411-418.
[5] 施建喆,甄磊,王显辉,等. 关于智能家居多协议控制终端的实现[J].计算机产品与流通, 2018(5):134-136.
[6] 王海涛,胡元璐. OFDM基础下电力载波通信的智能家居系统设计与实现[J].通信电源技术, 2017(3):127-128.
[7] 林先金. 智慧生活无处不在——基于SIP和RSTP协议的移动互联智能家居管理系统[J]. 中国公共安全, 2017(Z1):80-82.
[8] 钱程,韩太林. 移动终端下的智能家居控制系统设计及应用[J].中国新通信, 2018(20):108-109.
(收稿日期: 2019.07.18)