现在的位置: 首页 > 综合 > 正文

中间件upnp在智能家电嵌入式开放平台中的应用

2013年10月15日 ⁄ 综合 ⁄ 共 3123字 ⁄ 字号 评论关闭

  数字化技术的发展加速了各种智能化信息家电的出现,进而提出了互联、互通、互操作的要求。Internet技术向社会各个方面的渗透也促使家庭从网络的端点扩展为一个网络连接各种智能家电,形成家庭网络。家庭网络需要有效、开放、成熟的平台标准,包括网络接口标准和服务标准。
                
        实现智能家电平台的关键是中间件技术的应用。研究家庭网络中间件技术,解决设备间互联、互通、互操作问题,实现设备连接控制操作简单化、智能化,对加速信息家电的普及,促进家庭网络的发展,提高家庭信息化水平有着重要的现实意义。

  1 中间件的基本概念

                 
  对于中间件(Middleware)的定义,大多比较认同IDC(Internet Data Center)的表述:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源;中间件位于客户机/服务器的操作系统之上,管理计算资源和网络通信 [1]。
                 
  中间件提供的程序接口定义了一个相对稳定的高层应用环境,不管底层的计算机硬件和系统软件怎样更新换代,只要将中间件升级更新,并保持中间件对外的接口定义不变,应用软件几乎不需任何修改,从而保护了企业在应用软件开发和维护方面的重大投资。
                 
  家庭网络中间件主要用来屏蔽家庭网络下层的各种硬件设备和连接技术,为上层应用开发提供统一的接口,并实现信息设备的简单组网、智能控制及信息交换。
                
  2 实现智能家电平台的一些中间件技术

  
  2.1HAVi [2]
                 
  HAVi(Home Audio/Video Interoperability,家庭音频视频交互技术)是Sony公司联合日本、欧洲的8家IT及家电企业一起策划推出的面向家庭数字化AV产品的网络互联规范。它以IEEE 1394为基础,使来自不同厂商的数字音频、视频设备能够相互连接和操作,以构成家庭娱乐性的AV网络。它支持高速数据传输,允许设备预定带宽和其他资源,特别适合实时AV数据流的不间断传输。
                
  2.2 Jini [3]
                 
  Jini是SUN公司推出的基于Java的分布式对等系统。其目标是让网络上的成员能够方便地共享彼此的资源。为了让使用者知道网络上有哪些服务可被使用,必须首先建立一个联盟(federation),让网络上可用的服务主动加入。当某个服务加入联盟时,它就向整个网络宣布:我可以被使用,有谁需要我的服务。使用者通过联盟可以得知有哪些服务可以使用,并通过RMI和下载所需服务的方法与相应的设备进行通信。
                 
  2.3 UPnP [4]
  
  UPnP(Univeral Plug and Play,通用即插即用)是一个分布式开放型对等网络体系结构,充分利用了包括IP,TCP,UDP,HTTP和XML等互联网组件。UPnP为家庭中可能出现的动态环境提供了如何发现服务和如何实现服务的应用程序编程接口(API)。它通过简单服务发现协议和轻量级目录帮助协议来实现网上设备和服务的自动查录,并用XML描述设备的操作界面且产生控制信息。UPnP并未定义应用程序编程模型,而是由第三方针对不同操作系统或设备制定具体的编程模型,以在网上宣告设备提供的服务,查录其他服务和使用UPnP设备。

  2.4 3种技术比较                 

  HAVi重在解决家庭多媒体设备高速互联。Jini对实时性的支持较差[5]。而UPnP直接采用TCP/IP作基础而不必使用其他软件层过渡,软件模块相对较小,更加适合嵌入式系统。所以,在设计智能家电嵌入式开放平台时,中间件这个环节选用UPnP技术更为合适。
                 
  3 将UPnP应用于智能家电嵌入式开放平台

                                   
  嵌入式硬件平台的核心部分包括嵌入式处理器(CPU)、ROM和DRAM(或SDRAM等)。在这一部分选择的实验平台为EbestS3CEV40开发板。它基于S3C44B0X处理器(ARM7TDMI),硬件系统资源丰富,包含了嵌入式系统平台开发所需的所有设备。
                 
  操作系统层选择CLinux操作系统。它可以在没有MMU的处理器上运行,系统内核还可以根据实际需要进行裁剪。
                 
  应用层主要是友好的图形用户界面。通过下层提供的接口来实现用户对智能家电设备的控制。
                
  中间件层UPnP用来屏蔽网络传输介质的差异,保证UPnP设备具有互操作能力,保障设备和服务进行统一的描述。                  

  最下两层是IP和TCP/UDP层,这两层主要负责设备的IP地址。在这一层,UPnP屏蔽了复杂的下层网络传输介质。
                    
  第三层HTTP/HTTPU/HTTPMU属于传送协议层。传送的内容经过“封装”存放在特定的XML文件中。对应的GENA,SSDP,SOAP指的是保存在XML文件中的数据格式。

  第四层是UPnP设备架构定义,仅仅是一个抽象的、公用的设备模型。公用设备模型用来保证家电设备具有互操作性。
                 
  第五层是UPnP论坛的各个专业委员会的设备定义层。这一层保障了设备和服务的统一描述。
                 
  最上面的应用层是由UPnP设备制造厂商定义的部分。这一层的信息是由设备制造商来“填充”的,这部分一般有厂商提供的、对设备控制和操作的底层代码,以及名称序列号、厂商信息等。
                 
  UPnP运作过程如下:
                 
  在设备加入网络后首先通过 “寻址”自动获得一个IP地址,并利用ARP协议检测此地址的唯一性。
                 
  然后设备多播“发现”消息向设备控制点宣告其设备和服务(设备控制点也可以通过多播“发现”消息来搜索设备和服务)。这一步采用简单服务发现协议(SSDP)和通用事件通知架构(GENA)协议实现。
                 
  设备控制点在发现某一新设备后就向该设备发出消息,请求获取该设备“描述”,获得该设备的设备描述(描述所包含的物理与逻辑设备)及其所有服务描述(描述设备对外暴露的能力),从而知道该设备详细信息以及设备提供哪些服务。
                 
  在接收设备和服务描述之后,设备控制点就可以使用简单对象访问协议(SOAP)实施“控制”,向这些服务发出动作。设备控制点还要不断地轮询服务的状态变量值,这也是采用SOAP协议实现的。如果一个或多个状态变量的改变触发了某一“事件”,这一消息将通过GENA协议传给设备控制点。设备控制点根据该事件对该服务进行下一步控制。          
  
  最后,通过HTML页面“展示”用户界面,用户使用些界面来控制和浏览设备状态,实现交互。
                 
  UPnP技术由于其简单性和坚持开放标准,已得到了众多设备厂商的采纳。支持UPnP的手机、音响、打印机、扫描仪等智能家电设备已经研发成功。随着UPnP技术不断完善,将UPnP应用于智能家电嵌入式开放平台做出的产品在不久的将来定会步入百姓家庭。

抱歉!评论已关闭.