(57)【特許請求の範囲】
【請求項１】
画面上の各アイテムに係る外部メモリアクセス情報が含まれる画面データに基づいて、外部機器の外部メモリにアクセスするプログラマブル表示器と、該画面データを任意に作成させる作画エディタ装置とを有するプログラマブルコントローラシステムであって、
前記作画エディタ装置は、
任意の前記画面データの前記外部メモリアクセス情報から、デフォルトのバックアップ情報を生成するバックアップ情報生成手段と、
該バックアップ情報を任意に変更させる設定変更手段と、
前記デフォルトまたは変更後のバックアップ情報に基づいて、そのときのバックアップ情報に応じた外部メモリアクセスに係るメモリアクセス処理時間を算出して表示する処理時間算出手段と、
を有することを特徴とするプログラマブルコントローラシステム。
【請求項２】
前記作画エディタ装置は、
所定の指示に応じて、そのときのバックアップ情報を用いて前記画面データの外部メモリアクセス情報を更新する画面データ更新手段を更に有することを特徴とする請求項１記載のプログラマブルコントローラシステム。
【請求項３】
前記バックアップ情報には、前記各アイテムの前記外部メモリにおける割当アドレスが含まれており、
前記設定変更手段は、該各割当アドレスを表示すると共に任意のアイテムの割当アドレスを変更させることで、前記バックアップ情報を変更することを特徴とする請求項１または２記載のプログラマブルコントローラシステム。
【請求項４】
前記画面データ更新手段で更新された画面データを、前記プログラマブル表示器に転送して記憶させる転送手段を更に有することを特徴とする請求項２記載のプログラマブルコントローラシステム。
【請求項５】
前記処理時間算出手段は、デフォルトまたは変更後の前記バックアップ情報に基づいて、前記外部メモリアクセスの為のコマンドの送信回数を決定すると共に該各コマンド毎のアクセス領域を決定し、該決定した送信回数とアクセス領域とに応じた前記メモリアクセス処理時間を算出することを特徴とする請求項３または４記載のプログラマブルコントローラシステム。
【請求項６】
前記バックアップ情報には、前記プログラマブル表示器と前記外部機器との間の通信プロトコル情報が含まれており、
前記処理時間算出手段は、該通信プロトコル情報を用いて、前記メモリアクセス処理時間を算出することを特徴とする請求項５記載のプログラマブルコントローラシステム。
【請求項７】
前記プログラマブル表示器は、前記画面データの外部メモリアクセス情報に基づいて、前記各アイテムの各割当アドレス全てを含む記憶領域にアクセスするための要求コマンドを、１回、前記外部機器へ送信することによって、全てのアイテムの割当アドレスにアクセスする場合があることを特徴とする請求項１記載のプログラマブルコントローラシステム。
【請求項８】
前記プログラマブル表示器は、前記画面データの外部メモリアクセス情報に基づいて、前記各アイテムの中の１以上のアイテムの割当アドレスを含む記憶領域にアクセスするための要求コマンドを、複数回、前記外部機器へ送信することによって、全てのアイテムの割当アドレスにアクセスする場合があることを特徴とする請求項１記載のプログラマブルコントローラシステム。
【請求項９】
前記処理時間算出手段は、デフォルトまたは変更後の前記バックアップ情報に基づいて、前記要求コマンドの送信回数を決定すると共に該各要求コマンド毎の前記アクセスする記憶領域を決定し、該決定した送信回数と記憶領域とに応じた前記メモリアクセス処理時間を算出することを特徴とする請求項７または８記載のプログラマブルコントローラシステム。
【請求項１０】
前記バックアップ情報には、前記プログラマブル表示器と前記外部機器との間の通信プロトコル情報が含まれており、
前記処理時間算出手段は、該通信プロトコル情報を用いて、前記各要求コマンドの伝送時間と該要求コマンドに応じた前記外部機器からの応答コマンドの伝送時間を算出することで、前記メモリアクセス処理時間を算出することを特徴とする請求項９記載のプログラマブルコントローラシステム。
【請求項１１】
プログラマブル表示器の画面データを任意に作成させる作画エディタ装置であって、
画面上の各アイテムに係る外部メモリアクセス情報が含まれる前記画面データを記憶する画面データ記憶手段と、
前記画面データの前記外部メモリアクセス情報から、デフォルトのバックアップ情報を生成するバックアップ情報生成手段と、
該バックアップ情報を任意に変更させる設定変更手段と、
前記デフォルトまたは変更後のバックアップ情報に基づいて、そのときのバックアップ情報に応じた外部メモリアクセスに係るメモリアクセス処理時間を算出して表示する処理時間算出手段と、
を有することを特徴とする作画エディタ装置。
【請求項１２】
所定の指示に応じて、そのときの前記バックアップ情報を用いて、前記画面データの外部メモリアクセス情報を更新する画面データ更新手段を更に有することを特徴とする請求項１１記載の作画エディタ装置。
【請求項１３】
プログラマブル表示器の画面データを任意に作成させる作画エディタ装置のコンピュータを、
画面上の各アイテムに係る外部メモリアクセス情報が含まれる前記画面データを記憶する画面データ記憶手段と、
前記画面データの前記外部メモリアクセス情報から、デフォルトのバックアップ情報を生成するバックアップ情報生成手段と、
該バックアップ情報を任意に変更させる設定変更手段と、
前記デフォルトまたは変更後のバックアップ情報に基づいて、そのときのバックアップ情報に応じた外部メモリアクセスに係るメモリアクセス処理時間を算出して表示する処理時間算出手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブル表示器用の画面データ作成を支援する作画エディタ装置に関する。
【背景技術】
【０００２】
プログラマブル表示器は、一般的に、ＰＬＣ（Programmable Logic Controller）本体や温調装置等の各種接続機器と接続して、これら接続機器の状態表示を行う数値表示やランプ等のアイテムや、ユーザが任意の指示を出す為のスイッチ等のアイテムの画像を表示する。尚、アイテムは、画面部品等とも呼ばれている。プログラマブル表示器の画面（操作表示画面と呼ぶものとする）には、通常、複数の画面部品（アイテム）の画像が表示される。この様な操作表示画面を表示する為のデータ等（画面データ等と呼ばれる）は、予め支援装置等において開発者等によって任意に作成されて、支援装置からプログラマブル表示器にダウンロードされている。【０００３】
上記画面データには、上記各アイテム毎に、そのアイテムの画像（スイッチの画像やランプの画像）や表示位置座標、更に後述する外部メモリの所定領域のアドレス（割当メモリアドレス）等のデータが含まれている。更に何らかのプログラム等が含まれている場合もある。上記支援装置は、例えば、上記画面データをユーザに任意に作成させる為の各種支援を行う機能を有する。これについては、よく知られた既存技術であるので、ここでは特に説明しない。【０００４】
上記各アイテム（画面部品）は、例えば、それぞれが任意の接続機器の任意の構成要素に対応して、当該構成要素の状態表示を行ったり、当該構成要素のＯＮ／ＯＦＦの指示を受け付けるものである。例えば、温度調節装置の温度測定値を数値表示するアイテムの場合、随時、現在の温度を数値で表示することになる。あるいは、温度調節装置のＯＮ／ＯＦＦ状態を示すランプのアイテムであれば、温度調節装置がＯＮ状態であればランプ点灯、ＯＦＦ状態であればランプ消灯が、表示されることになる。【０００５】
尚、支援装置においては、予めアイテム画像としてランプ点灯画像とランプ消灯画像が登録されており、上記画面データには１つのランプアイテムについてランプ点灯画像とランプ消灯画像が含まれることになる。勿論、これは、ランプの場合に限るものではなく、例えばスイッチ等の他のアイテム種別についても同様である。【０００６】
上記各種アイテムに係る表示制御は、上記各アイテム毎に、例えば定期的に所定の処理を実行することで実現される。所定の処理とは、例えば、そのアイテムに係わる所定の接続機器内の所定のメモリデバイス（外部メモリデバイスとする）の所定の記憶領域の格納データ（上記割当メモリアドレスが示す所定の割当メモリ領域の格納データ）を読出す処理である。更に、この格納データに基づいてアイテムの表示内容を決定・表示する処理（表示内容のリフレッシュ処理）等である。尚、上記所定の割当メモリ領域の格納データ）を読出す処理は、概略的には上記外部メモリデバイスにアクセスする処理であることから、外部メモリアクセス処理と呼ぶ場合もあるものとする。【０００７】
尚、接続機器は、随時、上記外部メモリデバイスの所定領域の格納データを更新している。例えば、接続機器が上記温度調節装置ならば、接続機器は、上記温度測定値を随時更新していることになる。【０００８】
ここで、上記支援装置は、画面データ作成の際に各アイテム毎に任意の上記割当メモリアドレスをユーザに設定させる機能も有している。上記の通り、画面データには、当該設定された割当メモリアドレスも含まれている。画面データは、支援装置からプログラマブル表示器にダウンロードされて記憶される。そして、運用中には、各アイテム毎に対応して、上記割当メモリアドレスに基づいて上記割当メモリ領域にアクセスすることになる。【０００９】
これは、上記割当メモリ領域へのアクセスコマンドを生成して接続機器へ送信し、当該接続機器からの返信コマンドを受信することで、割当メモリ領域の格納データを取得するものである。これは、基本的には各アイテム毎に、つまり各割当メモリ領域毎にアクセスコマンドを生成して送信するものであるが、複数の割当メモリ領域を含むメモリ領域へのアクセスコマンドを生成して送信する場合もある。これによって、複数のアイテムのデータを一度にまとめて取得できる。これによってコマンド送受信回数を減らすことができ、以って外部メモリアクセス処理時間を短くすることができる。【００１０】
また、例えば特許文献１，２，３に開示されている従来技術がある。
特許文献１に記載の従来技術は、イーサキャット（登録商標）のＦＡシステムにおいて、異常解析を簡単・確実に行えるようにするものである。その為に、コントローラは、モニタシステムプログラムで動作するプロトコルモニタ機能を備え、リモート装置と通信するデータを常時モニタリングする。コントローラは、異常を検知する異常診断機能を備えるので、そこで異常が検出された際に、その直前にモニタしていたデータを保持する。プロトコルモニタ機能が組み込まれることで、異常発生後に新たにプロトコルモニタを外部装置としてネットワークに加入させる必要が無く、システムの稼働当初からモニタすることで、最初に発生した異常から、その原因となるデータを保持し、解析に利用できる。【００１１】
また、特許文献２に記載の従来技術は、プログラマブル表示器に表示される画面上で部品などのオブジェクトをグループ化して動作させるために、同一グループの各オブジェクトへのアドレスを効率的に対応付けるものである。その為に、作画エディタ部は、グループ設定部によって、共通のグループアドレスでグループ化する。グループ化は、作画エディタ部によって表示される作画ウインドウに配置された複数のオブジェクトに対して行う。ユーザが、グループ化するオブジェクトを選択してグループアドレスを入力すると、グループ設定部は、そのグループアドレスを選択されたオブジェクトに共通に設定する。プログラマブル表示器は、グループ化されたオブジェクトを含む画面を表示するとき、ＰＬＣの内部メモリにおけるグループアドレスに該当するアドレスの内容（ビットやワード）が変化すると、それに応じて、グループ化された各オブジェクトの表示状態を一斉に変化させる。【００１２】
また、特許文献３に記載の従来技術は、通信プロトコルを解析して、該通信プロトコルに対応した通信プログラムを作成するものである。その為に、通信プログラム作成装置は、モニタ部でプログラマブル表示器とＰＬＣとの間の通信を取得して、解析部でＰＬＣのプロトコルを自動解析する。更に、記憶部でプロトコルフォーマットを記憶し、プログラム作成部で通信インタフェースである通信プログラムＰ１を作成する。これにより、通信プログラム作成装置は、通信プログラムＰ１から記憶部に記憶されたプロトコルフォーマットを利用して、プログラマブル表示器がＰＬＣと通信しているように、ＰＬＣと通信できる。
【特許文献１】特開２０１１−３５６６４号公報
【特許文献２】特開２００７−６５９０７号公報
【特許文献３】特開２００２−３００２２６号公報
【発明の開示】
【００１３】
上記のように割当メモリアドレスは人間が設定するのであるから、設定ミスが生じる可能性は常にある。また、ミスではないにしても、より適切な設定がある場合もある。より適切な設定とは、上記外部メモリアクセス処理時間が、より短時間で済むようにするメモリアドレス設定である。これより、例えば画面データの作成等に伴って、ユーザがより適切な設定が行えるように支援する機能が要望されている。
【００１４】
上記特許文献１，２，３の従来技術は、何れも、この様な要望を解決できるものではない。
本発明の課題は、プログラマブル表示器用の画面データ作成を支援する作画エディタ装置に係わり、ユーザがより適切な割当メモリアドレス設定を行えるように支援する作画エディタ装置等を提供することである。
【００１５】
本発明は、画面上の各アイテムに係る外部メモリアクセス情報が含まれる画面データに基づいて、外部機器の外部メモリにアクセスするプログラマブル表示器と、該画面データを任意に作成させる作画エディタ装置とを有するプログラマブルコントローラシステムであって、下記の構成を有する。
【００１６】
前記作画エディタ装置は、下記の各構成を有する。
・任意の前記画面データの前記外部メモリアクセス情報から、デフォルトのバックアップ情報を生成するバックアップ情報生成手段；
・該バックアップ情報を任意に変更させる設定変更手段；
・前記デフォルトまたは変更後のバックアップ情報に基づいて、そのときのバックアップ情報に応じた外部メモリアクセスに係るメモリアクセス処理時間を算出して表示する処理時間算出手段；
【図面の簡単な説明】
【００１７】
【図１】本例のプログラマブルコントローラシステム全体の概略構成図である。
【図２】プログラマブル表示器のハードウェア構成例である。
【図３】本システムのソフトウェア構成図である。
【図４】本例の作画エディタの機能ブロック図である。
【図５】本例の作画エディタの機能の一部を概略的に示す図である。
【図６】画面選択の例である。
【図７】初期状態の解析設定表示画面の一例である。
【図８】設定変更後の解析設定表示画面の一例である。
【図９】（ａ）、（ｂ）は、画面データの具体例である。
【図１０】（ａ）は外部機器情報、（ｂ）は外部機器メモリデータの具体例である。
【図１１】解析データの具体例である。
【図１２】通信内容表示部の処理フローチャート図である。
【図１３】メモリ解析処理部の処理フローチャート図である。
【図１４】通信内容編集処理部の処理フローチャート図である。
【図１５】スイッチ監視処理部の処理フローチャート図である。
【図１６】メモリ設定処理部の処理フローチャート図である。
【図１７】コマンドのデータ構成の一例を示す図である。
【図１８】作画エディタ装置のハードウェア構成例である。
【発明を実施するための最良の形態】
【００１８】
以下、図面を参照して本発明の実施の形態について説明する。
図１は、本例のプログラマブルコントローラシステム全体の概略構成図である。
図示の例のプログラマブルコントローラシステムは、プログラマブル表示器１が通信ライン３を介して作画エディタ装置５に接続された構成となっている。尚、プログラマブル表示器１は、通信ライン６を介して１以上の接続機器４（外部機器）にも接続している。各接続機器４は、例えば各種ＰＬＣ本体や上記温度調節装置等である。プログラマブル表示器１には、複数の通信インタフェース２（通信ポート）が備えられており、各通信インタフェース２に接続された通信ライン３／通信ライン６によって各種接続機器４や作画エディタ装置５と接続されている。【００１９】
尚、図１に示す構成は、一例であり、この例に限らない。例えば、必ずしもプログラマブル表示器１が通信ライン３を介して作画エディタ装置５に接続された構成でなくてもよい。プログラマブル表示器１と作画エディタ装置５とが別々に存在していてもよい。但し、作画エディタ装置５で任意に作成された画面データが、何らかの方法でプログラマブル表示器１に渡されて記憶されるように構成することが望ましい。【００２０】
作画エディタ装置５は、上記背景技術で説明した既存の支援装置の機能も有するものである。つまり、上記操作表示画面をプログラマブル表示器１で表示させる為のデータ等（画面データ等）を、開発者等が任意に作成できるように支援する既存機能等を有する。【００２１】
既存機能は、既に述べたように、例えば、予め各種アイテム画像が用意されており、ユーザは所望のアイテム画像を選択して所望の位置に配置させる作業を繰り返して、上記画面データ作成を行う。その際、各アイテム毎に、所望の割当メモリアドレス（割当メモリ領域）等の設定も、ユーザに任意に行わせる。つまり、画面データには、各アイテム毎の割当メモリアドレスの設定情報等も含まれている。この様にして作成された画面データは、作画エディタ装置５からプログラマブル表示器１にダウンロードされる。【００２２】
但し、本例の作画エディタ装置５は、この既存機能による画面データ作成支援に関連して、更に、後述するユーザ支援機能）を有する。換言すれば、ユーザ支援機能はユーザが適切な割当メモリアドレスを設定できるように支援する機能であり、より適切な内容の画面データが作成されるように（特に適切な割当メモリアドレスが設定されるように）ユーザを支援する機能である。詳しくは後述する。【００２３】
プログラマブル表示器１は、従来と同様に、画面データに基づいて上記操作表示画面を表示する。そして、表示中に例えば定期的に、上記表示内容のリフレッシュ処理を行う。その為に、操作表示画面上の各アイテムに係わる上記割当メモリ領域へのアクセスを行って、直近のデータを取得して、この直近のデータに応じた内容の操作表示画面を表示する。【００２４】
これは、本説明では基本的に、従来で説明したように、１または複数のアイテムの割当メモリ領域を含む１つの記憶領域へのアクセスを行う要求コマンド（リードコマンド等）を、１回または複数回、生成・送信する。基本的には、表示中の操作表示画面上の全アイテムの割当メモリ領域に、アクセスすることになる。そして、その為に掛かる時間（外部メモリアクセス処理時間）は、短い方が望ましい。外部メモリアクセス処理時間が短いほど、通信パフォーマンスが良好であると見做してよい。【００２５】
尚、逐一述べないが、上記外部メモリアクセスに係わる要求コマンド等の送信先は、接続機器４であり、各アイテムの割当メモリ領域は、接続機器４内のメモリ（外部メモリ）における任意の記憶領域である。【００２６】
何れにしても、プログラマブル表示器１の機能自体は従来と同じであってよく、本例では作画エディタ装置５において新機能を備えるものである。
ここで、作画エディタ装置５は、例えば一般的な汎用コンピュータ（パーソナルコンピュータ等）で実現される。よって、特に図示等はしないが、一般的なパソコン等の構成を有する。すなわち、例えば、ＣＰＵ等の演算プロセッサ、メモリ、ハードディスク等の記憶装置、キーボードやマウス等の操作部、ディスプレイ等の表示部、通信機能部等を有している。【００２７】
上記記憶装置には予め所定のアプリケーションプログラムが記憶されており、上記演算プロセッサがこのアプリケーションプログラムを実行することにより、作画エディタ装置５の各種機能が実現される。【００２８】
また、プログラマブル表示器１も、ハードウェア構成自体は、一般的なものであってよい。よって、以下、図２を参照して簡単に説明する。
図２は、プログラマブル表示器１のハードウェア構成例である。【００２９】
プログラマブル表示器１は、上述した従来例と略同様に上述した画面データ等に基づく各スクリーン（操作表示画面）の表示等を行う機能を有する。この操作表示画面の表示処理には、上述した表示内容のリフレッシュ処理も含まれる。つまり、スクリーン上のアイテムに応じた上記外部メモリアクセス処理（割当メモリ領域からのデータ取得処理）も含まれる。【００３０】
図示のプログラマブル表示器１は、表示操作制御装置１０と、タッチパネル１８、ディスプレイ１９、上記通信インタフェース２等を有する。
表示操作制御装置１０は、ＣＰＵ１１、ＲＯＭ１２（フラッシュメモリ等）、ＲＡＭ１３、通信コントローラ１４、グラフィックコントローラ１５、タッチパネルコントローラ１６等より成り、これらがバス１７に接続されている。【００３１】
ＣＰＵ１１は、表示操作制御装置１０全体を制御する中央処理装置（演算プロセッサ）である。ＣＰＵ１１は、ＲＯＭ１２に予め格納されているアプリケーションプログラム（例えば後述する本体プログラム２１等）を実行することで、プログラマブル表示器１の各種演算処理（特に後述する各フローチャートの処理や機能ブロック図の各種処理機能）を実現する。【００３２】
また、ＲＯＭ１２には、上記背景技術で説明した画面データ等が格納されている（後述の画面データ２２）。上記のように、画面データ２２は、操作表示画面上に配置されたスイッチ、ランプ等の各アイテムに関する各種データ等を有する（各種データとは画像や表示位置座標や大きさ等のデータや、上記割当メモリアドレス等）。【００３３】
上記ＣＰＵ１１の処理によって、例えば上記画面データ２２や上記外部メモリアクセスによる取得データ等に基づく表示対象データが、例えばＲＡＭ１３上に展開（描画）される。詳しくは後述する。なお、ＲＡＭ１３は不図示のビデオＲＡＭなどで代用可能である。この描画に基づいてグラフィックコントローラ１５が、ディスプレイ１９上に上述した操作表示画面等を表示する。ディスプレイ１９は、例えば液晶パネル等より成り、この液晶パネル上に重ねるようにしてタッチパネル１８が設けられる。【００３４】
オペレータ等によるタッチパネル１８上での押圧操作位置（タッチ位置）の検知結果は、タッチパネルコントローラ１６を介してＣＰＵ１１等に取り込まれて解析される。例えば各アイテムの上記表示位置座標や大きさのデータ等に基づいて、解析することになる。例えば、スイッチの画像の表示位置をオペレータ等がタッチすると、ＣＰＵ１１等は、このスイッチに対する操作が行われたものと解析することになる。【００３５】
また、通信コントローラ１４は、通信インタフェース２を介して、不図示のＰＬＣ本体等や温度調節装置等である接続機器４や作画エディタ装置５との通信を行う。
図３に、上記本システムのソフトウェア構成図を示す。【００３６】
プログラマブル表示器１においては、本体プログラム２１、画面データ２２、通信プログラム２３等の各種プログラム／データが、フラッシュメモリ等の上記ＲＯＭ１２に格納されている。これらのプログラム／データ等をＣＰＵ１１が読出し・実行／参照等することで、プログラマブル表示器用の各操作表示画面の表示制御等が行なわれる。【００３７】
この操作表示画面は、上述した数値表示、ランプ、スイッチ等の各種アイテムの画像表示から成り、各アイテムの表示内容は、例えば各接続機器４の外部メモリデバイスの所定の記憶領域から取得したデータを反映させる形で随時更新される。換言すれば、操作表示画面は割当メモリ領域からの取得データを反映させる形で随時更新される。【００３８】
つまり、ＣＰＵ１１は、本体プログラム２１と画面データ２２と上記取得データに基づいて、上記操作表示画面の表示制御を実行する。その際、この操作表示画面上の各アイテム（各画面部品）の表示内容は、上記取得データの内容を反映させたものとなる（温度等の数値表示やランプの点灯／消灯など）。尚、これ自体は、既存の機能であり、これ以上詳細には説明しない。【００３９】
但し、本例では基本的に、複数のアイテムの各割当メモリ領域に、１つずつ順次アクセスするようなことは想定していない。つまり、基本的に、ある程度まとめてアクセスする。可能であれば１回で全アイテムの割当メモリ領域（割当アドレス）にアクセスする。【００４０】
すなわち、プログラマブル表示器１は、画面データ２２（上記各アイテム毎の割当メモリ領域）等に基づいて、各アイテムの各割当アドレス全てを含む記憶領域にアクセスするための要求コマンドを、１回、接続機器４へ送信することによって、全てのアイテムの割当アドレスにアクセスする場合がある。その一例を後述する図８に示す。【００４１】
同様に、プログラマブル表示器１は、画面データ２２等に基づいて、各アイテムの中の１以上のアイテムの割当アドレスを含む記憶領域にアクセスするための要求コマンドを、複数回、接続機器４へ送信することによって、全てのアイテムの割当アドレスにアクセスする場合がある。その一例を後述する図７に示す。【００４２】
上記画面データ２２は、例えば予め作画エディタ装置５側で任意に作成された画面データファイル３２が、プログラマブル表示器１にダウンロードされて格納されたものである。つまり、画面データ２２と画面データファイル３２とは実質的に同じものと見做して構わない。但し、この例に限らず、例えば画面データファイル３２には複数の画面データが格納されており、そのうちの一部がプログラマブル表示器１にダウンロードされて記憶されたものが画面データ２２であると見做してもよい。尚、以下、例えば画面データファイル３２を、画面データ２２または画面データ３２等と記して説明する場合もあるものとする。【００４３】
また、上記通信プログラム２３は、例えば予め作画エディタ装置５側に格納されていた通信プログラムファイル３３が、プログラマブル表示器１にダウンロードされて格納されたものである。ここで、通信プログラムファイル３３は、通常、多数存在するものであり、通信プログラム群と言ってもよい。この各通信プログラムファイル３３（通信プログラム群）のなかで任意の１種類以上の通信プログラムが、プログラマブル表示器１にダウンロードされて上記通信プログラム２３として格納される。【００４４】
ここで、上記各通信プログラムファイル３３（各種通信プログラム群）は、各種接続機器４の通信プロトコル等に対応して予め作成されているものである。そして、各種通信プログラム群のなかで、ダウンロード先のプログラマブル表示器１に接続される接続機器４（その通信プロトコル等）に対応する通信プログラムファイル３３が、当該プログラマブル表示器１にダウンロードされることになる。そして、上記通信プログラム２３として格納されることになる。【００４５】
プログラマブル表示器１の通信プログラム２３は、通信ライン６を介して接続機器４と通信を行うためのプログラムである。通常、接続機器４の機種毎等に固有の通信プロトコル（通信規定）を持ち、この通信規定に従って、プログラマブル表示器１−接続機器４間での通信を行う。そのため、通信プログラム２３は、各接続機器４の機種毎等に開発が必要となる。尚、当然、ＣＰＵ１１などが通信プログラム２３を実行することで、接続機器４との通信処理が実現される。【００４６】
ＰＬＣ本体等である接続機器４は、様々なメーカー・機種があり、各メーカー／機種毎に独自の通信プログラムがあり、上記通信プログラムは、接続機器４のメーカー／機種に応じて場合によっては多数種類作成されて、上記多数の通信プログラムファイル３３として作画エディタ装置５に格納されることになる。【００４７】
尚、プログラマブル表示器１−作画エディタ装置５間の通信は、例えば本体プログラム２１と作画エディタ３１とによって行う。例えば、通信機能が作画エディタ３１に組み込まれている。これについては特に関係ないので、図示・説明しない。【００４８】
尚、上記割当メモリ領域へのアクセスや画面表示等の各種処理を実現させるプログラムは、例えば本体プログラム２１に含まれていてもよいし、画面データ２２に含まれていてもよい。何れにしても、この様なプログラムを例えば上記ＣＰＵ１１が実行することで、プログラマブル表示器１の各種動作が実現されることになる。【００４９】
また、作画エディタ装置５の作画エディタ３１が、画面データ作成支援に係る上記既存機能や新規機能を有するものである。ユーザは、作画エディタ３１による支援を受けながら、任意の画面データ（画面データ３２）を作成する。【００５０】
例えば、予め作成済みの各種アイテムが、作画エディタ装置５のハードディスク等に記憶されている。作画エディタ３１による操作表示画面の作成支援機能によって、これら各種アイテムが一覧表示されて、ユーザは所望のアイテムを選択して所望の位置に配置する。更に、各アイテム毎に任意の割当メモリアドレスを設定する。ここまでは既存技術と見做して構わないが、本例の作画エディタ３１は、更に、ユーザが適切な割当メモリアドレスを設定できるように支援する新機能も有する。詳しくは後述する。【００５１】
尚、作画エディタ装置５は、例えばパソコン等であり、特に図示しないが一般的な汎用コンピュータの構成を有している。すなわち、例えば、ＣＰＵ、記憶部（ハードディスク、メモリ等）、通信部、操作部（マウス等）、ディスプレイ等を有している。記憶部に予め記憶されているアプリケーションプログラムを、ＣＰＵが実行することにより、作画エディタ３１の上述した既存機能や新機能が実現される。【００５２】
図４は、上記作画エディタ装置５（その作画エディタ３１）の機能ブロック図である。
図示の例の作画エディタ装置５は、通信内容表示部４１、メモリ解析処理部４２、スイッチ監視処理部４３、メモリ設定処理部４４、通信内容編集処理部４５、メモリ解析処理群４６の各種処理機能部を有する。尚、上記の通り、これら各種処理機能は、不図示のＣＰＵが不図示の記憶部に記憶されたアプリケーションプログラムを実行することにより実現される。また、尚、メモリ解析処理群４６は、プログラマブル表示器１が有する既存機能を、作画エディタ装置５に搭載したものである。【００５３】
通信内容表示部４１は、画面データ３２等に基づいて外部機器情報５１とデフォルトの外部機器メモリデータ５２を生成すると共に、メモリ解析処理部４２、スイッチ監視処理部４３、通信内容編集処理部４５を適宜動作させる。これによって、ユーザに任意の外部メモリ設定を行わせると共に、設定内容に応じた通信パフォーマンス情報を算出・表示する。通信パフォーマンス情報とは外部メモリアクセス処理時間などを意味する。【００５４】
通信内容編集処理部４５は、ユーザに、任意のアイテムの割当メモリアドレスの設定内容を任意に変更させる。そして、この変更内容を外部機器メモリデータ５２に反映させる。【００５５】
メモリ解析処理部４２は、メモリ解析処理群４６を動作させる。メモリ解析処理群４６は、外部機器情報５１と外部機器メモリデータ５２に基づいて所定の解析処理を実行して処理結果として解析データ５３を出力する。これは、外部機器情報５１や外部機器メモリデータ５２等に基づいて、上記所定の解析処理を実行させて解析データ５３を生成する。つまり、メモリ解析処理部４２は、外部機器情報５１や外部機器メモリデータ５２のデフォルト状態や割当メモリアドレス設定変更後の情報に基づいて、解析処理を実行させて解析データ５３を生成する。尚、所定の解析処理は、上記の通り既存処理であり、後に説明するものとする。【００５６】
つまり、メモリ解析処理部４２は、プログラマブル表示器１と接続機器４（外部機器）との間の通信パフォーマンスを示す情報（特にユーザ設定に応じたもの）を、算出するものと言える。これは、特に、任意の画面データに係わる外部メモリアクセスの為の処理時間（外部メモリアクセス処理時間）を、算出するものである。これは、例えば後述するように、外部メモリアクセスの為のコマンド送受信に係わる伝送時間を、算出するものであるが、この例に限らない。詳しくは後述する。【００５７】
上記解析結果は、表示される。ユーザは、この表示内容を参照して、割当メモリアドレスが現在の状態で適切か否かを判断する。不適切と判断した場合には、上記割当メモリアドレスの設定内容を更に変更して、新たな解析結果を表示させる。一方、適切と判断した場合には。所定のスイッチ操作を行う。スイッチ監視処理部４３は、このスイッチ操作の有無を監視しており、所定のスイッチ操作があった場合にはメモリ設定処理部４４を動作させる。【００５８】
メモリ設定処理部４４は、そのときの外部機器メモリデータ５２の内容を、画面データ３２に反映させる（画面データ３２を更新する）。これによって、画面データ３２における既存の割当メモリアドレスが、ユーザが適切と判断したときの割当メモリアドレスに変更されることになる。【００５９】
尚、画面データ３２が複数の画面データより成る場合には、例えば図５や図６に示すように、最初に画面データ一覧を表示して、解析対象とする任意の画面データをユーザに選択させる。これより、解析対象の画面データに関して、上記デフォルト状態や任意のアドレス設定変更毎の外部機器メモリデータ５２に応じた解析処理と処理結果（解析データ５３）の表示等が、行われる。そして、上記所定のスイッチ操作があった場合には、解析対象の画面データを、そのときの外部機器メモリデータ５２に基づいて更新する。解析対象の画面データは、例えば後述する画面Ｎｏ．１０１等によって識別できる。【００６０】
尚、図４には示していないが、メモリ設定処理部４４によって画面データ３２が更新された場合に、自動的に、当該更新後の画面データ３２をプログラマブル表示器にダウンロード（転送）して、不図示ではあるが、その画面データ２２を更新させる転送部が更に設けられていてもよい。これによって、プログラマブル表示器側の画面データ２２を更新し忘れる事態を回避できる。【００６１】
図７、図８は、上記作画エディタ装置５による解析設定表示画面の具体例である。図７はデフォルト状態、図８は任意のアドレス設定変更に係るものである。
図７、図８に示す解析設定表示画面６０は、メモリ設定表示／変更領域６１、解析結果表示領域６２を有する。更に、ＯＫスイッチ６３、適用スイッチ６４、キャンセルスイッチ６５等の各種スイッチ（ボタン）等も有する。【００６２】
メモリ設定表示／変更領域６１には、外部機器メモリデータ５２の現在の内容（各割当メモリアドレス）が表示される。上記の通り、外部機器メモリデータ５２の各割当メモリアドレスは、デフォルト状態では画面データ３２と同一である。また、外部機器メモリデータ５２の各割当メモリアドレスは、画面データ３２が複数の画面データより成る場合には、上記選択された解析対象の画面データと同一である。つまり、デフォルト状態では画面データ３２の各割当メモリアドレスが表示されることになる。【００６３】
そして、ユーザが任意のアドレス設定を変更する毎に、変更後の各割当メモリアドレスが表示されることになる。
ここで、このメモリ設定表示／変更領域６１上の表示は、例えば、解析対象の画面データ上の全てのアイテムに係る割当メモリアドレスが、表示されることになる。例えば、図７に示す例では、アドレスＤ０〜Ｄ９までの１０ワードの領域及びアドレスＤ１００の１ワードの領域が、解析対象の画面データに関して割り当てられていることになる。【００６４】
但し、この表示例では、解析対象の画面データ上のアイテム個々の割当メモリアドレスまでは分からない。よって、図示の例の場合、解析対象の画面データ上には１１個のアイテムがあって各アイテムに１ワードずつメモリ領域が割り当てられているかもしれない。あるいは、解析対象の画面データ上には２個のアイテムがあって、一方にはアドレスＤ０〜Ｄ９が割り当てられ、他方にはアドレスＤ１００が割り当てられているかもしれない。しかし、本手法では、この点は関係ない。【００６５】
尚、本例では各アドレスは１ワード単位であるものとして説明するが、勿論、この例に限るわけではない。
図７において、そのメモリ設定表示／変更領域６１の表示内容に応じた、すなわち現在の外部機器メモリデータ５２に応じた解析処理結果が、解析結果表示領域６２に表示されることになる。図示の例では、メモリ解析の結果、ブロックリードコマンド（要求コマンド）を２回使用している。【００６６】
尚、既存の要求コマンドの例として、任意の１つのアドレス範囲（１ワード以上）にメモリアクセスするブロックリードコマンドや、任意の１または複数のアドレスにメモリアクセスするランダムリードコマンドや、ビット単位でメモリアクセスするビットリードコマンドがある。【００６７】
特に、ブロックリードコマンドを用いる場合、１回の要求コマンドで１つのアドレス範囲しかアクセスできないので、アクセス先がＤ０〜Ｄ９、Ｄ１００の例の場合、１回の要求コマンドで全データを取得しようとすると、必要のない記憶領域（Ｄ１０〜Ｄ９９の記憶領域）の大量のデータまでも一緒に取得することになる。この為、通信パフォーマンスが悪くなる。これに対して、要求コマンドを２回にすることで、通信パフォーマンスは改善するかもしれないが、未だ不十分である。しかし、これは、ユーザが割当メモリアドレスの設定を変更しない限り、改善しないものである。【００６８】
本手法は、主に、上記ブロックリードコマンドを用いる場合に対応するものである。従って、本説明において特に断らない限り、リードコマンドや要求コマンドと記した場合、ブロックリードコマンド等を意味するものとする。但し、リードコマンドに限らず、ライトコマンド等であっても構わない。これより、リードとライトとを区別することなく、アクセスと呼ぶ場合もあるものとする。【００６９】
任意の要求コマンドを接続機器４へ送信し、これに応じた接続機器４からの応答コマンドを受信完了するまでの時間が、各コマンド毎の外部メモリデータ取得に掛かる主な時間であり、ここでは図示の「処理時間」と呼ぶものとする。換言すれば、「処理時間」は、“要求コマンドの伝送時間＋応答コマンドの伝送時間”である。尚、上記応答コマンドには、割当メモリ領域の格納データ等が含まれる。【００７０】
この様な各要求コマンド毎の「処理時間」や、これら「処理時間」の合計（「処理時間」合計）が、メモリ解析処理群４６によって算出されて、図示のように解析結果表示領域６２に表示される。【００７１】
図示の解析結果表示領域６２に示す例では、１回目の処理時間は28.646［ms］［ms］であり、２回目の処理時間は9.896［ms］であり、合計38.542［ms］掛かっていることになる。これは、任意の画面データの全アイテムの割当メモリ領域のデータ取得に掛かる時間が、38.542［ms］であると見做して構わない。換言すれば、任意の画面データに係わる外部メモリアクセス処理時間が、38.542［ms］であると言うこともできる。【００７２】
ここで、メモリ設定表示／変更領域６１上では、上記のように現在のメモリ設定内容を表示するだけでなく、ユーザがメモリ設定内容を任意に変更できる。この変更操作方法は、様々であってよいが、図８に示す例では、マウス操作によって任意のメモリ領域をドラッグして移動させて任意の移動先でドロップ操作を行う。これによって図示の例では、任意のアイテムに関する割当メモリアドレスが、Ｄ１００からＤ１０に変更される。この変更内容は外部機器メモリデータ５２に反映される。【００７３】
これより、上記変更後の外部機器メモリデータ５２に基づいて、メモリ解析処理部４２（メモリ解析処理群４６）によって解析処理が行われることになり、その結果、図８の解析結果表示領域６２に示す解析結果が得られることになる。図示の例では、メモリ解析の結果、リードコマンド（要求コマンド）を１回だけ使用している。そして、図示の例では、処理時間は30.729［ms］であり、１回だけなので全体の処理時間は30.729［ms］となる。【００７４】
従って、全体の処理時間は、図８の場合の方が図７よりも短くて済むようになり、図８のメモリアドレス設定が図７よりも適切であることが分かる。
これより、ユーザが図８の状態において図示のＯＫスイッチ６３等を操作することで、図８におけるメモリ設定表示／変更領域６１の割当メモリアドレスが、解析対象の画面データ３２に反映されることになる。つまり、スイッチ監視処理部４３によって上記のＯＫスイッチ６３操作などが検出されると、メモリ設定処理部４４が、現在の外部機器メモリデータ５２の割当メモリアドレスによって、画面データ３２の該当する割当メモリアドレスを更新する。【００７５】
上記各処理時間の算出方法については、後に一例について説明する。ここでは、上記リードコマンドの使用回数の判定処理について説明する。尚、上記要求コマンドの使用回数は、本例では２回使用するか１回使用するか等となるが、この例に限らず、３回以上使用する場合も有り得る。【００７６】
但し、これは、上記の通り、従来よりプログラマブル表示器１が有する機能であり、簡単に説明するのみとする。尚、リードコマンドの使用回数は、１回のリフレッシュ処理に係わるプログラマブル表示器１−接続機器４間の通信回数を意味するものと見做しても構わない。【００７７】
従来のプログラマブル表示器では、一例としては、上記リフレッシュ処理に係わり現在表示中の画面データ上の各アイテムに関する外部メモリアクセスを行う際に、要求コマンドの使用回数と、各要求コマンド毎のアクセス先（アドレス範囲）を決定する処理を行っていた。そして、本手法では、当該従来のプログラマブル表示器の機能を、作画エディタ装置５にも搭載させている。【００７８】
上記のような要求コマンドの回数とアドレス範囲を決定する従来のプログラマブル表示器の機能は、何種類かあり、以下、簡単に説明する。
一例としては、例えば、要求コマンドを１回だけとする場合と、割当メモリアドレスだけをアクセスする場合とで、どちらの伝送時間が短くて済むかを判定し、短くて済む方の要求コマンドの回数とアドレス範囲を採用する方法がある。尚、伝送時間の算出方法は後述する。【００７９】
図７の例の場合、要求コマンドを１回だけとする場合には、アドレス範囲はＤ０〜Ｄ１００となり、当然、割当メモリアドレス以外のアドレス（Ｄ１０〜Ｄ９９）も含まれることになる。【００８０】
一方、割当メモリアドレスだけをアクセスする場合には、割当メモリアドレスが連続する場合には一纏めでアクセスする。よって、図７の例では、Ｄ０〜Ｄ９までは割当メモリアドレスが連続するので、これを一纏めでアクセスすると共に、別途、Ｄ１００にもアクセスするものと決定する。つまり、要求コマンドは２回となる。【００８１】
上記のことから、図７の例では、１回の要求コマンドでＤ０〜Ｄ１００にアクセスする場合の伝送時間と、２回の要求コマンドでそれぞれＤ０〜Ｄ９とＤ１００にアクセスする場合の伝送時間合計とを求めることになる、そして、伝送時間が相対的に短い方を採用する。図７の例では、２回の要求コマンドを用いる方が伝送時間が短かったものとする。この結果は、１回の要求コマンドの場合には割当メモリアドレス以外のアドレス（Ｄ１０〜Ｄ９９）が多すぎることが、要因であると見做しても構わない。【００８２】
以上、要求コマンドの回数等の決定方法に関して、一例を説明したが、以下、他の例についても説明する。
ここで、接続機器４の機種等によっては、データリード１回当たりのデータ読出し量に上限（制約）がある場合がある。例えば、１回当たりに３０ワード分のデータまでしか読み出せない接続機器４等があるものとする。【００８３】
そして、他の例では、プログラマブル表示器は、上記制約の元に上記要求コマンドの使用回数を出来るだけ少なくする制御を行うものとする。つまり、まず１回の要求コマンドで全データ読出し可能か否かを判定し、読出し不可の場合には続いて２回の要求コマンドで全データ読出し可能か否かを判定し、それでも読出し不可の場合には続いて３回の要求コマンドで全データ読出し可能か否かを判定する。これを、読出し可能と判定されるまで続ける。【００８４】
他の例では、図７に示す例の場合、１回の要求コマンドで全割当メモリアドレスのデータを取得しようとする場合、アドレスＤ０〜Ｄ１００の領域、つまり、１０１ワード分の領域が取得対象となるが、３０ワードを超えるのでＮＧ（読出し不可）と判定されることになる。この為、続いて、２回の要求コマンドで全割当メモリアドレスのデータを取得しようとすると、今度は、アドレスＤ０〜Ｄ９の領域、つまり、１０ワード分の領域と、アドレスＤ１００の領域（１ワード分の領域）とが取得対象となり、どちらも３０ワードを超えないので、ＯＫ（読出し可能）と判定されることになる。【００８５】
尚、これに対して、図８に示す例の場合、１回の要求コマンドで全割当メモリアドレスのデータを取得しようとする場合、アドレスＤ０〜Ｄ１０の領域（１１ワード分の領域）が取得対象となり、３０ワードを超えないのでＯＫとなる。尚、その意味では、アドレスＤ１００からの移動先は、Ｄ１０に限るものではなく、Ｄ１６やＤ２０やＤ２５等、Ｄ１０〜Ｄ２９の範囲内であれば何でもよいことになるが、使用していないメモリアドレス(Ｄ１０〜移動先メモリアドレスの１つ前のメモリアドレスまで)のデータも取得してしまうことになり、解析結果表示領域６２の処理時間は長くなる。【００８６】
本手法では、この様なプログラマブル表示器１の既存機能の一部を、作画エディタ装置５（その作画エディタ３１）に搭載している。これが上記メモリ解析処理群４６である。
図９（ａ）、（ｂ）は、上記画面データ３２（２２）の具体例である。【００８７】
図９（ａ）に示す例では、画面データ３２（２２）は、アイテムタイプ７１、座標７２、サイズ７３、“アイテムタイプ毎のデータ”７４、メモリアドレス情報７５等の各データ項目より成る。尚、上記各アイテム毎に図示の各レコードの情報が格納されている。また、図９（ｂ）には、上記メモリアドレス情報７５の詳細例を示す。【００８８】
アイテムタイプ７１には、スイッチ、ランプ、数値表示等のアイテムの種別（を示すアイテム種別識別情報が格納される。“アイテムタイプ毎のデータ”７４には、例えばそのアイテムに係る画像等が格納される。アイテムに係る画像とは、例えばランプ・アイテムであればランプ点灯画像とランプ消灯画像、あるいはスイッチ・アイテムであればスイッチＯＮ画像とスイッチＯＦＦ画像等の各種アイテムの画像である。【００８９】
座標７２とサイズ７３には、上記操作表示画面上における上記アイテム画像の表示位置と大きさを示す情報が格納される。
そして、メモリアドレス情報７５が、上記外部メモリアクセス処理に係わる情報であり、上記割当メモリアドレス等の情報が含まれている。そして、本手法による設定データ修正・変更対象が、このメモリアドレス情報７５（特にアドレス８４）である。【００９０】
図９（ｂ）に示す例では、メモリアドレス情報７５は、メモリモデル８１、メモリアクセス８２、デバイス名８３、アドレス８４、データ数８５等を有する。
メモリモデル８１は、アクセス先の接続機器４の識別情報である。【００９１】
メモリアクセス８２は、デバイス名８３が示す外部メモリデバイスへのアクセス形式を示す。その形式は、例えば、１bitアクセス、１６bit（１ワード）アクセス等である。
デバイス名８３は、アクセス先の外部メモリデバイスの識別情報である。【００９２】
アドレス８４は、デバイス名８３が示す外部メモリデバイスにおけるアクセス先の記憶領域の先頭アドレス等である。
データ数８５は、例えば上記アクセス先の記憶領域の容量等を示す。例えば、アドレス８４が‘１０１番地’でデータ数８５が‘３’であるならば、１０１番地〜１０３番地が上記アクセス先の記憶領域となる。【００９３】
上記メモリモデル８１が示す接続機器４における上記デバイス名８３が示すメモリデバイスの上記アドレス８４等が示す記憶領域が、上記割当メモリ領域に相当するものである。本手法による変更対象は、主にこの割当メモリ領域となる。【００９４】
上述したように、上記画面データ３２等に基づいて、外部機器情報５１、外部機器メモリデータ５２が生成される。但し、図９（ａ）、（ｂ）の例の場合には、画面データ２２だけでは、以下に説明する図１０（ａ）の例の外部機器情報５１は、生成できない。これより、例えば、各種接続機器毎に、不図示の通信プロトコル情報等が、予め別途記憶されているものとしてもよい。これは、例えば、各種接続機器毎に、その識別情報に対応付けて、物理回線（シリアル、Ethernet（登録商標）等）、ボーレート、データ長、ストップビット、パリティ等が登録されているものである。【００９５】
但し、この例に限らず、例えば上記メモリアドレス情報７５には図示していないが図１０（ａ）に示す外部機器情報５１に相当する情報も含まれているものであってもよい。本説明ではこの例を用いるものとする。従って、画面データ３２等に基づいて、外部機器情報５１、外部機器メモリデータ５２が生成される。そして、これは、画面データ３２の一部をコピーすることによって、外部機器情報５１、外部機器メモリデータ５２が生成されるものと見做してもよい。つまり、外部機器情報５１、外部機器メモリデータ５２は、画面データ３２のバックアップ情報と見做してもよい。【００９６】
そして、本手法に係わるユーザ設定作業に伴って、バックアップ情報（主に外部機器メモリデータ５２）を更新する。そして、ユーザによる所定の指示操作に応じて、バックアップ情報の変更内容を画面データ３２に反映させる。【００９７】
例えば、上記不図示の各種接続機器毎の通信プロトコル情報やメモリアドレス情報７５等から、デバイス名８３が示す接続機器に対応する通信プロトコル情報を抽出することで、外部機器情報５１が生成される。【００９８】
ここで、図１０（ａ）、（ｂ）に、外部機器情報５１、外部機器メモリデータ５２の具体例を示す。
図１０（ａ）に示す例では、外部機器情報５１は、外部機器９１、物理回線９２、ボーレート９３、データ長９４、ストップビット９５、パリティビット９６、スタートビット９７等のデータ項目から成る。【００９９】
外部機器９１は、上記の通り、画面データ３２に係わる任意の接続機器４の識別情報であり、この接続機器４に関する上記通信プロトコル情報が、物理回線９２〜パリティ９６等である。外部機器情報５１の上記各データは、例えば画面データ３２（２２）に含まれている。【０１００】
また、図１０（ｂ）に示す例では、外部機器メモリデータ５２は、画面Ｎｏ．１０１、デバイス名１０２、アドレス１０３等のデータ項目から成る。画面Ｎｏ．１０１には、上記図５や図６で一覧表示された画面のなかからユーザが任意に選択した画面の画面Ｎｏ．が格納される。画面Ｎｏ．１０１の画面に係る画面データ３２における上記デバイス名８３、アドレス８４が、デバイス名１０２、アドレス１０３に格納される。また、ダイアログボックス（例えば解析設定表示画面６０等）上でのユーザ設定操作があった場合には、後述するステップＳ３３によって、デバイス名１０２、アドレス１０３等が更新される。詳しくは後述する。【０１０１】
尚、画面Ｎｏ．は画面データの識別情報であり、特に図示しないが、各画面Ｎｏ．に対応付けて図９（ａ）に示す例の画面データ３２等が格納されている。
また、図１１には、解析データ５３の具体例を示す。【０１０２】
図示の例では、解析データ５３は、通信コマンド種別１１１、Ｎｏ．１１２、処理時間１１３、外部メモリ１１４等の各データ項目より成る。概略的には、上記各要求コマンド毎に、アクセス先のアドレス範囲が外部メモリ１１４に格納され、解析処理結果としての上記外部メモリアクセス処理時間が、処理時間１１３に格納される。例えば上記図７の例では２つのコマンドに関する情報が格納される。つまり、レコード数は２となる。また、例えば上記図７の例では１つのコマンドに関する情報が格納される。つまり、レコード数は１となる。【０１０３】
これら各コマンドの種別が、通信コマンド種別１１１に格納される。図７、図８の例では“ブロックリード”が格納されることになる。尚、上記の通り、他にも例えばビットリードなどのコマンドがあるが、本説明では関係ない。【０１０４】
また、これら各コマンドを用いた外部メモリアクセスに係わる上記「処理時間」（要求コマンドの伝送時間＋応答コマンドの伝送時間）の計算結果（シミュレーション結果）が、処理時間１１３に格納される。また、このコマンドによるアクセス先（デバイス名＋アドレス範囲）が、外部メモリ１１４に格納される。尚、Ｎｏ．１１２は単なるシリアル番号である。【０１０５】
以下、上記各種処理機能部による処理例を、図１２〜図１６の処理フローチャート図を参照して説明する。
図１２は、通信内容表示部４１の処理フローチャート図である。尚、これは、本手法によるユーザ支援機能の全体フローチャート図と見做すこともできる。【０１０６】
例えば図６に示す画面一覧のなかからユーザが所望の画面を選択する操作を行うと、図１２の処理が開始される。尚、その際、選択された画面の画面Ｎｏ．等が、パラメータとして渡される。【０１０７】
通信内容表示部４１は、まず、初期状態のダイアログボックスを生成・表示する処理であるステップＳ１１、Ｓ１２，Ｓ１３の処理を実行する。初期状態のダイアログボックスとは、例えば、上記図７に示す初期状態の解析設定表示画面６０等である。【０１０８】
すなわち、まず、上記選択された画面の画面データ３２に基づいて、外部機器情報５１、外部機器メモリデータ５２を生成する（ステップＳ１１）。そして、メモリ解析処理部４２を起動してメモリ解析処理を実行させる（ステップＳ１２）。メモリ解析処理の処理フローチャート図を図１３に示し後に説明する。そして、このメモリ解析処理結果を用いて初期状態のダイアログボックス（上記解析設定表示画面６０等）を表示する（ステップＳ１３）。これは、現在の画面データ３２の外部メモリ設定内容とこれに応じた解析処理結果を、表示するものと言える。【０１０９】
その後は、基本的に、通信内容編集処理部４５によって、ユーザによるメモリ設定変更操作の監視と、この設定に応じてメモリ解析処理を実行させて処理結果をダイアログボックスに表示する処理を繰り返す（ステップＳ１４）。この際のダイヤログボックスは、例えば、上記図８の解析設定表示画面６０等である。なお、ステップＳ１４の詳細処理フローチャートについては、図１４に示し後に説明する。【０１１０】
上記新たな解析処理結果等がダイアログボックスに表示される毎に、スイッチ監視処理部４３によって、ユーザによる所定スイッチ操作の監視が行われると共に、この所定スイッチ操作があった場合にはメモリ設定処理部４４を起動する処理が行われる（ステップＳ１５）。ステップＳ１５の詳細フローチャート図を図１５に示し後に説明する。また、メモリ設定処理部４４の処理フローチャート図を図１６に示し後に説明する。メモリ設定処理部４４によって画面データ３２が更新される。これは、上記ユーザによるメモリ設定変更を反映させる形で画面データ３２が更新される。【０１１１】
上記所定のスイッチ操作は、例えば図７、図８に示すＯＫスイッチ６３または適用スイッチ６４である。そして、例えば、ＯＫスイッチ６３が操作された場合には、上記メモリ設定処理部４４の処理が実行されると共に、ダイアログボックス表示終了と判定して（ステップＳ１６，ＮＯ）、ダイアログボックスを非表示にして（ステップＳ１７）、本処理を終了する。一方、例えば、適用スイッチ６４が操作された場合には、上記メモリ設定処理部４４の処理が実行されると共に、ダイアログボックス表示続行と判定して（ステップＳ１６，ＹＥＳ）、ステップＳ１４に戻る。【０１１２】
尚、キャンセルスイッチが操作された場合には、いつでも、ダイアログボックスを非表示にして（ステップＳ１７）、本処理を終了する。
以上、図１２の処理について説明した。【０１１３】
以下、上述した図１３、図１４、図１５、図１６の各処理について説明する。
上記の通り、図１３は、メモリ解析処理部４２の処理フローチャート図である。
図１３の例では、まず、解析データ５３をデータ消去等の初期化を行なう（ステップＳ２１）。その後、外部機器情報５１と外部機器メモリデータ５２に基づいて、新たな解析データ５３を生成する（ステップＳ２２）。本処理が上記ステップＳ１２の処理であるならば、外部機器メモリデータ５２は元々の画面データ３２の内容のまま、つまり、デフォルト状態となっている。一方、本処理が後述するステップＳ３４の処理ならば、外部機器メモリデータ５２はダイアログボックス（例えば解析設定表示画面６０等）上でのユーザ設定に応じた内容となっている。【０１１４】
上記ステップＳ１２の際の上記ステップＳ２２の処理を、図７に示す具体例と図１０（ａ）の図上下側に示す具体例を用いて説明するならば、下記のようになる。
まず、図７に示すように、割当メモリアドレスは、Ｄ０〜Ｄ９、Ｄ１００となっている。また、図１０（ａ）の図上下側に示す例では、物理回線９２＝“シリアル通信”、ボーレート９３＝“19200（bps）”、データ長９４＝“７［bit］”、ストップビット９５＝“１［bit］”、パリティビット９６＝“１［bit］”、スタートビット９７＝“１［bit］”となっている。【０１１５】
この例の場合、まず、Ｄ０〜Ｄ９のリードコマンド、Ｄ１００のリードコマンドの２つの要求コマンドを生成するものと判定される。これら２つの要求コマンドの伝送時間は、同じである。一方、これら各要求コマンドに応じた接続機器４からの応答コマンドの伝送時間は、リードするデータの総データ量（上記の例では一方が１０ワードで他方が１ワード）に応じたものとなる。【０１１６】
尚、本説明では、要求コマンド生成に掛かる時間や、接続機器４側でのメモリからのデータリード処理や応答コマンド生成に掛かる時間は、考慮しないものとするが、この例に限らない。また、本説明では、上記の通りシリアル通信を例にする。【０１１７】
上記のこと、及び図１０（ａ）の図上下側に示す例によって、要求コマンドの伝送時間は下記のようになる。
まず、ボーレートが“19200（bps）”であることは、１[ms]当り19.2[bit]を伝送可能であることを意味している。尚、これは、19200÷1000[ms]＝19.2[bit／ms]によって算出できる。【０１１８】
また、上記の通り、データ長＝“７［bit］”、ストップビット＝“１［bit］”、パリティビット＝“１［bit］”、スタートビット９７＝“１［bit］”であるので、１キャラクタ当たりのデータ量は、
７[bit]＋１[bit] ＋１[bit] ＋１[bit] ＋１[bit]＝１０[bit]
となる。【０１１９】
ここで、本説明では、シリアル通信に係るコマンドのデータ構成については、図１７に示すデータ構成例と表現を用いるものとする。図１７に示す例では、複数の“キャラクタ”によって要求コマンドの１フレームが構成されている。図示の例では要求コマンドの１フレームは、１２個の“キャラクタ”で構成されている。尚、図には示していないが、要求コマンドと同様に、複数の“キャラクタ”によって応答コマンドの１フレームが構成されている。勿論、この例に限るものではなく、例えば図１７における“キャラクタ”に相当するものを“フレーム”と呼ぶケースもある。しかし、ここでは図１７に示す定義に応じて説明するものとする。【０１２０】
また、図１７に示すように、各キャラクタは、上記ストップビット、パリティビット、スタートビット等とデータから構成されており、上記の通り本例では１キャラクタ当たり１０[bit]となっている。【０１２１】
ここで、要求コマンドのキャラクタ数は、固定的に決まっており、ここでは図１７に示す例を用いて１２[キャラクタ]であるものとする。また、応答コマンドのキャラクタ数は、当然、外部メモリから読み出すデータ量に応じて変動する。ここでは仮に１ワード当たり４[キャラクタ]となるものとする。また、応答コマンドであることを示すコマンド識別情報として３[キャラクタ]必要になるものとする。よって。例えば１０ワード分読み出す場合には、応答コマンドのキャラクタ数は、３＋４×１０＝４３[キャラクタ]となることになる。【０１２２】
上記のことから、要求コマンド（リードコマンド）の総データ量は、
１０[bit]×１２[キャラクタ]＝１２０[bit]
となる。【０１２３】
従って、要求コマンドの伝送時間は、
１２０[bit]÷１９．２＝６．２５[ms]
となる。【０１２４】
同様にして、応答コマンドに関する伝送時間は、下記のように算出できる。
まず、１０ワードの応答コマンドの場合、その総データ量は上記の例の場合には
｛３[キャラクタ]＋４[キャラクタ]×１０[ワード]｝×１０[bit]＝４３０[bit]
となる。【０１２５】
よって、当該応答コマンドの伝送時間は、
４３０[bit]÷１９．２＝２２．３９６［ms］
となる。【０１２６】
同様にして、１ワードの応答コマンドの場合、その総データ量は
｛３[キャラクタ]＋４[キャラクタ]×１[ワード]｝×１０[bit]＝７０[bit]
となる。【０１２７】
よって、当該応答コマンドの伝送時間は、
７０[bit]÷１９．２＝３．６４６［ms］
となる。【０１２８】
上記のことから、１回目のデータ読出しに掛かる時間（メモリアクセス処理時間）は、
６．２５[ms]＋２２．３９６[ms]＝２８．６４６[ms]
となる。【０１２９】
２回目のデータ読出しに掛かる時間（メモリアクセス処理時間）は、
６．２５[ms]＋３．６４６[ms]＝９．８９６[ms]
となる。【０１３０】
従って、全体としてはデータ読出しに掛かる時間（全体のメモリアクセス処理時間）は、
２８．６４６[ms]＋９．８９６[ms]＝３８．５４２[ms]
となることになる。【０１３１】
例えば上記のような処理によって得られた解析データ５３に基づいて、デフォルト状態の外部機器メモリデータ５２（元々の画面データ３２）に応じたメモリ解析結果が、例えば図７に示すように解析設定表示画面６０等に表示されることになる（ステップＳ１３）。【０１３２】
尚、本説明では、上述したように、メモリアクセス処理時間を「要求コマンドの伝送時間＋応答コマンドの伝送時間」としているが、実際には、各コマンド生成や、接続機器４側で外部メモリからデータを読み出す時間が、更に加わることになる。よって、これらの時間も加算することでメモリアクセス処理時間を算出するようにしてもよい。但し、本手法では、正確なメモリアクセス処理時間を知る必要はないので、上述した例のように「要求コマンドの伝送時間＋応答コマンドの伝送時間」をメモリアクセス処理時間としてもよい。つまり、本手法では、設定変更に応じた増減等を確認できればよいので、「要求コマンドの伝送時間＋応答コマンドの伝送時間」をメモリアクセス処理時間としてもよい。【０１３３】
図１４は、上記ステップＳ１４の詳細フローチャート図である。これは、通信内容編集処理部４５の処理フローチャート図とも言える。
図１４の処理は、サイクリックに実行されるものであり、随時、特定のイベント発生を監視している（ステップＳ３１）。そして、特定のイベントが発生した場合、例えばメモリ設定表示／変更領域６１上でユーザによるメモリ割当設定操作があった場合には（ステップＳ３２，ＹＥＳ）、ステップＳ３３、Ｓ３４，Ｓ３５の処理を実行する。上記特定のイベント発生とは、例えば、解析設定表示画面６０のメモリ設定表示／変更領域６１上でのユーザ操作の有無である。【０１３４】
まず、ユーザによる設定内容を外部機器メモリデータ５２に反映させる（ステップＳ３３）。図８の例の場合、例えば、外部機器メモリデータ５２においてアドレス１０３＝“１００”であったレコードのアドレス１０３を‘１０’に更新する。但し、この例に限らず、例えば外部機器メモリデータ５２には不図示の差分データ格納欄が存在するものとし、ステップＳ３３ではこの差分データを更新するようにしてもよい。この場合、上記一例では‘１０’と‘１００’との差分である‘−９０’が、上記差分データ格納欄に格納されることになる。そして、後に外部機器メモリデータ５２に基づいて画面データ３２を更新する際には、上記差分データを用いることになる。【０１３５】
そして、メモリ解析処理部４２によって上記図１３の処理を実行させる（ステップＳ３４）。図１３の処理については既に説明したが、上記ステップＳ３３によって外部機器メモリデータ５２の内容が更新されているので、上記具体例に応じた処理結果は変わることになる。【０１３６】
例えば、ユーザが上記図８のようにメモリ設定した場合には、Ｄ０〜Ｄ１０のリードコマンドという１つの要求コマンドのみを生成するものと判定される。この場合、ここでは特に説明しないが上記と略同様の処理により、応答コマンドの伝送時間は、24.479[ms]となる。要求コマンドの伝送時間は、上記の通り、常に６．２５[ms]となるので、データ読出しに掛かる時間（外部メモリアクセス処理時間）は、
６．２５[ms]と＋24.479[ms]＝30.729[ms]
となる。【０１３７】
この例では要求コマンドは１回だけ使用されるので、上記30.729[ms]が、そのまま、全体の外部メモリアクセス処理時間となる。
上記解析処理によって新たな解析データ５３が生成される。【０１３８】
通信内容編集処理部４５は、この解析データ５３に基づいて、解析結果表示領域６２の表示内容を更新する（ステップＳ３５）。これによって解析設定表示画面６０は例えば図８に示す表示内容となる。【０１３９】
図７、図８の表示内容の場合、図８に示す例の方がデータ読出しに掛かる時間が短くなる。つまり、図８に示すメモリ割当は、図７に示すメモリ割当よりも適切であると見做してよいことになる。これより、ユーザが例えば図８の画面上でＯＫスイッチ６３等を操作することで、このときのユーザ設定内容によって画面データ３２が更新されることになる。この例では、画面データ３２においてデバイス名８３が‘Ｄ’でアドレス８４が‘１００’であったレコードのアドレス８４が、‘１０’に更新されることになる。【０１４０】
例えばこの様なユーザによる所定のスイッチ操作の検出とそれに伴う画面データ３２の更新に係る処理の詳細例を、図１５、図１６に示す。
図１５は、上記ステップＳ１５の詳細フローチャート図である。これは、スイッチ監視処理部４３の処理フローチャート図とも言える。【０１４１】
図１５の処理は、サイクリックに実行されるものであり、随時、特定のイベントの発生を監視している（ステップＳ４１）。特定のイベントとは、ダイアログボックスの各スイッチに係るイベントであり、例えば図７、図８の例ではユーザによるＯＫスイッチ６３または適用スイッチ６４あるいはキャンセルスイッチ６５の操作である。【０１４２】
そして、上記特定のイベントが発生した場合には（ステップＳ４２，ＹＥＳ）、メモリ設定処理部４４を起動すると共に上記発生したイベントを示すパラメータを渡す（ステップＳ４３）。これより、メモリ設定処理部４４が、例えば図１６に示す処理を実行する。【０１４３】
そして、例えば、メモリ設定処理部４４が処理完了したら、あるいは所定時間経過するまで何も操作されなかった場合には（ステップＳ４２，ＮＯ）。スイッチ状態を通信内容表示部４１に返して、本処理（ステップＳ１５の処理）を終了する。これより、通信内容表示部４１は、返されたスイッチ状態に応じて、上記ステップＳ１６の処理を実行することになる。尚、スイッチ状態とは、操作されたスイッチの識別情報、あるいはスイッチ操作が無かったことを示す何らかの情報等である。【０１４４】
続いて、以下、図１６の処理について説明する。上記の通り、図１６は、メモリ設定処理部４４の処理フローチャート図である。
図１６において、メモリ設定処理部４４は、まず、上記渡されたパラメータより、発生したイベントがＯＫスイッチ６３か適用スイッチ６４であるか否かを確認する（ステップＳ５１）。このとき、キャンセルスイッチ６５の操作であった場合など、違うのであれば（ステップＳ５１，ＮＯ）、そのまま本処理が終了とする。【０１４５】
一方、ＯＫスイッチ６３または適用スイッチ６４の操作であった場合には（ステップＳ５１，ＹＥＳ）、現在のユーザ設定内容を画面データ３２に反映させる形で画面データ３２を更新する処理を行う（ステップＳ５２）。つまり、現在の外部機器メモリデータ５２によって、画面データ３２を更新する。【０１４６】
ここで、図９や図１０では図示していないが、画面データ３２には各レコードの識別情報が更に存在しており、そのうちの一部のレコードを外部機器メモリデータ５２にコピーする際にはこの識別情報も一緒にコピーする。これより、外部機器メモリデータ５２の各レコード毎に、そのレコードに対応する（コピー元の）画面データ３２のレコードが、上記識別情報によって判別できるようになっている。【０１４７】
たとえばこの様な例では、ステップＳ５２の処理は、例えば、現在の外部機器メモリデータ５２の各レコードのデバイス名１０２とアドレス１０３を、画面データ３２において対応するレコードのデバイス名８３とアドレス８４に、コピー（上書き）する。勿論、これは一例であり、この様な例に限るものではない。【０１４８】
以上説明したように、本例の支援装置（作画エディタ装置５）によれば、画面データ３２に基づいて任意の画面（その各アイテム）に係る外部メモリ設定内容を表示すると共に、それに応じた外部メモリアクセス処理時間を算出・表示する。そして、ユーザにメモリ設定内容を任意に変更させて、変更後のメモリ設定に応じた外部メモリアクセス処理時間を算出・表示する。これによって、ユーザは、より適切な割当メモリアドレス設定を行えるようになる。適切な設定とは、全体の上記外部メモリアクセス処理時間が、より短時間で済むようにするメモリ設定である。また、所定のユーザ操作によって、ユーザによる設定変更を反映させる形で画面データ３２（２２）が更新される。【０１４９】
尚、画面データ３２（２２）を更新した場合、これに伴って接続機器４側のプログラムも更新する必要がある。例えば図７、図８の例では、既存の接続機器４側のプログラムにおいてＤ１００にアクセスしていた処理を、Ｄ１０にアクセスする処理に変更する必要が生じる。しかしながら、画面データ３２とは異なり、このプログラム更新は自動化できない（プログラマ等が手作業で行うことになる）。【０１５０】
このように、本例の作画エディタ装置５によれば、ユーザがより適切な割当メモリアドレス設定を行えるように支援することができる。
尚、本例の作画エディタ装置５は、例えば下記の不図示の各処理機能部を有するものと見做すこともできる。【０１５１】
本例の作画エディタ装置５は、例えば、画面上の各アイテムに係る外部メモリアクセス情報が含まれる画面データ２２に基づいて外部機器（接続機器４）の外部メモリにアクセスするプログラマブル表示器１に関して、その画面データをユーザに任意に作成させる支援機能を有する。【０１５２】
本例の作画エディタ装置５は、任意の画面データ３２の上記外部メモリアクセス情報から、デフォルトのバックアップ情報を生成するバックアップ情報生成部（不図示）と、該バックアップ情報を任意に変更させる設定変更部（不図示）を有する。更に、上記デフォルトまたは変更後のバックアップ情報に基づいて、そのときのバックアップ情報に応じた外部メモリアクセスに係るメモリアクセス処理時間を算出して表示する処理時間算出部（不図示）を有する。【０１５３】
また、本例の作画エディタ装置５は、所定の指示に応じて、そのときのバックアップ情報を用いて上記画面データ３２の外部メモリアクセス情報を更新する画面データ更新部（不図示）を更に有するものであってもよい。あるいは、上記画面データ更新部で更新された画面データ３２を、プログラマブル表示器１に転送して、新たな画面データ２２として記憶させる転送部（不図示）を更に有するものであってもよい。【０１５４】
上記バックアップ情報は、例えば上記外部機器情報５１と外部機器メモリデータ５２であるが、変更対象は外部機器メモリデータ５２である。
また、上記バックアップ情報には、例えば、上記各アイテムの外部メモリにおける割当アドレスが含まれている。そして、上記設定変更部は、例えば、該各割当アドレスを表示すると共に任意のアイテムの割当アドレスをユーザに変更させることで、バックアップ情報を変更する。【０１５５】
図１８は、作画エディタ装置５のハードウェア構成例であり、例えば上記汎用コンピュータ（パソコン等）の構成を有する。
すなわち、作画エディタ装置５は、例えば、ＣＰＵ２０１等の演算プロセッサ、メモリ２０２、ハードディスク等の記憶装置２０３、キーボードやマウス等の操作部２０４、ディスプレイ等の表示部２０５、通信部２０６、記録媒体駆動部２０７等を有している。これらはバス２０８に接続されている。【０１５６】
上記記憶装置２０３には予め所定のアプリケーションプログラムが記憶されており、上記ＣＰＵ２０１等の演算プロセッサがこのアプリケーションプログラムを実行することにより、作画エディタ装置５の各種機能が実現される。例えば上記不図示の各処理機能部や、図４に示す各処理機能部を実現させる。【０１５７】
また、記録媒体駆動部２０７は、例えばＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、メモリスティックなどの可搬型の記録媒体２０９へのアクセス（データリード・ライト）を行う。上記アプリケーションプログラムは、可搬型の記録媒体２０９に記録されているものであっても構わない。
【図１】
0006042980.tif 000002
【図２】
0006042980.tif 000003
【図３】
0006042980.tif 000004
【図４】
0006042980.tif 000005
【図５】
0006042980.tif 000006
【図６】
0006042980.tif 000007
【図７】
0006042980.tif 000008
【図８】
0006042980.tif 000009
【図９】
0006042980.tif 000010
【図１０】
0006042980.tif 000011
【図１１】
0006042980.tif 000012
【図１２】
0006042980.tif 000013
【図１３】
0006042980.tif 000014
【図１４】
0006042980.tif 000015
【図１５】
0006042980.tif 000016
【図１６】
0006042980.tif 000017
【図１７】
0006042980.tif 000018
【図１８】
0006042980.tif 000019