APP下载

基于ZigBee技术和GSM的家用主人助手WSN系统的设计

2013-10-10刘燎原

常州工学院学报 2013年3期
关键词:短信报警远程

刘燎原

(江苏建筑职业技术学院机电工程学院,江苏 徐州 221116)

0 引言

现代家庭的安全监测主要包括家庭环境监测和家用电器的控制,传统的监测系统通常采用有线连接方式[1],且布线复杂、系统可扩展性差、维护成本高。随着无线传感器网络(WSN)技术和ZigBee技术的发展,组建基于ZigBee协议的家庭WSN网络已势不可挡。[2]为了克服家庭安防和远程用户孤立的问题,对普通用户来说,使用最方便的就是在家庭之外的任何地方通过手机等移动终端远程监控家庭环境和设备。鉴于此,本文提出了一种利用ZigBee技术和GSM模块组建的家用主人助手系统,该系统利用ZigBee技术构建了家庭WSN网络,完成对家庭环境各种检测信号和控制信号的传输,并且通过GSM模块实现远程监控。通过测试,该系统具有功耗低、成本低、扩展性强、数据传输可靠等优点,具有很强的实用性。

1 系统总体方案

1.1 家庭组网技术的选择

在家用主人助手系统中,家庭子网的构建是重中之重。根据智能家居的应用特点,对家用主人助手系统的家庭子网进行构架时,主要关注的是低功耗、低成本的通信手段以及灵活的组网方式。新兴的ZigBee是一种近距离、低功耗、低速率、低成本的无线通信技术[3],它的物理层、MAC层采用了IEEE802.15.4协议标准,在此基础上ZigBee联盟对其网络层、应用会聚层和高层应用规范进行了标准化和必要的完善及扩展。ZigBee技术专注于10~250 kbps的低速率传输应用,主要适合于自动控制和远程控制领域。因此在本系统中,选用ZigBee技术来实现家庭子网的组建,为家庭内部控制系统提供网络平台。

1.2 远程无线网络控制技术

由于ZigBee网络的范围仅限于短距离,用户一旦离开家庭就无法了解家庭状态,也无法对家中的设备进行远程控制和管理。因此,家庭控制网络必须与外界网络进行连接才能实现远程控制,用户通过手机等远程移动终端访问家用主人助手系统,可以方便地获取家居状态信息,实现主要的管理功能,从而提高智能家居系统的实用性。在本系统中选用GSM模块实现远程的数据传输和远程控制[4],利用GSM 网络既可实现对家庭中盗情、燃气泄漏及温度等的监测,并以短消息方式向主人发出警报,又可通过发送短消息对家用电器(如,空调、电视、音响、微波炉等)进行远程开启和关闭电源。

1.3 系统方案

基于ZigBee技术组成的家用主人助手系统属于一种家庭无线传感器网络[5],由ZigBee协调器和ZigBee终端节点、GSM模块、远程用户监测端等部分组成,该系统的总体设计如图1所示。将4个ZigBee终端节点和相应的传感器或继电器相连,且分布在家中的不同位置,用来检测和传输采集信号、供用户远程查询、布防状态的远程报警、远程控制电器开启等。ZigBee协调器和4个终端节点进行双向通信,它负责建立ZigBee网络、管理网络以及数据的转发接收等。考虑到使用方便,该系统的远程用户监测端采用手机,手机通过GSM模块这个中介和该系统进行双向通信,手机通过访问GSM网络采集到家庭WSN的相关数据信息,实现对家庭的远程监控。

图1 系统总体方案图

2 系统硬件电路设计

ZigBee技术是一种基于IEEE802.15.4协议标准的双向无线通信技术,它将ZigBee网络中的节点分为全功能器件(FFD)和简化功能器件(RFD)。在网络拓扑方式中,ZigBee标准有星型、树型、网状等组网方式。本系统设计的家庭WSN采用星型组网方式,网络中存在由 FFD构成的协调器节点和由RFD构成的终端节点。下面对系统总体方案中的每个硬件设备进行设计。

