JP2019125068A - Device cooperation server and device cooperation program and decentralized resource utilization system - Google Patents

Device cooperation server and device cooperation program and decentralized resource utilization system Download PDF

Info

Publication number
JP2019125068A
JP2019125068A JP2018003949A JP2018003949A JP2019125068A JP 2019125068 A JP2019125068 A JP 2019125068A JP 2018003949 A JP2018003949 A JP 2018003949A JP 2018003949 A JP2018003949 A JP 2018003949A JP 2019125068 A JP2019125068 A JP 2019125068A
Authority
JP
Japan
Prior art keywords
service
information
unit
devices
cooperation
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.)
Pending
Application number
JP2018003949A
Other languages
Japanese (ja)
Inventor
山登 庸次
Yoji Yamato
庸次 山登
尚人 干川
Naoto Hoshikawa
尚人 干川
博史 野口
Hiroshi Noguchi
博史 野口
達也 出水
Tatsuya Demizu
達也 出水
操 片岡
Misao Kataoka
操 片岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2018003949A priority Critical patent/JP2019125068A/en
Publication of JP2019125068A publication Critical patent/JP2019125068A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

To make it possible that multiple devices cooperate to provide a service without depending on a specification and setting of individual device in a decentralized resource utilization system searching and using a device kinetically.SOLUTION: A device cooperation server 1 of a decentralized resource utilization system 100 comprises a storage part 13 storing a coordination logic for making multiple devices coordinated and execute, a service request reception part 111 receiving a service request including location information of a terminal, a metadata acquisition part 112 acquiring meta data including a function of each of the multiple device and the location information, a device selection part 113 selecting a device to be used in a requesting service, a device processing information collection part 114 collecting device processing information from the selected device, and a service execution part 115 executing the coordinated service by instructing the selected device of a collected specific processing content.SELECTED DRAWING: Figure 3

Description

本発明は、ネットワークに多種多様なIoT(Internet of Things)デバイスが繋がる環境における、デバイス連携サーバ、デバイス連携プログラムおよび分散リソース活用システムに関する。   The present invention relates to a device cooperation server, a device cooperation program, and a distributed resource utilization system in an environment in which various IoT (Internet of Things) devices are connected to a network.

近年のIoT技術の進展により、数多くのセンサやアクチュエータ、ロボット等のIoT機器がネットワークに繋がり、様々な分析等に活用されるようになっている。しかしながら、現状のIoTの適用は、特定のターゲットに合わせた垂直統合的なワンオフソリューションになりがちである。つまり、センサの選定や、分析、表示、アクション等を一括で行い、システム化して提供するSI(System Integration)ビジネスで用いられることが多い。この結果、個々のIoTサービスのコストが高くなり、多彩なサービスが十分出ていないという現状がある。   With recent advances in IoT technology, many sensors, actuators, IoT devices such as robots are connected to networks, and are used for various analyses, etc. However, current IoT applications tend to be vertically integrated one-off solutions tailored to specific targets. That is, in many cases, it is used in SI (System Integration) business, in which selection of sensors, analysis, display, actions, etc. are performed collectively, systemized and provided. As a result, the cost of each IoT service is high, and there are not enough services available.

多彩なIoTサービスを、コストを抑えて開発、運用するためには、センサやアクチュエータ等のデバイスとサービスとを分離し、水平分離的にデバイスとサービスを相互に利用可能とすることが必要となる。このような考え方はオープンIoTと呼ばれ、今後のIoTサービスを活性化するために重視されている。   In order to develop and operate various IoT services at low cost, it is necessary to separate devices such as sensors and actuators from services, and to make devices and services available to each other horizontally and separately. . Such thinking is called open IoT, and is emphasized in order to activate future IoT services.

このようなオープンIoTにむけて、サービスからデバイスを自由に利用するための仕組みとしてTacit Computing技術が提案されている(非特許文献1参照)。Tacit Computingは、デバイスがその時点で保持するライブデータに基づき、ユーザが必要なデータを保持するデバイスをオンデマンドに発見し、利用することを可能にする技術である。   For such an open IoT, Tacit Computing technology has been proposed as a mechanism for freely using devices from services (see Non-Patent Document 1). Tacit Computing is a technology that enables a user to find and use a device that holds necessary data on demand based on live data that the device holds at that time.

図11は、Tacit Computingの概要を説明するための図である。
Tacit Computingでは、クラウドレイヤ、ネットワークレイヤ、デバイスレイヤの3層の中から、ユーザへのサービスに適切なリソースを発見し連携することにより、そのユーザのリクエストに応えサービスを継続する(図11の符号a)。また、3層の構成のうち、時々刻々変化する状況に対応するため、データが発生する現場に近いデバイスレイヤにおいてできるだけ処理を行うようにする(図11の符号b)。より低いレイヤで処理を行うことにより、ネットワークトラフィックの削減や(図11の符号c)、プライバシー性の高いデータの流出を抑えることができる(図11の符号d)。
FIG. 11 is a diagram for explaining an outline of Tacit Computing.
Tacit Computing continues the service in response to the user's request by finding the appropriate resource for the service to the user from the three layers of the cloud layer, the network layer, and the device layer and linking them (code in FIG. 11) a). Further, in order to cope with the situation which changes from moment to moment in the configuration of the three layers, processing is performed as much as possible in the device layer close to the site where the data is generated (symbol b in FIG. 11). By performing processing in a lower layer, it is possible to suppress network traffic reduction (code c in FIG. 11) and outflow of highly privacy data (code d in FIG. 11).

このTacit Computingでは、その要素技術として、ライブデータ検索技術とデバイス仮想化技術を用いる。
ライブデータ検索技術は、ユーザにとって必要なデータを提供するデバイスを検索するための技術である。IoTサービスの例として、橋等の施設にセンサを複数設置し、劣化状況等をモニタリングするサービスがある。この場合、劣化状況が急激に進むとは考えられないため、数時間等の周期で複数点でのセンサデータをクラウドに上げ、劣化状況の変化を統計ソフトや機械学習により分析すればよい。これに対し、定点のカメラに映った人物に対して、情報案内や警告アラート等を行うサービスの例では、数秒程度しかカメラに人物は映らないし、また、その人物が写ったカメラの映像しかその人物には意味のないデータといえる。このように、デバイスレイヤで発生し、時々刻々変化するようなデータをライブデータと呼ぶ。
In this Tacit Computing, live data search technology and device virtualization technology are used as its element technology.
Live data search technology is a technology for searching for devices that provide data necessary for the user. As an example of the IoT service, there is a service in which a plurality of sensors are installed in a facility such as a bridge to monitor the deterioration status and the like. In this case, since it is not considered that the deterioration situation rapidly progresses, sensor data at a plurality of points may be raised to a cloud in a cycle of several hours or the like, and changes in the deterioration situation may be analyzed by statistical software or machine learning. On the other hand, in the case of a service that provides information guidance and alert alerts for a person captured by a fixed-point camera, the person appears on the camera for only a few seconds, and only the image of the camera captured by that person It can be said that the data is meaningless to the person. As described above, data generated in the device layer and changing from moment to moment is called live data.

ユーザにとって必要なこのライブデータを検索するため、Tacit Computingでは、クラウドレイヤにデータが上がってくるのを待つのではなく、下位レイヤに分析する機能を配置し、その下位レイヤにおいてライブデータを検索させる。
例えば、駅伝予選会に友人が参加しており、その友人が写ったカメラの映像を自動で繋いで欲しいとする。この場合、例えば友人のゼッケン番号を検索キーとしてリクエストすると、Tacit Computingでは、カメラを収容するゲートウェイやネットワークエッジに、OpenCV等の画像分析機能を配置する。そして、カメラに近い場所で映像を分析することにより、友人のゼッケン番号が画像分析により抽出され、友人が映っているカメラを特定することができる。このようにして、Tacit Computingにおいてライブデータ検索技術が用いられる。
In order to search for this live data necessary for the user, Tacit Computing places a function to analyze in the lower layer instead of waiting for the data to come up in the cloud layer, and searches the live data in the lower layer .
For example, suppose a friend participates in the Ekiden Qualifying Association, and you want to automatically connect the camera image captured by the friend. In this case, for example, when requesting a friend's bib number as a search key, Tacit Computing places an image analysis function such as OpenCV at a gateway or network edge that accommodates a camera. Then, by analyzing the image at a location close to the camera, the friend's number is extracted by image analysis, and the camera in which the friend is shown can be identified. In this way, live data retrieval technology is used in Tacit Computing.

次に、利用したいデバイスがライブデータ検索技術により特定された場合に、そのデバイスを実際に利用する必要がある。IoTデバイスは、多数のメーカーが開発しており、利用時のプロトコルやインタフェース、アドレス等、即ち仕様や設定がデバイス毎に異なる。そこで、デバイス仮想化技術によって、個々のデバイスにおけるインタフェース等の違いを吸収する。
例えば、上記した例であれば、カメラ映像の取得のような共通のリクエストを元に、カメラを収容するゲートウェイ等で、デバイス毎のアダプタを設けておきプロトコル等の変換を行った上で、個々のカメラに応じたリクエストを行う。このようなデバイス仮想化技術を用いることにより、ユーザはデバイス個々の違いを意識せず、そのデバイスの利用が可能となる。
Next, when the device to be used is identified by the live data search technology, it is necessary to actually use the device. IoT devices are developed by many manufacturers, and protocols, interfaces, addresses, etc. in use, that is, specifications and settings differ from device to device. Therefore, device virtualization technology absorbs differences in interfaces and the like between individual devices.
For example, in the above-described example, based on a common request such as acquisition of a camera image, an adapter for each device is provided by a gateway or the like that accommodates the camera, and conversions such as protocols are performed. Make a request according to your camera. By using such device virtualization technology, the user can use the device without being aware of the differences between the devices.

佐々木潤子、他5名、「Tacit Computing:オープンIoT・偏在リソース時代にむけたネットワークサービス」、株式会社ビジネスコミュニケーション社、ビジネスコミュニケーション、Vol.54、No.5、pp.24-25、May 2017Junko Sasaki and 5 others, “Tacit Computing: Network services for the age of open IoT, ubiquitous resources,” Business Communication Inc., Business Communication, Vol. 54, No. 5, pp. 24-25, May 2017

Tacit Computingではクラウドレイヤ、ネットワークレイヤ、デバイスレイヤの3層から、ユーザに適切なリソースを発見することで、そのユーザのリクエストに応える。3層の構造において、時々刻々変化する情報に対応するため、データの発生源に近いデバイスレイヤでできるだけ処理を行うコンセプトをとる。低レイヤ側で処理を終えることで、ネットワークトラフィックの削減や、プライバシー性の高いデータの流出を抑えることができる。また、Tacit Computingでは、分析プログラムの配信等によりユーザが必要なデータを持つデバイスを発見し、デバイス仮想化技術を用いることで、個々のデバイスのインタフェースを隠蔽することにより、デバイスの動的な利用が可能となる。   Tacit Computing responds to the user's request by finding the appropriate resource for the user from 3 layers of cloud layer, network layer and device layer. In the three-layer structure, in order to cope with ever-changing information, we take the concept of processing as much as possible in the device layer close to the data source. By ending the processing on the lower layer side, it is possible to reduce network traffic and suppress the flow of highly privacy data. In addition, Tacit Computing discovers devices with data that users need by distributing analysis programs, etc., and uses device virtualization technology to hide the interfaces of individual devices, thereby using devices dynamically. Is possible.

このように、従来のTacit Computingでは、その時点の状況に合わせてデバイスを発見し、利用することはできるようになった。しかしながら、複数のデバイスを連携させてサービスの提供する際の、連携ロジックの記述については充分な検討がなされていない。
Tacit Computingでは、動的にデバイスを発見し利用するため、実行時でなければ利用するデバイスが決まらない。そのため、特定デバイスからのデータを別の特定デバイスに引き継ぐといった、連携プログラムの記述を事前に行うことができない。
Thus, conventional Tacit Computing has made it possible to discover and use devices according to the situation at that time. However, when providing services by linking a plurality of devices, the description of linkage logic has not been sufficiently studied.
Tacit Computing discovers and uses devices dynamically, so you can not decide which device to use at runtime. Therefore, it is not possible to describe in advance the cooperation program, such as passing data from a specific device to another specific device.

連携サービスの例として、駅での観光客へのナビゲーションを考える。連携するデバイスは、駅のカメラ、駅のディスプレイ、駅の放送スピーカ等である。ナビゲーションサービスに、観光客が行き先をスマートフォンやタッチパネル等で指定すると、駅のディスプレイに乗換先や時刻、地図等が表示され、駅のスピーカで何番線に行くかの案内が流れる。さらに、駅のカメラで観光客をモニタして、移動方向等を画像解析により分析し、誤った方向に向かった場合には検知して、スピーカで別方向であることのアラートを流す。   Consider navigation to tourists at the station as an example of a collaboration service. The devices to cooperate with are the camera of the station, the display of the station, the broadcast speaker of the station, and the like. In the navigation service, when a tourist designates a destination with a smartphone, touch panel or the like, a transfer destination, a time, a map, etc. are displayed on the display of the station, and guidance on which line to go with the speaker of the station flows. Furthermore, the camera of the station monitors the tourists, analyzes the moving direction and the like by image analysis, detects when going in the wrong direction, and sends an alert indicating that the direction is different from the speaker.

このように、ディスプレイやスピーカを用いて単に案内を表示したり音声を流したりするだけでなく、カメラで進行方向を分析し、誤っている場合にイベントを立ち上げて、スピーカ等でアラートする。このようなイベント処理を行うためには、複数のデバイスを連携させるためのプログラムロジックが必要である。   As described above, not only the guidance and the voice are displayed using the display and the speaker but also the traveling direction is analyzed by the camera, and when it is wrong, the event is started and the alert is made by the speaker. In order to perform such event processing, program logic for linking a plurality of devices is required.

また、従来、各駅に設置されている、ディスプレイ、カメラ、スピーカは、アドレスだけでなく、機種や機器インタフェース(IF)が異なるため、デバイスを連携するためには、そのデバイスに合わせて事業者(鉄道会社)毎にプログラムを記述する必要があった。   In addition, displays, cameras, and speakers, which are conventionally installed at each station, differ not only in their addresses, but also in their model and device interface (IF). It was necessary to describe a program for each railway company.

