(57)【要約】【課題】電動モータによって駆動される車輪のスリップの検出時に、運転者の乗り心地を損ねることなくスリップを解消することができる電動補助自転車を提供する。【解決手段】電動モータ３０は、踏力による入力トルクの大きさに応じた大きさの補助駆動力を発生させて車輪を駆動する。ＭＣＵ５０は、モータトルク検出部４５から供給されるモータトルク検出信号およびモータ回転数検出部４６から供給される回転数検出信号の波形に基づいて車輪のスリップの発生を検出するとともにスリップの解消を検出する。ＭＣＵ５０は、車輪のスリップの発生を検出すると、スリップの解消が検出されるまで補助駆動力の大きさを徐々に小さくする。【選択図】図２
2014128994.tif 000002
【特許請求の範囲】
【請求項１】
ペダルに加えられた踏力による入力トルクに応じた補助駆動力を電動モータによって発生させ、前記補助駆動力によって車輪を駆動する補助駆動系と、
前記車輪のスリップの発生を検出するスリップ発生検出手段と、
前記車輪のスリップの解消を検出するスリップ解消検出手段と、
前記スリップ発生検出手段によって前記車輪のスリップの発生が検出された場合に前記スリップ解消検出手段によって前記車輪のスリップの解消が検出されるまで前記補助駆動力の大きさを徐々に小さくする制御手段と、
を含む電動補助自転車。
【請求項２】
前記制御手段は、前記スリップ発生検出手段によって前記車輪のスリップが検出された場合に前記補助駆動力の大きさを所定期間毎に一定量ずつ小さくする請求項１に記載の電動補助自転車。
【請求項３】
前記制御手段は、前記スリップ発生検出手段によって前記車輪のスリップが検出された場合に、前記補助駆動力の大きさを所定期間毎に直前の補助駆動力の大きさから一定の割引率で割り引いた大きさに設定する請求項１に記載の電動補助自転車。
【請求項４】
前記車輪に生じたスリップの規模を判定する判定手段を更に含み、
前記制御手段は、前記判定手段によって判定されたスリップの規模が大きい程、前記補助駆動力の大きさを段階的に小さくする際の各段階における引き下げ量を大きくする請求項１乃至３のいずれか１つに記載の電動補助自転車。
【請求項５】
前記制御手段が前記補助駆動力の大きさを段階的に小さくしているときの各段階における前記車輪のスリップの規模の変化を検出するスリップ規模変化検出手段を更に含み、
前記制御手段は、前記スリップ規模変化検出手段によって前記車輪のスリップの規模が小さくなったことが検出された場合に前記補助駆動力の大きさを段階的に小さくする際の引き下げ幅を直前の引き下げ幅よりも小さくする請求項１に記載の電動補助自転車。
【請求項６】
前記スリップ規模変化検出手段は、前記制御手段が前記補助駆動力の大きさを段階的に小さくしているときの各段階における前記車輪のスリップの規模の変化量を更に検出し、
前記制御手段は、前記スリップ規模変化検出手段によって検出されたスリップの規模の低下量が大きい程、前記補助駆動力の大きさを段階的に小さくする際の補助駆動力の引き下げ幅の直前の引き下げ幅に対する低下量を小さくする請求項５に記載の電動補助自転車。
【請求項７】
前記スリップ解消検出手段は、前記制御手段が前記補助駆動力の大きさを段階的に小さくする際の各段階において、前記車輪のスリップが解消しているか否かを判定する請求項１乃至６のいずれか１項に記載の電動補助自転車。
【請求項８】
前記制御手段は、前記スリップ解消検出手段によって前記車輪のスリップの解消が検出された場合に前記補助駆動力の大きさを大きくする請求項１乃至７のいずれか１項に記載の電動補助自転車。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ペダルに加えられた踏力による入力トルクに応じた補助駆動力を電動モータによって発生させ、この補助駆動力によって補助的に車輪を駆動する電動補助自転車に関する。
【背景技術】
【０００２】
ペダルに加えられた踏力を車輪に供給する人力駆動系とペダルに加えられた踏力に応じて電動モータから車輪に補助駆動力を供給する補助駆動力駆動系とを備えた電動補助自転車が知られている。電動補助自転車には、ペダルに加えられた踏力を後輪に伝達し、モータによる補助駆動力を前輪に伝達するタイプのものや、ペダルに加えられた踏力とモータによる補助駆動力との双方を後輪に伝達するタイプのものがある。
【０００３】
特に電動モータで前輪を駆動するものは、登坂発進等の状況では前輪への加重が小さくなるため、前輪においてスリップ（空転）が生じやすい。また、ハンドルを切った状況において前輪のスリップが生じると車体が横滑りを起こして転倒するおそれもある。一方、電動モータで後輪を駆動するものは踏力による駆動力とモータによる補助駆動力が共に後輪に伝達されるため、後輪が比較的大きなトルクで駆動される。従って、濡れた路面や凍結した路面等を走行する場合に後輪においてスリップが生じやすい。このように、電動補助自転車では、車体が軽い、タイヤが細い、前輪駆動のタイプが存在する、といった特有の事情により、自動二輪車と比較して車輪のスリップを生じやすい。
【０００４】
電動補助自転車における車輪のスリップ対策に関する技術として、特許文献１には、電動モータにより駆動される前輪と踏力により駆動される後輪の回転差を検出し、前輪が後輪よりも速く回転している場合に、前輪がスリップしているものと判定し、前輪のスリップを検出すると、電動モータへの通電を停止する、または通電を制限して前輪の回転トルクを小さくする、またはモータの回転速度を制御することが記載されている。
【０００５】
一方、特許文献２には、踏力センサから入力された踏力検出値から後輪車速を求め、モータ電圧、電流等から前輪車速を求め、前輪車速が後輪車速よりも大きい場合には、前輪においてスリップが発生しているものと判断することが記載されている。また、スリップ検出の他の方法として、電動モータの回転速度から求めた前輪車速の増加率が所定値以上の場合にスリップが発生したと判定することが記載されている。また、この特許文献２には、スリップが発生したと判定された場合に、補助力駆動系における補助比率を減少し、減少した補助比率を所定時間だけ保持し、その後徐々に増加して元の補助比率に戻すことが記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−１４２６３４号公報
【特許文献２】特許第４３６５１１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記したように、特許文献１および特許文献２に記載の電動補助自転車は、車輪のスリップを検出すると、電動モータの動作を直ちに停止させるか、通常のアシスト比率よりも小さいアシスト比率となるように電動モータの出力を直ちに低下させるものである。しかしながら、このような制御によると、スリップが検出されたときに電動モータによる補助駆動力が急になくなるか一気に低下することになるので、運転者は急にペダルが重くなったと感じる場合があり、運転者の乗り心地を損ねる結果となる。また、特許文献１および特許文献２に記載の電動補助自転車では、スリップが検出された場合に、電動モータの出力は予め定められた大きさに制御されることとなるので、電動モータの出力が必要以上に低下したり、モータの出力制限が不十分となってスリップの解消に到らないといった問題が生じ得る。このように、従来の電動補助自転車ではスリップ検出後における電動モータの出力制御において未だ改善の余地がある。
【０００８】
本発明は、上記した点に鑑みてなされたものであり、電動モータによって駆動される車輪のスリップの検出時に、運転者の乗り心地を損ねることなくスリップを解消することができる電動補助自転車を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の目的を達成するために、本発明に係る電動補助自転車は、ペダルに加えられた踏力による入力トルクに応じた補助駆動力を電動モータによって発生させ、前記補助駆動力によって車輪を駆動する補助駆動系と、前記車輪のスリップの発生を検出するスリップ発生検出手段と、前記車輪のスリップの解消を検出するスリップ解消検出手段と、前記スリップ発生検出手段によって前記車輪のスリップの発生が検出された場合に前記スリップ解消検出手段によって前記車輪のスリップの解消が検出されるまで前記補助駆動力の大きさを徐々に小さくする制御手段と、を含む。
【００１０】
前記制御手段は、前記スリップ発生検出手段によって前記車輪のスリップが検出された場合に前記補助駆動力の大きさを所定期間毎に一定量ずつ小さくしてもよい。
【００１１】
また、前記制御手段は、前記スリップ発生検出手段によって前記車輪のスリップが検出された場合に、前記補助駆動力の大きさを所定期間毎に直前の補助駆動力の大きさから一定の割引率で割り引いた大きさに設定してもよい。
【００１２】
また、電動補助自転車は、前記車輪に生じたスリップの規模を判定する判定手段を更に含んでいてもよく、この場合、前記制御手段は、前記判定手段によって判定されたスリップの規模が大きい程、前記補助駆動力の大きさを段階的に小さくする際の各段階における引き下げ量を大きくしてもよい。
【００１３】
また、電動補助自転車は、前記制御手段が前記補助駆動力の大きさを段階的に小さくしているときの各段階における前記車輪のスリップの規模の変化を検出するスリップ規模変化検出手段を更に含んでいてもよく、この場合、前記制御手段は、前記スリップ規模変化検出手段によって前記車輪のスリップの規模が小さくなったことが検出された場合に前記補助駆動力の大きさを段階的に小さくする際の引き下げ幅を直前の引き下げ幅よりも小さくしてもよい。
【００１４】
また、前記スリップ規模変化検出手段は、前記制御手段が前記補助駆動力の大きさを段階的に小さくしているときの各段階における前記車輪のスリップの規模の変化量を更に検出するように構成されていてもよく、この場合、前記制御手段は、前記スリップ規模変化検出手段によって検出されたスリップの規模の低下量が大きい程、前記補助駆動力の大きさを段階的に小さくする際の補助駆動力の引き下げ幅の直前の引き下げ幅に対する低下量を小さくしてもよい。
【００１５】
また、前記スリップ解消検出手段は、前記制御手段が前記補助駆動力の大きさを段階的に小さくする際の各段階において、前記車輪のスリップが解消しているか否かを判定してもよい。
【００１６】
また、前記制御手段は、前記スリップ解消検出手段によって前記車輪のスリップの解消が検出された場合に前記補助駆動力の大きさを大きくしてもよい。
【発明の効果】
【００１７】
本発明に係る電動補助自転車によれば、電動モータによって駆動される車輪のスリップの検出時に、運転者の乗り心地を損ねることなくスリップを解消することができる電動補助自転車を提供することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態に係る電動補助自転車の構成を示す側面図である。
【図２】本発明の実施形態に係るモータ制御系の構成を示すブロック図である。
【図３】図３（ａ）〜図３（ｃ）は、それぞれ、本発明の実施形態に係る入力トルク検出信号、モータ出力指令値、モータトルク検出信号および回転数検出信号の時間推移を示した図である。
【図４】図４（ａ）は、本発明の実施形態に係る電動補助自転車の発進時におけるモータトルク検出信号の時間推移を示す図である。図４（ｂ）は、本発明の実施形態に係る電動補助自転車の発進時における回転数検出信号の時間推移を示す図である。
【図５】図５（ａ）は、本発明の実施形態に係る電動補助自転車の走行時におけるモータトルク検出信号の時間推移を示す図である。図５（ｂ）は、本発明の実施形態に係る電動補助自転車の走行時における回転数検出信号の時間推移を示す図である。
【図６】本発明の実施形態に係るスリップ検出処理プログラムにおける処理の流れを示すフローチャートである。
【図７】図７（ａ）および図７（ｂ）は、本発明の実施形態に係るスリップ解消処理が実行された場合における電動モータにおけるアシスト比率の時間推移を示す図である。
【図８】本発明の実施形態に係るスリップ解消処理プログラムにおける処理の流れを示すフローチャートである。
【図９】本発明の実施形態に係る前輪のスリップが解消したときのモータトルク検出信号および回転数検出信号の時間推移を示した図である。
【図１０】図１０（ａ）は、本発明の実施形態に係るモータ出力回復処理中におけるアシスト比率の時間推移を示した図である。図１０（ｂ）は、本発明の実施形態に係るモータ出力回復処理中における電動モータにおけるトルク上限値の時間推移を示した図である。
【図１１】本発明の実施形態に係る走行制御プログラムにおける処理の流れを示すフローチャートである。
【図１２】本発明の他の実施形態に係るスリップ検出処理プログラムにおける処理の流れを示すフローチャートである。
【図１３】図１３（ａ）および図１３（ｂ）は、本発明の他の実施形態に係るスリップ解消処理中におけるアシスト比率の時間推移を示した図である。
【図１４】本発明の他の実施形態に係るスリップ解消処理プログラムにおける処理の流れを示すフローチャートである。
【図１５】本発明の実施形態に係るスリップ解消処理中におけるモータトルク検出信号の時間推移を示した図である。
【図１６】図１６（ａ）は、本発明の他の実施形態に係る出力回復処理中におけるアシスト比率の時間推移を示す図である。図１６（ｂ）は本発明の他の実施形態に係る出力回復処理中における電動モータのトルク上限値の時間推移を示す図である。
【図１７】本発明の実施形態に係るアシストモード切替処理プログラムにおける処理の流れを示すフローチャートである。
【図１８】本発明の実施形態に係る入力トルク検出部から出力される入力トルク信号の波形を示す図である。
【図１９】本発明の他の実施形態に係るアシストモード切替処理プログラムにおける処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１９】
以下に、本発明の実施形態について図面を参照しつつ説明する。なお、各図面において同一または等価な構成要素および部分には同一の参照符号を付与している。また、以下の説明では、運転者によってペダルに加えられた踏力で後輪を駆動すると共に、電動モータによる補助駆動力で前輪を駆動するタイプの電動補助自転車に本発明を適用する場合を例示する。
【００２０】
[第１の実施形態]
電動補助自転車１は、フロントフォーク１１、ヘッドパイプ１２、ダウンチューブ１３、シートチューブ１４、シートステー１５、チェーンステー１６からなるフレームを有している。前輪２１はフロントフォーク１１に回動自在に取り付けられ、後輪２２はシートステー１５とチェーンステー１６との交点に回動自在に取り付けられている。
【００２１】
ヘッドパイプ１２には、ハンドルステム２３が回動自在に挿通され、ハンドルステム２３の上端にはハンドル２４が取り付けられている。一方、シートチューブ１４には、シートポスト２５が嵌合されており、シートポスト２４の上端にはサドル２６が取り付けられている。
【００２２】
ペダル２７は、クランク２８を介してスプロケット（図示せず）に接続されている。運転者がペダル２７に踏力を加えることによりスプロケットが回転し、スプロケットが回転することによってチェーン２９を介して後輪２２に駆動力が伝達されるようになっている。
【００２３】
電動モータ３０は、前輪２１の車軸に装着され、前輪２１を回転させる駆動力を生成する。電動モータ３０の回転は、減速機構（図示せず）によって減速され、前輪２１に伝達されるように構成されている。電動モータ３０は、例えばブラシレスＤＣモータによって構成することができる。
【００２４】
電動モータ３０を駆動するための電力は、シートチューブ１４に沿って着脱可能に設けられたバッテリ３１から供給される。バッテリ３１は、例えばリチウムイオン二次電池により構成され、充電を行うことによって繰り返し使用することが可能となっている。
【００２５】
図２は、電動補助自転車１における、電動モータ３０の出力制御を行うためのモータ制御系の構成を示すブロック図である。
【００２６】
電源回路４１は、例えばチョッパ方式の降圧型ＤＣ−ＤＣコンバータを含んで構成され、バッテリ３１から出力される直流電圧を降圧し、これをＭＣＵ（Micro Controller Unit）５０の駆動電圧としてＭＣＵ５０に供給する。
【００２７】
入力トルク検出部４２は、運転者がペダルを踏み込む際の踏力（トルク）を検出し、検出した入力トルクの大きさを示す入力トルク検出信号をＭＣＵに供給する。入力トルク検出部４２は、例えば、クランク２８のクランク軸とスプロケット（図示せず）との間に入力トルクに応じて変位するばね等の弾性体を設け、入力トルクに応じた回転部での弾性体の変位量をカムや遊星ギヤ等を用いて固定部での変位量に変換し、この変位量をポテンションメータ等を用いて電気信号に変換する公知のトルクセンサを含んで構成されていてもよい。また、入力トルク検出部４２は、磁歪効果を持つ磁歪材と検出用コイルとで構成された、公知の非接触式のトルクセンサを含んで構成されていてもよい。
【００２８】
操作・表示部４３は、図２に示す制御系全体の起動および停止を切り替える電源スイッチ、電動モータによる補助駆動力の大きさを切り替えるためのアシストモード切替スイッチなどを含む操作入力部と、走行スピード、バッテリ残量などを表示する表示部と、を一体的に構成したものである。操作部に対する操作入力は、信号配線（図示せず）を介してＭＣＵ５０に供される。また、表示部は、ＭＣＵ５０から共有される情報に基づいて各種の表示を行う。操作・表示部４３は、運転者がその操作・表示面を操作および視認しやすいように、例えばハンドル２４に取り付けられている。
【００２９】
モータ駆動回路４４は、ＭＣＵ５０から供給される制御信号に基づいて電動モータ３０を駆動するための駆動電力をバッテリ３１から取り出して電動モータ３０に供給する。モータ駆動回路４４は、例えばＰＷＭ（pulse width modulation）方式によって電動モータ３０の駆動を行うものであってもよい。電動モータ３０は、モータ駆動回路４４から供給される駆動電力に応じた補助駆動力を発生させ、前輪２１を回転駆動する。
【００３０】
モータトルク検出部４５は、電動モータ３０のトルクを検出し、検出したトルクの大きさを示すモータトルク検出信号をＭＣＵ５０に供給する。ここで、電動モータ３０が発生させるトルクは、電動モータ３０に供給される電流に比例する。従って、モータトルク検出部４５は、電動モータ３０に供給される電流に基づいて電動モータ３０のトルクを検出してもよい。
【００３１】
モータ回転数検出部４６は、電動モータ３０の回転数を検出し、検出した回転数を示す回転数検出信号をＭＣＵ５０に供給する。例えば、電動モータ３０がブラシレスＤＣモータによって構成される場合には、マグネットロータの回転位置を検出するためにホール素子などの磁気センサが電動モータ３０に付随して設けられる。本実施形態では、モータ回転数検出部４６は、この電動モータ３０に付随して設けられる磁気センサを含んで構成されており、磁気センサの出力信号に基づいて電動モータ３０の回転数を検出する。なお、モータ回転数検出部４６は、発光ダイオード等の光源からの光を、スリット円盤上の位置検出パターンを通して受光素子で読み取る、公知の回転検出器（エンコーダ）を含んで構成されていてもよい。
【００３２】
ＭＣＵ５０は、単一の半導体チップにＣＰＵ、メモリ、入出力回路、タイマー回路などを含むコンピュータシステムを集積したＬＳＩ（Large Scale Integration）である。ＭＣＵ５０は、入力トルク検出部４２、モータトルク検出部４５、モータ回転数検出部４６から供給される各種信号に基づいて、走行状況に適したアシスト比率を演算によって導出する。例えば、電動モータ３０の回転数が低く且つ電動モータ３０のトルクが大きい場合には、発進直後の状態または上り坂を走行している状態等であると推測されるので、このような場合、ＭＣＵ５０は、より大きな補助駆動力を発生するべくモータ駆動回路４４にモータ出力指令値を供給する。
【００３３】
また、ＭＣＵ５０は、モータトルク検出部４５から供給されるモータトルク検出信号およびモータ回転数検出部４６から供給される回転数検出信号に基づいて電動モータ３０によって駆動される前輪２１におけるスリップを検出するスリップ検出処理を実行する。ＭＣＵ５０におけるスリップ検出処理については後述する。
【００３４】
また、ＭＣＵ５０は、前輪２１にスリップが生じた場合には、前輪２１におけるスリップが解消するまで、踏力による入力トルクに対する電動モータ３０による補助駆動力の比率（以下アシスト比率という）をスリップが解消するまで段階的に引き下げるスリップ解消処理を実行する。ＭＣＵ５０におけるスリップ解消処理については後述する。
【００３５】
また、ＭＣＵ５０は、上記のスリップ解消処理によって前輪２１のスリップが解消した後に電動モータ３０におけるアシスト比率を段階的に引き上げて電動モータ３０の出力を回復させるモータ出力回復処理を実行する。ＭＣＵ５０におけるモータ出力回復処理については後述する。
【００３６】
＜スリップ検出処理＞
以下に、ＭＣＵ５０において実行されるスリップ検出処理について説明する。ここで、図３（ａ）〜図３（ｃ）は、それぞれ、運転者によってペダル２７に加えられる踏力によってクランク軸に生じる入力トルクを示す入力トルク検出信号、入力トルクに応じてＭＣＵ５０からモータ駆動回路４４に供給されるモータ出力指令値、該モータ出力指令値に応じて駆動される電動モータ３０のトルクを示すモータトルク検出信号および電動モータ３０の回転数を示す回転数検出信号の時間推移を示した図である。図３（ａ）は、発進時において前輪２１にスリップが生じていない場合を示し、図３（ｂ）は、発進時において前輪２１にスリップが生じた場合を示し、図３（ｃ）は、走行中において前輪２１にスリップが生じた場合を示している。
【００３７】
図３（ａ）に示すように、電動補助自転車１の発進時においてＭＣＵ５０からモータ出力指令が発せられると、電動モータ３０が回転を開始する。前輪２１にスリップが生じていない場合には、電動モータ３０の回転数は比較的緩やかに上昇するので、回転数検出信号は比較的緩やかな傾斜で立ち上がる。一方、電動モータ３０のトルクは回転開始時点から急激に大きくなるのでモータトルク検出信号は急峻に立ち上がる。
【００３８】
図３（ｂ）に示すように、電動補助自転車１の発進開始時点から前輪２１にスリップが生じた場合には、電動モータ３０の負荷は、スリップが生じていない場合と比較して小さくなるので、電動モータ３０の回転数は回転開始直後から急激に大きくなる。これにより、回転数検出信号は電動モータ３０の回転開始直後から比較的急な傾きで上昇する。一方、電動モータ３０のトルクは、スリップが生じていない場合と比較して小さくなり、その結果、モータトルク検出信号の立ち上がりは比較的緩やかとなる。
【００３９】
図３（ｃ）に示すように、電動補助自転車１の走行中に前輪２１にスリップが生じた場合には、スリップ開始時点において電動モータ３０の負荷が小さくなるので、回転数はスリップ開始直後において比較的急な傾きで上昇する。その結果、回転数検出信号には信号レベルが上昇する方向に変化する変曲点が現れる。一方、電動モータ３０のトルクは、スリップ開始直後において比較的急な傾きで低下し、モータトルク検出信号には信号レベルが低下する方向に変曲点が現れる。
【００４０】
このように、発進時および走行中において前輪２１にスリップが生じた場合には、モータトルク検出部４５から出力されるモータトルク検出信号およびモータ回転数検出部４６から出力される回転数検出信号の波形は、スリップが生じていない場合とは異なる波形となる。ＭＣＵ５０は、モータトルク検出部４５から出力されるモータトルク検出信号およびモータ回転数検出部４６から出力される回転数検出信号を所定のサンプリング周期（例えば１ｍｓｅｃ）でサンプリングしてこれらの信号波形を観測することによって前輪２１のスリップを検出する。
【００４１】
図４（ａ）および図４（ｂ）は、それぞれ、電動補助自転車１の発進時において、ＭＣＵ５０が前輪２１のスリップを検出する方法を示す図である。図４（ａ）には、電動補助自転車１の発進時におけるモータトルク検出信号の時間推移が示され、図４（ｂ）には、電動補助自転車１の発進時における回転数検出信号の時間推移が示されている。各図において、スリップが生じていない場合が破線で示され、スリップが生じている場合が実線で示されている。また、各図におけるプロットは、ＭＣＵ５０における各信号のサンプリング点を示している。
【００４２】
ＭＣＵ５０は、車速が略ゼロの状態から入力トルクが加えられたことをもって電動補助自転車１の発進を検出する。ここで、車速が略ゼロとは、電動補助自転車１が完全に停車している状態若しくは、押し歩きしている状態等からの発進時における車速（例えば時速０〜５Ｋｍ／ｈ程度の範囲）をいう。以下、同様。）また、ＭＣＵ５０は、例えば、モータ回転数検出部４６から供給される回転数検出信号に基づいて車速を検出することができる。ＭＣＵ５０は、電動補助自転車１の発進の検出の直後にサンプリングしたモータトルク検出信号の信号値の増加する方向における変化量（増加量）Δｔ１が所定の閾値ｔｓよりも小さく、且つ電動補助自転車１の発進の検出の直後にサンプリングした回転数検出信号の信号値の増加する方向における変化量（増加量）Δｒ１が所定の閾値よりも大きい場合には、前輪２１にスリップが生じているものと判定する。図４（ａ）および図４（ｂ）には、電動補助自転車１の発進検出後、１つめのサンプリング点における信号値と２つめのサンプリング点の信号値を用いてスリップ検出を行う場合が例示されている。なお、電動補助自転車１の発進の検出直後における２以上の複数のサンプリング点を用いてスリップ検出を行うこととしてもよい。また、変化量Δｔ１および変化量Δｒ１の閾値は、入力トルク検出部４２から出力される入力トルク信号に応じて変化させてもよい。
【００４３】
図５（ａ）および図５（ｂ）は、それぞれ、電動補助自転車１の走行時において、ＭＣＵ５０が前輪２１のスリップを検出する方法を示す図である。図５（ａ）には、電動補助自転車１の走行時におけるモータトルク検出信号の時間推移が示され、図５（ｂ）には、電動補助自転車１の走行時における回転数検出信号の時間推移が示されている。各図において、スリップが生じていない場合が破線で示され、スリップが生じている場合が実線で示されている。また、各図におけるプロットは、ＭＣＵ５０における各信号のサンプリング点を示している。
【００４４】
ＭＣＵ５０は、例えば、モータ回転数検出部４６から供給される回転数検出信号に基づいて車速を検出することができるので、この回転数検出信号に基づいて電動補助自転車が走行中であることを検出することができる。ＭＣＵ５０は、電動補助自転車１が走行中であることを検出した場合には、サンプリングしたモータトルク検出信号の信号値が低下する方向に変化する変曲点と、サンプリングした回転数検出信号の信号値が増加する方向に変化する変曲点とが同時に出現した場合に、前輪２１にスリップが生じているものと判定する。例えば、ＭＣＵ５０は、モータトルク検出信号の信号値が前回サンプリングした信号値に対して低下する方向に変化する変化量Δｔ２が所定の閾値よりも大きく、且つサンプリングした回転数検出信号の信号値が前回サンプリングした信号値に対して上昇する方向に変化する変化量Δｒ２が所定の閾値よりも大きい場合には、前輪２１にスリップが生じているものと判定してもよい。
【００４５】
図６は、ＭＣＵ５０において実行されるスリップ検出処理プログラムにおける処理の流れを示すフローチャートである。当該プログラムは、ＭＣＵ５０内に形成された不揮発性メモリ（図示せず）に予め格納されている。
【００４６】
ステップＳ１において、ＭＣＵ５０は、モータトルク検出部４５から出力されるモータトルク検出信号およびモータ回転数検出部４６から出力される回転数検出信号の信号値をサンプリングする。
【００４７】
ステップＳ２において、ＭＣＵ５０は、現在、電動補助自転車１が発進状態にあるか否かを判断する。ＭＣＵ５０は、例えば、車速が略ゼロの状態から入力トルクが加えられた場合に電動補助自転車１の発進を検出する。ＭＣＵ５０は発進を検出した場合に処理をステップＳ３に移行し、それ以外の場合には処理をステップＳ４に移行する。
【００４８】
ステップＳ３において、ＭＣＵ５０は、前回サンプリングしたモータトルク検出信号の信号値に対する今回ステップＳ１においてサンプリングしたモータトルク検出信号の信号値の変化量（増加量）Δｔ１が所定の閾値ｔｓ１よりも小さく（Δｔ１＜ｔｓ１）、且つ、前回サンプリングした回転数検出信号の信号値に対する今回ステップＳ１においてサンプリングした回転数検出信号の信号値の変化量（増加量）Δｒ１が所定の閾値ｒｓ１よりも大きい（Δｒ１＞ｒｓ１）か否かを判断する。ＭＣＵ５０は、本ステップＳ３において、肯定判定を行った場合には処理をステップＳ６に移行し、否定判定を行った場合には本ルーチンを終了させる。
【００４９】
一方、ステップＳ４において、ＭＣＵ５０は、現在、電動補助自転車１が走行状態にあるか否かを判断する。ＭＣＵ５０は、例えば、モータ回転数検出部４６から供給される回転数検出信号に基づいて車速を検出することができるので、この回転数検出信号に基づいて電動補助自転車が走行中であることを検出することができる。ＭＣＵ５０は電動補助自転車１が走行中であることを検出した場合には処理をステップＳ５に移行し、それ以外の場合は、本ルーチンを終了させる。
【００５０】
ステップＳ５において、ＭＣＵ５０は、モータトルク検出信号の信号値が低下する方向に変化する変曲点が出現し、且つ、回転数検出信号の信号値が増加する方向に変化する変曲点が出現したか否かを判断する。例えば、前回サンプリングしたモータトルク検出信号の信号値に対する今回ステップＳ１においてサンプリングしたモータトルク検出信号の信号値の変化量（減少量）Δｔ２が所定の閾値ｔｓ２よりも大きく、且つ、前回サンプリングした回転数検出信号の信号値に対する今回ステップＳ１においてサンプリングした回転数検出信号の信号値の変化量（増加量）Δｒ２が所定の閾値ｒｓ２よりも大きいか否かを判定することによって、上記の変曲点の出現を判定することとしてもよい。ＭＣＵ５０は、本ステップＳ５において、肯定判定を行った場合には処理をステップＳ６に移行し、否定判定を行った場合には本ルーチンを終了する。
【００５１】
ステップＳ６において、ＭＣＵ５０は、前輪２１にスリップが生じているものと判断して、スリップ検出フラグをセットして本ルーチンを終了させる。
【００５２】
このように、ＭＣＵ５０は、電動補助自転車１が発進状態であるのか走行中であるのかに応じて異なるアルゴリズムで前輪２１のスリップを検出する。また、ＭＣＵ５０は、モータトルク検出信号と回転数検出信号の双方の波形に基づいて前輪２１のスリップを検出する。このようなスリップ検出方法によれば、確実かつ迅速なスリップ検出を実現することができる。また、このようなスリップ検出方法によれば、既存の構成部品を用いてスリップ検出を行うことが可能であり、スリップ検出を行うためにのみ使用される部品の追加を要しない。すなわち、前輪と後輪の回転数の差に応じてスリップを検出する場合よりも簡便な構成とすることができる。
【００５３】
＜スリップ解消処理＞
以下に、ＭＣＵ５０において実行されるスリップ解消処理について説明する。ＭＣＵ５０は、上記のスリップ検出処理において前輪２１のスリップを検出した場合には、前輪２１に生じたスリップを解消するスリップ解消処理を実行する。
【００５４】
図７（ａ）および図７（ｂ）は、前輪２１のスリップが検出され、スリップ解消処理が実行された場合における、電動モータ３０におけるアシスト比率の時間推移を例示したものである。図７（ａ）および図７（ｂ）におけるプロットは、ＭＣＵ５０からモータ駆動回路４４に供給されるモータ出力指令値の出力タイミングを示している。ＭＣＵ５０は、所定の周期（例えば１ｍｓｅｃ）でモータ出力指令値を発する。電動モータ３０におけるアシスト比率は、ＭＣＵ５０から発せられるモータ出力指令値によって制御されることとなる。
【００５５】
図７（ａ）および図７（ｂ）に示すように、ＭＣＵ５０は、前輪２１のスリップを検出すると、電動モータ３０におけるアシスト比率を段階的に引き下げるべくモータ出力指令値をモータ駆動回路４４に供給する。アシスト比率を段階的に引き下げることにより、電動モータ３０による補助駆動力は段階的に小さくなる。
【００５６】
図７（ａ）には、前輪２１のスリップが検出された場合にアシスト比率を一定量ずつ低下させる場合が示されている。換言すれば、アシスト比率を一定の傾きで低下させる場合が示されている。例えば、スリップ検出前のアシスト比率が１００％（すなわち踏力による入力トルクと電動モータ３０による補助駆動力が１：１）であった場合において、ＭＣＵ５０は、前輪２１のスリップが検出された直後のモータ出力指令値でアシスト比率を例えば９０％まで低下させる。その後、ＭＣＵ５０は、前輪２１のスリップが解消しているか否かを判断し、スリップが解消していない場合には、さらに次のモータ出力指令値でアシスト比率を８０％まで低下させ、前輪２１のスリップが解消しているか否かを判定する。ＭＣＵ５０は、このような処理を前輪２１のスリップが解消するまで繰り返す。この例では、前輪２１のスリップが解消するまで、アシスト比率は１０％ずつ引き下げられることとなる。なお、各モータ出力指令値毎のアシスト比率の引き下げ幅は適宜変更することが可能である。
【００５７】
図７（ｂ）には、前輪２１のスリップが検出された場合にアシスト比率を直前の値から一定の割引率で割り引く場合が示されている。例えば、ＭＣＵ５０は、前輪２１のスリップが検出された直後のモータ出力指令値でアシスト比率を例えば直前の値の５０％に設定する。その後ＭＣＵ５０は、前輪２１のスリップが解消しているか否かを判断し、スリップが解消していない場合には、さらに次のモータ出力指令値でアシスト比率を直前の値の５０％に設定し（すなわち、アシスト比率は当初の２５％）、前輪２１のスリップが解消しているか否かを判定する。ＭＣＵ５０は、このような処理を前輪２１のスリップが解消するまで繰り返す。なお、各モータ出力指令値毎のアシスト比率の割引率は適宜変更することが可能である。
【００５８】
図８は、ＭＣＵ５０において実行されるスリップ解消処理プログラムにおける処理の流れを示すフローチャートである。当該プログラムは、ＭＣＵ５０内に形成された不揮発性メモリ（図示せず）に予め格納されている。
【００５９】
ステップＳ１１において、ＭＣＵ５０は、直前のアシスト比率の設定値に対して引き下げを行い、これによって得られた値を今回のアシスト比率の設定値とする。ＭＣＵ５０は、例えば、図７（ａ）に示すように、引き下げ幅が一定となるようにアシスト比率の設定値を引き下げてもよいし、図７（ｂ）に示すように、割引率が一定となるようにアシスト比率の設定値を引き下げてもよい。
【００６０】
ステップＳ１２において、ＭＣＵ５０は、入力トルク検出部４２から出力される入力トルク検出信号の信号値をサンプリングする。
【００６１】
ステップＳ１３において、ＭＣＵ５０は、ステップＳ１１において導出したアシスト比率にステップＳ１２においてサンプリングした入力トルク検出信号の信号値によって示される入力トルクを乗じた大きさの補助駆動力が得られるようにモータ出力指令値を生成して、これをモータ駆動回路４４に供給する。なお、当該モータ出力指令値に対応する補助駆動力の大きさが前回算出されたモータ出力指令値に対応する補助駆動力の大きさよりも小さくなるように制限をかけてもよい。
【００６２】
ステップＳ１４において、ＭＣＵ５０は、モータトルク検出部４５から出力されるモータトルク検出信号およびモータ回転数検出部４６から出力される回転数検出信号の信号値をサンプリングする。
【００６３】
ステップＳ１５において、ＭＣＵ５０は、ステップＳ１３においてサンプリングしたモータトルク検出信号および回転数検出信号のサンプリング値に基づいて、前輪２１のスリップが解消したか否かを判定する。
【００６４】
ここで、図９を参照して、前輪２１のスリップの解消を検出する方法について説明する。図９は、前輪２１のスリップが解消してグリップが回復したときのモータトルク検出信号および回転数検出信号の時間推移を示したものである。図９に示すように、前輪２１のスリップが解消して前輪２１がグリップを回復すると、電動モータ３０の負荷が大きくなる。その結果、電動モータ３０の回転数はスリップ解消直後から比較的急な傾きで低下し、回転数検出信号には信号レベルが低下する方向に変化する変曲点が現れる。一方、電動モータ３０のトルクはスリップ解消直後から比較的急な傾きで上昇し、モータトルク検出信号には信号レベルが上昇する方向に変曲点が現れる。ＭＣＵ５０は、サンプリングしたモータトルク検出信号および回転数検出信号のサンプリング値からこれらの信号に生じた変曲点を検出した場合に、前輪２１のスリップが解消したものと判断する。
【００６５】
ＭＣＵ５０は、ステップＳ１５において、スリップが解消していないものと判断した場合には、処理をステップＳ１１に戻し、スリップが解消したものと判断した場合には、処理をステップＳ１６に移行する。ステップＳ１６において、ＭＣＵ５０は、スリップ解消フラグをセットして本ルーチンを終了させる。
【００６６】
このように、ＭＣＵ５０は、前輪２１のスリップを検出した場合には電動モータ３０の出力の引き下げと、スリップが解消しているか否かの判定とをスリップが解消するまで繰り返し実行する。すなわち、ＭＣＵ５０は、電動モータ３０の出力をスリップが解消するまで段階的に引き下げる。これにより、電動モータの出力が必要以上に低下したり、出力を低下したもののスリップの解消に到らないといった従来の制御方式における問題を解消することができる。また、本実施形態に係るスリップ解消処理によれば、電動モータ３０のアシスト比率の引き下げは、スリップを解消し得る最低限の下げ幅に抑えられるので、電動モータ３０による補助駆動力を最大限確保しつつスリップを解消することが可能となる。従って、従来の電動補助自転車と比較して、スリップが生じた場合における運転者の乗り心地を改善することができる。
【００６７】
なお、本実施形態では、電動モータ３０におけるアシスト比率を段階的に引き下げることにより電動モータ３０の出力（トルク）を低下させてスリップを解消させることとしたが、電動モータ３０の出力（トルク）の上限値を図７（ａ）および図７（ｂ）に示すような態様で段階的に引き下げることとしてもよい。これにより、入力トルク（踏力）の上昇過程においてスリップが検出された場合でも、スリップ解消処理中において電動モータ３０の出力が増加することはなくなるのでモータの出力を迅速に低下させることが可能となる。また、本実施形態では、アシスト比率を段階的に引き下げることにより電動モータ３０の出力(トルク)を段階的に低下させることとしたが、アシスト比率を連続的に引き下げることにより電動モータ３０の出力（トルク）を連続的に低下させてもよい。すなわち、ＭＣＵ５０は、前輪２１のスリップの発生の検出後、スリップの解消を判定するまでの期間において電動モータ３０の出力（トルク）が徐々に低下するようにモータ出力指令値を出力するように構成されていてればよい。
【００６８】
＜モータ出力回復処理＞
以下に、ＭＣＵ５０において実行されるモータ出力回復処理について説明する。ＭＣＵ５０は、上記のスリップ解消処理において前輪２１のスリップが解消されたものと判定した場合には、スリップ解消処理において低下したモータ出力を回復させるモータ出力回復処理を実行する。
【００６９】
モータ出力回復処理の一例を図１０（ａ）に示す。図１０（ａ）には、モータ出力回復処理中におけるアシスト比率の時間推移が例示されている。図１０（ａ）における各プロットは、ＭＣＵ５０からモータ駆動回路４４に供給されるモータ出力指令値の出力タイミングを示している。図１０（ａ）に示すように、ＭＣＵ５０は、上記のスリップ解消処理において前輪２１のスリップの解消を検出すると、電動モータ３０におけるアシスト比率を所定値まで段階的に引き上げるべくモータ出力指令値を生成する。例えば、ＭＣＵ５０は、前輪２１のスリップの解消を判定した後、所定の周期（例えば１ｍｓｅｃ）で生成するモータ出力指令値によってアシスト比率を例えば１％ずつ上昇させる。アシスト比率は、例えば、スリップ検出前の標準のアシスト比率まで回復される。このように、アシスト比率を段階的に引き上げることにより電動モータ３０の出力（トルク）は徐々に増加するので、スリップの再発を防止することができる。
【００７０】
なお、図１０（ａ）では、モータ出力回復処理においてアシスト比率を一定の傾きで段階的に引き上げることで、電動モータ３０の出力を回復させる場合を示しているが、電動モータ３０のトルクの上限値を一定の傾きで段階的に引き上げることにより電動モータ３０の出力を回復させてもよい。
【００７１】
また、アシスト比率を段階的に引き上げる際の各段階において前輪２１にスリップが生じているか否かを判定し、スリップが検出された場合には、アシスト比率の１回の引き上げ幅をそれまでよりも小さくしてもよい。また、アシスト比率を段階的に引き上げている間にスリップが検出された場合には、上記のスリップ解消処理を再度実行することにより、アシスト比率の引き下げを行い、スリップの解消を検出したときに、再度アシスト比率を引き上げるようにしてもよい。
【００７２】
モータ出力回復処理の他の例を図１０（ｂ）に示す。図１０（ｂ）には、モータ出力回復処理中における電動モータ３０のトルク上限値の時間推移が例示されている。図１０（ｂ）におけるプロットは、ＭＣＵ５０からモータ駆動回路４４に供給されるモータ出力指令値の出力タイミングを示している。図１０（ｂ）に示すように、ＭＣＵ５０は、上記のスリップ解消処理によって前輪２１のスリップの解消を検出した後は、電動モータ３０のトルクに所定の上限値Ｔｍａｘを設定し、トルク上限値Ｔｍａｘに到るまで電動モータ３０のトルク上限値を段階的に引き上げる。トルク上限値Ｔｍａｘは、スリップが検出されない場合の通常時のトルク上限値よりも低い値とされる。このように、トルク上限値Ｔｍａｘを設定することにより、入力トルク（踏力）が大きい場合でも、電動モータ３０のトルクが上限値Ｔｍａｘを超えることがなくなるので、スリップの再発を防止することができる。なお、トルク上限値Ｔｍａｘによる電動モータ３０の出力制限は、例えば所定時間（数秒程度）が経過したとき、または、ペダル２７の踏み込み動作の回数が所定数に達したとき等に解除されることが好ましい。
【００７３】
図１１は、ＭＣＵ５０において実行される、上記したスリップ検出処理、スリップ解消処理およびモータ出力回復処理をサブルーチンとして含む走行制御プログラムにおける処理の流れを示すフローチャートである。当該プログラムは、例えば、操作・表示部４３の電源スイッチ（図示せず）の操作によって図２に示すモータ制御系全体が起動されたタイミングで実行される。
【００７４】
ステップＳ１０１において、ＭＣＵ５０は、上記のスリップ検出処理（図６参照）を実行する。ステップＳ１０２において、ＭＣＵ５０は、スリップ検出フラグがセットされているか否かを判定する。ＭＣＵ５０は、スリップ検出フラグがセットされていると判定した場合には、処理をステップＳ１０３に移行し、スリップ検出フラグがセットされていないと判定した場合には処理をステップＳ１０１に戻す。ステップＳ１０３において、ＭＣＵ５０は、上記のスリップ解消処理（図８参照）を実行する。ステップＳ１０４において、ＭＣＵ５０は、スリップ解消フラグがセットされているか否かを判定する。ＭＣＵ５０は、スリップ解消フラグがセットされていると判定した場合には、処理をステップＳ１０５に移行する。ステップＳ１０５において、ＭＣＵ５０は上記のモータ出力回復処理（図１０参照）を実行して本ルーチンが終了する。
【００７５】
以上の説明から明らかなように、本発明の実施形態に係る電動補助自転車１によれば、モータトルク検出信号と回転数検出信号の双方の時間推移に基づいて前輪２１のスリップを検出するので、確実かつ迅速なスリップ検出を実現することができる。また、既存の構成部品を用いてスリップ検出を行うことが可能であるので、低コストでスリップ検出システムを構築することができる。また、自車両が発進状態であるのか走行中であるのかに応じて異なるアルゴリズムで前輪２１のスリップを検出するので、より的確なスリップ検出を実現することができる。
【００７６】
また、本発明の実施形態に係る電動補助自転車１によれば、前輪２１のスリップを検出した場合には、スリップの解消が検出されるまで、アシスト比率を段階的に引き下げることによって電動モータ３０の出力を段階的に低下させるので、電動モータの出力が必要以上に低下したり、出力の引き下げが不十分であるためにスリップが解消しないといった従来の制御方式における問題を解消することができる。また、電動モータ３０の出力の低下量は、スリップを解消し得る最低限の大きさに抑えられるので、電動モータ３０による補助駆動力を最大限確保しつつスリップを解消することが可能となる。このように、本実施形態に係る電動自転車１によれば、前輪２１にスリップが生じた場合でもアシスト機能が最大限に発揮されるので、従来の電動補助自転車と比較して、スリップが生じた場合における運転者の乗り心地を改善することができる。
【００７７】
また、本発明の実施形態に係る電動補助自転車１によれば、スリップの解消が判定された直後からモータ出力回復処理が実行されるので、電動モータ３０による補助駆動力を迅速に回復することができる。また、モータ出力回復処理では、電動モータ３０の出力が徐々に増加するようにアシスト比率が段階的に引き上げられるのでスリップの再発を防止することができる。また、他の態様によるモータ出力回復処理によれば、電動モータ３０のトルクには上限値Ｔｍａｘが設定され、前輪２１の駆動力が制限されるので、スリップの再発を防止することができる。
【００７８】
[第２の実施形態]
以下に、本発明の第２の実施形態に係る電動補助自転車について説明する。第２の実施形態に係る電動補助自転車では、ＭＣＵ５０は、上記したスリップ検出処理において、モータトルク検出部信号および回転数検出信号に基づいて路面の滑りやすさまたはスリップの規模を判定し、判定した路面のすべりやすさまたはスリップの規模に応じて、スリップ解消処理におけるアシスト比率の引き下げ量または割引率を変化させる。更に、第２の実施形態に係る電動補助自転車では、ＭＣＵ５０は、判定した路面の滑りやすさまたはスリップの規模に応じて、モータ出力回復処理におけるモータ出力の回復の態様を変化させる。
【００７９】
はじめに、ＭＣＵ５０がスリップ検出処理において路面の滑りやすさまたはスリップの規模を判定する方法について説明する。本実施形態に係る電動補助自転車においても、上記した第１の実施形態と同様、モータトルク検出信号および回転数検出信号の波形に基づいて前輪２１のスリップを検出する。
【００８０】
ここで、図４に示すように、電動補助自転車の発進時に前輪２１にスリップが発生した場合には、モータトルク検出信号の立ち上がりは、スリップが生じていない場合と比較して緩やかとなる。一方、回転数検出信号の立ち上がりは、スリップが生じていない場合と比較して急峻となる。このようなスリップが生じた場合の波形と、スリップが生じていない場合の波形との差異は、路面が滑りやすい程顕著となる。すなわち、路面がより滑りやすい状況にある場合（路面の摩擦係数がより小さい場合）には、図４（ａ）に示すモータトルク検出信号のサンプリングポイント間における変化量Δｔ１はより小さくなり、図４（ｂ）に示す回転数検出信号のサンプリングポイント間における変化量Δｒ１はより大きくなる。従って、ＭＣＵ５０は、モータトルク検出信号および回転数検出信号の波形に基づいて、発進時における前輪２１のスリップを検出するとともに、これらの信号のサンプリングポイント間における変化量Δｔ１およびΔｒ１を検出することにより路面の滑りやすさまたはスリップの規模を判定することができる。ＭＣＵ５０は、変化量Δｔ１およびΔｒ１の大きさに応じて現在走行している路面の滑りやすさまたはスリップの規模を例えば３つのランク（Ａ、Ｂ、Ｃ）のうちのいずれかに分類する。このとき、入力トルクの大きさも加味してランク付けを行うこととしてもよい。なお、変化量Δｔ１およびΔｒ１の双方およびいずれか一方の大きさに応じて路面の滑りやすさまたはスリップの規模のランク付けを行ってもよい。
【００８１】
一方、図５に示すように、電動補助自転車の走行中にスリップが発生した場合には、モータトルク検出信号および回転数検出信号の双方に変曲点が現れる。これらの信号波形に生じる変曲点は、路面が滑りやすい程顕著となる。すなわち、路面が滑りやすいほど、変曲点に対応するサンプリングポイントにおける信号値と、変曲点の直後のサンプリングポイント（スリップ検出点に対応するサンプリングポイント）における信号値とのレベル差Δｔ２およびΔｒ２は大きくなる。従って、ＭＣＵ５０は、モータトルク検出信号および回転数検出信号の波形に基づいて、走行中における前輪２１のスリップを検出するとともに、これらの信号の変曲点とスリップ検出点との間の信号値の変化量Δｔ２およびΔｒ２を検出することにより路面の滑りやすさまたはスリップの規模を判定することができる。ＭＣＵ５０は、変化量Δｔ２およびΔｒ２の大きさに応じて現在走行している路面の滑りやすさまたはスリップの規模を例えば３つのランク（Ａ、Ｂ、Ｃ）のうちのいずれかに分類する。このとき、入力トルクの大きさも加味してランク付けを行うこととしてもよい。なお、変化量Δｔ２およびΔｒ２の双方およびいずれか一方の大きさに応じて路面の滑りやすさまたはスリップの規模のランク付けを行ってもよい。
【００８２】
図１２は、上記した路面の滑りやすさまたはスリップの規模の判定処理を含む本発明の第２の実施形態に係るスリップ検出処理プログラムにおける処理の流れを示すフローチャートである。本フローチャートのステップＳ２１〜ステップＳ２６における処理は、図６に示すフローチャートのステップＳ１〜ステップＳ６と同様であるので、説明は省略する。ステップＳ２７において、ＭＣＵ５０は、発進時におけるモータトルク検出信号の変化量Δｔ１および回転数検出信号の変化量Δｒ１又は、走行時におけるモータトルク検出信号の変化量Δｔ２および回転数検出信号の変化量Δｒ２に基づいて現在走行中の路面の滑りやすさまたはスリップの規模を例えば３つのランク（Ａ、Ｂ、Ｃ）のうちのいずれかにランク付けする。ここでは、滑りやすい順にＡランク、Ｂランク、Ｃランクとする。ＭＣＵ５０は、ランク付けの結果をメモリに格納して本ルーチンが終了する。
【００８３】
次に、ＭＣＵ５０が、スリップ解消処理において、路面の滑りやすさまたはスリップの規模のランクに応じてアシスト比率の引き下げ量または引き下げ率を変化させる態様について説明する。
【００８４】
図１３（ａ）は、スリップ解消処理において、路面の滑りやすさまたはスリップの規模に応じてアシスト比率の引き下げ幅を変化させる場合を例示した図である。ＭＣＵ５０は、スリップ検出処理において、現在走行中の路面の滑りやすさまたはスリップの規模をＣランクと判定した場合には、図１３（ａ）において一点鎖線で示すように、アシスト比率の１回の引き下げ幅を比較的小とする。すなわち、比較的小さい傾きでアシスト比率を低下させる。一方、ＭＣＵ５０は、現在走行中の路面の滑りやすさまたはスリップの規模をＡランクと判定した場合には、図１３（ａ）において破線で示すように、アシスト比率の１回の引き下げ幅を比較的大とする。すなわち、比較的大きい傾きでアシスト比率を低下させる。一方、ＭＣＵ５０は、現在走行中の路面の滑りやすさまたはスリップの規模をＢランクと判定した場合には、図１３（ａ）において実線で示すように、アシスト比率の１回の引き下げ幅を中程度とする。すなわち、Ａランクにおける傾きとＣランクにおける傾きの中間の傾きでアシスト比率を低下させる。
【００８５】
図１３（ｂ）は、路面の滑りやすさまたはスリップの規模に応じて直前のアシスト比率の割引率を変化させる場合を例示した図である。この場合、ＭＣＵ５０は、スリップ検出処理において、現在走行中の路面の滑りやすさまたはスリップの規模をＣランクと判定した場合には、図１３（ｂ）において一点鎖線で示すように、直前のアシスト比率に対する割引率を比較的小とする。例えば、ＭＣＵ５０は、アシスト比率を直前の値の８０％（割引率２０％）に設定する処理をスリップが解消するまで繰り返す。一方、ＭＣＵ５０は、現在走行中の路面の滑りやすさまたはスリップの規模をＡランクと判定した場合には、図１３（ｂ）において破線で示すように、直前のアシスト比率に対する割引率を比較的大とする。例えば、ＭＣＵ５０は、アシスト比率を直前の値の４０％（割引率６０％）に設定する処理をスリップが解消するまで繰り返す。一方、ＭＣＵ５０は、現在走行中の路面の滑りやすさまたはスリップの規模をＢランクと判定した場合には、図１３（ｂ）において実線で示すように、直前のアシスト比率に対する割引率を中程度とする。例えば、ＭＣＵ５０は、アシスト比率を直前の値の６０％（割引率４０％）に設定する処理をスリップが解消するまで繰り返す。
【００８６】
比較的滑りにくいＣランクの路面の場合、前輪２１の駆動力をわずかに低下さればスリップは解消されるものと考えられる。従って、スリップ解消処理においてアシスト比率の１回の引き下げ幅または割引率を小さくすることにより、アシスト比率を最大限に確保しつつスリップの解消を行うことが可能となる。
【００８７】
一方、非常に滑りやすいＡランクの路面の場合、前輪２１の駆動力をわずかに低下させてもスリップは解消されない可能性が高いと考えられる。従って、スリップ解消処理においてアシスト比率の１回の引き下げ幅または割引率を大きくすることにより、迅速にスリップを解消することが可能となる。
【００８８】
図１４は、路面の滑りやすさまたはスリップの規模の判定結果に応じてアシスト比率の引き下げ幅または割引率を決定して段階的にアシスト比率の引き下げを行う本発明の第２の実施形態に係るスリップ解消処理プログラムにおける処理の流れを示すフローチャートである。
【００８９】
ステップＳ３１において、ＭＣＵ５０は、上記のスリップ検出処理のステップＳ２７においてメモリに格納した路面の滑りやすさまたはスリップの規模のランクを当該メモリから読み出す。
【００９０】
ステップＳ３２において、ＭＣＵ５０は、路面の滑りやすさまたはスリップの規模のランクとアシスト比率の引き下げ幅または割引率とが対応づけられたテーブルを参照することにより読み出したランクに対応するアシスト比率の引き下げ幅または割引率を決定する。
【００９１】
ステップＳ３３において、ＭＣＵ５０は、ステップＳ３２にて決定した引き下げ幅または割引率にて直前のアシスト比率の設定値に対して引き下げを行い、これによって得られた値を今回のアシスト比率の設定値とする。
【００９２】
以降のステップＳ３４〜ステップＳ３８における処理は、上記した第１の実施形態に係るスリップ解消処理のステップＳ１２〜ステップＳ１６と同様であるので説明は省略する。
【００９３】
このように本実施形態に係る電動補助自転車によれば、路面がすべりやすい程スリップ解消処理におけるアシスト比率の引き下げ幅または割引率が大きくなる。すなわち、比較的滑りやすい路面状況においてスリップが生じた場合には、アシスト比率は速やかに低下するので、スリップ検出からスリップ解消までの時間をより短くすることができる。一方、比較的滑りにくい路面状況においてスリップが生じた場合には、アシスト比率は緩やかに低下するので、補助駆動力を確保したままスリップの解消を図ることができる。
【００９４】
上記の説明では、ＭＣＵ５０が前輪２１のスリップ発生時点におけるモータトルク検出信号および回転数検出信号の波形から路面の滑りやすさまたはスリップの規模を判定し、当該判定した路面の滑りやすさまたはスリップの規模に応じてアシスト比率の引き下げ幅若しくは割引率を設定する場合を例示したが、これに限定されるものではない。すなわち、ＭＣＵ５０は、スリップ解消処理中に前輪２１のスリップの規模の変化を検出し、スリップ規模の結果に応じてアシスト比率の引き下げ幅または割引率を直前の引き下げ率または割引率から変化させてもよい。
【００９５】
この場合、ＭＣＵ５０は、スリップ解消処理中においてモータトルク検出部４５から出力されるモータトルク検出信号をモニタし、その信号レベルの変化に基づいてスリップの規模の変化を判定する。前輪２１に生じたスリップの規模がスリップ解消処理によって小さくなるにつれて電動モータ３０のトルクが大きくなる。従って、ＭＣＵ５０は、スリップ解消処理において、前輪２１のスリップ発生後のモータトルク検出信号の信号レベルの変化量に基づいてスリップ発生後におけるスリップの規模の変化を検出することが可能である。なお、ＭＣＵ５０は、スリップの規模の変化を検出するにあたり回転数検出信号を併せて使用することとしてもよい。
【００９６】
ＭＣＵ５０は、スリップ解消処理において、段階的にモータ出力を低下させる各段階においてモータトルク検出信号をサンプリングしてスリップの規模の変化を検出し、スリップの規模が小さくなったと判定した場合（すなわち、モータトルク検出信号の信号レベルが上昇した場合）には、アシスト比率の引き下げ幅または割引率がそれまでの値よりも小さくなるように若しくはそれまでの値を維持するようにモータ出力指令値を生成する。一方、ＭＣＵ５０は、スリップの規模が変化していない若しくは大きくなったと判定した場合（すなわち、モータトルク検出信号の信号レベルが変化しない若しくは低下した場合）には、アシスト比率の引き下げ幅および割引率がそれまでの値よりも大きくなるようにモータ出力指令値を生成する。
【００９７】
例えば、図１５に示すように、スリップ解消処理中において、モータトルク検出信号の任意のサンプリング点ＳＰ１における信号レベルａ０が、次のサンプリング点ＳＰ２においてａ１に増加した場合には、ＭＣＵ５０は、スリップの規模は小さくなったものと判定してスリップ解消処理におけるアシスト比率の引き下げ幅または割引率を直前の引き下げ幅または割引率よりも小さくなるように設定する。
【００９８】
一方、スリップ解消処理中において、モータトルク検出信号の信号レベルがａ０からａ２に増加した場合もＭＣＵ５０は、スリップの規模は小さくなったものと判定してスリップ解消処理におけるアシスト比率の引き下げ幅または割引率を直前の値よりも小さくなるように設定する。しかしながら、スリップ規模の低減量は、上記したａ０からａ１に変化する場合よりも小さいので、ＭＣＵ５０は、アシスト比率の引き下げ幅または割引率の直前の値に対する低下量を上記のａ０からａ１に変化する場合よりも小さくする。このようにＭＣＵ５０は、スリップの規模の変化量をモータトルク検出信号の信号レベルの変化量から定量的に検出し、スリップの規模の低減量が大きい程（すなわち、モータトルク検出信号の信号レベルの増加量が大きい程）、アシスト比率の引き下げ幅または割引率の直前の引き下げ幅または割引率に対する低下量を小さくする。なお、スリップ解消処理中においてモータトルク検出信号の信号レベルの増加量が所定値未満である場合には、アシスト比率の引き下げ幅または割引率を直前の引き下げ幅または割引率と同一の値に設定してもよい。
【００９９】
一方、スリップ解消処理中において、モータトルク検出信号の信号レベルが変化しない場合、ＭＣＵ５０は、スリップの規模に変化はないものと判断し、アシスト比率の引き下げ幅または割引率を直前の値よりも大きくなるように設定する。
【０１００】
一方、スリップ解消処理中において、モータトルク検出信号の信号レベルがａ０からａ３に低下した場合には、ＭＣＵ５０は、スリップの規模は大きくなったものと判定してスリップ解消処理におけるアシスト比率の引き下げ幅または割引率を直前の値よりも大きくなるように設定するが、スリップ規模が大きくなっているので、アシスト比率の引き下げ幅または割引率の直前の引き下げ幅または割引率に対する増加量をスリップ規模に変化がない場合よりも大きくする。
【０１０１】
このように、スリップ解消処理中におけるスリップの規模の変化に追従するようにアシスト比率の引き下げ幅または割引率を逐次変化させることによりスリップの規模が大きい程アシスト比率の引き下げ幅または割引率が大きくなるのでスリップ解消に至るまでの時間を最小とすることができる。一方、スリップの規模が小さくなるにつれてアシスト比率の引き下げ幅または割引率が小さくなるので、スリップ解消時点におけるアシスト比率を最大とすることができる。
【０１０２】
次に、ＭＣＵ５０が、モータ出力回復処理において、路面の滑りやすさまたはスリップの規模のランクに応じてモータ出力の回復のさせ方を変化させる態様について説明する。ＭＣＵ５０は、上記の第１の実施形態の場合と同様、前輪２１のスリップの解消を検出した後、電動モータ３０の出力を段階的に引き上げるモータ出力回復処理を実行する。
【０１０３】
図１６（ａ）は、本実施形態に係るモータ出力回復処理を示す図であり、モータ出力回復処理中におけるアシスト比率の時間推移を例示したものである。本実施形態では、ＭＣＵ５０は、モータ出力回復処理において、路面の滑りやすさまたはスリップの規模のランクに応じてアシスト比率の引き上げの傾きを変化させる。具体的には、ＭＣＵ５０は、上記のスリップ検出処理において、現在走行中の路面の滑りやすさまたはスリップの規模をＣランクと判定した場合には、図１６（ａ）において一点鎖線で示すように、アシスト比率の１回の引き上げ幅を比較的大とする。すなわち、比較的大きい傾きでアシスト比率を増加させる。一方、ＭＣＵ５０は、現在走行中の路面の滑りやすさまたはスリップの規模をＡランクと判定した場合には、図１６（ａ）において破線で示すように、アシスト比率の１回の引き上げ幅を比較的小とする。すなわち、比較的小さい傾きでアシスト比率を増加させる。一方、ＭＣＵ５０は、現在走行中の路面の滑りやすさまたはスリップの規模をＢランクと判定した場合には、図１６（ａ）において実線で示すように、アシスト比率の１回の引き上げ幅を中程度とする。すなわち、Ａランクにおける傾きとＣランクにおける傾きの中間の傾きでアシスト比率を増加させる。このように、路面の滑りやすさまたはスリップの規模に応じてアシスト比率の増加の傾きを変えることで、路面の滑りやすさまたはスリップの規模に応じた適切なパワーアシストを実現することができる。
【０１０４】
図１６（ｂ）は、本実施形態に係るモータ出力回復処理の他の例を示す図であり、モータ出力回復処理中における電動モータ５０のトルクの上限値の時間推移を例示したものである。図１６（ｂ）に示すように、ＭＣＵ５０は、前輪２１のスリップの解消を検出した後は、路面の滑りやすさまたはスリップの規模のランクに応じて電動モータ３０のトルクの上限値を互いに異なる値に設定してもよい。具体的には、ＭＣＵ５０は、上記のスリップ検出処理において、現在走行中の路面の滑りやすさまたはスリップの規模をＣランクと判定した場合には、図１６（ｂ）において一点鎖線で示すように、電動モータ３０のトルク上限値を比較的大きいＴｍａｘ１に設定し、トルク上限値Ｔｍａｘ１に到るまで電動モータ３０のトルク上限値を段階的に引き上げる。一方、ＭＣＵ５０は、現在走行中の路面の滑りやすさまたはスリップの規模をＡランクと判定した場合には、図１６（ｂ）において破線で示すように、電動モータ３０のトルク上限値を比較的小さいＴｍａｘ３に設定し、トルク上限値Ｔｍａｘ３に到るまで電動モータ３０のトルク上限値を段階的に引き上げる。一方、ＭＣＵ５０は、現在走行中の路面の滑りやすさまたはスリップの規模をＢランクと判定した場合には、図１６（ｂ）において実線で示すように、電動モータ３０のトルク上限値をＴｍａｘ１とＴｍａｘ３の中間のＴｍａｘ２に設定し、トルク上限値Ｔｍａｘ２に到るまで電動モータ３０のトルク上限値を段階的に引き上げる。なお、トルク上限値Ｔｍａｘ１、Ｔｍａｘ２、Ｔｍａｘ３は、いずれもスリップが検出されない場合の通常時のトルク上限値よりも低い値とされることが好ましい。また、トルク上限値Ｔｍａｘ１、Ｔｍａｘ２、Ｔｍａｘ３による電動モータ３０の出力制限は、例えば所定時間（数秒程度）が経過したとき、または、ペダル２７の踏み込み回数が所定数に達したとき等に解除されてもよい。このようなモータ出力回復処理によれば、路面が滑りやすい状況では、電動モータ３０の出力（トルク）が十分に抑制されるのでスリップの再発を効果的に防止することができる。一方、路面が滑りにくい状況では、電動モータ３０の出力（トルク）がある程度確保されるので、スリップの再発を防止しつつ十分な補助駆動力を得ることができる。従って、この場合においても路面の滑りやすさまたはスリップの規模に応じた適切なパワーアシストを実現することが可能となる。
【０１０５】
[第３の実施形態]
以下に、本発明の第３の実施形態に係る電動補助自転車について説明する。本発明の第３の実施形態に係る電動補助自転車では、ＭＣＵ５０は、前輪２１のスリップを検出した場合であって、現在走行中の路面が滑りやすい状況にあるものと判断し得る所定の条件が成立した場合に、通常のアシスト比率よりも小さいアシスト比率となるように電動モータ３０の出力を制御する「低アシストモード」に移行する。
【０１０６】
図１７は、ＭＣＵ５０において実行されるアシストモード切替処理プログラムにおける処理の流れを示すフローチャートである。当該プログラムは、ＭＣＵ５０内に形成された不揮発性メモリ（図示せず）に予め格納されている。当該プログラムは、例えば、操作・表示部４３の電源スイッチ（図示せず）の操作によって図２に示す制御系全体が起動されたタイミングで実行される。
【０１０７】
ステップＳ４１において、ＭＣＵ５０は、前輪２１にスリップが生じたか否かを判定する。前輪２１のスリップ検出は、上記したスリップ検出処理（図６参照）に準じて行うことが可能である。ＭＣＵ５０は、本ステップにおいてスリップを検出すると処理をステップＳ４２に移行する。なお、ＭＣＵ５０は、本ステップにおいてスリップを検出した後、上記の第１の実施形態および第２の実施形態において示したスリップ解消処理およびモータ出力回復処理を実行してもよい。
【０１０８】
ステップＳ４２において、ＭＣＵ５０は、低アシストモードへの移行条件が成立したか否かを判定する。ＭＣＵ５０は、例えば、上記した一連のスリップ検出処理、スリップ解消処理およびモータ出力回復処理が、最初のスリップ検出時点から所定期間内（例えば５秒間）において所定回数（例えば３回）実行された場合に、現在走行中の路面は滑りやすい状況であるものと判断して低アシストモードへの移行条件が成立したものと判定してもよい。
【０１０９】
また、ＭＣＵ５０は、例えば運転者による連続する２回のペダルの踏み込み動作の各々に関連して前輪２１のスリップを検出した場合に、現在走行中の路面は滑りやすい状況であるものと判断して低アシストモードへの移行条件が成立したものと判定してもよい。
【０１１０】
また、ＭＣＵ５０は、最初のスリップ検出時点から所定期間内（例えば１０秒間）に行われる複数回のペダルの踏み込み動作のうちのいずれか１回または複数回のペダルの踏み込み動作に関連して前輪２１のスリップを検出した場合に低アシストモードへの移行条件が成立したものと判定してもよい。なお、ＭＣＵ５０は、例えば、ペダルの踏み込み動作に対応してピークを生ずる図１８に示すような入力トルク信号をモニタすることで、運転者によるペダルの踏み込み動作のタイミングを検出することができる。
【０１１１】
ＭＣＵ５０は、ステップＳ４２において低アシストモードへの移行条件が成立したものと判定した場合には処理をステップＳ４３に移行し、移行条件が成立していないものと判定した場合には処理をステップＳ４１に戻す。
【０１１２】
ステップＳ４３において、ＭＣＵ５０は、アシスト比率の設定値を、スリップ検出前のアシスト比率の設定値よりも小さい値に設定することにより、アシストモードを通常モードから低アシストモードに移行する。低アシストモードに移行した後は、ＭＣＵ５０は、入力トルク検出部４２から供給される入力トルク信号によって示される入力トルク（踏力）の大きさに低アシストモードにおけるアシスト比率を乗じた大きさの補助駆動力で前輪２１を駆動するべくモータ出力指令値を生成してこれをモータ駆動回路４４に供給する。
【０１１３】
ステップＳ４４において、ＭＣＵ５０は、低アシストモードの解除条件が成立したか否かを判定する。ＭＣＵ５０は、例えば、低アシストモードへの移行を開始してから所定期間（例えば１０秒）経過したときに、低アシストモードの解除条件が成立したものと判定してもよい。また、ＭＣＵ５０は、低アシストモードに移行してからの運転者によるペダルの踏み込み回数が所定数（例えば３回）に達したときに低アシストモードの解除条件が成立したものと判定してもよい。また、ＭＣＵ５０は、低アシストモードに移行してからの走行距離が所定値に達したときに低アシストモードの解除条件が成立したものと判定してもよい。また、ＭＣＵ５０は、低アシストモードに移行後、所定期間（例えば１０秒間）継続して前輪２１のスリップが検出されない場合に低アシストモードの解除条件が成立したものと判定してもよい。ＭＣＵ５０は、低アシストモードの解除条件が成立したものと判定すると処理をステップＳ４５に移行する。
【０１１４】
ステップＳ４５において、ＭＣＵ５０は、低アシストモードを解除して、電動モータ３０によるアシスト比率を、低アシストモードにおけるアシスト比率からスリップ検出前の通常モードにおけるアシスト比率に切り替える。通常モードに移行した後は、ＭＣＵ５０は、入力トルク検出部４２から供給される入力トルク信号によって示される入力トルク（踏力）の大きさに通常モードにおけるアシスト比率を乗じた大きさの補助駆動力で前輪２１を駆動するべくモータ出力指令値を生成してこれをモータ駆動回路４４に供給する。
【０１１５】
このように、本実施形態に係る電動補助自転車によれば、前輪２１におけるスリップの発生状況によって低アシストモードへの移行条件が成立したか否かが判定され、低アシストモードへの移行条件が成立した場合には、電動モータ３０におけるアシスト比率がスリップ発生前のアシスト比率よりも小さい値に設定される。このようなアシスト切替制御によれば、比較的滑りやすい路面の走行時においては、アシスト比率が通常よりも小さい値に設定されるので、スリップの再発を効果的に防止することが可能となる。また、低アシストモードの解除条件を設けることにより、一旦低アシストモードに移行した場合でも通常モードへの復帰が可能となる。
【０１１６】
図１９は、変形例に係るアシストモード切替処理プログラムにおける処理の流れを示すフローチャートである。
【０１１７】
ステップＳ５１において、ＭＣＵ５０は、前輪２１にスリップが生じたか否かを判定する。前輪２１のスリップ検出は、上記した第２の実施形態に係るスリップ検出処理（図１２参照）に準じて行うことが可能である。すなわち、本ステップＳ５１では、スリップ検出が行われるとともに、路面の滑りやすさまたはスリップの規模のランク付けがなされる。
【０１１８】
ステップＳ５２において、ＭＣＵ５０は、路面の滑りやすさまたはスリップの規模のランクをメモリに格納する。
【０１１９】
ステップＳ５３において、ＭＣＵ５０は、低アシストモードへの移行条件が成立したか否かを判定する。本ルーチンでは、路面の滑りやすさまたはスリップの規模のランクを低アシストモードへの移行条件として用いてもよい。例えば、路面の滑りやすさまたはスリップの規模のランクがＡランクである場合に低アシストモードへの移行条件が成立したものと判定してもよい。ＭＣＵ５０は、低アシストモードへの移行条件が成立したものと判定した場合には処理をステップＳ５４に移行し、移行条件が成立していないものと判定した場合には処理をステップＳ５１に戻す。
【０１２０】
ステップＳ５４において、ＭＣＵ５０は、路面の滑りやすさまたはスリップの規模のランクをメモリから読み出す。
【０１２１】
ステップＳ５５において、ＭＣＵ５０は、電動モータ３０によるアシスト比率を、スリップ検出前の設定値よりも小さい値に設定することによりアシストモードを通常モードから低アシストモードに移行する。このとき、ＭＣＵ５０は、ステップＳ５４において読み出した路面の滑りやすさまたはスリップの規模のランクに応じて低アシストモードにおけるアシスト比率を設定する。すなわち、ＭＣＵ５０は、路面が比較的すべりやすいと判定した場合には、低アシストモードにおけるアシスト比率を比較的小さい値に設定し、路面が比較的すべりにくいと判定した場合には、低アシストモードにおけるアシスト比率を比較的大きい値に設定する。ＭＣＵ５０は、路面の滑りやすさまたはスリップの規模とアシスト比率の設定値とを対応づけたテーブルを参照することにより低アシストモードにおけるアシスト比率の設定値を導出してもよい。
【０１２２】
ステップＳ５６において、ＭＣＵ５０は、ステップＳ５４において読み出した路面の滑りやすさまたはスリップの規模のランクに応じて低アシストモードの解除条件を設定する。例えば、低アシストモードへの移行後の経過時間によって解除条件を規定する場合には、路面がすべりやすい程、解除条件としての経過時間としてより長い時間を要求することとしてもよい。例えば、ＭＣＵ５０は、路面が比較的すべりやすいと判定した場合には、「低アシストモードに移行後１０秒経過すること」を解除条件として設定し、路面が比較的すべりにくいと判定した場合には、「低アシストモード移行後５秒経過すること」を解除条件として設定してもよい。
【０１２３】
また、例えば低アシストモードに移行してからの運転者によるペダルの踏み込み動作の回数によって解除条件を規定する場合には、路面が滑りやすい程、解除条件としてのペダルの踏み込み動作の回数として、より多くの回数を要求することとしてもよい。例えば、ＭＣＵ５０は、路面が比較的すべりやすいと判定した場合には、「低アシストモードに移行後ペダルの踏み込み動作が５回なされること」を解除条件として設定し、路面が比較的すべりにくいと判定した場合には、「低アシストモード移行後ペダルの踏み込み動作が１回なされること」を解除条件として設定してもよい。
【０１２４】
また、例えば低アシストモードに移行してから前輪２１のスリップの非検出期間によって解除条件を規定する場合には、路面が滑りやすい程、解除条件としてのスリップ非検出期間として、より長い非検出期間を要求することとしてもよい。例えば、ＭＣＵ５０は、路面が比較的すべりやすいと判定した場合には、「低アシストモードに移行後、前輪２１のスリップの非検出期間が１０秒継続すること」を解除条件として設定し、路面が比較的すべりにくいと判定した場合には、「低アシストモードに移行後、前輪２１のスリップの非検出期間が３秒継続すること」を解除条件として設定してもよい。
【０１２５】
ステップＳ５７において、ＭＣＵ５０は、ステップＳ５６において設定した解除条件が成立したか否かを判定し、解除条件が成立したものと判定した場合には処理をステップＳ５８に移行する。
【０１２６】
ステップＳ５８において、ＭＣＵ５０は、低アシストモードを解除して、電動モータ３０によるアシスト比率を、低アシストモードにおけるアシスト比率からスリップ検出前の通常モードにおけるアシスト比率に切り替えて本ルーチンを終了させる。
【０１２７】
このように、路面の滑りやすさまたはスリップの規模のランクに応じて低アシストモードに移行した際のアシスト比率を設定することにより、スリップが生じた場合に路面のすべりやすさに応じた適切な出力制限を行うことが可能となる。さらに、路面の滑りやすさまたはスリップの規模のランクに応じて低アシストモードの解除条件を設定することにより、スリップの再発を効果的に抑制することが可能となる。
【０１２８】
なお、上記の各実施形態では、モータトルク検出信号および回転数検出信号の波形から前輪２１のスリップを検出することとしたが、前輪２１と後輪２２との回転数差から前輪２１のスリップを検出してもよい。この場合、電動モータ３０で駆動される前輪２１の回転数は、電動モータ３０の回転数やギヤ比等から算出することができる。一方、運転者のペダルの踏み込み動作によって駆動される後輪２２の回転数は、例えば、公知の回転検出器（エンコーダ）やペダルの踏み込み動作に同期した入力トルク信号の周期から算出することが可能である。
【０１２９】
また、上記の各実施形態では、電動モータ３０で前輪２１を駆動するタイプの電動補助自転車に本発明を適用する場合を例示したが、後輪を電動モータで駆動するタイプの電動補助自転車に本発明を適用することも可能である。
【符号の説明】
【０１３０】
１  電動補助自転車
２１  前輪
２２  後輪
３０  電動モータ
３１  バッテリ
４２  入力トルク検出部
４４  モータ駆動回路
４５  モータトルク検出部
４６  モータ回転数検出部
５０  ＭＣＵ
【図１】
2014128994.tif 000003
【図２】
2014128994.tif 000004
【図３】
2014128994.tif 000005
【図４】
2014128994.tif 000006
【図５】
2014128994.tif 000007
【図６】
2014128994.tif 000008
【図７】
2014128994.tif 000009
【図８】
2014128994.tif 000010
【図９】
2014128994.tif 000011
【図１０】
2014128994.tif 000012
【図１１】
2014128994.tif 000013
【図１２】
2014128994.tif 000014
【図１３】
2014128994.tif 000015
【図１４】
2014128994.tif 000016
【図１５】
2014128994.tif 000017
【図１６】
2014128994.tif 000018
【図１７】
2014128994.tif 000019
【図１８】
2014128994.tif 000020
【図１９】
2014128994.tif 000021