2.1 ZigBee协调器

ZigBee协调器主要负责建立网络并将其他节点加入网络、提供信息路由、安全管理等。[6]在该网络中协调器节点和终端节点都使用TI公司的ZigBee芯片CC2530模块,它是公司针对频段2.4 GHz的ISM 频段推出的第二代支持 ZigBee和IEEE802.15.4协议的片上系统集成芯片。内部集成了ZigBee射频(RF)前端、增强型8051的内核、8路输入的12位AD以及看门狗定时器等,只需很少的外围电路即可构建一个简单的节点。其中必备的外围电路包括晶振电路、电源、复位电路、无线收发电路等,本系统使用的ZigBee模块的核心板电路图如图2所示。

图2 ZigBee模块核心板图

2.2 ZigBee终端节点

在本系统中设置了4个终端节点以无线通信方式组织成网络,每个节点由ZigBee模块和相应的传感器组成,作为家居环境的检测节点。Zig-Bee终端节点负责监测周围一定范围内的环境温度、防盗、火灾或有毒气体等情况的探测以及对各种家电设备的控制等。[7]

ZigBee终端节点1连接的热释电传感器放置在门窗的特定区域,用来监测盗贼的非法闯入。该传感器是靠接收人体发出的红外线能量变化来完成非接触探测。在布防状态时,当传感器探测到有人出现在特定区域时,它触发终端节点芯片的中断,从而激活终端节点芯片,芯片会自动通过ZigBee无线收发模块把打好的报警数据包发送出去。ZigBee协调器通过自身的收发模块接收终端节点的数据,对接收到的数据进行必要的处理,然后经过GSM网络拨通主人电话或发送短信到主人手机上,实现快速远程报警。

ZigBee终端节点2连接的气体传感器放置在厨房,用来检测可燃气体和烟雾。气体传感器采用的是MQ-2传感器模块,对居室内的环境液化气、烟雾、甲烷等较敏感。该模块提供数字输出引脚D0和模拟输出引脚A0。当厨房内气体或烟雾浓度超过设定阈值时,D0引脚输出低电平,激活终端节点芯片,报警流程和热释电传感器的报警流程相同。

ZigBee终端节点3和温度传感器连接用来检测房间的温度,温度传感器采用的是美国DALLAS公司生产的DS18B20可组网数字温度传感器芯片,它的测温范围为-55~+125℃。DS18B20可以把采集到的温度信号直接转化成9~12位串行数字信号,它采用独特的单线接口方式,无需外部元件。该模块有电源、数据端、地3个引脚,在该系统中把该模块的数据端和ZigBee终端节点的I/O口相连,实现温度数字信号的采集、传输。

ZigBee终端节点4和继电器模块与电器电源相连,用来实现电器的远程开启和关闭。当主人在外面想提前开启电器时,可以通过手机发送控制编码至该系统TC35i模块所使用的SIM卡号。TC35i模块接收到短信息后解码,通过Zig-Bee协调器向ZigBee终端节点发送信号,继电器吸合,电器开启。

2.3 GSM模块

GSM通信模块选用西门子公司的TC35i模块,该模块集射频电路、基带于一体,性能稳定,价格低廉,它具备GSM无线通信的全部功能,用户通过标准的AT指令对其进行控制,支持TEXT和PDU模式的短信编码方式。TC35i的数据输入输出接口实际上是一个串行异步收发器,其引脚RXD、引脚TXD均为TTL电平的串口通信引脚,CC2530也支持串口通信,所以采用串口通信的方式来实现这两种网络之间的互联和数据的收发。

在GSM模块中内嵌一张合法的SIM卡,当远程用户通过手机向该GSM模块发送短消息时,GSM模块将消息接收后告知ZigBee协调器,协调器通过AT指令控制GSM模块进行短消息的读取和发送,当短信内容送到ZigBee协调器后,ZigBee协调器根据短信的内容执行相应的操作。ZigBee协调器根据短信内容与某个ZigBee终端节点进行通信,该ZigBee终端节点根据所接收的信息内容执行相应的操作命令,如,控制电器的开启和关闭、使用传感器对周围环境信息进行采集等。

