Patent Publication Number: US-7912928-B2

Title: Network device and network device control method

Description:
CROSS-REFERENCE TO RELATED APPLICATION(S) 
     This is a continuation of U.S. patent application Ser. No. 10/289,897, filed, Nov. 6, 2002, which application claims priority from Japan Patent Application No. 2002-037601, filed Feb. 15, 2002, the entire disclosure of which is incorporated herein by reference. 
    
    
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to network devices and a method of controlling the network devices, and more particularly to network devices and a method of controlling them which are suitable for building a control system in which network devices connected to an identical network, and network devices connected to different networks through gateways coexist. 
     2. Description of the Prior Art 
     With widespread use of PC and broadband communication networks such as ADSL (Asymmetric Digital Subscriber Line), access to the Internet from home is further increasing. In AV devices, the HAVi standards are defined as a middleware for interoperability of devices connected through the IEEE 1394 serial interface (hereinafter referred to as 1394IF), and AV/C (Audio Video Control) commands are defined. Also, the ECHONET standards are defined as network standards for so-called home appliances such as air conditioner and refrigerator. 
     Furthermore, some AV devices and home appliances that are connectable with an IP network are emerging, and device scan be controlled through the Internet. 
     BRIEF SUMMARY OF THE INVENTION 
     In the prior art, consideration has been given to only the control of devices connected to a same network, such as devices connected to an IP network, devices connected to 1394IF, or devices connected over ECHONET. Although bridge technologies such as IPover1394 enable access beyond platforms such as access from 1394IF to the IP network, they are technologies dedicated to specific platforms and have not been available for general use. 
     An object of the present invention is to provide network devices and a network device control method which enable control network devices connected to the IP network, AV devices connected over 1394IF through gateway devices from the IP network, and home appliances connected to ECHONET to be controlled without distinction among them. To achieve this object, a network device to serve as a controller comprises a controller application that detects a service of a target network device, using a message complying with an information exchange protocol common to the network, collects information such as an access method for the service, a function name, and parameters, and controls the network device upon requests of users and other applications, and an information exchange protocol processing part that exchanges messages according to a protocol common to the network devices. The network device targeted for control comprises target service that provides information (function name, parameter information, access URL, functions of network devices, etc.) for the controlling network device to perform control to the controller, and the information exchange protocol processing part. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       A preferred embodiment of the present invention will be described in detail based on the following, wherein: 
         FIG. 1  is a drawing showing a network device control system configured with network devices according to an embodiment of the present invention; 
         FIG. 2  is a drawing showing a software configuration of a controller and a network device according to an embodiment of the present invention; 
         FIG. 3  is a drawing showing information of target service, provided to a controller by a target device according to an embodiment of the present invention; 
         FIG. 4  is a drawing showing messages exchanged between the controller and the target device according to an embodiment of the present invention; 
         FIG. 5  is a drawing showing a software configuration of the controller according to an embodiment of the present invention and a network device having gateway functions; 
         FIG. 6  is a drawing showing device list information of target services provided to the controller by the target device according to an embodiment of the present invention; 
         FIG. 7  is a drawing showing device function list information of target services provided to the controller by the target device according to an embodiment of the present invention; 
         FIG. 8  is a drawing showing messages exchanged between the controller and the target device according to an embodiment of the present invention; and 
         FIG. 9  is a drawing showing a configuration of access URLs of appliances managed by a target GW device according to an embodiment of the present invention. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings.  FIG. 1  shows an example of a network device control system configured with network devices according to the embodiment of the present invention. The reference numeral  100  designates an IP network to which the network devices are connected;  110 , a network device (hereinafter referred to as a controller) having the function of controlling other network devices connected to the IP network  100 ;  120 , a digital camera (D-CAM) as an example of network devices of an AV system; and  130 , a washer as an example of network devices of a home appliances system. An AV device gateway  140  (hereinafter referred to as an AV device GW) is a network device having gateway functions for networks of an AV device system and has the ability to control digital AV devices connected over 1394IF  143 . A home appliance GW  150  is a network device having gateway functions for networks of a home appliance system and has the ability to control home appliances connected over ECHONET  153 . 
     In this embodiment, the controller  110 , the network devices ( 120 ,  130 ,  140 , and  150 ) on the network, and the network devices ( 140 ,  150 ) having gateway functions include program modules that can operate in conjunction with each other by message exchange. The controller can obtain information required to control the network devices by message exchange, and can control the network devices, including the devices connected under control of the network devices having gateway functions by a common protocol. 
     Hereinafter, a description is made of a control method of-the present invention and the configuration of the network devices with reference to the drawings.  FIG. 2  shows a software configuration of the controller and the network devices according to the present invention. In the drawing, components that have the same function as those of  FIG. 1  are identified by the same reference numbers and a description of them is omitted. The reference numeral  100  designates an IP network to which the network devices are connected;  110 , a controller having a function for controlling the network devices; and  120 , a digital camera (hereinafter referred to as a target device), one of the network devices controlled. 
     The controller  110  comprises: a controller application (hereinafter referred to as a controller AP)  230  for controlling the network devices; an information exchange protocol processing part  220  that exchanges messages according to a protocol common to the network devices, wherein the information exchange protocol processing part  220  comprises a message creation/interpretation part  221  that creates messages according to an information processing protocol in response to a request from the controller AP, and interprets a received message and passes it to the controller AP; and a network driver that sends and receives data to and from a network physical layer. The target device  120  comprises: a target service  240  that provides the controller with services for controlling the target device itself, wherein the target service  240  comprises an device control service  241  that provides a function invocation interface for controlling the target device itself, and controls the target device itself according to an invoked function, and an device information provision service  242  that provides a function invocation interface for providing information required to control the target device such as the functions of the target device, and provides requested information according to the invoked function; an information exchange protocol processing part  220  comprising a message creation/interpretation part  221  that interprets a received message, determines a protocol processing part to pass it to, distributes the message, receives a return value, and returns it to a message transmission source, an device control protocol processing part  222  that interprets a message received from the message creation/interpretation  221 , presents parameters to a corresponding function, receives processing results, and returns them to the message creation/interpretation  221 , and the device information provision protocol  223 ; and the network driver  210 . 
     The behavior of the controller  110  and the target device  120  is described using  FIGS. 3 and 4 .  FIG. 3  shows an example of information of the target service  240 , provided to the controller  110  by the target device according to the embodiment of the present invention.  FIG. 4  shows an example of messages exchanged between the controller  110  and the target device  120  when the controller  110  controls the zooming of the camera function of the target device. 
     Upon detecting the target device  120  on the network, the controller  110  transmits a message to the target device (( 1 ) of  FIG. 4 ) and obtains information of the target service  240  as exemplified in  FIG. 3 . As a possible method of the controller&#39;s detecting a desired target device, the controller transmits a multicast message of UDP (User Datagram Protocol) for inquiring about a target device having a desired function to the network, judges a network device responding to the inquiry as a target device, and obtains the IP address of a desired target device from the response message. However, the present invention imposes no limitation on a method of detecting a target device.  FIG. 3  shows that the target device  120  has, as target services, device control service  241  having VCR control and camera control functions, and device information provision service  242 , and shows information such as the names of individual functions, and parameters used and URLs for access. Upon obtaining format information such as service functions and access functions, provided by the target device, the controller transmits a message containing functions for controlling the target device according to user operations and requests from other applications to the access URL of the target device to control the target device. In an example of  FIG. 4 , the controller transmits an device list acquisition request (( 3 ) of  FIG. 4 ) and recognizes from a response that the target device  120  has a camera function and a VCR function. Further to obtain the function name of the camera function, the controller transmits a function name acquisition request with CAMERA as a parameter (( 5 ) of  FIG. 4 ) and obtains a zoom function Zoom. The controller transmits the zoom function Zoom with a parameter of zoom magnification 10 so that a zoom magnification of the target device  120  is set to 10×, and obtains the specified zoom magnification 10 as a return value. 
     As described above, the controller  110 , by message exchange with the target device  120 , obtains. information such as the functions of the target device, URLs and function names for accessing the functions, and parameters, and controls the target device. Therefore, according to this method, since the controller does not need to know information for controlling the target device in advance and only a message exchange protocol and a data representation format have only to be shared between the controller and the target device, a network device control system can be built which is flexible enough to detect an increase or decrease in network devices and to distinguish between types of devices such as AV devices and home appliances. 
     As an example of application components constituting the controller AP  230  of the controller and the target service  240  of the target device, there is Web service accessible using various types of Internet-standard Web protocols. In the Web service, XML (Extensible Markup Language) format is used as a data representation format, and SOAP (Simple Object Access Protocol) is used for message exchange. To describe functions provided by the Web service, the language specifications of WSDL (Web Service Description Language), which is based on XML, are used. Although network control devices and a control method according to the present invention can be achieved by an original message protocol and data format, a system having higher versatility can be built by applying Internet-standard technologies. 
       FIG. 5  shows a software configuration of the controller according to an embodiment of the present invention and a network device having gateway functions. In the drawing, components having the same function are identified by the same reference numerals. The reference numeral  100  designates a controller, and  140  designates STB, which is one of network devices having GW functions controlled, hereinafter referred to as a target GW device. The functions of the controller are the same as those in  FIG. 2 ; a description of them is omitted. The target GW device  140  comprises: a target service  240  that provides services for controlling the target device itself and devices under management of the gateway, wherein the target service  240  comprises a device control service  241  that provides an interface for controlling the target GW device itself and devices ( 141  and  142  in  FIG. 1 ) under management of a gateway, and a device information service  242  that provides information required to control the target GW device itself and devices ( 141  and  142  in  FIG. 1 ) under management of the gateway; an information exchange protocol processing part  220  comprising a message creation/interpretation part  221  that creates messages according to an information processing protocol and interprets a received message and passes it to a corresponding object, a device control protocol processing part  222  that accesses a corresponding device control service according to a control message received from the device control protocol processing  222 , and a device information protocol processing part  223  that accesses a device information acquisition service according to an information request message received from the message creation/interpretation part  221 , and acquires and returns device information; a network driver  210 ; a network  2  driver  520  that sends and receives data through devices under management of the gateway and a second network  143 ; and a network  2  middleware  510  used in the second network. 
     The target GW device detects an increase or decrease in devices connected to the second network, using the network  2  middleware  510 . Using the functions of the network  2  middleware  510 , the target GW device acquires or creates device  2  control  531  and device  3  control  532 , which are applications for controlling devices under control of the gateway, from the device control service  241 , and device  2  information  541  and device  3  information  542 , which are applications for acquiring device information under control of the gateway, from the device information provision service  242 . 
     Referring to  FIGS. 6 ,  7 , and  8 , a description is made of the procedure in which the controller according to one embodiment of the present invention collects information about a device to be controlled to control the device. 
       FIG. 6  shows an example of device list information, represented by an XML data structure. The device list information contains device information of the network device itself ( 140 ) and devices ( 141 ,  142 ) connected to the second network ( 143 ). In the drawing, the notation of an enclosure constituted of “&lt;” and “&gt;”, referred to as a tag, denotes the meaning of described information. In this example, &lt;target list&gt; indicates a target device managed by the target GW device  140 , &lt;device&gt; indicates isolating physical devices, &lt;target&gt; indicates an operable function of individual devices, &lt;device name&gt; indicates a name for identifying a device, and &lt;device display name&gt; indicates a display name shown to users. The device list information comprises a combination of device information of the device  2  ( 141 ) and device  3  ( 142 ) connected to the second network ( 143 ), acquired or created using the device  2  information  541  and the device  3  information  542  by the device information provision service  240 . 
       FIG. 7  shows an example of a device function list. In this embodiment, a device function list is provided for each of &lt;target&gt; tags of  FIG. 6 , and below &lt;function list&gt;, detailed information of each function is given under a &lt;function&gt; tag. As an example of detailed information of functions, there are provided &lt;function name&gt; to indicate a function name, &lt;function type&gt; to indicate whether the operation of the function is control or status inquiry, and &lt;parameter name&gt; to indicate the name of a parameter used, followed by detailed information of the parameter such as &lt;parameter direction&gt; to indicate whether the parameter is an input parameter, output parameter, or input output parameter, and &lt;parameter type&gt; to indicate the type of the parameter. The device function list, like the device list information, is acquired or created and managed using the device  2  information  541  and the device  3  information  542  of the device  2  ( 141 ) and device  3  ( 142 ) connected to the second network ( 143 ) by the device information provision service  240 . 
       FIG. 8  shows a procedure in which the controller  110  obtains information of the target device  140  and operates a desired target function. Upon detecting the target device  140  on the network, the controller  110  transmits a message to the target device (( 1 ) of  FIG. 8 ), and as a response, obtains information for accessing the device information provision service. If the target device  140  discloses the device information provision service as Web service, the response is a WSDL address for using the device information provision service (( 2 ) of  FIG. 8 ). The controller obtains service provided by the device information provision service  242  and its interface information from WSDL. Service provided here is the same as that shown in  FIG. 3  ( 242 ). The controller  110  transmits a device list acquisition request, using the device information provision service (( 3 ) of  FIG. 8 ). The device information provision service  242  of the target device refers to created device list information ( FIG. 6 ), creates a device list, including information of devices connected to the second network, and returns a response (( 4 ) of  FIG. 8 ). 
     Next, to obtain the function of a desired device, the controller transmits a device function list acquisition request. In an example of  FIG. 8 , the controller requests a list of the functions of TV (( 5 ) of  FIG. 8 ). The device information provision service  242  refers to the device list information ( FIG. 6 ) and includes a tuner function (tuner) and a clock function (clock) in the function list and returns the function list (( 6 ) of  FIG. 8 ). Furthermore, to obtain the names of desired functions, the controller transmits a function acquisition request (( 7 ) of  FIG. 8 ). In this example, with no parameters specified, the controller requests a list of functions related to overall operations of devices. The device information provision service  242  refers to the device function list ( FIG. 7 ) and returns a list of functions on overall device operations and access destination information (( 8 ) of  FIG. 8 ). 
     The controller transmits (( 9 ) of  FIG. 8 ) getPowerState for consulting a power state to an access destination obtained in ( 8 ) of  FIG. 8 , and from a response, can recognize that the power to the TV is on (( 10 ) of  FIG. 8 ). The function getPowerState transmitted according to a protocol common to the first network is interpreted by the device control protocol  222  and passed to a corresponding control object device  2  control  531  of the device control service  241 . The device  2  control converts the function into a protocol interpretable by the device  2  ( 141 ) and transmits the resulting function to the device  2  ( 141 ). A response from the device  2  ( 141 ) is received in the device  2  control  531  and converted into a protocol common to the first network, and passed to the controller through the information exchange protocol  220 . That is, the controller can obtain information of devices connected to the second network following the same procedure as for devices connected to the first network to control the devices. 
     According to the present invention, since the target GW device  140  manages devices under control of the gateway, and manages device information and device control service in a format accessible from the controller, the controller can manage both network devices directly connected to the IP network and devices connected under control of the gateway, using a common method. 
     Access URL of devices managed by the target GW device may, as shown in  FIG. 9 , take a form  620  that follows a directory structure from the IP address  610  of the target GW device, or a form ( 640 ) that sets a virtual IP address ( 630 ) in a device under control of the target GW device and makes invocation from the set virtual IP address. 
     As has been described above, according to the present invention, a target device, a target GW device having devices managed under it, and devices under control of the target GW device can be controlled under common services. As a result, network devices and a method of controlling the network devices can be provided which enable network devices connected to the IP network, AV devices connected over 1394IF through the gateway device from the IP network, home appliances connected to ECHONET to be controlled without distinction among them.