CN101184063A - 控制非通用即插即用UPnP设备的方法、装置及其系统 - Google Patents
控制非通用即插即用UPnP设备的方法、装置及其系统 Download PDFInfo
- Publication number
- CN101184063A CN101184063A CNA2007101238286A CN200710123828A CN101184063A CN 101184063 A CN101184063 A CN 101184063A CN A2007101238286 A CNA2007101238286 A CN A2007101238286A CN 200710123828 A CN200710123828 A CN 200710123828A CN 101184063 A CN101184063 A CN 101184063A
- Authority
- CN
- China
- Prior art keywords
- upnp
- equipment
- service
- device driver
- interface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种控制非通用即插即用UPnP设备的方法,当接收到控制点发送服务请求消息后,根据请求消息中请求的UPnP服务内容,查询UPnP服务与非UPnP设备驱动程序接口的对应关系,查找到所述非UPnP的设备驱动程序接口,进而驱动设备完成相应的服务动作。利用本发明提供的控制非通用即插即用UPnP设备的方法,可以使不具有UPnP功能的非UPnP设备,无须作改动便可实现UPnP功能,接受UPnP网络中控制点的控制,实现信息交互和资源共享。本发明还提供了一种网络设备适配装置和一种通信系统。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种控制非通用即插即用UPnP设备的方法及其装置,和一种通信系统。
背景技术
目前,随着家庭网络技术的发展,特别是UPnP(Universal Plug andPlay,通用即插即用)协议的使用,越来越多的家电设备使用UPnP技术来实现互相通信和资源共享。UPnP是针对智能家电、无线设备以及各种外观尺寸的个人电脑的普遍对等(peer-to-peer)网络连接而设计的一种架构。它旨在为家庭、小型企业、公共场所中或连接到互联网的ad-hoc网(来源于阿拉伯语,表示一种特殊的多跳移动无线网络拓扑)或为管理网络提供易于使用、灵活且基于标准的连接。UPnP是一个充分利用TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制/网际协议)和Web技术的分布式开放型网络体系结构,除能够在家中、办公室和公共场实现所联网设备之间的完全控制和数据传输之外,还可建立无缝紧密的网络连接。
服务、设备和控制点是UPnP网络的基本组成成分。在UPnP网络中,最小的控制单元就是服务。服务描述的是设备在不同的情况下的活动和设备的状态。UPnP网络中定义的设备具有很广泛的含义,各种各样的家电、电脑外设、智能设备、无线设备、个人电脑等等都可成为其中一员。在UPnP网络中,控制点指的是可以发现并控制其他设备的控制设备。UPnP设备通过SSDP(简单服务发现协议)协议向网络中的控制点宣告其服务;UPnP控制点通过SSDP协议发现UPnP设备,并通过SOAP(简单对象访问协议)协议来控制UPnP设备。
在UPnP等家庭网络技术出现之前,已经存在了多种家电设备和电子产品,特别是一些智能家电设备,本身资源丰富,功能强大,然而这些设备原先并不是针对UPnP网络设计的,本身不具备UPnP功能,无法加入UPnP网络,使用UPnP方式进行控制。同时,由于设备自身资源有限等原因,许多简单家电设备无法在原有的平台上提供UPnP功能。为了使得原有的家电设备和电子产品得到充分地利用,适应UPnP网络发展的需要,需要设法使得这些不具备UPnP功能的设备(非UPnP设备),能够加入到UPnP网络中来,实现信息交互和资源共享。
现有技术是在原有非UPnP设备的基础上,开发与之相对应的UPnP设备程序,添加UPnP相关功能,使其成为UPnP设备;对于不具备信息处理能力的非UPnP设备,则要另外添加控制部件,以处理UPnP协议和实现发现控制机制。如果开发的设备是UPnP论坛定义的标准设备,就遵从UPnP论坛定义的设备描述模板和服务描述模板编写设备描述文件和服务描述文件。对于一些非UPnP标准设备,则另外设计专用的设备描述文件和服务描述文件。
发明人在实现本发明的过程中,发现现有技术至少存在以下缺点:
(1)对每一种非UPnP设备都要重新开发与之对应的UPnP设备程序,开发周期长。
(2)对于尚未成为UPnP论坛标准的设备需要自行设计设备描述文件和服务描述文件,并且开发的设备通常只针对某一类产品,如果有新的产品,还需要重新修改描述文件并开发相应的UPnP设备程序,互通性差,制造厂商缺少开发UPnP设备的动力。
发明内容
本发明实施例目的在于提供一种控制非通用即插即用UPnP设备的方法和装置,可用较低的成本使非UPnP设备成为UPnP设备。
一方面,本发明实施例提供了控制非通用即插即用UPnP设备的方法,包括以下步骤:
根据所述非UPnP设备的服务信息向UPnP网络中的控制点通知所述非UPnP设备的服务内容;
接收所述UPnP网络中控制点对所述非UPnP设备的请求消息,根据所述请求消息中请求的UPnP服务,通过所述UPnP服务与所述非UPnP设备的设备驱动程序接口的对应关系,查找到所述非UPnP设备对应的设备驱动程序接口,其中所述UPnP服务是所述服务内容中的至少一种;
通过所述设备驱动程序接口调用所述非UPnP设备的设备驱动程序,控制所述非UPnP设备完成所述UPnP服务。
另一方面,本发明实施例提供了一种网络设备适配装置,包括:
存储模块,用于存储至少一种非UPnP设备的相关信息,所述相关信息包括所述非UPnP设备的设备信息和服务信息、所述非UPnP设备的设备驱动以及所述UPnP服务与所述非UPnP设备的设备驱动程序接口的对应关系,其中所述服务信息包含所述非UPnP设备的服务内容,所述UPnP服务是所述服务内容中的至少一种;
接口模块,用于提供与非UPnP设备进行通信的接口;
通信模块,用于提供与UPnP网络进行通信的接口;
适配模块,用于从所述存储模块获取所述设备信息和服务信息,并根据所述设备信息和服务信息,通过所述通信模块向UPnP网络中的控制点通知所述非UPnP设备的服务内容,以及从所述通信模块接收所述控制点对所述非UPnP设备的请求消息,根据所述请求消息中的UPnP服务,通过所述对应关系,找到所述非UPnP设备对应的设备驱动程序接口;
驱动模块,用于通过所述设备驱动程序接口调用所述非UPnP设备的设备驱动,通过所述接口模块控制所述非UPnP设备完成所述UPnP服务。
再一方面,本发明实施例还提供了一种通信系统,包括:
至少一个非UPnP设备、网络设备适配装置、UPnP网络和至少一个UPnP控制点,所述网络设备适配装置包括:
存储模块,用于存储至少一种非UPnP设备的相关信息,所述相关信息包括所述非UPnP设备的服务信息、所述非UPnP设备的设备驱动程序以及所述UPnP服务与所述非UPnP设备的设备驱动程序接口的对应关系,其中所述服务信息包含所述非UPnP设备的服务内容,所述UPnP服务是所述服务内容中的至少一种;
接口模块,用于提供与非UPnP设备进行通信的接口;
通信模块,用于提供与UPnP网络进行通信的接口;
适配模块,用于从所述存储模块获取所述服务信息,并根据所述服务信息,通过所述通信模块向UPnP网络中的控制点通知所述非UPnP设备的服务内容,以及从所述通信模块接收所述控制点对所述非UPnP设备的请求消息,根据所述请求消息中的UPnP服务,通过所述对应关系,找到所述非UPnP设备对应的设备驱动程序接口;
驱动模块,用于通过所述设备驱动程序接口调用所述非UPnP设备的设备驱动程序,通过所述接口模块控制所述非UPnP设备完成所述UPnP服务。
本发明的有益效果是:通过建立UPnP服务与设备驱动程序接口之间的对应关系,使得对设备的服务调用可以通过相应的设备驱动程序接口来执行动作,如此一来可以充分利用原有的设备驱动程序,使不具有UPnP功能的各种非UPnP设备被UPnP网络中的控制点发现和控制,实现资源共享和信息交互。使用者无需对原有设备进行改动,无需开发相应的UPnP设备程序,便可使非UPnP设备实现UPnP功能,缩短了开发UPnP产品的周期。且本发明实施例提供的网络设备适配装置,可以兼容多种不同的设备,使用灵活,通用性强。
附图说明
图1为本发明实施例一提供的控制非通用即插即用UPnP设备的方法的流程图
图2为本发明实施例一提供的控制非通用即插即用UPnP设备的方法中非UPnP设备的UPnP服务与设备驱动程序接口之间的对应关系示意图
图3为本发明实施例提供的网络设备适配装置实现非UPnP设备与UPnP网络连接示意图
图4为本发明实施例二提供的网络设备适配装置结构图
图5为本发明实施例三提供的网络设备适配装置结构图
图6为本发明实施例四提供的网络设备适配装置结构图
图7为本发明实施例五提供的通信系统结构框图
图8为本发明实施例五提供的通信系统中控制点控制云台摄像头的过程示意图
具体实施方式
本发明实施例提供一种控制非通用即插即用UPnP设备的方法,能够使不具备UPnP的设备成为UPnP设备,享受UPnP的各种功能,接受UPnP网络控制点的控制。本发明实施例还提供了一种网络设备适配装置和通信系统。以下分别进行详细说明。
实施例一
图1是本发明实施例提供的控制非通用即插即用UPnP设备的方法流程图,包括以下步骤:
步骤A、根据所述非UPnP设备的服务信息向UPnP网络中的控制点通知所述非UPnP设备的服务内容;
在步骤A之前还可以包括:检测到非UPnP设备。所述检测到非UPnP设备的可以是由用户输入配置信息来提示非UPnP设备的接入,所述配置信息包括设备类型,设备型号,制造厂商等。若该非UPnP设备具有信息处理能力,则根据其发送的信息本发明的控制非通用即插即用UPnP设备的方法可自动检测到该非UPnP设备。
服务信息包含了非UPnP设备所能提供的服务内容的描述,步骤A中的服务信息在本实施例中具体为服务描述文件,
本实施例采用UPnP论坛规定的UPnP描述文件,包括设备描述文件和服务描述文件。所述设备描述文件的内容包括特定厂商、制造商信息,如模块名称和编号、序列号、制造商名称、特定厂商网站URL(Universal Resource Locator,统一资源定位器)等。服务描述文件的内容包括一系列命令,或动作,服务的响应与每种动作的参数,或变量。服务描述文件还包括一系列变量,这些变量描述了服务运行时的状态,其中包括数据类型、取值范围和事件特性的描述。简单的说,服务描述文件描述了设备的能力范围,控制点可以根据服务描述文件获知设备所能提供的服务以及设备所处的状态。
UPnP论坛制定了基于XML(Extensible Markup Language,可扩展标记语言)语言的设备描述模式的标准,并定义了一些标准设备,提供了相应的XML设备描述文件模板。对于UPnP论坛已经定义的设备,则根据其相应的设备描述文件模板编写设备XML描述文件和服务XML描述文件。对于非UPnP论坛定义的标准设备,则自行设计相应的设备XML描述文件和服务XML描述文件。
本发明的控制非通用即插即用UPnP设备的方法中,预先配置有前述的多种非UPnP设备的设备信息和服务信息,具体为设备描述文件和服务描述文件。根据需要,也可以添加更多非UPnP设备的设备信息和服务信息,以支持更多的非UPnP设备类型。
步骤A中向UPnP网络中的控制点宣告所述非UPnP设备的服务,即向控制点广播所述非UPnP设备基本信息,宣告该非UPnP设备可用,使控制点能够发现该设备,获取该设备的服务信息,了解非UPnP设备的功能。
步骤B、接收所述UPnP网络中控制点对所述非UPnP设备的请求消息,根据所述请求消息中请求的UPnP服务,通过所述UPnP服务与所述非UPnP设备的设备驱动程序接口的对应关系,查找到所述非UPnP设备对应的设备驱动程序接口,其中所述UPnP服务是所述服务内容中的至少一种;
若控制点要求某一非UPnP设备的服务,则控制点首先发送请求消息,请求该设备的某一UPnP服务。由于非UPnP设备本身不具备UPnP功能,并不能直接响应该请求消息并做出相应的服务动作。本实施例通过为UPnP服务与设备驱动程序接口建立对应关系,使得对非UPnP设备的UPnP服务请求,可通过相应的设备驱动程序接口来执行。具体地说,根据控制点发送的请求消息中请求的UPnP服务内容,通过上述对应关系便可找到对应的设备驱动程序接口,调用对应的设备驱动程序,控制设备完成相应的服务动作。
UPnP服务指的是控制点要求非UPnP设备实现的功能或者参数设定,例如,一台不具有UPnP功能的打印机,通过本发明的方法连入到UPnP网络中,那么远程的一台计算机(即控制点)就可以发送请求消息,请求这台打印机提供打印服务。但是这台打印机由于本身不具有UPnP协议处理能力,不能直接将请求消息转化为动作命令。每台打印机都配备有设备驱动程序,设备驱动程序是实现打印机与操作系统通信的接口,而操作系统对设备驱动程序的调用,则是通过设备驱动程序接口(DDI)来完成的,即设备驱动程序接口提供了设备驱动程序的入口。因此,将控制点请求的UPnP服务与设备驱动程序接口建立对应关系后,前面所述的当远程计算机请求打印服务时,根据上述对应关系找到打印机驱动程序接口,进而调用打印机驱动程序执行打印动作。
对应关系的建立可以包括以下步骤:将服务信息中的UPnP服务内容与设备驱动程序接口建立映射关系。UPnP服务内容可以是服务名称,服务动作,或者服务标识(ID),设备驱动程序接口内容可包括指向完成所述UPnP服务需要用到的设备驱动程序存储地址的指针,或者指向驱动程序函数的函数指针,或者驱动程序函数名称。例如,将所述服务ID与所述函数指针建立一一对应关系。所述的对应关系可以集中在一起形成映射表;或者分散在其他位置,例如将函数指针嵌入UPnP服务描述文件中,并将函数指针与所述UPnP服务建立对应关系,通过服务描述文件便可找到设备驱动程序接口。
以下以一个具体的实施例阐述上述对应关系的建立。本实施例定义了设备驱动程序接口(DDI)描述文件,该DDI描述文件描述了设备驱动程序接口通过调用相应设备驱动程序实现对设备的使用和控制的方式。其内容可以包括有对设备驱动程序进行调用的驱动程序函数指针。所述驱动程序函数指针指向的内容为相应的驱动程序函数在存储器中的存储地址。
本发明所述的UPnP服务与设备驱动程序接口的对应关系在本实施例中具体为UPnP服务描述文件中的服务ID与设备驱动程序接口描述文件中的驱动程序函数指针的对应关系,如图2所示,每个非UPnP设备能够提供一个或多个的服务,对于UPnP网络来说,就是一个或多个的UPnP服务(以下均称为UPnP服务),如非UPnP设备a可提供三个UPnP服务其标识分别为a1、a2、a3,分别对应于设备驱动程序接口中的三个驱动程序函数b1、b2、b3。将服务标识与驱动程序函数的指针建立对应关系,形成映射表。
本实施例所述的设备驱动程序,可以与服务信息一起存放在本地存储器,也可以存放在远程服务器上,通过URL地址访问。若设备驱动程序存放在远程服务器,则建立对应关系的步骤可包括:将存放设备驱动程序的URL地址嵌入到驱动程序接口描述文件中,并建立URL地址与UPnP服务的对应关系,则对UPnP服务的请求,就可以通过URL地址读取并调用远程服务器上的设备驱动程序,控制相应的非UPnP设备完成对应的服务动作。
所述UPnP服务与所述设备驱动程序接口的对应关系是预先建立好的,也可以根据需要为新增的非UPnP设备建立相应的对应关系,
步骤C、通过所述设备驱动程序接口调用所述非UPnP设备的设备驱动程序,控制所述非UPnP设备完成所述UPnP服务。
针对请求消息中的特定UPnP服务内容,找到对应的设备驱动程序接口之后,通过该设备驱动程序接口调用非UPnP设备的设备驱动程序,控制该非UPnP设备完成相应的服务。从而实现了控制点对非UPnP设备的控制。
为了让控制点了解非UPnP设备所处的状态,可以返回相应的服务动作结果给控制点,以便控制点决定下一步的动作。
根据上述控制非通用即插即用UPnP设备的方法,可以使不具备UPnP功能的设备(非UPnP设备),添加入UPnP网络中来,被UPnP控制点发现并接受UPnP控制点的服务调用。
以上仅是本发明提供的控制非通用即插即用UPnP设备的方法的较佳实施例,实际运用中,还可以进行各种变通,例如本方法并不限定于在linux环境中使用,还可以在其它操作系统平台上如WINDOWS上使用,只是具体建立对应关系的步骤会相应地变化。建立对应关系也不限于上述方法,均可根据具体应用需要而调整。
实施例二
本发明实施例还提供了一种网络设备适配装置,如图3所示,单个或多个非UPnP设备可以通过该UPnP适配装置400连接到UPnP网络中,与控制点进行信息交互,接受控制点的控制。
如图4所示为本发明实施例二提供的网络设备适配装置结构图,网络设备适配装置400包括:
存储模块401,其存储有至少一种非UPnP设备的相关信息,包括服务信息以及设备驱动程序接口信息,具体来说是服务描述文件以及设备驱动程序接口描述文件。存储模块还存储有至少一种非UPnP设备的设备驱动程序,通过相应的设备驱动程序接口可调用该设备驱动程序,来控制非UPnP设备完成特定的服务动作。本实施例中,所有描述文件均采用UPnP论坛规定的XML语言格式,实际运用时,可以用其他语言格式来描述。存储模块401还配置了非UPnP设备的UPnP服务与设备驱动程序接口之间的对应关系。存储模块所存储的内容可以根据需要不断更新或添加。
接口模块402,用于提供与非UPnP设备进行通信的接口。接口模块402提供了多种接口协议支持,如串口通信协议,并口通信协议,USB接口通信协议,IEEE1394接口协议等,以支持各种类型的非UPnP设备的不同通信协议。
通信模块404,用于提供与UPnP网络的进行通信的接口。通信模块404提供了多种通信协议方式,如以太网通信协议,无线通信协议等,使得所述网络设备适配装置可通过多种方式连接到UPnP网络。
适配模块405,用于从所述存储模块获取所述服务信息,并根据所述服务信息,通过所述通信模块向UPnP网络中的控制点通知所述非UPnP设备的服务内容,以及从所述通信模块接收所述控制点对所述非UPnP设备的请求消息,根据所述请求消息中的UPnP服务,通过所述对应关系,找到所述非UPnP设备对应的设备驱动程序接口;
驱动模块403,用于通过所述设备驱动程序接口调用所述非UPnP设备的设备驱动程序,通过所述接口模块控制所述非UPnP设备完成所述UPnP服务。
为了便于理解上述各个模块的功能以及各模块之间的关系,下面加以详细介绍。
如图4所示,非UPnP设备D1通过接口模块402连入网络设备适配装置400,适配模块405检测到该非UPnP设备D1,并从存储模块获取相应的服务信息,通过通信模块404,向UPnP网络广播该设备的基本信息,宣布该非UPnP设备D1的服务可用。
控制点C1通过通信模块404向适配模块405发送请求消息,适配模块405根据请求消息中请求的特定UPnP服务内容,通过UPnP服务与非UPnP设备的设备驱动程序接口的对应关系,找到该特定UPnP服务对应的设备驱动程序接口,并将结果发送给驱动模块403,驱动模块403通过该对应的设备驱动程序接口调用非UPnP设备D1的设备驱动程序,通过接口模块402向非UPnP设备发送控制指令,控制非UPnP设备D1完成特定UPnP服务对应的动作。
可选地,非UPnP设备D1返回动作结果,将自身状态变化情况通过接口模块402发送给适配模块405,适配模块405可将设备变化情况通过通信模块404发送给控制点C1。
实施例三
为了使得UPnP设备装置可根据用户的需要灵活配置,以支持用户自定义的设备或支持更多类型的设备,如图5还可在网络设备适配装置内设置用户配置模块501和信息处理模块502。
用户配置模块501使用户可以为网络设备适配装置配置额外的非UPnP设备信息,以使网络设备适配装置支持更多类型的非UPnP设备。如某一特定厂商的特定型号的非UPnP设备没有被网络设备适配装置预先配置,则用户只需要通过用户配置模块501输入简单的配置信息如制造商名称、设备型号、序列号等,信息处理模块502可以根据配置信息自动生成设备信息和服务信息,本实施例指的是设备描述文件和服务描述文件,并保存在存储模块401。若开发者想要开发新的UPnP设备类型,可以使用本网络设备适配装置,只需要编写相应的设备描述文件和服务描述文件以及相应的设备驱动和设备驱动程序接口描述文件,通过用户配置模块501输入,并保存在存储模块401,同时添加UPnP服务与设备驱动程序接口的对应关系即可,无需开发相应的UPnP设备程序。用户配置模块提供了更新网络设备适配装置内存储模块内容的接口,可以通过web方式,或者是触摸屏,或者键盘,或者其它方式来实现。
本实施例提供的网络设备适配装置,提供了支持更多类型非UPnP设备的可能,也为开发新UPnP设备提供了便利,增强了网络设备适配装置的通用性与灵活性。
实施例四
如图6所示为本发明网络设备适配装置的又一实施例,在网络设备适配装置增加一个映射模块601,用于为各种非UPnP设备建立UPnP服务与设备驱动程序接口的对应关系。所述对应关系可以事先配置在存储模块401,也可以在每次非UPnP设备连入网络设备适配装置后由映射模块601建立。当适配模块405检测到非UPnP设备后,可调用映射模块601,为该设备的UPnP服务与对应的设备驱动程序接口建立对应关系,以后对该非UPnP设备的服务调用,即可通过相应的设备驱动程序接口完成。
此外映射模块601也可以为新增的非UPnP设备建立UPnP服务与设备驱动程序接口的对应关系,并将所述对应关系保存在存储模块401。
本发明实施例提供的网络设备适配装置,其中的存储模块存储有多种非UPnP设备的相关信息,包括非UPnP设备的设备驱动程序,设备信息和服务信息,驱动接口描述文件,UPnP服务与设备驱动程序接口之间的对应关系等。大部分的非UPnP设备信息都预先存储在存储模块内,若需要增加新的非UPnP设备信息,还可以由本发明网络设备适配装置的实施例三提供的用户配置模块、信息处理模块来增加并处理新的非UPnP设备信息。所述存储模块可以包括一个存储介质,提供所有功能模块所需的存储空间,也可以分为多个存储介质,分别为各个功能模块提供存储空间,或者根据需要分为多个存储子模块。
本发明实施例提供的网络设备适配装置,其中的各个模块,根据其功能还可以进行细化,分解为更多的模块;各个模块可以集成在一起,也可以分散到各个地方,只要各模块能够协调完成本发明目的即可。例如,存储模块可以和其他模块集成在一起,也可以放在远程的服务器,本发明并不作限定。
本发明实施例提供的网络设备适配装置,可以适配多种非UPnP设备成为UPnP设备,具有通用性与灵活性。使用者无需对原始非UPnP设备作改动,可以充分利用用原有设备驱动程序,便可利用本网络设备适配装置使非UPnP设备实现UPnP功能,缩减了开发UPnP产品的周期。
实施例五
本实施例还提供了一种通信系统,包括至少一个非UPnP设备、本发明提供的网络设备适配装置、和至少一个UPnP控制点。本实施例所采用的网络设备适配装置与实施例二提供的网络设备适配装置相同,在此不详述。所述非UPnP设备通过所述接口模块连接于所述网络设备适配装置,所述UPnP装置通过所述通信模块连接到所述UPnP网络,所述控制点连接于所述UPnP网络。
下面结合具体的应用实例来描述本实施例提供的通信系统。在安防领域广泛使用可以控制的云台来承载摄像头(云台摄像头),实现远程的视频监控。用户可以通过串口来远程控制云台的转动、镜头的焦距和景深等参数。对云台和摄像头的控制,是通过云台解码器完成的,云台解码器可以控制云台的上下左右转动、摄像头的光圈、变焦、聚焦等。但是,由于云台解码器本身的资源有限,不能提供UPnP的功能。因此,可以采用本发明实施例二提供的网络设备适配装置使其成为UPnP云台摄像头,如图7所示,云台解码器702通过云台控制线703与可控云台摄像头704相连。云台解码器702通过串口701与网络设备适配装置400的接口模块402(接口模块402提供有串口协议通信方式)相连接。网络设备适配装置400则通过通信模块404连接到UPnP网络中,与控制点C2实现通信。本实施例中通信模块404以以太网通信方式接入UPnP网络。以下描述云台摄像头、网络设备适配装置和控制点之间的通信过程。
图8为控制点控制云台摄像头的过程示意图。云台解码器通过串口701连接到网络设备适配装置的接口模块402,适配模块405检测到非UPnP设备云台摄像头704,从存储模块401获取云台摄像头704的服务信息,并通过通信模块404向UPnP网络宣告云台摄像头704的服务可用。UPnP网络中的控制点C2发现云台摄像头704,并通过通信接口404向适配模块405请求设备描述文件和服务描述文件,适配模块405向存储模块401获取所述设备描述文件和服务描述文件并通过通信模块404发送给控制点C2。接着控制点C2通过通信模块404向适配模块405发送服务请求消息。适配模块405接受所述请求消息,并根据请求消息中请求的特定UPnP服务内容,查询存储模块401中存储的UPnP服务与设备驱动程序接口的对应关系,找到云台摄像头704的设备驱动程序接口。驱动模块403通过该设备驱动程序接口调用存储模块401中云台摄像头的设备驱动程序,通过接口模块402向云台解码器702的串口701发送控制指令,云台解码器702将控制命令转换成对应的驱动信号来控制云台完成相应的动作或者设定摄像头的参数。可选地,适配模块405通过通信模块404向UPnP网络中的控制点C2发送GENA(General EventNotification Architecture,通用事件通知架构)消息,将对云台摄像头的操作结果以及云台摄像头的状态改变情况通知给控制点C2,从而实现了控制点C2对云台摄像头的远程控制。
由以上实施例可见,本发明的有益效果是,本发明能够使各种资源有限、不具有UPnP功能的设备,通过采用本发明提供的控制非通用即插即用UPnP设备的方法及其装置和UPnP网络,成为UPnP设备,实现UPnP的各种功能,接受UPnP控制点的调用。用户无需对设备进行改动,只需通过简单的配置,便可使多种类型的非UPnP设备实现UPnP功能;若开发者需要开发UPnP设备,只需要设计相应的设备描述文件、服务描述文件和设备驱动程序接口描述文件,便可利用本发明提供的网络设备适配装置快速开发UPnP设备,无需开发相应的UPnP设备程序,开发周期短,节省成本。
以上对本发明实施例提供的控制非通用即插即用UPnP设备的方法及其装置、UPnP网络系统进行了详细介绍,目的在于帮助理解本发明的核心思想,本领域的普通技术人员根据本说明书公开的内容,可以对本发明的方法进行改变,或对本发明提供的装置,根据其原理及功能对各模块进行分解或改变,因此本说明书内容不能理解为对本发明的限制。
Claims (15)
1.一种控制非通用即插即用UPnP设备的方法,其特征在于,包括以下步骤:
根据所述非UPnP设备的服务信息向UPnP网络中的控制点通知所述非UPnP设备的服务内容;
接收所述UPnP网络中控制点对所述非UPnP设备的请求消息,根据所述请求消息中请求的UPnP服务,通过所述UPnP服务与所述非UPnP设备的设备驱动程序接口的对应关系,查找到所述非UPnP设备对应的设备驱动程序接口,其中所述UPnP服务是所述服务内容中的至少一种;
通过所述设备驱动程序接口调用所述非UPnP设备的设备驱动程序,控制所述非UPnP设备完成所述UPnP服务。
2.根据权利要求1所述的控制非通用即插即用UPnP设备的方法,其特征在于,所述服务信息具体为服务描述文件,所述设备驱动程序接口对应有设备驱动程序接口描述文件,所述设备驱动程序接口描述文件描述了设备驱动程序接口调用相应设备驱动程序以实现对设备的使用和控制的方式。
3.根据权利要求2所述的控制非通用即插即用UPnP设备的方法,其特征在于,所述服务描述文件、设备驱动程序接口描述文件采用XML语言描述。
4.根据权利要求1所述的控制非通用即插即用UPnP设备的方法,其特征在于,所述对应关系的建立包括以下步骤:
将所述UPnP服务的服务ID与所述设备驱动程序接口中指向设备驱动程序存储地址的指针建立对应关系。
5.根据权利要求1所述的控制非通用即插即用UPnP设备的方法,其特征在于,所述对应关系表现为映射关系表。
6.根据权利要求2所述的控制非通用即插即用UPnP设备的方法,其特征在于,所述对应关系的建立包括以下步骤:
将所述设备驱动程序接口描述文件中的驱动程序函数指针嵌入到所述服务描述文件中,并将所述驱动程序函数指针与所述UPnP服务建立对应关系。
7.根据权利要求2所述的控制非通用即插即用UPnP设备的方法,其特征在于,所述设备驱动程序存放于远程服务器,所述对应关系的建立包括以下步骤:
将所述设备驱动程序的存放URL地址嵌入到所述设备驱动程序接口描述文件中,并将所述存放URL地址与所述UPnP服务建立对应关系。
8.一种网络设备适配装置,其特征在于,包括:
存储模块,用于存储至少一种非UPnP设备的相关信息,所述相关信息包括所述非UPnP设备的服务信息、所述非UPnP设备的设备驱动程序以及所述UPnP服务与所述非UPnP设备的设备驱动程序接口的对应关系,其中所述服务信息包含所述非UPnP设备的服务内容,所述UPnP服务是所述服务内容中的至少一种;
接口模块,用于提供与非UPnP设备进行通信的接口;
通信模块,用于提供与UPnP网络进行通信的接口;
适配模块,用于从所述存储模块获取所述服务信息,并根据所述服务信息,通过所述通信模块向UPnP网络中的控制点通知所述非UPnP设备的服务内容,以及从所述通信模块接收所述控制点对所述非UPnP设备的请求消息,根据所述请求消息中的UPnP服务,通过所述对应关系,找到所述非UPnP设备对应的设备驱动程序接口;
驱动模块,用于通过所述设备驱动程序接口调用所述非UPnP设备的设备驱动程序,通过所述接口模块控制所述非UPnP设备完成所述UPnP服务。
9.根据权利要求8所述的网络设备适配装置,其特征在于,还包括:
用户配置模块,用于输入新增的所述非UPnP设备的配置信息或设备信息,更新所述存储模块的内容。
10.根据权利要求9所述的网络设备适配装置,其特征在于,还包括:
信息处理模块,用于根据所述配置信息,生成相应的设备信息和服务信息。
11.根据权利要求8所述的网络设备适配装置,其特征在于,还包括:
映射模块,用于为所述UPnP服务与所述非UPnP设备的设备驱动程序接口建立所述对应关系。
12.根据权利要求8所述的网络设备适配装置,其特征在于,所述接口模块支持至少一种接口协议,所述接口协议包括串口协议,并口协议,USB接口协议和IEEE1394接口协议。
13.根据权利要求8所述的网络设备适配装置,其特征在于,所述通信接口支持至少一种通信协议,所述通信协议包括以太网协议和无线通信协议。
14.一种通信系统,其特征在于,包括至少一个非UPnP设备、网络设备适配装置、UPnP网络和至少一个UPnP控制点,所述网络设备适配装置包括:
存储模块,用于存储至少一种非UPnP设备的相关信息,所述相关信息包括所述非UPnP设备的服务信息、所述非UPnP设备的设备驱动程序以及所述UPnP服务与所述非UPnP设备的设备驱动程序接口的对应关系,其中所述服务信息包含所述非UPnP设备的服务内容,所述UPnP服务是所述服务内容中的至少一种;
接口模块,用于提供与非UPnP设备进行通信的接口;
通信模块,用于提供与UPnP网络进行通信的接口;
适配模块,用于从所述存储模块获取所述服务信息,并根据所述服务信息,通过所述通信模块向UPnP网络中的控制点通知所述非UPnP设备的服务内容,以及从所述通信模块接收所述控制点对所述非UPnP设备的请求消息,根据所述请求消息中的UPnP服务,通过所述对应关系,找到所述非UPnP设备对应的设备驱动程序接口;
驱动模块,用于通过所述设备驱动程序接口调用所述非UPnP设备的设备驱动程序,通过所述接口模块控制所述非UPnP设备完成所述UPnP服务。
15.根据权利要求14所述的通信系统,其特征在于,所述非UPnP设备为云台摄像头,所述云台摄像头通过控制线与云台解码器相连,所述云台解码器包含有串口,所述串口与所述接口模块相连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101238286A CN101184063B (zh) | 2007-10-11 | 2007-10-11 | 控制非通用即插即用UPnP设备的方法、装置及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101238286A CN101184063B (zh) | 2007-10-11 | 2007-10-11 | 控制非通用即插即用UPnP设备的方法、装置及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101184063A true CN101184063A (zh) | 2008-05-21 |
CN101184063B CN101184063B (zh) | 2010-12-15 |
Family
ID=39449150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101238286A Expired - Fee Related CN101184063B (zh) | 2007-10-11 | 2007-10-11 | 控制非通用即插即用UPnP设备的方法、装置及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101184063B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102571550A (zh) * | 2010-12-30 | 2012-07-11 | 北京亿阳信通软件研究院有限公司 | 一种通用的信息交互平台和方法 |
CN102685149A (zh) * | 2012-05-04 | 2012-09-19 | 北京航空航天大学 | 一种基于IEEE1394与UPnP技术的远程控制和访问方法及装置 |
CN103069744A (zh) * | 2010-07-09 | 2013-04-24 | 三星电子株式会社 | 用于基于所有权对家庭网络环境中的通用即插即用运行提供安全的方法和系统 |
CN103218223A (zh) * | 2013-03-15 | 2013-07-24 | 汉柏科技有限公司 | 一种vdi兼容多个iaas平台的方法 |
WO2013123888A1 (zh) * | 2012-02-24 | 2013-08-29 | 中兴通讯股份有限公司 | 基于通用即插即用实现视频监控的方法、装置及系统 |
WO2014005539A1 (zh) * | 2012-07-05 | 2014-01-09 | 华为技术有限公司 | 云台设备识别方法、云台设备、摄像机及云台设备控制系统 |
CN104104926A (zh) * | 2014-07-30 | 2014-10-15 | 浙江宇视科技有限公司 | 一种通用即插即用的监控终端访问方法和装置 |
CN104219273A (zh) * | 2013-05-30 | 2014-12-17 | 精联电子股份有限公司 | 通用随插即用系统及通用随插即用适配器 |
CN101827069B (zh) * | 2009-03-04 | 2014-12-17 | 华为终端有限公司 | 通用即插即用设备的信息获取方法、系统、设备及控制点 |
CN104468526A (zh) * | 2014-11-14 | 2015-03-25 | 广东欧珀移动通信有限公司 | 一种数字媒体服务器的内容共享方法、访问方法及相关装置 |
CN105681378A (zh) * | 2014-10-02 | 2016-06-15 | 财团法人资讯工业策进会 | 服务提供系统及服务提供方法 |
CN105763544A (zh) * | 2016-02-03 | 2016-07-13 | 南京邮电大学 | 基于适配器模式的UPnP多媒体播放系统及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1058422A1 (en) * | 1999-06-02 | 2000-12-06 | THOMSON multimedia | Methods for bridging a HAVi sub-network and a UPnP sub-network and device for implementing said methods |
US20020083143A1 (en) * | 2000-12-13 | 2002-06-27 | Philips Electronics North America Corporation | UPnP architecture for heterogeneous networks of slave devices |
EP1793565A1 (en) * | 2005-12-02 | 2007-06-06 | Seiko Epson Corporation | Network plug-and-play compliant network relay control |
-
2007
- 2007-10-11 CN CN2007101238286A patent/CN101184063B/zh not_active Expired - Fee Related
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101827069B (zh) * | 2009-03-04 | 2014-12-17 | 华为终端有限公司 | 通用即插即用设备的信息获取方法、系统、设备及控制点 |
US9548981B2 (en) | 2010-07-09 | 2017-01-17 | Samsung Electronics Co., Ltd | Method and system for providing security for universal plug and play operations in a home network environment based on ownership rights |
CN103069744A (zh) * | 2010-07-09 | 2013-04-24 | 三星电子株式会社 | 用于基于所有权对家庭网络环境中的通用即插即用运行提供安全的方法和系统 |
CN103069744B (zh) * | 2010-07-09 | 2016-08-03 | 三星电子株式会社 | 用于基于所有权对家庭网络环境中的通用即插即用运行提供安全的方法和系统 |
CN102571550A (zh) * | 2010-12-30 | 2012-07-11 | 北京亿阳信通软件研究院有限公司 | 一种通用的信息交互平台和方法 |
CN102571550B (zh) * | 2010-12-30 | 2016-05-25 | 北京亿阳信通科技有限公司 | 一种通用的信息交互平台和方法 |
WO2013123888A1 (zh) * | 2012-02-24 | 2013-08-29 | 中兴通讯股份有限公司 | 基于通用即插即用实现视频监控的方法、装置及系统 |
CN102685149B (zh) * | 2012-05-04 | 2015-03-25 | 北京航空航天大学 | 一种基于IEEE1394与UPnP技术的远程控制和访问方法及装置 |
CN102685149A (zh) * | 2012-05-04 | 2012-09-19 | 北京航空航天大学 | 一种基于IEEE1394与UPnP技术的远程控制和访问方法及装置 |
WO2014005539A1 (zh) * | 2012-07-05 | 2014-01-09 | 华为技术有限公司 | 云台设备识别方法、云台设备、摄像机及云台设备控制系统 |
US9509895B2 (en) | 2012-07-05 | 2016-11-29 | Huawei Technologies Co., Ltd. | Pan-tilt-zoom device identification method, pan-tilt-zoom device, camera, and pan-tilt-zoom device control system |
CN103218223A (zh) * | 2013-03-15 | 2013-07-24 | 汉柏科技有限公司 | 一种vdi兼容多个iaas平台的方法 |
CN104219273A (zh) * | 2013-05-30 | 2014-12-17 | 精联电子股份有限公司 | 通用随插即用系统及通用随插即用适配器 |
CN104104926A (zh) * | 2014-07-30 | 2014-10-15 | 浙江宇视科技有限公司 | 一种通用即插即用的监控终端访问方法和装置 |
CN104104926B (zh) * | 2014-07-30 | 2017-04-19 | 浙江宇视科技有限公司 | 一种通用即插即用的监控终端访问方法和装置 |
CN105681378A (zh) * | 2014-10-02 | 2016-06-15 | 财团法人资讯工业策进会 | 服务提供系统及服务提供方法 |
CN104468526A (zh) * | 2014-11-14 | 2015-03-25 | 广东欧珀移动通信有限公司 | 一种数字媒体服务器的内容共享方法、访问方法及相关装置 |
CN104468526B (zh) * | 2014-11-14 | 2018-01-19 | 广东欧珀移动通信有限公司 | 一种数字媒体服务器的内容共享方法、访问方法及相关装置 |
CN105763544A (zh) * | 2016-02-03 | 2016-07-13 | 南京邮电大学 | 基于适配器模式的UPnP多媒体播放系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101184063B (zh) | 2010-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101184063B (zh) | 控制非通用即插即用UPnP设备的方法、装置及其系统 | |
JP6043303B2 (ja) | 産業用フィールド機器を産業用無線ネットワークに結合するためのアダプタ装置、および関連するシステムおよび方法 | |
US7489924B2 (en) | Apparatus and system for providing remote control service through communication network, and method thereof | |
US20080019392A1 (en) | Apparatus and method for controlling home control network | |
US20030169728A1 (en) | Apparatus for controlling devices in a sub-network of a home-network and a method thereof | |
CN101834768B (zh) | 数字家庭网络设备间互发现方法 | |
US7844738B2 (en) | Method of and apparatus for bridging a UPnP network and a rendezvous network | |
US20060159110A1 (en) | Open service gateway initiative-based home gateway apparatus and device registration method thereof | |
JP2006526294A (ja) | 自宅又は自宅以外のネットワークのためのレガシー機器ブリッジ | |
JP2004252974A (ja) | ホームネットワークデバイスへの効率的なアクセスが可能な制御ポイントサーバシステム及びそのための方法 | |
CN1825823B (zh) | 家庭网络的业务框架 | |
EP1603306B1 (en) | Method for controlling a printer using a portable terminal in a home network | |
JP2004288187A (ja) | ネットワークを介した機器情報の管理装置およびその方法 | |
EP2165469A1 (en) | Formtext method and apparatus for relaying communication between universal plug and play device and remote user interface client | |
CN102172009A (zh) | 在利用通用即插即用的家庭网络中提供输入的方法和系统 | |
JP2002196990A (ja) | サービス発見プロトコル変換ゲートウェイ | |
CN103312715A (zh) | 一种面向Web 服务的家庭网络系统架构 | |
CN101212454A (zh) | 一种协议的桥接方法及设备 | |
JP2003308264A (ja) | ネットワーク装置とネットワーク装置制御方法 | |
JP2003208366A (ja) | 機器統合のためのネットワーク構築装置 | |
JP2006221438A (ja) | 情報処理装置 | |
WO2022222901A1 (zh) | 一种基于autosar实现dds通信的系统架构、通信方法及设备 | |
CN106297225A (zh) | 一种家庭控制器的遥控方法和系统 | |
CN102904978A (zh) | 泛在网络内泛在设备实现通用即插即用的方法 | |
JP5721184B2 (ja) | 電子機器制御システム及び電子機器制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101215 Termination date: 20181011 |