(57)【要約】【課題】ネットワークに接続されている任意の機器にメッセージを表示させることができ、しかも、メッセージの送信条件やメッセージの内容および送信先を柔軟かつ少ない手間で変更可能なプログラマブル・ロジック・コントローラを実現する。【解決手段】プログラマブル・ロジック・コントローラとして動作するデバイス制御部３３は、制御用ファイルメモリ３２の制御プログラムを周期的に実行して、デバイス２ａを制御している。当該デバイス制御部３３は、ＮＥＴ命令を実行できるように構成されており、次に実行すべき命令がＮＥＴ命令であった場合、ＬＡＮ・ＩＦ部２２へ指示して、ＮＥＴ命令により指定された送信先へ、ＮＥＴ命令により指定されたメッセージを送信させる。したがって、制御プログラム内に記述可能な任意の条件が成立したときに、上記メッセージを送信するようにプログラムできる。【選択図】  図１
2004302880.tif 000002
【特許請求の範囲】
【請求項１】
制御プログラムを記憶する記憶手段と、当該制御プログラム中の各命令を実行して、デバイスを制御する制御手段とを有するプログラマブル・ロジック・コントローラにおいて、
ネットワークと接続するための通信手段を備え、
上記記憶手段は、ネットワーク通信用の命令を含む制御プログラムを記憶でき、当該ネットワーク通信用の命令には、メッセージを特定するための第１オペランドと、送信先を特定するための第２オペランドとが含まれていると共に、
上記制御手段は、次に実行すべき命令がネットワーク通信用の命令である場合、上記通信手段へ指示して、当該命令の第２オペランドによって特定された送信先へ、当該命令の第１オペランドによって特定されたメッセージを送信させて、当該送信先にメッセージを表示させることを特徴とするプログラマブル・ロジック・コントローラ。
【請求項２】
上記第１および第２オペランドの少なくとも一方は、メッセージまたは送信先を直接指定するオペランドであり、
上記制御手段は、第１および第２オペランドのうち、メッセージまたは送信先が直接指定されているオペランドの内容をメッセージまたは送信先と判断することを特徴とする請求項１記載のプログラマブル・ロジック・コントローラ。
【請求項３】
上記第１および第２オペランドの少なくとも一方は、デバイスを示すオペランドであり、
上記制御手段は、当該デバイスの内容をメッセージまたは送信先と判断することを特徴とする請求項１記載のプログラマブル・ロジック・コントローラ。
【請求項４】
請求項１記載のプログラマブル・ロジック・コントローラの各手段として、コンピュータを動作させるプログラム。
【請求項５】
請求項４記載のプログラムが記録された記録媒体。
【請求項６】
プログラマブル・ロジック・コントローラの制御プログラムを編集するための編集手段を有するプログラムエディタ装置において、
上記編集手段が制御プログラムに追加可能な命令には、上記プログラマブル・ロジック・コントローラが実行した場合、当該命令によって指定された送信先へ、当該命令によって指定されたメッセージを送信するネットワーク通信用の命令が含まれており、
上記編集手段は、ネットワーク通信用の命令への編集指示を受け付けた場合、ネットワーク通信用の命令のうち、メッセージを特定するための第１オペランドおよび送信先を特定するための第２オペランドを編集指示に応じて変更することを特徴とするプログラムエディタ装置。
【請求項７】
上記編集手段は、上記ネットワーク通信用の命令の第１または第２オペランドとして、デバイスを特定するための情報が入力された場合、上記ネットワーク通信用の命令に、当該オペランドが間接指定であることを示すフラグを付加し、当該ネットワーク通信用の命令を実行するプログラマブル・ロジック・コントローラに当該デバイスの内容によってメッセージまたは送信先を特定させることを特徴とする請求項６記載のプログラムエディタ装置。
【請求項８】
請求項６記載の各手段としてコンピュータを動作させるプログラム。
【請求項９】
請求項８記載のプログラムが記録された記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プログラマブル・ロジック・コントローラ、プログラムエディタ装置、それらのプログラムおよび記録媒体に関するものである。
【０００２】
【従来の技術】
従来より、プログラマブル・ロジック・コントローラ（以下、ＰＬＣと略称する）あるいはプログラマブル・コントローラと称される制御装置は、制御システムのターゲットシステムを制御するために広く使用されている。当該ＰＬＣには、制御プログラムが予め格納されており、ＰＬＣは、当該制御プログラムに従って、デバイスを制御する。
【０００３】
ここで、上記制御プログラムは、後述する特許文献１などに開示されているラダー図作成装置のようなプログラムエディタ装置によって作成され、上記ＰＬＣに格納される。したがって、プログラムエディタ装置によってターゲットシステムに適した制御プログラムを作成し、その制御プログラムをＰＬＣに格納することによって、ターゲットシステムに合ったシーケンス制御を簡単に実施できる。
【０００４】
また、近年では、ＰＬＣの機能を兼ね備え、デバイスを直接制御可能なプログラマブル表示器も存在している。この場合は、上記プログラマブル表示器に上記制御プログラムが格納され、プログラマブル表示器において、ＰＬＣ機能を実施するブロックは、当該制御プログラムに従ってデバイスを制御する（後述の特許文献２参照）。
【０００５】
一方、ＰＬＣの情報は、日報や月報を作成したり、分析するなどの管理のために、上位コンピュータによって集約され、上位コンピュータによって管理されていることが多い。
【０００６】
したがって、例えば、後述の特許文献３などのように、効率よくデータを上位コンピュータに転送するため、以下の構成、すなわち、ＰＬＣと上位コンピュータとの間にコントローラを配置し、コントローラが各ＰＬＣの情報を収集すると共に、予め定められた送信条件に合致するか否かを監視し、合致した場合、当該コントローラが収集したＰＬＣの情報を上位コンピュータに送信する構成も提案されている。
【０００７】
【特許文献１】
特開２００２−２２９６１３号公報（公開日：２００２年８月１６日）
【０００８】
【特許文献２】
特開２００２−９１５１３号公報（公開日：２００２年３月２９日）
【０００９】
【特許文献３】
特開２００１−２９６９１１号公報（公開日：２００１年１０月２６日）
【００１０】
【発明が解決しようとする課題】
しかしながら、上記従来の構成は、基本的に、予め設定された上位コンピュータにデータを集約する構成であり、ネットワークに接続された機器にメッセージを表示させる用途など、メッセージの送信条件や送信先、メッセージの内容を、プログラマブル・ロジック・コントローラの状態に応じて柔軟に設定することが望まれる用途に使用しようとすると、設定に手間がかかるという問題を生ずる。
【００１１】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、ネットワークに接続されている任意の機器にメッセージを表示させることができ、しかも、メッセージの送信条件やメッセージの内容および送信先を柔軟かつ少ない手間で変更可能なプログラマブル・ロジック・コントローラ、および、当該プログラマブル・ロジック・コントローラの制御プログラムを編集可能なプログラムエディタ装置を実現することにある。
【００１２】
【課題を解決するための手段】
請求項１記載の発明に係るプログラマブル・ロジック・コントローラは、上記課題を解決するために、制御プログラムを記憶する記憶手段と、当該制御プログラム中の各命令を実行して、デバイスを制御する制御手段とを有するプログラマブル・ロジック・コントローラにおいて、ネットワークと接続するための通信手段を備え、上記記憶手段は、ネットワーク通信用の命令を含む制御プログラムを記憶でき、当該ネットワーク通信用の命令には、メッセージを特定するための第１オペランドと、送信先を特定するための第２オペランドとが含まれていると共に、上記制御手段は、次に実行すべき命令がネットワーク通信用の命令である場合、上記通信手段へ指示して、当該命令の第２オペランドによって特定された送信先へ、当該命令の第１オペランドによって特定されたメッセージを送信させて、当該送信先にメッセージを表示させることを特徴としている。
【００１３】
上記構成において、制御手段は、次に実行すべき命令がネットワーク通信用の命令である場合、上記通信手段へ指示して、当該命令の第２オペランドによって特定された送信先へ、当該命令の第１オペランドによって特定されたメッセージを送信させて、当該送信先にメッセージを表示させる。なお、上記両オペランドは、送信先またはメッセージを直接示していてもよいし、送信先またはメッセージを取得するために参照すべきデバイスを示すことによって、間接的に送信先またはメッセージを指定してもよい。
【００１４】
当該構成では、プログラマブル・ロジック・コントローラが、上記ネットワーク通信用の命令を含む制御プログラムを実行できるので、プログラマブル・ロジック・コントローラの制御プログラムをプログラムすることによって、所望の送信先に対する所望のメッセージの送信をプログラムできる。したがって、プログラマブル・ロジック・コントローラの制御プログラムを作成するときと同じ開発環境を用いて、しかも、制御プログラム内に記述可能な任意の条件が成立したときに、上記メッセージを送信するようにプログラムできる。
【００１５】
この結果、ネットワークに接続されている任意の機器にメッセージを表示させることができ、しかも、メッセージの送信条件やメッセージの内容および送信先を柔軟かつ少ない手間で変更可能なプログラマブル・ロジック・コントローラを実現できる。
【００１６】
また、請求項２記載の発明に係るプログラマブル・ロジック・コントローラは、請求項１記載の発明の構成に加えて、上記第１および第２オペランドの少なくとも一方は、メッセージまたは送信先を直接指定するオペランドであり、上記制御手段は、第１および第２オペランドのうち、メッセージまたは送信先が直接指定されているオペランドの内容をメッセージまたは送信先と判断することを特徴としている。
【００１７】
当該構成では、制御プログラムに含まれるネットワーク通信用の命令の第１および第２オペランドの少なくとも一方として、メッセージまたは送信先を記述することによって、所望のメッセージまたは送信先をプログラムできる。したがって、ネットワークに接続されている任意の機器にメッセージを表示させることができ、しかも、メッセージの送信条件やメッセージの内容および送信先を柔軟かつ少ない手間で変更可能なプログラマブル・ロジック・コントローラを実現できる。
【００１８】
また、請求項３記載の発明に係るプログラマブル・ロジック・コントローラは、請求項１記載の発明の構成に加えて、上記第１および第２オペランドの少なくとも一方は、デバイスを示すオペランドであり、上記制御手段は、当該デバイスの内容をメッセージまたは送信先と判断することを特徴としている。
【００１９】
当該構成では、制御プログラムに含まれるネットワーク通信用の命令の第１および第２オペランドの少なくとも一方として、メッセージまたは送信先を示すデバイスを記述することによって、所望のメッセージまたは送信先をプログラムできる。また、メッセージまたは送信先が間接指定されているので、デバイスの内容を変更することによって、メッセージまたは送信先の内容を動的に変更できる。したがって、ネットワークに接続されている任意の機器にメッセージを表示させることができ、しかも、メッセージの送信条件やメッセージの内容および送信先を柔軟かつ少ない手間で変更可能なプログラマブル・ロジック・コントローラを実現できる。
【００２０】
ところで、上記プログラマブル・ロジック・コントローラは、ハードウェアで実現してもよいし、プログラムをコンピュータに実行させて実現してもよい。具体的には、請求項４の発明に係るプログラムは、請求項１記載の各手段としてコンピュータを動作させるプログラムであり、請求項５の発明に係る記録媒体には、請求項４記載のプログラムが記録されている。
【００２１】
これらのプログラムが上記コンピュータで実行されると、当該コンピュータは、請求項１記載のプログラマブル・ロジック・コントローラとして動作する。したがって、請求項１と同様、ネットワークに接続されている任意の機器にメッセージを表示させることができ、しかも、メッセージの送信条件やメッセージの内容および送信先を柔軟かつ少ない手間で変更可能なプログラマブル・ロジック・コントローラを実現できる。
【００２２】
一方、請求項６記載の発明に係るプログラムエディタ装置は、上記課題を解決するために、プログラマブル・ロジック・コントローラの制御プログラムを編集するための編集手段を有するプログラムエディタ装置において、上記編集手段が制御プログラムに追加可能な命令には、上記プログラマブル・ロジック・コントローラが実行した場合、当該命令によって指定された送信先へ、当該命令によって指定されたメッセージを送信するネットワーク通信用の命令が含まれており、上記編集手段は、ネットワーク通信用の命令への編集指示を受け付けた場合、ネットワーク通信用の命令のうち、メッセージを特定するための第１オペランドおよび送信先を特定するための第２オペランドを編集指示に応じて変更することを特徴としている。
【００２３】
当該構成において、編集手段は、ネットワーク通信用の命令への編集指示を受け付けた場合、ネットワーク通信用の命令のうち、メッセージを特定するための第１オペランドおよび送信先を特定するための第２オペランドを編集指示に応じて変更する。これにより、ネットワーク通信用の命令を含む制御プログラムを作成できる。
【００２４】
ここで、ネットワーク通信用の命令が上記プログラマブル・ロジック・コントローラによって実行されると、当該命令によって指定された送信先へ、当該命令によって指定されたメッセージを送信する。したがって、当該プログラムエディタ装置によってプログラマブル・ロジック・コントローラの制御プログラムをプログラムすることにより、所望の送信先に対する所望のメッセージの送信をプログラムできる。これにより、プログラマブル・ロジック・コントローラの制御プログラムを作成するときと同じ開発環境を用いて、しかも、制御プログラム内に記述可能な任意の条件が成立したときに、上記メッセージを送信するようにプログラムできる。
【００２５】
この結果、ネットワークに接続されている任意の機器にメッセージを表示させるプログラマブル・ロジック・コントローラがメッセージを送信する際の送信条件、メッセージの内容および送信先を、柔軟かつ少ない手間で変更できる。
【００２６】
また、請求項７記載の発明に係るプログラムエディタ装置は、請求項６記載の発明の構成において、上記編集手段は、上記ネットワーク通信用の命令の第１または第２オペランドとして、デバイスを特定するための情報が入力された場合、上記ネットワーク通信用の命令に、当該オペランドが間接指定であることを示すフラグを付加し、当該ネットワーク通信用の命令を実行するプログラマブル・ロジック・コントローラに当該デバイスの内容によってメッセージまたは送信先を特定させることを特徴としている。
【００２７】
当該構成において、編集手段は、上記ネットワーク通信用の命令の第１または第２オペランドとして、デバイスを特定するための情報が入力された場合、上記ネットワーク通信用の命令に、当該オペランドが間接指定であることを示すフラグを付加し、当該ネットワーク通信用の命令を実行するプログラマブル・ロジック・コントローラに当該デバイスの内容によってメッセージまたは送信先を特定させる。したがって、デバイスの内容を変更することによって、プログラマブル・ロジック・コントローラは、メッセージまたは送信先の内容を動的に変更できる。これにより、ネットワークに接続されている任意の機器にメッセージを表示させるプログラマブル・ロジック・コントローラがメッセージを送信する際の送信条件、メッセージの内容および送信先を、柔軟かつ少ない手間で変更できる。
【００２８】
ここで、上記プログラムエディタ装置もハードウェアで実現してもよいし、プログラムをコンピュータに実行させて実現してもよい。具体的には、請求項８の発明に係るプログラムは、請求項６記載の各手段としてコンピュータを動作させるプログラムであり、請求項９の発明に係る記録媒体には、請求項８記載のプログラムが記録されている。
【００２９】
これらのプログラムが上記コンピュータで実行されると、当該コンピュータは、請求項６記載のプログラムエディタ装置として動作する。したがって、請求項６と同様、ネットワークに接続されている任意の機器にメッセージを表示させるプログラマブル・ロジック・コントローラがメッセージを送信する際の送信条件、メッセージの内容および送信先を、柔軟かつ少ない手間で変更できる。
【００３０】
【発明の実施の形態】
本発明の一実施形態について図１ないし図１０に基づいて説明すると以下の通りである。すなわち、本実施形態に係る制御システム１は、ネットワークに接続されている任意の機器にメッセージを表示させるプログラマブル・ロジック・コントローラがメッセージを送信する際の送信条件、メッセージの内容および送信先を、柔軟かつ少ない手間で変更できるシステムであって、図１に示すように、例えば、ベルトコンベアー式の自動組付機など、ターゲットシステム２のデバイス２ａを制御するために用いられている。
【００３１】
以下では、メッセージを送信するための構成について説明する前に、制御システム全体の概略構成および動作について説明する。すなわち、上記制御システム１には、上記デバイス２ａを制御する制御装置としてのＰＬＣ１１と、多くの場合、制御対象近傍に配されると共に、制御システム１のＨＭＩとして、デバイス２ａの状態を表示し、オペレータによるデバイス２ａへの操作を受け付けるプログラマブル表示器１２とを備えている。また、本実施形態に係るプログラマブル表示器１２は、詳細は後述するように、ＰＬＣとしての機能も備えており、それぞれに対応するＰＬＣ１１だけではなく、自らが制御するデバイス２ａにも直接接続されている。
【００３２】
さらに、本実施形態に係る制御システム１では、各プログラマブル表示器１２は、イーサネット（登録商標）などのＬＡＮ（ローカルエリアネットワーク）１３によって互いに接続されている。また、上記ＬＡＮ１３には、多くの場合、プログラマブル表示器１２よりも離れた場所から、制御システム１全体を管理する制御用ホストコンピュータ１４が接続されている。なお、上記プログラマブル表示器１２が特許請求の範囲に記載のプログラマブル・ロジック・コントローラに対応し、ＬＡＮ１３および制御用ホストコンピュータ１４がネットワークおよびプログラムエディタ装置に対応している。
【００３３】
さらに、本実施形態に係る制御システム１では、送信先としてのＯＡ（Ｏｆｆｉｃｅ  Ａｕｔｏｍａｔｉｏｎ）コンピュータ１５がＬＡＮ１３に接続されている。当該ＯＡコンピュータ１５は、例えば、Ｗｉｎｄｏｗｓ（登録商標）２０００をＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）として採用した汎用のコンピュータであって、ＬＡＮ１３を介して、ＴＣＰ／ＩＰプロトコルにより通信できる。
【００３４】
また、上記ＯＡコンピュータ１５には、ＬＡＮ１３と通信するためのＬＡＮ・ＩＦ部５１と、各種ＯＡ処理を行うアプリケーション処理部５２とに加えて、ＬＡＮ・ＩＦ部５１がＬＡＮ１３からメッセージを受け取った場合、そのメッセージを表示するメッセージ表示部５３が設けられている。本実施形態では、上記メッセージ表示部５３は、ＯＳの一機能によって実現されており、上記メッセージをポップアップ表示して、ユーザに提示できる。
【００３５】
また、上記各プログラマブル表示器１２は、シリアルケーブルなどの通信路を介して、それぞれに対応するＰＬＣ１１と接続されている。また、図１では、説明の便宜上、ＬＡＮ１３にプログラマブル表示器１２が２台接続され、各プログラマブル表示器１２には、ＰＬＣ１１およびデバイス２ａがそれぞれ１台ずつ接続されると共に、各ＰＬＣ１１にデバイス２ａが１台接続されている場合を例示しているが、当然ながら、それぞれの接続台数は任意に設定できる。
【００３６】
また、デバイスは、デバイスアドレスにより特定可能で、しかも、状態を取得したり、制御（変更）できるものであれば、例えば、デバイス２ａ自体であってもよいし、例えば、ＰＬＣ１１やプログラマブル表示器１２の記憶装置など、制御システム１に設けられた記憶装置の一領域を示していてもよい。
【００３７】
ここで、上記制御システム１では、制御システム１に必須の構成であり、しかも、ＨＭＩとして動作するため、演算能力に余力のあるプログラマブル表示器１２が通信の大半を処理するように構成されている。さらに、各プログラマブル表示器１２は、自らに接続されているＰＬＣ１１の機種に固有の専用プロトコルと、ＬＡＮ１３での共通プロトコルとを変換して、他のプログラマブル表示器１２や制御用ホストコンピュータ１４と、ＰＬＣ１１との通信を中継する。なお、共通プロトコルと専用プロトコルとの間のプロトコル変換には、同じ指示に同じコードが割り当てられるように予め定められた共通のコマンドと上記共通のコマンドに対応するＰＬＣ１１固有のコマンドとの間の変換や、データやアドレスの表現方法の変換、デバイスアドレスと、当該デバイスアドレスに対応し、しかも、デバイスアドレスとは異なる値に設定可能な変数や変数の名称（変数名）との変換なども含まれる。
【００３８】
これにより、プログラマブル表示器１２および制御用ホストコンピュータ１４は、他のプログラマブル表示器１２に接続されているＰＬＣ１１の機種に拘らず、ＬＡＮ１３を介して共通のプロトコルで通信できる。この結果、互いに異なる機種のＰＬＣ１１の混在する制御システム１が比較的容易に実現されている。
【００３９】
上記プログラマブル表示器１２は、後述する画面データに基づいて、デバイスの状態を画面表示する際の動作や、画面への操作に応じてデバイスの状態を制御する際の動作を特定するものであって、ＰＬＣ１１と通信するＰＬＣ・ＩＦ部２１と、上記ＬＡＮ１３に接続するためのＬＡＮ・ＩＦ部（通信手段）２２と、例えば、液晶表示装置などからなるディスプレイ２３と、ディスプレイ２３の画面上に配されたタッチパネル２４と、上記各部材２１〜２４を制御するＨＭＩ処理部２５と、当該ＨＭＩ処理部２５によって参照され、上記画面データおよび後述する変数が格納される画面メモリ２６および変数メモリ２７とを備えている。
【００４０】
上記画面データは、画面上の領域と、当該領域への表示や入力に対応するデバイスとの対応関係を示すタグを組み合わせて構成されている。本実施形態では、ＨＭＩ処理部２５が複数の単位画面を切り換え表示可能であり、上記タグは、当該タグが有効となる単位画面を示すファイル番号と、単位画面上で実行すべき動作内容を特定する事象名と、各事象毎に参照される参照情報とを含んでいる。
【００４１】
例えば、上記タグが所定の画面領域（表示座標範囲）へ所定のデバイスの状態に応じた部品図形を表示する表示タグの場合、上記参照情報には、表示座標範囲と、デバイスを特定可能な変数（後述）と、例えば、部品図形がスイッチの場合、ＯＮを示す図形のファイルおよびＯＦＦを示す図形のファイルなど、表示時に参照するファイル番号とが含まれる。さらに、タグが入力タグの場合、参照情報として、有効入力座標範囲と、入力結果が書き込まれるデバイスの変数とが含まれる。
【００４２】
また、変数メモリ２７には、図２に示すように、各変数について、変数の名称（変数名）と、変数に対応するデバイス２ａまたは内部メモリを特定するための情報（例えば、アドレスなど）と、変数の内容との組み合わせが記憶されている。なお、本実施形態では、変数に対応するデバイス２ａの機種に拘わらず、変数の内容を格納する際の表現方法（例えば、ワード長や符号の有無、あるいは、ＢＣＤ／２進表記など）が予め定められた表現方法に統一されており、変数が実在のデバイス２ａに対応する場合、変数メモリ２７には、実際の機種での表現方法も格納されている。この場合、ＨＭＩ処理部２５は、ＰＬＣ・ＩＦ部２１を介してデバイス２ａの状態を取得あるいは制御する際、表現方法を形式変換して、格納時の表現方法を統一する。
【００４３】
一方、上記ＨＭＩ処理部２５は、所定の時間間隔で、画面メモリ２６に格納された画面データから、ベース画面のファイル番号が、現在表示中のベース画面である表示タグを抽出する。さらに、ＨＭＩ処理部２５は、変数メモリ２７を参照して、タグに対応する変数の内容を読み出し、内容に応じた部品図形をディスプレイ２３に表示する。ここで、ＰＬＣ・ＩＦ部２１に接続されたＰＬＣ１１により制御されるデバイス２ａに、上記変数が対応している場合、ＨＭＩ処理部２５は、ＰＬＣ・ＩＦ部２１によるＰＬＣ１１との通信によって、デバイス２ａの状態を取得し、上記変数の内容を当該状態に応じて更新している。これにより、ディスプレイ２３には、デバイス２ａの状態が表示される。
【００４４】
なお、変数が他のプログラマブル表示器１２に接続されたＰＬＣ１１によって制御されるデバイス２ａの場合、ＨＭＩ処理部２５は、ＬＡＮ・ＩＦ部２２、ＬＡＮ１３および他のプログラマブル表示器１２を介して当該ＰＬＣ１１と通信するなどして、デバイスの状態を取得し、それに応じて変数の内容を更新する。
【００４５】
また、タッチパネル２４への押し操作など、オペレータの入力操作を受け付けると、ＨＭＩ処理部２５は、上記画面データから、現在表示中のベース画面に対応し、当該入力操作にマッチする入力タグを検索すると共に、入力結果に応じて、タグに対応する変数の内容を更新する。さらに、ＨＭＩ処理部２５は、デバイス２ａの状態を取得する場合と略同様に、ＰＬＣ１１やプログラマブル表示器１２と通信するなどして、上記変数の内容に応じて、デバイス２ａの状態を制御させる。ここで、入力操作の後も、ＨＭＩ処理部２５は、デバイス２ａの状態を画面表示するので、操作結果が画面表示に反映される。
【００４６】
加えて、ＨＭＩ処理部２５は、例えば、他のプログラマブル表示器１２や制御用ホストコンピュータ１４など、ＬＡＮ１３に接続された機器から自らに接続されたＰＬＣ１１のデバイス２ａへの制御指示を受け取った場合や、これとは逆に、上記機器へ報告すべきデバイス２ａの状態を自らのＰＬＣ１１から受け取った場合には、上述したプロトコル変換によって、ＬＡＮ１３での通信、および、ＰＬＣ１１との通信の間を中継できる。
【００４７】
さらに、本実施形態に係るプログラマブル表示器１２は、ＰＬＣとしても動作するために、デバイス２ａに接続するためのＩＯ・ＩＦ部３１と、制御プログラムなどを記憶する制御用ファイルメモリ（記憶手段）３２と、当該制御プログラムに基づいて、ＩＯ・ＩＦ部３１に接続されたデバイス２ａを制御するデバイス制御部（制御手段）３３とを備えている。
【００４８】
本実施形態に係るデバイス制御部３３は、制御プログラムにおいて、制御対象を変数で特定可能なＰＬＣであって、例えば、数十ｍｓなど、予め定められた長さの走査期間（スキャンタイム）毎に、各デバイス２ａの状態を読み出し、各デバイス２ａに対応する変数の内容として、変数メモリ２７に格納する。
【００４９】
さらに、デバイス制御部３３は、変数メモリ２７に格納された各変数の内容を参照しながら、制御用ファイルメモリ３２の制御プログラムが示す各命令を順次実行する。
【００５０】
上記各命令Ｃα…は、命令の動作を示す識別子（ＯＰコード）を含んでいる。また、命令には、演算対象を示すオペランドを含むことができる。さらに、本実施形態に係るデバイス制御部３３は、各命令の演算対象（制御対象）を変数で指定可能であり、各命令の実行に伴なって、各変数の内容を更新できる。
【００５１】
さらに、エンド命令が実行され、制御プログラムの実行が終了すると、デバイス制御部３３は、変数メモリ２７に格納された各変数のうち、ＩＯ・ＩＦ部３１に接続されたデバイス２ａに対応する変数の内容を各デバイス２ａに書き込む。これにより、デバイス制御部３３は、ＰＬＣと同様に、ユーザが作成した制御プログラムに従い、デバイス２ａの状態に応じて各デバイス２ａを制御できる。なお、上述したように、変数の内容を格納する際の表現方法が統一されているので、デバイス制御部３３は、ＩＯ・ＩＦ部３１を介してデバイス２ａと通信する際、表現方法を形式変換して、格納時の表現方法を統一している。
【００５２】
一方、図１に示すように、プログラムエディタ装置としての制御用ホストコンピュータ１４には、ＬＡＮ１３と接続するためのＬＡＮ・ＩＦ部４１と、ユーザの操作に応じて、予め格納された制御プログラムを修正したり、新規作成したりして、新たな制御プログラムを生成するプログラムエディタ部（編集手段）４２と、プログラムエディタ部４２などの要求に応じて、上記ＬＡＮ・ＩＦ部４１およびＬＡＮ１３を介して、プログラマブル表示器１２と通信するサーバ部４３と、生成された制御プログラムを記憶する記憶部４４とを備えている。これにより、制御用ホストコンピュータ１４は、プログラムエディタ部４２が生成した制御プログラムを、プログラマブル表示器１２に送信し、プログラマブル表示器１２の制御用ファイルメモリ３２に格納させることができる。
【００５３】
より詳細には、上記記憶部４４には、制御プログラムのＯＰコードおよびオペランドだけではなく、例えば、変数の情報、ジャンプ先のラベル、各ラダー記号がどのように接続されるかを示す情報や、ラング番号など、制御プログラムに応じたラダー図を表示するための情報も記憶されている。
【００５４】
また、上記プログラムエディタ部４２は、記憶部４４に記憶された制御プログラムをラダー図として表示すると共に、表示したラダー図への編集操作を受け付け、編集結果に応じてラダー図の表示を更新できる。
【００５５】
ここで、ラダー図は、例えば、図３に示すように、接点やコイル、カウンタなど、図形やその他の形式で表された機能ブロックとしてのラダー記号（Ｉα…）と、これらに関連するラベルとからなる１または複数のネットワーク（Ｌ１…）を、左右の母線（Ｌａ・Ｌｂ）内に記述した図であって、配置されているラダー記号の種類と、各ラダー記号の接続関係とによって、制御手順を図示できる。
【００５６】
例えば、図４は、上記図３にてラダープログラムとして記述された制御プログラムを、プログラムエディタ部４２が表示している画面を示しており、ロードを示すラダー記号Ｉαが、アンドを示すラダー記号Ｉβ、および、インクリメントを示すラダー記号Ｉγを介して、母線Ｌｂに接続されている。また、各ラダー記号Ｉ…には、デバイスに対応する変数の名称が併記されている。したがって、これらのラダー記号Ｉα〜Ｉγと、各ラダー記号Ｉα〜Ｉγの接続関係とによって、命令Ｃα〜Ｃγに対応する制御手順、すなわち、第１接点がオン状態で、しかも、第２接点がオン状態の場合、カウンタをインクリメントするという手順を記述できる。なお、例えば、命令Ｃαとラダー記号Ｉαとのように、互いに対応するもの同士に、互いに同じギリシャ文字を付している。
【００５７】
さらに、本実施形態に係るプログラムエディタ部４２は、上記ラダー図を表示する際、ボタンＢ１〜Ｂ４１も合わせて表示している。ここで、上記ボタンＢ１は、制御プログラム編集の終了を指示するボタンであり、当該ボタンＢ１が操作されると、プログラムエディタ部４２は、ラダー図の表示を中止して、制御プログラムの編集を終了する。
【００５８】
また、ボタンＢ１１は、ネットワークＬ１…の番号（ラング番号）を指示するボタンである。また、ボタンＢ２１〜Ｂ２４は、制御プログラムに応じたラダー図全体のうちのラダーモニタ画面中に表示する領域の移動（スクロール）を指示するボタンであり、それぞれ、左右上下方向に対応している。そして、プログラムエディタ部４２は、これらのボタンＢ１１〜Ｂ２４が操作されると、制御プログラムのうち、プログラムエディタ部４２が編集画面に表示している部分（編集箇所）を変更する。
【００５９】
さらに、ボタンＢ３１は、移動の単位をページ単位とするかラング単位とするかを指示するボタンであり、当該ボタンＢ３１が操作されると、プログラムエディタ部４２は、編集箇所の移動を示す上記ボタンＢ２１〜Ｂ２４が操作されたときの移動単位を変更する。また、ボタンＢ４１は、ラダー図中に数値を表示する際、１０進表示するか１６進表示するかの切り換えを指示するボタンであり、プログラムエディタ部４２は、操作に応じて、数値の表示方法を切り換える。
【００６０】
また、プログラムエディタ部４２は、画面上に表示している各ラダー記号への操作を待ち受けており、操作に応じて、ラダー記号を操作できる。例えば、ラダー記号の移動操作を受け付けると、当該ラダー記号の場所を、操作に従って移動し、ラダー記号の削除操作を受け付けると、当該ラダー記号を削除する。さらに、プログラムエディタ部４２は、ラダー記号の編集操作に応じて、ラダー記号に対応する命令のオペランドを変更できる。
【００６１】
例えば、図４に示すラダー記号Ｉαに対応する命令Ｃαは、第１接点をオペランドにするロード命令であるが、プログラムエディタ部４２は、例えば、ラダー記号Ｉαへの編集操作を受け付けた場合、例えば、オペランドとして設定可能な変数をリスト表示するなどして、オペランドの入力を促し、選択操作などの指示を受け付けると、命令Ｃαのオペランドを指示された変数（例えば、第３接点など）に変更できる。
【００６２】
また、プログラムエディタ部４２は、ラダー記号の追加指示を受け付けた場合、例えば、追加可能なラダー記号をリスト表示するなどして、追加するラダー記号の入力を促し、選択操作などの指示を受け付けると、指示された種類のラダー記号をラダー図内に追加する。
【００６３】
なお、上記では、リスト表示を例にして説明したが、オペランドとして指定された変数あるいは追加するラダー記号を特定できれば、例えば、変数あるいはラダー記号を特定するための文字列（変数名あるいはＯＰコードのニモニックなど）の入力を促す入力欄を表示し、その入力欄へ入力された文字列によって変数あるいはラダー記号を特定してもよい。
【００６４】
さらに、上記プログラムエディタ部４２は、例えば、ユーザが図４に示すボタンＢ１を押すなどして、ラダー図の編集終了を指示すると、当該ラダー図に対応する制御プログラムを記憶部４４に格納できる。
【００６５】
なお、本実施形態に係る制御用ホストコンピュータ１４には、ターゲットシステム２を監視制御するために、プログラマブル表示器１２のＨＭＩ処理部２５と略同一の動作を行うＨＭＩ処理部４５が設けられており、上記サーバ部４３が当該ＨＭＩ処理部４５の要求に応じて、プログラマブル表示器１２と通信することによって、ＨＭＩ処理部４５は、ユーザの操作に応じた制御指示をプログラマブル表示器１２へ伝えると共に、プログラマブル表示器１２から受け取ったデータを表示できる。
【００６６】
さらに、本実施形態に係る制御用ホストコンピュータ１４には、ユーザの操作に応じて、記憶部４４に予め格納された画面データを修正したり、新規作成したりして、表示画面を設計し、新たな画面データを生成する作画エディタ部４６も設けられており、作画エディタ部４６が生成した画面データを、プログラマブル表示器１２に送信し、プログラマブル表示器１２の画面データメモリ２６に格納させることができる。
【００６７】
ここで、本実施形態では、制御プログラムによってプログラムされた事象が発生したときに、制御プログラムによってプログラムされた送信先へ、制御プログラムによってプログラムされたメッセージを送信するため、プログラマブル表示器１２のデバイス制御部３３がＮＥＴ命令を解釈できるように構成されており、上記制御用ホストコンピュータ１４のプログラムエディタ部４２は、ＮＥＴ命令を含む制御プログラムを生成できる。
【００６８】
具体的には、ＮＥＴ命令は、図５に示すように、ＯＰコードＰ１（”ＮＥＴ”）と、メッセージを特定するためのオペランドＰ２と、送信先を特定するためのオペランドＰ３とを含んでいる。さらに、本実施形態に係るＮＥＴ命令では、上記オペランドＰ３に、複数の送信先Ｐ３１〜Ｐ３２を含むことができる。
【００６９】
本実施形態では、各部分Ｐ１〜Ｐ３は、予め定められたセパレータ（例えば、空白コード）で区切られている。また、本実施形態に係るオペランドＰ３では、各送信先も予め定められたセパレータ（例えば”：”）で区切られている。
【００７０】
一方、制御用ホストコンピュータ１４のプログラムエディタ部４２は、ラダー図を編集しているときに（例えば、図６の状態）、ＮＥＴ命令の追加が指示されると、図７に示すように、当該ラダー図内に、ＮＥＴ命令を示すラダー記号Ｉεを表示する。上述したように、ＮＥＴ命令は、メッセージを特定するためのオペランドと送信先を特定するためのオペランドとを含むことができるので、プログラムエディタ部４２は、双方のオペランドを示す文字列ＳＴ１・ＳＴ２と共に、ラダー記号Ｉεを表示する。なお、図７の状態では、両オペランドの内容が決定されていないので、上記各文字列ＳＴ１・ＳＴ２のうち、オペランドの内容を示す文字列は、空であり、オペランドの種類を示す文字列（”メッセージ”および”送信先”）のみが表示されている。
【００７１】
さらに、例えば、上記文字列ＳＴ１への操作など、ラダー記号Ｉεのメッセージを特定するためのオペランドに対しての編集指示を受け付けると、プログラムエディタ部４２は、メッセージの入力を促す入力欄を表示し、当該入力欄へ表示された文字列に上記オペランドの内容を変更する。これにより、図８に示すように、上記文字列ＳＴ１として、当該オペランドの内容（例えば、”トリガが発生しました”も表示される。
【００７２】
また、例えば、上記文字列ＳＴ２への操作など、ラダー記号Ｉεの送信先を特定するためのオペランドに対しての編集指示を受け付けると、プログラムエディタ部４２は、例えば、送信先として選択可能な機器（例えば、ＯＡコンピュータ１５や制御用ホストコンピュータ１４あるいはプログラマブル表示器１２など）をリスト表示するなどして、送信先の入力を促し、例えば、選択指示など、送信先が指示されると、当該送信先に上記オペランドの内容を変更する。図４は、一例として、２つの送信先（送信先１および送信先２）が指示された場合を示しており、プログラムエディタ部４２は、上記文字列ＳＴ２として、”送信先１”および”送信先２”を表示する。
【００７３】
さらに、プログラムエディタ部４２は、上記ラダー記号Ｉεを含むラダー図の編集が終了した場合、図５に示すＮＥＴ命令を含む制御プログラムを生成する。本実施形態では、ＮＥＴ命令の送信先を特定するためのオペランドにおいて、ＩＰアドレスで送信先を指定している。したがって、図４に示すラダー記号Ｉεのように、送信先が機器を示す識別子（コンピュータ名など）で指定された場合、プログラムエディタ部４２は、送信先を特定するためのオペランドの内容を識別子で表示すると共に、上記制御プログラムを生成する際、これらの識別子をＩＰアドレスに変換し、当該ラダー記号Ｉεに対応するＮＥＴ命令のオペランドとして、当該ＩＰアドレスを設定している。ここで、上記送信先１および送信先２となるＯＡコンピュータ１５のＩＰアドレスは、それぞれ、１９２．１６８．０．１  および１９２．１６８．０．２  なので、図５の例では、送信先Ｐ３１およびＰ３２として、それぞれのＩＰアドレスが設定されている。
【００７４】
ここで、上記では、メッセージおよび送信先が直接指定される場合を例にして説明したが、各オペランドによって、メッセージおよび送信先を間接指定してもよい。具体的には、ラダー記号のオペランドとして、例えば、変数など、デバイスを特定するための情報が指定された場合、プログラムエディタ部４２は、ラダー記号に対応するＮＥＴ命令を生成する際、例えば、オペランドまたはＯＰコードに、当該オペランドが間接指定であることを示す識別子を付加する。
【００７５】
一方、デバイス制御部３３は、制御用ファイルメモリ３２に記憶されている制御プログラムから、次に実行すべき命令を読み出して実行している。当該命令がＮＥＴ命令であった場合、デバイス制御部３３は、ＯＰコードから当該命令がＮＥＴ命令であると判断し、ＬＡＮ・ＩＦ部２２へ指示して、ＮＥＴ命令により指定された送信先へ、ＮＥＴ命令により指定されたメッセージを送信させることができる。なお、ＮＥＴ命令実行時の動作の詳細については、続く動作の説明と共に説明する。
【００７６】
ところで、上記各部材２１〜３３、４１〜４５、および、５１〜５３は、ＣＰＵなどの演算手段が、ＲＯＭやＲＡＭなどの記憶手段に格納されたプログラムを実行し、タッチパネルや液晶表示装置などの入出力手段、あるいは、インターフェース回路などの通信回路を制御することによって実現される機能ブロックである。したがって、これらの手段を有するコンピュータが、上記プログラムを記録した記録媒体（例えば、ＣＤ−ＲＯＭなど）を読み取り、当該プログラムを実行するだけで、本実施形態に係るプログラマブル表示器１２、制御用ホストコンピュータ１４およびＯＡコンピュータ１５を実現できる。
【００７７】
特に、本実施形態では、ＯＡコンピュータ１５のＬＡＮ・ＩＦ部５１およびメッセージ表示部５３がＯＳの一機能によって実現されているので、ＯＳが動作していれば、新たなプログラムをインストールすることなく、これらの部材を実現できる。
【００７８】
なお、例えば、シリアルケーブルやＬＡＮ１３あるいは、他の通信路を介してプログラムをダウンロードするためのプログラムが、上記コンピュータに予めインストールされていれば、当該通信路を介して、上記コンピュータへ上記プログラムを配付することもできる。
【００７９】
上記構成において、図９に示すフローチャートに基づき、制御システム１の動作を説明すると以下の通りである。すなわち、ステップ１（以下では、Ｓ１のように略称する）において、例えば、制御用ホストコンピュータ１４の作画エディタ部４６などによって、プログラマブル表示器１２用の画面データが作成される。また、Ｓ２において、制御用ホストコンピュータ１４のプログラムエディタ部４２などによって、プログラマブル表示器１２のデバイス制御部３３用の制御プログラムを含む制御用ファイルが作成される。上記各エディタでは、タグや制御プログラムにて、操作や参照の対象となるデバイスを指定する際、デバイスに対応する変数が生成され、当該変数で指定される。
【００８０】
さらに、Ｓ３では、上記各エディタなどによって、各変数が実際のデバイス２ａなどと関連付けられる。なお、変数には、実際のデバイス２ａだけではなく、プログラマブル表示器１２の記憶領域や、マクロの演算結果を関連付けることができる。この場合、ＨＭＩ処理部２５は、予め設定されたプログラム（マクロ）に従って、変数メモリ２７の変数の内容を演算した結果を、マクロに関連付けられた変数の内容に設定できる。
【００８１】
ここで、上記各エディタでは、デバイスのアドレスを指定するのではなく、デバイスを変数で指定している。したがって、実際のデバイス２ａと変数との対応は、プログラマブル表示器１２が動作を開始するまでに関連付ければよく、実際のアドレスが決まっていない段階でも、画面や制御手順を設計できる。また、デバイス２ａの変更などによって、実際のアドレスが変更されたとしても、画面データおよび制御プログラムにおいて、当該デバイス２ａに関連する箇所全てを変更する必要がなく、変数とアドレスとの関連付けを変更するだけでよい。
【００８２】
上記Ｓ１〜Ｓ３にて、画面データ、制御プログラムおよび変数の関連付けが完成すると、Ｓ４において、これらのデータは、プログラマブル表示器１２に送信される。なお、上記では、説明の便宜上、Ｓ１〜Ｓ３の順に各ステップを記載したが、上記Ｓ４にて、プログラマブル表示器１２に格納されるまでに、これらのデータが設定されれば、順序が異なっていてもよい。
【００８３】
一方、プログラマブル表示器１２は、上記Ｓ４にて制御用ホストコンピュータ１４が送信した画面データおよび制御プログラムを受け取ると、それらを画面メモリ２６および制御用ファイルメモリ３２に格納する（Ｓ１１）。なお、制御用ファイルメモリ３２に格納される制御プログラムは、制御プログラムのＯＰコードおよびオペランドを含んでいればよいので、上記制御用ホストコンピュータ１４は、記憶部４４に記憶されている制御プログラムから、例えば、変数の情報、ジャンプ先のラベル、各ラダー記号がどのように接続されるかを示す情報や、ラング番号など、制御プログラムに応じたラダー図を表示するための情報を削除した後で送信してもよい。
【００８４】
さらに、Ｓ１２において、プログラマブル表示器１２が通常動作を開始すると、ＨＭＩ処理部２５は、上記画面データに基づいて、操作画面を表示し、デバイス制御部３３は、上記制御プログラムに基づいて、ＩＯ・ＩＦ部３１に接続されたデバイス２ａを制御する。
【００８５】
ここで、デバイス制御部３３が次に実行する命令がＮＥＴ命令ではない場合（Ｓ１３にて、ＮＯの場合）、デバイス制御部３３は、Ｓ１４において、当該命令に応じた処理を行った後、Ｓ１３の処理に戻り、次の命令を実行する。
【００８６】
一方、次の命令がＮＥＴ命令の場合（Ｓ１３にて、ＮＯの場合）、デバイス制御部３３は、Ｓ１５において、ＮＥＴ命令により指定された送信先と、ＮＥＴ命令により指定されたメッセージとを特定する。
【００８７】
例えば、図４および図５の例では、メッセージおよび送信先が直接指定されている。この場合、デバイス制御部３３は、ＮＥＴ命令から、メッセージを特定するためのオペランドを抽出し、当該オペランドが、ＮＥＴ命令によって指定されたメッセージであると判断する。また、デバイス制御部３３は、ＮＥＴ命令から、送信先を特定するためのオペランドを抽出し、当該オペランドが、ＮＥＴ命令によって指定された送信先であると判断する。なお、当該オペランドが複数の送信先を含んでいる場合は、それらの送信先を抽出して、ＮＥＴ命令の指定する送信先を特定する。
【００８８】
本実施形態では、ＯＰコード、メッセージを特定するためのオペランドおよび送信先を特定するためのオペランドがセパレータで区切られているので、制御用ファイルメモリ３２に記憶されたＮＥＴ命令を、当該セパレータで分割することによって、ＮＥＴ命令から各オペランドを抽出できる。同様に、各送信先がセパレータで区切られているので、ＮＥＴ命令の送信先を特定するためのオペランドを、当該セパレータで分割することによって、各送信先を抽出できる。
【００８９】
ここで、間接指定の場合は、デバイス制御部３３は、ＮＥＴ命令のＯＰコードまたはオペランドに付されたフラグによって、メッセージまたは送信先を特定するためのオペランドが間接指定であることを把握する。この場合、デバイス制御部３３は、当該オペランドによって特定されたデバイスの内容を読み出し、読み出した内容がＮＥＴ命令によって指定されたメッセージまたは送信先であると判断する。したがって、デバイスの内容を変更することによって、デバイス制御部３３は、メッセージまたは送信先のうち、間接指定された方の内容を動的に変更できる。
【００９０】
上記Ｓ１５において、ＮＥＴ命令により指定された送信先と、ＮＥＴ命令により指定されたメッセージとが特定されると、デバイス制御部３３は、Ｓ１６において、ＬＡＮ・ＩＦ部２２へ指示して、当該送信先へ当該メッセージを送信させた後、Ｓ１１の処理に戻り、次の命令を実行する。
【００９１】
一方、送信先となるＯＡコンピュータ１５では、Ｓ２１において、上記Ｓ１６にてプログラマブル表示器１２が送信したメッセージを、ＬＡＮ・ＩＦ部５１が受け取ると、メッセージ表示部５３は、Ｓ２２において、受信したメッセージを表示する。これにより、ＮＥＴ命令が指定したＯＡコンピュータ１５において、図示しないディスプレイ上には、図１０に示すように、ＮＥＴ命令が指定したメッセージが表示される。
【００９２】
上記構成では、デバイス制御部３３が、上記ネットワーク通信用のＮＥＴ命令を含む制御プログラムを実行できるので、デバイス制御部３３の制御プログラムをプログラムすることによって、所望の送信先に対する所望のメッセージの送信をプログラムできる。したがって、デバイス制御部３３の制御プログラムを作成するときと同じ開発環境、すなわち、プログラムエディタ部４２を用いて、しかも、制御プログラム内に記述可能な任意の条件が成立したときに、上記メッセージを送信するようにプログラムできる。
【００９３】
この結果、ネットワークに接続されている任意の機器にメッセージを表示させることができ、しかも、メッセージの送信条件やメッセージの内容および送信先を柔軟かつ少ない手間で変更可能なデバイス制御部３３を実現できる。
【００９４】
なお、上記では、プログラマブル表示器１２がＰＬＣの機能も兼ね備えている場合を例にして説明したが、これに限るものではない。ネットワーク経由で通信可能なＰＬＣのデバイス制御部が上述したデバイス制御部３３と同様に動作することによって、同様の効果が得られる。
【００９５】
【発明の効果】
請求項１記載の発明に係るプログラマブル・ロジック・コントローラは、以上のように、ネットワークと接続するための通信手段を備え、制御手段は、次に実行すべき命令がネットワーク通信用の命令である場合、上記通信手段へ指示して、当該命令の第２オペランドによって特定された送信先へ、当該命令の第１オペランドによって特定されたメッセージを送信させて、当該送信先にメッセージを表示させる構成である。一方、請求項４の発明に係るプログラムは、請求項１記載の各手段としてコンピュータを動作させるプログラムであり、請求項５の発明に係る記録媒体には、請求項４記載のプログラムが記録されている。また、これらのプログラムが上記コンピュータで実行されると、当該コンピュータは、請求項１記載のプログラマブル・ロジック・コントローラとして動作する。
【００９６】
これらの構成では、プログラマブル・ロジック・コントローラが、上記ネットワーク通信用の命令を含む制御プログラムを実行できるので、プログラマブル・ロジック・コントローラの制御プログラムをプログラムすることによって、所望の送信先に対する所望のメッセージの送信をプログラムできる。したがって、プログラマブル・ロジック・コントローラの制御プログラムを作成するときと同じ開発環境を用いて、しかも、制御プログラム内に記述可能な任意の条件が成立したときに、上記メッセージを送信するようにプログラムできる。
【００９７】
この結果、ネットワークに接続されている任意の機器にメッセージを表示させることができ、しかも、メッセージの送信条件やメッセージの内容および送信先を柔軟かつ少ない手間で変更可能なプログラマブル・ロジック・コントローラを実現できるという効果を奏する。
【００９８】
請求項２記載の発明に係るプログラマブル・ロジック・コントローラは、以上のように、請求項１記載の発明の構成に加えて、上記第１および第２オペランドの少なくとも一方は、メッセージまたは送信先を直接指定するオペランドであり、上記制御手段は、第１および第２オペランドのうち、メッセージまたは送信先が直接指定されているオペランドの内容をメッセージまたは送信先と判断する構成である。
【００９９】
当該構成では、制御プログラムに含まれるネットワーク通信用の命令の第１および第２オペランドの少なくとも一方として、メッセージまたは送信先を記述することによって、所望のメッセージまたは送信先をプログラムできる。したがって、ネットワークに接続されている任意の機器にメッセージを表示させることができ、しかも、メッセージの送信条件やメッセージの内容および送信先を柔軟かつ少ない手間で変更可能なプログラマブル・ロジック・コントローラを実現できるという効果を奏する。
【０１００】
請求項３記載の発明に係るプログラマブル・ロジック・コントローラは、以上のように、請求項１記載の発明の構成に加えて、上記第１および第２オペランドの少なくとも一方は、デバイスを示すオペランドであり、上記制御手段は、当該デバイスの内容をメッセージまたは送信先と判断する構成である。
【０１０１】
当該構成では、制御プログラムに含まれるネットワーク通信用の命令の第１および第２オペランドの少なくとも一方として、メッセージまたは送信先を示すデバイスを記述することによって、所望のメッセージまたは送信先をプログラムできる。また、メッセージまたは送信先が間接指定されているので、デバイスの内容を変更することによって、メッセージまたは送信先の内容を動的に変更できる。したがって、ネットワークに接続されている任意の機器にメッセージを表示させることができ、しかも、メッセージの送信条件やメッセージの内容および送信先を柔軟かつ少ない手間で変更可能なプログラマブル・ロジック・コントローラを実現できるという効果を奏する。
【０１０２】
請求項６記載の発明に係るプログラムエディタ装置は、以上のように、編集手段が制御プログラムに追加可能な命令には、上記プログラマブル・ロジック・コントローラが実行した場合、当該命令によって指定された送信先へ、当該命令によって指定されたメッセージを送信するネットワーク通信用の命令が含まれており、上記編集手段は、ネットワーク通信用の命令への編集指示を受け付けた場合、ネットワーク通信用の命令のうち、メッセージを特定するための第１オペランドおよび送信先を特定するための第２オペランドを編集指示に応じて変更する構成である。
【０１０３】
当該構成において、編集手段は、ネットワーク通信用の命令への編集指示を受け付けた場合、ネットワーク通信用の命令のうち、メッセージを特定するための第１オペランドおよび送信先を特定するための第２オペランドを編集指示に応じて変更する。これにより、ネットワーク通信用の命令を含む制御プログラムを作成できる。この結果、ネットワークに接続されている任意の機器にメッセージを表示させるプログラマブル・ロジック・コントローラがメッセージを送信する際の送信条件、メッセージの内容および送信先を、柔軟かつ少ない手間で変更できるという効果を奏する。
【０１０４】
請求項７記載の発明に係るプログラムエディタ装置は、以上のように、請求項６記載の発明の構成において、上記編集手段は、上記ネットワーク通信用の命令の第１または第２オペランドとして、デバイスを特定するための情報が入力された場合、上記ネットワーク通信用の命令に、当該オペランドが間接指定であることを示すフラグを付加し、当該ネットワーク通信用の命令を実行するプログラマブル・ロジック・コントローラに当該デバイスの内容によってメッセージまたは送信先を特定させる構成である。また、請求項８の発明に係るプログラムは、請求項６記載の各手段としてコンピュータを動作させるプログラムであり、請求項９の発明に係る記録媒体には、請求項８記載のプログラムが記録されている。さらに、これらのプログラムが上記コンピュータで実行されると、当該コンピュータは、請求項６記載のプログラムエディタ装置として動作する。
【０１０５】
これらの構成において、編集手段は、上記ネットワーク通信用の命令の第１または第２オペランドとして、デバイスを特定するための情報が入力された場合、上記ネットワーク通信用の命令に、当該オペランドが間接指定であることを示すフラグを付加し、当該ネットワーク通信用の命令を実行するプログラマブル・ロジック・コントローラに当該デバイスの内容によってメッセージまたは送信先を特定させる。したがって、デバイスの内容を変更することによって、プログラマブル・ロジック・コントローラは、メッセージまたは送信先の内容を動的に変更できる。これにより、ネットワークに接続されている任意の機器にメッセージを表示させるプログラマブル・ロジック・コントローラがメッセージを送信する際の送信条件、メッセージの内容および送信先を、柔軟かつ少ない手間で変更できるという効果を奏する。
【０１０６】
したがって、請求項６と同様、ネットワークに接続されている任意の機器にメッセージを表示させるプログラマブル・ロジック・コントローラがメッセージを送信する際の送信条件、メッセージの内容および送信先を、柔軟かつ少ない手間で変更できる。
【図面の簡単な説明】
【図１】本発明の実施形態を示すものであり、制御システムの要部構成を示すブロック図である。
【図２】上記制御システムのプログラマブル表示器の変数メモリに格納される変数のデータ構造を示す図面である。
【図３】上記プログラマブル表示器のプログラマブル・ロジック・コントローラ機能で実行される制御プログラムを示す図面である。
【図４】上記制御システムのプログラムエディタ部の表示画面を示す図面である。
【図５】ネットワーク通信用のＮＥＴ命令のデータ構造を示す図面である。
【図６】上記制御システムのプログラムエディタ部の表示画面を示す図面であり、ＮＥＴ命令を挿入する前の状態を示す図面である。
【図７】上記制御システムのプログラムエディタ部の表示画面を示す図面であり、ＮＥＴ命令が挿入された時点の状態を示す図面である。
【図８】上記制御システムのプログラムエディタ部の表示画面を示す図面であり、ＮＥＴ命令のオペランドのうち、メッセージを特定するためのオペランドが入力された状態を示す図面である。
【図９】上記制御システムの動作を示すフローチャートである。
【図１０】上記制御システムのＯＡコンピュータの表示画面を示すものであり、上記プログラマブル表示器のプログラマブル・ロジック・コントローラ機能によって送信されたメッセージを表示している状態を示す図面である。
【符号の説明】
２ａ  デバイス
１２    プログラマブル表示器（プログラマブル・ロジック・コントローラ）
１３    ＬＡＮ（ネットワーク）
１４    制御用ホストコンピュータ（プログラムエディタ装置）
１５    ＯＡコンピュータ（送信先）
２２    ＬＡＮ・ＩＦ部（通信手段）
３２    制御用ファイルメモリ（記憶手段）
３３    デバイス制御部（制御手段）
４２    プログラムエディタ部（編集手段）
【図１】
2004302880.tif 000003
【図２】
2004302880.tif 000004
【図３】
2004302880.tif 000005
【図４】
2004302880.tif 000006
【図５】
2004302880.tif 000007
【図６】
2004302880.tif 000008
【図７】
2004302880.tif 000009
【図８】
2004302880.tif 000010
【図９】
2004302880.tif 000011
【図１０】
2004302880.tif 000012