"予め定められた停止条件が満たされたときに停止し、停止した後、予め定められた始動条件が満たされたときにモータ220によってクランキングされるエンジンの制御装置であって、前記モータ220を駆動して前記エンジン100をクランキングしている間に、前記モータ220に電力を供給するバッテリ120の電圧がしきい値を下回った後は、前記エンジン100の停止を制限する制御ユニット300を備え、前記しきい値は、前記モータ220を駆動するときの前記エンジン100の回転速度が高いほど高い、エンジンの制御装置。前記エンジンには、クランク軸111に連結された第1のギヤ110と係合可能な第2のギヤ260と、駆動状態において、前記第2のギヤ260を前記第1のギヤ110と係合する位置まで移動させるアクチュエータ232とを含むスタータ200が設けられ、前記モータ220は、前記第2のギヤ260を回転させ、前記制御ユニット300は、前記アクチュエータ232の駆動に先立って前記モータ220を駆動させる第1のモードと、前記モータ220の駆動に先立って前記アクチュエータ232によって、前記第2のギヤ260を前記第1のギヤ110と係合させる第2のモードとを含み、前記第2のモードで前記アクチュエータ232および前記モータ220が駆動されるときの前記エンジン100の回転速度よりも高い回転速度において、前記第1のモードで前記アクチュエータ232および前記モータ220が駆動される、請求項1に記載のエンジンの制御装置。前記しきい値は、前記第1のモードにおいて用いられるしきい値と、前記第2のモードにおいて用いられるしきい値とを含み、前記第1のモードにおいて用いられるしきい値は、前記第2のモードにおいて用いられるしきい値よりも高い、請求項2に記載のエンジンの制御装置。前記始動条件が満たされたときに前記エンジン100の回転速度が零より大きく、かつ予め定められた回転速度以下であると、前記第2のモードで前記アクチュエータ232および前記モータ220が駆動され、前記制御ユニット300は、前記第1のモードおよび前記第2のモードに加えて、前記始動条件が満たされたときに前記エンジン100の回転速度が零であると、前記モータ220の駆動に先立って前記アクチュエータ232によって、前記第2のギヤ260を前記第1のギヤ110と係合させる第3のモードを含み、前記しきい値は、前記第1のモードにおいて用いられるしきい値と、前記第2のモードにおいて用いられるしきい値と、前記第3のモードにおいて用いられるしきい値とを含み、前記第1のモードにおいて用いられるしきい値は、前記第2のモードにおいて用いられるしきい値よりも高く、前記第2のモードにおいて用いられるしきい値は、前記第3のモードにおいて用いられるしきい値よりも高い、請求項2に記載のエンジンの制御装置。前記始動条件が満たされたときに前記エンジン100の回転速度が零より大きく、かつ予め定められた回転速度以下であると、前記第2のモードで前記アクチュエータ232および前記モータ220が駆動され、前記制御ユニット300は、前記第1のモードおよび前記第2のモードに加えて、前記始動条件が満たされたときに前記エンジン100の回転速度が零であると、前記モータ220の駆動に先立って前記アクチュエータ232によって、前記第2のギヤ260を前記第1のギヤ110と係合させる第3のモードとを含み、前記しきい値は、前記第2のモードにおいて用いられるしきい値と、前記第3のモードにおいて用いられるしきい値とを含み、前記第2のモードにおいて用いられるしきい値は、前記第3のモードにおいて用いられるしきい値よりも高い、請求項2に記載のエンジンの制御装置。前記始動条件が満たされたときに前記エンジン100の回転速度が零より大きく、かつ予め定められた回転速度以下であると、前記第2のモードで前記アクチュエータ232および前記モータ220が駆動され、前記制御ユニット300は、前記第1のモードおよび前記第2のモードに加えて、前記始動条件が満たされたときに前記エンジン100の回転速度が零であると、前記モータ220の駆動に先立って前記アクチュエータ232によって、前記第2のギヤ260を前記第1のギヤ110と係合させる第3のモードとを含み、前記しきい値は、前記第1のモードにおいて用いられるしきい値と、前記第3のモードにおいて用いられるしきい値とを含み、前記第1のモードにおいて用いられるしきい値は、前記第3のモードにおいて用いられるしきい値よりも高い、請求項2に記載のエンジンの制御装置。予め定められた停止条件が満たされたときに停止し、停止した後、予め定められた始動条件が満たされたときにモータ220によってクランキングされるエンジンの制御方法であって、予め定められた始動条件が満たされたときに前記モータ220を駆動して前記エンジン100をクランキングしている間に、前記モータ220に電力を供給するバッテリ120の電圧がしきい値を下回った後は、前記エンジンの100の停止を制限するステップを備え、前記しきい値は、前記モータ220を駆動するときの前記エンジン100の回転速度が高いほど高い、エンジンの制御方法。前記エンジンには、クランク軸111に連結された第1のギヤ110と係合可能な第2のギヤ260と、駆動状態において、前記第2のギヤ260を前記第1のギヤ110と係合する位置まで移動させるアクチュエータ232とを含むスタータ200が設けられ、前記モータ220は、前記第2のギヤ260を回転させ、前記第2のモードで前記アクチュエータ232および前記モータ220が駆動されるときの前記エンジン100の回転速度よりも高い回転速度において、前記第1のモードで前記アクチュエータ232および前記モータ220が駆動される、請求項7に記載のエンジンの制御方法。前記しきい値は、前記第1のモードにおいて用いられるしきい値と、前記第2のモードにおいて用いられるしきい値とを含み、前記第1のモードにおいて用いられるしきい値は、前記第2のモードにおいて用いられるしきい値よりも高い、請求項8に記載のエンジンの制御方法。前記第2のモードで前記アクチュエータ232および前記モータ220を駆動するステップは、前記始動条件が満たされたときに前記エンジン100の回転速度が零より大きく、かつ予め定められた回転速度以下であると、前記第2のモードで前記アクチュエータ232および前記モータ220を駆動するステップを含み、前記制御方法は、前記始動条件が満たされたときに前記エンジン100の回転速度が零であると、前記モータ220の駆動に先立って前記アクチュエータ232によって、前記第2のギヤ260を前記第1のギヤ110と係合させる第3のモードで前記アクチュエータ232および前記モータ220を駆動するステップをさらに備え、前記しきい値は、前記第1のモードにおいて用いられるしきい値と、前記第2のモードにおいて用いられるしきい値と、前記第3のモードにおいて用いられるしきい値とを含み、前記第1のモードにおいて用いられるしきい値は、前記第2のモードにおいて用いられるしきい値よりも高く、前記第2のモードにおいて用いられるしきい値は、前記第3のモードにおいて用いられるしきい値よりも高い、請求項8に記載のエンジンの制御方法。前記第2のモードで前記アクチュエータ232および前記モータ220を駆動するステップは、前記始動条件が満たされたときに前記エンジン100の回転速度が零より大きく、かつ予め定められた回転速度以下であると、前記第2のモードで前記アクチュエータ232および前記モータ220を駆動するステップを含み、前記制御方法は、前記始動条件が満たされたときに前記エンジン100の回転速度が零であると、前記モータ220の駆動に先立って前記アクチュエータ232によって、前記第2のギヤ260を前記第1のギヤ110と係合させる第3のモードで前記アクチュエータ232および前記モータ220を駆動するステップをさらに備え、前記しきい値は、前記第2のモードにおいて用いられるしきい値と、前記第3のモードにおいて用いられるしきい値とを含み、前記第2のモードにおいて用いられるしきい値は、前記第3のモードにおいて用いられるしきい値よりも高い、請求項8に記載のエンジンの制御方法。前記第2のモードで前記アクチュエータ232および前記モータ220を駆動するステップは、前記始動条件が満たされたときに前記エンジン100の回転速度が零より大きく、かつ予め定められた回転速度以下であると、前記第2のモードで前記アクチュエータ232および前記モータ220を駆動するステップを含み、前記制御方法は、前記始動条件が満たされたときに前記エンジン100の回転速度が零であると、前記モータ220の駆動に先立って前記アクチュエータ232によって、前記第2のギヤ260を前記第1のギヤ110と係合させる第3のモードで前記アクチュエータ232および前記モータ220を駆動するステップをさらに備え、前記しきい値は、前記第1のモードにおいて用いられるしきい値と、前記第3のモードにおいて用いられるしきい値とを含み、前記第1のモードにおいて用いられるしきい値は、前記第3のモードにおいて用いられるしきい値よりも高い、請求項8に記載のエンジンの制御方法。予め定められた停止条件が満たされたときに停止し、停止した後、予め定められた始動条件が満たされたときにモータ220によってクランキングされるエンジン100と、前記モータ220を駆動して前記エンジン100をクランキングしている間に、前記モータ220に電力を供給するバッテリ120の電圧がしきい値を下回った後は、前記エンジンの100の停止を制限する制御ユニット300を備え、前記しきい値は、前記モータ220を駆動するときの前記エンジン100の回転速度が高いほど高い、車両。エンジンの回転速度が零になる前にエンジンを再始動する場合には、エンジンの回転速度が零になってからエンジンを再始動する場合に比べて、スタータの負荷が小さい。そのため、エンジンの回転速度が零になる前にエンジンを再始動する場合には、エンジンの回転速度が零になってからエンジンを再始動する場合に比べて、バッテリの電圧の低下量が小さい。よって、バッテリの電圧が不十分であっても、エンジンを再始動するときのバッテリの最低電圧が閾値電圧以上になり得る。したがって、アイドリングストップを制限すべき状況において、アイドリングストップを実行し得る。本発明の目的は、バッテリの電圧が不十分である場合には、エンジンの停止を制限することである。ある実施例において、予め定められた停止条件が満たされたときにエンジンを停止し、停止した後、予め定められた始動条件が満たされたときにモータによってクランキングされるエンジンの制御装置は、モータを駆動してエンジンをクランキングしている間に、モータに電力を供給するバッテリの電圧がしきい値を下回った後は、エンジンの停止を制限する制御ユニットを備える。しきい値は、モータを駆動するときのエンジンの回転速度が高いほど高い。この実施例によると、エンジンの停止を制限するためのしきい値は、モータを駆動するときのエンジンの回転速度が高いほど高い。したがって、エンジンの回転速度が高い状態でモータを駆動したときの電圧の低下量が、エンジンの回転速度が低い状態でモータを駆動したときの電圧の低下量より小さくても、バッテリの電圧が不十分であれば、バッテリの電圧がしきい値を下回り得る。よって、以後、エンジンの停止が制限される。別の実施例において、エンジンには、クランク軸に連結された第1のギヤと係合可能な第2のギヤと、駆動状態において、第2のギヤを第1のギヤと係合する位置まで移動させるアクチュエータとを含むスタータが設けられる。モータは、第2のギヤを回転させる。制御ユニットは、アクチュエータの駆動に先立ってモータを駆動させる第1のモードと、モータの駆動に先立ってアクチュエータによって、第2のギヤを第1のギヤと係合させる第2のモードとを含む。第2のモードでアクチュエータおよびモータが駆動されるときのエンジンの回転速度よりも高い回転速度において、第1のモードでアクチュエータおよびモータが駆動される。この実施例によると、エンジンの回転速度が高い場合には、第1のギヤと第2のギヤとの係合に先立って、モータが駆動される。これにより、第1のギヤと第2のギヤとの回転数差を小さくしてから、第1のギヤと第2のギヤとが係合される。よって、第1のギヤと第2のギヤとが円滑に係合される。そのため、エンジンの回転速度が高い状態であっても、エンジンを始動するためにクランキングを開始できる。このようなエンジンにおいて、エンジンの停止を制限するためのしきい値は、モータを駆動するときのエンジンの回転速度が高いほど高い。したがって、第1のモードでエンジンをクランキングしたときの電圧の低下量が、第2のモードでエンジンをクランキングしたときの電圧の低下量より小さくても、バッテリの電圧が不十分であれば、第1のモードでエンジンをクランキングしている間に、バッテリの電圧がしきい値を下回り得る。よって、以後、エンジンの停止が制限される。さらに別の実施例において、しきい値は、第1のモードにおいて用いられるしきい値と、第2のモードにおいて用いられるしきい値とを含む。第1のモードにおいて用いられるしきい値は、第2のモードにおいて用いられるしきい値よりも高い。さらに別の実施例において、始動条件が満たされたときにエンジンの回転速度が零より大きく、かつ予め定められた回転速度以下であると、第2のモードでアクチュエータおよびモータが駆動される。制御ユニットは、第1のモードおよび第2のモードに加えて、始動条件が満たされたときにエンジンの回転速度が零であると、モータの駆動に先立ってアクチュエータによって、第2のギヤを第1のギヤと係合させる第3のモードを含む。しきい値は、第1のモードにおいて用いられるしきい値と、第2のモードにおいて用いられるしきい値と、第3のモードにおいて用いられるしきい値とを含む。第1のモードにおいて用いられるしきい値は、第2のモードにおいて用いられるしきい値よりも高い。第2のモードにおいて用いられるしきい値は、第3のモードにおいて用いられるしきい値よりも高い。さらに別の実施例において、始動条件が満たされたときにエンジンの回転速度が零より大きく、かつ予め定められた回転速度以下であると、第2のモードでアクチュエータおよびモータが駆動される。制御ユニットは、第1のモードおよび第2のモードに加えて、始動条件が満たされたときにエンジンの回転速度が零であると、モータの駆動に先立ってアクチュエータによって、第2のギヤを第1のギヤと係合させる第3のモードを含む。しきい値は、第2のモードにおいて用いられるしきい値と、第3のモードにおいて用いられるしきい値とを含む。第2のモードにおいて用いられるしきい値は、第3のモードにおいて用いられるしきい値よりも高い。さらに別の実施例において、始動条件が満たされたときにエンジンの回転速度が零より大きく、かつ予め定められた回転速度以下であると、第2のモードでアクチュエータおよびモータが駆動される。制御ユニットは、第1のモードおよび第2のモードに加えて、始動条件が満たされたときにエンジンの回転速度が零であると、モータの駆動に先立ってアクチュエータによって、第2のギヤを第1のギヤと係合させる第3のモードを含む。しきい値は、第1のモードにおいて用いられるしきい値と、第3のモードにおいて用いられるしきい値とを含む。第1のモードにおいて用いられるしきい値は、第3のモードにおいて用いられるしきい値よりも高い。これらの実施例によると、制御モード毎に、エンジンの停止を制限するためのしきい値が定められる。したがって、たとえばアクチュエータまたはモータの動作遅れ等に起因して、クランキングを開始するまでの間にエンジンの回転速度が低下しても、各制御モードに対して適切に定められたしきい値を用いて、エンジンの停止を制限するか否かが判定される。たとえば、第1のモードでアクチュエータおよびモータを駆動するときに、クランキングを開始するまでの間にエンジンの回転速度が低下しても、第2のモードに対して定められた、比較的低いしきい値は用いられない。よって、第1のモードでエンジンをクランキングしたときの電圧の低下量が小さくても、バッテリの電圧が不十分であれば、第1のモードでエンジンをクランキングしている間に、バッテリの電圧がしきい値を下回り得る。同様に、第2のモードでアクチュエータおよびモータを駆動するときに、クランキングを開始するまでの間にエンジンの回転速度が低下しても、第3のモードに対して定められた、比較的低いしきい値は用いられない。よって、第2のモードでエンジンをクランキングしたときの電圧の低下量が小さくても、バッテリの電圧が不十分であれば、第3のモードでエンジンをクランキングしている間に、バッテリの電圧がしきい値を下回り得る。よって、以後、エンジンの停止が制限される。エンジンの停止を制限するためのしきい値は、モータを駆動するときのエンジンの回転速度が高いほど高い。したがって、エンジンの回転速度が高い状態でモータを駆動したときの電圧の低下量が、エンジンの回転速度が低い状態でモータを駆動したときの電圧の低下量より小さくても、バッテリの電圧が不十分であれば、バッテリの電圧がしきい値を下回り得る。よって、以後、停止条件が満たされても、エンジンが継続して運転される。以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰り返さない。第1の実施の形態図1は、車両10の全体ブロック図である。図1を参照して、車両10は、エンジン100と、バッテリ120と、スタータ200と、ECU300と、リレーRY1,RY2とを備える。また、スタータ200は、プランジャ210と、モータ220と、ソレノイド230と、連結部240と、出力部材250と、ピニオンギヤ260とを含む。エンジン100は、車両10を走行するための駆動力を発生する。エンジン100のクランク軸111は、クラッチや減速機などを含んで構成される動力伝達装置を介して、駆動輪に接続される。エンジン100には、回転速度センサ115が設けられる。回転速度センサ115は、エンジン100の回転速度Neを検出し、その検出結果をECU300へ出力する。バッテリ120は、充放電可能に構成された電力貯蔵要素である。バッテリ120は、リチウムイオン電池、ニッケル水素電池または鉛蓄電などの二次電池を含んで構成される。また、バッテリ120は、電気二重層キャパシタなどの蓄電素子により構成されてもよい。バッテリ120は、ECU300によって制御されるリレーRY1,RY2を介して、スタータ200に接続される。そして、バッテリ120は、リレーRY1,RY2が閉成されることによって、スタータ200に駆動用の電源電圧を供給する。なお、バッテリ120の負極は車両10のボディアースに接続される。バッテリ120には、電圧センサ125が設けられる。電圧センサ125は、バッテリ120の出力電圧VBを検出し、その検出値をECU300へ出力する。バッテリ120の電圧は、DC/DCコンバータ127を介して、ECU300、および空調装置のインバータなどの補機に供給される。リレーRY1の一方端はバッテリ120の正極に接続され、リレーRY1の他方端はスタータ200内のソレノイド230の一方端に接続される。リレーRY1は、ECU300からの制御信号SE1により制御され、バッテリ120からソレノイド230への電源電圧の供給と遮断とを切替える。リレーRY2の一方端はバッテリ120の正極に接続され、リレーRY2の他方端はスタータ200内のモータ220に接続される。リレーRY2は、ECU300からの制御信号SE2により制御され、バッテリ120からモータ220へ電源電圧の供給と遮断とを切替える。また、リレーRY2とモータ220とを結ぶ電力線には、電圧センサ130が設けられる。電圧センサ130は、モータ電圧VMを検出して、その検出値をECU300へ出力する。上述のように、スタータ200内のモータ220およびソレノイド230への電源電圧の供給は、リレーRY1,RY2によってそれぞれ独立に制御することが可能である。出力部材250は、モータ内部のロータ図示せずの回転軸と、たとえば直線スプラインなどで結合される。また、出力部材250のモータ220とは反対側の端部には、ピニオンギヤ260が設けられる。リレーRY2が閉成されることによって、バッテリ120から電源電圧が供給されてモータ220が回転すると、出力部材250は、ロータの回転動作をピニオンギヤ260に伝達して、ピニオンギヤ260を回転させる。ソレノイド230の一方端は上述のようにリレーRY1に接続され、ソレノイド230の他方端はボディアースに接続される。リレーRY1が閉成されソレノイド230が励磁されると、ソレノイド230はプランジャ210を矢印の方向に吸引する。すなわち、プランジャ210とソレノイド230とで、アクチュエータ232を構成する。プランジャ210は、連結部240を介して出力部材250と結合される。ソレノイド230が励磁されてプランジャ210が矢印の方向に吸引される。これにより、支点245が固定された連結部240によって、出力部材250が、図1に示された待機位置から、プランジャ210の動作方向とは逆の方向、すなわちピニオンギヤ260がモータ220の本体から遠ざかる方向に動かされる。また、プランジャ210は、図示しないばね機構によって、図1中の矢印とは逆向きの力が付勢されており、ソレノイド230が非励磁となると、待機位置に戻される。このように、ソレノイド230が励磁されることによって、出力部材250が軸方向に動作すると、ピニオンギヤ260が、エンジン100のクランク軸111に取付けられたフライホイールまたはドライブプレートの外周に設けられたリングギヤ110と係合する。そして、ピニオンギヤ260とリングギヤ110とが係合した状態で、ピニオンギヤ260が回転動作することによって、エンジン100がクランキングされ、エンジン100が始動される。このように、本実施の形態においては、エンジン100のフライホイールまたはドライブプレートの外周に設けられたリングギヤ110と係合するようにピニオンギヤ260を移動させるアクチュエータ232と、ピニオンギヤ260を回転させるモータ220とが個別に制御される。なお、図1には図示しないが、リングギヤ110の回転動作によって、モータ220のロータが回転されないように、出力部材250とモータ220のロータ軸の間にワンウェイクラッチが設けられてもよい。また、図1におけるアクチュエータ232は、ピニオンギヤ260の回転をリングギヤ110に伝達でき、かつピニオンギヤ260およびリングギヤ110が係合した状態と、両方が非係合の状態とを切替えることができる機構であれば、上記のような機構に限られるものではなく、たとえば、出力部材250の軸を、ピニオンギヤ260の径方向に動かすことによってピニオンギヤ260とリングギヤ110とが係合するような機構であってもよい。ECU300は、いずれも図示しないが、CPUCentralProcessingUnitと、記憶装置と、入出力バッファとを含み、各センサの入力や各機器への制御指令の出力を行なう。なお、これらの制御については、ソフトウェアによる処理に限られず、一部を専用のハードウェア電子回路で構築して処理することも可能である。ECU300は、アクセルペダル140に設けられたセンサ図示せずからのアクセルペダル140の操作量を表わす信号ACCを受ける。ECU300は、ブレーキペダル150に設けられたセンサ図示せずからのブレーキペダル150の操作量を表わす信号BRKを受ける。また、ECU300は、運転者によるイグニッション操作などによる始動操作信号IG-ONを受ける。ECU300は、これらの情報に基づいて、エンジン100の始動要求信号および停止要求信号を生成し、それに従って制御信号SE1,SE2を出力してスタータ200の動作を制御する。たとえば、車両が停止し、運転者によりブレーキペダル150が操作され、かつエンジン100の停止が制限されていない許可されているという停止条件が満たされたとき、停止要求信号が生成され、ECU300は、エンジン100を停止する。すなわち、停止条件が満たされたとき、エンジン100における燃料噴射および燃焼が停止される。その後、運転者によるブレーキペダル150の操作量が零になったという始動条件が満たされたとき、始動要求信号が生成され、ECU300は、モータ220を駆動してエンジン100をクランキングする。その他、アクセルペダル140、変速レンジまたはギヤを選択するためのシフトレバー、もしくは、車両の走行モードたとえば、パワーモードまたはエコモード等を選択するためのスイッチが操作されると、エンジン100をクランキングするようにしてもよい。ECU300は、エンジン100の始動条件が満たされたとき、ピニオンギヤ260がリングギヤ110に向かって移動した後、ピニオンギヤ260が回転を開始するようにアクチュエータ232およびモータ220が制御される第1のモードと、ピニオンギヤ260が回転を開始した後、ピニオンギヤ260がリングギヤ110に向かって移動するようにアクチュエータ232およびモータ220が制御される第2のモードとのうちのいずれか一方のモードで、アクチュエータ232およびモータ220を制御する。後述するように、ECU300は、エンジン回転速度Neが予め定められた第1の基準値α1以下であると、第1のモードでアクチュエータ232およびモータ220を制御する。ECU300は、エンジン回転速度Neが第1の基準値α1より大きいと、第2のモードでアクチュエータ232およびモータ220を制御する。図2は、本実施の形態におけるスタータ200の動作モードの遷移を説明するための図である。本実施の形態におけるスタータ200の動作モードには、待機モード410、係合モード420、回転モード430、および全駆動モード440が含まれる。前述した第1のモードは、係合モード420を経て、全駆動モード440に移行するモードである。第2のモードは、回転モード430を経て、全駆動モード440に移行するモードである。待機モード410は、スタータ200のアクチュエータ232およびモータ220の両方が駆動されていない状態、すなわちスタータ200へのエンジン始動要求が出力されていない状態を表わす。待機モード410は、スタータ200の初期状態に相当し、エンジン100の始動動作前、エンジン100が始動完了した後、およびエンジン100の始動が失敗したときなどにおいて、スタータ200の駆動が不要となった場合に選択される。全駆動モード440は、スタータ200のアクチュエータ232およびモータ220の両方が駆動されている状態を表わす。この全駆動モード440においては、ピニオンギヤ260とリングギヤ110が係合した状態で、モータ220によってピニオンギヤ260が回転される。これによって、実際にエンジン100がクランキングされて始動動作が開始される。本実施の形態におけるスタータ200は、上述のように、アクチュエータ232およびモータ220の各々を、独立して駆動することができる。そのため、待機モード410から全駆動モード440に遷移する過程において、モータ220の駆動に先立ってアクチュエータ232を駆動する場合すなわち、係合モード420に相当と、アクチュエータ232の駆動に先立ってモータ220を駆動する場合すなわち、回転モード430に相当とがある。この係合モード420および回転モード430の選択は、基本的には、エンジン100の再始動要求が発生したときの、エンジン100の回転速度Neに基づいて行なわれる。係合モード420は、アクチュエータ232のみが駆動され、モータ220が駆動されていない状態である。このモードは、ピニオンギヤ260が停止した状態においても、ピニオンギヤ260とリングギヤ110とが係合可能である場合に選択される。具体的には、エンジン100が停止している状態、あるいはエンジン100の回転速度Neが十分に低下した状態Ne≦第1の基準値α1の場合に、この係合モード420が選択される。一方、回転モード430は、モータ220のみが駆動され、アクチュエータ232が駆動されていない状態である。このモードは、たとえば、エンジン100の停止要求直後に、エンジン100の再始動要求が出力されたような場合に、エンジン100の回転速度Neが相対的に高いときα1<Ne≦第2の基準値α2に選択される。このように、エンジン100の回転速度Neが高いときには、ピニオンギヤ260を停止したままの状態では、ピニオンギヤ260とリングギヤ110との間の速度差が大きく、ピニオンギヤ260とリングギヤ110との係合が困難となる可能性がある。そのため、回転モード430においては、アクチュエータ232の駆動に先立ってモータ220のみが駆動され、リングギヤ110の回転速度とピニオンギヤ260の回転速度とを同期させる。そして、リングギヤ110の回転速度とピニオンギヤ260の回転速度との差が十分に小さくなったことに応じてアクチュエータ232が駆動され、リングギヤ110とピニオンギヤ260との係合が行なわれる。そして、動作モードが回転モード430から全駆動モード440へ遷移する。全駆動モード440の場合に、エンジン100の始動が完了し、エンジン100が自立運転を開始したことに応じて、運転モードは全駆動モード440から待機モード410へ戻される。このように、エンジン100の始動要求信号が出力された場合、すなわち、エンジン100を始動すると判定された場合、係合モード420を経て、全駆動モード440に移行する第1のモードと、回転モード430を経て、全駆動モード440に移行する第2のモードとのうちのいずれか一方のモードで、アクチュエータ232およびモータ220が制御される。図3は、本実施の形態において、エンジン始動動作時の2つの駆動モード第1のモード,第2のモードを説明するための図である。図3の横軸には時間が示され、縦軸には、エンジン100の回転速度Ne、第1のモード時および第2のモード時における、アクチュエータ232およびモータ220の駆動状態が示される。時刻t0において、たとえば車両が停止し、かつ運転者によりブレーキペダル150が操作されているという停止条件が満たされたことによってエンジン100の停止要求が生成され、エンジン100が停止燃料噴射および点火が停止された場合を考える。この場合に、エンジン100が再始動されなければ、実線の曲線W0のように、徐々にエンジン100の回転速度Neが低下し、最終的にエンジン100の回転が停止する。次に、エンジン100の回転速度Neの低下中に、たとえば、運転者によるブレーキペダル150の操作量が零になったという始動条件が満たされたことによってエンジン100の再始動要求が生成された場合について考える。この場合には、エンジン100の回転速度Neによって3つの領域に分類される。第1の領域領域1は、エンジン100の回転速度Neが第2の基準値α2よりも高い場合であり、たとえば、図3中の点P0において始動条件が満たされ、再始動要求が生成されたような状態である。この領域1は、エンジン100の回転速度Neが十分に高いので、燃料噴射および点火動作によって、スタータ200を用いなくともエンジン100が始動可能な領域である。すなわち、エンジン100が自立復帰可能な領域である。したがって、領域1においては、スタータ200の駆動が制限、より具体的には禁止される。なお、上述の第2の基準値α2については、モータ220の最高回転速度によって制限される場合もある。第2の領域は領域2は、エンジン100の回転速度Neが第1の基準値α1および第2の基準値α2の間にある場合であり、図3中の点P1において始動条件が満たされ、再始動要求が生成されたような状態である。この領域2は、エンジン100は自立復帰できないが、エンジン100の回転速度Neが比較的高い状態の領域である。この領域においては、図2で説明したように、回転モードが選択される。時刻t2において、エンジン100の再始動要求が生成されると、所定時間経過後に、まずモータ220が駆動される。これによって、ピニオンギヤ260が回転し始める。そして、時刻t4において、アクチュエータ232が駆動される。そして、リングギヤ110とピニオンギヤ260とが係合されると、エンジン100がクランキングされて、破線の曲線W1のようにエンジン100の回転速度Neが増加する。その後、エンジン100が自立運転を再開すると、アクチュエータ232およびモータ220の駆動が停止される。第3の領域領域3は、エンジン100の回転速度Neが第1の基準値α1よりも低い場合であり、たとえば、図3中の点P2において始動条件が満たされ、再始動要求が生成されたような状態である。この領域3は、エンジン100の回転速度Neが低く、ピニオンギヤ260を同期させなくても、ピニオンギヤ260とリングギヤ110との係合が可能な領域である。この領域においては、図2で説明したように、係合モードが選択される。時刻t5において、エンジン100の再始動要求が生成されると、所定時間経過後に、まずアクチュエータ232が駆動される。これによって、ピニオンギヤ260がリングギヤ110側に押し出される。その後、モータ220が駆動される図3中の時刻t7。これによってエンジン100がクランキングされて破線の曲線W2のように、エンジン100の回転速度Neが増加する。その後、エンジン100が自立運転を再開すると、アクチュエータ232およびモータ220の駆動が停止される。このように、アクチュエータ232とモータ220とが独立して駆動可能なスタータ200を用いて、エンジン100の再始動制御を行なうことによって、従来のスタータでは、エンジン100の自立復帰が不可能となる回転速度図3中の時刻t1から、エンジン100が停止するまで図3中の時刻t8の期間Tinh中エンジン100の再始動動作が禁止されていた場合に比べて、より短時間でエンジン100を再始動することが可能となる。これによって、運転者に対して、エンジン再始動が遅れてしまうことによる違和感を低減することができる。図4に示すように、エンジン100を再始動する際には、モータ200を駆動することにより、モータ220に電力を供給するバッテリ120の電圧が一時的に低下し得る。バッテリ120はモータ220の他、補機類にも電力を供給しているため、バッテリ120の電圧の低下は望ましくない。そこで、本実施の形態においては、モータ220を駆動している間にバッテリ120の電圧がしきい値VSを下回ると、以後、エンジン100の停止が制限される。より具体的には、エンジン100の自動停止、すなわちアイドリングストップまたはエコノミーランニングが禁止される。エンジン100を自動停止する頻度を少なくするようにしてもよい。たとえば、モータ220を駆動している間のバッテリ120の電圧の最低値がしきい値VS以下であると、バッテリ120の電圧がしきい値VSを下回ったと判定される。アイドリングストップまたはエコノミーランニングは、次にIG-OFF信号が受信されるまで制限されてもよく、バッテリ120が交換されることによってECU300のメモリがリセットされるまで制限されてもよい。バッテリ120の電圧の低下量は、モータ220を駆動するときのエンジン回転速度Neに応じて変化する。モータ220を駆動するときのエンジン回転速度Neが高いほど、モータ220の負荷が小さくなり得るため、図5において破線で示すように、モータ220を駆動するときのエンジン回転速度Neが高いほど、電圧の低下量が小さくなり得る。このような事項を考慮し、本実施の形態においては、モータ220を駆動するときのエンジン回転速度Neに応じて、異なるしきい値VSが用いられる。すなわち、第1のモードでアクチュエータ232およびモータ220が制御される場合、エンジン回転速度Neが零になる前に第2のモードでアクチュエータ232およびモータ220が制御される場合、エンジン回転速度Neが零になってから第2のモードでアクチュエータ232およびモータ220が制御される場合のそれぞれの場合において、別々のしきい値VSが用いられる。第1のモードでアクチュエータ232およびモータ220が制御される場合には、第1しきい値VS1が用いられる。エンジン回転速度Neが零になる前に第2のモードでアクチュエータ232およびモータ220が制御される場合には、第2しきい値VS2が用いられる。エンジン回転速度Neが零になってから第2のモードでアクチュエータ232およびモータ220が制御される場合には、第3しきい値VS3が用いられる。第1しきい値VS1は、第2しきい値VS2よりも高い。第2しきい値VS2は、第3しきい値VS3よりも高い。第1しきい値VS1、第2しきい値VS2および第3しきい値VS3は、実験およびシミュレーションの結果などに基いて開発者により予め定められる。以下、図6および図7を参照して、エンジン100を停止および始動するためにECU300が実行する処理について説明する。図6および図7に示すフローチャートは、ECU300に予め格納されたプログラムを所定周期で実行することによって実現される。あるいは、一部のステップについては、専用のハードウェア電子回路を構築して処理を実現することも可能である。ステップ以下、ステップをSと略す。100において、ECU300は、エンジン100が運転しているか否か判定する。エンジン100が運転しているとS100にてYES、S102において、ECU300は、エンジン100の停止条件が満たされた否かを判定する。すなわち、エンジン100を停止するか否かが判定される。たとえばエンジン100の停止が制限されているため、エンジン100の停止条件が満たされていないとS102にてNO、エンジン100の運転が継続される。この場合、処理がS290に進められて、ECU300は、スタータ200の動作モードとして待機モードを選択する。エンジン100の停止が制限されていないために、エンジン100の停止条件が満たされるとS102にてYES、ECU300は、S106にて、エンジン100を停止する。したがって、エンジン100において燃料噴射および燃焼が停止される。その後、S200において、ECU300は、エンジン100の始動条件が満たされた否かを判定する。すなわち、エンジン100を始動するか否かが判定される。エンジン100の始動条件が満たされていない場合S200にてNOは、エンジン100の始動動作は不要であるので、処理がS290に進められて、ECU300は、スタータ200の動作モードとして待機モードを選択する。エンジン100の始動条件が満たされた場合S200にてYESは、処理がS210に進められ、ECU300は、次にエンジン100の回転速度Neが第2の基準値α2以下であるか否かを判定する。エンジン100の回転速度Neが第2の基準値α2より大きい場合S210にてNO、エンジン回転速度Neは、エンジン100の自立復帰が可能な図3における領域1に対応するので、ECU300は、処理をS212に進めて待機モードを選択する。その後、ECU300は、S214にて、エンジン100を再始動すべく、燃料噴射および燃焼を再開する。エンジン100の回転速度Neが第2の基準値α2以下の場合S210にてYESは、ECU300は、S216にて、エンジン100の回転速度Neが零であるか否かを判定する。エンジン100の回転速度Neが零である場合S216にてYES、S218にて、ECU300は、第1しきい値VS1、第2しきい値VS2および第3しきい値VS3のうち、もっとも低い第3しきい値VS3を、バッテリ120の電圧と比較されるしきい値VSとして選択する。さらに、エンジン100の回転速度Neが零である場合S220にてYESは、エンジン回転速度Neが図3における領域3に含まれるので、処理がS245に進められ、ECU300は、スタータ200の動作モードとして係合モードを選択する。そして、ECU300は、制御信号SE1を出力してリレーRY1を閉成することによってアクチュエータ232を駆動する。このとき、モータ220は駆動されない。その後、S270に処理が進められ、ECU300は、スタータ200の動作モードとして全駆動モードを選択する。そして、エンジン100をクランキングすべく、モータ220が駆動される。モータ220を駆動している間にバッテリ120の電圧がしきい値VSを下回るとS272にてYES、S274にて、ECU300は、エンジン100の停止を制限する。エンジン100の回転速度Neが零である場合には、モータ220を駆動している間にバッテリ120の電圧が第3しきい値VS3を下回ると、エンジン100の停止が制限される。エンジン100の停止が制限されると、以後、停止条件が満たされない。したがって、エンジン100の自動停止、すなわちアイドリングストップまたはエコノミーランニングが制限され、エンジン100が継続して運転される。モータ220を駆動している間にバッテリ120の電圧がしきい値VSを下回らなければS272にてNO、S276にて、ECU300は、エンジン100の停止を許可する。次に、ECU300は、S280にて、エンジン100の始動が完了したか否かを判定する。エンジン100の始動完了の判定については、たとえば、モータ220の駆動開始から所定時間が経過した後に、エンジン回転速度が、自立運転を示すしきい値γより大きいか否かによって判定するようにしてもよい。エンジン100の始動が完了していない場合S280にてNOは、S270に処理が戻され、エンジン100のクランキングが継続される。エンジン100の始動が完了した場合S280にてYESは、S290に処理が進められて、ECU300は、スタータ200の動作モードとして待機モードを選択する。エンジン100の回転速度Neが零より大きい場合S216にてNOは、ECU300は、エンジン100の回転速度Neが第1の基準値α10<α1以下であるか否かを判定する。エンジン100の回転速度Neが第1の基準値α1以下の場合S220にてYES、S222にて、ECU300は、第1しきい値VS1、第2しきい値VS2および第3しきい値VS3のうち、第2しきい値VS2を、バッテリ120の電圧と比較されるしきい値VSとして選択する。エンジン100の回転速度Neが第1の基準値α1以下の場合S220にてYESは、エンジン回転速度Neは、図3における領域3に対応するので、処理がS245に進められ、ECU300は、スタータ200の動作モードとして係合モードを選択する。そして、ECU300は、制御信号SE1を出力してリレーRY1を閉成することによってアクチュエータ232を駆動する。このとき、モータ220は駆動されない。その後、S270に処理が進められ、ECU300は、スタータ200の動作モードとして全駆動モードを選択する。そして、スタータ200によって、エンジン100のクランキングが開始される。モータ220を駆動している間にバッテリ120の電圧がしきい値VSを下回るとS272にてYES、S274にて、ECU300は、エンジン100の停止を制限する。エンジン100の回転速度Neが零より大きく、かつ第1の基準値α1以下である場合には、モータ220を駆動している間にバッテリ120の電圧が第2しきい値VS2を下回ると、エンジン100の停止が制限される。エンジン100の始動が完了していない場合S280にてNOは、S270に処理が戻され、エンジン100のクランキングが継続される。エンジン100の始動が完了した場合S280にてYESは、S290に処理が進められて、ECU300は、スタータ200の動作モードとして待機モードを選択する。エンジン100の回転速度Neが第1の基準値α1より大きい場合S220にてNO、S224にて、ECU300は、第1しきい値VS1、第2しきい値VS2および第3しきい値VS3のうち、最も高い第1しきい値VS1を、バッテリ120の電圧と比較されるしきい値VSとして選択する。さらに、エンジン100の回転速度Neが第1の基準値α1より大きい場合S220にてNOは、S240にて、ECU300は、スタータ200の動作モードとして回転モードを選択する。そして、ECU300は、制御信号SE2を出力してリレーRY2を閉成することによってモータ220を駆動する。このとき、アクチュエータ232は駆動されない。そして、ECU300は、S270にて、スタータ200の動作モードとして全駆動モードを選択する。これによって、アクチュエータ232が駆動されて、ピニオンギヤ260とリングギヤ110が係合し、エンジン100がクランキングされる。モータ220を駆動している間にバッテリ120の電圧がしきい値VSを下回るとS272にてYES、S274にて、ECU300は、エンジン100の停止を制限する。エンジン100の回転速度Neが第1の基準値α1より大きい場合には、モータ220を駆動している間にバッテリ120の電圧が第1しきい値VS1を下回ると、エンジン100の停止が制限される。エンジン100の始動が完了していない場合S280にてNOは、S270に処理が戻され、エンジン100のクランキングが継続される。エンジン100の始動が完了した場合S280にてYESは、S290に処理が進められて、ECU300は、スタータ200の動作モードとして待機モードを選択する。以上のように、本実施の形態においては、予め定められた停止条件が満たされたときにエンジン100が停止される。予め定められた始動条件が満たされたときにスタータ200のモータ220を駆動してエンジン100がクランキングされる。モータ220を駆動している間に、モータ220に電力を供給するバッテリ120の電圧がしきい値VSを下回ると、以後、エンジン100の停止が制限される。しきい値は、モータ220を駆動するときのエンジン回転速度Neが高いほど高い。したがって、エンジン回転速度Neが高い状態でモータ220を駆動したときの電圧の低下量が、エンジン回転速度Neが低い状態でモータ220を駆動したときの電圧の低下量より小さくても、バッテリ120の電圧が不十分であれば、バッテリ120の電圧がしきい値VSを下回り得る。よって、以後、停止条件が満たされても、エンジン100が継続して運転される。第2の実施の形態以下、図8を参照して、第2の実施の形態について説明する。本実施の形態におけるスタータ202は、第1の実施の形態におけるスタータ200と比較して、ピニオンギヤ260が常時リングギヤ110と係合している点で相違する。本実施の形態におけるスタータ202は、アクチュエータの代わりに、ワンウェイクラッチ270を有する。ワンウェイクラッチ270は、出力部材250上に設けられる。ワンウェイクラッチ270は、エンジン回転速度Neがモータ220の回転速度よりも大きくなることを許容する。その他のエンジン100の構成は同じである。したがって、ここではそれらの詳細な説明は繰り返さない。以下、図9および図10を参照して、本実施の形態においてエンジン100を停止および始動するためにECU300が実行する処理について説明する。図9および図10に示すフローチャートは、ECU300に予め格納されたプログラムを所定周期で実行することによって実現される。あるいは、一部の処理は、専用のハードウェア電子回路を構築して実現することも可能である。前述の第1の実施の形態と同じ処理については、同じ符号を付してある。したがって、ここではそれらの詳細な説明は繰り返さない。エンジン100の回転速度Neが第2の基準値α2以下の場合S210にてYESは、ECU300は、S300にて、バッテリ120の電圧と比較されるしきい値VSを、エンジン回転速度Neに応じて設定する。たとえば、図11に示すように、エンジン回転速度Neが高いほど高くなるようにしきい値VSが設定される。より具体的には、モータ220を駆動している間に電圧が最も低くなるときのエンジン回転速度Neが高いほど高くなるようにしきい値VSが設定される。始動条件が満たされたときのエンジン回転速度Neが高いほど高くなるようにしきい値VSを設定してもよい。モータ220の駆動を開始するときのエンジン回転速度Neが高いほど高くなるようにしきい値VSを設定してもよい。その他、しきい値VSを設定するために用いられるエンジン回転速度Neは、適宜適切な回転速度を用いてもよい。図10を参照して、ECU300は、S302にて、エンジン100をクランキングすべく、モータ220を駆動する。エンジン100の始動が完了した場合S280にてYESは、S304に処理が進められて、ECU300は、モータ220を停止する。このようにしても、第1の実施の形態と同様の効果を奏することができる。その他、オルタネータによりエンジン100をクランキングするようにしてもよい。今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。"