JPH04316131A - 故障同定方法 - Google Patents

故障同定方法

Info

Publication number
JPH04316131A
JPH04316131A JP3083789A JP8378991A JPH04316131A JP H04316131 A JPH04316131 A JP H04316131A JP 3083789 A JP3083789 A JP 3083789A JP 8378991 A JP8378991 A JP 8378991A JP H04316131 A JPH04316131 A JP H04316131A
Authority
JP
Japan
Prior art keywords
hypothesis
hypotheses
input sequence
identification method
output response
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
Application number
JP3083789A
Other languages
English (en)
Inventor
Tsutomu Fujinami
藤波 努
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP3083789A priority Critical patent/JPH04316131A/ja
Publication of JPH04316131A publication Critical patent/JPH04316131A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は自動機械の故障同定方法
に関し、特に設計情報を利用して故障を同定する方法に
関する。
【0002】
【従来の技術】従来、自動機械の故障を同定する方法と
して、例えば、正常な自動機械と故障している自動機械
のモデルからなる直和機械を構成し、入力系列と出力応
答から故障を同定する方法が、「順序機械」(岩波講座
、情報科学、13(1983年)第172−177頁)
に記載されている。 この方法では、入力集合の共通な順序機械の状態遷移表
を、入力に対応する列を共通にして縦に並べることによ
り新しい状態遷移表を得、この新しい状態遷移表で表わ
される順序機械を直和機械と呼んでいる。
【0003】
【発明が解決しようとする課題】しかしながら、上述の
従来技術は、特定の入力系列に対して誤った内部状態に
遷移する故障のみに触れており、特定の入力系列に対応
する処理が欠落していたり、誤った出力応答を提示する
故障については触れていない。また、上述の従来技術は
、自動機械が、入力されたすべての系列を受け付けるこ
とを前提としており、ある入力系列を受け付けられない
ために処理を中断して停止する故障については触れてい
ない。計算機システムにおいては、システムに異常が発
生した場合でも、内部状態は得ることが可能な場合が多
いのに対して、出力は得られなくなることが多い。上述
の如き事情を考えると、上記従来技術は、計算機システ
ムにおける故障の同定方法として用いるには問題が多い
。本発明は上記事情に鑑みてなされたもので、その目的
とするところは、従来の技術における上述の如き問題を
解消し、特定の入力系列に対応する処理が欠落していた
り、誤った出力応答を提示する故障の同定方法を提供す
ることにある。また、本発明の他の目的は、自動機械が
処理を中断して停止した場合の故障同定方法を提供する
ことにある。
【0004】
【課題を解決するための手段】本発明の上記目的は、特
定の入力系列が与えられたとき、それ自身の内部状態に
基づいて特定の出力応答を提示し、また、特定の状態に
内部状態を変更(遷移)する自動機械の故障同定方法に
おいて、前記自動機械の設計情報に基づいて故障の仮説
を生成し、前記自動機械の挙動と矛盾する仮説を削除す
ることによって故障を同定することを特徴とする故障同
定方法によって達成される。
【0005】
【作用】本発明に係る故障同定方法においては、設計情
報に基づいて、故障の仮説を作成し、ある入力系列を与
えたときの出力応答または内部状態を基に仮説を絞り込
んでいくので、特定の入力系列に対応する処理が欠落し
ている故障,誤った出力応答を提示する故障または正常
に終了しない故障を同定できるようになるので、従来よ
り正確に故障を同定することができる。
【0006】
【実施例】図1に、本発明をバイナリー加算器108の
故障同定に適用した場合の一実施例を示す。本バイナリ
ー加算器は、設計情報101に示す如く機能する。設計
情報では、入力系列と出力応答を「入力系列/出力応答
」の形式で表現し、内部状態の遷移を矢印の向きで示し
ている。二重丸で示している状態は、バイナリー加算器
が正常に動作した場合に落ちつく最終的な内部状態であ
る。初期状態は常に「q0」である。本バイナリー加算
器は、正常に動作する場合、入力系列「00」に対して
「0」を出力し、内部状態「q0」で正常終了する。ま
た、入力系列「11,00」に対しては「0,1」を出
力し、内部状態を「q0」,「q1」,「q0」の順に
変更して、「q0」で正常終了する。バイナリー加算器
は、データ入力装置109を通して入力系列を受付け、
データ出力装置110を通して結果を提示する。その際
、内部状態を内部状態記憶装置111に書き込む。なお
、内部状態記憶装置111は、最後に書き込まれた状態
のみを保持する。故障同定装置102は、データ収集装
置103,仮説管理装置104,仮説生成装置105,
入力系列生成装置107から構成される。データ収集装
置103は、バイナリー加算器の入力系列,内部状態お
よび出力応答をデータとして収集する。仮説管理装置1
04は、仮説生成装置105に故障の仮説106を生成
するよう要求したり、収集したデータと矛盾する故障の
仮説を削除する。仮説生成装置105は、仮説管理装置
からの要求に応じて、設計情報101を基に、故障の仮
説を生成する。入力系列生成装置107は、故障の仮説
を基に、それらの仮説の絞り込みにもっとも効果的な入
力系列を生成する。
【0007】図2に、本実施例を実現するためのハード
ウェア構成を示す。本実施例に示す故障同定装置では、
前述のデータ収集装置を実現する第1のCPU201と
、仮説管理装置を実現する第2のCPU202と、仮説
生成装置を実現する第3のCPU203,入力系列生成
装置を実現する第4のCPU204,設計情報を記憶す
る第1の記憶装置205,故障の仮説を記憶する第2の
記憶装置206,ユーザからの指示を受け付ける入力装
置207,故障同定作業の結果を表示する表示装置20
8を備えている。以下、図3のフローチャートに基づい
て、本実施例に係る故障同定方法の概要を説明する。 まず、入力系列,内部状態,出力応答があるかどうかを
調べ、もしあるならばデータ収集装置103を介してそ
れらのデータを得る(ブロック31)。ここで、データ
が得られ、かつ、故障の仮説があるならば、そのデータ
と矛盾する仮説を削除する(ブロック32)。次に、故
障の仮説があるかどうかを調べ、もしないならば設計情
報を基に、故障の仮説を生成する(ブロック33)。次
に、処理を終了するかどうかを判定をする。仮説の絞り
込みが不可能になった時点で、残った仮説を解として出
力し終了する(ブロック34)。処理を終了しない場合
は、仮説を参照することにより、それらの仮説を絞り込
むためにもっとも役立つ入力系列を生成し(ブロック3
5)、生成した入力系列を機器に入力して検査する(ブ
ロック36)。以上で1つのサイクルが完了し、再びブ
ロック31に戻って検査の結果をデータ収集装置を介し
て収集する。
【0008】次に、バイナリー加算器の故障を同定する
具体的な過程を示して、本発明を詳細に説明する。図4
,図5,図12,図13は、各ブロックでの処理の詳細
を示したフローチャートであり、図4は仮説管理方法(
ブロック32),図5は仮説生成方法(ブロック33)
,図12は終了判定方法(ブロック34),図13は入
力系列生成方法(ブロック35)に対応する。なお、図
6〜11は、後述する如く、本実施例において生成され
る仮説の例を示すである。バイナリー加算器が故障した
場合、はじめにデータを収集する(ブロック31)。次
の仮説の管理(図4)では、まず、仮説があるかどうか
を調べ(ブロック41)、もし仮説があれば、それらの
うちから出力応答または内部状態が矛盾する仮説を削除
する(ブロック42〜45)。仮説があってもデータが
ない場合には、仮説は削除されない。本故障同定装置を
起動した時点では、いかなる仮説も存在しないので仮説
管理は行われない。仮説を削除した場合は、その仮説の
出力応答に関する情報を後述する出力応答テーブルから
取り除く(ブロック46)。出力応答テーブルは、故障
の仮説のそれぞれについて、ある入力系列を入力したと
きに設計通りに動作するかどうかを調べたものである。 仮説の生成(図5)では、まず、仮説があるかどうかを
調べ(ブロック50)、もし仮説がなければ設計情報を
読み込んで(ブロック51)、それを変形することによ
り仮説を生成した後(ブロック52)、それ以前に得た
データと矛盾する仮説を削除して(ブロック53)、無
矛盾な仮説を得る。矛盾する仮説を削除した結果、仮説
がなくなってしまった場合、まだ仮説を生成する余地が
あるならば再び仮説を生成する(ブロック57)。仮説
は、はじめ変形オペレータを1回だけ適用して作成し、
以後、新たに仮説を生成する度に変形オペレータの適用
回数を増やしていく(ブロック54〜56)。これによ
り、順次複雑な故障の仮説を生成するようになる。変形
オペレータとしては、設計情報から特定の遷移を欠落さ
せる(ブロック55a),誤った内部状態へ遷移させる
(ブロック55b),誤った出力応答を出させる(ブロ
ック55c)オペレータがある。本故障同定装置を起動
した時点では、いかなる仮説も存在しないので必ず仮説
を生成する。
【0009】図6(a〜d),図7(e〜h),図8(
i〜l),図9(m〜p),図10(q〜t)および図
11(u〜x)は、バイナリー加算器の設計情報に、上
述のオペレータを各1回ずつ適用して生成した仮説を示
している。 なお、ここで、括弧内のアルファベットは、後の説明で
、これだけを用いることがある。図6,7は特定の遷移
を欠落させたもの、図8,9は特定の遷移において誤っ
た内部状態へ遷移させるようにしたもの、図10,11
は特定の遷移において誤った出力応答を出させるように
したものである。例えば、図6のaは、状態「q0」に
おいて入力系列「00」を与えられたとき、「q0」に
遷移する処理を欠落させたもの、図8のiは、状態「q
0」において入力系列「00」を与えられたとき、「q
0」に遷移するべきところを「q1」に遷移するように
したもの、図10のqは、状態「q0」において入力系
列「00」を与えられたとき、「0」を出力すべきとこ
ろを「1」を出力するようにしたものである。最初に仮
説を生成する際には、これら24の仮説を生成し、以後
はオペレータの適用回数を増やして、徐々に複雑な仮説
を生成するようにする。
【0010】終了判定(図12)では、まず、仮説があ
るかどうかを調べ(ブロック 121)、仮説がなけれ
ば故障同定に失敗したと判断して(ブロック 122)
、処理を終了する。仮説があれば、出力応答テーブルが
あるかどうかを調べる(ブロック 123)。出力応答
テーブルがなければ、終了せず処理を続行する。一方、
出力応答テーブルがあり、参照した結果、残っている仮
説が同一の入力系列に対して誤った出力応答を返すこと
が予想されたなら(ブロック 124)、それ以上の同
定は不可能であると判断し、残った仮説を表示して(ブ
ロック 125)、処理を終了する。また、そうでなけ
れば、更に絞り込みを続行する。入力系列生成方法(図
13)では、まず、出力応答テーブルがあるかどうかを
調べ(ブロック 131)、なければ存在する仮説につ
いて出力応答テーブルを作成する(ブロック 132)
。出力応答テーブルは、故障がないならば正常に処理で
きる入力系列を各仮説に与えたとき、正しい出力応答が
得られるかどうかを示すテーブルである。 例えば、上述の仮説図6,7のaからhに関して、ある
最小の入力系列「00」に対する出力応答テーブルは、
図27のようになる。図27では、正しい出力応答を返
す仮説を「O」で、誤った出力応答を返す仮説を「X」
で示している。図27から明らかなように、状態「q0
」において入力系列「00」を与えられたとき「q0」
に遷移する処理を欠落させた仮説aは、正しい出力応答
を返さない。 なお、後述する如く、出力応答テーブルは、最小サイズ
の入力系列からはじめて、順次長い入力系列に対するテ
ーブルを作成するようにする。この出力応答テーブルは
、終了判断と入力系列生成のために使われる。すべての
入力系列を絞り込みに利用してしまったならば(ブロッ
ク 134)、現在のテーブルを破棄してより大きな入
力系列に対するテーブルを作成する(ブロック 135
)。検査に利用する入力系列は、出力応答テーブルを参
照し、誤った出力応答を返す仮説がもっとも多いものを
選択する(ブロック 136)。図28は、図6から図
11に示した仮説aからxについて、故障がないならば
正常に処理できる入力系列のうち最小サイズのもの、す
なわち、「00」,「01」,「10」に対する出力応
答を示したものである。この出力応答テーブルでは、入
力系列「00」,「01」,「10」は誤った出力応答
を返す仮説を同じ数だけカバーしているので、どの系列
を選択しても良い。なお、図28以降では、図を見やす
くするため、出力応答が正しいことを示す記号「O」を
表示しない。
【0011】以下、上述の方法に基づいて故障を同定す
る具体例を示す。対象とするバイナリー加算器は、先に
図11xに示した仮説と同じ故障、すなわち、状態「q
1」で入力系列「00」を受け取ったとき、「1」を返
すべきところを「0」を返してしまう故障であるとする
。また、故障同定作業を始める前にはバイナリー加算器
のデータをまったく得ていないものとする。まず、はじ
めにデータ収集(ブロック31)を試みるが、データを
得ることはできない。次に、仮説管理(ブロック32)
を行うが、仮説は存在しないので(ブロック41)、す
ぐに仮説を生成する(ブロック33)。仮説がないので
(ブロック50)、設計情報101を読み込み、変形し
て仮説を生成する。ここでは、1回目の仮説生成なので
カウンタの値は1であるから(ブロック54)、変形オ
ペレータを1回だけ適用し(ブロック55)、カウンタ
の値を2とする(ブロック56)。変形に当たっては、
まず特定の遷移を欠落させて(ブロック55a)、図6
のaから図7のhまでに示す仮説を得る。次に、誤った
内部状態へ遷移するよう変形し(ブロック55b)、図
8iから9pまでに示す仮説を得る。最後に、誤った値
を出力するよう変形し(ブロック55c)、図10qか
ら11xに示す仮説を得る。このように仮説を生成した
後、これまでに得たデータと矛盾する仮説を削除しよう
とするが(ブロック53)、データがないので削除され
る仮説はない。続いて、終了判定を行う。ここでは、仮
説が存在し(ブロック 121)、出力応答テーブルは
まだないので(ブロック 123)、終了しない。終了
しなかったので、次に、入力系列を生成する。出力応答
テーブルはまだ存在しないので、上述の如く、設計通り
に動作する場合に処理できる入力系列のうち最小サイズ
のもの、すなわち、「00」,「01」,「10」に対
する出力応答テーブル(図28)を生成する(ブロック
 132)。各系列ともまだ絞り込みに利用していない
