(57)【特許請求の範囲】
【請求項１】
モータの回転センサから受信し且つ当該モータの回転位相に応じて複数のフェーズに分割可能である周期的な信号を受信して、前記複数のフェーズの各々について時間を計測する計測部と、
前記計測部により計測された前記複数のフェーズの各々についての時間を用いて、前記信号の１周期分の時間から求められる１フェーズ分の平均時間と、前記複数のフェーズのうちのあるフェーズの時間と当該あるフェーズから前記信号の１周期前の対応するフェーズの時間との平均又は加重平均とを比較して、所定の条件を満たす場合に前記回転センサのエラーを出力する判定部と、
を有する制御装置。
【請求項２】
前記判定部が、
前記平均時間と前記平均又は加重平均との比が所定範囲内であるか判断する
請求項１記載の制御装置。
【請求項３】
前記判定部は、前記所定の条件を満たす状態が所定時間継続した場合にエラーを出力する
請求項１又は２記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ駆動制御装置に関する。
【背景技術】
【０００２】
例えば、モータを搭載した電動アシスト自転車は、人力を検出するセンサ（トルクセンサ等）を用い、その検出信号に応じてモータによる電動補助力を調整（アシスト制御）するような仕組みになっている。
【０００３】
また、搭載する電池のエネルギーで、できるだけ長距離走行できるようにするために、ブレーキ時等の減速時に、モータを発電機として動作させ、エネルギー回収（回生）を行い、モータにより発電された電力により電池を充電するようにしている。
【０００４】
このような電動アシスト自転車においては、トルクセンサ等の検出信号から得られる目標トルクだけではなく、モータの現在の回転速度を考慮した上でモータ駆動制御が行われる。
【０００５】
一般にモータの回転速度の検出には、ホール素子等の回転センサから出力されるパルス信号（ホール信号）の周期を検出してその逆数を計算する方法などが用いられている。しかし、本質的に過去のパルス間隔を測定しているため、十分な精度で現在の回転速度が得られるわけではない。
【０００６】
例えば、特開平１０−２５８７８８号公報に記載されている補助動力付自転車では、回転センサから出力されるパルス間隔をタイマでカウントし、これを速度に変換し、変換された速度を、所定の時間に亘って平均化し、平均化された速度に応じた駆動力を決定している。すなわち、変換された速度を、所定の時間に亘って平均化し、平均化された速度に応じた駆動力を決定している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第２６２３４１９号公報
【特許文献２】特開２００３−２７６６７２号公報
【特許文献３】特許第３３１７０９６号公報
【特許文献４】特開平１０−２５８７８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従って、本発明の目的は、モータ駆動制御において用いられる現在速度を精度良く推定できるようにするための技術を提供することである。
【０００９】
また、本発明の他の目的は、現在速度を推定する際に用いられるモータの回転センサにおける不具合を検出できるようにするための技術を提供することである。
【課題を解決するための手段】
【００１０】
本発明の第１の態様に係るモータ駆動制御装置は、（Ａ）モータの回転センサから受信し且つ当該モータの回転位相に応じて複数のフェーズに分割可能である周期的な信号を受信して、複数のフェーズの各々について時間を計測する計測部と、（Ｂ）計測部により計測された、所定の観測区間におけるフェーズの少なくとも一部の時間に基づき、上記信号の１周期分に相当する時間と、所定の観測区間におけるあるフェーズの時間の変化量に応じた値との和を算出し、当該和から現在速度を推定する速度算出部と、推定された現在速度に応じてモータの駆動を制御する制御部とを有する。
【００１１】
このように１周期分の時間を、所定の観測区間における複数のフェーズ（例えば実施の形態の部分周期）のうちのあるフェーズの時間の変化量に応じて調整することにより、精度良く周期を算出できるので、結果として現在速度も精度良く算出できる。
【００１２】
また、上で述べた計測部は、上で述べた信号から複数のフェーズの各々について回転方向を特定するようにしても良い。この場合、上で述べた速度算出部は、所定の観測区間において回転方向が一定であり且つ所定の観測区間において複数のフェーズの各々の時間が所定時間未満である場合、観測区間における第１のフェーズの時間と第２のフェーズの時間との差により上記変化量を算出するようにしても良い。
【００１３】
通常の走行時には、このような演算によって加速補償を実施することが好ましい。なお、所定の係数については第１のフェーズ及び第２のフェーズについての検出遅延や制御遅延などから決定される。さらに、１周期分のフレームレイテンシに応じた遅延も考慮されることもある。固定の遅延を加えることもある。
【００１４】
なお、上で述べた所定の観測区間が、上記信号の１周期分の複数のフェーズと当該複数のフェーズのうち最新のフェーズに対応する上記信号の１周期前のフェーズとを含むようにしても良い。この場合、上で述べた変化量が、最新のフェーズの時間と最新のフェーズに対応する上記信号の１周期前のフェーズの時間との差で算出される場合もある。
【００１５】
また、上で述べた計測部は、上記信号から複数のフェーズの各々について回転方向を特定する場合もある。この場合、上で述べた速度算出部は、所定の観測区間において直近所定個数のフェーズ以外に、時間が所定時間以上となったか又は回転方向が反転したフェーズが含まれている場合、直近所定個数のフェーズのいずれかから上記信号の１周期相当の時間を算出し、直近所定個数のフェーズに含まれる２つのフェーズの時間差により上記変化量を算出するようにしても良い。このように、回転方向が少し反転した後であったり、走行開始した少し後の場合には、通常走行時のようには算出できないので、直近所定個数のフェーズの時間から速度を推定する。
【００１６】
なお、上で述べた直近所定個数が２であり、直近所定個数のフェーズのうち最新のフェーズから信号の１周期相当の時間が算出される場合もある。
【００１７】
さらに、上で述べた計測部は、上記信号から複数のフェーズの各々について回転方向を特定する場合もある。その場合、上で述べた速度算出部は、所定の観測区間において直近所定個数のフェーズにおいて回転方向の反転が発生しているか又は直近所定個数のフェーズの少なくともいずれかの時間が所定時間以上となっている場合には、最新のフェーズから上記信号の１周期相当の時間を算出し、当該信号の１周期相当の時間から現在速度を推定するようにしても良い。ちょうど反転を開始したり、低速になったりした場合には、このようにして対処するようにしても良い。
【００１８】
本発明の第２の態様に係る制御装置は、（Ａ）モータの回転センサから受信し且つ当該モータの回転位相に応じて複数のフェーズに分割可能である周期的な信号を受信して、複数のフェーズの各々について時間を計測する計測部と、（Ｂ）計測部により計測された複数のフェーズの各々についての時間を用いて、信号の１周期分の時間から求められる１フェーズ分の平均時間と、複数のフェーズのうちのあるフェーズの時間と当該あるフェーズから上記信号の１周期前の対応するフェーズの時間との平均又は加重平均とを比較して、所定の条件を満たす場合に回転センサのエラーを出力する判定部とを有する。
【００１９】
このようにすれば回転センサのエラーを的確に検出できるようになる。
【００２０】
また、上で述べた判定部が、平均時間と平均又は加重平均との比が所定範囲内であるか判断するようにしても良い。
【００２１】
さらに、上で述べた判定部は、所定の条件を満たす状態が所定時間継続した場合にエラーを出力するようにしても良い。一時的にエラー状態になるだけの場合もあるためである。
【００２２】
なお、第２の態様に係る制御装置は、上記エラーに応じてモータの駆動を制御する制御部をさらに有するようにしても良い。
【００２３】
以下で述べる実施の形態は例に過ぎず、上で述べた構成を実現するための態様は様々に存在する。また、ハードウエアのみではなく、ソフトウエアとプロセッサの組み合わせにて実現される場合もある。
【発明の効果】
【００２４】
一側面によれば、モータ駆動制御において用いられる、現在速度を精度良く推定できるようになる。
【００２５】
また、他の側面によれば、現在速度を推定する際に用いられるモータの回転センサにおける不具合を検出できるようになる。
【図面の簡単な説明】
【００２６】
【図１】図１は、電動アシスト自転車の外観図である。
【図２】図２は、モータ駆動制御装置の構成例を示す図である。
【図３】図３は、制御部の構成例を示す図である。
【図４】図４は、目標トルクと現在車速とを用いたモータ駆動を説明するための図である。
【図５】図５は、車速算出部の構成例を示す図である。
【図６】図６は、ホール信号を説明するための図である。
【図７】図７は、部分周期検出部の構成例を示す図である。
【図８】図８は、部分周期検出部によって生成される信号の遷移図である。
【図９】図９は、観測区間について説明するための図である。
【図１０】図１０は、動作モードを説明するための図である。
【図１１】図１１は、第２の実施の形態に係る制御部の構成例を示す図である。
【発明を実施するための形態】
【００２７】
［実施の形態１］
図１は本発明の第１の実施の形態に係る電動アシスト自転車の外観を示す図である。この電動アシスト自転車１はクランク軸と後輪がチェーンを介して連結されている一般的な後輪駆動型のものであり、二次電池１０１と、モータ駆動制御装置１０２、トルクセンサ１０３、ブレーキセンサ１０４、操作パネル１０５、モータ１０６を備えている。
【００２８】
二次電池１０１は、例えば供給最大電圧（満充電時の電圧）が２４Ｖのリチウム二次電池であるが、他の種類の二次電池を用いても良い。
【００２９】
モータ駆動制御装置１０２は、例えば前輪の上部に固定された筐体内に収容されている。なお、モータ駆動制御装置１０２の詳細については後に詳しく述べる。
【００３０】
トルクセンサ１０３は、クランク軸に設けられており、搭乗者によるペダルの踏力を検出し、検出結果をモータ駆動制御装置１０２に出力する。
【００３１】
ブレーキセンサ１０４は、例えば磁石と周知のリードスイッチとを含む。磁石は、ブレーキレバーを固定するとともにブレーキワイヤーが送通される筐体内において、ブレーキレバーに連結されたブレーキワイヤーに固定され、ブレーキレバーが握られたときにリードスイッチをオン状態にする。また、リードスイッチはその筐体内に固定されている。リードスイッチの導通信号はモータ駆動制御装置１０２に出力される。
【００３２】
操作パネル１０５は、ハンドル中央部に固定されており、操作パネルからアシスト開始などの指示情報がモータ駆動制御装置１０２に出力される。
【００３３】
モータ１０６は、例えばよく知られている三相直流ブラシレスモータであり、電動アシスト自転車１の例えば前輪に装着され、前輪を回転させるとともに、前輪の回転に応じてローターが回転するようにローターが前輪に連結されている。さらに、モータ１０６はホール素子等を備えており、ローターの回転情報をモータ駆動制御装置１０２に出力する。
【００３４】
次に、図２を用いて、モータ駆動制御装置１０２などの回路例を示す。
【００３５】
モータ駆動制御装置１０２は、制御部３００と、駆動部４００とを有する。制御部３００は、トルクセンサ１０３、ブレーキセンサ１０４及び操作パネル１０５と接続されている。さらに、制御部３００及び駆動部４００には、モータ１０６が有するホール素子からのホール信号（Ｈａｌｌ−Ｕ，Ｈａｌｌ−Ｖ，Ｈａｌｌ−Ｗ）が入力されるようになっている。
【００３６】
制御部３００は、専用の回路にて実装されることもあれば、以下で述べる処理を実行させるためのプログラムと当該プログラムを実行するプロセッサとの組み合わせにて実装されることもあれば、専用の回路とプロセッサ及びプログラムの組み合わせとにて実装されることもある。プロセッサ及びプログラムの組み合わせにて実装される場合には、不揮発性メモリにプログラムを保持しておき、プロセッサは、当該プログラムをＲＡＭ（Random Access Memory）に読み出して実行する。また、プログラムの実行に用いられる固定のデータについては、不揮発性メモリに格納されている。
【００３７】
また、制御部３００は、操作パネル１０５からアシスト開始が指示され且つトルクセンサ１０３から出力される入力トルクに相当する信号が入力されると、現在車速と目標トルクとに応じた制御信号を駆動部４００に出力する。なお、この処理には、モータ１０６に含まれるホール信号が用いられる。
【００３８】
なお、ブレーキ操作が行われ、ブレーキセンサ１０４からブレーキ信号が制御部３００に入力された場合、制御部３００は、ブレーキセンサ１０４からの入力信号に基づいて、駆動部４００の出力電圧をモータ起電力以下に制御してモータ１０６から電力を回生することによりブレーキ制御力を得ることができるようにする。なお、このような回生処理については、本実施の形態の主要部ではないのでこれ以上の説明は省略する。
【００３９】
駆動部４００は、制御部３００からの制御信号とホール信号とから駆動制御を行う駆動制御回路４１０と、ドライブ素子４２１乃至４２３を含むドライブ回路４２０と、ＦＥＴ（Field Effect Transistor）Ｑ１１乃至Ｑ３２を含む３相ブリッジ回路とを含む。
【００４０】
３相ブリッジ回路においては、Ｕ相のためにＦＥＴＱ１１及びＱ１２が直列に接続され、Ｖ相のためにＦＥＴＱ２１及びＱ２２が直列に接続され、Ｗ相のためにＦＥＴＱ３１及びＱ３２が直列に接続されている。そして、制御部３００からの制御信号に応じて駆動制御回路４１０は、ドライブ回路４２０における３つのドライブ素子４２１乃至４２３にそれぞれＰＷＭ（Pulse Width Modulation）信号（Ｕ−ＰＷＭ，Ｖ−ＰＷＭ，Ｗ−ＰＷＭ）を出力することで、各ＦＥＴのスイッチング動作を制御する。そうすると、二次電池１０１から印加される電圧Ｖbatの、モータ１０６への印加時間と非印加時間の比率（デューティー比）が調整される。このようにして、モータ１０６への供給電力（Ｖu，Ｖv，Ｖw）を調整して適切なモータ１０６の回転数が実現される。ＦＥＴＱ１１乃至Ｑ３２の具体的な駆動方法についてはよく知られているので、ここでは説明を省略する。
【００４１】
次に、図３を用いて、制御部３００の構成例を説明する。制御部３００は、目標トルク算出部３５０と、車速算出部３１０と、第１デューティー比換算部３３０と、第２デューティー比換算部３２０と、加算部３４０とを有する。
【００４２】
目標トルク算出部３５０は、トルクセンサ１０３からの入力トルクに相当する信号から目標トルクを算出して、第１デューティー比換算部３３０に出力する。第１デューティー比換算部３３０は、換算係数（デューティー比／トルクに相当する係数）を乗じるなどの処理を実施して、デューティー比換算された第１の値を算出し、加算部３４０に出力する。一方、車速算出部３１０は、ホール信号から以下で詳細に述べるように現在車速を算出し、第２デューティー比換算部３２０に出力する。第２デューティー比換算部３２０は、現在車速に対して換算係数（デューティー比／現在車速に相当する係数）を乗じるなどの処理を実施して、デューティー比換算した第２の値を、加算部３４０に出力する。
【００４３】
加算部３４０は、第１デューティー比換算部３３０からの第１の値と、第２デューティー比換算部３２０からの第２の値とを加算して制御信号を生成し、駆動部４００に出力する。駆動部４００は、当該制御信号に応じて上で述べたようにモータ１０６の駆動を行う。
【００４４】
このようなモータ駆動制御装置１０２の動作をさらに図４を用いて説明する。ここでは、現在車速をＤ0と表し、目標トルクをＤTと表すとする。そうすると、上でも述べたように、３相ブリッジ回路におけるＦＥＴの平均デューティー比Dutyは、以下のように表される。
Duty＝Ｄ0＋ＤT
【００４５】
本実施の形態では、現在の速度のままであればＤ0の直線に沿った形で平均デューティー比Dutyを変化させる。モータ１０６を力行状態にして加速させる場合には、目標トルクは正の値、例えば＋Ｄtに設定されるので、Ｄt分だけこの直線を上方にシフトさせる。そうすれば目標トルクの分だけ加速することになるが、平均デューティー比も相対的に高くすることになる。一方、モータ１０６を例えば制動状態にして減速する場合には、目標トルクは負の値、例えば−Ｄtに設定されるので、Ｄtだけ上記直線を下方にシフトさせる。そうすれば目標トルクの分だけ減速することになり、平均デューティー比も相対的に低くすることになる。
【００４６】
さらに、モータ１０６の正回転及び逆回転に対応するため、現在車速Ｄ0についても、正の値及び負の値が設定される場合がある。
【００４７】
以上のようなトルク・フィードフォワード制御を実施することにより、安定的な制御が行われるので、電動アシスト自転車などに好適である。
【００４８】
次に、車速算出部３１０の構成例について、図５を用いて説明する。図５に示すように、車速算出部３１０は、部分周期検出部３１１と、現在車速算出部３１２とを有する。部分周期検出部３１１は、モータ１０６からのホール信号を以下で述べるように処理して、以下で詳細に説明する部分周期の長さ及び回転方向を現在車速算出部３１２に出力する。現在車速算出部３１２は、部分周期検出部３１１からの部分周期の長さ及び回転方向に従って現在車速を算出する。
【００４９】
本実施の形態では、ホール信号の１周期を６つの部分周期に分割する。ホール信号（Ｈａｌｌ−Ｕ，Ｈａｌｌ−Ｖ，Ｈａｌｌ−Ｗ）は、図６に示すように、それぞれハイの期間とローの期間とがずれているので、各ホール信号の立ち上がりエッジと立ち下がりエッジを検出して、これらのエッジによって１周期を６つの部分周期に分割する。但し、モータ１０６の回転速度によって、各部分周期の長さは変化する。また、以下で具体的に示すように、立ち上がりエッジと立ち下がりエッジの検出順序によって、回転方向の正回転（前進）、負回転（後退）を区別する。
【００５０】
次に、図７を用いて部分周期検出部３１１の構成を説明する。部分周期検出部３１１は、各ホール信号が入力される第１段目のＤ−ＦＦ（フリップフロップ）と、第１段目のＤ−ＦＦの出力が入力される第２段目のＤ−ＦＦと、ホールエッジ検出部３１１１と、第１段目のＤ−ＦＦの出力を一部分周期ごとの相番号（ＰＮ：Phase Number）に変換する相番号変換部３１１２と、相番号変換部３１１２の出力を１相分（すなわち一部分周期分）遅延させるための第１の相遅延Ｄ−ＦＦと、相番号変換部３１１２の出力と第１の相遅延Ｄ−ＦＦの出力との差を算出する減算部３１１３と、減算部３１１３からの出力により正回転又は負回転の判定を行う相エッジ方向判定部３１１４と、相エッジ方向判定部３１１４の出力を１相分遅延させるための第２の相遅延Ｄ−ＦＦと、相エッジ方向判定部３１１４の出力と第２の相遅延Ｄ−ＦＦとから回転方向を判定する部分周期方向判定部３１１５と、ホールエッジ検出部３１１１が出力するホールエッジの間隔で高周波クロックのクロック数をカウントする部分周期カウンタ３１１６と、部分周期カウンタ３１１６がフルカウントになったことを検出するフルカウント検出部３１１７と、部分周期カウンタ３１１６の出力を保持する部分周期レジスタ３１１９とを有する。なお、ここでいう「相」とは、部分周期単位の固有の位相を示し、上述してきた「フェーズ」も同様の意味である。また、これ以降で使う「相」も同様の意味である。
【００５１】
第１段目のＤ−ＦＦ及び第２段目のＤ−ＦＦには、高周波クロックが入力されている。高周波クロックは、部分周期カウンタ３１１６、第１及び第２の相遅延Ｄ−ＦＦ、及び部分周期レジスタ３１１９とにも入力される。また、ホールエッジ検出部３１１１は、同一のホール信号に関連する第１段目のＤ−ＦＦの出力及び第２段目のＤ−ＦＦの出力に対して各々排他的論理和を算出し、当該排他的論理和の和を算出することでホールエッジを生成する。
【００５２】
次に、部分周期検出部３１１の動作を説明する。なお、同時に図８の状態遷移図を参照のこと。
【００５３】
まず、Ｈａｌｌ−Ｕ，Ｈａｌｌ−Ｖ，Ｈａｌｌ−Ｗ信号は第１段目のＤ−ＦＦにより高周波クロックに同期化される。そして、ホールエッジ検出部３１１１では、第１段目のＤ−ＦＦの出力と、第２段目のＤ−ＦＦによりさらに１クロック遅延（高周波クロックのクロック周波数はホール信号よりはるかに高い周波数なので遅延量は微小）されたホール信号出力の変化点を検出してホールエッジが検出される。そして、Ｈａｌｌ−Ｕ，Ｈａｌｌ−Ｖ，Ｈａｌｌ−Ｗ各信号の立ち上がり及び立ち下りの両エッジ検出の結果について論理和を算出すると、ホール信号１周期に６発の細いホールエッジパルスが出力される。
【００５４】
また、相番号変換部３１１２は、第１段目のＤ−ＦＦ出力のＨＤＵ，ＨＤＶ，ＨＤＷ信号の組み合わせより６相の相番号ＰＮを出力する。相番号は、正回転時（前進）にはＨＤＵの立ち上がりから順に１から６までとなる。逆回転（逆方向回転、後退回転）時には、６乃至１の順となる。
【００５５】
相番号（ＰＮ）は、第１の相遅延Ｄ−ＦＦでもう１相（部分周期）分の遅延が付加された相遅延相番号ＰＮＤとなる。そして、減算部３１１３で遅延前の相番号ＰＮから相遅延相番号ＰＮＤが減算されて相番号差（ＰＮ−ＰＮＤ）が得られる。相番号差は、正回転（前進）中、相番号が１増加する＋１または−５（相番号６から１への変化時）となる。一方、負回転（後退）中は、相番号差は、相番号が１減少する−１または＋５（相番号１から６への変化時）となる。これにより、次の相エッジ方向判定部３１１４で、その直前のホールエッジを正回転通過したか、負回転通過したかが判定され、エッジ回転方向（１：正回転／０：負回転）が出力される。
【００５６】
さらに、相エッジ方向判定部３１１４の出力であるエッジ回転方向は、さらに第２の相遅延Ｄ−ＦＦでもう１相（部分周期）分の遅延が付加されて部分周期方向判定部３１１５に出力される。部分周期方向判定部３１１５では、遅延前後のエッジ回転方向が比較され、（Ａ）遅延前後の両エッジとも正回転ならその間の部分周期方向も正回転、（Ｂ）遅延前後の両エッジとも負回転ならその間の部分周期方向も負回転、（Ｃ）遅延前後の両エッジで回転方向が異なる場合はその間の部分周期方向は反転（その部分周期中に反転が起こっている）と判定される。
【００５７】
一方、部分周期検出部３１１の右半分のブロックでは、ホールエッジパルスにより、部分周期カウンタ３１１６は、クロック同期クリアされ、ゼロから高周波クロックでカウントアップして行く。次回のホールエッジパルスにより、部分周期カウント値が次段の部分周期レジスタ３１１９に更新取込みされ、部分周期レジスタ３１１９は取り込んだ部分周期を出力する。同時に、部分周期カウンタ３１１６は同期クリアされる。
【００５８】
ほぼ停止と見られる超低速時には、部分周期カウンタ３１１６が所定のフルカウント（車速がほぼ０とみなすことができるカウント値）になったとフルカウント検出部３１１７により検出された時点で、フルカウント検出部３１１７により部分周期カウンタ３１１６のカウントイネーブル（ＣＥ）端子でカウントが停止され、カウント値は飽和する。その飽和した部分周期の値が部分周期レジスタ３１１９に取り込まれ出力されると、現在車速算出部３１２では停止（ほぼ停止）扱いとされる。
【００５９】
なお、部分周期レジスタ３１１９のクロックイネーブル（ＥＮ）端子にＯＲゲートから入力される信号は、部分周期カウンタ３１１６がフルカウントになったとフルカウント検出部３１１７により検出された時点でハイとなって、部分周期レジスタ３１１９に、強制的にフルカウントの値（飽和部分周期）を取込ませる。すなわち、フルカウント検出部３１１７がフルカウントを検出した場合には、その部分周期は飽和部分周期となる。
【００６０】
これにより、完全停止時に次のホールエッジが来ないために、ほぼ停止と判断すべき最後の飽和部分周期が、部分周期レジスタ３１１９に取り込まれないという事態を防止できる。
【００６１】
なお、図８に示すように、期間Ｉで回転方向の反転が発生すると、エッジ回転方向については１相後で負回転Ｒが検出されるようになり、さらに相遅延エッジ回転方向についてはさらに１相後で負回転Ｒが検出されるようになる。部分周期回転方向については、エッジ回転方向について負回転Ｒが検出されると、回転方向の反転が検出されることになる。
【００６２】
次に、車速算出部３１０の演算内容について説明する。
【００６３】
本実施の形態では、図９に示すように、現在の部分周期をＰ（ｎ）とすると、６つ前の部分周期Ｐ（ｎ−６）までの７つの部分周期を観測して、現在の走行状態を把握する。すなわち、ＲＡＭ等のメモリに直近７部分周期及び回転方向を保持しておく。そして図９に示すように、部分周期Ｐ（ｎ）乃至Ｐ（ｎ−６）のいずれもが飽和部分周期ではなく（所定値以上の速度絶対値がある）、回転方向が同方向（図９では正回転。但し負回転でも可。）である場合には、（１）７つの部分周期を用いて高精度加速度補償演算を行って現在車速を算出する。
【００６４】
また、最新の２つの部分周期Ｐ（ｎ）及びＰ（ｎ−１）（ここで「２つ」は一例で他の値であっても良い。）については同方向回転で飽和部分周期でないが、それ以外の部分に回転方向の反転があったり飽和部分周期がある場合には、（２）最新の２つの部分周期を用いて加速度補償演算を行って現在車速を算出する。
【００６５】
さらに、最新の２つの部分周期Ｐ（ｎ）及びＰ（ｎ−１）（ここで「２つ」は一例で他の値であっても良い。）の少なくともいずれかで、回転方向の反転が生じているか又は飽和部分周期である場合には、（３）最新の１つの部分周期のみを用いて現在車速を算出する。
【００６６】
図１０に示すように、（Ａ）及び（Ｂ）の状態の場合には（１）の処理を行う。また、（Ｃ）乃至（Ｆ）のように、Ｐ（ｎ−１）及びＰ（ｎ）については非飽和部分周期であり且つ回転方向が同一である場合には、（２）の処理を行う。（Ｇ）乃至（Ｉ）の場合には、Ｐ（ｎ−１）もしくはＰ（ｎ）において飽和部分周期となっているか又は回転方向の反転が検出されているので、（３）の処理を行う。
【００６７】
（１）高精度加速度補償演算付き現在車速算出
この場合、加速度補償後周期を以下のように算出する。
加速度補償後周期＝定常速度項＋第１補正項＋第２補正項
【００６８】
定常速度項は、以下のように算出される。
定常速度項＝Ｐ(n)＋Ｐ(n-1)＋Ｐ(n-2)＋Ｐ(n-3)＋Ｐ(n-4)＋Ｐ(n-5) 
このようにホール信号の１周期分の部分周期の総和となっている。
【００６９】
また、第１補正項は、以下のように表される。
第１補正項＝（6/2＋1/2）×｛Ｐ(n)−Ｐ(n-6)｝／６
＝｛Ｐ(n)−Ｐ(n-6)｝×(7/12)
上記の「６／２」は６部分周期分の平均遅延であって、速度検出遅延分を表す。また、「１／２」は、検出後即刻出力され、次回パルスによる出力更新までホールドされるＰＷＭ出力の平均遅延であって、制御遅延分を表す。すなわち、第１補正項はパルス周期に比例した遅延成分を表す。
【００７０】
さらに、第２補正項は、以下のように表される。
第２補正項＝｛Ｐ(n)−Ｐ(n-6)｝×｛Ｌｆ×周期カウント周波数（＝定数）／（定常速度項の値）｝
遅延時間Ｌｆ（＝フレームレイテンシ）は、例えば１０ｍ秒であり、第２補正項では、ホール信号の１周期に換算するため定常速度項の値（Ｐ(n)＋Ｐ(n-1)＋Ｐ(n-2)＋Ｐ(n-3)＋Ｐ(n-4)＋Ｐ(n-5) ）で除している。
【００７１】
遅延時間Ｌｆは、具体的には以下のように決められる。
Ｌｆ＝｛Ｋfl／フレーム周波数｝秒
Ｋfl＝等価遅延フレーム数
＝ホール信号からＰＷＭに反映するまでの平均遅延０．５フレーム
＋ＰＷＭの１フレーム間維持による平均遅延０．５フレーム
＋計算遅延αフレーム
＝１＋α
０≦Ｋfl＜２
標準期待値＝１＋α（αは計算などの遅延分）
このように、Ｋflを調整可能定数としておく。
【００７２】
加速度補償後周期が得られれば、
１／（加速度補償後周期×１回転当りのホール周期の数）
によって回転数が得られる。さらにモータ駆動輪の周長を乗ずれば、車速が得られる。
【００７３】
なお、本実施の形態では、｛Ｐ（ｎ）−Ｐ（ｎ−６）｝というように最新の部分周期からホール信号１周期前の部分周期の差（変化量）を平均加速として算出しているが、他の部分周期によって加速度を算出するようにしても良い。
【００７４】
（２）加速度補償演算付き現在車速算出  
（２）の場合にはＰ（ｎ）及びＰ（ｎ−１）のみが正常時のデータなので、以下のように算出する。
加速度補償後周期＝Ｐ（ｎ）×６＋（Ｐ（ｎ）−Ｐ（ｎ−１））×６
＝６（２Ｐ（ｎ）−Ｐ（ｎ−１））
本実施の形態では（Ｐ（ｎ）−Ｐ（ｎ−１））という部分周期の変化量を平均加速として算出している。
【００７５】
加速度補償後周期が得られれば、
１／（加速度補償後周期×１回転当りのホール周期の数）
によって回転数が得られる。さらにモータ駆動輪の周長を乗ずれば、車速が得られる。
【００７６】
（３）現在車速の算出
本実施の形態では、（３）のような状態の場合には、以下のようにして周期を算出する。加速度補償は行わない。このとき、Ｐ（ｎ）自身が飽和周期の場合、またはＰ（ｎ）自身の期間で反転が生じている場合、Ｐ（ｎ）として飽和周期を使用する。
周期＝Ｐ（ｎ）×６
このように周期が得られれば、
１／（周期×１回転当りのホール周期の数）
によって回転数が得られる。さらにモータ駆動輪の周長を乗ずれば、車速が得られる。
【００７７】
このように、本実施の形態では、上で述べたようにホール信号のエッジを用いた時刻測定に基づき現在車速を算出しているため、フィードバック法の電流検出に比べて、きわめて高精度且つノイズの影響を受けることなく測定することができる。
【００７８】
したがって、モータ駆動制御装置１０２によれば、従来例のように所定時間や一定周期分の遅れを生じることなく、モータに駆動制御が届く時点のリアルタイムに即した周期を計算して利用しているため、ペダル速度の変化に迅速に対応することができる。これにより、車両の速度が急激に変化する急発進動作や急停止動作を行った場合にも、速度演算結果が実際にモータに駆動信号が届く時点での現在速度と大きくずれることがなく、的確なモータ駆動制御を行うことができ、従来のようにモータ１０６に過大電流が流れることがなく、過大電流による回路の破損が生じたり、急激な動作変化による事故が生じることがない。
【００７９】
［実施の形態２］
第１の実施の形態ではホール信号により現在車速の算出を行っているので、ホール信号を出力するホール素子に故障が発生していると問題である。従って、図１１に示すように、部分周期検出部３１１からの部分周期の出力を用いてエラー検出を行うエラー検出部３６０を設ける。エラー検出出力がなされた場合には、制御部３００においてエラー対応処理を実施する。例えば、ペダル回転センサの出力から推定される車速をベースに制御を行うようにしても良い。さらに、警告表示を操作パネル１０５に行うことによって、修理を促すようにしても良い。
【００８０】
本実施の形態におけるエラー検出部３６０は、第１の方法として、以下の判定式にてエラーを判定する。
判定値＝｛（Ｐ(n)＋Ｐ(n-6)）／２｝／｛（Ｐ(n)＋Ｐ(n-1)＋Ｐ(n-2)＋Ｐ(n-3)＋Ｐ(n-4)＋Ｐ(n-5)）／６｝
【００８１】
すなわち、ホール信号１周期分の平均部分周期に対する｛（Ｐ(n)＋Ｐ(n-6)）／２｝の比率を算出する。｛（Ｐ(n)＋Ｐ(n-6)）／２｝は、最新の部分周期と、当該最新の部分周期からホール信号１周期分前の部分周期との平均である。但し、単純な平均ではなく、加重平均であっても良い。
【００８２】
この判定値が例えば１±０．１の許容範囲内に入らなければエラーと判定する。
【００８３】
さらに精度良くエラー検出を行う第２の方法としては、加速度補償を含む以下のような判定式を用いる。
判定値＝｛(7/12)×Ｐ(n)＋(5/12)×Ｐ(n-6)｝／［｛Ｐ(n)＋Ｐ(n-1)＋Ｐ(n-2)＋Ｐ(n-3)＋Ｐ(n-4)＋Ｐ(n-5)｝／６］
【００８４】
この判定式の分母における６部分周期平均はその検出平均遅延が３部分周期となるが、分子の２部分周期の平均遅延は（０．５＋６．５）／２＝３．５部分周期となり、分母と０．５周期のずれが生ずる。定速度時はそれで問題ないが、加減速中はその時間差分だけずれることになるため、そのずれ分を加速補償して分母と同じ３部分周期前の周期が得られるよう、Ｐ（ｎ）とＰ（ｎ−６）の内分比を３：３から３．５：２．５に替えてある。すなわち、７／１２と５／１２が重みとして用いられている。
【００８５】
第１の方法及び第２の方法でも、例えば１秒など所定時間エラーが継続した場合に、エラー出力を行う。
【００８６】
本実施の形態では、モータ１０６の回転センサから出力されるホール信号を用いて回転センサのエラー発生や回転センサの故障の判定を行っているので、ホール信号の断線や異常周期などに対処可能となる。
【００８７】
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、制御部３００の構成については、ハードウエアで実装してもプログラムとプロセッサの組み合わせで実装しても良い。上で述べた機能ブロック構成は一例であって、必ずしも実際の回路モジュール構成やプログラムモジュール構成と一致しない場合がある。
【００８８】
また、上で述べた実施の形態では、モータ１０６の回転に応じて電気角１２０°位相がずれた３つのホール信号（Hall-U,Hall-V,Hall-W）を前提にした処理の説明を行ったが、位相がずれた２つ以上の任意の数の位相検出信号を出力する任意の種類の回転センサを用いて、上記と同様の処理を行ってもよい。
【００８９】
また、上ではＰＷＭ制御の例を示したが、必ずしもＰＷＭ制御でなくても良い。ＰＮＭ（Pulse Number Modulation）やＰＤＭ（Pulse Density Modulation）や１ビットアンプその他の方式で行うようにしても良い。
【００９０】
また、上記モータ駆動制御装置は、電動アシスト自転車以外にも、電動オートバイ、電気自動車、ハイブリッド自動車、電車、エレベータ、エスカレータなどを含む電動車両、およびその他電動機駆動においてモータ駆動制御を行う装置に適用可能である。
【符号の説明】
【００９１】
１０１  二次電池
１０２  モータ駆動制御装置
１０３  トルクセンサ
１０４  ブレーキセンサ
１０５  操作パネル
１０６  モータ
３００  制御部
４００  駆動部
４１０  駆動制御回路
４２０  ドライブ回路
３１０  車速算出部
３２０  第２デューティー比換算部
３３０  第１デューティー比換算部
３５０  目標トルク算出部
３１１  部分周期検出部
３１２  現在車速算出部
３６０  エラー検出部
【図１】
0005965517.tif 000002
【図２】
0005965517.tif 000003
【図３】
0005965517.tif 000004
【図４】
0005965517.tif 000005
【図５】
0005965517.tif 000006
【図６】
0005965517.tif 000007
【図７】
0005965517.tif 000008
【図８】
0005965517.tif 000009
【図９】
0005965517.tif 000010
【図１０】
0005965517.tif 000011
【図１１】
0005965517.tif 000012