JPH08115107A - 機器制御プログラム生成方式 - Google Patents
機器制御プログラム生成方式Info
- Publication number
- JPH08115107A JPH08115107A JP6250350A JP25035094A JPH08115107A JP H08115107 A JPH08115107 A JP H08115107A JP 6250350 A JP6250350 A JP 6250350A JP 25035094 A JP25035094 A JP 25035094A JP H08115107 A JPH08115107 A JP H08115107A
- Authority
- JP
- Japan
- Prior art keywords
- event
- state
- state transition
- control program
- transition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
- Control By Computers (AREA)
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【構成】状態遷移表によって定義された状態遷移マシン
において、イベントバッファを設け、アルゴリズムによ
って処理を行うことによって状態遷移の定義されていな
いイベントが読み込まれた場合に一時的にイベントバッ
ファに格納し、他の状態に遷移した時に取り出して状態
遷移を行う。また状態遷移図を表示し、グラフィカルユ
ーザインターフェースを通して状態遷移表の内容を表示
し、アルゴリズムに従って状態遷移モデルを更新し、実
際の状態遷移マシンで解釈できる状態遷移表を得る。 【効果】定義されていないイベントは状態マシンが別状
態に移るまで処理されずにイベントバッファに格納さ
れ、定義されたイベントがくるまで待つのでプログラム
の信頼性は向上し、また設計時の制約条件が緩和され
る。
において、イベントバッファを設け、アルゴリズムによ
って処理を行うことによって状態遷移の定義されていな
いイベントが読み込まれた場合に一時的にイベントバッ
ファに格納し、他の状態に遷移した時に取り出して状態
遷移を行う。また状態遷移図を表示し、グラフィカルユ
ーザインターフェースを通して状態遷移表の内容を表示
し、アルゴリズムに従って状態遷移モデルを更新し、実
際の状態遷移マシンで解釈できる状態遷移表を得る。 【効果】定義されていないイベントは状態マシンが別状
態に移るまで処理されずにイベントバッファに格納さ
れ、定義されたイベントがくるまで待つのでプログラム
の信頼性は向上し、また設計時の制約条件が緩和され
る。
Description
【0001】
【産業上の利用分野】本発明は通信プログラムや機器制
御プログラムの作成方式に関する。
御プログラムの作成方式に関する。
【0002】
【従来の技術】機器制御プログラムの作成において、状
態モデルが使われることが多いが、状態の数が多いとモ
デルの正当性,完全性を検証することが難しかった。特
に状態遷移モデルを作成する上での難易性は、全ての状
態においてあり得る全てのイベント入力に対して状態遷
移を定義する必要があり、状態遷移の洩れがあるとシス
テムのデッドロックや誤動作となってしまった。このた
め、状態数の多いシステムでは状態管理を統一的な手法
で行わず、共有メモリ,セマフォーなどによってシステ
ムの状態を監視しながら処理を行うのが普通であった。
態モデルが使われることが多いが、状態の数が多いとモ
デルの正当性,完全性を検証することが難しかった。特
に状態遷移モデルを作成する上での難易性は、全ての状
態においてあり得る全てのイベント入力に対して状態遷
移を定義する必要があり、状態遷移の洩れがあるとシス
テムのデッドロックや誤動作となってしまった。このた
め、状態数の多いシステムでは状態管理を統一的な手法
で行わず、共有メモリ,セマフォーなどによってシステ
ムの状態を監視しながら処理を行うのが普通であった。
【0003】これらの状態遷移モデルを設計/作図する
作業はグラフィカルな状態遷移図を作成し、状態遷移洩
れのないように状態遷移表を注意深く埋め、プログラム
に書き込んでいた。これらの工程は従来人手によって行
われていたために、設計からコーディングまでの間に入
力ミスが入る可能性があった。また通常、状態遷移モデ
ルの設計時においてシステムの動的な振舞いを設計する
ために状態遷移図を用い、イベントに対する状態遷移の
定義洩れや誤りをなくし、個々の状態に対して全てのイ
ベントに対する状態遷移を定義するために状態遷移表が
用いられていた。
作業はグラフィカルな状態遷移図を作成し、状態遷移洩
れのないように状態遷移表を注意深く埋め、プログラム
に書き込んでいた。これらの工程は従来人手によって行
われていたために、設計からコーディングまでの間に入
力ミスが入る可能性があった。また通常、状態遷移モデ
ルの設計時においてシステムの動的な振舞いを設計する
ために状態遷移図を用い、イベントに対する状態遷移の
定義洩れや誤りをなくし、個々の状態に対して全てのイ
ベントに対する状態遷移を定義するために状態遷移表が
用いられていた。
【0004】一般的に状態遷移モデルは、時間の概念を
明確に表現することができないため、正常動作を確認し
ても、それが最適な動作か否かを知ることができなかっ
た。状態モニタはシステムの実行時に個々のサブシステ
ムの動作の様子をタイムチャートに示してあるイベント
を待っている無駄時間の調査を支援するためのものであ
る。
明確に表現することができないため、正常動作を確認し
ても、それが最適な動作か否かを知ることができなかっ
た。状態モニタはシステムの実行時に個々のサブシステ
ムの動作の様子をタイムチャートに示してあるイベント
を待っている無駄時間の調査を支援するためのものであ
る。
【0005】
【発明が解決しようとする課題】機器制御プログラムは
ハードウェアとの関連が強いため、汎用的なアルゴリズ
ムを利用する試みがなされていなかった。一般に機器制
御のアルゴリズムとして状態遷移方式や決定表方式が使
われているが、システムの規模が大きくなるとシステム
の状態数が急激に増えてしまい、複雑になり過ぎてしま
う。この結果、状態モデルの検証が難しくなり、状態遷
移表に状態の定義洩れ,状態遷移条件や遷移先の誤りや
定義洩れなどの設計不良が入り込みやすくなり、またそ
れの検出は難しくなる。
ハードウェアとの関連が強いため、汎用的なアルゴリズ
ムを利用する試みがなされていなかった。一般に機器制
御のアルゴリズムとして状態遷移方式や決定表方式が使
われているが、システムの規模が大きくなるとシステム
の状態数が急激に増えてしまい、複雑になり過ぎてしま
う。この結果、状態モデルの検証が難しくなり、状態遷
移表に状態の定義洩れ,状態遷移条件や遷移先の誤りや
定義洩れなどの設計不良が入り込みやすくなり、またそ
れの検出は難しくなる。
【0006】本発明の目的は、複雑なシステムに対して
状態遷移洩れのない完全な状態モデルを構築しなくて
も、操作の基本的なサイクルさえ定義されていれば誤動
作やデッドロックを引き起こすことなく、正常に要求さ
れた機能を実行する制御方式を提供することにある。
状態遷移洩れのない完全な状態モデルを構築しなくて
も、操作の基本的なサイクルさえ定義されていれば誤動
作やデッドロックを引き起こすことなく、正常に要求さ
れた機能を実行する制御方式を提供することにある。
【0007】状態モデルを作成するために、従来併用さ
れていた状態遷移表/状態遷移図をより直観的でシステ
ムの動作を理解しやすい状態遷移図のみで行い、状態遷
移表を使った遷移洩れのチェック作業をなくし、モデル
を単純化し、信頼性,プログラムの生産性を向上させる
ことである。
れていた状態遷移表/状態遷移図をより直観的でシステ
ムの動作を理解しやすい状態遷移図のみで行い、状態遷
移表を使った遷移洩れのチェック作業をなくし、モデル
を単純化し、信頼性,プログラムの生産性を向上させる
ことである。
【0008】一般的に状態遷移モデルは、時間の概念を
明らかに表現することができないため、正常動作を確認
しても、それが最適な動作か否かを知ることができな
い。
明らかに表現することができないため、正常動作を確認
しても、それが最適な動作か否かを知ることができな
い。
【0009】本発明の目的は個々のサブシステムの動作
の様子をタイムチャートなどの形式でグラフィカルに表
示することによって、イベントを待っている無駄時間の
調査を支援することにある。
の様子をタイムチャートなどの形式でグラフィカルに表
示することによって、イベントを待っている無駄時間の
調査を支援することにある。
【0010】
【課題を解決するための手段】状態遷移図中には、状態
遷移のみを引き起こし、装置に対して何のアクションも
行わないイベントが存在する。たとえばある状態におい
てイベントE1が起こると状態S1に遷移してアクショ
ンP1を実行し、ついでイベントE2が起こると状態S
2に遷移するが、イベントの発生がE2,E1の順番だ
とダミーの状態S3に遷移して何のアクションも行わ
ず、次のE1のイベントを受けて状態S4に遷移してP
1とP2を同時に処理する場合である。
遷移のみを引き起こし、装置に対して何のアクションも
行わないイベントが存在する。たとえばある状態におい
てイベントE1が起こると状態S1に遷移してアクショ
ンP1を実行し、ついでイベントE2が起こると状態S
2に遷移するが、イベントの発生がE2,E1の順番だ
とダミーの状態S3に遷移して何のアクションも行わ
ず、次のE1のイベントを受けて状態S4に遷移してP
1とP2を同時に処理する場合である。
【0011】グラフィックディスプレイを利用し、状態
遷移図を表示したり、状態遷移図の有効グラフをポイン
ティングデバイスなどのユーザインターフェースから編
集することによって状態モデルを作成する。またプログ
ラムで解釈される状態遷移表データとグラフィックディ
スプレイ上の状態遷移図との対応づけを維持することに
よって状態遷移表データの設計を状態遷移図の作画作業
に置き替える。
遷移図を表示したり、状態遷移図の有効グラフをポイン
ティングデバイスなどのユーザインターフェースから編
集することによって状態モデルを作成する。またプログ
ラムで解釈される状態遷移表データとグラフィックディ
スプレイ上の状態遷移図との対応づけを維持することに
よって状態遷移表データの設計を状態遷移図の作画作業
に置き替える。
【0012】各々の状態機械の現状態を示す状態変数を
他のプログラムから参照できる領域に確保し、またシス
テム内で発生した全てのイベントを監視し、状態機械の
状態が遷移した時点を常に捉え、その状態遷移に対して
グラフィカル端末制御プログラムに、状態機械の状態遷
移を表示する命令を発行することによって、常にシステ
ムにおける状態機械の状態を把握することができる。ま
た、状態遷移の時間レンジが対話的に監視するには極端
に短ったり、あるいは長い場合には状態遷移を表示する
命令を発行時刻を追加して、ロギングし、システムの制
御後、オフライン的にそのログ情報の一部または全部を
グラフィック端末上にタイムチャート的に表示すること
によって目的の無駄時間調査を行うことができる。
他のプログラムから参照できる領域に確保し、またシス
テム内で発生した全てのイベントを監視し、状態機械の
状態が遷移した時点を常に捉え、その状態遷移に対して
グラフィカル端末制御プログラムに、状態機械の状態遷
移を表示する命令を発行することによって、常にシステ
ムにおける状態機械の状態を把握することができる。ま
た、状態遷移の時間レンジが対話的に監視するには極端
に短ったり、あるいは長い場合には状態遷移を表示する
命令を発行時刻を追加して、ロギングし、システムの制
御後、オフライン的にそのログ情報の一部または全部を
グラフィック端末上にタイムチャート的に表示すること
によって目的の無駄時間調査を行うことができる。
【0013】
【作用】イベントバッファは従来の状態遷移マシンでは
デッドロックしてしまう、定義洩れのある状態遷移モデ
ルに対してもデッドロックなどの危険性を減少する。ま
た実際に動かしたい状態遷移のパスだけを正確に定義す
れば、イベントの発生順序が乱れても定義通りに処理を
実行することができる。
デッドロックしてしまう、定義洩れのある状態遷移モデ
ルに対してもデッドロックなどの危険性を減少する。ま
た実際に動かしたい状態遷移のパスだけを正確に定義す
れば、イベントの発生順序が乱れても定義通りに処理を
実行することができる。
【0014】状態遷移表は状態マシンの動きを記述する
ためにはコンパクトな記述方法であるが、直観的な表現
ではない。GUIの利用仕方によってさらにプログラム
の開発が容易となり、設計洩れ,入力ミスなどの危険性
が減少する。
ためにはコンパクトな記述方法であるが、直観的な表現
ではない。GUIの利用仕方によってさらにプログラム
の開発が容易となり、設計洩れ,入力ミスなどの危険性
が減少する。
【0015】全ての状態において、全てのイベントに対
する状態遷移が定義されているとは限らず、その結果、
直観を元にして作成した状態遷移モデルはイベントが発
生されてから実際に処理されるまでに長い間、イベント
バッファに格納されたままになり実行効率が低い制御シ
ステムとなる可能性がある。状態遷移マシンにおける状
態とイベントバッファに格納されたイベントの様子を時
系列的に表示することにより、性能上の問題点を容易に
見つけ出し、状態モデルの改良に関する洞察を得ること
ができる。
する状態遷移が定義されているとは限らず、その結果、
直観を元にして作成した状態遷移モデルはイベントが発
生されてから実際に処理されるまでに長い間、イベント
バッファに格納されたままになり実行効率が低い制御シ
ステムとなる可能性がある。状態遷移マシンにおける状
態とイベントバッファに格納されたイベントの様子を時
系列的に表示することにより、性能上の問題点を容易に
見つけ出し、状態モデルの改良に関する洞察を得ること
ができる。
【0016】
【実施例】イベントバッファを用いた状態遷移マシンの
プログラムフローチャートを図1に、状態遷移表の構造
を図2に、イベントバッファの構造を図3に示す。本実
施例では状態遷移モデルとしてMealy モデルについて述
べる。
プログラムフローチャートを図1に、状態遷移表の構造
を図2に、イベントバッファの構造を図3に示す。本実
施例では状態遷移モデルとしてMealy モデルについて述
べる。
【0017】図1において状態遷移プログラムは初期状
態S0が与えられて起動され、イベント待ち105とな
る。状態遷移プログラムにイベントが送られると図2の
状態遷移表を参照し、状態S0(210)に対してイベ
ント205による状態遷移が定義されているかを調べ、
遷移ありなしの判定110を行う。もし、状態遷移が定
義されていなければ、イベントを図3に示すイベントバ
ッファに格納してイベント待ち105に戻る。イベント
バッファは管理部として最も新しく追加されたイベント
データを指す最新ポインタ305と最も前に登録された
先頭ポインタ310の情報を持つ。イベントバッファに
格納されているイベント315はイベントコード320
を持ち、どの要因によってイベントが発生したかが判別
できる。新しいイベントが追加される場合は最新ポイン
タ305が指すイベントのリンクポインタに新しいイベ
ントのアドレスを入れ、新しいイベントのリンクポイン
タには終端記号としてNULLを代入する。
態S0が与えられて起動され、イベント待ち105とな
る。状態遷移プログラムにイベントが送られると図2の
状態遷移表を参照し、状態S0(210)に対してイベ
ント205による状態遷移が定義されているかを調べ、
遷移ありなしの判定110を行う。もし、状態遷移が定
義されていなければ、イベントを図3に示すイベントバ
ッファに格納してイベント待ち105に戻る。イベント
バッファは管理部として最も新しく追加されたイベント
データを指す最新ポインタ305と最も前に登録された
先頭ポインタ310の情報を持つ。イベントバッファに
格納されているイベント315はイベントコード320
を持ち、どの要因によってイベントが発生したかが判別
できる。新しいイベントが追加される場合は最新ポイン
タ305が指すイベントのリンクポインタに新しいイベ
ントのアドレスを入れ、新しいイベントのリンクポイン
タには終端記号としてNULLを代入する。
【0018】110にて読み込んだイベントに対して状
態遷移が定義されている場合はアクション実行115,
状態更新120を実行する。アクションと更新によって
遷移する新しい状態は状態遷移表の中で、元の状態と読
み込んだイベントの交わったところに定義されている。
態遷移が定義されている場合はアクション実行115,
状態更新120を実行する。アクションと更新によって
遷移する新しい状態は状態遷移表の中で、元の状態と読
み込んだイベントの交わったところに定義されている。
【0019】新しい状態に遷移したことによって、イベ
ントバッファ内のイベントによって状態遷移が起こるか
を調べる。125でイベントバッファからイベントを取
り出し、新しい状態に対して状態遷移を起こすか否かを
判定し(130)、状態遷移が定義されていなければイ
ベントバッファから次のイベントを取り出し、同様に状
態遷移の定義を調べる。状態遷移が定義されていればア
クション実行115に分岐する。イベントバッファの全
てのイベントに対して状態遷移が定義されていなければ
イベント待ち105に分岐して、以上の処理を繰り返
す。なお、ここでイベントバッファからイベントを取り
出し125は、イベントのポインタを取り出すだけであ
って、実際にイベントバッファのリンクド・リストから
取り除くことではない。
ントバッファ内のイベントによって状態遷移が起こるか
を調べる。125でイベントバッファからイベントを取
り出し、新しい状態に対して状態遷移を起こすか否かを
判定し(130)、状態遷移が定義されていなければイ
ベントバッファから次のイベントを取り出し、同様に状
態遷移の定義を調べる。状態遷移が定義されていればア
クション実行115に分岐する。イベントバッファの全
てのイベントに対して状態遷移が定義されていなければ
イベント待ち105に分岐して、以上の処理を繰り返
す。なお、ここでイベントバッファからイベントを取り
出し125は、イベントのポインタを取り出すだけであ
って、実際にイベントバッファのリンクド・リストから
取り除くことではない。
【0020】上記のような状態遷移マシンを生成するた
めの手段として、グラフィカルユーザインターフェース
を用いた実施例を図4および図5に示す。図4はイベン
ト記憶を用いた状態遷移マシン生成のためのグラフィカ
ルユーザインターフェースのための画面400である。
画面400で表示されている情報は状態ラベルのついた
状態情報405,状態から状態への遷移410,状態遷
移属性を定義するためのウィンドウ415,新しい状態
を生成するための生成アイコン420,状態マシン生成
を終了するための終了アイコン425である。
めの手段として、グラフィカルユーザインターフェース
を用いた実施例を図4および図5に示す。図4はイベン
ト記憶を用いた状態遷移マシン生成のためのグラフィカ
ルユーザインターフェースのための画面400である。
画面400で表示されている情報は状態ラベルのついた
状態情報405,状態から状態への遷移410,状態遷
移属性を定義するためのウィンドウ415,新しい状態
を生成するための生成アイコン420,状態マシン生成
を終了するための終了アイコン425である。
【0021】上記の画面400から実際にプログラムを
生成するためのアルゴリズムが図5に示されている。最
初にGUI(グラフィカルユーザインターフェース)か
らのイベント待ち505状態に入り、終了アイコンが押
されたらプログラムを終了する。生成アイコンが押され
たら新しい状態を画面上に作成し、位置決めを行って新
状態作図520を実行し、状態遷移表に新状態を追加す
る(530)。画面上の状態情報を直接ポインティング
デバイスで選択されたら状態遷移作図515を実行し、
その中で、遷移先状態をポインティングデバイスで指定
し、両状態の間に方向を示す情報を持ったリンクを作図
する。続いて属性定義ウィンドウ表示525を行って、
リンクのための属性入力をユーザに促し、イベント属性
読み取り535を行う。イベント属性として、イベント
コード,アクション,イベントデータなどを定義する。
最後に状態遷移表に状態遷移を追加540し、GUIイ
ベント待ち505に戻る。
生成するためのアルゴリズムが図5に示されている。最
初にGUI(グラフィカルユーザインターフェース)か
らのイベント待ち505状態に入り、終了アイコンが押
されたらプログラムを終了する。生成アイコンが押され
たら新しい状態を画面上に作成し、位置決めを行って新
状態作図520を実行し、状態遷移表に新状態を追加す
る(530)。画面上の状態情報を直接ポインティング
デバイスで選択されたら状態遷移作図515を実行し、
その中で、遷移先状態をポインティングデバイスで指定
し、両状態の間に方向を示す情報を持ったリンクを作図
する。続いて属性定義ウィンドウ表示525を行って、
リンクのための属性入力をユーザに促し、イベント属性
読み取り535を行う。イベント属性として、イベント
コード,アクション,イベントデータなどを定義する。
最後に状態遷移表に状態遷移を追加540し、GUIイ
ベント待ち505に戻る。
【0022】上記の状態遷移マシンは必ずしも、イベン
トが発生したら最短時間でアクションを実行する最適な
システムとは限らないため、イベントが発生してから実
際に処理されるまでの時間を解析することは重要であ
る。図6はイベントモニタ画面で状態遷移マシン(60
5)について、いつどの状態610にあり、いつイベン
ト615を受け付け、そのイベントを処理したかを示し
ている。これらの情報を表示するため、各状態遷移マシ
ンは状態遷移をする時に図7に示す状態遷移記録データ
をデータベースに格納し、またイベントの発生時および
イベントの処理実行時に図8に示すイベント記録データ
を作成かつ格納することにする。
トが発生したら最短時間でアクションを実行する最適な
システムとは限らないため、イベントが発生してから実
際に処理されるまでの時間を解析することは重要であ
る。図6はイベントモニタ画面で状態遷移マシン(60
5)について、いつどの状態610にあり、いつイベン
ト615を受け付け、そのイベントを処理したかを示し
ている。これらの情報を表示するため、各状態遷移マシ
ンは状態遷移をする時に図7に示す状態遷移記録データ
をデータベースに格納し、またイベントの発生時および
イベントの処理実行時に図8に示すイベント記録データ
を作成かつ格納することにする。
【0023】図6のイベントモニタ画面では、指定され
た状態マシン605について、指定された時間における
状態の移り変わりを表示しており、図6の例ではfsm1
は初期状態としてS11から始まり、途中でイベントe
11を受け付けたが状態S11およびS12でイベントe
11による状態遷移が定義されていないためにイベント
バッファに格納されたままになっている。一方、状態マ
シンfsm2は状態S21のときにイベントe21を読み込
んで一旦はイベントバッファに格納しているが状態S2
2でイベントe21による状態遷移が定義されているの
で個々で処理され、状態S23への状態遷移を起こして
いる。
た状態マシン605について、指定された時間における
状態の移り変わりを表示しており、図6の例ではfsm1
は初期状態としてS11から始まり、途中でイベントe
11を受け付けたが状態S11およびS12でイベントe
11による状態遷移が定義されていないためにイベント
バッファに格納されたままになっている。一方、状態マ
シンfsm2は状態S21のときにイベントe21を読み込
んで一旦はイベントバッファに格納しているが状態S2
2でイベントe21による状態遷移が定義されているの
で個々で処理され、状態S23への状態遷移を起こして
いる。
【0024】本実施例では状態モデルとしてMealyモデ
ルについて述べたがMooreモデルについても同様の手法
を適用することができる。
ルについて述べたがMooreモデルについても同様の手法
を適用することができる。
【0025】
【発明の効果】本発明によれば、状態数の多い複雑なシ
ステムにおいて状態遷移モデルの設計時に状態遷移の定
義洩れがあったとしても、入力イベントに対して誤った
状態遷移および誤ったアクションを定義しなければ、性
能の低下はあるにしてもシステムのデッドロックや誤動
作を防げるため、システムの信頼性は向上する。また、
性能が厳しく要求されないシステムにおいては、全ての
状態について起こり得る全てのイベントに対する状態遷
移を考える必要がなく、わかる範囲で誤りのない状態遷
移表を作成すれば、正常動作するプログラムが作成でき
るのでソフトウェアの生産効率は向上する。
ステムにおいて状態遷移モデルの設計時に状態遷移の定
義洩れがあったとしても、入力イベントに対して誤った
状態遷移および誤ったアクションを定義しなければ、性
能の低下はあるにしてもシステムのデッドロックや誤動
作を防げるため、システムの信頼性は向上する。また、
性能が厳しく要求されないシステムにおいては、全ての
状態について起こり得る全てのイベントに対する状態遷
移を考える必要がなく、わかる範囲で誤りのない状態遷
移表を作成すれば、正常動作するプログラムが作成でき
るのでソフトウェアの生産効率は向上する。
【図1】イベントバッファを用いた状態遷移マシンのフ
ローチャート。
ローチャート。
【図2】状態遷移の説明図。
【図3】イベントバッファのデータ構造の説明図。
【図4】イベント記憶を用いた状態遷移マシン生成のた
めのグラフィカルユーザインターフェース説明図。
めのグラフィカルユーザインターフェース説明図。
【図5】グラフィカルユーザインターフェースを用いた
状態遷移マシン生成のフローチャート。
状態遷移マシン生成のフローチャート。
【図6】イベントモニタ画面の説明図。
【図7】状態遷移記録データの説明図。
【図8】イベント記録データの説明図。
105…イベント待ち、110…遷移ありなしの判定、
115…アクション実行、120…状態更新、125…
イベントバッファからイベントを取り出し、130…新
しい状態に対して状態遷移を起こすか否かの判定。
115…アクション実行、120…状態更新、125…
イベントバッファからイベントを取り出し、130…新
しい状態に対して状態遷移を起こすか否かの判定。
Claims (3)
- 【請求項1】ハードウェアを操作するためのソフトウェ
ア・インターフェース,マルチプログラミングをサポー
トするためのタスク管理機能とタスク間通信機能を持っ
たオペレーティングシステム,イベント発生機構および
読取り機構,制御情報を記述した状態遷移表からなる機
器制御プログラムにおいて、イベント記憶バッファを具
備することによってイベントの発生順序に依存した誤動
作をしないことを特徴とする機器制御プログラム生成方
式。 - 【請求項2】請求項1において、状態遷移図を表示する
ディスプレイと,表示されている状態遷移図の部分を指
し示すポインティングデバイスを有し、ポインティング
デバイスによって示された、ある状態から他の状態への
パスのみが有効な状態遷移として認識され、それ以外の
イベントの発生を別状態に移るまで処理を遅らせる機器
制御プログラム生成方式。 - 【請求項3】請求項1または2において、前記機器制御
プログラムに対して、状態遷移およびイベントの発生,
処理時刻を記録するデータベースを具備することによっ
て、イベントの待ち時間をモニタする機器制御プログラ
ム生成方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6250350A JPH08115107A (ja) | 1994-10-17 | 1994-10-17 | 機器制御プログラム生成方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6250350A JPH08115107A (ja) | 1994-10-17 | 1994-10-17 | 機器制御プログラム生成方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08115107A true JPH08115107A (ja) | 1996-05-07 |
Family
ID=17206615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6250350A Pending JPH08115107A (ja) | 1994-10-17 | 1994-10-17 | 機器制御プログラム生成方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08115107A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100316416B1 (ko) * | 1998-07-03 | 2001-12-12 | 가네꼬 히사시 | 프로그램 개발 시스템, 프로그램 개발방법 및 프로그램 개발용프로그램을 저장하는 저장매체 |
JP2003208310A (ja) * | 2001-09-06 | 2003-07-25 | Canon Inc | 動画生成方法及び装置 |
JP2008097601A (ja) * | 2007-09-28 | 2008-04-24 | Sun Corp | 通信システム |
WO2008056419A1 (fr) * | 2006-11-09 | 2008-05-15 | Panasonic Corporation | Dispositif de vérification de logiciel et procédé d'évaluation d'interface api |
US7802237B2 (en) | 2004-06-29 | 2010-09-21 | Denso Corporation | Method, system and computer program product for generating program |
-
1994
- 1994-10-17 JP JP6250350A patent/JPH08115107A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100316416B1 (ko) * | 1998-07-03 | 2001-12-12 | 가네꼬 히사시 | 프로그램 개발 시스템, 프로그램 개발방법 및 프로그램 개발용프로그램을 저장하는 저장매체 |
US6467078B1 (en) | 1998-07-03 | 2002-10-15 | Nec Corporation | Program development system, method for developing programs and storage medium storing programs for development of programs |
JP2003208310A (ja) * | 2001-09-06 | 2003-07-25 | Canon Inc | 動画生成方法及び装置 |
US7802237B2 (en) | 2004-06-29 | 2010-09-21 | Denso Corporation | Method, system and computer program product for generating program |
WO2008056419A1 (fr) * | 2006-11-09 | 2008-05-15 | Panasonic Corporation | Dispositif de vérification de logiciel et procédé d'évaluation d'interface api |
JP2008097601A (ja) * | 2007-09-28 | 2008-04-24 | Sun Corp | 通信システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11561887B2 (en) | Test script debugging using an automated testing framework and UI rendering tree | |
WO2019144681A1 (zh) | 自动化测试方法及装置、存储介质、电子设备 | |
JP3008872B2 (ja) | Guiシステム自動操作装置および操作マクロ実行装置 | |
US7367017B2 (en) | Method and apparatus for analyzing machine control sequences | |
US8204711B2 (en) | System and apparatus for managing test procedures within a hardware-in-the-loop simulation system | |
US6077312A (en) | Apparatus, program product and method of debugging utilizing a context sensitive breakpoint | |
US6981248B2 (en) | Conditional breakpoint encountered indication | |
JP2008293488A (ja) | Plcのシミュレーション装置 | |
KR20090084905A (ko) | 그래픽 유저 인터페이스 테스팅을 위한 방법 및 시스템 | |
US20060085783A1 (en) | Multi-process display method in debugger system | |
US9405664B2 (en) | Automating software testing | |
JP7557431B2 (ja) | ソースコード修正支援装置及びソースコード修正支援方法 | |
JPH08115107A (ja) | 機器制御プログラム生成方式 | |
CN116974537A (zh) | 基于组件的产品开发方法、装置、计算机设备及存储介质 | |
CN102542426A (zh) | 可视化进销存管理系统和管理方法 | |
CN113901096A (zh) | 一种数据筛选方法、装置、电子设备及存储介质 | |
US20080183457A1 (en) | Simulation display tool | |
JP3402446B2 (ja) | プログラマブルコントローラ用のモニタ装置 | |
CN113360310B (zh) | 网络模型异常的处理方法、装置、设备和存储介质 | |
US11921620B2 (en) | Generating a visualization of blocks of code statements related to errors in a log file | |
WO2022085218A1 (ja) | 情報処理システムおよびデータベースの構築方法 | |
US10802940B1 (en) | Approaches for analyzing data streams | |
CN114490330A (zh) | 生成测试用例的方法和装置 | |
JP2001005517A (ja) | 制御プログラムのモニター方法および装置 | |
JPH1091477A (ja) | 制御用マイクロコンピュータ装置及び該装置の保守ツール |