JP2022136724A - 制御装置、データ通信方法およびデータ通信プログラム - Google Patents

制御装置、データ通信方法およびデータ通信プログラム Download PDF

Info

Publication number
JP2022136724A
JP2022136724A JP2021036472A JP2021036472A JP2022136724A JP 2022136724 A JP2022136724 A JP 2022136724A JP 2021036472 A JP2021036472 A JP 2021036472A JP 2021036472 A JP2021036472 A JP 2021036472A JP 2022136724 A JP2022136724 A JP 2022136724A
Authority
JP
Japan
Prior art keywords
opc
control device
address space
instances
data communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021036472A
Other languages
English (en)
Inventor
成憲 澤田
Shigenori Sawada
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2021036472A priority Critical patent/JP2022136724A/ja
Priority to PCT/JP2021/034679 priority patent/WO2022190429A1/ja
Publication of JP2022136724A publication Critical patent/JP2022136724A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Small-Scale Networks (AREA)
  • Programmable Controllers (AREA)

Abstract

【課題】複数のネットワークインターフェイスを有する制御装置において、OPC UAに従うデータ通信を実現するための新規の構成を提供する。【解決手段】制御対象を制御するための制御装置は、複数のネットワークインターフェイスと、複数のネットワークインターフェイスにそれぞれ対応付けられた複数のOPC UAインスタンスと、制御演算に係るデータオブジェクトを管理する共有アドレス空間とを含む。複数のOPC UAインスタンスは、共有アドレス空間が管理するデータオブジェクトを共有する個別アドレス空間をそれぞれ有している。複数のOPC UAインスタンスの各々は、自身の個別アドレス空間を用いて、OPC UAに従うデータ通信を行う。【選択図】図2

Description

