(57)【要約】【課題】ＭＣＵに備えられたデータ転送部の異常を精度良く効率的に診断すると共に、異常と診断した場合は、危険な挙動とならないようにアシストを制限することにより、より信頼性の高い電動パワーステアリング装置を提供する【解決手段】ＲＡＭの第１の記憶領域に記憶されたデータを異常検出データとし、データ転送部によって異常検出データをＲＡＭの第２の記憶領域に転送させると共に、第１の記憶領域に記憶された異常検出データと第２の記憶領域に転送されたデータとを比較することによって、データ転送部の診断処理を実行するデータ転送異常診断部を備える。【選択図】図１
2010155591.tif 000002
【特許請求の範囲】
【請求項１】
ＲＯＭに格納された演算プログラム、パラメータ等に基づいて制御処理するＣＰＵと、複数の記憶領域を備えたＲＡＭと、データ転送の処理を実行するデータ転送部とを備え、車両の操舵系にモータによる操舵補助力を付与してアシスト制御する電動パワーステアリング装置において、
前記ＲＡＭの第１の記憶領域に記憶されたデータを異常検出データとし、前記データ転送部によって前記異常検出データを前記ＲＡＭの第２の記憶領域に転送させると共に、前記第１の記憶領域に記憶された前記異常検出データと前記第２の記憶領域に転送されたデータとを比較することによって、前記データ転送部の診断処理を実行するデータ転送異常診断部を備えることを特徴とする電動パワーステアリング装置。
【請求項２】
前記データ転送異常診断部は、前記第１の記憶領域に記憶された前記異常検出データの各値をインクリメントし、異なる異常検出データを用いて前記診断処理を複数回実行する請求項１に記載の電動パワーステアリング装置。
【請求項３】
ＲＯＭに格納された演算プログラム、パラメータ等に基づいて制御処理するＣＰＵと、記憶領域を備えたＲＡＭと、データ転送の処理を実行するデータ転送部とを備え、車両の操舵系にモータによる操舵補助力を付与してアシスト制御する電動パワーステアリング装置において、
前記ＲＯＭの所定の記憶領域に格納されたデータを異常検出データとし、前記データ転送部によって前記異常検出データを前記ＲＡＭの所定の記憶領域に記憶させると共に、前記ＲＯＭの所定の記憶領域に格納された前記異常検出データと前記ＲＡＭの所定の記憶領域に転送させた前記異常検出データとを比較することによって、前記データ転送部の診断処理を実行するデータ転送異常診断部を備えることを特徴とする電動パワーステアリング装置。
【請求項４】
前記ＲＯＭが所定の記憶領域にそれぞれ異なる複数の異常検出データを予め格納し、前記データ転送異常診断部は、前記複数の異常検出データを用いて、前記診断処理をそれぞれ複数回実行する請求項３に記載の電動パワーステアリング装置。
【請求項５】
前記データ転送異常診断部による前記診断処理の結果に応じてフェールセーフ制御に切替えるセーフアシスト制御部をさらに備える請求項１乃至４のいずれかに記載の電動パワーステアリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両の操舵系にモータによる操舵補助力を付与するようにした電動パワーステアリング装置に関し、特に電動パワーステアリング装置に備えられた制御用コンピュータ（ＣＰＵ、ＭＰＵ（Micro  Processor  Unit）、ＭＣＵ（Micro  Controller  Unit）など）において、データ転送の際、ＣＰＵの制御処理を軽減させると共に、データ転送の効率を向上させるＤＭＡＣ（Direct  Memory  Access  Controller）やＤＴＣコントローラ（Direct  Transfer  Controller）などを備えた電動パワーステアリング装置に関する。
【背景技術】
【０００２】
車両のステアリング装置をモータの回転力で補助負荷付勢する電動パワーステアリング装置は、モータの駆動力を減速機を介してギア又はベルト等の伝達機構により、ステアリングシャフト或いはラック軸に補助負荷付勢するようになっている。かかる従来の電動パワーステアリング装置は、アシストトルク（操舵補助力）を正確に発生させるため、モータ電流のフィードバック制御を行っている。フィードバック制御は、電流指令値とモータ電流値との差が小さくなるようにモータ印加電圧を調整するものであり、モータ印加電圧の調整は、一般的にＰＷＭ（パルス幅変調）制御のデュ−ティ比の調整で行っている。
【０００３】
ここで、電動パワーステアリング装置の一般的な構成を図７に示して説明すると、ハンドル１のコラム軸２は減速ギア３、ユニバーサルジョイント４ａ及び４ｂ、ピニオンラック機構５を経て操向車輪のタイロッド６に連結されている。コラム軸２には、ハンドル１の操舵トルクを検出するトルクセンサ１０が設けられており、ハンドル１の操舵力を補助するモータ２０が、減速ギア３を介してコラム軸２に連結されている。パワーステアリング装置を制御するコントロールユニット３０には、バッテリ１４から電力が供給されると共に、イグニッションキー１１を経てイグニッション信号が入力され、コントロールユニット３０は、トルクセンサ１０で検出された操舵トルクＴｈと車速センサ１２で検出された車速Ｖｈとに基づいてアシスト指令の操舵補助指令値Ｉの演算を行い、演算された操舵補助指令値Ｉに基づいてモータ２０に供給する電流を制御する。
【０００４】
コントロールユニット３０は主としてＣＰＵ（ＭＰＵやＭＣＵを含む）で構成されるが、そのＣＰＵ内部においてプログラムで実行される一般的な機能を示すと図８のようになる。
【０００５】
図８を参照してコントロールユニット３０の機能及び動作を説明すると、トルクセンサ１０で検出された操舵トルクＴｈは操舵補助指令値演算部３２に入力され、車速センサ１２で検出された車速Ｖｈも操舵補助指令値演算部３２に入力される。操舵補助指令値演算部３２は、入力された操舵トルクＴｈ及び車速Ｖｈに基づいて、メモリ３３に記憶されているアシストマップを参照してモータ２０に供給する電流の制御目標値である操舵補助指令値Ｉを決定する。操舵補助指令値Ｉは減算部３０ａに入力されると共に、応答速度を高めるためのフィードフォワード系の微分補償部３４に入力され、減算部３０ａの偏差（Ｉ−ｉ）は比例演算部３５に入力されると共に、フィードバック系の特性を改善するための積分演算部３６に入力され、その比例出力は加算部３０ｂに入力される。微分補償部３４及び積分補償部３６の出力も加算部３０ｂに加算入力され、加算部３０ｂでの加算結果である電流制御値Ｅが、モータ駆動信号としてモータ駆動回路３７に入力される。モータ駆動回路３７にはバッテリ１４から電力が供給され、モータ２０のモータ電流ｉはモータ電流検出部３８で検出され、モータ電流ｉは減算部３０ａに入力されてフィードバックされる。
【０００６】
図９は、コントロールユニット３０に搭載されるＭＣＵ５０の構成例を示しており、ＭＣＵ５０は車種固有のＩＤやパラメータ等を書き換え可能に記憶保持するＥＥＰＲＯＭ（Electronically  Erasable  Programmable ＲＯＭ）５５と、ＣＡＮ（Controller  Area  Network）に接続された各種センサ系の情報を送受する入出力インタフェース（Ｉ／Ｆ）５４と、制御プログラムやパラメータ等を格納するＲＯＭ５２と、操舵トルクＴｈ、モータ電流ｉ等のアナログ信号をデジタル信号に変換するＡ／Ｄ変換器５６と、ＥＥＰＲＯＭ５５やＲＯＭ５２に格納された制御プログラムやパラメータ等に基づいて上述したコントロールユニット３０におけるフィードバック、フィードフォワードや比例演算等を行うと共に、全体の制御を行う演算処理手段であるＣＰＵ５１と、ＣＰＵ５１の演算処理結果を一時的に記憶保持するＲＡＭ（Random  Access  Memory）５３とで構成されている。また、ＭＣＵ５０は、データを転送する場合、内蔵されたデータ転送部５７（ＤＭＡＣやＤＴＣなどのデータ転送機能）を用いて、接続された各デバイス（ＲＯＭ５２、ＲＡＭ５３、入出力Ｉ／Ｆ５４を介して接続される周辺デバイスなど）とのデータ転送における処理を、ＣＰＵ５１の代わりに実行させ、ＲＡＭ５３等のメモリ資源に対するＣＰＵ５１のアクセス負荷を減少させると共に、データ転送効率の向上を図るようにしている。一方、データ転送部５７を用いないデータ転送の方式としては、ＣＰＵ５１によってデータ転送を実行させる方式がある。
【０００７】
ここで、一般的なデータ転送部５７のデータ転送機能の一例としてＤＭＡＣの概略を説明する。
【０００８】
ＤＭＡＣはＤＭＡの機能を制御する回路であり、ＣＰＵ５１からＤＭＡの機能によるデータ転送の開始コマンドを受けると、所定のデバイス（ＲＡＭ５３、ＲＯＭ５２、入出力Ｉ／Ｆ５４を介した各デバイスなど）からデータを読み出し、読み出したデータをＲＡＭ５３に書き込む又はその逆の処理を行う。つまり、ＤＭＡＣはＣＰＵ５１に代わって、所定のデバイスからのデータをＲＡＭ５３に転送したり、ＲＡＭ５３のデータを所定のデバイスに転送する処理を実行しており、ＲＡＭ５３等のメモリ資源に対するＣＰＵ５１のアクセス負荷を減少させると共に、データ転送の効率を向上させるものである。
【０００９】
また、ＣＰＵ５１は、ＤＭＡの機能によるデータ転送の開始コマンドを通知する前に、初期動作としてデータ転送を開始するデータの記憶領域のアドレスと、転送するデータの個数（カウンタの値）又はデータ転送の終了となるデータの記憶領域のアドレスと、データの転送元と転送先とを指定する制御コードなどを、ＤＭＡＣのレジスタに予め記憶しておく。ＤＭＡＣは、このようなＣＰＵ５１からの初期動作に基づいてデータ転送の処理を実行する。
【００１０】
また、ＤＭＡＣは、データを転送すると、カウンタの値をデクリメントする処理を行うので、ＤＭＡＣのレジスタに記憶された転送するデータに対応した個数（カウンタの値）がゼロになると転送を終了する。また、データ転送の終了となるデータの記憶領域のアドレスがレジスタに記憶されている場合には、データ転送の開始の先頭アドレスを示すレジスタをインクリメントして行き、データ転送の終了となるアドレスに到達すると転送を終了する。そして、データ転送を終了すると、割込み要求によってＣＰＵ５１へデータ転送終了を通知する。
【００１１】
このような電動パワーステアリング装置に搭載されるソフトウェアは、操舵性能と信頼性を向上させるため、多くの機能と診断機能を搭載するので、大容量のメモリを搭載したＣＰＵ５１を使用する必要がある。しかしながら、メモリ容量に比例して、そのメモリの異常診断に要する時間が増加するため、ＣＰＵ５１のメモリに異常が発生した場合、特に高出力アシストの電動パワーステアリング装置では、操舵アシストに大きな影響が生じる可能性があるので、メモリの異常診断に要する時間を短時間で行う必要がある。
【００１２】
かかる問題を解決する装置として、例えば特開２００６−３３１０８６号公報（特許文献１）に示される電動パワーステアリング装置があり、特許文献１に示される電動パワーステアリング装置では、ＣＰＵの診断処理のための負荷処理を軽減し、高速診断処理を可能にしたメモリ診断方法及びこの診断機能を具備した信頼性の高い高性能な電動パワーステアリング装置の制御装置を提案している。即ち、診断処理のための複数のレジスタを用意し、メモリの内容を転送されたレジスタのデータをビット反転演算してテストデータを生成し、テストデータをメモリ及びレジスタの間を相互に転送して後、複数レジスタの内容の一致、不一致によってメモリの故障若しくは異常を診断している。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００６−３３１０８６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
このように、特許文献１の装置では、ＣＰＵの診断処理のための負荷処理を軽減し、高速診断処理を可能にしたことによって、ＲＡＭの異常を精度良く効率的に診断の処理を実行している。しかしながら、各デバイスとのデータ転送を行う際には、上述のＤＭＡＣやＤＴＣなどのデータ転送部を用いて、データをＲＡＭに転送或いはＲＡＭから転送しているため、データ転送部に異常が発生した場合、ＲＡＭに異常が発生していなくてもＲＡＭの値が異常になるという問題があり、ＲＡＭの異常を検出することはできても、このようなデータ転送部の異常を検出することはできないという問題がある。
【００１５】
本発明は上述のような事情によりなされたものであり、本発明の目的は、ＭＣＵに備えられたデータ転送部の異常を精度良く効率的に診断すると共に、異常と診断した場合は、危険な挙動とならないようにアシストを制限することにより、より信頼性の高い電動パワーステアリング装置を提供することにある。
【課題を解決するための手段】
【００１６】
本発明は、ＲＯＭに格納された演算プログラム、パラメータ等に基づいて制御処理するＣＰＵと、複数の記憶領域を備えたＲＡＭと、データ転送の処理を実行するデータ転送部とを備え、車両の操舵系にモータによる操舵補助力を付与してアシスト制御する電動パワーステアリング装置に関し、本発明の上記目的は前記ＲＡＭの第１の記憶領域に記憶されたデータを異常検出データとし、前記データ転送部によって前記異常検出データを前記ＲＡＭの第２の記憶領域に転送させると共に、前記第１の記憶領域に記憶された前記異常検出データと前記第２の記憶領域に転送されたデータとを比較することによって、前記データ転送部の診断処理を実行するデータ転送異常診断部を備えることにより、達成される。
【００１７】
また、本発明の上記目的は、前記データ転送異常診断部は、前記第１の記憶領域に記憶された前記異常検出データの各値をインクリメントし、異なる異常検出データを用いて前記診断処理を複数回実行することにより、達成される。
【００１８】
また、本発明は、ＲＯＭに格納された演算プログラム、パラメータ等に基づいて制御処理するＣＰＵと、記憶領域を備えたＲＡＭと、データ転送の処理を実行するデータ転送部とを備え、車両の操舵系にモータによる操舵補助力を付与してアシスト制御する電動パワーステアリング装置に関し、本発明の上記目的は前記ＲＯＭの所定の記憶領域に格納されたデータを異常検出データとし、前記データ転送部によって前記異常検出データを前記ＲＡＭの所定の記憶領域に記憶させると共に、前記ＲＯＭの所定の記憶領域に格納された前記異常検出データと前記ＲＡＭの所定の記憶領域に転送させた前記異常検出データとを比較することによって、前記データ転送部の診断処理を実行するデータ転送異常診断部を備えることにより、達成される。
【００１９】
また、本発明の上記目的は、前記ＲＯＭが所定の記憶領域にそれぞれ異なる複数の異常検出データを予め格納し、前記データ転送異常診断部は、前記複数の異常検出データを用いて、前記診断処理をそれぞれ複数回実行することにより、或いは前記データ転送異常診断部による前記診断処理の結果に応じてフェールセーフ制御に切替えるセーフアシスト制御部をさらに備えることにより、より効果的に達成される。
【発明の効果】
【００２０】
本発明の電動パワーステアリング装置によれば、異常検出データをデータ転送部によって転送させ、転送元の異常検出データと転送先の異常検出データとを比較する診断処理を実行することにより、データ転送部の異常（故障を含む）を精度良く効率的に検出することができる。また、複数の異なる異常検出データを予め格納させ、それぞれ異なる異常検出データを用いて、或いは異常検出データをインクリメントして異なる異常検出データを用いて複数回の診断処理を実行しているので、一層精度良く効率的にデータ転送部の異常を検出することができる。また、異常を検出した場合には、フェールセーフに切替えてアシストトルクを制限しているので、より信頼性の高い電動パワーステアリング装置を実現することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の構成例を示すブロック図である。
【図２】本発明に係る診断処理の例を説明するための模式図である。
【図３】本発明の動作例を示すフローチャートである。
【図４】本発明に係る別の診断処理の例を説明するための模式図である。
【図５】本発明の別の動作例を示すフローチャートである。
【図６】本発明の診断処理の基本動作例を示すフローチャートである。
【図７】従来の電動パワーステアリング装置の構成例を示す図である。
【図８】従来のコントロールユニットの構成例を示すブロック図である。
【図９】ＭＣＵの構成例を示すブロック図である。
【発明を実施するための形態】
【００２２】
本発明に係る電動パワーステアリング装置は、転送元となるＲＡＭの所定の記憶領域に記憶されているデータ若しくはＲＯＭの所定の記憶領域に格納されているデータを異常検出データとし、データ転送部を用いて、転送先となるＲＡＭの所定記憶領域に異常検出データを転送させ、転送元の異常検出データと転送先の異常検出データとを比較することで、データ転送部の異常を診断するデータ転送異常診断部を備える。これにより、信頼性の高い電動パワーステアリング装置を実現している。
【００２３】
以下に本発明の実施の形態を、図面を参照して説明する。
【００２４】
図１は本発明の構成例を図９に対応させて示すブロック図であり、同一符号箇所には同一符号を付して説明を省略する。
【００２５】
データ転送異常診断部５８は、前述したような初期動作として、データ転送部５７の異常を診断するため、データ転送を開始する異常検出データの記憶領域のアドレス、データ転送の終了となる異常検出データの記憶領域のアドレス、異常検出データの転送元と転送先となるデバイスを指定する制御コードなどを、データ転送部５７のレジスタに予め記憶しておく。また、データ転送部５７は、データ転送異常診断部５８から診断開始コマンドを受けると、レジスタの記憶に基づいてＲＡＭ５３の所定の記憶領域に記憶若しくはＲＯＭ５２の所定の記憶領域に格納されたデータを、異常検出データとしてＲＡＭ５３の所定の記憶領域に転送すると共に、データ転送を終了すると、データ転送異常診断部５８へデータ転送終了を通知する。データ転送終了の通知を受けたデータ転送異常診断部５８は、転送元の異常検出データと転送先の異常検出データとを比較することにより、データ転送機能部５７の異常を検出する診断処理を行う。ここで、データ転送異常診断部５８は、転送元の異常検出データと転送先の異常検出データが一致すれば、データ転送部５７を正常と診断する。また、転送元の異常検出データと転送先の異常検出データが一致しなければ、データ転送部５７を異常と診断し、異常発生をセーフアシスト制御部５９へ通知する。データ転送部５７の異常発生の通知を受けたセーフアシスト制御部５９は、通常のアシスト制御からフェールセーフ制御へ切替える。つまり、データ転送異常診断部５８は、上記診断処理に基づいて異常と診断した場合、セーフアシスト制御部５９によって通常のアシスト制御からフェールセーフ制御へ切替え、正常と診断した場合には、通常のアシスト制御を継続するようにしている。
【００２６】
また、セーフアシスト制御部５９によるフェールセーフ制御は、データ転送部５７のデータ転送機能を使わずに転送周期を落とし、ＣＰＵ５１によってデータ転送の処理を実行させ、最低限のアシスト制御を確保できるようにしている。例えば、通常のアシスト制御では、Ａ／Ｄ変換器５６においてＡ／Ｄ変換されたデータは、データ転送部５７のデータ転送機能によって、Ａ／Ｄ変換器５６のレジスタからＲＡＭ５３へ転送され、ＣＰＵ５１によってＲＡＭ５３から読込まれて制御処理が行われている。つまり、セーフアシスト制御部５９は、データ転送異常検出部５８からデータ転送部５７の異常発生の通知を受けると、Ａ／Ｄ変換器５６のレジスタのデータを、ＣＰＵ５１によって直接読込ませることにより、最低限のアシスト制御を確保できるようにしている。
【００２７】
図２は、転送元であるＲＡＭ５３の所定の記憶領域の異常検出データを、転送先であるＲＡＭ５３の所定の記憶領域へ転送させ、転送元の異常検出データと転送先の異常検出データとを比較してデータ転送機能の異常を検出する診断処理の例を説明するための模式図である。図２（Ａ）は１回目の診断処理を、図２（Ｂ）は２回目の診断処理を示している。
【００２８】
データ転送異常診断部５８は、データ転送部５７の診断処理を実行する場合、診断開始コマンドをデータ転送部５７に通知する。診断開始コマンドを受けたデータ転送部５７は、例えば、転送元であるＲＡＭ５３の所定の記憶領域に記憶されている７バイト（１バイト×７）で構成されたデータ（異常検出データ）５３１ａを、図２（Ａ）に示すように転送先のＲＡＭ５３の所定の記憶領域に転送する。そして、データ転送を終了すると、データ転送異常診断部５８にデータ転送終了を通知する。データ転送終了の通知を受けたデータ転送異常診断部５８は、転送元の異常検出データ５３１ａと転送先の異常検出データ５３１ｂとを比較し、７バイトの値が全て一致すれば正常と診断し、不一致の場合には異常と診断する。
【００２９】
ここで、データ転送異常診断部５８は、再びデータ転送部５７の異常診断処理を実行する場合、１回目に用いた異常検出データ５３１ａの各値をインクリメントし、異常検出データ５３２ａとする。そして、データ転送異常診断部５８は、図２（Ｂ）に示すように診断開始コマンドをデータ転送部５７に通知し、データ転送部５７によって、異常検出データ５３２ａを転送先のＲＡＭ５３の所定の記憶領域に転送させる。データ転送終了の通知を受けたデータ転送異常診断部５８は、転送元の異常検出データ５３２ａと転送先の異常検出データ５３２ｂとを比較し、７バイトの値が全て一致すれば正常と診断し、不一致の場合には異常と診断する。このように１回目の診断処理で用いた異常検出データ５３１ａをインクリメントして２回目の診断処理に用いることで、一層精度良く効率的にデータ転送部５７の異常を検出することができる。
【００３０】
なお、異常検出データ５３１ａは、予め設定された所定の記憶領域に記憶されているデータとして説明したが、予め異常検出用のデータとしてＲＯＭ５２に格納されたデータを、ＲＡＭ５３の所定の記憶領域に転送させて転送元の異常検出データ５３１ａとしても良い。
【００３１】
データ転送異常診断部５８による診断処理の動作例を図３のフローチャートに示して説明する。
【００３２】
データ転送異常診断部５８は、ＲＡＭ５３の所定の記憶領域に格納されたデータを異常検出データ５３１ａとして１回目の診断処理を実施するための初期動作の後、診断開始コマンドをデータ転送部５７に通知する（ステップＳ１０）。診断開始コマンドを受けたデータ転送部５７は、データ転送異常診断部５８による初期動作に基づいて、転送元であるＲＡＭ５３の所定の記憶領域のデータを異常検出データ５３１ａとし、転送先であるＲＡＭ５３の所定の記憶領域に対してデータ転送の処理を実行する（ステップＳ１１）。データ転送部５７は、ステップＳ１１におけるデータ転送を終了すると、データ転送異常診断部５８へデータ転送終了を通知する（ステップＳ１２）。データ転送終了の通知を受けたデータ転送異常診断部５８は、転送元の異常検出データ５３１ａと転送先の異常検出データ５３１ｂとを比較して１回目の診断処理を実行する（ステップＳ１３）。
【００３３】
上記ステップＳ１３において正常と診断した場合、データ転送異常診断部５８は、異常検出データ５３１ａをインクリメントし、異常検出データ５３２ａとして２回目の診断処理を実施する初期動作を行い、診断開始コマンドをデータ転送部５７に通知する（ステップＳ１４）。診断開始コマンドを受けたデータ転送部５７は、データ転送異常診断部５８による初期動作に基づいて、転送元であるＲＡＭ５３のインクリメントされた異常検出データ５３２ａを、転送先であるＲＡＭ５３の所定の記憶領域に対してデータ転送の処理を実行する（ステップＳ１５）。データ転送部５７は、ステップＳ１５におけるデータ転送を終了すると、データ転送異常診断部５８へデータ転送終了を通知する（ステップＳ１６）。データ転送終了の通知を受けたデータ転送異常診断部５８は、転送元の異常検出データ５３２ａと転送先の異常検出データ５３２ｂとを比較して２回目の診断処理を実行する（ステップＳ１７）。
【００３４】
上記ステップＳ１７において正常と診断した場合、通常のアシスト制御を継続して行う（ステップＳ１８）。
【００３５】
一方、上記ステップＳ１３において異常と診断した場合、データ転送異常診断部５７は、セーフアシスト制御部５９に異常発生を通知し、フェールセーフに切替える（ステップＳ１９）。
【００３６】
また、上記ステップＳ１７において異常と診断した場合、データ転送異常診断部５８は、セーフアシスト制御部５９に異常発生を通知し、フェールセーフに切替える（ステップＳ１９）。
【００３７】
図４は、ＲＯＭ５２に予め格納された複数の異常検出データを用いてデータ転送機能の異常を検出する診断処理の別の例を説明するための模式図である。
【００３８】
データ転送異常診断部５８は、上述の初期動作の後、診断開始コマンドをデータ転送部５７に通知し、転送元であるＲＯＭ５２の所定の記憶領域に予め格納された、例えば図４（Ａ）に示すような７バイト（１バイト×７）で構成された複数のそれぞれ異なる異常検出データ５２１、５２２、５２３を、図４（Ｂ）に示すように転送先であるＲＡＭ５３の所定の記憶領域へ次々転送させ、データ転送部５７からデータ転送終了の通知を受ける度に転送元の異常検出データと転送先の異常検出データとをそれぞれ比較する診断処理を実行する。つまり、データ転送異常診断部５８は、診断処理の１回目として、ＲＯＭ５２に予め格納された異常検出データ５２１をデータ転送部５７によってＲＡＭ５３に転送させ、データ転送部５７からデータ転送終了の通知を受けると、転送元の異常検出データ５２１と転送先の異常検出データ５３１とを比較する。そして、診断処理の２回目として、データ転送部５７によってＲＯＭ５２に予め格納された異常検出データ５２２をＲＡＭ５３に転送させ、データ転送部５７からデータ転送終了の通知を受けると、転送元の異常検出データ５２２と転送先の異常検出データ５３２とを比較する。さらに、診断処理の３回目として、データ転送部５７によってＲＯＭ５２に予め格納された異常検出データ５２３をＲＡＭ５３に転送させ、データ転送部５７からデータ転送終了の通知を受けると、転送元の異常検出データ５２３と転送先の異常検出データ５３３とを比較する。また、必要に応じて異常検出データ５２１を用いて４回目、異常検出データ５２２を用いて５回目、異常検出データ５２３を用いて６回目として、同様に異常診断処理を実施する。つまり、ＲＯＭ５２に予め格納された複数の異常検出データを切替えて複数回の診断処理を実行し、それぞれ全て一致すれば正常と診断し、不一致の場合には異常と診断する。このように複数回の診断処理を実施することで、一層精度良く効率的にデータ転送部５７の異常を検出することができる。
【００３９】
データ転送異常診断部５８による診断処理の別の動作例を図５のフローチャートに示して説明する。
【００４０】
データ転送異常診断部５８はＲＯＭ５２の所定の記憶領域に格納されたデータを異常検出データ５２１として１回目の診断処理を実施する初期動作の後、診断開始コマンドをデータ転送部５７に通知する（ステップＳ３０）。診断開始コマンドを受けたデータ転送部５７は、データ転送異常診断部５８による初期動作に基づいて、転送元であるＲＯＭ５２の所定の記憶領域のデータを異常検出データ５２１とし、転送先であるＲＡＭ５３の所定の記憶領域に対してデータ転送の処理を実行する（ステップＳ３１）。データ転送部５７は、ステップＳ３１におけるデータ転送を終了すると、データ転送異常診断部５８へデータ転送終了を通知する（ステップＳ３２）。データ転送終了の通知を受けたデータ転送異常診断部５８は、転送元の異常検出データ５２１と転送先の異常検出データ５３１とを比較して１回目の診断処理を実行する（ステップＳ３３）。
【００４１】
上記ステップＳ３３において正常と診断した場合、データ転送異常診断部５８は、ＲＯＭ５２の所定の記憶領域に格納されたデータを異常検出データ５２２として２回目の診断処理を実施する初期動作の後、診断開始コマンドをデータ転送部５７に通知する（ステップＳ３４）。診断開始コマンドを受けたデータ転送部５７は、データ転送異常診断部５８による初期動作に基づいて、転送元であるＲＯＭ５２の所定の記憶領域のデータを異常検出データ５２２とし、転送先であるＲＡＭ５３の所定の記憶領域に対してデータ転送の処理を実行する（ステップＳ３５）。データ転送部５７は、ステップＳ３５におけるデータ転送を終了すると、データ転送異常診断部５８へデータ転送終了を通知する（ステップＳ３６）。データ転送終了の通知を受けたデータ転送異常診断部５８は、転送元の異常検出データ５２２と転送先の異常検出データ５３２とを比較して２回目の診断処理を実行する（ステップＳ３７）。
【００４２】
上記ステップＳ３７において正常と診断した場合、通常のアシスト制御を継続して行う（ステップＳ３８）。以下、同様に所定回数の診断処理を実行する。
【００４３】
一方、上記ステップＳ３３において異常と診断した場合、データ転送異常診断部５７は、セーフアシスト制御部５９に異常発生を通知し、セーフアシスト制御部５９によってフェールセーフに切替える（ステップＳ３９）。
【００４４】
また、上記ステップＳ３７において異常と診断した場合、データ転送異常診断部５８は、セーフアシスト制御部５９に異常発生を通知し、セーフアシスト制御部５９によってフェールセーフに切替える（ステップＳ３９）。
【００４５】
ここで、データ転送異常診断部５８による上記の診断処理は、イグニッションキー１１がＯＮになったとき、初期診断としてデータ転送部５７の診断処理を行うと共に、アシスト制御中であっても、ある一定周期（例えば１０ｍｓ）でデータ転送部５７の診断処理を行うようにする。また、データ転送異常診断部５８による初期診断及びアシスト制御中による診断処理は、その診断結果に応じて、異常と診断した場合にはデータ転送フェールフラグを“１”にすると共に、正常と診断した場合にはデータ転送フェールフラグを“０”にして、データ転送部５７に異常が発生すると、フェールセーフを継続して実施できるようにする。以下に、その動作例を図６のフローチャートに示して説明する。
【００４６】
図６は、診断処理の基本的な動作例を示すフローチャートである。
【００４７】
先ず、データ転送異常診断部５８は、イグニッションキー１１がＯＮになると初期診断による診断処理を行い（ステップＳ５０）、正常と診断するとステップＳ５２に移行し、異常と診断するとステップＳ５８に移行する（ステップＳ５１）。ここで、異常と診断した場合、データ転送フェールフラグを“１”にし（ステップＳ５８）、セーフアシスト制御部５９に異常発生を通知し、フェールセーフを継続してリターンとなる（ステップＳ５９）。
【００４８】
一方、上記ステップＳ５１において正常と診断した場合、データ転送異常診断部５８は、データ転送フェールフラグが“１”であればフェールセーフを継続してリターンする。一方、データ転送フェールフラグが“０”であれば、ステップＳ５３へ移行する（ステップＳ５２）。データ転送異常診断部５８は、アシスト制御中における診断処理の実施タイミングを監視し、実施タイミングでなければリターンする。一方、実施タイミングであればステップＳ５４へ移行する（ステップＳ５３）。データ転送異常診断部５８は、アシスト制御中における診断処理を開始し（ステップＳ５４）、正常と診断するとステップＳ５６へ移行し、異常と診断するとステップＳ５８へ移行する（ステップＳ５５）。
【００４９】
上記ステップＳ５５において正常と診断した場合、データ転送フェールフラグを“０”にし（ステップＳ５６）、通常のアシスト制御を継続してリターンとなる（ステップＳ５７）。
【００５０】
一方、上記ステップＳ５５において異常と診断した場合、データ転送フェールフラグを“１”にし（ステップＳ５８）、セーフアシスト制御部５９に異常発生を通知してフェールセーフを実施してリターンとなる（ステップＳ５９）。
【符号の説明】
【００５１】
１          ハンドル
２０        モータ
３０        コントロールユニット
５０        ＭＣＵ
５１        ＣＰＵ
５２        ＲＯＭ
５３        ＲＡＭ
５４        Ｉ／Ｆ
５６        Ａ／Ｄ変換器
５７        データ転送部
５８        データ転送異常診断部
５９        セーフアシスト制御部
【図１】
2010155591.tif 000003
【図２】
2010155591.tif 000004
【図３】
2010155591.tif 000005
【図４】
2010155591.tif 000006
【図５】
2010155591.tif 000007
【図６】
2010155591.tif 000008
【図７】
2010155591.tif 000009
【図８】
2010155591.tif 000010
【図９】
2010155591.tif 000011