(57)【特許請求の範囲】
【請求項１】
ペダルが所定角度回転することを検出する検出部と、
前記検出部によって前記ペダルが所定角度回転したことを検出すると、トルクセンサの出力を較正するためのオフセット値を、処理時点において検出された前記トルクセンサの出力と前記オフセット値との差に基づき決定される補正値により補正する補正部と、
を有する制御装置。
【請求項２】
前記補正部が、
前記処理時点において検出された前記トルクセンサの出力より前記オフセット値が大きい場合に、前記補正値による補正を行う
請求項１記載の制御装置。
【請求項３】
前記補正値が、
前記差を所定値で除することで得られる
請求項１又は２記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電動アシスト車における制御技術に関する。
【背景技術】
【０００２】
電動アシスト自転車などの電動モータの制御は、トルクセンサ、車速センサやモータ電流センサなどの信号に基づき、目的に応じた電動モータの駆動制御を行っている。駆動制御は、安全性、法律順守性、アシスト感、発進性などの様々な観点においてなされるが、適切な駆動制御を行うにはセンサが常に正しい値を出力することが前提となる。
【０００３】
しかしながら、センサ類は、入力がない場合でもゼロ以外のオフセット値を出力する場合がある。このオフセット値は、主に部品のばらつきや経年劣化、温度変化によって生ずる。ここで、トルクセンサの場合には、搭乗者によるペダルの踏みつけや、ペダルへの荷重の掛け方、車両に対するセンサの組み付けのばらつきなどを要因として、ペダルのクランク軸の回転方向ではない方向に力が加わることによっても、オフセット値が生ずる場合がある。このため、ペダルを１回転させる間にも、オフセット値が変動する場合がある。さらに、あるペダル回転位置で上述した要因等により、特異的な値のオフセット値が検出されるという現象が観察される場合がある。
【０００４】
なお、ある電動アシスト自転車についての従来技術には、速度がゼロになったときに、基準値（オフセット値に相当する値）をセンサが出力する最小値で更新する。しかしながら、この技術は電動アシスト自転車が停止している状態でアシスト機能をオンにすることを想定した較正方法であって、上記のような現象を考慮するものではない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平８−２３０７５１号公報
【特許文献２】特開平８−２３０７５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従って、本発明の目的は、一側面によれば、トルクセンサの出力を適切に較正するための技術を提供することである。
【課題を解決するための手段】
【０００７】
本発明に係る制御装置は、（Ａ）ペダルが所定角度回転することを検出する検出部と、（Ｂ）検出部によってペダルが所定角度回転したことを検出すると、トルクセンサの出力を較正するためのオフセット値を、処理時点において検出されたトルクセンサの出力とオフセット値との差に基づき決定される補正値により補正する補正部とを有する。
【０００８】
オフセット値がペダル回転に応じて変動し得る場合、ペダル回転が継続して行われている間であれは問題は生じにくいが、ペダル回転位置がある回転位置で大凡固定されている間に、そのペダル回転位置に応じた特異的な値のオフセット値がセットされてしまう可能性がある。そこで、本発明では、ペダルが所定角度回転しなければ補正を行わず、さらに上記のような補正値にてオフセット値を補正することで、特異的に生じたセンサ出力の影響が抑制されてオフセット値に反映されるようになり、結果として適切にトルクセンサの出力の較正を行うことができるようになる。
【０００９】
なお、上で述べた差が負の値である場合に、上記補正値による補正を行うようにしても良い。上で述べた差が負の値である場合はオフセット値が低くなるため、慎重に補正を行うものである。
【００１０】
さらに、上で述べた補正値が、上記差を所定値で除することで得られる場合もある。なお、上記差に対して０以上で１より小さい所定値を乗ずるようにしても良い。
【００１１】
なお、上で述べたような処理をマイクロプロセッサに実施させるためのプログラムを作成することができる。当該プログラムは、例えばフレキシブル・ディスク、ＣＤ−ＲＯＭなどの光ディスク、光磁気ディスク、半導体メモリ（例えばＲＯＭ）、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、ＲＡＭ（Random Access Memory）等の記憶装置に一時保管される。
【発明の効果】
【００１２】
一側面によれば、トルクセンサの出力を適切に較正できるようになる。
【図面の簡単な説明】
【００１３】
【図１】図１は、モータ付き自転車の外観を示す図である。
【図２】図２は、モータ駆動制御器の機能ブロック図である。
【図３】図３は、実施の形態の概要を説明するための図である。
【図４】図４は、実施の形態の概要を説明するための図である。
【図５】図５は、実施の形態の概要を説明するための図である。
【図６】図６は、演算部の機能ブロック図である。
【図７】図７は、判定フラグの設定に関する処理フローを示す図である。
【図８】図８は、判定フラグの設定に関する処理フローを示す図である。
【図９】図９は、オフセット補正部の処理フローを示す図である。
【図１０】図１０は、オフセット補正部の処理フローを示す図である。
【図１１】図１１は、トルク較正部の処理フローを示す図である。
【発明を実施するための形態】
【００１４】
図１は、本実施の形態における電動アシスト車であるモータ付き自転車の一例を示す外観図である。このモータ付き自転車１は、モータ駆動装置を搭載している。モータ駆動装置は、二次電池１０１と、モータ駆動制御器１０２と、トルクセンサ１０３と、ペダル回転センサ１０４と、モータ１０５と、操作パネル１０６とを有する。
【００１５】
二次電池１０１は、例えば供給最大電圧（満充電時の電圧）が２４Ｖのリチウムイオン二次電池であるが、他種の電池、例えばリチウムイオンポリマー二次電池、ニッケル水素蓄電池などであっても良い。
【００１６】
トルクセンサ１０３は、クランク軸に取付けられたホイールに設けられており、運転者によるペダルの踏力を検出し、この検出結果をモータ駆動制御器１０２に出力する。また、ペダル回転センサ１０４は、トルクセンサ１０３と同様に、クランク軸に取付けられたホイールに設けられており、回転に応じた信号をモータ駆動制御器１０２に出力する。
【００１７】
モータ１０５は、例えば周知の三相直流ブラシレスモータであり、例えばモータ付き自転車１の前輪に装着されている。モータ１０５は、前輪を回転させるとともに、前輪の回転に応じてローターが回転するように、ローターが前輪に連結されている。さらに、モータ１０５はホール素子等の回転センサを備えてローターの回転情報（すなわちホール信号）をモータ駆動制御器１０２に出力する。
【００１８】
操作パネル１０６は、例えばアシストの有無に関する指示入力等をユーザから受け付けて、当該指示入力をモータ駆動制御器１０２に出力する。また、操作パネル１０６は、変速機の変速比（ギア比とも呼ぶ）を表す信号をモータ駆動制御器１０２に出力するものとする。
【００１９】
このようなモータ付き自転車１のモータ駆動制御器１０２に関連する構成を図２に示す。モータ駆動制御器１０２は、制御器１０２０と、ＦＥＴ（Field Effect Transistor）ブリッジ１０３０とを有する。ＦＥＴブリッジ１０３０には、モータ１０５のＵ相についてのスイッチングを行うハイサイドＦＥＴ（Ｓuh）及びローサイドＦＥＴ（Ｓul）と、モータ１０５のＶ相についてのスイッチングを行うハイサイドＦＥＴ（Ｓvh）及びローサイドＦＥＴ（Ｓvl）と、モータ１０５のＷ相についてのスイッチングを行うハイサイドＦＥＴ（Ｓwh）及びローサイドＦＥＴ（Ｓwl）とを含む。このＦＥＴブリッジ１０３０は、コンプリメンタリ型スイッチングアンプの一部を構成している。
【００２０】
また、制御器１０２０は、演算部１０２１と、ペダル回転入力部１０２２と、車速入力部１０２４と、可変遅延回路１０２５と、モータ駆動タイミング生成部１０２６と、トルク入力部１０２７と、ＡＤ入力部１０２９とを有する。
【００２１】
演算部１０２１は、操作パネル１０６からの入力（例えばギア比、オン／オフ等）、車速入力部１０２４からの入力、ペダル回転入力部１０２２からの入力、トルク入力部１０２７からの入力、ＡＤ入力部１０２９からの入力を用いて以下で述べる演算を行う。その上で、モータ駆動タイミング生成部１０２６及び可変遅延回路１０２５に対して出力を行う。なお、演算部１０２１は、メモリ１０２１１を有しており、メモリ１０２１１は、演算に用いる各種データ及び処理途中のデータ等を格納する。さらに、演算部１０２１は、プログラムをプロセッサが実行することによって実現される場合もあり、この場合には当該プログラムがメモリ１０２１１に記録されている場合もある。
【００２２】
車速入力部１０２４は、モータ１０５が出力するホール信号から現在車速（モータ駆動輪速度とも呼ぶ）を算出して、演算部１０２１に出力する。ペダル回転入力部１０２２は、ペダル回転センサ１０４からの、ペダル回転位相角等を表す信号を、ディジタル化して演算部１０２１に出力する。なお、ペダル回転センサ１０４から所定回転角度毎に生成されるパルス信号を、演算部１０２１に入力する場合もある。トルク入力部１０２７は、トルクセンサ１０３からの踏力に相当する信号をディジタル化して演算部１０２１に出力する。ＡＤ（Analog-Digital）入力部１０２９は、二次電池１０１からの出力電圧をディジタル化して演算部１０２１に出力する。また、メモリ１０２１１は、演算部１０２１とは別に設けられる場合もある。
【００２３】
演算部１０２１は、演算結果として進角値を可変遅延回路１０２５に出力する。可変遅延回路１０２５は、演算部１０２１から受け取った進角値に基づきホール信号の位相を調整してモータ駆動タイミング生成部１０２６に出力する。演算部１０２１は、演算結果として例えばＰＷＭのデューティー比に相当するＰＷＭ（Pulse Width Modulation）コードをモータ駆動タイミング生成部１０２６に出力する。モータ駆動タイミング生成部１０２６は、可変遅延回路１０２５からの調整後のホール信号と演算部１０２１からのＰＷＭコードとに基づいて、ＦＥＴブリッジ１０３０に含まれる各ＦＥＴに対するスイッチング信号を生成して出力する。
【００２４】
なお、モータ駆動の基本動作については、国際公開第２０１２／０８６４５９号パンフレット等に記載されており、本実施の形態の主要部ではないので、ここでは説明を省略する。
【００２５】
次に、本実施の形態の概要について説明する。図３に、トルクセンサ１０３の出力値（例えば電圧）の時間変化の一例を示す。トルクセンサ１０３の出力値は曲線Ｘのように変化する場合がある。曲線Ｘは、搭乗者がぺダルを漕ぐことによって生ずるペダルの回転に応じて上昇及び下降を繰り返すが、ここで注目すべきは、あるペダル回転位置でトルクの誤検出が発生し、局所的に極端に低い出力値（図中点ａ）が発生してしまうことがある点である。このような誤検出部分を除けば、曲線Ｘにおいて極小となる出力値（横軸に平行な直線Ｙ）をオフセット値（電圧の場合ゼロ点電圧とも呼ぶ）に設定しておけば、トルクセンサ１０３の出力を適切に較正できる。しかしながら、点ａにおける特異的に低い出力値をそのまま加味してオフセット値を設定してしまうと、本来より大きいペダル入力トルクが検出されることになってしまう。但し、ぺダルの回転が継続して行われる場合には、一時的に発生した点ａのような特異的に低い出力値は、曲線Ｘにおける後続の正常な極小値によって正常な値に是正され得る。
【００２６】
しかしながら、図４において曲線Ｘ’で示すように、特異的に低い出力値を発生させるようなペダル回転位置でぺダルが大凡固定されると、特異的に低い出力値が継続されることになる。このような場合には、後続の正常な極小値が現れず、オフセット値も下げられてしまう。そうすると、ペダルの回転が再開すると、その影響が出現してしまう。
【００２７】
本実施の形態では、トルクセンサ１０３の出力のみならず、ペダル回転の情報をも用いて、トルクセンサ１０３の出力を較正するためのオフセット値を補正する。より具体的には、現在のオフセット値よりも低い出力値が検出された場合であっても、図４に示すような状態でオフセット値を補正してしまうことを避けるため、ペダルが所定角度以上回転しない限り、オフセット値の補正を行わない。さらに、特異的に低い値による影響を抑制するために、現在のオフセット値と出力値との差をそのままオフセット値の補正値として採用するのではなく、現在のオフセット値と出力値との差よりも小さい値で、少しずつ補正を行うようにするものである。
【００２８】
このようにすれば、図３に示すような一時的に極端に低い値が発生したり、図４に示すように、継続的に極端に低い値が維持されたりする場合でも、すぐさまオフセット値が低い値になることを回避し、ペダル回転の進展につれてオフセット値が適切に是正されるようになる。なお、ペダル回転が繰り返されても、トルクセンサ１０３の出力が低いままであるならば、その低い出力に合せてオフセット値も低く設定される。
【００２９】
なお、本実施の形態では、オフセット値の補正や、ノイズなどにより本来ペダル入力トルクがゼロとならなければならないにも拘わらずペダル入力トルクが検出される場合に当該ペダル入力トルクを除去する又はモータ駆動を停止させるタイミングとして、惰性走行中というタイミングを利用する。
【００３０】
惰性走行中は、フリーホイールによって、ペダル回転させていたとしても当該ペダル回転による入力トルクがペダル駆動輪側には伝達されない状態となっている。このような状態では、トルクセンサ１０３では、本来ペダル入力トルクは検出されないはずである。
【００３１】
従って、このような状態であれば、ペダル入力トルクのオフセット値を補正するのに適している。また、惰性走行中に、ペダル入力トルクが検出されるというのは、運転者が意図して入力したトルクではなく、ノイズその他の問題によって生じたものであるから、このような誤検出されたペダル入力トルクについてはキャンセルするか又はこのようなペダル入力トルクに応じたモータ駆動を行わせないことが好ましい。
【００３２】
本実施の形態において、惰性走行中であるか否かについては、図５に示すような形で決定する。図５は、左から右に時間が経過する様子を表しており、（ａ）は、トルクセンサ１０３から出力されるペダル入力トルクの時間変化を表し、（ｂ）は、車速（ペダル駆動輪速度とも呼ぶ）及びペダル回転換算速度（＝ペダル回転速度×ギア比）の時間変化を表し、（ｃ）は、惰性走行中であるか否かを表す判定フラグの状態の時間変化を表す。
【００３３】
（ａ）に示すようにペダル入力トルクがほぼ継続する前半部分では、（ｂ）に示すように車速が徐々に上昇する。時刻ｔ１までは、車速とペダル回転換算速度とはおよそ一致した形で上昇することになるが、ペダル入力トルクが入力されないようになると、車速は徐々に減少するが、ペダル回転が抑えられているので、ペダル回転換算速度は急激に減少する。そして、時刻ｔ２になると、ペダル回転換算速度＜車速×α（１以下の係数。但し、ここでは約０．５）という関係が成り立つようになる。なお、この不等式を変形すれば、ペダル回転換算速度／車速＜αとなる。
【００３４】
このような関係が成り立つようになると、タイマを起動して猶予時間Ｔ（例えばペダル回転が数回分の４乃至５秒程度）を計測する。この間に上記のような関係を継続して満たしていれば、時刻ｔ３（＝ｔ２＋Ｔ）で、判定フラグをオンに設定し、上で述べたようなペダル入力トルクのオフセット値の補正や誤検出入力トルクのキャンセルなどの処理を行うことを可能にする。なお、判定フラグをオフにするタイミングは、ペダル回転換算速度＝車速となったタイミング（図３（ｃ）では時刻ｔ４）であり、その間にペダル回転換算速度が上昇したとしても、この条件を満たさなければ、判定フラグはオンのままになる。
【００３５】
なお、αや猶予時間Ｔは、センサの誤差やギア比の誤差などを考慮した上で、惰性走行中であることを確実に検出するためのマージンとして設定される。αを小さくするのであれば、猶予時間Ｔを短くしても良い。一方、αを大きくするのであれば、猶予時間Ｔを長くする方が好ましい。なお、αが十分に小さい値になれば猶予時間Ｔをゼロにする場合もある。また、正確なギア比が取得できる場合、センサの測定値がある程度以上の信頼性がある場合には、ペダル回転換算速度＜車速という条件を用いる場合もある。
【００３６】
次に、上で述べたようにトルクセンサ１０３の出力の較正などを行う演算部１０２１の機能ブロック図を図６に示す。演算部１０２１は、換算処理部１２０１と、判定部１２０２と、判定フラグ１２０３と、オフセット補正部１２０４と、オフセット値格納部１２０５と、トルク較正部１２０６と、アシストトルク演算部１２０７と、ＰＷＭコード生成部１２０８と、補正値格納部１２０９とを有する。アシストトルク演算部１２０７とＰＷＭコード生成部１２０８とは、モータ１０５の駆動制御部として動作する。
【００３７】
換算処理部１２０１は、ペダル回転入力部１０２２からのペダル回転入力から、ペダル回転速度を算出すると共に、当該ペダル回転速度にギア比を乗じて、ペダル回転換算速度を算出する。判定部１２０２は、車速とペダル回転換算速度とが、惰性走行中を表す所定の条件を満たしているか否かを判定し、惰性走行中であると判定する場合には、判定フラグ１２０３をオンに設定する。一方、惰性走行中である状態から脱したと判定した場合には、判定部１２０２は、判定フラグ１２０３をオフに設定する。なお、判定フラグ１２０３は、実装の一例であって、判定部１２０２の判定結果を、オフセット補正部１２０４やトルク較正部１２０６に指示する他の回路構成を採用しても良い。
【００３８】
オフセット補正部１２０４は、判定フラグ１２０３及びペダル回転入力に基づき、ペダル入力トルクのオフセット値を補正する処理を実行し、補正後のオフセット値をオフセット値格納部１２０５に格納する。なお、オフセット補正部１２０４は、補正処理の際に用いる補正値を補正値格納部１２０９に格納する。
【００３９】
さらに、トルク較正部１２０６は、判定フラグ１２０３及びペダル回転入力に基づき、オフセット値格納部１２０５に格納されているオフセット値を用いてペダル入力トルクの較正及び誤検出ペダル入力トルクの除去処理などを行う。若しくは、トルク較正部１２０６は、条件が満たされていればモータ駆動を停止させるようにしても良い。
【００４０】
アシストトルク演算部１２０７は、トルク較正部１２０６からのペダル入力トルク（ゼロの場合もある）及び車速入力部１０２４からの車速などに基づき所定の演算を行う。つづいて、ＰＷＭのデューティー比に関係するデューティーコードを、ＰＷＭコード生成部１２０８に出力する。このアシストトルク演算部１２０７の演算については、例えば国際公開第２０１２／０８６４５８号パンフレット等に詳細に述べられているような演算である。簡単に述べれば、ペダル入力トルクを所定のルールに従ってデューティー比に相当する第１のデューティーコードに変換する。車速を所定のルールに従ってデューティー比に相当する第２のデューティーコードに変換する。これら第１及び第２のデューティーコードを加算することで、ＰＷＭコード生成部１２０８に出力すべきデューティーコードを算出する。
【００４１】
場合によっては、アシストトルク演算部１２０７は、トルク較正部１２０６からの停止指示に応じて、ＰＷＭコード生成部１２０８に対してモータ駆動を停止させる指示を出力する。ＰＷＭコード生成部１２０８は、アシストトルク演算部１２０７からモータ駆動を停止させる指示を受け付けると、モータ駆動タイミング生成部１０２６等に対してモータ１０５を停止するための信号を出力する。なお、アシストトルク演算部１２０７が、直接モータ１０５を停止させる指示を出力するようにしても良い。
【００４２】
次に、本実施の形態に係る演算部１０２１による処理内容について図７及び図８を用いて説明する。
【００４３】
まず、換算処理部１２０１は、ペダル回転入力部１０２２からのペダル回転入力からペダル回転速度を算出し、さらに例えば操作パネル１０６等から入力されたギア比をペダル回転速度に乗ずることで、ペダル回転換算速度を算出する（図７：ステップＳ１）。また、判定部１２０２は、例えば車速入力部１０２４からの車速に対して係数αを乗ずることで基準速度を算出する（ステップＳ３）。なお、車速×αではなく、車速−βのような形で基準速度を算出するようにしても良い。なお、ペダル回転換算速度＜車速−βという条件となるので、β＜車速−ペダル回転換算速度というように変形される。
【００４４】
その後、判定部１２０２は、判定フラグ１２０３がオンになっているか判断する（ステップＳ５）。なお、初期的には判定フラグ１２０３及び内部フラグである猶予時間フラグについては、オフに設定されているものとする。
【００４５】
判定フラグ１２０３がオフになっている場合には（ステップＳ５：Ｎｏルート）、判定部１２０２は、基準速度（＝車速×α）＞ペダル回転換算速度となっているか否かを判断する（ステップＳ７）。この条件が満たされていない場合には、処理はステップＳ１７に移行する。すなわち、判定部１２０２は、猶予時間フラグをオフに設定する（ステップＳ１７）。なお、猶予時間フラグが既にオフになっている場合には、何もせずによい。このステップは、一旦猶予時間フラグがオンに設定されて（例えば図５の時刻ｔ２）時間の計測が開始された場合においても、猶予時間Ｔが経過する前にステップＳ７の条件を満たさなくなる場合には、元の状態に戻すために実行される。そして処理は、端子Ｂを介して図８の処理に移行する。
【００４６】
一方、ステップＳ７の条件が満たされている場合には、判定部１２０２は、猶予時間フラグがオンとなっているか否かを判断する（ステップＳ９）。猶予時間フラグが既にオンになっている場合には、処理は端子Ｃを介して図８の処理に移行する。
【００４７】
一方、猶予時間フラグがオンではない場合には、判定部１２０２は、猶予時間フラグをオンに設定する（ステップＳ１１）。そして処理は端子Ａを介して図８の処理に移行する。
【００４８】
また、判定フラグ１２０３がオンになっている場合には（ステップＳ５：Ｙｅｓルート）、判定部１２０２は、ペダル回転換算速度が車速以上となっているか否かを判断する（ステップＳ１３）。この条件を満たしていない場合には、処理は端子Ｂを介して図８の処理に移行する。一方、この条件を満たしている場合には（図５の時刻ｔ４）、判定部１２０２は、判定フラグ１２０３をオフに設定し（ステップＳ１５）、さらに猶予時間フラグもオフに設定する（ステップＳ１７）。そして、処理は端子Ｂを介して図８の処理に移行する。
【００４９】
図８の処理の説明に移行して、端子Ａの後に、判定部１２０２は、時間計測を開始する（ステップＳ１９）。そして、判定部１２０２は、計測時間が猶予時間Ｔ（閾値に相当する）に達したか判断する（ステップＳ２１）。計測時間が猶予時間Ｔに達していない場合には、処理はステップＳ２５に移行する。一方、計測時間が猶予時間Ｔに達した場合には、判定部１２０２は、判定フラグ１２０３をオンに設定する（ステップＳ２３）。
【００５０】
そして、判定部１２０２は、操作パネル１０６などから処理終了が指示されたか否かを判断する（ステップＳ２５）。処理終了が指示されていない場合には、処理は端子Ｄを介して図７のステップＳ１に戻る。一方、処理終了が指示された場合には、処理を終了する。
【００５１】
以上のようにすれば、惰性走行中には、判定フラグ１２０３はオンに設定され、惰性走行中という状態から脱した場合には、判定フラグ１２０３はオフに設定されるようになる。
【００５２】
次に、オフセット補正部１２０４の処理について図９及び図１０を用いて説明する。まず、オフセット補正部１２０４は、ペダル入力トルク（センサの出力値。センサ値とも呼ぶ）を取得する（図９：ステップＳ６１）。また、オフセット補正部１２０４は、オフセット値格納部１２０５からオフセット値を読み出す（ステップＳ６３）。なお、初期値としては、オフセット値＝ペダル入力トルクの値と設定する。さらに、オフセット補正部１２０４は、補正値格納部１２０９から補正値を読み出す（ステップＳ６５）。なお、初期値としては、補正値＝オフセット値と設定する。さらに、オフセット補正部１２０４は、差分量＝ペダル入力トルク−補正値を算出する（ステップＳ６７）。
【００５３】
そして、オフセット補正部１２０４は、ペダルが所定角度回転したか否かを判断する（ステップＳ６９）。例えば、ペダル回転センサ１０４が、ペダル１回転で例えば２４回パルス発するセンサであれば、例えば次のパルス（例えば１５度）又は所定数のパルス（所定数×１５度）を検出したか否かを判断する。ステップＳ６９の条件を満たしていない場合には、処理は端子Ｅを介して図１０の処理に移行する。
【００５４】
一方、ステップＳ６９の条件を満たしている場合には、さらに、オフセット補正部１２０４は、ステップＳ６７で算出された差分量が負の値になっているか否かを判断する（ステップＳ７１）。これは、現在のオフセット値よりも小さいペダル入力トルクが検出されたか否かを判断するものである。ステップＳ７１の条件を満たしていない場合には、処理は端子Ｅを介して図１０の処理に移行する。このように、差分量が負の値の場合には、ペダルが所定角度回転していなければ、補正値は調整されない。
【００５５】
一方、ステップＳ７１の条件を満たしている場合には、オフセット補正部１２０４は、新たな補正値を、現在の補正値＋差分量／回転定数によって更新して、補正値格納部１２０９に格納する（ステップＳ７３）。回転定数は、差分量を補正値に反映させる程度を表す定数である。例えば、現在の差分量をペダルを半回転させる間に所定角度回転する毎に分割して補正値に反映させることを想定する場合には、１回転２４パルスであれば回転定数＝１２となる。但し、１／回転定数ではなく、０以上で且つ１よりも小さい実数を差分量に乗ずるようにしても良い。このように、現在の補正値を差分量より小さい値で補正するのは、オフセット値がトルクセンサ１０３の特性から過度に低くなってしまい、正常なオフセット値が用いられる場合の補助駆動力より過大な補助駆動力が出力されて結果として適切な駆動制御が一時的に困難となってしまうことを防止するものである。ステップＳ７３では、差分量は負の値であるから、新たな補正値は、現在の補正値よりも小さい値が設定される。そして、処理は端子Ｅを介して図１０の処理に移行する。
【００５６】
図１０の処理の説明に移行して、オフセット補正部１２０４は、差分量が０以上であるか否かを判断する（ステップＳ７５）。差分量が０未満であれば、処理はステップＳ８１に移行する。一方、差分量が０以上であれば、オフセット補正部１２０４は、判定フラグ１２０３がオンであるか否かを判断する（ステップＳ７７）。判定フラグ１２０３がオンであるというのは、惰性走行中であることを表す。判定フラグ１２０３がオフである場合には、差分量が０以上であっても、現在の補正値を増加させることはない。
【００５７】
一方、判定フラグ１２０３がオンであれば、オフセット補正部１２０４は、新たな補正値を、現在の補正値＋差分量×調整定数によって更新し、補正値格納部１２０９に格納する（ステップＳ７９）。調整定数は、差分量を補正値（結果的にオフセット値）に対して反映させる度合いを表すものであり、例えば０以上１以下の値が設定される。
【００５８】
その後、オフセット補正部１２０４は、新たなオフセット値を、補正値によって更新し、オフセット値格納部１２０５に格納する（ステップＳ８１）。
【００５９】
そして、オフセット補正部１２０４は、処理終了の指示などがあったか否かを判断し（ステップＳ８３）、処理終了の指示などがない場合には、処理は端子Ｆを介して図９のステップＳ６１に戻る。例えば所定時間間隔で、ステップＳ６１乃至Ｓ８１の処理を繰り返す。なお、処理終了の指示などがあった場合には、処理を終了する。
【００６０】
以上のような処理を実行することで、オフセット値を下げる場合には、ペダルが所定角度回転した場合にのみ、抑制した形で下げるようになる。また、オフセット値を上げる場合には、惰性走行中に行うことになっている。
【００６１】
よって、トルクセンサ１０３から特異的に低い値が出力され且つある程度の期間継続されたとしても、ペダルが回転しなければ影響はない。また、ペダルが回転した場合には、ある程度オフセット値が低下するが、低すぎるオフセット値であれば、差分量が０以上となって惰性走行中に是正されるようになる。
【００６２】
次に、図１１を用いてトルク較正部１２０６の処理について説明する。
【００６３】
まず、トルク較正部１２０６は、オフセット値格納部１２０５に格納されているオフセット値を、ペダル入力トルク（センサ値）から差し引いて、較正後のペダル入力トルクを算出する（ステップＳ４１）。
【００６４】
そして、トルク較正部１２０６は、較正後ペダル入力トルクが正の値となっているか否かを判断する（ステップＳ４３）。較正後ペダル入力トルクがゼロ以下であれば、トルク較正部１２０６は、ペダル入力トルクをゼロにクリアして、アシストトルク演算部１２０７に出力するか、アシストトルク演算部１２０７等に対してモータ駆動を停止させるように指示を出力する（ステップＳ５１）。ペダル入力トルクをゼロにクリアして、アシストトルク演算部１２０７に出力する場合には、アシストトルク演算部１２０７は、ペダル入力トルクがゼロであるものとして例えば車速に基づき所定の演算を行って、ＰＷＭのデューティー比に関係するデューティーコードを、ＰＷＭコード生成部１２０８に出力する。また、ＰＷＭコード生成部１２０８は、デューティーコードに対して、ＡＤ入力部１０２９からのバッテリ電圧／基準電圧（例えば２４Ｖ）を乗じてＰＷＭコードを生成し、モータ駆動タイミング生成部１０２６に出力する。このようにして、モータ駆動が制御される。そして処理はステップＳ５３に移行する。
【００６５】
一方、較正後のペダル入力トルクが正の値となっている場合には、トルク較正部１２０６は、ペダル回転中であるか否かを、ペダル回転入力から判断する（ステップＳ４５）。ペダル回転中ではない場合には、較正後のペダル入力トルクが適切ではないので、処理はステップＳ５１に移行する。
【００６６】
一方、ペダル回転中であれば、トルク較正部１２０６は、判定フラグ１２０３がオフになっているか否かを判断する（ステップＳ４７）。判定フラグ１２０３がオンである場合には、惰性走行中であるから、処理はステップＳ５１に移行する。
【００６７】
一方、判定フラグ１２０３がオフであれば、較正後のペダル入力トルクをアシストトルク演算部１２０７に出力する。そうすると、アシストトルク演算部１２０７は、トルク較正部１２０６からの較正後のペダル入力トルク及び車速などに基づき所定の演算を行って、ＰＷＭのデューティー比に関係するデューティーコードを、ＰＷＭコード生成部１２０８に出力する。また、ＰＷＭコード生成部１２０８は、デューティーコードに対して、ＡＤ入力部１０２９からのバッテリ電圧／基準電圧（例えば２４Ｖ）を乗じてＰＷＭコードを生成し、モータ駆動タイミング生成部１０２６に出力する。このようにして、モータ駆動が制御される（ステップＳ４９）。
【００６８】
そして、トルク較正部１２０６は、処理終了が指示されたか判断する（ステップＳ５３）。そして処理終了が指示されていない場合には、処理はステップＳ４１に戻る。一方、処理終了が指示された場合には、処理を終了する。
【００６９】
このようにすれば、較正後のペダル入力トルクが正の値を有しており且つペダル回転が検出されたとしても、判定フラグ１２０３がオンとなっていれば惰性走行中であるから、較正後のペダル入力トルクをクリアしたりモータ駆動を停止することが適切な処理となる。
【００７０】
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。モータ駆動制御器１０２の一部又は全部については専用の回路で実現される場合もあれば、マイクロプロセッサがプログラムを実行することで上記のような機能が実現される場合もある。
【符号の説明】
【００７１】
１２０１  換算処理部
１２０２  判定部
１２０３  判定フラグ
１２０４  オフセット補正部
１２０５  オフセット値格納部
１２０６  トルク較正部
１２０７  アシストトルク演算部
１２０８  ＰＷＭコード生成部
１２０９  補正値格納部
【図１】
0006381321.tif 000002
【図２】
0006381321.tif 000003
【図３】
0006381321.tif 000004
【図４】
0006381321.tif 000005
【図５】
0006381321.tif 000006
【図６】
0006381321.tif 000007
【図７】
0006381321.tif 000008
【図８】
0006381321.tif 000009
【図９】
0006381321.tif 000010
【図１０】
0006381321.tif 000011
【図１１】
0006381321.tif 000012