特許第6983992号(P6983992)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

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

特許6983992自動化システムにおけるインテグリティ監視
<>
  • 特許6983992-自動化システムにおけるインテグリティ監視 図000002
  • 特許6983992-自動化システムにおけるインテグリティ監視 図000003
  • 特許6983992-自動化システムにおけるインテグリティ監視 図000004
  • 特許6983992-自動化システムにおけるインテグリティ監視 図000005
  • 特許6983992-自動化システムにおけるインテグリティ監視 図000006
  • 特許6983992-自動化システムにおけるインテグリティ監視 図000007
  • 特許6983992-自動化システムにおけるインテグリティ監視 図000008
  • 特許6983992-自動化システムにおけるインテグリティ監視 図000009
  • 特許6983992-自動化システムにおけるインテグリティ監視 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6983992
(24)【登録日】2021年11月26日
(45)【発行日】2021年12月17日
(54)【発明の名称】自動化システムにおけるインテグリティ監視
(51)【国際特許分類】
   G05B 23/02 20060101AFI20211206BHJP
【FI】
   G05B23/02 T
   G05B23/02 Z
【請求項の数】15
【全頁数】17
(21)【出願番号】特願2020-500871(P2020-500871)
(86)(22)【出願日】2018年6月7日
(65)【公表番号】特表2020-530921(P2020-530921A)
(43)【公表日】2020年10月29日
(86)【国際出願番号】EP2018065003
(87)【国際公開番号】WO2019011539
(87)【国際公開日】20190117
【審査請求日】2020年6月22日
(31)【優先権主張番号】17180526.0
(32)【優先日】2017年7月10日
(33)【優先権主張国】EP
(73)【特許権者】
【識別番号】390039413
【氏名又は名称】シーメンス アクチエンゲゼルシヤフト
【氏名又は名称原語表記】Siemens Aktiengesellschaft
(74)【代理人】
【識別番号】100075166
【弁理士】
【氏名又は名称】山口 巖
(74)【代理人】
【識別番号】100133167
【弁理士】
【氏名又は名称】山本 浩
(74)【代理人】
【識別番号】100169627
【弁理士】
【氏名又は名称】竹本 美奈
(72)【発明者】
【氏名】ファルク,ライナー
(72)【発明者】
【氏名】フリース,シュテッフェン
【審査官】 杉山 悟史
(56)【参考文献】
【文献】 特開平07−160327(JP,A)
【文献】 米国特許出願公開第2004/0216000(US,A1)
【文献】 欧州特許出願公開第2980662(EP,A1)
【文献】 欧州特許出願公開第3101491(EP,A1)
【文献】 独国特許出願公開第102014117282(DE,A1)
【文献】 特許第6130460(JP,B2)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 23/02
(57)【特許請求の範囲】
【請求項1】
産業用の自動化システム(100)の動作状態(301)を表す状態データ(181)であって、前記自動化システム(100)のオペレーティングソフトウェアの状態を少なくとも含む状態データ(181)を取得し、
前記自動化システム(100)が周辺に及ぼす周辺影響(306)を表すセンサデータ(183)を1つ以上のセンサから取得し、
前記状態データ(181)と前記センサデータ(183)との比較を実行し、
該比較に基づいて、前記自動化システム(100)のインテグリティを監視することを含む方法。
【請求項2】
前記状態データ(181)は、
前記自動化システム(100)の複数のアクティブなコンポーネント(101〜106,111,112,118,119)のコンポーネント登録と、
前記自動化システム(100)の複数のコンポーネント(101〜106,111,112,118,119)のコンポーネントアクティビティと、
前記自動化システム(100)のオペレーティングソフトウェアのエラー状態と、
前記自動化システム(100)の通信インターフェースのパラメータと、
前記自動化システム(100)のコンピュータハードウェアのリソース割り当てとのうちの少なくとも1つの要素を含む、請求項1に記載の方法。
【請求項3】
前記周辺影響(306)を引き起こす前記自動化システム(100)の1つ以上のアクチュエータ(101〜106)に関する制御データ(182)を取得することをさらに含み、
前記状態データ(181)と前記センサデータ(183)と前記制御データ(182)との比較を実行する、請求項1又は2に記載の方法。
【請求項4】
前記比較は、リファレンス(310)からの前記周辺影響(306)の偏差を考慮に入れる、請求項1〜3のいずれか1項に記載の方法。
【請求項5】
前記リファレンス(310)を、前記周辺影響(306)の事前定義される仮想モデル(250)に基づき、前記状態データ(181)に応じて決定することをさらに含む、請求項4に記載の方法。
【請求項6】
前記仮想モデル(250)は、前記状態データ(181)に応じ、前記センサデータ(183)の妥当性範囲(311)を示す、請求項5に記載の方法。
【請求項7】
学習段階(192,193)において、前記自動化システム(100)の前記動作状態(301)を表すリファレンス状態データ(181A,181B)を取得し、
前記学習段階(192,193)において、前記自動化システム(100)の前記周辺影響(306)を表すリファレンスセンサデータ(183A,183B)を取得し、
前記リファレンス状態データ(181A,181B)と前記リファレンスセンサデータ(183A,183B)との比較を実行して、前記周辺影響(306)の学習モデル(250)を決定し、
学習モデル(250)に基づいて前記リファレンス(310)を決定することをさらに含む、請求項4〜6のいずれか1項に記載の方法。
【請求項8】
前記学習モデル(250)の決定を、機械学習技術を用いて行う、請求項7に記載の方法。
【請求項9】
別の産業用自動化システム(100’)の動作を監視し、
該別の産業用自動化システム(100’)の前記動作の監視に基づいて前記リファレンス(310)を決定することをさらに含む、請求項4〜8のいずれか1項に記載の方法。
【請求項10】
前記比較を実行するときに、前記状態データと相関する前記センサデータ(183)の異常検出を実行することを含む、請求項1〜9のいずれか1項に記載の方法。
【請求項11】
前記監視に従って、前記監視のステータスを前記自動化システム(100)の製品のシリアル番号と関連付けるログファイルを作成することをさらに含む、請求項1〜10のいずれか1項に記載の方法。
【請求項12】
前記監視に従って、少なくとも、ユーザインターフェースを介して警告を発するか、又は、前記自動化システム(100)の前記動作を保護状態へ遷移させる、ことをさらに含む、請求項1〜11のいずれか1項に記載の方法。
【請求項13】
少なくとも1つのプロセッサを含む制御ユニット(120,160)であって、
前記少なくとも1つのプロセッサが、
産業用の自動化システム(100)の動作状態(301)を表す状態データ(181)であって、前記自動化システム(100)のオペレーティングソフトウェアの状態を少なくとも含む状態データ(181)を取得するステップと、
前記自動化システム(100)が周辺に及ぼす周辺影響(306)を表すセンサデータ(183)を1つ以上のセンサから取得するステップと、
前記状態データ(181)と前記センサデータ(183)との比較を実行するステップと、
前記比較に基づいて、前記自動化システム(100)のインテグリティを監視するステップとを実行するように構成される、制御ユニット(120,160)。
【請求項14】
前記少なくとも1つのプロセッサは、請求項1〜12のいずれか1項に記載の方法を実行するように構成されている、請求項13に記載の制御ユニット(120,160)。
【請求項15】
少なくとも1つのプロセッサによって実行可能であり、該少なくとも1つのプロセッサに請求項1〜12のいずれか1項に記載の方法を実行させるプログラムコードを含む、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の様々な例は、産業用自動化システムのインテグリティ(正当性)を監視することに広く関係する。特に、本発明の様々な例は、自動化システムの状態データと自動化システムの周辺影響を表すセンサデータとの間の比較に基づく監視に関する。本発明の様々な例は、外部アクセスによるインテグリティの侵害を特定するために、インテグリティを監視することに関する。
【背景技術】
【0002】
自動化が進歩するにつれて、産業用自動化システムがますます普及している。例えば、自動化システムは、機械又はワークピースの製造に使用される。自動化システムは、プロセスエンジニアリングシステムを実装できる。産業用自動化システムは、例えば、都市、ビル自動化、鉄道交通又は航空交通における交通管理システムに関連付けて、交通監視又は交通制御の分野でも使用される。産業用自動化システムは、例えば、発電所又は変電所での発電において、そして、エネルギー伝送及び配電(スマートグリッド)においても使用できる。
【0003】
最新の自動化システムは、高度な接続性が特徴である。例えば、自動化システムは、通常、複数のコンポーネント、例えば、センサ、アクチュエータ、演算ユニット、又は制御ユニットを含む。自動化システムのこれらのコンポーネントは、通常、ネットワークを介して互いに接続されている、つまり通信接続されている。また、自動化システムは、外部から、例えば、インターネットを介してアクセスできるか、又は自動化システムは、例えば、予測保守のための診断データをインターネットを介して送信することも、多くの場合可能である。
【0004】
したがって、多くの場合、自動化システムに関連して、不正な外部アクセス(ハッキング)のリスクがある。このような不正な外部アクセスは、対応する自動化システムの誤動作、データ損失、機能制限、さらには完全停止にまで至るおそれがある。
【0005】
このため、自動化システムのインテグリティを守ることは、信頼性のある動作を確保するために必要な目標である。その場合特に、自動化システムの個々のサブ機能の保護に加えて、全体として産業用自動化システムのインテグリティを保護する必要がある。
【0006】
リファレンス実装では、例えば、自動化システムの動作状態を表す自動化システムのITシステムの状態データに基づいて、不正な外部アクセスに起因するインテグリティの侵害が監視される。このような状態データの評価に基づいて、自動化システムのITコンポーネントのインテグリティに対する攻撃を特定できる。例えば、状態データの不規則性を検出できる。このような不規則性の検出の自動化は、攻撃検出ツール(侵入検知システム)に関連付けて説明される。攻撃検出ツールは、例えば、自動化システムのオペレーティングソフトウェアにおいて、又は自動化システムの通信インターフェースと共同して、既知の攻撃パターンを適切に検索する。
【0007】
ただし、このようなリファレンス実装には、特定の制限及び欠点がある。例えば、このようなリファレンス実装では、精度が制限される場合がある。多くの場合、このような攻撃検出ツールは、IT関連の攻撃又は不正操作のみを検出できる。
【発明の概要】
【0008】
以上の背景に鑑みると、自動化システムのインテグリティを監視するために、改善された技術が必要である。特に、自動化システムへの外部アクセスを検出する技術が必要である。この場合、上記の欠点及び制限の少なくともいくつかを克服又は軽減する当該技術が必要である。
【0009】
この課題は、独立形式請求項の特徴によって解決される。従属形式請求項の特徴は、実施の形態を定義する。
【0010】
一態様に係る方法は、産業用自動化システムの状態データを取得することを含む。状態データは、自動化システムの動作状態を表す。本方法は、自動化システムがその周辺に及ぼす周辺影響を表すセンサデータを取得することをさらに含む。本方法は、状態データとセンサデータとの間の比較を行い、その比較に基づいて自動化システムのインテグリティを監視することをさらに含む。
【0011】
例えば、自動化システムへの外部アクセスを検出し、その外部アクセスと結びついた、インテグリティへの影響を監視することが可能である。不正な外部アクセスを特定できる。
【0012】
例えば、産業用自動化システムは、発電所、配電網、変電所、ワークピース又は機械の生産ライン、精製所、パイプライン、下水処理場、交通管理システム、医療機器などを実装する。そのような自動化システムを、サイバーフィジカルシステム(CPS)とも呼ぶ。自動化システムの例には、生産プラント、変電所、ロボット、フォークリフト、自律輸送システム、工作機械、ミリング、プレス、プロセスエンジニアリングシステム、3Dプリンタが挙げられる。
【0013】
状態データには、例えば、自動化システムのオペレーティングソフトウェアのログファイルを含めることができる。例えば、状態データは、自動化システムの1つ以上の制御部から取得できる。状態データは、自動化システムのオペレーティングソフトウェアのセルフテスト結果、チェックサム、メモリスナップショットなどを含んでもよい。
【0014】
センサデータは、1つ以上のセンサから取得できる。センサは、自動化システムの一部であり得る。すなわち、例えば、共通の通信インターフェースを介して自動化システムの別のコンポーネントと通信接続している。別の例では、しかしながら、センサが自動化システムの一部ではなく、別々に設けられたものであり、自動化システムとセンサに同時にアクセスするのが容易ではない場合もある。
【0015】
このセンサデータは、自動化システムの周辺影響を表すことができる。この場合、周辺影響の種類又はタイプに応じて、様々なセンサを使用できる。例えば、周辺影響に、自動化システムの周囲の加熱又は冷却を含めることができ、このときには、温度センサを使用することが可能である。別の例では、周辺影響に、一般的な信号機や交通案内システムのスイッチングを含めることができ、このときには例えば、交通案内システムを撮像したビデオデータをセンサデータとして取得することができる。発電に関連して、例えば、電気パラメータ、例えば、電圧や電流、あるいは位相シフトを示す、センサデータを取得してもよい。
【0016】
状態データとセンサデータとの比較を実行することにより、特に、予想されるリファレンスからの周辺影響の偏差を検出できる。周辺影響の当該偏差は、例えば、自動化システムの外部と見なせる周辺影響の境界条件が変化した場合に発生する可能性がある。このような場合にインテグリティの侵害を検出することが必ず必要なわけではない。しかしながら、例えば、自動化システムのインテグリティへの不正な外部アクセスに起因して、リファレンスからの周辺影響の当該偏差が発生する可能性はある。この場合には、偏差を監視することにより、不正な外部アクセスを特定できる。
【0017】
状態データとセンサデータとを比較することにより、インテグリティの監視時に特に高い水準の信頼性に到達できる。この共通の分析により、特にインテグリティの積極的確認が可能となる場合がある。さらに、複数のデータソースに基づいてインテグリティを監視できるため、信頼性が全体的に向上する。外部アクセスを確実に検出できる。特に、インテグリティへの外部アクセスの影響を検出できる。インテグリティの侵害を検出できる。不正な外部アクセスを検出できる。さらに、アクチュエータのアナログ制御又は自動化システムのセンサの不正操作、例えば、制御電子機器の不正操作も認識できる。これにより、インテグリティ監視の新たな品質が実現される。
【0018】
一例では、状態データは、自動化システムのオペレーティングソフトウェアの状態を含んでもよい。この場合には自動化システムに関するIT関連情報を取得できる。特に、オペレーティングソフトウェアの状態は、自動化システムの動作状態に対して特有であり得る。
【0019】
状態データは、自動化システムの複数のアクティブなコンポーネントのコンポーネント登録、自動化システムの複数のコンポーネントのコンポーネントアクティビティ、自動化システムのオペレーティングソフトウェアのエラー状態、自動化システムの通信インターフェースのパラメータ、自動化システムのコンピュータハードウェアのリソース割り当てのうちの少なくとも1つの要素を含むことができる。
【0020】
これら状態データ及び別の種類の状態データを使用して、自動化システムのオペレーティングソフトウェアの状態を確実且つ包括的にマッピングできる。いくつかの補完的な種類の状態データを考慮することにより、特に自動化システムの個々の機能ブロックに対する個別の攻撃を検出できる。これは、改ざんされたけれども首尾一貫した又は矛盾しない挙動を伴う、いくつかの又は多くの機能ブロックに対する同時攻撃がまれにしか発生しないという経験に基づいている。したがって、例えば、外部アクセスによるインテグリティの侵害を特に確実に検出できる。
【0021】
上記状態データ及び別の種類の状態データは、特に、周辺影響を引き起こす自動化システムのアクチュエータのアクティビティを間接的に示すこともできる。インテグリティを監視する場合、自動化システムのアクチュエータのアクティビティを特に明確に考慮することが望ましい場合もある。このような場合、周辺影響を引き起こす自動化システムの1つ以上のアクチュエータの制御データをさらに取得すると役立つ場合がある。この場合、状態データ、センサデータ及び制御データの間の比較を実行できる。
【0022】
このようにして、特定の予期しない周辺影響の原因をとりわけ、例えば、アクチュエータの誤動作に見出すことも可能であり、アクチュエータの誤動作は、必ずしも外部アクセスから生じると見られるわけではなく、損傷などによって引き起こされる場合もある。これにより全体的に、インテグリティ監視の精度を向上させることができる。特にこの場合にはまた、外部アクセスとは別にシステムのインテグリティを監視できる。
【0023】
一例において、比較は、リファレンスからの周辺影響の偏差を考慮することが可能である。したがって、特に、標準挙動からの偏差が、比較の際に特定される。標準挙動からのそのような偏差は、特に、周辺影響が包括的に予測されるべきリファレンス実装に比べて、特に容易に決定できる。自動化システムの複雑性に起因して、周辺影響を包括的に予測することが不可能又は制限される場合があり得る。このような状況では、周辺影響の予測の代わりに、リファレンスからの周辺影響の偏差のみを考慮することが役立つ場合がある。したがって、異常検出を行うことができる。
【0024】
この場合に、例えば、自動化システムの周辺影響の事前定義される仮想モデル(決定論的モデル)に基づき、状態データに応じてリファレンスを決定することが可能である。一例として決定論的モデルは、例えば、不変として予め定義されてメモリに保存されている単純な仮定に基づいて、リファレンスを予め定義してもよい。例えば、当該モデルは、自動化システムのオペレーティングソフトウェアの数多いメモリアクセスの場合に、例えば、単位時間当たりに完了したワークピースの数が増加することを予測してもよい。単位時間当たりに完了したワークピースの数は、適切なセンサによって確認でき、この方法により、インテグリティの侵害は、センサデータと状態データとの間の偏差から決定される。当該モデルのさらなる例は、ガスタービンの運転における調節プロセスの頻度に関し、ガスタービンが異なる出力値の間で頻繁に調節される場合、ガスタービンのベアリングにおいて温度が上昇するおそれがある。ガスタービンのベアリングの領域の温度プロファイルは温度センサによって監視でき、その予測関係は、状態データとセンサデータとの間の比較によってモデルの範囲内で検証できる。特に、デジタルツインとも称する自動化システムのシミュレーションモデルが存在する場合、該シミュレーションモデルは、実行中の動作においてリファレンスとして使用できる。自動化システムの構築の際に作成されたシミュレーションモデル(デジタルツイン)は、動作中のインテグリティ監視のために引き続き使用できるため、これは特に有利である。
【0025】
この場合、例えば、状態データに応じた所定のモデルがセンサデータの妥当性範囲を示し得る。これは、予想されるセンサデータを正確に予測する代わりに、一定範囲の許容可能なセンサデータが使用されることを意味する。これは、例えば、監視中の外部アクセスに起因するインテグリティの侵害から、通常の動作を分離することに特に効果的である。
【0026】
本方法は、学習段階において自動化システムのリファレンス状態データを取得することを含んでもよい。そのリファレンス状態データは、自動化システムの動作状態を表し得る。本方法は、学習段階においてリファレンスセンサデータを取得することも含んでもよい。リファレンスセンサデータは、自動化システムの周辺影響を表し得る。この場合の周辺影響の学習モデル(経験的モデル)は、リファレンス状態データとリファレンスセンサデータとの間の比較の実行に基づいて決定できる。そして、経験的モデルに基づいてリファレンスを決定することが可能である。
【0027】
この態様では、モデルを通じて状態データ及びセンサデータ用の多数のソースを柔軟にリンクすることが可能である。特に、決定論的モデルを簡単に導出できない当該ソースを互いにリンクすることも可能であり、これにより、特にモジュラーシステムをサポートできる。さらに言えば、例えば、弱い相関データの場合にも当てはまる。また、異なるデータに高い次元性がある場合にも当てはまる。例えば、センサデータのノイズが大きく、センサデータの信号対雑音比が低い場合にも当てはまる。
【0028】
例えば、経験的モデルの決定は、機械学習の技術を使用して行える。一例として、誤差逆伝播(バックプロパゲーション)を使用して人工ニューラルネットワークをトレーニングできる。カルマンフィルタを使用してもよい。このようにして、多大な労力を必要とせずに個々のケース、例えば、頻繁に拡張又は変更されるモジュールシステムに柔軟に適応させるように、モデル又はリファレンスを確実に決定することが可能になる。
【0029】
学習段階は、例えば、監視する動作と関連付けて実行できる。そして例えば、学習段階中に外部システムから自動化システムにアクセスできないようにすることも可能である。この場合、それまでにリファレンス状態データ又はリファレンスセンサデータが改ざんされていないことを確認できる。また、自動化システムの動作中継続的に学習段階を繰り返すことも可能である。この場合、例えば、外部アクセスが原因で、リファレンスからの突然の偏差が検出される場合がある。さらに、自動化システムの1つ以上のコンポーネントへの許可されたアクセス、例えば、設定(構成データ)の変更の場合、生産システムの再構成(プラグアンドワーク)の場合、又はデバイスファームウェアの更新の場合、リファレンスモデルの更新が提示される。さらに、そのような許可されたアクセス中に、自動化システムのインテグリティ監視のための本発明に係る方法を一時的に中断することが提案される。別の変形態様では、そのような許可されたアクセス中に、本発明に係る方法は、第2のリファレンスモデルによる監視を行う。リファレンスモデルの選択又は一時停止は、自動化システムの動作モード(例えば、操作可能な動作モード、メンテナンスモード、エラーモード)を評価することにより、自動的に実行できる。
【0030】
様々な例で、さらに別の産業用自動化システムの動作を監視することも可能である。この場合には、その産業用自動化システムの動作監視に基づきリファレンスを決定し得る。例えば、該産業用自動化システム用に、対応する状態データ及びセンサデータを取得し、該産業用自動化システムの状態データとセンサデータと間の比較を実行できる。
【0031】
以上の技術により、別々の自動化システム間のネットワークを活用して、当該自動化システムの群のうちの一つ自動化システムのセキュリティ侵害をその他の自動化システムとの比較によって検出することができる。
【0032】
状態データとセンサデータとの間の比較を実行するときに、状態データと相関するセンサデータの異常検出を実行することをさらに含むことができる。これは、例えば、機械学習による異常検出の範囲内で、状態データに基づいて、センサデータの予想パターンの偏差を検出できることを意味する。
【0033】
少なくとも、インテグリティの侵害が特定された場合、又は、自動化システムのインテグリティへの外部アクセスが特定された場合、様々な措置を講じることができる。例えば、切替信号又はアラーム信号といった信号を、ユーザインターフェースを介して出力してもよい。自動化システム又は自動化システムの少なくともコンポーネントは、自動的に、又は操作員による確認後に、安全な状態もしくは保護状態へ遷移できる。監視に従ってログファイルの作成も可能である。この場合、ログファイルは、監視のステータスを自動化システムの製品のシリアル番号と関連付けることができる。その結果、ある製品について、該製品の製造中に生産機械のインテグリティが満たされていたかどうかに関して遡及的にも検証できる。
【0034】
一態様において、コンピュータプログラム記憶媒体は、少なくとも1つのプロセッサによって実行できるプログラムコードを含む。このプログラムコードを実行する少なくとも1つのプロセッサは上記方法を実行する。本方法は、産業用自動化システムの状態データを取得することを含む。状態データは、自動化システムの動作状態を表す。本方法は、自動化システムの周辺影響を表すセンサデータを取得することをさらに含む。本方法は、状態データとセンサデータとの間の比較を行い、その比較に基づいて自動化システムのインテグリティを監視することをさらに含む。
【0035】
一態様において、コンピュータプログラムは、少なくとも1つのプロセッサによって実行できるプログラムコードを含む。このプログラムコードを実行する少なくとも1つのプロセッサは上記方法を実行する。本方法は、産業用自動化システムの状態データを取得することを含む。状態データは、自動化システムの動作状態を表す。本方法は、自動化システムの周辺影響を表すセンサデータを取得することをさらに含む。本方法は、状態データとセンサデータとの間の比較を行い、その比較に基づいて自動化システムのインテグリティを監視することをさらに含む。
【0036】
一態様において、制御ユニットが少なくとも1つのプロセッサを含み、該少なくとも1つのプロセッサは、産業用自動化システムの動作状態を表す状態データを取得するステップと、自動化システムの周辺影響を表すセンサデータを取得するステップと、状態データとセンサデータとの比較を実行するステップと、その比較に基づいて、自動化システムのインテグリティを監視するステップとを実行するように構成される。
【0037】
上記の各態様は、さらに別の態様において、互いに組み合わせることができる。
【図面の簡単な説明】
【0038】
図1】様々な実施形態に係る自動化システムの概略的図。
図2】様々な実施形態に係る自動化システムの制御ユニットの概略的図。
図3】様々な実施形態に係る制御ユニットの概略的図。
図4】本発明の方法の一例を示すフロー図。
図5】様々な実施形態に係る状態データ、制御データ、及びセンサデータを取得する過程の概略的図。
図6】様々な実施形態に係るモデルを用いて状態データ、制御データ、及びセンサデータを比較する過程の概略的図。
図7】例示的な状態データによって表される、自動化システムのコンポーネントのコンポーネントアクティビティの、そして、コンポーネントアクティビティと相関する、自動化システムの周辺影響の、概略的な時間プロファイルを示す図。
図8】様々な実施形態に係るリファレンス状態データ、リファレンス制御データ、及びリファレンスセンサデータの概略的図。
図9】様々な実施形態に係る複数の自動化システムの状態データ、制御データ、及びセンサデータの概略的図。
【発明を実施するための形態】
【0039】
上述した本発明の特性、特徴、及び利点、そしてそれらが達成される過程は、図面を参照して詳細に説明する以下の実施形態の説明に従ってより明らかになり、より明確に理解される。
【0040】
以下、図面を参照して、好ましい実施形態に基づいて本発明をより詳細に説明する。図において同じ参照符号は、同一又は類似の要素を示す。図面は、本発明の様々な実施形態の概略図である。図面に示した要素は、必ずしも縮尺どおりに図示されているわけではない。むしろ、図示した様々な要素は、それらの機能及び一般的な目的が当業者によって理解されるように再現されている。図面に示した機能ユニットと要素との間の接続及び結合は、間接的な接続又は結合として実装することもできる。接続又は結合は、有線又は無線で実装できる。機能ユニットは、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせとして実装できる。
【0041】
以下では、産業用自動化システムのインテグリティ(正当性)を監視するための技術について説明する。インテグリティが侵害される様々な原因があり得る。インテグリティが侵害される原因の一例として、該当する自動化システムへの外部アクセス、特に言えば、不正な外部アクセスである。
【0042】
ここに説明する技術は、自動化システムの動作状態を表す状態データと、自動化システムが周辺に及ぼす周辺影響を表すセンサデータとを組み合わせた監視に基づく。例えば、正常時に予想される周辺影響は、状態データから導出できる。次いで、そのモデリング情報を使用して、実際の挙動を、予想される挙動と比較し、該比較を通してインテグリティの変化を特定できる。
【0043】
ここに説明する技術は、各実施形態において、例えばIT関連の、センサデータ及び状態データを組み合わせて考察し評価することに基づく。センサデータと状態データとの比較から、一貫性又は妥当性の検証を行うことができる。これにより、例えば、センサ又はアクチュエータの不正操作を検出できるため、インテグリティ監視の新しい品質が実現される。さらに、未検知の攻撃については、別々のシステムの複数のインテグリティデータを同時に一貫して不正操作する必要があるとされることから、高度なロバスト性が実現される。さらに、センサ又はアクチュエータの不正操作、ケーブルの不正操作、構成データの不正操作、ファームウェアの不正操作、制御通信の不正操作など、様々な種類のインテグリティ侵害をまとめて検出し処理できる。したがって、様々な種類の自動化システムのインテグリティの侵害を検出できる。このとき特に、ここに説明するインテグリティを監視するための技術は、自動化システムのコンポーネントの特定のITサブ機能に関連するだけでなく、包括的なアプローチにも関連する。
【0044】
ここに説明する技術は、柔軟に規模を拡大できる。拡張性が提供される。要件に応じて、追加のセンサデータと追加の状態データのいずれか又は両方を柔軟に考慮できる。自動化システムの重要な領域を、比較的重要ではない領域よりも多くの労力を費やして監視することもできる。例えば、重要な領域について、例えば、単位時間ごとに、より多くのセンサデータ又は状態データを取得してもよい。
【0045】
ここに説明する技術は、既存の自動化システムに追加装備することも可能である。例えば、適切な追加のセンサを使用してセンサデータを提供してもよい。これにより、基本的に、未保護のオペレーティングソフトウェア、自動化コンポーネント、及び工作機械又は生産システムを引き続き使用できる。概して言えば、外部アクセスに対する保護がまったくないか、又は不十分でしかない自動化システムのコンポーネントを引き続き使用することができる。
【0046】
当該技術に基づいて、例えば、監視の結果を記録するログファイルを生成することが可能である。例えば、タイムスタンプを使用してもよい。その場合には、この情報を使用して、製造された自動化システム製品のバッチをインテグリティの侵害について監視してもよい。例えば、許容できないかそのうえに不正な外部アクセスが原因で、製品の個々のバッチのインテグリティが影響を受ける可能性があるかどうかを、後で検証することもできる。
【0047】
不正な外部アクセスは、多くの場合、自動化システムの不許可の変更が行われることを特徴とする。これは、例えば、システムのサービスモードやコンポーネントへのアクセス権原を持ち、例えば、コンポーネントのファームウェア又は設定データを変更できる、ユーザが行うこともできる。本発明による解決策によれば、サービス技術者によってなされたり、あるいは、保護の弱い又は保護のないサービスインターフェースを経て行われる、システム構成の不許可の変更もまた検出できるので、回復力が向上する。
【0048】
図1は、自動化システム100に関連する一実施形態を概略的に示す。自動化システム100は、複数のコンポーネント101〜106,111〜112,118〜119,120を含む。コンポーネントは、モノのインターネット(Internet of Things:IoT)のデバイスとも称することができる。
【0049】
一例として、コンポーネント101〜106は、周辺影響を引き起こすアクチュエータを実装している。この周辺影響は、例えば、生産ラインの稼動や交通管理システムの制御であり得る。
【0050】
例えば、コンポーネント111〜112は、アクチュエータ101〜106の周辺影響を少なくとも部分的に測定するセンサを表す。
【0051】
例えば、コンポーネント118〜119は、他のコンポーネント101〜106,111〜112のうちの1つ以上を制御する制御機能を実装し、このことは、コンポーネント118〜119がコンピュータハードウェアのリソースを提供できることを意味する。また、中央制御ユニット120も設けられている。
【0052】
図1を参照すると、外部センサ151,152も加えて示されている。これらセンサ151,152がこの例で自動化システム100の一部ではないのは、その他のコンポーネント101〜106,111〜112,118〜120と通信接続していないためである。該センサ151,152は、例えば、インテグリティ監視の目的のために特別に設置され、例えば、物理的に保護して取り付けられ得る。この形態には、当該センサ151,152が、感染した自動化コンポーネントによって通信接続を介し不正操作されないという利点がある。変形形態では、システムから孤立したこれらのセンサに、評価時に異なる重みを与えることができる。
【0053】
図1には、自動化システム100のインテグリティへの外部アクセス90が起こり得ることが示されている。例えば、外部アクセス90の目的は、自動化システム100の機能の侵害である可能性がある。外部アクセス90は、不許可かあるいは不正である可能性がある。
【0054】
以下、当該外部アクセス90を検出し、必要に応じて防御することを可能にする技術を説明する。
【0055】
該当する論理回路は、例えば、制御ユニット160に対し実装できる。制御ユニット160は、図1のシナリオでは、これもまた自動化システム100の一部ではない。例えば、制御部160は、バックエンドシステムの一部である。例えば、制御ユニット160を操作するためにクラウドコンピューティング又はエッジコンピューティングを使用してもよい。
【0056】
図2は、中央制御ユニット120に関する例を示す。一例において、制御ユニット120は、インテグリティ監視を実装するように構成される。制御ユニット120は、例えばマルチコアプロセッサである、少なくとも1つのプロセッサ121を含む。メモリ122が設けられている。プログラムコードは、メモリ122に保存され得る。プロセッサ121は、メモリ122からプログラムコードをロードして実行できる。プログラムコードを実行することにより、中央制御ユニット120に、自動化システム100の状態データを取得したり分析すること、自動化システム100の周辺影響を表すセンサデータを取得したり分析すること、状態データとセンサデータとの比較を実行すること、自動化システムのインテグリティを監視する、例えばインテグリティを侵害するか又は損なうことを目的とした自動化システムへの外部アクセスを監視すること、のうちの1つ以上の過程に関連する動作を実行させることができる。
【0057】
図3は、バックエンド制御ユニット160に関する例を示す。制御ユニット160は、例えばマルチコアプロセッサである少なくとも1つのプロセッサ161を含む。メモリ162が設けられている。プログラムコードは、メモリ162に保存され得る。プロセッサ161は、メモリ162からプログラムコードをロードして実行できる。プログラムコードを実行することにより、制御ユニット160に、自動化システム100の状態データを取得したり分析すること、自動化システムの周辺影響を表すセンサデータを取得したり分析すること、状態データとセンサデータとの比較を実行すること、自動化システムのインテグリティを監視すること、のうちの1つ以上の過程に関連する動作を実行させることができる。
【0058】
図4は、例示する方法のフロー図である。例えば、図4の例による方法は、制御ユニット120又は制御ユニット160により実行され得る。
【0059】
最初にブロック1001において、状態データを取得する。状態データは、自動化システムの動作状態を表す。例えば、状態データは、自動化システムの1つ以上の制御ユニットから取得するか、又は、自動化システムのアクチュエータやセンサから直接取得することができる。
【0060】
例えば、状態データは、自動化システムのオペレーティングソフトウェアの状態を含む。状態データは、自動化システムの複数のアクティブなコンポーネントのコンポーネント登録と、自動化システムの複数のコンポーネントのコンポーネントアクティビティと、自動化システムのオペレーティングソフトウェアのエラー状態と、自動化システムの通信インターフェースのパラメータと、自動化システムのコンピュータハードウェアのリソース割り当てとのうちの少なくとも1つの要素を含み得る。
【0061】
例えば、コンポーネント登録では、自動化システムの中央制御ユニットに登録されているすべてのアクティブなコンポーネントをリスト化する。登録から外された(ログオフ)コンポーネントを同様にリスト化できる。これにより、自動化システムのどのコンポーネントが基本的に周辺影響をもたらす可能性があるのかを把握できる。
【0062】
例えば、コンポーネントアクティビティは、様々なコンポーネントの使用率又はデューティサイクルを示す。例えば、アクチュエータに関連付けてアクティビティの変動幅を表し得る。これにより、自動化システムのアクチュエータに起因する周辺影響の大きさを推定することが可能である。
【0063】
エラー状態は、例えば、オペレーティングソフトウェアのログファイルに対応する。ログファイルには、例えば、プログラムソフトウェアの予期しない中断を保存できる。また、不良なメモリアクセスを保存してもよい。また、防御した外部アクセスを保存してもよい。また、実行中のすべてのプロセスを表してもよい。
【0064】
自動化システムの通信インターフェースのパラメータは、例えば、通信インターフェースのアクティビティ及び可能な通信パートナーを示す。例えば、交信されたデータの量を保存してもよい。例えば、使用された暗号化が示されてもよい。例えば、アクティブな通信接続及び関連アプリケーションを登録してもよい。
【0065】
例えば、コンピュータハードウェアのリソース割り当ては、メモリの使用率、ハードディスクの使用率、又は使用可能なプロセッサの使用率を表す。
【0066】
ブロック1002において、センサデータを取得する。例えば、センサデータは、自動化システムの1つ以上のセンサから取得する。代替的又は追加的に、センサデータを1つ以上の外部センサから取得することも可能である。センサデータは、物理的な測定量又は可観測量を定量化できる。測定量は、自動化システムの周辺影響を表し得る。例えば、次の1つ以上の物理的な可観測量をセンサデータにより表すことができる。温度、交通流、生産された製品、不良品、圧力、体積、速度、位置、電流、電圧、生成された電気エネルギーなど。
【0067】
次いでブロック1003において、ブロック1001に由来する状態データとブロック1002に由来するセンサデータとの比較を行う。例えば、状態データとセンサデータとの間の相関を実行し得る。センサデータと状態データとの融合を実行してもよい。
【0068】
基本的に、ブロック1003の比較の範囲内で、別のデータもまた考慮してもよい。例えば、周辺影響に作用する、自動化システムの1つ以上のアクチュエータの制御データを取得することも可能である。この場合、ブロック1003における比較では、制御データもまた考慮される。
【0069】
比較において、リファレンスからの周辺影響の偏差を考慮することができる。そのリファレンスは、状態データに応じて決定できる。この場合、例えば、決定論的モデル又は経験的モデルを使用してもよい。
【0070】
最終的にはブロック1005において、ブロック1004の監視に応じて、(任意選択的に)対抗措置か警告のいずれか又は両方をトリガできる。例えば、監視に従って、監視のステータスを自動化システムの製品のシリアル番号と関連付けるログファイルを作成してもよい。これによれば、個々の製品又は製品バッチがインテグリティの侵害によって影響を受けた可能性があるかどうかを後で検証できる。監視に従って、ユーザインターフェースを介して警告を発行すること、自動化システムの動作を保護状態へ自動的に移行すること、のどちらか又は両方を行うことも可能である。例えば、保護状態において周辺影響を制限して、人などを傷つけないようにすることが可能である。あり得る外部アクセスを能動的には実行できないように、自動化システム100の通信インターフェースを無効化することも可能である。
【0071】
図5は、自動化システムの様々なデータの融合に関する例を概略的に示す。図5を参照すると、状態データ181と制御データ182のいずれか又は両方が、アクチュエータ101,103,105のサブセットから取得されることが分かる。状態データ181は、各アクチュエータ101,103,105の動作状態を表し得る。制御データ182は、各アクチュエータ101,103,105の周辺影響の種類や大きさを表し得る。
【0072】
さらに、センサ111,112,151,152からセンサデータ183が取得される。センサデータは、自動化システム100の周辺影響を表し得る。
【0073】
図5の例では、さらにハードウェアリソース118,119から状態データ181が取得される。また、中央制御ユニット120から状態データ181が取得される。
【0074】
これらのすべてのデータ181,182,183は、制御ユニット160に提供される。この制御ユニット160により、データの融合、すなわち、様々なデータ181,182,183間の比較を実行できる。この比較に基づいて、自動化システムのインテグリティを監視できる。これについて、図6にも関連して示されている。
【0075】
図6は、様々なデータ181,182,183の比較に関する例を示す。図6は、特に、インテグリティの監視に関して、例えば、制御ユニット160又は制御ユニット120の機能を示し、不許可あるいは不正な外部アクセス90によるインテグリティの侵害を検出できる。
【0076】
図6から、モデル250が比較のために使用されることが分かる。その結果として、結果信号189が得られる。例えば、結果信号189は、インテグリティの侵害と外部アクセス90の有無のいずれか又は両方を示すことができる。結果信号189は、対応する確率を示してもよい。結果信号は、警告と対抗措置のいずれか又は両方をトリガできる。
【0077】
一例では、決定論的モデル250を使用できる。決定論的モデル250は、事前に決定でき、例えば、自動化システム100の物理的関係やアーキテクチャに基づいて設定できる。例えば、モデル250は、状態データ181に応じてセンサデータの妥当性範囲を示すことが可能である。この場合には、比較の中で、センサデータが当該妥当性範囲内の周辺影響を示しているかどうかを確認でき、さらには、インテグリティの侵害を想定することができる。このような技術について、図7に関連して説明する。
【0078】
図7は、状態データ181とセンサデータ183との比較に関する例を示す。例えば、相当する機能をモデル250により実装してもよい。
【0079】
図7の例では、状態データ181は、時間tの関数としてアクチュエータのアクティビティ301を示す。図7の例では、アクチュエータのアクティビティ301は、2つの値の間で変動する(実線)。
【0080】
図7には、アクティビティ301からモデル250に基づいて得られたリファレンス310(点線)も示されている。対応する妥当性範囲311にハッチングが施されている。妥当性範囲311からの偏差は、例えば、異常検出に関連付けて検出される。
【0081】
図7では、センサデータ183によって測定された周辺影響306の時間プロファイル、例えば、対応するアクチュエータの周辺における温度、もさらに示されている。ある時点から、一方の測定された周辺影響306と他方のリファレンス310との間の間隔312が妥当性範囲311から外れることがわかる。そこでは、例えば、外部アクセス90に起因するインテグリティの侵害を想定することができる。
【0082】
対応するモデル250は、例えば機械又はシステムの設計で作成されたデジタルツインシミュレーションモデルによって、決定論的に導出できるものだけではない。機械学習の技術もまた使用してもよい。これは、図8に関連して説明される。
【0083】
図8は、リファレンス310又はモデル250の決定に関する例を示す。図8では、動作段階191においてデータ181,182,183がシステム100又はセンサ151,152によって取得されることを示している。インテグリティの監視は、動作段階中に行われる。
【0084】
2つの学習段階192,193中に、リファレンス状態データ181A,181B、及びリファレンスセンサデータ183A,183Bが取得される。任意選択的に、リファレンス制御データ182A,182Bも取得できる。一般に、必要な学習段階は1つだけである。
【0085】
例えば、学習段階193は、自動化システム100の提供開始に関連付けて定義されてもよい。そのときに、監視する動作が実行される。学習段階192は、自動化システム100の通常の動作に対応してもよい。すなわち、履歴データ181A,182A,183Aを示してもよい。
【0086】
次いで、これらのリファレンスデータ181A,182A,183A,181B,182B,183B間の比較に基づいて、経験的モデル250を決定することが可能である。この場合、リファレンス310は、特に通常動作に対する偏差として決定できる。決定論的モデルの入り組んだ決定は行われない。さらに、データの様々なソースを柔軟に考慮できるため、モデル250の拡張性が向上する。例えば、モデル250の経験的決定は、機械学習の技術によるものであり得る。
【0087】
学習段階192,193に関する期間におけるリファレンスデータのこれら定義に対して代替的に又は追加的に、別の自動化システムの動作からリファレンス310を導出することも可能である。対応する技術は、図9に関連して説明される。
【0088】
図9は、リファレンス310とモデル250の決定に関する例を示す。図9では、自動化システム100の動作を監視することに加えて、別の自動化システム100’の動作も監視できることが示されている。該当するリファレンス状態データ181’、リファレンス制御データ182’、及びリファレンスセンサデータ183’が、別の自動化システム100’から取得される。このようにして、リファレンス310を決定できる。
【0089】
当然ながら、本発明の以上の実施形態や側面の特徴を互いに組み合わせることができる。特に、その特徴は、本発明の範囲から逸脱することなく、記載された組み合わせに加えて他の組み合わせ又はそれ自体で使用され得る。
【0090】
例えば、ここに説明した技術は、他のシステム、例えば一般的に言えば、自律機械などのセンサアクチュエータシステムなどのインテグリティを監視するために使用できる。
【0091】
外部アクセスに起因する自動化システムのインテグリティの侵害に関連付けて様々な例を説明したが、別のいくつかの例では、別のトリガイベントに起因するインテグリティの侵害を監視することも可能である。
図1
図2
図3
図4
図5
図6
図7
図8
図9