(57)【要約】【課題】プログラマブルロジックコントローラにおいて従来よりも簡易かつ確実な方法で現在時刻を補正できるようにする。【解決手段】ＰＬＣの本体２に設けられたＲＴＣ３７に電力を供給するＲＴＣ電源４０の出力電圧が低下してくると、本体２に接続されたオペレーションモジュール３のＲＴＣから供給された時刻データでＲＴＣ３７の現在時刻が補正される。オペレーションモジュール３のＲＴＣは、時刻を示す電波を受信せずに現在時刻を計時できるため、電波の届かない工場等の現場でもＰＬＣの現在時刻を補正できる。また、ネットワークを介して端末装置をＧＰＳ受信機に接続せずに、オペレーションモジュール３のＲＴＣから供給された時刻データでＲＴＣ３７の現在時刻を補正できる。よって、従来よりも簡易かつ確実な方法でＰＬＣ１の時刻情報を補正できるようになる。【選択図】図３
2014052189.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブルロジックコントローラの本体と、前記本体に対して接続された外部機器と、を備えるプログラマブルロジックコントローラの時刻補正システムであって、
前記プログラマブルロジックコントローラは、
現在時刻を計時する第１の計時部と、
前記本体に電力が供給されているか否かとは無関係に、前記第１の計時部に電力を供給する電源と、
前記電源の出力電圧を監視する電圧監視部と、
前記電源の出力電圧が閾値未満に低下すると、前記第１の計時部が計時する現在時刻の信頼性が低下している可能性があることを示すようにフラグを制御して記憶部に記憶させるフラグ制御部と、
前記第１の計時部の現在時刻を補正する時刻補正部と
を備え、
前記外部機器は、
現在時刻を計時する第２の計時部と、
前記本体の記憶部に保持されている前記フラグを読み出し、前記第１の計時部が計時する現在時刻の信頼性が低下している可能性があることを当該フラグが示しているかどうかを判定する判定部と、
前記本体の記憶部から読み出した前記フラグが前記第１の計時部が計時する現在時刻の信頼性が低下している可能性があることを示していると前記判定部が判定すると、前記第２の計時部が計時した現在時刻を示す時刻データを取得して、前記第１の計時部の現在時刻を補正するための補正命令を作成して、該時刻データとともに前記本体に送信する補正命令作成部と、
を備え、
前記時刻補正部は、前記本体が前記補正命令を受信したときに、前記補正命令とともに受信した時刻データで前記第１の計時部の現在時刻を補正することを特徴とするプログラマブルロジックコントローラの時刻補正システム。
【請求項２】
前記フラグ制御部は、前記記憶部に確保され、前記本体の外部に公開された記憶領域であるデバイスにデバイス情報として前記フラグを記憶させることを特徴とする請求項１に記載のプログラマブルロジックコントローラの時刻補正システム。
【請求項３】
前記外部機器の前記判定部は、
前記外部機器が電力を供給されて前記外部機器が起動したとき、
前記外部機器が前記本体に対して有線接続または無線接続されたとき、
前記外部機器の表示部に表示する前記フラグとは異なるデバイス情報を定期的または非定期的に読み出すとき、
前記外部機器が前記本体に結合された状態で前記本体に電力が供給されて前記本体および前記外部機器が起動したとき、
の少なくとも１つのタイミングで前記フラグを前記本体から読み出すことを特徴とする請求項１または２に記載のプログラマブルロジックコントローラの時刻補正システム。
【請求項４】
前記外部機器は、前記本体のデバイスから読み出したデバイス情報を表示する表示部と、前記本体に対して情報を入力するための操作を受け付ける操作部とを備えたオペレーションモジュールであることを特徴とする請求項１ないし３のいずれか１項に記載のプログラマブルロジックコントローラの時刻補正システム。
【請求項５】
前記時刻補正部が備える前記第１の計時部の現在時刻の補正機能を有効にするか無効にするかを切り替える切り替え部をさらに備えることを特徴とする請求項１ないし４のいずれか１項に記載のプログラマブルロジックコントローラの時刻補正システム。
【請求項６】
前記第１の計時部および前記第２の計時部のうち少なくとも一方はリアルタイムクロックであることを特徴とする請求項１ないし５のいずれか１項に記載のプログラマブルロジックコントローラの時刻補正システム。
【請求項７】
本体に外部機器が接続可能なプログラマブルロジックコントローラであって、
現在時刻を計時する第１の計時部と、
前記本体に電力が供給されているか否かとは無関係に、前記第１の計時部に電力を供給する電源と、
前記電源の出力電圧を監視する電圧監視部と、
前記電源の出力電圧が閾値未満に低下すると、前記第１の計時部が計時する現在時刻の信頼性が低下している可能性があることを示すようにフラグを制御して記憶部に記憶させるフラグ制御部と、
前記フラグ制御部の制御に起因して前記外部機器から受信した時刻データで前記第１の計時部の現在時刻を補正する時刻補正部と
を備えることを特徴とするプログラマブルロジックコントローラ。
【請求項８】
現在時刻を計時する第１の計時部を備えたプログラマブルロジックコントローラ用の外部機器であって、
現在時刻を計時する第２の計時部と、
前記プログラマブルロジックコントローラの本体の記憶部に保持されているフラグを読み出し、当該フラグが前記第１の計時部の計時する現在時刻の信頼性が低下している可能性があることを示しているかどうかを判定する判定部と、
前記本体の記憶部から読み出した前記フラグが前記第１の計時部の計時する現在時刻の信頼性が低下している可能性があることを示していると前記判定部が判定すると、前記第２の計時部が計時する現在時刻を示す時刻データを取得して補正命令を作成して前記本体に送信する補正命令作成部と
を備えることを特徴とする外部機器。
【請求項９】
プログラマブルロジックコントローラの時刻補正システムであって、
本体と、
前記本体に対して有線接続または無線接続された外部機器と
を備え、
前記本体は、
現在時刻を計時する第１の計時部と、
前記本体に電力が供給されているか否かとは無関係に、前記第１の計時部に電力を供給する電源と、
前記電源の出力電圧を監視する電圧監視部と、
前記電源の出力電圧が閾値未満か閾値以上かに応じて変化するビットを記憶した記憶部と、
前記ビットが前記外部機器から読み出された後に前記外部機器から前記第１の計時部の現在時刻を補正するよう補正命令を受信すると、前記外部機器から前記補正命令とともに受信した時刻データで前記第１の計時部の現在時刻を補正する時刻補正部と
を備え、
前記外部機器は、
現在時刻を計時する第２の計時部と、
前記本体の記憶部に保持されている前記ビットを読み出し、前記電源の出力電圧が閾値未満に低下したことを当該ビットが示している場合、前記第２の計時部が計時した現在時刻を示す時刻データを取得して前記補正命令を作成して前記本体に送信する補正命令作成部と
を備えることを特徴とするプログラマブルロジックコントローラの時刻補正システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プラグラマブルロジックコントローラの時刻を補正する技術に関する。
【背景技術】
【０００２】
プログラマブルロジックコントローラ（以下、ＰＬＣと称す）は、ＦＡ（Factory
Automation）制御システムにおいて広く使用されているシーケンス制御装置であり、ラダープログラムと呼ばれる専用プログラムにしたがって動作する。操作者（オペレータ）は、リミットスイッチ、センサ、温度計などの入力機器や、電磁開閉器、ソレノイド、モータ、アクチュエータ、シリンダ、リレー、位置決めシステムなどの出力機器をＰＬＣに接続し、ラダープログラムによってこれらの被制御機器を制御する。
【０００３】
オペレータは、パーソナルコンピュータ（以下、ＰＣと称す）などのプログラム作成支援装置上でラダープログラムを作成し、ＰＣとＰＬＣを接続し、ラダープログラムをＰＬＣの記憶部に記憶させる。ＰＬＣの記憶部にはデバイス情報等の各種データも記憶される。デバイス情報とは、入力機器からの入力状態、出力機器への出力状態およびラダープログラム上で設定される内部リレー（補助リレー）、タイマー、カウンタ、データメモリ等の状態を示す情報である。デバイスとは、デバイス情報を格納するために設けられたメモリ上の領域を指す名称である。ＰＬＣにプログラム作成支援装置を接続することで、ＰＬＣが保持しているデバイス情報（デバイスの値）をプログラム作成支援装置に表示させ、視認することもできる。
【０００４】
ところで、ＰＬＣは、リアルタイムクロック（ＲＴＣ）を備え、時刻情報をＲＴＣから取得して、各種の制御をすることがある。ＲＴＣは、ＰＬＣの本体からは直接的には電力を供給されずに、電池やキャパシタなどの電源によって電力を供給されて動作している。よって、ＰＬＣの電源ＯＦＦ中に、ＲＴＣの動作に起因して電池の残量が少なくなってくると、電池の出力電圧がＲＴＣの動作限界電圧未満となり、ＲＴＣが正しい時刻情報を提供できなくなる。時刻情報が被制御機器の制御にとって重要な情報である場合、ＰＬＣの制御も誤ってしまうこともある。たとえば、異常が起きたときの時刻を把握したい場合や、１日のうちの所定時刻に処理を実行させたい場合等である。よって、ＰＬＣの時刻情報を正確に維持することは重要である。特許文献１によれば、ネットワークを介して複数の端末装置をＧＰＳ受信機に接続し、ＧＰＳ受信機により受信した時刻データによって複数の端末装置の時刻を同期させることが提案されている。特許文献２によれば、ＧＰＳ衛星やＡＭ・ＦＭ・短波などのラジオの電波により搬送される標準時刻信号を受信して、ＰＬＣの時刻を同期させる時刻同期装置が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−３２４５８４号公報
【特許文献２】特開２００７−１０１３０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１の発明では、ＧＰＳ衛星からの電波を受信できること、および、ネットワークを介して端末装置をＧＰＳ受信機に接続することが必要であり、屋内で使用されることが想定されているＰＬＣに適用することは簡単ではない。また、特許文献２の発明も、電波を受信できることが前提となっており、屋内で使用されることが想定されているＰＬＣに適用することは簡単ではない。また、エラーがでたことをオペレータが認識したときに、時刻同期装置を準備してＰＬＣに接続することは、オペレータにとって面倒かもしれない。また、時刻同期装置のような専用の装置を工場などの現場に設置されたＰＬＣに接続することは困難なこともある。ＰＬＣは誤操作を防止するために、普通では手の届かないような場所に設置されるためである。一方で、ラダープログラムを作成してＰＬＣに転送するプログラム作成支援装置であれば、ＰＬＣの時刻情報を修正できるであろう。しかし、プログラム作成支援装置を現場においてＰＬＣに接続することはやはり簡単なことではない。プログラム作成支援装置は、デスクトップＰＣなどのパーソナルコンピュータだからである。
【０００７】
そこで、本発明は、従来よりも簡易かつ確実な方法でＰＬＣの時刻情報を補正できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、プログラマブルロジックコントローラの本体と、前記本体に対して接続された外部機器と、を備えるプログラマブルロジックコントローラの時刻補正システムであって、前記プログラマブルロジックコントローラは、現在時刻を計時する第１の計時部と、前記本体に電力が供給されているか否かとは無関係に、前記第１の計時部に電力を供給する電源と、前記電源の出力電圧を監視する電圧監視部と、前記電源の出力電圧が閾値未満に低下すると、前記第１の計時部が計時する現在時刻の信頼性が低下している可能性があることを示すようにフラグを制御して記憶部に記憶させるフラグ制御部と、前記第１の計時部の現在時刻を補正する時刻補正部とを備え、前記外部機器は、現在時刻を計時する第２の計時部と、前記本体の記憶部に保持されている前記フラグを読み出し、前記第１の計時部が計時する現在時刻の信頼性が低下している可能性があることを当該フラグが示しているかどうかを判定する判定部と、前記本体の記憶部から読み出した前記フラグが前記第１の計時部が計時する現在時刻の信頼性が低下している可能性があることを示していると前記判定部が判定すると、前記第２の計時部が計時した現在時刻を示す時刻データを取得して、前記第１の計時部の現在時刻を補正するための補正命令を作成して、該時刻データとともに前記本体に送信する補正命令作成部と、を備え、前記時刻補正部は、前記本体が前記補正命令を受信したときに、前記補正命令とともに受信した時刻データで前記第１の計時部の現在時刻を補正することを特徴とするプログラマブルロジックコントローラの時刻補正システムを提供する。
【０００９】
また、本発明は、本体に外部機器が接続可能なプログラマブルロジックコントローラであって、現在時刻を計時する第１の計時部と、前記本体に電力が供給されているか否かとは無関係に、前記第１の計時部に電力を供給する電源と、前記電源の出力電圧を監視する電圧監視部と、前記電源の出力電圧が閾値未満に低下すると、前記第１の計時部が計時する現在時刻の信頼性が低下している可能性があることを示すようにフラグを制御して記憶部に記憶させるフラグ制御部と、前記フラグ制御部の制御に起因して前記外部機器から受信した時刻データで前記第１の計時部の現在時刻を補正する時刻補正部とを備えることを特徴とするプログラマブルロジックコントローラを提供する。
【００１０】
さらに本発明は、現在時刻を計時する第１の計時部を備えたプログラマブルロジックコントローラ用の外部機器であって、現在時刻を計時する第２の計時部と、前記プログラマブルロジックコントローラの本体の記憶部に保持されているフラグを読み出し、当該フラグが前記第１の計時部の計時する現在時刻の信頼性が低下している可能性があることを示しているかどうかを判定する判定部と、前記本体の記憶部から読み出した前記フラグが前記第１の計時部の計時する現在時刻の信頼性が低下している可能性があることを示していると前記判定部が判定すると、前記第２の計時部が計時する現在時刻を示す時刻データを取得して補正命令を作成して前記本体に送信する補正命令作成部とを備えることを特徴とする外部機器を提供する。
【発明の効果】
【００１１】
本発明によれば、ＰＬＣの電源ＯＦＦ中に、ＰＬＣの本体に設けられた第１の計時部に電力を供給する電源の出力電圧が低下した場合、ＰＬＣの電源ＯＮ後に、本体に接続された外部機器の第２の計時部から供給された時刻データで第１の計時部の現在時刻が補正される。外部機器の第２の計時部は、現在時刻を計時でき、この第２の計時部における現在時刻がＰＬＣに送られるため、電波の届かない工場等の現場でもＰＬＣの現在時刻を補正できる。また、ネットワークを介して端末装置をＧＰＳ受信機に接続せずに、外部機器の第２の計時部から供給された時刻データで第１の計時部の現在時刻を補正できる。よって、従来よりも簡易かつ確実な方法でＰＬＣの時刻情報を補正できるようになる。
【図面の簡単な説明】
【００１２】
【図１】プログラマブルロジックコントローラ（ＰＬＣ）の外観を示す斜視図である。
【図２】プログラマブル表示器の前面側を示した図である。
【図３】ＰＬＣの本体のブロック図である。
【図４】プログラマブル表示器のブロック図である。
【図５】ＲＴＣに電力を供給する電源の出力電圧を監視する電圧監視処理を示すフローチャートである。
【図６】プログラマブル表示器が実行するフラグ監視および時刻補正コマンドの作成処理を示すフローチャートである。
【図７】フラグを読み出すかどうかを判定する処理を示すフローチャートである。
【図８】ＰＬＣが実行する時刻補正処理を示すフローチャートである。
【図９】時刻補正機能の有効と無効とを切り替えるユーザインタフェースの一例を示した図である。
【発明を実施するための形態】
【００１３】
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【００１４】
図１（Ａ）は、プログラマブルロジックコントローラ（ＰＬＣ）の外観を示す斜視図である。ＰＬＣはたんにプログラマブルコントローラと呼ばれることもある。図１において、ＰＬＣ１は本体２とオペレーションモジュール３とに分離されている。本体２には、リミットスイッチ、センサなどの入力機器と接続するための入力端子群４と、電磁開閉器、ソレノイド、モータ、アクチュエータ、シリンダ、リレー、位置決めシステムなどの出力機器と接続するための出力端子群５とを備えている。また、本体２の外側にはモジュールカセット形態のオペレーションモジュール３を収容する収容部６を備えている。つまり、オペレーションモジュール３は、本体２の収容部６に対して取り付けたり、取り外したりすることが可能である。収容部６には、オペレーションモジュール３を位置決めするためのボス８と、オペレーションモジュール３の内部の制御部や記憶部と通信するためのコネクタ７が設けられている。オペレーションモジュール３の背面には、ボス８が嵌合する不図示の穴部が設けられている。また、オペレーションモジュール３の背面には、コネクタ７の接点と接触する端子が設けられている。
【００１５】
なお、本実施形態では、本体２とオペレーションモジュール３とが分離されるタイプのＰＬＣを想定しているが、これらが分離されないタイプ、オペレーションモジュール３が存在しないタイプなど、本発明は、様々なタイプのＰＬＣに適用可能である。
【００１６】
オペレーションモジュール３の前面には、液晶表示装置や自発光型表示装置などの表示部１０が設けられている。表示部１０は、オペレーションモジュール３が収容部６に取り付けられているときに、本体２に関する情報などを表示する。オペレーションモジュール３の前面には、オペレータが各種の指示を入力するための操作部１１が設けられている。操作部１１には、オペレータの操作を受け付けるための複数のボタン（キー）が設けられている。
【００１７】
図１（Ｂ）は、ＰＬＣ１の本体２の収容部６にオペレーションモジュール３が取り付けられた様子を示している。図１（Ｂ）が示すように、オペレーションモジュール３の前面に表示部１０が設けられており、この表示部１０が本体２の前面に来るように本体２に対して取り付けられる。このように、オペレーションモジュール３はコネクタを介して本体２と接続されるため、通信ケーブルは不要である。つまり、オペレータは、通信ケーブルを用意して接続する作業が不要となる。また、通信ケーブルが断線すると新しい通信ケーブルを用意するまで、オペレーションモジュールを使用できなくなってしまうが、オペレーションモジュール３であればそのような問題も解決できる。特に、同種の複数のＰＬＣ１に対して時刻を設定する際には、本発明のオペレーションモジュール３は作業性の点で有利であろう。
【００１８】
図２は、ＰＬＣ１に有線接続されるプログラマブル表示器３’を示した図である。図１に示したオペレーションモジュール３は、収容部６に収容される内蔵タイプであったが、プログラマブル表示器３’は、シリアル通信ケーブル、ＬＡＮケーブル、ＵＳＢケーブルなどのケーブル１２を介してＰＬＣ１に接続されている。なお、プログラマブル表示器３’とＰＬＣ１は、有線接続されてもよいし、無線ＬＡＮ、ブルートゥース、ＩｒＤＡなどで無線接続されてもよい。プログラマブル表示器３’は、オペレーションモジュール３と同様に、表示部１０と操作部１１を備えている。プログラマブル表示器３’の操作部１１は、静電容量式または感圧式のタッチパネル入力デバイスである。図２が示すように、表示部１０は、ＰＬＣ１から読み出したデバイス情報（例：製品番号、温度、速度など）を表示することができる。表示部１０は、定期的または非定期的にデバイス情報を読み出してデバイス情報を表示する。どのデバイス情報を読み出すかやデバイス情報の読み出しタイミングは、基本的に、プログラマブル表示器３’内のプログラムによって規定される。ただし、たとえば、ＰＬＣ１が実行するラダープログラムによって定義されてもよい。なお、表示部１０は、たとえば、液晶表示装置や自発光型表示装置などである。操作部１１は、操作者（オペレータ）が各種の指示を入力するための複数のボタン（キー）が設けられてもよい。
【００１９】
プログラマブル表示器３’について更に詳述する。プログラマブル表示器３’は、ＰＬＣ１に接続された入出力機器やＰＬＣ１の動作状態（状態データ）を監視するための機器である。プログラマブル表示器３’の画面上には、画面構成要素として、ランプ、メータ、及びグラフなどの各種部品画像が表示される。プログラマブル表示器３’の画面上に表示される各種部品画像のレイアウトなどは、ユーザが作画エディタなどの画面表示データ作成ソフトウェアを用いて自由に編集することができる。作成された画面表示データが転送されたプログラマブル表示器３’では、ＰＬＣ１から、たとえばＰＬＣ１に接続された入出力機器の状態データが読み出され、その状態データに応じて部品画像（図示せず）が変化する（たとえば、ランプが点灯したり消灯したり、メータの針が左右に振れたりする）。これにより、ユーザは、ＰＬＣ１に接続された入出力機器の動作状態を監視することが可能になる。
【００２０】
このように、プログラマブル表示器３’は、ＰＬＣ１を監視するための独自プログラムを有しており、自己の判断で定期的又は非定期的に、ＰＬＣ１からデバイス情報を読み出して、表示部１０に表示する機能を有している。
【００２１】
なお、デバイスとは、上述したように、デバイス情報を格納するために設けられたメモリ上の領域を指す名称であるが、別の言い方をすれば、ＰＬＣ１に接続される入出力機器の監視や制御のために制御プログラムで用いられる要素ということもでき、命令で使用するデータを与えたり、命令の実行結果を格納したりするために用いられる。たとえば、リレー、タイマー、カウンタ、データメモリ等が挙げられる。
【００２２】
デバイスには、入力機器からの入力信号に基づいてオン／オフされるビットデバイス（入力ビットデバイス）や、出力機器の動作を制御するためにオン／オフされるビットデバイス（出力ビットデバイス）、オン／オフではなく数値データが格納されるワードデバイスなどがある。
【００２３】
プログラマブル表示器３’の通常動作について説明すると、（１）プログラマブル表示器３’は、画面上でモニタするデバイスについて、デバイスの値を読み出すためのデバイス読み出しコマンドをＰＬＣ１に対して発行する。次に、（２）ＰＬＣ１は、受信したコマンドに指示されたデバイスの値を取得し、プログラマブル表示器３’へのレスポンスを作成して、これを送信する。その後、（３）プログラマブル表示器３’は、受け取ったレスポンスからデバイスの値を読み出し、画面上の表示を更新する。このようにして、プログラマブル表示器３’はＰＬＣ１の動作状態を監視することができる。
【００２４】
このようにプログラマブルロジックコントローラ用の外部機器は、ＰＬＣ１に接続可能であれば十分である。よって、内蔵タイプのオペレーションモジュール３であってもよいし、外付けタイプのプログラマブル表示器３’であってもよい。そのため、以下では、プログラマブル表示器３’について説明することにする。また、外部機器は、必ずしも、操作部１１や表示部１０を必須とせず、オペレーションに関係しない他の外部機器（例：通信インタフェースモジュール、外部記憶装置モジュール、拡張ユニットなど）であってもよい。すなわち、外部機器は、後述するように、ＰＬＣ１の本体２と通信する通信部６１と、制御部６０と、電波を受信せずに計時可能な計時ユニット（ＲＴＣ６２、電源６３など）を最低限で備えていれば十分である。
【００２５】
図３は、ＰＬＣ１の本体２のブロック図である。本体２の内部に設けられたコントローラは、ＣＰＵやＡＳＩＣなどの論理回路、メモリなどの記憶装置を備えている。
【００２６】
リアルタイムクロック（ＲＴＣ）３７は、現在時刻を計時する第１の計時部の一例である。ＲＴＣ電源４０は、ＲＴＣ３７に電力を供給する電源である。ＲＴＣ３７は、ＲＴＣ電源４０の出力電圧を監視する電圧監視部３８と、現在時刻を示す時刻データと、ＲＴＣ３７が正常に動作しているかどうかを示す制御情報を格納した格納部３９を備えている。電圧監視部３８は、たとえばＰＬＣ１の電源ＯＦＦ時に、ＲＴＣ電源４０の出力電圧と閾値とを比較し、出力電圧が閾値未満になっているかどうかを示す制御情報を格納部３９に格納する。なお、ＲＴＣ３７は、一次電池、二次電池またはキャパシタであるため、本体２に外部電源（商用交流電源など）から電力が供給されているか否かとは無関係に、電力をＲＴＣ３７に供給する。
【００２７】
制御部２０は、記憶部用ドライバ３６を介して記憶部３０にアクセスする。つまり、制御部２０からのライトコマンドやリードコマンドにしたがって、記憶部用ドライバ３６は、記憶部３０へ情報を書き出す書き出し部、および、記憶部３０から情報を読み出す読み出し部として機能する。記憶部３０は、プログラム作成支援装置５０から通信部３５を介して受信したラダープログラム３１やデバイス情報３４などの設定情報を保持する保持部として機能する。デバイス情報３４は、記憶部３０に確保された記憶領域であるデバイス３３に記憶される。ログデータ３２は、制御部２０がラダープログラム３１を実行した結果を示すデータである。ログデータ３２は、エラー等のイベントが発生した時刻データが含まれてもよい。よって、時刻データが誤っていると、ログデータ３２の有用性が低下して好ましくない。
【００２８】
制御部２０は、本体２に接続されている被制御機器を、記憶部３０に保持されている設定情報にしたがって制御する被制御機器制御部として機能する。制御部２０は、被制御機器を制御する機能に加えて、本実施形態に特有の機能を実現する各種の制御部を備えている。時刻データ判定部２１は、リアルタイムクロック（ＲＴＣ）３７が計時する現在時刻が正しいかどうかを判定する。ＲＴＣ電源４０は、一次電池、二次電池またはキャパシタであるため、たとえばＰＬＣ１の電源ＯＦＦ時に電池の残量が少なくなる、すなわち、長い時間にわたって外部から電力が供給されなくなったりすると、ＲＴＣ３７に対して十分な電圧を供給できなくなってしまう。そこで、電圧監視部３８がＲＴＣ電源４０の出力電圧と閾値とを比較し、電池電圧の異常を検知できるようにしている。そして、出力電圧が閾値未満になっている場合には、ＲＴＣ３７が計時する時刻データの信頼性が低下していると判定する。
【００２９】
なお、実際の現在時刻が誤っているかどうかとは無関係に、出力電圧が低下したか否かに応じて、時刻補正を実行してもよい。そのため、時刻データ判定部２１は、オプションの制御部であり、省略されてもよい。逆に、出力電圧が低下したか否かとは無関係に、実際の現在時刻が誤っているかどうかに応じて、時刻補正を実行してもよい。この場合は、後述するフラグは、現在時刻が誤っているかどうかに応じて変更されるフラグとなる。
【００３０】
フラグ制御部２２は、ＲＴＣ３７の格納部３９から制御情報を読み出し、ＲＴＣ電源４０の出力電圧が閾値未満に低下していることを制御情報が示しているかどうかを判定する。フラグ制御部２２は、ＲＴＣ電源４０の出力電圧が閾値未満に低下していることを制御情報が示している場合、レジスタ４１の電圧エラーフラグをオンにする（すなわち、電圧エラーフラグに１を設定する）。ここでは、電圧エラーフラグは、ＲＴＣ電源４０の出力電圧が閾値未満か閾値以上かに応じて変化するビットとして実装されることを想定している。このように、電圧エラーフラグが１になっている場合、電圧エラーフラグは、ＲＴＣ３７が計時する現在時刻の信頼性が低下している可能性があることを示している。ＲＴＣ３７が計時する現在時刻の信頼性が低下している可能性があることは、ＲＴＣ電源４０の出力電圧が閾値未満に低下していること、ＲＴＣ３７が計時する現在時刻を補正する必要があること、ＲＴＣ３７が計時する現在時刻が誤っていること等と実質的に同義であろう。
【００３１】
一方で、電圧エラーフラグがオフ（すなわち、０）になっている場合、電圧エラーフラグは、ＲＴＣ３７が計時する現在時刻の信頼性が低下していないことを示している。ＲＴＣ３７が計時する現在時刻の信頼性が低下していないことは、ＲＴＣ電源４０の出力電圧が閾値以上であること、ＲＴＣ３７が計時する現在時刻を補正する必要がないこと、ＲＴＣ３７が計時する現在時刻が正しいことと実質的に同義であろう。なお、電圧エラーフラグは、デバイス３３に１ビットのデバイス情報３４として記憶されていてもよい。つまり、上述したビットデバイスに記憶されていてもよい。勿論、ワードデバイスに記憶されていてもよい。デバイス情報３４は、ＰＬＣ１の外部に公開することを目的とした情報であるため、プログラマブル表示器３’やオペレーションモジュール３などの外部機器やプログラム作成支援装置５０は容易に電圧エラーフラグをデバイス情報３４として取得できる。以下では、デバイス情報３４を電圧エラーフラグとして説明する。
【００３２】
時刻補正部２３は、電圧エラーフラグがプログラマブル表示器３’によって読み出された後にプログラマブル表示器３’からＲＴＣ３７の現在時刻を補正するよう補正命令を受信すると、プログラマブル表示器３’から受信した時刻データでＲＴＣ３７の現在時刻を補正する。
【００３３】
通信部４２は、プログラマブル表示器３’やオペレーションモジュール３などの外部機器と通信するためのユニットである。解釈部４３は、通信部４２により受信されたデータやコマンドなどを解釈し、解釈結果を制御部２０に渡す。
【００３４】
図４は、プログラマブル表示器３’のブロック図である。制御部６０は、表示部１０への表示制御と、操作部１１から入力される指示の受け付け制御と、通信部６１によるＰＬＣ１の本体２との通信制御とを担当している。
【００３５】
プログラマブル表示器３’に搭載されたもう１つのリアルタイムクロック（ＲＴＣ）６２は、時刻を示す電波を受信せずに現在時刻を計時する第２の計時部の一例である。つまり、ＲＴＣ６２は、ＧＰＳ衛星やＡＭ・ＦＭ・短波などのラジオの電波により搬送される標準時刻信号を受信して現在時刻を取得する受信機ではない。つまり、ＲＴＣ６２は、ＰＬＣ１に設けられたＲＴＣ３７と同様に簡素な時計である。電源６３は、ＲＴＣ６２に電力を供給する一次電池、二次電池またはキャパシタなどの電源である。
【００３６】
制御部６０は、判定部６４、補正命令作成部６５および有効・無効制御部２４を備えている。判定部６４は、本体２の記憶部３０またはレジスタ４１に保持されている電圧エラーフラグを読み出し、ＰＬＣ１のＲＴＣ３７が計時する現在時刻の信頼性が低下している可能性があることを電圧エラーフラグが示しているかどうかを判定する。補正命令作成部６５は、本体２から読み出した電圧エラーフラグがＰＬＣ１のＲＴＣ３７が計時する現在時刻の信頼性が低下している可能性があることを示していることを判定部６４から通知されると、プログラマブル表示器３’のＲＴＣ６２が計時した現在時刻を示す時刻データを取得して補正命令（例：時刻補正コマンド）を作成して本体２に送信する。
【００３７】
有効・無効制御部２４は、ＰＬＣ１の時刻補正部２３が備える現在時刻の補正機能を有効にするか無効にするかを切り替える切り替え部として機能する。有効・無効制御部２４は、プログラマブル表示器３’に接続された画面表示データ作成支援装置５１（上述した画面表示データ作成ソフトウェアがインストールされたＰＣ、図示せず）からの切り替え指示に基づいて、補正機能の有効／無効を切り替える。有効・無効制御部２４は、本体２またはプログラマブル表示器３’に設けられたディップスイッチのオン／オフを監視することで、補正機能を有効にするか無効にするかを切り替えてもよい（オン⇒有効、オフ⇒無効）。オペレータは、ＲＴＣ３７の現在時刻をプログラマブル表示器３’の現在時刻で補正したくないときには、時刻補正機能をオフに設定してもよい。なお、ここでいう画面表示データ作成支援装置５１は、ＰＬＣ１に接続されるプログラム作成支援装置５０と同じ装置であっても異なる装置であってもよい。
【００３８】
＜フラグ制御処理＞
図５は、本体２のフラグ制御部２２が実行するフラグ制御処理を示すフローチャートである。
【００３９】
Ｓ５０１で、フラグ制御部２２は、ＲＴＣ３７の格納部３９から、電圧監視部３８が出力した電圧監視情報を含む制御情報を読み出す。
【００４０】
Ｓ５０２で、フラグ制御部２２は、ＲＴＣ電源４０の出力電圧が低下したかどうかを判定する。たとえば、フラグ制御部２２は、ＲＴＣ電源４０の出力電圧が閾値未満に低下したことを制御情報から抽出した電圧監視情報が示しているかどうかを判定する。ＲＴＣ電源４０の出力電圧が閾値未満に低下していなければ、時刻を補正する必要はないため、本処理を終了する。あるいは、ＲＴＣ電源４０の出力電圧が閾値未満に低下していなければ、Ｓ５０５に進んで、フラグ制御部２２は、電圧エラーフラグをオフにしたままである。一方で、ＲＴＣ電源４０の出力電圧が閾値未満に低下していれば、Ｓ５０３に進む。
【００４１】
Ｓ５０３で、フラグ制御部２２は、ＲＴＣ３７が計時する現在時刻の信頼性が低下している可能性があることを示すように電圧エラーフラグをオンに設定する。つまり、フラグ制御部２２は、デバイス情報３４のうち電圧エラーフラグに相当するデバイス情報を１に書き換える。
【００４２】
Ｓ５０４で、フラグ制御部２２は、ＲＴＣ３７の現在時刻が補正されたかどうかを判定する。時刻補正部２３がＲＴＣ３７の現在時刻を補正したことを時刻補正部２３から通知されると、フラグ制御部２２は、ＲＴＣ３７の現在時刻が補正されたと判定し、Ｓ５０５に進む。ＲＴＣ３７の現在時刻が補正されていなければ、フラグ制御部２２は、ＲＴＣ３７の現在時刻の補正が完了するのを待つ。
【００４３】
Ｓ５０５で、フラグ制御部２２は、ＲＴＣ３７が計時する現在時刻の信頼性が低下していないことを示すように電圧エラーフラグをオフに設定する。つまり、フラグ制御部２２は、デバイス情報３４のうち電圧エラーフラグに相当するデバイス情報を０に書き換える。
【００４４】
＜時刻補正コマンドの作成処理＞
図６は、プログラマブル表示器３’の制御部６０が実行する時刻補正コマンドの作成処理を示したフローチャートである。
【００４５】
Ｓ６０１で、判定部６４は、電圧エラーフラグの読み出し条件が満たされているかどうかを判定する。電圧エラーフラグの読み出し条件の判定処理の詳細は図７を用いて説明する。なお、前提として、ＰＬＣ１の電源は投入されているものとする。
【００４６】
Ｓ７０１で、判定部６４は、プログラマブル表示器３’が外部電源から電力を供給されて起動した直後かどうかを判定する。プログラマブル表示器３’が外部電源から電力を供給されて起動した直後であれば、時刻補正を実行するために、Ｓ７０２へ進む。
【００４７】
プログラマブル表示器３’が本体２または外部電源から電力を供給されて起動した直後でなければ、Ｓ７０１に戻る。
【００４８】
Ｓ７０２で、判定部６４は、プログラマブル表示器３’が本体２に対して接続されているかどうかを判定する。プログラマブル表示器３’が本体２に接続されていれば、このタイミングで時刻を補正する。
【００４９】
具体的には、たとえば、プログラマブル表示器３’とＰＬＣ１との間で通信コマンドが正常にやり取りできるようになったか否かが判定される。たとえば、プログラマブル表示器３’がＰＬＣ１に対して通信確立コマンドに対して、ＰＬＣ１から適切な応答コマンド（ＡＣＫ等）が帰ってきたか否かが判定される。
【００５０】
ようするに、ＰＬＣ１内に記憶されたデバイス情報を読み出せる状態になったか否かが判定される。プログラマブル表示器３’が本体２に対して接続されていることで、ＰＬＣ１内に記憶されたデバイス情報を読み出せる状態になっていれば、Ｓ６０２に進む。そうでなければ、このような状態になるまで待機することになる。
【００５１】
図６の説明に戻る。Ｓ６０２で、判定部６４は、電圧エラーフラグに相当するデバイス情報３４を読み出す。デバイス情報３４は外部に公開されているため、プログラマブル表示器３’はこれを簡単に読み出すことができる。プログラマブルロジックコントローラにおいては、内部のＲＴＣの制御情報を直接的に外部には公開していない。そこで、ＰＬＣ１の外部からＲＴＣ３７の動作状態を取得できるようにするために、外部に公開された記憶領域であるデバイス３３に、電圧エラーフラグに相当するデバイス情報３４を格納している。
【００５２】
Ｓ６０３で、判定部６４は、電圧エラーフラグがオンになっているかどうかを判定する。つまり、判定部６４は、本体２に保持されている電圧エラーフラグがＲＴＣ３７の計時する現在時刻の信頼性が低下している可能性があることを示しているかどうかを判定する。電圧エラーフラグがオンになっていなければ、本処理を終了する。一方で、電圧エラーフラグがオンになっていれば、Ｓ６０４に進む。つまり、判定部６４は、本体２に保持されている電圧エラーフラグがＲＴＣ３７の計時する現在時刻の信頼性が低下している可能性があることを補正命令作成部６５に通知する。
【００５３】
Ｓ６０４で、補正命令作成部６５は、ＲＴＣ６２から現在時刻を示す時刻データを読み出す。
【００５４】
Ｓ６０５で、補正命令作成部６５は、ＲＴＣ６２から取得した時刻データを含む時刻補正コマンドを作成し、通信部６１を介して本体２に送信する。
【００５５】
＜時刻補正処理＞
図８は、ＰＬＣ１の時刻補正部２３が実行する時刻補正処理を示すフローチャートである。
【００５６】
Ｓ８０１で、時刻補正部２３は、プログラマブル表示器３’から時刻補正コマンドを受信したかどうかを判定する。解釈部４３は、通信部４２が受信したコマンドを解釈し、時刻補正コマンドを見つけると、時刻補正部２３に時刻データとともに時刻補正命令を出力する。解釈部４３から時刻補正命令を受信すると、時刻補正部２３は、プログラマブル表示器３’から時刻補正コマンドを受信したと判定し、Ｓ８０２に進む。
【００５７】
Ｓ８０２で、時刻補正部２３は、受信した時刻データをＲＴＣ３７に設定することで、ＲＴＣ３７の計時する現在時刻を補正する。
【００５８】
Ｓ８０３で、時刻補正部２３は電圧エラーフラグをオフにする。つまり、時刻補正部２３は時刻の補正が終了したことをフラグ制御部２２に通知する。フラグ制御部２２は、この通知にしたがって電圧エラーフラグをオフにする。
【００５９】
＜時刻補正機能の有効と無効との切り替え＞
プログラマブル表示器３’のＲＴＣ６２の現在時刻よりも、ＰＬＣ１が取得可能な他の現在時刻が信頼できるときがある。たとえば、ＰＬＣ１がネットワーク上で動作する時刻サーバ（ＮＴＰサーバなど）から現在時刻の時刻データを取得できることがある。また、操作部１１を通じて手動で現在時刻をオペレータが設定したいと希望することもあるだろう。このような場合には、上述した時刻補正部２３によるプログラマブル表示器３’を利用した時刻補正機能を無効化できると便利である。
【００６０】
図９は、プログラマブル表示器３’に接続される画面表示データ作成支援装置５１の表示装置に表示されるユーザインタフェースの一例である。ユーザインタフェース９０は、ＰＬＣ１のＲＴＣ３７が計時する現在時刻を、画面表示データ作成支援装置５１が有するカレンダタイマに合わせるかどうかを決定するチェックボックス９１が含まれている。また、ＰＬＣ１のＲＴＣ電源４０の出力電圧が低下したときにＲＴＣ３７の現在時刻を修正するか否か、つまり、時刻補正部２３の時刻補正機能を有効にするか無効にするかを選択するチェックボックス９２が設けられている。画面表示データ作成支援装置５１は、チェックボックス９２にチェックがつけられたことを検知すると、有効・無効制御部２４に時刻補正部２３の時刻補正機能を有効にするよう命令する。一方で、画面表示データ作成支援装置５１は、チェックボックス９２からチェックが外されたことを検知すると、有効・無効制御部２４に時刻補正部２３の時刻補正機能を無効にするよう命令する。このときに、チェックボックス９１にチェックがつけられていること検知すると、画面表示データ作成支援装置５１は、カレンダタイマから時刻データを取得し、これを含む時刻補正命令を作成して制御部２０へ送信する。制御部２０は、時刻補正命令にしたがってＲＴＣ３７の現在時刻をカレンダタイマに合わせる。カレンダタイマは一例にすぎず、制御部２０は、直接的にＮＴＰサーバにアクセスして時刻同期を実行してもよい。
【００６１】
なお、ここではチェックボックスをつける／外すという動作に連動して時刻補正命令が制御部２０に送られるようにしたが、別の方法も可能である。具体的には、画面表示データ作成支援装置５１の表示画面で、ユーザが有効・無効を選択し、これが設定情報として保存される。そして、この設定情報がプログラマブル表示器３’に転送されたとき、この設定情報はプログラマブル表示器３’内のメモリに格納される。そして、有効・無効制御部２４によって時刻補正機能の有効・無効が切り替わる。
【００６２】
以上説明したように、本発明によれば、ＰＬＣ１の本体２に設けられたＲＴＣ３７に電力を供給するＲＴＣ電源４０の出力電圧が低下してくると、本体２に接続されたプログラマブル表示器３’のＲＴＣ６２から供給された時刻データでＲＴＣ３７の現在時刻が補正される。プログラマブル表示器３’のＲＴＣ６２は、時刻を示す電波を受信せずに現在時刻を計時できるため、電波の届かない工場等の現場でもＰＬＣ１の現在時刻を補正できる。また、ネットワークを介して端末装置をＧＰＳ受信機に接続せずに、プログラマブル表示器３’のＲＴＣ６２から供給された時刻データでＲＴＣ３７の現在時刻を補正できる。よって、従来よりも簡易かつ確実な方法でＰＬＣ１の時刻情報を補正できるようになる。
【００６３】
ＰＬＣ１とプログラマブル表示器３’の時刻補正システムのシステム動作について纏めると、以下のようになる。まず、（１）ＰＬＣ１とプログラマブル表示器３’の電源を投入する。（２）ＰＬＣ１は、ＰＬＣ１内部のＲＴＣから時刻データおよび制御情報を読み出し、時刻データの信頼性を確認できなかった場合には、デバイスの「ＲＴＣ電圧低下エラー」フラグをＯＮする。（３）ＰＬＣ１はラダープログラムの実行を開始する。（４）プログラマブル表示器３’は、内部の不揮発性メモリに保持していた設定データに応じてＰＬＣ１との通信を開始する。（５）プログラマブル表示器３’は、ＰＬＣに対して「ＲＴＣ電圧低下エラー」フラグを読み出す通信コマンドを発行する。（６）ＰＬＣ１は、受信したコマンドに従って、「ＲＴＣ電圧低下エラー」フラグの値を取得し、レスポンスを返す。（７）プログラマブル表示器３’は、受け取ったレスポンスを確認し、「ＲＴＣ電圧低下エラー」フラグがＯＮしていたら、ＰＬＣ１の時刻データを補正するために、プログラマブル表示器３’内部のＲＴＣから時刻データを取得する。（８）プログラマブル表示器３’は、（７）で取得した時刻データをもとに、ＰＬＣ１への時刻設定コマンドを発行する。（９）ＰＬＣ１は受け取ったコマンドから時刻データを取得し、ＰＬＣ１内部のＲＴＣに対して時刻を設定する。同時に、デバイスの「ＲＴＣ電圧低下エラー」フラグをＯＦＦする。これらのうち、（３）と（４）〜（９）は非同期に実行される。
【００６４】
このように動作する時刻補正システムによれば、従来よりも簡易かつ確実な方法でＰＬＣ１の時刻情報を補正できるようになる。
【００６５】
また、本発明によれば、ＰＬＣ１の外部に公開されたデバイス３３に電圧エラーフラグをデバイス情報３４として記憶させるため、ＰＬＣ１の外部から容易に電圧エラーフラグを読み出せるようになる。
【００６６】
また、本発明によれば、ＰＬＣ１が起動したときやプログラマブル表示器３’が起動したときなどに、電圧エラーフラグを解析して時刻補正を実行するため、誤った現在時刻がＰＬＣ１の制御に及ぼす影響を低減できる。
【００６７】
また、本発明によれば、プログラマブル表示器３’やオペレーションモジュール３、シリアル通信モジュールなど、ＰＬＣ１に頻繁に接続される外部機器と連携して現在時刻を補正するため、オペレータが特に意識することなく、現在時刻を自動で補正できるようになる。
【００６８】
また、本発明によれば、外部機器を利用した時刻補正機能を無効に切り替えることができる。そのため、オペレータが手動で時刻を補正したり、より高精度な時刻サーバから時刻を入手して補正したりしたい場合には、時刻補正機能を無効化は便利であろう。
【００６９】
また、外部機器に備えられた計時部もＲＴＣとすることで、本発明の適用範囲が広がる。一般にＲＴＣは多くのモジュールに搭載されている。そのため、既存の外部機器のファームウエアをアップデートすることで、本発明を実現することも可能となる。ＰＬＣ１については、ファームウエアのアップデートまたはラダープログラムによって本発明を実装できる。
【図１】
2014052189.tif 000003
【図２】
2014052189.tif 000004
【図３】
2014052189.tif 000005
【図４】
2014052189.tif 000006
【図５】
2014052189.tif 000007
【図６】
2014052189.tif 000008
【図７】
2014052189.tif 000009
【図８】
2014052189.tif 000010
【図９】
2014052189.tif 000011