3 系统软件设计

本系统程序主要包括协调器节点程序、终端节点程序、TC35i程序。TI公司为CC2530芯片提供了符合ZigBee协议的完整协议栈,能够实现ZigBee网络的组建和所有的ZigBee协议规定的服务与应用。协议栈分为物理层、MAC层、网络层和应用层。软件设计主要针对应用层的应用程序的编写,对下层的操作调用相应的服务即可。本设计利用IAR7.0开发环境来编制调试程序,应用层的程序遵循 Z -STACK -2.4.0 -1.4.0协议栈。

3.1 ZigBee协调器软件设计

协调器节点的程序流程如图3所示。程序先进行系统初始化,包括底层硬件初始化、协议栈的初始化。初始化完成后,协调器节点建立一个网络,进入休眠状态等待终端节点的加入。当终端节点加入到网络中后,协调器开始接收终端节点发送过来的传感器数据,并把数据存入数据缓存中。检查数据是否超过警戒值或者是否收到远端发来的查询命令,两者只要有一个成立便通过GSM模块向远端发送数据,然后进入下一次的数据接收。

图3 ZigBee协调器软件流程

3.2 ZigBee终端节点软件设计

终端节点的程序流程如图4所示。同协调器一样,终端节点也需要进行相应的初始化。在初始化完成后,终端节点便搜寻所在区域的网络,并向协调器发出申请加入网络的请求,得到允许后,终端节点便加入到网络中。然后该节点对传感器采集的数据进行一次读取,并把数据打包发送给协调器。一次操作完成后进入下一个循环周期。如果需要实现低功耗,则让终端节点每采集一次数据并发送后进入休眠状态,休眠一段时间后重新被唤醒,再进行第二次数据采集与发送。

图4 ZigBee终端节点软件流程图

3.3 GSM模块软件设计

由于GSM模块支持AT命令,因此ZigBee协调器通过串口向GSM模块发送AT指令以方便地实现短信息SMS的发送、接收和管理[8],如,设置短信中心号码、短信格式、短信接收对象和方式等。其中用到的AT命令如表1所示。短信的编码格式一般分为TEXT与PDU,本系统采用TEXT模式发送和接收短信,这样就避免了复杂的汉字编码和PDU编码的转换问题。

在TC35i模块初始化中,利用“AT+CNMI=2,1”指令来选择当有新的短消息时系统提示方式,“2”表示通知TE在数据线被占用的情况下,先行缓冲,待数据线空闲再行通知;“1”表示储存到默认的内存位置,并且向TE发出通知,设置成功后返回“OK”。利用“AT+CMGF=1”指令选择短消息支持TEXT文本格式,设置成功后返回“OK”。

表1 AT命令

在接收短信程序中,用“AT+CMGR”读取短信息命令,读取到的内容存入接收数据缓冲器,然后根据数据的内容进行相关操作,流程图如图5所示。

图5 TC35i接收短信软件流程图

在发送短信程序中,用“AT+CMGS”发送短信息命令,先发送“AT+CMGS=电话号码”,TC35i再将要发送的内容写入发送数据缓冲区,然后发送到指定的号码;在此程序中,用“ATDn”拨出电话指令,n为拨出电话的电话号码,流程图如图6所示。

图6 TC35i发送短信软件流程图

4 系统测试

系统测试,首先给系统供电,GSM模块完成初始化及注册操作,ZigBee模块完成初始化。协调器建立网络后,终端节点开始申请加入网络。终端节点入网成功后,它开始周期性地采集传感器的检测值,然后进入低功耗模式,直到被协调器或传感器信号唤醒。

4.1 ZigBee组网测试