一方、Tacit Computingでは、より広範囲に様々なデバイスを動的に連携して利用するという観点から、各デバイスを連携するためのロジック(連携ロジック)は、個々のデバイスに依存せずに記述できることが望まれる。しかしながら、従来のTacit Computing等の技術では、この連携ロジックの記述と実行の手法については、充分な検討がなされてこなかった。   On the other hand, in Tacit Computing, the logic (cooperation logic) for linking each device can be described without depending on each device from the viewpoint of dynamically linking and using various devices in a wider range. desired. However, conventional techniques such as Tacit Computing have not sufficiently considered the method of describing and executing this cooperation logic.

このような点に鑑みて本発明がなされたのであり、デバイスを動的に発見し利用する分散リソース活用システムにおいて、個々のデバイスの仕様や設定に依存せず、複数のデバイスが連携してサービスを提供するデバイス連携サービスを実現することを課題とする。   The present invention has been made in view of these points, and in a distributed resource utilization system that dynamically discovers and uses devices, a plurality of devices cooperate to provide services without depending on the specifications and settings of individual devices. It is an issue to realize a device cooperation service that provides

前記した課題を解決するため、請求項1に記載の発明は、ネットワークに接続された複数のデバイスの中から、サービスの提供に用いる前記デバイスを選択して前記サービスを実行させる分散リソース活用システムのデバイス連携サーバであって、前記デバイスは、標準化されたインタフェースを備えるデバイスである標準デバイスであり、前記デバイスの複数を連携して実行させて前記サービスを提供するため、前記標準化されたインタフェースの定義で記述された連携ロジックを記憶する記憶部と、前記サービスを要求する端末から、要求するサービスの識別情報を示すサービス識別情報、および、前記端末の位置情報を含むサービス要求メッセージを受信するサービス要求受信部と、前記複数のデバイスそれぞれが前記サービスの提供に際して実行する機能および前記複数のデバイスそれぞれの位置情報を含むメタデータを取得し、前記記憶部に格納するメタデータ取得部と、前記要求するサービスで用いられる機能および前記端末の位置情報を用いて、前記記憶部に記憶された前記デバイスそれぞれの機能および位置情報を含む前記メタデータを参照し、前記サービスを実行させるデバイスを選択するデバイス選択部と、前記標準化されたインタフェースの定義で記述され、前記デバイスにおいて前記サービスを実行させるための具体的な処理内容を示すデバイス処理情報を、前記選択したデバイスから収集するデバイス処理情報収集部と、前記連携ロジックに基づき、前記選択したデバイスに、収集した前記具体的な処理内容による指示を行うことにより、連携したサービスを実行するサービス実行部と、を備えることを特徴とするデバイス連携サーバとした。   In order to solve the above problems, the invention according to claim 1 is a distributed resource utilization system which selects the device used for providing a service from a plurality of devices connected to a network and executes the service. A device cooperation server, wherein the device is a standard device which is a device provided with a standardized interface, and in order to execute a plurality of the devices in cooperation to provide the service, the definition of the standardized interface A service request for receiving a service request message including service ID information indicating identification information of the requested service, and a service request message including the position information of the terminal A receiving unit and each of the plurality of devices provide the service A metadata acquisition unit that acquires metadata including a function to be executed and position information of each of the plurality of devices, and stores the metadata in the storage unit, a function used in the requested service, and position information of the terminal Described by the definition of the standardized interface, a device selection unit for selecting the device for executing the service by referring to the metadata including function and location information of each of the devices stored in the storage unit. A device processing information collecting unit for collecting device processing information indicating specific processing content for executing the service in the device from the selected device; and the selected device based on the cooperation logic. By giving an instruction based on the collected specific processing content, a linked server And the service execution unit which executes the scan was a device linking server, characterized in that it comprises a.

このように、デバイス連携サーバによれば、連携ロジックを、標準インタフェースの定義で記述することにより、標準インタフェースにより動作可能な標準デバイスを用いて連携サービスを提供することができる。よって、標準インタフェースを備えるデバイスであれば、デバイスの種別を問わず、各デバイスが備える機能を連携させてサービスを提供することが可能となる。   As described above, according to the device cooperation server, by describing the cooperation logic by the definition of the standard interface, the cooperation service can be provided using the standard device operable by the standard interface. Therefore, if it is a device provided with a standard interface, it becomes possible to provide a service by linking the functions provided by each device regardless of the type of device.

請求項2に記載の発明は、ネットワークに接続された複数のデバイスの中から、サービスの提供に用いる前記デバイスを選択して前記サービスを実行させる分散リソース活用システムのデバイス連携サーバであって、前記複数のデバイスは、インタフェースが標準化されておらず、具体的インタフェースの異なるデバイスで構成されており、前記デバイスの複数を連携して実行させて前記サービスを提供するため、前記具体的インタフェースの定義に依存しない抽象的な指示情報として記述された連携ロジックを記憶する記憶部と、
前記サービスを要求する端末から、要求するサービスの識別情報を示すサービス識別情報、および、前記端末の位置情報を含むサービス要求メッセージを受信するサービス要求受信部と、前記複数のデバイスそれぞれが前記サービスの提供に際して実行する機能および前記複数のデバイスそれぞれの位置情報を含むメタデータを取得し、前記記憶部に格納するメタデータ取得部と、前記要求するサービスで用いられる機能および前記端末の位置情報を用いて、前記記憶部に記憶された前記デバイスそれぞれの機能および位置情報を含む前記メタデータを参照し、前記サービスを実行させるデバイスを選択するデバイス選択部と、前記抽象的な指示情報の定義に則って記述され、前記デバイスにおいて前記サービスを実行させるための処理手順と、当該処理手順を前記具体的インタフェースに適合させるマッピング情報と、当該具体的インタフェースの情報とを示すデバイス処理情報を、前記選択したデバイスから収集するデバイス処理情報収集部と、前記選択したデバイスにおいて前記抽象的な指示情報で記述される前記処理手順を、前記マッピング情報を用いて、前記具体的インタフェースに適合した指示情報に変換するマッピング処理部と、前記連携ロジックに基づき、前記選択したデバイスに、前記マッピング処理部が変換した前記具体的インタフェースに適合した指示情報を送信することにより、連携したサービスを実行するサービス実行部と、を備えることを特徴とするデバイス連携サーバとした。
The invention according to claim 2 is a device cooperation server of a distributed resource utilization system which selects the device used for providing a service from a plurality of devices connected to a network and executes the service, In the plurality of devices, interfaces are not standardized, and are configured by devices having different specific interfaces, and in order to execute the plurality of the devices in cooperation and provide the service, the definition of the specific interface is performed. A storage unit that stores cooperation logic described as abstract instruction information that does not depend on;
A service request receiving unit that receives service identification information indicating identification information of the requested service and a service request message including location information of the terminal from the terminal requesting the service; and each of the plurality of devices is the service A metadata acquisition unit that acquires metadata including a function to be executed and location information of each of the plurality of devices, and stores the metadata in the storage unit, a function used in the requested service, and location information of the terminal A device selection unit for selecting a device to execute the service by referring to the metadata including function and position information of each of the devices stored in the storage unit, and the definition of the abstract instruction information Procedure for executing the service on the device A device processing information collecting unit for collecting, from the selected device, device processing information indicating mapping information for adapting the processing procedure to the specific interface and information on the specific interface; A mapping processing unit configured to convert the processing procedure described in the abstract instruction information into instruction information adapted to the specific interface using the mapping information; and the selected device based on the cooperation logic, And a service execution unit configured to execute a coordinated service by transmitting the instruction information adapted to the specific interface converted by the mapping processing unit.

このように、デバイス連携サーバに記憶される連携ロジックを、個別のインタフェース等に依存しないように抽象的に記述する。そして、デバイス連携サーバは、その抽象的に記述された連携ロジックに基づく指示情報を、デバイスそれぞれに適合するインタフェースに変換して、連携したサービスを提供することができる。   As described above, the cooperation logic stored in the device cooperation server is described abstractly so as not to depend on individual interfaces and the like. Then, the device cooperation server can convert the instruction information based on the abstractly described cooperation logic into an interface adapted to each device, and can provide a coordinated service.

請求項3に記載の発明は、コンピュータを、請求項1または請求項2に記載のデバイス連携サーバとして機能させるためのデバイス連携プログラムとした。   The invention according to claim 3 is a device cooperation program for causing a computer to function as the device cooperation server according to claim 1 or claim 2.

このようにすることにより、一般的なコンピュータを用いて、請求項1または請求項2に記載のデバイス連携サーバの各機能を実現させることができる。   By doing this, it is possible to realize each function of the device cooperation server according to claim 1 or claim 2 using a general computer.

請求項4に記載の発明は、複数のデバイスに接続されるゲートウェイと、当該複数のデバイスの中から、サービスの提供に用いる前記デバイスを選択して前記サービスを実行させるデバイス連携サーバとを備える分散リソース活用システムであって、前記複数のデバイスは、インタフェースが標準化されておらず、具体的インタフェースの異なるデバイスで構成されており、前記デバイス連携サーバは、前記デバイスの複数を連携して実行させて前記サービスを提供するため、前記具体的インタフェースの定義に依存しない抽象的な指示情報として記述された連携ロジックを記憶する記憶部と、前記サービスを要求する端末から、要求するサービスの識別情報を示すサービス識別情報、および、前記端末の位置情報を含むサービス要求メッセージを受信するサービス要求受信部と、前記複数のデバイスそれぞれが前記サービスの提供に際して実行する機能および前記複数のデバイスそれぞれの位置情報を含むメタデータを取得し、前記記憶部に格納するメタデータ取得部と、前記要求するサービスで用いられる前記機能および前記端末の位置情報を用いて、前記記憶部に記憶された前記デバイスそれぞれの機能および位置情報を含む前記メタデータを参照し、前記サービスを実行させるデバイスを選択するデバイス選択部と、前記連携ロジックに基づき、前記選択したデバイスを収容する前記ゲートウェイに、前記抽象的な指示情報を送信するサービス実行部と、を備え、前記ゲートウェイは、前記抽象的な指示情報の定義に則って記述され、前記デバイスにおいて前記サービスを実行させるための処理手順と、当該処理手順を前記具体的インタフェースに適合させるマッピング情報と、当該具体的インタフェースの情報とを示すデバイス処理情報を、前記選択したデバイスから収集するデバイス処理情報収集部と、受信した前記抽象的な指示情報で記述される前記処理手順を、前記マッピング情報を用いて、前記選択したデバイスの前記具体的インタフェースに適合した指示情報に変換するマッピング処理部と、前記選択したデバイスに、前記マッピング処理部が変換した前記具体的インタフェースに適合した指示情報を送信する指示出力部と、を備えることを特徴とする分散リソース活用システムとした。   The invention according to claim 4 is distributed including a gateway connected to a plurality of devices, and a device cooperation server which selects the device used for providing a service from the plurality of devices and executes the service. In the resource utilization system, the plurality of devices are not standardized in interface, and are configured by devices having different specific interfaces, and the device cooperation server causes a plurality of the devices to be executed in cooperation. In order to provide the service, a storage unit storing cooperation logic described as abstract instruction information not depending on the definition of the specific interface, and identification information of a service requested from a terminal requesting the service are shown. Service request message including service identification information and location information of the terminal Obtaining a metadata including a service request receiving unit for receiving data, a function executed by each of the plurality of devices upon provision of the service, and position information of each of the plurality of devices, and acquiring the metadata to be stored in the storage unit The service is executed by referring to the metadata including function and position information of each of the devices stored in the storage unit using the unit, the function used in the requested service, and the position information of the terminal And a service execution unit for transmitting the abstract instruction information to the gateway accommodating the selected device based on the cooperation logic. Described according to the definition of the generic instruction information, and the service is A device processing information collection unit for collecting, from the selected device, device processing information indicating a processing procedure for causing the processing procedure, mapping information for adapting the processing procedure to the specific interface, and information of the specific interface; A mapping processing unit for converting the processing procedure described by the received abstract instruction information into instruction information conforming to the specific interface of the selected device using the mapping information; and A distributed resource utilization system, comprising: an instruction output unit configured to transmit, to a device, instruction information adapted to the specific interface converted by the mapping processing unit.

このように、分散リソース活用システムによれば、デバイス連携サーバに、個別のインタフェース等に依存しない抽象的な連携ロジックを記述しておき、その抽象的な連携ロジックで示される抽象的な指示情報を、ゲートウェイに送信する。そして、ゲートウェイが、その抽象的な指示情報を、デバイスそれぞれに適合するインタフェースに変換して各デバイスに送信する。よって、デバイス連携サーバは、各デバイスに対応したインタフェースへの変換機能を持つ必要をなくすことができる。これにより、分散リソース活用システムでは、デバイス連携サーバの負荷を低減した上で、連携したサービスを提供することができる。   As described above, according to the distributed resource utilization system, the abstract cooperation logic which does not depend on an individual interface or the like is described in the device cooperation server, and the abstract instruction information indicated by the abstract cooperation logic is Send to the gateway. Then, the gateway converts the abstract instruction information into an interface suitable for each device and transmits it to each device. Therefore, the device cooperation server can eliminate the need for having a conversion function to an interface corresponding to each device. Thus, in the distributed resource utilization system, it is possible to provide a coordinated service while reducing the load on the device cooperation server.

本発明によれば、デバイスを動的に発見し利用する分散リソース活用システムにおいて、個々のデバイスの仕様や設定に依存せず、複数のデバイスが連携してサービスを提供するデバイス連携サービスを実現することができる。   According to the present invention, in a distributed resource utilization system in which devices are dynamically discovered and used, a device cooperation service is realized in which a plurality of devices cooperate to provide a service without depending on the specifications and settings of individual devices. be able to.

