(57)【要約】【課題】不正アクセスをより確実に抑止することができ、設備に損害が発生することを防ぐことが可能な設備制御装置を提供する。【解決手段】設備制御装置としてのプログラマブルコントローラ１は、制御対象の設備２を制御する設備制御部５１と、外部の情報処理装置との通信が可能な第１乃至第３の通信受け口６１〜６３と、第１乃至第３の通信受け口６１〜６３を介した通信を制御する通信制御部５２と、を備える。通信制御部５２は、第１乃至第３の通信受け口６１〜６３ごとに、情報処理装置からの設備制御部５１へのアクセスを制限するアクセス制限の設定を受け付け可能である。【選択図】図２
2020004261.tif 000002
【特許請求の範囲】
【請求項１】
制御対象の設備を制御する設備制御部と、
外部の情報処理装置との通信が可能な通信受け口と、
前記通信受け口を介した通信を制御する通信制御部と、を備え、
前記通信制御部は、前記情報処理装置からの前記設備制御部へのアクセスを制限するアクセス制限の設定を受け付け可能である、
設備制御装置。
【請求項２】
複数の前記通信受け口を備え、
前記通信制御部は、当該複数の前記通信受け口ごとに、前記アクセス制限の設定を受け付け可能である、
請求項１に記載の設備制御装置。
【請求項３】
前記設備制御部は、前記設備の動作手順を示す動作プログラム、及び前記動作プログラムで参照される数値情報を記憶する記憶部を有し、
前記通信制御部は、前記情報処理装置が前記記憶部の記憶内容を読み出するための要求を許可し、かつ前記情報処理装置が前記記憶部の記憶内容を変更又は消去するための要求を不許可とするアクセス制限を設定可能である、
請求項１又は２に記載の設備制御装置。
【請求項４】
前記通信制御部は、前記アクセス制限として、前記設備制御部による前記設備の動作の開始又は停止の要求を不許可とする設定を受け付け可能である、
請求項１乃至３の何れか１項に記載の設備制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部の情報処理装置との通信が可能な通信受け口を備えた設備制御装置に関する。
【背景技術】
【０００２】
従来、例えば工作機械等の設備を制御する設備制御装置には、外部の情報処理装置（コンピュータ）との通信が可能なものがある。特許文献１〜４には、制御対象の設備の動作手順を示す動作プログラム（シーケンスプログラムあるいはユーザプログラム等とも称される）に基づいて設備を動作させるプログラマブルコントローラが記載されている。これらのプログラマブルコントローラは、外部の情報処理装置によってシーケンスプログラムの読み出しや書き込み等が可能であると共に、不正アクセスを抑止するため、パスワードによるユーザ認証を行うようになっている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−３２３９０８号公報
【特許文献２】特開２００３−１６７６０６号公報
【特許文献３】特開２０１５−１８４８４９号公報
【特許文献４】特開２００７−２８０３４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
設備制御装置において、上記のようにパスワードによるユーザ認証を行ったとしても、例えば悪意のあるコンピュータウイルスに感染したコンピュータからのアクセスがあった場合や、あるいはパスワードが漏洩してしまった場合には、必ずしも不正アクセスを阻止できない場合があった。この場合には、制御対象の設備の正常な稼働に影響を及ぼすおそれがある。
【０００５】
そこで、本発明は、不正アクセスをより確実に抑止することができ、設備の正常な稼働が影響を受けることを防ぐことが可能な設備制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上記の目的を達成するため、制御対象の設備を制御する設備制御部と、外部の情報処理装置との通信が可能な通信受け口と、前記通信受け口を介した通信を制御する通信制御部と、を備え、前記通信制御部は、前記情報処理装置からの前記設備制御部へのアクセスを制限するアクセス制限の設定を受け付け可能である、設備制御装置を提供する。
【発明の効果】
【０００７】
本発明に係る設備制御装置によれば、不正アクセスをより確実に抑止することができ、設備の正常な稼働が影響を受けることを防ぐことが可能となる。
【図面の簡単な説明】
【０００８】
【図１】設備制御装置としてのプログラマブルコントローラ、及びプログラマブルコントローラと複数の情報処理装置との接続構成例を示す構成図である。
【図２】プログラマブルコントローラの機能構成を示すブロック図である。
【図３】アクセス制限の設定内容の一例を示す表である。
【図４】管理用コンピュータからのアクセスがあった場合の通信モジュール及びＣＰＵモジュールの処理内容の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
［実施の形態］
本発明の実施の形態について、図１乃至図４を参照して説明する。なお、以下に説明する実施の形態は、本発明を実施する上での好適な具体例として示すものであり、技術的に好ましい種々の技術的事項を具体的に例示している部分もあるが、本発明の技術的範囲は、この具体的態様に限定されるものではない。
【００１０】
図１は、設備制御装置としてのプログラマブルコントローラ１、及びプログラマブルコントローラ１が制御対象とする設備２が工場８０内に配置された製造会社８と、製造会社８の外からプログラマブルコントローラ１にアクセス可能な管理用コンピュータ９１を有する管理会社９とを模式的に示す構成図である。
【００１１】
プログラマブルコントローラ１は、電源モジュール１１、ＣＰＵモジュール１２、通信モジュール１３、出力モジュール１４、入力モジュール１５、及びこれら各モジュール１１〜１５が装着されたベース１０を有して構成されている。電源モジュール１１は、ベース１０に設けられた図略のプリント基板を介して、各モジュール１２〜１５に電源を供給する。また、ＣＰＵモジュール１２は、ベース１０のプリント基板を介して通信モジュール１３、出力モジュール１４、及び入力モジュール１５との通信が可能である。
【００１２】
出力モジュール１４は、設備２に設けられた複数のアクチュエータ２１に接続された複数の出力接点を有している。複数のアクチュエータ２１は、例えばソレノイドやモータ、あるいは油圧を制御する電磁切換弁等である。入力モジュール１５は、設備２に設けられた複数のセンサ２２からの入力信号によってオン／オフする複数の入力接点を有している。複数のセンサ２２は、例えば近接センサや光電センサ、あるいはリミットスイッチ等である。
【００１３】
ＣＰＵモジュール１２は、設備２の動作手順を示す動作プログラムに従い、入力モジュール１５の各入力接点の状態等に応じて出力モジュール１４の各出力接点をオン／オフさせることにより、設備２を制御する。設備２は、例えば工作物（ワーク）の機械加工や組み立てを行う工作機械である。ＣＰＵモジュール１２は、動作プログラム、及び動作プログラムで参照されるレジスタの数値情報、及び各種のパラメータ等を記憶している。動作プログラムは、例えば国際規格ＩＥＣ６１１３１−３に規定されたラダー言語によって記述されたシーケンスプログラムである。ＣＰＵモジュール１２が記憶するパラメータには、例えばベース１０の各装着位置に装着されるモジュールの種別の情報や、各種の通信パラメータが含まれる。
【００１４】
工場８０内では、動作プログラム編集用のコンピュータ３が通信ケーブル３０によってプログラマブルコントローラ１に接続されている。また、プログラマブルコントローラ１には、設備２を手動操作することが可能な操作盤４のタッチパネルコンピュータ４１が通信ケーブル４０によって接続されている。通信ケーブル３０，４０は、ＣＰＵモジュール１２に直接的に接続されている。本実施の形態では、動作プログラム編集用のコンピュータ３がＵＳＢ(Universal Serial Bus)接続によってＣＰＵモジュール１２との通信を行い、タッチパネルコンピュータ４１は、イーサネット（登録商標）によってＣＰＵモジュール１２との通信を行うものとする。通信ケーブル３０はＵＳＢケーブルであり、通信ケーブル４０は、一方の端部の送信端子と他方の端部の受信端子とが接続されたクロスケーブルである。
【００１５】
動作プログラム編集用のコンピュータ３は、ＣＰＵモジュール１２から動作プログラムを読み出し、読み出した動作プログラムを編集してＣＰＵモジュール１２に書き込むことが可能である。また、動作プログラム編集用のコンピュータ３は、出力モジュール１４の出力接点のオン／オフ状態や、入力モジュール１５の入力接点のオン／オフ状態をモニタすることが可能である。また、動作プログラムが例えば生産台数のカウンタ値などの数値情報を扱う演算処理命令を含んでいる場合、動作プログラム編集用のコンピュータ３は、その数値情報を記憶するレジスタの値を読み出し及び書き込み可能である。
【００１６】
操作盤４には、タッチパネルコンピュータ４１の他、設備２の自動運転モードと各個操作モードとを切り替えるセレクトスイッチ４２や、設備２の各アクチュエータ２１を動作可能な状態とする運転準備スイッチ４３、自動運転モードにおいて動作プログラムに応じた自動運転の起動を指示するための起動スイッチ４４、各個操作モードにおいてユーザによって選択されたアクチュエータ２１の動作内容の実行を指示する実行スイッチ４５、ならびに設備２の動作を即時停止させる非常停止スイッチ４６が設けられている。
【００１７】
タッチパネルコンピュータ４１は、通信ケーブル４０を介してＣＰＵモジュール１２から動作プログラムを読み出し、自動運転モードにおける動作プログラムの実行状況を画面に表示することが可能である。また、タッチパネルコンピュータ４１は、各個操作モードにおいて、アクチュエータ２１の個別の動作内容を示す複数の各個操作ボタンを画面に表示することが可能である。ユーザは、タッチパネルコンピュータ４１の画面に触れるタッチ操作により、画面に表示された各個操作ボタンの何れかを選択することができる。各個操作は、例えば設備２が何らかの異常により停止した後の復旧作業で行われる。
【００１８】
製造会社８には、工場８０内に配置されたイーサネットハブ７１を介してプログラマブルコントローラ１にアクセス可能なモニタ用コンピュータ７２が、事務所８１内に設置されている。イーサネットハブ７１は、通信ケーブル７０によって通信モジュール１３に接続されている。
【００１９】
通信モジュール１３は、イーサネットハブ７１を介してモニタ用コンピュータ７２から受信したイーサネットフレームを解析してＣＰＵモジュール１２に対するコマンドに変換し、このコマンドをＣＰＵモジュール１２に発行する。また、通信モジュール１３は、コマンドに対するレスポンスをＣＰＵモジュール１２から受信し、このレスポンスをモニタ用コンピュータ７２へのイーサネットフレームに変換し、イーサネットハブ７１を介してモニタ用コンピュータ７２に送信する。
【００２０】
また、事務所８１内には、インターネット等の不特定多数の者が利用する公衆通信網ＰＮに接続されたルータ７３が設置されている。ルータ７３は、公衆通信網ＰＮを経由して管理用コンピュータ９１から受信したＩＰ(Internet Protocol)パケットをイーサネットフレームに変換し、イーサネットハブ７１を介して通信モジュール１３に送信する。通信モジュール１３は、モニタ用コンピュータ７２からイーサネットフレームを受信した場合と同様に、イーサネットハブ７１でＩＰパケットから変換されたイーサネットフレームを解析してＣＰＵモジュール１２に対するコマンドに変換し、このコマンドをＣＰＵモジュール１２に発行する。また、通信モジュール１３は、コマンドに対するレスポンスをＣＰＵモジュール１２から受信して、このレスポンスをイーサネットフレームに変換し、イーサネットハブ７１及びルータ７３を介して管理用コンピュータ９１に送信する。
【００２１】
モニタ用コンピュータ７２は、通信モジュール１３との通信により、設備２の動作状況をモニタすることが可能である。また、モニタ用コンピュータ７２は、イーサネットハブ７１及びルータ７３を介して、公衆通信網ＰＮに接続されたサーバやコンピュータ等にアクセスすることが可能である。管理用コンピュータ９１は、公衆通信網ＰＮを経由して通信モジュール１３との通信を行うことにより、例えば工場８０における製品の生産台数などを管理することが可能である。
【００２２】
ところで、プログラマブルコントローラ１には、前述のように、公衆通信網ＰＮからルータ７３を介してアクセス可能であるので、プログラマブルコントローラ１に対して公衆通信網ＰＮを経由した不正アクセスが行われるおそれがある。この対策として、例えばパスワードによるユーザ認証を行うことが考えられるが、このようなユーザ認証を行ったとしても、例えばパスワードが漏洩してしまった場合や管理用コンピュータ９１がコンピュータウイルスに感染した場合などには、不正アクセスを確実に防ぐことができない。
【００２３】
また、モニタ用コンピュータ７２がコンピュータウイルスに感染した場合には、モニタ用コンピュータ７２を踏み台として、公衆通信網ＰＮを経由したプログラマブルコントローラ１への不正アクセスが試みられるおそれもある。
【００２４】
このような不正アクセスにより、例えばＣＰＵモジュール１２の動作プログラムやレジスタのデータあるいはパラメータが書き換え（変更又は消去）されたり、動作プログラムの実行の開始又は停止がなされると、設備２の正常な稼働が妨害されて損害が発生したり、工場８０の管理業務に支障が生じるおそれがある。このため、本実施の形態では、以下に述べるプログラマブルコントローラ１の構成により、セキュリティの向上を図っている。
【００２５】
図２は、プログラマブルコントローラ１の機能構成を示すブロック図である。プログラマブルコントローラ１は、外部の情報処理装置との通信が可能な第１乃至第３の通信受け口６１〜６３と、設備２を制御する設備制御部５１と、第１乃至第３の通信受け口６１〜６３を介した通信を制御する通信制御部５２と、を備えている。
【００２６】
第１の通信受け口６１は、動作プログラム編集用のコンピュータ３に接続されるＵＳＢコネクタである。第２の通信受け口６２は、操作盤４のタッチパネルコンピュータ４１に接続されるＬＡＮコネクタである。第３の通信受け口６３は、イーサネットハブ７１に接続されるＬＡＮコネクタである。第１の通信受け口６１及び第２の通信受け口６２は、ＣＰＵモジュール１２に設けられている。第３の通信受け口６３は、通信モジュール１３に設けられている。動作プログラム編集用のコンピュータ３、タッチパネルコンピュータ４１、モニタ用コンピュータ７２、及び管理用コンピュータ９１は、本発明の外部の情報処理装置の一態様である。
【００２７】
設備制御部５１は、設備２の動作手順を示す動作プログラム、動作プログラムで参照される数値情報（レジスタデータ）、及び各種のパラメータを記憶する記憶部５１１を有している。記憶部５１１は、例えばフラッシュメモリ等の書き換え可能な不揮発性メモリからなる。本実施の形態では、ＣＰＵモジュール１２のマイクロプロセッサ（Central Processing Unit）がシステムプログラムを実行することにより、設備制御部５１及び通信制御部５２の機能が実現される。ただし、これに限らず、例えばＰＬＤ（programmable logic device）やＡＳＩＣ（application specific integrated circuit）等の集積回路によって設備制御部５１及び通信制御部５２を実現してもよい。なお、通信制御部５２の機能の一部が通信モジュール１３に組み込まれていてもよい。
【００２８】
設備制御部５１は、入力モジュール１５から各入力接点の状態を示す信号を受信し、動作プログラムにしたがって各出力接点をオン／オフさせる信号を出力モジュール１４に送信することで、設備２を動作させる。
【００２９】
通信制御部５２は、情報処理装置からの設備制御部５１へのアクセスを制限するアクセス制限の設定を受け付け可能である。本実施の形態では、プログラマブルコントローラ１が第１乃至第３の通信受け口６１〜６３を有しているので、通信制御部５２は、第１乃至第３の通信受け口６１〜６３ごとにアクセス制限の設定を受け付け可能である。アクセス制限の内容は、例えば動作プログラム編集用のコンピュータ３によって設定され、通信制御部５２の記憶部５２１に記憶される。記憶部５２１は、例えばフラッシュメモリ等の書き換え可能な不揮発性メモリからなる。
【００３０】
ただし、アクセス制限の設定を、例えば複数の接点のオン又はオフ状態を機械的に切り替え可能なディップスイッチによって行ってもよい。つまり、アクセス制限の設定は、正規のユーザが設定及び変更可能なものであればよい。また、通信制御部５２の記憶部５２１が不揮発性メモリからなる場合、設備制御部５１の記憶部５２１と同じメモリＩＣを用いてもよい。この場合、当該メモリＩＣの一部の記憶領域が設備制御部５１の記憶部５２１として用いられ、他の一部の記憶領域が通信制御部５２の記憶部５２１として用いられる。
【００３１】
通信制御部５２は、情報処理装置が設備制御部５１の記憶部５１１の記憶内容を読み出するための要求を許可し、かつ設備制御部５１の記憶部５１１の記憶内容を書き換えるための要求を不許可とするアクセス制限を設定可能である。また、通信制御部５２は、アクセス制限として、設備制御部５１による設備２の動作（動作プログラムの実行）の開始又は停止の要求を不許可とする設定を受け付け可能である。次に、このアクセス制限の具体的な設定例について図３を参照して説明する。
【００３２】
図３は、アクセス制限の設定内容の一例を示す表である。この表に示されるように、アクセス制限は、第１乃至第３の通信受け口６１〜６３ごとに、動作プログラムの読み出し及び書き込み、レジスタデータの読み出し及び書き込み、パラメータの読み出し及び書き込み、ならびに動作プログラムの実行停止及び実行開始について設定されている。
【００３３】
図３の設定例では、第１及び第２の通信受け口６１，６２については、設備制御部５１に対する上記すべてのアクセスが許可されており、第３の通信受け口６３については、動作プログラムの書き込み、レジスタデータの書き込み、パラメータの書き込み、ならびに動作プログラムの実行停止及び実行開始が不許可となっている。このアクセス制限は、イーサネットハブ７１を介するプログラマブルコントローラ１へのアクセスが公衆通信網ＰＮを経由して行い得ることを考慮して、不正アクセスにより設備２の正常な稼働が影響を受けることを防ぐためになされたものである。
【００３４】
図４は、管理用コンピュータ９１からのアクセスがあった場合の通信モジュール１３及びＣＰＵモジュール１２の処理内容の一例を示すフローチャートである。
【００３５】
このフローチャートにおいて、管理用コンピュータ９１は、ＣＰＵモジュール１２の設備制御部５１へのアクセスするためのコマンドを作成し（ステップＳ１１）、作成したコマンドを送信する（ステップＳ１２）。通信モジュール１３は、このコマンドをイーサネットフレームとして受信し（ステップＳ２１）、ＣＰＵモジュール１２に対するコマンドに変換し（ステップＳ２２）、ＣＰＵモジュール１２に発行する（ステップＳ２３）。ＣＰＵモジュール１２の通信制御部５２は、通信モジュール１３からのコマンドを受け付け（ステップＳ３１）、記憶部５２１に記憶されたアクセス制限の内容を参照して当該コマンドがアクセス制限の規制対象か否かを判定する（ステップＳ３２）。
【００３６】
この判定の結果、規制対象でなければ（Ｓ３２：Ｎｏ）、当該コマンドを実行して（ステップＳ３３）レスポンスを作成し（ステップＳ３４）、通信モジュール１３に送出する（ステップＳ３５）。このレスポンスは、動作プログラムやレジスタデータもしくはパラメータの読み出しのコマンドに対しては、設備制御部５１の記憶部５１１から読み出したこれらの内容を含むものであり、動作プログラムやレジスタデータもしくはパラメータの書き込みのコマンドに対しては、その書き込みを行ったことを示すものである。また、動作プログラムの実行停止又は実行開始のコマンドに対しては、その処理を実行したことを示すものである。
【００３７】
一方、ステップＳ３２の判定の結果、当該コマンドが規制対象のものであれば（Ｓ３２：Ｙｅｓ）、アクセス制限によりコマンドの処理を実行できなかったことを示すエラーレスポンスを作成し（ステップＳ３６）、通信モジュール１３に送出する（ステップＳ３５）。
【００３８】
通信モジュール１３では、ステップＳ３５でＣＰＵモジュール１２から送られたレスポンスを受信し（ステップＳ２４）、このレスポンスをイーサネットフレームに変換し（ステップＳ２５）、イーサネットハブ７１及びルータ７３を介してコマンド発行元である管理用コンピュータ９１に送信する（ステップＳ２６）。管理用コンピュータ９１は、公衆通信網ＰＮを経由してこのレスポンスを受信する（ステップＳ１３）。
【００３９】
なお、第１の通信受け口６１又は第２の通信受け口６２からＣＰＵモジュール１２がコマンドを受信した場合には、通信モジュール１３による中継処理が行われない他は、上記と同様の処理がなされる。通信制御部５２は、例えばコマンドのヘッダに含まれる情報により、第１乃至第３の通信受け口６１〜６３のうち何れの通信受け口からのコマンドであるかを判別することが可能である。
【００４０】
（実施の形態の作用及び効果）
以上説明した実施の形態によれば、例えば図１に例示したような通信の接続構成に応じて、各情報処理装置の正規な使用における必要性に応じたアクセス制限を行うことができる。このアクセス制限は、物理的な接続部である第１乃至第３の通信受け口６１〜６３のそれぞれに対して行われるので、例えばパスワードによるユーザ認証に比較して、不正アクセスをより確実に抑止することができる。
【００４１】
（付記）
以上、本発明を実施の形態に基づいて説明したが、これらの実施の形態は特許請求の範囲に係る発明を限定するものではない。また、実施の形態の中で説明した特徴の組合せの全てが発明の課題を解決するための手段に必須であるとは限らない点に留意すべきである。
【００４２】
また、本発明は、その趣旨を逸脱しない範囲で適宜変形して実施することが可能である。例えば、上記の実施の形態では、ＵＳＢ接続及びイーサネットにより情報処理装置がプログラマブルコントローラ１との通信を行う場合について説明したが、これに限らず、例えばWi-FiやBluetooth（登録商標）等の無線通信によってプログラマブルコントローラ１と情報処理装置との通信を行うようにしてもよい。また、設備制御装置としては、プログラマブルコントローラに限らず、例えば電動モータを制御するＮＣ（Numerical Control）装置に本発明を適用することも可能である。
【符号の説明】
【００４３】
１…プログラマブルコントローラ（設備制御装置）
２…設備
３…動作プログラム編集用のコンピュータ（情報処理装置）
４１…タッチパネルコンピュータ（情報処理装置）
５１…設備制御部
５１１…記憶部
５２…通信制御部
６１…第１の通信受け口
６２…第２の通信受け口
６３…第３の通信受け口
７２…モニタ用コンピュータ（情報処理装置）
９１…管理用コンピュータ（情報処理装置）
【図１】
2020004261.tif 000003
【図２】
2020004261.tif 000004
【図３】
2020004261.tif 000005
【図４】
2020004261.tif 000006