1 引言
智能家居是将计算机、网络、通信、控制及布线等技术应用到住宅中,将家中的各种设备通过网络连接在一起,并使用无线遥控、电话或语音等便利的手段使用户更方便的对家庭设备进行操控,充分体现了以人为本的生活理念。家居网络是将所有的家用电器设备联结成一个网络,是智能家居的核心,它按照一定的通信协议对各设备实现控制和调节。家庭网络的控制可分为有线控制和无线控制,无线控制主要在家庭范围外,通过电话等无线设备来控制住宅内的电气设备,有线控制则用在住宅范围内对电气设备的控制。在诸多的有线控制技术中,电力载波技术应用较为广泛。电力载波技术通过电力线将控制信号传输给各电气设备,使控制端和家电设施形成了家居网络。电力载波分为高压载波和低压载波,高压载波用于远程的控制和调节,而低压载波由于其传输距离相对较近,主要用于家庭内部。电力载波技术利用电力线作为控制电器的传输介质,不用重新布线,降低了智能家居的成本,并方便更新和维护。本文通过对X-10协议的研究,实现了电力载波技术在智能家居控制中的网络化应用。
2 电力载波技术简介
电力载波通信是在工频为50Hz的电力输电线路上传输控制信号,以开放式网络结构对每个控制节点进行集中的控制。目前应用于电力载波上的通讯协议有BACnet(BuildingAutomationandControlNetwork)、EBI(EuropeanInstallingBus)、HBS(HomeBusSystem)以及X-10协议等等,其中X-10的信号频率为120kHz,比交流电信号频率要高的多,因此接收器很容易识别到。基于X-10协议的智能家居设计采用电力线载波通信技术,利用220V的电源线作为信号的传输介质,在智能家居中X-10协议也是比较主流的网络通讯协议。
2.1 X-10通讯协议介绍
X-10是国际通用的智能家居电力载波协议。X-10可以通过电力线实现设备之间的通信,并对设备传送控制命令。1976年英国PicoElectronics公司提出电力家居控制方案,并且该公司的工程师开发了X-10协议并获得专利。X-10模组引入美国后不仅在技术上得到了较大的完善,并开始应用于智能家居领域。自此,全球出现了大量智能家居生产厂家,各大电气公司如西门子、三星等等也都投身于智能家居领域。
目前,智能家居技术大致可分为三类:X-10电力载波、无线射频、集中布线。相比于后两种,X-10电力载波由于其发展时间长、用户数量多、升级方便、价格便宜等优点使其在这三类智能家居技术中发展最为成熟。各厂家采用的通讯技术也略有不同,但都考虑到X-10技术应用比较成熟,所以X-10电力载波技术理所当然的成为了智能家居中的主流技术。
2.2 X-10通讯原理
在网络系统中,为了保证通信双方能正确而自动地进行数据通信,针对通信过程的各种问题,制定了一组约定和规则,这些约定和规则的集合称为协议。
X-10通过在电力线上发送和接收信号来实现通讯。因此,X-10系统主要由两部分组成,即发射器和接收器。控制信号由发射器通过电力线传送给接收器,由接收器对电气设备进行控制。X-10的信号是叠加在交流电力线的过零点上的,由于脉冲信号越接近零点则干扰越小,所以将120kHz的编码信号加载到60Hz的电力线上,根据此时有无载波信号来表示传输数据的“0”和“1”。
图1 X-10信号的过零检测
发射器和接收器同时检测电力线的过零点信号以确定数据应该何时传送,但是X-10无法区分过零点时是上升沿还是下降沿。因此,在正弦波的零相位处有120kHz的脉冲群,而紧随这一脉冲群之后的1800相位处没有脉冲群则表示信号“1”。相反,在正弦波的零相位处无脉冲群,而紧随其后的1800相位处有脉冲群则表示信号“0”,如图2所示。
图2 “1”和“0”的判定
为了使接收器得知何时开始接收发射器发出的数据,需要设定一个启动点,当接收器检测到该启动信号时就开始接收数据。在连续的三个过零点处都有脉冲群,而接下来的一个过零点没有脉冲群,表示启动点生成完毕,其过程如图3所示。
图3 启动码的生成
为了线路转送装置能不错过任何传输信息,X-10让每个数据帧传输两次。一条完整的控制指令由4帧数据组成,前两帧传输被控设备地址,两帧之间无间隔。后两帧传输控制命令,两帧之间也无间隔,但前两帧与后两针之间有3个周期的间隔,所以每条控制指令需要47个周期。对于50Hz的电力线来说,47个指令周期接近1秒。
2.3 基于X-10协议的智能家居系统
X-10是国际通用的智能家居电力载波协议,如果通信的双方没有共同的通信协议,通信就不能同步地进行,或者由于数据格式的不一致,彼此不能理解对方的数据中所包含的信息,使得通信实际上还是不能进行。X-10电力载波在提供电流的同时又可以像网线一样传送控制指令,从而实现网络化的控制。
基于X-10协议构建的智能家居系统,主要由家庭网关和分布在家庭各处的符合X-10规范的家电设备组成。由于现在市场上大多数家电产品仍未在其内部提供对X-10协议的支持。因此暂时需要在电力线与家电电源之间增加一个X-10模块,由网关对X-10模块进行控制,间接实现对家电的控制。在系统中为了识别网络中的不同设备,采用了2位16进制编码,称之为地址码,这样系统中的所有被控制设备都被赋予一个唯一地址码。
每个X-10设备都被分配到一个地址,地址由“房间号”和“设备号”两部分组成。房间号的选择范围为字母“A-P”,设备号的选择范围为数字“1-16”。因而在一个基于X-10协议构建的智能家居系统中最多可同时控制16×16=256个不同地址的X-10设备,因此这套系统可容纳256个不同的地址,可以执行的指令包括:on,off,dim,bright,alllightson,allunitsoff。X-10协议规范对设备地址编码,用于逻辑表示,使用时参照协议中的转换表直接使用即可。
3 智能家居系统硬件设计
智能家居是通过统一的网格总线和控制平台来控制家庭内部电器设备的系统。设计系统主要有两部分组成:发送模块和接收模块。发送模块利用单片机程序将指令发送到接受模块上,其中包括目标设备地址信息。接收模块利用单片机程序实时检测电力线上的X-10信号。当检测到电力线上有信号时,就会把刚刚检测到的信号内所包含的地址信息与自身已经预设好的地址进行比较,如果相等则等待接收下一条X-10控制指令,如果与自身地址不相等,则将该地址信息简单的抛弃,继续等待下一条地址信息的出现。通过相应的指令做出对应的动作,达到对设备的实时控制。
图4 系统物理模型
智能家居是通过统一的网格总线和控制平台来控制家庭内电器设备的系统。控制网格主要由收发模块、阻波器、用电设备等组成。
3.1 nRF905芯片介绍
nRF905是挪威NordicVLSI公司推出的单片射频收发器,工作电压为1.9~3.6V,32引脚QFN封装(5×5mm),工业、科学和医学)频道,频道之间的转换时间小于650us。nRF905由频率合成器、接收解调器、功率放大器、晶体振荡器和调制器组成,不需外加声表滤波器,ShockBurstTM工作模式,自动处理字头和CRC(循环冗余码校验),使用SPI接口与微控制器通信,配置非常方便。其引脚及性能如表1所示。
nRF905有两种工作模式和两种节能模式。两种工作模式分别是ShockBurstTM接收模式和ShockBurstTM发送模式,两种节能模式分别是关机模式和空闲模式。nRF905的工作模式由TRX_CE、TX_EN和PWR_UP三个引脚决定。
表1 nRF905芯片引脚介绍
3.2 数据发送模块
当有数据要发送时,必须将nRF905设置为工作模式。通过SPI接口按时序把接收机的地址和要发送的数据送传给nRF905。此时,nRF905的TRX_CE和TX_EN引脚置高位,激发芯片的ShockBurstTM发送模式。然后,射频寄存器自动开启,数据打包(加字头和CRC校验码)之后开始发送数据包。当数据发送完成,数据准备好引脚被置高。
AUTO_RETRAN也立即被置高,nRF905不断重发,直到TRX_CE被置低。当TRX_CE被置低,nRF905发送过程完成,自动进入空闲模式。
ShockBurstTM的工作模式使得当数据开始发送后,即使TRX_CE和TRX_EN的引脚发生变化,都会将该数据包发送完之后再接收下一个数据包。
3.3 数据接收模块
首先通过TRX_CE置高、TX_EN置低,将nRF905设置为ShockBurstTM接收模式,使nRF905不断监测,等待接收数据。若检测到同一频段的载波时,载波检测引脚被置高。当接收到一个相匹配的地址,地址匹配引脚被置高。此时,数据包接收完毕,nRF905自动移去字头、地址和CRC校验位,然后把数据准备好引脚置高。同时微控制器把TRX_CE置低,nRF905进入空闲模式。微控制器又通过SPI口,把数据移到微控制器内。当所有的数据接收完毕,nRF905把数据准备好引脚和地址匹配引脚置低。nRF905此时可以进入ShockBurstTM接收模式、ShockBurstTM发送模式或关机模式。
3.4 线路阻波器
线路阻波器一般由电感型主线圈,调谐器以及保护元件构成,直接串接在高压输电线中载波信号连接点与相临的电力系统元件之间,来防止传输于外界电力线的信号干扰。阻波器按电路谐调方式分类,主要分单双频,频带及无调谐,图4为单频调和频带调谐阻波器电路图。
图4 阻波器电路图
4 智能家居系统软件设计
进入主程序入口后,首先对控制器进行初始化,然后对X-10进行过零检测。分别接收地址信号和控制命令,接受到X-10信号后查地址指令表,将该地址与存储地址进行比对,若匹配则执行控制命令,若不匹配则重新接收信号。
5 结论
X-10电力载波技术是针对智能家居网络化控制平台开发的通讯协议,由于其性价比高和技术成熟稳定的特点,在智能家居的应用中有广泛的应用。本文以该协议为基础构建了网络化控制平台,充分利用了电力线和网络资源,并通过设计一个简单的照明系统验证了X-10电力载波在智能家居应用中的可行性。