(57)【要約】      （修正有）【課題】ＰＬＣ等の外部機器の機種を問わずに、インターフェイス・プログラムの作成が容易なデータ通信装置を提供する。【解決手段】送信処理手段８は、動作プログラムからの指令を受けて、動作プログラムによって、直接または間接的に指定されたＰＬＣ４（外部機器）のデバイスＤ1、Ｄ2・・・Ｄnのいずれかに対してデータを送信して書き込む。この際、送信処理手段８は、ＰＬＣ４とのデータやりとりのためのインターフェイス基本コマンド１２、共通属性データ１４、デバイス情報データ１６を参照して、指定されたデバイスＤ1、Ｄ2・・・Ｄnとの通信を行う。一方、受信処理手段６も同様に、上記のインターフェイス基本コマンド１２、共通属性データ１４、デバイス情報データ１６を参照して、指定されたデバイスＤ1、Ｄ2・・・Ｄnからのデータの読み出しを行う。読み出したデータは、動作プログラムに与える。【選択図】  図１
2008071033.tif 000002
【特許請求の範囲】
【請求項１】
デバイスを有する外部機器とデータ通信するプログラマブル表示器であって、
外部機器との通信の基本処理を行うインターフェイス基本コマンドと、外部機器のデバイスの種類毎に設けられ少なくともデータ桁数、アドレス桁数、種別コードを含むデバイス情報データと、少なくともアドレスおよびデータのデータ形式を含む通信コマンド共通属性データとを記録した記録部と、
前記インターフェイス基本コマンドにしたがって、特定デバイスについて、通信相手先のデバイスに対応するデバイス情報データと通信コマンド共通属性データに基づいて外部機器と通信する通信手段と、
を備えたプログラマブル表示器。
【請求項２】
請求項１のプログラマブル表示器において、
前記通信手段は、読み出しの場合は、デバイス情報データと通信コマンド共通属性データとフレームフォーマットとに基づいて受信したフレームを解析し、書き込みの場合は、デバイス情報データと通信コマンド共通属性データとフレームフォーマットとに基づいてフレームを生成して外部機器に送信することを特徴とするもの。
【請求項３】
請求項１のプログラマブル表示器において、
前記特定デバイスは、画面読み出しデバイステーブルまたは画面書き込みデバイステーブルに登録されたデバイスであることを特徴とするもの。
【請求項４】
プログラマブル表示器のプロジェクトデータを生成して出力する作画装置であって、
外部機器との通信の基本処理を行うインターフェイス基本コマンドを記録した記録部と、
外部機器との間でのデータの送受信を含む命令を備えて構成される通信プロトコルを、ユーザとの対話によって生成する対話生成手段と、
外部機器のデバイスの種類毎に少なくともデータ桁数、アドレス桁数、種別コードを含むデバイス情報データおよび少なくともアドレスおよびデータのデータの形式を含む通信コマンド共通属性データをユーザが入力するための入力手段と、
前記通信プロトコルとインターフェイス基本コマンドとデバイス情報データと通信コマンド共通属性データとを含むプロジェクトデータを出力する出力手段と、
を備えた作画装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、プログラマブル表示器と外部機器とのデータ通信に関するものであり、特にその通信プログラム開発の容易化に関するものである。
【背景技術】
【０００２】
プログラマブル・ロジック・コントローラ（ＰＬＣ）、ロボットなどの外部機器に制御指示を与えたり、外部機器のデータを表示したりするために、プログラマブル表示器が用いられている。
【０００３】
プログラマブル表示器は表示やボタンなどの汎用性が高いが、その反面、外部機器とデータのやりとり（通信）を行うためのインターフェイス・プログラムを用意しなければならない。このインターフェイス・プログラムの作成は必ずしも容易ではなく、従来、様々な工夫がなされている。
【０００４】
特許文献１には、予め複数のＰＬＣに対するインターフェイス・プログラムを作成支援装置に用意しておき、ユーザがこれらインターフェイス・プログラムを選択し、作成支援装置からプログラマブル表示器に転送して使用するものである。ユーザは、ＰＬＣの機種に対応するインターフェイス・プログラムを選択するだけでよいという利点がある。
【０００５】
特許文献２には、通信プロトコルを自動解析して、インターフェイス・プログラムを生成する作成装置が開示されている。ユーザは、ＰＬＣのプロトコルなどを知らなくとも、インターフェイス・プログラムを作成できるという利点がある。
【０００６】
特許文献３には、プロトコルマクロにて記述した、定数および変数について、アドレスが自動的に割り当てられるプロトコル作成方法が開示されている。プロトコルマクロを効率的に作成できるという利点がある。
【０００７】
【特許文献１】特許３３５６５３０
【０００８】
【特許文献２】特開２００２−３００２２６
【０００９】
【特許文献３】特開２００２−１８９５０５
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記の従来技術には次のような問題があった。
【００１１】
特許文献１のものでは、予め登録されていないＰＬＣについては、新たにインターフェイス・プログラムを作成しなければならないという問題があった。
【００１２】
特許文献２のものでは、一つのフレームによって各命令が構成されるような単純なプロトコルについては対応できるが、複数フレームによってマクロ命令が構成されるような場合や、分岐などがある複雑なプログラムについては、対応することができなかった。
【００１３】
特許文献３のものでは、アドレスを自動的に割り当てることはできるものの、ＰＬＣの機種に応じてインターフェイス・プログラムを自動的に生成するものではなかった。
【００１４】
この発明は上記のような問題点を解決して、ＰＬＣ等の外部機器の機種を問わずに、インターフェイス・プログラムの作成が容易なプログラマブル表示器および作画装置を提供することを目的とする。
【課題を解決するための手段】
【００１５】
(1)この発明の一側面によるプログラマブル表示器は、デバイスを有する外部機器とデータ通信するプログラマブル表示器であって、外部機器との通信の基本処理を行うインターフェイス基本コマンドと、外部機器のデバイスの種類毎に設けられ少なくともデータ桁数、アドレス桁数、種別コードを含むデバイス情報データと、少なくともアドレスおよびデータのデータ形式を含む通信コマンド共通属性データとを記録した記録部と、前記インターフェイス基本コマンドにしたがって、特定デバイスについて、通信相手先のデバイスに対応するデバイス情報データと通信コマンド共通属性データに基づいて外部機器と通信する通信手段と、を備えている。
【００１６】
したがって、インターフェイス基本コマンドおよび通信コマンド共通属性データとともに、外部機器のデバイス毎に設けられたデバイス情報データに基づいて、外部機器とのデータのやりとりが実現され汎用性が高い。また、これら、通信コマンド共通属性データ、デバイス情報データを設けておけば、外部機器とのインターフェイスのための動作プログラムを、外部機器の機種への依存性を小さくして作成することができる。
【００１７】
(2)この発明の一側面によるプログラマブル表示器は、通信手段は、読み出しの場合は、デバイス情報データと通信コマンド共通属性データとフレームフォーマットとに基づいて受信したフレームを解析し、書き込みの場合は、デバイス情報データと通信コマンド共通属性データとに基づいてフレームを生成して外部機器に送信することを特徴としている。
【００１８】
したがって、外部機器の機種に拘わらず、データの送受信を行うことが可能となる。
【００１９】
(3)この発明の一側面によるプログラマブル表示器は、特定デバイスは、画面読み出しデバイステーブルまたは画面書き込みデバイステーブルに登録されたデバイスであることを特徴としている。
【００２０】
(4)この発明の一側面による作画装置は、プログラマブル表示器のプロジェクトデータを生成して出力する作画装置であって、外部機器との通信の基本処理を行うインターフェイス基本コマンドを記録した記録部と、外部機器との間でのデータの送受信を含む命令を備えて構成される通信プロトコルを、ユーザとの対話によって生成する対話生成手段と、外部機器のデバイスの種類毎に少なくともデータ桁数、アドレス桁数、種別コードを含むデバイス情報データおよび少なくともアドレスおよびデータのデータの形式を含む通信コマンド共通属性データをユーザが入力するための入力手段と、前記通信プロトコルとインターフェイス基本コマンドとデバイス情報データと通信コマンド共通属性データとを含むプロジェクトデータを出力する出力手段とを備えている。
【００２１】
したがって、外部機器の機種に依存するインターフェイス基本コマンド、通信プロトコルデータ、デバイス情報データ、通信コマンド共通属性データと、外部機器の機種依存性の小さい動作プログラムとに分離することによって、異なる機種の外部機器への対応が容易となる。すなわち、一旦、インターフェイス基本コマンド、デバイス情報データ、通信コマンド共通属性データを記憶しておけば、外部機器の機種依存性の小さい動作プログラムを生成することで簡単にインターフェイスを実現できる。また、インターフェイス基本コマンド、デバイス情報データ、通信コマンド共通属性データを用意すれば、作成した動作プログラムを他の機種の外部機器にもそのまま、あるいは、わずかな修正で用いることができる。
【００２２】
(a)この発明の一側面によるマン・マシン・インターフェイス機器は、プログラマブル・コントローラに接続され、プログラマブル・コントローラとの間でデータのやりとりを行うマン・マシン・インターフェイス機器であって、プログラマブル・コントローラのデバイス毎に少なくともデータ桁数を含むデバイス情報データを記録した記録部と、プログラマブル・コントローラの特定デバイスからのデータを受信する際には、当該特定デバイスに対応して記録されたデバイス情報に基づいて、データ内容を解釈する受信処理手段と、プログラマブル・コントローラの特定デバイスへデータを送信する際には、当該特定デバイスに対応して記録されたデバイス情報に基づいて、プログラマブル・コントローラに対する送信データを生成して送信する送信処理手段とを備えている。
【００２３】
(b)この発明に係るマン・マシン・インターフェイスプログラムは、プログラマブル・コントローラに接続され、プログラマブル・コントローラとの間でデータのやりとりを行うマン・マシン・インターフェイス機器をコンピュータによって実現するためのプログラムであって、プログラマブル・コントローラの特定デバイスからのデータを受信する際には、当該特定デバイスに対応して記録部に記録されたデバイス情報に基づいて、データ内容を解釈する受信処理手段と、プログラマブル・コントローラの特定デバイスへデータを送信する際には、当該特定デバイスに対応して記録部に記録されたデバイス情報に基づいて、プログラマブル・コントローラに対する送信データを生成して送信する送信処理手段とをコンピュータによって実現するためのマン・マシン・インターフェイスプログラムである。
【００２４】
(c)この発明に係るマン・マシン・インターフェイス機器は、記録部には、さらに、少なくともアドレスおよびデータのデータ形式を含む通信コマンド共通属性データが記録されており、前記受信処理手段は、各デバイスについて共通な通信コマンド共通属性データとフレームフォーマットとに基づいて、受信したフレームを解析し、前記特定デバイスに対応するデバイス情報に基づいて、受信したデータの内容を解析し、前記送信処理手段は、前記特定デバイスに対応するデバイス情報に基づいて、プログラマブル・コントローラが内容を理解できるデータを構築し、各デバイスについて共通な通信コマンド共通属性データとフレームフォーマットとに基づいて、送信すべきフレームを構築（作成）して送信することを特徴としている。
【００２５】
(d)この発明に係るマン・マシン・インターフェイス機器は、デバイス情報は、さらに、デバイスが書込用であるか読出用であるかを示す種別とデバイスのアドレス桁数を含むことを特徴としている。
【００２６】
(e)この発明に係るマン・マシン・インターフェイス機器は、通信コマンド共通属性は、さらに、アドレスおよびデータの格納方法とパリティチェック方法を含むことを特徴としている。
【００２７】
(f)この発明に係るデータ通信方法は、プログラマブル・コントローラとマン・マシン・インターフェイス機器との間のデータ通信方法であって、マン・マシン・インターフェイス機器に、プログラマブル・コントローラのデバイス毎に少なくともデータ桁数を含むデバイス情報データを記録し、マン・マシン・インターフェイス機器において、プログラマブル・コントローラの特定デバイスからのデータを受信する際には、当該特定デバイスに対応して記録されたデバイス情報に基づいて、データ内容を解釈し、マン・マシン・インターフェイス機器において、プログラマブル・コントローラの特定デバイスへデータを送信する際には、当該特定デバイスに対応して記録されたデバイス情報に基づいて、プログラマブル・コントローラに対する送信データを生成して送信することを特徴としている。
【００２８】
(g)この発明に係るデータ通信方法は、マン・マシン・インターフェイス機器がデバイスを有するプログラマブル・コントローラとデータ通信する方法であって、マン・マシン・インターフェイス機器に、プログラマブル・コントローラとの通信の基本処理を行うインターフェイス基本プログラムと、プログラマブル・コントローラのデバイス毎に設けられ少なくともデータ桁数を含むデバイス情報データと、少なくともアドレスおよびデータのデータ形式を含む通信コマンド共通属性データとを記録しておき、プログラマブル・コントローラの特定デバイスからのデータを受信する際には、前記インターフェイス基本プログラムが、通信相手先のデバイスに対応するデバイス情報データと、通信コマンド共通属性データとフレームフォーマットとに基づいて、プログラマブル・コントローラからのデータを解釈し、プログラマブル・コントローラの特定デバイスへデータを送信する際には、前記インターフェイス基本プログラムが、通信相手先のデバイスに対応するデバイス情報データと、通信コマンド共通属性データとフレームフォーマットとに基づいて、データを生成しプログラマブル・コントローラに送信することを特徴としている。
【００２９】
(h)この発明に係る作画装置は、プロジェクトデータを生成し、マン・マシン・インターフェイス機器に送信する作画装置であって、プログラマブル・コントローラとの通信の基本処理を行うインターフェイス基本コマンドを記録した記録部と、インターフェイス基本コマンドを含む命令を備えて構成される通信プロトコルを、ユーザとの対話によって生成する対話生成手段と、プログラマブル・コントローラのデバイス毎に少なくともデータ桁数を含むデバイス情報データおよび少なくともアドレスおよびデータのデータ形式を含む通信コマンド共通属性データをユーザが入力するための入力手段と、前記通信プロトコルとインターフェイス基本コマンドとデバイス情報データと通信コマンド共通属性データとを含むプロジェクトデータをマン・マシン・インターフェイス機器に送信する送信手段とを備えている。
【００３０】
この発明において「マン・マシン・インターフェイス機器」とは、機械と人間とのインターフェイスをとるための機器をいい、プログラマブル表示器などがこれに該当する。
【００３１】
「プログラマブル表示器」とは、少なくともＰＬＣなどの状態を確認することのできる装置をいい、さらにＰＬＣなどに指令を与えるようになっていてもよい。また、ＰＬＣだけでなく、ロボットなどを対象としてもよい。
【００３２】
「記録部」とは、少なくともデバイス情報データを記録することのできるものをいい、メモリ、ハードディスク、ＣＤ−ＲＯＭなどの形式を問わない。実施形態では、Ｐ−ＲＯＭ３０やメモリ２８がこれに該当する。
【００３３】
「通信手段」とは、少なくともＰＬＣからのデータを受信する事のできる手段をいう。実施形態では、図１２のステップＳ３等がこれに対応する。
【００３４】
「プログラム」とは、ＣＰＵにより直接実行可能なプログラムだけでなく、ソース形式のプログラム、圧縮処理がされたプログラム、暗号化されたプログラム等を含む概念である。
【発明を実施するための形態】
【００３５】
１．全体的構成
図１に、この発明の一実施形態によるマン・マシン・インターフェイス機器としてのプログラマブル表示器２の機能ブロック図を示す。送信処理手段８は、動作プログラムからの指令を受けて、動作プログラムによって、直接または間接的に指定されたＰＬＣ４（外部機器）のデバイスＤ1、Ｄ2・・・Ｄnのいずれかに対してデータを送信して書き込む。この際、送信処理手段８は、ＰＬＣ４とのデータやりとりのためのインターフェイス基本コマンド１２、共通属性データ１４、デバイス情報データ１６を参照して、指定されたデバイスＤ1、Ｄ2・・・Ｄnとの通信を行う。
【００３６】
ここで、インターフェイス基本コマンド１２は、ＰＬＣ４との通信のための基本となるコマンドである。具体的には、ＰＬＣ４のデバイスに対する書込リクエスト送信コマンド（デバイスに対してデータの書込を求める）、書込レスポンス受信コマンド（デバイスからの書込完了の連絡）、読出リクエスト送信コマンド（デバイスデータの読出を求める）、読出レスポンス受信コマンド（デバイスからのデータの受信）などのコマンドのフレームフォーマットを、インターフェイス基本コマンド１２として記録している。なお、このインターフェイス基本コマンド１２は、ＰＬＣの種類によって異なるものである。したがって、ＰＬＣの各機種毎に用意しておくことが好ましい。
【００３７】
共通属性データ１４は、上記のインターフェイス基本コマンド１２をＰＬＣ４との間でやりとりするために必要な属性である。アドレスやデータの形式（ＡＳＣＩＩコードかＢＩＮコードかなど）、アドレスやデータの格納方式（上位バイトからあるいは下位バイトから格納されているかなど）、パリティチェックの方式などについての属性が記述されている。この属性は、各コマンドに共通な属性であり、ＰＬＣの機種毎に異なるのが通常である。したがって、ＰＬＣの各機種毎に用意しておくことが好ましい。
【００３８】
デバイス情報データ１６は、デバイスとの通信を行う際の、アドレスの桁数、データの桁数などを記述したものである。このデバイス情報データ１６は、同じＰＬＣであってもデバイスの種類ごとに異なる。したがって、デバイスの種類毎に用意することが好ましい。
【００３９】
送信処理手段８は、上記のインターフェイス基本コマンド１２、共通属性データ１４、デバイス情報データ１６を参照して、指定されたデバイスＤ1、Ｄ2・・・Ｄnに対する書込を行う。
【００４０】
一方、受信処理手段６も同様に、上記のインターフェイス基本コマンド１２、共通属性データ１４、デバイス情報データ１６を参照して、指定されたデバイスＤ1、Ｄ2・・・Ｄnからのデータの読み出しを行う。読み出したデータは、動作プログラムに与える。
【００４１】
なお、この実施形態では、送信処理手段８と受信処理手段６によって通信手段が構成されている。
【００４２】
２．ハードウエア構成およびデータ
図２に、プログラマブル表示器２のハードウエア構成を示す。ＣＰＵ２０には、タッチスクリーン２２、入出力インターフェイス（Ｉ／Ｆ）２４、入力キー２６、メモリ２８、Ｐ−ＲＯＭ３０、入出力インターフェイス（Ｉ／Ｆ）３２が接続されている。入出力インターフェイス２４は、ＰＬＣ４との接続を行うものである。入出力インターフェイス３２は、インターフェイスプログラム作成装置である作画装置５（後述）との接続を行うものである。
【００４３】
タッチスクリーン２２は、ディスプレイの画面上に透明電極が配置され、表示するだけでなくユーザが入力可能に構成されている。入力キー２６は、ハードウエアとしての入力ボタンである。メモリ２８は、ＣＰＵ２０のワークエリアとして機能する。
【００４４】
プログラムＲＯＭ（Ｐ−ＲＯＭ）３０には、システム処理プログラム３４、画面データ３６、画面デバイステーブル３８、通信プロトコルプログラム４０、インターフェイス基本コマンド１２、通信コマンド共通属性データ１４（共通属性データ）、デバイス情報テーブル１６（デバイス情報データ）、動作プログラム４２が記録されている。なお、通信コマンド共通属性データ１４、デバイス情報テーブル１６は、それぞれ、図１の共通属性データ１４、デバイス情報データ１６に対応するものであるから、同一の符号を付している。
【００４５】
Ｐ−ＲＯＭ３０に記録された通信コマンド共通属性データ１４の例を、図３に示す。アドレス変換形式の「ＢＣＤ−＞ＡＳＣＩＩ」は、アドレスデータについて、プログラマブル表示器２ではＢＣＤコードを使用しており、ＰＬＣ４との通信ではＡＳＣＩＩコードを使用していることを示している。これにより、プログラマブル表示器２からＰＬＣ４にアドレスデータを送る場合には、ＡＳＣＩＩコードに変換して送信する必要があることがわかる。
【００４６】
また、ＰＬＣの種類によっては、アドレスの格納方法が上位バイトからであったり、下位バイトからであったりする。アドレス格納方法は、これを示している。
【００４７】
データ変換形式、データ格納方法についても同様に記録されている。
【００４８】
ＢＣＣ計算では、ＰＬＣ４との通信におけるパリティ値の計算方法を記述している。
【００４９】
Ｐ−ＲＯＭ３０に記録されたインターフェイス基本コマンド１２の例を、図４に示す。図４Ａは、デバイスからデータを読み出す際の読出要求コマンドである。先頭の定数部分は、このコマンドが読出要求コマンドであることを示すコードである。最後の定数部分は、このコマンドの終了を示している。「種別」「アドレス」「個数」「ＢＣＣ」の部分は、可変長の項目だけが設定されておりコマンドは完成していない。これは、実行時に、システム処理プログラム３４が、デバイス情報テーブル１６などの情報をもとに「種別」「アドレス」「個数」「ＢＣＣ」の部分の内容を生成して完成させて実行するからである。つまり、読出要求コマンドは、コマンドを生成するために用意されたスケルトン（コマンドの仮想的な骨格の構造（フレームフォーマット））である。なお、「個数」は、連続して読み出すアドレスの個数、「ＢＣＣ」はパリティを示している。
【００５０】
図４Ｂは、デバイスからデータを受信する際のデータ読出のコマンドである。デバイスからデータを読み出す際には、図４Ａの読出要求をデバイスに与え、これに応答してデバイスから図４Ｂのコマンドとして送られてくるデータを受信する。このデータ読出コマンドも読出要求コマンドと同じように、先頭部分にデータ読出コマンドであることを示すコードが記述されている。これに続いて、「データ」「ＢＣＣ」の項目が用意されている。システム処理プログラム３４は、デバイスから受信したデータを、このデータ読出コマンドやデバイス情報テーブル１６などにしたがって解釈して必要なデータを取得する。
【００５１】
図５Ａは、デバイスにデータを書き込む際の書込要求コマンドのスケルトンである。図５Ｂは、デバイスから送られてくるデータ書込完了コマンドを示している。
【００５２】
図４、図５以外にもコマンドが記録されているが、同様の形式であるのでここでは省略する。なお、各コマンドのコードや、これに続いてどのような項目（「種別」「アドレス」「個数」「ＢＣＣ」など）がどのような順序で続くかは、ＰＬＣによって異なる。したがって、使用するＰＬＣごとに、上記のインターフェイス基本コマンド１２をＰ−ＲＯＭ３０に記録しておき、選択して使用するようにすればよい。
【００５３】
Ｐ−ＲＯＭ３０に記録された通信プロトコルプログラム４０の例を、図６Ａに示す。図６Ａでは、デバイスからデータを読み出す際の一連の手順が示されている。システム処理プログラム３４は、まず、ステップ１において、読出要求コマンドをＰＬＣ４に向けて送信する。読出要求コマンドは、図４Ａのスケルトンを参照して生成する。ステップ２では、ＰＬＣ４からのデータ読出コマンドを受信してデバイスのデータを取得する。受信したデータ読出コマンドからデバイスのデータを抽出する際には、図４Ｂのデータ読出コマンドの情報を参照する。
【００５４】
このように、通信プロトコルは、インターフェイス基本コマンド１２を組み合わせて、読出や書込のための一連の処理を記述したもの(マクロ）である。なお、図６Ａでは、読出のための通信プロトコルだけを示しているが、書込その他の通信プロトコルも同じようにＰ−ＲＯＭ３０に記録されている。
【００５５】
Ｐ−ＲＯＭ３０に記録されたデバイス情報テーブル１６の例を、図７に示す。ＰＬＣ４の各デバイスは、その種類によって、データの記録の仕方などが異なっている。これを示したのが、デバイス情報テーブル１６である。具体的には、デバイスの種類毎に、アドレス桁数やデータ桁数などが記述されている。図７では、デバイスの種類として「データレジスタ」「内部リレー」のみが示されているが、実際には多くの種類のデバイスがある。
【００５６】
なお、図３〜図７では、各データを入力するための画面として示しているが、Ｐ−ＲＯＭ３０に記録されるデータも同様の形式となっている。
【００５７】
Ｐ−ＲＯＭ３０に記録された動作プログラム４２の例を、図８に示す。動作プログラム４２は、プログラマブル表示器２の表示画面の動作を決定するプログラムである。図８に示す動作プログラム４２は、図９に示すような動作をさせるためのものである。まず、最初に図９Ａの画面をタッチスクリーン２２に表示する。ユーザにより目標個数が入力キー２６から入力され、「次へ」のボタンが押されると、画面２に表示が変わる。画面２では、ＰＬＣ４から生産個数データを受けて、これを表示する。
【００５８】
図９のような画面表示を行うためには、図８の動作プログラム４２とは別に、図１０に示す画面データ３６、図１１に示す画面デバイステーブル３８が必要であり、これらもＰ−ＲＯＭ３０に記録されている。
【００５９】
３．システム処理プログラム３４の動作
図１２に、システム処理プログラムのフローチャートを示す。まず、ステップＳ１において、ＣＰＵ２０はシステムの初期化を行う。次に、動作プログラム４２（図８参照）の１行目の画面Start命令を取得し、画面Start命令によって指定された画面の画面データを読み出して、表示を行う（ステップＳ１）。ここで１行目は、”画面１Start”であるから、画面１についての画面データを読み出してタッチスクリーン２２に表示する。
【００６０】
図１０の画面１データでは、「目標個数」という文字を、Ｘ座標を１５０、Ｙ座標を１００の位置に表示する旨が指定されている。これにより、ＣＰＵ２０は、図９Ａのように「目標個数」を指定されたＸ座標、Ｙ座標に表示する（目標個数の文字の基本位置（左上隅など）をＸ座標、Ｙ座標にするように表示する）。さらに、画面１データの機能部品データの項目に示された機能部品を表示する。まず、「画面切換スイッチ」を表示する。これは、図９Ａの「次へ」のボタンとして表示されている。さらに、「数値入力器」を表示する。図９Ａでは、「目標個数」の右側に表示されている入力のための領域５０がこれに対応する。
【００６１】
次に、ＣＰＵ２０は、指定された画面の画面デバイステーブルの内容をＰ−ＲＯＭ３０から読み出す（ステップＳ３）。ここでは、画面１に対応するデバイステーブルである画面１デバイステーブル（図１１参照）が読み出される。ＣＰＵ２０は、画面１デバイステーブルの「読出デバイス」に記述されたＰＬＣ４のデバイスと通信し、当該デバイスの値を取得する。ここでは、画面１デバイステーブルの読出デバイスの欄において、アドレスが「７」としてデバイスが指定されているので、このアドレスをもとに通信を行う。なお、本発明の特徴である通信の方法については、後に詳述する。
【００６２】
次に、ＣＰＵ２０は、読み出したデバイスの値を、画面１デバイステーブルに記憶する（ステップＳ４）。読み出した値が「０」であれば、図１１のように値の欄に「０」が記憶される。
【００６３】
次に、ＣＰＵ２０は、ステップＳ３、Ｓ４にて取得した読出デバイスの値を、タッチスクリーン２２の指定の位置に表示する（ステップＳ５）。図１０の画面１データでは、読出デバイスの値の表示が指定されていないので、ここでは読出デバイスの値の表示はなされない。続いて、画面に設定された数値入力器（図９Ａの入力領域５０）に対して、入力された数値を画面１デバイステーブルの「値」欄に記憶する。たとえば、図９Ａの画面において入力キー２６によって入力領域５０に「３５２１」が入力されたとすると、図１１の「書込デバイス」の「値」欄に示すように、「３５２１」が記憶される。
【００６４】
次に、ＣＰＵ２０は、動作プログラム（図８）のマクロ命令を実行する。ここでは次の行の命令は、「SW1  JUMP  画面２」であってマクロ命令である。したがって、ステップＳ６に進んで、当該マクロ命令を実行する。「SW1  JUMP  画面２」は、画面切り換えスイッチＳＷ１（図９の「次へ」のボタン）が押されて「ＯＮ」であれば、画面２にジャンプすることを意味している。画面切り換えスイッチＳＷ１が押されておらず「ＯＦＦ」であれば、ステップＳ８の処理に進む。
【００６５】
ステップＳ８では、"画面１End”命令の処理が行われる。すなわち、画面１デバイステーブルの書込デバイスに記述されたデバイスについて、記憶された「値」をＰＬＣ４と通信して、そのデバイスに書き込む。ここでは、アドレス「７」として指定されたデバイスに対して値「３５２１」が送信されて記録される。このようにして、ステップＳ６においてユーザが入力したデータが、ＰＬＣ４のデバイスに送信されて記録される。
【００６６】
上記のようにして「画面１End」の処理を終えると、ＣＰＵ２０は、ステップＳ２以下を再び実行する。
【００６７】
ユーザによって、画面切り換えスイッチＳＷ１が押されると、画面切り換えスイッチＳＷ１の値が、「ＯＦＦ」から「ＯＮ」に変わる（なおＳＷ１の値は、メモリ２８に記憶される）。画面切り換えスイッチＳＷ１の値が「ＯＮ」に変わると、ＣＰＵ２０は、動作プログラムの２行目から、４行目にジャンプする。これにより、画面２についての処理がステップＳ２以下で実行される。
【００６８】
画面２についての処理が実行されると、ＣＰＵ２０は、画面２デバイステーブル（図１１）、画面２データ（図１０）を参照して、図９Ｂに示すような画面をタッチスクリーン２２上に表示する。図９Ｂの画面２において、上から順に、ＰＬＣ４の数値表示器であるレジスタＤ１、Ｄ２、Ｄ３、Ｄ４の値が読み出されてい表示されている。数値表示器Ｄ１は、数値入力器Ｄ７に書き込まれた値（目標個数）がそのままコピーされたものとなっている。数値表示器Ｄ２は、ＰＬＣ４に接続されたセンサの出力などに基づいて生産個数を記録するデバイスである。数値表示器Ｄ３は、ＰＬＣ４に接続されたセンサの出力などに基づいて不良個数を記録するデバイスである。数値表示器Ｄ４は、レジスタＤ１の値からレジスタＤ２およびレジスタＤ３の値を減じた値が記録されているレジスタである。
【００６９】
上記のようにＰＬＣ４の各レジスタＤ１、Ｄ２、Ｄ３、Ｄ４の値が読み出されて、タッチスクリーン２２に表示される。これにより、ユーザは、生産の進行状況を知ることができる。
【００７０】
上記のように、ユーザは、動作プログラム４２、画面データ３６、画面デバイステーブル３８を用意することによって、ＰＬＣ４のデバイス（上記レジスタなど）の値をタッチスクリーン２２に表示し、タッチスクリーン２２からＰＬＣ４の動作を制御したりすることができる。
【００７１】
４．通信処理の詳細
上記の各処理を行うためには、ＣＰＵ２０は、ＰＬＣ４との通信を行う必要がある。たとえば、ステップＳ３においては、ＰＬＣ４と通信を行い、画面デバイステーブル３８に記述された各読出デバイスの値を取得する必要がある。また、ステップＳ６においては、ＰＬＣ４と通信を行い、画面デバイステーブル３８に記述された各書込デバイスに値を記録する必要がある。以下、本実施形態の特徴であるこれら通信処理の詳細を説明する。
【００７２】
まず、ステップＳ３におけるＰＬＣ４との通信処理（デバイスのデータの読み出し）を説明する。ステップＳ３において、ＣＰＵ２０は、ＰＬＣ４と通信を行い、画面デバイステーブル３８に記載されたＰＬＣ４の読出デバイスからデータを取得する。たとえば、図１１の画面１デバイステーブルであれば、ＰＬＣ４のアドレス「７」に割り当てられているレジスタからデータを読み出す。画面２デバイステーブルであれば、アドレス「１」「２」「３」「４」に割り当てられているレジスタからデータを読み出す。
【００７３】
上記の読み出しの際、ＣＰＵ２０は、まず図６Ａに示す通信プロトコル４０（デバイス読出）を、Ｐ−ＲＯＭ３０から読み出す。そして、読み出したデバイス読出通信プロトコルを先頭から実行する。図６Ａに示されているように、デバイス読出通信プロトコルにおいては、まず、ＣＰＵ２０は、ＰＬＣ４に対してデバイスを指定して読出要求を送信し、続いてＰＬＣ４の当該デバイスからデータを受信する。
【００７４】
ＣＰＵ２０は、上記読出要求およびデータ読出の際には、Ｐ−ＲＯＭ３０に記録されたインターフェイス基本コマンドのうち、図４に示す読出要求コマンド、データ読出コマンドを取得する。ただし、図４に記憶されている読出要求コマンドにおいて、種別、アドレス等は空欄となっており、スケルトンとなっている。
【００７５】
次に、読み出そうとしているデバイスの種別を画面デバイステーブル３８から取得する。たとえば、画面１デバイステーブルであれば、読出デバイスの欄に種別コード「４４」のデバイスがあることが示されている。したがって、ＣＰＵ２０は、図７のデバイス情報テーブルから、種別コード「４４」であるデバイスについての、アドレス桁数やデータ桁数などを取得する。そして、取得した読出要求コマンドのスケルトンの空欄を、これらの情報を用いて完成する。「種別」の欄には「４４」を記述し、「アドレス」の欄には「７」を記述し、「個数」の欄には「１」（画面１デバイステーブルの「点数」）を記述する。なお、ここで、個数とは、当該画面において指定されている読出デバイス（または書込デバイス）の数である。
【００７６】
そして、この際に、デバイス情報テーブル（図７）の情報を参照し、アドレスの桁数、個数の桁数にしたがって数値を決定する。具体的には、「アドレス」の欄には、４桁にて「７」を記述することになるので「０００７」が記述されることになる。「個数」の欄には、２桁にて「１」を記述することになるので「０１」が記述されることになる。
【００７７】
以上のようにして、ＣＰＵ２０は、通信コマンド共通属性を参照して、アドレス変換形式として示された形式に従って、アドレスをＡＳＣＩＩコードに変換する。つまり、アドレス「０００７」が「30 30 30 37」に変換されることになる。ここでは、読出要求コマンドとして、「05 30 30 30 52 44 30 30 30 37 30 31 -- 0D」（16進数表記）が完成する。なお、ここで、「４桁」は「４バイト」を意味している。また、上記コマンドにおいて、「--」の部分はパリティチェックのＢＣＣが記述されるべき部分である。そこで、ＣＰＵ２０は、図３の通信コマンド共通属性を参照して、ＢＣＣ計算の方法を取得し、ＢＣＣを計算して「--」の部分に記述する。たとえば、ＢＣＣが「25」であればこれを記述して「05 30 30 30 52 44 30  30 30 37 30 31 32 35 0D」というコマンドが完成する。
【００７８】
さらに、ＣＰＵ２０はこれをＰＬＣ４に送信する際に、通信コマンド共通属性を参照して、このコマンドをＡＳＣＩＩコードに変換する。また、アドレス格納方法として示された方法に従って、アドレスの上位桁と下位桁を入れ替える。ここでは、もともと上位バイトからアドレスが示されているので何も変更しない。しかし、通信コマンド共通属性において「下位バイトから」と示されていれば、アドレスの部分の順序を逆にして「05 30 30 30 52 44 37 30 30 30 30 31 32 35 0D」とする。このようにして、完成した読出要求コマンドをＰＬＣ４の形式に変換して送信する。
【００７９】
上記のようにしてＰＬＣ４に対して読出要求コマンドを送信すると、ＰＬＣ４はこれに応答して、上記読出要求コマンドによって指定したデバイスのデータをデータ読出コマンドとして返信してくる。たとえば、「06 30 30 30 30 30 30 30 33 36 0D」という様なデータ読出コマンドが返送されてくる。ＣＰＵ２０は、図６Ａの通信プロトコルを参照して、読出要求コマンドに続いてデータ読出コマンドが返信されてくることを知る。さらに、図４Ｂのデータ読出コマンドを参照して、その内容を解釈する。
【００８０】
すなわち、図４Ｂに示すように、最初の４桁（４バイト）「06 30 30 30」はデータ読出コマンドを示す定数である。これに続いて、データが送信されることを図４Ｂから知ることができる。ただし、これだけでは、データの桁数が不明である。そこで、画面１デバイステーブル（図１１）を参照して、読み出し対象となっているデバイスの種別「４４」を取得し、図７のデバイス情報テーブルから当該種別のデバイスについてのデータ桁数「４桁」を取得する。これにより、ＣＰＵ２０は、データの桁数が４桁であることを知る。したがって、「06 30 30 30」に続く４桁「30 30 30 30」をデータとして取得する。
【００８１】
この際、ＣＰＵ２０は、図３の通信コマンド共通属性を参照して、データの格納方法が「上位バイトから」であるか「下位バイトから」：であるかを判断する。「下位バイトから」となっていれば、上位バイトと下位バイトとを入れ換える。ここでは、「上位バイトから」であるから、データの並び替えは行わない。
【００８２】
続いて、ＣＰＵ２０は、通信コマンド共通属性を参照しＢＣＣの計算を行う。ＢＣＣの桁数は「２桁」となっているので、計算したＢＣＣを２桁で表現し、データ「00 00」に続く２桁「33 36」と比べて、エラーのチェックを行う。一致しない場合には、ＰＬＣ４に対してデータの再送を要求する。ＢＣＣが正しければ、取得したデータを、画面１デバイステーブルに記憶する（図１２のステップＳ４）。
【００８３】
上記のようにしてＰＬＣ４との通信が行われる。なお、上記では画面１についての処理を説明したが、他の画面についても同様である。また、上記では、データの読み出しについて説明したが、ＰＬＣ４へのデータの書込についても同様である。つまり、図６Ｂに示すような書込のための通信プロトコルがＰ−ＲＯＭ３０に記録されている。デバイスへの書込処理においては、デバイス、データなどを指定して書込要求をＰＬＣ４に送信する。書込が完了すると、ＰＬＣ４は書込完了を返信してくる。
【００８４】
書込要求は、図５Ａに示すようなコマンドとして記録されている。また、書込完了は図５Ｂに示すようなコマンドとして記録されている。ＣＰＵ２０は、上記と同じようにして、デバイス情報テーブル１６や通信コマンド共通属性１４などを参照して、データを送信し受信する。
【００８５】
この実施形態によれば、インターフェイス基本コマンド（図４、図５）とデバイス情報テーブル１６を、ＰＬＣ４の機種に合わせて用意することで、各種のＰＬＣ４に対応することができる。
【００８６】
５．プロジェクトデータの作成
上記では、Ｐ−ＲＯＭ３０に画面データ３６、画面デバイステーブル３８、通信プロトコルプログラム４０、インターフェイス基本コマンド１２、通信コマンド共通属性１４、デバイス情報テーブル１６、動作プログラム４２（以上をまとめてプロジェクトデータという）を記録した後の動作を説明した。以下では、このプロジェクトデータを作画装置５（図２参照）によって作成する処理を説明する。作画装置は、いわゆるパーソナルコンピュータであり、ＣＰＵ、ハードディスク、ディスプレイ、キーボード、マウス（図示せず）などを備えている。
【００８７】
図１３に、ハードディスクに記録されたプロジェクトデータ生成プログラムのフローチャートを示す。プロジェクトデータ生成プログラムを立ち上げて、初期メニューから、たとえば「インターフェイス基本コマンドの作成」を選択したとする。
【００８８】
ＣＰＵは、まず、インターフェイス基本コマンドを入力するための画面（図５Ａ）をディスプレイに表示する。そのプルダウンボタン４０をマウスなどでクリックすると、書込要求送信、書込完了受信、読出要求送信、データ読出受信などのコマンド名が一覧表示される。ユーザは、入力したいコマンドを選択する。たとえば、書込要求送信を選択すると、図５Ａのような画面が表示される。ただし、図における「05 30 30 30 57」「0D」などは最初は空欄として表示される。ユーザは、使用したいＰＬＣ４のマニュアルなどを見て、書込要求送信に対するコマンドをキーボードなどから入力する（図１３のステップＳ２１）。
【００８９】
完了ボタン４２がクリックされると、ＣＰＵは、ステップＳ２３に進んで、入力された書込要求コマンドをハードディスクに記録する。このようにして、書込要求送信のコマンドを設定することができる。他のコマンドについても同様の処理によって設定することができる。
【００９０】
また、通信プロトコル、通信コマンド共通属性、デバイス情報テーブルについでも同様の処理によって設定してハードディスクに記録することができる。通信プロトコル設定のための画面を図６に、通信コマンド共通属性設定のための画面を図３に、デバイス情報テーブル設定のための画面を図７に示す。
【００９１】
このように、ユーザは、通信コマンド共通属性、インターフェイス基本コマンド、通信プロトコル、デバイス情報テーブルを、所望のＰＬＣに合致するように設定することができる。したがってこれらを一旦設定すれば、ユーザは、動作プログラム(図８）、画面データ（図１０）、画面デバイステーブル（図１１）を作成する際に、ＰＬＣに固有の通信プロトコルなどを意識する必要がなく、プログラマブル表示器の制御プログラムの作成が容易である。
【００９２】
上記のようにして作成されたプロジェクトデータは、Ｉ／Ｆ３２（図２）を介して、プログラマブル表示器に転送される。
【００９３】
なお、この実施形態では、通信コマンド共通属性、インターフェイス基本コマンド、通信プロトコル、デバイス情報テーブルをユーザが入力するようにしている。しかし、予め各種のＰＬＣについてこれらをハードディスクに記録しておき、選択して使用できるようにしてもよい。
【００９４】
６．その他
上記実施形態においては、外部機器としてＰＬＣを用いているが、ロボットなどを外部機器としてもよい。
【００９５】
上記実施形態では、各手段をプログラムによって実現しているが、その一部または全部をハードウエアのみによって実現するようにしてもよい。
【図面の簡単な説明】
【００９６】
【図１】この発明の一実施形態によるプログラマブル表示器の機能ブロック図である。
【図２】プログラマブル表示器のハードウエア構成である。
【図３】通信コマンド共通属性の例である。
【図４】インターフェイス基本コマンドの例である。
【図５】インターフェイス基本コマンドの例である。
【図６】通信プロトコルの例である。
【図７】デバイス情報テーブルの例である。
【図８】動作プログラムの例である。
【図９】表示画面の例である。
【図１０】画面データの例である。
【図１１】画面デバイステーブルの例である。
【図１２】システム処理プログラムのフローチャートである。
【図１３】生成プログラムのフローチャートである。
【符号の説明】
【００９７】
２・・・プログラマブル表示器
４・・・ＰＬＣ
６・・・受信処理手段
８・・・送信処理手段
１０・・・記録部
１２・・・インターフェイス基本コマンド
１４・・・共通属性データ
１６・・・デバイス情報データ
【図１】
2008071033.tif 000003
【図２】
2008071033.tif 000004
【図３】
2008071033.tif 000005
【図４】
2008071033.tif 000006
【図５】
2008071033.tif 000007
【図６】
2008071033.tif 000008
【図７】
2008071033.tif 000009
【図８】
2008071033.tif 000010
【図９】
2008071033.tif 000011
【図１０】
2008071033.tif 000012
【図１１】
2008071033.tif 000013
【図１２】
2008071033.tif 000014
【図１３】
2008071033.tif 000015