白色家电互联协议的研究与实现*

2011-05-11 03:48张苏真谢云
自动化与信息工程 2011年4期
关键词:智能家居白色单片机

张苏真 谢云

1 引言

随着家电形势的发展,国内许多家电企业已在或正准备研制网络家电,以适应人们对舒适生活和节能环保的要求。但是,一个家庭如果使用不同公司、不同通信协议的网络家电,就会出现各种家电难以互联互通的麻烦,因此,各种家电互联互通的发展势在必行。

目前使用较广泛的无线通信协议主要有蓝牙、802.11(WiFi)、IrDA、UWB、ZigBee 等[1,2]。但是以上无线通信协议各有特点,不适合白色家电互联低成本、低复杂度的要求。大多数家庭网络的研究方向是利用无线传感器技术构建内部局域网或者是接入Internet网络来实现对白色家电进行远程监控[3];其他还有 ZigBee技术在智能家居系统中的应用[4]和嵌入式技术在智能家居中的应用[5],上述方法成本较高。本文主要研究一种低速的互联控制网络,不考虑高QoS(Quality of Service 服务质量)和高速率大数据量的家庭数据网络,采用MCU和无线模块组建了白色家电的互联互通网络,实现对白色家电的低成本、低复杂度的控制。

2 家庭网络总体架构

白色家电的无线控制网络不需要很大的覆盖范围,一般选择星型拓扑结构便能满足要求。本设计就是采用星形网络,中间是主控器,四周是设备的各个终端节点。中央控制器可以为每个家电设备设定参数,此参数按照一定的通信协议组成固定的数据格式,通过CC1101无线收发模块,将信息以无线高频波的形式传送给家电设备,家电设备接收发来的控制信息后进行数据解码,分离出要执行的功能,然后执行操作。同样,家电设备也可以把执行的状态信息发送给主控器,以便主控器及时调整,实现新一轮的动作和功能。家庭网络互联框图如图1所示。

3 互联互通硬件实现

该无线控制网络主控器是核心部分。硬件上采用单片机STC89C52加按键电路等功能模块,并外接一个CC1101无线收发模块,以实现对家庭内部网络各种家电设备的控制。

STC89C52是一种带8K Flash 字节可编程、可擦写的低电压、高性能的微处理器。CC1101是一种集多种调制方式于一体的低成本单片UHF收发器,专为低功耗无线应用而设计,电路主要设在315MHz、433MHz、868MHz和915MHz的ISM和SRD频率波段。本设计选用了433MHz频率波段。单片机与无线模块的电路连接图如图2所示。终端节点由2051单片机、无线收发模块CC1101等部分组成。

在系统设计中,所有的节点设备都只能直接和主控制器通信,但节点之间可通过主控器互相通信。当一个节点需要发信息给另一个节点时,并不会直接把信息发给该节点,而是首先把信息发送给主控制器,然后由主控制器把这个信息转发给目标终端节点设备。主控制器是整个网络的中心,有固定的网络地址,这是作为主控制器区别于其它节点设备的主要依据。主控制器以 CC1101无线收发模块作为无线通信接口,通过对主控平台编写程序实现网络的形成和管理,以及对各个节点设备的响应和控制。各节点负责接收无线指令数据和发送节点信息。

图2 单片机与无线模块的电路连接图

4 互联协议设计

家庭网络协议主要作用是实现主控制器与各家电终端节点的相互通信,为网络中数据交换而建立的规范、标准,使主控器能识别各个家电,各个家电又能识别出主控器的控制信息的发送对象。按照此标准能够彼此认识,读懂互发的数据。

4.1 帧结构设计

数据帧格式为:家电设备地址+操作类型+参数类型。家电设备地址包括家电设备组号和设备成员号。家电设备组号是指把同一类型的家电归为一组并编号,设备成员号是同个设备不同成员号。操作类型是表示对设备具体功能控制,比如空调调成制冷模式。参数类型是功能操作的具体类型,在制冷模式的基础上选择风的摆向。数据帧结构如表1所示。

表1 数据帧结构

操作类型包括功能码和状态码,从表中可以看出操作类型字节的最高位,用来区分功能码和状态码。最高位为0,是功能码,表示主控器发送命令给各个设备;最高位为1,是状态码表示设备把执行情况反馈到主控器。

表2 数据帧应用举例

4.2 程序流程图

主控器的软件流程图如图3所示。对CC1101初始化完成后,进入主循环程序。此时主控器发送地址信号后,节点设备进行判断,如果地址相符节点设备给出应答,主控器收到应答后发送命令信号,节点设备收到命令给出应答,判断命令正确后进行命令分类,设备节点就进入发送或接收数据状态,不正确的命令直接剔除。

图3 主控器程序流程图

从节点设备的软件流程图如图4所示。节点设备先判断地址是否相符,地址相符后给主机一个应答信号,主机开始发命令字,节点设备对命令字进行判断并分类,确定是接收还是发送数据之后,从机准备就绪,开始接收、发送数据,执行完返回进行新一轮命令。在接收状态下,如果收到主控器发送的数据,对应的LED会出现闪烁,并把接收到的数据通过串口输出,此时,可通过PC机的串口调试助手看到输出结果。

图4 从节点程序流程图

5 实验结果分析

本实验是以一个主控器、两个终端节点作为测试,以窗户关闭、空调打开为例。主控器发送关窗命令,窗户关闭并给主控器发送完成信息,主控器接着给空调发送打开命令,空调响应后反馈主控器完成状态。完成这一功能,循环发送数据100次,然后对测试结果进行分析。星形网通信测试结果如表3所示。

表3 星形网通信测试结果

实验结果分析:在星形网络中进行数据传输,结果明显差于点对点的传输方式,主要因为在传输过程中终端节点设备之间存在一定的频率干扰和其他干扰源的干扰。

CC1101无线模块是3.3V供电,而单片机是5V供电,要进行5V到3.3V的转换,转换后才能把模块直接与单片机相连,网络实际连接效果如图5所示,a为主控器,b为终端节点。

图5 网络实际连接效果图

6 结束语

本文是为国家大型企业开发的低成本,适合白色家电互联互通的协议项目。通过本设计,组建了一个小型网络,能够方便地控制某些家电,完成白色家电互联技术的基础研究,解决互联互通的关键技术,将多个白色家电终端在家庭范围内组网实现智能互联。

[1] 唐京城.无线智能家居控制网络及其协议的设计[D].武汉:华中科技大学,2006.

[2] A Summary of Short Range Wireless in 2003. http://www.techonline.com, 2003.

[3] 卢朋.白色家电远程监控系统的设计与实现[D].武汉:武汉理工大学, 2010.

[4] 南忠良,孙国新.基于 zigbee技术智能家居系统的设计[J].电子设计工程,2010(7):117-119.

[5] 朱宇阳.智能家居嵌入式网关设计[D].上海:华东师范大学,2009.

猜你喜欢
智能家居白色单片机
基于单片机的SPWM控制逆变器的设计与实现
基于PLC的智能家居控制系统研究
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
基于Zigbee的无线通信技术在智能家居中的应用
雪为什么是白色的
智能家居发展或将实现弯道超车
总之就是要选白色
总之就是要选白色