摘要:目前国内市场推出的智能家居产品大多基于公司自定义的某种标准,由于未经长时间的应用验证和业界的普遍认同,其技术有两个明显的缺陷:不同公司的产品无法互联、互操;产品不具备即插即用功能——易用性差。本文遵循美国电子工业协会标准(EIA600,EIA721),参照微软和消费总线委员会(CIC)的简单控制协议SCP,以及家电即插即用技术规范(HomePnP)模型,给出了基于该技术规范的构建技术。HomePnP中传输协议的独立性和上下文绑定等机制,使得不同厂家的家电互联、互操和即插即用成为可能。

    关键词:HomePnP SCP CEBus EIA600, EIA721

    
智能家居要求家用电器经网络(总线)实现互联、互操和即插即用。目前,国内市场的相关产品大多基于自定义的某种技术规范,尚无得到广泛认同的统一家电接口标准。从技术角度而言,更多意义上还是一种概念性产品。国家经贸委和信息产业部第七标准化小组将在2003年推出有关智能家居网络系统的标准,其中一个重要的标准就是家电的接口规范。智能家居产业的健康发展有赖于这一标准和规范的指导。

国际上主流的家庭网络标准有:美国的X10、消费总线(CEBus)、日本的家庭总线(HomeBus)、欧洲的安装总线(EIB)。技术上并不先进的X10,只支持开关量,用于面板开关和继电器类的简单电器,但凭借价格低廉、性能可靠,尤其是它的易用性,一般用户均能自行安装,商业上取得了巨大的成功:450万户美国家庭采用X10,累计销售了1.2亿个模块。1984年,美国电子工业协会(Electronics Industry Association EIA)认为X10协议已经不能满足现代生活的需要,并在1992年发布了CEBus(Consumer Electronic Bus)协议,其目标是建立一个针对消费类电子产品的开放性协议。1994年,CEBus工业委员会(CIC)成立,其成员为国际知名厂商。2002年6月,微软和CIC共同宣布支持基于CEBus的简单控制协议SCP,SCP是微软UPnP协议的子集。如果说X10是在低技术层次上,通过简单的操作来达到产品易用性,则CEBus是在高技术层次上,通过家电的互联、互操和即插即用来实现产品的易用性。HomePnP(HPnP)是CIC制定的基于公共应用语言(Common Application Language,简称CAL)的家电系统相互协同进行互操的规范。HPnP不是一种语言,它为支持CAL的家电提供统一的应用规则来实现家电的即插即用功能。

 HPnP中传输协议的独立性

传输协议的独立性是HomePnP规范的最主要目标之一。 HomePnP规范使生产厂家可以使用一个应用协议,并选择合适的独立的传输网络(RF,PL,IR)。由于HomePnP计划运行于已有的消费电子产品协议如CEBus和IEEE 1394(Fire Wire)之上,所以它对下面的传输层只提出最少的要求,保持其独立性。

家庭产品即插即用(HomePnP)采用分层结构,通过三个主要的功能模块来处理应用层和更高层的问题。如图1所示。

最下层代表应用层及其相关的公共应用语言(CAL),它包含在EIA-600(CEBus)、EIA-721和EIA-766标准中,从而免去在不同产品之间设置昂贵的语言翻译网关。

上下文数据结构层代表各种各样用CAL句法开发而成的产品模型。通过定义安防、照明、环境、能源管理、家电设备、计算机和娱乐等的上下文,构成业界认同的家电产品模型。

最上层是系统指南,它指出即插即用安装的产品必须具有哪些行为特征。这些指导性的原则涉及到EIA-600中尚未解决的一些难题。

 HPnP的结构

HomePnp通过5个不同层次的架构来实现家电的互操性。如表1所示。

HomePnP的架构 组成要素
 
CAL
提供的构造模块 设备,上下文,上下文号,对象,实例变量,CAL报告,HomPnP广播和直接消息传输 
HomePnP
采用的构造模块 子系统,状态对象,侦听对象,请求对象,传感器信息共享,报警和故障诊断报告,家居模式 
子系统间的互操性模块 松耦合,动态上下文序号,状态信息广播,状态向量,自动绑定和手动绑定 
子系统内的互操作模块 紧耦合,安装工具 
其他的互操需求 设备启用,设置,资源管理,消息处理,认证和加密的传输需求 

下面,仅对HomePnP构造模块和子系统互操模块进行介绍。

2.1 子系统subsystem

子系统是家庭控制网络中功能相似和相关的设备和设备集。例如:安防系统、照明系统、环境控制系统、家庭娱乐系统。一个子系统包含了一系列的CAL上下文,这些CAL上下文分别负责一部分的控制功能。HomePnP的子系统可以只存在一个设备当中,也可以分布在多个设备当中。

2.2 状态对象,侦听对象和请求对象

