(57)【特許請求の範囲】
【請求項１】
自転車に設けられる回転体の回転速度を反映した信号を出力する第１のセンサの出力と、前記自転車に設けられる回転体の回転速度を反映した信号を出力する第２のセンサの出力とに基づいて、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かを判定する制御部を備える、自転車の制御装置。
【請求項２】
前記自転車には、人力駆動力をアシストするアシストモータが設けられ、
前記制御部は、前記第１のセンサが検出している回転体の回転速度が第１の速度未満のとき、前記アシストモータを駆動可能とし、かつ、前記第１のセンサが検出している回転体の回転速度が前記第１の速度以上のときに前記アシストモータの駆動を停止し、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かの判定結果に基づいて前記アシストモータを制御する、請求項１に記載の自転車の制御装置。
【請求項３】
前記制御部は、前記第１のセンサおよび前記第２のセンサが同一の回転体の状態を検出していると判定したとき、前記アシストモータの駆動を禁止する、請求項２に記載の自転車の制御装置。
【請求項４】
前記制御部は、前記第１のセンサが出力する信号の位相と前記第２のセンサが出力する信号の位相の差、および、前記第１のセンサが出力する信号の周期と前記第２のセンサが出力する信号の周期の差の少なくとも一方に基づいて、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かを判定する、請求項１〜３のいずれか一項に記載の自転車の制御装置。
【請求項５】
前記制御部は、前記位相の差または前記周期の差が、第１の所定の範囲以内となる回数が第１の所定の回数以上になったとき、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしていると判定する、請求項４に記載の自転車の制御装置。
【請求項６】
前記制御部は、前記第１のセンサが検出している回転体の回転速度が減少するときの前記第１のセンサが検出している回転体の速度変化と、前記第２のセンサが検出している回転体の回転速度が減少するときの前記第２のセンサが検出している回転体の速度変化との相違に基づいて、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かを判定する、請求項１〜５のいずれか一項に記載の自転車の制御装置。
【請求項７】
前記制御部は、前記第１のセンサが検出している回転体の回転速度が減少するときの前記第１のセンサが検出している回転体の速度変化と、前記第２のセンサが検出している回転体の回転速度が減少するときの前記第２のセンサが検出している回転体の速度変化との相違が、第２の所定の範囲以内となる回数が第２の所定の回数以上になったとき、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしていると判定する、請求項６に記載の自転車の制御装置。
【請求項８】
前記制御部は、運転者の駆動力が所定値よりも小さいときに、前記第１のセンサの出力と前記第２のセンサの出力とに基づいて、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かを判定する、請求項１〜７のいずれか一項に記載の自転車の制御装置。
【請求項９】
前記制御部は、前記自転車の変速比が「１」以外のときに、前記第１のセンサの出力と、前記第２のセンサの出力とに基づいて、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かを判定する、請求項１〜８のいずれか一項に記載の自転車の制御装置。
【請求項１０】
前記制御部は、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているとの判定に基づいて前記アシストモータの駆動を禁止しているとき、前記第１のセンサの出力と前記第２のセンサの出力とに基づいて前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしていないと判定したとき、前記アシストモータの駆動を許可する、請求項３を引用する請求項４〜９のいずれか一項に記載の自転車の制御装置。
【請求項１１】
前記制御部は、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているとの判定に基づいて前記アシストモータの駆動を禁止しているとき、前記第１のセンサの出力の位相と前記第２のセンサの出力の位相の差、および、前記第１のセンサが出力する信号の周期と前記第２のセンサが出力する信号の周期の差の少なくとも一方が第３の所定の範囲以内とならない回数が、第４の所定の回数以上になったとき、前記アシストモータの駆動を許可する、請求項１０に記載の自転車の制御装置。
【請求項１２】
請求項１〜１１のいずれか一項に記載の自転車の制御装置と、
アシストモータと、
車輪の回転を検出可能な第１のセンサと、
クランクまたはクランク軸の回転を検出可能な第２のセンサと、を備える自転車のアシスト装置。
【請求項１３】
前記第２のセンサは、磁界を検出する素子を含み、前記クランクまたは前記クランク軸に設けられる磁石を検出可能である、請求項１２に記載の自転車のアシスト装置。
【請求項１４】
前記第２のセンサは、前記クランクまたは前記クランク軸の回転角度に応じた信号を出力する、請求項１３に記載の自転車のアシスト装置。
【請求項１５】
前記第２のセンサは、前記クランクに入力される人力駆動力に応じた信号を出力する、請求項１２に記載の自転車のアシスト装置。
【請求項１６】
前記第１のセンサは、磁界を検出する素子を含み、前記車輪に設けられる磁石を検出可能である、請求項１２〜１５のいずれか一項に記載の自転車のアシスト装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自転車の制御装置およびこの制御装置を備える自転車のアシスト装置に関する。
【背景技術】
【０００２】
従来より、自転車に設けられる回転体の回転速度に基づいてアシストモータを制御する自転車の制御装置が知られている。例えば、特許文献１の自転車の制御装置は、車輪の回転速度を検出する車速センサの出力を用いてアシストモータを制御する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２３０４１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
車輪の回転速度に基づいてアシストモータを制御するように構成された自転車の制御装置において、車速センサによってクランクの回転速度を検出するように改造された場合、制御装置が適切な制御を実行できないおそれが生じる。なお、アシストモータを制御する自転車の制御装置について説明したが、回転体の回転速度に基づいて自転車用コンポーネントを制御する制御装置であれば同様の問題が生じ得る。
【０００５】
本発明の目的は、回転体の回転速度を反映した信号を出力するセンサの検出対象の回転体を判定することを可能とした自転車の制御装置およびこの制御装置を備える自転車のアシスト装置を提供することである。
【課題を解決するための手段】
【０００６】
〔１〕本発明の一形態に従う自転車の制御装置は、自転車に設けられる回転体の回転速度を反映した信号を出力する第１のセンサの出力と、前記自転車に設けられる回転体の回転速度を反映した信号を出力する第２のセンサの出力とに基づいて、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かを判定する制御部を備える。
【０００７】
〔２〕前記自転車の制御装置の一形態によれば、前記自転車には、人力駆動力をアシストするアシストモータが設けられ、前記制御部は、前記第１のセンサが検出している回転体の回転速度が第１の速度未満のとき、前記アシストモータを駆動可能とし、かつ、前記第１のセンサが検出している回転体の回転速度が前記第１の速度以上のときに前記アシストモータの駆動を停止し、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かの判定結果に基づいて前記アシストモータを制御する。
【０００８】
〔３〕前記自転車の制御装置の一形態によれば、前記制御部は、前記第１のセンサおよび前記第２のセンサが同一の回転体の状態を検出していると判定したとき、前記アシストモータの駆動を禁止する。
【０００９】
〔４〕前記自転車の制御装置の一形態によれば、前記制御部は、前記第１のセンサが出力する信号の位相と前記第２のセンサが出力する信号の位相の差、および、前記第１のセンサが出力する信号の周期と前記第２のセンサが出力する信号の周期の差の少なくとも一方に基づいて、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かを判定する。
【００１０】
〔５〕前記自転車の制御装置の一形態によれば、前記制御部は、前記位相の差または前記周期の差が、第１の所定の範囲以内となる回数が第１の所定の回数以上になったとき、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしていると判定する。
【００１１】
〔６〕前記自転車の制御装置の一形態によれば、前記制御部は、前記第１のセンサが検出している回転体の回転速度が減少するときの前記第１のセンサが検出している回転体の速度変化と、前記第２のセンサが検出している回転体の回転速度が減少するときの前記第２のセンサが検出している回転体の速度変化との相違に基づいて、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かを判定する。
【００１２】
〔７〕前記自転車の制御装置の一形態によれば、前記制御部は、前記第１のセンサが検出している回転体の回転速度が減少するときの前記第１のセンサが検出している回転体の速度変化と、前記第２のセンサが検出している回転体の回転速度が減少するときの前記第２のセンサが検出している回転体の速度変化との相違が、第２の所定の範囲以内となる回数が第２の所定の回数以上になったとき、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしていると判定する。
【００１３】
〔８〕前記自転車の制御装置の一形態によれば、前記制御部は、運転者の駆動力が所定値よりも小さいときに、前記第１のセンサの出力と前記第２のセンサの出力とに基づいて、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かを判定する。
【００１４】
〔９〕前記自転車の制御装置の一形態によれば、前記制御部は、前記自転車の変速比が「１」以外のときに、前記第１のセンサの出力と、前記第２のセンサの出力とに基づいて、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているか否かを判定する。
【００１５】
〔１０〕前記自転車の制御装置の一形態によれば、前記制御部は、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているとの判定に基づいて前記アシストモータの駆動を禁止しているとき、前記第１のセンサの出力と前記第２のセンサの出力とに基づいて前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしていないと判定したとき、前記アシストモータの駆動を許可する。
【００１６】
〔１１〕前記自転車の制御装置の一形態によれば、前記制御部は、前記第１のセンサおよび前記第２のセンサが同一の回転体を検出対象にしているとの判定に基づいて前記アシストモータの駆動を禁止しているとき、前記第１のセンサの出力の位相と前記第２のセンサの出力の位相の差、および、前記第１のセンサが出力する信号の周期と前記第２のセンサが出力する信号の周期の差の少なくとも一方が第３の所定の範囲以内とならない回数が、第４の所定の回数以上になったとき、前記アシストモータの駆動を許可する。
【００１７】
〔１２〕本発明の一形態に従う自転車のアシスト装置は、上記自転車の制御装置と、アシストモータと、車輪の回転を検出可能な第１のセンサと、クランクまたはクランク軸の回転を検出可能な第２のセンサと、を備える。
【００１８】
〔１３〕前記自転車のアシスト装置の一形態によれば、前記第２のセンサは、磁界を検出する素子を含み、前記クランクまたは前記クランク軸に設けられる磁石を検出可能である。
【００１９】
〔１４〕前記自転車のアシスト装置の一形態によれば、前記第２のセンサは、前記クランクまたは前記クランク軸の回転角度に応じた信号を出力する。
〔１５〕前記自転車のアシスト装置の一形態によれば、前記第２のセンサは、前記クランクに入力される人力駆動力に応じた信号を出力する。
【００２０】
〔１６〕前記自転車のアシスト装置の一形態によれば、前記第１のセンサは、磁界を検出する素子を含み、前記車輪に設けられる磁石を検出可能である。
【発明の効果】
【００２１】
本発明の自転車の制御装置およびこの制御装置を備える自転車のアシスト装置は、回転体の回転速度を反映した信号を出力するセンサの検出対象の回転体を判定することができる。
【図面の簡単な説明】
【００２２】
【図１】第１実施形態の制御装置を備えるアシスト装置を搭載する自転車の側面図。
【図２】図１の自転車に搭載されるアシスト装置のブロック図。
【図３】図２の制御部により実行されるアシストモータの駆動処理のフローチャート。
【図４】図２の制御部により実行される第１の比較処理のフローチャート。
【図５】図２の制御部により実行されるアシストモータの駆動禁止処理のフローチャート。
【図６】図２の制御部により実行される第２の比較処理のフローチャート。
【図７】図２の制御部により実行されるアシストモータの駆動許可処理のフローチャート。
【図８】図５のアシストモータの駆動禁止処理の実行態様の一例を示すタイミングチャート。
【図９】図７のアシストモータの駆動許可処理の実行態様の一例を示すタイミングチャート。
【図１０】第２実施形態の制御装置の制御部により実行される第１の比較処理のフローチャート。
【図１１】第２実施形態の制御装置の制御部により実行されるアシストモータの駆動禁止処理のフローチャート。
【図１２】第３実施形態のアシスト装置のブロック図。
【図１３】第３実施形態のアシスト装置におけるアシストモータの駆動禁止処理の実行態様の一例を示すタイミングチャート。
【図１４】第４実施形態の制御装置の制御部により実行される第１の比較処理のフローチャート。
【図１５】第４実施形態の制御装置の制御部により実行されるアシストモータの駆動禁止処理のフローチャート。
【図１６】第１実施形態の第１の変形例の第１の比較処理のフローチャート。
【図１７】第１実施形態の第１の変形例のアシストモータの駆動禁止処理のフローチャート。
【図１８】第１実施形態の第２の変形例の第１の比較処理のフローチャート。
【図１９】第１実施形態の第２の変形例のアシストモータの駆動禁止処理のフローチャート。
【図２０】第１実施形態の第３の変形例の第１の比較処理のフローチャート。
【図２１】第３実施形態の第１の変形例の第１の比較処理のフローチャート。
【図２２】第３実施形態の第１の変形例のアシストモータの駆動禁止処理のフローチャート。
【発明を実施するための形態】
【００２３】
（第１実施形態）
図１を参照して、自転車のアシスト装置を搭載する自転車の構成について説明する。
自転車１０は、車体１２、バッテリ１４、前輪１６、後輪１８、駆動機構２０、および、アシスト装置４０を備えている。
【００２４】
駆動機構２０は、クランク２２、フロントスプロケット２４、リアスプロケット２６、チェーン２８、および、ペダル３０を含む。
クランク２２は、車体１２に回転可能に支持されるクランク軸３２および左右のクランクアーム３４を含む。左右のクランクアーム３４は、クランク軸３２に取り付けられている。ペダル３０の本体は、ペダル軸３６まわりに回転可能にクランクアーム３４に取り付けられている。
【００２５】
フロントスプロケット２４は、クランク軸３２に連結されている。フロントスプロケット２４は、クランク軸３２と同軸に設けられる。フロントスプロケット２４は、クランク軸３２と相対回転しないように連結されてもよいし、クランク軸３２が前転するときには、フロントスプロケット２４も前転するようにワンウェイクラッチ（図示略）を介して連結されてもよい。
【００２６】
リアスプロケット２６は、後輪１８の車軸１８Ａまわりに回転可能に取り付けられている。リアスプロケット２６は、ワンウェイクラッチ（図示略）を介して後輪１８に連結される。チェーン２８は、フロントスプロケット２４とリアスプロケット２６とに巻き掛けられている。ペダル３０に加えられる人力駆動力によりクランク２２が回転するとき、フロントスプロケット２４、チェーン２８、および、リアスプロケット２６によって、後輪１８が回転する。
【００２７】
図２に示すように、アシスト装置４０は、人力駆動力をアシストするアシストモータ４２、第１のセンサ５２を含む第１の検出装置４４、および、第２のセンサ６０を含む第２の検出装置４６、トルクセンサ４８、および、制御装置７０を備えている。本実施の形態では、アシストモータ４２は、クランク軸３２を回転可能に支持するドライブユニット４１に設けられる。アシストモータ４２は、直接または減速機を介して間接的に、フロントスプロケット２４に連結される。アシストモータ４２は、前輪１６および後輪１８の少なくとも一方に設けられてもよい。
【００２８】
第１の検出装置４４は、磁石５０および第１のセンサ５２を備えている。第１のセンサ５２は、自転車１０に設けられる回転体の回転速度を反映した信号を出力する。第１のセンサ５２は、ボルトおよびナット、またはバンドなどによって図１に示す車体１２またはドライブユニット４１に取り付けることができる。例えば、磁石５０を前輪１６のスポーク１６Ａに取り付け、第１のセンサ５２を車体１２のフロントフォーク１２Ａに取り付けることができる。また、磁石５０を後輪１８のスポーク１８Ｂに取り付け、第１のセンサ５２を車体１２のチェーンステイ１２Ｂまたはドライブユニット４１に取付けることもできる。
【００２９】
第１のセンサ５２は、車体１２に取り付けられることにより、前輪１６または後輪１８の回転を検出可能である。第１のセンサ５２が、車体１２のフロントフォーク１２Ａに取り付けられるとき、第１のセンサ５２の検出対象の回転体は前輪１６である。第１のセンサ５２の、車体１２のチェーンステイ１２Ｂまたはドライブユニット４１に取り付けられるとき、第１のセンサ５２の検出対象の回転体は後輪１８である。本実施の形態では、以下、第１のセンサ５２によって後輪１８の回転を検出する例について説明するが、第１のセンサ５２によって前輪１６の回転を検出する場合についても同様である。
【００３０】
第１のセンサ５２は、ケーブルにより制御装置７０と電気的に接続されている。第１のセンサ５２は、前輪１６または後輪１８の回転に応じて第１の信号Ｓ１を制御装置７０に送信する。図２に示されるように、第１のセンサ５２は、磁界を検出する素子５４および出力部５６を含む。第１のセンサ５２は、前輪１６または後輪１８に設けられる磁石５０を検出可能である。具体的には、素子５４は、磁石５０との相対位置の変化に応じた値を出力する。素子５４は、検出対象の回転体の１回転を１周期とした信号を出力する。すなわち、第１のセンサ５２は、検出対象の回転体が３６０度回転する毎に第１の信号Ｓ１を出力する。
【００３１】
第２の検出装置４６は、クランク軸３２の回転を検出可能である。第２の検出装置４６は、２つの磁石５８Ａ，５８Ｂ、および、車体１２に取り付けられる第２のセンサ６０を備えている。磁石５８Ａは、環状の磁石であって、周方向に複数の磁極が交互に並んで配置されている。磁石５８Ａは、クランク軸３２、クランク軸３２からフロントスプロケット２４までの間の動力伝達部、フロントスプロケット２４、または、左右のクランクアーム３４のいずれかに設けられる。磁石５８Ａは、クランク軸３２に同軸に配置される。磁石５８Ｂは、クランク軸３２、クランク軸３２からフロントスプロケット２４までの間の動力伝達部、フロントスプロケット２４、または、左右のクランクアーム３４のいずれかに取り付けられる。第２のセンサ６０は、ドライブユニット４１のハウジング内に設けられることが好ましい。
【００３２】
第２のセンサ６０は、ケーブルにより制御装置７０と電気的に接続されている。第２のセンサ６０は、クランク２２の回転に応じて第２の信号Ｓ２を制御装置７０に送信する。第２のセンサ６０は、磁石５８Ａ，５８Ｂを検出可能である。第２のセンサ６０は、磁界を検出する素子６２Ａ，６２Ｂおよび出力部６４を含む。素子６２Ａは、フレームに対するクランク２２の相対角度位置を検出する。素子６２Ｂは、フレームに対するクランク２２の基準角度位置を検出する。第２のセンサ６０は、いわゆるケイデンスセンサおよび角度センサとしての機能を備える。素子６２Ａは、角度センサを構成し、素子６２Ｂは、ケイデンスセンサを構成する。具体的には、素子６２Ａは、クランク軸が１回転するとき、３６０°を同極の磁極の数で割った角度を１周期とした信号を出力する。素子６２Ｂは、クランク軸の１回転を１周期とした信号を出力する。出力部５６は、クランク２２の回転角度に応じた第２の信号Ｓ２を出力する。第２の信号Ｓ２は、素子６２Ａが出力する信号と、素子６２Ｂが出力する信号の少なくとも一方を含む。第２のセンサ６０が検出可能なクランク２２の最小角度は、１８０度以下であり、好ましくは１５度であり、さらに好ましくは、６度である。
【００３３】
トルクセンサ４８は、クランク２２に与えられる人力駆動力を検出する。トルクセンサ４８は、人力駆動力に応じた信号を含む第３の信号Ｓ３を出力する。トルクセンサ４８は、図１に示すクランク軸３２からフロントスプロケット２４までの間に設けられてもよく、クランク軸３２またはフロントスプロケット２４に設けられてもよく、クランクアーム３４またはペダル３０に設けられてもよい。トルクセンサ４８は、例えば、歪センサ、磁歪センサ、光学センサおよび圧力センサなどを用いて実現することができ、クランクアーム３４またはペダル３０に加えられる人力駆動力に応じた信号を出力するセンサであれば、いずれのセンサを採用することもできる。
【００３４】
図２に示すように、制御装置７０は、制御部７２および各種情報が格納される記憶部７４を備えている。制御部７２は、ＣＰＵなどの演算処理装置を含んで構成される。記憶部７４には、ソフトウェアが記憶される。制御部７２が、記憶部７４に記憶されるソフトウェアを実行することによって、複数の機能を実現することができる。制御装置７０は、複数の演算処理装置を含んでいてもよく、複数のマイクロコンピュータを含んでいてもよい。制御部７２は、カウンタ機能を有する。
【００３５】
制御部７２は、第１比較部７６、第２比較部７８、判定部８０、トルク演算部８２、駆動力演算部８４、および、モータ制御部８６を備えている。第１比較部７６、第２比較部７８、判定部８０、トルク演算部８２、駆動力演算部８４、および、モータ制御部８６は、制御装置７０の機能を表している。
【００３６】
第１比較部７６は、第１のセンサ５２の検出対象とする回転体の速度変化と、第２のセンサ６０が検出対象とする回転体の速度変化とを比較する。第１比較部７６は、第１のセンサ５２から出力される第１の信号Ｓ１に基づいて演算される回転体の第１の回転速度ＶＡを微分した第１の速度変化ＤＡと、第２のセンサ６０から出力される第２の信号Ｓ２に基づいて演算される回転体の第２の回転速度ＶＢを微分した第２の速度変化ＤＢとを演算する。第１比較部７６は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤが第２の所定の範囲ΔＤＸ以内か否かを判定する。なお、相違ΔＤが所定の範囲ΔＤＸ以内とは、相違ΔＤが所定の範囲ΔＤＸの上限値以下、かつ、下限値以上であることを示す。所定の範囲ΔＤＸの上限値および下限値が等しいとき、すなわち所定の範囲ΔＤＸが一定値（例えば、「０」）であるときには、相違ΔＤが所定の範囲ΔＤＸ以内とは相違ΔＤが所定の値であることを示す。
【００３７】
第２比較部７８は、第１のセンサ５２が出力する信号の位相と第２のセンサ６０が出力する信号の位相とを比較する。第２比較部７８が、素子５４と素子６２Ａが出力する信号を用いて位相を比較する場合、第２比較部７８は、第１のセンサ５２から第１の信号Ｓ１が出力されたタイミングにおける第２のセンサ６０が検出対象とするクランク２２の回転角度（以下、「クランク回転角度ＣＡ」）を演算する。第２比較部７８は、前回の第１のセンサ５２から第１の信号Ｓ１が出力されたタイミングにおけるクランク回転角度ＣＡと今回の第１のセンサ５２から第１の信号Ｓ１が出力されたタイミングにおけるクランク回転角度ＣＡとの差ΔＦが第１の所定の範囲ΔＦＸ以内か否かを判定する。なお、差ΔＦが所定の範囲ΔＦＸ以内とは、差ΔＦが所定の範囲ΔＦＸの上限値以下、かつ、下限値以上であることを示す。所定の範囲ΔＦＸの上限値および下限値が等しいとき、すなわち所定の範囲ΔＦＸが所定の値（例えば、「０」）であるときには、差ΔＦが所定の範囲ΔＦＸ以内とは差ΔＦが所定の値であることを示す。第２比較部７８が、素子５４と素子６２Ｂが出力する信号を用いて位相を比較する場合、第２比較部７８は、第１のセンサ５２から第１の信号Ｓ１が出力されたタイミングと、第２のセンサ６０から第２の信号Ｓ２が出力されたタイミングとの差、すなわち第１の信号Ｓ１と第２の信号Ｓ２の位相の差ΔＦを演算する。より具体的には、第２比較部７８は、第１の信号Ｓ１が出力されたタイミングと、素子６２Ｂがクランク２２の基準角度位置を検出したタイミングとの差を位相の差ΔＦとして演算する。この場合、第２比較部７８は、前回の第１の信号Ｓ１と前回の第２の信号Ｓ２との位相の差ΔＦと、今回の第１の信号Ｓ１と今回の第２の信号Ｓ２との位相の差ΔＦとの相違が、第１の所定の範囲ΔＦＸ以内か否かを判定する。このように第２比較部７８は、第２のセンサ６０が素子６２Ａおよび素子６２Ｂのうち一方しか備えない場合であっても、第１のセンサ５２が出力する信号の位相と第２のセンサ６０が出力する信号の位相とを比較することができる。第２比較部７８が、第２のセンサ６０の素子６２Ａおよび素子６２Ｂのいずれが出力する信号を用いるのかは、予め設定されていてもよく、選択可能に構成されていてもよい。
【００３８】
判定部８０は、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かの判定を行う。具体的には、判定部８０は、第１比較部７６による第１の速度変化ＤＡと第２の速度変化ＤＢとの比較結果、および、第２比較部７８による第１の信号Ｓ１の位相と第２の信号Ｓ２の位相との比較結果に基づいて第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かの判定を行う。すなわち、判定部８０は、第１のセンサ５２の出力と第２のセンサ６０の出力とに基づいて、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かを判定する。
【００３９】
トルク演算部８２は、トルクセンサ４８の出力に基づいてクランク軸３２に与えられるトルクτを演算する。
駆動力演算部８４は、トルクτおよび第１の回転速度ＶＡの少なくとも一方に基づいて駆動力Ｒを演算する。駆動力Ｒは、例えば下り坂を走行しているときに小さく、上り坂を走行しているときに大きくなる。駆動力Ｒは、運転者によってクランク２２に入力されるエネルギであってもよく、クランク２２に与えられるトルクであってもよい。クランク２２に入力されるエネルギは、トルクセンサ４８と素子６２Ａの出力値から演算することができる。クランク２２に与えられるトルクは、トルクセンサ４８の出力値から演算することができる。
【００４０】
モータ制御部８６は、第１のセンサ５２の出力およびトルクセンサ４８の出力に基づいてアシストモータ４２を制御する。具体的には、モータ制御部８６は、トルクτおよび第１の回転速度ＶＡに基づいてアシストモータ４２にバッテリ１４（図１参照）の電力を供給し、アシストモータ４２を駆動させる。また、モータ制御部８６は、第１の回転速度ＶＡに基づいて演算される車速Ｖが第１の速度ＶＸ未満のとき、アシストモータ４２を駆動可能とし、かつ、車速Ｖが第１の速度ＶＸ以上のときにアシストモータ４２の駆動を停止する。なお、車速Ｖは、第１の回転速度ＶＡと、予め記憶されている車輪の周長、直径、または、半径とに基づいて演算される。第１の速度ＶＸは、たとえば時速２５ｋｍである。
【００４１】
また、モータ制御部８６は、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かの判定結果に基づいてアシストモータ４２を制御する。具体的には、モータ制御部８６は、判定部８０の判定結果に基づいて、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしていると判定したとき、アシストモータ４２の駆動を禁止する。制御部７２は、アシストモータ４２の駆動が禁止されていることを表す情報を、記憶部７４に記憶させる。記憶部７４は、不揮発性メモリによって構成され、記憶部７４に記憶されている情報は、アシスト装置４０からバッテリ１４を外しても記憶された状態が維持される。モータ制御部８６は、判定部８０の判定結果に基づいて、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしていると判定したとき、アシストモータ４２への電力の供給を停止させてもよい。モータ制御部８６は、判定部８０の判定結果に基づいて第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしていないと判定したとき、アシストモータ４２の駆動を許可する。
【００４２】
図３を参照して、制御部７２のモータ制御部８６により実行されるモータ制御処理の演算処理について説明する。なお、本処理は制御装置７０に電源が投入されたとき、またはアシストモータ４２を駆動可能な動作モードが選択されたときに開始される。本処理が一旦終了された後は、制御装置７０への電源の供給が停止されるまでまたは、アシストモータ４２を駆動させない動作モードが選択されるまで再びステップＳ１１から所定周期ごとに繰り返される。
【００４３】
モータ制御部８６は、ステップＳ１１においてアシストモータ４２の駆動が禁止されているか否かを判定する。モータ制御部８６は、アシストモータ４２の駆動が禁止されているとき、アシストモータ４２を駆動せずに本処理を終了する。
【００４４】
モータ制御部８６は、アシストモータ４２の駆動が許可されているとき、ステップＳ１２に進み、車速Ｖが第１の速度ＶＸ未満か否かを判定する。モータ制御部８６は、車速Ｖが第１の速度ＶＸ未満のとき、ステップＳ１３において車速Ｖおよびトルクτに基づいてアシストモータ４２を駆動させる。記憶部７４には車速Ｖおよびトルクτとアシストモータ４２の出力トルクとの関係を規定するマップが記憶されている。トルクτとアシストモータ４２の出力トルクとの関係は、いわゆるアシスト比である。モータ制御部８６は、車速Ｖが第１の速度ＶＸ以上のとき、アシストモータ４２を駆動させずに本処理を終了する。
【００４５】
ステップＳ１２に用いられる第１の速度ＶＸ、および、ステップＳ１３に用いられるマップは、第１のセンサ５２が前輪１６または後輪１８の回転速度を検出しているときに適合して作成されている。このため、第１のセンサ５２がクランク２２の回転速度を検出するように自転車１０に取り付けられた場合、実際の自転車１０の走行状態に対してアシストモータ４２の適切な制御が実行されないおそれが生じる。そこで、制御部７２は、ステップＳ１１の判定において用いられるアシストモータ４２の駆動の禁止および許可を、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かの判定処理に基づいて設定する。判定処理は、第１の比較処理、アシストモータ４２の駆動禁止処理、第２の比較処理、および、アシストモータ４２の駆動許可処理を含む。
【００４６】
図４を参照して、制御部７２の駆動力演算部８４、第１比較部７６、および、第２比較部７８により実行される第１の比較処理について説明する。なお、本処理は制御装置７０に電源が投入されたとき、またはアシストモータ４２を駆動可能な動作モードが選択されたときに開始される。本処理が一旦終了された後は、制御装置７０への電源の供給が停止されるまでまたは、アシストモータ４２を駆動させない動作モードが選択されるまで再びステップＳ２１から所定周期ごとに繰り返される。
【００４７】
制御部７２は、ステップＳ２１において駆動力Ｒを演算する。制御部７２は、ステップＳ２２においてステップＳ２１において演算された駆動力Ｒが所定値ＲＸ未満か否かを判定する。制御部７２は、駆動力Ｒが所定値ＲＸ以上のとき、本処理を終了する。他方、制御部７２は、駆動力Ｒが所定値ＲＸ未満のとき、ステップＳ２３に進み、第１の比較処理を継続する。所定値ＲＸは、例えば、自転車１０が駆動力Ｒの小さい状態で走行しているとき、例えば、下り坂を走行しているときの駆動力Ｒに対応する値が設定される。
【００４８】
ステップＳ２３において、制御部７２の第１比較部７６は、第１の速度変化ＤＡおよび第２の速度変化ＤＢがいずれも負の値であり、かつ、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤが第２の所定の範囲ΔＤＸ以内か否かを判定する。制御部７２は、第１の速度変化ＤＡおよび第２の速度変化ＤＢがいずれも負の値であり、かつ、相違ΔＤが第２の所定の範囲ΔＤＸ以内のとき、ステップＳ２４において、第２のカウントＮＢをカウントアップしてステップＳ２６に進む。他方、制御部７２は、ステップＳ２３において第１の速度変化ＤＡおよび第２の速度変化ＤＢの少なくとも一方が正の値のとき、または、相違ΔＤが第２の所定の範囲ΔＤＸ以内ではないとき、ステップＳ２５において、第２のカウントＮＢをカウントクリアしてステップＳ２６に進む。すなわち、制御部７２は、第１のセンサ５２が検出対象とする回転体および第２のセンサ６０が検出対象とする回転体がいずれも減速しているとき、かつ、同様の速度で減速しているときに第２のカウントＮＢをカウントアップする。
【００４９】
ステップＳ２６において、制御部７２の第２比較部７８は、クランク２２が正回転中に、前回の第１のセンサ５２から第１の信号Ｓ１が出力されたタイミングにおけるクランク回転角度ＣＡと、今回の第１のセンサ５２から第１の信号Ｓ１が出力されたタイミングにおけるクランク回転角度ＣＡとの差ΔＦが、第１の所定の範囲ΔＦＸ以内か否かを判定する。なお、クランク２２の正回転とは、自転車１０が前進する方向と対応する正回転方向
にクランク２２が回転していることを示す。制御部７２は、差ΔＦが第１の所定の範囲ΔＦＸ以内のとき、ステップＳ２７において、第１のカウントＮＡをカウントアップして本処理を終了する。制御部７２は、ステップＳ２６において差ΔＦが第１の所定の範囲ΔＦＸ以内ではないとき、ステップＳ２８において、第１のカウントＮＡをカウントクリアして本処理を終了する。なお、ステップＳ２６〜Ｓ２８の処理をステップＳ２３〜Ｓ２５よりも先に実行し、ステップＳ２６〜Ｓ２８の処理の実行後にステップＳ２３〜Ｓ２５の処理を実行することもできる。
【００５０】
図５を参照して、アシストモータ４２の駆動禁止処理について説明する。なお、本処理は制御装置７０に電源が投入されたとき、またはアシストモータ４２を駆動可能な動作モードが選択されたときに開始される。本処理が一旦終了された後は、制御装置７０への電源の供給が停止されるまでまたは、アシストモータ４２を駆動させない動作モードが選択されるまで再びステップＳ３１から所定周期ごとに繰り返される。
【００５１】
制御部７２は、ステップＳ３１において、第１のカウントＮＡが第１の値ＮＡＸ以上か否かを判定する。制御部７２は、第１のカウントＮＡが第１の値ＮＡＸ未満のとき、本処理を終了する。制御部７２は、第１のカウントＮＡが第１の値ＮＡＸ以上のとき、ステップＳ３２において第２のカウントＮＢが第２の値ＮＢＸ以上か否かを判定する。制御部７２は、第２のカウントＮＢが第２の値ＮＢＸ未満のとき、本処理を終了する。他方、制御部７２は、第２のカウントＮＢが第２の値ＮＢＸ以上のとき、ステップＳ３３においてアシストモータ４２の駆動を禁止して本処理を終了する。第１の値ＮＡＸおよび第２の値ＮＢＸは、予め設定されているが、変更可能であってもよい。たとえば制御部７２に外部のコンピュータを接続することによって、記憶部７４に記憶されている第１の値ＮＡＸおよび第２の値ＮＢＸの少なくとも一方を変更してもよい。なお、ステップＳ３２の処理をステップＳ３１よりも先に実行し、ステップＳ３２の処理の実行後にステップＳ３１を実行することもできる。
【００５２】
図６を参照して、制御部７２により実行される第２の比較処理について説明する。なお、本処理は制御装置７０に電源が投入されたとき、またはアシストモータ４２を駆動可能な動作モードが選択されたときに開始される。本処理が一旦終了された後は、制御装置７０への電源の供給が停止されるまでまたは、アシストモータ４２を駆動させない動作モードが選択されるまで再びステップＳ４１から所定周期ごとに繰り返される。
【００５３】
制御部７２は、ステップＳ４１において駆動力Ｒを演算する。制御部７２は、ステップＳ４２においてステップＳ４１において演算された駆動力Ｒが所定値ＲＸ未満か否かを判定する。制御部７２は、駆動力Ｒが所定値ＲＸ未満のとき、ステップＳ４３に進む。他方、制御部７２は、駆動力Ｒが所定値ＲＸ以上のとき、本処理を終了する。
【００５４】
ステップＳ４３において、制御部７２の第２比較部７８は、差ΔＦが第３の所定の範囲ΔＦＹ内か否かを判定する。制御部７２は差ΔＦが第３の所定の範囲ΔＦＹ以内のとき、ステップＳ４４において、第４のカウントＮＤをカウントクリアして本処理を終了する。他方、制御部７２は、ステップＳ４３において差ΔＦが第３の所定の範囲ΔＦＹ以内ではないとき、ステップＳ４５において、第４のカウントＮＤをカウントアップして本処理を終了する。なお、差ΔＦが所定の範囲ΔＦＹ以内とは、差ΔＦが所定の範囲ΔＦＹの上限値以下、かつ、下限値以上であることを示す。所定の範囲ΔＦＹの上限値および下限値が等しいとき、すなわち所定の範囲ΔＦＹが一定値（例えば、「０」）であるときには、差ΔＦが所定の範囲ΔＦＹ以内とは差ΔＦが「０」であることを示す。
【００５５】
図７を参照して、アシストモータ４２の駆動許可処理について説明する。なお、本処理は制御装置７０に電源が投入されたとき、またはアシストモータ４２を駆動可能な動作モードが選択されたときに開始される。本処理が一旦終了された後は、制御装置７０への電源の供給が停止されるまでまたは、アシストモータ４２を駆動させない動作モードが選択されるまで再びステップＳ５１から所定周期ごとに繰り返される。
【００５６】
制御部７２の判定部８０は、ステップＳ５１において、第４のカウントＮＤが第４の値ＮＤＸ以上か否かを判定する。制御部７２は、第４のカウントＮＤが第４の値ＮＤＸ未満のとき、本処理を終了する。他方、制御部７２は、第４のカウントＮＤが第４の値ＮＤＸ以上のとき、ステップＳ５２において駆動禁止処理のステップＳ３３（図５参照）において設定されたアシストモータ４２の駆動の禁止を解除して本処理を終了する。制御部７２は、記憶部７４に記憶されているアシストモータ４２の駆動が禁止されていることを表す情報を、アシストモータ４２の駆動の許可を表す情報に書き換える。第４の値ＮＤＸは、予め設定されているが、変更可能であってもよい。たとえば制御部７２に外部のコンピュータを接続することによって、記憶部７４に記憶されている第４の値ＮＤＸを変更してもよい。なお、アシストモータ４２の駆動の禁止が設定されていない場合は、アシストモータ４２の駆動の禁止が解除された状態が継続される。制御部７２は、第１のセンサ５２の出力と第２のセンサ６０の出力とから演算される第４のカウントＮＤに基づいて、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしていないと判定する。制御部７２は、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているとの判定に基づいてアシストモータ４２の駆動を禁止しているとき、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしていないと判定したとき、アシストモータ４２の駆動を許可する。
【００５７】
図８を参照して、アシストモータ４２の駆動禁止処理の実行態様の一例について説明する。
時刻ｔ１１は、自転車１０が減速中かつ駆動力Ｒが所定値ＲＸ未満になった時刻を示す。このとき、制御部７２は、今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと、前回の第１の信号Ｓ１が検出されたとき（図８中の時刻ｔ１０）のクランク回転角度ＣＡとを比較する。今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと、前回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡとが、同一の角度ＣＡＸである。このため、制御部７２は、差ΔＦが第１の所定の範囲ΔＦＸ以内であると判定し、第１のカウントＮＡをカウントアップする。
【００５８】
また、制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤとを比較する。制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤが第２の所定の範囲ΔＤＸ以内であることに基づいて、第２のカウントＮＢをカウントアップする。
【００５９】
時刻ｔ１２は、再び第１の信号Ｓ１が検出された時刻を示す。このとき、制御部７２は、今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと、前回の第１の信号Ｓ１が検出されたとき（図８中の時刻ｔ１１）のクランク回転角度ＣＡとを比較する。今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと前回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡとが同一の角度ＣＡＸである。このため、制御部７２は、差ΔＦが第１の所定の範囲ΔＦＸ以内であると判定し、第１のカウントＮＡをカウントアップする。
【００６０】
また、制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤとを比較する。制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤが第２の所定の範囲ΔＤＸ以内であることに基づいて、第２のカウントＮＢをカウントアップする。
【００６１】
時刻ｔ１３は、時刻ｔ１２から所定の期間を経て、再び第１の信号Ｓ１が検出された時刻を示す。このとき、制御部７２は、今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと、前回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡとを比較する。今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと前回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡとが同一の角度ＣＡＸである。このため、制御部７２は、差ΔＦが第１の所定の範囲ΔＦＸ以内であると判定し、第１のカウントＮＡをカウントアップする。
【００６２】
また、制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤとを比較する。制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤが第２の所定の範囲ΔＤＸ以内であることに基づいて、第２のカウントＮＢをカウントアップする。この結果、第１のカウントＮＡが第１の値ＮＡＸ以上となり、かつ、第２のカウントＮＢが第２の値ＮＢＸ以上となる。制御部７２は、アシストモータ４２の駆動の禁止を設定する。
【００６３】
図９を参照して、アシストモータ４２の駆動許可処理の実行態様の一例について説明する。
時刻ｔ２１は、駆動力Ｒが所定値ＲＸ未満になった時刻を示す。このとき、制御部７２は、今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと、前回の第１の信号Ｓ１が検出されたとき（図９中の時刻ｔ２０）のクランク回転角度ＣＡとを比較する。制御部７２は、今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと前回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡとの差ΔＦが第３の所定の範囲ΔＦＹ以内でないことに基づいて、第４のカウントＮＤをカウントアップする。
【００６４】
時刻ｔ２２は、再び第１の信号Ｓ１が検出された時刻を示す。このとき、制御部７２は、今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと、前回の第１の信号Ｓ１が検出されたとき（図９中の時刻ｔ２１）のクランク回転角度ＣＡとを比較する。制御部７２は、今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと前回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡとの差ΔＦが第３の所定の範囲ΔＦＹ以内でないことに基づいて、第４のカウントＮＤをカウントアップする。
【００６５】
時刻ｔ２３は、時刻ｔ２２から所定の期間を経て、再び第１の信号Ｓ１が検出された時刻を示す。このとき、制御部７２は、今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと、前回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡとを比較する。制御部７２は、今回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡと前回の第１の信号Ｓ１が検出されたときのクランク回転角度ＣＡとの差ΔＦが第３の所定の範囲ΔＦＹ外であることに基づいて、第４のカウントＮＤをカウントアップする。この結果、第４のカウントＮＤが第４の値ＮＤＸ以上となる。このため、制御部７２は、アシストモータ４２の駆動が禁止されているとき、アシストモータ４２の駆動の禁止を解除する。
【００６６】
制御装置７０の作用について説明する。
第１のセンサ５２と第２のセンサ６０とが異なる回転体を検出対象としているとき、自転車の１０の変速比が「１」以外のときに第１のセンサ５２の出力の周期と第２のセンサ６０の出力の周期とは異なる。第１のセンサ５２と第２のセンサ６０とが同一の回転体を検出対象としているとき、自転車の１０の変速比が「１」以外であっても第１のセンサ５２の出力の周期と第２のセンサ６０の出力の周期との差は所定の範囲以内に含まれる。また、第１のセンサ５２と第２のセンサ６０とが異なる回転体を検出対象としているとき、自転車の１０の変速比が「１」のときであっても、特定の条件下において第１のセンサ５２の出力の周期と第２のセンサ６０の出力の周期とは異なる。このため、制御部７２は、周期の差ΔＦ、および、第１のセンサ５２の出力の周期と第２のセンサ６０の出力の周期とが異なる状況が生じやすい減速時の相違ΔＤを用いて、第１のセンサ５２と第２のセンサ６０とが同一の回転体を検出対象としているか否かを判定する。
【００６７】
制御装置７０の効果について説明する。
（１）制御部７２は、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かを判定する。このため、第１のセンサ５２が第２のセンサ６０の検出対象であるクランク２２の回転数を検出しているか否かを判定することができる。すなわち、制御装置７０は、第１のセンサ５２の検出対象の回転体を判定することができる。
【００６８】
（２）制御部７２は、第１のセンサ５２および第２のセンサ６０が同一の回転体の状態を検出していると判定したとき、アシストモータ４２の駆動を禁止する。このため、例えば、実際の車速が第１の速度ＶＸ以上のときに、アシストモータ４２が駆動されることが抑制される。また、実際の車速に対してアシストモータ４２を適切に制御できる。
【００６９】
（３）例えば、自転車１０の変速比が「１」であるとき、クランク２２の回転速度と前輪１６または後輪１８の回転速度とが一致するとき、差ΔＦは第１の所定の範囲ΔＦＸ以内となる。このため、第１のセンサ５２および第２のセンサ６０が異なる回転体を検出対象にしている場合であっても制御部７２が第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしている旨を判定するおそれがある。制御部７２は、差ΔＦが、第１の所定の範囲ΔＦＸ以内となる回数が第１の値ＮＡＸ以上になったとき、かつ、第１の回転速度ＶＡが減少するときの第１の速度変化ＤＡと、第２の回転速度ＶＢが減少するときの第２の速度変化ＤＢとの相違ΔＤが、第２の所定の範囲ΔＤＸ以内となる回数が第２の値ＮＢＸ以上になったとき、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしていると判定する。このため、差ΔＦおよび相違ΔＤの一方のみに基づいて第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしていると判定する場合と比較して、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かの判定の正確性が向上する。変速比が「１」にならない自転車のアシスト装置に本発明を適用する場合には、処理を簡略化するために図４の第１の比較処理において、ステップＳ２６〜Ｓ２８を除く他の処理を省略し、図５の駆動禁止処理においてステップＳ３２を省略し、図６の第２の比較処理においてステップＳ４１およびＳ４２を省略したほうが好ましい。この場合、制御部７２は駆動力演算部８４、第１比較部７６、および、第２比較部７８のうち、第２比較部７８のみを備えていればよい。
【００７０】
（４）制御部７２は、自転車１０の駆動力Ｒが所定値ＲＸよりも小さいときに、第１のセンサ５２の出力と第２のセンサ６０の出力とに基づいて、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かを判定する。駆動力Ｒが小さいとき、クランク２２の回転速度の減速の度合いに対する前輪１６または後輪１８の回転速度の減速の度合いが小さくなりやすい。このため、変速比が「１」であった場合であっても、第１のセンサ５２および第２のセンサ６０が異なる回転体を検出対象にしているときに差ΔＦが第１の所定の範囲ΔＦＸ外になりやすい。また、変速比が「１」であった場合であっても、第１のセンサ５２および第２のセンサ６０が異なる回転体を検出対象にしているときに相違ΔＤが第２の所定の範囲ΔＤＸ外になりやすい。このため、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かの判定の正確性が向上する。
【００７１】
（５）制御部は、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているとの判定に基づいてアシストモータ４２の駆動を禁止しているとき、第１のセンサ５２の出力の位相と第２のセンサ６０の出力の位相の差が第３の所定の範囲ΔＦＹ内となる回数が、第４の所定値以上になったとき、アシストモータの駆動を許可する。
【００７２】
（第２実施形態）
図１０および図１１を参照して、第２実施形態の制御装置７０について説明する。第２実施形態の制御装置７０は、第１実施形態の図４の第１の比較処理に代えて、図１０に示す第１の比較処理を実行する。第２実施形態の制御装置７０は、第１実施形態の図５のアシストモータ４２の駆動禁止処理に代えて、図１１に示すアシストモータ４２の駆動禁止処理を実行する。なお、第１実施形態と共通する構成については第１実施形態と同一の符号を付し、その説明を省略する。
【００７３】
図１０に示されるように、第２実施形態の第１の比較処理においては、第１実施形態の第１の比較処理のステップＳ２３〜２５に代えてステップＳ６１〜Ｓ６３が実行される。
制御部７２は、ステップＳ２２において駆動力Ｒが所定値ＲＸ未満のとき、ステップＳ６１に進み、第１の比較処理を継続する。ステップＳ６１において、制御部７２の第１比較部７６は、クランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸ以下になったか否かを判定する。具体的には、制御部７２は、第２のセンサ６０の出力に基づいて第２の回転速度ＶＢが「０」よりも大きな値から所定の回転速度ＶＢＸ以下になったか否かを判定する。所定の回転速度ＶＢＸは、たとえば３ｒｐｍ〜１０ｒｐｍの範囲の値に選ばれる。所定の回転速度ＶＢＸは、たとえば０ｒｐｍに選ばれてもよい。所定の回転速度ＶＢＸが、０ｒｐｍの場合、所定値ＣＮＸは０である。ステップＳ６１において、制御部７２の第１比較部７６は、クランク２２が停止したか否かを判定してもよい。クランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸ以下になると、制御部７２は、ステップＳ６２において、第３のカウントＮＣをカウントアップしてステップＳ２６に進む。他方、制御部７２は、ステップＳ６１においてクランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸを超えているとき、ステップＳ６３において、第３のカウントＮＣをカウントクリアしてステップＳ２６に進む。
【００７４】
図１１に示されるように、第２実施形態のアシストモータ４２の駆動禁止処理においては、第１実施形態のアシストモータ４２の駆動禁止処理のステップＳ３２に代えてステップＳ６４が実行される。
【００７５】
制御部７２は、ステップＳ３１において、第１のカウントＮＡが第１の値ＮＡＸ以上か否かを判定する。制御部７２は、第１のカウントＮＡが第１の値ＮＡＸ未満のとき、本処理を終了する。他方、制御部７２は、第１のカウントＮＡが第１の値ＮＡＸ以上のとき、ステップＳ６４において第３のカウントＮＣが第３の値ＮＣＸ以上か否かを判定する。制御部７２は、第３のカウントＮＣが第３の値ＮＣＸ未満のとき、本処理を終了する。他方、制御部７２は、第３のカウントＮＣが第３の値ＮＣＸ以上のとき、ステップＳ３３においてアシストモータ４２の駆動を禁止して本処理を終了する。
【００７６】
制御部７２は、この判定結果に基づいてアシストモータ４２の駆動禁止処理を実行する。第２実施形態の制御装置７０は、第１実施形態の（１）、（２）、（４）および（５）の効果に加えて、以下の効果を奏する。
【００７７】
（６）クランク２２の回転速度ＣＮが所定値ＣＮＸ以下になると、クランク２２の回転が停止する可能性が高く、クランク２２の回転と、前輪１６または後輪１８の回転とが同期して回転していたとしても、クランク２２の回転が停止するときには、クランク２２の回転と、前輪１６または後輪１８の回転との同期がずれる可能性が高い。このような状況が発生した回数も判定に加えることによって、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かの判定の正確性が向上する。
【００７８】
（第３実施形態）
図１２および図１３を参照して、第３実施形態のアシスト装置４０について説明する。なお、第１実施形態と共通する構成については第１実施形態と同一の符号を付し、その説明を省略する。
【００７９】
図１２に示されるように、アシスト装置４０は、第２の検出装置４６を省略している。制御部７２は、クランク２２に入力される人力駆動力に応じた信号を出力するトルクセンサ４８の出力を用いてクランク２２の回転速度を検出する。すなわち、第３実施形態において、トルクセンサ４８は、第２のセンサである。
【００８０】
第２比較部７８は、第１のセンサ５２が出力する信号の周期と第２のセンサ６０が出力する信号の周期とを比較する。具体的には、第２比較部７８は、第１のセンサ５２から第１の信号Ｓ１が出力されたタイミングにおける第２のセンサ６０の出力値に基づいて、クランク２２が一回転する周期を演算する。クランク２２が上死点および上死点にあるときトルクτは最小となり、クランク２２が上死点と上死点との中間位置にあるときトルクτは最大となる。このため、第２のセンサ６０の出力値を見れば、クランク２２の回転周期を計算することができる。ただし、クランク２２が一回転したときに左右のクランクアーム３４のそれぞれに対応する信号が第２のセンサ６０から出力されるので、クランク２２が一回転したときのトルクτの波形は２つのピークを有する。制御部７２は、２つのピークを有する波形を１セットとして処理すればよい。制御部７２は、トルクτの波形に基づいてクランク２２の１回転の周期ＴＣを推定する。
【００８１】
第２比較部７８は、例えば、クランク２２の上死点および下死点におけるトルクセンサ４８の出力値を０とし、クランク２２の上死点および下死点の間におけるトルクセンサ４８の最大出力値を１００として、第１の信号Ｓ１が出力されたタイミングにおけるトルクセンサ４８の出力値を％で計算する（以下、「出力値の割合ＰＸ」）。第２比較部７８は、前回と今回のトルクセンサ４８の出力値の割合ＰＸの差ΔＦが第１の所定の範囲ΔＦＸ以内か否かを判定する。トルクセンサ４８の出力値の割合ＰＸを求めることによって、人力駆動力が変化したとしてもクランク２２の回転周期を求めることができる。トルクセンサ４８の出力値の割合ＰＸは、クランク回転角度ＣＡに対応するので、トルクセンサの出力値の割合をクランク回転角度ＣＡに変換してもよい。
【００８２】
第２比較部７８は、前回と今回のトルクセンサ４８の出力値の割合ＰＸが等しくなる時刻に基づいて、第２のセンサ６０が出力する信号の周期を演算してもよい。この場合、前回と今回のトルクセンサ４８の出力値の割合ＰＸが等しくなる時刻をクランク２２の一回転の周期として、第１のセンサ５２が出力する信号の周期と第２のセンサ６０が出力する信号の周期との差ΔＦが第１の所定の範囲ΔＦＸ以内か否かを判定する。
【００８３】
第１比較部７６は、第１のセンサ５２から出力される第１の信号Ｓ１に基づいて演算される回転体の第１の回転速度ＶＡを微分した第１の速度変化ＤＡと、トルクセンサ４８の出力波形から演算されるクランク２２の回転速度を微分した第２の速度変化ＤＢとを演算する。
【００８４】
図１３を参照して、アシストモータ４２の駆動禁止処理の実行態様の一例について説明する。
時刻ｔ３１は、自転車１０が減速中かつ駆動力Ｒが所定値ＲＸ未満になった時刻を示す。このとき、制御部７２は、今回の第１の信号Ｓ１が検出されたときのトルクセンサ４８の出力値の割合ＰＸと、前回の第１の信号Ｓ１が検出されたとき（図１３中の時刻ｔ３０）のトルクセンサ４８の出力値の割合ＰＸとを比較する。制御部７２は、差ΔＦが第１の所定の範囲ΔＦＸ以内であると判定に基づいて、第１のカウントＮＡをカウントアップする。
【００８５】
また、制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤとを比較する。制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤが第２の所定の範囲ΔＤＸ以内であることに基づいて、第２のカウントＮＢをカウントアップする。
【００８６】
時刻ｔ３２は、再び第１の信号Ｓ１が検出された時刻を示す。このとき、制御部７２は、今回の第１の信号Ｓ１が検出されたときのトルクセンサ４８の出力値の割合ＰＸと、前回の第１の信号Ｓ１が検出されたとき（図１３中の時刻ｔ３１）のトルクセンサの出力値の割合ＰＸとを比較する。制御部７２は、差ΔＦが第１の所定の範囲ΔＦＸ以内であると判定に基づいて、第１のカウントＮＡをカウントアップする。
【００８７】
また、制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤとを比較する。制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤが第２の所定の範囲ΔＤＸ以内であることに基づいて、第２のカウントＮＢをカウントアップする。
【００８８】
時刻ｔ３３は、時刻ｔ１２から所定の期間を経て、再び第１の信号Ｓ１が検出された時刻を示す。このとき、制御部７２は、今回の第１の信号Ｓ１が検出されたときのトルクセンサ４８の出力値の割合ＰＸと、前回の第１の信号Ｓ１が検出されたときのトルクセンサ４８の出力値の割合ＰＸとを比較する。制御部７２は、差ΔＦが第１の所定の範囲ΔＦＸ以内であると判定に基づいて、第１のカウントＮＡをカウントアップする。
【００８９】
また、制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤとを比較する。制御部７２は、第１の速度変化ＤＡと第２の速度変化ＤＢとの相違ΔＤが第２の所定の範囲ΔＤＸ以内であることに基づいて、第２のカウントＮＢをカウントアップする。この結果、第１のカウントＮＡが第１の値ＮＡＸ以上となり、かつ、第２のカウントＮＢが第２の値ＮＢＸ以上となる。制御部７２は、アシストモータ４２の駆動の禁止を設定する。なお、アシスト装置４０では、第１および第２の実施形態に示す第２のセンサ６０の構成を省略することができる。
【００９０】
（第４実施形態）
図１４および図１５を参照して、第４実施形態の制御装置７０について説明する。第４実施形態の制御装置７０は、第１実施形態の図４の第１の比較処理に代えて、図１４に示す第１の比較処理を実行する。第４実施形態の制御装置７０は、第１実施形態の図５のアシストモータ４２の駆動禁止処理に代えて、図１５に示すアシストモータ４２の駆動禁止処理を実行する。なお、第１実施形態と共通する構成については第１実施形態と同一の符号を付し、その説明を省略する。
【００９１】
図１４を参照して、制御部７２により実行される第１の比較処理について説明する。なお、本処理は制御装置７０に電源が投入されたとき、またはアシストモータ４２を駆動可能な動作モードが選択されたときに開始される。本処理が一旦終了された後は、制御装置７０への電源の供給が停止されるまでまたは、アシストモータ４２を駆動させない動作モードが選択されるまで再びステップＳ８１から所定周期ごとに繰り返される。
【００９２】
制御部７２は、ステップＳ８１において、クランク２２の正回転方向の回転速度ＣＮが、所定値ＣＮＸを超える値から所定値ＣＮＸ以下になったか否かを判定する。具体的には、制御部７２は、第２のセンサ６０の出力に基づいて第２の回転速度ＶＢが所定の回転速度ＶＢＸより大きな速度から、所定の回転速度ＶＢＸ以下になったか否かを判断する。所定の回転速度ＶＢＸは、たとえば３ｒｐｍ〜１０ｒｐｍの範囲の値に選ばれる。制御部７２は、クランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸを超える値から所定値ＣＮＸ以下になったと判定されないとき、本処理を終了する。制御部７２は、クランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸを超える値から所定値ＣＮＸ以下になったと判定されると、ステップＳ２６に進む。制御部７２は、クランク２２の正回
転方向の回転速度ＣＮが所定値ＣＮＸ以上のとき、すなわち、クランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸを超える値に維持されているときは、ステップＳ８１を繰り返し、クランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸ以下になるまでステップＳ２６に進まない。
【００９３】
ステップＳ２６において、制御部７２は、差ΔＦが第１の所定の範囲ΔＦＸ以内のとき、ステップＳ２７において、第１のカウントＮＡをカウントアップしてステップＳ８２に進む。制御部７２は、ステップＳ２６において差ΔＦが第１の所定の範囲ΔＦＸ以内ではないとき、ステップＳ２８において、第１のカウントＮＡをカウントクリアしてステップＳ８２に進む。
【００９４】
ステップＳ８２において、制御部７２は、第１のカウントＮＡが第１の値ＮＡＸ以上か否かを判定する。制御部７２は、第１のカウントＮＡが第１の値ＮＡＸ未満のとき、ステップＳ８３に進む。
【００９５】
制御部７２は、ステップＳ８３においてクランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸ以下か否かを判定する。制御部７２は、ステップＳ８３においてクランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸ以下のとき、ステップＳ２６に移る。制御部７２は、ステップＳ８３においてクランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸ以下ではないとき、ステップＳ８５に移る。第１の値ＮＡＸは、予め設定されているが、変更可能であってもよい。例えば制御部７２に外部のコンピュータを接続することによって、記憶部７４に記憶されている第１の値ＮＡＸを変更してもよい。制御部７２は、ステップＳ８３においてクランク２２の正回転方向の回転速度ＣＮが所定値ＣＮＸ以下ではないとき、処理を終了してもよい。
【００９６】
制御部７２は、ステップＳ８２において第１のカウントＮＡが第１の値ＮＡＸ以上のとき、ステップＳ８４に進み、第５のカウントＮＥをカウントアップし、さらにステップＳ８５において第１のカウントＮＡをカウントクリアして本処理を終了する。
【００９７】
図１５を参照して、アシストモータ４２の駆動禁止処理について説明する。なお、本処理は制御装置７０に電源が投入されたとき、または、アシストモータ４２が駆動されたときに開始される。本処理が一旦終了された後は、制御装置７０への電源の供給が停止されるまで、または、アシストモータ４２の駆動が停止されるまで、再びステップＳ８６から所定周期ごとに繰り返される。
【００９８】
制御部７２は、ステップＳ８６において第５のカウントＮＥが第５の値ＮＥＸ以上か否かを判定する。制御部７２は、第５のカウントＮＥが第５の値ＮＥＸ未満のとき、本処理を終了する。他方、制御部７２は、第５のカウントＮＥが第５の値ＮＥＸ以上のとき、ステップＳ３３においてアシストモータ４２の駆動を禁止して本処理を終了する。第５の値ＮＥＸは、予め設定されているが、変更可能であってもよい。たとえば制御部７２に外部のコンピュータを接続することによって、記憶部７４に記憶されている第５の値ＮＥＸを変更してもよい。なお、第５の値ＮＥＸは、「１」以上の値に設定することができる。第５のカウントＮＥは、クランク２２が回転状態から停止状態に移行する一連の過程においては、第１のカウントＮＡが第１の値ＮＡＸ以上になった時に１つだけしかカウントアップしない。第５のカウントＮＥの規定回数を２以上にすることによって、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かをより正確に判定できる。
【００９９】
（変形例）
本アシスト装置が取り得る具体的な形態は、上記各実施形態に例示された形態に限定されない。本アシスト装置は、上記各アシスト装置とは異なる各種の形態を取り得る。以下に示される上記各実施形態の変形例は、本アシスト装置が取り得る各種の形態の一例である。
【０１００】
・第１実施形態の第１の比較処理において図１６に示すようにステップＳ２６〜Ｓ２８の処理を省略することもできる。この場合、アシストモータ４２の駆動禁止処理を図１７に示すようにステップＳ３１を省略する。すなわち、制御部７２は、第１の回転速度ＶＡが減少するときの第１の速度変化ＤＡと、第２の回転速度ＶＢが減少するときの第２の速度変化ＤＢとの相違ΔＤが、第２の所定の範囲ΔＤＸ以内となる回数が第２の値ＮＢＸ以上になったとき、第１のセンサ５２および第２のセンサが同一の回転体を検出対象にしていると判定する。制御部７２は、相違ΔＤが、第２の所定の範囲ΔＤＸ以内となる回数が第２の値ＮＢＸ以上になったとき、アシストモータ４２の駆動を禁止する。
【０１０１】
・第１実施形態の第１の比較処理において図１８に示すようにステップＳ２３〜Ｓ２５の処理を省略することもできる。この場合、アシストモータ４２の駆動禁止処理を図１９に示すようにステップＳ３２を省略する。すなわち、制御部７２は、位相の差ΔＦが、第１の所定の範囲ΔＦＸ以内となる回数が第１の値ＮＡＸ以上になったとき、第１のセンサ５２および第２のセンサが同一の回転体を検出対象にしていると判定する。制御部７２は、相違ΔＤが、位相の差ΔＦが、第１の所定の範囲ΔＦＸ以内となる回数が第１の値ＮＡＸ以上になったとき、アシストモータ４２の駆動を禁止する。
【０１０２】
・図１８に示す第１の比較処理に以下の処理を追加することもできる。図２０に示されるように、ステップＳ２１において駆動力Ｒが所定値ＲＸ以上のとき、ステップＳ７１に進み、自転車１０の変速比が「１」か否かを判定する。制御部７２は、変速比が「１」であるとき、ステップＳ２６に進まずに本処理を終了する。他方、制御部７２は、変速比が「１」以外のとき、ステップＳ２６に進み、位相の差ΔＦが、第１の所定の範囲ΔＦＸ以内か否かを判定する。この変形例において、電動の変速機を備える自転車１０においては、制御部７２は、変速機のアクチュエータへの制御信号を記憶することにより変速比を判定することができる。また、変速機の変速状態を検出するセンサを備えて、このセンサの出力に基づいて変速比を判定することもできる。
【０１０３】
・図１８に示す変形例のステップＳ７１において自転車１０の変速比が整数倍か否かを判定することもできる。制御部７２は、変速比が整数倍であるとき、ステップＳ２６に進まずに本処理を終了する。他方、制御部７２は、変速比が整数倍以外のとき、ステップＳ２６に進み、位相の差ΔＦが、第１の所定の範囲ΔＦＸ以内か否かを判定する。
【０１０４】
・第１実施形態の第１の比較処理のステップＳ２６の判定処理を以下のように変更することもできる。すなわち、第１のセンサ５２が出力する信号の周期と第２のセンサ６０が出力する信号の周期の差に基づいて、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしているか否かを判定する。具体的には、制御部７２は、図８に示す第１のセンサ５２から第１の信号Ｓ１が出力された今回のタイミングから前回のタイミングまでの期間を第１のセンサ５２の周期ＴＢとして演算する。次に、制御部７２は、第１のセンサ５２から第１の信号Ｓ１が出力されたときのクランク回転角度ＣＡから前回クランク回転角度ＣＡまでの期間を第２のセンサの周期ＴＡとして演算する。制御部７２は、第２のセンサの周期ＴＡと第１のセンサの周期ＴＢとを比較する。制御部７２は、第２のセンサの周期ＴＡと第１のセンサの周期ＴＢとの差ΔＴが第２の所定の範囲ΔＴＸ以内のとき、ステップＳ２７において第２のカウントＮＢをカウントアップする。制御部７２は、第２のセンサの周期ＴＡと第１のセンサの周期ＴＢとの差ΔＴが第２の所定の範囲ΔＴＸ以内ではないとき、ステップＳ２８において第２のカウントＮＢをカウントクリアする。第２比較部７８が、素子５４と素子６２Ａが出力する信号を用いて周期を比較する場合、ステップＳ２６において、制御部７２は、第１のセンサ５２から第１の信号Ｓ１が出力された周期と、第２のセンサ６０から第２の信号Ｓ２が出力された周期との差が、所定の範囲以内か否かを判定すればよい。制御部７２は、素子５４と素子６２Ｂが出力する信号を用いて周期を比較する場合、素子６２Ｂが出力する信号に基づいてクランク２２の一回転の周期を演算すればよい。
【０１０５】
・第２実施形態の第１の比較処理において図２１に示すようにステップＳ２６〜Ｓ２８の処理を省略することもできる。この場合、アシストモータ４２の駆動禁止処理を図２２に示すようにステップＳ３１を省略する。所定値ＣＮＸを０に選ぶと、制御部７２は、第２のセンサ６０が検出している回転体の回転速度が「０」になったときに第１のセンサ５２が検出している回転体の回転速度が「０」になる回数が第３の値ＮＣＸ以上になったとき、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしていると判定する。制御部７２は、第３のカウントＮＣが第３の値ＮＣＸ以上になったとき、アシストモータ４２の駆動を禁止する。
【０１０６】
・各実施形態の第２のセンサ６０は、素子６２Ａおよび素子６２Ｂの一方のみを備えるセンサに変更することもできる。
・各実施形態の自転車１０に文字または音声により報知可能な報知部を搭載することもできる。制御部７２は、第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしていると判定したとき、報知部により報知する。
【０１０７】
・各実施形態のアシストモータ４２の駆動禁止処理を省略することもできる。この場合、例えば、記憶部７４に第１のセンサ５２および第２のセンサ６０が同一の回転体を検出対象にしている旨の判定結果を記憶することもできる。
【０１０８】
・第１〜第３実施形態の第１の比較処理において、ステップＳ２１およびステップＳ２２を省略することもできる。この場合、駆動力演算部８４も省略される。
・各実施形態の判定処理において、アシストモータ４２を駆動しているときにのみ、判定処理の各処理を実行することもできる。すなわち、アシストモータ４２によるアシストを行っていないときには、判定処理を実行しない。アシストモータ４２によるアシストを行っていないときは、例えば運転者によりアシストモードがオフに設定されているとき、または、バッテリ１４の電圧が低下してアシストモータ４２を駆動できないときである。
【０１０９】
・各実施形態の判定処理において、人力駆動力に基づいてアシストモータ４２を駆動しているときにのみ、判定処理の各処理を実行することもできる。すなわち、人力駆動力に基づいてアシストモータ４２によるアシストを行っていないときには、判定処理を実行しない。人力駆動力に基づいてアシストモータ４２によるアシストを行っていないときは、例えば、人力駆動力が「０」のとき、または、車速Ｖが所定値より大きいことにより、アシストモータ４２の駆動が停止しているときである。
【０１１０】
・各実施形態において、第１の所定の範囲ΔＦＸ、第２の所定の範囲ΔＤＸ、および、第３の所定の範囲ΔＦＹの少なくとも１つを「０」にすることができる。すなわち、第１実施形態の第１の比較処理のステップＳ２６において、前回と今回の位相の差ΔＦが「０」であるとき、第１のカウントＮＡをカウントアップする。また、第１実施形態の第１の比較処理のステップＳ２３において、相違ΔＤが「０」であるとき、第２のカウントＮＢをカウントアップする。また、第１実施形態の第３の比較処理のステップＳ４３において、前回と今回の位相または周期の差ΔＦが「０」であるとき、第４のカウントＮＤをカウントクリアする。
【符号の説明】
【０１１１】
１０  自転車
１６  前輪（車輪）
１８  後輪（車輪）
２２  クランク
３２  クランク軸
４０  アシスト装置
４２  アシストモータ
５２  第１のセンサ
６０  第２のセンサ
７０  制御装置
【図１】
0006534883.tif 000002
【図２】
0006534883.tif 000003
【図３】
0006534883.tif 000004
【図４】
0006534883.tif 000005
【図５】
0006534883.tif 000006
【図６】
0006534883.tif 000007
【図７】
0006534883.tif 000008
【図８】
0006534883.tif 000009
【図９】
0006534883.tif 000010
【図１０】
0006534883.tif 000011
【図１１】
0006534883.tif 000012
【図１２】
0006534883.tif 000013
【図１３】
0006534883.tif 000014
【図１４】
0006534883.tif 000015
【図１５】
0006534883.tif 000016
【図１６】
0006534883.tif 000017
【図１７】
0006534883.tif 000018
【図１８】
0006534883.tif 000019
【図１９】
0006534883.tif 000020
【図２０】
0006534883.tif 000021
【図２１】
0006534883.tif 000022
【図２２】
0006534883.tif 000023