智能家居RF通信模块的设计与实现*
2014-02-28程文彬戴跃洪
曾 艳,程文彬,戴跃洪
(1.电子科技大学机械电子工程学院 成都611731;2.电子科技大学中山学院机电工程学院 中山528400)
1 引言
智能化控制已经在家电领域得到广泛应用,家电、通信模块、控制器、客户端四者之间依次连接通信,以实现客户端对家电的智能控制。智能家庭网络可以分为3个部分:外联网、网关和内部网。外联网可能是小型局域网、有线电视网络、GSM(global system for mobile communication,全球移动通信系统)网络、互联网等,其中大部分使用相对成熟的通信技术;内部网是一个局域网,用于家用电器及多种设备的互连,大多采用ZigBee、Z-Wave、射频通信、Wi-Fi等无线网络技术。
[1]提出家庭内部网络使用ZigBee技术实现子模块和主控模块之间的通信,家庭外部网络通过GSM的短消息模块建立移动电话用户和DSP(digital signal processing,数字信号处理)控制模块之间的远程通信。参考文献[2]提出了基于Wi-Fi和LTE(long term evolution,长期演进)网络的智能家居方案。由于TD-LTE(time division long term evolution,时分长期演进)系统和无线网络在2.4 GHz信道相邻共存,需要采取CSMA(carrier sense multiple access with collision detection,载波侦听多路访问/碰撞检测)/CA访问机制避免干扰。参考文献[3]采用Internet作为外部网络,家庭网络使用基于Z-Wave技术的无线个域网,由控制器、路由子节点和普通子节点组成。参考文献[4]提出通过蓝牙组建智能家居内部网络,通过以太网模块和GSM模块接入外部网络。参考文献[5~7]则选择433 MHz无线射频技术实现家庭内部网络。参考文献[8]设计了一套基于STM32单片机的智能家居控制系统,该系统结合了Wi-Fi无线通信、传感器、RF(radio frequency,射频)、IR(infrared radiation,红外线)等技术。用户使用上位机(手机或个人电脑)通过Wi-Fi访问STM32单片机,实现对家电、窗户窗帘、门禁信息等的本地和远程无线智能控制。控制系统根据各个控制模块的特点选用适用的通信控制方式。
目前各种无线传输技术均存在一定的问题[9]:ZigBee技术功耗低但技术不够成熟,并且无线收发器CC2530(工作在2.4 GHz)的价格是CC1101(工作在433 MHz)价格的1.5倍;Wi-Fi功耗大,并且普通的控制芯片不能满足Wi-Fi高速的数据传输要求;ZigBee和Wi-Fi均工作在2.4 GHz频段上,采用CSMA/CA访问机制避免干扰,增加了通信成本;蓝牙时延大、成本高。因此,本文采用射频无线通信技术[10],具有功耗小、成本低、组网自由和传输距离远等特点。
2 基于RF通信的智能家居体系架构
基于RF通信的智能家居体系架构如图1所示,包括应用层、网络层以及终端控制层。应用层负责用户登录、安全认证、人机交互界面、数据管理和处理;网络层涉及数据传输、数据加密以及防冲突技术;终端控制层包含驱动模块和微控制器。本智能家居系统增加了防冲突硬件、防冲突层、数据合成和数据加密算法4个部分,加强了防冲突功能和数据安全性。
本系统的通信控制过程为:用户通过客户终端(电脑、Pad、手机等)输入操作命令,网络端控制器接收用户命令数据,处理后通过RF通信模块发往家庭终端(受控制的节点),家庭终端根据规定协议解析数据,执行相应操作并返回家电状态数据。
3 RF通信模块的硬件设计
3.1 通信模块的硬件设计
该RF通信模块的框架如图2所示。家庭终端主要由微控制器STM8S103F和无线收发模块组成,无线收发模块由RF无线射频芯片CC1101和天线组成;网络控制端由高性能控制器和无线收发模块组成。
STM8S103F3是高性能的8 bit通用控制器,具有抗干扰能力强、可靠性高、成本低、性价比高等特点[11];具有8 KB的flash程序存储器,610 byte真正的数据存储器EEPROM和1 KB的RAM(random access memor),满足存储家电信息数据的需求;具有强大的I/O功能,硬件接口丰富,满足监控家电状态的需求;该控制器比51单片机的价格更低、性能更稳定、运算速度更快。CC1101是一种低成本真正单片的UHF收发器,为低功耗无线应用而设计[12]。CC1101具有可编程控制的数据传输率,可达500 kbit/s;可编程控制的输出功率,对所有的支持频率可达+10 dBm,具有低电压供电、低功耗、收发距离远、穿透能力强等优点,满足系统成本低、开发难度小的要求。
目前通信模块与家电之间的连接端口众多,电平往往难以兼容,极大地限制了家电与通信模块的匹配标准化进程。本文RF通信模块与家电之间采用简洁的四线制通信方式,可兼容5 V和3.3 V电平,有利于智能家居RF通信模块在本技术领域的标准化。
3.2 通信模块的通信及控制
家庭终端STM8S103F微控制器主要执行两个任务:通过SPI口控制CC1101无线收发信息、四线制查询或控制家电状态。工作流程为:上电初始化设置T0定时器和开启外部中断0;周期性采集家电状态信息,通过与存储信息比较,若发现家电工作状态出现异常或改变,则将数据封装成固定格式帧,通过CC1101发射数据,上报网络层;当网络层有命令向家电端发送时,CC1101接收完数据后,产生脉冲信号触发MCU外部中断0,微控制器读取数据,解分组后根据命令对家电进行相应控制,并且回发状态信息。本系统RF通信工作在433 MHz频段,无需授权许可。
网络端控制器主要负责家庭终端与服务器端的数据传输以及数据处理。
4 通信模块的软件设计
4.1 通信设计流程
RF通信模块的设计与实现过程主要包括:首先研究RF防冲突与高安全的标准、设计RF通信模块的数据结构,其次根据RF的方法论设计RF模块的流集合,然后根据规范设计实现RF通信模块高频驱动层和RF通信模块数据接口层,最后根据硬件RF特性,实现整个RF防冲突高安全模块。图3描述了RF防冲突高安全通信模块的设计与实现过程。为了保证该模块的可靠性和复用性,在实现完成之后需要进行测试和分析,以便检查和改正整个设计实现过程中出现的错误。
4.2 通信实现过程
(1)RF通信模块的实现
RF通信模块的基本功能主要包括数据的发送和接收[13]。如图4所示,在发送数据时,接口层负责将上层要发送的数据组装成符合RF规范格式的RF协议层数据单元,调用RF_Transmit()将此数据帧交给驱动层,再由驱动层调用RF_DriveWrite()启动控制器的传输请求。将数据放入模块FIFO缓冲区,等待硬件空闲时再将其发送出去。发送成功后,会向上层模块以回调函数的形式发送一个成功确认,当发送方收到这个确认后表明一次发送动作已经成功。
图3 RF通信模块的设计流程
图4 发送和接收数据流程
在接收时,首先由驱动层调用RF_DriveReceive(),以中断的方式告知应用层;然后调用RF_ReceiveLen()获取数据长度,判断是否有数据;再调用RF_DataReceive()读取数据,对数据的合法性进行检查,等待发送应答数据的到达,提取有用的数据。在接收过程中如果发现错误,便会调用相应的处理函数,并停止向上层告知数据的到达。
(2)STM8S103F的实现
由于STM8S103F的串口不具有硬件缓冲区,当接收FIFO寄存器溢出后,新数据可能无法存入接收FIFO。针对这个问题,本系统采用模块FIFO缓冲区,即用软件模拟FIFO缓冲区的设计方式[14]。STM8S103F具有1 KB的RAM(random access memory,随机存取存储器),可以预先设置两个缓冲区Buf_TX和Buf_RX,用于存储待发送数据和接收数据。通过修改每个缓冲区的读、写指针,改变缓冲区的使用位置。
(3)RF防冲突高安全模块的实现
目前RF模块发送数据前,不检测空间是否存在相同频率的电磁波。在已有电磁波的情况下,向空间发送同频电磁波,将会对已存在的同频电磁场产生干扰,同时不能保证自身的数据能够被目标RF设备完整地接收。通过检测空间是否存在同频电磁波,做出即时发送数据或者时延发送数据的决定,有效地达到防冲突的目的。
防冲突的实现过程是:首先确定是否需要发送数据;若需要发送,则检查是否有同频电磁波;若有,等待时延时间到达,再检查同频电磁波;直到无同频率的电磁波,才发送数据;收到目标RF模块应答后才表明发送完成;发送完成后,等待下一个数据发送[15]。防冲突流程如图5所示。
在安全方面,采用新的双滚码加密算法,每次的数据传送都有双滚码双加密的数据成分,在通信安全方面得到了进一步的升级[16~18]。
5 数据通信协议
考虑到家庭网络中的数据传输量很小,不需要很宽的传输带宽。因此家庭网络采用特殊的低速传输协议,低速传输协议数据的完整性强,系统更稳定,成本也更低。RF通信是通过辐射到空间的高频电磁波传播信息,受空间干扰较大。因此设计RF通信协议时,需要考虑数据校验,提高通信性能,减少伪数据和噪声的干扰[19]。本文中,RF通信采用固定的数据分组格式,帧数据主要包含地址信息、控制信息和数据信息,如图6所示。
图6 存储在TX FIFO中的数据分组格式
·地址信息:目的地址和源地址用于区分终端和控制端;家庭编号用于确保家庭设备地址的唯一性。
·控制信息:帧编号用于控制通信流程,记录发送帧和应答帧;帧类型记录控制端对终端的查询和控制操作信息以及终端对控制端的入网申请、报警、确认操作等信息。
·数据信息:记录家电的状态信息。
CC1101内置硬件支持数据分组传输协议,可以自动为存储在TX FIFO的有效数据载荷添加前导字节、同步字节以及可选的用PN9序列写入数据、前向误差编码和插入数据、CRC。最后传输的数据帧格式如图7所示。
图7 RF数据帧格式
在发送模式下,调制器最先传送可控字节的前导字节(010101序列,推荐4 byte),前导字节传送完毕后传送4 byte(或2 byte)的同步字节,然后传送TX FIFO中的有效载荷,最后计算所有TX FIFO中数据的检验和,发送2 byte的CRC。
6 实验测试
实验测试:发射功率为-10 dB以下时,穿透能力较差,信号强度弱,不能满足家庭多房间通信的要求;发射功率高达10 dB时,传输距离达40 m以上,考虑到家庭使用环境,功率过大会造成干扰,所以-5~5 dB的发射功率最为合适。当发射功率为0 dB时,电流消耗为16.1 mA,传输距离为15 m左右,可穿透室内墙壁(楼层间为钢筋混泥土材料,对无线传输干扰较大,有利于防止邻居间设备频率干扰)。当数据传输率为250 kbit/s时,接收器灵敏度为-88 dB,数据分组误码率为1%,满足系统要求。
7 结束语
智能家居终端设备的极大差异,造成内部网络形式多种多样,存在网络接口不统一的问题。本文首先介绍了基于RF通信的智能家居体系架构,其次针对接口不统一问题设计了四线控制家电的RF通信模块,该模块接口简单,具有高兼容性。通过自定义的RF通信协议,实现了家庭内部射频通信。最后,实验测试证明该模块可以实现收集家电信息、协议封装、数据收发、控制家电状态的功能。
参考文献
1 Gao M M,Shao L S.The design of wireless intelligence home system based on ZigBee.Proceedings of the 3rd International Conference on Computer and Electrical Engineering,Chengdu,China,2012
2 Song Y,Han B J,Zhang X.Modeling and simulation of intelligence home scenarios based on internet of things.Proceedings of the 3rd IEEE International Conference on Network Infrastructure and Digital Content,Beijing,China,2012
3 刘晗.基于Z-Wave技术的智能家居系统设计.复旦大学硕士学位论文,2012
4 徐景.智能家居无线嵌入式网关硬件平台的设计与实现.华中科技大学博士学位论文,2008
5 刘杰,章韵,陈建新.利用433 MHz射频通信技术实现智能家居系统.计算机应用,2012,32(S2):68~72
6 涂亮.基于433无线收发模块的物联网智能家居系统设计.电视技术,2012,36(6):44~46
7 温细金,汪波,黄佩伟.智能家居网络中基于RF的信息采集系统设计.电视技术,2008,48(2):92~96
8 韩晓英,张方樱,朱静.基于STM32单片机的智能家居控制系统设计与实现.硅谷,2013(132):14~15
9 Zheng Y H.An analysis on wireless communications technology in intelligent home.Proceedings of 2011 International Conference on E-Business and E-Government,Shanghai,China,2011:1~4,6~8
10 黄鹏,杨云志,李元忠.物联网推动RFID技术和通信网络的发展.电讯技术,2010,50(3):85~89
11 ST.STM8S103F3.http://www.st.com/web/catalog/mmc/FM141/SC1244/SS1010/LN754/PF215113
12 TI.CC1101 low-Power sub-1 GHz RF transceiver.http://www.ti.com.cn/cn/lit/ds/symlink/CC1101.pdf
13 乐升华.智能护理机器人近距离无线监控系统设计.电视技术,2013,37(21):63~66
14 魏永清,万宝年.具有软件模拟FIFO缓冲区的串口通信模块设计.嵌入式软件应用,2006,22(7):64~66
15 REN P.A wireless self-organizing and multi-hop network for intelligent home system.Proceedings of the 6th International Conference on Wireless Communications Networking and Mobile Computing,Chengdu,China,2010:1~4
16 钱萍,吴蒙.一种基于Hash函数的RFID安全认证方法.电信科学,2011,27(10):109~112
17 魏丽丽,董庆宽,丁文秀.一种基于公钥的低成本RFID双向认证协议.电信科学,2013,29(10):65~71
18 肖锋,周亚建,周景贤.标准模型下可证明安全的RFID双向认证协议.通信学报,2013,34(4):82~87
19 刘余,孟小华.嵌入式智能家居终端通信模块的设计与实现.计算机工程与设计,2010,31(8):1689~1692