(57)【要約】【課題】  本発明はエンジンプログラムのロジック検査装置に関し、過渡状態でのロジックの動作を容易に把握できるようにする。【解決手段】  出力信号発生手段１４により出力信号を仮想的に発生させて演算手段１２に入力するとともに、エンジンプログラムで定義され入力信号の演算に用いられる状態量をエンジンプログラムに従った演算によらず状態量設定手段１６により仮想的に設定する。演算手段１２ではエンジンプログラムに従って入力信号を演算し、出力信号の入力値と状態量の設定値をともに変化させたときの入力信号の演算値の変化を、出力信号、状態量、及び入力信号のそれぞれを軸とする多次元グラフによって表示手段１８に表示する。【選択図】      図１
2006017465.tif 000002
【特許請求の範囲】
【請求項１】
エンジンから出力される出力信号に基づいて前記エンジンに与えるべき入力信号を演算するエンジン制御装置としてコンピュータを機能させるエンジンプログラムのロジックを検査するための装置であって、
前記エンジンプログラムに従って前記入力信号を演算する演算手段と、
前記出力信号を仮想的に発生させ、前記演算手段に入力する出力信号発生手段と、
前記エンジンプログラムで定義され前記入力信号の演算に用いられる状態量を前記エンジンプログラムに従った演算によらず仮想的に設定する状態量設定手段と、
前記出力信号の入力値と前記状態量の設定値をともに変化させたときの前記入力信号の演算値の変化を、前記出力信号、前記状態量、及び前記入力信号のそれぞれを軸とする多次元グラフで表示する表示手段と、
を備えることを特徴とするエンジンプログラムのロジック検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジンプログラムのロジックを検査するための装置に関する。
【背景技術】
【０００２】
車両には、エンジンを制御するためのエンジン制御装置が搭載されている。車両の開発時には、エンジン制御装置がエンジンを適正に制御できるか否か、つまり、エンジン制御装置を機能させるエンジンプログラムのロジックが正しく動作するか否かを検査する必要がある。このため、従来、実際の車両を用いてテストを行ったり、或いは特許文献１に記載されるように車両の挙動を模擬することができるシミュレータを用いてテストを行ったりして、そのテスト結果に基づいてロジックの検査が行われていた。
【特許文献１】特開平１１−３２６１３５号公報
【特許文献２】特開平１１−１４５０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、ロジックの検査を容易にするための方法として、エンジン或いはエンジンシミュレータから出力される出力信号と、エンジン制御装置からエンジン或いはエンジンシミュレータに入力される入力信号との関係をグラフ表示することが提案されている。グラフ表示により入力信号と出力信号の関係を可視化することでロジックの動作を容易に把握することができる。
【０００４】
しかしながら、入力信号と出力信号の関係から把握できるロジックの動作は出力信号が一定の定常状態での動作に過ぎず、出力信号が変化している過渡状態でのロジックの動作まで把握することはできない。過渡状態でのロジックの動作に不具合があると、エンジンの作動時に想定外の現象が生じる可能性がある。したがって、ロジックの検査においては、定常状態のみならず過渡状態でのロジックの動作を容易に把握できるようにすることも重要である。
【０００５】
本発明は、上述のような課題を解決するためになされたもので、過渡状態でのロジックの動作を容易に把握できるようにしたエンジンプログラムのロジック検査装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
第１の発明は、上記の目的を達成するため、エンジンから出力される出力信号に基づいて前記エンジンに与えるべき入力信号を演算するエンジン制御装置としてコンピュータを機能させるエンジンプログラムのロジックを検査するための装置であって、
前記エンジンプログラムに従って前記入力信号を演算する演算手段と、
前記出力信号を仮想的に発生させ、前記演算手段に入力する出力信号発生手段と、
前記エンジンプログラムで定義され前記入力信号の演算に用いられる状態量を前記エンジンプログラムに従った演算によらず仮想的に設定する状態量設定手段と、
前記出力信号の入力値と前記状態量の設定値をともに変化させたときの前記入力信号の演算値の変化を、前記出力信号、前記状態量、及び前記入力信号のそれぞれを軸とする多次元グラフで表示する表示手段と、
を備えることを特徴としている。
【発明の効果】
【０００７】
エンジンプログラムで定義され入力信号の演算に用いられる状態量は、前回を含む過去の入力信号及び／又は出力信号の履歴によって決まる変数であるので、出力信号及び状態量の変化に対する入力信号の変化が分かれば過渡状態でのロジックの動作を把握することができる。本発明によれば、入力信号の出力信号及び状態量に対する関係が多次元グラフによって可視化されるので、過渡状態でのロジックの動作を容易に把握することができる。
【発明を実施するための最良の形態】
【０００８】
まず、エンジン制御システムの概略について図２を用いて説明する。図２に示すように、エンジン制御システムはエンジン２とエンジン制御装置４とから構成されている。エンジン制御装置４はコンピュータであり、メモリに記憶されているエンジンプログラムがＣＰＵで実行されることによってエンジン２を制御するための種々の機能が実現される。エンジン２からエンジン制御装置４には、エンジン２に取り付けられたセンサ等を介してエンジン２の状態を示す出力信号（例えば、エンジン回転数、水温等）ｕが供給されている。一方、エンジン制御装置４からエンジン２には、エンジン２の動作を制御するための入力信号（例えば、燃料噴射量、点火時期等）ｙが供給されている。
【０００９】
エンジン制御装置４は、エンジンプログラムに従い入力信号ｙを演算している。一般に、エンジンプログラムでは、次式（１）に示すように、入力信号ｙはエンジン２からの出力信号ｕと状態量ｘを引数とする関数として定義されている。なお、ｋはステップ数を示している。
ｙk＝ｇ（ｘk，ｕk）  ・・・（１）
状態量ｘはエンジンプログラムの動的内部変数であり、次式（２）に示すように、自身の前回値と前回の出力信号ｕを引数とする関数として定義されている。このような定義により、状態量ｘは出力信号ｕの影響を受けながら次回の値ｘk+1に更新されていくようになっている。なお、図１中のｚ-1は１ステップのディレイを意味している。
ｘk+1＝ｆ（ｘk，ｕk）  ・・・（２）
エンジン制御装置４は、上記の式（２）に示すように出力信号ｕに基づき状態量ｘを更新しながら、エンジン２からの出力信号ｕと状態量ｘから入力信号ｙを演算している。
【００１０】
図１は、本発明の実施の形態としての検査装置の概略構成を示す図である。ここでは、本発明の検査装置は、エンジン制御装置４を機能させているエンジンプログラムのロジックを検査するための検査装置１０として構成されている。図１に示すように、検査装置１０は、演算部１２、出力信号発生部１４、状態量設定部１６、及び表示部１８から構成されている。
【００１１】
演算部１２はエンジンプログラムを実行するための手段であり、演算部１２のメモリにはエンジン制御装置４に用いられるのと同じエンジンプログラムが記憶されている。ただし、演算部１２で実行されるのはエンジンプログラムのうち上記式（１）に示す入力信号ｙの演算にかかる部分であり、上記式（２）に示す状態量ｘの演算（更新）にかかる部分は実行されない。検査装置１０では、入力信号ｙの演算に必要な状態量ｘの値は状態量設定部１６で仮想的に設定され、その仮想値がエンジンプログラムに与えられる。状態量設定部１６は、状態量ｘの仮想値を所定範囲で任意に変化させることができる。また、入力信号ｙの演算に必要な出力信号ｕの値は出力信号発生部１４で仮想的に生成され、その仮想値がエンジンプログラムに入力される。出力信号発生部１４は、出力信号ｕの仮想値を所定範囲で任意に変化させることができる。
【００１２】
演算部１２では、出力信号発生部１４で仮想的に生成された出力信号ｕと、状態量設定部１６で仮想的に設定された状態量ｘから、エンジンプログラムに従い入力信号ｙが演算される。検査装置１０は、出力信号発生部１４により出力信号ｕを変化させるとともに、状態量設定部１６により状態量ｘを変化させ、出力信号ｕの各値及び状態量ｘの各値に対する入力信号ｙを演算部１２に演算させるようになっている。演算部１２で演算された入力信号ｙは、対応する出力信号ｕ及び状態量ｘとともに表示画面を有する表示部１８に入力される。
【００１３】
表示部１８では、演算部１２から入力された入力信号ｙ、出力信号ｕ、状態量ｘの各値が図３に示すように入力信号ｙ、出力信号ｕ、状態量ｘのそれぞれを軸とする３次元グラフ上の座標点として表示画面に表示される。この座標点は３次元グラフ上で曲面（屈曲面を含む）を描き、この曲面が入力信号ｙの出力信号ｕ及び状態量ｘに対する関係を示している。
【００１４】
状態量ｘは上記式（２）に示すように過去の出力信号ｕの履歴から決まる情報である。したがって、上記式（１）で定義される入力信号ｙは、出力信号ｕの今回値と過去の履歴によってその値が決まることになり、たとえ出力信号ｕの今回値が同一であっても、出力信号ｕの過去の履歴が異なれば入力信号ｙは異なった値になる。従来提案されていた入力信号ｙと出力信号ｕの関係のグラフ表示では、出力信号ｕが一定となったときの入力信号ｙと出力信号ｕの関係、つまり、定常状態における入力信号ｙと出力信号ｕの関係が表示されていた。しかし、定常状態における入力信号ｙと出力信号ｕの関係からは、エンジンプログラムのロジックの動作のうち定常状態における動作しか把握することができない。これに対し、上記の入力信号ｙ、出力信号ｕ、状態量ｘのそれぞれを軸とする３次元グラフによれば、そこに描かれる曲面から出力信号ｕの今回値と過去の履歴によって入力信号ｙがどのように変化するのか視覚的に容易に把握することができる。つまり、定常状態のみならず過渡状態でのロジックの動作も容易に把握することができる。
【００１５】
このように、本実施形態にかかる検査装置１０によれば、出力信号ｕ及び状態量ｘに対する入力信号ｙの関係が３次元グラフによって可視化されるので、過渡状態でのロジックの動作を容易に把握することができる。したがって、例えば、３次元グラフに描かれる曲面に不連続点や急激な変極点がある場合には、その部分に対応するロジックに不具合があると容易に予想することができる。エンジン２は連続系であるので、通常、エンジンプログラムのロジックは、過渡状態であっても不連続点や急激な変化が生じないように設計されているからである。不連続点や急激な変化はエンジンプログラムのif-thenブロック等の切り替え点で生じやすいが、検査装置１０によれば、ロジックに不具合のある箇所を容易に特定することができる。仮に、検査装置１０を用いずに、不連続点や急激な変化の有無をエンジン制御装置４にテスト信号（出力信号）を入力することで検査しようとすると、あらゆる状態量の変化について考慮し、且つ、エンジンプログラムに含まれる全てのif-thenの切り替え点を通過するようテスト信号を準備する必要があり、組み合わせ上、それは現実的に不可能に近い。
【００１６】
以下では、エンジンプログラムとして始動時の燃料噴射プログラムを例に取り、検査装置１０の作用及び効果についてより具体的に説明する。燃料噴射プログラムでは、エンジン２への入力信号ｙは燃料噴射時間であり、エンジン２からの出力信号ｕはエンジン回転数である。また、ここでは、入力信号ｙを定義する関数ｆと状態量ｘを定義する関数ｇを同一関数とする。この場合、燃料噴射時間tauは次式（３）によって表される。
tau＝ｙk＝ｆ（ｘk，ｕk）＝ｘk+1  ・・・（３）
上記（３）式においてｘk+1は状態量ｘkの１ステップ先の値であり、これが燃料噴射時間に相当することから、状態量ｘkは前回の燃料噴射時間に相当することになる。
【００１７】
図４は、現在のエンジン回転数（出力信号）と前回の燃料噴射時間（状態量）を変化させたときの燃料噴射時間（入力信号）の変化を３次元グラフで表示した場合の一例を示している。図５は、濃淡によって入力信号の大きさを表した３次元グラフであり、図４をＺ軸（入力信号軸）の上方から見た図に相当している。図５中に記載しているように、これらのグラフによれば、エンジン回転数及び前回燃料噴射時間のあらゆる方向の変化についてロジックの動作を視覚的に把握することができる。例えば、図５中に破線で示す矢印方向に回転数が変化する場合には、急激な燃料噴射変化が起きることが容易に分かる。このような急激な燃料噴射変化はロジックの不具合に起因している可能性が高いので、その部分に相当する燃料噴射プログラムのロジックを検証することで、ロジックの不具合を的確に修正することができる。
【００１８】
以上、本発明の実施の形態について説明したが、本発明は上述の実施の形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。例えば、次のように変形して実施してもよい。
【００１９】
上記実施の形態では、入力信号の演算に用いる状態量は上記式（２）で定義されているが、上記式（２）に示す状態量の定義は一例であり、出力信号の代わりに入力信号を引数とする関数とすることもできる。或いは、出力信号と入力信号の双方を引数とする関数とすることもできる。
【００２０】
また、入力信号の演算に用いられる状態量、出力信号の数は上記実施の形態のように１つには限定されない。複数の状態量、複数の出力信号を引数とする関数として入力信号を定義してもよい。これら複数の状態量及び出力信号と入力信号の関係は、各状態量、各出力信号及び入力信号のそれぞれを軸とする多次元グラフによって表現することができる。なお、ここでいう多次元グラフには、複数の三次元グラフの組み合わせも含む。例えば、入力信号が１つの状態量と２つの出力信号を引数とする関数として定義される場合であれば、前記固定値を変化させたときの各値に対応して入力信号、状態量、及び他方の出力信号を軸とする複数の三次元グラフを作成し、これら複数の三次元グラフを表示画面上に並べて或いはアニメーションで表示してもよい。
【００２１】
また、上記実施の形態では、人が表示画面に表示された多次元グラフからロジックの不具合を読み取るようになっているが、自動検査装置を用いて入力信号を定義する関数から不連続点や急激な変化を演算で検出してその検出結果を表示したり、或いは、不連続点等に対応するエンジンプログラムのロジックを不具合点として表示したりしてもよい。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施の形態としての検査装置の概略構成を示す図である。
【図２】エンジン制御システムの概略を説明するための図である。静止時のライン油圧とエンジン回転数及び油温との関係を示す図である。
【図３】入力信号、出力信号、状態量のそれぞれを軸とする３次元グラフである。
【図４】現在のエンジン回転数と前回の燃料噴射時間を変化させたときの燃料噴射時間の変化を示す３次元グラフである。
【図５】図４の燃料噴射時間の軸を濃淡によって表現した３次元グラフである。
【符号の説明】
【００２３】
２  エンジン
４  エンジン制御装置
１０  検査装置
１２  演算部
１４  出力信号発生部
１６  状態量設定部
１８  表示部
【図１】
2006017465.tif 000003
【図２】
2006017465.tif 000004
【図３】
2006017465.tif 000005
【図４】
2006017465.tif 000006
【図５】
2006017465.tif 000007