首先进行ZigBee组网测试,使用TI公司配套的Z-SensorMonitor软件,它可以形象地显示网络的拓扑结构和各节点的状态信息。它提供了数据存储和恢复功能,能将十六进制数据输出到后缀为.log的文本中,并加入时间,便于今后对系统状态的调阅和再现,图7为实验过程中采集到的实时网络状态信息。从图7可以看出,本系统的ZigBee网络的星型拓扑方式,1个ZigBee协调器节点,4个ZigBee终端节点。

图7 系统的ZigBee的网络拓扑图

4.2 系统功能测试

4.2.1 远程报警

系统远程报警功能是指系统的防盗、火灾或有毒气体超限的报警。以防盗报警为例,该系统通过按键来选择系统的布防、撤防状态,在布防状态下,当有人出现在门或窗附近时,ZigBee终端节点1的热释电红外传感器检测到信号,传输到ZigBee协调器,ZigBee协调器所接的蜂鸣器发出声音报警,并且通过TC35i发送“door”或“window”报警短信息给用户,并打电话通知用户,如图8所示,手机显示屏幕显示主人助手系统发来报警短信或来电。

4.2.2 远程查询温度

当身处外面的用户想了解家里的温度时,利用手机发送“temp”短信息给主人助手系统(系统的GSM模块插入的SIM卡的号码即为主人助手的号码),主人助手接收到信息后,对信息解码,发送控制信息给终端传感器节点3,返回温度传感器的采集值,该系统就会把家里的温度回发给手机,如图9所示。

图8 手机接收报警短信和来电

图9 通过手机远程查询家中温度

4.2.3 远程开启电器开关

当用户在外面想提前开启家里的电器时,利用手机发送“open”给主人助手系统。主人助手系统接收到信息后,对信息解码,发送控制信息给终端传感器节点4,该节点所接的继电器会吸合,电器被远程开启。如果手机发送“close”给主人助手,继电器断开,电器被远程关闭,如图10所示。

5 结语

针对目前家庭安防和远程用户孤立的问题,使用ZigBee技术组建家庭无线传感器网络实现传感器信号的采集、控制,利用GSM模块实现用户的远程控制,设计了一种基于ZigBee技术和GSM的家用主人助手系统。通过对该系统的功能测试,系统很好的实现了远程报警、远程控制、远程查询等功能,具有功耗低、成本低、扩展性强、数据传输可靠、实用性强等优点。本系统还可以通过更换不同的传感器或增加节点,实现对多种环境参数的监测,还可以应用于智能建筑、医院、仓库等多种场所,具有广泛的应用前景。

[1]韦明劭.基于无线传感器网络在智能家居中的设计[J].轻工科技,2012,14(2):63 -64.

[2]瞿雷,刘盛德,胡成斌.ZigBee技术及应用[M].北京:北京航空航天大学出版社,2007.

[3]高守玮,吴灿阳,杨超,等.ZigBee技术实践教程——基于CC2430/31的无线传感器网络解决方案[M].北京:北京航空航天大学出版社,2009:27-30.

[4]叶金平.基于 GSM 的智能温湿度控制系统的研究[D].西安:西安理工大学,2009.

[5]鲜晓东.基于 WSNs和 GSM的室内环境监测预警系统设计[J].传感器与微系统,2011,30(6):141 -144.

[6]曹红苹,蒋云良,缪强.室内无线传感器网络及其应用[J].计算机应用研究,2006,23(9):209 -212.

[7]刘省贤.基于GSM和ZigBee技术的无线安防系统研制[J].陕西科技大学学报,2009,27(4):139 -142.

[8]陈冬林.基于GSM短消息的编码方法及其编程实现[J].计算机与现代化,2006,11(3):115 -117.

猜你喜欢

短信报警远程
让人胆寒的“远程杀手”:弹道导弹
远程工作狂综合征
道歉短信
远程诈骗
LKD2-HS型列控中心驱采不一致报警处理
代发短信
2015款奔驰E180车安全气囊报警
死于密室的租住者
奔驰E260车安全气囊报警
“八一”节日短信之一