ので(ブロック 134)、これらの系列から検査に利
用するものを選択する。ここでは、「00」を選択して
(ブロック 136)、検査する(ブロック36)。以
上が第1回目のサイクルである。
【0012】次の第2回目のサイクルでは、まず、デー
タを収集する(ブロック31)。ここでは、検査の結果
、バイナリー加算器は、正常な出力応答「0」を返して
、「q0」で正常に終了していることがわかるとする。 次の仮説管理では、仮説が存在するので(ブロック41
)、出力応答の記録があるかどうかを調べる(ブロック
42)。ここでは、出力応答のデータが得られるので、
矛盾する仮説a,qを削除する(ブロック44)。仮説
aは入力系列「00」を受け付けらず、異常終了すると
予想していたからである。また、仮説qは、異常な出力
応答「1」を返すと予想していたからである。次に、内
部状態の記録が残っているかどうかを調べる(ブロック
43)。ここでもデータ「q0」が得られるので、矛盾
する仮説iを削除する(ブロック45)。仮説iは入力
系列「00」に対して、内部状態「q1」で異常終了す
ると予想していたからである。続いて、上で削除された
仮説a,i,qを出力応答テーブルから削除する(ブロ
ック46)。この結果、出力応答テーブルは図29のよ
うになる。次は仮説生成であるが、仮説はまだ存在する
ので(ブロック50)、終了判定を行う。 仮説は存在し(ブロック 121)、出力応答テーブル
も存在する(ブロック 123)が、ここでは、すべて
の仮説が同じ入力系列に対して誤った動作をすることは
ない(ブロック 124)。例えば、入力系列「01」
に対して仮説cは誤った出力応答を返すが、仮説bは正
常な出力応答を返す。従って、ここでは処理を終了しな
い。入力系列の生成では、まだ、「01」と「10」と
が未使用のまま残っているので(ブロック 134)、
ここから、次の入力系列として、「01」を選択して、
検査する(ブロック 136)。以上が第2回目のサイ
クルである。
【0013】次の第3回目のサイクルでは、まず、デー
タを収集する(ブロック31)。検査の結果、ここでは
、バイナリー加算器は正常な出力応答「1」を返して、
「q0」で正常に終了していることがわかるとする。次
の仮説管理では、仮説が存在するので(ブロック41)
、出力応答の記録があるかどうかを調べる(ブロック4
2)。ここでは、出力応答のデータが得られるので、矛
盾する仮説c,sを削除する(ブロック44)。仮説c
は入力系列「01」を受け付けられず、異常終了すると
予想していたからである。また、仮説sは、異常な出力
応答「0」を返すと予想していたからである。次に、内
部状態の記録が残っているかどうかを調べる(ブロック
43)。ここでもデータ「q0」が得られるので、矛盾
する仮説kを削除する(ブロック45)。仮説kは入力
系列「01」に対して、内部状態「q1」で異常終了す
ると予想していたからである。続いて、削除された仮説
c,k,sを、出力応答テーブルから削除する(ブロッ
ク46)。この結果、出力応答テーブルは図30のよう
になる。次は仮説生成であるが、仮説はまだ存在するの
で(ブロック50)、終了判定を行う。仮説は存在し(
ブロック 121)、出力応答テーブルも存在する(ブ
ロック 123)が、ここでは、すべての仮説が同じ入
力系列に対して誤った動作をすることはない(ブロック
 124)ので、処理を終了しない。入力系列の生成で
