(57)【要約】【課題】故障診断処理がモータ電流制御にて途中で中断されるのを防止しつつ、モータ電流制御と故障診断処理とを一台の演算処理装置にて実行させる。【解決手段】ＣＰＵ２２は、トルク指令生成処理２２ａおよび電流制御処理２２ｂの優先度よりも故障診断処理２２ｃの優先度を高くし、マイクロコントロールユニット２１などの故障診断処理２２ｃを所定の周期で実行しながら、トルク指令生成処理２２ａおよび電流制御処理２２ｂを故障診断処理２２ｃの合間に実行する。【選択図】      図２
2010036806.tif 000002
【特許請求の範囲】
【請求項１】
操舵力を補助する電動モータと、
操舵トルクおよび車速に基づいてトルク指令値を演算するトルク制御部と、
前記トルク指令値に対応した電流指令値に近づくように前記電動モータに流れる電流を制御する電流制御部と、
少なくとも前記トルク制御部および前記電流制御部の故障診断処理を実行する故障診断手段と、
前記電流制御部にて実行される電流制御処理の優先度よりも高くなるように、前記故障診断手段にて実行される故障診断処理の優先度を設定する優先度設定手段とを備えることを特徴とする電動パワーステアリング装置。
【請求項２】
前記優先度設定手段は、
前記電流制御部にて実行される電流制御処理の優先度よりも高くなるように、前記故障診断手段にて実行される故障診断処理の優先度を設定した上で、前記トルク制御部にて実行されるトルク指令値演算処理の優先度よりも高くなるように、前記電流制御部にて実行される電流制御処理の優先度を設定することを特徴とする請求項１に記載の電動パワーステアリング装置。
【請求項３】
前記優先度設定手段は、前記故障診断処理を割り込み禁止処理とすることを特徴とする請求項１または２に記載の電動パワーステアリング装置。
【請求項４】
前記故障診断処理は、前記トルク指令値の演算および前記電流制御に使用されるマイクロコントロールユニットの故障診断であることを特徴とする請求項１から３のいずれか１項に記載の電動パワーステアリング装置。
【請求項５】
前記故障診断処理は、前記トルク指令値の演算および前記電流制御に使用されるメモリの書き込み動作および読み出し動作に異常がないかどうかを診断することを特徴とする請求項４に記載の電動パワーステアリング装置。
【請求項６】
前記故障診断処理に遅延が発生した場合、過去のトルク指令値または電流指令値を今回のトルク指令値または電流指令値として前記電流制御部に入力する補完演算部を備えることを特徴とする請求項１から５のいずれか１項に記載の電動パワーステアリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は電動パワーステアリング装置に関し、特に、電動パワーステアリング装置における故障診断の優先順位の設定方法に適用して好適なものである。
【背景技術】
【０００２】
乗用車やトラックなどの車両の操舵系では、低燃費性などの観点から、電動モータを用いて操舵を補助する電動パワーステアリング装置が普及しつつある。このような電動パワーステアリング装置では、ＣＰＵなどの演算処理装置によってアシスト制御が実行され、その故障が操舵の不具合を招く恐れがあることから、このような機能安全用途のコントローラに関する国際規格がＩＥＣ６１５０８を中心に整備されつつある。
【０００３】
ＩＥＣ６１５０８では、機能安全を阻害する要因を２つに大別し、それぞれの対策と効果を詳細に規定している。阻害要因の第１はハードウェア起因の偶発故障、第２はソフトウェアバグと呼ばれる系統的故障である。前者に関しては、偶発故障の診断手法とそれに対応する診断率を規定し、後者に関しては、系統的故障を防止する開発プロセスを規定している。
【０００４】
そして、電動パワーステアリング装置では、モータ制御機能と一部の保護機能を一台の演算処理装置で時分割しながら処理することで、所定の制御機能と安全水準が確保されてきた。
【０００５】
例えば、特許文献１には、電動パワーステアリング装置における駆動制御電圧信号演算時の直前に電動機電流検出信号を読み込み、駆動制御電圧信号出力時の電動機電流検出信号のディレータイムを小さくすることにより、ステアリング系の寄生発振に伴う音（磁歪音）や振動を防止し、良好な応答性や優れた操舵フィーリングを実現する方法が開示されている。
【０００６】
また、例えば、特許文献２には、複数のタスクを切り替えて実行する演算装置は、タスクレベルの処理の実行の要求を受けたことに基づいて、そのタスクレベルの処理に対応した割り込み信号を出力するよう多重割り込み手段に要求し、多重割り込み手段は、演算装置から受けた要求のうち最も優先度の高いものを特定し、その特定した要求についての割り込み信号を演算装置に出力し、演算装置は、この多重割り込み手段からの割り込み信号に対応した処理を実行することで、演算装置がタスクスケジューリングに費やす時間を低減する方法が開示されている。
【０００７】
【特許文献１】特許第２８８５３０８号公報
【特許文献２】特開２００５−２７６０９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に開示された方法では、ステアリング系の磁歪音や振動を防止するために、モータ電流制御が優先して行われ、故障診断処理は、その他の処理としてモータ電流制御の合間に行われる。このため、故障診断処理が途中で中断されたり、故障検出タイミングに遅延が発生したりすることがあり、故障原因によっては操舵の不具合を引き起こす恐れがあるという問題があった。
【０００９】
また、特許文献２に開示された方法では、割り込みの演算にかかる負荷が大きいため、多重割り込み手段は大きな演算能力を浪費するとともに、多重割り込み手段が割り込み禁止状態で実行されなければならないため、故障検出タイミングに遅延が発生する恐れがあるという問題があった。
【００１０】
そこで、本発明の目的は、故障診断処理がモータ電流制御にて途中で中断されるのを防止しつつ、モータ電流制御と故障診断処理とを一台の演算処理装置にて実行させることが可能な電動パワーステアリング装置を提供することである。
【課題を解決するための手段】
【００１１】
上述した課題を解決するために、請求項１記載の電動パワーステアリング装置によれば、操舵力を補助する電動モータと、操舵トルクおよび車速に基づいてトルク指令値を演算するトルク制御部と、前記トルク指令値に対応した電流指令値に近づくように前記電動モータに流れる電流を制御する電流制御部と、少なくとも前記トルク制御部および前記電流制御部の故障診断処理を実行する故障診断手段と、前記電流制御部にて実行される電流制御処理の優先度よりも高くなるように、前記故障診断手段にて実行される故障診断処理の優先度を設定する優先度設定手段とを備えることを特徴とする。
【００１２】
また、請求項２記載の電動パワーステアリング装置によれば、前記優先度設定手段は、前記電流制御部にて実行される電流制御処理の優先度よりも高くなるように、前記故障診断手段にて実行される故障診断処理の優先度を設定した上で、前記トルク制御部にて実行されるトルク指令値演算処理の優先度よりも高くなるように、前記電流制御部にて実行される電流制御処理の優先度を設定することを特徴とする。
【００１３】
また、請求項３記載の電動パワーステアリング装置によれば、前記優先度設定手段は、前記故障診断処理を割り込み禁止処理とすることを特徴とする。
【００１４】
また、請求項４記載の電動パワーステアリング装置によれば、前記故障診断処理は、前記トルク指令値の演算および前記電流制御に使用されるマイクロコントロールユニットの故障診断であることを特徴とする。
【００１５】
また、請求項５記載の電動パワーステアリング装置によれば、前記故障診断処理は、前記トルク指令値の演算および前記電流制御に使用されるメモリの書き込み動作および読み出し動作に異常がないかどうかを診断することを特徴とする。
【００１６】
また、請求項６記載の電動パワーステアリング装置によれば、前記故障診断処理に遅延が発生した場合、過去のトルク指令値または電流指令値を今回のトルク指令値または電流指令値として前記電流制御部に入力する補完演算部を備えることを特徴とする。
【発明の効果】
【００１７】
以上説明したように、本発明によれば、電流制御処理の優先度よりも高くなるように故障診断処理の優先度を設定することで、故障診断処理がモータ電流制御にて途中で中断されるのを防止しつつ、モータ電流制御と故障診断処理とを一台の演算処理装置にて実行することが可能となる。このため、割り込みの演算にかかる負荷を増大させることなく、故障検出タイミングに遅延が発生するのを抑制することができ、大きな演算能力を浪費することなく、操舵アシスト制御の安全性を向上させることができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施形態に係る電動パワーステアリング装置について図面を参照しながら説明する。
図１は、本発明の第１実施形態に係る電動パワーステアリング装置の概略構成を示すブロック図である。
図１において、乗用車やトラックなどの車両の操舵系には、ステアリングホイール１が設けられ、ステアリングホイール１は、ステアリングシャフト２に連結されている。そして、ステアリングシャフト２は、ユニバーサルジョイント４Ａ、４Ｂを介してピニオンラック機構５に結合され、ピニオンラック機構５はタイロッド６に結合されている。
【００１９】
また、電動パワーステアリング装置には、ステアリングホイール１による操舵力を補助する電動モータ８、電動モータ８の回転数を減速させる減速ギア３、ステアリングホイール１の操舵トルクＴｒを検出するトルクセンサ７、車速Ｖｅｌを検出する車速センサ９、操舵トルクＴｒおよび車速Ｖｅｌに基づいて電動モータ８に流れる電流Ｉｒを制御するコントロールユニット１２が設けられている。
【００２０】
そして、コントロールユニット１２には、電源を供給するバッテリ１１が接続されるとともに、電源のオン／オフを検出したり、エンジンを始動させたりするイグニションキー１０が接続されている。
【００２１】
ここで、コントロールユニット１２には、トルク制御部１２ａ、電流制御部１２ｂ、故障診断手段１２ｃおよび優先度設定手段１２ｄが設けられている。そして、トルク制御部１２ａは、操舵トルクＴｒおよび車速Ｖｅｌに基づいてトルク指令値Ｔｄを演算することができる。なお、以下の説明では、トルク（操舵トルクやアシストトルクやセルフアライニングトルクなど）は、力のモーメントそれ自体を意味することもあるが、トルクの値（トルク検出値やトルク指令値やトルク推定値など）を意味する場合もあるものとする。
電流制御部１２ｂは、トルク指令値Ｔｄに対応した電流指令値Ｉｄに近づくように電動モータ８に流れる電流Ｉｒを制御することができる。
【００２２】
故障診断手段１２ｃは、トルク制御部１２ａおよび電流制御部１２ｂなどの故障診断処理を実行することができる。なお、故障診断手段１２ｃにて行われる故障診断処理としては、故障診断処理が中断されると、トルク指令値Ｔｄまたは電流指令値Ｉｄなどのアシストトルクの算出に用いられる値が変化し、操舵の不具合の発生を引き起こす可能性のある処理とすることができる。例えば、トルク制御部１２ａでのトルク指令値演算処理および電流制御部１２ｂによる電流制御処理がマイクロコンピュータによる演算処理にて実行される場合、故障診断手段１２ｃにて行われる故障診断処理として、マイクロコンピュータの故障診断を挙げることができる。このマイクロコンピュータの故障診断では、例えば、トルク指令値Ｔｄや電流制御に使用される値などを記憶するメモリの書き込み動作および読み出し動作に異常がないかどうかを診断することができる。
【００２３】
優先度設定手段１２ｄは、電流制御部１２ｂにて実行される電流制御処理の優先度よりも高くなるように、故障診断手段１２ｃにて実行される故障診断処理の優先度を設定することができる。あるいは、優先度設定手段１２ｄは、電流制御部１２ｂにて実行される電流制御処理の優先度よりも高くなるように、故障診断手段１２ｃにて実行される故障診断処理の優先度を設定した上で、トルク制御部１２ａにて実行されるトルク指令値演算処理の優先度よりも高くなるように、電流制御部１２ｂにて実行される電流制御処理の優先度を設定するようにしてもよい。また、優先度設定手段１２ｄは、故障診断手段１２ｃにて実行される故障診断処理を割り込み禁止処理とすることができる。
【００２４】
そして、イグニションキー１０にて電源をオンすると、バッテリ１１からコントロールユニット１２に電源が供給される。また、ステアリングホイール１が操作されると、その時の操舵力がステアリングシャフト２、ユニバーサルジョイント４Ａ、４Ｂ、ピニオンラック機構５を順次介してタイロッド６に伝達され、車両の操舵が行われるとともに、その時の操舵トルクＴｒがトルクセンサ７にて検出され、コントロールユニット１２に入力される。また、車速センサ９にて車速Ｖｅｌが検出され、コントロールユニット１２に入力される。
【００２５】
そして、操舵トルクＴｒおよび車速Ｖｅｌがコントロールユニット１２に入力されると、トルク制御部１２ａは、操舵トルクＴｒおよび車速Ｖｅｌに基づいてトルク指令値Ｔｄを演算し、電流制御部１２ｂに出力する。そして、電流制御部１２ｂは、トルク指令値Ｔｄをトルク制御部１２ａから受け取ると、トルク指令値Ｔｄに対応した電流指令値Ｉｄを算出し、電流指令値Ｉｄに近づくように電動モータ８に流れる電流Ｉｒを制御しながら、電動モータ８に出力する。
【００２６】
そして、電動モータ８に電流Ｉｒが流れると、電動モータ８が回転し、電動モータ８の角速度が減速ギア３にて減速されながら、電動モータ８の回転力がステアリングシャフト２に伝達されることで、ステアリングホイール１による操舵が補助される。
ここで、コントロールユニット１２は、トルク制御部１２ａおよび電流制御部１２ｂによる処理によって開始タイミングが遅れるのを防止しながら、故障診断手段１２ｃによるコントロールユニット１２の故障診断を所定の周期で実行する。そして、コントロールユニット１２は、故障診断手段１２ｃによるコントロールユニット１２の故障診断の合間に、トルク制御部１２ａおよび電流制御部１２ｂによる処理を実行する。
【００２７】
これにより、故障診断処理がモータ電流制御にて途中で中断されるのを防止しつつ、モータ電流制御と故障診断処理とを一台のコントロールユニット１２にて実行することが可能となる。このため、割り込みの演算にかかる負荷を増大させることなく、故障検出タイミングに遅延が発生するのを抑制することができ、大きな演算能力を浪費することなく、操舵アシスト制御の安全性を向上させることができる。
なお、図１の実施形態では、電動モータ８によりアシストを行う位置として、コラムアシスト型を例にとって説明したが、ピニオンアシスト型またはラックアシスト型などに適用するようにしてもよい。
【００２８】
図２は、図１のコントロールユニット１２のハードウェア的な概略構成を示すブロック図である。
図２において、コントロールユニット１２には、プログラムに従って演算処理を行うマイクロコントロールユニット２１、イグニションキー１０からのイグニション信号に基づいてバッテリ１１の電源を供給する電源リレー４１、電動モータ８を駆動するモータ駆動回路４２、電動モータ８に流れる電流を検出する電流検出回路４３およびモータ駆動回路４２の温度を検出する温度センサ４５が設けられている。なお、モータ駆動回路４２としては、ＰＷＭ（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ）制御に基づいて直流を交流に変換するインバータを用いることができる。
【００２９】
ここで、マイクロコントロールユニット２１には、プログラムで指定される命令に従って演算処理を実行するＣＰＵ２２、ＣＰＵ２２にて実行されるプログラムやアシストマップなどを記憶するＲＯＭ２３、ＣＰＵ２２による演算結果を記憶したり、ＣＰＵ２２のワークエリアなどを提供したりするＲＡＭ２４、マイクロコントロールユニット２１の外部との間でデータ通信を行う通信インターフェース２５、アナログデータをデジタルデータに変換するＡ／Ｄ変換器２６、ＰＷＭ制御にて電動モータ８に流れる電流を制御するＰＷＭ制御部２７、ＣＰＵ２２で実行される演算の初期値や故障診断結果などを格納するＥＥＰＲＯＭ２８、レジスタ３１ａ〜３１ｃに保持されたデータの一致または不一致を判定する比較判定部２９、レジスタ３１ａに保持されたデータを反転させる反転部３０、ＲＡＭ２４から読み出されたデータを一時的に保持するレジスタ３１ａ〜３１ｃが設けられている。
なお、ＣＰＵ２２は、ＲＡＭ２４をワークエリアとして使用しながらＲＯＭ２３に格納されたプログラムに従って、図１のトルク制御部１２ａのトルク指令生成処理２２ａ、電流制御部１２ｂの電流制御処理２２ｂ、故障診断手段１２ｃの故障診断処理２２ｃおよび優先度設定手段１２ｄの優先度設定処理２２ｄを実行することができる。
【００３０】
そして、ＣＰＵ２２、ＲＯＭ２３、ＲＡＭ２４、通信インターフェース２５、Ａ／Ｄ変換器２６、ＰＷＭ制御部２７、ＥＥＰＲＯＭ２８、比較判定部２９、反転部３０およびレジスタ３１ａ〜３１ｃは、バス３２を介して互いに接続されている。また、バッテリ１１は、電源リレー４１を介してマイクロコントロールユニット２１およびモータ駆動回路４２に接続され、モータ駆動回路４２は電動モータ８に接続されている。また、電流検出回路４３、温度センサ４５、トルクセンサ７および電動モータ８の回転角θを検出する位置センサ４６は、Ａ／Ｄ変換器２６に接続され、車速センサ９およびマイクロコントロールユニット４７は、通信インターフェース２５に接続されている。なお、マイクロコントロールユニット４７は、マイクロコントロールユニット２１の補助用として用いることができる。
【００３１】
そして、図１のイグニションキー１０からイグニション信号が送られると、電源リレー４１は、バッテリ１１からの電源をマイクロコントロールユニット２１およびモータ駆動回路４２に供給させる。また、車速センサ９にて検出された車速Ｖｅｌ、トルクセンサ７にて検出された操舵トルクＴｒ、位置センサ４６にて検出された電動モータ８の回転角θ、電流検出回路４３にて検出された電流検出値Ｉｍ、温度センサ４５にて検出されたモータ駆動回路４２の温度Ｔは、マイクロコントロールユニット２１に入力される。
【００３２】
そして、ＣＰＵ２２は、トルク指令生成処理２２ａを実行することで、操舵トルクＴｒおよび車速Ｖｅｌに基づいてトルク指令値Ｔｄを演算し、その演算結果をＲＡＭ２４に記憶する。そして、ＣＰＵ２２は、トルク指令値Ｔｄを演算すると、電流制御処理２２ｂを実行することで、トルク指令値Ｔｄに対応した電流指令値Ｉｄを演算し、その演算結果をＲＡＭ２４に記憶する。そして、ＣＰＵ２２は、電流指令値Ｉｄを算出すると、電流指令値Ｉｄと電流検出値Ｉｍとの偏差が０に近づくようにＰＷＭ制御におけるデューティ比を演算し、その演算結果をＲＡＭ２４に記憶する。そして、ＰＷＭ制御部２７は、ＣＰＵ２２にて算出されたデューティ比に対応したゲート駆動信号を生成し、モータ駆動回路４２に出力する。そして、モータ駆動回路４２は、ＰＷＭ制御部２７から出力されたゲート駆動信号に従って電動モータ８に電流Ｉｒを供給することで、トルク指令値Ｔｄに対応した回転力を電動モータ８に発生させる。
【００３３】
ここで、ＣＰＵ２２は、トルク指令値Ｔｄを演算するに当たっては、位置センサ４６にて検出された回転角θから、電動モータ８の角速度ωおよび角加速度αを演算し、車両のヨーレート、電動モータ８の慣性力およびステアリングホイール１を中立位置に戻すためのセルフアライニングトルクを考慮してトルク指令値Ｔｄを決定することができる。
また、ＣＰＵ２２は、トルク指令生成処理２２ａおよび電流制御処理２２ｂの優先度よりも故障診断処理２２ｃの優先度を高くし、マイクロコントロールユニット２１などの故障診断処理２２ｃを所定の周期で実行しながら、トルク指令生成処理２２ａおよび電流制御処理２２ｂにて故障診断処理２２ｃが中断されないようにして、トルク指令生成処理２２ａおよび電流制御処理２２ｂを故障診断処理２２ｃの合間に実行する。
【００３４】
ここで、マイクロコントロールユニット２１の故障診断としては、例えば、ＲＯＭ２３の故障診断、ＲＡＭ２４の故障診断、ＥＥＰＲＯＭ２８の故障診断、通信インターフェース２５の故障診断などを挙げることができる。このＲＯＭ２３の故障診断では、例えば、ＲＯＭ２３の全領域に記憶されているデータのチェックサムを確認することができる。ＲＡＭ２４やＥＥＰＲＯＭ２８の故障診断では、例えば、ＲＡＭ２４やＥＥＰＲＯＭ２８のリードライトチェックを行い、規定通りの結果が得られるかを確認することができる。通信インターフェース２５の故障診断では、例えば、Ａｃｋ信号の応答があるかどうかを確認することができる。
【００３５】
また、マイクロコントロールユニット２１以外の故障診断としては、例えば、温度センサ４５の故障診断、トルクセンサ７の故障診断、電流検出回路４３の故障診断、モータ駆動回路４２の過熱診断、電動モータ８の過電流診断などを挙げることができる。この温度センサ４５、トルクセンサ７および電流検出回路４３の故障診断では、例えば、これらから出力される信号が異常値を示しているかどうかを確認することができる。モータ駆動回路４２の過熱診断では、例えば、温度センサ４５にて検出された温度Ｔが規定値を超えているかを確認することができる。電動モータ８の過電流診断では、例えば、電流検出回路４３にて検出された電流検出値Ｉｍが規定値を超えているかを確認することができる。
【００３６】
なお、マイクロコントロールユニット２１の故障診断のうち、ＲＡＭ２４の故障診断や通信インターフェース２５の故障診断については、ＲＡＭ２４や通信インターフェース２５の故障が操舵の不具合を引き起こす可能性が高いことから、トルク指令生成処理２２ａおよび電流制御処理２２ｂの優先度よりも高くすることが好ましい。
例えば、ＲＡＭ２４に故障が発生すると、ＲＡＭ２４に記憶されたトルク指令値Ｔｄが誤って読み出され、トルク指令値Ｔｄが過大になることがある。そして、トルク指令値Ｔｄが過大になると、電動モータ８から大きな回転力が発生し、ステアリングホイール１による操舵の自由が利かなくなる可能性がある。また、ＲＡＭ２４の故障診断には、マイクロコントロールユニット４７が補助的に使用されることがあることから、通信インターフェース２５に故障が発生すると、ＲＡＭ２４の故障診断ができなくなり、ＲＡＭ２４の故障を検出できなくなる恐れが発生する。
【００３７】
一方、ＥＥＰＲＯＭ２８の故障診断や温度センサ４５の故障診断などについては、ＥＥＰＲＯＭ２８や温度センサ４５の故障が操舵の不具合を引き起こす可能性が低いことから、トルク指令生成処理２２ａおよび電流制御処理２２ｂの優先度よりも必ずしも高くする必要はなく、トルク指令生成処理２２ａおよび電流制御処理２２ｂの優先度よりも低くてもよい。
【００３８】
図３は、図１のコントロールユニット１２の機能的な概略構成を示すブロック図である。
図３において、コントロールユニット１２には、トルク制御部１２ａ、電流制御部１２ｂ、故障診断手段１２ｃ、優先度設定手段１２ｄおよびトルク補償部１２ｅが設けられている。なお、優先度設定手段１２ｄによる優先度の設定に関しては、トルク補償部１２ｅは、トルク制御部１２ａに含めることができる。
【００３９】
そして、トルク制御部１２ａには、アシスト量演算部１０１、トルク微分器１０２および位相補償部１０３が設けられている。ここで、アシスト量演算部１０１は、アシストマップを参照することで、今回の操舵トルクＴｒおよび車速Ｖｅｌに対応したアシストトルクＴｍを算出することができる。なお、アシスト量演算部１０１は、車速Ｖｅｌが低速の時は、ハンドル操作が軽くなり、車速Ｖｅｌが高速の時は、ハンドル操作が重くなるようにアシストトルクＴｍを算出することができる。
【００４０】
トルク微分器１０２は、操舵トルクＴｒの微分値を算出し、アシストトルクＴｍに加算させることで、ステアリングホイール１の中立点付近の制御の応答性を高めることができる。位相補償部１０３は、操舵トルクＴｒの急激な変動を補償し、制御の安定性を維持するための位相補償を行うことができる。なお、位相補償部１０３にはロバスト安定化補償部を設け、トルク検出系に含まれる慣性要素とばね要素からなる共振系の共振周波数におけるピーク値を除去し、制御の応答性と安定性を阻害する共振周波数の位相のずれを補償するようにしてもよい。
【００４１】
また、電流制御部１２ｂには、電流指令部１１１、減算器１３１、電流制御器１３２、デューティ演算器１３３、インバータ１３４および電流センサ１３５が設けられている。ここで、電流指令部１１１は、トルク指令値Ｔｄに対応した電流指令値Ｉｄを算出することができる。減算器１３１は、電流指令部１１１にて算出された電流指令値Ｉｄと、電流センサ１３５にて検出された電流検出値Ｉｍとの偏差を算出することができる。電流制御器１３２は、電流指令値Ｉｄと電流検出値Ｉｍとの偏差が０に近づくように、比例制御、微分制御および積分制御などを行うことができる。デューティ演算器１３３は、電流指令値Ｉｄに近づくように制御された電流Ｉｒが生成されるように、インバータ１３４のゲート駆動信号のデューティ比を演算することができる。インバータ１３４は、デューティ演算器１３３にて演算されたデューティ比に従ってＰＷＭ制御された電流Ｉｒを電動モータ８に出力することができる。電流センサ１３５は、電動モータ８に流れる電流Ｉｒを検出することができる。
【００４２】
また、トルク補償部１２ｅには、モータ角速度推定部１２１、モータ角加速度推定部１２２、ヨーレート収れん性制御部１２３、モータ慣性補償部１２４、ＳＡＴ推定部１２５、減算器１２６および加算器１２７、１２８が設けられている。
ここで、モータ角速度推定部１２１は、電動モータ８の回転角θに基づいて電動モータ８の角速度ωを推定することができる。モータ角加速度推定部１２２は、電動モータ８の角速度ωに基づいて電動モータ８の角加速度αを推定することができる。ヨーレート収れん性制御部１２３は、電動モータ８の角速度ωに基づいて車両のヨーレートを推定し、ステアリングホイール１が振れ回る動作に制動をかけることで、車両のヨーの収れん性を改善することができる。モータ慣性補償部１２４は、電動モータ８の角加速度αに基づいて電動モータ８の慣性力を推定し、電動モータ８の慣性力を補償することで、制御の応答性を高めることができる。ＳＡＴ推定部１２５は、操舵トルクＴｒ、アシストトルクＴｍ、電動モータ８の角速度ωおよび角加速度αに基づいてセルフアライニングトルクＴｓを推定し、そのセルフアライニングトルクＴｓを反力としてアシストトルクＴｍを補償することで、ハンドル操作に路面情報を反映させることができる。減算器１２６は、モータ慣性補償部１２４からの出力ＴｉからセルフアライニングトルクＴｓを減算することができる。加算器１２７は、ヨーレート収れん性制御部１２３からの出力Ｔｙに加算器１２７からの出力を加算することができる。加算器１２８は、位相補償部１０３にて位相補償されたアシストトルクＴｍにトルク微分器１０２からの出力と加算器１２７からの出力とを加算することができる。
【００４３】
なお、図３のトルク制御部１２ａ、故障診断手段１２ｃ、優先度設定手段１２ｄ、トルク補償部１２ｅおよび電流制御部１２ｂのうちの電流指令部１１１、減算器１３１、電流制御器１３２およびデューティ演算器１３３は、図２のマイクロコントロールユニット２１にて実現することができ、図３の電流制御部１２ｂのうちのインバータ１３４は、図２のＰＷＭ制御部２７およびモータ駆動回路４２にて実現することができ、図３の電流制御部１２ｂのうちの電流センサ１３５は、図２の電流検出回路４３にて実現することができる。
【００４４】
そして、図２のトルクセンサ７にて検出された操舵トルクＴｒは、アシスト量演算部１０１、トルク微分器１０２およびＳＡＴ推定部１２５に入力されるとともに、図２の車速センサ９にて検出された車速Ｖｅｌは、アシスト量演算部１０１に入力される。また、位置センサ４６にて検出された電動モータ８の回転角θは、モータ角速度推定部１２１に入力される。
そして、アシスト量演算部１０１において、操舵トルクＴｒおよび車速Ｖｅｌに基づいてアシストトルクＴｍが算出され、位相補償部１０３にて位相補償された後、加算器１２８に出力される。また、操舵トルクＴｒがトルク微分器１０２に入力されると、操舵トルクＴｒの微分値が算出され、加算器１２８に出力される。
【００４５】
また、電動モータ８の回転角θがモータ角速度推定部１２１に入力されると、電動モータ８の角速度ωが算出され、モータ角加速度推定部１２２、ヨーレート収れん性制御部１２３およびＳＡＴ推定部１２５に出力される。そして、電動モータ８の角速度ωがモータ角加速度推定部１２２に入力されると、電動モータ８の角加速度αが算出され、モータ慣性補償部１２４およびＳＡＴ推定部１２５に出力される。
そして、電動モータ８の角速度ωがヨーレート収れん性制御部１２３に入力されると、車両のヨーレートが推定され、車両のヨーを収れんさせるヨーレート補償値Ｔｙがヨーレート収れん性制御部１２３から加算器１２７に出力される。
【００４６】
また、電動モータ８の角加速度αがモータ慣性補償部１２４に入力されると、電動モータ８の慣性力が推定され、電動モータ８の慣性力を補償する慣性補償値Ｔｉがモータ慣性補償部１２４から減算器１２６に出力される。
さらに、操舵トルクＴｒ、アシストトルクＴｍ、電動モータ８の角速度ωおよび角加速度αがＳＡＴ推定部１２５に入力されると、セルフアライニングトルクＴｓが推定され、ＳＡＴ推定部１２５から減算器１２６に出力される。
【００４７】
なお、セルフアライニングトルクＴｓは、以下の（１）式の運動方程式で与えることができる。
Ｊ・α＋Ｆｒ・ｓｉｇｎ（ω）＋Ｔｓ＝Ｔｍ＋Ｔｒ                ・・・（１）
この運動方程式において、ドライバがハンドルを操舵すると、操舵トルクＴｒが発生し、その操舵トルクＴｒに従って電動モータ８がアシストトルクＴｍを発生する。その結果、車輪が転舵され、セルフアライニングトルクＴｓが反力として発生する。その際、電動モータ８の慣性Ｊおよび摩擦（静摩擦）Ｆｒによってハンドル操舵の抵抗となるトルクが生じる。これらの力の釣り合いを考えると、（１）式の運動方程式が得られる。
ここで、（１）式の初期値を０としてラプラス変換し、Ｔｓについて解くと、以下の（２）式に示すように、セルフアライニングトルクＴｓを求めることができる。
Ｔｓ（ｓ）＝Ｔｍ（ｓ）＋Ｔｒ（ｓ）−Ｊ・α（ｓ）−Ｆｒ・ｓｉｇｎ（ω（ｓ））
・・・（２）
【００４８】
そして、減算器１２６において、慣性補償値ＴｉからセルフアライニングトルクＴｓが減算され、その減算結果が加算器１２７に出力される。そして、加算器１２７において、減算器１２６からの出力とヨーレート補償値Ｔｙとが加算され、加算器１２８に出力される。そして、加算器１２８において、位相補償部１０３にて位相補償されたアシストトルクＴｍとトルク微分器１０２からの出力と加算器１２７からの出力とが加算されることでトルク指令値Ｔｄが算出され、電流指令部１１１に出力される。
【００４９】
そして、電流指令部１１１において、トルク指令値Ｔｄに対応した電流指令値Ｉｄが算出され、減算器１３１に出力される。また、電流センサ１３５にて検出された電流検出値Ｉｍは、減算器１３１に出力される。
そして、減算器１３１において、電流指令値Ｉｄと電流検出値Ｉｍとの偏差が算出され、電流制御器１３２に出力される。そして、電流制御器１３２において、電流指令値Ｉｄと電流検出値Ｉｍとの偏差が０に近づくように電流制御値が算出され、デューティ演算器１３３に出力される。そして、デューティ演算器１３３において、電流制御器１３２から出力された電流制御値に基づいてパルス信号のデューティ比が演算され、インバータ１３４に出力される。そして、インバータ１３４は、デューティ演算器１３３にて演算されたデューティ比に基づいてＰＷＭ制御された電流Ｉｒを生成し、電動モータ８に出力することで、トルク指令値Ｔｄに対応したトルクを電動モータ８に発生させる。
【００５０】
図４は、図１の電動パワーステアリング装置における処理シーケンスを示す図である。
図４において、図２の優先度設定処理２２ｄでは、ＣＰＵ２２にて実行される優先度は、故障診断処理２２ｃ、電流制御処理２２ｂ、トルク指令生成処理２２ａ、その他の処理の順序に設定される。なお、その他の処理としては、通信インターフェース２５を介した通信処理、温度センサ４５からのデータの取り込み処理、フェールセーフ処理などを挙げることができる。また、ＥＥＰＲＯＭ２８の故障診断や温度センサ４５の故障診断などは、その他の処理に含めるようにしてもよい。
なお、故障診断処理２２ｃは、所定の周期Ｔ１で実行することができ、例えば、周期Ｔ１は数ｍｓｅｃに設定することができる。また、電流制御処理２２ｂは、周期Ｔ１内の故障診断処理２２ｃの合間に所定の周期Ｔ２で実行することができ、例えば、周期Ｔ２は数百μｓｅｃに設定することができる。
【００５１】
そして、時刻ｔ１において故障診断処理２２ｃの実行が開始され、時刻ｔ２において故障診断処理２２ｃの実行が終了すると、電流制御処理２２ｂが実行される。そして、時刻ｔ３において電流制御処理２２ｂが所定のサイクル分だけ終了すると、トルク指令生成処理２２ａが実行される。そして、時刻ｔ４においてトルク指令生成処理２２ａの実行が終了すると、その他の処理が実行される。そして、時刻ｔ５において前回の故障診断処理２２ｃの実行から周期Ｔ１だけ経過すると、故障診断処理２２ｃの実行が再び開始される。
ここで、故障診断処理２２ｃの実行中にその他の処理の割り込み要求があった場合においても、その割り込み要求は直ぐには受け付けられることはなく、時刻ｔ７において電流制御処理２２ｂが所定のサイクル分だけ終了すると、その他の処理が実行される。そして、時刻ｔ８においてその他の処理の実行が終了すると、トルク指令生成処理２２ａが実行される。
【００５２】
そして、時刻ｔ９において前回の故障診断処理２２ｃの実行から周期Ｔ１だけ経過すると、故障診断処理２２ｃの実行が再び開始され、時刻ｔ１０において故障診断処理２２ｃの実行が終了すると、電流制御処理２２ｂが実行される。そして、時刻ｔ１１において電流制御処理２２ｂが所定のサイクル分だけ終了すると、トルク指令生成処理２２ａが実行される。そして、時刻ｔ１２においてトルク指令生成処理２２ａの実行が終了すると、その他の処理が実行される。
【００５３】
そして、時刻ｔ１３において前回の故障診断処理２２ｃの実行から周期Ｔ１だけ経過すると、故障診断処理２２ｃの実行が再び開始され、時刻ｔ１４において故障診断処理２２ｃの実行が終了すると、電流制御処理２２ｂが実行される。ここで、今回の故障診断処理２２ｃの実行に通常よりも時間を要したものとすると、今回の電流制御処理２２ｂがその分だけ遅れて開始される。そして、時刻ｔ１５において電流制御処理２２ｂが所定のサイクル分だけ終了すると、トルク指令生成処理２２ａが実行される。そして、時刻ｔ１６においてトルク指令生成処理２２ａの実行が終了し、その後にその他の処理を開始しても、今回の故障診断処理２２ｃの開始から周期Ｔ１だけ経過するまでにその他の処理が終了できない場合には、今回のその他の処理はスキップされる。
そして、時刻ｔ１７において前回の故障診断処理２２ｃの実行から周期Ｔ１だけ経過すると、故障診断処理２２ｃの実行が再び開始される。
【００５４】
ここで、故障診断処理２２ｃを優先的に実行することで、故障診断処理２２ｃが途中で中断されることを防止することができる。このため、図２のＲＡＭ２４の故障診断に使用された診断データがＲＡＭ２４に残ったまま電流制御処理２２ｂに移行されるのを防止することができ、ＲＡＭ２４の故障診断後の復帰処理を省略することが可能となることから、ＲＡＭ２４の故障診断処理を簡易化することができ、ＲＡＭ２４の故障診断処理にかかる負荷を低減することができる。
【００５５】
図５は、図１の電動パワーステアリング装置のＲＡＭ診断方法の一例を示すフローチャートである。
図５において、図２のＣＰＵ２２は、ＲＡＭ２４の故障診断処理が起動されると、ＲＡＭ２４の内容をレジスタ３１ａに格納する（ステップＳ１）。次に、反転部３０は、レジスタ３１ａの内容を反転してレジスタ３１ｂに格納する（ステップＳ２）。次に、ＣＰＵ２２は、レジスタ３１ｂの内容をＲＡＭ２４に格納した後（ステップＳ３）、そのＲＡＭ２４の内容をレジスタ３１ｃに格納する（ステップＳ４）。
【００５６】
次に、比較判定部２９は、レジスタ３１ｂの内容とレジスタ３１ｃの内容とを比較し（ステップＳ５）、これらの内容が一致していない場合には、ＲＡＭ２４が故障していると判断する（ステップＳ９）。
一方、レジスタ３１ｂの内容とレジスタ３１ｃの内容とが一致している場合、ＣＰＵ２２は、レジスタ３１ａの内容をＲＡＭ２４に格納した後（ステップＳ６）、そのＲＡＭ２４の内容をレジスタ３１ｃに格納する（ステップＳ７）。
【００５７】
次に、比較判定部２９は、レジスタ３１ａの内容とレジスタ３１ｃの内容とを比較し（ステップＳ８）、これらの内容が一致していない場合には、ＲＡＭ２４が故障していると判断し（ステップＳ９）、これらの内容が一致している場合には、ＲＡＭ２４は正常であると判断する（ステップＳ１０）。
【００５８】
図６は、本発明の第２実施形態に係る電動パワーステアリング装置に適用されるコントロールユニットの機能的な概略構成を示すブロック図である。
図６において、この電動パワーステアリング装置には、図３の構成に加え補完演算部１４１が設けられ、電流指令部１１１の後段に接続されている。ここで、補完演算部１４１は、図２の故障診断処理２２ｃに遅延が発生した場合、電流指令部１１１から出力された過去の電流指令値Ｉｄを今回の電流指令値Ｉｄとして減算器１３１に入力することができる。なお、補完演算部１４１の処理は、図２のＣＰＵ２２の演算処理によって実現することができる。
【００５９】
そして、電流指令部１１１から電流指令値Ｉｄが出力されると、その電流指令値Ｉｄは補完演算部１４１にて保持される。また、故障診断処理２２ｃに遅延が発生した場合、遅延検出信号ＳＬが故障診断手段１２ｃから補完演算部１４１に出力される。
そして、補完演算部１４１は、故障診断処理２２ｃに遅延が発生してない場合には、電流指令部１１１から出力された今回の電流指令値Ｉｄを減算器１３１に入力し、故障診断処理２２ｃに遅延が発生している場合には、電流指令部１１１から出力された過去の電流指令値Ｉｄを減算器１３１に入力する。
なお、過去の電流指令値Ｉｄとしては、前回の電流指令値Ｉｄまたは前々回の電流指令値Ｉｄなどを用いることができる。
【００６０】
ここで、故障診断のリトライなどの訂正機能による遅延時間は、電動モータ８の制御処理時間に比べて短いため、今回の電流制御処理２２ｂに前回の電流指令値Ｉｄを用いた場合においても、電動モータ８のアシストトルクはほとんど変化することはない。このため、故障診断処理２２ｃに遅延が発生した場合においても、ドライバに違和感を覚えさせることなく、電動パワーステアリング装置による操舵補助を継続させることができる。
【００６１】
図７は、図６の補完演算部１４１の機能的な概略構成の一例を示すブロック図である。
図７において、補完演算部１４１ａには、前回の電流指令値Ｉｄを保持する遅延器２０１および遅延検出信号ＳＬに基づいて前回の電流指令値Ｉｄまたは今回の電流指令値Ｉｄのいずれか一方を選択する切り替え器２０２が設けられている。
【００６２】
そして、電流指令部１１１から電流指令値Ｉｄが出力されると、前回の電流指令値Ｉｄは遅延器２０１にて保持される。そして、遅延検出信号ＳＬが切り替え器２０２に入力されると、遅延器２０１から出力された電流指令値Ｉｄが切り替え器２０２にて選択され、今回の電流指令値Ｉｄ´として出力される。
一方、遅延検出信号ＳＬが切り替え器２０２に入力されない場合、電流指令部１１１から出力された電流指令値Ｉｄが切り替え器２０２にて選択され、今回の電流指令値Ｉｄ´として出力される。
【００６３】
図８は、図６の補完演算部１４１の機能的な概略構成のその他の例を示すブロック図である。
図８において、補完演算部１４１ｂには、前回の電流指令値Ｉｄを保持する遅延器２１１、前々回の電流指令値Ｉｄを保持する遅延器２１２、３回前の電流指令値Ｉｄを保持する遅延器２１３、遅延器２１１の出力を２倍する乗算器２１４、加算器２１６の出力を１／４倍する乗算器２１７、遅延器２１２の出力と遅延器２１３の出力とを加算する加算器２１５、乗算器２１４の出力と加算器２１５の出力を加算する加算器２１６および遅延検出信号ＳＬに基づいて電流指令部１１１からの出力または乗算器２１７からの出力のいずれか一方を選択する切り替え器２１８が設けられている。
【００６４】
そして、電流指令部１１１から電流指令値Ｉｄが出力されると、前回の電流指令値Ｉｄは遅延器２１１にて保持され、前々回の電流指令値Ｉｄは遅延器２１２にて保持され、３回前の電流指令値Ｉｄは遅延器２１３にて保持される。
そして、前々回の電流指令値Ｉｄと３回前の電流指令値Ｉｄとは加算器２１５にて加算された後、加算器２１６に出力されるとともに、前回の電流指令値Ｉｄは乗算器２１４にて２倍された後、加算器２１６に出力される。そして、加算器２１６において、前々回の電流指令値Ｉｄと３回前の電流指令値Ｉｄとの加算結果に前回の電流指令値Ｉｄを２倍した値が加算された後、乗算器２１７にて１／４倍される。
【００６５】
そして、遅延検出信号ＳＬが切り替え器２１８に入力されると、乗算器２１７から出力された値が切り替え器２１８にて選択され、今回の電流指令値Ｉｄ´として出力される。
一方、遅延検出信号ＳＬが切り替え器２１８に入力されない場合、電流指令部１１１から出力された電流指令値Ｉｄが切り替え器２１８にて選択され、今回の電流指令値Ｉｄ´として出力される。
【００６６】
なお、上述した実施形態では、電流指令部１１１の後段に補完演算部１４１を設け、図２の故障診断処理２２ｃに遅延が発生した場合、今回の電流指令値Ｉｄとして過去の電流指令値Ｉｄを用いる方法について説明したが、電流指令部１１１の前段に補完演算部を設け、図２の故障診断処理２２ｃに遅延が発生した場合、過去のトルク指令値Ｔｄを今回のトルク指令値Ｔｄとして用いるようにしてもよい。
【図面の簡単な説明】
【００６７】
【図１】本発明の第１実施形態に係る電動パワーステアリング装置の概略構成を示すブロック図である。
【図２】図１のコントロールユニット１２のハードウェア的な概略構成を示すブロック図である。
【図３】図１のコントロールユニット１２の機能的な概略構成を示すブロック図である。
【図４】図１の電動パワーステアリング装置における処理シーケンスを示す図である。
【図５】図１の電動パワーステアリング装置のＲＡＭ診断方法の一例を示すフローチャートである。
【図６】本発明の第２実施形態に係る電動パワーステアリング装置に適用されるコントロールユニットの機能的な概略構成を示すブロック図である。
【図７】図６の補完演算部１４１の機能的な概略構成の一例を示すブロック図である。
【図８】図６の補完演算部１４１の機能的な概略構成のその他の例を示すブロック図である。
【符号の説明】
【００６８】
１  ステアリングホイール
２  ステアリングシャフト
３  減速ギア
４Ａ、４Ｂ  ユニバーサルジョイント
５  ピニオンラック機構
６  タイロッド
７  トルクセンサ
８  電動モータ
９  車速センサ
１０  イグニションキー
１１  バッテリ
１２  コントロールユニット
１２ａ  トルク制御部
１２ｂ、５２ｂ  電流制御部
１２ｃ  故障診断手段
１２ｄ  優先度設定手段
１２ｅ  トルク補償部
２１、４７  マイクロコントロールユニット
２２  ＣＰＵ
２２ａ  トルク指令生成処理
２２ｂ  電流制御処理
２２ｃ  故障診断処理
２２ｄ  優先度設定処理
２３  ＲＯＭ
２４  ＲＡＭ
２５  通信インターフェース
２６  Ａ／Ｄ変換器
２７  ＰＷＭ制御部
２８  ＥＥＰＲＯＭ
２９  比較判定部
３０  反転部
３１ａ〜３１ｃ  レジスタ
３２  バス
４１  電源リレー
４２  モータ駆動回路
４３  電流検出回路
４５  温度センサ
４６  位置センサ
１０１  アシスト量演算部
１０２  トルク微分器
１０３  位相補償部
１１１  電流指令部
１２１  モータ角速度推定部
１２２  モータ角加速度推定部
１２３  ヨーレート収れん性制御部
１２４  モータ慣性補償部
１２５  ＳＡＴ推定部
１２６、１３１  減算器
１２７、１２８、２１５、２１６  加算器
１３２  電流制御器
１３３  デューティ演算器
１３４  インバータ
１３５  電流センサ
１４１、１４１ａ、１４１ｂ  補完演算部
２０１、２１１〜２１３  遅延器
２０２、２１８  切り替え器
２１４、２１７  乗算器
【図１】
2010036806.tif 000003
【図２】
2010036806.tif 000004
【図３】
2010036806.tif 000005
【図４】
2010036806.tif 000006
【図５】
2010036806.tif 000007
【図６】
2010036806.tif 000008
【図７】
2010036806.tif 000009
【図８】
2010036806.tif 000010