【新規性喪失の例外の表示】特許法第30条第2項適用 平成26年3月20日 新豊田駅において開催されたHa:mo RIDE(ハーモライド)走行体験会で展示公開
(58)【調査した分野】(Int.Cl.,DB名)
制御周期毎に、アクセル操作量と駆動モータの実モータ回転数とに応じて前記駆動モータのトルク指令値をトルクマップに基づいて算出するトルク指令値算出部を含み、前記制御周期毎に前記トルク指令値に基づいた電流指令値を前記駆動モータ用として出力する制御系を有する電気自動車の制御装置において、
前記駆動モータの実モータ回転数の増減の繰り返し回数に基づいて、車両振動の有無を判定する判定部を備え、
前記トルク指令値算出部は、前記判定部により前記車両振動が有ると判定された際、前記車両振動が有ると判定された際の前記実モータ回転数を固定値とし、その固定値と前記アクセル操作量に応じて前記トルクマップに基づいてトルク指令値を算出する電気自動車の制御装置。
前記トルク指令値算出部において、実モータ回転数とアクセル操作量を使用して前記トルクマップに基づいてトルク指令値を算出する方式を第1モードとし、前記固定値のモータ回転数とアクセル操作量を使用して前記トルクマップに基づいてトルク指令値を算出する方式を第2モードとしたとき、
前記第2モードで実行中の前記トルク指令値算出部は、前記第2モードから第1モードへの遷移を許容する第1モード復帰条件が成立した場合には、第1モードに遷移する請求項1に記載の電気自動車の制御装置。
前記第1モード復帰条件の成立には、前記判定部の判定結果による前記車両振動が無いとされた継続時間が復帰許容値以上となった場合を含む請求項2に記載の電気自動車の制御装置。
前記第1モード復帰条件の成立には、制御周期毎に得られる実モータ回転数の今回値と、前記固定値のモータ回転数との絶対値の差が第2判定閾値以上になった場合を含む請求項2乃至請求項3のうちいずれか1項に記載の電気自動車の制御装置。
前記第1モード復帰条件の成立には、今回値の実モータ回転数が0、または第3判定閾値以上になった場合を含む請求項2乃至請求項4のうちいずれか1項に記載の電気自動車の制御装置。
【背景技術】
【0002】
図6は、一般的な電気自動車における走行駆動用モータのモータ制御系の概略図である。同図に示すように、アクセルペダル100が踏まれると、そのアクセル操作量AccelとモータTmのモータ回転数Nに応じて、制御装置110は、トルクマップ112を参照して、トルク指令値T
*を算出する。そして、制御装置110は、モータ制御部120にトルク指令値T
*を出力する。モータ制御部120は、前記トルク指令値T
*と、モータ電流の電流フィードバックに基づいてモータ電流指令値を算出し、このモータ電流指令値に基づいて図示しないバッテリから供給される直流電力を交流電力に変換して、モータ電流Iu、Iv、IwをモータTmに出力する。
【0003】
ところで、電気自動車においては、走行抵抗変化やギヤバックラッシュなどによって車両に振動が発生した際に、走行駆動用モータのモータ制御系が共振して車両の振動が継続する場合がある。これは、モータ回転数Nの変化に伴ってトルク指令値T
*が変化するためである。
【0004】
図7は、所定のアクセル操作量におけるモータ回転数Nとトルク指令値T
*のトルクマップである。
このトルクマップでは、トルク指令値T
*が負の変化を生じる領域(
図7において、トルクマップが右下がりの領域)が、モータ制御系の共振により車両の振動が継続しやすい領域となる。
【0005】
すなわち、この領域ではモータ回転数Nが増加すると、トルクマップに基づくトルク指令値T
*が減少する。すると、モータ回転数Nが減少し、この減少により、トルクマップに基づくトルク指令値T
*が増加し、この増加によりモータ回転数Nがまた増加する、という制御系の共振が継続することになる。
【0006】
特許文献1では、電気自動車の駆動モータの出力軸から駆動輪へと至るトルクの伝達系が「ねじれ共振系」を構成し、急発進時や急加速時に、この「ねじれ共振系」によって発生する車体振動を抑制する技術が提案されている。特許文献1では、モータへの入力電流の振動状態を検出して、振動状態が検出されると、トルク指令値の補正を行って、車体振動を抑制するようにしている。
【0007】
特許文献2では、ハイブリッド車における駆動モータの角加速度を車両の振動発生変量として検出し、制振制御が必要なときは、制振制御を行って、前記駆動モータの角加速度を0に収束するようにフィードバック制御を行うようにしている。
【発明を実施するための形態】
【0017】
以下、本発明の電気自動車の制御装置を具体化した一実施形態について
図1〜
図5を参照して説明する。なお、本明細書において、電気自動車は、内燃機関を搭載していない電気自動車の他、内燃機関を搭載したハイブリッド車も含む趣旨である。
【0018】
図1に示すように電気自動車は、駆動モータ10を制御する制御装置20を備えている。制御装置20は、図示しないバッテリの直流を交流電力に変換するインバータ30に接続されている。また、前記インバータ30は、駆動モータ10に接続されている。インバータ30は、図示しないバッテリからインバータ30に供給された直流電力を、制御装置20の制御のもとに三相交流電力に変換して駆動モータ10に供給する。
【0019】
前記駆動モータ10は、例えば、回転子に永久磁石を使用した三相交流同期モータが使用される。なお、電気自動車がハイブリッド車の場合、前記駆動モータ10は、モータと発電機の機能を有するモータジェネレータである。駆動モータ10には、その実モータ回転数を検出するレゾルバ等の回転数センサ40及び駆動モータ10への各相のモータ電流Iu、Iv、Iwを検出する図示しない電流検出部が設けられている。
【0020】
前記駆動モータ10は、その回転運動を図示しないドライブシャフトに伝達するディファレンシャルギア、及び、ドライブシャフトを介して前記ドライブシャフトの両端に設けられた駆動輪を駆動する。
【0021】
図1に示す制御装置20は、CPU、メモリ等を有するマイクロコンピュータからなり、トルク指令値算出部21、電流指令値算出部22、2相/3相変換部23、3相/2相変換部24、PWM(Pulse Width Modulation)変換部25及び振動判定部26を備える。振動判定部26は、判定部に相当する。
【0022】
トルク指令値算出部21は、アクセル操作量センサ50で検出された図示しないアクセルペダルのアクセル操作量AC及び回転数センサ40で検出された駆動モータ10の実モータ回転数N、或いは固定値のモータ回転数に基づいてトルク指令値T
*の演算等を行う。具体的には、トルク指令値算出部21は、入力したアクセル操作量ACに応じたトルクマップを使用して、前記実モータ回転数N、あるいは固定値のモータ回転数に対応するトルク指令値T
*を算出する。
【0023】
図2には前記トルク指令値T
*を算出する際に参照されるトルクマップの一例を示す。図示しないアクセルペダルが踏み込まれる加速時には、アクセル操作量と実モータ回転数Nとに基づいて
図2のトルクマップが参照される。
【0024】
同図に示すように、トルクマップには、アクセル操作量に対応する複数の特性線AC0〜AC5が設定されている。なお、特性線AC0はアクセル操作量「0」に対応する特性線であり、特性線AC1はアクセル操作量「1/4」に対応する特性線であり、特性線AC2はアクセル操作量「1/2」に対応する特性線であり、特性線AC3はアクセル操作量「3/4」に対応する特性線であり、特性線AC4はアクセル操作量「1」に対応する特性線である。
【0025】
前記固定値のモータ回転数の詳細は後述する。前記トルク指令値T
*は、電流指令値算出部22に入力される。
図1に示す電流指令値算出部22は、トルク指令値T
*に応じた電流指令値Id
*及びIq
*を算出し、2相/3相変換部23に出力する。前記Id
*及びIq
*は、それぞれベクトル制御に用いられる電流指令値のd軸成分およびq軸成分である。また、3相/2相変換部24は、図示しない電流検出部からの各相のモータ電流Iu、Iv、Iw、及びモータ回転数Nを入力して、モータ電流Iu、Iv、Iwを3相/2相変換によりd軸電流Id及びq軸電流Iqに変換し、2相/3相変換部23に入力する。
【0026】
2相/3相変換部23は、電流指令値Id
*と電流指令値Iq
*と、実モータ回転数Nと、3相/2相変換部24から入力されるd軸電流Idとq軸電流Iqとから、d軸とq軸との電圧指令値を生成する。さらに、2相/3相変換部23は、前記電圧指令値を駆動モータ10の実モータ回転数Nを用いて、3相交流電圧指令値Vu
*,Vv
*,Vw
*に変換し、PWM変換部25に入力する。PWM変換部44は、入力された3相交流電圧指令値Vu
*,Vv
*,Vw
*から、インバータ30を構成する図示しないスイッチング素子のオンオフを制御するPWM制御信号を生成し、インバータ30に入力する。これによって、インバータ30は、駆動モータ10に駆動信号を出力し、前記駆動モータ10を駆動する。
【0027】
振動判定部26は、回転数センサ40で検出された駆動モータ10の実モータ回転数Nを入力し、実モータ回転数の増加、減少の回数に基づいて車両の振動判定を行い、その判定結果をトルク指令値算出部21に出力する。前記制御装置20及びインバータ30は制御系に相当する。
【0028】
(実施形態の作用)
次に、本実施の形態に係る電気自動車の制御装置20の作用を
図3〜
図5を参照して説明する。
【0029】
図3及び
図4のフローチャートは、制御装置20が振動判定部26の機能、及び、トルク指令値算出部21の機能を実行する際に行う処理であり、所定制御周期で行われる。なお、この所定制御周期は、例えば、実モータ回転数Nのサンプリング周期と同期して行われる。また、前記サンプリング周期毎に取得された実モータ回転数Nは、図示しないバッファに格納される。以下の説明では、現在の制御周期で取得された実モータ回転数を今回値といい、前回の制御周期で取得された実モータ回転数を前回値という。
【0030】
(S10)
図示しないバッファから現在の駆動モータ10の実モータ回転数(今回値)の読み取りが行われる。
【0031】
(S20)
前回値から今回値が第1判定閾値以上増加しているか否かが判定される。今回値が前回値よりも第1判定閾値以上増加している場合は、「YES」と判定されてS30に移行する。また、今回値が前回値よりも第1判定閾値未満の増加の場合は、「NO」と判定されてS70に移行する。
【0032】
今回値が前回値よりも第1判定閾値よりも増加している場合には、トルク指令値T
*と共振している可能性があるものとしているのである。
(S30)
非検出時間カウンタがクリアされ、S40に移行する。
【0033】
(S40)
増加減少方向フラグが0にリセットされているか否かが判定される。増加減少方向フラグが0にリセットされている場合は、「YES」と判定されてS50に移行する。また、増加減少方向フラグが0にリセットされていない場合は、「NO」と判定されて
図4のS130にジャンプする。
【0034】
(S50)
検出回数カウンタがインクリメントされて、S60に移行する。ここで、検出回数は、実モータ回転数Nの増減の繰り返し回数に相当する。
【0035】
(S60)
増加減少方向フラグが1にセットされて、
図4のS130に移行する。
ここで、S40、及びS60における増加減少方向フラグに関する処理の意味について説明する。
【0036】
実モータ回転数Nが波形状に変化する場合、前記波形状の谷部から上昇(実モータ回転数が増加)する領域がある。このように実モータ回転数Nが前記谷部から上昇し続ける場合、S20で「YES」、S40で「YES」とされると、S60で、増加減少方向フラグが1にセットされることになる。
【0037】
次回以降の制御周期において、さらに、実モータ回転数Nが上昇し続けて、S20で「YES」とされた場合、既に増加減少方向フラグは1にセットされているため、S40では「NO」と判定されて、S130にジャンプすることになる。このことにより、前記波形状の谷部から上昇(実モータ回転数が増加)する領域において、前記波形状の谷部から上昇が開始された場合、初めてS20において「YES」としたときのみを、検出回数カウンタでカウントされるようにしている。
【0038】
(S70)
S20からS70に移行した場合、今回値が前回値よりも第1判定閾値以上減少しているか否かが判定される。今回値が前回値よりも第1判定閾値以上減少している場合は、「YES」と判定されてS80に移行する。また、今回値が前回値よりも第1判定閾値未満で減少している場合は、「NO」と判定されてS120に移行する。
【0039】
今回値が前回値よりも第1判定閾値よりも減少している場合には、トルク指令値T
*と共振している可能性があるものとしているのである。
(S80)
非検出時間カウンタがクリアされ、S90に移行する。
【0040】
(S90)
増加減少方向フラグが1にセットされているか否かが判定される。増加減少方向フラグが1にセットされている場合は、「YES」と判定されてS100に移行する。また、増加減少方向フラグが0に1にセットされていない場合は、「NO」と判定されて
図4のS130にジャンプする。
【0041】
(S100)
前記検出回数カウンタがインクリメントされて、S110に移行する。
(S110)
増加減少方向フラグが0にリセットされて、
図4のS130に移行する。
【0042】
ここで、S90、及びS110における増加減少方向フラグに関する処理の意味について説明する。
実モータ回転数Nが波形状に変化する場合、前記波形状の頂部から下降(実モータ回転数が減少)する領域がある。このように実モータ回転数Nが前記頂部から下降し続ける場合、S70で「YES」、S90で「YES」とされると、S110で、増加減少方向フラグが0にリセットされることになる。
【0043】
次回以降の制御周期において、さらに、実モータ回転数Nが下降し続けて、S70で「YES」とされた場合、既に増加減少方向フラグは0にリセットされているため、S90では「NO」と判定されて、S130にジャンプすることになる。このことにより、前記波形状の頂部から下降(実モータ回転数が減少)する領域において、前記波形状の頂部から下降が開始された場合、初めてS70で「YES」としたときのみを検出回数カウンタでカウントされるようにしている。
【0044】
(S120)
S70からS120に移行した場合は、非検出時間カウンタをインクリメントし、
図4のS130に移行する。
【0045】
すなわち、S20及びS70ではそれぞれ「NO」と判定されているので、今回値の前回値に対する差は、トルク指令値T
*と実モータ回転数が共振していないレベルであるとされて、S120では、非検出時間カウンタがカウンタアップされるのである。
【0046】
(S130)
図4に示すS130では、前記検出回数カウンタのカウント値がモード遷移許容値以上か否かが判定される。前記検出回数カウンタのカウント値がモード遷移許容値以上の場合、「YES」と判定されて、すなわち、車両振動の振動検出がされてS140に移行する。また、前記検出回数カウンタのカウント値がモード遷移許容値未満の場合は、「NO」と判定されてS150にジャンプする。すなわち、検出回数カウンタのカウント値がモード遷移許容値以上となっていないため、車両振動ではないとしているのである。
【0047】
前記モード遷移許容値は、本実施形態では2回としているが、限定するものではなく、3回以上の複数回でもよい。
なお、S130からS150にジャンプした場合、車両振動の検出がされていないため、後のS180のトルクマップで使用される駆動モータ10のモータ回転数のパラメータとして、当該制御周期で取得したS10の今回値がセットされる。
【0048】
(S140)
S130において、「YES」と判定されると、車両振動の検出がされたこととなり、今回値を次回の制御周期においてトルクマップを参照する際に使用する固定値とするのである。なお、前記固定値は、実モータ回転数が取り得る最大値と実モータ回転数が取り得る最小値の間の値となり、S130で「YES」と判定されたときにおける今回値の値となる。S140では、振動検出が開始されたことになる。この振動検出は、後のS190で、振動検出が解除されるまで行われていることになる。
【0049】
S140の処理後、S150に移行する。
なお、一旦、固定値が設定された場合、後のS180で検出回数カウンタがクリアされない限り、次回以降の制御周期におけるS130では、前記検出回数カウンタがモード遷移許容値以上(「YES」)と判定されてS140に移行する。しかし、既に固定値が設定されているため、固定値に変更はない。
【0050】
(S150)
今回値と前記固定値との絶対値の差が、第2判定閾値以上か否かが判定される。
今回値と前記固定値との絶対値の差が、第2判定閾値以上の場合、「YES」と判定されて、S180に移行する。また、今回値と前記固定値との絶対値の差が、第2判定閾値未満の場合、「NO」と判定されて、S160に移行する。
【0051】
なお、S140で今回値が固定値とされていない場合(すなわち、S130で「NO」とされた場合)、固定値がないため、S150での判定は「NO」となり、S160に移行することになる。
【0052】
ここで、制御周期毎に、その制御周期での今回値とアクセル操作量を使用してトルクマップを参照することによりトルク指令値を算出する方式が第1モードである。また、前記固定値とアクセル操作量を使用してトルクマップを参照することによりトルク指令値を算出する方式が第2モードである。
【0053】
S150において、今回値と前記固定値との絶対値の差が第2判定閾値以上の場合は、第1モード復帰条件が成立した場合に相当する。
(S160)
非検出時間カウンタが復帰許容値以上か否かが判定される。非検出時間カウンタが復帰許容値以上の場合は、「YES」と判定されて、S180に移行する。非検出時間カウンタが復帰許容値未満の場合は、「NO」と判定されて、S170に移行する。なお、復帰許容値(すなわち、復帰許容時間)は、例えば500msであるが、数値は限定されるものではなく、他の時間であってもよい。
【0054】
なお、初めてS130において、判定が「YES」となった場合は、S160では非検出時間カウンタが復帰許容値未満となるので、「NO」の判定となり、S170に移行することになる。
【0055】
S160において、非検出時間カウンタが復帰許容値以上の場合は、振動判定部26の判定結果による車両振動が無いとされた継続時間が復帰許容値以上となった場合に相当し、第1モード復帰条件が成立した場合に相当する。
【0056】
(S170)
今回値が0か否かが判定される。今回値が0の場合は、「YES」と判定されて、S180に移行する。また、今回値が0でない場合は、「NO」と判定されて、S200にジャンプする。S170において、今回値が0の場合は、第1モード復帰条件の成立した場合に相当する。
【0057】
(S180)
S150〜S170において、それぞれ「YES」と判定された場合、検出回数カウンタがクリアされて、S190に移行する。
【0058】
(S190)
第1モード復帰条件が成立したものとして、車両振動の検出が解除されて固定値のセットが解除される。すなわち、この後、トルクマップでは、今回値とアクセル操作量とが使用されることになる。
【0059】
(S200)
トルクマップを参照して、トルク指令値T
*の算出が行われる。すなわち、第1モードの場合には、今回値とアクセル操作量を使用してトルクマップを参照してトルク指令値T
*の算出が行われる。また、第2モードの場合は、前記固定値と今回値とアクセル操作量を使用してトルクマップを参照してトルク指令値T
*の算出が行われる。この後、S10にリターンする。
【0060】
(トルク指令値T
*と実モータ回転数Nが非共振の場合)
実モータ回転数Nが0以外の値であって、トルク指令値T
*と実モータ回転数Nが非共振の場合、S10、S20で「NO」、S70で「NO」、S120、S130で「NO」、S150で「NO」、S160で「NO」、S170で「NO」とされてS200での処理が行われる。
【0061】
(トルク指令値T
*と実モータ回転数Nが共振の場合)
実モータ回転数Nが0以外の値であって、トルク指令値T
*と実モータ回転数Nとが共振している場合について説明する。
【0062】
なお、説明の便宜上、その時々に取得される実モータ回転数Nが、波状に変化して谷部から上昇を開始し、今回値が前回値よりも第1判定閾値以上に増加した場合について説明する。また、S150〜S170では第1モード復帰条件が成立せずそれぞれ「NO」と判定されるものとして説明する。
【0063】
この場合、S10、S20で「YES」、S30での処理が行われる。
ここで、S40では、前記共振が開始された場合は、増加減少方向フラグは0に設定されているため、判定は「YES」となり、S50、S60の処理が行われて、S130に移行する。
【0064】
S130では、検出回数カウンタのカウント値がモード遷移許容値以上でない場合は「NO」と判定されて、S150に移行する。
S150、S160及びS170は、S140において固定値が設定された以降における振動検出解除のための処理である。
【0065】
共振が生じている場合において、S150、S160及びS170ではそれぞれ「NO」と判定された場合、S200では、今回値とアクセル操作量に応じて、トルクマップが参照されてトルク指令値T
*が算出されて、S10にリターンすることになる。
【0066】
その後、実モータ回転数の上昇が継続している場合は、
図3のS10、S20、S30の各処理がされ、S40で「NO」、S130で「NO」、S150〜S170でそれぞれ「NO」と判定されて、前回の制御周期で行われたS200の処理と同様にトルク指令値T
*が算出される。
【0067】
そして、次に、実モータ回転数の増加が停止して、減少を開始し、今回値が前回値よりも第1判定閾値以上に減少した場合、S10、S20で「NO」、S70で「YES」、S80の処理が順に行われる。
【0068】
ここで、S90での判定では、既にS60において、増加減少方向フラグが1に設定されているため、「YES」と判定されて、S100、S110の処理が行われて、
図4に示すS130に移行する。
【0069】
ここで、S50とS100において、前記検出回数カウンタはインクリメントされているため、そのカウント値は「2」となっている。
このため、S130では、「YES」と判定されて、S140において、車両振動の検出がされたこととなり、今回値を、今回制御周期以降においてトルクマップを参照する際に使用する固定値とする。
【0070】
そして、共振が生じている場合において、S150、S160及びS170ではそれぞれ「NO」と判定された場合、S200では、固定値とアクセル操作量に応じて、トルクマップが参照されてトルク指令値T
*が算出され、S10にリターンすることになる。
【0071】
その後、実モータ回転数が、さらに下降が継続している場合は、
図3のS10、S20で「NO」、S70で「YES」、S80、S90で「NO」、S130、S150〜S170でそれぞれ「NO」と判定されて、前回の制御周期で行われたS200の処理と同様にトルク指令値T
*が算出される。
【0072】
図5には、上記のように前記フローチャートを実行した場合の一例が示されている。
同図のAにおいて、トルク指令値と実モータ回転数とが共振した場合、Bにおいて車両振動が検出されると、車両振動が検出されたときの実モータ回転数が固定値とされて、この固定値がトルクマップに用いられる。
【0073】
この固定値とアクセル操作量に応じてトルクマップが参照されてトルク指令値が算出される。なお、
図5では、車両振動が検出された際のアクセル操作量が、前記検出後も同じ値としているため、前記固定値と前記アクセル操作量に応じて算出されるトルク指令値は、最初に算出された以降も継続して同じ値が算出されている。
【0074】
このようにトルクマップで使用されるモータ回転数が固定値とされると、固定値とされた以降は、
図5に示すように実モータ回転数の波状の変動が収まるように収束していく。
なお、ドライバーのアクセル操作に応じてアクセル操作量は変化するため、アクセル操作量に応じてトルク指令値も変化させることができる。このため、この場合においても、加速、減速を通常通り行うことも可能である。
【0075】
また、
図5では、Dのところでモータ回転数が0となっているため、
図4のS170で「YES」と判定されることにより、振動検出が解除されている。このため、D以降では、固定値が採用されずに、そのときどきに取得された実モータ回転数が採用されて、トルク指令値が増加している。
【0076】
なお、前記(トルク指令値T
*と実モータ回転数Nが共振の場合)では、その時々に取得される実モータ回転数Nが、波状に変化して谷部から上昇を開始し、今回値が前回値よりも第1判定閾値以上に増加した場合について説明した。
【0077】
これとは、反対に、その時々に取得される実モータ回転数Nが、波状に変化して頂部から下降を開始した場合において、トルク指令値T
*と実モータ回転数Nとの共振がある場合も、その共振による車両振動の解消が前記フローチャートで説明できることは自明であるため、説明を省略する。
【0078】
本実施形態によれば、以下のような効果を得ることができる。
(1)本実施形態の電気自動車の制御装置20は、駆動モータ10の実モータ回転数Nの増減の繰り返し回数に基づいて、車両振動の有無を判定する振動判定部26(判定部)を備える。また、トルク指令値算出部21は、振動判定部26(判定部)により車両振動が有ると判定された際、前記車両振動が有ると判定された際の実モータ回転数を固定値とし、その固定値とアクセル操作量に応じてトルクマップに基づいてトルク指令値を算出する。
【0079】
この結果、本実施形態によれば、制御系の応答を下げることなく、車両の継続振動を止めることができる。
すなわち、トルク指令値と実モータ回転数とが共振したときには、トルクマップに用いるモータ回転数の値を固定することで、継続振動の原因となる制御系の共振を止めることができる。このときにおいても、ドライバーのアクセル操作に応じてアクセル操作量は変化するため、アクセル操作量に応じてトルク指令値も変化させることができる。このため、この場合においても、加速、減速を通常通り行うことも可能である。
【0080】
(2)本実施形態の電気自動車の制御装置20では、第2モードで実行中のトルク指令値算出部21は、第2モードから第1モードへの遷移を許容する第1モード復帰条件が成立した場合には、第1モードに遷移する。この結果、本実施形態によれば、第1モード復帰条件が成立した場合には、実モータ回転数とアクセル操作量に応じてトルクマップを参照してトルク指令値を算出することができる。
【0081】
(3)本実施形態では、第1モード復帰条件の成立には、振動判定部26(判定部)の判定結果による車両振動が無いとされた継続時間が復帰許容値以上となった場合を含む。この結果、振動判定部26(判定部)の判定結果による車両振動が無いとされた継続時間が復帰許容値以上となった場合、実モータ回転数とアクセル操作量に応じてトルクマップに基づいてトルク指令値を算出することができる。
【0082】
(4)本実施形態では、第1モード復帰条件の成立には、制御周期毎に得られる実モータ回転数の今回値と、固定値のモータ回転数との絶対値の差が第2判定閾値以上になった場合を含む。
【0083】
この結果、制御周期毎に得られる実モータ回転数の今回値と、固定値のモータ回転数との絶対値の差が第2判定閾値以上になった場合に、実モータ回転数とアクセル操作量に応じてトルクマップに基づいてトルク指令値を算出することができる。
【0084】
すなわち、振動検出の解除条件として第2モード中に取得される実モータ回転数と固定値との絶対値の差が第2判定閾値以上になった場合、第1モードに復帰できる。
(5)本実施形態の第1モード復帰条件の成立には、今回値の実モータ回転数が0になった場合を含む。この結果、今回値の実モータ回転数が0になった場合、第1モードに復帰できる。
【0085】
なお、本実施形態は以下のように変更してもよい。
・前記実施形態のS170では、今回値が0か否かが判定されたが、今回値が、0以外の値、例えば、0<N<100rpmの低速回転数としてもよい。ただし、この値は例示であって、この数値に限定するものではない。
【0086】
・また、前記実施形態のS170において、さらに、今回値が規定値以上の値になった場合を、第1モード復帰条件としてもよい。例えば、1000rpm以上となった場合、第1モード復帰条件とする。なお、この数値は例示であって、限定されるものではなく、他の数値でもよい。この規定値は第3判定閾値に相当する。
【0087】
このように、今回値が規定値以上となった場合のように、振動検出の解除条件、すなわち、第1モード復帰条件に、回転数の条件を加えることにより、第2モードから第1モードへの切替えを働かせる回転数領域を容易に限定することもできる。
【0088】
・第1モード復帰条件は、前記実施形態に説明したS150、S160、S170の条件に限定されるものではない。例えば、駆動モータ10が、正転から逆転した場合を第1モード復帰条件としてもよい。また、この正転から逆転した場合を、S150、S160、S170の条件にさらに加えてもよい。
【0089】
・前記実施形態において、S150〜S170のうち、いずれか1つを省略してもよい。例えば、S170を省略してもよい。
・前記実施形態において、S150〜S170のうち、S150とS160、S150とS170、またはS160とS170のいずれか1つの組合せを省略してもよい。