JP6776191B2 - ゲートウェイ装置、ゲートウェイ装置により実行されるデータアクセス方法、コントローラ、及びコントローラにより実行されるデータアクセス方法 - Google Patents

ゲートウェイ装置、ゲートウェイ装置により実行されるデータアクセス方法、コントローラ、及びコントローラにより実行されるデータアクセス方法 Download PDF

Info

Publication number
JP6776191B2
JP6776191B2 JP2017125900A JP2017125900A JP6776191B2 JP 6776191 B2 JP6776191 B2 JP 6776191B2 JP 2017125900 A JP2017125900 A JP 2017125900A JP 2017125900 A JP2017125900 A JP 2017125900A JP 6776191 B2 JP6776191 B2 JP 6776191B2
Authority
JP
Japan
Prior art keywords
data
computer
message
time
data access
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
JP2017125900A
Other languages
English (en)
Other versions
JP2019008690A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2017125900A priority Critical patent/JP6776191B2/ja
Publication of JP2019008690A publication Critical patent/JP2019008690A/ja
Application granted granted Critical
Publication of JP6776191B2 publication Critical patent/JP6776191B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ゲートウェイ装置、ゲートウェイ装置により実行されるデータアクセス方法、コントローラ、及びコントローラにより実行されるデータアクセス方法に関する。
近年、多くのデータを収集し、それらのデータを分析し、新たな価値を創造することへのニーズが高まっている。特に制御システムの分野では、これまで制御システム内に留まっていた制御データを、分析基盤などの上位システムで活用することが求められている。制御データとは、上位システムから下位システムに送信され、下位システムで所定の処理の実行を指示するためのデータ、及び下位システムにて実行された処理の結果を示すデータを表す。
上位システムによる制御データの活用例として、例えば、制御データをコンピュータなどが備える表示装置の画面上にグラフなどで表示する見える化がある。制御データの見える化を行うために、画面上に制御データを表示するアプリケーションやそれを実現するシステムは、例えば、同一の制御データを複数の経路で取得したり、複数の画面に同一の制御データを表示したりする冗長化による多重化構成で実現することが想定される。
複数のコンピュータを含む多重化構成とした上位システムでは、制御システムから同じタイミングで制御データを取得しなければ、各コンピュータにて異なるグラフが表示されてしまう。そのため、制御データの整合性を保障することが必要となる。本明細書において、データの整合性とは、複数のコンピュータがデータを取得するタイミングが同時であること、及び、複数のコンピュータが同じタイミングで取得したデータの内容が同一であることを表す。なお、タイミングが同時とは、例えば、データの取得時刻が数秒程度異なる場合も含む。
ここで、特許文献1には、2つのリモート制御装置を二重化されたリモート伝送回線に接続し、リモート入出力装置を介して外部の制御機器を制御する装置について記載されている。この装置は、リモート入出力装置に2つのリモート制御回路と、それらのリモート制御回路を整合にアクセスする入出力制御回路とを実装してデータの同時性を確保している。
特開平11―266486号公報
上位システムと制御システムでは用いられるネットワークが異なるため、上位システムと制御システムとの間には、上位システムと制御システムとを接続するゲートウェイ装置が配置されることが多い。このゲートウェイ装置は、上位システムの複数のコンピュータから受信した要求に基づいて、制御システムから要求に合致したデータを取得し、このデータを上位システムに送信する。
ところで、コンピュータが、最初にデータを取得するための要求をゲートウェイ装置に送信し、ゲートウェイ装置からデータを取得した後、例えば、1日以上の時間を置いて、次の要求をゲートウェイ装置に送信する場合がある。この場合、ゲートウェイ装置が、最初にコンピュータからの要求に従ってコンピュータに返信したデータと同一のデータを、次の要求に従って返信することは好ましくないと考えられる。この理由としては、制御システムの状態が変化することにより、1日以上の時間が置かれると、データも変わっていると考えられるからである。また、時間が置かれてもデータの整合性が保障されるべきであることは、ゲートウェイ装置を備えない、コンピュータとコントローラが接続されたシステムにおいても同様である。
しかし、特許文献1には、このように最初の要求と次の要求とで時間が置かれた場合における対処について何ら記載されておらず、同一のデータが返信されてしまう可能性が高い。
本発明はこのような状況に鑑みて成されたものであり、取得を要求された整合性の保障が必要なデータを、整合性を保障して返信できるようにすることを目的とする。
本発明に係るゲートウェイ装置は、情報ネットワークに接続されたコンピュータとメッセージの送受信を行う情報系通信処理部と、情報ネットワークとは異なる制御ネットワークに接続され、プロセスを制御するコントローラとメッセージの送受信を行う制御系通信処理部と、コントローラに対してプロセスに関するデータのアクセス先を指定し、かつデータの整合性を保障するために参照されるデータアクセス管理テーブルと、情報系通信処理部がコンピュータから受信したデータの取得を要求するメッセージをコントローラが解釈可能に変換し、コントローラが解釈可能なメッセージを制御系通信処理部からコントローラに送信させ、制御系通信処理部がコントローラから受信したメッセージに含まれ、コントローラがアクセス先から取得したデータをデータアクセス管理テーブルに格納し、情報系通信処理部がコンピュータから受信したデータの取得を要求するメッセージに、コントローラから取得するデータの整合性の保障を要求する情報が含まれる場合に、許容時間内にコントローラから取得したデータがデータアクセス管理テーブルに格納されたことをデータの整合性を保障するための条件として、データアクセス管理テーブルから取得したデータを含むメッセージであって、情報系通信処理部がコンピュータからデータの取得を要求するメッセージを受信したタイミングで、コンピュータがデータの取得を要求するメッセージを受信した時点における時刻と、過去にコントローラから取得したデータをデータアクセス管理テーブルに格納した時刻との差が、許容時間内に収まる場合に、データアクセス管理テーブルに管理され、整合性が保障されるデータを含むメッセージをコンピュータに対する応答として作成して、メッセージをコンピュータが解釈可能に変換し、一方、メッセージを受信した時点における時刻と、過去にコントローラから取得したデータをデータアクセス管理テーブルに格納した時刻との差が、許容時間を超えた場合に、新たにコントローラから取得したデータによりデータアクセス管理テーブルに管理されるデータを書換え、書換えたデータを含むメッセージをコンピュータに対する応答として作成して、メッセージをコンピュータが解釈可能に変換し、コンピュータからデータの取得を要求するメッセージを受信したタイミングで作成され、変換されたコンピュータが解釈可能なメッセージを情報系通信処理部からコンピュータに送信させるデータアクセス管理部と、周期的に設定される時刻と、過去にコントローラから取得したデータをデータアクセス管理テーブルに格納した時刻との差が、許容時間を超えた場合に、コントローラから取得したデータをデータアクセス管理テーブルに格納することでデータを更新するデータ更新部と、
周期的に設定される時刻と、過去にコントローラから取得したデータをコンピュータに配信した時刻との差が、許容時間を超えた場合に、データアクセス管理テーブルから取得したデータを含むメッセージを作成して、データアクセス管理テーブルに配信先として規定されたコンピュータにメッセージを配信するデータ配信部と、を備える。
また、本発明に係るコントローラは、ネットワークに接続されたコンピュータ又はゲートウェイ装置とメッセージの送受信を行う通信処理部と、制御対象であるプロセスに関するデータのアクセス先が指定され、かつデータの整合性を保障するために参照されるデータアクセス管理テーブルと、アクセス先にアクセスしてデータを取得するデータアクセス要求受信部と、通信処理部がコンピュータ又はゲートウェイ装置から受信したデータの取得を要求するメッセージを解釈し、データアクセス要求受信部にアクセス先からデータを取得させ、データアクセス要求受信部がアクセス先から取得したデータをデータアクセス管理テーブルに格納し、コンピュータ又はゲートウェイ装置から受信したデータの取得を要求するメッセージに、データの整合性の保障を要求する情報が含まれる場合に、許容時間内に取得したデータがデータアクセス管理テーブルに格納されたことをデータの整合性を保障するための条件として、データアクセス管理テーブルから取得したデータを含むメッセージであって、コンピュータ又はゲートウェイ装置からデータの取得を要求するメッセージを受信したタイミングで、コンピュータ又はゲートウェイ装置がデータの取得を要求するメッセージを受信した時点における時刻と、過去にアクセス先から取得したデータをデータアクセス管理テーブルに格納した時刻との差が、許容時間内に収まる場合に、データアクセス管理テーブルに管理され、整合性が保障されるデータを含むメッセージをコンピュータ又はゲートウェイ装置に対する応答として作成して、メッセージをコンピュータ又はゲートウェイ装置が解釈可能に変換し、一方、メッセージを受信した時点における時刻と、過去にアクセス先から取得したデータをデータアクセス管理テーブルに格納した時刻との差が、許容時間を超えた場合に、新たにアクセス先から取得したデータによりデータアクセス管理テーブルに管理されるデータを書換え、書換えたデータを含むメッセージをコンピュータ又はゲートウェイ装置に対する応答として作成して、メッセージをコンピュータ又はゲートウェイ装置が解釈可能に変換し、コンピュータ又はゲートウェイ装置からデータの取得を要求するメッセージを受信したタイミングで作成され、変換されたコンピュータ又はゲートウェイ装置が解釈可能なメッセージを、通信処理部からコンピュータ又はゲートウェイ装置に送信させるデータアクセス管理部と、周期的に設定される時刻と、過去にアクセス先から取得したデータをデータアクセス管理テーブルに格納した時刻との差が、許容時間を超えた場合に、アクセス先から取得したデータをデータアクセス管理テーブルに格納することでデータを更新するデータ更新部と、周期的に設定される時刻と、過去にアクセス先から取得したデータをコンピュータ又はゲートウェイ装置に配信した時刻との差が、許容時間を超えた場合に、データアクセス管理テーブルから取得したデータを含むメッセージを作成して、データアクセス管理テーブルに配信先として規定されたコンピュータ又はゲートウェイ装置にメッセージを配信するデータ配信部と、を備える。
本発明によれば、例えば、コンピュータから整合性が保障されるデータが要求された場合に、データアクセス管理テーブルを使用することにより、整合性が保障されたデータをコンピュータに返信することが可能となる。
上記した以外の課題、構成及び効果は、以下の実施の形態の説明により明らかにされる。
本発明の第1の実施の形態に係るデータアクセスシステムの全体構成例を示す機能ブロック図である。 本発明の第1の実施の形態に係るコンピュータとゲートウェイ装置とが互いに送受信するメッセージのフォーマットの例を示す説明図である。 本発明の第1の実施の形態に係るデータアクセス管理テーブルの一例を示す説明図である。 本発明の第1の実施の形態に係るゲートウェイ装置とコントローラとが互いに送受信するメッセージのフォーマットの例を示す説明図である。 本発明の第1の実施の形態に係るコンピュータにてデータアクセス要求送信部が実行するデータ取得処理の例を示すフローチャートである。 本発明の第1の実施の形態に係るゲートウェイ装置にて情報系通信処理部が実行する要求受信・応答送信処理の例を示すフローチャートである。 本発明の第1の実施の形態に係るデータアクセス管理部が実行するデータアクセス要求処理の例を示すフローチャートである。 本発明の第1の実施の形態に係るデータアクセス管理部が実行する整合性対応処理の例を示すフローチャートである。 本発明の第1の実施の形態に係る制御系通信処理部が実行する命令送信・結果受信処理の例を示すフローチャートである。 本発明の第1の実施の形態に係るデータアクセス管理部が実行するデータアクセス応答処理の例を示すフローチャートである。 本発明の第1の実施の形態に係るデータアクセス要求受信部が実行するデータ応答処理の例を示すフローチャートである。 本発明の第2の実施の形態に係るデータアクセスシステムの全体構成例を示す機能ブロック図である。 本発明の第2の実施の形態に係るデータ更新部が実行するデータ更新処理の例を示す機能ブロック図である。 本発明の第3の実施の形態に係るデータアクセスシステムの全体構成例を示す機能ブロック図である。 本発明の第3の実施の形態に係るデータアクセス管理テーブルの一例を示す説明図である。 本発明の第3の実施の形態に係るデータ受信部が実行するデータ配信処理の例を示すフローチャートである。 本発明の第3の実施の形態に係るデータ配信部が実行するデータ配信処理の例を示すフローチャートである。 本発明の第4の実施の形態に係るデータアクセスシステムの全体構成例を示す機能ブロック図である。
以下、本発明を実施するための形態例について、添付図面を参照して説明する。本明細書及び図面において、実質的に同一の機能又は構成を有する構成要素については、同一の符号を付することにより重複する説明を省略する。
[第1の実施の形態]
始めに、本発明の第1の実施の形態に係るデータアクセスシステムが備える各装置の構成について説明する。
図1は、第1の実施の形態に係るデータアクセスシステム7の全体構成例を示す機能ブロック図である。
<データアクセスシステム>
データアクセスシステム7は、複数台のコンピュータ1−1〜1−n(情報処理装置の一例)と、1台のゲートウェイ装置2(中継装置の一例)と、複数台のコントローラ3−1〜3−n(制御装置の一例)と、を備える。コンピュータ1−1〜1−nを区別しない場合には、コンピュータ1と表記し、コントローラ3−1〜3−nを区別しない場合には、コントローラ3と表記する。図1では、複数のコンピュータ1−1〜1−nが示されているが、これは一例である。コンピュータ1としては、例えば、コンピュータ1−1の1台であっても、コンピュータ1−1〜1−nのように2台以上であってもよい。同様に、図1では、複数のコントローラ3−1〜3−nが示されているが、これは一例である。コントローラ3としては、例えば、コントローラ3−1の1台であっても、コントローラ3−1〜3−nのように2台以上であってもよい。
コンピュータ1−1〜1−nと、ゲートウェイ装置2とは、情報ネットワーク5を介して相互にメッセージを送受信可能である。また、ゲートウェイ装置2と、コントローラ3−1〜3−nとは、制御ネットワーク6を介して相互にメッセージを送受信可能である。メッセージの詳細は、後述する図2及び図4に示すが、コンピュータ1−1〜1−nからゲートウェイ装置2には要求メッセージ110が送信され、ゲートウェイ装置2からコントローラ3−1〜3−nには命令メッセージ130が送信される。逆に、コントローラ3−1〜3−nからゲートウェイ装置2には結果メッセージ137が送信され、ゲートウェイ装置2からコンピュータ1−1〜1−nには応答メッセージ117が送信される。情報ネットワーク5と制御ネットワーク6は、異なるネットワークであるため、コンピュータ1−1〜1−nと、コントローラ3−1〜3−nとは、ゲートウェイ装置2を介さなければメッセージを直接送受信することができない。
コンピュータ1−1〜1−nは、いずれも同様の構成としてある。また、コントローラ3−1〜3−nについても、同様の構成としてある。このため、以下の説明において、コンピュータ1−1、ゲートウェイ装置2、コントローラ3−1について順に構成及び動作を説明する。
<コンピュータ>
コンピュータ1−1は、メモリ10、表示装置/入力装置11、情報ネットワークインターフェイス(InterFace、以下、I/Fと略記)12、CPU13、及びディスク装置14を有する。メモリ10には、データアクセス要求送信部100が記憶される。データアクセス要求送信部100は、CPU13により読出され、実行される機能部であり、データアクセス要求をゲートウェイ装置2に送信する。コンピュータ1−1から見たデータアクセス要求は、要求メッセージ110を用いて行われるゲートウェイ装置2に対してデータを取得する要求である。
コンピュータ1−1は、情報ネットワーク5に接続され、情報ネットワーク5経由でゲートウェイ装置2と通信する。また、コンピュータ1−1は、データアクセス要求送信部100を使用してコントローラ3−1内のデータを取得する。
ゲートウェイ装置2は、メモリ20、情報ネットワークI/F21、制御ネットワークI/F22、不揮発性記憶装置23、及びCPU24を有する。メモリ20には、データアクセス管理テーブル200、情報系通信処理部201、データアクセス管理部202、制御系通信処理部203が記憶される。情報系通信処理部201、データアクセス管理部202、制御系通信処理部203は、それぞれCPU24によりメモリ20から読出され、実行される機能部である。
データアクセス管理テーブル200は、後述する図3に詳細を示すように、コントローラ3−1をアクセス対象とするデータ識別ID毎に、データにアクセスするために必要な情報を管理するテーブルである。このデータアクセス管理テーブル200は、コントローラ3−1に対してプロセス4−1に関するデータのアクセス先を指定し、かつデータの整合性を保障するために参照される。データは、コントローラ3−1のメモリ30内に記憶されている。そして、データアクセス管理テーブル200は、制御系通信処理部203がコントローラ3−1から受信した結果メッセージ137に含まれるデータを管理する。
<ゲートウェイ装置>
ゲートウェイ装置2は、情報ネットワーク5を介してコンピュータ1−1と接続し、制御ネットワーク6を介してコントローラ3−1と接続する。ゲートウェイ装置2は、コンピュータ1−1からコントローラ3−1内のデータの取得を要求するための要求メッセージ110を受信すると、コントローラ3−1に命令メッセージ130を送信することでデータの取得を要求する。そして、ゲートウェイ装置2は、コントローラ3−1にて取得されたデータを含む結果メッセージ137を受信し、このデータを含む応答メッセージ117をコンピュータ1−1に送信する。
このため、情報系通信処理部201は、情報ネットワーク5を通じて、コンピュータ1−1と送受信するメッセージの通信処理を行う。このとき、情報系通信処理部201は、コンピュータ1−1から、要求メッセージ110を受信する。
データアクセス管理部202は、情報系通信処理部201がコンピュータ1−1から受信したデータの取得を要求する要求メッセージ110をコントローラ3−1が解釈可能に変換し、コントローラ3−1が解釈可能な命令メッセージ130を制御系通信処理部203からコントローラ3−1に送信させる。このため、データアクセス管理部202は、データアクセス管理テーブル200を参照して、情報系通信処理部201から受け取るデータアクセス要求を制御系通信処理部203に渡す。ここで、データアクセス管理部202は、データアクセス管理テーブル200を参照して、要求メッセージ110を命令メッセージ130に変換する。要求メッセージ110は、コンピュータ1−1が解釈可能なメッセージの一例であり、命令メッセージ130は、コントローラ3−1が解釈可能なメッセージの一例である。そして、データアクセス管理部202は、制御系通信処理部203がコントローラ3−1から受信した結果メッセージ137に含まれ、コントローラ3−1がアクセス先から取得したデータを、データアクセス管理テーブル200に格納する。
情報系通信処理部201がコンピュータ1−1から受信したデータの取得を要求する要求メッセージ110に、コントローラ3−1から取得するデータの整合性の保障を要求する情報(例えば、整合性フラグ116に格納された“1”)が含まれる場合がある。この場合、データアクセス管理部202は、許容時間内にコントローラ3−1から取得したデータがデータアクセス管理テーブル200に格納されたことをデータの整合性を保障するための条件として、データアクセス管理テーブル200からデータを取得する。そして、データアクセス管理部202は、データアクセス管理テーブル200から取得したデータを含む応答メッセージ117をコンピュータ1−1が解釈可能に変換する。一方、要求メッセージ110にコントローラ3−1から取得するデータの整合性の保障を要求する情報(例えば、整合性フラグ116に格納された“0”)が含まれていなければ、データアクセス管理部202は、データの整合性を保障することなく、データアクセス管理テーブル200から取得したデータを含む応答メッセージ117をコンピュータ1−1が解釈可能に変換する。
データの整合性を保障する場合、データアクセス管理部202は、情報系通信処理部201がコンピュータ1−1からデータの取得を要求する要求メッセージ110を受信したタイミングで、データアクセス管理テーブル200に管理されるデータの整合性を判断する。例えば、データアクセス管理部202は、コンピュータ1−1がデータの取得を要求する要求メッセージ110を受信した時点における要求時刻と、過去にコントローラ3−1から取得したデータをデータアクセス管理テーブル200に格納した時刻との差が、データの整合性を保障するために許容される許容時間内に収まる場合に、データアクセス管理テーブル200に管理され、整合性が保障されるデータを含む応答メッセージ117をコンピュータ1−1に対する応答として作成する。一方、データアクセス管理部202は、要求時刻と、コントローラ3−1からデータを取得した時刻との差が、許容時間を超えた場合に、コントローラ3−1から取得したデータによりデータアクセス管理テーブル200に管理されるデータを書換える。そして、データアクセス管理部202は、書換えたデータを含む応答メッセージ117をコンピュータ1−1に対する応答として作成する。
このため、データアクセス管理部202は、制御系通信処理部203から渡された応答を情報系通信処理部201に渡すため、データアクセス管理テーブル200を参照して、コントローラ3−1から受信した、結果メッセージ137を応答メッセージ117に変換する。結果メッセージ137は、コントローラ3−1が解釈可能なメッセージの一例であり、応答メッセージ117は、コンピュータ1−1が解釈可能なメッセージの一例である。このようにデータアクセス管理部202は、制御系通信処理部203がコントローラ3−1から受信したメッセージをコンピュータ1−1が解釈可能に変換する。そして、データアクセス管理部202は、コンピュータ1−1が解釈可能なメッセージを情報系通信処理部201からコンピュータ1−1に送信させる。
制御系通信処理部203は、制御ネットワーク6を通じて、コントローラ3−1と送受信するメッセージの通信処理を行うことが可能である。このとき、制御系通信処理部203は、データアクセス管理部202から受け取るデータアクセス要求をコントローラ3−1に送信する。ゲートウェイ装置2から見たデータアクセス要求は、命令メッセージ130を用いて行われるコントローラ3−1に対するデータの取得命令である。また、制御系通信処理部203は、コントローラ3−1から受信した結果メッセージ137をデータアクセス管理部202に渡す。この結果メッセージ137には、コントローラ3−1がプロセス4から取得したデータが、アクセス対象の結果値140として含まれている。
<コントローラ>
コントローラ3−1は、メモリ30、制御ネットワークI/F31、CPU32、不揮発性記憶装置33、入力モジュール34、及び出力モジュール35を有しており、プロセス4−1を制御する。
メモリ30には、入力処理部301、出力処理部302、演算処理部303、データアクセス要求受信部304が記憶される。
入力処理部301、出力処理部302、演算処理部303、データアクセス要求受信部304は、それぞれCPU32によりメモリ30から読出され、実行される機能部である。データアクセス要求受信部304は、ゲートウェイ装置2により指定されたアクセス先にアクセスしてデータを取得する。
不揮発性記憶装置33は、例えば、メモリ30に記憶されたデータをバックアップする。
入力モジュール34は、プロセス4に対する入力インターフェイスであり、プロセス4から入力したデータをメモリ30に記憶する。メモリ30に記憶されたデータは、入力処理部301、出力処理部302、演算処理部303、データアクセス要求受信部304により適宜読出される。
出力モジュール35は、プロセス4に対する出力インターフェイスであり、出力処理部302から出力される制御信号等をプロセス4に出力する。
コントローラ3−1は、制御ネットワーク6に接続され、制御ネットワーク6経由でゲートウェイ装置2と通信する。また、コントローラ3−1は、データアクセス要求受信部を使用してコンピュータ1−1にデータを応答する。
入力処理部301は、入力モジュール34から入力するプロセス4−1の状態を示すデータを取得する。プロセス4−1は、例えば、鉄板を圧延する設備や発電所のタービン等である。そして、プロセス4−1の状態とは、例えば、鉄板の圧延速度、タービンの回転速度等である。例えば、入力処理部301は、入力モジュール34から入力されるプロセス4の状態(センサ値等)をメモリ30の所定領域に記憶する。また、例えば、入力処理部301には、プロセス4の一例として挙げるモータの回転数、モータの回転に伴って移動する装置の移動量が入力される。
演算処理部303は、入力処理部301を実行してプロセス4−1の状態を取得し、得られた情報を基に所定の演算を行い、その結果を基に出力処理部302に処理を実行させてプロセスの制御を行う。演算処理部303は、入力処理部301から入力するプロセス4の状態に基づいて、プロセス4を適切に制御するための制御データを演算する。例えば、演算処理部303は、装置の移動量を所定値とするために必要なモータの回転数を演算し、モータをこの回転数で駆動するために必要な電圧値等を演算する。
出力処理部302は、出力モジュール35を使用してプロセス4−1に制御信号等を出力する。出力処理部302は、演算処理部303により演算された制御データを出力モジュール35を通じてプロセス4に出力する。例えば、出力処理部302は、演算処理部303により演算された電圧値に基づく電圧をモータに出力する。
そして、プロセス4が制御データに従って動作する。例えば、モータは、演算処理部303が意図した回転数で駆動する。なお、出力処理部302がモータに出力する電圧が低ければ、モータの回転数が減少する。このため、入力処理部301は、常にモータの動作結果を入力し、演算処理部303がモータの回転数を増加させるフィードバック制御を行う。入力処理部301、出力処理部302、演算処理部303により処理されるデータは、メモリ30内のアドレス及びサイズで規定される所定領域に記憶され、適宜更新される。
データアクセス要求受信部304は、ゲートウェイ装置2から受信する、図4に示す命令メッセージ130に基づいて、入力処理部301、出力処理部302、演算処理部303により処理されるデータをメモリ30から取得する。このとき、データアクセス要求受信部304が取得するデータは、命令メッセージ130の命令詳細情報134に格納されたアクセス対象のアドレス135及びアクセス対象のサイズ136に基づいてメモリ30にアクセス可能である。そして、データアクセス要求受信部304は、メモリ30から取得したデータに基づいて、図4に示す結果メッセージ137を作成し、ゲートウェイ装置2に結果メッセージ137を送信する。
次に、各装置で用いられる各種のメッセージ及びテーブルの構成例について、図2〜図4を参照して説明する。
<要求メッセージ及び応答メッセージ>
図2は、コンピュータ1−1とゲートウェイ装置2とが互いに送受信するメッセージのフォーマットの例を示す説明図である。
メッセージには、コンピュータ1−1がデータを要求するための要求メッセージ110と、ゲートウェイ装置2が要求されたデータをコンピュータ1−1に送信するための応答メッセージ117がある。
要求メッセージ110は、プロトコルヘッダ112と要求情報111により構成される。プロトコルヘッダ112には、プロトコル種別、送信元、及び宛先などの情報が含まれる。
要求情報111は、データの取得を要求するデータ数113と、少なくとも一つ以上の要求詳細情報114により構成される。
データ数113は、要求詳細情報114の個数を示す情報である。要求詳細情報114は、コンピュータ1−1が取得を要求するデータの数に応じて複数必要となる場合がある。
要求詳細情報114は、コンピュータ1−1が取得を要求するデータ毎に、データ識別ID115と、整合性フラグ116により構成される。整合性フラグ116は、コンピュータ1−1により設定されるフラグであり、整合性の保障が必要なデータの取得を要求する情報としてゲートウェイ装置2により用いられる。コンピュータ1−1が取得を要求するデータが、整合性の保障が必要なデータである場合、整合性フラグ116に“1”が格納され、整合性の保障が不要なデータである場合、整合性フラグ116に“0”が格納される。そして、ゲートウェイ装置2では、整合性フラグ116に基づいて、コントローラ3から取得するデータの整合性を保障するか否かが判定される。
応答メッセージ117は、プロトコルヘッダ112と応答情報118により構成される。応答メッセージ117に含まれるプロトコルヘッダ112は、要求メッセージ110に含まれるプロトコルヘッダ112と同じ内容である。
応答情報118は、データ数113と、少なくとも一つ以上の応答詳細情報119により構成される。
応答詳細情報119は、データ識別ID115と、コントローラ3−1が持つデータである結果値120により構成される。
<データアクセス管理テーブル>
図3は、第1の実施の形態に係るデータアクセス管理テーブル200の一例を示す説明図である。
データアクセス管理テーブル200は、データ識別ID、アクセス先情報、許容時間、要求時刻、結果一時蓄積の各フィールドを備える。
データ識別IDフィールドには、データを識別するために一意に割り振られるデータ識別IDが格納される。
アクセス先情報フィールドには、コントローラ3−1のデータアクセス要求受信部304がメモリ30に記憶されるデータにアクセスするためのアクセス対象のアドレスとサイズが含まれている。
アクセス対象のアドレスは、アクセス先の先頭アドレスを示す。
サイズはアクセス先のアドレスサイズを示す。アドレスサイズは、アクセス対象のデータ型に応じたデータの長さを表す。
許容時間フィールドには、ゲートウェイ装置2が取得したコントローラ3−1から取得した結果値140の許容時間(ミリ秒単位)が格納される。例えば、許容時間を超えて取得される2つの結果値140は、整合性が保障されず、有効でないデータとなる。
要求時刻フィールドには、後述する図7に示すステップS25を実行した時の要求時刻が格納される。この要求時刻は、データアクセス管理テーブル200から結果値140が取得された時刻である。要求時刻フィールドの初期値は“0”であり、コンピュータ1−1からデータアクセス要求が行われると、要求時刻フィールドにデータアクセス要求が行われた現在時刻が格納される。
結果一時蓄積フィールドには、ゲートウェイ装置2がコントローラ3−1から取得した、図4に示すアクセス対象の結果値140が一時的に蓄積される。結果一時蓄積フィールドに格納されるアクセス対象の結果値140が、コンピュータ1−1により取得が要求されるデータとなる。
<命令メッセージ及び結果メッセージ>
図4は、ゲートウェイ装置2とコントローラ3とが互いに送受信するメッセージのフォーマットの例を示す説明図である。
メッセージには、ゲートウェイ装置2がデータを取得するための命令メッセージ130と、コントローラ3が要求されたデータをゲートウェイ装置2に送信するための結果メッセージ137がある。
命令メッセージ130は、プロトコルヘッダ132と命令情報131により構成される。プロトコルヘッダ132には、プロトコル種別、送信元、及び宛先などの情報が含まれる。
命令情報131は、データの取得を要求するデータ数133と、少なくとも一つ以上の命令詳細情報134により構成される。命令詳細情報134は、アクセス対象のアドレス135とサイズ136により構成される。
結果メッセージ137は、プロトコルヘッダ132と結果情報138により構成される。
結果情報138は、データ数133と、少なくとも一つ以上の結果詳細情報139により構成される。
結果詳細情報139は、アクセス対象のアドレス135、アクセス対象のサイズ136、及びコントローラ3−1が持つデータである、アクセス対象の結果値140により構成される。
次に、コンピュータ1−1、ゲートウェイ装置2、及びコントローラ3−1の動作例について、図5〜図11を参照して説明する。図5に、コンピュータ1−1にて行われる動作例を示し、図6〜図10に、ゲートウェイ装置2にて行われるデータアクセス方法の例を示し、図11に、コントローラ3−1にて行われる動作例を示す。
<データ取得処理>
図5は、第1の実施の形態に係るコンピュータ1−1にてデータアクセス要求送信部100が実行するデータ取得処理の例を示すフローチャートである。データ取得処理とは、コンピュータ1−1が、ゲートウェイ装置2を介してコントローラ3−1からデータを取得する処理である。データアクセス要求送信部100は、例えば、作業員が操作する入力装置11より、取得対象のデータを一意に識別するデータ識別ID115を入力情報として受け取ると、以下の動作を開始する。
始めに、データアクセス要求送信部100は、入力されたデータ識別ID115に基づいて、図2に示す要求メッセージ110を作成し(S1)、情報ネットワークI/F12を介してゲートウェイ装置2に対し、要求メッセージ110を送信する(S2)。
次に、データアクセス要求送信部100は、ゲートウェイ装置2から情報ネットワークI/F12を介して、図2に示す応答メッセージ117の受信を待つ(S3)。応答メッセージ117を受信しなければ(S3の無し)、データアクセス要求送信部100は、応答メッセージ117の受信を待ち続ける。
ステップS3にて、データアクセス要求送信部100は、応答メッセージ117を受信すると(S3の有り)、受信した応答メッセージ117に格納されている、コントローラ3−1が持つデータである結果値120を取り出し(S4)、表示装置11に結果値120を表示する(S5)。
<要求受信・応答送信処理>
図6は、第1の実施の形態に係るゲートウェイ装置2にて情報系通信処理部201が実行する要求受信・応答送信処理の例を示すフローチャートである。要求受信・応答送信処理とは、ゲートウェイ装置2がコントローラ3−1に対してデータアクセス要求を送信し、コントローラ3−1から取得した応答メッセージ117をコンピュータ1−1に送信する処理である。
始めに、情報系通信処理部201は、情報ネットワークI/F21を介して、コンピュータ1−1から送信される要求メッセージ110の受信を待つ(S11)。要求メッセージ110を受信しなければ(S11の無し)、情報系通信処理部201は、要求メッセージ110の受信を待ち続ける。
ステップS11にて、情報系通信処理部201は、要求メッセージ110を受信すると(S11の有り)、データアクセス要求処理を実行する(S12)。データアクセス要求処理とは、受信した要求メッセージ110に含まれるデータ識別ID115と整合性フラグ116を取り出し、それらに応じてアクセス先の情報の取得やデータの整合性を保障する処理であり、その詳細は図7を用いて後述する。
次に、情報系通信処理部201は、データアクセス要求処理が完了した後、情報ネットワークI/F21を介してコンピュータ1−1に応答メッセージ117を送信する(S13)。その後、情報系通信処理部201は、要求メッセージ110の受信を待つ(S11)。
応答メッセージ117は、図7に示すデータアクセス要求処理にて実行される、図10に示すデータアクセス応答処理によって作成されたものである。データアクセス応答処理は、コントローラ3−1から取得したデータをコンピュータ1−1に送信するための応答を作成する処理であり、図10を用いて後述する。応答詳細情報119の結果値120は、コントローラ3−1によりプロセス4から取得され、データアクセス管理テーブル200の結果一時蓄積フィールドに格納されたアクセス対象の結果値140である。
<データアクセス要求処理>
図7は、第1の実施の形態に係るデータアクセス管理部202が実行するデータアクセス要求処理の例を示すフローチャートである。データアクセス要求処理とは、ゲートウェイ装置2がコントローラ3−1に対してデータアクセス要求を送信する処理である。データアクセス要求処理にて、コンピュータ1−1が解釈可能な要求メッセージ110が、コントローラ3−1が解釈可能な命令メッセージ130に変換される。
情報系通信処理部201が図6に示すデータアクセス要求処理を実行する(S12)と、データアクセス管理部202が実行される。データアクセス管理部202は、情報系通信処理部201が受信した要求メッセージ110から、データ識別ID115と整合性フラグ116をそれぞれ一つずつ取り出す(S21)。
次に、データアクセス管理部202は、ステップS21で取得した整合性フラグ116が“1”であるか判定する(S22)。ステップS21で取得した整合性フラグ116が“1”ではない場合(S22のNO)、データアクセス管理部202は、後述するステップS26を実行する。
ステップS22にて、ステップS21で取得した整合性フラグ116が“1”である場合(S22のYES)、データの整合性の保障が必要となる。このため、データアクセス管理部202は、ステップS21で取得したデータ識別ID115をキーとして、図3に示すデータアクセス管理テーブル200を参照して、許容時間フィールドから許容時間を取得し、要求時刻フィールドから要求時刻を取得する(S23)。
次に、データアクセス管理部202は、現在時刻と、ステップS23で取得した要求時刻との差が、ステップS23で取得した許容時間外であるか、すなわち許容時間を超えたか否かを判定する(S24)。現在時刻とは、例えば、コンピュータ1−1から送信された要求メッセージ110を、情報系通信処理部201が受信した時点における時刻であり、要求時刻とは、過去にデータアクセス管理テーブル200にデータが格納された時刻を表す。
現在時刻と、ステップS23で取得した要求時刻との差が、ステップS23で取得した許容時間内に収まっている場合(S24のNO)、データアクセス管理部202は、整合性対応処理を実行する(S25)。ここで、図8を用いて整合性対応処理について説明する。
<整合性対応処理>
図8は、第1の実施の形態に係るデータアクセス管理部202が実行する整合性対応処理の例を示すフローチャートである。整合性対応処理とは、取得を要求する複数のデータの整合性を保障する処理である。
始めに、データアクセス管理部202は、ステップS21で取得したデータ識別ID115をキーとして、図3に示すデータアクセス管理テーブル200を参照して、データアクセス管理テーブル200の結果一時蓄積フィールドにアクセス対象の結果値140が格納されるまで待つ(S41)。結果一時蓄積フィールドには、ゲートウェイ装置2がコントローラ3−1からアクセス対象の結果値140を取得するまで何も格納されていない。
このため、結果一時蓄積フィールドにアクセス対象の結果値140が格納されていなければ(S41のNO)、データアクセス管理部202は、ステップS41の処理を繰り返す。結果一時蓄積フィールドにアクセス対象の結果値140が格納されると(S41のYES)、データアクセス管理部202は、データアクセス管理テーブル200の結果一時蓄積フィールドからアクセス対象の結果値140、すなわちデータを取得する(S42)。
次に、データアクセス管理部202は、ステップS21で取得したデータ識別ID115と、ステップS42で取得した結果値140を基にして、図2に示す応答詳細情報119を作成する(S43)。そして、データアクセス管理部202は、図7のステップS29に移る。
図7に戻って説明を続ける。
ステップS24にて、現在時刻と、ステップS23で取得した要求時刻との差が、ステップS23で取得した許容時間を超えた場合(S24のYES)、データアクセス管理部202は、ステップS21で取得したデータ識別ID115をキーとして、図3に示すデータアクセス管理テーブル200を参照する。そして、データアクセス管理部202は、データアクセス管理テーブル200の要求時刻フィールドに現在時刻を格納し、結果一時蓄積フィールドからデータを削除する(S26)。
次に、データアクセス管理部202は、ステップS21で取得したデータ識別ID115をキーとして、図3に示すデータアクセス管理テーブル200を参照して、アクセス先情報フィールドからアクセス先情報を取得する(S27)。そして、データアクセス管理部202は、ステップS27で取得したアクセス先情報に基づいて、図4に示す命令詳細情報134を作成する(S28)。
ステップS25又はS28の後、データアクセス管理部202は、要求メッセージ110に含まれる全てのデータ識別ID115に対する整合性フラグ116を取得したか判断する(S29)。全てのデータ識別ID115に対する整合性フラグ116を取得していなければ(S29のNO)、データアクセス管理部202は、ステップS21〜S28の処理を繰り返し、実行する。
ステップS29にて、全てのデータ識別ID115に対する整合性フラグ116を取得していれば(S29のYES)、データアクセス管理部202は、ステップS21〜S28の処理の間に、命令詳細情報134を少なくとも一つ以上、作成したか判定する(S30)。
ステップS21〜S28の処理の間に、命令詳細情報134を一つも作成していない場合(S30のNO)、データアクセス管理部202は、図8に示すステップS43で作成した応答詳細情報119を基にして、図2に示す応答メッセージ117を作成する(S31)。その後、図6に示すステップS13が実行され、応答メッセージ117がコンピュータ1−1に送信される。
ステップS21〜S28の処理の間に、命令詳細情報134を少なくとも一つ以上作成した場合(S30のYES)、データアクセス管理部202は、ステップS28で作成した命令詳細情報134を基にして、図4に示す命令メッセージ130を作成する(S32)。
そして、データアクセス管理部202は、命令送信・結果受信処理を実行する(S33)。命令送信・結果受信処理により、ステップS32で作成された命令メッセージ130がコントローラ3−1に送信され、コントローラ3−1から結果メッセージ137が受信される。命令送信・結果受信処理は、図9を用いて詳細を後述する。
その後、データアクセス管理部202は、データアクセス応答処理を実行する(S34)。データアクセス応答処理により、結果メッセージ137から取出された情報がデータアクセス管理テーブル200に格納され、コンピュータ1−1に対する応答メッセージ117が作成される。データアクセス応答処理は、図10を用いて詳細を後述する。
<命令送信・結果受信処理>
図9は、第1の実施の形態に係る制御系通信処理部203が実行する命令送信・結果受信処理の例を示すフローチャートである。命令送信・結果受信処理とは、ゲートウェイ装置2がコントローラ3−1にデータアクセスのための命令メッセージ130を送信し、コントローラ3−1から結果メッセージ137を受信する処理である。
データアクセス管理部202が命令送信・結果受信処理を実行する(S33)と、制御系通信処理部203が実行される。制御系通信処理部203は、ステップS32で作成された命令メッセージ130を、制御ネットワークI/F22を介して、コントローラ3−1に送信する(S51)。
次に、制御系通信処理部203は、制御ネットワークI/F22を介して、コントローラ3−1から送信される結果メッセージ137の受信を待つ(S52)。結果メッセージ137を受信しなければ(S52の無し)、制御系通信処理部203は、結果メッセージ137の受信を待ち続ける。
ステップS52にて、制御系通信処理部203は、結果メッセージ137を受信すると(S52の有り)、図7のステップS33における本処理を終了し、ステップS34に移る。
<データアクセス応答処理>
図10は、第1の実施の形態に係るデータアクセス管理部202が実行するデータアクセス応答処理の例を示すフローチャートである。データアクセス応答処理とは、データアクセス管理部202が、コンピュータ1−1に送信する応答メッセージ117を結果メッセージ137に基づいて作成する処理である。データアクセス応答処理にて、コントローラ3−1が解釈可能な結果メッセージ137が、コンピュータ1−1が解釈可能な応答メッセージ117に変換される。
図9に示す命令送信・結果受信処理の後、制御系通信処理部203が、データアクセス応答処理を実行する(S34)と、データアクセス管理部202が実行される。データアクセス管理部202は、制御系通信処理部203が受信した結果メッセージ137から、結果詳細情報139を一つ取り出す(S61)。
データアクセス管理部202は、ステップS61で取得した結果詳細情報139からアクセス対象のアドレス135、アクセス対象のサイズ136、及びアクセス対象の結果値140を取り出す(S62)。
次に、データアクセス管理部202は、アクセス対象のアドレス135と、アクセス対象のサイズ136とをキーとして、データアクセス管理テーブル200を参照して、データ識別IDを取得し、結果一時蓄積フィールドにステップS62で取得したアクセス対象の結果値140を格納する(S63)。
次に、データアクセス管理部202は、ステップS62で取得したアクセス対象の結果値140と、ステップS63で取得したデータ識別IDを基にして、図2に示す応答詳細情報119を作成する(S64)。
次に、データアクセス管理部202は、結果メッセージ137に含まれる全てのアクセス対象の結果値140に対して、ステップS61〜S64の処理を行ったか判断する(S65)。全てのアクセス対象の結果値140に対して、ステップS61〜S64の処理を行っていなければ(S65のNO)、データアクセス管理部202は、ステップS61に戻ってステップS61〜S64の処理を繰り返し、実行する。
全てのアクセス対象の結果値140に対して、ステップS61〜S64の処理を行っていれば(S65のYES)、データアクセス管理部202は、ステップS43で作成した応答詳細情報119と、ステップS64で作成した応答詳細情報119を基にして、図2に示す応答メッセージ117を作成する(S66)。そして、データアクセス管理部202は、図7のステップS34における本処理を終了する。その後、図6に示すステップS13が実行され、応答メッセージ117はコンピュータ1−1に送信される。
<データ応答処理>
図11は、第1の実施の形態に係るデータアクセス要求受信部304が実行するデータ応答処理の例を示すフローチャートである。データ応答処理は、コントローラ3−1がゲートウェイ装置2から受信した命令メッセージ130に基づいて作成した結果メッセージ137を、命令に対する応答としてゲートウェイ装置2に送信する処理である。
データアクセス要求受信部304は、制御ネットワークI/F31を介して、ゲートウェイ装置2から送信される命令メッセージ130の受信を待つ(S71)。命令メッセージ130を受信しなければ(S71の無し)、データアクセス要求受信部304は、命令メッセージ130の受信を待ち続ける(S71)。
ステップS71にて、データアクセス要求受信部304は、命令メッセージ130を受信すると(S71の有り)、受信した命令メッセージ130に含まれる命令詳細情報134を一つ取り出す(S72)。
次に、データアクセス要求受信部304は、ステップS72で取得した命令詳細情報134からアクセス対象のアドレス135と、アクセス対象のサイズ136とを取り出す。そして、データアクセス要求受信部304は、取得したアクセス対象のアドレス135と、アクセス対象のサイズ136とを基にして、メモリ30からデータを取り出す(S73)。
次に、データアクセス要求受信部304は、ステップS72で取得したアクセス対象のアドレス135、アクセス対象のサイズ136、及びステップS73で取得したデータを基にして、図4に示す結果詳細情報139を作成する(S74)。その際、ステップS73で取得したデータをアクセス対象の結果値140に格納する。
次に、データアクセス要求受信部304は、命令メッセージ130に含まれる全てのアクセス対象のアドレス135と、アクセス対象のサイズ136に対して、ステップS72〜S74の処理を行ったか判断する(S75)。全てのアクセス対象のアドレス135と、アクセス対象のサイズ136の個数は、命令情報131のデータ数133に規定される数で表される。全てのアクセス対象のアドレス135と、アクセス対象のサイズ136に対して、ステップS72〜S74の処理を行っていなければ(S75のNO)、データアクセス要求受信部304は、ステップS71に戻ってステップS71〜S74の処理を繰り返し、実行する。
全てのアクセス対象のアドレス135と、アクセス対象のサイズ136に対して、ステップS72〜S74の処理を行っていれば(S75のYES)、データアクセス要求受信部304は、ステップS74で作成した結果詳細情報139を基にして、図4に示す結果メッセージ137を作成する(S76)。
次に、データアクセス要求受信部304は、制御ネットワークI/F31を介して、ステップS76で作成した結果メッセージ137をゲートウェイ装置2に送信する(S77)。その後、データアクセス要求受信部304は、ステップS71にて命令メッセージ130の受信を待つ。
以上説明した第1の実施の形態に係るデータアクセスシステム7では、ゲートウェイ装置2が、コンピュータ1から受信する整合性の保障が必要なデータのアクセス要求に対し、コントローラ3内のデータの整合性を保障してコンピュータ1に返信する。ゲートウェイ装置2は、例えば、複数のコンピュータ1からほぼ同じタイミングで同じデータを要求された場合、コントローラ3から取得したそれぞれ複数のコンピュータ1に送信するデータが同じであることを保障する。また、ゲートウェイ装置2は、複数のコンピュータ1に送信するデータがコントローラ3から取得したタイミングがほぼ同時であることも保障する。そして、ゲートウェイ装置2は、保障が必要なデータのデータアクセス要求を最初に受信してから、ユーザが任意に設定した許容時間内に次のデータアクセス要求を受信した場合に限り、コントローラ3内の同一のデータをコンピュータ1に返信することができる。
また、要求メッセージ110内には、整合性フラグ116が含まれる。このため、コンピュータ1は、整合性を保障したくないデータに関しては、整合性フラグ116に“0”を格納することで許容時間に関係なくコントローラ3からデータを取得することができる。また、コンピュータ1は、整合性の保障が必要なデータに関しては、整合性フラグ116に“1”を格納することで許容時間内で同一のデータをコントローラ3から取得することができる。そして、要求詳細情報114毎に設けた整合性フラグ116に“0”又は“1”を格納することで、整合性の保障が必要なデータのデータアクセス要求と、整合性の保障が不要なデータのデータアクセス要求とが混在した一つの要求メッセージ110をゲートウェイ装置2に送信する。そして、コンピュータ1は、ゲートウェイ装置2から整合性の保障が必要なデータと、整合性の保障が不要なデータとが混在した応答メッセージ117を受信する。
また、ゲートウェイ装置2は、最初に受信した要求メッセージ110について、コントローラ3に命令メッセージ130を送信し、次に他のコンピュータ1から受信した要求メッセージ110について、同じデータのデータアクセス要求であれば、コントローラ3に命令メッセージ130を送信せず、データアクセス管理テーブル200の結果一時蓄積から取得したデータを返信する。また、コントローラ3からは、最初の命令メッセージ130に対する結果メッセージ137だけがゲートウェイ装置2に返信される。このため、制御ネットワーク6の負荷を低減させることができる。
さらに、ゲートウェイ装置2は、整合性の保障を要求しないデータの取得を要求する要求メッセージ110、及び許容時間外にコンピュータ1から受信した要求メッセージ110を変換した命令メッセージ130だけをコントローラ3へと送信する。そして、他の要求メッセージ110については、命令メッセージ130に変換せず、コントローラ3に命令メッセージ130を送信しないため、制御ネットワーク6の負荷を低減させることができる。
なお、本実施の形態では、コンピュータ1−1の1台のみがコントローラ3−1の1台のみに対してデータの取得を行うが、これに限定されることはない。他の例として、複数台のコンピュータ1(コンピュータ1−1〜1−nから選択される2台以上のコンピュータ)が、コントローラ3−1の整合性が保障されたデータを取得することが可能である。また、1台のコンピュータ1−1が、複数台のコントローラ3(コントローラ3−1〜3−nから選択される2台以上のコントローラ)から整合性が保障されたデータの取得を行うことも可能である。
[第2の実施の形態]
上述した第1の実施の形態では、コンピュータ1から要求があったときのみ、ゲートウェイ装置2が許容時間の判定を行っていた。一方、第2の実施の形態に係るゲートウェイ装置2は常に許容時間の判定を行っており、全てのデータを許容時間内に更新する。これにより、コンピュータ1から整合性を保障する要求がゲートウェイ装置2に送信されたとき、ゲートウェイ装置2は、直ちに応答することが可能になる。以下、第2の実施の形態に係るデータアクセスシステム7の構成及び動作の詳細を説明する。なお、ここでは主に第2の実施の形態について第1の実施の形態との差異に着目して説明する。
図12は、第2の実施の形態に係るデータアクセスシステムの全体構成例を示す機能ブロック図である。図12に示す第2の実施の形態に係るゲートウェイ装置2では、図1に示す第1の実施の形態に対して、メモリ20にデータ更新部210が追加されている。
データ更新部210は、CPU24によりメモリ20から読出され、実行される機能部であり、データアクセス管理テーブル200に管理されるデータを自動的に更新する機能とを有している。このため、データ更新部210は、コントローラ3−1から取得したデータをデータアクセス管理テーブル200に格納することでデータを更新する。データの更新は、周期的に設定される時刻と、過去にコントローラ3−1から取得したデータをデータアクセス管理テーブル200に格納した時刻との差が、許容時間を超えた場合に行われる。周期的に設定される時刻とは、例えば、データ更新部210が動作する時点においてゲートウェイ装置2で管理される現在時刻であるが、他の時刻としてもよい。そして、データ更新部210は、コンピュータ1−1からデータアクセス要求を受信することなく、データアクセス管理テーブル200に管理されるデータを更新することが可能である。
<データ更新処理>
図13は、第2の実施の形態に係るデータ更新部210が実行するデータ更新処理の例を示すフローチャートである。データ更新処理は、データ更新部210がデータアクセス管理テーブル200を更新する処理である。
データ更新部210は、ゲートウェイ装置2が起動すると、図3に示すデータアクセス管理テーブル200の先頭レコードからデータ識別IDを取り出す(S81)。
次に、データ更新部210は、ステップS81、又は後述するステップS92で取得したデータ識別IDをキーとして、データアクセス管理テーブル200を参照して、許容時間フィールドから許容時間を取得し、要求時刻フィールドから要求時刻を取得する(S82)。
次に、データ更新部210は、現在時刻と、ステップS82で取得した要求時刻との差が、ステップS82で取得した許容時間外であるか、すなわち許容時間を超えたか否かを判定する(S83)。
現在時刻と、ステップS82で取得した要求時刻との差が、ステップS82で取得した許容時間内に収まっている場合(S83のNO)、データ更新部210は、このレコードのデータを更新せず、データアクセス管理テーブル200から次のレコードのデータ識別IDを取り出す(S92)。その後、ステップS82に戻って、ステップS82の処理を繰り返し実行する。
ステップS83にて、現在時刻と、ステップS82で取得した要求時刻との差が、ステップS82で取得した許容時間を超えた場合(S83のYES)、データ更新部210は、ステップS81、又は後述するステップS92で取得したデータ識別IDをキーとして、データアクセス管理テーブル200を参照する。そして、データ更新部210は、データアクセス管理テーブル200の要求時刻フィールドに現在時刻を格納し、結果一時蓄積フィールドから、以前格納したデータ(アクセス対象の結果値140)を削除する(S84)。
次に、データ更新部210は、ステップS81、又は後述するステップS92で取得したデータ識別IDをキーとして、データアクセス管理テーブル200を参照して、アクセス先情報を取得する(S85)。
次に、データ更新部210は、ステップS85で取得したアクセス先情報に基づいて、図4に示す命令詳細情報134を作成し(S86)、命令メッセージ130を作成する(S87)。
次に、データ更新部210は、制御系通信処理部203に対して、図9に示す命令送信・結果受信処理を実行させる(S88)。命令送信・結果受信処理が完了した後、データ更新部210は、制御系通信処理部203が受信した結果メッセージ137から、図4に示す結果詳細情報139を取り出す(S89)。
次に、データ更新部210は、ステップS89で取得した結果詳細情報139からアクセス対象のアドレス135、アクセス対象のサイズ136、及びアクセス対象の結果値140を取り出す(S90)。
データ更新部210は、アクセス対象のアドレス135と、アクセス対象のサイズ136とをキーとして、データアクセス管理テーブル200を参照して、結果一時蓄積フィールドにステップS62で取得したアクセス対象の結果値140を格納する(S91)。これにより、アクセス対象の結果値140が更新される。そして、データ更新部210は、結果一時蓄積フィールドにアクセス対象の結果値140を格納した時刻を、データアクセス管理テーブル200の要求時刻に格納する。
次に、データ更新部210は、データアクセス管理テーブル200から次のレコードのデータ識別IDを取り出す(S92)。その後、データ更新部210は、ステップS82〜S92を繰り返し、実行する。これによりデータアクセス管理テーブル200に管理される全てのレコードについてアクセス対象の結果値140が周期的に更新される。
以上説明した第2の実施の形態に係るデータアクセスシステム7Aでは、ゲートウェイ装置2のデータ更新部210が、現在時刻と、データアクセス管理テーブル200から取得した要求時刻との差が許容時間を超えたデータに関して、データの更新を行う。これにより、第1の実施の形態に係るデータアクセスシステム7と比較して、制御ネットワーク6の負荷は増えてしまう。しかし、コンピュータ1から整合性の保障が必要なデータの要求として要求メッセージ110がゲートウェイ装置2に送信された場合、ゲートウェイ装置2は、コントローラ3からデータを取得することなく、直ちに応答メッセージ117を返信して応答することができる。
なお、本実施の形態では、ゲートウェイ装置2がコントローラ3内のデータを取得する際、データアクセス管理テーブル200内のデータ識別ID毎に命令メッセージ130を作成し(S87)、コントローラ3に対して送信する(S88)が、このような処理に限定しなくてよい。他の例として、ゲートウェイ装置2のデータ更新部210は、データアクセス管理テーブル200内の複数のデータ識別IDに対して図13のデータ更新処理に示すステップS82〜S86を繰り返し実行して複数の命令詳細情報134を作成した後、ステップS87を実行して作成した命令メッセージ130を、ステップS88を実行してコントローラ3に送信する。その後、データ更新部210は、コントローラ3から結果メッセージ137を受信する(S88)。そして、データ更新部210は、結果メッセージ137に含まれる結果詳細情報139のアクセス対象のアドレス135とサイズ136に対して、ステップS89〜S91を繰り返し実行して、データアクセス管理テーブル200に複数の結果値140を格納することにより、本実施の形態と同様の処理が可能となる。
また、データアクセス管理テーブル200に、更新時刻フィールドを追加することで、コンピュータ1−1からデータの取得を要求された要求時刻と、アクセス対象の結果値140を更新した時刻とを明確に分けてもよい。
[第3の実施の形態]
上述した第1及び第2の実施の形態に係るデータアクセスシステムでは、コンピュータ1から要求があった時にのみ、ゲートウェイ装置2がコンピュータ1にデータを送信していた。一方、図14に示す第3の実施の形態に係るデータアクセスシステム7Bが備えるゲートウェイ装置2は、現在時刻と、データアクセス管理テーブル200から取得した配信時刻との差が許容時間を超えた場合に、コンピュータ1に対してデータの送信を行う。これにより、コンピュータ1がゲートウェイ装置2を通じて同じデータを周期的に取得する場合、コンピュータ1からゲートウェイ装置2に対して同じ要求を何度も送信する必要がなくなるため、情報ネットワーク5の負荷を低減することができる。以下、第3の実施の形態に係るデータアクセスシステム7Bの構成及び動作の詳細を説明する。なお、ここでは主に第3の実施の形態について第2の実施の形態との差異に着目して説明する。
図14は、第3の実施の形態に係るデータアクセスシステム7Bの全体構成例を示す機能ブロック図である。
第3の実施の形態に係るコンピュータ1−1には、図12に示す第2の実施の形態に係るコンピュータ1−1に対して、データ受信部101が追加されている。データ受信部101は、CPU13によりメモリ10から読出され、実行される機能部であり、ゲートウェイ装置2から配信されるデータを受信する。
また、第3の実施の形態に係るゲートウェイ装置2では、図12に示す第2の実施の形態に対して、メモリ20にデータ配信部220が追加されている。
データ配信部220は、CPU24によりメモリ20から読出され、実行される機能部であり、コンピュータ1−1に対して周期的にデータを配信する。データ配信部220は、データアクセス管理テーブル230から取得したデータを含む応答メッセージ117を作成して、データアクセス管理テーブル230に配信先として規定されたコンピュータ1−1に、応答メッセージ117を配信する。応答メッセージ117の配信は、周期的に設定される時刻と、過去にコントローラ3−1から取得したデータをコンピュータ1−1に配信した時刻との差が、許容時間を超えた場合に行われる。周期的に設定される時刻とは、例えば、データ配信部220が動作する時点においてゲートウェイ装置2で管理される現在時刻であるが、他の時刻としてもよい。
さらに、図14に示すデータアクセス管理テーブル230は、図12に示すデータアクセス管理テーブル200に一部項目(配信先情報、配信時刻)を追加したものである。ここで、データアクセス管理テーブル230の詳細な構成について説明する。
<データアクセス管理テーブル>
図15は、データアクセス管理テーブル230の一例を示す説明図である。
上述したようにデータアクセス管理テーブル230は、図12に示すデータアクセス管理テーブル200に対して、配信先情報フィールドと配信時刻フィールドを追加した構成としてある。
配信先情報フィールドには、データの配信先となるコンピュータ1のアドレスが配信先情報として格納される。配信先となるコンピュータ1は1台でも、2台以上でもよい。また、配信先のコンピュータ1がない場合には、“0”が格納される。
配信時刻フィールドには、データ配信部220が後述する図17のステップS117を実行したときに格納される配信時刻が格納される。
<データ配信処理>
図16は、第3の実施の形態に係るデータ受信部101が実行するデータ配信処理の例を示すフローチャートである。データ配信処理は、ゲートウェイ装置2からコンピュータ1−1に対して周期的に配信されたデータを受信する処理である。
始めに、データ受信部101は、ゲートウェイ装置2から情報ネットワークI/F12を介して、図2に示す応答メッセージ117の受信を待つ(S101)。応答メッセージ117を受信しなければ(S101の無し)、データ受信部101は、ゲートウェイ装置2から配信される応答メッセージ117の受信を待ち続ける。
ステップS101にて、データ受信部101は、応答メッセージ117を受信すると(S101の有り)、応答メッセージ117に格納されている、結果値120を取り出し(S102)、表示装置11に結果値120を表示する(S103)。その後、データ受信部101は、ステップS101に戻り、処理を繰り返す。
<データ配信処理>
図17は、第3の実施の形態に係るデータ配信部220が実行するデータ配信処理の例を示すフローチャートである。データ配信処理は、ゲートウェイ装置2のデータ配信部220が、コンピュータ1−1に対して所定の配信時刻にデータを配信する処理である。
データ配信部220は、ゲートウェイ装置2が起動すると、図15に示すデータアクセス管理テーブル230の先頭レコードからデータ識別IDを取り出す(S111)。
データ配信部220は、ステップS111、又は後述するステップS120で取得したデータ識別IDをキーとして、データアクセス管理テーブル230を参照して、配信先情報フィールドから配信情報を取得し、配信時刻フィールドから配信時刻を取得する(S112)。
次に、データ配信部220は、ステップS113で取得した配信先情報が“0”であるか否かを判定する(S113)。ステップS113で取得した配信先情報が“0”である場合(S113のYES)、データ配信部220は、データアクセス管理テーブル230から次のレコードのデータ識別IDを取り出す(S120)。その後、データ配信部220は、ステップS112を実行する。
ステップS113で取得した配信先情報が“0”でない場合(S113のNO)、データの配信先となるコンピュータ1の数は少なくとも一つ以上ある。このため、データ配信部220は、ステップS112で取得した配信時刻と現在時刻との差が、許容時間外であるか、すなわち許容時間を超えたか否かを判定する(S114)。
ステップS112で取得した配信時刻と現在時刻との差が、許容時間を超えた場合(S114のYES)、配信先のコンピュータ1にデータを配信するため、データ配信部220は、データアクセス管理テーブル230から次のレコードのデータ識別IDを取り出す(S120)。その後、データ配信部220は、ステップS112を実行する。
ステップS112で取得した配信時刻と現在時刻との差が、許容時間内に収まっている場合(S114のNO)、配信先のコンピュータ1にデータは配信されない。このため、データ配信部220は、ステップS111、又は後述するステップS119で取得したデータ識別IDをキーとして、データアクセス管理テーブル230の結果一時蓄積フィールドからアクセス対象の結果値140を取得する(S115)。
次に、データ配信部220は、ステップS112で取得した配信先情報と、ステップS115で取得した結果値とを基にして、図2に示す応答詳細情報119を作成する(S116)。
次に、データ配信部220は、ステップS111、又は後述するステップS119で取得したデータ識別IDをキーとして、データアクセス管理テーブル230を参照して、配信時刻に現在時刻を格納する(S117)。
次に、データ配信部220は、ステップS116で作成した応答詳細情報119を基にして、図2に示す応答メッセージ117を作成する(S118)。そして、データ配信部220は、ステップS112で取得した配信先情報を基にし、情報ネットワークI/F21を介して、配信先のコンピュータ1に応答メッセージ117を個別に送信する(S119)。
次に、データ配信部220は、データアクセス管理テーブル230から次のレコードのデータ識別IDを取り出す(S120)。その後、データ配信部220は、ステップS112〜S119を繰り返し、実行する。
以上説明した第3の実施の形態に係るデータアクセスシステム7Bでは、ゲートウェイ装置2が配信時刻を管理し、配信時刻と現在時刻の差が許容時間内である場合には、データアクセス管理テーブル230に格納されている配信先のコンピュータ1にデータを配信する。これにより、コンピュータ1は、ゲートウェイ装置2から周期的にデータを取得する際、ゲートウェイ装置2に対する毎回のデータアクセス要求をなくすことができ、情報ネットワーク5の負荷を低減することが可能となる。また、コンピュータ1が周期的な取得を望まないデータに関しては、データアクセス管理テーブル230の該当データの配信先を“0”としておく。これにより、ゲートウェイ装置2は、不必要にコンピュータ1へとデータを配信しないため、情報ネットワーク5の負荷を上昇させることはない。
なお、本実施の形態では、ゲートウェイ装置2が配信先へ応答メッセージ117を送信する際、配信先に個別にデータを送信するが、これに限定されることはない。他の例として、ゲートウェイ装置2は、配信先情報フィールドに格納されている配信先のコンピュータ1に対してデータを一斉に送信してもよい。
また、本実施の形態では、データアクセス管理テーブル230は配信先情報フィールドに配信先情報を格納しているが、データアクセス管理テーブル230に配信先情報フィールドがなくてもよい。この場合、ゲートウェイ装置2は、情報ネットワーク5に接続されている全てのコンピュータ1−1〜1−nに対して、応答メッセージ117を送信する。そして、各コンピュータ1−1〜1−nが備えるデータ受信部101は、応答メッセージ117の破棄、又は受信を個別に行うことにより、本実施の形態と同様の処理が可能である。
また、本実施の形態に係るゲートウェイ装置2は、データアクセス管理テーブル230内のデータ識別ID毎に応答メッセージ117を作成し(S118)、送信する(S119)が、これに限定されることはない。他の例として、データアクセス管理テーブル230内の複数のデータ識別IDに対して、ステップS112〜S117を実行して応答詳細情報119を作成した後、ステップS118にて作成した応答メッセージ117を、ステップS119にて配信先へ送信することにより、本実施の形態と同様の処理が可能である。
[第4の実施の形態]
上述した第1〜第3の実施の形態に係るデータアクセスシステムでは、コンピュータ1−1〜1−n、ゲートウェイ装置2及びコントローラ3−1〜3−nを備える構成とした。しかし、コンピュータ1−1〜1−nとコントローラ3−1〜3−nが直接つながる構成とすることで、ゲートウェイ装置2を除いた構成としてもよい。以下、第4の実施の形態に係るデータアクセスシステム7Cの構成及び動作の詳細を説明する。なお、ここでは主に第4の実施の形態について第3の実施の形態との差異に着目して説明する。
図18は、第4の実施の形態に係るデータアクセスシステム7Cの全体構成例を示す機能ブロック図である。
第4の実施の形態に係るコンピュータ1−1は、図14に示す第3の実施の形態に係るコンピュータ1−1と同様の構成としている。すなわち、コンピュータ1−1のデータアクセス要求送信部100は、ネットワーク8を通じてコントローラ3−1にデータの要求を行い、コントローラ3−1からデータを取得することができる。また、コンピュータ1−1のデータ受信部101は、コントローラ3−1から配信されるデータを受信することができる。
コントローラ3−1のメモリ30には、上述した入力処理部301、出力処理部302、演算処理部303、データアクセス要求受信部304に加えて、データアクセス管理部306、通信処理部305、データ更新部307、データ配信部308及びデータアクセス管理テーブル300を備える。
通信処理部305、データアクセス管理部306、データ更新部307、データ配信部308は、上述したゲートウェイ装置2が備える情報系通信処理部201又は制御系通信処理部203、データアクセス管理部202、データ更新部210、データ配信部220と同様の機能としている。そして、通信処理部305、データアクセス管理部306、データ更新部307、データ配信部308は、CPU32によりメモリ30から読出され、実行される機能部である。
データアクセス管理テーブル300は、上述したゲートウェイ装置2が備えるデータアクセス管理テーブル230と同様の構成としている。このため、データアクセス管理テーブル300は、コントローラ3−1の制御対象であるプロセス4−1に関するデータのアクセス先が指定され、かつデータの整合性を保障するために参照される。
通信処理部305は、ネットワーク8に接続されたコンピュータ1−1とメッセージの送受信を行う。具体的には、通信処理部305は、コンピュータ1−1から要求メッセージ110を受信し、コンピュータ1−1に応答メッセージ117を送信する。
データアクセス管理部306は、データアクセス管理テーブル300を参照して、通信処理部305から受け取るデータアクセス要求をデータアクセス要求受信部304に渡す。このため、データアクセス管理部306は、データアクセス管理テーブル300を参照して、図2に示す要求メッセージ110を、データアクセス要求受信部304が解釈可能な命令に変換する。また、データアクセス管理部306は、データアクセス要求受信部304から渡された結果を、コンピュータ1−1が解釈可能な図2に示す応答メッセージ117に変換して通信処理部305に渡す。
より具体的には、データアクセス管理部306は、通信処理部305がコンピュータ1−1から受信したデータの取得を要求する要求メッセージ110を解釈し、データアクセス要求受信部304にアクセス先からデータを取得させる。そして、データアクセス管理部306は、解釈されたメッセージに基づいて、データアクセス要求受信部304がアクセス先から取得したデータをデータアクセス管理テーブル300に格納する。データアクセス管理部306は、コンピュータ1−1から受信したデータの取得を要求する要求メッセージ110に、データの整合性の保障を要求する情報が含まれる場合に、整合性を保障したデータを含む応答メッセージ117を通信処理部305からコンピュータ1−1に送信させる。このとき、許容時間内に取得したデータがデータアクセス管理テーブル300に格納されたことをデータの整合性を保障するための条件とする。そして、データアクセス管理部306は、データアクセス管理テーブル300から取得したデータをコンピュータ1−1が解釈可能に変換した応答メッセージ117を通信処理部305からコンピュータ1−1に送信する。
ここで、データアクセス管理部306は、通信処理部305がコンピュータ1−1からデータの取得を要求する要求メッセージ110を受信したタイミングで、データアクセス管理テーブル300に管理されるデータの整合性を判断する。例えば、データアクセス管理部306は、コンピュータ1−1がデータの取得を要求する要求メッセージ110を受信した時点における要求時刻と、過去にデータアクセス要求受信部304がデータを取得してデータアクセス管理テーブル300に格納した時刻との差が、許容時間内に収まるか判定する。データアクセス管理部306は、この差が許容時間内に収まる場合に、データアクセス管理テーブル300に管理され、整合性が保障されるデータを含む応答メッセージ117をコンピュータ1−1に対する応答として作成する。一方、データアクセス管理部306は、要求メッセージ110を受信した時点における要求時刻と、過去にデータアクセス要求受信部304がデータを取得してデータアクセス管理テーブル300に格納した時刻との差が、許容時間を超えた場合に、新たにデータアクセス要求受信部304が取得したデータによりデータアクセス管理テーブル300に管理されるデータを書換える。そして、データアクセス管理部306は、書換えたデータを含む応答メッセージ117をコンピュータ1−1に対する応答として作成する。この応答メッセージ117が通信処理部305によりコンピュータ1−1に送信される。
データ更新部307は、データアクセス要求受信部304との間でデータを送受信する機能と、データアクセス管理テーブル300に管理されるデータを更新する機能とを有している。このため、データ更新部307は、周期的に設定される時刻と、過去にデータアクセス要求受信部304が取得したデータをデータアクセス管理テーブル300に格納した時刻との差が、許容時間を超えた場合に、データアクセス要求受信部304が取得したデータをデータアクセス管理テーブル300に格納することでデータを更新する。
データ配信部308は、コンピュータ1−1に対して周期的にデータを配信する。このため、データ配信部308は、周期的に設定される時刻と、過去にデータアクセス要求受信部304が取得したデータをコンピュータ1−1に配信した時刻との差が、許容時間を超えた場合に、データアクセス管理テーブル300から取得したデータを含む応答メッセージ117を作成する。そして、データ配信部308は、データアクセス管理テーブル300に配信先として規定されたコンピュータ1−1に応答メッセージ117を配信する。
以上説明した第4の実施の形態に係るデータアクセスシステム7Cにおいても、第1〜第3の実施の形態に係るデータアクセスシステムと同様の機能を実現することが可能である。すなわち、コントローラ3がコンピュータ1に送信する応答メッセージ117に含まれるデータは整合性が保障されたものとなる。また、データアクセス管理テーブル300に格納されるデータは、許容時間を超えると最新のデータに更新される。また、コントローラ3からコンピュータ1には、周期的にデータを配信することが可能となる。
図18では、コントローラ3にネットワーク8を介してコンピュータ1−1〜1−nが接続された例を示したが、コントローラ3にネットワーク8を介してゲートウェイ装置2が接続された例としてもよい。このゲートウェイ装置2には、図1に示したように情報ネットワーク5を介してコンピュータ1が接続される構成としてもよい。この場合のゲートウェイ装置2は、上述した各実施の形態におけるデータの整合性を保障する機能は不要となり、異なる情報ネットワーク5とネットワーク8の間で送受信されるメッセージを変換する機能だけを有するものとしてよい。
なお、本発明は上述した実施の形態に限られるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りその他種々の応用例、変形例を取り得ることは勿論である。
例えば、上述した実施の形態は本発明を分かりやすく説明するために装置及びシステムの構成を詳細かつ具体的に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されない。また、ここで説明した実施の形態の構成の一部を他の実施の形態の構成に置き換えることは可能であり、さらにはある実施の形態の構成に他の実施の形態の構成を加えることも可能である。また、各実施の形態の構成の一部について、他の構成の追加、削除、置換をすることも可能である。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
1−1〜1−n…コンピュータ、2…ゲートウェイ装置、3−1〜3−n…コントローラ、4−1…プロセス、5…情報ネットワーク、6…制御ネットワーク、7…データアクセスシステム、100…データアクセス要求送信部、101…データ受信部、110…要求メッセージ、117…応答メッセージ、130…命令メッセージ、137…結果メッセージ、200…データアクセス管理テーブル、201…情報系通信処理部、202…データアクセス管理部、203…制御系通信処理部、210…データ更新部、220…データ配信部、304…データアクセス要求受信部