在CAL中按照设备的功能预定义了多种对象,在HomPnP中按照对信息的收发方式将这些对象分为3类,分别采用一种特定的符号来表示。

状态对象(status object):也称为信息提供者,它具有报告功能,对象的报告头report_header报告地址report_address绑定到CAL的报告功能向后面的侦听对象发送状态或数据;其中状态对象又细分为接收和不接收请求对象命令两类。

侦听对象listener object:它接收状态对象的报告,并能够根据接收的内容调整自己的工作。侦听对象没有报告功能。

请求对象reqeust object:能够发送请求改变状态对象的状态,它也是采用报告的机制实现的,请求对象的目的上下文就是状态对象所属的上下文。

在一个家庭自动化网络中,请求对象引起设备改变状态,接着状态对象公布设备状态的变化,所有的工作着的侦听对象都能收听到这个状态信息。这三种对象构成各子系统并通过松耦合实现互操作的基础。

2.3 家居模式上下文(Home Mode Context)

家居模式上下文是用来表示当前家庭状况的一个上下文,这是HomePnP一个重要的特性。这个上下文为所有的HomePnP子系统提供了表示当前家庭状况(如在家,离开,休息)的通用方法。通过接收关于这个上下文的HomePnP广播,所有子系统可以根据它们自己的设计来调整相应的行为。这种方法为家庭控制系统提供了一个完整和协调的解决方案。

 互操性及其相关概念

互操性是指子系统可以和其系统内部的设备或者和其它的子系统进行协同工作,也就是说CAL的上下文模型支持子系统内或者子系统间的上下文协同工作。图2是互操性的模型示意。

3.1 绑定(bind)

对象之间的连接称为绑定”(bind)。图3是一个带状态反馈的控制面板、指示面板与电风扇绑定,用户操作控制面板发出控制信号到电风扇的侦听对象,电风扇的工作状态改变之后,又发出一个报告,这个报告反馈到控制面板,指示用户命令执行状态,同时另一个指示面板也收到电扇的状态报告,从而可以在远端更新指示。每个符号的箭头表示信息的流向。

在HomePnP中定义了缺省报告地址、目的对象以及用CAL描述的报告内容的数据格式。当报告地址采用广播地址的时候,所有的设备都可以听到这个消息,但是不是所有的设备都会处理这个消息,因为有些设备没有报告中指定的目的对象。因此,一个传感器设备可以按照规定将测量得到的信号根据HomePnP的要求以CAL报告的形式发送到网络上;在其它设备中构造一个目的对象,也就是侦听对象,就可以获取这个信息。

3.2 子系统间的互操性

子系统间的互操性主要表现为松耦合(loose coupling)和缺省绑定(default binding)。

在HomePnP的规格说明书中,对每一种状态对象都规定了相应的侦听对象,它们有特定的对象序号,存在于特定的上下文中。状态对象在缺省情况下向一个正确的侦听对象发送消息。当然,侦听对象可以选择接收哪一个设备发出的状态消息,这就是缺省绑定

某个状态设备正常工作时,用缺省绑定的方法把信息广播到网络上,它并不关心那些设备收到了消息。其它设备中只要有一个对应的侦听对象就可以获得这个信息,这样就可以省略数据链路层的绑定过程。由于收发设备之间没有明确的地址联系,因而称为松耦合(loose coupling)。松耦合采用HomePnP广播地址作为其报告地址。

松耦合是HomePnP的一个特点。HomePnP结构采用子系统松耦合等新思想,使设备的复杂性可按自然形态分层。在松耦合方式中,子系统可以向所有其它的HomePnP子系统报告状态信息,使得厂家在设计产品时不必详细了解其它厂家的产品。例如,我们可以设计一安全系统:如果窗户打开时空调器被启动,安全系统便发出告警。采用松耦合方式,安全系统只需配备一个合适的收听对象,用于收听来自环境监视的信息,按照约定接收来自空调器的报告。安全系统可以根据自己的设计决定使用或者不使用这个信息。请求对象也可通过网络引起状态变化。

3.3 系统内的互操性

HomePnP中也支持以确定的目的地址作为状态对象的报告地址的报告机制,这种报告叫做紧耦合(tight coupling)。由于紧耦合有明确的目标地址,因此可以减少网络冲突,并可以采用立即响应的方式。

子系统内的互操一般采用紧耦合的方式,如温控器和空调的关系,开关和灯的关系等等。紧耦合和松耦合的方法不同,松耦合的对象之间用虚线相连,表示为HomePnP广播消息,而紧耦合的对象之间用实线相连。

  安防 环境控制 空调 网络 解决方案

免责声明:凡注明为其它来源的信息均转自其它平台,目的在于传递更多信息,并不代表本站观点及立场。若有侵权或异议请联系我们处理。

相关推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注