(57)【要約】【課題】異常であるのにも関わらず異常でないと判断される状況の発生を抑制【解決手段】電子制御装置は、入力信号の入力値を用いて所定の演算処理を行い出力値Ｒ１を算出する。そして、算出された４個の出力値Ｒ１を新しい順にＲ１（０），Ｒ１（１），Ｒ１（２），Ｒ１（３）とし、出力変化量ΔＲ１（１）［＝Ｒ１（１）−Ｒ１（２）］と、出力変化量ΔＲ１（２）［＝Ｒ１（２）−Ｒ１（３）］を算出する。更にΔＲ１（１），ΔＲ１（２）の正負符号が同じ場合（図（ａ）の矢印Ｙ１，Ｙ２参照）に出力予測変化量Ｃ１［＝ΔＲ１（１）／ΔＲ１（２）］を算出し、正負符号が異なる場合（図（ｂ）の矢印Ｙ３，Ｙ４参照）に出力予測変化量Ｃ１［＝Ｃ０＋｛ΔＲ１（１）／ΔＲ１（２）｝］を算出する（Ｃ０は定数）。その後、出力予測変化量Ｃ１と過去の出力値Ｒ１（１）を用い、今回の出力値Ｒ１（０）の取り得る範囲ＲＧ１を算出する。【選択図】図３
2010018150.tif 000002
【特許請求の範囲】
【請求項１】
時々刻々変化するデータである変化データを用いて、制御対象を制御する電子制御装置であって、
過去の２つ以上の前記変化データ間の変化量である過去データ変化量を少なくとも１つ用いて、今回の前記変化データである今回変化データと、過去の前記変化データとの間の変化量の予測値である予測変化量を算出する予測変化量算出手段と、
過去の前記変化データと、前記予測変化量算出手段により算出された前記予測変化量とに基づいて、前記今回変化データが取り得る範囲の予測値である今回変化データ予測範囲を算出するデータ予測範囲算出手段と
を備えることを特徴とする電子制御装置。
【請求項２】
前記予測変化量算出手段は、前記過去データ変化量を少なくとも２つ用いて前記予測変化量を算出し、
さらに前記予測変化量算出手段は、
前記予測変化量算出手段による前記予測変化量の算出に用いられた複数の前記過去データ変化量の状態が、前記今回変化データ予測範囲を広げるために予め設定された予測範囲拡張条件を満たすように変化したか否かを判断する状態変化判断手段を備え、
前記予測範囲拡張条件を満たしていると前記状態変化判断手段により判断された場合には、前記予測範囲拡張条件を満たしていないと前記状態変化判断手段により判断された場合よりも前記予測変化量が大きくなるように、前記予測変化量を算出する
ことを特徴とする請求項１に記載の電子制御装置。
【請求項３】
前記予測範囲拡張条件は、
前記予測変化量算出手段による前記予測変化量の算出に用いられた前記過去データ変化量のうち予め選択された２つの前記過去データ変化量の正負符号が異なることである
ことを特徴とする請求項２に記載の電子制御装置。
【請求項４】
今回の前記変化データが、前記データ予測範囲算出手段により算出された前記今回変化データ予測範囲の範囲内であるか否かを判断するデータ範囲判断手段と、
今回の前記変化データが前記今回変化データ予測範囲の範囲内でないと前記データ範囲判断手段により判断された場合に、今回の前記変化データを前記今回変化データ予測範囲の範囲内の値に変更するデータ変更手段と
を備えることを特徴とする請求項１〜請求項３の何れかに記載の電子制御装置。
【請求項５】
今回の前記変化データが前記今回変化データ予測範囲の範囲外となった回数であるデータ異常回数を計数する異常計数手段と、
前記異常計数手段により計数された前記データ異常回数が予め設定された記録判定回数以上であるときは、当該電子制御装置の状態を示す第１装置情報を記録し、前記異常計数手段により計数された前記データ異常回数が前記記録判定回数未満であるときは、当該電子制御装置の状態を示し且つ前記第１装置情報よりも情報量が少ない第２装置情報を記録する異常記録手段と
を備えることを特徴とする請求項１〜請求項４の何れかに記載の電子制御装置。
【請求項６】
前記変化データは、当該電子制御装置から出力されるデータである
ことを特徴とする請求項１〜請求項５の何れかに記載の電子制御装置。
【請求項７】
前記変化データは、当該電子制御装置に入力されるデータである
ことを特徴とする請求項１〜請求項５の何れかに記載の電子制御装置。
【請求項８】
前記予測変化量算出手段は、当該電子制御装置に入力されるデータである装置入力データを前記変化データとして前記予測変化量を算出する入力用予測変化量算出手段と、当該電子制御装置から出力されるデータである装置出力データを前記変化データとして前記予測変化量を算出する出力用予測変化量算出手段とから構成され、
前記データ予測範囲算出手段は、過去の前記変化データと、前記入力用予測変化量算出手段により算出された前記予測変化量とに基づいて、前記今回変化データ予測範囲を算出する入力用データ予測範囲算出手段と、過去の前記変化データと、前記出力用予測変化量算出手段により算出された前記予測変化量とに基づいて、前記今回変化データ予測範囲を算出する出力用データ予測範囲算出手段とから構成され、
過去の前記変化データと、前記入力用予測変化量算出手段により算出された前記予測変化量とに基づいて、今回の前記装置入力データの予測値である今回入力予測値を算出する入力用予測値算出手段と、
前記入力用予測値算出手段により算出された前記今回入力予測値と、今回の前記装置入力データとの差である入力予測差に基づいて、前記出力用データ予測範囲算出手段により算出された前記今回変化データ予測範囲を補正する出力用予測範囲補正手段とを備える
ことを特徴とする請求項１〜請求項５の何れかに記載の電子制御装置。
【請求項９】
前記入力予測差が予め設定された禁止判定値以下である場合に、前記出力用予測範囲補正手段の動作を禁止する第１補正禁止手段を備える
ことを特徴とする請求項８に記載の電子制御装置。
【請求項１０】
今回の前記装置入力データが、前記入力用データ予測範囲算出手段により算出された前記今回変化データ予測範囲の範囲内であるか否かを判断する入力用データ範囲判断手段と、
今回の前記装置入力データが前記今回変化データ予測範囲の範囲内でないと前記入力用データ範囲判断手段により判断された場合に、前記出力用予測範囲補正手段の動作を禁止する第２補正禁止手段を備える
ことを特徴とする請求項８または請求項９に記載の電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御対象を制御する電子制御装置に関する。
【背景技術】
【０００２】
例えば車両の制御に利用される電子制御装置には、制御対象を制御するための各種処理を行うマイクロコンピュータ（以下、マイコンという）が搭載されている。
マイコンによる演算では、オーバーフロー及び非数発生などの演算異常が発生したり、マイコン設計時に発生頻度および発生箇所を予測することが困難な異常（例えば、ＲＡＭ化け）が発生したりする。
【０００３】
このため、例えば車両挙動に影響を与えるような重要な演算処理の出力に対して異常判断を行い、異常であると判断された場合にフェイルセーフ処理を行うことで、動作異常の発生を防止している（例えば、特許文献１を参照）。
【０００４】
そして異常判断の方法としては、従来、制御で取り得る範囲外の値が算出された場合に異常と判断するものが知られている。
【特許文献１】特開２０００−１３７５０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、上述した従来の異常判断の方法では、演算異常やＲＡＭ化けが発生しても、その値が制御で取り得る範囲内であれば、異常であると判断することができない。このため、電子制御装置が異常値を用いて制御を行ってしまうという問題があった。例えば、車両のアクセル開度算出においてＲＡＭ化けが発生した場合には、このアクセル開度の値を用いて算出される燃料噴射時期、燃料噴射量などの値も異常となる。
【０００６】
また、電子制御装置で利用される制御用ソフトウェアの複雑化に伴い、演算処理間でのデータのやり取りが多くなる。このため、検出できない異常の伝播が制御へ与える影響の増大が懸念される。
【０００７】
本発明は、こうした問題に鑑みなされたものであり、異常であるのにもかかわらず異常でないと判断される状況の発生を抑制することができる電子制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するためになされた請求項１に記載の電子制御装置では、予測変化量算出手段が、過去の２つ以上の変化データ間の変化量である過去データ変化量を少なくとも１つ用いて、今回の変化データである今回変化データと、過去の変化データとの間の変化量の予測値である予測変化量を算出する。そしてデータ予測範囲算出手段が、過去の変化データと、予測変化量算出手段により算出された予測変化量とに基づいて、今回変化データが取り得る範囲の予測値である今回変化データ予測範囲を算出する。
【０００９】
このように構成された請求項１に記載の電子制御装置によれば、過去の変化データがどのように変化したかを示す過去データ変化量を用いて、今回変化データが過去の変化データと比べてどれだけ変化するかを示す予測変化量が予測され、さらにこの予測変化量を用いて、今回変化データの取り得る範囲を示す今回変化データ予測範囲が予測される。このため、今回変化データが今回変化データ予測範囲内でない場合に変化データが異常であるという異常判断を行うことができる。
【００１０】
したがって、今回変化データがその最小値から最大値までの範囲内でない場合に異常であると判断する従来の異常判断と比較して、今回変化データが異常であるのにもかかわらず異常でないと判断される状況の発生を抑制することができる。
【００１１】
ところで、過去のデータの変化量を少なくとも２つ用いて、今回のデータを予測する場合には、複数の過去のデータの変化量の変動が単調であるときには今回のデータの予測が容易であり、今回のデータの予測範囲が狭くなるのに対して、複数の過去のデータの変化量の変動が複雑であるときには今回のデータの予測が困難であり、今回のデータの予測範囲が広くなる。
【００１２】
そこで、請求項１に記載の電子制御装置では、請求項２に記載のように、予測変化量算出手段は、過去データ変化量を少なくとも２つ用いて予測変化量を算出し、さらに予測変化量算出手段は、予測変化量算出手段による予測変化量の算出に用いられた複数の過去データ変化量の状態が、今回変化データ予測範囲を広げるために予め設定された予測範囲拡張条件を満たすように変化したか否かを判断する状態変化判断手段を備え、予測範囲拡張条件を満たしていると状態変化判断手段により判断された場合には、予測範囲拡張条件を満たしていないと状態変化判断手段により判断された場合よりも予測変化量が大きくなるように、予測変化量を算出するようにしてもよい。
【００１３】
ここで、上記の「複数の過去データ変化量の状態」とは、例えば、２つの過去データ変化量の差や、過去データ変化量の正負符号である。
このように構成された請求項２に記載の電子制御装置によれば、予測範囲拡張条件を満たしていると判断された場合には、予測範囲拡張条件を満たしていないと判断された場合よりも予測変化量が大きくなるように、予測変化量を算出される。つまり、予測範囲拡張条件を満たしている場合は、予測範囲拡張条件を満たしていない場合よりも、今回変化データ予測範囲が広くなるように算出される。
【００１４】
したがって、予測範囲拡張条件を適切に設定することによって、複数の過去のデータの変化量の変動が単調である場合には、今回変化データ予測範囲を狭くし、複数の過去のデータの変化量の変動が複雑である場合には、今回変化データ予測範囲を広くすることができる。このため、複数の過去のデータの変化量の変動が複雑である場合において今回変化データ予測範囲が狭くなってしまうことを抑制し、これにより、今回変化データが正常であるにもかかわらず異常であると判断されてしまうといった状況の発生を抑制することができる。
【００１５】
また請求項２に記載の電子制御装置では、請求項３に記載のように、予測範囲拡張条件は、予測変化量算出手段による予測変化量の算出に用いられた過去データ変化量のうち予め選択された２つの過去データ変化量の正負符号が異なることであるようにしてもよい。
【００１６】
このように構成された請求項３に記載の電子制御装置によれば、過去データ変化量の正負符号が異なるか否かという簡便な方法で予測範囲拡張条件の成立を判断できる。
また請求項１〜請求項３の何れかに記載の電子制御装置では、請求項４に記載のように、データ範囲判断手段が、今回の変化データがデータ予測範囲算出手段により算出された今回変化データ予測範囲の範囲内であるか否かを判断し、データ変更手段が、今回の変化データが今回変化データ予測範囲の範囲内でないとデータ範囲判断手段により判断された場合に、今回の変化データを今回変化データ予測範囲の範囲内の値に変更するようにするとよい。
【００１７】
このように構成された請求項４に記載の電子制御装置によれば、異常な値の変化データが今回変化データ予測範囲内の値に変更されるので、異常な変化データを用いて電子制御装置が制御対象を制御してしまうという状況の発生を抑制することができる。
【００１８】
また請求項１〜請求項３の何れかに記載の電子制御装置では、請求項５に記載のように、異常計数手段が、今回の変化データが今回変化データ予測範囲の範囲外となった回数であるデータ異常回数を計数し、さらに異常記録手段が、異常計数手段により計数されたデータ異常回数が予め設定された記録判定回数以上であるときは、当該電子制御装置の状態を示す第１装置情報を記録し、異常計数手段により計数されたデータ異常回数が記録判定回数未満であるときは、当該電子制御装置の状態を示し且つ第１装置情報よりも情報量が少ない第２装置情報を記録するようにしてもよい。
【００１９】
このように構成された請求項５に記載の電子制御装置によれば、データ異常回数が記録判定回数未満のときには、第１装置情報よりも情報量が少ない第２装置情報が記録され、データ異常回数が記録判定回数以上になったときに第１装置情報が記録されるので、異常が検出されると常に第１装置情報を記録する場合と比較して、記録容量を節約することができる。また、データ異常回数が記録判定回数以上になった場合には第１装置情報が記録されるので、発生回数が多い異常の発生原因を解析するために必要な情報が記録されていないという状況の発生を抑制することができる。
【００２０】
また請求項１〜請求項５の何れかに記載の電子制御装置では、請求項６に記載のように、変化データは、当該電子制御装置から出力されるデータであるようにしてもよいし、請求項７に記載のように、変化データは、当該電子制御装置に入力されるデータであるようにしてもよい。
【００２１】
また請求項８に記載の電子制御装置は、請求項１〜請求項５の何れかに記載の電子制御装置において、予測変化量算出手段が、入力用予測変化量算出手段と出力用予測変化量算出手段とから構成され、データ予測範囲算出手段が、入力用データ予測範囲算出手段と出力用データ予測範囲算出手段とから構成される。そして入力用予測変化量算出手段が、当該電子制御装置に入力されるデータである装置入力データを変化データとして予測変化量を算出するとともに、出力用予測変化量算出手段が、当該電子制御装置から出力されるデータである装置出力データを変化データとして予測変化量を算出する。また入力用データ予測範囲算出手段が、過去の変化データと、入力用予測変化量算出手段により算出された予測変化量とに基づいて、今回変化データ予測範囲を算出するとともに、出力用データ予測範囲算出手段が、過去の変化データと、出力用予測変化量算出手段により算出された予測変化量とに基づいて、今回変化データ予測範囲を算出する。
【００２２】
さらに入力用予測値算出手段が、過去の変化データと、入力用予測変化量算出手段により算出された予測変化量とに基づいて、今回の装置入力データの予測値である今回入力予測値を算出し、出力用予測範囲補正手段が、入力用予測値算出手段により算出された今回入力予測値と、今回の装置入力データとの差である入力予測差に基づいて、出力用データ予測範囲算出手段により算出された今回変化データ予測範囲を補正する。
【００２３】
このように構成された請求項８に記載の電子制御装置によれば、過去の変化データだけではなく、今回の実際の装置入力データを用いて、当該電子制御装置から出力される変化データの今回変化データ予測範囲（以下、出力用今回変化データ予測範囲ともいう）が補正されるので、この出力用今回変化データ予測範囲の予測精度を向上させることができる。
【００２４】
また請求項８に記載の電子制御装置では、請求項９に記載のように、第１補正禁止手段が、入力予測差が予め設定された禁止判定値以下である場合に、出力用予測範囲補正手段の動作を禁止するようにしてもよい。
【００２５】
このように構成された請求項９に記載の電子制御装置によれば、入力予測差が小さいときには不要とすることができる出力用予測範囲補正手段による補正を省略して、電子制御装置の処理負荷を低減することができる。
【００２６】
また請求項８または請求項９に記載の電子制御装置では、請求項１０に記載のように、入力用データ範囲判断手段が、今回の装置入力データが入力用データ予測範囲算出手段により算出された今回変化データ予測範囲の範囲内であるか否かを判断し、第２補正禁止手段が、今回の装置入力データが今回変化データ予測範囲の範囲内でないと入力用データ範囲判断手段により判断された場合に、出力用予測範囲補正手段の動作を禁止するようにしてもよい。
【００２７】
このように構成された請求項８に記載の電子制御装置によれば、異常な装置入力データに基づいて出力用今回変化データ予測範囲が補正されてしまうという状況の発生を抑制することができる。
【発明を実施するための最良の形態】
【００２８】
（第１実施形態）
以下に本発明の第１実施形態を図面とともに説明する。
図１は本発明が適用された電子制御装置１の構成を示すブロック図である。
【００２９】
電子制御装置１は、車両に搭載され、図１に示すように、電子制御装置１の外部から信号を入力して各種の演算処理を行い、装置外部に設置された各種装置（不図示）を制御するための信号を出力するマイクロコンピュータ（以下、マイコンという）２と、電力が供給されない状態でも記憶されたデータを保持可能なＥＥＰＲＯＭ３とを備える。
【００３０】
これらのうちマイコン２は、所定の処理プログラムに基づいて処理を実行するＣＰＵ１１と、種々の処理プログラムが格納されたＲＯＭ１２と、種々のデータを格納するＲＡＭ１３と、信号を入力または出力するための入出力部１４と、ＣＰＵ１１，ＲＯＭ１２，ＲＡＭ１３及び入出力部１４をデータ入出力可能に接続するバス１５とから構成される。
【００３１】
なおＲＡＭ１３には、マイコン２により算出された出力値が異常であることを示す出力異常フラグＦ１と、出力値の異常が検出された回数を計数するための異常検出カウンタＣＮＴとが設けられている。
【００３２】
またＥＥＰＲＯＭ３は、入出力部１４に接続される。これによりＥＥＰＲＯＭ３は、マイコン２との間でデータ入出力可能となる。
このように構成された電子制御装置１において、ＣＰＵ１１は、マイコン２により算出された出力値が異常であるか否かを判定する出力判定処理と、出力値が異常であるときの状況を示す情報を記憶するための異常情報記憶処理を実行する。
【００３３】
ここで、電子制御装置１のＣＰＵ１１が実行する出力判定処理の手順を、図２を用いて説明する。図２は出力判定処理を示すフローチャートである。この出力判定処理は、マイコン２が起動（電源オン）している間に、予め設定された処理要求信号（例えば、エンジンのクランク軸の回転に応じて発生するクランク信号や、一定時間間隔ごとに発生するタイマ信号）が入力される毎に実行される処理である。
【００３４】
この出力判定処理が実行されると、ＣＰＵ１１は、まずＳ１０にて、入出力部１４を介して入力した入力信号が示す入力値を用いて、予め設定された所定の演算処理を行うことにより出力値Ｒ１を算出する。そしてＳ２０にて、Ｓ１０で算出された出力値Ｒ１をＲＡＭ１３に記憶する出力値記憶処理を行う。
【００３５】
この出力値記憶処理は、Ｓ１０で算出された直近の所定記憶数（本実施形態では４）の出力値Ｒ１を記憶する。すなわち、最新の出力値Ｒ１がＲＡＭ１３に記憶されるに伴い、最古の出力値Ｒ１がＲＡＭ１３から消去される。なお以下、ＲＡＭ１３に記憶されている４個の出力値Ｒ１を、新しい順にＲ１（０），Ｒ１（１），Ｒ１（２），Ｒ１（３）と表記する。
【００３６】
次にＳ３０にて、出力変化量ΔＲ１（１），ΔＲ１（２）を算出する。出力変化量ΔＲ１（１），ΔＲ１（２）はそれぞれ式（１），（２）により算出される（図３（ａ），（ｂ）を参照）。
【００３７】
ΔＲ１（１）  ＝  Ｒ１（１）−Ｒ１（２）        ・・・（１）
ΔＲ１（２）  ＝  Ｒ１（２）−Ｒ１（３）        ・・・（２）
その後Ｓ４０にて、出力変化量ΔＲ１（１）の状態と出力変化量ΔＲ１（２）の状態とに相違があるか否かを判断する。すなわち、出力変化量の状態が変化したか否かを判断する。ここで、出力変化量の状態とは、出力変化量ΔＲ１（１）および出力変化量ΔＲ１（２）の符号が正（＋）であるか負（−）であることをいう。
【００３８】
例えば、出力変化量ΔＲ１（２）の符号が「正」であり（図３（ａ）の矢印Ｙ１を参照）、且つ出力変化量ΔＲ１（１）の符号が「正」である（図３（ａ）の矢印Ｙ２を参照）場合には、出力変化量の状態が変化していない。一方、出力変化量ΔＲ１（２）の符号が「正」であり（図３（ｂ）の矢印Ｙ３を参照）、且つ出力変化量ΔＲ１（１）の符号が「負」である（図３（ｂ）の矢印Ｙ４を参照）場合には、出力変化量の状態が変化している。
【００３９】
そしてＳ４０にて、出力変化量の状態が変化していないと判断した場合には（Ｓ４０：ＮＯ）、Ｓ５０にて、出力予測変化量Ｃ１を式（３）により算出し、Ｓ７０に移行する。以下、式（３）で出力予測変化量Ｃ１を算出する方法を「予測変化量算出方法１」という。
【００４０】
Ｃ１  ＝  ΔＲ１（１）／ΔＲ１（２）        ・・・（３）
一方、出力変化量の状態が変化していると判断した場合には（Ｓ４０：ＹＥＳ）、Ｓ６０にて、出力予測変化量Ｃ１を式（４）により算出し、Ｓ７０に移行する。以下、式（４）で出力予測変化量Ｃ１を算出する方法を「予測変化量算出方法２」という。
【００４１】
Ｃ１  ＝  Ｃ０＋｛ΔＲ１（１）／ΔＲ１（２）｝        ・・・（４）
ここで、Ｃ０は補正係数である。
そしてＳ７０に移行すると、式（５）により算出される第１出力予測値γ１を最小値、式（６）により算出される第２出力予測値γ２を最大値とする出力予測範囲ＲＧ１を決定する（図３（ａ）を参照）。
【００４２】
γ１  ＝  ｛Ｒ１（１）×Ｃ１｝×Ｃ１ｍｉｎ        ・・・（５）
γ２  ＝  ｛Ｒ１（１）×Ｃ１｝×Ｃ１ｍａｘ        ・・・（６）
ここで、Ｃ１ｍｉｎはγ１を算出するための係数、Ｃ１ｍａｘはγ２を算出するための係数である。
【００４３】
その後Ｓ８０にて、Ｓ１０で算出された出力値Ｒ１（０）が、Ｓ７０で決定された出力予測範囲ＲＧ１内であるか否かを判断する。ここで、出力値Ｒ１（０）が出力予測範囲ＲＧ１内である場合には（Ｓ８０：ＹＥＳ）、Ｓ９０にて、出力異常フラグＦ１をクリアして、出力判定処理を終了する。一方、出力値Ｒ１（０）が出力予測範囲ＲＧ１外である場合には（Ｓ８０：ＮＯ）、Ｓ１００にて、出力異常フラグＦ１をセットして、さらにＳ１１０にて、出力値Ｒ１（０）を出力予測範囲ＲＧ１内の値に変更する。例えば、出力値Ｒ１（０）が、出力予測範囲ＲＧ１の最小値である第１出力予測値γ１より小さい場合には、出力値Ｒ１（０）を第１出力予測値γ１に変更し、出力値Ｒ１（０）が、出力予測範囲ＲＧ１の最大値である第２出力予測値γ２より大きい場合には、出力値Ｒ１（０）を第２出力予測値γ２に変更する。そしてＳ１１０の処理が終了すると、出力判定処理を終了する。
【００４４】
次に、電子制御装置１のＣＰＵ１１が実行する異常情報記憶処理の手順を、図４を用いて説明する。図４は異常情報記憶処理を示すフローチャートである。この異常情報記憶処理は、マイコン２が起動（電源オン）している間に、予め設定された処理要求信号が入力される毎に実行される処理である。
【００４５】
この異常情報記憶処理が実行されると、ＣＰＵ１１は、まずＳ２１０にて、出力異常フラグＦ１がクリアからセットに変化したか否かを判断する。ここで、出力異常フラグＦ１がクリアからセットに変化していないと判断した場合には（Ｓ２１０：ＮＯ）、異常情報記憶処理を終了する。一方、出力異常フラグＦ１がクリアからセットに変化したと判断した場合には（Ｓ２１０：ＹＥＳ）、Ｓ２２０にて、異常検出カウンタＣＮＴをインクリメントするとともに、Ｓ２３０にて、異常情報をＲＡＭ１３に記憶する。ここで異常情報は、入力信号が示す入力値と、出力値Ｒ１と、出力予測変化量Ｃ１を算出した方法を示す情報（すなわち、「予測変化量算出方法１」または「予測変化量算出方法２」であることを示す情報。以下、異常種別情報という）と、出力値Ｒ１がＲＡＭ１３に記憶されたアドレスを示す情報とから構成される。
【００４６】
その後Ｓ２４０にて、異常検出カウンタＣＮＴの値（以下、異常検出カウンタ値という）が予め設定された記憶判定値（本実施形態では４）以上であるか否かを判断する。ここで、異常検出カウンタ値が記憶判定値以上である場合には（Ｓ２４０：ＹＥＳ）、Ｓ２５０にて、異常情報をＥＥＰＲＯＭ３に記憶し、異常情報記憶処理を終了する。一方、異常検出カウンタ値が記憶判定値未満である場合には（Ｓ２４０：ＮＯ）、Ｓ２６０にて、簡易情報をＥＥＰＲＯＭ３に記憶し、異常情報記憶処理を終了する。ここで簡易情報は、異常種別情報と、出力値Ｒ１が記憶されたアドレスを示す情報とから構成される。
【００４７】
このように構成された電子制御装置１では、出力変化量ΔＲ１（１），ΔＲ１（２）を用いて、出力予測変化量Ｃ１を算出する（Ｓ４０〜Ｓ６０）。そして、過去の出力値Ｒ１（１）と、出力予測変化量Ｃ１とに基づいて、出力予測範囲ＲＧ１を算出する（Ｓ７０）。
【００４８】
このように構成された電子制御装置１によれば、過去の出力値Ｒ１（１），Ｒ１（２），Ｒ１（３）がどのように変化したかを示す出力変化量ΔＲ１（１），ΔＲ１（２）を用いて、今回の出力値Ｒ１（０）が過去の出力値Ｒ１（１）と比べてどれだけ変化するかを示す出力予測変化量Ｃ１が予測され、さらにこの出力予測変化量Ｃ１を用いて、今回の出力値Ｒ１（０）の取り得る範囲を示す出力予測範囲ＲＧ１が予測される。このため、今回の出力値Ｒ１（０）が出力予測範囲ＲＧ１の範囲内でない場合に今回の出力値Ｒ１（０）が異常であるという異常判断を行うことができる。
【００４９】
したがって、今回の出力値Ｒ１（０）がその最小値から最大値までの範囲内でない場合に異常であると判断する従来の異常判断と比較して、今回の出力値Ｒ１（０）が異常であるのにもかかわらず異常でないと判断される状況の発生を抑制することができる。
【００５０】
また、出力変化量ΔＲ１（１）および出力変化量ΔＲ１（２）の正負符号が同じである場合には（Ｓ４０：ＹＥＳ）、「予測変化量算出方法１」で出力予測変化量Ｃ１を算出し（Ｓ５０）、出力変化量ΔＲ１（１）および出力変化量ΔＲ１（２）の正負符号が異なる場合には（Ｓ４０：ＮＯ）、「予測変化量算出方法２」で出力予測変化量Ｃ１を算出する（Ｓ６０）。
【００５１】
したがって、出力変化量ΔＲ１（１），ΔＲ１（２）の変動が単調である場合には、出力予測範囲ＲＧ１を狭くし、出力変化量ΔＲ１（１），ΔＲ１（２）の変動が複雑である場合には、出力予測範囲ＲＧ１を広くすることができる。このため、出力変化量ΔＲ１（１），ΔＲ１（２）の変動が複雑である場合において出力予測範囲ＲＧ１が狭くなってしまうことを抑制し、これにより、今回の出力値Ｒ１（０）が正常であるにもかかわらず異常であると判断されるという状況の発生を抑制することができる。
【００５２】
また、今回の出力値Ｒ１（０）が出力予測範囲ＲＧ１の範囲内であるか否かを判断し（Ｓ８０）、今回の出力値Ｒ１（０）が出力予測範囲ＲＧ１の範囲内でないと判断された場合に（Ｓ８０：ＮＯ）、出力値Ｒ１（０）を出力予測範囲ＲＧ１内の値に変更する（Ｓ１１０）。
【００５３】
このため、異常な値の出力値Ｒ１（０）が出力予測範囲ＲＧ１内の値に変更されるので、異常な出力値Ｒ１（０）を用いて電子制御装置１が制御を行ってしまうという状況の発生を抑制することができる。
【００５４】
また、出力異常フラグＦ１がクリアからセットに変化した回数（異常検出カウンタ値）、すなわち、今回の出力値Ｒ１（０）が出力予測範囲ＲＧ１の範囲内でないと判断された回数を計数し（Ｓ２２０）、異常検出カウンタ値が記憶判定値以上であるときは（Ｓ２４０：ＹＥＳ）、異常情報をＥＥＰＲＯＭ３に記憶し（Ｓ２５０）、異常検出カウンタ値が記憶判定値未満であるときは（Ｓ２４０：ＮＯ）、簡易情報をＥＥＰＲＯＭ３に記憶する（Ｓ２６０）。
【００５５】
したがって、簡易情報は異常情報より情報量が少ないので、出力値Ｒ１（０）の異常が検出されると常に異常情報を記録する場合と比較して、同一の記憶容量ではＲＡＭ１３よりも高価なＥＥＰＲＯＭ３の記憶容量を節約することができる。また、異常検出カウンタ値が記憶判定値以上になった場合には、簡易情報よりも情報量が多い異常情報がＥＥＰＲＯＭ３に記録されるので、発生回数が多い異常の発生原因を解析するために必要な情報がＥＥＰＲＯＭ３に記録されていないという状況の発生を抑制することができる。
【００５６】
以上説明した実施形態において、Ｓ３０〜Ｓ６０の処理は本発明における予測変化量算出手段、Ｓ７０の処理は本発明におけるデータ予測範囲算出手段、Ｓ４０の処理は本発明における状態変化判断手段、Ｓ８０の処理は本発明におけるデータ範囲判断手段、Ｓ１１０の処理は本発明におけるデータ変更手段、Ｓ２２０の処理は本発明における異常計数手段、Ｓ２４０〜Ｓ２６０の処理は本発明における異常記録手段である。
【００５７】
また、出力値Ｒ１（０），Ｒ１（１），Ｒ１（２），Ｒ１（３）は本発明における変化データ、出力変化量ΔＲ１（１），ΔＲ１（２）は本発明における過去データ変化量、出力値Ｒ１（０）は本発明における今回変化データ、出力予測変化量Ｃ１は本発明における予測変化量、出力予測範囲ＲＧ１は本発明における今回変化データ予測範囲、Ｓ４０の判断条件は本発明における予測範囲拡張条件、異常検出カウンタ値は本発明におけるデータ異常回数、記憶判定値は本発明における記録判定回数、異常情報は本発明における第１装置情報、簡易情報は本発明における第２装置情報である。
【００５８】
（第２実施形態）
以下に本発明の第２実施形態を図面とともに説明する。尚、第２実施形態では、第１実施形態と異なる部分のみを説明する。
【００５９】
第２実施形態の電子制御装置１は、マイコン２の構成が変更されている点と、出力判定処理の代わりに入出力判定処理が実行される点以外は第１実施形態と同じである。
図５は第２実施形態の電子制御装置１の構成を示すブロック図である。
【００６０】
第２実施形態のマイコン２は、図５に示すように、入力信号が示す入力値が異常であることを示す入力異常フラグＦ２がＲＡＭ１３に設けられている点以外は第１実施形態と同じである。
【００６１】
次に、電子制御装置１のＣＰＵ１１が実行する入出力判定処理の手順を、図６及び図７を用いて説明する。図６は入出力判定処理の前半部分を示すフローチャート、図７は入出力判定処理の後半部分を示すフローチャートである。この入出力判定処理は、マイコン２が起動（電源オン）している間に、予め設定された処理要求信号が入力される毎に実行される処理である。
【００６２】
この入出力判定処理が実行されると、ＣＰＵ１１は、まずＳ３１０にて、入出力部１４を介して入力した入力信号が示す入力値Ｒ２を取得する。そしてＳ３２０にて、Ｓ３１０で取得された入力値Ｒ２をＲＡＭ１３に記憶する入力値記憶処理を行う。
【００６３】
この入力値記憶処理は、Ｓ３１０で取得された直近の所定記憶数（本実施形態では４）の入力値Ｒ２を記憶する。すなわち、最新の入力値Ｒ２がＲＡＭ１３に記憶されるに伴い、最古の入力値Ｒ２がＲＡＭ１３から消去される。なお以下、ＲＡＭ１３に記憶されている４個の入力値Ｒ２を、新しい順にＲ２（０），Ｒ２（１），Ｒ２（２），Ｒ２（３）と表記する。
【００６４】
次にＳ３３０にて、入力変化量ΔＲ２（１），ΔＲ２（２）を算出する。入力変化量ΔＲ２（１），ΔＲ２（２）はそれぞれ式（７），（８）により算出される。
ΔＲ２（１）  ＝  Ｒ２（１）−Ｒ２（２）        ・・・（７）
ΔＲ２（２）  ＝  Ｒ２（２）−Ｒ２（３）        ・・・（８）
その後Ｓ３４０にて、入力変化量ΔＲ２（１）の状態と入力変化量ΔＲ２（２）の状態とに相違があるか否かを判断する。すなわち、入力変化量の状態が変化したか否かを判断する。ここで、入力変化量の状態とは、入力変化量ΔＲ２（１）および入力変化量ΔＲ２（２）の符号が正（＋）であるか負（−）であることをいう。
【００６５】
そしてＳ３４０にて、入力変化量の状態が変化していないと判断した場合には（Ｓ３４０：ＮＯ）、Ｓ３５０にて、入力予測変化量Ｃ３を式（９）により算出し、Ｓ３７０に移行する。以下、式（９）で入力予測変化量Ｃ３を算出する方法を「予測変化量算出方法３」という。
【００６６】
Ｃ３  ＝  ΔＲ２（１）／ΔＲ２（２）        ・・・（９）
一方、入力変化量の状態が変化していると判断した場合には（Ｓ３４０：ＹＥＳ）、Ｓ３６０にて、入力予測変化量Ｃ３を式（１０）により算出し、Ｓ３７０に移行する。以下、式（１０）で入力予測変化量Ｃ３を算出する方法を「予測変化量算出方法４」という。
【００６７】
Ｃ３  ＝  Ｃ２＋｛ΔＲ１（１）／ΔＲ１（２）｝        ・・・（１０）
ここで、Ｃ２は補正係数である。
そしてＳ３７０に移行すると、式（１１）により算出される第１入力予測値γ３を最小値、式（１２）により算出される第２入力予測値γ４を最大値とする入力予測範囲ＲＧ２を決定する。
【００６８】
γ３  ＝  ｛Ｒ２（１）×Ｃ３｝×Ｃ３ｍｉｎ        ・・・（１１）
γ４  ＝  ｛Ｒ２（１）×Ｃ３｝×Ｃ３ｍａｘ        ・・・（１２）
ここで、Ｃ３ｍｉｎはγ３を算出するための係数、Ｃ３ｍａｘはγ４を算出するための係数である。
【００６９】
その後Ｓ３８０にて、Ｓ３１０で取得された入力値Ｒ２（０）が、Ｓ３７０で決定された入力予測範囲ＲＧ２内であるか否かを判断する。ここで、入力値Ｒ２（０）が入力予測範囲ＲＧ２内である場合には（Ｓ３８０：ＹＥＳ）、Ｓ３９０にて、入力異常フラグＦ２をクリアして、Ｓ４２０へ移行する。一方、入力値Ｒ２（０）が入力予測範囲ＲＧ２外である場合には（Ｓ３８０：ＮＯ）、Ｓ４００にて、入力異常フラグＦ２をセットして、さらにＳ４１０にて、入力値Ｒ２を入力予測範囲ＲＧ２内の値に変更する。例えば、入力値Ｒ２が、入力予測範囲ＲＧ２の最小値である第１入力予測値γ３より小さい場合には、入力値Ｒ２を第１入力予測値γ３に変更し、入力値Ｒ２が、入力予測範囲ＲＧ２の最大値である第２入力予測値γ４より大きい場合には、入力値Ｒ２を第２入力予測値γ４に変更する。そしてＳ４１０の処理が終了すると、Ｓ４２０へ移行する。
【００７０】
そしてＳ４２０へ移行すると、Ｓ４２０〜Ｓ４７０の処理を行い、Ｓ４８０へ移行する。なお、Ｓ４２０〜Ｓ４７０の処理は、第１実施形態のＳ１０〜Ｓ６０の処理と同一であるため、説明を省略する。
【００７１】
そしてＳ４８０へ移行すると、入力異常フラグＦ２がセットされているか否かを判断する。ここで、入力異常フラグＦ２がセットされている場合には（Ｓ４８０：ＹＥＳ）、Ｓ５２０へ移行する。一方、入力異常フラグＦ２がセットされていない場合には（Ｓ４８０：ＮＯ）、Ｓ４９０にて、入力予測値Ｐを式（１３）により算出する。
【００７２】
Ｐ  ＝  ｛Ｒ２（１）×Ｃ３｝        ・・・（１３）
その後Ｓ５００にて、入力値Ｒ２と入力予測値Ｐとの差Ｄ（以下、入力値差Ｄという）が予め設定された補正判定値（本実施形態では、入力値Ｒ２の５％に相当する値）以上であるか否かを判断する。
【００７３】
ここで、入力値差Ｄが補正判定値未満である場合には（Ｓ５００：ＮＯ）、Ｓ５２０へ移行する。一方、入力値差Ｄが補正判定値以上である場合には（Ｓ５００：ＹＥＳ）、Ｓ５１０にて、出力予測変化量Ｃ１を補正する。具体的には、出力予測変化量Ｃ１を式（１４）により算出する
Ｃ１  ＝  ｛ΔＲ１（１）／ΔＲ１（２）｝×｛Ｄ／Ｐ｝      ・・・（１４）
そしてＳ５１０の処理が終了すると、Ｓ５２０へ移行する。
【００７４】
そしてＳ５２０へ移行すると、Ｓ５２０〜Ｓ５６０の処理を行い、入出力判定処理を終了する。なお、Ｓ５２０〜Ｓ５６０の処理は、第１実施形態のＳ７０〜Ｓ１１０の処理と同一であるため、説明を省略する。
【００７５】
このように構成された電子制御装置１では、入力変化量ΔＲ２（１），ΔＲ２（２）を用いて、入力予測変化量Ｃ３を算出する（Ｓ３４０〜Ｓ３６０）。そして、過去の入力値Ｒ２（１）と、入力予測変化量Ｃ３とに基づいて、入力予測範囲ＲＧ２を算出する（Ｓ３７０）。
【００７６】
また、出力変化量ΔＲ１（１），ΔＲ１（２）を用いて、出力予測変化量Ｃ１を算出する（Ｓ４５０〜Ｓ４７０）。そして、過去の出力値Ｒ１（１）と、出力予測変化量Ｃ１とに基づいて、出力予測範囲ＲＧ１を算出する（Ｓ５２０）。
【００７７】
さらに、過去の入力値Ｒ２（１）と入力予測変化量Ｃ３とに基づいて入力予測値Ｐを算出し（Ｓ４９０）、今回の入力値Ｒ２（０）と入力予測値Ｐとの差Ｄ（入力値差Ｄ）に基づいて、出力予測範囲ＲＧ１を補正する（Ｓ５１０）。
【００７８】
このように構成された電子制御装置１によれば、過去の入力値Ｒ２（１），Ｒ２（２），Ｒ２（３）がどのように変化したかを示す入力変化量ΔＲ２（１），ΔＲ２（２）を用いて、今回の入力値Ｒ２（０）が過去の入力値Ｒ２（１）と比べてどれだけ変化するかを示す入力予測変化量Ｃ３が予測され、さらにこの入力予測変化量Ｃ３を用いて、今回の入力値Ｒ２（０）の取り得る範囲を示す入力予測範囲ＲＧ２が予測される。このため、今回の入力値Ｒ２（０）が入力予測範囲ＲＧ２の範囲内でない場合に今回の入力値Ｒ２（０）が異常であるという異常判断を行うことができる。
【００７９】
したがって、今回の入力値Ｒ２（０）がその最小値から最大値までの範囲内でない場合に異常であると判断する従来の異常判断と比較して、今回の入力値Ｒ２（０）が異常であるのにもかかわらず異常でないと判断される状況の発生を抑制することができる。
【００８０】
ところで、電子制御装置１へ信号を出力する機器（以下、入力側機器という）のなかには、演算処理により演算値を算出するとその演算値をＲＡＭに記憶し、その後に、ＲＡＭに記憶された演算値を示す信号を出力するものがある。そして一般に、演算値を算出した時点でこの演算値が異常であるか否かを判断する。すなわち、演算値をＲＡＭに記憶した後は、ＲＡＭに記憶されている演算値が異常であるか否かを判断しない。このため、演算値をＲＡＭに記憶した後にＲＡＭ化けが発生して演算値が異常な値になると、異常な演算値を示す信号を出力することになる。このような問題に対する対策としては、演算値をＲＡＭに記憶した後にも異常判断を常時行う方法や、ＲＡＭに記憶した演算値のミラーデータを設ける方法が考えられる。しかし、これらの方法を実行すると、入力側機器の処理負荷やＲＡＭ容量の増大を招くという問題がある。
【００８１】
このような問題に対し、電子制御装置１によれば、電子制御装置１が行う処理の重要度に応じて、入力側機器から入力される入力値の異常判定を電子制御装置１側で行うことにより、入力側機器の処理負荷やＲＡＭ容量の増大を抑制することができる。なお、上記の重要度は、電子制御装置１を含むシステム上で致命的な状態（例えば、オーバーラン）になるものほど上位とする。
【００８２】
また、過去の出力値Ｒ１（１），Ｒ１（２），Ｒ１（３）だけではなく、今回の実際の入力値Ｒ２（０）に基づいて、出力予測範囲ＲＧ１が補正されるので、この出力予測範囲ＲＧ１の予測精度を向上させることができる。
【００８３】
また、入力値差Ｄが補正判定値未満である場合には（Ｓ５００：ＮＯ）、出力予測変化量Ｃ１の補正が行われない。このため、入力値差Ｄが小さいときには不要とすることができる出力予測変化量Ｃ１の補正を省略して、電子制御装置１の処理負荷を低減することができる。
【００８４】
また、今回の入力値Ｒ２（０）が入力予測範囲ＲＧ２内であるか否かを判断し（Ｓ３８０）、今回の入力値Ｒ２（０）が入力予測範囲ＲＧ２内でないと判断された場合に（Ｓ３８０：ＮＯ、Ｓ４８０：ＹＥＳ）、出力予測変化量Ｃ１の補正が行われない。このため、異常な入力値Ｒ２（０）に基づいて出力予測範囲ＲＧ１が補正されてしまうという状況の発生を抑制することができる。
【００８５】
以上説明した実施形態において、Ｓ３４０〜Ｓ３６０の処理は本発明における入力用予測変化量算出手段、Ｓ４５０〜Ｓ４７０の処理は本発明における出力用予測変化量算出手段、Ｓ３７０の処理は本発明における入力用データ予測範囲算出手段、Ｓ５２０の処理は本発明における出力用データ予測範囲算出手段、Ｓ４９０の処理は本発明における入力用予測値算出手段、Ｓ５１０の処理は本発明における出力用予測範囲補正手段、Ｓ５００の処理は本発明における第１補正禁止手段、Ｓ３８０の処理は本発明における入力用データ範囲判断手段、Ｓ４８０の処理は本発明における第２補正禁止手段である。
【００８６】
また、入力値Ｒ２（０），Ｒ２（１），Ｒ２（２），Ｒ２（３）は本発明における装置入力データ、出力値Ｒ１（０），Ｒ１（１），Ｒ１（２），Ｒ１（３）は本発明における装置出力データ、入力変化量ΔＲ２（１），ΔＲ２（２）及び出力変化量ΔＲ１（１），ΔＲ１（２）は本発明における予測変化量、入力予測範囲ＲＧ２及び出力予測範囲ＲＧ１は本発明における今回変化データ予測範囲、入力予測値Ｐは本発明における今回入力予測値、入力値差Ｄは本発明における入力予測差、補正判定値は本発明における禁止判定値である。
【００８７】
以上、本発明の一実施例について説明したが、本発明は上記実施例に限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採ることができる。
例えば上記第１実施形態においては、出力値の予測範囲を算出するものを示したが、入力値の予測範囲を算出するものであってもよい。
【００８８】
また上記実施形態においては、２つの変化量を用いて予測範囲を算出するものを示したが、これに限られるものではなく、１つ或いは３つ以上の変化量を用いて予測範囲を算出するようにしてもよい。
【００８９】
また上記実施形態においては、入力変化量または出力変化量の状態が変化したか否かを、入力変化量または出力変化量の正負符号に基づいて判断するものを示したが、これに限られるものではなく、例えば、入力変化量または出力変化量が急変（急増、急減）した場合に、入力変化量または出力変化量の状態が変化したと判断するようにしてもよい。
【００９０】
また上記第１実施形態においては、出力値Ｒ１（０）を算出した後に出力予測範囲ＲＧ１を算出するものを示したが、出力値Ｒ１（１）を算出した後に出力予測範囲ＲＧ１を算出するようにしてもよい。
【図面の簡単な説明】
【００９１】
【図１】第１実施形態の電子制御装置１の構成を示すブロック図である。
【図２】出力判定処理を示すフローチャートである。
【図３】出力予測変化量Ｃ１の算出方法を説明するための図である。
【図４】異常情報記憶処理を示すフローチャートである。
【図５】第２実施形態の電子制御装置１の構成を示すブロック図である。
【図６】入出力判定処理の前半部分を示すフローチャートである。
【図７】入出力判定処理の後半部分を示すフローチャートである。
【符号の説明】
【００９２】
１…電子制御装置、２…マイコン、３…ＥＥＰＲＯＭ、１１…ＣＰＵ、１２…ＲＯＭ、１３…ＲＡＭ、１４…入出力部、１５…バス、ＣＮＴ…異常検出カウンタ、Ｆ１…出力異常フラグ、Ｆ２…入力異常フラグ
【図１】
2010018150.tif 000003
【図２】
2010018150.tif 000004
【図４】
2010018150.tif 000005
【図５】
2010018150.tif 000006
【図６】
2010018150.tif 000007
【図７】
2010018150.tif 000008
【図３】
2010018150.tif 000009