Software Engineering and Applications
Vol.3 No.02(2014), Article ID:13348,6 pages
DOI:10.12677/SEA.2014.32004

Design of the Smart Home Control System Based on Internet of Things

Yi Wang, Hui Qi

School of Automation, Southeast University, Nanjing

Email: greenbluenature@163.com, qihui528@126.com

Copyright © 2014 by authors and Hans Publishers Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY).

http://creativecommons.org/licenses/by/4.0/

Received: Feb. 19th, 2014; revised: Mar. 20th, 2014; accepted: Apr. 2nd, 2014

ABSTRACT

With the development and the application of the Internet of things, the rise of popularity of GPRS and embedded systems, the application of the smart home will be more and more widely. In our smart home control system, you can collect information from the temperature sensor terminal and control other actuator terminals such as lighting equipment and cleaning robot actuator terminal by operating on controller at home, which is based on ARM11 and Linux. They are connected by Zigbee. In the outside, you can know and control the household conditions using android applications. The phone communicates with the control center by GPRS. The control interface is quite friendly and our system works stably and can be very easily expanded.

Keywords:Internet of Things, GPRS, Zigbee, Android, Linux

基于物联网的智能家居控制系统设计

王  祎,祁  慧

东南大学自动化学院,南京

Email: greenbluenature@163.com, qihui528@126.com

收稿日期:2014年2月19日;修回日期:2014年3月20日;录用日期:2014年4月2日

摘  要

随着物联网的不断发展和应用,GPRS的普及和嵌入式系统的崛起,智能家居的应用会越来越广泛。本文设计的智能家居控制系统,在家可通过基于ARM11和Linux操作系统的控制终端,对Zigbee组网内的温度等传感器终端,灯光、清洗机器人等执行器终端进行信息采集和控制,在外可通过GPRS使用Android应用软件远程监控家居状况。该系统控制界面友好,工作稳定,并且有很好的扩展性。

关键词

物联网,GPRS,Zigbee,Android,Linux

1. 引言

近年来,随着通信技术的快速发展及互联网的广泛应用,物联网逐渐成为全球关注的热点领域。与此同时,随着中国经济的高速发展,人们对生活品质、家居环境的要求越来越高,对家居智能化的需求越来越强烈[1] 。因此,将家庭中各种家电设备、家庭安保装置和个性化家居设备通过家居控制系统进行整合,并进行远程控制和管理,已经成为当今一个热门研究课题。

智能家居控制系统(Smart Home Control System)的目标是通过网络等信息通信技术手段实现对家居电器等的智能控制,使其不论距离的远近,都能够按照人们的设定工作运行。本设计通过Zigbee无线传感器网络、GPRS通信技术相结合的方式,搭建了一套新型、低成本、方便完善的智能家居控制系统,面向智能家居行业,具有广阔的市场发展前景[2] 。

2. 系统总体设计

本系统按照结构划分,包含了温度、光源、湿度等传感器,清洗机器人以及家居用品等执行器,系统的手持终端控制器和Android平台的手机客户端,其中各个传感器、执行器和手持终端控制器通过Zigbee组建物联网,作为智能家居控制系统的网络终端节点。而手机客户端通过GPRS经由服务器与手持终端控制器进行通信,GPRS通信采用的是方便且安全可靠的服务器客户端的通信模式。

系统总体设计方案如图1所示。

本系统的核心为手持终端控制器,是基于Arm11和Linux操作系统的触摸屏手持控制平台,具有良好的人机交互性。其功能为通过Zigbee接收室内温度、湿度、灯具家电等设备的状态数据,经处理分析后反馈信息给用户,同时发送指令对照明系统、窗帘等家居设备和清洗机器人进行相应的自动控制操作。手持终端控制器通过GPRS与手机客户端建立连接,异地远程监控家居状况。例如,当控制器检测到温度超高等报警信号时,会通过手持控制终端及时触发室内报警装置,并通过控制终端远程发送至手机客户端及时通知用户。同时,用户也可在手持控制器终端或者手机客户端上进行家居状态数据的查询,手动控制清洗机器人等执行动作。

温度、湿度等检测终端,照明、窗帘、清洗机器人等执行终端是各自独立的,通过Zigbee组建物联网进行通讯。各个终端可配备独立的MCU和Zigbee,也可以几个终端挂载在一个MCU,共用一个Zigbee。如果某个MCU控制多个传感器或执行器终端,则需要MCU进行终端的辨识,准确无误地执行命令,因此,本系统的检测终端和执行终端具有很强的扩展性。

