以下、本発明による回転電機制御装置を図面に基づいて説明する。以下、複数の実施形態において、実質的に同一の構成には同一の符号を付して説明を省略する。
(第1実施形態)
第1実施形態を図1~図11に示す。図1に示すように、回転電機制御装置としてのECU10は、回転電機であるモータ80の駆動を制御するものであって、モータ80とともに、例えば車両のステアリング操作を補助するための操舵装置としての電動パワーステアリング装置8に適用される。
図1は、電動パワーステアリング装置8を備えるステアリングシステム90の構成を示す。ステアリングシステム90は、操舵部材であるステアリングホイール91、ステアリングシャフト92、ピニオンギア96、ラック軸97、車輪98、および、電動パワーステアリング装置8等を備える。
ステアリングホイール91は、ステアリングシャフト92と接続される。ステアリングシャフト92には、操舵トルクを検出するトルクセンサ94が設けられる。トルクセンサ94は、第1センサ部194および第2センサ部294を有しており、各々自身の故障検出ができるセンサが二重化されている。ステアリングシャフト92の先端には、ピニオンギア96が設けられる。ピニオンギア96は、ラック軸97に噛み合っている。ラック軸97の両端には、タイロッド等を介して一対の車輪98が連結される。
運転者がステアリングホイール91を回転させると、ステアリングホイール91に接続されたステアリングシャフト92が回転する。ステアリングシャフト92の回転運動は、ピニオンギア96によってラック軸97の直線運動に変換される。一対の車輪98は、ラック軸97の変位量に応じた角度に操舵される。
電動パワーステアリング装置8は、モータ80、モータ80の回転を減速してステアリングシャフト92に伝える動力伝達部としての減速ギア89、および、ECU10等を備える。すなわち、本実施形態の電動パワーステアリング装置8は、所謂「コラムアシストタイプ」であり、ステアリングシャフト92が駆動対象といえる。モータ80の回転をラック軸97に伝える所謂「ラックアシストタイプ」等としてもよい。
図1~図4に示すように、モータ80は、操舵に要するトルクの一部または全部を出力するものであって、電源としてのバッテリ101、201から電力が供給されることにより駆動され、減速ギア89を正逆回転させる。モータ80は、3相ブラシレスモータであって、ロータ860およびステータ840を有する。
モータ80は、第1モータ巻線180および第2モータ巻線280を有する。モータ巻線180、280は電気的特性が同等であり、共通のステータ840に、互いに電気角30[deg]ずらしてキャンセル巻きされる。これに応じて、モータ巻線180、280には、位相φが30[deg]ずれた相電流が通電されるように制御される。通電位相差を最適化することで、出力トルクが向上する。また、6次のトルクリプルを低減することができ、騒音、振動の低減することができる。また、電流も分散されることで発熱が分散、平準化されるため、各センサの検出値やトルク等、温度依存の系統間誤差を低減可能であるとともに、通電可能な電流量を増やすことができる。なお、モータ巻線180、280は、キャンセル巻きされていなくてもよく、電気的特性が異なっていてもよい。
以下、第1モータ巻線180の通電制御に係る第1インバータ部120および第1制御部150等の組み合わせを第1系統L1、第2モータ巻線280の通電制御に係る第2インバータ部220および第2制御部250等の組み合わせを第2系統L2とする。また、第1系統L1に係る構成を主に100番台で付番し、第2系統L2に係る構成を主に200番台で付番する。また、第1系統L1および第2系統L2において、同様または類似の構成には、下2桁が同じとなるように付番する。以下適宜、「第1」を添え字の「1」、「第2」を添え字の「2」として記載する。
駆動装置40は、モータ80の軸方向の一方側にECU10が一体的に設けられており、いわゆる「機電一体型」であるが、モータ80とECU10とは別途に設けられていてもよい。ECU10は、モータ80の出力軸とは反対側において、シャフト870の軸Axに対して同軸に配置されている。ECU10は、モータ80の出力軸側に設けられていてもよい。機電一体型とすることで、搭載スペースに制約のある車両において、ECU10とモータ80とを効率的に配置することができる。
モータ80は、ステータ840、ロータ860、および、これらを収容するハウジング830等を備える。ステータ840は、ハウジング830に固定されており、モータ巻線180、280が巻回される。ロータ860は、ステータ840の径方向内側に設けられ、ステータ840に対して相対回転可能に設けられる。
シャフト870は、ロータ860に嵌入され、ロータ860と一体に回転する。シャフト870は、軸受835、836により、ハウジング830に回転可能に支持される。シャフト870のECU10側の端部は、ハウジング830からECU10側に突出する。シャフト870のECU10側の端部には、マグネット875が設けられる。
ハウジング830は、リアフレームエンド837を含む有底筒状のケース834、および、ケース834の開口側に設けられるフロントフレームエンド838を有する。ケース834とフロントフレームエンド838とは、ボルト等により互いに締結されている。リアフレームエンド837には、リード線挿通孔839が形成される。リード線挿通孔839には、モータ巻線180、280の各相と接続されるリード線185、285が挿通される。リード線185、285は、リード線挿通孔839からECU10側に取り出され、基板470に接続される。
ECU10は、カバー460、カバー460に固定されているヒートシンク465、ヒートシンク465に固定されている基板470、および、基板470に実装される各種の電子部品等を備える。カバー460は、外部の衝撃から電子部品を保護したり、ECU10の内部への埃や水等の浸入を防止したりする。カバー460は、カバー本体461、および、コネクタ部103、203が一体に形成される。コネクタ部103、203は、カバー本体461と別体であってもよい。コネクタ部103、203の端子463は、図示しない配線等を経由して基板470と接続される。コネクタ数および端子数は、信号数等に応じて適宜変更可能である。コネクタ部103、203は、駆動装置40の軸方向の端部に設けられ、モータ80と反対側に開口する。
基板470は、例えばプリント基板であり、リアフレームエンド837と対向して設けられる。基板470には、2系統分の電子部品が系統ごとに独立して実装されており、完全冗長構成をなしている。本実施形態では、1枚の基板470に電子部品が実装されているが、複数枚の基板に電子部品を実装するようにしてもよい。
基板470の2つの主面のうち、モータ80側の面をモータ面471、モータ80と反対側の面をカバー面472とする。図3に示すように、モータ面471には、インバータ部120を構成するスイッチング素子121、インバータ部220を構成するスイッチング素子221、角度センサ126、226、カスタムIC135、235等が実装される。角度センサ126、226は、マグネット875の回転に伴う磁界の変化を検出可能なように、マグネット875と対向する箇所に実装される。
カバー面472には、コンデンサ128、228、インダクタ129、229、および、制御部150、250を構成するマイコン等が実装される。図3では、制御部150、250を構成するマイコンについて、それぞれ「150」、「250」を付番した。コンデンサ128、228は、バッテリ101、201から入力された電力を平滑化する。また、コンデンサ128、228は、電荷を蓄えることで、モータ80への電力供給を補助する。コンデンサ128、228、および、インダクタ129、229は、フィルタ回路を構成し、バッテリを共用する他の装置から伝わるノイズを低減するとともに、駆動装置40からバッテリを共用する他の装置に伝わるノイズを低減する。なお、図3中には図示を省略しているが、電源リレー122、222、モータリレー125、225、および、電流センサ127、227等についても、モータ面471またはカバー面472に実装される。
図4に示すように、ECU10は、インバータ部120、220、および、制御部150、250等を備える。ECU10には、コネクタ部103、203が設けられる。第1コネクタ部103には、第1電源端子105、第1グランド端子106、第1IG端子107、第1通信端子108、および、第1トルク端子109が設けられる。
第1電源端子105は、図示しないヒューズを経由して第1バッテリ101に接続される。第1電源端子105を経由して第1バッテリ101の正極から供給された電力は、電源リレー122、インバータ部120、および、モータリレー125を経由して、第1モータ巻線180に供給される。第1グランド端子106は、ECU10の内部の第1系統のグランドである第1グランドGND1と、ECU10の外部の第1系統のグランドである第1外部グランドGB1とに接続される。車のシステムにおいては金属ボデーが共通のGNDプレーンとなっており、第1外部グランドGB1はGNDプレーン上の接続ポイントの1つを示し、第2バッテリ201の負極もこのGNDプレーン上の接続ポイントに接続される。
第1IG端子107は、イグニッションスイッチ等である車両の始動スイッチと連動してオンオフ制御される第1スイッチを経由して第1バッテリ101の正極と接続される。第1IG端子107を経由して第1バッテリ101から供給された電力は、第1カスタムIC135に供給される。第1カスタムIC135には、第1ドライバ回路136、第1回路電源137、図示しないマイコン監視モニタ、および、図示しない電流モニタアンプ等が含まれる。
第1通信端子108は、第1車両通信回路111と、第1車両通信網195とに接続される。第1車両通信網195と第1制御部150とは、第1車両通信回路111を経由して、送受信が可能に接続される。また、第1車両通信網195と第2制御部250とは、情報を受信可能に接続され、第2制御部250が故障しても、第1制御部150を含む第1車両通信網195に影響がないように構成される。
第1トルク端子109は、トルクセンサ94の第1センサ部194と接続される。第1センサ部194の検出値は、第1トルク端子109および第1トルクセンサ入力回路112を経由して、第1制御部150に入力される。ここで第1センサ部194および第1制御部150は、このトルクセンサ入力回路系の故障が検出されるように構成される。
第2コネクタ部203には、第2電源端子205、第2グランド端子206、第2IG端子207、第2通信端子208、および、第2トルク端子209が設けられる。第2電源端子205は、図示しないヒューズを経由して第2バッテリ201の正極に接続される。第2電源端子205を経由して第2バッテリ201から供給された電力は、電源リレー222、インバータ部220、および、モータリレー225を経由して、第2モータ巻線280に供給される。第2グランド端子206は、ECU10の内部の第2系統のグランドである第2グランドGND2と、ECU10の外部の第2系統のグランドである第2外部グランドGB2とに接続される。車のシステムにおいては金属ボデーが共通のGNDプレーンとなっており、第2外部グランドGB2はGNDプレーン上の接続ポイントの1つを示し、さらに、第2バッテリ201の負極もこのGNDプレーン上の接続ポイントに接続される。ここで、少なくとも異なった系統は、GNDプレーン上の同一の接続ポイントに接続しないよう構成される。
第2IG端子207は、車両の始動スイッチと連動してオンオフ制御される第2スイッチを経由して第2バッテリ201の正極と接続される。第2IG端子207を経由して第2バッテリ201から供給された電力は、第2カスタムIC235に供給される。第2カスタムIC235には、第2ドライバ回路236、第2回路電源237、図示しないマイコン監視モニタ、および、図示しない電流モニタアンプ等が含まれる。
第2通信端子208は、第2車両通信回路211と、第2車両通信網295とに接続される。第2車両通信網295と第2制御部250とは、第2車両通信回路211を経由して、送受信が可能に接続される。また、第2車両通信網295と第1制御部150とは情報を受信可能に接続され、第1制御部150が故障しても、第2制御部250を含む第2車両通信網295に影響がないように構成される。
第2トルク端子209は、トルクセンサ94の第2センサ部294と接続される。第2センサ部294の検出値は、第2トルク端子209および第2トルクセンサ入力回路212を経由して、第2制御部250に入力される。ここで第2センサ部294および第2制御部250は、このトルクセンサ入力回路系の故障が検出されるように構成される。
図4では、通信端子108、208は、それぞれ別途の車両通信網195、295に接続されているが、同一の車両通信網に接続されてもよい。また、図4では、車両通信網195、295として、CAN(Controller Area Network)を例示しているが、CAN-FD(CAN with Flexible Data rate)やFlexRay等、CAN以外の規格のものを用いてもよい。
第1インバータ部120は、スイッチング素子121を有する3相インバータであって、第1モータ巻線180の電力を変換する。第2インバータ部220は、スイッチング素子221を有する3相インバータであって、第2モータ巻線280の電力を変換する。
第1電源リレー122は、第1電源端子105と第1インバータ部120との間に設けられる。第1モータリレー125は、第1インバータ部120と第1モータ巻線180との間の各相に設けられる。第2電源リレー222は、第2電源端子205と第2インバータ部220との間の各相に設けられる。第2モータリレー225は、第2インバータ部220と第2モータ巻線280との間に設けられる。
本実施形態では、スイッチング素子121、221、電源リレー122、222、および、モータリレー125、225は、いずれもMOSFETであるが、IGBT等の他の素子を用いてもよい。図5に示すように、第1電源リレー122をMOSFETのように寄生ダイオードを有する素子で構成する場合、寄生ダイオードの向きが逆向きとなるように2つの素子123、124を直列に接続することが望ましい。第2電源リレー222も同様であるので図示を省略する。これにより、バッテリ101、201が誤って逆向きに接続された場合に、逆向きの電流が流れるのを防ぐことができる。電源リレー122、222は、メカリレーであってもよい。
図4に示すように、第1スイッチング素子121、第1電源リレー122および第1モータリレー125は、第1制御部150によりオンオフ作動が制御される。第2スイッチング素子221、第2電源リレー222および第2モータリレー225は、第2制御部250によりオンオフ作動が制御される。
第1角度センサ126は、モータ80の回転角を検出し、検出値を第1制御部150に出力する。第2角度センサ226は、モータ80の回転角を検出し、検出値を第2制御部250に出力する。ここで、第1角度センサ126と第1制御部150、および第2角度センサ226と第2制御部250は、各々の角度センサ入力回路系の故障が検出されるように構成される。
第1電流センサ127は、第1モータ巻線180の各相に通電される電流を検出する。第1電流センサ127の検出値は、カスタムIC135内の増幅回路にて増幅され、第1制御部150に出力される。第2電流センサ227は、第2モータ巻線280の各相に通電される電流を検出する。第2電流センサ227の検出値は、カスタムIC235内の増幅回路にて増幅され、第2制御部250に出力される。
第1ドライバ回路136は、第1制御部150からの制御信号に基づき、第1スイッチング素子121、第1電源リレー122および第1モータリレー125を駆動する駆動信号を各素子に出力する。第2ドライバ回路236は、第2制御部250からの制御信号に基づき、第2スイッチング素子221、第2電源リレー222および第2モータリレー225を駆動する駆動信号を各素子に出力する。
回路電源137は、電源端子105およびIG端子107に接続され、第1制御部150に電力を供給する。回路電源237は、電源端子205およびIG端子207に接続され、第2制御部250に電力を供給する。
制御部150、250は、マイコン等を主体として構成され、内部にはいずれも図示しないCPU、ROM、RAM、I/O及び、これらの構成を接続するバスライン等を備えている。制御部150、250における各処理は、ROM等の実体的なメモリ装置(すなわち、読み出し可能非一時的有形記録媒体)に予め記憶されたプログラムをCPUで実行することによるソフトウェア処理であってもよいし、専用の電子回路によるハードウェア処理であってもよい。ここで、第1制御部150、および第2制御部250は、例えばロックドステップデュアルマイコン等を使用し、各々の自身の故障が検出されるように構成される。
第1制御部150は、駆動制御部151、モード選択部152、異常監視部155、および、記憶部156を有する。駆動制御部151は、第1スイッチング素子121のオンオフ作動を制御することで、第1モータ巻線180の通電を制御する。また、駆動制御部151は、第1電源リレー122および第1モータリレー125のオンオフ作動を制御する。
第2制御部250は、駆動制御部251、モード選択部152、異常監視部255、および、記憶部256を有する。駆動制御部251は、第2スイッチング素子221のオンオフ作動を制御することで、第2モータ巻線280の通電を制御する。また、駆動制御部251は、第2電源リレー222および第2モータリレー225のオンオフ作動を制御する。駆動制御部151、251は、例えば電流フィードバック制御によりモータ80の駆動を制御するが、モータ制御の制御手法の詳細は、電流フィードバック制御以外であってもよい。
モード選択部152、252は、モータ80の駆動制御に係る駆動モードを選択する。本実施形態の駆動モードには、協調駆動モード、独立駆動モード、および、片系統駆動モードが含まれ、通常時、協調駆動モードによりモータ80の駆動を制御する。ここで、通常時とは、系統L1、L2が正常であって、マイコン間通信が正常であるときとする。
協調駆動モードでは、制御部150、250が共に正常であって、マイコン間通信が正常であるとき、少なくとも1つの値を系統間にて共有して、各系統を協調させてモータ80の駆動を制御する。本実施形態では、制御情報として電流指令値、電流検出値および電流制限値を共有する。また本実施形態では、第1制御部150をマスター制御部、第2制御部250をスレーブ制御部とし、第1制御部150は、電流指令値を第2制御部250へ送信し、制御部150、250にて同一の電流指令値を用いることで電流指令値を共有する。共有される電流指令値は、電流制限後の値であってもよいし、電流制限前の値としてもよい。本実施形態では、協調駆動モードにおいて、2系統の電流和と電流差を制御する、いわゆる「和と差の制御」にて電流制御を行う。
独立駆動モードでは、他系統の制御情報を用いず、各系統が独立して、2系統にてモータ80の駆動を制御する。片系統駆動モードでは、一方の系統を停止し、他系統の制御情報を用いず、1系統にてモータ80の駆動を制御する。ここで、3系統以上であっても、1系統にてモータ80を駆動する駆動モードを「片系統駆動モード」とする。
各駆動モードでの出力特性を図6および図7に基づいて説明する。本実施形態では、モータ80から出力される出力トルクであるアシストトルクTaを、操舵トルクTsに応じて設定している。図6では、横軸を操舵トルクTs、縦軸をアシストトルクTaとし、協調駆動モードおよび独立駆動モードにおいて、2系統合計の出力を実線、第1系統L1の出力を破線で示す。
図6に示すように、アシストトルクTaは、操舵トルクTsが上限到達値Ts2までの範囲において、操舵トルクTsが大きくなるにつれて大きくなり、操舵トルクTsが上限到達値Ts2以上の範囲において、出力上限値Ta_max2となる。破線で示すように、第1系統L1と第2系統L2とで性能等が同じであれば、第1系統L1と第2系統L2とで1/2ずつモータ80の出力を担う。すなわち、1系統での出力上限値Ta_max1は、2系統での出力上限値Ta_max2の1/2となっている。また、1系統での操舵トルクTsに対するアシストトルクTaの増加割合は、2系統駆動時の1/2となっている。ここで、独立駆動モードにて1系統での駆動を行う場合、破線で示すように、アシストトルクTaは、2系統駆動時の1/2となる。なお、図6では、アシストトルクTaは、出力上限値Ta_max2までの範囲にて、操舵トルクTsの増加に伴って線形的に増加しているが、非線形で増加するようにしてもよい。
片系統駆動モードでの出力特性を図7に示す。図7では、片系統駆動時の第1系統L1の出力を実線、通常時の2系統合計の出力を破線で示す。片系統駆動モードにおいて、操舵トルクTsが上限到達値Ts1までの範囲にて、操舵トルクTsに対するアシストトルクTaの増加割合を2倍にすることで、操舵トルクTsに対するアシストトルクTaを2系統駆動時と同じにしている。また、操舵トルクTsが上限到達値Ts1より大きい範囲において、アシストトルクTaは、操舵トルクTsによらず、片系統駆動での出力上限値Ta_max1となり、2系統駆動時よりアシストトルクTaが小さくなる。なお、定格電流等に余裕があれば、片系統駆動モードにおける出力上限値Ta_max1を2系統駆動での出力上限値Ta_max2以下の範囲にて引き上げてもよい。
図4に示すように、異常監視部155は、自系統である第1系統L1の異常の監視を行う。また、自系統にて自系統を停止すべき異常が生じた場合、第1制御部150は、第1インバータ部120、第1電源リレー122および第1モータリレー125の少なくとも1つをオフにする。
また、異常監視部155は、第2制御部250との通信状態、および、第2系統L2の動作状態を監視する。第2系統L2の動作状態の監視方法として第2系統L2の異常を検出したときに自系統を停止する回路(例えば、第2インバータ部220、第2電源リレー222、および第2モータリレー225)またはマイコン間通信に係る通信線のうち、少なくとも1つの状態を監視し、非常停止しているか否かを判断する。本実施形態では、第2ドライバ回路236から第2電源リレー222に出力される第2リレーゲート信号Vrg2を取得する他系統リレー監視回路139が設けられ、第2リレーゲート信号Vrg2に基づいて第2電源リレー222の状態を監視する。
異常監視部255は、自系統である第2系統L2の異常の監視を行う。また、自系統にて自系統を停止すべき異常が生じた場合、第2制御部250は、第2インバータ部220、第2電源リレー222および第2モータリレー225の少なくとも1つをオフにする。
異常監視部255は、第1制御部150との通信状態、および、第1系統L1の動作状態を監視する。第1系統L1の動作状態の監視方法として第1系統L1の異常を検出したときに自系統を停止する回路(例えば、第1インバータ部120、第1電源リレー122、および第1モータリレー125)またはマイコン間通信に係る通信線のうち、少なくとも1つの状態を監視し、非常停止しているか否かを判断する。本実施形態では、第1ドライバ回路136から第1電源リレー122に出力される第1リレーゲート信号Vrg1を取得する他系統リレー監視回路239が設けられ、第1リレーゲート信号Vrg1に基づいて第1電源リレー122の状態を監視する。
第2制御部250における第1系統L1の監視において、他系統リレー情報として、リレーゲート信号Vrg1に替えて、電源リレー122を構成する2つの素子123、124の中間電圧、制御部150から出力されるリレー駆動信号、または、電源リレー122とインバータ部120との間のリレー後電圧を用いてもよい。第1制御部150における第2系統L2の監視についても同様である。
以下、他系統リレー監視回路から取得される情報を「他系統リレー情報」、他系統リレー情報に基づいて他系統の動作状態を監視することを「他系統リレー監視」、監視されるリレーを「他系統リレー」という。また、他系統リレーがオフである旨の情報が取得された場合、「他系統リレー情報が異常である」とする。
異常監視部155、255は、マイコン間通信異常が生じており、かつ、他系統リレー情報が異常である場合、他系統が異常であると判定し、正常系統での片系統駆動に移行し、モータ80の駆動制御を継続する。また、異常監視部155、255は、マイコン間通信異常が生じており、かつ、他系統リレー情報が正常である場合、他系統の制御部は正常であって、マイコン間通信異常が生じていると判定する。すなわち、本実施形態では、マイコン間通信状態および他系統リレー監視により、生じている異常が、他系統の制御部の異常なのか、マイコン間通信異常なのか、を切り分けている。
記憶部156は、不揮発性メモリであって、異常監視部155にて検出された異常に係る異常情報が記憶される。記憶部256は、不揮発性メモリであって、異常監視部255にて検出された異常に係る異常情報が記憶される。記憶部156、256に記憶される異常情報には、他系統制御部異常に係る情報、マイコン間通信異常に係る情報、および、他系統未起動に関する情報等が含まれる。記憶部156、256に記憶された異常情報は、異常解析に用いられる。以下適宜、異常情報を「ダイアグ」とする。
ところで、マイコン間通信異常は、ECU10内の内部故障の他に、バッテリ101、201の異常やハーネスの断線等、ECU10の外部の電源装置の異常による他系統未起動時にも起こりうる。ここで、ECU10の外部要因による通信異常を、マイコン間通信異常として記憶部156、256に記憶すると、ECUC10の内部異常によりマイコン間通信異常が生じていたのか、外部異常によりマイコン間通信異常が生じていたのかの切り分けが困難となり、ECU10の誤交換の虞がある。
そこで本実施形態では、制御部150、250の起動時に、他系統の起動状態を監視し、他系統が未起動の場合には、ECU10内部のマイコン間通信異常の異常監視をマスクする。
本実施形態の異常監視処理を図8のフローチャートに基づいて説明する。この処理は、制御部150、250にて、共通に実施される。実際には、他の異常に係る監視処理も行われるが、ここでは、他系統異常およびマイコン間通信異常に着目して簡略的に記載する。各判定は1回での判定ではなく、所定時間継続や、所定期間内に所定回数積算にて判定するようにしてもよい。以下、ステップS101の「ステップ」を省略し、単に記号「S」と記す。他のステップも同様である。
S101では、制御部150、250は、マイコン間通信が異常か否か判断する。マイコン間通信が正常である場合(S101:NO)、S109へ移行する。マイコン間通信が異常であると判断された場合(S101:YES)、S102へ移行する。
S102では、制御部150、250は、他系統リレー情報が異常か否か判断する。本実施形態では、リレーゲート信号Vrg2、Vrg1の電圧が判定閾値より低い場合、他系統リレー情報が異常であると判断する。他系統リレー情報が正常であると判断された場合(S102:NO)、S103へ移行し、駆動モードを独立駆動モードとし、異常情報としてマイコン間通信異常を記憶部156、256に記憶させる。他系統リレー情報が異常であると判断された場合(S102:YES)、S104へ移行する。
S104では、制御部150、250は、起動後、一度は正常にマイコン間通信が成立したか否か判断する。一度は正常にマイコン間通信が成立したと判断された場合(S104:YES)、S105へ移行し、駆動モードを片系統駆動モードとする。また、異常情報として他系統マイコン異常を記憶部156、256に記憶させ、マイコン間通信異常監視をマスクする。起動後、一度も正常にマイコン間通信が成立していないと判断された場合(S104:NO)、S106へ移行する。
S106では、制御部150、250は、自身のマイコンが起動してから、待機時間Twが経過したか否か判断する。ここでは、未起動カウンタのカウント値Csが待機判定値Cthより大きくなった場合、待機時間Twが経過したとみなす。待機時間Twは、通常の起動遅れとして許容可能な任意の時間に設定される。マイコンが起動してから待機時間Twが経過していないと判断された場合(S106:NO)、駆動モードを独立駆動モードとし、マイコン間通信異常監視および他系統マイコン異常監視をマスクする。このとき、他系統は未起動であるので、アシストトルクTaは2系統駆動時の1/2となる。また、未起動カウンタをインクリメントし、S101へ戻る。マイコンが起動してから待機時間Twが経過したと判断された場合(S106:YES)、S108へ移行する。
S108では、制御部150、250は、駆動モードを片系統駆動モードとする。また、異常情報として他系統未起動を記憶部156、256に記憶させ、マイコン間通信異常監視および他系統マイコン異常監視をマスクする。
マイコン間通信が正常である場合に移行するS109では、制御部150、250は、他系統の駆動モードが片系統駆動モードか否か判断する。他系統の駆動モードが片系統駆動モードであると判断された場合(S109:YES)、すなわち他系統起動後、待機時間Twが経過しており、すでに他系統が片系統駆動モードに移行している場合、S110へ移行し、自系統でのアシストを停止する。なお、マイコンが正常に起動しているので、他系統監視は行ってもよい。他系統の駆動モードが片系統駆動ではないと判断された場合(S109:NO)、S111へ移行し、駆動モードを協調駆動モードとし、他系統監視を実施する。
本実施形態のマイコン起動時処理を図9~図11のタイムチャートに基づいて説明する。図9では、共通時間軸を横軸とし、上段に先に起動したマイコン、下段に起動しないマイコンについて示す。先に起動したマイコンについて、上段から、マイコン電源、マイコン間通信、他系統電圧、異常監視無効フラグ、未起動カウンタ、駆動モード、および、ダイアグを示す。他系統電圧は、他系統リレー情報に基づく電圧であり、他系統が正常に駆動している場合の電圧を正常電圧Vxとする。正常電圧Vxは、監視箇所の電圧に応じて設定される。また、起動しないマイコンについて、上段から、マイコン電源、マイコン間通信、および、駆動モードを示す。図10および図11では、起動しないマイコンを、後に起動したマイコンに読み替える。以下、第1制御部150のマイコンが先に起動し、第2制御部250のマイコンが起動しない、または、後で起動するものとして説明する。後述の実施形態の図13および図15も同様とする。
図9に示すように、時刻x10にて第1制御部150のマイコン電源がオンになり、第2制御部250のマイコン電源はオフである。以下適宜、制御部250、250のマイコン電源がオンになることを「制御部起動」、マイコン電源がオフであることを「制御部未起動」とする。第2制御部250が未起動であると、第1制御部150は、第2制御部250とのマイコン間通信ができず、マイコン間通信異常状態となる。また、他系統電圧は略0である。このとき、第2制御部250の起動遅れか、第2制御部250の異常かの切り分けができないため、異常監視無効フラグをセットして異常監視を無効にし、未起動カウンタによる未起動時間の計時を開始する。また、独立駆動モードにてモータ80の駆動を開始する。ここでは、第1系統L1が独立駆動であり、第2系統L2が駆動していないので、モータ80の出力は、2系統駆動時の1/2となる(図6参照)。
ここで、異常監視無効フラグがセットされているときに監視が無効化されるのは、ECU10の外部電源の異常を、ECU10の内部異常と誤認識する虞のある異常である。誤認識の虞のある異常とは、他系統状態に係る異常であって、本実施形態では、異常監視無効フラグがセットされている場合、マイコン間通信の監視、および、他系統リレーの監視による他系統マイコンの監視を無効化する。
なお、外部電源異常と内部異常とを誤認識する虞のない異常、すなわち自系統状態に係る異常については、異常監視無効化フラグがセットされていても無効化せず、監視を実施する。第1系統L1において、異常監視無効化フラグがセットされていても無効化されない監視項目には、第1インバータ部120および第1モータ巻線180等を含むモータ駆動部の異常、トルクセンサ94の第1センサ部194の異常、および、角度センサ126の異常等が含まれる。また第2系統L2において、異常監視無効化フラグがセットされていても無効化されない監視項目には、第2インバータ部220および第2モータ巻線280等を含むモータ駆動部の異常、トルクセンサ94の第2センサ部294の異常、および、角度センサ226の異常等が含まれる。
第1制御部150の起動から待機時間Twが経過した時刻x11において、第2制御部250の未起動状態が継続している。そのため、第1制御部150は、駆動モードを片系統駆動モードに変更し、ダイアグとして他系統未起動を記憶部156に記憶させる。
図10では、時刻x11までの処理は、図9と同様である。図10に示すように、第1系統L1の駆動モードが片系統駆動モードに移行した時刻x11以降の時刻x12に第2制御部250が起動した場合、遅れて起動した第2制御部250は、アシスト停止状態とし、第2系統L2でのアシストを行わない。
参考例として、第1系統L1にて既に片系統駆動を行っているところで、第2系統L2を独立駆動することによる出力が上乗せされると、操舵トルクTsが上限到達値Ts2までの範囲にて、過出力となる(図16参照)。本実施形態では、第1系統L1にて既に片系統駆動を行っている場合、第2系統L2をアシスト停止とするので、このような過出力を防ぐことができる。なお、図16では、協調駆動モードでの2系統での出力を破線、片系統駆動モードでの第1系統L1の出力を一点鎖線、独立駆動モードでの第2系統L2の出力を2点鎖線、片系統駆動モードでの第1系統L1の出力に第2系統L2の出力を加えた2系統での出力を実線で示した。
図11では、時刻x20の処理は、図9中のx10と同様である。図11の例では、待機時間Twが経過する前の時刻x21にて、第2制御部250が起動し、マイコン間通信、および、他系統電圧が正常になっている。この場合、制御部150、250は、駆動モードを協調駆動モードとし、異常監視無効フラグをリセットし、他系統監視を有効にする。また、図示は省略しているが、未起動カウンタも適宜リセットする。
以上説明したように、ECU10は、モータ巻線180、280を有するモータ80の駆動を制御するものであって、複数のインバータ部120、220と、複数の制御部150、250と、を備える。インバータ部120、220は、モータ巻線180、280の通電を切り替える。制御部150、250は、対応して設けられるインバータ部120、220を制御する駆動制御部150、250、および、異常監視を行う異常監視部155、255を有し、相互に通信可能である。対応して設けられるインバータ部120、220と、制御部150、250との組み合わせを系統とする。
異常監視部155、255は、自系統および他系統の状態を監視しており、自系統の制御部150、250の起動時に、他系統の制御部が未起動である場合、異常監視に係る一部の処理を無効にする。ここで、「異常監視に係る処理」とは、異常監視そのものに限らず、異常監視結果の記憶を含むものとし、「異常監視に係る一部の処理を無効にする」とは、一部の異常監視を無効にしてもよいし、異常監視そのものは無効にせず、一部の監視結果の記憶を無効にしてもよい。
本実施形態では、異常監視部155、255は、他系統の制御部が未起動である場合、マイコン間通信異常に関する異常監視処理を無効にする。この場合、マイコン間通信異常の監視自体を無効にしてもよいし、マイコン間通信異常の監視を行った上で、監視結果の記憶を無効にしてもよい、ということである。これにより、異常状態を適切に監視可能であって、ECU10の外部要因による他系統未起動を、ECU10内部の異常と誤検出するのを回避可能であり、ECU10の誤交換を避けることができる。
それぞれの系統には、自系統に異常が生じた場合にモータ巻線への通電を遮断する遮断部である電源リレー122、222、および、他系統の電源リレー222、122である他系統リレーの状態を監視する他系統リレー監視回路139、239が設けられる。制御部150、250は、マイコン間通信状態、および、他系統リレーの状態に基づき、他系統の制御部の起動状態を判定する。詳細には、マイコン間通信が途絶しており、かつ、他系統リレー情報であるリレーゲート信号Vrg1、Vrg2の電圧が判定閾値より低い場合、他系統の制御部が起動していないと判定する。これにより、他系統の起動状態を適切に判定することができる。
制御部150、250は、異常監視結果を記憶する記憶部156、256を有する。制御部150、250は、自系統が起動してから他系統の制御部が未起動の状態で待機時間Twが経過した場合、他系統の制御部が未起動であることを示す他系統未起動情報を自系統の記憶部156、256に記憶させる。これにより、他系統未起動によりマイコン間通信ができない状態を、ECU10の内部要因によるマイコン間通信と誤って記憶されることでのECU10の誤交換を防ぐことができる。
制御部150、250は、自身が起動したときに他系統の制御部が未起動の場合、他系統の制御部の起動を待たずに自系統でのモータ80の駆動を開始する。これにより、速やかにモータ80の駆動を開始することができる。
制御部150、250は、待機時間Tw経過後、他系統でのモータ80の駆動が行われていない状態にて、自系統にてモータ80の駆動を行う場合、自系統での出力を通常時より高める。ここで、「出力を高める」とは、入力パラメータ(本実施形態では操舵トルクTs)に対して出力(本実施形態ではアシストトルクTa)が設定される場合、入力パラメータに対する出力の傾き、および、出力上限の少なくとも一方を高めるものとする。本実施形態では、上限到達値Ts1以下の領域において、操舵トルクTsに対するアシストトルクTaの傾きを大きくしていることが「出力を高める」に対応する。これにより、他系統が停止している分の出力の少なくとも一部を補うことができる。
制御部150、250は、自身が起動したとき、他系統の制御部が起動してから待機時間Twが経過し、他系統にてモータ80の駆動が開始されている場合、自系統でのモータ80の駆動を行わず、他系統でのモータ80の駆動を継続する。これにより、例えば他系統にて、出力を高めている場合であっても、過出力になるのを防ぐことができる。
(第2実施形態)
第2実施形態を図12および図13に示す。本実施形態の異常監視処理を図12のフローチャートに基づいて説明する。S201~S207の処理は、図8中のS101~S107の処理と同様である。起動後、マイコン間通信異常、かつ、他系統リレー情報異常が待機時間Twに亘って継続した場合に移行するS208では、制御部150、250は、駆動モードをアシスト停止とする。また、記憶部156、256に他系統未起動を記憶させ、マイコン間通信異常監視および他系統マイコン異常監視をマスクする。
マイコン間通信が正常である場合に移行するS209では、制御部150、250は、他系統の駆動モードがアシスト停止か否か判断する。他系統の駆動モードがアシスト停止であると判断された場合(S209:YES)、S210へ移行し、駆動モードを片系統駆動モードとする。S211の処理は、図8中のS111と同様である。
本実施形態のマイコン起動時処理を図13のタイムチャートに基づいて説明する。時刻x30の処理は、図9および図10の時刻x10の処理と同様である。時刻x31にて、待機時間Twが経過しても、第2制御部250はオフの状態が継続しているので、駆動モードをアシスト停止に変更し、ダイアグとして他系統未起動を記憶する。
第1系統L1の駆動モードがアシスト停止に移行した時刻x31以降の時刻x32に第2制御部250が起動した場合、第2制御部250は、第1系統L1がアシスト停止であることを第1制御部150からマイコン間通信にて受信すると、片系統駆動モードにてモータ80を駆動する。すなわち本実施形態では、起動時間が待機時間Tw以上ずれた場合、他系統未起動を記憶した系統を停止し、後から起動した側の系統での片系統駆動によりモータ80を駆動する。
制御部150、250は、他系統の制御部が未起動の場合、他系統の制御部の起動を待たずに自系統でのモータ80の駆動を開始し、他系統の制御部が未起動の状態で待機時間Twが経過した場合、自系統でのモータ80の駆動を停止する。また、制御部150、250は、自身が起動したとき、他系統の制御部が起動してから待機時間Twが経過しており、かつ、他系統でのモータ80の駆動が停止されている場合、自系統でのモータ80の駆動を開始する。このように構成しても、上記実施形態と同様の効果を奏する。
(第3実施形態)
第3実施形態を図14および図15に示す。本実施形態の異常監視処理を図14のフローチャートに基づいて説明する。S301~S306の処理は、図8中のS101~S106の処理と同様である。自身のマイコンが起動してから待機時間Twが経過していないと判断された場合(S306:NO)に移行するS307では、駆動モードをアシスト停止とし、マイコン間通信異常監視および他系統マイコン異常監視をマスクする。また、未起動カウンタをインクリメントし、S301へ戻る。S308~S311の処理は、図8中のS108~S111の処理と同様である。
本実施形態のマイコン起動時処理を図15のタイムチャートに基づいて説明する。時刻x40にて第1制御部150が起動したとき、第2制御部250が未起動であるので、図9の時刻x10と同様、異常監視無効フラグをセットして異常監視を無効にし、未起動カウンタによる未起動時間の計時を開始する。また、本実施形態では、時刻x40にて、第1制御部150において駆動モードをアシスト停止とし、他系統未起動、かつ、待機時間Twが経過するまでは、モータ80の駆動を開始しない。
時刻x41にて、第1制御部150の起動から、待機時間Twが経過した時刻x41において、第2制御部250の未起動状態が継続しているので、第1制御部150は、駆動モードを片系統駆動モードとし、モータ80の駆動を開始する。また、ダイアグとして他系統未起動を記憶部156に記憶させる。なお、待機時間Tw内に第2制御部250が起動した場合、上記実施形態と同様、2系統での制御を行う。
本実施形態では、他系統未起動状態の場合、待機時間Twが経過するまでは、モータ80の駆動を開始せず、待機時間Tw経過後に片系統駆動モードにてモータ80に駆動を開始する。この場合、独立駆動モードから片系統駆動モードへ切り替える場合に生じるトルク変動が発生しない。
制御部150、250は、自身が起動したときに他系統の制御部が未起動の場合、モータ80の駆動を開始せず、他系統の制御部が未起動の状態で待機時間Twが経過した場合、自系統でのモータ80の駆動を開始する。これにより、例えば待機時間Twの経過前後にて駆動モードを切り替える場合と比較し、駆動モードに切り替えに伴うトルク変動を抑制することができる。また上記実施形態と同様の効果を奏する。
上記実施形態では、モータ80が「回転電機」、ECU10が「回転電機制御装置」、電源リレー122、222が「遮断部」、他系統リレー監視回路139、239が「他系統遮断部監視回路」、他系統リレー情報が「他系統遮断部情報」に対応する。また、マイコン間通信が「制御部間の通信」に対応する。
(他の実施形態)
上記実施形態では、例えば図11において、時刻x21にて両系統共を協調駆動モードとしている。他の実施形態では、後で起動した第2制御部250も起動直後は独立駆動モードとし、協調遷移条件が成立した場合に、協調駆動に移行するようにしてもよい。例えば、操舵角速度が操舵速度閾値未満、および、操舵トルクTsが非操舵判定閾値未満の少なくとも一方である場合、非操舵状態であって、協調遷移条件が成立しているとし、協調駆動モードに移行するようにしてもよい。また、操舵トルクに替えて、ハンドル速度、モータ速度、または、ラック速度に基づいて操舵状態を判定してもよい。
さらにまた、他の実施形態では、電流指令値および電流検出値に基づいて操舵状態を判定してもよい。電流指令値の値が大きい場合、操舵中である蓋然性が高いため、電流指令値が判定閾値より大きい場合、操舵中、判定閾値より小さい場合、非操舵状態と判定する、といった具合である。電流検出値についても同様である。また、操舵トルク、ハンドル速度、モータ速度、ラック速度、電流指令値および電流検出値の2つ以上を用いて操舵状態を判定してもよい。
他の実施形態では、非操舵状態のときに駆動モードを切り替えるようにしてもよい。また他の実施形態では、非操舵状態に加え、車速が車速判定閾値より小さいときに駆動モードを切り替えるようにしてもよい。さらにまた、車両の挙動状態に係る項目として、車両の横Gやヨーレート等が判定閾値より小さいときに駆動モードを切り替えるようにしてもよい。
上記実施形態では、協調駆動モードにおいて、電流指令値、電流検出値および電流制限値を系統間で共有する。他の実施形態では、協調駆動モードにおいて、電流制限値を共有しなくてもよい。上記実施形態では、第1制御部150をマスター制御部、第2制御部250をスレーブ制御部とし、協調駆動モードにおいて、電流指令値を制御部150、250で用いる。他の実施形態では、電流指令値を共有せず、協調駆動モードにおいても、自系統の電流指令値を用いてもよい。また、電流指令値、電流検出値および電流制限値以外の値を共有してもよい。
上記実施形態では、モータ巻線、インバータ部および制御部が2つずつ設けられる。他の実施形態では、モータ巻線は、1つまたは3つ以上であってもよい。また、インバータ部および制御部が3つ以上であってもよい。また、例えば複数のモータ巻線およびインバータ部に対して1つの制御部を設ける、或いは、1つの制御部に対して複数のインバータ部およびモータ巻線を設ける、といった具合に、モータ巻線、インバータ部および制御部の数が異なっていてもよい。上記実施形態では、系統ごとに電源が設けられており、グランドが分離されている。他の実施形態では、1つの電源を複数系統にて共用してもよい。また、複数の系統が共通のグランドに接続されていてもよい。
上記実施形態では、回転電機は、3相のブラシレスモータである。他の実施形態では、回転電機は、ブラシレスモータに限らない。また、発電機の機能を併せ持つ、所謂モータジェネレータであってもよい。上記実施形態では、回転電機制御装置は、電動パワーステアリング装置に適用される。他の実施形態では、回転電機制御装置を、ステアバイワイヤ装置等、操舵を司る電動パワーステアリング装置以外の操舵装置に適用してもよい。また、操舵装置以外の車載装置、または、車載以外の装置に適用してもよい。
本開示に記載の制御部及びその手法は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することによって提供された専用コンピュータにより、実現されてもよい。あるいは、本開示に記載の制御部及びその手法は、一つ以上の専用ハードウェア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。もしくは、本開示に記載の制御部及びその手法は、一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリと一つ以上のハードウェア論理回路によって構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより、実現されてもよい。また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されていてもよい。以上、本発明は、上記実施形態になんら限定されるものではなく、発明の趣旨を逸脱しない範囲において種々の形態で実施可能である。