(57)【特許請求の範囲】
【請求項１】
産業用の自動化システム（１００）の動作状態（３０１）を表す状態データ（１８１）であって、前記自動化システム（１００）のオペレーティングソフトウェアの状態を少なくとも含む状態データ（１８１）を取得し、
前記自動化システム（１００）が周辺に及ぼす周辺影響（３０６）を表すセンサデータ（１８３）を１つ以上のセンサから取得し、
前記状態データ（１８１）と前記センサデータ（１８３）との比較を実行し、
該比較に基づいて、前記自動化システム（１００）のインテグリティを監視することを含む方法。
【請求項２】
前記状態データ（１８１）は、
前記自動化システム（１００）の複数のアクティブなコンポーネント（１０１〜１０６，１１１，１１２，１１８，１１９）のコンポーネント登録と、
前記自動化システム（１００）の複数のコンポーネント（１０１〜１０６，１１１，１１２，１１８，１１９）のコンポーネントアクティビティと、
前記自動化システム（１００）のオペレーティングソフトウェアのエラー状態と、
前記自動化システム（１００）の通信インターフェースのパラメータと、
前記自動化システム（１００）のコンピュータハードウェアのリソース割り当てとのうちの少なくとも１つの要素を含む、請求項１に記載の方法。
【請求項３】
前記周辺影響（３０６）を引き起こす前記自動化システム（１００）の１つ以上のアクチュエータ（１０１〜１０６）に関する制御データ（１８２）を取得することをさらに含み、
前記状態データ（１８１）と前記センサデータ（１８３）と前記制御データ（１８２）との比較を実行する、請求項１又は２に記載の方法。
【請求項４】
前記比較は、リファレンス（３１０）からの前記周辺影響（３０６）の偏差を考慮に入れる、請求項１〜３のいずれか１項に記載の方法。
【請求項５】
前記リファレンス（３１０）を、前記周辺影響（３０６）の事前定義される仮想モデル（２５０）に基づき、前記状態データ（１８１）に応じて決定することをさらに含む、請求項４に記載の方法。
【請求項６】
前記仮想モデル（２５０）は、前記状態データ（１８１）に応じ、前記センサデータ（１８３）の妥当性範囲（３１１）を示す、請求項５に記載の方法。
【請求項７】
学習段階（１９２，１９３）において、前記自動化システム（１００）の前記動作状態（３０１）を表すリファレンス状態データ（１８１Ａ，１８１Ｂ）を取得し、
前記学習段階（１９２，１９３）において、前記自動化システム（１００）の前記周辺影響（３０６）を表すリファレンスセンサデータ（１８３Ａ，１８３Ｂ）を取得し、
前記リファレンス状態データ（１８１Ａ，１８１Ｂ）と前記リファレンスセンサデータ（１８３Ａ，１８３Ｂ）との比較を実行して、前記周辺影響（３０６）の学習モデル（２５０）を決定し、
該学習モデル（２５０）に基づいて前記リファレンス（３１０）を決定することをさらに含む、請求項４〜６のいずれか１項に記載の方法。
【請求項８】
前記学習モデル（２５０）の決定を、機械学習技術を用いて行う、請求項７に記載の方法。
【請求項９】
別の産業用自動化システム（１００’）の動作を監視し、
該別の産業用自動化システム（１００’）の前記動作の監視に基づいて前記リファレンス（３１０）を決定することをさらに含む、請求項４〜８のいずれか１項に記載の方法。
【請求項１０】
前記比較を実行するときに、前記状態データと相関する前記センサデータ（１８３）の異常検出を実行することを含む、請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
前記監視に従って、前記監視のステータスを前記自動化システム（１００）の製品のシリアル番号と関連付けるログファイルを作成することをさらに含む、請求項１〜１０のいずれか１項に記載の方法。
【請求項１２】
前記監視に従って、少なくとも、ユーザインターフェースを介して警告を発するか、又は、前記自動化システム（１００）の前記動作を保護状態へ遷移させる、ことをさらに含む、請求項１〜１１のいずれか１項に記載の方法。
【請求項１３】
少なくとも１つのプロセッサを含む制御ユニット（１２０，１６０）であって、
前記少なくとも１つのプロセッサが、
産業用の自動化システム（１００）の動作状態（３０１）を表す状態データ（１８１）であって、前記自動化システム（１００）のオペレーティングソフトウェアの状態を少なくとも含む状態データ（１８１）を取得するステップと、
前記自動化システム（１００）が周辺に及ぼす周辺影響（３０６）を表すセンサデータ（１８３）を１つ以上のセンサから取得するステップと、
前記状態データ（１８１）と前記センサデータ（１８３）との比較を実行するステップと、
前記比較に基づいて、前記自動化システム（１００）のインテグリティを監視するステップとを実行するように構成される、制御ユニット（１２０，１６０）。
【請求項１４】
前記少なくとも１つのプロセッサは、請求項１〜１２のいずれか１項に記載の方法を実行するように構成されている、請求項１３に記載の制御ユニット（１２０，１６０）。
【請求項１５】
少なくとも１つのプロセッサによって実行可能であり、該少なくとも１つのプロセッサに請求項１〜１２のいずれか１項に記載の方法を実行させるプログラムコードを含む、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の様々な例は、産業用自動化システムのインテグリティ（正当性）を監視することに広く関係する。特に、本発明の様々な例は、自動化システムの状態データと自動化システムの周辺影響を表すセンサデータとの間の比較に基づく監視に関する。本発明の様々な例は、外部アクセスによるインテグリティの侵害を特定するために、インテグリティを監視することに関する。
【背景技術】
【０００２】
自動化が進歩するにつれて、産業用自動化システムがますます普及している。例えば、自動化システムは、機械又はワークピースの製造に使用される。自動化システムは、プロセスエンジニアリングシステムを実装できる。産業用自動化システムは、例えば、都市、ビル自動化、鉄道交通又は航空交通における交通管理システムに関連付けて、交通監視又は交通制御の分野でも使用される。産業用自動化システムは、例えば、発電所又は変電所での発電において、そして、エネルギー伝送及び配電（スマートグリッド）においても使用できる。
【０００３】
最新の自動化システムは、高度な接続性が特徴である。例えば、自動化システムは、通常、複数のコンポーネント、例えば、センサ、アクチュエータ、演算ユニット、又は制御ユニットを含む。自動化システムのこれらのコンポーネントは、通常、ネットワークを介して互いに接続されている、つまり通信接続されている。また、自動化システムは、外部から、例えば、インターネットを介してアクセスできるか、又は自動化システムは、例えば、予測保守のための診断データをインターネットを介して送信することも、多くの場合可能である。
【０００４】
したがって、多くの場合、自動化システムに関連して、不正な外部アクセス（ハッキング）のリスクがある。このような不正な外部アクセスは、対応する自動化システムの誤動作、データ損失、機能制限、さらには完全停止にまで至るおそれがある。
【０００５】
このため、自動化システムのインテグリティを守ることは、信頼性のある動作を確保するために必要な目標である。その場合特に、自動化システムの個々のサブ機能の保護に加えて、全体として産業用自動化システムのインテグリティを保護する必要がある。
【０００６】
リファレンス実装では、例えば、自動化システムの動作状態を表す自動化システムのＩＴシステムの状態データに基づいて、不正な外部アクセスに起因するインテグリティの侵害が監視される。このような状態データの評価に基づいて、自動化システムのＩＴコンポーネントのインテグリティに対する攻撃を特定できる。例えば、状態データの不規則性を検出できる。このような不規則性の検出の自動化は、攻撃検出ツール（侵入検知システム）に関連付けて説明される。攻撃検出ツールは、例えば、自動化システムのオペレーティングソフトウェアにおいて、又は自動化システムの通信インターフェースと共同して、既知の攻撃パターンを適切に検索する。
【０００７】
ただし、このようなリファレンス実装には、特定の制限及び欠点がある。例えば、このようなリファレンス実装では、精度が制限される場合がある。多くの場合、このような攻撃検出ツールは、ＩＴ関連の攻撃又は不正操作のみを検出できる。
【発明の概要】
【０００８】
以上の背景に鑑みると、自動化システムのインテグリティを監視するために、改善された技術が必要である。特に、自動化システムへの外部アクセスを検出する技術が必要である。この場合、上記の欠点及び制限の少なくともいくつかを克服又は軽減する当該技術が必要である。
【０００９】
この課題は、独立形式請求項の特徴によって解決される。従属形式請求項の特徴は、実施の形態を定義する。
【００１０】
一態様に係る方法は、産業用自動化システムの状態データを取得することを含む。状態データは、自動化システムの動作状態を表す。本方法は、自動化システムがその周辺に及ぼす周辺影響を表すセンサデータを取得することをさらに含む。本方法は、状態データとセンサデータとの間の比較を行い、その比較に基づいて自動化システムのインテグリティを監視することをさらに含む。
【００１１】
例えば、自動化システムへの外部アクセスを検出し、その外部アクセスと結びついた、インテグリティへの影響を監視することが可能である。不正な外部アクセスを特定できる。
【００１２】
例えば、産業用自動化システムは、発電所、配電網、変電所、ワークピース又は機械の生産ライン、精製所、パイプライン、下水処理場、交通管理システム、医療機器などを実装する。そのような自動化システムを、サイバーフィジカルシステム（ＣＰＳ）とも呼ぶ。自動化システムの例には、生産プラント、変電所、ロボット、フォークリフト、自律輸送システム、工作機械、ミリング、プレス、プロセスエンジニアリングシステム、３Ｄプリンタが挙げられる。
【００１３】
状態データには、例えば、自動化システムのオペレーティングソフトウェアのログファイルを含めることができる。例えば、状態データは、自動化システムの１つ以上の制御部から取得できる。状態データは、自動化システムのオペレーティングソフトウェアのセルフテスト結果、チェックサム、メモリスナップショットなどを含んでもよい。
【００１４】
センサデータは、１つ以上のセンサから取得できる。センサは、自動化システムの一部であり得る。すなわち、例えば、共通の通信インターフェースを介して自動化システムの別のコンポーネントと通信接続している。別の例では、しかしながら、センサが自動化システムの一部ではなく、別々に設けられたものであり、自動化システムとセンサに同時にアクセスするのが容易ではない場合もある。
【００１５】
このセンサデータは、自動化システムの周辺影響を表すことができる。この場合、周辺影響の種類又はタイプに応じて、様々なセンサを使用できる。例えば、周辺影響に、自動化システムの周囲の加熱又は冷却を含めることができ、このときには、温度センサを使用することが可能である。別の例では、周辺影響に、一般的な信号機や交通案内システムのスイッチングを含めることができ、このときには例えば、交通案内システムを撮像したビデオデータをセンサデータとして取得することができる。発電に関連して、例えば、電気パラメータ、例えば、電圧や電流、あるいは位相シフトを示す、センサデータを取得してもよい。
【００１６】
状態データとセンサデータとの比較を実行することにより、特に、予想されるリファレンスからの周辺影響の偏差を検出できる。周辺影響の当該偏差は、例えば、自動化システムの外部と見なせる周辺影響の境界条件が変化した場合に発生する可能性がある。このような場合にインテグリティの侵害を検出することが必ず必要なわけではない。しかしながら、例えば、自動化システムのインテグリティへの不正な外部アクセスに起因して、リファレンスからの周辺影響の当該偏差が発生する可能性はある。この場合には、偏差を監視することにより、不正な外部アクセスを特定できる。
【００１７】
状態データとセンサデータとを比較することにより、インテグリティの監視時に特に高い水準の信頼性に到達できる。この共通の分析により、特にインテグリティの積極的確認が可能となる場合がある。さらに、複数のデータソースに基づいてインテグリティを監視できるため、信頼性が全体的に向上する。外部アクセスを確実に検出できる。特に、インテグリティへの外部アクセスの影響を検出できる。インテグリティの侵害を検出できる。不正な外部アクセスを検出できる。さらに、アクチュエータのアナログ制御又は自動化システムのセンサの不正操作、例えば、制御電子機器の不正操作も認識できる。これにより、インテグリティ監視の新たな品質が実現される。
【００１８】
一例では、状態データは、自動化システムのオペレーティングソフトウェアの状態を含んでもよい。この場合には自動化システムに関するＩＴ関連情報を取得できる。特に、オペレーティングソフトウェアの状態は、自動化システムの動作状態に対して特有であり得る。
【００１９】
状態データは、自動化システムの複数のアクティブなコンポーネントのコンポーネント登録、自動化システムの複数のコンポーネントのコンポーネントアクティビティ、自動化システムのオペレーティングソフトウェアのエラー状態、自動化システムの通信インターフェースのパラメータ、自動化システムのコンピュータハードウェアのリソース割り当てのうちの少なくとも１つの要素を含むことができる。
【００２０】
これら状態データ及び別の種類の状態データを使用して、自動化システムのオペレーティングソフトウェアの状態を確実且つ包括的にマッピングできる。いくつかの補完的な種類の状態データを考慮することにより、特に自動化システムの個々の機能ブロックに対する個別の攻撃を検出できる。これは、改ざんされたけれども首尾一貫した又は矛盾しない挙動を伴う、いくつかの又は多くの機能ブロックに対する同時攻撃がまれにしか発生しないという経験に基づいている。したがって、例えば、外部アクセスによるインテグリティの侵害を特に確実に検出できる。
【００２１】
上記状態データ及び別の種類の状態データは、特に、周辺影響を引き起こす自動化システムのアクチュエータのアクティビティを間接的に示すこともできる。インテグリティを監視する場合、自動化システムのアクチュエータのアクティビティを特に明確に考慮することが望ましい場合もある。このような場合、周辺影響を引き起こす自動化システムの１つ以上のアクチュエータの制御データをさらに取得すると役立つ場合がある。この場合、状態データ、センサデータ及び制御データの間の比較を実行できる。
【００２２】
このようにして、特定の予期しない周辺影響の原因をとりわけ、例えば、アクチュエータの誤動作に見出すことも可能であり、アクチュエータの誤動作は、必ずしも外部アクセスから生じると見られるわけではなく、損傷などによって引き起こされる場合もある。これにより全体的に、インテグリティ監視の精度を向上させることができる。特にこの場合にはまた、外部アクセスとは別にシステムのインテグリティを監視できる。
【００２３】
一例において、比較は、リファレンスからの周辺影響の偏差を考慮することが可能である。したがって、特に、標準挙動からの偏差が、比較の際に特定される。標準挙動からのそのような偏差は、特に、周辺影響が包括的に予測されるべきリファレンス実装に比べて、特に容易に決定できる。自動化システムの複雑性に起因して、周辺影響を包括的に予測することが不可能又は制限される場合があり得る。このような状況では、周辺影響の予測の代わりに、リファレンスからの周辺影響の偏差のみを考慮することが役立つ場合がある。したがって、異常検出を行うことができる。
【００２４】
この場合に、例えば、自動化システムの周辺影響の事前定義される仮想モデル（決定論的モデル）に基づき、状態データに応じてリファレンスを決定することが可能である。一例として決定論的モデルは、例えば、不変として予め定義されてメモリに保存されている単純な仮定に基づいて、リファレンスを予め定義してもよい。例えば、当該モデルは、自動化システムのオペレーティングソフトウェアの数多いメモリアクセスの場合に、例えば、単位時間当たりに完了したワークピースの数が増加することを予測してもよい。単位時間当たりに完了したワークピースの数は、適切なセンサによって確認でき、この方法により、インテグリティの侵害は、センサデータと状態データとの間の偏差から決定される。当該モデルのさらなる例は、ガスタービンの運転における調節プロセスの頻度に関し、ガスタービンが異なる出力値の間で頻繁に調節される場合、ガスタービンのベアリングにおいて温度が上昇するおそれがある。ガスタービンのベアリングの領域の温度プロファイルは温度センサによって監視でき、その予測関係は、状態データとセンサデータとの間の比較によってモデルの範囲内で検証できる。特に、デジタルツインとも称する自動化システムのシミュレーションモデルが存在する場合、該シミュレーションモデルは、実行中の動作においてリファレンスとして使用できる。自動化システムの構築の際に作成されたシミュレーションモデル（デジタルツイン）は、動作中のインテグリティ監視のために引き続き使用できるため、これは特に有利である。
【００２５】
この場合、例えば、状態データに応じた所定のモデルがセンサデータの妥当性範囲を示し得る。これは、予想されるセンサデータを正確に予測する代わりに、一定範囲の許容可能なセンサデータが使用されることを意味する。これは、例えば、監視中の外部アクセスに起因するインテグリティの侵害から、通常の動作を分離することに特に効果的である。
【００２６】
本方法は、学習段階において自動化システムのリファレンス状態データを取得することを含んでもよい。そのリファレンス状態データは、自動化システムの動作状態を表し得る。本方法は、学習段階においてリファレンスセンサデータを取得することも含んでもよい。リファレンスセンサデータは、自動化システムの周辺影響を表し得る。この場合の周辺影響の学習モデル（経験的モデル）は、リファレンス状態データとリファレンスセンサデータとの間の比較の実行に基づいて決定できる。そして、経験的モデルに基づいてリファレンスを決定することが可能である。
【００２７】
この態様では、モデルを通じて状態データ及びセンサデータ用の多数のソースを柔軟にリンクすることが可能である。特に、決定論的モデルを簡単に導出できない当該ソースを互いにリンクすることも可能であり、これにより、特にモジュラーシステムをサポートできる。さらに言えば、例えば、弱い相関データの場合にも当てはまる。また、異なるデータに高い次元性がある場合にも当てはまる。例えば、センサデータのノイズが大きく、センサデータの信号対雑音比が低い場合にも当てはまる。
【００２８】
例えば、経験的モデルの決定は、機械学習の技術を使用して行える。一例として、誤差逆伝播（バックプロパゲーション）を使用して人工ニューラルネットワークをトレーニングできる。カルマンフィルタを使用してもよい。このようにして、多大な労力を必要とせずに個々のケース、例えば、頻繁に拡張又は変更されるモジュールシステムに柔軟に適応させるように、モデル又はリファレンスを確実に決定することが可能になる。
【００２９】
学習段階は、例えば、監視する動作と関連付けて実行できる。そして例えば、学習段階中に外部システムから自動化システムにアクセスできないようにすることも可能である。この場合、それまでにリファレンス状態データ又はリファレンスセンサデータが改ざんされていないことを確認できる。また、自動化システムの動作中継続的に学習段階を繰り返すことも可能である。この場合、例えば、外部アクセスが原因で、リファレンスからの突然の偏差が検出される場合がある。さらに、自動化システムの１つ以上のコンポーネントへの許可されたアクセス、例えば、設定（構成データ）の変更の場合、生産システムの再構成（プラグアンドワーク）の場合、又はデバイスファームウェアの更新の場合、リファレンスモデルの更新が提示される。さらに、そのような許可されたアクセス中に、自動化システムのインテグリティ監視のための本発明に係る方法を一時的に中断することが提案される。別の変形態様では、そのような許可されたアクセス中に、本発明に係る方法は、第２のリファレンスモデルによる監視を行う。リファレンスモデルの選択又は一時停止は、自動化システムの動作モード（例えば、操作可能な動作モード、メンテナンスモード、エラーモード）を評価することにより、自動的に実行できる。
【００３０】
様々な例で、さらに別の産業用自動化システムの動作を監視することも可能である。この場合には、その産業用自動化システムの動作監視に基づきリファレンスを決定し得る。例えば、該産業用自動化システム用に、対応する状態データ及びセンサデータを取得し、該産業用自動化システムの状態データとセンサデータと間の比較を実行できる。
【００３１】
以上の技術により、別々の自動化システム間のネットワークを活用して、当該自動化システムの群のうちの一つ自動化システムのセキュリティ侵害をその他の自動化システムとの比較によって検出することができる。
【００３２】
状態データとセンサデータとの間の比較を実行するときに、状態データと相関するセンサデータの異常検出を実行することをさらに含むことができる。これは、例えば、機械学習による異常検出の範囲内で、状態データに基づいて、センサデータの予想パターンの偏差を検出できることを意味する。
【００３３】
少なくとも、インテグリティの侵害が特定された場合、又は、自動化システムのインテグリティへの外部アクセスが特定された場合、様々な措置を講じることができる。例えば、切替信号又はアラーム信号といった信号を、ユーザインターフェースを介して出力してもよい。自動化システム又は自動化システムの少なくともコンポーネントは、自動的に、又は操作員による確認後に、安全な状態もしくは保護状態へ遷移できる。監視に従ってログファイルの作成も可能である。この場合、ログファイルは、監視のステータスを自動化システムの製品のシリアル番号と関連付けることができる。その結果、ある製品について、該製品の製造中に生産機械のインテグリティが満たされていたかどうかに関して遡及的にも検証できる。
【００３４】
一態様において、コンピュータプログラム記憶媒体は、少なくとも１つのプロセッサによって実行できるプログラムコードを含む。このプログラムコードを実行する少なくとも１つのプロセッサは上記方法を実行する。本方法は、産業用自動化システムの状態データを取得することを含む。状態データは、自動化システムの動作状態を表す。本方法は、自動化システムの周辺影響を表すセンサデータを取得することをさらに含む。本方法は、状態データとセンサデータとの間の比較を行い、その比較に基づいて自動化システムのインテグリティを監視することをさらに含む。
【００３５】
一態様において、コンピュータプログラムは、少なくとも１つのプロセッサによって実行できるプログラムコードを含む。このプログラムコードを実行する少なくとも１つのプロセッサは上記方法を実行する。本方法は、産業用自動化システムの状態データを取得することを含む。状態データは、自動化システムの動作状態を表す。本方法は、自動化システムの周辺影響を表すセンサデータを取得することをさらに含む。本方法は、状態データとセンサデータとの間の比較を行い、その比較に基づいて自動化システムのインテグリティを監視することをさらに含む。
【００３６】
一態様において、制御ユニットが少なくとも１つのプロセッサを含み、該少なくとも１つのプロセッサは、産業用自動化システムの動作状態を表す状態データを取得するステップと、自動化システムの周辺影響を表すセンサデータを取得するステップと、状態データとセンサデータとの比較を実行するステップと、その比較に基づいて、自動化システムのインテグリティを監視するステップとを実行するように構成される。
【００３７】
上記の各態様は、さらに別の態様において、互いに組み合わせることができる。
【図面の簡単な説明】
【００３８】
【図１】様々な実施形態に係る自動化システムの概略的図。
【図２】様々な実施形態に係る自動化システムの制御ユニットの概略的図。
【図３】様々な実施形態に係る制御ユニットの概略的図。
【図４】本発明の方法の一例を示すフロー図。
【図５】様々な実施形態に係る状態データ、制御データ、及びセンサデータを取得する過程の概略的図。
【図６】様々な実施形態に係るモデルを用いて状態データ、制御データ、及びセンサデータを比較する過程の概略的図。
【図７】例示的な状態データによって表される、自動化システムのコンポーネントのコンポーネントアクティビティの、そして、コンポーネントアクティビティと相関する、自動化システムの周辺影響の、概略的な時間プロファイルを示す図。
【図８】様々な実施形態に係るリファレンス状態データ、リファレンス制御データ、及びリファレンスセンサデータの概略的図。
【図９】様々な実施形態に係る複数の自動化システムの状態データ、制御データ、及びセンサデータの概略的図。
【発明を実施するための形態】
【００３９】
上述した本発明の特性、特徴、及び利点、そしてそれらが達成される過程は、図面を参照して詳細に説明する以下の実施形態の説明に従ってより明らかになり、より明確に理解される。
【００４０】
以下、図面を参照して、好ましい実施形態に基づいて本発明をより詳細に説明する。図において同じ参照符号は、同一又は類似の要素を示す。図面は、本発明の様々な実施形態の概略図である。図面に示した要素は、必ずしも縮尺どおりに図示されているわけではない。むしろ、図示した様々な要素は、それらの機能及び一般的な目的が当業者によって理解されるように再現されている。図面に示した機能ユニットと要素との間の接続及び結合は、間接的な接続又は結合として実装することもできる。接続又は結合は、有線又は無線で実装できる。機能ユニットは、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせとして実装できる。
【００４１】
以下では、産業用自動化システムのインテグリティ（正当性）を監視するための技術について説明する。インテグリティが侵害される様々な原因があり得る。インテグリティが侵害される原因の一例として、該当する自動化システムへの外部アクセス、特に言えば、不正な外部アクセスである。
【００４２】
ここに説明する技術は、自動化システムの動作状態を表す状態データと、自動化システムが周辺に及ぼす周辺影響を表すセンサデータとを組み合わせた監視に基づく。例えば、正常時に予想される周辺影響は、状態データから導出できる。次いで、そのモデリング情報を使用して、実際の挙動を、予想される挙動と比較し、該比較を通してインテグリティの変化を特定できる。
【００４３】
ここに説明する技術は、各実施形態において、例えばＩＴ関連の、センサデータ及び状態データを組み合わせて考察し評価することに基づく。センサデータと状態データとの比較から、一貫性又は妥当性の検証を行うことができる。これにより、例えば、センサ又はアクチュエータの不正操作を検出できるため、インテグリティ監視の新しい品質が実現される。さらに、未検知の攻撃については、別々のシステムの複数のインテグリティデータを同時に一貫して不正操作する必要があるとされることから、高度なロバスト性が実現される。さらに、センサ又はアクチュエータの不正操作、ケーブルの不正操作、構成データの不正操作、ファームウェアの不正操作、制御通信の不正操作など、様々な種類のインテグリティ侵害をまとめて検出し処理できる。したがって、様々な種類の自動化システムのインテグリティの侵害を検出できる。このとき特に、ここに説明するインテグリティを監視するための技術は、自動化システムのコンポーネントの特定のＩＴサブ機能に関連するだけでなく、包括的なアプローチにも関連する。
【００４４】
ここに説明する技術は、柔軟に規模を拡大できる。拡張性が提供される。要件に応じて、追加のセンサデータと追加の状態データのいずれか又は両方を柔軟に考慮できる。自動化システムの重要な領域を、比較的重要ではない領域よりも多くの労力を費やして監視することもできる。例えば、重要な領域について、例えば、単位時間ごとに、より多くのセンサデータ又は状態データを取得してもよい。
【００４５】
ここに説明する技術は、既存の自動化システムに追加装備することも可能である。例えば、適切な追加のセンサを使用してセンサデータを提供してもよい。これにより、基本的に、未保護のオペレーティングソフトウェア、自動化コンポーネント、及び工作機械又は生産システムを引き続き使用できる。概して言えば、外部アクセスに対する保護がまったくないか、又は不十分でしかない自動化システムのコンポーネントを引き続き使用することができる。
【００４６】
当該技術に基づいて、例えば、監視の結果を記録するログファイルを生成することが可能である。例えば、タイムスタンプを使用してもよい。その場合には、この情報を使用して、製造された自動化システム製品のバッチをインテグリティの侵害について監視してもよい。例えば、許容できないかそのうえに不正な外部アクセスが原因で、製品の個々のバッチのインテグリティが影響を受ける可能性があるかどうかを、後で検証することもできる。
【００４７】
不正な外部アクセスは、多くの場合、自動化システムの不許可の変更が行われることを特徴とする。これは、例えば、システムのサービスモードやコンポーネントへのアクセス権原を持ち、例えば、コンポーネントのファームウェア又は設定データを変更できる、ユーザが行うこともできる。本発明による解決策によれば、サービス技術者によってなされたり、あるいは、保護の弱い又は保護のないサービスインターフェースを経て行われる、システム構成の不許可の変更もまた検出できるので、回復力が向上する。
【００４８】
図１は、自動化システム１００に関連する一実施形態を概略的に示す。自動化システム１００は、複数のコンポーネント１０１〜１０６，１１１〜１１２，１１８〜１１９，１２０を含む。コンポーネントは、モノのインターネット（Internet of Things：IoT）のデバイスとも称することができる。
【００４９】
一例として、コンポーネント１０１〜１０６は、周辺影響を引き起こすアクチュエータを実装している。この周辺影響は、例えば、生産ラインの稼動や交通管理システムの制御であり得る。
【００５０】
例えば、コンポーネント１１１〜１１２は、アクチュエータ１０１〜１０６の周辺影響を少なくとも部分的に測定するセンサを表す。
【００５１】
例えば、コンポーネント１１８〜１１９は、他のコンポーネント１０１〜１０６，１１１〜１１２のうちの１つ以上を制御する制御機能を実装し、このことは、コンポーネント１１８〜１１９がコンピュータハードウェアのリソースを提供できることを意味する。また、中央制御ユニット１２０も設けられている。
【００５２】
図１を参照すると、外部センサ１５１，１５２も加えて示されている。これらセンサ１５１，１５２がこの例で自動化システム１００の一部ではないのは、その他のコンポーネント１０１〜１０６，１１１〜１１２，１１８〜１２０と通信接続していないためである。該センサ１５１，１５２は、例えば、インテグリティ監視の目的のために特別に設置され、例えば、物理的に保護して取り付けられ得る。この形態には、当該センサ１５１，１５２が、感染した自動化コンポーネントによって通信接続を介し不正操作されないという利点がある。変形形態では、システムから孤立したこれらのセンサに、評価時に異なる重みを与えることができる。
【００５３】
図１には、自動化システム１００のインテグリティへの外部アクセス９０が起こり得ることが示されている。例えば、外部アクセス９０の目的は、自動化システム１００の機能の侵害である可能性がある。外部アクセス９０は、不許可かあるいは不正である可能性がある。
【００５４】
以下、当該外部アクセス９０を検出し、必要に応じて防御することを可能にする技術を説明する。
【００５５】
該当する論理回路は、例えば、制御ユニット１６０に対し実装できる。制御ユニット１６０は、図１のシナリオでは、これもまた自動化システム１００の一部ではない。例えば、制御部１６０は、バックエンドシステムの一部である。例えば、制御ユニット１６０を操作するためにクラウドコンピューティング又はエッジコンピューティングを使用してもよい。
【００５６】
図２は、中央制御ユニット１２０に関する例を示す。一例において、制御ユニット１２０は、インテグリティ監視を実装するように構成される。制御ユニット１２０は、例えばマルチコアプロセッサである、少なくとも１つのプロセッサ１２１を含む。メモリ１２２が設けられている。プログラムコードは、メモリ１２２に保存され得る。プロセッサ１２１は、メモリ１２２からプログラムコードをロードして実行できる。プログラムコードを実行することにより、中央制御ユニット１２０に、自動化システム１００の状態データを取得したり分析すること、自動化システム１００の周辺影響を表すセンサデータを取得したり分析すること、状態データとセンサデータとの比較を実行すること、自動化システムのインテグリティを監視する、例えばインテグリティを侵害するか又は損なうことを目的とした自動化システムへの外部アクセスを監視すること、のうちの１つ以上の過程に関連する動作を実行させることができる。
【００５７】
図３は、バックエンド制御ユニット１６０に関する例を示す。制御ユニット１６０は、例えばマルチコアプロセッサである少なくとも１つのプロセッサ１６１を含む。メモリ１６２が設けられている。プログラムコードは、メモリ１６２に保存され得る。プロセッサ１６１は、メモリ１６２からプログラムコードをロードして実行できる。プログラムコードを実行することにより、制御ユニット１６０に、自動化システム１００の状態データを取得したり分析すること、自動化システムの周辺影響を表すセンサデータを取得したり分析すること、状態データとセンサデータとの比較を実行すること、自動化システムのインテグリティを監視すること、のうちの１つ以上の過程に関連する動作を実行させることができる。
【００５８】
図４は、例示する方法のフロー図である。例えば、図４の例による方法は、制御ユニット１２０又は制御ユニット１６０により実行され得る。
【００５９】
最初にブロック１００１において、状態データを取得する。状態データは、自動化システムの動作状態を表す。例えば、状態データは、自動化システムの１つ以上の制御ユニットから取得するか、又は、自動化システムのアクチュエータやセンサから直接取得することができる。
【００６０】
例えば、状態データは、自動化システムのオペレーティングソフトウェアの状態を含む。状態データは、自動化システムの複数のアクティブなコンポーネントのコンポーネント登録と、自動化システムの複数のコンポーネントのコンポーネントアクティビティと、自動化システムのオペレーティングソフトウェアのエラー状態と、自動化システムの通信インターフェースのパラメータと、自動化システムのコンピュータハードウェアのリソース割り当てとのうちの少なくとも１つの要素を含み得る。
【００６１】
例えば、コンポーネント登録では、自動化システムの中央制御ユニットに登録されているすべてのアクティブなコンポーネントをリスト化する。登録から外された（ログオフ)コンポーネントを同様にリスト化できる。これにより、自動化システムのどのコンポーネントが基本的に周辺影響をもたらす可能性があるのかを把握できる。
【００６２】
例えば、コンポーネントアクティビティは、様々なコンポーネントの使用率又はデューティサイクルを示す。例えば、アクチュエータに関連付けてアクティビティの変動幅を表し得る。これにより、自動化システムのアクチュエータに起因する周辺影響の大きさを推定することが可能である。
【００６３】
エラー状態は、例えば、オペレーティングソフトウェアのログファイルに対応する。ログファイルには、例えば、プログラムソフトウェアの予期しない中断を保存できる。また、不良なメモリアクセスを保存してもよい。また、防御した外部アクセスを保存してもよい。また、実行中のすべてのプロセスを表してもよい。
【００６４】
自動化システムの通信インターフェースのパラメータは、例えば、通信インターフェースのアクティビティ及び可能な通信パートナーを示す。例えば、交信されたデータの量を保存してもよい。例えば、使用された暗号化が示されてもよい。例えば、アクティブな通信接続及び関連アプリケーションを登録してもよい。
【００６５】
例えば、コンピュータハードウェアのリソース割り当ては、メモリの使用率、ハードディスクの使用率、又は使用可能なプロセッサの使用率を表す。
【００６６】
ブロック１００２において、センサデータを取得する。例えば、センサデータは、自動化システムの１つ以上のセンサから取得する。代替的又は追加的に、センサデータを１つ以上の外部センサから取得することも可能である。センサデータは、物理的な測定量又は可観測量を定量化できる。測定量は、自動化システムの周辺影響を表し得る。例えば、次の１つ以上の物理的な可観測量をセンサデータにより表すことができる。温度、交通流、生産された製品、不良品、圧力、体積、速度、位置、電流、電圧、生成された電気エネルギーなど。
【００６７】
次いでブロック１００３において、ブロック１００１に由来する状態データとブロック１００２に由来するセンサデータとの比較を行う。例えば、状態データとセンサデータとの間の相関を実行し得る。センサデータと状態データとの融合を実行してもよい。
【００６８】
基本的に、ブロック１００３の比較の範囲内で、別のデータもまた考慮してもよい。例えば、周辺影響に作用する、自動化システムの１つ以上のアクチュエータの制御データを取得することも可能である。この場合、ブロック１００３における比較では、制御データもまた考慮される。
【００６９】
比較において、リファレンスからの周辺影響の偏差を考慮することができる。そのリファレンスは、状態データに応じて決定できる。この場合、例えば、決定論的モデル又は経験的モデルを使用してもよい。
【００７０】
最終的にはブロック１００５において、ブロック１００４の監視に応じて、（任意選択的に）対抗措置か警告のいずれか又は両方をトリガできる。例えば、監視に従って、監視のステータスを自動化システムの製品のシリアル番号と関連付けるログファイルを作成してもよい。これによれば、個々の製品又は製品バッチがインテグリティの侵害によって影響を受けた可能性があるかどうかを後で検証できる。監視に従って、ユーザインターフェースを介して警告を発行すること、自動化システムの動作を保護状態へ自動的に移行すること、のどちらか又は両方を行うことも可能である。例えば、保護状態において周辺影響を制限して、人などを傷つけないようにすることが可能である。あり得る外部アクセスを能動的には実行できないように、自動化システム１００の通信インターフェースを無効化することも可能である。
【００７１】
図５は、自動化システムの様々なデータの融合に関する例を概略的に示す。図５を参照すると、状態データ１８１と制御データ１８２のいずれか又は両方が、アクチュエータ１０１，１０３，１０５のサブセットから取得されることが分かる。状態データ１８１は、各アクチュエータ１０１，１０３，１０５の動作状態を表し得る。制御データ１８２は、各アクチュエータ１０１，１０３，１０５の周辺影響の種類や大きさを表し得る。
【００７２】
さらに、センサ１１１，１１２，１５１，１５２からセンサデータ１８３が取得される。センサデータは、自動化システム１００の周辺影響を表し得る。
【００７３】
図５の例では、さらにハードウェアリソース１１８，１１９から状態データ１８１が取得される。また、中央制御ユニット１２０から状態データ１８１が取得される。
【００７４】
これらのすべてのデータ１８１，１８２，１８３は、制御ユニット１６０に提供される。この制御ユニット１６０により、データの融合、すなわち、様々なデータ１８１，１８２，１８３間の比較を実行できる。この比較に基づいて、自動化システムのインテグリティを監視できる。これについて、図６にも関連して示されている。
【００７５】
図６は、様々なデータ１８１，１８２，１８３の比較に関する例を示す。図６は、特に、インテグリティの監視に関して、例えば、制御ユニット１６０又は制御ユニット１２０の機能を示し、不許可あるいは不正な外部アクセス９０によるインテグリティの侵害を検出できる。
【００７６】
図６から、モデル２５０が比較のために使用されることが分かる。その結果として、結果信号１８９が得られる。例えば、結果信号１８９は、インテグリティの侵害と外部アクセス９０の有無のいずれか又は両方を示すことができる。結果信号１８９は、対応する確率を示してもよい。結果信号は、警告と対抗措置のいずれか又は両方をトリガできる。
【００７７】
一例では、決定論的モデル２５０を使用できる。決定論的モデル２５０は、事前に決定でき、例えば、自動化システム１００の物理的関係やアーキテクチャに基づいて設定できる。例えば、モデル２５０は、状態データ１８１に応じてセンサデータの妥当性範囲を示すことが可能である。この場合には、比較の中で、センサデータが当該妥当性範囲内の周辺影響を示しているかどうかを確認でき、さらには、インテグリティの侵害を想定することができる。このような技術について、図７に関連して説明する。
【００７８】
図７は、状態データ１８１とセンサデータ１８３との比較に関する例を示す。例えば、相当する機能をモデル２５０により実装してもよい。
【００７９】
図７の例では、状態データ１８１は、時間ｔの関数としてアクチュエータのアクティビティ３０１を示す。図７の例では、アクチュエータのアクティビティ３０１は、２つの値の間で変動する（実線）。
【００８０】
図７には、アクティビティ３０１からモデル２５０に基づいて得られたリファレンス３１０（点線）も示されている。対応する妥当性範囲３１１にハッチングが施されている。妥当性範囲３１１からの偏差は、例えば、異常検出に関連付けて検出される。
【００８１】
図７では、センサデータ１８３によって測定された周辺影響３０６の時間プロファイル、例えば、対応するアクチュエータの周辺における温度、もさらに示されている。ある時点から、一方の測定された周辺影響３０６と他方のリファレンス３１０との間の間隔３１２が妥当性範囲３１１から外れることがわかる。そこでは、例えば、外部アクセス９０に起因するインテグリティの侵害を想定することができる。
【００８２】
対応するモデル２５０は、例えば機械又はシステムの設計で作成されたデジタルツインシミュレーションモデルによって、決定論的に導出できるものだけではない。機械学習の技術もまた使用してもよい。これは、図８に関連して説明される。
【００８３】
図８は、リファレンス３１０又はモデル２５０の決定に関する例を示す。図８では、動作段階１９１においてデータ１８１，１８２，１８３がシステム１００又はセンサ１５１，１５２によって取得されることを示している。インテグリティの監視は、動作段階中に行われる。
【００８４】
２つの学習段階１９２，１９３中に、リファレンス状態データ１８１Ａ，１８１Ｂ、及びリファレンスセンサデータ１８３Ａ，１８３Ｂが取得される。任意選択的に、リファレンス制御データ１８２Ａ，１８２Ｂも取得できる。一般に、必要な学習段階は１つだけである。
【００８５】
例えば、学習段階１９３は、自動化システム１００の提供開始に関連付けて定義されてもよい。そのときに、監視する動作が実行される。学習段階１９２は、自動化システム１００の通常の動作に対応してもよい。すなわち、履歴データ１８１Ａ，１８２Ａ，１８３Ａを示してもよい。
【００８６】
次いで、これらのリファレンスデータ１８１Ａ，１８２Ａ，１８３Ａ，１８１Ｂ，１８２Ｂ，１８３Ｂ間の比較に基づいて、経験的モデル２５０を決定することが可能である。この場合、リファレンス３１０は、特に通常動作に対する偏差として決定できる。決定論的モデルの入り組んだ決定は行われない。さらに、データの様々なソースを柔軟に考慮できるため、モデル２５０の拡張性が向上する。例えば、モデル２５０の経験的決定は、機械学習の技術によるものであり得る。
【００８７】
学習段階１９２，１９３に関する期間におけるリファレンスデータのこれら定義に対して代替的に又は追加的に、別の自動化システムの動作からリファレンス３１０を導出することも可能である。対応する技術は、図９に関連して説明される。
【００８８】
図９は、リファレンス３１０とモデル２５０の決定に関する例を示す。図９では、自動化システム１００の動作を監視することに加えて、別の自動化システム１００’の動作も監視できることが示されている。該当するリファレンス状態データ１８１’、リファレンス制御データ１８２’、及びリファレンスセンサデータ１８３’が、別の自動化システム１００’から取得される。このようにして、リファレンス３１０を決定できる。
【００８９】
当然ながら、本発明の以上の実施形態や側面の特徴を互いに組み合わせることができる。特に、その特徴は、本発明の範囲から逸脱することなく、記載された組み合わせに加えて他の組み合わせ又はそれ自体で使用され得る。
【００９０】
例えば、ここに説明した技術は、他のシステム、例えば一般的に言えば、自律機械などのセンサアクチュエータシステムなどのインテグリティを監視するために使用できる。
【００９１】
外部アクセスに起因する自動化システムのインテグリティの侵害に関連付けて様々な例を説明したが、別のいくつかの例では、別のトリガイベントに起因するインテグリティの侵害を監視することも可能である。
【図１】
0006983992.tif 000002
【図２】
0006983992.tif 000003
【図３】
0006983992.tif 000004
【図４】
0006983992.tif 000005
【図５】
0006983992.tif 000006
【図６】
0006983992.tif 000007
【図７】
0006983992.tif 000008
【図８】
0006983992.tif 000009
【図９】
0006983992.tif 000010