(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-21
(45)【発行日】2024-03-29
(54)【発明の名称】角度演算装置
(51)【国際特許分類】
G01D 5/244 20060101AFI20240322BHJP
【FI】
G01D5/244 K
(21)【出願番号】P 2018184165
(22)【出願日】2018-09-28
【審査請求日】2021-08-17
【審判番号】
【審判請求日】2023-02-10
(31)【優先権主張番号】P 2018110397
(32)【優先日】2018-06-08
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000001247
【氏名又は名称】株式会社ジェイテクト
(74)【代理人】
【識別番号】100105957
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】足立 丈英
(72)【発明者】
【氏名】小池 進
【合議体】
【審判長】岡田 吉美
【審判官】九鬼 一慶
【審判官】濱本 禎広
(56)【参考文献】
【文献】特開2017-196991(JP,A)
【文献】特開2012-118064(JP,A)
【文献】特開2008-219756(JP,A)
【文献】特開2017-24556(JP,A)
【文献】特開2016-191702(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01D 5/00 - 5/38
B62D 5/00 - 6/10
(57)【特許請求の範囲】
【請求項1】
検出部からの検出信号に基づいてモータのマルチターンの回転角度を演算する第1の演算部と、前記検出部からの前記検出信号に基づいて前記回転角度を演算するために用いる情報であって前記モータのマルチターン数を示す情報である回転数情報を演算する第2の演算部とを備え
、
前記
第2の演算部は、3つ以上の角度領域からなる第2の判定領域を記憶していて
、前記検出信号に基づいて、前記回転数情報と前記第2の判定領域における前記モータの回転位置が存在する角度領域を示す情報である象限情報とを演算するものであって、
前記
第1の演算部は、前記第2の判定領域に対し
て所定量ずらした3つ以上の角度領域からなる第1の判定領域を記憶していて、
前記
第1の演算部は
、前記検出信号に基づいて前記第1の判定領域における前記モータの回転位置が存在する角度領域
を判定し、前記第2の演算部から取得した前記象限情報と、前記角度領域とに基づいて、前記回転数情報の異常を判定する角度演算装置。
【請求項2】
前記
第1の演算部は、前記回転数情報を異常と判定しなかった場合、前記
第2の演算部から取得した前記回転数情報を前記検出信号に基づいて変更する請求項1に記載の角度演算装置。
【請求項3】
前記
第1の演算部は、前記回転数情報を異常と判定しなかった場合、前記
第2の演算部が記憶している前記回転数情報を前記検出信号に基づいて変更する請求項1に記載の角度演算装置。
【請求項4】
前記
第1の演算部は、前記第2の判定領域を記憶しており、
前記
第1の演算部は、前記象限情報に基づいた第2の判定領域における前記モータの回転位置が存在する角度領域が、前記検出信号に基づいた第2の判定領域における前記モータの回転位置が存在する角度領域と一致するように、前記回転数情報を変更する請求項2または3に記載の角度演算装置。
【請求項5】
前記第1の判定領域の角度領域の数と前記第2の判定領域の角度領域の数とは同数であり、
前記第2の判定領域に対する前記第1の判定領域の前記所定量のずれは、前記第2の判定領域の1つの角度領域の半分のずれである請求項1~4のいずれか一項に記載の角度演算装置。
【請求項6】
前記回転角度及び前記回転数情報は、所定の演算周期で演算されるものであって、
前記
第1の演算部は、
前記回転角度の今回値の前記回転角度の前回値からの変化量が前記回転数情報を正常に演算できると定められた既定変化量を超えない場合、前記回転数情報を異常でないと判定し、
前記回転角度の今回値の前記回転角度の前回値からの変化量が前記回転数情報を正常に演算できると定められた既定変化量を超える場合、前記回転数情報を異常であると判定する請求項1~5のいずれか一項に記載の角度演算装置。
【請求項7】
前記
第1の演算部は、
前記回転数情報の今回値の前記回転数情報の前回値からの変化と、前記象限情報の今回値の前記象限情報の前回値からの変化との関係に基づいて、前記象限情報の異常を判定する請求項1~6のいずれか一項に記載の角度演算装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、角度演算装置に関する。
【背景技術】
【0002】
特許文献1の角度演算装置は、回転角度センサからの検出信号に基づいて、モータのマルチターン数をカウントする回転検出器と、回転検出器により演算されるマルチターン数及び回転角センサからの検出信号に基づいてモータのマルチターンの回転角度を演算するMPU(Micro Processing Unit)とを備えている。MPUは、回転角度センサを通じて検出される検出信号に基づきモータの回転角度を相対角で演算するとともに、検出信号に基づいて演算されたマルチターン数を取得している。MPUは、所定の演算周期で相対角及びマルチターン数を取得し、これら所定の演算周期で取得された相対角及びマルチターン数を用いて、モータのマルチターンの回転角度を演算している。これにより、MPUは、基本的には所定の演算周期内の、すなわち同一のタイミングといえる検出信号に基づいて演算された相対角及びマルチターン数を用いて、モータのマルチターンの回転角度を演算している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
各種の信号の伝達の遅延やこの信号を用いた処理のずれ等が生じることがある。例えば、回転角度センサからMPUへの検出信号の伝達が遅延することや、回転検出器からMPUへのマルチターン数を示す信号の伝達が遅延することがある。また、例えば検出信号を演算処理する回転検出器及びMPUの回路特性が異なることから、回転検出器によるマルチターン数の演算処理やMPUによる相対角の演算処理が遅延する処理のずれが生じることがある。このような場合、MPUは、互いに異なるタイミングの検出信号に基づいて演算された相対角及びマルチターン数に基づいて、モータのマルチターンの回転角度を演算することになる。このことから、MPUは、モータのマルチターンの回転角度を適切に演算することができない場合がある。
【課題を解決するための手段】
【0005】
上記課題を解決する角度演算装置は、検出部からの検出信号に基づいてモータのマルチターンの回転角度を演算する第1の演算部と、前記検出部からの前記検出信号に基づいて前記回転角度を演算するために用いる情報であって前記モータのマルチターン数を示す情報である回転数情報を演算する第2の演算部とを備え、前記第2の演算部は、3つ以上の角度領域からなる第2の判定領域を記憶していて、前記検出信号に基づいて、前記回転数情報と前記第2の判定領域における前記モータの回転位置が存在する角度領域を示す情報である象限情報とを演算するものであって、前記第1の演算部は、前記第2の判定領域に対して所定量ずらした3つ以上の角度領域からなる第1の判定領域を記憶していて、前記第1の演算部は、前記第2の演算部から取得した前記象限情報と、前記検出信号に基づいて前記第1の判定領域における前記モータの回転位置が存在する角度領域とに基づいて、前記回転数情報の異常を判定する。
【0006】
各種の信号の伝達の遅延や各種の信号を用いた処理のずれに起因して、回転数情報が示すマルチターン数と実際のマルチターン数との間にはずれが生じることがある。上記構成によれば、第1の演算部は、回転数情報を演算するための第2の判定領域に対して所定量ずらした第1の判定領域を用いて、回転数情報の異常を判定している。第1の判定領域及び第2の判定領域を用いて回転数情報の異常を判定できることから、第1の演算部は、異常な回転数情報を用いてモータのマルチターンの回転角度を演算することが抑制可能となる。
【0007】
上記の角度演算装置において、前記第1の演算部は、前記回転数情報を異常と判定しなかった場合、前記第2の演算部から取得した前記回転数情報を前記検出信号に基づいて変更することが好ましい。
【0008】
上記の角度演算装置において、前記第1の演算部は、前記回転数情報を異常と判定しなかった場合、前記第2の演算部が記憶している前記回転数情報を前記検出信号に基づいて変更することが好ましい。
【0009】
第1の演算部が回転数情報を異常と判定しなかった場合、回転数情報が示すマルチターン数と実際のマルチターン数との間には異常と判定されるようなずれは生じていない。しかし、第1の演算部が持っている情報の内容と第2の演算部が持っている情報の内容とが整合していないことがある。上記構成によれば、第1の演算部は、第2の演算部により演算される回転数情報を、第1の演算部において回転角度を演算するために用いられる検出部からの検出信号に基づいて変更している。このことから、第2の演算部により演算される回転数情報の内容と、第1の演算部での回転角度の演算に用いられる検出信号の内容とを整合したものとすることができる。
【0010】
上記の角度演算装置において、前記第1の演算部は、前記第2の判定領域を記憶しており、前記第1の演算部は、前記象限情報に基づいた第2の判定領域における前記モータの回転位置が存在する角度領域が、前記検出信号に基づいた第2の判定領域における前記モータの回転位置が存在する角度領域と一致するように、前記回転数情報を変更することが好ましい。
【0011】
上記構成によれば、回転数情報を変更することにより、変更後の回転数情報に基づいた第2の判定領域におけるモータの回転位置が存在する角度領域と、検出信号に基づいた第2の判定領域におけるモータの回転位置が存在する角度領域とを一致させることができる。このことから、第1の演算部が取得することになる回転数情報の内容と検出信号の内容とを整合したものとすることができる。
【0012】
上記の角度演算装置において、前記第1の判定領域の角度領域の数と前記第2の判定領域の角度領域の数とは同数であり、前記第2の判定領域に対する前記第1の判定領域の前記所定量のずれは、前記第2の判定領域の1つの角度領域の半分のずれであることが好ましい。
【0013】
上記の構成によれば、回転数情報に基づいた第2の判定領域におけるモータの回転位置が存在する角度領域と隣接する角度領域とに対応するように、第1の判定領域の角度領域を構成している。このことから、検出信号に基づいて第1の判定領域のある角度領域にモータの回転位置が存在している場合、回転数情報に異常が生じていなければ、第1の判定領域のある角度領域に対応する第2の判定領域の2つの角度領域のいずれかにモータの回転位置が存在することになる。第1の判定領域と第2の判定領域との設定において、それらの角度領域の数を同数にし、さらに、それらの角度領域のずれに基づく各角度領域の対応関係を均等化することで第1の判定領域及び第2の判定領域の設定を適切なものとすることができる。
【0014】
上記の角度演算装置において、前記回転角度及び前記回転数情報は、所定の演算周期で演算されるものであって、前記第1の演算部は、前記回転角度の今回値の前記回転角度の前回値からの変化量が前記回転数情報を正常に演算できると定められた既定変化量を超えない場合、前記回転数情報を異常でないと判定し、前記回転角度の今回値の前記回転角度の前回値からの変化量が前記回転数情報を正常に演算できると定められた既定変化量を超える場合、前記回転数情報を異常であると判定することが好ましい。
【0015】
縁石乗り上げ等に伴う大きな逆入力によって、モータの回転軸が高速で回転することがある。このような場合には、第1の演算部に適切に回転数情報が伝達されないことがある。そこで、上記の構成によれば、第1の演算部は、回転角度の変化量が既定変化量を超える場合には回転数情報が異常であると判定することで、例えば回転数情報の今回値や、場合によっては回転数情報の前回値を正式な回転数情報としては採用しないようにする。一方、第1の演算部は、回転角度の変化量が既定変化量を超えない場合には回転数情報が異常でないと判定することで、例えば回転数情報の今回値や、場合によっては回転数情報の前回値を正式な回転数情報として採用する。これにより、モータのマルチターンの回転角度を演算するために用いられる回転数情報の精度をさらに高めることが可能になる。
【0016】
上記の角度演算装置において、前記第1の演算部は、前記回転数情報の今回値の前記回転数情報の前回値からの変化と、前記象限情報の今回値の前記象限情報の前回値からの変化との関係に基づいて、前記象限情報の異常を判定することが好ましい。
【0017】
回転数情報が前回値から今回値へと変化した場合には、この回転数情報の変化に応じて、象限情報が前回値から今回値へと所定の関係で変化するはずである。そこで、上記の構成によれば、第1の演算部は、回転数情報の変化に対して象限情報が所定通りに変化している場合には象限情報は異常でないと判定し、回転数情報の変化に対して象限情報が所定通りに変化していない場合には象限情報は異常であると判定することができる。これにより、象限情報の精度を高めることができるようになる。
【発明の効果】
【0018】
本発明の角度演算装置によれば、回転数情報の異常を判定することができる。
【図面の簡単な説明】
【0019】
【
図1】ステアリング装置の概略構成を示すブロック図。
【
図2】第1実施形態において、角度演算装置の電気的構成を示すブロック図。
【
図5】検出信号に基づいた第1の判定領域におけるモータの回転軸の回転位置が存在する角度領域と、象限情報に基づいた第2の判定領域におけるモータの回転軸の回転位置が存在する象限との関係を示す図。
【
図6】検出信号に基づき演算されるモータの相対角と、象限情報に基づいたモータの回転軸の回転位置が存在する象限と、カウント値に対する補正値であるカウント補正値との関係を示す図。
【
図8】カウント値、象限情報、及び相対角の関係を示す図。
【
図9】相対角が20度であるときにおいて、第1の判定領域におけるモータの回転軸の回転位置が存在する角度領域と、カウント値に基づいた第2の判定領域におけるモータの回転軸の回転位置が存在する象限との関係を示す図。
【
図10】第2実施形態において、角度演算装置の電気的構成を示すブロック図。
【
図11】他の実施形態において、第2の判定領域の具体例を示すグラフ。
【
図12】他の実施形態において、第1の判定領域の具体例を示すグラフ。
【
図13】他の実施形態において、検出信号に基づいた第1の判定領域におけるモータの回転軸の回転位置が存在する角度領域と、象限情報に基づいた第2の判定領域におけるモータの回転軸の回転位置が存在する象限との関係を示す図。
【
図14】他の実施形態において、検出信号に基づき演算されるモータの相対角と、象限情報に基づいたモータの回転軸の回転位置が存在する象限と、カウント値に対する補正値であるカウント補正値との関係を示す図。
【
図15】他の実施形態において、第2の判定領域の具体例を示すグラフ。
【
図16】他の実施形態において、検出信号に基づいた第1の判定領域におけるモータの回転軸の回転位置が存在する角度領域と、象限情報に基づいた第2の判定領域におけるモータの回転軸の回転位置が存在する象限との関係を示す図。
【
図17】他の実施形態において、検出信号に基づき演算されるモータの相対角と、象限情報に基づいたモータの回転軸の回転位置が存在する象限と、カウント値に対する補正値であるカウント補正値との関係を示す図。
【
図18】他の実施形態において、角度演算装置の電気的構成を示すブロック図。
【発明を実施するための形態】
【0020】
<第1実施形態>
以下、電動パワーステアリング装置(以下、「EPS」という。)に搭載された角度演算装置の第1実施形態について説明する。
【0021】
図1に示すように、EPSは、運転者によるステアリングホイール10の操作に基づいて転舵輪15を転舵させる操舵機構1と、操舵機構1にステアリング操作を補助するための補助力を発生させるモータ20を有するアクチュエータ3と、モータ20の回転角度θを検出するとともにモータ20を制御する角度演算装置30とを備えている。
【0022】
操舵機構1は、ステアリングホイール10が連結されているステアリング軸11と、ステアリング軸11の回転に応じて軸方向に往復移動するラック軸12とを有している。ステアリング軸11は、ステアリングホイール10と連結されたコラム軸11aと、コラム軸11aの下端部に連結された中間軸11bと、中間軸11bの下端部に連結されたピニオン軸11cとを有している。ラック軸12とピニオン軸11cとは、所定の交差角をもって配置されており、ラック軸12に形成されたラック歯とピニオン軸11cに形成されたピニオン歯とが噛合されることでラックアンドピニオン機構13が構成されている。また、ラック軸12の両端には、タイロッド14が連結されており、タイロッド14の先端は、転舵輪15が組み付けられた図示しないナックルに連結されている。したがって、EPSでは、ステアリング操作に伴うステアリング軸11の回転運動は、ラックアンドピニオン機構13を介してラック軸12の軸方向の往復直線運動に変換される。この軸方向の往復直線運動がタイロッド14を介してナックルに伝達されることにより、転舵輪15の転舵角、すなわち車両の進行方向が変更される。
【0023】
アクチュエータ3は、モータ20及び減速機構21を備えている。モータ20の回転軸20aは、減速機構21を介してコラム軸11aに連結されている。モータ20の回転軸20aは、多回転することができる。減速機構21は、モータ20の回転を減速し、当該減速した回転力をコラム軸11aに伝達する。すなわち、ステアリング軸11にモータ20のトルクが補助力(アシスト力)として付与されることにより、運転者のステアリング操作が補助される。
【0024】
角度演算装置30は、車両に設けられた各種のセンサの検出結果に基づいて、モータ20を制御する。各種のセンサとしては、例えばトルクセンサ40及び回転角度センサ41が設けられている。トルクセンサ40は、コラム軸11aに設けられている。トルクセンサ40は、運転者のステアリング操作に伴いステアリング軸11に付与される操舵トルクThを検出する。回転角度センサ41は、モータ20に設けられている。回転角度センサ41は、モータ20の回転軸20aの実際の回転角度θを演算するための検出信号を生成して電圧値として出力する。角度演算装置30には、モータ20に供給される電力の電力源であるバッテリ50が接続されている。角度演算装置30は、回転角度センサ41により生成される検出信号に基づいて、モータ20の実際の回転角度θを演算する。回転角度センサ41には、モータ20の回転軸20aの回転に応じて変化する磁気を検出することによって検出信号を生成する磁気センサが採用される。磁気センサとしては、例えばMRセンサ(磁気抵抗効果センサ)が採用されている。回転角度センサ41は、2つの磁気センサ素子からなるブリッジ回路を有しており、これらの磁気センサ素子によりそれぞれ電気信号(電圧)を生成している。一方の磁気センサ素子により生成される電気信号の位相は、他方の磁気センサ素子により生成される電気信号の位相から90度ずれている。そこで、第1実施形態では、一方の磁気センサ素子により生成される電気信号を正弦波信号Ssinとみなし、他方の磁気センサ素子により生成される電気信号を余弦波信号Scosとみなす。これらの正弦波信号Ssin及び余弦波信号Scosは、回転角度センサ41の検出信号である。角度演算装置30は、回転角度センサ41により検出された検出信号(正弦波信号Ssin及び余弦波信号Scos)に基づいて、モータ20のマルチターン(多回転)の回転角度θを演算する。そして、角度演算装置30は、各センサの出力値に基づいて、操舵機構1に付与する目標のトルクを設定し、実際のモータ20のトルクが目標のトルクとなるように、モータ20に供給される電力を制御する。
【0025】
角度演算装置30の構成について説明する。
図2に示すように、角度演算装置30は、マイコン31と、回転監視部32とを備えている。なお、マイコン31は、第1の演算部の一例であり、回転監視部32は、第2の演算部の一例である。また、回転角度センサ41は、検出部の一例である。
【0026】
マイコン31は、イグニッションスイッチ51がオンされている場合、モータ20のマルチターンの回転角度θを演算するとともに、モータ20に供給される電力を制御する。マイコン31は、所定の演算周期でモータ20の回転角度θを演算する。マイコン31の演算周期は、モータ20の回転軸20aが回転したことを迅速に検出できるような短い周期に設定されている。マイコン31は、例えばマイクロプロセッシングユニット等からなる。マイコン31には、回転監視部32が接続されている。回転監視部32は、電子回路やフリップフロップ等を組み合わせた論理回路をパッケージ化して構成したものである。回転監視部32は、いわゆるASIC(application specific integrated circuit:特定用途向け集積回路)である。マイコン31は、その記憶部に記憶されているプログラムを読み出して、当該プログラムに応じた演算を実行する。回転監視部32は、特定の入力(ここでは、回転角度センサ41の検出信号)に対して定められた出力を行う。
【0027】
回転監視部32には、バッテリ50から供給される電力である供給電圧を降圧して定電圧を供給する電源回路100が設けられている。バッテリ50と電源回路100との間には、バッテリ50から供給される電力の通電及び遮断を切り替えるイグニッションスイッチ51が設けられている。運転者が車両に設けられたスイッチを操作することにより、イグニッションスイッチ51のオンオフが切り替えられる。イグニッションスイッチ51がオンされている場合、電源回路100にはオン信号が入力されるとともに、バッテリ50と電源回路100との間でイグニッションスイッチ51を通じて電力が通電される。イグニッションスイッチ51がオフされている場合、電源回路100にはオフ信号が入力されるとともに、バッテリ50と電源回路100との間でイグニッションスイッチ51を通じて電力が遮断される。
【0028】
バッテリ50と電源回路100との間でイグニッションスイッチ51を通じて電力が通電される場合、マイコン31には電力が供給される。すなわち、イグニッションスイッチ51がオンされている場合、マイコン31には電力が供給され、マイコン31は動作する。一方、バッテリ50と電源回路100との間でイグニッションスイッチ51を通じて電力が遮断される場合、マイコン31には電力が供給されない。すなわち、イグニッションスイッチ51がオフされている場合、マイコン31には電力が供給されず、マイコン31は動作を停止する。
【0029】
電源回路100には、バッテリ50が直接接続されている。すなわち、回転監視部32には、イグニッションスイッチ51のオン及びオフに関係なく、バッテリ50から電力が常時供給されている。回転監視部32には、回転角度センサ41が接続されている。また、マイコン31にも、回転角度センサ41が接続されている。
【0030】
回転監視部32は、カウンタ回路101及び通信インターフェース102を備えている。カウンタ回路101には、イグニッションスイッチ51のオン及びオフに関係なく、常にバッテリ50から電力が供給される。通信インターフェース102には、イグニッションスイッチ51がオンされている場合、バッテリ50から電力が供給される。
【0031】
カウンタ回路101は、回転角度センサ41により生成される検出信号(正弦波信号Ssin及び余弦波信号Scos)を電圧値として取得する。カウンタ回路101は、検出信号に基づいて、モータ20のマルチターンの回転角度θを演算するために用いるカウント値Cを演算する。カウント値Cは、モータ20のマルチターン数(多回転数)を示す回転数情報である。第1実施形態では、カウント値Cは、モータ20の回転軸20aの回転位置がその基準位置(中立位置)に対して何回転しているかを示す情報である。
【0032】
カウンタ回路101は、増幅器103、コンパレータ104、象限判定部105、カウンタ106、カウント前回値出力回路107、及びカウンタ比較回路108を備えている。
【0033】
増幅器103は、回転角度センサ41により生成される検出信号(正弦波信号Ssin及び余弦波信号Scos)を電圧値として取得する。増幅器103は、回転角度センサ41から取得した電圧値を増幅し、コンパレータ104に出力する。
【0034】
コンパレータ104は、回転角度センサ41により生成される電圧値(増幅器103で増幅された電圧値)が、設定された閾値よりも高い値であればHiレベル、低い値であればLoレベルの信号を生成する。この閾値は、例えば「0」に設定される。すなわち、コンパレータ104は、電圧値(増幅器103で増幅された電圧値)が正である場合にはHiレベル、負である場合にはLoレベルの信号を生成する。
【0035】
象限判定部105は、コンパレータ104により生成されるHiレベルの信号とLoレベルの信号との組み合わせから、モータ20の回転軸20aの回転位置が考えられる4つの象限のうちのどの象限に位置しているかを判定する。モータ20の回転軸20aの基準位置は、例えばステアリングホイール10が中立位置にあるときのモータ20の回転軸20aの回転位置であり、このときの回転角度θは例えば「0」度である。
【0036】
図3に示すように、Hiレベルの信号とLoレベルの信号との組み合わせ、すなわち検出信号の正負の組み合わせから、モータ20の回転軸20aの1回転(360度)を、90度ごとに4つの象限に分割している。回転監視部32は、これらの4つの象限からなる第2の判定領域A2を記憶している。第2の判定領域A2は、具体的にはつぎの通りである。
【0037】
第1象限は、正弦波信号Ssin及び余弦波信号Scosの双方がHiレベルであるときの象限である。モータ20の回転軸20aの回転位置が第1象限内にある場合、モータ20の回転角度θは0~90度の範囲にある。
【0038】
第2象限は、正弦波信号SsinがHiレベルかつ余弦波信号ScosがLoレベルであるときの象限である。モータ20の回転軸20aの回転位置が第2象限内にある場合、モータ20の回転角度θは90~180度の範囲にある。
【0039】
第3象限は、正弦波信号Ssin及び余弦波信号Scosの双方がLoレベルであるときの象限である。モータ20の回転軸20aの回転位置が第3象限内にある場合、モータ20の回転角度θは180~270度の範囲にある。
【0040】
第4象限は、正弦波信号SsinがLoレベルかつ余弦波信号ScosがHiレベルであるときの象限である。モータ20の回転軸20aの回転位置が第4象限内にある場合、モータ20の回転角度θは270~360度の範囲にある。
【0041】
図2に示すように、象限判定部105は、コンパレータ104により生成されるHiレベルの信号とLoレベルの信号とに基づいて、モータ20の回転軸20aの回転位置が存在する象限を示す情報である象限情報Qを生成する。象限判定部105は、象限情報Qが示すモータ20の回転軸20aの回転位置が存在する象限の変化に基づいて、左回転フラグFlあるいは右回転フラグFrを生成する。象限判定部105は、モータ20の回転軸20aの回転位置が存在する象限が隣接する象限に変化するたびに、単位回転量(90度)の回転がなされたものとする。また、モータ20の回転軸20aの回転位置がモータ20の回転の前に存在していた象限とモータ20の回転の後に存在している象限との関係から、モータ20の回転軸20aの回転方向を特定する。象限判定部105は、モータ20の回転軸20aの回転位置が存在する象限が例えば第1象限から第2象限へ変化する等の、象限が反時計回り方向へ変化している場合、左回転フラグFlを生成する。象限判定部105は、モータ20の回転軸20aの回転位置が存在する象限が例えば第1象限から第4象限へ変化する等の、象限が時計回り方向へ変化している場合、右回転フラグFrを生成する。
【0042】
カウンタ106は、象限判定部105により取得される左回転フラグFlあるいは右回転フラグFrに基づいて、カウント値Cを演算する。カウンタ106は、フリップフロップ等を組み合わせた論理回路である。カウント値Cは、モータ20の回転軸20aの回転位置が、その基準位置に対して、単位回転量(90度)だけ回転した回数を示している。カウンタ106は、象限判定部105から左回転フラグFlを取得する度にインクリメント(カウント値Cを1加算)し、象限判定部105から右回転フラグFrを取得する度にデクリメント(カウント値Cを1減算)する。このように、カウンタ106は、回転角度センサ41から検出信号が生成される度にカウント値Cを演算し、そのカウント値Cを記憶している。カウンタ106によって演算されたカウント値Cは、カウント前回値出力回路107、カウンタ比較回路108、及び通信インターフェース102に出力される。
【0043】
カウント前回値出力回路107は、入力されるカウント値Cを少なくとも2回の演算周期分だけ保持する。すなわち、カウント前回値出力回路107は、今回の演算周期のカウント値Cであるカウント今回値Cnだけでなく、前回の演算周期のカウント値Cであるカウント前回値Cn-1を保持する。そして、カウント前回値出力回路107は、今回の演算周期のカウント値Cが入力される毎にその前回の演算周期の値であるカウント前回値Cn-1をカウンタ比較回路108に出力する。
【0044】
カウンタ比較回路108は、象限判定部105により取得される左回転フラグFlあるいは右回転フラグFr、カウンタ106によって演算されたカウント値C(カウント今回値Cn)、カウント前回値出力回路107によって出力されたカウント前回値Cn-1に基づいて、カウンタ106の異常を判定する。具体的には、カウンタ比較回路108は、カウント今回値Cnとカウント前回値Cn-1との差が、象限判定部105により取得される左回転フラグFlあるいは右回転フラグFrに示されるモータ20の回転方向に即していない場合、カウンタ106に異常が発生した旨のカウンタ異常フラグFcを生成する。例えば、カウンタ比較回路108は、モータ20が回転していないのにも関わらずカウント今回値Cnとカウント前回値Cn-1との差がある場合には、カウンタ異常フラグFcを生成する。一方、カウンタ比較回路108は、カウント今回値Cnとカウント前回値Cn-1との差が左回転フラグFlあるいは右回転フラグFrに示されるモータ20の回転方向に即している場合には、カウンタ異常フラグFcを生成しない。
【0045】
通信インターフェース102は、イグニッションスイッチ51がオンされる度に、カウンタ106に記憶されているカウント値C、象限判定部105により生成される象限情報Q、及びカウンタ異常フラグFcをマイコン31に出力する。一方、通信インターフェース102は、イグニッションスイッチ51がオフされている場合、動作しない。
【0046】
電源回路100は、入力されるオン信号あるいはオフ信号に基づいて、イグニッションスイッチ51のオンオフを把握する。電源回路100は、イグニッションスイッチ51がオンされている場合、バッテリ50から常時供給されている電力を用いて、回転角度センサ41及びカウンタ回路101に間欠的に通電する。一方、電源回路100は、バッテリ50から常時供給されている電力を用いて、イグニッションスイッチ51がオンされている場合にはイグニッションスイッチ51がオフされている場合よりも、回転角度センサ41及びカウンタ回路101に短い周期で間欠的に通電する。これにより、電源回路100は、回転角度センサ41及びカウンタ回路101を所定の周期で間欠的に動作させ、カウント値Cを間欠的に演算させる。この所定の周期は、モータ20の回転軸20aが、単位回転量(90度)だけ回転したことを見逃さない程度の大きさに設定されている。
【0047】
マイコン31は、イグニッションスイッチ51がオンされる度に、回転監視部32により演算されるカウント値Cを取得する。マイコン31は、イグニッションスイッチ51がオフされるまでの期間、イグニッションスイッチ51がオンされた場合に取得したカウント値Cを、回転角度センサ41により生成される検出信号の変化に基づいて、マイコン31自身で所定の演算周期で更新する。マイコン31は、検出信号を用いて演算された相対角dが反時計回り方向に単位回転量(90度)変化する毎にカウント値Cをインクリメント(カウント値Cを1加算)して更新し、相対角dが時計まわり方向に単位回転量(90度)変化する毎にカウント値Cをデクリメント(カウント値Cを1減算)して更新する。すなわち、本実施形態では、イグニッションスイッチ51がオンされている期間において、マイコン31及び回転監視部32でそれぞれ個別にカウント値Cを更新している。また、マイコン31は、回転角度センサ41により生成される検出信号を所定の演算周期で取得する。マイコン31は、取得したカウント値C及び検出信号に基づいて、モータ20のマルチターンの回転角度θを演算する。詳しくは、マイコン31は、回転角度センサ41により生成される2つの検出信号からアークタンジェントを求めることにより、モータ20の回転角度を相対角dで演算する相対角演算部33を有している。この相対角dは、モータ20の回転角度を0~360度の範囲内で表したものである。また、マイコン31は、回転監視部32により演算されるカウント値C(詳しくは後述の変更後カウント値Cc)及び相対角演算部33により演算される相対角dに基づいて、モータ20のマルチターンの回転角度θを演算する回転角度演算部34を有している。回転角度演算部34は、カウント値C(詳しくは後述の変更後カウント値Cc)に基づいて、モータ20の回転軸20aが1周(360度)単位で何周しているかを把握する。回転角度演算部34は、この相対角dに対して、カウント値C(変更後カウント値Cc)に基づいたモータ20の回転軸20aのマルチターン数に360度を乗算した値を加算することにより、モータ20のマルチターンの回転角度θ(絶対角)を演算する。そして、マイコン31は、モータ20とステアリング軸11との間に介在される減速機構21の減速比等を考慮すれば、モータ20のマルチターンの回転角度θからステアリング絶対回転角度を演算することもできる。角度演算装置30は、このようにして求められたモータ20のマルチターンの回転角度θを用いることにより、モータ20に供給する電力を制御する。
【0048】
ところで、各種の信号の伝達には遅延が生じることや、各種の信号を用いた処理にはずれ等が生じることがある。例えば、回転角度センサ41からマイコン31への検出信号の伝達が遅延することもあれば、回転監視部32からマイコン31へのカウント値Cの伝達が遅延することもある。また、マイコン31及び回転監視部32の回路特性、すなわちハードウェアの特性にはばらつきがある。このことから、回転監視部32によるカウント値Cの演算処理やマイコン31による相対角dの演算処理が遅延する等の処理のずれが生じることがある。このような場合、マイコン31には、回転角度センサ41により生成された検出信号と異なる演算周期のカウント値Cが入力され、モータ20のマルチターンの回転角度θを演算するおそれがある。そこで、マイコン31には、カウント値Cを取得する度にカウント値Cの異常を判定し、検出信号を用いて演算された相対角dに基づいてカウント値Cを変更する判定部35が設けられている。
【0049】
判定部35は、相対角演算部33により演算される相対角d、象限判定部105により演算される象限情報Q、カウンタ回路101により演算されるカウント値C、及びカウンタ異常フラグFcを取得する。マイコン31の判定部35が回転監視部32から象限情報Q及びカウント値Cを取得するタイミングは同じである。判定部35は、相対角d及び象限情報Qに基づいて、カウント値Cの異常を判定する。詳しくは、判定部35は、今回の演算周期の相対角今回値dn及び象限情報今回値Qnに基づいて、今回の演算周期のカウント今回値Cnの異常を判定している。判定部35は、4つの角度領域からなる第1の判定領域A1を示す第1のマップM1を記憶している。
【0050】
図4は、第1の判定領域A1を示している。第1の判定領域A1は、正弦波信号Ssinと余弦波信号Scosとの組み合わせ、すなわち検出信号の組み合わせから、モータ20の回転軸20aの1回転(360度)を、90度ごとに4つの角度領域に分割している。判定部35は、モータ20の回転軸20aの回転位置が存在している角度領域が隣接した角度領域に変化するたびにモータ20の回転軸20aは単位回転量(90度)の回転がなされたものとする。第1の判定領域A1は第2の判定領域A2に対して所定量ずれている。この所定量は、各種の信号(情報)の伝達と各種の信号を用いた処理のずれに起因するカウント値C及び象限情報Qの許容されるずれを考慮して設定されている。各種の信号の伝達の遅延や各種の信号を用いた処理のずれに起因して、カウンタ回路101により演算されるカウント値C及び象限判定部105により演算される象限情報Qが、相対角演算部33により演算される相対角dから45度を超えない程度にずれた角度であるときのカウント値及び象限情報になることまで許容するように角度演算装置30を設計している。そこで、第1実施形態では、第1の判定領域A1を、第2の判定領域A2に対して時計まわり方向に45度ずらして構成している。第1の判定領域A1の4つの角度領域は、具体的にはつぎの通りである。
【0051】
第1角度領域は、モータ20の相対角dが315~45度の範囲にあるときの象限である。この場合、正弦波信号Ssinが負の閾値-Ths以下かつ余弦波信号Scosが正の閾値Thc以上、及び正弦波信号Ssinが正の閾値Ths未満かつ余弦波信号Scosが正の閾値Thcよりも大きい。モータ20の相対角dが315~45度の範囲にある場合、モータ20の回転軸20aの回転位置は第1角度領域内にある。
【0052】
なお、正の閾値Thsは相対角dが45度であるときに検出されるべき正弦波信号Ssinとしての電圧値であり、負の閾値Thsは相対角dが-45度であるときに検出されるべき正弦波信号Ssinとしての電圧値である。また、正の閾値Thcは相対角dが45度であるときに検出されるべき余弦波信号Scosとしての電圧値であり、負の閾値Thcは相対角dが135度であるときに検出されるべき余弦波信号Scosとしての電圧値である。これらの各閾値は、実験的あるいは理論的に求められる。
【0053】
第2角度領域は、モータ20の相対角dが45~135度の範囲にあるときの象限である。この場合、正弦波信号Ssinが正の閾値Ths以上かつ余弦波信号Scosが正の閾値Thc以下、及び正弦波信号Ssinが正の閾値Thsよりも大きくかつ余弦波信号Scosが負の閾値-Thcよりも大きい。モータ20の相対角dが45~135度の範囲にある場合、モータ20の回転軸20aの回転位置が第2角度領域内にある。
【0054】
第3角度領域は、モータ20の相対角dが135~225度の範囲にあるときの象限である。この場合、正弦波信号Ssinが正の閾値Ths以下かつ余弦波信号Scosが負の閾値-Thc以下、及び正弦波信号Ssinが負の閾値-Thsよりも大きくかつ余弦波信号Scosが負の閾値-Thcよりも小さい。モータ20の相対角dが135~225度の範囲にある場合、モータ20の回転軸20aの回転位置は第3角度領域内にある。
【0055】
第4角度領域は、モータ20の相対角dが225~315度の範囲にあるときの象限である。この場合、正弦波信号Ssinが負の閾値-Ths以下かつ余弦波信号Scosが負の閾値-Thc以上、及び正弦波信号Ssinが負の閾値-Thsかつ余弦波信号Scosが正の閾値Thcよりも小さい。モータ20の相対角dが225~315度の範囲にある場合、モータ20の回転軸20aの回転位置は第4角度領域内にある。
【0056】
図2に示すように、マイコン31の判定部35は、
図5に示す第1のマップM1及び
図6に示す第2のマップM2を記憶している。第2のマップM2は、第2の判定領域A2と同一の角度領域の部分を有している。すなわち、判定部35は、第2のマップM2を記憶していることから、第2のマップM2に含まれている第2の判定領域A2も記憶している。象限情報Qはカウント値Cと密接に関係しており、象限情報Qが異常である場合にはカウント値Cも異常であるといえる。このため、判定部35は、第1のマップM1を用いて、象限情報Qに基づいて、カウント値Cの異常を判定する。また、判定部35は、カウント値Cの異常を判定しない場合、第2のマップM2を用いて、相対角d(検出信号)に基づいて、回転監視部32のカウンタ回路101から取得したカウント値Cを変更する。
【0057】
図5は第1のマップM1を示している。第1のマップM1は、相対角d(検出信号)に基づいた第1の判定領域A1におけるモータ20の回転軸20aの回転位置が存在する角度領域と、象限情報Qに基づいた第2の判定領域A2におけるモータ20の回転軸20aの回転位置が存在する象限との関係を示している。判定部35は、角度領域及び象限の異常ではない組み合わせと、角度領域及び象限の異常である組み合わせとを記憶している。第1のマップM1に示している角度領域及び象限の関係は、具体的にはつぎの通りである。
【0058】
モータ20の相対角dが315~45度(0度≦d<45度、315度≦d<360度)の範囲にある場合、すなわちモータ20の回転軸20aの回転位置が第1角度領域内にある場合には、異常ではない象限は第1象限及び第4象限であり、異常である象限は第2象限及び第3象限である。異常ではない象限とは、象限判定部105によって異常ではない象限情報Qが生成された場合に、その象限情報Qに相当する象限である。異常な象限とは、象限判定部105によって異常でない象限情報Qが演算された場合に、その象限情報Qに相当する象限ではない象限であって、モータ20の回転軸20aの回転位置が存在し得ない象限である。カウント値C及び象限情報Qには相対角dに対して所定量のずれとして、45度未満のずれが含まれることは許容されているが、カウント値C及び象限情報Qに相対角dに対して45度を超えるずれが含まれる場合に、モータ20の回転軸20aの回転位置が異常である象限に位置することになる。
【0059】
モータ20の相対角dが45~135度(45度≦d<135度)の範囲にある場合、すなわちモータ20の回転軸20aの回転位置が第2角度領域内にある場合には、異常ではない象限は第1象限及び第2象限であり、異常である象限は第3象限及び第4象限である。
【0060】
モータ20の相対角dが135~225度(135度≦d<225度)の範囲にある場合、すなわちモータ20の回転軸20aの回転位置が第3角度領域内にある場合には、異常ではない象限は第2象限及び第3象限であり、異常である象限は第1象限及び第4象限である。
【0061】
モータ20の相対角dが225~315度(225度≦d<315度)の範囲にある場合、すなわちモータ20の回転軸20aの回転位置が第4象限内にある場合には、異常ではない象限は第3象限及び第4象限であり、異常である象限は第1象限及び第2象限である。
【0062】
図2に示すように、マイコン31は、前回値出力回路36及び相対角前回値出力回路37を有している。前回値出力回路36は、マイコン31に入力されるカウント値C及び象限情報Qを少なくとも2回の演算周期分だけ保持する。すなわち、前回値出力回路36は、今回の演算周期のカウント値Cであるカウント今回値Cnだけでなく、前回の演算周期のカウント値Cであるカウント前回値Cn-1を保持する。そして、前回値出力回路36は、今回の演算周期のカウント値Cが入力される毎にその前回の値であるカウント前回値Cn-1を判定部35に出力する。また、前回値出力回路36は、今回の演算周期の象限情報Qである象限情報今回値Qnだけでなく、前回の演算周期の象限情報Qである象限情報前回値Qn-1を保持する。そして、前回値出力回路36は、今回の演算周期の象限情報Qが入力される毎にその前回の値である象限情報前回値Qn-1を判定部35に出力する。
【0063】
相対角前回値出力回路37は、相対角演算部33により演算される相対角dを少なくとも2回の演算周期分だけ保持する。すなわち、相対角前回値出力回路37は、今回の演算周期の相対角dである相対角今回値dnだけでなく、前回の演算周期の相対角dである相対角前回値dn-1を保持する。そして、相対角前回値出力回路37は、今回の演算周期の相対角dが入力される毎にその前回の値である相対角前回値dn-1を判定部35に出力する。
【0064】
判定部35は、カウンタ106により演算される今回の演算周期のカウント値Cであるカウント今回値Cn、象限判定部105により演算される今回の演算周期の象限情報Qである象限情報今回値Qn、及びカウンタ異常フラグFcを取得する。また、判定部35は、相対角演算部33により演算される今回の演算周期の相対角dである相対角今回値dnと、前回値出力回路36によって出力されたカウント前回値Cn-1及び象限情報前回値Qn-1と、相対角前回値出力回路37によって出力された相対角前回値dn-1とを取得する。
【0065】
図7は判定部35に記憶されている第3のマップM3を示している。第3のマップM3は、カウント今回値Cnのカウント前回値Cn-1からの変化と、象限情報今回値Qnの象限情報前回値Qn-1からの変化との関係を示している。判定部35は、カウント今回値Cnのカウント前回値Cn-1からの変化に対する異常な象限情報Qの組み合わせを記憶している。第3のマップM3に示しているカウント値Cの変化と象限情報Qの変化との関係は、具体的にはつぎの通りである。
【0066】
前回の演算周期のカウント値Cであるカウント前回値Cn-1が「4R+1」(Rは任意の整数である。)である場合、次の周期のカウント今回値Cnは「(4R+1)+1」、「4R+1」、「(4R+1)-1」のいずれかの値をとることになる。カウント今回値Cnが「(4R+1)+1」かつカウント前回値Cn-1が「4R+1」である場合、前回の演算周期の象限は第1象限であって、今回の演算周期の異常ではない象限は第2象限であり、今回の演算周期の異常である象限は第1象限、第3象限、及び第4象限である。異常ではない象限とは、例えばカウント値Cが変化していない場合に象限情報Qに相当する象限が変化していないときの象限や、カウント値Cが変化している場合に象限情報Qに相当する象限がカウント値Cの変化に即した位置にあるときの象限である。異常である象限とは、例えばカウント値Cが変化していないにもかかわらず象限情報Qに相当する象限が前回の周期から変化したときの象限や、カウント値Cが変化しているにもかかわらず象限情報Qに相当する象限が前回の周期から変化していないときの象限である。また、カウント今回値Cnが「4R+1」かつカウント前回値Cn-1が「4R+1」である場合、前回の演算周期の象限は第1象限であって、今回の演算周期の異常ではない象限は第1象限であり、今回の演算周期の異常である象限は第2象限、第3象限、及び第4象限である。また、カウント今回値Cnが「(4R+1)-1」かつカウント前回値Cn-1が「4R+1」である場合、前回の演算周期の象限は第1象限であって、今回の演算周期の異常ではない象限は第4象限であり、今回の演算周期の異常である象限は第1象限、第2象限、及び第3象限である。
【0067】
前回の演算周期のカウント前回値Cn-1が「4R+2」である場合、次の周期のカウント今回値Cnは「(4R+2)+1」、「4R+2」、「(4R+2)-1」のいずれかの値をとることになる。カウント今回値Cnが「(4R+2)+1」かつカウント前回値Cn-1が「4R+2」である場合、前回の演算周期の象限は第2象限であって、今回の演算周期の異常ではない象限は第3象限であり、今回の演算周期の異常である象限は第1象限、第2象限、及び第4象限である。カウント今回値Cnが「4R+2」かつカウント前回値Cn-1が「4R+2」である場合、前回の演算周期の象限は第2象限であって、今回の演算周期の異常ではない象限は第2象限であり、今回の演算周期の異常である象限は第1象限、第3象限、及び第4象限である。カウント今回値Cnが「(4R+2)-1」かつカウント前回値Cn-1が「4R+2」である場合、前回の演算周期の象限は第2象限であって、今回の演算周期の異常ではない象限は第1象限であり、今回の演算周期の異常である象限は第2象限、第3象限、及び第4象限である。
【0068】
前回の演算周期のカウント前回値Cn-1が「4R+3」である場合、次の周期のカウント今回値Cnは「(4R+3)+1」、「4R+3」、「(4R+3)-1」のいずれかの値をとることになる。カウント今回値Cnが「(4R+3)+1」かつカウント前回値Cn-1が「4R+3」である場合、前回の演算周期の象限は第3象限であって、今回の演算周期の異常ではない象限は第4象限であり、今回の演算周期の異常である象限は第1象限、第2象限、及び第3象限である。カウント今回値Cnが「4R+3」かつカウント前回値Cn-1が「4R+3」である場合、前回の演算周期の象限は第3象限であって、今回の異常ではない象限は第3象限であり、今回の演算周期の異常である象限は第1象限、第2象限、及び第4象限である。カウント今回値Cnが「(4R+3)-1」かつカウント前回値Cn-1が「4R+3」である場合、前回の演算周期の象限は第3象限であって、今回の演算周期の異常ではない象限は第2象限であり、今回の演算周期の異常である象限は第1象限、第3象限、及び第4象限である。
【0069】
前回の演算周期のカウント前回値Cn-1が「4R」である場合、次の周期のカウント今回値Cnは「4R+1」、「4R」、「4R-1」のいずれかの値をとることになる。カウント今回値Cnが「4R+1」かつカウント前回値Cn-1が「4R」である場合、前回の演算周期の象限は第4象限であって、今回の演算周期の異常ではない象限は第1象限であり、今回の演算周期の異常である象限は第2象限、第3象限、及び第4象限である。カウント今回値Cnが「4R」かつカウント前回値Cn-1が「4R」である場合、前回の演算周期の象限は第4象限であって、今回の演算周期の異常ではない象限は第4象限であり、今回の演算周期の異常である象限は第1象限、第2象限、及び第3象限である。カウント今回値Cnが「4R-1」かつカウント前回値Cn-1が「4R」である場合、前回の演算周期の象限は第4象限であって、今回の演算周期の異常ではない象限は第3象限であり、今回の演算周期の異常である象限は第1象限、第2象限、及び第4象限である。
【0070】
図2に示すように、判定部35は、このような第3のマップM3を用いて、カウント今回値Cn、カウント前回値Cn-1、象限情報今回値Qn、及び象限情報前回値Qn-1に基づいて、カウント値Cと象限情報Qとが妥当な関係であるか否かを判定している。カウント値Cと象限情報Qとが妥当な関係でない場合には、カウント値C及び象限情報Qのいずれかが異常であるものと考えられる。カウント値Cと象限情報Qとが妥当な関係でない場合であっても、カウンタ異常フラグFcが生成されていないときには、カウンタ比較回路108によってカウンタ106に異常が発生していないことが確かめられていることから、カウント値Cに異常が発生している可能性よりも象限情報Qに異常が発生している可能性の方が高い。そこで、判定部35は、カウンタ異常フラグFcが生成されていない場合において、カウント値Cと象限情報Qとが妥当な関係でないときには象限情報Qが異常であると判定し、カウント値Cと象限情報Qとが妥当な関係であるときには象限情報Qが異常でないと判定する。
【0071】
具体的には、判定部35は、カウント今回値Cnのカウント前回値Cn-1からの変化が、象限情報今回値Qnの象限情報前回値Qn-1からの変化に即していない場合、象限情報Qに異常が発生した旨判定する。一方、判定部35は、カウント今回値Cnのカウント前回値Cn-1からの変化が、象限情報今回値Qnの象限情報前回値Qn-1からの変化に即している場合、象限情報Qに異常が発生していない旨判定する。例えば、判定部35は、カウント今回値Cnとカウント前回値Cn-1との間に差があるにも関わらず、象限情報今回値Qnが象限情報前回値Qn-1から変化していない場合、象限情報Qに異常が発生した旨判定する。
【0072】
判定部35は、相対角演算部33により演算される今回の演算周期の相対角dである相対角今回値dn、及び相対角前回値出力回路37によって出力された相対角前回値dn-1に基づいて、相対角今回値dnの相対角前回値dn-1からの変化量を演算する。判定部35は、相対角今回値dnの相対角前回値dn-1からの変化量がカウント値Cを正常に演算できると定められた既定変化量を超えない場合、カウント今回値Cnは異常でないと判定する。一方、判定部35は、相対角今回値dnの相対角前回値dn-1からの変化量が既定変化量を超える場合、カウント今回値Cnは異常であると判定する。判定部35は、前回の演算周期において、前々回の演算周期の相対角dである相対角前々回値からの相対角前回値dn-1の変化量が既定変化量を超えるか否かに基づいて、カウント前回値Cn-1の異常を判定している。このことから、相対角今回値dnの相対角前回値dn-1からの変化量が既定変化量を超える場合には、相対角前回値dn-1の相対角前々回値からの変化量が既定変化量を超えていないのであれば、相対角前回値dn-1ではなく、相対角今回値dnが異常であると判定することができる。
【0073】
図2及び
図8に示すように、判定部35は、カウント値C及び象限情報Qに基づいた象限情報Qの異常の判定(
図8中の矢印A1)、相対角d及び象限情報Qに基づいたカウント値Cの異常の判定(
図8中の矢印A2)、相対角今回値dn及び相対角前回値dn-1に基づいたモータ20の回転軸20aの高速回転の判定(
図8中の矢印A3)を実行する。なお、既定変化量は、カウント値C及び象限情報Qが相対角dからずれることが許容されている45度のずれに対応して、45度に設定されている。既定変化量は、回転監視部32からマイコン31へカウント値C及び象限情報Qを適切に伝達できる程度のモータ20の回転軸20aの回転速度に対応した相対角dの変化量に基づいて設定されている。また、規定変化量は、上記の3つの異常の判定を所定周期で繰り返し実行している場合において、回転監視部32からマイコン31にカウント値C及び象限情報Qが正しく伝達できるモータ20の回転軸20aの回転速度という観点も考慮して設定されている。例えば、相対角d及び象限情報Qに基づいたカウント値Cの異常の判定において、モータ20の回転軸20aが回転していない状況ではカウント値Cは異常でないと判定されたとしても、モータ20の回転軸20aが回転している状況ではカウント値Cが異常であると判定されることがあるためである。そこで、既定変化量は、相対角d及び象限情報Qに基づいたカウント値Cの異常の判定において一時的にカウント値Cが異常でないと判定されたとしても、モータ20の回転軸20aの回転速度を考慮した場合に、全ての演算周期において連続的に異常でないと判定される状況にあるかどうかを切り分ける観点で設定されている。既定変化量は、これらの観点に基づいて実験的に求められている。
【0074】
判定部35は、3つの異常の判定において、いずれもカウント値C及び象限情報Qに異常が発生した旨判定しない場合、カウント前回値Cn-1を正式なカウント値Cとして採用し、
図6の第2のマップM2を用いてカウント値Cを変更する。
【0075】
また、カウント値Cを変更する必要があるときは、象限情報Qについても変更する必要がある。そこで、判定部35は、象限情報Qについても、カウント値Cと同様に、第2のマップM2を用いて象限情報Qを変更している。
【0076】
図6は、第2のマップM2を示している。第2のマップM2は、検出信号に基づき演算されるモータ20の相対角dと、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限と、カウント値Cに対する補正値であるカウント補正値との関係を示している。第2のマップM2に示している相対角dと象限とカウント補正値との関係は、具体的にはつぎの通りである。
【0077】
モータ20の相対角dが第2の判定領域A2でいう第1象限の範囲にある場合(0度≦d<90度)、象限情報Qに基づくモータ20の回転軸20aの回転位置が位置する象限は、象限情報Qが異常でないならば第1象限、第2象限、及び第4象限の3つのうちいずれかである。相対角dが0~90度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第4象限に位置していることを示すものであるとき、カウント値Cを増減させる補正値であるカウント補正値は「1」となる。この場合、象限情報Qを増減させる補正値である象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限を反時計回り方向に変化させる値となる。また、相対角dが0~90度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第1象限に位置していることを示すものであるとき、カウント補正値は「0」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限をそのまま変化させない値となる。また、相対角dが0~90度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第2象限に位置していることを示すものであるとき、カウント補正値は「-1」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限を時計回り方向に変化させる値となる。
【0078】
モータ20の相対角dが第2の判定領域A2でいう第2象限の範囲にある場合(90度≦d<180度)、象限情報Qに基づくモータ20の回転軸20aの回転位置が位置する象限は、象限情報Qが異常でないならば第1象限、第2象限、及び第3象限の3つのうちいずれかである。相対角dが90~180度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第1象限に位置していることを示すものであるとき、カウント補正値は「1」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限を反時計回り方向に変化させる値となる。また、相対角dが90~180度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第2象限に位置していることを示すものであるとき、カウント補正値は「0」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限をそのまま変化させない値となる。また、相対角dが90~180度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第3象限に位置していることを示すものであるとき、カウント補正値は「-1」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限を時計回り方向に変化させる値となる。
【0079】
モータ20の相対角dが第2の判定領域A2でいう第3象限の範囲にある場合(180度≦d<270度)、象限情報Qに基づくモータ20の回転軸20aの回転位置が位置する象限は、象限情報Qが異常でないならば第2象限、第3象限、及び第4象限の3つのうちいずれかである。相対角dが180~270度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第2象限に位置していることを示すものであるとき、カウント補正値は「1」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限を反時計回り方向に変化させる値となる。また、相対角dが180~270度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第3象限に位置していることを示すものであるとき、カウント補正値は「0」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限をそのまま変化させない値となる。また、相対角dが180~270度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第4象限に位置していることを示すものであるとき、カウント補正値は「-1」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限を時計回り方向に変化させる値となる。
【0080】
モータ20の相対角dが第2の判定領域A2でいう第4象限の範囲にある場合(270度≦d<360度)、象限情報Qに基づくモータ20の回転軸20aの回転位置が位置する象限は、象限情報Qが異常でないならば第1象限、第3象限、及び第4象限の3つのいずれかである。相対角dが270~360度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第3象限に位置していることを示すものであるとき、カウント補正値は「1」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限を反時計回り方向に変化させる値となる。また、相対角dが270~360度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第4象限に位置していることを示すものであるとき、カウント補正値は「0」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限をそのまま変化させない値となる。また、相対角dが270~360度の場合、象限情報Qがモータ20の回転軸20aの回転位置が第1象限に位置していることを示すものであるとき、カウント補正値は「-1」となる。この場合、象限情報補正値は、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在している象限を時計回り方向に変化させる値となる。
【0081】
図2に示すように、判定部35は、このような第2のマップM2を用いて変更後カウント値Ccを演算する。判定部35は、カウント補正値が「1」の場合、カウント値Cをインクリメントすることで変更後カウント値Ccを演算し、回転角度演算部34に変更後カウント値Ccを出力する。判定部35は、カウント補正値が「0」の場合、カウント値Cをそのまま変更後カウント値Ccとして回転角度演算部34に出力する。判定部35は、カウント補正値が「-1」の場合、カウント値Cをデクリメントすることで変更後カウント値Ccを演算し、回転角度演算部34に変更後カウント値Ccを出力する。
【0082】
回転角度演算部34は、相対角演算部33により演算された相対角d及び判定部35により演算された変更後カウント値Ccを取得する。回転角度演算部34は、相対角dに対して、変更後カウント値Ccに基づいたモータ20の回転軸20aのマルチターン数に360度を乗算した値を加算することにより、モータ20のマルチターンの回転角度θを演算する。
【0083】
一方、判定部35は、カウント値C及び象限情報Qに基づいた象限情報Qの異常の判定、相対角d及び象限情報Qに基づいたカウント値Cの異常の判定、相対角今回値dn及び相対角前回値dn-1に基づいたモータ20の回転軸20aの高速回転の判定のいずれかにおいて、カウント値Cあるいは象限情報Qが異常である旨判定した場合、回転角度演算部34は、モータ20のマルチターンの回転角度θを演算するために必要なカウント値C(変更カウント値Cc)を適切な値で得ることができない。そこで、判定部35によりカウント値Cあるいは象限情報Qが異常である旨判定された場合、回転角度演算部34はモータ20のマルチターンの回転角度θを演算することができないため、マイコン31はステアリング操作の補助を停止する等のフェイルセーフを実行する。また、判定部35は、カウンタ異常フラグFcを取得した場合にもモータ20のマルチターンの回転角度θを演算するために必要なカウント値Cを適切な値で得ることができないため、マイコン31はステアリング操作の補助を停止する等のフェイルセーフを実行する。
【0084】
第1実施形態の作用及び効果を説明する。
(1)各種の信号の伝達の遅延や各種の信号を用いた処理のずれに起因して、カウント値Cが示すマルチターン数と実際のマルチターン数との間にずれが生じることがある。このことから、マイコン31の相対角演算部33により演算された相対角dの内容と、回転監視部32のカウンタ回路101により演算されたカウント値Cの内容とが整合しないことがある。
【0085】
例えば
図9は、回転角度センサ41からの検出信号に基づいて相対角演算部33が相対角dを20度と演算したときの、第1の判定領域A1におけるモータ20の回転軸20aの回転位置が存在する角度領域と、象限情報Qに基づいた第2の判定領域A2におけるモータ20の回転軸20aの回転位置が存在する象限とを示したものである。この点、カウンタ回路101により異常ではないカウント値Cが演算されていたとしても、マイコン31が取得するカウント値Cは、相対角演算部33により演算される相対角dから最大で45度ずれた角度であるときのカウント値になることがある。すなわち、カウンタ回路101により演算されたカウント値Cは、相対角dが335度~65度の範囲にあるときにとりうる値となる。このとき、マイコン31が取得する象限情報Qは、第2の判定領域A2におけるモータ20の回転軸20aの回転位置が第1象限あるいは第4象限に存在することを示すものとなる。このことから、相対角演算部33により演算された相対角dが20度である場合、象限情報Qに基づいた第2の判定領域A2におけるモータ20の回転軸20aの回転位置が存在する象限が第1象限あるいは第4象限であれば、カウント値Cは異常ではない。一方、相対角演算部33により演算された相対角dが20度である場合、象限情報Qに基づいた第2の判定領域A2におけるモータ20の回転軸20aの回転位置が存在する象限が第2象限あるいは第3象限であれば、カウント値Cは異常である。このように、回転角度センサ41からの検出信号に基づいて相対角演算部33により演算された相対角dに対して、異常であるカウント値Cと異常ではないカウント値Cの関係を定めることができる。
【0086】
第1実施形態では、マイコン31の判定部35は、カウント値Cを演算するための第2の判定領域A2に対して所定量として45度ずらした第1の判定領域A1を用いて、カウント値Cの異常を判定している。判定部35は、相対角演算部33により演算された相対角dが20度である場合、すなわち相対角dが第1角度領域(315~45度)の範囲にある場合、象限情報Qに基づいた第2の判定領域A2におけるモータ20の回転軸20aの回転位置が存在する象限が第1象限あるいは第4象限であればカウント値Cは異常ではない、第2象限あるいは第3象限であればカウント値Cは異常であると判定することができる。これは、カウント値Cに最大で45度のずれがあることを考慮すると、カウント値Cが異常ではない場合、相対角dが第1角度領域の範囲にあるときの象限情報Qは、相対角dが270~90度(第1象限あるいは第4象限)の範囲にあることを示すものとなるためである。
【0087】
このことから、相対角dに基づいたモータ20の回転軸20aの回転位置が存在する第1~第4の角度領域に対する、象限情報Qに基づいたモータ20の回転軸20aの回転位置が存在する第1~第4象限の組み合わせに基づいて、カウント値Cが異常であるか否かを判定するための第1のマップM1を生成することができる。このように、判定部35は、カウント値Cを演算するための第2の判定領域A2に対して所定量として45度ずらした第1の判定領域A1の関係を示す第1のマップM1を記憶し、この第1のマップM1を用いてカウント値Cの異常を判定することができる。このため、マイコン31は、異常であるカウント値Cを用いてモータ20のマルチターンの回転角度θを演算することを抑制できるようになる。
【0088】
(2)カウント値Cが異常でない場合においても、カウント値Cには最大で45度のずれが含まれることから、マイコン31の相対角演算部33により演算された相対角dの内容と、回転監視部32のカウンタ回路101により演算されたカウント値C(象限情報Q)の内容とが整合しないことがある。例えば
図9の場合、相対角演算部33により演算された相対角dが20度であるのに対し、象限情報Qが第2の判定領域A2におけるモータ20の回転軸20aの回転位置が第3象限に存在することを示すものである場合、マイコン31の相対角演算部33により演算された相対角dの内容と、象限判定部105により演算された象限情報Q及び象限情報Qを用いて演算されたカウント値Cの内容とは整合していない。そこで、第1実施形態では、判定部35は、カウント値Cを異常と判定しなかった場合、第2のマップM2を用いてカウント値Cを変更している。例えば
図9の場合、判定部35は、第2のマップM2を用いて相対角d及び象限情報Qに基づいてカウント補正値を「1」とし、カウント値Cをインクリメントすることにより、変更後カウント値Ccを「+4」として回転角度演算部34に出力する。このことから、マイコン31の相対角演算部33により演算された相対角dの内容と、判定部35により演算された変更後カウント値Ccの内容とを整合させることができる。
【0089】
(3)判定部35が検出信号に基づいてカウント値Cを変更することにより、変更後カウント値Ccに基づいた第2の判定領域A2におけるモータ20の回転軸20aの回転位置が存在する角度領域と、検出信号を用いて演算された相対角dに基づいた第2の判定領域A2におけるモータ20の回転軸20aの回転位置が存在する角度領域とを一致させることができる。このことから、変更後カウント値Ccの内容と相対角dの内容とを整合したものとすることができる。
【0090】
(4)第1の判定領域A1が有する角度領域の数と第2の判定領域A2が有する象限の数とは同じであり、第1の判定領域A1を第2の判定領域A2に対して45度ずらして構成している。これにより、第2の判定領域A2におけるある角度領域と隣接する角度領域とに対応するように、第1の判定領域A1の角度領域を構成している。例えば第1の判定領域A1の第1角度領域は、第2の判定領域A2の第1象限の半分の角度領域と第4象限の半分の角度領域とに対応している。このことから、相対角d(検出信号)に基づいて第1の判定領域A1のある角度領域にモータ20の回転軸20aの回転位置が存在している場合、カウント値Cが異常でないならば、第1の判定領域A1のある角度領域に対応する第2の判定領域A2の2つの角度領域のいずれかにモータ20の回転軸20aの回転位置は存在することになる。このように、第1の判定領域A1と第2の判定領域A2との設定において、それらの角度領域の数を同数にし、さらに、それらの角度領域のずれに基づく各角度領域の対応関係を均等化することで第1の判定領域A1及び第2の判定領域A2の設定を適切なものとすることができる。
【0091】
(5)第1の判定領域A1を第2の判定領域A2に対して、第2の判定領域A2の1つの角度領域の半分(45度)を超えてあるいは半分未満ずらすように構成すると、第1の判定領域A1の1つの角度領域に第2の判定領域A2の2つの象限が不均等に対応することになる。例えば第1の判定領域A1を第2の判定領域A2に対して時計回り方向に60度ずらすように構成すると、第1の判定領域A1の第1角度領域には、第2の判定領域A2の第1象限のうち30度の角度領域及び第2象限のうち60度の角度領域が対応することになる。この場合、カウント値Cの異常の判定処理が複雑になることや、モータ20の回転軸20aの回転方向によってカウント値Cの異常判定の精度に違いが生じるおそれがある。この点、第1実施形態では、第1の判定領域A1を第2の判定領域A2に対して、第2の判定領域A2の1つの角度領域の半分(45度)ずらすように構成していることから、第1の判定領域A1の1つの角度領域に第2の判定領域A2の2つの象限が均等に対応することになる。このことから、カウント値Cの異常の判定処理をシンプルに構成することができる。また、モータ20の回転軸20aの回転方向によってカウント値Cの異常判定の精度に違いが生じることを抑制することができる。
【0092】
(6)カウント値C及び象限情報Qを相対角dに対して最大で45度ずれることまで許容していることから、判定部35は、カウント値Cが相対角dに対して45度を超えてずれているかを判別できるものであればよい。すなわち、カウント値Cの異常の判定処理の判定精度は、カウント値Cの演算精度に対応したものであればよい。そこで、判定部35は、カウント値C及び象限情報Qのずれを考慮して、第2の判定領域A2に対して45度ずらして構成した第1の判定領域A1を記憶し、この第1の判定領域A1を用いてカウント値Cの異常を判定している。このことから、カウント値Cの異常の判定処理を、カウント値Cの演算精度に対応した、適切な演算負荷の判定処理とすることができる。
【0093】
(7)縁石乗り上げ等に伴う大きな逆入力によって、モータ20の回転軸20aが高速で回転することがある。このような場合には、マイコン31に回転監視部32から適切にカウント値Cが伝達されないことがある。そこで、本実施形態では、マイコン31の判定部35は、相対角dの変化量が既定変化量を超える場合にはカウント今回値Cnが異常であると判定することで、カウント今回値Cnやカウント前回値Cn-1を正式なカウント値Cとしては採用しないようにしている。一方、判定部35は、相対角dの変化量が既定変化量を超えない場合にはカウント今回値Cn及びカウント前回値Cn-1が異常でないと判定することで、カウント前回値Cn-1を正式なカウント値Cとして採用している。なお、カウント前回値Cn-1を正式なカウント値Cとして採用しているのは、カウント前回値Cn-1に関しては、今回の演算周期において異常でないと判定されているだけでなく、前回の演算周期においても異常でないと判定されているためである。これにより、モータ20のマルチターンの回転角度θを演算するために用いられるカウント値Cの精度をさらに高めることが可能になる。
【0094】
(8)カウント前回値Cn-1からカウント今回値Cnへと変化した場合には、このカウント値Cの変化に応じて、象限情報Qが象限情報前回値Qn-1から象限情報今回値Qnへと所定の関係で変化するはずである。例えば、カウント前回値Cn-1が「4R+1」からカウント今回値Cnが「(4R+1)+1」へと変化した場合には、第1象限を示す象限情報前回値Qn-1から第2象限を示す象限情報今回値Qnへと変化するはずである。そうであるにも関わらず、第2象限を示す象限情報今回値Qnへと変化しない場合は、カウント値Cあるいは象限情報Qのいずれかに異常が発生しているものと考えられる。ただし、このようにカウント値Cと象限情報Qとが妥当な関係でない場合であっても、回転監視部32のカウンタ比較回路108においてカウンタ106に異常がないことが確かめられていることから、カウント値Cに異常が発生している可能性よりも象限情報Qに異常が発生している可能性の方が高い。そこで、本実施形態では、判定部35は、カウント値Cの変化に対して象限情報Qが所定通りに変化している場合には象限情報Qは異常でないと判定し、カウント値Cの変化に対して象限情報Qが所定通りに変化していない場合には象限情報Qは異常であると判定することができる。また、判定部35は、前回の演算周期において、象限情報前回値Qn-1が異常でないと判定されているのであれば、カウント値Cの変化に対して象限情報Qが所定通りに変化していない場合、象限情報今回値Qnが異常であると判定することができる。
【0095】
(9)カウンタ比較回路108において、左回転フラグFlあるいは右回転フラグFrを考慮しつつ、カウント今回値Cnとカウント前回値Cn-1との比較に基づいてカウンタ106の異常を判定している。これにより、カウンタ106から異常なカウント値Cが生成されることを抑制することができる。
【0096】
<第2実施形態>
以下、EPSに搭載された角度演算装置の第2実施形態について説明する。ここでは、第1実施形態との違いを中心に説明する。
【0097】
図10に示すように、判定部35は、相対角演算部33により演算された相対角d、象限判定部105により演算された象限情報Q、及びカウンタ回路101により演算されたカウント値Cを取得する。判定部35は、第1のマップM1を用いてカウント値Cを異常と判定しなかった場合、第2のマップM2を用いて、相対角d(検出信号)に基づいて、カウンタ回路101のカウンタ106に記憶されているカウント値Cを変更する。判定部35は、カウント補正値が「1」の場合、左回転フラグFlを生成し、カウント補正値が「-1」の場合、右回転フラグFrを生成する。カウンタ106は、象限判定部105及び判定部35から左回転フラグFlを取得する度にインクリメントし、象限判定部105及び判定部35から右回転フラグFrを取得する度にデクリメントする。
【0098】
マイコン31の回転角度演算部34は、相対角演算部33により演算された相対角d及び判定部35により演算された変更後カウント値Ccを取得する。回転角度演算部34は、相対角dに対して、変更後カウント値Ccに基づいたモータ20の回転軸20aのマルチターン数に360度を乗算した値を加算することにより、モータ20のマルチターンの回転角度θを演算する。
【0099】
第2実施形態の作用及び効果を説明する。
(10)カウンタ回路101のカウンタ106に記憶されているカウント値Cを変更することから、マイコン31の相対角演算部33により演算された相対角dの内容と、カウンタ106が記憶しているカウント値Cの内容とを整合させることができる。また、カウンタ106からカウント値Cを取得して、カウント値Cを用いて実行する処理(例えばモータ20のマルチターンの回転角度θの演算)を適切なものとすることができる。
【0100】
なお、各実施形態は次のように変更してもよい。また、以下の他の実施形態は、技術的に矛盾しない範囲において、互いに組み合わせることができる。
・各実施形態では、第1の判定領域A1は、4つの角度領域から構成していたが、3つの角度領域から構成してもよいし、5つ以上の角度領域から構成してもよい。また、第2の判定領域A2は、4つの象限から構成していたが、3つの象限から構成してもよいし、5つ以上の象限から構成してもよい。すなわち、第1の判定領域A1は、3つ以上の角度領域から構成すればよい。また、第2の判定領域A2は、3つ以上の象限から構成すればよい。
【0101】
例えば
図11及び
図12に示すように、第1の判定領域A1を3つの角度領域から構成し、第2の判定領域A2を3つの象限から構成してもよい。第2の判定領域A2は、正弦波信号Ssinと余弦波信号Scosとの組み合わせ、すなわち検出信号の組み合わせから、モータ20の回転軸20aの1回転(360度)を、120度ごとに3つの象限に分割している。第1象限は、モータ20の相対角dが0~120度の範囲にあるときの象限である。第2象限は、モータ20の相対角dが120~240度の範囲にあるときの象限である。第3象限は、モータ20の相対角dが240~360度の範囲にあるときの象限である。
【0102】
第1の判定領域A1は、正弦波信号Ssinと余弦波信号Scosとの組み合わせ、すなわち検出信号の組み合わせから、モータ20の回転軸20aの1回転(360度)を、120度ごとに3つの角度領域に分割している。第1の判定領域A1は、第2の判定領域A2に対して所定量として60度ずらして構成している。この所定量は、第2の判定領域A2の1つの角度領域の半分の角度(60度)である。この場合、各種の信号の伝達の遅延や各種の信号を用いた処理のずれに起因して、カウント値C及び象限情報Qが、相対角演算部33により演算される相対角dから60度を超えない程度にずれた角度であるときのカウント値及び象限情報になることまで許容するように角度演算装置30を設計している。第1角度領域は、モータ20の相対角dが300~60度の範囲にあるときの象限である。第2角度領域は、モータ20の相対角dが60~180度の範囲にあるときの象限である。第3角度領域は、モータ20の相対角dが180~300度の範囲にあるときの象限である。
【0103】
判定部35は、
図13に示す第1のマップM1及び
図14に示す第2のマップM2を記憶している。判定部35は、第1のマップM1を用いてカウント値Cの異常を判定し、第2のマップM2を用いてカウント値Cを変更している。
【0104】
図13は、第1の判定領域A1及び第2の判定領域A2が3つの角度領域からなる場合の第1のマップM1を示している。モータ20の相対角dが300~60度(0度≦d<60度、300度≦d<360度)の範囲にある場合、すなわちモータ20の回転軸20aの回転位置が第1角度領域内にある場合には、異常ではない象限は第1象限及び第3象限であり、異常である象限は第2象限である。モータ20の相対角dが60~120度(60度≦d<120度)の範囲にある場合、すなわちモータ20の回転軸20aの回転位置が第2角度領域内にある場合には、異常ではない象限は第1象限及び第2象限であり、異常である象限は第3象限である。モータ20の相対角dが120~240度(120度≦d<240度)の範囲にある場合、すなわちモータ20の回転軸20aの回転位置が第3角度領域内にある場合には、異常ではない象限は第2象限及び第3象限であり、異常である象限は第1象限である。
【0105】
図14は、第1の判定領域A1及び第2の判定領域A2が3つの角度領域からなる場合の第2のマップM2を示している。モータ20の相対角dが第2の判定領域A2でいう第1象限の範囲にある場合(0度≦d<120度)、象限情報Qがモータ20の回転軸20aの回転位置が第3象限に位置していることを示すものであるとき、カウント補正値は「1」となり、象限情報Qがモータ20の回転軸20aの回転位置が第1象限に位置していることを示すものであるとき、カウント補正値は「0」となる。モータ20の相対角dが第2の判定領域A2でいう第2象限の範囲にある場合(120度≦d<240度)、象限情報Qがモータ20の回転軸20aの回転位置が第1象限に位置していることを示すものであるとき、カウント補正値は「1」となり、象限情報Qがモータ20の回転軸20aの回転位置が第2象限に存在していることを示すものであるとき、カウント補正値は「0」となる。モータ20の相対角dが第2の判定領域A2でいう第3象限の範囲である場合(240度≦d<360度)、象限情報Qがモータ20の回転軸20aの回転位置が第2象限に位置していることを示すものであるとき、カウント補正値は「1」となり、象限情報Qがモータ20の回転軸20aの回転位置が第3象限に位置していることを示すものであるとき、カウント補正値は「0」となる。判定部35は、このようなカウント補正値を用いてカウント値Cを変更する。
【0106】
・各実施形態では、第1の判定領域A1の角度領域の数と第2の判定領域A2の象限の数とは異なっていてもよい。例えば第2の判定領域A2を
図3に示すように4つの象限から構成し、第1の判定領域A1を
図15に示すように8つの角度領域から構成するようにしてもよい。
【0107】
図15は、8つの角度領域からなる第1の判定領域A1を示している。第1の判定領域A1は、正弦波信号Ssinと余弦波信号Scosとの組み合わせ、すなわち相対角dに基づいて、モータ20の回転軸20aの1回転(360度)を、45度ごとに8つの角度領域に分割している。第1の判定領域A1は、第2の判定領域A2に対して所定量として22.5度ずらして構成している。この所定量は、第2の判定領域A2の1つの角度領域の半分の角度(22.5度)である。この場合、各種の信号の伝達の遅延や各種の信号を用いた処理のずれに起因して、カウント値C及び象限情報Qが、相対角演算部33により演算される相対角dから22.5度を超えない程度にずれた角度であるときのカウント値及び象限情報になることまで許容するように角度演算装置30を設計している。第1角度領域は、モータ20の相対角dが337.5~22.5度の範囲にあるときの角度領域である。第2角度領域は、モータ20の相対角dが22.5~67.5度の範囲にあるときの角度領域である。第3角度領域は、モータ20の相対角dが67.5~112.5度の範囲にあるときの角度領域である。以降、第4~第8角度領域についても、第1~第3角度領域と同様に45度刻みの角度領域により構成している。
【0108】
判定部35は、
図16に示す第1のマップM1及び
図17に示す第2のマップM2を記憶している。判定部35は、第1のマップM1を用いてカウント値Cの異常を判定し、第2のマップM2を用いてカウント値Cを変更している。
【0109】
図16は、第1の判定領域A1が8つの角度領域からなり、第2の判定領域A2が4つの象限からなる場合の第1のマップM1を示している。モータ20の相対角dが337.5~22.5度(0度≦d<22.5度、337.5度≦d<360度)の範囲にある場合、すなわちモータ20の回転軸20aの回転位置が第1角度領域の範囲内にある場合には、異常ではない象限は第1象限及び第4象限であり、異常な象限は第2象限及び第3象限である。モータ20の相対角dが22.5~67.5度(22.5度≦d<67.5度)の範囲にある場合、すなわちモータ20の回転軸20aの回転位置が第2角度領域の範囲内にある場合には、異常ではない象限は第1象限であり、異常である象限は第2~第4象限である。モータ20の相対角dが67.5~112.5度(67.5度≦d<112.5度)の範囲にある場合、すなわちモータ20の回転軸20aの回転位置が第3角度領域の範囲内にある場合には、異常ではない象限は第1象限及び第2象限であり、異常である象限は第3象限及び第4象限である。以後、モータ20の回転軸20aの回転位置が第4~第8角度領域の範囲内にある場合についても、第1~第3角度領域と同様に異常ではない象限及び異常である象限が定められている。
【0110】
図17は、第1の判定領域A1が8つの角度領域からなり、第2の判定領域A2が4つの象限からなる場合の第2のマップM2を示している。モータ20の相対角dが第2の判定領域A2でいう第1象限の範囲にある場合(0度≦d<90度)、象限情報Qが、モータ20の回転軸20aの回転位置が第4象限に存在していることを示すものであるときカウント補正値は「1」となり、第1象限に存在していることを示すものであるときカウント補正値は「0」となり、第2象限に存在していることを示すものであるときカウント補正値は「-1」となる。モータ20の相対角dが第2の判定領域A2でいう第2~第4象限にある場合についても、象限情報Q及びカウント補正値の関係が定められている。判定部35は、このようなカウント補正値を用いてカウント値Cを変更する。
【0111】
・各実施形態では、カウンタ回路101は、モータ20の回転軸20aが単位回転量(90度)だけ回転したことを見逃さない周期で、すなわち第2の判定領域A2においてモータ20の回転軸20aの回転位置が存在する象限がある象限から隣接する象限に変化したことを見逃さない周期でカウント値Cを演算していたが、これに限らない。例えば、第1の判定領域A1を8つの角度領域から構成し、第2の判定領域A2を8つの角度領域から構成した場合、カウンタ回路101は、モータ20の回転軸20aの回転位置が存在する象限が、ある象限から2つ隣の象限に変化したことを見逃さない周期でカウント値Cを演算するようにしてもよい。この場合、カウンタ106は、第2の判定領域A2の象限の変化に応じて、カウント値Cを一度に「2」だけ加減算することがある。なお、カウント値Cの演算周期は適宜変更可能である。また、判定部35は、カウント値Cに基づいた第2の判定領域A2におけるモータ20の回転軸20aの回転位置が存在する角度領域を、相対角dに基づいた第2の判定領域A2におけるモータ20の回転軸20aの回転位置が存在する角度領域に一致するようにカウント値Cを変更してもよいし、近付けるようにカウント値Cを変更してもよい。
【0112】
・各実施形態では、判定部35は、相対角演算部33により演算される相対角dを取得したが、回転角度センサ41からの検出信号を取得し、この検出信号に基づいて第1の判定領域A1におけるモータ20の回転軸20aの回転位置が存在する角度領域を判定してもよい。
【0113】
・各実施形態では、判定部35は、カウント値Cが異常ではない場合、第2のマップM2を用いてカウント値Cを変更したが、カウント値Cを変更しなくてもよい。判定部35は、カウント値Cが異常であると判定された場合にはフェイルセーフを実行することから、異常であるカウント値Cを用いてモータ20のマルチターンの回転角度θを演算することが抑制され、この回転角度θを用いて各種の処理が実行することを抑制できる。
【0114】
・各実施形態では、第1の判定領域A1を第2の判定領域A2に対してずらす方向を、時計まわり方向としていたが、反時計まわり方向としてもよい。
・第1の判定領域A1を第2の判定領域A2に対する所定量のずれは、各種の信号の伝達と各種の信号を用いた処理のずれを考慮して設定したが、これに限らない。例えば、この所定量は、カウント値Cの異常判定の判定精度を確保する観点から設定してもよいし、第1の判定領域A1の各角度領域を容易に設計するという観点から設定してもよい。
【0115】
・各実施形態では、判定部35は、カウント値C及び象限情報Qに基づいた象限情報Qの異常の判定、相対角d及び象限情報Qに基づいたカウント値Cの異常の判定、相対角今回値dn及び相対角前回値dn-1に基づいたモータ20の回転軸20aの高速回転の判定において、いずれもカウント値C及び象限情報Qに異常が発生した旨判定していない場合、カウント前回値Cn-1を正式なカウント値Cとして採用したが、これに限らない。すなわち、判定部35は、これら3つの判定において、いずれもカウント値C及び象限情報Qに異常が発生した旨判定していない場合、カウント今回値Cnを正式なカウント値Cとして採用してもよい。
【0116】
・各実施形態において、判定部35は、演算周期毎に、カウント値C及び象限情報Qに基づいた象限情報Qの異常の判定、相対角d及び象限情報Qに基づいたカウント値Cの異常の判定、相対角今回値dn及び相対角前回値dn-1に基づいたモータ20の回転軸20aの高速回転の判定を実行したが、これに限らない。例えば、判定部35は、10回の演算周期のうち特定の1回の演算周期のみで象限情報Qの異常の判定を実行するようにしてもよい。この場合には、カウント今回値Cnのカウント前回値Cn-1からの変化が象限情報今回値Qnの象限情報前回値Qn-1からの変化に即していないとき、象限情報今回値Qnあるいは象限情報前回値Qn-1の少なくとも一方が異常である旨判定する。
【0117】
・各実施形態では、既定変化量は、カウント値C及び象限情報Qが相対角dからずれることが許容されている45度のずれに対応して設定されていたが、これに限らない。例えば、既定変化量は、モータ20の回転軸20aの回転速度の規制をさらに厳しくするために45度よりも小さい角度にしてもよいし、モータ20の回転軸20aの回転速度が明らかに異常な値を示すものを規制する観点で45度よりも大きい角度にしてもよい。すなわち、既定変化量は、相対角dの変化量の異常を判定できるのであればどのような観点で設定されるものであってもよい。
【0118】
・各実施形態では、判定部35は、相対角今回値dn及び相対角前回値dn-1に基づいてモータ20の回転軸20aの高速回転の判定を実行したが、これに限らない。例えば、判定部35は、相対角今回値dn及び相対角前回値dn-1に加えて、相対角前回値dn-1よりも前の演算周期の相対角dに基づいて、モータ20の回転軸20aの高速回転の判定を実行してもよい。
【0119】
・各実施形態では、判定部35は、カウント今回値Cnのカウント前回値Cn-1からの変化が象限情報今回値Qnの象限情報前回値Qn-1からの変化に即しているかどうかに基づいて、象限情報Qの異常を判定したが、これに限らない。例えば、判定部35は、カウント今回値Cn及びカウント前回値Cn-1に加えてカウント前回値Cn-1よりも前の演算周期のカウント値Cを用い、象限情報今回値Qn及び象限情報前回値Qn-1に加えて象限情報前回値Qn-1よりも前の演算周期の象限情報Qを用いて、象限情報Qの異常を判定するようにしてもよい。
【0120】
・各実施形態では、判定部35は、カウント値C及び象限情報Qに基づいた象限情報Qの異常の判定、相対角d及び象限情報Qに基づいたカウント値Cの異常の判定、相対角今回値dn及び相対角前回値dn-1に基づいたモータ20の回転軸20aの高速回転の判定を実行したが、これに限らない。判定部35は、少なくとも相対角d及び象限情報Qに基づいたカウント値Cの異常の判定を行えばよい。判定部35において相対角d及び象限情報Qに基づいたカウント値Cの異常の判定のみを実行する場合、
図18に示すように、角度演算装置30は、カウント前回値出力回路107、カウンタ比較回路108、前回値出力回路36、及び相対角前回値出力回路37を省いた構成となる。
【0121】
・各実施形態では、回転監視部32は、特定の入力に対して定められた演算を実行するASICであったが、これに限らない。例えば回転監視部32は、マイクロプロセッシングユニット等からなるマイコンによって実現してもよい。また、回転監視部32は、その記憶部に記憶されているプログラムを読み出して当該プログラムに応じた演算を実行するものであってもよい。これらの場合であっても、マルチターンの回転角度θの演算負荷よりも演算負荷の小さいカウント値Cを演算することになる分、回転監視部32の構成はマイコン31の構成よりも簡素な構成とすることができる。また、回転監視部32をマルチターンの回転角度θの演算等の特定の機能に特化した低消費電力のマイコンによって実現してもよい。この場合であっても、特定の機能に特化している分だけ、回転監視部32の構成をマイコン31よりも簡素な構成とすることができる。
【0122】
・回転角度センサ41は、例えばホール素子を用いたセンサであってもよいし、レゾルバを用いたセンサであってもよい。
・回転角度センサ41は、例えばステアリング軸11の回転角度を検出するようにしてもよい。ステアリング軸11の回転角度は、モータ20とステアリング軸11との間に介在される減速機構21の減速比等を考慮すれば、モータ20のマルチターンの回転角度θに換算することができる。
【0123】
・回転角度センサ41は、モータ20に設けられていたが、ステアリングホイール10の回転軸であるステアリング軸11に設けられていてもよい。
・回転監視部32は、イグニッションスイッチ51がオンされている場合においても、カウント値Cを間欠的に演算したが、イグニッションスイッチ51がオンされている場合には、カウント値Cを演算しないようにしてもよい。この場合、イグニッションスイッチ51がオンからオフへと切り替わると、例えばマイコン31は現在の回転角度θを記憶し、回転監視部32は動作を開始してからカウント値Cを間欠的に演算して記憶する。そして、イグニッションスイッチ51がオフからオンに切り替わると、マイコン31は、イグニッションスイッチ51がオフされていた期間に回転監視部32が演算したカウント値C及び記憶した回転角度θを読み出し、モータ20の回転角度θを演算する。
【0124】
・判定部35は、象限判定部105により演算される象限情報Qを取り込み、この象限情報Qを用いてカウント値Cの異常の判定及び変更を実行したが、これに限らない。例えば、回転監視部32によりイグニッションスイッチ51がオンされている期間においてもカウント値Cの演算が継続される場合、判定部35は、カウンタ106から取得したカウント値Cから象限情報Qを生成して、この象限情報Qを用いてカウント値Cの異常の判定及び変更を実行してもよい。
【0125】
・判定部35は、カウント値Cの異常が判定されていない場合、カウント値Cの変更に加えて象限情報Qの変更を実行したが、少なくともカウント値Cの変更のみを実行すればよく、象限情報Qについては変更を実行しなくてもよい。
【0126】
・前回値出力回路36は、判定部35においてカウント補正値に基づいて変更された今回の演算周期の変更後カウント値Cc及び象限情報補正値に基づいて変更された今回の演算周期の変更後の象限情報Qを保持するようにしてもよい。すなわち、本実施形態において、カウント値C及び象限情報Qは、通信遅れ等を考慮して変更されたものがカウント前回値Cn-1及び象限情報前回値Qn-1として前回値出力回路36に記憶される。そして、前回値出力回路36は、今回の演算周期の変更後カウント値Cc及び今回の演算周期の変更後の象限情報Qが入力される度に、その前回の演算周期の変更後カウント値Cc及び前回の演算周期の変更後の象限情報Qを判定部35に出力する。これにより、判定部35は、前回の演算周期において補正された情報を用いてカウント値C及び象限情報Qの異常を判定することができるようになる。
【0127】
・第1のマップM1は、相対角dに基づいた第1の判定領域A1におけるモータ20の回転軸20aの回転位置が存在する角度領域と、象限情報Q及びカウント値Cに基づいた第2の判定領域A2におけるモータ20の回転軸20aの回転位置が存在する象限との関係を示したものであってもよい。また、第2のマップM2は、モータ20の相対角dと、象限情報Q及びカウント値Cに基づいたモータ20の回転軸20aの回転位置が存在している象限と、カウント値Cに対する補正値であるカウント補正値との関係を示したものであってもよい。
【0128】
・象限判定部105は、コンパレータ104により生成されるHiレベルの信号とLoレベルの信号との組み合わせの変化に基づいて左回転フラグFlあるいは右回転フラグFrを生成するとともに、左回転フラグFlあるいは右回転フラグFrの生成と並行して象限情報Qを生成するようにしてもよい。すなわち、カウンタ回路101は、カウント値Cの演算及び象限情報Qの演算を並列的に実行してもよい。
【0129】
・マイコン31は、回転監視部32(カウンタ回路101及び通信インターフェース102)を介して、回転角度センサ41の検出信号を取り込んでもよい。この場合、回転角度センサ41は、イグニッションスイッチ51がオンされている間、マイコン31と同様に通電される。
【0130】
・各実施形態のEPSは、モータ20の回転軸20aとラック軸12の軸線とが平行なEPSに具体化してもよいし、回転軸20aとラック軸12とが同軸に存在するEPSに適用してもよい。また、EPSに限らず、例えばステアバイワイヤ式のステアリング装置に具体化してもよい。
【0131】
・各実施形態のEPSが搭載される車両は、車両駆動源にエンジンを採用するいわゆる内燃機関を有する車両であってもよいし、車両駆動源にモータを採用するいわゆる電動車両であってもよい。なお、電動車両の場合のイグニッションスイッチは、車両駆動源としてのモータを始動するスイッチである。
【符号の説明】
【0132】
1…操舵機構、3…アクチュエータ、10…ステアリングホイール、11…ステアリング軸、12…ラック軸、15…転舵輪、20…モータ、20a…回転軸、21…減速機構、30…角度演算装置、31…マイコン、32…回転監視部、33…相対角演算部、34…回転角度演算部、35…判定部、36…前回値出力回路、37…相対角前回値出力回路、40…トルクセンサ、41…回転角度センサ、50…バッテリ、51…イグニッションスイッチ、100…電源回路、101…カウンタ回路、102…通信インターフェース、103…増幅器、104…コンパレータ、105…象限判定部、106…カウンタ、107…カウント前回値出力回路、108…カウンタ比較回路、θ…回転角度、A1…第1の判定領域、A2…第2の判定領域、C…カウント値、Cc…変更後カウント値、Cn…カウント今回値、Cn-1…カウント前回値、d…相対角、dn…相対角今回値、dn-1…相対角今回値、Fc…カウンタ異常フラグ、Fl…左回転フラグ、Fr…右回転フラグ、M1…第1のマップ、M2…第2のマップ、M3…第3のマップ、Q…象限情報、Qn…象限情報今回値、Qn-1…象限情報前回値、Ssin…正弦波信号、Scos…余弦波信号、Th…操舵トルク。