(57)【特許請求の範囲】
【請求項１】
接続される機器から入力される信号に基づいて制御プログラムを実行可能なプログラマブルロジックコントローラであって、
前記制御プログラム実行中に発生したエラーを検出するエラー検出部と、
前記エラー検出部がエラーを検出しているか否かをエラーの種類ごとに示すエラー発生情報を記憶する記憶部と、
前記エラー検出部が検出する各エラーに関して、自動解除可能なエラーか否かの情報を記憶するエラー解除可否設定記憶部と、
前記エラー検出部がエラーを検出した際に、前記エラー解除可否設定記憶部に記憶されている情報に基づいて、自動解除可能なエラーであるか否かを判定するエラー解除可否判定部と、
前記エラー解除可否判定部が自動解除可能なエラーであると判定したエラーに関して、エラー要因が解消されているか否かを判定し、前記エラー要因が解消されている場合には、前記エラー発生情報をエラー未発生に変更する処理を含むエラー解除処理を行うエラー解除処理部と、
前記エラー検出部がエラーを検出した際に、エラー発生中であることを通知する通知装置とを有し、
前記エラー解除処理は、前記通知装置におけるエラー発生中であることの通知を非通知とする処理と、内部メモリ又はプログラマブルロジックコントローラに装着された外部メモリに、前記エラー発生情報をエラー未発生に変更する処理を行ったことを示す情報を記録する処理とを含むことを特徴とするプログラマブルロジックコントローラ。
【請求項２】
接続される機器から入力される信号に基づいて制御プログラムを実行可能なプログラマブルロジックコントローラであって、
前記制御プログラム実行中に発生したエラーを検出するエラー検出部と、
前記エラー検出部がエラーを検出しているか否かをエラーの種類ごとに示すエラー発生情報を記憶する記憶部と、
前記エラー検出部が検出する各エラーに関して、自動解除可能なエラーか否かの情報を記憶するエラー解除可否設定記憶部と、
前記エラー検出部がエラーを検出した際に、前記エラー解除可否設定記憶部に記憶されている情報に基づいて、自動解除可能なエラーであるか否かを判定するエラー解除可否判定部と、
前記エラー解除可否判定部が自動解除可能なエラーであると判定したエラーに関して、エラー要因が解消されているか否かを判定し、前記エラー要因が解消されている場合には、前記エラー発生情報をエラー未発生に変更する処理を含むエラー解除処理を行うエラー解除処理部と、
前記エラー検出部がエラーを検出した際に、エラー発生中であることを通知する通知装置とを有し、
前記エラー解除処理は、前記通知装置におけるエラー発生中であることの通知を非通知とする処理と、前記エラー発生情報をエラー未発生に変更する処理を行ったことを示す情報を外部機器へ送信する処理とを含むことを特徴とするプログラマブルロジックコントローラ。
【請求項３】
前記エラー解除可否設定記憶部に記憶させる設定内容を更新する処理を、前記制御プログラムの実行とは独立して行うデータ更新部を有することを特徴とする請求項１又は２に記載のプログラマブルロジックコントローラ。
【請求項４】
接続される機器から入力される信号に基づいて制御プログラムを実行可能なプログラマブルロジックコントローラであって、
前記制御プログラム実行中に発生したエラーを検出するエラー検出部と、
前記エラー検出部がエラーを検出しているか否かをエラーの種類ごとに示すエラー発生情報を記憶する記憶部と、
前記エラー検出部が検出する各エラーに関して、自動解除可能なエラーか否かの情報を記憶するエラー解除可否設定記憶部と、
前記エラー検出部がエラーを検出した際に、前記エラー解除可否設定記憶部に記憶されている情報に基づいて、自動解除可能なエラーであるか否かを判定するエラー解除可否判定部と、
前記エラー解除可否判定部が自動解除可能なエラーであると判定したエラーに関して、エラー要因が解消されているか否かを判定し、前記エラー要因が解消されている場合には、前記エラー発生情報をエラー未発生に変更する処理を含むエラー解除処理を行うエラー解除処理部と、
前記エラー解除可否設定記憶部に記憶させる設定内容を更新する処理を、前記制御プログラムの実行とは独立して行うデータ更新部とを有することを特徴とするプログラマブルロジックコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検出した異常、警告、ユーザ定義異常などの各種エラー（以下、「エラー」と称す。）に対する要因が解消された後、ユーザの手動操作なしに、自身の制御を継続したまま、エラーを自動解除するプログラマブルロジックコントローラに関する。
【背景技術】
【０００２】
プログラマブルロジックコントローラがエラーを検出した際、優先度の高いものから順に並び替え、優先度の高いものから順にエラーの対処動作及びエラーの解除処理を自動で行うことが可能である（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２１３３４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
プログラマブルロジックコントローラがシステムの制御を行っている際、エラーを検出した後、検出したエラーのエラー要因が解消されている場合でも、エラー発生中の状態となっている。そのため、プログラマブルロジックコントローラのエラー状態を解消し、表示装置などのエラー表示をクリアするためには、エンジニアリングツールなどによる手動操作又はプログラマブルロジックコントローラの再起動が必要となっていた。このため、手動によるエラー解除操作にかかる保守コストや、システムダウンによる損失が発生していた。また、特にプラント設備など、できる限りシステムの制御を継続すべき設備・装置においては、システムをダウンすること自体許されないケースが多く存在する。【０００５】
特許文献１に記載のプログラマブルロジックコントローラでは、検出したエラーの解除処理を優先度の高いものから自動で行うように構成されている。しかし、エラーを解除する際、エラー要因が解消されているかどうかはチェックしないため、エラー要因が解消されていない間はエラー状態とし、エラー要因が解消されたのちに自動的にエラーを解除するという動作は不可能であった。また、エラー要因が解消していない状態においては、発生中のエラー状態は、表示装置上やプログラマブルロジックコントローラに接続したエンジニアリングツール上で確認することができなかった。すなわち、エラーが発生したことを通知することなくエラーを解除してしまうため、エラー要因が生じないように対策をとることが難しくなってしまう場合があった。【０００６】
本発明は、上記に鑑みてなされたものであって、自動解除可能なエラーを検出した後、エラー要因が解消されている場合に自動的にエラーを解除することにより、保守コストの削減やシステムダウンの回避を実現するプログラマブルロジックコントローラを得ることを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、接続される機器から入力される信号に基づいて制御プログラムを実行可能なプログラマブルロジックコントローラであって、制御プログラム実行中に発生したエラーを検出するエラー検出部と、エラー検出部がエラーを検出しているか否かをエラーの種類ごとに示すエラー発生情報を記憶する記憶部と、エラー検出部が検出する各エラーに関して、自動解除可能なエラーか否かの情報を記憶するエラー解除可否設定記憶部と、エラー検出部がエラーを検出した際に、エラー解除可否設定記憶部に記憶されている情報に基づいて、自動解除可能なエラーであるか否かを判定するエラー解除可否判定部と、エラー解除可否判定部が自動解除可能なエラーであると判定したエラーに関して、エラー要因が解消されているか否かを判定し、エラー要因が解消されている場合には、エラー発生情報をエラー未発生に変更する処理を含むエラー解除処理を行うエラー解除処理部と、エラー検出部がエラーを検出した際に、エラー発生中であることを通知する通知装置とを有し、エラー解除処理は、通知装置におけるエラー発生中であることの通知を非通知とする処理と、内部メモリ又はプログラマブルロジックコントローラに装着された外部メモリに、エラー発生情報をエラー未発生に変更する処理を行ったことを示す情報を記録する処理とを含むことを特徴とする。
【発明の効果】
【０００８】
本発明にかかるプログラマブルロジックコントローラは、エラー要因が解消していない状態においても発生中のエラー状態を確認できるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、本発明の実施の形態にかかるプログラマブルロジックコントローラを用いたＦＡシステムの構成を示す図である。
【図２】図２は、本発明にかかるプログラマブルロジックコントローラの実施の形態の構成を示す図である。
【図３】図３は、プログラマブルロジックコントローラの機能構成を示す図である。
【図４】図４は、エラー検出部に定義されたエラー検出処理の一例を示す図である。
【図５】図５は、エラー自動解除可否判定部の一例を示す図である。
【図６】図６は、エラー自動解除可否設定の一例を示す図である。
【図７】図７は、現在発生中エラーの一例を示す図である。
【図８】図８は、エンジニアリングツールの構成を示す図である。
【図９】図９は、エラー自動解除可否設定の設定画面の一例を示す図である。
【図１０】図１０は、外部機器の構成を示す図である。
【図１１】図１１は、プログラマブルロジックコントローラの設定段階での動作の流れを示すフローチャートである。
【図１２】図１２は、実施の形態にかかるプログラマブルロジックコントローラのエラー検出及びエラー自動解除の動作の流れを示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下に、本発明にかかるプログラマブルロジックコントローラの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１１】
実施の形態．
図１は、本発明の実施の形態にかかるプログラマブルロジックコントローラを用いたＦＡ（Factory  Automation）システムの構成を示す図である。プログラマブルロジックコントローラ３は、ネットワーク４などの通信媒体を通じてエンジニアリングツール１に接続される。また、プログラマブルロジックコントローラ３は、エンジニアリングツール１とは異なる外部機器２を、ネットワーク４を通じて接続可能である。
【００１２】
プログラマブルロジックコントローラ３には、制御対象機器５やセンサ６、アンプ７などが接続される。プログラマブルロジックコントローラ３は、制御対象機器５やセンサ６から入力される信号に基づいてシーケンスプログラムを実行し、シーケンスプログラムを実行して生成した出力信号を制御対象機器５やアンプ７へ出力することによって、制御対象機器５やアンプ７を制御する。ただし、制御対象機器５やアンプ７を制御する動作を行う際（換言すると、シーケンスプログラムを実行する際）は、エンジニアリングツール１との接続は必須ではない、
【００１３】
図２は、本発明にかかるプログラマブルロジックコントローラの実施の形態の構成を示す図である。プログラマブルロジックコントローラ３は、ＣＰＵ３０１、ＲＯＭ（Read  Only  Memory）３０２、メモリ３０３、データメモリ３０４、通信インタフェース（Interface,  I/F）３０５及び表示装置３０６を有する。ＣＰＵ３０１は、ＲＯＭ３０２に格納されているファームウェアを実行する演算装置である。ＲＯＭ３０２は、ＣＰＵ３０１が実行するファームウェアを不揮発に記憶する。メモリ３０３は、ＣＰＵ３０１がファームウェアを実行する際に用いるワークエリアである。データメモリ３０４は、情報を不揮発に記憶する装置であり、１又は複数のメモリ素子で構成されている。通信Ｉ／Ｆ３０５は、ネットワーク４を通じてエンジニアリングツール１や外部機器２と通信するためのインタフェースである。表示装置３０６は、プログラマブルロジックコントローラ３の状態を表示するための表示装置である。表示装置３０６は、点灯色や点灯パターンが可変とされたＬＥＤ（Light Emitting Diode）などを適用可能である。
【００１４】
ＣＰＵ３０１がファームウェアを実行することにより、ＣＰＵ３０１とＣＰＵ３０１がワークエリアとして用いるメモリ３０３との上には、複数の機能部が形成される。図３は、プログラマブルロジックコントローラの機能構成を示す図である。なお、図３では、各機能部を全てメモリ３０３上に図示している。メモリ３０３には、通信部３１、データ更新部３２、エラー自動解除可否設定取得部３４、エラー自動解除処理部３５、エラー検出部３６、エラー自動解除可否判定部３７及び表示装置更新部３８が形成されている。
【００１５】
通信部３１は、ネットワークなどの通信媒体を通じてエンジニアリングツール１や外部機器２と通信する機能部である。データ更新部３２は、通信部３１からエラー自動解除可否設定を受け取り、受け取ったエラー自動解除可否設定をデータメモリ３０４内にエラー自動解除可否設定として格納する。また、データ更新部３２は、エラー自動解除可否設定をデータメモリ３０４に格納したのち、格納した旨をエラー自動解除可否設定取得部３４に通知する。エラー自動解除可否設定取得部３４は、データメモリ３０４からエラー自動解除可否設定を読み出して、エラー自動解除可否判定部３７に出力する。なお、エラー自動解除可否設定取得部３４がデータメモリ３０４からエラー自動解除可否設定３３２を読み出すタイミングは、プログラマブルロジックコントローラが電源ＯＮ等による起動時、またはリセット等の手段による再起動時、及びデータ更新部３２からエラー自動解除可否設定取得部３４に対してデータ更新を通知されたタイミングである。
【００１６】
エラー要因について具体例を挙げて説明すると、バッテリエラーでは、バッテリが切れたこと、又は、切れかかっていることがエラー要因であり、バッテリを交換することによりエラー要因が解消される。ユニット異常では、プログラマブルロジックコントローラ３を構成するユニットの異常を検出したことがエラー要因であり、異常を検出したユニットを正常なユニットに交換することでエラー要因が解消される。演算エラーは、プログラムの演算が不正であること、例えば０での除算を行ったことがエラー要因であり、再度同様の演算箇所で正常に演算できた場合にエラー要因が解消される。
【００１７】
エラー検出部３６は、制御プログラム実行中にプログラマブルロジックコントローラ３に発生したエラーを検出する。エラー検出部３６には、エラーコードごとに異なるエラー検出処理３６１を定義可能である。ここで、エラー検出処理ｎは、エラーコードｎを検出する処理を示す。なお、異なるエラーに対して同一のエラー検出処理を定義することも可能である。また、１台のプログラマブルロジックコントローラに対して、エラーコード及びエラー検出処理を複数定義可能である。図４は、エラー検出部に定義されたエラー検出処理の一例を示す図である。エラー検出部３６には、エラー検出処理３６１として、エラー検出処理１〜エラー検出処理ｎが定義されている。
【００１８】
エラー自動解除可否判定部３７は、エラー自動解除可否設定取得部３４が取得したエラー自動解除可否設定に基づき、エラーコードｎが自動解除可能か判定する。図５は、エラー自動解除可否判定部の一例を示す図である。エラー自動解除可否判定部３７には、エラーの自動解除が可能であるかを判断する処理であるエラー自動解除可否判定処理３７１の手順が、エラーコード１〜エラーコードｎについて登録されている。
【００１９】
表示装置更新部３８は、表示装置３０６の表示内容を更新する処理を行う。
【００２０】
データメモリ３０４には、エラー自動解除履歴３３１、エラー自動解除可否設定３３２及び現在発生中エラー３３３が格納される。データメモリ３０４は、エラー検出部３６がエラーを検出しているか否かをエラーの種類ごとに示すエラー発生情報を記憶する記憶部である。
【００２１】
エラー自動解除履歴３３１は、エラー自動解除処理部３５がエラーを自動解除した場合に、どのエラーを自動解除したかを示す情報がエラー自動解除処理部３５によって追加記録される。
【００２２】
エラー自動解除可否設定３３２は、各エラーコードに対応するエラーが自動解除可能なエラーであるか否かを示す情報である。図６は、エラー自動解除可否設定の一例を示す図である。エラー自動解除可否設定３３２は、エラーコードｎ（ｎは、プログラマブルロジックコントローラ３が検出するエラーの総数）に対応するエラーが自動解除可能なエラーであるか否かを示す情報であるエラー自動解除可否設定３３２１を含む。すなわち、エラー自動解除可否設定３３２は、プログラマブルロジックコントローラ３が検出しうる全てのエラーについてのエラー自動解除可否設定３３２１を含んでいる。
【００２３】
なお、エラーが自動解除可能なエラーであるか否かの設定は、後述するように、各エラーコードに個別に行うのみならず、複数のエラーコードを予めグループ化しておいて、グループごとに設定することも可能である。
【００２４】
現在発生中エラー３３３は、エラーが現在発生中であるか否かをエラーコードごとに示す情報である。図７は、現在発生中エラーの一例を示す図である。現在発生中エラー３３３は、エラーコードｎに対応するエラーが現在発生中であるか否かを示すエラー発生情報３３３１を含む。
【００２５】
図８は、実施の形態にかかるプログラマブルロジックコントローラとともにＦＡシステムに用いられるエンジニアリングツールの構成を示す図である。エンジニアリングツール１は、通信部１１及びエラー自動解除設定部１２を備える。通信部１１は、ネットワーク４などの通信媒体を通じてプログラマブルロジックコントローラ３と通信するための機能部である。エラー自動解除設定部１２は、ユーザからのエラー自動解除可否の設定操作を受け付ける機能部である。
【００２６】
図９は、エラー自動解除可否設定の設定画面の一例を示す図である。エラー自動解除可否設定画面５０は、エラー自動解除可否の設定を行う際にエンジニアリングツール１に表示される。エラー自動解除可否設定画面５０は、プログラマブルロジックコントローラ３が検出しうるエラーを一覧表示するエラー表示欄５１と、自動解除可能なエラーであるか否かを示す設定欄５２とを備えている。各エラーは、エラーの内容に応じてグループ分けされており、各グループのグループ名を表示するグループ名表示欄５３が設けられている。設定欄５２中の各エラーに対応する部分には、「自動解除する」又は「自動解除しない」をエラー自動解除可否設定として設定可能であり、エラー自動解除可否設定の設定内容はエンジニアリングツール１に保持される。エンジニアリングツール１に対して、エラー自動解除可否設定の転送を要求する操作がユーザによって行われると、ネットワーク４を通じてエラー自動解除可否設定の設定内容がプログラマブルロジックコントローラ３に転送され、エラー自動解除可否設定３３２として格納される。
【００２７】
なお、図９に示したエラー自動解除可否設定画面５０は、設定欄５２のグループ名に対応する部分にも「自動解除する」又は「自動解除しない」を設定可能であり、グループ名に対応する部分に自動解除可否の設定がされた場合には、グループ内の全てのエラーに対して同様の設定が適用される。図９では、ユニット異常のグループに属するエラーは、設定欄のグループ名に対応する部分に自動解除可否の設定がされていないため、各エラーに対し個別に自動解除の可否を設定している。一方、バッテリ異常のグループに属するエラーは、設定欄のグループ名に対応する部分に自動解除可否の設定がされているため、グループ内の全てのエラーに同じ設定が適用されている。
【００２８】
図１０は、実施の形態にかかるプログラマブルロジックコントローラとともにＦＡシステムに用いられる外部機器の構成を示す図である。外部機器２は、通信部２１を有する。通信部２１は、ネットワーク４などの通信媒体を通じてプログラマブルロジックコントローラ３と通信する機能部である。外部機器２は、パーソナルコンピュータやプログラマブル表示器などの機器である。
【００２９】
図１１は、プログラマブルロジックコントローラの設定段階での動作の流れを示すフローチャートである。プログラマブルロジックコントローラ３の設定段階の動作について図１１のフローチャートに基づいて説明する。説明中に記載するＳ１０１、Ｓ１０２・・・は、処理手順（ステップ）の番号を表す。エンジニアリングツール１では、ユーザがエラー自動解除設定部１２にて、エラー自動解除可否設定を行う。エラー自動解除設定部１２が受け付けたエラー自動解除可否設定は通信部１１へと渡され、通信部１１からプログラマブルロジックコントローラ３へ送信される。プログラマブルロジックコントローラ３の通信部３１は、エンジニアリングツール１から送信された自動解除可否設定を受信する（ステップＳ１０１）。通信部３１は、受信したエラー自動解除可否設定をデータ更新部３２に渡す（ステップＳ１０２）。データ更新部３２は、通信部３１から受け取ったエラー自動解除設定をデータメモリ３０４内部にエラー自動解除可否設定３３２として格納する（ステップＳ１０３）。エラー自動解除可否設定３３２は、エラーコードごとにエラー自動解除可能か不可かの設定（エラー自動解除可否設定３３２１）を保持する。
【００３０】
エラー自動解除可否設定取得部３４は、データメモリ３０４に格納されたエラー自動解除可否設定３３２を読み出す（ステップＳ１０４）。そして、エラー自動解除可否設定取得部３４は、エラー自動解除可否設定３３２をエラー自動解除可否判定部３７に出力する（ステップＳ１０５）。以上の手順により、エラー自動解除可否判定部３７は、各エラーコードに対応するエラーについて、自動解除可能なエラーであるか否かを判定可能な状態となる。
【００３１】
図１２は、実施の形態にかかるプログラマブルロジックコントローラのエラー検出及びエラー自動解除の動作の流れを示すフローチャートである。プログラマブルロジックコントローラ３のエラー検出及びエラー自動解除について図１２のフローチャートに基づいて説明する。説明中に記載するＳ３０１、Ｓ３０２・・・は、処理手順（ステップ）の番号を表す。
【００３２】
エラー検出部３６は、エラー検出処理ｎによりエラーコードｎを検出したとき（ステップＳ３０１）、現在発生中エラー３３３中のエラーコードｎに対して、エラー発生情報３３３１の値を「エラーなし」から「エラーあり」に更新する（ステップＳ３０２）。合わせて、エラー検出部３６は、エラーコードｎのエラーが発生したことを表示装置更新部３８に通知する（ステップＳ３０３）。表示装置更新部３８は、表示装置３０６の状態をエラー発生中の表示に更新する（ステップＳ３０４）。
【００３３】
さらに、エラー検出部３６は、エラー自動解除可否判定部３７に対して、エラーコードｎのエラーが発生中であることを通知する（ステップＳ３０５）。エラー自動解除可否判定部３７は、エラー自動解除可否設定取得部３４から受信済のエラー自動解除可否設定３３２を参照して判定処理を行い、発生中であることを通知されたエラーコードｎのエラーが自動解除可能であるか否かを判定する（ステップＳ３０６）。エラーコードｎのエラーが自動解除可能であると判定した場合（ステップＳ３０６／Ｙｅｓ）、エラー自動解除可否判定部３７は、エラー自動解除処理部３５に対して、エラーコードｎのエラー自動解除処理を実行するように依頼する（ステップＳ３０７）。エラーコードｎのエラーが自動解除可能ではないと判定した場合（ステップＳ３０６／Ｎｏ）、処理を終了する。
【００３４】
エラー自動解除処理部３５は、エラー自動解除可否判定部３７からエラー自動解除処理を依頼されたエラーについて、エラーを自動解除して良い状態になったか否かを定期的に判定する（ステップＳ３０８）。自動解除して良い状態ではない場合（ステップＳ３０８／ＮＯ）、所定時間経過後にエラーを自動解除して良い状態になったかの判断を行う。
【００３５】
例えば、バッテリエラーの場合には、エラー自動解除処理部３５は、バッテリの交換がなされた後に、エラー要因が解消されてエラーを自動解除して良い状態になったと判断する。別の例として、ユニット異常の場合には、プログラマブルロジックコントローラ３の電源をオンしたままユニットを交換し、プログラマブルロジックコントローラ３が交換後のユニットが正常であると認識した場合に、エラー自動解除処理部３５はエラー要因が解消されてエラーを自動解除して良い状態になったと判断する。また、別の例として、演算エラーの場合は、プログラマブルロジックコントローラ３の電源がオンの状態で、再度同様の演算箇所で演算できた際に、エラー自動解除処理部３５は、エラー要因が解消されてエラーを自動解除して良い状態になったと判断する。なお、演算エラーの自動解除は、プログラマブルロジックコントローラ３の動作時に外乱等の影響でデータが反転することによって演算エラーが発生し、その後の演算ではデータが反転せずに正常に演算できた場合などに行われることになる。具体的には、二進数の「１０」で除算すべきところを「００」で除算することによって演算エラーが発生し、その後、同様の演算箇所において「１０」で除算が行われることによってエラー要因が解消される。
【００３６】
自動解除して良い状態である場合（ステップＳ３０８／Ｙｅｓ）、エラー自動解除処理部３５は、エラー自動解除処理として、以下に説明するステップＳ３０９〜Ｓ３１３の処理を行う。
【００３７】
エラー自動解除処理部３５は、現在発生中エラー３３３のエラー発生情報３３３１を「エラーあり」から「エラーなし」に更新する（ステップＳ３０９）。また、エラー自動解除処理部３５は、表示装置更新部３８に対してエラーを解除したことを通知する（ステップＳ３１０）。エラー自動解除処理部３５からの通知を受けた表示装置更新部３８は、表示装置３０６の表示状態をエラーなしの表示状態に更新する（ステップＳ３１１）。また、エラー自動解除処理部３５は、自動でエラーを解除したことを示す情報をエラー自動解除履歴３３１に履歴として追加記録する（ステップＳ３１２）。なお、ここではデータメモリ３０４にエラー自動解除履歴３３１を格納する場合を例としているが、プログラマブルロジックコントローラ３に不図示の外部メモリを接続し、外部メモリにエラー自動解除履歴を格納するようにしても良い。さらに、エラー自動解除処理部３５は、エラー解除の履歴を通信部３１に出力する。これにより、エラー自動解除処理部３５は、通信部３１を経由して、エラー自動解除の履歴を外部機器２の通信部２１に対して送信する（ステップＳ３１３）。
【００３８】
本実施の形態では、プログラマブルロジックコントローラ３は、エラー検出処理及び該当エラーのエラー要因が解消されているか否かの判定処理（すなわち、エラー自動解除判定処理。）をエラーごとに定義可能としている。したがって、エラー発生中にエラー要因解消判定処理を定期的に実行し、エラー要因が解消されている場合に、エラーの自動解除を実行可能である。エラーの検出からエラーの自動解除までの一連の処理は、制御を継続したまま行うことが可能である。
【００３９】
エラー自動解除処理部３５は、検出したエラーに関し、予めエラー自動解除を実施するようにエラー自動解除可否設定３３２に設定されている場合にのみエラーの自動解除処理を行う。この設定は、エラー種別ごとに定義可能であり、プログラマブルロジックコントローラ３が稼働中に変更された場合、データ更新部３２が変更後の設定内容をデータメモリ３０４に（具体的には、エラー自動解除可否設定３３２に）即時反映するため、新たな設定に基づき処理を継続することができる。
【００４０】
エラー自動解除処理部３５がエラーを自動解除する際、合わせて表示装置３０６の表示内容を表示装置更新部３８に更新させる。これにより、エラー要因が解消していない状態においては、発生中のエラー状態は、表示装置３０６上で確認できる。また、現在発生中エラー３３３やエラー自動解除履歴３３１をプログラマブルロジックコントローラ３内の記憶媒体（すなわち、データメモリ３０４）に格納するため、エラー要因が解消していない状態においては、発生中のエラー状態は、プログラマブルロジックコントローラ３に接続したエンジニアリングツール１上で確認することができる。さらに、また、エラーの自動解除に関する履歴を外部機器２へ送信するため、エラー要因が解消していない状態においては、発生中のエラー状態は、外部機器２上で確認することができる。
【００４１】
本実施の形態にかかるプログラマブルロジックコントローラ３は、エラー要因が解消されたのち、エラーを自動解除することで、手動によるエラー解除操作にかかる保守コストを削減し、再起動等のシステムダウンによる損失を回避できる。また、プログラマブルロジックコントローラ３は、特にプラント設備など、システムをダウンすること自体困難な設備や装置に対しても適用することが可能である。
【００４２】
また、本実施の形態にかかるプログラマブルロジックコントローラ３は、自動解除エラーごとに定義可能であるため、システムごとに柔軟な運用が可能である。
【００４３】
さらに、本実施の形態にかかるプログラマブルロジックコントローラ３は、自動的にエラーを解除した際、プログラマブルロジックコントローラ３内のデータメモリ３０４又はプログラマブルロジックコントローラ３に装着された外部メモリにエラー解除の履歴を保存可能であり、また、エラー解除の履歴を外部機器へ通知可能である。こうした履歴を確認することにより、エラーの発生やエラーの自動解除などの稼働状況の詳細を確認できる。
【００４４】
さらに、システムをダウンさせることなくエラー自動解除の実施可否の設定を変更可能であるため、システム稼働後に設定を変更したい場合でも、再起動等のシステムダウンによる損失を回避できる。
【００４５】
なお、上記の実施の形態では、エラーが発生中であることを表示装置でユーザに通知する構成を例としたが、エラーの発生をユーザに通知可能であれば、必ずしも表示装置である必要はない。例えば、スピーカを用いてエラーの発生を音声によって通知することも可能であるし、バイブレータを用いてエラーの発生を振動によって通知することも可能である。
【００４６】
このように、本実施の形態に係るプログラマブルロジックコントローラは、エラーを検出した後、エラー要因が解消されている場合に自動的にエラーを解除する。したがって、エラー要因が解消していない状態において、発生中のエラー状態を表示装置上やプログラマブルロジックコントローラに接続したエンジニアリングツール上で確認できるようにすることが可能となる。これにより、ユーザが知らぬ間にエラーが発生し、解除されてしまうことは起こりにくくなり、エラー要因の発生を防止する根本的な対策を講じやすくなる。
【産業上の利用可能性】
【００４７】
以上のように、本発明にかかるプログラマブルロジックコントローラは、エラーを検出した後、エラー要因が解消されている場合に自動的にエラーを解除する点で有用である。
【符号の説明】
【００４８】
１  エンジニアリングツール、２  外部機器、３  プログラマブルロジックコントローラ、４  ネットワーク、５  制御対象機器、６  センサ、７  アンプ、１１，２１，３１  通信部、１２  エラー自動解除設定部、３２  データ更新部、３４  エラー自動解除可否設定取得部、３５  エラー自動解除処理部、３６  エラー検出部、３７  エラー自動解除可否判定部、３８  表示装置更新部、３０１  ＣＰＵ、３０２  ＲＯＭ、３０３  メモリ、３０４  データメモリ、３０５  通信Ｉ／Ｆ、３０６  表示装置、３３１  エラー自動解除履歴、３３２  エラー自動解除可否設定、３３３  現在発生中エラー、３６１  エラー検出処理、３７１  エラー自動解除可否判定処理、３３２１  エラー自動解除可否設定、３３３１  エラー発生情報。
【図１】
0005908171.tif 000002
【図２】
0005908171.tif 000003
【図３】
0005908171.tif 000004
【図４】
0005908171.tif 000005
【図５】
0005908171.tif 000006
【図６】
0005908171.tif 000007
【図７】
0005908171.tif 000008
【図８】
0005908171.tif 000009
【図９】
0005908171.tif 000010
【図１０】
0005908171.tif 000011
【図１１】
0005908171.tif 000012
【図１２】
0005908171.tif 000013