JP6656099B2 - 制御装置およびその動作方法、通信中継機器およびその動作方法、ならびに、通信システムおよびその制御方法 - Google Patents

制御装置およびその動作方法、通信中継機器およびその動作方法、ならびに、通信システムおよびその制御方法 Download PDF

Info

Publication number
JP6656099B2
JP6656099B2 JP2016128428A JP2016128428A JP6656099B2 JP 6656099 B2 JP6656099 B2 JP 6656099B2 JP 2016128428 A JP2016128428 A JP 2016128428A JP 2016128428 A JP2016128428 A JP 2016128428A JP 6656099 B2 JP6656099 B2 JP 6656099B2
Authority
JP
Japan
Prior art keywords
control device
content
communication
specified
communication relay
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.)
Active
Application number
JP2016128428A
Other languages
English (en)
Other versions
JP2018006887A (ja
Inventor
輝明 田中
輝明 田中
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2016128428A priority Critical patent/JP6656099B2/ja
Publication of JP2018006887A publication Critical patent/JP2018006887A/ja
Application granted granted Critical
Publication of JP6656099B2 publication Critical patent/JP6656099B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Description

本発明は、制御装置(例えばプログラマブルロジックコントローラ)について負荷低減等を実現しうる技術に関する。
従来より、複数の機器が中継機器を介して接続されるネットワーク構成が知られている。例えば特許文献1の図7では、マスタ機器と複数の通信機器とが接続通信機器を介して接続されている。特許文献1によれば、マスタ機器はプログラマブルロジックコントローラである。また、接続通信機器は、マスタ機器に接続される表示モニタ、温調器、等である。接続通信機器に接続される通信機器は、2次元コードリーダ等である。
中継機器は、ネットワーク中の或る機器から通信パケットを受信すると、そのパケットの宛先を判別する。宛先が他の機器のうちのいずれかである場合、中継機器は宛先に指定されている機器にパケットを転送する。受信したパケットの宛先が中継機器自身である場合、中継機器は、パケットによって指示された処理を実行する。これと同様の処理フローが特許文献1の図3に示されている。
ここで、特許文献2には、複数の医用画像診断装置がネットワークを介して通信する構成が開示されている。特に、医用画像診断装置のそれぞれに対して、専用の医用画像通信装置が設けられている。以下では、医用画像診断装置を画像診断装置と呼び、専用の医用画像通信装置を専用通信装置と呼ぶ場合もある。画像診断装置はVMEバスを介して専用通信装置に接続され、当該専用通信装置がネットワークに接続されている。一の画像診断装置が他の画像診断装置と通信を行う場合、一の画像診断装置はVMEバスを介して自身の専用通信装置に指示および医用画像データを与え、それにより専用通信装置が実際的な通信処理を行う。他の画像診断装置の側においても同様である。実際的な通信処理は例えば、ネットワークの接続および解除と、画像データの送受信とを含む。特許文献2によれば、従来の画像診断装置が行っていた実際的な通信処理を、専用通信装置が代わりに行うので、実際的な通信処理の負荷による画像診断装置の性能低下を少なくできる、と述べられている。
また、特許文献3には、ネットワーク対応型プラグアンドプレイをサポートしていないデバイスを、当該ネットワーク対応型プラグアンドプレイをサポートしているデバイスとして仮想的に、ネットワーク上の他のデバイスに認識させる技術が開示されている。具体的には、プロキシサーバが、UPnP(Universal Plug and Play)で規定されるprobeパケットを発行することによって、ネットワーク上でUPnP対応の印刷装置を検索する。また、プロキシサーバは、SNMP(Simple Network Management Protocol)Getリクエストを発行することによって、ネットワーク上に存在する印刷装置を検索する。プロキシサーバは、UPnPのプローブパケットに応答しなかったがSNMP Getリクエストには応答した印刷装置を、UPnPをサポートしていない印刷装置として判断する。プロキシサーバはネットワーク上のクライアントから、UPnPをサポートしていない印刷装置が出力先に指定された、UPnPによるプリントジョブ要求を受信した場合、プロキシサーバは、受信したプリントジョブ要求を、指定された印刷装置がサポートしているプリントプロトコルに変換する。そして、プロキシサーバは、変換後の情報を、指定された印刷装置に送信する。
特開2009−105683号公報 特開平7−146830号公報 特開2005−309617号公報
従来のネットワーク構成において、各機器は、中継機器からパケットが到来すると、通信処理を行う。通信処理はパケットの受信処理を含む。また、通信処理は、受信したパケットで要求されている処理(例えばデータの読み出しまたは書き込み)のための応答処理を含む場合がある。
通信処理では例えば次のような一連の処理が行われる。通信パケットが分割されて送信されている場合、受信側機器は、分割されているパケットを連結して一つの通信パケットデータを復元する。そして、受信側機器は、復元したパケットデータが要求しているサービス種別を判別する。ここでは、Ethernet(登録商標)による通信におけるTCP(Transmission Control Protocol)の80番のサービスを例示する。受信側機器は、判別したサービス種別に割り当てられているサービス処理を呼び出し、そのサービス処理に、受信したパケットデータを解析させる。サービス処理では、通信パケットデータの構造を、予め定められているデータフォーマットに則して解析することによって、通信パケットデータ中のどの位置のデータに対してどのようなデータ処理を行うのかが判別される。データ処理として、例えばデータの読み出しまたは書き込みまたは演算が挙げられる。その後、判別したデータ処理が呼び出される。
ここで、中継機器に接続される機器が、プログラマブルロジックコントローラのような制御装置である場合、当該制御装置は、制御対象に対する制御処理に加えて、通信処理も行うことになる。通信処理はパケットが到来する度に行われるので、受信するパケットが多くなると通信処理の負荷が大きくなる。そうなると通信処理が制御処理に対して干渉を起こし、制御性能の低下を招いてしまう。
また、制御装置において制御処理と通信処理とが同じ演算装置(CPU等)で実行されている場合、通信処理を行っている間は、制御処理を行うことができない。その場合にも、制御装置の制御性能が低下してしまう。また、制御装置宛てに通信パケットを送信する機器が多くなるほど、通信処理の負荷が増加して制御性能が、より大きく低下してしまう。
そのような制御性能の低下は、より高性能の演算装置を採用することによって、解消できるかもしれない。しかし、部品コストが増加し,結果として制御装置のコストが増加してしまう。
本発明は、制御装置(例えばプログラマブルロジックコントローラ)について負荷低減等を実現しうる技術を提供することを目的とする。
本発明の一態様に係る制御装置は、制御対象の制御処理を実行する対象制御部と、当該制御装置の外部通信を制御する通信制御部と、委託部とを含んでいる。前記委託部は、当該制御装置が前記外部通信による指示に従って実行する処理内容のうちで、前記通信制御部と通信相手との間に設けられている通信中継機器に委託する内容を、前記通信中継機器と交渉する交渉処理を実行する。前記委託部は、前記交渉処理によって委託の指定がなされた処理内容である指定内容の実行を管理する委託管理処理を実行する。前記委託部は、指定候補内容についての前記交渉処理を、前記指定候補内容に関連する参考情報に基づいて実行する。前記参考情報は、前記指定候補内容が前記通信中継機器の仕様に準拠しているか否かの情報と、当該制御装置が前記指定候補内容を実行するのにかかる実行時間と、前記通信中継機器が前記指定候補内容を実行するのにかかる実行時間と、当該制御装置が前記指定候補内容を実行するために割り当て可能な許容時間と、前記通信中継機器が前記指定候補内容を実行するために割り当て可能な許容時間と、当該制御装置において前記指定候補内容を実行するために利用可能なメモリリソース量と、前記通信中継機器において前記指定候補内容を実行するために利用可能なメモリリソース量と、を含む。
上記一態様によれば、制御装置が外部通信による指示に従って実行する処理内容のうちの一部または全部を、通信中継機器に委託することが可能である。このため、処理を委託することによって、制御装置の負荷を低減し、制御性能の低下を回避することができる。また、負荷が低減することによって、制御装置に高性能なCPU等を用いる必要性が低くなる。このため、部品のコスト、換言すれば制御装置のコストを抑制することができる。
また、指定内容、すなわち委託内容は、制御装置と通信中継機器とが交渉することによって決まる。つまり、指定内容は自動的に決定される。このため、ユーザは当該制御装置を簡便に利用することができる。また、制御装置と通信中継機器とが交渉するので、例えば通信中継機器を交換した場合であっても、柔軟に対応することができる。
本発明の目的、特徴、局面、および利点は、以下の詳細な説明と添付図面とによって、より明白となる。
実施の形態1について、制御装置および通信中継機器を説明するハードウェア構成図である。 実施の形態1について、他のネットワーク構成を説明する図である。 実施の形態1について、制御装置の機能ブロック図である。 実施の形態1について、通信中継機器の機能ブロック図である。 実施の形態1について、通信機器の機能ブロック図である。 実施の形態1について、交渉処理を説明するフローチャートである。 実施の形態1について、制御処理が一定周期で実行されることが要求されている場合のタイミングチャートである。 実施の形態1について、制御処理の開始タイミングが調整可能である場合のタイミングチャートを示す。 実施の形態1について、通信中継機器に処理を委託しない場合のシーケンス図である。 実施の形態1について、通信中継機器に処理を委託する場合のシーケンス図である。 実施の形態2について、実行待ちの指定内容が現に発生している場合に支援要請を行うことを説明するシーケンス図である。 実施の形態2について、同時期に複数の指示を受信した場合に支援要請を行うことを説明するシーケンス図である。 実施の形態1,2に共通の変形例について、制御装置および通信中継機器を説明するハードウェア構成図である。
<実施の形態1>
<1.ハードウェア構成>
図1に、実施の形態1に係る制御装置100および通信中継機器200を説明するハードウェア構成図を示す。制御装置100と通信中継機器200とを合わせて、通信システム300または制御システム300と呼んでもよい。図1には説明のために、制御対象90および通信機器500も図示している。
<1.1.制御装置100のハードウェア構成>
制御装置100は、例えばプログラマブルロジックコントローラである。図1によれば、制御装置100は、プロセッサ101と、メモリ102と、制御インターフェース103と、通信インターフェース104と、バス105とを含んでいる。以下、「インターフェース」を「IF」と呼ぶ場合もある。プロセッサ101と、メモリ102と、制御IF103と、通信IF104とは、バス105を介して接続されている。
プロセッサ101は、プログラムを実行する、いわゆる演算処理回路である。メモリ102は、ROM(Read Only Memory)、RAM(Random Access Memory)、書き換え可能な不揮発性メモリ、等の半導体メモリによって構成されている。メモリ102はHD(hard disk)装置をさらに含んでもよい。メモリ102に格納されているプログラムをプロセッサ101が実行することによって、制御装置100の各種処理が実行され、換言すれば制御装置100の各種機能が実現される。この場合、制御装置100の各種機能がソフトウェアによって実現される。
制御IF103は、制御装置100と制御対象90とを接続するインターフェース回路であり、制御対象90が接続されるポート103Pを有している。制御対象90は例えば工場内の各種設備であるが、この例に限定されるものではない。ここでは制御装置100が制御対象90とケーブルで有線接続されるものとする。その場合、ポート103Pは、ケーブルが接続される接続端子である。
制御IF103は、プロセッサ101からバス105を介して入力された信号を、制御対象90に伝達可能な信号に変換し、生成した信号をポート103Pから出力する。また、制御IF103は、制御対象90からポート103Pに到来した信号を、プロセッサ101が取り扱い可能な信号に変換し、生成した信号をバス105を介してプロセッサ101に出力する。
制御IF103と制御対象90との間、すなわち制御装置100と制御対象90との間を伝達する信号を、IO信号と呼ぶ場合もある。IO信号によって伝達される情報は、例えば、プロセッサ101の指示、制御対象90に供給するデータ、および、制御対象90から取得するデータである。具体的には、制御装置100が制御対象90に書き込み対象データを書き込む場合、プロセッサ101の書き込み指示およびその書き込み対象データが、IO信号によって伝達される。また、制御対象90が保有しているデータ、例えば制御対象90の現在状態を示すデータを、制御装置100が読み出す場合、プロセッサ101の読み出し指示がIO信号によって制御対象90に伝達され、指示された読み出し対象データがIO信号によって制御装置100に伝達される。
通信IF104は、制御装置100の外部通信のためのインターフェース回路である。ここで、外部通信の相手は、制御対象90以外の対象物であり、図1では通信機器500である。
特に、制御装置100と通信機器500との間の通信経路中に、通信中継機器200が介在している。このため、通信IF104のポート104Pには、通信中継機器200が接続されている。ここでは制御装置100が通信中継機器200とケーブルで有線接続されるものとする。その場合、ポート104Pは、ケーブルが接続される接続端子である。
通信IF104は、プロセッサ101からバス105を介して入力された信号を、外部通信用の信号に変換し、生成した信号をポート104Pから出力する。また、通信IF104は、外部からポート104Pに到来した信号を、プロセッサ101が取り扱い可能な信号に変換し、生成した信号をバス105を介してプロセッサ101に出力する。
<1.2.通信中継機器200のハードウェア構成>
通信中継機器200は、制御装置100と通信機器500との間の通信を中継する機器である。図1によれば、通信中継機器200は、プロセッサ201と、メモリ202と、通信IF204と、バス205とを含んでいる。プロセッサ201と、メモリ202と、通信IF204とは、バス205を介して接続されている。
プロセッサ201は、プログラムを実行する、いわゆる演算処理回路である。メモリ202は、ROM、RAM、書き換え可能な不揮発性メモリ、等の半導体メモリによって構成されている。メモリ202はHD装置をさらに含んでもよい。メモリ202に格納されているプログラムをプロセッサ201が実行することによって、通信中継機器200の各種処理が実行され、換言すれば通信中継機器200の各種機能が実現される。この場合、通信中継機器200の各種機能がソフトウェアによって実現される。
通信IF204は、通信中継機器200が中継する通信のためのインターフェース回路である。図1では、通信IF204は4つのポート204P1〜204P4を有しており、ポート204P3が制御装置100に接続され、ポート204P1が通信機器500に接続されている。但し、ポートの数および利用形態はこの例に限定されるものではない。ここでは通信中継機器200が制御装置100および通信機器500とケーブルで有線接続されるものとする。その場合、ポート204P1〜204P4は、ケーブルが接続される接続端子である。
通信IF204は、ポート204P1〜204P4に外部から到来した信号を、プロセッサ201が取り扱い可能な信号に変換し、生成した信号をバス205を介してプロセッサ201に出力する。また、通信IF204は、プロセッサ201からバス205を介して入力された信号を、外部通信用の信号に変換し、生成した信号を宛先に応じたポートから出力する。
<1.3.通信機器500のハードウェア構成>
通信機器500は、上記のように制御装置100の通信相手となる機器である。かかる観点によれば、通信機器500を通信相手機器500または通信相手500と呼んでもよい。ここでは、通信機器500は、制御対象90の制御に関連して、制御装置100に指示を与えるために利用される。このため、制御対象90の制御系統において、通信機器500は制御装置100の上位に位置付けられる。かかる観点によれば、通信機器500を上位通信機器500または上位機器500と呼んでもよい。
通信機器500は例えばパーソナルコンピュータで構成される。図1によれば、通信機器500は、プロセッサ501と、メモリ502と、通信IF504と、バス505と、入力装置506と、表示装置507とを含んでいる。プロセッサ501と、メモリ502と、通信IF504と、入力装置506と、表示装置507とは、バス505を介して接続されている。
プロセッサ501は、プログラムを実行する、いわゆる演算処理回路である。メモリ502は、ROM、RAM、書き換え可能な不揮発性メモリ、等の半導体メモリによって構成されている。メモリ502はHD装置をさらに含んでもよい。メモリ502に格納されているプログラムをプロセッサ501が実行することによって、通信機器500の各種処理が実行され、換言すれば通信機器500の各種機能が実現される。この場合、通信機器500の各種機能がソフトウェアによって実現される。
通信IF504は、通信機器500の外部通信のためのインターフェース回路である。上記のように通信機器500と制御装置100との間の通信経路中に、通信中継機器200が介在している。このため、通信IF504のポート504Pには、通信中継機器200が接続されている。ここでは通信機器500が通信中継機器200とケーブルで有線接続されるものとする。その場合、ポート504Pは、ケーブルが接続される接続端子である。
通信IF504は、プロセッサ501からバス505を介して入力された信号を、外部通信用の信号に変換し、生成した信号をポート504Pから出力する。また、通信IF504は、外部からポート504Pに到来した信号を、プロセッサ501が取り扱い可能な信号に変換し、生成した信号をバス505を介してプロセッサ101に出力する。
入力装置506は、キーボード、マウス、タッチパネル、ボタン等の入力装置のうちの1つまたは複数によって構成される。表示装置507はここでは液晶表示装置等の表示装置によって構成されるものとするが、例えばLED(Light Emitting Diode)等のランプをさらに利用してもよい。
<1.4.他の接続形態>
図1では、通信中継機器200に1つの制御装置100および1つの通信機器500が接続されたネットワーク構成を示した。但し、複数の制御装置100が通信中継機器200に接続されてもよい。同様に、複数の通信機器500が通信中継機器200に接続されてもよい。
一例として図2に、通信中継機器200に2つの制御装置100A,100Bおよび2つの通信機器500A,500Bが接続されたネットワーク構成を示す。図2では、図面の煩雑化を避けるため、制御装置100A,100Bと通信中継機器200と通信機器500A,500Bの構成を簡略的に図示している。図2において、制御装置100Aは、制御対象90Aに接続されていると共に、通信中継機器200のポート204P3に接続されている。制御装置100Bは、制御対象90Bに接続されていると共に、通信中継機器200のポート204P4に接続されている。通信機器500A,500Bは通信中継機器200のポート204P1,204P2にそれぞれ接続されている。
図2では、複数の制御装置100A,100Bが、いわゆるスター型の接続形態によって、通信中継機器200に接続されている。但し、この例に限定されるものではなく、例えばバス型の接続形態を採用することも可能である。また、図1のように制御装置100が1つだけ接続される場合、通信中継機器200において制御装置用のポートは1つだけ設けられてもよい。これらのことは、通信機器500,500A,500Bと通信中継機器200との接続についても同様である。
上記では制御装置100と通信中継機器200とがケーブルで有線接続されるものとした。これに対し、制御装置100と通信中継機器200とを無線接続することも可能である。同様に、制御装置100と制御対象90とを無線接続すること、および、通信中継機器200と通信機器500とを無線接続することも可能である。それらの場合、ポート103P,104P,204P1〜204P4,504Pはアンテナである。なお、通信中継機器200においてポート204P1〜204P4の一部だけが無線用ポートであってもよい。無線用ポートが複数在る場合、ポートごとに別々のアンテナを設ければよい。あるいは、共用アンテナを用い別々の無線チャンネルを、各無線用ポートに割り当ててもよい。
<2.機能構成>
以下に、制御装置100と通信中継機器200と通信機器500とを機能面から説明する。但し、まず機能の概略を説明し、その後、より具体的な機能を説明するものとする。
<2.1.制御装置100の機能の概略>
図3に、制御装置100の機能ブロック図を示す。図3によれば、制御装置100は、対象制御部120と、通信制御部130と、外部指示実行部の一例として示すデータアクセス部140と、委託部150と、情報格納部160とを含んでいる。
対象制御部120は、制御対象90の制御処理を実行する。対象制御部120は、制御IF103と、プロセッサ101と、メモリ102に格納されている対象制御部120用のプログラムとによって、実現される。すなわち、プロセッサ101が対象制御部120用のプログラムを実行し、且つ、プロセッサ101が制御IF103と協働することによって、制御対象90の制御処理が実行される。
制御対象90の制御処理は、制御関連データ161を制御対象90に供給する処理と、制御関連データ161を制御対象90から取得する処理とを含む。制御関連データ161は、制御処理に関連したデータであり、上記IO信号によって制御装置100と制御対象90との間を伝達する。対象制御部120は、制御対象90に供給した制御関連データ161、および、制御対象90から取得した制御関連データ161を、情報格納部160に格納する。
ここでは、制御対象90の制御処理は、間隔をあけて実行されるものとする。制御処理の開始タイミングが一定時間の周期である場合、制御処理は定期的に実行される。この場合、制御処理の実行時間が毎回同じであれば、上記間隔、すなわち制御処理の休止時間も毎回同じになる。逆に、制御処理の実行時間が同じでなければ、制御処理の休止時間は同じにならない。また、制御処理は、休止期間を挟んで不定期に実行されてもよい。
通信制御部130は、制御装置100の外部通信を制御する。通信制御部130は、通信IF104と、プロセッサ101と、メモリ102に格納されている通信制御部130用のプログラムとによって、実現される。すなわち、プロセッサ101が通信制御部130用のプログラムを実行し、且つ、プロセッサ101が通信IF104と協働することによって、外部通信処理が実行される。
外部通信処理は、送信処理と受信処理とを含む。送信処理において通信制御部130は、制御装置100内の機能ブロック、例えば委託部150が発行したパケットを取得し、当該パケットを、指定された宛先に送信するための外部通信用の信号を生成し、生成した信号を通信IF104のポート104Pから出力する。他方、受信処理において通信制御部130は、通信IF104のポート104Pに到来した信号を、プロセッサ101が取り扱い可能な信号に変換し、その受信信号に含まれるパケットを解析し、受信パケットの種別等に応じて、制御装置100内の担当の機能ブロックに受信パケットを引き渡す。
また、外部通信処理は、後述するネットワーク確立処理を含む。当該ネットワーク確立処理はアドレステーブル162の作成処理を含む。アドレステーブル162には、通信IF104のポート104Pに接続されている機器(ここでは通信中継機器200)の通信アドレス等の情報が記録されている。アドレステーブル162は情報格納部160に格納されている。
データアクセス部140は、制御装置100が外部通信による指示に従って実行する処理内容を実行する外部指示実行部の一例である。換言すれば、外部指示実行部はデータアクセス部140に限定されるものではない。
データアクセス部140は、データ読み出し処理と、データ書き込み処理とを、外部通信による指示に従って、換言すれば受信パケットによって取得した指示に従って、実行する。具体的には、データ読み出し処理においてデータアクセス部140は、外部通信によって指示されたデータを情報格納部160から読み出し、読み出したデータを外部通信で送信するためのパケットを生成し、生成したパケットを指示依頼元に送信するように通信制御部130に依頼する。他方、データ書き込み処理においてデータアクセス部140は、外部通信によって送信されてきたデータを情報格納部160に格納する。
委託部150は、交渉処理と委託管理処理とを実行する。交渉処理は、制御装置100が外部通信による指示に従って実行する処理内容のうちで、通信制御部130と通信相手500との間に設けられている通信中継機器200に委託する内容を、通信中継機器200と交渉することを含む。委託管理処理は、交渉処理によって委託の指定がなされた処理内容である指定内容、すなわち委託内容の実行を管理することを含む。
図3では、委託部150は、交渉処理を実行する交渉部151と、委託管理処理を実行する委託管理部152とを含んでいる。
交渉処理および委託管理処理の内容はプログラムとして準備され、それらのプログラムはメモリ102内に格納されている。すなわち、プロセッサ101がメモリ102内の交渉処理用のプログラムを実行することによって、交渉部151が実現される。また、プロセッサ101がメモリ102内の委託管理処理用のプログラムを実行することによって、委託管理部152が実現される。
指定内容のデータである指定内容データ163が、交渉部151によって情報格納部160に格納される。また、情報格納部160内の指定内容データ163は、委託管理部152等によって参照される。
情報格納部160はメモリ102によって実現される。図3によれば、情報格納部160には、制御関連データ161と、アドレステーブル162と、指定内容データ163とが格納される。なお、制御関連データ161を格納している記憶領域を、制御関連データ格納部と呼んでもよい。同様に、アドレステーブル162を格納している記憶領域を、アドレステーブル格納部と呼び、指定内容データ163を格納している記憶領域を、指定内容データ格納部と呼んでもよい。
<2.2.通信中継機器200の機能の概略>
図4に、通信中継機器200の機能ブロック図を示す。図4によれば、通信中継機器200は、通信制御部230と、受託部250と、情報格納部260とを含んでいる。
通信制御部230は、通信中継機器200に到来する通信信号、換言すればパケットを中継する。通信制御部230は、通信IF204と、プロセッサ201と、メモリ202に格納されている通信制御部230用のプログラムとによって、実現される。すなわち、プロセッサ201が通信制御部230用のプログラムを実行し、且つ、プロセッサ201が通信IF204と協働することによって、中継処理が実行される。
中継処理において通信制御部230は、通信IF204のポート204P1〜204P4に外部から到来した信号を、プロセッサ201が取り扱い可能な信号に変換し、その受信信号に含まれるパケットを解析し、受信パケットの宛先を判別する。
宛先がアドレステーブル262に登録されている場合、通信制御部230は、受信パケットを、指定された宛先に送信するための外部通信用の信号を生成し、生成した信号を通信IF204のポート204P1〜204P4のうちで宛先に応じたポートから出力する。その際、通信制御部230は、宛先に応じたポートを、アドレステーブル262から判別する。ここで、アドレステーブル262には、通信IF204のポート204P1〜204P4の接続されている機器(ここでは制御装置100および通信機器500)の通信アドレス等の情報が記録されている。アドレステーブル262は情報格納部260に格納されている。
宛先が通信中継機器200自身である場合、通信制御部230は、受信パケットの種別等に応じて、通信中継機器200内の担当の機能ブロックに受信パケットを引き渡す。
なお、宛先がアドレステーブル262に登録されておらず且つ当該宛先が通信中継機器200自身ではない場合、通信制御部230は受信パケットを破棄する。
また、中継処理は、後述するネットワーク確立処理を含む。当該ネットワーク確立処理はアドレステーブル262の作成処理を含む。
受託部250は、交渉処理と受託管理処理とを実行する。交渉処理は、制御装置100が外部通信による指示に従って実行する処理内容のうちで、当該通信中継機器200で受託する内容を、制御装置100の交渉部151と交渉することを含む。受託管理処理は、交渉処理によって受託の指定がなされた処理内容である指定内容、すなわち受託内容を実行すること、および、その実行のための管理を行うことを含む。
図4では、受託部250は、交渉処理を実行する交渉部251と、受託管理処理を実行する受託管理部252とを含んでいる。
交渉処理および受託管理処理の内容はプログラムとして準備され、それらのプログラムはメモリ202内に格納されている。すなわち、プロセッサ201がメモリ202内の交渉処理用のプログラムを実行することによって、交渉部251が実現される。また、プロセッサ201がメモリ202内の受託管理処理用のプログラムを実行することによって、受託管理部252が実現される。
指定内容のデータである指定内容データ263が、交渉部251によって情報格納部260に格納される。また、情報格納部260内の指定内容データ263は、受託管理部252等によって参照される。指定内容データ263は、制御装置100が保有している指定内容データ163と同様である。
情報格納部260はメモリ102によって実現される。図4によれば、情報格納部260には、アドレステーブル262と、指定内容データ263とが格納されている。なお、アドレステーブル262を格納している記憶領域を、アドレステーブル格納部と呼んでもよい。同様に、指定内容データ263を格納している記憶領域を、指定内容データ格納部と呼んでもよい。
また、図4によれば、情報格納部260には、指定内容関連データ264が格納されている。指定内容関連データ264は、指定内容の実行に関連するデータである。具体的には、指定内容が、制御装置100が保有しているデータの読み出し要求に対して応答することを含む場合、その読み出し対象データが指定内容関連データ264である。読み出し対象データは、制御装置100から供給され、情報格納部260に格納される。また、指定内容が、書き込み要求によって送信されてきた書き込み対象データを制御装置100に格納することを含む場合、その書き込み対象データが指定内容関連データ264である。書き込み対象データは、情報格納部260に一旦、格納され、後に制御装置100に供給される。指定内容関連データ264を格納している記憶領域を、指定内容関連データ格納部と呼んでもよい。
また、図4によれば、情報格納部260には、交渉指示情報265が格納されている。交渉指示情報265は、交渉処理を実行するか否かを指示する情報である。具体的には、交渉指示情報265が交渉処理の実行を指示している場合、交渉部251は交渉指示情報265を参照して交渉処理を実行する。これに対し、交渉指示情報265が交渉処理の実行を指示していない場合、交渉部251は交渉指示情報265を参照して交渉処理を実行しない。
交渉指示情報265を格納している記憶領域を、交渉指示情報格納部と呼んでもよい。ここで、交渉指示情報265は、いわゆるフラグによって表現することが可能である。具体的には、フラグの一の状態を交渉処理を実行することに割り当て、フラグの他の状態を交渉処理を実行しないことに割り当てれば、交渉指示情報格納部を1ビットの記憶容量によって実現できる。
交渉指示情報265の内容、換言すれば上記フラグの状態は、ユーザが通信機器500を使って設定するものとする。具体的には、ユーザが通信機器500を操作して交渉指示情報265の内容を入力し、それにより通信機器500が交渉指示情報265の内容設定用のパケットを通信中継機器200に送信する。通信中継機器200では、通信制御部230が受信パケットを交渉部251に引き渡し、交渉部251が受信パケットの指示に従って交渉指示情報265の内容を設定する。
<2.3.通信機器500の機能の概略>
図5に、通信機器500の機能ブロック図を示す。図5によれば、通信機器500は、通信制御部530と、指示発行部550と、情報格納部560とを含んでいる。なお、図5では、入力装置506および表示装置507の図示を省略している。
通信制御部530は、通信機器500の外部通信を制御する。通信制御部530は、通信IF504と、プロセッサ501と、メモリ502に格納されている通信制御部530用のプログラムとによって、実現される。すなわち、プロセッサ501が通信制御部530用のプログラムを実行し、且つ、プロセッサ501が通信IF504と協働することによって、外部通信処理が実行される。
外部通信処理は、送信処理と受信処理とを含む。送信処理において通信制御部530は、通信機器500内の機能ブロック、例えば指示発行部550が発行したパケットを取得し、当該パケットを、指定された宛先(ここでは制御装置100)に送信するための外部通信用の信号を生成し、生成した信号を通信IF504のポート504Pから出力する。他方、受信処理において通信制御部530は、通信IF504のポート504Pに到来した信号を、プロセッサ501が取り扱い可能な信号に変換し、その受信信号に含まれるパケットを解析し、受信パケットの種別等に応じて、通信機器500内の担当の機能ブロックに受信パケットを引き渡す。
また、外部通信処理は、後述するネットワーク確立処理を含む。当該ネットワーク確立処理はアドレステーブル562の作成処理を含む。アドレステーブル562には、通信IF504のポート504Pに接続されている機器(ここでは通信中継機器200)の通信アドレス等の情報が記録されている。アドレステーブル562は情報格納部560に格納されている。
指示発行部550は、制御装置100に与える指示を、予め規定されたタイミングで発行し、その指示を制御装置100に送信するためのパケットを生成し、当該指示パケットを通信制御部530に引き渡す。指示発行部550は、プロセッサ501と、メモリ502に格納されている指示発行部550用のプログラムとによって、実現される。すなわち、プロセッサ501が指示発行部550用のプログラムを実行することによって、指示発行処理が実行される。
情報格納部560はメモリ502によって実現される。図5によれば、情報格納部560には、アドレステーブル562が格納される。なお、アドレステーブル562を格納している記憶領域を、アドレステーブル格納部と呼でもよい。
<3.ネットワーク確立処理>
ここではEthernet、TCP/IP等の一般的な規格の下、ネットワーク確立処理を説明する。
制御装置100のポート104Pと通信中継機器200のポート204P3とがケーブルで接続されると、制御装置100の通信制御部130と通信中継機器200の通信制御部230とが、最初に、リンクアップとして通信方式、通信速度等を調整する。具体的には、通信方式として全二重と半二重とうちのいずれを用いるかが確定される。また、通信速度として10Mbpsと100Mbpsと1Gbpsとのうちのいずれを用いるかが確定される。
リンクアップの後、制御装置100の通信制御部130は自身の通信アドレス(Ethernetの場合はMACアドレス(Media Access Control address))を、リンクアップした相手である通信中継機器200の通信制御部230に通知する。同様に、通信中継機器200の通信制御部230は自身の通信アドレスを、制御装置100の通信制御部130に通知する。これにより、制御装置100の通信制御部130は、ポート104Pにどのような通信アドレスを有する機器が接続されているのかを識別することが可能になる。制御装置100の通信制御部130は、ポート104Pと、通信中継機器200の通信制御部230の通信アドレスとの対応付けを、アドレステーブル162に記録する。同様に、通信中継機器200の通信制御部230は、ポート204P3と、制御装置100の通信制御部130の通信アドレスとの対応付けをアドレステーブル262に記録する。
通信中継機器200のポート204P1と通信機器500のポート504Pとがケーブルで接続された場合も、同様の動作が行われる。その結果、通信機器500のアドレステーブル562には、ポート504Pと、通信中継機器200の通信制御部230の通信アドレスとの対応付けが記録される。また、通信中継機器200のアドレステーブル262には、ポート204P1と通信機器500の通信制御部530の通信アドレスとの対応付けが、記録される。
通信中継機器200のアドレステーブル262には、制御装置100との対応付けと、通信機器500との対応付けとが記録されている。このため、アドレステーブル262を参照すれば、制御装置100と通信機器500とが通信中継機器200を介して接続されているという通信経路情報を把握することができる。
<4.交渉処理>
ネットワークの確立後、制御装置100と通信中継機器200との間で交渉処理が行われる。図6に交渉処理を説明するフローチャートを示す。図6によれば、通信中継機器200では、ネットワークの確立後のステップS201において、受託部250の交渉部251が交渉処理を実行するか否かを決定する。具体的には、通信制御部230が交渉部251に対して、交渉処理を実行するか否かを問い合わせる。交渉部251は、その問い合わせを受けると、交渉指示情報265の内容に応じて、交渉処理を実行するか否かを決定する。
交渉指示情報265が交渉処理の実行を指示している場合、交渉部251は、次のステップS202において、制御装置100に対して、交渉処理の開始を通知する。具体的には、交渉部251は、交渉処理専用の通信パケットを生成し、当該パケットを制御装置100宛てに送信するように通信制御部230に依頼する。通信制御部230は、アドレステーブル262を参照して制御装置100宛てのポートがポート204P3であることを判別し、そのポート204P3からパケットを送信する。
制御装置100では、通信制御部130がパケットを受信すると、ステップS102において、受信パケットが交渉処理の開始を通知するものであるか否かが判別される。具体的には、通信制御部130が、受信パケットが交渉専用パケットであるか否かを判別する。判別の結果、受信パケットが交渉専用パケットである場合、通信制御部130は受信パケットを委託部150に引き渡す。委託部150は、引き渡された交渉専用パケットが交渉処理の開始を通知するものであるか否かを判別する。
判別の結果、受信パケットが交渉処理の開始を通知するものである場合、制御装置100の交渉部151と通信中継機器200の交渉部251とが交渉処理を実行する(ステップS103,S203)。
具体的には、制御装置100の交渉部151が、指定候補内容を受託してもらえるか否かを問い合わせるための交渉専用パケットを生成し、通信制御部130を介して通信中継機器200に送信する。ここで、指定候補とは、制御装置100が外部通信による指示に従って実行する処理内容のうちで通信中継機器200に委託する(換言すれば、通信中継機器で受託する)指定内容の候補のことである。また、指定候補内容とは、指定候補の処理内容のことである。どの処理内容を指定候補内容にするのかについては、予め規定されているものとする。
指定候補内容および指定内容は、処理単位の観点から規定することができる。すなわち、指定候補内容および指定内容は、複数の処理単位によって構成される内容でもよいし、あるいは、1つの処理単位であってもよい。後者の1つの処理単位として、TCP/IPでのHTTP(Hypertext Transfer Protocol)のように通信プロトコルにおいて特定のポートに割り当てられている通信サービス処理の単位が例示される。
また、指定候補内容および指定内容は、扱うデータの観点から規定することができる。例えば、指定したデータ(データ群である場合を含む)にアクセスする処理を、指定候補内容および指定内容として規定することができる。この場合、アクセス対象データの用途は限定されない。また、指定されていないデータに対するアクセスは実行されない。
通信中継機器200の通信制御部230が受信パケットが交渉専用パケットであると判別すると、受信パケットは受託部250に引き渡される。受託部250は受信パケットが指定候補内容の問い合わせであると判別すると、その問い合わせを交渉部251に検討させる。そして、交渉部251は、検討結果を通知するための交渉専用パケットを生成し、通信制御部230を介して制御装置100に送信する。
このように交渉専用パケットのやり取りによって、制御装置100での交渉処理のステップS103と、通信中継機器200での交渉処理のステップS203と、が実行される。
交渉の結果、通信中継機器200に委託する(換言すれば、通信中継機器で受託する)指定内容が決定した場合(ステップS104,S204)、制御装置100はステップS105において、指定内容データ163を生成して情報格納部160に格納する。同様に、通信中継機器200はステップS205において、指定内容データ263を生成して情報格納部260に格納する。
その後、制御装置100では、交渉部151が委託管理部152に交渉成立を通知することにより、委託管理部152がステップS106において委託準備処理を実行する。なお、委託準備処理は、指定内容の実行を管理する委託管理処理に含まれる。委託準備処理では、委託管理部152が、指定内容の実行に必要なプログラムおよびデータを、通信制御部130を介して通信中継機器200に転送する。
一方、通信中継機器200では、受託管理部252が交渉部251から交渉成立の通知を受けると、受託管理部252はステップS206において受託準備処理を実行する。なお、受託準備処理は、指定内容の実行およびその管理を行う受託管理処理に含まれる。受託準備処理では、受託管理部252は、制御装置100から送られてきたプログラムおよびデータを、通信制御部130を介して取得し、メモリ202に格納する。これにより、プロセッサ201が当該プログラムを実行することによって、受託管理部252に、指定内容を実行する機能が追加される。
委託準備処理において通信中継機器200に転送されるデータは、例えば制御関連データ161の一部または全部である。通信中継機器200の受託管理部252は当該データを、指定内容の実行に関連する指定内容関連データ264として、情報格納部260に格納する。後述のように、指定内容関連データ264は、委託管理処理および受託管理処理に含まれるデータ同期処理によって、制御装置100が保有する制御関連データ161と同期される。
なお、上記ステップS201において交渉部251が交渉処理を実行しないと決定した場合、その時点で通信中継機器200は図6のフローを終了する。また、制御装置100では、交渉部151が、ネットワーク確立後の予め規定された待ち時間の間に、交渉開始通知を受信しなかった場合、その時点で制御装置100は図6のフローを終了する。また、交渉不成立の場合(ステップS104,S204参照)も同様である。
なお、交渉処理を常に開始する構成では、ステップS201および交渉指示情報265が省略される。
ここで、交渉処理について、説明を加える。指定候補内容についての交渉処理は、その指定候補内容に関連する参考情報に基づいて実行される。参考情報には例えば次の7つの情報(1)〜(7)が含まれる。なお(1)〜(7)の数字は優先度等を表すものではない。
(1)指定候補内容が通信中継機器200の仕様に準拠しているか否かの情報、
(2)制御装置100が指定候補内容を実行するのにかかる実行時間、
(3)通信中継機器200が指定候補内容を実行するのにかかる実行時間、
(4)制御装置100が指定候補内容を実行するために割り当て可能な許容時間、
(5)通信中継機器200が指定候補内容を実行するために割り当て可能な許容時間、
(6)制御装置100において指定候補内容を実行するために利用可能なメモリリソース量、
(7)通信中継機器200において指定候補内容を実行するために利用可能なメモリリソース量。
上記(1)に関し、通信中継機器200が指定候補内容を仕様上、実行不能であれば、その指定候補内容は委託できない。
上記(2)および(3)に関し、指定候補内容の実行時間は、制御装置100および通信中継機器200の処理性能に依存する。すなわち、同じ処理(例えばHTTP通信プロトコルの処理)であっても、処理性能の差が実行時間の差として現れる。また、処理性能の各種項目を比較するよりも、実行時間を比較する方が簡便である。また、実行時間によれば、許容時間との比較がしやすい。
上記(4)および(5)に関し、制御装置100において指定候補内容のための許容時間が少ないほど、その指定候補内容を通信中継機器200に委託した方が、より好ましいと評価できる。また、通信中継機器200において指定候補内容のための許容時間が少ないほど、その指定候補内容を通信中継機器200に委託することの困難性が、より高いと評価できる。
上記(6)および(7)に関し、利用可能なメモリ量が大きければ、指定候補内容の処理上、より好ましいと評価できる。
上記(4)に関し、説明を加える。図7に、制御処理が一定時間の周期で、すなわち定期的に実行されることが要求されている場合のタイミングチャートを示す。制御処理の周期の長さすなわち上記一定時間をTcとし、制御処理の実行時間をTaとし、制御処理の休止時間をTbとすると、Tc=Ta+Tbが成り立つ。
制御装置100において指定候補内容を実行する場合、制御処理に支障が出ないようにするために、指定候補内容を制御処理の休止期間で行うことになる。このため、上記(4)に関し、制御装置100が指定候補内容を実行するために割り当て可能な許容時間はTbである。このとき、許容時間Tbの値は、上記一定時間Tcから上記実行時間Taを減算した値Tc−Taである。なお、制御処理が定期的に実行される限り、すなわちTcが一定である限り、制御処理の実行時間Taが異なっても、許容時間Tb=Tc−Taが成り立つ。
また、図8に、制御処理の開始タイミングに厳密性が要求されない場合、換言すれば開始タイミングが調整可能である場合のタイミングチャートを示す。この場合、各実行期間の後に休止期間を設け、当該休止期間を、制御装置100が指定候補内容を実行するために割り当て可能な許容時間として利用できる。
ここでは、当該許容時間を、実行時間に、予め規定された比率を乗算した値によって定義する。具体的には、制御処理の実行時間をTaとし、その制御処理の後の休止時間をTbとし、上記比率をKとすると、許容時間TbをTb=Ta×Kによって算出する。図8では各回の実行時間Ta1,Ta2,Ta3が異なり、Tb1=Ta1×K1、Tb2=Ta2×K2、および、Tb3=Ta3×K3によって、各回の許容時間Tb1,Tb2,Tb3を算出している。図8では比率K1,K2,K3の全てが異なるが、K1,K2,K3のうちの少なくとも2つが同じ値であってもよい。
上記のように図8では実行時間Ta1,Ta2,Ta3が異なるが、Ta1,Ta2,Ta3のうちの少なくとも2つが同じ値であってもよい。この場合も、比率K1,K2,K3の全てが異なってもよいし、あるいは、K1,K2,K3のうちの少なくとも2つが同じ値であってもよい。
制御処理の連続的な実行を優先する場合、比率K,K1,K2,K3の値は小さいほど、すなわち0に近いほど、より好ましい。逆に、許容時間の確保を優先する場合、比率K,K1,K2,K3の値は大きいほど、より好ましい。制御処理の実行と許容時間の確保とのいずれを優先するかは、制御装置100を利用するシステムの特性に拠る。このため、比率K,K1,K2,K3の値は、当該システムの設計者または利用者が通信機器500を使って設定および変更できるものとする。
なお、図8において制御処理の開始間隔Tc1,Tc2,Tc3は、Tc1=Ta1+Tb1、Tc2=Ta2+Tb2、および、Tc3=Ta3+Tb3によって、算出される。Tc1,Tc2,Tc3の全てが同じ場合、各回の制御処理が定期的に実行されることになる。逆に、Tc1,Tc2,Tc3のうちの少なくとも1つが異なれば、制御処理は不定期に実行されることになる。
<5.委託しない場合>
まず、通信中継機器200に処理を委託しない場合について説明する。ここでは、図6のフローを途中で終了し、そのため制御装置100用の指定内容データ163,263が生成されなかったものとする。図9に、通信中継機器200に処理を委託しない場合のシーケンス図を示す。
図9によれば通信機器500において、指示発行部550が指示パケットを発行し、当該パケットを制御装置100宛てに送信するように通信制御部530に依頼する。ここでは、指示パケットが、制御関連データ161の読み出し要求を指示するものとする。
通信中継機器200では、通信制御部230が上記指示パケットをポート204P1を介して受信する。通信制御部230は、受信パケットを解析することによって宛先が制御装置100であることを判別する。さらに、通信制御部230は、制御装置100用の指定内容データ263が情報格納部260に存在するか否かを判別する。ここでは制御装置100用の指定内容データ263は存在しないので、通信制御部230は次に、アドレステーブル262を参照して制御装置100宛てのポートがポート204P3であることを判別する。そして、通信制御部230は、受信パケットをポート204P3から送信する。
制御装置100では、通信制御部130がパケットを受信すると、通信制御部130は、受信パケットを解析することによって、当該パケットが、制御関連データ161の読み出し要求であることを判別する。さらに、通信制御部130は、制御装置100用の指定内容データ163が情報格納部160に存在するか否かを判別する。ここでは制御装置100用の指定内容データ163は存在しないので、通信制御部130は、当該読み出し要求を実行可能なデータアクセス部140に、当該パケットを引き渡す。データアクセス部140は、パケットの指示内容に従って、指示されている制御関連データ161を情報格納部160から読み出す。データアクセス部140は、読み出したデータ161を送信するための応答パケットを生成し、当該応答パケットを要求元である通信機器500宛てに送信するように通信制御部130に依頼する。
通信中継機器200では、通信制御部230が上記応答パケットをポート204P3を介して受信する。通信制御部230は、受信パケットを解析することによって宛先が通信機器500あることを判別し、さらに、アドレステーブル262を参照して通信機器500宛てのポートがポート204P1であることを判別する。そして、通信制御部230は、受信パケットをポート204P1から送信する。
通信機器500では、通信制御部530が応答パケットを取得し、指示発行部550に引き渡す。これにより、制御関連データ161の読み出し要求が完了する。
ここで、交渉処理の結果、制御装置100用の指定内容データ163,263が生成されたが、その指定内容に制御関連データ161の読み出し要求の実行が含まれていない場合も、上記と同様の処理が実行される。但し、制御装置100の通信制御部130が受信したパケットは、委託管理部152を経由して、データアクセス部140に引き渡される。すなわち、通信制御部130は、指定内容データ163が存在することを判別すると、受信パケットを委託管理部152に引き渡す。そして、委託管理部152が、当該パケットは制御関連データ161の読み出し要求であることを判別し、当該パケットをデータアクセス部140に引き渡す。
また、通信機器500が発行する指示パケットが、制御関連データ161の書き込み要求を指示するものである場合も、上記と同様の処理が行われる。但し、書き込み完了の報告を必要としない規格の場合、応答パケットの送信は不要である。なお、書き込み対象データが例えば制御対象90に設定する制御データである場合、その制御データが制御関連データ161として情報格納部160に格納されることによって、対象制御部120がその制御データを利用可能になる。
<6.委託する場合>
次に、通信中継機器200に処理を委託する場合、すなわち、制御装置100用の指定内容データ163,263が生成され、その指定内容に制御関連データ161の読み出し要求の実行が含まれている場合について説明する。図10に、通信中継機器200に処理を委託する場合のシーケンス図を示す。
図9のシーケンスと同様に、通信機器500からデータ読み出し要求の指示パケットが送信され、通信中継機器200が当該指示パケットを受信する。
通信中継機器200では、通信制御部230は、受信パケットを解析することによって宛先が制御装置100であることを判別する。さらに、通信制御部230は、制御装置100用の指定内容データ263が情報格納部260に存在するか否かを判別する。通信制御部230は、指定内容データ263の存在を確認すると、受信パケットを受託管理部252に引き渡す。
受託管理部252は、引き渡されたパケットを解析することによって、当該パケットが、制御関連データ161の読み出し要求の指示パケットであることを判別する。さらに受託管理部252は、制御関連データ161の読み出し要求が指定内容データ263に含まれていることを判別する。このため、受託管理部252は、パケットの指示内容に従って、指示されている制御関連データ161に対応する指定内容関連データ264を情報格納部260から読み出す。そして、受託管理部252は、読み出したデータ264を送信するための応答パケットを生成し、当該応答パケットを要求元である通信機器500宛てに送信するように通信制御部230に依頼する。
通信制御部230は、アドレステーブル262を参照して通信機器500宛てのポートがポート204P1であることを判別し、当該ポート204P1から応答パケットを送信する。
通信機器500では、通信制御部530が応答パケットを取得し、指示発行部550に引き渡す。これにより、制御関連データ161の読み出し要求が完了する。
ここで、委託しない場合でも説明したように、通信機器500が発行する指示パケットは、制御関連データ161の書き込み要求を指示するものであってもよい。その場合も上記と同様の処理が行われる。但し、書き込み完了の報告を必要としない規格の場合、応答パケットの送信は不要である。
<7.データ同期処理>
ここで、図10に示されているデータ同期処理を説明する。なお、データ同期処理は委託管理処理および受託管理処理に含まれる。データ同期処理は、通信中継機器200が保有している指定内容関連データ264を、制御装置100と通信中継機器200との間で同期させる処理である。なお、指定内容関連データ264が制御関連データ161の一部である場合、制御関連データ161のうちで指定内容関連データ264に対応するデータを同期させれば、指定内容の実行上、足りる。
図10で説明したように、指定内容が、制御装置100が保有しているデータの読み出し要求に対して応答することを含む場合、制御装置100におけるデータ同期処理では、制御装置100が保有しているその読み出し対象データを通信中継機器200に供給する。換言すれば、通信中継機器200におけるデータ同期処理では、制御装置100が保有しているその読み出し対象データを制御装置100から取得する。なお、読み出し対象データは例えば、制御対象90の状態を示すデータであり制御関連データ161として情報格納部160に格納されているデータである。
具体的には、制御装置100の委託管理部152が、データ同期処理のためのデータ送信であることを示す、委託管理処理専用のパケットを発行し、当該パケットを通信中継機器200宛てに送信するように通信制御部130に依頼する。通信中継機器200が当該パケットを受信すると、通信制御部230は受信パケットが委託管理専用のパケットであることを判別し、当該受信パケットを受託管理部252に引き渡す。受託管理部252は、当該パケットがデータ同期処理のためのものであることを判別し、パケットに含められていた同期対象データ(すなわち読み出し対象データ)を指定内容関連データ264として情報格納部260に格納する。その際、同じ指定内容関連データ264が既に存在する場合、既存のそのデータは更新される。
また、指定内容が、書き込み要求によって送信されてきた書き込み対象データを制御装置100に格納することを含む場合、通信中継機器200は、書き込み要求の実行によって、書き込み対象データを指定内容関連データ264として、情報格納部260に格納している。このため、通信中継機器200におけるデータ同期処理では、通信中継機器200が保有しているその指定内容関連データ264を、制御装置100に供給する。換言すれば、制御装置100におけるデータ同期処理では、通信中継機器200が保有しているその書き込み対象データを通信中継機器200から取得する。なお、書き込み対象データが例えば制御対象90に設定する制御データである場合、その制御データは制御関連データ161として情報格納部160に格納される。
具体的には、通信中継機器200の受託管理部252が、データ同期処理のためのデータ送信であることを示す、受託管理処理専用のパケットを発行し、当該パケットを制御装置100宛てに送信するように通信制御部230に依頼する。制御装置100が当該パケットを受信すると、通信制御部130は受信パケットが受託管理専用のパケットであることを判別し、当該受信パケットを委託管理部152に引き渡す。委託管理部152は、当該パケットがデータ同期処理のためのものであることを判別し、パケットに含められていた同期対象データ(すなわち書き込み対象データ)を情報格納部160に格納する。その際、同じ種別のデータが既に存在する場合、既存のそのデータは更新される。
なお、1回の同期処理において、制御装置100から通信中継機器200へのデータ送信と、通信中継機器200から制御装置100へのデータ送信と、の両方が行われる場合もある。
ここで、制御処理に対する干渉を回避するために、データ同期処理は制御処理の休止中に実行するのが好ましい。また、データ同期の目的からすると、データ同期処理は制御処理が休止する度に実行するのが好ましい。しかし、通信中継機器200は、制御装置100における制御処理の休止タイミングを把握できない。
かかる点に鑑みると、通信中継機器200から制御装置100へのデータ送信は、制御装置100からの問い合わせに応じて行えばよい。具体的には、制御装置100から通信中継機器200へのデータ送信が無い場合であっても、制御装置100の委託管理部152は、制御処理の休止中に、データ同期処理を起動し、通信中継機器200から制御装置100へのデータ送信が在るか否かを問い合わせる。通信中継機器200から制御装置100へのデータ送信が在る場合、その問い合わせに対する応答として、当該データ送信を行う。
また、データ同期処理の実行タイミングを、通信機器500からの指示パケットの受信タイミングと関連付けてもよい。例えば、通信中継機器200が通信機器500からのデータ読み出し要求を受信したタイミングで、通信中継機器200の受託管理部252が制御装置100の委託管理部152に、読み出し対象データの値が前回の読み出し時から更新されているか否かを問い合わせる。
当該データ値が更新されている場合、制御装置100の委託管理部152は更新後のデータ値を返信する。この場合、通信中継機器200の受託管理部252は、制御装置100から取得した更新後のデータを、読み出し対象データとして通信機器500に送信する。また、受託管理部252は、その更新後のデータを情報格納部260に格納する。
これに対し、読み出し対象データの値が前回から更新されていない場合、制御装置100の委託管理部152は更新無しの旨だけを返信する。この場合、通信中継機器200の受託管理部252は、情報格納部260に格納されている既存のデータを、読み出し対象データとして通信機器500に送信する。
<8.変形例>
なお、指定内容関連データ264は、制御関連データ161以外のデータであってもよい。
また、上記では、指定内容が単純なデータ読み出し要求およびデータ書き込み要求である場合を説明した。しかし、指定内容はこの例に限定されるものではない。
例えば、W3C(The World Wide Web Consortium)に規定されているHTTP(Hypertext Transfer Protocol)を、指定内容に含めることも可能である。すなわち、HTTPの場合も、指示パケットによって指示する内容は、最終的には制御装置100に対する何かしらのデータ読み出しまたはデータ書き込みである。このため、上記と同様の処理が行われる。
また、ISO/IEC19464として規定されているAMQP(Advanced Message Queuing Protocol)のような,いわゆるPublisher/Subscriber通信を、指定内容に含めることも可能である。なお、Publisher/SubscriberはProducer/Consumerと呼ばれることもある。Subscriber通信を例示すると、制御装置100が通信機器500に対してメッセージデータ発生時の購読(SubscribeまたはConsume)を登録する。登録後、メッセージデータが発生すると、当該メッセージデータが通信機器500から制御装置100宛てに送信される。通信中継機器200は、当該メッセージデータを受信すると、受信したメッセージデータを指定内容関連データ264として保有する。そして、通信中継機器200は、その後のデータ同期処理において、当該メッセージデータを制御装置100に供給する。
また、上記ではデータ読み出し要求およびデータ書き込み要求を例示したので、図3の制御装置100にはデータアクセス部140を、制御装置100が外部通信による指示に従って実行する処理内容を実行する外部指示実行部の一例として、図示している。しかし、交渉結果に係る指定内容が、データアクセス部140を利用しない処理内容だけを含む場合、委託管理処理の実行上、データアクセス部140は必須ではない。
<9.効果等>
実施の形態1によれば、制御装置100が外部通信による指示に従って実行する処理内容のうちの一部または全部を、通信中継機器200に委託することが可能である。このため、処理を委託することによって、制御装置100の負荷を低減し、制御性能の低下を回避することができる。また、負荷が低減することによって、制御装置に高性能なCPU等を用いる必要性が低くなる。このため、部品のコスト、換言すれば制御装置のコストを抑制することができる。
また、指定内容、すなわち委託内容は、制御装置100と通信中継機器200とが交渉することによって決まる。つまり、指定内容は自動的に決定される。このため、ユーザは制御装置100および通信中継機器200を簡便に利用することができる。また、制御装置100と通信中継機器200とが交渉するので、例えば制御装置100と通信中継機器200のうちの一方または両方を交換した場合であっても、柔軟に対応することができる。
また、交渉処理は指定候補内容に関連する参考情報に基づいて実行され、参考情報には例えば上記の7つの情報(1)〜(7)が含まれる。これによれば、制御装置100が実行する処理内容と、通信中継機器200に委託する処理内容とを、良好に割り当てることが可能になる。その結果、システム全体の応答性を良好にすることができる。
また、上記では情報(4)に関し、制御装置100が指定候補内容を実行するために割り当て可能な許容時間を、図7および図8を参照して説明した。図7および図8のいずれにおいても、交渉の際の指定候補内容、および、交渉後の指定内容は、制御処理の休止期間において実行される。これにより、制御処理に対する干渉を回避することができる。また、図8の場合、許容時間Tb1,Tb2,Tb3は、比率K1,K2,K3の設定によって、調整可能である。このため、図7の場合に比べて、システム全体の応答性を設計しやすい。
また、上記のデータ同期処理によれば、通信中継機器200に処理を委託しても、処理結果の信頼性を確保することができる。
<実施の形態2>
実施の形態1では、制御装置100は、委託後は、指定内容、すなわち委託内容について処理を実行しないものとした。これに対し、実施の形態2では、委託後であっても通信中継機器200から支援要請を受けた場合には、当該支援要請を受けた処理内容を制御装置100が実行する例を説明する。
具体的には、図6の交渉処理ステップS103,S203において、交渉部151,251は、委託後であっても通信中継機器200から支援要請を受けた処理内容については制御装置100が引き受け可能であることを、取り決めておく。その際、交渉部151,251は、通信中継機器200に委託する処理内容のうちで、制御装置100が引き受け可能な処理内容を予め取り決めておいてもよい。
そして、図6のステップS105,S205において、その取り決め内容を指定内容データ163,263に含める。取り決め内容は、いわゆるフラグによって表現することが可能である。具体的には、フラグの一の状態を引き受け可能であることに割り当て、フラグの他の状態を引き受け不可であることに割り当てれば、取り決め内容を1ビットの記憶容量によって実現できる。
なお、通信中継機器200が、受託後に、依頼元の制御装置に、指定内容を実行してもらうための支援要請を行うことは、受託管理処理に含まれる。同様に、制御装置100が、委託後に通信中継機器200から支援要請を受けた場合に、支援要請を受けた処理内容を実行することは、委託管理処理に含まれる。
通信中継機器200において、受託管理部252が複数の指定内容を同時期に実行すべき状況を把握した場合、受託管理部252は支援要請を行う。なお、同時期に複数の指定内容を実行するという表現は、複数の指定内容を実行する時刻が全く同じである場合だけでなく、予め規定された長さの期間中に複数の指定内容を実行する場合も含むものとする。
例えば、図11に示すように、受託管理部252がデータ読み出し要求#1を実行中に、さらに別のデータ読み出し要求#2を受信した状況は、複数の指定内容を同時期に実行すべき状況である。また、図12に示すように、同時期に複数のデータ読み出し要求(ここでは3つのデータ読み出し要求#1,#2,#3)を受信した状況も、複数の指定内容を同時期に実行すべき状況である。ここで、複数のデータ読み出し要求は、1つの通信機器500から発行されてもよいし、あるいは、複数の通信機器500(図2のネットワーク構成を参照)から発行されてもよい。なお、図11および図12ではデータ読み出し要求を例示しているが、他の種類の指示であってもよいし、複数種類の指示であってもよい。
図11では、通信中継機器200の受託管理部252は、先に受信したデータ読み出し要求#1についての処理が完了するのを待たずに、制御装置100に支援要請を行う。支援要請は、受託管理部252が、次に受信したデータ読み出し要求#2を、制御装置100に転送することによって、行われる。これによれば、2つの読み出し要求#1,#2が、通信中継機器200の受託管理部252および制御装置100の委託管理部152によって、並行的に処理される。
また、同時期に受信した複数の指示を、受託管理部252と委託管理部152とで分担することによって、並行的に処理が実行される。図12では、データ読み出し要求#1,#3が通信中継機器200に割り当てられ、データ読み出し要求#2が制御装置100に割り当てられている。同時期に受信した複数の指示の割り当ては、実施の形態1で説明した交渉処理と同様に行うことができる。
すなわち、実施の形態1では、指定候補内容についての交渉処理を、その指定候補内容に関連する参考情報に基づいて実行することを説明した。また、参考情報として上記の7つの情報(1)〜(7)を説明した。かかる点に鑑みると、複数の指示を割り当てる場合も、各指示を上記参照情報に基づいて評価すれば、制御装置100に引き受けてもらう指示を適切に抽出できる。その際、通信中継機器200と制御装置100とで並行的に実行する場合にかかる時間が最小になるように、割り当てを決定するのが好ましい。
また、制御処理に対する干渉を回避するために、制御装置100が制御処理の合間に実行可能な指示を制御装置100に割り当てることも、好ましい。
これらの観点に鑑みると、通信中継機器200の受託管理部252は、支援要請規則に基づいて支援要請内容を決定し、支援要請内容について支援要請を行えばよい。支援要請規則は次の3つの規則(a)〜(c)のうちの少なくとも1つを含む。なお(a)〜(c)のアルファベットの順番は優先度等を表すものではない。
(a)実行待ちの指定内容が現に発生している場合、実行待ちの指定内容を支援要請内容に決定する。
(b)複数の指定内容を通信中継機器200と制御装置100とで並行的に実行する場合にかかる時間が最小になるように、支援要請内容を決定する。
(c)制御装置100が制御処理の合間に実行可能な内容を支援要請内容に決定する。
実施の形態2によれば、制御装置100は、委託後であっても通信中継機器200から支援要請を受けた場合には、当該支援要請を受けた処理内容を実行する。このため、状況に応じて処理内容を再分配することが可能である。特に受託管理部252が複数の指定内容を同時期に実行すべき状況が発生した場合には、通信中継機器200と制御装置100とによる並行的処理は、全体の処理時間を短縮することができる。また、指示の発行元である1つまたは複数の通信機器500に対して、良好な応答性を確保することができる。それらのことは、システム全体の応答性の低下を回避することにも繋がる。
ここで、通信中継機器200と制御装置100とのそれぞれが通信機器500に応答が必要な処理内容を実行する場合(例えばデータ読み出し要求を実行する場合)において、通信中継機器200は、通信中継機器200が実行した処理内容について応答を終了した後に、制御装置100で実行した処理内容について応答を送信する。仮に制御装置100における処理が先に終了した場合であっても、通信中継機器200が実行した処理内容についての応答パケットを先に送信する。これによれば、データ値の時間的順序を保証することができる。すなわち、データ同期処理の実行タイミングの都合で、通信中継機器200が保有するデータの値が、制御装置100が保有するデータの値よりも古い場合であっても、新しいデータ値が先に通信機器500に到達するのを防止できる。
<実施の形態1,2に共通の変形例>
実施の形態1,2では、図1のハードウェア構成図に基づき、制御装置100の委託部150等の機能ブロックがソフトウェア的に実現されるものとした。これに対し、委託部150等の機能を、専用の処理回路によって、すなわちハードウェアによって実現することも可能である。そのような場合のハードウェア構成図を図13に示す。図13の制御装置100Cは、図1のプロセッサ101とメモリ102とを処理回路110に変更した構成を有している。処理回路110は、委託部150等の機能をハードウェアによって実現した回路である。
同様に図13では、通信中継機器200Cは、図1のプロセッサ201とメモリ202とを、受託部250等の機能をハードウェアによって実現した処理回路210に変更した構成を有している。ここで、通信中継機器200Cが制御装置100,100Cの機能を受託するために、処理回路210は、受託することが想定される各種機能をハードウェアによって実現した回路を含んでいる。また、通信機器500Cは、図1のプロセッサ501とメモリ502とを、指示発行部550等の機能をハードウェアによって実現した処理回路510に変更した構成を有している。
なお、制御装置100の委託部150等の機能を、ソフトウェアとハードウェアとの組み合わせによって実現してもよい。通信中継機器200および通信機器500についても同様である。
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
90 制御対象、100,100A〜100C 制御装置、120 対象制御部、130 通信制御部、150 委託部、151 交渉部、152 委託管理部、161 制御関連データ、163 指定内容データ(委託内容データ)、200,200C 通信中継機器、230 通信制御部、250 受託部、251 交渉部、252 受託管理部、263 指定内容データ(受託内容データ)、264 指定内容関連データ、300,300C 通信システム(制御システム)、500,500A〜500C 通信機器(通信相手)、Ta,Ta1〜Ta3 実行時間、Tb,Tb1〜Tb3 許容時間、Tc 周期の長さ(一定時間)、K,K1,K2,K3 比率。

Claims (29)

  1. 制御対象を制御する制御装置であって、
    前記制御対象の制御処理を実行する対象制御部と、
    当該制御装置の外部通信を制御する通信制御部と、
    当該制御装置が前記外部通信による指示に従って実行する処理内容のうちで、前記通信制御部と通信相手との間に設けられている通信中継機器に委託する内容を、前記通信中継機器と交渉する交渉処理と、前記交渉処理によって委託の指定がなされた処理内容である指定内容の実行を管理する委託管理処理と、を実行する委託部と
    を備え
    前記委託部は、指定候補内容についての前記交渉処理を、前記指定候補内容に関連する参考情報に基づいて実行し、
    前記参考情報は、
    前記指定候補内容が前記通信中継機器の仕様に準拠しているか否かの情報と、
    当該制御装置が前記指定候補内容を実行するのにかかる実行時間と、
    前記通信中継機器が前記指定候補内容を実行するのにかかる実行時間と、
    当該制御装置が前記指定候補内容を実行するために割り当て可能な許容時間と、
    前記通信中継機器が前記指定候補内容を実行するために割り当て可能な許容時間と、
    当該制御装置において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    前記通信中継機器において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    を含む、制御装置。
  2. 前記制御処理は一定時間の周期で実行され、当該制御装置の前記許容時間は、前記一定時間から当該制御装置の前記実行時間を減算した値である、請求項1に記載の制御装置。
  3. 当該制御装置の前記許容時間は、当該制御装置の前記実行時間に、予め規定された比率を乗算した値である、請求項1に記載の制御装置。
  4. 前記委託管理処理は、前記指定内容に関連するデータを、当該制御装置と前記通信中継機器との間で同期させるデータ同期処理を含む、請求項1から請求項3のうちのいずれか一項に記載の制御装置。
  5. 前記指定内容は、当該制御装置が保有しているデータの読み出し要求に対して応答することを含み、
    前記データ同期処理は、前記データを前記通信中継機器に供給することを含む、
    請求項4に記載の制御装置。
  6. 前記指定内容は、書き込み要求によって送信されてきた書き込み対象データを当該制御装置に格納することを含み、
    前記データ同期処理は、前記書き込み対象データを前記通信中継機器から取得することを含む、
    請求項4または請求項5に記載の制御装置。
  7. 前記委託管理処理は、委託後に前記通信中継機器から、前記指定内容を実行してもらうための支援要請を受けた場合に、前記支援要請を受けた処理内容を当該制御装置に実行させることを含む、請求項1から請求項6のうちのいずれか一項に記載の制御装置。
  8. 当該制御装置は委託後は前記指定内容を実行しない、請求項1から請求項6のうちのいずれか一項に記載の制御装置。
  9. 制御対象を制御する制御装置であって、
    前記制御対象の制御処理を実行する対象制御部と、
    当該制御装置の外部通信を制御する通信制御部と、
    当該制御装置が前記外部通信による指示に従って実行する処理内容のうちで、前記通信制御部と通信相手との間に設けられている通信中継機器に委託する内容を、前記通信中継機器と交渉する交渉処理と、前記交渉処理によって委託の指定がなされた処理内容である指定内容の実行を管理する委託管理処理と、を実行する委託部と
    を備え
    前記委託管理処理は、委託後に前記通信中継機器から、前記指定内容を実行してもらうための支援要請を受けた場合に、前記支援要請を受けた処理内容を当該制御装置に実行させることを含む、制御装置。
  10. 通信を中継する通信中継機器であって、
    制御対象の制御処理を実行する制御装置が接続されることによって前記制御装置の外部通信を中継する通信制御部と、
    前記制御装置が前記外部通信による指示に従って実行する処理内容のうちで、当該通信中継機器で受託する内容を、前記制御装置と交渉する交渉処理と、前記交渉処理によって受託の指定がなされた処理内容である指定内容の実行およびその管理を行う受託管理処理と、を実行する受託部と
    を備え
    前記受託部は、指定候補内容についての前記交渉処理を、前記指定候補内容に関連する参考情報に基づいて実行し、
    前記参考情報は、
    前記指定候補内容が当該通信中継機器の仕様に準拠しているか否かの情報と、
    前記制御装置が前記指定候補内容を実行するのにかかる実行時間と、
    当該通信中継機器が前記指定候補内容を実行するのにかかる実行時間と、
    前記制御装置が前記指定候補内容を実行するために割り当て可能な許容時間と、
    当該通信中継機器が前記指定候補内容を実行するために割り当て可能な許容時間と、
    前記制御装置において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    当該通信中継機器において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    を含む、通信中継機器。
  11. 前記受託管理処理は、前記指定内容に関連するデータを、前記制御装置と当該通信中継機器との間で同期させるデータ同期処理を含む、請求項10に記載の通信中継機器。
  12. 前記指定内容は、前記制御装置が保有しているデータの読み出し要求に対して応答することを含み、
    前記データ同期処理は、前記データを前記制御装置から取得することを含む、
    請求項11に記載の通信中継機器。
  13. 前記指定内容は、書き込み要求によって送信されてきた書き込み対象データを前記制御装置に格納することを含み、
    前記データ同期処理は、前記書き込み対象データを前記制御装置に供給することを含む、
    請求項11または請求項12に記載の通信中継機器。
  14. 前記受託管理処理は、受託後に、依頼元の制御装置に、前記指定内容を実行してもらうための支援要請を行うことを含む、請求項10から請求項13のうちのいずれか一項に記載の通信中継機器。
  15. 前記受託部が複数の指定内容を同時期に実行すべき状況を把握した場合、前記受託部は、支援要請規則に基づいて支援要請内容を決定し、前記支援要請内容について前記支援要請を行う、請求項14に記載の通信中継機器。
  16. 前記支援要請規則は、
    実行待ちの指定内容が現に発生している場合、前記実行待ちの指定内容を前記支援要請内容に決定する、という規則と、
    前記複数の指定内容を当該通信中継機器と前記制御装置とで並行的に実行する場合にかかる時間が最小になるように、前記支援要請内容を決定する、という規則と、
    前記制御装置が前記制御処理の合間に実行可能な内容を前記支援要請内容に決定する、という規則と
    のうちの少なくとも1つを含む、請求項15に記載の通信中継機器。
  17. 前記受託部と前記制御装置とのそれぞれが前記外部通信の通信相手に応答が必要な処理内容を実行する場合、当該通信中継機器は、前記受託部が実行した前記処理内容について前記応答を終了した後に、前記制御装置で実行した前記処理内容について前記応答を送信する、請求項15または請求項16に記載の通信中継機器。
  18. 通信を中継する通信中継機器であって、
    制御対象の制御処理を実行する制御装置が接続されることによって前記制御装置の外部通信を中継する通信制御部と、
    前記制御装置が前記外部通信による指示に従って実行する処理内容のうちで、当該通信中継機器で受託する内容を、前記制御装置と交渉する交渉処理と、前記交渉処理によって受託の指定がなされた処理内容である指定内容の実行およびその管理を行う受託管理処理と、を実行する受託部と
    を備え
    前記受託管理処理は、受託後に、依頼元の制御装置に、前記指定内容を実行してもらうための支援要請を行うことを含む、通信中継機器。
  19. 前記受託部が複数の指定内容を同時期に実行すべき状況を把握した場合、前記受託部は、支援要請規則に基づいて支援要請内容を決定し、前記支援要請内容について前記支援要請を行う、請求項18に記載の通信中継機器。
  20. 前記支援要請規則は、
    実行待ちの指定内容が現に発生している場合、前記実行待ちの指定内容を前記支援要請内容に決定する、という規則と、
    前記複数の指定内容を当該通信中継機器と前記制御装置とで並行的に実行する場合にかかる時間が最小になるように、前記支援要請内容を決定する、という規則と、
    前記制御装置が前記制御処理の合間に実行可能な内容を前記支援要請内容に決定する、という規則と
    のうちの少なくとも1つを含む、請求項19に記載の通信中継機器。
  21. 前記受託部と前記制御装置とのそれぞれが前記外部通信の通信相手に応答が必要な処理内容を実行する場合、当該通信中継機器は、前記受託部が実行した前記処理内容について前記応答を終了した後に、前記制御装置で実行した前記処理内容について前記応答を送信する、請求項19または請求項20に記載の通信中継機器。
  22. 制御対象の制御処理を実行する制御装置と、
    前記制御装置と通信相手との間の外部通信を中継する通信中継機器と
    を備え、
    前記制御装置と前記通信中継機器とは、前記制御装置が前記外部通信による指示に従って実行する処理内容のうちで、前記通信中継機器が実行する内容を、互いに交渉する交渉処理を実行し、
    前記制御装置は、前記交渉処理によって委託の指定がなされた処理内容である指定内容の実行を管理する委託管理処理を実行し、
    前記通信中継機器は、前記指定内容の実行およびその管理を行う受託管理処理を実行し、
    前記制御装置と前記通信中継機器とは、指定候補内容についての前記交渉処理を、前記指定候補内容に関連する参考情報に基づいて実行し、
    前記参考情報は、
    前記指定候補内容が前記通信中継機器の仕様に準拠しているか否かの情報と、
    前記制御装置が前記指定候補内容を実行するのにかかる実行時間と、
    前記通信中継機器が前記指定候補内容を実行するのにかかる実行時間と、
    前記制御装置が前記指定候補内容を実行するために割り当て可能な許容時間と、
    前記通信中継機器が前記指定候補内容を実行するために割り当て可能な許容時間と、
    前記制御装置において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    前記通信中継機器において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    を含む、通信システム。
  23. 制御対象の制御処理を実行する制御装置と、
    前記制御装置と通信相手との間の外部通信を中継する通信中継機器と
    を備え、
    前記制御装置と前記通信中継機器とは、前記制御装置が前記外部通信による指示に従って実行する処理内容のうちで、前記通信中継機器が実行する内容を、互いに交渉する交渉処理を実行し、
    前記制御装置は、前記交渉処理によって委託の指定がなされた処理内容である指定内容の実行を管理する委託管理処理を実行し、
    前記通信中継機器は、前記指定内容の実行およびその管理を行う受託管理処理を実行し、
    前記受託管理処理は、受託後に、依頼元の制御装置に、前記指定内容を実行してもらうための支援要請を行うことを含み、
    前記委託管理処理は、委託後に前記通信中継機器から前記支援要請を受けた場合に、前記支援要請を受けた処理内容を前記制御装置に実行させることを含む、
    通信システム。
  24. 制御装置の動作方法であって、
    制御対象の制御処理を実行することと、
    当該制御装置が外部通信による指示に従って実行する処理内容のうちで、当該制御装置と通信相手との間に設けられている通信中継機器に委託する内容を、前記通信中継機器と交渉する交渉処理を実行することと、
    前記交渉処理によって委託の指定がなされた処理内容である指定内容の実行を管理する委託管理処理を実行することと
    指定候補内容についての前記交渉処理を、前記指定候補内容に関連する参考情報に基づいて実行することと
    を備え
    前記参考情報は、
    前記指定候補内容が前記通信中継機器の仕様に準拠しているか否かの情報と、
    当該制御装置が前記指定候補内容を実行するのにかかる実行時間と、
    前記通信中継機器が前記指定候補内容を実行するのにかかる実行時間と、
    当該制御装置が前記指定候補内容を実行するために割り当て可能な許容時間と、
    前記通信中継機器が前記指定候補内容を実行するために割り当て可能な許容時間と、
    当該制御装置において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    前記通信中継機器において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    を含む、制御装置の動作方法。
  25. 制御装置の動作方法であって、
    制御対象の制御処理を実行することと、
    当該制御装置が外部通信による指示に従って実行する処理内容のうちで、当該制御装置と通信相手との間に設けられている通信中継機器に委託する内容を、前記通信中継機器と交渉する交渉処理を実行することと、
    前記交渉処理によって委託の指定がなされた処理内容である指定内容の実行を管理する委託管理処理を実行することと
    を備え
    前記委託管理処理は、委託後に前記通信中継機器から、前記指定内容を実行してもらうための支援要請を受けた場合に、前記支援要請を受けた処理内容を当該制御装置に実行させることを含む、制御装置の動作方法。
  26. 通信中継機器の動作方法であって、
    制御装置が接続されることによって前記制御装置の外部通信を中継することと、
    前記制御装置が前記外部通信による指示に従って実行する処理内容のうちで、当該通信中継機器で受託する内容を、前記制御装置と交渉する交渉処理を実行することと、
    前記交渉処理によって受託の指定がなされた処理内容である指定内容の実行およびその管理を行う受託管理処理をすることと、
    指定候補内容についての前記交渉処理を、前記指定候補内容に関連する参考情報に基づいて実行することと
    を備え
    前記参考情報は、
    前記指定候補内容が当該通信中継機器の仕様に準拠しているか否かの情報と、
    前記制御装置が前記指定候補内容を実行するのにかかる実行時間と、
    当該通信中継機器が前記指定候補内容を実行するのにかかる実行時間と、
    前記制御装置が前記指定候補内容を実行するために割り当て可能な許容時間と、
    当該通信中継機器が前記指定候補内容を実行するために割り当て可能な許容時間と、
    前記制御装置において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    当該通信中継機器において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    を含む、通信中継機器の動作方法。
  27. 通信中継機器の動作方法であって、
    制御装置が接続されることによって前記制御装置の外部通信を中継することと、
    前記制御装置が前記外部通信による指示に従って実行する処理内容のうちで、当該通信中継機器で受託する内容を、前記制御装置と交渉する交渉処理を実行することと、
    前記交渉処理によって受託の指定がなされた処理内容である指定内容の実行およびその管理を行う受託管理処理をすることと、
    を備え
    前記受託管理処理は、受託後に、依頼元の制御装置に、前記指定内容を実行してもらうための支援要請を行うことを含む、通信中継機器の動作方法。
  28. 制御装置と通信中継機器とを含んだ通信システムの制御方法であって、
    前記制御装置に、制御対象の制御処理を実行させることと、
    前記通信中継機器に、前記制御装置と通信相手との間の外部通信を中継させることと、
    前記制御装置が前記外部通信による指示に従って実行する処理内容のうちで、前記通信中継機器に委託する内容を交渉する交渉処理を、前記制御装置と前記通信中継機器と実行させることと、
    前記交渉処理によって委託の指定がなされた処理内容である指定内容の実行を管理する委託管理処理を、前記制御装置に実行させることと、
    前記指定内容の実行およびその管理を行う受託管理処理を、前記通信中継機器に実行させることと
    前記制御装置と前記通信中継機器とに、指定候補内容についての前記交渉処理を、前記指定候補内容に関連する参考情報に基づいて実行させることと
    を備え
    前記参考情報は、
    前記指定候補内容が前記通信中継機器の仕様に準拠しているか否かの情報と、
    前記制御装置が前記指定候補内容を実行するのにかかる実行時間と、
    前記通信中継機器が前記指定候補内容を実行するのにかかる実行時間と、
    前記制御装置が前記指定候補内容を実行するために割り当て可能な許容時間と、
    前記通信中継機器が前記指定候補内容を実行するために割り当て可能な許容時間と、
    前記制御装置において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    前記通信中継機器において前記指定候補内容を実行するために利用可能なメモリリソース量と、
    を含む、通信システムの制御方法。
  29. 制御装置と通信中継機器とを含んだ通信システムの制御方法であって、
    前記制御装置に、制御対象の制御処理を実行させることと、
    前記通信中継機器に、前記制御装置と通信相手との間の外部通信を中継させることと、
    前記制御装置が前記外部通信による指示に従って実行する処理内容のうちで、前記通信中継機器に委託する内容を交渉する交渉処理を、前記制御装置と前記通信中継機器と実行させることと、
    前記交渉処理によって委託の指定がなされた処理内容である指定内容の実行を管理する委託管理処理を、前記制御装置に実行させることと、
    前記指定内容の実行およびその管理を行う受託管理処理を、前記通信中継機器に実行させることと
    を備え
    前記受託管理処理は、受託後に、依頼元の制御装置に、前記指定内容を実行してもらうための支援要請を行うことを含み、
    前記委託管理処理は、委託後に前記通信中継機器から前記支援要請を受けた場合に、前記支援要請を受けた処理内容を前記制御装置に実行させることを含む、
    通信システムの制御方法。
JP2016128428A 2016-06-29 2016-06-29 制御装置およびその動作方法、通信中継機器およびその動作方法、ならびに、通信システムおよびその制御方法 Active JP6656099B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016128428A JP6656099B2 (ja) 2016-06-29 2016-06-29 制御装置およびその動作方法、通信中継機器およびその動作方法、ならびに、通信システムおよびその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016128428A JP6656099B2 (ja) 2016-06-29 2016-06-29 制御装置およびその動作方法、通信中継機器およびその動作方法、ならびに、通信システムおよびその制御方法

Publications (2)

Publication Number Publication Date
JP2018006887A JP2018006887A (ja) 2018-01-11
JP6656099B2 true JP6656099B2 (ja) 2020-03-04

Family

ID=60946456

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016128428A Active JP6656099B2 (ja) 2016-06-29 2016-06-29 制御装置およびその動作方法、通信中継機器およびその動作方法、ならびに、通信システムおよびその制御方法

Country Status (1)

Country Link
JP (1) JP6656099B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH117310A (ja) * 1997-06-18 1999-01-12 Omron Corp データ通信方法および装置
JP2002269394A (ja) * 2001-03-14 2002-09-20 Sony Corp 分散処理仲介システムおよび方法
JP2002358105A (ja) * 2001-05-31 2002-12-13 Digital Electronics Corp 制御用コンピュータ、そのプログラム、および、それが記録された記録媒体
JP2008033570A (ja) * 2006-07-27 2008-02-14 Digital Electronics Corp 制御システム、制御システムにおける認証方法、プログラム及びコンピュータ読み取り可能な記録媒体
JP6009634B2 (ja) * 2015-08-19 2016-10-19 三菱電機株式会社 制御装置切替システム

Also Published As

Publication number Publication date
JP2018006887A (ja) 2018-01-11

Similar Documents

Publication Publication Date Title
US11082281B2 (en) Relay communication method and relay communication device
JP3805725B2 (ja) 相異なるミドルウェアを使用するホームネットワーク上のデバイス間のメッセージの受け渡しを可能にするゲートウェイ、ホームネットワークシステム及びメッセージ受け渡し方法
US10063669B2 (en) Communication device, management device, processing method, and computer-readable recording medium having processing program stored therein
US9774651B2 (en) Method and apparatus for rapid data distribution
US20140068045A1 (en) Network system and virtual node migration method
US11917027B2 (en) Method and system for providing time-critical services
US20150256622A1 (en) Connection management device, communication system, connection management method, and computer program product
KR20130107618A (ko) Usb 디바이스 장치의 데이터를 클라이언트 단말을 통해 서버로 전송하는 데이터 처리 방법 및 클라이언트 단말
US8854977B2 (en) Relay node
WO2009093473A1 (ja) 中継装置、端末、優先通信制御方法、プログラム及び記録媒体
CN112104679B (zh) 处理超文本传输协议请求的方法、装置、设备和介质
JP5775149B2 (ja) ステーション、ターゲット装置、イニシエータ装置、通信システム及び通信方法
CN108989157B (zh) 用于智能设备控制的方法、装置
JP2020048030A (ja) インタフェース装置及びプログラム並びにデータ通信方法
JP6656099B2 (ja) 制御装置およびその動作方法、通信中継機器およびその動作方法、ならびに、通信システムおよびその制御方法
JP2009188655A (ja) 通信制御方法、情報処理システム、情報処理装置及びプログラム
US8930564B2 (en) Communication relay apparatus, data processing system, and communication relay method
US11522762B2 (en) Coordination device and method for providing control applications via a communication network for transmitting time-critical data
JP2010146246A (ja) マルチエージェントシステム用フレームワークコンピュータプログラム、ネットワークシステム、及びエージェント間通信方法
CN112445628B (zh) 进程间资源共享方法、装置与电子设备
JP6304978B2 (ja) 中継装置、情報処理方法及びプログラム
JP7184108B2 (ja) 通信システム、通信制御方法、およびプログラム
CN104348898B (zh) 信息处理系统、信息处理装置以及方法
US20160006802A1 (en) Data sharing system
JP7259099B2 (ja) マルチルート通信システムおよびルート選択システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181022

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190820

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191009

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200204

R150 Certificate of patent or registration of utility model

Ref document number: 6656099

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250