説明

モータ制御装置

【課題】モータの電源電圧の変動等が要因となって、スイッチト・キャパシタ・フィルタのような抽出回路がリプル成分を正確に抽出しなくても、抽出されなかったリプル成分のパルス数を補足できるようにする。
【解決手段】モータ制御装置1が、モータ2と、モータ2の電流信号のリプル成分をパルス信号に変換する抽出回路と、モータ2の電圧を検出するA/Dコンバータ7と、パルス信号を入力する制御部4と、を備える。制御部4が、A/Dコンバータ7によって検出された電圧の変動を検出した場合に、電圧変動の直前の一パルス分又は複数パルス分のパルス周期T_beforeと、電圧変動から所定期間t経過後の一パルス分又は複数パルス分のパルス周期T_afterとの平均周期T_averageを算出し、所定期間tを平均周期T_averageで除して得られる商nを算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、モータ制御装置に関する。
【背景技術】
【0002】
車両用シート、電動ドアミラー、パワーウィンドウ等には可動部が設けられ、可動部がモータによって駆動される。可動部の位置及び速度を制御装置によって正確に制御するためには、動作中のモータの回転量を検出する必要がある。モータの回転量を検出するべく、センサが用いられる。つまり、センサ(例えば、ホール素子、エンコーダ、リードスイッチセンサ)がモータ等に設けられ、動作中のモータの回転に同期した信号がセンサによって出力され、センサの出力信号が検出回路(例えば、コンパレータやAD変換器)を介して制御装置に入力される。
【0003】
ところが、センサを用いると、コストアップの要因になってしまう。そこで、センサを用いずに、モータの電流信号を利用して、モータの後段回路によってモータの回転量を検出する技術が提案されている(例えば、特許文献1、特許文献2参照)。モータが動作している際には、モータの電流信号には直流成分、低周波成分及び高周波ノイズ等が含まれており、更に、モータの回転に同期した脈動(以下、リプル(ripple)という。)成分も含まれている。特許文献1、特許文献2に記載の技術では、モータの電流信号を後段回路によって処理することによってリプル成分を抽出する。具体的には、後段回路のフィルタによってモータの電流信号のうち直流成分、低周波成分及び高周波ノイズを除去し、リプル成分を通過させる。モータの電流信号の各成分の周波数が環境変化によって変動するため、後段回路のフィルタには、カットオフ周波数を可変することができるスイッチト・キャパシタ・フィルタを用いる。具体的には、スイッチト・キャパシタ・フィルタを通過した信号が演算回路にフィードバックされ、演算回路がフィードバック信号からカットオフ周波数を演算して、スイッチト・キャパシタ・フィルタのカットオフ周波数を設定する。
【0004】
特許文献1に記載の技術では、リプルパルス整形回路が、スイッチト・キャパシタ・フィルタ(SCF)を通過したリプル成分をパルス化し、カウンタ(CT)が、リプルパルス整形回路の出力信号のパルス数を計数する。カウンタ(CT)によって計数されたパルス数が、モータの回転量に相当するとともに、可動部の移動量に相当する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2003−9585号公報
【特許文献2】特開2008−283762号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来の技術では、フィードバック制御によってスイッチト・キャパシタ・フィルタのカットオフ周波数が設定されるから、モータの電流信号の各成分の周波数が過渡的に又は急激に変化すると、カットオフ周波数の設定が遅れてしまい、リプル成分がスイッチト・キャパシタ・フィルタによっても正確に抽出することができない虞がある。
特に、モータの電源電圧が様々な外因で変動すると、モータの電流値も変動するので、モータの電流信号に含まれるリプル成分の振幅がモータの電流値の変動時に減少する。そのため、後段のスイッチト・キャパシタ・フィルタによってリプル成分が正確に抽出されない。よって、カウンタがパルス数を正確に計数することができ、モータの回転量や可動部の移動量が正確に測定されない。
そこで、本発明が解決しようとする課題は、モータの電源電圧の変動等が要因となって、スイッチト・キャパシタ・フィルタのような抽出回路がリプル成分を正確に抽出しなくても、抽出されなかったリプル成分のパルス数を補足できるようにすることである。
【課題を解決するための手段】
【0007】
以上の課題を解決するための請求項1に係る発明によれば、
モータ制御装置が、
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記モータの電圧を検出する電圧検出部と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数する第一処理と、
前記パルス信号のパルスごとに前記パルス信号のパルス周期を計時して、計時したパルス周期を順次記憶する第二処理と、
前記電圧検出部によって検出された電圧の変動を検出した場合に、前記第二処理で記憶したパルス周期のうち、前記電圧検出部によって検出された電圧の変動を検出する直前の一パルス分又は複数パルス分のパルス周期と、前記第二処理で記憶したパルス周期のうち、前記電圧検出部によって検出された電圧の変動を検出してから所定期間経過後の一パルス分又は複数パルス分のパルス周期との平均周期を算出する第三処理と、
前記所定期間を前記第三処理で算出した前記平均周期で除して得られる商を算出する第四処理と、を実行する。
【0008】
請求項2に係る発明によれば、請求項1において、
前記制御部が、
前記電圧検出部によって検出された電圧の変動を検出した場合に、前記所定期間の間における前記パルス信号のパルス数を計数する第五処理と、
前記第一処理で計数したパルス数から前記第五処理で計数したパルス数を減算し、それに前記第四処理で算出した商を加算する第六処理と、を更に実行する。
【0009】
請求項3に係る発明によれば、請求項2において、
前記制御部が、前記第一処理で計数したパルス数を前記第六処理の加算及び減算によって得られる値に更新する第七処理を更に実行する。
【0010】
請求項4に係る発明によれば、
モータ制御装置が、
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記モータの電圧を検出する電圧検出部と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を算出する第一処理と、
前記パルス信号のパルスごとに前記パルス信号のパルス周期を計時することで前記パルス信号のパルスごとに前記モータの回転速度を算出して、算出したパルスごとの回転速度を順次記憶する第二処理と、
前記電圧検出部によって検出された電圧の変動を検出した場合に、前記第二処理で記憶した回転速度のうち、前記電圧検出部によって検出された電圧の変動を検出する直前の一パルス分又は複数パルス分の回転速度と、前記第二処理で記憶したパルス周期のうち、前記電圧検出部によって検出された電圧の変動を検出してから所定期間経過後の一パルス分又は複数パルス分の回転速度との平均回転速度を算出する第三処理と、
前記所定期間に前記第三処理で算出した前記平均回転速度を乗じて得られる積を算出する第四処理と、を実行する。
【0011】
請求項5に係る発明によれば、請求項4において、
前記制御部が、
前記電圧検出部によって検出された電圧の変動を検出した場合に、前記所定期間の間における前記パルス信号のパルス数を計数することによって前記所定期間の間における前記モータの回転量を算出する第五処理と、
前記第一処理で算出した回転量から前記第五処理で算出した回転量を減算し、それに前記第四処理で算出した積を加算する第六処理と、を更に実行する。
【0012】
請求項6に係る発明によれば、請求項5において、
前記制御部が、前記第一処理で算出した回転量を前記第六処理の加算及び減算によって得られる値に更新する第七処理を更に実行する。
【発明の効果】
【0013】
請求項1に係る発明によれば、モータの電源電圧が変動しているであろう所定期間の間に抽出回路がパルス成分を正確に抽出できない場合でも、制御部がその所定期間の直前と直後のパルス周期の平均値でその所定期間を除することで、商を算出する。その商は、抽出回路がパルス成分を抽出できた場合のその所定期間のパルス数を表す。そのため、第一処理で計数されたパルス数が、抽出されなかったリプル成分のパルス数によって補足される。よって、正確なパルス数が求められる。
また、抽出回路がフィードバック制御回路のような閉ループ回路でないから、モータの電流信号の各成分の周波数が過渡的に又は急激に変化したものとしても、リプル成分が抽出回路によって正確に抽出される。
【0014】
請求項4に係る発明によれば、モータの電源電圧が変動しているであろう所定期間の間に抽出回路がパルス成分を正確に抽出できない場合でも、制御部がその所定期間の直前と直後の回転速度の平均値とその所定期間とを乗ずることで、積を算出する。その積は、抽出回路がパルス成分を抽出できた場合のその所定期間のモータの回転量を表す。そのため、第一処理で算出された回転量が、抽出されなかったリプル成分のパルス数に基づく回転量によって補足される。よって、モータの回転量が正確に算出される。
また、抽出回路がフィードバック制御回路のような閉ループ回路でないから、リプル成分が抽出回路によって正確に抽出される。
【図面の簡単な説明】
【0015】
【図1】本発明を適用した実施形態に係るモータ制御装置を示したブロック図である。
【図2】モータの電流信号の波形を示したタイミングチャートである。
【図3】モータの電流信号の波形を示したタイミングチャートである。
【図4】電流電圧変換器、ハイパスフィルタ、バンドパスフィルタ、フィルタと差動増幅器、増幅器及び波形整形部の入力信号及び出力信号の波形を示した図である。
【図5】フィルタの周波数特性を示したグラフである。
【図6】フィルタと差動増幅器を示した回路図である。
【図7】フィルタと差動増幅器の入力信号及び出力信号の波形を示したタイミングチャートである。
【図8】モータを起動させる処理の流れを示したフローチャートである。
【図9】モータの動作中にパルス信号のパルス数を計数する処理の流れを示したフローチャートである。
【図10】モータの動作中にモータの電源電圧が変動した場合の電源電圧、モータの電流信号及びパルス信号の波形を示したタイミングチャートである。
【図11】モータの動作中にパルス信号のパルス周期を計時する処理の流れを示したフローチャートである
【図12】モータの電源電圧が変動した際に所定の推定期間の間のパルス信号のパルス数を計数する処理の流れを示したフローチャートである。
【図13】モータの電源電圧が変動した際に所定の推定期間の間のパルス信号の推定パルス数を算出するする処理の流れを示したフローチャートである
【図14】モータの動作中に計数したパルス数を補正する処理の流れを示したフローチャートである。
【図15】車両用シートのシート本体を示した側面図である。
【図16】フィルタの周波数特性を示したグラフである。
【図17】フィルタの周波数特性を示したグラフである。
【発明を実施するための形態】
【0016】
以下に、本発明を実施するための形態について図面を用いて説明する。但し、以下に述べる実施形態には、本発明を実施するために技術的に好ましい種々の限定が付されているが、本発明の範囲を以下の実施形態及び図示例に限定するものではない。
【0017】
図1は、モータ制御装置1のブロック図である。
モータ制御装置1は、モータ2、抽出回路3、制御部4、記憶部5、モータドライバ6及びA/Dコンバータ7等を備える。
【0018】
モータ2は、直流モータである。電流がモータ2に流れると、モータ2が回転するとともに、モータ2が周期的なリプル(ripple)を電流に発生させる。モータ2の電流信号について図2及び図3を参照して説明する。図2は、モータ2が駆動される際にモータ2に流れる電流のレベルの変化を示したチャートである。図3は、図2に示されたA部における時間及び電流のスケールを大きくして示したチャートである。
【0019】
図2において、時刻T1はモータ2が起動したタイミングであり、時刻T2はモータ2が安定的に動作し始めるタイミングである。時刻T3は、モータ2によって駆動される可動部がストッパ等に当接して、モータ2の動力を可動部に伝える伝動機構が拘束され始めるタイミングである。時刻T4は、モータ2が停止するタイミングである。
図2及び図3に示すように、モータ2の電流信号は直流成分、リプル成分及び一又は複数の周波成分(交流成分)を含み、周波成分及びリプル成分が直流成分に重畳している。モータ2の電流信号のうち、電流のレベルが急激に変化した高周波成分はノイズである(例えば、符号n参照)。なお、図3は、高周波ノイズ成分がないものとして図示されている。
【0020】
時刻T1から時刻T2までの期間P1では、リプル成分r1と、リプル成分r1よりも周波数が低い低周波成分とが直流成分に重畳している。期間P1のうちモータ2の起動直後では、慣性力の影響により低周波成分の電流レベルが大きく、その後、低周波成分の電流レベルが時間の経過に伴って緩やかに減少する。また、モータ2の起動直後では、低周波成分よりも周波数が高いリプル成分r1の振幅が大きく、その後、リプル成分r1の周波数が時間の経過に伴って漸増するとともに、リプル成分r1の振幅が時間の経過に伴って漸減する。
時刻T2から時刻T3までの期間P2では、リプル成分r2と、リプル成分r2よりも周波数が低い低周波成分とが直流成分に重畳し、直流成分がほぼ一定で安定し、低周波成分の周波数及び振幅が安定し、リプル成分r2の周波数及び振幅が安定している。リプル成分r2の周波数が低周波成分の周波数よりも高くなるのは、モータ2に内蔵された複数のコイルが巻き線抵抗に差を有するためである。
時刻T3から時刻T4までの期間P3では、モータの電流信号のうち低周波成分の周波数が低くなり、低周波成分の電流レベルが時間の経過とともに漸増する。期間P3では、モータの電流信号のうちリプル成分r3の周波数が時間の経過に伴って漸減し、リプル成分r3の振幅が時間の経過に伴って漸増する。
【0021】
モータ2の電流信号のうち低周波成分及びリプル成分の周波数及び振幅は、様々な環境(例えば、モータ2に対する負荷、環境温度、モータ2の電源電圧等)の影響を受ける。そのため、環境が変化すれば、低周波成分及びリプル成分の周波数及び振幅が変化する。
【0022】
抽出回路3は、以上のようなモータ2の電流信号からリプル成分を抽出して、リプル成分をパルス化し、リプル成分がパルス化されてなるパルス信号を制御部4に出力する。抽出回路3及び抽出回路3を用いたリプル抽出方法について具体的に説明する。
【0023】
図1に示すように、抽出回路3は、電流電圧変換器10、ハイパスフィルタ(High-pass Filter)20、バンドパスフィルタ(Band-pass Filter)30、フィルタ40、差動増幅器50、増幅器60及び波形整形部70を備える。図4は、電流電圧変換器10、ハイパスフィルタ20、バンドパスフィルタ30、フィルタ40と差動増幅器50、増幅器60及び波形整形部70の入力信号及び出力信号を説明するための図である。図4において、電流電圧変換器10、ハイパスフィルタ20及びバンドパスフィルタ30の入力信号と出力信号が示されている期間は、図2における時刻T1から期間P2の初期にかけてである。フィルタ40と差動増幅器50、増幅器60及び波形整形部70の入力信号及び出力信号が示されている期間は、図2における期間P2の一部である。
【0024】
電流電圧変換器10は、モータ2の電流信号を入力する。電流電圧変換器10は、入力したモータ2の電流信号を電圧信号に変換する。具体的には、電流電圧変換器10が抵抗器11を有し、抵抗器11がグランドとモータ2の間に接続され、モータ2の電流信号が抵抗器11とモータ2の間における電圧信号に変換される。電流電圧変換器10は、変換した電圧信号をハイパスフィルタ20及びバンドパスフィルタ30を介してフィルタ40及び差動増幅器50に出力する。なお、電流電圧変換器10は、オペアンプを用いたもの(例えば、負帰還型電流電圧変換器)でもよい。
【0025】
ハイパスフィルタ20は、電流電圧変換器10によって変換された電圧信号(電流電圧変換器10の出力信号)を入力する。ハイパスフィルタ20は、電流電圧変換器10によって変換された電圧信号(電流電圧変換器10の出力信号)のうち高周波成分を通過させ、低周波成分を減衰させる。つまり、ハイパスフィルタ20は、電流電圧変換器10によって変換された電圧信号のうち直流成分を除去する。ハイパスフィルタ20は、バンドパスフィルタ30を介して、低周波成分が減衰した信号をフィルタ40及び差動増幅器50に出力する。
ハイパスフィルタ20は、オペアンプを用いたもの(例えば、負帰還型ハイパスフィルタ、正帰還型ハイパスフィルタ)又は抵抗器・キャパシタを用いたもの(例えば、CRハイパスフィルタ)である。
【0026】
バンドパスフィルタ30は、電流電圧変換器10によって変換された電圧信号をハイパスフィルタ20を介して入力する。バンドパスフィルタ30は、電流電圧変換器10によって変換された電圧信号(ハイパスフィルタ20の出力信号)のうち所定周波数帯域の成分を通過させ、その所定周波数帯域外の成分を減衰させる。つまり、バンドパスフィルタ30は、電流電圧変換器10によって変換された電圧信号(ハイパスフィルタ20の出力信号)のうち高周波ノイズ成分を除去するとともに、ハイパスフィルタ20によって除去しきれなかった低周波成分を除去する。バンドパスフィルタ30は、所定周波数帯域外の成分を減衰させた信号をフィルタ40及び差動増幅器50に出力する。
バンドパスフィルタ30は、オペアンプを用いたもの(例えば、多重負帰還型バンドパスフィルタ、多重正帰還型バンドパスフィルタ)又は抵抗器・キャパシタを用いたものである。
【0027】
フィルタ40は、電流電圧変換器10によって変換された電圧信号をハイパスフィルタ20及びバンドパスフィルタ30を介して入力し、その信号を濾波する。フィルタ40は、濾波した信号を差動増幅器50に出力する。
【0028】
図5は、フィルタ40の周波数特性を示したグラフである。
図5に示すように、フィルタ40は、バンドパスフィルタである。フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)のうち、低カットオフ周波数fc1から高カットオフ周波数fc2までの間の中間周波数帯域の成分を通過させる。低カットオフ周波数fc1<高カットオフ周波数fc2である。なお、カットオフ周波数とは、出力電力が入力電力の1/2となる周波数を指す。つまり、ゲインGが−3dbとなる周波数がカットオフ周波数である。
また、フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)のうち、低カットオフ周波数fc1を下回る低周波域の成分を減衰させる。具体的には、低カットオフ周波数fc1を下回る低周波域において、フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)に含まれる成分の周波数が低いほど減衰率がより高くなるように、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)の低周波域成分を減衰させる。
また、フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)のうち、高カットオフ周波数fc2を超える高周波域の成分を減衰させる。具体的には、高カットオフ周波数fc2を超える高周波域において、フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)に含まれる成分の周波数が低いほど減衰率がより低くなるように、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)の高周波域成分を減衰させる。
【0029】
図2及び図3に示したように、モータ2の電流信号は、リプル成分と、そのリプル成分よりも周波数が低い低周波成分とを重畳したものである。リプル成分の周波数は実験・測定等によって予め調べられ、フィルタ40の回路設計において、温度変化によるリプル成分の周波数の変動も考慮しつつ、フィルタ40の高カットオフ周波数fc2がリプル成分の周波数(例えば、常温時の周波数)よりも低く設定されている。従って、フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)のうちリプル成分を低周波成分(低周波成分はリプル成分よりも周波数が低い。)よりも高い減衰率で減衰させる。つまり、フィルタ40は、リプル成分を低周波成分よりも効率的に除去する。従って、フィルタ40は、リプル成分を除去した信号を差動増幅器50に出力する。
【0030】
差動増幅器50は、電流電圧変換器10によって変換された電圧信号をハイパスフィルタ20及びバンドパスフィルタ30を介して入力するとともに、フィルタ40の出力信号を入力する。差動増幅器50は、入力したフィルタ40の出力信号と、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)の差分を取って、その差分を増幅する。差動増幅器50は、その差分を表す差分信号を増幅器60に出力する。
【0031】
図6は、フィルタ40と差動増幅器50の一例を示した回路図である。図7(a)は図6に示されたA部における電圧信号の波形を示したタイミングチャートであり、図7(b)は図6に示されたB部における電圧信号の波形を示したタイミングチャートであり、図7(c)は図6に示されたC部における電圧信号の波形を示したタイミングチャートである。
【0032】
図6に示すように、フィルタ40は、ハイパスフィルタ41、ローパスフィルタ42及びハイパスフィルタ43を有する。バンドパスフィルタ30の出力がハイパスフィルタ41の入力に接続され、ハイパスフィルタ41の出力がローパスフィルタ42の入力に接続され、ローパスフィルタ42の出力がハイパスフィルタ43の出力に接続される。
【0033】
ハイパスフィルタ41は、二次のCRハイパスフィルタである。つまり、ハイパスフィルタ41は、キャパシタ41a、抵抗器41b、キャパシタ41c及び抵抗器41dを有する。なお、ハイパスフィルタ41が一つのキャパシタ及び抵抗器からなる一次のCRハイパスフィルタであってもよい。また、ハイパスフィルタ41が三次以上のCRハイパスフィルタでもよい。
ローパスフィルタ42は、二次のRCローパスフィルタである。つまり、ローパスフィルタ42は、抵抗器42a、キャパシタ42b、抵抗器42c及びキャパシタ42dを有する。なお、ローパスフィルタ42が一つの抵抗器及びキャパシタからなる一次のRCローパスフィルタであってもよい。また、ローパスフィルタ42が三次以上のRCローパスフィルタでもよい。
ハイパスフィルタ43は、キャパシタ43aからなる。
【0034】
差動増幅器50は抵抗器51,52、オペアンプ53、カップリングコンデンサ54及びバイアス回路55等を有する。オペアンプ53の出力端子が抵抗器52を介してオペアンプ53の反転入力端子に接続され、負帰還がオペアンプ53にかけられている。フィルタ40の出力信号(ハイパスフィルタ43の出力信号)が抵抗器51を介してオペアンプ53の反転入力端子に入力され、バンドパスフィルタ30の出力信号がカップリングコンデンサ54及びバイアス回路55を介してオペアンプ53の非反転入力端子に入力される。カップリングコンデンサ54は、バンドパスフィルタ30の出力信号の直流成分を除去する。バイアス回路55は、電源電圧とグランドの間に直列された抵抗器56,57を有する。バイアス回路55は、カップリングコンデンサ54によって直流成分を除去されたバンドパスフィルタ30の出力信号にバイアス電圧をかけて、バンドパスフィルタ30の出力信号の基準レベルを引き上げる。なお、カップリングコンデンサ54及びバイアス回路55を省略してもよい。
【0035】
差動増幅器50によって出力された差分信号は、電流電圧変換器10によって変換された電圧信号のうちリプル成分である。差動増幅器50によって出力された差分信号が、バンドパスフィルタ30の出力信号とフィルタ40の出力信号との差分を表すからこそ、モータ2の電流信号の各成分の周波数が環境変化によって変化しても、モータ2の電流信号に含まれるリプルを高精度に検出することができる。
【0036】
図1、図6に示すように、増幅器60は、差動増幅器50によって出力された差分信号(オペアンプ53の出力信号)を入力する。増幅器60は、差動増幅器50によって出力された差分信号を増幅して、それを波形整形部70に出力する。増幅器60は、例えば負帰還型増幅器である。
【0037】
波形整形部70は、差動増幅器50によって出力された差分信号(オペアンプ53の出力信号)を増幅器60を介して入力する。波形整形部70は、差動増幅器50によって出力された差分信号(増幅器60の出力信号)の波形を矩形波に整形する。具体的には、波形整形部70がコンパレータを有し、該コンパレータが、差動増幅器50によって出力された差分信号(増幅器60の出力信号)を基準電圧と比較することによって、差動増幅器50によって出力された差分信号(増幅器60の出力信号)をパルス信号に変換する。波形整形部70は、矩形波に整形されたパルス信号を制御部4に出力する。制御部4は、波形整形部70によって出力されたパルス信号を入力する。
【0038】
モータドライバ6は、制御部4からの指令に従ってモータ2を駆動する。つまり、モータドライバ6は、制御部4から起動指令及び回転向き指令を受けたら、モータ2をその回転向きに起動させる。モータドライバ6は、制御部4から受けた設定速度指令に従ってその設定速度でモータ2を駆動する。モータドライバ6は、制御部4から停止指令を受けたら、モータ2を停止する。
【0039】
A/Dコンバータ7は、電圧検出部である。つまり、A/Dコンバータ7は、モータ2の電源電圧を検出して、その電圧信号をデジタル信号に変換して、デジタル化した電圧データを制御部4に出力する。制御部4は、A/Dコンバータ7によって出力される電圧データを入力する。
【0040】
制御部4は、CPU4a及びRAM4b等を有するコンピュータである。CPU4aは、数値計算、情報処理、機器制御等の各種処理を行う。RAM4bは、一時記憶領域としての作業領域をCPU4aに提供する。
【0041】
記憶部5は、制御部4に接続されている。記憶部5は、不揮発性メモリ、ハードディスクといった読み書き可能な記憶媒体である。記憶部5は、一つの記憶媒体からなるものでもよいし、複数の記憶媒体を組み合わせたものでもよい。
【0042】
記憶部5には、初期位置データ5Aが格納されている。初期位置データ5Aは、モータ2が動作する前のモータ2の初期の回転位置や、モータ2によって駆動される可動部の初期位置を示す。具体的には、初期位置データ5Aは、モータ2が所定の原点位置から初期の回転位置まで回転した場合のパルス信号のパルス数である。そのパルス数に所定の定数を乗じて得られた値は、モータ2が所定の原点位置から初期の回転位置まで回転した場合の回転量であって、モータ2が動作する前のモータ2の初期の回転位置を示す。初期位置データ5Aは、予め設定されたデフォルト値であるか、又は以前にモータ2が動作した際に書き込まれた値である。仮にモータ2の初期の回転位置が原点位置であれば、初期位置データ5Aはゼロである。
【0043】
記憶部5には、制御部4にとって読み取り可能なプログラム5Zが格納されている。制御部4は、プログラム5Zを読み込んでそのプログラム5Zに従った処理を行ったり、そのプログラム5Zによって各種機能を実現したりする。なお、記憶部5が複数の記憶媒体を組み合わせたものである場合、プログラム5Zが記憶部5のROMに格納されていてもよい。
【0044】
制御部4は、プログラム5Zによって次に述べるような手段として機能する。
【0045】
制御部4は、回転向きに関する指令及び起動指令をモータドライバ6に出して、モータ2を起動させる起動手段として機能する。
制御部4は、波形整形部70の出力信号のパルス数を計数する計数手段として機能する。計数手段によって計数されたパルス数に所定の定数を乗じて得られる値が、モータ2の回転量に相当するとともに、モータ2によって駆動される可動部の移動量にも相当する。そのため、計数手段は、モータ2の回転量やモータ2によって駆動される可動部の移動量を算出する移動量算出手段でもある。
制御部4は、波形整形部70の出力信号のパルス周期(パルスの立ち上がりから次のパルスの立ち上がりまでの時間)をパルスごとに計時する計時手段として機能する。制御部4によって計時されたパルス周期の逆数に所定の定数を乗じて得られる値が、モータ2の回転速度に相当するとともに、モータ2によって駆動される可動部の速度に相当する。そのため、計時手段は、モータ2の回転速度やモータ2によって駆動される可動部の移動速度を算出する速度算出手段でもある。
制御部4は、計時手段によって計時されたパルスごとのパルス周期を順次記憶していく蓄積手段として機能する。
制御部4は、A/Dコンバータ7から入力した電圧データを監視するモニタ手段として機能する。
制御部4は、モニタ手段によって監視された電圧データの変動を検出した場合に、計時を開始して、その計時時間が所定の推定時間tになるまで計時を継続する第二計時手段として機能する。
制御部4は、計時手段によって計時が行われている間、前記計数手段による計数とは別に、波形整形部70の出力信号のパルス数を計数する第二計数手段として機能する。
制御部4は、蓄積手段によって順次記憶されたパルス周期のうち、モニタ手段によって監視された電圧データの変動を検出する直前の一パルス分又は複数パルス分のパルス周期T_beforeと、第二計時手段によって推定時間tまで計時された直後の一パルス分又は複数パルス分のパルス周期T_afterとの平均周期T_averageを算出する平均周期算出手段として機能する。
制御部4は、平均周期算出手段によって算出された平均周期T_averageで推定時間tを除することによって、その商としての推定パルス数を算出する推定パルス数算出手段として機能する。
制御部4は、計数手段によって計数されたパルス数から第二計数手段によって計数されたパルス数を減算し、それに推定パルス数算出手段によって算出された推定パルス数を加算する補正手段として機能する。
制御部4は、計数手段によって計数されたパルス数を演算手段の加算・演算によって算出された値に更新する更新手段として機能する。
制御部4は、停止指令をモータドライバ6に出して、モータ2を停止させる停止手段として機能する。
【0046】
プログラム5Zに基づく制御部4の処理の流れについて説明するとともに、制御部4の処理に伴うモータ制御装置1の動作について説明する。
【0047】
所定の条件が満たされると、制御部4がモータ2の起動処理(図8参照)を実行する。所定の条件が満たされるとは、例えば、ユーザが起動スイッチをオンにすること、起動センサがオンになること、制御部4によって実行されている処理(例えば、シーケンス処理)で所定の条件が満たされること等である。
【0048】
まず、制御部4は、モータ2の回転の向き(正回転か逆回転)を決定し、その回転の向きをRAM又は記憶部5に書き込む(ステップS11)。
【0049】
次に、制御部4は、ステップS11で決定した向きにモータ2を起動させる(ステップS12)。つまり、制御部4は、ステップS11で決定した向きに従った回転向き指令をモータドライバ6に出力するとともに、起動指令をそのモータドライバ6に出力する。これにより、モータ2が起動し、モータ2によって可動部が駆動される。以上により、モータ2の起動処理が終了する。
【0050】
モータ2の動作中は、抽出回路3がモータ2の電流信号からリプル成分を抽出(検出)して、リプル成分をパルス化する。そして、抽出回路3は、リプル成分がパルス化されてなるパルス信号を制御部4に出力する。
【0051】
モータ2が起動すると、制御部4は、抽出回路3から入力したパルス信号に基づいて、パルス信号のパルス数の計数、モータ2の回転量の算出及びモータ2の回転位置の算出を行う。より具体的には、制御部4が図9に示す処理を実行することによってパルス信号のパルス数の計数、モータ2の回転量の算出及びモータ2の回転位置の算出を行う。
【0052】
図9に示す処理について具体的に説明する。
制御部4は、A/Dコンバータ7から入力した電圧データを監視して、電圧データを所定の閾値と比較する(ステップS21)。上述のように制御部4がモータ2を起動させると(ステップS13)、モータ2に電流が通電するから、制御部4は電圧データが所定の閾値を上回った判定して、モータ2の通電・起動を検出する(ステップS21:Yes)。そして、制御部4が記憶部5から初期位置データ5Aを読み込んで、制御部4の処理がステップS22に移行する。
【0053】
電流がモータ2に通電すると、制御部4は抽出回路3によって出力されたパルス信号のパルス数を計数するとともに、モータ2の回転量及び回転位置を算出する(ステップS22,S23,S24、S25)。具体的には、まず、制御部4は、計数値Nをゼロにリセットする(ステップS22)。その後、制御部4は、抽出回路3によって出力されたパルス信号のパルスを入力するごとに(ステップS23:Yes)、計数値Nに1を加算することで計数値Nを更新するとともに(ステップS24)、読み込んだ初期位置データ5Aに更新後の計数値Nを加算するか、又は読み込んだ初期位置データ5Aから更新後の計数値Nを減算する(ステップS25)。制御部4は、ステップS25の演算をステップS11で決定した向きに従って決定する。例えば、ステップS11で決定した回転の向きが正回転である場合には、制御部4がステップS25で加算を行い、ステップS11で決定した回転の向きが逆回転である場合には、制御部4がステップS25で減算を行う。勿論、回転の向きと演算の関係が逆であってもよい。
【0054】
ステップS24において更新された計数値Nが、制御部4によって計数されたパルス数である。制御部4によって計数されたパルス数(計数値N)に所定の定数を乗じて得られる値がモータ2の回転量や可動部の移動量に相当するから、制御部4がパルス数(計数値N)を計数する処理(ステップS21〜ステップS26)は、制御部4がモータ2の回転量や可動部の移動量を算出する処理に相当する。また、ステップS25において求められた差や和が、モータ2の回転位置を示すとともに、原点位置を基準としてその原点位置からの距離を示す。
【0055】
制御部4は、モータ2の電流の遮断を検出するまでステップS23〜ステップS26の処理を繰り返す(ステップS26:No)。つまり、制御部4は、ステップS25の処理の後に、A/Dコンバータ7から入力した電圧データを所定の閾値と比較する(ステップS26)。そして、電圧データが所定の閾値を上回っている場合には(ステップS26:No)、制御部4の処理がステップS23に戻り、制御部4がステップS23〜ステップS25の処理を再度行う。一方、電圧データが所定の閾値を下回っている場合には(ステップS26:yes)、制御部4は図9に示す処理を終了する。
【0056】
制御部4が図9に示す処理を実行している時に所定の条件が満たされると、制御部4がモータドライバ6に停止指令を出力して、モータ2を停止させる。所定の条件とは、例えば、ユーザが停止スイッチをオンにすること、制御部4によって実行された処理(例えば、シーケンス処理)で所定の条件が満たされること、上述のステップS25において求めた差又は和が所定の値になることである。
【0057】
制御部4がモータ2を停止させると、モータ2の電流が遮断されるので、図9に示すように、制御部4がモータ2の電流の遮断を検出し(ステップS26:Yes)、制御部4は図9に示す処理を終了する。そして、制御部4は、図9に示すステップS23〜ステップS26の処理を繰り返している際に最後のステップS25において求めた差又は和を記憶部5に書き込む。具体的には、制御部4は、記憶部5に記憶された初期位置データ5AをステップS25で求めた和や差に書き換える。
【0058】
モータ2の動作中に、各種の外因(例えば、モータ2が備え付けられた自動車のエンジン始動時のクランキング等)が生じると、図10に示すようにモータ2の電源電圧が急激に変動する。モータ2の電源電圧が急激に変動すると、モータ2の電流値も急激に変動する。モータ2の電流値が急激に変動する際には、電流信号に含まれるリプル成分の振幅が縮小するため、抽出回路3がリプル成分の抽出することができない。リプル成分の振幅が縮小した期間では、抽出回路3によって出力されるパルス信号のパルス周期が延長し、その期間でのパルス数が減少する。そこで、制御部4は、次のような処理(図11〜図14参照)を行うことによって、モータ2の電源電圧が急激に変動している期間の間のパルス数を補完する。
【0059】
モータ2の動作中において、制御部4は、パルス信号のパルス周期を算出する。具体的には、制御部4が、図11に示すような処理を実行することによってパルスの立ち上がりから次のパルスの立ち上がりまでのパルス周期をパルスごとに順次算出し、算出したパルス周期をRAMや記憶部5に順次記憶する。
【0060】
まず、制御部4は、計時時間をゼロにリセットする(ステップS31)。次に、制御部4は、計時を開始するとともに、抽出回路3の出力パルス信号のパルスが立ち上がるまで計時を継続する(ステップS32、ステップS33:No)。そして、制御部4が抽出回路3の出力パルス信号のパルスの立ち上がりを検出したら(ステップS33:Yes)、制御部4が計時を終了するとともに(ステップS34)、計時時間をRAM若しくは記憶部5又はこれらの両方に記憶する(ステップS35)。そして、制御部4は計時時間を再びゼロにリセットする(ステップS31)。制御部4が以上のステップS31〜ステップS35の処理を繰り返すことによって、計時時間がRAM若しくは記憶部5又はこれらの両方に順次記憶される。RAM若しくは記憶部5又はこれらの両方に書き込まれた計時時間は、抽出回路3の出力パルス信号のパルス周期である。パルス周期の逆数が、モータ2の回転速度に示すとともに、モータ2によって駆動される可動部の速度を示す。従って、制御部4がパルスごとにパルス周期を計時する処理(ステップS31〜ステップS35)は、パルスごとにモータ2の回転速度や可動部の速度を求める処理に相当する。
【0061】
図10に示すようにモータ2の電源電圧がモータ2の動作中に急激に変動したら、制御部4はモータ2の電源電圧の変動中におけるパルス信号のパルス数を計数する。具体的には、モータ2の電源電圧が急激に変動したら、制御部4が図12に示すような処理を実行することによってパルス数を計数する。
【0062】
制御部4は、A/Dコンバータ7から入力した電圧データを監視して、電圧データを所定の閾値と比較する(ステップS41)。モータ2の電源電圧が急激に変動すると、電圧データが閾値を下回るから、制御部4が電圧データが閾値を下回ったことを検出する(ステップS41:Yes)。
【0063】
次に、制御部4は、推定期間tを設定する(ステップS42)。推定期間tは、予め設定された期間であって、プログラム5Zにプログラミングされたものである。推定期間tは、モータ2の電源電圧が変動している期間を示すものである。例えば、推定期間tは、予め実験等によって調査されたものである。なお、電圧変動幅と時間との関係を表したルックアップテーブル又は関数が予め記憶部5に格納されており、制御部4がA/Dコンバータ7の電圧データに基づいて電圧変動幅を検出し、検出した電圧変動幅をルックアップテーブル又は関数に当てはめることで推定期間tを求めてもよい。
【0064】
次に、制御部4は、計数値Mをゼロにリセットする(ステップS43)。
また、制御部4は、計数値Mのリセットと同時に計時時間をゼロにリセットして計時を開始するとともに(ステップS44)、計時時間が推定期間tに達するまで計時を継続する(ステップS47:No)。なお、制御部4は、図11に示す処理におけるパルス周期の計時と並行して、図12に示す処理における計時を行う。
【0065】
制御部4は、計時中に、抽出回路3によって出力されたパルス信号のパルスを入力するごとに(ステップS45:Yes)、計数値Mに1を加算することで計数値Mを更新する(ステップS46)。なお、制御部4は、図9におけるパルス数(計数値N)の計数処理と並行して、図12に示す処理における計数値Mの計数を行う。また、制御部4は、図11におけるパルス周期の計時処理と平行して、図12に示す処理における計時を行う。
【0066】
そして、計時時間が推定期間tに達したら、制御部4が計時を終了するとともに、計数値Mの計数を終了する(ステップS48)。次に、制御部4が、計数値MをRAM若しくは記憶部5又はこれらの両方に書き込む(ステップS49)。計数値Mは、モータ2の電源電圧が変動している期間(推定期間t)の間のパルス数である。なお、制御部4によって計数されたパルス数(計数値M)に所定の定数を乗じて得られる値がモータ2の回転量や可動部の移動量に相当するから、制御部4が推定期間tの間のパルス数(計数値M)を計数する処理(ステップS41〜ステップS49)は、制御部4が推定期間tの間のモータ2の回転量や可動部の移動量を算出する処理に相当する。
そして、制御部4は、計数値Mの書き込み後に、図12に示す処理を終了する。
【0067】
図10に示すようにモータ2の電源電圧がモータ2の動作中に急激に変動したら、制御部4は、モータ2の電源電圧が変動している期間(推定期間t)の間に仮にモータ2の電源電圧が変動しなかったとした場合におけるパルス数を推定する。具体的には、制御部4が図12に示すような処理を実行することによってパルス数を推定する。
【0068】
制御部4は、A/Dコンバータ7から入力した電圧データを監視して、電圧データを所定の閾値と比較する(ステップS51)。モータ2の電源電圧が急激に変動すると、電圧データが閾値を下回るから、制御部4が電圧データの急激な変動を検出する(ステップS51:Yes)。
【0069】
次に、制御部4は、推定期間tを設定する(ステップS52)。ステップS52において設定された推定期間tは、ステップS42において設定された推定期間tと同じである。
【0070】
次に、制御部4は、記憶部5又はRAMに記憶されたパルスごとのパルス周期(図11参照)のうち、A/Dコンバータ7によって検出されたモータ2の電源電圧の変動を検出する直前(推定期間tの直前)の一パルス分又は複数パルス分のパルス周期T_beforeを読み込む(ステップS53)。パルス周期T_beforeの逆数に所定の定数を乗じて得られる値は、推定期間tの直前のモータ2の回転速度に相当するとともに、推定期間t直前の可動部の速度に相当する。従って、制御部4がパルス周期T_beforeを読み込む処理(ステップS53)は、制御部4が推定期間tの直線のモータ2の回転速度や可動部の速度を読み込む処理に相当する。
【0071】
次に、制御部4は、記憶部5又はRAMに記憶されたパルスごとのパルス周期(図11参照)のうち、モータ2の電源電圧が変動してから推定期間tだけ経過した直後の一パルス分又は複数パルス分のパルス周期T_afterを読み込む(ステップS54)。パルス周期T_afterの逆数に所定の定数を乗じて得られる値は、推定期間tの直後のモータ2の回転速度に相当するとともに、推定期間t直後の可動部の速度に相当する。従って、制御部4がパルス周期T_afterを読み込む処理(ステップS54)は、制御部4が推定期間tの直後のモータ2の回転速度や可動部の速度を読み込む処理に相当する。なお、モータ2の電源電圧が変動してから推定期間tが経過していなければ、制御部4は、推定期間tが経過するのを待って、推定期間t経過直後の一パルス分又は複数パルス分のパルス周期T_afterを読み込む。
【0072】
次に、制御部4は、ステップS53で読み込んだ一パルス分又は複数パルス分のパルス周期T_beforeと、ステップS54で読み込んだ一パルス分又は複数パルス分のパルス周期T_afterとの平均周期T_averageを算出する(ステップS55)。なお、平均周期T_averageの逆数に所定の定数を乗じて得られる値が、推定期間t内におけるモータ2の平均回転速度に相当するとともに、推定期間t内における可動部の平均速度に相当する。そのため、制御部4が平均周期T_averageを算出する処理(ステップS55)は、制御部4が推定期間t内におけるモータ2の平均回転速度や可動部の平均速度を算出する処理に相当する。
【0073】
次に、制御部4は、推定時間tを平均周期T_averageで除して得られる商nを算出する(ステップS56)。商nは、モータ2の電源電圧が変動している期間(推定期間t)の間に仮にモータ2の電源電圧が変動しなかったとした場合における推定パルス数である。以下、商nを推定パルス数nともいう。
なお、平均周期T_averageの逆数に所定の定数を乗じて得られる値が推定期間t内におけるモータ2の平均回転速度や可動部の平均速度に相当するから、制御部4が推定時間tを平均周期T_averageで除して商を求める処理(ステップS56)は、制御部4が推定期間tにモータ2の平均回転速度又は可動部の平均速度を乗じて積を求める処理に相当する。その積は、モータ2の電源電圧が変動している期間(推定期間t)の間に仮にモータ2の電源電圧が変動しなかったとした場合におけるモータ2の推定回転量又は可動部の推定移動量である。
【0074】
制御部4は、推定パルス数nの算出後、図13に示す処理を終了する。
【0075】
制御部4は、図13に示す処理において推定パルス数nを求めたら、図12に示す処理で計数した計数値M(推定期間t中のパルス数)及び図13に示す処理で求めた推定パルス数nに基づき、図9に示す実行中の処理で計数中の計数値N(パルス数)を補正する。具体的には、制御部4が図14に示すような処理を実行することによってパルス数を推定する。つまり、制御部4は、計数中の計数値Nから計数値Mを減算して、それに推定パルス数nを加算する。そして、制御部4は、計数中の計数値Nを加算・減算後の値に更新する(ステップS61)。以上によって、計数値Nが計数値M及び推定パルス数nに基づき更新される。そして、図9に示す処理を実行している制御部4は、図14に示す処理の終了後の最初のステップS24で、補正後の計数値Nに対して1を加算して計数値Nを更新する。
【0076】
なお、制御部4によって更新された計数値N(パルス数)に所定の定数を乗じて得られる値は、モータ2の更新後の回転量や可動部の更新後の移動量に相当する。そのため、制御部4が計数値N(パルス数)から計数値Mを減算して、それに推定パルス数nを加算する処理(ステップS61)は、制御部4が算出中のモータ2の回転量(計数値Nに対応)から推定期間tのモータ2の回転量(計数値Mに対応)を減算し、推定期間tにモータ2の平均回転速度を乗じて算出した積(推定パルス数nに対応)をそれに加算する処理に相当する。また、制御部4が計数値N(パルス数)から計数値Mを減算して、それに推定パルス数nを加算する処理(ステップS61)は、制御部4が算出中の可動部の移動量(計数値Nに対応)から推定期間tの可動部の移動量(計数値Mに対応)を減算し、推定期間tに可動部の平均回転速度を乗じて算出した積(推定パルス数nに対応)をそれに加算する処理に相当する。
【0077】
以上に述べたことがモータ制御装置1の動作の説明である。図1に示されたモータ制御装置1は、例えば車両用シート装置に用いられる。その車両用シート装置は、図1に示されたモータ制御装置1と、図15に示されたシート本体90を備え、シート本体90の可動部がモータ2によって駆動される。なお、シート本体90の可動部の数とモータ2の数が同数であることが好ましく、モータ2の数が複数である場合、モータドライバ6及び抽出回路3がモータ2ごとに設けられ、制御部4及び記憶部5が全てのモータ2に共通している。
【0078】
シート本体90について具体的に説明する。シート本体90はレール91、シートボトム92、バックレスト93、ヘッドレスト94、アームレスト95及びレッグレスト96等を備える。
【0079】
シートボトム92がレール91の上に搭載され、シートボトム92がレール91よって前後方向に移動可能に設けられており、モータ2がシートボトム92を前後方向に駆動する。シートボトム92の前部が昇降可能に設けられ、別のモータ2がシートボトム92の前部を上下方向に駆動する。シートボトム92の後部が昇降可能に設けられ、別のモータ2がシートボトム92の後部を上下方向に駆動する。バックレスト93がリクライニング機構によってシートボトム92の後端部に回転可能に連結され、別のモータ2がバックレスト93をシートボトム92に対して起伏させる。ヘッドレスト94がバックレスト93の上端部に昇降可能・回転可能に連結され、別のモータ2がヘッドレスト94を上下方向に駆動し、更に別のモータ2がヘッドレスト94を前後に起伏させる。アームレスト95がバックレスト93の側面に回転可能に連結され、別のモータ2がアームレスト95を水平状態から垂直状態に及びその逆に駆動する。レッグレスト96がシートボトム92の前端部に回転可能に連結され、別のモータ2がレッグレスト96を跳ね上げ状態から垂下状態又はその逆に駆動する。
【0080】
本発明の実施の形態は、以下のような効果を奏する。
(1) モータ2の電源電圧が変動しているであろう推定期間tの間に抽出回路3がパルス成分を正確に抽出できない場合でも、制御部4がその推定期間tの直前と直後のパルス周期の平均値で推定期間tを除することで、その推定期間tの間のパルス数(商n)を算出する(図13参照)。そして、制御部4は、抽出回路3の出力パルス信号に基づくパルス数(計数値N)に推定のパルス数(商n)を加算することで、パルス数を補正する(図14参照)。よって、正確なパルス数が求められ、制御部4によって求められる回転量が実際のモータ2の回転量を正確に表す。
(2) フィルタ40の回路設計においてフィルタ40の高カットオフ周波数fc2がリプル成分の周波数よりも低く設定されているから、フィルタ40によってリプル成分を除去することができる。
(3) 差動増幅器50が、バンドパスフィルタ30の出力信号(電流電圧変換器10によって変換された電圧信号のうち直流成分及び高周波ノイズ成分等が除去されたもの)と、フィルタ40の出力信号(電流電圧変換器10によって変換された電圧信号のうち直流成分、高周波ノイズ成分及びリプル成分等が除去されたもの)の差分を取って、それを差分信号として出力する。そのため、差動増幅器50の出力信号は、電流電圧変換器10によって変換された電圧信号のうちリプル成分である。差動増幅器50の出力信号が差分信号であるからこそ、モータ2の電流信号の各成分の周波数が環境変化によって変動しても、リプル成分が正確に抽出されて、モータ2の電流信号中のリプルを高精度に検出することができる。
(4) 図5に示す周波数特性のうち、高カットオフ周波数fc2よりも高い領域の傾斜部分を利用したからこそ、リプル成分の周波数が温度変化により変動したものとしても、差動増幅器50の出力信号がリプル成分として正確に抽出される。
(5) フィルタ40の周波数特性を利用して、フィルタ40と差動増幅器50によってリプル成分を抽出したから、フィルタ40にカットオフ周波数可変型フィルタを用いなくても済む。そのため、フィルタ40のコストを削減することができる。
(6) 抽出回路3がフィードバック制御回路のような閉ループ回路でないから、モータ2の電流信号の各成分の周波数が過渡的に又は急激に変化したものとしても、リプルを正確に検出することができる。
(7) フィルタ40が抵抗器41b,41d,41a,41c及びキャパシタ41a,41c,41b,41d,43aからなるフィルタであるから、フィルタ40の構成がシンプルであり、フィルタ40のコストアップを抑えることができる。
(8) フィルタ40の周波数特性を利用して、フィルタ40と差動増幅器50によってリプル成分を抽出したから、ハイパスフィルタ20やバンドパスフィルタ30にカットオフ周波数可変型フィルタを用いなくても済む。そのため、ハイパスフィルタ20やバンドパスフィルタ30のコストアップを抑えることができる。
(9) 電流電圧変換器10によって変換された電圧信号のうち直流成分がハイパスフィルタ20によって除去されるから、そのハイパスフィルタ20の後段のバンドパスフィルタ30、フィルタ40及び差動増幅器50の処理が正確に行われる。
(10) 電流電圧変換器10によって変換された電圧信号のうち所定周波数帯域外の成分がバンドパスフィルタ30によって減衰するから、そのバンドパスフィルタ30の後段のフィルタ40や差動増幅器50の処理が正確に行われる。
【0081】
〔変形例〕
なお、本発明を適用可能な実施形態は、上述した実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。以下、変形例について説明する。以下に挙げる変形例は可能な限り組み合わせてもよい。
【0082】
〔変形例1〕
上述のステップS22において、制御部4は、計数値Nをゼロにリセットするのではなく、計数値Nを初期位置データ5Aに設定してもよい。この場合、ステップS25における処理が省略される。更に、ステップS24においては、制御部4が、抽出回路3によって出力されたパルス信号のパルスを入力するごとに、計数値Nに1を加算し又は減算することで計数値Nを更新する。制御部4は、ステップS24の演算をステップS11で決定した向きに従って決定する。例えば、ステップS11で決定した回転の向きが正回転である場合には、制御部4がステップS24で加算を行い、ステップS11で決定した回転の向きが逆回転である場合には、制御部4がステップS24で減算を行う。勿論、回転の向きと演算の関係が逆であってもよい。
ステップS24で更新した計数値Nは、モータ2の回転位置を示すとともに、原点位置を基準としてその原点位置からの距離を示す。
【0083】
〔変形例2〕
検出回路3は一例であり、上述の実施形態の回路に限るものではない。例えば、フィルタ40及び差動増幅器50を省略してもよい。その場合、リプル成分の周波数が変化しても、リプル成分を正確に抽出できるようにするために、スイッチト・キャパシタ・フィルタをバンドパスフィルタ30の後段であって増幅器60の前段に設けることが好ましい。スイッチト・キャパシタ・フィルタのカットオフ周波数が可変であり、リプル成分や低周波成分の周波数が変化した場合でも、スイッチト・キャパシタ・フィルタは、低周波成分を減衰させ、リプル成分を通過させる。
【0084】
〔変形例3〕
フィルタ40の回路設計において、温度変化によるリプル成分の周波数の変動も考慮しつつ、図5に示すフィルタ40の低カットオフ周波数fc1がリプル成分の周波数(例えば、常温時の周波数)よりも高く設定されている。従って、フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)のうちリプル成分を高周波成分(高周波成分はリプル成分よりも周波数が高い。)よりも高い減衰率で減衰させる。つまり、フィルタ40は、リプル成分を高周波成分よりも効率的に除去する。従って、フィルタ40は、リプル成分を除去した信号を差動増幅器50に出力する。
【0085】
この場合、モータ2の電流信号やフィルタ40及び差動増幅器50の入力信号は、リプル成分と、そのリプル成分よりも周波数が高い高周波成分とを重畳したものである。
【0086】
〔変形例4〕
フィルタ40がバンドパスフィルタではなく、図16に示すような周波数特性を有したローパスフィルタであってもよい。フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)のうちカットオフ周波数fc3以下の成分を通過させ、カットオフ周波数fc3を超える成分を減衰させる。具体的には、カットオフ周波数fc3を超える高周波域において、フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)に含まれる成分の周波数が低いほど減衰率がより低くなるように、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)を減衰させる。
【0087】
フィルタ40の回路設計において、温度変化によるリプル成分の周波数の変動も考慮しつつ、図16に示すフィルタ40のカットオフ周波数fc3がリプル成分の周波数(例えば、常温時の周波数)よりも低く設定されている。従って、フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)のうちリプル成分を低周波成分(低周波成分はリプル成分よりも周波数が低い。)よりも高い減衰率で減衰させる。つまり、フィルタ40は、リプル成分を低周波成分よりも効率的に除去する。従って、フィルタ40は、リプル成分を除去した信号を差動増幅器50に出力する。
【0088】
この場合、モータ2の電流信号やフィルタ40及び差動増幅器50の入力信号は、リプル成分と、そのリプル成分よりも周波数が低い低周波成分とを重畳したものである。
【0089】
フィルタ40がローパスフィルタである場合、図6に示すハイパスフィルタ41,43が省略され、バンドパスフィルタ30の出力がローパスフィルタ42の入力に接続され、ローパスフィルタ42の出力が抵抗器51を介してオペアンプ53の反転入力端子に接続される。
【0090】
〔変形例5〕
フィルタ40がバンドパスフィルタではなく、図17に示すような周波数特性を有したハイパスフィルタであってもよい。フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)のうちカットオフ周波数fc4以上の成分を通過させ、カットオフ周波数fc4を下回る成分を減衰させる。具体的には、カットオフ周波数fc4を下回る低周波域において、フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)に含まれる成分の周波数が低いほど減衰率がより高くなるように、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)を減衰させる。
【0091】
フィルタ40の回路設計において、温度変化によるリプル成分の周波数の変動も考慮しつつ、図17に示すフィルタ40のカットオフ周波数fc4がリプル成分の周波数(例えば、常温時の周波数)よりも高く設定されている。従って、フィルタ40は、電流電圧変換器10によって変換された電圧信号(バンドパスフィルタ30の出力信号)のうちリプル成分を高周波成分(高周波成分はリプル成分よりも周波数が高い。)よりも高い減衰率で減衰させる。つまり、フィルタ40は、リプル成分を高周波成分よりも効率的に除去する。従って、フィルタ40は、リプル成分を除去した信号を差動増幅器50に出力する。
【0092】
フィルタ40がハイパスフィルタである場合、図6に示すローパスフィルタ42が省略され、バンドパスフィルタ30の出力がハイパスフィルタ41の入力に接続されている。
【0093】
〔変形例6〕
フィルタ40がバンドパスフィルタではなく、バンドストップフィルタであってもよい。
【0094】
〔変形例7〕
ハイパスフィルタ20とバンドパスフィルタ30の一方又は両方を省略してもよい。ハイパスフィルタ20を省略した場合には、電流電圧変換器10の出力がバンドパスフィルタ30の入力に接続される。バンドパスフィルタ30を省略した場合には、ハイパスフィルタ20の出力がフィルタ40の入力及び差動増幅器50の入力に接続される。ハイパスフィルタ20とバンドパスフィルタ30の両方が省略されている場合には、電流電圧変換器10の出力がフィルタ40の入力及び差動増幅器50の入力に接続される。
【0095】
〔変形例8〕
モータ制御装置1が電動ドアミラー装置に組み込まれ、電動ドアミラー装置の可動部(例えば、ドアに対してミラーハウジングの格納及び展開をする格納機構、ミラーハウジングに対してミラーを上下に振るチルト機構、ミラーハウジングに対してミラーを左右に振るパン機構)がモータ制御装置1のモータ2によって駆動されてもよい。モータ制御装置1がパワーウィンドウ装置に組み込まれ、パワーウィンドウ装置の可動部(例えば、ウィンドウレギュレター)がモータ2によって駆動されてもよい。
【0096】
〔変形例9〕
フィルタ40がオペアンプを用いたもの(例えば、負帰還型ローパスフィルタ、正帰還型ローパスフィルタ、多重負帰還型バンドパスフィルタ、多重正帰還型バンドパスフィルタ)でもよい。
【符号の説明】
【0097】
2 モータ
3 抽出回路
4 制御部
5 記憶部
7 A/Dコンバータ(電圧検出部)

【特許請求の範囲】
【請求項1】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記モータの電圧を検出する電圧検出部と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数する第一処理と、
前記パルス信号のパルスごとに前記パルス信号のパルス周期を計時して、計時したパルス周期を順次記憶する第二処理と、
前記電圧検出部によって検出された電圧の変動を検出した場合に、前記第二処理で記憶したパルス周期のうち、前記電圧検出部によって検出された電圧の変動を検出する直前の一パルス分又は複数パルス分のパルス周期と、前記第二処理で記憶したパルス周期のうち、前記電圧検出部によって検出された電圧の変動を検出してから所定期間経過後の一パルス分又は複数パルス分のパルス周期との平均周期を算出する第三処理と、
前記所定期間を前記第三処理で算出した前記平均周期で除して得られる商を算出する第四処理と、を実行する、モータ制御装置。
【請求項2】
前記制御部が、
前記電圧検出部によって検出された電圧の変動を検出した場合に、前記所定期間の間における前記パルス信号のパルス数を計数する第五処理と、
前記第一処理で計数したパルス数から前記第五処理で計数したパルス数を減算し、それに前記第四処理で算出した商を加算する第六処理と、を更に実行する、請求項1に記載のモータ制御装置。
【請求項3】
前記制御部が、前記第一処理で計数したパルス数を前記第六処理の加算及び減算によって得られる値に更新する第七処理を更に実行する、請求項2に記載のモータ制御装置。
【請求項4】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記モータの電圧を検出する電圧検出部と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を算出する第一処理と、
前記パルス信号のパルスごとに前記パルス信号のパルス周期を計時することで前記パルス信号のパルスごとに前記モータの回転速度を算出して、算出した回転速度を順次記憶する第二処理と、
前記電圧検出部によって検出された電圧の変動を検出した場合に、前記第二処理で記憶した回転速度のうち、前記電圧検出部によって検出された電圧の変動を検出する直前の一パルス分又は複数パルス分の回転速度と、前記第二処理で記憶したパルス周期のうち、前記電圧検出部によって検出された電圧の変動を検出してから所定期間経過後の一パルス分又は複数パルス分の回転速度との平均回転速度を算出する第三処理と、
前記所定期間に前記第三処理で算出した前記平均回転速度を乗じて得られる積を算出する第四処理と、を実行する、モータ制御装置。
【請求項5】
前記制御部が、
前記電圧検出部によって検出された電圧の変動を検出した場合に、前記所定期間の間における前記パルス信号のパルス数を計数することによって前記所定期間の間における前記モータの回転量を算出する第五処理と、
前記第一処理で算出した回転量から前記第五処理で算出した回転量を減算し、それに前記第四処理で算出した積を加算する第六処理と、を更に実行する、請求項4に記載のモータ制御装置。
【請求項6】
前記制御部が、前記第一処理で算出した回転量を前記第六処理の加算及び減算によって得られる値に更新する第七処理を更に実行する、請求項5に記載のモータ制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2012−196029(P2012−196029A)
【公開日】平成24年10月11日(2012.10.11)
【国際特許分類】
【出願番号】特願2011−57338(P2011−57338)
【出願日】平成23年3月16日(2011.3.16)
【出願人】(000220066)テイ・エス テック株式会社 (625)
【Fターム(参考)】