(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024112141
(43)【公開日】2024-08-20
(54)【発明の名称】車両の運動マネージャ、車両の制御方法、及び車両の制御プログラム
(51)【国際特許分類】
B60W 50/02 20120101AFI20240813BHJP
B60W 50/04 20060101ALI20240813BHJP
B60W 30/18 20120101ALI20240813BHJP
【FI】
B60W50/02
B60W50/04
B60W30/18
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023017024
(22)【出願日】2023-02-07
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(71)【出願人】
【識別番号】301065892
【氏名又は名称】株式会社アドヴィックス
(74)【代理人】
【識別番号】100105957
【弁理士】
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【弁理士】
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】大橋 祐太
(72)【発明者】
【氏名】口ノ町 敦史
【テーマコード(参考)】
3D241
【Fターム(参考)】
3D241BA63
3D241BB74
3D241BB77
3D241BB79
(57)【要約】
【課題】縮退を必要としない運動要求を長時間実現できない状況が継続することを防ぐ。
【解決手段】第1アプリケーションから縮退を必要とする加速度要求値、及び第2アプリケーションから縮退を必要としない加速度要求値を受け付け可能な受付部11と、受付部11が受け付けた加速度要求値の中から最も小さい値の加速度要求値を選択する調停部12と、調停部12が縮退を必要とする加速度要求値を選択した場合に、当該加速度要求値を予め定められた終了値へと時間の経過と共に近づけていった縮退値を出力する縮退部15と、調停部12が選択した加速度要求値、又は縮退値に応じた指示値を車両のアクチュエータに出力する出力部13と、を備え、調停部12が縮退を必要とする加速度要求値を選択したことを契機として、受付部11が第1アプリケーションからの縮退を必要とする加速度要求値に代えて縮退値を受け付ける。
【選択図】
図6
【特許請求の範囲】
【請求項1】
第1アプリケーションから縮退を必要とする加速度要求値、及び第2アプリケーションから縮退を必要としない加速度要求値を受け付け可能な受付部と、
前記受付部が受け付けた加速度要求値の中から最も小さい値の加速度要求値を選択する調停部と、
前記調停部が縮退を必要とする加速度要求値を選択した場合に、当該加速度要求値を予め定められた終了値へと時間の経過と共に近づけていった縮退値を出力する縮退部と、
前記調停部が選択した加速度要求値、又は前記縮退値に応じた指示値を車両のアクチュエータに出力する出力部と、
を備え、
前記調停部が縮退を必要とする加速度要求値を選択したことを契機として、前記受付部が前記第1アプリケーションからの縮退を必要とする加速度要求値に代えて前記縮退値を受け付ける
車両の運動マネージャ。
【請求項2】
前記出力部は、前記調停部が前記第1アプリケーションからの縮退を必要とする加速度要求値を選択した場合には前記縮退値に応じた指示値を前記アクチュエータに出力する一方で、前記調停部が前記第2アプリケーションからの加速度要求値を選択した場合には前記第2アプリケーションからの加速度要求値に応じた指示値を前記アクチュエータに出力する
請求項1に記載の車両の運動マネージャ。
【請求項3】
前記受付部は、前記車両の故障が検出されているときには、前記第1アプリケーションからの加速度要求値を、縮退が必要な加速度要求値として受け付ける
請求項1又は2に記載の車両の運動マネージャ。
【請求項4】
車両に搭載されるコンピュータによる車両の制御方法であって、
前記コンピュータが、
第1アプリケーションから縮退を必要とする加速度要求値、及び第2アプリケーションから縮退を必要としない加速度要求値を受け付けることと、
受け付けた加速度要求値の中から最も小さい値の加速度要求値を選択することと、
加速度要求値の選択において縮退を必要とする加速度要求値を選択した場合に、当該加速度要求値を予め定められた終了値へと時間の経過と共に近づけていった縮退値を出力することと、
加速度要求値の選択において選んだ加速度要求値、又は前記縮退値に応じた指示値を前記車両のアクチュエータに出力することと、を行い、
さらに、加速度要求値の選択において縮退を必要とする加速度要求値を選択したことを契機として、前記第1アプリケーションからの縮退を必要とする加速度要求値に代えて前記縮退値を受け付ける
車両の制御方法。
【請求項5】
車両に搭載されるコンピュータを対象としたプログラムであって、
前記コンピュータに、
第1アプリケーションから縮退を必要とする加速度要求値、及び第2アプリケーションから縮退を必要としない加速度要求値を受け付けることと、
受け付けた加速度要求値の中から最も小さい値の加速度要求値を選択することと、
加速度要求値の選択において縮退を必要とする加速度要求値を選択した場合に、当該加速度要求値を予め定められた終了値へと時間の経過と共に近づけていった縮退値を出力することと、
加速度要求値の選択において選んだ加速度要求値、又は前記縮退値に応じた指示値を前記車両のアクチュエータに出力することと、を実行させ、
さらに、加速度要求値の選択において縮退を必要とする加速度要求値を選択したことを契機として、前記第1アプリケーションからの縮退を必要とする加速度要求値に代えて前記縮退値を受け付けさせる
車両の制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、車両の運動マネージャ、車両の制御方法、及び車両の制御プログラムに関する。
【背景技術】
【0002】
特許文献1に開示されている車両の制御システムは、複数の実行部と、運動マネージャと、アクチュエータと、を備えている。各実行部は、個別のアプリケーションを実行する。運動マネージャは、複数のアプリケーションからの運動要求を受け付ける。そして、運動マネージャは、それら複数の運動要求を調停する。すなわち、運動マネージャは、複数の運動要求の中から1つを選択する。そして、運動マネージャは、調停勝ちした運動要求に基づいて、アクチュエータに対する指示値を生成する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
アプリケーションからの運動要求の中には、車両の状態に応じて、縮退を必要とするものがある。なお、運動要求の縮退とは、例えば運動要求が加速度要求である場合に、要求される加速度の値を予め定められた終了値へと時間の経過と共に近づけていくことである。ここで、仮に複数のアプリケーションからの運動要求を調停した結果、縮退を必要とする運動要求が調停勝ちしたとする。この場合、運動マネージャは、車両の状態に応じて、運動要求を徐々に縮退させていくので、やがてはアクチュエータに対する制御を終了し得る。しかし、縮退を必要とする運転要求が調停勝ちするような状況であっても、アクチュエータに対する制御を終了せずに、他のアプリケーションからの運動要求を実現するべき状況もあり得る。
【課題を解決するための手段】
【0005】
上記課題を解決するための車両の運動マネージャは、第1アプリケーションから縮退を必要とする加速度要求値、及び第2アプリケーションから縮退を必要としない加速度要求値を受け付け可能な受付部と、前記受付部が受け付けた加速度要求値の中から最も小さい値の加速度要求値を選択する調停部と、前記調停部が縮退を必要とする加速度要求値を選択した場合に、当該加速度要求値を予め定められた終了値へと時間の経過と共に近づけていった縮退値を出力する縮退部と、前記調停部が選択した加速度要求値、又は前記縮退値に応じた指示値を車両のアクチュエータに出力する出力部と、を備え、前記調停部が縮退を必要とする加速度要求値を選択したことを契機として、前記受付部が前記第1アプリケーションからの縮退を必要とする加速度要求値に代えて前記縮退値を受け付ける。
【0006】
上記課題を解決するための車両の制御方法は、車両に搭載されるコンピュータによる車両の制御方法であって、前記コンピュータが、第1アプリケーションから縮退を必要とする加速度要求値、及び第2アプリケーションから縮退を必要としない加速度要求値を受け付けることと、受け付けた加速度要求値の中から最も小さい値の加速度要求値を選択することと、加速度要求値の選択において縮退を必要とする加速度要求値を選択した場合に、当該加速度要求値を予め定められた終了値へと時間の経過と共に近づけていった縮退値を出力することと、加速度要求値の選択において選んだ加速度要求値、又は前記縮退値に応じた指示値を前記車両のアクチュエータに出力することと、を行い、さらに、加速度要求値の選択において縮退を必要とする加速度要求値を選択したことを契機として、前記第1アプリケーションからの縮退を必要とする加速度要求値に代えて前記縮退値を受け付ける。
【0007】
上記課題を解決するための車両の制御プログラムは、車両に搭載されるコンピュータを対象としたプログラムであって、前記コンピュータに、第1アプリケーションから縮退を必要とする加速度要求値、及び第2アプリケーションから縮退を必要としない加速度要求値を受け付けることと、受け付けた加速度要求値の中から最も小さい値の加速度要求値を選択することと、加速度要求値の選択において縮退を必要とする加速度要求値を選択した場合に、当該加速度要求値を予め定められた終了値へと時間の経過と共に近づけていった縮退値を出力することと、加速度要求値の選択において選んだ加速度要求値、又は前記縮退値に応じた指示値を前記車両のアクチュエータに出力することと、を実行させ、さらに、加速度要求値の選択において縮退を必要とする加速度要求値を選択したことを契機として、前記第1アプリケーションからの縮退を必要とする加速度要求値に代えて前記縮退値を受け付けさせる。
【0008】
上記の各技術思想では、第1アプリケーションからの縮退を必要とする加速度要求値が調停勝ちした場合、時間の経過と共に終了値に近づいていく縮退値が受付部に受け付けられる。すると、いずれ第2アプリケーションからの加速度要求値が調停勝ちすることになる。その結果、第2アプリケーションからの運動要求を長時間実現できない状況が継続することは防げる。
【図面の簡単な説明】
【0009】
【
図3】特定処理の実行対象となる期間を説明する模式図である。
【
図4】管理処理の処理手順を表したフローチャートである。
【
図5】縮退要否処理の処理手順を表したフローチャートである。
【
図6】特定処理における各機能部間での情報の流れを表した模式図である。
【
図7】縮退処理の実行中における加速度要求値の推移の例を表した図である。
【発明を実施するための形態】
【0010】
以下、車両の運動マネージャ、車両の制御方法、及び車両の制御プログラムの一実施形態を、図面を参照して説明する。
<車両の全体構成>
図1に示すように、車両100は、指令ECU50と、管理ECU10と、第1アクチュエータシステム70と、第2アクチュエータシステム80と、を備えている。
【0011】
第1アクチュエータシステム70は、エンジン71と、エンジン71を制御するエンジンECU75と、を備えている。エンジン71は、車両100の駆動源である。エンジン71は、スロットルバルブ、燃料噴射弁、及び点火装置などの複数のアクチュエータ72を備えている。なお、
図1では、複数のアクチュエータ72のうちの1つのみを代表で示している。エンジンECU75は、CPUと、不揮発性のメモリと、揮発性のメモリと、を備えたコンピュータである。不揮発性のメモリは、CPUが実行するべき処理が記述された各種のプログラムを予め記憶している。エンジンECU75は、例えば管理ECU10といった、上位装置からの指示値に基づいてエンジン71の各アクチュエータ72を制御する。各アクチュエータ72が制御されることで、エンジン71では燃料が燃焼する。それとともに車両100に駆動力が発生する。このように、第1アクチュエータシステム70は、アクチュエータ72を含んでいる。なお、エンジン71は、アクチュエータ72を含む各所の動作状態を把握するための各種センサを搭載している。エンジンECU75は、これらの各種センサの検出値を逐次取得する。各種センサから取得した情報などに基づいて、エンジンECU75は、エンジン71に故障が生じた場合に、その故障を検出する。
【0012】
第2アクチュエータシステム80は、複数のブレーキ装置81と、各ブレーキ装置81を制御するブレーキECU85と、を備えている。なお、
図1では、複数のブレーキ装置81のうちの1つのみを代表で示している。ブレーキ装置81は、車両100の車輪毎に設けられている。ブレーキ装置81は、車輪と一体回転するディスクと、油圧に応じて動作するブレーキパッドと、ブレーキパッドに油圧を加えるアクチュエータ82と、を備えている。ブレーキECU85は、CPUと、不揮発性のメモリと、揮発性のメモリと、を備えたコンピュータである。不揮発性のメモリは、CPUが実行するべき処理が記述された各種のプログラムを予め記憶している。ブレーキECU85は、例えば管理ECU10といった上位装置からの指示値に基づいてアクチュエータ82の油圧を制御する。油圧の制御に応じてブレーキパッドがディスクに押し付けられると、車両100に制動力が発生する。このように、第2アクチュエータシステム80は、アクチュエータ82を含んでいる。なお、各ブレーキ装置81は、アクチュエータ82を含む各所の動作状態を把握するための各種センサを搭載している。ブレーキECU85は、これらの各種センサの検出値を逐次取得する。各種センサから取得した情報などに基づいて、ブレーキECU85は、ブレーキ装置81に故障が生じた場合に、その故障を検出する。
【0013】
図示は省略するが、車両100は、第1アクチュエータシステム70及び第2アクチュエータシステム80の他にもアクチュエータシステムを備えている。他のアクチュエータシステムの例は、車両100の操舵輪の舵角を調整するステアリングシステムである。
【0014】
<指令ECUの概略構成>
指令ECU50は、CPUと、不揮発性のメモリと、揮発性のメモリと、を備えたコンピュータである。不揮発性のメモリは、CPUが実行するべき処理が記述された各種のプログラムを予め記憶している。不揮発性のメモリが記憶しているプログラムの例は、車両100の運動を制御するための複数のアプリケーションAPである。指令ECU50は、自身が記憶しているこれらのアプリケーションAPを実行する実行装置として機能する。指令ECU50は、ある特定のアプリケーションAPを実行した場合、実行対象のアプリケーションAPの運動要求を出力する。指令ECU50は、複数のアプリケーションAPを同時に実行することもある。運動要求は、車両100に発生させる加速度の要求値である加速度要求値を含んでいる。加速度要求値は、正負の値をとる。指令ECU50は、車両100の前方に車両100が加速する場合の加速度を正の値として取り扱う。なお、指令ECU50は、図示しない各種センサが検出する情報を逐次取得する。指令ECU50は、アプリケーションAPを実行する上で、これらの各種センサから取得する情報を参照する。各種センサは、例えば車両100の走行速度といった、車両100の走行状態を検出する機器を含んでいる。各種センサは、例えばカメラ及びレーダといった、車両100の周辺情報を検出する機器を含んでいる。各種センサは、車両100の現在の位置座標を検出する機器を含んでいる。
【0015】
以下では、実際には指令ECU50が主体である内容を、実行対象のアプリケーションAPを主体として記載することがある。例えば、指令ECU50からの加速度要求値を、アプリケーションAPからの加速度要求値と記したり、指令ECU50から加速度要求値を受け付けることを、アプリケーションAPから加速度要求値を受け付けると記したりする。
【0016】
指令ECU50が記憶しているアプリケーションAPは、第1アプリケーションと第2アプリケーションとの2種類に大別できる。第1アプリケーションは、車両100の故障が検出されているときに、縮退を必要とする加速度要求値を出力するアプリケーションAPである。縮退とは、アプリケーションAPからの加速度要求値を予め定められた終了値へと時間の経過と共に近づけていくことである。なお、本実施形態において、第1アプリケーションは、負の加速度要求値を出力するアプリケーションAPに限られている。指令ECU50が記憶している第1アプリケーションのうちの1つは、車両100への衝突被害を軽減させるために車両100に制動をかける、いわゆる衝突被害軽減ブレーキアプリケーションである。以下では、このアプリケーションAPを、AEB(Autonomous Emergency Braking)アプリケーションAP1と記す。AEBアプリケーションAP1以外にも第1アプリケーションは存在するが、ここでは説明を割愛する。第2アプリケーションは、車両100に故障が検出されているか否かにかかわらず、縮退を必要としない加速度要求値を出力するアプリケーションAPである。指令ECU50が記憶している第2アプリケーションのうちの1つは、自動運転の機能を実現するアプリケーションAPである。以下では、このアプリケーションAPを、AD(Autonomous Driving)アプリケーションAP2と記す。ADアプリケーションAP2を実行することにより、無人で車両100を走行させることができる。第2アプリケーションはADアプリケーションAP2の他にも存在するが、ここでは説明を割愛する。なお、第1アプリケーションであるか第2アプリケーションであるかにかかわらず、各アプリケーションAPには、個別の識別子が予め割り当てられている。
【0017】
<管理ECUの概略構成>
図2に示すように、管理ECU10は、CPU21と、不揮発性のメモリ22と、揮発性のメモリ23と、を備えたコンピュータである。不揮発性のメモリ22は、CPU21が実行するべき処理が記述された各種のプログラムWを予め記憶している。管理ECU10は、図示しない内部バスを介して指令ECU50及び各アクチュエータシステムのECUと情報を授受可能である。
【0018】
管理ECU10のCPU21が不揮発性のメモリ22に記憶されているプログラムWを実行することにより、管理ECU10は、アプリケーションAPが要求する車両100の運動を管理する運動マネージャとして機能する。すなわち、管理ECU10は、車両100の制御方法の制御主体である。以下では、アプリケーションAPからの運動要求のうちの加速度要求値を対象に、管理ECU10が担う処理を説明する。
【0019】
管理ECU10は、アプリケーションAPからの加速度要求値を統括管理する管理処理を実行可能である。
図1に示すように、管理ECU10は、プログラムWを実行することにより、管理処理を実現するため受付部11と、調停部12と、出力部13と、して機能する。受付部11は、各アプリケーションAPから加速度要求値を受け付け可能である。受付部11が受け付け可能な加速度要求値には、以下の3種類のものが存在する。3種類の加速度要求値は、第1アプリケーションからの縮退を必要とする加速度要求値、第1アプリケーションからの縮退を必要としない加速度要求値、及び第2アプリケーションからの縮退を必要としない加速度要求値である。調停部12は、受付部11が受け付けた複数の加速度要求値の中から最も小さい値の加速度要求値を選択する。なお、調停部12は、加速度要求値の一種である縮退値を選択することもある。縮退値については後述する。出力部13は、調停部12が選択した加速度要求値、又は縮退値に応じた指示値をアクチュエータシステムに出力する。
【0020】
図3に示すように、管理処理には、通常処理と、特定処理と、の2種類が存在する。通常処理は、車両100に故障が検出されていない通常時を対象とした処理である。特定処理は、車両100に故障が検出されている場合を対象にした、故障時専用の処理である。詳細には、特定処理は、後述の縮退処理の実行期間N中を対象にした処理である。管理ECU10は、これらのいずれかを行うことによってアプリケーションAPからの加速度要求値を実現する。なお、管理ECU10は、通常処理において調停部12が縮退を必要とする加速度要求値を選択したことを契機として特定処理を行う。管理ECU10の受付部11は、特定処理では、第1アプリケーションからの縮退を必要とする加速度要求値に代えて縮退値を受け付ける。
【0021】
管理ECU10は、第1アプリケーションに係る加速度要求値の縮退を実現するための処理として、縮退処理を実行可能である。
図1に示すように、管理ECU10は、プログラムWを実行することにより、この縮退処理を実現する縮退部15として機能する。なお、縮退部15は、縮退の要否を判断する縮退要否処理の一環として縮退処理を行う。縮退部15は、縮退処理では、通常処理において調停部12が縮退を必要とする加速度要求値を選択した場合に、当該加速度要求値を予め定められた終了値へと時間の経過と共に近づけていった縮退値を出力する。
【0022】
管理ECU10は、車両100の各所における故障の有無についての情報を、故障情報として随時取得する。故障情報は、エンジンECU75やブレーキECU85など、車両100の各所を制御するECUから送られてくる。エンジンECU75やブレーキECU85との関連で説明したように、各ECUは、センサの検出値などに基づいて故障を検出する。
【0023】
<管理テーブル>
管理ECU10は、管理テーブルを予め記憶している。管理テーブルは、アプリケーションAPからの加速度要求値の縮退の要否をまとめた表である。管理テーブルには、アプリケーションAP毎に次の4つの項目が定められている。4つの項目は、アプリケーションAPの種別と、アプリケーションAPの識別値と、各故障内容に応じた加速度要求値の縮退の要否と、縮退が必要な場合を対象として定められている縮退の特性である。アプリケーションAPの種別は、第1アプリケーションであるか第2アプリケーションであるかを示す情報である。縮退の特性は、加速度要求値を縮退させていく際の終了値を算出するための情報である。縮退の特性は、例えば、加速度要求値をどの程度の大きさまで縮退させるかといった情報を含んでいる。管理テーブルに定められている内容は、第1アプリケーションと第2アプリケーションとで次のような違いがある。すなわち、第1アプリケーションでは、故障内容によっては、縮退が必要である旨が定めてある。一方、第2アプリケーションでは、故障内容にかかわらず、縮退は不要である旨が定めてある。
【0024】
<通常処理>
通常処理について詳述する。なお、通常処理を説明する前提として、指令ECU50は、ある特定のアプリケーションAPの実行中は、実行対象のアプリケーションAPの識別値と、実行対象のアプリケーションAPの加速度要求値と、を管理ECU10に所定の第1周期で繰り返し出力する。
【0025】
本実施形態の管理ECU10は、指令ECU50がADアプリケーションAP2を開始することに応じて通常処理を開始する。管理ECU10は、指令ECU50がADアプリケーションAP2の実行を継続している間、すなわち、車両100が自律運転を行っている間、通常処理を所定の第2周期で繰り返し実行する。第2周期は、例えば第1周期と同じである。
【0026】
図4に示すように、管理ECU10は、通常処理では、先ずステップS11の処理を行う。ステップS11では、受付部11が受付工程を行う。受付部11は、受付工程では、
図1に示すように、アプリケーションAPからの最新の加速度要求値をアプリケーションAPの識別値とともに受け付ける。なお、
図1における矢印は、各ECU間及び各機能部間での情報の授受の流れを示している。上述したとおり、指令ECU50は、同時に複数のアプリケーションAPを実行することもある。この場合、受付部11は、ADアプリケーションAP2からの加速度要求値を含む複数の加速度要求値を受け付ける。受付部11は、受付工程では、加速度要求値を受け付けることに加えて、現時点における故障情報を確認する。そして、受付部11は、故障情報と管理テーブルとに基づいて、各アプリケーションAPからの加速度要求値の縮退の要否を判断する。そして、受付部11は、縮退の要否に応じて、受け付けた各加速度要求値の取り扱い方を定める。例えば、受付部11は、ADアプリケーションAP2からの加速度要求値については、縮退を必要としない加速度要求値として取り扱う。例えば、受付部11は、AEBアプリケーションAP1からの加速度要求値を受け付けた場合、この加速度要求値を次のように取り扱う。すなわち、受付部11は、AEBアプリケーションAP1に対応する車両故障が検出されていれば、AEBアプリケーションAP1からの加速度要求値を、縮退を必要とする加速度要求値として取り扱う。一方、受付部11は、AEBアプリケーションAP1に対応する車両故障が検出されていなければ、AEBアプリケーションAP1からの加速度要求値を、縮退を必要としない加速度要求値として取り扱う。受付部11は、以上のようにして加速度要求値を受け付けると、受け付けた加速度要求値と、縮退の要否を示す情報と、アプリケーションAPの識別子と、を1セットにした受付データを生成する。受付部11は、加速度要求値を受け付けたアプリケーションAP毎に受付データを生成する。そして、受付部11は、生成した全ての受付データを調停部12へ出力する。
図4に示すように、管理ECU10は、受付データを出力すると、処理をステップS12に進める。
【0027】
ステップS12では、調停部12が調停工程を行う。調停部12は、調停工程では、受付部11が受け付けた加速度要求値を調停する。調停部12は、受付部11が受け付けた加速度要求値がADアプリケーションAP2からの1つのみの場合には、その加速度要求値を選択する。一方、調停部12は、受付部11が受け付けた加速度要求値が複数存在する場合には、受け付けた複数の加速度要求値の中から最も小さい値の加速度要求値を選択する。
図1に示すように、調停部12は、加速度要求値を選択すると、その加速度要求値を含む受付データを、出力部13と縮退部15との双方に出力する。この後、
図4に示すように、管理ECU10は、処理をステップS13に進める。
【0028】
管理ECU10は、ステップS13に処理を進めると、出力工程を行う。この出力工程は、出力部13が行う。
図1に示すように、出力部13は、出力工程では、調停部12が選択した加速度要求値に応じた指示値を各アクチュエータシステムに出力する。このとき、出力部13は、調停部12が選択した加速度要求値を第1アクチュエータシステム70と第2アクチュエータシステム80とに分配する。そして、出力部13は、分配した値を力の単位に変換した指示値を算出する。調停部12が選択した加速度要求値が正の値である場合、出力部13は、その加速度要求値が大きいほど、車両100の駆動力が大きくなるように指示値を算出する。また、調停部12が選択した加速度要求値が負の値である場合、出力部13は、その加速度要求値が小さいほど、車両100の制動力が大きくなるように指示値を算出する。出力部13は、こういった要領で各アクチュエータシステムに対する指示値を算出する。出力部13は、各指示値を算出すると、算出した各指示値を各アクチュエータシステムに出力する。この後、
図4に示すように、管理ECU10は、通常処理の一連の処理を一旦終了する。そして、管理ECU10は、再度ステップS11の処理を行う。
【0029】
<縮退要否処理>
特定処理を説明する前に、縮退要否処理について説明する。縮退部15は、調停部12が通常処理において調停工程を行う度に、縮退要否処理を行う。
【0030】
図5に示すように、縮退部15は、縮退要否処理では、先ずステップS100の処理を行う。ステップS100において、縮退部15は、調停部12が出力した最新の調停結果を取得する。すなわち、
図1に示すように、縮退部15は、調停部12が選択した加速度要求値を含む受付データを取得する。なお、縮退部15は、新たな受付データを取得すると、前回取得した受付データをクリアする。
図5に示すように、縮退部15は、受付データを取得すると、処理をステップS110に進める。
【0031】
ステップS110において、縮退部15は、調停部12が選択した加速度要求値が、縮退を必要とする加速度要求値であるか否かを判定する。縮退部15は、受付データに含まれている縮退の要否を示す情報を参照することで、この判定を行う。縮退部15は、調停部12が選択した加速度要求値が、縮退を必要とする加速度要求値ではない場合(ステップS110:NO)、縮退要否処理を終了する。
【0032】
一方、ステップS110において、縮退部15は、調停部12が選択した加速度要求値が、縮退を必要とする加速度要求値である場合(ステップS110:YES)、処理をステップS120に進める。
【0033】
ステップS120において、縮退部15は、この後の縮退処理で縮退値を算出していく上での最終目標値となる終了値を算出する。縮退部15は、管理テーブル、受付データに含まれているアプリケーションAPの識別子、及び故障情報などを参照することで、つぎのことを把握する。すなわち、縮退部15は、縮退処理の実行対象となっている第1アプリケーションに関して、現状の故障内容の下で要求される縮退の特性を把握する。上記のとおり、縮退の特性は、管理テーブルに含まれている情報の1つである。縮退部15は、縮退の特性を把握すると、この縮退の特性と、現時点での車両100の走行状態とに基づいて終了値を算出する。車両100の走行状態は、例えば車両100の走行速度、車両100に付与している制動力などを含んでいる。ここで、第1アプリケーションの設定上、縮退部15がステップS100で取得した加速度要求値は負の値である。縮退部15は、この加速度要求値よりも大きな値として終了値を算出する。終了値は、正の値であることも負の値であることもゼロであることもあり得る。終了値は、基本的に、縮退処理の実行対象となっている以外のアプリケーションAPからの加速度要求値よりも大きな値になるように定められる。縮退部15は、終了値を算出すると、処理をステップS130に進める。
【0034】
ステップS130において、縮退部15は、縮退処理を実行する。このとき、縮退部15は、縮退処理の実行中であることを示す縮退フラグをオフからオンに切り替える。その上で、縮退部15は、縮退処理を開始する。縮退部15は、縮退処理では、所定の第3周期で縮退値の算出を繰り返す。第3周期は、例えば第2周期と同じである。縮退部15は、次のようにして縮退値を算出していく。縮退部15は、ステップS100で取得した加速度要求値を、縮退値の初期値として取り扱う。上記のとおり、第1アプリケーションの設定上、初期値は、負の値である。縮退部15は、新たな縮退値を算出するにあたり、縮退値の前回値に、予め定められた正の所定値を加算する。そして、縮退部15は、得られた値を新たな縮退値とする。こういった要領で、縮退部15は、縮退値を繰り返し算出していく。縮退部15は、縮退値が終了値になるまで縮退値の算出を繰り返す。縮退部15は、縮退値が終了値になると、縮退値の算出を終了する。なお、縮退部15は、縮退処理では、縮退値を算出する度に、算出した縮退値を受付部11に出力する。縮退部15は、縮退値を出力する際には、縮退値と、縮退値であることを示す情報と、縮退処理の実行対象となった第1アプリケーションの識別子と、を1セットとしたデータである縮退データを出力する。縮退部15は、縮退値が終了値になることに応じて縮退値の算出を終えると、縮退処理を終了する。それとともに、縮退部15は、縮退フラグをオンからオフに切り替える。そして、縮退部15は、縮退要否処理を終了する。
【0035】
<特定処理>
特定処理について詳述する。前提として、本実施形態では、縮退フラグがオンである場合、指令ECU50がADアプリケーションAP2の実行を継続する。また、縮退フラグがオンである場合、指令ECU50が、縮退処理の実行対象になっている第1アプリケーションの実行を継続する。例えばAEBアプリケーションAP1など、特定の第1アプリケーションが縮退処理の実行対象となっている場合、指令ECU50は、縮退処理の初期値となっている加速度要求値を繰り返し出力する。例えば、縮退部15が縮退処理の実行中に縮退実行情報を指令ECU50に出力することで、指令ECU50は管理ECU10の処理内容を把握して自身の処理に反映できる。縮退実行情報は、縮退フラグがオンであることの情報と、縮退処理の実行対象となっている第1アプリケーションの識別子と、を含んでいる。なお、指令ECU50は、縮退処理の実行対象となっている第1アプリケーションの実行を、縮退フラグがオンである期間の途中で終了してもよい。この場合、縮退フラグがオンである期間に限り、管理ECU10は、次のような疑似的な取り扱いをする。すなわち、管理ECU10は、縮退処理の実行対象となっている第1アプリケーションから上記の初期値が出力されているものとして取り扱う。
【0036】
管理ECU10は、縮退フラグがオンであることを条件に、通常処理に代えて、特定処理を行う。すなわち、
図3に示すように、管理ECU10は、縮退処理の実行期間N中を対象に、特定処理を行う。縮退処理の実行期間N中が特定処理の対象期間Lであり、縮退処理の実行期間N以外の期間が通常処理の対象期間Tである。管理ECU10は、縮退処理の実行期間N中、上記第2周期で特定処理を繰り返す。特定処理の内容は、基本的には、通常処理と同じである。そのため、以下では、通常処理とは異なる部分を主として特定処理について説明する。
【0037】
図4に示すように、管理ECU10は、特定処理では、先ずステップS11において受付工程を行う。管理ECU10の受付部11は、受付工程では、通常処理と同様、各アプリケーションAPからの加速度要求値をアプリケーションAPの識別子とともに受け付ける。このとき、受付部11は、
図6にAEBアプリケーションAP1で例示するように、縮退処理の実行対象となっている第1アプリケーションからの加速度要求値については、当該加速度要求値に代えて、縮退部15が出力する最新の縮退値を受け付ける。なお、特定処理を行う状況は、縮退処理の実行対象となっている第1アプリケーションに対応する車両故障が検出されている状況である。したがって、縮退処理の実行対象となっている第1アプリケーションからの加速度要求値は、縮退を必要とする加速度要求値である。すなわち、受付部11は、受付工程では、第1アプリケーションからの縮退を必要とする加速度要求値に代えて縮退値を受け付ける。さて、受付部11は、受付工程では、縮退処理の実行対象となっている第1アプリケーション以外の第1アプリケーションからの加速度要求値については、縮退を必要とする加速度要求値であれば、受け付けをキャンセルする。受付部11は、縮退部15から出力された縮退データに含まれているアプリケーションAPの識別子、管理テーブル、及び故障情報などを参照することで、受け付ける加速度要求値と、受け付けない加速度要求値と、を判別する。受付部11は、以上のようにして受け付けた加速度要求値を、通常処理と同じフォーマットの受付データとして調停部12へ出力する。受付部11は、少なくとも、ADアプリケーションAP2からの加速度要求値と、縮退値との2つに対応する受付データを調停部12に出力することになる。なお、受付部11は、縮退値に係る受付データについては、縮退の要否を示す情報に、縮退が必要である旨を設定する。すなわち、受付部11は、縮退値を、縮退が必要な加速度要求値の一種として取り扱う。ここで、縮退値は、第1アプリケーションで定められた行動計画にしたがって、管理ECU10が指令ECU50に代わって算出した第1アプリケーションからの加速度要求値である。そして、特定処理を行う状況では、上記のとおり、縮退処理の実行対象となっている第1アプリケーションに対応する車両故障が検出されている状況である。したがって、縮退値は、第1アプリケーションからの縮退を必要とする加速度要求値である。
図4に示すように、管理ECU10は、各受付データを出力すると、処理をステップS12に進める。
【0038】
ステップS12において、管理ECU10の調停部12は、調停工程を行う。調停部12は、通常処理と同様、受付工程で受け付けた複数の加速度要求値の中から最も小さい値の加速度要求値を選択する。そして、
図6に示すように、調停部12は、選択した加速度要求値を出力部13に出力する。この後、
図4に示すように、管理ECU10は、処理をステップS13に進める。
【0039】
ステップS13において、管理ECU10の出力部13は、出力工程を行う。
図6に示すように、出力部13は、出力工程では、通常処理と同様、調停部12が選択した加速度要求値に応じた指示値を各アクチュエータシステムに出力する。なお、
図6では、アクチュエータシステムの図示を省略している。出力部13は、調停部12が縮退値を選択した場合には、縮退値に応じた指示値を各アクチュエータシステムに出力する。縮退値は、上記の受付工程で説明したとおり、第1アプリケーションからの縮退を必要とする加速度要求値に相当する。すなわち、出力部13は、調停部12が第1アプリケーションからの縮退が必要な加速度要求値を選択した場合には、縮退値に応じた指示値を出力する。一方で、出力部13は、調停部12が第2アプリケーションからの加速度要求値を選択した場合には、第2アプリケーションからの加速度要求値に応じた指示値を各アクチュエータシステムに出力する。なお、指示値の算出の仕方については、通常処理と同じであるため説明を割愛する。
図4に示すように、管理ECU10は、指示値を出力すると、特定処理の一連の処理を一旦終了する。そして、管理ECU10は、ステップS11の処理を再度行う。
【0040】
<実施形態の作用>
いま、ADアプリケーションAP2が実行されているものとする。そして、管理ECU10が通常処理によってADアプリケーションAP2の加速度要求値を選択している状況が続いているものとする。すなわち、車両100は自律運転中である。こうした車両100の自律運転中に、車両100を急制動させるべき状況が訪れたとする。そして、ADアプリケーションAP2から負の加速度要求値が出力されたとする。このとき、AEBアプリケーションAP1も作動したとする。この場合、これらの各アプリケーションAPの設定上、AEBアプリケーションAP1からは、ADアプリケーションAP2の加速度要求値よりも絶対値の大きい負の加速度要求値が出力される。このときにAEBアプリケーションAP1に対応する車両故障が検出されているとする。この場合、管理ECU10は、通常処理の受付工程では、AEBアプリケーションAP1からの加速度要求値を、縮退が必要な加速度要求値として受け付ける。そして、管理ECU10は、通常処理の調停工程では、ADアプリケーションAP2からの加速度要求値と、AEBアプリケーションAP1からの加速度要求値とのうち、小さい方であるAEBアプリケーションAP1の加速度要求値を選択する。この選択結果を受けて、管理ECU10の縮退部15は、縮退処理を開始する。そして、縮退部15は、AEBアプリケーションAP1の加速度要求値の縮退値を繰り返し算出する。なお、
図7では、縮退処理の実行初期の段階である時刻T1から時刻T2までの縮退値を実線で示している。この実線で示されるように、縮退値は、時間の経過とともに終了値Yに近づいていく。
【0041】
管理ECU10は、縮退処理を開始すると、通常処理をキャンセルして、特定処理を行うようになる。そして、
図6に示すように、管理ECU10は、特定処理の受付工程では、ADアプリケーションAP2からの加速度要求値と、縮退部15が縮退処理で算出した縮退値とを受け付ける。ここで、縮退処理の初期段階では、縮退値の縮退の度合が小さい。そのため、
図7に示すように、この初期段階である時刻T1から時刻T2までの間、管理ECU10は、特定処理の調停工程において、二点鎖線で示すADアプリケーションAP2の加速度要求値と、実線で示す縮退値とのうち、小さい方である縮退値を選択する。そして、管理ECU10は、出力工程において、この縮退値に応じた指示値をアクチュエータシステムに出力する。なお、
図7では、ADアプリケーションAP2からの加速度要求値が一定である場合の例を示している。
【0042】
上記のとおり、時刻T1から時刻T2までの間に、縮退値は、時間の経過とともに終了値Yに近づいていく。このこととの兼ね合いで、時刻T2において、縮退値はADアプリケーションAP2の負の加速度要求値よりも大きくなる。なお、
図7では、時刻T2以降については、ADアプリケーションAP2の加速度要求値を実線で、縮退値を一点鎖線で示している。時刻T2以降のように、縮退値がADアプリケーションAP2の加速度要求値よりも大きくなると、管理ECU10は、特定処理の調停工程では、次のように処理を行うようになる。すなわち、管理ECU10は、ADアプリケーションAP2の加速度要求値と、縮退値とのうち、小さいほうであるADアプリケーションAP2の加速度要求値を選択するようになる。そして、管理ECU10は、出力工程において、ADアプリケーションAP2の加速度要求値に応じた指示値をアクチュエータシステムに出力する。総じて、管理ECU10は、時刻T1以降において、
図7の実線で示す加速度要求値を選択することになる。なお、
図7に示す縮退値及びADアプリケーションAP2からの加速度要求値の推移は、あくまでも実施形態の作用を説明するための例であり、実際のものとは必ずしも一致しない。
【0043】
AEBアプリケーションAP1の設定上、縮退処理が終了する段階又はその前段階で、当該AEBアプリケーションAP1からの加速度要求値の出力は停止する。そのため、管理ECU10は、縮退処理の終了に伴って通常処理を再開すると、縮退処理の途中以降に引き続いて、ADアプリケーションAP2の加速度要求値に応じた指示値をアクチュエータシステムに出力する。
【0044】
<実施形態の効果>
(1)上記作用に記載したとおり、管理ECU10は、通常処理の調停工程において第1アプリケーションからの縮退を必要とする加速度要求値を選択した場合、それ以降、特定処理を行う。そして、受付部11は、受付工程において、時間の経過と共に終了値に近づいていく縮退値を受け付ける。すると、調停部12は、調停工程において、いずれADアプリケーションAP2からの加速度要求値を選択するようになる。出力部13は、この選択結果を反映した指示値をアクチュエータシステムに出力する。したがって、本実施形態の構成であれば、ADアプリケーションAP2からの要求を長時間実現できない状況が継続することを防げる。そのため、例えば急制動が必要な状況下で制動要求の縮退を余儀なくされる場合であっても、制動の制御を途中で終えることなく、ADアプリケーションAP2からの要求によって確実に車両100を制動できる。
【0045】
(2)受付部11は、車両100に故障が検出されていないときには、第1アプリケーションからの加速度要求値であっても、縮退を必要としない加速度要求値として受け付ける。したがって、車両100に故障が検出されていないときにまで調停工程で第1アプリケーションからの要求を棄却してしまうことを防げる。
【0046】
<変更例>
上記の実施形態は、以下のように変更することができる。上記実施形態及び以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
【0047】
・上記実施形態の出力部13は、通常処理において、調停部12が選択した加速度要求値に応じた指示値をアクチュエータシステムに出力する。この態様を採用するのであれば、特定処理における出力部13の処理内容を次のように変更してもよい。すなわち、出力部13は、特定処理では、調停部12が選択した加速度要求値、又は縮退値に応じた指示値をアクチュエータシステムに出力しなくてもよい。例えば、出力部13は、特定処理では、調停部12が縮退値を選択した場合に、この縮退値に応じた指示値ではなく、縮退処理の初期値となっている加速度要求値に応じた指示値をアクチュエータシステムに出力してもよい。このように、上記実施形態の通常処理を基本の処理として行うのであれば、出力部13は、特定処理では、調停部12が選択した加速度要求値、又は縮退値以外の値に応じた指示値を出力してもよい。
【0048】
・上記変更例に記載したとおり、特定処理の内容は、上記実施形態の例に限らない。特定処理は、受付部11が、第1アプリケーションからの縮退を必要とする加速度要求値に代えて縮退値を受け付ける構成であればよい。
【0049】
・縮退処理の終了のタイミングは、上記実施形態の例に限らない。例えば、縮退値が、第2アプリケーションからの加速度要求値よりも大きくなった段階で、縮退処理を終了してもよい。
【0050】
・縮退処理における縮退値の算出方法は、上記実施形態の例に限らない。例えば、縮退値の算出に利用する所定値を、縮退処理の実行中に徐々に大きくしたり小さくしたりしてもよい。所定値を、アプリケーションAP毎に異なる値に設定してもよい。加速度要求値を時間の経過と共に終了値に近づけていくことができれば、縮退値の算出手法は問わない。
【0051】
・終了値の算出方法は、上記実施形態の例に限らない。上記実施形態では、管理テーブルに縮退の特性についての情報が含まれていた。この縮退の特性についての情報を、指令ECU50が第1アプリケーションの実行に際して出力してもよい。すなわち、指令ECU50がある特定の第1アプリケーションを実行した際に、加速度要求値とともに縮退の特性についての情報を算出し、それらを管理ECU10に出力してもよい。また、指令ECU50が第1アプリケーションを実行した際に終了値そのものを算出及び出力してもよい。この場合でも、車両100の走行状況などを踏まえた適切な終了値を算出できるように第1アプリケーションのプログラム内容を構成しておけばよい。そして、管理ECU10は、指令ECU50からの情報を基に終了値を定めればよい。終了値は、縮退値を算出する時点で予め定められていればよい。
【0052】
・指令ECU50がアプリケーションAPを実行する際に出力する情報に、実行対象のアプリケーションAPの識別値が含まれていることは必須ではない。例えば、上記実施形態の管理テーブルに含まれていた、アプリケーションAPの識別値以外の各種情報を指令ECU50がアプリケーションAPからの加速度要求値とともに出力するようにしてもよい。そして、それらの情報を基に、管理ECU10が上記実施形態と同様の判断を行って各処理を実現してもよい。
【0053】
・車両100における故障の有無にかかわらず、第1アプリケーションからの加速度要求値を常時、縮退が必要な加速度要求値として受け付けてもよい。例えば、複数の第1アプリケーションのうち、そうした受け付け方をするアプリケーションAPと、上記実施形態と同様の受け付け方をするアプリケーションAPとを設定してもよい。各第1アプリケーションの機能に応じて、適切な受け付け方を設定してよい。
【0054】
・複数の第1アプリケーションのうち、予め指定された第1アプリケーションが縮退処理の対象になった場合のみ、特定処理を行ってもよい。この場合、上記指定された第1アプリケーション以外の第1アプリケーションが縮退処理の対象になった場合には、縮退処理の実行中、縮退値が終了値に至るまで縮退値に応じた指示値をアクチュエータシステムに出力してよい。指令ECU50が記憶しているアプリケーションAPの組み合わせによっては、制御の縮退の完遂が必要なこともあり得る。特定処理の実行を指定するアプリケーションAPは、1つでも複数でもよい。
【0055】
・上記実施形態では、ADアプリケーションAP2の実行中を対象に通常処理を行った。しかし、ADアプリケーションAP2が実行されていないときを対象に通常処理を行ってもよい。そして、上記実施形態と同様、通常処理において第1アプリケーションから縮退が必要な加速度要求値を受け付けたときに、特定処理に移行してもよい。
【0056】
・指令ECU50が記憶しているアプリケーションAPにAEBアプリケーションAP1が含まれていることは必須ではない。同様に、指令ECU50が記憶しているアプリケーションAPにADアプリケーションAP2が含まれていることは必須ではない。これらのアプリケーションAPに限らず、第1アプリケーションから縮退を必要とする加速度要求値を受け付け、且つ第2アプリケーションから縮退を必要としない加速度要求値を受け付けた場合に、上記実施形態の態様は有効である。
【0057】
・指令ECU50が記憶しているアプリケーションAPに、第1アプリケーションとして、正の加速度要求値を出力するものが存在していることもあり得る。この場合、このアプリケーションAPを対象とした縮退処理の実行中は、特定処理に代えて、他の適切な処理を行って最適な指示値を各アクチュエータシステムに出力するように構成してよい。
【0058】
・指令ECU50と管理ECU10とを別々の処理装置として構成するのではなく、1つの処理装置によって指令ECU50と管理ECU10との機能を兼ねる構成としてもよい。同様に、例えば、アクチュエータシステムのECUが、管理ECU10の機能を兼ねる構成としてもよい。
【0059】
・車両100の駆動源として、エンジン71に代えて、又は加えてモータジェネレータを車両100に搭載してもよい。この場合、アクチュエータであるモータジェネレータと、モータジェネレータを制御するECUと、を含むアクチュエータシステムを車両100に搭載すればよい。
【0060】
・管理ECU10は、CPUとメモリとを備えて、ソフトウェア処理を実行するものに限らない。すなわち、管理ECU10は、以下(a)、(b)及び(c)の何れかの構成であればよい。この点、他のECUについても同様である。
【0061】
(a)管理ECU10は、コンピュータプログラムに従って各種処理を実行する1つ以上のプロセッサを有する。プロセッサは、CPU並びに、RAM及びROMなどのメモリを含んでいる。メモリは、処理をCPUに実行させるように構成されたプログラムコード又は指令を格納している。メモリ、すなわちコンピュータ可読媒体は、汎用又は専用のコンピュータでアクセスできるあらゆる利用可能な媒体を含んでいる。
【0062】
(b)管理ECU10は、各種処理を実行する1つ以上の専用のハードウェア回路を備えている。専用のハードウェア回路としては、例えば、特定用途向け集積回路、すなわちASIC又はFPGAを挙げることができる。
【0063】
(c)管理ECU10は、各種処理の一部をコンピュータプログラムに従って実行するプロセッサと、各種処理のうちの残りの処理を実行する専用のハードウェア回路とを備えている。
【符号の説明】
【0064】
10…管理ECU
11…受付部
12…調停部
13…出力部
15…縮退部
72…アクチュエータ
82…アクチュエータ
100…車両