(58)【調査した分野】(Int.Cl.,DB名)
画面上の各アイテムに係る外部メモリアクセス情報が含まれる画面データに基づいて、外部機器の外部メモリにアクセスするプログラマブル表示器と、該画面データを任意に作成させる作画エディタ装置とを有するプログラマブルコントローラシステムであって、
前記作画エディタ装置は、
任意の前記画面データの前記外部メモリアクセス情報から、デフォルトのバックアップ情報を生成するバックアップ情報生成手段と、
該バックアップ情報を任意に変更させる設定変更手段と、
前記デフォルトまたは変更後のバックアップ情報に基づいて、そのときのバックアップ情報に応じた外部メモリアクセスに係るメモリアクセス処理時間を算出して表示する処理時間算出手段と、
を有することを特徴とするプログラマブルコントローラシステム。
前記画面データ更新手段で更新された画面データを、前記プログラマブル表示器に転送して記憶させる転送手段を更に有することを特徴とする請求項2記載のプログラマブルコントローラシステム。
前記処理時間算出手段は、デフォルトまたは変更後の前記バックアップ情報に基づいて、前記外部メモリアクセスの為のコマンドの送信回数を決定すると共に該各コマンド毎のアクセス領域を決定し、該決定した送信回数とアクセス領域とに応じた前記メモリアクセス処理時間を算出することを特徴とする請求項3または4記載のプログラマブルコントローラシステム。
前記プログラマブル表示器は、前記画面データの外部メモリアクセス情報に基づいて、前記各アイテムの各割当アドレス全てを含む記憶領域にアクセスするための要求コマンドを、1回、前記外部機器へ送信することによって、全てのアイテムの割当アドレスにアクセスする場合があることを特徴とする請求項1記載のプログラマブルコントローラシステム。
前記プログラマブル表示器は、前記画面データの外部メモリアクセス情報に基づいて、前記各アイテムの中の1以上のアイテムの割当アドレスを含む記憶領域にアクセスするための要求コマンドを、複数回、前記外部機器へ送信することによって、全てのアイテムの割当アドレスにアクセスする場合があることを特徴とする請求項1記載のプログラマブルコントローラシステム。
前記処理時間算出手段は、デフォルトまたは変更後の前記バックアップ情報に基づいて、前記要求コマンドの送信回数を決定すると共に該各要求コマンド毎の前記アクセスする記憶領域を決定し、該決定した送信回数と記憶領域とに応じた前記メモリアクセス処理時間を算出することを特徴とする請求項7または8記載のプログラマブルコントローラシステム。
所定の指示に応じて、そのときの前記バックアップ情報を用いて、前記画面データの外部メモリアクセス情報を更新する画面データ更新手段を更に有することを特徴とする請求項11記載の作画エディタ装置。
【発明を実施するための最良の形態】
【0018】
以下、図面を参照して本発明の実施の形態について説明する。
図1は、本例のプログラマブルコントローラシステム全体の概略構成図である。
図示の例のプログラマブルコントローラシステムは、プログラマブル表示器1が通信ライン3を介して作画エディタ装置5に接続された構成となっている。尚、プログラマブル表示器1は、通信ライン6を介して1以上の接続機器4(外部機器)にも接続している。各接続機器4は、例えば各種PLC本体や上記温度調節装置等である。プログラマブル表示器1には、複数の通信インタフェース2(通信ポート)が備えられており、各通信インタフェース2に接続された通信ライン3/通信ライン6によって各種接続機器4や作画エディタ装置5と接続されている。
【0019】
尚、
図1に示す構成は、一例であり、この例に限らない。例えば、必ずしもプログラマブル表示器1が通信ライン3を介して作画エディタ装置5に接続された構成でなくてもよい。プログラマブル表示器1と作画エディタ装置5とが別々に存在していてもよい。但し、作画エディタ装置5で任意に作成された画面データが、何らかの方法でプログラマブル表示器1に渡されて記憶されるように構成することが望ましい。
【0020】
作画エディタ装置5は、上記背景技術で説明した既存の支援装置の機能も有するものである。つまり、上記操作表示画面をプログラマブル表示器1で表示させる為のデータ等(画面データ等)を、開発者等が任意に作成できるように支援する既存機能等を有する。
【0021】
既存機能は、既に述べたように、例えば、予め各種アイテム画像が用意されており、ユーザは所望のアイテム画像を選択して所望の位置に配置させる作業を繰り返して、上記画面データ作成を行う。その際、各アイテム毎に、所望の割当メモリアドレス(割当メモリ領域)等の設定も、ユーザに任意に行わせる。つまり、画面データには、各アイテム毎の割当メモリアドレスの設定情報等も含まれている。この様にして作成された画面データは、作画エディタ装置5からプログラマブル表示器1にダウンロードされる。
【0022】
但し、本例の作画エディタ装置5は、この既存機能による画面データ作成支援に関連して、更に、後述するユーザ支援機能)を有する。換言すれば、ユーザ支援機能はユーザが適切な割当メモリアドレスを設定できるように支援する機能であり、より適切な内容の画面データが作成されるように(特に適切な割当メモリアドレスが設定されるように)ユーザを支援する機能である。詳しくは後述する。
【0023】
プログラマブル表示器1は、従来と同様に、画面データに基づいて上記操作表示画面を表示する。そして、表示中に例えば定期的に、上記表示内容のリフレッシュ処理を行う。その為に、操作表示画面上の各アイテムに係わる上記割当メモリ領域へのアクセスを行って、直近のデータを取得して、この直近のデータに応じた内容の操作表示画面を表示する。
【0024】
これは、本説明では基本的に、従来で説明したように、1または複数のアイテムの割当メモリ領域を含む1つの記憶領域へのアクセスを行う要求コマンド(リードコマンド等)を、1回または複数回、生成・送信する。基本的には、表示中の操作表示画面上の全アイテムの割当メモリ領域に、アクセスすることになる。そして、その為に掛かる時間(外部メモリアクセス処理時間)は、短い方が望ましい。外部メモリアクセス処理時間が短いほど、通信パフォーマンスが良好であると見做してよい。
【0025】
尚、逐一述べないが、上記外部メモリアクセスに係わる要求コマンド等の送信先は、接続機器4であり、各アイテムの割当メモリ領域は、接続機器4内のメモリ(外部メモリ)における任意の記憶領域である。
【0026】
何れにしても、プログラマブル表示器1の機能自体は従来と同じであってよく、本例では作画エディタ装置5において新機能を備えるものである。
ここで、作画エディタ装置5は、例えば一般的な汎用コンピュータ(パーソナルコンピュータ等)で実現される。よって、特に図示等はしないが、一般的なパソコン等の構成を有する。すなわち、例えば、CPU等の演算プロセッサ、メモリ、ハードディスク等の記憶装置、キーボードやマウス等の操作部、ディスプレイ等の表示部、通信機能部等を有している。
【0027】
上記記憶装置には予め所定のアプリケーションプログラムが記憶されており、上記演算プロセッサがこのアプリケーションプログラムを実行することにより、作画エディタ装置5の各種機能が実現される。
【0028】
また、プログラマブル表示器1も、ハードウェア構成自体は、一般的なものであってよい。よって、以下、
図2を参照して簡単に説明する。
図2は、プログラマブル表示器1のハードウェア構成例である。
【0029】
プログラマブル表示器1は、上述した従来例と略同様に上述した画面データ等に基づく各スクリーン(操作表示画面)の表示等を行う機能を有する。この操作表示画面の表示処理には、上述した表示内容のリフレッシュ処理も含まれる。つまり、スクリーン上のアイテムに応じた上記外部メモリアクセス処理(割当メモリ領域からのデータ取得処理)も含まれる。
【0030】
図示のプログラマブル表示器1は、表示操作制御装置10と、タッチパネル18、ディスプレイ19、上記通信インタフェース2等を有する。
表示操作制御装置10は、CPU11、ROM12(フラッシュメモリ等)、RAM13、通信コントローラ14、グラフィックコントローラ15、タッチパネルコントローラ16等より成り、これらがバス17に接続されている。
【0031】
CPU11は、表示操作制御装置10全体を制御する中央処理装置(演算プロセッサ)である。CPU11は、ROM12に予め格納されているアプリケーションプログラム(例えば後述する本体プログラム21等)を実行することで、プログラマブル表示器1の各種演算処理(特に後述する各フローチャートの処理や機能ブロック図の各種処理機能)を実現する。
【0032】
また、ROM12には、上記背景技術で説明した画面データ等が格納されている(後述の画面データ22)。上記のように、画面データ22は、操作表示画面上に配置されたスイッチ、ランプ等の各アイテムに関する各種データ等を有する(各種データとは画像や表示位置座標や大きさ等のデータや、上記割当メモリアドレス等)。
【0033】
上記CPU11の処理によって、例えば上記画面データ22や上記外部メモリアクセスによる取得データ等に基づく表示対象データが、例えばRAM13上に展開(描画)される。詳しくは後述する。なお、RAM13は不図示のビデオRAMなどで代用可能である。この描画に基づいてグラフィックコントローラ15が、ディスプレイ19上に上述した操作表示画面等を表示する。ディスプレイ19は、例えば液晶パネル等より成り、この液晶パネル上に重ねるようにしてタッチパネル18が設けられる。
【0034】
オペレータ等によるタッチパネル18上での押圧操作位置(タッチ位置)の検知結果は、タッチパネルコントローラ16を介してCPU11等に取り込まれて解析される。例えば各アイテムの上記表示位置座標や大きさのデータ等に基づいて、解析することになる。例えば、スイッチの画像の表示位置をオペレータ等がタッチすると、CPU11等は、このスイッチに対する操作が行われたものと解析することになる。
【0035】
また、通信コントローラ14は、通信インタフェース2を介して、不図示のPLC本体等や温度調節装置等である接続機器4や作画エディタ装置5との通信を行う。
図3に、上記本システムのソフトウェア構成図を示す。
【0036】
プログラマブル表示器1においては、本体プログラム21、画面データ22、通信プログラム23等の各種プログラム/データが、フラッシュメモリ等の上記ROM12に格納されている。これらのプログラム/データ等をCPU11が読出し・実行/参照等することで、プログラマブル表示器用の各操作表示画面の表示制御等が行なわれる。
【0037】
この操作表示画面は、上述した数値表示、ランプ、スイッチ等の各種アイテムの画像表示から成り、各アイテムの表示内容は、例えば各接続機器4の外部メモリデバイスの所定の記憶領域から取得したデータを反映させる形で随時更新される。換言すれば、操作表示画面は割当メモリ領域からの取得データを反映させる形で随時更新される。
【0038】
つまり、CPU11は、本体プログラム21と画面データ22と上記取得データに基づいて、上記操作表示画面の表示制御を実行する。その際、この操作表示画面上の各アイテム(各画面部品)の表示内容は、上記取得データの内容を反映させたものとなる(温度等の数値表示やランプの点灯/消灯など)。尚、これ自体は、既存の機能であり、これ以上詳細には説明しない。
【0039】
但し、本例では基本的に、複数のアイテムの各割当メモリ領域に、1つずつ順次アクセスするようなことは想定していない。つまり、基本的に、ある程度まとめてアクセスする。可能であれば1回で全アイテムの割当メモリ領域(割当アドレス)にアクセスする。
【0040】
すなわち、プログラマブル表示器1は、画面データ22(上記各アイテム毎の割当メモリ領域)等に基づいて、各アイテムの各割当アドレス全てを含む記憶領域にアクセスするための要求コマンドを、1回、接続機器4へ送信することによって、全てのアイテムの割当アドレスにアクセスする場合がある。その一例を後述する
図8に示す。
【0041】
同様に、プログラマブル表示器1は、画面データ22等に基づいて、各アイテムの中の1以上のアイテムの割当アドレスを含む記憶領域にアクセスするための要求コマンドを、複数回、接続機器4へ送信することによって、全てのアイテムの割当アドレスにアクセスする場合がある。その一例を後述する
図7に示す。
【0042】
上記画面データ22は、例えば予め作画エディタ装置5側で任意に作成された画面データファイル32が、プログラマブル表示器1にダウンロードされて格納されたものである。つまり、画面データ22と画面データファイル32とは実質的に同じものと見做して構わない。但し、この例に限らず、例えば画面データファイル32には複数の画面データが格納されており、そのうちの一部がプログラマブル表示器1にダウンロードされて記憶されたものが画面データ22であると見做してもよい。尚、以下、例えば画面データファイル32を、画面データ22または画面データ32等と記して説明する場合もあるものとする。
【0043】
また、上記通信プログラム23は、例えば予め作画エディタ装置5側に格納されていた通信プログラムファイル33が、プログラマブル表示器1にダウンロードされて格納されたものである。ここで、通信プログラムファイル33は、通常、多数存在するものであり、通信プログラム群と言ってもよい。この各通信プログラムファイル33(通信プログラム群)のなかで任意の1種類以上の通信プログラムが、プログラマブル表示器1にダウンロードされて上記通信プログラム23として格納される。
【0044】
ここで、上記各通信プログラムファイル33(各種通信プログラム群)は、各種接続機器4の通信プロトコル等に対応して予め作成されているものである。そして、各種通信プログラム群のなかで、ダウンロード先のプログラマブル表示器1に接続される接続機器4(その通信プロトコル等)に対応する通信プログラムファイル33が、当該プログラマブル表示器1にダウンロードされることになる。そして、上記通信プログラム23として格納されることになる。
【0045】
プログラマブル表示器1の通信プログラム23は、通信ライン6を介して接続機器4と通信を行うためのプログラムである。通常、接続機器4の機種毎等に固有の通信プロトコル(通信規定)を持ち、この通信規定に従って、プログラマブル表示器1−接続機器4間での通信を行う。そのため、通信プログラム23は、各接続機器4の機種毎等に開発が必要となる。尚、当然、CPU11などが通信プログラム23を実行することで、接続機器4との通信処理が実現される。
【0046】
PLC本体等である接続機器4は、様々なメーカー・機種があり、各メーカー/機種毎に独自の通信プログラムがあり、上記通信プログラムは、接続機器4のメーカー/機種に応じて場合によっては多数種類作成されて、上記多数の通信プログラムファイル33として作画エディタ装置5に格納されることになる。
【0047】
尚、プログラマブル表示器1−作画エディタ装置5間の通信は、例えば本体プログラム21と作画エディタ31とによって行う。例えば、通信機能が作画エディタ31に組み込まれている。これについては特に関係ないので、図示・説明しない。
【0048】
尚、上記割当メモリ領域へのアクセスや画面表示等の各種処理を実現させるプログラムは、例えば本体プログラム21に含まれていてもよいし、画面データ22に含まれていてもよい。何れにしても、この様なプログラムを例えば上記CPU11が実行することで、プログラマブル表示器1の各種動作が実現されることになる。
【0049】
また、作画エディタ装置5の作画エディタ31が、画面データ作成支援に係る上記既存機能や新規機能を有するものである。ユーザは、作画エディタ31による支援を受けながら、任意の画面データ(画面データ32)を作成する。
【0050】
例えば、予め作成済みの各種アイテムが、作画エディタ装置5のハードディスク等に記憶されている。作画エディタ31による操作表示画面の作成支援機能によって、これら各種アイテムが一覧表示されて、ユーザは所望のアイテムを選択して所望の位置に配置する。更に、各アイテム毎に任意の割当メモリアドレスを設定する。ここまでは既存技術と見做して構わないが、本例の作画エディタ31は、更に、ユーザが適切な割当メモリアドレスを設定できるように支援する新機能も有する。詳しくは後述する。
【0051】
尚、作画エディタ装置5は、例えばパソコン等であり、特に図示しないが一般的な汎用コンピュータの構成を有している。すなわち、例えば、CPU、記憶部(ハードディスク、メモリ等)、通信部、操作部(マウス等)、ディスプレイ等を有している。記憶部に予め記憶されているアプリケーションプログラムを、CPUが実行することにより、作画エディタ31の上述した既存機能や新機能が実現される。
【0052】
図4は、上記作画エディタ装置5(その作画エディタ31)の機能ブロック図である。
図示の例の作画エディタ装置5は、通信内容表示部41、メモリ解析処理部42、スイッチ監視処理部43、メモリ設定処理部44、通信内容編集処理部45、メモリ解析処理群46の各種処理機能部を有する。尚、上記の通り、これら各種処理機能は、不図示のCPUが不図示の記憶部に記憶されたアプリケーションプログラムを実行することにより実現される。また、尚、メモリ解析処理群46は、プログラマブル表示器1が有する既存機能を、作画エディタ装置5に搭載したものである。
【0053】
通信内容表示部41は、画面データ32等に基づいて外部機器情報51とデフォルトの外部機器メモリデータ52を生成すると共に、メモリ解析処理部42、スイッチ監視処理部43、通信内容編集処理部45を適宜動作させる。これによって、ユーザに任意の外部メモリ設定を行わせると共に、設定内容に応じた通信パフォーマンス情報を算出・表示する。通信パフォーマンス情報とは外部メモリアクセス処理時間などを意味する。
【0054】
通信内容編集処理部45は、ユーザに、任意のアイテムの割当メモリアドレスの設定内容を任意に変更させる。そして、この変更内容を外部機器メモリデータ52に反映させる。
【0055】
メモリ解析処理部42は、メモリ解析処理群46を動作させる。メモリ解析処理群46は、外部機器情報51と外部機器メモリデータ52に基づいて所定の解析処理を実行して処理結果として解析データ53を出力する。これは、外部機器情報51や外部機器メモリデータ52等に基づいて、上記所定の解析処理を実行させて解析データ53を生成する。つまり、メモリ解析処理部42は、外部機器情報51や外部機器メモリデータ52のデフォルト状態や割当メモリアドレス設定変更後の情報に基づいて、解析処理を実行させて解析データ53を生成する。尚、所定の解析処理は、上記の通り既存処理であり、後に説明するものとする。
【0056】
つまり、メモリ解析処理部42は、プログラマブル表示器1と接続機器4(外部機器)との間の通信パフォーマンスを示す情報(特にユーザ設定に応じたもの)を、算出するものと言える。これは、特に、任意の画面データに係わる外部メモリアクセスの為の処理時間(外部メモリアクセス処理時間)を、算出するものである。これは、例えば後述するように、外部メモリアクセスの為のコマンド送受信に係わる伝送時間を、算出するものであるが、この例に限らない。詳しくは後述する。
【0057】
上記解析結果は、表示される。ユーザは、この表示内容を参照して、割当メモリアドレスが現在の状態で適切か否かを判断する。不適切と判断した場合には、上記割当メモリアドレスの設定内容を更に変更して、新たな解析結果を表示させる。一方、適切と判断した場合には。所定のスイッチ操作を行う。スイッチ監視処理部43は、このスイッチ操作の有無を監視しており、所定のスイッチ操作があった場合にはメモリ設定処理部44を動作させる。
【0058】
メモリ設定処理部44は、そのときの外部機器メモリデータ52の内容を、画面データ32に反映させる(画面データ32を更新する)。これによって、画面データ32における既存の割当メモリアドレスが、ユーザが適切と判断したときの割当メモリアドレスに変更されることになる。
【0059】
尚、画面データ32が複数の画面データより成る場合には、例えば
図5や
図6に示すように、最初に画面データ一覧を表示して、解析対象とする任意の画面データをユーザに選択させる。これより、解析対象の画面データに関して、上記デフォルト状態や任意のアドレス設定変更毎の外部機器メモリデータ52に応じた解析処理と処理結果(解析データ53)の表示等が、行われる。そして、上記所定のスイッチ操作があった場合には、解析対象の画面データを、そのときの外部機器メモリデータ52に基づいて更新する。解析対象の画面データは、例えば後述する画面No.101等によって識別できる。
【0060】
尚、
図4には示していないが、メモリ設定処理部44によって画面データ32が更新された場合に、自動的に、当該更新後の画面データ32をプログラマブル表示器にダウンロード(転送)して、不図示ではあるが、その画面データ22を更新させる転送部が更に設けられていてもよい。これによって、プログラマブル表示器側の画面データ22を更新し忘れる事態を回避できる。
【0061】
図7、
図8は、上記作画エディタ装置5による解析設定表示画面の具体例である。
図7はデフォルト状態、
図8は任意のアドレス設定変更に係るものである。
図7、
図8に示す解析設定表示画面60は、メモリ設定表示/変更領域61、解析結果表示領域62を有する。更に、OKスイッチ63、適用スイッチ64、キャンセルスイッチ65等の各種スイッチ(ボタン)等も有する。
【0062】
メモリ設定表示/変更領域61には、外部機器メモリデータ52の現在の内容(各割当メモリアドレス)が表示される。上記の通り、外部機器メモリデータ52の各割当メモリアドレスは、デフォルト状態では画面データ32と同一である。また、外部機器メモリデータ52の各割当メモリアドレスは、画面データ32が複数の画面データより成る場合には、上記選択された解析対象の画面データと同一である。つまり、デフォルト状態では画面データ32の各割当メモリアドレスが表示されることになる。
【0063】
そして、ユーザが任意のアドレス設定を変更する毎に、変更後の各割当メモリアドレスが表示されることになる。
ここで、このメモリ設定表示/変更領域61上の表示は、例えば、解析対象の画面データ上の全てのアイテムに係る割当メモリアドレスが、表示されることになる。例えば、
図7に示す例では、アドレスD0〜D9までの10ワードの領域及びアドレスD100の1ワードの領域が、解析対象の画面データに関して割り当てられていることになる。
【0064】
但し、この表示例では、解析対象の画面データ上のアイテム個々の割当メモリアドレスまでは分からない。よって、図示の例の場合、解析対象の画面データ上には11個のアイテムがあって各アイテムに1ワードずつメモリ領域が割り当てられているかもしれない。あるいは、解析対象の画面データ上には2個のアイテムがあって、一方にはアドレスD0〜D9が割り当てられ、他方にはアドレスD100が割り当てられているかもしれない。しかし、本手法では、この点は関係ない。
【0065】
尚、本例では各アドレスは1ワード単位であるものとして説明するが、勿論、この例に限るわけではない。
図7において、そのメモリ設定表示/変更領域61の表示内容に応じた、すなわち現在の外部機器メモリデータ52に応じた解析処理結果が、解析結果表示領域62に表示されることになる。図示の例では、メモリ解析の結果、ブロックリードコマンド(要求コマンド)を2回使用している。
【0066】
尚、既存の要求コマンドの例として、任意の1つのアドレス範囲(1ワード以上)にメモリアクセスするブロックリードコマンドや、任意の1または複数のアドレスにメモリアクセスするランダムリードコマンドや、ビット単位でメモリアクセスするビットリードコマンドがある。
【0067】
特に、ブロックリードコマンドを用いる場合、1回の要求コマンドで1つのアドレス範囲しかアクセスできないので、アクセス先がD0〜D9、D100の例の場合、1回の要求コマンドで全データを取得しようとすると、必要のない記憶領域(D10〜D99の記憶領域)の大量のデータまでも一緒に取得することになる。この為、通信パフォーマンスが悪くなる。これに対して、要求コマンドを2回にすることで、通信パフォーマンスは改善するかもしれないが、未だ不十分である。しかし、これは、ユーザが割当メモリアドレスの設定を変更しない限り、改善しないものである。
【0068】
本手法は、主に、上記ブロックリードコマンドを用いる場合に対応するものである。従って、本説明において特に断らない限り、リードコマンドや要求コマンドと記した場合、ブロックリードコマンド等を意味するものとする。但し、リードコマンドに限らず、ライトコマンド等であっても構わない。これより、リードとライトとを区別することなく、アクセスと呼ぶ場合もあるものとする。
【0069】
任意の要求コマンドを接続機器4へ送信し、これに応じた接続機器4からの応答コマンドを受信完了するまでの時間が、各コマンド毎の外部メモリデータ取得に掛かる主な時間であり、ここでは図示の「処理時間」と呼ぶものとする。換言すれば、「処理時間」は、“要求コマンドの伝送時間+応答コマンドの伝送時間”である。尚、上記応答コマンドには、割当メモリ領域の格納データ等が含まれる。
【0070】
この様な各要求コマンド毎の「処理時間」や、これら「処理時間」の合計(「処理時間」合計)が、メモリ解析処理群46によって算出されて、図示のように解析結果表示領域62に表示される。
【0071】
図示の解析結果表示領域62に示す例では、1回目の処理時間は28.646[ms][ms]であり、2回目の処理時間は9.896[ms]であり、合計38.542[ms]掛かっていることになる。これは、任意の画面データの全アイテムの割当メモリ領域のデータ取得に掛かる時間が、38.542[ms]であると見做して構わない。換言すれば、任意の画面データに係わる外部メモリアクセス処理時間が、38.542[ms]であると言うこともできる。
【0072】
ここで、メモリ設定表示/変更領域61上では、上記のように現在のメモリ設定内容を表示するだけでなく、ユーザがメモリ設定内容を任意に変更できる。この変更操作方法は、様々であってよいが、
図8に示す例では、マウス操作によって任意のメモリ領域をドラッグして移動させて任意の移動先でドロップ操作を行う。これによって図示の例では、任意のアイテムに関する割当メモリアドレスが、D100からD10に変更される。この変更内容は外部機器メモリデータ52に反映される。
【0073】
これより、上記変更後の外部機器メモリデータ52に基づいて、メモリ解析処理部42(メモリ解析処理群46)によって解析処理が行われることになり、その結果、
図8の解析結果表示領域62に示す解析結果が得られることになる。図示の例では、メモリ解析の結果、リードコマンド(要求コマンド)を1回だけ使用している。そして、図示の例では、処理時間は30.729[ms]であり、1回だけなので全体の処理時間は30.729[ms]となる。
【0074】
従って、全体の処理時間は、
図8の場合の方が
図7よりも短くて済むようになり、
図8のメモリアドレス設定が
図7よりも適切であることが分かる。
これより、ユーザが
図8の状態において図示のOKスイッチ63等を操作することで、
図8におけるメモリ設定表示/変更領域61の割当メモリアドレスが、解析対象の画面データ32に反映されることになる。つまり、スイッチ監視処理部43によって上記のOKスイッチ63操作などが検出されると、メモリ設定処理部44が、現在の外部機器メモリデータ52の割当メモリアドレスによって、画面データ32の該当する割当メモリアドレスを更新する。
【0075】
上記各処理時間の算出方法については、後に一例について説明する。ここでは、上記リードコマンドの使用回数の判定処理について説明する。尚、上記要求コマンドの使用回数は、本例では2回使用するか1回使用するか等となるが、この例に限らず、3回以上使用する場合も有り得る。
【0076】
但し、これは、上記の通り、従来よりプログラマブル表示器1が有する機能であり、簡単に説明するのみとする。尚、リードコマンドの使用回数は、1回のリフレッシュ処理に係わるプログラマブル表示器1−接続機器4間の通信回数を意味するものと見做しても構わない。
【0077】
従来のプログラマブル表示器では、一例としては、上記リフレッシュ処理に係わり現在表示中の画面データ上の各アイテムに関する外部メモリアクセスを行う際に、要求コマンドの使用回数と、各要求コマンド毎のアクセス先(アドレス範囲)を決定する処理を行っていた。そして、本手法では、当該従来のプログラマブル表示器の機能を、作画エディタ装置5にも搭載させている。
【0078】
上記のような要求コマンドの回数とアドレス範囲を決定する従来のプログラマブル表示器の機能は、何種類かあり、以下、簡単に説明する。
一例としては、例えば、要求コマンドを1回だけとする場合と、割当メモリアドレスだけをアクセスする場合とで、どちらの伝送時間が短くて済むかを判定し、短くて済む方の要求コマンドの回数とアドレス範囲を採用する方法がある。尚、伝送時間の算出方法は後述する。
【0079】
図7の例の場合、要求コマンドを1回だけとする場合には、アドレス範囲はD0〜D100となり、当然、割当メモリアドレス以外のアドレス(D10〜D99)も含まれることになる。
【0080】
一方、割当メモリアドレスだけをアクセスする場合には、割当メモリアドレスが連続する場合には一纏めでアクセスする。よって、
図7の例では、D0〜D9までは割当メモリアドレスが連続するので、これを一纏めでアクセスすると共に、別途、D100にもアクセスするものと決定する。つまり、要求コマンドは2回となる。
【0081】
上記のことから、
図7の例では、1回の要求コマンドでD0〜D100にアクセスする場合の伝送時間と、2回の要求コマンドでそれぞれD0〜D9とD100にアクセスする場合の伝送時間合計とを求めることになる、そして、伝送時間が相対的に短い方を採用する。
図7の例では、2回の要求コマンドを用いる方が伝送時間が短かったものとする。この結果は、1回の要求コマンドの場合には割当メモリアドレス以外のアドレス(D10〜D99)が多すぎることが、要因であると見做しても構わない。
【0082】
以上、要求コマンドの回数等の決定方法に関して、一例を説明したが、以下、他の例についても説明する。
ここで、接続機器4の機種等によっては、データリード1回当たりのデータ読出し量に上限(制約)がある場合がある。例えば、1回当たりに30ワード分のデータまでしか読み出せない接続機器4等があるものとする。
【0083】
そして、他の例では、プログラマブル表示器は、上記制約の元に上記要求コマンドの使用回数を出来るだけ少なくする制御を行うものとする。つまり、まず1回の要求コマンドで全データ読出し可能か否かを判定し、読出し不可の場合には続いて2回の要求コマンドで全データ読出し可能か否かを判定し、それでも読出し不可の場合には続いて3回の要求コマンドで全データ読出し可能か否かを判定する。これを、読出し可能と判定されるまで続ける。
【0084】
他の例では、
図7に示す例の場合、1回の要求コマンドで全割当メモリアドレスのデータを取得しようとする場合、アドレスD0〜D100の領域、つまり、101ワード分の領域が取得対象となるが、30ワードを超えるのでNG(読出し不可)と判定されることになる。この為、続いて、2回の要求コマンドで全割当メモリアドレスのデータを取得しようとすると、今度は、アドレスD0〜D9の領域、つまり、10ワード分の領域と、アドレスD100の領域(1ワード分の領域)とが取得対象となり、どちらも30ワードを超えないので、OK(読出し可能)と判定されることになる。
【0085】
尚、これに対して、
図8に示す例の場合、1回の要求コマンドで全割当メモリアドレスのデータを取得しようとする場合、アドレスD0〜D10の領域(11ワード分の領域)が取得対象となり、30ワードを超えないのでOKとなる。尚、その意味では、アドレスD100からの移動先は、D10に限るものではなく、D16やD20やD25等、D10〜D29の範囲内であれば何でもよいことになるが、使用していないメモリアドレス(D10〜移動先メモリアドレスの1つ前のメモリアドレスまで)のデータも取得してしまうことになり、解析結果表示領域62の処理時間は長くなる。
【0086】
本手法では、この様なプログラマブル表示器1の既存機能の一部を、作画エディタ装置5(その作画エディタ31)に搭載している。これが上記メモリ解析処理群46である。
図9(a)、(b)は、上記画面データ32(22)の具体例である。
【0087】
図9(a)に示す例では、画面データ32(22)は、アイテムタイプ71、座標72、サイズ73、“アイテムタイプ毎のデータ”74、メモリアドレス情報75等の各データ項目より成る。尚、上記各アイテム毎に図示の各レコードの情報が格納されている。また、
図9(b)には、上記メモリアドレス情報75の詳細例を示す。
【0088】
アイテムタイプ71には、スイッチ、ランプ、数値表示等のアイテムの種別(を示すアイテム種別識別情報が格納される。“アイテムタイプ毎のデータ”74には、例えばそのアイテムに係る画像等が格納される。アイテムに係る画像とは、例えばランプ・アイテムであればランプ点灯画像とランプ消灯画像、あるいはスイッチ・アイテムであればスイッチON画像とスイッチOFF画像等の各種アイテムの画像である。
【0089】
座標72とサイズ73には、上記操作表示画面上における上記アイテム画像の表示位置と大きさを示す情報が格納される。
そして、メモリアドレス情報75が、上記外部メモリアクセス処理に係わる情報であり、上記割当メモリアドレス等の情報が含まれている。そして、本手法による設定データ修正・変更対象が、このメモリアドレス情報75(特にアドレス84)である。
【0090】
図9(b)に示す例では、メモリアドレス情報75は、メモリモデル81、メモリアクセス82、デバイス名83、アドレス84、データ数85等を有する。
メモリモデル81は、アクセス先の接続機器4の識別情報である。
【0091】
メモリアクセス82は、デバイス名83が示す外部メモリデバイスへのアクセス形式を示す。その形式は、例えば、1bitアクセス、16bit(1ワード)アクセス等である。
デバイス名83は、アクセス先の外部メモリデバイスの識別情報である。
【0092】
アドレス84は、デバイス名83が示す外部メモリデバイスにおけるアクセス先の記憶領域の先頭アドレス等である。
データ数85は、例えば上記アクセス先の記憶領域の容量等を示す。例えば、アドレス84が‘101番地’でデータ数85が‘3’であるならば、101番地〜103番地が上記アクセス先の記憶領域となる。
【0093】
上記メモリモデル81が示す接続機器4における上記デバイス名83が示すメモリデバイスの上記アドレス84等が示す記憶領域が、上記割当メモリ領域に相当するものである。本手法による変更対象は、主にこの割当メモリ領域となる。
【0094】
上述したように、上記画面データ32等に基づいて、外部機器情報51、外部機器メモリデータ52が生成される。但し、
図9(a)、(b)の例の場合には、画面データ22だけでは、以下に説明する
図10(a)の例の外部機器情報51は、生成できない。これより、例えば、各種接続機器毎に、不図示の通信プロトコル情報等が、予め別途記憶されているものとしてもよい。これは、例えば、各種接続機器毎に、その識別情報に対応付けて、物理回線(シリアル、Ethernet(登録商標)等)、ボーレート、データ長、ストップビット、パリティ等が登録されているものである。
【0095】
但し、この例に限らず、例えば上記メモリアドレス情報75には図示していないが
図10(a)に示す外部機器情報51に相当する情報も含まれているものであってもよい。本説明ではこの例を用いるものとする。従って、画面データ32等に基づいて、外部機器情報51、外部機器メモリデータ52が生成される。そして、これは、画面データ32の一部をコピーすることによって、外部機器情報51、外部機器メモリデータ52が生成されるものと見做してもよい。つまり、外部機器情報51、外部機器メモリデータ52は、画面データ32のバックアップ情報と見做してもよい。
【0096】
そして、本手法に係わるユーザ設定作業に伴って、バックアップ情報(主に外部機器メモリデータ52)を更新する。そして、ユーザによる所定の指示操作に応じて、バックアップ情報の変更内容を画面データ32に反映させる。
【0097】
例えば、上記不図示の各種接続機器毎の通信プロトコル情報やメモリアドレス情報75等から、デバイス名83が示す接続機器に対応する通信プロトコル情報を抽出することで、外部機器情報51が生成される。
【0098】
ここで、
図10(a)、(b)に、外部機器情報51、外部機器メモリデータ52の具体例を示す。
図10(a)に示す例では、外部機器情報51は、外部機器91、物理回線92、ボーレート93、データ長94、ストップビット95、パリティビット96、スタートビット97等のデータ項目から成る。
【0099】
外部機器91は、上記の通り、画面データ32に係わる任意の接続機器4の識別情報であり、この接続機器4に関する上記通信プロトコル情報が、物理回線92〜パリティ96等である。外部機器情報51の上記各データは、例えば画面データ32(22)に含まれている。
【0100】
また、
図10(b)に示す例では、外部機器メモリデータ52は、画面No.101、デバイス名102、アドレス103等のデータ項目から成る。画面No.101には、上記
図5や
図6で一覧表示された画面のなかからユーザが任意に選択した画面の画面No.が格納される。画面No.101の画面に係る画面データ32における上記デバイス名83、アドレス84が、デバイス名102、アドレス103に格納される。また、ダイアログボックス(例えば解析設定表示画面60等)上でのユーザ設定操作があった場合には、後述するステップS33によって、デバイス名102、アドレス103等が更新される。詳しくは後述する。
【0101】
尚、画面No.は画面データの識別情報であり、特に図示しないが、各画面No.に対応付けて
図9(a)に示す例の画面データ32等が格納されている。
また、
図11には、解析データ53の具体例を示す。
【0102】
図示の例では、解析データ53は、通信コマンド種別111、No.112、処理時間113、外部メモリ114等の各データ項目より成る。概略的には、上記各要求コマンド毎に、アクセス先のアドレス範囲が外部メモリ114に格納され、解析処理結果としての上記外部メモリアクセス処理時間が、処理時間113に格納される。例えば上記
図7の例では2つのコマンドに関する情報が格納される。つまり、レコード数は2となる。また、例えば上記
図7の例では1つのコマンドに関する情報が格納される。つまり、レコード数は1となる。
【0103】
これら各コマンドの種別が、通信コマンド種別111に格納される。
図7、
図8の例では“ブロックリード”が格納されることになる。尚、上記の通り、他にも例えばビットリードなどのコマンドがあるが、本説明では関係ない。
【0104】
また、これら各コマンドを用いた外部メモリアクセスに係わる上記「処理時間」(要求コマンドの伝送時間+応答コマンドの伝送時間)の計算結果(シミュレーション結果)が、処理時間113に格納される。また、このコマンドによるアクセス先(デバイス名+アドレス範囲)が、外部メモリ114に格納される。尚、No.112は単なるシリアル番号である。
【0105】
以下、上記各種処理機能部による処理例を、
図12〜
図16の処理フローチャート図を参照して説明する。
図12は、通信内容表示部41の処理フローチャート図である。尚、これは、本手法によるユーザ支援機能の全体フローチャート図と見做すこともできる。
【0106】
例えば
図6に示す画面一覧のなかからユーザが所望の画面を選択する操作を行うと、
図12の処理が開始される。尚、その際、選択された画面の画面No.等が、パラメータとして渡される。
【0107】
通信内容表示部41は、まず、初期状態のダイアログボックスを生成・表示する処理であるステップS11、S12,S13の処理を実行する。初期状態のダイアログボックスとは、例えば、上記
図7に示す初期状態の解析設定表示画面60等である。
【0108】
すなわち、まず、上記選択された画面の画面データ32に基づいて、外部機器情報51、外部機器メモリデータ52を生成する(ステップS11)。そして、メモリ解析処理部42を起動してメモリ解析処理を実行させる(ステップS12)。メモリ解析処理の処理フローチャート図を
図13に示し後に説明する。そして、このメモリ解析処理結果を用いて初期状態のダイアログボックス(上記解析設定表示画面60等)を表示する(ステップS13)。これは、現在の画面データ32の外部メモリ設定内容とこれに応じた解析処理結果を、表示するものと言える。
【0109】
その後は、基本的に、通信内容編集処理部45によって、ユーザによるメモリ設定変更操作の監視と、この設定に応じてメモリ解析処理を実行させて処理結果をダイアログボックスに表示する処理を繰り返す(ステップS14)。この際のダイヤログボックスは、例えば、上記
図8の解析設定表示画面60等である。なお、ステップS14の詳細処理フローチャートについては、
図14に示し後に説明する。
【0110】
上記新たな解析処理結果等がダイアログボックスに表示される毎に、スイッチ監視処理部43によって、ユーザによる所定スイッチ操作の監視が行われると共に、この所定スイッチ操作があった場合にはメモリ設定処理部44を起動する処理が行われる(ステップS15)。ステップS15の詳細フローチャート図を
図15に示し後に説明する。また、メモリ設定処理部44の処理フローチャート図を
図16に示し後に説明する。メモリ設定処理部44によって画面データ32が更新される。これは、上記ユーザによるメモリ設定変更を反映させる形で画面データ32が更新される。
【0111】
上記所定のスイッチ操作は、例えば
図7、
図8に示すOKスイッチ63または適用スイッチ64である。そして、例えば、OKスイッチ63が操作された場合には、上記メモリ設定処理部44の処理が実行されると共に、ダイアログボックス表示終了と判定して(ステップS16,NO)、ダイアログボックスを非表示にして(ステップS17)、本処理を終了する。一方、例えば、適用スイッチ64が操作された場合には、上記メモリ設定処理部44の処理が実行されると共に、ダイアログボックス表示続行と判定して(ステップS16,YES)、ステップS14に戻る。
【0112】
尚、キャンセルスイッチが操作された場合には、いつでも、ダイアログボックスを非表示にして(ステップS17)、本処理を終了する。
以上、
図12の処理について説明した。
【0113】
以下、上述した
図13、
図14、
図15、
図16の各処理について説明する。
上記の通り、
図13は、メモリ解析処理部42の処理フローチャート図である。
図13の例では、まず、解析データ53をデータ消去等の初期化を行なう(ステップS21)。その後、外部機器情報51と外部機器メモリデータ52に基づいて、新たな解析データ53を生成する(ステップS22)。本処理が上記ステップS12の処理であるならば、外部機器メモリデータ52は元々の画面データ32の内容のまま、つまり、デフォルト状態となっている。一方、本処理が後述するステップS34の処理ならば、外部機器メモリデータ52はダイアログボックス(例えば解析設定表示画面60等)上でのユーザ設定に応じた内容となっている。
【0114】
上記ステップS12の際の上記ステップS22の処理を、
図7に示す具体例と
図10(a)の図上下側に示す具体例を用いて説明するならば、下記のようになる。
まず、
図7に示すように、割当メモリアドレスは、D0〜D9、D100となっている。また、
図10(a)の図上下側に示す例では、物理回線92=“シリアル通信”、ボーレート93=“19200(bps)”、データ長94=“7[bit]”、ストップビット95=“1[bit]”、パリティビット96=“1[bit]”、スタートビット97=“1[bit]”となっている。
【0115】
この例の場合、まず、D0〜D9のリードコマンド、D100のリードコマンドの2つの要求コマンドを生成するものと判定される。これら2つの要求コマンドの伝送時間は、同じである。一方、これら各要求コマンドに応じた接続機器4からの応答コマンドの伝送時間は、リードするデータの総データ量(上記の例では一方が10ワードで他方が1ワード)に応じたものとなる。
【0116】
尚、本説明では、要求コマンド生成に掛かる時間や、接続機器4側でのメモリからのデータリード処理や応答コマンド生成に掛かる時間は、考慮しないものとするが、この例に限らない。また、本説明では、上記の通りシリアル通信を例にする。
【0117】
上記のこと、及び
図10(a)の図上下側に示す例によって、要求コマンドの伝送時間は下記のようになる。
まず、ボーレートが“19200(bps)”であることは、1[ms]当り19.2[bit]を伝送可能であることを意味している。尚、これは、19200÷1000[ms]=19.2[bit/ms]によって算出できる。
【0118】
また、上記の通り、データ長=“7[bit]”、ストップビット=“1[bit]”、パリティビット=“1[bit]”、スタートビット97=“1[bit]”であるので、1キャラクタ当たりのデータ量は、
7[bit]+1[bit] +1[bit] +1[bit] +1[bit]=10[bit]
となる。
【0119】
ここで、本説明では、シリアル通信に係るコマンドのデータ構成については、
図17に示すデータ構成例と表現を用いるものとする。
図17に示す例では、複数の“キャラクタ”によって要求コマンドの1フレームが構成されている。図示の例では要求コマンドの1フレームは、12個の“キャラクタ”で構成されている。尚、図には示していないが、要求コマンドと同様に、複数の“キャラクタ”によって応答コマンドの1フレームが構成されている。勿論、この例に限るものではなく、例えば
図17における“キャラクタ”に相当するものを“フレーム”と呼ぶケースもある。しかし、ここでは
図17に示す定義に応じて説明するものとする。
【0120】
また、
図17に示すように、各キャラクタは、上記ストップビット、パリティビット、スタートビット等とデータから構成されており、上記の通り本例では1キャラクタ当たり10[bit]となっている。
【0121】
ここで、要求コマンドのキャラクタ数は、固定的に決まっており、ここでは
図17に示す例を用いて12[キャラクタ]であるものとする。また、応答コマンドのキャラクタ数は、当然、外部メモリから読み出すデータ量に応じて変動する。ここでは仮に1ワード当たり4[キャラクタ]となるものとする。また、応答コマンドであることを示すコマンド識別情報として3[キャラクタ]必要になるものとする。よって。例えば10ワード分読み出す場合には、応答コマンドのキャラクタ数は、3+4×10=43[キャラクタ]となることになる。
【0122】
上記のことから、要求コマンド(リードコマンド)の総データ量は、
10[bit]×12[キャラクタ]=120[bit]
となる。
【0123】
従って、要求コマンドの伝送時間は、
120[bit]÷19.2=6.25[ms]
となる。
【0124】
同様にして、応答コマンドに関する伝送時間は、下記のように算出できる。
まず、10ワードの応答コマンドの場合、その総データ量は上記の例の場合には
{3[キャラクタ]+4[キャラクタ]×10[ワード]}×10[bit]=430[bit]
となる。
【0125】
よって、当該応答コマンドの伝送時間は、
430[bit]÷19.2=22.396[ms]
となる。
【0126】
同様にして、1ワードの応答コマンドの場合、その総データ量は
{3[キャラクタ]+4[キャラクタ]×1[ワード]}×10[bit]=70[bit]
となる。
【0127】
よって、当該応答コマンドの伝送時間は、
70[bit]÷19.2=3.646[ms]
となる。
【0128】
上記のことから、1回目のデータ読出しに掛かる時間(メモリアクセス処理時間)は、
6.25[ms]+22.396[ms]=28.646[ms]
となる。
【0129】
2回目のデータ読出しに掛かる時間(メモリアクセス処理時間)は、
6.25[ms]+3.646[ms]=9.896[ms]
となる。
【0130】
従って、全体としてはデータ読出しに掛かる時間(全体のメモリアクセス処理時間)は、
28.646[ms]+9.896[ms]=38.542[ms]
となることになる。
【0131】
例えば上記のような処理によって得られた解析データ53に基づいて、デフォルト状態の外部機器メモリデータ52(元々の画面データ32)に応じたメモリ解析結果が、例えば
図7に示すように解析設定表示画面60等に表示されることになる(ステップS13)。
【0132】
尚、本説明では、上述したように、メモリアクセス処理時間を「要求コマンドの伝送時間+応答コマンドの伝送時間」としているが、実際には、各コマンド生成や、接続機器4側で外部メモリからデータを読み出す時間が、更に加わることになる。よって、これらの時間も加算することでメモリアクセス処理時間を算出するようにしてもよい。但し、本手法では、正確なメモリアクセス処理時間を知る必要はないので、上述した例のように「要求コマンドの伝送時間+応答コマンドの伝送時間」をメモリアクセス処理時間としてもよい。つまり、本手法では、設定変更に応じた増減等を確認できればよいので、「要求コマンドの伝送時間+応答コマンドの伝送時間」をメモリアクセス処理時間としてもよい。
【0133】
図14は、上記ステップS14の詳細フローチャート図である。これは、通信内容編集処理部45の処理フローチャート図とも言える。
図14の処理は、サイクリックに実行されるものであり、随時、特定のイベント発生を監視している(ステップS31)。そして、特定のイベントが発生した場合、例えばメモリ設定表示/変更領域61上でユーザによるメモリ割当設定操作があった場合には(ステップS32,YES)、ステップS33、S34,S35の処理を実行する。上記特定のイベント発生とは、例えば、解析設定表示画面60のメモリ設定表示/変更領域61上でのユーザ操作の有無である。
【0134】
まず、ユーザによる設定内容を外部機器メモリデータ52に反映させる(ステップS33)。
図8の例の場合、例えば、外部機器メモリデータ52においてアドレス103=“100”であったレコードのアドレス103を‘10’に更新する。但し、この例に限らず、例えば外部機器メモリデータ52には不図示の差分データ格納欄が存在するものとし、ステップS33ではこの差分データを更新するようにしてもよい。この場合、上記一例では‘10’と‘100’との差分である‘−90’が、上記差分データ格納欄に格納されることになる。そして、後に外部機器メモリデータ52に基づいて画面データ32を更新する際には、上記差分データを用いることになる。
【0135】
そして、メモリ解析処理部42によって上記
図13の処理を実行させる(ステップS34)。
図13の処理については既に説明したが、上記ステップS33によって外部機器メモリデータ52の内容が更新されているので、上記具体例に応じた処理結果は変わることになる。
【0136】
例えば、ユーザが上記
図8のようにメモリ設定した場合には、D0〜D10のリードコマンドという1つの要求コマンドのみを生成するものと判定される。この場合、ここでは特に説明しないが上記と略同様の処理により、応答コマンドの伝送時間は、24.479[ms]となる。要求コマンドの伝送時間は、上記の通り、常に6.25[ms]となるので、データ読出しに掛かる時間(外部メモリアクセス処理時間)は、
6.25[ms]と+24.479[ms]=30.729[ms]
となる。
【0137】
この例では要求コマンドは1回だけ使用されるので、上記30.729[ms]が、そのまま、全体の外部メモリアクセス処理時間となる。
上記解析処理によって新たな解析データ53が生成される。
【0138】
通信内容編集処理部45は、この解析データ53に基づいて、解析結果表示領域62の表示内容を更新する(ステップS35)。これによって解析設定表示画面60は例えば
図8に示す表示内容となる。
【0139】
図7、
図8の表示内容の場合、
図8に示す例の方がデータ読出しに掛かる時間が短くなる。つまり、
図8に示すメモリ割当は、
図7に示すメモリ割当よりも適切であると見做してよいことになる。これより、ユーザが例えば
図8の画面上でOKスイッチ63等を操作することで、このときのユーザ設定内容によって画面データ32が更新されることになる。この例では、画面データ32においてデバイス名83が‘D’でアドレス84が‘100’であったレコードのアドレス84が、‘10’に更新されることになる。
【0140】
例えばこの様なユーザによる所定のスイッチ操作の検出とそれに伴う画面データ32の更新に係る処理の詳細例を、
図15、
図16に示す。
図15は、上記ステップS15の詳細フローチャート図である。これは、スイッチ監視処理部43の処理フローチャート図とも言える。
【0141】
図15の処理は、サイクリックに実行されるものであり、随時、特定のイベントの発生を監視している(ステップS41)。特定のイベントとは、ダイアログボックスの各スイッチに係るイベントであり、例えば
図7、
図8の例ではユーザによるOKスイッチ63または適用スイッチ64あるいはキャンセルスイッチ65の操作である。
【0142】
そして、上記特定のイベントが発生した場合には(ステップS42,YES)、メモリ設定処理部44を起動すると共に上記発生したイベントを示すパラメータを渡す(ステップS43)。これより、メモリ設定処理部44が、例えば
図16に示す処理を実行する。
【0143】
そして、例えば、メモリ設定処理部44が処理完了したら、あるいは所定時間経過するまで何も操作されなかった場合には(ステップS42,NO)。スイッチ状態を通信内容表示部41に返して、本処理(ステップS15の処理)を終了する。これより、通信内容表示部41は、返されたスイッチ状態に応じて、上記ステップS16の処理を実行することになる。尚、スイッチ状態とは、操作されたスイッチの識別情報、あるいはスイッチ操作が無かったことを示す何らかの情報等である。
【0144】
続いて、以下、
図16の処理について説明する。上記の通り、
図16は、メモリ設定処理部44の処理フローチャート図である。
図16において、メモリ設定処理部44は、まず、上記渡されたパラメータより、発生したイベントがOKスイッチ63か適用スイッチ64であるか否かを確認する(ステップS51)。このとき、キャンセルスイッチ65の操作であった場合など、違うのであれば(ステップS51,NO)、そのまま本処理が終了とする。
【0145】
一方、OKスイッチ63または適用スイッチ64の操作であった場合には(ステップS51,YES)、現在のユーザ設定内容を画面データ32に反映させる形で画面データ32を更新する処理を行う(ステップS52)。つまり、現在の外部機器メモリデータ52によって、画面データ32を更新する。
【0146】
ここで、
図9や
図10では図示していないが、画面データ32には各レコードの識別情報が更に存在しており、そのうちの一部のレコードを外部機器メモリデータ52にコピーする際にはこの識別情報も一緒にコピーする。これより、外部機器メモリデータ52の各レコード毎に、そのレコードに対応する(コピー元の)画面データ32のレコードが、上記識別情報によって判別できるようになっている。
【0147】
たとえばこの様な例では、ステップS52の処理は、例えば、現在の外部機器メモリデータ52の各レコードのデバイス名102とアドレス103を、画面データ32において対応するレコードのデバイス名83とアドレス84に、コピー(上書き)する。勿論、これは一例であり、この様な例に限るものではない。
【0148】
以上説明したように、本例の支援装置(作画エディタ装置5)によれば、画面データ32に基づいて任意の画面(その各アイテム)に係る外部メモリ設定内容を表示すると共に、それに応じた外部メモリアクセス処理時間を算出・表示する。そして、ユーザにメモリ設定内容を任意に変更させて、変更後のメモリ設定に応じた外部メモリアクセス処理時間を算出・表示する。これによって、ユーザは、より適切な割当メモリアドレス設定を行えるようになる。適切な設定とは、全体の上記外部メモリアクセス処理時間が、より短時間で済むようにするメモリ設定である。また、所定のユーザ操作によって、ユーザによる設定変更を反映させる形で画面データ32(22)が更新される。
【0149】
尚、画面データ32(22)を更新した場合、これに伴って接続機器4側のプログラムも更新する必要がある。例えば
図7、
図8の例では、既存の接続機器4側のプログラムにおいてD100にアクセスしていた処理を、D10にアクセスする処理に変更する必要が生じる。しかしながら、画面データ32とは異なり、このプログラム更新は自動化できない(プログラマ等が手作業で行うことになる)。
【0150】
このように、本例の作画エディタ装置5によれば、ユーザがより適切な割当メモリアドレス設定を行えるように支援することができる。
尚、本例の作画エディタ装置5は、例えば下記の不図示の各処理機能部を有するものと見做すこともできる。
【0151】
本例の作画エディタ装置5は、例えば、画面上の各アイテムに係る外部メモリアクセス情報が含まれる画面データ22に基づいて外部機器(接続機器4)の外部メモリにアクセスするプログラマブル表示器1に関して、その画面データをユーザに任意に作成させる支援機能を有する。
【0152】
本例の作画エディタ装置5は、任意の画面データ32の上記外部メモリアクセス情報から、デフォルトのバックアップ情報を生成するバックアップ情報生成部(不図示)と、該バックアップ情報を任意に変更させる設定変更部(不図示)を有する。更に、上記デフォルトまたは変更後のバックアップ情報に基づいて、そのときのバックアップ情報に応じた外部メモリアクセスに係るメモリアクセス処理時間を算出して表示する処理時間算出部(不図示)を有する。
【0153】
また、本例の作画エディタ装置5は、所定の指示に応じて、そのときのバックアップ情報を用いて上記画面データ32の外部メモリアクセス情報を更新する画面データ更新部(不図示)を更に有するものであってもよい。あるいは、上記画面データ更新部で更新された画面データ32を、プログラマブル表示器1に転送して、新たな画面データ22として記憶させる転送部(不図示)を更に有するものであってもよい。
【0154】
上記バックアップ情報は、例えば上記外部機器情報51と外部機器メモリデータ52であるが、変更対象は外部機器メモリデータ52である。
また、上記バックアップ情報には、例えば、上記各アイテムの外部メモリにおける割当アドレスが含まれている。そして、上記設定変更部は、例えば、該各割当アドレスを表示すると共に任意のアイテムの割当アドレスをユーザに変更させることで、バックアップ情報を変更する。
【0155】
図18は、作画エディタ装置5のハードウェア構成例であり、例えば上記汎用コンピュータ(パソコン等)の構成を有する。
すなわち、作画エディタ装置5は、例えば、CPU201等の演算プロセッサ、メモリ202、ハードディスク等の記憶装置203、キーボードやマウス等の操作部204、ディスプレイ等の表示部205、通信部206、記録媒体駆動部207等を有している。これらはバス208に接続されている。
【0156】
上記記憶装置203には予め所定のアプリケーションプログラムが記憶されており、上記CPU201等の演算プロセッサがこのアプリケーションプログラムを実行することにより、作画エディタ装置5の各種機能が実現される。例えば上記不図示の各処理機能部や、
図4に示す各処理機能部を実現させる。
【0157】
また、記録媒体駆動部207は、例えばCD−ROM、DVD−ROM、メモリスティックなどの可搬型の記録媒体209へのアクセス(データリード・ライト)を行う。上記アプリケーションプログラムは、可搬型の記録媒体209に記録されているものであっても構わない。