【解決手段】一つの実施形態によれば、取得部とAD変換部と算出部と駆動制御部と、を有するモータ制御装置が提供される。取得部は、モータの回転位置を示すアナログ信号を取得する。AD変換部は、アナログ信号をAD変換してデジタル値を生成する。算出部は、複数のデジタル値を用いてアナログ信号波形の傾きを推定し、推定された傾きに応じた直線が閾値と交差する交差タイミングを求める。駆動制御部は、複数の交差タイミングから求めた回転周期に応じてモータの駆動を制御する。
前記推定された傾きに応じて、前記AD変換部に第1のサンプリング周波数または前記第1のサンプリング周波数より小さい第2のサンプリング周波数を供給する制御部をさらに備え、
前記AD変換部は、供給された前記第1または第2のサンプリング周波数に基づいたサンプリングタイミングで、前記アナログ信号のAD変換を行う
請求項1に記載のモータ制御装置。
前記制御部は、前記推定された傾きが所定の傾きより大きいときは、前記AD変換部に前記第1のサンプリング周波数を供給し、前記推定された傾きが前記所定の傾きより小さいときは、前記AD変換部に前記第2のサンプリング周波数を供給する
請求項3に記載のモータ制御装置。
【発明を実施するための形態】
【0007】
以下に添付図面を参照して、実施形態にかかるモータ制御装置を詳細に説明する。なお、これらの実施形態により本発明が限定されるものではない。
【0008】
(第1の実施形態)
図1は、第1の実施形態にかかるモータ制御装置1の構成を示す図である。本実施形態では、モータ制御装置1において、閾値を跨るアナログ信号波形であるホール信号の傾きを推定し、閾値を示す直線と推定された傾きに応じた直線とが交差する交差タイミングを求める。本実施形態のモータ制御装置1は、複数の交差タイミングからモータの回転周期を求めることで、サンプリング誤差の低減を図る。
【0009】
具体的には、モータ制御装置1は、閾値を跨って並ぶ複数のサンプリングタイミングのホール信号をAD変換した複数のデジタル値を生成し、その複数のデジタル値で、閾値を跨るホール信号の傾きを推定する。ホール信号は、閾値を跨る部分において近似的に直線とみなせる。このため、モータ制御装置1は、閾値を示す直線と推定された傾きに応じた直線とが交差する交差タイミングを、近似的にホール信号が閾値の直線に交差するタイミングとして求める。モータ制御装置1は、複数の交差タイミングの時間間隔からモータの回転周期を求める。これにより、高速なAD変換器を使用しなくても、モータの回転周期を精度よく求めることができる。この結果、モータ制御装置1の消費電力及び発熱の増大を招くことなしに、サンプリング誤差を低減でき、モータMTの振動や騒音を低減できる。
【0010】
モータ制御装置1は、サンプルホールド部(取得部)2、サンプリング部(AD変換部)3、算出部10、及び駆動制御部4を有する。モータ制御装置1は、モータMTの駆動制御に使用される。モータMTは、例えば、単相モータ又は三相モータなどである。モータMTは、ロータ及びステータを有し、ステータに対するロータの回転の駆動が制御される。
【0011】
モータMTの筐体には、ホール素子HEが設置される。モータMTが単相モータである場合、モータMTの筐体内で単一の磁極が回転する。磁極の回転により、ホール素子HEで検出される磁気の大きさが周期的に変化し、ホール素子HEから周期的に変化するホール信号が出力される。モータ制御装置1は、ホール信号をAD変換しモータMTの回転周期を示す周期信号を生成し、周期信号に応じてモータMTに駆動電力を供給する。
【0012】
例えば、周期信号を生成するために、モータ制御装置1は、ホール信号を所定のサンプリングタイミングでサンプリングする。サンプリング周期又はサンプリング周波数は、予め決められ得る。ホール信号は、アナログ信号であり、サンプリングされAD変換されることでデジタル値へ変換される。サンプリング結果としてのデジタル値から周期信号を生成すると、モータの回転周期とサンプリング周期とがずれている場合、その影響により、周期信号で示す回転周期が実際の回転周期に対してずれる。回転周期の誤差であるサンプリング誤差を含む周期信号を用いてモータの駆動電力を制御すると、モータの振動や騒音が増大する可能性がある。
【0013】
モータ制御装置1は、サンプルホールド部(取得部)2、サンプリング部(AD変換部)3、算出部10、及び駆動制御部4を有する。サンプルホールド部2は、ホール素子HEとサンプリング部3との間に配される。サンプルホールド部2は、ホール素子HEから出力されるホール信号に対して、サンプルホールド動作を行い、ホール信号を保持する。
【0014】
図2は、モータ制御装置1の動作を示す波形図である。
図2(a)は、ホール信号の時間変化を示す。ホール信号は、例えば正の振幅の範囲で、モータMTにおける磁極の回転位置に応じて変化するアナログ信号である。ホール信号は、時間とともに正弦波状に変化する。
図2(a)に示す一点鎖線は、閾値Athである。閾値Athは、ホール信号の変動範囲の基準となる値(例えば、変動範囲の中央値)である。ホール信号の変動範囲を、下限振幅Amin、上限振幅Amaxとすると、閾値Athは、例えば、次の数式1、数式2で表される。
Ath≒(Amin+Amax)/2・・・数式1
Amax>Ath>Amin≧0・・・数式2
【0015】
サンプリング部3は、サンプルホールド部2に保持されたホール信号をサンプリングタイミングでサンプリングしてAD変換しデジタル値を生成する。サンプリング部3は、図示しないタイミングジェネレータを有し、タイミングジェネレータで発生させたサンプリングクロックを用いてサンプリングを行い、ホール信号のAD変換を行ってもよい。すなわち、サンプリング部3は、サンプリングクロックの立ち上がりエッジのタイミングに同期してホール信号をAD変換してデジタル値を生成してもよい。このデジタル値は、AD変換における量子化誤差が無視できる程度に小さい場合、近似的に、ホール信号のアナログ信号波形のサンプリング結果とみなすことができる。
図2(b)は、ホール信号を
図2(c)に示すサンプリングタイミングでサンプリングした結果である。
図2(b)では、サンプリング結果を白丸のプロットで示している。
図2(c)では、サンプリングタイミングを棒状の線で示している。サンプリングタイミングは、例えば、サンプリングクロックの立ち上がりのタイミングである。
【0016】
算出部10は、サンプリングタイミングのデジタル値を用いてホール信号の傾きを推定する。算出部10は、閾値と推定された傾きに応じた直線とが交差する交差タイミングを求める。算出部10は、閾値近傍点抽出部11、閾値上下判定部12、交点位置生成部13を有する。
【0017】
閾値上下判定部12は、デジタル値をサンプリング部3から受ける。閾値上下判定部12には、予め、閾値Athが設定されている。閾値上下判定部12は、受けたデジタル値を閾値Athと比較して上下を判定し、判定結果を閾値近傍点抽出部11へ供給する。例えば、閾値上下判定部12は、受けたデジタル値が閾値Athより大きければ、「上」を示すHレベルの信号を閾値近傍点抽出部11へ供給する。閾値上下判定部12は、受けたデジタル値が閾値Athより小さければ、「下」を示すLレベルの信号を閾値近傍点抽出部11へ供給する。
【0018】
図2(d)は、閾値上下判定部12から出力される判定結果を示している。
図2(d)で示す判定結果は、サンプリングタイミングt2でLレベルからHレベルに遷移し、サンプリングタイミングt4でHレベルからLレベルに遷移し、サンプリングタイミングt6でLレベルからHレベルに遷移し、サンプリングタイミングt8でHレベルからLレベルに遷移している。
【0019】
閾値近傍点抽出部11は、サンプリング部3からのデジタル値と閾値上下判定部12からの判定結果を受ける。閾値近傍点抽出部11は、サンプリング部3から受けた前回のデジタル値と今回のデジタル値とを保持する。閾値近傍点抽出部11は、閾値上下判定部12から受けた前回の判定結果と今回の判定結果とを保持する。閾値近傍点抽出部11は、前回と今回との判定結果を比較する。判定結果が変わっていた場合、閾値近傍点抽出部11は、ホール信号が閾値を跨ったとして、前回と今回とのデジタル値を交点位置生成部13へ供給する。前回のデジタル値及び判定結果が第1のサンプリングタイミングに対応し、今回のデジタル値及び判定結果が第2のサンプリングタイミングに対応するとき、第1のサンプリングタイミング及び第2のサンプリングタイミングは、ホール信号のレベルが閾値Athを跨って並ぶタイミングである。
【0020】
例えば、閾値近傍点抽出部11は、サンプリングタイミングt2でHレベルの判定結果を受けると、前回のサンプリングタイミングt1の判定結果であるLレベルと比較する。比較の結果、判定結果が変わっており、ホール信号が閾値を跨ったと判断する。これに応じて、閾値近傍点抽出部11は、前回と今回とのデジタル値を交点位置生成部13へ供給する。同様に、サンプリングタイミングt4,t6,t8において、判定結果が変わっており、閾値近傍点抽出部11は、前回と今回とのデジタル値を交点位置生成部13へ供給する。
【0021】
交点位置生成部13は、閾値近傍点抽出部11から受けた2つのデジタル値が示す振幅を用いてホール信号の傾きを推定する。2つのデジタル値は、閾値を跨って並ぶサンプリングタイミングの振幅を示す。交点位置生成部13は、閾値と推定された傾きに応じた直線とが交差する交差タイミングを求める。交点位置生成部13は、求められた交差タイミングを駆動制御部4へ供給する。
【0022】
例えば、サンプリングタイミングt1のデジタル値が振幅A1を示し、サンプリングタイミングt2のデジタル値が振幅A2を示す場合、傾き=(A2−A1)/(t2−t1)と推定される。
図2(b)を横軸が変数t、縦軸が変数Aの座標平面であるとすると、閾値を示す直線L0は、
A=Ath・・・数式3
で表される。また、推定された傾きに応じた直線L1は、2点(t1,A1)、(t2,A2)を結ぶ直線であり、
A−A2={(A2−A1)/(t2−t1)}(t−t2)・・・数式4
で表される。数式3、数式4から変数Aを消去し、変数tについて解くと、その解として、交差タイミングt12が
t12={(Ath−A2)(t2−t1)/(A2−A1)}+t2・・・数式5
と求まる。
【0023】
同様に、サンプリングタイミングt3のデジタル値が振幅A3を示し、サンプリングタイミングt4のデジタル値が振幅A4を示す場合、傾き=(A4−A3)/(t4−t3)と推定される。交差タイミングt34は
t34={(Ath−A4)(t4−t3)/(A4−A3)}+t4・・・数式6
と求まる。
【0024】
サンプリングタイミングt5のデジタル値が振幅A5を示し、サンプリングタイミングt6のデジタル値が振幅A6を示す場合、傾き=(A6−A5)/(t6−t5)と推定される。交差タイミングt56は
t56={(Ath−A6)(t6−t5)/(A6−A5)}+t6・・・数式7
と求まる。
【0025】
サンプリングタイミングt7のデジタル値が振幅A7を示し、サンプリングタイミングt8のデジタル値が振幅A8を示す場合、傾き=(A8−A7)/(t8−t7)と推定される。交差タイミングt78は
t78={(Ath−A8)(t8−t7)/(A8−A7)}+t8・・・数式8
と求まる。
【0026】
駆動制御部4は、時間的に隣接して並ぶ複数の交差タイミングから回転周期ΔTを求め、回転周期ΔTを示す周期信号を生成する。例えば、回転周期ΔTは、次の数式9に基づき求めることができる。
ΔT/2≒t34−t12≒t56−t34≒t78−t56・・・数式9
【0027】
このとき、駆動制御部4は、
図2(e)に示す周期信号を、
図2(d)に示す判定結果の信号のエッジ部分を補正することで生成してもよいし、交差タイミングの情報から新たに生成してもよい。
図2(e)に示す周期信号は、交差タイミングt12でLレベルからHレベルに遷移し、交差タイミングt34でHレベルからLレベルに遷移し、交差タイミングt56でLレベルからHレベルに遷移し、交差タイミングt78でHレベルからLレベルに遷移している。
【0028】
駆動制御部4は、周期信号の回転周期ΔTに応じて、モータMTの駆動を制御する。駆動制御部4は、回転周期ΔTに応じて、PWM制御を行い、それにより生成した駆動電力をモータMTへ供給する。これにより、駆動制御部4は、適正なタイミングでモータMTの駆動を制御でき、モータMTの振動や騒音を低減できる。
【0029】
以上のように、本実施形態では、モータ制御装置1において、閾値を跨るホール信号の傾きを推定し、閾値と推定された傾きに応じた直線とが交差する交差タイミングからモータMTの回転周期を求める。これにより、高速なAD変換器を使用しなくても、モータMTの回転周期を精度よく求めてモータMTを制御することができる。この結果、モータ制御装置1の消費電力及び発熱の増大を招くことなしに、サンプリング誤差を低減でき、モータMTの振動や騒音を低減できる。
【0030】
なお、ホール素子HEは、モータ制御装置1内に配されてもよい。例えば、モータ制御装置1がホール素子HEを含む1つのモジュールとして構成され、そのモジュールがモータMTの筐体に設置されてもよい。また、回転周期を取得するための素子として、回転周期を取得可能な素子であれば、磁気センサなど位置をセンシングできる他のデバイスでもよい。
【0031】
また、閾値との交点を生成(傾きを算出)する際のデジタル値は、ホール信号の波形におけるほぼ直線とみなせる部分に対応していれば、閾値を跨る3つ以上のサンプリングタイミングのデジタル値でもよい。
【0032】
(第2の実施形態)
第1の実施形態では、推定されたホール信号の傾きをモータMTの回転周期を示す周期信号の生成に用いているが、第2の実施形態では、推定されたホール信号の傾きを(例えばさらに低周波数の)サンプリング周波数への切り替えのためにさらに用いる。以下では、第1の実施形態と異なる部分を中心に説明する。
【0033】
図3は、第2の実施形態にかかるモータ制御装置101の構成を示すブロック図である。モータ制御装置101は、制御部120をさらに有する。制御部120は、算出部10で推定された傾きに応じて、サンプリング部3のサンプリング周波数を制御する。
【0034】
モータMTでは、回転周期が遅い場合に、ホール信号が閾値を跨る際の傾きの絶対値が小さくなる傾向にある。回転周期が遅ければ、サンプリング周波数を低くすることで、モータ制御装置101を低消費電力化・低騒音化できることが期待される。
【0035】
制御部120は、推定された傾きと傾き閾値との大小関係に応じて、サンプリング部3にサンプリング周波数を供給する。あるいは、制御部120は、当該大小関係が連続的に複数の交差タイミングで同じであるかどうかを考慮してサンプリング周波数を供給してもよい。制御部120は、推定された傾きが傾き閾値より大きいことに応じて、サンプリング部3をサンプリング周波数Nで制御する。制御部120は、推定された傾きが傾き閾値より小さいことに応じて、サンプリング部3をサンプリング周波数Mで制御する。サンプリング周波数Mは、サンプリング周波数Nより低い周波数である。傾き閾値は、サンプリング周波数をMにした場合にホール信号における閾値Ath付近の傾きをどの程度小さくしても要求されるサンプリング精度を確保可能であるのかの限界を示す値であり、予め実験的に決められ得る。これにより、モータ制御装置101は、サンプリング周波数を安定的に制御することができる。
【0036】
制御部120は、速度判定部121及びセレクタ122を有する。速度判定部121は、交点位置生成部13とセレクタ122との間に配されている。速度判定部121は、推定された傾きを交点位置生成部13から受ける。速度判定部121は、推定された傾きの絶対値を傾き閾値と比較する。速度判定部121は、比較結果に応じて、速度判定結果をセレクタ122へ供給する。
【0037】
セレクタ122は、速度判定部121とサンプリング部3との間に配されている。速度判定部121による速度判定結果は、セレクタ122のセレクトノードSへ供給される。セレクタ122は、入力ノード“0”にサンプリング周波数Nが供給されており、入力ノード“1”にサンプリング周波数Mが供給されている。
【0038】
速度判定部121は、推定された傾きの絶対値が傾き閾値より大きければ、モータMTの回転周波数が「通常」であると判定し、“0”を速度判定結果としてセレクタ122へ供給する。速度判定結果=“0”に応じて、セレクタ122は、サンプリング周波数Nを選択してサンプリング部3へ供給する。サンプリング部3は、クロックジェネレータでサンプリング周波数Nを有するサンプリングクロックを発生させ、ホール信号のAD変換を行う。
【0039】
速度判定部121は、推定された傾きの絶対値が傾き閾値より小さければ、モータMTが減速して回転速度が「遅い」と判定し、“1”を速度判定結果としてセレクタ122へ供給する。速度判定結果=“1”に応じて、セレクタ122は、サンプリング周波数Mを選択してサンプリング部3へ供給する。サンプリング部3は、クロックジェネレータでサンプリング周波数Mを有するサンプリングクロックを発生させ、ホール信号のAD変換を行う。
【0040】
次に、サンプリング周波数の切り替え動作について説明する。ホール信号の閾値近傍の傾きを表す角度の変数をθとし、サンプリング周波数を表す変数をfとする。モータ制御装置101は、ホール信号をサンプリングタイミングでサンプリングしてAD変換を行い、サンプリング結果を得る。モータ制御装置101は、閾値Ath近傍の傾き(角度)の絶対値|θ|を推定し、推定された傾き|θ|と傾き閾値αとを比較する。モータ制御装置101は、|θ|≧αのとき、すなわち、モータMTの回転速度が「通常」のとき、サンプリング周波数f=Nとする。一方、|θ|<αのとき、すなわち、モータMTの回転速度が「遅い」とき、サンプリング周波数f=Mとする。サンプリング周波数fは0<M<N[Hz]とする。
【0041】
図4は、モータ制御装置101の動作を示す波形図である。タイミングt101のとき、傾き|θ|=aであり、サンプリング周波数f=Nである。すなわち、モータ制御装置101は、|θ|=a≧αであることに応じて、モータMTの回転速度が「通常」であると判定し、サンプリング周波数をNに維持する。
【0042】
タイミングt102において、モータ制御装置101は、モータMTを所定の回転速度へと減速させ始める。これに応じて、傾き|θ|がaから減少し始める。すなわち、モータMTの減速期間TPが始まる。そして、タイミングt103において、モータ制御装置101は、モータMTが所定の回転速度へ到達すると、減速を終了させる。すなわち、傾き|θ|がbとなり、モータMTの減速期間TPが終了する。減速期間TP中において、モータ制御装置101は、モータMTを所定の回転速度に維持されるように制御する。
【0043】
タイミングt102〜t103のときは、傾き|θ|がaからb(0<b<α≦a<90[度])へ小さくなる時であり、モータ制御装置101は、モータMTが減速期間TP中であると判定し、サンプリング周波数f=Nを維持する。
【0044】
モータ制御装置101は、傾き|θ|がbでほぼ一定となる状態が所定の回数連続したら、モータMTの回転速度が安定した状態であると判定し、サンプリング周波数fを切り替える。なお、モータ制御装置101は、サンプリング周波数の切り替えについて、ホール信号が閾値Athに交差する交差タイミング近傍を避けて行う。
図4の例では、タイミングt103で傾きbとなり、タイミングt103〜t108で6回連続してbとなり、タイミングt109でサンプリング周波数Mに切り替えている。モータ制御装置101は、交差タイミングt108とt110を避け、タイミングt108とt110の間のタイミングt109でサンプリング周波数を切り替える。第2の実施形態では、モータ制御装置101において、推定された傾きが所定の傾きより小さいことが連続した複数の交差タイミングで満たされることに応じて、サンプリング周波数を通常時の値Nより小さい値Mに制御する。これにより、モータ制御装置101を低消費電力化・低騒音化でき、さらにサンプリング周波数を安定的に制御できる。
【0045】
なお、図示しないが、モータ制御装置101は、モータMTの回転速度を「通常」に戻すために加速する制御を行ってもよい。モータ制御装置101は、連続して複数の交差タイミングで通常の回転速度に到達したことに応じて、サンプリング周波数をMからNに戻す制御を行ってもよい。これにより、サンプリング周波数をさらに安定的に制御できる。あるいは、モータ制御装置101は、モータMTの回転速度を「通常」よりも早くするために加速する制御を行ってもよい。
【0046】
また、第2の実施形態では、サンプリング周波数fの値を2つの値N,Mの間で切り替えているが、3つ以上の値N,M,Kで切り替えてもよい。この場合、傾き|θ|を判定するために、傾き閾値としてα、β(0<β<α<90[度])を用いる。|θ|≧αの場合に、サンプリング周波数f=Nとし、β≦|θ|<αの場合、サンプリング周波数f=Mとし、|θ|<βの場合、サンプリング周波数f=Kとしてもよい。
【0047】
なお、加速終了または減速終了を判定する際の連続回数は、1回以上でもよいし、加速と減速とで異なってもよい。また、傾き|θ|を任意の値a、bとしているが、幅をもった値a1≦θ<a2、b1≦θ<b2としてもよい。また、傾き閾値αは、予めモータ制御装置101に設定してあってもよいし、マイコンなどから外部より設定してもよい。
【0048】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。