(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024176100
(43)【公開日】2024-12-19
(54)【発明の名称】フィールド機器認証学習装置、フィールド機器認証推論装置、フィールド機器認証学習方法、フィールド機器認証推論方法及びプログラム
(51)【国際特許分類】
G05B 19/05 20060101AFI20241212BHJP
G05B 23/02 20060101ALI20241212BHJP
【FI】
G05B19/05 D
G05B23/02 Z
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023094356
(22)【出願日】2023-06-07
(71)【出願人】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】100095407
【弁理士】
【氏名又は名称】木村 満
(74)【代理人】
【識別番号】100131152
【弁理士】
【氏名又は名称】八島 耕司
(74)【代理人】
【識別番号】100147924
【弁理士】
【氏名又は名称】美恵 英樹
(74)【代理人】
【識別番号】100148149
【弁理士】
【氏名又は名称】渡邉 幸男
(74)【代理人】
【識別番号】100181618
【弁理士】
【氏名又は名称】宮脇 良平
(74)【代理人】
【識別番号】100174388
【弁理士】
【氏名又は名称】龍竹 史朗
(72)【発明者】
【氏名】荒木 敬夫
【テーマコード(参考)】
3C223
5H220
【Fターム(参考)】
3C223AA11
3C223BA03
3C223CC02
3C223DD03
3C223EB04
3C223FF03
3C223FF12
3C223FF13
3C223FF22
3C223FF26
3C223FF27
3C223GG01
3C223HH02
5H220AA06
5H220BB10
5H220CC09
5H220CX09
5H220HH04
5H220JJ12
5H220JJ26
5H220KK03
5H220LL04
5H220MM04
(57)【要約】
【課題】フィールド機器を認証し、不正機器への置き換え、機器不正改造によるなりすまし・データ捏造を防止する。
【解決手段】フィールド機器認証学習装置は、入出力ユニット5の入出力端子にフィールド機器2が接続された制御システム1におけるフィールド機器2の認証を学習するフィールド機器認証学習装置であって、フィールド機器2が発信する時系列信号を学習用データとして取得するデータ取得部と、学習用データを用いて、時系列信号から、制御システム1に接続されたフィールド機器2が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するモデル生成部と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を学習するフィールド機器認証学習装置であって、
前記フィールド機器が発信する時系列信号を学習用データとして取得するデータ取得部と、
前記学習用データを用いて、前記時系列信号から、前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するモデル生成部と、
を備えるフィールド機器認証学習装置。
【請求項2】
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を学習するフィールド機器認証学習装置であって、
前記フィールド機器に取り付けられたセンサからの検出信号を学習用データとして取得するデータ取得部と、
前記学習用データを用いて、前記検出信号から、前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するモデル生成部と、
を備えるフィールド機器認証学習装置。
【請求項3】
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を学習するフィールド機器認証学習装置であって、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号を学習用データとして取得するデータ取得部と、
前記学習用データを用いて、前記時系列信号及び前記検出信号から、前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するモデル生成部と、
を備えるフィールド機器認証学習装置。
【請求項4】
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を行うフィールド機器認証推論装置であって、
前記フィールド機器が発信する時系列信号を取得するデータ取得部と、
前記時系列信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するための学習済モデルを用いて、前記時系列信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果の情報を出力する推論部と、
を備えるフィールド機器認証推論装置。
【請求項5】
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を行うフィールド機器認証推論装置であって、
前記フィールド機器に取り付けられたセンサからの検出信号を取得するデータ取得部と、
前記検出信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するための学習済モデルを用いて、前記検出信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果の情報を出力する推論部と、
を備えるフィールド機器認証推論装置。
【請求項6】
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を行うフィールド機器認証推論装置であって、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号を取得するデータ取得部と、
前記時系列信号及び前記検出信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するための学習済モデルを用いて、前記時系列信号及び前記検出信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果の情報を出力する推論部と、
を備えるフィールド機器認証推論装置。
【請求項7】
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を学習するフィールド機器認証学習方法であって、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号の少なくとも一方を学習用データとして取得するステップと、
前記学習用データを用いて、前記時系列信号及び前記検出信号の少なくとも一方から、前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するステップと、
を備えるフィールド機器認証学習方法。
【請求項8】
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を行うフィールド機器認証推論方法であって、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号の少なくとも一方を取得するステップと、
前記時系列信号及び前記検出信号の少なくとも一方から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するための学習済モデルを用いて、前記時系列信号及び前記検出信号の少なくとも一方から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するステップと、
を備えるフィールド機器認証推論方法。
【請求項9】
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を学習するコンピュータを、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号の少なくとも一方を学習用データとして取得するデータ取得部、
前記学習用データを用いて、前記時系列信号及び前記検出信号の少なくとも一方から、前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するモデル生成部、
として機能させるプログラム。
【請求項10】
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を行うコンピュータを、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号の少なくとも一方を取得するデータ取得部、
前記時系列信号及び前記検出信号の少なくとも一方から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するための学習済モデルを用いて、前記時系列信号及び前記検出信号の少なくとも一方から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果の情報を出力する推論部、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、フィールド機器認証学習装置、フィールド機器認証推論装置、フィールド機器認証学習方法、フィールド機器認証推論方法及びプログラムに関する。
【背景技術】
【0002】
ファクトリーオートメーションの分野では、従来から、流量計、温度計等のフィールド機器、各種センサ、コントローラ等の多数の機器が制御ネットワーク・制御IO配線で接続される形態で各種制御が行われてきた。制御ネットワーク・制御IO配線においては、有線LAN(Local Area Network)、無線LAN、デジタル接点、アナログ信号を含む様々な形態の信号がEthernet(登録商標)、ハードワイヤ等を介してフィールド機器、コントローラ間で送受信される。近年、ファクトリーオートメーションの分野において、外部からの不正アクセスによる生産停止・情報漏洩、内部のデータ捏造が問題となっており、制御ネットワークのセキュリティ対策の必要性が高まっている。外部からの不正アクセスに対しては、ファイアウォールの設置、制御ネットワークと外部ネットワークの分離等の対策が適用できる。また、制御ネットワーク内部においては、フィールド機器が正当な機器から別の不正な機器へ置き換えられたり、正当な機器が不正改造される等してデータ捏造されるケースがあり、これらデータ捏造を防ぐために、機器認証により不正機器の制御ネットワーク接続を予防する対策が提案されてきた。
【0003】
例えば、特許文献1は、フィールド機器が無線ネットワークに参加するために、機器に予めセキュリティ情報とネットワーク情報を設定するプロビジョニング作業を行うプロビジョニング装置を開示する。プロビジョニング装置は、新たに無線ネットワークに参加しようとするフィールド機器の固有情報(機器タグ、デバイス識別情報、ベンダーID、機種)と当該フィールド機器のプロビジョニングのための設定情報(セキュリティ情報、ネットワーク情報)とを関連付けたリストを予め記憶する。プロビジョニング装置は、フィールド機器から無線通信により当該フィールド機器の固有情報を取得し、リストの中から、フィールド機器から取得した固有情報に関連付けられた設定情報を抽出し、抽出された設定情報を無線通信によりフィールド機器に送信することにより、フィールド機器のプロビジョニングを実行する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記特許文献1に開示の技術は、フィールド機器が当該フィールド機器を識別するための固有情報を内蔵し、当該固有情報を出力可能なことを前提としており、接点、アナログ電流・電圧、抵抗値等の信号しか出力できない、通信機能を有していないシンプルな構造のフィールド機器について、不正機器への置き換え、機器不正改造によるなりすまし・データ捏造を予防することはできない。当該シンプルな構造のフィールド機器を、フィールド機器を識別するための固有情報を内蔵してデータ出力可能なフィールド機器に置き換えるためには、フィールド機器の買い換えの費用が発生するだけでなく、当該フィールド機器を用いた制御の精度が問題ないか再度検証を行う必要がある。また、フィールド機器を識別するための固有情報を保有するフィールド機器は、Ethernet、制御ネットワーク等の通信によりデータを送受信するため、接点信号、アナログ信号等の出力に比べて応答速度が遅いため、制御の精度が確保できない可能性がある。そのため、フィールド機器を識別するための固有情報を有していないフィールド機器を、当該固有情報を保有するフィールド機器に置き換えることが現実的でないケースが存在する。
【0006】
本開示は、上記の事情に鑑みてなされたものであり、フィールド機器を識別するための固有情報を内蔵・出力できない場合、フィールド機器が通信機能を有していない場合においても、フィールド機器を認証し、不正機器への置き換え、機器不正改造によるなりすまし・データ捏造を防止することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本開示のフィールド機器認証学習装置は、入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおけるフィールド機器の認証を学習するフィールド機器認証学習装置であって、フィールド機器が発信する時系列信号を学習用データとして取得するデータ取得部と、学習用データを用いて、時系列信号から、制御システムに接続されたフィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するモデル生成部と、を備える。
【発明の効果】
【0008】
本開示によれば、フィールド機器が発信する時系列信号から、制御システムに接続されたフィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論することから、フィールド機器を識別するための固有情報を内蔵・出力できない場合、フィールド機器が通信機能を有していない場合においても、フィールド機器を認証し、不正機器への置き換え、機器不正改造によるなりすまし・データ捏造を防止する。
【図面の簡単な説明】
【0009】
【
図1】本開示の実施の形態1に係る制御システムの概略を示す図
【
図2】本開示の実施の形態1に係る機器認証装置のハードウェア構成を示す図
【
図3】本開示の実施の形態1に係る機器認証装置の学習装置としての機能ブロックを模式的に示す図
【
図5】本開示の実施の形態1に係る機器認証装置の推論装置としての機能ブロックを模式的に示す図
【
図6】データを得るための処理を示すフローチャート
【
図7】本開示の実施の形態2に係る制御システムの概略を示す図
【
図8】本開示の実施の形態2に係る機器認証装置の学習装置としての機能ブロックを模式的に示す図
【
図9】本開示の実施の形態2に係る機器認証装置の推論装置としての機能ブロックを模式的に示す図
【
図10】本開示の実施の形態3に係る制御システムの概略を示す図
【
図11】本開示の実施の形態3に係る機器認証装置の学習装置としての機能ブロックを模式的に示す図
【
図12】本開示の実施の形態3に係る機器認証装置の推論装置としての機能ブロックを模式的に示す図
【発明を実施するための形態】
【0010】
以下、本開示の実施の形態に係るフィールド機器認証学習装置、フィールド機器認証推論装置、フィールド機器認証学習方法、フィールド機器認証推論方法及びプログラムについて図面を参照して詳細に説明する。なお、図中同一または相当する部分には同じ符号を付す。
【0011】
(実施の形態1)
図1は、制御システム1の概略を示す図である。制御システム1は、制御対象機器である1~N台の複数のフィールド機器2、制御プログラムを実行して制御対象機器を制御するPLC3、を備えている。
【0012】
PLC3は、各フィールド機器2と通信可能に接続されたプログラマブルロジックコントローラである。PLC3は、制御プログラムを読み出して実行するCPU(Central Processing Unit)ユニット4と、フィールド機器2と接続される入出力ユニット5と、を備えている。CPUユニット4と入出力ユニット5とは、各ユニットを電気的に接続するベースボードを介して接続されるか、または、ベースボードを介さずに各ユニットに備えられているユニット同士を電気的に接続するコネクタによって接続されてもよい。入出力ユニット5は、例えば、I/O入出力ユニット、アナログユニット、カウンタユニット、ネットワークユニット、等のPLC3を用いてフィールド機器2を制御する際に、信号を入力及び出力の少なくとも一方を行うことが可能なユニットである。
【0013】
フィールド機器2は、入出力ユニット5の入出力端子に割り付けられる機器であり、例えば入力機器であるセンサ、出力機器であるモータ、アクチュエータ等である。PLC3にて実行されるプログラムに基づいて各フィールド機器2が協働することにより制御システム1が実現される。フィールド機器2は、制御ネットワーク・制御IO配線で入出力ユニット5の入出力端子に接続されている。当該制御システム1は、例えば工場内で稼働する製品生産システムであり、フィールド機器2は、工場に設置され、ワークに様々な加工を施し、製品、部品などを生産する設備装置であり、PLC3は、制御用のプログラムを実行することにより、各フィールド機器2を制御し、ワークを加工させる。
【0014】
また、フィールド機器2は、機器認証装置6に接続されている。機器認証装置6は、フィールド機器2から入出力ユニット5の入出力端子へと発信される信号を取得する。機器認証装置6は、フィールド機器2からの信号の入力を基に、N台のフィールド機器2のそれぞれについて、正当な機器であるか、または、不正な機器であるかを判定した結果を出力する。
【0015】
図2は、機器認証装置6のハードウェア構成を示す。機器認証装置6は、制御部11と、記憶部12と、ユーザインタフェース13と、表示部14と、通信部15と、を備える。これら各部は通信バスを介して接続されている。
【0016】
制御部11は、CPU、ROM(Read Only Memory)及びRAM(Random Access Memory)を備える。CPUは、中央処理装置、中央演算装置、プロセッサ、マイクロプロセッサ、マイクロコンピュータ、DSP(Digital Signal Processor)等とも呼び、機器認証装置6の制御に係る処理及び演算を実行する中央演算処理部として機能する。制御部11において、CPUは、ROMに格納されているプログラム及びデータを読み出し、RAMをワークエリアとして用いて、機器認証装置6を統括制御する。
【0017】
記憶部12は、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、ハードディスク等の不揮発性のメモリを備えており、いわゆる二次記憶装置又は補助記憶装置としての役割を担う。記憶部12は、制御部11が各種処理を行うために使用するプログラム及びデータを記憶する。また、記憶部12は、制御部11が各種処理を行うことにより生成又は取得するデータを記憶する。
【0018】
ユーザインタフェース13は、キーボード、マウス、タッチパネル等の入力部である。表示部14は、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を表示する。
【0019】
通信部15は、機器認証装置6がネットワークを介して外部の装置と通信するための通信インタフェースを備える。通信部15は、ネットワークを介して、PLC3と通信を行う。
【0020】
機器認証装置6は、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定するフィールド機器2の認証を学習する学習装置20として機能する。
図3は、機器認証装置6の学習装置20としての機能ブロックを模式的に示す図である。機器認証学習装置である学習装置20は、データ取得部21、モデル生成部22、及び学習済モデル記憶部23を備える。
【0021】
データ取得部21は、各フィールド機器2から入出力ユニット5の入出力端子へと発信される時系列信号を学習用データとして取得する。
【0022】
フィールド機器2が発信する信号は、個々のフィールド機器2によって異なる特徴を有しており、この特徴量を抽出し、当該特徴量から各フィールド機器2の個体差を認識して、フィールド機器2を識別・認証する。
【0023】
モデル生成部22は、データ取得部21から出力されるフィールド機器2から発信される時系列信号に基づいて作成される学習用データに基づいて、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定するフィールド機器2の識別・認証を学習する。すなわち、フィールド機器2から発信される時系列信号からフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を推論する学習済モデルを生成する。
【0024】
モデル生成部22が用いる学習アルゴリズムは教師あり学習、教師なし学習、強化学習等の公知のアルゴリズムを用いることができる。一例として、教師なし学習 であるK平均法(クラスタリング)を適用した場合について説明する。教師なし学習とは、結果(ラベル)を含まない学習用データを学習装置20に与えることで、それらの学習用データにある特徴を学習する手法をいう。
【0025】
モデル生成部22は、例えば、K平均法によるグループ分け手法に従って、いわゆる教師なし学習により、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を学習する。K平均法とは、非階層型クラスタリングのアルゴリズムであり、クラスタの平均を用い、与えられたクラスタ数をk個に分類する手法である。具体的に、K平均法は以下のような流れで処理される。まず、各データxiに対してランダムにクラスタを割り振る。次いで、割り振ったデータをもとに各クラスタの中心Vjを計算する。次いで、各xiと各Vjとの距離を求め、xiを最も近い中心のクラスタに割り当て直す。そして、上記の処理で全てのxiのクラスタの割り当てが変化しなかった場合、あるいは変化量が事前に設定した一定の閾値を下回った場合に、収束したと判断して処理を終了する。
【0026】
本開示においては、データ取得部21によって取得されるフィールド機器2から発信される時系列信号に基づいて作成される学習用データに従って、いわゆる教師なし学習により、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を学習する。モデル生成部22は、以上のような学習を実行することで学習済モデルを生成し、出力する。学習済モデル記憶部23は、モデル生成部から出力された学習済モデルを記憶する。
【0027】
次に、
図4を用いて、学習装置20が学習する処理について説明する。
図4は学習装置20の学習処理に関するフローチャートである。
【0028】
ステップS101において、データ取得部21はフィールド機器2から発信される時系列信号を取得する。ステップS102において、モデル生成部22は、データ取得部21によって取得されるフィールド機器2から発信される時系列信号に基づいて作成される学習用データに従って、いわゆる教師なし学習により、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を学習し、学習済モデルを生成する。ステップS103において、学習済モデル記憶部23は、モデル生成部22が生成した学習済モデルを記憶する。
【0029】
機器認証装置6は、フィールド機器2が正当な機器であるか、または、不正な機器であるかの判定結果を推論するフィールド機器2の識別・認証に関する推論装置として機能する。
図5は、機器認証装置6の推論装置30としての機能ブロックを模式的に示す図である。
【0030】
機器認証推論装置である推論装置30は、データ取得部31、推論部32、及び学習済モデル記憶部23を備える。データ取得部31はフィールド機器2から発信される時系列信号を取得する。推論部32は、学習済モデル記憶部23に記憶された学習済モデルを利用して得られるフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を推論する。すなわち、この学習済モデルにデータ取得部31で取得したフィールド機器2から発信される時系列信号を入力することで、フィールド機器2から発信される時系列信号がいずれのクラスタに属するかを推論し、推論結果をフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果として出力することができる。
【0031】
なお、本実施の形態では、機器認証装置6のモデル生成部22で学習した学習済モデルを用いてフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を出力するものとして説明したが、他の機器認証装置6のモデル生成部22である外部から学習済モデルを取得し、この学習済モデルに基づいてフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を出力するようにしてもよい。このようにして、推論部32は、フィールド機器2から発信される時系列信号に基づいて得られたフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果であるフィールド機器2の識別・認証結果を出力する。
【0032】
次に、
図6を用いて、推論装置30を使ってフィールド機器2の識別・認証結果であるデータを得るための処理を説明する。
【0033】
ステップS201において、データ取得部31はフィールド機器2から発信される時系列信号を取得する。ステップS202において、推論部32は学習済モデル記憶部23に記憶された学習済モデルに、ステップS201で取得したフィールド機器2から発信される時系列信号を入力し、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を得る。ステップS203において、推論部32は、学習済モデルにより得られたフィールド機器2の識別・認証結果を出力する。これにより、制御ネットワーク・制御IO配線に不正な機器が接続されることによるデータ捏造を予防することができる。
【0034】
なお、本実施の形態では、モデル生成部22及び推論部32が用いる学習アルゴリズムに教師なし学習を適用した場合について説明したが、これに限られるものではない。学習アルゴリズムについては、教師なし学習以外にも、強化学習、教師あり学習、又は半教師あり学習等を適用することも可能である。
【0035】
また、学習装置20に用いられる学習アルゴリズムとしては、特徴量そのものの抽出を学習する、深層学習(Deep Learning)を用いることもでき、他の公知の方法でもよい。その際、抽出される特徴量は、フィールド機器2が発信する信号に含まれる、制御に影響を与えないレベルで重畳されている微弱な信号の波形、信号の立ち上がり、立ち下がり時の波形等により、フィールド機器2の個体差認識が可能な特徴が反映される。フィールド機器2が長時間使用されることにより徐々に劣化して、発信する信号、フィールド機器2に取り付けられたセンサの検出値が変化することが想定される場合には、学習を定期的にやり直すこともできる。
【0036】
本実施の形態における教師なし学習を実現する場合、上記のk平均法による非階層型クラスタリングに限らず、クラスタリング可能な他の公知の方法であればよい。例えば、最短距離法等の階層型クラスタリングであってもよい。
【0037】
本実施の形態において、学習装置20及び推論装置30は、例えば、ネットワークを介して制御システム1に接続されてもよい。また、学習装置20及び推論装置30は、フィールド機器認証装置とは別個の装置であってもよい。また、学習装置20及び推論装置30は、PLC3に内蔵されていてもよい。さらに、学習装置20及び推論装置30は、クラウドサーバ上に存在していてもよい。また、モデル生成部22は、複数の制御システム1に対して作成される学習用データに従って、フィールド機器2の識別・認証結果を学習するようにしてもよい。なお、モデル生成部22は、同一のエリアで使用される複数の制御システム1から学習用データを取得してもよいし、異なるエリアで独立して動作する複数の制御システム1から収集される学習用データを利用してフィールド機器2の識別・認証結果を学習してもよい。また、学習用データを収集する制御システム1を途中で対象に追加したり、対象から除去したりすることも可能である。さらに、ある制御システム1に関してフィールド機器2の識別・認証結果を学習した学習装置20を、これとは別の制御システム1に適用し、当該別の制御システム1に関してフィールド機器2の識別・認証結果を再学習して更新するようにしてもよい。
【0038】
(実施の形態2)
実施の形態1では、フィールド機器2から入出力ユニット5の入出力端子へと発信される時系列信号の特徴に基づいて機器の個体差を識別していたが、これに代えて、機器認証装置6への入力として、フィールド機器2の各機器に取り付けられたセンサが検出した信号を入力し、この入力を基に、N台の複数のフィールド機器2のそれぞれについて、正当な機器であるか、または、不正な機器であるかを判定した結果を出力する。
【0039】
図7は、実施の形態2における制御システム1の概略を示す図である。制御システム1は、制御対象機器である1~N台の複数のフィールド機器2、制御プログラムを実行して制御対象機器を制御するPLC3、を備えている。
【0040】
実施の形態1と異なる点は、フィールド機器2は、機器認証装置6に接続されておらず、機器認証装置6は、フィールド機器2から入出力ユニット5の入出力端子へと発信される信号を取得していない点である。これに代えて、フィールド機器2には、センサ40が取り付けられており、センサ40からの出力が機器認証装置6に接続されている。センサ40は、フィールド機器2の振動、温度、変位、画像等を検出するために、単独あるいは2つ以上の複数をフィールド機器2に取り付けたセンサであり、各フィールド機器2の個体差を識別するのに十分な情報を検出可能なセンサが選定される。なお、センサ40はフィールド機器2に取り付けされない形態で、フィールド機器2に対してセンシングを行うセンサを用いることもできる。機器認証装置6は、センサ40からの検出信号を取得し、このセンサ40からの検出信号を基に、N台のフィールド機器2のそれぞれについて、正当な機器であるか、または、不正な機器であるかを判定した結果を出力する。
【0041】
図8は、実施の形態2における機器認証装置6の学習装置50としての機能ブロックを模式的に示す図である。
【0042】
機器認証学習装置である学習装置50は、
図3と同様に、データ取得部51、モデル生成部52、及び学習済モデル記憶部53を備える。データ取得部51は、各フィールド機器2に取り付けたセンサ40からの検出信号を学習用データとして取得する。フィールド機器2に取り付けたセンサ40からの検出信号は、個々のフィールド機器2によって異なる特徴を有しており、この特徴量を抽出し、当該特徴量から各フィールド機器2の個体差を認識して、フィールド機器2を識別・認証する。
【0043】
モデル生成部52は、データ取得部51から出力されるフィールド機器2に取り付けたセンサ40からの検出信号に基づいて作成される学習用データに基づいて、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定するフィールド機器2の識別・認証を学習する。すなわち、フィールド機器2に取り付けたセンサ40からの検出信号からフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を推論する学習済モデルを生成する。モデル生成部52は、例えば、K平均法によるグループ分け手法に従って、いわゆる教師なし学習により、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を学習する。モデル生成部52が、以上のような学習を実行することで学習済モデルを生成すると、学習済モデル記憶部53は、モデル生成部52から出力された学習済モデルを記憶する。
【0044】
次に、実施の形態2における学習装置50が学習する処理について、実施の形態1における学習装置20の学習処理に関するフローチャートと同じく、
図4を用いて説明する。
【0045】
ステップS101において、データ取得部51はフィールド機器2に取り付けたセンサ40からの検出信号を取得する。ステップS102において、モデル生成部52は、データ取得部51によって取得されるフィールド機器2に取り付けたセンサ40からの検出信号に基づいて作成される学習用データに従って、いわゆる教師なし学習により、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を学習し、学習済モデルを生成する。ステップS103において、学習済モデル記憶部53は、モデル生成部52が生成した学習済モデルを記憶する。
【0046】
図9は、実施の形態2における機器認証装置6の推論装置60としての機能ブロックを模式的に示す図である。
【0047】
機器認証推論装置である推論装置60は、
図5と同様に、データ取得部61、推論部62、及び学習済モデル記憶部53を備える。データ取得部61はフィールド機器2に取り付けたセンサ40からの検出信号を取得する。なお、複数のフィールド機器2に取り付けたセンサ40からの検出信号を同時に取得するものとしたが、それぞれのセンサ40からの検出信号を関連づけて入力できれば良く、それぞれ別のタイミングで取得しても良い。
【0048】
推論部62は、学習済モデル記憶部53に記憶された学習済モデルを利用して得られるフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を推論する。すなわち、この学習済モデルにデータ取得部61で取得したフィールド機器2に取り付けたセンサ40からの検出信号を入力することで、フィールド機器2に取り付けたセンサ40からの検出信号がいずれのクラスタに属するかを推論し、推論結果をフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果として出力することができる。
【0049】
なお、本実施の形態では、機器認証装置6のモデル生成部52で学習した学習済モデルを用いてフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を出力するものとして説明したが、他の機器認証装置6のモデル生成部52である外部から学習済モデルを取得し、この学習済モデルに基づいてフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を出力するようにしてもよい。このようにして、推論部62は、フィールド機器2に取り付けたセンサ40からの検出信号に基づいて得られたフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果であるフィールド機器2の識別・認証結果を出力する。
【0050】
次に、実施の形態2における推論装置60を使ってフィールド機器2の識別・認証結果であるデータを得るための処理について、実施の形態1における推論装置30のデータを得るための処理に関するフローチャートと同じく、
図6を用いて説明する。
【0051】
ステップS201において、データ取得部61はフィールド機器2に取り付けたセンサ40からの検出信号を取得する。ステップS202において、推論部62は学習済モデル記憶部53に記憶された学習済モデルに、ステップS201で取得したフィールド機器2に取り付けたセンサ40からの検出信号を入力し、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を得る。ステップS203において、推論部62は、学習済モデルにより得られたフィールド機器2の識別・認証結果を出力する。これにより、制御ネットワーク・制御IO配線に不正な機器が接続されることによるデータ捏造を予防することができる。なお、本実施の形態では、モデル生成部52及び推論部62が用いる学習アルゴリズムに教師なし学習を適用した場合について説明したが、これに限られるものではない。学習アルゴリズムについては、教師なし学習以外にも、強化学習、教師あり学習、又は半教師あり学習等を適用することも可能である。
【0052】
(実施の形態3)
実施の形態1では、フィールド機器2から入出力ユニット5の入出力端子へと発信される時系列信号の特徴に基づいて機器の個体差を識別し、実施の形態2では、これに代えて、機器認証装置6への入力として、フィールド機器2に取り付けられたセンサ40の検出信号を入力し、センサ40の検出信号の特徴に基づいて機器の個体差を識別した。実施の形態3では、フィールド機器2から発信される時系列信号の特徴に加えて、フィールド機器2に取り付けられたセンサ40の検出信号の特徴に基づいて機器の個体差を識別する。これにより、より正確に機器の個体差の識別が可能となり、フィールド機器2について、正当な機器であるか、または、不正な機器であるかの正確な判定が可能となる。
【0053】
図10は、実施の形態3における制御システム1の概略を示す図である。制御システム1は、制御対象機器である1~N台の複数のフィールド機器2、制御プログラムを実行して制御対象機器を制御するPLC3、を備えている。
【0054】
フィールド機器2は、機器認証装置6に接続され、機器認証装置6は、フィールド機器2から発信される信号を取得する。さらに、フィールド機器2には、センサ40が取り付けられており、センサ40からの出力が機器認証装置6に接続されている。センサ40は、フィールド機器2の振動、温度、変位、画像等を検出するために、単独あるいは2つ以上の複数をフィールド機器2に取り付けたセンサであり、各フィールド機器2の個体差を識別するのに十分な情報を検出可能なセンサが選定される。
【0055】
機器認証装置6は、フィールド機器2から発信される信号及びセンサ40からの検出信号を取得し、取得された両信号を基に、N台のフィールド機器2のそれぞれについて、正当な機器であるか、または、不正な機器であるかを判定した結果を出力する。
【0056】
図11は、実施の形態3における機器認証装置6の学習装置70としての機能ブロックを模式的に示す図である。
【0057】
機器認証学習装置である学習装置70は、
図3と同様に、データ取得部71、モデル生成部72、及び学習済モデル記憶部73を備える。データ取得部71は、フィールド機器2から発信される信号及びフィールド機器2に取り付けたセンサ40からの検出信号を学習用データとして取得する。フィールド機器2が発信する信号は、個々のフィールド機器2によって異なる特徴を有している。また、フィールド機器2に取り付けたセンサ40からの検出信号は、個々のフィールド機器2によって異なる特徴を有している。そこで、両信号を組み合わせ、特徴量を抽出し、当該特徴量から各フィールド機器2の個体差を認識して、フィールド機器2を識別・認証する。
【0058】
モデル生成部72は、データ取得部71から出力される、フィールド機器2から発信される信号及びフィールド機器2に取り付けたセンサ40からの検出信号に基づいて作成される学習用データに基づいて、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定するフィールド機器2の識別・認証を学習する。すなわち、フィールド機器2から発信される時系列信号及びフィールド機器2に取り付けたセンサ40からの検出信号の組み合わせからフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を推論する学習済モデルを生成する。モデル生成部72は、例えば、K平均法によるグループ分け手法に従って、いわゆる教師なし学習により、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を学習する。モデル生成部72が、以上のような学習を実行することで学習済モデルを生成すると、学習済モデル記憶部73は、モデル生成部72から出力された学習済モデルを記憶する。
【0059】
次に、実施の形態3における学習装置70が学習する処理について、実施の形態1における学習装置20の学習処理に関するフローチャートと同じく、
図4を用いて説明する。
【0060】
ステップS101において、データ取得部71は、フィールド機器2から発信される時系列信号及びフィールド機器2に取り付けたセンサ40からの検出信号を取得する。なお、フィールド機器2から発信される時系列信号及びフィールド機器2に取り付けたセンサ40からの検出信号を同時に取得するものとしたが、両信号を関連づけて入力できれば良く、両信号のデータをそれぞれ別のタイミングで取得しても良い。ステップS102において、モデル生成部72は、データ取得部71によって取得される、フィールド機器2から発信される時系列信号及びフィールド機器2に取り付けたセンサ40からの検出信号の組み合わせに基づいて作成される学習用データに従って、いわゆる教師なし学習により、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を学習し、学習済モデルを生成する。ステップS103において、学習済モデル記憶部73は、モデル生成部72が生成した学習済モデルを記憶する。
【0061】
図12は、実施の形態3における機器認証装置6の推論装置80としての機能ブロックを模式的に示す図である。
【0062】
機器認証推論装置である推論装置80は、
図5と同様に、データ取得部81、推論部82、及び学習済モデル記憶部73を備える。データ取得部81は、フィールド機器2から発信される時系列信号及びフィールド機器2に取り付けたセンサ40からの検出信号を取得する。推論部82は、学習済モデル記憶部73に記憶された学習済モデルを利用して得られるフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を推論する。すなわち、この学習済モデルにデータ取得部81で取得した、フィールド機器2から発信される時系列信号及びフィールド機器2に取り付けたセンサ40からの検出信号を入力することで、フィールド機器2から発信される時系列信号及びフィールド機器2に取り付けたセンサ40からの検出信号がいずれのクラスタに属するかを推論し、推論結果をフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果として出力することができる。なお、本実施の形態では、機器認証装置6のモデル生成部72で学習した学習済モデルを用いてフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を出力するものとして説明したが、他の機器認証装置6のモデル生成部72である外部から学習済モデルを取得し、この学習済モデルに基づいてフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を出力するようにしてもよい。このようにして、推論部82は、フィールド機器2から発信される時系列信号及びフィールド機器2に取り付けたセンサ40からの検出信号の組み合わせに基づいて得られたフィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果であるフィールド機器2の識別・認証結果を出力する。
【0063】
次に、実施の形態3における推論装置80を使ってフィールド機器2の識別・認証結果であるデータを得るための処理について、実施の形態1における推論装置30のデータを得るための処理に関するフローチャートと同じく、
図6を用いて説明する。
【0064】
ステップS201において、データ取得部81は、フィールド機器2から発信される時系列信号及びフィールド機器2に取り付けたセンサ40からの検出信号を取得する。ステップS202において、推論部82は学習済モデル記憶部73に記憶された学習済モデルに、ステップS201で取得した、フィールド機器2から発信される時系列信号及びフィールド機器2に取り付けたセンサ40からの検出信号を入力し、フィールド機器2が正当な機器であるか、または、不正な機器であるかを判定した結果を得る。ステップS203において、推論部82は、学習済モデルにより得られたフィールド機器2の識別・認証結果を出力する。これにより、制御ネットワーク・制御IO配線に不正な機器が接続されることによるデータ捏造を予防することができる。なお、本実施の形態では、モデル生成部72及び推論部82が用いる学習アルゴリズムに教師なし学習を適用した場合について説明したが、これに限られるものではない。学習アルゴリズムについては、教師なし学習以外にも、強化学習、教師あり学習、又は半教師あり学習等を適用することも可能である。
【0065】
本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、本開示を説明するためのものであり、本開示の範囲を限定するものではない。つまり、本開示の範囲は、実施の形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、本開示の範囲内とみなされる。
【0066】
以下、本開示の諸態様を付記としてまとめて記載する。
【0067】
(付記1)
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を学習するフィールド機器認証学習装置であって、
前記フィールド機器が発信する時系列信号を学習用データとして取得するデータ取得部と、
前記学習用データを用いて、前記時系列信号から、前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するモデル生成部と、
を備えるフィールド機器認証学習装置。
(付記2)
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を学習するフィールド機器認証学習装置であって、
前記フィールド機器に取り付けられたセンサからの検出信号を学習用データとして取得するデータ取得部と、
前記学習用データを用いて、前記検出信号から、前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するモデル生成部と、
を備えるフィールド機器認証学習装置。
(付記3)
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を学習するフィールド機器認証学習装置であって、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号を学習用データとして取得するデータ取得部と、
前記学習用データを用いて、前記時系列信号及び前記検出信号から、前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するモデル生成部と、
を備えるフィールド機器認証学習装置。
(付記4)
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を行うフィールド機器認証推論装置であって、
前記フィールド機器が発信する時系列信号を取得するデータ取得部と、
前記時系列信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するための学習済モデルを用いて、前記時系列信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果の情報を出力する推論部と、
を備えるフィールド機器認証推論装置。
(付記5)
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を行うフィールド機器認証推論装置であって、
前記フィールド機器に取り付けられたセンサからの検出信号を取得するデータ取得部と、
前記検出信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するための学習済モデルを用いて、前記検出信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果の情報を出力する推論部と、
を備えるフィールド機器認証推論装置。
(付記6)
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を行うフィールド機器認証推論装置であって、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号を取得するデータ取得部と、
前記時系列信号及び前記検出信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するための学習済モデルを用いて、前記時系列信号及び前記検出信号から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果の情報を出力する推論部と、
を備えるフィールド機器認証推論装置。
(付記7)
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を学習するフィールド機器認証学習方法であって、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号の少なくとも一方を学習用データとして取得するステップと、
前記学習用データを用いて、前記時系列信号及び前記検出信号の少なくとも一方から、前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するステップと、
を備えるフィールド機器認証学習方法。
(付記8)
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を行うフィールド機器認証推論方法であって、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号の少なくとも一方を取得するステップと、
前記時系列信号及び前記検出信号の少なくとも一方から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するための学習済モデルを用いて、前記時系列信号及び前記検出信号の少なくとも一方から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するステップと、
を備えるフィールド機器認証推論方法。
(付記9)
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を学習するコンピュータを、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号の少なくとも一方を学習用データとして取得するデータ取得部、
前記学習用データを用いて、前記時系列信号及び前記検出信号の少なくとも一方から、前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論する学習済モデルを生成するモデル生成部、
として機能させるプログラム。
(付記10)
入出力ユニットの入出力端子にフィールド機器が接続された制御システムにおける前記フィールド機器の認証を行うコンピュータを、
前記フィールド機器が発信する時系列信号及び前記フィールド機器に取り付けられたセンサからの検出信号の少なくとも一方を取得するデータ取得部、
前記時系列信号及び前記検出信号の少なくとも一方から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果を推論するための学習済モデルを用いて、前記時系列信号及び前記検出信号の少なくとも一方から前記制御システムに接続された前記フィールド機器が正当な機器であるか又は不正な機器であるかを判定した結果の情報を出力する推論部、
として機能させるプログラム。
【符号の説明】
【0068】
1 制御システム、2 フィールド機器、3 PLC、4 CPUユニット、5 入出力ユニット、6 機器認証装置、11 制御部、12 記憶部、13 ユーザインタフェース、14 表示部、15 通信部、20,50,70 学習装置、21,31,51,61,71,81 データ取得部、22,52,72 モデル生成部、23,53,73 学習済モデル記憶部、30,60,80 推論装置、32,62,82 推論部、40 センサ。