(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023184130
(43)【公開日】2023-12-28
(54)【発明の名称】操舵角算出方法
(51)【国際特許分類】
B60W 30/02 20120101AFI20231221BHJP
B60L 15/20 20060101ALI20231221BHJP
B62D 6/00 20060101ALI20231221BHJP
【FI】
B60W30/02
B60L15/20 S
B62D6/00
【審査請求】未請求
【請求項の数】1
【出願形態】OL
(21)【出願番号】P 2022098096
(22)【出願日】2022-06-17
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】松元 勇磨
【テーマコード(参考)】
3D232
3D241
5H125
【Fターム(参考)】
3D232CC20
3D232DA03
3D232DA23
3D232DA92
3D232DA93
3D232EB04
3D232EB22
3D232EC22
3D232FF05
3D241BA18
3D241BC01
3D241BC02
3D241CA09
3D241CA16
3D241CC03
3D241CC17
3D241DA13Z
3D241DA52Z
3D241DA54Z
3D241DB02Z
3D241DB13Z
3D241DB15Z
3D241DB16Z
3D241DB24Z
5H125AA01
5H125AC12
5H125BA00
5H125BA07
5H125CA02
5H125EE42
5H125EE52
(57)【要約】
【課題】最適化精度を維持しつつ計算量の増加を抑制すること。
【解決手段】操舵角算出方法であって、車両の目標速度に基づいて、車両に設けられた複数の操舵輪に対する各車輪の操舵角を算出する第1算出ステップと、第1算出ステップで算出した各車輪の操舵角と、車両の目標駆動力とに基づいて、最適化手法を用いて各車輪で発生させる駆動力を算出する分配ステップと、分配ステップで算出した各車輪で発生させる駆動力に基づいて、各車輪の目標横力を実現する操舵角となるように、最終的な各車輪の操舵角を算出する第2算出ステップと、を含む。
【選択図】
図2
【特許請求の範囲】
【請求項1】
車両の目標速度に基づいて、前記車両に設けられた複数の操舵輪に対する各車輪の操舵角を算出する第1算出ステップと、
前記第1算出ステップで算出した各車輪の操舵角と、前記車両の目標駆動力とに基づいて、最適化手法を用いて前記各車輪で発生させる駆動力を算出する分配ステップと、
前記分配ステップで算出した各車輪で発生させる駆動力に基づいて、前記各車輪の目標横力を実現する操舵角となるように、最終的な前記各車輪の操舵角を算出する第2算出ステップと、を含む
ことを特徴とする操舵角算出方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、操舵角算出方法に関する。
【背景技術】
【0002】
特許文献1には、車両の姿勢を制御する姿勢制御を実行する際、姿勢制御の性能を低下させることなく、姿勢制御による消費電力を小さくするために、車両の各車輪に設けられたモータとアクティブサスペンションとの出力を制御することが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の構成は、高速域で使用する前提の技術であるため、車両の駆動力を各車輪に分配する際、車輪の操舵角を無視して、すなわち現在の操舵角をゼロに近似する前提で最適化計算式が立てられている。しかしながら、操舵機構を備えたモビリティ、例えば小型モビリティのように小回りの利く車両では操舵角を無視できないため、この技術を適用できない。
【0005】
そこで、操舵機構を備えたモビリティに適用するために、最適な操舵角を含めた最適化計算式を立式することが考えられる。しかしながら、この場合には、非線形最適化問題となる。非線形最適化問題として最適化計算を行うことも可能ではあるが、計算量は爆発的に増加し、制御負荷は大幅に増加するため、リアルタイム性が求められる走行制御での使用には適さない虞がある。
【0006】
本発明は、上記事情に鑑みてなされたものであって、最適化精度を維持しつつ計算量の増加を抑制することができる操舵角算出方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係る操舵角算出方法は、車両の目標速度に基づいて、前記車両に設けられた複数の操舵輪に対する各車輪の操舵角を算出する第1算出ステップと、前記第1算出ステップで算出した各車輪の操舵角と、前記車両の目標駆動力とに基づいて、最適化手法を用いて前記各車輪で発生させる駆動力を算出する分配ステップと、前記分配ステップで算出した各車輪で発生させる駆動力に基づいて、前記各車輪の目標横力を実現する操舵角となるように、最終的な前記各車輪の操舵角を算出する第2算出ステップと、を含むことを特徴とする。
【発明の効果】
【0008】
本発明では、最適化対象に操舵角を含めないことにより計算量の増加を抑制しつつ最適化精度を維持することができる。また、車輪の数を増やした場合にもそのまま制御を適用することができる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、実施形態における車両を説明するための図である。
【
図2】
図2は、走行制御部を説明するための図である。
【
図3】
図3は、左前輪を制御する場合を説明するための図である。
【
図4】
図4は、目標速度ベクトルを説明するための図である。
【
図5】
図5は、タイヤ8分力を求める式を説明するための図である。
【
図6】
図6は、タイヤ8分力を説明するための図である。
【
図7】
図7は、タイヤ横力と横滑り角との関係を示す図である。
【
図8】
図8は、仮タイヤ角と最終的なタイヤ角との誤差を説明するための図である。
【発明を実施するための形態】
【0010】
以下、図面を参照して、本発明の実施形態における操舵角算出方法について具体的に説明する。なお、本発明は、以下に説明する実施形態に限定されるものではない。
【0011】
図1は、実施形態における車両を説明するための図である。車両1は、走行制御部10と、モータドライバ20と、操舵アクチュエータ30とを備えている。
【0012】
車両1は、走行用モータを搭載した小型モビリティである。この車両1は、走行用モータに電力を供給するバッテリを備える。小型モビリティは用途が多岐にわたるため、構造の自由度や使用条件の自由度が高いことを特徴とする。小型モビリティの使用域は低速である。また、小型モビリティが備える操舵機構は、車輪の操舵角を360deg自由に操舵できる場合もある。さらに、小型モビリティは自律制御により走行可能な場合もある。
【0013】
車両1は、全部で四つの車輪(左前輪、右前輪、左後輪、右後輪)を備え、各車輪はいずれも操舵輪である。車両1は、複数の操舵輪を備え、各車輪の操舵角を走行制御部10により制御する。なお、この説明では、操舵角とタイヤ角とは同義である。車輪の操舵角は操舵輪のタイヤ角である。
【0014】
走行制御部10は、車両1の走行を制御する電子制御装置である。走行制御部10には車両1に搭載された各種センサからの信号が入力される。各種センサから入力された信号に基づいて走行制御部10は走行制御を実行する。走行制御部10は走行制御中、指令信号をモータドライバ20と操舵アクチュエータ30とに出力して各車輪の駆動力と操舵角とを制御する。
【0015】
走行制御部10は、駆動力算出部11と、タイヤ角仮算出部12と、駆動力分配部13と、トルク算出部14と、タイヤ角算出部15とを備える。
【0016】
駆動力算出部11は、自律制御による目標速度や、ユーザの操作による操作量に基づいて、車両駆動力(車両6分力)の目標値を算出する。ユーザの操作は、車両1の運転者による操作であり、アクセルペダルの操作であるアクセル操作や、ブレーキペダルの操作であるブレーキ操作や、ステアリングの操作であるステアリング操作を含む。車両6分力は、前方向駆動力Fx、横方向駆動力Fy、上下方向駆動力Fz、ロール方向モーメントMx、ピッチ方向モーメントMy、ヨー方向モーメントMzである。車両1が自律制御により走行可能な場合、駆動力算出部11は自律制御からの速度指令を受信し、その速度指令に基づいて車両1の目標駆動力(車両駆動力の目標値)を算出する。
【0017】
タイヤ角仮算出部12は、自律制御による目標速度や、ユーザの操作による操作量に基づいて、車両1に設けられた複数の操舵輪に対する各車輪の操舵角を仮決めする。タイヤ角仮算出部12は、目標速度を実現するための速度指示や、ステアリング操作などのユーザ操作に応じて、幾何学計算によって各車輪の操舵角を算出する。
【0018】
駆動力分配部13は、車両1の目標駆動力を複数の駆動輪に分配し、各駆動輪で発生させる駆動力を算出する。車両1では四つの操舵輪がいずれも駆動輪である。駆動力分配部13は、駆動力算出部11からの車両駆動力と、タイヤ角仮算出部12からの各車輪の操舵角とを受信し、最適化手法を用いて、各接地点(各車輪)で発生させる駆動力を算出する。
【0019】
トルク算出部14は、駆動力分配部13による演算の結果(駆動力分配結果)から、実際に指令するトルク(指示トルク)を決定する。トルク算出部14は、駆動力分配部13からの各車輪の駆動力を受信し、その駆動力を実現するためのモータトルクを算出する。
【0020】
タイヤ角算出部15は、駆動力分配部13による演算の結果(駆動力分配結果)から、実際に指令する操舵角(指示舵角)を決定する。タイヤ角算出部15は、駆動力分配部13からの各車輪の駆動力を受信し、各車輪の目標横力を実現することができる操舵角を算出する。
【0021】
モータドライバ20は、トルク算出部14からの指示トルクを受信して、その指示トルクを出力するようにモータを制御する。
【0022】
操舵アクチュエータ30は、タイヤ角算出部15からの指示舵角を受信して、その指示舵角となるように操舵機構を制御する。
【0023】
例えば、走行制御部10がモータドライバ20および操舵アクチュエータ30に指令信号を出力して車両1の左前輪を制御する場合、
図3に示すように、左前輪は駆動力Fxlf、操舵角θlfに制御される。この操舵角θlfにより左前輪には横力Fylfが発生する。
【0024】
このように構成された走行制御部10は、最適化精度を維持しつつ計算量の増加を抑制することが可能な制御構造となるよう、
図1および
図2に示すように、タイヤ角仮算出部12とタイヤ角算出部15とを備え、各車輪の操舵角の算出を2段階に分けている。第1段階は、操舵角の仮算出である。第2段階は、最終的な操舵角の算出である。
【0025】
第1段階である操舵角の仮算出では、ユーザ操作による操作量や自律走行機能からの目標速度に応じて、幾何学的に求めた操舵角を算出する。この操舵角は、車両1が目標速度で走行した際に車輪の横滑りがゼロとなる角度である。つまり、タイヤ角仮算出部12は、目標速度で走行時に横滑りが発生しない操舵角を仮算出する。
【0026】
第2段階である最終的な操舵角の算出では、駆動力分配結果から、各車輪で発生すべき横力(目標横力)が分かるため、この目標横力を出すための操舵角を算出する。タイヤ角算出部15は、車輪の目標横力を実現できる操舵角を算出し、その操舵角を指示舵角とする。
【0027】
例えば、車輪の横力は横滑り角5°程度で最大となる。そのため、第1段階の操舵角仮算出と第2段階の操舵角算出との差は5°以内になるはずである。このとき、最適化計算で生じる誤差(出せない出力を指令してしまう度合)は、1-cos5°=0.003となり、0.3%と計算されるため無視できるほど小さい。この制御構造によれば、駆動力分配内の計算が線形最適化となるため、高速に解を計算できる。よって、最適化精度を維持しつつ計算コストも少ない制御構造となる。
【0028】
ここで、走行制御部10の制御構造をより詳細に説明する。この制御構造は、第1算出ステップであるタイヤ角仮算出、分配ステップである分配計算、第2算出ステップであるタイヤ角算出を含む。
【0029】
まず、タイヤ角仮算出について説明する。タイヤ角仮算出では、車両1の目標速度に基づいて、複数の操舵輪に対する各車輪の操舵角を算出する。タイヤ角仮算出部12は、車輪の目標速度ベクトルを求める。目標速度(vx,vy,vz)の要求があるとき、
図4に示すように、車両座標上で(xn,yn)の位置にある車輪の目標速度ベクトルvn=(vxn,vyn)は、下式(1)により表される。
【0030】
【0031】
そして、タイヤ角仮算出部12は、上式(1)を用いて、横滑りゼロで車輪が転がるための操舵角θnを求めることができる。操舵角θnは、下式(2)により表される。
【0032】
【0033】
上式(2)において、atan2は、tanθn=vyn/vxnの逆関数である。通常のatan関数の場合、-90~90degまでしかとれないため、この算出方法では、atan2(-180~180deg)を使用する。
【0034】
次に、分配計算について説明する。分配計算では、タイヤ角仮算出で求めた各車輪の操舵角と、車両1の目標駆動力とに基づいて、最適化手法を用いて各車輪で発生させる駆動力を算出する。車両1が全部で四つの車輪を備え、各車輪がいずれも操舵輪である場合について説明する。この場合、
図5に示すように、タイヤZ方向の力は無視して、車両6分力をタイヤ8分力に変換する式を立てる。
【0035】
車両6分力は、駆動力算出部11により算出される。タイヤ8分力は、駆動力分配部13により算出される。タイヤ8分力は、左前輪X方向駆動力Fxlf、左前輪Y方向駆動力Fylf、右前輪X方向駆動力Fxrf、右前輪Y方向駆動力Fyrf、左後輪X方向駆動力Fxlr、左後輪Y方向駆動力Fylr、右後輪X方向駆動力Fxrr、右後輪Y方向駆動力Fyrrである。タイヤ8分力の一例が
図6に示されている。そして、駆動力分配部13は、車両6分力を用いてタイヤ8分力を算出する。
【0036】
タイヤ8分力と車両6分力との関係式y=Axは、下式(3)により表せる。
【0037】
【0038】
このとき、操舵角θは、タイヤ角仮算出で求めたものである。rは、車両中心から左右車輪までのY方向距離[m]である。lfは、車両中心から前輪までのX方向距離[m]である。lrは、車両中心から後輪までのX方向距離[m]である。なお、X方向は車両1の幅方向、Y方向は車両1の前後方向である。また、Z方向およびタイヤZ方向は車両1の高さ方向である。
【0039】
また、制約条件として、モータトルク上下限によるY方向の力の制約と、タイヤ横力上下限によるタイヤY方向の力の制約と、バッテリ電力上下限による制約とを設定する。
【0040】
モータトルク上下限によるY方向の力の制約は、下式(4),(5)により表される。
【0041】
【0042】
タイヤ横力上下限によるタイヤY方向の力の制約は、下式(6),(7)により表される。
【0043】
【0044】
バッテリ電力上下限による制約は、下式(8)により表される。
【0045】
【0046】
そして、駆動力分配部13は、これらの制約条件を設定すると、最後に評価関数fncを設定する。評価関数fncは、下式(9)により表される。
【0047】
【0048】
上式(9)において、右辺の第1項は、6分力との誤差を表し、右辺の第2項は、2乗ノムル最小を表す。駆動力分配部13は、この評価関数fncを用いて、最適化ソルバー(有効制約法など)で分配計算を解く。この分配計算では、制約条件を満たす中で評価関数fncが最小となるx(タイヤ8分力)が算出され、分配が完了する。
【0049】
このように、分配計算では、タイヤ8分力を最適化計算(反復計算)により求める。その際、最適化ソルバーを利用する。また、満たすべき制約条件と評価関数とを与えることで、この問題は2次計画問題に分類されるため、有効制約法を用いて高速に解を求めることができる。評価関数fncを用いることにより、レート制限やグリップ最適などの任意の要件を設定できるようになる。
【0050】
次に、タイヤ角算出について説明する。タイヤ角算出では、分配計算により求めた各車輪で発生させる駆動力に基づいて、各車輪の目標横力を実現する操舵角となるように、最終的な各車輪の操舵角を算出する。タイヤ角算出部15は、分配計算で求めたタイヤ8分力を用いて、最終的な各車輪の操舵角を算出する。
【0051】
具体的には、タイヤY方向の力を操舵によるタイヤ横力で実現する。タイヤ横力はタイヤ横滑り角によって実現できる。そのために、タイヤ接地点の速度ベクトルの角度に、目的のタイヤ横力を実現するための横滑り角を加算したものを最終的な操舵角とする。
【0052】
タイヤ角算出部15は、車輪の速度ベクトルを求める。車両実速度(vxreal,vyreal,ωzreal)が測定または推定されているとき、車両座標上で(xn,yn)の位置にある車輪の速度ベクトルvnreal=(vxnreal,vynreal)は、下式(10)により表される。
【0053】
【0054】
また、タイヤ角算出部15は、上式(10)を用いて、速度ベクトルの角度θnrealを求めることができる。速度ベクトルの角度θnrealは、下式(11)により表される。
【0055】
【0056】
さらに、タイヤ角算出部15は、タイヤ特性に基づいて、車輪の目標横力を実現するための横滑り角θnslipを算出する。タイヤ特性は、
図7に示すように、車輪の横力と横滑り角との関係により表されるものである。つまり、目標となるタイヤ横力が定めることにより、その横力を実現するための横滑り角を特定することができる。
【0057】
そして、タイヤ角算出部15は、速度ベクトルの角度θnrealと横滑り角θnslipとを用いて、最終的な第n輪の操舵角θntagを算出する。最終的な第n輪の操舵角θntagは、下式(12)により表される。
【0058】
【0059】
このようにしてタイヤ角算出部15は指示舵角を求めることができる。この場合、駆動力分配で制約として使用したタイヤ角(最初のタイヤ角仮算出で求めたもの)と、最後に実際に指令したタイヤ角とが異なる。その結果、モータによって実現するタイヤX方向の力Fnxが想定よりも出せなくなる場合がある(
図8参照)。しかし、タイヤ横力と横滑り角との関係上(5deg程度で横力が飽和するため、5deg以上横滑りさせない)、仮タイヤ角と指示タイヤ角とのずれは最大5deg程度となる。5degのずれの場合、タイヤX方向の力Fnxは駆動力分配で想定した制約のcos5°倍までしか出力できないことになるが、cos5°は99.7%程度であり、誤差は0.3%である。そのため、この誤差を無視することができる。
【0060】
以上説明した通り、実施形態によれば、車輪の操舵角を算出する際に、最適化対象に操舵角を含めないことにより計算量の増加を抑制しつつ最適化精度を維持することができる。また、車輪の数を増やした場合にもそのまま制御を適用することができる。
【0061】
なお、車両1の複数の操舵輪のうち、左前輪の駆動力および操舵角を制御する例について説明したが、その制御は、いずれの操舵輪に対しても適用可能である。つまり、走行制御部10は車両1の左前輪、右前輪、左後輪、右後輪の四輪すべてに対して駆動力および操舵角を制御することが可能である。
【0062】
また、車両1が備える車輪の個数は4個の場合に限定されず、車輪は任意の個数、任意の位置に設置されていてもよい。
【0063】
また、車両1が備える車輪は全て操舵輪でなくてもよい。すなわち、車両1は操舵できない車輪を含んでいてもよい。この場合、走行制御部10はタイヤ角算出を常に0にすることで対応可能である。
【0064】
また、車両1は駆動できない車輪を含んでもよい。この場合、駆動力分配でFnxの上下限制約を0に固定すればよい。
【0065】
また、車両1が備える車輪は、オムニホイール、メカナムホイールなどの特殊な車輪を含んでいてもよい。この場合、タイヤ角算出の結果を常に0にすることで対応可能である。
【0066】
また、各車輪駆動力、制動力を制御できるのであれば、動力源はモータである必要はない。また、1輪につき1モータを設置する構造に限定されない。例えば、エンジンとトルク分配比率を制御可能なデフと各輪独立で制御できるブレーキを備える。
【0067】
また、タイヤ角仮算出結果の代わりに、現在のタイヤ角を用いてもよく、あるいは前回のタイヤ角指令値を用いてもよい。
【0068】
また、目標速度の代わりに、ユーザ操作(アクセル、ブレーキ、ジョイスティックなど)を直接入力し、タイヤ角仮算出部12で目標速度を算出してもよい。
【0069】
また、トルク算出とタイヤ角算出とを連成(連立方程式を立てる。2入力2出力なので解ける)し、より正確に指示トルクと指示舵角とを算出できる。
【0070】
また、駆動力分配部13とタイヤ角算出部15の処理において、横力Fnyの算出を行わず(Fnyに関する式を抜いて最適化)、タイヤ角算出を行わず、タイヤ角仮算出の結果をそのまま指示タイヤ角として使用することも可能である(
図9参照)。この場合、精度が落ちるものの処理負荷は軽減される。
【符号の説明】
【0071】
1 車両
10 走行制御部
11 駆動力算出部
12 タイヤ角仮算出部
13 駆動力分配部
14 トルク算出部
15 タイヤ角算出部
20 モータドライバ
30 操舵アクチュエータ