(57)【要約】【課題】システマティックエラーによる電流の指令値の異常が生じる場合であってもアシスト制御が実行不能となることを抑制できるようにした操舵制御装置を提供する。【解決手段】更新量算出処理部Ｍ５４は、操舵トルクＴｒｑｓ１を目標トルクＴｒｑｓ＊にフィーバック制御するために制御角θｃを更新量Δθｃによって操作する。制御角θｃは、電流指令値ｉγ＊を固定座標系の値に変換する際などに用いられる。指令値設定処理部Ｍ２４が設定する電流指令値ｉγ１＊は、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊を上回る量に応じて電流指令値ｉγ＊の変化量としての適正範囲を定めるためのガード値によって、ガード処理部Ｍ６０にガード処理が施されて電流指令値ｉγ＊とされる。また、ガード処理部Ｍ６０では、車速に応じた下限値と上限値とが設定され、電流指令値ｉγ＊が下限値と上限値との範囲に入るように、ガード処理を施す。【選択図】図２
2018095198.tif 000002
【特許請求の範囲】
【請求項１】
車両の操舵をアシストする操舵装置を制御対象とし、
前記操舵装置は、アシストトルクを生成する同期電動機と、前記同期電動機に電圧を印加する電力変換回路とを備え、
前記同期電動機を流れる電流を電流指令値に制御するために前記電力変換回路が前記同期電動機に印加する電圧を操作する電流制御処理部と、
ステアリングに入力されるトルクである操舵トルクの検出値を目標トルクにフィードバック制御するために、前記電流指令値の位相を定める制御角を操作する制御角操作処理部と、
前記検出値の大きさが前記目標トルクの大きさを上回る量が規定値以上であることを条件に前記電流指令値の絶対値を増加させ、前記上回る量が前記規定値よりも小さいことを条件に前記電流指令値の絶対値を減少させる指令値設定処理部と、
前記電流指令値が上限値以下かつ下限値以上となるように、前記指令値設定処理部により設定される前記電流指令値に対してガード処理を施すガード処理部と、を備え、
前記ガード処理部は、前記上限値および前記下限値の少なくとも一方を車速に応じて変更する操舵制御装置。
【請求項２】
前記ガード処理は、絶対値ガード処理であり、
前記ガード処理部は、前記上回る量が閾値以上であることを条件に、前記電流指令値の絶対値の減少を許容しないように前記指令値設定処理部が設定した前記電流指令値にガード処理を施す変化量ガード処理を実行する請求項１に記載の操舵制御装置。
【請求項３】
前記ガード処理部は、前記検出値の大きさが前記目標トルクの大きさを上回る量が前記閾値以上であることを条件に、前記ガード処理が施された前記電流指令値の前回値の大きさを規定量だけ増加させた値を下限ガード値とし、前記電流指令値の大きさが前記下限ガード値以上となるようにガード処理を施す請求項２に記載の操舵制御装置。
【請求項４】
前記指令値設定処理部は、前記同期電動機および前記電力変換回路の少なくとも一方の温度が規定温度以上であると判定する場合、前記電流指令値を減少させるものであり、
前記ガード処理部は、前記同期電動機および前記電力変換回路の少なくとも一方の温度が前記規定温度以上である場合、前記検出値の大きさが前記目標トルクの大きさを上回る量が前記閾値以上である場合であっても、前記電流指令値の大きさの減少を許容するように前記電流指令値に前記ガード処理を施す請求項２または３に記載の操舵制御装置。
【請求項５】
前記ガード処理部は、前記同期電動機および前記電力変換回路の少なくとも一方の温度が前記規定温度以上であると判定する場合、前記検出値が前記目標トルクを上回る量が前記閾値以上である場合であっても、前記電流指令値の大きさを減少させるように前記電流指令値に前記ガード処理を施す請求項４に記載の操舵制御装置。
【請求項６】
前記ガード処理部は、前記検出値の大きさが前記目標トルクの大きさを上回る量が前記閾値よりも小さいことを条件に、前記電流指令値の絶対値の増加を許容しないように前記指令値設定処理部が設定した前記電流指令値に前記ガード処理を施す請求項２〜５のいずれか１項に記載の操舵制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両の操舵をアシストする操舵装置を制御対象とする操舵制御装置に関する。
【背景技術】
【０００２】
たとえば特許文献１には、操舵トルクの検出値を目標トルクにフィードバック制御するために、同期電動機にアシストトルクを生成させるための電流フィードバック制御器の入力となる制御角を操作する制御装置が記載されている。この制御装置は、同期電動機のセンサレス制御として、トルクフィードバック制御をするものであり、制御角によって回転する座標系の座標軸をγ軸およびδ軸とし、γ軸の電流指令値をゼロよりも大きい値とする一方、δ軸の電流指令値をゼロとする。これにより、γ軸とｄ軸とのずれ量に応じて、ｑ軸電流が流れ、ｑ軸電流によって同期電動機のトルクが生成される。ここで、γ軸とｄ軸とのずれ量は、制御角によって操作することができることから、トルクフィードバック制御によって制御角を操作することにより、γ軸とｄ軸とのずれ量を操作することができ、ひいては同期電動機のトルクを制御することができる。
【０００３】
上記制御装置では、さらに、操舵トルクの検出値と目標トルクとの差の絶対値が所定値以上である場合、制御が破綻したとして、γ軸の電流の指令値を減少させる処理を実行する。これは、制御ゲインを小さくして制御角を適切な値に収束させやすくすることを狙ったものである（段落「００６４」）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５５３２２９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ただし、たとえば上記トルクフィードバック制御の制御器のパラメータの異常やロジック異常等のいわゆるシステマティックエラーが発生した場合には、同期電動機のトルクを適切に制御することができない。特に、γ軸の電流指令値が過度に小さい値となるエラー発生時には、γ軸の電流が小さくなるために、制御角の操作によるトルクの変化量が小さくなり、ひいては制御が破綻するおそれがある。
【０００６】
本発明は、そうした実情に鑑みてなされたものであり、その目的は、システマティックエラーによって電流指令値の異常が生じる場合であってもアシスト制御が実行不能となることを抑制できるようにした操舵制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
以下、上記課題を解決するための手段およびその作用効果について記載する。
１．操舵制御装置は、車両の操舵をアシストする操舵装置を制御対象とし、前記操舵装置は、アシストトルクを生成する同期電動機と、前記同期電動機に電圧を印加する電力変換回路とを備え、前記同期電動機を流れる電流を電流指令値に制御するために前記電力変換回路が前記同期電動機に印加する電圧を操作する電流制御処理部と、ステアリングに入力されるトルクである操舵トルクの検出値を目標トルクにフィードバック制御するために、前記電流指令値の位相を定める制御角を操作する制御角操作処理部と、前記検出値の大きさが前記目標トルクの大きさを上回る量が規定値以上であることを条件に前記電流指令値の絶対値を増加させ、前記上回る量が前記規定値よりも小さいことを条件に前記電流指令値の絶対値を減少させる指令値設定処理部と、前記電流指令値が上限値以下かつ下限値以上となるように、前記指令値設定処理部により設定される前記電流指令値に対してガード処理を施すガード処理部と、を備え、前記ガード処理部は、前記上限値および前記下限値の少なくとも一方を車速に応じて変更する。
【０００８】
検出値が目標トルクを上回る量が規定値以上となっているときに、制御角操作処理部が制御角を操作することによって操舵トルクの検出値を目標トルクにフィードバック制御する上では、同期電動機を流れる電流の絶対値がある程度大きい必要がある。このため、検出値が目標トルクを上回る量が規定値以上となっている場合、少なくとも電流指令値の絶対値を減少させるべきではないと考えられる。それにもかかわらず、指令値設定処理部により設定される絶対値が減少する異常が生じる場合、上記構成によれば、ガード処理によって電流が上限値以下かつ下限値以上の範囲から外れることが許容されないため、電流指令値が過度に小さくなることが抑制される。同様に、電流指令値が過度に大きくなることが抑制される。また、車速に応じて必要とされる電流は異なることに対応して、車速に応じて上限値および下限値が設定されることにより、適切な上限値および下限値が設定される。これらにより、より適切な電流指令値を設定することができる。
【０００９】
しかも、上記ガード処理は、指令値設定処理部が電流指令値を設定するロジックとは相違するロジックによって構成されている。このため、指令値設定処理部のロジック自体のエラー等のシステマティックエラーが生じた場合であっても、ガード処理部によってガード処理が施された値を適切な値とすることができる。これに対し、たとえば指令値設定処理部と同一のロジックのものを２つ用意して互いの値を照合する照合処理を実行する場合、照合処理の信頼性が低いものとなる。
【００１０】
したがって、上記構成では、システマティックエラーによって電流指令値の異常が生じる場合であってもアシスト制御が実行不能となることを抑制できる。
２．上記１に記載の操舵制御装置において、前記ガード処理は、絶対値ガード処理であり、前記ガード処理部は、前記上回る量が閾値以上であることを条件に、前記電流指令値の絶対値の減少を許容しないように前記指令値設定処理部が設定した前記電流指令値にガード処理を施す変化量ガード処理を実行する。
【００１１】
検出値が目標トルクを上回る量が規定値以上となっている場合、少なくとも電流指令値の絶対値を減少させるべきではないと考えられる。それにもかかわらず、指令値設定処理部により設定される絶対値が減少する異常が生じる場合、上記構成によれば、検出値が目標値を上回る量が閾値以上であるなら、ガード処理によって電流の減少が許容されない。これにより、電流指令値の絶対値が過度に小さくなることが抑制される。
【００１２】
したがって、上記構成では、システマティックエラーによって電流指令値の異常が生じる場合であってもアシスト制御が実行不能となることを抑制できる。
３．上記２に記載の操舵制御装置において、前記ガード処理部は、前記検出値の大きさが前記目標トルクの大きさを上回る量が前記閾値以上であることを条件に、前記ガード処理が施された前記電流指令値の前回値の大きさを規定量だけ増加させた値を下限ガード値とし、前記電流指令値の大きさが前記下限ガード値以上となるようにガード処理を施す。
【００１３】
上記構成では、検出値の大きさが目標トルクの大きさを上回る量が閾値以上であることを条件に、電流指令値の大きさが、前回値の大きさよりも規定量以上大きくなるようにガード処理がなされる。したがって、検出値の大きさが目標トルクの大きさを上回る量が閾値以上であることを条件に、ガード処理部によって電流指令値を増加させることができる。
【００１４】
４．上記２または３に記載の操舵制御装置において、前記指令値設定処理部は、前記同期電動機および前記電力変換回路の少なくとも一方の温度が規定温度以上であると判定する場合、前記電流指令値を減少させるものであり、前記ガード処理部は、前記同期電動機および前記電力変換回路の少なくとも一方の温度が前記規定温度以上である場合、前記検出値の大きさが前記目標トルクの大きさを上回る量が前記閾値以上である場合であっても、前記電流指令値の大きさの減少を許容するように前記電流指令値に前記ガード処理を施す。
【００１５】
上記構成では、指令値設定処理部が、規定温度以上であると判定する場合に電流指令値を減少させることによって、同期電動機や電力変換回路が過度に高温となる事態を抑制することを狙っている。しかし、ガード処理部が電流指令値の絶対値の減少を許容しない場合、指令値設定処理部により電流指令値の大きさを減少させる処理は無効となってしまう。そこで上記構成では、規定温度以上である場合、検出値の大きさが目標トルクの大きさを上回る量が閾値以上であっても、電流指令値の大きさの減少を許容する設定とした。
【００１６】
５．上記４記載の操舵制御装置において、前記ガード処理部は、前記同期電動機および前記電力変換回路の少なくとも一方の温度が前記規定温度以上であると判定する場合、前記検出値が前記目標トルクを上回る量が前記閾値以上である場合であっても、前記電流指令値の大きさを減少させるように前記電流指令値に前記ガード処理を施す。
【００１７】
上記構成では、ガード処理部が、規定温度以上であると判定する場合、電流指令値の大きさを減少させるように電流指令値にガード処理を施すために、規定温度以上であるにもかかわらず指令値設定処理部が電流指令値の大きさを減少させる処理を実行しない異常が生じた場合であっても、同期電動機を流れる電流を確実に減少させることができる。
【００１８】
６．上記２〜５のいずれか１項に記載の操舵制御装置において、前記ガード処理部は、前記検出値の大きさが前記目標トルクの大きさを上回る量が前記閾値よりも小さいことを条件に、前記電流指令値の絶対値の増加を許容しないように前記指令値設定処理部が設定した前記電流指令値に前記ガード処理を施す。
【００１９】
たとえば検出値が目標トルクを上回る量が規定値未満となっているときには、同期電動機を流れる電流を大きくする必要性に乏しい。それにもかかわらず、指令値設定処理部により設定される電流指令値の絶対値が増加する異常が生じる場合、上記構成によれば、検出値が目標トルクを上回る量が閾値未満であるなら、ガード処理によって電流の増加が許容されない。これにより、電流指令値の絶対値が過度に大きくなることが抑制される。
【発明の効果】
【００２０】
本発明の操舵制御装置によれば、システマティックエラーによって電流指令値の異常が生じる場合であってもアシスト制御が実行不能となることを抑制できる。
【図面の簡単な説明】
【００２１】
【図１】第１の実施形態にかかる操舵制御装置を備える操舵システムの構成図。
【図２】同実施形態においてＣＰＵによって実現される処理の一部を示すブロック図。
【図３】同実施形態にかかる指令値設定処理部の処理の手順を示す流れ図。
【図４】同実施形態にかかるガード処理部の処理の手順を示す流れ図。
【図５】第２の実施形態にかかる指令値設定処理部の処理の手順を示す流れ図。
【図６】同実施形態にかかるガード処理部の処理の手順を示す流れ図。
【図７】第３の実施形態にかかるガード処理部の処理の手順を示す流れ図。
【発明を実施するための形態】
【００２２】
＜第１の実施形態＞
以下、操舵制御装置にかかる第１の実施形態について図面を参照しつつ説明する。
図１に示すように、本実施形態にかかる操舵装置１０は、ステアリングホイール（ステアリング１２）、およびステアリング１２と一体回転するステアリングシャフト１３を備えている。ステアリングシャフト１３は、ステアリング１２側から順にコラム軸１４、中間軸１６、およびピニオン軸１８を連結することにより構成されている。ラック軸２０は、ステアリングシャフト１３の回転に応じて、軸方向に往復動する。
【００２３】
ピニオン軸１８は、ラック軸２０に動力伝達可能に配置されている。詳しくは、ラック軸２０とピニオン軸１８とは、所定の交叉角をもって配置されており、ラック軸２０に形成された第１ラック歯２０ａとピニオン軸１８に形成されたピニオン歯１８ａとが噛合されることで第１ラックアンドピニオン機構２２が構成されている。また、ラック軸２０の両端には、タイロッド２４が連結されており、タイロッド２４の先端は転舵輪２６が組み付けられた図示しないナックルに連結されている。したがって、ステアリング１２の操作に伴うステアリングシャフト１３の回転が第１ラックアンドピニオン機構２２によりラック軸２０の軸方向変位に変換され、この軸方向変位がタイロッド２４を介してナックルに伝達されることにより、転舵輪２６の転舵角、すなわち車両の進行方向が変更される。
【００２４】
上記ラック軸２０は、ピニオン軸２８と所定の交叉角をもって配置されており、ラック軸２０に形成された第２ラック歯２０ｂとピニオン軸２８に形成されたピニオン歯２８ａとが噛合されることで第２ラックアンドピニオン機構３０が構成されている。ピニオン軸２８は、ウォームアンドホイール等の減速機構３２を介して、同期電動機３４の回転軸３４ａに接続されている。同期電動機３４は、３相の表面磁石同期電動機（ＳＰＭＳＭ）である。
【００２５】
同期電動機３４は、インバータ４０を介してバッテリ４２に接続されている。インバータ４０は、バッテリ４２の直流電圧を交流電圧に変換して同期電動機３４に印加する電力変換回路である。
【００２６】
操舵制御装置（制御装置５０）は、中央処理装置（ＣＰＵ５２）およびメモリ５４を備えている。制御装置５０は、同期電動機３４のトルクを制御量とし、インバータ４０を操作することによって、ステアリング１２の操作をアシストするアシスト制御を実行する。この際、制御装置５０は、各種センサの検出値を参照する。各種のセンサとしては、たとえば、同期電動機３４の回転軸３４ａの回転角度θｐ０を検出する回転角度センサ５８、ステアリングシャフト１３に加わるトルク（操舵トルクＴｒｑｓ）を検出するトルクセンサ６０、車両の走行速度（車速Ｖ）を検出する車速センサ６２などが採用される。また、制御装置５０は、インバータ４０と同期電動機３４との間の線電流（電流ｉｕ，ｉｖ，ｉｗ）を検出する電流センサ６４の検出値を取得する。さらに、制御装置５０は、同期電動機３４の温度Ｔｍを検出する温度センサ６６や、インバータ４０の温度Ｔｉを検出する温度センサ６８の検出値を取得する。
【００２７】
図２に、制御装置５０が実行する処理の一部を示す。図２は、メモリ５４に記憶されたプログラムをＣＰＵ５２が実行することで実現されるいくつかの処理を、実現される処理の種類毎に記載したものである。
【００２８】
正常時処理部Ｍ１０は、同期電動機３４のアシストトルクを制御するためのインバータ４０の操作信号ＭＳを生成する。この際、正常時処理部Ｍ１０には、回転角度センサ５８によって検出された回転軸３４ａの回転角度θｐ０、電流センサ６４によって検出された電流ｉｕ，ｉｖ，ｉｗ、車速センサ６２によって検出される車速Ｖ、およびトルクセンサ６０によって検出される操舵トルクＴｒｑｓが入力される。
【００２９】
センサレス処理部Ｍ２０は、回転角度センサ５８に異常が生じた場合に、回転角度センサ５８による回転角度θｐ０を用いることなく、同期電動機３４のアシストトルクを制御する。
【００３０】
セレクタＭ１２は、回転角度センサ５８の異常の有無に応じて、正常時処理部Ｍ１０による操作信号ＭＳとセンサレス処理部Ｍ２０による操作信号ＭＳとのいずれかをインバータ４０に選択的に出力する。ただし、実際には、回転角度センサ５８に異常が生じる前には、センサレス処理部Ｍ２０が操作信号ＭＳを算出する処理を実行しておらず、また、回転角度センサ５８に異常が生じた後には、正常時処理部Ｍ１０が操作信号ＭＳを算出する処理を実行しない。なお、回転角度センサ５８の異常の有無の判定処理としては、たとえば、操舵トルクＴｒｑｓの絶対値が所定値以上となっているにもかかわらず、回転角度センサ５８の出力値が固定された状態が所定時間以上継続する場合に異常と判定するものとすればよい。
【００３１】
以下、センサレス処理部Ｍ２０について、詳述する。
指令値設定処理部Ｍ２４は、回転座標系であるγδ座標系におけるγ軸の電流指令値ｉγ１＊を可変設定する。本実施形態では、γ軸の電流指令値ｉγ１＊を指令値設定処理部Ｍ２４により可変設定し、δ軸の電流指令値ｉδ＊については、常時ゼロとする。
【００３２】
γδ変換処理部Ｍ２６は、３相固定座標系の電流ｉｕ，ｉｖ，ｉｗを、回転座標系であるγδ座標系におけるγ軸の電流ｉγとδ軸の電流ｉδとに変換する。ここで、γδ変換処理部Ｍ２６が座標変換に利用する回転角度は、後述する制御角θｃである。
【００３３】
偏差算出処理部Ｍ２８は、上記γ軸の電流指令値ｉγ１＊に後述のガード処理部Ｍ６０によるガード処理が施された電流指令値ｉγ＊から電流ｉγを減算して出力し、偏差算出処理部Ｍ３０は、δ軸の電流指令値ｉδ＊から電流ｉδを減算して出力する。電流フィードバック処理部Ｍ３２は、偏差算出処理部Ｍ２８の出力を取り込み、γ軸の電流ｉγを電流指令値ｉγ＊にフィードバック制御するための操作量として、γ軸上の指令電圧ｖγ＊を出力する。電流フィードバック処理部Ｍ３４は、偏差算出処理部Ｍ３０の出力を取り込み、δ軸の電流ｉδを電流指令値ｉδ＊にフィードバック制御するための操作量として、δ軸上の指令電圧ｖδ＊を出力する。電流フィードバック処理部Ｍ３２，Ｍ３４は、入力に対する比例要素の出力値および積分要素の出力値の和を操作量として出力するものとすればよい。
【００３４】
αβ変換処理部Ｍ３６は、γδ軸上の指令電圧ｖγ＊，ｖδ＊を、αβ軸上の指令電圧ｖα＊，ｖβ＊に変換して出力する。なお、αβ変換処理部Ｍ３６が座標変換に利用する所定の回転角度は、後述する制御角θｃである。ｕｖｗ変換処理部Ｍ３８は、αβ軸上の指令電圧ｖα＊，ｖβ＊を、３相固定座標系の指令電圧ｖｕ＊，ｖｖ＊，ｖｗ＊に変換する。操作信号生成処理部Ｍ４０は、インバータ４０の出力線間電圧が指令電圧ｖｕ＊，ｖｖ＊，ｖｗ＊によって定まる相間電圧となるように、インバータ４０の操作信号ＭＳを生成して出力する。
【００３５】
αβ変換処理部Ｍ４４は、電流ｉｕ，ｉｖ，ｉｗを、αβ座標系の電流ｉα、ｉβに変換する。誘起電圧オブザーバＭ４６は、αβ変換処理部Ｍ４４の出力する電流ｉα，ｉβと、指令電圧ｖα＊，ｖβ＊と、後述する推定変化量ω１とに基づき、αβ軸上の誘起電圧ｅα，ｅβを推定する。角度算出処理部Ｍ４８は、推定された誘起電圧ｅα，ｅβの比「ｅβ／ｅα」を入力とする逆正接関数の出力値として、推定角度θｅ１を算出する。速度算出処理部Ｍ５０は、推定角度θｅ１を入力として、推定変化量ω１を算出する。ここで、推定変化量ω１は、所定時間ΔＴ当たりの推定角度θｅ１の変化量を示す。推定角度θｅ１の変化速度ωｅ１を用いると、推定変化量ω１は、「ωｅ１・ΔＴ」となる。
【００３６】
不感帯処理部Ｍ５２は、トルクセンサ６０によって検出された操舵トルクＴｒｑｓの大きさが所定値ＴｒｑＬ２以下である場合、「０」となり、所定値ＴｒｑＬ２より大きい場合、所定値ＴｒｑＬ２だけ減少補正した操舵トルクＴｒｑｓ１を算出する。
【００３７】
目標トルク設定処理部Ｍ５３は、目標トルクＴｒｑｓ＊を設定する。本実施形態では、目標トルクＴｒｑｓ＊として「０」を想定する。
更新量算出処理部Ｍ５４は、操舵トルクＴｒｑｓ１を目標トルクＴｒｑｓ＊にフィードバック制御するために制御角θｃを操作すべく、制御角の上記所定時間ΔＴにおける更新量Δθｃを算出して出力する。ここで、本実施形態では、同期電動機３４を流れる電流を、回転座標系において、ｄ軸の正側とｑ軸の正側との間の領域に制御することを想定する。換言すれば、電流の位相を、「０〜−９０°」の領域内に制御することを想定する。ここで、ｄ軸の正方向を、磁極の方向とし、ｑ軸の正方向を、ｄ軸に対して同期電動機３４の回転している方向に電気角で９０°ずらした方向とする。また、上記電流の位相を、電流ベクトルの方向（ここでは、γ軸の正方向）とｑ軸とのなす角度であって且つ、ｑ軸から回転方向に行く場合に正と定義する。この場合、電流の位相は、制御角θｃの更新量Δθｃが、所定時間ΔＴ当たりの同期電動機３４の実際の回転量に等しい場合には、一定値となる。これに対し、更新量Δθｃが所定時間ΔＴ当たりの同期電動機３４の実際の回転量よりも大きい場合には、電流の位相が電流ベクトルを進角させる側に変化する。また、更新量Δθｃが所定時間ΔＴ当たりの同期電動機３４の実際の回転量よりも小さい場合には、電流の位相が電流ベクトルを遅角させる側に変化する。このため、本実施形態では、制御角θｃを、電流の位相を定めるパラメータとして、電流の位相を操作するために操作する。
【００３８】
具体的には、偏差算出処理部Ｍ５４ａにおいては、操舵トルクＴｒｑｓ１から目標トルクＴｒｑｓ＊を減算した値を算出して出力する。フィードバック処理部Ｍ５４ｂは、偏差算出処理部Ｍ５４ａの出力値に基づき、操舵トルクＴｒｑｓ１を目標トルクＴｒｑｓ＊にフィードバック制御するための操作量として更新量Δθｃ１を算出して出力する。詳しくは、偏差算出処理部Ｍ５４ａの出力値を入力とする比例要素の出力値と積分要素の出力値との和を、更新量Δθｃ１とする。
【００３９】
推定値ベースガード処理部Ｍ５４ｃは、推定変化量ω１に基づき、更新量Δθｃ１にガード処理を施す。すなわち、所定時間ΔＴが経過する間に、同期電動機３４は、推定変化量ω１だけ回転する。このため、操舵トルクＴｒｑｓ１が目標トルクＴｒｑｓ＊よりも大きい場合、同期電動機３４のトルクを増加させるうえでは、更新量Δθｃ１は、推定変化量ω１と同じ符号であって且つ推定変化量ω１よりも大きさ（絶対値）が大きい値とすべきである。このため、推定値ベースガード処理部Ｍ５４ｃは、更新量Δθｃ１を、推定変化量ω１の大きさよりも所定値だけ大きい推定値ベース下限ガード値によってガード処理した値を更新量Δθｃとして出力する。一方、操舵トルクＴｒｑｓ１が目標トルクＴｒｑｓ＊に一致する場合、その状態を維持する上では、更新量Δθｃは、推定変化量ω１に一致させるべきである。このため、推定値ベースガード処理部Ｍ５４ｃは、更新量Δθｃ１を、推定変化量ω１に等しい値の推定値ベース上限ガード値および推定値ベース下限ガード値によってガード処理した値を更新量Δθｃとして出力する。
【００４０】
更新処理部Ｍ５６は、前回の制御周期における制御角θｃに今回の更新量Δθｃを加算することで、制御角θｃを更新する。なお、上記所定時間ΔＴは、制御周期に一致している。
【００４１】
ガード処理部Ｍ６０は、指令値設定処理部Ｍ２４により演算される電流指令値ｉγ１＊、トルクセンサ６０によって検出される操舵トルクＴｒｑｓ、目標トルク設定処理部Ｍ５３により設定される目標トルクＴｒｑｓ＊、および車速Ｖを取り込む。ガード処理部Ｍ６０は、操舵トルクＴｒｑｓ、目標トルクＴｒｑｓ＊、および車速Ｖに基づいて、電流指令値ｉγ１＊をガード処理することにより、電流指令値ｉγ＊を演算する。
【００４２】
次に、上記指令値設定処理部Ｍ２４の処理について説明する。
図３に、本実施形態にかかる指令値設定処理部Ｍ２４の処理の手順を示す。図３に示す処理は、たとえば所定周期で繰り返し実行される。なお、以下では、主体をＣＰＵ５２として記載する。また、以下では、指令値設定処理部Ｍ２４が出力するγ軸の電流指令値ｉγ１＊の符号を、同期電動機３４の回転方向によらずゼロ以上であるとして記載するが、実際には回転方向に応じて符号を反転させるロジックであってもよい。
【００４３】
図３に示す一連の処理において、ＣＰＵ５２は、まず操舵トルクＴｒｑｓと目標トルクＴｒｑｓ＊との差の絶対値が、規定値ＴｒｑＬ１以上であるか否かを判定する（Ｓ１０）。この処理は、トルクセンサ６０によって検出された操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が規定値ＴｒｑＬ１以上であるか否かを判定する処理である。ここで、規定値ＴｒｑＬ１を、本実施形態では、所定値ＴｒｑＬ２よりも小さい値に設定している。
【００４４】
そしてＣＰＵ５２は、上回る量が規定値ＴｒｑＬ１以上であると判定する場合（Ｓ１０：ＹＥＳ）、同期電動機３４を流れる電流の位相を操作することによってアシストトルクを制御する必要が生じるとして、γ軸の電流指令値ｉγ１＊に増加補正量Δｉを加算することによって、電流指令値ｉγ１＊を増加補正する（Ｓ１２）。ちなみに、規定値ＴｒｑＬ１は上記所定値ＴｒｑＬ２よりも小さいため、ステップＳ１２の処理によって、偏差算出処理部Ｍ５４ａの出力値がゼロであるときに電流指令値ｉγ１＊をゼロよりも大きい値とすることができる。したがって、偏差算出処理部Ｍ５４ａの出力値の絶対値がゼロよりも大きくなったときには、電流指令値ｉγ１＊の絶対値をゼロよりも大きい値とすることができ、ひいては、制御角θｃを操作量とするトルクフィードバック制御の準備を整えることができる。
【００４５】
一方、ＣＰＵ５２は、上回る量が規定値ＴｒｑＬ１未満であると判定する場合（Ｓ１０：ＮＯ）、同期電動機３４を流れる電流の位相を操作することによってアシストトルクを制御する必要に乏しいとして、γ軸の電流指令値ｉγ１＊から減少補正量Δｄを減算することにより、電流指令値ｉγ１＊を減少補正する（Ｓ１４）。なお、本実施形態では、減少補正量Δｄを、増加補正量Δｉよりも小さい値とする。
【００４６】
ＣＰＵ５２は、ステップＳ１２，Ｓ１４の処理が完了する場合、電流指令値ｉγ１＊が上限値ｉγ＊ｍａｘよりも大きいか否かを判定する（Ｓ１６）。ここで、上限値ｉγ＊ｍａｘは、同期電動機３４に対するγ軸の電流ｉγの指令値として許容する上限値に設定されている。そして、ＣＰＵ５２は、上限値ｉγ＊ｍａｘよりも大きいと判定する場合（Ｓ１６：ＹＥＳ）、上限値ｉγ＊ｍａｘを、電流指令値ｉγ１＊とする（Ｓ１８）。
【００４７】
一方、ＣＰＵ５２は、上限値ｉγ＊ｍａｘ以下であると判定する場合（Ｓ１６：ＮＯ）、電流指令値ｉγ１＊が、下限値ｉγ＊ｍｉｎよりも小さいか否かを判定する（Ｓ２０）。本実施形態では、下限値ｉγ＊ｍｉｎをゼロとする。そして、ＣＰＵ５２は、下限値ｉγ＊ｍｉｎよりも小さいと判定する場合（Ｓ２０：ＹＥＳ）、下限値ｉγ＊ｍｉｎを、電流指令値ｉγ１＊とする（Ｓ２２）。
【００４８】
なお、ＣＰＵ５２は、ステップＳ１８，Ｓ２２の処理が完了する場合や、ステップＳ２０において否定判定する場合には、図３に示す一連の処理を一旦終了する。ちなみに、増加補正量Δｉは、上限値ｉγ＊ｍａｘよりも小さい値に設定されている。このため、図３に示した処理によれば、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が規定値ＴｒｑＬ１以上となることによって、電流指令値ｉγ１＊は、ゼロから段階的に増加することとなる。また、上回る量が規定値ＴｒｑＬ１未満となることによって、電流指令値ｉγ１＊は、段階的にゼロへと移行することとなる。
【００４９】
次に、ガード処理部Ｍ６０の処理について説明する。
図４に、本実施形態にかかるガード処理部Ｍ６０の処理の手順を示す。図４に示す処理は、たとえば所定周期で繰り返し実行される。なお、以下では、主体をＣＰＵ５２として記載する。
【００５０】
図４に示す一連の処理において、ＣＰＵ５２は、まず、操舵トルクＴｒｑｓと目標トルクＴｒｑｓ＊との差の絶対値が、規定値ＴｒｑＬ１以上であるか否かを判定する（Ｓ３０）。この処理は、トルクセンサ６０によって検出された操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が規定値ＴｒｑＬ１以上であるか否かを判定する処理である。そしてＣＰＵ５２は、上回る量が規定値ＴｒｑＬ１以上であると判定する場合（Ｓ３０：ＹＥＳ）、電流指令値ｉγ＊の前回値ｉγ＊（ｎ−１）に規定量ΔＬを加算した値よりも、指令値設定処理部Ｍ２４が出力する電流指令値ｉγ１＊の今回値ｉγ１＊（ｎ）の方が小さいか否かを判定する（Ｓ３２）。ここで、規定量ΔＬを、本実施形態では、上記増加補正量Δｉよりも小さく上記減少補正量Δｄ以上の値に設定している。ＣＰＵ５２は、今回値ｉγ１＊（ｎ）の方が小さいと判定する場合（Ｓ３２：ＹＥＳ）、電流指令値ｉγ＊の前回値ｉγ＊（ｎ−１）に規定量ΔＬを加算した値を、電流指令値ｉγ＊の今回値ｉγ＊（ｎ）とする（Ｓ３４）。この処理は、ステップＳ３０において肯定判定される場合には同期電動機３４を流れる電流の位相を操作することによってアシストトルクを制御する必要があることに鑑み、電流指令値ｉγ＊の大きさが過度に小さくならないようにするための処理である。
【００５１】
一方、ＣＰＵ５２は、今回値ｉγ１＊（ｎ）が、電流指令値ｉγ＊の前回値ｉγ＊（ｎ−１）に規定量ΔＬを加算した値以上であると判定する場合（Ｓ３２：ＮＯ）、今回値ｉγ１＊（ｎ）が、電流指令値ｉγ＊の前回値ｉγ＊（ｎ−１）に、上記規定量ΔＬよりも大きい所定量ΔＨを加算した値よりも大きいか否かを判定する（Ｓ３６）。ここで、所定量ΔＨは、上記増加補正量Δｉよりも大きい値に設定する。そしてＣＰＵ５２は、所定量ΔＨを加算した値よりも大きいと判定する場合（Ｓ３６：ＹＥＳ）、電流指令値ｉγ＊の今回値ｉγ＊（ｎ）を、前回値ｉγ＊（ｎ−１）に所定量ΔＨを加算した値とする（Ｓ３８）。
【００５２】
これに対し、ＣＰＵ５２は、前回値ｉγ＊（ｎ−１）に所定量ΔＨを加算した値以下であると判定する場合（Ｓ３６：ＮＯ）、今回値ｉγ１＊（ｎ）の前回値ｉγ＊（ｎ−１）に対する変化量が許容範囲にあるとして、今回値ｉγ＊（ｎ）を、指令値設定処理部Ｍ２４が設定した今回値ｉγ１＊（ｎ）とする（Ｓ４０）。
【００５３】
一方、ＣＰＵ５２は、上述の上回る量が規定値ＴｒｑＬ１未満であると判定する場合（Ｓ３０：ＮＯ）、電流指令値ｉγ＊の前回値ｉγ＊（ｎ−１）から規定量ΔＬを減算した値よりも、指令値設定処理部Ｍ２４が出力する電流指令値ｉγ１＊の今回値ｉγ１＊（ｎ）の方が小さいか否かを判定する（Ｓ４２）。そして、ＣＰＵ５２は、今回値ｉγ１＊（ｎ）の方が小さいと判定する場合（Ｓ４２：ＹＥＳ）、電流指令値ｉγ＊の今回値ｉγ＊（ｎ）を、前回値ｉγ＊（ｎ−１）から規定量ΔＬを減算した値とする（Ｓ４４）。この処理は、指令値設定処理部Ｍ２４が出力する電流指令値ｉγ１＊が正常である場合、その今回値ｉγ１＊（ｎ）は、前回値ｉγ＊（ｎ−１）から規定量ΔＬを減算した値以上となることに鑑みたものである。
【００５４】
ＣＰＵ５２は、今回値ｉγ１＊（ｎ）が、前回値ｉγ＊（ｎ−１）から規定量ΔＬを減算した値以上であると判定する場合（Ｓ４２：ＮＯ）、今回値ｉγ１＊（ｎ）が、前回値ｉγ＊（ｎ−１）よりも大きいか否かを判定する（Ｓ４６）。そしてＣＰＵ５２は、前回値ｉγ＊（ｎ−１）よりも大きいと判定する場合（Ｓ４６：ＹＥＳ）、前回値ｉγ＊（ｎ−１）を、今回値ｉγ＊（ｎ）とする（Ｓ４８）。
【００５５】
これに対しＣＰＵ５２は、今回値ｉγ１＊（ｎ）が、前回値ｉγ＊（ｎ−１）以下であると判定する場合（Ｓ４６：ＮＯ）、指令値設定処理部Ｍ２４が出力する今回値ｉγ１＊（ｎ）の前回値ｉγ＊（ｎ−１）に対する変化量が許容範囲にあるとして、この今回値ｉγ１＊（ｎ）を、今回値ｉγ＊（ｎ）とする（Ｓ４０）。
【００５６】
ＣＰＵ５２は、ステップＳ３４，Ｓ３８，Ｓ４０，Ｓ４４、Ｓ４８の処理が完了する場合、電流指令値ｉγ＊の今回値ｉγ＊（ｎ）が上限値ｉγ＊ｍａｘよりも大きいか否かを判定する（Ｓ５０）。そして、ＣＰＵ５２は、上限値ｉγ＊ｍａｘよりも大きいと判定する場合（Ｓ５０：ＹＥＳ）、上限値ｉγ＊ｍａｘを今回値ｉγ＊（ｎ）とする（Ｓ５２）。
【００５７】
一方、ＣＰＵ５２は、今回値ｉγ＊（ｎ）が上限値ｉγ＊ｍａｘ以下であると判定する場合（Ｓ５０：ＮＯ）、車速Ｖが車速閾値ＶＬ以上であるか否かを判定する（Ｓ５４）。そして、ＣＰＵ５２は、車速Ｖが車速閾値ＶＬ以上である場合（Ｓ５４：ＹＥＳ）、今回値ｉγ＊（ｎ）が「０」（下限値ｉγ＊ｍｉｎ＝０）よりも小さいか否かを判定する（Ｓ５５）。そして、ＣＰＵ５２は、今回値ｉγ＊（ｎ）が「０」よりも小さい場合（Ｓ５５：ＹＥＳ）、今回値ｉγ＊（ｎ）を「０」とする（Ｓ５６）。これにより、今回値ｉγ＊（ｎ）の符号の反転を抑制することができる。なお、車速閾値ＶＬは、高車速時と低車速時とを判別するために、高車速と低車速との間の車速に設定される。
【００５８】
一方、ＣＰＵ５２は、車速Ｖが車速閾値ＶＬ未満である場合（Ｓ５４：ＮＯ）、今回値ｉγ＊（ｎ）が軸力相当電流値ｉγ＊ａ（下限値ｉγ＊ｍｉｎ＝軸力相当電流値ｉγ＊ａ）よりも小さいか否かを判定する（Ｓ５７）。そして、ＣＰＵ５２は、今回値ｉγ＊（ｎ）が軸力相当電流値ｉγ＊ａよりも小さい場合（Ｓ５７：ＹＥＳ）、今回値ｉγ＊（ｎ）を軸力相当電流値ｉγ＊ａとする（Ｓ５８）。なお、軸力相当電流値ｉγ＊ａは、走行中にアシストトルクによりラック軸２０に発生する軸力に相当する（アシストするのに必要と想定される最低限の）電流値である。
【００５９】
ＣＰＵ５２は、ステップＳ５２，Ｓ５６，Ｓ５８の処理が完了する場合や、ステップＳ５５，Ｓ５７において否定判定する場合には、図４に示す一連の処理を一旦終了する。ステップＳ５５，Ｓ５７において否定判定された場合には、今回値ｉγ＊（ｎ）が上限値ｉγ＊ｍａｘと下限値ｉγ＊ｍｉｎとで設定される許容範囲に収まっているため、絶対値ガード処理を行わなくてよいためである。
【００６０】
ここで、本実施形態の作用を説明する。
ＣＰＵ５２は、操舵トルクＴｒｑｓが目標トルクＴｒｑｓ＊を上回る量が規定値ＴｒｑＬ１以上である場合、指令値設定処理部Ｍ２４が出力する電流指令値ｉγ１＊にガード処理部Ｍ６０によってガード処理を施すことにより、電流指令値ｉγ＊の大きさが前回値ｉγ＊（ｎ−１）よりも大きくなるようにする。このため、指令値設定処理部Ｍ２４に異常が生じ、上述の上回る量が規定値ＴｒｑＬ１以上であるにもかかわらず、指令値設定処理部Ｍ２４が出力する電流指令値ｉγ１＊が減少する場合であっても、偏差算出処理部Ｍ２８の入力となる電流指令値ｉγ＊が過度に小さい値となることを回避することができる。このため、フィードバック処理部Ｍ５４ｂが操舵トルクＴｒｑｓ１を目標トルクＴｒｑｓ＊に制御すべく制御角θｃが操作されることによって、同期電動機３４のアシストトルクを適切な値に制御することができる。
【００６１】
しかも、ガード処理部Ｍ６０の処理は、指令値設定処理部Ｍ２４の処理とは異なるロジックで構成されている。このため、指令値設定処理部Ｍ２４のロジックや定数の誤り等のシステマティックエラーが生じた場合であっても、ガード処理部Ｍ６０の信頼性の低下を抑制することができる。これに対し、指令値設定処理部Ｍ２４の処理と同一の処理を、たとえば並列に２回実行し、互いの値を照合することにより、指令値設定処理部Ｍ２４のシステマティックエラーに対処する場合には、並列に実行される２つのロジックが同一であるために、システマティックエラー発生時における電流指令値ｉγ＊の信頼性が低くなる。
【００６２】
以上説明した本実施形態によれば、さらに以下に記載する効果が得られる。
（１）ステップＳ３０〜Ｓ４８の処理は、電流指令値ｉγ＊の前回からの変化量が許容範囲内であるか否かに基づく変化量ガード処理であり、変化量ガード処理が施された電流指令値ｉγ＊は、その絶対値が適切な値である保証はない。そこで本実施形態では、変化量ガード処理が施された電流指令値ｉγ＊に対し、ステップＳ５０〜Ｓ５４の処理によって、上限値ｉγ＊ｍａｘ以下且つ下限値ｉγ＊ｍｉｎ以上となるようにガード処理を施した。これにより、ガード処理部Ｍ６０が出力する電流指令値ｉγ＊の絶対値を適切な値とすることができる。
【００６３】
（２）ステップＳ５４〜Ｓ５８の処理において、ＣＰＵ５２は、車速Ｖに応じて下限値ｉγ＊ｍｉｎを変更している。高車速時には、同期電動機３４へと流れる電流が反転することを抑制するために、今回値ｉγ＊（ｎ）の下限値ｉγ＊ｍｉｎを「０」とすることで、今回値ｉγ＊（ｎ）の符号が反転することを規制している。また、低車速時には、指令値設定処理部Ｍ２４に異常が発生することにより同期電動機３４へ流れる電流が減少し、電流不足によって制御装置５０が同期電動機３４を的確に制御できないおそれがあったが、下限値ｉγ＊ｍｉｎを軸力相当電流値ｉγ＊ａに設定することにより、アシストに最低限必要と想定される電流を同期電動機３４へ供給できる。これらにより、指令値設定処理部Ｍ２４のロジックや定数の誤り等のシステマティックエラーが生じた場合であっても、ガード処理部Ｍ６０の信頼性の低下を抑制することができる。
【００６４】
＜第２の実施形態＞
以下、操舵制御装置にかかる第２の実施形態について、第１の実施形態との相違点を中心に図面を参照しつつ説明する。
【００６５】
図５に、本実施形態にかかる指令値設定処理部Ｍ２４の処理の手順を示す。図５に示す処理は、たとえば所定周期で繰り返し実行される。なお、図５において、図３に示した処理に対応する処理については、便宜上、同一のステップ番号を付してその説明を省略する。
【００６６】
図５に示す一連の処理において、ＣＰＵ５２は、ステップＳ１０において肯定判定する場合、過熱フラグＦが「１」であるか否かを判定する（Ｓ６０）。ここで、過熱フラグＦは、同期電動機３４の温度Ｔｍが過度に高かったりインバータ４０の温度Ｔｉが過度に高かったりする場合に「１」となり、そうでない場合に「０」となる。ＣＰＵ５２は、過熱フラグＦが「０」であると判定する場合（Ｓ６０：ＮＯ）、同期電動機３４の温度Ｔｍが規定温度Ｔｔｈ以上であることとインバータ４０の温度Ｔｉが規定温度Ｔｔｈ以上であることとの論理和が真であるか否かを判定する（Ｓ６２）。そしてＣＰＵ５２は、論理和が真であると判定する場合（Ｓ６２：ＹＥＳ）、過熱フラグＦを「１」とする（Ｓ６４）。そしてＣＰＵ５２は、電流指令値ｉγ１＊から過熱用減少補正量ΔＤを減算することによって、電流指令値ｉγ１＊の大きさを減少補正し（Ｓ６６）、ステップＳ１６に移行する。
【００６７】
一方、ＣＰＵ５２は、過熱フラグＦが「１」であると判定する場合（Ｓ６０：ＹＥＳ）、温度Ｔｍが規定温度Ｔｔｈよりも低いことと温度Ｔｉが規定温度Ｔｔｈよりも低いこととの論理積が真であるか否かを判定する（Ｓ６８）。そして、ＣＰＵ５２は、論理積が真であると判定する場合（Ｓ６８：ＹＥＳ）、過熱フラグＦを「０」とし（Ｓ７０）、ステップＳ１２の処理に移行する。
【００６８】
一方、ＣＰＵ５２は、論理積が偽であると判定する場合（Ｓ６８：ＮＯ）、ステップＳ６６の処理に移行する。
このように、本実施形態では、過熱フラグＦが「１」となる場合、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が規定値ＴｒｑＬ１以上である場合であっても、電流指令値ｉγ１＊の絶対値を減少させることにより、同期電動機３４やインバータ４０の温度が過度に高くなることを抑制することを狙う。ただし、この際、ガード処理部Ｍ６０が図４に示した処理を実行する場合には、最終的な電流指令値ｉγ＊を減少させることができない。そこで本実施形態では、ガード処理を以下のように変更する。
【００６９】
図６に、本実施形態にかかるガード処理部Ｍ６０の処理の手順を示す。図６に示す処理は、たとえば所定周期で繰り返し実行される。なお、図６において、図４に示した処理に対応する処理については、便宜上同一の符号を付している。
【００７０】
図６に示す一連の処理において、ＣＰＵ５２は、まず操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊を上回る量が規定値ＴｒｑＬ１以上であると判定する場合（Ｓ３０：ＹＥＳ）、過熱フラグＦが「１」であるか否かを判定する（Ｓ７０）。そしてＣＰＵ５２は、過熱フラグＦが「１」ではないと判定する場合（Ｓ７０：ＮＯ）、ステップＳ３２に移行する。一方、ＣＰＵ５２は、過熱フラグＦが「１」であると判定する場合（Ｓ７０：ＹＥＳ）、電流指令値ｉγ１＊の今回値ｉγ１＊（ｎ）が、電流指令値ｉγ＊の前回値ｉγ＊（ｎ−１）から過熱時規定量ΔＬＬを減算した値よりも小さいか否かを判定する（Ｓ７２）。そしてＣＰＵ５２は、過熱時規定量ΔＬＬを減算した値よりも小さいと判定する場合（Ｓ７２：ＹＥＳ）、前回値ｉγ＊（ｎ−１）から過熱時規定量ΔＬＬを減算した値を、電流指令値ｉγ＊の今回値ｉγ＊（ｎ）とする（Ｓ７４）。これに対し、ＣＰＵ５２は、今回値ｉγ１＊（ｎ）が、前回値ｉγ＊（ｎ−１）から過熱時規定量ΔＬＬを減算した値以上であると判定する場合（Ｓ７２：ＮＯ）、今回値ｉγ１＊（ｎ）が、前回値ｉγ＊（ｎ−１）よりも大きいか否かを判定する（Ｓ７６）。そして、ＣＰＵ５２は、前回値ｉγ＊（ｎ−１）よりも大きいと判定する場合（Ｓ７６：ＹＥＳ）、前回値ｉγ＊（ｎ−１）を今回値ｉγ１＊（ｎ）とする（Ｓ７８）。一方、ＣＰＵ５２は、今回値ｉγ１＊（ｎ）が、前回値ｉγ＊（ｎ−１）以下であると判定する場合（Ｓ７６：ＮＯ）、今回値ｉγ１＊（ｎ）の前回値ｉγ＊（ｎ−１）に対する変化量が許容範囲内にあるとして、ステップＳ４０の処理に移行する。
【００７１】
ＣＰＵ５２は、ステップＳ７４，Ｓ７８の処理が完了する場合、ステップＳ５０の処理に移行する。
このように、本実施形態によれば、過熱フラグＦが「１」である場合、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊を上回る量が規定値ＴｒｑＬ１以上である場合であっても、ガード処理部Ｍ６０が電流指令値ｉγ＊の減少を許容するようにした。このため、システマティックエラーに対処するガード処理部Ｍ６０を設けつつも、同期電動機３４やインバータ４０の温度が過度に高くなることを抑制することができる。
【００７２】
＜第３の実施形態＞
以下、操舵制御装置にかかる第３の実施形態について、第２の実施形態との相違点を中心に図面を参照しつつ説明する。
【００７３】
上記第２の実施形態では、過熱フラグＦが「１」である場合、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊を上回る量が規定値ＴｒｑＬ１以上であると判定する場合であっても、ガード処理部Ｍ６０によるガード処理によって電流指令値ｉγ＊が減少することを許容した。しかし、過熱フラグＦ自体、センサレス処理部Ｍ２０の処理を実現するための通常のロジックであり、これに異常が生じる場合には、同期電動機３４やインバータ４０の温度が高い場合にこれに対処することができない。また、指令値設定処理部Ｍ２４が、同期電動機３４やインバータ４０の温度が高い場合に電流指令値ｉγ１＊を減少させない異常が生じている場合にも、同期電動機３４やインバータ４０の温度が高い場合にこれに対処することができない。そこで本実施形態では、ガード処理部Ｍ６０の処理を以下のように変更する。
【００７４】
図７に、本実施形態にかかるガード処理部Ｍ６０の処理の手順を示す。図７に示す処理は、たとえば所定周期で繰り返し実行される。なお、図７において、図６に示した処理に対応する処理については、便宜上同一の符号を付している。
【００７５】
図７に示す一連の処理において、ＣＰＵ５２は、ステップＳ３０において肯定判定する場合、同期電動機３４の温度Ｔｍが規定温度Ｔｔｈ以上であることとインバータ４０の温度Ｔｉが規定温度Ｔｔｈ以上であることとの論理和が真であるか否かを判定する（Ｓ７０ａ）。そしてＣＰＵ５２は、論理和が偽であると判定する場合（Ｓ７０ａ：ＮＯ）、ステップＳ３２の処理に移行する一方、論理和が真であると判定する場合（Ｓ７０ａ：ＹＥＳ）、電流指令値ｉγ１＊の今回値ｉγ１＊（ｎ）が、電流指令値ｉγ＊の前回値ｉγ＊（ｎ−１）から過熱時規定量ΔＬＬを減算した値よりも小さいか否かを判定する（Ｓ７２）。そしてＣＰＵ５２は、今回値ｉγ１＊（ｎ）が、前回値ｉγ＊（ｎ−１）から過熱時規定量ΔＬＬを減算した値以上であると判定する場合（Ｓ７２：ＮＯ）、今回値ｉγ１＊（ｎ）が、前回値ｉγ＊（ｎ−１）から過熱時減少補正量ΔＬＬＬを減算した値よりも大きいか否かを判定する（Ｓ７６ａ）。過熱時減少補正量ΔＬＬＬは、過熱時規定量ΔＬＬよりも小さい値に設定されている。そして、ＣＰＵ５２は、過熱時減少補正量ΔＬＬＬを減算した値よりも大きいと判定する場合（Ｓ７６ａ：ＹＥＳ）、電流指令値ｉγ＊の今回値ｉγ＊（ｎ）を、前回値ｉγ＊（ｎ−１）から過熱時減少補正量ΔＬＬＬを減算した値とし（Ｓ７８ａ）、ステップＳ５０の処理に移行する。
【００７６】
なお、ＣＰＵ５２は、ステップＳ７６ａにおいて否定判定する場合には、ステップＳ４０の処理に移行する。
このように、本実施形態では、指令値設定処理部Ｍ２４とは独立に、ガード処理部Ｍ６０において、同期電動機３４の温度Ｔｍが規定温度Ｔｔｈ以上であることとインバータ４０の温度Ｔｉが規定温度Ｔｔｈ以上であることとの論理和が真であるか否かを判定した。そして真である場合、ガード処理部Ｍ６０において、電流指令値ｉγ＊を減少させた。これにより、同期電動機３４やインバータ４０の温度が高い場合にこれに確実に対処することができる。
【００７７】
＜対応関係＞
上記「課題を解決するための手段」の欄に記載した事項と、実施形態における事項との対応関係は、次の通りである。以下では、「課題を解決するための手段」の欄に記載した解決手段の番号毎に、対応関係を示している。なお、以下において、「メモリ５４に記憶されたプログラムに従って所定の処理を実行するＣＰＵ５２」のことを、記載を簡素化するために、「所定の処理を実行するＣＰＵ５２」と記載する。
【００７８】
１．操舵制御装置は、制御装置５０に対応し、電力変換回路は、インバータ４０に対応する。電流制御処理部は、γδ変換処理部Ｍ２６、偏差算出処理部Ｍ２８、偏差算出処理部Ｍ３０、電流フィードバック処理部Ｍ３２、電流フィードバック処理部Ｍ３４、αβ変換処理部Ｍ３６、ｕｖｗ変換処理部Ｍ３８、操作信号生成処理部Ｍ４０に対応する。制御角操作処理部は、不感帯処理部Ｍ５２、目標トルク設定処理部Ｍ５３、更新量算出処理部Ｍ５４および更新処理部Ｍ５６に対応する。閾値は、規定値ＴｒｑＬ１に対応する。なお、制御角操作処理部が、「操舵トルクの検出値を目標トルクにフィードバック制御する」ことは、検出値（操舵トルクＴｒｑｓ）が所定値ＴｒｑＬ２以下の場合、目標トルクを検出値と同一の値とし、検出値が所定値ＴｒｑＬ２を上回る場合、目標トルクを、検出値から所定値ＴｒｑＬ２を減算した値とすることに対応する。
【００７９】
２．ステップＳ３０において肯定判定することを条件に、ステップＳ３２，Ｓ３４の処理を実行するＣＰＵ５２に対応する。なお、図４においてステップＳ３４の処理は、ステップＳ５０，Ｓ５５，Ｓ５７において肯定判定される場合に無効とされうる。このため、図４において、ステップＳ３４の処理によるガード処理がなされるのは、ステップＳ５０，Ｓ５５，Ｓ５７において否定判定される旨の条件とステップＳ３０において肯定判定する旨の条件との論理積が真である場合である。また、下限ガード値は、「ｉγ＊（ｎ−１）＋ΔＬ」に対応する。
【００８０】
３．第２の実施形態または第３の実施形態に対応する。
４．第３の実施形態に対応する。
５．ステップＳ４６，Ｓ４８の処理を実行するＣＰＵ５２に対応する。
【００８１】
６．絶対値ガード処理は、ステップＳ５０〜Ｓ５８の処理に対応する。
＜その他の実施形態＞
なお、上記実施形態の各事項の少なくとも１つを、以下のように変更してもよい。
【００８２】
・「指令値設定処理部について」
操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が規定値ＴｒｑＬ１以上である場合に、γ軸の電流指令値ｉγ１＊の絶対値を増加させる際の増加補正量Δｉとしては、上回る量が規定値ＴｒｑＬ１以上の場合に一律同一の値とするものに限らない。たとえば、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊を上回る量が規定値ＴｒｑＬ１以上である場合において、上回る量が大きい場合に小さい場合と比較して増加補正量Δｉを大きい値としてもよい。
【００８３】
操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が規定値ＴｒｑＬ１未満である場合に、γ軸の電流指令値ｉγ１＊の絶対値を減少させる際の減少補正量Δｄとしては、上記上回る量が規定値ＴｒｑＬ１未満の場合に一律同一の値とするものに限らない。たとえば、上回る量が規定値ＴｒｑＬ１未満である場合において、上回る量が小さい場合に大きい場合よりも減少補正量Δｄの絶対値を大きい値としてもよい。
【００８４】
ステップＳ１６〜Ｓ２２の処理を実行するものに限らない。たとえば、ステップＳ１２の処理を実行した回数の積算値である第１積算回数からステップＳ１４の処理を実行した回数の積算値である第２積算回数を減算した値が第１判定値以下であることを条件に、ステップＳ１２の処理を許可してもよい。この場合、第２積算回数から第１積算回数を減算した値が第２判定値以下であることを条件に、ステップＳ１４の処理を許可すればよい。
【００８５】
指令値設定処理部としては、γ軸の電流指令値ｉγ１＊の絶対値を段階的に増加させるものに限らない。これはたとえば、増加補正量Δｉを、上限値ｉγ＊ｍａｘ以上とすることによって実現できる。なお、この場合、規定値ＴｒｑＬ１を、所定値ＴｒｑＬ２と一致させても、フィードバック処理部Ｍ５４ｂによる制御を適切に行うことができる。
【００８６】
指令値設定処理部としては、γ軸の電流指令値ｉγ１＊の絶対値を段階的に減少させるものに限らない。これはたとえば、減少補正量Δｄや過熱用減少補正量ΔＤを、上限値ｉγ＊ｍａｘ以上とすることによって実現できる。なお、過熱用減少補正量ΔＤに限って、上限値ｉγ＊ｍａｘ以上とすることも可能である。
【００８７】
・「変化量ガード処理について」
上記実施形態では、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が規定値ＴｒｑＬ１以上である場合、電流指令値ｉγ＊が前回値ｉγ＊（ｎ−１）よりも規定量ΔＬ以上大きくなるように、下限ガード値を設定したがこれに限らない。たとえば、下限ガード値を、前回値ｉγ＊（ｎ−１）とすることにより、前回値ｉγ＊（ｎ−１）からの減少を許容しないようにしてもよい。この場合であっても、たとえば第１の実施形態において、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が規定値ＴｒｑＬ１以上であるにもかかわらず、システマティックエラーに起因して電流指令値ｉγ＊が減少していくことを抑制することはできる。
【００８８】
上記実施形態では、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が規定値ＴｒｑＬ１以上である場合に電流指令値ｉγ＊を増加補正するための規定量ΔＬを、増加補正量Δｉよりも小さい値としたが、これに限らず、たとえば、増加補正量Δｉと一致させてもよい。ただし、この場合であっても、上回る量が規定値ＴｒｑＬ１未満である場合にステップＳ４２において電流指令値ｉγ＊を減少補正するための量は、減少補正量Δｄ以下とすることが望ましい。
【００８９】
上記実施形態では、所定量ΔＨを、増加補正量Δｉよりも大きい値としたがこれに限らない。たとえば、図４において、規定量ΔＬについては増加補正量Δｉよりも小さい値として且つ、所定量ΔＨについては、増加補正量Δｉと一致させてもよい。
【００９０】
たとえば、ステップＳ４６，Ｓ４８の処理に代えて、電流指令値の今回値ｉγ＊（ｎ）を、前回値ｉγ＊（ｎ−１）から所定値を減算した値以下に制限する処理を実行してもよい。ただし、図４において、この所定値は、規定量ΔＬよりも小さい値とする。
【００９１】
ステップＳ７２の処理における過熱時規定量ΔＬＬに代えて、過熱用減少補正量ΔＤを用いてもよい。
図４に示した処理等においては、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が閾値以上である場合に、電流指令値ｉγ＊の減少を許容しないようにガード処理を施し、閾値を、規定値ＴｒｑＬ１としたが、これに限らない。たとえば、規定値ＴｒｑＬ１を所定値ＴｒｑＬ２よりも小さい値とする場合において、閾値を規定値ＴｒｑＬ１と所定値ＴｒｑＬ２との間の値としてもよい。
【００９２】
たとえば、操舵トルクＴｒｑｓの大きさが目標トルクＴｒｑｓ＊の大きさを上回る量が閾値以上である場合、下限ガード値によるガード処理を実行するものの、上限ガード値によるガード処理については実行しなくてもよい。この場合であっても、その後、ステップＳ５０〜Ｓ５６の処理を実行することによって、電流指令値ｉγ＊の絶対値が過度に大きい値となることを抑制することができる。
【００９３】
また、ステップＳ３０〜Ｓ４８の変化量ガード処理を行うことは必須ではない。これらの処理を実行しない場合であっても、ステップＳ５０〜Ｓ５８の絶対値ガード処理を行うことにより、電流指令値ｉγ＊の絶対値が過度に大きい値あるいは小さい値になることを抑制することができる。
【００９４】
・「絶対値ガード処理について」
ステップＳ５４〜Ｓ５８では、車速Ｖに応じて下限値ｉγ＊ｍｉｎを変更したが、車速Ｖに応じて上限値ｉγ＊ｍａｘを変更してもよい。また、車速Ｖに応じて、下限値ｉγ＊ｍｉｎおよび上限値ｉγ＊ｍａｘの両方を変更してもよい。すなわち、車速Ｖに応じて、下限値ｉγ＊ｍｉｎおよび上限値ｉγ＊ｍａｘの少なくとも一方を変更すればよい。
【００９５】
・「過熱判定について」
上記実施形態では、過熱判定をする同期電動機３４の温度Ｔｍの下限値としての規定温度と、過熱判定をするインバータ４０の温度Ｔｉの下限値としての規定温度とを、同一の規定温度Ｔｔｈとしたが、これに限らない。
【００９６】
上記実施形態では、ＣＰＵ５２が、同期電動機３４の温度Ｔｍが規定温度Ｔｔｈ以上であることと、インバータ４０の温度Ｔｉが規定温度Ｔｔｈ以上であることとの論理和が真であるか否かを判定したが、これに限らない。たとえば同期電動機３４の温度Ｔｍが規定温度Ｔｔｈ以上であるか否かのみを判定してもよく、また、たとえば、インバータ４０の温度Ｔｉが規定温度Ｔｔｈ以上であるか否かのみを判定してもよい。
【００９７】
同期電動機３４の温度Ｔｍを、温度センサの検出値によって取得することなく、たとえば同期電動機３４を流れる電流の大きさとその継続時間等に基づき把握してもよい。これはたとえば、同期電動機３４を流れる電流が規定値以上である状態が規定時間以上継続する場合、同期電動機３４の温度Ｔｍが規定温度Ｔｔｈ以上であると判定することによって実現することができる。
【００９８】
インバータ４０の温度Ｔｉを、温度センサの検出値によって取得することなく、たとえばインバータ４０を流れる電流の大きさとその継続時間等に基づき把握してもよい。これはたとえば、インバータ４０を流れる電流が規定値以上である状態が規定時間以上継続する場合、インバータ４０の温度Ｔｉが規定温度Ｔｔｈ以上であると判定することによって実現することができる。
【００９９】
上記第３の実施形態においては、ガード処理部Ｍ６０が過熱保護処理を実行するか否かを判定する処理であるステップＳ７０ａの処理の内容を、指令値設定処理部Ｍ２４が過熱フラグＦをセットする処理の内容と同一としたが、これに限らない。たとえば、指令値設定処理部Ｍ２４が、インバータ４０を流れる電流が規定値以上である状態が規定時間以上継続することに基づき過熱フラグＦをセットし、ガード処理部Ｍ６０が、検出されたインバータ４０の温度Ｔｉが規定温度Ｔｔｈ以上であるか否かを判定する処理を実行してもよい。
【０１００】
・「制御角操作処理部について」
上記実施形態において例示したものに限らない。たとえば、更新量Δθｃ１を、目標トルクＴｒｑｓ＊と操舵トルクＴｒｑｓ１との差を入力とする比例要素のみから算出するものとしてもよく、またたとえば、積分要素のみから算出するものとしてもよく、さらにたとえば、比例要素、積分要素、および微分要素を用いて算出するものとしてもよい。
【０１０１】
なお、推定変化量ω１に応じて更新量のガード処理を施すことは必須ではない。
・「同期電動機３４を流れる電流の位相について」
上記実施形態では、同期電動機３４を流れる電流が、回転座標系において、ｄ軸の正側とｑ軸の正側とによって挟まれる領域内に収まることを想定したがこれに限らない。たとえば、ｑ軸の正側とｄ軸の負側とによって挟まれる領域内に収まるように制御してもよい。この場合、ｄ軸電流が負となるため、弱め界磁制御がなされることから、高回転において同期電動機３４のトルクを生成しやすい。ただし、この場合、推定値ベースガード処理部Ｍ５４ｃにおいては、操舵トルクＴｒｑｓ１が大きい場合に、推定変化量ω１の大きさよりも更新量Δθｃの大きさが小さくなるように上限ガード処理を施す。
【０１０２】
・「操舵制御装置について」
ＣＰＵ５２とメモリ５４とを備えて、ソフトウェア処理のみを実行するものに限らない。たとえば、上記実施形態においてソフトウェア処理されたものの少なくとも一部を、専用のハードウェア（ＡＳＩＣ）にて処理してもよい。すなわち、たとえば、上記ガード処理部Ｍ６０の処理については、ハードウェア処理とし、電流指令値ｉγ＊をハードウェアからＣＰＵ５２が取得するようにしてもよい。
【０１０３】
・「同期電動機について」
ＳＰＭＳＭに限らず、埋込磁石同期電動機であってもよい。
・「操舵装置について」
転舵アクチュエータとして、ラックアンドピニオン型のものを備えるのに限らない。たとえば、ラッククロス型のものや、ラックパラレル型（登録商標）、ラック同軸型のものなどを備えてもよい。
【符号の説明】
【０１０４】
１０…操舵装置、１２…ステアリング、１３…ステアリングシャフト、１４…コラム軸、１６…中間軸、１８…ピニオン軸、１８ａ…ピニオン歯、２０…ラック軸、２０ａ…第１ラック歯、２０ｂ…第２ラック歯、２２…第１ラックアンドピニオン機構、２４…タイロッド、２６…転舵輪、２８…ピニオン軸、２８ａ…ピニオン歯、３０…第２ラックアンドピニオン機構、３２…減速機構、３４…同期電動機、３４ａ…回転軸、４０…インバータ、４２…バッテリ、５０…制御装置、５２…ＣＰＵ、５４…メモリ、５８…回転角度センサ、６０…トルクセンサ、６２…車速センサ、６４…電流センサ、６６，６８…温度センサ。
【図１】
2018095198.tif 000003
【図２】
2018095198.tif 000004
【図３】
2018095198.tif 000005
【図４】
2018095198.tif 000006
【図５】
2018095198.tif 000007
【図６】
2018095198.tif 000008
【図７】
2018095198.tif 000009