Claims (4)

  1. 情報ネットワークに接続されたコンピュータとメッセージの送受信を行う情報系通信処理部と、
    前記情報ネットワークとは異なる制御ネットワークに接続され、プロセスを制御するコントローラとメッセージの送受信を行う制御系通信処理部と、
    前記コントローラに対して前記プロセスに関するデータのアクセス先を指定し、かつデータの整合性を保障するために参照されるデータアクセス管理テーブルと、
    前記情報系通信処理部が前記コンピュータから受信したデータの取得を要求するメッセージを前記コントローラが解釈可能に変換し、前記コントローラが解釈可能なメッセージを前記制御系通信処理部から前記コントローラに送信させ、前記制御系通信処理部が前記コントローラから受信したメッセージに含まれ、前記コントローラが前記アクセス先から取得したデータを前記データアクセス管理テーブルに格納し、前記情報系通信処理部が前記コンピュータから受信したデータの取得を要求するメッセージに、前記コントローラから取得するデータの整合性の保障を要求する情報が含まれる場合に、許容時間内に前記コントローラから取得したデータが前記データアクセス管理テーブルに格納されたことをデータの整合性を保障するための条件として、前記データアクセス管理テーブルから取得したデータを含むメッセージであって、前記情報系通信処理部が前記コンピュータからデータの取得を要求するメッセージを受信したタイミングで、前記コンピュータがデータの取得を要求するメッセージを受信した時点における時刻と、過去に前記コントローラから取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、許容時間内に収まる場合に、前記データアクセス管理テーブルに管理され、整合性が保障されるデータを含むメッセージを前記コンピュータに対する応答として作成して、メッセージを前記コンピュータが解釈可能に変換し、一方、メッセージを受信した時点における時刻と、過去に前記コントローラから取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、前記許容時間を超えた場合に、新たに前記コントローラから取得したデータにより前記データアクセス管理テーブルに管理されるデータを書換え、書換えたデータを含むメッセージを前記コンピュータに対する応答として作成して、メッセージを前記コンピュータが解釈可能に変換し、前記コンピュータからデータの取得を要求するメッセージを受信したタイミングで作成され、変換された前記コンピュータが解釈可能なメッセージを前記情報系通信処理部から前記コンピュータに送信させるデータアクセス管理部と、
    周期的に設定される時刻と、過去に前記コントローラから取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、前記許容時間を超えた場合に、前記コントローラから取得したデータを前記データアクセス管理テーブルに格納することでデータを更新するデータ更新部と、
    周期的に設定される時刻と、過去に前記コントローラから取得したデータを前記コンピュータに配信した時刻との差が、前記許容時間を超えた場合に、前記データアクセス管理テーブルから取得したデータを含むメッセージを作成して、前記データアクセス管理テーブルに配信先として規定された前記コンピュータにメッセージを配信するデータ配信部と、
    を備える
    ゲートウェイ装置。
  2. 情報ネットワークに接続されたコンピュータ、及び前記情報ネットワークとは異なる制御ネットワークに接続され、プロセスを制御するコントローラとメッセージを送受信する
    ゲートウェイ装置により実行されるデータアクセス方法であって、
    前記コンピュータから前記プロセスに関するデータの取得を要求するメッセージを受信するステップと、
    前記コンピュータから受信したメッセージを前記コントローラが解釈可能に変換するステップと、
    前記コントローラが解釈可能なメッセージを前記コントローラに送信するステップと、
    前記コントローラからメッセージを受信するステップと、
    前記コントローラから受信したメッセージに含まれ、前記コントローラがアクセス先から取得したデータを、制御対象であるプロセスに関するデータの前記アクセス先が指定され、かつデータの整合性を保障するために参照されるデータアクセス管理テーブルに格納するステップと、
    前記コンピュータから受信したデータの取得を要求するメッセージに、前記コントローラから取得するデータの整合性の保障を要求する情報が含まれる場合に、許容時間内に前記コントローラから取得したデータが前記データアクセス管理テーブルに格納されたことをデータの整合性を保障するための条件として、前記データアクセス管理テーブルからデータを取得するステップと、
    前記データアクセス管理テーブルから取得したデータを含むメッセージであって、前記コンピュータからデータの取得を要求するメッセージを受信したタイミングで、前記コンピュータがデータの取得を要求するメッセージを受信した時点における時刻と、過去に前記コントローラから取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、許容時間内に収まる場合に、前記データアクセス管理テーブルに管理され、整合性が保障されるデータを含むメッセージを前記コンピュータに対する応答として作成して、メッセージを前記コンピュータが解釈可能なメッセージに変換し、一方、メッセージを受信した時点における時刻と、過去に前記コントローラから取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、前記許容時間を超えた場合に、新たに前記コントローラから取得したデータにより前記データアクセス管理テーブルに管理されるデータを書換え、書換えたデータを含むメッセージを前記コンピュータに対する応答として作成して、メッセージを前記コンピュータが解釈可能に変換するステップと、
    前記コンピュータからデータの取得を要求するメッセージを受信したタイミングで作成され、変換された前記コンピュータが解釈可能なメッセージを前記コンピュータに送信するステップと、
    周期的に設定される時刻と、過去に前記コントローラから取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、前記許容時間を超えた場合に、前記コントローラから取得したデータを前記データアクセス管理テーブルに格納することでデータを更新するステップと、
    周期的に設定される時刻と、過去に前記コントローラから取得したデータを前記コンピュータに配信した時刻との差が、前記許容時間を超えた場合に、前記データアクセス管理テーブルから取得したデータを含むメッセージを作成して、前記データアクセス管理テーブルに配信先として規定された前記コンピュータにメッセージを配信するステップと、を含む
    ゲートウェイ装置により実行されるデータアクセス方法。
  3. ネットワークに接続されたコンピュータ又はゲートウェイ装置とメッセージの送受信を行う通信処理部と、
    制御対象であるプロセスに関するデータのアクセス先が指定され、かつデータの整合性を保障するために参照されるデータアクセス管理テーブルと、
    前記アクセス先にアクセスしてデータを取得するデータアクセス要求受信部と、
    前記通信処理部が前記コンピュータ又は前記ゲートウェイ装置から受信したデータの取得を要求するメッセージを解釈し、前記データアクセス要求受信部に前記アクセス先からデータを取得させ、前記データアクセス要求受信部が前記アクセス先から取得したデータを前記データアクセス管理テーブルに格納し、前記コンピュータ又は前記ゲートウェイ装置から受信したデータの取得を要求するメッセージに、データの整合性の保障を要求する情報が含まれる場合に、前記データアクセス要求受信部が許容時間内に取得したデータが前記データアクセス管理テーブルに格納されたことをデータの整合性を保障するための条件として、前記データアクセス管理テーブルから取得したデータを含むメッセージであって、前記コンピュータ又は前記ゲートウェイ装置からデータの取得を要求するメッセージを受信したタイミングで、前記コンピュータ又は前記ゲートウェイ装置がデータの取得を要求するメッセージを受信した時点における時刻と、過去に前記アクセス先から取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、許容時間内に収まる場合に、前記データアクセス管理テーブルに管理され、整合性が保障されるデータを含むメッセージを前記コンピュータ又は前記ゲートウェイ装置に対する応答として作成して、メッセージを前記コンピュータ又は前記ゲートウェイ装置が解釈可能に変換し、一方、メッセージを受信した時点における時刻と、過去に前記アクセス先から取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、前記許容時間を超えた場合に、新たに前記アクセス先から取得したデータにより前記データアクセス管理テーブルに管理されるデータを書換え、書換えたデータを含むメッセージを前記コンピュータ又は前記ゲートウェイ装置に対する応答として作成して、メッセージを前記コンピュータ又は前記ゲートウェイ装置が解釈可能に変換し、前記コンピュータ又は前記ゲートウェイ装置からデータの取得を要求するメッセージを受信したタイミングで作成され、変換された前記コンピュータ又は前記ゲートウェイ装置が解釈可能なメッセージを、前記通信処理部から前記コンピュータ又は前記ゲートウェイ装置に送信させるデータアクセス管理部と、
    周期的に設定される時刻と、過去に前記アクセス先から取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、前記許容時間を超えた場合に、前記アクセス先から取得したデータを前記データアクセス管理テーブルに格納することでデータを更新するデータ更新部と、
    周期的に設定される時刻と、過去に前記アクセス先から取得したデータを前記コンピュータ又は前記ゲートウェイ装置に配信した時刻との差が、前記許容時間を超えた場合に、前記データアクセス管理テーブルから取得したデータを含むメッセージを作成して、前記データアクセス管理テーブルに配信先として規定された前記コンピュータ又は前記ゲートウェイ装置にメッセージを配信するデータ配信部と、を備える
    コントローラ。
  4. ネットワークに接続されたコンピュータ又はゲートウェイ装置とメッセージの送受信を行うコントローラにより実行されるデータアクセス方法であって、
    前記コンピュータ又は前記ゲートウェイ装置からデータの取得を要求するメッセージを受信するステップと、
    データの取得を要求するメッセージを解釈するステップと、
    解釈したメッセージに基づいて制御対象であるプロセスに関するデータのアクセス先にアクセスしてデータを取得するステップと、
    前記アクセス先が指定され、かつデータの整合性を保障するために参照されるデータアクセス管理テーブルに、前記アクセス先から取得したデータを格納するステップと、
    データの取得を要求するメッセージに、データの整合性の保障を要求する情報が含まれる場合に、許容時間内に取得したデータが前記データアクセス管理テーブルに格納された
    ことをデータの整合性を保障するための条件として、前記データアクセス管理テーブルからデータを取得するステップと、
    前記データアクセス管理テーブルから取得したデータを含むメッセージであって、前記コンピュータ又は前記ゲートウェイ装置からデータの取得を要求するメッセージを受信したタイミングで、前記コンピュータ又は前記ゲートウェイ装置がデータの取得を要求するメッセージを受信した時点における時刻と、過去に前記アクセス先から取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、許容時間内に収まる場合に、前記データアクセス管理テーブルに管理され、整合性が保障されるデータを含むメッセージを前記コンピュータ又は前記ゲートウェイ装置に対する応答として作成して、メッセージを前記コンピュータ又は前記ゲートウェイ装置が解釈可能なメッセージに変換し、一方、メッセージを受信した時点における時刻と、過去に前記アクセス先から取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、前記許容時間を超えた場合に、新たに前記アクセス先から取得したデータにより前記データアクセス管理テーブルに管理されるデータを書換え、書換えたデータを含むメッセージを前記コンピュータ又は前記ゲートウェイ装置に対する応答として作成して、メッセージを前記コンピュータ又は前記ゲートウェイ装置が解釈可能に変換するステップと、
    前記コンピュータ又は前記ゲートウェイ装置からデータの取得を要求するメッセージを受信したタイミングで作成され、変換された前記コンピュータ又は前記ゲートウェイ装置が解釈可能なメッセージを、前記コンピュータ又は前記ゲートウェイ装置に送信するステップと、
    周期的に設定される時刻と、過去に前記アクセス先から取得したデータを前記データアクセス管理テーブルに格納した時刻との差が、前記許容時間を超えた場合に、前記アクセス先から取得したデータを前記データアクセス管理テーブルに格納することでデータを更新するステップと、
    周期的に設定される時刻と、過去に前記アクセス先から取得したデータを前記コンピュータ又は前記ゲートウェイ装置に配信した時刻との差が、前記許容時間を超えた場合に、前記データアクセス管理テーブルから取得したデータを含むメッセージを作成して、前記データアクセス管理テーブルに配信先として規定された前記コンピュータ又は前記ゲートウェイ装置にメッセージを配信するステップと、を含む
    コントローラにより実行されるデータアクセス方法。