は、まだ「10」が未使用のまま残っているので(ブロ
ック 134)、次の入力系列として、「10」を選択
して、検査する(ブロック 136)。以上が第3回目
のサイクルである。
【0014】次の第4回目のサイクルでは、まず、デー
タを収集する(ブロック31)。ここでは、検査の結果
、バイナリー加算器は、正常な出力応答「1」を返して
、「q0」で正常に終了していることがわかるとする。 次の仮説管理では、仮説が存在するので(ブロック41
)、出力応答の記録があるかどうかを調べる(ブロック
42)。ここでは、出力応答のデータが得られるので、
矛盾する仮説d,tを削除する(ブロック44)。仮説
dは入力系列「10」を受け付けられず、異常終了する
と予想していたからである。また、仮説tは、異常な出
力応答「0」を返すと予想していたからである。次に、
内部状態の記録が残っているかどうかを調べる(ブロッ
ク43)。ここでもデータ「q0」が得られるので、矛
盾する仮説lを削除する(ブロック45)。仮説lは入
力系列「10」に対して、内部状態「q1」で異常終了
すると予想していたからである。 削除された仮説d,l,tをテーブルから削除する(ブ
ロック46)。この結果、出力テーブルは図31のよう
になる。次は仮説生成であるが、仮説はまだ存在するの
で(ブロック50)、終了判定を行う。仮説は存在し(
ブロック 121)、出力応答テーブルも存在する(ブ
ロック  123)が、どの仮説も正常な出力応答を返
すと予想されている。このことは、すべての仮説が同じ
入力系列に対して「誤った」動作をすることはない(ブ
ロック 124)ことに相当するので、ここでも処理を
終了しない。次の入力系列の生成では、これまでにすべ
ての入力系列を利用してしまったので(ブロック 13
4)、このテーブルを破棄して、設計通りに動作する場
合に処理できる入力系列のうち、次に小さいもの、すな
わち、「00,00」,「00,01」,「00,10
」,「11,00」,「01,00」,「01,01」
,「01,10」,「10,00」,「10,01」お
よび「10,10」に対する出力応答テーブル(図32
)を生成する(ブロック 135)。そして、系列「1
1,00」のみに誤った出力応答を返す仮説があるので
、ここでは「11,00」を選択して検査する。以上が
第4回目のサイクルである。
【0015】次の第5回目のサイクルでは、まず、デー
タを収集する(ブロック31)。検査の結果、ここでは
、バイナリー加算器は異常な出力応答「00」を返して
、「q0」で正常に終了していることがわかるとする。 次の仮説管理では、仮説が存在するので(ブロック41
)、出力応答の記録があるかどうかを調べる(ブロック
42)。ここでは、出力応答のデータが得られるので、
矛盾する仮説e,f,g,h,j,m,n,o,u,v
,wを削除する(ブロック44)。これらの仮説は、入
力系列「11,00」に対して、正常な出力応答「01
」を返して終了すると予想していたからである。また、
仮説bは、入力系列「11,00」を受け付けないと予
想したので削除する。 また、仮説rは、得られた応答「00」とは異なる「1
1」を出力すると予想していたので削除する。次に、内
部状態の記録が残っているかどうかを調べる(ブロック
43)。 ここでもデータ「q0」が得られるので、矛盾する仮説
pを削除する(ブロック45)。仮説pは、入力系列「
11,00」に対して内部状態「q1」で異常終了する
と予想していたからである。続いて、削除された仮説を
テーブルから削除する(ブロック46)。この結果、出
力テーブルは図33のようになる。次は仮説生成である
が、仮説はまだ存在するので(ブロック50)、終了判
定を行う。この時点では、仮説と出力応答テーブル(ブ
ロック 121,123)が存在し、ただ1つの仮説x
のみが残されている。これは、すべての仮説が同一の入
力系列に対して誤った出力応答を返す場合に相当するの
で(ブロック 124)、仮説xを解として出力する(
ブロック 125)。上記実施例においては、このよう
に、第5回目のサイクルで、正しく故障を同定すること
ができる。
【0016】次に第二の具体例として、第一の事例と同
じ図11xに示した故障を、バイナリー加算器の内部状
態に関するデータが得られない場合に同定する方法を示
す。第1回目のサイクルは、第一の事例と同じである。 第2回目のサイクルでは、内部状態に関するデータが得
られないので、仮説iを削除できない。従って、第2回
目のサイクルで得られる出力応答テーブルは、図34の
ようになる。同様に、次の第3回目のサイクルでは、仮
説kを削除できない。従って、第3回目のサイクルで得
られる出力応答テーブルは、図35のようになる。同様
に、次の第4回目のサイクルでは、仮説lを削除できな
い。従って、第4回目のサイクルで得られる出力応答テ
ーブルは、図36のようになる。この時点で、すべての
入力系列を利用してしまったので(ブロック 134)
、このテーブルを破棄し、次のテーブル(図37)を作
成する(ブロック 135)。そして、誤った出力応答
を返す仮説がもっと多く含まれている入力系列「11,
00」を選択して検査する。以上が第4回目のサイクル
である。第5回目のサイクルでは、入力系列「11,0
0」に対して、仮説b,e,f,g,h,j,m,n,
o,r,u,v,wが矛盾し、結果として、図38の出
力応答テーブルが得られる。そして、誤った出力応答を
返す仮説がもっと多く含まれている入力系列「00,0
1」を選択して検査する。第6回目のサイクルでは、入
力系列「00,01」に対して仮説iが矛盾し、結果と
して図39の出力応答テーブルが得られる。そして、誤
った出力応答を返す仮説がもっと多く含まれている入力
系列「01,10」を選択して検査する。
【0017】第7回目のサイクルでは、入力系列「01
,10」に対して仮説kが矛盾し、結果として図40の
出力応答テーブルが得られる。そして、誤った出力応答
を返す仮説がもっと多く含まれている入力系列「00,
10」を選択して検査する。第8回目のサイクルでは、
入力系列「00,10」に対して矛盾する仮説がないの
で、仮説が1つも削除されない。従って、出力応答テー
ブルは更新されず、図40のままである。この時点でも
、まだすべての仮説が同一の入力系列に対して誤った出
力応答を返すことはないので、誤った出力応答を返す仮
説がもっと多く含まれている入力系列「10,00」を
選択して検査する。第9回目のサイクルでは、入力系列
「10,00」に対して仮説lが矛盾し、結果として図
41の出力応答テーブルが得られる。ここで残された仮
説pとxは、いずれも、同一の入力系列「11,00」
に対して誤った出力応答を返すと予想される(ブロック
 124)。従って、ここで残された仮説を解として表