3. 系统硬件设计

3.1. 手持控制器硬件设计

手持终端控制器是本系统的核心,是信息的收集和处理中心,也是命令的发布中心。其采用S3C6410处理器作为控制芯片,其上运行Linux2.6.38操作系统。S3C6410基本电路包括S3C6410芯片、256M DDR

Figure 1. Overall design scheme of the system

图1. 系统总体设计方案

RAM内存、1GB NAND Flash。外围电路还包括串口、Zigbee通信模块、实时时钟模块、触摸彩屏和电源模块。NAND Flash存储器用于存放已调试好的应用程序和嵌入式Linux操作系统,串口用于调试系统及连接GPRS模块以与终端设备进行通信,触摸彩屏用于查询显示系统信息和相关的状态。整个手持终端控制器采用C++图形用户界面库QT进行编程。手持终端框图如图2所示。

其中,GPRS DTU是一种物联网无线数据终端,利用公用运营商网络为用户提供无线长距离数据传输功能。内部集成TCP/IP协议,提供串口数据双向转换功能,支持自动心跳、保持永久在线,支持参数配置、永久保存,支持用户串口参数设置[3] 。

本设计使用的WG-8010 GPRS DTU产品,提供标准RS232/485数据接口,仅需一次性完成初始化配置,用户设备就可以与数据中心通过GPRS无线网络建立连接,实现数据的全透明传输。采用MAX3232电平转换至DB9接口实现RS-232接口通信。具体接口电路如图3所示。

本系统使用QT编程、采用触摸彩屏使得终端控制器具有良好的人机交互性。如图4所示彩屏界面。

3.2. 检测执行终端硬件设计

检测终端和执行终端都采用MSP430F247作为处理中心,只是因需求不同而采用不同的传感器和执行机构。例如温度检测终端使用温度传感器Pt1000,光强检测终端采用光敏电阻,清洗机器人的执行结构为电机驱动,报警执行终端的执行机构为蜂鸣器等。而最主要的Zigbee通信模块,是负责与手持终端控制器通信的,采用的是CC2530F256芯片和射频IC。

以温度检测终端为例,图5所示为温度检测终端结构框图,其中看门狗采用SP706SEN芯片,实时时钟采用M41T0M6芯片,EEPROM存储采用AT24C256芯片。

温度传感器选用热电阻Pt1000,热阻式测温是根据金属导体或半导体的电阻值随温度变化的性质,将电阻值的变化转换为电信号[4] ,当Pt1000在0℃时阻值为1000欧姆,它的阻值会随着温度上升而增长。常用于医疗、电机、工业、温度计算等高精温度设备,应用范围非常广泛。

温度传感器Pt1000的信号调理电路如图6所示。

AD7705能够实现将差分电压小信号放大并转换为微控制器识别的数字信号的功能。本设计的温度信号采集电路如图7所示,其中AD7705的参考电压由恒压源LM385-2.5V提供。

4. 系统软件设计

4.1. Zigbee协议帧

手持终端控制器与各个检测和执行终端进行通信,是基于Zigbee的透明传输协议。由于每个检测器

Figure 2. Block diagram of handheld terminal controller

图2. 手持终端控制器框图

Figure 3. Circuit diagram of communication interface

图3. RS-232通信接口电路图

Figure 4. Interface of handheld terminal controller

图4. 手持终端控制器界面

Figure 5. Block diagram of temperature detection terminal

图5. 温度检测终端结构框图

Figure 6. Circuit diagram of Pt1000 signal conditioning

图6. Pt1000信号调理电路

Figure 7. Circuit diagram of temperature signal acquisition

图7. 温度信号采集电路

和执行器的核心都是MCU和Zigbee通信模块,基于节约方便的原则,可在一个MCU下挂接多个检测或执行终端,共用一个Zigbee模块。本系统将独享一个MCU的终端命名为一级终端,将共享一个MCU的几个终端命名为二级终端。

因此,本系统定义了Zigbee协议帧,具体格式如图8所示。

4.2. 远程通信软件设计

本系统为实现远程监控,使用一台独立的windows操作系统的PC作为服务器,采用Java为程序语言,具有公网固定IP,作为手机客户端和手持终端控制器的通信桥梁。服务器最初处于监听状态,手机

