(57)【要約】【課題】  必要な駆動力を確保しつつ安定な走行のための制御を、路面状態の変化に応じて迅速に実現する。【解決手段】  モータによって駆動される駆動輪を有する移動体の移動速度ｖ、移動体の駆動輪の回転速度ω、及び、モータが発生する実トルク値Ｔmを取得する。引き続き、補正値算出部９９０が、粘着モデルを規範モデルとして、各時点の回転速度ω及び実トルク値Ｔmに基づいて、比例系フィードバック値ＴPを算出する。また、積分部７４１が、スリップ率及び摩擦係数の推定結果に基づいて、比例系フィードバック値ＴPに対する積分補償値Ｔiを算出する。この積分補償値Ｔiの算出に際して、積分部７４１は、スリップ率の推定結果に基づいて、積分演算を行うか否かを決定する。そして、トルク指令値Ｔc、及び、比例系フィードバック値ＴPと積分補償値Ｔiとの加算結果に基づいて、トルク設定値Ｔsが算出される。【選択図】  図８
2014204478.tif 000002
【特許請求の範囲】
【請求項１】
モータによって駆動される駆動輪を有する移動体のトラクション制御装置であって、
前記移動体の移動速度を取得する移動速度取得部と；
前記駆動輪の回転速度を取得する回転速度取得部と；
前記モータが発生する実トルク値を取得する実トルク値取得部と；
前記回転速度と前記実トルク値とに基づいて、前記モータの動作にフィードバックをかける補正値を算出する補正値算出部と；
前記補正値を積分した積分信号を生成する積分部と；
前記回転速度と、前記移動速度又は前記実トルク値とに基づき、前記積分信号を前記補正値に加算する加算部と；
を備えることを特徴とするトラクション制御装置。
【請求項２】
前記加算部による加算結果をトルク指令値から減算してトルク設定値を算出するトルク設定値算出部を更に備え、
前記補正値算出部は、前記回転速度を微分した値に前記駆動輪が粘着している状態を表す特性値を乗じた値から、前記実トルク値を減算した値に基づいて、前記補正値を算出する、
ことを特徴とする請求項１に記載のトラクション制御装置。
【請求項３】
前記積分部は、
路面摩擦係数及びスリップ率の少なくとも一方を推定する推定部と；
前記補正値を積分する積分演算部と；
前記推定部による推定結果に基づいて、前記積分演算部による積分動作、又は、前記積分演算部からの前記積分信号の出力動作の実施を有効とすべきか否か判断する判断部と；
を備えることを特徴とする請求項２に記載のトラクション制御装置。
【請求項４】
前記判断部は、前記推定されたスリップ率が所定値以上になったときに前記実施を有効とすべきと判断する、ことを特徴とする請求項３に記載のトラクション制御装置。
【請求項５】
前記判断部は、前記推定された路面摩擦係数が所定値以下になったときに前記実施を有効とすべきと判断する、ことを特徴とする請求項３に記載のトラクション制御装置。
【請求項６】
前記判断部においては、前記実施を有効としている状態において前記実施を無効とすべきと判断される際の前記推定部による第１推定値と、前記実施を無効としている状態において前記実施を有効とすべきと判断する際の前記推定部による第２推定値とが異なる、ことを特徴とする請求項４又は５に記載のトラクション制御装置。
【請求項７】
前記駆動輪の数は複数であり、
前記複数の駆動輪のそれぞれについて算出されたトルク設定値の最小値を、前記複数の駆動輪の全てへの共通トルク設定値とする共通トルク値算出部を更に備える、
ことを特徴とする請求項２〜６のいずれか一項に記載のトラクション制御装置。
【請求項８】
モータによって駆動される駆動輪を有する移動体のトラクション制御装置において使用されるトラクション制御方法であって、
前記移動体の移動速度、前記駆動輪の回転速度及び前記モータが発生する実トルク値を取得する取得工程と；
前記回転速度と前記実トルク値とに基づいて、前記モータの動作にフィードバックをかける補正値を算出する補正値算出工程と；
前記補正値を積分した積分信号を生成する積分工程と；
前記回転速度と、前記移動速度又は前記実トルク値とに基づき、前記積分信号を前記補正値に加算する加算工程と；
を備えることを特徴とするトラクション制御方法。
【請求項９】
モータによって駆動される駆動輪を有する移動体のトラクション制御装置が有するコンピュータに、請求項８に記載のトラクション制御方法を実行させる、ことを特徴とするトラクション制御プログラム。
【請求項１０】
モータによって駆動される駆動輪を有する移動体のトラクション制御装置が有するコンピュータにより読み取り可能に、請求項９に記載のトラクション制御プログラムが記録されている、ことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トラクション制御装置、トラクション制御方法及びトラクション制御プログラム、並びに、当該トラクション制御プログラムが記録された記録媒体に関する。
【背景技術】
【０００２】
近年、環境負荷等の観点から、アクセルペダルやブレーキペダルの踏み込み量に応じた駆動及び制動を電気モータによって行う電気自動車が注目されている。ここで、電気モータは電気部品であるため、電気自動車における駆動及び制動の応答性及び線形性は、駆動及び制動をエンジン及び油圧機構によって行う内燃機関自動車と比べて、格段に優れている。
【０００３】
すなわち、電気モータの応答速度は、油圧機構の１０倍程度速く、エンジンの１００倍程度速い。また、モータが発生する実トルク値Ｔmとモータ電流値（以下、「駆動電流値」ともいう）Ｉmとの関係は、次の（１）式で表される。
Ｔm＝Ｋt・Ｉm            …（１）
【０００４】
ここで、トルク定数Ｋtは、事前測定により求めることができる。なお、トルク定数Ｋtは、モータのタイプによって、固定値であったり、モータ電流値Ｉmや回転速度に応じて変化するものであったりする。したがって、電気モータの作動中にモータ電流値Ｉmを電流センサ等で検出することにより、実トルク値Ｔmを正確に把握できる。また、モータ電流値Ｉmを制御することにより、実トルク値Ｔmに対する制御を容易に行うことができる。このため、エンジン制御やブレーキ油圧制御と比べて、安全性及び快適性が高いトラクション制御を電気自動車で実現するための様々な技術が提案されている。
【０００５】
こうした提案技術の第１の例として、タイヤと路面とが完全に粘着している状態、すなわち、スリップが全く生じていない状態の車両モデル（以下、「粘着モデル」という）を規範モデルとして、実車両の走行状態が規範モデルに追従するように制御を行う技術がある（非特許文献１，２参照：以下、「従来例１」と呼ぶ）。この従来例１の技術では、実車両の駆動輪の回転速度から逆算した逆算トルク値と、実トルク値との差分を算出する。こうして算出された差分を、ローパスフィルタ（ＬＰＦ）を通した後に、フィードバックゲイン処理を施してフィードバックトルク値を算出する。そして、トルク指令値からフィードバックトルク値を差し引いた補正値をトルク設定値とすることにより、スリップ率の増加を抑制するようになっている。
【０００６】
また、提案技術の第２の例として、規範モデルを用いるものではないが、走行中のスリップ率及び駆動輪の回転加速度（以下、「車輪加速度」ともいう）を推定し、推定されたスリップ率及び回転加速度に基づいて、トルク目標値を切り替える技術がある（特許文献１参照：以下、「従来例２」と呼ぶ）。この従来例２の技術では、現時点の駆動トルク値又は制動トルク値を漸増させた第１トルク値、当該第１トルク値から所定値を差し引いた第２トルク値、及び、車輪加速度と車体加速度とを用いて検出された第３トルク値のいずれかを、新たな駆動トルク値又は制動トルク値とするようになっている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−１７８２１６号公報
【非特許文献】
【０００８】
【非特許文献１】堀洋一  「電気と制御で走る近未来車両に関する研究」    ＦＥＤレビュー vol.3 No.4 2003, 12 February 2004  （http://www.hori.k.u-tokyo.ac.jp/ja/staff/hori/paperPDF/FEDreview.pdf）
【非特許文献２】斎藤他  「小型電気自動車のヨーモーメント安定化制御法」    電気学会  産業計測制御研究会  2002年３月11日  p.83〜p.88  （http://pelab.nagaokaut.ac.jp/omomlab/paper/2002/IIC-02-29.pdf）
【発明の概要】
【発明が解決しようとする課題】
【０００９】
路面を走行している車両の駆動輪のそれぞれの運動は、一輪モデル（以下、「駆動輪モデル」ともいう）に準じて表すことができる。図１には、当該駆動輪モデルにおける変数が示されている。図１において、「Ｍ」は移動体の重量であり、「Ｆd」は駆動輪ＷＨの駆動力であり、「Ｆdr」は走行抵抗である。また、「Ｔm」はモータが発生し、駆動輪ＷＨに付与される実トルク値であり、「ｖ」は移動体ＭＶの移動速度（以下、「車体速度」、又は、「車速」ともいう）であり、「ω」は駆動輪ＷＨの回転速度である。また、「Ｎ」は、駆動輪ＷＨに作用する垂直抗力であり、「ｒ」は駆動輪ＷＨの半径である。
【００１０】
図１に示される駆動輪モデルにおいては、移動体ＭＶの運動方程式は、次の（２）式で与えられる。
Ｍ・(ｄｖ／ｄｔ)＝Ｆd−Ｆdr              …（２）
【００１１】
また、駆動輪ＷＨの運動方程式は、駆動輪ＷＨの慣性モーメントを「Ｊw」、駆動トルクを「Ｔd」として、次の（３）式で与えられる。
Ｊw・(ｄω／ｄｔ)＝Ｔm−ｒ・Ｆd＝Ｋt・Ｉm−Ｔd    …（３）
【００１２】
駆動力Ｆdと垂直抗力Ｎとの関係は、駆動輪ＷＨにとっての路面摩擦係数（以下、単に「摩擦係数」ともいう）をμとして、次の（４）式で表される。
μ＝Ｆd／Ｎ                              …（４）
【００１３】
また、スリップ率λは、上述した駆動輪モデルにおいては、次の（５）式により表される。
λ＝(ｒ・ω−ｖ)／Ｍａｘ(ｒ・ω，ｖ)         …（５）
【００１４】
ここで、Ｍａｘ(ｒ・ω，ｖ)は、（ｒ・ω）とｖとの数値の大きな方を示す。駆動時には、（ｒ・ω）がｖよりも大きいため、Ｍａｘ(ｒ・ω，ｖ)＝ｒ・ωである。一方、制動時には、ｖが（ｒ・ω）よりも大きいため、Ｍａｘ(ｒ・ω，ｖ)＝ｖである。
【００１５】
上記の駆動輪モデルにおいて、摩擦係数μとスリップ率λとの関係（すなわち、μ―λ特性）は、一般に、駆動時においては図２に示される通りである。なお、図２においては、乾燥路面におけるμ―λ特性が実線にて示され、湿潤路面におけるμ―λ特性が一点鎖線にて示されるとともに、凍結路面におけるμ―λ特性が二点鎖線にて示されている。
【００１６】
なお、図２に示される駆動時のスリップ率の増加に伴う摩擦係数μの変化において、摩擦係数μが最大となるスリップ率以下である状態が、移動体ＭＶが安定して走行できる状態（以下、「安定状態」という）となっている。一方、摩擦係数μが最大となるスリップ率よりも大きな状態が、駆動輪ＷＨの空転やロック現象が発生する状態（以下、「不安定状態」という）となっている。以下、安定状態となる領域を「安定領域」と呼び、不安定状態となる領域を「不安定領域」と呼ぶ。
【００１７】
こうしたμ―λ特性を有している路面において、ある車両が、乾燥路面→凍結路面→乾燥路面という走行を行う場合を考える。こうした場合に、アクセルペダルの踏み込み量に応じたトルク指令値Ｔcをそのままトルク設定値Ｔsとしてモータ駆動系に入力した場合のシミュレーションの結果が、図３，４に示されている。これらの図３及び図４には、車体速度ｖ、車輪速度（ｒ・ω）、スリップ率λ及び摩擦係数μのシミュレーション結果が示されている。
【００１８】
なお、当該シミュレーションの条件としては、４輪駆動の電気自動車であって、車重：１８００［ｋｇ］、駆動輪ＷＨの慣性モーメント：１．２［ｋｇ・ｍ2］及びモータのトルク応答：５［ｍｓ］（インホイールモータの場合を想定）という条件を採用した。また、時刻ｔ1において乾燥路面から凍結路面に変化し、時刻ｔ2（＞ｔ1）において凍結路面から乾燥路面に変化することを想定して、シミュレーションを行った。
【００１９】
この図３，４において示されるように、トルク指令値ＴCをそのままトルク設定値ＴSとする場合には、トルク設定値Ｔs（＝Ｔc）が大きくなるにつれ、凍結路面上でのスリップ率λが大きくなっていく。そして、ある値を超えたトルク設定値Ｔs（＝Ｔs）となると、スリップ率λが増大して０．２以上となり、上述した図２で示した不安定領域に入ってしまう。これは、凍結路面では摩擦係数μが小さいためにグリップ力も小さく、そのグリップ力を超えてしまう程のトルク設定値Ｔsとなると、不安定領域に入ってしまうことを示している。
【００２０】
こうした不安定領域に入ってしまう事態の発生を回避するために、従来例１の技術が採用するフィードバック制御系９８０が、図５に示されている。この図５に示されるように、フィードバック制御系９８０は、トルク指令値生成部８１０及びモータ駆動系９００と接続されている。
【００２１】
上記のトルク指令値生成部８１０は、不図示のアクセル開度センサ、ブレーキ量センサ、ステアリング角度センサ等によるトルク指令値Ｔcの生成に利用される検出結果に基づいて、トルク指令値Ｔcを生成する。こうして生成されたトルク指令値Ｔcが、フィードバック制御系９８０へ送られる。
【００２２】
上記のモータ駆動系９００は、駆動制御部９１０と、インバータ９２０と、モータ９３０とを備えている。また、モータ駆動系９００は、回転位置検出部９４０と、電流検出部９５０を備えている。
【００２３】
上記の駆動制御部９１０は、フィードバック制御系９８０から送られたトルク設定値Ｔsを受ける。そして、駆動制御部９１０は、トルク設定値Ｔs、回転位置検出部９４０により検出された回転位置θ、及び、電流検出部９５０により検出された検出電流値ＩDに基づいて、駆動電圧を算出する。例えば、モータ９３０が３相モータの場合には、駆動制御部９１０は、駆動電圧として、３相電圧を算出する。こうして算出された駆動電圧は、インバータ９２０へ送られる。
【００２４】
上記のインバータ９２０は、駆動制御部９１０から送られた駆動電圧を受ける。そして、インバータ９２０は、駆動電圧に対応する電流をモータ９３０に供給する。この結果、モータ９３０は、トルク設定値Ｔsに基づいてモータ回転運動を行い、駆動輪を回転させる。
【００２５】
上記の回転位置検出部９４０は、レゾルバ又はエンコーダを備えて構成されている。この回転位置検出部９４０は、モータ９３０の回転位置θを検出する。こうして検出された回転位置θが駆動制御部９１０及び電流検出部９５０へ送られる。なお、回転位置θを時間微分して得られた回転速度ωが、フィードバック制御系９８０へ送られる。
【００２６】
上記の電流検出部９５０は、モータ９３０を流れる電流値を検出する。例えば、モータ９３０が３相モータの場合には、電流検出部９５０は、モータ９３０を流れる３相電流のうちの少なくとも２種類の電流値を検出する。こうして検出された電流値ＩDから得られたモータ電流値Ｉmが、フィードバック制御系９８０へ送られる。なお、モータ電流値Ｉmは検出電流値ＩDの大きさを示しており、Ｉm＝｜ＩD｜である。
【００２７】
＜フィードバック制御系９８０の構成＞
図５に示されるように、フィードバック制御系９８０は、減算部９８１と、乗算部９８３と、補正値算出部９９０とを備えている。ここで、減算部９８１は、トルク指令値生成部８１０から送られたトルク指令値Ｔc、及び、補正値算出部９９０から送られた比例系フィードバック値Ｔpを受ける。そして、減算部９８１は、次の（６）式によりトルク設定値Ｔsを算出し、算出されたトルク設定値Ｔsをモータ駆動系９００へ送る。
Ｔs＝Ｔc−Ｔp                                …（６）
【００２８】
上記の乗算部９８３は、モータ電流値Ｉmを受ける。そして、乗算部９８３は、上述した（１）式を利用して、実トルク値Ｔmを算出する。こうして算出された実トルク値Ｔmは、補正値算出部９９０へ送られる。
【００２９】
上記の補正値算出部９９０は、微分部９９１と、粘着モデル部９９２と、減算部９９３とを備えている。また、補正値算出部９９０は、ローパスフィルタ（ＬＰＦ）部９９４と、乗算部９９５とを備えている。
【００３０】
上記の微分部９９１は、回転速度ωを受ける。そして、微分部９９１は、回転速度ωの時間微分値（ｄω／ｄｔ）を算出する。こうして算出された時間微分値（ｄω／ｄｔ）は、粘着モデル部９９２へ送られる。
【００３１】
上記の粘着モデル部９９２は、「Ｐn-1＝Jw＋Ｍ・ｒ２」として表される伝達関数として示すことができる。この粘着モデル部９９２は、微分部９９１から送られた回転速度ωの時間微分値（ｄω／ｄｔ）を受ける。そして、粘着モデル部９９２は、駆動輪にスリップが生じない仮想的なモデルである粘着モデルに従って、回転速度ωの時間微分値（ｄω／ｄｔ）に対応するトルク値Ｔnを、次の（７）式により算出し、算出されたトルク値Ｔnを減算部９９３へ送る。
Ｔn＝Ｐn-1・（ｄω／ｄｔ）                  …（７）
なお、トルク値Ｔnは、回転速度ωの時間微分値（ｄω／ｄｔ）から粘着モデルを用いて逆算されるため、以下においては、トルク値Ｔnを、「逆算トルク値Ｔn」とも記す。
【００３２】
上記の減算部９９３は、粘着モデル部９９２から送られた逆算トルク値Ｔn、及び、乗算部９８３から送られた実トルク値Ｔmを受ける。そして、減算部９９３は、次の（８）式により差分トルク値Ｔhを算出し、算出された差分トルク値ＴhをＬＰＦ部９９４へ送る。
Ｔh＝Ｔn−Ｔm                                …（８）
【００３３】
上記のＬＰＦ部９９４は、減算部９９３から送られた差分トルク値Ｔhを受ける。そして、ＬＰＦ部９９４は、差分トルク値Ｔhに対してフィルタリング処理を施してフィルタ後トルク値Ｔafを算出し、算出されたフィルタ後トルク値Ｔafを乗算部９９５へ送る。
【００３４】
上記の乗算部９９５は、ＬＰＦ部９９４から送られたフィルタ後トルク値Ｔafを受ける。そして、乗算部９９５は、フィードバックゲイン値ｋpを用い、次の（９）式により比例系フィードバック値Ｔpを算出し、算出された比例系フィードバック値Ｔpを減算部９８１へ送る。
Ｔp＝ｋp・Ｔaf                                …（９）
【００３５】
図５の示される構成の従来のモデル追従制御において、フィードバックゲイン値ｋpを変化させた場合のシミュレーションの結果が、図６に示されている。なお、当該シミュレーションの条件は、上述したフィードバック制御を行わない場合のシミュレーションと同様とするとともに、トルク指令値Ｔcを「７００［Ｎｍ］」とした。
【００３６】
図６からわかるように、フィードバックゲイン値ｋpを大きくするほどスリップ率λが抑制される。凍結路面でのタイヤの空転を極力抑えたいため、できるだけフィードバックゲイン値ｋpを大きくしてスリップ率λを小さくしたい。しかしながら、フィードバックゲイン値ｋpを大きくすると、乾燥路面では摩擦係数μの値に余裕があるにもかかわらずトルク設定値を低下させてしまっている。不必要なトルク設定値の低下は、駆動トルクを勝手に絞ることになり、ドライバの意図する加速ができないことになる。
【００３７】
例えば、乾燥路面を走行中において、加速が必要な場合、上り坂を走行する場合、及び、高速で走行する場合等には、大きな駆動トルクが必要となる。そのようなときは車両が持っている駆動能力をできるだけ発揮できるように、駆動トルクを必要以上に小さくすることは避けたい。
【００３８】
一方、フィードバックゲイン値ｋpを小さくすると、乾燥路面での不必要なトルク設定値の低下は防止できるが、逆に凍結路面でのスリップ抑制が不十分となってしまう。このため、従来のモデル追従制御では、凍結路面でのスリップ抑制性能と乾燥路面での十分な駆動性能とはトレードオフの関係にあるので、どちらかを犠牲にするか、あるいは、どちらも中途半端な性能にするという方法が採用されていた。
【００３９】
このため、モデル追従制御の利点を活かしつつ、路面状態が変化した場合に、迅速に、適切なトルク設定値ＴSの制限をかけることができる技術が望まれている。かかる要請に応えることが、本発明が解決すべき課題の一つとして挙げられる。
【００４０】
本発明は、上記の事情を鑑みてなされたものであり、必要な駆動力を確保しつつ安定な走行のための制御を、路面状態の変化に応じて迅速に実現することができる新たなトラクション制御装置及びトラクション制御方法を提供することを目的とする。
【課題を解決するための手段】
【００４１】
請求項１に記載の発明は、モータによって駆動される駆動輪を有する移動体のトラクション制御装置であって、前記移動体の移動速度を取得する移動速度取得部と；前記駆動輪の回転速度を取得する回転速度取得部と；前記モータが発生する実トルク値を取得する実トルク値取得部と；前記回転速度と前記実トルク値とに基づいて、前記モータの動作にフィードバックをかける補正値を算出する補正値算出部と；前記補正値を積分した積分信号を生成する積分部と；前記回転速度と、前記移動速度又は前記実トルク値とに基づき、前記積分信号を前記補正値に加算する加算部と；を備えることを特徴とするトラクション制御装置である。
【００４２】
請求項８に記載の発明は、モータによって駆動される駆動輪を有する移動体のトラクション制御装置において使用されるトラクション制御方法であって、前記移動体の移動速度、前記駆動輪の回転速度及び前記モータが発生する実トルク値を取得する取得工程と；前記回転速度と前記実トルク値とに基づいて、前記モータの動作にフィードバックをかける補正値を算出する補正値算出工程と；前記補正値を積分した積分信号を生成する積分工程と；前記回転速度と、前記移動速度又は前記実トルク値とに基づき、前記積分信号を前記補正値に加算する加算工程と；を備えることを特徴とするトラクション制御方法である。
【００４３】
請求項９に記載の発明は、モータによって駆動される駆動輪を有する移動体のトラクション制御装置が有するコンピュータに、請求項８に記載のトラクション制御方法を実行させる、ことを特徴とするトラクション制御プログラムである。
【００４４】
請求項１０に記載の発明は、モータによって駆動される駆動輪を有する移動体のトラクション制御装置が有するコンピュータにより読み取り可能に、請求項９に記載のトラクション制御プログラムが記録されている、ことを特徴とする記録媒体である。
【図面の簡単な説明】
【００４５】
【図１】駆動輪モデルにおける変数を示す図である。
【図２】駆動時のスリップ率と摩擦係数との関係を示す図である。
【図３】トラクション制御を行わない場合のシミュレーション結果を示す図（その１）である。
【図４】トラクション制御を行わない場合のシミュレーション結果を示す図（その２）である。
【図５】従来のフィードバック制御系の構成を説明するためのブロック図である。
【図６】従来のフィードバック制御系において、フィードバックゲイン値を変化させた場合のシミュレーション結果を示す図である。
【図７】本発明の第１実施形態に係るトラクション制御装置の構成を概略的に示すブロック図である。
【図８】図７の制御部の構成を示すブロック図である。
【図９】図８の積分部の構成を示すブロック図である。
【図１０】従来のモデル追従制御系におけるスリップ率とゲインとの関係を説明するための図である。
【図１１】図７のトラクション制御装置によるトラクション制御のシミュレーション結果を示す図である。
【図１２】フィードバックゲイン値と積分ゲイン値ｋiとの組み合わせが不適切である例のシミュレーション結果を示す図（その１）である。
【図１３】フィードバックゲイン値と積分ゲイン値ｋiとの組み合わせが不適切である例のシミュレーション結果を示す図（その２）である。
【図１４】図７のトラクション制御装置によるトラクション制御の安定性を説明するためのＢｏｄｅ線図である。
【図１５】本発明の第２実施形態に係るトラクション制御装置の構成を概略的に示すブロック図である。
【図１６】図１５の制御部の構成を示すブロック図である。
【図１７】本発明の一実施例に係るトラクション制御装置の構成を概略的に示すブロック図である。
【図１８】図１７のモータ駆動系における駆動制御部及び電流検出部の構成を説明するための図である。
【図１９】図１７のトラクション制御装置によるトラクション制御処理を説明するためのフローチャートである。
【図２０】図１９における駆動輪のそれぞれの積分補償値の算出処理を説明するためのフローチャートである。
【発明を実施するための形態】
【００４６】
以下、本発明の一実施形態を、添付図面を参照して説明する。なお、以下の説明及び図面においては、上述した内容を含めて、同一又は同等の要素には同一の符号を付し、重複する説明を省略する。
【００４７】
［第１実施形態］
まず、本発明の第１実施形態を、図７〜図１４を参照して説明する。
【００４８】
＜構成＞
図７には、一実施形態に係るトラクション制御装置７００Ａの構成が、ブロック図にて示されている。
【００４９】
図７に示されるように、トラクション制御装置７００Ａは、移動体ＭＶ内に配置される。この移動体ＭＶには、トラクション制御装置７００Ａに加えて、トルク指令値生成部８１０、加速度検出部８２０及びモータ駆動系９００が配置され、トラクション制御装置７００Ａに接続される。
【００５０】
トラクション制御装置７００Ａは、移動速度取得部７１０と、回転速度取得部７２０と、実トルク値取得部７３０と、制御部７４０Ａとを備えている。
【００５１】
上記の移動速度取得部７１０は、加速度検出部８２０から送られた加速度αを受ける。そして、移動速度取得部７１０は、加速度αの時間積分を行って、移動速度ｖを取得する。こうして取得された移動速度ｖは、制御部７４０Ａへ送られる。
【００５２】
上記の回転速度取得部７２０は、回転位置検出部９４０から送られた回転位置θを受ける。そして、回転速度取得部７２０は、回転位置θの時間微分を行って、回転速度ωを取得する。こうして取得された回転速度ωは、制御部７４０Ａへ送られる。
【００５３】
上記の実トルク値取得部７３０は、電流検出部９５０から送られた検出電流値ＩDを受ける。引き続き、実トルク値取得部７３０は、検出電流値ＩDに基づいてモータ電流値Ｉmを算出する。なお、モータ電流値Ｉmは、上述したように、検出電流値ＩDの大きさを示しており、Ｉm＝｜ＩD｜である．
【００５４】
次に、実トルク値取得部７３０は、上述した（１）式を利用して実トルク値Ｔmを算出することにより、実トルク値Ｔmを取得する。こうして取得された実トルク値Ｔmは、制御部７４０Ａへ送られる。
【００５５】
上記の制御部７４０Ａは、トルク指令値生成部８１０から送られたトルク指令値Ｔcを受ける。そして、制御部７４０Ａは、移動速度ｖ、回転速度ω及び実トルク値Ｔmに基づいて、トルク設定値Ｔsを算出する。こうして算出されたトルク設定値Ｔsは、モータ駆動系９００へ送られる。
【００５６】
かかる機能を有する制御部７４０Ａは、図８に示されるように、上述した補正値算出部９９０（図５参照）と、積分部７４１とを備えている。また、制御部７４０Ａは、加算部７４２と、トルク設定値算出部７４３とを備えている。
【００５７】
なお、補正値算出部９９０は、比例系フィードバック値Ｔpを積分部７４１及び加算部７４２へ送るようになっている。
【００５８】
また、第１実施形態では、補正値算出部９９０において採用されるフィードバックゲイン値ｋpは、乾燥路面の不必要なトルク低下をできるだけ少なくしつつ、凍結路面に入った瞬間の速応性を確保するとの観点から、実験、シミュレーション、経験等に基づいて、予め定められる。
【００５９】
上記の積分部７４１は、移動速度取得部７１０から送られた移動速度ｖ、回転速度取得部７２０から送られた回転速度ω、補正値算出部９９０から送られた比例系フィードバック値Ｔp、及び、実トルク値取得部７３０から送られた実トルク値Ｔmを受ける。そして、積分部７４１は、移動速度ｖ、回転速度ω、比例系フィードバック値Ｔp及び実トルク値Ｔmに基づいて、積分補償値Ｔiを算出する。こうして算出された積分補償値Ｔiは、加算部７４２へ送られる。
【００６０】
なお、積分部７４１の構成の詳細については、後述する。
【００６１】
上記の加算部７４２は、補正値算出部９９０から送られた比例系フィードバック値Ｔp、及び、積分部７４１から送られた積分補償値Ｔiを受ける。そして、加算部７４２は、次の（１０）式によりフィードバックトルク値Ｔfを算出し、算出されたフィードバックトルク値Ｔfをトルク設定値算出部７４３へ送る。
Ｔf＝Ｔp＋Ｔi                  …（１０）
【００６２】
上記のトルク設定値算出部７４３は、減算部７５１を備えて構成される。このトルク設定値算出部７４３は、トルク指令値生成部８１０から送られたトルク指令値Ｔc、及び、加算部７４２から送られたフィードバックトルク値Ｔfを受ける。そして、トルク設定値算出部７４３は、次の（１１）式により、トルク設定値Ｔsを算出し、算出されたトルク設定値Ｔsをモータ駆動系９００へ送る。
Ｔs＝Ｔc−Ｔf                  …（１１）
【００６３】
＜積分部７４１の構成＞
次に、上述した積分部７４１の構成について説明する。
【００６４】
積分部７４１は、図９に示されるように、スリップ率推定部７６１と、摩擦係数推定部７６２とを備えている。また、積分部７４１は、積分補償部７６３を備えている。
【００６５】
上記のスリップ推定部７６１は、移動速度取得部７１０から送られた移動速度ｖ、及び、回転速度取得部７２０から送られた回転速度ωを受ける。そして、スリップ推定部７６１は、上述した（５）式により、スリップ率λを算出することにより、スリップ率推定を行う。こうして算出されたスリップ率λは、積分補償部７６３へ送られる。
【００６６】
上記の摩擦係数推定部７６２は、回転速度取得部７２０から送られた回転速度ω、及び、実トルク値取得部７３０から送られた実トルク値Ｔmを受ける。そして、摩擦係数推定部７６２は、回転速度ω及び実トルク値Ｔmに基づいて、摩擦係数μを算出することにより、摩擦係数推定を行う。
【００６７】
かかる摩擦係数推定に際して、摩擦係数推定部７６２は、まず、回転速度ω及び実トルク値Ｔmに基づいて、上述した（３）式を変形して得られる次の（１２）式により駆動トルクＴdを算出する。
Ｔd＝Ｔm−Ｊw・(ｄω／ｄｔ)          …（１２）
【００６８】
引き続き、摩擦係数推定部７６２は、算出された駆動トルクＴd及び駆動輪の半径ｒに基づいて、次の（１３）式により、駆動力Ｆdを算出する。
Ｆd＝Ｔd／ｒ                        …（１３）
【００６９】
次に、摩擦係数推定部７６２は、算出された駆動力Ｆdに基づいて、上述した（４）式により算出された値に対して、ローパスフィルタ（ＬＰＦ）によるフィルタリング処理を施して、摩擦係数μを算出する。こうして算出された摩擦係数μは、積分補償部７６３へ送られる。
【００７０】
なお、第１実施形態では、（４）式における垂直抗力Ｎとして、移動体ＭＶの重量Ｍを駆動輪の数で除算した値を採用するようにしている。
【００７１】
上記の積分補償部７６３は、補正値算出部９９０から送られた比例系フィードバック値Ｔp、スリップ率推定部７６１から送られたスリップ率λ、及び、摩擦係数推定部７６２から送られた摩擦係数μを受ける。そして、積分補償部７６３は、比例系フィードバック値Ｔp、スリップ率λ及び摩擦係数μに基づいて、積分補償値Ｔiを算出する。
【００７２】
かかる機能を有する積分補償部７６３は、判断部７６６と、積分演算部７６７とを備えている。また、積分補償部７６３は、積分ゲイン算出部７６８と、乗算部７６９とを備えている。
【００７３】
上記の判断部７６６は、スリップ率推定部７６１から送られたスリップ率λを受ける。そして、判断部７６６は、スリップ率λの値に基づいて、「ＯＮ」又は「ＯＦＦ」の２値情報を担う積分イネーブルＥＮを生成する。こうして生成された積分イネーブルＥＮは、積分演算部７６７へ送られる。
【００７４】
なお、第１実施形態では、判断部７６６は、積分イネーブルＥＮが「ＯＦＦ」である状態では、スリップ率λが第１所定値（λTHH）より大きくなったときに、「ＯＮ」とする。また、判断部７６６は、積分イネーブルＥＮが「ＯＮ」である状態では、スリップ率λが第２所定値（λTHL＜λTHH）より小さくなったときに、「ＯＦＦ」とする。すなわち、第１実施形態では、判断部７６６は、スリップ率λの変化に対してヒステリシス特性を有するように、積分イネーブルＥＮの値を変化させるようになっている。
【００７５】
上記の積分演算部７６７は、補正値算出部９９０から送られた比例系フィードバック値Ｔpを受ける。そして、積分演算部７６７は、積分イネーブルＥＮが「ＯＮ」である期間にわたって、比例系フィードバック値Ｔpの積分演算を行う。また、積分イネーブルＥＮが「ＯＦＦ」である期間には、比例系フィードバック値Ｔpの積分演算を中止する。積分演算部７６７による演算結果ＴIは、乗算部７６９へ送られる。
【００７６】
なお、第１実施形態では、積分イネーブルＥＮが「ＯＮ」から「ＯＦＦ」に変化すると、積分値を「０」にクリアするようになっている。
【００７７】
上記の積分ゲイン算出部７６８は、スリップ率推定部７６１から送られたスリップ率λ、及び、摩擦係数推定部７６２から送られた摩擦係数μを受ける。そして、積分ゲイン算出部７６８は、スリップ率λ及び摩擦係数μに基づいて、次の（１４）式により積分ゲイン値ｋiを算出し、算出された積分ゲイン値ｋiを乗算部７６９へ送る。
ｋi＝ｄ・（λ／μ）＋ｅ              …（１４）
【００７８】
なお、定数ｄ，ｅは、補正値算出部９９０により算出される比例系フィードバックトルク値Ｔpのみを利用する比例系フィードバックで残ってしまう残留偏差を少なくするとの観点から、実験、シミュレーション等に基づいて、予め定められる。
【００７９】
上記の乗算部７６９は、積分演算部７６７から送られた演算結果ＴI、及び、積分ゲイン算出部７６８から送られた積分ゲイン値ｋiを受ける。そして、乗算部７６９は、演算結果ＴI及び積分ゲイン値ｋiに基づいて、次の（１５）式により積分補償値Ｔiを算出し、算出された積分補償値Ｔiを加算部７４２へ送る。
Ｔi＝ｋi・ＴI                        …（１５）
【００８０】
＜第１実施形態により実現される制御系について＞
ここで、第１実施形態のトラクション制御装置７００Ａにより実現される制御系について説明する。
【００８１】
《従来の制御系》
上述した図５に示される従来の制御系では、移動体ＭＶの駆動輪が粘着モデルの動作に近づくようにトルク設定値Ｔsが制御されるため、スリップ率λの増加が抑えられる。ここで、モータにより駆動される車両の伝達関数Ｐ（ｓ）及び粘着モデルの伝達関数Ｐn（ｓ）は、次の（１６），（１７）式により表される。
【００８２】
【数１】
2014204478.tif 000003
【００８３】
【数２】
2014204478.tif 000004
【００８４】
したがって、従来の制御系におけるトルク指令値Ｔcからフィードバックトルク値Ｔfまでの一巡伝達関数Ｇoは、次の（１８）式で与えられる。
【００８５】
【数３】
2014204478.tif 000005
【００８６】
ここで、値Ｌは無駄時間であり、値τ1は、トルク設定値Ｔsから実トルク値Ｔmまでのトルク応答時間を意味する時定数である。
【００８７】
（１８）式から、スリップ率λが小さいとゲインが小さくなり、スリップ率λが大きいとゲインが大きくなることがわかる。このため、滑っている状態が強い、すなわち、スリップ率λが大きいほど、フィードバックトルク値Ｔfが大きくなり、トルク設定値Ｔsを低下させる働きが強くなる。
【００８８】
（１８）式中のスリップ率λが関係している項を「Ｇλ」として、スリップ率λが変化した場合のＧλ値の変化を、図１０に示す。図１０（Ａ）から、スリップ率λが大きいほど、Ｇλ値が大きくなることがわかる。ここで、スリップ率λが「０．８」以上となると、Ｇλ値が大きく増大し、フィードバック量を多くすることができる。しかしながら、スリップ率λが「０．８」以下の範囲では、Ｇλ値の変化度合いは小さい。このため、スリップ率λが「０．８」以下の範囲では、スリップを十分に抑制するだけのゲインが得られない場合が起こり得る。
【００８９】
スリップ率λが「０．８」以下の範囲においてスリップを十分に抑制するだけのゲインが得るためには、図１０（Ｂ）に示されるように、フィードバックゲイン値ｋpを大きくして、Ｇλ値をｋp倍して、トータルゲインを大きくすれば良いのだが、当然ながらＧλ値がスリップ率λの全範囲にわたってｋp倍されることになる。このため、安定領域であるスリップ率λが「０．２」以下のトータルゲインも大きくなってしまう。かかる理由によって、上述した図３，４に示されるように、乾燥路面を走行中であり、スリップ率λが小さい場合であってもフィードバック量が多くなり、不必要なトルク低下が生じてしまうのである。
【００９０】
《第１実施形態の制御系》
そこで、第１実施形態では、従来からの比例系フィードバックと、積分補償とを組み合わせてフィードバックトルク値Ｔfを算出する構成としている。具体的には、フィードバックゲイン値ｋpを小さな値としつつ、スリップ率λの値から滑りやすい状態と判断した場合には、積分補償を有効にする（すなわち、積分イネーブルＥＮを「ＯＮ」とする）。また、スリップ率λの値から滑りにくい状態と判断した場合には、積分補償を無効にする（すなわち、積分イネーブルＥＮを「ＯＦＦ」とする）。
【００９１】
かかる積分補償を行うことにより、第１実施形態の制御系では、スリップ率λが大きく、駆動輪が滑っている状態と判断した場合は、フィードバックトルク値Ｔfが大きくなり、十分なスリップ抑制を行うようにしている。また、スリップ率λが小さく、駆動輪が滑っていない状態と判断した場合は、フィードバックトルク値Ｔfが少なくなって不必要なトルク低下を防止するようにしている。
【００９２】
第１実施形態で実現される制御系を採用した場合におけるアンチスリップ性能についてのシミュレーション結果を、図１１に示す。なお、当該シミュレーションの条件は、上述した図３，４の場合と同様である。また、フィードバックゲイン値ｋpを「０．２」とし、ＬＰＦ部９９４の時定数τを「１．０［ｓ］」とし、積分ゲイン値ｋiを「５．０」とした。
【００９３】
図１１に示されるように、乾燥路面におけるトルク設定値Ｔsは、トルク指令値Ｔcが「７００［Ｎｍ］」と大きい値であっても、２０［Ｎｍ］弱の低下で済んでおり、不必要なトルク低下がほとんど生じてない。また、凍結路面に入ると、迅速にトルク設定値Ｔsが低下し、スリップ率λの増加を抑制できている。その後、乾燥路面に戻ると、トルク設定値Ｔsは、トルク指令値Ｔcに近い値に迅速に復帰している。
【００９４】
上述したように、第１実施形態では、上述した従来からの比例系フィードバックにより、瞬時な路面変化に対応が可能となるような速応性を向上するとともに、積分補償により、比例系フィードバックで残ってしまう残留偏差を少なくするようにしている。かかる比例系フィードバックの役割、及び、積分補償の役割のそれぞれを十分に果たせるように、第１実施形態では、フィードバックゲイン値ｋp及び積分ゲイン値ｋiを適宜設定することにより、フィードバックトルク値Ｔfが適切となるようにしている。
【００９５】
図１２（Ａ）は、フィードバックゲイン値ｋp及び積分ゲイン値ｋiが適切に設定された場合のシミュレーション結果である。比例系フィードバック値Ｔpと積分補償値Ｔiを加算したフィードバックトルク値Ｔfは、乾燥路面では小さく、かつ、凍結路面では十分な値が算出されている。したがって、乾燥路面での不必要なトルク低下が発生せず、凍結路面での十分なスリップ抑制が行われる。
【００９６】
図１２（Ｂ）は、積分ゲイン値ｋiが小さいときはどうなるのかを検証するため、極端な例としてフィードバックゲイン値ｋpのみ設定し、積分ゲイン値ｋiを「０」とした場合のシミュレーション結果である。凍結路面でのスリップ率λを抑制するためにフィードバックゲイン値ｋpを大きくする必要があるため、乾燥路面でのフィードバックトルク値Ｔfが無視できない大きさで生成されてしまっている。これが、乾燥路面での不必要なトルク低下を生じさせるのである。
【００９７】
図１３（Ａ）は、逆に、フィードバックゲイン値ｋpを小さくし、積分ゲイン値ｋiを大きくした場合のシミュレーション結果である。比例系フィードバック値Ｔpが小さいため、トータルのフィードバックトルク値Ｔfの立ち上がりが鈍化しているのがわかる。その結果、図１３（Ｂ）に示すように、凍結路面に入った後のスリップ率が一旦大きくなってしまっている。比例系フィードバックは制御の速応性に役立つため、フィードバックゲイン値ｋpを小さくしすぎることは好ましくないことがわかる。
【００９８】
第１実施形態では、積分補償を行うか否かを、積分イネーブルＥＮを「ＯＮ」とするか、「ＯＦＦ」とするかによって制御している。この場合の制御系の安定性について検討を行った。具体的には、トルク指令値Ｔcからフィードバックトルク値Ｔfまでの一巡伝達関数を用いてＢｏｄｅ線図を描き、ゲイン余裕と位相余裕とからシステムの安定性を判断するようにした。
【００９９】
なお、積分補償を行わない場合は、上述した（１８）式が一巡伝達関数となる。また、積分補償を行う場合には、次の（１９）式が一巡伝達関数となる。
【０１００】
【数４】
2014204478.tif 000006
【０１０１】
図１４に、積分補償を行わない場合及び積分補償を行う場合のそれぞれのＢｏｄｅ線図を示す。なお、図１４では、積分補償を行わない場合が２点鎖線により示され、積分補償を行う場合が実線鎖線により示されている。
【０１０２】
図１４に示されるように、積分補償を行わない場合及び積分補償を行う場合で、ゲイン特性及び位相特性のどちらも途中からカーブが重なり、ゲイン特性が「０［ｄＢ］」を横切る周波数と、位相特性が「−１８０［ｄｅｇ］」を横切る周波数が一致している。このため、ゲイン余裕及び位相余裕はほぼ同じであり、それぞれ「１１．４［ｄＢ］」及び「６５．４［ｄｅｇ］」であり十分な安定性を保持している。すなわち、積分補償を加えても、システムの安定性は変化しないことが示されている。また、制御帯域を示すゲイン交差周波数も変わらないため、速応性も変化しないことが示されている。その一方で、低域のゲインは十分大きくなっているため、残留偏差を抑圧する能力が高まり、凍結路面でのスリップ率λの上昇を抑制する性能が確保されることが確認できる。
【０１０３】
＜動作＞
次に、上記のように構成されたトラクション制御装置７００Ａの動作について説明する。
【０１０４】
なお、トルク指令値生成部８１０、加速度検出部８２０及びモータ駆動系９００は、既に動作を開始しており、トルク指令値Ｔc、加速度α、回転位置θ及び検出電流値ＩDが、逐次、トラクション制御装置７００Ａへ送られているものとする（図７参照）。
【０１０５】
トラクション制御装置７００Ａでは、トラクション制御に際して、移動速度取得部７１０が、加速度検出部８２０から送られた加速度αの時間積分を行って、移動速度ｖを取得する。そして、移動速度取得部７１０は、取得された移動速度ｖを制御部７４０Ａへ逐次送る（図７参照）。
【０１０６】
また、回転速度取得部７２０が、回転位置検出部９４０から送られた回転位置θの時間微分を行って、回転速度ωを取得する。そして、回転速度取得部７２０は、取得された回転速度ωを制御部７４０Ａへ逐次送る（図７参照）。
【０１０７】
また、実トルク値取得部７３０が、電流検出部９５０から送られた検出電流値ＩDに基づいて実トルク値Ｔmを算出することにより、実トルク値Ｔmの取得を行う。そして、実トルク値取得部７３０は、取得された実トルク値Ｔmを制御部７４０Ａへ逐次送る（図７参照）。
【０１０８】
制御部７４０Ａでは、補正値算出部９９０における微分部９９１が、回転速度ωの時間微分値（ｄω／ｄｔ）を算出する。そして、粘着モデル部９９２が、当該時間微分値（ｄω／ｄｔ）に基づいて、上述した（７）式により逆算トルク値Ｔnを算出する（図５参照）。
【０１０９】
次に、減算部９９３が、逆算トルク値Ｔn及び実トルク値Ｔmに基づいて、（８）式により差分トルク値Ｔhを算出した後、ＬＰＦ部９９４が、差分トルク値Ｔhに対してフィルタリング処理を施してフィルタ後トルク値Ｔafを算出する。引き続き、乗算部９９５が、フィードバックゲイン値ｋpを用い、上述した（９）式により比例系フィードバック値Ｔpを算出する。そして、乗算部９９５が、算出された比例系フィードバック値Ｔpを、積分部７４１及び加算部７４２へ送る（図５，８参照）。
【０１１０】
なお、補正値算出部９９０は、上述のようにして算出された実トルク値Ｔmを、積分部７４１へ送る（図８参照）。
【０１１１】
かかる補正値算出部９９０による比例系フィードバック値Ｔpの算出と並行して、制御部７４０Ａでは、積分部７４１におけるスリップ率推定部７６１が、移動速度ｖ及び回転速度ωに基づいて、上述した（５）式により、スリップ率λを算出することにより、スリップ率推定を行う。また、摩擦係数推定部７６２が、回転速度ω及び実トルク値Ｔmに基づいて、上述した（４），（１２），（１３）式を適宜利用して、摩擦係数μを算出することにより、摩擦係数推定を行う（図９参照）。
【０１１２】
引き続き、積分部７４１では、積分補償部７６３が、比例系フィードバック値Ｔp、スリップ率λ及び摩擦係数μに基づいて、積分補償値Ｔiを算出する。かかる積分補償値Ｔiの算出に際して、積分補償部７６３では、判断部７６６が、スリップ率λに基づいて、「ＯＮ」又は「ＯＦＦ」の２値情報を担う積分イネーブルＥＮを生成する。そして、積分演算部７６７が、積分イネーブルＥＮが「ＯＮ」である期間にわたって、比例系フィードバック値Ｔpの積分演算を行う（図９参照）。
【０１１３】
また、積分ゲイン算出部７６８が、スリップ率λ及び摩擦係数μに基づいて、上述した（１４）式により積分ゲイン値ｋiを算出する。そして、乗算部７６９は、積分演算部７６７から送られた演算結果ＴI、及び、積分ゲイン値ｋiに基づいて、上述した（１５）式により積分補償値Ｔiを算出し、算出された積分補償値Ｔiを加算部７４２へ送る（図９参照）。
【０１１４】
補正値算出部９９０から送られた比例系フィードバック値Ｔp、及び、積分部７４１から送られた積分補償値Ｔiを受けると、加算部７４２が、比例系フィードバック値Ｔp及び積分補償値Ｔiに基づいて、上述した（１０）式によりフィードバックトルク値Ｔfを算出する。そして、加算部７４２は、算出されたフィードバックトルク値Ｔfをトルク設定値算出部７４３へ送る（図８，９参照）。
【０１１５】
トルク指令値生成部８１０から送られたトルク指令値Ｔc、及び、加算部７４２から送られたフィードバックトルク値Ｔfを受けると、トルク設定値算出部７４３は、上述した（１１）式により、トルク設定値Ｔsを算出する。そして、トルク設定値算出部７４３は、算出されたトルク設定値Ｔsをモータ駆動系９００へ送る（図８参照）。
【０１１６】
モータ駆動系９００では、トラクション制御装置７００Ａから送られたトルク設定値Ｔsに基づいて、トルク設定値Ｔsに対応する電流をモータ９３０に供給する（図７参照）。この結果、モータ９３０は、トルク設定値Ｔsに対応するトルク値で駆動される。
【０１１７】
以上説明したように、第１実施形態では、モータ９３０によって駆動される駆動輪を有する移動体ＭＶの移動速度ｖ、移動体ＭＶの駆動輪の回転速度ω、及び、モータ９３０が発生する実トルク値Ｔmを取得する。引き続き、制御部７４０Ａの補正値算出部９９０が、各時点の回転速度ω及び実トルク値Ｔmに基づいて、比例系フィードバック値ＴPを算出する。
【０１１８】
また、制御部７４０Ａの積分部７４１におけるスリップ率推定部７６１が、移動速度ｖ及び回転速度ωに基づいてスリップ率λを算出することにより、スリップ率推定を行う。また、積分部７４１における摩擦係数推定部７６２が、回転速度ω及び実トルク値Ｔmに基づいて摩擦係数μを算出することにより、摩擦係数推定を行う。
【０１１９】
引き続き、積分部７４１では、積分補償部７６３が、比例系フィードバック値Ｔp、スリップ率λ及び摩擦係数μに基づいて、積分補償値Ｔiを算出する。かかる積分補償値Ｔiの算出に際して、積分補償部７６３では、判断部７６６が、スリップ率λに基づいて、「ＯＮ」又は「ＯＦＦ」の２値情報を担う積分イネーブルＥＮを生成する。そして、積分演算部７６７が、積分イネーブルＥＮが「ＯＮ」である期間にわたって、比例系フィードバック値Ｔpの積分演算を行う。
【０１２０】
また、積分補償部７６３では、積分ゲイン算出部７６８が、スリップ率λ及び摩擦係数μに基づいて、積分ゲイン値ｋiを算出する。そして、乗算部７６９は、積分演算部７６７から送られた演算結果ＴI、及び、積分ゲイン値ｋiに基づいて積分補償値Ｔiを算出し、算出された積分補償値Ｔiを加算部７４２へ送る。
【０１２１】
次に、加算部７４２が、比例系フィードバック値Ｔp及び積分補償値Ｔiに基づいて、フィードバックトルク値Ｔfを算出する。そして、加算部７４２は、算出されたフィードバックトルク値Ｔfをトルク設定値算出部７４３へ送る。
【０１２２】
次いで、トルク設定値算出部７４３が、トルク指令値Ｔc及びフィードバックトルク値Ｔfに基づいて、トルク設定値Ｔsを算出する。そして、トルク設定値算出部７４３は、算出されたトルク設定値Ｔsをモータ駆動系９００へ送る。
【０１２３】
すなわち、第１実施形態では、迅速な取得が可能な移動体ＭＶの移動速度ｖ、移動体ＭＶの駆動輪の回転速度ω、及び、モータ９３０が発生する実トルク値Ｔmを取得する。そして、比例系フィードバックと、積分補償とを組み合わせてフィードバックトルク値Ｔfを算出し、算出されたフィードバックトルク値Ｔfを利用して、トルク設定値Ｔsを算出する。
【０１２４】
したがって、第１実施形態によれば、滑りやすい路面での十分なスリップ抑制の迅速な実現と、滑りにくい路面での不必要なトルク低下防止とを両立することができる。
【０１２５】
また、第１実施形態では、積分イネーブルの変化にヒステリシス特性を持たせるようにした。このため、スリップ率の推定結果の微妙な変化による積分イネーブルの頻繁な変化を回避することができる。
【０１２６】
［第２実施形態］
次に、本発明の第２実施形態を、図１５及び図１６を主に参照して説明する。
【０１２７】
図１５には、第２実施形態に係るトラクション制御装置７００Ｂの構成及び位置付けが示されている。この図１５に示されるように、トラクション制御装置７００Ｂは、互いに独立に駆動可能な４つの駆動輪である左前側駆動輪ＷＨFL、右前側駆動輪ＷＨFR、左後側駆動輪ＷＨRL及び右後側駆動輪ＷＨRRの４個の駆動輪を有する移動体ＭＶ内に配置される。
【０１２８】
移動体ＭＶには、トラクション制御装置７００Ｂに加えて、トルク指令値生成部８１０、加速度検出部８２０及びモータ駆動系９００FL〜９００RRが配置されている。ここで、モータ駆動系９００j（ｊ＝ＦＬ〜ＲＲ）のそれぞれは、上述した第１実施形態において説明したモータ駆動系９００と同様に構成されている。
【０１２９】
すなわち、モータ駆動系９００jは、上述した駆動制御部９１０と同様の機能を有する駆動制御部９１０jと、上述したインバータ９２０と同様の機能を有するインバータ９２０jと、上述したモータ９３０と同様の機能を有するモータ９３０jとを備えている。また、モータ駆動系９００jは、上述した回転位置検出部９４０と同様の機能を有する回転位置検出部９４０jと、上述した電流検出部９５０と同様の機能を有する電流検出部９５０jを備えている。
【０１３０】
ここで、駆動制御部９１０jは、トラクション制御装置７００Ｂから送られたトルク設定値ＣＴs,j、回転位置検出部９４０jにより検出された回転位置θj、及び、電流検出部９５０jにより検出された検出電流値ＩD,jに基づいて、駆動電圧を算出する。そして、駆動制御部９１０jは、算出された駆動電圧を、インバータ９２０jへ送る。
【０１３１】
また、回転位置検出部９４０jは、モータ９３０jの回転位置θjを検出する。そして、回転位置検出部９４０jは、検出された回転位置θjを、トラクション制御装置７００Ｂ、駆動制御部９１０j及び電流検出部９５０jへ送る。
【０１３２】
また、電流検出部９５０jは、モータ９３０jを流れる電流値を検出する。そして、電流検出部９５０jは、検出された電流値を、検出電流値ＩD,jとして、トラクション制御装置７００Ｂ及び駆動制御部９１０jへ送る。
【０１３３】
なお、トルク指令値生成部８１０からは、４個の駆動輪ＷＨFL〜ＷＨRRに対応して、トルク指令値Ｔc,FL〜Ｔc,RRが、トラクション制御装置７００Ｂへ送られる。
【０１３４】
＜トラクション制御装置７００Ｂの構成＞
図１５に示されるように、トラクション制御装置７００Ｂは、上述した第１実施形態のトラクション制御装置７００Ａと比べて、制御部７４０Ａに代えて制御部７４０Ｂを備える点が異なっている。以下、この相違点に主に着目して説明する。
【０１３５】
なお、第２実施形態における回転速度取得部７２０は、回転位置検出部９４０jから送られた回転位置θjを受ける。そして、回転速度取得部７２０は、回転位置θの時間微分を行って、回転速度ωjを取得する。こうして取得された回転速度ωjは、制御部７４０Ｂへ送られる。
【０１３６】
また、第２実施形態における実トルク値取得部７３０は、電流検出部９５０jから送られた検出電流値ＩD,jを受ける。引き続き、実トルク値取得部７３０は、検出電流値ＩD,jに基づいてモータ電流値Ｉm,jを算出する。なお、モータ電流値Ｉm jは検出電流値ＩD,jの大きさを示しており、Ｉm,j＝｜ＩD,j｜である。
【０１３７】
次に、実トルク値取得部７３０は、上述した（１）式を利用して実トルク値Ｔm,jを算出することにより、実トルク値Ｔm,jを取得する。こうして取得された実トルク値Ｔm,jは、制御部７４０Ｂへ送られる。
【０１３８】
上記の制御部７４０Ｂは、図１６に示されるように、個別制御部７８１FL〜７８１RRと、共通トルク設定値算出部７８２とを備えている。
【０１３９】
上記の個別制御部７８１j（ｊ＝ＦＬ〜ＲＲ）のそれぞれは、上述した制御部７４０Ａと同様に構成される。個別制御部７８１jは、トルク指令値生成部８１０から送られたトルク指令値Ｔc,jを受ける。引き続き、個別制御部７８１jは、移動速度ｖ、回転速度ωj及びモータ電流値Ｉm,jに基づいて、個別トルク設定値Ｔs,jを算出する。そして、個別制御部７８１jは、算出された個別トルク設定値Ｔs,jを共通トルク設定値算出部７８２へ送る。
【０１４０】
なお、個別制御部７８１jは、トラクション制御を行うべき旨が指定されていない場合には、トルク指令値Ｔc,jを、個別トルク設定値Ｔs,jとして、共通トルク設定値算出部７８２へ送るようになっている。
【０１４１】
上記の共通トルク設定値算出部７８２は、個別制御部７８１jから送られた個別トルク設定値Ｔs,jを受ける。そして、共通トルク設定値算出部７８２は、トラクション制御を行うべき旨が指定されていない場合には、個別トルク設定値Ｔs,jを、トルク設定値ＣＴs,jとしてモータ駆動系９００jへ送る。この結果、トラクション制御を行うべき旨が指定されていない場合には、トルク指令値Ｔc,jが、トルク設定値ＣＴs,jとしてモータ駆動系９００jへ送られることになる。
【０１４２】
一方、トラクション制御を行うべき旨が指定されている場合には、共通トルク設定値算出部７８２は、個別トルク設定値Ｔs,FL〜Ｔs,RRのうちの最小値を抽出する。引き続き、共通トルク設定値算出部７８２は、トルク設定値ＣＴs,FL〜ＣＴs,RRの全てを、抽出された最小値Ｔs,minに設定する。共通トルク設定値算出部７８２は、最小値Ｔs,minに設定されたトルク設定値ＣＴs,jをモータ駆動系９００jへ送る。
【０１４３】
＜動作＞
次に、上記のように構成されたトラクション制御装置７００Ｂの動作について、トラクション制御を行うべき旨が指定されている場合の制御部７４０Ｂにおけるトラクション制御モード処理に主に着目して説明する。
【０１４４】
なお、トルク指令値生成部８１０、加速度検出部８２０及びモータ駆動系９００jは、既に動作を開始しており、トルク指令値Ｔc,j、加速度α、回転位置θj及び検出電流値ＩD,jが、逐次、トラクション制御装置７００Ｂへ送られているものとする（図１５参照）。
【０１４５】
トラクション制御装置７００Ｂでは、移動速度取得部７１０が、加速度検出部８２０から送られた加速度αの時間積分を行って、移動速度ｖを取得する。そして、移動速度取得部７１０は、取得された移動速度ｖを制御部７４０Ｂへ逐次送る（図１５参照）。
【０１４６】
また、回転速度取得部７２０が、回転位置検出部９４０jから送られた回転位置θjの時間微分を行って、回転速度ωjを取得する。そして、回転速度取得部７２０は、取得された回転速度ωjを制御部７４０Ｂへ逐次送る（図１５参照）。
【０１４７】
また、実トルク値取得部７３０が、電流検出部９５０jから送られた検出電流値ＩD,jに基づいて実トルク値Ｔm,jを算出することにより、実トルク値Ｔm,jの取得を行う。そして、実トルク値取得部７３０は、取得された実トルク値Ｔm,jを制御部７４０Ｂへ逐次送る（図１５参照）。
【０１４８】
＜トラクション制御モード処理＞
トラクション制御モード処理では、制御部７４０Ｂにおいて、個別制御部７８１jが、上述した制御部７４０Ａと同様の処理を行って、個別トルク設定値Ｔs,jを算出する。そして、個別制御部７８１jは、算出された個別トルク設定値Ｔs,jを共通トルク設定値算出部７８２へ送る。
【０１４９】
個別制御部７８１FL〜７８１RRから送られた個別トルク設定値Ｔs,FL〜Ｔs,RRを受けると、共通トルク設定値算出部７８２は、個別トルク設定値Ｔs,FL〜Ｔs,RRのうちの最小値を抽出する。引き続き、共通トルク設定値算出部７８２は、トルク設定値ＣＴs,FL〜ＣＴs,RRの全てを、抽出された最小値Ｔs,minに設定する。そして、共通トルク設定値算出部７８２は、最小値Ｔs,minに設定されたトルク設定値ＣＴs,jをモータ駆動系９００jへ送る。
【０１５０】
＜非トラクション制御モード処理＞
非トラクション制御モード処理では、制御部７４０Ｂにおいて、個別制御部７８１jが、トルク指令値Ｔc,jをそのまま、個別トルク設定値Ｔs,jとする。そして、個別制御部７８１jは、個別トルク設定値Ｔs,j（＝Ｔc,j）を共通トルク設定値算出部７８２へ送る。
【０１５１】
個別制御部７８１FL〜７８１RRから送られた個別トルク設定値Ｔs,FL〜Ｔs,RRを受けると、共通トルク設定値算出部７８２は、個別トルク設定値Ｔs,FL〜Ｔs,RRをそのままトルク設定値ＣＴs,FL〜ＣＴs,RRとする。
【０１５２】
個別制御部７８１FL〜７８１RRから送られた個別トルク設定値Ｔs,FL〜Ｔs,RRを受けると、
共通トルク設定値算出部７８２は、個別トルク設定値Ｔs,jをそのまま、トルク設定値ＣＴs,jとしてモータ駆動系９００jへ送る。この結果、モータ駆動系９００jへは、トルク指令値Ｔc,jが、そのまま送られる。
【０１５３】
モータ駆動系９００jでは、トラクション制御装置７００Ｂから送られたトルク設定値ＣＴs,jに基づいて、トルク設定値ＣＴs,jに対応する電流をモータ９３０jに供給する。この結果、モータ９３０jは、トルク設定値ＣＴs,jに対応する実トルク値で駆動される。
【０１５４】
以上説明したように、第２実施形態によれば、上述した第１実施形態の場合と同様に、必要な駆動力を確保しつつ安定な走行のための制御を、路面状態の変化に応じて迅速に実現することができる。
【０１５５】
また、第２実施形態では、複数の駆動輪のそれぞれについて算出された個別設定トルク値の中の最小値を、複数の駆動輪の全てのトルク指令値とする。この場合には、複数の駆動輪間におけるトルク設定値の差を抑制できるので、安定な走行を確保することができる。例えば、道路の左側のみ凍結しているような路面を走行する場合に、左側の駆動輪を対象として算出したトルク設定値が右側の駆動輪にも適応されるため、左右トルクのアンバランスが回避され、移動体の向きが変化することを防止できる。
【０１５６】
［実施形態の変形］
本発明は、上記の実施形態に限定されるものではなく、様々な変形が可能である。
【０１５７】
例えば、上記の第１及び第２実施形態では、移動速度の取得に際して加速度センサを利用するようにしたが、光学式対地センサを利用するようにしてもよい。
【０１５８】
また、上記の第１及び第２実施形態では、モータの実トルク値Ｔｍを（１）式から求めたが、Ｔsにトルク応答特性を乗じる次の（２０）式により、実トルク値Ｔｍを算出するようにしてもよい。
Ｔｍ＝Ｔs・（１／（τ1・ｓ＋１））            …（２０）
ここで、値τ1は、トルク応答の時定数である。
【０１５９】
また、上記の第１及び第２実施形態では、移動体ＭＶの重量Ｍを駆動輪の数で除算した値を、垂直抗力Ｎとして採用するようにした。これに対し、駆動輪の荷重を検出する荷重センサを配置するようにし、当該荷重センサによる検出結果を、垂直抗力Ｎとして採用するようにしてもよい。
【０１６０】
また、上記の第１及び第２実施形態では、積分ゲイン値を、スリップ率及び摩擦係数の推定結果に対して適応的に算出するようにした。これに対し、積分ゲイン値を、比例系フィードバックで残ってしまう残留偏差を少なくするとの観点から、実験、シミュレーション等に基づいて予め定められた固定値としてもよい。
【０１６１】
また、上記の第１及び第２実施形態では、スリップ率の推定値に基づいて積分イネーブルを「ＯＮ」から「ＯＦＦ」へ変化させるようにした。これに対し、摩擦係数の推定値に基づいて積分イネーブルを「ＯＮ」から「ＯＦＦ」へ変化させるようにしてもよい。
【０１６２】
また、上記の第１及び第２実施形態では、スリップ率の推定値に基づいて積分イネーブルを「ＯＦＦ」から「ＯＮ」へ変化させるようにした。これに対し、実トルク値の変化に対する回転速度の変化の割合と摩擦係数の推定値とに基づいて、積分イネーブルの値を変化させるようにしてもよい。この場合には、実トルク値の変化に対する回転速度の変化の割合が所定変化割合値以上で、かつ摩擦係数の推定値が所定摩擦係数値以下となった場合に、積分イネーブルを「ＯＮ」とし、積分補償を行うようにすればよい。
【０１６３】
また、上記の第１及び第２実施形態では、積分イネーブルＥＮが「ＯＮ」から「ＯＦＦ」に変化すると、積分値を「０」にクリアするようにした。これに対し、積分イネーブルＥＮが「ＯＮ」から「ＯＦＦ」に変化した場合には、「ＯＦＦ」の期間にわたって出力値を「０」とするが、積分演算を継続するようにしてもよい。
【０１６４】
なお、上記の実施形態のトラクション制御装置を、中央処理装置（ＣＰＵ：Central Processing Unit）、ＤＳＰ（Digital Signal Processor）等を備えた演算手段としてのコンピュータとして構成し、予め用意されたプログラムを当該コンピュータで実行することにより、上記の実施形態のトラクション制御装置の機能の一部又は全部を実行するようにしてもよい。このプログラムはハードディスク、ＣＤ−ＲＯＭ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、当該コンピュータによって記録媒体からロードされて実行される。また、このプログラムは、ＣＤ−ＲＯＭ、ＤＶＤ等の可搬型記録媒体に記録された形態で取得されるようにしてもよいし、インターネットなどのネットワークを介した配信の形態で取得されるようにしてもよい。
【実施例】
【０１６５】
次に、本発明の一実施例を、図１７〜図２０を主に参照して説明する。なお、以下の説明においては、上述した実施形態を含めて、同一又は同等の要素には同一の符号を付し、重複する説明を極力省略する。
【０１６６】
［構成］
図１７には、一実施例に係るトラクション制御装置１００の構成が概略的に示されている。このトラクション制御装置１００は、上述した第２実施形態に係るトラクション制御装置７００Ｂの一態様となっている。
【０１６７】
図１７に示されるように、トラクション制御装置１００は、移動体ＭＶとしての車両ＣＲ内に配置される。なお、車両ＣＲは、互いに独立に駆動可能な４つの駆動輪である左前側駆動輪ＷＨFL、右前側駆動輪ＷＨFR、左後側駆動輪ＷＨRL及び右後側駆動輪ＷＨRRの４個の駆動輪を備えている。
【０１６８】
車両ＣＲには、トラクション制御装置１００に加えて、トルク指令値生成部８１０、加速度検出部８２０及びモータ駆動系９００FL〜９００RRが配置されている。ここで、モータ駆動系９００j（ｊ＝ＦＬ〜ＲＲ）のそれぞれは、上述した第２実施形態において説明したモータ駆動系９００jと同様に構成されている。
【０１６９】
＜トラクション制御装置１００の構成＞
トラクション制御装置１００は、制御ユニット１１０と、記憶ユニット１２０とを備えている。
【０１７０】
上記の制御ユニット１１０は、演算手段としての中央処理装置（ＣＰＵ）、ＤＳＰ（Digital Signal Processor）を備えて構成される。この制御ユニット１１０は、プログラムを実行することにより、上述した第２実施形態における移動速度取得部７１０、回転速度取得部７２０、実トルク値取得部７３０及び制御部７４０Ｂとしての機能を果たすようになっている。
【０１７１】
制御ユニット１１０が実行するプログラムは、記憶ユニット１２０に記憶され、記録ユニットからロードされて実行される。このプログラムは、ＣＤ−ＲＯＭ、ＤＶＤ等の可搬型記録媒体に記録された形態で取得されるようにしてもよいし、インターネットなどのネットワークを介した配信の形態で取得されるようにしてもよい。
【０１７２】
なお、制御ユニット１１０が実行する処理については、後述する。
【０１７３】
上記の記憶ユニット１２０には、制御ユニット１１０が利用する様々な情報データが記憶される。こうした情報データには、制御ユニット１１０が実行するプログラムが含まれている。この記憶ユニット１２０には、制御ユニット１１０がアクセスできるようになっている。
【０１７４】
＜駆動制御部９１０j及び電流検出部９５０jの構成＞
ここで、本実施例の駆動制御部９１０j及び電流検出部９５０jについて、図１８を参照して、より詳しく説明する。なお、本実施例では、モータ９３０jは、３相モータとなっている。
【０１７５】
まず、駆動制御部９１０jについて説明する。この駆動制御部９１０jは、ベクトル制御により、モータ９３０jの駆動を制御する。かかる機能を有する駆動制御部９１０jは、電流指令値生成部９１１と、減算部９１２d，９１２qと、比例及び積分（ＰＩ）演算部９１３d，９１３qとを備えている。また、駆動制御部９１０jは、座標変換部９１４と、パルス幅変調（ＰＷＭ）部９１５とを備えている。
【０１７６】
上記の電流指令値生成部９１１は、トラクション制御装置１００から送られたトルク設定値ＣＴs,jを受ける。そして、電流指令値生成部９１１は、トルク設定値ＣＴs,jのモータトルクを発生させるべく、ｄ軸電流指令値Ｉd,j＊及びｑ軸電流指令値Ｉq,j＊を生成する。こうして生成されたｄ軸電流指令値Ｉd,j＊は、減算部９１２dへ送られるとともに、ｑ軸電流指令値Ｉq,j＊は、減算部９１２qへ送られる
【０１７７】
上記の減算部９１２dは、電流指令値生成部９１１から送られたｄ軸電流指令値Ｉd,j＊を受ける。そして、減算部９１２dは、電流検出部９５０jから送られたｄ軸検出電流値Ｉd,jを、ｄ軸電流指令値Ｉd,j＊から差し引く。減算部９１２dによる減算結果は、ＰＩ演算部９１３dへ送られる。
【０１７８】
上記の減算部９１２qは、電流指令値生成部９１１から送られたｑ軸電流指令値Ｉq,j＊を受ける。そして、減算部９１２qは、電流検出部９５０jから送られたｑ軸検出電流値Ｉq,jを、ｑ軸電流指令値Ｉq,j＊から差し引く。減算部９１２qによる減算結果は、ＰＩ演算部９１３qへ送られる。
【０１７９】
上記のＰＩ演算部９１３dは、減算部９１２dから送られた減算結果を受ける。そして、ＰＩ演算部９１３dは、当該減算結果に基づいて比例及び積分演算を行い、ｄ軸電圧指令値Ｖd,j＊を算出する。ＰＩ演算部９１３dにより算出されたｄ軸電圧指令値Ｖd,j＊は、座標変換部９１４へ送られる。
【０１８０】
上記のＰＩ演算部９１３qは、減算部９１２qから送られた減算結果を受ける。そして、ＰＩ演算部９１３qは、当該減算結果に基づいて比例及び積分演算を行い、ｑ軸電圧指令値Ｖq,j＊を算出する。ＰＩ演算部９１３qにより算出されたｑ軸電圧指令値Ｖq,j＊は、座標変換部９１４へ送られる。
【０１８１】
上記の座標変換部９１４は、ＰＩ演算部９１３dから送られたｄ軸電圧指令値Ｖd,j＊、及び、ＰＩ演算部９１３qから送られたｑ軸電圧指令値Ｖq,j＊を受ける。そして、座標変換部９１４は、回転位置検出部９４０jから送られた回転位置θjを参照して、ｄ軸電圧指令値Ｖd,j＊及びｑ軸電圧指令値Ｖq,j＊に対して座標変換を施して、ｕ軸制御電圧値Ｖu,j＊、ｖ軸制御電圧値Ｖv,j＊及びｗ軸制御電圧値Ｖw,j＊を算出する。座標変換部９１４による算出結果は、ＰＷＭ部９１５へ送られる。
【０１８２】
上記のＰＷＭ部９１５は、座標変換部９１４から送られた３相制御電圧を受ける。そして、ＰＷＭ部９１５は、当該３相制御電圧に対してパルス幅変調を施して、３相ＰＷＭ信号を生成する。こうして生成された３相ＰＷＭ信号は、インバータ９２０jへ送られる。
【０１８３】
次いで、電流検出部９５０jについて説明する。この電流検出部９５０jは、電流検出器９５１と、座標変換部９５２とを備えている。
【０１８４】
上記の電流検出器９５１は、モータ９３０jを流れるｕ軸電流値及びｖ軸電流値を検出する。そして、電流検出器９５１は、検出結果を、ｕ軸検出電流値Ｉu,j及びｖ軸検出電流値Ｉv,jとして、座標変換部９５２へ送る。なお、ｗ軸電流値（Ｉw,j）を検出してもよいが、「Ｉu,j＋Ｉv,j＋Ｉw,j＝０」との関係が成立しているため、ｗ軸電流値（Ｉw,j）を検出しなくても済む。
【０１８５】
上記の座標変換部９５２は、電流検出器９５１から送られたｕ軸検出電流値Ｉu,j及びｖ軸検出電流値Ｉv,jを受ける。そして、座標変換部９５２は、回転位置検出部９４０jから送られた回転位置θjを参照して、ｕ軸検出電流値Ｉu,j及びｖ軸検出電流値Ｉv,jに対して座標変換を施して、ｄ軸検出電流値Ｉd,j及びｑ軸検出電流値Ｉq,jを算出する。座標変換部９５２による算出結果は、検出電流値ＩD,jとして、トラクション制御装置１００及び駆動制御部９１０jへ送られる。
【０１８６】
なお、ＩD,jの大きさ｜ＩD,j｜は、次の（２１）式により算出される。
｜ＩD,j｜＝（Ｉd,j２+Ｉq,j２）1/2          …（２１）
【０１８７】
［動作］
次に、上記のように構成されたトラクション制御装置１００によるトラクション制御の動作について、制御ユニット１１０による処理に着目して説明する。
【０１８８】
なお、トルク指令値生成部８１０、加速度検出部８２０及びモータ駆動系９００jは、既に動作を開始しており、トルク指令値Ｔc,j、加速度α、回転位置θj及び検出電流値ＩD,jが、逐次、トラクション制御装置１００へ送られているものとする（図１７参照）。
【０１８９】
トラクション制御は、不図示の入力部を介して、利用者がトラクション制御の開始指令を入力することにより、開始される。かかるトラクション制御に際しては、図１９に示されるように、まず、ステップＳ１１において、制御ユニット１１０が、当該入力部を介して、トラクション制御の中止指令を受けたか否かを判定する。ステップＳ１１における判定の結果が否定的であった場合（ステップＳ１１：Ｎ）には、処理はステップＳ１２へ進む。
【０１９０】
ステップＳ１２では、制御ユニット１１０が、４個の駆動輪ＷＨFL〜ＷＨRRのそれぞれに対応する比例系フィードバック値Ｔp,FL〜Ｔp,RRを算出する。引き続き、制御ユニット１１０は、比例系フィードバック値Ｔp,FL〜Ｔp,RRに基づいて、積分補償値Ｔi,FL〜Ｔi,RRを算出する。なお、ステップＳ１２における積分補償値Ｔi,FL〜Ｔi,RRの算出処理については、後述する。
【０１９１】
次に、ステップＳ１３において、制御ユニット１１０が、４個の駆動輪ＷＨFL〜ＷＨRRのそれぞれに対応するフィードバックトルク値Ｔf,FL〜Ｔf,RRを算出する。かかるフィードバックトルク値Ｔf,FL〜Ｔf,RRの算出に際して、制御ユニット１１０は、上述した（１０）式によりフィードバックトルク値Ｔfを算出する。
【０１９２】
次いで、ステップＳ１４において、制御ユニット１１０が、トルク指令値Ｔc,FL〜Ｔc,RR及びフィードバックトルク値Ｔf,FL〜Ｔf,RRに基づいて、上述した（１１）式により、個別トルク設定値Ｔs,FL〜Ｔs,RRを算出する。引き続き、ステップＳ１５において、制御ユニット１１０が、個別トルク設定値Ｔs,FL〜Ｔs,RRのうちの最小値を抽出する。
【０１９３】
次に、ステップＳ１６において、制御ユニット１１０が、トルク設定値ＣＴs,FL〜ＣＴs,RRの全てを、抽出された最小値Ｔs,minに設定する。そして、制御ユニット１１０は、最小値Ｔs,minに設定されたトルク設定値ＣＴs,jをモータ駆動系９００jへ逐次出力する（図１７参照）。
【０１９４】
ステップＳ１６の処理が終了すると、処理はステップＳ１１へ戻る。以後、ステップＳ１１における判定の結果が肯定的となるまで、ステップＳ１１〜Ｓ１６の処理が繰り返される。
【０１９５】
トラクション制御の中止指令を受け、ステップＳ１１における判定の結果が肯定的となると（ステップＳ１１：Ｙ）、処理はステップＳ１７へ進む。このステップＳ１７では、制御ユニット１１０が、積分イネーブルＥＮFL〜ＥＮRRの全てを「ＯＦＦ」する。
【０１９６】
次に、ステップＳ１８において、制御ユニット１１０が、積分演算の演算結果（以下、「積分値」ともいう）ＴI,FL〜ＴI,RRの全てをクリアする。引き続き、ステップＳ１９において、フィードバックトルク値Ｔf,FL〜Ｔf,RRの全てをクリアする。そして、トラクション制御処理が終了する。この結果、トルク指令値Ｔc,jが、トルク設定値ＣＴs,jとして、モータ駆動系９００jへ出力されるようになる。
【０１９７】
＜積分補償値Ｔi,FL〜Ｔi,RRの算出処理＞
次に、ステップＳ１２における積分補償値Ｔi,FL〜Ｔi,RRの算出処理について説明する。
【０１９８】
積分補償値Ｔi,jの算出処理に際しては、図２０に示されるように、まず、ステップＳ２１において、制御ユニット１１０が、加速度α、回転位置θj及び検出電流値ＩD,jを取得する。そして、制御ユニット１１０は、加速度αの時間積分を行って車速（移動速度）ｖを取得し、回転位置θjの時間微分を行って回転速度ωjを取得するとともに、検出電流値ＩD,jに基づいて実トルク値Ｔm,jを取得する。なお、モータ電流値Ｉm jは検出電流値ＩD jの大きさを示しており、Ｉm,j＝｜ＩD,j｜である。
【０１９９】
次に、ステップＳ２２において、制御ユニット１１０が、車速ｖ及び回転速度ωjに基づき、上述した（５）式により、スリップ率λjを算出することにより、スリップ率推定を行う。引き続き、ステップＳ２３において、制御ユニット１１０が、回転速度ωj及び実トルク値Ｔm,jに基づき、上述した（１），（４），（１２），（１３）式を適宜利用して、摩擦係数μjを算出することにより、摩擦係数推定を行う。
【０２００】
次いで、ステップＳ２４において、制御ユニット１１０は、スリップ率λjが第１所定値λTHHより大きいか否かを判定する。ステップＳ２４における判定の結果が肯定的であった場合（ステップＳ２４：Ｙ）には、処理はステップＳ２５へ進む。
【０２０１】
ステップＳ２５では、制御ユニット１１０が、積分イネーブルＥＮjを「ＯＮ」に設定する。そして、処理は、後述するステップＳ２８へ進む。
【０２０２】
上述したステップＳ２４における判定の結果が否定的であった場合（ステップＳ２４：Ｎ）には、処理はステップＳ２６へ進む。このステップＳ２６では、制御ユニット１１０が、スリップ率λjが第２所定値λTHLより小さいか否かを判定する。ステップＳ２６における判定の結果が否定的であった場合（ステップＳ２６：Ｎ）には、処理はステップＳ２８へ進む。
【０２０３】
一方、ステップＳ２６における判定の結果が肯定的であった場合（ステップＳ２６：Ｙ）には、処理はステップＳ２７へ進む。このステップＳ２７では、制御ユニット１１０が、積分イネーブルＥＮjを「ＯＦＦ」に設定する。そして、処理はステップＳ２８へ進む。
【０２０４】
ステップＳ２８では、制御ユニット１１０は、積分イネーブルＥＮjが「ＯＮ」であるか否かを判定する。ステップＳ２８における判定の結果が肯定的であった場合（ステップＳ２８：Ｙ）には、処理はステップＳ２９へ進む。
【０２０５】
ステップＳ２９では、制御ユニット１１０が、比例系フィードバック値Ｔpに対する積分を行い、積分値ＴI,jを更新する。そして、処理は後述するステップＳ３１へ進む。
【０２０６】
ステップＳ２８における判定の結果が否定的であった場合（ステップＳ２８：Ｎ）には、処理はステップＳ３０へ進む。このステップＳ３０では、制御ユニット１１０が、積分値ＴI,jをクリアする。そして、処理はステップＳ３１へ進む。
【０２０７】
ステップＳ３１では、制御ユニット１１０が、スリップλj及び摩擦係数μjに基づいて、上述した（１４）式を利用して積分ゲイン値ｋi,jを算出する。引き続き、ステップＳ３２において、制御ユニット１１０が、積分値ＴI,j及び積分ゲイン値ｋi,jに基づいて、上述した（１５）式を利用して積分補償値Ｔiを算出する。
【０２０８】
ステップＳ３２の処理が終了すると、ステップＳ１２の処理が終了する。そして、処理は、図１９のスッテプＳ１３へ進む。
【０２０９】
以上説明したように、本実施例では、モータ９３０jによって駆動される駆動輪を有する車両ＣＲの車速ｖ、車両ＣＲの駆動輪の回転速度ωj、及び、モータ９３０jが発生する実トルク値Ｔm,jを取得する。ここで、車速ｖ、回転速度ωj及び実トルク値Ｔm,jは、迅速な取得が可能である。
【０２１０】
また、制御ユニット１１０が、車速ｖ及び回転速度ωjに基づいてスリップ率λjを算出することによりスリップ率推定を行うとともに、回転速度ωj及び実トルク値Ｔm,jに基づいて摩擦係数μjを算出することにより摩擦係数推定を行う。制御ユニット１１０が、比例系フィードバック値Ｔp,j、スリップ率λj及び摩擦係数μjに基づいて、積分補償値Ｔi,jを算出する。かかる積分補償値Ｔi,jの算出に際して、制御ユニット１１０は、スリップ率λjに基づいて、「ＯＮ」又は「ＯＦＦ」の２値情報を担う積分イネーブルＥＮを生成する。そして、制御ユニット１１０が、積分イネーブルＥＮが「ＯＮ」である期間にわたって、比例系フィードバック値Ｔp,jの積分演算を行う。
【０２１１】
また、制御ユニット１１０が、スリップ率λj及び摩擦係数μjに基づいて、積分ゲイン値ｋi,jを算出する。そして、制御ユニット１１０は、積分値ＴI,j及び積分ゲイン値ｋi,jに基づいて積分補償値Ｔi,jを算出する。
【０２１２】
次に、制御ユニット１１０が、比例系フィードバック値Ｔp,j及び積分補償値Ｔi,jに基づいて、フィードバックトルク値Ｔf,jを算出する。引き続き、制御ユニット１１０が、トルク指令値Ｔc,j及びフィードバックトルク値Ｔf,jに基づいて、個別トルク設定値Ｔs,jを算出する。そして、制御ユニット１１０は、算出された個別トルク設定値Ｔs,jに基づいて得られるトルク設定値ＣＴs,jをモータ駆動系９００jへ送る。
【０２１３】
すなわち、本実施例では、迅速な取得が可能な車両ＣＲの車速ｖ、車両ＣＲの駆動輪の回転速度ωj、及び、モータ９３０jが発生する実トルク値Ｔm,jを取得する。そして、比例系フィードバックと、積分補償とを組み合わせてフィードバックトルク値Ｔf,jを算出し、算出されたフィードバックトルク値Ｔf,jを利用して、個別トルク設定値Ｔs,jを算出する。
【０２１４】
したがって、本実施例によれば、滑りやすい路面での十分なスリップ抑制の迅速な実現と、滑りにくい路面での不必要なトルク低下防止とを両立することができる。
【０２１５】
また、本実施例では、積分イネーブルＥＮjの変化にヒステリシス特性を持たせるようにした。このため、スリップ率λjの推定結果の微妙な変化による積分イネーブルＥＮjの頻繁な変化を回避することができる。
【０２１６】
また、本実施例では、複数の駆動輪のそれぞれについて算出された個別トルク設定値Ｔs,jの中の最小値を、複数の駆動輪の全てのトルク設定値ＣＴs,jとする。この場合には、複数の駆動輪間におけるトルク設定値の差を抑制できるので、安定な走行を確保することができる。例えば、道路の左側のみ凍結しているような路面を走行する場合に、左側の駆動輪を対象として算出したトルク設定値が右側の駆動輪にも適応されるため、左右トルクのアンバランスが回避され、車体の向きが変化することを防止できる。
【０２１７】
［実施例の変形］
本発明は、上記の実施例に限定されるものではなく、様々な変形が可能である。
【０２１８】
例えば、上記の実施例では、車速の取得に際して加速度センサを利用するようにしたが、光学式対地センサを利用するようにしてもよい。
【０２１９】
また、図１８で説明したように、ｄ軸検出電流値Ｉd,j及びｑ軸検出電流値Ｉq,jは、それぞれｄ軸電流指令値Ｉd,j＊及びｑ軸電流指令値Ｉq,j＊と同じになるように制御が行われる。したがって、ＰＩ演算とモータ特性とによる応答時間の遅れがあるが、結果として実トルク値Ｔmは、トルク設定値ＣＴs,jと等しくなるように制御される。このため、上記の実施例では、モータの実トルク値Ｔm,jを（１）式から求めたが、トルク設定値ＣＴs,jにトルク応答特性を乗じる次の（２２）式により、実トルク値Ｔm,jを算出するようにしてもよい。
Ｔm,j＝ＣＴs,j・（１／（τ1・ｓ＋１））            …（２２）
ここで、値τ1は、トルク応答の時定数である。
【０２２０】
また、上記の実施例では、車両ＭＶの重量Ｍを駆動輪の数で除算した値を、垂直抗力Ｎとして採用するようにした。これに対し、駆動輪の荷重を検出する荷重センサを配置するようにし、当該荷重センサによる検出結果を、垂直抗力Ｎとして採用するようにしてもよい。
【０２２１】
また、上記の実施例では、積分ゲイン値を、スリップ率及び摩擦係数の推定結果に対して適応的に算出するようにした。これに対し、積分ゲイン値を、比例系フィードバックで残ってしまう残留偏差を少なくするとの観点から、実験、シミュレーション等に基づいて予め定められた固定値としてもよい。
【０２２２】
また、上記の実施例では、スリップ率の推定値に基づいて積分イネーブルを「ＯＮ」から「ＯＦＦ」へ変化させるようにした。これに対し、摩擦係数の推定値に基づいて積分イネーブルを「ＯＮ」から「ＯＦＦ」へ変化させるようにしてもよい。
【０２２３】
また、上記の実施例では、スリップ率の推定値に基づいて積分イネーブルを「ＯＦＦ」から「ＯＮ」へ変化させるようにした。これに対し、実トルク値の変化に対する回転速度の変化の割合と摩擦係数の推定値とに基づいて、積分イネーブルの値を変化させるようにしてもよい。この場合には、実トルク値の変化に対する回転速度の変化の割合が所定変化割合値以上で、かつ摩擦係数の推定値が所定摩擦係数値以下となった場合に、積分イネーブルを「ＯＮ」とし、積分補償を行うようにすればよい。
【０２２４】
また、上記の実施例では、積分イネーブルＥＮが「ＯＮ」から「ＯＦＦ」に変化すると、積分値を「０」にクリアするようにした。これに対し、積分イネーブルＥＮが「ＯＮ」から「ＯＦＦ」に変化した場合には、「ＯＦＦ」の期間にわたって出力値を「０」とするが、積分演算を継続するようにしてもよい。
【符号の説明】
【０２２５】
１００            …トラクション制御装置
１１０            …制御ユニット（移動速度取得部、回転速度取得部、実トルク値
取得部、補正値算出部、積分部、加算部、トルク設定値算出部、
共通トルク設定値算出部）
７００Ａ，７００Ｂ…トラクション制御装置
７１０            …移動速度取得部
７２０            …回転速度取得部
７３０            …実トルク値取得部
７４１            …積分部
７４２            …加算部
７４３            …トルク設定値算出部
７６１            …スリップ率推定部（推定部の一部）
７６２            …摩擦係数推定部（推定部の一部）
７６６            …判断部
７６７            …積分演算部
９９０            …補正値算出部
【図１】
2014204478.tif 000007
【図２】
2014204478.tif 000008
【図３】
2014204478.tif 000009
【図４】
2014204478.tif 000010
【図５】
2014204478.tif 000011
【図６】
2014204478.tif 000012
【図７】
2014204478.tif 000013
【図８】
2014204478.tif 000014
【図９】
2014204478.tif 000015
【図１０】
2014204478.tif 000016
【図１１】
2014204478.tif 000017
【図１２】
2014204478.tif 000018
【図１３】
2014204478.tif 000019
【図１４】
2014204478.tif 000020
【図１５】
2014204478.tif 000021
【図１６】
2014204478.tif 000022
【図１７】
2014204478.tif 000023
【図１８】
2014204478.tif 000024
【図１９】
2014204478.tif 000025
【図２０】
2014204478.tif 000026