示し、絞り込みを打切って終了する。すなわち、状態「
q1」において「00」を受け取ったとき、「1」を出
力して「q0」に遷移すべきところを、誤って「q1」
に遷移しているか、または、「1」を出力すべきところ
を誤って「0」を出力しているかのどちらかであること
を表示する。上記実施例によれば、このように、対象と
する機器の内部状態が得られない場合でも、ある程度は
故障を同定できる。
【0018】次に、第三の実施例として、専門家の経験
的な知識を利用して、故障の仮説を生成する方法を示す
。本実施例では、故障同定装置102に対して、図14
に示す如く、専門家の経験的な知識を保持する知識ベー
ス140を加えている。仮説生成装置105は、仮説の
生成(ブロック33)において、上述の知識ベース14
0から、専門家の経験的知識を利用して仮説を生成する
ことに特徴がある。また、図15に示すように、ハード
ウェア構成は、該専門家の経験的な知識を記憶する第三
の記憶装置150を新たに備える。図16は、本実施例
における仮説生成方法を示すフローチャートである。本
実施例においては、第一および第二の実施例における仮
説生成方法(図5)とは異なり、知識ベースに保持され
た専門家の経験的知識を利用して故障の仮説を生成する
(ブロック 160)。専門家の経験的知識は、条件部
と実行部とからなり、条件部には”IF”に続けて故障
同定作業の状態を、また、実行部には”THEN”に続
けて仮説の生成方法を記述する。本実施例では、以下に
示す如き知識が、知識ベースに保持されているものとす
る。 (知識1) IF      まだ仮説を生成していないTHEN 
 誤った出力応答を出す仮説を生成する(知識2) IF      知識1が失敗した THEN  誤った内部状態へ遷移する仮説を生成する
