(57)【要約】      （修正有）【課題】通常の動作を行っている制御装置の診断を行うこと以外の診断に関する他の機能を容易に追加することができる診断装置を提供すること。【解決手段】診断装置において、通信部２は、センサ１０１、ＰＬＣ（制御装置）１０２、アクチュエータと通信接続可能に設けられ、前記センサから入力信号を受信し、前記ＰＬＣから出力信号を受信する。記憶部４は、前記ＰＬＣから出力される出力信号に関する基準データである出力信号基準データを記憶する。入力信号処理部３２は、前記入力信号を、前記通信部を介して前記ＰＬＣに送信する。診断部３４は、前記ＰＬＣに送信した入力信号、前記入力信号を受信した前記ＰＬＣから受信した出力信号、および、前記記憶部に記憶された前記出力信号基準データに基づいて、前記ＰＬＣを診断する。出力信号処理部３３は、前記出力信号を、前記通信部を介して前記アクチュエータに送信する。【選択図】図１
2019008718.tif 000002
【特許請求の範囲】
【請求項１】
センサ、ＰＬＣ（Programmable  Logic  Controller）、アクチュエータと通信接続可能に設けられ、前記センサから入力信号を受信し、前記ＰＬＣから出力信号を受信する通信部と、
前記ＰＬＣから出力される出力信号に関する基準データである出力信号基準データを記憶する記憶部と、
前記入力信号を、前記通信部を介して前記ＰＬＣに送信する入力信号処理部と、
前記ＰＬＣに送信した入力信号、前記入力信号を受信した前記ＰＬＣから受信した出力信号、および、前記記憶部に記憶された前記出力信号基準データに基づいて、前記ＰＬＣを診断する診断部と、
前記出力信号を、前記通信部を介して前記アクチュエータに送信する出力信号処理部と、
を備える診断装置。
【請求項２】
前記入力信号処理部は、前記通信部によって受信した入力信号に対して第１の処理を実行することで第２入力信号を生成し、前記入力信号の代わりに前記第２入力信号を前記ＰＬＣに送信する、請求項１に記載の診断装置。
【請求項３】
前記出力信号処理部は、前記診断部による診断結果に応じて、前記通信部によって受信した出力信号に対して第２の処理を実行することで第２出力信号を生成し、前記出力信号の代わりに前記第２出力信号を前記アクチュエータに送信する、請求項１に記載の診断装置。
【請求項４】
前記ＰＬＣに前記入力信号を送信するための信号線と、前記ＰＬＣから前記出力信号を受信するための信号線とは別個に設けられている、請求項１から請求項３のいずれか一項に記載の診断装置。
【請求項５】
前記通信部は、前記診断部による診断結果を外部の端末装置に送信する、請求項１から請求項４のいずれか一項に記載の診断装置。
【請求項６】
前記ＰＬＣの観測データとしてサイドチャネル情報を取得または算出する観測部を、さらに備え、
前記記憶部は、前記サイドチャネル情報に関する基準データであるサイドチャネル情報基準データを記憶しており、
前記診断部は、前記ＰＬＣに送信した入力信号、前記入力信号を受信した前記ＰＬＣから受信した出力信号、前記取得または算出されたサイドチャネル情報、前記記憶部に記憶された前記出力信号基準データおよび前記サイドチャネル情報基準データに基づいて、前記ＰＬＣを診断する、請求項１から請求項５のいずれか一項に記載の診断装置。
【請求項７】
前記サイドチャネル情報は、前記ＰＬＣによって実行される各処理の時間を示す情報である処理時間情報、前記ＰＬＣによって実行される各処理の順番を示す情報である処理シーケンス情報、前記ＰＬＣによって消費される電力の情報である消費電力情報のうちいずれか１つ以上である、請求項６に記載の診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、診断装置に関する。
【背景技術】
【０００２】
近年、ＦＡ（ファクトリーオートメーション）等の分野における制御装置（制御システム）は、汎用技術、標準技術、ネットワーク技術の採用等にともない、従来から必要とされていた故障に備える機能安全性だけでなく、コンピュータウイルスや不正アクセスなどのサイバー攻撃に備えるセキュリティ性も求められている。
【０００３】
例えば、制御装置に脆弱性が発見された場合、制御装置のプログラムを更新することにより、セキュリティ性を高めることができる。しかし、制御装置のプログラムを更新すると、機能安全性に影響を与える可能性があるので、プログラム更新後に診断が必要となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−３１６２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の診断装置は、通常の動作を行っている制御装置の診断を行うことしか想定しておらず、診断に関する他の機能を追加することが容易ではなかった。
【０００６】
そこで、本実施形態の課題は、通常の動作を行っている制御装置（ＰＬＣ（Programmable  Logic  Controller））の診断を行うこと以外の診断に関する他の機能を容易に追加することができる診断装置を提供することである。
【課題を解決するための手段】
【０００７】
実施形態の診断装置は、通信部と、記憶部と、入力信号処理部と、診断部と、出力信号処理部と、を備える。通信部は、センサ、ＰＬＣ、アクチュエータと通信接続可能に設けられ、前記センサから入力信号を受信し、前記ＰＬＣから出力信号を受信する。記憶部は、前記ＰＬＣから出力される出力信号に関する基準データである出力信号基準データを記憶する。入力信号処理部は、前記入力信号を、前記通信部を介して前記ＰＬＣに送信する。診断部は、前記ＰＬＣに送信した入力信号、前記入力信号を受信した前記ＰＬＣから受信した出力信号、および、前記記憶部に記憶された前記出力信号基準データに基づいて、前記ＰＬＣを診断する。出力信号処理部は、前記出力信号を、前記通信部を介して前記アクチュエータに送信する。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施形態の診断装置等の構成図である。
【図２】図２は、第１の実施形態の診断装置による第１の診断処理を示すフローチャートである。
【図３】図３は、第１の実施形態の診断装置による第２の診断処理を示すフローチャートである。
【図４】図４は、第１の実施形態の診断装置による第３の診断処理を示すフローチャートである。
【図５】図５は、第１の実施形態の診断装置による第４の診断処理を示すフローチャートである。
【図６】図６は、第２の実施形態の診断装置等の構成図である。
【図７】図７は、第２の実施形態の診断装置による第５の診断処理を示すフローチャートである。
【図８】図８は、第２の実施形態の診断装置による第６の診断処理を示すフローチャートである。
【図９】図９は、第２の実施形態の診断装置による第７の診断処理を示すフローチャートである。
【図１０】図１０は、第２の実施形態の診断装置による第８の診断処理を示すフローチャートである。
【図１１】図１１は、第３の実施形態の診断装置等の構成図である。
【図１２】図１２は、第３の実施形態の診断装置による診断処理と端末装置による表示処理を示すシーケンス図である。
【図１３Ａ】図１３Ａは、第１〜第３の実施形態における診断装置と制御システムとの接続状況を示す概要図である。
【図１３Ｂ】図１３Ｂは、変形例１における診断装置と制御システムとの接続状況を示す概要図である。
【図１３Ｃ】図１３Ｃは、変形例２における診断装置と制御システムとの接続状況を示す概要図である。
【発明を実施するための形態】
【０００９】
以下、添付の図面を用いて、第１〜第３の実施形態、および、変形例１，２の診断装置について説明する。なお、第２の実施形態以降において、それまでの説明と重複する説明は、適宜省略する。
【００１０】
＜第１の実施形態＞
図１は、第１の実施形態の診断装置１等の構成図である。診断装置１は、センサ１０１、制御装置１０２、被制御装置１０３を備える制御システムＳにおける制御装置１０２を診断する。センサ１０１、制御装置１０２、被制御装置１０３は、それぞれ、通信路によって診断装置１と接続されている。なお、各通信路は、例えば、イーサネット(Ethernet)（登録商標）、ＲＳ−２３２Ｃ等により実現できるが、これらに限定されず、有線、無線の種々の通信路を用いることができる。
【００１１】
センサ１０１は、制御対象設備の状態や環境等をセンシングし、入力信号を診断装置１に送信する検知装置である。なお、センサ１０１が送信する信号を「入力信号」と称しているのは、その信号が制御装置１０２に入力されるべきものだからである。また、センサ１０１から送信される入力信号は、電気信号と電子データのいずれでもよいが、診断装置１の内部で扱われる際は電子データであるものとする。なお、センサ１０１から送信される入力信号が電気信号の場合、診断装置１の外部または内部にＡＤ（Analog-to-Digital）変換器を設ければよい。また、後述する出力信号についても同様で、被制御装置１０３が診断装置１から受信する出力信号が電気信号の場合、診断装置１の外部または内部にＤＡ（Digital-to-Analog）変換器を設ければよい。
【００１２】
制御装置１０２は、例えば、ＰＬＣ（Programmable  Logic  Controller）などの制御用コントローラである。制御装置１０２は、診断装置１から受信する入力信号（または第２入力信号。詳細は後述）と自身に実装されたプログラムとに基づいて処理を実行し、その処理結果としての出力信号を診断装置１に出力する。
【００１３】
被制御装置１０３は、診断装置１から受信する出力信号（または第２出力信号。詳細は後述）により動作するアクチュエータ等である。
【００１４】
診断装置１は、制御装置１０２を診断することを目的としたコンピュータ装置であり、通信部２、処理部３、記憶部４、入力部５、および、表示部６を備える。なお、診断対象となる制御装置１０２は、例えば、セキュリティ性を高める等の目的でプログラムを更新した直後のものである。診断装置１は、そのような制御装置１０２について機能安全性等を確かめるために診断を行う。
【００１５】
通信部２は、センサ１０１、制御装置１０２、被制御装置１０３と通信接続可能に設けられ、センサ１０１から入力信号を受信し、制御装置１０２から出力信号を受信する通信手段である。つまり、通信部２は、図１では説明を簡潔にするために単に「通信部２」と表されているが、通信路が複数種類の場合は複数種類の通信手段により実現される。
【００１６】
記憶部４は、例えば、ＲＯＭ（Read  Only  Memory）、ＳＳＤ（Solid  State  Drive）、ＨＤＤ（Hard  Disk  Drive）等により実現される記憶手段であり、処理部３の動作プログラムのほか、入力信号データ、出力信号データ、第２入力信号データ、第２出力信号データ、入力信号基準データ、出力信号基準データ、および、診断結果データを記憶する。
【００１７】
入力信号データは、取得部３１がセンサ１０１から取得した入力信号のデータである。出力信号データは、取得部３１が制御装置１０２から取得した出力信号のデータである。なお、以下では、説明の便宜上、入力信号データを入力信号と称する場合や、出力信号データを出力信号と称する場合がある。
【００１８】
第２入力信号データは、入力信号処理部３２によって生成されたデータである（詳細は後述）。第２出力信号データは、出力信号処理部３３によって生成されたデータである（詳細は後述）。
【００１９】
入力信号基準データは、入力信号に関する基準データである。出力信号基準データは、出力信号に関する基準データである。入力信号基準データや出力信号基準データは、診断装置１のユーザによって記憶部４に予め保存されていてもよいし、あるいは、診断装置１の外部から記憶部４に書き込みできる機構があって外部から書き込むことにより保存するようにしてもよい。また、入力信号基準データや出力信号基準データは、例えば、所定値でもよいし、所定値以下や所定値以上という条件でもよいし、Ｗｉｎｄｏｗ  ＷＤＴ（Watch  Dog  Timer）のように上限値と下限値の幅を持った範囲データであってもよい。
【００２０】
診断結果データは、診断部３４による診断処理の結果のデータである。
【００２１】
処理部３は、例えば、ＣＰＵ（Central  Processing  Unit）とＲＡＭ（Random  Access  Memory）により実現される処理手段であり、機能部として取得部３１、入力信号処理部３２、出力信号処理部３３、および、診断部３４を備える。
【００２２】
取得部３１は、センサ１０１から通信部２を介して入力信号を取得し、記憶部４に入力信号データとして記憶する。また、取得部３１は、制御装置１０２から通信部２を介して出力信号を取得し、記憶部４に出力信号データとして記憶する。ただし、設定により、取得部３１が入力信号や出力信号の保存を行わない動作モードを可能としてもよい。
【００２３】
入力信号処理部３２は、例えば、取得部３１によってセンサ１０１からの入力信号が取得された場合に、記憶部４の入力信号基準データを参照してその入力信号が正常であれば、その入力信号をそのまま制御装置１０２に送信する。また、入力信号処理部３２は、例えば、その入力信号が異常であれば、その入力信号に対して第１の処理を実行することで第２入力信号を生成し、記憶部４に第２入力信号データとして保存し、入力信号の代わりに第２入力信号を制御装置１０２に送信する。第１の処理としては、例えば、入力信号基準データの基準をクリアするような第２入力信号を生成する処理が考えられる。また、入力信号処理部３２は、例えば、その入力信号が異常か否かに関係なく、予め記憶部４に記憶されているデータやプログラムに基づいて、その入力信号に対して第１の処理を実行することで第２入力信号を生成し、入力信号の代わりに第２入力信号を制御装置１０２に送信するようにしてもよい。
【００２４】
診断部３４は、制御装置１０２に送信した入力信号（または第２入力信号）、入力信号を受信した制御装置１０２から受信した出力信号、および、記憶部４に記憶された出力信号基準データに基づいて、制御装置１０２を診断する。診断部３４は、例えば、単純な比較機能によって診断を実行してもよいし、あるいは、統計処理や機械学習を用いた解析機能によって診断を実行してもよい。診断部３４は、診断結果を記憶部４に診断結果データとして保存する。また、診断部３４は、診断結果を表示部６に表示することもできる。
【００２５】
出力信号処理部３３は、診断部３４による診断結果に応じて、例えば、診断結果が正常であれば、出力信号をそのまま被制御装置１０３に送信する。また、出力信号処理部３３は、診断部３４による診断結果に応じて、例えば、診断結果が異常であれば、出力信号に対して第２の処理を実行することで第２出力信号を生成し、記憶部４に第２出力信号データとして保存し、出力信号の代わりに第２出力信号を被制御装置１０３に送信する。
【００２６】
第２の処理としては、例えば、出力信号基準データの示す正常範囲が「０」〜「１０」で、出力信号が「１５」の場合に、第２出力信号として「１０」を生成する処理が考えられる。これにより、例えば、被制御装置１０３がアクチュエータの場合に、診断装置１が異常な「１５」という出力信号を被制御装置１０３に送信して、被制御装置１０３がその出力信号による制御によって故障してしまう可能性を回避することができる。
【００２７】
入力部５は、ユーザによる情報入力手段であり、例えば、キーボードやマウスである。表示部６は、診断結果等の各種情報を表示する手段である。
【００２８】
次に、図２を参照して、診断装置１による第１の診断処理について説明する。図２は、第１の実施形態の診断装置１による第１の診断処理を示すフローチャートである。なお、この第１の診断処理では、入力信号と出力信号の両方とも変更を行わない場合を例にとる。また、通信部２の動作については説明を適宜省略する（図３以降も同様）。
【００２９】
まず、ステップＳ１０において、取得部３１は、センサ１０１から入力信号を受信したか否かを判定し、Ｙｅｓの場合はステップＳ２０に進み、Ｎｏの場合はステップＳ１０に戻る。
【００３０】
ステップＳ２０において、取得部３１は、入力信号を記憶部４に入力信号データとして保存（記憶）する。
【００３１】
ここで、例えば、入力信号処理部３２が、その入力信号について、記憶部４の入力信号基準データを参照して正常と判定したものとする。あるいは、入力信号処理部３２が、その入力信号についてそのような判定を行わず、入力信号をそのまま制御装置１０２に送信するように設定されていたものとしてもよい。それらの場合、ステップＳ３０において、入力信号処理部３２は、その入力信号をそのまま制御装置１０２に送信する。
【００３２】
次に、ステップＳ４０において、取得部３１は、制御装置１０２から出力信号を取得（受信）し、記憶部４に出力信号データとして保存（記憶）する。
【００３３】
次に、ステップＳ５０において、診断部３４は、制御装置１０２に送信した入力信号、制御装置１０２から取得した出力信号、および、記憶部４に記憶された出力信号基準データに基づいて、制御装置１０２を診断する。
【００３４】
次に、ステップＳ６０において、診断部３４は、診断結果を記憶部４に診断結果データとして保存する。
【００３５】
ここで、診断部３４による診断結果が正常であったものとする。その場合、ステップＳ７０において、出力信号処理部３３は、出力信号をそのまま被制御装置１０３に送信する。ステップＳ７０の後、ステップＳ１０に戻る。
【００３６】
このようにして、診断装置１の第１の診断処理によれば、通常の動作を行っている制御装置１０２の診断を行うこと以外の診断に関する他の機能を容易に追加することができる。つまり、従来技術では、例えば、センサから制御装置に入力信号が直接送信され、また、制御装置から被制御装置に出力信号が直接送信され、それらの入力信号と出力信号を診断装置でピックアップして診断を行っていたので、通常の動作を行っている制御装置１０２の診断を行うことしかできなかった。
【００３７】
一方、本実施形態の診断装置１は、センサ１０１からの入力信号を必ず受信するので、その入力信号をそのまま制御装置１０２に送信することもできるし、また、その入力信号に対して第１の処理を実行することで第２入力信号を生成し、その入力信号の代わりに第２入力信号を制御装置１０２に送信することも容易に行うことができる。したがって、より柔軟な診断を行うことができる。
【００３８】
また、本実施形態の診断装置１は、診断結果に応じて、例えば、診断結果が正常であれば出力信号をそのまま被制御装置１０３に送信し、また、診断結果が異常であれば出力信号に対して第２の処理を実行することで第２出力信号を生成し、出力信号の代わりに第２出力信号を被制御装置１０３に送信することができる。したがって、診断結果を有効活用して、被制御装置１０３に与える出力信号を適宜変更することができる。
【００３９】
次に、図３を参照して、診断装置１による第２の診断処理について説明する。図３は、第１の実施形態の診断装置１による第２の診断処理を示すフローチャートである。なお、図２と同様の処理については、同様のステップ番号を付与して、重複する説明を適宜省略する。
【００４０】
ステップＳ１０、Ｓ２０は図２と同様である。ここで、例えば、入力信号処理部３２が、ステップＳ２０で保存した入力信号について、記憶部４の入力信号基準データを参照して異常と判定したものとする。その場合、入力信号処理部３２は、その入力信号に対して第１の処理を実行することで第２入力信号を生成し、記憶部４に第２入力信号データとして保存し（ステップＳ２１）、その第２入力信号を入力信号の代わりに制御装置１０２に送信する（ステップＳ２２）。
【００４１】
ステップＳ４０以降は図２と同様である。ただし、ステップＳ５０において、診断部３４は、入力信号ではなく第２入力信号に基づいて診断を実行する。
【００４２】
このようにして、診断装置１の第２の診断処理によれば、取得した入力信号に代えて第２入力信号を生成して制御装置１０２に送信することができる。したがって、より柔軟な診断を行うことができる。
【００４３】
次に、図４を参照して、診断装置１による第３の診断処理について説明する。図４は、第１の実施形態の診断装置による第３の診断処理を示すフローチャートである。
【００４４】
ステップＳ１０〜Ｓ６０は図２と同様である。ここで、例えば、ステップＳ５０での診断部３４による診断結果が異常であったものとする。その場合、ステップＳ６０の後、出力信号処理部３３は、出力信号に対して第２の処理を実行することで第２出力信号を生成し、記憶部４に第２出力信号データとして保存し（ステップＳ７１）、その第２出力信号を出力信号の代わりに被制御装置１０３に送信する（ステップＳ７２）。ステップＳ７２の後、ステップＳ１０に戻る。
【００４５】
このようにして、診断装置１の第３の診断処理によれば、取得した出力信号に代えて第２出力信号を生成して被制御装置１０３に送信することができる。したがって、診断結果を有効活用して、被制御装置１０３に与える出力信号を適宜変更することができる。
【００４６】
次に、図５を参照して、診断装置１による第４の診断処理について説明する。図５は、第１の実施形態の診断装置１による第４の診断処理を示すフローチャートである。
【００４７】
ステップＳ１０〜Ｓ６０は図３と同様である。ステップＳ７１、Ｓ７２は図４と同様である。このようにして、診断装置１の第４の診断処理によれば、取得した入力信号に代えて第２入力信号を生成して制御装置１０２に送信し、かつ、取得した出力信号に代えて第２出力信号を生成して被制御装置１０３に送信することができる。したがって、より柔軟な診断を行うとともに、診断結果を有効活用して被制御装置１０３に与える出力信号を適宜変更することができる。
【００４８】
（第１の実施形態の作用効果のまとめ）
このように、第１の実施形態によれば、診断装置１が制御システムＳ内の各機器（センサ１０１、制御装置１０２、被制御装置１０３）を繋ぐハブ機能を備えることで、各機器が診断装置１を意識せずに従来と同様に接続相手との信号の送受信を行えるとともに、診断装置１は自身が受信する入力信号と出力信号を利用して制御装置１０２を診断することができる。
【００４９】
そして、診断装置１は、入力信号を任意に変更可能なので、より柔軟な診断を行うことができる。例えば、診断装置１は、センサ１０１からの入力信号を無視して独自に作成した入力信号パターンで診断できるため、センサ１０１が何らかの原因により正常ではない入力信号を送信した場合を想定した診断（例えばファジングテスト）も可能となる。
【００５０】
また、診断装置１は、予め入力信号セットを用意しておいたり、入力信号と診断結果の情報から動的に次の入力信号を生成したりするなどして、入力信号を少しずつ変えて第２入力信号として制御装置１０２に送信して診断を繰り返すことで、制御システムＳが正しく動作する実効的な境界値を導出できるなど、より進んだ診断・解析を実現することができる。
【００５１】
また、診断装置１は、出力信号も任意に変更できるので、例えば、診断により出力信号が異常値であることを検知した場合、被制御装置１０３に大きなダメージを与えないような出力信号に修正したり、冗長系（冗長化された他の被制御装置１０３）への移行を指示する出力信号を送出したりすることも可能となる。
【００５２】
＜第２の実施形態＞
次に、第２の実施形態について説明する。図６は、第２の実施形態の診断装置１等の構成図である。図６の診断装置１は、図１の診断装置１と比較して、処理部３が観測部３５を備えている点と、記憶部４がサイドチャネル情報データおよびサイドチャネル情報基準データ（サイドチャネル情報に関する基準データ）を記憶している点で相違する。
【００５３】
観測部３５は、制御装置１０２の観測データとしてサイドチャネル情報を取得または算出し、記憶部４にサイドチャネル情報データとして保存する。ここで、サイドチャネル情報とは、制御装置１０２の動作についての観測データであって、例えば、制御装置１０２によって実行される各処理の時間を示す情報である処理時間情報、制御装置１０２によって実行される各処理の順番を示す情報である処理シーケンス情報、制御装置１０２によって消費される電力の情報である消費電力情報等を指す。なお、診断の際は、これらのサイドチャネル情報のうち１つ以上を用いればよい。また、以下では、「観測データ」とは、サイドチャネル情報だけでなく、上述の入力信号および出力信号も含む。
【００５４】
制御装置１０２は、高い機能安全性を実現するために、セーフティ機能としてＷＤＴ機能やシーケンスモニタ機能を備えていることが一般的であり、その場合、診断装置１の観測部３５は、処理時間情報や処理シーケンス情報を制御装置１０２から取得可能である。なお、制御装置１０２がＷＤＴ機能やシーケンスモニタ機能を持たない場合は、観測部３５が制御装置１０２のサイドチャネル情報を観測する機能を備えるようにする。
【００５５】
また、一般的に、制御装置１０２は消費電力測定機能を備えていないため、制御装置１０２の消費電力を測定するためには、オシロスコープ等の測定機器を用意する必要がある。具体的には、制御装置１０２の消費電力を測定する際に、接触モニタリングの場合はオシロスコープ等の測定機器を用い、非接触モニタリングの場合は磁界や電界をセンシング可能なプローブ等を備えた電磁波測定機器を用いる。また、制御装置１０２が消費電力を測定して出力する機能を備えていれば、診断装置１の観測部３５は制御装置１０２から消費電力情報を受け取ることができる。
【００５６】
観測部３５は、取得または算出したサイドチャネル情報を記憶部４にサイドチャネル情報データとして記憶する。また、記憶部４には、サイドチャネル情報基準データがユーザによって予め保存されている。
【００５７】
また、診断部３４は、制御装置１０２に送信した入力信号（または第２入力信号）、入力信号を受信した制御装置１０２から受信した出力信号、記憶部４に記憶されたサイドチャネル情報データ、出力信号基準データおよびサイドチャネル情報基準データに基づいて、制御装置１０２を診断する。
【００５８】
次に、図７を参照して、診断装置１による第５の診断処理について説明する。図７は、第２の実施形態の診断装置１による第５の診断処理を示すフローチャートである。
【００５９】
ステップＳ１０〜Ｓ３０は図２と同様である。ステップＳ３１において、観測部３５は、制御装置１０２からサイドチャネル情報を取得（または算出）し、記憶部４にサイドチャネル情報データとして保存する。ステップＳ４０は図２と同様である。
【００６０】
次に、ステップＳ５０において、診断部３４は、制御装置１０２に送信した入力信号、制御装置１０２から取得した出力信号、記憶部４に記憶されたサイドチャネル情報データ、出力信号基準データおよびサイドチャネル情報基準データに基づいて、制御装置１０２を診断する。ここでは、診断に関して、第１の実施形態との相違点について説明する。
【００６１】
例えば、診断部３４は、サイドチャネル情報として処理時間情報を利用する場合の診断において、サイドチャネル情報である処理時間情報が、サイドチャネル情報基準データにおける処理時間情報基準データの条件に適合しているかどうかを判定する。
【００６２】
また、診断部３４は、サイドチャネル情報として処理シーケンス情報を利用する場合の診断において、サイドチャネル情報である処理シーケンス情報が、サイドチャネル情報基準データにおける処理シーケンス情報基準データに一致しているかどうかを判定する。
【００６３】
また、診断部３４は、サイドチャネル情報として消費電力情報を利用する場合の診断において、サイドチャネル情報である消費電力情報が、サイドチャネル情報基準データにおける消費電力情報基準データの条件に適合しているかどうかを判定する。例えば、消費電力情報基準データは制御装置１０２の安全動作保証消費電力範囲であって、診断部３４は、測定した消費電力がその範囲に収まっているかどうかを判定すればよい。また、消費電力情報基準データは正常動作時の消費電力波形と消費電力波形の一致度の条件であってもよい。その場合、診断部３４は、例えば、測定した消費電力波形データと正常動作時の消費電力波形データの一致度を計算し、一致度の条件に適合しているかどうかを判定すればよい。ステップＳ６０、ステップＳ７０は図２と同様である。
【００６４】
このようにして、診断装置１の第５の診断処理によれば、図２の第１の診断処理と同様の作用効果に加えて、サイドチャネル情報を利用したより高精度な診断を実行できるという作用効果を奏する。例えば、サイドチャネル情報として処理時間情報と処理シーケンス情報を利用して診断すれば、処理時間情報によって制御装置１０２が設定された処理時間で動作することを診断できるだけでなく、制御装置１０２が正しい処理シーケンスで動作することも診断できるようになり、信頼性のより高い診断結果を得ることができる。
【００６５】
さらに、サイドチャネル情報として消費電力情報を利用して診断すれば、処理時間や処理シーケンス情報といった時間軸方向の情報を利用した診断とは異なる観点での診断が可能となる。消費電力情報を利用することによって、例えば、消費電力の上限値に制約がある場合の適合性診断が可能になったり、正常動作時の消費電力波形との一致度からより詳細な異常検出が可能となったりする。また、処理時間が正常であっても、ＣＰＵの動作周波数が大幅に上がっていれば、この消費電力情報を用いた診断により発見することができる。
【００６６】
次に、図８は、第２の実施形態の診断装置１による第６の診断処理を示すフローチャートである。図８は、図３と比較して、図７を図２と比較した場合と同様に、ステップＳ４０の前にステップＳ３１が追加され、かつ、ステップＳ５０の診断でサイドチャネル情報が用いられる点のみで相違するので、説明を省略する。診断装置１の第６の診断処理によれば、取得した入力信号に代えて第２入力信号を生成して制御装置１０２に送信することでより柔軟な診断を行うことができ、かつ、サイドチャネル情報を利用したより高精度な診断を実行できる。
【００６７】
次に、図９は、第２の実施形態の診断装置１による第７の診断処理を示すフローチャートである。図９は、図４と比較して、図７を図２と比較した場合と同様に、ステップＳ４０の前にステップＳ３１が追加され、かつ、ステップＳ５０の診断でサイドチャネル情報が用いられる点のみで相違するので、説明を省略する。診断装置１の第７の診断処理によれば、取得した出力信号に代えて第２出力信号を生成して被制御装置１０３に送信することで診断結果を有効活用して被制御装置１０３に与える出力信号を適宜変更することができ、かつ、サイドチャネル情報を利用したより高精度な診断を実行できる。
【００６８】
次に、図１０は、第２の実施形態の診断装置による第８の診断処理を示すフローチャートである。図１０は、図５と比較して、図７を図２と比較した場合と同様に、ステップＳ４０の前にステップＳ３１が追加され、かつ、ステップＳ５０の診断でサイドチャネル情報が用いられる点のみで相違するので、説明を省略する。診断装置１の第８の診断処理によれば、より柔軟な診断を行うとともに、診断結果を有効活用して被制御装置１０３に与える出力信号を適宜変更することができ、かつ、サイドチャネル情報を利用したより高精度な診断を実行できる。
【００６９】
＜第３の実施形態＞
次に、図１１、図１２を参照して、第３の実施形態の診断装置１等について説明する。図１１は、第３の実施形態の診断装置１等の構成図である。第３の実施形態では、第２の実施形態と比較して、診断装置１による診断結果を端末装置１０４に表示することができる点で相違する。
【００７０】
診断装置１における通信部２は、上述した機能に加えて、診断部３４による診断結果、つまり、記憶部４に記憶された診断結果データを外部の端末装置１０４に送信する機能を有する。なお、このような機能は処理部３に備えるものとしてもよい。
【００７１】
端末装置１０４は、コンピュータ装置であり、表示部１０４１を備える。端末装置１０４は、インターネットなどの汎用のネットワーク１０５を介して診断装置１に接続されている。また、端末装置１０４は、ネットワーク１０５を介して制御装置１０２に接続され、制御装置１０２の情報をモニタリングしたり、端末装置１０４上のエンジニアリングツール（ソフトウェア）などにより制御装置１０２の制御を行ったりすることもできる。表示部１０４１は、診断結果等の各種情報を表示する手段である。
【００７２】
図１２は、第３の実施形態の診断装置１による診断処理と端末装置１０４による表示処理を示すシーケンス図である。診断装置１による診断処理については第２の実施形態と同様であるので、説明を省略する。
【００７３】
診断装置１において、診断部３４が診断処理を実行して（ステップＳ１０１）診断結果を記憶部４に保存すると（ステップＳ１０２）、通信部２は診断結果を端末装置１０４に送信する（ステップＳ１０３）。端末装置１０４は、診断結果を受信し（ステップＳ１０４）、診断結果を表示部１０４１に表示する（ステップＳ１０５）。ステップＳ１０５の後、処理を終了する。
【００７４】
このようにして、第３の実施形態によれば、診断装置１による診断結果を端末装置１０４に表示することができる。また、診断装置１は、通信部２を用いて、診断結果だけでなく、入力信号や出力信号等の他のデータも端末装置１０４に送信し、端末装置１０４がそれらを表示部１０４１に表示するようにしてもよい。そうすれば、診断結果が異常であった場合などに、端末装置１０４のユーザはそれらのデータを見て制御装置１０２の異常の箇所や原因を特定するときの参考にすることができる。
【００７５】
また、端末装置１０４から診断装置１に各基準データを送信して、診断装置１の記憶部４に書き込ませるようにしてもよい。そうすれば、端末装置１０４から診断装置１の制御を行えるようになり、利便性が高くなる。
【００７６】
また、端末装置１０４から診断装置１に動作プログラムの更新データ等を送信して、診断装置１の記憶部４に書き込ませるようにしてもよい。そうすれば、端末装置１０４から診断装置１の動作プログラムを必要に応じて更新できるようになり、利便性が高くなる。
【００７７】
＜変形例＞
次に、図１３Ａ〜図１３Ｃを参照して、変形例の診断装置１について説明する。図１３Ａは、変形例の比較対象としての第１〜第３の実施形態における診断装置１と制御システムＳとの接続状況を示す概要図である。図１３Ａにおいては、診断装置１は制御装置１０２と１本の信号線で接続されている。つまり、診断装置１から制御装置１０２に入力信号を送信するための信号線と、診断装置１が制御装置１０２から出力信号を受信するための信号線とを同一とした。
【００７８】
＜変形例１＞
図１３Ｂは、変形例１における診断装置１と制御システムＳとの接続状況を示す概要図である。変形例１では、図１３Ｂに示すように、診断装置１は制御装置１０２と２本の信号線で接続されている。つまり、診断装置１から制御装置１０２に入力信号を送信するための信号線と、診断装置１が制御装置１０２から出力信号を受信するための信号線とは別個に設けられている。このようにすれば、例えば、入力信号送信用の信号線と出力信号受信用の信号線とを通信形式の異なる信号線とすることができる。
【００７９】
＜変形例２＞
また、図１３Ｃは、変形例２における診断装置１と制御システムＳとの接続状況を示す概要図である。変形例２では、図１３Ｃに示すように、一般的なハブ１０６に、センサ１０１、診断装置１、および、被制御装置１０３が接続され、また、制御装置１０２は診断装置１に接続されるものとした。このようにすることで、一般的なハブ１０６を利用して柔軟なシステム構成を実現することができる。また、制御装置１０２が診断装置１にだけ接続されるようにしたことで、診断装置１は制御装置１０２を直接的に監視、診断、制御等することができる。
【００８０】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【００８１】
また、本実施形態の診断装置１で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータ装置で読み取り可能な記録媒体に記録して提供することができる。また、本実施形態の診断装置１で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。
【００８２】
また、診断装置１は、冗長化等のために複数台設けられていてもよい。その場合、診断装置１は、ハードウェア的に複数設けられていても、あるいは、ソフトウェア的に複数設けられていても、いずれでもよい。
【００８３】
また、診断に使用する観測データや基準データは、瞬間的なデータでなく、時間的に幅を有するデータであってもよい。つまり、診断装置１は、入力信号の経時的変化に対応した出力信号やサイドチャネル情報を観測し、基準データと比較することで診断を行ってもよい。
【００８４】
また、図１等において、診断装置１の記憶部４における入力信号データと第２入力信号データとは、別々に記憶するのではなく、例えば、入力信号データをベースに、第２入力信号データを生成した場合は対応する入力信号データにその第２入力信号データを上書きして記憶させるようにしてもよい。出力信号データと第２出力信号データについても同様である。
【００８５】
また、各基準データは、経時的な学習により変更してもよい。
【符号の説明】
【００８６】
１      診断装置
２      通信部
３      処理部
４      記憶部
５      入力部
６      表示部
３１    取得部
３２    入力信号処理部
３３    出力信号処理部
３４    診断部
３５    観測部
１０１  センサ
１０２  制御装置
１０３  被制御装置
１０４  端末装置
１０５  ネットワーク
１０６  ハブ
【図１】
2019008718.tif 000003
【図２】
2019008718.tif 000004
【図３】
2019008718.tif 000005
【図４】
2019008718.tif 000006
【図５】
2019008718.tif 000007
【図６】
2019008718.tif 000008
【図７】
2019008718.tif 000009
【図８】
2019008718.tif 000010
【図９】
2019008718.tif 000011
【図１０】
2019008718.tif 000012
【図１１】
2019008718.tif 000013
【図１２】
2019008718.tif 000014
【図１３Ａ】
2019008718.tif 000015
【図１３Ｂ】
2019008718.tif 000016
【図１３Ｃ】
2019008718.tif 000017