IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ シーメンス アクチエンゲゼルシヤフトの特許一覧

特開2023-164396コントローラデバイスからデジタル化プラットフォームへのランタイムシステムのシームレスな移行のための方法およびシステム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023164396
(43)【公開日】2023-11-10
(54)【発明の名称】コントローラデバイスからデジタル化プラットフォームへのランタイムシステムのシームレスな移行のための方法およびシステム
(51)【国際特許分類】
   G05B 19/05 20060101AFI20231102BHJP
【FI】
G05B19/05 A
【審査請求】有
【請求項の数】14
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023074449
(22)【出願日】2023-04-28
(31)【優先権主張番号】22170746
(32)【優先日】2022-04-29
(33)【優先権主張国・地域又は機関】EP
(71)【出願人】
【識別番号】517291346
【氏名又は名称】シーメンス アクチエンゲゼルシヤフト
【氏名又は名称原語表記】Siemens Aktiengesellschaft
【住所又は居所原語表記】Werner-von-Siemens-Str. 1, D-80333 Muenchen, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】エルヴィス アントニー
(72)【発明者】
【氏名】スリヴァトサ シンハ オルガンティ
【テーマコード(参考)】
5H220
【Fターム(参考)】
5H220AA01
5H220BB12
5H220BB15
5H220CC07
5H220CX01
5H220JJ12
5H220JJ24
5H220LL06
(57)【要約】      (修正有)
【課題】コントローラデバイスからデジタル化プラットフォームへのランタイムシステムのシームレスな移行のための方法およびシステムを提供する。
【解決手段】処理ユニットにより、接続性エラーが存在すると判定された場合、生成された入力-出力ナレッジグラフの分析に基づいて第2の入力パラメータ値をシミュレートすることをさらに含む。第2の入力パラメータ値は、エンジニアリングプログラムの実行中に複数のセンサデバイス(126A~126N)から受信されるパラメータ値である。本方法は、処理ユニットにより、生成された少なくとも1つの出力パラメータ値を技術設備内の複数の産業デバイス(108A~108N)に送信して、少なくとも複数の産業デバイス(108A~108N)を制御することをさらに含む。
【選択図】図1
【特許請求の範囲】
【請求項1】
コントローラデバイス(124)からデジタル化プラットフォーム(110)へのランタイムシステムのシームレスな移行の方法であって、前記方法は、
処理ユニット(202)により、エンジニアリングプログラムの実行中に前記コントローラデバイス(124)によって送信または受信された複数の入力-出力パラメータ値を取り込むことと、
前記処理ユニット(202)により、取り込まれた前記複数の入力-出力パラメータ値におけるパラメータ値間の複数の関係に関する情報を含む入力-出力ナレッジグラフを生成することと、
前記処理ユニット(202)により、複数のセンサデバイス(126A~126N)と前記コントローラデバイス(124)または前記デジタル化プラットフォーム(110)のうちの1つとの間のネットワーク接続(104)において少なくとも1つの接続性エラーが存在するかどうかを判定することと、
前記接続性エラーが存在すると判定された場合、前記処理ユニット(202)により、生成された前記入力-出力ナレッジグラフの分析に基づいて第1の入力パラメータ値をシミュレートすることであって、前記第1の入力パラメータ値は、前記エンジニアリングプログラムの実行中に前記複数のセンサデバイス(126A~126N)から前記コントローラデバイス(124)によって受信されるパラメータ値である、ことと、
前記処理ユニット(202)により、シミュレートされた前記第1の入力パラメータ値または複数のセンサデバイス(126A~126N)から受信された第2の入力パラメータ値のうちの1つから少なくとも1つの出力パラメータ値を生成することと、
前記処理ユニット(202)により、生成された前記少なくとも1つの出力パラメータ値を技術設備(106)内の複数の産業デバイス(108A~108N)に送信して、前記複数の産業デバイス(108A~108N)を制御することと、
を含む、方法。
【請求項2】
前記方法は、
前記処理ユニット(202)により、前記少なくとも1つの出力パラメータ値と前記複数の入力-出力パラメータ値との間の関係を決定することと、
前記処理ユニット(202)により、決定された前記関係に基づく前記少なくとも1つの出力パラメータ値に基づいて前記入力-出力ナレッジグラフを修正することと、
をさらに含む、請求項1記載の方法。
【請求項3】
前記少なくとも1つの出力パラメータ値を生成することは、
前記処理ユニット(202)により、前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報が前記入力-出力ナレッジグラフ内に存在するかどうかを判定することと、
前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報が前記入力-出力ナレッジグラフ内に存在すると判定された場合、前記処理ユニット(202)により、前記入力-出力ナレッジグラフの分析に基づいて、前記デジタル化プラットフォーム(110)において前記少なくとも1つの出力パラメータ値を生成することと、
前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報が前記入力-出力ナレッジグラフ内に存在しない場合、前記処理ユニット(202)により、前記コントローラデバイス(124)における前記エンジニアリングプログラムの実行に基づいて、前記コントローラデバイス(124)において前記少なくとも1つの出力パラメータ値を生成することと、
を含む、請求項1または2記載の方法。
【請求項4】
前記入力-出力ナレッジグラフを生成することは、
前記処理ユニット(202)により、取り込まれた前記複数の入力-出力パラメータ値を分析することと、
入力ナレッジグラフ、出力ナレッジグラフ、および入力-出力対応ナレッジグラフを生成することであって、
前記入力ナレッジグラフは、取り込まれた前記複数の入力-出力パラメータ値における複数の入力パラメータ値間の複数の関係に関連付けられた情報を含み、
前記出力ナレッジグラフは、取り込まれた前記複数の入力-出力パラメータ値における複数の出力パラメータ値間の複数の関係に関連付けられた情報を含み、
前記入力-出力対応ナレッジグラフは、取り込まれた前記複数の入力-出力パラメータ値における前記複数の入力パラメータ値と前記複数の出力パラメータ値との間の複数の関係に関連付けられた情報を含む、
ことと、
前記処理ユニット(202)により、前記生成された入力ナレッジグラフ、前記出力ナレッジグラフ、および前記入力-出力対応ナレッジグラフに基づいて前記入力-出力ナレッジグラフを生成することと、
を含む、請求項1から3までのいずれか1項記載の方法。
【請求項5】
前記方法は、
前記処理ユニット(202)により、前記コントローラデバイス(124)によって実行される前記エンジニアリングプログラムの複数のプログラミングブロックを分析することと、
前記処理ユニット(202)により、前記コントローラデバイス(124)の複数のプログラム実行パラメータを決定することであって、前記複数のプログラム実行パラメータは、前記エンジニアリングプログラムの実行中の前記コントローラデバイス(124)の内部機能に関する情報を含む、ことと、
前記処理ユニット(202)により、前記複数のプログラム実行パラメータの分析に基づいて、前記コントローラデバイス(124)によって実行された前記エンジニアリングプログラムの効率を決定することと、
前記処理ユニット(202)により、前記エンジニアリングプログラムへの人工知能モデルの適用に基づいて前記複数のプログラミングブロックを変換することであって、前記人工知能モデルは、前記複数のプログラミングブロックを変換するように訓練されている、ことと、
前記処理ユニット(202)により、変換された前記複数のプログラミングブロックを前記デジタル化プラットフォーム(110)に移動させることと、
をさらに含む、請求項4記載の方法。
【請求項6】
前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つから前記少なくとも1つの出力パラメータ値を生成することは、
前記処理ユニット(202)により、前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つがクリティカルデータ項目であるかどうかを判定することであって、前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つは、前記第1の入力パラメータ値または前記第2の入力パラメータ値に対する前記人工知能モデルの適用に基づいて、前記クリティカルデータ項目であると判定される、ことと、
前記処理ユニット(202)により、前記コントローラデバイス(124)における前記エンジニアリングプログラムの実行に基づいて、前記コントローラデバイス(124)において前記少なくとも1つの出力パラメータ値を生成することと、
を含む、請求項1記載の方法。
【請求項7】
前記ネットワーク接続(104)において少なくとも1つの接続性エラーが存在するかどうかを判定することは、
前記処理ユニット(202)により、前記複数のセンサデバイス(126A~126N)と前記コントローラデバイス(124)または前記デジタル化プラットフォーム(110)のうちの1つとの間の前記ネットワーク接続に関連付けられた複数のネットワーク接続パラメータを受信することと、
前記処理ユニット(202)により、前記複数のネットワーク接続パラメータを分析することと、
前記処理ユニット(202)により、前記分析に基づいて、前記少なくとも1つの接続性エラーが前記ネットワーク接続(104)内に存在するかどうかを判定することと、
を含む、請求項1記載の方法。
【請求項8】
コントローラデバイス(124)からデジタル化プラットフォーム(110)へのランタイムシステムのシームレスな移行の方法であって、前記方法は、
処理ユニット(202)により、コントローラデバイス(124)によって送信または受信された複数の入力-出力パラメータ値間の複数の関係に関する情報を含む第1の入力-出力ナレッジグラフを受信することと、
前記処理ユニット(202)により、エンジニアリングプログラムの実行中に前記コントローラデバイス(124)によって受信される1つ以上のパラメータ値に関する情報を含む1つ以上のナレッジグラフインスタンスを受信することと、
前記処理ユニット(202)により、認知規則のセットに基づいて、受信された前記1つ以上のナレッジグラフインスタンスを前記第1の入力-出力ナレッジグラフに付加することによって、前記第1の入力-出力ナレッジグラフを修正することと、
前記処理ユニット(202)により、複数のヒューマンマシンインタフェース(120A~120N)と前記コントローラデバイス(124)または前記デジタル化プラットフォーム(110)のうちの1つとの間のネットワーク接続(104)において少なくとも1つの接続性エラーが存在するかどうかを判定することと、
前記接続性エラーが存在すると判定された場合、前記処理ユニット(202)により、修正された前記入力-出力ナレッジグラフの分析に基づいて第1の入力パラメータ値をシミュレートすることであって、前記第1の入力パラメータ値は、前記エンジニアリングプログラムの実行中に前記複数のヒューマンマシンインタフェース(120A~120N)から受信されるパラメータ値である、ことと、
前記処理ユニット(202)により、シミュレートされた前記第1の入力パラメータ値から少なくとも1つの出力パラメータ値を生成することと、
前記処理ユニット(202)により、生成された前記少なくとも1つの出力パラメータ値を技術設備(106)内の複数の産業デバイス(108A~108N)に送信して、前記複数の産業デバイス(108A~108N)を制御することと、
を含む、方法。
【請求項9】
前記複数の入力-出力パラメータ値は、前記複数のヒューマンマシンインタフェースを介して前記コントローラデバイス(124)によって受信されたユーザ入力の第1のセットを含み、
前記エンジニアリングプログラムの実行中に前記コントローラデバイス(124)によって受信される前記1つ以上のユーザ入力に関する情報を含む受信された前記1つ以上のナレッジグラフインスタンスは、
前記処理ユニット(202)により、前記ユーザ入力の第1のセットを含む第1のワークフローを決定することであって、前記第1のワークフローに関連付けられた情報は、前記第1の入力-出力ナレッジグラフ内に存在する、ことと、
前記処理ユニット(202)により、ユーザ入力の第2のセットを含む第2のワークフローを受信することであって、前記第2のワークフローに関連付けられた情報は、第2の入力-出力ナレッジグラフ内に存在する、ことと、
前記処理ユニット(202)により、前記第1の入力-出力ナレッジグラフと前記第2の入力-出力ナレッジグラフとを比較することと、
前記処理ユニット(202)により、前記比較に基づいて前記第1のワークフローおよび前記第2のワークフローの処理効率を決定することであって、前記第1のワークフローおよび前記第2のワークフローの各々の処理効率は、それぞれのワークフローが前記エンジニアリングプログラムを使用してエンジニアリングタスクを完了する効率の指標である、ことと、
前記処理ユニット(202)により、前記第2のワークフローの処理効率が前記第1のワークフローの処理効率よりも高いかどうかを判定することと、
前記第2のワークフローの処理効率がより高いと判定された場合、前記処理ユニット(202)により、前記第2の入力-出力ナレッジグラフから前記1つ以上のナレッジグラフインスタンスを受信することと、
を含む、請求項8記載の方法。
【請求項10】
前記1つ以上のナレッジグラフインスタンスを受信することは、
前記接続性エラーが存在しないと判定された場合、前記処理ユニット(202)により、前記複数のヒューマンマシンインタフェースから第2の入力パラメータ値を受信することと、
前記処理ユニット(202)により、前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報が前記第1の入力-出力ナレッジグラフ内に存在するかどうかを判定することと、
前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報が前記第1の入力-出力ナレッジグラフ内に存在しないと判定された場合、前記処理ユニット(202)により、第2の入力-出力ナレッジグラフを受信することであって、前記第2の入力-出力ナレッジグラフは、前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報を含む、ことと、
前記処理ユニット(202)により、前記第2の入力-出力ナレッジグラフ内の前記1つ以上のナレッジグラフインスタンスを決定することであって、前記1つ以上のナレッジグラフインスタンスは、前記第1の入力パラメータ値または前記第2の入力パラメータ値に関連付けられた情報を含む、ことと、
前記処理ユニット(202)により、決定された前記1つ以上のナレッジグラフインスタンスを前記第2の入力-出力ナレッジグラフから受信することと、
を含む、請求項8記載の方法。
【請求項11】
受信された前記1つ以上のナレッジグラフインスタンスを付加することによって前記第1の入力-出力ナレッジグラフを修正することは、
前記処理ユニットにより、前記第1の入力-出力ナレッジグラフを分析して、前記第1の入力-出力ナレッジグラフの複数の部分をアクティブセクションおよび潜在セクションに分類することと、
前記処理ユニットにより、受信された前記1つ以上のナレッジグラフインスタンスを、前記第1の入力-出力ナレッジグラフの前記アクティブセクションまたは前記潜在セクションのうちの1つにマッピングすることと、
前記処理ユニットにより、前記認知規則のセットに基づいて、受信された前記1つ以上のナレッジグラフを前記第1の入力-出力ナレッジグラフへと修正することと、
を含む、請求項9および10記載の方法。
【請求項12】
コントローラデバイス(124)からデジタル化プラットフォーム(110)へのランタイムシステムのシームレスな移行のためのエンジニアリングシステム(102)であって、前記エンジニアリングシステム(102)は、
処理ユニット(202)と、
前記処理ユニット(202)に結合されたメモリ(204)と、
を備え、前記メモリは、1つ以上のプロセッサによって実行可能な機械可読命令の形態で記憶されたデータ取得および分析モジュール(112)を含み、前記データ取得および分析モジュール(112)は、請求項1から11までのいずれか1項記載の方法を実行することが可能である、
エンジニアリングシステム(102)。
【請求項13】
産業環境(100)であって、
請求項10記載のエンジニアリングシステム(102)と、
1つ以上の物理的構成要素を含む技術設備(106)と、
ネットワーク(104)を介して前記エンジニアリングシステム(102)に通信可能に結合された複数のヒューマンマシンインタフェース(120A~120N)と、
を備え、前記エンジニアリングシステム(102)は、請求項1から11までのいずれか1項記載の方法を実行するように構成されている、
産業環境(100)。
【請求項14】
処理ユニット(202)により実行される際に、前記プロセッサに請求項1から11までのいずれか1項記載の方法を実行させるための機械可読命令が記憶されたコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータ支援プログラミングのエンジニアリングの分野に関し、より詳細には、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームにシームレスに移行させるための方法およびシステムに関する。
【0002】
産業プラントなどの技術設備は、プログラマブル論理コントローラなどのコントローラデバイスによって制御される複数の産業デバイスを備えている。複数の産業デバイスの例は、制御弁、モータ、ポンプおよびアクチュエータを含むが、これらに限定されない。コントローラデバイスは、産業プラント内の複数のセンサデバイスからリアルタイム入力を受信するようにさらに構成されている。コントローラデバイスは、受信したリアルタイム入力を処理して、複数の産業デバイスを制御する。受信したリアルタイム入力は、コントローラデバイスにおけるエンジニアリングプログラムの実行によって処理される。
【0003】
デジタル化ベースのコンピューティング技術の出現により、デジタル化プラットフォームにおいてホストされるコントローラデバイスのデジタルツインにおいてエンジニアリングプログラムを実行することが有益でありうる。こうした場合、デジタル化プラットフォームは、リアルタイム入力を受信し、受信したリアルタイム入力に基づいて複数の産業デバイスを制御している。
【0004】
デジタル化プラットフォームにおいてエンジニアリングプログラムを実行することには、複数の欠点がある。例えば、産業プラントの効率的な機能は、デジタル化プラットフォームへのリアルタイム入力のタイムリーな入力を必要とする。リアルタイム入力が適時にデジタル化プラットフォームに供給されない場合、エンジニアリングプログラムの実行が影響を受け、結果としてダウンタイムが生じる。したがって、複数のセンサデバイスとデジタル化プラットフォームとの間のネットワーク接続における接続性エラーの存在は、産業プラントの効率的な機能を妨げる可能性がある。さらに、デジタル化プラットフォームがコントローラデバイスの挙動を正確にシミュレートしない場合、リアルタイム入力が不正確に処理される可能性がある。こうした場合、産業プラントの機能が妨げられる。
【0005】
さらに、エンジニアリングシステムのランタイムをコントローラデバイスからデジタル化プラットフォームに移行することには、費用が嵩みうる。例えば、デジタル化プラットフォームが挙動を正確にシミュレートするために、デジタル化プラットフォームは、コントローラデバイスの膨大な数の入力信号および出力信号の分析に基づいて生成されなければならない。そのため、デジタル化プラットフォームの生成には膨大な時間および労力を要する。その結果、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームに移行させようとする試みは、時間および労力を要するプロセスとなる可能性がある。
【0006】
このように、既存の自動化システムをPLCベースのプラットフォームからデジタル化プラットフォームに移行させることは、費用が嵩み、手間がかかりかつ困難である。
【0007】
上記に鑑みて、ランタイムシステムをPLCベースのプラットフォームからデジタル化プラットフォームへのシームレスな移行のための効率的で費用効果の高い方法およびシステムが必要とされている。したがって、本発明の目的は、コントローラデバイスからデジタル化プラットフォームへのランタイムシステムのシームレスな移行のための方法およびシステムを提供することである。
【0008】
本発明の目的は、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームへのシームレスな移行のための方法およびシステムによって達成される。コントローラデバイスの例は、プログラマブル論理コントローラ(PLC:programmable logical controller)またはマイクロプロセッサまたは処理ユニットを含む。デジタル化プラットフォームは、構成可能なコンピューティング物理および論理リソース、例えば、ネットワーク、サーバ、ストレージ、アプリケーション、サービスなどと、クラウドコンピューティングプラットフォームなどのプラットフォーム上に分散されたデータとを含む。コントローラデバイスおよびデジタル化プラットフォームは、エンジニアリングプログラムを実行して、技術設備内の複数の産業デバイスを制御するように構成されている。複数の産業デバイスの例は、制御弁、モータ、ポンプ、ロボット、旋盤、およびアクチュエータを含むが、これらに限定されない。技術設備の例には、製造プラント、発電プラント、または化学処理プラントが含まれる。
【0009】
エンジニアリングプログラムは複数のプログラミングブロックを含み、各プログラミングブロックは1つ以上のプログラム命令を含む。一例では、エンジニアリングプログラムは、プログラムロジックを含むグラフィカルプログラムである。エンジニアリングプログラムは、プログラムロジックに対応するプログラム可能な命令またはステートメントのセットを含む。複数のプログラミングブロックの各プログラミングブロックは、技術設備のエンジニアリングデザインに基づく機能ブロックに対応する。エンジニアリングデザインは、複数のこうしたプログラミングブロックを含みうる。コントローラデバイスは、複数のスキャンサイクルにおいてエンジニアリングプログラムを実行するように構成されている。コントローラデバイスおよびデジタル化プラットフォームは、複数のセンサデバイスおよび複数のヒューマンマシンインタフェースにさらに通信可能に結合されている。複数のセンサデバイスは、圧力センサと、温度センサと、振動センサとを備える。ヒューマンマシンインタフェースの例には、キーボード、マウス、およびタッチスクリーンが含まれるが、これらに限定されない。複数のヒューマンマシンインタフェースは、コントローラデバイスまたはデジタル化プラットフォームにネットワーク接続されたスマートフォン、デスクトップコンピュータ、およびタブレットコンピュータなどの複数のクライアントデバイスをさらに備える。
【0010】
好ましい実施形態では、本方法は、処理ユニットにより、エンジニアリングプログラムの実行の複数のスキャンサイクル中にコントローラデバイスによって送信または受信された複数の入力-出力パラメータ値を取り込むことを含む。複数の入力-出力パラメータ値は、複数の入力パラメータ値と複数の出力パラメータ値とを含む。複数の入力パラメータ値の例には、複数のセンサデバイスおよび複数のヒューマンマシンインタフェースからコントローラデバイスによって受信されたパラメータ値が含まれる。
【0011】
したがって、取り込まれた複数の入力-出力パラメータ値は、センサデータ、ユーザコマンド、およびユーザ入力を含む。一例では、複数の入力-出力パラメータ値は、コントローラデバイスに接続された複数のヒューマンマシンインタフェースのうちの1つのヒューマンマシンインタフェース上でユーザが実行した複数のユーザアクションに関する情報をさらに含む。別の例では、複数の入力-出力パラメータ値は、複数のセンサデバイスからコントローラデバイスによって受信された複数の入力パラメータを含む。複数の入力-出力パラメータ値は、複数のユーザアクションの受信に応答して、コントローラデバイスによって生成された複数の出力パラメータ値をさらに含む。複数の出力パラメータ値は、コントローラデバイスまたはデジタル化プラットフォームによって技術設備内の複数の産業デバイスに送信されたパラメータ値を含む。
【0012】
好ましい実施形態では、本方法は、処理ユニットにより、取り込まれた複数の入力-出力パラメータ値を分析することをさらに含む。処理ユニットは、分析に基づいて、複数の入力-出力パラメータ値における複数のパターンを識別するように構成されている。さらに、処理ユニットは、取り込まれた複数の入力-出力パラメータ値におけるパラメータ値間の複数の関係を識別するようにさらに構成されている。
【0013】
本方法は、処理ユニットにより、取り込まれた複数の入力-出力パラメータ値の分析に基づいて、入力ナレッジグラフ、出力ナレッジグラフ、および入力-出力対応ナレッジグラフを生成することをさらに含む。入力ナレッジグラフは、取り込まれた複数の入力-出力パラメータ値における複数の入力パラメータ値間の複数の関係に関する情報を含む。処理ユニットは、入力ナレッジグラフに問い合わせて、エンジニアリングプログラムの実行の将来のスキャンサイクル中にコントローラデバイスによって受信される可能性が高いパラメータ値を予測するように構成されている。将来のスキャンサイクルは、複数の入力-出力パラメータ値が取り込まれる複数のスキャンサイクルに続いて発生する。
【0014】
出力ナレッジグラフは、コントローラデバイスによって送信された複数の出力パラメータ値間の複数の関係に関する情報を含む。処理ユニットは、出力ナレッジグラフに問い合わせて、コントローラデバイスにおけるエンジニアリングプログラムの実行の将来のスキャンサイクルにおいてコントローラデバイスによって送信される可能性が高い出力パラメータ値を予測するように構成されている。入力-出力対応ナレッジグラフは、複数の入力パラメータ値の各々と複数の出力パラメータ値の各々との間の関係に関する情報を含む。処理ユニットは、入力出力対応ナレッジグラフに問い合わせて、コントローラデバイスによって受信された所与の入力パラメータ値に対してコントローラデバイスによって送信される可能性が高い出力パラメータ値を予測するように構成されている。本方法は、入力ナレッジグラフ、出力ナレッジグラフおよび入力-出力ナレッジグラフに基づいて、入力-出力ナレッジグラフを生成するようにさらに構成されている。一例では、入力-出力ナレッジグラフは、入力ナレッジグラフ、出力ナレッジグラフおよび入力-出力ナレッジグラフが3次元ナレッジグラフにおける直交次元として表される3次元ナレッジグラフである。
【0015】
好ましい実施形態では、本方法は、処理ユニットにより、複数のセンサデバイスとコントローラデバイスまたはデジタル化プラットフォームのうちの1つとの間のネットワーク接続に関連付けられた複数のネットワーク接続パラメータを受信することをさらに含む。複数のネットワーク接続パラメータは、複数のセンサデバイスと、コントローラデバイスまたはデジタル化プラットフォームのうちの1つとの間のネットワーク接続に関連付けられた、ネットワーク強度、パケットカウント、パケットドロップデータに関連付けられた情報を含む。本方法は、処理ユニットにより、複数のネットワーク接続パラメータを分析することをさらに含む。本方法は、処理ユニットにより、分析に基づいて、ネットワーク接続において少なくとも1つの接続性エラーが存在すると判定することをさらに含む。一例では、複数のネットワーク接続性パラメータはネットワーク強度を含む。この場合、処理ユニットは、ネットワーク強度が所定の閾値を下回るかどうかを判定するように構成されている。ネットワーク強度が所定の閾値を下回ると判定された場合、複数のセンサデバイス/複数のヒューマンマシンインタフェースとコントローラデバイスまたはデジタル化プラットフォームのうちの1つとの間のネットワーク接続において少なくとも1つの接続性エラーが存在すると判定される。
【0016】
ネットワーク接続において少なくとも1つの接続性エラーが存在すると判定された場合、本方法は、生成された入力-出力ナレッジグラフの分析に基づいて第1の入力パラメータ値をシミュレートすることをさらに含む。一例では、第1の入力パラメータ値は、入力-出力ナレッジグラフに問い合わせることによって処理ユニットによりシミュレートされる。入力-出力ナレッジグラフは、複数のスキャンサイクルにおいてコントローラデバイスによって受信された複数の入力パラメータ値の間の複数の関係に関する情報を含むことに留意されたい。したがって、有利には、第1の入力パラメータ値のシミュレーションは、複数のスキャンサイクルにおいてコントローラデバイスによって受信された複数の入力パラメータ値を考慮に入れる。したがって、シミュレートされた第1の入力パラメータ値は、エンジニアリングプログラムの実行中に複数のセンサデバイス/複数のヒューマンマシンインタフェースからコントローラデバイスによって受信される可能性が極めて高い。
【0017】
処理ユニットは、少なくとも1つの接続エラーが存在しないと判定された場合、複数のセンサデバイスから第2の入力パラメータ値を受信するように構成されている。第2の入力パラメータ値は、ネットワーク接続を介して受信される。第2の入力パラメータ値の例は、複数のセンサデバイスから受信されたセンサデータと、ヒューマンマシンインタフェースから受信された複数のユーザ入力とを含む。
【0018】
好ましい実施形態では、本方法は、処理ユニットにより、シミュレートされた第1の入力パラメータ値または受信された第2の入力パラメータ値のうちの1つに関する情報が入力-出力ナレッジグラフ内に存在するかどうかを判定することをさらに含む。換言すれば、処理ユニットは、入力-出力ナレッジグラフが複数の入力-出力パラメータ値と第1の入力パラメータ値または第2の入力パラメータ値との間の複数の関係に関する情報を含むかどうかを判定するように構成されている。処理ユニットは、入力-出力ナレッジグラフが第1の入力パラメータ値または第2の入力パラメータ値に関する情報を含む場合、入力-出力ナレッジグラフに問い合わせて少なくとも1つの出力パラメータ値を生成するように構成されている。
【0019】
少なくとも1つの出力パラメータ値は、コントローラデバイスにおける第1の入力パラメータ値または第2の入力パラメータ値の受信および処理時に、コントローラデバイスによって生成される可能性が高いパラメータ値である。有利には、少なくとも1つの出力パラメータ値は、エンジニアリングプログラムの実行中にコントローラデバイスによって受信された複数の入力-出力パラメータ値の分析に基づいてシミュレートされる。さらに、少なくとも1つの出力パラメータ値は、取り込まれた複数の入力-出力パラメータ値におけるパラメータ値間の複数の関係に関連付けられた情報の分析に基づいてシミュレートされる。したがって、有利には、処理ユニットは、少なくとも1つの出力パラメータ値を正確にシミュレートすることが可能になる。したがって、少なくとも1つの出力パラメータ値の生成は、コントローラデバイスではなくデジタル化プラットフォームにおいて実行される。
【0020】
したがって、有利には、第1のパラメータ値または第2のパラメータ値を処理するために費やされる処理能力は、コントローラデバイスではなくデジタル化プラットフォームによって占められる。これにより、コントローラデバイスの処理負荷が軽減される。その結果、コントローラデバイスの処理能力が向上する。さらに、有利には、コントローラデバイスおよびデジタル化プラットフォームは、ネットワーク接続における少なくとも1つの接続エラーの存在にもかかわらず、第1の入力パラメータ値または第2の入力パラメータ値を受信し続ける。したがって、有利には、ネットワーク接続において少なくとも1つの接続エラーが存在する場合であっても、エンジニアリングプログラムの実行は停止されない。
【0021】
好ましい実施形態では、本方法は、処理ユニットにより、第1の入力パラメータ値または第2の入力パラメータ値のうちの1つがクリティカルデータ項目であるかどうかを判定することをさらに含む。一例では、第1の入力パラメータ値および第2の入力パラメータ値に対する人工知能モデルの適用に基づいて、第1の入力パラメータ値または第2の入力パラメータ値のうちの1つがクリティカルデータ項目であると判定される。第1のパラメータ値または第2のパラメータ値がクリティカルデータ項目であると判定された場合、第1の入力パラメータ値または第2の入力パラメータ値は、コントローラデバイスにおいて処理される。
【0022】
第1のパラメータ値または第2のパラメータ値に関する情報が入力-出力ナレッジグラフ内に存在しないと判定された場合、本方法は、処理ユニットにより、第1のパラメータ値または第2のパラメータ値をコントローラデバイスに送信することを含む。コントローラデバイスは、エンジニアリングプログラムの実行に基づいて第1のパラメータ値または第2のパラメータ値を処理するように構成されている。さらに、コントローラデバイスは、エンジニアリングプログラムの実行によって、第1のパラメータ値または第2のパラメータ値から少なくとも1つの出力パラメータ値を生成するように構成されている。
【0023】
好ましい実施形態では、本方法は、処理ユニットにより、コントローラデバイスから、生成された少なくとも1つの出力パラメータ値を受信することをさらに含む。本方法は、生成された少なくとも1つの出力パラメータ値を技術設備内の複数の産業デバイスに送信して、複数の産業デバイスを制御し、技術設備を効率的に稼働させることをさらに含む。したがって、有利には、コントローラデバイスは、入力-出力ナレッジグラフ内に存在しないパラメータ値を処理するだけでよい。したがって、コントローラデバイスの処理負荷が大幅に軽減され、パラメータ値処理の大部分がデジタル化プラットフォームで行われる。したがって、少なくとも1つの出力パラメータ値の生成は、デジタル化プラットフォームにおいて実行される。したがって、有利には、第1のパラメータ値または第2のパラメータ値を処理するために費やされる処理能力は、コントローラデバイスではなくデジタル化プラットフォームによって占められる。これにより、コントローラデバイスの処理負荷が軽減される。
【0024】
好ましい実施形態では、本方法は、生成された少なくとも1つの出力パラメータ値を分析することをさらに含む。さらに、本方法は、少なくとも1つの出力パラメータ値、第1の入力パラメータ値、および第2の入力パラメータ値の分析に基づいて入力-出力ナレッジグラフを修正することをさらに含む。入力-出力ナレッジグラフは、第1の入力パラメータ値と第2のパラメータ値と少なくとも1つの出力パラメータ値との間の関係が入力-出力ナレッジグラフに記録されるように修正される。
【0025】
したがって、有利には、コントローラデバイスまたはデジタル化プラットフォームが、将来、第1の入力パラメータ値または第2のパラメータ値に等しいパラメータ値を受信する場合、出力パラメータ値は、入力-出力ナレッジグラフに問い合わせることによって容易に生成される。これによって、コントローラデバイスの処理負荷がさらに軽減される。最終的に、入力-出力ナレッジグラフは、コントローラデバイスによって受信されうる全ての可能なパラメータ値に関連付けられた情報を蓄積する。こうした場合、デジタル化プラットフォームは、コントローラデバイスによって受信された入力パラメータ値の全ての可能な組み合わせに対して複数の出力パラメータ値を生成することが可能になる。したがって、有利には、技術設備のランタイムは、コントローラデバイスからデジタル化プラットフォームにシームレスに移行される。
【0026】
好ましい実施形態では、本方法は、処理ユニットにより、コントローラデバイスによって実行されるエンジニアリングプログラムの複数のプログラミングブロックを分析することをさらに含む。本方法は、処理ユニットにより、コントローラデバイスの複数のプログラム実行パラメータを決定することをさらに含む。複数のプログラム実行パラメータは、エンジニアリングプログラムの実行中のコントローラデバイスの内部機能に関する情報を含む。例えば、複数のプログラム実行パラメータは、コントローラデバイスにおけるエンジニアリングプログラムの実行中のコントローラデバイスのメモリフラグメンテーション、スキャンサイクル特性、システムリソース利用、およびメモリ利用に関する情報などのランタイム情報を含む。本方法は、処理ユニットにより、コントローラデバイスによるエンジニアリングプログラムの実行効率を決定することをさらに含む。
【0027】
好ましい実施形態では、本方法は、処理ユニットにより、エンジニアリングプログラムの実行効率を妨げる、エンジニアリングプログラムの1つ以上のプログラミングブロックを決定することをさらに含む。本方法は、処理デバイスによって、コントローラデバイスによるエンジニアリングプログラムの決定された実行効率に基づいて、変換される1つ以上のプログラミングブロックを選択することをさらに含む。本方法は、処理ユニットにより、決定された1つ以上のプログラミングブロックに人工知能モデルを適用することをさらに含む。人工知能モデルは、コントローラデバイスによるエンジニアリングプログラムの実行効率を最適化するために、決定された1つ以上のプログラミングブロックを変換するように訓練される。本方法は、処理ユニットにより、エンジニアリングプログラムへの人工知能モデルの適用に基づいて複数のプログラミングブロックを変換することをさらに含む。本方法は、処理ユニットにより、変換された複数のプログラミングブロックをデジタル化プラットフォームに移動させることをさらに含む。
【0028】
好ましい実施形態では、コントローラデバイスからデジタル化プラットフォームへのランタイムシステムのシームレスな移行の方法は、処理ユニットにより、コントローラデバイスによって送信または受信された複数の入力-出力パラメータ値の間の複数の関係に関する情報を含む第1の入力-出力ナレッジグラフを受信することを含む。複数の入力-出力パラメータ値は、複数の入力パラメータ値と複数の出力パラメータ値とを含む。複数の入力パラメータ値の例は、複数のヒューマンマシンインタフェースのうちの複数からコントローラデバイスによって受信されたパラメータ値を含む。複数の入力パラメータ値は、センサデータ、ユーザコマンド、およびユーザ入力を含む。一例では、複数の入力パラメータ値は、複数のヒューマンマシンインタフェース上でユーザによって実行される複数のユーザアクションを含む。複数のユーザアクションの例は、ヒューマンマシンインタフェースの入力デバイスにおいてユーザによって入力されるユーザコマンド、ユーザ入力、プログラミング命令、およびユーザ選択を含む。複数の出力パラメータ値は、コントローラデバイスおよびデジタル化プラットフォームによって技術設備内の複数の産業デバイスに送信されたパラメータ値を含む。複数の出力パラメータ値は、複数のユーザアクションの受信に基づいてコントローラデバイスによって送信された制御信号を含む。ユーザは、実行されたエンジニアリングプログラムを使用してタスクを実行するために複数のユーザアクションを入力することができる。複数のユーザアクションは、ワークフローとして配置される。ユーザは、タスクを実行するためのユーザアクションのセットを含むワークフローを実行することが可能になる。一例では、タスクは、第1のワークフローおよび第2のワークフローのうちの1つを使用して実行されうる。
【0029】
好ましい実施形態では、本方法は、処理ユニットにより、複数のヒューマンマシンインタフェースとコントローラデバイスまたはデジタル化プラットフォームのうちの1つとの間のネットワーク接続において少なくとも1つの接続性エラーが存在するかどうかを判定することをさらに含む。少なくとも1つの接続性問題は、ネットワーク接続に関連付けられた複数のネットワーク接続パラメータの分析に基づいて判定される。本方法は、処理ユニットにより、接続性エラーが存在すると判定された場合、修正された入力-出力ナレッジグラフの分析に基づいて第1の入力パラメータ値をシミュレートすることをさらに含む。第1の入力パラメータ値は、エンジニアリングプログラムの実行中に複数のヒューマンマシンインタフェースから受信される可能性が高いパラメータ値である。一例では、第1の入力パラメータ値は、エンジニアリングプログラムの実行中にコントローラデバイスによって受信される可能性が高いユーザアクションに関する情報を含む。
【0030】
一例では、本方法は、処理ユニットにより、複数のヒューマンマシンインタフェースとコントローラデバイスとの間のネットワーク接続において接続性エラーが存在しないと判定された場合、複数のセンサデバイスから第2の入力パラメータ値を受信することを含む。第2の入力パラメータ値は、制御信号、センサデータ信号、および第1のユーザからのユーザ入力のうちの少なくとも1つである。本方法は、処理ユニットにより、第1の入力パラメータ値および第2の入力パラメータ値のうちの1つが第1の入力出力パラメータ値内に存在するかどうかを判定することをさらに含む。換言すれば、本方法は、第1の入力パラメータ値および第2の入力パラメータ値のうちの1つと複数の入力-出力パラメータ値のうちのいずれかとの間の関係が第1の入力-出力ナレッジグラフに記録されているかどうかを判定することを含む。第1の入力パラメータ値および第2の入力パラメータ値のうちの少なくとも1つに関する情報が第1の入力-出力ナレッジグラフ内に存在する場合、処理ユニットは、単に第1の入力-出力ナレッジグラフに問い合わせることによって、少なくとも1つの出力パラメータを生成することが可能になる。第1の入力パラメータ値または第2の入力パラメータ値のうちの1つに関する情報が第1の入力-出力ナレッジグラフ内に存在しない場合、本方法は、第1の入力パラメータまたは第2の入力パラメータに関する情報がデータベースに記憶された第2の入力-出力ナレッジグラフ内に存在するかどうかを判定することをさらに含む。
【0031】
一例では、第1の入力パラメータ値または第2の入力パラメータ値に関する情報が第2の入力-出力ナレッジグラフ内に存在すると判定された場合、本方法は、処理ユニットにより、第2の入力-出力ナレッジグラフ内の1つ以上のナレッジグラフインスタンスを決定することをさらに含む。1つ以上のナレッジグラフインスタンスは、第1の入力パラメータ値または第2の入力パラメータ値に関する情報を含む。1つ以上のナレッジグラフインスタンスは、エンジニアリングプログラムの実行の将来のスキャンサイクルにおいて、コントローラデバイスによって受信される可能性が高い1つ以上のパラメータ値に関する情報をさらに含む。
【0032】
好ましい実施形態では、本方法は、処理ユニットにより、第1の入力-出力ナレッジグラフを分析して、第1の入力-出力ナレッジグラフの複数の部分をアクティブセクションおよび潜在セクションに分類することをさらに含む。アクティブセクションは、エンジニアリングプログラムの実行の現在のスキャンサイクルにおいて処理されるパラメータ値の第1のセットに関する情報を含む。潜在セクションは、エンジニアリングプログラムの実行の将来のスキャンサイクルにおいて処理されるパラメータ値の第2のセットに関する情報を含む。本方法は、処理ユニットにより、受信された1つ以上のナレッジグラフインスタンスを第1の入力-出力ナレッジグラフのアクティブセクションまたは潜在的セクションのうちの1つにマッピングすることをさらに含む。本方法は、処理ユニットにより、認知規則のセットに基づいて、受信された1つ以上のナレッジグラフを第1の入力-出力ナレッジグラフに付加することをさらに含む。したがって、処理ユニットは、認知規則のセットに基づいて第1の入力-出力ナレッジグラフを修正するように構成されている。認知規則のセットは、学習をあるナレッジグラフから別のナレッジグラフに移すように設計された規則のセットである。
【0033】
別の例では、本方法は、処理ユニットにより、エンジニアリングプログラムを使用してタスクを実行するためのユーザアクションの第1のセットを含む第1のワークフローを決定することを含む。一例では、タスクは、エンジニアリングシステムを介して実行されるエンジニアリングタスクである。別の例では、タスクは、技術設備内の複数の産業デバイスを制御するための制御タスクである。ユーザアクションの第1のセットは、タスクを実行する第1の方法を表す。第1のワークフローに関連付けられた情報は、第1の入力-出力ナレッジグラフ内に存在する。第1のワークフローに関連付けられた情報は、第1のワークフロー内のユーザアクションの第1のセット間の複数の関係に関する情報を含む。さらに、第1の入力-出力ナレッジグラフは、ユーザアクションの第1のセットが実行されるシーケンスに関する情報を含む。本方法は、処理ユニットにより、エンジニアリングプログラムを使用して同じタスクを実行するためのユーザアクションの第2のセットを含む第2のワークフローを受信することをさらに含む。ユーザアクションの第2のセットは、ユーザアクションの第1のセットとは異なる。換言すれば、ユーザアクションの第2のセットは、エンジニアリングプログラムを使用して同じタスクを実行する第2の方法を表す。第2のワークフローに関連付けられた情報は、データベースに記憶された第2の入力-出力ナレッジグラフ内に存在する。第2の入力-出力ナレッジグラフは、第2のワークフローにおけるユーザアクションのシーケンスに関する情報と、第2のワークフローにおける個々のユーザアクションに関する情報とを含む。
【0034】
好ましい実施形態では、本方法は、第1の入力-出力ナレッジグラフと第2の入力-出力ナレッジグラフとを比較することをさらに含む。一例では、第1の入力-出力ナレッジグラフは、2つのナレッジグラフ間の相関演算に基づいて第2の入力-出力ナレッジグラフと比較される。本方法は、処理ユニットにより、比較に基づいて第1のワークフローおよび第2のワークフローの処理効率を決定することをさらに含む。第1のワークフローおよび第2のワークフローの各々の処理効率は、それぞれのワークフローがタスクを完了する効率の指標である。一例では、第1のワークフローおよび第2のワークフローの処理効率は、第1のワークフローおよび第2のワークフローの各々がデジタルツインにおいて実行されるときに、タスク完了にかかる時間を測定することによって決定される。
【0035】
好ましい実施形態では、本方法は、処理ユニットにより、第2のワークフローの処理効率が第1のワークフローの処理効率よりも高いかどうかを判定することをさらに含む。第2のワークフローの処理効率が第1のワークフローの処理効率よりも高い場合、本方法は、処理ユニットにより、第2のワークフローに対応する第2の入力-出力ナレッジグラフ内の1つ以上のナレッジグラフインスタンスを決定することをさらに含む。本方法は、処理ユニットにより、第2の入力-出力ナレッジグラフから、決定された1つ以上のナレッジグラフインスタンスを受信することをさらに含む。本方法は、受信された1つ以上のナレッジグラフインスタンスを第1の入力-出力ナレッジグラフインスタンスに付加することによって、第1の入力-出力ナレッジグラフを修正することをさらに含む。
【0036】
好ましい実施形態では、本方法は、処理ユニットにより、シミュレートされた第1の入力パラメータ値から少なくとも1つの出力パラメータ値を生成することをさらに含む。本方法は、処理ユニットにより、生成された少なくとも1つの出力パラメータ値を技術設備内の少なくとも1つのデバイスに送信して、少なくとも1つのデバイスを制御することをさらに含む。
【0037】
本発明の目的は、コントローラデバイスからデジタル化プラットフォームへのランタイムシステムのシームレスな移行のためのエンジニアリングシステムによっても達成される。エンジニアリングシステムは、1つ以上のプロセッサと、処理ユニットに結合されたメモリとを備える。メモリは、プロセッサによって実行可能な機械可読命令の形態で記憶されたデータ分析および取得モジュールを含む。データ分析および取得モジュールは、上述した方法を実行するように構成されている。
【0038】
本発明の目的は、産業環境によっても達成される。産業環境は、エンジニアリングシステムと、1つ以上の物理的構成要素を備える技術設備と、エンジニアリングシステムおよび技術設備に通信可能に結合された複数のヒューマンマシンインタフェースとを備える。エンジニアリングシステムは、上述した方法ステップを実行するように構成されている。
【0039】
本発明の目的は、1つ以上のプロセッサによって実行される際に、1つ以上のプロセッサに上述した方法ステップを実行させるための機械可読命令が記憶されたコンピュータプログラム製品によっても達成される。
【0040】
ここで、本発明の添付の図面を参照して、本発明の上記および他の特徴を扱う。図示された実施形態は本発明を例示することを意図しており、本発明を限定することを意図していない。
【0041】
本発明を、添付の図面に示される例示的な実施形態を参照して、以下にさらに説明する。
【図面の簡単な説明】
【0042】
図1】本発明の一実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームに移行させることができる産業環境のブロック図である。
図2】本発明の一実施形態が実装されうる、図1に示すようなエンジニアリングシステムのブロック図である。
図3】本発明の一実施形態が実装されうる、図2に示すようなデータ取得および分析論モデルのブロック図である。
図4A】本発明の一実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームにシームレスに移行させる例示的な方法を示すプロセスフローチャートである。
図4B】本発明の一実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームにシームレスに移行させる例示的な方法を示すプロセスフローチャートである。
図4C】本発明の一実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームにシームレスに移行させる例示的な方法を示すプロセスフローチャートである。
図4D】本発明の一実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームにシームレスに移行させる例示的な方法を示すプロセスフローチャートである。
図4E】本発明の一実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームにシームレスに移行させる例示的な方法を示すプロセスフローチャートである。
図5A】本発明の別の実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームにシームレスに移行させる例示的な方法を示すプロセスフローチャートである。
図5B】本発明の別の実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームにシームレスに移行させる例示的な方法を示すプロセスフローチャートである。
図5C】本発明の別の実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームにシームレスに移行させる例示的な方法を示すプロセスフローチャートである。
図6】本発明の一実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームに移行させることができるシステムの例示的な実装形態を示すブロック図である。
図7】本発明の一実施形態による、潜在セクションおよびアクティブセクションを含む入力-出力ナレッジグラフを示す概略図である。
図8】本発明の一実施形態による、入力-出力ナレッジグラフを修正する方法を示す概略図である。
図9】本発明の一実施形態による、第1の認知規則を使用して入力-出力ナレッジグラフを修正する方法を示す概略図である。
図10】本発明の一実施形態による、ランタイムシステムをコントローラデバイスからデジタル化プラットフォームに移行させることができるシステムの例示的な実装形態を示すブロック図である。
図11】本発明の一実施形態による、入力-出力ナレッジグラフを修正する方法を示す概略図である。
図12】本発明の一実施形態による、第2の認知規則を使用して入力-出力ナレッジグラフを修正する方法を示す概略図である。
図13】本発明の一実施形態による、第3の認知規則を使用して入力-出力ナレッジグラフを修正する方法を示す概略図である。
図14】本発明の一実施形態による、第4の認知規則を使用して入力-出力ナレッジグラフを修正する方法を示す概略図である。
【0043】
種々の実施形態を図面を参照して説明するが、図面を参照するにあたり、全体を通して、同様の要素を参照するために使用する同様の参照番号を使用する。以下の説明では、説明の目的で、1つ以上の実施形態の完全な理解を提供するために、多数の具体的な詳細を記載する。こうした実施形態は、これらの具体的な詳細なしに実施されうることが明らかでありうる。
【0044】
図1は、本発明の一実施形態による、ランタイムシステムをコントローラデバイス124からデジタル化プラットフォーム110にシームレスに移行させることができる産業環境100のブロック図である。図1において、産業環境100は、エンジニアリングシステム102と、技術設備106と、複数のヒューマンマシンインタフェース120A~120Nとを含む。本明細書で使用されるように、「産業環境」は、例えば、ネットワーク、サーバ、記憶装置、アプリケーション、サービスなどの構成可能なコンピューティング物理および論理リソースと、クラウドコンピューティングプラットフォームなどのプラットフォームを経由して分散されるデータとを含む、処理環境を指す。産業環境100は、構成可能なコンピューティング物理および論理リソースの共有プールへのオンデマンドネットワークアクセスを提供する。エンジニアリングシステム102は、ネットワーク接続104(ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、Wi-Fi、インターネット、任意の短距離または広域通信など)を介して技術設備106に通信可能に接続される。エンジニアリングシステム102はまた、ネットワーク接続104を介して複数のヒューマンマシンインタフェース120A~120Nに接続される。
【0045】
エンジニアリングシステム102は、ネットワーク接続104を介して、技術設備106内の複数の産業デバイス108A~108Nに接続される。複数の産業デバイス108A~108Nは、サーバ、ロボット、スイッチ、自動化デバイス、プログラマブルロジックコントローラ(PLC)、ヒューマンマシンインタフェース(HMI)、モータ、バルブ、ポンプ、アクチュエータ、センサ、および他の産業機器を含むことができる。複数の産業デバイス108A~108Nは、物理的接続を介して、互いに、または複数の他の構成要素(図1には図示せず)に接続されうる。物理的接続は、複数の産業デバイス108A~108N間の配線を介することができる。代替的に、複数の産業デバイス108A~108Nはまた、非物理的接続(モノのインターネット(IOT:Internet of Things)など)および5Gネットワークを介して接続されてもよい。図1は、1つの技術設備106に接続されたエンジニアリングシステム102を示しているが、当業者は、エンジニアリングシステム102がネットワーク接続104を介して異なる地理的位置に配置された複数の技術設備に接続されうることを想定することができる。
【0046】
技術設備106は、複数のセンサデバイス126A~126Nをさらに備える。複数のセンサデバイス126A~126Nは、圧力センサ、電圧センサ、温度センサ、および振動センサなどのセンサを備える。複数のセンサデバイス126A~126Nは、技術設備106から1つ以上の測定値を取得する。1つ以上の測定値は、温度測定値、気圧測定値、および振動測定値を含む。複数のセンサデバイス126A~126Nは、ネットワーク接続104を介してコントローラデバイス124に接続される。
【0047】
複数のヒューマンマシンインタフェース120A~120Nは、デスクトップコンピュータ、ラップトップコンピュータ、タブレット、スマートフォンなどでありうる。複数のヒューマンマシンインタフェース120A~120Nの各々は、エンジニアリングプログラムをそれぞれ生成および/または編集するためのエンジニアリングツール122A~122Nを含む。複数のヒューマンマシンインタフェース120A~120Nは、エンジニアリングプログラムを自動的に生成するためにエンジニアリングシステム102にアクセスすることができる。複数のヒューマンマシンインタフェース120A~120Nは、(ウェブブラウザを介して複数の産業デバイス108A~108Nの性能可視化を提供するなどの)クラウドアプリケーションにアクセスすることができる。本明細書を通して、用語「ヒューマンマシンインタフェース」、「クライアントデバイス」および「ユーザデバイス」は、交換可能に使用される。複数のヒューマンマシンインタフェース120A~120Nは、複数のユーザから複数のユーザアクションを受信するようにさらに構成されている。複数のユーザアクションは、ユーザ入力、ユーザコマンド、ユーザジェスチャ、プログラミング命令、およびユーザパスワードを含む。複数のユーザアクションが、コントローラデバイス124および複数の産業デバイス108A~108Nを使用して1つ以上のタスクを実行するために、複数のユーザによって入力される。
【0048】
エンジニアリングシステム102は、コントローラデバイス124に接続されることに留意されたい。コントローラデバイス124の例には、プログラマブルロジックコントローラ、マイクロプロセッサ、および他の処理ユニットが含まれるが、これらに限定されない。コントローラデバイス124は、エンジニアリングシステム102によって生成されたエンジニアリングプログラムを複数のスキャンサイクルで実行するように構成されている。コントローラデバイス124は、複数のセンサデバイス126A~126Nおよび複数のヒューマンマシンインタフェース120A~120Nから複数の入力パラメータ値を受信するように構成されている。コントローラデバイス124は、複数の出力パラメータ値を複数の産業デバイス108A~108Nおよび複数のヒューマンマシンインタフェースに送信するようにさらに構成されている。
【0049】
エンジニアリングシステム102は、制御ステーションに配備されたスタンドアロンサーバであってもよく、またはクラウドコンピューティングプラットフォーム上のリモートサーバであってもよい。好ましい実施形態では、エンジニアリングシステム102は、クラウドベースのエンジニアリングシステムでありうる。エンジニアリングシステム102は、複数の産業デバイス108A~108Nを備える技術設備106を管理するためのアプリケーション(クラウドアプリケーションなど)を配信することができる。エンジニアリングシステム102は、デジタル化プラットフォーム110(クラウドコンピューティングプラットフォームなど)と、データ取得および分析モジュール112と、ハードウェアリソースおよびオペレーティングシステム(OS)を含むサーバ114と、ネットワークインタフェース116と、データベース118とを備えうる。デジタル化プラットフォーム110は、入力-出力ナレッジグラフをさらに含む。入力-出力ナレッジグラフは、ある時間間隔の間にコントローラデバイス124によって受信または送信された複数のパラメータ値の間の複数の関係に関する情報を含む。ネットワークインタフェース116は、エンジニアリングシステム102、技術設備106、クライアントデバイス120A~120N、デジタル化プラットフォーム110、およびコントローラデバイス124の間の通信を可能にする。インタフェース(クラウドインタフェースなど)(図1には図示せず)は、複数の産業デバイス120A~120Nにおけるエンジニアが、コントローラデバイス124およびデジタル化プラットフォーム110にアクセスし、コントローラデバイス124およびデジタル化プラットフォーム110上で複数のユーザアクションを実行することを可能にしうる。
【0050】
サーバ114は、OSがインストールされた1つ以上のサーバを含みうる。サーバ114は、1つ以上のプロセッサ、例えばデータおよび機械可読命令を記憶するためのメモリユニットなどの1つ以上の記憶デバイス、アプリケーションおよびアプリケーションプログラミングインタフェース(API:application programming interface)、ならびにコンピューティング(クラウドコンピューティングなど)機能を提供するために必要な他の周辺機器を備えうる。一例では、デジタル化プラットフォーム110は、サーバ114に実装されうる。デジタル化プラットフォーム110は、データ受信、データ処理、データレンダリング、データ通信などの機能を、サーバ114のハードウェアリソースおよびOSを使用して可能にし、デジタル化プラットフォーム110内に配備されたアプリケーションプログラミングインタフェースを使用して配信する。デジタル化プラットフォーム110は、専用ハードウェアと、ハードウェアおよびOSの上に構築されたソフトウェアとの組み合わせを備えうる。例示的な実施形態では、デジタル化プラットフォーム110は、複数のヒューマンマシンインタフェース120A~120Nのユーザがエンジニアリングプログラムを生成することを可能にするプログラムエディタおよびコンパイラを含む統合開発環境(IDE:Integrated Development Environment)に対応することができる。デジタル化プラットフォーム110は、コントローラデバイス124からデジタル化プラットフォーム110へのランタイムシステムのシームレスな移行を可能にするように構成されたデータ取得および分析モジュール112をさらに含みうる。一例では、データ取得および分析モジュール112は、コントローラデバイス124のデジタルツインを含む。データ取得および分析モジュール112の詳細については、図3で説明する。
【0051】
データベース118は、技術設備106および複数のヒューマンマシンインタフェース120A~120Nに関する情報を記憶する。データベース118は、例えば、構造化照会言語(SQL:Structured Query Language)データストアまたはノットオンリーSQL(NoSQL:Not only SQL)データストアである。例示的な実施形態において、データベース118は、産業環境100において実装されるクラウドベースのデータベースとして構成されていてよく、コンピューティングリソースは、プラットフォーム110を介してサービスとして配信される。データベース118は、本発明の別の実施形態によれば、データ取得および分析モジュール112によって直接アクセス可能なファイルシステム上の場所である。データベース118は、エンジニアリングプロジェクトファイル、エンジニアリングプログラム、オブジェクト挙動モデル、複数の産業デバイス108A~108Nに関連付けられたパラメータ値、テスト結果、シミュレーション結果、ステータスメッセージ、複数の産業デバイス108A~108Nの1つ以上のシミュレーションインスタンス、グラフィカルプログラム、プログラムロジック、プログラムロジックパターン、およびエンジニアリングオブジェクトプロパティ、1つ以上のエンジニアリングオブジェクトブロック、複数の産業デバイス108A~108N間の関係情報、要件、プログラム更新メッセージなどを記憶するように構成されている。
【0052】
図2は、本発明の一実施形態が実装されうる、図1に示したようなエンジニアリングシステム102のブロック図である。図2において、エンジニアリングシステム102は、処理ユニット202と、アクセス可能メモリ204と、記憶ユニット206と、通信インタフェース208と、入力-出力ユニット210と、ネットワークインタフェース212と、バス214とを含む。
【0053】
処理ユニット202は、本明細書で使用しているように、マイクロプロセッサユニット、マイクロコントローラ、複合命令セットコンピューティングマイクロプロセッサユニット、縮小命令セットコンピューティングマイクロプロセッサユニット、超長命令語マイクロプロセッサユニット、明示的並列命令コンピューティングマイクロプロセッサユニット、グラフィックス処理ユニット、デジタル信号処理ユニット、または任意の他のタイプの処理回路などであるが、これらに限定されない、任意のタイプの計算回路を意味する。処理ユニット202は、汎用またはプログラマブル論理デバイスまたはアレイ、特定用途向け集積回路、シングルチップコンピュータなどの組み込みコントローラを含むこともできる。
【0054】
メモリ204は、非一時的揮発性メモリおよび不揮発性メモリでありうる。メモリ204は、コンピュータ可読記憶媒体であるなど、処理ユニット202との通信のために結合されうる。処理ユニット202は、メモリ204に記憶された機械可読命令および/またはソースコードを実行することができる。種々の機械可読命令がメモリ204に記憶され、そこからアクセスされうる。メモリ204は、リードオンリーメモリ、ランダムアクセスメモリ、消去可能プログラマブルリードオンリーメモリ、電気的消去可能プログラマブルリードオンリーメモリ、ハードドライブ、コンパクトディスクを扱うためのリムーバブルメディアドライブ、デジタルビデオディスク、ディスケット、磁気テープカートリッジ、メモリカードなどの、データおよび機械可読命令を記憶するための任意の適切な要素を含むことができる。本実施形態において、メモリ204は、統合開発環境(IDE)216を含む。IDE216は、上述した記憶媒体のいずれかに機械可読命令の形態で記憶されたデータ取得および分析モジュール112を含み、プロセッサ202と通信し、それによって実行されてもよい。
【0055】
処理ユニット202による実行の際に、データ取得および分析モジュール112は、処理ユニット202に、ランタイムシステムをコントローラデバイス124からデジタル化プラットフォーム110にシームレスに移行させる。ランタイムシステムは、コントローラデバイス124に記憶されたエンジニアリングプログラムを機械実行可能コードに変換し、最終的にコントローラデバイス124におけるエンジニアリングプログラムの実行を実装する。
【0056】
エンジニアリングプログラムは、複数のプログラミングブロックを含む。一例では、エンジニアリングプログラムは、プログラムロジックを含むグラフィカルプログラムである。エンジニアリングプログラムは、プログラムロジックに対応するプログラム可能な命令またはステートメントのセットを含む。複数のプログラミングブロックの各プログラミングブロックは、技術設備106のエンジニアリングデザインに基づく機能ブロックに対応する。エンジニアリングデザインは、複数のこうしたプログラミングブロックを含みうる。コントローラデバイス124は、複数のスキャンサイクルでエンジニアリングプログラムを実行するように構成されている。
【0057】
処理ユニット202による実行の際に、データ取得および分析モジュール112は、処理ユニット202に、エンジニアリングプログラムの実行の複数のスキャンサイクル中にコントローラデバイス124によって送信または受信された複数の入力-出力パラメータ値を取り込ませる。複数の入力-出力パラメータ値は、複数の入力パラメータ値と複数の出力パラメータ値とを含む。複数の入力パラメータ値の例は、複数のセンサデバイス126A~126Nおよび複数のヒューマンマシンインタフェース120A~120Nからコントローラデバイス124によって受信されたパラメータ値を含む。
【0058】
一例では、複数の入力-出力パラメータ値は、コントローラデバイス124に接続された入力デバイス上でユーザが実行した複数のユーザアクションに関する情報をさらに含む。複数の入力-出力パラメータ値は、複数のユーザアクションの受信に応答して、コントローラデバイス124によって生成された複数の出力パラメータ値をさらに含む。複数の出力パラメータ値は、コントローラデバイス124またはデジタル化プラットフォーム110によって技術設備106内の複数の産業デバイス108A~108Nに送信されたパラメータ値を含む。
【0059】
処理ユニット202による実行の際に、データ取得および分析モジュール112はさらに、処理ユニット202に、取り込まれた複数の入力-出力パラメータ値を分析させる。処理ユニット202は、分析に基づいて、複数の入力-出力パラメータ値における複数のパターンを識別するように構成されている。さらに、処理ユニット202は、取り込まれた複数の入力-出力パラメータ値におけるパラメータ値間の複数の関係を識別するようにさらに構成されている。
【0060】
データ取得および分析モジュール112はさらに、処理ユニット202に、取り込まれた複数の入力-出力パラメータ値の分析に基づいて、入力ナレッジグラフ、出力ナレッジグラフ、および入力-出力対応ナレッジグラフを生成させる。入力ナレッジグラフは、取り込まれた複数の入力-出力パラメータ値における複数の入力パラメータ値間の複数の関係に関する情報を含む。一例では、複数の関係は、複数の入力パラメータ値の各々がコントローラデバイス124によって受信されたシーケンスを含む。処理ユニット202は、入力ナレッジグラフに問い合わせて、コントローラデバイス124におけるエンジニアリングプログラムの実行の将来のスキャンサイクル中にコントローラデバイス124によって受信される可能性が高いパラメータ値を予測するように構成されている。将来のスキャンサイクルは、複数の入力-出力パラメータ値が取り込まれる複数のスキャンサイクルに続いて発生する。例えば、処理ユニット202は、入力パラメータナレッジグラフに問い合わせて、取り込まれた入力出力パラメータ値に基づいて、コントローラデバイス124によって受信される可能性が高い次の入力パラメータ値を決定するように構成されている。
【0061】
出力ナレッジグラフは、コントローラデバイス124によって送信された複数の出力パラメータ値間の複数の関係に関する情報を含む。処理ユニット202は、出力ナレッジグラフに問い合わせて、コントローラデバイス124におけるエンジニアリングプログラムの実行の将来のスキャンサイクルにおいてコントローラデバイス124によって送信される可能性が高い出力パラメータ値を予測するように構成されている。
【0062】
入力出力対応ナレッジグラフは、複数の入力パラメータ値の各々と複数の出力パラメータ値の各々との間の関係に関する情報を含む。処理ユニット202は、入力-出力対応ナレッジグラフに問い合わせて、コントローラデバイス124によって受信された所与の入力パラメータ値に対してコントローラデバイス124によって送信される可能性が高い出力パラメータ値を予測するように構成されている。
【0063】
データ取得および分析モジュール112はさらに、処理ユニット202に、入力ナレッジグラフ、出力ナレッジグラフ、および入力-出力対応ナレッジグラフに基づいて、入力-出力ナレッジグラフを生成させる。一例では、入力-出力ナレッジグラフは、入力ナレッジグラフ、出力ナレッジグラフ、および入力-出力対応ナレッジグラフが3次元ナレッジグラフにおける個々の次元として表される3次元ナレッジグラフである。
【0064】
換言すれば、入力-出力ナレッジグラフは、複数のセンサデバイス126A~126Nからコントローラデバイス124によって受信された複数の入力パラメータ値の間の関係の第1のセットに関する情報を含む。入力-出力ナレッジグラフは、コントローラデバイス124によって複数の産業デバイス108A~108Nに送信された複数の出力パラメータ値の間の関係の第2のセットに関する情報を含む。入力-出力ナレッジグラフは、複数の入力パラメータ値と複数の出力パラメータ値との間の関係の第3のセットに関する情報を含む。
【0065】
データ取得および分析モジュール112はさらに、処理ユニット202に、複数のセンサデバイス126A~126Nと、複数のヒューマンマシンインタフェース120A~120Nと、コントローラデバイス124またはデジタル化プラットフォーム110のうちの1つとの間のネットワーク接続104に関連付けられた複数のネットワーク接続パラメータを受信させる。複数のネットワーク接続パラメータは、複数のセンサデバイス126A~126Nと、コントローラデバイス124またはデジタル化プラットフォーム110のうちの1つとの間のネットワーク接続104に関連付けられた、ネットワーク強度、パケットカウント、パケットドロップデータに関連付けられた情報を含む。
【0066】
データ取得および分析モジュール112はさらに、処理ユニット202に、複数のネットワーク接続パラメータを分析させる。一例では、処理ユニット202は、複数の所定の閾値に基づいて複数のネットワーク接続パラメータを分析するように構成されている。例えば、処理ユニット202は、複数のネットワーク接続パラメータのうちの少なくとも1つが複数の所定の閾値のうちの特定の所定の閾値よりも大きいかどうかを判定するように構成されている。
【0067】
データ取得および分析モジュール112はさらに、処理ユニット202に、分析に基づいて、少なくとも1つの接続性エラーがネットワーク接続104内に存在するかどうかを判定させる。一例では、複数のネットワーク接続性パラメータはネットワーク強度を含む。この場合、処理ユニット202は、ネットワーク強度が所定の閾値を下回るかどうかを判定するように構成されている。ネットワーク強度が所定の閾値を下回ると判定された場合、複数のセンサデバイス126A~126N/複数のヒューマンマシンインタフェース120A~120Nとコントローラデバイス124またはデジタル化プラットフォーム110のうちの1つとの間のネットワーク接続104において少なくとも1つの接続性エラーが存在すると判定される。
【0068】
ネットワーク接続104において少なくとも1つの接続性エラーが存在すると判定された場合、データ取得および分析モジュール112は、処理ユニット202に、生成された入力-出力ナレッジグラフの分析に基づいて第1の入力パラメータ値をシミュレートさせる。シミュレートされた第1の入力パラメータ値は、ネットワーク接続において少なくとも1つの接続性エラーが存在する持続時間中にコントローラデバイス112によって受信される可能性が高いパラメータ値である。
【0069】
一例では、第1の入力パラメータ値は、入力-出力ナレッジグラフに問い合わせることによって処理ユニット202によりシミュレートされる。入力-出力ナレッジグラフは、複数のスキャンサイクルにおいてコントローラデバイス124によって受信された複数の入力パラメータ値の間の複数の関係に関する情報を含むことに留意されたい。したがって、有利には、第1の入力パラメータ値のシミュレーションは、複数のスキャンサイクルにおいてコントローラデバイス124によって受信された複数の入力パラメータ値を考慮に入れる。したがって、シミュレートされた第1の入力パラメータ値は正確であり、エンジニアリングプログラムの実行中に複数のセンサデバイス126A~126N/複数のヒューマンマシンインタフェース120A~120Nから受信される可能性が極めて高い。さらに、有利には、コントローラデバイス124およびデジタル化プラットフォーム110は、ネットワーク接続104における少なくとも1つの接続エラーの存在にもかかわらず、入力パラメータ値を受信し続ける。したがって、有利には、エンジニアリングプログラムの実行は停止されない。
【0070】
少なくとも1つの接続エラーが存在しないと判定された場合、処理ユニット202は、複数のセンサデバイス126A~126Nから第2の入力パラメータ値を受信するように構成されている。第2の入力パラメータは、ネットワーク接続104を介して受信される。第2の入力パラメータ値の例は、複数のセンサデバイス126A~126Nから受信されたセンサデータと、複数のヒューマンマシンインタフェース120A~120Nから受信された複数のユーザ入力とを含む。
【0071】
データ取得および分析モジュール112はさらに、処理ユニット202に、シミュレートされた第1の入力パラメータ値または受信された第2の入力パラメータ値のうちの1つに関する情報が入力-出力ナレッジグラフ内に存在するかどうかを判定させる。換言すれば、処理ユニット202は、入力-出力ナレッジグラフが、コントローラデバイス124によって受信された複数の入力パラメータ値と第1の入力パラメータ値または第2の入力パラメータ値との間の複数の関係に関する情報を含むかどうかを判定するように構成されている。
【0072】
入力-出力ナレッジグラフが第1の入力パラメータ値または第2の入力パラメータ値に関する情報を含む場合、処理ユニット202は、入力-出力ナレッジグラフに問い合わせて少なくとも1つの出力パラメータ値を生成するように構成されている。少なくとも1つの出力パラメータ値は、第1の入力パラメータ値または第2の入力パラメータ値がコントローラデバイス124によって処理された後に、コントローラデバイス124によって生成される可能性が高いパラメータ値である。有利には、少なくとも1つの出力パラメータ値は、エンジニアリングプログラムの実行中にコントローラデバイスによって受信された複数の入力-出力パラメータ値の分析に基づいてシミュレートされる。さらに、少なくとも1つの出力パラメータは、取り込まれた複数の入力-出力パラメータ値におけるパラメータ値間の複数の関係に関連付けられた情報の分析に基づいてシミュレートされる。したがって、有利には、処理ユニット202は、少なくとも1つの出力パラメータ値を正確にシミュレートする。したがって、少なくとも1つの出力パラメータ値の生成は、コントローラデバイス124ではなくデジタル化プラットフォーム110において実行される。その結果、第1のパラメータ値または第2のパラメータ値を処理するために費やされる処理能力は、コントローラデバイス124ではなくデジタル化プラットフォーム110によって占められる。これにより、コントローラデバイス124の処理負荷が軽減される。これにより、コントローラデバイス124の処理能力が向上する。
【0073】
データ取得および分析モジュール112はさらに、処理ユニット202に、第1の入力パラメータ値または第2の入力パラメータ値のうちの1つがクリティカルデータ項目であるかどうかを判定させる。一例では、第1の入力パラメータ値および第2の入力パラメータ値に対する人工知能モデルの適用に基づいて、第1の入力パラメータ値または第2の入力パラメータ値のうちの1つがクリティカルデータ項目であると判定される。第1のパラメータ値または第2のパラメータ値がクリティカルデータ項目であると判定された場合、第1の入力パラメータ値または第2の入力パラメータ値は、コントローラデバイス124において処理される。一例では、人工知能モデルは、クリティカルデータ項目としてラベル付けされた複数のパラメータ値を含む訓練データセットに基づいてクリティカルデータ項目を検出するように訓練される。
【0074】
第1のパラメータ値または第2のパラメータ値に関する情報が入力-出力ナレッジグラフ内に存在しないと判定された場合、データ取得および分析モジュール112はさらに、処理ユニット202に、第1のパラメータ値または第2のパラメータ値をコントローラデバイス124に送信させる。コントローラデバイス124は、エンジニアリングプログラムの実行に基づいて第1のパラメータ値または第2のパラメータ値を処理するように構成されている。さらに、コントローラデバイス124は、エンジニアリングプログラムの実行によって、第1のパラメータ値または第2のパラメータ値から少なくとも1つの出力パラメータ値を生成するように構成されている。
【0075】
データ取得および分析モジュール112はさらに、処理ユニット202に、生成された少なくとも1つの出力パラメータ値をコントローラデバイス124から複数の産業デバイス108A~108Nに送信させる。データ取得および分析モジュール112はさらに、処理ユニット202に、送信された少なくとも1つの出力パラメータ値に基づいて複数の産業デバイス108A~108Nを制御させ、技術設備を効率的に稼働させる。したがって、有利には、コントローラデバイス124は、入力-出力ナレッジグラフ内に存在しないパラメータ値を処理するだけでよい。したがって、コントローラデバイス124の処理負荷は大幅に軽減され、複数の入力パラメータ値の処理の大部分はデジタル化プラットフォーム110で行われる。したがって、有利には、第1のパラメータ値または第2のパラメータ値を処理するために費やされる処理能力は、コントローラデバイス124ではなくデジタル化プラットフォーム110によって占められる。これにより、コントローラ装置124の処理負荷が軽減される。
【0076】
データ取得および分析モジュール112はさらに、処理ユニット202に、生成された少なくとも1つの出力パラメータ値を分析させる。データ取得および分析モジュール112はさらに、処理ユニット202に、少なくとも1つの出力パラメータ値、第1の入力パラメータ値、および第2の入力パラメータ値の分析に基づいて、入力-出力ナレッジグラフを修正させる。入力-出力ナレッジグラフは、第1の入力パラメータ値と、第2のパラメータ値と、少なくとも1つの出力パラメータ値との間の関係が入力-出力ナレッジグラフに記録されるように修正される。
【0077】
したがって、有利には、コントローラデバイス124またはデジタル化プラットフォーム110が、将来、第1の入力パラメータ値または第2のパラメータ値に等しいパラメータ値を受信する場合、少なくとも1つの出力パラメータ値は、入力-出力ナレッジグラフに問い合わせることによって、デジタル化プラットフォーム110によって容易に生成される。これにより、コントローラデバイス124の処理負荷がさらに軽減される。最終的に、入力-出力ナレッジグラフは、コントローラデバイス124によって受信される可能性が高い全ての可能なパラメータ値に関連付けられた情報を蓄積する。こうした場合、デジタル化プラットフォーム110は、コントローラデバイス124によって受信された入力パラメータ値の全ての可能な組み合わせについて複数の出力パラメータ値を生成することが可能になる。したがって、有利には、技術設備106のランタイムシステムは、コントローラデバイス124からデジタル化プラットフォーム110にシームレスに移行される。
【0078】
データ取得および分析モジュール112はさらに、処理ユニット202に、コントローラデバイス124によって実行されるエンジニアリングプログラムの複数のプログラミングブロックを分析させる。データ取得および分析モジュール112はさらに、処理ユニット202に、コントローラデバイス124の複数のプログラム実行パラメータを決定させる。複数のプログラム実行パラメータは、エンジニアリングプログラムの実行中のコントローラデバイス124の内部機能に関する情報を含む。例えば、複数のプログラム実行パラメータは、コントローラデバイス124におけるエンジニアリングプログラムの実行中のコントローラデバイス124のメモリフラグメンテーション、スキャンサイクル特性、システムリソース利用、およびメモリ利用に関する情報などのランタイム情報を含む。データ取得および分析モジュール112はさらに、処理ユニット202に、コントローラデバイス124によるエンジニアリングプログラムの実行効率を決定させる。
【0079】
データ取得および分析モジュール112はさらに、処理ユニット202に、エンジニアリングプログラム内の1つ以上のプログラミングブロックがエンジニアリングプログラムの実行効率を妨げていることを判定させる。データ取得および分析モジュール112はさらに、処理ユニット202に、エンジニアリングプログラムの実行効率が1つ以上のプログラミングブロックに起因して妨げられているという判定に基づいて、変換される1つ以上のプログラミングブロックを選択させる。データ取得および分析モジュール112はさらに、処理ユニット202に、選択された1つ以上のプログラミングブロックに人工知能モデルを適用させる。人工知能モデルは、コントローラデバイス124によるエンジニアリングプログラムの実行効率を最適化するために、決定された1つ以上のプログラミングブロックを変換するように訓練される。
【0080】
データ取得および分析モジュール112はさらに、処理ユニット202に、エンジニアリングプログラムへの人工知能モデルの適用に基づいて複数のプログラミングブロックを変換させる。データ取得および分析モジュール112はさらに、処理ユニット202に、変換された複数のプログラミングブロックをデジタル化プラットフォーム110に移行させる。
【0081】
別の実施形態では、データ取得および分析モジュール112は、処理ユニット202に、コントローラデバイス124によって送信または受信された複数の入力-出力パラメータ値間の複数の関係に関する情報を含む第1の入力-出力ナレッジグラフを受信させる。複数の入力-出力パラメータ値は、複数の入力パラメータ値と複数の出力パラメータ値とを含む。複数の入力パラメータ値の例は、複数のセンサデバイス126A~126Nおよび複数のヒューマンマシンインタフェース120A~120Nからコントローラデバイス124によって受信されたパラメータ値を含む。複数の入力パラメータ値は、センサデータ、プログラミング命令、ユーザコマンド、およびユーザ入力を含む。一例では、複数の入力パラメータ値は、複数のヒューマンマシンインタフェース120A~120N上でユーザによって実行される複数のユーザアクションを含む。複数のユーザアクションの例は、複数のヒューマンマシンインタフェース120A~120Nの入力デバイスにおいてユーザによって入力されたユーザコマンド、ユーザ入力、およびユーザ選択を含む。複数の出力パラメータ値は、コントローラデバイス124およびデジタル化プラットフォーム110によって技術設備106内の複数の産業デバイス108A~108Nに送信されたパラメータ値を含む。複数の出力パラメータ値は、複数のユーザアクションの受信に基づいてコントローラデバイス124によって送信された制御信号を含む。ユーザは、実行されたエンジニアリングプログラムを使用してタスクを実行するために複数のユーザアクションを入力することができる。複数のユーザアクションは、ワークフローとして配置される。ユーザは、タスクを実行するためのユーザアクションのセットを含むワークフローを実行することが可能になる。一例では、第1のワークフローおよび第2のワークフローのうちの1つを使用して、同じタスクを実行することができる。
【0082】
データ取得および分析モジュール112は、処理ユニット202に、エンジニアリングプログラムを使用してタスクを実行するためのユーザアクションの第1のセットを含む第1のワークフローを決定させる。一例では、タスクは、エンジニアリングシステム102を介して実行されるエンジニアリングタスクである。別の例では、タスクは、技術設備106内の複数の産業デバイス108A~108Nを制御するための制御タスクである。第1のワークフローに関連付けられた情報は、第1の入力-出力ナレッジグラフ内に存在する。第1のワークフローに関連付けられた情報は、第1のワークフロー内のユーザアクションの第1のセット間の複数の関係に関する情報を含む。さらに、第1の入力-出力ナレッジグラフは、ユーザアクションの第1のセットがユーザによって実行されるシーケンスに関する情報を含む。
【0083】
データ取得および分析モジュール112はさらに、処理ユニット202に、エンジニアリングプログラムを使用して同じタスクを実行するためのユーザアクションの第2のセットを含む第2のワークフローを受信させる。ユーザアクションの第2のセットは、ユーザアクションの第1のセットとは異なる。第2のワークフローに関連付けられた情報は、データベースに記憶された第2の入力-出力ナレッジグラフ内に存在する。第2の入力-出力ナレッジグラフは、第2のワークフローにおけるユーザアクションのシーケンスに関する情報と、第2のワークフローにおける個々のユーザアクションに関する情報とを含む。
【0084】
データ取得および分析モジュール112は、処理ユニット202に、第1の入力-出力ナレッジグラフと第2の入力-出力ナレッジグラフとを比較させる。一例では、第1の入力-出力ナレッジグラフは、2つのナレッジグラフ間の相関演算に基づいて第2の入力-出力ナレッジグラフと比較される。
【0085】
データ取得および分析モジュール112は、処理ユニット202に、相関動作に基づいて第1のワークフローおよび第2のワークフローの処理効率を決定させる。一例では、第1のワークフローおよび第2のワークフローの処理効率は、コントローラデバイス124のデジタルツイン上で第1のワークフローおよび第2のワークフローを実行し、第1のワークフローおよび第2のワークフローの各々を使用してタスクを実行するのにかかる時間を計算することによって決定される。第1のワークフローおよび第2のワークフローの各々の処理効率は、それぞれのワークフローがタスクを完了する効率の指標である。
【0086】
データ取得および分析モジュール112は、処理ユニット202に、第2のワークフローの処理効率が第1のワークフローの処理効率よりも高いかどうかを判定させる。第2のワークフローの処理効率が第1のワークフローの処理効率よりも高い場合、データ取得および分析モジュール112は、処理ユニット202に、第2のワークフローに対応する第2の入力-出力ナレッジグラフ内の1つ以上のナレッジグラフインスタンスを決定させる。
【0087】
データ取得および分析モジュール112は、処理ユニット202に、第2の入力-出力ナレッジグラフから、決定された1つ以上のナレッジグラフインスタンスを受信させる。データ取得および分析モジュール112は、処理ユニット202に、複数のセンサデバイス126A~126Nとコントローラデバイス124またはデジタル化プラットフォーム110のうちの1つとの間のネットワーク接続104において少なくとも1つの接続性エラーが存在するかどうかを判定させる。少なくとも1つの接続性問題は、ネットワーク接続104に関連付けられた複数のネットワーク接続パラメータの分析に基づいて判定される。
【0088】
データ取得および分析モジュール112は、少なくとも1つの接続性エラーが存在すると判定された場合、処理ユニット202に、修正された入力-出力ナレッジグラフの分析に基づいて第1の入力パラメータ値をシミュレートさせる。第1の入力パラメータ値は、エンジニアリングプログラムの実行中に複数のセンサデバイス126A~126Nから受信される可能性が高いパラメータ値である。一例では、第1の入力パラメータ値は、エンジニアリングプログラムの実行中にコントローラデバイス124によって受信される可能性が高いユーザアクションに関する情報を含む。
【0089】
データ取得および分析モジュール112は、処理ユニット202に、少なくとも1つの接続性エラーがネットワーク接続104内に存在しないと判定された場合、複数のセンサデバイス126A~126Nから第2の入力パラメータ値を受信させる。第2の入力パラメータ値は、制御信号、センサデータ信号、および第1のユーザからのユーザ入力のうちの少なくとも1つである。
【0090】
データ取得および分析モジュール112は、処理ユニット202に、第1の入力パラメータ値または第2の入力パラメータ値のうちの1つが第1の入力出力パラメータ値内に存在するかどうかを判定させる。データ取得および分析モジュール112は、処理ユニット202に、第1の入力パラメータ値および第2の入力パラメータ値のうちの1つと複数の入力-出力パラメータ値のうちのいずれかとの間の関係が第1の入力-出力ナレッジグラフに記録されているかどうかを判定させる。第1の入力パラメータ値および第2の入力パラメータ値のうちの少なくとも1つに関する情報が第1の入力-出力ナレッジグラフ内に存在する場合、データ取得および分析モジュール112は、処理ユニット202に、単に第1の入力-出力ナレッジグラフに問い合わせることによって少なくとも1つの出力パラメータを生成させる。第1の入力パラメータ値または第2の入力パラメータ値のうちの1つに関する情報が第1の入力-出力ナレッジグラフ内に存在しない場合、データ取得および分析モジュール112は、処理ユニット202に、第1の入力パラメータまたは第2の入力パラメータに関する情報がデータベース114に記憶された第2の入力-出力ナレッジグラフ内に存在するかどうかを判定させる。
【0091】
第1の入力パラメータ値または第2の入力パラメータ値に関する情報が第2の入力-出力ナレッジグラフ内に存在すると判定された場合、データ取得および分析モジュール112は、処理ユニット202に、第2の入力-出力ナレッジグラフ内の1つ以上のナレッジグラフインスタンスを選択させる。1つ以上のナレッジグラフインスタンスは、第1の入力パラメータ値または第2の入力パラメータ値に関する情報を含む。1つ以上のナレッジグラフインスタンスは、エンジニアリングプログラムの実行の将来のスキャンサイクルにおいて、コントローラデバイス124によって受信される可能性が高い1つ以上のパラメータ値に関する情報をさらに含む。
【0092】
データ取得および分析モジュール112は、処理ユニット202に、第1の入力-出力ナレッジグラフを分析して、第1の入力-出力ナレッジグラフの複数の部分をアクティブセクションおよび潜在セクションに分類させる。アクティブセクションは、エンジニアリングプログラムの実行の現在のスキャンサイクルにおいて処理されるパラメータ値の第1のセットに関する情報を含む。潜在セクションは、エンジニアリングプログラムの実行の将来のスキャンサイクルにおいて処理されるパラメータ値の第2のセットに関する情報を含む。
【0093】
データ取得および分析モジュール112は、処理ユニット202に、受信された1つ以上のナレッジグラフインスタンスを、第1の入力-出力ナレッジグラフのアクティブセクションまたは潜在セクションのうちの1つにマッピングさせる。データ取得および分析モジュール112は、処理ユニット202に、認知規則のセットに基づいて、受信された1つ以上のナレッジグラフを第1の入力-出力ナレッジグラフへと修正させる。
【0094】
データ取得および分析モジュール112は、処理ユニット202に、シミュレートされた第1の入力パラメータ値から少なくとも1つの出力パラメータ値を生成させる。データ取得および分析モジュール112は、少なくとも1つのデバイスを制御するために、処理ユニット202に、生成された少なくとも1つの出力パラメータ値を技術設備内の少なくとも1つのデバイスに送信させる。
【0095】
通信インタフェース208は、複数のヒューマンマシンインタフェース120A~120Nと、エンジニアリングシステム102と、コントローラデバイス124との間の通信セッションを確立するように構成されている。通信インタフェース208は、複数のヒューマンマシンインタフェース120A~120N上で実行される1つ以上のエンジニアリングアプリケーションがエンジニアリングプログラムをコントローラデバイス124にインポート/エクスポートすることを可能にする。一実施形態では、通信インタフェース208は、エンジニアが、エンジニアリングプロジェクトファイルに関連付けられたエンジニアリングプログラムにアクセスし、エンジニアリングシステム102に記憶されたエンジニアリングプログラムに対して1つ以上のアクションを行うことを可能にするために、複数のヒューマンマシンインタフェース120A~120Nにおけるインタフェースと対話する。
【0096】
入力-出力ユニット210は、エンジニアリングプロジェクトファイルを処理するためのユーザコマンドなどの1つ以上の入力信号を受信することが可能な入力デバイス、キーパッド、タッチセンシティブディスプレイ、カメラ(ジェスチャベースの入力を受信するカメラなど)などを含みうる。また、入力/出力ユニット210は、修正されたエンジニアリングプログラムに関連付けられた挙動モデルを可視化し、グラフィカルユーザインタフェース上で行われるアクションの各セットに関連付けられたステータス情報も表示する、グラフィカルユーザインタフェースを表示するためのディスプレイユニットであってもよい。アクションのセットは、所定のテストの実行、グラフィックプログラムのダウンロード、コンパイルおよび展開を含むことができる。バス214は、プロセッサ202、メモリ204、および入力-出力ユニット210の間の相互接続として機能する。
【0097】
ネットワークインタフェース212は、エンジニアリングシステム102と、複数のヒューマンマシンインタフェース120A~120Nと、技術設備106との間のネットワーク接続性、帯域幅、およびネットワークトラフィックを処理するように構成することができる。
【0098】
当業者であれば、図2に示されたハードウェアが特定の実装形態に対して変化しうることを理解するであろう。例えば、光ディスクドライブなどの他の周辺デバイス、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、無線(例えば、Wi-Fi)アダプタ、グラフィックスアダプタ、ディスクコントローラ、入力/出力(I/O)アダプタも、図示されているハードウェアに加えてまたはこれに代えて使用可能である。図示されている例は説明のみを目的として提供されており、本開示に関するアーキテクチャ上の限定を示唆することを意図するものではない。
【0099】
当業者であれば、簡単かつ明確にするために、本開示とともに使用するのに適した全てのデータ処理システムの完全な構造および動作が本明細書に示されているわけではないまたは説明されているわけではないことを認識するであろう。そうではなく、本開示に特有であるか、または本開示の理解に必要であるエンジニアリングシステム102のみを示し、説明している。エンジニアリングシステム102の構成および動作の残りの部分は、当技術分野で知られている種々の現在の実装形態および実践のいずれかに準拠しうる。
【0100】
図3は、本発明の一実施形態が実装されうる、図2に示すようなデータ分析および取得112のブロック図である。図3において、データ分析および取得112は、要求ハンドラモジュール302と、デジタルツイン生成モジュール304と、分析モジュール306と、修正モジュール308と、エンジニアリングオブジェクトデータベース310と、検証モジュール312と、配備モジュール314とを含む。図3は、図1および図2と併せて説明される。
【0101】
要求ハンドラモジュール302は、コントローラデバイス124から技術設備106内のデジタル化プラットフォーム110へのランタイムシステムの移行を開始せよとの要求を受信するように構成されている。例えば、要求は、ネットワークを介して産業環境100の外部の1人以上のユーザのうちの1人から受信される。代替的な実施形態では、要求は、ネットワークを介して1つまたは複数のヒューマンマシンインタフェース120A~120Nから受信される。要求ハンドラモジュール302は、コントローラデバイス124によって受信または送信された複数の入力-出力パラメータ値を取り込むようにさらに構成されている。
【0102】
デジタルツイン生成モジュール304は、コントローラデバイス124から取り込まれた複数の入力-出力パラメータ値を分析するように構成されている。デジタルツイン生成モジュール304は、入力ナレッジグラフ、出力ナレッジグラフ、および入力出力対応ナレッジグラフを生成するように構成されている。デジタルツイン生成モジュール304は、入力-出力ナレッジグラフを生成するようにさらに構成されている。
【0103】
分析モジュール306は、複数のネットワーク接続パラメータを分析して、ネットワーク接続104における少なくとも接続性エラーの存在を予測するように構成されている。分析モジュール306は、シミュレートされた第1の入力パラメータ値または受信された第2のパラメータ値が入力-出力ナレッジグラフ内に存在するかどうかを検出するようにさらに構成されている。
【0104】
修正モジュール308は、認知規則のセットに基づいて、1つ以上のナレッジグラフインスタンスを入力-出力ナレッジグラフに付加することによって、入力-出力ナレッジグラフを修正するように構成されている。修正モジュール308は、エンジニアリングプログラムの複数のプログラミングブロックに対する人工知能モデルの適用に基づいて、エンジニアリングプログラム内の複数のプログラミングブロックを変換するようにさらに構成されている。
【0105】
エンジニアリングオブジェクトデータベース310は、生成されたオブジェクト挙動モデルと、複数の産業デバイス108A~108Nに関する情報と、複数の産業デバイス108A~108N間の物理的接続と、複数の産業デバイス108A~108Nおよび物理的接続に関連付けられた複数の閾値パラメータ値とを含むエンジニアリングオブジェクトライブラリを生成するように構成されている。エンジニアリングオブジェクトデータベース310は、エンジニアリングプログラムの更新されたバージョンでエンジニアリングオブジェクトライブラリを継続的に更新するように構成されている。
【0106】
検証モジュール312は、コントローラデバイスによって実行されるエンジニアリングプログラムを検証するように構成されている。検証モジュール312は、コントローラデバイス124のデジタルツイン上でエンジニアリングプログラムを実行することによって、シミュレーション環境において技術設備106のコントローラデバイス124によるエンジニアリングプログラムの実行をシミュレートするように構成されている。
【0107】
配備モジュール314は、エンジニアリングプログラムの実行をコントローラデバイス124からデジタル化プラットフォーム110にリアルタイムで移行させるように構成されている。
【0108】
図4A図4Eは、本発明の一実施形態による、ランタイムシステムをコントローラデバイス124からデジタル化プラットフォーム110にシームレスに移行させる例示的な方法400を示すプロセスフローチャートである。図4A図4Eにつき、図1図3と併せて説明する。
【0109】
ステップ402において、エンジニアリングプログラムの実行の複数のスキャンサイクル中にコントローラデバイス124によって送信または受信された複数の入力-出力パラメータ値は、処理ユニット202により取り込まれる。複数の入力パラメータ値の例は、複数のセンサデバイス126A~126Nおよび複数のヒューマンマシンインタフェース120A~120Nからコントローラデバイス124によって受信されたパラメータ値を含む。
【0110】
ステップ404において、取り込まれた複数の入力-出力パラメータ値は、処理ユニット202により分析される。処理ユニット202は、分析に基づいて、複数の入力-出力パラメータ値における複数のパターンを識別するように構成されている。さらに、処理ユニット202は、取り込まれた複数の入力-出力パラメータ値におけるパラメータ値間の複数の関係を識別するようにさらに構成されている。
【0111】
ステップ406において、入力ナレッジグラフ、出力ナレッジグラフ、および入力-出力対応ナレッジグラフは、取り込まれた複数の入力-出力パラメータ値の分析に基づいて処理ユニット202により生成される。入力ナレッジグラフは、取り込まれた複数の入力-出力パラメータ値における複数の入力パラメータ値間の複数の関係に関する情報を含む。一例では、複数の関係は、複数の入力パラメータ値の各々がコントローラデバイス124によって受信されたシーケンスを含む。
【0112】
ステップ408において、入力ナレッジグラフは、処理ユニット202により問い合わせられて、コントローラデバイス124におけるエンジニアリングプログラムの実行の将来のスキャンサイクル中にコントローラデバイス124によって受信される可能性が高いパラメータ値を予測する。将来のスキャンサイクルは、複数の入力-出力パラメータ値が処理ユニット202により取り込まれる複数のスキャンサイクルに続いて発生する。例えば、処理ユニット202は、入力パラメータナレッジグラフに問い合わせて、取り込まれた複数の入力出力パラメータ値に基づき、コントローラデバイス124によって受信される可能性が高い次の入力パラメータ値を決定するように構成されている。
【0113】
出力ナレッジグラフは、コントローラデバイス124によって送信された複数の出力パラメータ値間の複数の関係に関する情報を含む。処理ユニット202は、出力ナレッジグラフに問い合わせて、コントローラデバイス124におけるエンジニアリングプログラムの実行の将来のスキャンサイクルにおいてコントローラデバイス124によって送信される可能性が高い出力パラメータ値を予測するように構成されている。
【0114】
入力出力対応ナレッジグラフは、複数の入力パラメータ値の各々と複数の出力パラメータ値の各々との間の関係に関する情報を含む。処理ユニット202は、入力出力対応ナレッジグラフに問い合わせて、コントローラデバイス124によって受信された所与の入力パラメータ値に対してコントローラデバイス124によって送信される可能性が高い出力パラメータ値を予測するように構成されている。
【0115】
ステップ410において、入力ナレッジグラフ、出力ナレッジグラフ、および入力-出力ナレッジグラフに基づいて、入力-出力ナレッジグラフが処理ユニット202により生成される。一例では、入力-出力ナレッジグラフは、入力ナレッジグラフ、出力ナレッジグラフ、および入力-出力ナレッジグラフが3次元ナレッジグラフにおける個々の次元として表される3次元ナレッジグラフである。換言すれば、入力-出力ナレッジグラフは、複数のセンサデバイス126A~126Nからコントローラデバイス124によって受信された複数の入力パラメータ値の間の関係の第1のセットに関する情報を含む。入力-出力ナレッジグラフは、コントローラデバイス124によって複数の産業デバイス108A~108Nに送信された複数の出力パラメータ値の間の関係の第2のセットに関する情報を含む。入力-出力ナレッジグラフは、複数の入力パラメータ値と複数の出力パラメータ値との間の関係の第3のセットに関する情報を含む。
【0116】
ステップ412において、複数のセンサデバイス126A~126Nとコントローラデバイス124またはデジタル化プラットフォーム110のうちの1つとの間のネットワーク接続104に関連付けられた複数のネットワーク接続パラメータは、処理ユニット202により受信される。複数のネットワーク接続パラメータは、複数のセンサデバイス126A~126Nとコントローラデバイス124またはデジタル化プラットフォーム110のうちの1つとの間のネットワーク接続104に関連する、ネットワーク強度、パケットカウント、パケットドロップデータに関連付けられた情報を含む。
【0117】
ステップ414において、複数のネットワーク接続パラメータは、処理ユニット202により分析される。一例では、処理ユニット202は、複数の所定の閾値に基づいて複数のネットワーク接続パラメータを分析するように構成されている。例えば、処理ユニット202は、複数のネットワーク接続パラメータのうちの少なくとも1つが複数の所定の閾値のうちの特定の所定の閾値よりも大きいかどうかを判定するように構成されている。
【0118】
ステップ416において、処理ユニット202により、分析に基づいて、少なくとも1つの接続性エラーがネットワーク接続104内に存在するかどうかが判定される。例えば、複数のネットワーク接続性パラメータがネットワーク強度を含む場合、処理ユニット202は、ネットワーク強度が所定の閾値を下回るかどうかを判定するように構成されている。ネットワーク強度が所定の閾値を下回ると判定された場合、複数のセンサデバイス126A~126N/複数のヒューマンマシンインタフェース120A~120Nとコントローラデバイス124またはデジタル化プラットフォーム110のうちの1つとの間のネットワーク接続104において少なくとも1つの接続性エラーが存在すると判定される。
【0119】
ステップ418において、少なくとも1つの接続性エラーがネットワーク接続104内に存在すると判定された場合、第1の入力パラメータ値は、生成された入力-出力ナレッジグラフの分析に基づいて処理ユニット202によりシミュレートされる。シミュレートされた第1の入力パラメータ値は、少なくとも1つの接続性エラーがネットワーク接続104内に存在する持続時間中にコントローラデバイス124によって受信される可能性が高いパラメータ値である。
【0120】
一例では、第1の入力パラメータ値は、入力-出力ナレッジグラフに問い合わせることによって処理ユニット202によりシミュレートされる。入力-出力ナレッジグラフは、複数のスキャンサイクルにおいてコントローラデバイス124によって受信された複数の入力パラメータ値の間の複数の関係に関する情報を含むことに留意されたい。したがって、有利には、第1の入力パラメータ値のシミュレーションは、複数のスキャンサイクルにおいてコントローラデバイス124によって受信された複数の入力パラメータ値を考慮に入れる。したがって、シミュレートされた第1の入力パラメータ値は正確であり、エンジニアリングプログラムの実行中に複数のセンサデバイス126A~126N/複数のヒューマンマシンインタフェース120A~120Nから受信される可能性が極めて高い。さらに、有利には、コントローラデバイス124およびデジタル化プラットフォーム110は、ネットワーク接続104における少なくとも1つの接続エラーの存在にもかかわらず、入力パラメータ値を受信し続ける。したがって、有利には、エンジニアリングプログラムの実行は停止されない。
【0121】
ステップ420において、少なくとも1つの接続エラーが存在しないと判定された場合、第2の入力パラメータ値は、複数のセンサデバイス126A~126Nから処理ユニット202により受信される。第2の入力パラメータ値は、ネットワーク接続104を介して受信される。第2の入力パラメータ値の例は、複数のセンサデバイス126A~126Nから受信されたセンサデータと、複数のヒューマンマシンインタフェース120A~120Nから受信された複数のユーザ入力とを含む。
【0122】
ステップ422において、処理ユニット202により、シミュレートされた第1の入力パラメータ値または受信された第2の入力パラメータ値のうちの1つに関する情報が入力-出力ナレッジグラフ内に存在するかどうかが判定される。換言すれば、処理ユニット202は、入力-出力ナレッジグラフが、コントローラデバイス124によって受信された複数の入力パラメータ値と第1の入力パラメータ値または第2の入力パラメータ値との間の複数の関係に関する情報を含むかどうかを判定するように構成されている。
【0123】
ステップ424において、入力-出力ナレッジグラフが第1の入力パラメータ値または第2の入力パラメータ値に関する情報を含むと判定された場合、処理ユニット202は、入力-出力ナレッジグラフに問い合わせて少なくとも1つの出力パラメータ値を生成するように構成されている。少なくとも1つの出力パラメータ値は、第1の入力パラメータ値または第2の入力パラメータ値がコントローラデバイス124によって処理された後に、コントローラデバイス124によって生成される可能性が高いパラメータ値である。有利には、少なくとも1つの出力パラメータ値は、エンジニアリングプログラムの実行中にコントローラデバイス124によって受信された複数の入力-出力パラメータ値の分析に基づいてシミュレートされる。さらに、少なくとも1つの出力パラメータは、取り込まれた複数の入力-出力パラメータ値におけるパラメータ値間の複数の関係に関連付けられた情報の分析に基づいてシミュレートされる。したがって、有利には、処理ユニット202は、少なくとも1つの出力パラメータ値を正確にシミュレートすることが可能になる。したがって、少なくとも1つの出力パラメータ値の生成は、コントローラデバイス124によってではなくデジタル化プラットフォーム110において実行される。したがって、有利には、第1のパラメータ値または第2のパラメータ値を処理するために費やされる処理能力は、コントローラデバイス124ではなくデジタル化プラットフォーム110によって占められる。これにより、コントローラデバイス124の処理負荷が軽減される。その結果、コントローラデバイス124の処理能力が向上する。
【0124】
ステップ426において、処理ユニット202により、第1の入力パラメータ値または第2の入力パラメータ値のうちの1つがクリティカルデータ項目であるかどうかが判定される。一例では、第1の入力パラメータ値および第2の入力パラメータ値に対する人工知能モデルの適用に基づいて、第1の入力パラメータ値または第2の入力パラメータ値のうちの1つがクリティカルデータ項目であると判定される。第1のパラメータ値または第2のパラメータ値がクリティカルデータ項目であると判定された場合、第1の入力パラメータ値または第2の入力パラメータ値は、コントローラデバイス124において処理される。一例では、人工知能モデルは、複数のクリティカルデータ項目を含む訓練データセットに基づいてクリティカルデータ項目を検出するように訓練される。
【0125】
ステップ428において、処理ユニット202により、第1のパラメータ値または第2のパラメータ値に関する情報が入力-出力ナレッジグラフ内に存在しないと判定される。こうした場合、第1のパラメータ値または第2のパラメータ値は、処理ユニット202によりコントローラデバイス124に送信される。コントローラデバイス124は、エンジニアリングプログラムの実行に基づいて第1のパラメータ値または第2のパラメータ値を処理するように構成されている。さらに、コントローラデバイス124は、エンジニアリングプログラムの実行によって、第1のパラメータ値または第2のパラメータ値から少なくとも1つの出力パラメータ値を生成するように構成されている。
【0126】
ステップ430において、生成された少なくとも1つの出力パラメータは、処理ユニット202によりコントローラデバイス124から複数の産業デバイス108A~108Nに送信される。
【0127】
ステップ432において、複数の産業デバイス108A~108Nは、送信された少なくとも1つの出力パラメータに基づいて処理ユニット202により制御される。したがって、技術設備106は効率的に稼働される。したがって、有利には、コントローラデバイス124は、入力-出力ナレッジグラフ内に存在しないパラメータ値を処理するだけでよい。したがって、コントローラデバイス124の処理負荷が大幅に軽減され、パラメータ値処理の大部分がデジタル化プラットフォーム110で行われる。したがって、有利には、第1のパラメータ値または第2のパラメータ値を処理するために費やされる処理能力は、コントローラデバイス124ではなくデジタル化プラットフォーム110によって占められる。これにより、コントローラデバイス124の処理負荷が軽減される。
【0128】
ステップ434において、生成された少なくとも1つの出力パラメータ値は、処理ユニット202により分析される。ステップ436において、入力-出力ナレッジグラフは、少なくとも1つの出力パラメータ値、第1の入力パラメータ値、および第2の入力パラメータ値の分析に基づいて、処理ユニット202により修正される。入力-出力ナレッジグラフは、第1の入力パラメータ値と、第2のパラメータ値と、少なくとも1つの出力パラメータ値との間の関係が入力-出力ナレッジグラフに記録されるように修正される。
【0129】
したがって、有利には、コントローラデバイス124またはデジタル化プラットフォーム110が、将来、第1の入力パラメータ値または第2のパラメータ値に等しいパラメータ値を受信する場合、出力パラメータ値は、入力-出力ナレッジグラフに問い合わせることによって容易に生成される。これにより、コントローラデバイス124の処理負荷がさらに軽減される。最終的に、入力-出力ナレッジグラフは、コントローラデバイス124によって受信される可能性が高い全ての可能なパラメータ値に関連付けられた情報を蓄積する。この場合、デジタル化プラットフォーム110は、コントローラデバイス124によって受信された入力パラメータ値の全ての可能な組み合わせについて複数の出力パラメータ値を生成することが可能になる。したがって、有利には、技術設備106のランタイムは、コントローラデバイス124からデジタル化プラットフォーム110にシームレスに移行される。
【0130】
ステップ436において、コントローラデバイス124によって実行されるエンジニアリングプログラムの複数のプログラミングブロックは、処理ユニット202により分析される。データ取得および分析モジュール112はさらに、処理ユニット202に、コントローラデバイス124の複数のプログラム実行パラメータを決定させる。複数のプログラム実行パラメータは、エンジニアリングプログラムの実行中のコントローラデバイス124の内部機能に関する情報を含む。例えば、複数のプログラム実行パラメータは、コントローラデバイスにおけるエンジニアリングプログラムの実行中のコントローラデバイスのメモリフラグメンテーション、スキャンサイクル特性、システムリソース利用、およびメモリ利用に関する情報などのランタイム情報を含む。さらに、処理ユニット202により、コントローラデバイス124によるエンジニアリングプログラムの実行効率は、複数のプログラム実行パラメータに基づいて決定される。
【0131】
ステップ438において、エンジニアリングプログラムの1つ以上のプログラミングブロックがエンジニアリングプログラムの実行効率を妨げていると処理ユニット202により判定さる。ステップ440において、変換される1つ以上のプログラミングブロックは、コントローラデバイスによるエンジニアリングプログラムの決定された実行効率に基づいて、処理ユニット202に基づいて選択される。ステップ442において、選択された1つ以上のプログラミングブロックに対して処理ユニット202により人工知能モデルが適用される。人工知能モデルは、コントローラデバイス124によるエンジニアリングプログラムの実行効率を最適化するために、決定された1つ以上のプログラミングブロックを変換するように訓練される。
【0132】
ステップ444において、複数のプログラミングブロックは、エンジニアリングプログラムへの人工知能モデルの適用に基づいて処理ユニット202により変換される。データ取得および分析モジュール112はさらに、処理ユニット202に、変換された複数のプログラミングブロックをデジタル化プラットフォーム110に移行させる。
【0133】
図5A図5Cは、本発明の一実施形態による、ランタイムシステムをコントローラデバイス124からデジタル化プラットフォーム110にシームレスに移行させる例示的な方法500を示すプロセスフローチャートである。
【0134】
ステップ502において、コントローラデバイス124によって送信または受信された複数の入力-出力パラメータ値間の複数の関係に関する情報を含む第1の入力-出力ナレッジグラフは、処理ユニット202により取り込まれる。複数の入力-出力パラメータ値は、複数の入力パラメータ値と複数の出力パラメータ値とを含む。複数の入力パラメータ値の例は、複数のヒューマンマシンインタフェース120A~120Nからコントローラデバイス124によって受信されたパラメータ値を含む。複数の入力パラメータ値は、センサデータ、ユーザコマンド、およびユーザ入力を含む。
【0135】
一例では、複数の入力パラメータ値は、複数のヒューマンマシンインタフェース120A~120N上でユーザによって実行される複数のユーザアクションを含む。複数のユーザアクションの例は、複数のヒューマンマシンインタフェース120A~120Nの入力デバイスにおいてユーザによって入力されたユーザコマンド、ユーザ入力、およびユーザ選択を含む。複数の出力パラメータ値は、コントローラデバイス124およびデジタル化プラットフォーム110によって技術設備106内の複数の産業デバイス108A~108Nに送信されたパラメータ値を含む。
【0136】
複数の出力パラメータ値は、複数のユーザアクションの受信に基づいてコントローラデバイス124によって送信された制御信号を含む。ユーザは、実行されたエンジニアリングプログラムを使用してタスクを実行するために複数のユーザアクションを入力することができる。複数のユーザアクションがワークフローとして配置される。ユーザが、タスクを実行するためのユーザアクションのセットを含むワークフローを実行することが可能となる。一例では、タスクは、第1のワークフローおよび第2のワークフローのうちの1つを使用して実行されうる。
【0137】
ステップ504において、処理ユニット202により、エンジニアリングプログラムを使用してタスクを実行するためのユーザアクションの第1のセットを含む第1のワークフローが決定される。一例では、タスクは、エンジニアリングシステム100を介して実行されるエンジニアリングタスクである。別の例では、タスクは、技術設備106内の複数の産業デバイス108A~108Nを制御するための制御タスクである。第1のワークフローに関連付けられた情報は、第1の入力-出力ナレッジグラフ内に存在する。第1のワークフローに関連付けられた情報は、第1のワークフロー内のユーザアクションの第1のセット間の複数の関係に関する情報を含む。例えば、複数の関係に関する情報は、ユーザアクションの第1のセットの各々が実行されるシーケンスに関する情報を含む。
【0138】
ステップ506において、処理ユニット202により、エンジニアリングプログラムを使用して同じタスクを実行するためのユーザアクションの第2のセットを含む第2のワークフローが受信される。ユーザアクションの第2のセットは、ユーザアクションの第1のセットとは異なる。第2のワークフローに関連付けられた情報は、データベースに記憶された第2の入力-出力ナレッジグラフ内に存在する。第2の入力-出力ナレッジグラフは、第2のワークフローにおけるユーザアクションのシーケンスに関する情報と、第2のワークフローにおける個々のユーザアクションに関する情報とを含む。
【0139】
ステップ508において、第1の入力-出力ナレッジグラフは、処理ユニット202により第2の入力-出力ナレッジグラフと比較される。一例では、第1の入力-出力ナレッジグラフは、2つのナレッジグラフ間の相関演算に基づいて第2の入力-出力ナレッジグラフと比較される。
【0140】
ステップ510において、処理ユニット202により、比較に基づいて第1のワークフローおよび第2のワークフローの処理効率が決定される。一例では、第1のワークフローおよび第2のワークフローの処理効率は、コントローラデバイス124のデジタルツイン上で第1のワークフローおよび第2のワークフローを実行することによって決定される。第1のワークフローおよび第2のワークフローの各々の処理効率は、それぞれのワークフローがタスクを完了する効率の指標である。
【0141】
ステップ512において、第2のワークフローの処理効率が第1のワークフローの処理効率よりも高いかどうかが判定される。第2のワークフローの処理効率が第1のワークフローの処理効率よりも高い場合、処理ユニット202は、第2のワークフローに対応する第2の入力-出力ナレッジグラフ内の1つ以上のナレッジグラフインスタンスを決定するように構成されている。
【0142】
ステップ514において、決定された1つ以上のナレッジグラフインスタンスは、第2の入力-出力ナレッジグラフから処理ユニット202により受信される。ステップ516において、処理ユニット202により、複数のセンサデバイス126A~126Nとコントローラデバイス124またはデジタル化プラットフォーム110のうちの1つとの間のネットワーク接続104において少なくとも1つの接続性エラーが存在するかどうかが判定される。少なくとも1つの接続性問題は、ネットワーク接続104に関連付けられた複数のネットワーク接続パラメータの分析に基づいて判定される。
【0143】
ステップ518において、接続性エラーが存在すると判定された場合、第1の入力パラメータ値は、修正された入力-出力ナレッジグラフの分析に基づいて処理ユニット202により生成される。第1の入力パラメータ値は、エンジニアリングプログラムの実行中に複数のセンサデバイス126A~126Nから受信される可能性が高いパラメータ値である。一例では、第1の入力パラメータ値は、エンジニアリングプログラムの実行中にコントローラデバイス124によって受信される可能性が高いユーザアクションに関する情報を含む。
【0144】
ステップ520において、接続性エラーがネットワーク接続104内に存在しないと判定された場合、第2の入力パラメータ値は、複数のセンサデバイス126A~126Nから処理ユニット202により受信される。第2の入力パラメータ値は、制御信号、センサデータ信号、および第1のユーザからのユーザ入力のうちの少なくとも1つである。
【0145】
ステップ522において、処理ユニット202により、第1の入力パラメータ値または第2の入力パラメータ値のうちの1つが第1の入力出力パラメータ値内に存在するかどうかが判定される。ステップ524において、処理ユニット202により、第1の入力パラメータ値および第2の入力パラメータ値のうちの1つと複数の入力-出力パラメータ値のうちのいずれかとの間の関係が第1の入力-出力ナレッジグラフに記録されているかどうかが判定される。第1の入力パラメータ値および第2の入力パラメータ値のうちの少なくとも1つに関する情報が第1の入力-出力ナレッジグラフ内に存在する場合、処理ユニット202は、単に第1の入力-出力ナレッジグラフに問い合わせることによって少なくとも1つの出力パラメータを生成するように構成されている。第1の入力パラメータ値または第2の入力パラメータ値のうちの1つに関する情報が第1の入力-出力ナレッジグラフ内に存在しない場合、処理ユニット202は、第1の入力パラメータ値または第2の入力パラメータ値に関する情報がデータベースに記憶された第2の入力-出力ナレッジグラフ内に存在するかどうかを判定するように構成されている。
【0146】
ステップ526において、第1の入力パラメータ値または第2の入力パラメータ値に関する情報が第2の入力-出力ナレッジグラフ内に存在すると判定された場合、第2の入力-出力ナレッジグラフ内の1つ以上のナレッジグラフインスタンスが処理ユニット202により選択される。選択された1つ以上のナレッジグラフインスタンスは、第1の入力パラメータ値または第2の入力パラメータ値に関する情報を含む。1つ以上のナレッジグラフインスタンスは、エンジニアリングプログラムの実行の将来のスキャンサイクルにおいて、コントローラデバイス124によって受信される可能性が高い1つ以上のパラメータ値に関する情報をさらに含む。
【0147】
ステップ528において、第1の入力-出力ナレッジグラフは、第1の入力-出力ナレッジグラフの複数の部分をアクティブセクションおよび潜在セクションに分類するために、処理ユニット202により分析される。アクティブセクションは、エンジニアリングプログラムの実行の現在のスキャンサイクルにおいて処理されるパラメータ値の第1のセットに関する情報を含む。潜在セクションは、エンジニアリングプログラムの実行の将来のスキャンサイクルにおいて処理されるパラメータ値の第2のセットに関する情報を含む。
【0148】
ステップ530において、受信された1つ以上のナレッジグラフインスタンスは、処理ユニット202により、第1の入力-出力ナレッジグラフのアクティブセクションまたは潜在セクションのうちの1つにマッピングされる。さらに、受信された1つ以上のナレッジグラフインスタンスは、認知規則のセットに基づいて処理ユニット202により第1の入力-出力ナレッジグラフに付加される。
【0149】
ステップ532において、少なくとも1つの出力パラメータ値は、シミュレートされた第1の入力パラメータ値から処理ユニット202により生成される。データ取得および分析モジュール112は、少なくとも1つのデバイスを制御するために、処理ユニット202に、生成された少なくとも1つの出力パラメータ値を技術設備106内の少なくとも1つのデバイスに送信させる。
【0150】
図6は、本発明の一実施形態による、コントローラデバイス124から技術設備106内のデジタル化プラットフォーム110にランタイムシステムを移行させるためのシステムの動作の例示的な図を示している。
【0151】
技術設備106は、ネットワーク接続104を介してコントローラデバイス124およびデジタル化プラットフォーム110に接続された、複数の産業デバイス108A~108Nおよび複数のセンサデバイス126A~126Nを備える。コントローラデバイス124は、エンジニアリングプログラムを実行する。エンジニアリングプログラムは、コントローラデバイス124によって実行される際に、コントローラデバイス124に、複数の産業デバイス108A~108Nを制御して技術設備106を効率的に稼働させるための複数のプログラミング命令を含む。エンジニアリングプログラムがコントローラデバイス124によって実行されている、コントローラデバイス124の動作のフェーズは、ランタイムシステムと称される。
【0152】
一例では、コントローラデバイス124は、複数のセンサデバイス126A~126Nから複数のセンサ信号を受信するように構成されている。複数のセンサ信号の例は、圧力信号、温度信号、および光信号を含むが、これらに限定されない。コントローラデバイス124におけるエンジニアリングプログラムのランタイム中、コントローラデバイス124は、受信した複数のセンサ信号を入力としてエンジニアリングプログラムに供給するように構成されている。コントローラデバイス124は、複数の産業デバイス108A~108Nを制御するための複数の出力信号を生成するようにさらに構成されている。複数の出力信号は、処理された複数のセンサ信号に基づいて生成される。
【0153】
処理ユニット202は、コントローラデバイス124によって複数のセンサデバイス126A~126Nから受信された複数のセンサ信号を取り込むように構成されている。処理ユニット202は、コントローラデバイス124によって複数の産業デバイス108A~108Nに送信された複数の出力信号を取り込むようにさらに構成されている。
【0154】
処理ユニット202は、複数のセンサ信号および複数の出力信号を分析して、複数のセンサ信号内の各信号と複数の出力信号との間の複数の関係を決定するようにさらに構成されている。例えば、処理ユニット202は、複数のセンサ信号内の信号間の関係の第1のセットと、複数の出力信号内の信号間の関係の第2のセットとを決定するように構成されている。処理ユニット202は、複数のセンサ信号と複数の出力信号との間の関係の第3のセットを決定するようにさらに構成されている。
【0155】
処理ユニット202は、複数のセンサ信号内の信号間の関係の第1のセットから入力ナレッジグラフを生成するようにさらに構成されている。処理ユニット202は、複数の出力信号内の信号間の関係の第2のセットから出力ナレッジグラフを生成するようにさらに構成されている。処理ユニット202は、複数のセンサ信号と複数の出力信号との間の関係の第3のセットに基づいて、入力出力対応ナレッジグラフを生成するようにさらに構成されている。
【0156】
入力ナレッジグラフに問い合わせることによって、処理ユニット202は、所与の時間間隔においてコントローラデバイス124によって受信される可能性が高いセンサ信号を予測するように構成されている。出力ナレッジグラフに問い合わせることによって、処理ユニット202は、所与の時間間隔においてコントローラデバイス124によって送信される可能性が高い出力信号を予測することが可能になる。入力出力対応ナレッジグラフに問い合わせることによって、処理ユニット202は、コントローラデバイス124が特定のセンサ信号を受信したときにコントローラデバイス124によって送信される可能性が高い出力信号を予測することが可能になる。処理ユニット202は、入力ナレッジグラフ、出力ナレッジグラフ、および入力出力対応ナレッジグラフを組み合わせて、入力-出力ナレッジグラフを生成するように構成されている。
【0157】
処理ユニット202は、少なくとも1つの接続性エラーがネットワーク接続104内に存在するかどうかを判定するように構成されている。少なくとも1つの接続性エラーが存在する場合、コントローラデバイス124における複数のセンサ信号のリアルタイム受信が中断されうる。こうしたシナリオでは、処理ユニット202は、入力ナレッジグラフに問い合わせて、少なくとも1つの接続性エラーがネットワーク接続104内に存在する時間間隔中にコントローラデバイス124によって受信される可能性が高い第1のセンサ信号を決定するように構成されている。したがって、有利には、コントローラデバイス124が複数のセンサデバイス126A~126Nから複数のセンサ信号を受信することができない場合、処理ユニット202は、複数のセンサデバイス126A~126Nから受信される可能性が高い第1のセンサ信号を生成する。
【0158】
少なくとも1つの接続性エラーがネットワーク接続104内に存在しないと判定された場合、コントローラデバイス124または処理ユニット202のうちの少なくとも1つは、複数のセンサデバイス126A~126Nから第2のセンサ信号を受信するように構成されている。
【0159】
処理ユニット202は、第1のセンサ信号または第2のセンサ信号のうちの少なくとも1つに関する情報が入力-出力ナレッジグラフ内に存在するかどうかを判定するようにさらに構成されている。換言すれば、処理ユニット202は、入力-出力ナレッジグラフに問い合わせることによって、処理ユニット202が第1のセンサ信号または第2のセンサ信号のうちの少なくとも1つに対応する出力信号を生成することが可能になるかどうかを判定する。
【0160】
第1のセンサ信号または第2のセンサ信号のうちの少なくとも1つに関する情報が入力-出力ナレッジグラフ内に存在しない場合、処理ユニット202は、第1のセンサ信号または第2のセンサ信号のうちの少なくとも1つに関する情報が外部入力-出力ナレッジグラフ内に存在するかどうかを判定する。一例では、外部入力-出力ナレッジグラフは、技術設備106の外部にあるデータベース114に記憶されてもよい。
【0161】
第1のセンサ信号または第2のセンサ信号のうちの少なくとも1つに関する情報が外部入力-出力ナレッジグラフ内に存在する場合、処理ユニット202は、外部入力-出力ナレッジグラフ内の1つ以上のナレッジグラフインスタンスを決定するように構成されている。決定された1つ以上のナレッジグラフインスタンスは、第1のセンサ信号または第2のセンサ信号のうちの少なくとも1つに関する情報を含む。
【0162】
処理ユニット202は、認知規則のセットに基づいて、1つ以上のナレッジグラフインスタンスを入力-出力ナレッジグラフに付加することによって、入力-出力ナレッジグラフを修正するようにさらに構成されている。図7図14を参照して、入力-出力ナレッジグラフの修正について詳細に説明する。
【0163】
入力-出力ナレッジグラフを修正するために、処理ユニット202は、入力-出力ナレッジグラフを分析して、入力-出力ナレッジグラフのアクティブセクションおよび潜在セクションを決定するように構成されている。図7を参照すると、図7は、入力-出力ナレッジグラフ700を示している。入力-出力ナレッジグラフは、複数のノード702を含む。図7は、入力-出力ナレッジグラフの複数の部分のうちの部分702Aをさらに示している。部分702Aは、コントローラデバイス124によって受信された複数のセンサ信号のうちの第1のセットのセンサ信号に関する情報を含む。処理ユニット202は、部分702Aの複数のノードをアクティブセクション704と潜在セクション706とに分類するように構成されている。アクティブセクションは、エンジニアリングプログラムの実行中にコントローラデバイス124によって受信される可能性が高い1つ以上のセンサ信号に関する情報を含む。潜在セクションは、コントローラデバイス124によるエンジニアリングプログラムの実行中に受信される可能性が低い1つ以上のセンサ信号に関する情報を含む。アクティブセクション704は、ノードの第1のセット710を含む。潜在セクション706は、ノードの第2のセット708を含む。
【0164】
別の例では、アクティブセクション704は、エンジニアリングプログラムを円滑に実行し、技術設備106を効率的に稼働させるためにコントローラデバイス124によって現在必要とされるセンサ信号に関連付けられた情報を含む。潜在セクション706は、エンジニアリングプログラムを円滑に実行し、技術設備106を効率的に稼働させるために、後の時点でコントローラデバイス124によって必要とされるセンサ信号に関連付けられた情報を含む。
【0165】
図8を参照すると、図8は、入力-出力ナレッジグラフ700に追加された外部入力-出力ナレッジグラフからのナレッジグラフインスタンス802を示している。図9を参照すると、図9は、認知規則のセットに基づいて入力-出力ナレッジグラフ700に付加されているナレッジグラフインスタンス802を示している。認知規則のセットの例は、「即時学習」規則、「常時学習」規則、および「学習を忘れる」規則を含むが、これらに限定されない。
【0166】
図9を参照すると、図9は、認知規則のセットの「即時学習規則」に基づいて入力-出力ナレッジグラフ700に付加されているナレッジグラフインスタンス802を示している。
【0167】
「即時学習規則」に従って、1つ以上のナレッジグラフインスタンス802が、入力-出力ナレッジグラフのアクティブセクション704に付加される。したがって、第1のセンサ信号および第2のセンサ信号のうちの少なくとも1つに関する情報が付加され、入力-出力ナレッジグラフ700に含まれる。
【0168】
図6に戻って参照すると、入力-出力ナレッジグラフは、外部入力-出力ナレッジグラフから導出される情報を含むように修正される。したがって、有利には、デジタル化プラットフォーム110は、コントローラデバイス124によって受信された複数のセンサ信号から学習するだけでなく、外部データベースに記憶されたナレッジグラフからも学習する。
【0169】
処理ユニット202は、修正された入力-出力ナレッジグラフに問い合わせて、第1のセンサ信号または第2のセンサ信号のうちの少なくとも1つに基づいて出力信号を生成するようにさらに構成されている。処理ユニット202は、複数の産業デバイス108A~108Nを制御するために、生成された出力信号を複数の産業デバイス108A~108Nに送信するようにさらに構成されている。したがって、有利には、デジタル化プラットフォーム110は、入力-出力ナレッジグラフ700および外部入力-出力ナレッジグラフにおいてカバーされる全てのセンサ信号について出力信号を生成するように構成されている。
【0170】
第1のセンサ信号または第2のセンサ信号のうちの少なくとも1つに関する情報が外部入力-出力ナレッジグラフ内に存在する場合、処理ユニット202は、少なくとも第1のセンサ信号または第2のセンサ信号を処理のためにコントローラデバイス124に送信するように構成されている。コントローラデバイス124は、出力信号を生成するように構成されている。処理ユニット202は、複数の産業デバイス108A~108Nを制御するために、生成された出力信号を複数の産業デバイス108A~108Nに送信するようにさらに構成されている。さらに、コントローラデバイス124によって生成された出力信号は、処理ユニット202により分析される。さらに、入力-出力ナレッジグラフは、分析に基づいて修正される。
【0171】
したがって、有利には、入力-出力ナレッジグラフは、第1のセンサ信号または第2のセンサ信号、および出力信号に関する情報を含むように修正される。したがって、有利には、第1のセンサ信号または第2のセンサ信号に関する情報が入力-出力ナレッジグラフまたは外部入力-出力ナレッジグラフ内に存在しない場合、処理ユニット202は、第1のセンサ信号または第2のセンサ信号に関する情報を含むように入力-出力ナレッジグラフを修正するように構成されている。
【0172】
したがって、最終的に、入力-出力ナレッジグラフは、コントローラデバイス124によって受信される可能性が高い複数のセンサ信号の全ての可能な組み合わせに関する情報を蓄積する。その結果、エンジニアリングプログラムのランタイムは、コントローラデバイス124からデジタル化プラットフォーム110に完全に移行される。
【0173】
図10は、本発明の一実施形態による、コントローラデバイス124から技術設備106内のデジタル化プラットフォーム110にランタイムシステムを移行させるためのシステムの動作の例示的な図を示している。
【0174】
技術設備106は、ネットワーク接続104を介してコントローラデバイス124およびデジタル化プラットフォーム110に接続された複数の産業デバイス108A~108Nおよび複数のヒューマンマシンインタフェース(HMI)120A~120Nを備える。コントローラデバイス124は、エンジニアリングプログラムを実行する。エンジニアリングプログラムは、コントローラデバイス124によって実行される際に、コントローラデバイスに、複数の産業デバイス108A~108Nを制御して技術設備106を効率的に稼働させるための複数のプログラミング命令を含む。コントローラデバイス124は、複数のHMI120A~120Nを介してユーザから複数のユーザ入力を受信するように構成されている。複数のユーザ入力は、ユーザコマンド、ユーザジェスチャ、および他の形態のユーザ入力を含む。
【0175】
一例では、複数のユーザ入力は、プログラミング命令のセットを含む。こうしたシナリオでは、エンジニアリングプログラム内の複数のプログラミング命令は、ユーザから受信されたプログラミング命令のセットで置き換えられる。
【0176】
別の例では、複数のユーザ入力は、複数の産業デバイス108A~108Nを制御するために、複数のHMI120A~120Nに対してユーザによって実行されるユーザアクションの第1のセットを含む。
【0177】
コントローラデバイス124は、複数の産業デバイス108A~108Nを制御するための複数の出力信号を生成するようにさらに構成されている。複数の出力信号は、処理された複数のユーザ入力に基づいて生成される。
【0178】
処理ユニット202は、複数のHMI120A~120Nからコントローラデバイス124によって受信された複数のユーザ入力を取り込むように構成されている。処理ユニット202は、コントローラデバイス124における複数のユーザ入力の受信に基づいて、コントローラデバイス124によって複数の産業デバイス108A~108Nに送信された複数の出力信号を取り込むようにさらに構成されている。
【0179】
処理ユニット202は、複数のユーザ入力および複数の出力信号を分析して、複数のユーザ入力の各々と複数の出力信号との間の複数の関係を決定するようにさらに構成されている。例えば、処理ユニット202は、複数のユーザ入力間の関係の第1のセットと、複数の出力信号間の関係の第2のセットとを決定するように構成されている。処理ユニット202は、複数のユーザ入力と複数の出力信号との間の関係の第3のセットを決定するようにさらに構成されている。
【0180】
処理ユニット202は、複数のユーザ入力間の関係の第1のセットから入力ナレッジグラフを生成するようにさらに構成されている。処理ユニット202は、複数の出力信号内の信号間の関係の第2のセットから出力ナレッジグラフを生成するようにさらに構成されている。処理ユニット202は、複数のユーザ入力と複数の出力信号との間の関係の第3のセットに基づいて、入力出力対応ナレッジグラフを生成するようにさらに構成されている。
【0181】
入力ナレッジグラフに問い合わせることによって、処理ユニット202は、所与の時間間隔においてコントローラデバイス124によって受信される可能性が高いユーザ入力を予測することが可能になる。出力ナレッジグラフに問い合わせることによって、処理ユニット202は、所与の時間間隔においてコントローラデバイス124によって送信される可能性が高い出力信号を予測することが可能になる。入力出力対応ナレッジグラフに問い合わせることによって、処理ユニット202は、コントローラデバイス124が特定のユーザ入力を受信したときにコントローラデバイス124によって送信される可能性が高い出力信号を予測することが可能になる。処理ユニット202は、入力ナレッジグラフ、出力ナレッジグラフ、および入力出力対応ナレッジグラフを組み合わせて、入力-出力ナレッジグラフを生成するように構成されている。
【0182】
処理ユニット202は、少なくとも1つの接続性エラーがネットワーク接続104内に存在するかどうかを判定するように構成されている。少なくとも1つの接続性エラーが存在する場合、コントローラデバイス124における複数のユーザ入力のリアルタイム受信が中断されうる。こうしたシナリオでは、処理ユニット202は、入力ナレッジグラフに問い合わせて、少なくとも1つの接続性エラーがネットワーク接続104内に存在する時間間隔中にコントローラデバイス124によって受信される可能性が高い第1のユーザ入力を決定するように構成されている。したがって、有利には、コントローラデバイス124が複数のヒューマンマシンインタフェース120A~120Nから複数のユーザ入力を受信することができない場合、処理ユニット202は、複数のHMI120A~120Nから受信される可能性が高い第1のユーザ入力を生成する。
【0183】
少なくとも1つの接続性エラーがネットワーク接続104内に存在しないと判定された場合、コントローラデバイス124または処理ユニット202のうちの少なくとも1つは、複数のHMI120A~120Nから第2のユーザ入力を受信するように構成されている。
【0184】
処理ユニット202は、第1のユーザ入力または第2のユーザ入力のうちの少なくとも1つに関する情報が入力-出力ナレッジグラフ内に存在するかどうかを判定するようにさらに構成されている。換言すれば、処理ユニット202は、入力-出力ナレッジグラフに問い合わせることによって、処理ユニット202が第1のユーザ入力または第2のユーザ入力のうちの少なくとも1つに対応する出力信号を生成することが可能になるかどうかを判定する。
【0185】
第1のユーザ入力または第2のユーザ入力のうちの少なくとも1つに関する情報が入力-出力ナレッジグラフ内に存在しない場合、処理ユニット202は、第1のユーザ入力または第2のユーザ入力のうちの少なくとも1つに関する情報が外部入力-出力ナレッジグラフ内に存在するかどうかを判定する。一例では、外部入力-出力ナレッジグラフは、技術設備106の外部にあるデータベースに記憶されてもよい。
【0186】
第1のユーザ入力または第2のユーザ入力のうちの少なくとも1つに関する情報が外部入力-出力ナレッジグラフ内に存在する場合、処理ユニット202は、外部入力-出力ナレッジグラフ内の1つ以上のナレッジグラフインスタンスを決定するように構成されている。決定された1つ以上のナレッジグラフインスタンスは、第1のユーザ入力または第2のユーザ入力のうちの少なくとも1つに関する情報を含む。
【0187】
処理ユニット202は、認知規則のセットに基づいて、1つ以上のナレッジグラフインスタンスを入力-出力ナレッジグラフに付加することによって、入力-出力ナレッジグラフを修正するようにさらに構成されている。したがって、有利には、修正された入力-出力ナレッジグラフは、第1のユーザ入力および第2のユーザ入力と取り込まれた複数のユーザ入力および取り込まれた複数の出力信号との複数の関係に関する情報を含む。図11図14を参照して、入力-出力ナレッジグラフの修正について詳細に説明する。
【0188】
入力-出力ナレッジグラフを修正するために、処理ユニット202は、入力-出力ナレッジグラフ700を分析して、入力-出力ナレッジグラフ700のアクティブセクション704および潜在セクション706を決定するように構成されている。
【0189】
複数のユーザ入力がユーザによって入力されたプログラミング命令である場合、アクティブセクションは、エンジニアリングプログラムを使用して1つ以上のタスクを実行するためにコントローラデバイス124によって必要とされる情報を含む。潜在セクションは、コントローラデバイス124の実行中の後の時点でコントローラデバイス124によって必要とされる情報を含む。
【0190】
図11を参照すると、図11は、入力-出力ナレッジグラフ700に追加された外部入力-出力ナレッジグラフからのナレッジグラフインスタンス802を示している。図12を参照すると、図12は、認知規則のセットに基づいて入力-出力ナレッジグラフ700に付加されているナレッジグラフインスタンス802を示している。
【0191】
図12を参照すると、図12は、認知規則のセットの「学習を忘れる」規則に基づいて入力-出力ナレッジグラフ700に付加されているナレッジグラフインスタンス802を示している。
【0192】
「学習を忘れる」規則に従って、ノードのセット(C1、C2、およびC3)は、最初に、入力-出力ナレッジグラフ700から除去される。さらに、1つ以上のナレッジインスタンス802が、ノードのセット(C1、C2、およびC3)に代えて付加される。したがって、第1のユーザ入力および第2のユーザ入力のうちの少なくとも1つに関する情報が付加され、入力-出力ナレッジグラフ700に含まれる。
【0193】
図13を参照すると、図13は、修正された入力-出力ナレッジグラフ700に追加された外部入力-出力ナレッジグラフからの追加のナレッジグラフインスタンス804を示している。追加のナレッジグラフ804は、第1のユーザ入力および第2のユーザ入力に関するさらなる情報を含む。
【0194】
図14を参照すると、図14は、認知規則のセットに基づいて入力-出力ナレッジグラフ700に付加されているナレッジグラフインスタンス802を示している。
【0195】
図14を参照すると、図14は、認知規則のセットの「後で学習する」規則に基づいて入力-出力ナレッジグラフ700に付加されているナレッジグラフインスタンス802を示している。
【0196】
「後で学習する」規則に従って、1つ以上のナレッジグラフインスタンス802は、最初に、入力-出力ナレッジグラフ700の潜在セクション706からアクティブセクション704に移動される。さらに、追加の1つ以上のナレッジインスタンス804が、入力-出力ナレッジグラフ700の1つ以上のナレッジグラフインスタンス802に付加される。
【0197】
図10に戻って参照すると、入力-出力ナレッジグラフは、外部入力-出力ナレッジグラフから導出される情報を含むように修正される。したがって、有利には、デジタル化プラットフォーム110は、コントローラデバイス124によって受信された複数のユーザ入力から学習するだけでなく、外部データベースに記憶された1つ以上のナレッジグラフからも学習する。
【0198】
処理ユニット202は、修正された入力-出力ナレッジグラフを問い合わせて、第1のユーザ入力または第2のユーザ入力のうちの少なくとも1つに基づいて出力信号を生成するようにさらに構成されている。処理ユニット202は、複数の産業デバイス108A~108Nを制御するために、生成された出力信号を複数の産業デバイス108A~108Nに送信するようにさらに構成されている。したがって、有利には、デジタル化プラットフォーム110は、入力-出力ナレッジグラフ700および外部入力-出力ナレッジグラフにおいてカバーされる全てのユーザ入力について出力信号を生成するように構成されている。
【0199】
第1のユーザ入力または第2のユーザ入力のうちの少なくとも1つに関する情報が外部入力-出力ナレッジグラフ内に存在しない場合、処理ユニット202は、少なくとも第1のセンサ信号または第2のセンサ信号を処理のためにコントローラデバイス124に送信するように構成されている。コントローラデバイス124は、出力信号を生成するように構成されている。処理ユニット202は、複数の産業デバイス108A~108Nを制御するために、生成された出力信号を複数の産業デバイス108A~108Nに送信するようにさらに構成されている。さらに、コントローラデバイス124によって生成された出力信号は、処理ユニット202により分析される。さらに、入力-出力ナレッジグラフは、分析に基づいて修正される。
【0200】
したがって、有利には、入力-出力ナレッジグラフは、第1のセンサ信号または第2のセンサ信号、および出力信号に関する情報を含むように修正される。したがって、有利には、第1のユーザ入力または第2のユーザ入力に関する情報が入力-出力ナレッジグラフまたは外部入力-出力ナレッジグラフ内に存在しない場合、処理ユニット202は、第1のユーザ入力または第2のユーザ入力に関する情報を含むように入力-出力ナレッジグラフを修正するように構成されている。
【0201】
したがって、最終的に、入力-出力ナレッジグラフは、コントローラデバイス124によって受信される可能性が高い複数のユーザ入力の全ての可能な組み合わせに関する情報を蓄積する。その結果、エンジニアリングプログラムのランタイムは、コントローラデバイス124からデジタル化プラットフォーム110に完全に移行される。
【0202】
本発明は、1つ以上のコンピュータ、プロセッサ、または命令実行システムによって、またはこれらに関連して使用するためのプログラムコードを記憶するコンピュータ使用可能媒体またはコンピュータ可読媒体からアクセス可能なプログラムモジュールを含むコンピュータプログラム製品の形態をとることができる。ここでの説明のために、コンピュータ使用可能媒体またはコンピュータ可読媒体は、命令実行システム、装置、またはデバイスによって、またはそれに関連して使用するためのプログラムを含み、記憶し、通信し、伝搬し、または移送することができる任意の装置とすることができる。媒体は、電子的、磁気的、光学的、電磁気的、赤外線、または半導体システム(または装置またはデバイス)であってもよく、あるいは半導体または固体メモリ、磁気テープ、取り外し可能コンピュータディスケット、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、コンパクトディスク読み出し専用メモリ(CD-ROM)、コンパクトディスク読み出し/書き込み、およびDVDなどの剛性磁気ディスクおよび光ディスクを含む物理的コンピュータ可読媒体の定義に信号キャリアが含まれないため、それ自体の中およびそれ自体の伝搬媒体であってもよい。本技術の各態様を実装するためのプロセッサおよびプログラムコードの両方は、当業者に知られているように、集中型または分散型(またはこれらの組み合わせ)でありうる。
【0203】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記の実施形態に限定されるものではない。本開示を考慮した当業者であれば、本明細書に記載した本発明の種々の実施形態の範囲から逸脱することなく、多くの修正および変形が可能であろう。したがって、本発明の範囲は、前述の説明によってではなく、以下の特許請求の範囲によって示される。特許請求の範囲の等価物の意味およびこれに該当する全ての変更、修正および変形が当該範囲内にあると見なされる。方法の請求項において請求される全ての有利な実施形態は、システム/装置の請求項にも適用可能である。
図1
図2
図3
図4A
図4B
図4C
図4D
図4E
図5A
図5B
図5C
図6
図7
図8
図9
図10
図11
図12
図13
図14
【手続補正書】
【提出日】2023-06-29
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
コントローラデバイス(124)からデジタル化プラットフォーム(110)へのランタイムシステムのシームレスな移行の方法であって、前記方法は、
処理ユニット(202)により、エンジニアリングプログラムの実行中に前記コントローラデバイス(124)によって送信または受信された複数の入力-出力パラメータ値を取り込むことと、
前記処理ユニット(202)により、取り込まれた前記複数の入力-出力パラメータ値におけるパラメータ値間の複数の関係に関する情報を含む入力-出力ナレッジグラフを生成することと、
前記処理ユニット(202)により、複数のセンサデバイス(126A~126N)と前記コントローラデバイス(124)または前記デジタル化プラットフォーム(110)のうちの1つとの間のネットワーク接続(104)において少なくとも1つの接続性エラーが存在するかどうかを判定することと、
前記接続性エラーが存在すると判定された場合、前記処理ユニット(202)により、生成された前記入力-出力ナレッジグラフの分析に基づいて第1の入力パラメータ値をシミュレートすることであって、前記第1の入力パラメータ値は、前記エンジニアリングプログラムの実行中に前記複数のセンサデバイス(126A~126N)から前記コントローラデバイス(124)によって受信されるパラメータ値である、ことと、
前記処理ユニット(202)により、シミュレートされた前記第1の入力パラメータ値または複数のセンサデバイス(126A~126N)から受信された第2の入力パラメータ値のうちの1つから少なくとも1つの出力パラメータ値を生成することと、
前記処理ユニット(202)により、生成された前記少なくとも1つの出力パラメータ値を技術設備(106)内の複数の産業デバイス(108A~108N)に送信して、前記複数の産業デバイス(108A~108N)を制御することと、
を含む、方法。
【請求項2】
前記方法は、
前記処理ユニット(202)により、前記少なくとも1つの出力パラメータ値と前記複数の入力-出力パラメータ値との間の関係を決定することと、
前記処理ユニット(202)により、決定された前記関係に基づく前記少なくとも1つの出力パラメータ値に基づいて前記入力-出力ナレッジグラフを修正することと、
をさらに含む、請求項1記載の方法。
【請求項3】
前記少なくとも1つの出力パラメータ値を生成することは、
前記処理ユニット(202)により、前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報が前記入力-出力ナレッジグラフ内に存在するかどうかを判定することと、
前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報が前記入力-出力ナレッジグラフ内に存在すると判定された場合、前記処理ユニット(202)により、前記入力-出力ナレッジグラフの分析に基づいて、前記デジタル化プラットフォーム(110)において前記少なくとも1つの出力パラメータ値を生成することと、
前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報が前記入力-出力ナレッジグラフ内に存在しない場合、前記処理ユニット(202)により、前記コントローラデバイス(124)における前記エンジニアリングプログラムの実行に基づいて、前記コントローラデバイス(124)において前記少なくとも1つの出力パラメータ値を生成することと、
を含む、請求項記載の方法。
【請求項4】
前記入力-出力ナレッジグラフを生成することは、
前記処理ユニット(202)により、取り込まれた前記複数の入力-出力パラメータ値を分析することと、
入力ナレッジグラフ、出力ナレッジグラフ、および入力-出力対応ナレッジグラフを生成することであって、
前記入力ナレッジグラフは、取り込まれた前記複数の入力-出力パラメータ値における複数の入力パラメータ値間の複数の関係に関連付けられた情報を含み、
前記出力ナレッジグラフは、取り込まれた前記複数の入力-出力パラメータ値における複数の出力パラメータ値間の複数の関係に関連付けられた情報を含み、
前記入力-出力対応ナレッジグラフは、取り込まれた前記複数の入力-出力パラメータ値における前記複数の入力パラメータ値と前記複数の出力パラメータ値との間の複数の関係に関連付けられた情報を含む、
ことと、
前記処理ユニット(202)により、前記生成された入力ナレッジグラフ、前記出力ナレッジグラフ、および前記入力-出力対応ナレッジグラフに基づいて前記入力-出力ナレッジグラフを生成することと、
を含む、請求項記載の方法。
【請求項5】
前記方法は、
前記処理ユニット(202)により、前記コントローラデバイス(124)によって実行される前記エンジニアリングプログラムの複数のプログラミングブロックを分析することと、
前記処理ユニット(202)により、前記コントローラデバイス(124)の複数のプログラム実行パラメータを決定することであって、前記複数のプログラム実行パラメータは、前記エンジニアリングプログラムの実行中の前記コントローラデバイス(124)の内部機能に関する情報を含む、ことと、
前記処理ユニット(202)により、前記複数のプログラム実行パラメータの分析に基づいて、前記コントローラデバイス(124)によって実行された前記エンジニアリングプログラムの効率を決定することと、
前記処理ユニット(202)により、前記エンジニアリングプログラムへの人工知能モデルの適用に基づいて前記複数のプログラミングブロックを変換することであって、前記人工知能モデルは、前記複数のプログラミングブロックを変換するように訓練されている、ことと、
前記処理ユニット(202)により、変換された前記複数のプログラミングブロックを前記デジタル化プラットフォーム(110)に移動させることと、
をさらに含む、請求項4記載の方法。
【請求項6】
前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つから前記少なくとも1つの出力パラメータ値を生成することは、
前記処理ユニット(202)により、前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つがクリティカルデータ項目であるかどうかを判定することであって、前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つは、前記第1の入力パラメータ値または前記第2の入力パラメータ値に対する前記人工知能モデルの適用に基づいて、前記クリティカルデータ項目であると判定される、ことと、
前記処理ユニット(202)により、前記コントローラデバイス(124)における前記エンジニアリングプログラムの実行に基づいて、前記コントローラデバイス(124)において前記少なくとも1つの出力パラメータ値を生成することと、
を含む、請求項1記載の方法。
【請求項7】
前記ネットワーク接続(104)において少なくとも1つの接続性エラーが存在するかどうかを判定することは、
前記処理ユニット(202)により、前記複数のセンサデバイス(126A~126N)と前記コントローラデバイス(124)または前記デジタル化プラットフォーム(110)のうちの1つとの間の前記ネットワーク接続に関連付けられた複数のネットワーク接続パラメータを受信することと、
前記処理ユニット(202)により、前記複数のネットワーク接続パラメータを分析することと、
前記処理ユニット(202)により、前記分析に基づいて、前記少なくとも1つの接続性エラーが前記ネットワーク接続(104)内に存在するかどうかを判定することと、
を含む、請求項1記載の方法。
【請求項8】
コントローラデバイス(124)からデジタル化プラットフォーム(110)へのランタイムシステムのシームレスな移行の方法であって、前記方法は、
処理ユニット(202)により、コントローラデバイス(124)によって送信または受信された複数の入力-出力パラメータ値間の複数の関係に関する情報を含む第1の入力-出力ナレッジグラフを受信することと、
前記処理ユニット(202)により、エンジニアリングプログラムの実行中に前記コントローラデバイス(124)によって受信される1つ以上のパラメータ値に関する情報を含む1つ以上のナレッジグラフインスタンスを受信することと、
前記処理ユニット(202)により、認知規則のセットに基づいて、受信された前記1つ以上のナレッジグラフインスタンスを前記第1の入力-出力ナレッジグラフに付加することによって、前記第1の入力-出力ナレッジグラフを修正することと、
前記処理ユニット(202)により、複数のヒューマンマシンインタフェース(120A~120N)と前記コントローラデバイス(124)または前記デジタル化プラットフォーム(110)のうちの1つとの間のネットワーク接続(104)において少なくとも1つの接続性エラーが存在するかどうかを判定することと、
前記接続性エラーが存在すると判定された場合、前記処理ユニット(202)により、修正された前記入力-出力ナレッジグラフの分析に基づいて第1の入力パラメータ値をシミュレートすることであって、前記第1の入力パラメータ値は、前記エンジニアリングプログラムの実行中に前記複数のヒューマンマシンインタフェース(120A~120N)から受信されるパラメータ値である、ことと、
前記処理ユニット(202)により、シミュレートされた前記第1の入力パラメータ値から少なくとも1つの出力パラメータ値を生成することと、
前記処理ユニット(202)により、生成された前記少なくとも1つの出力パラメータ値を技術設備(106)内の複数の産業デバイス(108A~108N)に送信して、前記複数の産業デバイス(108A~108N)を制御することと、
を含む、方法。
【請求項9】
前記複数の入力-出力パラメータ値は、前記複数のヒューマンマシンインタフェースを介して前記コントローラデバイス(124)によって受信されたユーザ入力の第1のセットを含み、
前記エンジニアリングプログラムの実行中に前記コントローラデバイス(124)によって受信される前記1つ以上のユーザ入力に関する情報を含む受信された前記1つ以上のナレッジグラフインスタンスは、
前記処理ユニット(202)により、前記ユーザ入力の第1のセットを含む第1のワークフローを決定することであって、前記第1のワークフローに関連付けられた情報は、前記第1の入力-出力ナレッジグラフ内に存在する、ことと、
前記処理ユニット(202)により、ユーザ入力の第2のセットを含む第2のワークフローを受信することであって、前記第2のワークフローに関連付けられた情報は、第2の入力-出力ナレッジグラフ内に存在する、ことと、
前記処理ユニット(202)により、前記第1の入力-出力ナレッジグラフと前記第2の入力-出力ナレッジグラフとを比較することと、
前記処理ユニット(202)により、前記比較に基づいて前記第1のワークフローおよび前記第2のワークフローの処理効率を決定することであって、前記第1のワークフローおよび前記第2のワークフローの各々の処理効率は、それぞれのワークフローが前記エンジニアリングプログラムを使用してエンジニアリングタスクを完了する効率の指標である、ことと、
前記処理ユニット(202)により、前記第2のワークフローの処理効率が前記第1のワークフローの処理効率よりも高いかどうかを判定することと、
前記第2のワークフローの処理効率がより高いと判定された場合、前記処理ユニット(202)により、前記第2の入力-出力ナレッジグラフから前記1つ以上のナレッジグラフインスタンスを受信することと、
を含む、請求項8記載の方法。
【請求項10】
前記1つ以上のナレッジグラフインスタンスを受信することは、
前記接続性エラーが存在しないと判定された場合、前記処理ユニット(202)により、前記複数のヒューマンマシンインタフェースから第2の入力パラメータ値を受信することと、
前記処理ユニット(202)により、前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報が前記第1の入力-出力ナレッジグラフ内に存在するかどうかを判定することと、
前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報が前記第1の入力-出力ナレッジグラフ内に存在しないと判定された場合、前記処理ユニット(202)により、第2の入力-出力ナレッジグラフを受信することであって、前記第2の入力-出力ナレッジグラフは、前記第1の入力パラメータ値または前記第2の入力パラメータ値のうちの1つに関する情報を含む、ことと、
前記処理ユニット(202)により、前記第2の入力-出力ナレッジグラフ内の前記1つ以上のナレッジグラフインスタンスを決定することであって、前記1つ以上のナレッジグラフインスタンスは、前記第1の入力パラメータ値または前記第2の入力パラメータ値に関連付けられた情報を含む、ことと、
前記処理ユニット(202)により、決定された前記1つ以上のナレッジグラフインスタンスを前記第2の入力-出力ナレッジグラフから受信することと、
を含む、請求項8記載の方法。
【請求項11】
受信された前記1つ以上のナレッジグラフインスタンスを付加することによって前記第1の入力-出力ナレッジグラフを修正することは、
前記処理ユニットにより、前記第1の入力-出力ナレッジグラフを分析して、前記第1の入力-出力ナレッジグラフの複数の部分をアクティブセクションおよび潜在セクションに分類することと、
前記処理ユニットにより、受信された前記1つ以上のナレッジグラフインスタンスを、前記第1の入力-出力ナレッジグラフの前記アクティブセクションまたは前記潜在セクションのうちの1つにマッピングすることと、
前記処理ユニットにより、前記認知規則のセットに基づいて、受信された前記1つ以上のナレッジグラフを前記第1の入力-出力ナレッジグラフへと修正することと、
を含む、請求項9および10記載の方法。
【請求項12】
コントローラデバイス(124)からデジタル化プラットフォーム(110)へのランタイムシステムのシームレスな移行のためのエンジニアリングシステム(102)であって、前記エンジニアリングシステム(102)は、
処理ユニット(202)と、
前記処理ユニット(202)に結合されたメモリ(204)と、
を備え、前記メモリは、1つ以上のプロセッサによって実行可能な機械可読命令の形態で記憶されたデータ取得および分析モジュール(112)を含み、前記データ取得および分析モジュール(112)は、請求項1から11までのいずれか1項記載の方法を実行することが可能である、
エンジニアリングシステム(102)。
【請求項13】
産業環境(100)であって、
請求項10記載のエンジニアリングシステム(102)と、
1つ以上の物理的構成要素を含む技術設備(106)と、
ネットワーク(104)を介して前記エンジニアリングシステム(102)に通信可能に結合された複数のヒューマンマシンインタフェース(120A~120N)と、
を備え、前記エンジニアリングシステム(102)は、請求項1から11までのいずれか1項記載の方法を実行するように構成されている、
産業環境(100)。
【請求項14】
処理ユニット(202)により実行される際に、前記プロセッサに請求項1から11までのいずれか1項記載の方法を実行させるための機械可読命令が記憶されたコンピュータプログラム製品。
【外国語明細書】