(知識3) IF      知識1と知識2が失敗したTHEN 
 特定の遷移が欠落している仮説を生成するここで、本
実施例において故障を同定する例を示す。対象とするバ
イナリー加算器は、第一,第二の実施例と同様に、図1
1xに示した仮説と同じ故障、すなわち、状態「q1」
で入力系列「00」を受け取ったとき、「1」を返すべ
きところを「0」を返してしまう故障であるとする。 また、第二の実施例と同様、バイナリー加算器の内部状
態に関するデータは得られないとする。第1回目のサイ
クルでは、まだ、仮説を生成していないので知識1を適
用し、誤った出力応答を出す仮説を生成する。従って、
第1回目のサイクルで得られる出力応答テーブルは、図
42のようになる。以下、第4回目のサイクルまでは、
第二の実施例と同様に進行し、図43の出力応答テーブ
ルを作成する。第5回目のサイクルでは、入力系列「1
1,00」に対して仮説r,u,v,wが矛盾し、結果
として、図44の出力応答テーブルが得られる。この時
点では、仮説と出力応答テーブル(ブロック 121,
123)が存在し、ただ1つの仮説xのみが残されてい
る。これは、前述の、すべての仮説が同一の入力系列に
対して誤った出力応答を返す場合に相当するので(ブロ
ック 124)、仮説xを解として出力する(ブロック
 125)。上記実施例によれば、このように、第5回
