基于IIC和云服务器的智能家居控制系统设计
2017-03-27刘芮辰李树江
刘芮辰,李树江,刘 帅
(沈阳工业大学 信息科学与工程学院,沈阳 110870)
基于IIC和云服务器的智能家居控制系统设计
刘芮辰,李树江,刘 帅
(沈阳工业大学 信息科学与工程学院,沈阳 110870)
智能家居普遍采用无线通信技术对家居进行互联,不同的通信方法对智能家居系统的稳定性、便捷性、可靠性有很大的影响;针对智能家居的访问方式,通过对比不同的无线通信技术,选择合适的技术运用在智能家居系统的设计中,实现局域网和广域网两种访问方式;在无线传输的智能家居基础上,使用IIC总线进行功能扩展,使用云服务器来替代传统计算机服务器,增加了系统的灵活性和手机访问的快捷性,更好地实现家庭住宅管理与监测,为我们平时的生活提供便利和保护。
智能家居;组网方式;云服务器;IIC通信协议
0 引言
智能家居概念提出已久,但是普及存在种种困难。无线传输技术的发展使得传统的布线方式已经遭到淘汰[1],采用合适的网络通信技术,可以充分发挥环境的优势。同时,智能家居系统不但要支持局域网控制方式,更要考虑到广域网控制方式。所以需要搭建合适的服务器平台,支持不同的访问方式。本文选择Zigbee和WLAN两种无线通信技术进行分析和对比[2]。使用嵌入式技术和云主机两种方法来搭建服务器,并分析两种方式的优缺点[3]。由于智能家居的灵活性,需要对设备进行灵活的扩展,为此选择了IIC数据传输方式作为设备的扩展通信协议。
1 无线网络通信技术的介绍
Zigbee、WLAN都是目前比较主流的无线通信技术,各有比较适合的应用场合[4]。通信技术具体工作数据如表1所示。
Zigbee通信技术适用于短距低功耗、低复杂自组织、低数据速率、低成本的设备中[5]。在智能家居设备中,设备之间主要以低速数据传输为主,但对于组网的稳定性要求很高,需要设备灵活的加入网络中。Zigbee技术的启动速度比较快,相比Wifi接近2秒的启动时间,使用Zigbee可以迅速的接入网络。Zigbee的缺点在于无法进行大量数据的传输,系统需要在主节点外扩GPRS模块用来与手机通信[6]。并且使用GPRS模块,会按照流量收费,后续的成本比较高。
表1 无线通信技术数据
WLAN无线通信技术相比Zigbee通信技术,工作距离更远;传输速度更快,可以满足摄像头对传输速度的要求[7]。现在的家庭中普遍拥有802.11b通信协议的Wifi网,智能家居系统的客户端通过Wifi模块可以加入到室内局域网中,手机等移动设备通过广域网可以访问室内客户端。但是缺点在于当室内断网时,设备无法访问外网,手机只能连接局域网,通过ARM服务器对设备进行控制。
由于两种通信技术各有优势,可以将Zigbee和Wifi两种通信方式结合使用。当需要大量数据传输以及服务器通信时,使用Wifi通信方式工作;当控制简单数据传输时,使用Zigbee通信协议[8],这样利用了两者的优势。但值得注意的是,Zigbee和Wifi共用2.4 GHz频段,在没有任何保护措施的情况下,有时会出现同频干扰,影响设备之间的通信[9]。所以采用这两种通信协议共同工作时,设计上尽量避免信号之间的干扰。
2 智能家居控制系统设计
2.1 系统总体结构设计
本系统的客户端采用星型结构,通过上一章对无线通信技术的分析,客户端上选用Wifi通信方式,所有的客户端通过Wifi模块连接到路由器,通过路由来访问云服务器,数据统一收集到云服务器处理。手机可以通过访问云服务器来获得室内信息,同时可以发送指令来控制室内设备。当网络信号不良时,使用ARM微控制器作为服务器,客户端通过路由连接到ARM服务器;同时手机连接进局域网,通过访问ARM服务器来控制室内的设备,解决了断网情况下设备无法工作的问题。每个客户端上带有STM32主控芯片、设备驱动电路、Wifi通信模块和IIC接口,通过IIC接口可以在客户端下扩展更多的功能,系统结构如图1所示。
图1 系统总体结构
2.2 客户端访问服务器的配置
本设计采用USR-WIFI232-S模块,该模块可以将用户的设备连接到Wifi无线网中,使用串口传输数据。在使用该模块之前对其进行如下配置:配置访问网络名称,AT+WSSSID=****; 配置数据加密方式,网络访问密码,AT+WSKEY=WPA2PSK,AES,****;配置组网方式,AT+WMODE=STA,STA组网方式是系统中由一个路由器作为无线网络的中心节点,各个功能模块作为无线站点的组网方式;配置网络协议为TCP协议,工作在客户端模式,协议端口,服务器IP地址等,AT+NETP =TCP,CLIENT, ****, ***.***.***.***;建立TCP协议连接,AT+TCPDIS=ON。由于设定的配置,传感器采集到的二进制数字信号通过Wifi模块发送到服务器上时变成ASCII格式,数据需要服务器进行识别;同时,服务器需要记录下来每一个客户端连接到局域网的顺序,因为配置成功的客户端会自动分配局域网IP地址,服务器会通过记录局域网内IP地址来识别客户端。
2.3 云服务器的搭建
在智能家居系统中,需要搭建服务器来进行数据处理。通过云服务器可以实现以上功能,并完成广域网的访问。使用云服务器可以收集城市环境的信息,如城市的天气情况、时节、日出等;这些信息使得家庭中的空调,窗帘和灯光等等设备的控制更智能化。服务器的程序使用java语言进行开发,开发环境为eclipse。
服务程序(Servlet)是一个与协议无关的、跨平台的服务方,集成在服务器中,实现了网络上远程动态加载。Servlet是在服务器端执行的,接收了来自客户端的请求,将处理结果返回客户端。Servlet用Java语言编写,具有良好的可移植性和安全性。
Java Server Pages(JSP)是在普通HTML文件中内嵌程序语句,避免了开发Servlet时繁琐的HTML输出,可以更好地格式化输出效果。JSP使用Java语言,在第一次调用时先编译,然后用Java虚拟机执行。Tomcat引擎和Apache服务器的配合使用,在Apache服务器上来实现Servlet的解决方案。
3 功能模块与电路设计
3.1 IIC通信的应用设计
通过比较IIC和SPI通信协议,本设计选择了IIC作为拓展总线。SPI总线的优点在于它的结构简单直观,容易实现,并且有很好扩展性。并且相比IIC,SPI总线的速度更快;SPI适合数据流传输应用,而IIC更适合字节传输设备的多主设备应用[10]。由于扩展的温湿度检测和烟雾检测设备不需要大量数据的传输,使用IIC就可以满足设计的需求。
IIC总线是两线制:一根是双向的数据线SDA,用来传输数据信息;另一根是时钟线SCL,用来同步数据发送信号。USB接口有4个接线,使用IIC总线,除了SDA和SCL两根信号线,另外两根可以作为电源线和地线,这样扩展的设备通过USB就可以直接供电工作。结构如图2所示。在每个无线通信的客户端上都留有扩展口,对于温湿度检测和烟雾检测模块通过USB进行扩展。加入IIC通信有效的减少了无线信号的使用频率,降低了无线网络拥挤。
图2 IIC拓展结构图
3.2 窗帘控制驱动电路
窗帘控制模块使用STM32F103ZET6作为主控芯片;使用L298P芯片作为驱动电路控制芯片,其最大工作电流为4A,频率在25~40 kHz。主控芯片通过给EnableA管脚置高电平,使Input1与Input2管脚输出驱动电流。使用1N4007整流二极管,最高反向逆压为1 000 V,可以使输出端获得稳定的电压,具体电路如图3所示。
图3 电机驱动电路
3.3 漏水检测电路
漏水检测功能主要使用NE555芯片实现,如路图4所示,当发生漏水情况时,1,2两个引脚伸出的探头两端被导通,使得NE555芯片的3引脚输出低电平,低电平范围在0~0.8 V,通过检测3引脚的状态可以判断是否出现漏水情况。
图4 漏水检测电路
4 实验结果与分析
4.1 IIC拓展功能演示
根据以上的系统设计,制作的实物如图5所示。
图5 客户端和扩展模块
将温湿度模块通过USB接口连接到窗帘模块上,温湿度模块通过USB接口供电工作。把温湿度数据通过IIC协议传输给客户端,主控芯片再将数据通过Wifi模块将数据传输给服务器。测得温度20度,湿度为36%,实现了温湿度测量功能。
4.2 云服务器时延分析
通过系统测试发现,服务器对客户端响应速度影响非常大,具体延迟时间如表2所示。局域网状态下ARM服务器响应速度非常迅速;经测量,信息收发延迟时间在0.1秒左右,迅速的完成对设备的控制。使用云服务器工作时,消息收发平均延迟时间为0.32秒,反应速度低于局域网工作方式,但可以满足智能家居平时使用要求。经分析,造成延时的原因在于客户端与云服务器之间连接不稳定,客户端与云服务器之间受到网络环境的影响比较大。
表2 测试系统延迟时间
5 结论
本文通过分析Zigbee,WLAN等优缺点,选择了WLAN无线通信技术。加入IIC总线数据扩展,增强了设备组合的灵活性。使用嵌入式服务器和云服务器两种方式,完成局域网和广域网访问控制。使新设计的智能家居系统更易于推广和使用。
[1] 童晓渝,房秉毅,张云勇.物联网智能家居发展分析[J].移动通信,2010(9):16-20.
[2] 邵鹏飞,王 喆,张宝儒.面向移动互联网的智能家居系统研究[J].计算机测量与控制,2012(2):474-479.
[3] 申 斌,张桂青,汪 明,等.基于物联网的智能家居设计与实现[J].自动化与仪表,2013(2):6-10.
[4] 赵虹钧.基于ZigBee技术的智能家居系统的设计[D].上海:上海交通大学,2007.
[5] 赵 勇.基于ARM和ZigBee的智能家居远程监控系统设计[J].测控技术,2012(11):52-59.
[6] 满 莎,杨恢先,彭 友,等.基于ARM9的嵌入式无线智能家居网关设计[J].计算机应用,2010(9):2541-2544.
[7] 孙 润.基于WiFi智能家居网关设计[D].西安:西安工业大学,2015.
[8] 邓中祚.智能家居控制系统设计与实现[D].哈尔滨:哈尔滨工业大学,2015.
[9] 关 健.无线个人区域网ZigBee与WiFi的干扰分析[D].北京:北京邮电大学,2009.
[10] 郭稳涛,何怡刚.智能家居远程监控系统的研究与设计[J].计算机测量与控制,2011(9):2109-2112.
Design of Smart Home Control System Based on IIC and Cloud Server
Liu Ruichen,Li Shujiang,Liu Shuai
(School of Information Science and Engineering, Shenyang University of Technology,Shenyang 110870,China)
Smart home reached new developments.Smart home system uses networking technology to connect,therefore, different communication methods for system stability, convenience, reliability play a big influence.For different access methods,by comparing different wireless communication technology,select the most appropriate method to be used in the smart home system,to achieve LAN and WAN network access;compared wireless transmission of intelligent home, using IIS bus for feature extensions,using cloud server to replace the traditional computer server;increase the flexibility of the system and mobile phone access speed,achieve better management and monitoring family house,facilitate and protect our lives.
smart home; networking mode; cloud server; IIC communicating protocol
2016-09-13;
2016-11-17。
刘芮辰(1990-),男,硕士研究生,主要从事空调、嵌入式开发方向的研究。
李树江(1966-),男,教授,主要从事智能控制技术、复杂工业过程建模与设计方向的研究。
1671-4598(2017)03-0098-03
10.16526/j.cnki.11-4762/tp.2017.03.027
TP23
A