(57)【特許請求の範囲】
【請求項１】
アクセス対象を特定するアクセス対象情報を含む指示データを出力する指示データ出力手段と、
上記アクセス対象情報の示すデバイスのアドレスにアクセスして、当該デバイスの内容を、上記指示データに応じて変更するか、上記デバイスの内容を取得するかの少なくとも一方を行うアクセス手段とを備えるデータ処理装置であって、
デバイスを特定するアドレスを示すアドレス情報と当該デバイスに対応する変数を特定する識別子との対応関係を記憶するデータベースを備え、
上記アクセス対象情報が上記アドレス情報を示す場合、上記アクセス手段は、当該アドレス情報が示すアドレスへアクセスし、
上記アクセス対象情報が上記変数の識別子を示す場合、上記アクセス手段は、上記データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報が示すアドレスへアクセスし、
上記アクセス対象情報のうち、特定のアドレスに予め対応付けられているデバイスのアクセス対象情報は、当該デバイスのアドレスであり、
上記アクセス対象情報のうち、上記特定のアドレスに予め対応付けられていないデバイスのアクセス対象情報のサイズは、上記特定のアドレスに予め対応付けられているデバイスのアクセス対象情報のサイズと同じであり、
上記特定のアドレスに予め対応付けられていないデバイスのアクセス対象情報は、第１および第２領域に分割されており、上記第１領域には、当該デバイスに対応する変数の型用の記憶領域における、当該変数の記憶領域のオフセットが設定され、当該デバイスの記憶領域が複数のサブフィールドから構成されている場合には上記第２領域にアクセス対象とするサブフィールドを示す識別子が設定されていることを特徴とするデータ処理装置。
【請求項２】
請求項１記載のデータ処理装置の各手段としてコンピュータを動作させることによって、当該コンピュータを上記データ処理装置として動作させるプログラム。
【請求項３】
請求項２記載のプログラムを作成するエディタ装置。
【請求項４】
請求項２記載のプログラムが記録されたコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、グラフィック操作パネルやＰＬＣなどのデータ処理装置、および、これらのグラフィック操作パネルやＰＬＣなどが動作する際に参照する画面データやラダープログラムなどの指示データを生成する指示データ生成装置、並びに、そのプログラムおよび記録媒体に関するものである。
【背景技術】
【０００２】
従来から、制御システムでは、プログラマブルロジックコントローラ（ＰＬＣ）などと呼ばれる産業用制御装置が、シーケンス制御をはじめとする各種制御を実現するために使用されている。
【０００３】
上記ＰＬＣには、プログラムエディタ装置において作成されたラダープログラムが予め格納されており、当該ラダープログラムに基づいて、当該ＰＬＣに接続されたデバイスを制御している。
【０００４】
ここで、プログラムエディタ装置では、ラダープログラムを作成する際、ラダー図に配置するラダー記号に、当該ラダー記号に対応するデバイスのアドレスを直接入力したり、例えば、後述する特許文献１および２のように、デバイスとは、変数と対応付けておき、変数とアドレスとを対応付け、さらに、変数に名称を付すことによって、アドレスに代えて、変数名を使用したりしている。
【０００５】
また、後述する特許文献３のように、上記制御システムのＨＭＩ（Human Machine Interface ）として使用されるグラフィック操作パネルの操作画面を作成する際にも、操作画面上に配置される部品に、その部品に対応するデバイスのアドレスまたは変数を対応付けることによって、操作画面を示す画面データを生成することが行われている。
【特許文献１】特開２００３−０８５１１９号公報（公開日：2003年３月２０日）
【特許文献２】特開２００５−１２９０２６号公報（公開日：2005年５月１９日）
【特許文献３】特開２００１−０７５６１２号公報（公開日：2001年３月２３日）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来の構成において、ＰＬＣやグラフィック操作パネルに接続されるデバイスと変数とを対応付ける場合と同様に、一時的にデータを格納するために機器内に確保される記憶領域に変数を対応付ける場合にも、変数を当該記憶領域のアドレスと対応付けようとすると、ラダープログラムや操作画面のエディタ装置を操作するユーザが、当該一時的なデータの格納場所として、記憶領域のいずれを確保するかを管理し、そのアドレスを設定する必要があり、手間がかかるという問題を生じる。
【０００７】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、例えば、グラフィック操作パネルやＰＬＣなどのデータ処理装置、および、これらのグラフィック操作パネルやＰＬＣなどが動作する際に参照する画面データやラダープログラムなどの指示データを生成する指示データ生成装置において、特定のアドレスには予め対応付けられていないデバイスの変数を生成する際の手間を削減することにある。
【課題を解決するための手段】
【０００８】
本発明に係る指示データ生成装置は、上記課題を解決するために、データ処理装置の動作を示す指示データを生成する生成手段を備えた指示データ生成装置において、上記データ処理装置は、上記指示データに含まれるアクセス対象情報の示すデバイスにアクセスして、当該デバイスの内容を、上記指示データに応じて変更するか、上記デバイスの内容を取得するかの少なくとも一方を行うアクセス手段と、デバイスを特定するアドレスを示すアドレス情報と当該デバイスに対応する変数を特定する識別子との対応関係を記憶するデータベースとを備え、当該アクセス手段は、アクセス対象となるデバイスが変数の識別子で特定された場合、上記データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報が示すアドレスへアクセスするものであり、上記指示データ生成装置は、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域を自動割付すると共に、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報との対応関係を上記データベースに記憶する自動割付手段を備え、上記生成手段は、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成して、上記アクセス手段に、当該自動割付された記憶領域にアクセスさせることを特徴としている。
【０００９】
上記構成では、指示データ生成装置の自動割付手段は、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域を自動割付すると共に、当該変数の識別子（例えば、変数名など）と当該記憶領域のアドレスを示すアドレス情報との対応関係を上記データベースに記憶する。
【００１０】
また、指示データ生成装置の生成手段は、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成する。
【００１１】
一方、データ処理装置のアクセス手段は、上記指示データに含まれるアクセス対象情報の示すデバイスにアクセスして、当該デバイスの内容を、上記指示データに応じて変更するか、上記デバイスの内容を取得するかしており、アクセス対象となるデバイスが変数の識別子で特定された場合、上記データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報が示すアドレスへアクセスする。
【００１２】
ここで、上記生成手段が、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際に、当該記憶領域のアドレスを示すアドレス情報を含む指示データを生成した場合、上記データ処理装置のアクセス手段は、上記指示データに含まれるアクセス対象情報の示すデバイスにアクセスする。
【００１３】
これとは逆に、上記指示データ生成装置の生成手段が、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際に、当該デバイスに対応する変数の識別子を示すアクセス対象情報が含まれた指示データを生成した場合、データ処理装置のアクセス手段は、上記データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報が示す自動割付された記憶領域へアクセスする。
【００１４】
上記構成では、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域が自動割付され、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報との対応関係が上記データベースに記憶され、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成して、データ処理装置に、当該自動割付された記憶領域にアクセスさせる。
【００１５】
この結果、特定のアドレスに予め対応付けられているデバイスの変数を生成する場合と同様の手順で特定のアドレスには予め対応付けられていないデバイスの変数を生成する構成とは異なって、当該変数に対応するアドレスを指定しなくても、データ処理装置に、当該自動割付された記憶領域にアクセスさせることができ、当該変数を生成する際の手間を削減できる。
【００１６】
さらに、データ処理装置は、変数の識別子でアクセス対象が指定された場合、データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報の示すアドレスにアクセスするので、アドレスでの指定だけではなく、変数の識別子も受け付けることができる。この結果、アクセス対象を指定しやすい指示データ生成装置およびデータ処理装置を実現できる。
【００１７】
さらに、上記構成に加えて、上記自動割付手段は、上記自動割付される変数の型が予め定められた複数の型のうち、いずれの型であるかの入力を受け付け、自動割付される変数の各記憶領域が、それぞれの型毎に整列するように、各記憶領域を自動割付してもよい。
【００１８】
当該構成では、自動割付される変数の各記憶領域が、それぞれの型毎に整列するように、各記憶領域を自動割付されているので、例えば、各記憶領域が、それぞれの型に拘らず、生成された順に並べられている構成と比較して、記憶領域の使用効率、または、データ処理装置のアクセス手段が各記憶領域へアクセスする際の効率を向上できる。
【００１９】
また、上記構成に加えて、上記生成手段は、特定のアドレスに予め対応付けられているデバイスをアクセス対象とする際には、アクセス対象情報として、当該デバイスのアドレスを設定する一方、自動割り付けられた記憶領域に対応するデバイスをアクセス対象とする際には、上記特定のアドレスに予め対応付けられているデバイスの場合と同じサイズの上記アクセス対象情報を、第１および第２領域に分割すると共に、上記第１領域には、当該デバイスに対応する変数の型用の記憶領域における、当該変数の記憶領域のオフセットを設定し、当該デバイスの記憶領域が複数のフィールドから構成されている場合には上記第２領域にアクセス対象とするフィールドを示す値に設定してもよい。
【００２０】
ここで、上述したように、自動割付される変数の各記憶領域が、それぞれの型毎に整列するように、各記憶領域を自動割付されているので、ある変数の型用の記憶領域における、当該変数の記憶領域のオフセットを記憶するために必要な記憶容量は、ある変数の型用の記憶領域のアドレスを記憶するために必要な記憶容量よりも少なくなる。したがって、特定のアドレスに予め対応付けられているデバイスをアクセス対象とする際に設定されるアクセス対象情報が、上記特定のアドレスに予め対応付けられているデバイスの場合と同じサイズであった場合に、当該アクセス対象情報を第１および第２領域に分割したとしても、何ら支障なく、上記オフセットを第１領域に記憶できる。
【００２１】
さらに、あるデバイスの記憶領域が複数のフィールドから構成されている場合、当該デバイスをアクセス対象とする変数のアクセス対象情報の第２領域には、アクセス対象とするフィールドを示す値に設定される。したがって、１つのアクセス対象情報で、そのデバイスに対応する記憶領域とフィールドとを指定できるので、それぞれを個別に設定する場合よりも、アクセス手段が、自動割付された記憶領域にアクセスする際の効率を向上できる。
【００２２】
また、上記構成に加えて、制御プログラムの命令のオペランドとして、当該命令がアクセス対象とするデバイスに対応する変数を設定可能な制御プログラム編集手段と、操作画面上に配置される部品によって状態が表示されるデバイス、または、当該部品への操作に応じて状態を変更するデバイスに関連付けて、そのデバイスに対応する変数を設定する操作画面編集手段とを備え、上記特定のアドレスに予め対応付けられているデバイスを第１種デバイス、上記特定のアドレスには予め対応付けられていないデバイスを第２種デバイスとするとき、上記制御プログラム編集手段および操作画面編集手段は、未だ対応するデバイスが設定されていない変数を追加する際、当該変数が第１種デバイスに対応するものであるか第２種デバイスに対応するものであるかの初期設定が、互いに異なっていてもよい。
【００２３】
ここで、上記制御プログラム編集手段および操作画面編集手段は、これまでの経緯や、主として通信する相手の相違などによって、未だ対応するデバイスが設定されていない変数を追加する際に、上記第１および第２種デバイスのいずれを初期設定とする方がよいかが互いに異なっていることが多い。
【００２４】
したがって、上記制御プログラム編集手段および操作画面編集手段の初期設定が共通であれば、一方の編集手段では、設定の手間を低減できたとしても、他方の編集手段では、変数に第１または第２種デバイスの一方が初期設定された後、第１または第２種デバイスの他方に設定を変更する必要があり、手間がかかってしまう。
【００２５】
これに対して、上記指示データ生成装置では、上記制御プログラム編集手段および操作画面編集手段において、第１および第２種デバイスのうち、それぞれに適した方を初期設定とすることができるので、未だ対応するデバイスが設定されていない変数を追加する際の手間を削減できる。
【００２６】
また、上記構成に加えて、上記制御プログラム編集手段および操作画面編集手段は、未だ対応するデバイスが設定されていない変数を追加する際に、その変数の名前として設定される文字列が、予め定められたパターンにマッチする場合は、上記それぞれの初期設定に拘らず、上記第１および第２種デバイスのうち、当該パターンに対応して予め定められた方を、当該変数に対応付けてもよい。なお、上記パターンとしては、特定の文字で始めるパターンなどが好適に使用される。
【００２７】
上記構成では、その変数の名前として設定される文字列が、予め定められたパターンにマッチする場合は、上記それぞれの初期設定に拘らず、上記第１および第２種デバイスのうち、当該パターンに対応して予め定められた方を、当該変数に対応付ける。したがって、例えば、アドレスとしての数値を入力する場合、あるいは、変数名として、第１または第２種デバイスに特有の名前を設定する場合など、特定のパターンにマッチする場合には、第１および第２種デバイスのうち、初期設定とは異なる方を設定できる。この結果、未だ対応するデバイスが設定されていない変数を追加する際の手間を削減できる。
【００２８】
一方、本発明に係るデータ処理装置は、上記記載のいずれかの指示データ生成装置で生成された指示データに基づいて動作するデータ処理装置であって、上記指示データに含まれるアクセス対象情報の示すデバイスにアクセスして、当該デバイスの内容を、上記指示データに応じて変更するか、上記デバイスの内容を取得するかの少なくとも一方を行うアクセス手段と、デバイスを特定するアドレスを示すアドレス情報と当該デバイスに対応する変数を特定する識別子との対応関係を記憶するデータベースとを備えていることを特徴としている。
【００２９】
当該構成でも、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域が自動割付され、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報との対応関係が上記データベースに記憶され、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成する。一方、データ処理装置は、当該指示データに基づいて、自動割付された記憶領域にアクセスする。
【００３０】
この結果、特定のアドレスに予め対応付けられているデバイスの変数を生成する場合と同様の手順で特定のアドレスには予め対応付けられていないデバイスの変数を生成する構成とは異なって、当該変数に対応するアドレスを指定しなくても、データ処理装置に、当該自動割付された記憶領域にアクセスさせることができ、当該変数を生成する際の手間を削減できる。
【００３１】
さらに、データ処理装置は、変数の識別子でアクセス対象が指定された場合、データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報の示すアドレスにアクセスするので、アドレスでの指定だけではなく、変数の識別子も受け付けることができる。この結果、アクセス対象を指定しやすい指示データ生成装置およびデータ処理装置を実現できる。
【００３２】
ところで、上記指示データ生成装置およびデータ処理装置は、ハードウェアで実現してもよいし、プログラムをコンピュータに実行させることによって実現してもよい。具体的には、本発明に係るプログラムは、上記記載のいずれかの指示データ生成装置の各手段としてコンピュータを動作させることによって、当該コンピュータを上記指示データ生成装置として動作させるプログラム、あるいは、上記データ処理装置の各手段としてコンピュータを動作させることによって、当該コンピュータを上記データ処理装置として動作させるプログラムである。また、本発明に係る記録媒体には、これらのプログラムの少なくともいずれかが記録されている。
【００３３】
例えば、上記記録媒体をコンピュータが読み取るなどして、これらのプログラムがコンピュータによって実行されると、当該コンピュータは、上記指示データ生成装置またはデータ処理装置として動作する。したがって、上記と同様に、当該変数を生成する際の手間を削減でき、アクセス対象を指定しやすい指示データ生成装置またはデータ処理装置を実現できる。
【発明の効果】
【００３４】
本発明によれば、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域が自動割付され、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報との対応関係が上記データベースに記憶され、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成する。一方、データ処理装置は、当該指示データに基づいて、自動割付された記憶領域にアクセスする。
【００３５】
この結果、特定のアドレスに予め対応付けられているデバイスの変数を生成する場合と同様の手順で特定のアドレスには予め対応付けられていないデバイスの変数を生成する構成とは異なって、当該変数に対応するアドレスを指定しなくても、データ処理装置に、当該自動割付された記憶領域にアクセスさせることができ、当該変数を生成する際の手間を削減できる。
【００３６】
さらに、データ処理装置は、変数の識別子でアクセス対象が指定された場合、データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報の示すアドレスにアクセスするので、アドレスでの指定だけではなく、変数の識別子も受け付けることができる。この結果、アクセス対象を指定しやすい指示データ生成装置およびデータ処理装置を実現できる。
【発明を実施するための最良の形態】
【００３７】
本発明の一実施形態について図１ないし図１６に基づいて説明すると以下の通りである。すなわち、図２に示すように、本実施形態に係る制御システム１は、例えば、製造プラントなどに設けられたターゲットシステム２を制御するために好適に用いられており、例えば、ベルトコンベアー式の自動組付機など、当該ターゲットシステム２のデバイス（制御対象）２ａを制御するために用いられている。
【００３８】
当該制御システム１には、上記デバイス２ａを制御する制御装置としてのＰＬＣ１１と、多くの場合、制御対象近傍に配されると共に、制御システム１のＨＭＩとして、デバイス２ａの状態を表示し、オペレータによるデバイス２ａへの操作を受け付けるグラフィック操作パネル（データ処理装置）１２とを備えている。また、本実施形態に係るグラフィック操作パネル１２は、詳細は後述するように、ＰＬＣとしての機能も備えており、それぞれに対応するＰＬＣ１１だけではなく、自らが制御するデバイス２ａにも直接接続されている。
【００３９】
さらに、本実施形態に係る制御システム１では、各グラフィック操作パネル１２は、イーサネット（登録商標）などのＬＡＮ（ローカルエリアネットワーク）１３によって互いに接続されている。また、上記ＬＡＮ１３には、多くの場合、グラフィック操作パネル１２よりも離れた場所から、制御システム１全体を管理する制御用ホストコンピュータ１４が接続されている。
【００４０】
なお、上記各グラフィック操作パネル１２は、シリアルケーブルなどの通信経路を介して、それぞれに対応するＰＬＣ１１と接続されている。また、図２では、説明の便宜上、ＬＡＮ１３にグラフィック操作パネル１２が２台接続され、各グラフィック操作パネル１２には、ＰＬＣ１１およびデバイス２ａがそれぞれ１台ずつ接続されると共に、各ＰＬＣ１１にデバイス２ａが１台接続されている場合を例示しているが、当然ながら、それぞれの接続台数は任意に設定できる。
【００４１】
また、デバイスは、デバイスアドレスや後述する変数により特定可能で、しかも、状態を取得したり、制御（変更）できるものであれば、例えば、デバイス２ａ自体であってもよいし、例えば、ＰＬＣ１１やグラフィック操作パネル１２の記憶装置など、制御システム１に設けられた記憶装置の一領域を示していてもよい。
【００４２】
ここで、上記制御システム１では、制御システム１に必須の構成であり、しかも、ＨＭＩとして動作するため、演算能力に余力のあるグラフィック操作パネル１２が通信の大半を処理するように構成されている。さらに、各グラフィック操作パネル１２は、自らに接続されているＰＬＣ１１の機種に固有の専用プロトコルと、ＬＡＮ１３での共通プロトコルとを変換して、他のグラフィック操作パネル１２や制御用ホストコンピュータ１４と、ＰＬＣ１１との通信を中継する。なお、共通プロトコルと専用プロトコルとの間のプロトコル変換には、同じ指示に同じコードが割り当てられるように予め定められた共通のコマンドと上記共通のコマンドに対応するＰＬＣ１１固有のコマンドとの間の変換や、データやアドレスの表現方法の変換、デバイスアドレスと、当該デバイスアドレスに対応し、しかも、デバイスアドレスとは異なる値に設定可能な変数や変数の名称（変数名）との変換なども含まれる。
【００４３】
これにより、グラフィック操作パネル１２および制御用ホストコンピュータ１４は、他のグラフィック操作パネル１２に接続されているＰＬＣ１１の機種に拘らず、ＬＡＮ１３を介して共通のプロトコルで通信できる。この結果、互いに異なる機種のＰＬＣ１１の混在する制御システム１が比較的容易に実現されている。
【００４４】
上記グラフィック操作パネル１２は、後述する画面データに基づいて、デバイスの状態を画面表示する際の動作や、画面への操作に応じてデバイスの状態を制御する際の動作を特定するものであって、ＰＬＣ１１と通信するＰＬＣ・ＩＦ部２１と、上記ＬＡＮ１３に接続するためのＬＡＮ・ＩＦ部２２と、例えば、液晶表示装置などからなるディスプレイ２３と、ディスプレイ２３の画面上に配されたタッチパネル２４と、上記各部材２１〜２４を制御するＨＭＩ処理部２５と、当該ＨＭＩ処理部２５によって参照され、上記画面データおよび変数が格納される記憶部２６とを備えている。
【００４５】
本実施形態に係る画面データは、画面を表示し、操作を受け付ける際の動作を特定するデータであって、例えば、解像度などの点で互いに異なるディスプレイ２３を有するグラフィック操作パネル１２間、あるいは、制御用ホストコンピュータ１４であっても当該画面データを共用できるように、抽象化されたオブジェクトデータ（手続きおよびデータ）として表現されている。一方、ＨＭＩ処理部２５は、当該画面データを、自機器に応じた機械語に翻訳して実行することで画面表示や操作受付などの動作を実行する。なお、オブジェクトの内部変数やデバイス２ａの状態を記憶する領域、あるいは、作業領域など、ＨＭＩ処理部２５が画面データを実行する際に必要な記憶領域は、上記記憶部２６に確保される。
【００４６】
より詳細には、本実施形態に係る画面データは、ＨＭＩ処理部２５がオブジェクトを生成するためのデータであって、ディスプレイ２３の画面に表示可能な部品（図形要素）に対応するオブジェクトの集合としてのパネルオブジェクトを生成するためのデータを含んでいる。
【００４７】
また、本実施形態に係る画面データでは、オブジェクトがアドレスによって直接デバイスと関連付けられているのではなく、デバイスを特定する情報（アドレスなど）に対応する変数を介してデバイスと対応付けられている。本実施形態では、オブジェクトは、属性によって変数と対応付けられており、上記各オブジェクトのうち、デバイスに関連するオブジェクトは、それぞれに対応付けられた変数を示すデバイス属性ＡＤを有しており、当該属性ＡＤによって、上記変数のいずれかに対応付けできる。
【００４８】
一方、デバイスに対応付けられた変数には、属性として、デバイスの状態を示す内容と、デバイスアドレスなど、デバイスを特定するための情報とが設けられている。また、上記パネルオブジェクトを生成するためのデータには、デバイスに対応付け可能な変数のうち、上記各オブジェクトのいずれかから参照されている変数のリストが含まれている。
【００４９】
また、上記各オブジェクトは、画面上の領域と対応付けることができる。本実施形態では、当該対応付けも、オブジェクトの属性によって行われており、上記各オブジェクトのうち、例えば、画面上の一領域にデバイスの状態を表示するオブジェクトや、画面上の一領域への操作を受け付けるオブジェクトには、当該領域を示す領域属性ＡＡが付加されている。これにより、オブジェクトは、当該領域属性ＡＡの値を参照すれば、自らがデバイスの状態を表示すべき画面上の領域を特定したり、操作を受け付けるべき画面上の領域をＨＭＩ処理部２５へ伝えたりすることができる。
【００５０】
さらに、各オブジェクトは、自らの属性を参照しながら、メッセージに応じて、あるいは、予め定められたタイミングで、例えば、他のオブジェクトとのやり取りや、他の部材２１〜２４・２６とのやり取りなど、予め定められた処理を行うことができる。なお、当該処理としては、例えば、変数の内容取得や、変数の内容変更、ディスプレイ２３への表示などが挙げられる。
【００５１】
例えば、デバイスの状態を表示するオブジェクトは、例えば、デバイスの状態表示を示すメッセージを受け取った時点や、予め定められたタイミング（例えば、予め定められた時間が経過した時点など）になると、上記デバイス属性ＡＤの値に基づいて、自らに対応付けられた変数の内容を取得すると共に、上記領域属性ＡＡの値に基づいて、自らがデバイスの状態を表示すべき、画面上の領域を特定する。さらに、オブジェクトは、予め定められた手順に従って、変数の内容、すなわち、デバイスの状態に応じて、上記領域における図形表示を変更できる。
【００５２】
一例として、あるオブジェクトが、線や円などの線画を示す基本図形を組み合わせて、部品を表示している場合、当該オブジェクトは、デバイスの状態に応じて、基本図形の色や大きさ、組み合わせられる各基本図形の相対位置などを変更して、部品の表示を変更できる。また、オブジェクトが、部品として、画像ファイルを表示している場合、当該オブジェクトは、デバイスの状態に応じて、参照する画像ファイルを変更して、部品の表示を変更できる。なお、画像ファイルを表示する際の色や大きさを変更し、表示を変更してもよい。
【００５３】
また、オペレータがタッチパネル２４によって画面上の部品を操作した場合、ＨＭＩ処理部２５は、画面データに基づいて、あるいは、オブジェクトからの応答に基づいて、操作対象となるオブジェクトを特定し、当該オブジェクトに、操作内容に応じたメッセージを送信できる。一方、上記各オブジェクトのうち、操作を受け付け可能なオブジェクトは、例えば、画面へのタッチなどによる、オブジェクトへの操作受け付けを示すメッセージを受け取ると、メッセージの示す操作に応じて、自らに対応付けられた変数の内容を変更できる。
【００５４】
さらに、上記ＨＭＩ処理部２５は、変数の内容と、それに対応するデバイスの状態とが一致するように、変数の内容と、それに対応するデバイスの状態との少なくとも一方を更新できる。具体的には、ＨＭＩ処理部２５は、例えば、予め定められた周期など、予め定められたタイミングで、上記リストに含まれた各変数に対応するデバイスの状態を取得し、当該状態に応じて、それに対応する変数の内容を更新できる。また、ＨＭＩ処理部２５は、例えば、予め定められた周期など、予め定められたタイミングで、変数の内容に応じて、変数に対応するデバイスの状態を変更できる。
【００５５】
より詳細には、ＨＭＩ処理部２５は、変数の属性のうち、デバイスを特定するための属性の値に基づいて、デバイスへの通信経路を特定する。通信路が特定されると、必要に応じて、両ＩＦ部２１・２２へ指示して、自機器に接続されているＰＬＣ１１や、他のグラフィック操作パネル１２と通信し、デバイス２ａの状態を取得する。また、ＨＭＩ処理部２５は、取得したデバイス２ａの状態を、変数の内容として、記憶部２６に格納できる。
【００５６】
一方、変数の内容に応じてデバイス２ａの状態を変更する場合には、ＨＭＩ処理部２５は、変数の属性のうち、デバイスを特定するための属性の値から、デバイス２ａへの通信路を特定すると共に、デバイスへ送信すべき制御指示を特定する。さらに、通信経路および制御指示が特定されると、必要に応じて、両ＩＦ部２１・２２へ指示して、自機器に接続されているＰＬＣ１１や、他のグラフィック操作パネル１２と通信し、デバイス２ａの状態制御指示を送信できる。
【００５７】
なお、デバイスがグラフィック操作パネル１２内の記憶領域に対応している場合など、状態取得に通信が不要な場合、ＨＭＩ処理部２５は、通信不要と判断する。この場合、ＨＭＩ処理部２５は、通信せずにデバイスの状態を取得したり、デバイスの状態を制御したりする。
【００５８】
これにより、グラフィック操作パネル１２は、図３に示すように、画面データの示すデバイスの状態を、画面データの示すように、ディスプレイ２３の画面（操作画面）上に表示すると共に、画面データに基づいて、当該操作画面への操作を受け付け、当該操作に応じてデバイスの状態を変更できる。
【００５９】
さらに、本実施形態に係るグラフィック操作パネル１２は、ＰＬＣとしても動作するために、デバイス２ａに接続するためのＩＯ・ＩＦ部３１と、上記記憶部２６に格納されたラダープログラムに基づいて、ＩＯ・ＩＦ部３１に接続されたデバイス２ａを制御するデバイス制御部３２とを備えている。
【００６０】
本実施形態に係るデバイス制御部３２も、ＨＭＩ処理部２５と同様、デバイス２ａの状態を記憶部２６にキャッシュしており、ラダープログラムを実行する際、その都度デバイス２ａへアクセスする代わりに、記憶部２６へアクセスしている。また、本実施形態に係るデバイス制御部３２は、制御対象を変数で特定できるように構成されている。
【００６１】
より詳細には、デバイス制御部３２は、例えば、数十ｍｓなど、予め定められた長さの走査期間（スキャンタイム）毎に、各デバイス２ａの状態を読み出し、各デバイス２ａに対応する変数の内容として、記憶部２６の変数領域に格納できる。
【００６２】
さらに、デバイス制御部３２は、記憶部２６の変数領域に格納された各変数の内容を参照しながら、記憶部２６に格納されたラダープログラムが示す各命令を順次実行できる。当該ラダープログラムは、図４に示すように、ラダー図として記述したり、図５に示すように、ニモニックで示された命令のシーケンスとしても記述したりできる。なお、図４および図５は、ラダー図として図示するか、あるいは、ニモニックで図示するかという表現方法は、互いに異なっているが、内容（手順）としては、互いに同じラダープログラムを示している。
【００６３】
本実施形態に係るラダープログラムでは、図５に、そのニモニック表記として示すように、各命令において、命令語Ｃα…で示される動作の対象（オペランド）を、変数で指定可能であり、命令が変数で示されたオペランドを含んでいる場合、デバイス制御部３２は、当該命令を実行する際、オペランドとして指定された変数の内容を参照したり、オペランドとして指定された変数の内容を更新したりできる。また、各命令では、オペランドとして、変数以外の値（定数、あるいは、アドレスなど）を指定することもでき、デバイス制御部３２は、当該命令を実行する際、当該値を参照したり、当該値で示されるアドレスの内容を参照したり、更新したりできる。なお、デバイス制御部３２が実行可能な命令セットには、オペランドを含まない命令が含まれていてもよい。
【００６４】
さらに、上記順次実行される命令の１つとして、エンド命令が実行されると、デバイス制御部３２は、ラダープログラムの実行を終了し、記憶部２６の変数領域に格納された各変数のうち、ＩＯ・ＩＦ部３１に接続されたデバイス２ａに対応する変数の内容を各デバイス２ａに書き込む。これにより、デバイス制御部３２は、ＰＬＣと同様に、ユーザが作成したラダープログラムに従い、デバイス２ａの状態に応じて各デバイス２ａを制御できる。
【００６５】
ここで、本実施形態に係るグラフィック操作パネル１２では、上記ＨＭＩ処理部２５およびデバイス制御部３２は、図１に示すように、アプリケーション層４１と制御層４２とサービス層（アクセス手段）４３とに分けて実装されている。
【００６６】
すなわち、アプリケーション層４１には、ＨＭＩ処理部２５およびデバイス制御部３２に、それぞれ対応して、ＨＭＩアプリケーション４１ａおよび制御アプリケーション４１ｂが設けられている。これらのアプリケーション４１ａ・４１ｂは、上述したＨＭＩ処理部２５およびデバイス制御部３２の動作のうち、デバイス２ａの状態を取得する動作およびデバイス２ａの状態を更新する動作以外の処理を行うものであって、デバイス２ａの状態を取得したり更新したりする際には、制御層４２を介して、サービス層４３へ指示することによって、デバイス２ａの状態を取得させたり更新させたりしている。
【００６７】
一方、上記サービス層４３は、制御層４２を介したアプリケーション層４１からのアクセス要求に応えて、要求されたデバイス２ａの状態を返したり、要求されたデバイス２ａの状態を、要求された値に変更したりすることができる。
【００６８】
本実施形態に係るグラフィック操作パネル１２は、上述したように、デバイス２ａの状態を記憶部２６にキャッシュしているので、上記サービス層４３として、ＰＬＣ１１またはＩＯ・ＩＦ部３１を介して、デバイス２ａと通信して、デバイス２ａの状態を取得したり、デバイス２ａの状態を更新したりするための通信サービス４３ａと、記憶部２６内に設けられた実デバイス領域Ａ１にアクセスして、実デバイス領域Ａ１にキャッシュされているデバイス２ａの状態を取得したり、更新したりするための実デバイス領域サービス４３ｂとが設けられている。なお、自動割付領域サービス４３ｃについては後述する。
【００６９】
一方、上記両層４１・４３の間に設けられた制御層４２は、上記アプリケーション層４１（より詳細には、アプリケーション層４１内の各アプリケーション４１ａ、４１ｂ）からの指示に基づいて、上記サービス層４３内の各サービスのいずれに、アプリケーション層４１からの指示を与えるかを制御している。また、制御層４２は、アプリケーション層４１からの指示において、アクセス対象が変数の識別子（例えば、変数名あるいは変数ＩＤなど）によって特定されていた場合、当該変数の識別子を実アドレスにアドレス変換し、実アドレスでアクセス対象が指定された指示を、サービス層４３へ与えることができる。
【００７０】
より詳細には、アプリケーション層４１は、図６に示すデータ構造の指示Ｔ１を制御層４２へ与えている。当該指示Ｔ１には、指示の種類を示すフィールドＦ１１と、アクセスする領域を示す情報（アクセス対象情報）のフィールドＦ１２と、アクセス先となるサービスを示すフィールドＦ１３とが含まれている。
【００７１】
上記種類は、制御層４２でのアドレス変換が必要か否かを示すものであって、図７に示すように、上記指示Ｔ１が実アドレスでアクセス対象を特定する指示Ｔ１αである場合、当該指示Ｔ１αのフィールドＦ１１には、変換不要を示す値（図の例では、”直接”）が格納される。なお、この場合、フィールドＦ１２には、実アドレス（図７の例では、”Ｄ００００”）が格納され、制御層４２は、フィールドＦ１２の内容を、フィールドＦ１３の示すサービス（図７の例では、実デバイス領域サービス４３ｂ）へ転送する。なお、制御層４２は、図８に示すように、上記指示Ｔ１αから、フィールドＦ１１およびＦ１３を取り除いた後の指示Ｔ２α、すなわち、実アドレスのフィールドＦ２１を含む指示Ｔ２αを、サービス層４３へ与えている。
【００７２】
これとは逆に、上記指示Ｔ１が変数の識別子でアクセス対象を特定する指示Ｔ１βである場合、図９に示すように、当該指示Ｔ１βのフィールドＦ１１には、変換要を示す値（図９の例では”間接”）が格納される。なお、この場合、フィールドＦ１２には、変数の識別子（図９の例では、変数名”内部レジスタ”に対応するＩＤ”５”）が格納され、制御層４２は、フィールドＦ１２の内容を実アドレスに変換した後、図１０に示すように、変換後の指示Ｔ２βを、フィールドＦ１３の示すサービス（図９の例では、実デバイス領域サービス４３ｂ）へ転送する。
【００７３】
より詳細には、本実施形態に係るグラフィック操作パネル１２には、データベース４４が設けられており、上記制御層４２は、実アドレスへの変換の際に、当該データベース４４を参照している。
【００７４】
上記データベース４４には、各変数のＩＤ（変数ＩＤ）に関連付けて、その変数に対応する実アドレスが記憶されており、制御層４２は、変数ＩＤでアクセス対象が指定された指示を受け取った場合、データベース４４から当該ＩＤに対応する実アドレスを読み出すことによって、変数ＩＤを実アドレスに変換できる。
【００７５】
また、上記データベース４４には、各変数のＩＤに関連付けて、その変数の名称（変数名）を記憶することもでき、制御層４２は、変数名でアクセス対象が指定された指示を受け取った場合、データベース４４から当該変数名に対応する実アドレスを読み出すことによって、変数名を実アドレスに変換できる。
【００７６】
一例として、本実施形態に係るデータベース４４では、図１１に示すように、各変数毎にレコードが設けられており、各レコードには、その変数を示す変数ＩＤのフィールドＦ４１と、その変数に対応するアドレスのフィールドＦ４２と、その変数の変数名のフィールドＦ４３と、その変数の型（後述）を示すフィールドＦ４４とが設けられており、変数に名前が付されている場合、その変数に対応するレコードの上記フィールドＦ４３には、その変数の名前を示す情報が格納される。
【００７７】
また、本実施形態に係るグラフィック操作パネル１２では、変数名が付されず、実アドレスのみで参照されるデバイスも、変数として扱われており、データベース４４には、当該デバイスに対応する変数のレコードも設けられている。なお、変数名が付されていない場合、その変数のレコードのフィールドＦ４３は空に設定される。
【００７８】
さらに、本実施形態に係るデータベース４４の各レコードには、上記各フィールドＦ４１〜Ｆ４４に加えて、その変数の値を保持するか否かを示すフィールドＦ４５、および、その変数のコメントのフィールドＦ４６が設けられている。また、上記各レコードには、その変数が配列型か否かと、配列型の場合は、配列の要素数とを格納するフィールドＦ４７も設けられている。
【００７９】
例えば、図９の例では、アプリケーション層４１からの指示Ｔ１βにおいて、アクセス対象が、変数ＩＤ”５”で特定されている。したがって、上記制御層４２は、データベース４４から、当該変数ＩＤに対応する実アドレス（図１１の例では、”ＬＳ００００”）を読み出し、図１０に示すように、実アドレスのフィールドＦ２１を含む指示Ｔ２βを生成する。
【００８０】
一方、制御層４２への指示Ｔ１が、実アドレスでアクセス対象を特定する指示Ｔ１αであるか、変数の識別子でアクセス対象を特定する指示Ｔ１βであるかに拘らず、実アドレスのフィールドＦ２１を含む指示Ｔ２（Ｔ２αまたはＴ２β）が制御層４２からサービス層４３へ与えられると、サービス層４３は、指示Ｔ２αのフィールドＦ２１の示すアクセス対象の内容を返したり、更新したりできる。なお、内容を変更する指示の場合、上記指示Ｔ１・Ｔ２には、変更内容を示すフィールドも設けられており、制御層４２は、当該フィールドも、サービス層４３へ与えている。
【００８１】
例えば、サービス層４３の通信サービス４３ａであれば、例えば、デバイス制御部３２または各ＩＦ部２１・２２へ指示するなどして、指示Ｔ２αのフィールドＦ２１の示すアクセス対象と通信して、その状態を取得し、取得した状態をアプリケーション層４１へ返答したり、当該アクセス対象と通信して、その状態を、指示Ｔ２αの示す内容に変更したりできる。また、サービス層４３の実デバイス領域サービス４３ｂは、記憶部２６に設けられた実デバイス領域Ａ１のうち、フィールドＦ２１の示す記憶領域にアクセスして、当該記憶領域から読み出した値をアプリケーション層４１へ返答したり、当該記憶領域の内容を、指示Ｔ２αの示す内容に変更したりできる。
【００８２】
ところで、上記データベース４４の内容、および、上記アプリケーション層４１が上記指示Ｔ１α・Ｔ１βを作成する際に参照する画面データおよびラダープログラムなどのデータは、例えば、図２に示すエディタ装置（指示データ生成装置）１５によって生成され、グラフィック操作パネル１２は、通常動作期間、すなわち、ラダープログラムに基づいてデバイスを制御し、画面データに基づいて操作画面を表示する期間よりも前に、例えば、一時的に接続されたエディタ装置１５からの通信、あるいは、エディタ装置１５によって上記各データが書き込まれた記録媒体からの読み出しなどによって、上記各データを取得し、記憶部２６に格納する。なお、例えば、制御用ホストコンピュータ１４など、ＬＡＮ１３に接続された機器が上記各データの生成機能を有している場合、グラフィック操作パネル１２は、当該機器とＬＡＮ１３経由で通信して上記各データを取得してもよいし、グラフィック操作パネル１２自体が上記各データの生成／編集機能を有している場合は、グラフィック操作パネル１２がユーザからの指示に応じて、記憶部２６の上記各データを修正したり、新規に上記各データを生成したりして、修正／生成された上記各データを記憶部２６に格納してもよい。
【００８３】
本実施形態に係るエディタ装置１５は、一例として、ラダープログラムを生成／編集する機能と画面データを生成／編集する機能とを兼ね備えた装置であって、例えば、図１２に示すように、ユーザの操作に応じて、予め格納されたラダープログラムを修正したり新規作成したりして、ラダープログラムをプログラミングし、新たなラダープログラムを生成するプログラムエディタ（制御プログラム編集手段）５１と、ユーザの操作に応じて、予め格納された画面データを修正したり新規作成したりして、操作画面を設計し、新たな画面データを生成する作画エディタ（操作画面編集手段）５２と、上記各エディタ５１・５２が生成したラダープログラムおよび画面データを格納する記憶装置５３とを備えている。また、上記エディタ装置１５には、上述した変数のデータが格納されるデータベース５４が設けられており、上記各エディタ５１・５２は、ユーザの操作に応じてデータベース５４の内容を更新できる。
【００８４】
また、図２に示すエディタ装置１５は、一例として、グラフィック操作パネル１２と通信して上記各データを伝送する構成であり、記憶装置５３およびデータベース５４に格納された上記各データを、これらグラフィック操作パネル１２へ通信する通信処理部５５が設けられている。なお、記録媒体経由で上記各データを伝送する場合は、通信処理部５５に代えて／加えて記録媒体に記憶装置５３またはデータベース５４に格納された各データを書き込む記録装置を設ければよい。
【００８５】
なお、上述したグラフィック操作パネル１２の各部材２１・２２・２５〜３２および４１〜４４、並びに、上記各部材５１〜５５は、ＣＰＵなどの演算手段が、ＲＯＭやＲＡＭなどの記憶手段に格納されたプログラムを実行し、タッチパネルや液晶表示装置などの入出力手段、あるいは、インターフェース回路などの通信回路を制御することによって実現される機能ブロックである。また、これらの部材のうち、各記憶部２６・５１ａ・５２ａ、記憶装置５３およびデータベース４４・５４（一部後述）は、ＲＯＭやＲＡＭなどの記憶装置自体であってもよい。したがって、これらの手段を有するコンピュータが、上記プログラムを記録した記録媒体（例えば、ＣＤ−ＲＯＭなど）を読み取り、当該プログラムを実行するだけで、本実施形態に係るエディタ装置１５を実現できる。なお、例えば、ＬＡＮ１３、あるいは、他の通信路を介してプログラムをダウンロードするためのプログラムが、上記コンピュータに予めインストールされていれば、これらの通信路を介して、上記コンピュータへ上記プログラムを配付してもよい。
【００８６】
より詳細には、上記プログラムエディタ５１は、ラダープログラムに対応する情報および当該ラダープログラムに対応するラダー図を示す情報が一時的に格納される作業用の記憶部５１ａと、ユーザの指示を受け付けて、当該記憶部５１ａの内容を書き換える編集処理部（自動割付手段）５１ｂと、編集処理部５１ｂによって編集される記憶部５１ａの内容を、ラダー図として、図示しないディスプレイに表示させる表示処理部５１ｃと、上記記憶部５１ａに格納されたラダープログラムを当該記憶部５１ａに展開したり、編集後の記憶部５１ａの内容に応じたラダープログラムを記憶部５１ａへ書き込むデータ入出力処理部５１ｄとを備えている。
【００８７】
ここで、上記ラダープログラムは、上述したように、ラダー図として図示することが可能であり、プログラムエディタ５１の編集処理部５１ｂは、例えば、配置可能なラダー記号の種類を示すパレットを表示し、パレット中のラダー記号の種類を選択して画面上に所望の種類のラダー記号を配置するようにユーザへ促す。また、編集処理部５１ｂは、ユーザによるラダー記号の配置操作を受け付けると、当該操作に応じて、編集中のラダー図が上記配置されたラダー記号を含むように、記憶部５１ａの内容を変更し、表示処理部５１ｃは、記憶部５１ａの内容に基づいて、当該ラダー記号を指定された座標に表示する。同様に、編集処理部５１ｂは、ユーザによるネットワークの配置操作を受け付けると、当該操作に応じて、編集中のラダープログラムが当該ネットワークを含むように、記憶部５１ａの内容を変更し、表示処理部５１ｃは、記憶部５１ａの内容に基づいて、当該ネットワークを指定された位置に表示できる。
【００８８】
さらに、編集処理部５１ｂは、ユーザのドラッグ＆ドロップなどの操作に応じて記憶部５１ａの内容を変更して、当該ラダー記号の表示座標範囲の値を調整し、表示処理部５１ｃは、変更後の位置にラダー記号を表示する。また、編集処理部５１ｂは、ラダー記号に関連するデバイスを特定するための情報としてアドレスや変数を入力するようにユーザへ促すと共に、入力されたアドレスや変数が当該ラダー記号に関連するように、記憶部５１ａの内容（より詳細には、ラダー記号に対応する命令のオペランドを示す情報）を変更し、表示処理部５１ｃは、ユーザの指示に応じて、各ラダー記号に関連付けられている変数を、それに対応するアドレスあるいは変数名の形式で表示できる。
【００８９】
また、編集処理部５１ｂは、変数に対するデバイスアドレスの入力操作を受け付け、入力されたアドレスを示すように、データベース５４の内容（より詳細には、当該変数に対応するレコードの内容）を変更し、表示処理部５１ｃは、ユーザの指示に応じて、各変数に関連付けられているアドレスを表示してもよい。なお、新たに変数を登録する際の動作および作画エディタ５２との連係動作については後述する。
【００９０】
さらに、編集終了指示を受け付けると、データ入出力処理部５１ｄは、記憶部５１ａの内容に応じたラダープログラムを生成して、記憶装置５３に書き込む。これにより、編集されたラダー図に対応する命令シーケンスからなるラダープログラムが生成される。
【００９１】
同様に、上記作画エディタ５２は、画面データに対応する情報が一時的に格納される作業用の記憶部５２ａと、ユーザの指示を受け付けて、当該記憶部５２ａの内容を書き換える編集処理部（自動割付手段）５２ｂと、編集処理部５２ｂによって編集される記憶部５２ａの内容を図示しないディスプレイに表示させる表示処理部５２ｃと、上記記憶装置５３に格納された画面データを当該記憶部５２ａに展開したり、編集後の記憶部５２ａの内容に応じた画面データを記憶装置５３へ書き込むデータ入出力処理部（生成手段）５２ｄとを備えている。
【００９２】
ここで、上記画面データは、上述したように、画面上の領域と、当該領域への表示や入力に対応するデバイスを特定可能なアドレスとの対応関係を示すオブジェクトを組み合わせて構成されており、作画エディタ５２の編集処理部５２ｂは、例えば、オブジェクトの雛型となるクラスのパレットを表示し、パレット中のクラスを選択して画面上に所望のオブジェクトを配置するようにユーザへ促す。また、編集処理部５２ｂは、ユーザによるオブジェクトの配置操作を受け付けると、当該操作に応じて、編集中の画面データが上記配置されたオブジェクトのデータを含むように、記憶部５２ａの内容を変更し、表示処理部５２ｃは、記憶部５２ａの内容に基づいて、当該オブジェクトを指定された座標に表示する。また、編集処理部５２ｂは、ユーザのドラッグ＆ドロップなどの操作に応じて記憶部５２ａの内容を変更して、当該オブジェクトの領域属性の値を調整し、表示処理部５２ｃは、変更後の位置にオブジェクトを表示する。また、編集処理部５２ｂは、オブジェクトに関連するアドレスや変数を入力するようにユーザへ促すと共に、入力されたアドレスや変数が当該オブジェクトに関連するように、記憶部５２ａの内容（より詳細には、オブジェクトのデバイス属性の値）を変更し、表示処理部５２ｃは、ユーザの指示に応じて、各オブジェクトに関連つけられているアドレスや変数を表示する。さらに、編集処理部５２ｂは、プログラムエディタ５１の編集処理部５１ｂと同様に、変数に対するデバイスアドレスの入力操作を受け付けると、入力されたアドレスを示すように、データベース５４の内容（より詳細には、当該変数に対応するレコードの内容）を変更し、表示処理部５２ｃは、ユーザの指示に応じて、各変数に関連付けられているアドレスを表示できる。
【００９３】
なお、本実施形態に係るグラフィック操作パネル１２は、複数の画面（操作画面）を切り換えて表示可能であり、上記編集処理部５２ｂは、操作画面の追加操作や、それぞれの操作画面に対する編集操作を受け付けると共に、各操作画面に関連付けて、当該操作画面に配置された各オブジェクトのデータを、記憶部５１ａに格納できる。
【００９４】
一方、編集終了指示を受け付けると、データ入出力処理部５２ｄは、記憶部５２ａの内容に応じた画面データを生成して、記憶装置５３に書き込む。これにより、編集されたオブジェクトをグラフィック操作パネル１２に生成するための情報が含まれた画面データを生成できる。
【００９５】
これらの結果、設計者は、エディタ装置１５の作画エディタ５２を操作して、画面上の所望の位置にオブジェクトを配置すると共に、各オブジェクトと変数とを対応付け、変数とデバイスのアドレスとを対応付けるだけで、画面データを作成できる。したがって、グラフィック操作パネル１２の表示プログラムを修正する場合に比べて容易に、各グラフィック操作パネル１２の表示や操作を決定（変更）でき、制御システム１のユーザ（エディタ装置１５を操作する設計者）は、ターゲットシステム２の実情や、グラフィック操作パネル１２のオペレータの習熟度、あるいは、ユーザの好みや判断基準に合わせることができる。
【００９６】
さらに、上記各エディタ５１・５２の編集処理部５１ｂ・５２ｂは、例えば、他方のエディタ５１・５２からのドラッグ＆ドロップなどによって、他方のエディタ５１・５２の画面上に配置されていた部品に対応する部品を自らの画面上に配置するための操作を受け付けることができ、この場合、当該他方の部品に対応する予め定められた部品で、しかも、当該他方の部品に関連付けられている変数に関連付けられた部品を配置することができる。また、上記両エディタ５１・５２は、互いに同じデータベース５４を参照している。これらの結果、両エディタ５１・５２の双方で、互いに対応する部品をそれぞれ別個に配置し、それらの部品に対応する変数をそれぞれ別個に設定する構成よりも、変数に対応するアドレス等の情報を入力したり、各部品に対応する変数を設定したりする際の手間を大幅に削減できる。
【００９７】
ところで、上記画面データおよびラダープログラムにおいてアクセスの対象となり得るデバイスには、ＰＬＣ１１に接続されているデバイス２ａ、ＩＯ・ＩＦ部３１を介して接続されているデバイス２ａ、あるいは、ＰＬＣ１１またはグラフィック操作パネル１２内の記憶領域であっても特定の機能が割り当てられたアドレスが含まれており、これらのデバイスの場合には、デバイス２ａのデバイスアドレスまたはアドレスが予め定められている。
【００９８】
一方、上記デバイスの中には、これら特定のアドレスが予め定められているデバイスだけではなく、例えば、一時的にデータを格納するためにグラフィック操作パネル１２内に確保される記憶領域も含まれており、この場合には、当該データを記憶できれば、当該記憶領域がいずれのアドレスにあってもかまわない。
【００９９】
ただし、この場合に、ユーザが、グラフィック操作パネル１２内の空いている記憶領域の中からデバイスに割り当てる記憶領域を決定した後、上記特定のアドレスが定められているデバイスと同様に、変数にアドレスを対応付けるとすると、操作が煩雑になってしまう。
【０１００】
これに対して、本実施形態に係るグラフィック操作パネル１２では、上記記憶部２６の記憶領域のうち、上記実デバイス領域Ａ１とは別の記憶領域に、自動割付領域（自動割付用の特定領域）Ａ２が設けられており、上記エディタ装置１５は、上記特定のアドレスが予め定められていないデバイスについては、当該自動割付領域Ａ２のうち、空いている記憶領域を自動的に割り当て、当該デバイスへアクセスする際には、当該割り当てられた記憶領域にアクセスするように、上記画面データ、ラダープログラムおよびデータベース５４の内容（データベース４４の内容）を設定できる。
【０１０１】
さらに、本実施形態に係るエディタ装置１５は、上記記憶領域を割り当てる際、変数の型毎に整列して割り当てており、グラフィック操作パネル１２のアプリケーション層４１は、制御層４２へ指示する際、例えば、図１３に示す指示Ｔ１γのように、実アドレスでの指定に代えて、各型におけるオフセットでの指定によって、アクセス対象となる記憶領域を特定している。
【０１０２】
本実施形態では、上記型の一例として、ビット型（ｂｉｔ型）、整数型（ｉｎｔ型）、実数型（ｆｌｏａｔ型）および機種依存の最大精度の実数型（ｒｅａｌ型）が用意されており、図１４に示すように、上記自動割付領域Ａ２は、それぞれに対応する領域Ａｂ、Ａｉ、ＡｆおよびＡｒに区分されている。なお、本実施形態では、他にも、タイマ型、カウンタ型、日付型、時刻型、ＰＩＤ型などの型も用意されており、自動割付領域Ａ２には、それぞれに対応する領域も設けられているが、図１４では、説明の便宜上、これらの領域を省略している。
【０１０３】
一例として、図１３に示す指示Ｔ１γは、整数型の変数の２番目（オフセット０００１）をアクセス対象とする場合を示しており、当該指示Ｔ１γのフィールドＦ１２には、型とオフセットとの組み合わせが格納されている。なお、図では、説明の便宜上、フィールドＦ１２の内容を、整数型を示す文字”Ｉ”とオフセットを示す文字列とをセパレータを”＿”で結んだ文字列として図示しているが、実際には、型とオフセットとの組み合わせを示す数値が記憶されている。
【０１０４】
なお、上記オフセットは、アドレスとは独立に設定可能な変数名や変数の識別子とは異なって、ベースとなるアドレス（ベースアドレス）と、その型のサイズとが予め定められていれば、特にデータベース４４を参照しなくても、ベースアドレスとサイズとオフセットとに基づいて実際のアドレスを算出可能である。
【０１０５】
ここで、制御層４２が実際のアドレスを算出してもよいが、本実施形態では、サービス層４３が上記ベースアドレスとサイズとオフセットとに基づいて実際のアドレスを算出している。これに伴って、上記指示Ｔ１γでは、指示の種類を示すフィールドＦ１１が、変換不要を示す値（図の例では、”直接”）に設定されており、制御層４２は、サービス層４３への指示Ｔ２γを生成する際、図１５に示すように、当該指示Ｔ２γのフィールドＦ２１に、フィールドＦ１２の内容を、そのまま設定している。
【０１０６】
一方、本実施形態に係るサービス層４３には、オフセットで記憶領域が指定された指示Ｔ２γに基づいて上記自動割付領域Ａ２へアクセスする自動割付領域サービス４３ｃが設けられており、当該自動割付領域サービス４３ｃは、当該指示Ｔ２γを受け取ると、当該指示Ｔ２γに含まれるオフセットと、予め定められた上記ベースアドレスおよびサイズとに基づいて、上記自動割付領域Ａ２のうち、当該指示Ｔ２γがアクセス対象として指定している記憶領域のアドレスを算出する。さらに、自動割付領域サービス４３ｃは、当該記憶領域へアクセスして、当該記憶領域の内容をアプリケーション層４１へ返答したり、当該記憶領域の内容をアプリケーション層４１からの指示に応じて変更したりする。
【０１０７】
これにより、サービス層４３は、アプリケーション層４１が各型におけるオフセットでアクセス対象を指定しても、何ら支障なく、当該アクセス対象、すなわち、自動割付領域Ａ２内に設けられた記憶領域にアクセスできる。
【０１０８】
なお、上記では、自動割付領域Ａ２に割り当てられた記憶領域にアクセスする際、アプリケーション層４１が、実アドレスでの指定に代えて、オフセットでの指定によって、アクセス対象となる記憶領域が特定されている場合について説明した。一方、アプリケーション層４１が変数の識別子によって指定した場合、制御層４２は、実デバイス領域Ａ１がアクセス対象である場合と略同様に、データベース４４を参照して、当該変数の識別子に対応する値に変換してサービス層４３へ伝える。ただし、アクセス対象が自動割付領域Ａ２内の記憶領域である場合は、データベース４４には、実アドレスに代えて、各型におけるオフセットが記憶されている。したがって、制御層４２は、上記指定された変数の識別子に対応するオフセットを、上記データベース４４から読み出し、当該オフセットをサービス層４３へ通知する。これにより、アクセス対象が自動割付領域Ａ２内の記憶領域である場合であっても、アプリケーション層４１は、変数の識別子でアクセス対象を特定できる。
【０１０９】
以下では、アプリケーション層４１が自動割付された記憶領域へアクセスする際に参照するラダープログラムおよび画面データを作成すると共に、アクセス対象の記憶領域を自動割付するための構成について説明する。すなわち、図１１に示すように、本実施形態に係るデータベース４４・５４には、各変数に対応するレコードに、型のフィールドＦ４４が設けられており、デバイスが上記自動割付領域Ａ２内の記憶領域である場合、当該デバイスに対応する変数のレコードのフィールドＦ４４には、そのデバイスの型の情報が格納される。また、当該変数のレコードのフィールドＦ４２には、上記記憶領域を示す情報として、型とオフセットとの組み合わせが格納されている。なお、図では、フィールドＦ１２と同様に、説明の便宜上、フィールドＦ４２の内容を、整数型を示す文字”Ｉ”とオフセットを示す文字列とをセパレータを”＿”で結んだ文字列として図示している。
【０１１０】
なお、上述したように、本実施形態では、変数が実アドレスに対応付けられている場合、その変数のレコードのフィールドＦ４２には、実アドレスが格納されており、この場合、そのレコードの型のフィールドＦ４４には、実アドレスを示す値（実アドレス型を示す値）が格納される。
【０１１１】
一方、編集処理部５１ｂ・５２ｂは、ラダー図または操作画面上に部品（オブジェクト）またはラダー記号が配置され、当該部品またはラダー記号に関連するアドレスや変数の入力を受け付けた場合、以下のようにして、当該変数の型を設定する。
【０１１２】
すなわち、本実施形態に係る編集処理部５１ｂ・５１ａは、新たな部品またはラダー記号の配置操作を受け付けた場合、それに変数が対応しているか否かを判定する。例えば、編集処理部５１ｂ・５１ａの一方から他方への配置操作の場合、元の編集処理部において、既に部品またはラダー記号に変数が対応付けられているので、配置操作を受け付けた編集処理部は、当該部品またはラダー記号に、元の編集処理部において対応付けられていた変数を対応付ける。
【０１１３】
一方、パレットからの配置操作を受け付けた場合など、部品またはラダー記号が新規に配置された場合、編集処理部５１ｂ・５１ａは、当該部品またはラダー記号に対応する変数名を入力するように、ユーザへ促す。
【０１１４】
変数名が入力された場合、編集処理部５１ｂ・５２ｂは、データベース５４を参照して、入力された変数名がデータベース５４に既に登録されているか否かを判定し、登録されている場合は、上記部品またはラダー記号に、当該変数名を持った変数を対応付ける。
【０１１５】
これとは逆に、入力された変数名がデータベース５４に登録されていなかった場合、当該変数は、新たな変数である。この場合、編集処理部５１ｂ・５２ｂは、当該変数名が、予め定められたパターンにマッチする文字列であるか否かを判定し、マッチした文字列であった場合、上記部品またはラダー記号に対応する型として、当該パターンに予め対応付けられている型を設定する。
【０１１６】
本実施形態では、一例として、数値のパターンには、実アドレス型が対応付けられている。また、整数型を示すＩなど、型を示す文字から始まるというパターンには、その型が対応付けれている。さらに、モータやランプあるいはスイッチなど、グラフィック操作パネル１２またはＰＬＣ１１に外部接続されるデバイス２ａを示す文字として、予め定められた文字（例えば、モータの場合の”Ｍ”など）から始まるというパターンには、実アドレス型が対応付けられている。
【０１１７】
このように、上記パターンにマッチする文字列が入力された場合には、当該パターンに予め対応付けられた型が設定される。
【０１１８】
一方、予め定められたパターンのいずれにもマッチしなかった場合、編集処理部５１ｂ・５２ｂは、予め定められている型を初期設定の型として設定する。本実施形態では、プログラムエディタ５１の編集処理部５１ｂには、初期設定の型として、自動割付用の型のうちの予め定められた型（例えば、整数型など）が規定されている。これに対して、作画エディタ５２の編集処理部５２ｂには、初期設定の型として、実アドレス型が規定されている。
【０１１９】
ここで、作画エディタは、例えば、プログラマブル表示器やＰＬＣの機能を持たないグラフィック操作パネルなど、ＰＬＣの機能を持たず、ＰＬＣに接続することを前提とした制御用表示装置の操作画面を作成するために用いられることが多い。また、ＰＬＣの中には、変数での指定を受け付けることができず、アドレスでの指定しか受け付けることができないものが多い。さらに、ラダープログラムを作成する場合と比較すると、あるデバイスが頻繁に使用されることは少なく、一時的にデータを記憶するための記憶領域を必要とする可能性も低い。したがって、当該ＰＬＣに接続されたデバイスをアクセス対象とする場合、作画エディタのユーザは、アクセス対象をアドレスで指定することを避けることができず、アドレスでの指定に慣れていることが多い。
【０１２０】
この結果、上記パターンにマッチしなかった場合、作画エディタ５２の編集処理部５２ｂが、その変数の型を実アドレス型に設定すると、多くの場合、型を変更する必要がなく、ユーザの手間を削減できる。
【０１２１】
一方、プログラムエディタは、デバイスに直接接続される制御装置の制御プログラム（ラダープログラムなど）を作成するために用いられるが、作画エディタの場合と比較すると、同じデバイスを、プログラム内で繰り返し使用することが多く、一時的にデータを記憶するための記憶領域を必要とする可能性も高い。したがって、上記作画エディタ５２と同様に、初期設定の型を実アドレス型に設定したとすると、型の変更が必要になる可能性が高く、ユーザの手間が増加する虞れがある。
【０１２２】
これに対して、本実施形態に係るプログラムエディタ５１の編集処理部５１ｂは、上記パターンにマッチしなかった場合、その変数の型を、自動割付用の型のうちの予め定められた型（例えば、整数型など）に設定する。したがって、実アドレス型に設定する場合と比較して、型変更が必要になる可能性を低減でき、ユーザの手間を削減できる。
【０１２３】
なお、上記の型設定が誤っていた場合に備えて、本実施形態に係る編集処理部５１ｂ・５２ｂは、例えば、部品またはラダー記号の属性編集操作の１つとして、型の変更操作も受け付けることができる。また、上記各編集処理部５１ｂ・５２ｂは、例えば、ユーザの操作に応じて、各変数の型をリスト表示することもでき、リスト表示された各変数の型への編集操作（型の変更操作）を受け付けることができる。これにより、上記の型設定が誤っていたとしても、何ら支障なく、正しい型に変更できる。
【０１２４】
また、上記編集処理部５１ｂ・５２ｂは、例えば、新たに、自動割付用の型の変数を追加する場合、あるいは、既に作成されている変数であっても、その型が、自動割付用の型に変更された場合、グラフィック操作パネル１２の記憶部２６の自動割付領域Ａ２に当該変数用の記憶領域を割り付ける。
【０１２５】
上述したように、本実施形態に係るグラフィック操作パネル１２では、自動割付された変数の記憶領域は、変数の型毎に整列して割り当てられている。これを実現するために、本実施形態に係る編集処理部５１ｂ・５２ｂは、上記記憶部２６の自動割付領域Ａ２のうち、新たに記憶領域を割り付ける変数の型用の領域のうち、既に使用されている記憶領域に連続する領域（例えば、既に使用されている記憶領域の次の領域など）に、当該変数用の記憶領域を確保し、上記データベース５４の当該変数のレコードのフィールドＦ４２に、当該確保した記憶領域を示す情報として、型とオフセットとの組み合わせを格納する。
【０１２６】
例えば、図１１に示す状態では、整数型のオフセットは、Ｉ＿００００（図示せず）と、Ｉ＿０００１とが使用されている。したがって、この状態で、整数型の変数の記憶領域を自動割付した場合、図１６に示すように、Ｉ＿０００２のレコードが追加される。
【０１２７】
本実施形態に係る編集処理部５１ｂ・５２ｂは、一例として、データベース５４を検索することによって、新たに記憶領域を割り付ける変数の型用の領域のうち、既に使用されている記憶領域に連続する領域を探索している。
【０１２８】
具体的には、上述したように、データベース５４には、既に記憶領域が割り当てられている変数について、型とオフセットとの組み合わせが記憶されている。したがって、編集処理部５１ｂ・５２ｂは、型とオフセットとの組み合わせがデータベース５４に登録されているか否かで、その組み合わせが示す記憶領域が既に割り当てられているか否かを判定できる。また、編集処理部５１ｂ・５２ｂは、新たな記憶領域を割り付ける際、記憶領域が連続するように割り付けている。したがって、編集処理部５１ｂ・５２ｂは、データベース５４に記憶された型とオフセットとの組み合わせのうち、新たに記憶領域を割り付けようとする変数の型と同じ型で、しかも、オフセットの値が最後の組み合わせを抽出し、そのオフセットの次の値を、当該記憶領域のオフセットとして決定する。一例として、オフセットが連続して大きくなっている場合、次の値は、オフセットの最大値に１を加えた数であり、オフセットが１つ飛ばしで小さくなっている場合、次の値は、オフセットの最小値から２を減らした値である。
【０１２９】
なお、記憶部２６に配置した状態で整列していれば、編集処理部５１ｂ・５２ｂは、例えば、データベース５４に登録する段階では、記憶領域を不連続に配置しておき、データベース４４に登録する段階で、型毎に整列するようにオフセットを修正してもよい。いずれの場合であっても、記憶部２６に配置した状態で整列していれば、同様の効果が得られる。
【０１３０】
また、上記では、一例として、基本型（要素数が１の型）について説明したが、本実施形態では、その派生型として、上述した各型の配列も用意されている。この場合、グラフィック操作パネル１２のアプリケーション層４１およびサービス層４３、並びに、エディタ装置１５の編集処理部５１ｂ・５２ｂは、配列の各要素を、型と、オフセットと、その配列におけるインデックスとの組み合わせで特定している。
【０１３１】
ここで、上述したように、本実施形態に係るアプリケーション層４１は、自動割付領域Ａ２内の記憶領域へのアクセスを制御層４２へ指示する際、その指示Ｔ１γのフィールドＦ１２に、型とオフセットとの組み合わせを設定している。
【０１３２】
ただし、一般に、型とオフセットとの組み合わせを記憶する際に必要な領域は、実アドレスの記憶に必要な領域よりも小さくなる。したがって、実アドレスでアクセス対象を特定した指示Ｔ１αと、型およびオフセットの組み合わせでアクセス対象を特定した指示Ｔ１γとで、フィールドＦ１２のサイズを、互いに同じに設定したとすると、指示Ｔ１γのフィールドＦ１２のうち、特定の領域（例えば、オフセットの上位ビットに対応する領域など）は、常に同じ値になる。なお、フィールドＦ２１・Ｆ４２についても同様に、特定の領域が常に同じ値になる。
【０１３３】
本実施形態では、フィールドＦ１２・Ｆ２１のサイズを互いに同じに設定することによって、自動割付するための自動割付領域サービス４３ｃが設けられていない構成と、制御層４２のデータ処理を共通にしているにも拘らず、フィールドＦ１２のうち、上記特定の領域に、配列のインデックスを格納することによって、アクセス対象が配列の場合、１つの指示Ｔ１によって、自動割付領域サービス４３ｃへ、インデックスをも通知している。これにより、自動割付された記憶領域にアクセスする際の効率を向上できる。
【０１３４】
さらに、本実施形態では、フィールドＦ１２・Ｆ２１の図示しないヘッダ領域のうち、予め設けられていた予約領域に、インデックスまたはサブフィールド（後述）がフィールドＦ１２・Ｆ２１に含まれているか否か示すフラグが設けられており、上記グラフィック操作パネル１２のアプリケーション層４１は、インデックスまたはサブフィールド（後述）を指定する場合、当該フラグを真（含まれていることを示す値）に設定し、サービス層４３は、当該フラグが真である場合に、インデックスまたはサブフィールドで特定された領域にアクセスしている。これにより、以下の不具合、すなわち、指示が、実アドレスでアクセス対象を特定した指示と、型およびオフセットの組み合わせでアクセス対象を特定した指示との一方であるにも拘らず、サービス層４３が他方と誤って処理してしまうという不具合の発生を防止できる。
【０１３５】
また、上記では、配列型の場合を例にして説明したが、本実施形態に係るアプリケーション層４１およびサービス層４３、並びに、エディタ装置１５の編集処理部５１ｂ・５２ｂは、整数型など、他の型の変数であっても、その変数の記憶領域が複数のサブフィールドに分割されていれば、グラフィック操作パネル１２のアプリケーション層４１およびサービス層４３、並びに、エディタ装置１５の編集処理部５１ｂ・５２ｂは、上記特定の領域に、アクセス対象とするサブフィールドを示す識別子を格納している。これにより、制御層４２の互換性を維持したまま、当該サブフィールドへアクセスする際の効率を向上できる。
【０１３６】
なお、上記では、自動割付される記憶領域が型毎に整列されている場合を例にして説明したが、これに限るものではない。自動割付領域Ａ２内の空き領域に、特定のアドレスには予め対応付けられていないデバイスに対応するデバイス用の記憶領域を自動割付すると共に、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報（例えば、型とオフセットとの組み合わせなど）との対応関係を、上記データベース４４に記憶してもよい。また、上記では、自動割付された型の変数に対応する記憶領域を、型とオフセットとの組み合わせで特定しているが、これに限るものではない。当該記憶領域のアドレスを示すアドレス情報で特定されれば、例えば、アドレス自体であってもよい。
【０１３７】
これらの構成であっても、特定のアドレスに予め対応付けられているデバイスの変数を生成する場合と同様の手順で特定のアドレスには予め対応付けられていないデバイスの変数を生成する構成とは異なって、当該変数に対応するアドレスを指定しなくても、データ処理装置に、当該自動割付された記憶領域にアクセスさせることができ、当該変数を生成する際の手間を削減できる。
【０１３８】
ただし、本実施形態のように、自動割付される記憶領域が型毎に整列されていれば、例えば、各記憶領域が、それぞれの型に拘らず、生成された順に並べられている構成と比較して、記憶領域の使用効率、または、自動割付領域サービス４３ｃが各記憶領域へアクセスする際の効率を向上できる。
【産業上の利用可能性】
【０１３９】
ＰＬＣなどの制御装置、その制御プログラムを生成するためのプログラムエディタ装置、グラフィック操作パネルなどの制御用表示装置、その操作画面を設計するための作画エディタ装置をはじめとして、種々のデータ処理装置および指示データ生成装置に広く適用できる。
【図面の簡単な説明】
【０１４０】
【図１】本発明の実施形態を示すものであり、グラフィック操作パネルに設けられたＨＭＩ処理部およびデバイス制御部の要部構成を示すブロック図である。
【図２】上記グラフィック操作パネルを含む制御システムの要部構成を示すブロック図である。
【図３】上記グラフィック操作パネルの操作画面の一例を示す図面である。
【図４】上記デバイス制御部が実行するラダープログラムをラダー図として示す図面である。
【図５】上記ラダープログラムをニモニックとして示す図面である。
【図６】上記ＨＭＩ処理部およびデバイス制御部に設けられた制御層へ渡される指示のデータ構造を示す図面である。
【図７】上記指示の一例を示すものであり、実アドレスでアクセス対象を特定する場合を示す図面である。
【図８】上記ＨＭＩ処理部およびデバイス制御部に設けられた制御層からサービス層へ渡される指示のデータ構造を示す図面である。
【図９】上記指示の他の例を示すものであり、変数の識別子でアクセス対象を特定する場合を示す図面である。
【図１０】上記制御層からサービス層へ渡される指示のデータ構造を示す図面である。
【図１１】上記制御層が参照するデータベースのデータ構造を示す図面である。
【図１２】上記制御システムに設けられたエディタ装置の要部構成を示すブロック図である。
【図１３】上記指示の他の例を示すものであり、各型におけるオフセットでの指定によって、アクセス対象となる記憶領域を特定する場合を示す図面である。
【図１４】グラフィック操作パネルに設けられた自動割付領域を示す図面である。
【図１５】上記制御層からサービス層へ渡される指示のデータ構造を示す図面である。
【図１６】上記データベースに記憶されたデータを示すものであり、新たな変数が追加された状態を示す図面である。
【符号の説明】
【０１４１】
１２            グラフィック操作パネル（データ処理装置）
１５            エディタ装置（指示データ生成装置）
４３            サービス層（アクセス手段）
４４            データベース
５１            プログラムエディタ（制御プログラム編集手段）
５２            作画エディタ（操作画面編集手段）
５１ｂ・５２ｂ  編集処理部（自動割付手段）
５１ｄ・５２ｄ  データ入出力処理部（生成手段）
Ａ２            自動割付領域（自動割付用の特定領域）
【図１】
0004778312.tif 000002
【図２】
0004778312.tif 000003
【図３】
0004778312.tif 000004
【図４】
0004778312.tif 000005
【図５】
0004778312.tif 000006
【図６】
0004778312.tif 000007
【図７】
0004778312.tif 000008
【図８】
0004778312.tif 000009
【図９】
0004778312.tif 000010
【図１０】
0004778312.tif 000011
【図１１】
0004778312.tif 000012
【図１２】
0004778312.tif 000013
【図１３】
0004778312.tif 000014
【図１４】
0004778312.tif 000015
【図１５】
0004778312.tif 000016
【図１６】
0004778312.tif 000017