JP2017125900A 2017-06-28 2017-06-28 ゲートウェイ装置、ゲートウェイ装置により実行されるデータアクセス方法、コントローラ、及びコントローラにより実行されるデータアクセス方法 Active JP6776191B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017125900A JP6776191B2 (ja) 2017-06-28 2017-06-28 ゲートウェイ装置、ゲートウェイ装置により実行されるデータアクセス方法、コントローラ、及びコントローラにより実行されるデータアクセス方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017125900A JP6776191B2 (ja) 2017-06-28 2017-06-28 ゲートウェイ装置、ゲートウェイ装置により実行されるデータアクセス方法、コントローラ、及びコントローラにより実行されるデータアクセス方法

Publications (2)

Publication Number Publication Date
JP2019008690A JP2019008690A (ja) 2019-01-17
JP6776191B2 true JP6776191B2 (ja) 2020-10-28

Family

ID=65029624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017125900A Active JP6776191B2 (ja) 2017-06-28 2017-06-28 ゲートウェイ装置、ゲートウェイ装置により実行されるデータアクセス方法、コントローラ、及びコントローラにより実行されるデータアクセス方法

Country Status (1)

Country Link
JP (1) JP6776191B2 (ja)

Also Published As

Publication number Publication date
JP2019008690A (ja) 2019-01-17

