(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024022576
(43)【公開日】2024-02-16
(54)【発明の名称】デジタルツインを使用したプロセス制御
(51)【国際特許分類】
G05B 17/02 20060101AFI20240208BHJP
G06F 9/54 20060101ALI20240208BHJP
【FI】
G05B17/02
G06F9/54 C
【審査請求】未請求
【請求項の数】88
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023127881
(22)【出願日】2023-08-04
(31)【優先権主張番号】17/882,074
(32)【優先日】2022-08-05
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】520138438
【氏名又は名称】アスコン・システムズ・ホールディング・ゲーエムベーハー
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】キリアン・グレフェン
【テーマコード(参考)】
5H004
【Fターム(参考)】
5H004GA04
5H004GB01
5H004GB12
5H004GB15
5H004KC35
(57)【要約】 (修正有)
【課題】プロセス目標の効率的および正確な達成のためのデジタルツインベースのプロセス制御手法を提供する。
【解決手段】コントローラサービスモジュール(18)は、プロセス領域で動作するプロセスエンティティの制御を、デジタルツイン領域においてイベント駆動型制御プロセスを実行する。プロセスエンティティの挙動は、状態機械モデルの実行を通じてモデリングされる。イベントデータは、プロセスサイクルバッファ(26)に記憶するためにコントローラサービスモジュール(18)に非同期で伝達される。モデルベースプロセスコントローラ(24)は、処理サイクルで入力情報を読み取り、イベントデータの入力を反映するために状態機械モデルを動作させてプロセスエンティティを制御する。状態機械モデルの動作が、外部制御コマンドの生成をトリガするかチェックする
【選択図】
図7
【特許請求の範囲】
【請求項1】
プロセス領域において動作させられるプロセスエンティティの制御のためにデジタルツイン領域においてイベント駆動型制御プロセスを実行するコントローラサービスモジュールであって、前記デジタルツイン領域において、プロセスエンティティの挙動が、状態機械モデルの実行を通じてモデリングされ、前記コントローラサービスモジュールが、
前記プロセス領域においてプロセスエンティティに関して作成されたイベントデータおよび/または前記デジタルツイン領域において状態機械モデルの実行によって作成されたイベントデータを非同期で受信するように適合されたインバウンドインターフェース、
あらゆる分配されたイベントデータが、前記イベントデータにマッピングされる関連する状態機械モデルの状態のインスタンスに従って入力状態として表されるように、受信されたイベントデータをプロセスサイクルバッファに分配するように適合されたインバウンドバッファ、
処理サイクルにおいて前記プロセスサイクルバッファから少なくとも1つの入力状態を読み取り、選択されたプロセスエンティティを、
少なくとも1つの入力状態の入力を反映するために、少なくとも1つの関連する状態機械モデルを動作させるように適合された状態機械実行モジュール、
前記少なくとも1つの関連する状態機械モデルの動作が、前記プロセス領域における外部制御動作を命じるための外部制御コマンドの生成をトリガするかどうかをチェックするように適合されたプロセス制御モジュールを動作させることによって制御するように適合されたモデルベースプロセスコントローラ、
あらゆる生成された外部制御コマンドを、前記外部制御コマンドを処理する少なくとも1つのプロセスエンティティに出力するように適合されたアウトバウンドインターフェースを含む、コントローラサービスモジュール。
【請求項2】
前記状態機械実行モジュールが、デジタルツイン領域において、少なくとも1つの選択されたプロセスエンティティに関連して、少なくとも1つのデジタルツインを動作させるように適合されたデジタルツイン実行モジュールを含み、前記少なくとも1つのデジタルツインが、前記少なくとも1つのプロセスエンティティのための制御論理を組み込み、前記少なくとも1つの選択されたプロセスエンティティの稼働データを取り込み、前記少なくとも1つの選択されたプロセスエンティティの挙動の観測および/または制御のために、前記少なくとも1つの選択されたプロセスエンティティの前記挙動を表すための少なくとも1つの状態機械モデルを参照する請求項1に記載のコントローラサービスモジュール。
【請求項3】
前記デジタルツイン実行モジュールが、前記少なくとも1つのデジタルツインのリアルタイムの処理のために動作データを記憶するように適合されたデジタルツインメモリモジュールを含み、動作データが、前記少なくとも1つのデジタルツインの表現、前記少なくとも1つのデジタルツインによって参照される少なくとも1つの状態機械モデルの表現、および/または前記少なくとも1つのデジタルツインに組み込まれた制御論理の表現に関連する請求項2に記載のコントローラサービスモジュール。
【請求項4】
前記デジタルツイン実行モジュールが、前記少なくとも1つのデジタルツインによって参照される前記少なくとも1つの状態機械モデルに関する状態が作成されると、または前記少なくとも1つのデジタルツインによって参照される前記少なくとも1つの状態機械モデルの構成が変更されると、リアルタイムで動作データを更新するように適合されたデジタルツイン処理モジュールを含む請求項2に記載のコントローラサービスモジュール。
【請求項5】
前記状態機械実行モジュールが、入力状態が状態機械モデルにおける状態遷移活動の実行をトリガするかどうか、または入力状態が前記状態機械モデルにおいて直接設定される外部状態を表すかどうかをチェックするように適合された状態機械実行コントローラを含む請求項1から4のいずれか一項に記載のコントローラサービスモジュール。
【請求項6】
前記状態機械実行モジュールが、関連する状態機械モデルにおいて外部状態を直接設定するように適合されたイベント状態設定モジュールを含む請求項1から5のいずれか一項に記載のコントローラサービスモジュール。
【請求項7】
前記イベント状態設定モジュールが、
前記外部状態に適用可能な状態スキームに従ってデジタルツインメモリモジュール内の状態メモリを割り当て、
割り当てられた状態メモリを、前記外部状態に対応する前記入力状態によって運ばれる動作データで満たし、
前記関連する状態機械モデルの現在の状態を無効化し、
作成された状態を、前記関連する状態機械モデルの現在の状態として有効化することによって状態を作成するように適合されたイベント状態クリエータモジュールを含む請求項6に記載のコントローラサービスモジュール。
【請求項8】
前記イベント状態設定モジュールが、コンテキスト参照を更新するように適合されたコンテキスト処理モジュールを含み、コンテキスト参照が、デジタルツインから適用可能な状態遷移活動および関連する入力テンプレートを指し示し、あらゆる入力テンプレートが、前記状態遷移活動の実行のトリガとして、前記デジタルツイン領域全体にわたる1つまたは複数の状態機械モデルにおける所定の状態の動作上の共存をモデリングする請求項6または7に記載のコントローラサービスモジュール。
【請求項9】
前記コンテキスト処理モジュールが、関連する入力テンプレートの無効化された現在の状態を表すエントリを取り消すように適合され、関連する入力テンプレートの有効化された現在の状態を表すエントリを入力するように適合される請求項8に記載のコントローラサービスモジュール。
【請求項10】
前記状態機械実行モジュールが、少なくとも1つの状態機械モデルにおける遷移元状態から遷移先状態への状態遷移に関連して少なくとも1つの状態遷移活動を実行するように適合された活動実行モジュールを含み、前記状態遷移活動が、前記状態遷移活動の実行のトリガとして、前記デジタルツイン領域全体にわたる1つまたは複数の状態機械モデルにおける所定の状態の動作上の共存として状態コンテキストをモデリングする入力テンプレートを使用する請求項1から9のいずれか一項に記載のコントローラサービスモジュール。
【請求項11】
各状態コンテキストが、関連する状態遷移活動の実行をトリガする制御フローを形成する請求項10に記載のコントローラサービスモジュール。
【請求項12】
前記少なくとも1つの状態遷移活動が、前記少なくとも1つの状態遷移活動の前記実行の基礎となるデータフローを形成するためのデータテンプレートを有し、前記活動実行モジュールが、前記少なくとも1つの状態遷移活動の実行中に、データの変換のためおよびデータ駆動型の条件の考慮のために、前記データテンプレートに記憶されたデータに作用するように適合される請求項10に記載のコントローラサービスモジュール。
【請求項13】
前記活動実行モジュールが、状態遷移活動を記憶するように適合された活動メモリモジュールと、制御フローおよび/またはデータフローによってトリガされた状態遷移活動を処理するように適合された状態フロープロセッサとを含む請求項10に記載のコントローラサービスモジュール。
【請求項14】
前記活動メモリモジュールが、状態遷移活動ごとに、活動オペレータおよび状態コンテキストストアを記憶するように適合され、前記状態コンテキストストアが、複数のデジタルツインのための前記状態遷移活動の並列実行が原因で状態伝達活動によって参照されるすべての入力テンプレートを記憶するように適合される請求項13に記載のコントローラサービスモジュール。
【請求項15】
前記状態フロープロセッサが、
入力状態に関連性のある状態遷移活動をフィルタリングするように適合され、入力状態に関連性のあるフィルタリングされた状態遷移活動の入力テンプレートをフィルタリングするように適合された活動フィルタリングモジュールと、
入力状態の入力を反映するために、少なくとも1つの状態遷移活動の少なくとも1つの状態コンテキストストア内のフィルタリングされた入力テンプレートを更新し、カバレッジの完全性に関して更新された入力テンプレートの検証を命じるように適合されたコンテキスト処理モジュールと、
正常に有効化された更新された入力テンプレートに関して状態遷移活動を実行するように適合された活動処理モジュールとを含む請求項13に記載のコントローラサービスモジュール。
【請求項16】
状態コンテキストストアに記憶された状態コンテキストが、
各活動参照が、状態遷移活動を指し示し、
各入力テンプレート参照が、前記入力テンプレート参照とペアにされる活動参照によって参照される前記状態遷移活動の状態コンテキストストアに記憶される入力テンプレートを指し示すような活動参照と入力テンプレート参照とのペアから形成されるコンテキスト参照によってアクセスされ、
入力状態が、少なくとも1つのコンテキスト参照を運び、
前記活動フィルタリングモジュールが、状態遷移活動の活動参照を、入力状態によって運ばれる活動参照と比較することによって状態遷移活動をフィルタリングするように適合され、
前記活動フィルタリングモジュールが、入力テンプレートに割り振られた入力テンプレート参照を入力状態によって運ばれる入力テンプレート参照と比較することによって入力テンプレートをフィルタリングし、カバレッジの完全性に関して更新された入力テンプレートを検証するように適合される請求項15に記載のコントローラサービスモジュール。
【請求項17】
前記状態フロープロセッサが、関連する入力テンプレートの無効化された状態を表すエントリを取り消し、関連する入力テンプレートの有効化された状態を表すエントリを入力することによって、状態コンテキストストアに記憶された入力テンプレートを更新するように適合されたコンテキスト処理モジュールを含む請求項13に記載のコントローラサービスモジュール。
【請求項18】
前記活動処理モジュールが、データフローの条件データに応じて、状態遷移活動のグループから1つの状態遷移活動を選択するように適合された活動セレクタモジュールを含む請求項15に記載のコントローラサービスモジュール。
【請求項19】
前記活動処理モジュールが、入力テンプレートによって表される制御フローが状態遷移の実行をトリガするかどうかを評価するように適合された制御フロー評価モジュールを含む請求項15に記載のコントローラサービスモジュール。
【請求項20】
前記活動処理モジュールが、データフローによって表される少なくとも1つの条件が状態遷移の実行をトリガするかどうかを評価するように適合されたデータフロー評価モジュールを含む請求項15に記載のコントローラサービスモジュール。
【請求項21】
前記活動処理モジュールが、状態遷移活動がトリガされると前記状態遷移活動の活動オペレータを実行するように適合されたデータ処理モジュールを含み、前記活動オペレータの実行が、任意で、関連するデータフローにおいて指定された動作条件の下で、遷移元状態を遷移先状態に変換する請求項15に記載のコントローラサービスモジュール。
【請求項22】
前記データ処理モジュールが、前記遷移先状態に割り振るための状態データへの前記データフロー内のデータのデータ変換を実行するように適合される請求項21に記載のコントローラサービスモジュール。
【請求項23】
前記活動処理モジュールが、遷移先状態に関連するデータ要素を表す状態スキームに従って、およびデータ処理モジュールによって処理されたデータに従って、前記遷移先状態を作成するように適合された状態クリエータモジュールを含む請求項15に記載のコントローラサービスモジュール。
【請求項24】
前記状態クリエータモジュールが、前記遷移先状態に割り振るための少なくとも1つのコンテキスト参照を作成し、割り当てられた状態メモリに前記遷移先状態に関連するデータを記憶するために、前記状態スキームに従ってデジタルツインメモリモジュール内の状態メモリを割り当てるように適合される請求項23に記載のコントローラサービスモジュール。
【請求項25】
前記データ処理モジュールが、前記プロセス領域におけるプロセスエンティティの制御のための制御論理に従って、制御コマンドの生成のための制御論理を実行するように適合される請求項21に記載のコントローラサービスモジュール。
【請求項26】
前記制御コマンドが、前記データ処理モジュールを動作させるデジタルツインから入手可能な永続的なデータを使用して、およびプロセス領域のダイナミクスを記述するイベントデータを使用して生成される請求項25に記載のコントローラサービスモジュール。
【請求項27】
前記インバウンドインターフェースが、
所定の通信プロトコルに従ってプロセスエンティティと前記インバウンドインターフェースとの間で確立された通信チャネルを終端するように適合された少なくとも1つの通信エンドポイントと、
前記通信エンドポイントにおいて受信されたペイロードデータを分析し、関連するペイロードデータを前記インバウンドバッファに出力するための少なくとも1つの入力状態に変換するように適合された少なくとも1つのインバウンド処理ラインとを含むインバウンドプロセスインターフェースを含む請求項1から26のいずれか一項に記載のコントローラサービスモジュール。
【請求項28】
前記少なくとも1つのインバウンド処理ラインが、
前記通信エンドポイントにおいて受信された通信データによって運ばれるペイロードデータを特定するように適合されたペイロード特定モジュールと、
ペイロードデータを、前記デジタルツイン領域に転送される少なくとも1つのペイロードアイテムに分割するように適合されたペイロード分割モジュールと、
あらゆるペイロードアイテムの送信者および受信者として、プロセスエンティティとデジタルツインオブジェクトとのペアを特定するように適合された送信者/受信者特定モジュールと、
デジタルツイン領域における処理に関連する情報を表すペイロードアイテムごとの信号を形成するように適合された信号形成モジュールと、
前記信号を、前記信号によって表される前記情報を運ぶ入力状態にマッピングし、前記ペイロードアイテムに関してデータ変換を実行するように適合された信号状態マッピングモジュールと、
前記入力状態を前記インバウンドバッファに転送するように適合されたインバウンド通信ポートとを含む請求項27に記載のコントローラサービスモジュール。
【請求項29】
前記プロセス領域から前記デジタルツイン領域へのイベントデータの並列的な非同期通信のために、プロセスエンティティと関連する入力状態とのペアごとに1つのインバウンドプロセスインターフェースが動作させられる請求項27に記載のコントローラサービスモジュール。
【請求項30】
前記インバウンドインターフェースが、前記コントローラサービスモジュールの前記モデルベースプロセスコントローラによって、または前記デジタルツイン領域において動作させられる少なくとも1つのさらなるコントローラサービスモジュールのモデルベースプロセスコントローラによって生成された状態メッセージを受信するために、少なくとも1つのメッセージング通信チャネルを読み取るように適合されたインバウンドサービスインターフェースを含む請求項1から29のいずれか一項に記載のコントローラサービスモジュール。
【請求項31】
前記インバウンドサービスインターフェースが、専用の状態の種類を有する状態を運ぶ状態メッセージの交換のためにセットアップされた少なくとも1つのメッセージング通信チャネルを読み取るように適合される請求項30に記載のコントローラサービスモジュール。
【請求項32】
前記インバウンドサービスインターフェースが、前記少なくとも1つのメッセージング通信チャネル上で交換された状態メッセージを読み取るように適合された状態メッセージリーダと、前記コントローラサービスモジュールによって処理される状態メッセージをフィルタリングするように適合された状態フィルタとを含む請求項30に記載のコントローラサービスモジュール。
【請求項33】
前記インバウンドバッファが、入力状態を記憶するように適合されたプロセスサイクルラインと、次の入力状態の種類がエントリ位置の前記プロセスサイクルラインに記憶された状態の種類と同一であるかどうかをチェックし、それに応じて前記プロセスサイクルラインを更新するように適合された状態分配器とを含む請求項1から32のいずれか一項に記載のコントローラサービスモジュール。
【請求項34】
前記状態分配器が、次の入力状態の種類とエントリ位置に予め記憶された入力状態の種類とが同一であるときに、前記エントリ位置の前記プロセスサイクルラインを前記次の入力状態によって上書きするように適合される請求項33に記載のコントローラサービスモジュール。
【請求項35】
前記プロセスサイクルラインが、状態キューのラインを動作させ、前記状態分配器が、次の入力状態の種類がすべての予め記憶された入力状態の種類と異なるとき、前記次の入力状態を次の状態キューに記憶するように適合される請求項33に記載のコントローラサービスモジュール。
【請求項36】
前記アウトバウンドインターフェースが、
制御コマンドを表す出力状態を受信し、関連する制御情報を前記プロセス領域のプロセスエンティティに出力するための少なくとも1つのペイロードデータに変換するように適合された少なくとも1つのアウトバウンド処理ラインと、
前記プロセス領域における動作の制御に関連する情報を運ぶ通信信号を出力するように適合された少なくとも1つのアウトバウンド通信ポートとを含むアウトバウンドプロセスインターフェースを含む請求項1から35のいずれか一項に記載のコントローラサービスモジュール。
【請求項37】
あらゆるアウトバウンド処理ラインが、
前記出力状態を、前記出力状態によって表される情報を運ぶ信号にマッピングし、関連するデータ変換を実行するように適合された状態信号マッピングモジュールと、
前記出力状態によって表される前記情報を運ぶ前記信号によって運ばれるペイロードデータを特定するように適合されたペイロード特定モジュールと、
前記ペイロードデータを少なくとも1つのペイロードアイテムに組み立てるように適合されたペイロード組み立てモジュールと、
通信エンドポイントに出力するために、少なくとも1つのペイロードアイテムと関連する受信者とを表す通信信号を形成するように適合された通信信号形成モジュールとを含む請求項36に記載のコントローラサービスモジュール。
【請求項38】
前記デジタルツイン領域から前記プロセス領域への制御コマンドの並列的な非同期通信のために、出力状態と関連する制御されるプロセスエンティティとのペアごとに、1つのアウトバウンドプロセスインターフェースが動作させられる請求項36に記載のコントローラサービスモジュール。
【請求項39】
前記アウトバウンドインターフェースが、前記モデルベースプロセスコントローラにおいて生成された状態メッセージの転送のために、少なくとも1つのメッセージング通信チャネルに書き込むように適合されたアウトバウンドサービスインターフェースを含む請求項1から38のいずれか一項に記載のコントローラサービスモジュール。
【請求項40】
専用の状態の種類を有する状態情報を運ぶ状態メッセージの交換のために、コントローラサービスモジュールごとに、少なくとも1つのメッセージング通信チャネルが提供される請求項39に記載のコントローラサービスモジュール。
【請求項41】
プロセス領域において動作させられるプロセスエンティティの制御のためにデジタルツイン領域においてイベント駆動型プロセス制御を実施するコントローラサービスシステムであって、前記デジタルツイン領域において、プロセスエンティティの挙動が、デジタルツインによって参照される状態機械モデルの実行を通じてモデリングされ、前記コントローラサービスシステムが、
請求項1から40のいずれか一項に記載の少なくとも1つのコントローラサービスモジュールであって、プロセスエンティティを表す各デジタルツインが、前記デジタルツインの実行のためにちょうど1つのコントローラサービスモジュールに割り振られる、少なくとも1つのコントローラサービスモジュールと、
少なくとも1つのメッセージング通信チャネルを介した状態メッセージの交換によって前記少なくとも1つのコントローラサービスモジュールを疎結合するための、コントローラサービスモジュールごとに少なくとも1つのメッセージング通信チャネルとを含む、コントローラサービスシステム。
【請求項42】
あらゆるコントローラサービスモジュールが、前記コントローラサービスモジュールの割り振られたメッセージング通信チャネルに状態メッセージを出力するように適合され、前記コントローラサービスモジュールの割り振られたメッセージ通信チャネル以外のメッセージ通信チャネルから通信メッセージを読み取るように適合されるように、下位2つのコントローラサービスモジュールのあらゆるコンピュータサービスモジュールに1つのメッセージング通信チャネルが割り振られる請求項41に記載のコントローラサービスシステム。
【請求項43】
専用の状態の種類を有する状態情報を運ぶ状態メッセージの交換のために、コントローラサービスモジュールごとに、少なくとも1つのメッセージング通信チャネルが提供される請求項41に記載のコントローラサービスシステム。
【請求項44】
状態メッセージが、前記プロセス領域において作成され、コントローラサービスモジュールによって受信されるイベントデータを運ぶ請求項41に記載のコントローラサービスシステム。
【請求項45】
プロセス領域において動作させられるプロセスエンティティの制御のためにデジタルツイン領域においてイベント駆動型制御プロセスを実行する制御方法であって、前記デジタルツイン領域において、プロセスエンティティの挙動が、状態機械モデルの実行を通じてモデリングされ、前記制御方法が、
前記プロセス領域においてプロセスエンティティに関して作成されたイベントデータおよび/または前記デジタルツイン領域において状態機械モデルの実行によって作成されたイベントデータを非同期で受信し、受信されたイベントデータをインバウンドバッファに記憶するステップと、
あらゆるプロセスサイクルの始めに前記インバウンドバッファからプロセスサイクルバッファに受信されたイベントデータを分配するステップであって、あらゆる分配されたイベントデータが、前記イベントデータにマッピングされる関連する状態機械モデルの状態のインスタンスに従って、前記プロセスサイクルバッファ内で入力状態として表される、ステップと、
前記処理サイクルのために記憶された前記プロセスサイクルバッファから少なくとも1つの入力状態を読み取ることによって、選択されたプロセスエンティティの制御のためのモデルベース制御プロセスを実行し、少なくとも1つの入力状態の入力を反映するために少なくとも1つの関連する状態機械モデルを動作させるステップと、
前記少なくとも1つの関連する状態機械モデルの動作が、前記プロセス領域における外部制御動作をトリガするかどうかをチェックするステップと、
前記少なくとも1つの関連する状態機械モデルの前記動作が前記外部制御動作をトリガするとき、前記プロセス領域における前記外部制御動作を命じる外部制御コマンドを生成し、生成された前記外部制御コマンドを、前記外部制御コマンドを処理する少なくとも1つのプロセスエンティティに出力するステップとを継続的に実行するために処理サイクルにおいて動作する、制御方法。
【請求項46】
デジタルツイン領域において、少なくとも1つの選択されたプロセスエンティティに関連して、少なくとも1つのデジタルツインを処理するステップを含み、前記少なくとも1つのデジタルツインが、前記少なくとも1つのプロセスエンティティのための制御論理を組み込み、前記少なくとも1つの選択されたプロセスエンティティの稼働データを取り込み、前記少なくとも1つの選択されたプロセスエンティティの挙動の観測および/または制御のために、前記少なくとも1つの選択されたプロセスエンティティの前記挙動を表すための少なくとも1つの状態機械モデルを参照する請求項45に記載の制御方法。
【請求項47】
前記少なくとも1つのデジタルツインをリアルタイムで処理するための動作データを記憶するステップを含み、動作データが、前記少なくとも1つのデジタルツインの表現、前記少なくとも1つのデジタルツインによって参照される少なくとも1つの状態機械モデルの表現、および/または前記少なくとも1つのデジタルツインに組み込まれた制御論理の表現に関連する請求項46に記載の制御方法。
【請求項48】
前記少なくとも1つのデジタルツインによって参照される前記少なくとも1つの状態機械モデルに関する状態が作成されると、または前記少なくとも1つのデジタルツインによって参照される前記少なくとも1つの状態機械モデルの構成が変更されると、リアルタイムで動作データを更新するステップを含む請求項46に記載の制御方法。
【請求項49】
前記モデルベース制御プロセスを実行するステップが、入力状態が状態機械モデルにおける状態遷移活動の実行をトリガするかどうか、または入力状態が前記状態機械モデルにおいて直接設定される外部状態を表すかどうかをチェックするステップを含む請求項45に記載の制御方法。
【請求項50】
前記モデルベース制御プロセスを実行するステップが、関連する状態機械モデルにおいて外部状態を直接設定するステップを含む請求項45から49のいずれか一項に記載の制御方法。
【請求項51】
関連する状態機械モデルにおいて外部状態を直接設定するステップが、
前記外部状態に適用可能な状態スキームに従ってデジタルツインメモリモジュール内の状態メモリを割り当てるステップと、
割り当てられた状態メモリを、前記外部状態に対応する前記入力状態によって運ばれる動作データで満たすステップと、
前記関連する状態機械モデルの現在の状態を無効化するステップと、
作成された状態を、前記関連する状態機械モデルの現在の状態として有効化するステップとを含む請求項50に記載の制御方法。
【請求項52】
コンテキスト参照を更新するステップを含み、コンテキスト参照が、デジタルツインから適用可能な状態遷移活動および関連する入力テンプレートを指し示し、あらゆる入力テンプレートが、前記状態遷移活動の実行のトリガとして、前記デジタルツイン領域全体にわたる1つまたは複数の状態機械モデルにおける所定の状態の動作上の共存をモデリングする請求項50に記載の制御方法。
【請求項53】
コンテキスト参照を更新するステップが、関連する入力テンプレートの無効化された現在の状態を表すエントリを取り消し、関連する入力テンプレートの有効化された現在の状態を表すエントリを入力する請求項52に記載の制御方法。
【請求項54】
状態機械モデルを動作させるステップが、前記状態機械モデルにおける遷移元状態から遷移先状態への状態遷移に関連して少なくとも1つの状態遷移活動を実行するステップを含み、前記状態遷移活動が、前記状態遷移活動の実行のトリガとして、前記デジタルツイン領域全体にわたる1つまたは複数の状態機械モデルにおける所定の状態の動作上の共存として状態コンテキストをモデリングする入力テンプレートを使用する請求項45から53のいずれか一項に記載の制御方法。
【請求項55】
各状態コンテキストが、関連する状態遷移活動の実行をトリガする制御フローを形成する請求項54に記載の制御方法。
【請求項56】
前記状態遷移活動が、前記状態遷移活動の前記実行の基礎となるデータフローを形成するデータテンプレートを有し、前記状態遷移活動を実行するステップが、前記状態遷移活動の実行中に、データの変換のためおよびデータ駆動型の条件の考慮のために、前記データテンプレートに記憶されたデータに作用する請求項54に記載の制御方法。
【請求項57】
状態遷移活動を処理するステップが、前記状態遷移活動の入力テンプレートのすべてのエントリが有効化されるとすぐに実行される請求項54に記載の制御方法。
【請求項58】
あらゆる状態遷移活動に関して、活動オペレータおよび状態コンテキストストアを記憶するステップを含み、前記状態コンテキストストアが、複数のデジタルツインのための前記状態遷移活動の並列実行が原因で状態伝達活動によって参照されるすべての入力テンプレートを記憶するように適合される請求項54に記載の制御方法。
【請求項59】
状態遷移活動を処理するステップが、
入力状態に関連性のある状態遷移活動をフィルタリングし、入力状態に関連性のあるフィルタリングされた状態遷移活動の入力テンプレートをフィルタリングするステップと、
入力状態の入力を反映するために、少なくとも1つの状態遷移活動の少なくとも1つの状態コンテキストストア内のフィルタリングされた入力テンプレートを更新し、カバレッジの完全性に関して更新された入力テンプレートの検証を命じるステップと、
正常に有効化された更新された入力テンプレートに関して状態遷移活動を実行するステップとを含む請求項57に記載の制御方法。
【請求項60】
状態コンテキストストアに記憶された状態コンテキストが、
各活動参照が、状態遷移活動を指し示し、
各入力テンプレート参照が、前記入力テンプレート参照とペアにされる活動参照によって参照される前記状態遷移活動の状態コンテキストストアに記憶される入力テンプレートを指し示すような活動参照と入力テンプレート参照とのペアから形成されるコンテキスト参照によってアクセスされ、
入力状態が、少なくとも1つのコンテキスト参照を運び、
状態遷移活動をフィルタリングするステップが、状態遷移活動の活動参照を、入力状態によって運ばれる活動参照と比較し、
入力テンプレートをフィルタリングするステップが、入力テンプレートに割り振られた入力テンプレート参照を、入力状態によって運ばれる入力テンプレート参照と比較する請求項59に記載の制御方法。
【請求項61】
状態遷移活動を処理するステップが、入力テンプレートの無効化された状態を表すエントリを取り消し、入力テンプレートの有効化された状態を表すエントリを入力することによって、状態コンテキストストアに記憶された入力テンプレートを更新するステップを含む請求項57に記載の制御方法。
【請求項62】
状態遷移活動を実行するステップが、データフローの条件データに応じて、状態遷移活動のグループから1つの状態遷移活動を選択するステップを含む請求項54に記載の制御方法。
【請求項63】
状態遷移活動を実行するステップが、入力テンプレートによって表される制御フローが状態遷移の実行をトリガするかどうかを評価するステップを含む請求項54に記載の制御方法。
【請求項64】
状態遷移活動を実行するステップが、データフローによって表される少なくとも1つの条件が状態遷移の実行をトリガするかどうかを評価するステップを含む請求項54に記載の制御方法。
【請求項65】
状態遷移活動を実行するステップが、状態遷移活動がトリガされると前記状態遷移活動の活動オペレータを実行するステップを含み、前記活動オペレータの実行が、任意で、関連するデータフローにおいて指定された動作条件の下で、遷移元状態を遷移先状態に変換する請求項54に記載の制御方法。
【請求項66】
活動オペレータを実行するステップが、前記遷移先状態に割り振るための状態データを生成するためのデータ変換を実行する請求項65に記載の制御方法。
【請求項67】
状態遷移活動を実行するステップが、前記遷移先状態に関連するデータ要素を表す状態スキームに従って、および関連する活動オペレータによって処理されたデータに従って、前記遷移先状態を作成するステップを含む請求項54に記載の制御方法。
【請求項68】
遷移先状態を作成するステップが、前記状態スキームに従ってデジタルツインメモリモジュール内の状態メモリを割り当て、前記遷移先状態に割り振るための少なくとも1つのコンテキスト参照を作成し、割り当てられた状態メモリに前記遷移先状態に関連するデータを記憶する請求項67に記載の制御方法。
【請求項69】
活動オペレータを実行するステップが、前記プロセス領域におけるプロセスエンティティの制御のための制御論理に従って、制御コマンドの生成のための制御論理を実行する請求項65に記載の制御方法。
【請求項70】
前記制御コマンドが、データ処理モジュールを動作させるデジタルツインから入手可能な永続的なデータを使用して、およびプロセス領域のダイナミクスを記述するイベントデータを使用して生成される請求項69に記載の制御方法。
【請求項71】
前記プロセス領域においてプロセスエンティティに関して作成されたイベントデータを非同期で受信するステップが、
所定の通信プロトコルに従ってプロセスエンティティから確立された通信チャネルを終端するように適合された少なくとも1つの通信エンドポイントを動作させるステップと、
前記通信エンドポイントにおいて受信されたペイロードデータを分析し、関連するペイロードデータを前記インバウンドバッファに出力するための少なくとも1つの入力状態に変換するための少なくとも1つのインバウンド処理ラインを動作させるステップとを含む請求項45から70のいずれか一項に記載の制御方法。
【請求項72】
少なくとも1つのインバウンド処理ラインを動作させるステップが、
前記通信エンドポイントにおいて受信された通信データによって運ばれるペイロードデータを特定するステップと、
ペイロードデータを、前記デジタルツイン領域に転送される少なくとも1つのペイロードアイテムに分割するステップと、
あらゆるペイロードアイテムの送信者および受信者として、プロセスエンティティとデジタルツインオブジェクトとのペアを特定するステップと、
デジタルツイン領域における処理に関連する情報を表すペイロードアイテムごとの信号を形成するステップと、
前記信号を、前記信号によって表される前記情報を運ぶ入力状態にマッピングするステップと、
前記ペイロードアイテムに関するデータ変換を実行するステップと、
前記入力状態を前記インバウンドバッファに転送するステップとを含む請求項71に記載の制御方法。
【請求項73】
インバウンドプロセスインターフェースを動作させるステップが、前記プロセス領域から前記デジタルツイン領域へのイベントデータの並列的な非同期通信のために、プロセスエンティティと関連する入力状態とのペアごとに実行される請求項71に記載の制御方法。
【請求項74】
前記デジタルツイン領域において状態機械モデルの実行によって作成されたイベントデータを非同期で受信するステップが、状態メッセージを受信するために少なくとも1つのメッセージング通信チャネルを読み取るステップを含む請求項45から73のいずれか一項に記載の制御方法。
【請求項75】
専用の状態の種類を有する状態を運ぶ状態メッセージの交換のための状態メッセージのセットアップの交換のために、少なくとも1つのメッセージング通信チャネルが提供される請求項74に記載の制御方法。
【請求項76】
状態メッセージを受信するために少なくとも1つのメッセージング通信チャネルを読み取るステップが、前記少なくとも1つのメッセージング通信チャネル上で交換された状態メッセージを読み取るステップと、前記制御方法によって処理される状態メッセージをフィルタリングするステップとを含む請求項74に記載の制御方法。
【請求項77】
前記インバウンドバッファのプロセスサイクルラインに入力状態を記憶するステップを含み、分配するステップが、次の入力状態の種類がエントリ位置の前記プロセスサイクルラインに記憶された状態の種類と同一であるかどうかをチェックし、入力状態を記憶するステップが、それに応じて前記プロセスサイクルラインを更新する請求項45から76のいずれか一項に記載の制御方法。
【請求項78】
入力状態を記憶するステップが、次の入力状態の種類とエントリ位置に予め記憶された入力状態の種類とが同一であるときに、前記エントリ位置の前記プロセスサイクルラインを前記次の入力状態によって上書きする請求項77に記載の制御方法。
【請求項79】
前記プロセスサイクルラインが、状態キューのラインを動作させ、入力状態を記憶するステップが、次の入力状態の種類がすべての予め記憶された入力状態の種類と異なるとき、前記次の入力状態を次の状態キューに記憶する請求項77に記載の制御方法。
【請求項80】
アウトバウンドプロセスインターフェースが、
制御コマンドを表す出力状態を受信し、関連する制御情報を前記プロセス領域のプロセスエンティティに出力するための少なくとも1つのペイロードデータに変換するための少なくとも1つのアウトバウンド処理ラインを動作させるステップと、
前記プロセス領域における動作の制御に関連する情報を運ぶ通信信号を出力するように適合されたアウトバウンド通信ポートを動作させるステップとによって動作させられる請求項45から79のいずれか一項に記載の制御方法。
【請求項81】
少なくとも1つのアウトバウンド処理ラインを動作させるステップが、
出力状態を、前記出力状態によって表される情報を運ぶ信号にマッピングし、関連するデータ変換を実行するステップと、
前記出力状態によって表される前記情報を運ぶ前記信号によって運ばれるペイロードデータを特定するステップと、
前記ペイロードデータを少なくとも1つのペイロードアイテムに組み立てるステップと、
少なくとも1つのペイロードアイテムを表す通信信号を形成し、前記通信信号を通信エンドポイントに転送するステップとを含む請求項80に記載の制御方法。
【請求項82】
前記デジタルツイン領域から前記プロセス領域への制御コマンドの並列的な非同期通信のために、出力状態と関連する制御されるプロセスエンティティとのペアごとに、1つのアウトバウンドプロセスが動作させられる請求項80に記載の制御方法。
【請求項83】
状態メッセージを少なくとも1つのメッセージング通信チャネルに書き込むためのアウトバウンドサービスインターフェースを動作させるステップを含む請求項45から82のいずれか一項に記載の制御方法。
【請求項84】
アウトバウンドサービスインターフェースを動作させるステップが、専用の状態の種類を有する状態情報を運ぶ状態メッセージの交換のためにコントローラサービスモジュールごとに少なくとも1つのメッセージング通信チャネルを動作させる請求項83に記載の制御方法。
【請求項85】
プロセス領域において動作させられるプロセスエンティティの制御のためにデジタルツイン領域においてイベント駆動型プロセス制御を実施するコントローラサービスシステムを動作させる方法であって、前記コントローラサービスシステムが、請求項1から44のいずれか一項に記載の少なくとも1つのコントローラサービスモジュールを含み、前記デジタルツイン領域において、プロセスエンティティの挙動が、デジタルツインによって参照される状態機械モデルの実行を通じてモデリングされ、前記方法が、
プロセスエンティティを表すデジタルツインの動作を、前記デジタルツインの実行のためにちょうど1つのコントローラサービスモジュールに割り振るステップ、
少なくとも1つのメッセージング通信チャネルを介した状態メッセージの交換を通じて前記少なくとも1つのコントローラサービスモジュールを疎結合しながら、プロセスエンティティの前記イベント駆動型プロセス制御の実施のために前記少なくとも1つのコントローラサービスモジュールを動作させるステップを含む、方法。
【請求項86】
下位2つのコントローラサービスモジュールのあらゆるコンピュータサービスモジュールに1つのメッセージング通信チャネルが割り振られ、あらゆるコントローラサービスモジュールが、前記コントローラサービスモジュールの割り振られたメッセージング通信チャネルに状態メッセージを出力するステップと、前記コントローラサービスモジュールの割り振られたメッセージ通信チャネル以外のメッセージ通信チャネルから通信メッセージを読み取るステップとを実行する請求項85に記載のコントローラサービスシステムを動作させる方法。
【請求項87】
専用の状態の種類を有する状態情報を運ぶ状態メッセージの交換のために、コントローラサービスモジュールごとに、少なくとも2つのメッセージング通信チャネルが提供される請求項85に記載のコントローラサービスシステムを動作させる方法。
【請求項88】
状態メッセージが、前記プロセス領域において作成され、コントローラサービスモジュールによって受信されるイベントデータを運ぶ請求項85に記載のコントローラサービスシステムを動作させる方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プロセス領域において動作させられるプロセスエンティティを制御するために、デジタルツイン領域においてイベント駆動型プロセス制御を実施するコントローラサービスシステムと、コントローラサービスシステムにおいて動作させられるコントローラサービスモジュールと、コントローラサービスシステムおよびコントローラサービスモジュールを動作させる方法とに関する。
【背景技術】
【0002】
今日、デジタルツインは、実世界環境の物理的資産、プロセス、またはインマテリアルオブジェクト(in-material object)のデジタルのカウンターパートとして使用されている。デジタルツインは、物理的資産が実世界環境において受け得る動き、力、または相互作用のような動作データを仮想的に表すためにも使用される。
【0003】
今日、デジタルツインのデプロイは、たとえば、データへのアクセスを向上させるため、メンテナンスコストを削減するため、プロセス決定を強化するため、運用効率を向上させるため、または品質管理をサポートするために、リアルタイムのデータインタラクションに主に焦点を当てる。
【0004】
しかし、デジタルツインはリアルタイムで広範なデータを収集することを可能にするが、プロセス制御のために収集されたデータの、製造、自動車、ヘルスケアなどのようなプロセス領域のための効率的な使用は、まだ発展途上の技術分野である。
【発明の概要】
【発明が解決しようとする課題】
【0005】
以上に鑑みて、本発明の根底にある技術的課題は、プロセス目標の効率的および正確な達成のためのデジタルツインベースのプロセス制御の手法を提供することである。
【課題を解決するための手段】
【0006】
本発明の第1の態様によれば、この技術的課題は、プロセス領域において動作させられるプロセスエンティティの制御のためにデジタルツイン領域においてイベント駆動型制御プロセスを実行するコントローラサービスモジュールであって、デジタルツイン領域において、プロセスエンティティの挙動(behavior)が、状態機械(state machine)モデルの実行を通じてモデリングされる、コントローラサービスモジュールによって達成される。
【0007】
第1の態様によれば、コントローラサービスモジュールは、プロセス領域においてプロセスエンティティに関して作成されたイベントデータおよび/またはデジタルツイン領域において状態機械モデルの実行によって作成されたイベントデータを非同期で受信するように適合されたインバウンドインターフェースを含む。
【0008】
第1の態様によれば、コントローラサービスモジュールは、あらゆる分配されたイベントデータが、イベントデータにマッピングされる関連する状態機械モデルの状態のインスタンスに従って入力状態として表されるように、受信されたイベントデータをプロセスサイクルバッファに分配するように適合されたインバウンドバッファをさらに含む。
【0009】
第1の態様によれば、コントローラサービスモジュールは、処理サイクルにおいてプロセスサイクルバッファから少なくとも1つの入力状態を読み取り、選択されたプロセスエンティティを制御するように適合されたモデルベースプロセスコントローラをさらに含む。モデルベースプロセスコントローラは、少なくとも1つの入力状態の入力を反映するために、少なくとも1つの関連する状態機械モデルを動作させるように適合された状態機械実行モジュールを動作させる。モデルベースプロセスコントローラは、少なくとも1つの関連する状態機械モデルの動作が、プロセス領域における外部制御動作を命じるための外部制御コマンドの生成をトリガするかどうかをチェックするように適合されたプロセス制御モジュールをさらに動作させる。
【0010】
第1の態様によれば、コントローラサービスモジュールは、あらゆる生成された外部制御コマンドを、外部制御コマンドを処理する少なくとも1つのプロセスエンティティに出力するように適合されたアウトバウンドインターフェースをさらに含む。
【0011】
本発明の第2の態様によれば、上で概説された技術的課題は、プロセス領域において動作させられるプロセスエンティティの制御のためにデジタルツイン領域においてイベント駆動型プロセス制御を実施するコントローラサービスシステムであって、デジタルツイン領域において、プロセスエンティティの挙動が、デジタルツインによって参照される状態機械モデルの実行を通じてモデリングされる、コントローラサービスシステムによって達成される。
【0012】
第2の態様によれば、コントローラサービスシステムは、本発明の第1の態様による少なくとも1つのコントローラサービスモジュールであって、プロセスエンティティを表す各デジタルツインが、デジタルツインの実行のためにちょうど1つのコントローラサービスモジュールに割り振られる、少なくとも1つのコントローラサービスモジュールを含む。
【0013】
第2の態様によれば、コントローラサービスシステムは、コントローラサービスモジュールを接続するメッセージング通信チャネルを介した状態メッセージの交換を通じてコントローラサービスモジュールを疎結合するために、コントローラサービスモジュールごとに少なくとも1つのメッセージング通信チャネルをさらに含む。
【0014】
本発明の第3の態様によれば、上で概説された技術的課題は、プロセス領域において動作させられるプロセスエンティティの制御のためにデジタルツイン領域においてイベント駆動型制御プロセスを実行する制御方法であって、デジタルツイン領域において、プロセスエンティティの挙動が、状態機械モデルの実行を通じてモデリングされる、制御方法によって達成される。ここで、制御方法は、第1から第5のステップを連続的に実行するために処理サイクルで動作する。
【0015】
第3の態様によれば、第1のステップは、プロセス領域においてプロセスエンティティに関して作成されたイベントデータおよび/またはデジタルツイン領域において状態機械モデルの実行によって作成されたイベントデータの非同期の受信し、受信されたイベントデータをインバウンドバッファに記憶する。
【0016】
第3の態様によれば、第2のステップは、あらゆるプロセスサイクルの始めにインバウンドバッファからプロセスサイクルバッファへの受信されたイベントデータの分配を実行し、あらゆる分配されたイベントデータは、イベントデータにマッピングされる関連する状態機械モデルの状態のインスタンスに従って、プロセスサイクルバッファ内で入力状態として表される。
【0017】
第3の態様によれば、第3のステップは、処理サイクルのために記憶されたプロセスサイクルバッファから少なくとも1つの入力状態を読み取ることによる、選択されたプロセスエンティティの制御のためのモデルベース制御プロセスの実行と、少なくとも1つの入力状態の入力を反映するための、少なくとも1つの関連する状態機械モデルの動作とに関する。
【0018】
第3の態様によれば、第4のステップは、少なくとも1つの関連する状態機械モデルの動作が、プロセス領域における外部制御動作をトリガするかどうかをチェックする。
【0019】
第3の態様によれば、第5のステップは、少なくとも1つの関連する状態機械モデルの動作が外部制御動作をトリガするとき、プロセス領域における外部制御動作を命じる外部制御コマンドを生成し、生成された外部制御コマンドを、外部制御コマンドを処理する少なくとも1つのプロセスエンティティに出力する。
【0020】
本発明の第4の態様によれば、上で概説された技術的課題は、プロセス領域において動作させられるプロセスエンティティの制御のために、デジタルツイン領域においてイベント駆動型プロセス制御を実施するコントローラサービスシステムを動作させる方法によって達成される。
【0021】
第4の態様によれば、第1のステップは、プロセスエンティティを表すデジタルツインの動作を、デジタルツインの実行のためにちょうど1つのコントローラサービスモジュールに割り振る。
【0022】
第4の態様によれば、第4のステップは、少なくとも1つのコントローラサービスモジュールを接続する少なくとも1つのメッセージング通信チャネルを介した状態メッセージの交換を通じて少なくとも1つのコントローラサービスモジュールを疎結合しながら、プロセスエンティティのイベント駆動型プロセス制御の実施のために少なくとも1つのコントローラサービスモジュールを動作させる。
【0023】
以下で、本発明の実装を示す例が、図面を参照して説明される。
【図面の簡単な説明】
【0024】
【
図1】本発明によるプロセス領域のプロセスエンティティのデジタルツイン制御の実装ための基礎として、プロセス領域とデジタルツイン領域との間の、さらにはデジタルツイン領域とプロセス領域との間の相互運用性を示す図である。
【
図2】状態空間の部分空間として状態空間に埋め込まれる状態の特徴付けを示す図である。
【
図3】デジタルツインの挙動に関する異なるパースペクティブ(perspective)による、デジタルツインに関するステータス情報を表す状態の所与のセットの分類を示す図である。
【
図4】デジタルツインの状態と、デジタルツインに関するパースペクティブと、状態機械モデルとの間の関係、および状態機械モデルに従って実行されている関連する状態を示す図である。
【
図5】本発明による、プロセス領域において動作させられるプロセスエンティティの制御のためにデジタルツイン領域においてイベント駆動型制御プロセスを実施するコントローラサービスシステムの模式図である。
【
図6】
図5に示されたコントローラサービスシステムの動作の基礎となる基本原理を示す図である。
【
図7】
図5に示されたコントローラサービスシステムにおいて動作させられるコントローラサービスモジュールの模式図である。
【
図8】
図7に示されたコントローラサービスモジュールの動作の流れ図である。
【
図9】システムモデリングのレベルでのデジタルツインのモデリングのために使用されるツインテンプレート、
図5に示されたコントローラサービスシステムの動作中にデジタルツインインスタンスの作成のために使用されるデジタルツインスキーマ、および
図5に示されたコントローラサービスシステムの動作中にリアルタイムで状態インスタンスの作成のために使用される状態スキーマを示す図である。
【
図10】リアルタイムで状態機械モデルをその後実行するために、状態機械モデルを状態遷移活動の関連するセットに分解する例を示す図である。
【
図11】
図7に示された状態機械実行モジュールのさらに詳細な模式図である。
【
図12】
図11に示された状態機械実行モジュールの動作の流れ図である。
【
図13】
図11に示されたデジタルツイン実行モジュールのさらに詳細な模式図である。
【
図14】
図13に示されたデジタルツイン実行モジュールの動作の流れ図である。
【
図15】本発明によるイベント駆動型プロセス制御の基礎となる状態機械モデルにおける状態の直接設定に関する概要を示す図である。
【
図16】
図11に示されたイベント状態設定モジュールのさらに詳細な模式図である。
【
図17】
図16に示されたイベント状態設定モジュールの動作の流れ図である。
【
図18】状態遷移活動のコンテキスト化(contextualization)および状態コンテキストの関連する更新の基礎となる基本原理を示す図である。
【
図19】状態機械モデルに関する複数の状態遷移活動の実行と、経時的な状態機械モデルの複数の状態の関連する生成とを示す図である。
【
図20】状態遷移活動のコンテキスト化の基礎としての状態コンテキストの形成、状態カバレッジ(state coverage)の完全性に関連する状態コンテキストの検証、およびデジタルツイン領域における状態コンテキストの状態の動作上の共存(operational co-existence)時の状態遷移活動のトリガの基礎となる基本原理を示す図である。
【
図21】状態遷移活動の実行をトリガする制御フロー、ならびに状態遷移活動の実行中に条件付け(conditioning)およびデータ変換プロセスを提供するデータフローの導入を示す図である。
【
図22】状態遷移活動に関する活動グループの使用と、関連する状態遷移活動セレクタの提供とを示す図である。
【
図23】複数の異なるデジタルツインのための単一の状態遷移活動の並列実行の基礎として、内部コンテキストとしての状態コンテキストからの埋め込まれるコンテキスト(embedded context)の形成と、デジタルツインと、状態遷移活動と、状態コンテキストとの間に存在する外部コンテキストの形成とを示す図である。
【
図24】
図11に示された活動実行モジュールのさらに詳細な模式図である。
【
図25】
図24に示された活動実行モジュールの動作の流れ図である。
【
図26】
図24に示された状態フロープロセッサモジュールの動作の流れ図である。
【
図27】
図24に示された活動処理モジュールのさらに詳細な模式図である。
【
図28】状態遷移活動の実行中に条件付けおよびデータ変換プロセスを提供するデータフローと動作的に組み合わせた、状態遷移活動の実行をトリガする制御フローの詳細な図である。
【
図29】
図28に示された制御フローおよびデータフローのアーキテクチャを適用する、
図27に示された活動処理モジュールの動作の流れ図である。
【
図30】
図7に示されたインバウンドインターフェースの一部を形成するインバウンドプロセスインターフェース、およびインバウンドプロセスインターフェースにおいて動作されられるインバウンド処理ラインの模式図である。
【
図31】
図30に示されたインバウンド処理ラインの動作の流れ図である。
【
図32】
図7に示されたインバウンドインターフェースの一部を形成するインバウンドサービスインターフェースの模式図、および
図7に示されたインバウンドバッファの模式図である。
【
図33】
図32に示されたインバウンドサービスインターフェースの動作の流れ図である。
【
図34】
図32に示されたインバウンドバッファにおいて動作させられる状態分配器の動作の流れ図である。
【
図35】
図7に示されたアウトバウンドインターフェースの一部を形成するアウトバウンドプロセスインターフェースの模式図である。
【
図36】
図35に示されたアウトバウンドプロセスインターフェースの一部を形成するアウトバウンド処理ラインの模式図である。
【
図37】
図35に示されたアウトバウンドプロセスインターフェースの動作の流れ図である。
【
図38】
図36に示されたアウトバウンド処理ラインの動作の流れ図である。
【
図39】
図5に示されたコントローラサービスシステム内で協力するコントローラサービスモジュールの疎結合のためのルーティングトポロジーを示す図である。
【
図40】
図5に示されたコントローラサービスシステム内で協力するコントローラサービスモジュールの疎結合のためのルーティングトポロジーを示す図である。
【発明を実施するための形態】
【0025】
以下で、本発明が、図面を参照して詳細に説明される。ここで、そのような説明は、本発明の例のみに関連し、特許請求の範囲によって定義される本発明の範囲に対する拘束ではないことを理解されたい。
【0026】
特定の手続き的または構造的な構成要素について言及がなされる限り、これは、基本的な機能に関する例とみなされるべきであり、同じ機能が実現される限り、手続き的または構造的な構成要素は明らかに交換可能である。したがって、保護範囲の限定を避けるために、本発明が一般的な用語を使用して説明される。
【0027】
図1は、本発明によるプロセス領域のプロセスエンティティのデジタルツイン制御の実装ための基礎として、モデリング領域とデジタルツイン領域との間の、さらにはデジタルツイン領域とプロセス領域との間の相互運用性を示す。
【0028】
図1に示されるように、本発明によれば、デジタルツイン領域におけるデジタルツインの動作を通じたプロセス領域におけるプロセスエンティティの制御のための基礎は、デジタルツインによって実行されるプロセスエンティティの挙動モデル(behavioral model)の使用である。概して、本発明によれば、挙動モデルは、プロセス領域の挙動の表現およびカウンターパートとしてデジタルツイン領域にデプロイされる状態機械モデルとして実装される。
【0029】
図1に示されるように、本発明によれば、データ交換が、一方では状態機械モデルの実行を通じて処理されるデータの収集のためにプロセス領域からデジタルツイン領域へ、他方ではプロセスエンティティの制御のために逆方向に、双方向で実行される。
【0030】
図1に示されるように、プロセスデータが、プロセス領域からデジタルツイン領域に転送され、それから、制御コマンドおよび関連する制御データのセットアップのために、ツインオブジェクトに組み込まれた制御論理によって使用される。制御データが利用可能になると、その制御データは、それに応じてデジタルツイン領域からプロセス領域に転送される。したがって、本発明は、プロセス目標の観測の際のプロセス領域への制御コマンドの転送によって、制御論理の能動的な実施およびプロセス領域との相互運用性を実現する。
【0031】
図1に示されるように、本発明によるイベント駆動型プロセス制御の基礎となる別の態様は、挙動モデルを使用したプロセスエンティティの挙動の記述である。
【0032】
これまでは、モデリング領域において、プロセスエンティティは、挙動モデルを用いてそれらの挙動によって記述されている。この記述が、モデルテンプレートのライブラリを準備することを可能にし、そして、それらのモデルテンプレートが、モデルライブラリを参照することによって既存のプロセスエンティティをモデリングするために使用される。
【0033】
図1に示されるように、デジタルツイン領域とモデリング領域との間のデータの交換も、双方向で実行される。したがって、デジタルツイン領域における動作中の実際の観測データを、モデルの更新の実現のためにモデリング領域に逆に転送することが可能である。モデルの更新は、既存の挙動モデルの修正か、または、たとえば、今まで考慮されていなかったプロセス領域におけるプロセスエンティティの動作が原因でデジタルツイン領域にインストールされる新しい挙動モデルのデプロイかのどちらかに関連する。
【0034】
全体として、本発明によれば、デジタルツインの動作は、モデリング領域とプロセス領域との両方に関して、高度にインタラクティブである場合がある。モデリング領域とデジタルツイン領域との間の双方向のデータ交換が、モデルの更新および継続的なモデルのデプロイを可能にする。
【0035】
さらに、デジタルツインにおけるプロセスデータの収集が、プロセス領域におけるプロセスエンティティのその後の制御およびプロセスの目的の達成のための、デジタルツインに組み込まれた制御論理の動作を可能にする。
【0036】
図2から
図4は、デジタルツイン領域において挙動モデルを実行するデジタルツインによって、プロセス領域において動作させられるプロセスエンティティの挙動を表すために本発明によって使用される挙動モデルの全体的な概要を示す。
【0037】
図2は、状態空間の部分空間として状態空間に埋め込まれる状態の特徴付けを示す。
【0038】
図2に示されるように、状態機械モデルの状態は、関連する状態遷移活動の実行前のデジタルツイン領域におけるデジタルツインのステータスを表す。
【0039】
図2に示されるように、ステータスは、それぞれが表現特性を表すn次元空間に記述されてよく、そのとき、状態は、n次元空間の任意の定義された部分空間を包含してよい。
【0040】
本発明によれば、状態は、メタレベルの表現、意味レベルの表現、範囲の表示、および/またはデータ値の指定のような、プロセス条件の表現のための異なる種類の抽象化を有する場合がある。
【0041】
状態表現のためのこれらの異なる種類の抽象化は、プロセスエンティティの制御における複雑さを減らす。たとえば、プロセスエンティティの制御を指定するために、無限個の値の中から特定の目標値を設定する可能性がある。それにもかかわらず、実数を低い値、中間の値、高い値のような実数値の範囲に抽象化することが、制御の複雑さを大幅に減らす場合がある。
【0042】
図3は、デジタルツインの挙動に関する異なるパースペクティブによる、デジタルツインに関するステータス情報を表す状態の所与のセットの分類を示す。
【0043】
図3に示されるように、デジタルツインの状態機械表現は、状態機械表現を通じてモデリングされるデジタルツインに関する異なるパースペクティブに構造化される場合がある。
【0044】
ここで、デジタルツインに関する任意のパースペクティブが、特定のパースペクティブの下でデジタルツインの挙動をモデリングするために使用されるすべての状態の少なくともサブセットを実行する関連する状態機械モデルによってモデリングされる。あらゆるパースペクティブに関して、その他のパースペクティブから独立して定義される状態遷移活動を有する関連する状態機械モデルがセットアップされる。
【0045】
図4は、デジタルツインのメタ状態と、デジタルツインに関する関連するパースペクティブと、状態機械モデルとの間の関係を示し、関連する状態が、デジタルツインに関する各パースペクティブに従って実行されている。
【0046】
図4に示されるように、あらゆるパースペクティブに関して、関連するあらゆる状態機械モデルは、常に複数の状態のうちの1つにある計算のモデルである。言い換えると、あらゆる状態は少なくとも1つの関連するパースペクティブを有すると言えるであろう。
【0047】
結論として、本発明は、少なくとも1つの状態機械モデルの形態の挙動モデルを使用する。ここで、あらゆる状態機械モデルは、常に複数の状態のうちの1つにある計算のモデルである。さらに、状態機械モデルは、関連する状態遷移活動の実行を通じて、ソース状態から遷移先状態に遷移することができる。
【0048】
さらに、状態機械モデルに関するパースペクティブの導入が、異なるパースペクティブを有する状態機械モデルの独立した動作を可能にし、したがって、並列化をサポートする。通常、パースペクティブごとに、ある時点で、アクティブである、言い換えると、有効である状態がちょうど1つ存在する。
【0049】
図5は、本発明による、制御されるシステムにおいて動作させられるプロセスエンティティの制御のためにデジタルツイン領域においてイベント駆動型制御を実施するコントローラサービスシステムの模式図を示す。
【0050】
図5に示されるように、本発明によれば、コントローラサービスシステム10は、コントローラサービスシステム10に入力データを提供するセンサ12、およびプロセス目標を達成するために制御システム16に作用するアクチュエータ14と一緒に働く。コントローラサービスシステム10は、メッセージ通信チャネル20を介してコントローラサービスシステムの内部で通信するコントローラサービスモジュール18-1、...、18-nを含む。
【0051】
上で
図1に関連して示されたように、本発明によれば、コントローラサービスシステム10の動作前に、プロセス領域において動作させられる物理エンティティの挙動モデルが、コントローラサービスモジュール18-1、...、18-nにデプロイされる。そして、挙動モデルを実行するデジタルツインは、センサ12によって提供される入力データ画像に対して、処理サイクルで連続的に動作してよい。
【0052】
本発明によれば、センサデータは、リアルタイムで並列に連続して非同期で受信される。非同期通信は、センサデータの受信の並列化およびコントローラサービスモジュール18-1、...、18-nの関連する並列動作の前提条件である。
【0053】
さらに、本発明によれば、コントローラサービスモジュール18-1、...、18-nは、プロセスエンティティの実際の挙動とプロセス目標との間のずれの特定のために入力データを分析するように適合される。これは、アクチュエータ14および制御されるシステム16にリアルタイムおよび非同期で転送される制御コマンドの生成をトリガする。
【0054】
本発明によれば、そのような制御コマンドは、アウトバウンド通信の並列化を実現するために非同期および複数の通信チャネルを介して、その生成後直ちに制御システムに出力される。
【0055】
このことから、本発明は、以前はプロセスエンティティにハードコードされていた制御論理をコントローラサービスシステム10に移すことを可能にし、これは、クラウドアプリケーションにとって特に有益である。コントローラサービスは、必要に応じて柔軟に構成されよく、時間の経過とともに遠隔で拡張されてよい。
【0056】
図6は、
図5に示されたコントローラサービスシステムの動作の基礎となる基本原理を示す。
【0057】
図6に示されるように、本発明によれば、挙動モデルを実行するために、実世界環境とコントローラサービスシステム10との間でデータ交換を動作させることが提案される。そのような挙動モデルは、状態機械モデル、たとえば、有限状態機械として、状態および関連する状態遷移からセットアップされる。それから、制御されるシステム16において発生するイベントが、コントローラサービスシステム10への関連するセンサデータのインバウンド通信のためにセンサ12によって観測される。
【0058】
図6に示されるように、本発明によれば、入力状態を使用することによって、センサ12からコントローラサービスシステム10へのインバウンド通信を実行することが提案される。これは、コントローラサービスモジュール18-1、...、18-nの効率的な動作を可能にする。
【0059】
同様に、本発明によれば、コントローラサービスシステム10からアクチュエータ14への任意のアウトバウンド通信が、挙動モデルのために定義された状態を使用してコントローラサービスシステム10において実現される。
【0060】
さらに、本発明によれば、コントローラサービスシステム10内のコントローラサービスモジュール18-1、...、18-n間の任意の内部通信も、状態メッセージ通信チャネル20を介した状態メッセージの交換を通じて、状態を使用して実施される。
【0061】
図6に示されるように、コントローラサービスシステム10へのセンサデータの非同期並列通信と、コントローラサービスモジュール18-1、...、18-n間の内部通信とを通じて、入力状態の形態で、関連する外部状態および内部状態の連続ストリームが発生する。
【0062】
図6に示されるように、本発明による入力状態の処理に関しては、外部状態--
図6において網掛けで示される--と内部状態との間の区別はない。したがって、外部状態および内部状態が、統合的に考慮される。
【0063】
図6に示されるように、説明のための例において、状態機械モデルは、所定の状態遷移をともなう4つの状態1、2、3、4を有していてよい。入力状態は、任意の種類のシーケンスを有していてよい。さらに、以下で詳細に説明されるように、状態遷移に関する決定のための制御フローを形成するために、入力テンプレートが使用されてよい。
【0064】
図6に示されるように、与えられた例に関しては、最初の2つの状態が入力テンプレートに入力され、入力テンプレートが完成されるときにのみ、第1の状態から第2の状態への状態遷移が実行される。同様に、第2の状態から第1の状態への状態遷移のための入力テンプレートを形成するさらなる状態が入力されると、第1の状態に戻る状態遷移が実行される。
【0065】
図6に示されるように、本発明の重要な点は、プロセス制御がイベント駆動型であることである。外部イベントが発生すると、外部状態--網掛けの表現で図示される--は、たとえば、
図6の第4の入力状態に関して示されるように、直ちに設定される。
【0066】
挙動モデルにおける外部状態のそのような直接設定は、デジタルツイン領域とプロセス領域との間の改善された結合を実現することを可能にする。これは、特に、デジタルツイン領域に情報を送る際の遅延を回避する非同期通信と、非同期通信の並列実行とに鑑みて当てはまる。
【0067】
図6に示されるように、コントローラサービスモジュールの動作は、プロセスサイクル、たとえば、サイクルA、サイクルB、...で実施される。外部イベントデータおよび関連する状態が連続して非同期で並列的に転送されるので、イベントデータは、それぞれの単一のプロセスサイクル中、インバウンドバッファに記憶される。そして、各プロセスサイクルの終わりに、インバウンドバッファに蓄積されたデータが、次のプロセスサイクルの実行のためにプロセスサイクルバッファにロードされる。このことから、入力データ画像は、プロセスサイクルの各実行中、凍結される(frozen)。
【0068】
図6に示されるように、本発明によれば、生成された制御コマンドは、やはり非同期の並列化された通信を通じて、直ちに、または所定の許容可能な遅延以内にプロセス領域に出力される。
【0069】
図7は、
図5に示されたコントローラサービスシステム10において動作させられるコントローラサービスモジュール18の模式図を示す。
【0070】
概して、
図7に示されるコントローラサービスモジュール18は、プロセス領域において動作させられるプロセスエンティティの制御のために、デジタルツイン領域においてイベント駆動型制御プロセスを実行する。上で示されたように、本発明によれば、プロセスエンティティの挙動は、状態機械モデルの実行を通じてモデリングされる。
【0071】
図7に示されるように、コントローラサービスモジュール18は、プロセス領域においてプロセスエンティティに関して作成されたイベントデータおよび/またはデジタルツイン領域において状態機械モデルの実行によって作成されたイベントデータを非同期で受信するように適合されたインバウンドインターフェース20を含む。
【0072】
図7に示されるように、コントローラサービスモジュール18は、受信されたイベントデータをするように適合されたインバウンドバッファ22を含む。本発明によれば、各イベントデータは、コントローラサービスシステム10内で動作させられる挙動モデルのうちの1つの入力状態として、すなわち、イベントデータにマッピングされる関連する状態機械モデルの状態のインスタンスとして表される。
【0073】
図7に示されるように、コントローラサービスモジュール18は、インバウンドバッファ22から少なくとも1つの入力状態を読み取り、選択されたプロセスエンティティを制御するために処理サイクルにおいてプロセスサイクルバッファ26にその入力状態を記憶するように適合されたモデルベースプロセスコントローラ24を含む。
【0074】
図7に示されるように、コントローラサービスモジュール18は、少なくとも1つの入力状態の入力を反映するために、少なくとも1つの関連する状態機械モデルを動作させるように適合された状態機械実行モジュール28を含む。
【0075】
図7に示されるように、コントローラサービスモジュール18は、少なくとも1つの関連する状態機械モデルの動作が、プロセス領域における外部制御動作を命じるための外部制御コマンドの生成をトリガするかどうかをチェックするように適合されたプロセス制御モジュール30を含む。
【0076】
図7に示されるように、コントローラサービスモジュール18は、あらゆる生成された外部制御コマンドを、外部制御コマンドを処理する少なくとも1つのプロセスエンティティに出力するように適合されたアウトバウンドインターフェース32を含む。
【0077】
図7に示されるように、コントローラサービスモジュール18は、コンピュートサービスモジュール(compute service module)内の構成および動作を調整するオプションとして、コンピュータサービスモジュールコントローラ34を含む場合がある。通常、コントローラサービスモジュールコントローラ34は、コントローラサービスモジュールによるサービス構成をデプロイおよび更新し、コントローラサービスモジュールの下位構成要素の相互運用を調整する。
【0078】
図8は、
図7に示されたコントローラサービスモジュールの動作の流れ図を示す。
【0079】
図8に示されるように、インバウンドインターフェース20によって実行されるステップS10において、イベントデータが非同期で受信される。本発明によれば、受信されるイベントデータは、プロセス領域においてプロセスエンティティに関して作成される場合があり、および/またはイベントデータは、デジタルツイン領域において状態機械モデルの実行を通じて作成される場合がある。
【0080】
図8に示されるように、インバウンドバッファ22によって実行されるステップS12において、受信されたイベントデータは、あらゆる分配されたイベントデータが、イベントデータにマッピングされる関連する状態機械モデルの状態のインスタンスに従って入力状態として表されるように、プロセスサイクルバッファ26に分配される。
【0081】
図8に示されるように、状態機械実行モジュール28によって実行されるステップS14で、少なくとも1つの入力状態が、処理サイクルにおいてプロセスサイクルバッファ26から読み取られる。選択されたプロセスエンティティの制御のために、少なくとも1つの関連する状態機械モデルが、少なくとも1つの入力状態を反映するために実行される。
【0082】
図8に示されるように、プロセス制御モジュール30によって実行されるステップS16において、少なくとも1つの関連する状態機械モデルの動作が、プロセス領域における外部制御動作を命じるための外部制御コマンドの生成をトリガするかどうかがチェックされる。
【0083】
図8に示されるように、アウトバウンドインターフェース32によって実行されるステップS18において、あらゆる生成された外部制御コマンドが、外部制御コマンドを処理する少なくとも1つのプロセスエンティティに出力される。
【0084】
本発明によれば、制御コマンドの出力は、制御コマンドの生成時に、または少なくとも指定された許容可能な遅延の範囲内に開始される。これは、プロセス領域から入力されるセンサデータに対するイベント駆動型制御プロセスの応答性を大幅に向上させる。
【0085】
図9は、システムモデリングのレベルでのデジタルツインのモデリングのために使用されるツインテンプレート、
図5に示されたコントローラサービスシステムの動作中にデジタルツインインスタンスの作成のために使用されるデジタルツインスキーマ、および
図5に示されたコントローラサービスシステムの動作中にリアルタイムで状態インスタンスの作成のために使用される状態スキーマを示す。
【0086】
図9に示されるように、あらゆるデジタルツインに関して、ツインテンプレートおよびツインスキーム(twin scheme)が、デジタルツインのモデリングおよび生成のために使用される。ツインテンプレートとツインスキームとの間の違いは、ツインテンプレートがモデリング領域においてモデリングされたツインオブジェクトの能力を反映する一方で、ツインスキームは実行時間中にインスタンス化されたデジタルツインの実際の能力を反映することである。言い換えると、ツインオブジェクトの機能は、モデリング領域において提供され、ツインテンプレートによって表される能力のサブセットである場合がある。
【0087】
図9に示されるように、ツインテンプレートには、ツインIDと、ツインモデル参照と、たとえば、名前参照による、ツインオブジェクトを特徴付けるツインアイデンティフィケーション(twin identification)とのためのフィールドが設けられている。
【0088】
図9に示されるように、モデリングレベルでは、各デジタルツインは、プロセスエンティティの挙動を表す状態機械モデル、状態機械モデルに関するパースペクティブおよび関連する初期状態、デジタルツインテンプレートのために指定された特性および属性、ならびにモデリングレベルでのデジタルツインの動作の埋め込み(operational embedding)を表すコンテキストを指定するカスタムフィールドによって記述される。また、ツインテンプレートは、状態機械モデルの状態の接続性に関する情報を運び、この接続性は、以下でより詳細に説明されるように、状態機械モデルの状態とプロセス領域のプロセスエンティティと間のインタラクションに関連する。
【0089】
図9に示されるように、デジタルツインの実際の作成のためには、サービスコントローラモジュール18の動作中に参照されるツインスキーマが使用される。ツインIDは、たとえば、整数値としてインスタンス化されてよく、モデル参照は、適用可能な状態機械モデルを指定し、コンテキストは、デジタルツイン間の相互運用性と、コントローラサービスシステム10において動作させられるコンピューティングリソースへのデジタルツインのアクセスとを指定する。さらに、カスタムフィールドは、適用可能な状態機械モデル、特性、属性、コンテキスト、および接続性の種類に応じてインスタンス化される。
【0090】
図9に示されるように、サービスコントローラモジュールによって動作させられる別のスキーマは、状態の生成に関連する。
図9に示されるように、あらゆる状態、すなわち、状態の種類は、ID、状態機械モデルへの参照およびパースペクティブ、そのツインオブジェクトへの参照、ならびにツインオブジェクトによって参照されるモデルへの参照によって特徴付けられる。
【0091】
図9に示されるように、あらゆる状態は、ペイロードと、コンテキストの参照に関連する情報とを運んでよい。イベント駆動型制御プロセスのリアルタイム処理中の効率を高めるためには、状態が、そのデジタルツインのすべてのコンテキストを運ぶことが好ましいことに留意されたい。
【0092】
図9に示されるように、状態は、関連するデジタルツインスキーム(digital twin scheme)において指定された接続性を継承する。本発明によれば、あらゆる状態は、異なるプロセスエンティティとの通信のための複数の通信オプションを有する場合があることに留意されたい。
【0093】
以上のことから、本発明によれば、デジタルツインのためのまたは状態機械モデルの状態のためのスキームは、メモリを割り当て、その後、割り当てられたメモリをデータで満たすための命令として使用される。
【0094】
本発明によれば、デジタルツインが制御論理を運び、その結果、デジタルツインはプロセス領域のプロセスエンティティのための任意の制御動作を実行する場合があることに留意することが重要である。プロセスエンティティの制御のためのデジタルツインのこの能動的な役割は、デジタルツイン領域で動作させられるデジタルツインと、プロセス領域内のその関連するプロセスエンティティとの間でマスタスレーブスキームを実装することを可能にし、以前はプロセスエンティティにハードコードされていた制御能力をデジタルツインに与える。
【0095】
図10は、リアルタイムで状態機械モデルをその後実行するために、状態機械モデルを状態遷移活動の関連するセットに分解する例を示す。
【0096】
図10に示されるように、状態機械モデルは、少なくとも1つの状態遷移活動の実行を通じて、少なくとも1つのソース状態から少なくとも1つの遷移先状態に遷移することができる。状態遷移は、好ましくは、所定の状態遷移条件が満たされているという条件の下で、関連する状態遷移活動によって実行されてよい。
【0097】
図10に示されるように、状態遷移条件は、実行時間中のデジタル領域全体にわたる1つまたは複数の状態機械モデルにおける状態の所定のセットの共存を反映する状態コンテキストをモデリングするために使用される状態テンプレートによって表されてよい。状態コンテキストは、互いに関連するプロセスイベントを反映する。さらに、状態テンプレートの定義は、プロセス領域をモデリングする問題であり、同じ状態機械モデルおよび関連する状態遷移活動に関して、その異なる応用ごとに異なる場合がある。
【0098】
本発明によれば、空の状態テンプレートも想定されるように、状態遷移活動のトリガとしての状態コンテキストの適用は任意であることに留意されたい。
【0099】
図10に示されるように、状態遷移活動のさらなる構成要素は、たとえば、ソース状態Aから遷移先状態Bへの遷移のNamespace_AB、遷移元状態Bから遷移先状態Cへの遷移のNamespace_BAなどのような活動参照である。活動参照は、デジタルツインから適用可能な状態遷移活動を指し示し、したがって、状態遷移活動への効率的なアクセスを、そのリアルタイム実行中に検索なしで実現することを可能にする。
【0100】
図10に示されるように、状態遷移活動のさらなる構成要素は、遷移元状態から遷移先状態への状態遷移の基礎となる転送論理を組み込む活動オペレータ(activity operator)である。活動オペレータは、遷移先状態の作成および初期化を反映し、状態遷移活動の実行中の条件の考慮を可能にする。活動オペレーション(activity operation)は、遷移先状態を通じた変換結果のその後の表現のために、動作データに対してデータ変換処理を実施してよい。
【0101】
図11は、
図7に示された状態機械実行モジュール28のさらに詳細な模式図を示す。
【0102】
図11に示されるように、状態機械実行モジュール28は、デジタルツイン領域において、少なくとも1つの選択されたプロセスエンティティに関連して、少なくとも1つのデジタルツインを動作させるように適合されたデジタルツイン実行モジュール36を含む。上で概説されたように、デジタルツインは、少なくとも1つのプロセスエンティティのための制御論理を組み込み、少なくとも1つの選択されたプロセスエンティティの稼働データを取り込み、少なくとも1つの選択されたプロセスエンティティの挙動の観測および/または制御のために、その挙動を表すための少なくとも1つの状態機械モデルを参照する。
【0103】
図11に示されるように、状態機械実行モジュール28は、入力状態が状態機械モデルにおける状態遷移活動の実行をトリガするかどうか、または入力状態が状態機械モデルにおいて直接設定される外部状態を表すかどうかをチェックするように適合された状態機械実行コントローラ38を含む。
【0104】
図11に示されるように、状態機械実行モジュール28は、関連する状態機械モデルにおいて外部状態を直接設定するように適合されたイベント状態設定モジュール40を含む。
【0105】
図11に示されるように、状態機械実行モジュール28は、少なくとも1つの状態機械モデルにおける遷移元状態から遷移先状態への状態遷移に関連して少なくとも1つの状態遷移活動を実行するように適合された活動実行モジュール42を含む。状態遷移活動は、状態遷移活動の実行のトリガとして、デジタルツイン領域全体にわたる1つまたは複数の状態機械モデルにおける所定の状態の動作上の共存として状態コンテキストをモデリングする入力テンプレートを使用する。
【0106】
図12は、
図11に示された状態機械実行モジュールの動作の流れ図を示す。
【0107】
概して、本発明によれば、プロセスサイクル中に処理されるあらゆる入力状態が、デジタルツイン領域における状態の作成につながる。そして、あらゆる作成された状態は、状態遷移活動の実行に、入力状態がイベント駆動型プロセス制御中に考慮される外部状態を表す場合は状態の直接設定に、またはプロセス領域における動作データの変化に関する既に有効な状態の更新につながる場合がある。
【0108】
図12に示されるように、状態機械実行コントローラ38によって実行されるステップS20において、入力状態が状態機械モデルにおける状態遷移活動の実行をトリガするかどうか、または入力状態が状態機械モデルにおいて直接設定される外部状態を表すかどうかがチェックされる。
【0109】
図12に示されるように、イベント状態設定モジュール40によって実行されるステップS22においては、ステップS20が外部イベントを特定するとき、入力状態が、関連する状態機械モデルにおいて外部状態として直接設定される。
【0110】
図12に示されるように、活動実行モジュール42によって実行されるステップS24においては、ステップS20が内部イベントを特定するとき、入力状態に関連して状態遷移活動が実行される。本発明によれば、状態遷移活動は、デジタルツインに組み込まれた制御論理を実行するか、または少なくとも1つの選択されたプロセスエンティティの稼働データを収集する働きをする場合がある。
【0111】
図12に示されるように、デジタルツイン実行モジュール36によって実行されるステップS26では、実行された動作に関連して、デジタルツイン領域において、少なくとも1つのデジタルツインが更新される。
【0112】
図13は、
図11に示されたデジタルツイン実行モジュールのさらに詳細な模式図を示す。
【0113】
図13に示されるように、デジタルツイン実行モジュール36は、少なくとも1つのデジタルツインのリアルタイムの処理のために動作データを記憶するように適合されたデジタルツインメモリモジュール44を含む。
【0114】
本発明によれば、動作データは、少なくとも1つのデジタルツインの表現、少なくとも1つのデジタルツインによって参照される少なくとも1つの状態機械モデルの表現、および/または少なくとも1つのデジタルツインに組み込まれた制御論理の表現に関連する。
【0115】
図13に示されるように、デジタルツイン実行モジュール36は、動作データを更新するように適合されたデジタルツイン処理モジュール46を含む。更新は、少なくとも1つのデジタルツインによって参照される少なくとも1つの状態機械モデルに関する状態が作成されるとリアルタイムで行われる場合がある。あるいは、更新は、少なくとも1つのデジタルツインによって参照される少なくとも1つの状態機械モデルの構成が変更されると行われる場合がある。
【0116】
図14は、
図13に示されたデジタルツイン実行モジュールの動作の流れ図を示す。
【0117】
図14に示されるように、ツイン処理モジュール46によって実行される状態S28においては、イベント駆動型プロセス制御の実行時間の前に、デジタルツインの初期構成および関連する構成データが、デジタルツインメモリモジュールにデプロイされる。
【0118】
最初のデプロイは、モデリング領域において実行されるプロセス領域およびそのプロセスエンティティのモデリングによって促されることに留意されたい。最初のデプロイは、デジタルツインの表現、少なくとも1つのデジタルツインによって参照される状態機械モデルの表現、少なくとも1つのデジタルツインに組み込まれた制御論理の表現、および/または状態遷移活動の表現に関連する。
【0119】
図14に示されるように、デジタルツイン処理モジュール46によって実行される状態S30においては、動作データの継続的で繰り返される更新が、プロセス領域のプロセスフローに従ってリアルタイムで実行される。
【0120】
図14に示されるように、デジタルツイン処理モジュール46によって実行される状態S32において、入力状態が、デジタルツインによって参照される少なくとも1つの状態機械モデルに関する状態の生成に関連しているか、または少なくとも1つのデジタルツインによって参照される少なくとも1つの状態機械モデルの構成の変更に関連しているかどうかの評価が実行される。関連している場合、デジタルツイン処理モジュール46は、動作データの更新または構成の更新のためにステップS34を実行する。
【0121】
図15は、本発明によるイベント駆動型プロセス制御の基礎となる状態機械モデルにおける状態の直接設定に関する概要を示す。
【0122】
図15に示されるように、本発明によるイベント駆動型制御は、外部状態イベントの直接設定を示唆する。
【0123】
図15に示されるように、挙動モデルが特定の状態、たとえば、状態Aである一方で、実世界環境は、たとえば、状態Cに従って異なると仮定すると、状態Cにマッピングされる外部イベントが入力されると、挙動モデルにおける所定の状態の伝達を考慮することなく、この状態が直ちに直接設定される。
【0124】
外部状態イベントのそのような直接設定は、実行時間中の挙動のモデリングの精度を向上させ、デジタルツイン領域内でのプロセス領域の表現の柔軟性を高める。
【0125】
図16は、
図11に示されたイベント状態設定モジュール40のさらに詳細な模式図を示す。
【0126】
図16に示されるように、イベント状態設定モジュール40は、関連する状態機械モデルにおいてその後有効な状態となる状態をイベント状態に従って作成するように適合されたイベント状態クリエータモジュール48を含む。
【0127】
図16に示されるように、イベント状態設定モジュール40は、
図23に関連して説明されるように、状態遷移活動の効果的な実行のために使用されるコンテキスト参照を更新するように適合されたコンテキスト処理モジュール50を含む。
【0128】
図17は、
図16に示されたイベント状態設定モジュールの動作の流れ図を示す。
【0129】
図17に示されるように、イベント状態クリエータモジュール48によって実行されるステップS36において、イベント状態に関連している状態機械モデルの現在の状態が、無効化される。
【0130】
図17に示されるように、イベント状態クリエータモジュール48によって実行されるステップS38において、外部状態に適用可能な状態スキーム(state scheme)に従って、デジタルツインメモリモジュール44内の状態メモリが割り当てられる。それから、ステップS40において、割り当てられた状態が、
図9に示された状態スキーマに沿ってデータで満たされる。
【0131】
図17に示されるように、イベント状態クリエータモジュール48によって実行されるステップS42において、作成された状態が、関連する状態機械モデルの現在の状態として有効化される。
【0132】
図17に示されるように、コンテキスト処理モジュール50によって実行されるステップS44において、
図18に関連してより詳細に説明されるように、コンテキスト参照が更新される。ステップS44の実行中、関連する入力テンプレートの無効化された現在の状態を表すエントリが取り消され、関連する入力テンプレートの有効化された現在の状態を表すエントリが入力される。
【0133】
図18は、状態遷移活動のコンテキスト化および状態コンテキストの関連する更新の基礎となる基本原理を示す。
【0134】
概して、本発明によれば、コンテキスト参照は、デジタルツインから適用可能な状態遷移活動および関連する入力テンプレートを指し示す。
【0135】
図18に示されるように、あらゆる入力テンプレートは、状態遷移活動の実行のトリガとして、デジタルツイン領域全体にわたる1つまたは複数の状態機械モデルにおける所定の状態の動作上の共存をモデリングする。このことから、入力テンプレートは、状態遷移活動を実行するための制御フローを形成するために、以下の内部コンテキストとしても参照される状態コンテキストを表す。
【0136】
本発明によれば、コンテキスト参照の更新は、外部状態イベントの直接設定と状態遷移活動の実行との両方に関して同様の方法で実行されることに留意されたい。
【0137】
図18の左側に示されるように、状態遷移の遷移元状態は、関連する状態遷移活動が実行されると、状態コンテキストから取り消される。ここで、左の状態が遷移元状態であると仮定して、遷移元状態が以前に挿入された入力テンプレートref_i、...、ref_jを有するすべての状態遷移活動NS_i、NS_jにおいて、遷移元状態が取り消されることが示される。
【0138】
さらに、デジタルツインは、関連する状態遷移活動にアクセスするために必要なすべてのコンテキストを運ぶ。このことから、あらゆる関連するツインオブジェクトの関連するコンテキスト参照の更新中に、コンテキスト参照のリストが関連する状態遷移活動への参照も有するかどうかがチェックされ、有する場合、状態遷移活動の関連するペアNS_i、ref_i、...、NS_j、ref_jが、コンテキスト参照のリストから削除される。
【0139】
図18の右側に示されるように、遷移先状態に関して、関連する状態遷移活動NS_m、...、NS_nは、遷移先状態の潜在的なエントリが関連する入力テンプレートref_m、...、ref_nに反映されることを保証するために、対応する入力テンプレートに関連してチェックされる。また、すべてのツインオブジェクトに関して、コンテキスト参照の関連するリストが、新しく作成されたコンテキストのペアNS_m、ref_m、...、NS_n、ref_nによって拡張される。
【0140】
図19は、状態機械モデルに関する複数の状態遷移活動の実行と、経時的な状態機械モデルの複数の状態の関連する生成とを示す。
【0141】
図19に示されるように、2つの状態A、Bおよび2つの関連する状態遷移活動NS_A、NS_Bの例を仮定すると、外部イベントが発生しないと仮定すれば、時間の経過とともに、状態機械モデルは、状態Aと状態Bとの間を交互に切り替わる。
【0142】
図19の下部に示されるように、状態Aのエンティティのシーケンス、すなわち、A1、A2、A3は、状態Bのエンティティのシーケンス、すなわち、B1、B2と組み合わせて発生する。
【0143】
各状態遷移に関して状態が作成されると仮定すると、挙動モデルの動作は、変更ログをもたらし、変更ログは、例として、文書化の目的で、または挙動モデルの更新のために使用することができる。
【0144】
図20は、状態遷移活動のコンテキスト化の基礎としての状態コンテキストの形成、状態カバレッジの完全性に関連する状態コンテキストの検証、およびデジタルツイン領域における状態コンテキストの状態の動作上の共存時の状態遷移活動のトリガの基礎となるさらなる詳細を示す。
【0145】
図20に示されるように、状態機械の活動は、好ましくは、所定の状態遷移条件が満たされているという制御条件の下で、遷移元状態から遷移先状態に遷移することができる。
【0146】
図20に示されるように、制御条件は、状態コンテキストを表すために使用される状態テンプレートによって表されてよく、状態コンテキストは、デジタル領域全体にわたる1つまたは複数の状態機械モデルにおける状態の所定のセットの共存を反映する。
【0147】
本発明によれば、空の状態テンプレートも想定されるように、状態遷移活動の実行のトリガとしての状態コンテキストの適用は任意であることに留意されたい。さらに、状態テンプレートの定義は、プロセス領域をモデリングする問題であり、同じ状態機械モデルに関して、その異なる応用ごとに異なる場合がある。
【0148】
図20に示されるように、入力テンプレートは、遷移元状態以外の少なくとも1つの所定の状態のためのエントリスロットを有する場合がある。所定の状態がアクティブのステータスに達する、すなわち、有効化されると、入力テンプレートの関連するエントリスロットが、印を付けられる。
【0149】
さらに、遷移元状態以外の少なくとも1つの所定の状態のためのすべてのエントリスロットが印を付けられると、状態遷移活動によって、遷移元状態から遷移先状態への状態遷移が実行される。したがって、各状態コンテキストは、関連する状態遷移活動の実行をトリガする制御フローを形成する。
【0150】
全体として、本発明は、1つのデジタルツインおよびそれに関する1つのパースペクティブの状態遷移が、同じまたは異なるデジタルツインに関する状態のアクティブ化に依存する場合がある、コンテキスト化された状態遷移活動をサポートする。
【0151】
以下でより詳細に説明されるように、状態遷移活動の実行のトリガとしての入力テンプレートおよび関連する状態コンテキストの概念は、イベント駆動型プロセスにおける並列化をサポートする。その理由は、状態コンテキストが存在すると、関連する状態遷移活動が、状態遷移のトリガを待つその他の状態遷移活動と並行して、直ちに実行されてよいからである。
【0152】
さらに、入力テンプレートの粒度は、特定の応用のシナリオに応じて、状態空間モデルにおける状態遷移活動のコンテキスト化のレベルを上げるまたは下げるために変化してよい。
【0153】
図21は、状態遷移活動の実行をトリガする制御フロー、ならびに状態遷移活動の実行中に条件付けおよびデータ変換プロセスを提供するデータフローの導入を示す。
【0154】
図21に示されるように、状態遷移活動は、少なくとも1つの状態遷移活動の実行の基礎となるデータフローを形成するためのデータテンプレートを有する場合もある。その場合、活動実行モジュール42は、少なくとも1つの状態遷移活動の実行中に、データの変換のためおよびデータ駆動型の条件の考慮のために、データテンプレートに記憶されたデータに作用するように適合される。
【0155】
図22は、状態遷移活動に関する活動グループの使用と、関連する状態遷移活動セレクタの提供とを示す。
【0156】
図22に示されるように、活動処理モジュール42は、データフローの条件データに応じて、状態遷移活動のグループから1つの状態遷移活動を選択するように適合された活動セレクタモジュールを含む。
【0157】
本発明によれば、活動グループの提供が、状態機械モデルの取り扱いを容易にする。状態遷移活動が遷移元状態に関しては同じ入力のコンステレーション(constellation)で動作しているが、データフローによって異なる遷移先状態を有すると仮定すると、活動グループは、状態遷移活動の単純化されたモデリングおよび実行を可能にする。
【0158】
図23は、内部コンテキストとしての状態コンテキストからの埋め込まれるコンテキストの形成と、デジタルツインと、状態遷移活動と、状態コンテキストとの間に存在する外部コンテキストの形成とを示す。
【0159】
上で既に説明されたように、デジタルツインの動作のためには、関連する状態遷移活動を効果的に特定することが必要である。イベント駆動型プロセス制御の加速された実行のために、状態遷移活動の入力テンプレートに効果的にアクセスすることも必要である。
【0160】
これを達成するために、本発明によれば、コンテキスト参照が、活動参照と入力テンプレート参照とのペアから形成され、各活動参照は、状態遷移活動を指し示し、各入力テンプレート参照は、状態遷移活動の状態コンテキストストアに記憶される入力テンプレートを指し示す。コンテキスト参照は、状態およびデジタルツインによって運ばれる。相互運用するためには、デジタルツインが、少なくとも1つの同じのコンテキスト参照を運ばなければならない。
【0161】
図23に示されるように、一般性を損なうことなく、状態遷移活動が複数のデジタルツインに関連して実行されると仮定してよい。そのとき、本発明によれば、関連する入力テンプレートは、コンテキストストア、たとえば、名前空間によって参照される状態遷移活動のすべての入力テンプレートを蓄積する行列に統合される。
【0162】
図23に示されるように、状態コンテキストは、状態活動の遷移の条件付けのための内部コンテキストを反映するが、内部コンテキストを使用するデジタルツインと、関連する状態遷移活動と、関連する内部コンテキストとの間のリンクを確立する必要性も存在する。
【0163】
図23に示されるように、本発明によれば、<名前空間>によって参照される外部コンテキストを使用することが提案される。本発明は、実行時間中に完全なコンテキスト参照が活動参照と入力テンプレート参照とのペアによって、たとえば、<名前空間>, ref_iとして表されるように、内部コンテキスト、関連する状態遷移活動、および内部コンテキストのテンプレートを使用するデジタルツインの外部コンテキストへの埋め込みを使用する。
【0164】
結論として、本発明によれば、デジタルツインのその関連する状態遷移活動およびその関連する関連内部コンテキストへのアクセスのために、<名前空間>を値、すなわち、ref_1、....、ref_nと組み合わせて使用する外部コンテキストの指定に関するコンテキスト化。
【0165】
さらに、コンテキスト化の概念は、異なるデジタルツインに関して独立したアクセスを有する状態遷移活動の実行の並列化をサポートする。また、コンテキスト化の使用は、情報のリレーショナル検索(relational search)を回避し、したがって、イベント駆動型制御のプロセスを著しく加速する。
【0166】
図24は、
図11に示された活動実行モジュール42のさらに詳細な模式図を示す。
【0167】
図24に示されるように、活動実行モジュール42は、状態遷移活動を記憶するように適合された活動メモリモジュール52を含む。
【0168】
図24に示されるように、活動実行モジュール42は、制御フローおよび/またはデータフローによってトリガされた状態遷移活動を処理するように適合された状態フロープロセッサ54を含む。
【0169】
図24に示されるように、活動メモリモジュール52は、状態遷移活動ごとに、活動オペレータ56および状態コンテキストストア58を記憶するように適合される。状態コンテキストストア58は、複数のデジタルツインのための状態遷移活動の並列実行が原因で状態伝達活動によって参照されるすべての入力テンプレートを記憶するように適合される。また、複数の状態遷移活動60は、それらに同じ<名前空間>を割り振られることによって状態遷移活動グループ60を形成する場合がある。
【0170】
図24に示されるように、状態フロープロセッサ54は、入力状態に関連性のある状態遷移活動をフィルタリングするように適合され、入力状態に関連性のあるフィルタリングされた状態遷移活動の入力テンプレートをフィルタリングするように適合された活動フィルタリングモジュール62を含む。
【0171】
図24に示されるように、状態フロープロセッサ54は、正常に有効化された更新された入力テンプレートに関して状態遷移活動を実行するように適合された活動処理モジュール64を含む。
【0172】
図24に示されるように、状態フロープロセッサ54は、入力状態の入力を反映するために、少なくとも1つの状態遷移活動の少なくとも1つの状態コンテキストストア内のフィルタリングされた入力テンプレートを更新し、カバレッジ(coverage)の完全性に関して更新された入力テンプレートの検証を実行するように適合されたコンテキスト処理モジュール66を含む。
【0173】
コンテキスト処理モジュール66は、入力テンプレートの更新前にコンテキストストアメモリ58を準備するように適合されることに留意されたい。ここで、要求されたコンテキスト参照の更新に関して、関連する入力テンプレートが既に記憶されているかどうかを調べるために、あらゆる関連するコンテキストストアメモリ58がチェックされる。記憶されている場合、コンテキストストアメモリ58は、変更されないままである。そうでない場合、コンテキスト処理モジュール66は、要求されたコンテキスト参照の更新に従って、コンテキスト状態メモリ58に追加のメモリを割り当てる。
【0174】
図25は、
図24に示された活動実行モジュールの動作の流れ図を示す。
【0175】
図25に示されるように、活動メモリモジュール52によって実行されるステップS48では、状態遷移活動が、活動メモリモジュール52において操作される。これは、コンテキスト参照に関する実行時間中のデプロイおよび更新を示唆する。
【0176】
図25に示されるように、状態フローコントローラ54によって実行するステップS50において、状態遷移活動が、制御フローおよびデータフローに従って処理される。
【0177】
図26は、
図24に示された状態フロープロセッサモジュールの動作の流れ図を示す。
【0178】
図26に示されるように、活動フィルタリングモジュール62によって実行されるステップS52において、入力状態に関連性のある状態遷移活動が、フィルタリングされ、それから、入力状態に関連性のあるフィルタリングされた状態遷移活動の入力テンプレートが、フィルタリングされる。
【0179】
好ましくは、状態遷移活動は、状態遷移活動の活動参照を、入力状態によって運ばれる活動参照と比較することによってフィルタリングされる。さらに、入力テンプレートは、入力テンプレートに割り振られた入力テンプレート参照を、入力状態によって運ばれる入力テンプレート参照と比較することによってフィルタリングされる。
【0180】
図26に示されるように、活動処理モジュール64によって実行されるステップS54において、状態遷移活動が、正常に有効化された更新された入力テンプレートに関連して実行される。
【0181】
図26に示されるように、コンテキスト処理モジュール66によって実行されるステップS56において、状態コンテキストストア58内のフィルタリングされた入力テンプレートが、入力状態の入力を反映するために更新される。これは、関連する入力テンプレートの無効化された状態を表すエントリを取り消し、関連する入力テンプレートの有効化された状態を表すエントリを入力することによって実現される。
【0182】
図27は、
図24に示された活動処理モジュール64のさらに詳細な模式図を示す。
【0183】
図27に示されるように、活動処理モジュール64は、データフローの条件データに応じて、状態遷移活動のグループから1つの状態遷移活動を選択するように適合された活動セレクタモジュール68を含む。
【0184】
図27に示されるように、活動処理モジュール64は、入力テンプレートによって表される制御フローが状態遷移の実行をトリガするかどうかを評価するように適合された制御フロー評価モジュール70を含む。
【0185】
図27に示されるように、活動処理モジュール64は、データフローによって表される少なくとも1つの条件が状態遷移の実行をトリガするかどうかを評価するように適合されたデータフロー評価モジュール72を含む。
【0186】
図27に示されるように、活動処理モジュール64は、遷移先状態に割り振るための状態データへのデータフロー内のデータのデータ変換を実行するように適合されたデータ処理ユニット74を含む。
【0187】
図27に示されるように、活動処理モジュール64は、遷移先状態に関連するデータ要素を表す状態スキームに従って、およびデータ処理モジュールによって処理されたデータに従って、遷移先状態を作成するように適合された状態クリエータモジュール76を含む。
【0188】
好ましくは、状態クリエータモジュール76は、遷移先状態に割り振るための少なくとも1つのコンテキスト参照を作成し、割り当てられた状態メモリに遷移先状態に関連するデータを記憶するために、状態スキームに従ってデジタルツインメモリモジュール内の状態メモリを割り当てるように適合される。
【0189】
図28は、状態遷移プロセスの条件付けのためおよびデータ変換プロセスの実行のためのデータを供給するデータフローと動作的に組み合わせた、状態遷移活動の実行をトリガする制御フローの詳細な表現を示す。
【0190】
図28に示されるように、状態遷移活動へのすべての入力は、少なくとも、制御フローと、任意でデータフローとを含む。ここで、制御フローが、状態コンテキストとして指定される。状態コンテキストは、状態遷移活動の実行前に状態機械モデルでモデリングされた状態への参照によって指定される入力テンプレートまたは入力ベクトルによって表される。
【0191】
図20に関連して上で概説されたように、状態遷移活動の実行時間中に、入力テンプレートの関連するエントリは、入力テンプレートに示された状態への一致する参照を有する状態が作成されると更新される。
【0192】
図28に示されるように、データフローも、2種類のデータ、すなわち、状態遷移活動の実行の条件を表すデータと、データ変換処理に供給されるデータとに分かれる入力テンプレートによって表される。
【0193】
図28に示されるように、すべての状態遷移活動は、
図9を参照して上で説明された状態スキームへの参照によって遷移先状態の生成を実現する活動オペレータを有する。
【0194】
図28に示されるように、活動オペレータは、状態遷移活動の枠組みの中でデータ変換論理を実施してよい。ここで、たとえば、データ変換は、遷移先状態の指定に沿ってプロセスデータを修正することに関連する場合がある。
【0195】
上で示されたように、本発明によれば、活動オペレータは、プロセス領域のプロセスエンティティに影響を与える能動的な制御能力をデジタルツインに与える制御論理および関連する機能を実現する場合もある。本発明によれば、デジタルツインは、プロセス領域からデータを収集する機能ユニットであるだけでなく、プロセス領域のプロセスエンティティのための制御論理を能動的に実行する。
【0196】
図29は、
図28に示された制御フローおよびデータフローのアーキテクチャを適用する、
図27に示された活動処理モジュールの動作の流れ図を示す。
【0197】
図29に示されるように、活動セレクタモジュール68によって実行されるステップS56において、データフローの条件データに応じて、状態遷移活動のグループから1つの状態遷移活動が選択される。このステップS56は任意であり、状態遷移活動の構成に依存することに留意されたい。
【0198】
図29に示されるように、制御フロー評価モジュール70によって実行されるステップS58において、入力テンプレートによって表される制御フローが状態遷移の実行をトリガするかどうかが評価される。
【0199】
図29に示されるように、データフロー評価モジュール72によって実行されるステップS60において、データフローによって表される少なくとも1つの条件が状態遷移の実行をトリガするかどうかが評価される。
【0200】
図29に示されるように、データ処理ユニット74によって実行されるステップS62において、遷移先状態に割り振るための状態データへのデータフロー内のデータのデータ変換が実行される。
【0201】
本発明によれば、ステップS62のデータ処理は、プロセス領域の少なくとも1つのプロセスエンティティの制御のための制御コマンドの生成のための制御論理を実施してよい。好ましくは、制御コマンドは、データ処理モジュールを動作させるデジタルツインから入手可能な永続的なデータを使用して、およびプロセス領域のダイナミクス(dynamics)を記述するイベントデータを使用して生成されてよい。
【0202】
図29に示されるように、状態クリエータモジュール76によって実行されるステップS64において、遷移先状態に関連するデータ要素を表す状態スキームに従って、およびデータ処理モジュールによって処理されたデータに従って、遷移先状態が作成される。これは、適用する状態スキームに従ってデジタルツインメモリモジュール内の状態メモリを割り当て、遷移先状態に割り振るためのコンテキスト参照を作成し、割り当てられた状態メモリに遷移先状態に関連するデータを記憶することによって実現される。
【0203】
新しい状態の作成の代替は、利用可能にされたデータが関連する状態機械モデルの有効な状態の変更につながらないとき、すなわち、有効な状態が維持され、それに関連する動作データのみが変わる場合、入力状態を通じて利用可能にされたデータによって既存のデータを更新することである可能性があることに留意されたい。
【0204】
図30は、
図7に示されたインバウンドインターフェース20の一部を形成するインバウンドプロセスインターフェース、およびインバウンドプロセスインターフェースにおいて動作されられるインバウンド処理ラインの模式図を示す。
【0205】
図30に示されるように、インバウンドインターフェース20は、所定の通信プロトコルに従ってプロセスエンティティとインバウンドインターフェースとの間で確立された通信チャネルを終端するように適合された少なくとも1つの通信エンドポイント78-1、...、78-nを含むインバウンドプロセスインターフェースを含む。
【0206】
図30に示されるように、インバウンドインターフェース20は、通信エンドポイントにおいて受信されたペイロードデータを分析し、関連するペイロードデータをインバウンドバッファに出力するための少なくとも1つの入力状態に変換するように適合された少なくとも1つのインバウンド処理ライン80-1、...、80-nを含む。
【0207】
本発明によれば、プロセス領域からデジタルツイン領域へのイベントデータの並列的な非同期通信のために、プロセスエンティティと関連する入力状態とのペアごとに1つのインバウンドプロセスインターフェースが動作させられることに留意されたい。
【0208】
図30に示されるように、インバウンド処理ライン80は、通信エンドポイントにおいて受信された通信データによって運ばれるペイロードデータを特定するように適合されたペイロード特定モジュール82を含む。
【0209】
図30に示されるように、インバウンド処理ライン80は、ペイロードデータを、デジタルツイン領域に転送される少なくとも1つのペイロードアイテムに分割するように適合されたペイロード分割モジュール84を含む。
【0210】
図30に示されるように、インバウンド処理ライン80は、あらゆるペイロードアイテムの送信者および受信者として、プロセスエンティティとデジタルツインオブジェクトとのペアを特定するように適合された送信者/受信者特定モジュール86を含む。
【0211】
図30に示されるように、インバウンド処理ライン80は、デジタルツイン領域における処理に関連する情報を表すペイロードアイテムごとの信号を形成するように適合された信号形成モジュール88を含む。
【0212】
図30に示されるように、インバウンド処理ライン80は、信号を、信号によって表される情報を運ぶ入力状態にマッピングし、ペイロードアイテムに関してデータ変換を実行するように適合された信号状態マッピングモジュール90を含む。入力状態は、入力状態を対応するインバウンドバッファに転送するように適合されたインバウンド通信ポートを通じてコントローラサービスシステム10に転送されてよい。
【0213】
図31は、
図30に示されたインバウンド処理ラインの動作の流れ図を示す。
【0214】
図31に示されるように、ペイロード特定モジュール82によって実行されるステップS66では、通信エンドポイントにおいて受信された通信データによって運ばれるペイロードデータが特定される。
【0215】
図31に示されるように、ペイロード分割モジュール84によって実行されるステップS68において、ペイロードデータが、デジタルツイン領域に転送される少なくとも1つのペイロードアイテムに分割される。
【0216】
図31に示されるように、送信者/受信者特定モジュール86によって実行されるステップS70において、あらゆるペイロードアイテムの送信者および受信者として、プロセスエンティティとデジタルツインオブジェクトとのペアが特定される。
【0217】
図31に示されるように、信号形成モジュール88によって実行されるステップS72において、デジタルツイン領域における処理に関連する情報を表すペイロードアイテムごとの信号が形成される。
【0218】
図31に示されるように、信号状態マッピングモジュール90によって実行されるステップS74において、信号によって表される情報を運ぶ入力状態への信号のマッピングが実行される。ステップS74は、任意で、ペイロードアイテムに関するデータ変換を実行する働きをする。ステップS76において、入力状態が、関連するインバウンド通信ポートを介してインバウンドバッファ22に転送される。
【0219】
図32は、
図7に示されたインバウンドインターフェース20の一部を形成するインバウンドサービスインターフェース92の模式図と、
図7に示されたインバウンドバッファの模式図とを示す。
【0220】
概して、インバウンドサービスインターフェース92は、コントローラサービスモジュールのモデルベースプロセスコントローラによって、またはデジタルツイン領域において動作させられる少なくとも1つのさらなるコントローラサービスモジュールのモデルベースプロセスコントローラによって生成された状態メッセージを受信するために、少なくとも1つのメッセージング通信チャネルを読み取るように適合される。
【0221】
図32に示されるように、インバウンドサービスインターフェース92は、少なくとも1つのメッセージング通信チャネル上で交換された状態メッセージを読み取るように適合された状態メッセージリーダ94を含む。
【0222】
図32に示されるように、インバウンドサービスインターフェース92は、コントローラサービスモジュールによって処理される状態メッセージをフィルタリングするように適合された状態フィルタ96を含む。
【0223】
図32に示されるように、インバウンドバッファ22は、入力状態を状態の種類に応じた順序で記憶するように適合されたプロセスサイクルライン98を含む。本発明によれば、プロセスサイクルライン98は、直線状のメモリラインまたは隣接して配置されたキューのラインであってよい。
【0224】
図32に示されるように、インバウンドバッファ22は、次の入力状態の種類がエントリ位置のプロセスサイクルラインに記憶された状態の種類と同一であるかどうかをチェックし、それに応じてプロセスサイクルラインを更新するように適合された状態分配器100を含む。
【0225】
図33は、
図32に示されたインバウンドサービスインターフェースの動作の流れ図を示す。
【0226】
図33に示されるように、状態メッセージリーダ94によって実行されるステップS78において、少なくとも1つのメッセージング通信チャネル上で交換された状態メッセージの読み取りが実行される。
【0227】
好ましくは、状態メッセージリーダ94は、コントローラサービスシステム10のモデルベースプロセスコントローラ18によって生成された状態メッセージの受信のために、少なくとも1つのメッセージング通信チャネルを読み取る。
【0228】
好ましくは、状態メッセージリーダ94は、専用の状態の種類を有する状態を運ぶ状態メッセージの交換のためにセットアップされた複数のメッセージング通信チャネルを読み取る。
【0229】
図33に示されるように、状態フィルタ96によって実行される状態S80において、コントローラサービスモジュールによって処理される状態メッセージのフィルタリングが実行される。
【0230】
図34は、
図32に示されたインバウンドバッファにおいて動作させられる状態分配器の動作の流れ図を示す。
【0231】
図34に示されるように、状態分配器100によって実行されるステップS82において、次の入力状態の種類がエントリ位置のプロセスサイクルラインに記憶された状態の種類と同一であるかどうかのチェックと、それに応じてプロセスサイクルラインを更新することが実行される。
【0232】
図34に示されるように、状態分配器100によって実行されるステップS84において、次の入力状態に関するエントリ様式(entry modus)が上書き様式(overwrite modus)であるのかまたは状態キュー様式(state queue modus)であるかのチェックが実行される。
【0233】
図34に示されるように、状態分配器100によって実行されるステップS86においては、エントリ様式が上書き様式であるとき、次の入力状態の種類とエントリ位置に予め記憶された入力状態の種類とが同一であるときに、エントリ位置のプロセスサイクルライン98を次の入力状態によって上書きするステップS86が実行される。
【0234】
図34に示されるように、状態分配器100によって実行されるステップS88においては、エントリ様式がキュー様式であるとき、次の入力状態をプロセスサイクルラインの関連する状態キューに記憶するステップS88が実行される。次の入力状態の種類のための状態キューが既にアクティブ化されているとき、次の入力状態は、対応する状態キューに分配される。そうでなく、次の入力状態の種類がすべての予め記憶された入力状態の種類と異なるとき、次の入力状態は、新たにアクティブ化された状態キューに記憶される。
【0235】
図35は、
図7に示されたアウトバウンドインターフェース32の一部を形成するアウトバウンドプロセスインターフェース102の模式図を示す。
【0236】
図35に示されるように、アウトバウンドプロセスインターフェース102は、制御コマンドを表す出力状態を受信し、関連する制御情報をプロセス領域のプロセスエンティティに出力するための少なくとも1つのペイロードデータに変換するように適合された少なくとも1つのアウトバウンド処理ライン104-1、...、104-nを含む。
【0237】
本発明によれば、デジタルツイン領域からプロセス領域への制御コマンドの並列的な非同期通信のために、出力状態と関連する少なくとも1つの制御されるプロセスエンティティとのペアごとに、1つのアウトバウンドプロセスインターフェースが動作させられてよい。
【0238】
図35に示されるように、アウトバウンドプロセスインターフェース102は、プロセス領域における動作の制御に関連する情報を運ぶ通信信号を出力するように適合された少なくとも1つのアウトバウンド通信エンドポイント106-1、...、106-nを含む。
【0239】
図35に示されるように、アウトバウンドインターフェース32は、モデルベースプロセスコントローラにおいて生成された状態メッセージの転送のために、少なくとも1つのメッセージング通信チャネルに書き込むように適合されたアウトバウンドサービスインターフェース108を含む。
【0240】
図36は、
図35に示されたアウトバウンドプロセスインターフェースの一部を形成するアウトバウンド処理ライン104の模式図を示す。
【0241】
図36に示されるよう、アウトバウンド処理ライン104は、出力状態を、出力状態によって表される情報を運ぶ信号にマッピングし、関連するデータ変換を実行するように適合された状態信号マッピングモジュール106を含む。状態信号マッピングモジュール106は、データ変換を実行するように適合されてもよい。
【0242】
図36に示されるように、アウトバウンド処理ライン104は、出力状態によって表される情報を運ぶ信号によって運ばれるペイロードデータを特定するように適合されたペイロード特定モジュール108を含む。
【0243】
図36に示されるように、アウトバウンド処理ライン104は、ペイロードデータを少なくとも1つのペイロードアイテムに組み立てるように適合されたペイロード組み立てモジュール110を含む。
【0244】
図36に示されるように、アウトバウンド処理ライン104は、通信エンドポイントに出力するために、少なくとも1つのペイロードアイテムと関連する受信者とを表す通信信号を形成するように適合された通信信号形成モジュール112を含む。
【0245】
図37は、
図35に示されたアウトバウンドプロセスインターフェースの動作の流れ図を示す。
【0246】
図37に示されるように、アウトバウンド処理ライン104によって実行されるステップS90において、関連する制御情報に変換され、さらには、プロセス領域のプロセスエンティティに出力するための少なくとも1つのペイロードデータに変換される制御コマンドを表す出力状態が受信される。変換中、データ変換も適用可能である。
【0247】
図37に示されるように、アウトバウンド通信ポート106によって実行されるステップS92において、プロセス領域における動作の制御に関連する情報を運ぶ通信信号が出力される。
【0248】
図38は、
図36に示されたアウトバウンド処理ラインの動作の流れ図を示す。
【0249】
図38に示されるように、状態信号マッピングモジュール106によって実行されるステップS94において、出力状態によって表される情報を運ぶ信号への出力状態のマッピングが実行される。マッピングプロセス中に、適切なデータ変換が適用されてもよい。
【0250】
図38に示されるように、ペイロード特定モジュール108によって実行されるステップS96において、出力状態によって表される情報を運ぶ信号によって運ばれるペイロードデータが特定される。
【0251】
図38に示されるように、ペイロード組み立てモジュール110によって実行されるステップS98において、少なくとも1つのペイロードアイテムへのペイロードデータの組み立てが実行される。
【0252】
図38に示されるように、通信信号形成モジュール112によって実行されるステップS100において、通信エンドポイントに出力するために、少なくとも1つのペイロードアイテムと関連する受信者とを表す通信信号が形成される。
【0253】
図39は、
図5に示されたコントローラサービスシステム内で協力するコントローラサービスモジュールの疎結合のためのルーティングトポロジーを示す。
【0254】
図39に示されるように、本発明によるイベント駆動型プロセス制御を実施するコントローラサービスシステム10は、本発明による複数のコントローラサービスモジュール18-1、...、18-nを含む。
【0255】
本発明によれば、プロセスエンティティを表す各デジタルツインは、その実行のためにちょうど1つのコントローラサービスモジュール18に割り振られる。これは、単一信頼点(single point of truth)の概念に従ってデータの完全性を保証する。
【0256】
図39に示されるように、コントローラサービスシステム10は、少なくとも1つのコントローラサービスモジュール18-1、...、18-nを接続する少なくとも1つのメッセージング通信チャネル20-1、...、20-nを介した状態メッセージの交換を通じて少なくともコントローラサービスモジュールを疎結合するために、コントローラサービスモジュールごとに少なくとも1つのメッセージング通信チャネル20-1、...、20-nを含む。
【0257】
単一のコントローラサービスモジュールの場合、状態メッセージは、単一のコントローラサービスモジュールの出力を、その関連するインバウンドインターフェースにフィードバックするために働くことに留意されたい。
【0258】
本発明によれば、状態メッセージは、プロセス領域において作成され、デジタルツイン領域における複数のコントローラサービスモジュール18-1、...、18-nへのイベントデータの分配のためにコントローラサービスモジュールによって受信されるイベントデータを運んでよいことに留意されたい。
【0259】
図40は、
図39に示されたコントローラサービスシステムの修正を示す。
【0260】
図40に示されるように、状態情報を運ぶ状態メッセージの交換のために、コントローラサービスモジュール18-1、...、18-nごとに少なくとも1つのメッセージング通信チャネルが提供される。ここでは、コントローラサービスモジュール18-1、...、18-nの入力側の処理負荷を軽減する専用の特徴を有する状態に関連する状態メッセージの交換のために、メッセージング通信チャネルがセットアップされる。
【0261】
図40に示されるように、例として、第1のメッセージング通信チャネルが、サービスコントローラモジュール18において作成された状態を同じサービスコントローラ18にフィードバックするために特定のコントローラサービスモジュール18のモデルベースプロセスコントローラによって生成された内部状態に関連するメッセージの受信のためにセットアップされる場合がある。第2のメッセージング通信チャネルが、コントローラサービスモジュール18の外部で生成された外部状態に関連するメッセージの受信のためにセットアップされる場合がある。第3のメッセージング通信サブチャネルが、デジタルツインの更新に関連する情報を運ぶ状態に関連するメッセージのためにセットアップされる場合がある。
【0262】
本発明によれば、セットアップされる通信チャネルの数は、自由に選択されてよく、コントローラサービスシステムのアーキテクチャのために選択されたルーティングトポロジーにのみ依存する。
【0263】
以上、本発明の好ましい実施形態の図面および図を参照して本発明が説明されたが、明らかに、本発明は、本発明の範囲および精神から逸脱することなく、明らかであり、当業者によって容易に行われ得るその変更および修正を用いて実施されてもよいことに留意されたい。たとえば、上で説明された機能は、ソフトウェア、ハードウェア、またはそれらの組合せを使用で実現されてよい。
【0264】
したがって、本明細書に添付された特許請求の範囲が本明細書に記載された説明に限定されることは意図されておらず、むしろ、特許請求の範囲は、本発明が関連する技術分野に習熟した者によってその均等物として扱われるすべての特徴を含め、本発明において中心的位置を占める提示可能な新規性のすべての特徴を包含するように解釈されるべきであることが意図される。
【符号の説明】
【0265】
10 コントローラサービスシステム
12 センサ
14 アクチュエータ
16 制御システム
18 サービスコントローラモジュール、コントローラサービスモジュール、モデルベースプロセスコントローラ、サービスコントローラ
18-1~18-n コントローラサービスモジュール
20 状態メッセージ通信チャネル、インバウンドインターフェース
20-1~20-n メッセージング通信チャネル
22 インバウンドバッファ
24 モデルベースプロセスコントローラ
26 プロセスサイクルバッファ
28 状態機械実行モジュール
30 プロセス制御モジュール
32 アウトバウンドインターフェース
34 コンピュータサービスモジュールコントローラ、コントローラサービスモジュールコントローラ
36 デジタルツイン実行モジュール
38 状態機械実行コントローラ
40 イベント状態設定モジュール
42 活動実行モジュール、活動処理モジュール
44 デジタルツインメモリモジュール
46 デジタルツイン処理モジュール
48 イベント状態クリエータモジュール
50 コンテキスト処理モジュール
52 活動メモリモジュール
54 状態フロープロセッサ、状態フローコントローラ
56 活動オペレータ
58 状態コンテキストストア、コンテキストストアメモリ、コンテキスト状態メモリ
60 状態遷移活動、状態遷移活動グループ
62 活動フィルタリングモジュール
64 活動処理モジュール
66 コンテキスト処理モジュール
68 活動セレクタモジュール
70 制御フロー評価モジュール
72 データフロー評価モジュール
74 データ処理ユニット
76 状態クリエータモジュール
78-1~78-n 通信エンドポイント
80 インバウンド処理ライン
80-1~80-n インバウンド処理ライン
82 ペイロード特定モジュール
84 ペイロード分割モジュール
86 送信者/受信者特定モジュール
88 信号形成モジュール
90 信号状態マッピングモジュール
92 インバウンドサービスインターフェース
94 状態メッセージリーダ
96 状態フィルタ
98 プロセスサイクルライン
100 状態分配器
102 アウトバウンドプロセスインターフェース
104-1~104-n アウトバウンド処理ライン
106 状態信号マッピングモジュール、アウトバウンド通信ポート
106-1~106-n アウトバウンド通信エンドポイント
108 アウトバウンドサービスインターフェース、ペイロード特定モジュール
110 ペイロード組み立てモジュール
112 通信信号形成モジュール
【外国語明細書】