本技術は、制御装置、データ通信方法およびデータ通信プログラムに関する。
一般的な情報系ネットワークに採用されている標準的なネットワーク(例えば、イーサネット(登録商標))を産業分野のネットワークでも利用できるように拡張する取り組みが進行しつつある。例えば、デバイス間でデータ通信を行うための通信スタックとして、IEC62541として国際標準化されているOPC UA(OPC Unified Architecture)が普及しつつある。
例えば、特許文献1(欧州特許第03357218号明細書)は、OPC-UAプロトコルに従うクライエントデバイスおよびサーバデバイスとの間のデータ通信などを開示する。
欧州特許第03357218号明細書
PLC(Programmable Logic Controller)などの制御装置にOPC UAを実装した場合を考慮すると、レイヤ毎にネットワークインターフェイスが用意されることも多い。このような複数のネットワークインターフェイスを有する構成において、OPC UAに従うデータ通信を実現することについては何ら考慮されていない。
本技術は、複数のネットワークインターフェイスを有する制御装置において、OPC UAに従うデータ通信を実現するための新規の構成を提供する。
本技術のある実施の形態に係る制御対象を制御するための制御装置は、複数のネットワークインターフェイスと、複数のネットワークインターフェイスにそれぞれ対応付けられた複数のOPC UAインスタンスと、制御演算に係るデータオブジェクトを管理する共有アドレス空間とを含む。複数のOPC UAインスタンスは、共有アドレス空間が管理するデータオブジェクトを共有する個別アドレス空間をそれぞれ有している。複数のOPC UAインスタンスの各々は、自身の個別アドレス空間を用いて、OPC UAに従うデータ通信を行う。
この構成によれば、制御演算に係る共通のデータオブジェクトに関して、複数の通信先との間でそれぞれOPC UAに従うデータ通信を行うことができる。
個別アドレス空間の各々は、共有アドレス空間が管理するデータオブジェクトの複製に加えて、各OPC UAインスタンスに固有のデータオブジェクトを管理するようにしてもよい。この構成によれば、各OPC UAインスタンスで提供するサービスなどに応じたデータオブジェクトも管理できる。
制御装置は、複数のOPC UAインスタンスに対するアクセス権をそれぞれ管理する管理モジュールをさらに含んでいてもよい。この構成によれば、複数の通信先およびデータ通信の間で競合を避けるようなアクセス管理を実現できる。
管理モジュールは、共有アドレス空間が管理するデータオブジェクトのうち同一のデータオブジェクトに対するアクセスの優先度に基づいて、複数のOPC UAインスタンスから当該同一のデータオブジェクトに対するそれぞれのアクセス権を決定するようにしてもよい。この構成によれば、同一のデータオブジェクトに対するアクセスの優先度に基づいて、当該同一のデータオブジェクトに対するアクセスの競合などを回避できる。
管理モジュールは、同一のデータオブジェクトに対する書き込み権限を、複数のOPC UAインスタンスのうち1つのOPC UAインスタンスにのみ設定するようにしてもよい。この構成によれば、複数のOPC UAインスタンスのみが任意のデータオブジェクトに対する書き込みを許可されるので、書き込みの競合を回避できる。
アクセスの優先度は、IEEE802.1 TSNに従う優先度に従って決定されてもよい。この構成によれば、IEEE802.1 TSNに従うフレーム転送のルールと整合したアクセスの優先度を設定できる。
制御装置は、複数のネットワークインターフェイスのそれぞれのポートの状態を取得するポート状態制御部をさらに含んでいてもよい。管理モジュールは、複数のネットワークインターフェイスのポートの状態に基づいて、アクセス権を決定するようにしてもよい。この構成によれば、インターフェイスのポートの状態に基づいて、アクセス権を適切に決定できる。
ポート状態制御部は、複数のネットワークインターフェイスのポートの状態を変更するように構成されてもよい。この構成によれば、アクセス権の設定や変更とともに、複数のネットワークインターフェイスのポートの状態を変更することができる。
本技術の別の実施の形態によれば、制御対象を制御するための制御装置におけるデータ通信方法が提供される。制御装置は複数のネットワークインターフェイスを有している。データ通信方法は、複数のネットワークインターフェイスにそれぞれ対応付けられた複数のOPC UAインスタンスを生成するステップと、共有アドレス空間で制御演算に係るデータオブジェクトを管理するステップとを含む。複数のOPC UAインスタンスは、共有アドレス空間で管理されるデータオブジェクトを共有する個別アドレス空間をそれぞれ有している。通信方法は、複数のOPC UAインスタンスの各々が、自身の個別アドレス空間を用いて、OPC UAに従うデータ通信を行うステップを含む。
本技術のさらに別の実施の形態によれば、制御対象を制御するための制御装置で実行されるデータ通信プログラムが提供される。制御装置は複数のネットワークインターフェイスを有している。データ通信プログラムは、制御装置に、複数のネットワークインターフェイスにそれぞれ対応付けられた複数のOPC UAインスタンスを生成するステップと、共有アドレス空間で制御演算に係るデータオブジェクトを管理するステップとを実行させる。複数のOPC UAインスタンスは、共有アドレス空間で管理されるデータオブジェクトを共有する個別アドレス空間をそれぞれ有している。データ通信プログラムは、制御装置に、複数のOPC UAインスタンスの各々が、自身の個別アドレス空間を用いて、OPC UAに従うデータ通信を行うステップを実行させる。
本技術によれば、複数のネットワークインターフェイスを有する制御装置において、OPC UAに従うデータ通信を実現するための新規の構成を提供できる。
本実施の形態に係る制御システムの全体構成例を示す模式図である。 本実施の形態に係る制御装置のデータモデルを示す模式図である。 本実施の形態に係る制御装置におけるデータオブジェクトの共有方法を示す模式図である。 本実施の形態に係る制御装置のハードウェア構成例を示すブロック図である。 本実施の形態に係る制御装置におけるアクセス管理の一例を示す模式図である。 本実施の形態に係る制御装置におけるアクセス管理を実現するための機能構成のある局面を示す模式図である。 本実施の形態に係る制御装置におけるアクセス管理を実現するための機能構成の別の局面を示す模式図である。 本実施の形態に係る制御装置におけるアクセス管理に係る処理内容を説明するための図である。 本実施の形態に係る制御装置が生成するアクセス権設定の一例を示す図である。 本実施の形態に係る制御装置におけるデータ通信に係る処理手順を示すフローチャートである。 本実施の形態に係る制御装置におけるアクセス管理に係る処理手順を示すフローチャートである。
本技術の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
<A.適用例>
まず、本発明が適用される場面の一例について説明する。
図1は、本実施の形態に係る制御システム1の全体構成例を示す模式図である。図1を参照して、制御システム1は、制御装置100-1,100-2(以下、「制御装置100」とも総称する。)と、上位装置200とを含む。
制御装置100は、典型的には、制御対象を制御するためのPLC(Programmable Logic Controller)である。制御装置100-1と制御装置100-2との間は、ネットワーク4を介して接続されており、OPC UAに従うデータ通信が可能になっている。より具体的には、制御装置100の各々は、フィールドバス8を有している。フィールドバス8には、1または複数のフィールドデバイス10が接続される。1または複数のフィールドデバイス10は、フィールド信号を取得する入力デバイス、および、制御装置100からの指示に従ってフィールドに対して何らかのアクションを行う出力デバイスあるいはアクチュエータを含む。
上位装置200は、例えば、制御装置100からのデータを格納するデータベース、生産管理サーバ、認証サーバである。制御装置100-1と上位装置200との間は、ネットワーク2を介して接続されており、OPC UAに従うデータ通信が可能になっている。
図2は、本実施の形態に係る制御装置100のデータモデルを示す模式図である。図2を参照して、制御装置100は、制御対象を制御するための制御演算を担当するPLCエンジン170と、データ通信の対象となるデータ群であるグローバル変数モジュール172と、データ通信に係る各種処理を担当するサービスモジュール174とを含む。
グローバル変数モジュール172は、PLCエンジン170が実行する制御演算において参照可能な変数(入力変数、出力変数、内部変数など)のうち、外部への公開が指定されている変数(グローバル変数)を保持および更新する。
サービスモジュール174は、リクエストに応じて、指定された処理を実行し、その結果を応答するといった、データ通信に必要な様々な処理を実行する。PLCエンジン170は、必要に応じて、サービスモジュール174と連携して指定された処理を実行する。
制御装置100は、複数のネットワークインターフェイス106-1,106-2(以下、「ネットワークインターフェイス106」とも総称する。)を有している。ネットワークインターフェイス106-1は、ネットワーク2を介して上位装置200と接続されており、ネットワークインターフェイス106-2は、ネットワーク4を介して他の制御装置100と接続されている。ネットワークインターフェイス106-1,106-2は、ポート108-1,108-2をそれぞれ論理的に有している。
制御装置100は、ネットワークインターフェイス106-1,106-2にそれぞれ対応付けられたOPC UAインスタンス150-1,150-2(以下、「OPC UAインスタンス150」とも総称する。)を有している。すなわち、制御装置100は、2つのOPC UAインスタンス150-1,150-2を生成する処理を実行する。
OPC UAで用いられるアプリケーション認証は、IPアドレスに基づくクライエント・サーバ証明書で行われるため、2つのネットワークインターフェイス106-1,106-2にそれぞれ対応付けて、2つのOPC UAインスタンス150-1,150-2が必要となる。
OPC UAインスタンス150の各々は、Client/Server、Pub/Subなどの各種処理および機能を実現するための処理実体である。OPC UAインスタンス150の各々は、上位装置200または他の制御装置100との間のPub/Sub(Publisher/Subscriber)通信、ならびに、Req/Res(Request/Response)通信を担当する。Pub/Sub通信においては、周期的にデータがやり取りされる。Req/Res通信においては、イベント的にデータがやり取りされる。
制御装置100においては、2つのOPC UAインスタンス150との内部インターフェイスとして、共有アドレス空間142および管理モジュール160が配置される。すなわち、2つのOPC UAインスタンス150は、共有アドレス空間142を介して、グローバル変数モジュール172およびサービスモジュール174にアクセスする。OPC UAインスタンス150-1,150-2は、個別アドレス空間152-1,152-2を有している。個別アドレス空間152-1,152-2の各々は、共有アドレス空間142が管理するデータオブジェクト144の全部または一部の複製を有している。すなわち、個別アドレス空間152-1,152-2の各々は、共有アドレス空間142が管理するデータオブジェクト144を共有する。
共有アドレス空間142は、OPC UAに従うデータ通信において参照されるデータオブジェクト144を保持および格納する仮想空間である。より具体的には、共有アドレス空間142は、PLCエンジン170が実行する制御演算に係るデータオブジェクト144を管理する。すなわち、制御装置100は、共有アドレス空間142で制御演算に係るデータオブジェクト144を管理する処理を実行する。
OPC UAインスタンス150-1は、自身の個別アドレス空間152-1を用いて、OPC UAに従うデータ通信を行う。同様に、そして、OPC UAインスタンス150-2は、自身の個別アドレス空間152-2を用いて、OPC UAに従うデータ通信を行う。このように、OPC UAインスタンス150-1およびOPC UAインスタンス150-2は、互いに独立したアドレス空間を公開して、データ通信を行う。但し、個別アドレス空間152-1,152-2は、いずれも共有アドレス空間142を共有するので、実体としては、統合されたアドレス空間となっている。
このように、制御装置100においては、複数のOPC UAインスタンス150-1,150-2の各々が、自身の個別アドレス空間152-1,152-2を用いて、OPC UAに従うデータ通信を行う。
管理モジュール160は、OPC UAインスタンス150-1,150-2に対するアクセス権をそれぞれ管理する。すなわち、管理モジュール160は、OPC UAインスタンス150-1,150-2による共有アドレス空間142へのアクセスを管理する。
図3は、本実施の形態に係る制御装置100におけるデータオブジェクトの共有方法を示す模式図である。図3を参照して、共有アドレス空間142が管理するデータオブジェクト144の複製であるデータオブジェクト154-1およびデータオブジェクト154-2が個別アドレス空間152-1および個別アドレス空間152-2にそれぞれ配置される。すなわち、OPC UAインスタンス150-1の個別アドレス空間152-1が管理するデータオブジェクト154-1、および、OPC UAインスタンス150-2の個別アドレス空間152-2が管理するデータオブジェクト154-2は、共有アドレス空間142が管理するデータオブジェクト144と実質的に同一である。
このように、個別アドレス空間152-1および個別アドレス空間152-2は、共通のデータオブジェクトを管理する。データオブジェクト154-1およびデータオブジェクト154-2は、データオブジェクト144だけではなく、OPC UAインスタンス150-1とOPC UAインスタンス150-2との間で共通なデータオブジェクトをさらに含んでいてもよい。
OPC UAインスタンス150の各々から見ると、基本的には、他のOPC UAインスタンス150が管理するデータオブジェクトにアクセスできないが、共有アドレス空間142が管理するデータオブジェクト144にはアクセスできることになる。
データオブジェクト144およびデータオブジェクト154-1,154-2は、静的に事前に定義されたデータオブジェクトだけではなく、動的に変更されるデータオブジェクトを含んでいてもよい。すなわち、追加および削除されるデータオブジェクトについても反映される。
個別アドレス空間152-1は、データオブジェクト154-1とは別に、固有データオブジェクト156-1を管理するようにしてもよい。同様に、個別アドレス空間152-2は、データオブジェクト154-2とは別に、固有データオブジェクト156-2を管理するようにしてもよい。固有データオブジェクト156-1および固有データオブジェクト156-2は、それぞれOPC UAインスタンス150-1およびOPC UAインスタンス150-2に固有のデータオブジェクトである。このように、個別アドレス空間152-1,152-2の各々は、共有アドレス空間142が管理するデータオブジェクト144の複製に加えて、各OPC UAインスタンス150に固有の固有データオブジェクト156を管理するようにしてもよい。
なお、個別アドレス空間152-1が管理する固有データオブジェクト156-1、および、個別アドレス空間152-2が管理する固有データオブジェクト156-2を他方のOPC UAインスタンス150に公開するようにしてもよい。公開によって、一方のOPC UAインスタンス150から他方のOPC UAインスタンス150の固有データオブジェクトにアクセスできる。
本実施の形態に係る制御装置100は、図2および図3に示すデータモデルを採用することで、複数の通信先との間でそれぞれOPC UAに従うデータ通信を実現できる。
<B.ハードウェア構成例>
次に、本実施の形態に係る制御装置100のハードウェア構成の一例について説明する。
図4は、本実施の形態に係る制御装置100のハードウェア構成例を示すブロック図である。図4を参照して、制御装置100は、プロセッサ102と、主メモリ104と、ネットワークインターフェイス106-1,106-2と、ストレージ110と、内部バスインターフェイス120と、フィールドバスインターフェイス122と、メモリカードインターフェイス124とを含む。各コンポーネントは、バス128を介して電気的に接続されている。
プロセッサ102は、CPU(Central Processing Unit)、MPU(Micro-Processing Unit)、GPU(Graphical Processing Unit)などで構成され、ストレージ110に格納された各種プログラムを読み出して、主メモリ104に展開して実行することで、制御装置としての処理を実現する。
ネットワークインターフェイス106-1,106-2は、任意のネットワークを介してデータ通信を担当する。ネットワークインターフェイス106-1,106-2は、ネットワークと物理的に接続するためのポート108-1,108-2を有している。ネットワークインターフェイス106は、例えば、イーサネット(登録商標)をベースにして、ネットワークが決定性のある挙動をするように改良されたIEEE(Institute of Electrical and Electronic Engineers) 802.1 TSN(Time Sensitive Networking)(以下、単に「TSN」とも称す。)を利用してフレームを送受信するようにしてもよい。但し、通常のイーサネット(登録商標)に従うネットワークを用いることもできる。
ストレージ110には、典型的には、制御装置としての機能を実現するためのシステムプログラム112と、制御装置が実行する制御ロジックを規定したユーザプログラム114とが格納される。システムプログラム112は、本実施の形態に係るデータ通信方法を実現するためのデータ通信プログラムを含む。ユーザプログラム114は、制御対象に応じて、ユーザが任意に設計および作成する。
内部バスインターフェイス120は、制御装置100に搭載されるI/Oユニット130との間でデータをやり取りする。フィールドバスインターフェイス122は、フィールドバス8を介したフィールドデバイスとの間でデータをやり取りする。
メモリカードインターフェイス124は、メモリカード126を着脱可能に構成されており、メモリカード126に対してデータを書き込み、メモリカード126から各種データ(ユーザプログラムやトレースデータなど)を読み出すことが可能になっている。
図4には、プロセッサ102がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードワイヤード回路(例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。あるいは、制御装置100の主要部を、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。このように、制御装置100で実行される処理および提供する機能は、プロセッサ、ASIC、FPGAなどを含む処理回路(processing circuitry)で実現してもよい。
<C.アクセス管理>
次に、本実施の形態に係る制御装置100におけるアクセス管理について説明する。
上述したように、制御装置100においては、複数のアクセス元から共有アドレス空間142に対してアクセスがなされる。このような複数のアクセス元からのアクセスを管理する必要がある。
例えば、制御装置100においては、ユニットあるいはポート毎にプロファイルが設定され、あるいは、同一のポートに対して複数のプロファイルを切り替えて反映することもある。そのため、データ通信の優先度あるいは重要度、および、データ通信の通信状態などに基づいて、アクセス権を管理することが好ましい。
上述したように、複数のネットワークインターフェイス106を有する制御装置100においては、ネットワークインターフェイス106毎にOPC UAインスタンスが生成される。すなわち、それぞれのOPC UAインスタンスが有している個別アドレス空間は、互いに独立したものでありが、複数の個別アドレス空間は、いずれも共有アドレス空間にアクセスすることになる。
そのため、それぞれのOPC UAインスタンスに適したアクセス権の管理が必要であるとともに、排他制御などのアクセスが衝突しないような仕組みも導入することが好ましい。さらに、データ通信の種類も複数存在するため、データ通信の種類に応じたアクセス権の管理も必要となる。
そこで、本実施の形態に係る制御装置100は、個別アドレス空間および共有アドレス空間を一体的に管理するとともに、データ通信の優先度やポートの状態などに応じて、適切なアクセス権の管理を実現する。
さらに、TSNにおいては、8個の優先度が定義されており、各フレームに対して優先度を設定できる。例えば、制御装置100で実行される制御演算に用いるデータに対する優先度は高く設定され、上位装置200からのアクセスに対する優先度は低く設定される。すなわち、アクセス(データ通信)の優先度は、IEEE802.1 TSNに従う優先度に従って決定されてもよい。
このような優先度を考慮して、優先度が相対的に高いアクセスを優先するようにしてもよい。この場合、同一のデータに対するアクセスが競合しないように、優先度が相対的に低いアクセスについては読み取り専用に設定してもよい。さらに、アクセスが競合しなくても、リセットなどの制御演算を停止するような操作については、書き込み禁止に設定してもよい。
一方で、制御演算に用いるデータの通信が停止している場合であって、制御演算に対する影響が小さいと判断されるような場合には、アクセスできるように、書き込み禁止を解除してもよい。
図5は、本実施の形態に係る制御装置100におけるアクセス管理の一例を示す模式図である。図5を参照して、他の制御装置100とのデータ通信を担当するOPC UAインスタンス150-2の個別アドレス空間152-2から共有アドレス空間142へのアクセスは許可する一方で、上位装置200とのデータ通信を担当するOPC UAインスタンス150-1の個別アドレス空間152-1から共有アドレス空間142へのアクセスは禁止してもよい。
また、アドレス空間は、制御演算に用いるデータを送受信するPub/Sub通信に関する情報を含む。このようなPub/Sub通信に関する情報に対してアクセスすることで、データ通信を停止し、あるいは、通信設定を削除することも可能になる。そのため、このようなデータ通信に致命的な影響を与えるような操作については、状況に応じて、アクセスを禁止することが好ましい。
例えば、セーフティ通信であれば、制御装置100で実行されるセーフティロジック側からのみアクセスできるようにし、通信先の他の制御装置100あるいは上位装置200からのアクセスに対しては、書き込み禁止に設定してもよい。また、セーフティ通信中においては、通信設定を削除できないようにアクセスを制限するようにしてもよい。
図6は、本実施の形態に係る制御装置100におけるアクセス管理を実現するための機能構成のある局面を示す模式図である。図6を参照して、制御装置100の管理モジュール160は、機能構成として、ポート状態制御エンジン162と、評価エンジン164と、アドレス空間制御エンジン168とを含む。
ポート状態制御エンジン162は、ネットワークインターフェイス106のポート108の状態を取得する。また、ポート状態制御エンジン162は、ネットワークインターフェイス106との間でコマンドなどをやり取りするとともに、ネットワークインターフェイス106のポート108の状態を変更することもできる。
評価エンジン164は、アドレス空間に対するアクセス権の設定および変更を担当する。評価エンジン164は、通信状態情報165と、優先度テーブル166と、アクセス権設定167とを含む。
アドレス空間制御エンジン168は、評価エンジン164からの指示に従って、アドレス空間のアクセス権を設定あるいは変更する。
図6を参照して、制御装置100におけるアクセス権の変更に係る処理について説明する。図6には、ポート108の通信状態に応じて、アクセス権の設定あるいは変更が実行される場合の例を示す。
ポート状態制御エンジン162は、ネットワークインターフェイス106の状態を監視して、ポート108の状態および状態変化を通信状態情報165に反映する(ステップS2)。通信状態情報165には、各ポートの通信状態が格納される。
評価エンジン164は、通信状態情報165を参照して、アクセス権の変更要否を判断する(ステップS4)。評価エンジン164は、アクセス権の変更が必要と判断すると、通信状態情報165および優先度テーブル166を参照して、アクセス権設定167を更新する(ステップS6)。そして、評価エンジン164は、更新後のアクセス権設定167に基づいて、アクセス権の変更をアドレス空間制御エンジン168へ通知する(ステップS8)。
アドレス空間制御エンジン168は、共有アドレス空間142および個別アドレス空間152-1,152-2のアクセス権を変更する(ステップS10)。
図7は、本実施の形態に係る制御装置100におけるアクセス管理を実現するための機能構成の別の局面を示す模式図である。図7には、ネットワークインターフェイス106からの要求に応じて、アクセス権の設定あるいは変更が実行される場合の例を示す。
図7を参照して、ポート状態制御エンジン162は、ネットワークインターフェイス106の状態を監視して、ポート108の状態および状態変化を通信状態情報165に反映する(ステップS12)。
ポート状態制御エンジン162は、ネットワークインターフェイス106からのポート状態変更要求を受信すると(ステップS14)、アクセス権の見直し要求を評価エンジン164へ送信する(ステップS16)。
評価エンジン164は、通信状態情報165および優先度テーブル166を参照して、アクセス権設定167を更新する(ステップS18)。そして、評価エンジン164は、更新後のアクセス権設定167に基づいて、アクセス権の変更をアドレス空間制御エンジン168へ通知する(ステップS20)。
アドレス空間制御エンジン168は、共有アドレス空間142および個別アドレス空間152-1,152-2のアクセス権を変更する(ステップS22)。
以上のような手順によって、アドレス空間のアクセス権が設定あるいは変更される。
図8は、本実施の形態に係る制御装置100におけるアクセス管理に係る処理内容を説明するための図である。図8を参照して、通信状態情報165には、対象のポート毎に通信状態が格納される。図8に示す例では、3つのポート(ポートA,B,C)の各々についての通信状態が示されている。
より具体的には、通信状態情報165は、通信種類1652と、優先度1654と、状態1656とを含む。通信種類1652は、対応するポートを利用して行われている通信の種類を示す。優先度1654は、対応する通信の種類に設定されている優先度を示す。状態1656は、対応する通信の状態(運転中/停止中)を示す。
優先度1654に格納される優先度テーブル166を参照して決定される。優先度テーブル166は、例えば、TSNにおいて定義されている8個の優先度に対応して設定されてもよいし、任意の優先度の区分を設定してもよい。
より具体的には、優先度テーブル166は、優先度1662と、通信種類1664とを含む。優先度1662は、設定される優先度を示し、通信種類1664は、対応する通信の種類を示す。すなわち、優先度テーブル166は、通信の種類毎に定義された優先度を示す。
優先度が最も高い通信に関するアクセス権設定167-1と、それ以外の通信に関するアクセス権設定167-2が用意されている。アクセス権設定167-1およびアクセス権設定167-2は、データオブジェクトに対応する変数毎にアクセス権を規定する。
アクセス権設定167-1は、変数1672と、関連する通信1674と、動作中の優先度高の通信種類1676と、動作中の優先度高のアクセス権1678とを含む。
変数1672は、外部への公開が指定されている変数(グローバル変数)を示す。変数1672に規定されている変数は、共有アドレス空間142が管理するデータオブジェクト144に含まれることになる。
関連する通信1674には、対応する変数にアクセスすることが予定されている通信が利用するポートおよび当該通信の優先度が格納される。例えば、変数「aa」に対応付けられている「Aの2」は、「ポートA」の優先度「2」の通信によるアクセス予定を示す。同様に、変数「ab」に対応付けられている「Aの2」および「Bの3」は、「ポートA」の優先度「2」の通信によるアクセス予定、および、「ポートB」の優先度「3」の通信によるアクセス予定を示す。
動作中の優先度高の通信種類1676には、対応する変数にアクセスすることが予定されている1または複数の通信のうち、優先度が最も高い通信の通信種類が格納される。例えば、変数「aa」へのアクセスは、「ポートA」の優先度「2」の通信が予定されており、この通信は、優先度テーブル166の優先度「2」に対応する「モニタ」となる。
一方、変数「ab」へのアクセスは、「ポートA」の優先度「2」の通信、および、「ポートB」の優先度「3」の通信が予定されており、これらの通信のうち優先度が最も高いのは「3」となる。ことのき、優先度テーブル166の優先度「3」に対応する「イベント」が通信種類として格納される。
なお、変数「cc」へのアクセスは、「ポートC」の優先度「7」の通信が予定されているが、当該通信は停止中であるため、通信種類は「なし」となる。
動作中の優先度高のアクセス権1678には、優先度が最も高い通信に対応するポート、および、アクセス権(書き込み可能(Write/Read)または読み出し専用(Read Only))が格納される。例えば、変数「aa」には通信種類として「モニタ」が対応付けられており、「モニタ」に対応して、読み出し専用(Read Only)が設定される。同様に、変数「ab」には通信種類として「イベント」が対応付けられており、「モニタ」に対応して、書き込み可能(Write/Read)が設定される。
アクセス権設定167-2は、変数1672と、書き込み権限1679とを含む。変数1672には、アクセス権設定167-1の変数1672と同様の変数が格納される。書き込み権限1679には、アクセス権設定167-1の動作中の優先度高のアクセス権1678に応じたアクセス権(書き込み可能(Write/Read)または読み出し専用(Read Only))が格納される。
図9は、本実施の形態に係る制御装置100が生成するアクセス権設定167の一例を示す図である。図9を参照して、アクセス権設定167は、ポート(OPC UAインスタンス)毎のアクセス権(書き込み可能(Write/Read)または読み出し専用(Read Only))を変数毎に定義する。
このように、管理モジュール160は、同一のデータオブジェクト(典型的には、上述したような変数)に対する書き込み権限を、複数のOPC UAインスタンス150のうち1つのOPC UAインスタンス150にのみ設定する。
アドレス空間制御エンジン168は、図9に示すようなアクセス権設定167に従って、アドレス空間のアクセス権を設定する。
上述したように、管理モジュール160は、共有アドレス空間142が管理するデータオブジェクト144のうち同一のデータオブジェクト(典型的には、上述したような変数)に対するアクセス(データ通信)の優先度に基づいて、複数のOPC UAインスタンス150から当該同一のデータオブジェクトに対するそれぞれのアクセス権を決定する。また、管理モジュール160は、ネットワークインターフェイス106のポートの状態に基づいて、アクセス権を決定する。
<D.処理手順>
次に、本実施の形態に係る制御装置100が実行する処理について説明する。
図10は、本実施の形態に係る制御装置100におけるデータ通信に係る処理手順を示すフローチャートである。図10に示す各ステップは、典型的には、制御装置100のプロセッサ102がシステムプログラム112を実行することで実現される。
図10を参照して、制御装置100は、初期状態において、共有アドレス空間142を生成する(ステップS100)とともに、ネットワークインターフェイス106-1,106-2にそれぞれ対応付けられた複数のOPC UAインスタンス150-1,150-2を生成する(ステップS102)。
制御周期が到来すると(ステップS104においてYES)、制御装置100は、制御演算を実行し(ステップS106)、制御演算の結果を共有アドレス空間142が管理するデータオブジェクト144に反映する(ステップS108)。すなわち、制御装置100は、共有アドレス空間142で制御演算に係るデータオブジェクト144を管理する。
そして、制御装置100は、共有アドレス空間142が管理するデータオブジェクト144を個別アドレス空間152-1が管理するデータオブジェクト154-1に反映し、共有アドレス空間142が管理するデータオブジェクト144を個別アドレス空間152-2が管理するデータオブジェクト154-2に反映する(ステップS110)。
制御装置100のOPC UAインスタンス150-1が個別アドレス空間152-1を用いて、OPC UAに従うデータ通信を行うとともに、制御装置100のOPC UAインスタンス150-2が個別アドレス空間152-2を用いて、OPC UAに従うデータ通信を行う(ステップS112)。そして、ステップS104以下の処理が繰り返される。
なお、必要に応じて、以下に示すアクセス管理に係る処理が実行される。
図11は、本実施の形態に係る制御装置100におけるアクセス管理に係る処理手順を示すフローチャートである。図11に示す各ステップは、典型的には、制御装置100のプロセッサ102がシステムプログラム112を実行することで実現される。
図11を参照して、制御装置100は、ネットワークインターフェイス106の状態を監視して、ポート108の状態を通信状態情報165に反映する(ステップS200)。続いて、制御装置100は、アクセス権の変更要否を判断すべき条件が成立したか否かを判断する(ステップS202)。
アクセス権の変更要否を判断すべき条件としては、例えば、通信状態情報165に格納された通信状態が変更された場合、および、ネットワークインターフェイス106からの要求を受けた場合などを含む。
アクセス権の変更要否を判断すべき条件が成立していなければ(ステップS202においてNO)、ステップS200以下の処理が繰り返される。
アクセス権の変更要否を判断すべき条件が成立していれば(ステップS202においてYES)、制御装置100は、通信状態情報165および優先度テーブル166を参照して、変数毎に優先度が最も高いポートおよびアクセス権を決定し(ステップS204)、変数毎およびポート毎にアクセス権を規定したアクセス権設定167を決定する(ステップS206)。そして、制御装置100は、決定したアクセス権設定167に従って、アドレス空間のアクセス権を設定する(ステップS208)。そして、ステップS200以下の処理が繰り返される。
<E.その他の実施の形態>
上述の説明においては、PLCなどの制御装置に複数のOPC UAインスタンスを実装した構成例を示すが、実装される装置は、制御装置に限らず、HMI(Human Machine Interface)やIPC(Industrial Personal Computer)などであってもよい。
また、OPC UAインスタンスの数についても3つ以上であってもよい。
<F.付記>
上述したような本実施の形態は、以下のような技術思想を含む。
[構成1]
制御対象を制御するための制御装置(100)であって、
複数のネットワークインターフェイス(108-1,108-2)と、
前記複数のネットワークインターフェイスにそれぞれ対応付けられた複数のOPC UAインスタンス(150-1,150-2)と、
制御演算に係るデータオブジェクトを管理する共有アドレス空間(142)とを備え、
前記複数のOPC UAインスタンスは、前記共有アドレス空間が管理するデータオブジェクトを共有する個別アドレス空間(152-1,152-2)をそれぞれ有しており、
前記複数のOPC UAインスタンスの各々は、自身の個別アドレス空間を用いて、OPC UAに従うデータ通信を行う、制御装置。
[構成2]
前記個別アドレス空間の各々は、前記共有アドレス空間が管理するデータオブジェクト(144)の複製(154)に加えて、各OPC UAインスタンスに固有のデータオブジェクト(156)を管理する、構成1に記載の制御装置。
[構成3]
前記複数のOPC UAインスタンスに対するアクセス権をそれぞれ管理する管理モジュール(160)をさらに備える、構成1または2に記載の制御装置。
[構成4]
前記管理モジュールは、前記共有アドレス空間が管理するデータオブジェクトのうち同一のデータオブジェクトに対するアクセスの優先度に基づいて、前記複数のOPC UAインスタンスから当該同一のデータオブジェクトに対するそれぞれのアクセス権を決定する、構成3に記載の制御装置。
[構成5]
前記管理モジュールは、前記同一のデータオブジェクトに対する書き込み権限を、前記複数のOPC UAインスタンスのうち1つのOPC UAインスタンスにのみ設定する、構成4に記載の制御装置。
[構成6]
前記アクセスの優先度は、IEEE802.1 TSNに従う優先度に従って決定される、構成4または5に記載の制御装置。
[構成7]
前記複数のネットワークインターフェイスのそれぞれのポートの状態を取得するポート状態制御部(162)をさらに備え、
前記管理モジュールは、前記複数のネットワークインターフェイスのポートの状態に基づいて、アクセス権を決定する、構成3~6のいずれか1項に記載の制御装置。
[構成8]
前記ポート状態制御部は、前記複数のネットワークインターフェイスのポートの状態を変更するように構成される、構成7に記載の制御装置。
[構成9]
制御対象を制御するための制御装置(100)におけるデータ通信方法であって、前記制御装置は複数のネットワークインターフェイス(108-1,108-2)を有しており、
前記複数のネットワークインターフェイスにそれぞれ対応付けられた複数のOPC UAインスタンス(150-1,150-2)を生成するステップ(S102)と、
共有アドレス空間で制御演算に係るデータオブジェクトを管理するステップ(S108)とを備え、前記複数のOPC UAインスタンスは、前記共有アドレス空間で管理されるデータオブジェクトを共有する個別アドレス空間(152-1,152-2)をそれぞれ有しており、
前記複数のOPC UAインスタンスの各々が、自身の個別アドレス空間を用いて、OPC UAに従うデータ通信を行うステップ(S112)を備える、データ通信方法。
[構成10]
制御対象を制御するための制御装置(100)で実行されるデータ通信プログラム(112)であって、前記制御装置は複数のネットワークインターフェイス(108-1,108-2)を有しており、前記データ通信プログラムは前記制御装置に、
前記複数のネットワークインターフェイスにそれぞれ対応付けられた複数のOPC UAインスタンス(150-1,150-2)を生成するステップ(S102)と、
共有アドレス空間で制御演算に係るデータオブジェクトを管理するステップ(S108)とを実行させ、前記複数のOPC UAインスタンスは、前記共有アドレス空間で管理されるデータオブジェクトを共有する個別アドレス空間(152-1,152-2)をそれぞれ有しており、
前記複数のOPC UAインスタンスの各々が、自身の個別アドレス空間を用いて、OPC UAに従うデータ通信を行うステップ(S112)を実行させる、データ通信プログラム。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 制御システム、2,4 ネットワーク、8 フィールドバス、10 フィールドデバイス、100 制御装置、102 プロセッサ、104 主メモリ、106 ネットワークインターフェイス、108 ポート、110 ストレージ、112 システムプログラム、114 ユーザプログラム、120 内部バスインターフェイス、122 フィールドバスインターフェイス、124 メモリカードインターフェイス、126 メモリカード、128 バス、130 I/Oユニット、142 共有アドレス空間、144,154 データオブジェクト、150 OPC UAインスタンス、152 個別アドレス空間、156 固有データオブジェクト、160 管理モジュール、162 ポート状態制御エンジン、164 評価エンジン、165 通信状態情報、166 優先度テーブル、167 アクセス権設定、168 アドレス空間制御エンジン、170 PLCエンジン、172 グローバル変数モジュール、174 サービスモジュール、200 上位装置、1652,1664,1676 通信種類、1654,1662 優先度、1656 状態、1672 変数、1674 通信、1678 アクセス権、1679 書き込み権限。

Claims (10)

  1. 制御対象を制御するための制御装置であって、
    複数のネットワークインターフェイスと、
    前記複数のネットワークインターフェイスにそれぞれ対応付けられた複数のOPC UAインスタンスと、
    制御演算に係るデータオブジェクトを管理する共有アドレス空間とを備え、
    前記複数のOPC UAインスタンスは、前記共有アドレス空間が管理するデータオブジェクトを共有する個別アドレス空間をそれぞれ有しており、
    前記複数のOPC UAインスタンスの各々は、自身の個別アドレス空間を用いて、OPC UAに従うデータ通信を行う、制御装置。
  2. 前記個別アドレス空間の各々は、前記共有アドレス空間が管理するデータオブジェクトの複製に加えて、各OPC UAインスタンスに固有のデータオブジェクトを管理する、請求項1に記載の制御装置。
  3. 前記複数のOPC UAインスタンスに対するアクセス権をそれぞれ管理する管理モジュールをさらに備える、請求項1または2に記載の制御装置。
  4. 前記管理モジュールは、前記共有アドレス空間が管理するデータオブジェクトのうち同一のデータオブジェクトに対するアクセスの優先度に基づいて、前記複数のOPC UAインスタンスから当該同一のデータオブジェクトに対するそれぞれのアクセス権を決定する、請求項3に記載の制御装置。
  5. 前記管理モジュールは、前記同一のデータオブジェクトに対する書き込み権限を、前記複数のOPC UAインスタンスのうち1つのOPC UAインスタンスにのみ設定する、請求項4に記載の制御装置。
  6. 前記アクセスの優先度は、IEEE802.1 TSNに従う優先度に従って決定される、請求項4または5に記載の制御装置。
  7. 前記複数のネットワークインターフェイスのそれぞれのポートの状態を取得するポート状態制御部をさらに備え、
    前記管理モジュールは、前記複数のネットワークインターフェイスのポートの状態に基づいて、アクセス権を決定する、請求項3~6のいずれか1項に記載の制御装置。
  8. 前記ポート状態制御部は、前記複数のネットワークインターフェイスのポートの状態を変更するように構成される、請求項7に記載の制御装置。
  9. 制御対象を制御するための制御装置におけるデータ通信方法であって、前記制御装置は複数のネットワークインターフェイスを有しており、
    前記複数のネットワークインターフェイスにそれぞれ対応付けられた複数のOPC UAインスタンスを生成するステップと、
    共有アドレス空間で制御演算に係るデータオブジェクトを管理するステップとを備え、前記複数のOPC UAインスタンスは、前記共有アドレス空間で管理されるデータオブジェクトを共有する個別アドレス空間をそれぞれ有しており、
    前記複数のOPC UAインスタンスの各々が、自身の個別アドレス空間を用いて、OPC UAに従うデータ通信を行うステップを備える、データ通信方法。
  10. 制御対象を制御するための制御装置で実行されるデータ通信プログラムであって、前記制御装置は複数のネットワークインターフェイスを有しており、前記データ通信プログラムは前記制御装置に、
    前記複数のネットワークインターフェイスにそれぞれ対応付けられた複数のOPC UAインスタンスを生成するステップと、
    共有アドレス空間で制御演算に係るデータオブジェクトを管理するステップとを実行させ、前記複数のOPC UAインスタンスは、前記共有アドレス空間で管理されるデータオブジェクトを共有する個別アドレス空間をそれぞれ有しており、
    前記複数のOPC UAインスタンスの各々が、自身の個別アドレス空間を用いて、OPC UAに従うデータ通信を行うステップを実行させる、データ通信プログラム。
JP2021036472A 2021-03-08 2021-03-08 制御装置、データ通信方法およびデータ通信プログラム Pending JP2022136724A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021036472A JP2022136724A (ja) 2021-03-08 2021-03-08 制御装置、データ通信方法およびデータ通信プログラム
PCT/JP2021/034679 WO2022190429A1 (ja) 2021-03-08 2021-09-22 制御装置、データ通信方法およびデータ通信プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021036472A JP2022136724A (ja) 2021-03-08 2021-03-08 制御装置、データ通信方法およびデータ通信プログラム

Publications (1)

Publication Number Publication Date
JP2022136724A true JP2022136724A (ja) 2022-09-21

Family

ID=83227741

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021036472A Pending JP2022136724A (ja) 2021-03-08 2021-03-08 制御装置、データ通信方法およびデータ通信プログラム

Country Status (2)

Country Link
JP (1) JP2022136724A (ja)
WO (1) WO2022190429A1 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6881256B2 (ja) * 2017-11-27 2021-06-02 オムロン株式会社 制御装置、制御方法、およびプログラム
FI127806B (en) * 2017-12-22 2019-02-28 Prosys Opc Oy A method, system and computer software for managing OPC UA server capacity
JP7063009B2 (ja) * 2018-03-01 2022-05-09 オムロン株式会社 表示装置、画面生成方法、および画面生成プログラム
EP3758333B1 (en) * 2019-06-25 2022-09-28 Schneider Electric Industries SAS Method for configuring an industrial automation system

Also Published As

Publication number Publication date
WO2022190429A1 (ja) 2022-09-15

Similar Documents

Publication Publication Date Title
JP4489399B2 (ja) プロセッサでのデータ処理方法及びデータ処理システム
de Souza Carvalho et al. Dynamic task mapping for MPSoCs
WO2021217529A1 (zh) 一种进程间通信的方法及系统
US20230025159A1 (en) Controlling just in time access to a cluster
JP4455822B2 (ja) データ処理方法
JP4597553B2 (ja) コンピュータ・プロセッサ及び処理装置
WO2022072096A1 (en) Infrastructure processing unit
JP4768386B2 (ja) 外部デバイスとデータ通信可能なインターフェイスデバイスを有するシステム及び装置
EP3095214B1 (en) An entity handle registry to support traffic policy enforcement
JP2015537307A (ja) コンポーネント指向ハイブリッドクラウドオペレーティングシステムのアーキテクチャ及びその通信方法
CN108293017A (zh) 用于使用物联网边缘安全网关的装置和方法
US20100269148A1 (en) Policy-provisioning
WO2022171083A1 (zh) 基于物联网设备的信息处理方法、相关设备及存储介质
US20090228418A1 (en) Virtual intelligent fabric
JP2015517712A (ja) 動的に構築可能なコンピュータシステム
US20240160488A1 (en) Dynamic microservices allocation mechanism
WO2010028583A1 (zh) 基于权限组件对工作流组件中的权限管理的方法及装置
WO2019097800A1 (ja) コントロール装置
EP4193308A1 (en) System and methods for supporting artificial intelligence service in a network
WO2022190429A1 (ja) 制御装置、データ通信方法およびデータ通信プログラム
EP3719646B1 (en) Method for communicating in a network-distributed process control system and network-distributed process control system
Pedreiras Supporting flexible real-time communication on distributed systems
GB2596103A (en) Dual level management
Deters Decentralized access control with distributed ledgers
US11811512B2 (en) Multicast routing method, interconnection device, mesh network system and configuration method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240116

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240827