本実施形態に係るデバイス連携サーバを含む分散リソース活用システムを示す図である。It is a figure which shows the distributed resource utilization system containing the device cooperation server which concerns on this embodiment. 本発明の第1実施形態に係る分散リソース活用システムの概要を説明するための図である。BRIEF DESCRIPTION OF THE DRAWINGS It is a figure for demonstrating the outline | summary of the distributed resource utilization system which concerns on 1st Embodiment of this invention. 本発明の第1実施形態に係るデバイス連携サーバの構成例を示す機能ブロック図である。It is a functional block diagram showing an example of composition of a device cooperation server concerning a 1st embodiment of the present invention. 本発明の第1実施形態に係るデバイス連携サーバの処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the device cooperation server which concerns on 1st Embodiment of this invention. 本発明の第2実施形態に係る分散リソース活用システムの概要を説明するための図である。It is a figure for demonstrating the outline | summary of the distributed resource utilization system which concerns on 2nd Embodiment of this invention. 本発明の第2実施形態に係るデバイス連携サーバの構成例を示す機能ブロック図である。It is a functional block diagram showing an example of composition of a device cooperation server concerning a 2nd embodiment of the present invention. 本発明の第2実施形態に係るデバイス連携サーバの処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the device cooperation server which concerns on 2nd Embodiment of this invention. 本発明の第3実施形態に係る分散リソース活用システムの概要を説明するための図である。It is a figure for demonstrating the outline | summary of the distributed resource utilization system which concerns on 3rd Embodiment of this invention. 本発明の第3実施形態に係るデバイス連携サーバおよびゲートウェイ(GW)の構成例を示す機能ブロック図である。It is a functional block diagram showing an example of composition of a device cooperation server and a gateway (GW) concerning a 3rd embodiment of the present invention. 本発明の第3実施形態に係る分散リソース活用システム(デバイス連携サーバおよびゲートウェイ)の処理の流れを示すシーケンス図である。It is a sequence diagram which shows the flow of a process of the distributed resource utilization system (device cooperation server and gateway) which concerns on 3rd Embodiment of this invention. Tacit Computingの概要を説明するための図である。It is a figure for demonstrating the outline | summary of Tacit Computing.

次に、本発明を実施するための形態(以下、「本実施形態」と称する。)における、デバイス連携サーバ1等について説明する。
図1は、本実施形態に係るデバイス連携サーバ1を含む分散リソース活用システム100を示す図である。なお、本実施形態では、ネットワークに接続された複数のリソース(デバイス等)から、ユーザが所望のサービスを実現するための適切なリソースを発見して利用する分散リソース活用システムとして、Tacit Computingシステムを例として、以下説明する。
本実施形態に係る分散リソース活用システム100(Tacit Computingシステム)は、図11に示した従来のTacit Computingの構成に加え、図1に示すように、デバイス連携サーバ1を含むことを特徴とする。デバイス連携サーバ1は、クラウドレイヤ、ネットワークレイヤ、デバイスレイヤの3層に位置する各リソース(デバイス)と通信可能に接続され、ユーザが所望するサービスを実現するために、各デバイスが備える各種機能を連携するように制御する装置である。
Next, the device cooperation server 1 and the like in a mode for carrying out the present invention (hereinafter, referred to as "the present embodiment") will be described.
FIG. 1 is a diagram showing a distributed resource utilization system 100 including a device cooperation server 1 according to the present embodiment. In the present embodiment, the Tacit Computing system is used as a distributed resource utilization system in which the user finds and uses an appropriate resource for realizing a desired service from a plurality of resources (devices and the like) connected to the network. An example will be described below.
A distributed resource utilization system 100 (Tacit Computing system) according to the present embodiment is characterized by including a device cooperation server 1 as shown in FIG. 1 in addition to the conventional Tacit Computing configuration shown in FIG. The device cooperation server 1 is communicably connected to each resource (device) located in the third layer of the cloud layer, the network layer, and the device layer, and in order to realize the service desired by the user, various functions included in each device It is an apparatus which controls to cooperate.

分散リソース活用システム100において、デバイスを連携してサービスを提供する際、図1に示したデバイス連携サーバ1に、連携ロジックを格納しておき、Tacit Computingシステムを用いて適切なリソース(デバイス)を発見することで、そのデバイスを動的に利用し連携サービスを実現する。
以下、本実施形態に係るデバイス連携サーバ1が、分散リソース活用システム100(Tacit Computingシステム)におけるデバイスの動的な利用により連携サービスを実現する構成例について、第1〜第3実施形態として説明する。
In the distributed resource utilization system 100, when providing services in cooperation with devices, cooperation logic is stored in the device cooperation server 1 shown in FIG. 1, and appropriate resources (devices) are provided using the Tacit Computing system. By discovering, the device is used dynamically to realize collaboration service.
Hereinafter, a configuration example in which the device cooperation server 1 according to the present embodiment realizes cooperation service by dynamic use of devices in the distributed resource utilization system 100 (Tacit Computing system) will be described as the first to third embodiments. .

<第1実施形態>
第1実施形態は、デバイス連携サーバ1が、標準インタフェース(定義)を用いて記述された連携ロジックを備えることを特徴とする。
図2は、本発明の第1実施形態に係る分散リソース活用システム100Aの概要を説明するための図である。なお、図2においては、図1に示した分散リソース活用システム100のうち、デバイスレイヤの各リソース(センサやアクチュエータ等のデバイス)とデバイス連携サーバ1のみを抽出して図示している。
First Embodiment
The first embodiment is characterized in that the device cooperation server 1 includes cooperation logic described using a standard interface (definition).
FIG. 2 is a diagram for explaining an outline of the distributed resource utilization system 100A according to the first embodiment of the present invention. In FIG. 2, only the resources (devices such as sensors and actuators) of the device layer and the device cooperation server 1 are extracted and illustrated in the distributed resource utilization system 100 shown in FIG. 1.

図2に示すように、分散リソース活用システム100Aにおけるデバイスは、デバイスが持つサービスのアクション(機能)が標準化されているデバイス(以下、「標準デバイス2A」と称する。)で構成される。この標準デバイス2Aは、例えば、UPnP(Universal Plug and Play)(登録商標)の規格に準拠したインタフェースを備えるデバイスである。
サービスを実現する各標準デバイス2A(2A,2A、2A)は、UPnPにおいて規格化されたSOAP(Simple Object Access Protocol)等によりデバイス連携サーバ1Aからの要求や応答が送受信される。
As shown in FIG. 2, the device in the distributed resource utilization system 100A is configured by a device (hereinafter referred to as "standard device 2A") in which the action (function) of the service possessed by the device is standardized. The standard device 2A is, for example, a device provided with an interface conforming to the Universal Plug and Play (UPnP) (registered trademark) standard.
Each standard device 2A (2A 1 , 2A 2 , 2A 3 ) that realizes the service transmits / receives a request or a response from the device cooperation server 1A by SOAP (Simple Object Access Protocol) or the like standardized in UPnP.

また、標準デバイス2Aのメタデータは、所定の形式(例えば、XML(Extensible Markup Language))等のドキュメントとして公開されている(図2の公開メタデータ200)。これにより、デバイス連携サーバ1Aは、各デバイスが備えるサービスの機能に関する情報を、自身の記憶部に記憶し、サービスの実行に最適なデバイスを選択することができる。   In addition, the metadata of the standard device 2A is published as a document in a predetermined format (for example, XML (Extensible Markup Language)) (release metadata 200 in FIG. 2). Thereby, the device cooperation server 1A can store information on the function of the service provided in each device in its own storage unit, and can select an optimal device for executing the service.

図3は、本発明の第1実施形態に係るデバイス連携サーバ1Aの構成例を示す機能ブロック図である。デバイス連携サーバ1Aは、サービス利用者90(図2参照)が備える端末9(図2参照)からのサービス要求を受け付け、そのサービスを実行するために最適なデバイスを発見するとともに、標準インタフェース(定義)により記述された連携ロジック(連携ロジック(標準IF)131A)を用いて、複数のデバイスが連携してサービスを提供するように制御する装置である。
このデバイス連携サーバ1Aは、図3に示すように、制御部11と、入出力部12と、記憶部13とを含んで構成される。
FIG. 3 is a functional block diagram showing a configuration example of the device cooperation server 1A according to the first embodiment of the present invention. The device cooperation server 1A receives a service request from the terminal 9 (see FIG. 2) included in the service user 90 (see FIG. 2), discovers an optimum device for executing the service, and ) Using the cooperation logic (coordination logic (standard IF) 131A) described in accordance with FIG.
As shown in FIG. 3, the device cooperation server 1A includes a control unit 11, an input / output unit 12, and a storage unit 13.

入出力部12は、クラウドレイヤ、ネットワークレイヤおよびデバイスレイヤに属する各デバイス等との間で情報の送受信を行うための通信インタフェースと、タッチパネルやキーボード等の入力装置や、モニタ等の出力装置との間で情報の送受信を行うための入出力インタフェースとから構成される。   The input / output unit 12 includes a communication interface for transmitting and receiving information to and from each device belonging to the cloud layer, the network layer, and the device layer, an input device such as a touch panel or a keyboard, and an output device such as a monitor. It is comprised from the input-output interface for transmitting and receiving information between.

記憶部13は、ハードディスクやフラッシュメモリ、RAM(Random Access Memory)等により構成される。
この記憶部13には、標準インタフェース(IF)を使って記述された連携ロジック131Aおよびデバイス情報DB(DataBase)132が記憶されるとともに、制御部11の処理に必要な情報(例えば、各デバイスから取得するUPnP Description等)が一時的に記憶される。
The storage unit 13 is configured of a hard disk, a flash memory, a random access memory (RAM), and the like.
The storage unit 13 stores cooperation logic 131A and device information DB (DataBase) 132 described using a standard interface (IF), and information required for processing of the control unit 11 (for example, from each device) UPnP Description etc. to be acquired are temporarily stored.

ここで、連携ロジック(標準IF)131Aには、サービスを連携させるためのプログラムが、標準インタフェース(IF)に基づく仕様(標準化された定義に基づく仕様)により記述される。この標準インタフェース(IF)は、上記したUPnPに限定されず、例えば、WSDL(Web Services Description Language)や、Echonet(登録商標)、REST(Representational State Transfer)等であってもよい。
また、デバイス情報DB132には、デバイスレイヤに存在する各標準デバイス2Aの公開されているメタデータが格納される。このデバイスのメタデータには、少なくとも、デバイスの識別情報、デバイスの種別(そのデバイスの機能等を示す情報)、デバイスの位置情報が格納される。
Here, in the collaboration logic (standard IF) 131A, a program for linking services is described by a specification based on a standard interface (IF) (a specification based on a standardized definition). This standard interface (IF) is not limited to the above-described UPnP, and may be, for example, WSDL (Web Services Description Language), Echonet (registered trademark), REST (Representational State Transfer), or the like.
Also, the device information DB 132 stores public metadata of each standard device 2A present in the device layer. The metadata of the device stores at least identification information of the device, a type of the device (information indicating a function or the like of the device), and position information of the device.

制御部11は、デバイス連携サーバ1A全体の制御を司り、サービス要求受信部111と、メタデータ取得部112と、デバイス選択部113と、デバイス処理情報収集部114と、サービス実行部115とを備える。
また、この制御部11は、例えば、記憶部13に記憶されたプログラム(デバイス連携プログラム)を不図示のCPU(Central Processing Unit)が、RAMに展開し実行することにより実現される。
The control unit 11 controls the entire device cooperation server 1A, and includes a service request reception unit 111, a metadata acquisition unit 112, a device selection unit 113, a device processing information collection unit 114, and a service execution unit 115. .
The control unit 11 is realized, for example, by a CPU (Central Processing Unit) (not shown) expanding a program (device cooperation program) stored in the storage unit 13 into a RAM and executing the program.

サービス要求受信部111は、サービス利用者90(図2参照)が備える端末9からのサービス要求メッセージ(サービス要求)を受信する。
このサービス要求メッセージには、少なくとも要求するサービスの識別情報(サービス識別情報)、ユーザの識別情報、端末9の位置情報が含まれる。
The service request receiving unit 111 receives a service request message (service request) from the terminal 9 included in the service user 90 (see FIG. 2).
The service request message contains at least identification information of the requested service (service identification information), identification information of the user, and position information of the terminal 9.

メタデータ取得部112は、各標準デバイス2Aのメタデータ(デバイスの機能や位置情報等)を取得し、記憶部13内のデバイス情報DB132に格納する。メタデータ取得部112は、例えば、サービス要求受信部111が受信した端末9の位置情報を用いて、その端末9が位置するエリアに存在する各標準デバイス2AからメタデータをHTTP(Hyper Text Transfer Protocol)等により取得する。その他でも、メタデータ取得部112は、自身と接続するすべての標準デバイス2Aから、あらかじめメタデータを取得するようにしてもよい。このメタデータ取得部112による各標準デバイス2Aのメタデータの取得手法は特に限定はなく、何らかの既存手法で、デバイス連携サーバ1Aは、各標準デバイス2Aのメタデータを取得し、デバイス情報DB132に格納する。   The metadata acquisition unit 112 acquires metadata (a function of the device, position information, and the like) of each standard device 2A, and stores the acquired metadata in the device information DB 132 in the storage unit 13. The metadata acquisition unit 112 uses, for example, the location information of the terminal 9 received by the service request reception unit 111 to transmit metadata from each standard device 2A present in the area where the terminal 9 is located to HTTP (Hyper Text Transfer Protocol). ) Etc. Otherwise, the metadata acquisition unit 112 may acquire metadata in advance from all standard devices 2A connected to itself. The method of acquiring metadata of each standard device 2A by the metadata acquiring unit 112 is not particularly limited, and the device cooperation server 1A acquires the metadata of each standard device 2A by any existing method, and stores it in the device information DB 132 Do.

デバイス選択部113は、サービス要求受信部111が受信したサービス要求メッセージに含まれる要求するサービスの識別情報(サービス識別情報)を用いて、記憶部13内の連携ロジック(標準IF)131Aを参照し、そのサービスの提供に必要なデバイスの機能を特定する。そして、デバイス選択部113は、特定した機能を備え、端末9の位置情報で示される位置の近傍に位置する標準デバイス2Aを、デバイス情報DB132を参照して選択する。なお、デバイス選択部113は、機能および位置情報とともに、例えば、その標準デバイス2Aを利用する値段(利用料金)やサービス提供者(事業者)等の他のメタデータの情報を条件に加えて、サービスに利用する標準デバイス2Aを選択するようにしてもよい。   The device selection unit 113 refers to the cooperation logic (standard IF) 131A in the storage unit 13 using the identification information (service identification information) of the requested service included in the service request message received by the service request reception unit 111. , Identify the device capabilities required to provide that service. Then, the device selection unit 113 selects the standard device 2A having the specified function and located near the position indicated by the position information of the terminal 9 with reference to the device information DB 132. The device selection unit 113 adds, to the condition, information of other metadata such as a price (usage fee) for using the standard device 2A and a service provider (business operator) together with the function and position information, for example. The standard device 2A to be used for the service may be selected.