目のサイクルで正しく故障を同定することができる。な
お、先に示した第二の実施例では、9サイクルを要して
いることと比較すると、専門家の知識の利用により、よ
り短時間で故障を同定できる場合があることがわかる。
【0019】次に第四の実施例として、自動機械の設計
情報を特定の入出力を持つモジュール単位で保持し、故
障の仮説を上記モジュール毎に生成することにより、故
障をモジュールごとに同定する方法を示す。図17は、
3つのバイナリー加算器(A)140,同(B)141
,同(C)142を組み合せて構成した複合機械のモジ
ュール構成図である。この複合機械は、入力装置143
〜146から入力系列を受け付け、出力装置149から
出力応答を返す。バイナリー加算器(A)と同(B)の
出力147,148は、バイナリー加算器(C)への入
力系列となる。本実施例に示す複合機械は、四桁の入力
データを上述の入力装置143〜146から受け付ける
。すなわち、入力データとして「0011」が与えられ
たとき、四桁目の「0」は入力装置143から、三桁目
の「0」は入力装置144から、二桁目の「1」は入力
装置145から、また、一桁目の「1」は入力装置14
6から受け付ける。 従って、入力系列「0011,0000」を与えた場合
、バイナリー加算器(A)140の内部状態は「q0→
q0→q0」、バイナリー加算器(B)141の内部状
態は「q0→q1→q0」、また、バイナリー加算器(
C)142の内部状態は「q0→q1→q0」のように
遷移し、出力応答として「01」を返す。本複合機械を
モジュール単位に分割して扱わなかった場合、設計情報
は全体で図18〜25を合わせたものとなる。複合機械
の内部状態としては、構成要素であるバイナリー加算器
A,B,Cの内部状態の組み合わせにより、次の8つの
状態がある。 状態S0:A=q0,B=q0,C=q0状態S1:A
=q1,B=q0,C=q0状態S2:A=q1,B=
q1,C=q0状態S3:A=q1,B=q0,C=q
1状態S4:A=q1,B=q1,C=q1状態S5:
A=q0,B=q1,C=q0状態S6:A=q0,B
=q0,C=q1状態S7:A=q0,B=q1,C=
q1
【0020】図18は、状態S0から他の状態への
遷移を示したものであり、点線で表現している状態S3
,S4,S7は、状態S0から遷移することがないこと
を意味している。以下、図19は状態S1からの、図2
0は状態S2からの、図21は状態S3からの、図22
は状態S4からの、図23は状態S5からの、図24は
状態S6からの、また、図25は状態S7からの遷移を
示した図である。以上の説明から明らかなように、複合
機械をそのまま全体として扱うと設計情報は莫大になり
、仮説の数は組み合せ爆発を起こす。仮説の数は「各桁
が取り得る値の数」と「各入力系列の長さ」の乗数に、
「状態の数」と「仮説生成方法の数」を掛け合わせたも
のである。この例では「24×8×3=384」となり
、384個もの仮説を同時に管理しなければならなくな
る。そこで、本実施例では、自動機械の設計情報を特定
の入出力を持つモジュール単位で保持し、故障の仮説を
該モジュールごとに生成することにより、故障をモジュ
ールごとに同定する。本実施例に示す複合機械の場合は
、独立した入出力を持つ3つのバイナリー加算器A,B
,Cのそれぞれを1つのモジュールとし、それぞれのバ
イナリー加算器毎に、設計情報を保持する。各モジュー
ルの設計情報は、図1の101と同様である。このよう
に設計情報をモジュール毎とに分けたことにより、各モ
ジュールの仮説数は「22×2×3=24」となり、仮
説の数は大幅に減少する。図26は、本実施例の概要を
示すフローチャートである。例として、バイナリー加算
器Bが故障している場合の故障同定方法を示す。始めに
、まだ調べていないモジュールがあるかどうかを調べる
(ブロック 260)。ここでは、まだバイナリー加算
器A、B,Cを調べていないので、まず、バイナリー加
算器Aの設計情報を読み込み(ブロック 261)、第
一の実施例または第三の実施例に述べた方法で、故障同
定作業を行う(ブロック 262)。ここでは、バイナ
リー加算器Aは故障していないので故障を同定できない
。同定できなければ、他のモジュールが故障しているか
どうかを調べる(ブロック 263)。ここでは、まだ
、調べていないモジュールとして、バイナリー加算器B
,Cが残っているので(ブロック 260)、次にバイ
ナリー加算器Bの設計情報を読み込み(ブロック 26
1)、故障同定作業を行う(ブロック 262)。バイ
ナリー加算器Bは故障しているので、故障の同定に成功
し終了する。なお、すべてのモジュールを調べたにも関
わらず故障を同定できなかったときには、故障同定に失
敗したことを表示して(ブロック 264)終了する。 上記実施例によれば、このように、設計情報をモジュー
ル毎とに分けたことにより、各モジュールの仮説の数は
大幅に減少し、より短時間で故障を同定できるようにな
る。 なお、上述の各実施例はいずれも本発明の一例を示した
ものであり、本発明はこれらに限定されるべきものでは
ないことは言うまでもない。
【0021】
【発明の効果】本発明によれば、設計情報を基に故障の
仮説を作成し、ある入力系列を与えたときの出力応答ま
たは内部状態を基に絞り込んでいくので、特定の入力系
列に対応する処理が欠落している故障、誤った出力応答
を提示する故障、または、正常に終了しない故障を同定
できる。また、出力応答テーブルにより故障を絞り込め
ない状態を判断できるので、故障している機器の十分な
データが得られない場合でも、可能な限り絞り込まれた
仮説が得られる。なお、仮説の生成にあたっては、変形
オペレータの適用回数を徐々に増やしていくので、仮説
を少しずつ検証していくことができる。これにより、一
度に必要なメモリ消費量を減らすことができる。また、
専門家の経験的知識を利用することにより、無駄な仮説
を生成することなく、効率的に故障を同定できる。また
、検査に利用する入力系列を、最小の長さのものから徐
々に長くしていくようにすることにより、絞り込みにも
っとも役立つ入力系列を選択するために要する計算時間
と、検査に要する計算時間をできるかぎり短縮すること
ができる。更に、上述の入力系列の選択に当たっては、
誤った出力応答を返す仮説がもっとも多いものを選択す
ることにより、できる限り少ない回数で仮説を絞り込ん
でいくことができる。また、設計情報をモジュール毎に
分割して扱うようにすることにより、仮説の数が組み合
せ爆発を起こすのを防ぐことができる。
【0022】
【図面の簡単な説明】
【図1】本発明の一実施例を示す故障同定装置の構成図
である。
【図2】実施例の故障同定装置のハードウェア構成図で
ある。
【図3】実施例の故障同定方法の概要を示したフローチ
ャートである。
【図4】実施例の故障同定方法における仮説管理方法を
詳細に示したフローチャートである。
【図5】実施例の故障同定方法における仮説生成方法を
詳細に示したフローチャートである。
【図6】実施例の故障同定方法における仮説生成方法に
より生成した故障の仮説の例を示す図である。
【図7】実施例の故障同定方法における仮説生成方法に
より生成した故障の仮説の例を示す図である。
【図8】実施例の故障同定方法における仮説生成方法に
より生成した故障の仮説の例を示す図である。
【図9】実施例の故障同定方法における仮説生成方法に
より生成した故障の仮説の例を示す図である。
【図10】実施例の故障同定方法における仮説生成方法
により生成した故障の仮説の例を示す図である。
【図11】実施例の故障同定方法における仮説生成方法
により生成した故障の仮説の例を示す図である。
【図12】実施例の故障同定方法における終了判定方法
を詳細に示したフローチャートである。
【図13】実施例の故障同定方法における入力系列生成
方法を詳細に示したフローチャートである。
【図14】本発明の他の実施例を示す故障同定装置の構
成図である。
【図15】図14に示す実施例の故障同定装置のハード
ウェア構成図である。
【図16】実施例の故障同定方法における仮説生成方法
を詳細に示したフローチャートである。
【図17】実施例の複合機械のモジュール構成図である
。
【図18】実施例の複合機械の設計情報の例を示す図で
ある。
【図19】実施例の複合機械の設計情報の例を示す図で
ある。
【図20】実施例の複合機械の設計情報の例を示す図で
ある。
【図21】実施例の複合機械の設計情報の例を示す図で
ある。
【図22】実施例の複合機械の設計情報の例を示す図で
ある。
【図23】実施例の複合機械の設計情報の例を示す図で
ある。
【図24】実施例の複合機械の設計情報の例を示す図で
ある。
【図25】実施例の複合機械の設計情報の例を示す図で
ある。
【図26】実施例の故障同定方法の概要を示したフロー
チャートである。
【図27】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図28】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図29】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図30】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図31】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図32】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図33】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図34】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図35】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図36】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図37】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図38】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図39】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図40】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図41】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図42】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図43】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【図44】実施例の故障同定方法における出力応答テー
ブルの例を示す図である。
【符号の説明】
101:設計情報、102:故障同定装置、103:デ
ータ収集装置、104:仮説管理装置、105:仮説生
成装置、106:故障の仮説、107:入力系列生成装
置、108:バイナリー加算器、109:データ入力装
置、110:データ出力装置、111:内部状態記憶装
置、140:知識ベース。

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】  特定の入力系列が与えられたとき、そ
    れ自身の内部状態に基づいて特定の出力応答を提示し、
    また、特定の状態に内部状態を変更(遷移)する自動機
    械の故障同定方法において、前記自動機械の設計情報に
    基づいて故障の仮説を生成し、前記自動機械の挙動と矛
    盾する仮説を削除することによって故障を同定すること
    を特徴とする故障同定方法。
  2. 【請求項2】  前記故障の仮説を、前記設計情報から
    特定の遷移を欠落させるか、誤った内部状態へ遷移させ
    るか、または、誤った出力応答を出させる如く変形して
    生成することを特徴とする請求項1記載の故障同定方法
    。
  3. 【請求項3】  前記仮説の生成方法が、変形操作を1
    回だけ適用することから始めて順次適用回数を増やすこ
    とにより、単純な仮説から複雑な仮説を生成するもので
    あることを特徴とする請求項2記載の故障同定方法。
  4. 【請求項4】  前記仮説の矛盾の有無の判定は、自動
    機械に特定の入力系列を与えたときに正常終了するかど
    うかを調べることにより行い、この判定結果に基づいて
    仮説を絞り込むことを特徴とする請求項1記載の故障同
    定方法。
  5. 【請求項5】  前記仮説の矛盾の有無の判定は、自動
    機械に特定の入力系列を与えたときの内部状態を調べる
    ことにより行い、この判定結果に基づいて仮説を絞り込
    むことを特徴とする請求項1記載の故障同定方法。
  6. 【請求項6】  前記仮説の矛盾の有無の判定は、自動
    機械に特定の入力系列を与えたときの出力応答を調べる
    ことにより行い、この判定結果に基づいて仮説を絞り込
    むことを特徴とする請求項1記載の故障同定方法。
  7. 【請求項7】  前記自動機械に与える入力系列は、故
    障がないならば正常に動作する入力系列のうち、長さの
    短いものから順に生成することを特徴とする請求項4〜
    6のいずれかに記載の故障同定方法。
  8. 【請求項8】  前記自動機械に与える入力系列は、該
    入力系列を自動機械に与えた場合、誤った出力応答を返
    す仮説がもっとも多いものを選択することを特徴とする
    請求項4〜6のいずれかに記載の故障同定方法。
  9. 【請求項9】  前記仮説の絞り込みにおいて、新たに
    入力系列を与えることにより判明した内部状態または出
    力応答では1つも仮説を削除できないとき、それ以上は
    仮説を絞り込めないと判断して終了することを特徴とす
    る請求項4〜6のいずれかに記載の故障同定方法。
  10. 【請求項10】  前記仮説の生成方法が、専門家の経
    験的な知識を利用して仮説を生成するものであることを
    特徴とする請求項2記載の故障同定方法。
  11. 【請求項11】  前記自動機械の設計情報を特定の入
    出力を持つモジュール単位で保持し、前記故障の仮説は
    該モジュール毎に生成することにより、故障をモジュー
    ル毎に同定することを特徴とする請求項1記載の故障同
    定方法。
