以下、本発明を具体化した各実施形態を図面に基づいて説明する。なお、以下の各実施形態相互において、互いに同一もしくは均等である部分には、図中、同一符号を付しており、同一符号の部分についてはその説明を援用する。
(第1実施形態)
本実施形態にかかる始動モータ(回転機)は、二輪車両に搭載されたエンジン(内燃機関)を適用対象としており、図1は、エンジンの吸気ポートへ燃料を噴射するインジェクタ10、エンジンの燃焼室内にて火花放電して混合気を着火させる点火装置11、インジェクタ10および点火装置11の作動を制御する電子制御装置(ECU13)、後に詳述するACGスタータ20(始動モータ)を示す。
ACGスタータ20は、エンジンの始動モータとして機能するとともに、エンジンのクランク軸14(出力軸)により駆動して交流発電機としても機能するブラシレス三相交流モータである。ちなみに、二輪車両の駆動輪とクランク軸14との動力伝達経路中には、以下に説明するトルク伝達機構が備えられている。すなわち、ACGスタータ20のモータ駆動を開始してからクランク軸14の回転速度NEが所定値以上になるまではトルク伝達を遮断し、所定値に達した時点でトルク伝達するように作動する、遠心クラッチ等のトルク伝達機構である。
ACGスタータ20は、U相の電気角を表したU相信号を出力するU相センサSU、V相の電気角を表したV相信号を出力するV相センサSV、およびW相の電気角を表したW相信号を出力するW相センサSWを有している。なお、これらのUVW相センサSU〜SWのうちU相センサSU(位相センサ)については、クランク軸14の絶対回転位置を表したクランク位置信号(内燃機関制御用信号の基準位置信号)を出力する機能をも兼ね備えている。
ECU13は、これらのUVW相センサSU〜SWから出力されるUVW相信号(モータ制御用信号)に基づき、ACGスタータ20のU相コイルCU、V相コイルCVおよびW相コイルCWへの通電タイミングを制御することで、ACGスタータ20を所望の回転方向へ回転駆動させるようにモータ駆動制御する。
スロットルセンサ15は、吸気量を調節するスロットルバルブの開度を検出する。吸気圧センサ16は、吸気ポート内の負圧を検出する。そしてECU13は、ACGスタータ20から出力されるクランク位置信号、スロットルセンサ15から出力されるスロットル開度、吸気圧センサ16から出力される負圧等の信号に基づき、インジェクタ10および点火装置11の作動を制御する。
より詳細に説明すると、ECU13は、クランク位置信号に基づきクランク軸14の回転速度NEを算出し、吸気圧センサ16による負圧PMに基づきエンジン負荷を算出する。また、これらのNEおよびPMに基づき、燃料の目標噴射量、目標噴射時期、目標点火時期を算出する。そして、UVW相センサSU〜SWから出力されるUVW相信号およびクランク位置信号に基づきクランク軸14の絶対回転位置を算出し、算出した絶対回転位置を基準として、目標噴射時期で燃料が噴射されるようにインジェクタ10の作動を制御するとともに、目標点火時期で点火するように点火装置11の作動を制御する。
次に、図2および図3を用いて、ACGスタータ20のハード構成について説明する。なお、図2はACGスタータ20およびクランク軸14の断面図、図3は図2のA矢視図である。
ACGスタータ20は、ロータ30の内周側にステータ40を備えて構成されている。ロータ30は、有底円筒形状のハウジング31と、ハウジング31の内周面に固定された永久磁石(N極マグネット32NおよびS極マグネット32S)とを備える。N極マグネット32NおよびS極マグネット32Sは、回転方向に交互に並べて配置されており、図3の例では12個(12極)の永久磁石を並べている。ハウジング31は、ボルト33等の締結手段によりクランク軸14に固定され、クランク軸14と同じ回転速度(NE)で常時回転する。これにより、ロータ30はエンジンのフライホイールとしても機能する。
ステータ40は、先述したU相コイルCU、V相コイルCVおよびW相コイルCWコイルおよびUVW相センサSU〜SWと、これらのコイルが巻き回されるティース部41が形成された鉄心42とを備える。ティース部41は回転方向に複数並べて配置されており、各々のティース部41には、U相コイルCU、V相コイルCVおよびW相コイルCWコイルが順番に巻き回されている。図3の例では、18個のティース部41を並べている。
UVW相センサSU〜SWは、ステータ40の外周面上に取り付けられることで、N極マグネット32NおよびS極マグネット32Sと対向する位置にある。これにより、ロータ30が回転することに伴い生じるN極マグネット32NおよびS極マグネット32Sによる磁性の変化を検出する。なお、UVW相センサSU〜SWにはホールICが採用されている。そのため、ロータ30が回転していない時であっても、対向するマグネットの極性に応じた検出信号を出力することができる。
UVW相センサSU〜SWは、ロータ回転方向においてそれぞれ異なる位置に取り付けられている。具体的には、複数のティース部41の間隙41aのうち各々が異なる間隙41aに配置されており、図4(a)の例では、複数の間隙41aのうち隣り合う間隙に、U相センサSU、V相センサSV、W相センサSWを順番に配置している。そのため、UVW相センサSU〜SWの各々は機械角20度分だけずれている。
図4(a)に示すように、複数のマグネット32S,32Nのうち所定の一極分のマグネット32S(A)(図4(a)の例ではS極マグネット32S)の一部分には、以下に説明する異極磁性部34が形成されている。すなわち、図4(a)の斜線に示す部分だけは、S極マグネット32Sとは異なる極性(N極)に着磁されている。この異極磁性部34は、所定のマグネット32S(A)のうちロータ回転軸方向(図4(a)の上下方向)の一端部分に形成されるとともに、回転方向(図4(a)の左右方向)のうち異極磁性部34の両側には、所定のマグネット32S(A)の極性が存在するように形成する。要するに、所定のマグネット32S(A)の上端部分を回転方向に3分割し、その中央部分を異極磁性部34として形成する。
V相センサSVおよびW相センサSWはロータ回転軸方向(図4(a)の上下方向)において同じ位置に配置されているのに対し、U相センサSUは、V相センサSVおよびW相センサSWとは回転軸方向において異なる位置に配置されている。これにより、異極磁性部34の回転軌道34a上にU相センサSUが位置し、V相センサSVおよびW相センサSWについては回転軌道34aから外れた位置となるようにする。
本実施形態では、センサSU〜SWがN極を検出した時にはロー信号(二進数「0」)を出力し、S極を検出した時にはハイ信号(二進数「1」)を出力するよう設定してある。そして、マグネット32S,32Nは12個(12極)であるため、U相信号、V相信号、W相信号の各々は、ロータ30が30度回転する毎にローとハイが切り替わる(図5参照)。したがって、UVW相の各々の電気角360°は、クランク軸14の回転角度(機械角)60°に相当する。但し、U相信号については異極磁性部34の検出時にもローに切り替わる。また、ロータ30が10度回転する毎に、UVW相センサSU〜SWのいずれかにおいてローとハイが切り替わることとなる。
ちなみに、図4(a)の如く、N極マグネット32NとS極マグネット32Sの間に極性を有しない部材32aが介在している場合において、この部材32aがセンサSU〜SWに対向して極性を検出できない時には、ロー信号およびハイ信号のうち予め設定しておいた信号(例えばロー信号)であるとみなして処理すればよい。
なお、前記部材32aが存在しないよう、N極マグネット32NとS極マグネット32Sを隣接させたロータ30を採用してもよいことは勿論である。また、1つのマグネット片をN極とS極に着磁することで、複数のN極マグネット32NおよびS極マグネット32Sを1つのマグネット片から形成したロータを採用してもよい。なお、この場合のロータでは、複数(例えば4つ)のマグネット片を用いて構成してもよいし、1つのマグネット片を用いて構成してもよい。
図5は、上段から順に、クランク角、組合せ情報NNUM、UVW相信号の二進数表記、UVW相信号、点火信号、噴射信号、エンジン行程を示すタイムチャートである。組合せ情報NNUMとは、同時期に出力されるU相信号、V相信号およびW相信号の組合せを表した仮想信号であり、本実施形態では、UVW相信号の二進数表記を組み合わせて算出した十進数の数値としている。
具体的には、二進数表記の1桁目をU相信号の2進数、2桁目をV相信号の2進数、3桁目をW相信号の2進数で表した3桁の二進数を、十進数に変換した数値が組合せ情報NNUMである。この数値NNUMはECU13により算出される。例えば、最左欄に示すようにUVW相信号が各々「1」「0」「1」であれば、NNUMは「5」となる。
図中の符号ESは、異極磁性部34を検出したことによりロー信号となった部分を示しており、当該部分の信号が「内燃機関制御用信号」に相当し、符号ES以外の部分の信号は「モータ制御用信号」に相当する。この内燃機関制御用信号ESが現れる部分を除けば、NNUMの値は5→1→3→2→6→4の順に繰り返しローテーションして変化する。
図中の符号taに示すように、内燃機関制御用信号ESを検出した時のNNUM値は「0」となるが、ES検出時以外では、NNUM値が「0」になることはない。したがって、NNUM値「0」を検出した時点でのクランク角を基準として、ECU13はクランク軸14の絶対回転位置を算出できる。そして、絶対回転位置を把握できれば、各々のUVW相信号の立ち上りまたは立ち下りのタイミング(つまりNNUMの更新タイミング)と、4サイクルエンジンの1回転分の位置関係を特定できる。
例えば、NNUM値「0」が現れた後、NNUM値「1」が2回目に現れたtb時点が、エンジンのピストンが下死点BDCに達した時期であると特定できる。なお、吸気圧センサ16の値を参照すれば、前記下死点BDC時期が排気行程および圧縮行程のいずれであるかを判別(行程判別)できる。これにより、絶対回転位置を基準として、NNUMの更新タイミングに基づき燃料噴射時期や点火時期を目標時期とするように制御できる。
さらにECU13は、現時点でのNNUM値に基づき次回のNNUM値を特定し(特定手段)、その特定した次回NNUM値に基づきU相コイルCU、V相コイルCVおよびW相コイルCWへの通電制御内容を決定する。例えば、今回NNUM値が「3」であれば、前記ローテーションに基づき次回NNUM値は「2」であると特定できる。つまり、U相コイルCUが巻き回されたティース部41は、S極マグネット32Sの対向位置(ハイ)からN極マグネット32Nの対向位置(ロー)へと移り変わるタイミングにあると言える。そのため、U相コイルCUへの通電オンオフ状態を切り替えるタイミングにあると言える。
このように、U相コイルCUへの通電は、U相信号の立ち上りを示すNNUM値「4」、または立ち下がりを示すNNUM値「3」が検出されたか否かに基づきECU13が制御する。同様にして、V相コイルCVおよびW相コイルCWへの通電もNNUM値に基づき制御する。なお、NNUM値「0」については、モータ駆動用コイルCU,CV,CWと対向している「1」でUVW相コイルCU〜CWへの通電制御を実施すればよい。
さらにECU13は、NNUM値の履歴に基づき、ACGスタータ20が逆転しているか否かを検知する。例えば、正転していれば上述の如くNNUM値は5→1→3→2→6→4の順に変化する筈である。一方、逆転していればNNUM値は4→6→2→3→1→5の順に変化する筈である。
ところで、ACGスタータ20によりエンジンを始動させるにあたり、エンジンのピストンが圧縮行程のTDC直前位置から始動させようとすると、ACGスタータ20に要する駆動トルクが圧縮分だけ大きくなるので、エンジンの始動性悪化が懸念される。そこで、エンジン始動開始前に、クランク軸14を逆転させて始動性が良好となるピストン位置に設定しておく、といったスイングバック制御を実施する場合がある。このように、ACGスタータ20を逆転駆動させたい場合があるが、この場合には、例えば今回NNUM値が4であれば、次回NNUM値は6であると特定し、その特定値に応じてUVW相コイルCU〜CWへの通電タイミングを制御すればよい。
図6は、ECU13に備えられたマイコン13a(図1参照)が、上述の如くUVW相コイルCU〜CWに対する通電制御を実施する処理の手順を示すフローチャートである。当該処理は、所定周期(例えば先述のマイコン13aのCPUが行う演算周期、又は所定のクランク角度毎)で繰り返し実行される。或いは、回転停止時には前記所定周期で実行する一方で、回転時においては以下に説明するエッジ検知が為される毎に実行してもよい。すなわち、図1に示すマイコン13aは、各センサSU〜SWから出力されて入力処理された信号(図5に示すUVW相信号)に対し、その信号が変化するタイミングを捕捉するキャプチャー機能を有している。要するに、UVW相信号の立上りおよび立下りのタイミング(エッジ検知タイミング)を検知する。そして、このエッジ検知がなされる毎に図6の処理を実行する。
先ず、図6に示すステップS10において、U相信号、V相信号およびW相信号の各々を、UVW相センサSU〜SWから取得する。続くステップS20(組合せ情報生成手段)では、UVW相信号に基づき、これらの信号の組合せを表した組合せ情報NNUMを算出する。続くステップS30では、NNUM値に基づき、次回のNNUM値を算出する。具体的には、先述の5→1(0)→3→2→6→4といった正転時ローテーションに基づき、例えば今回NNUM値が「5」であれば次回NNUM値は「1」であると算出する。なお、今回NNUM値が「0」であれば次回NNUM値は「3」であると算出する。
続くステップS40では、ステップS30で算出した次回NNUM値に基づき、UVW相コイルCU〜CWへの通電制御を実施する。これによりACGスタータ20は所定の回転方向でモータ駆動する。
例えば、U相コイルCUへの通電制御について説明すると、次回NNUM値が「2」または「5」である場合には、次回NNUM値を構成するU相信号の値は、今回NNUM値を構成するU相信号の値から変化することを意味する。よって、次回NNUM値が「2」または「5」であると特定した時点で、U相コイルCUへの通電制御内容をオンからオフ、或いはオフからオンに切り替える。
V相コイルCVおよびW相コイルCWへの通電制御についても同様にして、次回NNUM値が「3」または「4」であると特定した時点でV相コイルCVへの通電制御内容を切り替え、次回NNUM値が「6」または「1」であると特定した時点でW相コイルCWへの通電制御内容を切り替える。
続くステップS50では、先述したようにNNUM値「0」が現れてクランク軸14の絶対回転位置の検知が為されているか否かを判定する。検知済みであれば(S50:YES)、次のステップS60に進み、検知した絶対回転位置およびUVW相信号(またはNNUM値)に基づき、燃料噴射時期および点火時期が目標時期となるよう、インジェクタ10および点火装置11の作動を制御する。但し、絶対回転位置の検知が為されていなければ(S50:NO)、インジェクタ10および点火装置11を作動させることなく待機する。
図5の例では、ts1時点で点火装置11の駆動を開始し、ts2時点で点火させている。また、tf1の時点でインジェクタ10による燃料噴射を開始し、tf2の時点で噴射を終了させている。そして、内燃機関制御用信号ESが現れた時のクランク角(絶対回転位置)を基準とし、内燃機関制御用信号ESが吸入行程で出現した後、U相信号の4回目の立上りタイミング(または4回目のNNUM値「5」出現タイミング)をts1時点とし、W相信号の5回目の立下りタイミング(または5回目のNNUM値「1」出現タイミング)をts2時点として点火制御する。
また、内燃機関制御用信号ESが爆発行程で出現した後、V相信号の3回目の立下りタイミング(または3回目のNNUM値「4」出現タイミング)をtf1時点とし、V相信号の5回目の立上りタイミング(または5回目のNNUM値「3」出現タイミング)をtf2時点として燃料噴射制御する。
なお、吸気圧センサ16の検出値に基づき、下死点BDC時期が排気行程および圧縮行程のいずれであるかを行程判別することは先述した通りであるが、この行程判別が未だ為されていない場合には、ts1’〜ts2’およびtf1’〜tf2’でも点火装置11およびインジェクタ10を駆動させる。また、図5の例では、各種の点火制御時期ts1,ts2および噴射制御時期tf1,tf2がUVW相信号の立上りまたは立下りタイミングと一致しているが、一致していない場合には、目標時期の直前におけるUVW相信号の立上りまたは立下りタイミングから、所定時間が経過した時点で点火制御または噴射制御を実施すればよい。
以上詳述した本実施形態によれば、以下の効果が得られるようになる。
(1)異極磁性部34の回転軌道34a上にU相センサSUを配置することで、モータ制御用信号を出力するU相センサSUを利用して内燃機関制御用信号ESを出力でき、燃料噴射制御や点火制御等のエンジン制御に要するクランク軸14の絶対回転位置を把握できるようになる。よって、内燃機関制御用信号ESを出力する専用のセンサ(クランク回転位置センサ)を廃止することができ、センサ個数低減を図ることができる。
(2)U相信号のハイとローだけでは、内燃機関制御用信号ESによるロー信号とモータ制御用信号によるロー信号との見分けがつかない。特に、U相信号の履歴を取得できていないACGスタータ20の駆動開始時またはACGスタータ20の停止時には、U相信号のローが内燃機関制御用信号ESによるものであるか否かを特定できない。これに対し本実施形態では、U相信号、V相信号およびW相信号の組合せ情報NNUMを算出するので、当該NNUM値に基づけば、ACGスタータ20が停止していたとしても、NNUM値が「0」であれば、その時のU相信号のローが内燃機関制御用信号ESによるものであると特定できる。よって、エンジン制御に要する絶対回転位置を迅速に把握できる。
特に、アイドルストップ制御システムを有する車両においては、エンジンを自動再始動させるにあたり、上述の如く絶対回転位置を迅速に把握できるので、インジェクタ10及び点火装置11の駆動開始を迅速にでき、好適である。
(3)所定のマグネット32S(A)の上端部を、回転方向に3分割し、その中央部分に異極磁性部34を形成している。そのため、回転方向全体に亘って形成する従来構造に比べて、所定のマグネット32S(A)と異極磁性部34とが上下方向で磁気短絡する長さを短くできる。よって、ACGスタータ20によるモータ駆動力低下を抑制できるとともに、ACGスタータ20による発電量低下を抑制できる。
(4)また、上述の如く3分割してその中央部分に異極磁性部34を形成するので、所定のマグネット32S(A)のエッジ32bを、異極磁性部34ではなくS極マグネット32Sのエッジにできる。よって、所定のマグネット32S(A)の隣に位置する隣接マグネット32N(B)(C)のエッジ32cから所定のマグネット32S(A)のエッジ32bに切り替わる転流タイミングtc(図5参照)を、U相センサSUで検知できるようになる。よって、U相コイルCUに対する通電制御のタイミングを高精度で制御できる。
(5)異極磁性部34は、所定のマグネット32S(A)に対向するティース部41と極性不整合になることは避けられないが、本実施形態によれば、上述の如く3分割してその中央部分に異極磁性部34を形成するので、所定のマグネット32S(A)の上端部を回転方向全体に亘って異極磁性部34に形成する場合に比べて、異極磁性部34の回転方向長さを短くできる。そのため、所定のマグネット32S(A)に対する異極磁性部34の占有面積を小さくでき、極性不整合に伴い生じるACGスタータ20の出力低下を抑制できる。
(6)さらにまた、上述の如く3分割して異極磁性部34を形成するので、内燃機関制御用信号ESのハイとローの切り替わりタイミングを、V相信号およびW相信号のハイとローの切り替わりタイミングと同じにできる。よって、組合せ情報NNUMが複雑になることを回避できる。
(7)ここで、U相センサSUから内燃機関制御用信号ESを出力させることに起因して、U相コイルCUへの通電制御が実際の電気角に適合した制御内容になっておらずACGスタータ20を逆回転させてしまうことが懸念される。これに対し本実施形態では、ACGスタータ20のモータ駆動を開始してから回転速度NEが所定値以上になるまではトルク伝達を遮断するので、上記懸念を解消できる。
(8)ACGスタータ20のロータ30とクランク軸14とは回転中心が一致した状態で一体的に回転するように固定されており、ロータ30とクランク軸14との間には、ベルトやギア等の動力伝達機構が介在していない。そのため、ACGスタータ20に備えられたU相センサSUからクランク位置信号を出力させるにあたり、ギアのバックラッシュやベルトの伸び等により、クランク軸14の回転位相とロータ30の回転位相とにずれが生じることを回避できるので、U相センサSUを利用してクランク軸14の絶対回転位置を算出するにあたり、十分な算出精度を確保できる。
(8)内燃機関制御用信号ESを検出した時のNNUM値「0」が、ES検出時以外では出現しないように構成されている。そのため、現時点でのNNUM値に基づき絶対回転位置を算出できるので、NNUM値の履歴が蓄積されるのを待つことなく、迅速に絶対回転位置を把握できる。
(9)ここで、U相センサSUが内燃機関制御用信号ESを出力することに起因して、現時点でのU相センサ信号からは次回のU相センサ信号を特定できない場合がある。しかしこの場合であっても、現時点でのNNUM値に基づけば、次回のNNUM値を特定して次回のU相センサ信号を特定できる場合がある。この点を鑑みた本実施形態では、現時点でのNNUM値に基づき特定した次回のNNUM値に基づき、U相コイルCUへの通電制御内容を決定するので、次回のU相センサ信号が特定できなくなる機会を減らして通電制御内容を決定できるようになる。
(10)ところで、図16に示すクランク位置信号の立ち上りまたは立ち下りの周期は、1つのマグネット32S,32Nが占める回転角(30°)だけクランク軸14が回転する時間である。これに対し、NNUMの更新周期は、各々のUVW相信号の組合せであるため、前記回転角(30°)の3分の1の回転角だけクランク軸14が回転する時間となる。つまり、NNUMの更新周期は、図16のクランク位置信号の周期よりも短いと言える。そのため、各々のUVW相信号の立ち上りまたは立ち下りのタイミング(NNUMの更新タイミング)に基づき燃料噴射時期や点火時期を制御する本実施形態によれば、図16に示すクランク位置信号に基づき制御する場合に比べて、制御に使用する基本時間が3分の1(10°/30°)になり、燃料噴射時期や点火時期を高精度で制御できる。
(第2実施形態)
上記第1実施形態では、3つのUVW相センサSU〜SWのうち、U相センサSUのみを異極磁性部34の回転軌道34a上に配置しているのに対し、本実施形態では、U相センサSUおよびV相センサSVを回転軌道34a上に配置している。その結果、V相信号についても、U相信号と同様にして内燃機関制御用信号ESが含まれることとなる(図7参照)。
ここで、上記第1実施形態では、NNUM値が「0」であれば、U相センサSUから内燃機関制御用信号ESが出力されていることを特定できる。しかし、図7に示す本実施形態では、NNUM値が「0」である場合に、U相センサSUおよびV相センサSVのいずれから内燃機関制御用信号ESが出力されているかを特定することができないため、絶対回転位置を算出できないことが懸念される。
そこで本実施形態では、組合せ情報NNUMの履歴を表した履歴情報に基づいて、いずれの内燃機関制御用信号ESであるかを特定して絶対回転位置を算出する。なお、本実施形態での履歴情報とは、2つの連続したNNUM値のことであるが、3つ以上の連続したNNUM値を履歴情報としてもよい。
具体的には、NNUM値が「0」である場合において、前回のNNUM値が「5」であればU相センサSUから出力された内燃機関制御用信号ESであると特定でき、前回のNNUM値が「3」であればV相センサSVから出力された内燃機関制御用信号ESであると特定できる。なお、ACGスタータ20が逆転している場合には、前回NNUM値が「3」であればU相センサSU、「6」であればV相センサSVから出力された内燃機関制御用信号ESであると特定できる。そして、これらの特定結果と、内燃機関制御用信号ESの出現タイミングに基づき、絶対回転位置を算出する。
また、センサ信号がハイ・ローのいずれであるかの判定と、先述したエッジ検知とを組み合わせて絶対回転位置を算出してもよい。具体的には、内燃機関制御用信号ESのエッジ検知時期(図7中の符号tu参照)と、W相信号のエッジ検知時期(図7中の符号tw参照)とがほぼ同じであり、かつ、いずれの信号もローに切り替わったと判定された場合には、U相センサSUから出力された内燃機関制御用信号ESであると特定できる。
同様にして、内燃機関制御用信号ESのエッジ検知時期(図7中の符号tv参照)と、U相信号のエッジ検知時期(図7中の符号tc参照)とがほぼ同じであり、かつ、いずれの信号もローに切り替わったと判定された場合には、V相センサSVから出力された内燃機関制御用信号ESであると特定できる。
次に、UVW相コイルCU〜CWへの通電制御について説明する。上述の手法により絶対回転位置を算出した後には、内燃機関制御用信号ESにより「5→0→3→0→6」と変化するNNUM値を、図7中の括弧内に示すように、「5→1→3→2→6」と変化しているとみなしてUVW相コイルCU〜CWへの通電制御を実施すれば、ティース部41のコイルCU,CV,CWと磁極位相が一致し、モータを回転駆動させることができる。
一方、絶対回転位置が算出される前の停止時においては、NNUM値が「0」である場合において、次回NNUM値が「3」および「6」のいずれであるかを特定できない。そこで本実施形態では、「3」「6」のうちの任意値(例えば「3」)が次回NNUM値であるとみなしてUVW相コイルCU〜CWへの通電制御を実施する。そして、所定時間が経過してもACGスタータ20が回転を開始せずにNNUM値が変化しない場合には、次回NNUM値は前記任意値「3」ではなく他の値「6」であったとみなしてUVW相コイルCU〜CWへの通電制御を実施する。
以上詳述した本実施形態によれば、上記第1実施形態と同様の効果が得られるとともに、以下の効果が得られるようになる。すなわち、上記第1実施形態では、クランク軸14が1回転する間に内燃機関制御用信号ESが1回出現するのに対し、本実施形態によれば2回出現する。そのため、ACGスタータ20の駆動を開始してから、クランク軸14が1回転することを待たずして内燃機関制御用信号ESが出現することとなるので、内燃機関制御用信号ESに基づき絶対回転位置を算出するのに要する時間を短縮できる。よって、インジェクタ10及び点火装置11の駆動開始を迅速にできる。また、これにより、エンジンによる駆動トルクが早期に発生し、要求されるモータ駆動トルクを低減させることができるので、ACGスタータ20の小型化を図ることができる。
また、本実施形態では、異極磁性部34の回転軌道34a上に複数のセンサを配置することに起因して、内燃機関制御用信号ESを検出した時のNNUM値「0」が、いずれのセンサによる内燃機関制御用信号ESを組み合わせたものであるかを特定できなくなる。この問題に対し、本実施形態では、NNUM値の履歴に基づき前記特定を行う。また、センサ信号がハイ・ローのいずれであるかの判定とエッジ検知とに基づき前記特定を行うこともできる。よって、絶対回転位置の把握を可能にできる。
さらに、本実施形態では、絶対回転位置の算出が未だ完了していない回転駆動期間における通電制御(モータ駆動制御)に関し、次回NNUM値の候補「3」「6」を順に試行して通電制御するので、前記回転駆動期間であってもモータ駆動制御が可能となる。
(第3実施形態)
上記第2実施形態では、3つのUVW相センサSU〜SWのうち、U相センサSUおよびV相センサSVを異極磁性部34の回転軌道34a上に配置しているのに対し、本実施形態では、3つのUVW相センサSU〜SW全てを回転軌道34a上に配置している。その結果、W相信号についても、U相信号およびV相信号と同様にして内燃機関制御用信号ESが含まれることとなる(図8参照)。
そして、図8に示す本実施形態においても上記第2実施形態と同様にして、NNUM値が「0」である場合に、UVW相センサSU〜SWのいずれから内燃機関制御用信号ESが出力されているかを、組合せ情報NNUMの履歴に基づいて特定する。また、上記第2実施形態と同様にして、センサ信号がハイ・ローのいずれであるかの判定とエッジ検知とに基づき前記特定を行うこともできる。そして、その特定結果に基づき絶対回転位置を算出する。
具体的には、NNUM値が「0」である場合において、前回のNNUM値が「5」であればU相センサSUから出力された内燃機関制御用信号ESであると特定でき、「3」であればV相センサSVからの出力と特定でき、「6」であればW相センサSWからの出力と特定できる。なお、ACGスタータ20が逆転している場合には、前回NNUM値が「3」であればU相センサSU、「6」であればV相センサSV、「5」であればW相センサSWから出力された内燃機関制御用信号ESであると特定できる。そして、これらの特定結果と、内燃機関制御用信号ESの出現タイミングに基づき、絶対回転位置を算出する。
次に、UVW相コイルCU〜CWへの通電制御について説明する。上述の手法により絶対回転位置を算出した後には、内燃機関制御用信号ESにより「5→0→3→0→6→0→5→1」と変化するNNUM値を、ティース巻線が対向しているNNUM値、つまり図8中の括弧内に示すように、「5→1→3→2→6→4→5→1」と変化しているとみなして、UVW相コイルCU〜CWへの通電制御を実施すればよい。
一方、絶対回転位置が算出される前の停止時においては、NNUM値が「0」である場合において、次回NNUM値が「3」「6」「5」のいずれであるかを特定できない。そこで本実施形態では、「3」「6」「5」のうちの任意値(例えば「3」)が次回NNUM値であるとみなしてUVW相コイルCU〜CWへの通電制御を実施する。そして、所定時間が経過してもACGスタータ20が回転を開始せずにNNUM値が変化しない場合には、次回NNUM値は前記任意値「3」ではなく他の値「6」「5」であったことになる。そこで次は、「6」「5」のうちの任意値(例えば「6」)が次回NNUM値であるとみなして通電制御する。その結果、さらに所定時間が経過してもACGスタータ20が回転を開始せずにNNUM値が変化しない場合には、前記次回NNUM値は任意値「6」ではなく残りの値「5」であったとみなしてUVW相コイルCU〜CWへの通電制御を実施する。なお、実際のNNUM値が「0」から期待値と異なる値になった場合には、その実際のNNUM値に基づいて駆動を実施する。
以上詳述した本実施形態によれば、クランク軸14が1回転する間に内燃機関制御用信号ESが3回出現する。そのため、ACGスタータ20の駆動を開始してから、内燃機関制御用信号ESが出現するまでに要する時間を、上記第2実施形態に比べてさらに短縮することができる。よって、内燃機関制御用信号ESに基づき絶対回転位置を算出するのに要する時間を短縮でき、インジェクタ10及び点火装置11の駆動開始迅速化を促進できる。
(第4実施形態)
上記第3実施形態では、3つのUVW相センサSU〜SWを、複数のティース部41の間隙41aのうち隣り合う間隙41aに順番に配置している。これに対し本実施形態では、図9に示すように、3つのUVW相センサSU〜SWを隣り合う間隙41aに配置することに替え、分散して配置している。図9の例では、U相センサSUとV相センサSVとの間の角度、およびV相センサSVとW相センサSWとの間の角度が140°となるように分散配置している。
したがって、上記第3実施形態では、クランク軸14が20°回転する毎に内燃機関制御用信号ESが現れるのに対し、図10に示す本実施形態では、クランク軸14が140°回転する毎に内燃機関制御用信号ESが現れる。
なお、図10に示す本実施形態においても上記第3実施形態と同様にして、NNUM値が「0」である場合に、UVW相センサSU〜SWのいずれから内燃機関制御用信号ESが出力されているかを、組合せ情報NNUMの履歴に基づいて特定する。そして、その特定結果に基づき絶対回転位置を算出する。
次に、UVW相コイルCU〜CWへの通電制御について説明する。上述の手法により絶対回転位置を算出した後には、内燃機関制御用信号ESにより「5→0→3」「3→0→6」「6→0→5」と変化するNNUM値を、図10中の括弧内に示すように、「5→1→3」「3→2→6」「6→4→5」と変化しているとみなしてUVW相コイルCU〜CWへの通電制御を実施すればよい。
一方、絶対回転位置が算出される前においては、NNUM値が「0」である場合において、次回NNUM値が「3」「6」「5」のいずれであるかを特定できない。そこで本実施形態では、上記第3実施形態と同様にして、「3」「6」「5」のうちの任意値(例えば「3」)が次回NNUM値であるとみなして通電制御を実施し、所定時間が経過してもNNUM値が変化せずACGスタータ20が回転を開始しないとみなされる場合には、他の値「6」「5」のうちの任意値(例えば「6」)が次回NNUM値であるとみなして通電制御を実施し、それでも回転開始しない場合には、次回NNUM値は任意値「6」ではなく残りの値「5」であったとみなしてUVW相コイルCU〜CWへの通電制御を実施する。
以上詳述した本実施形態によれば、3つのUVW相センサSU〜SWを分散配置するので、内燃機関制御用信号ESが現れる時間間隔を短くできる。そのため、ACGスタータ20の駆動を開始してから、内燃機関制御用信号ESが出現するまでに要する時間を、上記第3実施形態に比べてさらに短縮することができる。よって、内燃機関制御用信号ESに基づき絶対回転位置を算出するのに要する時間を短縮でき、インジェクタ10及び点火装置11の駆動開始迅速化を促進できる。
なお、UVW相センサSU〜SWのうち2つのセンサを異極磁性部34の回転軌道34a上に配置した場合においても、本実施形態にかかる「分散配置」を適用して、絶対回転位置を算出するのに要する時間の短縮を図るようにしてもよい。
(第5実施形態)
上記各実施形態では、所定のマグネット32S(A)の上端部分に異極磁性部34を形成するにあたり、前記上端部分を回転方向に3分割し、その中央部分を異極磁性部34として形成している。これに対し本実施形態では、上述の如く3分割することを廃止しており、図11中の斜線部分に示すように、所定のマグネット32S(A)の上端部分の全体を異極磁性部34として形成している。
また、上記各実施形態では、内燃機関制御用信号ESを出力する専用のセンサ(クランク回転位置センサ)を廃止しているのに対し、本実施形態では、図11に示すように、クランク回転位置センサSEを残しつつ、異極磁性部34の回転軌道34a上にU相センサSUを配置している。つまり、異極磁性部34の回転軌道34a上には、クランク回転位置センサSEおよびU相センサSUの2つが位置している。そのため、図5に示すように、U相センサSUから内燃機関制御用信号ESが出力されるとともに、図16中の最上段に示す内燃機関制御用信号がクランク回転位置センサSEから出力される。
そして、3つのUVW相センサSU〜SWの信号に加え、クランク回転位置センサSEの信号も組み合わせて組合せ情報NNUMを生成しており、このNNUM値に基づき、絶対回転位置を算出するとともにUVW相コイルCU〜CWへの通電制御を実施する。
以上により、本実施形態によれば、所定のマグネット32S(A)のうち回転方向の全体に亘って異極磁性部34を形成するので、図4(a)に示すように3分割した中央部分を異極磁性部34とする場合に比べて、所定のマグネット32S(A)に異極磁性部34を着磁する作業を簡素にできる。
また、異極磁性部34の回転軌道34a上に、クランク回転位置センサSEおよびU相センサSUの2つを配置するので、クランク回転位置センサSEのみを配置した場合に比べて、ACGスタータ20の駆動を開始してから、内燃機関制御用信号ESが出現するまでに要する時間を短縮できる。よって、内燃機関制御用信号に基づき絶対回転位置を算出するのに要する時間を短縮でき、インジェクタ10及び点火装置11の駆動開始迅速化を促進できる。
(第6実施形態)
エンジンを停止させた時のクランク軸14の回転停止位置は、圧縮行程中の所定範囲(例えばBTDC150°付近から上死点TDCの範囲)となる可能性が高い。このことは、停止直前の低NE時のピストンは、圧縮行程においてピストンを上昇させる時の圧縮負荷により停止する可能性が高いからである。したがって、試験等により停止予想位置を把握することは一般的に可能である。
ここで、停止予想位置でクランク軸14が回転停止した状態において、異極磁性部34が位相センサ(図5の例ではU相センサSUであり、図7の例ではU相センサSUまたはV相センサSV)の対向位置、またはその対向位置から僅かに遅角した位置にあるようにすると、絶対回転位置を把握できていない回転駆動期間に内燃機関制御用信号を出力することとなり、この場合には適正な通電制御内容でモータ制御できなくなる可能性が高くなる。
したがって、停止予想位置で停止した状態において、異極磁性部34が位相センサの対向位置から僅かに進角した位置にあるようにすれば、上述の如く適正な通電制御内容でモータ制御できなくなる可能性を低減できる。
その一方で、停止予想位置でクランク軸14が回転停止した状態において、異極磁性部34が位相センサの対向位置、或いは位相センサの対向位置から所定量だけ遅角した位置となるよう、位相センサおよび異極磁性部34を配置すれば、エンジン回転を開始してから直ぐに内燃機関制御用信号が出力されるようになるので、内燃機関制御用信号に基づく絶対回転位置の算出を迅速にでき、絶対回転位置の把握に要する時間短縮を促進できる、といった利点もある。
(第7実施形態)
図12および図13に示す本実施形態では、図4に示す異極磁性部34を非磁性部(空隙34k)に置き換えて変形させたものである。すなわち、所定のマグネット32S(A)のうち、異極磁性部34に着磁されていた部分を切り欠いて空隙34kを形成している。なお、図13は、ハウジング31(図1参照)の内周面に隣接配置された状態のマグネット32N,32Sを示す斜視図である。図13に示すように、空隙34kはロータ30の回転径方向に貫通した形状である。
そして、図12に示すように、空隙34kの回転軌道34a上にU相センサSUが位置し、V相センサSVおよびW相センサSWについては回転軌道34aから外れた位置にある。したがって、各々のセンサから出力されるUVW相信号、内燃機関制御用信号ESおよび組合せ情報NNUMは、図5と同じになる。
なお、空隙34kを形成した本実施形態において、3つのセンサSU〜SWのうち2つのセンサを回転軌道34a上に配置してもよく、例えばU相センサSUおよびV相センサSVをこの場合には、内燃機関制御用信号ESおよび組合せ情報NNUMは図7と同じになる。また、本実施形態において、3つのUVW相センサSU〜SW全てを回転軌道34a上に配置してもよく、この場合には、内燃機関制御用信号ESおよび組合せ情報NNUMは図8と同じになる。また、本実施形態において、3つのUVW相センサSU〜SWを図9の如く分散配置した場合には、内燃機関制御用信号ESおよび組合せ情報NNUMは図10と同じになる。
以上により、空隙34kを形成した本実施形態においても内燃機関制御用信号ESおよび組合せ情報NNUMは上記各実施形態と同じになるため、上記各実施形態と同様の効果が発揮される。しかも、異極磁性部34を非磁性部(空隙34k)に置き換えることにより、以下に説明する磁気短絡量軽減の効果も発揮される。
図14(a)は、第1実施形態にかかるロータ30およびステータ40を示す図であり、所定のマグネット32S(A)に異極磁性部34が形成されている。一方、図14(b)は、本実施形態にかかるロータ30およびステータ40を示す図であり、所定のマグネット32S(A)に空隙34kが形成されている。(a)(b)いずれにおいても、所定のマグネット32S(A)に対向するティース部41から、隣接マグネット32N(B)(C)へと繋がる磁束J1が発生し、この磁束J1がモータ駆動力または発電力を生じさせる。ちなみに、ハウジング31のうちS極マグネット32Sに対向する部分はN極となり、N極マグネット32Nに対向する部分はS極となる。
しかしながら、異極磁性部34を備える図14(a)の場合、この磁束J1とは別に、異極磁性部34からティース部41を通じてマグネット32S(A)へと繋がる磁束J2が発生して磁気短絡が生じる。これに対し、異極磁性部34を廃止した図14(b)の場合、ハウジング31からティース部41を通じてマグネット32S(A)へと繋がる磁束J3が発生して磁気短絡が生じるものの、この磁束J3の短絡経路は、磁束J2の短絡経路に比べて長い。そのため、磁気短絡量が軽減され、異極部34,34kを形成することによるモータ駆動力および発電力の低下を軽減できる。
(第8実施形態)
図17に示すように、複数のマグネット32S,32Nのうち所定のマグネット32S(図17の例ではS極マグネット32S)の一部分には、以下に説明する異極磁性部34が形成されている。すなわち、図17の斜線に示す部分だけは、S極マグネット32Sとは異なる極性(N極)に着磁されている。この異極磁性部34は、所定のマグネット32Sのうちロータ回転軸方向(図17の上下方向)の一端部分に形成されるとともに、回転方向(図17の左右方向)の全体に亘って存在するように形成されている。
V相センサSVおよびW相センサSWはロータ回転軸方向(図17の上下方向)において同じ位置に配置されているのに対し、U相センサSUは、V相センサSVおよびW相センサSWとは回転軸方向において異なる位置に配置されている。これにより、異極磁性部34の回転軌道34a上にU相センサSUが位置し、V相センサSVおよびW相センサSWについては回転軌道34aから外れた位置となるようにする。
本実施形態では、センサSU〜SWがN極を検出した時にはロー信号(二進数「0」)を出力し、S極を検出した時にはハイ信号(二進数「1」)を出力するよう設定してある。そして、マグネット32S,32Nは12個(12極)であるため、U相信号、V相信号、W相信号の各々は、ロータ30が30度回転する毎にローとハイが切り替わる(図18参照)。したがって、UVW相の各々の電気角360°は、クランク軸14の回転角度(機械角)60°に相当する。但し、U相信号については異極磁性部34の検出時にもローに切り替わる。また、ロータ30が10度回転する毎に、UVW相センサSU〜SWのいずれかにおいてローとハイが切り替わることとなる。
ちなみに、図17の如く、N極マグネット32NとS極マグネット32Sの間に極性を有しない部材32aが介在している場合において、この部材32aがセンサSU〜SWに対向して極性を検出できない時には、ロー信号およびハイ信号のうち予め設定しておいた信号(例えばロー信号)であるとみなして処理すればよい。
なお、前記部材32aが存在しないよう、N極マグネット32NとS極マグネット32Sを隣接させたロータ30を採用してもよいことは勿論である。また、1つのマグネット片をN極とS極に着磁することで、複数のN極マグネット32NおよびS極マグネット32Sを1つのマグネット片から形成したロータを採用してもよい。なお、この場合のロータでは、複数(例えば4つ)のマグネット片を用いて構成してもよいし、1つのマグネット片を用いて構成してもよい。
図18は、上段から順に、クランク角、組合せ情報NNUM、UVW相信号の二進数表記、UVW相信号、点火信号、噴射信号、エンジン行程を示すタイムチャートである。組合せ情報NNUMとは、同時期に出力されるU相信号、V相信号およびW相信号の組合せを表した仮想信号であり、本実施形態では、UVW相信号の二進数表記を組み合わせて算出した十進数の数値としている。
具体的には、二進数表記の1桁目をU相信号の2進数、2桁目をV相信号の2進数、3桁目をW相信号の2進数で表した3桁の二進数を、十進数に変換した数値が組合せ情報NNUMである。この数値NNUMはECU13により算出される。例えば、最左欄に示すようにUVW相信号が各々「1」「0」「1」であれば、NNUMは「5」となる。
図中の符号ESは、異極磁性部34を検出したことによりロー信号となった部分を示しており、当該部分の信号が「内燃機関制御用信号」に相当し、符号ES以外の部分の信号は「モータ制御用信号」に相当する。この内燃機関制御用信号ESが現れる部分を除けば、NNUMの値は5→1→3→2→6→4の順に繰り返しローテーションして変化する。ちなみに、本実施形態に反して異極磁性部34が形成されていなければ、図中の点線に示すように符号ESの部分はハイ信号となる。
図中の符号ta,tb,tcに示すように、内燃機関制御用信号ESを検出している期間中のNNUM値は「4」→「0」→「2」と推移するが、ES検出時以外では、NNUM値が「0」になることはない。したがって、符号tbにかかるNNUM値「0」を検出した時点でのクランク角を基準として、ECU13はクランク軸14の絶対回転位置を算出できる。そして、絶対回転位置を把握できれば、各々のUVW相信号の立ち上りまたは立ち下りのタイミング(つまりNNUMの更新タイミング)と、4サイクルエンジンの1回転分の位置関係を特定できる。
例えば、NNUM値「0」が現れた後、NNUM値「1」が2回目に現れたtd時点が、エンジンのピストンが下死点BDCに達した時期であると特定できる。なお、吸気圧センサ16の値を参照すれば、前記下死点BDC時期が排気行程および圧縮行程のいずれであるかを判別(行程判別)できる。これにより、絶対回転位置を基準として、NNUMの更新タイミングに基づき燃料噴射時期や点火時期を目標時期とするように制御できる。
なお、NNUM値が「4」である場合において、前回のNNUM値が「4」であれば、符号taに示す機関制御用信号ESによるものであると特定できる。一方、前回のNNUM値が「6」であれば、符号tf1に示すモータ制御信号によるものであると特定できる。なお、ACGスタータ20が逆転している場合には、前回NNUM値が「0」であれば機関制御用信号ES、「5」であればモータ制御信号によるものであると特定できる。そして、これらの特定結果と、機関制御用信号ESの出現タイミングに基づき、絶対回転位置を算出する。
さらにECU13は、現時点でのNNUM値に基づき次回のNNUM値を特定し(特定手段)、その特定した次回NNUM値に基づきU相コイルCU、V相コイルCVおよびW相コイルCWへの通電制御内容を決定する。例えば、今回NNUM値が「3」であれば、前記ローテーションに基づき次回NNUM値は「2」であると特定できる。つまり、U相コイルCUが巻き回されたティース部41は、S極マグネット32Sの対向位置(ハイ)からN極マグネット32Nの対向位置(ロー)へと移り変わるタイミングにあると言える。そのため、U相コイルCUへの通電オンオフ状態を切り替えるタイミングにあると言える。
このように、U相コイルCUへの通電は、U相信号の立ち上りを示すNNUM値「4」、または立ち下がりを示すNNUM値「3」が検出されたか否かに基づきECU13が制御する。同様にして、V相コイルCVおよびW相コイルCWへの通電もNNUM値に基づき制御する。なお、NNUM値「0」については、モータ駆動用コイルCU,CV,CWと対向している「1」でUVW相コイルCU〜CWへの通電制御を実施すればよい。また、符号taに示すNNUM値「4」については「5」であるとみなし、符号tcに示すNNUM値「2」については「3」であるとみなしてUVW相コイルCU〜CWへの通電制御を実施する。
さらにECU13は、NNUM値の履歴に基づき、ACGスタータ20が逆転しているか否かを検知する。例えば、正転していれば上述の如くNNUM値は5→1→3→2→6→4の順に変化する筈である。一方、逆転していればNNUM値は4→6→2→3→1→5の順に変化する筈である。
ところで、ACGスタータ20によりエンジンを始動させるにあたり、エンジンのピストンが圧縮行程のTDC直前位置から始動させようとすると、ACGスタータ20に要する駆動トルクが圧縮分だけ大きくなるので、エンジンの始動性悪化が懸念される。そこで、エンジン始動開始前に、クランク軸14を逆転させて始動性が良好となるピストン位置に設定しておく、といったスイングバック制御を実施する場合がある。このように、ACGスタータ20を逆転駆動させたい場合があるが、この場合には、例えば今回NNUM値が4であれば、次回NNUM値は6であると特定し、その特定値に応じてUVW相コイルCU〜CWへの通電タイミングを制御すればよい。
本実施形態では、図6のステップS10において、先述の5(4)→1(0)→3(2)→2→6→4といった正転時ローテーションに基づき、例えば今回NNUM値が「5」であれば次回NNUM値は「1」であると算出する。なお、今回NNUM値が「0」であれば次回NNUM値は「3」であると算出する。また、前回NNUM値が「4」かつ今回NNUM値が「4」であれば次回NNUM値は「1」であると算出する。また、前回NNUM値が「0」かつ今回NNUM値が「2」であれば次回NNUM値は「2」であると算出する。
以上詳述した本実施形態によれば、第1実施形態の(1),(2),(7),(8),(9),(10)の効果が得られるようになる。
(第9実施形態)
上記第1実施形態では、3つのUVW相センサSU〜SWのうち、U相センサSUのみを異極磁性部34の回転軌道34a上に配置しているのに対し、本実施形態では、U相センサSUおよびV相センサSVを回転軌道34a上に配置している。その結果、V相信号についても、U相信号と同様にして内燃機関制御用信号ESが含まれることとなる(図19参照)。
ここで、上記第8実施形態では、NNUM値が「0」であれば、U相センサSUから内燃機関制御用信号ESが出力されていることを特定できる。しかし、図19に示す本実施形態では、NNUM値が「0」である場合に(符合tf,tg,th参照)、U相センサSUおよびV相センサSVのいずれから内燃機関制御用信号ESが出力されているかを特定することができないため、絶対回転位置を算出できないことが懸念される。
そこで本実施形態では、組合せ情報NNUMの履歴を表した履歴情報に基づいて、いずれの内燃機関制御用信号ESであるかを特定して絶対回転位置を算出する。なお、本実施形態での履歴情報とは、2つの連続したNNUM値のことであるが、3つ以上の連続したNNUM値を履歴情報としてもよい。
具体的には、NNUM値が「0」である場合において、前回のNNUM値が「6→4→4」であればU相センサSUから出力された内燃機関制御用信号ESであると特定できる。なお、ACGスタータ20が逆転している場合には、前回NNUM値が「5→4→4」であればV相センサSVから出力された内燃機関制御用信号ESであると特定できる。そして、これらの特定結果と、内燃機関制御用信号ESの出現タイミングに基づき、絶対回転位置を算出する。
次に、UVW相コイルCU〜CWへの通電制御について説明する。上述の手法により絶対回転位置を算出した後には、内燃機関制御用信号ESにより「4→0→0→0→4」と変化するNNUM値を、「5→1→3→2→6」と変化しているとみなしてUVW相コイルCU〜CWへの通電制御を実施すれば、ティース部41のコイルCU,CV,CWと磁極位相が一致し、モータを回転駆動させることができる。
一方、絶対回転位置が算出される前の停止時においては、NNUM値が「0」である場合において、符号tf,tg,thのいずれに該当する「0」であるかを特定できない。よって、次回NNUM値を「3」「2」「6」のいずれであるとみなして通電制御すれば良いかを特定できない。そこで本実施形態では、「3」「2」「6」のうちの任意値(例えば「3」)が次回NNUM値であるとみなしてUVW相コイルCU〜CWへの通電制御を実施する。
そして、所定時間が経過してもACGスタータ20が回転を開始せずにNNUM値が変化しない場合には、次回NNUM値は前記任意値「3」ではなく他の値「2」「6」であったことになる。そこで次は、「2」「6」のうちの任意値(例えば「2」)が次回NNUM値であるとみなして通電制御する。
その結果、さらに所定時間が経過してもACGスタータ20が回転を開始せずにNNUM値が変化しない場合には、前記次回NNUM値は任意値「2」ではなく残りの値「6」であったとみなしてUVW相コイルCU〜CWへの通電制御を実施する。なお、実際のNNUM値が「0」から期待値と異なる値になった場合には、その実際のNNUM値に基づいて駆動を実施する。
しかし、全ての候補「3」「2」「6」について3→2→6の順に試行する最中に、ロータ30が僅かに回転して位相がずれる場合がある。例えば、実際にはtgにある時に、tfにあるとみなして「3」で通電制御した結果、回転してthの位相になる場合がある。この場合、正常にモータ駆動しなかったので次にtgにあるとみなして「2」で通電制御することとなる。すると今度は、回転してtgの位相になる場合がある。この場合、正常にモータ駆動しなかったので次にthにあるとみなして「6」で通電制御することとなる。したがって、このように位相ずれが生じると、全ての候補「3」「2」「6」について通電制御しても、正常にモータ駆動しなくなる。
この点を鑑みた本実施形態では、複数の候補「3」「2」「6」の全てについて通電制御を実施したにも拘わらず、正常にモータ駆動できなかった場合には、前記順番とは異なる順番(例えば2→3→6の順)で通電制御を実施する。これにより、先述した位相ずれが生じない順番で試行する機会が与えられるようになるので、正常にモータ駆動できるようになる。なお、実際のNNUM値が「0」から期待値と異なる値になった場合には、その実際のNNUM値に基づいて駆動を実施する。
以上詳述した本実施形態によれば、上記第8実施形態と同様の効果が得られるとともに、以下の効果が得られるようになる。すなわち、上記第8実施形態では、クランク軸14が1回転する間に内燃機関制御用信号ESが1回出現するのに対し、本実施形態によれば2回出現する。そのため、ACGスタータ20の駆動を開始してから、クランク軸14が1回転することを待たずして内燃機関制御用信号ESが出現することとなるので、内燃機関制御用信号ESに基づき絶対回転位置を算出するのに要する時間を短縮できる。よって、インジェクタ10及び点火装置11の駆動開始を迅速にできる。また、これにより、エンジンによる駆動トルクが早期に発生し、要求されるモータ駆動トルクを低減させることができるので、ACGスタータ20の小型化を図ることができる。
また、本実施形態では、異極磁性部34の回転軌道34a上に複数のセンサを配置することに起因して、内燃機関制御用信号ESを検出した時のNNUM値「0」が、いずれのセンサによる内燃機関制御用信号ESを組み合わせたものであるかを特定できなくなる。この問題に対し、本実施形態では、NNUM値の履歴に基づき前記特定を行うので、絶対回転位置の把握を可能にできる。
さらに、本実施形態では、絶対回転位置を算出が未だ完了していない回転駆動期間における通電制御(モータ駆動制御)に関し、次回NNUM値の候補「3」「2」「6」を順に試行して通電制御するので、前記回転駆動期間であってもモータ駆動制御が可能となる。さらに、全ての候補について通電制御を実施したにも拘わらず、正常にモータ駆動できなかった場合には、前回の順番とは異なる順番で再度通電制御を実施するので、確実にモータ駆動できるようになる。
(第10実施形態)
上記第9実施形態では、3つのUVW相センサSU〜SWのうち、U相センサSUおよびV相センサSVを異極磁性部34の回転軌道34a上に配置しているのに対し、本実施形態では、3つのUVW相センサSU〜SW全てを回転軌道34a上に配置している。その結果、W相信号についても、U相信号およびV相信号と同様にして内燃機関制御用信号ESが含まれることとなる(図20参照)。
図20に示す本実施形態においては、内燃機関制御用信号ESが現れる部分を除けば、NNUMの値は5→1→3→2→6→4の順に繰り返しローテーションして変化する。一方、内燃機関制御用信号ESが現れる部分のNNUM値については、符号tj〜tpに示すように4(5)→0(1)→0(3)→0(2)→0(6)→0(4)→1(5)の順に変化する(カッコ内の数値はESが現れない場合のNNUM値を示し、モータ駆動用の信号番号となる)。
したがって、絶対回転位置が算出される前の停止時においては、NNUM値が「0」である場合において、符号tk,tl,tm,tn,toのいずれに該当する「0」であるかを特定できない。よって、次回NNUM値を「3」「2」「6」「4」「5」のいずれであるとみなして通電制御すれば良いかを特定できない。
そこで本実施形態では、上記第2実施形態と同様にして、「3」〜「5」のうちの任意値(例えば「3」)が次回NNUM値であるとみなしてUVW相コイルCU〜CWへの通電制御を実施する。そして、正常にモータ駆動するまで、任意値を順番(例えば3→2→6→4→5)に変更して試行する。そして、全ての候補「3」〜「5」について通電制御を実施したにも拘わらず正常にモータ駆動できなかった場合には、前記順番とは異なる順番(例えば2→3→5→4→6の順)で通電制御を実施する。なお、実際のNNUM値が「0」から期待値と異なる値になった場合には、その実際のNNUM値に基づいて駆動を再度実施する。
次に、UVW相コイルCU〜CWへの通電制御について説明する。上述の手法により絶対回転位置を算出した後には、内燃機関制御用信号ESにより「4→0→0→0→0→0→1」と変化するNNUM値を、ティース巻線が対向しているNNUM値、つまり「5→1→3→2→6→4→5」と変化しているとみなして、UVW相コイルCU〜CWへの通電制御を実施すればよい。
以上詳述した本実施形態によれば、クランク軸14が1回転する間に内燃機関制御用信号ESが3回出現する。そのため、ACGスタータ20の駆動を開始してから、内燃機関制御用信号ESが出現するまでに要する時間を、上記第9実施形態に比べてさらに短縮することができる。よって、内燃機関制御用信号ESに基づき絶対回転位置を算出するのに要する時間を短縮でき、インジェクタ10及び点火装置11の駆動開始迅速化を促進できる。
(第11実施形態)
上記第10実施形態では、3つのUVW相センサSU〜SWを、複数のティース部41の間隙41aのうち隣り合う間隙41aに順番に配置している。これに対し本実施形態では、図9に示すように、3つのUVW相センサSU〜SWを隣り合う間隙41aに配置することに替え、分散して配置している。図9の例では、U相センサSUとV相センサSVとの間の角度、およびV相センサSVとW相センサSWとの間の角度が140°となるように分散配置している。
したがって、上記第10実施形態では、クランク軸14が20°回転する毎に内燃機関制御用信号ESが現れるのに対し、図21に示す本実施形態では、クランク軸14が140°回転する毎に内燃機関制御用信号ESが現れる。
図21に示す本実施形態においては、内燃機関制御用信号ESが現れる部分を除けば、NNUMの値は5→1→3→2→6→4の順に繰り返しローテーションして変化する。一方、内燃機関制御用信号ESがU相センサSUにより現れる部分のNNUM値については、符号ta〜tcに示すように4(5)→0(1)→2(3)の順に変化する(カッコ内の数値はESが現れない場合のNNUM値)。また、V相センサSVによる部分については符号tq〜tsに示すように1(3)→0(2)→4(6)の順に変化し、W相センサSWによる部分については符号tt〜tvに示すように2(6)→0(4)→1(1)の順に変化する。
したがって、絶対回転位置が算出される前の停止時においては、NNUM値が「0」である場合において、次回NNUM値を「3」「6」「5」のいずれであるとみなして通電制御すれば良いかを特定できないので、上記第9実施形態と同様にして、「3」〜「5」のうちの任意値を、正常にモータ駆動するまで順番に変更して試行する。そして、全ての候補「3」〜「5」について通電制御を実施したにも拘わらず正常にモータ駆動できなかった場合には、前記順番とは異なる順番で通電制御を再度実施する。
また、停止時にNNUM値が「1」である場合において、次回NNUM値を「3」「1」「2」のいずれで通電制御すれば良いかを特定できないので、「3」〜「2」のうちの任意値を、正常にモータ駆動するまで順番に変更して試行する。そして、全ての候補「3」〜「2」について通電制御を実施したにも拘わらず正常にモータ駆動できなかった場合には、前記順番とは異なる順番で通電制御を再度実施する。
同様に、停止時にNNUM値が「2」であれば次回NNUM値を「6」「2」「4」のいずれで通電制御すれば良いかを特定できないので、正常にモータ駆動するまで順番に変更して試行し、さらには異なる順番で試行する。また、停止時にNNUM値が「4」であれば次回NNUM値を「5」「1」「4」のいずれで通電制御すれば良いかを特定できないので、正常にモータ駆動するまで順番に変更して試行し、さらには異なる順番で試行する。
次に、UVW相コイルCU〜CWへの通電制御について説明する。上述の手法により絶対回転位置を算出した後には、内燃機関制御用信号ESにより「4→0→2」「1→0→4」「2→0→1」と変化するNNUM値を、「5→1→3」「3→2→6」「6→4→1」と変化しているとみなしてUVW相コイルCU〜CWへの通電制御を実施すればよい。
以上詳述した本実施形態によれば、3つのUVW相センサSU〜SWを分散配置するので、内燃機関制御用信号ESが現れる時間間隔を短くできる。そのため、ACGスタータ20の駆動を開始してから、内燃機関制御用信号ESが出現するまでに要する時間を、上記第10実施形態に比べてさらに短縮することができる。よって、内燃機関制御用信号ESに基づき絶対回転位置を算出するのに要する時間を短縮でき、インジェクタ10及び点火装置11の駆動開始迅速化を促進できる。
なお、UVW相センサSU〜SWのうち2つのセンサを異極磁性部34の回転軌道34a上に配置した場合においても、本実施形態にかかる「分散配置」を適用して、絶対回転位置を算出するのに要する時間の短縮を図るようにしてもよい。
(第12実施形態)
本実施形態の構成を図22に示す。
図2,23に示すように、ステータ40は、先述したU相コイルCU、V相コイルCV、W相コイルCWコイル、UVW相センサSU〜SWおよびクランク回転位置センサSEと、これらのコイルが巻き回されるティース部41が形成された鉄心42とを備える。ティース部41は回転方向に複数並べて配置されており、各々のティース部41には、U相コイルCU、V相コイルCVおよびW相コイルCWコイルが順番に巻き回されている。図23の例では、18個のティース部41を並べている。
UVW相センサSU〜SWおよびクランク回転位置センサSEは、ステータ40の外周面上に取り付けられることで、N極マグネット32NおよびS極マグネット32Sと対向する位置にある。これにより、ロータ30が回転することに伴い生じるN極マグネット32NおよびS極マグネット32Sによる磁性の変化を検出する。なお、UVW相センサSU〜SWおよびクランク回転位置センサSEにはホールICが採用されている。そのため、ロータ30が回転していない時であっても、対向するマグネットの極性に応じた検出信号を出力することができる。
UVW相センサSU〜SWおよびクランク回転位置センサSEは、ロータ回転方向においてそれぞれ異なる位置に取り付けられている。具体的には、複数のティース部41の間隙41aのうち各々が異なる間隙41aに配置されており、図24の例では、複数の間隙41aのうち隣り合う間隙に、クランク回転位置センサSE、U相センサSU、V相センサSV、W相センサSWを順番に配置している。そのため、UVW相センサSU〜SWおよびクランク回転位置センサSEの各々は機械角20度分だけずれている。
図24に示すように、複数のマグネット32S,32Nのうち所定のマグネット(図24の例ではS極マグネット32S)の一部分には、以下に説明する異極磁性部34が形成されている。すなわち、図24の斜線に示す部分だけは、S極マグネット32Sとは異なる極性(N極)に着磁されている。この異極磁性部34は、所定のマグネット32Sのうちロータ回転軸方向(図24の上下方向)の一端部分に形成されるとともに、回転方向(図24の左右方向)の全体に亘って存在するように形成されている。
クランク回転位置センサSEおよびU相センサSUは、異極磁性部34の回転軌道34a上に配置されている。これに対し、V相センサSVおよびW相センサSWは回転軌道34aから外れた位置となるようにする。
本実施形態では、UVW相センサSU〜SWおよびクランク回転位置センサSEがN極を検出した時にはロー信号(二進数「0」)を出力し、S極を検出した時にはハイ信号(二進数「1」)を出力するよう設定してある。そして、マグネット32S,32Nは12個(12極)であるため、クランク角信号、U相信号、V相信号、W相信号の各々は、ロータ30が30度回転する毎にローとハイが切り替わる(図25参照)。したがって、UVW相の各々の電気角360°は、クランク軸14の回転角度(機械角)60°に相当する。但し、クランク角信号およびU相信号については異極磁性部34の検出時にもローに切り替わる。また、ロータ30が10度回転する毎に、UVW相センサSU〜SWおよびクランク回転位置センサSEのいずれかにおいてローとハイが切り替わることとなる。
ちなみに、図24の如く、N極マグネット32NとS極マグネット32Sの間に極性を有しない部材32aが介在している場合において、この部材32aがUVW相センサSU〜SWおよびクランク回転位置センサSEに対向して極性を検出できない時には、ロー信号およびハイ信号のうち予め設定しておいた信号(例えばロー信号)であるとみなして処理すればよい。
なお、前記部材32aが存在しないよう、N極マグネット32NとS極マグネット32Sを隣接させたロータ30を採用してもよいことは勿論である。また、1つのマグネット片をN極とS極に着磁することで、複数のN極マグネット32NおよびS極マグネット32Sを1つのマグネット片から形成したロータを採用してもよい。なお、この場合のロータでは、複数(例えば4つ)のマグネット片を用いて構成してもよいし、1つのマグネット片を用いて構成してもよい。
図25は、上段から順に、クランク角、組合せ情報NNUM、クランク角信号およびUVW相信号の二進数表記、クランク回転位置センサSEによるクランク角信号、UVW相信号、点火信号、噴射信号、エンジン行程を示すタイムチャートである。組合せ情報NNUMとは、同時期に出力されるクランク角信号、U相信号、V相信号およびW相信号の組合せを表した仮想信号であり、本実施形態では、クランク角信号およびUVW相信号の二進数表記を組み合わせて算出した十進数の数値としている。
具体的には、二進数表記の1桁目をクランク角信号の2進数、二進数表記の2桁目をU相信号の2進数、3桁目をV相信号の2進数、4桁目をW相信号の2進数で表した4桁の二進数を、十進数に変換した数値が組合せ情報NNUMである。この数値NNUMはECU13により算出される。例えば、最左欄に示すようにクランク角信号およびUVW相信号が各々「1」「1」「0」「1」であれば、NNUMは「11」となる。
図中の符号ESは、異極磁性部34を検出したことによりロー信号となった部分を示しており、当該部分の信号が「内燃機関制御用信号」に相当し、U相信号のうち符号ES以外の部分の信号は「モータ制御用信号」に相当する。この内燃機関制御用信号ESが現れる部分を除けば、NNUMの値は11→2→6→4→13→9の順に繰り返しローテーションして変化する。ちなみに、本実施形態に反して異極磁性部34が形成されていなければ、図中の点線に示すように符号ESの部分はハイ信号となる。
図中の符号a,b,cに示すように、内燃機関制御用信号ESを検出している期間中のNNUM値は「12」→「8」→「10」と推移するが、ES検出時以外では、NNUM値が「8」になることはない。また、図中の符号j,k,lに示すように、内燃機関制御用信号ESを検出している期間中のNNUM値は「5」→「1」→「3」と推移するが、ES検出時以外では、NNUM値が「1」になることはない。他にも、例えば符号a,cにかかる「12」「10」等はES検出時にしか現れない。
したがって、符号bにかかるNNUM値「8」や符号k,a,cにかかる「1」「12」「10」等を検出した時点でのクランク角を基準として、ECU13はクランク軸14の絶対回転位置を算出できる。そして、絶対回転位置を把握できれば、各々のセンサ出力信号の立ち上りまたは立ち下りのタイミング(つまりNNUMの更新タイミング)と、4サイクルエンジンの1回転分の位置関係を特定できる。要するに、現時点でのNNUM値に基づき絶対回転位置を算出する。
例えば、NNUM値「8」が現れた後、NNUM値「2」が2回目に現れたg時点が、エンジンのピストンが下死点BDCに達した時期であると特定できる。なお、吸気圧センサ16の値を参照すれば、前記下死点BDC時期が排気行程および圧縮行程のいずれであるかを判別(行程判別)できる。これにより、絶対回転位置を基準として、NNUMの更新タイミングに基づき燃料噴射時期や点火時期を目標時期とするように制御できる。
なお、NNUM値が「0」である場合において、前回のNNUM値が「9」であれば、符号eに示す機関制御用信号ESによるものであると特定できる。一方、前回のNNUM値が「2」であれば、符号hに示す機関制御用信号ESによるものであると特定できる。なお、ACGスタータ20が逆転している場合には、前回NNUM値が「4」であれば符号eにかかる信号ES、「6」であれば符号hにかかる信号ESであると特定できる。そして、これらの特定結果と、機関制御用信号ESの出現タイミングに基づき、絶対回転位置を算出する。要するに、NNUM値の履歴に基づき絶対回転位置を算出する。
さらにECU13は、現時点でのNNUM値に基づき次回のNNUM値を特定し(特定手段)、その特定した次回NNUM値に基づきU相コイルCU、V相コイルCVおよびW相コイルCWへの通電制御内容を決定する。例えば、今回NNUM値が「6」であれば、前記ローテーションに基づき次回NNUM値は「4」であると特定できる。つまり、U相コイルCUが巻き回されたティース部41は、S極マグネット32Sの対向位置(ハイ)からN極マグネット32Nの対向位置(ロー)へと移り変わるタイミングにあると言える。そのため、U相コイルCUへの通電オンオフ状態を切り替えるタイミングにあると言える。
このように、U相コイルCUへの通電は、U相信号の立ち上りを示すNNUM値「9」、または立ち下がりを示すNNUM値「6」が検出されたか否かに基づきECU13が制御する。同様にして、V相コイルCVおよびW相コイルCWへの通電もNNUM値に基づき制御する。
なお、符号a,b,cにかかるNNUM値「12」「8」「10」については、「13」「9」「11」とみなしてUVW相コイルCU〜CWへの通電制御を実施すれば、ティース部41のコイルCU,CV,CWと磁極位相が一致し、モータを回転駆動させることができる。同様に、符号d,e,fにかかるNNUM値「9」「0」「4」については「11」「2」「6」とみなし、符号g,h,iにかかるNNUM値「2」「0」「9」については「6」「4」「13」とみなし、符号j,k,lにかかるNNUM値「5」「1」「3」については「13」「9」「11」とみなして通電制御する。
一方、絶対回転位置が算出される前の停止時においては、例えばNNUM値が「0」である場合において、次回NNUM値が「4」および「9」のいずれであるかを特定できない。そこで本実施形態では、「4」「9」のうちの任意値(例えば「4」)が次回NNUM値であるとみなしてUVW相コイルCU〜CWへの通電制御を実施する。そして、所定時間が経過してもACGスタータ20が回転を開始せずにNNUM値が変化しない場合には、次回NNUM値は前記任意値「4」ではなく他の値「9」であったとみなしてUVW相コイルCU〜CWへの通電制御を実施する。なお、実際のNNUM値が「0」から期待値と異なる値になった場合には、その実際のNNUM値に基づいて駆動を実施する。
さらにECU13は、NNUM値の履歴に基づき、ACGスタータ20が逆転しているか否かを検知する。例えば、正転していれば上述の如くNNUM値は11→2→6→4→13→9の順に変化する筈である。一方、逆転していればNNUM値は9→13→4→6→2→11の順に変化する筈である。
ところで、ACGスタータ20によりエンジンを始動させるにあたり、エンジンのピストンが圧縮行程のTDC直前位置から始動させようとすると、ACGスタータ20に要する駆動トルクが圧縮分だけ大きくなるので、エンジンの始動性悪化が懸念される。そこで、エンジン始動開始前に、クランク軸14を逆転させて始動性が良好となるピストン位置に設定しておく、といったスイングバック制御を実施する場合がある。このように、ACGスタータ20を逆転駆動させたい場合があるが、この場合には、例えば今回NNUM値が9であれば、次回NNUM値は13であると特定し、その特定値に応じてUVW相コイルCU〜CWへの通電タイミングを制御すればよい。
図6は、ECU13に備えられたマイコン13a(図22参照)が、上述の如くUVW相コイルCU〜CWに対する通電制御を実施する処理の手順を示すフローチャートである。当該処理は、所定周期(例えば先述のマイコン13aのCPUが行う演算周期、又は所定のクランク角度毎)で繰り返し実行される。或いは、回転停止時には前記所定周期で実行する一方で、回転時においては以下に説明するエッジ検知が為される毎に実行してもよい。すなわち、図22に示すマイコン13aは、各センサSU〜SWから出力されて入力処理された信号(図25に示すUVW相信号)に対し、その信号が変化するタイミングを捕捉するキャプチャー機能を有している。要するに、UVW相信号の立上りおよび立下りのタイミング(エッジ検知タイミング)を検知する。そして、このエッジ検知がなされる毎に図6の処理を実行する。
先ず、図6に示すステップS10において、本実施形態では、クランク角信号、U相信号、V相信号およびW相信号の各々を、UVW相センサSU〜SWから取得する。続くステップS20(組合せ情報生成手段)では、クランク角信号およびUVW相信号に基づき、これらの信号の組合せを表した組合せ情報NNUMを算出する。続くステップS30では、NNUM値に基づき、次回のNNUM値を算出する。
具体的には、先述の11→2→6→4→13→9といった正転時ローテーションに基づき、例えば今回NNUM値が「11」であれば次回NNUM値は「2」であると算出する。なお、今回NNUM値が、現時点でのNNUM値で特定できる値、すなわち、先述した符号b,k,a,cにかかる「8」「1」「12」「10」であれば、次回NNUM値は各々「11」「11」「9」「2」であると算出する。
続くステップS40では、ステップS30で算出した次回NNUM値に基づき、UVW相コイルCU〜CWへの通電制御を実施する。これによりACGスタータ20は所定の回転方向でモータ駆動する。
例えば、U相コイルCUへの通電制御について説明すると、次回NNUM値が「11」または「4」である場合には、次回NNUM値を構成するU相信号の値は、今回NNUM値を構成するU相信号の値から変化することを意味する。よって、次回NNUM値が「11」または「4」であると特定した時点で、U相コイルCUへの通電制御内容をオンからオフ、或いはオフからオンに切り替える。
V相コイルCVおよびW相コイルCWへの通電制御についても同様にして、次回NNUM値が「9」または「2」であると特定した時点でV相コイルCVへの通電制御内容を切り替え、次回NNUM値が「13」または「2」であると特定した時点でW相コイルCWへの通電制御内容を切り替える。
続くステップS50では、先述したようにNNUM値「8」が現れてクランク軸14の絶対回転位置の検知が為されているか否かを判定する。検知済みであれば(S50:YES)、次のステップS60に進み、検知した絶対回転位置およびUVW相信号(またはNNUM値)に基づき、燃料噴射時期および点火時期が目標時期となるよう、インジェクタ10および点火装置11の作動を制御する。但し、絶対回転位置の検知が為されていなければ(S50:NO)、インジェクタ10および点火装置11を作動させることなく待機する。
図25の例では、ts1時点で点火装置11の駆動を開始し、ts2時点で点火させている。また、tf1の時点でインジェクタ10による燃料噴射を開始し、tf2の時点で噴射を終了させている。そして、内燃機関制御用信号ESが現れた時のクランク角(絶対回転位置)を基準とし、内燃機関制御用信号ESが吸入行程で出現した後、U相信号の5回目の立上りタイミング(または5回目のNNUM値「11」出現タイミング)をts1時点とし、W相信号の6回目の立下りタイミング(または6回目のNNUM値「2」出現タイミング)をts2時点として点火制御する。
また、内燃機関制御用信号ESが爆発行程で出現した後、V相信号の3回目の立下りタイミング(または3回目のNNUM値「9」出現タイミング)をtf1時点とし、V相信号の5回目の立上りタイミング(または5回目のNNUM値「6」出現タイミング)をtf2時点として燃料噴射制御する。
なお、吸気圧センサ16の検出値に基づき、下死点BDC時期が排気行程および圧縮行程のいずれであるかを行程判別することは先述した通りであるが、この行程判別が未だ為されていない場合には、ts1’〜ts2’およびtf1’〜tf2’でも点火装置11およびインジェクタ10を駆動させる。また、図25の例では、各種の点火制御時期ts1,ts2および噴射制御時期tf1,tf2がUVW相信号の立上りまたは立下りタイミングと一致しているが、一致していない場合には、目標時期の直前におけるUVW相信号の立上りまたは立下りタイミングから、所定時間が経過した時点で点火制御または噴射制御を実施すればよい。
以上詳述した本実施形態によれば、以下の効果が得られるようになる。
(1)図16に示す従来手法では、クランク軸14が1回転する間に内燃機関制御用信号ESが1回出現するのに対し、本実施形態によれば4回出現する。そのため、ACGスタータ20の駆動を開始してから、クランク軸14が1回転することを待たずして内燃機関制御用信号ESが出現することとなるので、内燃機関制御用信号ESに基づき絶対回転位置を算出するのに要する時間を短縮できる。よって、インジェクタ10及び点火装置11の駆動開始を迅速にできる。これにより、要求されるモータ駆動トルクを低減させることができるので、ACGスタータ20の小型化を図ることができる。
(2)本実施形態では、異極磁性部34の回転軌道34a上に複数のセンサを配置することに起因して、内燃機関制御用信号ESを検出した時のNNUM値「0」が、いずれのセンサによる内燃機関制御用信号ESを組み合わせたものであるかを特定できなくなる。この問題に対し、本実施形態では、NNUM値の履歴に基づき前記特定を行う。よって、絶対回転位置の把握を可能にできる。
(3)本実施形態では、絶対回転位置を算出が未だ完了していない回転駆動期間における通電制御(モータ駆動制御)に関し、次回NNUM値の候補「6」「13」を順に試行して通電制御するので、前記回転駆動期間であってもモータ駆動制御が可能となる。
(4)UVW相信号のハイとローだけでは、内燃機関制御用信号ESによるロー信号とモータ制御用信号によるロー信号との見分けがつかない。特に、NNUM値の履歴を取得できていないACGスタータ20の駆動開始時またはACGスタータ20の停止時には、UVW相信号のローが内燃機関制御用信号ESによるものであるか否かを特定できない。これに対し本実施形態では、各信号の組合せ情報NNUMを算出するので、当該NNUM値に基づけば、ACGスタータ20が停止していたとしても、NNUM値が「1」であれば、その時のW相信号のローが内燃機関制御用信号ESによるものであると特定できる。よって、エンジン制御に要する絶対回転位置を迅速に把握できる。
特に、アイドルストップ制御システムを有する車両においては、エンジンを自動再始動させるにあたり、上述の如く絶対回転位置を迅速に把握できるので、インジェクタ10及び点火装置11の駆動開始を迅速にでき、好適である。
(5)ここで、UVW相センサSU〜SWが内燃機関制御用信号ESを出力することに起因して、現時点でのUVW相センサ信号からは次回のUVW相センサ信号を特定できない場合がある。しかしこの場合であっても、現時点でのNNUM値に基づけば、次回のNNUM値を特定して次回のUVW相センサ信号を特定できる場合がある。この点を鑑みた本実施形態では、現時点でのNNUM値に基づき特定した次回のNNUM値に基づき、UVW相コイルCU〜CWへの通電制御内容を決定するので、次回のUVW相センサ信号が特定できなくなる機会を減らして通電制御内容を決定できるようになる。
(6)ACGスタータ20のロータ30とクランク軸14とは回転中心が一致した状態で一体的に回転するように固定されており、ロータ30とクランク軸14との間には、ベルトやギア等の動力伝達機構が介在していない。そのため、ACGスタータ20に備えられたクランク回転位置センサSEからクランク角信号を出力させるにあたり、ギアのバックラッシュやベルトの伸び等により、クランク軸14の回転位相とロータ30の回転位相とにずれが生じることを回避できるので、クランク軸14の絶対回転位置を算出するにあたり、十分な算出精度を確保できる。
(7)内燃機関制御用信号ESを検出した時のNNUM値「8」が、ES検出時以外では出現しないように構成されている。そのため、現時点でのNNUM値に基づき絶対回転位置を算出できるので、NNUM値の履歴が蓄積されるのを待つことなく、迅速に絶対回転位置を把握できる。
(8)ところで、図16に示す従来手法において、クランク角信号の立ち上りまたは立ち下りの周期は、1つのマグネット32S,32Nが占める回転角(30°)だけクランク軸14が回転する時間である。これに対し、NNUMの更新周期は、各々のセンサ信号の組合せであるため、前記回転角(30°)の3分の1の回転角だけクランク軸14が回転する時間となる。つまり、NNUMの更新周期は、図16のクランク角信号の周期よりも短いと言える。そのため、各々のUVW相信号の立ち上りまたは立ち下りのタイミング(NNUMの更新タイミング)に基づき燃料噴射時期や点火時期を制御する本実施形態によれば、図16に示すクランク角信号に基づき制御する場合に比べて、制御に使用する基本時間が3分の1(10°/30°)になり、燃料噴射時期や点火時期を高精度で制御できる。
(9)図23に示すように、クランク回転位置センサSEおよびUVW相センサSU〜SWを隣り合う間隙41aに配置することを禁止して、分散して配置している。図23の例では、クランク回転位置センサSEとU相センサSUとの間の角度、U相センサSUとV相センサSVとの間の角度、およびV相センサSVとW相センサSWとの間の角度が80°となるように分散配置している。そのため、4つのセンサSU〜SW,SEを、複数のティース部41の間隙41aのうち隣り合う間隙41aに順番に配置する場合に比べて、内燃機関制御用信号ESが現れる時間間隔の最長値を短くできる。よって、ACGスタータ20の駆動を開始してから、内燃機関制御用信号ESが出現するまでに要する時間を、上述の分散配置により短縮することができる。よって、内燃機関制御用信号ESに基づき絶対回転位置を算出するのに要する時間を短縮でき、インジェクタ10及び点火装置11の駆動開始迅速化を促進できる。
(第13実施形態)
本実施形態の構成を図22に示す。
図27(a)に示すように、複数のマグネット32S,32Nのうち所定のマグネット32S(A)(図27(a)の例ではS極マグネット)の一部分には、以下に説明する異極磁性部34が形成されている。すなわち、図27(a)の斜線に示す部分だけは、S極マグネット32Sとは異なる極性(N極)に着磁されている。この異極磁性部34は、所定のマグネット32S(A)のうちロータ回転軸方向(図27(a)の上下方向)の一端部分に形成されるとともに、回転方向(図27(a)の左右方向)のうち異極磁性部34の両側には、所定のマグネット32S(A)の極性が存在するように形成する。要するに、所定のマグネット32S(A)の上端部分を回転方向に3分割し、その中央部分を異極磁性部34として形成する。
U相センサSU、V相センサSVおよびW相センサSWはロータ回転軸方向(図27(a)の上下方向)において同じ位置に配置されているのに対し、クランク回転位置センサSEは、UVW相センサSU〜SWとは回転軸方向において異なる位置に配置されている。これにより、異極磁性部34の回転軌道34a上にクランク回転位置センサSEが位置し、UVW相センサSU〜SWについては回転軌道34aから外れた位置となるようにする。
本実施形態では、UVW相センサSU〜SWおよびクランク回転位置センサSEがN極を検出した時にはロー信号(二進数「0」)を出力し、S極を検出した時にはハイ信号(二進数「1」)を出力するよう設定してある。そして、マグネット32S,32Nは12個(12極)であるため、クランク角信号、U相信号、V相信号、W相信号の各々は、ロータ30が30度回転する毎にローとハイが切り替わる(図28参照)。したがって、UVW相の各々の電気角360°は、クランク軸14の回転角度(機械角)60°に相当する。但し、クランク角信号については異極磁性部34の検出時にもローに切り替わる。また、ロータ30が10度回転する毎に、UVW相センサSU〜SWおよびクランク回転位置センサSEのいずれかにおいてローとハイが切り替わることとなる。
ちなみに、図27(a)の如く、N極マグネット32NとS極マグネット32Sの間に極性を有しない部材32aが介在している場合において、この部材32aがUVW相センサSU〜SWおよびクランク回転位置センサSEに対向して極性を検出できない時には、ロー信号およびハイ信号のうち予め設定しておいた信号(例えばロー信号)であるとみなして処理すればよい。
なお、前記部材32aが存在しないよう、N極マグネット32NとS極マグネット32Sを隣接させたロータ30を採用してもよいことは勿論である。また、1つのマグネット片をN極とS極に着磁することで、複数のN極マグネット32NおよびS極マグネット32Sを1つのマグネット片から形成したロータを採用してもよい。なお、この場合のロータでは、複数(例えば4つ)のマグネット片を用いて構成してもよいし、1つのマグネット片を用いて構成してもよい。
図28は、上段から順に、クランク角、組合せ情報NNUM、クランク角信号およびUVW相信号の二進数表記、クランク回転位置センサSEによるクランク角信号、UVW相信号、点火信号、噴射信号、エンジン行程を示すタイムチャートである。組合せ情報NNUMとは、同時期に出力されるクランク角信号、U相信号、V相信号およびW相信号の組合せを表した仮想信号であり、本実施形態では、クランク角信号およびUVW相信号の二進数表記を組み合わせて算出した十進数の数値としている。
具体的には、二進数表記の1桁目をクランク角信号の2進数、二進数表記の2桁目をU相信号の2進数、3桁目をV相信号の2進数、4桁目をW相信号の2進数で表した4桁の二進数を、十進数に変換した数値が組合せ情報NNUMである。この数値NNUMはECU13により算出される。例えば、最左欄に示すようにクランク角信号およびUVW相信号が各々「1」「1」「0」「1」であれば、NNUMは「11」となる。
図中の符号ESは、異極磁性部34を検出したことによりロー信号となった部分を示しており、当該部分の信号が「内燃機関制御用信号」に相当し、UVW相信号は「モータ制御用信号」に相当する。この内燃機関制御用信号ESが現れる部分を除けば、NNUMの値は11→2→6→4→13→9の順に繰り返しローテーションして変化する。
図中の符号taに示すように、内燃機関制御用信号ESを検出した時のNNUM値は「8」となるが、ES検出時以外では、NNUM値が「8」になることはない。したがって、NNUM値「8」を検出した時点でのクランク角を基準として、ECU13はクランク軸14の絶対回転位置を算出できる。そして、絶対回転位置を把握できれば、各々のセンサ出力信号の立ち上りまたは立ち下りのタイミング(つまりNNUMの更新タイミング)と、4サイクルエンジンの1回転分の位置関係を特定できる。
例えば、NNUM値「8」が現れた後、NNUM値「2」が3回目に現れたtb時点が、エンジンのピストンが下死点BDCに達した時期であると特定できる。なお、吸気圧センサ16の値を参照すれば、前記下死点BDC時期が排気行程および圧縮行程のいずれであるかを判別(行程判別)できる。これにより、絶対回転位置を基準として、NNUMの更新タイミングに基づき燃料噴射時期や点火時期を目標時期とするように制御できる。
さらにECU13は、現時点でのNNUM値に基づき次回のNNUM値を特定し(特定手段)、その特定した次回NNUM値に基づきU相コイルCU、V相コイルCVおよびW相コイルCWへの通電制御内容を決定する。例えば、今回NNUM値が「6」であれば、前記ローテーションに基づき次回NNUM値は「4」であると特定できる。つまり、U相コイルCUが巻き回されたティース部41は、S極マグネット32Sの対向位置(ハイ)からN極マグネット32Nの対向位置(ロー)へと移り変わるタイミングにあると言える。そのため、U相コイルCUへの通電オンオフ状態を切り替えるタイミングにあると言える。
このように、U相コイルCUへの通電は、U相信号の立ち上りを示すNNUM値「9」、または立ち下がりを示すNNUM値「6」が検出されたか否かに基づきECU13が制御する。同様にして、V相コイルCVおよびW相コイルCWへの通電もNNUM値に基づき制御する。なお、NNUM値「8」については、モータ駆動用コイルCU,CV,CWと対向している「9」でUVW相コイルCU〜CWへの通電制御を実施すれば、ティース部41のコイルCU,CV,CWと磁極位相が一致し、モータを回転駆動させることができる。
さらにECU13は、NNUM値の履歴に基づき、ACGスタータ20が逆転しているか否かを検知する。例えば、正転していれば上述の如くNNUM値は11→2→6→4→13→9の順に変化する筈である。一方、逆転していればNNUM値は9→13→4→6→2→11の順に変化する筈である。
ところで、ACGスタータ20によりエンジンを始動させるにあたり、エンジンのピストンが圧縮行程のTDC直前位置から始動させようとすると、ACGスタータ20に要する駆動トルクが圧縮分だけ大きくなるので、エンジンの始動性悪化が懸念される。そこで、エンジン始動開始前に、クランク軸14を逆転させて始動性が良好となるピストン位置に設定しておく、といったスイングバック制御を実施する場合がある。このように、ACGスタータ20を逆転駆動させたい場合があるが、この場合には、例えば今回NNUM値が9であれば、次回NNUM値は13であると特定し、その特定値に応じてUVW相コイルCU〜CWへの通電タイミングを制御すればよい。
図6は、ECU13に備えられたマイコン13a(図22参照)が、上述の如くUVW相コイルCU〜CWに対する通電制御を実施する処理の手順を示すフローチャートである。当該処理は、所定周期(例えば先述のマイコン13aのCPUが行う演算周期、又は所定のクランク角度毎)で繰り返し実行される。或いは、回転停止時には前記所定周期で実行する一方で、回転時においては以下に説明するエッジ検知が為される毎に実行してもよい。すなわち、図22に示すマイコン13aは、各センサSU〜SWから出力されて入力処理された信号(図28に示すUVW相信号)に対し、その信号が変化するタイミングを捕捉するキャプチャー機能を有している。要するに、UVW相信号の立上りおよび立下りのタイミング(エッジ検知タイミング)を検知する。そして、このエッジ検知がなされる毎に図6の処理を実行する。
先ず、図6に示すステップS10において、本実施形態では、クランク角信号、U相信号、V相信号およびW相信号の各々を、UVW相センサSU〜SWから取得する。続くステップS20(組合せ情報生成手段)では、クランク角信号およびUVW相信号に基づき、これらの信号の組合せを表した組合せ情報NNUMを算出する。続くステップS30では、NNUM値に基づき、次回のNNUM値を算出する。具体的には、先述の11→2→6→4→13→9(8)といった正転時ローテーションに基づき、例えば今回NNUM値が「11」であれば次回NNUM値は「2」であると算出する。なお、今回NNUM値が「8」であれば次回NNUM値は「9」であると算出する。
続くステップS40では、ステップS30で算出した次回NNUM値に基づき、UVW相コイルCU〜CWへの通電制御を実施する。これによりACGスタータ20は所定の回転方向でモータ駆動する。
例えば、U相コイルCUへの通電制御について説明すると、次回NNUM値が「11」または「4」である場合には、次回NNUM値を構成するU相信号の値は、今回NNUM値を構成するU相信号の値から変化することを意味する。よって、次回NNUM値が「11」または「4」であると特定した時点で、U相コイルCUへの通電制御内容をオンからオフ、或いはオフからオンに切り替える。
V相コイルCVおよびW相コイルCWへの通電制御についても同様にして、次回NNUM値が「9」または「2」であると特定した時点でV相コイルCVへの通電制御内容を切り替え、次回NNUM値が「13」または「2」であると特定した時点でW相コイルCWへの通電制御内容を切り替える。
続くステップS50では、先述したようにNNUM値「8」が現れてクランク軸14の絶対回転位置の検知が為されているか否かを判定する。検知済みであれば(S50:YES)、次のステップS60に進み、検知した絶対回転位置およびUVW相信号(またはNNUM値)に基づき、燃料噴射時期および点火時期が目標時期となるよう、インジェクタ10および点火装置11の作動を制御する。但し、絶対回転位置の検知が為されていなければ(S50:NO)、インジェクタ10および点火装置11を作動させることなく待機する。
図28の例では、ts1時点で点火装置11の駆動を開始し、ts2時点で点火させている。また、tf1の時点でインジェクタ10による燃料噴射を開始し、tf2の時点で噴射を終了させている。そして、内燃機関制御用信号ESが現れた時のクランク角(絶対回転位置)を基準とし、内燃機関制御用信号ESが吸入行程で出現した後、U相信号の5回目の立上りタイミング(または5回目のNNUM値「11」出現タイミング)をts1時点とし、W相信号の6回目の立下りタイミング(または6回目のNNUM値「2」出現タイミング)をts2時点として点火制御する。
また、内燃機関制御用信号ESが爆発行程で出現した後、V相信号の3回目の立下りタイミング(または3回目のNNUM値「9」出現タイミング)をtf1時点とし、V相信号の5回目の立上りタイミング(または5回目のNNUM値「6」出現タイミング)をtf2時点として燃料噴射制御する。
なお、吸気圧センサ16の検出値に基づき、下死点BDC時期が排気行程および圧縮行程のいずれであるかを行程判別することは先述した通りであるが、この行程判別が未だ為されていない場合には、ts1’〜ts2’およびtf1’〜tf2’でも点火装置11およびインジェクタ10を駆動させる。また、図28の例では、各種の点火制御時期ts1,ts2および噴射制御時期tf1,tf2がUVW相信号の立上りまたは立下りタイミングと一致しているが、一致していない場合には、目標時期の直前におけるUVW相信号の立上りまたは立下りタイミングから、所定時間が経過した時点で点火制御または噴射制御を実施すればよい。
以上詳述した本実施形態によれば、第1実施形態の(1),(5),(6),(8),(10)の効果、及び以下の効果が得られるようになる。
(11)ところで、従来のクランク角信号の立ち上りまたは立ち下りの周期は、1つのマグネット32S,32Nが占める回転角(30°)だけクランク軸14が回転する時間である。これに対し、NNUMの更新周期は、各々のセンサ信号の組合せであるため、前記回転角(30°)の3分の1の回転角だけクランク軸14が回転する時間となる。つまり、NNUMの更新周期は、従来のクランク角信号の周期よりも短いと言える。そのため、各々のUVW相信号の立ち上りまたは立ち下りのタイミング(NNUMの更新タイミング)に基づき燃料噴射時期や点火時期を制御する本実施形態によれば、従来のクランク角信号に基づき制御する場合に比べて、制御に使用する基本時間が3分の1(10°/30°)になり、燃料噴射時期や点火時期を高精度で制御できる。
(他の実施形態)
本発明は上記実施形態の記載内容に限定されず、以下のように変更して実施してもよい。また、各実施形態の特徴的構成をそれぞれ任意に組み合わせるようにしてもよい。
・上記各実施形態では、遠心クラッチ等のトルク伝達機構を有する車両を対象としているが、このようなトルク伝達機構を有していない車両を対象とした場合には、運転者のクラッチ操作によりクラッチをオフ作動させて駆動輪への動力伝達を遮断していることを条件としたり、ニュートラルギヤ状態であることが検出されていることを条件としたりして、ACGスタータ20のモータ駆動開始を許可するようにしてもよい。
・上記各実施形態では、ステータ40の外周側にロータ30が位置するアウターロータ型のACGスタータ20を採用しているが、ステータ40の内周側にロータ30が位置するインナーロータ型のACGスタータ20を採用してもよい。
・上記各実施形態では、ロータ30を12極、ステータ40を18極とした12−18極のACGスタータ20を対象としているが、8−12極や16−24極等、他の極数のACGスタータ20を対象としてもよい。
・上記第1実施形態では、所定のマグネット32S(A)の上端部分を回転方向に3分割し、その中央部分を異極磁性部34として形成しているが、図4(b)に示すように、所定のマグネット32S(A)の上端部分を回転方向に2分割して、その一方を異極磁性部34として形成してもよい。但し、3分割した場合には、V相およびW相等の他のモータ制御信号の立上りまたは立下りタイミングと、内燃機関制御用信号ESの立上りまたは立下りタイミングとが一致するように構成できるので、組合せ情報NNUMが複雑になることを回避できる。これに対し、上述の如く2分割した場合には、組合せ情報NNUMが複雑になり、絶対回転位置の算出や通電制御の処理負荷が大きくなるといったデメリットがある。一方、2分割の場合には、内燃機関制御用信号ESの立下りが、他のV相、W相のほぼ中間位置となり、機械角で5°の信号間隔となる。よって、機械角で10°の信号間隔となる3分割の場合に比べて、点火および噴射を高精度で制御できるといったメリットがある。
・上記各実施形態では、S極マグネット32S中にN極の異極磁性部34を形成しており、内燃機関制御用信号ESをロー側に設定している。これに対し、N極マグネット32N中にS極の異極磁性部34を形成して、内燃機関制御用信号ESをハイ側に設定してもよい。また、N極マグネット32Nでロー側出力ではなくハイ側出力にしてもよい。
・上記各実施形態では、3本のUVW相コイルCU〜CWに対して3つのUVW相センサSU〜SWを設けている。これに対し、3つのUVW相センサSU〜SWのうちのいずれか1つまたは2つを廃止するようにしてもよい。この場合、廃止したセンサに対応するコイルのモータ制御信号は、他のコイルのモータ制御信号から推定して生成すればよい。例えば、W相センサSWを廃止した場合には、V相信号のオン時間またはオフ時間を計測しておき、V相信号のエッジから前記計測した時間が経過した時点、或いは、V相センサSVによるモータ制御信号の立上りから所定時間が経過した時点を、W相コイルCWにかかるモータ制御信号であると見なしてW相コイルCWを通電制御すればよい。
・上記各実施形態では、クランク軸14にロータ30を直結させているが、ベルトやギア等の動力伝達機構を介してロータ30をクランク軸14に連結させてもよい。但しこの場合には、ギアのバックラッシュやベルトの伸び等により、クランク軸14の回転位相とロータ30の回転位相とにずれが生じるので、クランク軸14の絶対回転位置の算出精度は低下する。
・上記各実施形態では、本発明にかかる回転機にACGスタータ20(モータ発電機)を採用しているが、発電機能を有していない始動モータを採用してもよいし、モータ機能を有していない発電機を採用してもよい。なお、モータ機能を有していない発電機を採用した場合、各センサSU〜SWから出力される信号はモータ制御信号として用いられることがないため、回転軌道34a上から外れた位置にセンサSU〜SWを配置することは不必要となる。また、発電機を採用した場合には3相発電機に限定されるものではなく、ロータ30を12極、ステータ40を12極とした12−12極の磁石式発電機や8−8極、16−16極等、他の極数の単相磁石発電機を対象としてもよい。
・図12に示す上記第7実施形態では、回転方向の中央部に空隙34kを形成し、空隙34kの両隣には所定のマグネット32S(A)が存在している。これに対し、図15(a)に示すように回転方向の端部に空隙34kを形成し、空隙34kの隣に隣接マグネット32N(B)が存在するようにしてもよい。或いは、図15(b)に示すように回転方向の全域に亘って空隙34kを形成し、空隙34kの両隣に隣接マグネット32N(B)が存在するようにしてもよい。
・上記各実施形態では、複数のレベルの論理表(NNUM値)によりクランク基準位置を検出したが、センサ入力時間からセンサ幅時間を順次計測し、その時間比を求め、その比が設定値よりも大きくなった位置をクランク基準位置として検出してもよいし、この検出手法と論理表による検出手法とを組み合わせてもよい。
・上記第12実施形態では、先述したように、クランク回転位置センサSEおよびUVW相センサSU〜SWを分散配置しているが、このような分散配置に替えて、クランク回転位置センサSEおよびUVW相センサSU〜SWを隣り合う間隙41aに配置するようにしてもよい。また、4つのセンサのうち任意のセンサのみを分散配置するようにしてもよい。
・上記第12実施形態では、3つのUVW相センサSU〜SWを、異極磁性部34の回転軌道34a上に配置しているが、これらのUVW相センサSU〜SWのうち1つまたは2つのセンサを回転軌道34a上に配置するようにしてもよい。なお、この場合においても、第1実施形態にかかる「分散配置」を適用して、絶対回転位置を算出するのに要する時間の短縮を図るようにしてもよい。
・上記各実施形態では、UVW信号に基づき、これらの信号の組合せを表した組合せ情報NNUMを算出した。そして、今回のNNUM値に基づいて、次回のNNUM値を算出した。これに加えて以下のような処理を行ってもよい。
例えば、図5に示すNNUM値の変化では、UVW相信号の立上り又は立下りのタイミング(エッジ検知タイミング)において、NNUM値として取り得ない値が存在する。具体的には、U相の立ち上がりタイミングでは、NNUM値は「7」や「1」の値を取り得ない。このように、正常であれば取り得ない値をNNUM値が取った回数をカウントし、この回数が所定回数よりも多くなった場合に、所定のエラー処理を実行する。
図30は、こうした組合せ情報NNUMのエラー処理の一例を示すフローチャートである。この一連の処理は、ECU13に備えられたマイコン13aによって、U相信号のエッジ検知がなされた時に割り込み処理として実行される。
先ず、図30に示すステップS110においてU相信号の立上りであるか否か判定する。この判定においてU相信号の立上りであると判定した場合(S110:YES)、ステップS120においてU相信号の値を「1」にする。続くステップS130では、V相信号=「0」であるか否か判定する。この判定においてV相信号=「0」でないと判定した場合(S130:NO)、ステップS140においてW相信号=「0」であるか否か判定する。この判定においてW相信号=「0」でないと判定した場合(S140:NO)、ステップS150においてU相エラーカウントU_ERRをインクリメントし、この一連の処理を一旦終了する。この場合、NNUM値は「7」であり、正常であればU相の立上りタイミングでは取り得ない値となっている。一方、ステップS140においてW相信号=「0」であると判定した場合(S140:YES)、ステップS160においてNNUM値を「3」にし、この一連の処理を一旦終了する。
また、ステップS130においてV相信号=「0」であると判定した場合(S130:YES)、ステップS170においてW相信号=「0」であるか否か判定する。この判定においてW相信号=「0」でないと判定した場合(S170:NO)、ステップS180においてNNUM値を「5」にし、この一連の処理を一旦終了する。一方、ステップS170においてW相信号=「0」であると判定した場合(S170:YES)、ステップS190においてU相エラーカウントU_ERRをインクリメントし、この一連の処理を一旦終了する。この場合、NNUM値は「1」であり、正常であればU相の立上りタイミングでは取り得ない値となっている。
一方、ステップS110においてU相信号の立上りでないと判定した場合(S110:NO)、すなわちU相信号の立下りであると判定した場合、ステップS200においてU相信号の値を「0」にする。続くステップS210では、V相信号=「0」であるか否か判定する。この判定においてV相信号=「0」でないと判定した場合(S210:NO)、ステップS220においてW相信号=「0」であるか否か判定する。この判定においてW相信号=「0」でないと判定した場合(S220:NO)、ステップS230においてU相エラーカウントU_ERRをインクリメントし、この一連の処理を一旦終了する。この場合、NNUM値は「6」であり、正常であればU相の立下りタイミングでは取り得ない値となっている。一方、ステップS220においてW相信号=「0」であると判定した場合(S220:YES)、ステップS240においてNNUM値を「2」にし、この一連の処理を一旦終了する。
また、ステップS210においてV相信号=「0」であると判定した場合(S210:YES)、ステップS250においてW相信号=「0」であるか否か判定する。この判定においてW相信号=「0」でないと判定した場合(S250:NO)、ステップS260においてU相エラーカウントU_ERRをインクリメントし、この一連の処理を一旦終了する。この場合、NNUM値は「4」であり、正常であればU相の立下りタイミングでは取り得ない値となっている。一方、ステップS250においてW相信号=「0」であると判定した場合(S250:YES)、ステップS270においてNNUM値を「0」にし、この一連の処理を一旦終了する。
上記のように、U相信号のエッジ検知がなされた時にエラー発生に応じて、U相エラーカウントU_ERRがインクリメントされる。そして、エラーカウント操作時や別のルーチンにおいて、U相エラーカウントU_ERRが所定回数よりも多いか否か判定し、エラーカウントERRの回数が所定回数よりも多くなった場合に所定のエラー処理を実行する。エラー処理としては、例えば組合せ情報NNUMをリセットしたり、組合せ情報NNUMを強制的に所定値に変更したりしてもよい。なお、ここではU相信号のエッジ検知がなされた場合を例にして説明したが、V相信号又はW送信号のエッジ検知がなされた場合にも、同様の処理を実行することができる。