デバイス処理情報収集部114は、デバイス選択部113が選択した標準デバイス2Aに対し、例えば、HTTP等の既存のアクセス手法により、そのデバイスの操作手順等を示すデバイス処理情報を要求し、その標準デバイス2Aから収集する。
デバイス処理情報収集部114は、標準インタフェースが例えばUPnPである場合には、選択した標準デバイス2Aから、デバイス処理情報として、UPnP Descriptionを収集する。
The device processing information collection unit 114 requests the standard device 2A selected by the device selection unit 113 for device processing information indicating an operation procedure or the like of the device according to an existing access method such as HTTP, for example, and the standard device Collect from 2A.
When the standard interface is, for example, UPnP, the device processing information collection unit 114 collects UPnP Description as device processing information from the selected standard device 2A.

サービス実行部115は、記憶部13に記憶された連携ロジック(標準IF)131Aに基づき、複数の標準デバイス2Aを連携させるサービスを実行する。その際、サービス実行部115は、各標準デバイス2Aへの具体的な操作等の指示を、デバイス処理情報収集部114が収集した、UPnP Descriptionに記述されたSOAP等により行う。   The service execution unit 115 executes a service that causes the plurality of standard devices 2A to cooperate based on the cooperation logic (standard IF) 131A stored in the storage unit 13. At this time, the service execution unit 115 issues an instruction such as a specific operation to each standard device 2A using the SOAP or the like described in the UPnP Description collected by the device processing information collection unit 114.

<処理の流れ>
次に、本発明の第1実施形態に係るデバイス連携サーバ1Aの処理の流れについて説明する。図4は、本発明の第1実施形態に係るデバイス連携サーバ1Aの処理の流れを示すフローチャートである。
<Flow of processing>
Next, the flow of processing of the device cooperation server 1A according to the first embodiment of the present invention will be described. FIG. 4 is a flowchart showing the process flow of the device cooperation server 1A according to the first embodiment of the present invention.

まず、デバイス連携サーバ1Aのサービス要求受信部111は、サービス利用者90(図2参照)が備える端末9から、サービス要求メッセージを受信する(ステップS10)。このサービス要求メッセージには、少なくとも要求するサービスの識別情報(サービス識別情報)、ユーザの識別情報、端末9の位置情報が含まれる。
なお、ユーザの識別情報としては、そのユーザに固有なID(Identification)に加えて、監視カメラ等からの映像を画像解析(顔認識)し、人物を特定するための情報(顔写真のデータや特徴量等)が含まれていてもよい。
First, the service request receiving unit 111 of the device cooperation server 1A receives a service request message from the terminal 9 of the service user 90 (see FIG. 2) (step S10). The service request message contains at least identification information of the requested service (service identification information), identification information of the user, and position information of the terminal 9.
In addition to ID (Identification) unique to the user as the identification information of the user, image analysis (face recognition) of an image from a surveillance camera or the like, information for specifying a person (data of a facial photograph or the like A feature amount etc. may be included.

続いて、メタデータ取得部112は、各標準デバイス2Aのメタデータ(デバイスの機能や位置情報等)を取得し、記憶部13内のデバイス情報DB132に格納する(ステップS11)。
ここで、メタデータ取得部112は、サービス要求受信部111が受信したサービス要求メッセージに含まれる端末9の位置情報に基づき、端末9が位置するエリアに属する標準デバイス2Aからメタデータを取得するようにしてもよい。
Subsequently, the metadata acquisition unit 112 acquires metadata (a function of the device, position information, and the like) of each standard device 2A, and stores the acquired metadata in the device information DB 132 in the storage unit 13 (step S11).
Here, based on the position information of the terminal 9 included in the service request message received by the service request receiving unit 111, the metadata acquiring unit 112 acquires metadata from the standard device 2A belonging to the area in which the terminal 9 is located. You may

次に、デバイス連携サーバ1Aのデバイス選択部113は、サービス利用者が要求するサービスを実現するためのデバイス(標準デバイス2A)を選択する(ステップS12)。
具体的には、デバイス選択部113は、サービス要求受信部111が受信したサービス要求メッセージに含まれるサービス識別情報を用いて、記憶部13内の連携ロジック(標準IF)131Aを参照し、そのサービスの提供に必要なデバイスの機能を特定する。そして、デバイス選択部113は、その特定した機能を備え、端末9の位置情報で示される位置の近傍に位置する標準デバイス2Aを、デバイス情報DB132を参照して選択する。デバイス選択部113は、機能および位置に加えて、メタデータに含まれる他の条件(値段、サービス提供者等)も加えて、標準デバイス2Aを選択してもよい。
Next, the device selection unit 113 of the device cooperation server 1A selects a device (standard device 2A) for realizing the service requested by the service user (step S12).
Specifically, the device selection unit 113 refers to the cooperation logic (standard IF) 131A in the storage unit 13 using the service identification information included in the service request message received by the service request reception unit 111, and the service thereof Identify the device features required to provide Then, the device selection unit 113 selects the standard device 2A having the specified function and located near the position indicated by the position information of the terminal 9 with reference to the device information DB 132. The device selection unit 113 may select the standard device 2A by adding other conditions (price, service provider, etc.) included in the metadata in addition to the function and the position.

続いて、デバイス連携サーバ1Aのデバイス処理情報収集部114は、デバイス選択部113が選択した標準デバイス2Aに対し、例えば、HTTP等のアクセス手法により、そのデバイスの操作手順等を示すデバイス処理情報を要求し、その標準デバイス2Aから収集する(ステップS13)。
デバイス処理情報収集部114は、標準インタフェースが例えばUPnPである場合には、選択した標準デバイス2Aから、デバイス処理情報として、UPnP Descriptionを収集する。例えば、標準デバイス2Aが、監視カメラであれば、監視カメラの動き(ズームやパン等)の指示の記述をUPnP Descriptionとして取得する。
Subsequently, the device processing information collection unit 114 of the device cooperation server 1A performs device processing information indicating an operation procedure or the like of the standard device 2A selected by the device selection unit 113 by using, for example, an access method such as HTTP. It requests and collects it from the standard device 2A (step S13).
When the standard interface is, for example, UPnP, the device processing information collection unit 114 collects UPnP Description as device processing information from the selected standard device 2A. For example, if the standard device 2A is a surveillance camera, a description of an instruction for movement (zoom, pan, etc.) of the surveillance camera is acquired as UPnP Description.

そして、サービス実行部115は、記憶部13に記憶された連携ロジック(標準IF)131Aに基づき、連携サービスを実行する(ステップS14)。
例えば、駅での観光客のナビゲーションサービスでは、デバイス連携サーバ1Aは、そのサービス利用者90の近傍に位置する、駅の監視カメラ、駅のディスプレイ、駅のスピーカ等を標準デバイス2Aとして選択する。そして、デバイス連携サーバ1Aのサービス実行部115は、監視カメラによって、観光客を顔認識により特定し、駅のディスプレイの前にくると、そのディスプレイに、乗換先や時刻、地図等が表示されるように、ディスプレイを制御する。また、監視カメラによって、対象とする観光客の移動方向を解析することにより、誤った方向に向かっていると判定した場合には、駅のスピーカにより、別方向に向かっている旨のアナウンスを発する指示を出す。
このような連携サービスの個々の処理を実行する条件は、連携ロジック(標準IF)131Aにおいて記述される。そして、デバイス連携サーバ1Aのサービス実行部115は、時々刻々変化するサービス利用者90の情報(位置情報や画像解析の情報等)をリアルタイムに取得し、適切なナビゲーションをサービスとして実行する。
Then, the service execution unit 115 executes the cooperation service based on the cooperation logic (standard IF) 131A stored in the storage unit 13 (step S14).
For example, in the navigation service for a tourist at a station, the device cooperation server 1A selects a station monitoring camera, a station display, a station speaker, etc., located near the service user 90 as the standard device 2A. Then, the service execution unit 115 of the device cooperation server 1A identifies the tourist by face recognition with the surveillance camera, and when it comes in front of the display of the station, the destination, time, map, etc. are displayed on the display To control the display. In addition, by analyzing the moving direction of the target tourist with the surveillance camera, if it is determined that it is heading in the wrong direction, the speaker of the station issues an announcement indicating that it is heading in another direction Give instructions.
Conditions for executing individual processing of such a cooperative service are described in the cooperative logic (standard IF) 131A. Then, the service execution unit 115 of the device cooperation server 1A acquires, in real time, information (position information, information of image analysis, etc.) of the service user 90 which changes from moment to moment, and executes appropriate navigation as a service.

このように、本実施形態に係る分散リソース活用システム100Aのデバイス連携サーバ1Aによれば、連携ロジックを、標準インタフェースを用いて記述し、標準インタフェースにより動作可能な標準デバイス2Aを用いて連携サービスを提供することができる。よって、標準インタフェースを備えるデバイスであれば、デバイスの種別を問わず、各デバイスが備える機能を連携させてサービスを提供することが可能となる。   As described above, according to the device cooperation server 1A of the distributed resource utilization system 100A according to the present embodiment, cooperation logic is described using a standard interface, and cooperation service is performed using a standard device 2A operable with the standard interface. Can be provided. Therefore, if it is a device provided with a standard interface, it becomes possible to provide a service by linking the functions provided by each device regardless of the type of device.

<第2実施形態>
第2実施形態は、デバイス連携サーバ1が、抽象的に記述された連携ロジックを備え、サービス実行時には、デバイス連携サーバ1が各デバイスに適合するインタフェース(IF)に変換して指示することを特徴とする。
Second Embodiment
The second embodiment is characterized in that the device cooperation server 1 is provided with cooperation logic described abstractly, and at the time of service execution, the device cooperation server 1 converts and instructs to an interface (IF) suitable for each device. I assume.

図5は、本発明の第2実施形態に係る分散リソース活用システム100Bの概要を説明するための図である。なお、図5においては、図1に示した分散リソース活用システム100のうち、デバイスレイヤの各リソース(センサやアクチュエータ等のデバイス)とデバイス連携サーバ1のみを抽出して図示している。   FIG. 5 is a view for explaining an outline of the distributed resource utilization system 100B according to the second embodiment of the present invention. In FIG. 5, only the resources (devices such as sensors and actuators) of the device layer and the device cooperation server 1 are extracted and shown in the distributed resource utilization system 100 shown in FIG.

図5に示すように、分散リソース活用システム100Bにおけるデバイス2Bは、図2で示した第1実施形態に係るデバイス(標準デバイス2A)のように、標準化されておらず、各デバイス2Bにおいてインタフェース(IF)が異なっていてもよいことを前提としている。各デバイス2B(2B,2B,2B)は、例えば、BLE(Bluetooth Low Energy)(「Bluetooth」は登録商標)、Echonet、REST等の各通信プロトコルに準拠したインタフェースによりアクセスが可能であるとする。
これは、デバイスについては、現実には多種多様であり、標準化されていないデバイスを用いてサービスを提供する必要がある場合も想定されるからである。このため、連携ロジックをデバイスの具体的インタフェースに依存しない抽象的指示として記述する。
As shown in FIG. 5, the device 2B in the distributed resource utilization system 100B is not standardized like the device (standard device 2A) according to the first embodiment shown in FIG. It is premised that IF) may be different. Each device 2B (2B 1 , 2B 2 , 2B 3 ) can be accessed by an interface conforming to each communication protocol such as BLE (Bluetooth Low Energy) (“Bluetooth” is a registered trademark), Echonet, REST, etc., for example. I assume.
This is because there are a wide variety of devices in reality, and it is assumed that services need to be provided using non-standardized devices. Therefore, cooperation logic is described as an abstract instruction that does not depend on the specific interface of the device.

分散リソース活用システム100Bのデバイス連携サーバ1Bは、複数のデバイス2Bを連携させたサービスを実現するため、抽象的な連携ロジック(図5の「連携ロジック(抽象的)131B」)を予め記憶しておく。そして、サービス利用者90の端末9から、サービス要求メッセージを受け付けた際に、デバイス連携サーバ1Bは、その抽象的な連携ロジックに基づき、各デバイス2Bのメタデータや端末9の位置情報を用いて、サービスに利用するデバイス2Bを選択する。次に、デバイス連携サーバ1Bは、選択した各デバイス2Bの処理を実行する際に、抽象的な連携ロジックを、デバイス2Bから取得したデバイス処理情報で示される具体的インタフェースにマッチングすることにより変換する。そして、変換した具体的なインタフェースを用いて、デバイスを連携利用する。
なお、本実施形態(第2および後記する第3実施形態)において、「抽象的な(指示・ロジック)」とは、個々のデバイスの具体的インタフェースに依存しないことを意味し、例えば、XML等のメタデータにより記述された指示情報やロジックを意味する。
The device cooperation server 1B of the distributed resource utilization system 100B stores in advance abstract cooperation logic ("cooperation logic (abstractive) 131B" in FIG. 5) in order to realize a service in which a plurality of devices 2B are made to cooperate. deep. Then, when a service request message is received from the terminal 9 of the service user 90, the device cooperation server 1B uses the metadata of each device 2B and the position information of the terminal 9 based on the abstract cooperation logic. , Select a device 2B to be used for the service. Next, when executing the process of each of the selected devices 2B, the device cooperation server 1B converts the abstract cooperation logic by matching it to the specific interface indicated by the device processing information acquired from the device 2B. . Then, using the converted specific interface, the device is used in cooperation.
In the present embodiment (the second and third embodiments described later), “abstract (instruction / logic)” means not depending on the specific interface of each device, and, for example, XML etc. This means the instruction information or logic described by the metadata of.