JP3083789A 1991-04-16 1991-04-16 故障同定方法 Pending JPH04316131A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3083789A JPH04316131A (ja) 1991-04-16 1991-04-16 故障同定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3083789A JPH04316131A (ja) 1991-04-16 1991-04-16 故障同定方法

Publications (1)

Publication Number Publication Date
JPH04316131A true JPH04316131A (ja) 1992-11-06

Family

ID=13812415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3083789A Pending JPH04316131A (ja) 1991-04-16 1991-04-16 故障同定方法

Country Status (1)

Country Link
JP (1) JPH04316131A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010225150A (ja) * 2009-03-23 2010-10-07 Palo Alto Research Center Inc 観察に富んだシステムにおける障害診断の方法およびシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010225150A (ja) * 2009-03-23 2010-10-07 Palo Alto Research Center Inc 観察に富んだシステムにおける障害診断の方法およびシステム

Similar Documents

Publication Publication Date Title
JP2598846B2 (ja) コンピュータ統合による製造再加工装置及び方法
US5195095A (en) Algorithm for identifying tests to perform for fault isolation
Schroeder et al. Generating expected results for automated black-box testing
CN111580495A (zh) 一种用于医疗器械的远程故障处理方法、装置和系统
US5282212A (en) Algorithm for identifying highly suspect components in fault isolation
US5187785A (en) Algorithm for representing component connectivity
JP3206096B2 (ja) 入力データ処理装置
CN117453567A (zh) 混沌测试方法、装置及设备
US5504862A (en) Logic verification method
JP3212666B2 (ja) 並行プログラムのデバッグ支援装置
CN118585386B (zh) Fpga互联资源的量产测试方法、装置、设备及存储介质
JP2000057014A (ja) テスト装置、テストケース評価装置、およびテスト結果解析装置
JP3315266B2 (ja) 自己診断状況表示方式
JP3466788B2 (ja) 情報処理装置における命令列の試験装置
JP2000222243A (ja) デバッグ装置及びデバッグ方法
JP3069321B2 (ja) データベースプロセッサ診断方法
CN114116468A (zh) 一种应用测试方法、装置、电子设备及存储介质
JP2500385B2 (ja) 入力デ―タ管理方式
JPH0997194A (ja) フェイルメモリのデータ取得装置
JPS62224833A (ja) デ−タ形式の適否検査方式
CN114780401A (zh) 接口测试方法、装置、计算机设备、存储介质
CN117112051A (zh) 组件拓扑图生成方法、装置、计算机设备及存储介质
JPH0581388A (ja) 図形情報表示機能検査方式
JPH01134539A (ja) マイクロプログラムトレース方式
JPS6272046A (ja) 通信インタフエ−ス・カ−ド試験装置