以下図面を参照して、蓄電装置を有するモータ駆動装置について説明する。各図面において、同様の部材には同様の参照符号が付けられている。また、理解を容易にするために、これらの図面は縮尺を適宜変更している。図面に示される形態は実施をするための一つの例であり、図示された形態に限定されるものではない。また、「ドライブ用サーボモータの出力」には「ドライブ用サーボモータの消費電力」及び「ドライブ用サーボモータの回生電力」が含まれ、「バッファ用サーボモータの出力」には「バッファ用サーボモータの消費電力」及び「バッファ用サーボモータの回生電力」が含まれるものとする。また、消費時の電力を正、回生時の電力を負とする。また、ドライブ用サーボモータ及びバッファ用サーボモータの回転角速度については単に「速度」と称する。また、「電力の値」は、「電流が単位時間あたりにする仕事」すなわち「仕事率」を意味し、単位は「W(ワット)」である。「エネルギーの値」とは、「電流がする仕事」すなわち「電力量」を意味し、単位は「J(ジュール)」である。したがって、「エネルギーの値[J]=電力の値[W]×時間[s]」の関係が成り立つ。
図1は、本開示の一実施形態によるモータ駆動装置のブロック図である。ここでは、一例として、モータ駆動装置1により、工作機械やロボットなどを含む機械において駆動軸を駆動するためのドライブ用サーボモータ3を2個制御する場合について説明する。ただし、ドライブ用サーボモータ3の個数は本実施形態を特に限定するものではなく1個または3個以上であってもよい。また、交流電源2及びドライブ用サーボモータ3の相数は本実施形態を特に限定するものではなく、例えば三相交流であっても単相交流であってもよい。また、ドライブ用サーボモータ3の種類についても本実施形態を特に限定するものではなく、例えば誘導モータであっても同期モータであってもよい。ここで、ドライブ用サーボモータ3が設けられる機械には、工作機械やロボットの他に、鍛圧機械、射出成形機、産業機械、各種電化製品、電車、自動車、航空機などが含まれる。また、交流電源2の一例を挙げると、三相交流400V電源、三相交流200V電源、三相交流600V電源、単相交流100V電源などがある。
まず、モータ駆動装置1の各回路構成要素について説明する。
図1に示すように、本開示の一実施形態によるモータ駆動装置1は、コンバータ11と、ドライブ用インバータ12と、ドライブ用モータ制御部13と、蓄電装置14と、消費電力推定部15と、蓄電装置制御部16とを備える。例えば、ドライブ用モータ制御部13、消費電力推定部15、及び蓄電装置制御部16は、工作機械の数値制御装置に設けられている。なお、数値制御装置以外の演算処理装置内に、ドライブ用モータ制御部13、消費電力推定部15、及び蓄電装置制御部16を設けてもよい。
コンバータ11は、交流電源2側の交流電力と直流リンク4における直流電力との間で電力変換を行う順変換器である。コンバータ11は、交流電源2から三相交流が供給される場合は三相ブリッジ回路で構成され、交流電源2から単相交流が供給される場合は単相ブリッジ回路で構成される。コンバータ11は、例えば、120度通電型整流回路及びPWMスイッチング制御方式の整流回路などのような、交流電源2側から入力された交流電力を直流電力に変換して直流側へ出力し、電力回生時には直流リンク4の直流電力を交流電力に変換して交流電源2側へ出力する、交直双方向に変換可能である電力変換器として実現される。例えば、コンバータ11がPWMスイッチング制御方式の整流回路である場合は、スイッチング素子及びこれに逆並列に接続されたダイオードのブリッジ回路からなり、上位制御装置(図示せず)から受信した駆動指令に応じて各スイッチング素子がオンオフ制御されて交直双方向に電力変換を行う。スイッチング素子の例としては、FETなどのユニポーラトランジスタ、バイポーラトランジスタ、IGBT、サイリスタ、GTOなどがあるが、スイッチング素子の種類自体は本実施形態を限定するものではなく、その他のスイッチング素子であってもよい。
また、コンバータ11については、交流電力から直流電力へ電力変換して直流リンク4へ供給可能な最大電力として「最大供給可能電力」が規定され、直流リンク4における直流電力から交流電力へ電力変換して交流電源2側へ回生可能な最大電力として、「最大回生可能電力」が規定されている。最大供給可能電力及び最大回生可能電力は、コンバータ11の変換容量に関する諸元データとして一般的に規定されるものであり、例えばコンバータ11の規格表や取扱説明書などに記載されている。以下、本明細書では、コンバータ11の最大供給可能電力及び最大回生可能電力を、併せて「最大変換可能電力」と称する。
コンバータ11には、直流リンク4を介してドライブ用インバータ12が接続される。なお、直流リンク4には、直流リンクコンデンサ(平滑コンデンサとも称する)が設けられるが、ここでは図示を省略している。直流リンクコンデンサは、直流リンク4において直流電力を蓄積する機能、及びコンバータ11の直流出力の脈動分を抑える機能を有する。
ドライブ用インバータ12は、ドライブ用サーボモータ3を駆動するために、直流リンク4における直流電力を交流電力に変換し、ドライブ用サーボモータ3へ駆動電力として供給するサーボアンプを構成する。ドライブ用インバータ12は、直流リンク4における直流電力とドライブ用サーボモータ3の駆動電力または回生電力である交流電力との間で電力変換を行う。一般に、ドライブ用サーボモータ3には1巻線以上の巻線が設けられており、ドライブ用サーボモータ3を駆動するためには、当該ドライブ用サーボモータ3内の1巻線あたり1個のドライブ用インバータ12が必要である。図1では、一例としてドライブ用サーボモータ3を1巻線タイプとしており、したがって、各ドライブ用サーボモータ3に対して1個のドライブ用インバータ12が接続される。
ドライブ用インバータ12は、スイッチング素子及びこれに逆並列に接続されたダイオードのブリッジ回路からなり、例えば三角波比較方式のPWMスイッチング制御に基づいて各スイッチング素子がオンオフ制御される。ドライブ用インバータ12は、ドライブ用サーボモータ3が三相モータである場合は三相ブリッジ回路で構成され、ドライブ用サーボモータ3が単相モータである場合は単相ブリッジ回路で構成される。スイッチング素子の例としては、FETなどのユニポーラトランジスタ、バイポーラトランジスタ、IGBT、サイリスタ、GTOなどがあるが、スイッチング素子の種類自体は本実施形態を限定するものではなく、その他のスイッチング素子であってもよい。
ドライブ用インバータ12は、後述するドライブ用モータ制御部13から受信した駆動指令に基づき各スイッチング素子がオンオフ制御されることにより、直流リンク4の直流電力とドライブ用サーボモータ3の駆動電力または回生電力である交流電力との間で電力変換する。より詳細には、ドライブ用インバータ12は、ドライブ用モータ制御部13から受信した駆動指令に基づき内部のスイッチング素子をスイッチング動作させ、直流リンク4を介してコンバータ11から供給される直流電力を、ドライブ用サーボモータ3を駆動するための所望の電圧及び所望の周波数を有する交流電力に変換する(逆変換動作)。これにより、ドライブ用サーボモータ3は回転駆動することになる。また、ドライブ用サーボモータ3の減速時には回生電力が発生することがあるが、ドライブ用モータ制御部13から受信した駆動指令に基づき内部のスイッチング素子をスイッチング動作させ、ドライブ用サーボモータ3で発生した交流の回生電力を直流電力へ変換して直流リンク4へ戻す(順変換動作)。
ドライブ用モータ制御部13は、ドライブ用インバータ12に接続されたドライブ用サーボモータ3を所定の動作パターンにて動作(すなわち回転)するよう制御する。ドライブ用サーボモータ3が設けられた機械の動作内容に応じて、加速、減速、一定速及び停止が適宜組み合わされることでドライブ用サーボモータ3の動作パターンが構成される。ドライブ用サーボモータ3の動作パターンは、ドライブ用サーボモータ3に対する動作プログラムによって規定される。例えばドライブ用サーボモータ3が工作機械に設けられる場合、工作機械のための加工プログラムのうちの1つとして、ドライブ用サーボモータ3に対する動作プログラムが規定される。
このように、ドライブ用サーボモータ3は、ドライブ用インバータ12から供給される例えば電圧可変及び周波数可変の交流電力に基づいて、速度、トルクまたは回転子の位置が制御される。よって結局のところ、ドライブ用モータ制御部13によるドライブ用サーボモータ3の制御は、ドライブ用インバータ12の電力変換動作を制御することで実現される。つまり、ドライブ用モータ制御部13は、予め規定された動作プログラムに従い、ドライブ用インバータ12内の電力変換を制御することで、ドライブ用サーボモータ3が所定の動作パターンに従って動作するよう制御する。より具体的には次の通りである。ドライブ用モータ制御部13は、速度検出器52によって検出されたドライブ用サーボモータ3の速度(速度フィードバック)、ドライブ用サーボモータ3の巻線に流れる電流(電流フィードバック)、所定のトルク指令、及びドライブ用サーボモータ3の動作プログラムなどに基づいて、ドライブ用サーボモータ3の速度、トルク、または回転子の位置を制御するための駆動指令を生成する。ドライブ用モータ制御部13によって作成された駆動指令に基づいて、ドライブ用インバータ12による電力変換動作が制御される。なお、ここで定義したドライブ用モータ制御部13の構成はあくまでも一例であって、例えば、位置指令作成部、トルク指令作成部、及びスイッチング指令作成部などの用語を含めてドライブ用モータ制御部13の構成を規定してもよい。
コンバータ11の最大変換可能電力を超えた出力でドライブ用サーボモータ3を駆動することできるようにするために、モータ駆動装置1には、蓄電装置14が設けられる。
蓄電装置14は、直流リンク4へ直流電力を供給し(給電)、直流リンク4から直流電力を蓄積する(蓄電)。蓄電装置14の給電動作及び蓄電動作は、蓄電装置制御部16により制御される。蓄電装置14が保有すべきエネルギーの基準値(目標値)として、ベース保有エネルギーが規定される。蓄電装置制御部16の制御により、蓄電装置14は、その保有エネルギーがその目標値であるベース保有エネルギーになるように蓄電される。例えばドライブ用サーボモータ3が動作しておらず、蓄電装置14による電力の出し入れを特段必要としない間は、蓄電装置14の保有エネルギーはベース保有エネルギーに維持される。蓄電装置14の給電動作が行われると、蓄電装置14の保有エネルギーは低下してベース保有エネルギーよりも小さい値になるが、蓄電装置14の蓄電動作が行われると、ベース保有エネルギーを目標値に蓄電装置14の保有エネルギーが上昇して回復する。
蓄電装置14には、例えば図2に示すようなフライホイール型と図3に示すようなコンデンサ型とがある。
図2は、フライホイール型の蓄電装置を有する本開示の一実施形態によるモータ駆動装置のブロック図である。フライホイール型の蓄電装置14は、フライホイール41と、バッファ用サーボモータ42と、バッファ用インバータ43とを備える。
フライホイール41は、回転エネルギーを蓄積し得るものであり、イナーシャとも称される。
バッファ用サーボモータ42は、フライホイール41を回転させるためのものであり、フライホイール41はバッファ用サーボモータ42の回転軸に接続される。バッファ用サーボモータ42を回転させることによってフライホイール41に回転エネルギーを蓄積することができる。バッファ用サーボモータ42の相数は本実施形態を特に限定するものではなく、例えば三相であっても単相であってもよい。バッファ用サーボモータ42には速度検出器52が設けられており、速度検出器52によって検出されたバッファ用サーボモータ42の(回転子の)速度は、蓄電装置制御部16による蓄電装置14の制御に用いられる。
バッファ用インバータ43は、蓄電装置制御部16から受信した蓄電指令及び給電指令に基づき各スイッチング素子がオンオフ制御されることにより、直流リンク4における直流電力とバッファ用サーボモータ42の駆動電力または回生電力である交流電力との間で電力変換を行う。バッファ用インバータ43は、スイッチング素子及びこれに逆並列に接続されたダイオードのブリッジ回路からなる。バッファ用インバータ43は、バッファ用サーボモータ42が三相モータである場合は三相ブリッジ回路で構成され、バッファ用サーボモータ42が単相モータである場合は単相ブリッジ回路で構成される。スイッチング素子の例としては、FETなどのユニポーラトランジスタ、バイポーラトランジスタ、IGBT、サイリスタ、GTOなどがあるが、スイッチング素子の種類自体は本実施形態を限定するものではなく、その他のスイッチング素子であってもよい。例えば、受信した駆動指令を三角波搬送波(キャリア)と比較することで得られるPWMスイッチング信号に基づいて、バッファ用インバータ43内の各スイッチング素子がオンオフ制御される。
蓄電装置制御部16によりバッファ用インバータ43の電力変換が制御されることで、フライホイール41が接続されたバッファ用サーボモータ42が加速もしくは減速しながら回転しまたは一定速度で回転し、その結果、蓄電装置14が蓄電または給電すべき直流電力(蓄電装置14が直流リンク4に対して出し入れする直流電力)が調整される。より詳細には次の通りである。
バッファ用インバータ43は、蓄電装置14の蓄電を行う場合、蓄電装置制御部16から受信した蓄電指令に基づき、直流リンク4における直流電力を交流電力へ変換する逆変換動作を行う。これにより、直流リンク4からの電気エネルギーがバッファ用サーボモータ42側へ取り込まれ、この電気エネルギーにより、フライホイール41が接続されたバッファ用サーボモータ42が回転する。このようにフライホイール型の蓄電装置14では、直流リンク4から流入した電気エネルギーが、フライホイール41の回転エネルギーに変換されて蓄積される。
また、バッファ用インバータ43は、蓄電装置14の給電を行う場合、蓄電装置制御部16から受信した給電指令に基づき、フライホイール41が接続されたバッファ用サーボモータ42を減速させて交流の回生電力を発生させ、この交流電力を直流電力へ変換する順変換動作を行う。これにより、フライホイール41に蓄積された回転エネルギーは電気エネルギーに変換されて直流リンク4へ供給される。
図3は、コンデンサ型の蓄電装置を有する本開示の一実施形態によるモータ駆動装置のブロック図である。コンデンサ型の蓄電装置14は、コンデンサ44と、直流リンク4における直流電力とコンデンサ44に蓄積される直流電力との間で電力変換を行うDCDCコンバータ45とを備える。
DCDCコンバータ45は、例えば昇降圧直流チョッパ回路などがある。蓄電装置制御部16によりDCDCコンバータ45の昇圧動作及び降圧動作が制御されることで、蓄電装置14が蓄電または給電すべき直流電力量(蓄電装置14が直流リンク4に対して出し入れする直流電力量)が調整される。より詳細には次の通りである。
DCDCコンバータ45は、蓄電装置14の蓄電を行う場合、蓄電装置制御部16から受信した蓄電指令に基づき、蓄電装置制御部16により直流リンク4側の直流電圧に対してコンデンサ44側の直流電圧が低くなるよう制御される。これにより、直流リンク4からの電気エネルギーがコンデンサ44へ流れ込み、蓄電装置14の蓄電が行われる。
また、DCDCコンバータ45は、蓄電装置14の給電を行う場合、蓄電装置制御部16から受信した給電指令に基づき、蓄電装置制御部16により直流リンク4側の直流電圧に対してコンデンサ44側の直流電圧が高くなるよう制御される。これにより、コンデンサ44からの電気エネルギーが直流リンク4へ流れ込み、蓄電装置14の給電が行われる。
モータ駆動装置1では、上記の動作を行う蓄電装置14を備えることにより、ドライブ用サーボモータ3の加速時には、コンバータ11から供給されるエネルギーに加えて蓄電装置14に蓄積されたエネルギーがドライブ用サーボモータ3に供給され、ドライブ用サーボモータ3の加速のための動力として利用される。また、ドライブ用サーボモータ3の減速時には、ドライブ用サーボモータ3から回生されたエネルギーが蓄電装置14に蓄積される。蓄電装置14に蓄積されたエネルギーは、コンバータ11が供給する電力と併せてドライブ用サーボモータ3の駆動に利用されるので、コンバータ11の最大変換可能電力を超えた出力でドライブ用サーボモータ3を駆動することでき、電力ピークを低減することができる。電力ピークの低減により、電源容量やモータ駆動装置1の運用コストを抑えることができ、また、交流電源2側の停電やフリッカを回避することができる。
蓄電装置14は、蓄電装置制御部16からの指令により給電動作及び蓄電動作を行う。蓄電装置14は放電指令や蓄電指令に対する応答性が悪く、蓄電装置14に対する給電または蓄電の指令を行い、この指令に応答してから蓄電装置14が給電動作または蓄電動作を実際に開始するまでに時間的な遅れが存在する。例えば、蓄電装置14が図2に示すフライホイール型である場合は、バッファ用サーボモータ42のイナーシャやバッファ用インバータ43の制御性能などに起因して、バッファ用サーボモータ42に対して加速または減速の指令開始から時間的に遅れて、バッファ用サーボモータ42は加速または減速を開始する。また例えば蓄電装置14が図3に示すコンデンサ型である場合は、コンデンサ44の充放電特性やコンデンサに接続されたDCDCコンバータ45の制御性能などに起因して、コンデンサ44の充電又は放電の指令開始から時間的に遅れて、コンデンサ44は所望の電圧まで充電または放電される。ドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる「現時点の総消費電力」がコンバータ11の最大給電電力を超えるタイミングで蓄電装置14に対して給電を指令しても、給電指令開始から蓄電装置14が給電動作を実際に開始するまでに時間的な遅れがあるので、総消費電力がコンバータ11の最大給電電力を超えてしまう時間が発生し、電力ピークを低減することができない。蓄電装置14の蓄電動作についても同様に、蓄電指令開始から蓄電装置14が蓄電動作を実際に開始するまでに時間的な遅れがあるので、総消費電力がコンバータ11の最大回生可能電力を超えてしまう時間が発生し、電力ピークを低減することができない。そこで、本実施形態では、ドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる総消費電力についての、現時点よりも所定時間だけ先の推定値である消費電力推定値を計算し、この消費電力推定値に応じて、蓄電装置14の給電及び蓄電を制御する。つまり、本実施形態では、「蓄電装置制御部16が蓄電装置14に対し給電または蓄電を指令してから蓄電装置14が実際に給電または蓄電を開始するまでの時間」である「応答遅れ時間」を考慮し、現時点以前の総消費電力についての既知のデータから、現時点よりも「当該応答遅れ時間に相当する時間」だけ先の時点における総消費電力を推定し、この推定値と給電用閾値及び蓄電用閾値との比較結果に基づいて蓄電装置制御部16は蓄電装置14の給電及び蓄電を制御する。蓄電装置制御部16が蓄電装置14に対し給電または蓄電を指令してから蓄電装置14が実際に給電または蓄電を開始するまでの応答遅れ時間は、事前に測定しておいてもよいし、後述するように測定部を設けてリアルタイムに測定してもよい。上記「所定時間」を蓄電装置14の応答遅れ時間と同じ長さに設定した場合について説明する。
消費電力推定部15は、ドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる総消費電力の、現時点の値よりも所定時間だけ先の推定値である消費電力推定値を取得する。消費電力推定部15による推定値取得処理は、所定の制御周期ごとに実行される。また、消費電力推定部15による推定値取得処理は、後述の蓄電装置制御部16による蓄電装置制御処理の前に実行される。消費電力推定部15による推定値取得処理の詳細については後述する。
蓄電装置制御部16は、消費電力推定値に応じて、蓄電装置の給電及び蓄電を制御する。一制御周期中において、消費電力推定部15は消費電力推定値を計算し、蓄電装置制御部16はこの消費電力推定値を用いて指令生成処理を実行する。より詳細には次の通りである。
蓄電装置制御部16は、制御周期ごとに消費電力推定値と給電用閾値とを比較し、当該比較の結果、消費電力推定値が給電用閾値を上回ると判定した場合は、蓄電装置14に対して給電を指令して蓄電装置14を制御し、直流リンク4へ直流電力を給電させる。また、蓄電装置制御部16は、蓄電装置14が給電動作するよう制御している間において、制御周期ごとに消費電力推定値と給電用閾値とを比較し、当該比較の結果、消費電力推定値が給電用閾値を下回ると判定した場合は、蓄電装置14に対する給電指令の生成を停止して直流リンク4への直流電力の給電動作を終了させる。
なお、供給用閾値は、コンバータ11の順変換動作についての最大変換可能電力である最大供給可能電力に基づいて設定されればよい。例えば、コンバータ11の最大供給可能電力と消費電力推定部15によって計算された消費電力推定値との差が負のときは、消費電力推定値がコンバータ11の順変換時の最大供給可能電力を超えている。よって、コンバータ11が交流電源2側から直流リンク4へ取り込むエネルギーでは実際の総消費電力の全てを賄いきれない可能性があるので、その不足する電力が、蓄電装置14から直流リンク4へ供給される直流電力によって補われるべきである。供給用閾値は、消費電力推定値がコンバータ11の順変換時の最大供給可能電力を超えたことにより蓄電装置14から直流リンク4へ直流電力が供給されるべき状況にあるか否かを判断するための基準値として設定される。
また、蓄電装置制御部16は、制御周期ごとに消費電力推定値と蓄電用閾値とを比較し、当該比較の結果、消費電力推定値が蓄電用閾値を下回ると判定した場合は、蓄電装置14に対して蓄電を指令して蓄電装置14を制御し、直流リンク4から直流電力を蓄電させる。また、蓄電装置制御部16は、蓄電装置14が蓄電動作するよう制御している間において、制御周期ごとに消費電力推定値と蓄電用閾値とを比較し、当該比較の結果、消費電力推定値が蓄電用閾値を上回ると判定した場合は、蓄電装置14に対する蓄電指令の生成を停止して直流リンク4への直流電力の蓄電動作を終了させる。
なお、蓄電用閾値は、コンバータ11の逆変換動作についての最大変換可能電力である最大回生可能電力に基づいて設定されればよい。例えば、コンバータ11の最大回生可能電力の絶対値と消費電力推定部15によって計算された回生に係る消費電力量推定値の絶対値との差が負のときは、実際の総消費電力がコンバータ11の逆変換時の最大回生可能電力を超えている可能性があるので、その超過する電力が、蓄電装置14に蓄電されるべきである。蓄電用閾値は、回生に係る消費電力推定値がコンバータ11の最大回生可能電力を超えたことにより直流リンク4からの直流電力を蓄電装置14へ蓄電すべき状況にあるか否かを判断するための基準値として設定される。
図4は、本開示の一実施形態によるモータ駆動装置の動作フローを示すフローチャートである。ステップS101~S112の処理は所定の制御周期で実行される。
ステップS101において、ドライブ用モータ制御部13は、速度検出器52によって検出されたドライブ用サーボモータ3の速度(速度フィードバック)、ドライブ用サーボモータ3の巻線に流れる電流(電流フィードバック)、所定のトルク指令、及びドライブ用サーボモータ3の動作プログラムなどに基づいて、ドライブ用サーボモータ3の速度、トルク、または回転子の位置を制御するための駆動指令を生成する。ドライブ用モータ制御部13によって作成された駆動指令に基づいて、ドライブ用インバータ12による電力変換動作が制御される。ドライブ用インバータ12は、ドライブ用サーボモータ3を駆動するために、直流リンク4における直流電力を交流電力に変換してドライブ用サーボモータ3へ駆動電力として供給し、または制動時にドライブ用サーボモータ3で発生した交流の回生電力を直流電力へ変換して直流リンク4へ戻す。
ステップS102において、消費電力推定部15は、ドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる総消費電力の、現時点の値よりも所定時間だけ先の推定値である消費電力推定値を取得する。
ステップS103において、蓄電装置制御部16は、消費電力推定値と給電用閾値とを比較し、消費電力推定値が給電用閾値を上回るか否かを判定する。消費電力推定値が給電用閾値を上回ると蓄電装置制御部16が判定した場合は、ステップS104へ進み、そうでない場合はステップS108へ進む。
ステップS104において、蓄電装置制御部16は、蓄電装置14に対して給電を指令して蓄電装置14を制御し、直流リンク4へ直流電力を給電させる。
ステップS105おいて、消費電力推定部15は、ドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる総消費電力の、現時点の値よりも所定時間だけ先の推定値である消費電力推定値を取得する。
ステップS106おいて、蓄電装置制御部16は、消費電力推定値と給電用閾値とを比較し、消費電力推定値が給電用閾値を下回るか否かを判定する。消費電力推定値が給電用閾値を下回ると蓄電装置制御部16が判定した場合は、ステップS107へ進み、そうでない場合はステップS104へ戻る。
ステップS107おいて、蓄電装置制御部16は、蓄電装置14に対する給電指令の生成を停止して直流リンク4への直流電力の給電動作を終了させる。ステップS107の後はステップS102へ戻る。
ステップS103において蓄電装置制御部16が消費電力推定値は給電用閾値を上回ると判定しなかった場合は、ステップ108において、蓄電装置制御部16は、消費電力推定値と蓄電用閾値とを比較し、消費電力推定値が蓄電用閾値を下回るか否かを判定する。消費電力推定値が蓄電用閾値を下回ると蓄電装置制御部16が判定した場合は、ステップS109へ進み、そうでない場合はステップS102へ戻る。
ステップS109において、蓄電装置制御部16は、蓄電装置14に対して蓄電を指令して蓄電装置14を制御し、直流リンク4から直流電力を蓄電させる。
ステップS110において、消費電力推定部15は、ドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる総消費電力の、現時点の値よりも所定時間だけ先の推定値である消費電力推定値を取得する。
ステップS111おいて、蓄電装置制御部16は、消費電力推定値と蓄電用閾値とを比較し、消費電力推定値が蓄電用閾値を上回るか否かを判定する。消費電力推定値が給電用閾値を上回ると蓄電装置制御部16が判定した場合は、ステップS112へ進み、そうでない場合はステップS109へ戻る。
ステップS112おいて、蓄電装置制御部16は、蓄電装置14に対する蓄電指令の生成を停止して直流リンク4への直流電力の蓄電動作を終了させる。ステップS112の後はステップS102へ戻る。
このように、蓄電装置制御部16による蓄電装置制御処理(ステップS103及びS104、ステップS106及びステップS107、ステップS108及びS109、並びにステップS111及びS112)の前に、消費電力推定部15による推定値取得処理(ステップS102、S105、S110)が必ず実行される。蓄電装置制御部16による蓄電装置制御処理は所定の制御周期ごとに実行されるので、消費電力推定部15による推定値取得処理も当該制御周期において必ず1回実行される。
なお、ステップS103及びこれに続くステップS104~S107における処理とステップS108これに続くステップS109~S112における処理は、順番を入れ替えて実行してもよい。すなわち、蓄電装置制御部16は、消費電力推定値と蓄電用閾値とを比較して消費電力推定値が蓄電用閾値を下回るか否かを判定し、消費電力推定値が蓄電用閾値を下回ると判定しなかった場合に、続けて消費電力推定値と給電用閾値とを比較して消費電力推定値が給電用閾値を上回るか否かを判定するようにしてもよい。
続いて、本開示の一実施形態によるモータ駆動装置1における消費電力推定部15の形態について、いくつか列記する。
第1の形態による消費電力推定部15は、現時点のドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる総消費電力を計算し、この現時点の総消費電力の値よりも所定時間だけ先の推定値である消費電力推定値を取得するものである。
図5は、第1の形態による消費電力推定部を有する本開示の一実施形態によるモータ駆動装置のブロック図である。
消費電力推定部15は、消費電力計算部21と、消費電力記憶部22と、消費電力推定値計算部23とを有する。
消費電力計算部21は、現時点のドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる総消費電力を計算する。ここで、コンバータ11及びドライブ用インバータ12における各損失には、それぞれの主回路におけるスイッチング損失や抵抗損失などが含まれ、公知の方法によって測定され得る。また、現時点のドライブ用サーボモータ3の出力は、速度検出器52により検出されたドライブ用サーボモータ3の回転速度とドライブ用サーボモータ3のトルクとの乗算により得られる。ドライブ用サーボモータ3が加速する際は、ドライブ用サーボモータ3は、ドライブ用インバータ12から供給された交流電力を消費するが、この電力消費時のドライブ用サーボモータ3の出力を「正」とする。したがって、ドライブ用サーボモータ3が減速することにより電力が回生されることきは、ドライブ用サーボモータ3の出力は「負」となる。通常は、ドライブ用サーボモータ3における巻線損失、コンバータ11における損失及びドライブ用インバータ12における損失は、ドライブ用サーボモータ3の出力の絶対値に比べて小さいので、ドライブ用サーボモータ3の出力の影響が総消費電力において支配的である。したがって、ドライブ用サーボモータ3の出力の正負(消費または回生)は、総消費電力の正負にほぼ対応する。なお、図1に例示するように、ドライブ用インバータ12及びドライブ用サーボモータ3がそれぞれ複数存在する場合は、消費電力計算部21は、複数のドライブ用サーボモータ3の出力と複数のドライブ用サーボモータ3における巻線損失とコンバータ11における損失と複数のドライブ用インバータ12における損失との総和とを、総消費電力として計算する。
蓄電装置14内のバッファ用インバータ43及びDCDCコンバータ45にも損失が存在することから、消費電力計算部21は、ドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和に、さらに、バッファ用インバータ43(フライホイール型の場合)またはDCDCコンバータ45(コンデンサ型の場合)における損失を加算したものを、総消費電力として算出してもよい。バッファ用インバータ43及びDCDCコンバータ45における各損失には、それぞれの主回路におけるスイッチング損失や抵抗損失などが含まれ、公知の方法によって測定され得る。また、バッファ用インバータ43またはDCDCコンバータ45がそれぞれ複数存在する場合は、消費電力計算部21は、ドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和に、さらに複数のバッファ用インバータ43または複数のDCDCコンバータ45における損失の総和を加算したものを、総消費電力として算出してもよい。
消費電力記憶部22は、消費電力計算部により計算された総消費電力の値を記憶する。消費電力記憶部22は、例えばEEPROM(登録商標)などのような電気的に消去・記録可能な不揮発性メモリ、または、例えばDRAM、SRAMなどのような高速で読み書きのできるランダムアクセスメモリなどで構成される。
消費電力推定値計算部23は、消費電力記憶部22に記憶された現時点以前の少なくとも2つの総消費電力の値に基づいて、現時点の値よりも所定時間だけ先の推定値である消費電力推定値を計算する。例えば、消費電力記憶部22に記憶された現時点以前の少なくとも2つの総消費電力の値を用いて近似直線を算出し、現時点より所定時間だけ先の時刻における総消費電力を推定し、これを消費電力推定値として出力する。消費電力推定値計算部23が消費電力推定値を計算する際に用いられる上記「所定時間」として、「蓄電装置制御部16が蓄電装置14に対し給電または蓄電を指令してから蓄電装置14が実際に給電または蓄電を開始するまでの応答遅れ時間」を設定する。
図6は、推定値を算出するための近似直線を説明する図であって、(A)は最小二乗法を用いた場合を示し、(B)は1次近似を用いた場合を示す。時刻tにおける消費電力推定値をPとしたとき、推定値を算出するための近似直線は下記式1のように表される。
例えば、式1で示される近似直線の傾きα及び切片βを最小二乗法を用いて求める場合は、消費電力記憶部22に記憶された現時点以前の3つの総消費電力の値を用いる。近似直線の算出に用いられる現時点「以前」の3つの総消費電力の値は、現時点の総消費電力の値を含んでも含まなくでもよい。図6(A)において、例えば現時点の時刻をt3とする。消費電力計算部21により算出され消費電力記憶部22に記憶された時刻t3のときドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる総消費電力をP3とし、時刻t3よりも前の時刻t2のときの消費電力計算部21により算出され消費電力記憶部22に記憶された総消費電力をP2とし、時刻t2よりも前の時刻t1のときの消費電力計算部21により算出され消費電力記憶部22に記憶された総消費電力をP1とする。最小二乗法に基づく総消費電力の推定値を算出するための式1で表される近似直線の傾きαは下記式2を用いて求めることができ、切片βは下記式3を用いて求めることができる。
また例えば、式1で示される近似直線の傾きα及び切片βを1次近似(線形近似)を用いて求める場合は、消費電力記憶部22に記憶された現時点以前の2つの総消費電力の値を用いる。近似直線の算出に用いられる現時点「以前」の2つの総消費電力の値は、現時点の総消費電力の値を含んでも含まなくでもよい。図6(B)において、例えば現時点の時刻をt2とする。消費電力計算部21により算出され消費電力記憶部22に記憶された時刻t2のときドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる総消費電力をP2とし、時刻t2よりも前の時刻t1のときの消費電力計算部21により算出され消費電力記憶部22に記憶された総消費電力をP1とする。1次近似に基づく総消費電力の推定値を算出するための式1で表される近似直線の傾きαは下記式4を用いて求めることができ、切片βは下記式5を用いて求めることができる。
上述のようにして算出された式1で示される近似直線に、現時点より所定時間だけ先の時刻を代入すると、当該所定時間だけ先の時刻における消費電力推定値を算出することができる。消費電力推定部15内の消費電力推定値計算部23は上述した一連の処理に従って、制御周期ごとに消費電力推定値を算出する。なお、消費電力推定値を、上述のように現時点の総消費電力を用いて算出する以外に、現時点のドライブ用サーボモータ3の出力や現時点のドライブ用サーボモータ3の速度を用いて算出することもできるが、これについては第2~第4の形態として後述する。
蓄電装置制御部16は、消費電力推定部15により推定された消費電力推定値に応じて、給電指令また蓄電指令を生成して蓄電装置14の給電または蓄電を制御する。図7は、消費電力推定部による消費電力推定値の算出及び蓄電装置制御部による蓄電装置の制御を説明する図である。例えば現時点の時刻をt3とする。上述のようにして算出された式1で示される近似直線を破線で示す。また、時刻t3までに消費電力推定部15により推定された消費電力推定値を結んだ直線を一点鎖線で示す。現時点の時刻t3において、消費電力推定部15による消費電力推定処理及び蓄電装置制御部16による蓄電装置14に対する指令生成処理が実行される。すなわち、消費電力推定部15は、式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t3より所定時間Txだけ先の時刻t3+Txを代入して消費電力推定値P4’を算出する。そして、蓄電装置制御部16は、現時点の時刻t3において推定された消費電力推定値と給電用閾値及び蓄電用閾値とを比較する。図7に示す例では、消費電力推定値が給電用閾値を上回っているので、蓄電装置制御部16は、蓄電装置14に対して給電を指令して蓄電装置14を制御し、直流リンク4へ直流電力を給電させる。
図8は、本発明の一実施形態によるモータ駆動装置における消費電力推定値と給電用閾値及び蓄電用閾値との関係を例示する図である。一例として、消費電力推定部15により計算された消費電力推定値が図8に示すように推移した場合の蓄電装置制御部16による制御を説明する。蓄電装置制御部16は、消費電力推定値が給電用閾値を上回ると判定すると、蓄電装置14に対して給電を指令して蓄電装置14を制御し、直流リンク4へ直流電力を給電させる。その後、蓄電装置制御部16は、消費電力推定値が給電用閾値を下回ると判定すると、蓄電装置14に対する給電指令の生成を停止して直流リンク4への直流電力の給電動作を終了させる。さらにその後、蓄電装置制御部16は、消費電力推定値が蓄電用閾値を下回ると判定すると、蓄電装置14に対して蓄電を指令して蓄電装置14を制御し、直流リンク4から直流電力を蓄電させる。さらにその後、蓄電装置制御部16は、消費電力推定値が蓄電用閾値を上回ると判定すると、蓄電装置14に対する蓄電指令の生成を停止して直流リンク4への直流電力の蓄電動作を終了させる。図8に示す消費電力推定値が給電用閾値を上回る前後の時間的領域A及び消費電力推定値が蓄電用閾値を下回る前後の時間的領域Bにおける消費電力推定部15及び蓄電装置制御部16の動作例について、図9及び図10を用いてより詳細に説明する。
図9は、本発明の一実施形態によるモータ駆動装置において、消費電力推定値が給電用閾値を上回る前後における消費電力推定部及び蓄電装置制御部の動作例を示す図である。
図9(A)に示すように現在の時刻がt12のとき、時刻t12よりも前に消費電力計算部21により算出され消費電力記憶部22に記憶された総消費電力に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t12より所定時間Txだけ先の時刻t12+Txを代入して消費電力推定値を算出する。そして、蓄電装置制御部16は、この消費電力推定値と給電用閾値とを比較する。図9(A)に示すように時刻t12では消費電力推定値が給電用閾値を上回っていないので、蓄電装置制御部16は、給電指令を生成せず、蓄電装置14に対する給電制御は行わない。
さらに時間が進み、図9(B)に示すように現在の時刻がt13になったとき、時刻t13よりも前に消費電力計算部21により算出され消費電力記憶部22に記憶された総消費電力に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t13より所定時間Txだけ先の時刻t13+Txを代入して消費電力推定値を算出する。そして、蓄電装置制御部16は、この消費電力推定値と給電用閾値とを比較する。図9(B)に示すように時刻t13では消費電力推定値が給電用閾値を上回っているので、蓄電装置制御部16は、蓄電装置14に対して給電を指令する。
さらに時間が進み、図9(C)に示すように現在の時刻がt14になったとき、時刻t14よりも前に消費電力計算部21により算出され消費電力記憶部22に記憶された総消費電力に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t14より所定時間Txだけ先の時刻t14+Txを代入して消費電力推定値を算出する。そして、蓄電装置制御部16は、この消費電力推定値と給電用閾値とを比較する。図9(C)に示すように時刻t14でも依然として消費電力推定値が給電用閾値を上回っているので、蓄電装置制御部16は、蓄電装置14に対して給電を指令する。
図10は、本発明の一実施形態によるモータ駆動装置において、消費電力推定値が蓄電用閾値を下回る前後における消費電力推定部及び蓄電装置制御部の動作例を示す図である。
図10(A)に示すように現在の時刻がt12のとき、時刻t12よりも前に消費電力計算部21により算出され消費電力記憶部22に記憶された消費電力に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t12より所定時間Txだけ先の時刻t12+Txを代入して消費電力推定値を算出する。そして、蓄電装置制御部16は、この消費電力推定値と蓄電用閾値とを比較する。図10(A)に示すように時刻t12では消費電力推定値が蓄電用閾値を下回っていないので、蓄電装置制御部16は、蓄電指令を生成せず、蓄電装置14に対する蓄電制御は行わない。
さらに時間が進み、図10(B)に示すように現在の時刻がt13になったとき、時刻t13よりも前に消費電力計算部21により算出され消費電力記憶部22に記憶された総消費電力に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t13より所定時間Txだけ先の時刻t13+Txを代入して消費電力推定値を算出する。そして、蓄電装置制御部16は、この消費電力推定値と蓄電用閾値とを比較する。図10(B)に示すように時刻t13では消費電力推定値が蓄電用閾値を下回っているので、蓄電装置制御部16は、蓄電装置14に対して蓄電を指令する。
さらに時間が進み、図10(C)に示すように現在の時刻がt14になったとき、時刻t14よりも前に消費電力計算部21により算出され消費電力記憶部22に記憶された総消費電力に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t14より所定時間Txだけ先の時刻t14+Txを代入して消費電力推定値を算出する。そして、蓄電装置制御部16は、この消費電力推定値と蓄電用閾値とを比較する。図10(C)に示すように時刻t14でも依然として消費電力推定値が蓄電用閾値を下回っているので、蓄電装置制御部16は、蓄電装置14に対して蓄電を指令する。
図11は、本発明の一実施形態によるモータ駆動装置における総消費電力とフライホイール型の蓄電装置の動作との関係を例示する図である。図11の上段は、ドライブ用サーボモータ3の出力とドライブ用サーボモータ3における巻線損失とコンバータ11における損失とドライブ用インバータ12における損失との和として得られる総消費電力を示し、その下の段は、フライホイール型の蓄電装置14の電力を示し、さらにその下の段は、バッファ用サーボモータ42に対するトルク指令とバッファ用サーボモータ42の実トルクを示し、さらにその下の段は、バッファ用サーボモータ42の速度を示す。
ここでは、一例として、フライホイール型の蓄電装置14を有するモータ駆動装置1によりドライブ用サーボモータ3を加速させて時刻t2でドライブ用サーボモータ3を減速させて総消費電力が変化した例を考える。
上述のように、本実施形態では、蓄電装置制御部16が蓄電装置14に対し給電または蓄電を指令してから蓄電装置14が実際に給電または蓄電を開始するまでの応答遅れ時間を考慮し、現時点以前の総消費電力についての既知のデータから、現時点よりも「当該応答遅れ時間に相当する時間Tx」だけ先の時点における総消費電力を推定し、この推定値と給電用閾値及び蓄電用閾値との比較結果に基づいて蓄電装置制御部16は蓄電装置14の給電及び蓄電を制御する。図11においてドライブ用サーボモータ3が徐々に加速し、例えば時刻t1で総消費電力が給電用閾値を上回る場合、消費電力推定部15は、時刻t1よりも所定時間Txだけ前の時刻t1”の時点で、時刻t1における総消費電力を推定し、これを「消費電力推定値」として出力する。時刻t1”において、蓄電装置制御部16は、この消費電力推定値と給電用閾値とを比較し、消費電力推定値が給電用閾値を上回っているので、蓄電装置制御部16は、蓄電装置14に対して給電を指令する。この給電指令に基づき、バッファ用サーボモータ42に対するトルク指令が作成される。蓄電装置制御部16が蓄電装置14に対し給電を指令してから所定時間Txだけ遅れて蓄電装置14は実際に給電を開始するので、バッファ用サーボモータ42の実トルクは、トルク指令に対して所定時間Txだけ遅れて追従することになる。すなわち、蓄電装置14は、蓄電装置制御部16が給電指令を出力した時刻t1”よりも所定時間Txだけ後の時刻t1に、直流リンク4への直流電力の給電を開始する。これにより、時刻t1以降は、総消費電力のうち給電用閾値を超える分の電力が、蓄電装置14から直流リンク4へ供給される直流電力によって補われ、交流電源2の電力ピークがカットされる。
時刻t2でドライブ用サーボモータ3を減速させて総消費電力が蓄電用閾値を下回る場合、消費電力推定部15は、時刻t2よりも所定時間Txだけ前の時刻t2”の時点で、時刻t2における総消費電力を推定し、これを「消費電力推定値」として出力する。時刻t2”において、蓄電装置制御部16は、この消費電力推定値と蓄電用閾値とを比較し、消費電力推定値が蓄電用閾値を下回っているので、蓄電装置制御部16は、蓄電装置14に対して蓄電を指令する。この蓄電指令に基づき、バッファ用サーボモータ42に対するトルク指令が作成される。蓄電装置制御部16が蓄電装置14に対し蓄電を指令してから所定時間Txだけ遅れて蓄電装置14は実際に蓄電を開始するので、バッファ用サーボモータ42の実トルクは、トルク指令に対して所定時間Txだけ遅れて追従することになる。すなわち、蓄電装置14は、蓄電装置制御部16が蓄電指令を出力した時刻t2”よりも所定時間Txだけ後の時刻t2に、直流リンク4からの直流電力の蓄電を開始する。これにより、時刻t2以降は、総消費電力(ドライブ用サーボモータ3の回生電力なので負値を示す)と蓄電用閾値との差分の電力が、直流リンク4から蓄電装置14に蓄電され、交流電源2の電力ピークがカットされる。
図12は、蓄電装置の応答遅れを考慮しない従来のモータ駆動装置における総消費電力とフライホイール型の蓄電装置の動作との関係を例示する図である。図12の上段は、ドライブ用サーボモータの出力とドライブ用サーボモータにおける巻線損失とコンバータにおける損失とドライブ用インバータにおける損失との和として得られる総消費電力を示し、その下の段は、フライホイール型の蓄電装置の電力を示し、さらにその下の段は、バッファ用サーボモータに対するトルク指令とバッファ用サーボモータの実トルクを示し、さらにその下の段は、バッファ用サーボモータの速度を示す。
図12では、一例として、蓄電装置の応答遅れを考慮せずに図11の場合と同じ動作パターンで従来のモータ駆動装置によりドライブ用サーボモータを加速させて時刻t2でドライブ用サーボモータ3を減速させて総消費電力が変化した例を考える。
図12においてドライブ用サーボモータが徐々に加速し、例えば時刻t1で総消費電力が給電用閾値を上回る場合、蓄電装置制御部は、時刻t1の時点で蓄電装置に対して給電を指令する。この給電指令に基づき、バッファ用サーボモータに対するトルク指令が作成される。蓄電装置は給電指令を受けてから応答遅れ時間Txだけ遅れて実際に給電を開始するので、バッファ用サーボモータの実トルクは、トルク指令に対して応答遅れ時間Txだけ遅れて追従することになる。すなわち、蓄電装置は、蓄電装置制御部が給電指令を出力した時刻t1よりも所定時間Txだけ後の時刻t1’に、直流リンクへの直流電力の給電を開始する。これにより、時刻t1’以降は、総消費電力のうち給電用閾値を超える分の電力が、蓄電装置から直流リンクへ供給される直流電力によって補われ、交流電源の電力ピークがカットされる。しかしながら、時刻t1で総消費電力が給電用閾値を上回っているにもかかわらず、蓄電装置の応答遅れのため給電開始が遅れるので、時刻t1から時刻t1’の間は、給電用閾値を超える分の総消費電力についてはカットできなくなる。
図12において時刻t2でドライブ用サーボモータを減速させて総消費電力が蓄電用閾値を下回る場合、蓄電装置制御部は、蓄電装置に対して蓄電を指令する。この蓄電指令に基づき、バッファ用サーボモータに対するトルク指令が作成される。蓄電装置は蓄電指令を受けてから応答遅れ時間Txだけ遅れて実際に蓄電を開始するので、バッファ用サーボモータの実トルクは、トルク指令に対して所定時間Txだけ遅れて追従することになる。すなわち、蓄電装置は、蓄電装置制御部が蓄電指令を出力した時刻t2よりも所定時間Txだけ後の時刻t2’に、直流リンクからの直流電力の蓄電を開始する。これにより、時刻t2’以降は、総消費電力(ドライブ用サーボモータの回生電力なので負値を示す)と蓄電用閾値との差分の電力が、直流リンクから蓄電装置に蓄電され、電源設備の電力ピークがカットされる。しかしながら、時刻t2で総消費電力が蓄電用閾値を下回っているにもかかわらず、蓄電装置の応答遅れのため蓄電開始が遅れるので、時刻t2から時刻t3で総消費電力が蓄電用閾値を上回るまでの間は、総消費電力と蓄電用閾値との差分の総消費電力についてはカットできなくなる。時刻t5以降は時刻t4までと動作が同じであるので説明を省略する。
図12を参照して説明したように、従来は、蓄電装置に対する給電または蓄電の指令をしてから蓄電装置が給電動作または蓄電動作を実際に開始するまでには応答遅れに起因して電力ピークを低減することができないことがあった。
これに対し、本開示の実施形態によれば、蓄電装置制御部16が蓄電装置14に対し給電または蓄電を指令してから蓄電装置14が実際に給電または蓄電を開始するまでの応答遅れ時間を考慮し、現時点以前の総消費電力についての既知のデータから、現時点よりも「当該応答遅れ時間に相当する時間」だけ先の時点における総消費電力を推定し、この推定値と給電用閾値及び蓄電用閾値との比較結果に基づいて蓄電装置制御部16は蓄電装置14の給電及び蓄電を制御するので、電力ピークを確実に低減することができる。
上述のように、消費電力推定部15が消費電力推定値を計算する際に用いられる上記「所定時間」として、「蓄電装置制御部16が蓄電装置14に対し給電または蓄電を指令してから蓄電装置14が実際に給電または蓄電を開始するまでの応答遅れ時間」を設定する。蓄電装置制御部16が蓄電装置14に対し給電または蓄電を指令してから蓄電装置14が実際に給電または蓄電を開始するまでの応答遅れ時間は、事前に測定しておいてもよいし、測定部を設けてリアルタイムに測定してもよい。図13は、蓄電装置の応答遅れ時間を測定する測定部を有する本開示の一実施形態によるモータ駆動装置のブロック図である。蓄電装置制御部16は、蓄電装置14に対し給電または蓄電を指令してから蓄電装置14が給電または蓄電を開始するまでの応答遅れ時間を測定する測定部38を有する。消費電力推定部15は、現時点以前の総消費電力についての既知のデータから、現時点よりも測定部38が測定した少なくとも「応答遅れ時間に相当する時間」だけ先の時点における総消費電力を推定し、この推定値を消費電力推定値として出力する。
続いて、第2~第4の形態による消費電力推定部15について説明する。第2~第4の形態による消費電力推定部15は、ドライブ用サーボモータ3の現時点の出力値よりも所定時間だけ先の推定値であるドライブ用サーボモータ出力推定値を計算し、ドライブ用サーボモータ出力推定値を含む消費電力推定値を計算するものである。
図14は、第2の形態による消費電力推定部を有する本開示の一実施形態によるモータ駆動装置のブロック図である。
第2の形態による消費電力推定部15は、ドライブ用サーボモータ3の現時点の出力値よりも所定時間だけ先の推定値であるドライブ用サーボモータ出力推定値を取得する出力推定部24と、ドライブ用サーボモータ出力推定値を少なくとも含む消費電力推定値を計算する消費電力推定値計算部25とを有する。
第2の形態において、出力推定部24は、トルク取得部31と、トルク記憶部32と、トルク推定値計算部33と、速度取得部34と、出力推定値計算部37とを有する。
トルク取得部31は、ドライブ用モータ制御部13からドライブ用サーボモータ3のトルクの値を取得する。
トルク記憶部32は、トルク取得部31により取得されたトルクの値を記憶する。トルク記憶部32は、例えばEEPROM(登録商標)などのような電気的に消去・記録可能な不揮発性メモリ、または、例えばDRAM、SRAMなどのような高速で読み書きのできるランダムアクセスメモリなどで構成される。
速度取得部34は、速度検出器52からドライブ用サーボモータ3の速度の値を取得する。
トルク推定値計算部33は、トルク記憶部32に記憶された現時点以前の少なくとも2つのトルクの値に基づいて、現時点のトルクの値よりも所定時間だけ先の推定値であるトルク推定値を計算する。トルク推定値は、例えば、トルク記憶部32に記憶された現時点以前の少なくとも2つのトルクの値を用いて近似直線を算出し、現時点より所定時間だけ先の時刻におけるトルクを推定する。
図15は、ドライブ用サーボモータのトルクの変化を例示する図である。また、図16は、図15の領域C近傍におけるドライブ用サーボモータのトルク推定値の計算を説明する図である。
トルク推定値は、図6を参照して説明した推定値を算出するための式1で表される近似直線を用いて算出することができる。例えば、図6(A)を参照して説明したようにトルク推定値の算出に最小二乗法を用いる場合、トルク記憶部32に記憶された現時点以前の3つのトルクの値に基づいて、最小二乗法に基づくトルク推定値を算出するための式1で表される近似直線の傾きαは、式2を用いて求めることができ、切片βは式3を用いて求めることができる。また例えば図6(B)を参照して説明したようにトルク推定値の算出に1次近似を用いる場合、トルク記憶部32に記憶された現時点以前の2つのトルクの値に基づいて、1次近似に基づくトルク推定値を算出するための式1で表される近似直線の傾きαは、式4を用いて求めることができ、切片βは式5を用いて求めることができる。上述のようにして算出された式1で示される近似直線に、現時点より所定時間だけ先の時刻を代入すると、当該所定時間だけ先の時刻におけるトルク推定値を算出することができる。出力推定部24内のトルク推定値計算部33は上述した一連の処理に従って、制御周期ごとにトルク推定値を算出する。
例えば、図16(A)に示すように現在の時刻がt12のとき、時刻t12よりも前にトルク取得部31により取得されトルク記憶部32に記憶されたトルクの値に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t12より所定時間Txだけ先の時刻t12+Txを代入してトルク推定値を算出する。さらに時間が進み、図16(B)に示すように現在の時刻がt13になったとき、時刻t13よりも前にトルク取得部31により取得されトルク記憶部32に記憶されたトルクの値に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t13より所定時間Txだけ先の時刻t13+Txを代入してトルク推定値を算出する。さらに時間が進み、図16(C)に示すように現在の時刻がt14になったとき、時刻t14よりも前にトルク取得部31により取得されトルク記憶部32に記憶されたトルクの値に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t14より所定時間Txだけ先の時刻t14+Txを代入してトルク推定値を算出する。
出力推定値計算部37は、上述のようにトルク推定値計算部33により計算されたトルク推定値と速度取得部34によって取得された現時点の速度の値とを乗算することによって、ドライブ用サーボモータ出力推定値を算出する。
消費電力推定値計算部25は、出力推定値計算部37によって算出されたドライブ用サーボモータ出力推定値を少なくとも含む消費電力推定値を計算する。すなわち、消費電力推定値計算部25は、出力推定値計算部37によって算出されたドライブ用サーボモータ出力推定値と、ドライブ用サーボモータ3における巻線損失と、コンバータ11における損失と、ドライブ用インバータ12における損失とを加算することで、消費電力推定値を算出する。
図17は、第3の形態による消費電力推定部を有する本開示の一実施形態によるモータ駆動装置のブロック図である。
第3の形態による消費電力推定部15は、ドライブ用サーボモータ3の現時点の出力値よりも所定時間だけ先の推定値であるドライブ用サーボモータ出力推定値を取得する出力推定部24と、ドライブ用サーボモータ出力推定値を少なくとも含む消費電力推定値を計算する消費電力推定値計算部25とを有する。
第3の形態において、出力推定部24は、トルク取得部31と、速度取得部34と、速度記憶部35と、速度推定値計算部36と、出力推定値計算部37とを有する。
トルク取得部31は、ドライブ用モータ制御部13からドライブ用サーボモータ3のトルクの値を取得する。
速度取得部34は、速度検出器52からドライブ用サーボモータ3の速度の値を取得する。
速度記憶部35は、速度取得部34により取得されたドライブ用サーボモータ3の速度の値を記憶する。速度記憶部35は、例えばEEPROM(登録商標)などのような電気的に消去・記録可能な不揮発性メモリ、または、例えばDRAM、SRAMなどのような高速で読み書きのできるランダムアクセスメモリなどで構成される。
速度推定値計算部36は、速度記憶部35に記憶された現時点以前の少なくとも2つの速度の値に基づいて、現時点の速度の値よりも所定時間だけ先の推定値である速度推定値を計算する。速度推定値は、例えば、速度記憶部35に記憶された現時点以前の少なくとも2つの速度の値を用いて近似直線を算出し、現時点より所定時間だけ先の時刻における速度を推定する。
図18は、ドライブ用サーボモータの速度の変化を例示する図である。また、図19は、図18の領域D近傍におけるドライブ用サーボモータの速度推定値の計算を説明する図である。
速度推定値は、図6を参照して説明した推定値を算出するための式1で表される近似直線を用いて算出することができる。例えば、図6(A)を参照して説明したように速度推定値の算出に最小二乗法を用いる場合、速度記憶部35に記憶された現時点以前の3つの速度の値に基づいて、最小二乗法に基づく速度推定値を算出するための式1で表される近似直線の傾きαは、式2を用いて求めることができ、切片βは式3を用いて求めることができる。また例えば図6(B)を参照して説明したように速度指令値の算出に1次近似を用いる場合、速度記憶部35に記憶された現時点以前の2つの速度の値に基づいて、1次近似に基づく速度推定値を算出するための式1で表される近似直線の傾きαは、式4を用いて求めることができ、切片βは式5を用いて求めることができる。上述のようにして算出された式1で示される近似直線に、現時点より所定時間だけ先の時刻を代入すると、当該所定時間だけ先の時刻における速度推定値を算出することができる。出力推定部24内の速度推定値計算部36は上述した一連の処理に従って、制御周期ごとに速度推定値を算出する。
例えば、図19(A)に示すように現在の時刻がt12のとき、時刻t12よりも前に速度取得部34により取得され速度記憶部35に記憶された速度の値に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t12より所定時間Txだけ先の時刻t12+Txを代入して速度推定値を算出する。さらに時間が進み、図19(B)に示すように現在の時刻がt13になったとき、時刻t13よりも前に速度取得部34により取得され速度記憶部35に記憶された速度の値に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t13より所定時間Txだけ先の時刻t13+Txを代入して速度推定値を算出する。さらに時間が進み、図19(C)に示すように現在の時刻がt14になったとき、時刻t14よりも前に速度取得部34により取得され速度記憶部35に記憶された速度の値に基づいて式1における傾きα及び切片βを算出し、さらに式1における変数tに、現時点の時刻t14より所定時間Txだけ先の時刻t14+Txを代入して速度推定値を算出する。
出力推定値計算部37は、上述のようにトルク取得部31により取得されたトルクの値と速度推定値計算部36によって計算された速度推定値とを乗算することによって、ドライブ用サーボモータ出力推定値を算出する。
消費電力推定値計算部25は、出力推定値計算部37によって算出されたドライブ用サーボモータ出力推定値を少なくとも含む消費電力推定値を計算する。すなわち、消費電力推定値計算部25は、出力推定値計算部37によって算出されたドライブ用サーボモータ出力推定値と、ドライブ用サーボモータ3における巻線損失と、コンバータ11における損失と、ドライブ用インバータ12における損失とを加算することで、消費電力推定値を算出する。
図20は、第4の形態による消費電力推定部を有する本開示の一実施形態によるモータ駆動装置のブロック図である。
第4の形態による消費電力推定部15は、ドライブ用サーボモータ3の現時点の出力値よりも所定時間だけ先の推定値であるドライブ用サーボモータ出力推定値を取得する出力推定部24と、ドライブ用サーボモータ出力推定値を少なくとも含む消費電力推定値を計算する消費電力推定値計算部25とを有する。
第4の形態において、出力推定部24は、トルク取得部31と、トルク記憶部32と、トルク推定値計算部33と、速度取得部34と、速度記憶部35と、速度推定値計算部36と、出力推定値計算部37とを有する。
トルク取得部31は、ドライブ用モータ制御部13からドライブ用サーボモータ3のトルクの値を取得する。
トルク記憶部32は、トルク取得部31により取得されたトルクの値を記憶する。トルク記憶部32は、例えばEEPROM(登録商標)などのような電気的に消去・記録可能な不揮発性メモリ、または、例えばDRAM、SRAMなどのような高速で読み書きのできるランダムアクセスメモリなどで構成される。
トルク推定値計算部33は、トルク記憶部32に記憶された現時点以前の少なくとも2つのトルクの値に基づいて、現時点のトルクの値よりも所定時間だけ先の推定値であるトルク推定値を計算する。トルク推定値は、例えば、トルク記憶部32に記憶された現時点以前の少なくとも2つのトルクの値を用いて近似直線を算出し、現時点より所定時間だけ先の時刻におけるトルクを推定する。トルク推定値の計算方法は第2の形態に関して図15及び図16を参照して説明した通りである。
速度取得部34は、速度検出器52からドライブ用サーボモータ3の速度の値を取得する。
速度記憶部35は、速度取得部34により取得されたドライブ用サーボモータ3の速度の値を記憶する。速度記憶部35は、例えばEEPROM(登録商標)などのような電気的に消去・記録可能な不揮発性メモリ、または、例えばDRAM、SRAMなどのような高速で読み書きのできるランダムアクセスメモリなどで構成される。
速度推定値計算部36は、速度記憶部35に記憶された現時点以前の少なくとも2つの速度の値に基づいて、現時点の速度の値よりも所定時間だけ先の推定値である速度推定値を計算する。速度推定値は、例えば、速度記憶部35に記憶された現時点以前の少なくとも2つの速度の値を用いて近似直線を算出し、現時点より所定時間だけ先の時刻における速度を推定する。速度推定値の計算方法は第3の形態に関して図18及び図19を参照して説明した通りである。
出力推定値計算部37は、上述のようにトルク推定値計算部33により取得されたトルク推定値と速度推定値計算部36により計算された速度推定値とを乗算することによって、ドライブ用サーボモータ出力推定値を算出する。
消費電力推定値計算部25は、出力推定値計算部37によって算出されたドライブ用サーボモータ出力推定値を少なくとも含む消費電力推定値を計算する。すなわち、消費電力推定値計算部25は、出力推定値計算部37によって算出されたドライブ用サーボモータ出力推定値と、ドライブ用サーボモータ3における巻線損失と、コンバータ11における損失と、ドライブ用インバータ12における損失とを加算することで、消費電力推定値を算出する。
なお、ドライブ用サーボモータ3の出力の影響が総消費電力において支配的であるので、第2~第4の形態による消費電力推定部15では、ドライブ用サーボモータ3の出力推定値を計算した。この変形例として、さらにドライブ用サーボモータ3における巻線損失、コンバータ11における損失、及びドライブ用インバータ12における損失についても推定値を計算してこれら推定値を含むような消費電力推定値を計算してもよい。
上述のドライブ用モータ制御部13、消費電力推定部15、及び蓄電装置制御部16は、例えばソフトウェアプログラム形式で構築されてもよく、あるいは各種電子回路とソフトウェアプログラムとの組み合わせで構築されてもよい。この場合、例えば、CPUやMPUDSPなどの演算処理装置にこのソフトウェアプログラムを動作させて各部の機能を実現することができる。またあるいは、ドライブ用モータ制御部13、消費電力推定部15、及び蓄電装置制御部16の機能を実現するソフトウェアプログラムを書き込んだ半導体集積回路として実現してもよい。
また、ドライブ用モータ制御部13、消費電力推定部15、及び蓄電装置制御部16は、例えばモータ駆動装置1のメイン制御装置(図示せず)内に設けられる。例えばモータ駆動装置1が工作機械内に設けられたドライブ用サーボモータ3の駆動を制御するものである場合、これらドライブ用モータ制御部13、消費電力推定部15、及び蓄電装置制御部16は工作機械の数値制御装置内に設けられてもよい。ドライブ用モータ制御部13、消費電力推定部15、及び蓄電装置制御部16がソフトウェアプログラム形式で構築される場合、数値制御装置内の演算処理装置にこのソフトウェアプログラムを動作させて各部の機能を実現することができる。