以下、本開示による車両運動制御方法及び車両運動制御装置を実施するための形態を、図面に示す実施例1に基づいて説明する。
(実施例1)
実施例1における車両運動制御方法及び車両運動制御装置は、自動運転モードを選択すると、目標軌跡が生成され、この目標軌跡に沿って走行するように速度及び舵角(車両運動)が制御される自動運転車両に適用したものである。以下、実施例1の構成を、「全体システム構成」、「自動運転コントローラの制御ブロック構成」、「車両運動コントローラの制御ブロック構成」、「路面μ値情報演算器の制御ブロック構成」、「路面μ値情報演算処理構成」、「第1路面μ推定値演算処理構成」、「応答特性制御処理構成」に分けて説明する。
[全体システム構成]
以下、図1に基づいて、実施例1の車両運動制御方法及び車両運動制御装置が適用された運転システム100の全体構成を説明する。
自動運転車両(以下、「車両」という)に適用された運転システム100は、車載センサ1と、ナビゲーション装置2と、車載制御ユニット3と、アクチュエータ4と、HMIモジュール5と、を備えている。
車載センサ1は、車両周辺の物体や道路形状等の周辺環境、車両の状態等を認識するために車両に搭載された各種のセンサである。この車載センサ1は、外部センサ11、GPS受信機12、内部センサ13を有する。なお、車載センサ1では、複数の異なるセンサを用いて必要な情報を取得するセンサフュージョンを行ってもよい。
外部センサ11は、車両周辺の環境情報を検出する検出機器である。外部センサ11は、カメラ、レーダー(Radar)、ライダー(LIDER:Laser Imaging Detection and Rangin)等から構成される。なお、カメラ、レーダー及びライダーは、必ずしも重複して備える必要はない。
カメラは、画像データを取得するための撮像機器である。このカメラは、例えば、前方認識カメラ、後方認識カメラ、右方認識カメラ、左方認識カメラ等を組み合わせることにより構成され、撮影した画像や映像の解析を人工知能や画像処理用プロセッサを用いてリアルタイムで行う。これにより、カメラでは、自車走行路上物体・車線・自車走行路外物体(道路構造物、先行車、後続車、対向車、周囲車両、歩行者、自転車、二輪車)・自車走行路(道路白線、道路境界、停止線、横断歩道)・道路標識(制限速度)等を検知できる。なお、単眼カメラでは一般的に対象物までの距離の計測はできないが、複眼カメラを用いて異なる視点から同時に撮影を行うことによって、対象物までの距離を計測することも可能となる。
レーダーは、信号を利用して距離データを取得する装置である。ここで、「レーダー」とは、電波を用いたレーダーと、超音波を用いたソナーと、を含む総称であり、例えば、レーザーレーダー、ミリ波レーダー、超音波レーダー、レーザーレンジファインダー等を用いることができる。また、ライダーは、光を利用して距離データを取得する装置である。
レーダーやライダーは、車両の周囲に電波等の信号や光を送信し、対象物で反射された電波等の信号や光を受信することで、反射点である対象物までの距離や方向を検出する。これにより、レーダーやライダーでは、自車走行路上物体・自車走行路外物体(道路構造物、先行車、後続車、対向車、周囲車両、歩行者、自転車、二輪車)等の位置を検知できると共に、各物体までの距離を検知できる。
GPS受信機12は、3個以上のGPS衛星から信号を受信して、車両の位置を示す位置データを取得するための装置である。このGPS受信機12は、GNSSアンテナ12aを有し、自車位置の緯度及び経度を検出する。なお、「GNSS」は「Global Navigation Satellite System:全地球航法衛星システム」の略称であり、「GPS」は「Global Positioning System:グローバル・ポジショニング・システム」の略称である。また、GPS受信機12による信号受信が不良のときには、内部センサ13やオドメーター(車両移動量計測装置)を利用してGPS受信機12の機能を補完してもよい。
内部センサ13は、車両の速度・加速度・姿勢データ等の車両情報を検出する検出機器である。この内部センサ13は、例えば6軸慣性センサ(IMU:Inertial Measurement Unit)を有し、車両の移動方向、向き、回転を検出することができる。さらに、この内部センサ13の検出結果に基づいて移動距離や移動速度などを算出できる。6軸慣性センサは、前後、左右、上下の三方向の加速度を検出できる加速度センサと、この三方向の回転の速さを検出できるジャイロセンサを組み合わせることで実現される。また、内部センサ13には、車輪速センサ13a(図3参照)や車速センサ等の必要なセンサを含むことができる。
さらに、この車載センサ1では、不図示の外部データ通信器との間で無線通信を行うことで、必要な情報を外部から取得してもよい。すなわち、外部データ通信器が、例えば、他車両に搭載されたデータ通信器の場合、自車両と他車両の間で車車間通信を行う。この車車間通信により、他車両が保有する様々な情報から必要な情報を取得することができる。また、外部データ通信器が、例えば、インフラストラクチャ設備に設けられたデータ通信器の場合、自車両とインフラストラクチャ設備の間でインフラ通信を行う。このインフラ通信により、インフラストラクチャ設備が保有する様々な情報から必要な情報を取得することができる。この結果、例えば、自動運転コントローラ31が有する地図データでは不足する情報や変更された情報がある場合に必要な地図データを補うことができる。また、車両が走行を予定している経路上での渋滞情報や走行規制情報等の交通情報を取得することもできる。
ナビゲーション装置2は、地図データや施設情報のデータを内蔵し、目的地までの経路を案内する装置である。このナビゲーション装置2では、目的地が入力されると、車両の現在地(或いは任意に設定された出発地)から目的地までの案内経路を算出する。算出された案内経路の情報は、地図データと合成されてHMIモジュール5のディスプレイパネルに表示される。なお、目的地は、車両の乗員が車内で設定してもよいし、ユーザ端末(例えば、携帯電話、スマートフォン等)によってユーザが設定した目的地を無線通信を介して車両で受信し、受信した目的地を用いてもよい。また、案内経路は、車両に備わるナビゲーション装置2で算出してもよいが、車外のコントローラを用いたナビゲーション装置により算出するようにしてもよい。
車載制御ユニット3は、CPUやメモリを備えており、車載センサ1によって検出された各種の検出情報や、ナビゲーション装置2によって生成された案内経路情報、必要に応じて適宜入力されるドライバー入力情報を統合処理する。そして、この車載制御ユニット3は、タイヤ情報を用いた階層処理により車両運動を制御するコントローラである。なお、「階層処理」とは、入力情報に対して複数の処理を順に(階層的に)実行して最終的な出力情報を演算することであり、上位階層の処理にて出力された出力値(演算値)が下位階層の処理での入力値となる。実施例1では、複数の処理においてタイヤ情報を用いる。
この車載制御ユニット3は、車両運動を制御するための制御指令値を演算する自動運転コントローラ31及び車両運動コントローラ32と、タイヤ情報を演算する路面μ値情報演算器33と、を有している。ここで、自動運転コントローラ31は、車両を目標位置まで走行させる目標軌跡を算出すための上位行動計画を演算する第一階層処理を実行する。なお、この自動運転コントローラ31は、第1制御周期(約70ミリ秒)にて演算を行う。これに対し、車両運動コントローラ32は、自動運転コントローラ31によって演算された上位行動計画を用いて、車両を目標位置まで走行するに際し、タイヤに発生させる力(タイヤ力)を算出するための下位行動計画を演算する第二階層処理を実行する。なお、この車両運動コントローラ32は、第1制御周期よりも短い第2制御周期(約10ミリ秒)にて演算を行う。そして、自動運転コントローラ31の制御周期(第1制御周期)が、車両運動コントローラ32の制御周期(第2制御周期)よりも長いため、自動運転コントローラ31にて情報を受け付ける周期は、車両運動コントローラ32にて情報を受け付ける周期よりも遅くなる。
自動運転コントローラ31では、車載センサ1やナビゲーション装置2からの入力情報や高精度地図データ等に基づき、目標車速プロファイルや目標軌跡、走行計画、車両の動作等の上位行動計画を多段の階層処理により演算する。ここで、「目標軌跡」とは、車両を自動で走行させる際の目標となる軌跡であり、例えば、車両が存在する車線の中で走行するための軌跡や、車両周囲の走行可能な領域(走行可能領域)内で走行するための軌跡、障害物回避のための緊急操舵時の軌跡を含む。この自動運転コントローラ31によって演算された目標車速プロファイル及び目標軌跡の情報は車両運動コントローラ32に出力される。また、目標軌跡の情報は、路面μ値情報演算器33にも出力される。目標軌跡の情報は、高精度地図データと合成されてHMIモジュール5のディスプレイパネルに表示される。
車両運動コントローラ32では、目標車速プロファイル及び目標軌跡の情報やドライバーによる入力情報(以下、「ドライバー入力」という)に基づいて、車両を目標に応じて走行させるための制御指令値(速度制御指令値及び操舵制御指令値等)や、規範モデルを用いた演算、調停、四輪モデルの指令値、剛体モデルの指令値等の下位行動計画を多段の階層処理により演算する。この車両運動コントローラ32によって演算された制御指令値はアクチュエータ4に出力される。なお、車両運動コントローラ32では、ドライバー入力の有無によって走行モードを調停し、調停結果に応じた制御指令値を演算する。例えば、自動運転モードの選択中でドライバー入力が無い場合は、目標軌跡に沿って走行することを目標にして車両を走行させる制御指令値を出力する。一方、ドライバー入力が生じた場合は、ドライバー入力を目標にして車両を走行させる制御指令値を出力する。
路面μ値情報演算器33では、目標軌跡の情報である目標軌跡の旋回曲率と、路面摩擦係数の推定値とに基づいて路面μ値情報を演算する。ここで、「路面μ値情報」は、車両運動を制御する制御指令値を演算する際に用いられるタイヤ情報であり、車両に装着されたタイヤのグリップ限界情報に相当する。この路面μ値情報は、タイヤに発生する縦方向のグリップ限界である縦力限界値と、タイヤに発生する横方向のグリップ限界である横力限界値とを規定するタイヤ摩擦円によって示される。なお、横力限界値は、目標軌跡の旋回曲率が大きいほど縦力限界値を減縮補正した値となる。そして、路面μ値情報演算器33で演算された路面μ値情報は、目標軌跡生成部319と、挙動制御部323と、タイヤ力演算部324とに出力される。
アクチュエータ4は、車両を走行又は停止させるための制御アクチュエータであり、速度制御アクチュエータ41と、操舵制御アクチュエータ42と、を有する。なお、走行とは、車両の加速走行/定速走行/減速走行をいう。
速度制御アクチュエータ41は、車載制御ユニット3から入力された速度制御指令値に基づいて駆動輪へ出力する駆動力又は制動力を制御する。速度制御アクチュエータ41としては、例えば、エンジン車の場合にエンジンを用い、ハイブリッド車の場合にエンジンとモータ/ジェネレータを用い、電気自動車の場合にモータ/ジェネレータを用いる。また、制動力のみを制御するアクチュエータとしては、例えば、油圧ブースタや電動ブースタやブレーキ液圧アクチュエータやブレーキモータアクチュエータ等を用いる。
操舵制御アクチュエータ42は、車載制御ユニット3から入力された操舵制御指令値に基づいて操舵輪の転舵角を制御する。なお、操舵制御アクチュエータ42としては、ステアリングシステムの操舵力伝達系に設けられる操舵モータ等を用いる。
HMIモジュール5は、車両の乗員(ドライバーを含む)と車載制御ユニット3との間で情報の出力及び入力をするためのインターフェイスである。HMIモジュール5は、例えば、ステアリング、アクセル、ブレーキ、乗員に画像情報を表示するためのディスプレイパネル、音声出力のためのスピーカ、乗員が入力操作を行うための操作ボタンやタッチパネル等から構成される。
[自動運転コントローラの制御ブロック構成]
自動運転コントローラ31は、図2に示すように、高精度地図データ記憶部311と、自己位置推定部312と、周辺環境認識部313と、走行環境認識部314と、を備えている。そして、目標軌跡を生成する階層処理部として、走行車線演算部316と、動作決定部317と、走行領域設定部318と、目標軌跡生成部319と、を備えている。
高精度地図データ記憶部311は、車外に存在する静止物体の三次元の位置情報(経度、緯度、高さ)が設定された高精度三次元地図データ(以下、「HDマップ」という)が格納された車載メモリである。静止物体には、例えば、横断歩道、停止線、各種標識、分岐点、道路標示、信号機、電柱、建物、看板、車道やレーンの中心線、区画線、路肩線、道路と道路のつながり等さまざまな要素が含まれる。
自己位置推定部312は、入力情報に基づいて車両の現在地(自己位置)を推定する。ここで、自己位置推定部312には、車載センサ1からのセンサ情報と、高精度地図データ記憶部311からのHDマップ情報等が入力される。そして、この自己位置推定部312は、例えば、入力されたセンサ情報とHDマップ情報とをマッチングして自己位置を推定する。自己位置推定部312からは、走行環境認識部314へ自己位置情報が出力される。
周辺環境認識部313は、入力情報と、車両周辺環境の刻々と変化する動的な情報をデータベース化した動的周辺環境情報(ローカルモデル)とに基づき、車両の周辺環境を認識する。ここで、「動的な情報」とは、例えば交通規制情報、道路工事情報、広域気象情報等を含む準静的データ、例えば事故情報、渋滞情報、狭域気象情報等を含む準動的データ、例えば周辺車両情報、歩行者情報、信号情報等を含む動的データである。これらの動的な情報は階層化され、各データの更新頻度を異ならせている。周辺環境認識部313には、車載センサ1からのセンサ情報(車両周辺の環境情報)等が入力される。そして、この周辺環境認識部313は、動的周辺環境情報を用い、入力された車両周辺の環境情報を解析し、周辺環境認識情報を演算する。周辺環境認識部313からは、走行環境認識部314と走行領域設定部318へ周辺環境認識情報が出力される。
走行環境認識部314は、入力情報と、車両走行環境の刻々と変化する動的な情報をデータベース化した動的走行環境情報(ワールドモデル)とに基づき、車両の走行環境を認識する。ここで、「動的走行環境情報(ワールドモデル)」とは、車両の自己位置を中心として「動的周辺環境情報(ローカルモデル)」よりも環境認識領域を拡大して取得される動的な情報をいう。走行環境認識部314には、車載センサ1からのセンサ情報と、ナビゲーション装置2からの案内経路情報と、高精度地図データ記憶部311からのHDマップ情報と、自己位置推定部312からの自己位置情報と、周辺環境認識部313からの周辺環境認識情報等が入力される。そして、この走行環境認識部314は、動的走行環境情報を用い、推定された車両の現在地を基準とした所定範囲のHDマップの上に走行環境認識情報を演算する。走行環境認識部314からは、動作決定部317へ走行環境認識情報が出力される。
走行車線演算部316は、目的地までの案内経路上において、自車が走行すべき走行車線(以下、「目標車線」という)を演算する。ここで、走行車線演算部316には、ナビゲーション装置2からの案内経路情報と、高精度地図データ記憶部311からのHDマップ情報等が入力される。そして、この走行車線演算部316は、経路案内情報から判断した目的地の方向やHDマップから目標車線を演算する。走行車線演算部316からは、次の階層の動作決定部317へ目標車線情報が出力される。
動作決定部317は、車両が目標車線に沿って走行するときに、車両が遭遇する事象(例えば、車線変更、障害物回避等)を抽出し、それらの事象に対する車両の動作を決定する。ここで、「車両の動作」とは、発進、停止、加速、減速、右左折等の目標車線に沿って走行するために必要となる車両の動きである。
動作決定部317には、走行環境認識部314からの走行環境認識情報と、走行車線演算部316からの目標車線情報等が入力される。そして、この動作決定部317は、目標車線と車両周辺の走行環境とを照合し、適切な車両動作を決定する。動作決定部317からは、次の階層の走行領域設定部318へ車両動作情報が出力される。
走行領域設定部318は、目標車線に沿って車両を走行させることができる走行可能領域を設定する。ここで、走行領域設定部318には、高精度地図データ記憶部311からのHDマップ情報と、周辺環境認識部313からの周辺環境認識情報と、動作決定部317からの車両動作情報等が入力される。そして、この走行領域設定部318は、車両の動作情報と車両の周辺環境情報とを照合し、二つの中間目標点の間の区間において車両が走行することが可能な領域を設定する。例えば、車両周辺に障害物等の物体が存在するときには、当該物体との接触を回避するような走行可能領域が設定される。走行領域設定部318からは、次の階層の目標軌跡生成部319へ走行可能領域情報が出力される。
目標軌跡生成部319(階層処理部)は、設定された走行可能領域内における目標軌跡を生成する。ここで、目標軌跡生成部319には、走行領域設定部318からの走行可能領域情報等が入力される。そして、この目標軌跡生成部319は、現在の車両の位置から、任意に設定した目標位置までの間走行可能領域内を走行することを拘束条件とし、幾何学的な手法により目標軌跡を生成する。なお、目標軌跡生成部319は、例えば複合クロソイド曲線を用いて目標軌跡を生成したり、安全性や法令順守、走行効率などの基準を満たした走行が可能な目標軌跡を生成したりしてもよい。目標軌跡生成部319からは、車両運動コントローラ32へ目標軌跡情報が出力される。
また、目標軌跡生成部319では、目標軌跡に対する目標車速プロファイルを生成する。目標車速プロファイルとは、目標軌跡に沿って走行する時の時系列的な目標車速である。目標軌跡の曲率に合わせて目標車速プロファイルを生成することで、車両が目標軌跡に沿って走行するように車両運動を制御するができる。すなわち、例えば、目標軌跡の曲率が大きいシーンでは、乗員に大きな車両挙動を与えないために目標車速を低く設定し、目標軌跡の曲率が小さいシーンでは、曲率が大きいシーンと比較して目標車速プロファイルを高く設定するようにしてもよい。それに対して、先に目標車速プロファイルを算出し、その後、目標車速プロファイルに合わせて目標軌跡を生成するようにしてもよい。例えば、目標車速が高い場合は、曲率が小さくなるように目標軌跡を生成し、反対に目標車速が低い場合は、曲率が大きくなるように目標軌跡を生成するようにしてもよい。
さらに、この目標軌跡生成部319では、目標車速プロファイルを生成する際、推定される路面の摩擦係数が低いほど車速の変化勾配(加速勾配、減速勾配)を抑えるパラメータとして、路面μ値情報演算器33から入力される路面μ値情報を用いる。ここで、目標軌跡生成部319は、路面μ値情報を用いて車両運動を制御する階層処理の中では、最も上位で演算を行う階層である。そのため、目標軌跡生成部319にて求める路面μ値情報の応答の速度を示す応答特性(要求応答)は、自動運転コントローラ31の制御周期である第1制御周期に一致し、路面μ値情報を用いて演算する処理の中で最も遅い応答となっている。
そして、目標軌跡生成部319には、自動運転コントローラ31によって情報の受け付けが可能になったとき(第1制御周期ごと)に路面μ値情報が入力される。そのため、目標軌跡生成部319に入力される路面μ値情報の応答特性は、車両運動コントローラ32に入力される路面μ値情報の応答特性(第2応答特性)よりも遅い応答による第1応答特性となる。すなわち、「第1応答特性」は、第1制御周期(自動運転コントローラ31の制御周期)に一致した特性である。
[車両運動コントローラの制御ブロック構成]
車両運動コントローラ32は、図2に示すように、入力情報調停部321と、規範モデル設定部322と、挙動制御部323と、タイヤ力演算部324と、指令演算部325と、を備えている。
入力情報調停部321は、ドライバー入力の有無によって自動運転コントローラ31からの入力情報に基づいて制御指令値を演算するのか、ドライバー入力を目標にして制御指令値を演算するのかを調停する。ここで、入力情報調停部321には、自動運転コントローラ31からの目標車速プロファイル及び目標軌跡の情報が入力される。また、HMIモジュール5を介してドライバー入力が生じた場合には、このドライバー入力が入力される。そして、この入力情報調停部321は、ドライバー入力情報があるときには、ドライバー入力に基づいて設定される目標車速及び目標舵角の情報を規範モデル設定部322へ出力する。また、ドライバー入力情報がないときには、自動運転コントローラ31からの目標車速プロファイル及び目標軌跡の情報に基づいて設定される目標車速及び目標舵角の情報を規範モデル設定部322へ出力する。
規範モデル設定部322は、任意に設定可能な数式で表され、車両を走行させるときに車両に生じる運動の規範モデルを設定する。すなわち、規範モデル設定部322には、入力情報調停部321からの目標車速及び目標舵角の情報が入力される。そして、この規範モデル設定部322は、入力情報を規範モデルである数式に代入することによって規範モデル値を算出する。ここで、規範モデル値とは、例えば、ヨーレート規範モデルを用いたときの目標ヨーレートや、横加速度規範モデルを用いたときの目標横加速度、車体スリップ角規範モデルを用いたときの目標車体スリップ角等をいう。規範モデル設定部322からは、挙動制御部323へ規範モデル値情報が出力される。
挙動制御部323(階層処理部)は、路面μ値情報を用いて車両運動の実値を規範モデル値に収束させ、車両の挙動を安定させる車速指令値及び舵角指令値(挙動安定化指令)を演算する。このとき、この挙動制御部323では、主にフィードバック制御によって演算を行う。また、この挙動制御部323は、路面μ値情報を用いて車両運動を制御する階層処理の中では、中位で演算を行う階層である。そのため、挙動制御部323にて求める路面μ値情報の応答の速度を示す応答特性(要求応答)は、自動運転コントローラ31の制御周期よりも早く、車両運動コントローラ32の制御周期よりも遅い応答となっている。
挙動制御部323には、規範モデル設定部322から規範モデル値情報が入力され、車載センサ1からセンサ情報が入力され、路面μ値情報演算器33から路面μ値情報が入力される。そして、この挙動制御部323は、規範モデル値(例えば、目標ヨーレート)と車両運動の実値(例えば、実ヨーレート)との偏差を算出し、この偏差を小さくする車速指令値及び舵角指令値を演算する。これにより、車両が目標軌跡に沿って走行するように車両運動を制御することができる。また、この挙動制御部323では、車速指令値及び舵角指令値を演算する際、推定される路面の摩擦係数が低いほど車速指令値の変化量や舵角指令値の変化量を抑えるパラメータとして路面μ値情報を用いる。挙動制御部323からは、タイヤ力演算部324へ車速指令値及び舵角指令値の情報が出力される。
ここで、挙動制御部323に入力される路面μ値情報は、ローパスフィルタ処理が施された情報である。そのため、挙動制御部323に入力される路面μ値情報の応答特性は、車両運動コントローラ32に入力される路面μ値情報の応答特性(第2応答特性)よりも遅い応答による第3応答特性となる。一方、この第3応答特性は、自動運転コントローラ31に入力される路面μ値情報の応答特性(第1応答特性)よりも早い応答となる。
タイヤ力演算部324(階層処理部)は、路面μ値情報を用いて車速指令値及び舵角指令値を達成させる各タイヤの最適なタイヤ力演算する。ここで、このタイヤ力演算部324は、路面μ値情報を用いて車両運動を制御する階層処理の中では、最も下位で演算を行う階層である。そのため、タイヤ力演算部324にて求める路面μ値情報の応答の速度を示す応答特性(要求応答)は、車両運動コントローラ32の制御周期に一致し、路面μ値情報を用いて演算する階層の中で最も早い応答となっている。
タイヤ力演算部324には、挙動制御部323から車速指令値及び舵角指令値の情報が入力され、路面μ値情報演算器33から路面μ値情報が入力される。そして、このタイヤ力演算部324は、入力された指令値を達成するタイヤ力(タイヤ縦力とタイヤ横力)を演算する。ここで、タイヤ力演算部324では、タイヤ力を演算する際、推定される路面の摩擦係数が低いほどタイヤの縦力上限値と横力上限値を抑えるパラメータとして路面μ値情報を用いる。タイヤ力演算部324からは、指令演算部325へ各タイヤにおけるタイヤ力情報が出力される。
また、タイヤ力演算部324には、路面μ値情報演算器33から路面μ値情報が出力されるたび(第2制御周期ごと)に路面μ値情報が入力される。そのため、タイヤ力演算部324に入力される路面μ値情報の応答特性は、ローパスフィルタ処理が施された挙動制御部323に入力される路面μ値情報の応答特性(第3応答特性)よりも早い応答による第2応答特性となる。すなわち、「第2応答特性」は、路面μ値情報演算部33Aの演算タイミングに対して遅れのない応答特性であり、第2制御周期(車両運動コントローラ32の制御周期)に一致した特性である。
指令演算部325は、入力されたタイヤ力を各タイヤに発生させる制御指令値(速度制御指令値及び操舵制御指令値)を演算する。すなわち、指令演算部325には、タイヤ力演算部324からタイヤ力情報が入力される。そして、この指令演算部325は、タイヤ力情報に対応する速度制御指令値及び操舵制御指令値を演算する。指令演算部325からは、アクチュエータ4へ指令値情報が出力される。
[路面μ値情報演算器の制御ブロック構成]
路面μ値情報演算器33は、図3に示すように、路面μ値情報演算部33A(グリップ限界演算部)と、ローパスフィルタ33B(応答変更部)と、を有している。
路面μ値情報演算部33Aは、車両に装着されたタイヤのグリップ限界情報である路面μ値情報を演算するグリップ限界演算部である。この路面μ値情報演算部33Aは、第1路面μ推定部331と、旋回R演算部332と、第2路面μ推定部333と、路面μ調停部334と、を備えている。
第1路面μ推定部331は、タイヤのスリップ状態(車輪速パルス)に基づいて車両が走行中の路面の摩擦係数(以下、「第1路面μ」という)を推定する。すなわち、第1路面μ推定部331には、内部センサ13に有する車輪速センサ13aからの車輪速パルス情報が入力される。そして、この第1路面μ推定部331は、入力された車輪速パルス情報から駆動輪のスリップ率を算出し、算出したスリップ率等と予め設定された路面μマップに基づいて第1路面μ推定値を求める。第1路面μ推定部331は、第1路面μ推定値の情報を第2路面μ推定部333と路面μ調停部334へ出力する。
ここで、第1路面μ推定値は、例えば、下記の式(1)により算出した駆動輪のスリップ率と、従動輪速(車体速相当)の微分演算により求められる加減速度と、図4に示す路面μマップとを用いて求められる。
スリップ率={(駆動輪速-従動輪速)/(従動輪速)}×100(%)・・(1)
但し、駆動輪速は左右駆動輪の車輪速平均値であり、従動輪速は左右従動輪の車輪速平均値である。
つまり、第1路面μ推定値は、スリップ率が同じであるときに高μ路であるほど高加速度になるという関係に基づき、図4に示す路面μマップにおいて、加減速度とスリップ率との交点を通る特性が表す値と推定される。なお、路面μマップは、多数の実験データを取得した結果により作成される。
また、第1路面μ推定値の大きさに応じて、図5に示すようなタイヤ摩擦円Aが描かれる。ここで、車両の各タイヤで許容されるグリップ限界は、縦力(前後力)と横力の二次元座表面に対して、高μ路であるほど直径が大きく描かれ、低μ路であるほど直径が小さく描かれるタイヤ摩擦円により規定される。つまり、タイヤに発生する縦方向のグリップ限界である縦力限界値はタイヤ摩擦円と縦力との交点で決まる。また、タイヤに発生する横方向のグリップ限界である横力限界値はタイヤ摩擦円と横力との交点で決まる。
旋回R演算部332は、目標軌跡上に設定したR演算区間ごとの旋回曲率による旋回半径(以下「旋回R」という)を演算する。すなわち、旋回R演算部332には、自動運転コントローラ31から目標軌跡情報が入力される。そして、旋回R演算部332は、目標軌跡を任意の基準に基づいて区分けし、各区間をそれぞれ「R演算区間」として設定する。ここで、R演算区間は、少なくとも隣接する二つの中間目標点間よりも短い区間とする。そして、R演算区間ごとに旋回Rを演算する。旋回R演算部332は、旋回Rの情報を第2路面μ推定部333と路面μ調停部334へ出力する。なお、R演算区間の区分けは、例えば目標軌跡の接線方向の変化点や、目標軌跡の旋回方向の変換点、旋回に伴う加減速地点等を基準に設定する。
第2路面μ推定部333は、車両の前方に存在する任意のR演算区間での旋回Rの情報と、車輪速パルスを検出した地点での第1路面μ推定値の情報に基づき、当該R演算区間での路面摩擦係数(以下、「第2路面μ」という)を推定する。すなわち、第2路面μ推定部333には、第1路面μ推定部331から第1路面μ推定値の情報が入力され、旋回R演算部332から旋回Rの情報が入力される。このとき入力される旋回R情報は、上述の任意のR演算区間における旋回R情報である。そして、第2路面μ推定部333は、第1路面μ推定値情報及び旋回R情報と予め設定された補正係数マップに基づいて、第2路面μ推定値を求める。第2路面μ推定部333は、第2路面μ推定値の情報を路面μ調停部334へ出力する。
ここで、補正係数マップは、図6に示すように、横軸に旋回Rを設定し、縦軸に第2路面μを推定するための補正係数を設定したマップである。ここでは、R演算区間における旋回Rがr1以下の場合、補正係数は任意の値α(0<α<1、例えば0.6)に固定される。また、旋回Rがr1から閾値以下の場合、補正係数は旋回Rに比例して任意の値αから一定の割合で1まで増加する。なお、「r1」は任意に設定することが可能であり、例えばR50に設定する。
なお、この補正係数マップは、旋回時の車両ロール運動によって発生する輪荷重変化の大きさに応じて変更してもよい。すなわち、横加速度が大きくて輪荷重変化(内輪の荷重抜け)が大きいときには、図7において一点鎖線で示すように、旋回Rがr1以下の場合の補正係数を、任意の値αよりも小さいβ(0<β<α、例えば0.5)に固定する。そして、旋回Rがr1から閾値以下の場合、補正係数は旋回Rに比例して任意の値βから一定の割合で1まで増加する。
そして、第2路面μ推定値は、第1路面μ推定値に対して補正係数を積算することで求められる。ここで、補正係数が1以下であり、旋回Rがr1から閾値以下のとき、補正係数が旋回Rに比例して「任意の値α」から一定の割合で「1」まで増加する。このため、第2路面μ推定値は、旋回Rが小さいほど第1路面μ推定値を減少補正した値となる。この結果、図5に一点鎖線で示すように、第2路面μ推定値の大きさに応じて描かれるタイヤ摩擦円Bは、第1路面μ推定値に応じて描かれたタイヤ摩擦円Aよりも直径が小さい円となる。また、補正係数が旋回Rの大きさに応じて変動するため、このタイヤ摩擦円Bの直径は、旋回Rの大きさに応じて伸縮する。
路面μ調停部334は、旋回Rの大きさに基づいて、任意のR演算区間を走行中の演算に用いる路面μ値情報を演算する。すなわち、路面μ調停部334には、第1路面μ推定部331から第1路面μ推定値の情報が入力され、旋回R演算部332から旋回Rの情報が入力され、第2路面μ推定部333から第2路面μ推定値の情報が入力される。
そして、路面μ調停部334は、任意のR演算区間における旋回Rが予め設定した閾値以上であるか否かを判断する。旋回Rが閾値以上(例えば直線路)であると判断したときには、車両が当該R演算区間を走行するときのタイヤの横力限界値を、第1路面μ推定値に応じて描かれたタイヤ摩擦円Aと横力との交点で規定する。一方、旋回Rが閾値未満(例えば旋回路)であると判断したときには、車両が当該R演算区間を走行するときのタイヤの横力限界値を、第2路面μ推定値に応じて描かれたタイヤ摩擦円Bと横力との交点で規定する。なお、旋回Rの大きさに拘らず、車両が当該R演算区間を走行するときのタイヤの縦力限界値は、第1路面μ推定値に応じて描かれたタイヤ摩擦円Aと縦力との交点で規定する。
そして、路面μ調停部334は、旋回R≧閾値と判断したとき、縦力限界値及び横力限界値を、第1路面μ推定値に応じて描かれたタイヤ摩擦円Aと縦力及び横力との交点で規定し、結果的にタイヤ摩擦円Aによって示される路面μ値情報を出力する。この結果、旋回R≧閾値のとき、任意のR演算区間におけるタイヤの横力限界値は、タイヤのスリップ状態に基づいて推定した縦力限界値と同じ値であると推定される。
また、この路面μ調停部334は、旋回R<閾値と判断したとき、縦力限界値を第1路面μ推定値に応じて描かれたタイヤ摩擦円Aと縦力との交点で規定し、横力限界値を第2路面μ推定値に応じて描かれたタイヤ摩擦円Bと横力との交点で規定した、タイヤ摩擦円C(図5参照)によって示される路面μ値情報を出力する。この結果、旋回R<閾値のとき、任意のR演算区間におけるタイヤの横力限界値は、縦力限界値よりも小さい値であると推定される。すなわち、旋回R<閾値のとき、グリップ限界情報は、車輪速パルスに基づいて推定した縦力限界値と、この縦力限界値を旋回Rが大きいほど減縮補正して求めた横力限界値と、を規定するタイヤ摩擦円Cによって示される路面μ値情報になる。
そして、路面μ調停部334からは、ローパスフィルタ33B及びタイヤ力演算部324へ路面μ値情報が出力される。
ローパスフィルタ33Bは、外乱抑制応答時定数を用いた伝達関数式で表され、入力された路面μ値情報に対してローパスフィルタ処理を施し、一次遅れの応答特性(第3応答特性)の路面μ値情報を演算する。そして、このローパスフィルタ33Bは、目標軌跡生成部319及び挙動制御部323へ路面μ値情報を出力する。ここで、ローパスフィルタ処理が施された路面μ値情報の応答特性は、挙動制御部323の要求応答に一致した特性とする。
[路面μ値情報演算処理構成]
図8は、実施例1の路面μ値情報演算部33Aにて実行される路面μ値情報演算処理の処理手順を示すフローチャートである。以下、図8に示す路面μ値情報演算処理の各ステップを説明する。なお、この路面μ値情報演算処理は、車両の走行中、所定の間隔で繰り返して実行される。
ステップS1では、目標軌跡生成部319にて生成した目標軌跡の情報を取得し、ステップS2へ進む。
ステップS2では、ステップS1での目標軌跡情報の取得に続き、自己位置推定部312にて推定した自己位置の情報を取得し、ステップS3へ進む。
ステップS3では、ステップS2での自己位置情報の取得に続き、高精度地図データ記憶部311に記憶されたHDマップの情報を取得し、ステップS4へ進む。
ステップS4では、ステップS3でのHDマップ情報の取得に続き、旋回R演算部332にて演算した目標軌跡上に設定したR演算区間ごとの旋回Rの情報を取得し、ステップS5へ進む。
ステップS5では、ステップS4での旋回R情報の取得に続き、第1路面μ推定部331にて推定した第1路面μ推定値の情報を取得し、ステップS6へ進む。
ステップS6では、ステップS5での第1路面μ推定値情報の取得に続き、自車の直前に存在するR演算区間の開始地点に到達したか否かを判断する。YES(R演算区間に到達)の場合にはステップS7へ進む。NO(R演算区間に未到達)の場合にはステップS11へ進む。ここで、車両がR演算区間に到達したか否かの判断は、ステップS2にて取得した自己位置情報とステップS3にて取得したHDマップ情報に基づいて判断する。
ステップS7では、ステップS6でのR演算区間に到達との判断に続き、自車の直前に存在するR演算区間における旋回Rが予め設定した閾値以上であるか否かを判断する。YES(旋回R≧閾値)の場合にはステップS10へ進む。NO(旋回R<閾値)の場合にはステップS8へ進む。ここで、閾値としては、例えば目標速度プロファイルによって走行したと仮定したときに0.01Gの横加速度が発生すると想定される旋回R(例えばR120)に設定する。
ステップS8では、ステップS7での旋回R<閾値との判断に続き、第2路面μ推定値を算出するための補正係数マップ(図6、図7参照)を読み出し、ステップS9へ進む。
ステップS9では、ステップS8での補正係数マップの読み出しに続き、第2路面μ推定値を算出し、ステップS10へ進む。ここで、第2路面μ推定値は、ステップS5にて取得した第1路面μ推定値に対し、補正係数マップ(ステップS8にて読み出し)と自車直前のR演算区間の旋回R(ステップS4にて取得)とに基づいて決められた補正係数を積算することで求められる。この結果、第2路面μ推定値は、第1路面μ推定値を旋回Rの大きさに応じて減少補正した値になる。
ステップS10では、ステップS7での旋回R≧閾値との判断、ステップS9での第2路面μ推定値の算出のいずれかに続き、路面μ値情報を更新し、ステップS12へ進む。すなわち、自車直前のR演算区間の旋回Rが閾値以上であると判断された場合には、ステップS5にて取得した第1路面μ推定値情報によって路面μ値情報を更新する。これにより、旋回R≧閾値のときのタイヤの横力限界値は、第1路面μ推定値に応じて描かれたタイヤ摩擦円Aと横力との交点で規定された値となり、タイヤのスリップ状態に基づいて推定した縦力限界値と同じ値になる。一方、自車直前のR演算区間の旋回Rが閾値未満であると判断されたときには、ステップS9にて演算された第2路面μ推定値によって路面μ値情報を更新する。これにより、旋回R<閾値のときのタイヤの横力限界値は、第2路面μ推定値に応じて描かれたタイヤ摩擦円Bと横力との交点で規定された値となり、縦力限界値よりも小さい値となる。なお、更新した路面μ値情報は、図示しないメモリに書き込まれ、更新されるごとに書き換えられる。
ステップS11では、ステップS6でのR演算区間に未到達との判断に続き、図示しないメモリに書き込まれた路面μ値情報を維持し、ステップS12へ進む。
ステップS12では、ステップS10での路面μ値情報の更新、ステップS11での路面μ値情報の維持のいずれかに続き、図10に示す応答性制御処理を実行し、エンドへ進む。
[第1路面μ推定値演算処理構成]
図9は、実施例1の第1路面μ推定部331にて実行される第1路面μ推定値演算処理の処理手順を示すフローチャートである。以下、図9に示す第1路面μ推定値演算処理の各ステップを説明する。なお、この第1路面μ推定値演算処理は、車両の走行中、継続して実行される。
ステップS21では、車両が直線路を走行中であるか否かを判断する。YES(直線路を走行中)の場合にはステップS22へ進む。NO(旋回路を走行中)の場合にはリターンへ進む。ここで、直線路を走行しているか否かは、内部センサ13によって検出された横加速度の大きさに基づいて判断する。
ステップS22では、ステップS21での直線路を走行中との判断に続き、車輪速センサ13aによって検出した車輪速パルス情報を取得し、ステップS23へ進む。
ステップS23では、ステップS22での車輪速パルス情報の取得に続き、この車輪速パルス情報から駆動輪のスリップ率を算出し、ステップS24へ進む。なお、スリップ率の算出方法は上述の通りである。
ステップS24では、ステップS23でのスリップ率の算出に続き、駆動輪のスリップ率と、従動輪速(車体速相当)の微分演算により求められる加減速度と、図4に示す路面μマップとを用いて第1路面μ推定値を演算し、リターンへ進む。なお、演算した第1路面μ推定値は、図示しないメモリに書き込まれ、演算されるごとに更新される。
[応答特性制御処理構成]
図10は、実施例1の路面μ値情報演算器33にて実行される応答特性制御処理の処理手順を示すフローチャートである。以下、図10に示す応答特性制御処理の各ステップを説明する。なお、この応答特性制御処理は、路面μ値情報が演算されるごとに実行される。
ステップS31では、路面μ値情報演算部33Aにて演算された路面μ値情報を取得し、ステップS32へ進む。
ステップS32では、ステップS31での路面μ値情報の取得に続き、取得した情報をタイヤ力演算部324に出力するか否かを判断する。YES(タイヤ力演算部に出力)の場合にはステップS33へ進む。NO(タイヤ力演算部に出力しない)の場合にはステップS35へ進む。
ステップS33では、ステップS32での路面μ値情報をタイヤ力演算部324へ出力するとの判断に続き、ステップS31にて取得した路面μ値情報をタイヤ力演算部324に出力し、ステップS34へ進む。この結果、タイヤ力演算部324へは、路面μ値情報演算部33Aでの路面μ値情報の演算タイミングに対して応答遅れのない路面μ値情報が入力される。
ステップS34では、ステップS33での路面μ値情報の出力に続き、タイヤ力演算部324において路面μ値情報を用いてタイヤ力を演算し、エンドへ進む。このとき、路面μ値情報は、推定される路面の摩擦係数が低いほどタイヤの縦力上限値と横力上限値を抑えるパラメータとして用いられる。
ステップS35では、ステップS32での路面μ値情報をタイヤ力演算部324に出力しないとの判断に続き、ステップS31にて取得した路面μ値情報に対してローパスフィルタ処理を施すことで一次遅れの路面μ値情報を演算し、ステップS36へ進む。
ステップS36では、ステップS35でのローパスフィルタ処理の実行に続き、ローパスフィルタ処理を実行した路面μ値情報を挙動制御部323に出力するか否かを判断する。YES(挙動制御部に出力)の場合にはステップS37へ進む。NO(挙動制御部に出力しない)の場合にはステップS39へ進む。
ステップS37では、ステップS36での路面μ値情報を挙動制御部323へ出力するとの判断に続き、ステップS35にてローパスフィルタ処理を実行した路面μ値情報を挙動制御部323に出力し、ステップS38へ進む。この結果、挙動制御部323へは、路面μ値情報演算部33Aでの路面μ値情報の演算タイミングに対して一次遅れの路面μ値情報が入力される。
ステップS38では、ステップS37での路面μ値情報の出力に続き、挙動制御部323において路面μ値情報を用いて車速指令値及び舵角指令値を演算し、エンドへ進む。このとき、路面μ値情報は、推定される路面の摩擦係数が低いほど車速指令値の変化量や舵角指令値の変化量を抑えるパラメータとして用いられる。
ステップS39では、ステップS36での路面μ値情報を挙動制御部323へ出力しないとの判断に続き、自動運転コントローラ31による情報の受け付けが可能であるか否かを判断する。YES(情報受け付け可能)の場合にはステップS40へ進む。NO(情報受け付け不可能)の場合にはステップS39を繰り返す。
ステップS40では、ステップS39での自動運転コントローラ31による情報受け付け可能との判断に続き、ステップS35にてローパスフィルタ処理を実行した路面μ値情報を目標軌跡生成部319に出力し、ステップS41へ進む。この結果、目標軌跡生成部319へは、自動運転コントローラ31の制御周期に合わせて路面μ値情報が入力される。
ステップS41では、ステップS40での路面μ値情報の出力に続き、目標軌跡生成部319において路面μ値情報を用いて目標車速プロファイルを演算し、エンドへ進む。このとき、路面μ値情報は、推定される路面の摩擦係数が低いほど車速の変化勾配(加速勾配、減速勾配)を抑えるパラメータとして用いられる。
以下、実施例1の車両運動制御方法及び車両運動制御装置の作用を説明する。
実施例1の運転システム100では、自動運転モードを選択すると、自動運転コントローラ31にて目標車速プロファイル及び目標軌跡を演算する。そして、ドライバー入力が生じなければ、車両運動コントローラ32にて制御指令値が演算され、目標軌跡に沿って走行するように車両が制御される。
このとき、路面μ値情報演算部33Aでは、図8に示す路面μ値情報演算処理を実行する。すなわち、路面μ値情報演算部33Aは、図8に示すステップS1、ステップS2、ステップS3、ステップS4を順に実行する。これにより、車両の前方に延びる目標軌跡の情報と、車両の現在地である自己位置の情報と、HDマップ情報と、目標軌跡上に設定したR演算区間ごとの旋回Rの情報と、を取得する。
続いて、ステップS5を実行し、第1路面μ推定値情報を取得する。ここで、第1路面μ推定値情報は、図9のフローチャートに示す手順によって推定される。つまり、第1路面μ推定値は、車両が直線路を走行中であると判断されたときに検出された車輪速パルス情報に基づいて推定された値である。
そして、ステップS6を実行し、車両が、自車直前に存在するR演算区間の開始地点に到達したか否かを判断する。車両が、自車直前のR演算区間に到達するまでは、ステップS11、ステップS12と進み、すでにメモリに書き込まれた路面μ値情報を維持した上、図10に示す応答特性制御処理を実行する。
一方、車両が自車直前のR演算区間に到達したときには、ステップS7を実行し、到達したR演算区間の旋回Rが閾値以上であるか否かを判断する。ここで、旋回R<閾値の場合には、ステップS8、ステップS9を実行し、補正係数マップを読み出す。そして、読み出した補正係数マップとR演算区間の旋回Rに基づいて決められた補正係数を第1路面μ推定値に積算し、第2路面μ推定値を算出する。その後、ステップS10を実行し、第2路面μ推定値情報によって路面μ値情報を更新し、路面μ値情報はタイヤ摩擦円Cによって示される情報に書き換えられる。また、車両が当該R演算区間を走行中、つまり、車両が次のR演算区間の開始地点に到達するまでは、ステップS6からステップS11へと進み、タイヤ摩擦円Cによって示される路面μ値情報が維持される。この結果、旋回R<閾値となるR演算区間を走行する間は、タイヤの横力限界値は、旋回R情報と縦力限界値に基づいて推定され、縦力限界値よりも小さい値となる。
また、到達したR演算区間の旋回Rが閾値以上の場合(旋回R≧閾値が成立の場合)には、ステップS7からステップS10へと進み、すでに取得している第1路面μ推定値情報(=直線路を走行中に検出した車輪速パルス情報に基づいて推定した値)によって路面μ値情報を更新する。これにより、路面μ値情報は、タイヤ摩擦円Aによって示される情報に書き換えられる。また、車両が当該R演算区間を走行中、すなわち、車両が次のR演算区間の開始地点に到達するまでは、ステップS6からステップS11へと進み、タイヤ摩擦円Aで示される路面μ値情報が維持される。この結果、旋回R≧閾値となるR演算区間を走行する間は、タイヤの横力限界値は、タイヤのスリップ状態に基づいて推定した縦力限界値と同じ値になる。
そして、路面μ値情報が演算されたらステップS12へと進み、図10に示す応答特性制御処理を実行し、路面μ値情報の応答特性を階層処理における各処理での要求応答に変更して出力する。
すなわち、目標軌跡生成部319へ路面μ値情報を出力するときには、図10に示すフローチャートにおいて、ステップS31、ステップS32、ステップS35、ステップS36、ステップS39と順に進む。つまり、路面μ値情報演算部33Aにて路面μ値情報が演算されたら、この路面μ値情報に対してローパスフィルタ処理を実行する。さらに、自動運転コントローラ31による情報の受け付けが可能になるまで、目標軌跡生成部319への情報の出力を待機する。そして、自動運転コントローラ31による情報の受け付けが可能になったとき、ステップS40へと進んで目標軌跡生成部319へ路面μ値情報を出力する。
そのため、目標軌跡生成部319には、自動運転コントローラ31の制御周期(第1制御周期)に合わせて路面μ値情報が入力される。つまり、目標軌跡生成部319に対する路面μ値情報の出力周期は、自動運転コントローラ31の制御周期(第1制御周期)に一致する。これにより、目標軌跡生成部319には、自動運転コントローラ31の制御周期に一致した応答特性の路面μ値情報が入力される。一方、この目標軌跡生成部319の要求応答は、自動運転コントローラ31の制御周期(第1制御周期)に一致している。そのため、目標軌跡生成部319には、要求応答に一致した路面μ値情報が入力されることになる。そして、ステップS41の処理を行い、目標軌跡生成部319は、要求応答に一致した応答特性の路面μ値情報を用いて目標車速プロフィールを生成する。
この結果、目標軌跡生成部319から出力される目標車速プロフィール情報が短期間で変動することを防止して、円滑な車両走行に適したものとすることができる。よって、不要に敏速な走行を抑制し、乗員に不快感を与えにくい車両運動に制御することが可能となる。
続いて、タイヤ力演算部324へ路面μ値情報を出力するときには、図10に示すフローチャートにおいて、ステップS31、ステップS32、ステップS33と順に進む。つまり、路面μ値情報演算部33Aにて路面μ値情報が演算されたら、この路面μ値情報の応答特性を変更することなくタイヤ力演算部324へ路面μ値情報を出力する。これにより、タイヤ力演算部324には、路面μ値情報演算部33Aでの演算タイミングに対して遅れのない路面μ値情報が入力される。つまり、タイヤ力演算部324に対する路面μ値情報の出力周期は、車両運動コントローラ32の制御周期(第2制御周期)に一致する。
一方、タイヤ力を演算するタイヤ力演算部324は、階層処理のうち、最も下位階層の処理である。そのため、タイヤ力演算部324の要求応答は、挙動制御部323の要求応答特性よりも早く、ここでは車両運動コントローラ32の制御周期(第2制御周期)に一致している。そのため、タイヤ力演算部324には、要求応答に一致した路面μ値情報が入力されることになる。そして、ステップS34の処理を行い、タイヤ力演算部324は、要求応答に一致した応答特性の路面μ値情報を用いてタイヤ力を演算する。
この結果、タイヤ力演算部324から出力されるタイヤ力情報に路面μ値情報の変動を適切に反映させることができ、タイヤ力情報を円滑な車両走行に適したものとすることができる。これにより、車両挙動が目標から外れても速やかに応答して修正することができ、安定した車両走行につなげることが可能となる。
さらに、挙動制御部323へ路面μ値情報を出力するときには、図10に示すフローチャートにおいて、ステップS31、ステップS32、ステップS34、ステップS35、ステップS36、ステップS37と順に進む。つまり、路面μ値情報演算部33Aにて路面μ値情報が演算されたら、この路面μ値情報に対してローパスフィルタ処理を実行し、挙動制御部323へ一次遅れの路面μ値情報を出力する。
そのため、挙動制御部323には、路面μ値情報演算部33Aでの演算タイミングに対して一次遅れの路面μ値情報が入力される。すなわち、ローパスフィルタ処理を施すことで、路面μ値情報の応答特性を車両運動コントローラ32の制御周期よりも遅くすることができ、挙動制御部323の要求応答に一致させることができる。これにより、挙動制御部323には、要求応答に一致した応答特性の路面μ値情報が入力されることになる。そして、ステップS38の処理を行い、挙動制御部323では、要求応答に一致した応答特性の路面μ値情報を用いて車速指令値及び舵角指令値を演算する。
この結果、挙動制御部323から出力される車速指令値及び舵角指令値の情報の不要な変動を抑制し、円滑な車両走行に適したものとすることができる。よって、車両の運動目標を適切に設定することができて、乗員に不快感や不安感を与えることのない安定した車両運動に制御することが可能となる。
このように、実施例1の運転システム100では、路面μ値情報を用いた階層処理にて車両運動を制御する際、階層処理の各処理で求める要求応答に応じて路面μ値情報の応答特性を変更する。そして、各処理では、各々の要求応答に応じた応答特性の路面μ値情報を用いて演算を行う。この結果、各処理から出力される演算値を適切な値にすることができ、円滑な車両走行につなげることが可能となる。
なお、図11には、旋回R<閾値の旋回路を走行中の実施例1の運転システム100による車両制御時のヨーレート変化と、比較例の運転システムによる車両制御時のヨーレート変化を示す。
ここで、比較例の運転システムでは、目標車速プロファイルを生成する階層処理部と、車速指令値及び舵角指令値を演算する階層処理部と、タイヤ力を演算する階層処理部に対し、一律の応答特性とした路面μ値情報を与える。つまり、比較例の運転システムでは、階層処理によって制御指令値を演算する際に用いられるタイヤ情報(路面μ値情報)の応答特性を、処理の階層に拘らず一律に設定する。
一方、実施例1の運転システム100では、上述のように、目標車速プロファイルを生成する目標軌跡生成部319には、第1制御周期に一致した応答特性の路面μ値情報が入力される。また、車速指令値及び舵角指令値を演算する挙動制御部323には、ローパスフィルタ処理が施された応答特性の路面μ値情報が入力され、タイヤ力を演算するタイヤ力演算部324には第2制御周期に位置した応答特性の路面μ値情報が入力される。
この結果、図11に示すように、実施例1の運転システム100では、比較例の運転システムと比べて、一点鎖線で示す走行コースでの基準となるヨーレートに対し、ヨーレートの乖離を抑えることができることがわかる。また、走行中に生じるヨーレートの変動についても、実施例1の運転システム100の方が比較例の運転システムよりも抑制することができることがわかる。そして、例えば旋回路への進入時にアンダーステアの傾向になることを改善し、走行安定性を図ることができる。
また、実施例1では、路面μ値情報を用いて制御指令値を演算する階層処理のうち、上位階層の目標軌跡生成部319では、第1制御周期に一致した最も遅い応答による第1応答特性の路面μ値情報を用いて演算を行う。一方、最も下位階層のタイヤ力演算部324では、第2制御周期に一致した最も早い応答による第2応答特性の路面μ値情報を用いて演算を行う。さらに、中位階層の挙動制御部323では、第1応答特性よりも早く、第2応答特性よりも遅い応答によるの第3応答特性の路面μ値情報を用いて演算を行う。つまり、路面μ値情報を用いて制御指令値を演算する階層処理の中で、上位階層の処理の方が遅い応答による応答特性の路面μ値情報を用いて演算を行い、下位階層の処理の方が早い応答による応答特性の路面μ値情報を用いて演算を行う。
これにより、上位階層の処理(例えば、目標軌跡生成部319)による演算値の方が、下位階層の処理(例えば、挙動制御部323)による演算値よりも入力される路面μ値情報の変動を抑制することができる。この結果、演算値に対する路面μ値情報の影響が低い階層ほど路面μ値情報の変動を抑えることになり、適切な演算値を演算することができる。つまり、例えば目標車速プロファイルを適切に設定することで車両挙動が安定化し、その結果、ヨーレートの変動を抑制することが可能となる。
また、実施例1では、車両運動を制御する階層処理の中で、上位行動計画(目標車速プロファイル)を演算する第一階層処理を自動運転コントローラ31にて実行し、下位行動計画(車速指令値及び舵角指令値)を演算する第二階層処理を車両運動コントローラ32にて実行する。このとき、自動運転コントローラ31は、車両運動コントローラ32より遅い応答による応答特性の路面μ値情報を用いて上位行動計画(目標車速プロファイル)を実行する。つまり、階層処理のうち、第一階層処理では第二階層処理より遅い応答による応答特性の路面μ値情報を用いて演算を行う。
そして、自動運転コントローラ31の目標軌跡生成部319では、第1制御周期(自動運転コントローラ31の制御周期)にて車両の目標車速プロファイルを演算すると共に、この目標車速プロファイルを演算するときに第1制御周期に一致した第1応答特性の路面μ値情報を用いる。また、車両運動コントローラ32のタイヤ力演算部は、第1制御周期よりも短い第2制御周期(車両運動コントローラ32の制御周期)にて車両運動を制御する指令(タイヤ力)を演算すると共に、このタイヤ力を演算するときに第2制御周期に一致した第2応答特性の路面μ値情報を用いる。さらに、車両運動コントローラ32の挙動制御部323は、第2応答特性の路面μ値情報にローパスフィルタ処理を施した第3応答特性の路面μ値情報を用いて車両の挙動を安定化する指令(車速指令値及び舵角指令値)を演算する。
これにより、比較的長期間(例えば、自動運転コントローラ31の制御周期や、現在の車両の位置から所定の目標位置まで走行する間等)の周期で演算する必要ある目標車速プロファイルを、応答特性の遅い路面μ値情報を用いて演算することができる。一方、比較的短期間(例えば、車両運動コントローラ32の制御周期等)の周期で演算する必要があるタイヤ力を、応答特性の早い路面μ値情報を用いて演算することができる。また、中期間(例えば、一つのR演算区間を走行する間等)の周期で演算する必要がある車速制御指令及び舵角制御指令を、中程度の応答特性の路面μ値情報を用いて演算することができる。
これにより、路面μ値情報の変動によって目標車速プロファイルが短期間で変動することを防止し、例えば旋回路に対してオーバースピードで進入することを低減できる。このため、乗員に不快感を与えにくい(きびきび感の抑制)制御を行うことができる。また、タイヤ力情報や車速指令値及び舵角指令値は、路面μ値情報の変動に対応して速やかに演算することができ、車両挙動が不安定になったときの応答が早くなり、安定した車両走行にすることができる。
さらに、この実施例1では、第1制御周期にて演算を行う自動運転コントローラ31によって上位階層の処理である目標車速プロファイルの生成を行う。また、このとき、第1制御周期に一致した第1応答特性の路面μ値情報を用いる。一方、第2制御周期にて演算を行う車両運動コントローラ32によって下位階層の処理である制御指令やタイヤ力の演算を行う。また、このとき、第2制御周期に一致した第2応答特性の路面μ値情報を用いる。
これにより、二つのコントローラ(自動運転コントローラ31と車両運動コントローラ32)の制御周期にそれぞれ一致した応答特性の路面μ値情報を用いて演算を行うことができる。この結果、自動運転コントローラ31では、路面μ値情報の急変に基づく車速の変化を抑制することができ、乗員に与える違和感を抑制することができる。また、車両運動コントローラ32では、車両の挙動を安定化させるための制御を路面μ値情報の変化に対して応答よく実行することができる。そのため、車両を安定して走行させることが可能になる。
そして、実施例1では、タイヤ情報であるタイヤのグリップ限界情報を、車輪速パルスに基づいて推定した第1路面μ推定値を縦力限界値とし、旋回Rが小さいほど第1路面μ推定値を減少補正して求めた旋回第1路面μ推定値を横力限界値として規定したタイヤ摩擦円Cによって示される路面μ値情報としている。
これにより、制御指令値を演算する各処理で用いる路面μ値情報が、旋回Rの影響を考慮した値になる。つまり、路面μ値情報を、旋回Rが閾値以上の経路を走行する場合と、旋回Rが閾値未満の経路を走行する場合とで異ならせることが可能となる。そのため、各処理において適切な演算値を求めることができ、例えば比較的急峻な旋回路を走行する場合であっても、安定した走行を実現することができる。
次に、効果を説明する。
実施例1の車両運動制御方法及び車両運動制御装置にあっては、下記に列挙する効果を得ることができる。
(1)車両のタイヤ情報を用いた階層処理により車両運動を制御するコントローラ(車載制御ユニット3)による車両運動制御方法であって、
前記タイヤ情報として、前記車両に装着されたタイヤのグリップ限界情報(路面μ値情報)を演算し、
前記グリップ限界情報(路面μ値情報)の応答特性を、前記階層処理の各処理(目標軌跡生成部319、挙動制御部323、タイヤ力演算部324)で求める要求応答に応じて変更し、
前記要求応答に応じた応答特性のグリップ限界情報(路面μ値情報)を用いて、前記車両運動を制御する構成とした。
これにより、階層処理の各処理で各々適切な演算値を求めることができ、走行状態の適正化を図ることができる。
(2)前記階層処理のうち、上位階層の処理ほど遅い応答による応答特性に設定されたグリップ限界情報(路面μ値情報)を用いて演算値を演算する構成とした。
これにより、演算値に対する路面μ値情報の影響が低い階層ほど路面μ値情報の変動を抑えることになり、適切な演算値を演算することができる。
(3)前記階層処理は、前記車両を目標位置まで走行させる目標軌跡を算出するための上位行動計画を演算する第一階層処理(自動運転コントローラ31)と、前記上位行動計画を用いて前記車両が前記目標位置まで走行するに際し、前記タイヤに発生させる力を算出するための下位行動計画を演算する第二階層処理(車両運動コントローラ32)と、を有し、
前記階層処理のうち、前記第一階層処理(自動運転コントローラ31)では前記第二階層処理(車両運動コントローラ32)より遅い応答による応答特性のグリップ限界情報(路面μ値情報)を用いて演算を行う構成とした。
これにより、上位行動計画の方が下位行動計画よりも路面μ値情報の変動の影響を受けにくくなり、各階層処理において適切な演算値を演算することができる。
(4)前記コントローラ(車載制御ユニット3)は、前記第一階層処理を実行する自動運転コントローラ31と、前記第二階層処理を行う車両運動コントローラ32と、を備え、前記自動運転コントローラ31は、前記車両運動コントローラ32より遅い応答による応答特性のグリップ限界情報(路面μ値情報)を用いて前記第一階層処理を実行する構成とした。
これにより、自動運転コントローラ31での演算の方が、車両運動コントローラ32よりも路面μ値情報の変動の影響を受けにくくなり、各コントローラにおいて適切な演算値を演算することができる。
(5)前記自動運転コントローラ31は、第1制御周期にて前記車両の目標車速プロファイルを演算すると共に、前記目標車速プロファイルを演算するときに前記第1制御周期に一致した第1応答特性のグリップ限界情報(路面μ値情報)を用い、
前記車両運動コントローラ32は、前記第1制御周期よりも短い第2制御周期にて前記車両運動を制御する指令(タイヤ力)を演算すると共に、前記指令(タイヤ力)を演算するときに前記第2制御周期に一致した第2応答特性のグリップ限界情報(路面μ値情報)を用いる構成とした。
これにより、第1制御周期で演算する必要がある目標車速プロファイルの短期間での変動を抑制し、第1制御周期よりも短い第2制御周期で演算する必要があるタイヤ力を必要な早さの応答特性で演算することができる。
(6)前記車両運動コントローラ32は、前記指令(タイヤ力)を演算するときに上位階層の処理を行う挙動制御部323と、下位階層の処理を行うタイヤ力演算部324と、を有し、
前記挙動制御部323は、前記第2応答特性のグリップ限界情報(路面μ値情報)にローパスフィルタ処理を施して前記第2応答特性よりも遅らせた第3応答特性のグリップ限界情報(路面μ値情報)を用いて前記車両の挙動を安定化する挙動安定化指令(車速指令値及び舵角指令値)を演算し、
前記タイヤ力演算部324は、前記第2応答特性のグリップ限界情報(路面μ値情報)を用いて前記タイヤのタイヤ力を演算する構成とした。
これにより、車両の走行状態が不安定になった際、最も早い応答で制御する必要があるタイヤ力を適切な応答特性で演算することができ、安定した車両走行を実現することができる。一方、車体挙動の制御に対しては、演算に用いる路面μ値情報の変動を抑制することができるので、路面μ値情報の急変に基づく挙動の変化を抑制することができる。
(7)前記グリップ限界情報は、前記タイヤのスリップ状態(車輪速パルス)に基づいて推定した前記タイヤの縦力限界値(第1路面μ推定値)と、前記車両の目標軌跡の旋回曲率が大きいほど(旋回Rが小さいほど)前記縦力限界値(第1路面μ推定値)を減縮補正して求めた前記タイヤの横力限界値(旋回第1路面μ推定値)と、で規定するタイヤ摩擦円Cによって示される情報(路面μ値情報)とする構成とした。
これにより、階層処理の各処理で用いる路面μ値情報が、旋回Rの影響を考慮した値になり、例えば比較的急峻な旋回路を走行する場合であっても、安定した走行を実現することができる。
(8)車両のタイヤ情報を用いた階層処理により車両運動を制御するコントローラ(車載制御ユニット3)を備えた車両運動制御装置であって、
前記コントローラ(車載制御ユニット3)は、
前記タイヤ情報として、前記車両に装着されたタイヤのグリップ限界情報(路面μ値情報)を演算するグリップ限界演算部(路面μ値情報演算部33A)と、
前記階層処理の各処理(挙動制御部323)で求める要求応答に応じて前記グリップ限界情報(路面μ値情報)の応答特性を変更する応答変更部(ローパスフィルタ33B)と、
前記要求応答に応じた応答特性(第3応答特性)のグリップ限界情報(路面μ値情報)を用いて前記車両運動を制御する階層処理部(挙動制御部323)と、を備える構成とした。
これにより、階層処理の各処理で各々適切な演算値を求めることができ、走行状態の適正化を図ることができる。
以上、本発明の車両運動制御方法及び車両運動制御装置を実施例1に基づき説明してきたが、具体的な構成については、この実施例1に限られるものではなく、特許請求の範囲の各請求項に係る発明の要旨を逸脱しない限り、設計の変更や追加等は許容される。
実施例1では、路面μ値情報の応答特性を、自動運転コントローラ31や車両運動コントローラ32の制御周期に一致させる例を示したが、これに限らない。階層処理の各処理に入力される路面μ値情報の応答特性は、各処理で求める要求応答に応じていればよいので、例えば、車両の挙動状態や走行距離に応じた応答特性としてもよい。つまり、例えば、タイヤ力演算部324には、車両の舵角が閾値以上変化したタイミングで路面μ値情報を出力したり、目標軌跡生成部319には、車両が所定の距離を走行したタイミングで路面μ値情報を出力したりしてもよい。
また、路面μ値情報の応答特性と、各処理の要求応答とは、必ずしも一致していなくてもよい。各処理に対し、当該処理にて求める要求応答との応答差を抑えた情報を入力することで、処理ごとに出力される演算値を適切な値にすることが可能となる。
また、実施例1では、旋回Rが閾値未満のときの路面μ値情報を、縦力限界値を第1路面μ推定値に応じて描かれたタイヤ摩擦円Aと縦力との交点で規定し、横力限界値を第2路面μ推定値に応じて描かれたタイヤ摩擦円Bと横力との交点で規定したタイヤ摩擦円Cによって示される情報とする例を示した。しかしながら、これに限らない。路面μ値情報は、旋回Rに拘らず、常に縦力限界値及び横力限界値を、第1路面μ推定値に応じて描かれたタイヤ摩擦円Aと縦力及び横力との交点で規定し、結果的にタイヤ摩擦円Aによって示される情報としてもよい。
実施例1では、第2路面μ推定値を、第1路面μ推定値に補正係数を積算することで求める例を示したが、これに限らない。例えば、第1路面μ推定値から旋回Rに基づいて決まる補正係数を減算することで第2路面μ推定値を求めてもよい。また、タイヤ特性によるタイヤ縦力とタイヤ横力の比率と旋回Rからゲインを設定し、このゲインを第1路面μ推定値に積算することで第2路面μ推定値を求めてもよい。これらの場合であっても、横力限界値は、縦力限界値を旋回Rに応じて減少補正することになる。
また、実施例1では、第2路面μ推定値を算出する際に用いる補正係数を補正係数マップと、R演算区間における旋回Rとを用いて設定する例を示したが、これに限らない。例えば、旋回Rに基づいて設定した非線形モデルや数式モデル等からなるタイヤ特性予測モデルを用いて補正係数を設定してもよい。さらに、このタイヤ特性予測モデルを用いて第2路面μ推定値を算出してもよい。
また、実施例1では、タイヤに発生する縦力限界値を規定するタイヤ摩擦円Aを描くための第1路面μ推定値を推定する際、タイヤのスリップ状態として車輪速パルスの情報を用いる例を示した。しかしながら、タイヤのスリップ状態を示すパラメータとしては、車輪速パルスに限らない。例えば、タイヤに生じるスリップ率や、タイヤに生じたスリップ度等であってもよい。
また、実施例1では、ローパスフィルタ処理と、目標軌跡生成部319での情報の受け付け周期とを組み合わせることで、第1制御周期に一致した応答特性の路面μ値情報を目標軌跡生成部319に出力する例を示した。しかしながら、これに限らず、例えばローパスフィルタを複数介在させたり、ローパスフィルタの減衰率を変化させたりすることで、所望の応答特性の路面μ値情報を出力するようにしてもよい。また、各処理における情報の受け付けタイミングを制御することで、路面μ値情報の応答特性を制御してもよい。
また、実施例1では、車両を制御するコントローラとして車両に搭載された車載制御ユニット3とする例を示した。しかしながら、これに限らず、車外に設置されたコントロールセンターによって車両を制御するものであってもよい。