JP2006090356A - 車両制御装置、および処理負荷制御プログラム。 - Google Patents
車両制御装置、および処理負荷制御プログラム。 Download PDFInfo
- Publication number
- JP2006090356A JP2006090356A JP2004273402A JP2004273402A JP2006090356A JP 2006090356 A JP2006090356 A JP 2006090356A JP 2004273402 A JP2004273402 A JP 2004273402A JP 2004273402 A JP2004273402 A JP 2004273402A JP 2006090356 A JP2006090356 A JP 2006090356A
- Authority
- JP
- Japan
- Prior art keywords
- task
- time
- margin time
- execution
- margin
- 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.)
- Withdrawn
Links
Images
Abstract
【課題】 車両制御用のタスクを繰り返す車両制御装置において、新規な方法でタスクの込み合い度合いを軽減する。
【解決手段】 車両制御装置は、AT制御タスクの、前回の実行終了時から今回の実行開始時までの余裕時間を特定し(ステップ420)、その特定した余裕時間が第1のしきい値時間より長いか短いかを判定し(ステップ430)、短い場合には、高負荷状態の持続時間に比例するタイマ値が所定の整数Mを超えず、かつ余裕時間が第2のしきい値時間(>第1のしきい値時間)以下である限り、AT制御タスク300の処理内容を一部省略して簡略化させることで、AT制御タスク300の処理負荷を通常よりも下げるための処理を実行する(ステップ440)。
【選択図】 図6
【解決手段】 車両制御装置は、AT制御タスクの、前回の実行終了時から今回の実行開始時までの余裕時間を特定し(ステップ420)、その特定した余裕時間が第1のしきい値時間より長いか短いかを判定し(ステップ430)、短い場合には、高負荷状態の持続時間に比例するタイマ値が所定の整数Mを超えず、かつ余裕時間が第2のしきい値時間(>第1のしきい値時間)以下である限り、AT制御タスク300の処理内容を一部省略して簡略化させることで、AT制御タスク300の処理負荷を通常よりも下げるための処理を実行する(ステップ440)。
【選択図】 図6
Description
本発明は、車両制御用タスクを実行する車両制御装置、および車両制御用タスクの処理負荷を制御するプログラムに関する。
車両制御の分野では、1つの車両制御装置で複数の車両制御を実現するため、車両制御装置内が、それぞれの制御用のタスクをタイムシェアリング方式で実行する技術が知られている。複数の車両制御としては、例えば、オートマチックトランスミッション制御、エンジン点火制御、ブレーキ制御、ステアリング制御等がある。タイムシェアリング方式とは、車両制御装置の処理を時間で区切り、各時間区間を複数のタスクのうちのいずれか1つの実行に割り当てる方式である。車両制御では、このタイムシェアリング方式を用いることで、各車両制御用のタスクが、決められたタイミングで、車両制御装置によって繰り返し実行されるようになる。例えば、エンジン点火制御はエンジン回転数に反比例する間隔で、オートマチックトランスミッション制御は一定時間間隔で、それぞれ繰り返し実行されることが考えられる。
また、このようなタイムシェアリング方式においては、実行されるタスク毎に優先度が決められおり、複数のタスクが同時に実行されるタイミングとなってしまった場合には、優先度の高い方が先に実行されるようになっている場合が多い。
一方、車両制御の分野においては、各制御仕様の複雑化に伴い、それらの制御のためのタスクの実行に費やされる処理時間、すなわちタスクの処理負荷が、増大する傾向にある。さらに、1つの車両制御装置で実行される各タスクの実行時間が長くなると、処理が込み合い、優先度の低い処理が実行を待たされることが多くなる。このようなことが原因となって、ある車両制御用のタスクの1回分の実行が終了する前に、そのタスクの次の実行タイミングがやってくる場合がある。このような場合、新たなタスクの実行がキャンセルされるタスク抜け現象が発生するおそれがある。
特に、最近のオートマチックトランスミッション制御のためのタスクは、多段化に伴う処理の複雑化が顕著となっており、これが変速時の処理負荷の増大とあいまって、タスク抜けの要因となっている。オートマチックトランスミッション制御のタスク抜けは、変速ショック等のドライバビリティの悪化や、オートマチックトランスミッションシステムの耐久性の悪化を招きやすい。
また、1つの車両制御装置で1種類の車両制御だけを、決められたタイミングで繰り返し実行する場合であっても、車両の走行状況によっては、そのタスクの処理負荷が高くなってしまい、ある回の当該車両制御用のタスクが終了する前に、次の回のタスクの実行タイミングが来てしまう場合がある。これは、1つのタスクによって車両制御装置内のタスクの込み合い度が増大する例である。
本発明は上記点に鑑み、車両制御用のタスクを繰り返す車両制御装置において、新規な方法でタスクの込み合い度合いを軽減することを目的とする。
上記目的を達成するための本発明の特徴は、ある車両制御用タスクの終了から、そのタスクの開始までの余裕時間に基づいて、そのタスクの実行における処理内容を変化させることにある。
具体的には、本発明の車両制御装置は、ある車両制御用のタスクXを所定のタイミングで繰り返し実行し、そのタスクXの、ある回の実行終了時から次の回の実行開始時までの余裕時間を特定し、その特定した余裕時間に基づき、当該余裕時間が所定のタスク混雑基準を満たす場合におけるタスクXの処理内容が、当該余裕時間が所定のタスク混雑基準を満たさない場合におけるタスクXの処理内容よりもその処理負荷が低いものとなるよう、前記タスクXの処理内容を変更することを特徴とする。
このようになっているので、車両制御装置は、タスクXの余裕時間が短くなってタスク混雑基準を満たすようになると、その処理負荷がより低くなるよう、タスクXの処理内容を変化させるので、タスクの込み合い度合いが軽減される。
なお、ここでいう「所定のタイミング」とは、「あらかじめ定められたタイミング」という意味である。そして、この「あらかじめ」とは、「その定められるタイミングでタスクXが実行開始される前に」という意味である。したがって、あらかじめ定められる時期は、この車両制御装置の製造時でもよいし、車両制御装置の作動中に、計算または物理量の検出によって定められてもよい。
また、「所定のタスク混雑基準を満たす」とは、あらかじめ定められた余裕時間の長さに関する基準であり、例えば、その基準に照らす対象の余裕時間が一定のしきい値時間より短いならばその基準を満たす場合、その基準に照らす対象の余裕時間が、所定の計算規則に基づいて変化するしきい値時間より短いならばその基準を満たす場合、その基準に照らす対象の余裕時間が、所定の取得方法によって取得される不規則なしきい値時間より短いならばその基準を満たす場合等が、所定の混雑基準を満たす場合に該当する。
また、車両制御装置がこのようなタスクXの処理内容の変更を行うのは、当該余裕時間が、車両制御用タスクの、ある回の実行終了時刻から、タスク抜けを経ない、次の回の実行開始時刻までの余裕時間である場合であってもよい。タスク抜けを経た余裕時間は、実際は処理負荷を低減しなければならないような状況であるにも関わらず、長い時間となってしまうので、このように、タスク抜けを経ない余裕時間に基づく制御を行うことで、より精度の高い制御を行うことができる。
また、オートマチックトランスミッション制御においては、変速中においてはその制御内容を簡略化することは好ましくない場合があるという観点から、タスクXがオートマチックトランスミッション制御用タスクであるときは、車両制御装置が、現在車両が変速中でないことに基づいて、上記のようなこのようなタスクXの処理内容の変更を行うようになっていてもよい。
また、前記所定のタスク混雑基準を満たすとは、車両の走行状態に応じて変化するしきい値より短いことをいうようになっていてもよい。このようになっていることで、車両の走行状態に応じた制御を行うことができるようになる。
また、オートマチックトランスミッション制御においては、変速中と非変速中とでその処理負荷が大きく異なるという観点から、タスクXがオートマチックトランスミッション制御用タスクであるときは、所定のタスク混雑基準に照らす前記余裕時間は、過去のシフトアップ時における余裕時間に基づく時間としてもよい。このようになっていることで、処理負荷が非常に高い可能性の高いシフトチェンジ時における余裕時間を判断基準として用いることで、よりタスクの込み合い度合いを軽減することができる。
また、所定のタスク混雑基準に照らす前記余裕時間は、過去の複数のシフトアップ時における複数の余裕時間に基づく代表的な余裕時間となっていてもよい。このように、過去の複数のシフトアップ時における複数の余裕時間に基づいた判断を行うことで、余裕時間についての精度がより高まる。
なお、代表的な余裕時間とは、その複数の余裕時間の最小値、最小値の次に小さい値、平均値等を含む概念である。
また、所定のタスク混雑基準に照らす余裕時間は、過去のシフトアップ時における余裕時間をそのシフトアップ前の余裕時間から減算した差分を、最新の余裕時間から減算した時間であってもよい。このようになっていることで、過去のシフトアップ前からシフトアップ時への遷移における余裕時間の変化に基づいて、次回のシフトアップ時における余裕時間を推定することができる。
また、所定のタスク混雑基準に照らす前記余裕時間は、過去の複数のシフトアップ時における余裕時間をそのシフトアップ前の余裕時間から減算した複数の差分の代表値を、最新の余裕時間から減算した時間であってもよい。このように、過去のシフトアップ前からシフトアップ時への遷移における余裕時間の変化を複数用いることができるので、余裕時間についての精度がより高まる。
また、車両制御装置は、タスクXの実行開始タイミングの直前に、現在時刻と、前回の前記タスクXの終了時刻との比較に基づいて、前記余裕時間を特定し、この特定した余裕時間に基づき、当該余裕時間が所定のタスク混雑基準を満たす場合における前記タスクXの処理内容が、当該余裕時間が所定のタスク混雑基準を満たさない場合におけるタスクXの処理内容よりもその処理負荷が低いものとなるよう、当該余裕時間が特定された直後のタスクXの処理内容を変更するようになっていてもよい。
このようになっていることで、現在時刻を余裕時間の特定に用いることができるので、余裕時間を特定する時期が、タスクXの実行開始タイミングの直前でない場合に比べ、余裕時間を特定する処理が簡易なものとなる。
また、本発明は、ある車両制御用のタスクXを所定のタイミングで繰り返し実行するコンピュータに、タスクXの、ある回の実行終了時から次の回の実行開始時までの余裕時間を特定する機能、および、特定された余裕時間に基づき、当該余裕時間が所定のタスク混雑基準を満たす場合におけるタスクXの処理内容が、当該余裕時間が所定のタスク混雑基準を満さない場合におけるタスクXの処理内容よりもその処理負荷が低いものとなるよう、タスクXの処理内容を変更する機能を実現させる処理負荷制御プログラムとしても実現可能である。
(第1実施形態)
以下、本発明の第1実施形態について説明する。図1に、本実施形態に係る車両制御装置1のハードウェア構成および車両制御装置1が車両に搭載された場合のセンサ・アクチュエータ2〜8との接続関係を示す。車両制御装置1は、RAM11、ROM12、I/O13、およびCPU(コンピュータに相当する)14を有している。
以下、本発明の第1実施形態について説明する。図1に、本実施形態に係る車両制御装置1のハードウェア構成および車両制御装置1が車両に搭載された場合のセンサ・アクチュエータ2〜8との接続関係を示す。車両制御装置1は、RAM11、ROM12、I/O13、およびCPU(コンピュータに相当する)14を有している。
I/O13は、エンジンのクランク角を検出して信号として出力するクランク角センサ2、車両のアクセルスロットル開度を検出して信号として出力するスロットルセンサ3、車速パルスに基づく車速信号を出力する車速センサ4等、車両の物理状態を検出するセンサからの信号を受けると、その信号をデジタルデータとしてCPU14に出力する。またI/O13は、CPU14から受けた制御信号を、エンジン内で燃料噴射を行うインジェクタ5、車両のシフト位置を変更するオートマチックトランスミッション6、車両の制動を制御するブレーキ7、エンジンの点火を行うイグナイタ8等の、車両制御のためのアクチュエータに出力する。
CPU14は、ROM12に記憶されたプログラムを実行することで、車両制御のための各種タスクを実行するようになっており、その実行の際、I/O13を介したセンサ2〜4等からの信号等に基づいた処理を行い、その処理の必要に応じてRAM11にデータを書き込み、RAM11、ROM12からデータを読み出し、I/O13を用いてアクチュエータ5〜8等に制御信号を出力する。
図2に、CPU14がROM12からプログラムを読み出して実行するタスクの一例を示す。CPU14は、エンジン制御タスク100、ブレーキ制御タスク200、AT制御タスク300、負荷状態判定タスク400を実行する。
エンジン制御タスク100は、クランク角センサ2からの信号に基づいて特定したクランク角、およびスロットルセンサ3からの信号に基づいて特定したスロットル開度に基づいて、エンジンの点火タイミング、燃料噴射量等を算出し、その算出結果に基づいて、インジェクタ5、イグナイタ8に対して制御信号を出力するためのタスクである。
ブレーキ制御タスク200は、スロットルセンサ3からの信号、および図示しないブレーキペダルセンサからの信号に基づいて、車両の制動量を算出し、その算出結果に基づいてブレーキ6に制御信号を出力するためのタスクである。
AT制御タスク300は、クランク角センサ2、スロットルセンサ3、および車速センサ4等からの信号に基づいて、現在とるべきシフト位置を算出し、その算出結果に基づいて、オートマチックトランスミッション7に制御信号を出力するためのタスクである。このAT制御タスク300の処理については以降で詳述する。
負荷状態判定タスク400は、AT制御タスク300の負荷状態、具体的にはAT制御タスク300のある回の実行終了時から次の回の実行開始時までの余裕時間を特定し、その特定結果に基づいて、AT制御タスク300の処理内容を切り替えるためのタスクである。このAT制御タスク300の詳細についても後述する。
また、CPU14は、その他の各種タスク1〜Nを実行する。
CPU14は、このような複数のタスクを、タイムシェアリング方式で実行する。タイムシェアリング方式とは、CPU14の実行時間を区切り、その区切った各時間区間を、複数のタスクのうちのいずれか1つの実行に割り当てる方式である。図2に、本実施形態におけるCPU14の、各タスクに対する時間区間の割り当て状況を示す。なお、簡単のため、図3においては、エンジン制御タスク100、ブレーキ制御タスク200、AT制御タスク300、負荷状態判定タスク400、およびタスクNについてのCPU14の時間区間割り当てのみを示す。
この図においては、左から右への向きが時間の流れの向きである。そして、上段に横一列に並ぶ矩形21〜24が、エンジン制御タスク100が実行される時間帯を示している。また、その下の段に横一列に並ぶ矩形25〜28が、ブレーキ制御タスク200が実行される時間帯を示している。また、その下の段に横一列に並ぶ矩形29、30が、タスクNが実行される時間帯を示している。また、その下の段に横一列に並ぶ矩形31、32が、負荷状態判定タスク400が実行される時間帯を示している。また、その下の段に横一列に並ぶ矩形33、34が、AT制御タスク300が実行される時間帯を示している。
この図に示すように、各タスクは、その実行時間中においては独占的にCPU14を使用するようになっており、それぞれ規定のタイミングで繰り返し実行されるようになっている。
例えば、本実施形態においては、エンジン制御タスク100は、エンジンの回転周期と同じ周期で繰り返し実行されるようになっている。また、ブレーキ制御タスク200は、エンジンの回転と相関の高い周期(例えば車速、ブレーキペダルの踏み込み量等に基づく周期)で繰り返し実行されるようになっている。また、タスクN、AT制御タスク300および負荷状態判定タスク400は、一定時間間隔(例えば十数ミリ秒程度)で実行されるようになっている。そして、負荷状態判定タスク400は、AT制御タスク300の実行直前に実行開始、実行終了が行われ、AT制御タスク300は、負荷状態判定タスク400の終了に続いて実行開始される。
また、各タスクの1回の実行に要する時間は、通常1ミリ秒程度である。ただし、負荷状態判定タスク400は、その実行開始から終了までの時間が、AT制御タスク300に比べて(例えば10分の1程度に)短い。
また、各タスクにはそれぞれ優先度が、(例えばROM12に優先度情報が記憶されることで)割り当てられている。そして、あるタスクの実行中に別のタスクの実行開始タイミングが来た場合は、優先度の高い方のタスクの実行が先に実行され、その優先度の高いタスクが終了してから、優先度の低い方のタスクの実行が開始、または再開されるようになっている。このようなタスクの実行タイミングや優先度に基づいた、タスクの実行の制御は、CPU14が図示しないプログラムであるオペレーティングシステムを実行することで実現する。
本実施形態においては、負荷状態判定タスク400が最も優先度が高く、また、AT制御タスク300よりもエンジン制御タスク100、ブレーキ制御タスク200、タスクNの方が優先度が高い。
以下、CPU14が実行するAT制御タスク300、負荷状態判定タスク400の詳細について説明する。本実施形態においては、AT制御タスク300の処理内容が、AT制御タスク300のある回の実行終了から次の回の実行開始までの時間、すなわち図3の矢印35で示す余裕時間が、あるしきい値時間(例えば100マイクロ秒)より大きいか否かで、変化するようになっている。そして、その変化の制御は、CPU14が、負荷状態判定タスク400を実行することで実現される。
図4に、AT(オートマチックトランスミッション、以下同じ)制御タスク300のフローチャートを示す。CPU14は、AT制御タスク300の実行を開始すると、まずステップ310で、処理タスク実行中フラグの値をオンに変更する。処理タスク実行中フラグは、RAM11の一定の記憶領域に割り当てられた変数であり、他のプログラムからも参照できるようになっている。
続いてステップ320では、AT制御のためのメイン処理を行う。このメイン処理については後述する。このステップ320が、AT制御タスク300の処理時間のほとんどを占める。したがって、ステップ310はAT制御タスク300の前処理であり、ステップ340以降はAT制御タスク300の後処理であると言える。
続いてステップ340で、現在時刻をRAM11の一定の記憶領域に記憶させる。なお、ここで記憶される現在時刻は、AT制御タスク300の実行終了時刻と実質的に同じである。この値は、他のプログラムからも参照可能である。
続いてステップ350で、上述したタスク実行中フラグをオフにし、その後AT制御タスク300の実行を終了する。
このように、CPU14は、AT制御タスク300の実行開示時に、タスク実行中フラグをオンにし、実行終了時に、その終了時刻を記憶させ、タスク実行中フラグをオフとする。このようになっていることで、タスク実行中フラグは、AT制御タスク300の実行が始まってから終了するまでの時間帯ではオンとなり、ある回のAT制御タスク300の実行が終了してから次の回のAT制御タスク300が始まるまでの時間帯ではオフとなる。また、RAM11は、終了しているAT制御タスク300のうち、最後の回のAT制御タスク300の終了時刻を記憶するようになる。
ここで、CPU14が実行するタスクの込み合い度合いが高くなった場合について説明する。タスクの込み合い度合いが高くなる場合としては、例えばエンジン回転数が高くなり、それにつれ、エンジン制御タスク100等の、エンジン回転と同期して実行されるタスクの実行頻度が増大する場合がある。図5に、このような場合における、CPU14内でのタスク実行割り当てタイミングの一例を、図3と同じ形式で示す。矩形41〜51に示す通り、エンジン制御タスク100、ブレーキ制御タスク200の実行の頻度が、図3に示した場合よりも増えている。そして、例えば矩形43に示すエンジン制御タスク100の実行タイミングに、矩形56で示すAT制御タスク300の実行が終了していないため、優先度の低いAT制御タスク300の実行が中断し、さらに、矩形43のエンジン制御タスク100の実行が終了した後には、矩形49に示すブレーキ制御タスク200、および矩形44に示すエンジン制御タスク100の実行が続き、その間もAT制御タスク300の実行が中断したままとなる。そして矩形44のエンジン制御タスク100の終了の後、中断したAT制御タスク300の実行が、タイミング36において再開され、矩形57に示す時間帯における残りの処理の実行を経て、タイミング37において終了する。
このように、タスクの込み合い度合いの増大により、AT制御タスク300の実行が、矢印38の示す期間だけ中断することにより、その回のAT制御タスク300の実行終了が遅れることになる。すると、矢印39に示すように、その回のAT制御タスク300の実行終了から、次の回のAT制御タスク300の実行開始までの期間が短くなる。このようなタスクの込み合い度合いが極度に大きくなると、AT制御タスク300の実行終了前に、次の回のAT制御タスク300の実行開始タイミングが来てしまう場合がある。このような場合、新たな回のAT制御タスク300の実行は行われないようになっている。このような現象をタスク抜けという。
次に、負荷状態判定タスク400の処理内容について説明する。図6に、負荷状態判定タスク400のフローチャートを示す。CPU14は、負荷状態判定タスク400の実行を開始すると、まずステップ410で、AT制御タスク300のタスク抜けが起こる否かを判定する。タスク抜けが起こるとは、この負荷状態判定タスク400の実行直後に実行されるAT制御タスク300についてのタスク抜けがあることをいう。この判定は、具体的には、RAM11中のタスク実行中フラグがオンであるか否かで判定する。タスク実行中フラグがオンであれば、現在もAT制御タスク300の実行が終了していないことになり、この直後に新たなAT制御タスク300は実行できず、タスク抜けが発生する。また、タスク実行中フラグがオフであれば、現時点でAT制御タスク300の実行は終了しているので、この直後に新たなAT制御タスク300が実行でき、タスク抜けが発生しないことになる。
図7に、タスク実行フラグの時間的変化と、タスク抜け判定の実行タイミング61〜64との関係を示すタイミング図を示す。このタイミング図では、時間の流れの向きは左から右への向きである。また、実線60が、タスク実行中フラグの時間変化を示している。負荷状態判定タスク400の実行タイミング61、62、63においては、タスク実行中フラグはオフからオンに立ち上がる直前となっているので、タスク抜けはないと判定され、AT制御タスク300の実行が長引いた場合の負荷状態判定タスク400の実行タイミング64においては、タスク実行中フラグがオンのままなので、タスク抜けがあると判定される。
タスク抜けがある場合、負荷状態判定タスク400の実行は終了し、タスク抜けがない場合、続いてステップ420を実行する。
ステップ420では、前回のAT制御タスク300の終了時から次のAT制御タスク300の実行開始までの余裕時間を計測する。具体的には、現在時刻から、RAM11に記憶された前回のAT制御タスク300の終了時刻を減じた結果の時間間隔を、余裕時間とする。なお、負荷状態判定タスク400の終了後すぐにAT制御タスク300の実行が開始されるので、現在時刻は、実質的にAT制御タスク300の実行開始時刻と同じであると言える。このようにして算出された余裕時間は、図3および図5におけるAT制御タスク300終了時刻t1から、負荷状態判定タスク400実行時刻t2までの時間間隔に相当する。
続いてステップ430では、ステップ420で特定した余裕時間に基づいて、AT制御タスク300の処理内容を簡略化するか否かの判定を行う。具体的には、特定した余裕時間と、所定の第1のしきい値時間(例えば100マイクロ秒、10マイクロ秒等)とを比較し、余裕時間がその第1のしきい値時間以下であれば、簡略化すると判定し、高負荷履歴フラグをオンにする。高負荷履歴フラグは、RAM11の所定の記憶領域に記憶される変数であり、他のタスクや、他の実行回における自身のタスクから参照可能となっている。なお、余裕時間がその所定のしきい値より大きい場合は、高負荷履歴フラグの値を変更しない。以下、この高負荷履歴フラグの値がオンである状態を高負荷状態であるとして説明する。
続いてステップ440では、変速制御切り替え処理を実行し、その後にこの負荷状態判定タスク400の実行を終了する。
図8に、ステップ440の変速制御切り替え処理の詳細のフローチャートを示す。変速制御切り替え処理においては、CPU14は、まずステップ441で、現在のRAM11中の高負荷履歴フラグがオンであるか否かを判定する。オンである場合は続いてステップ442を実行し、オンでない場合は続いてステップ451を実行する。
ステップ442では、変速出力禁止フラグをセットする、すなわち、オンにする。変速出力禁止フラグは、RAM11中の一定の領域に割り当てられた変数であり、他のタスクや、他の実行回における自身のタスクから参照可能となっている。この変速出力禁止フラグをオンにすることは、後述するように、AT制御タスク300の処理の一部としての変速出力処理を禁止することに相当する。したがって、このステップ442の処理は、AT制御タスク300の処理内容を一部省略して簡略化させることで、AT制御タスク300の処理負荷を通常よりも下げるための処理である。
続いてステップ443では、RAM11に記憶されるタイマ値が所定の整数M以下であるか否かを判定する。M以下であれば続いてステップ444を実行し、Mを超えていれば続いてステップ451を実行する。
ステップ444では、現在のタイマ値の値を1だけ増加させ、続いてステップ445で、ステップ420にて特定した余裕時間が所定の第2のしきい値時間W以下であるか否かを判定する。ここで、所定の第2のしきい値時間は、上述の第1のしきい値時間より長い時間である。第2のしきい値時間以下であれば、続いてステップ446を実行し、第2のしきい値時間を超えていれば、続いてステップ447を実行する。
ステップ446では、処理Aを実行する。図9に、処理Aのフローチャートを示す。この処理Aでは、最初に1を代入した(ステップ4462)変数nを、所定の最大値Jを超えるまで1毎にインクリメントさせながら(ステップ4466、4468)、その変化する変数nの各値毎に、現在のタイマ値と、所定のしきい値dn(n=1、2、…、J)とを比較し(ステップ4464)、タイマ値の方が大きい場合、制御n(n=1、2、…、J)の処理中止フラグをセットする(ステップ4464)。なお、しきい値dn間には、d1<d2<…<dJという関係がある。また、J個ある制御nの処理中止フラグは、RAM11に記憶される変数であり、他のタスクや、他の実行回における自身のタスクから参照可能となっている。
なお、この処理Aでセットされる処理中止フラグは、後述するように、AT制御タスク300の処理の一部の実行を省略させるためのフラグである。したがって、処理Aは、AT制御タスク300の処理内容を一部省略して簡略化させることで、AT制御タスク300の処理負荷を通常よりも下げるための処理である。
ステップ447では、変速出力禁止フラグをクリアする、すなわち、オフにする。続いてステップ448でタイマ値をゼロにし、ステップ449で高負荷履歴フラグをクリアし、ステップ450で制御1〜制御Jのすべての処理中止フラグをクリアし、変速制御の切り替え処理を終了する。
ステップ451では、変速出力禁止フラグをクリアし、続いてステップ452でタイマ値をゼロにし、ステップ453で高負荷履歴フラグをクリアし、ステップ454で制御1〜制御Jのすべての処理中止フラグをクリアし、変速制御の切り替え処理を終了する。
以上のような負荷状態判定タスク400の実行により、CPU14は、タスク抜けのない場合、負荷状態判定タスク400のある実行回において、余裕時間が第1のしきい値時間より初めて短くなると、高負荷履歴フラグをオンに切り替え(ステップ430)、変速出力禁止フラグをセットし(ステップ442)、タイマ値をゼロから1にインクリメントし(ステップ444)、AT制御タスク300の実行を簡略化する処理Aを行う(ステップ446)。そして、以降の回の負荷状態判定タスク400の実行において、タイマ値が整数Mを上回るか(ステップ440参照)、あるいはその都度特定した余裕時間が第2のしきい値時間を超える値にまで回復しない限り(ステップ445参照)、タイマ値のインクリメント、および処理Aを実行し続ける。したがって、タイマ値は、高負荷状態の持続時間の増大に伴って増大する。より詳しくは、タイマ値は高負荷状態の持続時間に比例する。
そして、高負荷状態の持続時間がある時間を超えて持続することによってタイマ値がMを超えるか、あるいは、余裕時間が第2のしきい値を超えるまでに復帰した場合は、変速出力禁止フラグ、高負荷履歴フラグ、全処理中止フラグをクリアし、タイマ値をゼロにリセットする(ステップ447〜454)ことで、高負荷状態を終了させ、AT制御タスク300の処理内容を、省略のない通常の処理内容にする。
また、タスク抜けがある場合(ステップ410参照)、変速出力禁止フラグ、処理中止フラグ、高負荷履歴フラグの値はそのまま変化せず、AT制御タスク300の処理内容は、それまでの処理内容から変化しない。
次に、図4に示したAT制御タスク300のステップ320のメイン処理について説明する。このメイン処理のフローチャートを図10に示す。CPU14は、メイン処理においては、まずステップ322で、変速出力禁止フラグがオンであるか否かを判定し、オフであれば続いてステップ324を実行し、オンであれば続いてステップ326を実行する。
ステップ326では、変速出力を禁止する。すなわち、AT制御タスク300のうち、オートマチックトランスミッション7に変速のための制御信号を出力する処理、およびその出力のために変速先のシフト位置を算出する処理を、必要になったとしても行わないような設定を行う。
ステップ328では、処理中止フラグに基づいて処理禁止を行う。上述した通り、処理中止フラグは、高負荷状態の持続時間の増加と共に、制御1、制御2、…、制御Jの順で、オンとなっていく。このステップ328では、このオンとなっている中止フラグに対応した制御を禁止する、すなわち必要になったとしても行わないような設定を行う。具体的には、例えば最も早く禁止する制御として、緊急性を要さない油圧制御の学習処理を、処理1としてもよい。
続いてステップ329で、AT制御を行う。このステップにおいて、禁止された制御の実行が省略されるので、禁止されない通常の場合に比べ、全体としてAT制御タスク300の処理が簡略化され、その結果、AT制御タスク300の処理負荷が軽減される。ステップ329の後、メイン処理は終了する。
ステップ324では、通常のAT制御のための処理を行う。通常のAT制御のための処理とは、変速出力処理、制御1〜制御Jを禁止しないAT制御をいう。ステップ324の後、メイン処理は終了する。
以上のような負荷状態判定タスク400およびAT制御タスク300をCPU14が実行することで、車両制御装置1は、AT制御タスク300の、前回の実行終了時から今回の実行開始時までの余裕時間を特定し(ステップ420参照)、その特定した余裕時間が第1のしきい値時間より長いか短いかを判定し(ステップ430参照)、短い場合には、高負荷状態の持続時間に比例するタイマ値が所定の整数Mを超えず、(ステップ443参照)、かつ余裕時間が第2のしきい値時間(>第1のしきい値時間)以下である限り、AT制御タスク300の処理内容を一部省略して簡略化させることで、AT制御タスク300の処理負荷を通常よりも下げるための処理を実行する(ステップ442、446参照)。
このようになっているので、車両制御装置1は、AT制御タスク300の余裕時間が第1のしきい値時間より短くなって以降、第2のしきい値時間よりも長くならず、かつタイマ値がMを超えるような所定の時間が経過していない場合に、AT制御タスク300の処理負荷がより低くなるよう、AT制御タスク300の処理内容を変化させるので、タスクの込み合い度合いが軽減される。なお、余裕時間が第1のしきい値時間より短くなって以降、第2のしきい値時間よりも長くならないという基準が、所定のタスク混雑基準に該当する。
ただし、AT制御タスク300のタスク抜けが発生する場合(ステップ410参照)は、この処理Aを行うことはない。したがって、車両制御装置1がこのようなAT制御タスク300の処理内容の変更を行うのは、当該余裕時間が、オートマチックトランスミッション制御用タスクの、ある回の実行終了時刻から、タスク抜けを経ない、次の回の実行開始時刻までの余裕時間である場合のみである。このようにすることで、タスク抜けによって1回分AT制御タスク300が実行されなくなることで、RAM11中のAT制御タスク300の実行終了時刻の値が変更されなくなり、実際はタスクが込み合っているにもかかわらず余裕時間が長くなってしまうことによる、高負荷状態の誤判断の可能性を、低減するこができ、それにより、より精度の高いAT制御タスク300の処理負荷制御を行うことができる。
また、ステップ446の処理Aにおいては、タイマ値が大きくなる程、オンとなる処理中止フラグが増えていく。すなわち、車両制御装置1は、高負荷状態の持続時間経過と共に、AT制御タスク300の処理内容の簡略化度合い、すなわち処理負荷の軽減度合いを大きくしていくので、時系列に沿った段階的なAT制御タスク300の処理負荷の軽減を行うことができる。
(第2実施形態)
次に、本発明の第2実施形態について説明する。本実施形態が第1実施形態と異なるのは、第1しきい値時間および第2しきい値時間である。第1実施形態においては、第1しきい値時間および第2しきい値時間は一定時間であったが、本実施形態においては、第1しきい値時間および第2しきい値時間が、車両の走行状態に基づいて変化するようになっている。
(第2実施形態)
次に、本発明の第2実施形態について説明する。本実施形態が第1実施形態と異なるのは、第1しきい値時間および第2しきい値時間である。第1実施形態においては、第1しきい値時間および第2しきい値時間は一定時間であったが、本実施形態においては、第1しきい値時間および第2しきい値時間が、車両の走行状態に基づいて変化するようになっている。
例えば、第1しきい値時間および第2しきい値時間は、スロットルセンサ3から取得したスロットル開度の情報、車速センサ4から取得した車速の情報に基づいて、スロットル開度が大きくなればなるほど第1しきい値時間および第2しきい値時間が短く、車速が大きくなればなるほど第1しきい値時間および第2しきい値時間が短くなるようになっていてもよい。
そして、このような第1しきい値時間および第2しきい値時間と車両状態との依存関係の情報は、車両制御装置1のROM12にあらかじめ記憶されていてもよい。そして、依存関係の情報は、図11に示すような、各行があるスロットル開度に対応し、各列がある車速に対応するようなテーブルとして記憶されていてもよい。この場合、ROM12は、第1しきい値時間用のテーブルと第2しきい値時間用のテーブルを、それぞれ有するようになっていてもよい。
なお、上述のように、第1しきい値時間および第2しきい値時間の両方がこのように変化する必要はなく、どちらか一方が変化し、他方は一定値のままであってもよい。
また、車両情報としては、スロットル開度、車速に限らず、エンジン回転数、外気温、エンジン温度、ステアリング量等、車両の物理的状態を示す量であればどのようなものでもよい。
(第3実施形態)
次に、本発明の第3実施形態について説明する。本実施形態が第1実施形態と異なるのは、余裕時間の算出方法である。第1実施形態においては、CPU14が負荷状態判定タスク400をAT制御タスク300の実行直前に実行することで、負荷状態判定タスク400内で、前回のAT制御タスク300の実行終了から次回のAT制御タスク300の実行開始までの実質的な余裕時間を実測しているが、本実施形態においては、高負荷状態の判定対象としての余裕時間を、過去のシフトアップ時における余裕時間の実測値に基づいて推定するようになっている。
(第3実施形態)
次に、本発明の第3実施形態について説明する。本実施形態が第1実施形態と異なるのは、余裕時間の算出方法である。第1実施形態においては、CPU14が負荷状態判定タスク400をAT制御タスク300の実行直前に実行することで、負荷状態判定タスク400内で、前回のAT制御タスク300の実行終了から次回のAT制御タスク300の実行開始までの実質的な余裕時間を実測しているが、本実施形態においては、高負荷状態の判定対象としての余裕時間を、過去のシフトアップ時における余裕時間の実測値に基づいて推定するようになっている。
図12に、本発明の余裕時間の推定の概念を説明するためのタイミング図を示す。図中、左から右への向きが時間の流れの向きに対応する。図中の各段が、上段から順に1速から2速への変速中、k−1(kは3以上)速からk速への変速中、k速からk+1速への変速中における、AT制御タスク実行時間帯71〜73と、AT制御タスク終了から負荷状態判定タスク400の実行時刻までの余裕時間74〜76を示している。
本実施形態においては、例えば現在のシフト位置がk速である場合、1速からk速までの各シフトアップ時における余裕時間の実測値T1、…、Tk−1を記憶しておき、その記憶した余裕時間T1、…、Tk−1のうち、最も短いものを、次に来るであろうk速からk+1へのシフトチェンジ時における余裕時間Rkであると推定し、シフトチェンジ前からその推定した余裕時間を用いたAT制御タスクの処理内容の変更を行う。
このような機能を実現するための、本実施形態のAT制御タスク300’のフローチャートを図13に示す。このAT制御タスク300’が第1実施形態に示したAT制御タスク300と異なる点は、ステップ330のシフトチェンジ変数記憶の処理が、ステップ320と340との間に設けられたことである。
このステップ330では、現在自車両がシフトアップ中であるかシフトダウン中であるか、あるいはシフト変化していないかを示す変速状態フラグ、および、シフト変化中であれば何速から何速への変化であるか、シフト変化中でなければ現在何速かを示す変速段データを、シフトチェンジ変数としてRAM11に記憶させる。CPU14は、車両がシフトチェンジする必要があると判定した場合、シフトチェンジのためのAT制御タスク300’の複数回の実行から成る1シリーズにより、1回のシフトチェンジを実現するようになっている。ステップ330では、今回のAT制御タスク300’の実行が、シフトチェンジのための実行回に該当する場合に、記憶させるシフトチェンジ変数に、そのシフトチェンジに対応した値を付与するようになっている。なお、このシフトチェンジ変数は、他のタスクから読み出し可能となっている。
また、本実施形態のCPU14は、図6に示した第1実施形態の負荷状態判定タスク400のステップ430に代えて、図14に示す余裕時間推定および判定処理600を実行するようになっている。すなわち、負荷状態判定タスク400の実行において、ステップ420で、前回のAT制御タスク300’の終了時間から現在時刻までの余裕時間を実測した後、続いてステップ610で、RAM11中のシフトチェンジ変数に基づいて、現在シフトアップ中であれば、RAM11に確保されたシフト変化状態毎の余裕時間記憶領域(以下、余裕時間配列領域と記す)の、現在のシフト変化状態が該当する位置に、その余裕時間を記憶させる。なお、シフト変化状態とは、1速−2速、2速−3速等、シフトがどの位置からどの位置に変わろうとしているかの状態をいう。
続いてステップ620では、RAM11中のシフトチェンジ変数に基づいて、現在のシフト位置を特定し、余裕時間配列領域中の、1速からその変速位置までの各シフト変化状態が該当する位置に、余裕時間が記憶されているか否かを判定し、全て記憶されていれば、続いてステップ630を実行し、1つでも記憶されていない位置があれば、余裕時間推定および判定処理600を終了し、続いて負荷状態判定タスク400のステップ440を実行する。
ステップ630では、余裕時間配列領域中の、1速からその変速位置までの各シフト変化状態が該当する位置に記憶される各余裕時間T1〜Tk−1(現在のシフト位置をkとする)のうち、最も小さい値を、推定余裕時間Rkとする。後の負荷状態判定タスク400のステップ440では、この推定余裕時間Rkを、第2のしきい値時間と比較する余裕時間として用いる。
続いてステップ640では、現在変速中であるか否かを、シフトチェンジ変数に基づいて判定し、変速中であれば余裕時間推定および判定処理600を終了し、続いてステップ440を実行する。また、変速中でなければ、続いてステップ650を実行する。
ステップ650では、この推定余裕時間Rkが第1実施形態と同じであってもよく同じでなくともよい第1のしきい値時間Sより短いか否かを判定し、短い場合、ステップ660で高負荷履歴フラグをオンとし、そうでなければ、余裕時間推定および判定処理600を終了し、続いてステップ440を実行する。
このようなプログラムをCPU14が実行することで、車両制御装置1は、第1のしきい値時間および第2のしきい値時間と比較する余裕時間を、過去のシフトアップ時における余裕時間の最小値に基づく時間とすることができる。
AT制御においては、変速中と非変速中とでその処理負荷が大きく異なる場合が多いので、このようにすることで、変速前から、変速時におけるタスクの込み合い度合いにあらかじめ備えたAT制御タスク300’の処理内容の制御を行うことができる。
ただし、現在変速中である場合(ステップ640参照)は、高負荷履歴フラグをオンとすることはない。したがって、車両制御装置1がこのようなAT制御タスク300’の処理内容の処理負荷低減のための変更を行うのは、現在変速中でない場合のみである。これは、オートマチックトランスミッション制御においては、変速中においてはその制御内容を簡略化することは好ましくない場合があるという観点に基づくものである。
また、余裕時間配列領域中の余裕時間は、シフト変化状態毎に複数記憶されるようになっており、それぞれ過去の複数回数の当該シフト変化状態時における実測余裕時間を記憶するようになっていてもよい。なお、この複数回のシフト変化状態時とは、同一シリーズにおけるものでよいし、異なるシリーズにおけるものでもよい。このような場合、第1のしきい値時間および第2のしきい値時間と比較する余裕時間は、過去の複数のシフトアップ時における複数の余裕時間の最小値となる。このようにすることで、さらに余裕時間推定の精度が向上する。
また、第1のしきい値時間および第2のしきい値時間と比較する余裕時間は、過去の複数の余裕時間の最小値ではなく、平均値等、それら余裕時間の代表的な値であってもよい。
(第4実施形態)
次に、本発明の第4実施形態について説明する。本実施形態が第1実施形態と異なるのは、余裕時間の算出方法である。第1実施形態においては、CPU14が負荷状態判定タスク400をAT制御タスク300の実行直前に実行することで、負荷状態判定タスク400内で、前回のAT制御タスク300の実行終了から次回のAT制御タスク300の実行開始までの実質的な余裕時間を実測しているが、本実施形態においては、高負荷状態の判定対象としての余裕時間を、過去のシフトアップ時における余裕時間の実測値を過去の非シフトチェンジ時の余裕時間の実測値から減算した値に基づいて推定するようになっている。
(第4実施形態)
次に、本発明の第4実施形態について説明する。本実施形態が第1実施形態と異なるのは、余裕時間の算出方法である。第1実施形態においては、CPU14が負荷状態判定タスク400をAT制御タスク300の実行直前に実行することで、負荷状態判定タスク400内で、前回のAT制御タスク300の実行終了から次回のAT制御タスク300の実行開始までの実質的な余裕時間を実測しているが、本実施形態においては、高負荷状態の判定対象としての余裕時間を、過去のシフトアップ時における余裕時間の実測値を過去の非シフトチェンジ時の余裕時間の実測値から減算した値に基づいて推定するようになっている。
図15に、本発明の余裕時間の推定の概念を説明するためのタイミング図を示す。図中、左から右への向きが時間の流れの向きに対応する。図中の各段が、上段から順に、k−1速でありかつ変速していないとき、k−1速からk速への変速中、k速でありかつ変速していないとき、k速からk+1速に変速するときにおける、AT制御タスク実行時間帯81〜84と、AT制御タスク終了から負荷状態判定タスク400の実行時刻までの余裕時間85〜88を示している。
本実施形態においては、例えば現在のシフト位置がk速である場合、k−1速からk速までの各シフトアップ時における余裕時間の実測値Tk−1を記憶しておき、さらに、k−1速でシフト変化がない時における余裕時間の実測値Bk−1を記憶しておき、その記憶した余裕時間Bk−1から余裕時間Tk−1を減算した結果の差時間89を、k−1速でシフト変化がない現在の余裕時間の実測値Bkから減じ、その結果を、次に来るであろうk速からk+1へのシフトチェンジ時における余裕時間Rkであると推定し、シフトチェンジ前からその推定した余裕時間を用いたAT制御タスクの処理内容の変更を行う。
このような機能を実現するための、本実施形態のAT制御タスクは、第3実施形態において図13に示したAT制御タスク300’と同等である。
また、本実施形態のCPU14は、図6に示した第1実施形態の負荷状態判定タスク400のステップ430に代えて、図16に示す余裕時間推定および判定処理700を実行するようになっている。すなわち、負荷状態判定タスク400の実行において、ステップ420で、前回のAT制御タスク300’の終了時間から現在時刻までの余裕時間を実測した後、続いてステップ710で、RAM11中のシフトチェンジ変数に基づいて、現在変速中であるか否かを判定し、変速中であれば、続いてステップ740を実行する。
変速中でない場合、続いてステップ720で、ステップ420にて実測した余裕時間を、RAM11に確保されたシフト位置毎の余裕時間記憶領域(以下、非シフトチェンジ時余裕時間配列領域と記す)の、現在のシフト位置が該当する位置に、その余裕時間を記憶させる。そしてステップ720の後、余裕時間推定および判定処理700の実行を終了し、続いて負荷状態判定タスク400のステップ440を実行する。
ステップ740では、ステップ420にて実測した余裕時間を、RAM11に確保されたシフト変化状態毎の余裕時間記憶領域(以下、シフトアップ時余裕時間配列領域と記す)の、現在のシフト変化状態が該当する位置に、その余裕時間を記憶させる。
続いてステップ750では、非シフトチェンジ時余裕時間配列領域から、現在のシフト位置より1つ下のシフト位置に該当する位置に記憶された余裕時間Bk−1を読み出し、さらに、シフトアップ時余裕時間配列領域から、現在のシフト位置より1つ下のシフト位置から現在のシフト位置にシフトアップするシフト変化状態における位置に記憶された余裕時間Tk−1を読み出し、この余裕時間Bk−1から余裕時間Tk−1を減じた差時間を、現在の実測余裕時間Bkから減算する。そして、この結果の値を、推定余裕時間Rkとする。後の負荷状態判定タスク400のステップ440では、この推定余裕時間Rkを、第2のしきい値時間と比較する余裕時間として用いる。
続いてステップ760ではこの推定余裕時間Rkが第1実施形態と同であってもよく同じでなくともよい第1のしきい値時間Sより短いか否かを判定し、短い場合、ステップ770で高負荷履歴フラグをオンとし、そうでなければ、余裕時間推定および判定処理700を終了し、続いてステップ440を実行する。
このようなプログラムをCPU14が実行することで、車両制御装置1は、第1のしきい値時間および第2のしきい値時間と比較する余裕時間を、過去のシフトアップ時における余裕時間をそのシフトアップ前の非シフトチェンジ時の余裕時間から減算した差分を、最新の実測余裕時間から減算した時間とすることができる。
こように、過去のシフトアップ前からシフトアップ時への遷移における余裕時間の変化に基づいて、次回のシフトアップ時における余裕時間を推定することができるので、より精度の高い推定を行うことができる。
ただし、現在変速中である場合(ステップ710参照)は、高負荷履歴フラグをオンとすることはない。したがって、車両制御装置1がこのようなAT制御タスク300’の処理内容の処理負荷低減のための変更を行うのは、現在変速中でない場合のみである。これは、オートマチックトランスミッション制御においては、変速中においてはその制御内容を簡略化することは好ましくない場合があるという観点に基づくものである。
また、非シフトチェンジ時余裕時間配列領域中の余裕時間は、シフト位置毎に複数記憶されるようになっており、それぞれ過去の複数回数の当該非シフト変化状態時における実測余裕時間を記憶するようになっていてもよい。このような場合、第1のしきい値時間および第2のしきい値時間と比較する余裕時間は、過去の複数のシフトアップ時における複数の余裕時間の平均値でも、最大値でも最小値でも、代表的な値であればどのようなものでもよい。このようにすることで、さらに余裕時間推定の精度が向上する。
また、シフトアップ時余裕時間配列領域中の余裕時間は、シフト変化状態毎に複数記憶されるようになっており、それぞれ過去の複数回数の当該シフト変化状態時における実測余裕時間を記憶するようになっていてもよい。なお、この複数回のシフト変化状態時とは、同一シリーズにおけるものでよいし、異なるシリーズにおけるものでもよい。このような場合、第1のしきい値時間および第2のしきい値時間と比較する余裕時間は、過去の複数のシフトアップ時における複数の余裕時間の平均値でも、最大値でも最小値でも、代表的な値であればどのようなものでもよい。
ここで、上記の各実施形態における構成要素と、特許請求の範囲の構成要素との対応関係について説明する。
まず、各実施形態において、CPU14が、AT制御タスク300、300’を実行することで、タスク実行手段にとして機能する
また、CPU14が、負荷状態判定タスク400のステップ420を実行することで、余裕時間特定手段として機能し、ステップ430、440を実行することで、変更手段として機能する。
また、CPU14が、負荷状態判定タスク400のステップ420を実行することで、余裕時間特定手段として機能し、ステップ430、440を実行することで、変更手段として機能する。
また、AT制御タスク300、300’がタスクXに相当する。ただし、タスクXとしてはAT制御タスク300、300’である必要はなく、車両制御のためのタスクであればどのようなものでもよい。
また、上記の各実施形態においては、1つの車両制御装置内で複数のタスクが実行されているが、必ずしもこのようになっておらずともよく、1つの車両制御装置内でただ1つの車両制御用タスクが、所定のタイミングで繰り返し実行されているようになっていてもよい。このような場合であっても、車両の走行状態によっては、1回の処理負荷が急激に増大し、その回のタスクの実行が次の回の実行開始時までに終わらなくなる場合がありうるからである。
また、上記の各タスクは、CPU14がプログラムを実行することで実行されているが、必ずしもこのようになっておらずともよく、FPGA(Field Programable Gate Array)等の、回路構成がプログラム可能な装置によって、ハードウェア的に実行されるようになっていてもよい。
また、上記の各実施形態において、負荷状態判定タスク400はAT制御タスク300の直前に実行されるようになっているが、必ずしもこのようになっておらずともよい。例えば、AT制御タスクが、各実行回の自身の実行開始時刻と実行終了時刻の情報をRAM11に記憶させ、負荷状態判定タスク400が、その記憶された情報に基づいて、ある回のAT制御タスクの実行終了時から次の回のAT制御タスクの実行開始時までの余裕時間を特定するようになっていてもよい。
また、第1実施形態、第2実施形態、第3実施形態、第4実施形態のそれぞれにおける、第1のしきい値時間および第2のしきい値時間と比較する余裕時間の算出方法を、適宜組み合わせるようになっていてもよい。例えば、現在のシフト位置が1速である場合には、第1実施形態の算出方法を用い、2速以上であるときは、第3実施形態または第4実施形態の方法を用いるようになっていてもよい。また、自車両の加速が所定加速度以上である等、車両が急速にスピードアップしているような場合には、第3実施形態および第4実施形態の方法を用い、それ以外の場合には第1実施形態または第2実施形態の方法を用いるようになっていてもよい。
1…車両制御装置、2…クランク角センサ、3…スロットルセンサ、4…車速センサ、
5…インジェクタ、6…ブレーキ、7…オートマチックトランスミッション、
8…イグナイタ、11…RAM、12…ROM、13…I/O、14…CPU、
100…エンジン制御タスク、200…ブレーキ制御タスク、
300…AT制御タスク、400…負荷状態判定タスク、
600、700…余裕時間推定および判定処理。
5…インジェクタ、6…ブレーキ、7…オートマチックトランスミッション、
8…イグナイタ、11…RAM、12…ROM、13…I/O、14…CPU、
100…エンジン制御タスク、200…ブレーキ制御タスク、
300…AT制御タスク、400…負荷状態判定タスク、
600、700…余裕時間推定および判定処理。
Claims (10)
- ある車両制御用のタスクXを所定のタイミングで繰り返し実行するタスク実行手段と、
前記タスクXの、ある回の実行終了時から次の回の実行開始時までの余裕時間を特定する余裕時間特定手段と、
前記特定手段が特定した前記余裕時間に基づき、当該余裕時間が所定のタスク混雑基準を満たす場合における前記タスクXの処理内容が、当該余裕時間が所定のタスク混雑基準を満たさない場合における前記タスクXの処理内容よりも、その処理負荷が低いものとなるよう、前記タスクXの処理内容を変更する変更手段と、を備えた車両制御装置。 - 前記変更手段は、当該余裕時間が、前記タスクXの、ある回の実行終了時から、タスク抜けを経ない、次の回の実行開始時までの余裕時間であることに基づいて、当該余裕時間が所定のタスク混雑基準を満たす場合における前記タスクXの処理内容が、当該余裕時間が所定のタスク混雑基準を満たさない場合における前記タスクXの処理内容よりもその処理負荷が低いものとなるよう、前記タスクXの処理内容を変更することを特徴とする請求項1に記載の車両制御装置。
- 前記タスクXは、オートマチックトランスミッション制御用タスクであり、
前記変更手段は、現在車両が変速中でないことに基づいて、当該余裕時間が所定のタスク混雑基準を満たす場合における前記タスクXの処理内容が、当該余裕時間が所定のタスク混雑基準を満さない場合における前記タスクXの処理内容よりもその処理負荷が低いものとなるよう、前記タスクXの処理内容を変更することを特徴とする請求項1または2に記載の車両制御装置。 - 前記所定のタスク混雑基準を満たすとは、車両の走行状態に応じて変化するしきい値より短いことをいう請求項1ないし3のいずれか1つに記載の車両制御装置。
- 前記タスクXは、オートマチックトランスミッション制御用タスクであり、
前記変更手段が前記所定のタスク混雑基準に照らす前記余裕時間は、過去のシフトアップ時において前記余裕時間特定手段が特定した余裕時間に基づく余裕時間であることを特徴とする請求項1ないし4のいずれか1つに記載の車両制御装置。 - 前記変更手段が前記所定のタスク混雑基準に照らす前記余裕時間は、過去の複数のシフトアップ時において前記余裕時間特定手段によって特定された複数の余裕時間に基づく代表的な余裕時間であることを特徴とする請求項5に記載の車両制御装置。
- 前記変更手段が前記所定のタスク混雑基準に照らす前記余裕時間は、過去のシフトアップ時において前記余裕時間特定手段によって特定された余裕時間をそのシフトアップ前に前記余裕時間特定手段によって特定された余裕時間から減算した差分を、前記余裕時間特定手段が特定した最新の余裕時間から減算した時間であることを特徴とする請求項3に記載の車両制御装置。
- 前記変更手段が前記所定のタスク混雑基準に照らす前記余裕時間は、過去の複数のシフトアップ時における余裕時間をそのシフトアップ前の余裕時間から減算した複数の差分の代表値を、前記余裕時間特定手段が特定した最新の余裕時間から減算した時間であることを特徴とする請求項7に記載の車両制御装置。
- 前記余裕時間特定手段は、前記タスクXの実行開始タイミングの直前に、現在時刻と、前回の前記タスクXの終了時刻との比較に基づいて、前記余裕時間を特定し、
前記変更手段は、前記余裕時間特定手段が特定した前記余裕時間に基づき、当該余裕時間が所定のタスク混雑基準を満たす場合における、当該余裕時間が特定された直後の前記タスクXの処理内容が、当該余裕時間が所定のタスク混雑基準を満たさない場合における、当該余裕時間が特定された直後の前記タスクXの処理内容よりもその処理負荷が低いものとなるよう、前記タスクXの処理内容を変更することを特徴とする請求項1ないし8のいずれか1つに記載の車両制御装置。 - ある車両制御用のタスクXを所定のタイミングで繰り返し実行するコンピュータを、
前記タスクXの、ある回の実行終了時から次の回の実行開始時までの余裕時間を特定する余裕時間特定手段、および
前記余裕時間特定手段が特定した前記余裕時間に基づき、当該余裕時間が所定のタスク混雑基準を満たす場合における前記タスクXの処理内容が、当該余裕時間が所定のタスク混雑基準を満さない場合における前記タスクXの処理内容よりもその処理負荷が低いものとなるよう、前記タスクXの処理内容を変更する変更手段として機能させる処理負荷制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004273402A JP2006090356A (ja) | 2004-09-21 | 2004-09-21 | 車両制御装置、および処理負荷制御プログラム。 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004273402A JP2006090356A (ja) | 2004-09-21 | 2004-09-21 | 車両制御装置、および処理負荷制御プログラム。 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006090356A true JP2006090356A (ja) | 2006-04-06 |
Family
ID=36231536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004273402A Withdrawn JP2006090356A (ja) | 2004-09-21 | 2004-09-21 | 車両制御装置、および処理負荷制御プログラム。 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006090356A (ja) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008305238A (ja) * | 2007-06-08 | 2008-12-18 | Denso Corp | 計測装置 |
JP2009143459A (ja) * | 2007-12-17 | 2009-07-02 | Hitachi Ltd | 車載エレクトロニクス・システム及び自動車 |
JP2010111234A (ja) * | 2008-11-05 | 2010-05-20 | Fujitsu Ten Ltd | 制御装置及び制御方法 |
WO2011055581A1 (ja) * | 2009-11-06 | 2011-05-12 | 日立オートモティブシステムズ株式会社 | 車載用マルチアプリ実行装置 |
JP2013097719A (ja) * | 2011-11-04 | 2013-05-20 | Toyota Motor Corp | 制御装置および制御方法 |
WO2015136973A1 (ja) * | 2014-03-14 | 2015-09-17 | オムロン株式会社 | 制御装置及び制御システム |
WO2016046931A1 (ja) | 2014-09-25 | 2016-03-31 | 日本精工株式会社 | 車載用電子機器の制御装置及び制御方法 |
JP2016113968A (ja) * | 2014-12-16 | 2016-06-23 | アイシン精機株式会社 | 車両用制御装置および制御方法 |
JP6020765B2 (ja) * | 2014-09-25 | 2016-11-02 | 日本精工株式会社 | 車載用電子機器の制御装置及び制御方法 |
US9889881B2 (en) | 2014-09-25 | 2018-02-13 | Nsk Ltd. | Control apparatus and control method of on-vehicle electronic equipment |
US10017205B2 (en) | 2014-09-25 | 2018-07-10 | Nsk Ltd. | Control apparatus and control method of on-vehicle electronic equipment |
US10261773B2 (en) | 2015-12-10 | 2019-04-16 | Mitsubishi Electric Corporation | Information processing device, information processing method, and computer readable medium |
WO2021199607A1 (ja) * | 2020-03-31 | 2021-10-07 | 日立Astemo株式会社 | 制御装置及び方法 |
-
2004
- 2004-09-21 JP JP2004273402A patent/JP2006090356A/ja not_active Withdrawn
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008305238A (ja) * | 2007-06-08 | 2008-12-18 | Denso Corp | 計測装置 |
JP2009143459A (ja) * | 2007-12-17 | 2009-07-02 | Hitachi Ltd | 車載エレクトロニクス・システム及び自動車 |
JP2010111234A (ja) * | 2008-11-05 | 2010-05-20 | Fujitsu Ten Ltd | 制御装置及び制御方法 |
WO2011055581A1 (ja) * | 2009-11-06 | 2011-05-12 | 日立オートモティブシステムズ株式会社 | 車載用マルチアプリ実行装置 |
JP2011100338A (ja) * | 2009-11-06 | 2011-05-19 | Hitachi Automotive Systems Ltd | 車載用マルチアプリ実行装置 |
US8832704B2 (en) | 2009-11-06 | 2014-09-09 | Hitachi Automotive Systems, Ltd. | In-car-use multi-application execution device |
JP2013097719A (ja) * | 2011-11-04 | 2013-05-20 | Toyota Motor Corp | 制御装置および制御方法 |
CN106062649A (zh) * | 2014-03-14 | 2016-10-26 | 欧姆龙株式会社 | 控制装置及控制系统 |
JPWO2015136973A1 (ja) * | 2014-03-14 | 2017-04-06 | オムロン株式会社 | 制御装置及び制御システム |
US10180674B2 (en) | 2014-03-14 | 2019-01-15 | Omron Corporation | Controller and control system |
WO2015136973A1 (ja) * | 2014-03-14 | 2015-09-17 | オムロン株式会社 | 制御装置及び制御システム |
JP6020765B2 (ja) * | 2014-09-25 | 2016-11-02 | 日本精工株式会社 | 車載用電子機器の制御装置及び制御方法 |
WO2016046931A1 (ja) | 2014-09-25 | 2016-03-31 | 日本精工株式会社 | 車載用電子機器の制御装置及び制御方法 |
US9796415B2 (en) | 2014-09-25 | 2017-10-24 | Nsk Ltd. | Control apparatus and control method of on-vehicle electronic equipment |
US9889881B2 (en) | 2014-09-25 | 2018-02-13 | Nsk Ltd. | Control apparatus and control method of on-vehicle electronic equipment |
US9896125B2 (en) | 2014-09-25 | 2018-02-20 | Nsk Ltd. | Control apparatus and control method of on-vehicle electronic equipment |
US10017205B2 (en) | 2014-09-25 | 2018-07-10 | Nsk Ltd. | Control apparatus and control method of on-vehicle electronic equipment |
JP2016113968A (ja) * | 2014-12-16 | 2016-06-23 | アイシン精機株式会社 | 車両用制御装置および制御方法 |
US10261773B2 (en) | 2015-12-10 | 2019-04-16 | Mitsubishi Electric Corporation | Information processing device, information processing method, and computer readable medium |
WO2021199607A1 (ja) * | 2020-03-31 | 2021-10-07 | 日立Astemo株式会社 | 制御装置及び方法 |
JP7421634B2 (ja) | 2020-03-31 | 2024-01-24 | 日立Astemo株式会社 | 制御装置及び方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2006090356A (ja) | 車両制御装置、および処理負荷制御プログラム。 | |
JPH07110587B2 (ja) | クラッチー変速機ユニットの制御装置 | |
US8972127B2 (en) | Control system for automatic transmission and method thereof | |
EP1371882A2 (en) | Gear-shift control apparatus for automatic transmission and gear-shift control method | |
US6694241B2 (en) | Shift control method and system for automatic transmission | |
JP2005301812A (ja) | デジタル制御装置およびこれを用いたエンジン制御装置 | |
JP2008302821A (ja) | シフト位置検出装置 | |
JPH11232148A (ja) | 計算機の負荷率計測方法及び計測システム | |
JP2005147391A (ja) | スタティック変速中のチップイン時の自動変速機の油圧制御方法及びその装置 | |
JP7263746B2 (ja) | 情報処理装置 | |
KR100598804B1 (ko) | 자동 변속 차량의 엔진 토크 저감 제어방법 | |
JP6414004B2 (ja) | 電子制御装置 | |
KR20050041331A (ko) | 자동 변속기에서 업 시프트 시 초기 유압 학습장치 및 그방법 | |
JP2007045297A (ja) | シフトレバーの基準位置決定装置 | |
KR101744813B1 (ko) | 수동변속기 차량의 엔진 제어 시스템 및 방법 | |
JP3783553B2 (ja) | 情報処理装置 | |
JP2004318672A (ja) | 処理装置 | |
JP3659235B2 (ja) | 自動変速機の制御装置および制御方法 | |
KR100335950B1 (ko) | 자동변속기 장착 차량의 변속중 변속 제어방법 | |
CN110131057B (zh) | 一种扭矩控制方法及系统 | |
JP2016162330A (ja) | 電子制御装置 | |
KR20200129607A (ko) | 차량 변속기의 기어 액츄에이터 제어방법 | |
JP2001256063A (ja) | 制御装置及びエンジン制御装置 | |
JP7334767B2 (ja) | 車両用制御装置および車両 | |
KR100328171B1 (ko) | 자동변속기의 제어장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20071204 |