IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士重工業株式会社の特許一覧

<>
  • 特開-車両 図1
  • 特開-車両 図2
  • 特開-車両 図3
  • 特開-車両 図4
  • 特開-車両 図5
  • 特開-車両 図6
  • 特開-車両 図7
  • 特開-車両 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024025486
(43)【公開日】2024-02-26
(54)【発明の名称】車両
(51)【国際特許分類】
   B60L 15/20 20060101AFI20240216BHJP
   B60W 50/00 20060101ALI20240216BHJP
   B60K 17/14 20060101ALI20240216BHJP
   B60K 17/356 20060101ALI20240216BHJP
【FI】
B60L15/20 S
B60L15/20 Y
B60W50/00
B60K17/14
B60K17/356 B
【審査請求】未請求
【請求項の数】2
【出願形態】OL
(21)【出願番号】P 2022128974
(22)【出願日】2022-08-12
(71)【出願人】
【識別番号】000005348
【氏名又は名称】株式会社SUBARU
(74)【代理人】
【識別番号】110000936
【氏名又は名称】弁理士法人青海国際特許事務所
(72)【発明者】
【氏名】大黒 智寛
【テーマコード(参考)】
3D042
3D043
3D241
5H125
【Fターム(参考)】
3D042AA01
3D042AB17
3D042BE01
3D043AA01
3D043AB17
3D043EA05
3D043EF14
3D043EF24
3D241BA00
3D241CA03
3D241CA09
3D241CC03
3D241CE04
3D241DB01Z
3D241DB05Z
3D241DB27Z
3D241DB32Z
3D241DC49Z
5H125AA01
5H125AB01
5H125BA07
5H125CA02
5H125DD14
5H125DD16
5H125EE09
5H125EE41
(57)【要約】
【課題】低摩擦路においてスタックした際に車両を自動で移動すること。
【解決手段】制御装置は、前進時により高い負荷を受ける少なくとも1つの駆動輪およびより低い負荷を受ける少なくとも1つの駆動輪を検出することと、後退時により高い負荷を受ける少なくとも1つの駆動輪およびより低い負荷を受ける少なくとも1つの駆動輪を検出することと、前進および後退を交互に切り替えることとを実行するように構成される。前進することは、前進時により低い負荷を受ける少なくとも1つの駆動輪に0%のスリップ率を得るトルクを与え、前進時により高い負荷を受ける少なくとも1つの駆動輪にスリップを引き起こすトルクを与えることを含み、後退することは、後退時により低い負荷を受ける少なくとも1つの駆動輪に0%のスリップ率を得るトルクを与え、後退時により高い負荷を受ける少なくとも1つの駆動輪にスリップを引き起こすトルクを与えることを含む。
【選択図】図3
【特許請求の範囲】
【請求項1】
左右前側の駆動輪および左右後側の駆動輪と、
各々が前記駆動輪の1つに対して独立に設けられる複数のモータと、
前記複数のモータを制御する制御装置と、
を備え、
前記制御装置は、1または複数のプロセッサと、前記プロセッサによって実行される命令を記憶する1または複数の記憶媒体と、を含み、
前記プロセッサは、ドライバから所定の操作を受け付けると、前記命令にしたがって、
前進時に、より高い負荷を受ける少なくとも1つの駆動輪と、より低い負荷を受ける少なくとも1つの駆動輪と、を検出することと、
後退時に、より高い負荷を受ける少なくとも1つの駆動輪と、より低い負荷を受ける少なくとも1つの駆動輪と、を検出することと、
前進および後退を交互に切り替えることであって、
前進することは、前進時により低い負荷を受ける前記少なくとも1つの駆動輪に0%のスリップ率を得るトルクを与え、前進時により高い負荷を受ける前記少なくとも1つの駆動輪にスリップを引き起こすトルクを与えることを含み、
後退することは、後退時により低い負荷を受ける前記少なくとも1つの駆動輪に0%のスリップ率を得るトルクを与え、後退時により高い負荷を受ける前記少なくとも1つの駆動輪にスリップを引き起こすトルクを与えることを含む、
ことと、
を実行するように構成される、
車両。
【請求項2】
前進から後退への切り替えは、前進が止まったときに実行され、後退から前進への切り替えは、後退が止まったときに実行される、請求項1に記載の車両。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車両に関する。
【背景技術】
【0002】
この技術分野では、低摩擦路における車両の走行をサポートするための機能が提案されている。例えば、特許文献1は、スリップ時に、前輪と後輪とに分配されるトルクの比率を調整する制御装置を備える自動車を開示する。スリップが検出されたとき、制御装置は、スリップが検出された車輪に分配されるトルクが小さく設定されるよう、トルクの比率を調整する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005-161961号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
凍結路または雪道等の低摩擦路において車両がスタックした場合、車輪のスリップに起因して、手動運転で車両を移動させることがドライバにとって困難な場合がある。
【0005】
本発明は、低摩擦路においてスタックした際に、自動で移動することができる車両を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係る車両は、
左右前側の駆動輪および左右後側の駆動輪と、
各々が前記駆動輪の1つに対して独立に設けられる複数のモータと、
前記複数のモータを制御する制御装置と、
を備え、
前記制御装置は、1または複数のプロセッサと、前記プロセッサによって実行される命令を記憶する1または複数の記憶媒体と、を含み、
前記プロセッサは、ドライバから所定の操作を受け付けると、前記命令にしたがって、
前進時に、より高い負荷を受ける少なくとも1つの駆動輪と、より低い負荷を受ける少なくとも1つの駆動輪と、を検出することと、
後退時に、より高い負荷を受ける少なくとも1つの駆動輪と、より低い負荷を受ける少なくとも1つの駆動輪と、を検出することと、
前進および後退を交互に切り替えることであって、
前進することは、前進時により低い負荷を受ける前記少なくとも1つの駆動輪に0%のスリップ率を得るトルクを与え、前進時により高い負荷を受ける前記少なくとも1つの駆動輪にスリップを引き起こすトルクを与えることを含み、
後退することは、後退時により低い負荷を受ける前記少なくとも1つの駆動輪に0%のスリップ率を得るトルクを与え、後退時により高い負荷を受ける前記少なくとも1つの駆動輪にスリップを引き起こすトルクを与えることを含む、
ことと、
を実行するように構成される。
【発明の効果】
【0007】
本発明によれば、低摩擦路においてスタックした際に車両を自動で移動することができる。
【図面の簡単な説明】
【0008】
図1図1は、実施形態に係る車両を示す概略図である。
図2図2は、ECUの機能ブロック図である。
図3図3は、スリップ率とグリップ力との間の関係を示すグラフである。
図4図4は、スタックした車両の一例を示す概略的な側面図である。
図5図5は、第2制御におけるトルクおよび車速の推移を示すグラフである。
図6図6は、制御装置の動作を示すフローチャートである。
図7図7は、図6に続くフローチャートである。
図8図8は、図7に続くフローチャートである。
【発明を実施するための形態】
【0009】
以下に添付図面を参照しながら、本発明の実施形態について詳細に説明する。かかる実施形態に示す具体的な寸法、材料および数値等は、理解を容易にするための例示に過ぎず、特に断る場合を除き、本発明を限定するものではない。なお、明細書および図面において、実質的に同一の機能および構成を有する要素については、同一の符号を付することにより重複説明を省略する。また、本発明に直接関係のない要素は図示を省略する。
【0010】
図1は、実施形態に係る車両100を示す概略図である。車両100は、複数の駆動輪FL,FR,RL,RRと、複数のモータMと、複数の車輪速センサS1と、GPS(Global Positioning System)センサS2と、加速度センサS3と、ボタン(入力部)Bと、ECU(制御装置)50と、を備える。車両100は、その他の様々な構成要素をさらに備えてもよい。また、車両100は、上記の構成要素のうちの少なくとも1つを備えなくてもよい。
【0011】
本実施形態では、車両100は、左前輪FL、右前輪FR,左後輪RLおよび右後輪RRの4つの駆動輪を備える。駆動輪の数は、4つに限定されない。他の実施形態では、車両100は、モータMに結合されない1つまたは複数の従動輪をさらに備えてもよい。
【0012】
モータMは、駆動輪FL,FR,RL,RRの各々に対して、動力源として個別に設けられる。例えば、モータMは、インホイールモータであることができる。例えば、モータMは、車輪に直接的に結合されていてもよく、または、ギアを介して車輪に結合されていてもよい。モータMは、ECU50と通信可能に接続される。ECU50は、モータMの動作を制御する。
【0013】
車輪速センサS1は、駆動輪FL,FR,RL,RRの各々に対して設けられる。車輪速センサS1は、車輪の回転数を検出する。車輪速センサS1は、ECU50と通信可能に接続されており、検出されるデータをECU50に送信する。
【0014】
GPSセンサS2は、車両100の位置情報を衛星から受信する。GPSセンサS2は、ECU50と通信可能に接続されており、受信した位置情報をECU50に送信する。
【0015】
加速度センサS3は、少なくとも縦方向(前後方向)における車両100の加速度を検出する。加速度センサS3は、横方向(左右方向)および鉛直方向(上下方向)における車両100の加速度をさらに検出してもよい。加速度センサS3は、ECU50と通信可能に接続されており、検出されるデータをECU50に送信する。
【0016】
ボタンBは、後述する回復動作を実行するための入力部である。ボタンBは、例えばステアリングホイール等、運転席の周りのドライバの手が届く範囲に設けられることができる。例えば、ボタンBは、機械的なボタンであってもよく、または、タッチパネル上に表示されるボタンであってもよい。回復動作を実行するための入力部はボタンBに限定されず、例えば、ステアリングホイールの周りに設けられるパドル等の他の構成要素であってもよい。ボタンBは、ECU50と通信可能に接続されている。ECU50は、ボタンBが押されたときに、回復動作を実行する。
【0017】
例えば、ECU50は、CPU等の1または複数のプロセッサ51と、ROMおよびRAM等の1または複数の記憶媒体52と、1または複数のコネクタ53と、を含む。ECU50は、他の構成要素をさらに有してもよい。ECU50の構成要素は、バスによって互いに通信可能に接続される。記憶媒体52は、プロセッサ51によって実行される1または複数のプログラムを記憶する。プログラムは、プロセッサ51に対する命令を含む。本開示に示されるECU50の動作は、記憶媒体52に記憶された命令をプロセッサ51で実行することによって、実現される。ECU50は、コネクタ53を介して車両100の構成要素と通信可能に接続される。
【0018】
上記のように、ECU50は、ボタンBが押されたときに、車両100を自動で移動させるための回復動作を実行する。例えば、車両100がスタックし、ドライバが手動運転で車両100を移動させることができない場合に、ドライバはボタンBを押してもよい。例えば、回復動作は、凍結路または雪道等の低摩擦路において特に有効である。しかしながら、回復動作は、通常の道路において車両100がスタックした場合にも実行されてもよい。このような回復動作は、後述する第1制御および第2制御(揺動制御)を含む。
【0019】
図2は、ECU50の機能ブロック図である。プロセッサ51は、ボタンBが押されたときに、記憶媒体52に記憶された命令にしたがって、第1制御を実行する第1実行部54、および、第2制御を実行する第2実行部55として機能する。
【0020】
図3は、スリップ率とグリップ力との間の関係の例を示すグラフである。図3において、横軸はスリップ率を示す。スリップ率は、スリップ率(%)=(車輪速―車体速)/車体速×100として計算される。図3において、縦軸はグリップ力を示す。実線L1は、縦方向のグリップ力を示し、破線L2は、横方向のグリップ力を示す。
【0021】
実線L1から明らかなように、縦方向のグリップ力は、約20%のスリップ率のとき、すなわち、駆動輪がある程度スリップしているときに最も高いことがわかる。すなわち、縦方向のグリップ力は、スリップ率=0%のとき、すなわち駆動輪がスリップしないときに最も高いのではない。したがって、車両100がスタックした場合、ある程度のスリップを引き起こすトルクを駆動輪に与えることで、駆動輪は、最も高い縦方向のグリップ力を得ることができる。
【0022】
なお、破線L2から明らかなように、横方向のグリップ力は、スリップ率=0%のとき、すなわち駆動輪がスリップしないときに最も高い。
【0023】
上記のような知見に基づいて、プロセッサ51は、第1制御を実行する。第1制御は、駆動輪FL,FR,RL,RRの各々に対して、ある程度のスリップを引き起こすトルクを与えながら、車両100を前進および後退させることを含む。
【0024】
例えば、「ある程度のスリップを引き起こすトルク」とは、最も高い縦方向のグリップ力が得られるスリップ率(図3の例では、約20%のスリップ率)を含む、所定の目標範囲R内のスリップ率が得られるトルクを意味してもよい。例えば、目標範囲Rは、10%以上20%以下であってもよい。目標範囲Rはこれに限定されず、車種等の様々な要因に応じて変えてもよい。本開示において、「目標範囲R内のスリップ率が得られるトルク」は、「高グリップトルク」とも称され得る。すなわち、本実施形態の第1制御では、全ての駆動輪FL,FR,RL,RRに対して、高グリップトルクが与えられる。なお、スリップを引き起こすトルクは、個々の車輪に加わる負荷に応じて変化するため、高グリップトルクも、個々の車輪に加わる負荷に応じて変化する。第1制御の間、ある駆動輪が激しくスリップする場合には、プロセッサ51は、その駆動輪にトルクを与えなくてもよい。代替的に、「ある程度のスリップを引き起こすトルク」とは、0より大きいスリップ率が得られるトルクを意味してもよい。
【0025】
第1制御では、スリップ率を計算するための車輪速は、駆動輪FL,FR,RL,RRの各々の車輪速センサS1から得ることができる。車体速(車速)は、GPSセンサS2から得られる位置情報に基づいて計算されてもよい。代替的にまたは追加的に、車体速は、加速度センサS3により検出されるデータに基づいて計算されてもよい。
【0026】
第1制御の間、プロセッサ51は、前進時および後退時の各々において、より高い負荷を受ける少なくとも1つの駆動輪と、より低い負荷を受ける少なくとも1つの駆動輪と、を検出する。
【0027】
図4は、スタックした車両100の一例を示す概略的な側面図である。図4の例では、車両100は、低摩擦路中の窪みDでスタックしている。第1制御の間に車両100が前方向Fdに前進する場合、車両100の前部分が上方に持ち上がる。この場合、後側の駆動輪RL,RRがより高い負荷を受け、前側の駆動輪FL,FRがより低い負荷を受ける。上記のように、第1制御では、全ての駆動輪FL,FR,RL,RRに対して高グリップトルクが与えられ、かつ、高グリップトルクは、個々の車輪に加わる負荷に応じて変化する。したがって、より高い負荷を受ける後側の駆動輪RL,RRにより高いトルクが与えられ、より低い負荷を受ける前側の駆動輪FL,FRにより低いトルクが与えられる。よって、プロセッサ51は、前進の間に、各モータMによって出力されるトルクを読み取ることによって、前進時に、より高い負荷を受ける駆動輪と、より低い負荷を受ける駆動輪と、を検出することができる。
【0028】
同様に、第1制御の間に車両100が後方向Bdに後退する場合、車両100の後部分が上方に持ち上がる。この場合、前側の駆動輪FL,FRがより高い負荷を受け、後側の駆動輪RL,RRがより低い負荷を受ける。したがって、より高い負荷を受ける前側の駆動輪FL,FRにより高いトルクが与えられ、より低い負荷を受ける後側の駆動輪RL,RRにより低いトルクが与えられる。よって、プロセッサ51は、後退の間に、各モータMによって出力されるトルクを読み取ることによって、後退時に、より高い負荷を受ける駆動輪と、より低い負荷を受ける駆動輪と、を検出することができる。
【0029】
なお、より高い負荷を受ける駆動輪と、より低い負荷を受ける駆動輪と、を検出する方法は、これに限定されず、例えば、加速度センサS3または勾配センサ(不図示)等の他のセンサを使用して実行されてもよい。例えば、図4の例において、加速度センサS3または勾配センサによって、車両100の前部分が上方に持ち上がっていることが検出される場合、プロセッサ51は、後側の駆動輪RL,RRがより高い負荷を受け、前側の駆動輪FL,FRがより低い負荷を受けると判断してもよい。また、図4の例において、加速度センサS3または勾配センサによって、車両100の後部分が上方に持ち上がっていることが検出される場合、プロセッサ51は、前側の駆動輪FL,FRがより高い負荷を受け、後側の駆動輪RL,RRがより低い負荷を受けると判断してもよい。
【0030】
第1制御を実行しても車両100が移動しない場合、プロセッサ51は、第2制御を実行する。第2制御は、前進および後退を交互に切り替えることを含む。また、第2制御では、より低い負荷を受ける駆動輪には、ゼロスリップトルク、すなわち0%のスリップ率を得るトルクが与えられる。ゼロスリップトルクは、目標範囲R内のスリップ率が得られる高グリップトルクよりも低い。
【0031】
図5は、第2制御におけるトルクおよび車速の推移を示すグラフである。図5は、図4の例に示す車両100に与えられるトルクおよび車速の例を示す。上側および下側のグラフにおいて、横軸は時間を示す。
【0032】
上側のグラフにおいて、縦軸は車速を示す。前進時および後退時の双方の車速が、正の値(絶対値)として表される。下側のグラフにおいて、縦軸はトルクを示す。前進時および後退時の双方のトルクが、正の値(絶対値)として表される。下側のグラフにおいて、実線L3は、後側の駆動輪RL,RRに与えられるトルクを示し、破線L4は、前側の駆動輪FL,FRに与えられるトルクを示す。
【0033】
上記のように、図4の例では、車両100が前進する場合、後側の駆動輪RL,RRがより高い負荷を受け、前側の駆動輪FL,FRがより低い負荷を受ける。したがって、図5に示されるように、前進時には、より高い負荷を受ける後側の駆動輪RL,RRに対して、高グリップトルクが与えられる一方で、より低い負荷を受ける前側の駆動輪FL,FRに対して、ゼロスリップトルクが与えられる。
【0034】
対照的に、後退時には、前側の駆動輪FL,FRがより高い負荷を受け、後側の駆動輪RL,RRがより低い負荷を受ける。したがって、後退時には、より高い負荷を受ける前側の駆動輪FL,FRに対して、高グリップトルクが与えられる一方で、より低い負荷を受ける後側の駆動輪RL,RRに対して、ゼロスリップトルクが与えられる。
【0035】
なお、全ての駆動輪FL,FR,RL,RRが同様な負荷を受ける場合には、第2制御の間、進行側の駆動輪にゼロスリップトルクが与えられ、遅れ側の駆動輪に高グリップトルクが与えられてもよい。また、第2制御の間、ある駆動輪が激しくスリップする場合には、プロセッサ51は、その駆動輪にトルクを与えなくてもよい。
【0036】
図5に示されるように、前進から後退への切り替えは、前進が止まったとき、すなわち、前進時の車速がゼロに低下したときに実行される。また後退から前進への切り替えは、後退が止まったとき、すなわち、後退時の車速がゼロに低下したときに実行される。このような第2制御によれば、前進および後退を交互に切り替えることによって、車両100が振り子のように揺動し、図5に示されるように車速が増幅される。したがって、車両100は、窪みDを脱出することができる。なお、前進から後退への切り替えは、前進が止まったと見なせるとき、すなわち、前進時の車速が、所定の値よりも低下したときに実行されてもよい。同様に、後退から前進への切り替えは、後退が止まったと見なせるとき、すなわち、後退時の車速が所定の値よりも低下したときに実行されてもよい。
【0037】
第2制御では、スリップ率を計算するための車輪速は、駆動輪FL,FR,RL,RRの各々の車輪速センサS1から得ることができる。また、第2制御では、車体速(車速)は、ゼロスリップトルクが与えられる駆動輪の車輪速センサS1により検出されたデータに基づいて、計算することができる。
【0038】
例えば、モータMがギアを介して車輪に結合される場合、トルクを前進回転から後退回転に、または、後退回転から前進回転に切り替えるときに、バックラッシが騒音および衝撃を引き起こし得る。このような騒音および衝撃を避けるために、車両100は、トルクがゼロをまたぐときに、トルクを徐々に変化させる場合がある。これは、「ゼロクロス制御」とも称され得る。しかしながら、プロセッサ51は、第2制御では、前進および後退を素早く交互に切り替えるために、ゼロクロス制御を実施しなくてもよい。
【0039】
第1制御および第2制御の各々において、各駆動輪にトルクが最初に付与されるときには、車速はゼロである。したがって、ゼロスリップトルクおよび高グリップトルクを正確に得られない可能性がある。この場合、ECU50は、初期トルクを記憶媒体52に記憶していてもよい。各駆動輪にトルクが最初に付与されるときには、プロセッサ51は、初期トルクが得られるまでトルクを徐々に増加させてもよい。
【0040】
続いて、ECU50の動作について説明する。
【0041】
図6は、制御装置50の動作を示すフローチャートである。図6は、第1制御を示す。図6の例では、車両100の進行方向は前方である。車両100の進行方向は、例えば、不図示のシフトレバーの位置から検出することができる。例えば、図6に示される動作は、ボタンBがドライバによって押されると開始される。
【0042】
ECU50のプロセッサ51は、車両100の前方に障害物があるか否かを判断する(ステップS100)。例えば、プロセッサ51は、車両100に設けられる不図示のカメラによって得られる画像に基づいて、ステップS100を実行してもよい。
【0043】
ステップS100において、車両100の前方に障害物がない場合(NO)、プロセッサ51は、全ての駆動輪FL,FR,RL,RRに対して、高グリップトルクを与え、車両100を前進させる(ステップS102)。
【0044】
プロセッサ51は、前進の間に、より高い負荷を受ける駆動輪と、より低い負荷を受ける駆動輪と、を検出する(ステップS104)。
【0045】
プロセッサ51は、車両100は移動したか否かを判断する(ステップS106)。例えば、プロセッサ51は、GPSセンサS2から得られる位置情報または加速度センサS3により検出されるデータに基づいて、車両100が所定の距離(例えば、1ホイールベース分の距離)を移動したか否かを判断してもよい。
【0046】
ステップS106において、車両100が移動した場合(YES)、プロセッサ51は、動作を終了する。この場合、例えば、プロセッサ51は、車両100が無事に移動したことをディスプレイまたは音声でドライバに知らせてもよい。
【0047】
ステップS100において、車両100の前方に障害物がある場合(YES)、または、ステップS106において、車両100が移動しなかった場合(NO)、プロセッサ51は、後退は可能か否かを判断する(ステップS108)。例えば、プロセッサ51は、後退してもよいか否か、ドライバに確認してもよい。代替的にまたは追加的に、プロセッサ51は、カメラによって得られる画像に基づいて、車両100の後方に障害物があるか否かを判断してもよい。
【0048】
ステップS108において、後退は可能でない場合(NO)、プロセッサ51は、動作を終了する。この場合、例えば、プロセッサ51は、車両100が移動できないことをディスプレイまたは音声でドライバに知らせてもよい。
【0049】
ステップS108において、後退は可能である場合(YES)、プロセッサ51は、全ての駆動輪FL,FR,RL,RRに対して、高グリップトルクを与え、車両100を後退させる(ステップS110)。
【0050】
プロセッサ51は、後退の間に、より高い負荷を受ける駆動輪と、より低い負荷を受ける駆動輪と、を検出する(ステップS112)。
【0051】
プロセッサ51は、車両100は移動したか否かを判断する(ステップS114)。ステップS114は、上記のステップS106と同様であってもよい。
【0052】
ステップS114において、車両100が移動した場合(YES)、プロセッサ51は、動作を終了する。この場合、プロセッサ51は、車両100が無事に移動したことをディスプレイまたは音声でドライバに知らせてもよい。
【0053】
ステップS114において、車両100が移動しなかった場合(NO)、プロセッサ51は、第2制御は実行可能か否かを判断する(ステップS116)。例えば、プロセッサ51は、車両100を揺動することを含む第2制御を実行してもよいか否か、ドライバに確認してもよい。また、プロセッサ51は、車両の前方または後方のいずれかに障害物があるか否かを判断してもよい。車両の前方または後方のいずれかに障害物がある場合、プロセッサ51は、第2制御は実行可能でないと判断してもよい。
【0054】
ステップS116において、第2制御は実行可能である場合(YES)、プロセッサ51は、後述のステップS200に進む。
【0055】
ステップS116において、第2制御は実行可能でない場合(NO)、プロセッサ51は、動作を終了する。この場合、例えば、プロセッサ51は、車両100が移動できないことをディスプレイまたは音声でドライバに知らせてもよい。
【0056】
図7は、図6に続くフローチャートである。図7は、第2制御の一部を示す。
【0057】
プロセッサ51は、ステップS104における検出結果に基づいて、より高い負荷を受ける後側の駆動輪RL,RRに対して高グリップトルクを与え、より低い負荷を受ける前側の駆動輪FL,FRに対してゼロスリップトルクを与え、車両100を前進させる(ステップS200)。
【0058】
プロセッサ51は、車両100は前進したか否かを判断する(ステップS202)。例えば、プロセッサ51は、ゼロスリップトルクが与えられる前側の駆動輪FL,FRの車輪速センサS1により検出されたデータに基づいて、車速が増加したか否かを判定してもよい。
【0059】
ステップS202において、車両100は前進する場合(YES)、プロセッサ51は、車速はゼロまで低下したか否かを判断する(ステップS204)。代替的に、プロセッサ51は、車速が、所定の値よりも低下したか否かを判断してもよい。ステップS204において、車速はゼロまで低下していない場合(NO)、プロセッサ51は、車速がゼロに低下するまでステップS204を繰り返す。
【0060】
ステップS204において、車速がゼロまで低下した場合(YES)、プロセッサ51は、ステップS112における検出結果に基づいて、より高い負荷を受ける前側の駆動輪FL,FRに対して高グリップトルクを与え、より低い負荷を受ける後側の駆動輪RL,RRに対してゼロスリップトルクが与え、車両100を後退させる(ステップS206)。すなわち、プロセッサ51は、車両100を前進から後退に切り替える。
【0061】
プロセッサ51は、先の前進時の車速に比して、車速は増加したか否かを判断する(ステップS208)。
【0062】
ステップS208において、車速は増加する場合(YES)、プロセッサ51は、車両100は移動したか否かを判断する(ステップS210)。ステップS210は、上記のステップS106,S114と同様であってもよい。
【0063】
ステップS210において、車両100が移動した場合(YES)、プロセッサ51は、動作を終了する。この場合、プロセッサ51は、車両100が無事に移動したことをディスプレイまたは音声でドライバに知らせてもよい。
【0064】
ステップS210において、車両100は移動しなかった場合(NO)、プロセッサ51は、車速はゼロまで低下したか否かを判断する(ステップS212)。代替的に、プロセッサ51は、車速が、所定の値よりも低下したか否かを判断してもよい。ステップS212において、車速はゼロまで低下していない場合(NO)、プロセッサ51は、車速がゼロに低下するまでステップS210,S212を繰り返す。
【0065】
ステップS212において、車速はゼロまで低下した場合(YES)、プロセッサ51は、後述のステップS300に進む。
【0066】
ステップS202において車両100は前進しない場合(NO)、または、ステップS208において車速は増加しない場合(NO)、すなわち、車両100を前進から後退に切り替えても車速は増幅されない場合、プロセッサ51は、動作を終了する。この場合、例えば、プロセッサ51は、車両100が移動できないことをディスプレイまたは音声でドライバに知らせてもよい。
【0067】
図8は、図7に続くフローチャートである。図8は、第2制御の残りを示す。
【0068】
プロセッサ51は、ステップS104における検出結果に基づいて、より高い負荷を受ける後側の駆動輪RL,RRに対して高グリップトルクを与え、より低い負荷を受ける前側の駆動輪FL,FRに対してゼロスリップトルクを与え、車両100を前進させる(ステップS300)。
【0069】
プロセッサ51は、先の後退時の車速に比して、車速は増加したか否かを判断する(ステップS302)。
【0070】
ステップS302において、車速は増加する場合(YES)、プロセッサ51は、車両100は移動したか否かを判断する(ステップS304)。ステップS304は、上記のステップS106,S114,S210と同様であってもよい。
【0071】
ステップS304において、車両100が移動した場合(YES)、プロセッサ51は、動作を終了する。この場合、プロセッサ51は、車両100が無事に移動したことをディスプレイまたは音声でドライバに知らせてもよい。
【0072】
ステップS304において、車両100は移動しなかった場合(NO)、プロセッサ51は、車速はゼロまで低下したか否かを判断する(ステップS306)。代替的に、プロセッサ51は、車速が、所定の値よりも低下したか否かを判断してもよい。ステップS306において、車速はゼロまで低下していない場合(NO)、プロセッサ51は、車速がゼロに低下するまでステップS304,S306を繰り返す。
【0073】
ステップS306において、車速はゼロまで低下した場合(YES)、プロセッサ51は、図7の上記のステップS206に戻る。
【0074】
図8を参照して、ステップS302において車速は増加しない場合(NO)、すなわち、前進および後退を切り替えても車速は増幅されない場合、プロセッサ51は、動作を終了する。この場合、例えば、プロセッサ51は、車両100が移動できないことをディスプレイまたは音声でドライバに知らせてもよい。
【0075】
以上のような車両100は、左右前側の駆動輪FL,FRおよび左右後側の駆動輪RL,RRと、各々が駆動輪FL,FR,RL,RRの1つに対して独立に設けられる複数のモータMと、複数のモータMを制御するECU50と、を備える。ECU50は、1または複数のプロセッサ51と、プロセッサ51によって実行される命令を記憶する1または複数の記憶媒体52と、を含む。プロセッサ51は、ドライバから所定の操作を受け付けると、命令にしたがって、前進時に、より高い負荷を受ける後側の駆動輪RL,RRと、より低い負荷を受ける前側の駆動輪FL,FRと、を検出することと、後退時に、より高い負荷を受ける前側の駆動輪FL,FRと、より低い負荷を受ける後側の駆動輪RL,RRと、を検出することと、前進および後退を交互に切り替えることであって、前進することは、前進時により低い負荷を受ける前側の駆動輪FL,FRにゼロスリップトルクを与え、かつ、前進時により高い負荷を受ける後側の駆動輪RL,RRにスリップを引き起こす高グリップトルクを与えることを含み、後退することは、後退時により低い負荷を受ける後側の駆動輪RL,RRにゼロスリップトルクを与え、かつ、後退時により高い負荷を受ける前側の駆動輪FL,FRにスリップを引き起こす高グリップトルクを与えることを含む、ことと、を実行するように構成される。このような構成によれば、前進および後退を交互に切り替えることによって、車両100が振り子のように揺動し、車速が増幅される。したがって、車両100は、低摩擦路においてスタックした際に自動で移動することができる。
【0076】
また、車両100では、前進から後退への切り替えは、前進が止まったときに実行され、後退から前進への切り替えは、後退が止まったときに実行される。このような構成によれば、車速が最大限に増幅され得る。
【0077】
以上、添付図面を参照しながら実施形態について説明したが、本発明はかかる実施形態に限定されない。当業者であれば、特許請求の範囲に記載された範疇において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。また、上記実施形態のECU50のステップは、上記の順番で実施されなくてもよく、技術的に矛盾が生じない限りにおいて、異なる順番で実施されてもよい。
【0078】
例えば、図6の例では、車両100の進行方向は前方である。他の例では、車両100の進行方向は後方であってもよい。この場合、ステップS100~S106では、前方への移動に代えて、後方への移動が実行され、ステップS108~114では、後方への移動に代えて、前方への移動が実行される。
【0079】
また、図7および図8において、前進および後退の間の切り替えを所定の回数だけ実行しても車両100が移動しない場合には、プロセッサ51は、動作を終了してもよい。
【符号の説明】
【0080】
50 制御装置
51 プロセッサ
52 記憶媒体
100 車両
FL 駆動輪(左前輪)
FR 駆動輪(右前輪)
M モータ
RL 駆動輪(左後輪)
RR 駆動輪(右後輪)
図1
図2
図3
図4
図5
図6
図7
図8