Similar Documents

Publication Publication Date Title
US7275236B1 (en) Method for programming a multiple device control system using object sharing
JP5177804B2 (ja) フィールド通信システムおよびフィールド通信方法
KR101720376B1 (ko) 에너지 관리 시스템 및 데이터 동기화 방법
KR102486704B1 (ko) 감시제어데이터수집시스템에서의 클라이언트 및 서버
CN101169655B (zh) 过程控制系统
JP6938573B2 (ja) オペレータサーバおよびオペレータクライアントを備えた装置
JP2005190437A (ja) 制御装置管理システム
JP6776191B2 (ja) ゲートウェイ装置、ゲートウェイ装置により実行されるデータアクセス方法、コントローラ、及びコントローラにより実行されるデータアクセス方法
KR101655727B1 (ko) 프로그래머블 컨트롤러 및 프로그래머블 컨트롤러의 제어 방법
CN103595796A (zh) 一种基于网络的动态监控方法及系统
JP2003280732A (ja) データ伝送装置、および、それを用いた制御システム
US20120168409A1 (en) Method and Arrangement for the Operation of Welding Controllers
JP2007249471A (ja) 共有データ管理システムおよび管理サーバ並びに共有データ管理方法
CN111971630B (zh) 管理装置及管理系统
JP2007026122A (ja) プラント監視制御システム
CN112020684B (zh) 信息处理装置、系统构建辅助方法及存储有系统构建辅助程序的非易失性存储装置
US11842116B2 (en) Screen data generating system, screen data generating method, and program
CN102480388A (zh) 一种监控方法
KR100394233B1 (ko) 감시내용을 작화 및 변경하는 컴퓨터를 갖는 모니터링시스템
JPWO2020166026A1 (ja) 管理装置、管理システム、管理方法及びプログラム
JP2005065164A (ja) 通信制御処理装置及び通信制御処理方法
JP2010205152A (ja) ネットワークシステムおよびネットワークアダプタ
US11290517B2 (en) Display data providing apparatus including application server configured to generate display data
JP6144571B2 (ja) プラント管理装置およびプラント管理方法
JP2006350884A (ja) ファームウェア更新システムおよびファームウェア更新方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191106

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200818

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200914

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: 20200929

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201007

R150 Certificate of patent or registration of utility model

Ref document number: 6776191

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150