(57)【特許請求の範囲】
【請求項１】
車両のステアリング系に発生する操舵トルクおよび前記車両の速度に基づいて演算した操舵補助指令値と、前記ステアリング系に操舵補助力を付与する操舵補助モータの電流検出値とに基づいて、前記操舵補助モータを制御する電動パワーステアリング装置において、
前記操舵補助モータを制御する操舵補助処理を実行する制御手段と、
前記制御手段の作業領域となるメモリと、
前記操舵補助処理の実行前または実行中に前記メモリの故障検出を行うメモリ故障検出手段と、
を備え、
前記メモリは、故障しても前記操舵補助処理を実行できる第１の領域と、故障がある場合でも前記操舵補助トルクを制限することで、当該操舵補助処理を実行できる第２の領域と、を有し、当該第２の領域は、前記操舵補助処理の機能に応じて複数に分割されており、
前記メモリ故障検出手段で前記メモリの前記領域の故障を検出した場合には、前記操舵補助トルクを制限して、前記操舵補助処理を実行または継続し、
前記メモリ故障検出手段は、前記操舵補助処理の実行中に前記メモリの故障検出を行う場合には、前記第１の領域の故障検出を行わないこと
を特徴とする電動パワーステアリング装置。
【請求項２】
前記メモリの前記領域は、トルク制御で使用される第１の領域を含み、
前記メモリ故障検出手段で前記メモリの前記第１の領域の故障を検出した場合には、前記トルク制御を制限して、前記操舵補助処理を実行または継続することを特徴とする請求項１に記載の電動パワーステアリング装置。
【請求項３】
前記メモリの前記領域は、トルク補償制御に使用される第２の領域を含み、
前記メモリ故障検出手段で前記メモリの前記第２の領域の故障を検出した場合には、前記トルク補償制御を制限して、前記操舵補助処理を実行または継続することを特徴とする請求項１または請求項２に記載の電動パワーステアリング装置。
【請求項４】
前記メモリの前記領域は、モータ電流制御に使用される第３の領域を含み、
前記メモリ故障検出手段で前記メモリの前記第３の領域の故障を検出した場合には、前記モータ電流制御を制限して、前記操舵補助処理を実行または継続することを特徴とする請求項１〜３のいずれか１つに記載の電動パワーステアリング装置。
【請求項５】
前記メモリはランダムアクセスメモリであることを特徴とする請求項１〜４のいずれか１つに記載の電動パワーステアリング装置。
【請求項６】
車両のステアリング系に発生する操舵トルクおよび前記車両の速度に基づいて演算した操舵補助指令値と、前記ステアリング系に操舵補助力を付与する操舵補助モータの電流検出値とに基づいて、前記操舵補助モータを制御する電動パワーステアリング装置のメモリ故障検出方法において、
前記操舵補助モータを制御する操舵補助処理を実行する制御手段の作業領域となるメモリに対して、前記操舵補助処理の実行前または実行中に、その故障検出を行う工程と、
を含み、
前記メモリは、故障しても前記操舵補助処理を実行できる第１の領域と、故障がある場合でも前記操舵補助トルクを制限することで、当該操舵補助処理を継続できる第２の領域と、を有し、当該第２の領域は、前記操舵補助処理の機能に応じて複数に分割されており、
前記故障検出を行う工程で前記メモリの前記領域の故障を検出した場合には、前記操舵補助トルクを制限して、前記操舵補助処理を実行または継続し、
前記故障検出を行う工程は、前記操舵補助処理の実行中に前記メモリの故障検出を行う場合には、前記第１の領域の故障検出を行わないこと
を特徴とする電動パワーステアリング装置のメモリ故障検出方法。
【請求項７】
車両のステアリング系に発生する操舵トルクおよび前記車両の速度に基づいて演算した操舵補助指令値と、前記ステアリング系に操舵補助力を付与する操舵補助モータの電流検出値とに基づいて、前記操舵補助モータを制御する電動パワーステアリング装置に搭載されるプログラムにおいて、
前記操舵補助モータを制御する操舵補助処理を実行する制御手段の作業領域となるメモリに対して、前記操舵補助処理の実行前または実行中に、その故障検出を行う工程と、
をコンピュータに実行させ、
前記メモリは、故障しても前記操舵補助処理を実行できる第１の領域と、故障がある場合でも前記操舵補助トルクを制限することで、当該操舵補助処理を継続できる第２の領域と、を有し、当該第２の領域は、前記操舵補助処理の機能に応じて複数に分割されており、
前記故障検出を行う工程で前記メモリの前記領域の故障を検出した場合には、前記操舵補助トルクを制限して、前記操舵補助処理を実行または継続し、
前記故障検出を行う工程は、前記操舵補助処理の実行中に前記メモリの故障検出を行う場合には、前記第１の領域の故障検出を行わないこと
を特徴とするコンピュータが実行可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電動パワーステアリング装置、そのメモリ故障検出方法、およびコンピュータが実行可能なプログラムに関し、詳細には、メモリに故障（異常）が発生した場合でも操舵補助処理を継続することが可能な電動パワーステアリング装置、そのメモリ故障検出方法、およびコンピュータが実行可能なプログラムに関する。 
【背景技術】
【０００２】
乗用車やトラック等の車両の操舵力を軽減するため、操舵補助モータによって操舵を補助する、いわゆる電動パワーステアリング（ＥＰＳ：Electric Power Steering）装置がある。電動パワーステアリング装置では、操舵補助モータの駆動力を、減速機を介してギヤまたはベルト等の伝送機構により、ステアリングシャフトまたはラック軸に補助力を付与するようになっている。かかる電動パワーステアリング装置は、操舵補助トルクを正確に発生させるため、モータ電流のフィードバック制御を行っている。フィードバック制御は、電流指令値とモータ電流検出値との差が小さくなるようにモータ印加電圧を調整するものであり、モータ印加電圧の調整は、一般的にＰＷＭ（パルス幅変調）制御のデューティ比の調整で行っている。
【０００３】
かかる電動パワーステアリング装置を搭載する車両の大型化のため、電動パワーステアリング装置の高出力化が進み、操舵補助モータのモータトルクの増大・大電流化が加速している。従来、電動パワーステアリング装置に何らかの異常が発生した場合には、操舵アシストを停止していた。軽自動車等では、電動パワーステアリング装置が作動していない場合でもある程度の操舵が可能であるが、リッターカー以上では操舵に大きな力が必要になるため、異常発生後も電動パワーステアリング装置による操舵アシストを継続することが望まれる。
【０００４】
このような電動パワーステアリング装置の制御には、データの格納や演算処理のためにＲＡＭ等のメモリを使用しており、操舵性能と信頼性を向上させるためにメモリ容量も大きくなってきている。そして、電動パワーステアリング装置の安全性を高めるために、初期時においても、また、操舵アシスト中においてもシステムの信頼性を高めたり、安全性を図ることを目的としてメモリ診断機能を具備するようになっている。
【０００５】
例えば、特許文献１〜３では、メモリ診断機能を備えた電動パワーステアリング装置において、メモリの異常を検出した場合に、安全のために操舵アシストを停止する技術が開示されている。しかしながら、特許文献１〜３では、メモリの異常を検出した場合には、
異常の軽重に拘わらず操舵アシストを停止する構成であるので、メモリに異常がある場合に操舵アシストを継続することができないという問題がある。
【０００６】
【特許文献１】特開２００６−３３１０８６号公報
【特許文献２】特開２００４−１３３６３５号公報
【特許文献３】特開２００３−３２３３５３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、上記に鑑みてなされたものであり、メモリに異常がある場合でも可及的に操舵補助処理を実行または継続することが可能な電動パワーステアリング装置、そのメモリ故障検出方法、およびコンピュータが実行可能なプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、車両のステアリング系に発生する操舵トルクおよび前記車両の速度に基づいて演算した操舵補助指令値と、前記ステアリング系に操舵補助力を付与する操舵補助モータの電流検出値とに基づいて、前記操舵補助モータを制御する電動パワーステアリング装置において、前記操舵補助モータを制御する操舵補助処理を実行する制御手段と、前記制御手段の作業領域となるメモリと、前記操舵補助処理の実行前または実行中に前記メモリの故障検出を行うメモリ故障検出手段と、を備え、前記メモリは、故障しても前記操舵補助処理を実行できる第１の領域と、故障がある場合でも前記操舵補助トルクを制限することで、当該操舵補助処理を実行できる第２の領域と、を有し、当該第２の領域は、前記操舵補助処理の機能に応じて複数に分割されており、前記メモリ故障検出手段で前記メモリの前記領域の故障を検出した場合には、前記操舵補助トルクを制限して、前記操舵補助処理を実行または継続し、前記メモリ故障検出手段は、前記操舵補助処理の実行中に前記メモリの故障検出を行う場合には、前記第１の領域の故障検出を行わないことを特徴とする。
【０００９】
また、本発明の好ましい態様によれば、前記メモリの前記領域は、トルク制御で使用される第１の領域を含み、前記メモリ故障検出手段で前記メモリの前記第１の領域の故障を検出した場合には、前記トルク制御を制限して、前記操舵補助処理を実行または継続することが望ましい。
【００１０】
また、本発明の好ましい態様によれば、前記メモリの前記領域は、トルク補償制御に使用される第２の領域を含み、前記メモリ故障検出手段で前記メモリの前記第２の領域の故障を検出した場合には、前記トルク補償制御を制限して、前記操舵補助処理を実行または継続することが望ましい。
【００１１】
また、本発明の好ましい態様によれば、前記メモリの前記領域は、モータ電流制御に使用される第３の領域を含み、前記メモリ故障検出手段で前記メモリの前記第３の領域の故障を検出した場合には、前記モータ電流制御を制限して、前記操舵補助処理を実行または継続することが望ましい。
【００１２】
また、本発明の好ましい態様によれば、前記メモリはランダムアクセスメモリであることが望ましい。
【００１３】
上述した課題を解決し、目的を達成するために、本発明は、車両のステアリング系に発生する操舵トルクおよび前記車両の速度に基づいて演算した操舵補助指令値と、前記ステアリング系に操舵補助力を付与する操舵補助モータの電流検出値とに基づいて、前記操舵補助モータを制御する電動パワーステアリング装置のメモリ故障検出方法において、前記操舵補助モータを制御する操舵補助処理を実行する制御手段の作業領域となるメモリに対して、前記操舵補助処理の実行前または実行中に、その故障検出を行う工程と、を含み、前記メモリは、故障しても前記操舵補助処理を実行できる第１の領域と、故障がある場合でも前記操舵補助トルクを制限することで、当該操舵補助処理を継続できる第２の領域と、を有し、当該第２の領域は、前記操舵補助処理の機能に応じて複数に分割されており、前記故障検出を行う工程で前記メモリの前記領域の故障を検出した場合には、前記操舵補助トルクを制限して、前記操舵補助処理を実行または継続し、前記故障検出を行う工程は、前記操舵補助処理の実行中に前記メモリの故障検出を行う場合には、前記第１の領域の故障検出を行わないことを特徴とする。
【００１４】
上述した課題を解決し、目的を達成するために、本発明は、車両のステアリング系に発生する操舵トルクおよび前記車両の速度に基づいて演算した操舵補助指令値と、前記ステアリング系に操舵補助力を付与する操舵補助モータの電流検出値とに基づいて、前記操舵補助モータを制御する電動パワーステアリング装置に搭載されるプログラムにおいて、前記操舵補助モータを制御する操舵補助処理を実行する制御手段の作業領域となるメモリに対して、前記操舵補助処理の実行前または実行中に、その故障検出を行う工程と、をコンピュータに実行させ、前記メモリは、故障しても前記操舵補助処理を実行できる第１の領域と、故障がある場合でも前記操舵補助トルクを制限することで、当該操舵補助処理を継続できる第２の領域と、を有し、当該第２の領域は、前記操舵補助処理の機能に応じて複数に分割されており、前記故障検出を行う工程で前記メモリの前記領域の故障を検出した場合には、前記操舵補助トルクを制限して、前記操舵補助処理を実行または継続し、前記故障検出を行う工程は、前記操舵補助処理の実行中に前記メモリの故障検出を行う場合には、前記第１の領域の故障検出を行わないことを特徴とする。
【発明の効果】
【００１５】
本発明によれば、車両のステアリング系に発生する操舵トルクおよび前記車両の速度に基づいて演算した操舵補助指令値と、前記ステアリング系に操舵補助力を付与する操舵補助モータの電流検出値とに基づいて、前記操舵補助モータを制御する電動パワーステアリング装置において、前記操舵補助モータを制御する操舵補助処理を実行する制御手段と、前記制御手段の作業領域となるメモリと、前記操舵補助処理の実行前または実行中に前記メモリの故障検出を行うメモリ故障検出手段と、を備え、前記メモリは、故障がある場合でも操舵補助トルクを制限することで、当該操舵補助処理を継続できる領域を有し、当該領域は、前記操舵補助処理の機能に応じて複数に分割されており、前記メモリ故障検出手段で前記メモリの前記領域の故障を検出した場合には、前記操舵補助トルクを制限して、前記操舵補助処理を実行または継続することとしたので、メモリに異常がある場合でも可及的に操舵補助処理を実行または継続することが可能な電動パワーステアリング装置を提供することが可能となるという効果を奏する。
【発明を実施するための最良の形態】
【００１６】
以下に、この発明につき図面を参照しつつ詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、下記実施例における構成要素には、当業者が容易に想定できるものまたは実質的に同一のものが含まれる。 
【実施例１】
【００１７】
図１は、電動パワーステアリング装置の一般的な構成を示す図である。図１において、操向ハンドル１のコラム軸２は減速ギヤ３、ユニバーサルジョイント４ａおよび４ｂ、ピニオンラック機構５を経て操向車輪のタイロッド６に連結されている。コラム軸２には、操向ハンドル１の操舵トルクＴを検出するトルクセンサ１０が設けられており、操向ハンドル１の操舵力を補助する操舵補助モータ２０が、減速ギヤ３を介してコラム軸２に連結されている。ここで、操舵補助モータ２０は、例えば、ブラシレスモータやブラシモータである。電動パワーステアリング装置を制御するコントロールユニット３０には、バッテリ１４から内蔵の電源リレー１３を経て電力が供給され、イグニションキー１１からイグニション信号が供給される。また、コントロールユニット３０は、トルクセンサ１０で検出された操舵トルクＴと車速センサ１２で検出された車速Ｖとに基づいて、操舵補助モータ２０の電流指令値を演算し、操舵補助モータ２０の電流検出値と電流指令値とに基づいて、操舵補助モータ２０の電流検出値が電流指令値に追従するように操舵補助モータ２０を駆動制御する。 
【００１８】
図２は、図１のコントロールユニット３０のハードウェア構成を示す図である。コントロールユニット３０は、図２に示すように、ＭＣＵ（マイクロコントロールユニット）１００と、ＦＥＴプリドライバ回路１１０と、モータ駆動回路（インバータ）１２０と、電流検出回路１３０と、位置検出回路１４０等を備えている。
【００１９】
ＭＣＵ１００は、ＣＰＵ（制御手段）１０１、ＲＯＭ１０２、ＲＡＭ１０３、ＥＥＰＲＯＭ（不揮発性メモリ）１０４、Ａ／Ｄ変換器１０５、インターフェース１０６、バス１０７等を備えている。ＣＰＵ１０１は、ＲＯＭ１０２に格納されたプログラムを実行して電動パワーステアリング装置を制御する。
【００２０】
ＲＯＭ１０２は、ＣＰＵ１０１が実行する各種プログラムを格納する。具体的には、ＲＯＭ１０２には、操舵補助（アシスト）を行う操舵補助モータ２０を制御するアシスト処理（操舵補助処理）、およびＲＡＭ１０３の故障検出を行うメモリ診断処理（メモリ初期診断処理およびメモリ常時診断処理）を実行するための制御プログラム等が格納されている。
【００２１】
ＲＡＭ１０３は、ＣＰＵ１０１がプログラムを実行する場合にその作業領域として使用され、処理過程で必要とするデータや処理結果等が記憶されるものである。
【００２２】
ＥＥＰＲＯＭ１０４は、電源遮断後においても記憶内容を保持可能な不揮発性メモリであり、ＣＰＵ１０１が、電動パワーステアリング装置の制御で使用する制御データ等が格納される。なお、ここでは、不揮発性メモリとして、ＥＥＰＲＯＭを使用することとしたが、本発明はこれに限られるものではなく、ＦＬＡＳＨ−ＲＯＭ等の他の不揮発性メモリを使用することにしてもよい。
【００２３】
Ａ／Ｄ変換器１０５は、トルクセンサ１０からの操舵トルクＴ、電流検出回路１３０からの操舵補助モータ２０の電流検出値Ｉｍ、および位置検出回路１４０からのモータ回転角信号θ等を入力し、デジタル信号に変換する。インターフェース１０６は、車速センサ１２からの車速Ｖ（パルス）をＣＡＮ通信で受け取るためのものである。
【００２４】
上記構成において、ＣＰＵ１０１が、ＲＯＭ１０２に格納されたプログラムを実行することにより、メモリ故障検出手段、アシスト可否判定手段、およびフェールセーフ処理手段として機能する。
【００２５】
ＦＥＴプリドライバ回路１１０は、主ＭＣＵ１００から入力されるＵＶＷ各相のＰＷＭ制御信号を、各相正負の通電信号（Ｕp、Ｕn、Ｖp、Ｖn、Ｗp、Ｗn）に変換して、モータ駆動回路１２０に出力する。 
【００２６】
モータ駆動回路１２０は、一対のＦＥＴスイッチング素子からなるブリッジ回路をＵ相用、Ｖ相用、Ｗ相用として３相分備えており、各ＦＥＴスイッチング素子には還流ダイオードが並列接続されている。このブリッジ回路には、バッテリ１４から電源リレー１３を介して直流電圧が印加される。各ＦＥＴスイッチング素子の制御端子（ゲート端子）には、ＦＥＴプリドライバ回路１１０から通電信号が入力される。モータ駆動回路１２０に印加される直流電圧は、モータ駆動回路１２０内のＦＥＴスイッチング素子のスイッチング動作によって３相の交流電圧に変換され、それにより操舵補助モータ２０が駆動される。このブリッジ回路には、シャント抵抗Ｒ１、Ｒ２が接続されている。このシャント抵抗Ｒ１、Ｒ２に電流検出回路１３０が接続され、これによって、操舵補助モータ２０の電流検出値Ｉｍを検出するようになっている。 
【００２７】
位置検出回路１４０は、位置センサ２１からの出力信号をモータ回転角信号θとして、Ａ／Ｄ変換器１０５に出力する。
【００２８】
上記のように構成される電動パワーステアリング装置では、アシスト処理の実行前または実行中に、ＲＡＭ１０３の故障を検出した場合でも、可及的にアシスト処理を実行するために、ＲＡＭ１０３の故障を検出した場合に、故障した領域に基づいて、アシスト処理を実行可能な故障か否かを判断し、アシスト処理を実行可能と判定した場合には、アシスト処理を開始または継続し、アシスト処理を実行不可能と判定した場合には、アシスト処理を停止するように構成されている。
【００２９】
図３は、ＲＡＭ１０３のメモリ構成例を示す図である。同図に示すように、ＲＡＭ１０３は、故障検出後の処理に応じて３つの領域に分割されており、故障しても正常時と同様にアシスト処理を継続（実行）できる領域Ａと、故障した場合にアシストトルク（操舵補助トルク）を制限（以下、「アシスト制限」とも称する）することでアシスト処理を継続（実行）できる領域Ｂと、故障した場合に、アシスト処理を継続（実行）できない領域Ｃとを備えている。
【００３０】
ＲＡＭ１０３に記憶されるべきデータも、当該データが異常となった際にアシスト処理に及ぶ影響度に応じて、３つに分類されている。領域Ａには、異常となってもアシスト処理に影響を殆ど与えない影響度の低いデータが記憶される。領域Ｂには、異常となってもアシストトルクを制限することでアシスト処理を継続できる影響度が中程度のデータが記憶される。領域Ｃには、異常となった場合にはアシスト処理を継続できない影響度が高いデータが記憶される。ここで、影響度が高いデータとは、アシスト処理を実行する場合に基本となるデータであり、例えば、アシストマップの操舵補助指令値を算出するためのデータである。
【００３１】
さらに、領域Ｂは、アシスト処理を行う場合にその機能に応じて３つに分割されており、トルク制御を実行するために使用し、例えば、電流指令値を算出するために使用する領域Ｂ−１（第１の領域）と、トルク補償制御を実行するために使用し、例えば、その補償値を算出するために使用する領域Ｂ−２（第２の領域）と、モータ電流制御を実行するために使用する領域Ｂ−３（第３の領域）とを備えている。
【００３２】
図４は、ＭＣＵ１００の機能構成図（ＣＰＵ１０１が制御プログラムを実行することにより実現する機能構成）を示す図である。ＭＣＵ１００は、図４に示すように、メモリ故障検出・アシスト可否判定部２１１と、フェールセーフ処理部２１２と、電流指令値制限部２１３、補償値制限部２１４と、デューティ制限部２１５とを備えている。
【００３３】
メモリ故障検出・アシスト可否判定部２１１は、ＲＡＭ１０３の故障診断を行い、ＲＡＭ１０３の故障を検出した場合に、その故障領域に基づいて、アシスト処理が実行可能、アシスト制限することで実行可能、および実行不可能のいずれであるかを判定し、判定結果に基づいて、電流指令値制限部２１３、補償値制限部２１４、およびデューティ制限部２１５の制限ゲインを設定する。
【００３４】
具体的には、メモリ故障検出・アシスト可否判定部２１１は、故障アドレスが領域Ａ（図３参照）である場合には、電流指令値制限部２１３、補償値制限部２１４、およびデューティ制限部２１５の現在の制限ゲインを維持する。
【００３５】
故障アドレスが領域Ｂである場合には、アシスト制限と判定して、さらに、故障アドレスが領域Ｂ−１、領域Ｂ−２、および領域Ｂ−３のいずれであるかを判定する。領域Ｂ−１である場合には、電流指令値制限部２１３の電流指令値制限ゲインを「所定値（ただし、０≦所定値＜１）」に設定する。領域Ｂ−２である場合には、補償値制限部２１４の補償値制限ゲインを「所定値（ただし、０≦所定値＜１）」に設定する。領域Ｂ−３である場合には、デューティ制限部２１５のデューティ制限ゲインを「所定値（ただし、０≦所定値＜１）」に設定する。
【００３６】
故障アドレスが領域Ｃである場合には、アシスト処理を実行不可能と判断して、電流指令値制限部２１３の電流指令値制限ゲインを「０」、補償値制限部２１４の補償値制限ゲインを「０」、デューティ制限部２１５のデューティ制限ゲインを「０」に設定すると共に、アシスト不能通知をフェールセーフ処理部２１２に出力する。
【００３７】
電流指令値制限部２１３は、トルク制御系モジュール５００の電流指令値演算部５０４で決定された電流指令値Ｉｒｅｆ１に、メモリ故障検出・アシスト可否判定部２１１により設定される電流指令値制限ゲインを乗算して、トルク制御を制限する。
【００３８】
補償値制限部２１４は、補償制御系モジュール５１０で算出されるトルク補償を行うための補償値に、メモリ故障検出・アシスト可否判定部２１１により設定される補償値制限ゲインを乗算して、トルク補償制御を制限する。
【００３９】
デューティ制限部２１５は、モータ電流制御系モジュール５２０のＰＷＭ制御部５５０で算出されるＰＷＭ制御信号に、メモリ故障検出・アシスト可否判定部２１１により設定されるデューティ制限ゲインを乗算して、モータ電流制御を制限する。
【００４０】
フェールセーフ処理部２１２は、メモリ故障検出・アシスト可否判定部２１１からアシスト不能通知を受け取った場合に、フェールセーフ処理（アシスト処理を停止、操舵補助モータ２０への通電を遮断、またはＭＣＵ１００のリセット等）を実行する。
【００４１】
また、ＭＣＵ１００は、図４に示すように、操舵トルクＴおよび車速Ｖ等に基づいて電流指令値Ｉｒｅｆ１を算出するトルク制御系モジュール５００と、各種のトルク補償を行う補償制御系モジュール５１０と、モータ電流のＦＢ（フィードバック）制御を行うモータ電流制御系モジュール５２０等を備えている。つぎに、動作の概略を説明する。
【００４２】
まず、トルクセンサ１０で検出された操舵トルクＴと、車速センサ１２で検出された車速Ｖとがアシストマップ５０１に入力され操舵補助指令値が算出される。さらに、補償制御系モジュール５１０で、例えば、収斂性、慣性、およびＳＡＴなどの補償値が算出される。かかる補償値は補償値制限部２１４で補償値制限ゲインが乗算された後、加算部５０２で操舵補助指令値に加算してトルク指令値Ｔｒｅｆが決定される。
【００４３】
トルク指令値Ｔｒｅｆは、位相補償部５０３で位相補償された後、電流指令値演算部５０４に入力される。そして、トルク指令値Ｔｒｅｆに基づいて電流指令値演算部５０４で電流指令値Ｉｒｅｆ１が決定される。なお、ブラシレスモータでは、トルク指令値Ｔｒｅｆの他に回転子のロータ角度も電流指令値演算部５０４に入力して電流指令値Ｉｒｅｆ１が決定される。電流指令値Ｉｒｅｆ１は、電流指令値制限部２１３で電流指令値制限ゲインが乗算されて、電流指令値Ｉｒｅｆ２となる。
【００４４】
一方、操舵補助モータ２０のモータ電流は、電流検出値Ｉｍとして、電流検出回路１３０で検出され、電流指令値Ｉｒｅｆ２とともに減算部５２１へ入力される。減算部５２１では、それらの偏差ΔＩ＝Ｉｒｅｆ２−Ｉｍが算出され、ＰＩ（比例積分）制御部５２２に入力される。ＰＩ（比例積分）制御部５２２では、偏差ΔＩの比例積分出力として、電圧制御値Ｖｒｅｆが出力される。また、電流指令値Ｉｒｅｆ２は、補助値演算部５３１に入力される。補助値演算部５３１で演算される補助値、例えば、Ｄｅａｄ  Ｔｉｍｅ、ＥＭＦ（逆起電力）、および弱め界磁制御の補助値が、加算部５３５で電圧制御値Ｖｒｅｆに加算される。加算部５３５の出力は、ＰＷＭ制御部５５０に入力されて、ＰＷＭ処理され、ＵＶＷ各相のＰＷＭ制御信号が出力される。ＰＷＭ制御信号は、デューティ制限部２１５でデューティ制御ゲインが乗算された後、ＦＥＴプリドライバ回路１１０に出力され、ＦＥＴプリドライバ回路１１０およびモータ駆動回路１２０を介して、操舵補助モータ２０が駆動される。
【００４５】
図５は、ＭＣＵ１００の全体動作の概略を説明するためのフローチャートである。図５を参照して、ＭＣＵ１００の全体動作の概略を説明する。同図において、まず、ＩＧがオンされると（ステップＳ１の「Ｙｅｓ」）、ＣＰＵ１０１を初期化した後（ステップＳ２）、メモリ故障検出・アシスト可否判定部２１１はメモリ初期診断処理を実行する（ステップＳ３）。メモリ初期診断処理では、後述するＲＡＭ１０３の故障診断を行う（図６参照）。なお、メモリ初期診断処理でＲＡＭ１０３の故障を検出した場合には、その故障領域に基づいて、アシスト処理が実行可能か、実行不可能か、アシスト制限して実行可能かを判定する。アシスト処理を実行不可能と判定した場合には、アシスト処理を開始せず、また、アシスト処理を実行可能と判断した場合には、通常のアシスト処理を開始し、また、アシスト制限して実行可能と判定した場合には、アシスト制限してアシスト処理を開始する。
【００４６】
つづいて、ＲＡＭ１０３を初期化した後（ステップＳ４）、アシスト処理を開始する（ステップＳ５）、アシスト処理の実行中に、所定周期でメモリ常時診断処理を実行する（ステップＳ６）。メモリ常時診断処理は、メモリ初期診断処理と同様なＲＡＭ１０３の故障診断を行い（図６参照）、ＲＡＭ１０３の故障を検出した場合に、アシスト処理を実行不可能な故障と判定した場合には、アシスト処理を停止させる。
【００４７】
この後、ＩＧがＯＦＦされていない場合には（ステップＳ７の「Ｎｏ」）、ステップＳ５に戻り、ＩＧがＯＦＦされた場合には（ステップＳ７の「Ｙｅｓ」）、操舵補助モータ２０を停止させるための所定の停止処理を行って（ステップＳ８）、当該フローを終了する。
【００４８】
図６は、図５のメモリ初期診断処理Ｓ３およびメモリ常時診断処理Ｓ６におけるＲＡＭ診断処理の具体的な内容を説明するためのフローチャートである。同図において、メモリ故障検出・アシスト可否判定部２１１は、まず、初期診断であるか否かを判断する（ステップＳ２１）。初期診断である場合には（ステップＳ２１の「Ｙｅｓ」）、ＲＡＭ１０３の領域Ａの先頭アドレスを診断アドレスに設定する一方（ステップＳ２２）、初期診断でない場合（ステップＳ２１の「Ｎｏ」）、すなわち、常時診断である場合には、ＲＡＭ１０３の領域Ｂの先頭アドレスを診断アドレスに設定する（ステップＳ２７）。
【００４９】
メモリ故障検出・アシスト可否判定部２１１は、診断アドレスを設定した後、ＲＡＭ１０３の診断アドレスのビットの診断を行って（ステップＳ２３）、故障があるか否かを判定する（ステップＳ２４）。診断アドレスに故障があるか否かの判断は、例えば、基準データを診断アドレスにライト／リードし、その一致を判断して、故障か否かを判定することができる。
【００５０】
メモリ故障検出・アシスト可否判定部２１１は、診断アドレスに故障がない場合には（ステップＳ２４の「Ｙｅｓ」）、ステップＳ２５に移行する一方、診断アドレスに故障がある場合には（ステップＳ２４の「Ｎｏ」）、診断アドレスをＲＡＭ１０３の故障アドレスに設定して、アシスト可否判定処理（図７参照）を実行する（ステップＳ２９）。このアシスト可否判定処理では、後述するように、ＲＡＭ１０３の故障した領域に基づいて、アシスト処理の継続が可能か、アシスト制限してアシスト処理を継続可能か、または、アシスト処理の継続が不可能でアシスト停止かを判定する。メモリ故障検出・アシスト可否判定部２１１は、アシスト可否判定処理の判定結果がアシスト継続またはアシスト制限であるか否かを判断する（ステップＳ３０）。アシスト継続またはアシスト制限でない場合には（ステップＳ３０の「Ｎｏ」）、アシスト不能通知をフェールセーフ処理部２１２に出力する。フェールセーフ処理部２１２は、アシスト不能通知を受け取ると、フェールセーフ処理を実行した後（ステップＳ３１）、当該フローを終了する。他方、アシスト可否判定処理の判定結果がアシスト継続またはアシスト制限である場合には（ステップＳ３０の「Ｙｅｓ」）、ステップＳ２５に移行する。
【００５１】
ステップＳ２５では、メモリ故障検出・アシスト可否判定部２１１は、ＲＡＭ１０３の次のアドレスを診断アドレスに設定し、診断アドレス＞ＲＡＭ１０３の最終アドレスであるか否かを判断する（ステップＳ２６）。診断アドレス＞ＲＡＭ１０３の最終アドレスでない場合には（ステップＳ２６の「Ｎｏ」）、ステップＳ２３に戻り、当該診断アドレスの診断を行って故障ビットがあるか否かを判断し（ステップＳ２４）、診断アドレス＞ＲＡＭ１０３の最終アドレスとなるまで（ステップＳ２６の「Ｙｅｓ」）、同じ処理（ステップＳ２３〜Ｓ２５）を繰り返し実行する。
【００５２】
図７は、上記図６のステップＳ２９のアシスト可否判定処理の詳細な内容を説明するためのフローチャートである。同図において、まず、メモリ故障検出・アシスト可否判定部２１１は、故障アドレスがＲＡＭ１０３の領域Ａ（図３参照）であるか否かを判断する（ステップＳ４１）。故障アドレスが領域Ａである場合には（ステップＳ４１の「Ｙｅｓ」）、判定結果＝アシスト継続として（ステップＳ４３）、電流指令値制限部２１３、補償値制限部２１４、およびデューティ制限部２１５の現在の電流指令値制限ゲイン、補償値制限ゲイン、およびデューティ制限ゲインをそれぞれ維持する。
【００５３】
ステップＳ４１において、故障アドレスがＲＡＭ１０３の領域Ａでない場合には（ステップＳ４１の「Ｎｏ」）、故障アドレスがＲＡＭ１０３の領域Ｂであるか否かを判断する（ステップＳ４２）。故障アドレスがＲＡＭ１０３の領域Ｂである場合には（ステップＳ４２の「Ｙｅｓ」）、判定結果＝アシスト制限として（ステップＳ４５）、制限ゲイン設定処理（図８参照）を行う。これにより、アシスト制限されたアシスト処理が行われる。
【００５４】
他方、ステップＳ４２において、故障アドレスがＲＡＭ１０３の領域Ｂでない場合（ステップＳ４２の「Ｎｏ」）、すなわち、故障アドレスがＲＡＭ１０３の領域Ｃである場合には、判定結果＝アシスト停止として（ステップＳ４７）、電流指令値制限部２１３の電流指令値制限ゲインを「０」、補償値制限部２１４の補償値制限ゲインを「０」、デューティ制限部２１５のデューティ制限ゲインを「０」に設定すると共に、アシスト不能通知をフェールセーフ処理部２１２に出力する（ステップＳ４８）。これにより、操舵補助モータ２０に駆動信号が出力されなくなるため、アシスト処理が停止する。
【００５５】
図８は、上記図７のステップＳ４６の制限ゲイン設定処理の詳細な内容を説明するためのフローチャートである。同図において、まず、メモリ故障検出・アシスト可否判定部２１１は、故障アドレスがＲＡＭ１０３の領域Ｂ−１（図３参照）であるか否かを判断する（ステップＳ５１）。故障アドレスが領域Ｂ−１である場合には（ステップＳ５１の「Ｙｅｓ」）、電流指令値制限部２１３の電流指令値制限ゲインを「所定値（ただし、０≦所定値＜１）」に設定する（ステップＳ５３）。
【００５６】
ステップＳ５１において、故障アドレスが領域Ｂ−１でない場合には（ステップＳ５１の「Ｎｏ」）、故障アドレスが領域Ｂ−２であるか否かを判断する（ステップＳ５２）。故障アドレスが領域Ｂ−２である場合には（ステップＳ５２の「Ｙｅｓ」）、補償値制限部２１４の補償値制限ゲインを「所定値（０≦所定値＜１）」に設定する（ステップＳ５４）。
【００５７】
ステップＳ５２において、故障アドレスが領域Ｂ−２でない場合（ステップＳ５２の「Ｎｏ」）、すなわち、故障アドレスが領域Ｂ−３である場合には、デューティ制限部２１５のデューティ制限ゲインを「所定値（０≦所定値＜１）」に設定する（ステップＳ５５）。
【００５８】
以上説明したように、上記実施例によれば、操舵補助モータ２０を制御するアシスト処理を実行するＣＰＵ１０１と、ＣＰＵ１０１の作業領域となるＲＡＭ１０３と、アシスト処理の実行前または実行中にＲＡＭ１０３の故障検出を行うメモリ故障検出・アシスト可否判定部２１１とを備え、ＲＡＭ１０３は、故障がある場合でもアシストトルクを制限することで、アシスト処理を継続できる領域Ｂを有し、領域Ｂは、アシスト処理の機能に応じて複数に分割されており、メモリ故障検出・アシスト可否判定部２１１でＲＡＭ１０３の領域Ｂの故障を検出した場合には、アシストトルクを制限して、アシスト処理を実行または継続することとしたので、ＲＡＭ１０３の領域Ｂに故障がある場合でも、アシストトルクを制限することで、アシスト処理を実施または継続することができ、ＲＡＭに故障がある場合でも可及的にアシスト処理を実行または継続することが可能となる。
【００５９】
また、ＲＡＭ１０３の領域Ｂは、トルク制御で使用されるＢ−１領域を含み、メモリ故障検出・アシスト可否判定部２１１でＢ−１領域の故障を検出した場合には、トルク制御を制限して（例えば、電流指令値のゲイン補正）、アシスト処理を実行または継続することとしたので、ＲＡＭ１０３のＢ−１領域が故障した場合でも、トルク制御を制限することで、アシスト処理を実行または継続することが可能となる。
【００６０】
また、ＲＡＭ１０３の領域Ｂは、トルク補償制御に使用されるＢ−２領域を含み、メモリ故障検出・アシスト可否判定部２１１でＢ−２領域の故障を検出した場合には、トルク補償制御を制限して（例えば、補償値のゲイン補正）、アシスト処理を実行または継続することとしたので、ＲＡＭ１０３のＢ−２領域が故障した場合でも、トルク補償制御を制限することで、アシスト処理を実行または継続することが可能となる。
【００６１】
また、ＲＡＭ１０３の領域Ｂは、モータ電流制御に使用されるＢ−３領域を含み、メモリ故障検出・アシスト可否判定部２１１でＢ−３領域の故障を検出した場合には、モータ電流制御を制限して（例えば、ＰＷＭ制御信号のデューティのゲイン補正）、アシスト処理を実行または継続することとしたので、ＲＡＭ１０３のＢ−３領域が故障した場合でも、モータ電流制御を制限することで、アシスト処理を実行または継続することが可能となる。
【００６２】
このように、故障した領域を使用している機能の出力値を制限し、故障した領域を使用していない機能の出力値は制限しない構成となっているので、操舵への影響を最小限に抑えてアシスト処理を実行または継続することが可能となる。
【００６３】
また、メモリ故障検出・アシスト可否判定部２１１は、アシスト処理の実行中にＲＡＭ１０３の故障検出を行う場合には（メモリ常時診断処理）、領域Ａの故障検出を行わないこととしたので、メモリ診断に要する時間を短縮してＣＰＵの負荷を軽減することが可能となる。
【００６４】
なお、上記実施例では、ＲＡＭ１０３を領域Ａ〜領域Ｃの３つの領域に分割することとしたが、分割数はこれに限られるものではなく、２または４以上の領域に分割することにしてもよい。
【００６５】
また、上記実施例では、領域Ｂを、アシスト処理で使用する機能（トルク制御、トルク補償制御、およびモータ電流制御）に応じて、Ｂ−１〜Ｂ−３領域の３つの領域に分割することとしたが、分割する機能の数はこれに限られるものではなく、例えば、モータ電流の補助値制御を行う機能を分割することにしてもよい。また、トルク制御、トルク補償制御、およびモータ電流制御を制限する方法は、上記実施例に限られるものではない。
【００６６】
また、上記実施例では、ＲＡＭ１０３の故障検出を一例として説明したが、本発明はこれに限られるものではなく、ＣＰＵの作業領域として使用されるレジスタについても同様な方法でアシスト可能な故障か否かを判定することができる。
【００６７】
また、上記実施例では、メモリ故障検出・アシスト可否判定およびフェールセーフ処理をＣＰＵ１０１で実行することとしたが、別個のデバイスで実施することにしてもよい。
【産業上の利用可能性】
【００６８】
本発明に係る電動パワーステアリング装置、そのメモリ故障検出方法、およびコンピュータが実行可能なプログラムは、ＣＰＵが作業用領域として使用するメモリが故障した場合でも、可及的に操舵補助処理を実行または継続する場合に有用である。
【図面の簡単な説明】
【００６９】
【図１】電動パワーステアリング装置の一般的な構成を示す図である。
【図２】図１のコントロールユニットのハードウェア構成を示す図である。
【図３】ＲＡＭのメモリ構成例を示す図である。
【図４】ＭＣＵの機能構成図（ＣＰＵが制御プログラムを実行することにより実現する機能構成）を示す図である。
【図５】ＭＣＵの動作の概略を説明するためのフローチャートである。
【図６】メモリ初期診断処理およびメモリ常時診断処理におけるＲＡＭ診断処理を説明するためのフローチャートである。
【図７】アシスト可否判定処理の詳細を説明するためのフローチャートである。
【図８】制限ゲイン設定処理の詳細な内容を説明するためのフローチャートである。
【符号の説明】
【００７０】
１  操向ハンドル
２  コラム軸
３  減速ギヤ
４ａ、４ｂ  ユニバーサルジョイント
５  ピニオンラック機構
６  タイロッド
１０  トルクセンサ
１２  車速センサ
１４  バッテリ
２０  操舵補助モータ
３０  コントロールユニット
１００  ＭＣＵ（マイクロコントロールユニット）
１０１  ＣＰＵ（制御手段）
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  ＥＥＰＲＯＭ
１０５  Ａ／Ｄ変換器
１０６  インターフェース
１０７  バス
１１０  ＦＥＴプリドライバ回路
１２０  モータ駆動回路（インバータ）
１３０  電流検出回路
１４０  位置検出回路
２１１  メモリ故障検出・アシスト可否判定部
２１２  フェールセーフ処理部
２１３  電流指令値制限部
２１４  補償値制限部
２１５  デューティ制限部
５００  トルク制御系モジュール
５１０  補償制御系モジュール
５２０  モータ電流制御系モジュール
【図１】
0005169412.tif 000002
【図２】
0005169412.tif 000003
【図３】
0005169412.tif 000004
【図４】
0005169412.tif 000005
【図５】
0005169412.tif 000006
【図６】
0005169412.tif 000007
【図７】
0005169412.tif 000008
【図８】
0005169412.tif 000009