(57)【要約】【課題】フィールドコンピューティングの分野で、フィールド機器にサービスを介してアクセスするとともに、フィールド機器のアクセスを伴うアルゴリズムやデータ処理を容易且つ動的に指定することである。【解決手段】エージェント１０１として機能する第１制御手段を有する管理装置１と、管理装置１と通信接続され、フィールド機器本体と、フィールド機器本体に対応付けられた第１サービス２０１〜２０８として機能する第２制御手段とを有するフィールド機器２Ａ〜２Ｆと、を備え、第１サービス２０１〜２０８は、対応するフィールド機器本体に対する情報の入力及び取得の少なくとも一つを提供し、エージェント１０１は、アクセス先及びアクセス内容が順に記述されたスクリプト６１に基づいて、対応する第１サービス２０１〜２０８を介して、フィールド機器本体に対する情報の入力及び取得の少なくとも一つを行う。【選択図】図１
2007334808.tif 000002
【特許請求の範囲】
【請求項１】
エージェントとして機能する第１制御手段を有する管理装置と、
前記管理装置と通信接続され、フィールド機器本体と、当該フィールド機器本体に対応付けられた第１サービスとして機能する第２制御手段とを有する少なくとも一つのフィールド機器と、を備え、
前記第１サービスは、対応する前記フィールド機器本体に対する情報の入力及び取得の少なくとも一つを提供し、
前記エージェントは、アクセス先及びアクセス内容が順に記述されたスクリプトに基づいて、対応する前記第１サービスを介して、前記フィールド機器本体に対する情報の入力及び取得の少なくとも一つを行うことを特徴とする管理システム。
【請求項２】
エージェントとして機能する第１制御手段を有する管理装置と、
少なくとも一つのフィールド機器と、
前記管理装置と通信接続され、前記フィールド機器に対応付けられた第１サービスとして機能する第２制御手段を有する制御装置と、を備え、
前記第１サービスは、対応する前記フィールド機器に対する情報の入力及び取得の少なくとも一つを提供し、
前記エージェントは、アクセス先及びアクセス内容が順に記述されたスクリプトに基づいて、対応する前記第１サービスを介して、前記フィールド機器に対する情報の入力及び取得の少なくとも一つを行うことを特徴とする管理システム。
【請求項３】
前記管理装置と通信接続され、第２サービスとして機能する第３制御手段を有する少なくとも一つの演算機器を備え、
前記第２サービスは、入力値に対して所定の演算を施してその演算結果を提供し、
前記エージェントは、前記第２サービスへのアクセスが記述された前記スクリプトに基づいて、前記フィールド機器の情報に関する入力値を、対応する前記第２サービスに入力してその演算結果を取得することを特徴とする請求項１又は２に記載の管理システム。
【請求項４】
前記管理装置と通信接続され、データベースと、当該データベースに対応付けられた第３サービスとして機能する第４制御手段とを有する少なくとも一つのデータベース機器を備え、
前記第３サービスは、対応する前記データベースに対するデータの読み出し、格納及び演算の少なくとも一つを提供し、
前記エージェントは、前記第３サービスへのアクセスが記述された前記スクリプトに基づいて、対応する前記第３サービスを介して、前記フィールド機器の情報に関する前記データベースに対するデータの読み出し、格納及び演算の少なくとも一つを行うことを特徴とする請求項１から３のいずれか一項に記載の管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フィールドコンピューティング分野の管理システムに関する。
【背景技術】
【０００２】
従来、ビジネス分野だけでなく、広域監視システムや分散制御システムなどにおいて、フィールドに置かれているセンサやアクチュエータ等のフィールド機器から情報を収集して処理を行うフィールドコンピューティングのシステムがあった（例えば、特許文献１参照）。このシステムにおいては、複数のフィールド機器に接続されたコンピュータ（例えば、ＰＣ（Personal Computer））上でアプリケーションプログラムを実行することにより、コンピュータ（アプリケーション）がフィールド機器から情報を収集して処理を行っていた。
【０００３】
図８に、従来の制御システム１γの構成を示す。図８に示すように、制御システム１γは、ＰＣ７Ａ，７Ｂと、ゲートウェイ装置８と、データベース５１と、フィールド機器としてのセンサ３１〜３３及びアクチュエータ４１〜４４と、を備えて構成される。データベース５１は、ＰＣ７Ｂに接続されている。ＰＣ７Ａ，７Ｂと、ゲートウェイ装置８とは、通信ネットワークＮ１を介して通信接続される。ゲートウェイ装置８と、センサ３１〜３３及びアクチュエータ４１〜４４とは、通信ネットワークＮ２を介して通信接続される。
【０００４】
制御システム１γにおいて、ＰＣ７Ａで実行されるフィールドコンピューティング分野のアプリケーション（プログラム）により、ＰＣ７Ａは、フィールド機器（センサ３１〜３３及びアクチュエータ４１〜４４）の測定値や状態値を取得し、データベース５１に格納する。また、ＰＣ７Ａ（のアプリケーション）は、必要な演算を実行したり、状況に応じて情報をフィールド機器側に返したりする。ＰＣ７Ｂも同様である。
【０００５】
また、通常、ＰＣ７Ａ（のアプリケーション）は、目的のフィールド機器からリアルタイムにデータを取得するのではない。ＰＣ７Ａでどのフィールド機器の情報が利用されるかは事前に決められており、ＰＣ７Ａは、それらの情報をゲートウェイ装置８（例えばＤＣＳ（Digital Control System））や上位側コンピュータ（不図示）にあるデータベースから、フィールド機器の情報を取得することが多い。
【０００６】
また、データベースにアクセスする方式も通信対象やシステム構成によって異なる場合が多く、ＰＣ７Ａ（のアプリケーション）は、どこにどんな情報があるか、どのように通信すればよいかの情報を事前に知っており、決められたインタフェースを介してそれらゲートウェイ装置８やデータベース５１にアクセスして情報を取得し、決められたアルゴリズムにより制御処理を行っている。
【０００７】
また、ＰＣ７Ａとフィールド機器との情報交換は特定の通信方式でないとできないために、機器はゲートウェイ装置８を通して他のシステムや、コンピュータとの通信を行っていることが多い。
【特許文献１】特開２００６−９１９６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかし、従来の制御システムにおいて、フィールド機器は、特定の通信ネットワークで接続されていることが多い。例えば、通信ネットワークＮ２が特定のものであると、アプリケーションが動作するＰＣ７Ａからフィールド機器にアクセスすることが困難であることが多いため、事前に決められたゲートウェイ装置８やデータベース５１等に蓄積されている情報だけが、ＰＣ７Ａ（のアプリケーション）から利用可能であった。また、ＰＣ７Ａは、ゲートウェイ装置８やデータベース５１等にアクセスするためのインタフェースは事前に知っておく必要があった。
【０００９】
これらのことを、ＰＣ７Ａのアプリケーション側の立場から考えてみると、
（１）リアルタイムにフィールド機器にアクセスしてまさにその情報を取得、設定することができない。
（２）事前にデータの存在場所やインタフェースが既知である場所の情報だけしか利用することができない。
（３）ゲートウェイ装置やデータベース等にアクセスするインタフェースを事前にしておく必要がある。
上記のような問題点があった。要するに、情報を提供する側と利用する側の結合は、予め決められていなければならなかった。
【００１０】
従って、必要とされる情報の種類、提供の方法（インタフェース）が違う場合には、アプリケーション（プログラム）を作り直す必要があった。また、情報を処理するアルゴリズムが少しでも変更になった場合でも、アプリケーション（プログラム）全体を作り直す必要があった。そのため、アプリケーションの機能や目的が同じでも、情報の種類やアクセス手段が違う場合には、ほとんど同種同様のアプリケーション（プログラム）を複数個開発する必要があった。さらに、それら複数個のアプリケーション（プログラム）を管理することも必要であった。
【００１１】
どの機器からどのデータを取得するかということや、その処理の仕方が事前に決められているため、ユーザの多様な要求に対応するために、処理のアルゴリズムやデータの取得元を動的に変化することが難しかった。
【００１２】
また、サービスを組み合わせてアプリケーションを構築するＳＯＡ（Service Oriented Architechre）という方式が、主にビジネスシステムの分野を中心に広まってきている。しかし、フィールドコンピューティングの分野では、機器との通信が特定な方式にも限定されることも影響して、フィールド機器の機能がサービスを提供するという形でＳＯＡをベースにしたアプリケーションはまだ構築されていないのが現状である。さらに、動的にデータや処理方式を変更するためにＳＯＡを利用した方式は、実現されていない。
【００１３】
本発明の課題は、フィールドコンピューティングの分野で、フィールド機器にサービスを介してアクセスするとともに、フィールド機器のアクセスを伴うアルゴリズムやデータ処理を容易且つ動的に指定することである。
【課題を解決するための手段】
【００１４】
上記課題を解決するため、請求項１に記載の発明の管理システムは、
エージェントとして機能する第１制御手段を有する管理装置と、
前記管理装置と通信接続され、フィールド機器本体と、当該フィールド機器本体に対応付けられた第１サービスとして機能する第２制御手段とを有する少なくとも一つのフィールド機器と、を備え、
前記第１サービスは、対応する前記フィールド機器本体に対する情報の入力及び取得の少なくとも一つを提供し、
前記エージェントは、アクセス先及びアクセス内容が順に記述されたスクリプトに基づいて、対応する前記第１サービスを介して、前記フィールド機器本体に対する情報の入力及び取得の少なくとも一つを行うことを特徴とする。
【００１５】
請求項２に記載の発明の管理システムは、
エージェントとして機能する第１制御手段を有する管理装置と、
少なくとも一つのフィールド機器と、
前記管理装置と通信接続され、前記フィールド機器に対応付けられた第１サービスとして機能する第２制御手段を有する制御装置と、を備え、
前記第１サービスは、対応する前記フィールド機器に対する情報の入力及び取得の少なくとも一つを提供し、
前記エージェントは、アクセス先及びアクセス内容が順に記述されたスクリプトに基づいて、対応する前記第１サービスを介して、前記フィールド機器に対する情報の入力及び取得の少なくとも一つを行うことを特徴とする。
【００１６】
請求項３に記載の発明は、請求項１又は２に記載の管理システムにおいて、
前記管理装置と通信接続され、第２サービスとして機能する第３制御手段を有する少なくとも一つの演算機器を備え、
前記第２サービスは、入力値に対して所定の演算を施してその演算結果を提供し、
前記エージェントは、前記第２サービスへのアクセスが記述された前記スクリプトに基づいて、前記フィールド機器の情報に関する入力値を、対応する前記第２サービスに入力してその演算結果を取得することを特徴とする。
【００１７】
請求項４に記載の発明は、請求項１から３のいずれか一項に記載の管理システムにおいて、
前記管理装置と通信接続され、データベースと、当該データベースに対応付けられた第３サービスとして機能する第４制御手段とを有する少なくとも一つのデータベース機器を備え、
前記第３サービスは、対応する前記データベースに対するデータの読み出し、格納及び演算の少なくとも一つを提供し、
前記エージェントは、前記第３サービスへのアクセスが記述された前記スクリプトに基づいて、対応する前記第３サービスを介して、前記フィールド機器の情報に関する前記データベースに対するデータの読み出し、格納及び演算の少なくとも一つを行うことを特徴とする。
【発明の効果】
【００１８】
請求項１、２に記載の発明によれば、フィールドコンピューティングの分野で、所望のフィールド機器の第１サービスに所望のタイミングでアクセスして情報の入力及び出力の少なくとも一つを容易に行うことができるとともに、スクリプトを変更するのみでフィールド機器のアクセスを伴うアルゴリズムやデータ処理を容易且つ動的に指定できる。
【００１９】
請求項３に記載の発明によれば、所望の演算機器の第２サービスに所望のタイミングでアクセスしてフィールド機器の情報に関する入力値の演算を容易に行うことができる。
【００２０】
請求項４に記載の発明によれば、所望のデータベース機器の第３サービスに所望のタイミングでアクセスしてフィールド機器の情報に関するデータベースのデータ読み出し、格納及び演算の少なくとも一つを容易に行うことができる。
【発明を実施するための最良の形態】
【００２１】
以下、添付図面を参照して本発明に係る実施の形態を詳細に説明する。ただし、発明の範囲は、図示例に限定されない。
【００２２】
先ず、図１を参照して、本実施の形態の管理システム１αの構成を説明する。図１に、本実施の形態の管理システム１αの構成を示す。管理システム１αは、フィールド機器を管理し、その測定値及び状態値を取得し、その取得した値に基づいて各種処理を行うシステムである。
【００２３】
図１に示すように、管理システム１αは、管理装置１と、フィールド機器２Ａ〜２Ｆと、演算機器２Ｇ〜２Ｉと、データベース機器２Ｊ，２Ｋと、を備えて構成され、管理装置１と機器２Ａ〜２Ｋとが通信ネットワークＮを介して接続される。以下、フィールド機器２Ａ〜２Ｆ、演算機器２Ｇ〜２Ｉ、データベース機器２Ｊ，２Ｋを、機器２Ａ〜２Ｋと表現する。
【００２４】
図１では、管理装置１が情報を送受信する対象が、一例として、フィールド機器２Ａ，２Ｃ，２Ｄ，２Ｆ，演算機器２Ｈ，データベース機器２Ｋであるものとし、お互いに矢印で結んでいるが、実際には、管理装置１が全ての機器２Ａ〜２Ｋと接続されている。通信ネットワークＮは、例えば、一般に普及しているＩＰ（Internet Protocol）ネットワークとする。
【００２５】
管理装置１と、機器２Ａ〜２Ｋとは、通信ネットワークＮを介する接続に限定されるものではなく、１：Ｎ（Ｎ：機器の総台数）接続等の通信接続でもよい。また、フィールド機器、演算機器、データベース機器の各台数は、図１のものに限定されるものではない。
【００２６】
管理装置１は、エージェント１０１を有する。エージェントは、ソフトウェアエージェントであり、管理装置１の制御手段におけるエージェントプログラムの実行により生成され、後述するサービスとの情報交換により各種処理を実行する機能を有する。エージェント１０１は、スクリプト６１に基づいて、機器２Ａ〜２Ｋと情報を送受信して各種処理を行う。スクリプト６１は、エージェント１０１がアクセスする対象と、送受信する情報と、アクセスの順序とを有するデータである。
【００２７】
フィールド機器２Ａは、制御装置２０Ａと、センサ３Ａと、を備える。制御装置２０Ａは、第１サービスとしてのサービス２０１を有する。サービス２０１は、ＳＯＡにおけるサービスであり、制御装置２０Ａの制御手段におけるサービスプログラムの実行により生成され、入力情報に対応する返信情報を要求元（ここでは、管理装置１）に返信する機能を有する。サービス２０１は、具体的には、エージェント１０１の要求により、センサ３Ａの測定値を取得して返信する。センサ３Ａは、温度センサ、流量センサ等、フィールド機器としてのセンサである。
【００２８】
フィールド機器２Ｂは、制御装置２０Ｂと、アクチュエータ４Ｂと、を備える。制御装置２０Ｂは、第１サービスとしてのサービス２０２を有する。サービス２０２は、具体的には、エージェント１０１の要求により、アクチュエータ４Ｂの状態値を取得して返信する。アクチュエータ４Ｂは、流量バルブ等、フィールド機器としてのアクチュエータである。また、状態によってはエージェント１０１から入力情報をフィールド機器２Ｂに入力することもできる。
【００２９】
各フィールド機器は、自分が持っている機能をサービスとして提供する。本実施の形態では、フィールド機器がフィールド機器本体及び制御装置を備え、センサ、アクチュエータ等の機器本体のリソースが限られている、又はフィールド機器本体に接続するためのネットワークが特別な種類の場合を想定し、フィールド機器本体でサービスを実現できなく、内蔵の制御装置でサービスを実現するフィールド機器を説明する。しかし、これに限定されるものではなく、フィールド機器自体でサービスの機能を実現できない構成とし、サービスを実現するための制御装置を、このサービス機器に外付けで接続する構成としてもよい。また、各フィールド機器は、自分が提供しているサービスの機能やサービスを利用するためのインターフェースを公開しておく。また、フィールド機器として、センサ、アクチュエータを挙げて説明するが、これに限定されるものではなく、他のフィールド機器を用いてもよい。
【００３０】
フィールド機器２Ｃは、フィールド機器２Ｂと同様に、制御装置２０Ｃと、アクチュエータ４Ｃと、を備え、制御装置２０Ｂにサービス２０３を有する。フィールド機器２Ｃは、フィールド機器２Ａと同様に、制御装置２０Ｄと、センサ３Ｄと、を備え、制御装置２０Ｂにサービス２０３を有する。
【００３１】
フィールド機器２Ｅは、フィールド機器２Ｂと同様に、制御装置２０Ｅと、アクチュエータ４１Ｅ，４２Ｅと、を備え、制御装置２０Ｂにサービス２０５，２０６を有する。フィールド機器２Ｆは、フィールド機器２Ａと同様に、制御装置２０Ｆと、センサ３１Ｆ，３２Ｆと、を備え、制御装置２０Ｆにサービス２０７，２０８を有する。
【００３２】
演算機器２Ｇは、制御装置２０Ｇを備え、制御装置２０Ｇに第２サービスとしてのサービス２０９を有する。サービス２０９は、具体的には、フィールド機器の情報に関し、エージェント１０１からの入力情報を各種演算しその演算結果を返信する。演算機器２Ｈは、演算機器２Ｇと同様に、制御装置２０Ｈを備え、制御装置２０Ｈにサービス２１０を有する。演算機器２Ｉは、演算機器２Ｇと同様に、制御装置２０Ｉを備え、制御装置２０Ｉにサービス２１１を有する。
【００３３】
データベース機器２Ｊは、制御装置２０Ｊと、データベース５Ｊと、を備え、制御装置２０Ｊに第３サービスとしてのサービス２１２を有する。サービス２１２は、具体的には、フィールド機器の情報に関し、エージェント１０１からのデータ読み出し、格納及び演算の少なくとも一つの要求情報に基づいて、データベース５Ｊにデータを読み出して返信し、データベース５Ｊにデータを格納し、エージェント１０１からの入力情報を各種演算しその演算結果を返信する。データベース機器２Ｋは、データベース機器２Ｊと同様に、制御装置２０Ｋと、データベース５Ｋと、を備え、制御装置２０Ｋにサービス２１３を有する。
【００３４】
次いで、管理装置１の内部構成を説明する。図２に、管理装置１の内部構成を示す。図２に示すように、管理装置１は、第１制御手段としての制御手段１１と、操作手段１２と、記憶手段１３と、表示手段１４と、通信手段１５と、入力手段１６と、を備えて構成され、各部がバス１７を介して接続される。
【００３５】
制御手段１１は、ＣＰＵ（Central Prosessing Unit）、ＲＡＭ（Random Access Memory）等を備える。制御手段１１において、ＣＰＵにより記憶手段１３に記憶されたシステムプログラム及びアプリケーションプログラムの中から指定されたプログラムが読み出されてＲＡＭに展開され、ＲＡＭに展開されたプログラムと、ＣＰＵとの協働で各種処理が実行される。制御手段１１には、特に、ＲＡＭに展開されたエージェントプログラムとＣＰＵとの協働により、上記説明したエージェント１０１が形成される。
【００３６】
操作手段１２は、キーボードや、マウス等のポインティングデバイス等を有し、ユーザから入力されたキー入力情報又は位置入力情報を入力信号として受け付け、その入力信号を制御手段１１に出力する。
【００３７】
記憶手段１３は、ＨＤＤ（Hard Disk Drive）などの情報の読み書き可能な記録媒体を備えて構成され、各種データ及び各種プログラムが記憶される。記憶手段１３の記録媒体には、特に、エージェント１０１を形成するためのエージェントプログラムが記憶されている。
【００３８】
表示手段１４は、ＬＣＤ（Liquid Crystal Display）などの表示装置であり、制御手段１１からの表示信号に基づいて各種情報が表示される。
【００３９】
通信手段１５は、ルータ等により構成され、通信ネットワークＮに接続され、通信ネットワークＮ上の機器との通信を介する。
【００４０】
入力手段１６は、例えば、フレキシブルディスク、ＣＤ等の可搬の記録媒体のドライブであり、少なくとも記録媒体に記録された情報を読み出し制御手段１１に出力する機能を有する。本実施の形態では、入力手段１６において、記録媒体に記録されたスクリプト６１が読み出されて入力されることとして説明する。しかし、これに限定されるものではなく、スクリプト６１は、操作手段１２を介してユーザにより操作入力されてもよいし、通信手段１５を介して、外部機器から受信されることにより入力されることとしてもよい。さらに、アプリケーションプログラムの実行により制御手段１１に存在するアプリケーションがスクリプト６１を生成して入力する構成としてもよい。
【００４１】
次いで、制御装置２０Ａ〜２０Ｋを代表して、制御装置２０Ａの内部構成を説明する。図３に、制御装置２０Ａの内部構成を示す。図３に示すように、制御装置２０Ａは、第１制御手段としての制御手段２１と、通信手段２２と、記憶手段２３と、接続手段２４と、を備えて構成され、各手段がバス２５を介して接続される。
【００４２】
制御手段２１は、ＣＰＵ、ＲＡＭ等を備える。制御手段２１において、ＣＰＵにより記憶手段２３に記憶されたシステムプログラム及びアプリケーションプログラムの中から指定されたプログラムが読み出されてＲＡＭに展開され、ＲＡＭに展開されたプログラムと、ＣＰＵとの協働で各種処理が実行される。制御手段２１には、特に、サービスプログラムにより、上記説明したサービス２０１が形成される。
【００４３】
サービス２０１は、Ｗｅｂサーバ機能、データ提供機能、デバイスドライバ機能を有する。Ｗｅｂサーバ機能は、通信ネットワーク上の機器が制御手段２１にアクセス可能にするための機能である。データ提供機能は、データアクセスを提供する機能であり、例えば、ＸＭＬ−ＤＡ（eXtensible Markup Language-Data Access）の規格に応じたデータアクセスを提供するＸＭＬ−ＤＡサーバ機能である。デバイスドライバ機能は、接続手段２４に接続されるデバイス（センサ３Ａ等）を制御する機能である。
【００４４】
通信手段２２は、ルータ等により構成され、通信ネットワークＮに接続され、通信ネットワークＮ上の機器との通信を介する。
【００４５】
記憶手段２３は、ＲＯＭ（Read Only Memory）、フラッシュメモリ等により構成され、各種プログラム及びデータを記憶する。記憶手段２３は、特に、サービス２０１を形成するためのサービスプログラムを記憶している。
【００４６】
接続手段２４は、デバイスとしてのセンサ３Ａとの接続を介する。
【００４７】
制御装置２０Ｂ〜２０Ｄは、それぞれ、制御装置２０Ａと同様の構成となる。制御装置２０Ｅ，２０Ｆは、それぞれ、制御装置２０Ａと同様であるが、接続手段２４に２つのデバイスが接続され、各デバイスに対応して、制御手段２１に２つのサービスが形成される。制御装置２０Ｇ〜２０Ｉは、それぞれ、第３制御手段としての制御手段２１、通信手段２２、記憶手段２３を備え、接続手段２４を備えない。このため、サービス２０９〜２１１は、デバイスドライバ機能を有しない。制御装置２０Ｊ，２０Ｋは、それぞれ、第４制御手段としての制御手段２１、通信手段２２、記憶手段２３、接続手段２４を備える。
【００４８】
なお、制御装置は、３以上の複数のデバイス（フィールド機器本体、データベース）と接続され、３つ以上のサービスを備える構成としてもよい。
【００４９】
次に、図４を介して、スクリプト６１を説明する。図４に、スクリプト６１の構成を示す。図４に示すように、スクリプト６１は、データ取得命令の行が上から順に並べられている。
【００５０】
各命令は、コマンドと、ターゲットと、引数と、返り値と、から構成される。
【００５１】
コマンドは、サービスに対して呼び出す機能を指定する。コマンドは、サービス固有に定義できるものとする。例えば、図４において、「getData」は、サービスからデータを取得し、入力値は受け取らないコマンドである。図４において、「putData」は、サービスからデータ（入力値）を渡して、返り値を受け取るコマンドである。
【００５２】
アクセス先としてのターゲットは、呼び出すサービスを指定する。図４に示す「Destination*」は、アクセス先のサービスを示すターゲットであり、具体的には、フィールド機器２Ａ〜２Ｆ、演算機器２Ｇ〜２Ｉ、データベース機器２Ｊ，２Ｋの各サービス２０１〜２１３にそれぞれ対応付けられている。なお、ターゲットと、ターゲットとなるサービスが動作している場所及びインタフェースとは、対応付けられて、予めディレクトリサービス等に登録されているものとする。そして、エージェント１０１は、スクリプト６１のターゲットをキーとして、前記登録された情報を参照することにより、取得したターゲットに対応する、サービス及びインタフェースを知ることができる。
【００５３】
引数は、サービスを呼び出す場合に必要な値を指定する。返り値は、サービスを呼び出すことによって戻されてくる値を格納する変数を指定する。図４に示す「Data*」は、取得するデータとしての返り値であり、入力値としての引数としても使われている。図４に示す「RrturnValue*」は、演算結果としての返り値であり、入力値としての引数としても使われている。
【００５４】
エージェント１０１は、スクリプト６１を１命令ずつ読み込みながら、各命令に書かれた指示を順番に実行することで、各種処理を実行する。
【００５５】
スクリプトにおいて、上述の、「getData」、「putData」のコマンドで、同期処理、非同期処理を指定することも可能である。また、スクリプトは、制御構造をもつことが可能であり、変数への代入、ifやwhile等の制御構造、例外構造、コールバック関数の呼び出し等を記述できるものとする。また、スクリプトは、ユーザ操作や、管理装置１で実行されるアプリケーション等により、動的に変更可能である。
【００５６】
次に、図５を参照して、管理システム１αの動作を説明する。エージェント１０１により実行されるスクリプト実行処理と、サービス２０１〜２１３により実行されるサービス提供処理と、を説明する。図５に、スクリプト実行処理及びサービス提供処理の流れを示す。
【００５７】
図５を参照して、エージェント１０１により実行されるスクリプト実行処理を説明する。スクリプト実行処理は、例えば、入力手段１６を介しスクリプト６１が入力されたことをトリガとしてエージェント１０１により実行開始される。
【００５８】
先ず、入力されたスクリプト６１内の次の命令が上から順に一つ読み込まれる（ステップＳ１１）。最初に命令を読み出す場合は、一番上の命令が読み込まれる。
【００５９】
そして、通信ネットワークＮを介して、ステップＳ１１で読み込まれたターゲット（サービス）に、コマンド、引数、返り値を含む命令が送信される（ステップＳ１２）。ステップＳ１２では、エージェント１０１により、ディレクトリサービス（不図示）にアクセスされ、スクリプト６１から読み込まれたターゲットから実際のサービスの場所及びインターフェースが特定された後、そのサービスにコマンド等が送信される。
【００６０】
そして、通信ネットワークＮを介して、コマンドを送信したターゲットから返り値が受信される（ステップＳ１３）。そして、スプリクト６１に未実行の次の命令があるか否かが判別される（ステップＳ１４）。スプリクト６１に次の命令がある場合（ステップＳ１４；ＹＥＳ）、ステップＳ１１に移行される。スプリクト６１に次の命令がない場合（ステップＳ１４；ＮＯ）、スクリプト実行処理が終了する。
【００６１】
次いで、図５を参照して、サービス２０１〜２１３により実行されるサービス提供処理を説明する。サービス提供処理は、例えば、通信ネットワークＮを介して、エージェント１０１から送信された命令が受信開始されたことをトリガとして、ターゲットであるサービスにより実行開始される。
【００６２】
先ず、スクリプト実行処理のステップＳ１２に対応して、エージェント１０１から送信された命令が受信完了される（ステップＳ２１）。命令には、入力情報としての引数が含まれる場合がある。そして、ステップＳ２１で受信された命令に基づいて、要求されている返り値がある場合に返り値が生成される（ステップＳ２１）。返り値は、例えば、フィールド機器の状態値（サービス２０１〜２０８）、入力値に対する演算結果（サービス２０９〜２１１）、又は要求されたデータ（サービス２１２，２１３）となる。
【００６３】
そして、スクリプト実行処理のステップＳ１３に対応して、ステップＳ２２で生成された返り値がエージェント１０１に送信され（ステップＳ２３）、サービス提供処理が終了する。なお、ステップＳ２２，Ｓ２３は、返り値がない場合は実行されない。
【００６４】
ここで、管理システム１αの動作の具体例を説明する。図４のスクリプト６１において、例えば、Destinationa1〜6に、順に、ターゲットとして、サービス２０１，２０３，２１３，２０９，２１０，２１１が対応付けられているものとする。すると、スクリプト６１の実行により、エージェント１０１が、サービス２０１からセンサ３Ａの測定値Data1を取得し、サービス２０３からアクチュエータ４Ｃの状態値Data2を取得し、サービス２１３からデータベース５Ｋに記憶されているData3,Data4を取得し、サービス２０９に入力値としてData1,data2,Data3を入力してその演算結果ReturnValue1を取得し、サービス２１０に入力値としてData4を入力してその演算結果ReturnValue2を取得し、サービス２１１に入力値としてReturnValue1,ReturnValue2を入力して、最終的にその演算結果ReturnValue3を取得する。
【００６５】
以上、本実施形態によれば、管理装置１でエージェント１０１が機能し、フィールド機器２Ａ〜２Ｆで情報出力機能をサービス２０１〜２０８により提供するので、フィールドコンピューティングの分野で、エージェント１０１がフィールド機器２Ａ〜２Ｆのサービス２０１〜２０８にアクセスして情報の入力及び取得を容易に行うことができる。
【００６６】
また、演算機器２Ｇ〜２Ｉで演算機能をサービス２０９〜２１１により提供するので、エージェント１０１が演算機器２Ｇ〜２Ｉのサービス２０９〜２１１にアクセスしてフィールド機器２Ａ〜２Ｆの情報に関する入力値の演算を容易に行うことができる。
【００６７】
また、データベース機器２Ｊ，２Ｋでデータベース５Ｊ，５Ｋのアクセス機能をサービス２１２，２１３により提供するので、エージェント１０１がデータベース機器２Ｊ，２Ｋのサービス２１２，２１３にアクセスしてフィールド機器２Ａ〜２Ｆの情報に関するデータベース５Ｊ，５Ｋのデータ読み出し、格納及び演算を容易に行うことができる。
【００６８】
また、スクリプト６１にアクセス先及びアクセス内容として、ターゲット及びコマンド等が順に記述されているので、エージェント１が所望の機器に所望のタイミングでアクセスできる。
【００６９】
また、スクリプト６１の記述を指定（変更）するのみで、フィールド機器のアクセスに関するアルゴリズムやデータ処理（フィールド機器の出力情報取得、演算機器の演算結果取得、データベース機器の情報アクセス及び演算）を容易且つ動的に指定できる。
【実施例１】
【００７０】
図６及び図７を参照して、上記実施の形態の具体的な実施例を説明する。図６に、本実施例の短期道路凍結予測を行う場合の管理システム１βの構成を示す。図７に、週間天気予報を行う場合の管理システム１βの構成を示す。
【００７１】
管理システム１βは、図６及び図７で、同様のシステム構成を有するが、スクリプトが異なるため、それぞれ異なるサービスを利用し、異なる目的のために使用されている。
【００７２】
管理システム１βは、管理装置１と、フィールド機器２Ｌ〜２Ｐと、演算機器２Ｑ，２Ｒと、データベース機器２Ｓと、を備えて構成され、管理装置と各機器２Ｌ〜２Ｓとが通信ネットワークＮを介して接続される。
【００７３】
フィールド機器２Ｌは、制御装置２０Ｌと、センサ３Ｌと、を備え、制御装置２０Ｌがサービス２２１を有する。フィールド機器２Ｍは、制御装置２０Ｍと、センサ３Ｍと、を備え、制御装置２０Ｍがサービス２２２を有する。フィールド機器２Ｎは、制御装置２０Ｎと、センサ３Ｎと、を備え、制御装置２０Ｎがサービス２２３を有する。フィールド機器２Ｏは、制御装置２０Ｏと、センサ３Ｏと、を備え、制御装置２０Ｏがサービス２２４を有する。フィールド機器２Ｐは、制御装置２０Ｐと、センサ３Ｐと、を備え、制御装置２０Ｐがサービス２２５を有する。
【００７４】
センサ３Ｌ〜３Ｐは、気象用センサ（温度、湿度、風向、風量、降水量など）であり、広域に設置されているものとする。サービス２２１〜２２５は、エージェント１０１それぞれ、センサ３Ｌ〜３Ｐの測定値を返信する。
【００７５】
演算機器２Ｑは、制御装置２０Ｑを備え、制御装置２０Ｑがサービス２２６を有する。サービス２２６は、入力値に対して、週間天気予報情報を演算して返信する機能を有する。演算機器２Ｒは、制御装置２０Ｒを備え、制御装置２０Ｒがサービス２２７を有する。サービス２２７は、入力値に対して、短期道路凍結情報を演算して返信する。
【００７６】
演算機器２Ｓは、制御装置２０Ｓと、データベース５Ｓとを備え、制御装置２０Ｓがサービス２２８を有する。データベース５Ｋは、気象に関する過去履歴情報を記憶している。
【００７７】
図６の管理システム１βにおいて、エージェント１０１は、スクリプト６２の各命令に基づき、サービス２２１，２２４にセンサ３Ｌ，３Ｏの測定値を要求して取得し、サービス２２８にデータベース５Ｓの過去履歴情報を要求して取得し、それらの測定値及び過去履歴情報をサービス２２７に入力して演算結果としての短期道路凍結情報を取得する。
【００７８】
図７の管理システム１βにおいて、エージェント１０１は、スクリプト６３の各命令に基づき、サービス２２３，２２４，２２５にセンサ３Ｎ，３Ｏ，３Ｐの測定値を要求して取得し、それらの測定値をサービス２２６に入力して演算結果としての週間天気予報情報を取得する。
【００７９】
気象予報は、いくつかのセンサの情報を使いながら色々な目的の予報、予測のためにアルゴリズムを変更する必要がある。必要となるセンサの種類、場所等、さらに処理アルゴリズムが目的のために変更になる。しかし、本実施例によれば、同じアーキテクチャ（システム構造）においてスクリプトを変更することで、種類の異なる処理を簡単に構築できる。
【００８０】
なお、上記実施の形態及び実施例における記述は、本発明に係る管理システムの一例であり、これに限定されるものではない。
【００８１】
その他、上記実施の形態及び実施例における管理システム１α，１βの細部構成及び詳細動作に関しても、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
【図面の簡単な説明】
【００８２】
【図１】本発明に係る実施の形態の管理システム１αの構成を示す図である。
【図２】管理装置１の内部構成を示す図である。
【図３】制御装置２０Ａの内部構成を示す図である。
【図４】スクリプト６１の構成を示す。
【図５】スクリプト実行処理及びサービス提供処理を示すフローチャートである。
【図６】実施例１の短期道路凍結予測を行う場合の管理システム１βの構成を示す図である。
【図７】週間天気予報を行う場合の管理システム１βの構成を示す図である。
【図８】従来の制御システム１γの構成を示す図である。
【符号の説明】
【００８３】
１α，１β  管理システム
１  管理装置
１１  制御手段
１２  操作手段
１３  記憶手段
１４  表示手段
１５  通信手段
１６  入力手段
１７  バス
１０１  エージェント
２Ａ〜２Ｆ，２Ｌ〜２Ｐ  フィールド機器
２０Ａ〜２０Ｓ  制御装置
２１  制御手段
２２  通信手段
２３  記憶手段
２４  接続手段
２５  バス
２０１〜２１３，２２１〜２２８  サービス  
２Ｇ〜２Ｉ，２Ｑ，２Ｒ  演算機器
２Ｊ，２Ｋ，２Ｓ  データベース機器
３Ａ，３Ｄ，３１Ｆ，３２Ｆ，３Ｌ〜３Ｐ  センサ
４Ｂ，４Ｃ，４１Ｅ，４２Ｅ  アクチュエータ
５Ｊ，５Ｋ，５Ｓ  データベース
Ｎ  通信ネットワーク
６１〜６３  スクリプト
１γ  制御システム
７Ａ，７Ｂ  ＰＣ
８  ゲートウェイ装置
３１〜３３  センサ
４１〜４４  アクチュエータ
５１  データベース
Ｎ１，Ｎ２  通信ネットワーク
【図１】
2007334808.tif 000003
【図２】
2007334808.tif 000004
【図３】
2007334808.tif 000005
【図４】
2007334808.tif 000006
【図５】
2007334808.tif 000007
【図６】
2007334808.tif 000008
【図７】
2007334808.tif 000009
【図８】
2007334808.tif 000010