この抽象的な連携ロジックを用いた処理は、例えば、セマンティックWebの技術を用いて実現される。このセマンティックWebは、例えば、「赤埴淳一、他5名、“実世界セマンティックWebに向けて ― 時空間メタデータによるWeb検索の拡張”、一般社団法人電気通信協会、NTT技術ジャーナル、2003年4月、P.29-34」に詳しい。
セマンティックWebは、情報(メタデータ)を記述するための枠組みであるRDF(Resource Description Framework)と、語彙(単語間の関係:オントロジ)を定義するためのOWL−S(Web Ontology Language for Service)とによって実現される。このOWL−Sは、図5に示すように、サービスの概要を示すプロファイル(Profile)、具体的な操作(プロセス)を示すプロセスモデル(Process Model)、OWL−Sで記述した内容を各デバイスのインタフェース(IF)の規格に沿った記述にマッピングするためのグランディング(Grounding)という3種類の情報からなり、これら情報(公開メタデータ200)が各デバイス2Bに付与される。デバイス連携サーバ1Bは、この公開メタデータ200のうち、各デバイス2B(2B,2B,2B)に関するプロファイルの情報を取得し記憶部に記憶する。そして、その情報を用いて、要求されたサービスを実現できるように、利用するデバイス2Bを選択する。次に、デバイス連携サーバ1Bは、選択したデバイス2Bから、プロセスモデル、グランディングの情報(デバイス処理情報)および具体的インタフェースの情報を取得し、抽象的な連携ロジックに基づく指示情報をそのデバイス2Bに適合した具体的インタフェースに変換した上で、サービスを提供する。
The processing using this abstract cooperation logic is realized, for example, using the technology of the Semantic Web. The Semantic Web is, for example, “Aichi Aka, 5 others,“ Towards the Real World Semantic Web-Extension of Web Search by Spatio-Temporal Metadata ”, Telecommunications Association of Japan, NTT Technical Journal, April 2003 , Pp. 29-34.
The Semantic Web is a framework for describing information (metadata), RDF (Resource Description Framework), and OWL-S (Web Ontology Language for Service) for defining vocabulary (relationship between words: ontology). Is realized by As shown in FIG. 5, this OWL-S is a profile (Profile) showing an outline of a service, a process model (Process Model) showing a specific operation (process), and the contents described in OWL-S for each device. It consists of three types of information called grounding for mapping to a description in line with the interface (IF) standard, and these pieces of information (public metadata 200) are given to each device 2B. The device cooperation server 1B acquires the information of the profile regarding each device 2B (2B 1 , 2B 2 , 2B 3 ) in the public metadata 200 and stores it in the storage unit. Then, using the information, the device 2B to be used is selected so that the requested service can be realized. Next, the device cooperation server 1B acquires a process model, information on landing (device processing information) and information on a specific interface from the selected device 2B, and indicates instruction information based on abstract cooperation logic to the device 2B. Convert to a specific interface that conforms to, and provide services.

図6は、本発明の第2実施形態に係るデバイス連携サーバ1Bの構成例を示す機能ブロック図である。デバイス連携サーバ1Bは、サービス利用者90(図2参照)が備える端末9からのサービス要求メッセージを受け付け、そのサービスを実行するための最適なデバイスを発見するとともに、抽象的な連携ロジック(連携ロジック(抽象的)131B)を用いて、複数のデバイス2Bが連携してサービスを提供するように制御する装置である。
このデバイス連携サーバ1Bは、図6に示すように、制御部11と、入出力部12と、記憶部13とを含んで構成される。図3に示したデバイス連携サーバ1Aとの違いは、制御部11にマッピング処理部116をさらに備えることと、連携ロジックが、標準インタフェース(IF)ではなく、抽象的な連携ロジック(連携ロジック(抽象的)131B)となっていることである。なお、図3に示したデバイス連携サーバ1Aと、同じ機能を備える構成は、同一の名称と符合を付し、詳細な説明を省略する。
FIG. 6 is a functional block diagram showing a configuration example of the device cooperation server 1B according to the second embodiment of the present invention. The device cooperation server 1B receives a service request message from the terminal 9 of the service user 90 (see FIG. 2), finds an optimum device for executing the service, and abstracts cooperation logic (cooperation logic The (abstractive) 131 B) is used to control a plurality of devices 2 B to cooperate to provide a service.
This device cooperation server 1B is configured to include a control unit 11, an input / output unit 12, and a storage unit 13, as shown in FIG. The difference from the device cooperation server 1A shown in FIG. 3 is that the control unit 11 further includes the mapping processing unit 116, and the cooperation logic is not a standard interface (IF) but an abstract cooperation logic (cooperation logic (abstraction logic D) 131 B). The configuration having the same function as that of the device cooperation server 1A shown in FIG. 3 is attached with the same name and sign, and the detailed description is omitted.

記憶部13に記憶される連携ロジック131Bは、上記のように、抽象的な指示情報として記述される。例えば、セマンティックWebのOWL−Sの規定に則り記述される。その他でも、標準化団体OMA(Open Mobile Alliance)において標準化されたGoTAPI等であってもよい。GoTAPIについては、例えば、「 “GoTAPIとは”、[online]、デバイスWebAPIコンソーシアム、[平成30年1月5日検索]、インターネット<URL:https://device-webapi.org/gotapi.html>」に詳しい。   The cooperation logic 131B stored in the storage unit 13 is described as abstract instruction information as described above. For example, it is described in accordance with OWL-S of the Semantic Web. In addition, GoTAPI etc. standardized in standardization body OMA (Open Mobile Alliance) may be used. For GoTAPI, for example, “What is GoTAPI”, [online], Device WebAPI Consortium, [Search on January 5, 2018], Internet <URL: https://device-webapi.org/gotapi.html> I am familiar with

記憶部13のデバイス情報DB132には、デバイスレイヤに存在する各デバイス2Bの公開されているメタデータが格納される。このデバイスのメタデータには、少なくとも、デバイスの識別情報、デバイスの種別(そのデバイスの機能等を示す情報)、デバイスの位置情報が格納される。
なお、抽象的な連携ロジック131Bとして、OWL−Sを採用した場合には、このデバイス情報DB132には、OWL−Sで規定されるプロファイル(Profile)の情報(例えば、図5に示す、機能、位置、サービスの利用に関する値段、デバイスの所有者(具体的サービスの提供者)等)が格納される。
The device information DB 132 of the storage unit 13 stores public metadata of each device 2B existing in the device layer. The metadata of the device stores at least identification information of the device, a type of the device (information indicating a function or the like of the device), and position information of the device.
When OWL-S is adopted as the abstract cooperation logic 131 B, the device information DB 132 includes information of a profile (Profile) defined by OWL-S (for example, a function shown in FIG. 5, The location, the price for using the service, the owner of the device (specific service provider), etc. are stored.

デバイス選択部113は、サービス要求受信部111が受信したサービス要求メッセージに含まれる要求するサービスの識別情報(サービス識別情報)を用いて、そのサービスの提供に必要なデバイス2Bの機能を特定する。そして、デバイス選択部113は、特定した機能を備えるデバイス(デバイス2B)であり、端末9の位置情報で示される位置の近傍に位置するデバイス2Bを、デバイス情報DB132を参照して選択する。例えば、デバイス選択部113は、デバイス情報DB132に記憶された、OWL−Sで規定されるプロファイル(Profile)の情報に基づき、デバイス2Bを選択する。なお、デバイス選択部113は、機能および位置情報とともに、例えば、そのデバイス2Bを利用する値段(利用料金)やサービス提供者(事業者)等の他のメタデータに関する情報を条件に加えて、サービスに利用するデバイス2Bを選択するようにしてもよい。   The device selection unit 113 uses the identification information (service identification information) of the requested service included in the service request message received by the service request reception unit 111 to identify the function of the device 2B required to provide the service. Then, the device selection unit 113 is a device (device 2B) having the specified function, and selects the device 2B located near the position indicated by the position information of the terminal 9 with reference to the device information DB 132. For example, the device selection unit 113 selects the device 2B based on the information of the profile defined by OWL-S stored in the device information DB 132. The device selection unit 113 adds, to the conditions, information on other metadata such as the price (usage fee) for using the device 2B and the service provider (business operator), as well as the function and position information. The device 2B to be used may be selected.

デバイス処理情報収集部114は、デバイス選択部113が選択したデバイス2Bに対し、そのデバイスの操作手順等を示すデバイス処理情報を要求し、そのデバイス2Bから取得する。
なお、デバイス処理情報収集部114は、例えば、各デバイス2Bの公開メタデータがOWL−Sで規定されている場合には、デバイス処理情報として、プロセスモデル(Process Model)およびグランディング(Grounding)の情報と、そのデバイス2Bの具体的インタフェースの情報とを、デバイス処理情報として取得する。
The device processing information collection unit 114 requests, from the device 2B selected by the device selection unit 113, device processing information indicating an operation procedure of the device and the like, and acquires the device processing information from the device 2B.
Note that, for example, when the public metadata of each device 2B is defined by OWL-S, the device processing information collecting unit 114 sets, as device processing information, a process model (Process Model) and grounding (Grounding). The information and the information of the specific interface of the device 2B are acquired as device processing information.

マッピング処理部116は、デバイス処理情報収集部114がデバイス2Bから取得したデバイス処理情報を用いて、そのデバイス2Bに適合する具体的なインタフェースに、サービスの実行に関する処理をマッピングすることにより変換する。
例えば、マッピング処理部116は、OWL−Sで規定されるプロセスモデルで示される具体的なプロセス(デバイスの処理)を、グランディングの情報を用いてそのデバイス2Bに適合するインタフェースに変換する。図5に示すように、マッピング処理部116は、デバイス2Bの具体的インタフェース(IF)として設定されている、BLEや、Echonet、REST等に変換する。
The mapping processing unit 116 uses the device processing information acquired by the device processing information collection unit 114 from the device 2B to convert the processing related to the service execution to a specific interface compatible with the device 2B.
For example, the mapping processing unit 116 converts a specific process (processing of a device) indicated by the process model defined by OWL-S into an interface compatible with the device 2B using the information of grounding. As illustrated in FIG. 5, the mapping processing unit 116 converts BLE, Echonet, REST, or the like set as a specific interface (IF) of the device 2B.

サービス実行部115は、記憶部13に記憶された連携ロジック(抽象的)131Bに基づき、複数のデバイス2Bを連携させるサービスを実行する。その際、サービス実行部115は、マッピング処理部116が変換した具体的な操作等を各デバイス2Bに指示する。   The service execution unit 115 executes a service for causing the plurality of devices 2B to cooperate with each other based on the cooperation logic (abstractive) 131B stored in the storage unit 13. At this time, the service execution unit 115 instructs each device 2B the specific operation and the like converted by the mapping processing unit 116.

<処理の流れ>
次に、本発明の第2実施形態に係るデバイス連携サーバ1Bの処理の流れについて説明する。図7は、本発明の第2実施形態に係るデバイス連携サーバ1Bの処理の流れを示すフローチャートである。
なお、以下においては、分散リソース活用システム100Bは、セマンティックWebのOWL−Sに規定されたメタデータや記述を採用している例として説明する。よって、デバイス連携サーバ1Bの記憶部13内のデバイス情報DB132には、OWL−Sで規定されるプロファイル(Profile)の情報として、そのデバイスの識別情報、デバイスの種別(そのデバイスの機能等を示す情報)、デバイスの位置情報等が格納される。
<Flow of processing>
Next, the flow of processing of the device linkage server 1B according to the second embodiment of the present invention will be described. FIG. 7 is a flowchart showing the process flow of the device linkage server 1B according to the second embodiment of the present invention.
In the following, the distributed resource utilization system 100B will be described as an example in which metadata and a description defined in OWL-S of the Semantic Web are adopted. Therefore, the device information DB 132 in the storage unit 13 of the device cooperation server 1B indicates the identification information of the device, the type of the device (the function of the device, etc.) as the information of the profile defined by OWL-S. Information), location information of the device, etc. are stored.

