モータに複数相交流を通電するインバータに含まれているスイッチング素子のモータロック発生時の温度を計算する装置であり、インバータに含まれている複数のスイッチング素子のうちの1つのスイッチング素子特定スイッチング素子の近傍に配置されている温度センサと、特定スイッチング素子へ通電中であってモータロックが生じていない期間に限定して温度センサの検出値に含まれる誤差を特定する誤差特定装置と、モータロックの発生を検出する装置と、モータロック発生時の温度センサの検出値と、誤差特定装置が特定した誤差から、モータロック発生時のスイッチング素子の温度を計算する装置と、を備えている素子温度計算装置。前記したように、インバータは複数個のスイッチング素子を備えており、それぞれのスイッチング素子を過熱から保護する必要がある。その一方において、通常は、インバータの全体に対して1個の温度センサが配置されているのに過ぎない。スイッチング素子と温度センサの位置関係は通電相によって異なっている。例えば、u相のプラス電流の通電時に大電流が流れるスイッチング素子通常はu相の上段スイッチング素子と温度センサが離れており、v相のマイナス電流の通電時に大電流が流れるスイッチング素子通常はv相の下段スイッチング素子と温度センサが接近しているといったことが生じる。その結果、温度センサが同一検出値を示していても、モータロックの発生時の通電相によって、モータロックが生じたために通電電流が持続的に流れ始める時の素子の温度は相違する。例えばu相のプラス電流の通電時にモータロックが発生したときに過熱から保護する必要がある素子のモータロック発生時温度と、v相のマイナス電流の通電時にモータロックが発生したときに過熱から保護する必要がある素子のモータロック発生時温度は相違する。前記に例示した場合、前者の素子は温度センサから遠く、後者の素子は温度センサから近いので、前者の素子に持続的電流が流れ始める時の素子温度は、後者の素子に持続的電流が流れ始める時の素子温度よりも、高いはずである。特許文献1の技術は、上記の問題を認識していない。そのためにスイッチング素子を保護するために安全サイドに立った条件設定が必要となり、スイッチング素子の過熱を防止するのにはまだ余力がある状態で、インバータに与えるトルク指令値を本来の値から制限してしまう。特許文献1の技術を走行用モータに適用した場合、スイッチング素子の能力を生かしきらないために登坂能力が不足するといった問題が発生する。本明細書では、モータロックが発生したために過熱から保護する必要が生じたスイッチング素子のモータロック発生時温度を正確に計算する技術を開示する。それによってスイッチング素子の能力を生かしきり、登坂能力が不足といった問題に対処する技術を開示する。本明細書では、モータに複数相交流を通電するインバータに含まれているスイッチング素子のモータロック発生時の温度を計算する装置を開示する。すなわち、モータが停止し、通電相が切換えられなくなり、同一のスイッチング素子に通電する期間が持続する状態が生じた時のスイッチング素子温度を計算する装置を開示する。モータロックは突然には生じない。モータの回転速度が低化し、さらに低化するプロセスを経てモータロックが生じる。本明細書では、モータが完全に停止しないまでも、極めて低回転であって、次の通電相への切換えがなかなか進まない状態も含めてモータロック現象という。1つの相への通電時間が後記する通電持続時間以上である状態を、モータロック状態という。モータロックを完全停止に限定しなくても、モータロックに至るに先立って、1つの相への通電時間が長時間化した期間があり、その期間の間に、通電中のスイッチング素子が急速に昇温する。本明細書では、急速に昇温している途中でモータロックが発生した時の素子温度を計算する技術を開示する。本明細書で開示する素子温度計算装置は、インバータに含まれている複数のスイッチング素子のうちの1つのスイッチング素子の近傍に配置されている温度センサを備えている。温度センサが近傍に配置されているスイッチング素子を本明細書では特定スイッチング素子という。本明細書で開示する素子温度計算装置は、特定スイッチング素子へ通電中であってモータロックが生じていない期間に限定して温度センサの検出値に含まれる誤差を特定する誤差特定装置と、モータロックの発生を検出する装置と、モータロック発生時の温度センサの検出値と誤差特定装置が特定した誤差から、モータロック発生時のスイッチング素子の温度を計算する装置を備えている。上記では、モータロックが生じていない間に温度センサで検出される値を用いる。モータロックが生じていない間は、特定のスイッチング素子に電力が持続的に流れる現象が生じておらず、全部のスイッチング素子がほぼ同一温度にあるということができる。上記したように、モータロックに至るに先立って、同一のスイッチング素子に通電し続ける期間があり、そのスイッチング素子が急激に昇温する期間がある。温度センサには応答遅れがあり、急激な昇温に追従できない。モータロックの直前期間では、温度センサの検出値に誤差が生じる。モータロックの直前期間では、同一のスイッチング素子に通電し続ける時間が長くなるという要素と、通電時間が長期化したスイッチング素子が切換えられていくまだロックされていないからという両要素が作用する。温度センサの検出値に生じる誤差には、通電時間が長期化したために通電中のスイッチング素子の温度が急速に昇温することに温度センサが追従できないことから生じる誤差と、スイッチング素子の昇温が温度センサに伝熱するのに時間を要することから生じる誤差が重複する。後者の誤差は、昇温しているスイッチング素子と温度センサの位置関係に依存する。温度センサが近傍に配置されている特定スイッチング素子に通電されている期間では、後者の誤差が小さいと予想される。それに対し、温度センサが近傍に配置されていない非特定スイッチング素子に通電されている期間では、後者の誤差が大きいと予想される。本明細書に記載の技術では、後者の誤差の影響をできるだけ取り除き、前者の誤差を知る。例えば、v相用素子の近傍に温度センサが配置されており、u相用素子とw相用素子は温度センサから離反しているとする。この場合、v相用素子への通電中に温度センサで検出される検出値には、主として前者の誤差が含まれる。これに対し、u相用素子とw相用素子への通電中に温度センサで検出される検出値には、後者の誤差まで含まれる。v相用素子の急速昇温に起因する温度センサ検出値に含まれる誤差を知ることができれば、温度センサ検出値から急速昇温中のv相用素子の温度を計算することができる。このとき、後者の誤差に影響されないようする必要がある。u相用素子の急速昇温に起因する誤差や、w相用素子の急速昇温に起因する誤差が影響すると、後者の誤差が影響し、急速昇温中のv相用素子の温度を計算することができない。本明細書に開示の技術では、モータロックが生じていないというだけでなく、温度センサが近傍に配置されている特定スイッチング素子へ通電中であるという期間に限定して誤差の大きさを計算する。誤差の大きさを知るためには、急速に昇温している素子温度を知る必要がある。その技術は、例えば特開2004-257821号公報に記載の素子温度計算技術を用いることができる。あるいは、応答速度が極めて速い温度センサを用いて実際に計測しておいてもよい。本明細書に開示の技術では、特定スイッチング素子へ通電中である期間に限定して誤差の大きさを計算するために、モータロックに先立って生じるスイッチング素子の急速な昇温に温度センサが追従できないことから生じる誤差の値を知ることができる。モータロックの直前期間に生じる昇温は、通電相が切換えられていくために、u相用素子もv相用素子もw相用素子もほぼ同様に昇温する。特定スイッチング素子がv相用スイッチング素子である場合、v相通電中にモータロックが発生する場合だけでなく、u相通電中にモータロックが発生する場合でもw相通電中にモータロックが発生する場合でも、モータロック発生時の素子温度を計算することができる。特定スイッチング素子以外のスイッチング素子の通電中にモータロック発生した場合にも、モータロック発生時に通電していた素子のモータロック発生時温度を計算することができる。本技術によると、急速な昇温に追従できない温度センサの指示値から、モータロック発生時の素子温度を計算することが可能となる。モータロック発生時の素子温度が判明すれば、様々な保護技術を用いることができる。例えば、モータロック後に連続して通電してもよい電流値と通電持続時間の関係を示すマップを備えており、通電持続時間までは必要電流を通電する技術が知られている。この場合、モータロック発生時の素子温度によって通電持続時間が相違する。従来は、モータロック発生時の素子温度を知ることができなかったので、モータロック発生時の素子温度が高温であるものとして通電持続時間を決定しておくほかはなかった。このために、実際にはモータロック発生時の素子温度が低く、もっと長く必要電流の通電を持続しても素子が過熱しないにもかかわらず、早めに通電電流を制限していた。これが例えば走行用モータの能力を制約し、登坂能力を低下させていた。本明細書に開示されている技術によると、モータロック発生時の素子温度を計算することが可能となる。モータロック後に通電可能な電力はモータロック発生時の素子温度に依存して変化することから、モータロック発生時の素子温度が判明すれば、その後に通電可能な電力量を過不足なく利用することが可能となる。モータロックが発生しやすい登坂時等に、駆動力が無用に制約されることがなくなり、登坂能力が改善される。下記に説明する実施例の主要な特徴を列記する。特徴1:インバータは3相交流を供給する。特徴2:モータは車両を走行させるモータである。図1は、モータ12とインバータ8とインバータ制御装置10を備えている駆動力発生装置を示している。インバータは、u相用上段スイッチング素子1と、u相用下段スイッチング素子2と、v相用上段スイッチング素子3と、v相用下段スイッチング素子4と、w相用上段スイッチング素子5と、w相用下段スイッチング素子6を備えている。インバータ制御装置10は、スイッチング素子1~6を異なるタイミングでオンオフさせ、3相交流を生成してモータ12に通電する。インバータ制御装置10は、3相交流が生成されるようにスイッチング素子1~6をオンオフする制御に加えて、各相の電流がサイン波を描くようにスイッチング素子1~6をディーティ比制御する。図2は、インバータ8がモータ12に通電するv相の電流波形を例示している。u相の電流波形はv相の電流波形よりも120°進んだ位相で変化し、w相の電流波形はv相の電流波形よりも120°遅れた位相で変化する。v相用下段スイッチング素子4の近傍に温度センサが配置されている。v相用下段スイッチング素子4が特定スイッチング素子である。スイッチング素子1~6は、ターンオンする瞬間、オンしている期間、及びターンオフする瞬間等に発熱する。スイッチング素子1~6が過熱しないように、スイッチング素子1~6は共通の冷却装置に取り付けられている。モータ12が高速回転していると、オンしているスイッチング素子が高速に切換えられ、スイッチング素子1~6の温度はほぼ等しい。モータに掛かる負荷が増大すると、インバータ制御装置10はインバータ8に大きなトルク指令値を指示する。その結果、オンしているスイッチング素子のディーティ比が増大する。モータに掛かる負荷がさらに増大すると、オンしているスイッチング素子の切換えが低速化し、同一スイッチング素子に通電電流が流れ続ける時間が増大する。その結果、通電中のスイッチング素子は急速に昇温する。同一スイッチング素子に通電電流が流れ続けるという用語は、通電相が切換えられるまでの時間を言い、実際にはその間もデューティ比を制御するためのオンオフが繰り返されている。ディーティ制御のために断続的に繰り返されるオフをも含めて、同一スイッチング素子に通電電流が流れ続ける時間という。図1において、図示14はモータ12の回転角を検出するレゾルバであり、その検出値に基づいて制御装置10は、電気角を決定し、通電相を決定する。図示18は、インバータ8を冷却する冷却水の温度センサである。図示16は、モータロック発生時の素子温度を計算する装置であり、計算結果を制御装置10に伝達する。モータロック発生時の素子温度計算装置16は、制御装置10内に形成してもよい。すなわち、制御装置10が備えている演算装置で、モータロック発生時の素子温度を計算するようにしてもよい。図3は、モータロック発生時の素子温度計算装置16が実行する処理内容を示している。図3の処理は短時間間隔で繰り返し実行される。ステップS2では、モータ12の回転数が、図4の範囲R2内にあるか否かを判定する。図4の範囲R1は、モータロック中の回転数に対応する。すなわち範囲R2は、非ロック中であることに対応する。本実施例では、モータ回転数がYrpm以上であれば、処理を終了して再び処理を開始するタミングとなるのを待つ。これに代えて、モータ回転数がYrpm以上であってもステップS6からS14の処理を実施してもよい。S6からS14の処理で求める誤差が実際に利用されるのは、ステップS4でモータロック中と判別されたときである。ステップS4でモータロック中と判別されるのに先立って、モータ回転数がYrpm以下に低下する期間が存在する。モータ回転数がYrpm以上の間もステップS6からS14の処理を実施しても問題は生じない。モータ回転数がYrpm以上の間はステップS6からS14の処理を実施する意味がないことから、本実施例の処理が採用されているのであり、モータ回転数がYrpm以上の間はステップS6からS14の処理を実施しないことが必要なわけでない。本実施例では、モータ12の回転数が低下してYrpm以下に低下すると、ステップS6以降が実施される。ただしまだモータロックは生じていない段階である。ステップS6では、電気角が特定スイッチング素子4へ通電する範囲内か否かを判定する。特定スイッチング素子4は、図2のv相マイナス電流を決定する素子であり、電気角がP1の範囲内にあれば、ステップS6の判定結果はYESとなり、P1以外であればNOとなる。特定スイッチング素子が1であればu相プラス電流の通電期間、特定スイッチング素子が2であればu相マイナス電流の通電期間、特定スイッチング素子が3であればv相プラス電流の通電期間、特定スイッチング素子が4であればv相マイナス電流の通電期間P1、特定スイッチング素子が5であればw相プラス電流の通電期間、特定スイッチング素子が6であればw相マイナス電流の通電期間に限って、ステップS6の判定結果はYESとなり、ステップS8以降の処理が実行される。ステップS6の判定結果はNOとなれば、ステップS8以降の処理を実行せず、テップS6の判定結果がYESとなるのを待つ。ステップS8では、特定スイッチング素子4の推定温度と、温度センサ7の検出値を取得する。特定スイッチング素子4の推定温度は、例えば特開2004257821号公報に記載の技術で得ることができる。モータ12の回転数がYrpm以下に低下していると、u相マイナス電流の通電期間P1が長期化し、特定スイッチング素子4は急激に昇温する。この結果、温度センサ7の検出値は実際の素子温度に追従できない。両者間に差異が生じる。ステップS10では、その場合の推定誤差αを求める。ステップS12では、ステップS10で求めた推定誤差αを移動平均して、平均値を更新する。すなわち、直前の10回の処理で計算された推定誤差αを平均したものを新たな平均値とする。ステップS14では、そのときの温度センサ7の検出値に、ステップS12で計算しておいた誤差を加えて、モータロック発生の素子温度を求める。ステップS6からS14の処理をモータ12の回転数がYrpm以上の場合にも実行したとしても、ステップS12で直前の10回の移動平均を計算することから、推定誤差の値はモータロックの発生直前における誤差となる。ステップS14で、モータロック発生の素子温度を求めることができる。モータロックの発生直前における誤差は、特定スイッチング素子4の急激な昇温に温度センサ7が追従できないことから生じる誤差である。この誤差は、スイッチング素子1~3と5~6のいずれに温度センサを配置しても、生じる誤差である。また、モータロック発生時の通電相に係わらずに発生する誤差である。例えば、u相プラス電流の通電期間にモータロックが発生する場合でも、u相マイナス電流の通電期間にモータロックが発生する場合でも、v相プラス電流の通電期間にモータロックが発生する場合でも、v相マイナス電流の通電期間にモータロックが発生する場合でも、w相プラス電流の通電期間にモータロックが発生する場合でも、w相マイナス電流の通電期間にモータロックが発生する場合でも、モータロック発生まえには、同一のスイッチング素子への通電時間が長期化する現象がどの相においても生じている。上記の誤差を用いれば、モータロックの発生時における通電相に影響されることなく、モータロックの発生時において通電している素子の温度を計算することができる。これに対して、ステップS6の制約を設けないと、モータロックの発生直前のスイッチング素子1~3と5~6の急激な昇温に起因して温度センサ7の検出値に生じる誤差まで計算してしまう。スイッチング素子1~3と5~6は温度センサ7から離れた位置にあり、これを用いると、モータロックの発生時において通電している素子の温度を計算することができなくなってしまう。図3のステップS4では、モータ12の回転数が、図4の範囲R1内にあるか否かを判定する。図4の範囲R1は、モータロック中の回転数に対応する。ステップS4はモータロックの発生を監視する処理に相当する。ステップS16では、そのときの温度センサ7の検出値に代えて、ステップS14で計算しておいたモータロック発生時の素子温度を用いる。以後の処理制御装置10で実行されるでは、温度センサ7の検出値に代えてステップS14で計算しておいたモータロック発生時の素子温度が用いられる。制御装置10は、車両の状態から、モータロック発生後に必要なトルク指令値を決定し、そのトルクを発生させる通電電流値の大きさを決定して通電する。運転者が、ロック状態にあるモータの発生トルクを増大させて登坂を望んでいる場合には、登坂に必要なトルクが得られるように通電する。モータロック中は同一のスイッチング素子に通電し続ける時間が長くなり、そのスイッチング素子が過熱されやすい。そこで、過熱を避けるために、通電持続時間の上限が決められている。図5がその一例を示している。横軸は通電電流の大きさを示し、原点ゼロから左右に離れるのに従って、通電電流の絶対値は増大する。縦軸は、通電持続時間の上限を示し、通電電流の絶対値が大きいほど短い。従来は、モータロック発生時の素子温度を計算することできないために、モータロック発生時の素子温度が高温であるとして図5のマップは用意されている。モータロック発生時の素子温度が低温であれば、図5のマップに定める通電持続時間以上に亘って通電しても素子が過熱しない場合があるにも係わらず、一様に図5のマップを利用していた。その問題を解決するために、本実施例では、ステップS20で図5のマップから通電持続時間を算出した後に、ステップS22で、モータロック発生時の素子温度に従って通電持続時間の補正時間を算出する。図6は、ステップS22で用いる補正時間T11のマップを例示している。補正時間T11とモータロック発生時の素子温度が対応付けて記憶されている。素子温度が低い状態でモータロックが発生すれば、その後の通電持続時間を長くしても過熱を防止できることから、正の補正時間Aが記憶されている。素子温度が高い状態でモータロックが発生すれば、その後の通電持続時間を短くしないと過熱を防止できないことから、負の補正時間-Aが記憶されている。ステップS24は、補正時間を加味して実際の通電持続時間の上限を求める処理に実施する。図5の破線は、補正後の通電持続時間を示している。この補正時間を用いることで、素子の過熱を防止する範囲で、素子の能力を最大限に発揮することが可能となる。ステップS26では、補正した通電持続時間が経過したか否かを判別する。経過すれば、素子を過熱から保護する必要が生じたことに相当するので、例えばトルク指示値を低下させるなどの保護制御に移行する。本実施例では、モータロック発生時の素子温度から補正時間T11を求め、それを加えた通電持続時間を用いるために、従来ならステップS26がYESとなってしまうような場合でも、YESとならないうちにモータロック現象を打破して登坂するといったことが可能となる。登坂性能が向上する。以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。