(57)【要約】【課題】トルクリップルを抑制し得るモータ制御装置およびモータ制御方法を提供する。【解決手段】電気式動力舵取装置のデッドタイム補償制御によると、 (1)ＰＷＭ制御に対する電圧指令値Ｖu*,Ｖv*,Ｖw*と (2)インバータ５６の出力電圧値Ｖｕ,Ｖｖ,Ｖｗと (3)直流電源Ｂatt の直流電源電圧値Ｖｂと (4)電流指令値Ｉu*,Ｉv*,Ｉw*または出力電流値Ｉｕ,Ｉｖ,Ｉｗの少なくとも一方と、に基づいて、デッドタイム補償制御手段５２ｑによるデッドタイム補償量DTUp,DTUm,DTVp,DTVm,DTWp,DTWmをデッドタイム補償値演算手段５２ｐにより求める。【選択図】  図３
2004201414.tif 000002
【特許請求の範囲】
【請求項１】
直流電源から供給される電力をＰＷＭ制御されるインバータを介してモータに供給し、該モータに流れる前記インバータの出力電流を帰還制御により制御するとともに、前記インバータを構成するスイッチング回路のアーム短絡を防止するデッドタイムにおけるＰＷＭ制御に対する電圧指令値と前記インバータの出力電圧値との差を補償するデッドタイム補償制御を行うモータ制御装置であって、
(1)ＰＷＭ制御に対する電圧指令値と (2)前記インバータの出力電圧値と (3)前記直流電源から出力される電源電圧値と (4)前記ＰＷＭ制御に対する指令電流値または前記インバータの出力電流値の少なくとも一方と、に基づいて、前記デッドタイム補償制御によるデッドタイム補償量を求めるデッドタイム補償量演算手段を備えたことを特徴とするモータ制御装置。
【請求項２】
前記デッドタイム補償量演算手段は、
前記 (4)の指令電流値または出力電流値の電流方向の正負双方向について、それぞれ個別に前記デッドタイム補償量を求めることを特徴とする請求項１記載のモータ制御装置。
【請求項３】
前記デッドタイム補償量演算手段は、
前記 (4)の指令電流値または出力電流値の電流方向が正のときには正方向所定電流を上回る場合に前記デッドタイム補償量を求めるとともに、
前記 (4)の指令電流値または出力電流値の電流方向が負のときには負方向所定電流を下回る場合に前記デッドタイム補償量を求めることを特徴とする請求項２記載のモータ制御装置。
【請求項４】
前記デッドタイム補償量演算手段は、
前記 (1)の電圧指令値、前記 (2)の出力電圧値、前記 (3)の電源電圧値および前記 (4)の指令電流値または出力電流値に基づいて求めた複数のデッドタイム補償量の平均値を、前記デッドタイム補償量として求めることを特徴とする請求項１〜３のいずれか一項に記載のモータ制御装置。
【請求項５】
前記デッドタイム補償制御は、
前記インバータを駆動制御するＰＷＭ信号に、前記ＰＷＭ制御に対する電圧指令値に基づいた前記デッドタイム補償量を加算することを特徴とする請求項１〜４のいずれか一項に記載のモータ制御装置。
【請求項６】
前記デッドタイム補償制御は、
前記インバータを駆動制御するＰＷＭ信号に、前記インバータの出力電流値に基づいた前記デッドタイム補償量を加算することを特徴とする請求項１〜４のいずれか一項に記載のモータ制御装置。
【請求項７】
前記デッドタイム補償制御は、
前記インバータを駆動制御するＰＷＭ信号に、前記ＰＷＭ制御に対する指令電流値に基づいた前記デッドタイム補償量を加算することを特徴とする請求項１〜４のいずれか一項に記載のモータ制御装置。
【請求項８】
前記デッドタイム補償量演算手段は、
前記デッドタイム補償量として、前記インバータを駆動制御するＰＷＭ信号のデューティ比を求めることを特徴とする請求項１〜７のいずれか一項に記載のモータ制御装置。
【請求項９】
前記デッドタイム補償量演算手段は、前記モータの起動後に前記デッドタイム補償量を求めることを特徴とする請求項１〜８のいずれか一項に記載のモータ制御装置。
【請求項１０】
請求項９に記載のモータ制御装置において、
前記デッドタイム補償量演算手段は、前記モータの起動後、所定周期ごとに前記デッドタイム補償量を求めることを特徴とするモータ制御装置。
【請求項１１】
前記デッドタイム補償量演算手段は、当該モータ制御装置の出荷前において前記デッドタイム補償量を求め当該デッドタイム補償量に係るデータをコンピュータ読み取り可能な記録媒体に記録し、
当該モータ制御装置の出荷後においては前記記録媒体から読み出された前記デッドタイム補償量に係るデータに基づいて前記デッドタイム補償制御が行われることを特徴とする請求項１〜８のいずれか一項に記載のモータ制御装置。
【請求項１２】
請求項１１に記載のモータ制御装置において、
前記デッドタイム補償量演算手段は、前記モータの起動後、所定周期ごとに前記デッドタイム補償量を求めることを特徴とするモータ制御装置。
【請求項１３】
前記デッドタイム補償量演算手段により求められた前記デッドタイム補償量が所定範囲内にあるか否かを判断する補償量範囲判断手段を備え、
前記補償量範囲判断手段により前記デッドタイム補償量が所定範囲内にないと判断された場合には、前記デッドタイム補償量演算手段により再度、デッドタイム補償量を求めることを特徴とする請求項１〜１２のいずれか一項に記載のモータ制御装置。
【請求項１４】
前記コンピュータ読み取り可能な記録媒体から前記デッドタイム補償量に係るデータを正常に読み出せたか否かを判断する読み出し正常終了判断手段を備え、
前記読み出し正常終了判断手段により前記データを正常に読み出せなかったと判断された場合には、既定の所定データに基づいて前記デッドタイム補償制御が行われることを特徴とする請求項１１または１２に記載のモータ制御装置。
【請求項１５】
操舵状態検出手段により検出された操舵状態に基づいて、モータを駆動して操舵をアシストする電気式動力舵取装置において、
請求項１〜１４のいずれか一項に記載のモータ制御装置によって前記モータの駆動制御を行うことを特徴とする電気式動力舵取装置。
【請求項１６】
直流電源から供給される電力をＰＷＭ制御されるインバータを介してモータに供給し、該モータに流れる前記インバータの出力電流を帰還制御により制御するとともに、前記インバータを構成するスイッチング回路のアーム短絡を防止するデッドタイムにおけるＰＷＭ制御に対する電圧指令値と前記インバータの出力電圧値との差を補償するデッドタイム補償制御を行うモータ制御方法であって、
(1)ＰＷＭ制御に対する電圧指令値と (2)前記インバータの出力電圧値と (3)前記直流電源から出力される電源電圧値と (4)前記ＰＷＭ制御に対する指令電流値または前記インバータの出力電流値の少なくとも一方と、に基づいて、前記デッドタイム補償制御によるデッドタイム補償量を求めるデッドタイム補償量演算ステップを含むことを特徴とするモータ制御方法。
【請求項１７】
前記デッドタイム補償量演算ステップは、
前記 (4)の指令電流値または出力電流値の電流方向の正負双方向について、それぞれ個別に前記デッドタイム補償量を求めることを特徴とする請求項１６記載のモータ制御方法。
【請求項１８】
前記デッドタイム補償量演算ステップは、
前記 (4)の指令電流値または出力電流値の電流方向が正のときには正方向所定電流を上回る場合に前記デッドタイム補償量を求めるとともに、
前記 (4)の指令電流値または出力電流値の電流方向が負のときには負方向所定電流を下回る場合に前記デッドタイム補償量を求めることを特徴とする請求項１７記載のモータ制御方法。
【請求項１９】
前記デッドタイム補償量演算ステップは、
前記 (1)の電圧指令値、前記 (2)の出力電圧値、前記 (3)の電源電圧値および前記 (4)の指令電流値または出力電流値に基づいて求めた複数のデッドタイム補償量の平均値を、前記デッドタイム補償量として求めることを特徴とする請求項１６〜１８のいずれか一項に記載のモータ制御方法。
【請求項２０】
前記デッドタイム補償制御は、
前記インバータを駆動制御するＰＷＭ信号に、前記ＰＷＭ制御に対する電圧指令値に基づいた前記デッドタイム補償量を加算することを特徴とする請求項１６〜１９のいずれか一項に記載のモータ制御方法。
【請求項２１】
前記デッドタイム補償制御は、
前記インバータを駆動制御するＰＷＭ信号に、前記インバータの出力電流値に基づいた前記デッドタイム補償量を加算することを特徴とする請求項１６〜１９のいずれか一項に記載のモータ制御方法。
【請求項２２】
前記デッドタイム補償制御は、
前記インバータを駆動制御するＰＷＭ信号に、前記ＰＷＭ制御に対する指令電流値に基づいた前記デッドタイム補償量を加算することを特徴とする請求項１６〜１９のいずれか一項に記載のモータ制御方法。
【請求項２３】
前記デッドタイム補償量演算ステップは、
前記デッドタイム補償量として、前記インバータを駆動制御するＰＷＭ信号のデューティ比を求めることを特徴とする請求項１６〜２２のいずれか一項に記載のモータ制御方法。
【請求項２４】
前記デッドタイム補償量演算ステップは、前記モータの起動後に前記デッドタイム補償量を求めることを特徴とする請求項１６〜２３のいずれか一項に記載のモータ制御方法。
【請求項２５】
請求項２４に記載のモータ制御方法において、
前記デッドタイム補償量演算ステップは、前記モータの起動後、所定周期ごとに前記デッドタイム補償量を求めることを特徴とするモータ制御方法。
【請求項２６】
前記デッドタイム補償量演算ステップは、当該モータ制御方法により制御されるモータ制御装置の出荷前において前記デッドタイム補償量を求め当該デッドタイム補償量に係るデータをコンピュータ読み取り可能な記録媒体に記録し、
前記モータ制御装置の出荷後においては前記記録媒体から読み出された前記デッドタイム補償量に係るデータに基づいて前記デッドタイム補償制御が行われることを特徴とする請求項１６〜２３のいずれか一項に記載のモータ制御方法。
【請求項２７】
請求項２６に記載のモータ制御方法において、
前記デッドタイム補償量演算ステップは、前記モータの起動後、所定周期ごとに前記デッドタイム補償量を求めることを特徴とするモータ制御方法。
【請求項２８】
前記デッドタイム補償量演算ステップにより求められた前記デッドタイム補償量が所定範囲内にあるか否かを判断する補償量範囲判断ステップを含み、
前記補償量範囲判断ステップにより前記デッドタイム補償量が所定範囲内にないと判断された場合には、前記デッドタイム補償量演算ステップにより再度、デッドタイム補償量を求めることを特徴とする請求項１６〜２７のいずれか一項に記載のモータ制御方法。
【請求項２９】
前記コンピュータ読み取り可能な記録媒体から前記デッドタイム補償量に係るデータを正常に読み出せたか否かを判断する読み出し正常終了判断ステップを備え、
前記読み出し正常終了判断ステップにより前記データを正常に読み出せなかったと判断された場合には、既定の所定データに基づいて前記デッドタイム補償制御が行われることを特徴とする請求項２６または２７に記載のモータ制御方法。
【請求項３０】
操舵状態検出手段により検出された操舵状態に基づいて、モータを駆動して操舵をアシストする電気式動力舵取装置において、
請求項１６〜２９のいずれか一項に記載のモータ制御方法によって前記モータの駆動制御を行うことを特徴とする電気式動力舵取装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、インバータ駆動されるモータのデッドタイム補償制御を行うモータ制御装置、モータ制御方法および電気式動力舵取装置に関するものである。
【０００２】
【従来の技術】
インバータ駆動されるモータのデッドタイム補償制御に関する従来技術として例えば、特許文献１、２に開示されるものがある。またこれらに関する技術、あるいはこれに類する技術として例えば次の(イ) 、(ロ) に挙げられるものがある。
【０００３】
即ち、図１８に示すように、電気式動力舵取装置の操舵機構１００に内蔵されるモータに対してＰＩ制御系を構成しているものにおいては、当該モータに流れるインバータ９７の出力電流Ｉu,Ｉv,Ｉw を３相２相変換処理９８によりｑ軸の出力電流Ｉq およびｄ軸の出力電流Ｉd に変換し、この変換された出力電流Ｉq,Ｉd とアシスト制御処理９２から出力されるｄ軸、ｑ軸それぞれの電流指令値Ｉq*,Ｉd* との偏差をＰＩ制御ループにフィードバックさせる。これにより、ＰＩ制御処理９３、９４からは当該フィードバック制御されたｄ軸、ｑ軸それぞれの電圧指令値Ｖq*,Ｖd* が出力されるので、これを２相３相変換処理９５により３相の電圧指令値Ｖu*,Ｖv*,Ｖw*に変換してＰＷＭ変換処理９６を介してインバータ９７にＰＷＭ信号ＰＷＭu*,ＰＷＭv*,ＰＷＭw*を出力することで、当該モータのＰＷＭ制御を可能にしている。なお、アシスト制御処理９２には、ステアリングホイールによる操舵状態を検出する信号として、操舵機構１００に内蔵されるトルクセンサから位相補償処理９１を介してトルク信号Ｔｓが入力されるので、アシスト制御処理９２はこのトルク信号Ｔｓに基づいてｑ軸の電流指令値Ｉq*およびｄ軸の電流指令値Ｉd*を生成している。
【０００４】
電気式動力舵取装置のモータに対するＰＩ制御は、概ねこのように行われるが、当該モータのデッドタイム補償制御として、(イ) 上述したＰＩ制御の電流ループの応答性を上げるもの、(ロ) インバータ９７に出力するＰＷＭ信号ＰＷＭu*, ＰＷＭv*,ＰＷＭw* に予め所定値（例えば中央値）に設定されたデッドタイム補償量を加えるもの、等がある。なお、図１８に示す位相補償処理９１、アシスト制御処理９２、ＰＩ制御処理９３、９４、２相３相変換処理９５等や(イ) 、(ロ) によるデッドタイム補償制御処理等は、電気式動力舵取装置を制御する制御装置のマイクロコンピュータ（以下「マイコン」という。）により行われている。
【０００５】
【特許文献１】
特開２００２−９５２６２号公報（第２頁〜第５頁、図１）
【特許文献２】
特開平９−８４３８５号公報（第２頁、第３頁、図１）
【０００６】
【発明が解決しようとする課題】
しかしながら、前述した(イ) や(ロ) に示すデッドタイム補償制御によると、それぞれ以下のような問題点がある。
前記(イ) の「ＰＩ制御の電流ループの応答性を上げることでデッドタイム補償制御を行うもの」では、ループゲインを上げることにより増加するノイズ成分によってＰＩ制御されるモータが振動音を発生し易くなる。そのため、例えば、車両の電気式動力舵取装置のように当該モータが比較的車室内の乗員に近いところに位置している等、当該モータに発生する異音を抑制する必要がある場合には、デッドタイム補償制御を十分に行い得る程度には、電流ループの応答性を上げることができないという問題点がある。
【０００７】
前記(ロ) の「インバータ９７に出力するＰＷＭ信号ＰＷＭu*,ＰＷＭv*,ＰＷＭw*に予め所定値（例えば中央値）に設定されたデッドタイム補償量を加えるもの」では、デッドタイム補償量が所定値に固定されている。そのため、インバータ９７を構成するスイッチング素子の電気的特性にバラツキがある場合には、たとえそのようなバラツキの中央値に所定値を設定したとしても、当該スイッチング素子の経年変化や温度特性までをも考慮すると、実際には当該電気的特性の変動幅を十分にカバーした補償制御までは行うことはできないという問題点がある。
【０００８】
本発明は、上述した課題を解決するためになされたものであり、その目的とするところは、トルクリップルを抑制し得るモータ制御装置およびモータ制御方法を提供することにある。
また、本発明の別の目的は、トルクリップルによる異音や振動の発生を抑制し得る電気式動力舵取装置を提供することにある。
【０００９】
【課題を解決するための手段および発明の作用・効果】
上記目的を達成するため、請求項１のモータ制御装置では、直流電源から供給される電力をＰＷＭ制御されるインバータを介してモータに供給し、該モータに流れる前記インバータの出力電流を帰還制御により制御するとともに、前記インバータを構成するスイッチング回路のアーム短絡を防止するデッドタイムにおけるＰＷＭ制御に対する電圧指令値と前記インバータの出力電圧値との差を補償するデッドタイム補償制御を行うモータ制御装置であって、 (1)ＰＷＭ制御に対する電圧指令値と (2)前記インバータの出力電圧値と (3)前記直流電源から出力される電源電圧値と (4)前記ＰＷＭ制御に対する指令電流値または前記インバータの出力電流値の少なくとも一方と、に基づいて、前記デッドタイム補償制御によるデッドタイム補償量を求めるデッドタイム補償量演算手段を備えたことを技術的特徴とする。
【００１０】
また、請求項１６のモータ制御方法では、直流電源から供給される電力をＰＷＭ制御されるインバータを介してモータに供給し、該モータに流れる前記インバータの出力電流を帰還制御により制御するとともに、前記インバータを構成するスイッチング回路のアーム短絡を防止するデッドタイムにおけるＰＷＭ制御に対する電圧指令値と前記インバータの出力電圧値との差を補償するデッドタイム補償制御を行うモータ制御方法であって、 (1)ＰＷＭ制御に対する電圧指令値と (2)前記インバータの出力電圧値と (3)前記直流電源から出力される電源電圧値と(4)前記ＰＷＭ制御に対する指令電流値または前記インバータの出力電流値の少なくとも一方と、に基づいて、前記デッドタイム補償制御によるデッドタイム補償量を求めるデッドタイム補償量演算ステップを含むことを技術的特徴とする。
【００１１】
請求項１および請求項１６の発明によると、 (1)ＰＷＭ制御に対する電圧指令値と (2)インバータの出力電圧値と (3)直流電源から出力される電源電圧値と (4)ＰＷＭ制御に対する指令電流値またはインバータの出力電流値の少なくとも一方と、に基づいて、デッドタイム補償制御によるデッドタイム補償量を求める。例えば、Ｕ相、Ｖ相、Ｗ相からなる３相のうちのＵ相の (1)の電圧指令値をＶu*、 (2)の出力電圧値をＶｕ、 (3)の電源電圧値をＶｂとすると、当該Ｕ相の電圧偏差ΔＶｕは（ΔＶｕ＝Ｖu*−（Ｖｕ−Ｖｂ／２））により求め、この電圧偏差ΔＶｕと (4)の指令電流値Ｉu*または出力電流値Ｉｕによる電流方向とに基づいて当該Ｕ相のデッドタイム補償量を求める。同様にＶ相、Ｗ相についてもデッドタイム補償量を求める。
【００１２】
これにより、実際に、インバータから出力される (2)の出力電圧値に基づいて(1)の電圧指令値と偏差を求めることから、インバータのスイッチング回路を構成するスイッチング素子ごとに相違し得る電気的特性（例えばターンオン時間やターンオフ時間等）を当該デッドタイム補償量に反映させることができる。また当該スイッチング回路を構成するスイッチング素子以外の能動素子および受動素子や、インバータを構成するスイッチング回路以外の回路部品（例えば能動素子、受動素子等）ごとに相違し得る電気的特性も当該デッドタイム補償量に反映させることができる。つまり、当該スイッチング素子等ごとにバラツキのある電気的特性の差異や経年変化や温度特性による電気的特性の変動等を考慮したデッドタイム補償制御を行うことができる。したがって、スイッチング素子等の電気的特性に対応させてデッドタイムにおけるトルクリップルを減少させることができるので、トルクリップルによる異音や振動の発生を抑制することができる。
【００１３】
請求項２のモータ制御装置では、請求項１に記載のモータ制御装置において、前記デッドタイム補償量演算手段は、前記 (4)の指令電流値または出力電流値の電流方向の正負双方向について、それぞれ個別に前記デッドタイム補償量を求めることを技術的特徴とする。
【００１４】
また、請求項１７のモータ制御方法では、請求項１６に記載のモータ制御方法において、前記デッドタイム補償量演算ステップは、前記 (4)の指令電流値または出力電流値の電流方向の正負双方向について、それぞれ個別に前記デッドタイム補償量を求めることを技術的特徴とする。
【００１５】
請求項２および請求項１７の発明によると、 (4)の指令電流値または出力電流値の電流方向の正負双方向について、それぞれ個別にデッドタイム補償量を求める。例えば、Ｕ相、Ｖ相、Ｗ相からなる３相のうちのＵ相の、 (4)の指令電流値Ｉu*または出力電流値Ｉｕによる電流方向の正負双方向についてそれぞれ個別にデッドタイム補償量を求める。同様にＶ相、Ｗ相についてもデッドタイム補償量を求める。これにより、インバータを駆動するＰＷＭ信号の立ち上がりタイミングおよび立ち下がりタイミングの双方についてデッドタイム補償量を個別に求めることができるので、当該ＰＷＭ信号の立ち上がりにおけるデッドタイム補償量と、当該ＰＷＭ信号の立ち下がりにおけるデッドタイム補償量と、が異なる場合であっても、双方個別にデッドタイムにおけるトルクリップルを減少させることができる。したがって、ＰＷＭ信号の立ち上がりおよび立ち下がりにおけるスイッチング素子の電気的特性（例えばターンオン時間やターンオフ時間等）が異なる場合においても、トルクリップルによる異音や振動の発生を抑制することができる。
【００１６】
請求項３のモータ制御装置では、請求項２に記載のモータ制御装置において、前記デッドタイム補償量演算手段は、前記 (4)の指令電流値または出力電流値の電流方向が正のときには正方向所定電流を上回る場合に前記デッドタイム補償量を求めるとともに、前記 (4)の指令電流値または出力電流値の電流方向が負のときには負方向所定電流を下回る場合に前記デッドタイム補償量を求めることを技術的特徴とする。
【００１７】
また、請求項１８のモータ制御方法では、請求項１７に記載のモータ制御方法において、前記デッドタイム補償量演算ステップは、前記 (4)の指令電流値または出力電流値の電流方向が正のときには正方向所定電流を上回る場合に前記デッドタイム補償量を求めるとともに、前記 (4)の指令電流値または出力電流値の電流方向が負のときには負方向所定電流を下回る場合に前記デッドタイム補償量を求めることを技術的特徴とする。
【００１８】
請求項３および請求項１８の発明によると、 (4)の指令電流値または出力電流値の電流方向が正のときには正方向所定電流を上回る場合にデッドタイム補償量を求めるとともに、 (4)の指令電流値または出力電流値の電流方向が負のときには負方向所定電流を下回る場合にデッドタイム補償量を求める。これにより、当該正方向所定電流を上回らず負方向所定電流を下回らない範囲においては、デッドタイム補償量を求めないので、当該範囲におけるデッドタイム補償量に基づいたデッドタイム補償制御を防止することができる。そのため、 (4)の指令電流値または出力電流値の電流方向が正から負に切り替わったり、負から正に切り替わったりするゼロクロス前後においてはデッドタイム補償量を求めないので、ノイズ等の影響により当該ゼロクロス前後で電流方向を逆に誤検出するといった事態を防止することができる。したがって、このような誤検出による電流方向に基づいたデッドタイム補償量の演算を回避できるので、誤ったデッドタイム補償制御により生じるトルクリップルによる異音や振動の発生を防止することができる。
【００１９】
請求項４のモータ制御装置では、請求項１〜３のいずれか一項に記載のモータ制御装置において、前記デッドタイム補償量演算手段は、前記 (1)の電圧指令値、前記 (2)の出力電圧値、前記 (3)の電源電圧値および前記 (4)の指令電流値または出力電流値に基づいて求めた複数のデッドタイム補償量の平均値を、前記デッドタイム補償量として求めることを技術的特徴とする。
【００２０】
また、請求項１９のモータ制御方法では、請求項１６〜１８のいずれか一項に記載のモータ制御方法において、前記デッドタイム補償量演算ステップは、前記(1)の電圧指令値、前記 (2)の出力電圧値、前記 (3)の電源電圧値および前記 (4)の指令電流値または出力電流値に基づいて求めた複数のデッドタイム補償量の平均値を、前記デッドタイム補償量として求めることを技術的特徴とする。
【００２１】
請求項４および請求項１９の発明では、 (1)の電圧指令値、 (2)の出力電圧値、 (3)の電源電圧値および (4)の指令電流値または出力電流値に基づいて求めた複数のデッドタイム補償量の平均値を、デッドタイム補償量として求める。これにより、複数回に亘って求めたデッドタイム補償量の平均値を実際に用いるデッドタイム補償量とするので、デッドタイム補償量を一度だけ求めた場合に比べて、例えば、 (2)の出力電圧値や (4)の出力電流値に含まれ得るノイズ等により生じるデッドタイム補償量の誤差を抑制することができる。したがって、トルクリップルによる異音や振動の発生をより効果的に抑制することができる。
【００２２】
請求項５のモータ制御装置では、請求項１〜４のいずれか一項に記載のモータ制御装置において、前記デッドタイム補償制御は、前記インバータを駆動制御するＰＷＭ信号に、前記ＰＷＭ制御に対する電圧指令値に基づいた前記デッドタイム補償量を加算することを技術的特徴とする。
【００２３】
また、請求項２０のモータ制御方法では、請求項１６〜１９のいずれか一項に記載のモータ制御方法において、前記デッドタイム補償制御は、前記インバータを駆動制御するＰＷＭ信号に、前記ＰＷＭ制御に対する電圧指令値に基づいた前記デッドタイム補償量を加算することを技術的特徴とする。
【００２４】
請求項５および請求項２０の発明では、デッドタイム補償制御は、インバータを駆動制御するＰＷＭ信号に、ＰＷＭ制御に対する電圧指令値に基づいたデッドタイム補償量を加算することにより行われる。これにより、ＰＷＭ制御に対する電圧指令値を参照すれば、当該電圧指令値に基づいたデッドタイム補償量をインバータを駆動制御するＰＷＭ信号に加算しデッドタイム補償することができ、トルクリップルによる異音や振動の発生を抑制することができる。
【００２５】
請求項６のモータ制御装置では、前記デッドタイム補償制御は、請求項１〜４のいずれか一項に記載のモータ制御装置において、前記インバータを駆動制御するＰＷＭ信号に、前記インバータの出力電流値に基づいた前記デッドタイム補償量を加算することを技術的特徴とする。
【００２６】
また、請求項２１のモータ制御方法では、請求項１６〜１９のいずれか一項に記載のモータ制御方法において、前記デッドタイム補償制御は、前記インバータを駆動制御するＰＷＭ信号に、前記インバータの出力電流値に基づいた前記デッドタイム補償量を加算することを技術的特徴とする。
【００２７】
請求項６および請求項２１の発明では、デッドタイム補償制御は、インバータを駆動制御するＰＷＭ信号に、インバータの出力電流値に基づいたデッドタイム補償量を加算することにより行われる。これにより、インバータの出力電流値を参照すれば、当該出力電流値に基づいたデッドタイム補償量をインバータを駆動制御するＰＷＭ信号に加算しデッドタイム補償することができ、トルクリップルによる異音や振動の発生を抑制することができる。
【００２８】
請求項７のモータ制御装置では、請求項１〜４のいずれか一項に記載のモータ制御装置において、前記デッドタイム補償制御は、前記インバータを駆動制御するＰＷＭ信号に、前記ＰＷＭ制御に対する指令電流値に基づいた前記デッドタイム補償量を加算することを技術的特徴とする。
【００２９】
また、請求項２２のモータ制御方法では、請求項１６〜１９のいずれか一項に記載のモータ制御方法において、前記デッドタイム補償制御は、前記インバータを駆動制御するＰＷＭ信号に、前記ＰＷＭ制御に対する指令電流値に基づいた前記デッドタイム補償量を加算することを技術的特徴とする。
【００３０】
請求項７および請求項２２の発明では、デッドタイム補償制御は、インバータを駆動制御するＰＷＭ信号に、ＰＷＭ制御に対する指令電流値に基づいたデッドタイム補償量を加算することにより行われる。これにより、ＰＷＭ制御に対する指令電流値を参照すれば、当該指令電流値に基づいたデッドタイム補償量をインバータを駆動制御するＰＷＭ信号に加算しデッドタイム補償することができ、トルクリップルによる異音や振動の発生を抑制することができる。
【００３１】
請求項８のモータ制御装置では、請求項１〜７のいずれか一項に記載のモータ制御装置において、前記デッドタイム補償量演算手段は、前記デッドタイム補償量として、前記インバータを駆動制御するＰＷＭ信号のデューティ比を求めることを技術的特徴とする。
【００３２】
また、請求項２３のモータ制御方法では、請求項１６〜２２のいずれか一項に記載のモータ制御方法において、前記デッドタイム補償量演算ステップは、前記デッドタイム補償量として、前記インバータを駆動制御するＰＷＭ信号のデューティ比を求めることを技術的特徴とする。
【００３３】
請求項８および請求項２３の発明では、デッドタイム補償量として、インバータを駆動制御するＰＷＭ信号のデューティ比を求める。つまり、デッドタイム補償量を時間量に置き換えてＰＷＭ信号を補償する。これにより、インバータを駆動制御するＰＷＭ信号に当該ＰＷＭ信号のデューティ比を加算することにより、デッドタイム補償制御を行うことができる。したがって、インバータを駆動制御するＰＷＭ信号に対して行われるデッドタイム補償制御によって、トルクリップルによる異音や振動の発生を抑制することができる。
【００３４】
請求項９のモータ制御装置では、請求項１〜８のいずれか一項に記載のモータ制御装置において、前記デッドタイム補償量演算手段は、前記モータの起動後に前記デッドタイム補償量を求めることを技術的特徴とする。
【００３５】
また、請求項２４のモータ制御方法では、請求項１６〜２３のいずれか一項に記載のモータ制御方法において、前記デッドタイム補償量演算ステップは、前記モータの起動後に前記デッドタイム補償量を求めることを技術的特徴とする。
【００３６】
請求項９および請求項２４の発明では、モータの起動後にデッドタイム補償量を求める。これにより、モータの起動後において、実際にインバータから出力される (2)の出力電圧値に基づいて (1)の電圧指令値と偏差を求めることから、設計時等により予め設定されたデッドタイム補償量を用いるのではなく、実際に駆動制御を行うインバータおよびモータに対応して、当該インバータのスイッチング回路を構成するスイッチング素子ごとに相違し得る電気的特性（例えばターンオン時間やターンオフ時間等）を当該デッドタイム補償量に反映させることができる。また当該スイッチング回路を構成するスイッチング素子以外の能動素子および受動素子や、インバータを構成するスイッチング回路以外の回路部品（例えば能動素子、受動素子等）ごとに相違し得る電気的特性も当該デッドタイム補償量に反映させることができる。つまり、インバータやモータ等のハードウェア個々に異なる電気的特性あるいは経年変化や温度特性による電気的特性の変動等を考慮したデッドタイム補償制御を行うことができる。したがって、モータの起動後において、スイッチング素子等の電気的特性に対応させてデッドタイムにおけるトルクリップルを減少させることができるので、トルクリップルによる異音や振動の発生を抑制することができる。
【００３７】
請求項１０のモータ制御装置では、請求項９に記載のモータ制御装置において、前記デッドタイム補償量演算手段は、前記モータの起動後、所定周期ごとに前記デッドタイム補償量を求めることを技術的特徴とする。
【００３８】
請求項１２のモータ制御装置では、請求項１１に記載のモータ制御装置において、前記デッドタイム補償量演算手段は、前記モータの起動後、所定周期ごとに前記デッドタイム補償量を求めることを技術的特徴とする。
【００３９】
また、請求項２５のモータ制御方法では、請求項２４に記載のモータ制御方法において、前記デッドタイム補償量演算ステップは、前記モータの起動後、所定周期ごとに前記デッドタイム補償量を求めることを技術的特徴とする。
【００４０】
また、請求項２７のモータ制御方法では、請求項２６に記載のモータ制御方法において、前記デッドタイム補償量演算ステップは、前記モータの起動後、所定周期ごとに前記デッドタイム補償量を求めることを技術的特徴とする。
【００４１】
請求項１０、請求項１２、請求項２５および請求項２７の発明では、モータの起動後、所定周期ごとにデッドタイム補償量を求める。これにより、モータの起動後においても所定周期ごとに、実際にインバータから出力される (2)の出力電圧値に基づいて (1)の電圧指令値と偏差を求めることから、例えば、モータの起動直後から時間の経過に伴ってインバータ内外に温度変化が生じて当該インバータのスイッチング素子の電気的特性が変動しても、ほぼリアルタイムに当該電気的特性の変動をデッドタイム補償量に反映させることができる。またインバータのスイッチング回路を構成するスイッチング素子以外の能動素子および受動素子や、インバータを構成するスイッチング回路以外の回路部品（例えば能動素子、受動素子等）ごとに電気的特性に変動が生じても同様にデッドタイム補償量にほぼリアルタイムに反映させることができる。したがって、スイッチング素子等の電気的特性に対応させてほぼリアルタイムに、デッドタイムにおけるトルクリップルを減少させることができるので、スイッチング素子等の電気的特性が変動する場合においても、トルクリップルによる異音や振動の発生を抑制することができる。
【００４２】
請求項１１のモータ制御装置では、請求項１〜８のいずれか一項に記載のモータ制御装置において、前記デッドタイム補償量演算手段は、当該モータ制御装置の出荷前において前記デッドタイム補償量を求め当該デッドタイム補償量に係るデータをコンピュータ読み取り可能な記録媒体に記録し、当該モータ制御装置の出荷後においては前記記録媒体から読み出された前記デッドタイム補償量に係るデータに基づいて前記デッドタイム補償制御が行われることを技術的特徴とする。
【００４３】
また、請求項２６のモータ制御方法では、請求項１６〜２３のいずれか一項に記載のモータ制御方法において、前記デッドタイム補償量演算ステップは、当該モータ制御方法により制御されるモータ制御装置の出荷前において前記デッドタイム補償量を求め当該デッドタイム補償量に係るデータをコンピュータ読み取り可能な記録媒体に記録し、前記モータ制御装置の出荷後においては前記記録媒体から読み出された前記デッドタイム補償量に係るデータに基づいて前記デッドタイム補償制御が行われることを技術的特徴とする。
【００４４】
請求項１１および請求項２６の発明では、モータ制御装置の出荷前においてデッドタイム補償量を求め当該デッドタイム補償量に係るデータをコンピュータ読み取り可能な記録媒体に記録し、当該モータ制御装置の出荷後においてはコンピュータ読み取り可能な記録媒体から読み出されたデッドタイム補償量に係るデータに基づいてデッドタイム補償制御が行われる。これにより、コンピュータ読み取り可能な記録媒体に記録されたデッドタイム補償量に基づいて、モータの起動直後から直ちにデッドタイム補償制御を行うことができる。したがって、モータの起動の都度、デッドタイム補償量を演算する必要がないため、モータの起動直後から直ちにデッドタイムにおけるトルクリップルを減少させることができ、異音や振動の発生をモータの起動直後から抑制することができる。
【００４５】
請求項１３のモータ制御装置では、請求項１〜１２のいずれか一項に記載のモータ制御装置において、前記デッドタイム補償量演算手段により求められた前記デッドタイム補償量が所定範囲内にあるか否かを判断する補償量範囲判断手段を備え、前記補償量範囲判断手段により前記デッドタイム補償量が所定範囲内にないと判断された場合には、前記デッドタイム補償量演算手段により再度、デッドタイム補償量を求めることを技術的特徴とする。
【００４６】
また、請求項２８のモータ制御方法では、請求項１６〜２７のいずれか一項に記載のモータ制御方法において、前記デッドタイム補償量演算ステップにより求められた前記デッドタイム補償量が所定範囲内にあるか否かを判断する補償量範囲判断ステップを含み、前記補償量範囲判断ステップにより前記デッドタイム補償量が所定範囲内にないと判断された場合には、前記デッドタイム補償量演算ステップにより再度、デッドタイム補償量を求めることを技術的特徴とする。
【００４７】
請求項１３および請求項２８の発明では、求められたデッドタイム補償量が所定範囲内にあるか否かを判断する補償量範囲判断手段を備え、または補償量範囲判断ステップを含み、デッドタイム補償量が所定範囲内にないと判断された場合には、再度、デッドタイム補償量を求める。これにより、デッドタイム補償量が所定範囲内にないと判断された場合、例えば、 (2)の出力電圧値や (4)の出力電流値に含まれ得るノイズ等により予定外の値を持つデッドタイム補償量が求められた場合には、再度、デッドタイム補償量が求められるので、当該予定外のデッドタイム補償量に基づいたデッドタイム補償制御を防止することができる。したがって、当該予定外のデッドタイム補償量を用いたデッドタイム補償制御による異音や振動の発生を防ぐことができる。
【００４８】
請求項１４のモータ制御装置では、請求項１１または１２に記載のモータ制御装置において、前記コンピュータ読み取り可能な記録媒体から前記デッドタイム補償量に係るデータを正常に読み出せたか否かを判断する読み出し正常終了判断手段を備え、前記読み出し正常終了判断手段により前記データを正常に読み出せなかったと判断された場合には、既定の所定データに基づいて前記デッドタイム補償制御が行われることを技術的特徴とする。
【００４９】
また、請求項２９のモータ制御方法では、請求項２６または２７に記載のモータ制御方法において、前記コンピュータ読み取り可能な記録媒体から前記デッドタイム補償量に係るデータを正常に読み出せたか否かを判断する読み出し正常終了判断ステップを備え、前記読み出し正常終了判断ステップにより前記データを正常に読み出せなかったと判断された場合には、既定の所定データに基づいて前記デッドタイム補償制御が行われることを技術的特徴とする。
【００５０】
請求項１４および請求項２９の発明では、コンピュータ読み取り可能な記録媒体からデッドタイム補償量に係るデータを正常に読み出せなかったと判断された場合には、既定の所定データに基づいてデッドタイム補償制御が行われる。これにより、例えば、当該記録媒体に記録されたデッドタイム補償量に係るデータが正常でなかった場合や当該記録媒体から読み出す途中にデッドタイム補償量に係るデータが壊れた場合には、既定の所定データに基づいてデッドタイム補償制御が行われるので、当該正常ではないデータに係るデッドタイム補償量に基づいたデッドタイム補償制御を防止することができる。したがって、当該正常ではないデータに係るデッドタイム補償量を用いたデッドタイム補償制御による異音や振動の発生を防ぐことができる。
【００５１】
請求項１５の電気式動力舵取装置では、操舵状態検出手段により検出された操舵状態に基づいて、モータを駆動して操舵をアシストする電気式動力舵取装置において、請求項１〜１４のいずれか一項に記載のモータ制御装置によって前記モータの駆動制御を行うことを技術的特徴とする。
【００５２】
請求項１５の発明では、請求項１〜１４のいずれか一項に記載のモータ制御装置により、操舵状態に基づいて操舵をアシストするモータの駆動制御が行われる。これにより、ＰＷＭ制御によって当該モータに電力を供給するインバータのスイッチング素子等の電気的特性に対応させてデッドタイムにおけるトルクリップルを減少させることができる等の、請求項１〜１４の各発明による作用・効果を享受した電気式動力舵取装置を実現することができる。したがって、トルクリップルによる異音や振動の発生を抑制し得る電気式動力舵取装置を提供することができる。
【００５３】
また、請求項３０の電気式動力舵取装置では、操舵状態検出手段により検出された操舵状態に基づいて、モータを駆動して操舵をアシストする電気式動力舵取装置において、請求項１６〜２９のいずれか一項に記載のモータ制御方法によって前記モータの駆動制御を行うことを特徴とする。
【００５４】
請求項３０の発明では、請求項１６〜２９のいずれか一項に記載のモータ制御方法により、操舵状態に基づいて操舵をアシストするモータの駆動制御が行われる。これにより、ＰＷＭ制御によって当該モータに電力を供給するインバータのスイッチング素子等の電気的特性に対応させてデッドタイムにおけるトルクリップルを減少させることができる等の、請求項１６〜２９の各発明による作用・効果を享受した電気式動力舵取装置を実現することができる。したがって、トルクリップルによる異音や振動の発生を抑制し得る電気式動力舵取装置を提供することができる。
【００５５】
【発明の実施の形態】
以下、本発明のモータ制御装置、モータ制御方法および電気式動力舵取装置の実施形態について図を参照して説明する。
まず、これから説明する第１〜第４実施形態のそれぞれに係る電気式動力舵取装置の主な構成を図１および図２に基づいて説明し、その後、この電気式動力舵取装置に本発明のモータ制御装置およびモータ制御方法を適用した各実施形態を図３〜図１７に基づいて詳述する。なお、本実施形態に係る電気式動力舵取装置は、特許請求の範囲に記載の「電気式動力舵取装置」に相当するものである。
【００５６】
図１および図２に示すように、本実施形態に係る電気式動力舵取装置（以下、「本電気式動力舵取装置」という。）は、主に、ステアリングホイール２１、ステアリング軸２２、ピニオン軸２３、ラック軸２４、トルクセンサ３０、モータ４０、モータレゾルバ４２、ボールねじ機構４４等を備える操舵機構２０と、この操舵機構２０のモータ４０を駆動制御するＥＣＵ５０とから構成されている。本電気式動力舵取装置は、トルクセンサ３０により検出された操舵状態に基づいて、モータ４０を駆動して運転者による操舵をアシストするものである。なお、ラック軸２４の両側には、それぞれタイロッド等を介して図略の操舵輪が連結されている。
【００５７】
図１に示すように、ステアリングホイール２１には、ステアリング軸２２の一端側が連結され、このステアリング軸２２の他端側には、ピニオンハウジング２５内に収容されたトルクセンサ３０の入力軸２３ａおよび図略のトーションバーが連結されている。またこのトーションバーの他端側には、ピニオン軸２３の出力軸２３ｂがスプライン結合により連結されている。なお、ピニオン軸２３の出力軸２３ｂの端部にはピニオンギヤが形成されている。
【００５８】
トルクセンサ３０は、入力軸２３ａとピニオンハウジング２５との間に介在する第１レゾルバ３５と、出力軸２３ｂとピニオンハウジング２５との間に介在する第２レゾルバ３７とによって構成されている。このトルクセンサ３０は、ステアリングホイール２１による操舵状態（操舵トルクや操舵角）を検出する機能を有するもので、ＥＣＵ５０に電気的に接続されている（図２(A) 参照）。これにより、トルクセンサ３０は、第１レゾルバ３５により検出される第１操舵角と第２レゾルバ３７により検出される第２操舵角との角度差や角度比等から得られるトーションバーの捻れ角相当のトルク信号ＴｓをＥＣＵ５０に出力している。
【００５９】
ラック軸２４は、ラックハウジング２６およびモータハウジング２７内に収容されており、ピニオン軸２３のピニオンギヤに噛合可能な図略のラック溝を備えている。これにより、ピニオン軸２３とともにラックアンドピニオン機構を構成している。またラック軸２４の中間部には、螺旋状にボールねじ溝２４ｂが形成されている。
【００６０】
モータ４０は、ラック軸２４と同軸に回転可能にベアリング２９により軸受される円筒形状のモータ軸４３、このモータ軸４３の外周に設けられた図略の永久磁石、図略のステータや励磁コイル等により構成されている誘導電動機である。即ち、このモータ４０は、ステータに巻回された例えば３相分の励磁コイルにより発生する界磁が、回転子に相当するモータ軸４３の永久磁石に作用することよって、モータ軸４３が回転し得るように構成されている。
【００６１】
なお、この励磁コイルに印加される電圧を検出し得る電圧センサ４６およびこの励磁コイルに流れる電流（インバータ５６の出力電流Ｉｕ、Ｉｖ、Ｉｗ）を検出し得る電流センサ４７が、それぞれＵ相、Ｖ相、Ｗ相ごとにモータ４０あるいはＥＣＵ５０に設けられている。また本実施形態では、以下、モータ４０として３相モータを例に説明を行うが、本発明は、３相モータの制御に限られず、３相以上の多相モータ（例えば６相モータ、８相モータ等）に対する制御にも適用できる。
【００６２】
モータレゾルバ４２は、モータ４０が収容されているモータハウジング２７とモータ軸４３との間に設けられており、モータ軸４３のモータ回転角θｍ（電気角θｅ）を検出する機能を有するように構成されている。このモータレゾルバ４２も、トルクセンサ３０と同様、ＥＣＵ５０に電気的に接続され（図２(A) 参照）、モータ回転角信号θｍをＥＣＵ５０に出力している。
【００６３】
ボールねじ機構４４は、ラック軸２４とモータ軸４３との間に介在して、モータ軸４３の正逆回転の回転トルクをラック軸２４の軸線方向における往復動に変換する機能を有するものである。これにより、この往復動は、ラック軸２４とともにラックアンドピニオン機構を構成するピニオン軸２３を介してステアリングホイール２１の操舵力を軽減するアシストカにすることができる。
【００６４】
このように操舵機構２０を構成することにより、ステアリングホイール２１による操舵状態をトルクセンサ３０から出力されるトルク信号Ｔｓにより検出することができ、またモータレゾルバ４２から出力される回転角信号θｍや電流センサ４７から出力される出力電流Ｉｕ等によってモータ４０の動作状態を検出することができる。
【００６５】
これにより、図２(A) に示すＥＣＵ５０では、トルクセンサ３０のトルク信号Ｔｓやモータレゾルバ４２のモータ回転角θｍあるいは電流センサ４７の出力電流Ｉｕ等に基づいて、操舵状態に適したアシストトルクをモータ４０に発生させるべき３相交流電力を出力可能なＰＷＭ信号（ＰＷＭu*,ＰＷＭv*,ＰＷＭw*）として算出する演算を行い、後述するインバータ５６に出力する。すると、このＰＷＭ信号を受けたインバータ５６では、当該ＰＷＭ信号に従った３相交流電力をモータ４０に供給するので、モータ４０は発生させたアシストトルクをピニオン軸２３を介してステアリング軸２２に与える。このようにして操舵機構２０は、ステアリングホイール２１により操舵する運転者の操舵を補助している。
【００６６】
次に、本電気式動力舵取装置のモータ４０の駆動制御を行うＥＣＵ５０の電気的構成を図２に基づいて説明する。
図２(A) に示すように、ＥＣＵ５０は、主に、ＣＰＵ５２、インタフェイス５４、インバータ５６により構成されており、ＣＰＵ５２を中心に入出力バスを介してインタフェイス５４やインバータ５６が接続されている。
【００６７】
ＣＰＵ５２は、例えば、マイコン、半導体メモリ装置（ＲＯＭ、ＲＡＭ、ＥＥＰＲＯＭ等）等から構成されており、上述したような本電気式動力舵取装置の基本的なモータ制御に加えて、後述するデッドタイム補償制御処理を所定のコンピュータプログラムにより実行する機能を有するものである。なお、デッドタイム補償制御処理を所定のコンピュータプログラムは、例えばＲＯＭに記録されている。
【００６８】
インタフェイス５４は、前述したトルクセンサ３０やモータレゾルバ４２あるいは電流センサ４７等から入力される各種センサ信号を、Ａ／Ｄ変換器等を介してＣＰＵ５２の所定ポートに入力したり、またＣＰＵ５２から出力されるレゾルバ励磁信号をＡ／Ｄ変換器等を介してトルクセンサ３０の第１レゾルバ３５や第２レゾルバ３７に出力したりする機能を有するものである。
【００６９】
図２(B) に示すように、インバータ５６は、直流電源Ｂatt から供給される電力を制御可能な３相交流電力に変換する機能を有するもので、ＰＷＭ回路５６ａとスイッチング回路５６ｂ等から構成されている。なおこの直流電源Ｂatt の出力電圧を検出する電圧センサ４５がＥＣＵ５０に設けられている。
【００７０】
ＰＷＭ回路５６ａは、後述するように、ＣＰＵ５２から出力される各相のＰＷＭ信号ＰＷＭu*,ＰＷＭv*,ＰＷＭw*に基づいて、Ｕ相、Ｖ相、Ｗ相ごとにスイッチング回路５６ｂをオンオフし得るスイッチング信号を発生するパルス変調回路で、発生させたスイッチング信号はスイッチング回路５６ｂに出力される。
【００７１】
スイッチング回路５６ｂは、スイッチング素子Ｑ11、Ｑ12、Ｑ13、Ｑ21、Ｑ22、Ｑ23（以下「スイッチング素子Ｑ11〜Ｑ23」という。）と帰還ダイオードとから構成されている。スイッチング素子Ｑ11〜Ｑ23には、例えば高速スイッチング用のMOSFETが用いられており、各相ごとに、直流電源Ｂatt とアースとの間に２個１組のスイッチング素子がトーテムポール接続されている。
【００７２】
例えば、Ｕ相であればスイッチング素子Ｑ11とスイッチング素子Ｑ21とが直列接続され直流電源Ｂatt （直流電源電圧Ｖｂ）とアース（基準電位）との間に介在している。またこのように接続された両スイッチング素子の接続部、例えばＵ相であればスイッチング素子Ｑ11とスイッチング素子Ｑ21との接続部にはモータ４０の励磁コイル（Ｕ相）に接続されるＵ相出力端子が接続されている。
【００７３】
このように直流電源Ｂatt とアースと間には、トーテムポール接続された両スイッチング素子Ｑ11〜Ｑ23が介在するため、例えばスイッチング素子Ｑ11、Ｑ21が双方同時にオンされた場合には、直流電源Ｂatt とアースと間が短絡（アーム短絡）し、スイッチング素子Ｑ11、Ｑ21の破損を招くことになる。そのため、通常は、かかるアーム短絡によるスイッチング素子Ｑ11〜Ｑ23の破損を防止する必要から、両スイッチング素子が双方同時にオフになる期間、つまりデッドタイムが設けられるとともに、既に説明したように、このデッドタイムに起因した、ＰＷＭ制御の電圧指令値とインバータ５６の出力電圧値との差を補償する種々のデッドタイム補償制御が従来より行われている（「従来の技術」の欄参照）。
【００７４】
ところが、これまでのデッドタイム補償制御には、「発明が解決しようとする課題」の欄で説明したような種々の問題点が存在する。そこで、本発明のモータ制御装置およびモータ制御方法は、かかる種々の問題点を解決したものであり、以下、本発明のモータ制御装置およびモータ制御方法を本電気式動力舵取装置に適用した各実施形態を図３〜図１７に基づいて説明する。
【００７５】
［第１実施形態］
第１実施形態は、上述した本電気式動力舵取装置に図３に示すデッドタイム補償制御系を適用した例で、以下説明する各演算処理はＥＣＵ５０のＣＰＵ５２により実行されている。本第１実施形態では、図３〜図８を参照して説明する。
【００７６】
図３に示すように、ＥＣＵ５０では、位相補償手段５２ａ、アシスト制御手段５２ｂ、加算手段５２ｃ、５２ｄ、ＰＩ制御手段５２ｅ、５２ｆ、２相３相変換手段５２ｇ、ＰＷＭ変換手段５２ｈおよび３相２相変換手段５２ｍからなるモータ４０に対するＰＩ制御系と、デッドタイム補償値演算手段５２ｐ、デッドタイム補償制御手段５２ｑおよび加算手段５２ｉ、５２ｊ、５２ｋからなるデッドタイム補償制御系と、の各種演算処理を行っている。
【００７７】
はじめに、モータ４０に対するＰＩ制御系の演算処理を説明する。なおこの演算処理は、ＥＣＵ５０のＣＰＵ５２により、所定周期（例えば１ミリ秒）ごとに実行される、例えばタイマ割り込み処理によって行われている。
【００７８】
前述の如くトルクセンサ３０からインタフェイス５４を介してＣＰＵ５２に入力されるトルク信号Ｔｓは、図略のフィルタ回路によりノイズ成分が除去された後、位相補償手段５２ａに入力される。位相補償手段５２ａでは、トルクセンサ３０の出力に対する応答性を速くするため位相を進める処理を行った後、アシスト制御手段５２ｂに出力する。
【００７９】
アシスト制御手段５２ｂでは、位相補償手段５２ａにより位相補償されたトルク信号Ｔｓによる検出トルクに基づいて、操舵力を補助するためにモータ４０に発生させるアシストトルクに対応する電流値、つまりｑ軸の電流指令値Ｉq*とｄ軸の電流指令値Ｉd*とを決定する処理を行う。本第１実施形態では、検出トルクにかかわらず、ｄ軸電流指令値Ｉd*は０Ａ（ゼロアンペア）に設定し、ｑ軸電流指令値Ｉq*は検出トルクに基づいて所定のマップや演算式により求めている。このように決定されたｑ軸電流指令値Ｉq*およびｄ軸電流指令値Ｉd*は、それぞれ加算手段５２ｃ、５２ｄに出力される。
【００８０】
加算手段５２ｃ、５２ｄでは、アシスト制御手段５２ｂから出力される電流指令値Ｉq*、Ｉd*と、後述する３相２相変換手段５２ｍから帰還されるインバータ５６の出力電流値Ｉｑ、Ｉｄとの偏差を求める加算処理を行う。これにより、加算手段５２ｃによりｑ軸電流指令値Ｉq*と出力電流値Ｉｑとの偏差が算出され、また加算手段５２ｄによりｄ軸電流指令値Ｉd*と出力電流値Ｉｄとの偏差が算出されて、それぞれＰＩ制御手段５２ｅ、５２ｆに出力される。
【００８１】
ＰＩ制御手段５２ｅ、５２ｆでは、比例積分制御が行われる。即ち、ＰＩ制御手段５２ｅでは、加算手段５２ｃから出力された、ｑ軸電流指令値Ｉq*と出力電流値Ｉｑとの偏差に基づいて比例積分演算を行い、目標値に達するまで積分値の訂正動作としてｑ軸の電圧指令値Ｖq*を２相３相変換手段５２ｇに出力する処理を行う。つまり、ＰＩ制御手段５２ｅは、加算手段５２ｃとともにフィードバック演算処理を行う。またＰＩ制御手段５２ｆも同様に、ｄ軸電流指令値Ｉd*と出力電流値Ｉｄとの偏差に基づいて比例積分演算を行い、目標値に達するまで積分値の訂正動作としてｄ軸の電圧指令値Ｖd*を２相３相変換手段５２ｇに出力する処理を行う。
【００８２】
２相３相変換手段５２ｇは、ＰＩ制御手段５２ｅ、５２ｆから、それぞれ入力されたｑ軸電圧指令値Ｖq*およびｄ軸の電圧指令値Ｖd*をｄｑ逆変換（３相変換）して、各相の電圧指令値Ｖu*,Ｖv*,Ｖw*を演算する処理を行う。２相３相変換手段５２ｇにより逆変換された電圧指令値は、Ｕ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*、Ｗ相電圧指令値Ｖw*としてＰＷＭ変換手段５２ｈに出力される。
【００８３】
ＰＷＭ変換手段５２ｈは、各相の電圧指令値Ｖu*,Ｖv*,Ｖw*を各相ごとのＰＷＭ指令値に変換する処理を行うもので、各相の電圧指令値Ｖu*,Ｖv*,Ｖw*、直流電源Ｂatt の直流電源電圧値ＶｂおよびＰＷＭの１周期分の時間fulPWMに基づいて各相ごとのＰＷＭ指令値を演算し、加算手段５２ｉ、５２ｊ、５２ｋにそれぞれ出力する。例えばＵ相のＰＷＭ指令値ＰＷＭu*は（ＰＷＭu*＝Ｖu*／Ｖｂ×fulPWM＋fulPWM／２）によって求められる。
【００８４】
加算手段５２ｉ、５２ｊ、５２ｋでは、ＰＷＭ変換手段５２ｈから出力される各相のＰＷＭ指令値ＰＷＭu*,ＰＷＭv*,ＰＷＭw*と、後述するデッドタイム補償制御手段５２ｑから出力される各相ごとのデッドタイム補償値DTUP（またはDTUM）、DTVP（またはDTVM）、DTWP（またはDTWM）とを加える加算処理を行う。これにより、後述するようにデッドタイム補償がされたＰＷＭ指令値（ＰＷＭ信号）ＰＷＭu*,ＰＷＭv*,ＰＷＭw*がインバータ５６に対して出力される。
【００８５】
インバータ５６では、前述したように、加算手段５２ｉ、５２ｊ、５２ｋから出力される各相のＰＷＭ信号ＰＷＭu*,ＰＷＭv*,ＰＷＭw*に基づいて、Ｕ相、Ｖ相、Ｗ相ごとにスイッチング回路５６ｂをオンオフする。これにより、インバータ５６は、直流電源Ｂatt から供給される直流電力を予定する３相交流電力に変換してモータ４０に駆動電力を供給するので、トルクセンサ３０により検出された操舵状態に適したアシストトルクをモータ４０に発生させることができる。
【００８６】
そして、インバータ５６から出力される出力電流は、各相ごとに電流センサ４７に検出され、それぞれＵ相出力電流値Ｉｕ、Ｖ相出力電流値Ｉｖ、Ｗ相出力電流値Ｉｗとして３相２相変換手段５２ｍに出力される。また、この各相ごとの出力電流値Ｉｕ,Ｉｖ,Ｉｗは、後述するデッドタイム補償値演算手段５２ｐにも出力される。
【００８７】
３相２相変換手段５２ｍは、電流センサ４７から、それぞれ入力された各相の出力電流値Ｉｕ,Ｉｖ,Ｉｗをｄｑ変換（２相変換）して、ｑ軸の出力電流値Ｉｑとｄ軸の出力電流値Ｉｄを演算する処理を行う。３相２相変換手段５２ｍにより変換されたインバータ５６の出力電流値は、ｑ軸出力電流値Ｉｑ、ｄ軸出力電流値Ｉｄとして前述の加算手段５２ｃ、５２ｄにフィードバック入力される。これにより、前述したようにＰＩ制御手段５２ｅ、５２ｆによるフィードバック演算処理が可能となる
【００８８】
次に、デッドタイム補償制御系の演算処理を図３〜図７に基づいて説明する。なおこの演算処理も、ＥＣＵ５０のＣＰＵ５２により、所定周期（例えば１ミリ秒）ごとに実行される、例えばタイマ割り込み処理によって行われている。
【００８９】
図４に示すように、デッドタイム補償制御系の演算処理は、所定の初期化処理の後、まずステップＳ１０１によりデッドタイム補償量学習が未完了であるか否かの判断処理が行われる。この処理は、ステップＳ１０３によるデッドタイム補償量演算処理が既に行われて学習処理が終わっているか否かを判断するもので、当該デッドタイム補償量演算処理により学習完了フラグがセットされていなければ（Ｓ１０１でＹｅｓ）、ステップＳ１０３による当該デッドタイム補償量演算処理を行い、また学習完了フラグがセットされていれば（Ｓ１０１でＮｏ）、ステップＳ１０７に処理を移行して後述するデッドタイム補償ありの電流制御処理（図７）を行う。
【００９０】
ステップＳ１０３では、デッドタイム補償量演算処理が行われる。この処理は、図５に示す「デッドタイム補償量演算処理」のサブルーチンにより行われるもので、図３に示すデッドタイム補償値演算手段５２ｐに対応する。またこのデッドタイム補償量演算処理は、特許請求の範囲に記載の「デッドタイム補償量演算手段」に相当するものである。
【００９１】
即ち、図５に示すように、デッドタイム補償量演算処理では、各相ごとにデッドタイム補償量学習処理を行い（Ｓ２００、Ｓ２２０、Ｓ２４０）、学習が完了していれば（Ｓ２５１でＹｅｓ）、学習完了フラグをセットして（Ｓ２５３）、また学習が完了していなければ（Ｓ２５１でＮｏ）、学習完了フラグをセットすることなく、図４に示すデッドタイム補償制御系の演算処理に処理を戻す。
【００９２】
図５に示すように、ステップＳ２００では、Ｕ相のデッドタイム補償量学習処理が行われるが、この処理はさらに複数のステップに分けて説明することができる。即ち、ステップＳ２００では、ステップＳ２０１〜Ｓ２１７による各演算処理が行われる。
【００９３】
まずステップＳ２０１では、Ｕ相電圧、電源電圧、Ｕ相電流をそれぞれＡ／Ｄ変換後に取り込む処理が行われる。つまり、インバータ５６から出力されるＵ相の出力電圧値Ｖｕを電圧センサ４６から、また直流電源Ｂatt から出力される直流電源電圧値Ｖｂを電圧センサ４５から、さらにインバータ５６から出力されるＵ相の出力電流値Ｉｕを電流センサ４７から、それぞれインタフェイス５４を介してＣＰＵ５２に取り込む処理を行う。
【００９４】
次のステップＳ２０３では、Ｕ相電圧指令を取り込む処理が行われる。このＵ相電圧指令であるＵ相電圧指令値Ｖu*は、前述した２相３相変換手段５２ｇによるｄｑ逆変換処理により算出されているので、ＣＰＵ５２の半導体メモリ装置（ＲＡＭ）上の所定領域からこれを取り込む処理を行う。
【００９５】
続くステップＳ２０５では、Ｕ相電圧を演算する処理が行われる。即ち、ステップＳ２０１により取り込まれたＵ相出力電圧値Ｖｕと直流電源電圧値Ｖｂに基づいて、Ｕ相出力電圧値Ｖｕから直流電源電圧値Ｖｂの１／２（半分）を減算したＵ相電圧Ｖu'（＝Ｖｕ−Ｖｂ／２）を算出する処理を行う。
【００９６】
続くステップＳ２０７では、Ｕ相電圧偏差を演算する処理が行われる。即ち、ステップＳ２０３により取り込まれたＵ相電圧指令値Ｖu*とステップＳ２０５により演算されたＵ相電圧Ｖu'とに基づいて、Ｕ相電圧指令値Ｖu*に対するＵ相電圧Ｖu'の偏差ΔＶｕ（＝Ｖu*−Ｖu'）を算出する処理を行う。これにより、デッドタイム補償量としての不足分を求めることができる。
【００９７】
次のステップＳ２０９では、Ｕ相デッドタイム値を演算する処理が行われる。即ち、ステップＳ２０７によりデッドタイム補償量の不足分をＵ相電圧偏差ΔＶｕとして求めたので、このステップではこれをＰＷＭのディーティ比DTU （＝ΔＶｕ／Ｖｂ×fulPWM）に換算する演算処理を行う。ここでfulPWMは、ＰＷＭの１周期分の時間を表すパラメータである。
【００９８】
ステップＳ２１１では、Ｕ相電圧指令値Ｖu*とステップＳ２０１により取り込まれたＵ相出力電流値Ｉｕとに基づいて、デッドタイム補償量の補償方向を判断する処理が行われる。即ち、Ｕ相電圧指令値Ｖu*が予め設定された所定の電圧判定閾値Ｖ0 よりも大きく（Ｖu*＞Ｖ0 ）、かつ、Ｕ相出力電流値Ｉｕが予め設定された所定の電流判定閾値Ｉ0 よりも大きい（Ｉｕ＞Ｉ0 ）場合には（Ｓ２１１でＹｅｓ）、プラス（正）側にインバータ５６から出力されたＵ相出力電流値Ｉｕが流れていると判断して続くステップＳ２１３に処理を移行する。一方、当該条件を満たさないと判断された場合には（Ｓ２１１でＮｏ）、Ｕ相出力電流値Ｉｕがマイナス（負）側に流れている可能性があるので、ステップＳ２１５に処理を移行してマイナス側の条件に合致するか否かの判断処理を行う。
【００９９】
ステップＳ２１５では、ステップＳ２１１と同様、Ｕ相電圧指令値Ｖu*とステップＳ２０１により取り込まれたＵ相出力電流値Ｉｕとに基づいて、デッドタイム補償量の補償方向を判断する処理が行われる。このステップでは、Ｕ相出力電流値Ｉｕがマイナス側に流れているか否かを判断するため、ステップＳ２１１で用いた所定の電圧判定閾値Ｖ0 の逆符号値（−Ｖ0 ）よりも小さく（Ｖu*＜−Ｖ0 ）、かつ、Ｕ相出力電流値Ｉｕが所定の電流判定閾値Ｉ0 の逆符号値（−Ｉ0 ）よりも小さい（Ｉｕ＜−Ｉ0 ）という条件を満たすか否かの判断を行う。そして、この判断処理により当該条件を満たす場合には（Ｓ２１５でＹｅｓ）、マイナス（負）側にインバータ５６から出力されたＵ相出力電流値Ｉｕが流れていると判断して続くステップＳ２１７に処理を移行する。
【０１００】
一方、ステップＳ２１５による当該条件を満たさないと判断された場合には（Ｓ２１５でＮｏ）、Ｕ相出力電流値Ｉｕはプラス側の判定閾値とマイナス側の判定閾値との間（Ｖ0 ≦Ｉｕ≦−Ｖ0 ）に存在することになる。この両判定閾値間の範囲は、Ｕ相出力電流値Ｉｕが流れない電流０Ａ（ゼロアンペア）を含んでこれに近接した範囲、つまりゼロクロス近傍領域（ゼロアンペア境界近傍範囲）にあたる。そのため、この範囲におけるノイズや検出誤差により、電流方向の検出誤りを防止する必要から、このような所定の電圧判定閾値Ｖ0 や電流判定閾値Ｉ0 を設定している。したがって、かかる両判定閾値間の範囲にＵ相出力電流値Ｉｕが存在すると判断した場合（Ｓ２１５でＮｏ）には、デッドタイム値を演算することなく、Ｕ相デッドタイム補償量学習処理（Ｓ２００）を終了する。
【０１０１】
なお、本第１実施形態では、所定の電圧判定閾値や電流判定閾値として、プラス側の判定閾値とマイナス側の判定閾値に同じもの、例えば、プラス側の電圧判定閾値Ｖ0 に対しその逆符号値をマイナス側の電圧判定閾値（−Ｖ0 ）としたが、プラス側、マイナス側でそれぞれ別個独立に設定された所定の電圧判定閾値または所定の電流判定閾値を用いても良い。これによりプラス側、マイナス側のそれぞれについて判定閾値を独立に設定することができるため、周囲環境の実情に応じたゼロクロス近傍領域を除外する設定を行うことができる。
【０１０２】
また、本第１実施形態では、ステップＳ２１１およびステップＳ２１５によるデッドタイム補償量の補償方向の判断として、ステップＳ２０１により取り込んだＵ相出力電流値Ｉｕを用いたが、アシスト制御手段５２ｂから出力されるｑ軸電流指令値Ｉq*およびｄ軸電流指令値Ｉd*を２相３相変換手段５２ｇと同様のｄｑ逆変換手段を介して「Ｕ相電流指令値Ｉu*、Ｖ相電流指令値Ｉv*およびＷ相電流指令値Ｉw*」を生成し、Ｕ相電流指令値Ｉu*に基づいてステップＳ２１１およびステップＳ２１５によるデッドタイム補償量の補償方向を判断しても良い。この場合、Ｉｕ＞Ｉ0 と同様、Ｉu*＞Ｉ0 の条件を満たせばプラス側を演算すべくステップＳ２１３に移行し、Ｉｕ＜−Ｉ0 と同様、Ｉu*＜−Ｉ0 の条件を満たせばマイナス側を演算すべくステップＳ２１７に移行する。そして、両条件とも充足しない場合には（Ｓ２１１でＮｏ、Ｓ２１５でＮｏ）、デッドタイム値の演算は行わない。
【０１０３】
ステップＳ２１１によりプラス側にＵ相出力電流値Ｉｕが流れていると判断されると（Ｓ２１１でＹｅｓ）、ステップＳ２１３によりＵ相のプラス側デッドタイム値を演算する処理が行われる。即ち、ステップＳ２０９により求めたＰＷＭのディーティ比DTU を所定数集めてその総和の平均値を求める処理を行う。例えば、本第１実施形態では、このステップ２１３による処理を行うごとにプラス側カウンタ値NUp をインクリメント（NUp ＝NUp ＋１）するとともにＰＷＭのディーティ比としてのプラス側デッドタイム総和値sumUp に今回演算したディーティ比DTU を加算する（sumUp ＝sumUp ＋DTU ）処理を行う。そして、この加算後のsumUp をインクリメント後のプラス側カウンタ値NUp で除算しＵ相のプラス側デッドタイム値DTUp（＝sumUp ／NUp ）を演算する処理を行う。これにより、Ｕ相についてのプラス側デッドタイム値DTUpが求められ、半導体メモリ装置の所定領域に記憶（学習）される。
【０１０４】
一方、Ｕ相のマイナス側デッドタイム値DTUmについても、ステップＳ２１７により同様に算出される。即ち、ステップ２１７による処理を行うごとにマイナス側カウンタ値NUm をインクリメント（NUm ＝NUm ＋１）するとともにＰＷＭのディーティ比としてのマイナス側デッドタイム総和値sumUm に今回演算したディーティ比DTU を加算する（sumUm ＝sumUm ＋DTU ）処理を行い、この加算後のsumUm をインクリメント後のプラス側カウンタ値NUm で除算してＵ相のマイナス側デッドタイム値DTUm（＝sumUm ／NUm ）を演算する処理を行う。これにより、Ｕ相についてのマイナス側デッドタイム値DTUmが求められ、半導体メモリ装置の所定領域に記憶（学習）される。
【０１０５】
このようにステップＳ２０１〜Ｓ２１７によってＵ相のデッドタイム値を学習する処理が終了すると、同様に、続くステップＳ２２０によりＶ相のデッドタイム値を学習する処理、またステップＳ２４０によりＷ相のデッドタイム値を学習する処理、がそれぞれ行われる。
【０１０６】
即ち、ステップＳ２２０により、Ｖ相についてのプラス側デッドタイム値DTVpとマイナス側デッドタイム値DTVmが求められ、またステップＳ２４０により、Ｗ相についてのプラス側デッドタイム値DTWpとマイナス側デッドタイム値DTWmが求められ、それぞれ半導体メモリ装置の所定領域に記憶（学習）される。
【０１０７】
ステップＳ２００、Ｓ２２０、Ｓ２４０により、各相のプラス側デッドタイム値DTUp,DTVp,DTWpおよびマイナス側デッドタイム値DTUm,DTVm,DTWmの学習が終了すると、続くステップＳ２５１により学習が完了したか否かの判断処理が行われる。即ち、ステップＳ２００、Ｓ２２０、Ｓ２４０による各相のデッドタイム値がプラス側およびマイナス側についてそれぞれ所定の規定サンプル数以上採取できたか否かの判断を行う。
【０１０８】
このステップ２５１による判断処理では、ステップＳ２１３によりインクリメントされたプラス側カウンタ値NUp やステップＳ２１７によりインクリメントされたマイナス側カウンタ値NUm に基づいて、双方のカウンタ値が規定サンプル数Ｎ0 （例えばＮ0 ＝１００）を超えているか否かを判断する。例えば、Ｕ相のプラス側デッドタイム値DTUpの学習回数がＮ0 を超えているか否かをプラス側カウンタ値NUp に基づいて（NUp ＞Ｎ0 ）、またＵ相のマイナス側デッドタイム値DTUmの学習回数がＮ0 を超えているか否かをマイナス側カウンタ値NUm に基づいて（NUm ＞Ｎ0 ）行い、双方ともに当該条件を満たす場合に（NUp ＞Ｎ0 かつNUm ＞Ｎ0 ）、Ｕ相の学習が完了したものとする。同様にＶ相、Ｗ相についてもそれぞれ学習回数が判断される（Ｖ相；NVp ＞Ｎ0 かつNVm ＞Ｎ0 、Ｗ相；NWp ＞Ｎ0 かつNWm ＞Ｎ0 ）。
【０１０９】
ステップＳ２５１による条件（Ｕ相；NUp ＞Ｎ0 かつNUm ＞Ｎ0 、Ｖ相；NVp ＞Ｎ0 かつNVm ＞Ｎ0 、Ｗ相；NWp ＞Ｎ0 かつNWm ＞Ｎ0 ）のすべてを充足していると判断した場合には（Ｓ２５１でＹｅｓ）、各相のデッドタイム補償量の学習が完了していることになるので、ステップＳ２５３に処理を移行してＣＰＵ５２の半導体メモリ装置の所定領域またはマイコンの汎用レジスタ等に「学習完了フラグ」をセットする処理を行う。一方、ステップＳ２５１による条件のすべてを充足していると判断できない場合には（Ｓ２５１でＮｏ）、次回の割り込み処理時においても再度、ステップＳ２１３またはステップＳ２１７による各相のデッドタイム補償量の学習処理を行う必要があるので、「学習完了フラグ」をセットすることなく、一連の本デッドタイム補償量演算処理を終了する。
【０１１０】
ステップＳ２５１やステップＳ２５３による処理が終了すると、一連の本デッドタイム補償量演算処理を終了して図４に示すデッドタイム補償制御系の演算処理に処理を戻す。図４に示すように、ステップＳ１０３によるデッドタイム補償量演算処理が終了すると、次にステップＳ１０５による電流制御が行われることになるが、この場合の電流制御処理は図６に示すように「デッドタイム補償なし」に制御が行われる。これは、ステップＳ１０１によりデッドタイム補償量学習が未だ完了していない場合に（Ｓ１０１でＹｅｓ）、このステップＳ１０５による電流制御処理が行われるからである。
【０１１１】
なお、このようなカウンタ値を設けて、例えば１００回以上の学習処理をステップＳ２１３やステップＳ２１７に実行されているのは、ステップＳ２１１やステップＳ２１５によって両判定閾値間の範囲を設けこの範囲内にある出力電流値に基づいては同ステップによるデッドタイム補償量の学習を行わないようにしているが、これによっても排除することのできないノイズの影響を回避するためである。例えば、プラス方向に電流が流れているにもかかわらず、マイナス方向のノイズが含まれている場合、それを含んだ値を使ってデッドタイム補償量を求める演算を行うと、実際の電流方向とは逆方向に補償するデッドタイム補償量を求めるおそれがあるためである。そのため、このような誤差のあるデッドタイム補償量を含んでいる場合があっても、ステップＳ２０９により求めたＰＷＭのディーティ比DTU を所定数集めてその総和の平均値を求める処理を行うことにより、かかる誤差による影響の希釈化を可能にしている。
【０１１２】
図６に示すように、電流制御処理（デッドタイム補償なし）は、所定の初期化処理の後、まずステップＳ３０１では、トルク信号Ｔｓからｑ軸電流指令値Ｉq*を演算する処理が行われる。この処理は、図３を参照して前述したＰＩ制御系のアシスト制御手段５２ｂにより実行されるものである。なお、本第１実施形態の場合は、電気式動力舵取装置のモータ４０を制御するものであることから、トルクセンサ３０により検出されるトルク信号Ｔｓに基づいてｑ軸電流指令値Ｉq*を演算しているが、他のアクチュエータ等のモータを制御する場合には、トルクセンサに限られることはなく、例えばそのアクチュエータ等に取り付けられた各種センサ（回転角センサ、位置センサ等）から出力される検出信号に基づいてｑ軸電流指令値Ｉq*を演算しても良い。
【０１１３】
続くステップＳ３０３では、３相電流をＡ／Ｄ変換後に取り込む処理が行われる。即ち、電流センサ４７から出力されるＵ相出力電流値Ｉｕ、Ｖ相出力電流値Ｉｖ、Ｗ相出力電流値Ｉｗをインタフェイス５４を介してＣＰＵ５２に取り込む処理を行う。
【０１１４】
ステップＳ３０５では、回転角信号から電気角を演算する処理が行われる。即ち、モータ４０の回転角を検出するモータレゾルバ４２からのモータ回転角信号θｍに基づいて電気角θｅを演算する処理を行う。なおこの電気角θｅは、次のステップＳ３０７によるインバータ５６の出力電流値Ｉｕ,Ｉｖ,Ｉｗをｄｑ変換する処理に用いられる。
【０１１５】
続くステップＳ３０７では、ｄ軸出力電流値Ｉｄ、ｑ軸出力電流値Ｉｑをそれぞれ演算する処理が行われる。この処理は、前述したＰＩ制御系の３相２相変換手段５２ｍにより実行されるもので、ステップＳ３０３により取り込まれたインバータ５６の各相の出力電流Ｉｕ,Ｉｖ,ＩｗをステップＳ３０５により求められた電気角θｅに基づいてｄｑ変換することにより、ｄ軸の出力電流値Ｉｄとｑ軸の出力電流値Ｉｑを求めるものである。
【０１１６】
ステップＳ３０９では、電圧指令値Ｖd*、Ｖq*を演算する処理が行われる。この処理は、前述したＰＩ制御系のＰＩ制御手段５２ｅ、５２ｆにより実行されるもので、加算手段５２ｃ、５２ｄにより求められた、アシスト制御手段５２ｂから出力される電流指令値Ｉq*、Ｉd*と、３相２相変換手段５２ｍから帰還されるインバータ５６の出力電流値Ｉｑ、Ｉｄとの偏差をＰＩ制御手段５２ｅ、５２ｆによりＰＩ制御することによって、ｄ軸の電圧指令値Ｖd*およびｑ軸の電圧指令値Ｖq*を演算する処理を行う。
【０１１７】
続くステップＳ３１１では、各相の電圧指令値Ｖu*,Ｖv*,Ｖw*を演算する処理が行われる。この処理は、前述したＰＩ制御系の２相３相変換手段５２ｇにより実行されるもので、ステップＳ３０９により求められたｄ軸電圧指令値Ｖd*およびｑ軸電圧指令値Ｖq*を、ステップＳ３０５により求められた電気角θｅに基づいてｄｑ逆変換することにより、Ｕ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*、Ｗ相電圧指令値Ｖw*を演算する処理を行う。
【０１１８】
ステップＳ３１３、Ｓ３１５、Ｓ３１７では、それぞれＵ相、Ｖ相、Ｗ相のＰＷＭ指令値を演算する処理が行われる。この処理は、前述したＰＩ制御系のＰＷＭ変換手段５２ｈにより実行されるもので、例えばステップＳ３１３においてはＵ相の電圧指令値Ｖu*をＰＷＭ指令値（ＰＷＭ信号）ＰＷＭu*に変換する（ＰＷＭu*＝Ｖu*／Ｖｂ×fulPWM＋fulPWM／２）。
【０１１９】
同様に、ステップＳ３１５では、Ｖ相の電圧指令値Ｖv*をＰＷＭ指令値（ＰＷＭ信号）ＰＷＭv*に変換する（ＰＷＭv*＝Ｖv*／Ｖｂ×fulPWM＋fulPWM／２）。またステップＳ３１７では、Ｗ相の電圧指令値Ｖw*をＰＷＭ指令値（ＰＷＭ信号）ＰＷＭw*に変換する（ＰＷＭw*＝Ｖw*／Ｖｂ×fulPWM＋fulPWM／２）。
【０１２０】
ステップＳ３１３、Ｓ３１５、Ｓ３１７によって各相のＰＷＭ信号が演算されると、これをインバータ５６に出力する処理をステップＳ３１９により行い、一連の本電流制御処理（デッドタイム補償なし）を終了する。そして、再び図４に示すデッドタイム補償制御系の演算処理に処理を戻して一連の本デッドタイム補償制御系の演算処理も終了し、次回の割り込み処理等による実行機会を待つ。
【０１２１】
次に、図４に示すステップＳ１０１により、学習完了フラグがセットされていると判断された場合（Ｓ１０１でＮｏ）について説明する。この場合は、前述したように、ステップＳ１０７に処理を移行して電流制御処理（デッドタイム補償あり）を行うので、図７を参照して当該電流制御処理（デッドタイム補償あり）の流れを説明する。
【０１２２】
図７に示すように、電流制御処理（デッドタイム補償あり）は、図６を参照して説明した電流制御処理（デッドタイム補償なし）と同様の処理を行っているステップがある。そのため、図６に示す電流制御処理（デッドタイム補償なし）と実質的に同一の処理ステップについては、図７において同一符号を付すとともにそれらの説明を省略する。
【０１２３】
電流制御処理（デッドタイム補償あり）では、所定の初期化処理の後、ステップＳ３０１、Ｓ３０３、Ｓ３０５、Ｓ３０７、Ｓ３０９、Ｓ３１１により、トルク信号Ｔｓ等に基づいて各演算処理を行い、各相の電圧指令値Ｖu*,Ｖv*,Ｖw*を求めると、ステップＳ４００、Ｓ４２０、Ｓ４４０により、それぞれＵ相、Ｖ相、Ｗ相のデッドタイム補償制御処理を行う。
【０１２４】
ここで、Ｕ相のデッドタイム補償制御処理を説明する。なお、Ｖ相、Ｗ相のデッドタイム補償制御処理も同様に行われる。
ステップＳ４０１では、Ｕ相プラス指令であるか否かの判断処理が行われる。即ち、前述のステップＳ２０３により取り込んだＵ相電圧指令値Ｖu*に基づいてそれが０（ゼロ）より大きいか、つまりプラスであるか否かを判断する処理を行う。これによりＵ相プラス指令であると判断された場合には（Ｓ４０１でＹｅｓ）、続くステップＳ４０３によりＵ相ＰＷＭ指令値を演算する処理を行う。
【０１２５】
一方、ステップＳ４０１によりＵ相プラス指令であると判断されない場合には（Ｓ４０１でＮｏ）、ステップＳ４０５に処理を移行して次はＵ相マイナス指令であるか否かの判断処理を行う。ステップＳ４０５による判断処理も大小関係が逆になること以外はステップＳ４０１によるものとほぼ同様である。
【０１２６】
ステップＳ４０５によりＵ相マイナス指令であると判断された場合には（Ｓ４０５でＹｅｓ）、続くステップＳ４０７によりＵ相ＰＷＭ指令値を演算する処理を行う。一方、ステップＳ４０５によりＵ相マイナス指令であると判断されない場合には（Ｓ４０５でＮｏ）、ステップＳ４０９によりＵ相ＰＷＭ指令値を演算する処理を行う。
【０１２７】
次にステップＳ４０３、Ｓ４０７、Ｓ４０９により行われるＵ相ＰＷＭ指令値を演算する処理について説明する。これらによる各処理は、いずれもＵ相ＰＷＭ指令値を演算するものであるが、それぞれの演算式が以下のように異なるため、処理されるステップによって得られるデッドタイム補償量が異なる。
【０１２８】
ステップＳ４０３では、Ｕ相ＰＷＭ指令値演算として次の式(1) によりＰＷＭ指令値を求める演算が行われる。なお、式(1) において、Ｖu*はＵ相電圧指令値、Ｖｂ は直流電源電圧値、fulPWMはＰＷＭの１周期分の時間、DTUpはＵ相のプラス側デッドタイム値である。
【０１２９】
ＰＷＭu*  ＝  Ｖu*／Ｖｂ × fulPWM ＋ fulPWM／２ ＋ DTUp    …(1)
【０１３０】
即ち、図６を参照して説明した電流制御処理（デッドタイム補償なし）のステップＳ３１３によるＵ相ＰＷＭ指令値演算とほぼ同様であるが、右辺最後の項においてＵ相のプラス側デッドタイム値DTUpを加算している点がステップＳ３１３による演算とは異なる。つまり、ステップＳ３１３では「デッドタイム補償なし」を前提としているため、Ｕ相のプラス側デッドタイム値DTUpが加算されることがないのである。
【０１３１】
ステップＳ４０７では、Ｕ相ＰＷＭ指令値演算として次の式(2) によりＰＷＭ指令値を求める演算が行われる。なお、式(2) におけるＶu*、Ｖｂ 、fulPWMは式(1) と同様であり、またDTUmはＵ相のマイナス側デッドタイム値である。
【０１３２】
ＰＷＭu*  ＝  Ｖu*／Ｖｂ × fulPWM ＋ fulPWM／２ ＋ DTUm    …(2)
【０１３３】
ステップＳ４０３と同様、図６のステップＳ３１３によるＵ相ＰＷＭ指令値演算とほぼ同様であるが、右辺最後の項においてＵ相のマイナス側デッドタイム値DTUmを加算している点がステップＳ３１３による演算とは異なる。なお、マイナス側デッドタイム値DTUmは、実際には減算されるものであるが、このDTUm自体が負の値をもつことから式(2) 上では形式的に加算している。
【０１３４】
ステップＳ４０９では、Ｕ相ＰＷＭ指令値演算として次の式(3) によりＰＷＭ指令値を求める演算が行われる。なお、式(2) におけるＶu*、Ｖｂ 、fulPWMは式(1) と同様である。
【０１３５】
ＰＷＭu*  ＝  Ｖu*／Ｖｂ × fulPWM ＋ fulPWM／２             …(3)
【０１３６】
このステップＳ４０９による演算式(3) は、図６のステップＳ３１３によるＵ相ＰＷＭ指令値演算と全く同じである。これは、Ｕ相の電圧指令値Ｖu*が、プラス側でもマイナス側でもない場合には、Ｕ相の電圧指令値Ｖu*がゼロ、つまり電流が流れていない状態にあるので、デッドタイム補償を行う必要がない。したがって、結果的に、図６に示すデッドタイム補償なしの電流制御処理と同様に処理されることから、当該式(3) と図６のステップＳ３１３によるＵ相ＰＷＭ指令値演算とは同様になる。
【０１３７】
このようにステップＳ４００においては、Ｕ相のデッドタイム補償制御がされるが、このステップＳ４００による処理は、図３を参照して前述したＰＩ制御系のデッドタイム補償制御手段５２ｑにより実行される。即ち、図３に示すデッドタイム補償制御手段５２ｑでは、２相３相変換手段５２ｇから入力されるＵ相電圧指令値Ｖu*に対して、デッドタイム補償値演算手段５２ｐから与えられるＵ相のデッドタイム値（プラス側DTUp、マイナス側DTUm）を決定することが可能なＵ相ＰＷＭ指令値マップ５２ｕによって、デッドタイム補償制御を行っており、これにより前述したステップＳ４０１〜Ｓ４０９による各処理が実現されている。
【０１３８】
同様に、ステップＳ４２０においてもＶ相のデッドタイム補償制御が、またステップＳ４４０においてもＷ相のデッドタイム補償制御が、それぞれステップＳ４００と同様に行われる。
即ち、Ｖ相については、デッドタイム補償制御手段５２ｑにより、２相３相変換手段５２ｇから入力されるＶ相電圧指令値Ｖv*に対してデッドタイム補償値演算手段５２ｐから与えられるＶ相のデッドタイム値（プラス側DTVp、マイナス側DTVm）を決定することが可能なＶ相ＰＷＭ指令値マップ５２ｖによって、デッドタイム補償制御を行っており、またＷ相については、デッドタイム補償制御手段５２ｑにより、２相３相変換手段５２ｇから入力されるＷ相電圧指令値Ｖw*に対してデッドタイム補償値演算手段５２ｐから与えられるＷ相のデッドタイム値（プラス側DTWp、マイナス側DTWm）を決定することが可能なＷ相ＰＷＭ指令値マップ５２ｗによって、デッドタイム補償制御を行っている。
【０１３９】
ステップＳ４００、Ｓ４２０、Ｓ４４０によって各相のＰＷＭ信号が演算されると、これをインバータ５６に出力する処理をステップＳ３１９により行い、一連の本電流制御処理（デッドタイム補償あり）を終了する。そして、再び図４に示すデッドタイム補償制御系の演算処理に処理を戻して一連の本デッドタイム補償制御系の演算処理も終了し、次回の割り込み処理等による実行機会を待つ。
【０１４０】
なお、図３に示すデッドタイム補償制御系の例では、２相３相変換手段５２ｇから出力されるＵ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*およびＷ相電圧指令値Ｖw*をデッドタイム補償値演算手段５２ｐに入力することにより、図７のステップＳ４０１およびステップＳ４０５によるＵ相電圧指令値の方向判断（プラスかマイナスか）を行っていたが、これに限られることはなく、例えば、インバータ５６から出力される「Ｕ相出力電流値Ｉｕ、Ｖ相出力電流値ＩｖおよびＷ相出力電流値Ｉｗ」に基づいてステップＳ４０１およびステップＳ４０５による方向判断を行っても良い。また、図３に示すアシスト制御手段５２ｂから出力されるｑ軸電流指令値Ｉq*およびｄ軸電流指令値Ｉd*を２相３相変換手段５２ｇと同様のｄｑ逆変換手段を介して「Ｕ相電流指令値Ｉu*、Ｖ相電流指令値Ｉv*およびＷ相電流指令値Ｉw*」を生成しこれに基づいてステップＳ４０１およびステップＳ４０５による方向判断を行っても良い。
【０１４１】
このように２相３相変換手段５２ｇから出力されるＵ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*およびＷ相電圧指令値Ｖw*に基づいて各相ごとにデッドタイム補償量をプラス側とマイナス側とで求め、電流センサ４７により検出されたＵ相出力電流値Ｉｕ、Ｖ相出力電流値ＩｖおよびＷ相出力電流値Ｉｗに基づいて各相ごとに、プラス側に電流が流れている場合にはプラス側のデッドタイム補償量を、またマイナス側に電流が流れている場合にはマイナス側のデッドタイム補償量を、ＰＷＭ変換後のＰＷＭ指令値（ＰＷＭ信号）に加える。
【０１４２】
これにより、ＰＷＭ指令値（ＰＷＭ信号）ＰＷＭu*,ＰＷＭv*,ＰＷＭw*のディーティ比がこの加えられた補償量に従って変化する。例えばプラス側のデッドタイム補償量を加えた場合には、デッドタイム期間中の不足分を補うためにディーティを余分に拡げる。一方、マイナス側のデッドタイム補償量を加えた場合には、デッドタイム期間中の余剰分を減らすためにディーティを余分に狭くする。このようなディーティ比の変化は、インバータ５６のスイッチング回路５６ｂを構成するスイッチング素子Ｑ11、Ｑ12、Ｑ13、Ｑ21、Ｑ22、Ｑ23ごとに演算され、制御されるため、例えばスイッチング素子ごとに電気的特性やスイッチング特性等のバラツキがあっても、そのようなバラツキに柔軟に適応した制御を行うことができるばかりでなく、スイッチング素子の経年変化や温度特性による電気的特性やスイッチング特性等の変動にも対応したデッドタイム補償制御を行うことができる。
【０１４３】
したがって、図８(A) に示すように、本第１実施形態に係る本電気式動力舵取装置においては、そのモータ４０に流れるインバータ５６の出力電流Ｉｕ,Ｉｖ,Ｉｗを実機において観測したところ、各相電流波形は、電流値０Ａ（ゼロアンペア）のゼロクロス近傍領域であっても、図８(B) に示すような顕著な波形歪みを伴っていないことが本願発明者により確認されている。なお、図８(B) に示す電流波形は、デッドタイム補償制御が行われていない場合の構成（図１８参照）において観測されたものである。
【０１４４】
以上説明したように、本第１実施形態の本電気式動力舵取装置のデッドタイム補償制御によると、 (1)ＰＷＭ制御に対する「Ｕ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*およびＷ相電圧指令値Ｖw*」と (2)インバータ５６の「Ｕ相出力電圧値Ｖｕ、Ｖ相出力電圧値ＶｖおよびＷ相出力電圧値Ｖｗ」と (3)直流電源Ｂatt から出力される直流電源電圧値Ｖｂと (4)ＰＷＭ制御に対する「Ｕ相電流指令値Ｉu*、Ｖ相電流指令値Ｉv*およびＷ相電流指令値Ｉw*」またはインバータ５６の「Ｕ相出力電流値Ｉｕ、Ｖ相出力電流値ＩｖおよびＷ相出力電流値Ｉｗ」の少なくとも一方と、に基づいて、デッドタイム補償制御手段５２ｑによるデッドタイム補償量DTUp、DTUm、DTVp、DTVm、DTWp、DTWm（以下「DTUp〜DTWm」という。）をデッドタイム補償値演算手段５２ｐにより求める。これにより、実際に、インバータ５６から出力される (2)の「Ｕ相出力電圧値Ｖｕ、Ｖ相出力電圧値ＶｖおよびＷ相出力電圧値Ｖｗ」に基づいて (1)の「Ｕ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*およびＷ相電圧指令値Ｖw*」と偏差ΔＶｕ、ΔＶｖ、ΔＶｗを求めることから、インバータ５６のスイッチング回路５６ｂを構成するスイッチング素子Ｑ11〜Ｑ23ごとに相違し得る電気的特性（例えばターンオン時間やターンオフ時間等）を当該デッドタイム補償量DTUp〜DTWmに反映させることができる。また当該スイッチング回路５６ｂを構成するスイッチング素子Ｑ11〜Ｑ23以外の能動素子および受動素子や、インバータ５６を構成するスイッチング回路５６ｂ以外の回路部品（例えば能動素子、受動素子等）ごとに相違し得る電気的特性も当該デッドタイム補償量DTUp〜DTWmに反映させることができる。つまり、当該スイッチング素子Ｑ11〜Ｑ23等ごとにバラツキのある電気的特性の差異や経年変化や温度特性による電気的特性の変動等を考慮したデッドタイム補償制御を行うことができる。したがって、スイッチング素子Ｑ11〜Ｑ23等の電気的特性に対応させてデッドタイムにおけるトルクリップルを減少させることができるので、トルクリップルによる異音や振動の発生を抑制することができる。
【０１４５】
また、本第１実施形態の本電気式動力舵取装置のデッドタイム補償制御によると、図５に示すステップＳ２１３、Ｓ２１７により、 (4)の「Ｕ相電流指令値Ｉu*、Ｖ相電流指令値Ｉv*およびＷ相電流指令値Ｉw*」またはインバータ５６の「Ｕ相出力電流値Ｉｕ、Ｖ相出力電流値ＩｖおよびＷ相出力電流値Ｉｗ」の電流方向の正負双方向について、それぞれ個別にデッドタイム補償量DTUp〜DTWmを求める。これにより、インバータ５６を駆動するＰＷＭ信号の立ち上がりタイミングおよび立ち下がりタイミングの双方についてデッドタイム補償量DTUp〜DTWmを個別に求めることができるので、当該ＰＷＭ信号の立ち上がりにおけるデッドタイム補償量DTUp〜DTWmと、当該ＰＷＭ信号の立ち下がりにおけるデッドタイム補償量DTUp〜DTWmと、が異なる場合であっても、双方個別にデッドタイムにおけるトルクリップルを減少させることができる。したがって、ＰＷＭ信号の立ち上がりおよび立ち下がりにおけるスイッチング素子Ｑ11〜Ｑ23の電気的特性（例えばターンオン時間やターンオフ時間等）が異なる場合においても、トルクリップルによる異音や振動の発生を抑制することができる。
【０１４６】
さらに、本第１実施形態の本電気式動力舵取装置のデッドタイム補償制御によると、図５に示すステップＳ２１１、Ｓ２１５により、 (4)の「Ｕ相電流指令値Ｉu*、Ｖ相電流指令値Ｉv*およびＷ相電流指令値Ｉw*」またはインバータ５６の「Ｕ相出力電流値Ｉｕ、Ｖ相出力電流値ＩｖおよびＷ相出力電流値Ｉｗ」の電流方向が正のときには電流判定閾値Ｉ0 を上回る場合にデッドタイム補償量DTUpを求めるとともに、 (4)の同電流方向が負のときには電流判定閾値−Ｉ0 を下回る場合にデッドタイム補償量DTUmを求める。これにより、当該電流判定閾値Ｉ0 を上回らず電流判定閾値−Ｉ0 を下回らない範囲においては、デッドタイム補償量DTUp〜DTWmを求めないので、当該範囲におけるデッドタイム補償量DTUp〜DTWmに基づいたデッドタイム補償制御を防止することができる。そのため、 (4)の同電流方向が正から負に切り替わったり、負から正に切り替わったりするゼロクロス近傍領域（ゼロアンペア境界近傍範囲）においてはデッドタイム補償量DTUp〜DTWmを求めないので、ノイズ等の影響により当該ゼロクロス近傍領域で電流方向を逆に誤検出するといった事態を防止することができる。したがって、このような誤検出による電流方向に基づいたデッドタイム補償量DTUp〜DTWmの演算を回避できるので、誤ったデッドタイム補償制御により生じるトルクリップルによる異音や振動の発生を防止することができる。
【０１４７】
また、本第１実施形態の本電気式動力舵取装置のデッドタイム補償制御によると、図５に示すステップＳ２１３、Ｓ２１７により、 (1)ＰＷＭ制御に対する「Ｕ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*およびＷ相電圧指令値Ｖw*」と (2)インバータ５６の「Ｕ相出力電圧値Ｖｕ、Ｖ相出力電圧値ＶｖおよびＷ相出力電圧値Ｖｗ」と (3)直流電源Ｂatt から出力される直流電源電圧値Ｖｂと (4)ＰＷＭ制御に対する「Ｕ相電流指令値Ｉu*、Ｖ相電流指令値Ｉv*およびＷ相電流指令値Ｉw*」またはインバータ５６の「Ｕ相出力電流値Ｉｕ、Ｖ相出力電流値ＩｖおよびＷ相出力電流値Ｉｗ」の少なくとも一方と、に基づいて求めた複数のデッドタイム補償量の平均値を、デッドタイム補償量として求める（段落番号０１０３〜段落番号０１０５参照）。これにより、複数回に亘って求めたデッドタイム補償量DTUp〜DTWmの平均値を実際に用いるデッドタイム補償量DTUp〜DTWmとするので、デッドタイム補償量DTUp〜DTWmを一度だけ求めた場合に比べて、ノイズ等により生じるデッドタイム補償量DTUp〜DTWmの誤差を抑制することができる。したがって、トルクリップルによる異音や振動の発生をより効果的に抑制することができる。
【０１４８】
また、本第１実施形態の本電気式動力舵取装置のデッドタイム補償制御によると、図７に示すステップＳ４０３、Ｓ４０７は、インバータ５６を駆動制御する「Ｕ相ＰＷＭ信号ＰＷＭu*、Ｖ相ＰＷＭ信号ＰＷＭv*およびＷ相ＰＷＭ信号ＰＷＭw*」に、ＰＷＭ制御に対する「Ｕ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*およびＷ相電圧指令値Ｖw*」に基づいたデッドタイム補償量DTUp〜DTWmを加算することにより行われる。これにより、ＰＷＭ制御に対する「Ｕ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*およびＷ相電圧指令値Ｖw*」を参照すれば、当該電圧指令値に基づいたデッドタイム補償量DTUp〜DTWmをインバータ５６を駆動制御するＰＷＭ信号ＰＷＭu*,ＰＷＭv*,ＰＷＭw*に加算しデッドタイム補償することができ、トルクリップルによる異音や振動の発生を抑制することができる。
【０１４９】
また、本第１実施形態の本電気式動力舵取装置のデッドタイム補償制御によると、図７に示すステップＳ４０３、Ｓ４０７は、インバータ５６を駆動制御する「Ｕ相ＰＷＭ信号ＰＷＭu*、Ｖ相ＰＷＭ信号ＰＷＭv*およびＷ相ＰＷＭ信号ＰＷＭw*」に、インバータ５６の「Ｕ相出力電流値Ｉｕ、Ｖ相出力電流値ＩｖおよびＷ相出力電流値Ｉｗ」に基づいたデッドタイム補償量DTUp〜DTWmを加算することにより行われる。これにより、インバータ５６の「Ｕ相出力電流値Ｉｕ、Ｖ相出力電流値ＩｖおよびＷ相出力電流値Ｉｗ」を参照すれば、当該インバータ５６の出力電流値に基づいたデッドタイム補償量DTUp〜DTWmをインバータ５６を駆動制御するＰＷＭ信号ＰＷＭu*,ＰＷＭv*,ＰＷＭw*に加算しデッドタイム補償することができ、トルクリップルによる異音や振動の発生を抑制することができる。
【０１５０】
また、本第１実施形態の本電気式動力舵取装置のデッドタイム補償制御によると、図７に示すステップＳ４０３、Ｓ４０７は、インバータ５６を駆動制御する「Ｕ相ＰＷＭ信号ＰＷＭu*、Ｖ相ＰＷＭ信号ＰＷＭv*およびＷ相ＰＷＭ信号ＰＷＭw*」に、ｑ軸電流指令値Ｉq*およびｄ軸電流指令値Ｉd*を２相３相変換手段５２ｇと同様のｄｑ逆変換手段を介して「Ｕ相電流指令値Ｉu*、Ｖ相電流指令値Ｉv*およびＷ相電流指令値Ｉw*」を生成しこれに基づいたデッドタイム補償量DTUp〜DTWmを加算することにより行われる。これにより、「Ｕ相電流指令値Ｉu*、Ｖ相電流指令値Ｉv*およびＷ相電流指令値Ｉw*」を参照すれば、当該電流指令値に基づいたデッドタイム補償量DTUp〜DTWmをインバータ５６を駆動制御するＰＷＭ信号ＰＷＭu*,ＰＷＭv*,ＰＷＭw*に加算しデッドタイム補償することができ、トルクリップルによる異音や振動の発生を抑制することができる。
【０１５１】
また、本第１実施形態の本電気式動力舵取装置のデッドタイム補償制御では、デッドタイム補償量DTUp〜DTWmとして、インバータ５６を駆動制御するＰＷＭ信号ＰＷＭu*,ＰＷＭv*,ＰＷＭw*のデューティ比を求めても良い。つまり、デッドタイム補償量DTUp〜DTWmを時間量に置き換えてＰＷＭ信号ＰＷＭu*,ＰＷＭv*,ＰＷＭw*を補償しても良い。これにより、インバータ５６を駆動制御するＰＷＭ信号ＰＷＭu*,ＰＷＭv*,ＰＷＭw*に当該ＰＷＭ信号のデューティ比を加算することにより、デッドタイム補償制御を行うことができる。したがって、インバータ５６を駆動制御するＰＷＭ信号に対して行われるデッドタイム補償制御によって、トルクリップルによる異音や振動の発生を抑制することができる。
【０１５２】
また、本第１実施形態の本電気式動力舵取装置のデッドタイム補償制御では、モータ４０の起動後にデッドタイム補償量を求めるように、図４〜図７に示す各演算制御処理をＥＣＵ５０のＣＰＵ５２により行うように構成しても良い。これにより、モータ４０の起動後において、実際にインバータ５６から出力される (2)のインバータ５６の「Ｕ相出力電圧値Ｖｕ、Ｖ相出力電圧値ＶｖおよびＷ相出力電圧値Ｖｗ」に基づいて (1)のＰＷＭ制御に対する「Ｕ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*およびＷ相電圧指令値Ｖw*」と偏差ΔＶｕ、ΔＶｖ、ΔＶｗを求めることから、設計時等により予め設定されたデッドタイム補償量を用いるのではなく、実際に駆動制御を行うインバータ５６およびモータ４０に対応して、当該インバータ５６のスイッチング回路５６ｂを構成するスイッチング素子Ｑ11〜Ｑ23ごとに相違し得る電気的特性（例えばターンオン時間やターンオフ時間等）を当該デッドタイム補償量DTUp〜DTWmに反映させることができる。また当該スイッチング回路５６ｂを構成するスイッチング素子Ｑ11〜Ｑ23以外の能動素子および受動素子や、インバータ５６を構成するスイッチング回路５６ｂ以外の回路部品（例えば能動素子、受動素子等）ごとに相違し得る電気的特性も当該デッドタイム補償量DTUp〜DTWmに反映させることができる。つまり、インバータ５６やモータ４０等のハードウェア個々に異なる電気的特性あるいは経年変化や温度特性による電気的特性の変動等を考慮したデッドタイム補償制御を行うことができる。したがって、モータ４０の起動後において、スイッチング素子Ｑ11〜Ｑ23等の電気的特性に対応させてデッドタイムにおけるトルクリップルを減少させることができるので、トルクリップルによる異音や振動の発生を抑制することができる。
【０１５３】
［第２実施形態］
第２実施形態は、上述した本電気式動力舵取装置に図９に示すデッドタイム補償制御系を適用した例で、以下説明する各演算処理はＥＣＵ５０のＣＰＵ５２により実行されている。本第２実施形態では、図４〜７、図９〜図１１を参照して説明する。
【０１５４】
図９に示すように、本第２実施形態に係るデッドタイム補償制御系は、第１実施形態のデッドタイム補償制御系のデッドタイム補償値演算手段５２ｐに代えて、リアルタイムデッドタイム補償値演算手段５２ｘを用いている点が、第１実施形態のデッドタイム補償制御系と異なるところである。そのため、第１実施形態のデッドタイム補償制御系と実質的に同一の構成部分には同一符号を付し、それらの説明を省略する。
【０１５５】
本第２実施形態に係るデッドタイム補償制御系は、リアルタイムデッドタイム補償値演算手段５２ｘを備えているため、前述した第１実施形態のデッドタイム補償値演算手段５２ｐとは異なり、一旦、デッドタイム補償制御量DTUp〜DTWmの学習を完了してもその後もデッドタイム補償制御量DTUp〜DTWmの学習をリアルタイム（例えば１ミリ秒ごと）に継続して実行し続けるものである。
【０１５６】
なお、図４に示すように、第１実施形態では、デッドタイム補償制御量DTUp〜DTWmの学習を完了すると（Ｓ１０１でＮｏ）、ステップＳ１０７に処理を移行するため、それ以後はデッドタイム補償制御量DTUp〜DTWmの学習を行っていない。
【０１５７】
このようにデッドタイム補償制御系を構成することにより、リアルタイムデッドタイム補償値演算手段５２ｘは、モータ４０の起動後、所定周期（例えば１ミリ秒）ごとにデッドタイム補償量DTUp〜DTWmを求める。これにより、モータ４０の起動後においても例えば１ミリ秒ごとに、実際にインバータ５６から出力される (2)のインバータ５６の「Ｕ相出力電圧値Ｖｕ、Ｖ相出力電圧値ＶｖおよびＷ相出力電圧値Ｖｗ」に基づいて (1)のＰＷＭ制御に対する「Ｕ相電圧指令値Ｖu*、Ｖ相電圧指令値Ｖv*およびＷ相電圧指令値Ｖw*」と偏差ΔＶｕ、ΔＶｖ、ΔＶｗを求めることから、例えば、モータ４０の起動直後から時間の経過に伴ってインバータ５６内外に温度変化が生じて当該インバータ５６のスイッチング素子Ｑ11〜Ｑ23の電気的特性が変動しても、ほぼリアルタイムに当該電気的特性の変動をデッドタイム補償量DTUp〜DTWmに反映させることができる。またインバータ５６のスイッチング回路５６ｂを構成するスイッチング素子Ｑ11〜Ｑ23以外の能動素子および受動素子や、インバータを構成するスイッチング回路５６ｂ以外の回路部品（例えば能動素子、受動素子等）ごとに電気的特性に変動が生じても同様にデッドタイム補償量DTUp〜DTWmにほぼリアルタイムに反映させることができる。したがって、スイッチング素子Ｑ11〜Ｑ23等の電気的特性に対応させてほぼリアルタイムに、デッドタイムにおけるトルクリップルを減少させることができるので、スイッチング素子Ｑ11〜Ｑ23等の電気的特性が変動する場合においても、トルクリップルによる異音や振動の発生を抑制することができる。
【０１５８】
また、本第２実施形態に係るデッドタイム補償制御系では、図１０に示すようなデッドタイム補償制御系の演算処理を行うように構成することもできる。なお図１０において、第１実施形態の図４と同一符号を付してあるステップＳ１０１、Ｓ１０３、Ｓ１０５、Ｓ１０７については、実質的に同一の処理を行う。
【０１５９】
即ち、本電気式動力舵取装置の工場出荷前においては、テストモードとして（ステップＳ５０１でＹｅｓ）、ステップＳ１０３によりデッドタイム補償量演算処理（図５）を行ってデッドタイム補償量DTUp〜DTWmを求めてＥＣＵ５０の半導体メモリ装置に記憶し、Ｓ１０５によりデッドタイム補償なしの電流制御処理（図６）を行う。そして、本電気式動力舵取装置の工場出荷後においては、非テストモードとして（ステップＳ５０１でＮｏ）、工場出荷前に半導体メモリ装置に記憶しておいたデッドタイム補償量DTUp〜DTWmをステップＳ５０３により読み出し、Ｓ１０７によりデッドタイム補償ありの電流制御処理（図７）を行う。その後、ステップＳ５０５によりデッドタイム補償量リアルタイム演算処理（図１１）を行う。
【０１６０】
つまり、図１０に示すデッドタイム補償制御系の演算処理では、工場出荷前において求めたデッドタイム補償量DTUp〜DTWmは、工場出荷後のモータ４０の起動当初においては使用するものの、その後はこれから説明するリアルタイムデッドタイム補償値演算手段５２ｘによるデッドタイム補償量リアルタイム演算処理（図１１）により求めたリアルデッドタイム補償量RLDTUp、RLDTUmによりデッドタイム補償制御を行うように構成したものである。
【０１６１】
ここで、図１０のステップＳ５０５により実行されるデッドタイム補償量リアルタイム演算処理について図１１を参照して説明する。
図１１に示すように、デッドタイム補償量リアルタイム演算処理は、ステップＳ５５１、Ｓ５５３、Ｓ５５５による処理が異なるほかは、第１実施形態の図５に示すデッドタイム補償量演算処理とほぼ同様の処理を行っている。そのため、そのような処理については同一の符号を付し、それらの説明を省略する。
【０１６２】
デッドタイム補償量リアルタイム演算処理では、図５に示す第１実施形態とほぼ同様に、ステップＳ２００’によりＵ相デッドタイム補償量演算、ステップＳ２２０’によりＶ相デッドタイム補償量演算、Ｓ２４０’によりＵ相デッドタイム補償量演算、をそれぞれ行っている。ただし、第２実施形態においては、各相のデッドタイム補償量DTUp〜DTWmを直接求めるのではなく、各相のデッドタイム補償量DTUp〜DTWmの変化分をΔDTUp、ΔDTUm、ΔDTVp、ΔDTVm、ΔDTVm、ΔDTWm（以下「ΔDTUp〜ΔDTWm」という。）として求める処理を行っている。
【０１６３】
そのため、図１１に示すように、ステップＳ２０９’においては、ステップＳ２０７によりデッドタイム補償量の不足分をＵ相電圧偏差ΔＶｕとして求めた後、このステップではこれをＰＷＭのディーティ比の変化分ΔDTU （＝ΔＶｕ／Ｖｂ×fulPWM）に換算する演算処理を行う。
【０１６４】
またステップＳ２１３’においては、ステップＳ２０９’により求めたＰＷＭのディーティ比の変化分ΔDTU を所定数集めてその総和の平均値を求める処理を行う。例えば、本第２実施形態では、このステップ２１３’による処理を行うごとにプラス側カウンタ値NUp をインクリメント（NUp ＝NUp ＋１）するとともにＰＷＭのディーティ比の変化分としてのプラス側デッドタイム総和値sumUp に今回演算したディーティ比の変化分ΔDTU を加算する（sumUp ＝sumUp ＋ΔDTU ）処理を行う。そして、この加算後のsumUp をインクリメント後のプラス側カウンタ値NUp で除算しＵ相のプラス側デッドタイム値の変化分ΔDTUp（＝sumUp ／NUp ）を演算する処理を行う。これにより、Ｕ相についてのプラス側デッドタイム値の変化分ΔDTUpが求められる。
【０１６５】
同様に、ステップＳ２１７’においては、ステップ２１７’による処理を行うごとにマイナス側カウンタ値NUm をインクリメント（NUm ＝NUm ＋１）するとともにＰＷＭのディーティ比の変化分Δとしてのマイナス側デッドタイム総和値sumUm に今回演算したディーティ比の変化分ΔDTU を加算する（sumUm ＝sumUm ＋ΔDTU ）処理を行い、この加算後のsumUm をインクリメント後のプラス側カウンタ値NUm で除算してＵ相のマイナス側デッドタイム値の変化分ΔDTUm（＝sumUm ／NUm ）を演算する処理を行う。これにより、Ｕ相についてのマイナス側デッドタイム値の変化分ΔDTUmが求められる。
【０１６６】
ステップＳ２２０’においてもＶ相についてのプラス側デッドタイム値の変化分ΔDTVp、マイナス側デッドタイム値の変化分ΔDTVmが求められ、またステップＳ２４０’においてもＷ相についてのプラス側デッドタイム値の変化分ΔDTWp、マイナス側デッドタイム値の変化分ΔDTWmが求められる。
【０１６７】
このようにしてΔDTUp〜ΔDTWmが求められると、ステップＳ５５１により、ステップＳ２１３’によりインクリメントされたプラス側カウンタ値NUp やステップＳ２１７’によりインクリメントされたマイナス側カウンタ値NUm に基づいて、双方のカウンタ値が規定サンプル数Ｎ0 （例えばＮ0 ＝１００）を超えているか否かを判断する。同様にＶ相、Ｗ相についてもそれぞれ学習回数が判断される（Ｖ相；NVp ＞Ｎ0 かつNVm ＞Ｎ0 、Ｗ相；NWp ＞Ｎ0 かつNWm ＞Ｎ0 ）。
【０１６８】
ステップＳ５５１による条件（Ｕ相；NUp ＞Ｎ0 かつNUm ＞Ｎ0 、Ｖ相；NVp ＞Ｎ0 かつNVm ＞Ｎ0 、Ｗ相；NWp ＞Ｎ0 かつNWm ＞Ｎ0 ）のすべてを充足していると判断した場合には（Ｓ５５１でＹｅｓ）、各相のデッドタイム補償量の更新準備が完了していることになるので、ステップＳ５５３に処理を移行して、各デッドタイム値の変化分ΔDTUp、ΔDTUm、ΔDTVp、ΔDTVm、ΔDTVm、ΔDTWmを加算（RLDTUp＝RLDTUp＋ΔDTUp、RLDTUm＝RLDTUm＋ΔDTUm、RLDTVp＝RLDTVp＋ΔDTVp、RLDTVm＝RLDTVm＋ΔDTVm、RLDTWp＝RLDTWp＋ΔDTWp、RLDTWm＝RLDTWm＋ΔDTWm）してリアルデッドタイム補償量RLDTUp、RLDTUmを更新する処理を行う。
【０１６９】
一方、ステップＳ５５１による条件のすべてを充足していると判断できない場合には（Ｓ５５１でＮｏ）、次回の割り込み処理時においても再度、ステップＳ２１３’またはステップＳ２１７’による各相のデッドタイム補償量演算処理を行う必要があるので、ステップＳ５５３による更新処理を行うことなく、一連の本デッドタイムリアルタイム補償量演算処理を終了する。
【０１７０】
ステップＳ５５３によるデッドタイム補償量を更新する処理が終了すると、ステップＳ５５５に処理を移行してステップＳ２１３’やステップＳ２１７’で使用した各データ（プラス側カウンタ値NUp,NVp,NWp,マイナス側カウンタ値NUm,NVm,NWm,プラス側デッドタイム総和値sumUp,sumVp,sumWp,マイナス側デッドタイム総和値sumUm,sumVm,sumWm）をゼロクリアするデータクリア処理を行い、一連の本デッドタイム補償量リアルタイム演算処理を終了する。
【０１７１】
このように本第２実施形態に係るデッドタイム補償制御系によると、工場出荷前において求めたデッドタイム補償量DTUp〜DTWmは、工場出荷後のモータ４０の起動当初においては使用し、その後はリアルタイムデッドタイム補償値演算手段５２ｘによるデッドタイム補償量リアルタイム演算処理（図１１）により求めたリアルデッドタイム補償量RLDTUp、RLDTUmによりデッドタイム補償制御を行う。これにより、例えば、モータ４０の起動直後から時間の経過に伴ってインバータ５６内外に温度変化が生じて当該インバータ５６のスイッチング素子Ｑ11〜Ｑ23の電気的特性が変動しても、ほぼリアルタイムに当該電気的特性の変動をリアルデッドタイム補償量RLDTUp、RLDTUmに反映させることができる。またインバータ５６のスイッチング回路５６ｂを構成するスイッチング素子Ｑ11〜Ｑ23以外の能動素子および受動素子や、インバータを構成するスイッチング回路５６ｂ以外の回路部品（例えば能動素子、受動素子等）ごとに電気的特性に変動が生じても同様にリアルデッドタイム補償量RLDTUp、RLDTUmにほぼリアルタイムに反映させることができる。したがって、スイッチング素子Ｑ11〜Ｑ23等の電気的特性に対応させてほぼリアルタイムに、デッドタイムにおけるトルクリップルを減少させることができるので、スイッチング素子Ｑ11〜Ｑ23等の電気的特性が変動する場合においても、トルクリップルによる異音や振動の発生を抑制することができる。
【０１７２】
［第３実施形態］
第３実施形態は、上述した本電気式動力舵取装置に図１２に示すデッドタイム補償制御系を適用した例で、以下説明する各演算処理はＥＣＵ５０のＣＰＵ５２により実行されている。本第３実施形態では、図４〜図６、図１２〜図１４を参照して説明する。
【０１７３】
図１２に示すように、本第３実施形態に係るデッドタイム補償制御系は、第１実施形態のデッドタイム補償制御系のデッドタイム補償値演算手段５２ｐに代えて、本電気式動力舵取装置の工場出荷前テストに使用されるデッドタイム補償値演算手段５２ｙを用いている点が、第１実施形態のデッドタイム補償制御系と異なるところである。そのため、第１実施形態のデッドタイム補償制御系と実質的に同一の構成部分には同一符号を付し、それらの説明を省略する。
【０１７４】
本第３実施形態に係るデッドタイム補償制御系は、図１２に示すように、工場出荷前テスト用のデッドタイム補償値演算手段５２ｙとデッドタイム補償量記憶手段５２ｚを備えている。工場出荷前テスト用のデッドタイム補償値演算手段５２ｙは、本電気式動力舵取装置の工場出荷前テストにおいて、出荷検査装置TST から有線または無線通信回線を介して所定のテストコマンドを受信すると、図１３に示すステップＳ５０１によりテストモードであると判断して（Ｓ５０１でＹｅｓ）、ステップＳ１０１によるデッドタイム補償量学習未完了判断処理を経て未だ学習されてない場合には（Ｓ１０１でＹｅｓ）、ステップＳ１０３”によりデッドタイム補償量演算処理（図１４）を行いデッドタイム補償量DTUp〜DTWmを求め、図１２に示すデッドタイム補償量記憶手段５２ｚによりＥＣＵ５０の半導体メモリ装置に記憶する（図１４のステップＳ６０１）。その後、Ｓ１０５によりデッドタイム補償なしの電流制御処理（図６）を行う。
【０１７５】
一方、本電気式動力舵取装置の工場出荷後においては、非テストモードとして（ステップＳ５０１でＮｏ）、工場出荷前に半導体メモリ装置に記憶しておいたデッドタイム補償量DTUp〜DTWmをステップＳ５０３により読み出し、図１２に示すようにデッドタイム補償量記憶手段５２ｚからデッドタイム補償制御手段５２ｑにデッドタイム補償量DTUp〜DTWmを出力する。そして、Ｓ１０７によりデッドタイム補償ありの電流制御処理（図７）を行う。なお、図１３において、第１実施形態の図４と同一符号を付してあるステップＳ１０１、Ｓ１０５、Ｓ１０７については、実質的に同一の処理を行う。
【０１７６】
なお、ステップＳ１０３”によるデッドタイム補償量演算処理は、図１４に示すように、第１実施形態の図５に示すデッドタイム補償量演算処理とほぼ同様であるが、ステップＳ２５３の後処理にデッドタイム補償量をデッドタイム補償量記憶手段５２ｚ（半導体メモリ装置等）に記憶する処理が追加されている点が異なる。つまり、本第３実施形態に係るデッドタイム補償量演算処理では、ステップＳ２００、Ｓ２２０、Ｓ２４０により求めた各相のデッドタイム補償量をデッドタイム補償量記憶手段５２ｚに記憶してから一連の処理を終了する。
【０１７７】
このように本第３実施形態に係るデッドタイム補償制御系によると、本電気式動力舵取装置の出荷前においてデッドタイム補償量DTUp〜DTWmを求め当該デッドタイム補償量DTUp〜DTWmに係るデータをデッドタイム補償量記憶手段５２ｚ（半導体メモリ装置）に記録し、当該電気式動力舵取装置の出荷後においてはデッドタイム補償量記憶手段５２ｚから読み出されたデッドタイム補償量DTUp〜DTWmに係るデータに基づいてデッドタイム補償制御が行われる。これにより、デッドタイム補償量記憶手段５２ｚに記録されたデッドタイム補償量DTUp〜DTWmに基づいて、モータ４０の起動直後から直ちにデッドタイム補償制御を行うことができる。したがって、モータ４０の起動の都度、デッドタイム補償量DTUp〜DTWmを演算する必要がないため、モータ４０の起動直後から直ちにデッドタイムにおけるトルクリップルを減少させることができ、異音や振動の発生をモータの起動直後から抑制することができる。
【０１７８】
［第４実施形態］
第４実施形態は、第３実施形態と同様に、上述した本電気式動力舵取装置に図１２に示すデッドタイム補償制御系を適用した例で、以下説明する各演算処理はＥＣＵ５０のＣＰＵ５２により実行されている。本第４実施形態では、図４〜図６、図１２、図１５〜図１７を参照して説明する。
【０１７９】
図１５に示すように、本第４実施形態に係るデッドタイム補償制御系は、前述した第３実施形態の図１３に示すデッドタイム補償制御系の演算処理において、ステップＳ５０３とステップＳ１０７との間に、デッドタイム補償量記憶手段５２ｚからの読み出しに失敗したか否かを判断するステップＳ７０１と読み出しに失敗した場合にはデッドタイム補償量をデフォルト値dfDTUp、dfDTUmに設定するステップＳ７０３とを介在させた点が、第３実施形態のデッドタイム補償制御系と異なるところである。そのため第３実施形態のデッドタイム補償制御系の演算処理と実質的に同一の構成部分には同一符号を付し、それらの説明を省略する。
【０１８０】
図１５に示すように、本第４実施形態に係るデッドタイム補償制御系の演算処理では、デッドタイム補償量記憶手段５２ｚ（半導体メモリ装置等）からデッドタイム補償量DTUp〜DTWmに係るデータを読み出しに失敗した（正常に読み出せなかった）と判断された場合には（Ｓ７０１でＹｅｓ）、ステップＳ７０３によりデフォルト値に設定されたデッドタイム補償量dfDTUp、dfDTUm（既定の所定データ）に基づいてステップＳ１０７によるデッドタイム補償制御（図７）が行われる。これにより、例えば、当該デッドタイム補償量記憶手段５２ｚに記録されたデッドタイム補償量DTUp〜DTWmに係るデータが正常でなかった場合や当該デッドタイム補償量記憶手段５２ｚから読み出す途中にデッドタイム補償量DTUp〜DTWmに係るデータが壊れた場合には、デフォルト値のデッドタイム補償量dfDTUp、dfDTUmに基づいてデッドタイム補償制御が行われるので、当該正常ではないデータに係るデッドタイム補償量に基づいたデッドタイム補償制御を防止することができる。したがって、当該正常ではないデータに係るデッドタイム補償量を用いたデッドタイム補償制御による異音や振動の発生を防ぐことができる。
【０１８１】
また、本第４実施形態に係るデッドタイム補償制御系の演算処理では、図１６に示すようなデッドタイム補償量演算処理を行うように構成することもできる。図１６に示すように、本第４実施形態に係るデッドタイム補償量演算処理は、前述した第３実施形態の図１４に示すデッドタイム補償量演算処理において、ステップＳ２５１とステップＳ２５３との間に、ステップＳ２００、Ｓ２２０、Ｓ２４０において求めたデッドタイム補償量をチェックするステップＳ７１１を介在させ、さらにステップＳ２５３の後処理としてデッドタイム補償量をデッドタイム補償量記憶手段５２ｚに記憶するステップＳ６０１を置いた点が、第３実施形態のデッドタイム補償量演算処理と異なるところである。そのため、第３実施形態のデッドタイム補償量演算処理と実質的に同一の構成部分には同一符号を付し、それらの説明を省略する。
【０１８２】
図１６に示すように、本第４実施形態に係るデッドタイム補償量演算処理では、ステップＳ２００、Ｓ２２０、Ｓ２４０により求められたデッドタイム補償量DTUp〜DTWmが所定範囲内（(0≦DTUp≦DTS)and(-DTS≦DTUm≦0),(0≦DTVp≦DTS)and(-DTS≦DTVm≦0),(0≦DTWp≦DTS)and(-DTS≦DTWv≦0);DTSはデッドタイム設定値）にあるか否かをステップＳ７１１により判断し、デッドタイム補償量DTUp〜DTWmが当該所定範囲内にないと判断された場合には（Ｓ７１１でＮＧ）、ステップＳ７１３により所定データ（プラス側カウンタ値NUp,NVp,NWp,マイナス側カウンタ値NUm,NVm,NWm,プラス側デッドタイム総和値sumUp,sumVp,sumWp,マイナス側デッドタイム総和値sumUm,sumVm,sumWm）をゼロクリアするデータクリア処理を行い、一連の本デッドタイム補償量演算処理を終了する。
【０１８３】
一方、ステップＳ７１１によりデッドタイム補償量DTUp〜DTWmが当該所定範囲内にあると判断された場合には（Ｓ７１１でＯＫ）、ステップＳ２５３により学習完了フラグをＣＰＵ５２の半導体メモリ装置の所定領域等にセットする処理を行う。そして、正常に読み出されたデッドタイム補償量DTUp〜DTWmをデッドタイム補償量記憶手段５２ｚに記憶する処理をステップＳ６０１により行う。
【０１８４】
これにより、デッドタイム補償量DTUp〜DTWmが当該所定範囲内にないと判断された場合（Ｓ７１１でＮＧ）、例えば、 (2)の「Ｕ相出力電圧値Ｖｕ、Ｖ相出力電圧値ＶｖおよびＷ相出力電圧値Ｖｗ」や (4)の「Ｕ相電流指令値Ｉu*、Ｖ相電流指令値Ｉv*およびＷ相電流指令値Ｉw*」またはインバータ５６の「Ｕ相出力電流値Ｉｕ、Ｖ相出力電流値ＩｖおよびＷ相出力電流値Ｉｗ」に含まれ得るノイズ等により予定外の値を持つデッドタイム補償量が求められた場合には、再度、ステップＳ２００、Ｓ２２０、Ｓ２４０によりデッドタイム補償量DTUp〜DTWmが求められるので、当該予定外のデッドタイム補償量に基づいたデッドタイム補償制御を防止することができる。したがって、当該予定外のデッドタイム補償量を用いたデッドタイム補償制御による異音や振動の発生を防ぐことができる。
【０１８５】
さらに、本第４実施形態に係るデッドタイム補償制御系の演算処理では、図１７に示すようなデッドタイム補償量リアルタイム演算処理を行うように構成することもできる。
図１７に示すように、本第４実施形態に係るデッドタイム補償量リアルタイム演算処理は、前述した第２実施形態の図１１に示すデッドタイム補償量リアルタイム演算処理において、ステップＳ５５１とステップＳ５５３との間に、ステップＳ２００’、Ｓ２２０’、Ｓ２４０’において求めた各相のデッドタイム補償量DTUp〜DTWmの変化分ΔDTUp〜ΔDTWmにより更新前のリアルデッドタイム補償量RLDTUp、RLDTUm、RLDTVp、RLDTVm、RLDTWp、RLDTWm（以下「RLDTUp〜RLDTWm」という。）を仮に更新するデッドタイム補償量仮更新処理をステップＳ７５１として、またこの後処理に仮更新された仮デッドタイム補償量が所定範囲内にあるか否かをチェックする仮デッドタイム補償量チェック処理をステップＳ７５３として、それぞれ置いた点が、第２実施形態のデッドタイム補償量リアルタイム演算処理と異なるところである。そのため、第２実施形態のデッドタイム補償量リアルタイム演算処理と実質的に同一の構成部分には同一符号を付し、それらの説明を省略する。
【０１８６】
図１７に示すように、本第４実施形態に係るデッドタイム補償量リアルタイム演算処理では、ステップＳ２００’、Ｓ２２０’、Ｓ２４０’により求められた各相のデッドタイム補償量DTUp〜DTWmの変化分ΔDTUp〜ΔDTWmを、ステップＳ７５１により、更新前のリアルデッドタイム補償量RLDTUp〜RLDTWmに加算するデッドタイム補償量仮更新演算処理を行う（RLDTUp'=RLDTUp+ΔDTUp,RLDTUm'=RLDTUm+ΔDTUm,RLDTVp'=RLDTVp+ΔDTVp,RLDTVm'=RLDTVm+ΔDTVm,RLDTWp'=RLDTWp+ΔDTWp,RLDTWm'=RLDTWm+ΔDTWm）。これにより求められた仮デッドタイム補償量RLDTUp'、RLDTUm'、RLDTVp'、RLDTVm'、RLDTWp'、RLDTWm'（以下「RLDTUp'〜RLDTWm'」という。）が、所定範囲内（(0≦DTUp'≦DTS)and(-DTS≦DTUm'≦0),(0≦DTVp'≦DTS)and(-DTS≦DTVm'≦0),(0≦DTWp'≦DTS)and(-DTS≦DTWv'≦0);DTSはデッドタイム設定値）にあるか否かを続くステップＳ７５３により判断し、仮デッドタイム補償量RLDTUp'〜RLDTWm'が当該所定範囲内にないと判断された場合には（Ｓ７５３でＮＧ）、ステップＳ５５５により所定データ（プラス側カウンタ値NUp,NVp,NWp,マイナス側カウンタ値NUm,NVm,NWm,プラス側デッドタイム総和値sumUp,sumVp,sumWp,マイナス側デッドタイム総和値sumUm,sumVm,sumWm）をゼロクリアするデータクリア処理を行い、一連の本デッドタイム補償量リアルタイム演算処理を終了する。
【０１８７】
一方、ステップＳ７５３により仮デッドタイム補償量RLDTUp'〜RLDTWm'が当該所定範囲内にあると判断された場合には（Ｓ７５３でＯＫ）、ステップＳ５５３により仮デッドタイム補償量RLDTUp'〜RLDTWm'をリアルデッドタイム補償量RLDTUp〜RLDTWmに置き換えてデータを更新する処理を行う。そして、ステップＳ５５５により所定データ（プラス側カウンタ値NUp,NVp,NWp,マイナス側カウンタ値NUm,NVm,NWm,プラス側デッドタイム総和値sumUp,sumVp,sumWp,マイナス側デッドタイム総和値sumUm,sumVm,sumWm）をゼロクリアするデータクリア処理を行い、一連の本デッドタイム補償量リアルタイム演算処理を終了する。
【０１８８】
これにより、仮デッドタイム補償量RLDTUp'〜RLDTWm'が当該所定範囲内にないと判断された場合（Ｓ７５３でＮＧ）、例えば、 (2)の「Ｕ相出力電圧値Ｖｕ、Ｖ相出力電圧値ＶｖおよびＷ相出力電圧値Ｖｗ」や (4)の「Ｕ相電流指令値Ｉu*、Ｖ相電流指令値Ｉv*およびＷ相電流指令値Ｉw*」またはインバータ５６の「Ｕ相出力電流値Ｉｕ、Ｖ相出力電流値ＩｖおよびＷ相出力電流値Ｉｗ」に含まれ得るノイズ等により予定外の値を持つ各相のデッドタイム補償量DTUp〜DTWmの変化分ΔDTUp〜ΔDTWmが求められた場合には、再度、ステップＳ２００’、Ｓ２２０’、Ｓ２４０’により各相のデッドタイム補償量DTUp〜DTWmの変化分ΔDTUp〜ΔDTWmが求められるので、当該予定外の変化分ΔDTUp〜ΔDTWmに基づいて更新されたリアルデッドタイム補償量RLDTUp〜RLDTWmによるデッドタイム補償制御を防止することができる。したがって、当該予定外の変化分ΔDTUp〜ΔDTWmに基づいて更新されたリアルデッドタイム補償量RLDTUp〜RLDTWmによるデッドタイム補償制御による異音や振動の発生を防ぐことができる。
【０１８９】
以上、各実施形態において説明したように、本電気式動力舵取装置では、上述したモータ制御装置およびモータ制御方法によってアシストトルクを発生させるモータ４０の駆動制御を行うことから、ＰＷＭ制御によって当該モータ４０に電力を供給するインバータ５６のスイッチング素子Ｑ11〜Ｑ23等の電気的特性に対応させてデッドタイムにおけるトルクリップルを減少させることができる等の、請求項１６〜２９の各発明による作用・効果を享受した電気式動力舵取装置を実現することができる。したがって、トルクリップルによる異音や振動の発生を抑制し得る電気式動力舵取装置を提供することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係る電気式動力舵取装置の構成を示す構成図である。
【図２】図２(A) は、本実施形態の電気式動力舵取装置のモータ制御に関する電気的構成を示すブロック図で、図２(b) はインバータの構成を示す回路図である。
【図３】本発明の第１実施形態によるデッドタイム補償制御系およびＰＩ制御系に関する機能ブロックである。
【図４】本第１実施形態によるデッドタイム補償制御処理の流れを示すフローチャートである。
【図５】図４に示すデッドタイム補償量演算処理の流れを示すフローチャートである。
【図６】図４に示す電流制御処理（デッドタイム補償なし）の流れを示すフローチャートである。
【図７】図４に示す電流制御処理（デッドタイム補償あり）の流れを示すフローチャートである。
【図８】インバータからモータに出力される３相電流波形の例を示す波形観測図で、図８(A) は、本第１実施形態のデッドタイム補償制御処理により制御されたもの、図８(b) は、デッドタイム補償制御されていないもの、である。
【図９】本発明の第２実施形態によるデッドタイム補償制御系およびＰＩ制御系に関する機能ブロックである。
【図１０】本第２実施形態によるデッドタイム補償制御処理の流れを示すフローチャートである。
【図１１】図１０に示すデッドタイム補償量演算処理の流れを示すフローチャートである。
【図１２】本発明の第３実施形態によるデッドタイム補償制御系およびＰＩ制御系に関する機能ブロックである。
【図１３】本第３実施形態によるデッドタイム補償制御処理の流れを示すフローチャートである。
【図１４】図１３に示すデッドタイム補償量演算処理の流れを示すフローチャートである。
【図１５】本第４実施形態によるデッドタイム補償制御処理の流れを示すフローチャートである。
【図１６】図１５に示すデッドタイム補償量演算処理の流れを示すフローチャートである。
【図１７】図１５に示すデッドタイム補償量リアルタイム演算処理の流れを示すフローチャートである。
【図１８】電気式動力舵取装置のモータを制御するＰＩ制御系の構成例を示す機能ブロックである。
【符号の説明】
２０          操舵機構
２１          ステアリングホイール
３０          トルクセンサ（操舵状態検出手段）
３５          第１レゾルバ（操舵状態検出手段）
３７          第２レゾルバ（操舵状態検出手段）
４０          モータ
４２          モータレゾルバ
４５、４６    電圧センサ
４７          電流センサ
５０          ＥＣＵ
５２          ＣＰＵ
５６          インバータ
５６ａ        ＰＷＭ回路
５６ｂ        スイッチング回路
Ｂatt         直流電源
Ｑ11〜Ｑ23    スイッチング素子
Ｉｕ          Ｕ相出力電流値（出力電流値）
Ｉｖ          Ｖ相出力電流値（出力電流値）
Ｉｗ          Ｗ相出力電流値（出力電流値）
Ｉu*          Ｕ相電流指令値（指令電流値）
Ｉv*          Ｖ相電流指令値（指令電流値）
Ｉw*          Ｗ相電流指令値（指令電流値）
Ｉｑ          ｑ軸出力電流値
Ｉｄ          ｄ軸出力電流値
Ｉq*          ｑ軸電流指令値
Ｉd*          ｄ軸電流指令値
Ｖｕ          Ｕ相出力電圧値（出力電圧値）
Ｖｖ          Ｖ相出力電圧値（出力電圧値）
Ｖｗ          Ｗ相出力電圧値（出力電圧値）
Ｖｂ          直流電源電圧値（電源電圧値）
Ｖu*          Ｕ相電圧指令値（電圧指令値）
Ｖv*          Ｖ相電圧指令値（電圧指令値）
Ｖw*          Ｗ相電圧指令値（電圧指令値）
Ｖq*          ｑ軸電圧指令値
Ｖd*          ｄ軸電圧指令値
Ｖ0           電圧判定閾値
Ｉ0           電流判定閾値（正方向所定電流）
−Ｉ0         電流判定閾値（負方向所定電流）
ＰＷＭu*      Ｕ相ＰＷＭ信号
ＰＷＭv*      Ｖ相ＰＷＭ信号
ＰＷＭw*      Ｗ相ＰＷＭ信号
Ｔｓ          トルク信号
θｍ          モータ回転角
【図１】
2004201414.tif 000003
【図２】
2004201414.tif 000004
【図３】
2004201414.tif 000005
【図４】
2004201414.tif 000006
【図５】
2004201414.tif 000007
【図６】
2004201414.tif 000008
【図７】
2004201414.tif 000009
【図８】
2004201414.tif 000010
【図９】
2004201414.tif 000011
【図１０】
2004201414.tif 000012
【図１１】
2004201414.tif 000013
【図１２】
2004201414.tif 000014
【図１３】
2004201414.tif 000015
【図１４】
2004201414.tif 000016
【図１５】
2004201414.tif 000017
【図１６】
2004201414.tif 000018
【図１７】
2004201414.tif 000019
【図１８】
2004201414.tif 000020