(57)【要約】【課題】ＰＬＣの制御機能を持たないプログラマブル表示器において過去に実行されたラダープログラムを簡素な構成表示する。【解決手段】ＰＬＣ３から取得したデバイスデータをデータロギング部２１２によってロギングメモリ１４に順次時系列で書き込む。ロギングメモリ１４は、プログラマブル表示器２内のメモリやプログラマブル表示器２に着脱自在に設けられたメモリカードやＵＳＢメモリである。通信切替部２１３ａは、現在実行されているラダープログラムの実行状況をモニタ表示するときに、ＰＬＣ３から取得されたデバイスデータをラダーモニタ部２１３に与える。また、通信切替部２１３ａは、過去に実行されたラダープログラムの実行状況を再生表示するときに、データロギング部２１２によってロギングメモリ１４から読み出されたデバイスデータをラダーモニタ部２１３に与える。【選択図】図３
2008084027.tif 000002
【特許請求の範囲】
【請求項１】
シーケンスプログラムにしたがってデバイスを制御する制御装置と通信可能に接続し、前記シーケンスプログラムが実行されることによって更新されるデバイスデータを取得するデータ取得手段と、
当該デバイスデータを記憶するデータ記憶装置と、
前記データ取得手段によって取得された前記デバイスデータを前記データ記憶装置に書き込むとともに前記データ記憶装置から読み出すデータ書込／読出手段とを備えたプログラマブル表示器であって、
前記制御装置から前記シーケンスプログラムを取得するプログラム取得手段と、
前記シーケンスプログラムを記憶するプログラム記憶装置と、
前記プログラム取得手段によって取得された前記シーケンスプログラムを前記プログラム記憶装置に書き込むとともに前記プログラム記憶装置から読み出すプログラム書込／読出手段と、
前記データ書込／読出手段によって読み出された前記デバイスデータに基づいて、前記プログラム書込／読出手段によって読み出されたシーケンスプログラムの実行状況を表示する実行状況表示手段とを備えていることを特徴とするプログラマブル表示器。
【請求項２】
前記実行状況表示手段が前記シーケンスプログラムの実行状況を表示するために基づく前記デバイスデータとして、前記データ取得手段によって取得された前記デバイスデータまたは前記データ記憶装置から前記データ書込／読出手段によって読み出された前記デバイスデータのいずれか一方を選択するデバイスデータ選択手段を備えていることを特徴とする請求項１に記載のプログラマブル表示器。
【請求項３】
請求項１または２に記載のプログラマブル表示器を動作させる表示プログラムであって、コンピュータを前記各手段として機能させるための表示プログラム。
【請求項４】
請求項３に記載の表示プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御手順を規定する制御プログラムの実行状況をモニタするプログラマブル表示器の改良に関するものである。
【背景技術】
【０００２】
プログラマブルロジックコントローラ（以降、ＰＬＣと称する）などと呼ばれる制御装置は、シーケンス制御をはじめとする各種制御を実現するために、ＣＰＵおよびメモリを中心とするハードウェアの部分と、ターゲットシステムの制御を司るソフトウェアの部分とを備えている。ソフトウェアの部分は、ＰＬＣを設計当初の制御システム通りに動作させるためのシーケンス制御フローの設計、その制御フローの命令語への変換、命令語のメモリへの書き込みなどを含んでいる。一般に、この一連の作業をプログラミングと称している。
【０００３】
このようなプログラミングにおいては、コンピュータの専門知識を持たなくても簡単にプログラム作成ができるように、ラダープログラムのような独自の言語を用いており、利用者に使いやすい各種のプログラミング言語が次々と開発されるようになった。例えば、ラダー図（ＬＤ）は、リレー記号を用いて比較的容易にラダー回路を設計することができるので従来から広く普及しており、現在でも最もよく用いられているプログラミング言語である。このようなプログラミング言語によるプログラミング作業において用いられるプログラミングツールとしては、ラダーエディタなどのプログラミングソフトウェアが普及してきている。このソフトウェアは、パーソナルコンピュータなどのコンピュータ装置において、ラダー図のような記号化された命令を含む形態でプログラムを容易に作成および編集することができる。
【０００４】
作成されたプログラムは、当初の設計通りに正しく動作させるために、通常、デバッグで修正や変更が施されることによって完成される。デバッグにおいては、ＰＬＣにデバイスが接続された状態でプログラムを実行させて、設計通りに機器が動作しているかどうかを確認する。例えば、ラダープログラムがどのように実行されているかを確認する手法として、ラダーモニタのシステムが知られている（特許文献１）。
【０００５】
このようなシステムは、ＰＬＣの制御機能を有する表示器（プログラマブル表示器）において、表示器の表示機能を利用してモニタ画面にラダープログラムの実行状況を表示するように構成されている。
【０００６】
また、ラダープログラムの実行中において生じた問題を解析するためのシステムも開示されている（特許文献２）。このシステムでは、ラダープログラムが実行されたことによって得られたデバイスのデータを蓄積しておき、蓄積されたデータに基づいてラダープログラムの過去の実行状況を再現する。
【特許文献１】特開２０００−２０１１３号公報（２０００年１月２１日公開）
【特許文献２】特開２００３−７６４０５号公報（２００３年３月１４日公開）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載されたシステムは、上記のように、ＰＬＣの制御機能を有する表示器においてラダープログラムの実行状況を表示するように構成されている。このため、上記のシステムでは、ＰＬＣの制御機能を有していない一般的な表示器でラダーモニタを行うことができない。
【０００８】
一方、引用文献２に記載されたシステムは、プログラマブル表示器にデバイスのデータを蓄積しているが、ラダープログラムの過去の実行状況を再現するのは、プログラマブル表示器にネットワークを介して接続されたパーソナルコンピュータである。このため、システムの規模が大きくなりがちである。
【０００９】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、ＰＬＣの制御機能を持たないプログラマブル表示器において過去に実行されたラダープログラムの実行状況を簡素な構成で表示することにある。
【課題を解決するための手段】
【００１０】
本発明に係るプログラマブル表示器は、上記の課題を解決するために、シーケンスプログラムにしたがってデバイスを制御する制御装置と通信可能に接続し、前記シーケンスプログラムが実行されることによって更新されるデバイスデータを取得するデータ取得手段と、当該デバイスデータを記憶するデータ記憶装置と、前記データ取得手段によって取得された前記デバイスデータを前記データ記憶装置に書き込むとともに前記データ記憶装置から読み出すデータ書込／読出手段とを備えたプログラマブル表示器であって、前記制御装置から前記シーケンスプログラムを取得するプログラム取得手段と、前記シーケンスプログラムを記憶するプログラム記憶装置と、前記プログラム取得手段によって取得された前記シーケンスプログラムを前記プログラム記憶装置に書き込むとともに前記プログラム記憶装置から読み出すプログラム書込／読出手段と、前記データ書込／読出手段によって読み出された前記デバイスデータに基づいて、前記プログラム書込／読出手段によって読み出されたシーケンスプログラムの実行状況を表示する実行状況表示手段とを備えていることを特徴としている。
【００１１】
上記の構成では、制御装置がシーケンスプログラムを実行しているときに、シーケンスプログラムの実行に伴って得られたデバイスデータが、データ取得手段によって制御装置から取得され、さらに、データ書込／読出手段によってデータ記憶装置に書き込まれる。これによって、シーケンスプログラムの実行の結果として得られたデバイスデータが記憶装置に蓄積される。また、上記シーケンスプログラムが、プログラム取得手段によって制御装置から取得され、さらに、プログラム書込／読出手段によってプログラム記憶装置に記憶される。
【００１２】
すでに実行されたシーケンスプログラムの実行状況を再現するときには、当該シーケンスプログラムがプログラム書込／読出手段によってプログラム記憶装置から読み出されるとともに、デバイスデータがデータ書込／読出手段によってデータ記憶装置から読み出される。そして、当該シーケンスプログラムの実行状況が、実行状況表示手段によって、読み出されたデバイスデータに基づいて再生表示される。これにより、プログラマブル表示器において、過去に実行されたシーケンスプログラムの実行状況が再生表示される。
【００１３】
前記のプログラマブル表示器は、前記実行状況表示手段が前記シーケンスプログラムの実行状況を表示するために基づく前記デバイスデータとして、前記データ取得手段によって取得された前記デバイスデータまたは前記データ記憶装置から前記データ書込／読出手段によって読み出された前記デバイスデータのいずれか一方を選択するデバイスデータ選択手段を備えていることが好ましい。
【００１４】
この構成では、制御装置からデータ取得手段によって取得されたデバイスデータがデバイスデータ選択手段によって選択されると、当該デバイスデータに基づいて、現在実行されているシーケンスプログラムの実行状況が実行状況表示手段によって表示される。一方、データ記憶装置からデータ書込／読出手段によって読み出されたデバイスデータがデバイスデータ選択手段によって選択されると、当該デバイスデータに基づいて、過去に実行されたシーケンスプログラムの実行状況が実行状況表示手段によって表示される。このように、制御装置またはデータ記憶装置からのデバイスデータがデバイスデータ選択手段によって選択されることにより、プログラマブル表示器において、現在実行されているシーケンスプログラムおよび過去に実行されたシーケンスプログラムの実行状況を表示することができる。
【００１５】
本発明の表示プログラムは、前記のいずれかのプログラマブル表示器を動作させる表示プログラムであって、コンピュータを前記各手段として機能させる。また、この表示プログラムは、コンピュータ読み取り可能な記録媒体に記録されて提供される。これにより、前記のプログラマブル表示器と同様、過去に実行されたシーケンスプログラムの実行状況が再生表示される。
【発明の効果】
【００１６】
本発明に係るプログラマブル表示器は、上記のように、制御装置からシーケンスプログラムを取得するプログラム取得手段と、前記シーケンスプログラムを記憶するプログラム記憶装置と、前記プログラム取得手段によって取得された前記シーケンスプログラムを前記プログラム記憶装置に書き込むとともに前記プログラム記憶装置から読み出すプログラム書込／読出手段と、データ書込／読出手段によって読み出された前記デバイスデータに基づいて、前記プログラム書込／読出手段によって読み出されたシーケンスプログラムの実行状況を表示する実行状況表示手段とを備えている。これにより、プログラマブル表示器において、過去に実行されたシーケンスプログラムの実行状況が再生表示される。したがって、ネットワークを介して他の機器と接続されるようなシステム構成を採用することなく、簡素な構成で、過去に実行されたシーケンスプログラムの実行状況を再生表示することができるという効果を奏する。
【発明を実施するための最良の形態】
【００１７】
本発明の一実施形態について図１ないし図４に基づいて説明すると、以下の通りである。
【００１８】
図１に示すように、本実施形態に係る制御システム１は、プログラマブル表示器２と、ＰＬＣ３と、ターゲットシステム４とを備えている。
【００１９】
ＰＬＣ３は、ユーザが作成した制御の手順を規定するシーケンスプログラム（ラダープログラムなど）にしたがって動作する。ＰＬＣ３は、例えば、数十ｍｓなどの予め定められたスキャンタイム毎に、入力ユニットを介して入力用のデバイス５の状態を取り込むとともに、出力用のデバイス５に制御指示を与える。
【００２０】
入力用のデバイス５としては、センサ（温度センサ、光センサなど）、スイッチ（押ボタンスイッチ、リミットスイッチ、圧力スイッチなど）のような機器が用いられる。出力用のデバイス５としては、アクチュエータ、リレー、電磁弁、表示器などが用いられる。これらのデバイス５は、製造ラインなどの各種のターゲットシステム４の所要各部に配置されて、制御システム１の一部を構成している。
【００２１】
なお、デバイス５は、後述するタッチパネル２５などの入力装置から手動で入力されたデータを格納するためのデータメモリ（図示せず）における特定の領域であってもよい。また、デバイス５は、ＰＬＣ３内のメモリにおける特定の領域であってもよい。
【００２２】
ＰＬＣ３内のメモリ（デバイスメモリ）は、デバイス５の状態（デバイス５からの出力値やデバイス５への設定値）を示すデータ（ワードデータやビットデータ）を、デバイスアドレスで特定される領域に格納している。上記メモリにおいて、ワードデバイスとビットデバイスとが設定される。ワードデバイスは、入出力されるデータが数値のようなワードデータを格納する領域として設定され、ワードアドレス（デバイスアドレス）で指定される。また、ビットデバイスは、オン・オフ状態のようなビットデータを格納する領域として設定され、ビットアドレス（デバイスアドレス）で設定される。このような設定により、メモリ内の任意のワードデバイスまたはビットデバイスをデバイスアドレスを指定してアクセスするだけでデバイス５を制御し、またはその状態に関する情報を個別に取り出すことができる。
【００２３】
以降の説明では、デバイスアドレスを適宜、アドレスと称する。
【００２４】
プログラマブル表示器２は、ＣＰＵなどの演算処理装置を備えており、ユーザが作成した入力操作および表示用の画面データを表示することによりプログラマブル表示器特有の操作機能および表示機能を実現する専用コンピュータである。制御システム１のＨＭＩ機器として好適に使用されるプログラマブル表示器２は、後述する処理規定情報（タグ）を組み合わせて決定される画面データに基づいて、デバイス５の状態を画面表示する際の動作や、画面への操作に応じてデバイス５の状態を制御する際の動作を特定する。
【００２５】
このプログラマブル表示器２は、シリアルケーブル６を介したＰＬＣ３との通信により、ＰＬＣ３を介して表示画面に表示する各デバイス５の状態を取得し、例えば、後述のディスプレイ２４に各デバイス５の状態を表示する機能を有する。また、プログラマブル表示器２は、後述のタッチパネル２５への操作に応じて、デバイス５へデバイスの状態制御を指示する機能を有する。
【００２６】
なお、デバイス５の状態の取得／変更は、その都度指示してもよいし、プログラマブル表示器２内に一時的なメモリ空間を用意し、取得／変更時には、当該メモリ空間へアクセスするとともに、所定の時間間隔毎や所定のイベント毎にＰＬＣ３と通信して各々のアドレスが割り当てられた実体と同期を取ってもよい。
【００２７】
プログラマブル表示器２は、上記の機能を実現するために、ＨＭＩ制御部２１と、データメモリ２２と、作業メモリ２３と、ディスプレイ２４と、タッチパネル２５と、インターフェース部（図中、Ｉ／Ｆ）２６，２７と、メモリカードインターフェース部（図中、メモリカードＩ／Ｆ）２８と、ＵＳＢインターフェース部（図中、ＵＳＢ  Ｉ／Ｆ）２９とを備えている。以下、プログラマブル表示器２の主要各部について詳細に説明する。
【００２８】
ディスプレイ２４は、プログラマブル表示器２を薄型に構成するために、液晶ディスプレイや、ＥＬディスプレイや、プラズマディスプレイのような平板型ディスプレイが好適に用いられる。タッチパネル２５は、ディスプレイ２４の表示画面上でタッチ入力を行うために設けられている入力装置である。
【００２９】
インターフェース部２６は、プログラマブル表示器２がＦＴＰサーバ１３等のネットワーク機器との間の通信を行うための通信制御部であり、ネットワーク７に接続されている。このインターフェース部２６は、ＦＴＰサーバ１３等のＩＰアドレスに基づくネットワーク通信を行うことができるように構成される。
【００３０】
一方、インターフェース部２７は、プログラマブル表示器２がＰＬＣ３との間のシリアル通信を行うための通信制御部であり、シリアルケーブル６で各々が接続されている。また、インターフェース部２７は、複数台のＰＬＣ３の接続が可能となるように、接続可能なＰＬＣ３の台数と同数の通信ポートを備えている。ここで、ＰＬＣ３のメーカや機種名とＰＬＣ３が接続される通信ポートとの対応関係は、予めユーザによって接続機器データとして設定されている。また、ＰＬＣ３には、接続される通信ポートに応じて、例えばＰＬＣ−Ａ，ＰＬＣ−Ｂ，ＰＬＣ−Ｃ，…というような接続機器名が付与されており、この接続機器名も接続機器データに含まれる。前述のようなＰＬＣ３のビットデバイスやワードデバイスに対するデータの読み書きは、アドレスとともに接続機器名を指定して行われる。
【００３１】
インターフェース部２７は、その接続機器データに基づいて、ＰＬＣ３のメーカや機種に応じた通信プロトコルを用いて通信を行う。上記の接続機器データや通信プロトコルは、例えば、次に説明するデータメモリ２２に格納される。
【００３２】
メモリカードインターフェース部２８は、記憶装置としてのメモリカード１１に対するデータの書き込みおよび読み出しを行なうリーダ／ライタである。メモリカード１１としては、小型かつ大容量のＣＦ（登録商標）カードが好適である。ＵＳＢインターフェース部２９は、外部に接続されるＵＳＢ（Universal Serial Bus）機器との通信を行うためのインターフェースである。このＵＳＢインターフェース部２９には、記憶装置としてのＵＳＢメモリ１２が接続される。上記のメモリカード１１およびＵＳＢメモリ１２は、ＰＬＣ３からのデバイスデータをロギングする後述のロギングメモリ１４（図３参照）として機能する。
【００３３】
データメモリ２２は、プロジェクトファイル、上記の通信プロトコル、ラダーモニタファイル、キャプチャファイルなどの表示や通信に関するデータを格納するためのメモリであり、ＦＥＰＲＯＭ(Flash Erasable and Programmable ROM)が用いられる。ＦＥＰＲＯＭは、書き替え可能な読み出し専用のフラッシュメモリであるので、一般のパーソナルコンピュータにおけるハードディスクドライブの役割を果たす。フラッシュメモリは、可動部を持たず、かつ衝撃に強いので、劣悪な周囲環境でも安定して動作する。
【００３４】
プロジェクトファイルは、プログラマブル表示器２に表示される１つ以上のユーザ画面（１フレーム分の画面データによって構成される単位画面）のデータをまとめた画面ファイルである。プロジェクトファイルは、通常、ターゲットシステム４やターゲットシステム４で製造される製品などに応じた一連の関連する複数の画面データからなることが多い。このプロジェクトファイルは、画面作成用のソフトウェアである画面エディタで作成されたプロジェクトファイルと異なるファイル形式（ＨＭＩ制御部２１が解読可能なファイル形式）で保存されている。
【００３５】
キャプチャファイルは、後述するラダーモニタ部２１３によってキャプチャされたラダーモニタ画面の画像ファイルである。
【００３６】
プログラマブル表示器２は、上記のプロジェクトファイルから各画面番号に付与される固有の画面番号に基づいて１つの画面データを選択して、その画面データに基づいてユーザ画面を表示する。
【００３７】
上記の画面データは、ディスプレイ２４に表示すべきベース画面やパーツのデータおよび各パーツに付与された後述する処理規定情報などを含んでいる。この画面データは、図形データ部およびアドレスデータ部を含んでいる。図形データ部は、ユーザが作成したマークについての図形データや選択されたパーツを格納し、アドレスデータ部は、図形データ部に対応するように、入力されたマークやパーツについて、前記のアドレスおよびアドレスに対応するコメントを格納している。具体的には、図形データ部におけるマークやパーツの個々は、アドレスデータ部においてそれぞれ対応するコメントおよびアドレスと対応付けられている。
【００３８】
コメントとしては、デバイス５の動作状態（起動、停止等）のような事象名や、スイッチに対応するＳＷやランプに対応するＬＡＭＰのようなデバイス５に対応する符号や、操作指示や、制御対象となる物理量などが挙げられる。また、コメントは、変数として扱うこともできる。このように定義されるコメントは、デバイス５に対応する所望のデバイスアドレスに予め対応付けられている。
【００３９】
また画面データは、ユーザ画面に関連して行われる各種の処理を規定する処理規定情報（タグ）を含んでいる。この処理規定情報は、ベース画面上で実行されるべき事象毎に作成されており、基本的には、表示処理を実行すべきベース画面のファイル番号（画面番号）と、このベース画面上で実行すべき動作内容を特定する事象名と、各実行事象毎に参照される１または複数のデータからなる参照情報とを一組として備えている。
【００４０】
本実施の形態に係るプログラマブル表示器２では、上記のタグとして、ベース画面上の領域（表示範囲）とその領域への表示に対応するデバイスのデバイスアドレスとの対応を示す表示タグ、および画面上の領域（入力範囲）とその領域へのタッチ入力に対応するアドレスとの対応を示すタッチ入力タグが規定されている。さらに、本実施形態では、各タグは、複数のユーザ画面の少なくとも１つと関連付けることができる。
【００４１】
作業メモリ２３は、例えば、ＤＲＡＭによって構成されており、表示制御などの演算処理時の作業用に用いられる他、ＰＬＣ３との間でやり取りされるデータの一時的な記憶に用いられる。特に、ＤＲＡＭは、ＰＬＣ３のメモリに格納されるデバイス５の状態（デバイスアドレスの内容）をＰＬＣ３のメモリとの間で受け渡しするための状態メモリ領域を有している。また、作業メモリ２３は、ディスプレイに表示する画像を展開するＶＲＡＭも含んでいる。このＶＲＡＭには、データメモリ２２から出された画面データのイメージを水平方向に表示される順にドットデータとして格納する。
【００４２】
ＨＭＩ制御部２１は、ＨＭＩ制御プログラムをプログラマブル表示器２が備えるＣＰＵなどの演算処理手段に実行させることにより実現される機能ブロックである。上記のＨＭＩ制御プログラムは、プログラマブル表示器２と分離可能に構成される記録媒体にも記録可能であり、その記録媒体からプログラマブル表示器２にインストールされてもよい。ＨＭＩ制御プログラムは、プログラマブル表示器２の機種に応じた機能を発揮させるために、機種毎に個別に用意されている。
【００４３】
上記の記録媒体は、磁気テープやカセットテープなどのテープ系、フレキシブルディスクやハードディスクなどの磁気ディスク系、ＣＤ−ＲＯＭ、ＭＯ、ＭＤ、ＤＶＤなどの光ディスク系、ＩＣカード（メモリカードを含む）、光カードなどのカード系が好適である。その他、上記のプログラムメディアは、マスクＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュＲＯＭなどによる半導体メモリを含めた固定的にプログラムを担持する媒体であってもよい。
【００４４】
また、本制御システム１が、インターネットを含む通信ネットワークと接続可能に構成されていれば、当該通信ネットワークからプログラムをダウンロードするように流動的にプログラムを担持する媒体であってもよい。ただし、このように通信ネットワークからプログラムをダウンロードする場合には、そのダウンロード用プログラムは予めプログラマブル表示器２に格納されるか、あるいは別の記録媒体からインストールされるものであってもよい。
【００４５】
このＨＭＩ制御部２１は、ユーザ画面の表示制御、ユーザ画面を介した入力操作の制御、ＰＬＣ３などの接続機器との通信の制御といったＨＭＩ機能の中心的な制御動作を行う。また、ＨＭＩ制御部２１は、通信・表示処理部２１１、データロギング部２１２およびラダーモニタ部２１３を有している。
【００４６】
通信・表示処理部２１１は、デバイス５の状態を取得してユーザ画面に表示する場合、ＰＬＣ３内のメモリに設定される前述のビットデバイスまたはワードデバイスが示す状態情報のうち、必要な情報を適時にデータメモリに読み込む一方、上記の表示タグを繰り返し読み出して、表示タグで指定された表現形式のパーツを読み出した値に応じた形態で画面上の指定された領域へ表示する。これによって、ビットデバイスまたはワードデバイスの状態の変化に応じて変化する表示動作が実行され、ＰＬＣ３から取得したデバイス５の状態がユーザ画面におけるパーツの表示状態に反映される。
【００４７】
また、通信・表示処理部２１１は、ラダーモニタ部２１３が後述するモニタモードにおいてラダーモニタを行うときに、実行状況をモニタするシーケンスプログラムをＰＬＣ３に要求し、その要求に応じてＰＬＣ３から送信されてきた当該シーケンスプログラムを受信することにより取得する。
【００４８】
なお、プログラマブル表示器２は、特許文献１，２に記載されたように、制御装置（ＰＬＣ）としての機能を備えていてもよい。このようなプログラマブル表示器２においては、シーケンスプログラムがデータメモリ２２に格納されており、制御装置として動作するときに、シーケンスプログラムがデータメモリ２２から読み出されて作業メモリ２３に展開される。
【００４９】
通信・表示処理部２１１は、プログラマブル表示器２が制御装置として動作する場合、ＰＬＣ３のメモリの代わりにデータメモリ２２に設定される前述のビットデバイスまたはワードデバイスが示す状態情報のうちの必要な情報を参照しながら、上記の表示タグを繰り返し読み出して、表示タグで指定された表現形式のパーツを読み出した値に応じた形態で画面上の指定された領域へ表示する。これによって、ビットデバイスまたはワードデバイスの状態の変化に応じて変化する表示動作が実行され、デバイス５から取得したデバイス５の状態がユーザ画面におけるパーツの表示状態に反映される。
【００５０】
また、通信・表示処理部２１１は、上記のモニタモードにおいてラダーモニタを行うときに、実行状況をモニタするシーケンスプログラムをデータメモリ２２から取得する。
【００５１】
通信・表示処理部２１１は、ユーザ画面上でのタッチ入力によってデバイス５に制御指示を与える場合、前述のタッチ入力タグを繰り返し読み出して、タッチ入力タグにおける参照情報に含まれる、ユーザ画面の所定の領域におけるタッチ位置を特定するための、タッチによる入力が有効となる有効入力座標範囲、およびタッチパネル２５の操作（数値入力操作、ＯＮ／ＯＦＦ操作など）を特定する事象名などで特定される内容の動作をＰＬＣ３内のメモリにビットデバイスまたはワードデバイスとして設定する。また、ＨＭＩ制御部２１は、プログラマブル表示器２が制御装置として動作する場合、タッチ入力タグを繰り返し読み出して、タッチ入力タグにおける参照情報に含まれる有効入力座標範囲、およびタッチパネル２５の操作を特定する事象名などで特定される内容の動作を、ＰＬＣ３のメモリの代わりにデータメモリにビットデバイスまたはワードデバイスとして設定する。これによって、ビットデバイスまたはワードデバイスの状態の変化に応じて変化するＰＬＣ３またはプログラマブル表示器２において、設定された制御指示が上記の動作として実行され、デバイス５の状態が変化する。
【００５２】
データロギング部２１２は、通信・表示処理部２１１によってＰＬＣ３から取得された、現在実行されているラダープログラムを、ロギングメモリ１４（メモリカード１１等）に一旦格納してから、作業メモリ２３に展開する。また、データロギング部２１２は、プログラマブル表示器２が通信・表示処理部２１１によってＰＬＣ３から取得されたデバイスデータを前述のロギングメモリ１４に予め設定されたタイミングで順次書き込む。このタイミングは、所定時間毎、所定時刻、ＰＬＣ３の起動時、ＰＬＣ３のデバイスメモリにおける所定のビットのＯＮ時またはＯＦＦ時などが挙げられる。また、データロギング部２１２は、ラダーモニタ部２１３の要求に応じて、指定されたデバイスデータから順次読み出す。
【００５３】
タイミングが指定されない場合は、取得したデバイスデータが全て時系列でロギングメモリ１４に書き込まれる。タイミングが指定された場合のデバイスデータのロギングメモリ１４への書き込みは、例えば、次のようにして行われる。図４に示すように、データロギング部２１２は、プログラマブル表示器２に設けられたリングバッファＲＢに、取得されたデバイスデータを順次書き込んでいく。そして、指定されたタイミングで、リングバッファＲＢのポインタ制御部が所望のデバイスデータの読み出しを実行する。これにより、リングバッファＲＢに蓄えられたデバイスデータから所望のデバイスデータのみがリングバッファＲＢから読み出されて、さらにデータロギング部２１２によってロギングメモリ１４に書き込まれる。
【００５４】
ロギングメモリ１４においては、順次書き込まれるデバイスデータをプログラマブル表示器２に接続されているＰＬＣ３毎にデータベースの形式で管理している。具体的には、「データ発生日時」および「ラダープログラムのファイル名」や、「ビットＯＮ／ＯＦＦ」、「数量」などのラダープログラムが実行されることによって得られるビットデータやワードデータといった各項目がフィールドとして設けられている。それらのフィールドによって１つのレコードが形成され、各レコードが日時順に書き込まれる。ロギングメモリ１４においては、レコードが入力順に保存される順編成のファイル構造が形成される。これにより、時刻順にレコードを検索する順アクセスを可能にしている。
【００５５】
ラダーモニタ部２１３は、通信・表示処理部２１１を介して、現在実行されているラダープログラムをＰＬＣ３から取得するとともに、当該ラダープログラムが実行されることにより得られたデバイスデータをＰＬＣ３のデバイスメモリから取得する。また、ラダーモニタ部２１３は、ロギングメモリ１４から書き込まれているラダープログラムおよびデバイスデータを取得する。
【００５６】
ラダーモニタ部２１３は、作業メモリ２３に展開されたラダープログラムを通信・表示処理部２１１に渡して、例えば図２に示すようなラダーモニタ用のラダーモニタ画面１０１にラダー図として表示させる。ラダープログラムの表示方法については、一般のラダーエディタが有するラダーモニタ機能と同様な表示方法であってもよいし、特許文献１に記載された表示方法であってもよい。また、ラダーモニタ部２１３は、取得したデバイスデータをラダーモニタ画面１０１上に当該デバイスデータに応じた状態として通信・表示処理部２１１に表示させる。
【００５７】
例えば、回路上導通している（接続線上の）部分を太線または明るく表示し、非導通の部分を細線で表示する。これにより、回路上でどのデバイス５が導通しているかをラダーモニタ画面１０１上で確認することができる。図２に示す例では、第２のラングのｂ接点までが太線で表示されていることから、このｂ接点までが導通していることがわかる。例えば、デバイス５のリミットスイッチが、外見上は押されていないにも関わらず、デバイスアドレスがＸ０００．１のｂ接点が開（ＯＰＥＮ）状態であればケーブルの断線やスイッチ接点の不良が考えられる。
【００５８】
また、ラダーモニタ部２１３は、ラダーモニタ画面１０１に設けられたタッチスイッチ１０１ａ〜１０１ｅがユーザによってタッチ操作されると、タッチスイッチ１０１ａ〜１０１ｅのそれぞれに応じた動作を実行するように各部に指示を与える。ここで、各タッチスイッチ１０１ａ〜１０１ｅで実行される動作について説明する。
【００５９】
タッチスイッチ１０１ｂは、ロギングメモリ１４に格納されているデバイスデータに基づいてラダープログラムの実行状況を再生するためのスイッチである。ラダーモニタ部２１３は、タッチスイッチ１０１ｂのタッチ操作により、データロギング部２１２にロギングメモリ１４からデバイスデータの読み出しを指示し、順次読み出されたデバイスデータを通信・表示処理部２１１に与えて、デバイスデータの変化をラダーモニタ画面１０１に表示させる。
【００６０】
タッチスイッチ１０１ａは、ラダープログラムの実行状況を再生させるときの開始時点を特定するためのデバイスデータの発生時刻を設定するためのスイッチである。ラダーモニタ部２１３は、タッチスイッチ１０１ａのタッチ操作により、時刻設定のための図示しないダイアログボックスを表示する。また、ラダーモニタ部２１３は、ユーザによって当該ダイアログボックスに時刻が設定されると、当該時刻をデータロギング部２１２に与える。すると、データロギング部２１２は、当該時刻をキーとしてデバイスデータを検索し、ヒットしたデバイスデータから順次時系列でデバイスデータを読み出していく。ラダーモニタ部２１３は、読み出されたデバイスデータに基づいて上記のようにラダープログラムの実行状況を再生させる。
【００６１】
タッチスイッチ１０１ｃは、ラダープログラムの実行状況の再生を一時停止させるためのスイッチである。ラダーモニタ部２１３は、タッチスイッチ１０１ｃのタッチ操作により、データロギング部２１２にデバイスデータの読み出しの一時停止を指示する。また、ラダーモニタ部２１３は、タッチスイッチ１０１ｃが再度タッチ操作されると、データロギング部２１２にデバイスデータの読み出しの再開を指示する。
【００６２】
タッチスイッチ１０１ｄは、現在表示されているラダーモニタ画面１０１を印刷出力するためのスイッチである。ラダーモニタ部２１３は、タッチスイッチ１０１ｄのタッチ操作により、現在表示されているラダーモニタ画面１０１を画像ファイルとしてキャプチャして、プログラマブル表示器２に接続される図示しないプリンタに出力する。このため、プログラマブル表示器２は、図示しないが、プリンタインターフェースを備えている。
【００６３】
タッチスイッチ１０１ｅは、現在表示されているラダーモニタ画面１０１をファイル保存するためのスイッチである。ラダーモニタ部２１３は、タッチスイッチ１０１ｅのタッチ操作により、現在表示されているラダーモニタ画面１０１を画像ファイルとしてキャプチャして、データメモリ２２、ロギングメモリ１４などに保存する。
【００６４】
ラダーモニタ部２１３は、ＰＬＣ３またはロギングメモリ１４のいずれか一方から、ラダープログラムおよびデバイスデータを取得するために、通信経路を切り替える通信切替部２１３ａを有している。図３に示すように、通信切替部２１３ａは、ＰＬＣ３から現在実行されているラダープログラムについてデバイスデータを取得してラダーモニタを行うモニタモードのときに、ＰＬＣ３からプログラマブル表示器２（状態メモリ領域）に取り込まれたデバイスデータをラダーモニタ部２１３に導く。一方、通信切替部２１３ａは、ロギングメモリ１４からすでに実行されたラダープログラムについてデバイスデータを取得して当該ラダープログラムの実行状況を再生する再生モードのときに、ロギングメモリ１４からデータロギング部２１２を介して読み出されたデバイスデータをラダーモニタ部２１３に導く。
【００６５】
ここで、上記のように構成される制御システム１の動作について説明する。
【００６６】
まず、モニタモードでは、図３に示すように、現在実行されているラダープログラムは、ＰＬＣ３から通信切替部２１３ａを介して取得されると、ラダーモニタ部２１３および通信・表示処理部２１１によって、ディスプレイ２４にラダーモニタ画面１０１として表示される。続いて、ラダープログラムの実行に伴って得られたデバイスデータが、やはり通信切替部２１３ａを介してＰＬＣ３から取得されると、ラダーモニタ部２１３および通信・表示処理部２１１によって、デバイスデータの変化がラダーモニタ画面１０１に表示される。このようにして、デバイスデータの変化がラダープログラムの実行状況としてラダーモニタ画面１０１に表示されていく。
【００６７】
また、データロギング部２１２は、ＰＬＣ３から取得された現在実行されているラダープログラムをロギングメモリ１４に書き込む。また、データロギング部２１２は、当該ラダープログラムの実行に伴って得られたデバイスデータを指定されたタイミングで時系列にロギングメモリ１４に書き込んでいく。
【００６８】
一方、再生モードでは、データロギング部２１２によって読み出されたラダープログラムは、通信切替部２１３ａを介して取得されると、ラダーモニタ部２１３および通信・表示処理部２１１によって、ディスプレイ２４にラダーモニタ画面１０１として表示される。続いて、データロギング部２１２によって順次読み出されたデバイスデータが、やはり通信切替部２１３ａを介して取得されると、ラダーモニタ部２１３および通信・表示処理部２１１によって、デバイスデータの変化がラダーモニタ画面１０１に表示される。このようにして、デバイスデータの変化がラダープログラムの実行状況の再現としてラダーモニタ画面１０１に表示されていく。
【００６９】
このとき、ラダーモニタ画面１０１におけるタッチスイッチ１０１ａ〜１０１ｅのいずれかがユーザによってタッチ操作されると、それぞれの処理が行われる。
【００７０】
このように、本実施形態のプログラマブル表示器２は、ＰＬＣ３から取得したデバイスデータをロギングメモリ１４に蓄えて、ラダーモニタ部２１３によって、それらのデバイスデータに基づいて、すでに実行されたラダープログラムの実行状況をラダーモニタ画面１０１上で再生する。また、モニタモードと再生モードとを行うために、ラダーモニタ部２１３がＰＬＣ３またはロギングメモリ１４からデバイスデータを取得する通信経路を通信切替部２１３ａによって切り替えている。これにより、プログラマブル表示器２において、リアルタイムにラダーモニタを行うことができるとともに、蓄えられたデバイスデータに基づいて、すでに実行されたラダーモニタの実行状況を再現してラダーモニタ時と同様に表示することができる。
【００７１】
それゆえ、ＰＬＣの制御機能を持たないプログラマブル表示器２においても過去に実行されたラダープログラムの実行状況を表示することができる。もちろん、ＰＬＣの制御機能を持つプログラマブル表示器が、本実施形態の構成を備えていてもよい。
【００７２】
また、プログラマブル表示器２においてラダープログラムの実行状況を表示するとともに、プログラマブル表示器２側に設けられたロギングメモリ１４にデバイスデータを蓄えるので、ラダープログラムの実行状況を表示するためのシステム構成を簡素化することができる。
【００７３】
なお、本実施の形態では、ロギングメモリ１４としての機能をプログラマブル表示器２に着脱自在のメモリカード１１やＵＳＢメモリ１２に持たせているが、同機能をプログラマブル表示器２の内部メモリ（例えばデータメモリ）に持たせてもよい。また、上記のシステム構成の簡素化には反するが、プログラマブル表示器２がネットワーク７に接続されている環境下では、ネットワーク７に接続されたＦＴＰサーバ１３もロギングメモリ１４として活用することができる。この構成では、ＦＴＰサーバ１３の特定のファイルにロギングメモリ１４としての役割を持たせて、ラダープログラムやデバイスデータを当該ファイルに書き込む。これにより、ロギングメモリ１４の大容量化を容易に図ることができ、ネットワークシステムにおいて、特に好適である。
【００７４】
また、プログラマブル表示器２がＰＬＣの制御機能を兼ね備えている場合でも、ラダープログラムを実行することによって更新されたデバイスデータを、外部のＰＬＣ３から取得したデバイスデータと同様にしてロギングメモリ１４に蓄えて、ラダーモニタ部２１３がそのデバイスデータに基づいてラダープログラムの実行状況を再生表示するようにしてもよい。これにより、特許文献２に記載された制御機能を備えたプログラマブル表示器と同様、過去にプログラマブル表示器において実行されたラダープログラムの実行状況を再現することができる。したがって、このようなプログラマブル表示器２では、外部のＰＬＣ３によって実行されたラダープログラムだけでなく、内部の制御機能によって実行されたラダープログラムの実行状況を再現することができる。
【００７５】
本発明は、上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【００７６】
本発明のプログラマブル表示器は、ラダープログラムの実行状況をリアルタイムに表示する一方、蓄えたデバイスデータに基づいてすでに実行されたラダープログラムの実行状況を再生表示するという機能をともに備えることにより、プログラマブル表示器の設置された現場にてラダープログラムの検証を行うことができ、ラダープログラムの不具合のチェックなどを容易に行うことができる。
【図面の簡単な説明】
【００７７】
【図１】本発明の実施形態に係る制御システムの構成を示すブロック図である。
【図２】上記制御システムにおけるプログラマブル表示器でラダープログラムの実行状況をモニタ表示または再生表示するためのラダーモニタ画面を示す図である。
【図３】上記制御システムにおいてＰＬＣまたはロギングメモリからデバイスデータを取得してラダープログラムの実行状況を表示する処理系統を示すブロック図である。
【図４】上記ＰＬＣからデバイスデータを上記ロギングメモリに書き込む具体例を示す図である。
【符号の説明】
【００７８】
２    プログラマブル表示器
１１    メモリカード（データ記憶装置，プログラム記憶装置）
１２    ＵＳＢメモリ（データ記憶装置，プログラム記憶装置）
１４    ロギングメモリ（記憶装置）
２２    データメモリ（記憶装置）
２１１    通信・表示処理部（データ取得手段，プログラム取得手段）
２１２    データロギング部（データ書込／読出手段，プログラム書込／読出手段）
２１３    ラダーモニタ部（実行状況表示手段）
２１３ａ  通信切替部（デバイスデータ選択手段）
【図１】
2008084027.tif 000003
【図２】
2008084027.tif 000004
【図３】
2008084027.tif 000005
【図４】
2008084027.tif 000006