(57)【要約】【課題】  データの同時性を維持しつつ、データの送信負荷を低減させるプログラムのエディタ装置を提供する。【解決手段】  コンピュータシステムのＣＰＵがエディタ装置を実現するために実行する処理は、個別変数の登録のためのデータの入力を受け付けるステップ（Ｓ６０４）と、ブロック変数の登録のためのデータの入力を受け付けるステップ（Ｓ６１０）と、ブロック変数にまとめられる個別変数のデータの入力を受け付けるステップ（Ｓ６１４）と、ブロック変数と個別変数とを関連付けるためのデータを生成するステップ（Ｓ６１８)とを含む。【選択図】        図６
2006099258.tif 000002
【特許請求の範囲】
【請求項１】
制御対象機器との間でデータを通信する通信装置に転送可能なデータ形式で、前記通信装置によるデータ処理を実現する制御プログラムに対応する制御データを生成するエディタ装置であって、
外部からの入力を受け付ける入力手段と、
前記入力に基づいて、データが格納される領域を識別するための変数と、前記制御プログラムにおける前記変数の属性とを定義する変数定義手段と、
前記入力に基づいて、前記制御プログラムにより参照されるブロック変数を定義するブロック変数定義手段と、
前記入力に基づいて複数の前記変数の中から選択された少なくとも１つ以上の変数と、前記ブロック変数とを関連付ける関連付け手段と、
前記関連付けられた変数および前記ブロック変数と前記データ形式とに基づいて、前記制御データを生成する生成手段とを備える、エディタ装置。
【請求項２】
前記通信装置は、前記制御対象機器により出力される操業データに基づいて前記制御対象機器の状態を表示する表示手段と、他の通信装置との間で前記操業データを通信する通信手段とを備える表示装置であり、
前記制御プログラムは、前記操業データの通信のための通信プログラムを含み、
前記生成手段は、前記通信プログラムに対応する前記制御データを生成する、請求項１に記載のエディタ装置。
【請求項３】
前記エディタ装置は、データを格納する記憶手段をさらに備え、
前記変数定義手段は、前記領域が離散的に割り当てられた複数の前記変数の各々を表わす変数データと、複数の前記変数の各々の型属性を表わす属性データとを、前記記憶手段にそれぞれ格納し、
前記関連付け手段は、前記領域が離散的に割り当てられた複数の前記変数データと、前記ブロック変数を表わすデータとを関連付ける、請求項１に記載のエディタ装置。
【請求項４】
前記関連付け手段は、第１のデータ型の属性を有する変数と、前記第１のデータ型と異なる第２のデータ型の属性を有する変数とを、前記ブロック変数にそれぞれ関連付ける、請求項１に記載のエディタ装置。
【請求項５】
前記関連付け手段は、前記変数が既に関連付けられた前記ブロック変数を、前記ブロック変数と異なるブロック変数に関連付ける手段を含む、請求項１に記載のエディタ装置。
【請求項６】
前記エディタ装置は、
前記少なくとも１つ以上の変数が前記ブロック変数に関連付けられていることを表わす画像を、予め定められた座標軸方向に表示するための画像データを生成するデータ生成手段と、
前記画像データに基づいて、前記画像を表示する表示手段とをさらに備える、請求項１に記載のエディタ装置。
【請求項７】
前記制御プログラムは、前記ブロック変数に基づいてデータを通信する処理を実現するための通信プログラムを含み、
前記エディタ装置は、前記通信プログラムを実行することによりデータを送信する第１のデータ通信装置を識別する第１の識別情報と、前記第１のデータ通信装置からデータを受信する第２のデータ通信装置を識別する第２の識別情報とを格納する識別情報記憶手段をさらに備え、
前記生成手段は、前記第１の識別情報と前記第２の識別情報とに基づいて、前記通信プログラムに対応する前記制御データを生成する、請求項１に記載のエディタ装置。
【請求項８】
前記入力手段は、
新たなブロック変数を生成するためのデータの入力を受けるデータ入力手段と、
前記関連付けが既に行なわれたブロック変数を選択する指示の入力を受ける手段とを含み、
前記エディタ装置は、前記指示に基づいて選択されたブロック変数に関連付けられているデータと、前記新たなブロック変数とを関連付けるためのリンク手段をさらに備える、請求項１に記載のエディタ装置。
【請求項９】
前記データ入力手段は、前記新たなブロック変数のために確保される領域の位置を特定するための位置情報の入力を受け、
前記リンク手段は、前記位置情報と、前記選択されたブロック変数に関連付けられている変数のデータ属性とに基づいて、前記新たなブロック変数に関連付けられる変数のために確保される領域の前記位置情報を生成する、請求項８に記載のエディタ装置。
【請求項１０】
制御対象機器との間でデータを通信する通信装置に転送可能なデータ形式で、前記通信装置によるデータ処理を実現する制御プログラムに対応する制御データを生成するエディタ装置として、コンピュータを機能させるためのプログラムであって、前記プログラムは前記コンピュータに、
外部からの入力を受け付けるステップと、
前記入力に基づいて、データが格納される領域を識別するための変数と、前記制御プログラムにおける前記変数の属性とを定義するステップと、
前記入力に基づいて、前記制御プログラムにより参照されるブロック変数を定義するステップと、
前記入力に基づいて複数の前記変数の中から選択された少なくとも１つ以上の変数と、前記ブロック変数とを関連付けるステップと、
前記関連付けられた変数および前記ブロック変数と前記データ形式とに基づいて、前記制御データを生成するステップとを実行させる、プログラム。
【請求項１１】
請求項１０に記載のプログラムを格納した記録媒体。
【請求項１２】
制御対象機器の動作を制御する制御装置と、前記制御対象機器の状態を表示する機能および前記制御対象機器の動作の制御を指示する機能を有する表示器とを備え、
前記表示器は、
画面を表示する表示手段と、
前記制御装置とデータを通信する通信手段と、
前記データが格納される領域を識別する変数と、複数の前記変数の中から選択された１つ以上の変数が関連付けられたブロック変数と、前記ブロック変数に関連付けられた前記１つ以上の変数に対応するデータに基づいて、前記制御対象機器の状態の表示と動作の制御の指示とを実行する制御プログラムとを格納する記憶手段と、
前記ブロック変数と前記制御プログラムとに基づいて、前記少なくとも１つ以上の変数により特定されるデータを使用する処理を実行する制御手段とを備え、
前記制御装置は、
前記表示器と通信する通信手段と、
前記表示器からのデータに基づいて、前記制御対象機器の動作を制御する動作制御手段とを備える、制御システム。
【請求項１３】
制御装置により動作が制御される制御対象機器の状態を表示する機能と前記制御対象機器の動作の制御を指示する機能とを有する表示器であって、
前記制御対象機器の状態を表わす画面を表示する表示手段と、
前記制御装置とデータを通信する通信手段と、
前記データが格納される領域を識別する変数と、複数の前記変数の中から選択された１つ以上の変数が関連付けられたブロック変数と、前記ブロック変数に関連付けられた前記１つ以上の変数に対応するデータに基づいて、前記制御対象機器の状態の表示と動作の制御の指示とを実行する制御プログラムとを格納する記憶手段と、
前記ブロック変数と前記制御プログラムとに基づいて、前記少なくとも１つ以上の変数により特定されるデータを使用する処理を実行する制御手段とを備える、表示器。
【請求項１４】
前記表示器は、
前記ブロック変数に基づいて前記制御プログラムを実行するデータ処理装置と通信するデータ通信手段と、
予め定められた条件の成立に応じて、前記ブロック変数に関連付けられた変数により特定される領域に格納されているデータの送信指示を生成する生成手段とをさらに備え、
前記制御プログラムは、前記ブロック変数を参照することにより前記ブロック変数に関連付けられている前記１つ以上の変数に対応するデータを前記記憶手段から読み出す処理と、前記読み出されたデータに基づいて送信データを生成する処理とを実現するための通信プログラムを含み、
前記制御手段は、前記送信指示に基づいて前記通信プログラムを実行することにより、前記データ通信手段に、前記データ処理装置に対して前記送信データを送信させる、請求項１３に記載の表示器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御対象機器との間でデータを通信する装置によるデータ処理を実現するための技術に関する。より特定的には、当該処理を実現するプログラムにて参照される変数の定義に関し、利用者に柔軟性をもたらしつつ、プログラムのメンテナンス性を向上させることができるエディタ装置、コンピュータをエディタ装置として機能させるためのプログラム、そのプログラムを格納した記録媒体、制御システム、および表示器に関する。
【背景技術】
【０００２】
プログラマブルロジックコントローラと称される産業用制御装置は、自動組付け機その他の制御対象機器に接続され、シーケンス制御その他の制御を実行したり、その機器の状態を表わすデータを受信したりする。この制御対象機器の制御あるいは状態の表示は、たとえば、その制御対象機器の状態を表示する機能およびその機器の動作を制御する機能を有する表示器を介して行なわれる。また、近年、上記の産業用制御装置が有する制御機能を備えた表示器も導入されている。
【０００３】
上記の表示器は、接続されている制御対象機器の状態を表示したり、作業者が指示を入力するための画面を表示する。また、予め設定された配信条件が成立した場合には、配信対象として指定されたデータは、通信機能を備える他のデータ処理装置に配信される。このようなデータ処理は、各データ属性を備えるデータを格納する領域として予め定義された変数を参照するプログラムによって実現される。
【０００４】
一般にコンピュータが当該処理を実行する場合、処理の対象となるデータの件数は、プログラムに応じて増減する。この場合、データ量によっては、プログラムの実行速度が低下したり、データ転送の場合には、転送量が増加したり、あるいは通信時間が増加する等の問題があった。
【０００５】
そこで、たとえば特許第３３６４２０７号明細書（特許文献１）は、表示器と産業用制御装置とを備える制御システムにおいて、表示器をデータ通信の中心として構成可能にするためのシステムを開示している。
【０００６】
また、データ転送量を抑制するために、たとえば特開平７−２３９８０８号公報（特許文献２）は、ネットワーク上に分散配置されサービス要求を行なうクライアント計算機とクライアント計算機からのサービス要求を処理するサーバ計算機からなる分散データ管理システムを開示する。このシステムにおいて、サーバ計算機は、サーバ計算機上の実ファイルデータをページ単位で管理する実ファイルストア管理部と、クライアント計算機からのファイルアクセス要求に対してアクセス要求箇所を含むページ単位でのデータ転送を行なうデマンドページ転送部とを備える。クライアント計算機は、サーバ計算機に対するページデータ転送要求部を備える。
【０００７】
特開平７−２３９８０８号公報（特許文献２）に開示されたシステムによると、必要とされるページのみが転送されるので、転送量が抑制される。
【特許文献１】特許第３３６４２０７号明細書
【特許文献２】特開平７−２３９８０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、上記の表示器は、さらに予め定義された変数ごとに制御対象機器からのデータを格納する。表示器において使用される変数の数は、制御対象機器の仕様の変更等により増加したり変更したりする。また、表示器は、制御内容に応じて異なるデータ属性を有する変数を使用する。そのため、当該変数を参照して所定の処理を実現する制御プログラムの設計時には、各変数の属性を考慮する必要がある。しかしながら、表示器においてデータが格納されるメモリの識別名称として使用される変数および各変数のデータ型の種類が複数ある場合、データ処理の時間が長くなる場合があった。すなわち、各変数に対するアクセスが速やかに行なわれない場合があるため、データ転送時間が長くなるという問題があった。また、データ処理の対象となる変数の数が多くなると、送信ヘッダ量が増加するため、データ転送量が多くなるという問題もあった。
【０００９】
しかしながら、特開平７−２３９８０８号公報（特許文献２）に開示された技術によると、転送量の抑制は、ファイルのページ単位に対応した処理により実現されるため、変数レベルにおける処理は同様の技術では実現できなかった。また、データ転送の時間を短くすることができなかった。
【００１０】
本発明は、上述の問題点を解決するためになされたものであって、その目的は、階層化されたプログラムの設計を容易にすることができる処理プログラムを編集するためのエディタ装置を提供することである。
【００１１】
本発明の他の目的は、データ通信のパフォーマンスの低下を防止しつつ、複数のデータ項目の通信を簡易に実行することができる処理プログラムを編集するためのエディタ装置を提供することである。
【００１２】
本発明の他の目的は、データ型が異なるデータの同時性を維持することができるプログラムを編集するためのエディタ装置を提供することである。
【００１３】
本発明の他の目的は、階層化されたプログラムの設計を容易にすることができる処理プログラムを編集するためのエディタ装置としてコンピュータを機能させるためのプログラムを提供することである。
【００１４】
本発明の他の目的は、階層化されたプログラムの設計を容易にすることができる処理プログラムを編集するためのエディタ装置としてコンピュータを機能させるためのプログラムを格納した記録媒体を提供することである。
【００１５】
本発明の他の目的は、データ通信のパフォーマンスの低下を防止しつつ、複数のデータ項目の通信を簡易に実行することができる制御システムを提供することである。
【００１６】
本発明の他の目的は、データ通信のパフォーマンスの低下を防止しつつ、複数のデータ項目の通信を簡易に実行することができる表示器を提供することである。
【００１７】
本発明の他の目的は、データ型が異なるデータの同時性を他の装置に対して維持することができる表示器を提供することである。
【課題を解決するための手段】
【００１８】
上記の課題を解決するために、この発明のある局面に従うと、エディタ装置は、制御対象機器との間でデータを通信する通信装置に転送可能なデータ形式で、通信装置によるデータ処理を実現する制御プログラムに対応する制御データを生成する。このエディタ装置は、外部からの入力を受け付ける入力手段と、入力に基づいて、データが格納される領域を識別するための変数と、制御プログラムにおける変数の属性とを定義する変数定義手段と、入力に基づいて、制御プログラムにより参照されるブロック変数を定義するブロック変数定義手段と、入力に基づいて複数の変数の中から選択された少なくとも１つ以上の変数と、ブロック変数とを関連付ける関連付け手段と、関連付けられた変数およびブロック変数とデータ形式とに基づいて、制御データを生成する生成手段とを備える。
【００１９】
好ましくは、通信装置は、制御対象機器により出力される操業データに基づいて制御対象機器の状態を表示する表示手段と、他の通信装置との間で操業データを通信する通信手段とを備える表示装置である。制御プログラムは、操業データの通信のための通信プログラムを含む。生成手段は、通信プログラムに対応する制御データを生成する。
【００２０】
好ましくは、エディタ装置は、データを格納する記憶手段をさらに備える。変数定義手段は、領域が離散的に割り当てられた複数の変数の各々を表わす変数データと、複数の変数の各々の型属性を表わす属性データとを、記憶手段にそれぞれ格納する。関連付け手段は、領域が離散的に割り当てられた複数の変数データと、ブロック変数を表わすデータとを関連付ける。
【００２１】
好ましくは、関連付け手段は、第１のデータ型の属性を有する変数と、第１のデータ型と異なる第２のデータ型の属性を有する変数とを、ブロック変数にそれぞれ関連付ける。
【００２２】
好ましくは、関連付け手段は、変数が既に関連付けられたブロック変数を、ブロック変数と異なるブロック変数に関連付ける手段を含む。
【００２３】
好ましくは、エディタ装置は、少なくとも１つ以上の変数がブロック変数に関連付けられていることを表わす画像を、予め定められた座標軸方向に表示するための画像データを生成するデータ生成手段と、画像データに基づいて、画像を表示する表示手段とをさらに備える。
【００２４】
好ましくは、制御プログラムは、ブロック変数に基づいてデータを通信する処理を実現するための通信プログラムを含む。エディタ装置は、通信プログラムを実行することによりデータを送信する第１のデータ通信装置を識別する第１の識別情報と、第１のデータ通信装置からデータを受信する第２のデータ通信装置を識別する第２の識別情報とを格納する識別情報記憶手段をさらに備える。生成手段は、第１の識別情報と第２の識別情報とに基づいて、通信プログラムに対応する制御データを生成する。
【００２５】
好ましくは、入力手段は、新たなブロック変数を生成するためのデータの入力を受けるデータ入力手段と、関連付けが既に行なわれたブロック変数を選択する指示の入力を受ける手段とを含む。エディタ装置は、指示に基づいて選択されたブロック変数に関連付けられているデータと、新たなブロック変数とを関連付けるためのリンク手段をさらに備える。
【００２６】
好ましくは、データ入力手段は、新たなブロック変数のために確保される領域の位置を特定するための位置情報の入力を受ける。リンク手段は、位置情報と、選択されたブロック変数に関連付けられている変数のデータ属性とに基づいて、新たなブロック変数に関連付けられる変数のために確保される領域の位置情報を生成する。
【００２７】
この発明の他の局面に従うと、プログラムは、制御対象機器との間でデータを通信する通信装置に転送可能なデータ形式で、通信装置によるデータ処理を実現する制御プログラムに対応する制御データを生成するエディタ装置として、コンピュータを機能させる。このプログラムはコンピュータに、外部からの入力を受け付けるステップと、入力に基づいて、データが格納される領域を識別するための変数と、制御プログラムにおける変数の属性とを定義するステップと、入力に基づいて、制御プログラムにより参照されるブロック変数を定義するステップと、入力に基づいて複数の変数の中から選択された少なくとも１つ以上の変数と、ブロック変数とを関連付けるステップと、関連付けられた変数およびブロック変数とデータ形式とに基づいて、制御データを生成するステップとを実行させる。
【００２８】
この発明の他の局面に従うと、記録媒体は、上記のプログラムを格納した媒体である。
【００２９】
この発明の他の局面に従うと、制御システムは、制御対象機器の動作を制御する制御装置と、制御対象機器の状態を表示する機能および制御対象機器の動作の制御を指示する機能を有する表示器とを備える。表示器は、画面を表示する表示手段と、制御装置とデータを通信する通信手段と、データが格納される領域を識別する変数と、複数の変数の中から選択された１つ以上の変数が関連付けられたブロック変数と、ブロック変数に関連付けられた１つ以上の変数に対応するデータに基づいて、制御対象機器の状態の表示と動作の制御の指示とを実行する制御プログラムとを格納する記憶手段と、ブロック変数と制御プログラムとに基づいて、少なくとも１つ以上の変数により特定されるデータを使用する処理を実行する制御手段とを備える。制御装置は、表示器と通信する通信手段と、表示器からのデータに基づいて、制御対象機器の動作を制御する動作制御手段とを備える。
【００３０】
この発明のさらに他の局面に従うと、表示器は、制御装置により動作が制御される制御対象機器の状態を表示する機能と制御対象機器の動作の制御を指示する機能とを有する。この表示器は、制御対象機器の状態を表わす画面を表示する表示手段と、制御装置とデータを通信する通信手段と、データが格納される領域を識別する変数と、複数の変数の中から選択された１つ以上の変数が関連付けられたブロック変数と、ブロック変数に関連付けられた１つ以上の変数に対応するデータに基づいて、制御対象機器の状態の表示と動作の制御の指示とを実行する制御プログラムとを格納する記憶手段と、ブロック変数と制御プログラムとに基づいて、少なくとも１つ以上の変数により特定されるデータを使用する処理を実行する制御手段とを備える。
【００３１】
好ましくは、表示器は、ブロック変数に基づいて制御プログラムを実行するデータ処理装置と通信するデータ通信手段と、予め定められた条件の成立に応じて、ブロック変数に関連付けられた変数により特定される領域に格納されているデータの送信指示を生成する生成手段とをさらに備える。制御プログラムは、ブロック変数を参照することによりブロック変数に関連付けられている１つ以上の変数に対応するデータを記憶手段から読み出す処理と、読み出されたデータに基づいて送信データを生成する処理とを実現するための通信プログラムを含む。制御手段は、送信指示に基づいて通信プログラムを実行することにより、データ通信手段に、データ処理装置に対して送信データを送信させる。
【発明の効果】
【００３２】
本発明に係るエディタ装置によると、定義される個別変数はブロック変数に関連付けられる。そのため、ブロック変数への一度のアクセスにより、複数の個別変数へのアクセスが実現される。その結果、階層化されたプログラムの設計を容易にすることができる。また、ブロック変数単位でのデータ通信が可能になるため、個々の変数のデータをそれぞれ通信する場合に比べて、パフォーマンスの低下を防止することができる。また、複数のデータ項目の通信を容易に実行することができる。さらに、ブロック変数単位でのデータのアクセスが可能になるため、データ型が異なるデータの同時性を維持することができる。
【００３３】
本発明に係るプログラムによると、上記の作用を奏する表示器としてコンピュータを機能させることができる。
【００３４】
本発明に係る記録媒体がコンピュータに装着されると、当該コンピュータは、上記の作用を奏する表示器として機能することができる。
【００３５】
本発明に係る制御システムによると、表示器における各変数へのアクセスは、ブロック変数ごとに実行される。その結果、当該制御システムを構成する表示器間において、ブロック変数単位でのデータ通信が可能になるため、個々の変数をデータ通信する場合に比べて、パフォーマンスの低下を防止することができる。また、各装置間における複数のデータ項目の通信を容易に実行することができる。さらに、ブロック変数単位でのデータのアクセスが可能になるため、当該制御システムにおいて、データ型が異なるデータの同時性を維持することができる。
【００３６】
本発明に係る表示器によると、ブロック変数にアクセスすることにより個別変数へのアクセスが可能になる。その結果、ブロック変数単位でのデータ通信が可能になるため、他の装置に個々の変数のデータを通信する場合に比べて、パフォーマンスの低下を防止することができる。また、当該他の装置との間で、複数のデータ項目の通信を容易に実行することができる。さらに、ブロック変数単位でのデータのアクセスが可能になるため、通信可能な他の装置との間で、データ型が異なるデータの同時性を維持することができる。
【発明を実施するための最良の形態】
【００３７】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【００３８】
図１を参照して、本発明の実施の形態に係る表示器１５０を使用するＦＡ（Factory Automation）システムについて説明する。図１は、ＦＡシステム１０のネットワーク構成を概略的に表わす図である。
【００３９】
ＦＡシステム１０は、中央監視装置１００と、表示器１５０，１５００と、制御ユニット１８０と、制御対象機器１９２，１９４とを含む。中央監視装置１００と表示器１５０，１５００とは、通信ネットワーク１０２を介してそれぞれ接続されている。表示器１５０は、通信ネットワーク１０２に接続され、中央監視装置１００と通信するための共通プロトコルインターフェース部１１０と、入力部１１１と、制御部１２０と、表示部１１２と、プロトコル情報記憶部１１３と、データ記憶部１１４と、ネットワーク１９０を介して制御ユニット１８０と通信するための専用プロトコルインターフェース部１３０とを含む。表示器１５００も、表示器１５０が有する構成と同様の構成を含む。中央監視装置１００は、たとえば工場における操業を管理する事務所に設置されるコンピュータである。
【００４０】
表示器１５０において、共通プロトコルインターフェース部１１０は、予め定められた共通プロトコルに基づいて中央監視装置１００から送信されたデータの入力を受けて制御部１２０に出力する。入力部１１１は、外部から指示の入力を受け付けて、その指示に応じた信号を制御部１２０に出力する。専用プロトコルインターフェース部１３０は、予め定められた専用プロトコルに基づいて制御ユニット１８０もしくは制御対象機器１９６，１９８から送信された信号を受信し、そのデータを制御部１２０に出力する。
【００４１】
制御部１２０は、データの転送時には、共通プロトコルに基づいて入力されたデータをプロトコル情報記憶部１１３に格納されている変換テーブルに基づいて専用プロトコルに応じたデータに変換する。なお、このような変換は、表示器１５０に所定の設定を行なうための設定用データの入力時には実行されない。また、制御部１２０は、専用プロトコルに基づいて表わされたデータを、当該変換テーブルに基づいて共通プロトコルに応じたデータに変換する。制御部１２０は、入力部１１１を介して入力される指示、あるいは予め定められた条件の成立に応じて、所定の画像を表示部１１２に表示させる。データ記憶部１１４は、専用プロトコルインターフェース部１３０あるいは共通プロトコルインターフェース部１１０を介して入力されたデータを格納する。この格納の態様については後述する。
【００４２】
上記の構成を有するＦＡシステム１０において、中央監視装置１００および表示器１５０は、たとえばＰＣ（Personal Computer）に所定のプログラムを実行させることにより実現される。このＰＣのハードウェア構成およびソフトウェア構成については、後述する。なお、本実施の形態においては、ＦＡシステム１０は、たとえば、ＬＡＮ（Local Area Network）等の通信ネットワークに、１台以上の制御対象機器を接続可能な表示器を複数台接続することにより構成されるが、システムの構成は、これに限られない。
【００４３】
図２を参照して、本実施の形態に係る表示器１５０および表示器１５０において使用される変数を登録するためのエディタ装置２００について説明する。図２は、表示器１５０およびエディタ装置２００の構成を概略的に表わすブロック図である。
【００４４】
なお、エディタ装置２００と表示器１５０とは、一般には常に接続されているわけではなく、たとえばエディタ装置２００において作成された制御データを表示器１５０にロードするときに、エディタ装置２００と表示器１５０とは一時的に接続される。ここで、制御データとは、たとえば、表示器１５０に所定の動作を実行させるための制御プログラムが、表示器１５０において実行可能な形式に変換されているものをいう。所定の動作は、たとえば制御ユニット１８０からのデータの入力の受け付け、他の表示器との間のデータ通信、中央監視装置１００その他のいわゆる上位システムとの間のデータ通信等を含む。
【００４５】
最初に、エディタ装置２００について説明する。エディタ装置２００は、相互にデータバスで接続された制御部２１０と、データを一時的に記憶するためのメモリ部２１２と、ＦＡシステムの構築のための設定データを登録するための画面等を表示する表示部２１４と、利用者からのデータの入力を受け付ける入力部２１６と、記録媒体２２０が装着される駆動部２１８と、外部とデータの入出力をするための通信部２２２と、大容量のデータを記憶するためのデータ記憶部２４０と、変数の登録その他の編集機能を実現するためのエディタ部２３０とを含む。エディタ部２３０は、登録エディタ２３２と、変数管理部２３４と、プログラムエディタ２３６とを含む。
【００４６】
制御部２１０は、たとえばＣＰＵ、あるいはＭＰＵ（Micro Processing Unit）その他の演算装置により実現される。制御部２１０は、所定の指示を検出すると、予めデータ記憶部２４０に格納されていた初期データと処理プログラムとをメモリ部２１２に読み出し、メモリ部２１２において逐次演算することにより、そのプログラムに基づく処理を実行する。
【００４７】
メモリ部２１２は、たとえばＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）その他のメモリにより実現される。メモリ部２１２には、初期データなどの固定データ、あるいは制御部２１０による一時的な処理結果その他のデータが格納される。このデータの格納の態様については後述する。
【００４８】
表示部２１４は、たとえばディスプレイ装置により実現される。表示部２１４は、制御部２１０から受信した信号に基づいて、画面を表示する。たとえば表示部２１４は、メモリ部２１２の所定の領域に格納されている画像データを逐次読み出し、そのデータに基づいて、上記変数の登録のための画面を表示する。この画面は、たとえばマトリクス構造からなるテーブル形式にて表示される。この表示の態様は、後述する。
【００４９】
入力部２１６は、キーボード、マウスその他の入力装置により実現される。利用者は、この入力部２１６を介して、画面の編集のためのデータ、画面に含まれる画像に関連付けられる設定データ等を入力することができる。入力部２１６は、このような外部からの入力を受け付けて、当該入力に応じた信号を制御部２１０に出力する。
【００５０】
駆動部２１８は、装着された記録媒体２２０からデータを読み出したり、あるいは記録媒体２２０にデータを書き込んだりする。この駆動部２１８は、ＣＤ（Compact Disk）ドライブ装置、メモリカードドライブ装置等により実現される。
【００５１】
通信部２２２は、通信回線を介して外部の装置と通信するためのインタフェースである。通信部２２２は、たとえばＵＳＢ（Universal Serial Bus）規格、ＲＳ（Recommendation Standard）−２３２Ｃ規格、ＲＳ−４２２規格等のインターフェースであるが、これらに限られず、通信回線を介して接続される機器とデータを通信することができるものであればよい。
【００５２】
エディタ部２３０において、登録エディタ２３２は、データ記憶部２４０に格納されているプログラムおよびデータに基づいて、ＦＡシステムを構成する参加局を登録するための機能を実現する。ここで、参加局とは、ＦＡシステムのネットワークに接続される表示器、制御装置その他のデータ処理装置をいう。当該参加局が登録されると、参加局を識別するための参加局名、通信ネットワーク上における参加局のネットワークアドレス等がデータ記憶部２４０に一旦格納される。
【００５３】
また、登録エディタ２３２は、表示器１５０その他の参加局が使用する変数を登録する機能を実現する。この機能が実現されると、変数の名称、変数のデータ型、変数のデータサイズ等がそれぞれ関連付けられて、データ記憶部２４０に一旦格納される。ここで、変数とは、データを格納するためにメモリに確保される領域を識別するための名称をいう。たとえば所定の処理を実現するプログラムが実行されている場合に、当該変数はプログラムにより参照される。変数は、個別変数と、個別変数が含まれるブロック変数とを含む。ここで、個別変数とは、他の変数が含まれ得ない変数をいう。ブロック変数とは、個別変数あるいは他のブロック変数が関連付けられている変数をいう。この関連付けにより、たとえば、ブロック変数とブロック変数における位置とを指定することにより、ブロック変数に含まれる個別変数あるいは他のブロック変数の値が参照可能となる。換言すれば、ブロック変数と当該位置とを引数として与えることにより、対応する個別変数あるいはブロック変数の値を得ることができる。ブロック変数の設定の態様については、後述する。
【００５４】
さらに、登録エディタ２３２は、当該システムにおけるデータ通信の設定を実現する。すなわち、通信ネットワーク上においてデータの通信処理を実現するための配信条件がデータ記憶部２４０に格納される。配信条件は、たとえばデータの送信元および送信先の参加局の識別名称、送信タイミング、送信対象となるデータが参照される変数の名称等を含む。
【００５５】
さらに、登録エディタ２３２は、当該システムにおいて、各変数を使用して実行されるデータの分析処理等（以下、適宜「アクション」と表わす。）のアプリケーションプログラムを実行するための設定データの登録を実現する。アクションは、表計算ソフトウェア、データベースソフトウェアその他の汎用アプリケーションを使用する処理を含む。設定データは、たとえば当該アプリケーションプログラムにおいて使用される変数の名称、当該汎用アプリケーションが実行されるコンピュータシステムへの送信タイミング等を含む。
【００５６】
登録エディタ２３２は、予め準備されたこれらのデータおよびプログラムに基づいて、利用者が登録を希望する変数を生成する。登録エディタ２３２は、別の処理において作成された画面に配置された画像ブロックの各制御対象機器に対する入出力番号（アドレス）を割り付ける。登録エディタ２３２によって定義された変数、データ属性、あるいはアドレス等は、データ記憶部２４０に格納される。これらのデータは、利用者の指示に基づいて、所定の動作プログラムと共に実行可能形式、たとえばＢＣＤ（Binary Coded Decimal）コードに変換される。当該変換により生成されたデータは、通信部２２２を介して接続された表示器１５０に転送される。表示器１５０において、エディタ装置２００から入力されたデータは、通信部２２２との間で一時的に接続される表示器１５０のメンテナンスポート１５４を介して、ＦＥＰＲＯＭ（Flash Erasable Programmable ROM）１６４に転送され、所定の領域に格納される。
【００５７】
変数管理部２３４は、登録エディタ２３２により登録された個別変数からブロック変数の設定を実現する。この設定は、たとえば以下のようにして実現される。最初に、ユーザは、登録エディタ２３２を使用して個別変数を登録する。次に、ユーザは登録エディタ２３２を使用してブロック変数を登録する。ユーザは、変数管理部２３４を実行して、特定のブロック変数に含まれる個別変数を選択し、ブロック変数への関連付けを実行する。この関連付けが実行されると、各個別変数の名称、アドレス、属性等が、ブロック変数の名称をキーにして、それぞれ対応付けられる。これにより、たとえば、ブロック変数を参照する場合には、ブロック変数の名称と共にアドレスを指定することにより、ブロック変数に含まれる個別変数へのアクセスが可能になる。個別変数のブロック変数への関連付けを表わすデータは、データ記憶部２４０に格納される。
【００５８】
プログラムエディタ２３６は、登録エディタ２３２によって登録された参加局、変数、配信条件などのデータと、変数管理部２３４により生成されたブロック変数における個別変数の関連付けを表わすデータとに基づいて、表示器１５０に転送するためのデータを生成する。このデータは、たとえば表示器１５０において実行可能な形式に変換されたプログラムを含む。このようにして生成されたプログラムは、表示器１５０によるデータ処理、たとえば表示器１５０におけるデータの表示、他の表示器との通信その他の処理を実現することができる。
【００５９】
データ記憶部２４０は、たとえばハードディスク装置により実現されるが、その他の記憶装置であってもよい。このデータ記憶部２４０は、制御部２１０により、データの書き込みあるいは読み出しが制御される。
【００６０】
図２を再び参照して、表示器１５０について説明する。表示器１５０は、相互にデータバスで接続された、ＣＰＵ（Central Processing Unit）１５２と、メンテナンスポート１５４と、メモリ１６０と、通信コントローラ１６６と、ＶＲＡＭ（Video RAM）１６８と、グラフィックコントローラ１７０と、ディスプレイ１７２と、タッチパネル１７４と、タッチパネルコントローラ１７６と、Ｉ／Ｏ（Input/Output）制御ＩＦ（Interface）１７８と、Ｉ／Ｏユニット１７９とを含む。
【００６１】
メモリ１６０は、ＤＲＡＭ（Dynamic RAM）１６２と、ＦＥＰＲＯＭ１６４とを含む。Ｉ／Ｏユニット１７９は、制御対象機器１９６，１９８その他の機器を接続するための入出力端子、入出力回路等を含む。この場合、複数の入出力端子が、備えられてもよい。Ｉ／Ｏ制御ＩＦ１７８は、ＣＰＵ１５２とＩ／Ｏユニット１７９との間の信号の授受を仲介するインターフェース回路である。Ｉ／Ｏ制御ＩＦ１７８は、入出力メモリ、Ｄ／Ａ（Digital to Analog）変換器、Ａ／Ｄ（Analog to Digital）変換器等を含む。
【００６２】
ＣＰＵ１５２は、ＦＥＰＲＯＭ１６４に格納されたプログラムに基づいて、制御ユニット１８０との通信処理、ディスプレイ１７２の表示処理等を実行する。ＣＰＵ１５２はまた、タッチパネル１７４における入力に基づいて、その入力に対応する処理を実行する。
【００６３】
メンテナンスポート１５４は、表示器１５０の保守時等において一時的に使用されるポートである。表示器１５０に表示させる画面を変更する場合、あるいは画面の表示制御の設定を変更する場合等において、新しいデータがメンテナンスポート１５４から入力される。これにより、表示器１５０と制御ユニット１８０との通信が妨げられることなく、表示器１５０が実行する制御プログラム、当該画面の表示のためのデータ等を更新することができる。
【００６４】
ＤＲＡＭ１６２は、主にディスプレイ１７２における表示制御その他の処理に用いられるデータを一時的に記憶する。ＦＥＰＲＯＭ１６４は、書換可能なフラッシュメモリである。フラッシュメモリは、稼動部を持たず、また衝撃に強いため、制御ユニット１８０に接続される環境が劣悪であっても、安定して作動することができる。
【００６５】
通信コントローラ１６６は、ＣＰＵ１５２の制御により、制御ユニット１８０との間でデータ通信を行なう。通信されるデータには、制御ユニット１８０から報告される、実績その他の稼動状況を表わす操業データ、あるいは、表示器１５０から制御ユニット１８０に送信される設定データ等が含まれる。
【００６６】
ＶＲＡＭ１６８は、ＣＰＵ１５２の制御により画面表示用のデータを一時的に保存する。このデータは、グラフィックコントローラ１７０に読み出され、ディスプレイ１７２に出力される。これにより、ディスプレイ１７２は、所定の画面を表示することができる。
【００６７】
タッチパネルコントローラ１７６は、タッチパネル１７４とデータバスとの間に配置され、タッチパネル１７４の押下を検出する。タッチパネルコントローラ１７６がその押下を検出すると、その位置あるいは入力されたデータは、メモリ１６０に出力される。
【００６８】
上記の構成のように、本実施の形態に係る表示器１５０は、Ｉ／Ｏ制御ＩＦ１７８およびＩ／Ｏユニット１７９を有するため、制御ユニット１８０を介することなく、制御対象機器に接続することができる。したがって、表示器１５０は、たとえば制御対象機器１９６，１９８の状態の表示あるいは動作の制御の指示を直接実行するように構成してもよい。
【００６９】
なお、表示器１５０の構成は、上記のものに限られない。たとえば、プログラマブル表示器は、グラフィック表示を行なうため、操作盤、スイッチ、表示灯などの機能を有する他、デバイスその他の制御対象機器の稼動状況や作業指示のような管理のための各種のモニタ、機器に対する設定値を入力する端末としての機能を備えていればよい。
【００７０】
また、本実施の形態においては、表示器１５０は、制御対象機器等の状態を表わすデータの表示画面を有するユーザインターフェース機能を備える制御装置として機能する。しかし、制御装置の態様は、表示器１５０の構成でなくてもよい。たとえば、他の局面において、本発明に係る構成を備える制御装置は、画面の表示機能を備えず、専用プロトコルにより表わされるデータと、共通プロトコルにより表わされるデータとを変換する機能を備えるものであってもよい。すなわち、複数の個別変数が含まれるブロック変数に含まれるデータの通信機能と変換機能とを備える装置であってもよい。当該装置でも、ブロック変数へのアクセスにより複数の個別変数のデータの読み出し、送信データの生成、書き込みなどを実現することができるため、通信データ量の抑制、データ処理の時間の短縮などを達成することができる。
【００７１】
このような表示器で表示される制御画面は、画面作成ソフトウェアによって利用者が作成することができる。このようなソフトウェアがコンピュータで起動されると、編集のための画面が表示される。利用者は、その画面において、制御画面を構成する画像ブロックを任意に使用したり、操作の可否を設定することができる。本実施の形態に係るエディタ装置２００は、画面作成ソフトウェアが実行されるコンピュータシステムにおいても実現可能であるし、別個のコンピュータシステムにおいても実現可能である。画面の作成の態様は特に限られない。
【００７２】
ここで、上記のブロック変数および個別変数が表示器１５０において使用される場合には、個別変数は、当該画面中に表示される画像（すなわち画像ブロック）に関連付けられているものもある。この画像は、表示器１５０に接続される制御対象機器、あるいは表示器１５０に接続されている制御ユニット１８０が制御可能な制御対象機器における動作の状態を表わすための画像である。他方、上述の他の局面における制御装置のように、単にデータの変換機能と通信機能とを実現する装置において当該ブロック変数および当該個別変数が使用される場合には、個別変数は、画像ブロックに関連付けられなくてもよい。
【００７３】
図２をさらに参照して、表示器１５０に接続される制御ユニット１８０について説明する。制御ユニット１８０は、ネットワーク１９０を介して表示器１５０に接続される。制御ユニット１８０はさらに、制御対象機器１９２，１９４に接続される。制御ユニット１８０は、制御機能部として、予め設定された制御プログラムを実行することにより、制御対象機器１９２，１９４の動作を制御する。制御対象機器１９２，１９４は、たとえば自動組立て機、ベルトコンベアなどであるが、これらの機器に限られない。また、制御ユニット１８０に接続される制御対象機器の数は、特定の数に限られない。
【００７４】
図３を参照して、エディタ装置２００を実現するためのコンピュータシステム３００について説明する。図３は、コンピュータシステム３００のハードウェア構成を表すブロック図である。
【００７５】
コンピュータシステム３００は、相互にデータバスで接続されたＣＰＵ３１０と、マウス３２０と、キーボード３３０と、ＲＡＭ３４０と、ハードディスク３５０と、ＣＤ−ＲＯＭ駆動装置３６０と、モニタ３８０と、通信ＩＦ（Interface）３９０とを含む。駆動装置３６０には、ＣＤ−ＲＯＭ３６２が装着される。
【００７６】
コンピュータシステム３００において、エディタ装置２００を実現するための処理は、各ハードウェアとＣＰＵ３１０により実行されるソフトウェアとによって実現される。このようなソフトウェアは、ＲＡＭ３４０あるいはハードディスク３５０に予め格納されている場合がある。あるいはＣＤ−ＲＯＭ３６２その他の着脱可能な情報記録媒体に格納されて流通し、駆動装置３６０その他のデータ読取装置によりその記録媒体から読み取られて、ハードディスク３５０に一旦格納される場合もある。そのソフトウェアは、ハードディスク３５０から読み出されて、ＣＰＵ３１０によって実行される。
【００７７】
図３に示されるコンピュータシステム３００のハードウェア自体は、一般的なものである。したがって、本発明の最も本質的な部分は、ＲＡＭ３４０、ハードディスク３５０、ＣＤ−ＲＯＭ３６２その他の情報記録媒体に格納されたソフトウェアであるともいえる。なお、コンピュータシステム３００の各ハードウェアの動作は周知であるので、ここではその説明は繰り返さない。
【００７８】
図４を参照して、本実施の形態に係るエディタ装置２００のデータ構造について説明する。図４は、エディタ装置２００を実現するコンピュータシステム３００のハードディスク３５０におけるデータの格納の一態様を表わす図である。
【００７９】
使用者の入力により定義されたブロック変数を表わすデータは、領域Ｆ４０２，４０４，４０６などに格納されている。使用者の入力により定義された個別変数を表わすデータは、領域Ｆ４１２〜Ｆ４１８にそれぞれ格納されている。各個別変数には、後述するように、使用者の入力により定義されたデータタイプ、個別変数の配列の態様、アドレス、デバイス個数その他の情報が関連付けられて格納されている。
【００８０】
すなわち、使用者がブロック変数と個別変数とを関連付けた場合、ブロック変数を識別するためのデータは、領域Ｆ４２２に格納される。そのブロック変数に対応して関連付けられた個別変数を識別するためのデータは、領域Ｆ４２４に格納される。このデータは、使用者が変数を特定してデータ処理の設定を行なう場合に使用される。データ処理には、上記のように、他の表示器との間のデータ通信、中央監視装置１００その他の上位システムへのデータ送信等が含まれる。
【００８１】
個別変数のデータタイプを表わすデータは、領域Ｆ４２６に格納される。なお、個別変数のブロック変数に対する関連付けに関し、異なるデータタイプの個別変数が割り当て可能である。たとえば、ブロック変数「Ｂｌｏｃｋ１」において、データタイプが「１６Ｂｉｔ（Ｓｉｇｎｅｄ）」である個別変数および「Ｂｉｔ」である個別変数がそれぞれ割り当てられてもよい。
【００８２】
個別変数のデータに対応するアドレスの属性を表わす情報は、領域Ｆ４２８に格納される。個別変数のデータを格納するために確保されるデータ領域を表わすアドレスは、領域Ｆ４３０に格納される。なお、当該データ領域は、連続的に確保される必要はない。すなわち、各データ領域は、それぞれ離散して確保されてもよい。アドレスが正確に定義されている限り、各個別変数は、連続的にあるいは非連続的に割り当てられたいずれの領域においても格納可能であり、そして参照可能である。個別変数に対応するデバイスの個数を表わす情報は、領域Ｆ４３２に格納される。使用者が定義したその他の情報は、領域Ｆ４３４に格納される。
【００８３】
より具体的には、たとえば個別変数「＿Ｄ１０１０２＿ＢＩＴ％ｂ」は、アドレスＤ１０１におけるビット列「２」に関連付けられている。個別変数「＿Ｄ１０１０２＿ＢＩＴＢ１」は、アドレスＤ１０１におけるビット列「８」に関連付けられている。
【００８４】
次に、図５〜図７を参照して、本実施の形態に係るエディタ装置２００の制御構造について説明する。図５は、エディタ装置２００を実現するコンピュータシステム３００のＣＰＵ３１０が実行する処理の手順を表わすフローチャートである。この処理は、使用者が編集プログラムの実行指示を入力した場合に、当該プログラムが実行されることにより実現される。
【００８５】
図５を参照して、ステップＳ５０２にて、ＣＰＵ３１０は、使用者の指示に応答して、参加局、個別変数、ブロック変数その他表示器１５０において使用されるデータを登録するためのメイン画面を表示する。ステップＳ５０４にて、ＣＰＵ３１０は、使用者により入力される指示に基づいて、参加局の登録メニューが選択されたか否かを判断する。その登録メニューが選択されたと判断すると（ステップＳ５０４にてＹＥＳ）、処理はステップＳ５０６に移される。そうでない場合には（ステップＳ５０４にてＮＯ）、処理はステップＳ５０８に移される。
【００８６】
ステップＳ５０６にて、ＣＰＵ３１０は、マウス３２０あるいはキーボード３３０を介して入力される指示に基づいて、参加局の登録処理を実行する。この処理が実行されると、図１に示されるＦＡシステム１０を構成するための表示器１５０が登録され、データのコピー、配信その他の通信処理が可能になる。
【００８７】
ステップＳ５０８にて、ＣＰＵ３１０は、使用者により入力される指示に基づいて変数の登録メニューが選択されたか否かを判断する。そのメニューが選択されたと判断すると（ステップＳ５０８にてＹＥＳ）、処理はステップＳ６００に移される。そうでない場合には（ステップＳ５０８にてＮＯ）、処理はステップＳ５１２に移される。
【００８８】
ステップＳ６００にて、ＣＰＵ３１０は、後述する変数の登録処理を実行する。この処理が実行されると、制御対象機器の状態あるいは動作を制御するためのデータ、通信の対象となるデータ等が対応付けられる変数が登録される。
【００８９】
ステップＳ５１２にて、ＣＰＵ３１０は、使用者により入力される指示に基づいて、アクションのメニューが選択されたか否かを判断する。ここで、アクションとは、上述のように、表示器１５０に収集されるデータに基づいて行なわれるデータ処理、たとえばデータの集計あるいはログの記録などの処理を含む。この処理は、たとえば表計算ソフトあるいはデータベースソフトなどにより実現される。アクションのメニューが選択されたと判断すると（ステップＳ５１２にてＹＥＳ）、処理はステップＳ５１４に移される。そうでない場合は（ステップＳ５１２にＮＯ）、処理はステップＳ５１６に移される。
【００９０】
ステップＳ５１４にて、ＣＰＵ３１０は、アクションの登録処理を実行する。この処理が実行されると、使用者が選択したブロック変数に含まれる個別変数を使用するアプリケーションを実行するための設定が行なわれる。すなわち、当該アプリケーションの実行時に参照される個別変数の関連付けが、ブロック変数を介して行なわれる。たとえば、ブロック変数の名称と当該ブロック変数における個別変数の位置とが、そのアプリケーションの処理に組み込まれる。これにより、使用者は、個別変数の設定を行なうことなく、ブロック変数を使用して設定することにより、データ処理のための設定を行うことができる。
【００９１】
ステップＳ５１６にて、ＣＰＵ３１０は、使用者により入力される指示に基づいて保存メニューが選択されたか否かを判断する。保存メニューが選択されたと判断すると（ステップＳ５１６にてＹＥＳ）、処理はステップＳ５１８に移される。そうでない場合には（ステップＳ５１６にてＮＯ）、処理はステップＳ５２０に移される。ステップＳ５１８にて、ＣＰＵ３１０は、ＲＡＭ３４０の所定の領域に一時的に格納されているデータを、ハードディスク３５０の所定の領域に格納する。
【００９２】
ステップＳ５２０にて、ＣＰＵ３１０は、使用者により入力される指示に基づいて転送メニューが選択されたか否かを判断する。転送メニューが選択されたと判断すると（ステップＳ５２０にてＹＥＳ）、処理はステップＳ７００に移される。そうでない場合には（ステップＳ５２０にてＮＯ）、処理はステップＳ５２２に移される。ステップＳ７００にて、ＣＰＵ３１０は、予め定められたデータの転送処理を実行する。この処理が実行されると、ＲＡＭ３４０あるいはハードディスク３５０に格納されているデータは、ケーブル２５０を介して接続される表示器１５０に転送するために必要なデータ形式に変換される。
【００９３】
ステップＳ５２２にて、ＣＰＵ３１０は、使用者により入力される指示に基づいてプログラムの終了が指示されたか否かを判断する。プログラムの終了が指示されたと判断すると（ステップＳ５２２にてＹＥＳ）、処理は終了する。そうでない場合には（ステップＳ５２２にてＮＯ）、処理はステップＳ５０４に戻される。
【００９４】
図６は、ＣＰＵ３１０が実行する変数の登録処理の手順を表わすフローチャートである。登録される変数には、個別変数とブロック変数とが含まれる。
【００９５】
ステップＳ６０２にて、ＣＰＵ３１０は、プログラムを実行して、モニタ３８０に変数の登録を行なうための画面を表示させる。ステップＳ６０４にて、ＣＰＵ３１０は、マウス３２０あるいはキーボード３３０を介して入力される個別変数の登録のためのデータの入力を受け付ける。ステップＳ６０６にて、ＣＰＵ３１０は、使用者により入力される指示に基づいてハードディスク３５０の所定の領域に個別変数のデータを格納する。
【００９６】
ステップＳ６０８にて、ＣＰＵ３１０は、使用者により入力される指示に基づいてブロック変数の登録のための画面の表示指示を検知する。この処理は、たとえば使用者が表示画面に示される「ブロック変数の登録」と表わされたボタン（図示しない）を押下することにより実行される。ここで、ブロック変数とは、他の変数が関連付けられる変数をいう。なお、ブロック変数に関連付けられる各個別変数のデータ型は、同一である必要はなく、異なってもよい。たとえば、ビット型の個別変数と整数型の個別変数とが含まれていてもよい。また、ブロック変数に含まれる各個別変数のアドレスは、必ずしも連続である必要はなく、離散的であってもよい。さらに、新たなブロック変数に、他のブロック変数が関連付けられてもよい。この場合、ブロック変数に関連付けられる変数として、他のブロック変数を選択することにより、当該他のブロック変数を識別するデータが、当該新たなブロック変数に関連付けられる。
【００９７】
ステップＳ６１０にて、ＣＰＵ３１０は、マウス３２０あるいはキーボード３３０を介して入力されるブロック変数の登録のためのデータを受け付ける。入力されたデータは、ＲＡＭ３４０の所定の領域に一時的に格納される。ステップＳ６１２にて、ＣＰＵ３１０は、使用者により入力される指示に基づいてハードディスク３５０の所定の領域に入力データを格納する。
【００９８】
ステップＳ６１４にて、ＣＰＵ３１０は、マウス３２０あるいはキーボード３３０を介して入力されるデータに基づいて、ブロック変数に関連付けられる個別変数のデータの入力を受け付ける。この関連付けは、たとえば使用者が選択したブロック変数について、所定の領域に、既に登録されている個別変数の名称を入力することにより実現される。あるいは、名称の入力に代えて、いわゆるプルダウンメニュー形式のように、ブロック変数に関連付け可能な個別変数を一覧表示させ、その表示の中から関連付けの対象となる個別変数を選択するようにしてもよい。なお、当該個別変数のデータは、すべて入力される必要はなく、たとえば既に登録されている他のブロック変数に使用されているデータが流用されてもよい。流用されるデータには、各個別変数のデータ属性等が含まれる。このようにすると、同一の型属性を有する複数のブロック変数を、効率よく登録することができる。
【００９９】
ステップＳ６１６にて、ＣＰＵ３１０は、外部から入力されたデータに基づいて、ＲＡＭ３４０上のデータの保存指示が入力されたか否かを判断する。その指示が入力されたと判断すると（ステップＳ６１６にてＹＥＳ）、処理はステップＳ６１８に移される。そうでない場合には（ステップＳ６１６にてＮＯ）、処理はステップＳ６１４に戻される。
【０１００】
ステップＳ６１８にて、ＣＰＵ３１０は、定義されたブロック変数と関連付けが指定された個別変数の各々とを関連付けるためのデータを生成する。具体的には、たとえば特定のブロック変数を識別するデータに対して、関連付けが指定された個別変数の各々の変数名と、各個別変数のアドレスとが付与される。なお、関連付けの態様は、これに限られない。
【０１０１】
ステップＳ６２０にて、ＣＰＵ３１０は、使用者による指示に基づいてハードディスク３５０の所定の領域に関連付けのためのデータを格納する。この処理が実行されると、当該ブロック変数と個別変数とは、図４に示される領域Ｆ４２２からＦ４３４のような態様で格納される。
【０１０２】
図７は、エディタ装置２００を実現するコンピュータシステム３００のＣＰＵ３１０が実行するデータの転送処理の手順を表わすフローチャートである。
【０１０３】
ステップＳ７１０にて、ＣＰＵ３１０は、使用者による操作に応じて、ハードディスク３５０から転送可能な変数のデータをＲＡＭ３４０に読み出す。ステップＳ７２０にて、ＣＰＵ３１０は、使用者による操作に基づいて、データ転送の対象となる変数の選択を検知する。ステップＳ７３０にて、ＣＰＵ３１０は、ＲＡＭ３４０の所定の領域に選択された変数のデータを一時的に格納する。ステップＳ７４０にて、ＣＰＵ３１０は、転送先の表示器（たとえば表示器１５０）の選択を検知する。
【０１０４】
ステップＳ７５０にて、ＣＰＵ３１０は、転送処理の実行指示が入力されたか否かを判断する。その実行指示が入力されたと判断すると（ステップＳ７５０にてＹＥＳ）、処理はステップＳ７６０に移される。そうでない場合には（ステップＳ７５０にてＮＯ）、処理はステップＳ７２０に戻される。
【０１０５】
ステップＳ７６０にて、ＣＰＵ３１０は、ＲＡＭ３４０に格納されている各データの形式を予め定められたデータ形式に変換して本体データを生成する。ここで本体データとは表示器１５０への転送の際に送信される具体的なデータをいう。ステップＳ７７０にて、ＣＰＵ３１０は、生成した本体データに予め定められた項目を有するヘッダデータを付加して転送データを生成する。ステップＳ７８０にて、ＣＰＵ３１０は、転送データのデータ形式を転送先に応じて予め定められたデータ形式に変換する。さらに、ＣＰＵ３１０は、使用者により選択された他の表示器（たとえば表示器１５０）に、生成した転送データを送信する。その後、処理はメイン処理に戻される。なお、転送処理の態様は、図７に示されるものに限られない。
【０１０６】
ここで、図８を参照して、エディタ装置２００により生成される転送データの構造について説明する。図８は、図７に示される転送処理の実行時に生成される転送データの構成を概念的に表わす図である。
【０１０７】
転送データは、送信ヘッダＤ８１０と本体データＤ８２０とを含む。送信ヘッダＤ８１０は、データ項目として、送信先アドレス、送信元アドレス、送信日時、タスク名、およびブロック名を含む。タスク名は、送信先の装置において実行される処理を特定するための名称（たとえば、データ配信、実績報告等）である。ブロック名は、たとえば図４の領域Ｆ４２２に示されるブロック変数の名称である。なお、複数のブロック変数が特定のタスクに含まれており、各ブロック変数が当該タスクに関連付けられている場合には、当該タスクの名称のみがヘッダに含まれる構成であってもよい。
【０１０８】
本体データＤ８２０は、データ項目として、転送処理の実行時に指定された変数を表わすデータ、たとえば第１の変数データ、第２の変数データなどを含む。各々の変数データは、ブロック変数との関連付けが分かるデータである。転送データは、送信前に予め定められたデータ形式（たとえばＢＣＤコード）に変換される。このようなデータが指定された送信先に送信されると、当該転送データを受信した装置は、そのデータに含まれる各変数データを、所定の領域に格納する。転送データは、実行可能な形式で作成されているため、受信した装置（たとえば表示器１５０）は、そのデータに基づいて所定の処理を実行することができる。
【０１０９】
また、係る構成を有する転送データは、表示器間のデータ配信時においても使用可能である。この場合、送信先アドレスは、他の表示器のネットワークアドレスである。送信元アドレスは、データの配信元の表示器のネットワークアドレスである。ブロック名は、各表示器において定義されているブロック変数の名称である。このような送信ヘッダに対して、本体データに、当該ブロック変数に関連付けられる個別変数のデータがそれぞれ格納される。
【０１１０】
上記の構成を有するデータが、特定の表示器から他の表示器あるいは中央監視装置１００等に送信されると、送信先の各装置は、送信ヘッダに含まれるブロック変数を認識して、本体データに含まれている各個別変数に対応するデータを読み取ることができる。これにより、相互にデータを通信可能な装置間におけるデータの同一性を維持することができる。
【０１１１】
以上のようにして、本発明の実施の形態に係るエディタ装置２００によると、使用者による選択操作に応じて、個別に登録された個別変数をブロック変数に関連付けるための処理が実行される。この処理が実行されると、ブロック変数には、当該個別変数を識別するデータ、データ型、アドレス等が関連付けられる。このようにすると、たとえば、使用者が、作成中の制御プログラムに、ブロック変数と当該ブロック変数における個別変数の位置とを特定するコードを含めて、ソースコードを記述することにより、ブロック変数に対するアクセスによって個別変数のデータを参照する処理を実現することができる。これにより、制御プログラムを効率よく作成することできる。また、ブロック変数が実際に使用される表示器その他の装置に転送可能なデータは、上記の関連付けが維持された状態で作成される。
【０１１２】
このデータが入力された表示器その他の装置は、複数の個別変数の各々により参照される各データを送信する場合、ブロック変数を送信対象に設定することにより、当該ブロック変数に関連付けられているすべての個別変数のデータを送信する。これにより、データ通信のパフォーマンスの低下を防止しつつ、装置間における複数のデータ項目の通信が容易に実現される。
【０１１３】
また、ブロック変数には、異なるデータ型の個別変数が関連付け可能である。したがって、ブロック変数を単位としてデータ通信を行うことにより、データ型が異なるデータの同時性を維持することができる。
【０１１４】
また、プログラムの実行時に参照される変数をブロック変数とするプログラムを作成することができるため、階層化されたプログラムの設計を容易にすることができる。より特定的には、階層化されたプログラムの設計が容易になる。
【０１１５】
次に、図９を参照して、本発明の実施の形態に係る表示器１５０を実現するコンピュータシステム９００について説明する。図９は、コンピュータシステム９００のハードウェア構成を表わすブロック図である。
【０１１６】
コンピュータシステム９００は、ＣＰＵ９１０と、キーボード９３０と、ＲＡＭ９４０と、ハードディスク９５０と、ＣＤ−ＲＯＭ駆動装置９６０と、モニタ９８０と、通信ＩＦ９９０とを含む。モニタ９８０は、予め定められた領域に対する指示の入力が可能なタッチパネル９２０を含む。ＣＤ−ＲＯＭ駆動装置９６０には、ＣＤ−ＲＯＭ９６２が装着される。
【０１１７】
コンピュータシステム９００において、表示器１５０を実現するための処理は、各ハードウェアおよびＣＰＵ９１０により実行されるソフトウェアによって実現される。このようなソフトウェアは、ＲＡＭ９４０あるいはハードディスク９５０に予め格納されている場合がある。あるいはＣＤ−ＲＯＭ９６２その他の着脱可能な情報記録媒体に格納されて流通し、ＣＤ−ＲＯＭ駆動装置９６０その他のデータ読取装置によりその記録媒体から読み取られて、ハードディスク９５０に一旦格納される場合もある。そのソフトウェアは、ハードディスク９５０から読み出されて、ＣＰＵ９１０によって実行される。
【０１１８】
図９に示されるコンピュータシステム９００のハードウェア自体は、一般的なものである。したがって、本発明の最も本質的な部分は、ＲＡＭ９４０、ハードディスク９５０、ＣＤ−ＲＯＭ９６２その他の情報記録媒体に格納されたソフトウェアであるともいえる。なお、コンピュータシステム９００の各ハードウェアの動作は周知であるので、ここではその説明は繰り返さない。
【０１１９】
図１０を参照して、本実施の形態に係る表示器１５０のデータ構造について説明する。図１０は、表示器１５０を実現するコンピュータシステム９００のハードディスク９５０におけるデータの格納の態様を概念的に表わす図である。
【０１２０】
図１０に示されるように、タスク名は、領域Ｄ１０００に格納される。ここでタスク名とは使用者の設定により定められた一連の命令を特定する名称をいう。当該タスク名に対応した命令を実際に実行させるための起動条件を表わす番号は、領域Ｄ１０１０に格納される。データの配信元であるコピー元参加局を表わすデータは、領域Ｄ１０２０に格納される。配信の対象となるデータが格納されている変数は、領域Ｄ１０３０に格納される。データが配信されるコピー先参加局を表わすデータは、領域Ｄ１０４０に格納される。コピー先参加局においてデータが格納される場所は、領域Ｄ１０５０に格納される。
【０１２１】
上記の各タスクに関連付けられている起動条件番号は、具体的な作動条件に関連付けられている。起動条件番号は、領域Ｄ１０６０に格納される。各番号に対応付けられている第１の条件は、領域Ｄ１０７０に格納される。第２の条件は、それが存在する場合には領域Ｄ１０８０に格納される。第２の条件が設定されていない場合には、その領域にはたとえば「ＮＵＬＬ」が格納される。なお、起動条件を構成する具体的な条件の数は図１０に示されるものに限られない。
【０１２２】
このように、各タスクに対して予め設定された起動条件が関連付けられることにより、転送対象となるデータの性質に応じて、データ転送のタイミングを制御することができる。したがって、使用者は、コピー先の参加局において、実績データ、制御データその他のデータを必要に応じて適宜更新することができる。
【０１２３】
さらに、ハードディスク３５０は、エディタ装置２００において登録されたデータを格納している。すなわち、ハードディスク３５０は、図４に示されるようなブロック変数と個別変数との関連付けを表わすデータを実行可能な形式で記憶している。当該データは、ネットワークに接続されている表示器ごとに格納されている。したがって、後述するように、これらのデータを有する各表示器は、ブロック変数単位での通信が可能になるため、個別変数の通信のためのヘッダデータの送信が不要になる。
【０１２４】
なお、表示器以外の装置、たとえば図１に示される中央監視装置１００も、同様のデータ構造を格納していてもよい。これにより、各表示器からブロック単位で送信されるデータを識別することができる。また、そのデータに含まれる個別変数のデータを、上記の関連付けに基づいて取得することができる。したがって、複数の変数のデータがブロック変数に集約されて一括して送信された場合であっても、中央監視装置１００は、各データの処理を個別に実行することができる。
【０１２５】
図１１を参照して、本実施の形態に係る表示器１５０の制御構造について説明する。図１１は、表示器１５０を実現するコンピュータシステム９００のＣＰＵ９１０が実行するデータの送信処理の手順を表わすフローチャートである。この処理は、データの送信条件が成立したときに送信プログラムが実行されることにより実現される。また、この処理は、表示器１５０がＦＡシステム１０において、作動可能に設定された後、制御対象機器または表示器１５０の停止、あるいは電源の遮断等不測の事態が生じない限り、継続して実行される。したがって、送信条件が毎日一定時刻にデータを送信するという条件である場合には、毎日、当該送信処理が実行される。あるいは、特定の個別変数の値が変化した時、たとえば「０」および「１」のいずれかの値を取る個別変数が、「０」から「１」に代わった時等に実行される。
【０１２６】
ステップＳ１１１０にて、ＣＰＵ９１０は、送信対象となるデータがブロック変数のデータであるか否かを判断する。この判断は、たとえば、送信条件に含まれている変数の属性を参照することにより行なわれる。送信対象となるデータがブロック変数のデータであると判断されると(ステップＳ１１１０にてＹＥＳ）、処理はステップＳ１１３０に移される。そうでない場合には（ステップＳ１１２０にてＮＯ）、処理はステップＳ１１２０に移される。
【０１２７】
ステップＳ１１２０にて、ＣＰＵ９１０は、ハードディスク９５０の所定の領域から、送信対象となる個別変数のデータを読み込み、ＲＡＭ９４０に一時的に書き込む。これにより、通常のデータ通信のための処理が実行される。
【０１２８】
ステップＳ１１３０にて、ＣＰＵ９１０は、ハードディスク９５０の所定の領域から、ブロック変数に含まれている各個別変数のデータを順次読み込み、ＲＡＭ９４０に一時的に書き込む。ここで、各個別変数の各々のデータの読み込みは、たとえば次のように行なわれる。最初に、ブロック変数に含まれる個別変数の中の最初に関連付けが行なわれている個別変数のアドレスが読み出される。ＣＰＵ９１０は、そのアドレスに基づいて当該個別変数のデータを読み出す。次に、当該個別変数の次に関連付けが行なわれている個別変数のアドレスが読み出される。ＣＰＵ９１０は、そのアドレスを参照して、個別変数のデータを読み出す。ＣＰＵ９１０は、ブロック変数に含まれる個別変数のすべてについて、この処理を繰り返す。
【０１２９】
ステップＳ１１４０にて、ＣＰＵ９１０は、ＲＡＭ９４０に一時的に書き込んだデータから、送信パケットを生成する。この送信パケットは、送信ヘッダと本体データとを含む。たとえば、ＣＰＵ９１０は、コンピュータシステム９００の時刻情報と、予め設定されている送信条件と、ブロック変数とに基づいて、送信ヘッダを生成する。送信ヘッダは、たとえば送信先アドレスと、送信元アドレスと、送信日時と、送信タスク名称と、ブロック変数名称とを含む。ＣＰＵ９１０は、さらに、ＲＡＭ９４０に書き込んだ各個別変数のデータを結合して、本体データを生成する。この場合、各個別変数は予め定められたサイズに揃えられたうえで結合されてもよいし、当該サイズに揃えられなくてもよい。当該送信パケットを受信する装置との間で、データ型が整合していればよい。
【０１３０】
ステップＳ１１５０にて、ＣＰＵ９１０は、通信ＩＦ９９０を介して、送信先アドレスに基づいて、データ送信が指定された参加局、たとえば図１に示される他の表示器１５０あるいは中央監視装置１００に、送信パケットを送信する。
【０１３１】
図１２を参照して、本発明の実施の形態に係る表示器１５０と通信可能なコンピュータシステム１２００について説明する。図１２は、コンピュータシステム１２００のハードウェア構成を表わすブロック図である。
【０１３２】
コンピュータシステム１２００は、ＣＰＵ１２１０と、キーボード１２３０と、ＲＡＭ１２４０と、ハードディスク１２５０と、ＣＤ−ＲＯＭ駆動装置１２６０と、モニタ１２８０と、通信ＩＦ１２９０とを含む。モニタ１２８０は、タッチパネル１２２０を含む。ＣＤ−ＲＯＭ駆動装置１２６０には、ＣＤ−ＲＯＭ１２６２が装着される。コンピュータシステム１２００は、通信回線(図示しない）を介して、表示器１５０を実現するコンピュータシステム９００に接続される。すなわち、コンピュータシステム９００，１２００の関係は、たとえば図１に示されるように、ＦＡシステム１０を構成する複数の表示器１５０，１５００の関係に対応する。
【０１３３】
コンピュータシステム１２００において、データ通信機能を実現するための処理は、各ハードウェアおよびＣＰＵ１２１０により実行されるソフトウェアによって実現される。このようなソフトウェアは、ＲＡＭ１２４０あるいはハードディスク１２５０に予め格納されている場合がある。あるいはＣＤ−ＲＯＭ１２６２その他の着脱可能な情報記録媒体に格納されて流通し、ＣＤ−ＲＯＭ駆動装置１２６０その他のデータ読取装置によりその記録媒体から読み取られて、ハードディスク１２５０に一旦格納される場合もある。そのソフトウェアは、ハードディスク１２５０から読み出されて、ＣＰＵ１２１０によって実行される。
【０１３４】
図１２に示されるコンピュータシステム１２００のハードウェア自体は、一般的なものである。したがって、当該処理の本質は、上記ソフトウェアであるともいえる。なお、コンピュータシステム１２００の各ハードウェアの動作は周知であるので、ここではその説明は繰り返さない。
【０１３５】
図１３を参照して、コンピュータシステム１２００の制御構造について説明する。図１３は、コンピュータシステム１２００のＣＰＵ１２１０が実行する受信処理の手順を表わすフローチャートである。ここでは、コンピュータシステム１２００は、表示器１５０を実現するコンピュータシステム９００と通信可能な装置として機能する。
【０１３６】
ステップＳ１３１０にて、ＣＰＵ１２１０は、通信回線を介して、コンピュータシステム９００から送信されたパケットを受信する。ステップＳ１３２０にて、ＣＰＵ１２１０は、受信されたパケットから、本体データを取得する。
【０１３７】
ステップＳ１３３０にて、ＣＰＵ２１０は、受信されたパケットの送信ヘッダの情報に基づいて、受信されたデータがブロック変数のためのデータであるか否かを判断する。受信データがブロック変数のためのデータであると判断すると（ステップＳ１３３０にてＹＥＳ）、処理はステップＳ１３５０に移される。そうでない場合には（ステップＳ１３３０にてＮＯ）、処理はステップＳ１３４０に移される。
【０１３８】
ステップＳ１３４０にて、ＣＰＵ１２１０は、本体データから、各個別変数のデータを取得し、ＲＡＭ１２４０の所定の領域に一時的に格納する。ステップＳ１３５０にて、ＣＰＵ１２１０は、ブロック変数に含まれている各個別変数を識別するためのデータに基づいて、各個別変数のデータを取得する。ステップＳ１３６０にて、ＣＰＵ１２１０は、個別変数のデータとして読み出したデータを、ハードディスク１２５０における当該個別変数に対応する領域に格納する。
【０１３９】
図１４および図１５を参照して、本実施の形態に係るエディタ装置２００に示される表示画面について説明する。図１４は、エディタ装置２００として機能するコンピュータシステム３００のモニタ３８０が表示する変数の登録画面を表わす図である。
【０１４０】
コンピュータシステム３００が使用者の指示に基づいてエディタプログラムを起動すると、図１４に示されるような画面が表示される。この表示は、ハードディスク３５０に格納されているデータ（図４）に基づいて行なわれる。
【０１４１】
領域１４１０に、エディタ装置に含まれる機能の一覧が表示される。当該機能は、たとえば、参加局の登録、変数の登録、アクションの登録、保存、および転送処理のためのメニュー等を含む。コンピュータシステム３００の使用者が、マウス３２０あるいはキーボード３３０により選択操作を実行すると、コンピュータシステム３００は、選択された処理を実行する。たとえば、表示１４１２は、変数の登録画面が選択されていることを表わす。
【０１４２】
領域１４２０に、使用者により定義されたブロック変数（すなわち「Ａｒｅａ１」）が表示される。領域１４３０に、ブロック変数「Ｂｌｏｃｋ１」が表示される。ブロック変数「Ｂｌｏｃｋ１」に関連付けられる変数は、「変数」の列に表示される。各変数のデータタイプは、「データタイプ」と示される列に表示される。変数の配置の属性を表わすデータは、「連続」と示される列に表示される。変数のために確保されている領域の位置を表わすデータは、「アドレス」と示される列に表示される。
【０１４３】
領域１４２２に、ブロック変数「Ａｒｅａ１」とそのブロック変数に含まれる他の変数との関連付けを表わすための画像が表示される。この表示は、たとえば他の領域と異なる表示態様で示されるインジケータである。同様に、領域１４３２に、ブロック変数「Ｂｌｏｃｋ１」とそのブロック変数に含まれる他の変数との関連付けを表わすための画像が表示される。この画像も、たとえば、上記のようなインジケータとして表示される。すなわち、当該画像の右側に表示される変数は、当該画像が対応付けられるブロック変数に関連付けられている。このような表示により、ブロック変数の登録者以外の使用者も、どの変数がブロック変数に含まれているかを容易に識別することができる。
【０１４４】
図１４において、ブロック変数「Ｂｌｏｃｋ１」には、個別変数＿Ｄ１００＿ＷＯＲＤＢ１，＿Ｄ１０１＿ＷＯＲＤ，＿Ｄ１０１０２＿ＢＩＴ％ｂ，＿Ｄ１０１０８＿ＢＩＴＢ１が、それぞれ関連付けられている。したがって、たとえばプログラムの作成者がブロック変数「Ｂｌｏｃｋ１」と特定の位置とを指定することにより、当該ブロック変数に含まれるいずれかの個別変数を参照する処理を、当該プログラムに実現させることができる。
【０１４５】
さらに、ブロック変数「Ａｒｅａ１」には、ブロック変数「Ｂｌｏｃｋ１」と個別変数リザーブとが、それぞれ関連付けられている。これにより、ブロック変数「Ａｒｅａ１」を参照するプログラムにおいて、上述の態様で指定することにより、ブロック変数「Ｂｌｏｃｋ１」に関連付けられている個別変数の値を使用することができる。
【０１４６】
図１５は、エディタ装置２００として機能するコンピュータシステム３００のモニタ３８０が表示する配信条件の設定画面の一態様を表わす図である。
【０１４７】
使用者が配信条件の設定画面の表示指示を入力すると、当該画面が表示される。この画面において、その配信のタスク名（たとえば「Ｃｏｐｙ１」）は、領域１５１０に示される。そのタスクに関連付けられる起動条件番号は、領域１５２０に示される。その番号に対応する具体的な起動条件は、領域１５３０に表示される。これらの表示は、ハードディスク３５０に格納されているデータに基づいて行なわれる。また、起動条件を定めるためのデータは、追加可能であってもよい。
【０１４８】
領域１５４０には、配信される変数（Ｍ１＿Ｄ１０２＿ＷＯＲＤ）および個数（１）と、当該変数の配信先の参加局（ＡＧＰ２）、機器名（ＰＬＣ１０）、および配信先における変数の名称（Ｍ２＿Ｄ０１００＿ＷＯＲＤ）が示されている。使用者は、このような設定項目を入力することにより、各変数の配信条件を登録することができる。
【０１４９】
なお、図１５に示される画面は、コンピュータシステム３００と通信可能な他の装置においても、同様に表示可能である。たとえば、図１において、各表示器１５０の表示部が、上記画面を表示することができる。あるいは、中央監視装置１００に同様の画面を表示させてもよい。これにより、ネットワーク接続された各装置間におけるデータの配信を効率よく実現することができる。
【０１５０】
以上のようにして、本発明の実施の形態に係る表示器によると、個別に登録された変数から選択された少なくとも１つ以上の変数がブロック変数に関連付けられているデータ構造を有する。プログラムが当該ブロック変数を参照すると、ブロック変数に関連付けられた個別変数が特定され、各個別変数に対応するデータが参照される。
【０１５１】
上記の構成によると、表示器は、複数の個別変数の各々についてデータの書き込みあるいは読み出しを実行する場合、ブロック変数にアクセスすることにより、当該書き込みあるいは読み出しを実行することができる。すなわち、複数の個別変数へのアクセスが１回の処理により実現される。そのため、個別変数を参照して所定の処理を実行するプログラムの設計をブロック変数単位で参照する構成にすることができる。これにより、プログラムの構造を簡略化することができる。
【０１５２】
また、複数の個別変数についてデータを送信する場合、送信対象としてブロック変数を設定することにより、ブロック変数単位でデータの送信および受信をすることができる。このようにすると、変数データを送信するごとに付与される送信ヘッダは、ブロック変数について付与すればよい。その結果、個別変数ごとにヘッダを付与する必要がなくなるため、通信されるヘッダの数を削減することができる。これにより、ネットワークを介したデータ通信のパフォーマンスの低下を防止しつつ、装置間における複数のデータ項目の通信が容易に実現される。また、ブロック変数単位での通信が可能になるため、データ型が異なるデータの同時性を維持することができる。
【０１５３】
さらに、複数の変数へのアクセスが一括で行なわれることになるため、各個別変数のデータの同時性が維持される。したがって、たとえばデータの同期化のためのバックアップ処理の実行頻度を少なくすることができる。
【０１５４】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【０１５５】
本発明は、エディタ装置、たとえば、制御対象機器の状態の表示と動作の制御の指示とを実行する制御プログラムに対応する処理データを、前記表示器に転送可能な形式で作成するエディタ装置に適用可能である。
【０１５６】
本発明は、他の局面においては、表示器、たとえば制御装置により動作が制御される制御対象機器の状態を表示する機能と前記制御対象機器の動作の制御を指示する機能とを有する表示器に適用可能である。
【図面の簡単な説明】
【０１５７】
【図１】本発明の実施の形態に係る表示器を使用するＦＡシステムのネットワーク構成を概略的に表わす図である。
【図２】本発明の実施の形態に係る表示器およびエディタ装置の構成を概略的に表わすブロック図である。
【図３】コンピュータシステムのハードウェア構成を表すブロック図である。
【図４】本発明の実施の形態に係るエディタ装置のデータ構造を概念的に表わす図である。
【図５】本発明の実施の形態に係るエディタ装置が実行する処理の手順を表わすフローチャート（その１）である。
【図６】本発明の実施の形態に係るエディタ装置が実行する処理の手順を表わすフローチャート（その２）である。
【図７】本発明の実施の形態に係るエディタ装置が実行する処理の手順を表わすフローチャート（その３）である。
【図８】本発明の実施の形態に係るエディタ装置により生成される転送データの構造を概念的に表わす図である。
【図９】本発明の実施の形態に係る表示器を実現するコンピュータシステムのハードウェア構成を表わすブロック図である。
【図１０】本発明の実施の形態に係る表示器のデータ構造を概念的に表わす図である。
【図１１】本発明の実施の形態に係る表示器が実行する処理の手順を表わすフローチャートである。
【図１２】本発明の実施の形態に係る表示器と通信可能な情報通信装置として機能するコンピュータシステムのハードウェア構成を表わすブロック図である。
【図１３】図１２に示されるコンピュータシステムが実行する処理の手順を表わすフローチャートである。
【図１４】本発明の実施の形態に係るエディタ装置が表示する画面を表わす図（その１）である。
【図１５】本発明の実施の形態に係るエディタ装置が表示する画面を表わす図（その２）である。
【符号の説明】
【０１５８】
１０  ＦＡシステム、１００  中央監視装置、１１０  共通プロトコルインターフェース部、１１１  入力部、１１２  表示部、１１３  プロトコル情報記憶部、１１４  データ記憶部、１２０  制御部、１３０  専用プロトコルインターフェース部、１５０，１５００  表示器、１５２，３１０，９１０  ＣＰＵ、１５４  メンテナンスポート、１６０，１８４  メモリ、１６２  ＤＲＡＭ、１６４  ＦＥＰＲＯＭ、１６６  通信コントローラ、１６８  ＶＲＡＭ、１７０  グラフィックコントローラ、１７２  ディスプレイ、１７４  タッチパネル、１７６  タッチパネルコントローラ、１７８  Ｉ／Ｏ制御ＩＦ、１７９  Ｉ／Ｏユニット、１８０  制御ユニット、１８６  通信ＩＦ、１９０  ネットワーク、１９２，１９４，１９６，１９８  制御対象機器、２００  エディタ装置、２１０  制御部、２１２  メモリ部、２１４  表示部、２１６  入力部、２１８  駆動部、２２０  記録媒体、２２２  通信部、２３０  エディタ部、２３２  登録エディタ、２３４  変数管理部、２３６  プログラムエディタ、２４０  データ記憶部、３００，９００，１２００  コンピュータシステム、３２０  マウス、３３０，９３０，１２３０  キーボード、３４０，９４０，１２４０  ＲＡＭ、３５０，９５０，１２５０  ハードディスク、３６０，９６０，１２６０  ＣＤ−ＲＯＭ駆動装置、３６２，９６２，１２６２  ＣＤ−ＲＯＭ、９２０，１２２０  タッチパネル。
【図１】
2006099258.tif 000003
【図２】
2006099258.tif 000004
【図３】
2006099258.tif 000005
【図４】
2006099258.tif 000006
【図５】
2006099258.tif 000007
【図６】
2006099258.tif 000008
【図７】
2006099258.tif 000009
【図８】
2006099258.tif 000010
【図９】
2006099258.tif 000011
【図１０】
2006099258.tif 000012
【図１１】
2006099258.tif 000013
【図１２】
2006099258.tif 000014
【図１３】
2006099258.tif 000015
【図１４】
2006099258.tif 000016
【図１５】
2006099258.tif 000017