(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-09-10
(54)【発明の名称】モジュール式プラントのデジタルツインモデルに基づいてシミュレーションの構成をオーケストレーションするコンピュータ実行方法及びオーケストレーションシステム
(51)【国際特許分類】
G06F 9/50 20060101AFI20240903BHJP
G06F 11/36 20060101ALI20240903BHJP
【FI】
G06F9/50 150Z
G06F11/36 196
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024508317
(86)(22)【出願日】2022-08-08
(85)【翻訳文提出日】2024-04-09
(86)【国際出願番号】 EP2022072185
(87)【国際公開番号】W WO2023016960
(87)【国際公開日】2023-02-16
(32)【優先日】2021-08-09
(33)【優先権主張国・地域又は機関】EP
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】390039413
【氏名又は名称】シーメンス アクチエンゲゼルシヤフト
【氏名又は名称原語表記】Siemens Aktiengesellschaft
(74)【代理人】
【識別番号】110003317
【氏名又は名称】弁理士法人山口・竹本知的財産事務所
(74)【代理人】
【識別番号】100075166
【氏名又は名称】山口 巖
(74)【代理人】
【識別番号】100133167
【氏名又は名称】山本 浩
(74)【代理人】
【識別番号】100169627
【氏名又は名称】竹本 美奈
(72)【発明者】
【氏名】ボテロ ハルブラウブ,アンドレス
(72)【発明者】
【氏名】ゲッツ,ヤン
(72)【発明者】
【氏名】ヘルト,ハラルト
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042HH07
(57)【要約】
モジュール式プラント(Pm, PM1, PM2, PM3)のデジタルツインモデル(DTM1, DTM2, DTM3)に基づいて、モデルベースのシミュレーションの構成が自動的に生成され展開されるように、シミュレーションの構成をオーケストレーションするために、「Functional Mock-up Unit <FMU>」機能(FMU-T)と組み合わされた「Functional Mock-up Interface <FMI>」機能(FMI-T)を含むロジカル「System Structure and Parameterization <SSP>」機能(SSP-T)に基づいて、(1)モジュール式プラントの分散OT(Operational-Technology)アプリケーション(OTAd, ED1, ED2, ED3)に関して、プラントのオートメーションのためにキャプチャされるオートメーションデータ(AD1, AD2, AD3)の割り当てルール(AR1, AR2, AR3)を含んでいて分散OTアプリケーションに割り当てられるシミュレーションのモデルコンポーネント(MCs,1, MCs,2, MCs,3)を生成する(grt)こと、(2)シミュレーションの構成をオーケストレーションする過程において、シミュレーションのモデルコンポーネントを分散OTアプリケーションに展開(dpl)し、この展開に際し、分散OTアプリケーションに対し、FMI機能の一部として「Functional Mock-up Unit <FMU>」機能(FMU-T1, FMU-T2, FMU-T3)を有するSSP機能を使用し、及び、分散OTアプリケーションに関して、サーバ-クライアント方式でFMI機能の一部として、・SSP機能に埋め込まれた「プロキシFMU」エンティティ(PFMU-E1, PFMU-E2, PFMU-E3)及び・分散OTアプリケーションで実行される対応する「被制御FMU」エンティティ(RCFMU-E1, RCFMU-E2, RCFMU-E3)を有する「Remote Procedure Call <RPC>」技術ベースのプロキシFMU機能(PFMU-T1, PFMU-T2, PFMU-T3)を実行する。
【特許請求の範囲】
【請求項1】
モジュール式プラント(P
m、PM
1、PM
2、PM
3)のデジタルツインモデル(DTM
1、DTM
2、DTM
3)に基づいてシミュレーションの構成をオーケストレーションするコンピュータ実行方法であって、
モデルベースのシミュレーションの構成に、
a)ロジカル「SSP:System Structure and Parameterization」機能(SSP-T)
a1)次のa11)及びa12)を論理的に記述し
a11)シミュレーションのためのモデルコンポーネントが、複合コンポーネントへの展開のためにどのように接続され構成されるか、及び、
a12)モデルパラメータ化データがどのように記憶され、それぞれの前記モデルコンポーネントと前記複合コンポーネントとの間でどのように交換されるか
a2)XMLファイル及びコンパイルしたCコードを包含した「ZIPアーカイブ」ベースの「FMU:Functional Mock-up Unit」機能(FMU-T)を介してシミュレーションを共有するための「FMI:Functional Mock-up Interface」機能(FMI-T)を含んでいる、
が使用され、
b) 前記モジュール式プラント(P
m、PM
1、PM
2、PM
3)の分散OT(operational technology)アプリケーション(OTA
d、ED
1、ED
2、ED
3)、この分散OTアプリケーションはフィールドデバイスのエッジデバイス(ED
1、ED
2、ED
3)である、に関して、前記モジュール式プラント(P
m、PM
1、PM
2、PM
3)のオートメーションのためにキャプチャされるオートメーションデータ(AD
1、AD
2、AD
3)の割り当てルール(AR
1、AR
2、AR
3)を含んでいて前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)に割り当てられるシミュレーションのモデルコンポーネント(MC
s,1、MC
s,2、MC
s,3)を生成(grt)し、
c) シミュレーションの構成をオーケストレーションする過程において、前記シミュレーションのモデルコンポーネント(MC
s,1、MC
s,2、MC
s,3)を前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)に展開(dpl)し、この展開に際し、前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)に対し、前記FMI機能(FMI-T)の一部として前記「Functional Mock-up Unit <FMU>」機能(FMU-T)を有する前記SSP機能(SSP-T)を使用し、及び、前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)に関して、サーバ-クライアント方式で前記FMI機能(FMI-T)の一部として、
・前記SSP機能(SSP-T)に埋め込まれた「プロキシFMU」エンティティ(PFMU-E
1,PFMU-E
2,PFMU-E
3)及び
・前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)で実行される対応する「被制御FMU」エンティティ(RCFMU-E
1,RCFMU-E
2,RCFMU-E
3)
を有する「RPC:Remote Procedure Call」技術ベースのプロキシFMU機能(PFMU-T
1,PFMU-T
2,PFMU-T
3)を実行し、
d) 前記オートメーションデータ(AD
1、AD
2、AD
3)の前記割り当てルール(AR
1、AR
2、AR
3)に従って、前記シミュレーションのモデルコンポーネント(MC
s,1、MC
s,2、MC
s,3)の展開(dpl)の結果として、前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)に前記オートメーションデータ(AD
1、AD
2、AD
3)を展開(dpl)する、
ことを特徴とする、コンピュータ実行方法。
【請求項2】
請求項1に記載のコンピュータ実行方法を実行するコンピュータ実行ツール(CIT)であって、特にAPPなどのコンピュータプログラムとして設計され、
・非一時的プロセッサ可読記憶媒体(STM)に記憶された前記コンピュータ実行方法を実行するためのプログラムモジュール(PGM)のプロセッサ可読プログラム命令を入れた非一時的プロセッサ可読記憶媒体(STM)と、
・前記記憶媒体(STM)に接続され、前記プログラムモジュール(PGM)の前記プロセッサ可読プログラム命令を実行して請求項1に記載のコンピュータ実行方法を実行するプロセッサ(PRC)と、
を含む、コンピュータ実行ツール(CIT)。
【請求項3】
モジュール式プラント(P
m、PM
1、PM
2、PM
3)のデジタルツインモデル(DTM
1、DTM
2、DTM
3)に基づいてシミュレーションの構成をオーケストレーションするオーケストレーションシステム(OS)であって、
a)ロジカル「SSP:System Structure and Parameterization」ツール(SSP-T)
a1)次のa11)及びa12)を論理的に記述し
a11)シミュレーションのためのモデルコンポーネントが、複合コンポーネントへの展開のためにどのように接続され構成されるか、及び、
a12)モデルパラメータ化データがどのように記憶され、それぞれの前記モデルコンポーネントと前記複合コンポーネントとの間でどのように交換されるか
a2)XMLファイル及びコンパイルしたCコードを包含した「ZIPアーカイブ」ベースの「FMU:Functional Mock-up Unit」ツール(FMU-T)を介してシミュレーションを共有するための「FMI:Functional Mock-up Interface」ツール(FMI-T)を含んでいる、
を含む、モデルベースのシミュレーションを構成するためのサーバコントローラ(SCRT)を有し、
b) 前記モジュール式プラント(P
m、PM
1、PM
2、PM
3)の分散OT(operational technology)アプリケーション(OTA
d、ED
1、ED
2、ED
3)、この分散OTアプリケーションはフィールドデバイスのエッジデバイス(ED
1、ED
2、ED
3)である、に関して、前記モジュール式プラント(P
m、PM
1、PM
2、PM
3)のオートメーションのためにキャプチャされるオートメーションデータ(AD
1、AD
2、AD
3)の割り当てルール(AR
1、AR
2、AR
3)を含んでいて前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)に割り当てられるシミュレーションのモデルコンポーネント(MC
s,1、MC
s,2、MC
s,3)を生成(grt)する、生成ユニット(GU)と、
c) 前記サーバコントローラ(SCRT)の展開ツール(DT)であって、
c1) シミュレーションの構成をオーケストレーションする過程において、前記シミュレーションのモデルコンポーネント(MC
s,1、MC
s,2、MC
s,3)を前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)に展開(dpl)し、この展開に際し、前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)に対し、前記FMI機能(FMI-T)の一部として前記「Functional Mock-up Unit <FMU>」機能(FMU-T)を有する前記SSP機能(SSP-T)を使用し、及び、前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)に関して、サーバ-クライアント方式で前記FMI機能(FMI-T)の一部として、
・前記サーバコントローラ(SCRT)の前記SSP機能(SSP-T)に埋め込まれた「プロキシFMU」エンティティ(PFMU-E
1,PFMU-E
2,PFMU-E
3)及び
・クライアントコントローラ(CCRT
1、CCRT
2、CCRT
3)を含む前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)で実行される対応する「被制御FMU」エンティティ(RCFMU-E
1,RCFMU-E
2,RCFMU-E
3)
を有する「RPC:Remote Procedure Call」技術ベースのプロキシFMU機能(PFMU-T
1,PFMU-T
2,PFMU-T
3)を実行し、
c2) 前記オートメーションデータ(AD
1、AD
2、AD
3)の前記割り当てルール(AR
1、AR
2、AR
3)に従って、前記シミュレーションのモデルコンポーネント(MC
s,1、MC
s,2、MC
s,3)の展開(dpl)の結果として、前記分散OTアプリケーション(OTA
d、ED
1、ED
2、ED
3)に前記オートメーションデータ(AD
1、AD
2、AD
3)を展開(dpl)する、展開ツール(DT)と、
を有することを特徴とする、オーケストレーションシステム(OS)。
【請求項4】
特にAPPとして設計されるコンピュータプログラムであり、
・非一時的プロセッサ可読記憶媒体(STM)に記憶されたシミュレーションの構成をオーケストレーションするためのプログラムモジュール(PGM)のプロセッサ可読プログラム命令を入れた非一時的プロセッサ可読記憶媒体(STM)と、
・前記記憶媒体(STM)に接続され、前記プログラムモジュール(PGM)の前記プロセッサ可読プログラム命令を実行してシミュレーションの構成をオーケストレーションするプロセッサ(PRC)と、
を有するコンピュータ実行ツール(CIT)を特徴とする、請求項3に記載のオーケストレーションシステム(OS)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、請求項1前段に係る、モジュール式プラントのデジタルツインモデルに基づいてシミュレーションの構成をオーケストレーション(構築/運用自動化)するコンピュータ実行方法(コンピュータにより実行される方法)、及び、請求項3前段に係る、モジュール式プラントのデジタルツインモデルに基づいてシミュレーションの構成をオーケストレーションするオーケストレーションシステムに関する。
【背景技術】
【0002】
産業分野(例えば、金属処理や化学処理産業)、医療分野、エネルギー分野、電気通信分野などの様々な技術分野のプラントではモジュール式が進んでおり、プラント所有者は、そのタスクを機器サプライヤに委託し、すべての自動化及び分析機能を組み込んだモジュール式機器を機器サプライヤが提供する。
【0003】
プラント所有者にとっては、オーケストレーションレイヤへのオートメーション(MTP、PackML、その他の多くのもの)の統合に関するベンダアグノスティックソリューションがあるが、機器のエッジデバイスにおける分散分析及びシミュレーションに関してソリューションは存在しない。本願はこの問題を取り上げる。
【0004】
エッジデバイスにおける分散分析とシミュレーションに関しては、いくつかの特定の問題がある。
・フィールドデータにアクセスできるエッジインフラストラクチャにおいて、分散シミュレーションは現在、サポートされていない。
・このような分散型エッジアプリケーションのオートメーションへの統合には、時間がかかる--ほとんどの場合、タグごとに指定されたOpen Platform Communications Unified Architecture <OPCUA>タグに従って、複雑なオーケストレーションで有効化、接続、検証を行う必要があり、同期ルーチンを開発する必要がある。
・ハードウェア、ソフトウェア、及びオペレーティングシステムへの、及びシミュレーションとシミュレーションのオーケストレーションへの、過多な依存。
・同期に起因する、多くのエッジデバイス間の分散シミュレーションの複雑な展開。
【0005】
しかし、そのようなアプリケーションの今日のソリューションが利用可能であったとしても、必要とされる機能の大多数は、具体的に1回の使用(シングルユース)のために開発されており、したがって、拡張性をもたないし、大量に広く複製可能ではない。さらに、アプリケーションが、ベンダーソフトウェアに密接に依存したポイントツーポイント通信及び同期を要する。
【発明の概要】
【0006】
本発明の目的は、モジュール式プラントのデジタルツインモデルに基づくシミュレーションの構成をオーケストレーションするコンピュータ実行方法及びオーケストレーションシステムを提案することであり、それによって、オーケストレーションの過程において、モデルベースのシミュレーションの構成が自動的に生成され、展開されるようにする。
【0007】
この目的は、請求項1の前段部分に定義されるコンピュータ実行方法に関して、請求項1の特定事項における特徴によって解決される。
【0008】
この目的は、さらに、請求項2に係るコンピュータ実行方法を実行するコンピュータ実行ツールによって解決される。
【0009】
この目的は、さらに、請求項3の前段部分に定義されるオーケストレーションシミュレータに関して、請求項3の特定事項における特徴によって解決される。
【0010】
請求項1、請求項2、及び請求項3に係る発明の要旨は、モジュール式プラントのデジタルツインモデルと、「Functional Mock-up Unit <FMU>」機能と組み合わされた「Functional Mock-up Interface <FMI>」機能を含むロジカル「System Structure and Parameterization <SSP>」機能と、に基づいてシミュレーションの構成をオーケストレーションするために、(1)モジュール式プラントの分散Operational-Technology(OT)アプリケーションに関して(OTアプリケーションは、フィールドデバイスのエッジデバイスである)、プラントのオートメーションのためにキャプチャされるオートメーションデータの割り当てルールを含んでいて分散OTアプリケーションに割り当てられるシミュレーションの(シミュレーションした)モデルコンポーネントを生成すること、(2)シミュレーションの構成をオーケストレーションする過程において、シミュレーションのモデルコンポーネントを分散OTアプリケーションに展開し、この展開に際し、分散OTアプリケーションに対し、FMI機能の一部として「Functional Mock-up Unit <FMU>」機能を有するSSP機能を使用し、及び、分散OTアプリケーションに関して、サーバ-クライアント方式のFMI機能の一部として、
・SSP機能に埋め込まれた「プロキシFMU」エンティティ及び
・分散OTアプリケーションで実行される対応する「被制御FMU」エンティティ
を有する「Remote Procedure Call <RPC>」技術ベースのプロキシFMU機能を実行し、(3)オートメーションデータの割り当てルールに従って、シミュレーションのモデルコンポーネントの展開の結果として、分散OTアプリケーションにオートメーションデータを展開する。
【0011】
使用される機能の概要:
・エッジインフラストラクチャにおいて分散デジタルツインを実行するためのランタイム
・分散シミュレーション及び分析のための抽象化レイヤ
・フィールドデバイス及びフィールドデータの抽象化レイヤへの組み込み
・OTインフラストラクチャ及びオートメーションシステムにおける「Operational-Technology <OT>」アスペクトに対する連成シミュレーション環境の組み合せ
・リモートシミュレーションコンポーネントでもアクセス可能な「Functional Mock-up Unit <FMU>」と組み合わせた標準「Functional Mock-up Interface <FMI>」(参照:https://fmi-standard.org)のモッキング
・OTインフラストラクチャにおけるシミュレーションコンポーネントの自動生成及び配置
【0012】
デジタルエンタープライズ(Digital Enterprise)の機能、ツール、アーチファクト、及びエレメントの組み合せは、デジタルツインランタイム環境のための分散抽象化レイヤを使用することによって活用される。
【0013】
このアプリケーションにより、OTエッジは、エッジデバイスに展開可能な標準化シミュレーションオブジェクトを相互接続することができ、そして、ベンダーからのインテリジェントベンダーアグノスティックオーケストレーションマスターアルゴリズム(
図1、
図3、及び
図4参照)を介してそれらを調和させることができる。
【0014】
これらの図は、リモート機器にあるFMUへのFMU呼び出し(call)を実行して処理する方式の概念を示している。
【0015】
以下の概念の説明に関し、「myFmu」と呼ばれるFMUの形態のシミュレーションがあると仮定する。
【0016】
サーバ上のパラメータ化プロキシFMU
本概念は、リモートFMUに対してプロキシとして機能する汎用FMUをもつことである。このプロキシもFMUであるから、FMI規格で規定されている全ての関数(functions)を実行する必要がある。このFMUは、たとえその関数において実際のシミュレーションを実行せず、リモートFMUへRPC呼び出し(call)のみを実行するものであっても、総合的に汎用である。したがって、このプロキシは、他のFMUに対するリモートコントローラと考えることができる。
【0017】
当該プロキシFMU特有のインスタンスをなすのは基本的に2つのこと:
・リモート制御される(被リモート制御)実際のシミュレーションFMU
・リモート制御される(被リモート制御)FMUに到達するためのURI
【0018】
したがって、「myFmu」及びエンプティの汎用プロキシFMU「proxyFmu」を仮定すると、「myFmu」に対する特定のプロキシFMUインスタンスは以下のように生成され得る:
1. 適切なmodelDescription.xmlの作成:本概念は、生成されるプロキシFMUが、「myFmu」と全く同じ入出力情報を有するということである。このことは、オリジナルのFMUからまったく同じ「modelDescription.xml」ファイルをコピーするだけで非常に簡単に達成できる。このファイルに対する他の変更は必要ない。
2. 「proxyMyFmu」の作成:FMUは単なるZIPアーカイブであるため、先に生成された「modelDescription.xml」ファイルを追加してある「proxyFmu」に基づいて新しいものを作成できる。さらに、ZIPアーカイブに必要なその他のファイルを追加することができる。具体的に、それを利用して、被リモート制御FMUが存在する場所(すなわち、そのリモートホスト名)や、対応するFMUリモートコントローラが問い合わせするポートなどの情報を含んでいるプロキシFMUのリソースフォルダに、設定ファイルを追加することができる。
【0019】
このときに、「proxyMyFmu」と呼ばれる有効なFMUがあり、これは、FMUベースのシミュレーションツール/ライブラリにおいてシミュレーションをオーケストレーションする他のものと同様に使用することができる。
【0020】
「proxyFmu」の実行は、すべてが基本的に次のとおりなので総合的に汎用であり得る:
1. RPCクライアントとして機能し、インスタンス化時に、「Uniform Resource Identifier <URI>」によって与えられる、よく知られた「Remote Procedure Call <RPC>」技術(2021年7月23日版のhttps://en.wikipedia.org/wiki/Remote_procedure_call参照)のリモートRPCサーバに接続する。前述のように、このURIは、これを含んでいる専用ファイルから取得される。
2. FMI規格で指定されているすべての関数を実行するが、これら関数の実行で実際に何かを行う代わりに、単に関数引数をシリアライズし、対応するRPC呼び出しをそのRPCサーバに行う。
【0021】
デバイス(クライアント)における被リモート制御FMU
クライアント側は、「proxyMyFmu」のような「proxyFmu」から来るRPC呼び出しを受け入れる役割をもつ汎用RPCサーバパートで構成される。行われるのは次のとおり:
1. 関数引数をデシリアライズする。
2. 実際のFMU(これはFMI規格で指定されている関数を実行するライブラリに過ぎない)の対応する関数を呼び出す。このライブラリを抽出してランタイムで動的にロードできるように実際のFMUが何であるかを知っておく必要がある。したがって、この情報は理想的には展開ステップからもらうべきであり、例えば、対応する「Docker」コンテナ(2021年7月7日版のhttps://en.wikipedia.org/wiki/Docker_(software) 参照)を開始するときに引数として与えられ得る。
3. 関数呼び出しの結果は、次に最終的に、RPCリクエストに対する応答として返される。
4. FMUのそれぞれは入出力の定義セットをもっており、それぞれ「modelDescription.xml」ファイルにおいて名前及び値型(例えば、整数、浮動小数点数、ブール値、文字列)で与えられる。個々のこのようなFMUから構築される分散シミュレーションをオーケストレーションすることは(どこで又はどのエッジデバイスで個々のFMUが実行されているかにかかわらず)、そのような入力及び出力を接続することを伴う。典型的には、前述のモジュール式プラントは、フィールドバスによって利用可能にされるフィールドデバイスから来るデータを含み、このようなデータは、自然な形で関連するシミュレーションの一部であるべきであり、言い換えれば、入力としてシミュレーションモデルに入ることになる。結果として、通常、他のFMUの出力に由来するFMU入力だけではなく、フィールドデバイスからの(信号)データとして直接的に入ってくるものもある。これは、分散シミュレーション全体がオーケストレーションされているときにも設定される必要があるものである。正確には、FMU入出力をマップする必要があるだけでなく、オートメーションデータ名を対応するFMU入力にマップする必要もある。前者の種類のマッピング、すなわち入出力マッピングは、「System Structure & Parameterization <SSP>」(https://ssp-standard.org参照)と呼ばれる規格によって適切に記述することができるが、オートメーションデータのマッピングにはこのような規格がない。ここで次のとおり提案する:
・展開プロセスにおいて、データマッピングが生成され、被リモート制御FMUの中に入れられる。SSPトポロジファイル内の情報は、どのフィールド信号がFMUによって求められるかを定義することができる。これにより、多くの場合、プロセスを自動化できる。これも、ZIPアーカイブの中に入れられる「YAML」(2021年6月23日版のhttps://en.wikipedia.org/wiki/YAML参照)のような簡単な設定ファイルにすることができる。
・リモート制御サービスは、この信号マッピングを読み取り、設定されたデータ名を定期的に読みに行き、必要に応じて実際のFMU関数呼び出しに値を渡す。新しい値が入ってくると直ちに記憶する場合、常に最新の値をFMU関数に渡すことが保証され、単純なサブスクリプションモデルで十分である。
【0022】
サーバパートと同様に、ここで説明するサービス(「fmuRemoteController」と呼ぶ)もまた総合的に汎用である。このサービスの実際のインスタンスは、FMUライブラリがその関数を呼び出せる場所を知るだけで済む(参照:
図3はRPC呼び出しのシーケンスを示している)。
【0023】
開示するオーケストレーションシステムは、モジュール式プラントのフィールドデータへアクセスできる分散OTデジタルツインランタイムのエッジデバイスへの展開を可能にする。
【0024】
既知のアプリケーションは、深い依存性があり、手動拡張が多く、異なるアプリケーションに適応することが困難である。
【0025】
提案する概念は、これらの側面をすべて抽象化し、シミュレーション及び分析モデルサプライヤが、その依存フットプリントを低減するEdge Ecosystemの一部として自身のOTシステムを展開することを可能にする。
【0026】
1. 実際のRPC技術は、それほど交換が困難ではない。適合させる必要があるパートは、「proxyFmu」及び「fmuRemoteController」のみである。
2.「proxyMyFmu」のようなインスタンスは、単なる普通のFMUである。これらは、シミュレーションツールの観点と異なることはしない。これらは、他のものと同様にオーケストレーションされ、実行可能であり、リモート呼び出しパートは、その中に全面的に隠される。
3. どのようなシミュレーションツールであっても、又は「Amesim」、「Simulink」、「fmpy」、「libcosim」のようなライブラリでも、使用できる。
4. リモートFMI/FMUが自動的に生成される。
5. FMI/FMUは、対応する(フィールド変数に応じる)OTシステムに自動的に展開される。
6. SSP規格がOT信号の接続に使用される。
【0027】
本発明のさらなる有利な発展形態が独立形式請求項によって与えられる。
【0028】
また、本発明のさらなる有利な発展形態が、
図1~
図4を使用して以下に説明する本発明の好ましい実施形態の説明によって与えられる。各図は次のとおり。
【図面の簡単な説明】
【0029】
【
図1】モジュール式プラントのモデルベースシミュレーションの構成をオーケストレーションするシナリオ。
【
図2】コンピュータ実行ツール、具体的には例えばAPPとして設計されたコンピュータプログラム製品の原理的な表現。
【
図3】サーバ-クライアント方式で「Remote Procedure Call <RPC>」技術ベースのProxy-FMU-機能を実行することにより、シミュレートされたモデルコンポーネントを展開する、メッセージフロー図の例示。
【
図4】
図1に示される「サーバ-クライアント」ベースのシナリオの関連するユニット間のオーケストレーションフローの例示。
【発明を実施するための形態】
【0030】
図1は、モジュール式構造P
mを有するプラントのモデルベースシミュレーションの構成をオーケストレーションするサーバ-クライアントベースのシナリオを示している。モジュール式構造P
mを有するプラントは、モジュール式プラントと見なすことができる、一例として示す3つのプラントモジュール、第1のプラントモジュールPM
1、第2のプラントモジュールPM
2、及び第3のプラントモジュールPM
3を含む。モジュール式プラントPM
1、PM
2、PM
3は、例外なく同じプラント構成を有する。
【0031】
第1のモジュール式プラントPM
1に属している第1のプラントモジュール制御システムCS
1は、一方で第1のデジタルツインモデルDTM
1に、他方でロボットとして
図1に示してある自動機器又はプロセスに、接続される又は割り当てられる。第1のプラントモジュール制御システムCS
1には、一般的によく知られた、第1の「Programmable Logic Controller <PLC>」ユニットPLCU
1が属し、これが第1のエッジデバイスED
1を含む第1のフィールドデバイスFD
1と接続されている。第1のエッジデバイスED
1は、本発明の好適な実施形態において、分散OTアプリケーションOTA
dであり、これに関して、本発明の目的に従って、そして、オーケストレーションする過程において、モデルベースシミュレーションの構成が自動的に生成され、展開される。
【0032】
同じ構成で、第2のモジュール式プラントPM2と第3のモジュール式プラントPM3がある。
【0033】
第2のモジュール式プラントPM
2に属している第2のプラントモジュール制御システムCS
2は、この場合も、一方で第2のデジタルツインモデルDTM
2に、他方でロボットとして
図1に示してある自動機器又はプロセスに、接続される又は割り当てられる。第2のプラントモジュール制御システムCS
2には、この場合も、第2の「Programmable Logic Controller <PLC>」ユニットPLCU
2が属し、これが第2のエッジデバイスED
2を含む第2のフィールドデバイスFD
2と接続されている。第2のエッジデバイスED
2は、本発明の好適な実施形態において、分散OTアプリケーションOTA
dであり、これに関して、本発明の目的に従って、そして、オーケストレーションする過程において、モデルベースシミュレーションの構成が自動的に生成され、展開される。
【0034】
第3のモジュール式プラントPM
3に属している第3のプラントモジュール制御システムCS
3は、この場合も、一方で第3のデジタルツインモデルDTM
3に、他方でロボットとして
図1に示してある自動機器又はプロセスに、接続される又は割り当てられる。第3のプラントモジュール制御システムCS
3には、この場合も、第3の「Programmable Logic Controller <PLC>」ユニットPLCU
3が属し、これが第3のエッジデバイスED
3を含む第3のフィールドデバイスFD
3と接続されている。第3のエッジデバイスED
3は、本発明の好適な実施形態において、分散OTアプリケーションOTA
dであり、これに関して、本発明の目的に従って、そして、オーケストレーションする過程において、モデルベースシミュレーションの構成が自動的に生成され、展開される。
【0035】
図1によれば、オーケストレーションは、オーケストレーションシステムOSによって実行され、オーケストレーションシステムOSは、例えば、好ましい最も単純な設計では、SSP機能、FMI/FMU機能を含むように、モジュール式プラントPM
1、PM
2、PM
3のデジタルツインモデルDTM
1、DTM
2、DTM
3に基づいてシミュレーションの構成をオーケストレーションするように、拡張されたシミュレータであり、モデルベースのシミュレーションを構成するべくサーバコントローラSCRTを含む。
【0036】
図示の「サーバ-クライアント」ベースのシナリオによれば、オーケストレーションシステムOSのサーバ-コントローラSCRTが「サーバ」であり、モジュール式プラントPM1、PM2、PM3のエッジデバイスED1、ED2、ED3が「クライアント」である。
【0037】
オーケストレーションの過程において、サーバコントローラSCRTは、展開ツールDTの一部として、よく知られた(https://ssp-standard.org参照)ロジカル「System Structure and Parameterization <SSP>」ツール(tool)SSP-Tを含み、どのようにシミュレーションのためのモデルコンポーネントが接続されて複合コンポーネントへの展開のために構成されるか、そして、どのようにモデルパラメータ化データがそれぞれのモデルコンポーネントと複合コンポーネントとの間で記憶され交換されるか、を論理的に記述する。ロジカル「System Structure and Parameterization <SSP>」ツールSSP-Tは、「ZIPアーカイブ」ベースの「Functional Mock-up Unit <FMU>」ツール、FMU-TパッキングXMLファイル、及びコンパイルされたCコードを介してシミュレーションを共有するための「Functional Mock-up Interface <FMI>」ツールFMI-T(https://fmi-standard.org参照)からなるか又はこれを含む。
【0038】
さらに、オーケストレーションの過程において、サーバコントローラSCRTは、生成ユニットGUを含む。生成ユニットGUは、モジュール式プラントPM1、PM2、PM3のディジタルツインモデルDTM1、DTM2、DTM3に基づいて、モジュール式プラントPM1、PM2、PM3のエッジデバイスED1、ED2、ED3のそれぞれに分散されたOTアプリケーションOTAdに対して、モジュール式プラントPM1、PM2、PM3のオートメーションのためにそれぞれキャプチャされたシミュレーションのモデルコンポーネント、(1)第1のエッジデバイスED1のための少なくとも1つの第1のシミュレーションのモデルコンポーネントMCs,1、(2)第2のエッジデバイスED2のための少なくとも1つの第2のシミュレーションのモデルコンポーネントMCs,2、及び(3)第3のエッジデバイスED3のための少なくとも1つの第3のシミュレーションのモデルコンポーネントMCs,3、を生成grtする。
【0039】
この目的のために、第1のシミュレーションのモデルコンポーネントMCs,1は、第1のエッジデバイスED1に割り当てられる第1のオートメーションデータAD1に対する第1の割り当てルールAR1を含み、第2のシミュレーションのモデルコンポーネントMCs,2は、第2のエッジデバイスED2に割り当てられる第2のオートメーションデータAD2に対する第2の割り当てルールAR2を含み、第3のシミュレーションのモデルコンポーネントMCs,3は、第3のエッジデバイスED3に割り当てられる第3のオートメーションデータAD3に対する第3の割り当てルールAR3を含む。
【0040】
これらの生成された情報MCs,1、MCs,2、MCs,3、AR1、AR2、AR3、AD1、AD2、AD3は、モジュール式プラントPM1、PM2、PM3のエッジデバイスED1、ED2、ED3のそれぞれに分散されたOTアプリケーションOTAdに情報を展開するために、サーバコントローラSCRT内で展開ツールDTに転送される。
【0041】
この目的のために、サーバコントローラSCRTの展開ツールDTは、エッジデバイスED1、ED2、ED3のそれぞれに分散されたOTアプリケーションOTAdにシミュレーションのモデルコンポーネントMCs,1、MCs,2、MCs,3を展開dplする。この展開に、
・FMI機能FMI-Tの一部として「Functional Mock-up Unit <FMU>」機能をもつSSP機能SSP-T、(1)第1のエッジデバイスED1に対する第1の「Functional Mock-up Unit <FMU>」機能FMU-T1、(2)第2のエッジデバイスED2に対する第2の「Functional Mock-up Unit <FMU>」機能FMU-T2、及び(3)第1のエッジデバイスED3に対する第3の「Functional Mock-up Unit <FMU>」機能FMU-T3、を使用し、
・エッジデバイスED1、ED2、ED3のそれぞれに分散されたOTアプリケーションOTAdに関し、クライアント-サーバ方式のFMI機能FMI-Tの一部として、よく知られた「Remote Procedure Call <RPC>」技術(2021年7月23日版のhttps://en.wikipedia.org/wiki/Remote_procedure_call参照)に基づいて、プロキシFMU機能、(1)サーバコントローラSCRTのSSP機能SSP-Tに埋め込まれた第1の「プロキシFMU」エンティティPFMU-E1をもつ第1のプロキシFMU機能PFMU-T1と、第1のエッジデバイスED1に割り当てられ展開されるべき第1のオートメーションデータAD1を含む第1のエッジデバイスED1の第1のクライアントコントローラCCRT1において実行される対応する第1の「被リモート制御FMU」エンティティRCFMU-E1、(2)サーバコントローラSCRTのSSP機能SSP-Tに埋め込まれた第2の「プロキシFMU」エンティティPFMU-E2をもつ第2のプロキシFMU機能PFMU-T2と、第2のエッジデバイスED2に割り当てられ展開されるべき第2のオートメーションデータAD2を含む第2のエッジデバイスED2の第2のクライアントコントローラCCRT2において実行される対応する第2の「被リモート制御FMU」エンティティRCFMU-E2、(3)サーバコントローラSCRTのSSP機能SSP-Tに埋め込まれた第3の「プロキシFMU」エンティティPFMU-E3をもつ第3のプロキシFMU機能PFMU-T3と、第3のエッジデバイスED3に割り当てられ展開されるべき第3のオートメーションデータAD3を含む第3のエッジデバイスED3の第3のクライアントコントローラCCRT3において実行される対応する第3の「被リモート制御FMU」エンティティRCFMU-E3、を実行する。
【0042】
さらに、展開ツールDTは、オートメーションデータAD1、AD2、AD3が、オートメーションデータAD1、AD2、AD3の割り当てルールAR1、AR2、AR3に従って、シミュレーションのモデルコンポーネントMCs,1、MCs,2、MCs,3の展開dplの結果として、エッジデバイスED1、ED2、ED3のそれぞれに分散されたOTアプリケーションOTAdに展開dplされるように、設計されている。
【0043】
さらに、オーケストレーションシステムOSは、ハードウェアソリューションとして設計可能であるし、又は、オーケストレーションシステムOSがコンピュータ実行ツールCITであるようなソフトウェアソリューションとして実現可能であり、これは、好ましくはAPPとして設計されるコンピュータプログラム(製品)に他ならず、サーバコントローラSCRTにアップロード可能である。
【0044】
図2は、ツールがどのように設計され得るかを、コンピュータ実行ツールCITの原理図で示す。図示によれば、コンピュータ実行ツールCITは、非一時的プロセッサ可読記憶媒体STMに記憶されたサイバーフィジカルシステム(CPS)の操作を特定するためにプログラムモジュールPGMのプロセッサ可読プログラム命令を入れた非一時的プロセッサ可読記憶媒体STMと、この記憶媒体STMに接続され、プログラムモジュールPGMのプロセッサ可読プログラム命令を実行してサイバーフィジカルシステムの操作を特定するプロセッサPRCと、を含む。
【0045】
図3は、
図1から始まり、対応する
図1の説明に基づいて、サーバ-クライアント方式で「Remote Procedure Call <RPC>」技術ベースのプロキシFMU機能を実行することによりシミュレーションのモデルコンポーネントを展開するメッセージフロー図を例示する。
【0046】
図4は、
図1から始まり、対応する
図1の説明に基づいて、
図1に示される「サーバ-クライアント」ベースのシナリオの関連するユニット間のオーケストレーションフローを例示する。オーケストレーションを担当するオーケストレーションエンティティを含むサーバコントローラSCRTと、クライアントの管理を担当する管理クライアントエンティティとの間でオーケストレーションフローは、TCP/IPベースである(2021年7月25日版のhttps://en.wikipedia.org/wiki/Internet_Protocol参照)。
【国際調査報告】