(57)【特許請求の範囲】
【請求項１】
停止状態のエンジンに対して正転方向又は逆転方向へのトルクを付与するモータと、
前記モータのコイルに供給される電流値を検出する電流検出器と、
前記エンジンの始動操作に応じて前記エンジンを逆回転させる方向へ前記モータを駆動して前記モータのコイルに電流が供給される通電時間の割合を減少させる制御を行うとともに、前記モータを駆動中に前記電流検出器により検出された電流値の変化が時間の経過に伴って減少に向かう傾向から増加に向かう傾向に転じたことで電流値が所定の設定値以上である状態が所定の設定時間にわたり継続した場合、前記エンジンを正回転させる方向に前記モータの駆動を切り換える制御手段と
を備えたエンジン始動装置。
【請求項２】
請求項１に記載のエンジン始動装置において、
前記制御手段は、
前記モータのコイルに電流が供給される通電時間の割合を複数段階にわたって次第に減少させることを特徴とするエンジン始動装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジン始動時の圧縮行程にかかる高負荷域に対応して、クランク軸を一旦逆方向に回転させるスイングバック機能を用いたエンジン始動装置に関する。
【背景技術】
【０００２】
従来、エンジンの始動時にクランク角を検出してスイングバックを行うエンジン始動装置の先行技術が知られている（特許文献１参照）。すなわちこの先行技術は、エンジン始動時に検出したクランク角に基づいてクランク軸を圧縮上死点の手前まで逆回転させ、そこから正方向に回転させてクランキングを行うものである。このようなスイングバック機能を用いれば、エンジンの正回転方向でみた軽負荷域となる位置（逆方向の圧縮上死点手前）からクランキングを開始できるため、モータの出力トルクが比較的小さい場合でも圧縮上死点近傍の高負荷域を容易に乗り越えることができると考えられる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−３４３４０４号公報（段落００４０，００４６、図１，図６）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の先行技術は、スイングバック機能の実現に際して機械的なクランク角を検出しており、そのためのセンシングデバイスとしてロータ角度センサを用いている。ロータ角度（位置）センサはホール素子や磁気抵抗（ＭＲ）素子で構成されており、上記の先行技術においても、クランク角と連動したロータ角度を正確に検出するため、複数個のセンサ素子がロータの周辺（例えばボスの外周）に実装されている。
【０００５】
またロータ角度センサは、ブラシレスモータを駆動する際の位相制御（通電制御）にも利用することができる。すなわち、一般にブラシレスモータの駆動制御回路（モータドライバ）は、ロータ角度センサの出力を基準としてモータの回転に関する位置（位相）を検出し、ステータコイルに対する通電タイミングを制御している。
【０００６】
しかし、ホール素子や磁気抵抗素子等の非接触式センサでロータ角度を正確に検出するためには、個々のセンサ素子を極めて高精度に配置する必要があり、その実装には高度な技術が要求される。また、必要に応じてロータとは別に位置検出用磁石等を実装しなければならないため、それだけ部品点数が多くなるという問題がある。
【０００７】
このため、モータの小型化や低コスト化の観点からすれば、ホール素子等のデバイスを用いずにロータの角度（位置）を検出し、センサレスで駆動制御を行う技術の実現が望まれている。ところが、モータの駆動制御において完全にセンサを廃止してしまうと、今度はエンジンの始動時にロータ位置と連動したクランク角を検出することができなくなり、この場合は、上記のスイングバック機能を実現することができなくなるという別の問題が生じる。
【０００８】
そこで本発明は、センサレスでモータの駆動制御を行う場合であっても、エンジンの始動に際してスイングバック機能を有効に活用できる技術の提供を課題とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明は以下の解決手段を採用する。
本発明のエンジン始動装置は、エンジンの始動操作に応じてエンジンを逆回転させる方向へモータを駆動した後、コイルに供給される電流値の変化に基づいて、エンジンを正回転させる方向にモータの駆動を切り換えるものである。
【００１０】
すなわち上記の解決手段では、ロータ位置やエンジンのクランク角を検出しなくても、逆回転時にコイルに供給される電流値（検出電流）の変化から圧縮上死点の近傍に達したこと（スイングバック終了）を判断し、そこで逆回転から正回転へモータの駆動を切り換えている。これにより、特にロータ位置センサを用いることなく、エンジン始動時のスイングバック機能を実現することができる。
【００１１】
好ましくは、上記の解決手段において、エンジンを逆回転させる方向へモータを駆動中に検出された電流値が所定の設定値以上となった場合、エンジンを正回転させる方向にモータの駆動を切り換えることとする。
【００１２】
停止状態からエンジンを逆回転させた場合に、その逆方向圧縮上死点前でどの程度の負荷が発生し、結果としてモータのコイルに供給される電流値がどの程度を示すかは、予め実験等を通して知ることができる。したがって、逆方向の圧縮上死点手前（近傍）で発生すると予想される電流値から上記の設定値を予め定めておけば、実際の始動時に検出された電流値の変化に基づいて、容易に逆回転から正回転の方向へモータの駆動を切り換えることができる。
【００１３】
また好ましくは、上記の解決手段において、エンジンを逆回転させる方向へモータを駆動中に検出された電流値が所定の設定値以上である状態が所定の設定時間にわたり継続した場合、エンジンを正回転させる方向にモータの駆動を切り換えることもできる。
【００１４】
この場合、実際には逆方向の圧縮上死点近傍に達していない状況で、何らかの要因（例えば外来ノイズ等）によって電流値が設定値以上に変化することがあったとしても、その変化が継続的なものでなく、一時的なものであれば、引き続きモータを逆回転に駆動することができる。これにより、エンジン始動時の誤動作を防止し、スイングバック機能を確実に実現することができる。
【００１５】
また本発明のエンジン始動装置において、エンジンを逆回転させる方向へモータを駆動している間に、モータのコイルに電流が供給される通電時間の割合を減少させる制御を合わせて実行することもできる。
【００１６】
上記のように始動時のスイングバックにおいては、逆方向の圧縮上死点近傍でモータに流れる電流値が設定値以上に変化することが分かっている。これは、複数あるコイルのインダクタンスがほぼ均一であることを想定した上でのことであるが、実際には各コイルが同じ巻数であっても、製造上のばらつきによってコイル同士で巻線の全長が異なっていたり、使用する巻線そのものがコイルごとに均質でなかったりすることがある。このため実用上では、全てのコイルでインダクタンスが全く均一になるということは考えにくい。
【００１７】
このため、エンジン始動時のスイングバックにおいて、実際には未だ圧縮上死点近傍にまで達していなくても、平均より突出して大きいインダクタンスを持ったコイルに通電されると、その間に電流値が目立って上昇することがある。この場合、表面的な電流値の変化だけからスイングバックを終了させることは適切でなく、モータの駆動制御にはより慎重な配慮が求められる。
【００１８】
そこで本発明では、始動時のスイングバックにおいて、逆方向へのモータの駆動時に通電時間の割合を減少させる制御を合わせて実行することにより、コイルごとのインダクタンスのばらつきによる影響を取り除いている。すなわち、モータの駆動時にコイルに対する通電時間の割合を減少させると、それに伴ってコイルに流れる電流値も通常は減少すると考えられる。このような現象は、平均よりもインダクタンスが突出して大きいコイルに対しても平等に現れる。
【００１９】
したがって、スイングバック時に通電時間の割合を減少させているにもかかわらず、これに反して実際の電流値が明らかに上昇（変化）することがあれば、それはコイルごとのインダクタンスのばらつきによるものではなく、スイングバックによって逆方向での圧縮上死点近傍に達したことを正確に表していると理解（判断）することができる。これにより、電流値の変化に基づいて適正な位置でスイングバックを終了させ、その位置からエンジンを正回転させて好適にエンジンを始動させることができる。
【００２０】
またこの場合、モータのコイルに電流が供給される通電時間の割合を複数段階にわたって次第に減少させることもできる。例えば、回転初期の通電時間の割合を最大とし、そこからモータの回転が進むにつれて、通電時間の割合を段階的に減少させていくことが好ましい。
【００２１】
この場合、回転初期には最大の割合でコイルに通電されるため、停止状態からのイナーシャに抗して充分なトルクを得ることができる。その後、スイングバックの過程でモータが円滑に回転していくと、それに伴って要求トルクも減少していくため、通電時間の割合を段階的に減少させていっても、引き続き逆方向へのトルクを充分に得ることができる。
【００２２】
さらにこの後、ある程度まで通電時間の割合を減少させた段階で、実際にコイルに流れる電流値が目立って変化することがあれば、それは実際に逆方向での圧縮上死点近傍に達したことを意味するので、その位置で好適にスイングバックを終了させることができる。そして、この位置からエンジンを正回転させる方向へモータの駆動を切り換えれば、正回転方向の軽負荷域から容易にエンジンをクランキングさせ、その慣性力を利用してスムーズにエンジンを始動させることができる。
【発明の効果】
【００２３】
本発明のエンジン始動装置によれば、ロータ位置の検出用にセンサを用いなくとも、始動時のスイングバック機能を実現してエンジンの始動性を高めることができる。これにより、モータの小型軽量化や低コスト化を実現し、全体として部品点数が少なく、より安価な製品を市場に多く供給することができる。
【図面の簡単な説明】
【００２４】
【図１】一実施形態のエンジン始動装置の構成を概略的に示す図である。
【図２】エンジンの始動制御に関してＣＰＵが実行する始動制御メイン処理の手順例を示すフローチャートである。
【図３】スイングバック終了判定処理の具体的な手順例を示すフローチャートである。
【図４】始動制御メイン処理、及びスイングバック終了判定処理を通じて各種の値や状態が時間的に変化していく様子を示したタイミングチャートである。
【図５】三相モータを６極で使用した場合の機械モデルを簡略化して示した概念図である。
【発明を実施するための形態】
【００２５】
以下、本発明の実施形態について図面を参照しながら説明する。
図１は、一実施形態のエンジン始動装置１０の構成を概略的に示す図である。このエンジン始動装置１０は、例えば三相交流電動機である三相モータ１２を用いてエンジン１４を始動する。エンジン１４は、例えば４サイクル単気筒型の内燃機関であり、図示しない動力システム（例えば自動二輪車）に搭載されることで、動力システムの駆動源として機能する。
【００２６】
三相モータ１２は、例えばＵ相、Ｖ相、Ｗ相のコイル（モータコイル、ステータコイル等）１２ｕ，１２ｖ，１２ｗを有する他、図示しないロータとして例えば永久磁石（マグネット）を有している。なお永久磁石は、Ｕ相、Ｖ相、Ｗ相のコイル１２ｕ，１２ｖ，１２ｗにそれぞれ対応して３つずつ設けられている。また図示しないロータには、例えば三相モータ１２の出力軸が接続されており、この出力軸がエンジン１４のクランク軸（図示しない）に連結されている。
【００２７】
またエンジン始動装置１０は、センサレス式のモータドライバユニット２０を備えている。すなわちモータドライバユニット２０は、三相モータ１２の駆動制御をセンサレスで行うことができる。ここでいう「センサレス」とは、三相モータ１２にホール素子や磁気抵抗素子等のロータ位置センサを実装せずにロータ位相を検出し、三相モータ１２の駆動制御を実現することを意味している。なお、このようなセンサレス式の駆動制御については公知であるため、ここではその詳細を省略する。
【００２８】
モータドライバユニット２０は、例えば三相ドライバ２２を内蔵している。三相ドライバ２２はその内部にて、例えば６つのスイッチング素子（図示しないＭＯＳＦＥＴ）を用いた三相ブリッジを構成している。三相ブリッジの構成は公知であるため、ここでは図示とともにその説明を省略する。
【００２９】
またモータドライバユニット２０は、三相ドライバ２２に繋がる３つのドライバ端子２０ａ，２０ｂ，２０ｃを有しており、これらドライバ端子２０ａ，２０ｂ，２０ｃは、それぞれ三相モータ１２の端子１２ａ，１２ｂ，１２ｃに接続されている。
さらにモータドライバユニット２０は、三相ドライバ２２に繋がる３つの電力端子２０ｘ，２０ｙを有している。これら電力端子２０ｘ，２０ｙには、バッテリ２４の正負（＋，−）端子がそれぞれ接続されている。
【００３０】
モータドライバユニット２０は電流検出器２６を有している。電流検出器２６は、例えばホール効果を用いた磁気比例方式の電流センサであり、この電流検出器２６は、三相ドライバ２２を通じて三相モータ１２のコイル１２ｕ，１２ｖ，１２ｗに供給される電流値を検出する。
【００３１】
またモータドライバユニット２０はＣＰＵ（中央処理装置）３０を有している。ＣＰＵ３０は、例えばＥＥＰＲＯＭ３０ａや図示しないメインＲＡＭを内蔵した半導体集積回路であり、ＣＰＵ３０は三相ドライバ２２を用いた三相モータ１２の位相制御を実行する。ＥＥＰＲＯＭ３０ａには制御プログラムが格納されている他、三相ドライバ２２の各ＭＯＳＦＥＴに対する通電パターンを予め定めた通電制御マップや、三相モータ１２の位相制御に必要な位相角テーブル等（いずれも図示していない）が格納されている。
【００３２】
その他に、モータドライバユニット２０はプリドライバ３２を内蔵している。このプリドライバ３２は、例えばＦＥＴ等のトランジスタアレイであり、ＣＰＵ３０から位相制御信号を受けて三相ドライバ２２に対する駆動信号を出力する。
【００３３】
図示しない動力システムにはスタータスイッチ３４が付属しており、このスタータスイッチ３４は、例えば動力システムのユーザがエンジン１４を始動させる際に操作されるスイッチ部品（例えばメカニカルプッシュスイッチ）である。
【００３４】
スタータスイッチ３４の信号線はモータドライバユニット２０の外部端子２０ｄに接続されており、スタータスイッチ３４に対して始動操作（例えば押下する操作）がなされると、外部端子２０ｄを通じて始動操作信号（ＯＮ信号）がＣＰＵ３０に入力される。なお始動操作がされていない状態では、スタータスイッチ３４が通常ＯＦＦ（ノーマリオープン）となっている。
【００３５】
またＣＰＵ３０は、上記の電流検出器２６からの検出信号を入力することで、三相モータ１２のコイル１２ｕ，１２ｖ，１２ｗに供給されている電流値を読み取ることができる。読み取られた電流値は、ＣＰＵ３０によるモータ位相制御に利用される他、以下のエンジン始動制御にも利用することができる。
【００３６】
〔エンジン始動制御〕
図２は、エンジン１４の始動制御に関してＣＰＵ３０が実行する始動制御メイン処理の手順例を示すフローチャートである。この始動制御メイン処理は、ＣＰＵ３０のＥＥＰＲＯＭ３０ａに制御プログラムとして格納されている。以下、始動制御メイン処理について順を追って説明する。
【００３７】
ステップＳ１０：先ずＣＰＵ３０は、電流検出器２６からの入力信号に基づき、三相モータ１２のコイル１２ｕ，１２ｖ，１２ｗに供給されている電流値を取り込む。なお、エンジン１４の停止時で、特に三相モータ１２を駆動していない状態（停止時）であれば、ここで取り込んだ電流値は「０Ａ」を示している。
【００３８】
ステップＳ１２：次にＣＰＵ３０は、スタータスイッチ３４からの操作信号に基づき、スタータスイッチ３４に対するユーザの操作がＯＦＦからＯＮへの確定後であるか否かを確認する。なお、ここでは過度な誤作動を防止するため、スタータスイッチ３４のＯＮ信号に遅延タイマを用いてＯＦＦからＯＮへの確定後を判定してもよい。例えば、スタータスイッチ３４からのＯＮ信号は、実際にユーザが始動操作を開始してから、その始動操作がある程度の遅延時間（例えば数十ｍｓ）継続した場合に出力されることとする。これにより、ユーザが間違ってスタータスイッチ３４に触れた場合の誤作動を防止し、これ以降の安定したエンジン１４の始動制御が可能となる。
【００３９】
このとき実際にユーザが始動操作を行った場合、ＣＰＵ３０はスタータスイッチ３４のＯＦＦからＯＮへの確定後であることを確認し（ステップＳ１２：Ｙｅｓ）、次のステップＳ１４を実行する。
【００４０】
ステップＳ１４：ＣＰＵ３０は、現在の制御状態がスイングバック前であるか否かを確認する。ここでいう「制御状態」は、例えばＣＰＵ３０がプログラム上で設定するステータス値（フラグ値）であり、デフォルトの状態では「スイングバック前（００Ｈ）」に設定されているものとする。また「制御状態」を表すステータス値は、例えば内蔵ＲＡＭのステータス領域に格納しておくことができる。したがって、初回は「制御状態」が「スイングバック前」であるため（ステップＳ１４：Ｙｅｓ）、ＣＰＵ３０は次にステップＳ１６に進む。
【００４１】
ステップＳ１６：ここでＣＰＵ３０は、モータ１２に対する通電デューティ（単位時間あたりの通電時間の割合）を決定する。通電デューティの決定には、例えばＥＥＰＲＯＭ３０ａに予め記憶されているデューティ制御マップ（図示していない）を用いすることができる。すなわち、図示しないデューティ制御マップには、エンジン１４のスイングバック開始時からの経過時間に応じて、三相モータ１２に対する通電デューティを段階的に減少させる特性が設定されている。通電デューティは、例えば初期状態を１００％とし、その後は一定時間（数十ｍｓ程度）が経過するごとに１０％ずつ減少させていくこととする。ただし、このようなマップの設定は単に一例であり、これ以外の設定であってもよい。
【００４２】
ステップＳ１８：先のステップＳ１６で通電デューティを決定すると、ＣＰＵ３０は決定した通電デューティで三相モータ１２を逆転駆動する。具体的には、現在のロータ位相に対して、エンジン１４を逆回転させる方向に三相モータ１２を駆動するための通電パターンを選択し、三相ドライバ２２に対する駆動信号を出力する。これにより、三相ドライバ２２の内部で各ＭＯＳＦＥＴがスイッチングされ、コイル１２ｕ，１２ｖ，１２ｗの通電方向（逆転駆動時）が制御される。なお、三相モータ１２の駆動制御そのものは公知であるため、ここではその詳細な説明を省略する。
【００４３】
ステップＳ２０：三相モータ１２の逆転駆動を実行すると、ＣＰＵ３０はスイングバック終了判定処理を実行する。この処理では、スイングバックを終了するか否か、つまり、エンジン１４のクランク角が逆方向の圧縮上死点近傍に達したか否かを判定する。ここで「スイングバック終了」の判定条件を満たした場合、ＣＰＵ３０は上記の「制御状態」を「スイングバック終了後」に設定する。一方、未だ「スイングバック終了」の判定条件を満たしていなければ、ＣＰＵ３０は「制御状態」を特に変更することなく始動制御メイン処理に復帰する。なお、具体的な判定手法については、さらに別のフローチャートを用いて後述する。
【００４４】
〔スイングバック前（スイングバック終了判定不成立）〕
「制御状態」が「スイングバック前」である場合、ＣＰＵ３０は上記のステップＳ１０〜ステップＳ１８を繰り返す。この間、エンジン１４を逆回転させる方向に三相モータ１２が駆動され、エンジン１４のスイングバックが実行される。また、スイングバック開始から時間の経過に伴い、コイル１２ｕ，１２ｖ，１２ｗに対する通電デューティは段階的に減少していく（ステップＳ１８）。
【００４５】
〔スイングバック終了後〕
この後、実際にスイングバック終了判定が成立し、「制御状態」が「スイングバック終了後」に設定された場合、ＣＰＵ３０は上記のステップＳ１０〜ステップＳ１４（Ｎｏ「スイングバック終了後」）を経てステップＳ２２に進む。
【００４６】
ステップＳ２２：この場合、ＣＰＵ３０は三相モータ１２を正転駆動する。具体的には、現在のロータ位相に対して、エンジン１４を正回転させる方向に三相モータ１２を駆動するための通電パターンを選択し、三相ドライバ２２に対する駆動信号を出力する。これにより、三相ドライバ２２の内部で各ＭＯＳＦＥＴがスイッチングされ、コイル１２ｕ，１２ｖ，１２ｗの通電方向（正転駆動時）が制御される。これにより、実際にエンジン１４のクランキングが行われる。
【００４７】
エンジン１４のクランキング中はユーザがスタータスイッチ３４を操作し続けることで、同じくＣＰＵ３０はステップＳ１０〜ステップＳ１４（Ｎｏ「スイングバック終了後」）を経てステップＳ２２を繰り返し実行する。
【００４８】
やがてエンジン１４が始動し、ユーザがスタータスイッチ３４の操作をやめると、スタータスイッチ３４からの信号はＯＦＦになる。この場合、ステップＳ１２ではＯＦＦからＯＮの確定後が確認できなくなるため（ステップＳ１２：Ｎｏ「その他」）、ＣＰＵ３０はステップＳ２４を実行する。
【００４９】
ステップＳ２４：この場合、ＣＰＵ３０は三相モータ１２の駆動を停止する。これにより、エンジン１４の始動制御に関して三相モータ１２への電力供給が停止する。
この後、特にスタータスイッチ３４のＯＦＦからＯＮへの確定後でないと判断している間（ステップＳ１２：Ｎｏ「その他」）、ＣＰＵ３０はステップＳ１０〜ステップＳ１２（Ｎｏ「その他」）を経てステップＳ２４を繰り返す。
【００５０】
〔スイングバック終了判定処理〕
図３は、スイングバック終了判定処理の具体的な手順例を示すフローチャートである。以下、手順例に沿ってスイングバック終了判定処理の内容について説明する。
【００５１】
ステップＳ３０：先ずＣＰＵ３０は、取り込んだ電流値が設定値以上であるか否かを確認する。ここでいう「設定値」は、エンジン１４の逆方向の圧縮上死点近傍で三相モータ１２のトルクが高負荷域となった場合に流れる電流値を基準として予め設定しておくことができる。なお「設定値」は、実際のエンジン１４や三相モータ１２を用いて実験的に設定すればよい。電流値が設定値に達していなければ（Ｎｏ「その他」）、ＣＰＵ３０はここでスイングバック終了判定処理を終え、上記の始動制御メイン処理に復帰する。
【００５２】
これに対し、取り込んだ電流値が設定値以上であった場合（ステップＳ３０：Ｙｅｓ）、ＣＰＵ３０は次のステップＳ３２に進む。
ステップＳ３２：ここでＣＰＵ３０は、タイマカウンタを起動して継続時間の計測を実行する。なおタイマカウンタは、先のステップＳ３０で電流値が設定値以上でないと判断されるか、もしくは、これ以降で「制御状態」が「スイングバック終了後」に設定されるまで使用される。
【００５３】
ステップＳ３４：ＣＰＵ３０は、計測中のタイマカウンタの値から、ここまでの継続時間が設定時間以上であるか否かを判断する。ここでいう「設定時間」は、エンジン１４のクランク角が実際に逆方向の圧縮上死点近傍に到達し、三相モータ１２のトルクが高負荷域で持続している場合の時間を基準として予め設定しておくことができる。ここでも同様に、「設定時間」は実際のエンジン１４や三相モータ１２を用いて実験的に設定すればよい。ここまでの継続時間が設定時間に達していなければ（Ｎｏ「その他」）、ＣＰＵ３０はここでスイングバック終了判定処理を終了し、上記の始動制御メイン処理に復帰する。
【００５４】
ステップＳ３６：これに対し、継続時間が設定時間以上であることを確認した場合（ステップＳ３４：Ｙｅｓ）、ＣＰＵ３０はここで「制御状態」の設定を「スイングバック終了後」に変更する。これにより、制御上で「スイングバック終了判定」が行われたことになる。
【００５５】
ステップＳ３８：スイングバック終了を判定すると、ＣＰＵ３０はここで三相モータ１２の逆転駆動を停止する。そしてＣＰＵ３０は、スイングバック終了判定処理を終了して始動制御メイン処理に復帰する。
【００５６】
復帰した先の始動制御メイン処理（図２）では、上記のようにステップＳ１４（Ｎｏ「スイングバック終了後」）からステップＳ２２に進むため、ＣＰＵ３０による三相モータ１２の制御は正転駆動となる。これにより、スイングバック終了判定後からエンジン１４のクランキングをスムーズに開始することができる。
【００５７】
〔単純化モデル〕
図４は、始動制御メイン処理、及びスイングバック終了判定処理を通じて各種の値や状態が時間的に変化していく様子を示したタイミングチャートである。なお、ここでは説明の煩雑化を防止するため、各種の値や状態をある程度まで単純化して示している。
【００５８】
〔時刻ｔ０〕
例えば、図４中の横軸中、ある時刻ｔ０でユーザによる始動操作がなされ、スタータスイッチ３４のＯＦＦからＯＮへの変化が確定した場合を想定する。この場合、ＣＰＵ３０による制御上でステップＳ１２の判定が（Ｙｅｓ）となり、ステップＳ１４以降でスイングバック動作（三相モータ１２の逆転駆動）が開始される。
【００５９】
〔電流値の変化〕
図４中（Ａ）：ここでは、単純化モデルとしての電流波形が示されている。三相モータ１２の逆転駆動開始に伴い、電流値の波形は位相の切り替わり点（６０°）ごとに周期的な変化を示すものとして観測される。例えば、先の時刻ｔ０で三相モータ１２に通電が開始されると、検出される電流値は一次遅れ応答に近い波形を示しつつピーク値まで立ち上がる。そして、次の位相切り替わり点（例えば時刻ｔ１）で電流値の波形は一旦立ち下がると、そこから再度、一次遅れ応答に近い波形を示しつつ次のピーク値まで立ち上がる。以後、位相の変化点（例えば時刻ｔ２，ｔ３，ｔ４）ごとに電流値の波形は周期的な変化を示す。
【００６０】
〔通電デューティ〕
図４中（Ｂ）：単純化モデルとしての通電デューティは、例えば始動制御の開始初期（時刻ｔ０）を１００％とすると、以後、一定時間が経過するごとに１０％ずつ段階的に減少する。この単純化例では、例えば始動制御の開始（時刻ｔ０）から一定時間経過後（時刻ｔ１）に通電デューティは９０％に減少し、次の一定時間経過後（時刻ｔ２）に通電デューティは８０％に減少し、また次の一定時間経過後（時刻ｔ３）に通電デューティが７０％に減少し、さらに次の一定時間経過後（時刻ｔ４）に通電デューティは６０％にまで減少している。また、このような段階的な通電デューティの減少に伴い、（Ａ）の電流波形に現れるピーク値は次第に減少していることが分かる。なお、ここでは説明の単純化のため、時間軸上でモータ１２の位相切り替わり点ごとに通電デューティを変化させているが、実際の制御上で位相の切り替わり点と通電デューティの変化点とが必ずしも一致している必要はない。
【００６１】
〔逆転駆動〕
図４中（Ｃ）：始動制御の開始に伴い、ＣＰＵ３０による制御上で時刻ｔ０から逆転駆動のステータス（例えば駆動信号）がＯＮになっている。
【００６２】
〔制御状態〕
図４中（Ｄ）：また「制御状態」は、上記のようにデフォルトで「スイングバック前」に設定されている。このため、始動制御の開始時（時刻ｔ０）からスイングバック終了判定がなされるまでの間、「制御状態」は「スイングバック前」のままである。
【００６３】
〔時刻ｔ５以降の変化〕
例えば、ある時刻ｔ５で電流値が設定値（Ｉａ）以上になった場合を想定する。この場合の設定値（Ｉａ）は、上記のように本実施形態において逆方向の圧縮上死点近傍で高負荷域となった場合に発生し得る電流値である。
【００６４】
また電流値が設定値（Ｉａ）以上になると、その時点（時刻ｔ５）からＣＰＵ３０による制御上でタイマカウンタによる継続時間の計測が開始される（図３中のステップＳ３２）。
【００６５】
〔時刻ｔ６〕
この後、電流値が設定値（Ｉａ）以上の状態が設定時間（τ）以上まで継続した場合を想定する。この場合、ＣＰＵ３０による制御上でスイングバック終了判定の条件が満たされることになる（図３中のステップＳ３４：Ｙｅｓ）。
したがって、時刻ｔ６で「制御状態」が「スイングバック終了後」に変更されるとともに、三相モータ１２の逆転駆動は停止（ＯＦＦ）されることになる。
【００６６】
これ以降の変化は特に示していないが、上記のようにスイングバック終了後から三相モータ１２は正転駆動され（図２中のステップＳ２２）、正回転方向の軽負荷域からエンジン１４のクランキングを開始することができる。
【００６７】
〔機械モデル〕
図５は、三相モータ１２を６極で使用した場合の機械モデルを簡略化して示した概念図である。この場合、エンジン１４の１回転（３６０°）あたり、６極の三相モータ１２−１〜１２−６が６０°ごとに配置された構造となる。これら６極の三相モータ１２−１〜１２−６には、それぞれに三相のコイル１２ｕ，１２ｖ，１２ｗが設けられている。なお図５中、煩雑化を防止するため、コイル１２ｕ，１２ｖ，１２ｗの符号は１極の三相モータ１２−１のみに付している。以下、６極の三相モータ１２−１〜１２−６を配置した構造において、上記のスイングバック機能を用いた場合の動作例について説明する。
【００６８】
例えば、図５中の鉛直上方にエンジン１４の圧縮上死点（ＴＤＣ）が位置する場合を想定する。また図５中、反時計回り方向をエンジン１４の正回転方向とする。ここでも簡略化のため、圧縮上死点（ＴＤＣ）を基準として６０°ごとに三相モータ１２−１〜１２−６までを配置した構造を示しているが、実際の配置が必ずしもこれと一致している必要はない。
【００６９】
〔スイングバック開始〕
例えば、初期状態でエンジン１４のクランク軸が逆方向の圧縮上死点前３００°の近傍位置で停止していたとする。ここから始動制御が開始されると、三相モータ１２の外周に沿って白抜きの矢印で示されているように、三相モータ１２が全体として逆転駆動されることになる。
【００７０】
簡略化モデルで考えると、このとき例えば、三相モータ１２は全体として最初の６０°（逆方向圧縮上死点前３００°〜２４０°まで）の区間を通電デューティ１００％で逆転駆動され、次の６０°（逆方向圧縮上死点前２４０°〜１８０°まで）の区間については通電デューティ９０％で逆転駆動される。そして、次の６０°（逆方向圧縮上死点前１８０°〜１２０°）の区間については通電デューティ８０％で逆転駆動され、その次の６０°（逆方向圧縮上死点前１２０°〜６０°）の区間については通電デューティ７０％で逆転駆動される。
【００７１】
〔逆方向圧縮上死点前〕
そして、最後の６０°（逆方向圧縮上死点前６０°〜０°）の区間については、通電デューティ６０％で逆転駆動される。ただし、逆方向の圧縮上死点手前では三相モータ１２が全体として高負荷域となり、上記のように各極の三相モータ１２−１〜１２−６に流れる電流値が設定値（Ｉａ）以上にまで変化する。そして、電流値が設定値（Ｉａ）以上の状態が設定時間（τ）以上にわたり継続すると、ＣＰＵ３０による制御上でスイングバック終了と判定し、三相モータ１２の逆転駆動が停止される。
【００７２】
そして、次に三相モータ１２の外周に沿ってハッチング付きの矢印で示されているように、今度は逆方向の圧縮上死点手前の位置から三相モータ１２が全体として正転駆動されることになる。したがって、正回転方向の軽負荷域からクランキングを開始することにより、圧縮上死点での負荷を容易に乗り越えてエンジン１４の始動性を高めることができる。なお、ここでは簡略化のため、６０°ごとに通電デューティを減少させているが、実際の制御上で６０°ずつ正確に通電デューティを減少させていく必要はない。
【００７３】
上述した一実施形態のエンジン始動装置１０によれば、三相モータ１２の駆動制御をセンサレス（ホール素子センサ不使用）で行う構成であっても、スイングバック機能を確実に実現してエンジン１４の始動性を向上することができる。これにより、三相モータ１２を含む動力システム全体の小型化や軽量化を促進するとともに、部品点数を削減して製造コストの低減を図ることに大きく寄与することができる。
【００７４】
また、スイングバック前の逆転駆動中に通電デューティを段階的に減少させていくことで、ノイズ等による電流値の一時的な上昇を誤認識することなく、正確にスイングバック終了を判定して正方向のクランキングを開始することができる。
【００７５】
特に、図５に示されるような複数（６極）の三相モータ１２−１〜１２−６を配置した構造においては、各コイル１２ｕ，１２ｖ，１２ｗの製造上のばらつきによって１つ１つのインダクタンス値が不均一となることが多い。この場合、平均より突出してインダクタンス値の大きいコイル１２ｕ，１２ｖ，１２ｗがあると、そこで流れる電流値が一時的に大きくなる傾向にある。これについて本実施形態では、逆転駆動中の電流値が設定値（Ｉａ）以上となり、その状態が設定時間（τ）以上まで継続したことを条件としてスイングバック終了を判定しているため、インダクタンス値のばらつきによる電流値の上昇を誤認識することなく、正確にスイングバック終了を判定して正方向のクランキングを開始することができる点でも優位である。
【００７６】
本発明は上述した実施形態に制約されることなく、種々に変形して実施することができる。一実施形態では、通電デューティを１０％ずつ減少させているが、このような減少幅は任意に変更してもよい。また、通電デューティを減少させるパターンは段階的なものに限らず、無段階で連続的に減少させるパターンを採用してもよい。
【００７７】
また、図４，図５等で挙げている状態モデルや機械モデルはあくまで一例であり、実用上はその他に各種のモデルが考えられることは言うまでもない。
【符号の説明】
【００７８】
１０    エンジン始動装置
１２    三相モータ
１２ｕ，１２ｖ，１２ｗ  コイル
１４    エンジン
２０    モータドライバユニット
２２    三相ドライバ
２４    バッテリ
２６    電流検出器
３０    ＣＰＵ
３４    スタータスイッチ
【図１】
0005752917.tif 000002
【図２】
0005752917.tif 000003
【図３】
0005752917.tif 000004
【図４】
0005752917.tif 000005
【図５】
0005752917.tif 000006