まず、デバイス連携サーバ1Bのサービス要求受信部111は、サービス利用者90(図2参照)が備える端末9から、サービス要求メッセージを受信する(ステップS20)。このサービス要求メッセージには、少なくとも要求するサービスの識別情報(サービス識別情報)、ユーザの識別情報、端末9の位置情報が含まれる。
なお、ユーザの識別情報としては、そのユーザに固有なIDに加えて、監視カメラ等からの映像を画像解析(顔認識)し、人物を特定するための情報(顔写真のデータや特徴量等)が含まれていてもよい。
First, the service request receiving unit 111 of the device cooperation server 1B receives a service request message from the terminal 9 of the service user 90 (see FIG. 2) (step S20). The service request message contains at least identification information of the requested service (service identification information), identification information of the user, and position information of the terminal 9.
In addition to the ID unique to the user as the identification information of the user, image analysis (face recognition) of the video from the surveillance camera etc., information for specifying a person (data of a face picture, feature amount, etc. May be included.

続いて、メタデータ取得部112は、各デバイス2Bのメタデータ(デバイスの機能や位置情報等)を取得し、記憶部13内のデバイス情報DB132に格納する(ステップS21)。
ここで、メタデータ取得部112は、サービス要求受信部111が受信したサービス要求メッセージに含まれる端末9の位置情報に基づき、端末9が位置するエリアに属するデバイス2Bからメタデータを取得するようにしてもよい。
Subsequently, the metadata acquisition unit 112 acquires metadata (device function, position information, and the like) of each device 2B, and stores the acquired metadata in the device information DB 132 in the storage unit 13 (step S21).
Here, based on the position information of the terminal 9 included in the service request message received by the service request reception unit 111, the metadata acquisition unit 112 acquires metadata from the device 2B belonging to the area in which the terminal 9 is located. May be

次に、デバイス連携サーバ1Bのデバイス選択部113は、サービス利用者90が要求するサービスを実現するためのデバイス(デバイス2B)を選択する(ステップS22)。
具体的には、デバイス選択部113は、サービス要求受信部111が受信したサービス要求メッセージに含まれるサービス識別情報を用いて、記憶部13内の連携ロジック(抽象的)131Bを参照し、そのサービスの提供に必要なデバイスの機能を特定する。そして、デバイス選択部113は、その特定した機能を備えるデバイス(デバイス2B)であり、端末9の位置情報で示される位置の近傍に位置するデバイス2Bを、デバイス情報DB132を参照して選択する。
ここで、デバイス選択部113は、例えば、デバイス情報DB132に記憶された、OWL−Sで規定されるプロファイル(Profile)の情報(機能や位置情報)に基づき、デバイス2Bを選択する。
なお、デバイス選択部113は、機能および位置に加えて、メタデータに含まれる他の条件(値段、サービス提供者等)も加えて、デバイス2Bを選択してもよい。
Next, the device selection unit 113 of the device cooperation server 1B selects a device (device 2B) for realizing the service requested by the service user 90 (step S22).
Specifically, the device selection unit 113 refers to the cooperation logic (abstractive) 131 B in the storage unit 13 using the service identification information included in the service request message received by the service request reception unit 111, and the service thereof Identify the device features required to provide Then, the device selection unit 113 is a device (device 2B) having the specified function, and selects the device 2B located near the position indicated by the position information of the terminal 9 with reference to the device information DB 132.
Here, the device selection unit 113 selects the device 2B based on, for example, information (function and position information) of a profile (Profile) defined by OWL-S stored in the device information DB 132.
In addition to the function and the position, the device selection unit 113 may select the device 2B by adding other conditions (price, service provider, etc.) included in the metadata.

続いて、デバイス連携サーバ1Bのデバイス処理情報収集部114は、デバイス選択部113が選択したデバイス2Bに対し、そのデバイスの操作手順等を示すデバイス処理情報を要求し、そのデバイス2Bから収集する(ステップS23)。
デバイス処理情報収集部114は、例えば、各デバイス2Bの公開メタデータがOWL−Sで規定されている場合には、デバイス処理情報として、プロセスモデル(Process Model)およびグランディング(Grounding)の情報と、そのデバイス2Bの具体的インタフェースの情報とを、デバイス処理情報として取得する。
Subsequently, the device processing information collection unit 114 of the device cooperation server 1B requests, from the device 2B selected by the device selection unit 113, device processing information indicating an operation procedure of the device and the like, and collects it from the device 2B ( Step S23).
For example, when the public metadata of each device 2B is defined by OWL-S, the device processing information collection unit 114 sets information of a process model (Process Model) and grounding information as device processing information. The information of the specific interface of the device 2B is acquired as the device processing information.

次に、デバイス連携サーバ1Bのマッピング処理部116は、デバイス処理情報収集部114がデバイス2Bから取得したデバイス処理情報を用いて、そのデバイス2Bに適合する具体的インタフェース(IF)に、サービスの実行に関する処理をマッピングすることにより変換する(ステップS24)。
マッピング処理部116は、例えば、OWL−Sで規定されるプロセスモデルで示される具体的なプロセス(デバイスの処理)を、グランディングの情報を用いて、そのデバイス2Bに適合する具体的インタフェース(IF)、例えば、BLEやEchonet、REST等に変換する。
Next, using the device processing information acquired by the device processing information collection unit 114 from the device 2B, the mapping processing unit 116 of the device cooperation server 1B executes a service to a specific interface (IF) compatible with the device 2B. Are converted by mapping the process relating to (step S24).
The mapping processing unit 116 uses, for example, a specific process (processing of a device) indicated by a process model defined by OWL-S, using information of grounding, and a specific interface (IF ), For example, BLE, Echonet, REST, etc.

そして、デバイス連携サーバ1Bのサービス実行部115は、記憶部13に記憶された連携ロジック(抽象的)131Bに基づき、連携サービスを実行する(ステップS25)。
各デバイス2Bを連携するためのロジック(連携ロジック131B)には、各デバイス2Bが処理を実行に移すための条件やパラメータが記述される。そして、デバイス連携サーバ1Bは、時々刻々変化するサービス利用者90の情報(位置情報等)をリアルタイムに取得し、適切なデバイス2Bを発見した上で、連携ロジック(抽象的)131Bに基づく指示情報を、そのデバイス2Bの具体的インタフェースに適合する指示情報に変換した上で、ナビゲーション等の連携サービスを実行する。
Then, the service execution unit 115 of the device cooperation server 1B executes the cooperation service based on the cooperation logic (abstractive) 131B stored in the storage unit 13 (step S25).
In the logic (cooperation logic 131B) for linking the devices 2B, conditions and parameters for the processing of each device 2B are described. Then, the device cooperation server 1B acquires the information (position information etc.) of the service user 90 which changes from moment to moment in real time, discovers an appropriate device 2B, and then instructs information based on the cooperation logic (abstract) 131B. Are converted into instruction information that conforms to the specific interface of the device 2B, and then the cooperation service such as navigation is executed.

このように、本実施形態に係る分散リソース活用システム100Bのデバイス連携サーバ1Bによれば、連携ロジックを、個別のインタフェース等に依存しないように抽象的に記述する。そして、デバイス連携サーバ1Bは、その抽象的に記述された連携ロジックを、デバイス2Bそれぞれに適合するインタフェースに変換して、連携したサービスを提供することができる。   As described above, according to the device cooperation server 1B of the distributed resource utilization system 100B according to the present embodiment, the cooperation logic is described abstractly so as not to depend on an individual interface or the like. Then, the device cooperation server 1B can convert the cooperation logic described abstractly into an interface adapted to each of the devices 2B, and can provide a coordinated service.

<第3実施形態>
第3実施形態は、デバイス連携サーバ1が、抽象的に記述された連携ロジックを備え、サービス実行時には、デバイス連携サーバ1から抽象的な指示をゲートウェイ(GW)に送り、ゲートウェイがその抽象的な指示を各デバイスに対応した具体的なインタフェースに変換することにより、各デバイスの処理を実行させることを特徴とする。
Third Embodiment
In the third embodiment, the device cooperation server 1 is provided with cooperation logic described abstractly, and at the time of service execution, the device cooperation server 1 sends an abstract instruction to the gateway (GW), and the gateway It is characterized in that the processing of each device is executed by converting the instruction into a specific interface corresponding to each device.

図8は、本発明の第3実施形態に係る分散リソース活用システム100Cの概要を説明するための図である。なお、図8においては、図1に示した分散リソース活用システム100のうち、デバイスレイヤの各リソース(センサやアクチュエータ等のデバイス)、デバイスレイヤのゲートウェイ(GW)30、デバイス連携サーバ1のみを抽出して図示している。   FIG. 8 is a view for explaining an outline of a distributed resource utilization system 100C according to the third embodiment of the present invention. In FIG. 8, only the resources (devices such as sensors and actuators) of the device layer, the gateway (GW) 30 of the device layer, and the device cooperation server 1 are extracted from the distributed resource utilization system 100 shown in FIG. 1. Are shown.

図8に示すように、分散リソース活用システム100Cにおけるデバイス2Cは、図5で示したデバイス2Bと同様に、標準化されておらず、各デバイス2Cのおいて、インタフェース(IF)が異なっていてもよいことを前提としている。各デバイス2C(2C,2C,2C)は、例えば、BLE、Echonet、REST等の各通信プロトコルに準拠したインタフェースによりアクセスが可能であるとする。
また、このデバイス2Cは、そのデバイス2Cそれぞれを収容するデバイスレイヤに属するゲートウェイ30と接続され、このゲートウェイ30を介して、デバイス連携サーバ1Cとの間で情報の送受信を行う。
As shown in FIG. 8, the device 2C in the distributed resource utilization system 100C is not standardized in the same manner as the device 2B shown in FIG. 5, and the interface (IF) is different in each device 2C. It assumes good things. Each device 2C (2C 1 , 2C 2 , 2C 3 ) can be accessed by an interface conforming to each communication protocol such as BLE, Echonet, REST, for example.
The device 2C is connected to a gateway 30 belonging to a device layer that accommodates each of the devices 2C, and transmits and receives information to and from the device cooperation server 1C via the gateway 30.

図5で示した第2実施形態に係る分散リソース活用システム100Bとの違いは、第2実施形態においては、デバイス連携サーバ1Bが、デバイス処理情報収集部114およびマッピング処理部116を備え、各デバイス2Bに適合するインタフェースに変換することにより、サービス実行部115が、直接各デバイス2Bに変換した指示情報を送信していた。
一方、図8で示す第3実施形態に係る分散リソース活用システム100Cでは、デバイス連携サーバ1Cのサービス実行部115C(後記する図9参照)が、サービスを実行するための抽象的な指示(抽象的指示情報)をゲートウェイ30に送信する。そして、ゲートウェイ30が、デバイス処理情報収集部301およびマッピング処理部302(図9参照)を備え、各デバイス2Cに適合するインタフェースに指示情報を変換し、各デバイス2Cに送信することにより、連携サービスを実現する。
なお、第2実施形態と同様に、第3実施形態に係る分散リソース活用システム100Cの抽象的な連携ロジックは、セマンティックWebのOWL−Sが採用されたものとして説明する。
The difference with the distributed resource utilization system 100B according to the second embodiment shown in FIG. 5 is that, in the second embodiment, the device cooperation server 1B comprises a device processing information collection unit 114 and a mapping processing unit 116, and each device By converting into an interface compatible with 2B, the service execution unit 115 directly transmits the converted instruction information to each device 2B.
On the other hand, in the distributed resource utilization system 100C according to the third embodiment shown in FIG. 8, an abstract instruction (abstractive) for executing the service by the service execution unit 115C (see FIG. 9 described later) of the device cooperation server 1C. The instruction information is transmitted to the gateway 30. Then, the gateway 30 includes the device processing information collecting unit 301 and the mapping processing unit 302 (see FIG. 9), converts the instruction information into an interface compatible with each device 2C, and transmits it to each device 2C To achieve.
Similar to the second embodiment, the abstract collaboration logic of the distributed resource utilization system 100C according to the third embodiment will be described assuming that OWL-S of the Semantic Web is adopted.

図9は、本発明の第3実施形態に係るデバイス連携サーバ1Cおよびゲートウェイ(GW)30の構成例を示す機能ブロック図である。
デバイス連携サーバ1Cは、サービス利用者90(図2参照)が備える端末9からのサービス要求を受け付け、そのサービスを実行するための最適なデバイス2Cを発見するとともに、抽象的な連携ロジック(連携ロジック(抽象的)131C)を用いて、抽象的指示をゲートウェイ30に送信する。ゲートウェイ30は、デバイス連携サーバ1Cから受け取った抽象的指示を、各デバイス2Cに適合する具体的インタフェースに変換して、そのデバイス2Cに送信し、連携サービスを実行させる。
FIG. 9 is a functional block diagram showing a configuration example of the device cooperation server 1C and the gateway (GW) 30 according to the third embodiment of the present invention.
The device cooperation server 1C receives a service request from the terminal 9 of the service user 90 (see FIG. 2), discovers an optimum device 2C for executing the service, and abstracts cooperation logic (cooperation logic The abstract instruction is sent to the gateway 30 using (abstract) 131 C). The gateway 30 converts the abstract instruction received from the device cooperation server 1C into a specific interface suitable for each device 2C, transmits it to the device 2C, and executes the cooperation service.

≪デバイス連携サーバ1C≫
デバイス連携サーバ1Cは、図9に示すように、制御部11と、入出力部12と、記憶部13とを含んで構成される。図6に示したデバイス連携サーバ1Bとの違いは、制御部11に、デバイス処理情報収集部114およびマッピング処理部116を備えないことと、図6のサービス実行部115が、サービス実行部115Cとなったことである。
なお、図6に示したデバイス連携サーバ1Bと、同じ機能を備える構成は、同一の名称と符合を付し、詳細な説明を省略する。
«Device linkage server 1C»
The device cooperation server 1C is configured to include a control unit 11, an input / output unit 12, and a storage unit 13, as shown in FIG. The difference from the device cooperation server 1B shown in FIG. 6 is that the control unit 11 does not include the device processing information collection unit 114 and the mapping processing unit 116, and the service execution unit 115 in FIG. It is not.
The configuration having the same function as that of the device cooperation server 1B shown in FIG. 6 has the same name and reference, and the detailed description is omitted.

記憶部13に記憶される連携ロジック(抽象的)131Cは、連携ロジックが標準インタフェース(IF)ではなく、図6の連携ロジック131Bと同様に、抽象的な連携ロジックが格納される。
また、記憶部13のデバイス情報DB132には、デバイスレイヤに存在する各デバイス2Cの公開されているメタデータが格納される。このデバイス2Cのメタデータには、少なくとも、デバイスの識別情報、デバイスの種別(そのデバイスの機能等を示す情報)、デバイスの位置情報が格納される。
なお、抽象的な連携ロジック131Cとして、OWL−Sを採用した場合には、このデバイス情報DB132には、OWL−Sで規定されるプロファイル(Profile)の情報(例えば、図8に示す、機能、位置、サービスの利用に関する値段、デバイスの所有者(具体的サービスの提供者)等)が格納される。
The cooperation logic (abstractive) 131C stored in the storage unit 13 stores not only the cooperation logic as a standard interface (IF) but also abstract cooperation logic like the cooperation logic 131B of FIG.
The device information DB 132 of the storage unit 13 stores public metadata of each device 2C existing in the device layer. The metadata of the device 2C stores at least identification information of the device, a type of the device (information indicating a function of the device, and the like), and position information of the device.
When OWL-S is adopted as the abstract cooperation logic 131 C, the device information DB 132 includes information of a profile (Profile) defined by OWL-S (for example, a function shown in FIG. 8, The location, the price for using the service, the owner of the device (specific service provider), etc. are stored.

サービス実行部115Cは、記憶部13に記憶された連携ロジック(抽象的)131Cに基づき、連携サービスを実行する。その際、サービス実行部115Cは、時々刻々変化するサービス利用者90の情報(位置情報等)をリアルタイムに取得し、デバイス選択部113の処理により適切なデバイス2Cを随時選択しながら、適切なサービスが実行できるような指示情報(抽象的指示情報)を、デバイス選択部113が選択したデバイス2Cを収容するゲートウェイ30に送信する。なお、サービス実行部115Cは、デバイス2Cを収容するゲートウェイ30に対し、抽象的指示情報を標準的手段(例えば、REST等)により送信する。   The service execution unit 115C executes the cooperation service based on the cooperation logic (abstractive) 131C stored in the storage unit 13. At this time, the service execution unit 115C acquires information (position information etc.) of the service user 90 which changes from moment to moment in real time, and selects the appropriate device 2C by the processing of the device selection unit 113 as needed. The instruction information (abstract instruction information) that can be executed is transmitted to the gateway 30 accommodating the device 2C selected by the device selection unit 113. The service execution unit 115C transmits abstract instruction information to the gateway 30 accommodating the device 2C by a standard means (for example, REST or the like).

≪ゲートウェイ≫
ゲートウェイ(GW)30は、不図示の制御部と、入出力部と、記憶部とを含んで構成され、通常のゲートウェイの機能である異なるネットワーク同士を接続するためのプロトコル変換等の機能に加え、制御部の中に、図9に示すような、デバイス処理情報収集部301、マッピング処理部302および指示出力部303を備えることを特徴とする。
«Gateway»
The gateway (GW) 30 includes a control unit (not shown), an input / output unit, and a storage unit, and in addition to a function such as protocol conversion for connecting different networks which is a function of a normal gateway. The control unit is characterized by including a device processing information collection unit 301, a mapping processing unit 302, and an instruction output unit 303 as shown in FIG.

デバイス処理情報収集部301は、そのゲートウェイ(GW)30に接続されるデバイス2Cから、当該デバイス2Cの操作手順等を示すデバイス処理情報を取得する。このデバイス処理情報は、例えば、各デバイス2Cの公開メタデータがOWL−Sで規定されている場合には、プロセスモデル(Process Model)およびグランディング(Grounding)の情報と、そのデバイス2Cの具体的インタフェースの情報である。
デバイス処理情報収集部301は、自身と接続するデバイス2Cに関するデバイス処理情報を、予め収集し記憶部に記憶しておくようにしてもよいし、デバイス連携サーバ1Cから、特定のデバイス2Cに関する指示情報(抽象的指示情報)を受信した際に、その特定のデバイス2Cから、デバイス処理情報を取得するようにしてもよい。
The device processing information collection unit 301 acquires, from the device 2C connected to the gateway (GW) 30, device processing information indicating an operation procedure or the like of the device 2C. This device processing information is, for example, when the public metadata of each device 2C is defined by OWL-S, information of a process model (Process Model) and grounding (Grounding), and the concrete of the device 2C. It is interface information.
The device processing information collecting unit 301 may collect device processing information on the device 2C connected with itself in advance and store it in the storage unit, or the instruction information on a specific device 2C from the device cooperation server 1C. When (abstract instruction information) is received, device processing information may be acquired from the specific device 2C.

マッピング処理部302は、デバイス連携サーバ1Cから、サービスに関する処理の指示情報(抽象的指示情報)を受信した際に、その処理を実行するデバイス2Cのデバイス処理情報を用いて、そのデバイス2Cに適合する具体的なインタフェースに、その指示情報をマッピングすることにより変換する。
マッピング処理部302は、例えば、OWL−Sで規定されるプロセスモデルで示される具体的なプロセス(デバイスの処理)を、グランディングの情報を用いてそのデバイス2Cに適合するインタフェースに変換する。図8に示すように、マッピング処理部302は、デバイス2Cの具体的インタフェース(IF)として設定されている、BLEや、Echonet、REST等に変換する。
When the mapping processing unit 302 receives instruction information (abstract instruction information) for processing related to a service from the device cooperation server 1C, the mapping processing unit 302 conforms to the device 2C using device processing information of the device 2C that executes the processing. To the specific interface to be converted by mapping the instruction information.
The mapping processing unit 302 converts, for example, a specific process (processing of a device) indicated by a process model defined by OWL-S into an interface compatible with the device 2C using the information of grounding. As shown in FIG. 8, the mapping processing unit 302 converts the data into BLE, Echonet, REST, or the like set as a specific interface (IF) of the device 2C.

指示出力部303は、マッピング処理部302により、そのデバイス2Cの具体的インタフェースに適合するように変換された指示情報を、当該デバイス2Cに出力する。これにより、各デバイス2Cを動作させ、連携サービスを実現させる。   The instruction output unit 303 outputs the instruction information converted by the mapping processing unit 302 so as to conform to the specific interface of the device 2C to the device 2C. As a result, each device 2C is operated to realize the cooperation service.

<処理の流れ>
次に、本発明の第3実施形態に係る分散リソース活用システム100Cの処理の流れについて説明する。図10は、本発明の第3実施形態に係る分散リソース活用システム100C(デバイス連携サーバ1Cおよびゲートウェイ30)の処理の流れを示すシーケンス図である。
なお、以下においては、分散リソース活用システム100Cは、セマンティックWebのOWL−Sに規定されたメタデータや記述を採用している例として説明する。よって、デバイス連携サーバ1Cの記憶部13内のデバイス情報DB132には、OWL−Sで規定されるプロファイル(Profile)の情報として、そのデバイスの識別情報、デバイスの種別(そのデバイスの機能等を示す情報)、デバイスの位置情報等が格納される。また、ゲートウェイ30の記憶部には、各デバイス2Cのプロセスモデル(Process Model)およびグランディング(Grounding)に関する情報と、各デバイス2Cの具体的インタフェースの情報が格納される。
<Flow of processing>
Next, the flow of processing of the distributed resource utilization system 100C according to the third embodiment of the present invention will be described. FIG. 10 is a sequence diagram showing a process flow of the distributed resource utilization system 100C (the device cooperation server 1C and the gateway 30) according to the third embodiment of the present invention.
Note that, in the following, the distributed resource utilization system 100C will be described as an example in which metadata and a description defined in OWL-S of the Semantic Web are adopted. Therefore, the device information DB 132 in the storage unit 13 of the device cooperation server 1C indicates the identification information of the device, the type of the device (the function of the device, etc.) as the information of the profile defined by OWL-S. Information), location information of the device, etc. are stored. Also, the storage unit of the gateway 30 stores information on the process model (Process Model) and grounding of each device 2C, and information on the specific interface of each device 2C.

まず、デバイス連携サーバ1Cのサービス要求受信部111は、サービス利用者90(図2参照)が備える端末9から、サービス要求メッセージを受信する(ステップS30)。このサービス要求メッセージには、少なくとも要求するサービスの識別情報(サービス識別情報)、ユーザの識別情報、端末9の位置情報が含まれる。
なお、ユーザの識別情報としては、そのユーザに固有なIDに加えて、監視カメラ等からの映像を画像解析(顔認識)し、人物を特定するための情報(顔写真のデータや特徴量等)が含まれていてもよい。
First, the service request receiving unit 111 of the device cooperation server 1C receives a service request message from the terminal 9 of the service user 90 (see FIG. 2) (step S30). The service request message contains at least identification information of the requested service (service identification information), identification information of the user, and position information of the terminal 9.
In addition to the ID unique to the user as the identification information of the user, image analysis (face recognition) of the video from the surveillance camera etc., information for specifying a person (data of a face picture, feature amount, etc. May be included.

続いて、メタデータ取得部112は、各デバイス2Cのメタデータ(デバイスの機能や位置情報等)を取得し、記憶部13内のデバイス情報DB132に格納する(ステップS31)。
ここで、メタデータ取得部112は、サービス要求受信部111が受信したサービス要求メッセージに含まれる端末9の位置情報に基づき、端末9が位置するエリアに属するデバイス2Cからメタデータを取得するようにしてもよい。
Subsequently, the metadata acquisition unit 112 acquires metadata (device function, position information, and the like) of each device 2C, and stores the acquired metadata in the device information DB 132 in the storage unit 13 (step S31).
Here, based on the position information of the terminal 9 included in the service request message received by the service request reception unit 111, the metadata acquisition unit 112 acquires metadata from the device 2C belonging to the area in which the terminal 9 is located. May be

次に、デバイス連携サーバ1Cのデバイス選択部113は、サービス利用者が要求するサービスを実現するためのデバイス(デバイス2C)を選択する(ステップS32)。
具体的には、デバイス選択部113は、サービス要求受信部111が受信したサービス要求メッセージに含まれるサービス識別情報を用いて、記憶部13内の連携ロジック(抽象的)131Cを参照し、そのサービスの提供に必要なデバイスの機能を特定する。そして、デバイス選択部113は、その特定した機能を備えるデバイス(デバイス2C)であり、端末9の位置情報で示される位置の近傍に位置するデバイス2Cを、デバイス情報DB132を参照して選択する。
ここで、デバイス選択部113は、例えば、デバイス情報DB132に記憶された、OWL−Sで規定されるプロファイル(Profile)の情報(機能や位置情報)に基づき、デバイス2Cを選択する。
なお、デバイス選択部113は、機能および位置に加えて、メタデータに含まれる他の条件(値段、サービス提供者等)も加えて、デバイス2Cを選択してもよい。
Next, the device selection unit 113 of the device cooperation server 1C selects a device (device 2C) for realizing the service requested by the service user (step S32).
Specifically, the device selection unit 113 refers to the cooperation logic (abstractive) 131C in the storage unit 13 using the service identification information included in the service request message received by the service request reception unit 111, and the service thereof Identify the device features required to provide Then, the device selection unit 113 is a device (device 2C) having the specified function, and selects the device 2C located near the position indicated by the position information of the terminal 9 with reference to the device information DB 132.
Here, the device selection unit 113 selects the device 2C based on, for example, information (a function or position information) of a profile defined by OWL-S, which is stored in the device information DB 132.
In addition to the function and the position, the device selection unit 113 may select the device 2C by adding other conditions (price, service provider, etc.) included in the metadata.

続いて、デバイス連携サーバ1Cのサービス実行部115Cは、記憶部13に記憶された連携ロジック(抽象的)131Cに基づき、サービスを実現するための処理内容を示す指示情報(抽象的指示情報)を、デバイス選択部113が選択した特定のデバイス2Cを収容するゲートウェイ30へ送信する(ステップS33)。   Subsequently, the service execution unit 115C of the device cooperation server 1C, based on the cooperation logic (abstractive) 131C stored in the storage unit 13, the instruction information (abstract instruction information) indicating the processing content for realizing the service. And transmits the selected device 2C selected by the device selection unit 113 to the gateway 30 (step S33).

続いて、デバイス連携サーバ1Cから抽象的指示情報を受信したゲートウェイ30のデバイス処理情報収集部301は、デバイス連携サーバ1Cのデバイス選択部113が選択したデバイス2Cに対し、そのデバイスの操作手順等を示すデバイス処理情報を要求し、そのデバイス2Cから収集する(ステップS34)。
デバイス処理情報収集部301は、例えば、各デバイス2Cの公開メタデータがOWL−Sで規定されている場合には、デバイス処理情報として、プロセスモデル(Process Model)およびグランディング(Grounding)の情報と、そのデバイス2Cの具体的インタフェースの情報とを、デバイス処理情報として取得する。
Subsequently, the device processing information collecting unit 301 of the gateway 30, which has received the abstract instruction information from the device cooperation server 1C, operates the operation procedure of the device for the device 2C selected by the device selection unit 113 of the device cooperation server 1C. The device processing information shown is requested and collected from the device 2C (step S34).
For example, when the public metadata of each device 2C is defined by OWL-S, the device processing information collection unit 301 sets information of a process model (Process Model) and information on grounding as device processing information. The information on the specific interface of the device 2C is acquired as device processing information.

次に、ゲートウェイ30のマッピング処理部302は、抽象的指示情報を、取得したデバイス処理情報を用いて、そのデバイス2Cに適合する具体的インタフェースにマッピングすることにより変換する(ステップS35)。
マッピング処理部302は、例えば、OWL−Sで規定されるプロセスモデルで示される具体的なプロセス(デバイスの処理)を、グランディングの情報を用いて、そのデバイス2Cに適合する具体的インタフェース(IF)、例えば、BLEやEchonet、REST等に変換する。
Next, the mapping processing unit 302 of the gateway 30 converts the abstract instruction information by mapping it on the specific interface that matches the device 2C using the acquired device processing information (step S35).
The mapping processing unit 302 uses, for example, a specific process (processing of a device) indicated by a process model defined by OWL-S, using information on grounding, and a specific interface (IF ), For example, BLE, Echonet, REST, etc.

そして、ゲートウェイ30の指示出力部303は、マッピング処理部302により、そのデバイス2Cのインタフェースに適合するように変換された指示情報を、当該デバイス2Cに出力する(ステップS36)。これにより、各デバイス2Cを動作させ、連携サービスを実現させる。   Then, the instruction output unit 303 of the gateway 30 outputs the instruction information converted by the mapping processing unit 302 so as to conform to the interface of the device 2C to the device 2C (Step S36). As a result, each device 2C is operated to realize the cooperation service.

このように、本実施形態に係る分散リソース活用システム100Cによれば、デバイス連携サーバ1Cに、個別のインタフェース等に依存しない抽象的な連携ロジック131Cを記述しておき、その抽象的な連携ロジック131Cで示される抽象的指示情報を、ゲートウェイ30に送信する。よって、デバイス連携サーバ1Cにおいて、各デバイス2Cに対応したIFアクセス手段への変換機能(デバイス処理情報収集部およびマッピング処理部)を持つ必要をなくすことができる。これにより、デバイス連携サーバ1Cの負荷を低減することができる。   As described above, according to the distributed resource utilization system 100C according to the present embodiment, the abstract cooperation logic 131C that does not depend on an individual interface or the like is described in the device cooperation server 1C, and the abstract cooperation logic 131C is described. The abstract instruction information indicated by is transmitted to the gateway 30. Therefore, in the device cooperation server 1C, it is possible to eliminate the need to have a conversion function (a device processing information collecting unit and a mapping processing unit) to IF access means corresponding to each device 2C. Thereby, the load on the device cooperation server 1C can be reduced.

(変形例)
本発明は、上記した実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能である。
例えば、本発明の第2実施形態と第3実施形態の両方の構成を備えた手法としてもよい。
具体的には、SOAPやREST等の主要な通信プロトコルで制御できるデバイスは、第2実施形態のデバイス連携サーバ1Bのように、デバイス連携サーバが直接そのデバイスに適合したインタフェースに変換して制御する。一方、あまり知られていない通信プロトコルで制御されるデバイスは、第3実施形態のデバイス連携サーバ1Cのように、デバイス連携サーバ1から抽象的指示情報をゲートウェイ30に送信し、ゲートウェイ30がそのデバイスに適合したインタフェースに変換して指示をする。
これにより、デバイス連携サーバ1が、すべてのデバイスに適合する変換手段を備える必要がなくなる。また、デバイス連携サーバ1が主要な通信プロトコルで制御できるデバイスの処理を担当するため、ゲートウェイ30の変換機能の実装コストを低減することができる。
(Modification)
The present invention is not limited to the above-described embodiment, and modifications can be made without departing from the spirit of the present invention.
For example, it is good also as a method provided with the composition of both the 2nd embodiment and the 3rd embodiment of the present invention.
Specifically, as in the device cooperation server 1B of the second embodiment, a device cooperation server directly converts and controls a device which can be controlled by a main communication protocol such as SOAP or REST into an interface adapted to the device and controls the device cooperation server 1B. . On the other hand, a device controlled by a less known communication protocol transmits abstract instruction information from the device cooperation server 1 to the gateway 30, as in the device cooperation server 1C of the third embodiment, and the gateway 30 controls the device Convert to a suitable interface and indicate.
This eliminates the need for the device cooperation server 1 to be provided with conversion means adapted to all devices. In addition, since the device cooperation server 1 takes charge of processing of devices that can be controlled by the main communication protocol, the implementation cost of the conversion function of the gateway 30 can be reduced.

1,1A,1B,1C デバイス連携サーバ
2,2B,2C デバイス
2A 標準デバイス
9 端末
11 制御部
12 入出力部
13 記憶部
30 ゲートウェイ(GW)
90 サービス利用者
100,100A,100B,100C 分散リソース活用システム
111 サービス要求受信部
112 メタデータ取得部
113 デバイス選択部
114,301 デバイス処理情報収集部
115,115C サービス実行部
116,302 マッピング処理部
131A 連携ロジック(標準IF)
131B,131C 連携ロジック(抽象的)
132 デバイス情報DB
200 公開メタデータ
303 指示出力部
1, 1A, 1B, 1C device cooperation server 2, 2B, 2C device 2A standard device 9 terminal 11 control unit 12 input / output unit 13 storage unit 30 gateway (GW)
90 Service Users 100, 100A, 100B, 100C Distributed Resource Utilization System 111 Service Request Reception Unit 112 Metadata Acquisition Unit 113 Device Selection Unit 114, 301 Device Processing Information Collection Unit 115, 115C Service Execution Unit 116, 302 Mapping Processing Unit 131A Cooperation logic (standard IF)
131B, 131C collaboration logic (abstract)
132 Device Information DB
200 Public metadata 303 Instruction output unit

Claims (4)

ネットワークに接続された複数のデバイスの中から、サービスの提供に用いる前記デバイスを選択して前記サービスを実行させる分散リソース活用システムのデバイス連携サーバであって、
前記デバイスは、標準化されたインタフェースを備えるデバイスである標準デバイスであり、
前記デバイスの複数を連携して実行させて前記サービスを提供するため、前記標準化されたインタフェースの定義で記述された連携ロジックを記憶する記憶部と、
前記サービスを要求する端末から、要求するサービスの識別情報を示すサービス識別情報、および、前記端末の位置情報を含むサービス要求メッセージを受信するサービス要求受信部と、
前記複数のデバイスそれぞれが前記サービスの提供に際して実行する機能および前記複数のデバイスそれぞれの位置情報を含むメタデータを取得し、前記記憶部に格納するメタデータ取得部と、
前記要求するサービスで用いられる機能および前記端末の位置情報を用いて、前記記憶部に記憶された前記デバイスそれぞれの機能および位置情報を含む前記メタデータを参照し、前記サービスを実行させるデバイスを選択するデバイス選択部と、
前記標準化されたインタフェースの定義で記述され、前記デバイスにおいて前記サービスを実行させるための具体的な処理内容を示すデバイス処理情報を、前記選択したデバイスから収集するデバイス処理情報収集部と、
前記連携ロジックに基づき、前記選択したデバイスに、収集した前記具体的な処理内容による指示を行うことにより、連携したサービスを実行するサービス実行部と、
を備えることを特徴とするデバイス連携サーバ。
A device cooperation server of a distributed resource utilization system, which selects the device to be used for providing a service from a plurality of devices connected to a network and executes the service,
The device is a standard device which is a device with a standardized interface,
A storage unit that stores cooperation logic described in the definition of the standardized interface in order to execute a plurality of the devices in cooperation and execute the services;
A service request receiving unit that receives service identification information indicating identification information of the requested service from the terminal requesting the service, and a service request message including position information of the terminal;
A metadata acquisition unit that acquires metadata including a function executed by each of the plurality of devices upon provision of the service and position information of each of the plurality of devices, and stores the acquired metadata in the storage unit;
Refers to the metadata including function and position information of each of the devices stored in the storage unit using the function used in the requested service and the position information of the terminal, and selects a device to execute the service Device selection unit, and
A device processing information collection unit which collects device processing information, which is described in the standardized interface definition and indicates specific processing content for causing the device to execute the service, from the selected device;
A service execution unit that executes a coordinated service by giving an instruction based on the collected specific processing content to the selected device based on the cooperation logic;
A device cooperation server characterized by comprising:
ネットワークに接続された複数のデバイスの中から、サービスの提供に用いる前記デバイスを選択して前記サービスを実行させる分散リソース活用システムのデバイス連携サーバであって、
前記複数のデバイスは、インタフェースが標準化されておらず、具体的インタフェースの異なるデバイスで構成されており、
前記デバイスの複数を連携して実行させて前記サービスを提供するため、前記具体的インタフェースの定義に依存しない抽象的な指示情報として記述された連携ロジックを記憶する記憶部と、
前記サービスを要求する端末から、要求するサービスの識別情報を示すサービス識別情報、および、前記端末の位置情報を含むサービス要求メッセージを受信するサービス要求受信部と、
前記複数のデバイスそれぞれが前記サービスの提供に際して実行する機能および前記複数のデバイスそれぞれの位置情報を含むメタデータを取得し、前記記憶部に格納するメタデータ取得部と、
前記要求するサービスで用いられる機能および前記端末の位置情報を用いて、前記記憶部に記憶された前記デバイスそれぞれの機能および位置情報を含む前記メタデータを参照し、前記サービスを実行させるデバイスを選択するデバイス選択部と、
前記抽象的な指示情報の定義に則って記述され、前記デバイスにおいて前記サービスを実行させるための処理手順と、当該処理手順を前記具体的インタフェースに適合させるマッピング情報と、当該具体的インタフェースの情報とを示すデバイス処理情報を、前記選択したデバイスから収集するデバイス処理情報収集部と、
前記選択したデバイスにおいて前記抽象的な指示情報で記述される前記処理手順を、前記マッピング情報を用いて、前記具体的インタフェースに適合した指示情報に変換するマッピング処理部と、
前記連携ロジックに基づき、前記選択したデバイスに、前記マッピング処理部が変換した前記具体的インタフェースに適合した指示情報を送信することにより、連携したサービスを実行するサービス実行部と、
を備えることを特徴とするデバイス連携サーバ。
A device cooperation server of a distributed resource utilization system, which selects the device to be used for providing a service from a plurality of devices connected to a network and executes the service,
The plurality of devices are not standardized in interface, and are configured by devices different in specific interface,
A storage unit that stores cooperation logic described as abstract instruction information that does not depend on the definition of the specific interface, in order to provide the service by executing a plurality of the devices in cooperation;
A service request receiving unit that receives service identification information indicating identification information of the requested service from the terminal requesting the service, and a service request message including position information of the terminal;
A metadata acquisition unit that acquires metadata including a function executed by each of the plurality of devices upon provision of the service and position information of each of the plurality of devices, and stores the acquired metadata in the storage unit;
Refers to the metadata including function and position information of each of the devices stored in the storage unit using the function used in the requested service and the position information of the terminal, and selects a device to execute the service Device selection unit, and
A processing procedure for executing the service in the device, mapping information for adapting the processing procedure to the specific interface, and information on the specific interface, which are described according to the definition of the abstract instruction information A device processing information collection unit for collecting device processing information indicating the selected device from the selected device;
A mapping processing unit that converts the processing procedure described by the abstract instruction information in the selected device into instruction information conforming to the specific interface using the mapping information;
A service execution unit that executes a coordinated service by transmitting instruction information adapted to the specific interface converted by the mapping processing unit to the selected device based on the cooperation logic;
A device cooperation server characterized by comprising:
コンピュータを、請求項1または請求項2に記載のデバイス連携サーバとして機能させるためのデバイス連携プログラム。   The device cooperation program for functioning a computer as a device cooperation server of Claim 1 or Claim 2. 複数のデバイスに接続されるゲートウェイと、当該複数のデバイスの中から、サービスの提供に用いる前記デバイスを選択して前記サービスを実行させるデバイス連携サーバとを備える分散リソース活用システムであって、
前記複数のデバイスは、インタフェースが標準化されておらず、具体的インタフェースの異なるデバイスで構成されており、
前記デバイス連携サーバは、
前記デバイスの複数を連携して実行させて前記サービスを提供するため、前記具体的インタフェースの定義に依存しない抽象的な指示情報として記述された連携ロジックを記憶する記憶部と、
前記サービスを要求する端末から、要求するサービスの識別情報を示すサービス識別情報、および、前記端末の位置情報を含むサービス要求メッセージを受信するサービス要求受信部と、
前記複数のデバイスそれぞれが前記サービスの提供に際して実行する機能および前記複数のデバイスそれぞれの位置情報を含むメタデータを取得し、前記記憶部に格納するメタデータ取得部と、
前記要求するサービスで用いられる前記機能および前記端末の位置情報を用いて、前記記憶部に記憶された前記デバイスそれぞれの機能および位置情報を含む前記メタデータを参照し、前記サービスを実行させるデバイスを選択するデバイス選択部と、
前記連携ロジックに基づき、前記選択したデバイスを収容する前記ゲートウェイに、前記抽象的な指示情報を送信するサービス実行部と、を備え、
前記ゲートウェイは、
前記抽象的な指示情報の定義に則って記述され、前記デバイスにおいて前記サービスを実行させるための処理手順と、当該処理手順を前記具体的インタフェースに適合させるマッピング情報と、当該具体的インタフェースの情報とを示すデバイス処理情報を、前記選択したデバイスから収集するデバイス処理情報収集部と、
受信した前記抽象的な指示情報で記述される前記処理手順を、前記マッピング情報を用いて、前記選択したデバイスの前記具体的インタフェースに適合した指示情報に変換するマッピング処理部と、
前記選択したデバイスに、前記マッピング処理部が変換した前記具体的インタフェースに適合した指示情報を送信する指示出力部と、
を備えることを特徴とする分散リソース活用システム。
A distributed resource utilization system comprising: a gateway connected to a plurality of devices; and a device cooperation server which selects the device to be used for providing a service from the plurality of devices and executes the service.
The plurality of devices are not standardized in interface, and are configured by devices different in specific interface,
The device cooperation server is
A storage unit that stores cooperation logic described as abstract instruction information that does not depend on the definition of the specific interface, in order to provide the service by executing a plurality of the devices in cooperation;
A service request receiving unit that receives service identification information indicating identification information of the requested service from the terminal requesting the service, and a service request message including position information of the terminal;
A metadata acquisition unit that acquires metadata including a function executed by each of the plurality of devices upon provision of the service and position information of each of the plurality of devices, and stores the acquired metadata in the storage unit;
A device that executes the service by referring to the metadata including function and location information of each of the devices stored in the storage unit using the function used in the requested service and the location information of the terminal. A device selection unit to select
A service execution unit that transmits the abstract instruction information to the gateway accommodating the selected device based on the cooperation logic;
The gateway is
A processing procedure for executing the service in the device, mapping information for adapting the processing procedure to the specific interface, and information on the specific interface, which are described according to the definition of the abstract instruction information A device processing information collection unit for collecting device processing information indicating the selected device from the selected device;
A mapping processing unit that converts the processing procedure described by the received abstract instruction information into instruction information adapted to the specific interface of the selected device using the mapping information;
An instruction output unit configured to transmit, to the selected device, instruction information adapted to the specific interface converted by the mapping processing unit;
A distributed resource utilization system comprising:
JP2018003949A 2018-01-15 2018-01-15 Device cooperation server and device cooperation program and decentralized resource utilization system Pending JP2019125068A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018003949A JP2019125068A (en) 2018-01-15 2018-01-15 Device cooperation server and device cooperation program and decentralized resource utilization system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018003949A JP2019125068A (en) 2018-01-15 2018-01-15 Device cooperation server and device cooperation program and decentralized resource utilization system

Publications (1)

Publication Number Publication Date
JP2019125068A true JP2019125068A (en) 2019-07-25

Family

ID=67398776

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018003949A Pending JP2019125068A (en) 2018-01-15 2018-01-15 Device cooperation server and device cooperation program and decentralized resource utilization system

Country Status (1)

Country Link
JP (1) JP2019125068A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021095241A1 (en) * 2019-11-15 2021-05-20 三菱電機株式会社 Edge device linking system, edge device linking method, and program
CN113518218A (en) * 2021-05-25 2021-10-19 上海商汤智能科技有限公司 Camera equipment serial number determining method and device, electronic equipment and storage medium
WO2021245764A1 (en) * 2020-06-01 2021-12-09 株式会社アイ・エル・シー Device control method, device control program, and device control system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021095241A1 (en) * 2019-11-15 2021-05-20 三菱電機株式会社 Edge device linking system, edge device linking method, and program
JPWO2021095241A1 (en) * 2019-11-15 2021-05-20
JP7246512B2 (en) 2019-11-15 2023-03-27 三菱電機株式会社 EDGE DEVICE COOPERATION SYSTEM, EDGE DEVICE COOPERATION METHOD AND PROGRAM
US11811624B2 (en) 2019-11-15 2023-11-07 Mitsubishi Electric Corporation Edge device linking system, edge device linking method, and recording medium
WO2021245764A1 (en) * 2020-06-01 2021-12-09 株式会社アイ・エル・シー Device control method, device control program, and device control system
JP7475446B2 (en) 2020-06-01 2024-04-26 株式会社アイ・エル・シー DEVICE CONTROL METHOD, DEVICE CONTROL PROGRAM, AND DEVICE CONTROL SYSTEM
CN113518218A (en) * 2021-05-25 2021-10-19 上海商汤智能科技有限公司 Camera equipment serial number determining method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
CN110569288A (en) Data analysis method, device, equipment and storage medium
KR101509269B1 (en) Middleware device for ubiquitous system using distributed computing scheme
JP2019125068A (en) Device cooperation server and device cooperation program and decentralized resource utilization system
EP2139214A1 (en) System and method to provide services based on network
US20130304877A1 (en) System and method for dynamic configuration of isn store-based overlay network
KR20040028915A (en) Apparatus and method for acquiring positional informations of information terminal user
JP2017167747A (en) Device and method for controlling data flow
US8456671B2 (en) Communication system, information storage device, management device, and terminal device
KR101723172B1 (en) IoT(Internet of Thing) Service Offering Method
KR100947114B1 (en) Method for collecting quality data of web service using dummy message
CN114071652A (en) Method for establishing binding relationship and related equipment
CN112084245A (en) Data management method, device and equipment based on micro-service architecture and storage medium
US20140237096A1 (en) System for providing distributed device resource-object-connection service based on service delivery platform
JP6376159B2 (en) Data flow control device and data flow control method
Brokhman et al. A framework for elderly support in smart cities
JP7447339B2 (en) Communication methods and systems in service management and orchestration
KR20110106764A (en) Ubiquitous remote resource control method using distributed computing scheme and ubiquitous system
CN115086418B (en) Data transmission method, data transmission device and electronic equipment
JP2006127220A (en) Home server system and method for distributing contents
KR102076289B1 (en) System and method for providing images of visitor in iot enviornment
JP2005251068A (en) Distributed function linking system, distributed function management device, distributed function linking method, and program
KR100748089B1 (en) Method for providing individual information based on user data management open api
JP2005266882A (en) Communication system, method, and program
JP2005339149A (en) Data processor, data processing method and data processing program
JP5315206B2 (en) Information linkage system, receiving apparatus thereof, and object conversion method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201222

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210601