Figure 8. Protocol of Zigbee

图8. Zigbee协议帧

客户端和手持终端控制器都通过GPRS与服务器连接,连接后进行身份认证,服务器将手机客户端的发送指令,传输给手持终端控制器,手持终端控制器将反馈信息和家居环境的信息发给服务器,由服务器处理后发送给手机客户端。

手机客户端和手持终端控制器都设定好每个操作分别有自己特定的字符串发送到服务器,由服务器进行识别处理,再发送特定字符串到相应终端。针对手机客户端发送过程中可能出现的丢包、乱码等情况,本系统设定一个反馈确认机制。

1) 当手机客户端所发送的指令成功经由服务器到达手持控制器终端,并且所有操作都顺利完成,控制器终端会发送“OK”字符串到GPRS模块,通过透明传输发送到服务器,最终手机客户端获得该字符串,显示“OK”字样;

2) 超时限制,如果手机客户端等待“OK”确认包的时间超过正常范围,客户端立即重发指令,直到收到“OK”确认包为止;

3) 针对字符串在传输过程中出现乱码的情况,服务器或手持控制器会辨别,并向手机客户端返回“ERROR”字符串,使客户端重发指令,直到收到“OK”字符串为止。

通过反馈确认机制,可避免网络信号不佳、传输过程受干扰等意外情况所导致的无效操作[5] 。

4.3. Android应用软件设计

本系统利用Android应用软件实现智能家居的远程监控,为了良好的用户体验,采用一个主Activity界面,多个子Activity界面的架构,主界面和子界面通过广播进行通信。Android应用软件的界面架构如图9所示。

手机客户端的软件流程为:主界面初始化、界面绘制后进入事件监听,与服务器建立SOCKET连接后启动GPRS接受线程,并建立、注册广播,进入广播监听。当用户进入子界面后,初始化后进入事件监听,注册广播进入广播监听。例如当点击子界面的按钮时,按钮处理机制将指令通过广播发送给主界面,主界面收到广播后调用SOCKET对象,发送指令给服务器,服务器处理后将反馈状态信息发回手机

Figure 9.Structure diagram of Android application interface

图9. Android应用界面结构图

客户端,GPRS接收线程将收到的信息通过广播再发送给子界面,至此完成一次事件处理。

5. 结论

2013年9月,Fadell正式宣布将在2014年初开放Nest API接口给所有开发者,允许第三方开发者创建软件、硬件、服务等并将其和自动调温器连接在一起,Nest有野心成为智能家居生态系统的一个主控中心和连接点,从而引领用户真正进入智能家居和物联网的时代。而谷歌已花32亿美金收购Nest,此举必将在全球卷起对智能家居乃至可穿戴的追逐狂潮。

本设计在此智能家居大潮流下,着重突显了几个创新点。首先,整个控制系统的控制终端采用基于Arm11和Linux的触摸屏手持控制平台,具有良好的人机交互性,方便易携带,可查询历史数据和数据变化曲线等,亦可发送控制命令进行人为干预;其次,借助于Android智能手机的普及和其良好的扩展性和用户友好性,本系统通过GPRS实现手持终端控制器与手机客户端的通信,通过Android应用软件实现真正的远程监控;最后,在一个MCU下挂接多个检测或执行终端,将终端进行分级,从而达到便于管理和节约成本的目的。

本系统依托的Zigbee组网对于多终端的系统有很好的适用性,可扩展性,与此同时,Android手机平台也可以与很多其他智能化家用电器进行交互,已具备一定的接口,可扩展性高。因此本设计具备发展的空间和条件,具有广阔的市场前景。

参考文献 (References)

  1. [1]  吕红海 (2012) 基于Android的智能家居无线控制系统的设计与实现. 硕士论文, 电子科技大学, 成都.

  2. [2]  王涛, 周丽丽, 陈庆文 (2011) 中国物联网未来发展探讨. 林业机械与木工设备, 9, 26-27.

  3. [3]  王祎 (2012) LUGB系列智控涡街流量计设计. 本科论文, 东南大学, 南京.

  4. [4]  周杏鹏等 (2010) 现代检测技术(第二版). 高等教育出版社, 北京.

  5. [5]  沈舒海, 王晓东, 胡珊逢, 张陈梅 (2012) 基于GPRS网络的智能家居控制系统. 电子器件, 2.

期刊菜单