(57)【特許請求の範囲】
【請求項１】
車両に設けられた動力源を制御して自動運転制御を実施する動力源制御部（３）と、
前記動力源制御部に対して故障診断に関する制御情報を生成して制御する演算処理部（２）とを備え、
前記演算処理部（２）は、
前記車両のトリップ数に対する故障診断装置による故障診断項目についての故障診断実施回数の比で決まる現在のレート情報を取り込み、
故障診断項目毎に予め定められた必要なレートに対する前記現在のレートの比をレート達成度として演算し、
演算された前記レート達成度について低い値の故障診断項目から順に、故障診断項目に設定された検出条件に適合するように前記制御情報を設定する検出条件設定処理を行うように構成された電子制御装置。
【請求項２】
請求項１に記載の電子制御装置において、
前記演算処理部（２）は、前記故障診断項目毎に前記レート達成度が所定値に到達するまで前記検出条件設定処理を実施する電子制御装置。
【請求項３】
請求項１または２に記載の電子制御装置において、
前記演算処理部（２）は、制御不可な状態の検出条件が不成立である故障診断項目については前記検出条件設定処理を中止し、レート達成度が次に低い故障診断項目について前記検出条件設定処理を実施する電子制御装置。
【請求項４】
請求項１から３の何れか一項に記載の電子制御装置において、
故障診断項目の検出条件設定中の車両挙動変化を監視する監視部（５）を設け、
前記演算処理部（２）は、前記監視部により車両挙動変化が大きいことが検出され、車両挙動変化を抑制する必要があると判定された場合には、前記動力源制御部に対して車両挙動変化の抑制制御をする電子制御装置。
【請求項５】
請求項４に記載の電子制御装置において、
前記演算処理部（２）は、前記車両挙動変化の抑制制御では、対象としている故障診断検出条件の範囲内で実施する電子制御装置。
【請求項６】
請求項４に記載の電子制御装置において、
前記演算処理部（２）は、前記車両挙動変化の抑制制御では、対象としている故障診断検出条件の設定を中止し、レート達成度が次に低い故障診断項目について前記検出条件設定処理を実施する電子制御装置。
【請求項７】
請求項４に記載の電子制御装置において、
前記監視部（５）は、
外部から前記車両の前方に存在する障害物までの距離情報を取得し、
現在の距離情報および過去の距離情報から前記障害物への到達予想時間を算出し、
算出された前記到達予想時間が所定時間以下である場合に、車両挙動変化の抑制制御が必要であることを判定する電子制御装置。
【請求項８】
請求項４に記載の電子制御装置において、
前記監視部（５）は、
外部から前記車両の前方に存在するカーブまでの距離情報を取得し、
現在の距離情報および過去の距離情報から前記カーブへの到達予想時間を算出し、
算出された前記到達予想時間が所定時間以下である場合に、車両挙動変化の抑制制御が必要であることを判定する電子制御装置。
【請求項９】
請求項４に記載の電子制御装置において、
前記監視部（５）は、
外部から前記車両が次に右左折する地点までの距離情報を取得し、
現在の距離情報および過去の距離情報から前記右左折する地点への到達予想時間を算出し、
算出された前記到達予想時間が所定時間以下である場合に、車両挙動変化の抑制制御が必要であることを判定する電子制御装置。
【請求項１０】
請求項４に記載の電子制御装置において、
前記監視部（５）は、
外部から前記車両の前方に存在する一時停止地点までの距離情報を取得し、
現在の距離情報および過去の距離情報から前記一時停止地点への到達予想時間を算出し、
算出された前記到達予想時間が所定時間以下である場合に、車両挙動変化の抑制制御が必要であることを判定する電子制御装置。
【請求項１１】
請求項４に記載の電子制御装置において、
前記監視部（５）は、
外部から前記車両から後続車両までの距離情報を取得し、
現在の距離情報および過去の距離情報から前記後続車両の自車への到達予想時間を算出し、
算出された前記到達予想時間が所定時間以下である場合に、車両挙動変化の抑制制御が必要であることを判定する電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、故障診断のレート改善機能を有する電子制御装置に関する。
【背景技術】
【０００２】
車両の故障診断であるダイアグを実施する故障診断装置では、ダイアグ検出条件成立時に強制的にアクチュエータを作動させることで診断を実施する技術がある。この場合、車両の動力を始動してから次に始動するまでを１回としてカウントするトリップ数に対して、レートと称される値が設定されることがある。レートとは、市場でのダイアグ能力をモニタすることを目的とした、車両のトリップ数に対する、ダイアグを実施した回数の比の値である。
【０００３】
また、法規要求レートとして、法規で定められているダイアグ毎に最低限必要なレートがある。これは、例えば法規要求レートが０．３３６の場合、１０００トリップ中、３３６回以上ダイアグを実施することが必要という意味である。
【０００４】
このような法規要求レートが設定されているダイアグ項目にはシステムダイアグ関連の項目が多い。システムダイアグの検出条件は、エンジン回転やスロットル開度が所定時間継続して特定領域にあるといった、特定状態を検出の前提としているものが多く、運転の仕方によっては検出条件が成立しづらいといった特徴がある。
【０００５】
また、将来的には、法規要求レートが設定されるダイアグ項目が増えたり、既存のダイアグ検出条件とは異なる特定状態が検出の前提条件として設けられたり、法規要求レートを新たに求められる国が増えたりすることが考えられるため、法規要求レートの達成が年々難しくなっていくと考えられる。
【０００６】
上記従来技術はアクチュエータを強制的に動かすことで適切な診断を行うことができるが、アクチュエータを作動させるためのダイアグ検出条件の成立は成り行きに任せていることから、法規要求レートを満足することは年々難しくなっていくといった問題が考えられる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００４−１６４６０１号公報
【特許文献２】国際公開第２００８／０３８７４１号
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、上記事情を考慮してなされたもので、その目的は、レート達成度が低いダイアグの検出機会を増加させレートを改善させることができるようにした電子制御装置を提供することにある。
【課題を解決するための手段】
【０００９】
請求項１に記載の電子制御装置は、車両に設けられた動力源を制御して自動運転制御を実施する動力源制御部と、前記動力源制御部に対して故障診断に関する制御情報を生成して制御する演算処理部とを備え、前記演算処理部は、前記車両のトリップ数に対する故障診断装置による故障診断項目についての故障診断実施回数の比で決まる現在のレート情報を取り込み、故障診断項目毎に予め定められた必要なレートに対する前記現在のレートの比をレート達成度として演算し、演算された前記レート達成度について低い値の故障診断項目から順に、故障診断項目に設定された検出条件に適合するように前記制御情報を設定する検出条件設定処理を行う。
【００１０】
上記構成を採用することにより、演算処理部により、現在のレート情報を取り込み、例えば法規レートに対する現在のレートの比をレート達成度として演算し、検出条件設定処理を実施して、演算されたレート達成度について低い値の故障診断項目から優先的に、故障診断項目に設定された検出条件に適合するように制御情報を設定する。これにより、従来技術では法規要求レートの達成が難しかった故障診断項目について検出条件に適合する制御情報を設定して実施させることができ、これによって故障診断項目の実施機会を増加させることができ、レート達成度をより高めることができるようになる。
【図面の簡単な説明】
【００１１】
【図１】実施形態を示すブロック構成図
【図２】ダイアグとレートおよびレート達成度の関係を示す図
【図３】ダイアグの検出条件を示す図
【図４】制御可能な状態の制御情報を示す図
【図５】ダイアグ制御要求算出処理のフローチャート
【図６】要求ダイアグ選出処理のフローチャート
【図７】要求ダイアグ選出詳細処理のフローチャート
【図８】ダイアグ要求値算出処理のフローチャート
【図９】要求調停処理のフローチャート
【図１０】車両挙動変化監視処理のフローチャート
【図１１】車両挙動変化抑制要否判定処理のフローチャート
【図１２】前方到達時間算出処理のフローチャート
【図１３】車両挙動変化抑制可否判定処理のフローチャート
【図１４】前方距離および後方距離の関係を説明する図
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態について、図１〜図１４を参照して説明する。なお、以下の説明においては、自己診断をダイアグとして表現する。
図１はダイアグシステムのブロック構成の概略を示すもので、動力源制御ＥＣＵ（Electrical Control Unit）１は、エンジン車あるいは電気自動車またはハイブリッド車などの車両に設けられるもので、自動運転制御を行うための機能を備えている。動力源制御ＥＣＵ１は、実際にはＣＰＵやメモリ、インターフェースなどを備えた制御回路として構成されるものであり、図１ではこの構成を機能的に表示している。
【００１３】
動力源制御ＥＣＵ１（以下、単にＥＣＵ１と称する）は、動力源であるエンジンあるいは電気駆動装置を制御する動力源制御部３、動力源制御部３による制御情報を生成するダイアグ制御要求算出部２を有するダイアグ制御部４としての機能ブロックが設けられる。ダイアグ制御要求算出部２は演算処理部として機能するものである。
【００１４】
また、ＥＣＵ１は、車両挙動変化監視部５としての機能ブロックを備え、車両に設けられた他のＥＣＵであるドライビングサポートＥＣＵ６、カーナビゲーション装置７から車内通信網ＣＡＮ（Controller Area Network、ＣＡＮは登録商標）を介して情報を受信する。また、ＥＣＵ１は、その他車両に設けられるセンサから車速情報８やダイアグ（故障診断）に関する車両情報９を受信し、また故障診断装置からダイアグ情報１０を受信するように構成されている。
【００１５】
ドライビングサポートＥＣＵ６は、レーダーやカメラ等から、前方や後方の障害物等までの距離を計測する機能を備える。ドライビングサポートＥＣＵ６は、これによって前方障害物までの距離情報６ａ、後続車までの距離情報６ｂあるいは一時停止地点までの距離情報６ｃなどを生成し、ＥＣＵ１に提供する。カーナビゲーション装置７は、例えば進行方向に位置するカーブまでの距離情報７ａ、次に右左折する地点までの距離情報７ｂなどを生成し、ＥＣＵ１に提供する。なお、ＥＣＵ１は、ドライビングサポートＥＣＵ６、カーナビゲーション装置７から、ＣＡＮ信号により例えば６５［ｍｓｅｃ］毎に各種情報を受信するように設けられている。
【００１６】
本実施形態においては、ダイアグ検出をＥＣＵ１で実施しているが、ダイアグ検出自体は図示しない他のＥＣＵで行って、そのＥＣＵによるダイアグ検出が完了したかどうかの結果と、そのダイアグのレート値をＥＣＵ１で受け取る構成としてもよい。また、上記したように機能ブロック構成を示したが、実際にはプログラムを実行することによりこれらの機能を達成しており、以下の説明では、ＥＣＵ１による動作制御として示す。
【００１７】
図２は、自己診断項目である複数のダイアグについて、各ダイアグの現在レート、法規要求レート、レート達成度の情報例を示している。ここで、現在レートとは、トリップ数に対するダイアグを実施した回数の比の値である。例えば、触媒劣化のダイアグで、現在レートが「０．１７」とされているのは１００回のトリップあたり１７回のダイアグ実施を示す値である。
【００１８】
法規要求レートとは、法規で定められているレートで、ダイアグ毎に最低限必要とされるレートである。また、レート達成度は、法規要求レートに対する現在レートの比を示す値で次式のようにして求めることができる。
レート達成度＝現在レート／法規要求レート
【００１９】
例えば、触媒劣化のダイアグで、レート達成度が「０．５」とされているのは、法規要求レートに対して現在レートが半分の「０．５」であることを示している。したがって、現在レートが法規要求レートに等しくなるとレート達成度が「１」となる。
【００２０】
図３は、各ダイアグについてその検出条件と制御情報の例を示している。図３に示すように、各ダイアグはその検出条件を成立させるために必要な各種の状態情報を持っている。各ダイアグの状態情報は、図中左側欄に示すいくつかの項目がＥＣＵ１による制御可能な状態であり、右側欄に示すいくつかの項目がＥＣＵ１による制御不可な状態である。
【００２１】
また、図４に示すように、上記した制御可能な各々の状態に対して、加減速が必要である時に、設定可能な制御情報を示している。加速必要時変化量、減速必要時変化量として、それぞれの制御可能な状態に対してどれだけ状態を変化させることができるかという値を制御情報として示している。また加減速変化後禁止時間として、加減速変化させた後に次の加減速変化を許可するまでの禁止時間を制御情報として示している。
【００２２】
次に、上記構成を用いて自動運転時におけるレート改良の制御を行う場合の作用について、図５〜図１４も参照して説明する。図５は、ＥＣＵ１により実施されるダイアグ制御要求算出処理の全体の内容を示すフローであり、例えば６５［ｍｓｅｃ］の周期でコールされ、繰り返し実行されている。
【００２３】
図５において、ＥＣＵ１は、まずステップＡ１で、現在の運転状態が自動運転中か否かを判定し、自動運転中であればＹＥＳと判断して次のステップＡ２に進む。ＥＣＵ１は、ステップＡ２で、ダイアグ制御要求中フラグがＯＦＦかどうかを判定し、ダイアグ制御要求中フラグがＯＦＦであれば、ＹＥＳと判断してステップＡ３に進む。ＥＣＵ１は、ステップＡ３で後述する要求ダイアグ選出詳細処理において用いる検出未完のダイアグを示すインデックスｉに「０」をセットし、続くステップＡ４で要求ダイアグ選出の処理を実施する。
【００２４】
なお、ＥＣＵ１は、ステップＡ４の要求ダイアグ選出処理では、図６に示すフローチャートの要求ダイアグ選出処理にしたがって後述するように処理を実施する。そして、ＥＣＵ１は、その要求ダイアグ選出処理の実施中に、さらに図７に示すフローチャートの要求ダイアグ選出詳細処理にしたがって後述するように処理を実施する。ステップＡ３で設定したインデックスｉは、要求ダイアグ選出詳細処理において、検出未完のダイアグを指すインデックスとして使用される。
【００２５】
ここでは、ＥＣＵ１は、ステップＡ４の要求ダイアグ選出処理を実施したものとして次にステップＡ５に進み、要求ダイアグが「無し」という状態ではなかったかどうかを判断する。つまり、ＥＣＵ１は、要求ダイアグが「有り」の場合にはステップＡ５でＹＥＳと判断して次のステップＡ６に進み、ダイアグ要求値算出処理を実施する。
【００２６】
ＥＣＵ１は、このダイアグ要求値算出処理を、図８に示すフローチャートにしたがって実施する。次に、ＥＣＵ１は、ステップＡ７に進み、ダイアグ制御開始時車速Ｖｏとして、現在車速Ｖを記録すると共に、ダイアグ制御要求中フラグをＯＮに設定した後、プログラムを終了する。
【００２７】
なお、ＥＣＵ１は、ステップＡ１でＮＯと判断した場合すなわち自動運転中でない場合や、ステップＡ５でＮＯと判断した場合すなわち要求ダイアグ「無し」である場合には、ステップＡ８に進み、制御関連情報をクリアする。ここで、制御関連情報のクリアとしては、後述するプログラムで設定するダイアグ制御の要求中フラグ、各制御へのダイアグ制御の要求フラグ、制御目標値、ならびにダイアグ制御開始時車速Ｖｏのクリアをすることである。
【００２８】
また、ＥＣＵ１は、ステップＡ２でＮＯの場合、つまり要求中フラグがＯＮであった場合には、ステップＡ９に進んで要求ダイアグの検出が未完了であるか否かを確認し、ＹＥＳの場合つまり検出未完了であれば次のステップＡ１０に進む。ＥＣＵ１は、ステップＡ１０で、ダイアグ要求値算出の処理を行い、ダイアグ要求値を更新する。このダイアグ要求値算出の処理は、前述したステップＡ６の処理と同じであり、ＥＣＵ１は、図８に示すフローチャートにしたがって実施する。
【００２９】
また、ＥＣＵ１は、ステップＡ９でＮＯの場合つまり検出完了である場合には、ステップＡ１１に進み、制御関連情報をクリアする。この制御関連情報のクリアの処理は、前述したステップＡ８で実施する内容と同じである。
【００３０】
次に、上記したステップＡ４でコールされる要求ダイアグ選出処理の内容について図６を参照して説明する。
ＥＣＵ１は、まずステップＢ１で、現在のトリップにおいて検出未完であるダイアグのレート達成度を算出する。ここで、レート達成度の算出は、現在レートの値を法規要求レートの値で割り算をすることで求める。ここで、レート達成度が「１」以上になる場合には、法規要求レートを満たしている状態である。次に、ＥＣＵ１は、ステップＢ２で、検出未完のダイアグについて、レート達成度が低い順に並び替える。この場合、ＥＣＵ１は、並び替えた検出未完のダイアグを、レート達成度が低いものから順に、検出未完ダイアグ［０］〜［Ｎ］として設定する。これにより、検出未完のダイアグＮが最後のものとなる。
【００３１】
ＥＣＵ１は、ステップＢ３で、最もレート達成度が低い検出未完ダイアグ［０］のレート達成度が「１」未満であるか否かを判定し、ＹＥＳの場合すなわち「１」未満である場合にはステップＢ４に進んで後述する要求ダイアグ選出詳細の処理を実施する。この結果、ステップＢ３でＹＥＳになると、検出が必要となるダイアグである要求ダイアグが少なくとも１つは存在していることがわかり、ステップＢ４で詳細に選出の処理を行うことになる。
【００３２】
また、ＥＣＵ１は、ステップＢ３でＮＯの場合すなわち「１」以上であった場合には、検出を行う必要があるダイアグである要求ダイアグは「無し」として設定し、プログラムを終了して図５で示したステップＡ５に戻る。これにより、最もレート達成度が低い検出未完ダイアグ［０］のレート達成度が「１」以上であることから、これよりもレート達成度が高い検出未完ダイアグ［１］以降のものについてはレート達成度が「１」以上であり、いずれも検出を行う必要がないことがわかる。
【００３３】
次に、上記したステップＢ４における要求ダイアグ選出詳細の処理について、図７を参照して説明する。
ＥＣＵ１は、ステップＣ１で、現在のトリップで検出未完のダイアグを指すインデックスであるｉの値が検出未完のダイアグ数であるＮ以下であるか否かを判定する。ＥＣＵ１は、検出未完のダイアグのインデックスｉがＮ以下である場合には、ステップＣ１でＹＥＳと判断してステップＣ２に進む。検出未完のダイアグがまだ残っている状態であることを判断したことになる。ＥＣＵ１は、ステップＣ２で、要求ダイアグとしてインデックスｉが示す検出未完ダイアグ［ｉ］を設定する。ここで、インデックスｉが「０」である場合には、検出未完ダイアグのうち最もレート達成度が低いダイアグとなる。
【００３４】
次に、ＥＣＵ１は、ステップＣ３に進み、要求ダイアグとして設定したものについて、その検出条件が不成立となる部分に「制御不可な状態」が無いか否かを判定する。これは、前述した図３に示した各ダイアグの検出条件のうちで、検出未完のダイアグの検出条件が不成立の「状態」として右側欄にある「制御不可な状態」が含まれているかどうかを判断するものである。
【００３５】
ＥＣＵ１は、ステップＣ３でＹＥＳの場合すなわち「制御不可な状態」が無い場合には、次のステップＣ４で、要求ダイアグのインデックスｉを要求ダイアグＮｏ＝ｉとして記憶し、プログラムを終了する。なお、ここで記憶したデータについては、後述するように、図１０に示す車両挙動変化監視処理において、この要求ダイアグの検出条件を成立させる制御を取り止めて次にレート達成度が低いダイアグを指定する際に利用するものである。
【００３６】
また、ＥＣＵ１は、ステップＣ３でＮＯの場合すなわち制御不可な状態がある場合には、ステップＣ５に進み、検出未完のダイアグを指すインデックスｉを「１」インクリメントした後、ステップＣ１に戻って上記の処理を繰り返す。ＥＣＵ１は、ステップＣ１で、ＮＯと判断した場合すなわち検出未完のダイアグを指すインデックスｉが検出未完のダイアグ数Ｎより大となった場合には、現在状態では要求できるダイアグは無くなったことになるので、ステップＣ６で、要求ダイアグは「無し」と設定してプログラムを終了する。
【００３７】
次に、前述した図５のダイアグ制御要求算出処理のステップＡ６あるいはステップＡ１０で行うダイアグ要求値算出処理の内容について図８を参照して説明する。この処理は、図５のダイアグ制御要求算出処理中のステップＡ４において要求ダイアグが選出され、続くステップＡ５で、要求ダイアグが「無し」でないかどうかの判断でＹＥＳの場合に実施するものである。あるいは、図５のダイアグ制御要求算出処理中のステップＡ９において検出未完了の判断でＹＥＳと判断した場合に実施するものである。
【００３８】
ＥＣＵ１は、ステップＤ１で、先に選出された要求ダイアグの検出条件の中で、「制御可能な状態」の検出条件の領域を取得し、次のステップＤ２で、「制御可能な状態」の順番を示すインデックスｊに「０」を代入する。これにより、図３に示した「制御可能な状態」を表すテーブルの検出条件の領域を取得するとともに、その先頭の「状態」を指定している。
【００３９】
次に、ＥＣＵ１は、ステップＤ３で、「制御可能な状態」の順番を示すインデックスｊが指している「制御可能な状態」について、現在の「状態」が検出条件領域外であるか否かを判定する。ＥＣＵ１は、ステップＤ３でＹＥＳの場合すなわち現在の「状態」が検出条件領域外である場合には、ステップＤ４に進み、「制御可能な状態」の制御目標値を現在状態の値に一番近い検出条件領域内の値に設定する。続いて、ＥＣＵ１は、ステップＤ５で、現在状態のダイアグ制御要求フラグをＯＮに設定する。また、ＥＣＵ１は、ステップＤ３でＮＯの場合すなわち現在状態が検出条件領域内である場合には、ステップＤ６に進み、当該状態の制御目標値と当該状態のダイアグ制御要求フラグをクリアする。
【００４０】
ＥＣＵ１は、ステップＤ５あるいはＤ６を実行した後、ステップＤ７で、「制御可能な状態」の順番を示すインデックスｊを「１」インクリメントする。ＥＣＵ１は、続くステップＤ８で、「制御可能な状態」の順番を示すインデックスｊが、「制御可能な状態」の数Ｎ２の値を超えているか否かを判定する。
【００４１】
ＥＣＵ１は、ステップＤ８でＮＯの場合すなわちインデックスｊが「制御可能な状態」の数Ｎ２を超えていない場合には、ステップＤ３に戻って次の「制御可能な状態」対して上記と同様の処理を繰り返す。また、ＥＣＵ１は、ステップＤ８でＹＥＳの場合すなわちインデックスｊが「制御可能な状態」の数Ｎ２を超えていた場合には、「制御可能な状態」に対しての処理が完了した場合なので、プログラムを終了する。
【００４２】
次に、本実施形態で実施する「制御可能な状態」の制御について、その制御毎に行う要求調停処理について図９を参照して説明する。ここでいう「制御可能な状態」の制御とは、例えば目標スロットル開度算出制御などである。なお、この「制御可能な状態」の制御毎の要求調停処理は例えば６５［ｍｓｅｃ］毎のタイミングでコールされる。
【００４３】
ＥＣＵ１は、ステップＥ１で、当該状態におけるダイアグの制御要求フラグがＯＮであるか否かを判定する。ＥＣＵ１は、ステップＥ１でＹＥＳの場合すなわちダイアグの制御要求フラグがＯＮである場合には、ステップＥ２で、前述したダイアグ要求値算出処理で算出した制御目標値を実際の制御目標値として設定し、プログラムを終了する。この場合、ＥＣＵ１は、自動運転制御よりダイアグ要求による制御目標を優先させるようになっている。
【００４４】
また、ＥＣＵ１は、ステップＥ１でＮＯと判断した場合すなわち当該状態のダイアグ制御の要求フラグがＯＦＦである場合には、ステップＥ３に進み、当該状態制御においてはダイアグ要求による制御目標の設定ではなく、前車追従走行あるいは定速度走行などの自動運転制御の目標値の設定をしてプログラムを終了する。
【００４５】
次に、本実施形態で実施する車両挙動変化監視処理について、図１０を参照して説明する。この車両挙動変化監視処理は、例えば６５［ｍｓｅｃ］毎のタイミングでコールされる。
【００４６】
ＥＣＵ１は、ステップＦ１で、ダイアグ制御の要求中フラグがＯＮであるか否かを判定し、ＹＥＳの場合すなわち要求中フラグがＯＮである場合には、次のステップＦ２に進む。ＥＣＵ１は、ステップＦ２で、前回車速（前回Ｖ）が前回車速初期値（前回Ｖｓ）とは異なるかどうかを判断し、異なる場合にはＹＥＳと判断して前回Ｖを用いることとし、次のステップＦ３で、車速変化量ΔＶとして前回車速Ｖと今回車速Ｖとの差すなわち次式から算出する。
車速変化量ΔＶ＝前回Ｖ−今回Ｖ
また、ＥＣＵ１は、ステップＦ２でＮＯの場合すなわち前回Ｖが前回Ｖｓと同じ場合には、ステップＦ４に進み、前回Ｖをダイアグ制御開始時車速Ｖｏに設定してステップＦ３に進む。
【００４７】
ＥＣＵ１は、ステップＦ３を実施した後、ステップＦ５で、前回車速である前回Ｖの値として今回車速である今回Ｖを設定し、ステップＦ６に進む。ＥＣＵ１は、ステップＦ６で、車速変化量ΔＶの絶対値が車速変化が大であることを判定する判定閾値Ｖｔｈ以上であるか否かを判定する。この場合、判定閾値Ｖｔｈは、例えば５［ｋｍ／ｈ］などの変化を検出するための値が設定される。ＥＣＵ１は、ステップＦ６で、車速変化量ΔＶが車速変化大の判定閾値Ｖｔｈ以上であればＹＥＳと判断して、ステップＦ７に進む。なお、ＥＣＵ１は、ステップＦ６でＮＯの場合すなわち車速変化量ΔＶが判定閾値Ｖｔｈよりも小さいときには、ダイアグ制御要求をそのまま継続する。
【００４８】
ＥＣＵ１は、ステップＦ７では、図１１に示すフローチャートにしたがって、後述するようにして車両挙動変化抑制要否判定の処理を実施する。ＥＣＵ１は、ステップＦ８に進むと、ステップＦ７で実施した車両挙動変化抑制要否判定の処理の結果得られる車両挙動変化抑制必要フラグがＯＮであるか否かを判定する。ＥＣＵ１は、ステップＦ８でＹＥＳの場合すなわち車両挙動変化の抑制必要フラグがＯＮである場合には、次のステップＦ９で車両挙動変化の抑制可否判定の処理を実施する。
【００４９】
ＥＣＵ１は、ステップＦ９では、図１３に示すフローチャートにしたがって、後述するようにして車両挙動変化抑制可否判定の処理を実施する。なお、ＥＣＵ１は、ステップＦ８でＮＯの場合すなわち車両挙動変化の抑制必要フラグがＯＦＦの場合には、ダイアグ制御要求をそのまま継続し、ステップＦ１４に進んで後述する処理をする。
【００５０】
ＥＣＵ１は、ステップＦ１０に進むと、ステップＦ９で実施した車両挙動変化の抑制可否判定の処理により得られる車両挙動変化の抑制可フラグがＯＮであるか否かを判定する。ＥＣＵ１は、ステップＦ１０でＹＥＳの場合すなわち車両挙動変化の抑制可フラグがＯＮである場合には、ダイアグ検出条件を成立させながら車両挙動変化を抑制するよう制御目標値を設定する処理を実施し、ステップＦ１４に進む。
【００５１】
また、ＥＣＵ１は、ステップＦ１０でＮＯの場合すなわち車両挙動変化抑制可フラグがＯＦＦである場合には、現在の要求ダイアグのダイアグ検出条件を成立させながら車両挙動変化を抑制することは不可と判断する。この場合には、ＥＣＵ１は、ステップＦ１１に進み、次にレート達成度が低いダイアグを要求ダイアグとして選出するため、検出未完のダイアグを指すインデックスｉに現在の要求ダイアグＮｏ．に「１」をインクリメントした値を代入する。続いて、ＥＣＵ１は、ステップＦ１２で、前述の図６の要求ダイアグ選出処理を実施する。次に、ＥＣＵ１は、次の要求ダイアグが選定されダイアグ要求制御が開始された際のダイアグ制御開始時車速を前回Ｖに設定できるよう、ステップＦ１３で、前回Ｖを前回Ｖｓに初期化しておく。
【００５２】
ＥＣＵ１は、プログラムの最後のステップＦ１４で、加減速変化後時間[０〜Ｎ２]に６５［ｍｓｅｃ］加算しておくことで、後述する図１３で加減速変化後時間がクリアされたタイミングからの時間を計数するようにする。
【００５３】
次に、前述した図１０の車両挙動変化監視処理のステップＦ７での車両挙動変化抑制要否判定の処理の内容について図１１を参照して説明する。この処理は、検出条件を変更したときに、車両の走行状態が変化することで、前方あるいは後方を走行する車両との距離、前方の物体やカーブ、一時停止などの位置との距離から、それらへ到達するまでの時間が所定よりも短くなる場合を判定してこれを避けるようにするための処理である。
【００５４】
この場合、上記の関係を演算するために、図１４に示すような位置関係を想定している。すなわち、経路に設定された道路を走行する自車をＸとし、自車Ｘの前方の最も近い位置に存在する他車や物体などの障害物をＹとし、その障害物Ｙまでの距離をＬｆ１とする。また、自車Ｘの前方の最も近い位置に存在するカーブ入口Ｃまでの距離をＬｆ２とし、自車Ｘの前方の最も近い位置に存在する交差点Ｐまでの距離をＬｆ３とする。そして、自車Ｘの前方の最も近い位置に存在する一時停止Ｑまでの距離をＬｆ４とする。さらに、自車Ｘの後方の最も近い位置を走行する車両を後方車両Ｚとし、その後方車両Ｚまでの距離をＬｂとする。
【００５５】
また、上記の距離を元にして、４つの前方到達時間Ｔｆ１、Ｔｆ２、Ｔｆ３、Ｔｆ４および後方到達時間Ｔｂを算出することができる。ここで、前方到達時間Ｔｆ１は自車Ｘが障害物Ｙに到達する時間、前方到達時間Ｔｆ２はカーブ入口Ｃに到達する時間、前方到達時間Ｔｆ３は交差点Ｐに到達する時間、前方到達時間Ｔｆ４は一時停止Ｑに到達する時間である。また、後方到達時間Ｔｂは後方車両Ｚが自車Ｘに到達する時間である。
【００５６】
ＥＣＵ１は、図１０の車両挙動変化監視処理のステップＦ７での車両挙動変化抑制要否判定の処理がコールされると、まず、ステップＧ１で、後述する前方到達時間Ｔｆを算出する。ＥＣＵ１は、この前方到達時間Ｔｆ算出の処理を、図１２に示すフローチャートにしたがって実施し、前方到達時間Ｔｆを算出する。前方到達時間算出の処理は後述する。
【００５７】
次に、ＥＣＵ１は、ステップＧ２で、ドライビングサポートＥＣＵ６から後方車両Ｚまでの距離Ｌｂを取得し、続くステップＧ３で後方到達時間Ｔｂを算出する。ＥＣＵ１は、後方到達時間Ｔｂの算出過程では、まず一時的な値Ｔｔｂを次式に示すように、今回取得した後方距離Ｌｂを単位時間当たりの移動距離で割り算をすることで求める。単位時間当たりの移動距離は、簡単のために前回取得した後方距離Ｌｂから今回取得した後方距離Ｌｂを差し引いた距離としている。
Ｔｔｂ＝今回Ｌｂ／（前回Ｌｂ−今回Ｌｂ）
【００５８】
この方法で算出するＴｔｂの値が正の値になる場合は、後方車両Ｚが自車Ｘよりも速いために、時間と共に狭まっていく状況である。この場合には、ＥＣＵ１は、後方到達時間Ｔｂの値としてＴｔｂを設定する。
Ｔｂ＝Ｔｔｂ
【００５９】
また、Ｔｔｂの値が負の値になる場合は、後方車両Ｚが自車Ｘよりも遅いために、時間と共に離間していく状況である。この場合には、ＥＣＵ１は、次式に示すように、前回到達時間Ｔｂに、今回離れた分の時間としてＴｔｂの値の絶対値を加算することで今回の後方到達時間Ｔｂとする。
Ｔｂ＝前回Ｔｂ＋｜Ｔｔｂ｜
なお、上記の後方到達時間Ｔｂの算出過程は、図１１中のステップＧ３では、簡易的に右辺の値の符号が負の場合であるとして示しているが、上記と同じ計算過程であることを表現している。
【００６０】
次に、ＥＣＵ１は、ステップＧ４で、車速変化量ΔＶが０以上で且つ前方到達時間Ｔｆが到達時間余裕判定の閾値Ｔｔｈよりも小である場合に、ＹＥＳと判断してステップＧ６に進む。また、ＥＣＵ１は、ステップＧ４でＮＯと判断した後、次のステップＧ５で、車速変化量ΔＶが負で且つ後方到達時間Ｔｂが到達時間余裕判定の閾値Ｔｔｈより小でＹＥＳとなる場合にステップＧ６に進む。
【００６１】
ＥＣＵ１は、ステップＧ４あるいはＧ５でＹＥＳと判断した場合は、車両挙動変化抑制のための制御処理が必要である場合であるから、次のステップＧ６で、車両挙動変化抑制必要フラグをＯＮさせる。ＥＣＵ１は、次のステップＧ７で、車速変化量ΔＶが「０」以上であるか否かを判断する。ＥＣＵ１は、ステップＧ７でＹＥＳの場合すなわち車速変化量ΔＶが「０」以上である場合には減速の抑制が必要となる状況であるから、次のステップＧ８で、加速実施フラグをＯＦＦにする。また、ＥＣＵ１は、ステップＧ７でＮＯの場合すなわち車速変化量ΔＶが「０」未満である場合には加速の抑制が必要となる状況であるから、ステップＧ９で、加速実施フラグをＯＮにする。
【００６２】
また、ＥＣＵ１は、前述のステップＧ５でＮＯと判断した場合は、前方到達時間Ｔｆ、後方到達時間Ｔｂが共に到達時間余裕判定の閾値Ｔｔｈ以上である状況であるので、到達時間Ｔｆ、Ｔｂに余裕があることがわかる。この場合には、ＥＣＵ１は、車両挙動抑制のための制御処理は不要であるから、ステップＧ１０で車両挙動変化抑制必要フラグをＯＦＦに設定し、続くステップＧ１１で加速実施フラグをＯＦＦに設定する。
ＥＣＵ１は、上記したステップＧ８、Ｇ９、Ｇ１１のいずれかを実施した後はプログラムを終了する。
【００６３】
次に、上記した図１１の車両挙動変化抑制要否判定の処理で、ステップＧ１で実施した前方到達時間算出の処理内容について、図１２のフローチャートを参照して説明する。ＥＣＵ１は、ステップＨ１で、自車Ｘが走行する経路の前方に存在する他車や他の既知の障害物などに相当する前方障害物Ｙまでの距離Ｌｆ１をドライビングサポートＥＣＵ６から取得する。
【００６４】
次に、ＥＣＵ１は、ステップＨ２で、自車Ｘが走行する経路の前方に存在するカーブの入口Ｃまでの距離Ｌｆ２をカーナビゲーション装置７から取得する。続いて、ＥＣＵ１は、ステップＨ３で、自車Ｘが走行する経路の前方に存在する右左折交差点Ｐまでの距離Ｌｆ３をカーナビゲーション装置７より取得する。さらに、ＥＣＵ１は、ステップＨ４で、自車Ｘが走行する経路の前方に存在する一時停止Ｑまでの距離Ｌｆ４をドライビングサポートＥＣＵ６より取得する。
【００６５】
なお、ＥＣＵ１は、上記したステップＨ１〜Ｈ４で取得した距離Ｌｆ１〜Ｌｆ４のデータを、今回Ｌｆ１〜Ｌｆ４として記憶し、前回取得した距離Ｌｆ１〜Ｌｆ４のデータは前回Ｌｆ１〜Ｌｆ４として記憶する。
【００６６】
次に、ＥＣＵ１は、ステップＨ５〜Ｈ８で、上記のようにして取得した距離Ｌｆ１〜Ｌｆ４について、それぞれの到達時間Ｔｆ１〜Ｔｆ４を算出する。この場合、ＥＣＵ１は、まず一時的な値Ｔｔｆ１を次式に示すように、今回取得した距離Ｌｆ１の値を、前回Ｌｆ１と今回Ｌｆ１との差の値つまり（前回Ｌｆ１−今回Ｌｆ１）で得られる値を所定時間で移動する距離で割り算をすることで算出する。
Ｔｔｆ１＝今回Ｌｆ１／（前回Ｌｆ１−今回Ｌｆ１）
【００６７】
この方法で算出するＴｔｆ１の値が正の値になる場合は、前方障害物Ｙと自車Ｘの間の距離が、時間と共に狭まっていく状況である。この場合には、ＥＣＵ１は、前方到達時間Ｔｆ１の値としてＴｔｆ１を設定する。
Ｔｆ１＝Ｔｔｆ１
【００６８】
また、Ｔｔｆ１の値が負の値になる場合は、前方障害物Ｙが車両であってその走行速度が自車Ｘよりも速い場合に、時間と共に離間していく状況である。この場合には、ＥＣＵ１は、次式に示すように、前回到達時間Ｔｆ１に、今回離れた分の時間としてＴｔｆ１の値の絶対値を加算することで今回の前方到達時間Ｔｆ１とする。
Ｔｆ１＝前回Ｔｆ１＋｜Ｔｔｆ１｜
なお、上記の前方到達時間Ｔｆ１の算出過程は、図１２中のステップＨ５では、簡易的に右辺の値の符号が負の場合であるとして示しているが、上記と同じ計算過程であることを表現している。
【００６９】
また、他の前方到達時間Ｔｆ２〜Ｔｆ４については、ＥＣＵ１は、上記した前方到達時間Ｔｆ１を求めるのと同様にして、次式にしたがって、算出する。
Ｔｆ２＝今回Ｌｆ２／（前回Ｌｆ２−今回Ｌｆ２）
Ｔｆ３＝今回Ｌｆ３／（前回Ｌｆ３−今回Ｌｆ３）
Ｔｆ４＝今回Ｌｆ４／（前回Ｌｆ４−今回Ｌｆ４）
【００７０】
以上のようにして前方到達時間Ｔｆ１〜Ｔｆ４を算出した後、ＥＣＵ１は、ステップＨ９で、これらの値のうち最も短い時間となる値をＭＩＮ関数を用いて選択し、これを前方到達時間Ｔｆとして設定した後、プログラムを終了する。
【００７１】
次に、前述した図１０の車両挙動変化監視処理のステップＦ９での車両挙動変化抑制可否判定の処理の内容について図１３を参照して説明する。この処理は、図１０のステップＦ８でＹＥＳと判断された場合すなわち車両挙動変化抑制必要フラグがＯＮである場合に、抑制制御を行うことができるか否かを判断する処理である。
【００７２】
ＥＣＵ１は、ステップＪ１で、車両挙動変化の抑制可フラグをＯＦＦに設定し、さらに「制御可能な状態」の順番を示すインデックスｊに「０」を代入する。車両挙動変化の抑制可フラグをＯＦＦに設定するのは、この後のフローで最終的に車両挙動変化抑制可となる状況が無かった場合にＯＦＦの設定状態に保持させるためである。また、インデックスｊを「０」にするのは、図３に示した「制御可能な状態」を表わすテーブルの先頭を指すようにするためである。
【００７３】
次に、ＥＣＵ１は、ステップＪ２で、「制御可能な状態」の順番を示すインデックスｊが表わす「制御可能な状態」の現在状態が検出条件領域内か否かを判定する。これは、現在の状態が対象としているダイアグの検出条件領域内にあるか否かを判断するもので、例えばエンジン回転数であれば、検出条件が１５００から３０００ｒｐｍであれば、その範囲内に現在の状態があるかどうかを判定するものである。ＥＣＵ１は、ステップＪ２でＹＥＳの場合には、ステップＪ３に進み、加速実施フラグがＯＮであるか否かを判定する。
【００７４】
加速実施フラグがＯＮであるか否かは、図１１に示した車両挙動変化抑制要否判定の処理のステップＧ９で加速実施フラグをＯＮに設定しているかどうかを判断するものである。ＥＣＵ１は、ステップＪ３でＹＥＳの場合には、ステップＪ４に進み、抑制変化量として加速必要時変化量を設定してステップＪ６に進む。また、ＥＣＵ１は、ステップＪ３でＮＯの場合には、ステップＪ５に進み、抑制変化量として減速必要時変化量を設定してステップＪ６に進む。ここで、加速必要時変化量および減速必要時変化量の値は、各「制御可能な状態」に対応して図４に示した量の値を設定するものである。
【００７５】
次に、ＥＣＵ１は、ステップＪ６で、「制御可能な状態」の順番を示すインデックスｊが表わす「制御可能な状態」の現在状態値に、上記ステップＪ４あるいはＪ５で設定した抑制変化量を加えても検出条件領域内であるか否かを判断する。続いて、ＥＣＵ１は、ステップＪ７で、加減速の変化後時間が加減速変化後の禁止時間より大であるか否かを判定する。ここで、加減速変化後の禁止時間は、各制御可能な状態に対応して図４に示した時間が設定されている。
【００７６】
ＥＣＵ１は、上記したステップＪ６でＹＥＳと判断され、続くステップＪ７でもＹＥＳと判断された場合には、対象とするダイアグについて、抑制変化量を加えても検出条件領域内で、かつ加減速変化後禁止時間より大であることが判定できたことになる。この場合には、ＥＣＵ１は、ステップＪ８に進み、「制御可能な状態」の順番を示すインデックスｊが表わす「制御可能な状態」の制御目標値を、現在値に抑制変化量を加えた値に設定する。続いてＥＣＵ１は、ステップＪ９で、加減速変化後時間を「０」に設定し、さらにステップＪ１０で、車両挙動変化抑制可フラグをＯＮに設定してプログラムを終了する。
【００７７】
一方、ＥＣＵ１は、ステップＪ２あるいはステップＪ６でＮＯと判断した場合すなわち検出条件領域外であると判断した場合や、あるいはステップＪ７でＮＯと判断した場合すなわち加減速変化後時間が加減速変化後禁止時間以下であると判定した場合には、ステップＪ１１に進む。ＥＣＵ１は、ステップＪ１１で、「制御可能な状態」の順番を示すインデックスｊを「１」インクリメントし、続くステップＪ１２で、「制御可能な状態」の順番を示すインデックスｊが「制御可能な状態」の数Ｎ２を超えているか否かを判定する。
【００７８】
ＥＣＵ１は、ステップＪ１２でＹＥＳの場合すなわちインデックスｊの値が「制御可能な状態」の数Ｎ２を超えている場合には、プログラムを終了する。また、ＥＣＵ１は、ステップＪ１２でＮＯの場合すなわち「制御可能な状態」の数Ｎ２を超えていない場合には、ステップＪ２に戻り次の「制御可能な状態」に対し、上記と同様のステップを繰り返し実施する。
【００７９】
以上のようにして、自動運転を実施している期間中に、ＥＣＵ１により、検出未完のダイアグについてそのレート達成度の改善をするように自動的に制御される。この場合、法規要求レートの変更が有る場合には、その法規要求レートの設定を変更設定することで、自動的にその変更した法規要求レートに対応したレート達成度の改善を実施するようになる。
【００８０】
このような本実施形態によれば次のような効果を得ることができる。
ＥＣＵ１により、レート達成度が低い故障診断項目から優先して検出条件設定するため、検出機会を増やすべきである故障診断項目のレートを増加させることが可能となる。
【００８１】
また、ＥＣＵ１により、レート達成度が所定値に到達した後は検出条件設定をしないようにすることで、自動運転制御に対する影響を抑制可能となる。
さらに、ＥＣＵ１により、吸気温など、制御不可な状態の検出条件が不成立の場合は、その故障診断項目の検出条件設定を取りやめ、次に切り替えることで、その他故障診断項目のレートが増加可能となる。
【００８２】
そして、ＥＣＵ１により、故障診断検出条件設定を行うことで車両挙動変化が発生する場合に、そのまま車両挙動変化させて良いか否かを判定した結果を制御に反映するため、故障診断検出条件設定時に車両挙動変化が発生した場合に適切な制御可能となる。
【００８３】
ＥＣＵ１により、車両挙動変化を発生させた故障診断の検出条件を成立させつつドラビリ悪化を抑制可能となる。
また、上記方法では抑制が難しい場合に、ＥＣＵ１により、車両挙動変化を抑制しつつ、レート達成度が次に低い故障診断項目の検出条件設定を行えるようになる。
【００８４】
ＥＣＵ１により、前方障害物までの到達予想時間を判断材料に車両挙動変化の抑制要否を判断可能となる。この場合、ＥＣＵ１は、カーブまでの到達予想時間を判断材料に車両挙動変化の抑制要否を判断可能となる。また、ＥＣＵ１は、右左折までの到達予想時間を判断材料に車両挙動変化の抑制要否を判断可能となる。また、ＥＣＵ１は、一時停止までの到達予想時間を判断材料に車両挙動変化の抑制要否を判断可能となる。さらに、ＥＣＵ１は、後続車までの距離を判断材料に車両挙動変化の抑制要否を判断可能となる。
【００８５】
（他の実施形態）
なお、本発明は、上述した一実施形態のみに限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能であり、例えば、以下のように変形または拡張することができる。
【００８６】
レート達成度は、法規レートに対して現在レートの割合を示す指標としているが、法規レートにかぎらず、他の達成すべき必要なレートが設定される場合にも適用することができる。
【符号の説明】
【００８７】
図面中、１は動力源制御ＥＣＵ、２はダイアグ制御要求算出部（演算処理部）、３は動力源制御部、４はダイアグ制御部、５は車両挙動変化監視部、６はドライビングサポートＥＣＵ、７はカーナビゲーション装置である。
【図１】
0006443299.tif 000002
【図２】
0006443299.tif 000003
【図３】
0006443299.tif 000004
【図４】
0006443299.tif 000005
【図５】
0006443299.tif 000006
【図６】
0006443299.tif 000007
【図７】
0006443299.tif 000008
【図８】
0006443299.tif 000009
【図９】
0006443299.tif 000010
【図１０】
0006443299.tif 000011
【図１１】
0006443299.tif 000012
【図１２】
0006443299.tif 000013
【図１３】
0006443299.tif 000014
【図１４】
0006443299.tif 000015