JP5233506B2 - 電動パワーステアリング装置 - Google Patents

電動パワーステアリング装置 Download PDF

Info

Publication number
JP5233506B2
JP5233506B2 JP2008215088A JP2008215088A JP5233506B2 JP 5233506 B2 JP5233506 B2 JP 5233506B2 JP 2008215088 A JP2008215088 A JP 2008215088A JP 2008215088 A JP2008215088 A JP 2008215088A JP 5233506 B2 JP5233506 B2 JP 5233506B2
Authority
JP
Japan
Prior art keywords
small area
memory
small
electric power
local variable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008215088A
Other languages
English (en)
Other versions
JP2010047203A (ja
Inventor
光洋 廣田
一博 熊井戸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NSK Ltd
Original Assignee
NSK Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NSK Ltd filed Critical NSK Ltd
Priority to JP2008215088A priority Critical patent/JP5233506B2/ja
Publication of JP2010047203A publication Critical patent/JP2010047203A/ja
Application granted granted Critical
Publication of JP5233506B2 publication Critical patent/JP5233506B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Steering Control In Accordance With Driving Conditions (AREA)
  • Power Steering Mechanism (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

本発明は、制御コンピュータを搭載する電動パワーステアリング装置に関し、さらに詳しくは、制御コンピュータのメモリに故障が発生した場合でも操舵補助処理を継続することが可能な電動パワーステアリング装置に関するものである。
乗用車やトラック等の車両の操舵力を軽減するため、操舵補助モータによって操舵を補助する、いわゆる電動パワーステアリング(EPS:Electric Power Steering)装置がある。電動パワーステアリング装置では、操舵補助モータの駆動力を、減速機を介してギヤまたはベルト等の伝送機構により、ステアリングシャフトまたはラック軸に補助力を付与するようになっている。かかる電動パワーステアリング装置は、操舵補助トルクを正確に発生させるため、制御コンピュータを用いてモータ電流のフィードバック制御を行っている。フィードバック制御は、電流指令値とモータ電流検出値との差が小さくなるようにモータ印加電圧を調整するものであり、モータ印加電圧の調整は、一般的にPWM(パルス幅変調)制御のデューティー比の調整で行っている。
このような電動パワーステアリング装置の制御コンピュータは、データの格納や演算処理のためにRAM等のメモリを使用している。そして、電動パワーステアリング装置の安全性を高めるために、初期時および操舵アシスト中においてシステムの信頼性を高めたり、安全性を図ることを目的としてメモリ診断機能を具備するようになっている。
例えば、特許文献1および2では、メモリ診断機能を備えた電動パワーステアリング装置において、メモリの故障を検出した場合に、安全のために操舵アシストを停止する技術が開示されている。
また、特許文献3では、DRAMなどの揮発性メモリを備えるコンピュータシステムにおいて、代替メモリを設け、揮発性メモリにメモリ故障が発生した場合、これを検出し、アクセス先を代替メモリに変更するようにすることで、ソフトウェアの動作に支障のない正常な状態に復帰させる技術が開示されている。
特開2004−133635号公報 特開2003−323353号公報 特開2006−065396号公報
ところで、電動パワーステアリング装置を搭載する車両の大型化のため、電動パワーステアリング装置は高出力化が進み、操舵補助モータのモータトルクの増大・大電流化が加速している。軽自動車等では、電動パワーステアリング装置が作動していない場合でもある程度の操舵が可能であるが、リッターカー以上では操舵に大きな力が必要になるため、異常発生後も電動パワーステアリング装置による操舵アシストを継続することが望まれる。
しかしながら、特許文献1および2では、メモリの異常を検出した場合には、操舵アシストを停止する構成であるので、メモリに異常がある場合に操舵アシストを継続することができないという問題がある。
また、特許文献3によれば、代替メモリを用意するハードウェア面でのメモリ故障対策であるので、部品点数増加による品質確保の困難さおよびコストが増大するという問題がある。
本発明は、上記に鑑みてなされたものであり、メモリに故障が検出された場合でも可及的に操舵補助処理を継続する仕組みを、部品点数を増やすことなく実現する電動パワーステアリング装置を提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、車両のステアリング系に発生する操舵トルクおよび前記車両の速度に基づいて演算した操舵補助指令値と、前記ステアリング系に操舵補助力を付与する操舵補助モータの電流検出値と、に基づいて前記操舵補助モータを制御する電動パワーステアリング装置において、前記操舵補助モータを制御する操舵補助処理を実行する制御手段と、前記制御手段の作業領域として動的に確保される複数の小領域を有するメモリと、小領域に対して故障検出を行うメモリ故障検出手段と、前記制御手段が小領域の確保要求を発行した際、前記複数の小領域の中で確保されていない小領域を選択して前記メモリ故障検出手段に逐次故障検出を実行させ、小領域に故障が検出された場合に、他の小領域に正常な小領域が存在しているとき、該小領域を確保し、正常な小領域が存在しなかったとき、エラーを出力するメモリ制御管理手段と、を備え、前記制御手段は、前記メモリ制御管理手段によって小領域が確保されたとき、当該小領域を使用して前記操舵補助処理を継続し、前記メモリ制御管理手段によって前記エラーが出力されたとき、前記操舵補助処理を停止させることを特徴とする。
また、本発明の好ましい態様によれば、前記メモリ制御管理手段は、前記制御手段が小領域の確保要求を発行した際、確保されていない小領域が存在しなかったとき、エラーを出力することが望ましい。
また、本発明の好ましい態様によれば、前記メモリ制御管理手段は、前記制御手段が小領域の解放要求を発行した際、解放要求された小領域を解放することが望ましい。
また、本発明の好ましい態様によれば、夫々の小領域について確保されているか否かを示す使用状況情報をさらに有し、前記メモリ制御管理手段は、小領域の確保・解放に対応して前記使用状況情報を更新するとともに、前記使用状況情報に基づいて確保されていない小領域を選択することが望ましい。
また、本発明の好ましい態様によれば、前記小領域には、前記制御手段で使用するローカル変数が記憶されることが望ましい。
また、本発明の好ましい態様によれば、前記メモリは、記憶するローカル変数のサイズに対応して異なるサイズの小領域を夫々複数有し、前記メモリ制御管理手段は、ローカル変数確保要求が発行されたとき、確保要求されたローカル変数のサイズに対応する複数の小領域のうちから確保する小領域を選択することが望ましい。
本発明によれば、車両のステアリング系に発生する操舵トルクおよび前記車両の速度に基づいて演算した操舵補助指令値と、前記ステアリング系に操舵補助力を付与する操舵補助モータの電流検出値と、に基づいて前記操舵補助モータを制御する電動パワーステアリング装置において、前記操舵補助モータを制御する操舵補助処理を実行する制御手段と、前記制御手段の作業領域として動的に確保される複数の小領域を有するメモリと、小領域に対して故障検出を行うメモリ故障検出手段と、前記制御手段が小領域の確保要求を発行した際、前記複数の小領域の中で確保されていない小領域を選択して前記メモリ故障検出手段に逐次故障検出を実行させ、小領域に故障が検出された場合に、他の小領域に正常な小領域が存在しているとき、該小領域を確保し、正常な小領域が存在しなかったとき、エラーを出力するメモリ制御管理手段と、を備え、前記制御手段は、前記メモリ制御管理手段によって小領域が確保されたとき、当該小領域を使用して前記操舵補助処理を継続し、前記メモリ制御管理手段によって前記エラーが出力されたとき、前記操舵補助処理を停止させることとしたので、メモリに故障が検出された場合でも可及的に操舵補助処理を継続する仕組みを、部品点数を増やすことなく実現することができる。
以下に、本発明にかかる電動パワーステアリング(EPS)装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、下記実施例における構成要素には、当業者が容易に想定できるものまたは実質的に同一のものが含まれる。
図1は、電動パワーステアリング装置の一般的な構成を示す図である。図1において、操向ハンドル1のコラム軸2は減速ギヤ3、ユニバーサルジョイント4aおよび4b、ピニオンラック機構5を経て操向車輪のタイロッド6に連結されている。コラム軸2には、操向ハンドル1の操舵トルクTを検出するトルクセンサ10が設けられており、操向ハンドル1の操舵力を補助する操舵補助モータ20が、減速ギヤ3を介してコラム軸2に連結されている。ここで、操舵補助モータ20は、例えば、ブラシレスモータやブラシモータである。電動パワーステアリング装置を制御するコントロールユニット30には、バッテリ14から内蔵の電源リレー13を経て電力が供給され、イグニションキー11からイグニション信号が供給される。また、コントロールユニット30は、トルクセンサ10で検出された操舵トルクTと車速センサ12で検出された車速Vとに基づいて、操舵補助モータ20の電流指令値を演算し、操舵補助モータ20の電流検出値と電流指令値とに基づいて、操舵補助モータ20の電流検出値が電流指令値に追従するように操舵補助モータ20を駆動制御する。
図2は、図1のコントロールユニット30のハードウェア構成を示す図である。コントロールユニット30は、図2に示すように、MCU(マイクロコントロールユニット)100と、FETプリドライバ回路110と、モータ駆動回路(インバータ)120と、電流検出回路130と、位置検出回路140等を備えている。
MCU100は、CPU(制御手段)101、ROM102、RAM103、EEPROM(不揮発性メモリ)104、A/D変換器105、インターフェース106、バス107等を備えている。CPU101は、ROM102に格納されたプログラムを実行して電動パワーステアリング装置を制御する。
ROM102は、CPU101が実行する各種プログラムを格納する。具体的には、ROM102には、操舵補助(アシスト)を行う操舵補助モータ20を制御するアシスト処理(操舵補助処理)、RAM103の故障検出を行うメモリ診断処理を実行するための制御プログラム等が格納されている。
RAM103は、CPU101が制御プログラムを実行する場合にその作業領域として使用され、制御プログラムに定義されるグローバル変数や、制御プログラムに含まれる関数内で定義され、該関数による処理が終了すると解放されるローカル変数等が記憶されるものである。
EEPROM104は、電源遮断後においても記憶内容を保持可能な不揮発性メモリであり、CPU101が、電動パワーステアリング装置の制御で使用する制御データ等が格納される。なお、ここでは、不揮発性メモリとして、EEPROMを使用することとしたが、本発明はこれに限られるものではなく、FLASH−ROM等の他の不揮発性メモリを使用することにしてもよい。
A/D変換器105は、トルクセンサ10からの操舵トルクT、電流検出回路130からの操舵補助モータ20の電流検出値Im、および位置検出回路140からのモータ回転角信号θ等を入力し、デジタル信号に変換する。インターフェース106は、車速センサ12からの車速V(パルス)をCAN通信などの車載ネットワークを介して受け取るためのものである。
上記構成において、CPU101が、ROM102に格納されたプログラムを実行することにより、メモリ制御管理手段、メモリ故障検出手段、およびフェールセーフ処理手段として機能する。
FETプリドライバ回路110は、MCU100から入力されるUVW各相のPWM制御信号を、各相正負の通電信号(Up、Un、Vp、Vn、Wp、Wn)に変換して、モータ駆動回路120に出力する。
モータ駆動回路120は、一対のFETスイッチング素子からなるブリッジ回路をU相用、V相用、W相用として3相分備えており、各FETスイッチング素子には還流ダイオードが並列接続されている。このブリッジ回路には、バッテリ14から電源リレー13を介して直流電圧が印加される。各FETスイッチング素子の制御端子(ゲート端子)には、FETプリドライバ回路110から通電信号が入力される。モータ駆動回路120に印加される直流電圧は、モータ駆動回路120内のFETスイッチング素子のスイッチング動作によって3相の交流電圧に変換され、それにより操舵補助モータ20が駆動される。このブリッジ回路には、シャント抵抗R1、R2が接続されている。このシャント抵抗R1、R2に電流検出回路130が接続され、これによって、操舵補助モータ20の電流検出値Imを検出するようになっている。
位置検出回路140は、位置センサ21からの出力信号をモータ回転角信号θとして、A/D変換器105に出力する。
次に、RAM103のメモリ構成を説明する。特許文献1〜3に開示される技術を含む従来の一般的なコンピュータにおいては、制御プログラムの処理中にローカル変数が定義されたとき、該ローカル変数をRAMに設けられたスタック領域に確保し、該関数を使用した処理が終了されると確保した領域を解放するようになっている。これに対し、本実施例においては、RAM103にローカル変数を記憶するスタック領域とは異なる領域として複数の小領域が設けられ、ローカル変数を小領域に確保しようとするとき、確保しようとした小領域が正常ではない場合、すなわち、例えば該小領域に故障が検出された場合、他の小領域にローカル変数を確保するようにし、正常な小領域が全く存在しない場合、フェールセーフ処理を実行するように構成されている。
図3は、RAM103のメモリ構成例を示す図である。同図において、RAM103は、制御プログラムにおけるグローバル変数などの確保領域である静的領域200と、ローカル変数を確保する領域である動的領域210と、を備えている。
動的領域210は、複数のブロックからなるブロックメモリ領域230と、夫々のブロックに関する管理情報を格納するブロックメモリ管理領域220とを備えている。一つのブロックは、記憶するローカル変数のサイズに対応して、ブロック毎にサイズが決められたさらに小さな小領域に分割されており、一つの小領域に一つのローカル変数が記憶される。ここでは、ブロックメモリ領域230に、4バイトの小領域を6個有する第1ブロック231と、2バイトの小領域を12個有する第2ブロック232と、1バイトの小領域を24個有する第3ブロック233と、が設けられているとする。
ブロックメモリ管理領域220に格納されている夫々の管理情報は、対応するブロックについて、どの小領域が使用中であるかまたは不使用中であるか(確保されているか否か)を示す使用状況と、不使用中の小領域のうちのひとつの先頭アドレスを示す確保候補位置と、を有する。ここでは、ブロックメモリ管理領域220には、第1ブロック231、第2ブロック232、第3ブロック233に夫々対応する管理情報として、第1ブロック管理情報221、第2ブロック管理情報222、第3ブロック管理情報223が格納されているとする。
図4は、MCU100の機能構成図(CPU101が制御プログラムを実行することにより実現する機能構成)を示す図である。MCU100は、図4に示すように、メモリ管理部301と、メモリ制御部302と、メモリ故障検出部303と、フェールセーフ処理部304とを備えている。メモリ故障検出部303は、メモリ制御部302が指定する小領域に対して故障診断を行う。メモリ制御部302は、ローカル変数の確保が要求されたとき、確保要求されているローカル変数のサイズに対応する小領域からなるブロックから、使用中でない小領域を選択してメモリ故障検出部303に該小領域のメモリ故障検出を順次実行させる。そして、メモリ制御部302は、故障が検出されなかった小領域を一つメモリ管理部301およびローカル変数の確保の要求元に通知する。メモリ制御部302は、使用中でない小領域が存在しないか、使用中でない小領域すべてに故障を検出したとき、エラーを出力する。また、メモリ制御部302は、ローカル変数を解放する要求を受信したとき、該要求をメモリ管理部301に転送する。
メモリ管理部301は、メモリ制御部302から通知された小領域を確保する。また、メモリ管理部301は、ローカル変数を解放する要求を受信したとき、該解放要求に対応する確保していた小領域を解放する。
フェールセーフ処理部304は、メモリ制御部302がエラーを出力したとき、フェールセーフ処理(アシスト処理を停止、操舵補助モータ20への通電を遮断、またはMCU100のリセット等)を実行する。ここでは、フェールセーフ処理部304は、FETプリドライバ回路110にモータ停止信号を出力して、FETプリドライバ回路110の動作を停止させて、操舵補助モータ20を停止させる。
また、MCU100は、図4に示すように、操舵トルクTと車速Vに基づいて操舵補助トルク指令値を算出するトルク制御系モジュール400と、各種のトルク補償を行う補償制御系モジュール410と、モータ電流のFB(フィードバック)制御を行うモータ電流制御系モジュール420と、操舵補助モータ20のモータ電流のFF(フィードフォワード)制御を行うモータ電流補助制御系モジュール430等、アシスト処理を実行するアシスト処理系を備えている。つぎに、アシスト処理系の各部の動作の概略を説明する。
まず、トルクセンサ10で検出された操舵トルクTと、車速センサ12で検出された車速Vとがアシストマップ401に入力され操舵補助指令値が算出される。さらに、補償制御系モジュール410で演算される補償値、例えば、収斂性、慣性、およびSATなどの補償値を、加算部402で操舵補助指令値に加算してトルク指令値Trefが決定される。トルク指令値Trefは、位相補償部403で位相補償された後、電流指令値演算部440に入力される。そして、トルク指令値Trefに基づいて電流指令値演算部440で電流指令値Irefが決定される。なお、ブラシレスモータでは、トルク指令値Trefの他に回転子のロータ角度も電流指令値演算部440に入力して電流指令値Irefが決定される。
一方、操舵補助モータ20のモータ電流は、電流検出値Imとして、電流検出回路130で検出され、電流指令値Irefとともに減算部421へ入力される。減算部421では、それらの偏差ΔI=Iref−Imが算出され、PI(比例積分)制御部422に入力される。PI(比例積分)制御部422では、偏差ΔIの比例積分出力として、電圧制御値Vrefが出力される。また、電流指令値Irefは、補助値演算部431に入力される。補助値演算部431で演算される補助値、例えば、Dead Time、EMF(逆起電力)、および弱め界磁制御の補助値が、加算部435で電圧制御値Vrefに加算される。加算部435の出力は、PWM制御部450に入力されて、PWM処理され、UVW各相のPWM制御信号がFETプリドライバ回路110に出力され、FETプリドライバ回路110およびモータ駆動回路120を介して、操舵補助モータ20が駆動される。
これらのアシスト処理系の各機能部は、ローカル変数を使用する関数に基づく処理を開始した際、ローカル変数確保要求を発行し、該処理を終了する際、ローカル変数解放要求を発行する。
次に、本実施例の要部の動作を説明する。まず、アシスト処理系によりローカル変数を使用する処理が実行される動作を説明する。図5は、アシスト処理系の所定の機能部がローカル変数Lを使用する関数に基づく処理Aを実行する動作を示すフローチャートである。図示するように、処理Aが開始されると、所定の機能部は、ローカル変数Lを確保するために、ローカル変数確保要求を発行する(ステップS1)。そして、所定の機能部は、ローカル変数確保要求に対応してメモリ管理部301が小領域に確保したローカル変数Lを使用して処理Aの内容を実行し(ステップS2)、ローカル変数Lが不要になったとき、ローカル変数解放要求を発行する(ステップS3)。該ローカル変数解放要求に対応し、メモリ管理部301によって小領域に確保されたローカル変数Lが解放される。
続いて、本実施例の電動パワーステアリング装置において、メモリ管理部301およびメモリ制御部302がローカル変数確保要求に対応して小領域を確保するローカル変数確保処理の動作を詳しく説明する。図6は、ローカル変数確保処理を説明するフローチャートである。
図6において、ローカル変数確保要求が発行されると、メモリ制御部302は、第1〜第3ブロック管理情報221〜223のうち、要求されたローカル変数のサイズを記憶可能な小領域からなるブロックのブロック管理情報の使用状況をメモリ管理部301を介して参照し、該ブロックに含まれる全ての小領域が使用中か否かを判定する(ステップS11)。例えば3バイトや4バイトのローカル変数を確保するローカル変数確保要求が発行された場合、メモリ制御部302は、4バイトの小領域を有する第1ブロック管理情報221の使用状況を参照する。要求されたローカル変数のサイズに対応するブロックの全ての小領域が使用中であった場合(ステップS11、Yes)、メモリ制御部302はエラーを発行する(ステップS18)。
不使用中の小領域があった場合(ステップS11、No)、メモリ制御部302は、メモリ故障検出部303に前述のブロック管理情報の確保候補位置が示す小領域について故障診断を実行させて診断結果を取得し、該位置の小領域に故障が検出されたか否かを判断する(ステップS12)。故障診断の方法としては、例えばライト・リードチェックを用いることができる。ブロック管理情報の確保候補位置が示す小領域に故障が検出されなかった場合(ステップS12、No)、メモリ制御部302は、メモリ管理部301に該位置の小領域の先頭アドレスを通知し、メモリ管理部301は、該小領域に関する使用状況を「使用中」となるように更新することによって該小領域を確保し(ステップS13)、確保候補位置を他の不使用中の小領域の先頭アドレスで更新する(ステップS14)。そして、メモリ制御部302は、確保した小領域の先頭アドレスをローカル変数確保要求の送信元に通知する(ステップS15)。
ステップS12にて故障が検出されたとき、メモリ制御部302は、使用状況を参照して不使用中の小領域全てに対する故障診断を完了したか否かを判定し(ステップS16)、故障診断が完了していない場合(ステップS16、No)、メモリ管理部301に確保候補位置をまだ故障診断を行っていない他の不使用中の小領域の先頭アドレスで更新させ(ステップS17)、ステップS12へ移行する。不使用中の全ての小領域に対する故障診断を完了した場合(ステップS16、No)、確保可能な小領域がないので、ステップS18へ移行してエラーを発行する。
続いて、本実施例の電動パワーステアリング装置において、メモリ管理部301およびメモリ制御部302がローカル変数解放要求に対応して小領域を解放するローカル変数解放処理の動作を詳しく説明する。図7は、ローカル変数解放処理を説明するフローチャートである。
図7において、ローカル変数解放要求が発行されると、メモリ制御部302は該ローカル変数解放要求をメモリ管理部301に転送し、転送されてきたローカル変数解放要求を受信したメモリ管理部301は、解放要求されているローカル変数の確保先の小領域の使用状況を「使用中」から「不使用中」に変更して前記確保先の小領域を解放する(ステップS21)。そして、メモリ管理部301は、確保候補位置を該解放した小領域の先頭アドレスに更新し(ステップS22)、ローカル変数解放処理を終了する。
以上の動作によりRAM103に小領域が確保・解放される様子を、具体例を示して説明する。ここで、図8に示すように、第1ブロック231、第2ブロック232、第3ブロック233の先頭アドレスが夫々0xFFFF8000、0xFFFF9000、0xFFFFA000となっており、初期状態において全ての小領域が不使用中で、第1ブロック管理情報221、第2ブロック管理情報222、第3ブロック管理情報223の確保候補位置が夫々のブロックの先頭アドレスと同値であるとする。また、ブロックメモリ管理領域220に登録される使用状況としては、各ブロックにおいて先頭からn番目の小領域について使用中であれば「1」、不使用中であれば「0」とする個別の値をn桁目に表示する2進法表示で表現することとし、ここでは2進数の値を16進数に変換した値を用いている。例えば、あるブロックにおいて、先頭から1つ目と3つ目の小領域が使用中であれば、2進数表示で「101」となるので、該ブロックの使用状況は「0x00000005」となる。初期状態においては、全ての小領域が不使用中であるとしているので、第1〜第3ブロック管理情報221〜223の使用状況は初期状態で全て0x00000000となっている。
図9は、4バイトのローカル変数A1および2バイトのローカル変数A2を使用し、さらに内部で4バイトのローカル変数B1と2バイトのローカル変数B2と1バイトのローカル変数B3とを使用する処理Bの関数を呼び出す処理Aが実行された場合のブロック管理情報の変化を説明する図である。図10は、図9に説明する各状態においてRAM103に小領域が確保・解放される様子を説明する図である。なお、以下の説明においては、メモリ故障検出部303によりどの小領域にも故障が検出されなかったとしている。
まず、図9において、ローカル変数A1を確保するローカル変数確保要求が発行されると(ステップS31)、図10に示す初期状態(図10(1))から4バイトの小領域が第1ブロック231の先頭に確保される(図10(2))。第1ブロック管理情報221は、確保候補位置が第1ブロック231の先頭から数えて2つ目の小領域の先頭アドレスである0xFFFF8004に変化し、使用状況は0x00000001に変化する(図9(2))。本具体例においては、図6ステップS14において確保候補位置を更新する際、不使用中の小領域のうち、ブロックの先頭アドレスに最も近い不使用中の小領域の先頭アドレスで更新するとしている。
同様に、ローカル変数A2を確保するローカル変数確保処理が発行されると(ステップS32)、2バイトの小領域が第2ブロック232の先頭に確保され(図10(3))、第2ブロック管理情報222は、確保候補位置(0xFFFF9002)、使用状況(0x00000001)に変化する(図9(3))。続いて、A1およびA2を使用した内部処理が実行され(ステップS33)、処理Bの関数呼び出しが実行される(ステップS34)。
処理Bにおいて、ローカル変数B1を確保するローカル変数確保要求が発行されると(ステップS41)、第1ブロックの先頭から2つ目の小領域が確保され(図10(4))、第1ブロック管理情報221は、確保候補位置(0xFFFF8008)、使用状況(0x00000003)に変化する(図9(4))。同様に、ローカル変数B2、B3のローカル変数確保要求が発行されると(ステップS42、ステップS43)、第2ブロック232の2つ目の小領域および第3ブロック233の1つ目の小領域が夫々確保され(図10(5)、(6))、第2ブロック管理情報222は、確保候補位置(0xFFFF9004)、使用状況(0x00000003)に変化し(図9(5))、第3ブロック管理情報223は確保候補位置(0xFFFFA001)、使用状況(0x00000001)に変化する(図9(6))。
処理Bにおける内部処理によりB1、B2、B3が使用され(ステップS44)、ローカル変数B1を解放するローカル変数解放要求が発行されると(ステップS45)、第1ブロックの2つ目の小領域に確保されていたローカル変数B1が解放され(図10(7))、第1ブロック管理情報221は、確保候補位置(0xFFFF8004)、使用状況(0x00000001)に変化する(図9(7))。同様に、ローカル変数B2、B3を解放するローカル変数解放要求が発行されると(ステップS46、ステップS47)、第2ブロック232の2つ目の小領域および第3ブロック233の1つ目の小領域が夫々解放され(図10(8)、(9))、第2ブロック管理情報222は、確保候補位置(0xFFFF9002)、使用状況(0x00000001)に変化し(図9(8))、第3ブロック管理情報223は確保候補位置(0xFFFFA000)、使用状況(0x00000000)に変化する(図9(9))。
処理Bが終了し、ローカル変数A1、A2を解放するローカル変数解放要求が発行されると(ステップS35、ステップS36)、第1ブロック231の1つ目の小領域と第2ブロック232の1つ目の小領域が夫々解放され(図10(10)、(11))、第1ブロック管理情報221は、確保候補位置(0xFFFF8000)、使用状況(0x00000000)に変化し(図9(10))、第2ブロック管理情報222は確保候補位置(0xFFFF9000)、使用状況(0x00000000)に変化する(図9(11))。
以上述べたように、本実施例においては、操舵補助モータ20を制御するアシスト処理を実行するCPU101と、CPU101の作業領域として動的に確保される複数の小領域を有するRAM103と、小領域に対して故障検出を行うメモリ故障検出部303と、CPU101が小領域の確保要求を発行した際、確保されていない小領域を選択してメモリ故障検出部303に逐次故障検出を実行させ、正常な小領域、すなわち故障が検出されなかった小領域が存在しているとき、該小領域を確保し、正常な小領域が存在しなかったとき、エラーを出力するメモリ制御部302およびメモリ管理部301と、を備え、エラーが出力されたとき、操舵補助処理を停止することとしたので、メモリに故障が検出された場合でも可及的に操舵補助処理を継続する仕組みを、部品点数を増やすことなく実現することが可能となる。
また、メモリ制御部302は、CPU101が小領域の確保要求を発行した際、確保されていない小領域が存在しなかったとき、エラーを出力するように構成したので、確保できる小領域がなくなったとき、アシスト処理を中止して安全性を確保することが可能となる。
また、メモリ制御部302は、CPU101が小領域の解放要求を発行した際、該当する確保されている小領域を解放するように構成したので、必要に応じて小領域の解放を行うことが可能となる。
また、夫々の小領域について確保されているか否かを示す使用状況をさらに有し、メモリ制御部302は、小領域の確保・解放に対応してメモリ管理部301に使用状況を更新させるとともに、使用状況に基づいて確保されていない小領域を選択するように構成したので、簡単に小領域の管理を行うことが可能になる。
また、小領域には、CPU101で使用するローカル変数が記憶されるように構成したので、CPU101は小領域にローカル変数を確保することが可能となる。
また、RAM103は、記憶するローカル変数のサイズに対応して異なるサイズの小領域を夫々複数有し、メモリ制御部302は、ローカル変数確保要求が発行されたとき、確保要求されたローカル変数のサイズに対応する複数の小領域のうちから確保する小領域を選択するように構成したので、RAM103のリソースを効率的に使用することが可能となる。
なお、上記実施例では、小領域にローカル変数を記憶させるとしたが、小領域に記憶させるデータはローカル変数に限られるものではない。また、RAM103にスタック領域を設け、重要度に基づいてローカル変数の確保先を小領域とスタック領域とに振り分けるようにしてもよい。
また、RAM103は、4バイトの小領域を6個と、2バイトの小領域を12個と、1バイトの小領域を24個有する構成としたが、小領域のサイズ、サイズの種類、および夫々のサイズの小領域の個数はこれに限らない。
以上のように、本発明にかかる電動パワーステアリング装置は、メモリを有する電動パワーステアリング装置に適用して有用である。
電動パワーステアリング装置の一般的な構成を示す図である。 図1のコントロールユニットのハードウェア構成を示す図である。 実施例にかかる電動パワーステアリング装置のRAMのメモリ構成例を示す図である。 実施例にかかる電動パワーステアリング装置のMCUの機能構成を説明する図である。 アシスト処理系の所定の機能部がローカル変数Lを使用する関数に基づく処理Aを実行する動作を示すフローチャートである。 ローカル変数確保処理を説明するフローチャートである。 ローカル変数解放処理を説明するフローチャートである。 RAMの初期状態の具体例を説明する図である。 ブロック管理情報の変化の具体例を説明する図である。 RAMに小領域が確保・解放される様子を説明する図である。
符号の説明
1 操向ハンドル
2 コラム軸
3 減速ギヤ
4a、4b ユニバーサルジョイント
5 ピニオンラック機構
6 タイロッド
10 トルクセンサ
11 イグニションキー
12 車速センサ
13 電源リレー
14 バッテリ
20 操舵補助モータ
21 位置センサ
30 コントロールユニット
100 MCU
101 CPU
102 ROM
103 RAM
104 EEPROM
105 A/D変換器
106 インターフェース
107 バス
110 FETプリドライバ回路
120 モータ駆動回路
130 電流検出回路
140 位置検出回路
200 静的領域
210 動的領域
220 ブロックメモリ管理領域
221〜223 ブロック管理情報
230 ブロックメモリ領域
231〜233 ブロック
301 メモリ管理部
302 メモリ制御部
303 メモリ故障検出部
304 フェールセーフ処理部
400 トルク制御系モジュール
401 アシストマップ
402 加算部
403 位相補償部
410 補償制御系モジュール
420 モータ電流制御系モジュール
421 減算部
422 PI制御部
430 モータ電流補助制御系モジュール
431 補助値演算部
435 加算部
440 電流指令値演算部
450 PWM制御部

Claims (6)

  1. 車両のステアリング系に発生する操舵トルクおよび前記車両の速度に基づいて演算した操舵補助指令値と、前記ステアリング系に操舵補助力を付与する操舵補助モータの電流検出値と、に基づいて前記操舵補助モータを制御する電動パワーステアリング装置において、
    前記操舵補助モータを制御する操舵補助処理を実行する制御手段と、
    前記制御手段の作業領域として動的に確保される複数の小領域を有するメモリと、
    小領域に対して故障検出を行うメモリ故障検出手段と、
    前記制御手段が小領域の確保要求を発行した際、前記複数の小領域の中で確保されていない小領域を選択して前記メモリ故障検出手段に逐次故障検出を実行させ、小領域に故障が検出された場合に、他の小領域に正常な小領域が存在しているとき、該小領域を確保し、正常な小領域が存在しなかったとき、エラーを出力するメモリ制御管理手段と、
    を備え、
    前記制御手段は、前記メモリ制御管理手段によって小領域が確保されたとき、当該小領域を使用して前記操舵補助処理を継続し、前記メモリ制御管理手段によって前記エラーが出力されたとき、前記操舵補助処理を停止させることを特徴とする電動パワーステアリング装置。
  2. 前記メモリ制御管理手段は、前記制御手段が小領域の確保要求を発行した際、確保されていない小領域が存在しなかったとき、エラーを出力する、ことを特徴とする請求項1に記載の電動パワーステアリング装置。
  3. 前記メモリ制御管理手段は、前記制御手段が小領域の解放要求を発行した際、解放要求された小領域を解放する、ことを特徴とする請求項1または2に記載の電動パワーステアリング装置。
  4. 夫々の小領域について確保されているか否かを示す使用状況情報をさらに有し、
    前記メモリ制御管理手段は、小領域の確保・解放に対応して前記使用状況情報を更新するとともに、前記使用状況情報に基づいて確保されていない小領域を選択する、
    ことを特徴とする請求項3に記載の電動パワーステアリング装置。
  5. 前記小領域には、前記制御手段で使用するローカル変数が記憶される
    ことを特徴とする請求項3または4に記載の電動パワーステアリング装置。
  6. 前記メモリは、記憶するローカル変数のサイズに対応して異なるサイズの小領域を夫々複数有し、
    前記メモリ制御管理手段は、ローカル変数確保要求が発行されたとき、確保要求されたローカル変数のサイズに対応する複数の小領域のうちから確保する小領域を選択する、
    ことを特徴とする請求項5に記載の電動パワーステアリング装置。
JP2008215088A 2008-08-25 2008-08-25 電動パワーステアリング装置 Active JP5233506B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008215088A JP5233506B2 (ja) 2008-08-25 2008-08-25 電動パワーステアリング装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008215088A JP5233506B2 (ja) 2008-08-25 2008-08-25 電動パワーステアリング装置

Publications (2)

Publication Number Publication Date
JP2010047203A JP2010047203A (ja) 2010-03-04
JP5233506B2 true JP5233506B2 (ja) 2013-07-10

Family

ID=42064666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008215088A Active JP5233506B2 (ja) 2008-08-25 2008-08-25 電動パワーステアリング装置

Country Status (1)

Country Link
JP (1) JP5233506B2 (ja)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5125941A (ja) * 1974-08-28 1976-03-03 Tokyo Shibaura Electric Co
JPH0277954A (ja) * 1988-09-14 1990-03-19 Fujitsu Ltd メモリ自動再配列方式
JPH0713851A (ja) * 1993-06-28 1995-01-17 Daikin Ind Ltd メモリ管理方法およびその装置
JPH09259046A (ja) * 1996-03-22 1997-10-03 Kokusai Electric Co Ltd フラッシュメモリへのデータ格納方法及びフラッシュメモリからのデータ読み込み方法
JP3726663B2 (ja) * 2000-09-07 2005-12-14 日産自動車株式会社 電子制御装置の制御データ記憶装置
JP3908072B2 (ja) * 2002-04-05 2007-04-25 株式会社ジェイテクト 電動パワーステアリング制御装置の演算監視方法及び電動パワーステアリング制御装置
JP2004133635A (ja) * 2002-10-09 2004-04-30 Honda Motor Co Ltd 制御用コンピュータ
JP4184354B2 (ja) * 2005-03-23 2008-11-19 三菱電機株式会社 コントロールユニット
JP4577075B2 (ja) * 2005-04-22 2010-11-10 株式会社デンソー 自動車用制御ユニット
JP2006331086A (ja) * 2005-05-26 2006-12-07 Nsk Ltd メモリ診断方法及びその機能を具備した電動パワーステアリング装置

Also Published As

Publication number Publication date
JP2010047203A (ja) 2010-03-04

Similar Documents

Publication Publication Date Title
JP5343599B2 (ja) モータ制御装置及び電動パワーステアリング装置
JP5070867B2 (ja) モータ制御装置及び電動パワーステアリング装置
WO2010106764A1 (ja) モータ制御装置及び電動パワーステアリング装置
US9407190B2 (en) Electric power steering apparatus
US8996252B2 (en) Electric power steering apparatus
JP5018240B2 (ja) 電動パワーステアリング装置
JP5338969B2 (ja) 電源状態診断方法及び装置
JP5151791B2 (ja) 電動パワーステアリング装置
JP2008172896A (ja) 車両用電動機の制御装置
JP2008137486A (ja) 電動パワーステアリング装置
JP2021035178A (ja) モータ制御装置
JP5233506B2 (ja) 電動パワーステアリング装置
JP5169410B2 (ja) 電動パワーステアリング装置
JP2009056820A (ja) 電動パワーステアリング装置の制御装置
JP2010188796A (ja) 電動パワーステアリング装置
JP5169411B2 (ja) 電動パワーステアリング装置
JP2008273263A (ja) 電動パワーステアリング装置の制御装置
JP2009056819A (ja) 電動パワーステアリング装置の制御装置
WO2023063253A1 (ja) 負荷駆動装置
JP5169412B2 (ja) 電動パワーステアリング装置
JP2009023582A (ja) 電動パワーステアリング装置
JP5338060B2 (ja) 電動パワーステアリング装置
KR20210012251A (ko) 전동 조향 장치 및 방법
JP2009214608A (ja) 電動パワーステアリング装置
JP2009113525A (ja) 電動パワーステアリング装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130226

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130311

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5233506

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160405

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250