JP2007328480A - アプリケーションプログラム間で連携動作を行うシステム - Google Patents
アプリケーションプログラム間で連携動作を行うシステム Download PDFInfo
- Publication number
- JP2007328480A JP2007328480A JP2006158017A JP2006158017A JP2007328480A JP 2007328480 A JP2007328480 A JP 2007328480A JP 2006158017 A JP2006158017 A JP 2006158017A JP 2006158017 A JP2006158017 A JP 2006158017A JP 2007328480 A JP2007328480 A JP 2007328480A
- Authority
- JP
- Japan
- Prior art keywords
- application
- indicated
- connector
- slot
- network
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Small-Scale Networks (AREA)
Abstract
【課題】 アプリケーションプログラム間での連携動作を容易に実現することが可能なシステムを実現する。
【解決手段】 ネットワークを介して相互に接続された複数のフィールド機器上で動作するアプリケーションプログラム間で連携動作を行うシステムにおいて、OSで動作するアプリケーション管理機能が記憶手段からアプリケーション、スロット及びコネクタをそれぞれ読み出してアプリケーション、スロット及びコネクタをそれぞれ起動させると共に、アプリケーションにスロットを登録させスロットにコネクタを登録させるOSが稼動する第1及び第2のフィールド機器とを備え、第1及び第2のフィールド機器でそれぞれ動作するアプリケーションが1組のスロットで構成されるチャネルインターフェースを介して1組のコネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行う。
【選択図】 図1
【解決手段】 ネットワークを介して相互に接続された複数のフィールド機器上で動作するアプリケーションプログラム間で連携動作を行うシステムにおいて、OSで動作するアプリケーション管理機能が記憶手段からアプリケーション、スロット及びコネクタをそれぞれ読み出してアプリケーション、スロット及びコネクタをそれぞれ起動させると共に、アプリケーションにスロットを登録させスロットにコネクタを登録させるOSが稼動する第1及び第2のフィールド機器とを備え、第1及び第2のフィールド機器でそれぞれ動作するアプリケーションが1組のスロットで構成されるチャネルインターフェースを介して1組のコネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行う。
【選択図】 図1
Description
本発明は、ネットワークを介して相互に接続された複数のフィールド機器上で動作するアプリケーションプログラム間で連携動作を行うシステムに関し、特にアプリケーションプログラム間での連携動作を容易に実現することが可能なシステムに関する。
従来のネットワークを介して相互に接続された複数のフィールド機器上で動作するアプリケーションプログラム間で連携動作を行うシステムに関連する先行技術文献としては次のようなものがある。
図7はこのような従来のアプリケーションプログラム間で連携動作を行うシステムの一例を示す構成ブロック図である。
図7において1,2,3,4及び5はセンサ、アクチュエータ、コントローラ、通信測定器、計測器、記録装置、サーバ等の分散配置されたフィールド機器、100はLAN(Local Area Network)、WAN(Wide Area Network)やインターネット等の汎用のネットワークである。
フィールド機器1,2,3,4及び5はネットワーク100にそれぞれ相互に接続される。また、各フィールド機器1,2,3,4及び5上では図7中”AP01”、”AP02”、”AP03”、”AP04”及び”AP05”に示すアプリケーションプログラム(以下、単にアプリケーションと呼ぶ。)が動作している。
ここで、図7に示す従来例の動作を図8及び図9を用いて説明する。図8は従来例の動作を説明する説明図、図9はアプリケーションが共通プロトコルに準拠していることを説明する説明図である。
そして、図8中”RL11”に示す連携(論理的なつながり)によってフィールド機器1上で動作する図8中”AP01”に示すアプリケーションは、フィールド機器2上で動作する図8中”AP02”に示すアプリケーションとの間でデータのやり取り等の連携を行う。
例えば、図8中”AP01”、”AP02”、”AP03”、”AP04”及び”AP05”に示すアプリケーションは共通プロトコルに準拠しており、図9に示すように図9中”AP01”に示すアプリケーションには、図9中”PR21”に示すように共通のプロトコルや連携の通信先の指定方法等がそれぞれ実装されている。
このような状態で、図8中”AP01”に示すアプリケーションが、フィールド機器1、ネットワーク100及びフィールド機器2を介して図8中”AP02”に示すアプリケーションとの間で共通プロトコル(図9中”PR21”)を用いて通信を行うことにより、図8中”AP01”及び”AP02”に示すアプリケーションが相互に連携することになる。
同様に、図8中”RL12”に示す連携(論理的なつながり)によってフィールド機器2上で動作する図8中”AP02”に示すアプリケーションは、フィールド機器3上で動作する図8中”AP03”に示すアプリケーションとの間でデータのやり取り等の連携を行う。
同様に、図8中”RL13”に示す連携(論理的なつながり)によってフィールド機器3上で動作する図8中”AP03”に示すアプリケーションは、フィールド機器4上で動作する図8中”AP04”に示すアプリケーションとの間でデータのやり取り等の連携を行う。
最後に、図8中”RL14”に示す連携(論理的なつながり)によってフィールド機器4上で動作する図8中”AP04”に示すアプリケーションは、フィールド機器5上で動作する図8中”AP05”に示すアプリケーションとの間でデータのやり取り等の連携を行う。
この結果、フィールド機器上で動作するアプリケーションがフィールド機器及びネットワークを介して他のフィールド機器上で動作するアプリケーションとの間で共通のプロトコルを用いて通信を行うことにより、ネットワークに分散配置された複数のフィールド機器上で動作するアプリケーションが相互に連携するシステムを構築することができる。
また、図10は従来のアプリケーションプログラム間で連携動作を行うシステムの他の一例を示す構成ブロック図であり、特に、フィールドバスに準拠して構築されたシステムである。
図10において6は流路(図示せず)の流量を計測するフィールド機器である流量計、7はPID(Proportional Integral Differential)制御を行うフィールド機器であるコントローラ、8はバルブ(図示せず)の開度を制御して流路(図示せず)の流量を調整するフィールド機器であるバルブ調節計である。
流量計6、コントローラ7及びバルブ調節計8は図示しないネットワークにそれぞれ相互に接続される。また、流量計6上では図10中”AP31”に示すアプリケーションが動作している。
同様に、コントローラ7上では図10中”AP32”、”AP33”及び”AP34”に示すアプリケーションが動作し、バルブ調節計8上では図10中”AP35”に示すアプリケーションが動作している。
ここで、図10に示す従来例の動作を説明する。各アプリケーションはフィールドバスに準拠して機能定義及びインターフェース定義が行われ、これらのアプリケーションを組み合わせることにより分散制御アプリケーションを構築する。
例えば、図10中”AP31”及び”AP34”に示すアプリケーションはAO(AnalogOutput機能)として機能定義され、図10中”AP32”及び”AP35”に示すアプリケーションはAI(AnalogInput機能)として機能定義される。また、図10中”AP33”に示すアプリケーションはPID(PID演算機能)として機能定義される。
流量計6は、流路を流量を計測して計測結果を流量計6上で動作する図10中”AP31”に示すアプリケーション(AnalogOutput機能)を用いてコントローラ7にネットワーク(図示せず。)を介して送信させる。
コントローラ7は、コントローラ7上で動作する図10中”AP32”に示すアプリケーション(AnalogInput機能)を用いて流量計6からの計測結果を受信させ、コントローラ7上で動作する図10中”AP33”に示すアプリケーション(PID演算機能)を用いて計測結果と流量の目標値に基づきPID演算を行わせる。
また、コントローラ7は、PID演算結果をコントローラ7上で動作する図10中”AP34”に示すアプリケーション(AnalogOutput機能)を用いてバルブ調節計8にネットワーク(図示せず。)を介して送信させる。
最後に、バルブ調節計8は、バルブ調節計8上で動作する図10中”AP35”に示すアプリケーション(AnalogInput機能)を用いてコントローラ7からの計測結果を受信させ、受信したPID演算結果に基づきバルブの開度を調節して流路の流量を制御する。
この結果、各アプリケーションをフィールドバスに準拠して機能定義及びインターフェース定義すると共にこれらのアプリケーションを組み合わせて分散制御アプリケーションを構築することにより、ネットワークに分散配置された複数のフィールド機器上で動作するアプリケーションが相互に連携するシステムを構築することができる。
しかし、図7に示す従来例では共通プロトコルによる連携であるため、図9に示すように各フィールド機器上で動作するアプリケーション毎にプロトコル実装等が必要になると言った問題点があった。
また、図10に示す従来例では、フィールドバスに準拠した機能定義等は分散制御アプリケーションの構築に特化されているので、フィールドバスに準拠した機能定義等を用いて汎用的なアプリケーションを構築することは容易ではないと言った問題点があった。
従って本発明が解決しようとする課題は、アプリケーションプログラム間での連携動作を容易に実現することが可能なシステムを実現することにある。
従って本発明が解決しようとする課題は、アプリケーションプログラム間での連携動作を容易に実現することが可能なシステムを実現することにある。
このような課題を達成するために、本発明のうち請求項1記載の発明は、
ネットワークを介して相互に接続された複数のフィールド機器上で動作するアプリケーションプログラム間で連携動作を行うシステムにおいて、
オペレーティングシステム上で動作するアプリケーション管理機能が記憶手段からアプリケーション、スロット及びコネクタをそれぞれ読み出して前記アプリケーション、前記スロット及び前記コネクタをそれぞれ起動させると共に、前記アプリケーションに前記スロットを登録させ前記スロットに前記コネクタを登録させる前記オペレーティングシステムが稼動する第1及び第2のフィールド機器とを備え、前記第1及び第2のフィールド機器でそれぞれ動作するアプリケーションが1組の前記スロットで構成されるチャネルインターフェースを介して1組の前記コネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行うことにより、アプリケーションプログラム間での連携動作を容易に実現することができる。
ネットワークを介して相互に接続された複数のフィールド機器上で動作するアプリケーションプログラム間で連携動作を行うシステムにおいて、
オペレーティングシステム上で動作するアプリケーション管理機能が記憶手段からアプリケーション、スロット及びコネクタをそれぞれ読み出して前記アプリケーション、前記スロット及び前記コネクタをそれぞれ起動させると共に、前記アプリケーションに前記スロットを登録させ前記スロットに前記コネクタを登録させる前記オペレーティングシステムが稼動する第1及び第2のフィールド機器とを備え、前記第1及び第2のフィールド機器でそれぞれ動作するアプリケーションが1組の前記スロットで構成されるチャネルインターフェースを介して1組の前記コネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行うことにより、アプリケーションプログラム間での連携動作を容易に実現することができる。
請求項2記載の発明は、
請求項1記載の発明であるアプリケーションプログラム間で連携動作を行うシステムにおいて、
前記アプリケーションに複数の前記スロットを登録させることにより、より複雑なアプリケーションの連携動作を容易に実現することができる。
請求項1記載の発明であるアプリケーションプログラム間で連携動作を行うシステムにおいて、
前記アプリケーションに複数の前記スロットを登録させることにより、より複雑なアプリケーションの連携動作を容易に実現することができる。
請求項3記載の発明は、
請求項1記載の発明であるアプリケーションプログラム間で連携動作を行うシステムにおいて、
前記アプリケーションに登録されている1つの前記スロットに複数の前記コネクタを登録させることにより、より複雑なアプリケーションの連携動作を容易に実現することができる。
請求項1記載の発明であるアプリケーションプログラム間で連携動作を行うシステムにおいて、
前記アプリケーションに登録されている1つの前記スロットに複数の前記コネクタを登録させることにより、より複雑なアプリケーションの連携動作を容易に実現することができる。
請求項4記載の発明は、
請求項1記載の発明であるアプリケーションプログラム間で連携動作を行うシステムにおいて、
同一フィールド機器上で動作する複数の前記アプリケーションが1組の前記スロットで構成されるチャネルインターフェースを介して1組の前記コネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行うことにより、アプリケーションプログラム間での連携動作を容易に実現することができる。
請求項1記載の発明であるアプリケーションプログラム間で連携動作を行うシステムにおいて、
同一フィールド機器上で動作する複数の前記アプリケーションが1組の前記スロットで構成されるチャネルインターフェースを介して1組の前記コネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行うことにより、アプリケーションプログラム間での連携動作を容易に実現することができる。
請求項5記載の発明は、
請求項1記載の発明であるアプリケーションプログラム間で連携動作を行うシステムにおいて、
予め設定されているコネクタパラメータを参照して必要な処理を呼び出して実行するパラメータ参照処理機能を前記コネクタに実装することにより、コネクタに設定されるコネクタパラメータを変更することでネットワーク環境の違いに対応することができる。
請求項1記載の発明であるアプリケーションプログラム間で連携動作を行うシステムにおいて、
予め設定されているコネクタパラメータを参照して必要な処理を呼び出して実行するパラメータ参照処理機能を前記コネクタに実装することにより、コネクタに設定されるコネクタパラメータを変更することでネットワーク環境の違いに対応することができる。
請求項6記載の発明は、
請求項5記載の発明であるアプリケーションプログラム間で連携動作を行うシステムにおいて、
前記パラメータ参照処理機能が、
前記コネクタパラメータを参照して異なるフィールド機器間の連携ではないと判断した場合に、同一フィールド機器内の処理を呼び出し処理の実行を行い、前記コネクタパラメータを参照してIPネットワークではないと判断した場合に、非IPネットワーク用の処理を呼び出し処理の実行を行い、IPネットワーク用の処理を呼び出し、前記コネクタパラメータを参照してLANではないと判断した場合に、WAN対応の処理を呼び出し前記IPネットワーク用の処理と共に処理の実行を行い、LAN対応の処理を呼び出し前記IPネットワーク用の処理と共に処理の実行を行うことにより、コネクタに設定されるコネクタパラメータを変更することでネットワーク環境の違いに対応することができる。
請求項5記載の発明であるアプリケーションプログラム間で連携動作を行うシステムにおいて、
前記パラメータ参照処理機能が、
前記コネクタパラメータを参照して異なるフィールド機器間の連携ではないと判断した場合に、同一フィールド機器内の処理を呼び出し処理の実行を行い、前記コネクタパラメータを参照してIPネットワークではないと判断した場合に、非IPネットワーク用の処理を呼び出し処理の実行を行い、IPネットワーク用の処理を呼び出し、前記コネクタパラメータを参照してLANではないと判断した場合に、WAN対応の処理を呼び出し前記IPネットワーク用の処理と共に処理の実行を行い、LAN対応の処理を呼び出し前記IPネットワーク用の処理と共に処理の実行を行うことにより、コネクタに設定されるコネクタパラメータを変更することでネットワーク環境の違いに対応することができる。
本発明によれば次のような効果がある。
請求項1及び請求項4の発明によれば、アプリケーション管理機能が記憶手段からアプリケーションを読み出してアプリケーションを起動させ、併せて、記憶手段からスロット及びコネクタをそれぞれ読み出してスロット及びコネクタをそれぞれ起動させ、アプリケーションが1組のスロットで構成されるチャネルインターフェースを介して1組のコネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行うことにより、アプリケーションプログラム間での連携動作を容易に実現することができる。
請求項1及び請求項4の発明によれば、アプリケーション管理機能が記憶手段からアプリケーションを読み出してアプリケーションを起動させ、併せて、記憶手段からスロット及びコネクタをそれぞれ読み出してスロット及びコネクタをそれぞれ起動させ、アプリケーションが1組のスロットで構成されるチャネルインターフェースを介して1組のコネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行うことにより、アプリケーションプログラム間での連携動作を容易に実現することができる。
また、請求項2及び請求項3の発明によれば、1つのアプリケーションに複数のスロットを登録させたり、アプリケーションに登録されている1つのスロットに複数のコネクタを登録させることにより、より複雑なアプリケーションの連携動作を容易に実現することができる。
また、請求項5及び請求項6の発明によれば、コネクタに設定されるコネクタパラメータを参照して必要な処理を呼び出して実行するパラメータ参照処理機能をコネクタに実装することにより、コネクタに対して変更を加えることなく、コネクタに設定されるコネクタパラメータを変更することでネットワーク環境の違いに対応することができる。
以下本発明を図面を用いて詳細に説明する。図1は本発明に係るアプリケーションプログラム間で連携動作を行うシステムを構成するフィールド機器の一実施例を示す構成ブロック図である。
図1において9はセンサ、アクチュエータ、コントローラ、通信測定器、計測器、記録装置、サーバ等のフィールド機器である。また、フィールド機器9は図示しないネットワークに相互に接続され、他のフィールド機器(図示せず。)もまた図示しないネットワークに相互に接続される。
ここで、図1に示す実施例の動作を図2及び図3を用いて説明する。図2は2つのフィールド機器間での連携動作を説明する説明図、図3は2つのフィールド機器上でそれぞれ動作するアプリケーションの連携の論理的な構成を説明する説明図である。
フィールド機器9では、図1中”HW41”に示すフィールド機器9のCPU(Central Processing Unit)やRAM(Random Access Memory)等のハードウェア上で図1中”OS41”に示すオペレーティングシステム(Operating System:以下、単にOSと呼ぶ。)が稼動する。
そして、図1中”OS41”に示すOS上には、図1中”AP41”に示すアプリケーション、図1中”SL41”に示すスロットプログラム(以下、単にスロットと呼ぶ。)、図1中”CN41”に示すコネクタプログラム(以下、単にコネクタと呼ぶ。)及び図1中”MG41”に示すアプリケーション管理機能がそれぞれ動作する。
例えば、図1中”AP41”に示すアプリケーションを起動する場合、図1中”MG41”に示すアプリケーション管理機能は、図1中”RD41”に示すように図1中”HD41”に示すハードディスク等の記憶手段からアプリケーションを読み出し、図1中”ST41”に示すようにアプリケーションを起動させる。
同様に、図1中”MG41”に示すアプリケーション管理機能は、図1中”RD41”に示すように図1中”HD41”に示すハードディスク等の記憶手段からスロット及びコネクタをそれぞれ読み出し、図1中”ST42”及び”ST43”に示すようにスロット及びコネクタをそれぞれ起動させる。
図1中”CN41”に示すコネクタは、起動時に図1中”SL41”に示すスロットに登録され、図1中”SL41”に示すスロットは、起動時に図1中”AP41”に示すアプリケーションに登録される。
そして、図1中”AP41”に示すアプリケーションが、図1中”CL41”に示すように登録されている図1中”SL41”に示すスロットを呼び出し、図1中”SL41”に示すスロットが、図1中”CL42”に示すように登録されている図1中”CN41”に示すコネクタを呼び出し、図1中”CN41”に示すコネクタが図1中”CL43”に示すように図1中”OS41”に示すOSを呼び出す。
次に、2つのフィールド機器間での連携動作を説明する。図2において10はフィールド機器9と同一の構成を有するフィールド機器であり、9、”HW41”、”OS41”、”AP41”、”SL41”、”CN41”、”MG41”及び”HD41”は図1と同一符号を付してある。
また、図2中”HW51”はフィールド機器10のCPUやRAM等のハードウェア、図2中”OS51”は図2中”HW51”に示すハードウェア上で稼動するOS、図2中”AP51”、”SL51”、”CN51”及び”MG51”はそれぞれ図2中”OS51”に示すOS上で動作するアプリケーション、スロット、コネクタ及びアプリケーション管理機能、図2中”HD51”はハードディスク等の記憶手段である。
また、フィールド機器9及びフィールド機器10は図示しないネットワークにそれぞれ相互に接続されている。
図2中”CN41”及び”CN51”に示す1組のコネクタは図2中”CH51”に示すチャネルを構成し、図2中”SL41”及び”SL51”に示す1組のスロットは図2中”CI51”に示す当該チャネルに接続可能なチャネルインターフェースを構成している。
また、ここで、図2中”CH51”に示すチャネルは仮想的(論理的)な通信経路であり、図2中”CI51”に示すチャネルインターフェースは図2中”CH51”に示すチャネルに接続するためのインターフェースである。
前述と同様に、例えば、図2中”AP51”に示すアプリケーションを起動する場合、図2中”MG51”に示すアプリケーション管理機能は、図2中”HD51”に示すハードディスク等の記憶手段からアプリケーションを読み出してアプリケーションを起動させる。
同様に、図2中”MG51”に示すアプリケーション管理機能は、図2中”HD51”に示すハードディスク等の記憶手段からスロット及びコネクタをそれぞれ読み出してスロット及びコネクタをそれぞれ起動させる。
また、図2中”CN51”に示すコネクタは、起動時に図2中”SL51”に示すスロットに登録され、図2中”SL51”に示すスロットは、起動時に図2中”AP51”に示すアプリケーションに登録される。
そして、図2中”AP51”に示すアプリケーションが登録されている図2中”SL51”に示すスロットを呼び出し、図2中”SL51”に示すスロットが登録されている図2中”CN51”に示すコネクタを呼び出し、図1中”CN51”に示すコネクタが図2中”OS51”に示すOSを呼び出す。
このような状況下で、図2中”AP41”に示すアプリケーションと、図2中”AP51”に示すアプリケーションとの間で連携を行う場合を想定する。具体的には、図2中”AP41”に示すアプリケーションから図2中”AP51”に示すアプリケーションにデータを送信する場合を想定する。
図2中”AP41”に示すアプリケーションは、送信するデータを図2中”SL41”に示すスロットに渡し、図2中”SL41”に示すスロットは、図2中”CN41”に示すコネクタにデータを中継する。
そして、図2中”CN41”に示すコネクタは、図2中”OS41”に示すOSを介してフィールド機器9のハードウェア(”HW41”)を利用して、図2中”CM51”に示すようにフィールド機器10のハードウェア(”HW51”)との間で通信(データ送信)を行う。
一方、図2中”CN51”に示すコネクタは、図2中”OS51”に示すOSを介してフィールド機器10のハードウェア(”HW51”)を利用して受信データを取り込み、図2中”SL51”に示すスロットに渡し、図2中”SL51”に示すスロットは、図2中”AP51”に示すアプリケーションにデータを中継する。
この時、図2中”AP41”に示すアプリケーションと図2中”AP51”に示すアプリケーションとの間では、図2中”VC51”に示すように仮想的にデータの送受信を行ったことになる。
例えば、図3中”AP41”に示すアプリケーションは、図3中”SL41”に示すチャネルインターフェース(具体的には、図3中”SL41”と図3中”SL51”に示す1組のスロットで構成されたチャネルインターフェースの一方のスロット)を介して図3中”CN41”及び”CN51”に示す1組のコネクタで構成される仮想的なチャネルに接続して図2中”AP51”に示すアプリケーションに対して仮想的にデータの送信を行ったことになる。
同様に、例えば、図3中”AP51”に示すアプリケーションは、図3中”SL51”に示すチャネルインターフェース(具体的には、図3中”SL41”と図3中”SL51”に示す1組のスロットで構成されたチャネルインターフェースの一方のスロット)を介して図3中”CN41”及び”CN51”に示す1組のコネクタで構成される仮想的なチャネルに接続して図2中”AP41”に示すアプリケーションから仮想的にデータの受信を行ったことになる。
この結果、アプリケーション管理機能が記憶手段からアプリケーションを読み出してアプリケーションを起動させ、併せて、記憶手段からスロット及びコネクタをそれぞれ読み出してスロット及びコネクタをそれぞれ起動させ、アプリケーションが1組のスロットで構成されるチャネルインターフェースを介して1組のコネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行うことにより、アプリケーションプログラム間での連携動作を容易に実現することができる。
なお、図1に示す実施例では2つのフィールド機器上でそれぞれ動作するアプリケーション間の連携動作に関して記述されているが、勿論、1つのアプリケーションに複数のスロットを登録させても構わない。また、アプリケーションに登録されている1つのスロットに複数のコネクタを登録させても構わない。
例えば、図4はこのような複数のフィールド機器上でそれぞれ動作するアプリケーションの様々な連携の論理的な構成を説明する説明図である。図4において”AP61”、”AP62”、”AP63”、”AP64”、”AP65”及び”AP66”は図示しない各フィールド機器上で動作するアプリケーションである。
また、図4において”CH61”、”CH62”、”CH63”、”CH64”及び”CH65”は、1個のコネクタでそれぞれ構成される仮想的なチャネルである。ちなみに、説明の簡単のため図4におけるスロット及びコネクタには符号を付していない。
図4中”AP61”に示すアプリケーションには2つのスロットが登録されており、4中”AP61”に示すアプリケーションは、図4中”CH61”に示す仮想的なチャネルによって図4中”AP62”に示すアプリケーションと連携する。
より具体的には、図4中”AP61”に示すアプリケーションに登録されている一方のスロットと図4中”AP62”に示すアプリケーションに登録されているスロットとで構成されるチャネルインターフェースを介して図4中”CH61”に示す仮想的なチャネルに接続する。
同時に、図4中”AP61”に示すアプリケーションは、図4中”CH62”に示す仮想的なチャネルによって図4中”AP63”に示すアプリケーションと連携する。
より具体的には、図4中”AP61”に示すアプリケーションに登録されている他方のスロットと図4中”AP63”に示すアプリケーションに登録されている一方のスロットとで構成されるチャネルインターフェースを介して図4中”CH62”に示す仮想的なチャネルに接続する。
また、図4中”AP63”に示すアプリケーションは、図4中”CH63”、”CH64”及び”CH65”に示す仮想的なチャネルによって図4中”AP64”、”AP65”及び”AP66”に示すアプリケーションと連携する。
より具体的には、図4中”AP63”に示すアプリケーションに登録されている他方のスロットと図4中”AP64”、”AP65”及び”AP66”に示す3つのアプリケーションに登録されているそれぞれのスロットとで構成される3つのチャネルインターフェースを介して図4中”CH63”、”CH64”及び”CH65”に示す仮想的なチャネルにそれぞれ接続する。
この結果、1つのアプリケーションに複数のスロットを登録させたり、アプリケーションに登録されている1つのスロットに複数のコネクタを登録させることにより、より複雑なアプリケーションの連携動作を容易に実現することができる。
また、図1に示す実施例では2つのフィールド機器上でそれぞれ動作するアプリケーション間の連携動作に関して記述されているが、勿論、同一フィールド機器上で動作する複数のアプリケーション間で連携動作をさせても構わない。
図5はこのような同一フィールド機器上で動作する複数のアプリケーション間の連携動作を説明する説明図である。図5中”HW71”はフィールド機器のCPUやRAM等のハードウェア、図5中”OS71”は図5中”HW71”に示すハードウェア上で稼動するOS、図5中”AP71”及び”AP72”はそれぞれ図5中”OS71”に示すOS上で動作するアプリケーションである。
また、図5中”SL71”及び”SL72”はそれぞれ図5中”OS71”に示すOS上で動作するスロット、図5中”CN71”及び”CN72”はそれぞれ図5中”OS71”に示すOS上で動作するコネクタである。
但し、図5では説明の簡単のためにアプリケーション管理機能及び記憶手段の記述は省略している。
図5中”AP71”に示すアプリケーションと、図5中”AP72”に示すアプリケーションとの間で連携を行う場合を想定する。具体的には、図5中”AP71”に示すアプリケーションから図5中”AP72”に示すアプリケーションにデータを送信する場合を想定する。
図5中”AP71”に示すアプリケーションは、送信するデータを図5中”SL71”に示すスロットに渡し、図5中”SL71”に示すスロットは、図5中”CN71”に示すコネクタにデータを中継する。
そして、図5中”CN71”に示すコネクタは、直接、図5中”OS71”に示すOS上で動作する図5中”CN72”に示すコネクタとの間で通信(データ送信)を行う。
一方、図5中”CN72”に示すコネクタは、図5中”CN71”に示すコネクタから直接受信したデータを、図5中”SL72”に示すスロットに渡し、図5中”SL72”に示すスロットは、図5中”AP72”に示すアプリケーションにデータを中継する。
この時、図5中”AP71”に示すアプリケーションと図5中”AP72”に示すアプリケーションとの間では、図5中”VC71”に示すように仮想的にデータの送受信を行ったことになる。
例えば、図5中”AP71”に示すアプリケーションは、図5中”SL71”に示すチャネルインターフェース(具体的には、図5中”SL71”と図5中”SL72”に示す1組のスロットで構成されたチャネルインターフェースの一方のスロット)を介して図5中”CN71”及び”CN72”に示す1組のコネクタで構成される仮想的なチャネルに接続して図5中”AP72”に示すアプリケーションに対して仮想的にデータの送信を行ったことになる。
同様に、例えば、図5中”AP72”に示すアプリケーションは、図5中”SL72”に示すチャネルインターフェース(具体的には、図5中”SL71”と図5中”SL72”に示す1組のスロットで構成されたチャネルインターフェースの一方のスロット)を介して図5中”CN71”及び”CN72”に示す1組のコネクタで構成される仮想的なチャネルに接続して図5中”AP71”に示すアプリケーションから仮想的にデータの受信を行ったことになる。
また、各コネクタはそれぞれが動作するOSやハードウェアに依存した処理を行うため、フィールド機器が接続されるネットワーク環境の違いに依存することになる。
より具体的には、ネットワーク環境がIP(Internet Protocol)ネットワークであるのか非IPネットワークであるのかの違いがあり、IPネットワークであってもLANであるのかWANであるのかの違いがある。
このような場合であっても、実施例によればアプリケーションやスロットに対して変更を加えることなく、コネクタのみを変更することによりネットワーク環境の違いに対応することができる。
また、コネクタに設定されるコネクタパラメータを参照して必要な処理を呼び出して実行するパラメータ参照処理機能をコネクタに実装することにより、コネクタに対して変更を加えることなく、コネクタに設定されるコネクタパラメータを変更することでネットワーク環境の違いに対応することができる。
図6はこのようなコネクタに実装されるパラメータ参照処理機能の動作を説明するフロー図である。
図6中”S001”においてパラメータ参照処理機能は、予め設定されているコネクタパラメータを参照して異なるフィールド機器間での連携か否かを判断し、もし、異なるフィールド機器間の連携ではないと判断した場合には、図6中”S002”においてパラメータ参照処理機能は、同一フィールド機器内の処理を呼び出し、図6中”S009”のステップにスキップする。
もし、図6中”S001”において異なるフィールド機器間の連携であると判断した場合には、図6中”S003”においてパラメータ参照処理機能は、予め設定されているコネクタパラメータを参照してIPネットワークであるか否かを判断し、もし、IPネットワークではないと判断した場合には、図6中”S004”においてパラメータ参照処理機能は、非IPネットワーク用の処理を呼び出し、図6中”S009”のステップにスキップする。
もし、図6中”S003”においてIPネットワークであると判断した場合には、図6中”S005”においてパラメータ参照処理機能は、IPネットワーク用の処理を呼び出し、図6中”S006”において予め設定されているコネクタパラメータを参照してLANであるか否かを判断し、もし、LANではないと判断した場合には、図6中”S007”においてパラメータ参照処理機能は、WAN対応の処理を呼び出し、図6中”S009”のステップにスキップする。
もし、図6中”S006”においてLANであると判断した場合には、図6中”S008”においてパラメータ参照処理機能は、LAN対応の処理を呼び出し、図6中”S009”のステップにスキップする。
最後に、図6中”S009”においてパラメータ参照処理機能は、呼び出された処理の実行を行う。
この結果、コネクタに設定されるコネクタパラメータを参照して必要な処理を呼び出して実行するパラメータ参照処理機能をコネクタに実装することにより、コネクタに対して変更を加えることなく、コネクタに設定されるコネクタパラメータを変更することでネットワーク環境の違いに対応することができる。
また、図6に示すフロー図では図6中”S009”のステップにおいて呼び出した処理を一括して実行しているが、各種処理を呼び出した段階で逐次実行しても勿論構わない。
1,2,3,4,5,9,10フィールド機器
6 流量計
7 コントローラ
8 バルブ調節計
100 ネットワーク
6 流量計
7 コントローラ
8 バルブ調節計
100 ネットワーク
Claims (6)
- ネットワークを介して相互に接続された複数のフィールド機器上で動作するアプリケーションプログラム間で連携動作を行うシステムにおいて、
オペレーティングシステム上で動作するアプリケーション管理機能が記憶手段からアプリケーション、スロット及びコネクタをそれぞれ読み出して前記アプリケーション、前記スロット及び前記コネクタをそれぞれ起動させると共に、前記アプリケーションに前記スロットを登録させ前記スロットに前記コネクタを登録させる前記オペレーティングシステムが稼動する第1及び第2のフィールド機器とを備え、
前記第1及び第2のフィールド機器でそれぞれ動作するアプリケーションが1組の前記スロットで構成されるチャネルインターフェースを介して1組の前記コネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行うこと特徴とするシステム。 - 前記アプリケーションに複数の前記スロットを登録させることを特徴とする
請求項1記載のシステム。 - 前記アプリケーションに登録されている1つの前記スロットに複数の前記コネクタを登録させることを特徴とする
請求項1記載のシステム。 - 同一フィールド機器上で動作する複数の前記アプリケーションが1組の前記スロットで構成されるチャネルインターフェースを介して1組の前記コネクタで構成される仮想的なチャネルに接続して仮想的なデータの送受信を行うことを特徴とする
請求項1記載のシステム。 - 予め設定されているコネクタパラメータを参照して必要な処理を呼び出して実行するパラメータ参照処理機能を前記コネクタに実装することを特徴とする
請求項1記載のシステム。 - 前記パラメータ参照処理機能が、
前記コネクタパラメータを参照して異なるフィールド機器間の連携ではないと判断した場合に、同一フィールド機器内の処理を呼び出し処理の実行を行い、
前記コネクタパラメータを参照してIPネットワークではないと判断した場合に、非IPネットワーク用の処理を呼び出し処理の実行を行い、
IPネットワーク用の処理を呼び出し、
前記コネクタパラメータを参照してLANではないと判断した場合に、WAN対応の処理を呼び出し前記IPネットワーク用の処理と共に処理の実行を行い、
LAN対応の処理を呼び出し前記IPネットワーク用の処理と共に処理の実行を行うことを特徴とする
請求項5記載のシステム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006158017A JP2007328480A (ja) | 2006-06-07 | 2006-06-07 | アプリケーションプログラム間で連携動作を行うシステム |
US12/308,144 US20090204687A1 (en) | 2006-06-07 | 2007-06-06 | System and Field Device for Performing Operation of Linkage Between Application Programs |
PCT/JP2007/061459 WO2007142268A1 (ja) | 2006-06-07 | 2007-06-06 | アプリケーションプログラム間で連携動作を行うシステム及びフィールド機器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006158017A JP2007328480A (ja) | 2006-06-07 | 2006-06-07 | アプリケーションプログラム間で連携動作を行うシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007328480A true JP2007328480A (ja) | 2007-12-20 |
Family
ID=38801515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006158017A Pending JP2007328480A (ja) | 2006-06-07 | 2006-06-07 | アプリケーションプログラム間で連携動作を行うシステム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090204687A1 (ja) |
JP (1) | JP2007328480A (ja) |
WO (1) | WO2007142268A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3401742B1 (de) * | 2017-05-09 | 2020-09-02 | Siemens Aktiengesellschaft | Automatisierungssystem und verfahren zum betrieb |
WO2021189229A1 (en) * | 2020-03-24 | 2021-09-30 | Citrix Systems, Inc. | Inter-application relevance management for application virtualization platform |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006054401A1 (ja) * | 2004-11-17 | 2006-05-26 | Yokogawa Electric Corporation | フィールド機器及びこれを用いたシステム |
-
2006
- 2006-06-07 JP JP2006158017A patent/JP2007328480A/ja active Pending
-
2007
- 2007-06-06 US US12/308,144 patent/US20090204687A1/en not_active Abandoned
- 2007-06-06 WO PCT/JP2007/061459 patent/WO2007142268A1/ja active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006054401A1 (ja) * | 2004-11-17 | 2006-05-26 | Yokogawa Electric Corporation | フィールド機器及びこれを用いたシステム |
JP2006146420A (ja) * | 2004-11-17 | 2006-06-08 | Yokogawa Electric Corp | フィールド機器及びこれを用いたシステム |
Also Published As
Publication number | Publication date |
---|---|
WO2007142268A1 (ja) | 2007-12-13 |
US20090204687A1 (en) | 2009-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220053074A1 (en) | Multi-Protocol Field Device in Process Control Systems | |
US10747208B2 (en) | System and microservice for monitoring a plant of process automation | |
US8832237B2 (en) | Method for offline servicing of a field device of automation technology | |
US10671030B2 (en) | Web-based interaction with building automation | |
US9760076B2 (en) | Method, control device and control system for the control of an automation system | |
US10805116B2 (en) | Gateway and method for connecting a data source system to an IT system | |
US20130132591A1 (en) | Method for the Operating of a Field Device | |
JP4172490B2 (ja) | プログラマブルコントローラ | |
US9548875B2 (en) | Method for the interchange of device-specific data between devices and/or systems of various network systems, and bus system for performing said method | |
US20150145654A1 (en) | Method for Operating a Field Device | |
CN105892419B (zh) | 用于自动化技术中的系统 | |
US9344296B2 (en) | Access protection accessory for an automation network | |
JP2007328480A (ja) | アプリケーションプログラム間で連携動作を行うシステム | |
EP2859417B1 (en) | Optimized communications with hart instruments | |
JP5852267B2 (ja) | 分散型制御システムのためのリレーインタフェースモジュール | |
US20230069976A1 (en) | Transporting a Message from an Industrial End Device over an Ethernet Network | |
JP2007304641A (ja) | 成形機管理システム | |
JP7030135B2 (ja) | デバイスからデータ管理手段にデータを送信する方法、中継ユニット、デバイス、及びシステム | |
JP7159818B2 (ja) | 制御装置および通信システム | |
CN112068500A (zh) | 控制系统 | |
JP4671056B2 (ja) | プログラマブルコントローラおよび通信ユニット | |
KR20190062214A (ko) | 통신 제어 장치 | |
JP4340896B2 (ja) | ネットワークベース制御システム | |
JP2011120056A (ja) | 通信システム | |
CN107306217A (zh) | 配置用于自动化网络的隧道连接的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101019 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101208 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20101224 |