JP3703581B2 - 自動デバッグ装置 - Google Patents
自動デバッグ装置 Download PDFInfo
- Publication number
- JP3703581B2 JP3703581B2 JP29375396A JP29375396A JP3703581B2 JP 3703581 B2 JP3703581 B2 JP 3703581B2 JP 29375396 A JP29375396 A JP 29375396A JP 29375396 A JP29375396 A JP 29375396A JP 3703581 B2 JP3703581 B2 JP 3703581B2
- Authority
- JP
- Japan
- Prior art keywords
- logic
- event
- block
- unit
- check
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Testing And Monitoring For Control Systems (AREA)
- Regulating Braking Force (AREA)
- Debugging And Monitoring (AREA)
- Programmable Controllers (AREA)
Description
【発明の属する技術分野】
本発明はシステムの制御プログラムの自動デバッグ装置に関する。特に、本発明は、制御プログラムの実行を基に、仕様書通りの実行を行っているかを容易にチェックして不良箇所を改善できる自動デバッグ装置に関する。
【0002】
【従来の技術】
従来、制御装置の時系列の計測結果を人手により仕様書通りに動作しいるかがチェックされていた。例えば、自動車のABS(アンチロックブレーキシステム)制御のソフトプログラムの実行では、入出力関係において、車速10km/h以上の入力とABSの許可の入力とがあるときのみABSのON出力が行われているかがチェックされる。逆に、ABSのON出力時に車速10km/h以上の入力とABSの許可入力とが行われているかがチェックされる。このようなチェックで不良箇所が発見されれば修正される。
【0003】
【発明が解決しようとする課題】
しかしながら、試験の項目が多くなりこの試験を人手に頼るとかなりの工数が必要となり、またミスチェックなどが発生するという問題がある。
したがって、本発明は上記問題点に鑑み、低工数で信頼性の高い制御装置の自動デバッグ装置を提供することを目的とする。
【0004】
【課題を解決するための手段】
本発明は、前記問題点を解決するために、複数の信号を入力して制御信号を形成する制御装置のプログラムをデバッグするデバック装置において、前記制御装置のプログラムを規定する仕様書を基に制御の内容をAND論理及びOR論理で分岐し、AND論理又はOR論理の対象となるAND論理、OR論理及びイベントを1つのブロックとして、順次、上位から下位に展開する条件ツリー構造を入力し、この条件ツリー構造から一連のイベントの発生で形成される前記制御信号のチェックルートを抽出するチェックルート抽出部と、前記制御部からの制御信号と前記チェックルート抽出部からの抽出可信号とが一定の時系列変化内にある場合に前記制御部のプログラムを正常と判断し、異常の場合には異常箇所を直すために特定する時系列判断部とを具備し、前記チェックルート抽出部は、前記仕様書を基に予めイベントを格納し、前記複数の信号を入力して、入力信号が一定の条件の場合にイベント発生して出力するイベント発生部と、前記条件ツリー構造を入力し、前記AND論理、前記OR論理のいずれかを単位にブロックとして展開してAND論理又はOR論理を識別し前記ブロックにはイベント、AND論理及びOR論理が含められるブロック展開部と、前記展開されたブロックを構成するイベントを番号で表し、下位のブロックがAND論理の場合には各イベントの番号をx方向に並らべてブロックをマップにし、ブロックがOR論理の場合には各イベントの番号をy方向に並べてブロックをマップにし、且つ上位のブロックがOR論理の場合には下位で形成された2次元マップのx方向にイベントの番号0を並べて、各2次元マップのx方向の桁数を合わせ、桁数を合わされた各2次元マップをy方向に並べてマップにし、且つ上位のブロックがAND論理の場合には、下位で形成された各2次元マップをy方向に繰り返し形成し繰り返された各2次元マップのy方向の桁数を合わせ、桁数を合わされた各2次元マップをx方向に並べてマップにすることにより、最上位のブロックの2次元マップを形成して、このマップの各行がチェックルートを表すチェックルート展開部と、前記チェックルート展開部により得られたチェックルートを形成するイベントの番号と前記イベント発生部からの発生イベントの番号とを比較して、前記チェックルートを形成するイベントの番号が前記発生イベントの番号に含まれるときチェックルートの抽出可信号を出力する比較部とを具備する。この手段により、低工数且つ高い信頼性で制御装置を構成する全要素について正常、異常のチェックを行うことが可能になる。
【0005】
前記ブロック展開部は混在しているイベント、AND論理及びOR論理をイベントのグループと、AND論理及びOR論理のグループの2つに分類して整理する。さらに、前記ブロック展開部はAND論理とAND論理が重なる場合には1つのAND論理に簡略化し、OR論理とOR論理が重なる場合には1つのOR論理に簡略化し、AND論理に1つのイベントしかつながらない場合にはAND論理を省略し、OR論理に1つのイベントしかつながらない場合にはOR論理の省略する。この手段により、本自動デバッグ装置の構成が簡単でき、処理量を低減できる。
【0006】
【発明の実施の形態】
以下本発明の実施の形態について図面を参照して説明する。
図1は本発明の自動デバッグ装置の例を示す図である。本図に示す如く、制御装置1はシステムの制御を行うためにソフトプログラムを搭載しており、複数の信号を入力し、これらの信号を処理して制御信号Aを出力する。チェックルート抽出部2及び時系列判断部3は制御装置1のデバッグ装置を形成する。チェックルート抽出部2は制御装置の仕様書の入出力関係を後述する条件ツリー構造で入力して制御装置1のチェックすべき複数のルートを求めて各々のチェックルートの抽出「可否」を判断してその結果が抽出「可」ならば抽出信号Rを出力する。時系列判断部3は制御装置1からの制御信号A及びチェックルート抽出部2の抽出可信号Rが一定の時系列の変化内にあれば制御装置1のプログラムが正常(OK)であると判断し、そうでなければ異常(NG)であると判断する。
【0007】
図2は図1のチェックルート抽出部2の例を示す図である。本図に示す如く、チェックルート抽出部2は、入力信号を基にイベントを発生するイベント発生部21と、条件ツリー構造を入力して条件ツリー構造のブロック論理を基に展開するブロック展開部22と、ブロック論理を構成するAND(論理積)論理とOR(論理和)とを用いて条件ツリー構造の下位から上位にイベントをマップ状に展開して展開したマップから一連のイベントのチェックルートを求めるチェックルート展開部23と、イベント発生部21の発生イベントとチェックルート展開部23で発生するチェック用イベントを比較しチェック用イベントが発生イベントに含まれる場合にはチェックルートの抽出「可」と判断し抽出可信号Rを出力する比較部24とを具備する。
【0008】
図3は図2のイベント発生部21を説明する図である。本図に示す如く、イベント発生部21は、番号1、2、3、…に対応して複数のイベントA、B、C、…をそれぞれフラグを立てる判定方法と共にサンプリングRAMに格納される。例えば、イベントAは、前述の例では、車速信号の入力に対して車速10km/h以上(C1)でフラグが立って発生し、イベントBはABSの許可(ON)の入力に対してフラグが立ち発生する。
【0009】
図4は図2のブロック展開部に入力させる条件ツリー構造の例を説明する図である。仕様書の記載に沿って条件ツリーを入力するが、本図に示す如く、条件ツリー構造はAND論理と、OR論理と、イベントで構成され、AND論理又はOR論理から分岐が発生する。このような条件ツリー構造は制御の論理展開の考察の結果得られたものである。AND論理、OR論理の下の括弧の数はブロック番号を示す。1つのブロック、例えばAND(0)を構成するイベントA、OR(1)、OR(2)はステートと呼び、ステート数は最大N1 に制限される。
【0010】
図5は図4のブロック例を説明する図である。本図に示す如く、図4の条件ツリー構造にはブロック(0)、ブロック(1)、ブロック(2)、ブロック(3)、ブロック(4)が設けられている。なお、条件ツリー構造はブロック数を最大N2 に制限する。
図6は図2のブロック展開部22の例を説明する図である。本図に示す如く、ブロック展開部22では、ブロック番号(0)、(1)、(2)、(3)、(4)の各々に対して、ブロック論理の種類を識別している、すなわちAND論理なら1−*と、OR論理なら0−*と識別してある。さらにブロックのステートについて、ブロック指定なら0、イベント指定なら1と識別し、ブロックならその後にブロック番号を付け、イベントならその後にイベント番号を付けてある。
【0011】
図7はステートの整理例を説明する図である。本図(a)に示す如く、条件ツリー構造のブロックにイベントと論理とのステートが混在している場合に、本図(b)に示す如く、イベントとブロックの2つに分けて先頭にイベントを位置づけように、ブロック展開のステートを整理する。このようにするのは整理の便宜のためであり、以降の処理の結果に影響を与えない。
【0012】
図8は同一論理のブロックの簡略化を説明する図である。AND−AND、OR−OR、AND−ステート1個、OR−ステート1個のような論理を含む条件ツリー構造、ブロック展開に対して、例として、本図(a)から本図(b)の条件ツリー構造に対するブロック展開にする。このようにするのはブロックの展開の簡略化のためであり、以降の処理の結果に影響を与えない。これらの整理、簡略化により本自動デバッグ装置の処理の構成が簡単化でき、処理量が少なくなる。
【0013】
図9は図2のチェックルート展開部23の下位ブロックでの論理展開例を説明する図である。ブロック指定の無い、つまり、イベントだけからなる下位ブロックでは、本図(a)に示す如く、AND論理のブロック内のイベント番号をx方向(横方向)に並べて展開する。本図(b)に示すように、OR論理のブロック内のイベント番号をy方向(縦方向)に並べて展開する。
【0014】
図10は図2チェックルート展開部23の上位ブロックでの論理展開例を説明する図である。本図(a)に示す如く、上位ブロックでは、OR論理のブロック内のx1 ×y1 のイベントA、x2 ×y2 のイベントB、x3 ×y3 のイベントCをmax(xn,n=1,2,3)×(y1 +y2 +y3 )のようにマップに展開する。本図(b)に示す如く、AND論理積のブロック内でのx1 ×y1 のイベントA、x2 ×y2 のイベントB、x3 ×y3 のイベントCを(x1 +x2 +x3 )×(y1 ×y2 ×y3)のマップに展開する。このようにして得られたブロック(0)での最終的なマップの横方向の各行がチェックルートを表す。
【0015】
以下に具体例について説明する。
図11は具体例を説明する条件ツリー構造を説明する図であり、図12は図11の整理されたブロック展開を説明する図であり、図13は図12の簡略されたブロック展開図であり、図14は図11の簡略化された条件構造を説明する図であり、図15はチェックルートを抽出するための下位ブロックの論理展開を説明する図であり、図16はチェックルートを抽出するための上位ブロックの論理展開を説明する図である。なお、図13のおけるゴミブロックがブロック間の存在する場合には、その後のブロックを前方につめる。図11〜16に示す如く、得られたチェックルートは、
1−2−7、
1−2−8、
1−2−9−10、
1−3−7、
1−3−8、
1−3−9−10、
1−4−7、
1−4−8、
1−4−9−10、
1−5−6、
1−5−6−7、
1−5−6−8、
のように、12のルートになる。なお、図16のマップ内のゼロは無視してある。
【0016】
また、図2に戻り、比較部24では、例えば、チェックルート展開部23から得られた上記のチェックルート1−2−7に対して、イベント発生部21においてイベント1、2、7のフラグが立っていれば、このチェックルートに対して抽出「可」の抽出可信号Rが出力される。
図17は図1の時系列判断部3を説明する図である。本図(a)に示す如く、チェックルート抽出部2からの抽出可信号Rが出力される間に制御装置1から制御信号Aが出力される保持型の場合に制御装置1のプログラムが正常(OK)と判断する。また、本図(b)に示す如く、チェックルート抽出部2からの抽出可信号Rに対して制御装置1から制御信号Aが出力されているトリガ型の場合に制御装置1のプログラムが正常(OK)と判断されてもよい。なお、制御装置1とチェックルート抽出部2の処理では、チェックルート抽出部2の処理が通常速い。このため以下の如く、タイミングの調整が行われる。
【0017】
図18は図1の時系列判断部3において処理タイミングを考慮して制御装置1のプログラムの正常/異常の判断を行う判断例を説明する図である。本図(a)に示す如くトリガ型の場合、制御装置1の入力から出力までの処理時間をΔTとして、制御装置1からの制御信号Aが抽出可信号Rの出力後ΔT内に出力されれば、正常(OK)との判断がを行われる。本図(b)に示す如く保持型の場合、抽出可信号Rの出力の間に制御信号Aを出力すれば制御装置1のプログラムが正常(OK)と判断される。
【0018】
図19は図1の時系列判断部3における異常(NG)の判断例を説明する図である。本図(a)に示す如く、抽出可信号Rの出力後ΔT内に制御信号Aが出力されない場合、制御装置1のプログラムが異常(NG)と判断される。また、本図(b)に示す如く抽出可信号Rが出力されずに制御信号Aを出力した場合、本図(c)に示す如く抽出可信号Rの出力中に制御信号Aを出力し抽出可信号Rの出力が無くなった後ΔT後にもまだ制御信号Aを出力している場合、本図(d)に示す如く抽出可信号Rの出力中に制御信号Aの出力が無くなる場合等、制御装置1のプログラムが異常(NG)と判断される。ただし、(c)(d)の判断は、ただ1個の保持型Rについてのみ、行う。
【0019】
なお、時系列判断部3において、チェックルート抽出部2により抽出された全チェックルートについて制御装置1のプログラムが正常(OK)、異常(NG)の判断を行い、全チェックルートについて正常(OK)を判断したときのみ制御装置1のプログラムが正常(OK)と判断される。1つでもチェックルートに異常(NG)があれば、制御装置1のプログラム全体を異常(OK)と判断して、そのルートが明示される。この明示を基に不良箇所を直すことができる。
【0020】
したがって、本発明によれば、仕様書の制御論理を条件ツリー構造で入力し、この条件ツリー構造を基に変換したチェックルートにおいて制御装置の制御信号の有無を判断するようにしたので、制御装置のデバッグが自動的に行われるようになった。このため、所期の目的である低工数、信頼性の向上を達成することが可能になった。
【0021】
また、本発明は、条件ツリー構造を用いて、チェックルート抽出部2に道路地図のルートを検索させることにより、ナビゲーションのルート検索にも適用可能である。
【図面の簡単な説明】
【図1】本発明の自動デバッグ装置の例を示す図である。
【図2】図1のチェックルート抽出部2の例を示す図である。
【図3】図2のイベント発生部21を説明する図である。
【図4】図2のブロック展開部に入力させる条件ツリー構造の例を説明する図である。
【図5】図4のブロック例を説明する図である。
【図6】図2のブロック展開部22の例を説明する図である。
【図7】ステートの整理例を説明する図である。
【図8】同一論理のブロックの簡略化を説明する図である。
【図9】図2のチェックルート展開部23の下位ブロックでの論理展開例を説明する図である。
【図10】図2チェックルート展開部23の上位ブロックでの論理展開例を説明する図である。
【図11】具体例を説明する条件ツリー構造を説明する図である。
【図12】図11の整理されたブロック展開を説明する図である。
【図13】図12の簡略されたブロック展開図である。
【図14】図11の簡略化された条件構造例を説明する図である。
【図15】チェックルートを抽出するための下位ブロックの論理展開を説明する図である。
【図16】チェックルートを抽出するための上位ブロックの論理展開を説明する図である。
【図17】図1の時系列判断部3を説明する図である。
【図18】図1の時系列判断部3において処理タイミングを考慮して制御装置1のプログラムの正常/異常の判断を行う判断例を説明する図である。
【図19】図1の時系列判断部3における異常(NG)の判断例を説明する図である。
【符号の説明】
1…制御装置
2…チェックルート抽出部
3…時系列判断部
21…イベント発生部
22…ブロック展開部
23…チェックルート展開部
24…比較部
Claims (5)
- 複数の信号を入力して制御信号を形成する制御装置のプログラムをデバッグするデバック装置において、
前記制御装置のプログラムを規定する仕様書を基に制御の内容をAND論理及びOR論理で分岐し、AND論理又はOR論理の対象となるAND論理、OR論理及びイベントを1つのブロックとして、順次、上位から下位に展開する条件ツリー構造を入力し、この条件ツリー構造から一連のイベントの発生で形成される前記制御信号のチェックルートを抽出するチェックルート抽出部と、
前記制御部からの制御信号と前記チェックルート抽出部からの抽出可信号とが一定の時系列変化内にある場合に前記制御部のプログラムを正常と判断し、異常の場合には異常箇所を直すために特定する時系列判断部とを具備し、
前記チェックルート抽出部は、
前記仕様書を基に予めイベントを格納し、前記複数の信号を入力して、入力信号が一定の条件の場合にイベント発生して出力するイベント発生部と、
前記条件ツリー構造を入力し、前記AND論理、前記OR論理のいずれかを単位にブロックとして展開してAND論理又はOR論理を識別し前記ブロックにはイベント、AND論理及びOR論理が含められるブロック展開部と、
前記展開されたブロックを構成するイベントを番号で表し、下位のブロックがAND論理の場合には各イベントの番号をx方向に並らべてブロックをマップにし、ブロックがOR論理の場合には各イベントの番号をy方向に並べてブロックをマップにし、且つ上位のブロックがOR論理の場合には下位で形成された2次元マップのx方向にイベントの番号0を並べて、各2次元マップのx方向の桁数を合わせ、桁数を合わされた各2次元マップをy方向に重ね並べてマップにし、且つ上位のブロックがAND論理の場合には、下位で形成された各2次元のマップをy方向に繰り返し形成し繰り返された各2次元マップのy方向の桁数を合わせ、桁数を合わされた各2次元マップをx方向に並べてマップにすることにより、最上位のブロックの2次元マップを形成して、このマップの各行がチェックルートを表すチェックルート展開部と、
前記チェックルート展開部により得られたチェックルートを形成するイベントの番号と前記イベント発生部からの発生イベントの番号とを比較して、前記チェックルートを形成するイベントの番号が前記発生イベントの番号に含まれるときチェックルートの抽出可信号を出力する比較部とを具備することを特徴とする自動デバッグ装置。 - 前記ブロック展開部は混在しているイベント、AND論理及びOR論理をイベントのグループと、AND論理及びOR論理のグループの2つに分類して整理することを特徴とする、請求項1に記載の自動デバッグ装置。
- 前記ブロック展開部はAND論理とAND論理が重なる場合には1つのAND論理に簡略化し、OR論理とOR論理が重なる場合には1つのOR論理に簡略化し、AND論理に1つのイベントしかつながらない場合にはAND論理を省略し、OR論理に1つのイベントしかつながらない場合にはOR論理の省略することを特徴とする、請求項1に記載の自動デバッグ装置。
- 前記時系列判断部は前記制御部の入力から出力までに要する時間を考慮して時系列変化を決定することを特徴とする、請求項1に記載の自動デバッグ装置。
- 前記時系列判断部は前記チェックルート抽出部により抽出された全チェックルートに対する抽出可信号に対して前記制御部のプログラムの正常及び異常を判断し、いずれか1つのチェックルートに異常があれば、前記制御部のプログラムが異常であると判断を行うことを特徴とする、請求項1に記載の自動デバッグ装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29375396A JP3703581B2 (ja) | 1996-11-06 | 1996-11-06 | 自動デバッグ装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29375396A JP3703581B2 (ja) | 1996-11-06 | 1996-11-06 | 自動デバッグ装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10143391A JPH10143391A (ja) | 1998-05-29 |
JP3703581B2 true JP3703581B2 (ja) | 2005-10-05 |
Family
ID=17798788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP29375396A Expired - Fee Related JP3703581B2 (ja) | 1996-11-06 | 1996-11-06 | 自動デバッグ装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3703581B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5906965B2 (ja) * | 2012-06-29 | 2016-04-20 | 株式会社デンソー | 車載ecuの評価装置 |
DE102017112817A1 (de) * | 2017-06-12 | 2018-12-13 | Dr. Ing. H.C. F. Porsche Aktiengesellschaft | Inbetriebnahme-Steuergerät eines Verbunds aus Steuergeräten eines Kraftfahrzeugs und Verfahren zur Inbetriebnahme von Steuergeräten |
-
1996
- 1996-11-06 JP JP29375396A patent/JP3703581B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH10143391A (ja) | 1998-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5123321B2 (ja) | 機器制御装置及び機器制御プログラム | |
US11769355B2 (en) | Fault diagnosis support device | |
US11511748B2 (en) | Velocity trajectory generation method, apparatus, and storage medium | |
JP3703581B2 (ja) | 自動デバッグ装置 | |
US5461566A (en) | Method for minimalizing structural resonance on vehicle acceleration data | |
WO2024093971A1 (zh) | 一种车载超导磁体监测系统的确定方法、系统及存储介质 | |
US20230336356A1 (en) | Data storage device, data storage method, and non-transitory computer readable storage medium | |
US6845440B2 (en) | System for preventing memory usage conflicts when generating and merging computer architecture test cases | |
JP5733429B2 (ja) | 情報処理装置及び情報処理方法 | |
US5914653A (en) | Start controlling system for a passenger protection system, and recording medium for recording computer-readable instructions | |
CN115756566A (zh) | 车辆避免实线换道的方法及装置 | |
CN115384536A (zh) | 一种驾驶辅助系统控制器的评估方法、装置、设备及介质 | |
CN115220429A (zh) | 故障诊断方法、装置、设备及存储介质 | |
US20220144298A1 (en) | Device for providing image data | |
CN114859868B (zh) | 一种乘用车组合仪表系统下线配置防错处理方法 | |
JPH0531663B2 (ja) | ||
JP2659625B2 (ja) | 車両用乗員保護装置の起動装置 | |
CN111177877A (zh) | 基于应用容器引擎的本地仿真方法、装置及存储介质 | |
US11822469B2 (en) | Method for validating software functions in a driver assistance system for motor vehicles | |
JPS63140969A (ja) | 試験容易化方式 | |
JPH10232795A (ja) | ソフトウェア部品組み合わせテスト方法 | |
CN118227091A (zh) | 转向灯的软件开发方法、装置、设备、介质及计算机程序 | |
SU1260941A1 (ru) | Программируема логическа матрица с контролем | |
US5951699A (en) | Method and apparatus for verifying integrity of predefined data structures in a computer system | |
CN116481834A (zh) | 驾驶场景重构测试方法、装置、车辆及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050606 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050621 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050720 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090729 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090729 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100729 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100729 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110729 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |