以下、本発明の実施の形態におけるモータ駆動装置について図面を参照しながら説明する。
(実施の形態1)
図1は、本発明の実施の形態1におけるモータ駆動装置20の構成を示すブロック図である。
図1に示すように、本実施の形態におけるモータ駆動装置20は、モータ10と位置検出器11とに接続される。モータ10は、巻線を巻回した固定子(図示せず)と、巻線を通電駆動することで回転する可動子(図示せず)とを備えている。本実施の形態では、モータ10がU相、V相、W相とする3相の巻線を有し、各相をパルス幅変調(PWM)された信号で回転駆動するブラシレスモータの一例を挙げて説明する。
位置検出器11は、モータ10内に備えた可動子の回転位置を検出し、その回転位置に応じた位置検出信号Pdを出力する。一方、可動子の回転速度を指令するため、モータ駆動装置20には、速度指令を示す速度指令信号Vrが通知される。
モータ駆動装置20は、図1に示すように、減算器21と、駆動制御部22と、制限値生成部23と、リミッタ24と、PWM信号生成部25と、駆動出力部26と、速度検出部27とを備えている。
位置検出器11からの位置検出信号Pdは、速度検出部27に供給される。速度検出部27は、位置検出信号Pdが示す位置情報を利用し、例えば位置変化からモータ10の可動子の回転速度を検出し、検出した回転速度を示す速度検出信号Vdを出力する。このように、本実施の形態では、可動子の回転速度を示す速度検出信号Vdが通知され、また、回転速度を制御するために指令された指令速度を示す速度指令信号Vrが通知される。そして、モータ駆動装置20は、速度検出信号Vdと速度指令信号Vrとに基づき、可動子の回転速度が指令速度に追従するようにフィードバック制御する速度制御系が構成されている。
減算器21は、速度検出信号Vdと速度指令信号Vrとの差分を求めることで、検出した回転速度と指令速度との速度偏差量を求める。この速度偏差量は速度偏差信号dvとして駆動制御部22に供給される。
駆動制御部22は、速度偏差信号dvに対して例えば比例積分などの演算処理を行い、速度偏差信号dvがゼロとなるように制御するための駆動信号trqを生成し、出力する。駆動信号trqは、制限値生成部23およびリミッタ24に供給される。
なお、以下、このような速度制御系の構成例を挙げて説明するが、例えば、位置検出信号と位置指令信号との偏差量に基づき駆動信号trqを生成し、制限値生成部23およびリミッタ24に供給し、モータ可動子の位置を制御するような位置制御系の構成などであってもよい。
リミッタ24は、駆動信号trqの値の範囲を制限し、より具体的には、駆動信号trqが所定の値以下となるように制御する。本実施の形態では、リミッタ24は、駆動信号trqが制限値lmtを越えるとき、駆動信号trqの値が制限値lmtとなるように制限して出力する。また、駆動信号trqが制限値lmtを越えないときは、駆動信号trqの値をそのまま出力する。リミッタ24は、このように処理した信号をリミッタ出力信号tlmとして、PWM信号生成部25に供給する。また、詳細については以下で説明するが、制限値生成部23は、駆動信号trqを用いて制限値lmtを生成し、生成した制限値lmtをリミッタ24に通知する。
PWM信号生成部25は、リミッタ出力信号tlmに応じてパルス幅変調されたPWM信号tpを生成する。具体的には、リミッタ出力信号tlmの値に応じたデューティ比となるように、PWM信号tpの各パルスのデューティ比が設定される。このようなPWM信号tpが駆動出力部26に供給される。なお、リミッタ24により駆動信号trqの値が制限されない程度に小さい場合には、駆動信号trqに応じたデューティ比となり、制限された場合には、制限値lmtに応じたデューティ比に制限されることになる。
駆動出力部26は、PWM信号tpに応じた通電信号を相ごとに生成し、通電信号UVWによりモータ10の巻線を通電駆動する。
モータ駆動装置20は、このように構成されており、リミッタ出力信号tlm、すなわち速度偏差量が大きいほど、PWM信号生成部25で生成されるPWM信号tpのデューティ比も高くなる。また、PWM信号tpのデューティ比が高くなると、固定子の巻線には、より多くの通電電流が流れることになる。また、例えば、回転速度が高速となるように速度指令信号Vrを変更した場合も、速度偏差量が大きくなり、駆動信号trqに対応する駆動量は増加するように変化するため、多くの通電電流が流れることになる。本実施の形態では、制限値生成部23が、このような過大電流を抑制するための制限値lmtを生成する構成としている。
以下、このような制限値lmtを生成する制限値生成部23の詳細について説明する。
図2は、本発明の実施の形態1におけるモータ駆動装置20の制限値生成部23のブロック図である。図2に示す制限値生成部23は、クロック信号による所定の周期でデジタル処理する構成例を挙げている。すなわち、駆動信号trqは、クロック信号の周期ごとに値を有したデータ列として入力され、制限値lmtもクロック単位で生成され、クロック信号の周期ごとの値として出力される。
制限値生成部23は、図2に示すように、加算器30と加算器31と比較器32とセレクタ33とラッチ34とを備える。
駆動制御部22から制限値生成部23に供給された駆動信号trqはこれらの構成要素によって処理され、この処理によって制限値lmtが生成され、生成された制限値lmtが、クロック単位でラッチ34に取り込まれ保持される。
駆動制御部22から供給された駆動信号trqは、まず加算器30に供給される。加算器30は、駆動信号trqに所定の値のオフセット値ofsを加算し、この加算結果を比較信号(trq+ofs)として出力する。ここで、オフセット値ofsは正の値を有する。この比較信号(trq+ofs)は、次に説明する比較器32での比較の基準として利用される。なお、詳細については以下で説明するが、本実施の形態では、駆動信号trqにこのようなオフセット値ofsを加算した比較信号(trq+ofs)を利用して制限値lmtを生成しており、これによって、定常状態においてはモータの制御動作を阻害することなく、安定な制御動作を可能としている。また、比較信号(trq+ofs)もクロック信号の周期ごとに値を有したデータ列であり、以下、ある時点での比較信号(trq+ofs)の値を比較値(trq+ofs)として説明する。
比較器32には、この比較値(trq+ofs)とラッチ34に保持した制限値lmtとが供給される。比較器32は、比較値(trq+ofs)とラッチ34からの制限値lmtとの値の大きさを比較する。比較器32の比較結果はセレクタ33に通知される。セレクタ33には、さらに、比較値(trq+ofs)とともに、加算器31により制限値lmtに所定の値の変更値dlmを加算した値が供給される。ここで、変更値dlmは正の値を有する。セレクタ33は、比較器32の比較結果に応じて、ラッチ34からの制限値lmtが比較値(trq+ofs)よりも小さいとき、制限値lmtに変更値dlmを加算した値を選択し、ラッチ34からの制限値lmtが比較値(trq+ofs)以上のとき比較値(trq+ofs)を選択して出力する。なお、加算器31により加算される変更値dlmは、オフセット値ofsよりも小さな値が好ましい。
図2では、比較器32の入力端子aに制限値lmt、入力端子bに比較値(trq+ofs)が供給される。比較器32は、入力端子aと入力端子bとの値を比較し、その比較結果をセレクタ33の選択制御端子Sに通知する。セレクタ33は、選択制御端子Sの値に応じて、入力端子Aか入力端子Bかに供給された値を、出力端子Oから出力する。すなわち、制限値生成部23では、比較器32の入力端子aに供給された制限値lmtが、入力端子bに供給された比較値(trq+ofs)よりも小さいとき、比較器32はa<bと判定し、その結果、セレクタ33は、制限値lmtに変更値dlmを加算した値を出力する。また、比較器32の入力端子aに供給された制限値lmtが、入力端子bに供給された比較値(trq+ofs)以上のとき、比較器32の結果に応じて、セレクタ33は比較値(trq+ofs)を出力する。
セレクタ33から出力された値は、ラッチ34にクロックのタイミングで取り込まれる。すなわち、ラッチ34のクロック端子CKには、所定の周期のクロック信号が供給されている。そして、ラッチ34は、入力端子Dに供給されたセレクタ33からの値をクロック信号のタイミングで取り込む。ラッチ34で取り込まれた信号は、ラッチ34の出力端子Qから、新たな制限値lmtとしてリミッタ24へと出力される。また、新たな制限値lmtは、比較器32および加算器31にも供給され、これによって次のクロック単位の処理が行われる。
以上説明したように、制限値生成部23は、駆動信号trqにオフセット値ofsを加算した比較信号を生成し、比較信号の値(trq+ofs)と制限値lmtとの大小関係に基づき制限値lmtを更新する。より具体的には、制限値生成部23は、制限値lmtが比較信号の現在の値(trq+ofs)以上のとき、比較信号の現在の値(trq+ofs)を新たな制限値lmtとし、制限値lmtが比較信号の現在の値(trq+ofs)よりも小さいとき、制限値lmtに変更値dlmを加えた値を新たな制限値lmtとする構成である。
次に、このように構成された制限値生成部23およびリミッタ24の動作について説明する。
図3は、本発明の実施の形態1におけるモータ駆動装置20の制限値lmtの変化を含む波形図である。また、図4は、本発明の実施の形態1におけるモータ駆動装置20のリミッタ出力信号tlmを含む波形図である。図3および図4では、値Tr0となる駆動信号trqに対応した回転速度から、速度指令信号Vrによって、値Tr1となる駆動信号trqに対応した回転速度へと変更した速度制御の場合の一例を挙げている。すなわち、駆動信号trqに対応する駆動量が増加するようにその駆動量が変化した場合の一例を示している。
まず、図3を用いて、制限値生成部23が制限値lmtを生成する動作について説明する。図3において、駆動信号trqは、時刻t1まで、一定な値Tr0として制限値生成部23に供給される。そして、速度指令信号Vrが高速となるように変更されたのに応答して、駆動信号trqは、時刻t1から急激な増加を開始する。駆動信号trqは、一旦、収束値Tr1を越えるオーバーシュートの期間を経た後、収束値Tr1へと収束する。また、比較値(trq+ofs)は、駆動信号trqにオフセット値ofsを加算した値であるため、駆動信号trqに応じて図3のように変化する。
ここで、時刻t1までの期間は、比較値(trq+ofs)と制限値lmtとは等しいため、セレクタ33は比較値(trq+ofs)を選択する。これにより、時刻t1までの期間は、制限値lmtとして、駆動信号trqにオフセット値ofsを加算した値がリミッタ24に供給される。
次に、時刻t1になると、駆動信号trqは、急激に増加していくため、新たな駆動信号trqの値が供給されるごとに、その値も増加している。これに伴なって、新たな比較値(trq+ofs)も増加している。このため、ラッチ34から出力される現在の制限値lmtに比べて、新たな比較値(trq+ofs)のほうが大きい。そこで、セレクタ33は、現在の制限値lmtに変更値dlmを加算した値を選択する。そして、現在の制限値lmtに変更値dlmを加算した値が、新たな制限値lmtとしてラッチ34から出力される。すなわち、図3において、時刻t1から時刻t2までの期間では、現在の制限値lmtに比べて新たな比較値(trq+ofs)のほうが大きいため、制限値lmtはクロック単位ごとに変更値dlmで増加していくような特性となる。
次に、時刻t2以降は、駆動信号trqの減少に伴ない、ラッチ34から出力される現在の制限値lmtに比べて、新たな比較値(trq+ofs)はそれ以下の値となる。このため、セレクタ33は比較値(trq+ofs)を選択する。これにより、時刻t2以降は、制限値lmtとして、駆動信号trqにオフセット値ofsを加算した値がリミッタ24に供給される。
以上、ある回転速度から高速となるように速度変更したとき、図3に示すような制限値lmtがリミッタ24に供給される。
図4では、リミッタ24の入力信号である駆動信号trq、制限値lmtおよびリミッタ出力信号tlmを示している。図4に示すように、期間Tlmtの間は、駆動信号trqが制限値lmtにより制限されて出力される。また、駆動信号trqが大きいと、それに応じてモータ巻線への電流も多くなる。これに対し、本モータ駆動装置20は、図4に示すように、モータの速度を変更したときの駆動信号trqをスローアップで変化するように制限できるため、モータの速度変更時に流れる突入電流のような過大な電流を抑制できる。また、モータの速度変更時におけるリミッタ出力信号tlmはゆるやかに変化しながら増加するため、制限時における騒音も抑制でき、メカ部への衝撃も抑えることができる。また、以上速度制御系に本発明を適用した例を挙げて説明したが、例えば、位置制御系における位置変更時などへの適用も同様であり、要するに駆動量の変化に応じてモータ可動子を動かすような構成に本発明を適用することで、同様の効果を得ることができる。
なお、以上、制限値生成部23が各機能ブロックによるデジタル処理で制限値lmtを生成するような構成例を挙げて説明したが、例えば、プログラムのような処理手順に基づく処理で行うような構成であってもよい。一例として、図1の減算器21、駆動制御部22、制限値生成部23、リミッタ24、PWM信号生成部25、速度検出部27の機能をプログラムとしてメモリなどに記憶させ、マイコンがそのプログラムを実行するような構成とすることによっても、本実施の形態を実現できる。すなわち、モータを駆動するための駆動信号を生成するステップと、駆動信号の値の範囲を制限するステップと、制限値を生成するステップと、駆動信号の値の範囲を制限した出力信号に応じた通電信号を生成し、通電信号によりモータの巻線を通電するステップとを備え、制限値を生成するステップが、駆動信号にオフセット値を加算した比較信号を生成し、比較信号の値と制限値との大小関係に基づき制限値を更新するようなモータ駆動方法をマイコンが実行する構成でも本発明を実施できる。
図5は、本発明の実施の形態1におけるモータ駆動装置20の制限値lmtを生成する処理のフローチャートである。制限値生成部23は、図5のフローチャートの手順に従って処理を実行するような制限値を生成するステップの構成であってもよい。
制限値生成部23は、まず、ステップS101において、制限値lmtと比較値(trq+ofs)とを比較する。制限値lmtが比較値(trq+ofs)よりも小さいとき(ステップS101においてNoのとき)、ステップS102において、制限値lmtに変更値dlmを加算した値を新たな制限値lmtとする。また、制限値lmtが比較値(trq+ofs)以上のとき(ステップS101においてYesのとき)、ステップS103において、比較値(trq+ofs)を新たな制限値lmtとする。
このように新たな制限値lmtに更新した後、例えば呼び出し元の処理に戻る。制限値生成部23がこのような処理を繰り返すことによっても、制限値lmtを生成することができる。
以上のように、本実施の形態における制限値生成部23は、駆動信号trqに正の値のオフセット値ofsを加算した比較信号(trq+ofs)を生成し、比較信号(trq+ofs)の値と制限値lmtとの大小関係に基づき制限値lmtを更新する。また、リミッタ24は、駆動信号trqが制限値lmtを越えたとき、駆動信号trqの値が制限値lmtとなるように制限する。そして、本実施の形態では、制限値生成部23は、制限値lmtが比較信号(trq+ofs)の値以上のとき、比較信号(trq+ofs)の値を新たな制限値lmtとし、制限値lmtが比較信号(trq+ofs)の値よりも小さいとき、制限値lmtに所定の値dlmを加えた値を新たな制限値lmtとする。
この構成により、モータ10の速度変更時など、駆動量が変化するときのリミッタ出力信号tlmがゆるやかに変化しながら増加するように制限できるため、駆動量の変化時におけるモータ10の電流抑制とともに、駆動量の変化時における騒音も抑制できる。
(実施の形態2)
図6は、本発明の実施の形態2におけるモータ駆動装置50の構成を示すブロック図である。
図1に示す実施の形態1のモータ駆動装置20との比較において、制限値生成部53が、図1の制限値生成部23と異なった構成となっている。
図7は、本発明の実施の形態2におけるモータ駆動装置50の制限値生成部53のブロック図である。本実施の形態の制限値生成部53は、実施の形態1の制限値生成部23の機能に加えて、駆動信号trqの上限を制限するような機能をさらに備えている。なお、実施の形態1と同様の構成要素については同一の符号を付しており、詳細な説明は省略する。
図7に示す制限値生成部53は、さらに、比較器35、比較器37、セレクタ36、セレクタ38を備えている。さらに、制限値生成部53は、制限値lmtの上限を示す上限値uppが設定されている。上限値uppは、制限値lmtの上限を設定する値であるため、比較的大きな値が設定される。
図7において、比較器35の入力端子aにはラッチ34からの制限値lmt、入力端子bには上限値uppが供給される。比較器35は、入力端子aと入力端子bとの値を比較し、その比較結果をセレクタ36の選択制御端子Sに通知する。セレクタ36は、選択制御端子Sの値に応じて、入力端子Aか入力端子Bかに供給された値を、出力端子Oから出力する。すなわち、比較器35の入力端子aに供給された制限値lmtが、入力端子bに供給された上限値uppよりも小さいとき、比較器35はa<bと判定し、その結果、セレクタ36は、制限値lmtに変更値dlmを加算した値を出力する。また、比較器35の入力端子aに供給された制限値lmtが、入力端子bに供給された上限値upp以上のとき、比較器35の結果に応じて、セレクタ36は上限値uppを出力する。
また、比較器37の入力端子aには上限値upp、入力端子bには比較値(trq+ofs)が供給される。比較器37は、入力端子aと入力端子bとの値を比較し、その比較結果をセレクタ38の選択制御端子Sに通知する。セレクタ38は、選択制御端子Sの値に応じて、入力端子Aか入力端子Bかに供給された値を、出力端子Oから出力する。すなわち、比較器37の入力端子aに供給された上限値uppが、入力端子bに供給された比較値(trq+ofs)よりも小さいとき、比較器37はa<bと判定し、その結果、セレクタ38は、セレクタ36の出力値を出力する。また、比較器37の入力端子aに供給された上限値uppが、入力端子bに供給された比較値(trq+ofs)以上のとき、比較器37の結果に応じて、セレクタ38はセレクタ33の出力値を出力する。
セレクタ38から出力された値は、ラッチ34にクロックのタイミングで取り込まれる。ラッチ34で取り込まれた信号は、新たな制限値lmtとしてリミッタ24へと出力される。また、新たな制限値lmtは、比較器32、加算器31および比較器35にも供給され、これによって次のクロック単位の処理が行われる。
このような制限値生成部53に構成により、まず、比較値(trq+ofs)の現在の値が上限値upp以下の場合は、実施の形態1と同様の処理を行う。すなわち、制限値lmtが比較値(trq+ofs)の現在の値以上のとき、比較値(trq+ofs)の現在の値を新たな制限値lmtとし、制限値lmtが比較値(trq+ofs)の現在の値よりも小さいとき、制限値lmtに変更値dlmを加えた値を新たな制限値lmtとする。
一方、比較値(trq+ofs)の現在の値が上限値uppよりも大きいとき、制限値生成部53は、次のような処理を行う。すなわち、制限値lmtが上限値upp以上のとき、上限値uppを新たな制限値lmtとし、制限値lmtが上限値uppよりも小さいとき、制限値lmtに変更値dlmを加えた値を新たな制限値lmtとしている。
図8は、本発明の実施の形態2におけるモータ駆動装置50の制限値lmtの変化を含む波形図である。また、図9は、本発明の実施の形態2におけるモータ駆動装置50のリミッタ出力信号tlmを含む波形図である。図8および図9は、図3および図4と同様に、速度指令信号Vrによって、回転速度が高速となるように変更した速度制御の場合の一例を挙げている。
図8において、駆動信号trqは、時刻t1まで、一定な値として制限値生成部53に供給される。そして、速度指令信号Vrが高速となるように変更されたのに応答して、駆動信号trqは、時刻t1から急激な増加を開始する。駆動信号trqは、一旦、収束値を越えるオーバーシュートの期間を経た後、収束値へと収束する。また、比較値(trq+ofs)は、駆動信号trqに応じて図8のように変化する。
ここで、時刻t1までの期間は、まず、上限値uppが比較値(trq+ofs)以上である。そして、比較値(trq+ofs)と制限値lmtとは等しい。このため、セレクタ38は、セレクタ33の出力を選択する。そして、セレクタ33は比較値(trq+ofs)を選択する。これにより、時刻t1までの期間は、制限値lmtとして、駆動信号trqにオフセット値ofsを加算した値がリミッタ24に供給される。
次に、時刻t1になると、駆動信号trqは、急激に増加していくため、新たな駆動信号trqの値が供給されるごとに、その値も増加している。これに伴なって、新たな比較値(trq+ofs)も増加している。このため、ラッチ34から出力される現在の制限値lmtに比べて、新たな比較値(trq+ofs)のほうが大きい。そこで、セレクタ33は、現在の制限値lmtに変更値dlmを加算した値を選択する。一方、時刻t1から時刻t5までは、上限値uppが比較値(trq+ofs)以上であるため、セレクタ38は、セレクタ33の出力を選択する。よって、時刻t1から時刻t5までの期間は、現在の制限値lmtに変更値dlmを加算した値が、新たな制限値lmtとしてラッチ34から出力される。
次に、時刻t5を越えた時点で、上限値uppが比較値(trq+ofs)よりも小さくなり、セレクタ38はセレクタ36の出力を選択する。一方、制限値lmtは上限値uppよりも小さい。このため、セレクタ36は、現在の制限値lmtに変更値dlmを加算した値を選択する。よって、時刻t5から時刻t6までの期間も、現在の制限値lmtに変更値dlmを加算した値が、新たな制限値lmtとしてラッチ34から出力される。
すなわち、図8において、時刻t1から時刻t6までの期間では、制限値lmtはクロック単位ごとに変更値dlmで増加していくような特性となる。
次に時刻t6となった時点で、制限値lmtは上限値uppと等しくなる。このため、セレクタ36は上限値uppを選択して出力する。一方、時刻t6から時刻t7までの期間では、上限値uppが比較値(trq+ofs)よりも小さいので、セレクタ38はセレクタ36の出力を選択している。このため、時刻t6から時刻t7までの期間は、上限値uppが制限値lmtとしてラッチ34から出力される。また、このような処理により、時刻t6から時刻t7までの期間において、制限値lmtが上限値uppで制限される。
次に、時刻t7以降は、上限値uppが比較値(trq+ofs)以上となるので、セレクタ38はセレクタ33の出力を選択する。一方、駆動信号trqの減少に伴ない、現在の制限値lmtに比べて、新たな比較値(trq+ofs)はそれ以下の値となる。このため、セレクタ33は比較値(trq+ofs)を選択する。これにより、時刻t7以降は、制限値lmtとして、駆動信号trqにオフセット値ofsを加算した値がリミッタ24に供給される。
以上説明した制限値生成部53の動作により、ある回転速度から高速となるように速度変更したとき、図8に示すような制限値lmtがリミッタ24に供給される。
図9では、リミッタ24の入力信号である駆動信号trq、制限値lmtおよびリミッタ出力信号tlmを示している。図9に示すように、図4のリミッタ出力信号tlmと比較して、リミッタ出力信号tlmのピーク値が上限値uppに制限されるため、モータの速度変更時に流れる突入電流のような過大な電流をさらに抑制できる。
なお、本実施の形態においても速度制御系に本発明を適用した例を挙げて説明したが、これに限定されず、駆動量を変更してモータ可動子を動かすような構成に本発明を適用することで、同様の効果を得ることができる。
また、以上、制限値生成部53が各機能ブロックによるデジタル処理で制限値lmtを生成するような構成例を挙げて説明したが、例えば、実施の形態1で説明したように、プログラムのような処理手順に基づく処理で行うような構成のほうが一般的である。すなわち、図6の各機能をプログラムとしてメモリなどに記憶させ、マイコンがそのプログラムを実行するような構成とし、そのプログラムに基づくモータ駆動方法を実行する構成とすることもできる。
図10は、本発明の実施の形態2におけるモータ駆動装置50の制限値lmtの生成処理のフローチャートである。制限値生成部53は、図10のフローチャートの手順に従って処理を実行するような制限値を生成するステップの構成であってもよい。
制限値生成部53は、まずステップS100において、上限値uppと比較値(trq+ofs)とを比較する。上限値uppが比較値(trq+ofs)以上のとき、ステップS101に進む。また、上限値uppが比較値(trq+ofs)よりも小さいとき、ステップS104に進む。
制限値生成部53は、ステップS101において、制限値lmtと比較値(trq+ofs)とを比較する。制限値lmtが比較値(trq+ofs)よりも小さいとき、ステップS102において、制限値lmtに変更値dlmを加算した値を新たな制限値lmtとする。また、制限値lmtが比較値(trq+ofs)以上のとき、ステップS103において、比較値(trq+ofs)を新たな制限値lmtとする。
また、制限値生成部53は、ステップS104において、制限値lmtと上限値uppとを比較する。制限値lmtが上限値uppよりも小さいとき、ステップS105において、制限値lmtに変更値dlmを加算した値を新たな制限値lmtとする。また、制限値lmtが上限値upp以上のとき、ステップS106において、上限値uppを新たな制限値lmtとする。
このように新たな制限値lmtに更新した後、例えば呼び出し元の処理に戻る。制限値生成部53がこのような処理を繰り返すことによっても、図8に示すような制限値lmtを生成することができる。
図11は、本発明の実施の形態2におけるモータ駆動装置50の速度を変化させたときに流れる電流の測定結果を示した図である。図11において、上段の波形は、速度指令信号Vrとそれに応答する実際のモータ速度とを示している。図11の中段の波形は、PWM信号tpのデューティ比の変化を示している。そして、図11の下段の波形は、上段の波形のように速度変更したとき、モータに流れるモータ電流の変化を示している。図20に示した従来のモータ駆動装置のモータ電流と比較して明らかなように、モータ駆動装置50によってモータの速度を変更した場合、速度変更時においてモータ電流はゆるやかに増加する。これとともに、モータ駆動装置50によれば、図20に示した突入電流期間のような過大な電流が流れる期間を抑制できる。
このように、本実施の形態における制限値生成部53は、駆動信号trqに正の値のオフセット値ofsを加算した比較信号(trq+ofs)を生成し、比較信号(trq+ofs)の値と制限値lmtとの大小関係に基づき制限値lmtを更新する。また、リミッタ24は、駆動信号trqが制限値lmtを越えたとき、駆動信号trqの値が制限値lmtとなるように制限する。そして、本実施の形態では、制限値生成部53は、制限値lmtが比較信号(trq+ofs)の値以上のとき、比較信号(trq+ofs)の値を新たな制限値lmtとし、制限値lmtが比較信号(trq+ofs)の値よりも小さいとき、制限値lmtに所定の値dlmを加えた値を新たな制限値lmtとする。さらに、制限値生成部53は、制限値lmtの上限を示す上限値uppが設定される。そして、比較信号(trq+ofs)の値が上限値uppよりも大きく、かつ、制限値lmtが上限値upp以上のとき、上限値uppを新たな制限値lmtとし、比較信号(trq+ofs)の値が上限値uppよりも大きく、かつ、制限値lmtが上限値uppよりも小さいとき、制限値lmtに所定の値dlmを加えた値を新たな制限値lmtとする。
この構成により、本実施の形態によっても、モータ10の速度変更時など、駆動量が変化するときのリミッタ出力信号tlmがゆるやかに変化しながら増加するように制限できるため、駆動量の変化時におけるモータ10の電流抑制とともに、駆動量の変化時における騒音も抑制できる。
(実施の形態3)
図12は、本発明の実施の形態3におけるモータ駆動装置60の構成を示すブロック図である。実施の形態1との比較において、モータ駆動装置60は、実施の形態1とは異なった構成のリミッタ64および制限値生成部63を備えている。なお、実施の形態1と同一の構成要素については同一の符号を付しており詳細な説明は省略する。
本実施の形態では、リミッタ64は、駆動信号trqが所定の値以上となるように制御することで、駆動信号trqの値の範囲を制限している。すなわち、リミッタ64は、駆動信号trqが制限値lmtを下回るとき、駆動信号trqの値が制限値lmtとなるように制限して出力する。また、駆動信号trqが制限値lmtを越えるときは、駆動信号trqの値をそのまま出力する。リミッタ64は、このように処理した信号をリミッタ出力信号tlmとして、PWM信号生成部25に供給する。そして、制限値生成部63は、リミッタ64がこのような駆動信号trqの制限を行うため、駆動信号trqを用いて制限値lmtを生成する。
ところで、速度制御が可能なモータにおいて、例えば、一定速度での運転状態から速度が低下するように減速した場合、モータが発電機として作用し、誘起電圧を発生する。このため、本来モータに電力を供給するための電源や駆動回路に対して、逆にモータが誘起電圧による電力を供給してしまう、いわゆる回生現象が発生することが知られている。
本実施の形態では、モータを減速するとき、すなわち、駆動量が減少するようにその駆動量が変化するとき、リミッタ64により駆動信号trqの変化量を抑制し、回生現象による電源や駆動回路への影響を抑制している。
図13は、本発明の実施の形態3におけるモータ駆動装置60の制限値生成部63のブロック図である。図13に示す制限値生成部63も、実施の形態1の制限値生成部23と同様に、クロック信号による所定の周期でデジタル処理する構成例を挙げている。
制限値生成部63は、図13に示すように、減算器40と減算器41と比較器42とセレクタ43とラッチ34とを備える。
駆動制御部22から供給された駆動信号trqは、まず減算器40に供給される。減算器40は、駆動信号trqから所定の値のオフセット値ofsを減算し、この減算結果を比較信号(trq−ofs)として出力する。ここで、オフセット値ofsは正の値を有する。なお、比較信号(trq−ofs)を求めるため、駆動信号trqに負の値のオフセット値−ofsを加算してもよい。また、本実施の形態でも、ある時点での比較信号(trq−ofs)の値を比較値(trq−ofs)として説明する。
比較器42には、この比較値(trq−ofs)とラッチ34に保持した制限値lmtとが供給される。比較器42は、比較値(trq−ofs)とラッチ34からの制限値lmtとの値の大きさを比較する。比較器42の比較結果はセレクタ43に通知される。セレクタ43には、さらに、比較値(trq−ofs)とともに、減算器41により制限値lmtに所定の値の変更値dlmを減算した値が供給される。ここで、変更値dlmは正の値を有する。なお、制限値lmtに負の値の変更値−dlmを加算した値を供給する構成としてもよい。セレクタ43は、比較器42の比較結果に応じて、ラッチ34からの制限値lmtが比較値(trq−ofs)よりも大きいとき、制限値lmtから変更値dlmを減算した値を選択し、ラッチ34からの制限値lmtが比較値(trq−ofs)以下のとき比較値(trq−ofs)を選択して出力する。なお、減算器41により減算される変更値dlmは、オフセット値ofsよりも小さな値が好ましい。
図13では、比較器42の入力端子aに制限値lmt、入力端子bに比較値(trq−ofs)が供給される。比較器42は、入力端子aと入力端子bとの値を比較し、その比較結果をセレクタ43の選択制御端子Sに通知する。セレクタ43は、選択制御端子Sの値に応じて、入力端子Aか入力端子Bかに供給された値を、出力端子Oから出力する。すなわち、制限値生成部63では、比較器42の入力端子aに供給された制限値lmtが、入力端子bに供給された比較値(trq−ofs)よりも大きいとき、比較器42はa>bと判定し、その結果、セレクタ43は、制限値lmtから変更値dlmを減算した値を出力する。また、比較器42の入力端子aに供給された制限値lmtが、入力端子bに供給された比較値(trq−ofs)以下のとき、比較器42の結果に応じて、セレクタ43は比較値(trq−ofs)を出力する。
セレクタ43から出力された値は、ラッチ34にクロックのタイミングで取り込まれる。ラッチ34で取り込まれた信号は、ラッチ34の出力端子Qから、新たな制限値lmtとしてリミッタ64へと出力される。また、新たな制限値lmtは、比較器42および減算器41にも供給され、これによって次のクロック単位の処理が行われる。
以上説明したように、制限値生成部63は、駆動信号trqから負のオフセット値−ofsを加算した比較信号を生成し、比較信号の値(trq−ofs)と制限値lmtとの大小関係に基づき制限値lmtを更新する。より具体的には、制限値生成部63は、制限値lmtが比較信号の現在の値(trq−ofs)以下のとき、比較信号の現在の値(trq−ofs)を新たな制限値lmtとし、制限値lmtが比較信号の現在の値(trq−ofs)よりも大きいとき、制限値lmtから正の値の変更値dlmを減算した値を新たな制限値lmtとする構成である。
次に、このような構成された制限値生成部63およびリミッタ64の動作について説明する。
図14は、本発明の実施の形態3におけるモータ駆動装置60の制限値lmtの変化を含む波形図である。また、図15は、本発明の実施の形態3におけるモータ駆動装置60のリミッタ出力信号tlmを含む波形図である。図14および図15では、値Tr10となる駆動信号trqに対応した回転速度から、速度指令信号Vrによって、値Tr11となる駆動信号trqに対応した回転速度へと変更した速度制御の場合の一例を挙げている。すなわち、駆動信号trqに対応する駆動量が減少するようにその駆動量が変化している。
まず、図14を用いて、制限値生成部63が制限値lmtを生成する動作について説明する。図14において、駆動信号trqは、時刻t11まで、一定な値Tr10として制限値生成部63に供給される。そして、速度指令信号Vrが低速となるように変更されたのに応答して、駆動信号trqは、時刻t11から急激な減少を開始し、収束値Tr11へと収束する。また、比較値(trq−ofs)は、駆動信号trqからオフセット値ofsを減算した値であるため、駆動信号trqに応じて図14のように変化する。
ここで、時刻t11までの期間は、比較値(trq−ofs)と制限値lmtとは等しいため、セレクタ43は比較値(trq−ofs)を選択する。これにより、時刻t11までの期間は、制限値lmtとして、駆動信号trqからオフセット値ofsを減算した値がリミッタ64に供給される。
次に、時刻t11になると、駆動信号trqは、急激に減少していくため、新たな駆動信号trqの値が供給されるごとに、その値も減少している。これに伴なって、新たな比較値(trq−ofs)も減少している。このため、ラッチ34から出力される現在の制限値lmtに比べて、新たな比較値(trq−ofs)のほうが小さい。そこで、セレクタ43は、現在の制限値lmtから変更値dlmを減算した値を選択する。そして、現在の制限値lmtから変更値dlmを減算した値が、新たな制限値lmtとしてラッチ34から出力される。すなわち、図14において、時刻t11から時刻t12までの期間では、現在の制限値lmtに比べて新たな比較値(trq−ofs)のほうが小さいため、制限値lmtはクロック単位ごとに変更値dlmで減少していくような特性となる。
次に、時刻t12以降は、駆動信号trqがほぼ一定となり、ラッチ34から出力される現在の制限値lmtと、新たな比較値(trq−ofs)とは等しくなる。このため、セレクタ43は比較値(trq−ofs)を選択する。これにより、時刻t12以降は、制限値lmtとして、駆動信号trqからオフセット値ofsを減算した値がリミッタ64に供給される。
以上、ある回転速度から低速となるように速度変更したとき、図14に示すような制限値lmtがリミッタ64に供給される。
図15では、リミッタ64の入力信号である駆動信号trq、制限値lmtおよびリミッタ出力信号tlmを示している。図15に示すように、期間Tlmtの間は、駆動信号trqが制限値lmtにより制限されて出力される。
ここで、駆動信号trqが急激に減少した場合、上述したように回生現象が発生し、モータからモータ駆動装置や電源に回生電力が逆供給され、モータ駆動装置や電源に悪影響を及ぼすおそれがある。本実施の形態では、このような回生現象の影響を抑制するため、制限値生成部63およびリミッタ64を備えている。すなわち、制限値生成部63により生成された制限値lmtにより、図15に示したように、駆動信号trqの減少の変化量を抑制したリミッタ出力信号tlmに応じてモータ10が駆動される。このため、回生電力を抑制でき、これによって回生現象による電源や駆動回路への影響を抑制している。
なお、以上、制限値生成部63が各機能ブロックによるデジタル処理で制限値lmtを生成するような構成例を挙げて説明したが、実施の形態1や実施の形態2と同様に、プログラムのような処理手順に基づく処理で行うような構成のほうが一般的である。すなわち、図12の各機能をプログラムとしてメモリなどに記憶させ、マイコンがそのプログラムを実行するような構成とし、そのプログラムに基づくモータ駆動方法を実行する構成とすることもできる。
図16は、本発明の実施の形態3におけるモータ駆動装置60の制限値lmtを生成する処理のフローチャートである。制限値生成部63は、図16のフローチャートの手順に従って処理を実行するような制限値を生成するステップの構成であってもよい。
制限値生成部63は、ステップS201において、制限値lmtと比較値(trq−ofs)とを比較する。制限値lmtが比較値(trq−ofs)よりも大きいとき、ステップS202において、制限値lmtから変更値dlmを減算した値を新たな制限値lmtとする。また、制限値lmtが比較値(trq−ofs)以下のとき、ステップS203において、比較値(trq−ofs)を新たな制限値lmtとする。
このように新たな制限値lmtに更新した後、例えば呼び出し元の処理に戻る。制限値生成部63がこのような処理を繰り返すことによっても、制限値lmtを生成することができる。
以上のように、本実施の形態における制限値生成部63は、駆動信号trqに負の値のオフセット値−ofsを加算した比較信号(trq−ofs)を生成し、比較信号(trq−ofs)の値と制限値lmtとの大小関係に基づき制限値lmtを更新する。また、リミッタ64は、駆動信号trqが制限値lmtを下回るとき、駆動信号trqの値が制限値lmtとなるように制限する。そして、本実施の形態では、制限値生成部63は、制限値lmtが比較信号(trq−ofs)の値以下のとき、比較信号(trq−ofs)の値を新たな制限値lmtとし、制限値lmtが比較信号(trq−ofs)の値よりも大きいとき、制限値lmtに所定の値dlmを減算した値を新たな制限値lmtとする。
この構成により、モータ10の速度変更時などにおけるリミッタ出力信号tlmがゆるやかに変化しながら減少、すなわちスローダウンするように制限できるため、駆動量の変化時におけるモータ10からの回生電力の電力量を抑制でき、これによって、回生現象による電源や駆動回路への影響を抑制できる。
(実施の形態4)
図17は、本発明の実施の形態4におけるモータ駆動装置70の構成を示すブロック図である。本実施の形態でも、実施の形態3と同様に、回生現象による電源や駆動回路への影響を抑制したモータ駆動装置の構成としている。
図12に示す実施の形態3のモータ駆動装置60との比較において、制限値生成部73が、図12の制限値生成部63と異なった構成となっている。
図18は、本発明の実施の形態4におけるモータ駆動装置70の制限値生成部73のブロック図である。本実施の形態の制限値生成部73は、実施の形態3の制限値生成部63の機能に加えて、駆動信号trqの下限を制限するような機能をさらに備えている。なお、実施の形態3と同様の構成要素については同一の符号を付しており、詳細な説明は省略する。
図18に示す制限値生成部73は、さらに、比較器45、比較器47、セレクタ46、セレクタ48を備えている。さらに、制限値生成部73は、制限値lmtの下限を示す下限値lppが設定されている。下限値lppは、制限値lmtの下限を設定する値であるため、ゼロあるいはゼロに近い正の値が設定される。
図18において、比較器45の入力端子aにはラッチ34からの制限値lmt、入力端子bには下限値lppが供給される。比較器45は、入力端子aと入力端子bとの値を比較し、その比較結果をセレクタ46の選択制御端子Sに通知する。セレクタ46は、選択制御端子Sの値に応じて、入力端子Aか入力端子Bかに供給された値を、出力端子Oから出力する。すなわち、比較器45の入力端子aに供給された制限値lmtが、入力端子bに供給された下限値lppよりも大きいとき、比較器45はa>bと判定し、その結果、セレクタ46は、制限値lmtから変更値dlmを減算した値を出力する。また、比較器45の入力端子aに供給された制限値lmtが、入力端子bに供給された下限値lpp以下のとき、比較器45の結果に応じて、セレクタ46は下限値lppを出力する。
また、比較器47の入力端子aには下限値lpp、入力端子bには比較値(trq−ofs)が供給される。比較器47は、入力端子aと入力端子bとの値を比較し、その比較結果をセレクタ48の選択制御端子Sに通知する。セレクタ48は、選択制御端子Sの値に応じて、入力端子Aか入力端子Bかに供給された値を、出力端子Oから出力する。すなわち、比較器47の入力端子aに供給された下限値lppが、入力端子bに供給された比較値(trq−ofs)よりも大きいとき、比較器47はa>bと判定し、その結果、セレクタ48は、セレクタ46の出力値を出力する。また、比較器47の入力端子aに供給された下限値lppが、入力端子bに供給された比較値(trq−ofs)以下のとき、比較器47の結果に応じて、セレクタ48はセレクタ43の出力値を出力する。
セレクタ48から出力された値は、ラッチ34にクロックのタイミングで取り込まれる。ラッチ34で取り込まれた信号は、新たな制限値lmtとしてリミッタ64へと出力される。また、新たな制限値lmtは、比較器42、減算器41および比較器45にも供給され、これによって次のクロック単位の処理が行われる。
このような制限値生成部73に構成により、まず、比較値(trq−ofs)の現在の値が下限値lpp以上の場合は、実施の形態3と同様の処理を行う。すなわち、制限値lmtが比較値(trq−ofs)の現在の値以下のとき、比較値(trq−ofs)の現在の値を新たな制限値lmtとし、制限値lmtが比較値(trq−ofs)の現在の値よりも大きいとき、制限値lmtに変更値dlmを減算した値を新たな制限値lmtとする。
一方、比較値(trq−ofs)の現在の値が下限値lppよりも小さいとき、制限値生成部73は、次のような処理を行う。すなわち、制限値lmtが下限値lpp以下のとき、下限値lppを新たな制限値lmtとし、制限値lmtが下限値lppよりも大きいとき、制限値lmtに変更値dlmを減算した値を新たな制限値lmtとしている。
なお、以上、制限値生成部73が各機能ブロックによるデジタル処理で制限値lmtを生成するような構成例を挙げて説明したが、例えば、実施の形態1〜3で説明したように、プログラムのような処理手順に基づく処理で行うような構成のほうが一般的である。すなわち、図17の各機能をプログラムとしてメモリなどに記憶させ、マイコンがそのプログラムを実行するような構成とし、そのプログラムに基づくモータ駆動方法を実行する構成とすることもできる。
図19は、本発明の実施の形態4におけるモータ駆動装置70の制限値lmtの生成処理のフローチャートである。制限値生成部73は、図19のフローチャートの手順に従って処理を実行するような制限値を生成するステップの構成であってもよい。
制限値生成部73は、まずステップS200において、下限値lppと比較値(trq−ofs)とを比較する。下限値lppが比較値(trq−ofs)以下のとき、ステップS201に進む。また、下限値lppが比較値(trq−ofs)よりも大きいとき、ステップS204に進む。
制限値生成部73は、ステップS201において、制限値lmtと比較値(trq−ofs)とを比較する。制限値lmtが比較値(trq−ofs)よりも大きいとき、ステップS202において、制限値lmtから変更値dlmを減算した値を新たな制限値lmtとする。また、制限値lmtが比較値(trq−ofs)以下のとき、ステップS203において、比較値(trq−ofs)を新たな制限値lmtとする。
また、制限値生成部73は、ステップS204において、制限値lmtと下限値lppとを比較する。制限値lmtが下限値lppよりも大きいとき、ステップS205において、制限値lmtから変更値dlmを減算した値を新たな制限値lmtとする。また、制限値lmtが下限値lpp以下のとき、ステップS206において、下限値lppを新たな制限値lmtとする。
このように新たな制限値lmtに更新した後、例えば呼び出し元の処理に戻る。制限値生成部73がこのような処理を繰り返すことによっても、下限を下限値lppに制限した制限値lmtを生成することができる。
以上、本実施の形態によっても、制限値生成部73において生成された制限値lmtにより、実施の形態3と同様に、駆動信号trqの減少の変化量を抑制したリミッタ出力信号tlmに応じてモータ10が駆動される。このため、回生電力を抑制でき、これによって回生現象による電源や駆動回路への影響を抑制している。
このように、本実施の形態における制限値生成部73は、駆動信号trqに負の値のオフセット値−ofsを加算した比較信号(trq−ofs)を生成し、比較信号(trq−ofs)の値と制限値lmtとの大小関係に基づき制限値lmtを更新する。また、リミッタ64は、駆動信号trqが制限値lmtを下回るとき、駆動信号trqの値が制限値lmtとなるように制限する。そして、本実施の形態では、制限値生成部73は、制限値lmtが比較信号(trq−ofs)の値以下のとき、比較信号(trq−ofs)の値を新たな制限値lmtとし、制限値lmtが比較信号(trq−ofs)の値よりも大きいとき、制限値lmtに所定の値dlmを減算した値を新たな制限値lmtとする。さらに、制限値生成部73は、制限値lmtの下限を示す下限値lppが設定される。そして、比較信号(trq−ofs)の値が下限値lppよりも小さく、かつ、制限値lmtが下限値lpp以下のとき、下限値lppを新たな制限値lmtとし、比較信号(trq−ofs)の値が下限値lppよりも小さく、かつ、制限値lmtが下限値lppよりも大きいとき、制限値lmtから所定の値dlmを減算した値を新たな制限値lmtとする。
この構成により、本実施の形態によっても、モータ10の速度変更時など、駆動量が変化するときのリミッタ出力信号tlmがゆるやかに変化しながら減少するように制限できるため、駆動量の変化時におけるモータ10からの回生電力の電力量を抑制でき、これによって、回生現象による電源や駆動回路への影響を抑制できる。
以上説明したように、本発明のモータ駆動装置は、外部からの指令に従ってモータを駆動制御するモータ駆動装置である。本モータ駆動装置は、モータを駆動するための駆動信号を生成する駆動制御部と、駆動信号の値の範囲を制限するリミッタと、制限値を生成する制限値生成部と、リミッタの出力信号に応じた通電信号を生成し、通電信号によりモータの巻線を通電する駆動出力部とを備える。そして、制限値生成部は、駆動信号にオフセット値を加算した比較信号を生成し、比較信号の値と制限値との大小関係に基づき制限値を更新する構成である。
この構成によれば、モータの回転速度をある回転速度から速度変更したときなど、駆動量の変化時におけるリミッタ出力信号がゆるやかに変化するように制限できる。このため、駆動量の変化時におけるモータの電流抑制とともに、駆動量の変化時における騒音も抑制でき、さらに、回生現象による悪影響なども抑制できる。
なお、上述した各実施の形態において、制御系として速度制御系の一例を挙げて説明したが、速度制御系に代えて、位置制御系としたシステム構成に置き換えても同様の作用効果が発揮される。
また、本実施の形態では、位置検出器が可動子の位置を検出し、検出位置を速度検出部で速度検出信号に変換するような構成例を挙げて説明したが、位置検出器が負荷の位置を検出するようなシステム構成であってもよい。さらに、速度検出器によって可動子や負荷の速度を検出し、検出した速度を速度検出信号とするような構成であってもよい。さらに、指令された位置指令信号と位置検出器からの位置検出信号との位置偏差量に基づき、位置制御系によって位置制御されるような構成であってもよい。さらに、検出速度を積分して検出位置とするような回路を含めた構成により速度検出器を備えた位置制御系としてもよい。要するに、モータによる可動子の動き動作が、指令された位置や速度などの動き量に追従するように、指令信号と検出信号との偏差量に基づく駆動量によってフィードバック制御する制御系に本発明を適用することができる。さらには、指令信号に基づく駆動量によって直接に動き量を制御するような構成にも本発明を適用することができる。また、動き動作として、モータによる可動子の回転動作であってもよく、直線動作であってもよく、その他の動き動作であってもよい。
また、上述した各実施の形態において、PWMを利用して巻線を通電駆動する構成例を挙げて説明したが、PWM以外の駆動方式でも適用可能である。
また、実施の形態1および2では、オフセット値を正の値とし、駆動信号が制限値を越えたとき、リミッタが駆動信号の値を制限値以下となるように制限する構成、実施の形態3および4では、オフセット値を負の値とし、駆動信号が制限値を下回るとき、リミッタが駆動信号の値を制限値以上となるように制限する構成について、それぞれ分けて説明した。しかし、実施の形態1および2のような制限値以下に制限するリミッタのいずれかと、実施の形態3および4のような制限値以上に制限するリミッタのいずれかとをそれぞれ備えた構成とすることもできる。これによって、電流抑制とともに、回生現象による悪影響の抑制も可能となる。