(57)【要約】  モータ制御システム（１００）は、機械負荷を駆動するモータ（３）を制御するための指令信号と、モータ（３）に設置された検出器（４）から出力される検出信号と、制御ゲインと、に基づいてトルク指令を生成し、トルク指令に基づいてモータ（３）を制御する制御処理部（８）と、トルク指令の制限値および制御ゲインを設定するパラメータ設定を実行するパラメータ設定部（１１）と、検出信号およびトルク指令に基づいて、モータ（３）のイナーシャを推定するイナーシャ推定部（９）と、を備え、イナーシャ推定部（９）は、パラメータ設定によりモータ（３）に自励振動が発生した状態でイナーシャを推定する。
2018020636.tif 000002
【特許請求の範囲】
【請求項１】
機械負荷を駆動するモータを制御するための指令信号と、前記モータに設置された検出器から出力される検出信号と、制御ゲインと、に基づいてトルク指令を生成し、前記トルク指令に基づいて前記モータを制御する制御処理部と、
前記トルク指令の制限値および前記制御ゲインを設定するパラメータ設定を実行するパラメータ設定部と、
前記検出信号および前記トルク指令に基づいて、前記モータのイナーシャを推定するイナーシャ推定部と、
を備え、
前記イナーシャ推定部は、前記パラメータ設定により前記モータに自励振動が発生した状態で前記イナーシャを推定する
ことを特徴とするモータ制御システム。
【請求項２】
前記イナーシャ推定部は、前記トルク指令が矩形波状になっている状態で前記イナーシャを推定する
ことを特徴とする請求項１に記載のモータ制御システム。
【請求項３】
前記イナーシャ推定部は、前記トルク指令の絶対値が前記制限値になっている状態で前記イナーシャを推定する
ことを特徴とする請求項１または２に記載のモータ制御システム。
【請求項４】
前記イナーシャ推定部は、前記検出信号から求めた前記モータの加速度および前記トルク指令に基づいて、前記イナーシャを推定する
ことを特徴とする請求項１から３のいずれか１つに記載のモータ制御システム。
【請求項５】
前記制御ゲインは、位置ゲインまたは速度ゲインである
ことを特徴とする請求項１から４のいずれか１つに記載のモータ制御システム。
【請求項６】
前記パラメータ設定部は、前記自励振動が発生するまで、前記制御ゲインを段階的に変更する
ことを特徴とする請求項１から５のいずれか１つに記載のモータ制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械といった産業用機械装置を駆動するモータ制御装置を備えたモータ制御システムに関する。
【背景技術】
【０００２】
産業用機械装置を駆動する装置は、一般に、駆動対象となる移動体に動力を伝えるために機械的な伝達機構を介して接続されるモータと、モータが目標とする運転パターンで動作するようにコントローラから入力される指令信号とモータの位置または速度を検出する検出器の検出信号とに基づいてモータを駆動させるモータ制御装置と、を備える。【０００３】
ここで、モータ制御装置においては、駆動対象となる移動体のイナーシャを正確に求めることが望まれる。イナーシャが得られることによる利点は以下の通りである。【０００４】
まず、イナーシャを求めることで、機械装置を安定かつ高精度に制御するための、モータ制御装置における位置制御または速度制御の演算を行うためのパラメータである位置ゲインまたは速度ゲインの設定目安を知ることができる。【０００５】
また、イナーシャを求めることで、コントローラからモータ制御装置に入力される指令信号の時定数が接続されるモータに対してどの程度の余裕を持っているかを判断することができるため、最適な時定数で動作させることができる。【０００６】
これに対し、従来のモータ制御装置においては、モータが運転している際の発生トルクＴと、検出器で観測される速度フィードバックから演算できる加速度ａと、から
Ｊ＝Ｔ／ａ
の関係式に基づいてイナーシャＪを推定する。ここでトルクＴは、モータに印加される電流Ｉとトルク定数Ｋｔとの積であり、モータの速度フィードバックと電流検出結果から演算することができる。【０００７】
しかしながら、イナーシャを簡易な処理でかつ高精度に推定することは容易ではないといった問題があった。【０００８】
上記の問題を解決するために、特許文献１は、モータ制御装置におけるトルク指令に対して正弦波状の信号を印加した上で、上述した速度フィードバックとモータに印加される電流とを観測し、イナーシャ推定を行うモータ制御装置を提案している。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１０−１４８１７８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら上記の特許文献１に開示された従来技術においては、機械装置を通常運転させる上では使用しない推定用の運転パターンを制御装置に記憶させておく必要があり、手間がかかるといった問題があった。【００１１】
また、特許文献１に開示された従来技術においては、周期的な信号の最大値および最小値を取得する必要があり、適正な値を取得できないと推定精度が悪化するといった問題があった。また、この点について、特許文献１は、絶対値化した信号に変換した上で平均化する処理を行うといった解決方法を併せて開示するが、処理がより複雑化するといった問題があった。【００１２】
本発明は、上記に鑑みてなされたものであって、簡易かつ高精度で安定したイナーシャ推定を実現することが可能なモータ制御システムを得ることを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決し、目的を達成するために、本発明は、機械負荷を駆動するモータを制御するための指令信号と、モータに設置された検出器から出力される検出信号と、制御ゲインと、に基づいてトルク指令を生成し、トルク指令に基づいてモータを制御する制御処理部と、トルク指令の制限値および制御ゲインを設定するパラメータ設定を実行するパラメータ設定部と、検出信号およびトルク指令に基づいて、モータのイナーシャを推定するイナーシャ推定部と、を備える。イナーシャ推定部は、パラメータ設定によりモータに自励振動が発生した状態でイナーシャを推定することを特徴とする。
【発明の効果】
【００１４】
本発明にかかるモータ制御システムは、簡易かつ高精度で安定したイナーシャ推定を実現することが可能になるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施の形態１にかかるモータ制御システムの構成を示すブロック図
【図２】実施の形態１にかかるモータ制御装置が実行するモータ制御処理をモデル化したブロック線図
【図３】実施の形態１にかかるコントローラまたはモータ制御装置の機能をコンピュータで実現する場合のハードウェア構成を示す図
【図４】実施の形態１におけるイナーシャ推定時における処理を示すフローチャート
【図５】実施の形態１における自励振動発生時のモータの速度およびトルク指令を示す波形図
【発明を実施するための形態】
【００１６】
以下に、本発明の実施の形態にかかるモータ制御システムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１７】
実施の形態１．
以下、本発明の実施の形態１にかかるモータ制御システム１００について図１から図５を用いて説明する。図１は、本発明の実施の形態１にかかるモータ制御システム１００の構成を示すブロック図である。図２は、実施の形態１にかかるモータ制御装置２が実行するモータ制御処理をモデル化したブロック線図である。図３は、実施の形態１にかかるコントローラ１またはモータ制御装置２の機能をコンピュータで実現する場合のハードウェア構成を示す図である。図４は、実施の形態１におけるイナーシャ推定時における処理を示すフローチャートである。図５は、実施の形態１における自励振動発生時のモータの速度およびトルク指令を示す波形図である。
【００１８】
図１において、モータ制御システム１００は、位置指令を生成するコントローラ１と、図示しない機械負荷を駆動するモータ３に適切な電力を与えるサーボアンプであるモータ制御装置２と、与えられた電力をモータ軸の回転動力に変換するモータ３と、モータ３に設置されている検出器４と、を備えている。位置指令はモータ３を制御するための指令信号であり、コントローラ１は、生成した位置指令をモータ制御装置２に送信する。検出器４の具体例はエンコーダであり、検出器４が出力する検出信号は、モータ制御装置２に送信される。
【００１９】
コントローラ１は、操作者の操作を受け付け、受け付けた内容、具体的には、操作者が入力したプログラムに記載されるプログラム指令に基づいて、モータ制御装置２に送信するための位置指令を生成する。検出器４は、モータ３の回転角度を検出し、検出値を検出信号として出力する。モータ制御装置２は、コントローラ１で生成された位置指令および検出器４の検出信号に基づいてモータ３に適切な電力を与える。
【００２０】
コントローラ１は、操作者の操作を受け付ける操作部５と、モータ制御装置２に送信する位置指令を生成する指令生成部６と、後述するモータ制御装置２の制御処理部８で使用するパラメータに対する設定を行うパラメータ設定部１１と、操作者に情報を通知する表示部１０と、を備えている。制御処理部８で使用するパラメータには後述するトルク指令の制限値および制御ゲインが含まれる。パラメータの値を設定することをパラメータ設定と呼ぶ。したがって、パラメータ設定部１１は、パラメータ設定を実行する。
【００２１】
モータ制御装置２は、モータ３に電力を供給するインバータ回路７と、コントローラ１から受信した位置指令に基づいてインバータ回路７に電力指令を送る制御処理部８と、モータ３のイナーシャの推定処理を行うイナーシャ推定部９と、を備えている。制御処理部８は、位置指令に基づいて位置制御演算を実行して速度指令を出力する位置制御部８１と、速度指令に基づいて速度制御演算を実行してトルク指令を出力する速度制御部８２と、トルク指令に基づいて電力指令を出力する電流制御演算を実行する電流制御部８３と、を備える。
【００２２】
通常の運転時は、操作者が操作部５に入力した運転条件に基づいて、指令生成部６がモータ３に所望の動作を行わせるための位置指令を生成して、生成された位置指令を制御処理部８に送信する。制御処理部８は、受信した位置指令と検出器４から受信したモータ３の回転角度情報とに基づいて、フィードバック制御演算を実行して電力指令を生成する。フィードバック制御演算は、位置制御部８１による位置制御演算と、速度制御部８２による速度制御演算と、電流制御部８３による電流制御演算と、を含んでいる。インバータ回路７は、制御処理部８から与えられた電力指令に基づいて、入力電圧および入力電流を周波数変換してモータ３に適切な電力を供給する。これにより、操作者が要求する運転を実現する。
【００２３】
ここで、通常の運転時に必要な制御処理部８における演算用の各制御ゲインの設定値、モータ３の最大許容電流以上に電流が印加されることを防止するためのトルク制限値、といったパラメータの設定値は、コントローラ１およびモータ制御装置２の電源投入時における初期通信シーケンスにおいてパラメータ設定部１１から制御処理部８に送信される。また、パラメータ設定部１１によるパラメータの設定状態およびモータ３の動作状態の内容は、表示部１０を介して操作者に通知される。
【００２４】
図２は、モータ制御装置２におけるモータ制御処理を比例制御によるフィードバック制御のブロック図としてモデル化したものであり、図１の制御処理部８、モータ３および検出器４による処理をモデル化している。ｓはラプラス演算子を示している。位置ゲインＫｐおよび速度ゲインＫｖは制御処理部８で使用される制御ゲインである。
【００２５】
位置ゲインブロック２１は位置制御部８１における処理に対応し、速度ゲインブロック２２は速度制御部８２における処理に対応する。位置ゲインブロック２１、速度ゲインブロック２２および微分器２３の機能は、制御処理部８の機能に含まれる。負荷２４および積分器２５はモータ３および検出器４における処理をモデル化している。積分器２５が出力するモータ３の位置は、検出器４が出力する検出信号すなわちモータ３の回転角度に相当する。
【００２６】
位置ゲインブロック２１は、位置指令と積分器２５が出力するモータ３の位置との差分に位置ゲインＫｐを乗じて速度指令を求めて、速度指令を出力する。微分器２３は、積分器２５が出力するモータ３の位置を微分してモータ３の速度を求めて、モータ３の速度を出力する。速度ゲインブロック２２は、位置ゲインブロック２１から与えられた速度指令と微分器２３から与えられたモータ３の速度との差分に速度ゲインＫｖを乗じてトルク指令を求めて、トルク指令を出力する。図２では、図１の電流制御部８３およびインバータ回路７に対応するブロックは省略されている。したがって、速度ゲインブロック２２が出力するトルク指令はトルク指令に対応するトルク電流に変換されて負荷２４に出力される。負荷２４は、イナーシャＪを用いてトルク電流をモータ３の速度に変換する。積分器２５は、負荷２４が出力した速度を積分して、モータ３の位置を求めて出力する。
【００２７】
図２に示す制御系の伝達特性は、以下の数式（１）で表わされる。
【００２８】
【数１】
2018020636.tif 000003
【００２９】
ゲイン設定の変更による振動励起について説明する。図２に示す制御系において、速度ゲインＫｖの値を減少させていくまたは位置ゲインＫｐの値を増大させていくと、位相遅れによる不安定化が生じ、フィードバックによるモータ３の自励振動が発生することになる。自励振動は、位置指令が存在しなくても制御ゲインを上記のように変化させることにより発生する。自励振動により、トルク指令も同じ周波数ｆで振動する。また、自励振動の周波数ｆは、以下の数式（２）で表わされる。
【００３０】
【数２】
2018020636.tif 000004
【００３１】
コントローラ１またはモータ制御装置２の機能をコンピュータで実現する場合、コントローラ１またはモータ制御装置２の機能は、図３に示すようにＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５１、メモリ５２、インタフェース５３および専用回路５４により実現される。コントローラ１またはモータ制御装置２の機能の一部は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ５２に格納される。ＣＰＵ５１は、メモリ５２に記憶されたプログラムを読み出して実行することにより、各部の機能を実現する。すなわち、コントローラ１またはモータ制御装置２は、各部の機能がコンピュータにより実行されるときに、コントローラ１またはモータ制御装置２の動作を実施するステップが結果的に実行されることになるプログラムを格納するためのメモリ５２を備える。また、これらのプログラムは、コントローラ１またはモータ制御装置２の手順または方法をコンピュータに実行させるものであるともいえる。ここで、メモリ５２とは、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリー、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）といった不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）が該当する。
【００３２】
コントローラ１のＣＰＵ５１は、メモリ５２に格納されたプログラムを読み出して実行することによって、指令生成部６およびパラメータ設定部１１の機能を実現する。コントローラ１のインタフェース５３は、モータ制御装置２と信号を送受信するための機能を有している。コントローラ１の専用回路５４の具体例は、操作部５および表示部１０の処理回路である。
【００３３】
モータ制御装置２のＣＰＵ５１は、メモリ５２に格納されたプログラムを読み出して実行することによって、制御処理部８およびイナーシャ推定部９の機能を実現する。モータ制御装置２のインタフェース５３は、コントローラ１と信号を送受信するための機能を有している。モータ制御装置２の専用回路５４の具体例は、インバータ回路７である。
【００３４】
このようにコントローラ１またはモータ制御装置２は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、上述の各機能を実現することができる。
【００３５】
以下に、実施の形態１におけるイナーシャ推定の具体的な処理方法について図４を用いて説明する。
【００３６】
まず、指令生成部６は、モータ制御装置２への通常の位置指令の出力を停止する（ステップＳ１０１）。次に、パラメータ設定部１１は、自励振動の発生状態におけるイナーシャの推定中にモータ３が発生するトルク指令を制限するためのトルク指令の制限値を速度制御部８２に設定する（ステップＳ１０２）。パラメータ設定部１１は、さらに制御処理部８における制御ゲインの設定値を変更する（ステップＳ１０３）。ステップＳ１０３において、具体的には、パラメータ設定部１１は、速度制御部８２が使用する速度ゲインＫｖの値を減少させるまたは位置制御部８１が使用する位置ゲインＫｐの値を増大させることにより制御ゲインの設定値を変更する。
【００３７】
ステップＳ１０３において制御ゲインが変更された後、イナーシャ推定部９は、パラメータ設定部１１によるパラメータ設定によりモータ３に自励振動が発生したか否かを判定する（ステップＳ１０４）。具体的には、イナーシャ推定部９は、制御処理部８から得たデータに基づいて自励振動が発生したか否かを判定する。自励振動が発生していない場合（ステップＳ１０４：Ｎｏ）、パラメータ設定部１１は、ステップＳ１０３の処理を繰り返し行う。従って、自励振動が発生するまで、パラメータ設定部１１は、制御ゲインの設定値を段階的に変更する。その結果、自励振動が発生するまで、制御ゲインの設定値は、段階的に減少または増大させられる。
【００３８】
自励振動が発生した場合（ステップＳ１０４：Ｙｅｓ）、イナーシャ推定部９は、イナーシャ推定処理を実行する（ステップＳ１０５）。すなわち、イナーシャ推定部９は、モータ３に自励振動が発生した状態でモータ３のイナーシャの推定を行う。数式（２）に示した周波数ｆの自励振動が発生している状態においてトルク指令に対して制限値が設定されていた場合、図５に示すような矩形波状のトルク指令の振動が発生する。トルク指令の振動が発生した場合、モータ３に入力されるトルク電流もトルク指令と同じ波形になって振動する。トルク指令の絶対値が一定の値であるトルク指令の制限値になっているとき、モータ３の速度は一定の傾きで加速または減速するので、トルク指令の振動が発生したとき、モータ３の速度は一定の傾きでの加減速を繰り返すこととなる。図５においてモータ３の速度およびトルク指令が定常的な波形になった状態でイナーシャ推定部９はイナーシャ推定を実行する。
【００３９】
具体的には、イナーシャ推定部９は、微分器２３が出力するモータ３の速度に基づいてモータ３の加速度を求める。具体的には、モータ３の速度が上述したように一定の傾きで加速または減速しているときの加速度を求める。そして、イナーシャ推定部９は、速度制御部８２が出力するトルク指令の値を、上記のようにして得られたモータ３の加速度で除算する演算によりモータ３のイナーシャＪを推定する。すなわち、イナーシャ推定部９は、制御処理部８から得たモータ３の速度およびトルク指令を用いた演算により簡易にイナーシャＪを推定することができる。このように、イナーシャ推定部９によるイナーシャ推定のための演算は、図５に示されている矩形波状のトルク指令の絶対値がトルク指令の制限値になっていてモータ３の加速度が一定の値をとっている状態で実行するのが好適である。
【００４０】
なお、ステップＳ１０５で、モータ３に機械負荷が接続された状態で、イナーシャ推定が実行された場合は、機械系を含めたモータ３のイナーシャが求められる。モータ３に機械負荷が接続されていない状態で、イナーシャ推定が実行された場合は、モータ３単体のイナーシャが求められることになる。
【００４１】
イナーシャ推定処理（ステップＳ１０５）の後、パラメータ設定部１１は、ステップＳ１０２およびＳ１０３で設定した制御処理部８で使用するパラメータの値を通常の運転が可能な元の状態に戻す（ステップＳ１０６）。以上により、イナーシャ推定の動作を完了させることができる。
【００４２】
以上、説明したように、実施の形態１におけるモータ制御システム１００においては、モータ制御装置２の制御処理部８で使用するパラメータの設定を変更するといった簡易な処理のみでイナーシャ推定を実現することができる。すなわち、モータ制御システム１００は、モータ制御システムが一般的に備える機構を利用して、制御ゲインの変更処理およびトルク指令への制限処理を行うのみで、簡易な処理でイナーシャの推定を実現することができる。これにより、モータ制御システム１００は、イナーシャ推定用の特殊な処理または信号パターンをモータ制御装置２の内部に実装することなく、イナーシャの推定を実現することができる。
【００４３】
また、実施の形態１におけるモータ制御システム１００においては、モータ３の自励振動が発生している状態において、トルク指令およびモータ３の加速度が一定の値をとっている演算処理が安定して実行可能な状況においてイナーシャ推定を実行する。すなわち、定常的な信号を用いてイナーシャを推定することが可能となるので、高精度で安定したイナーシャ推定を実現することができる。
【００４４】
また、モータ３を含む機械装置のイナーシャの変動は機械の仕様に応じてある程度の幅以内に収まるため、制御ゲインの設定値を調整することにより、数式（２）に基づいて予め振動の周波数の値の範囲を調整することができる。したがって、モータ制御システム１００は、トルク指令の制限値と周波数とを共に制御することで、イナーシャ推定中のモータ３の速度を振動周期で積分した値である振動幅についても調整することが可能である。その結果、モータ制御システム１００は、機械装置の移動体における設置場所または移動体のストローク長といった条件に合わせてイナーシャ推定のための振動を柔軟に調整することも可能である。
【００４５】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【００４６】
１  コントローラ、２  モータ制御装置、３  モータ、４  検出器、５  操作部、６  指令生成部、７  インバータ回路、８  制御処理部、９  イナーシャ推定部、１０  表示部、１１  パラメータ設定部、２１  位置ゲインブロック、２２  速度ゲインブロック、２３  微分器、２４  負荷、２５  積分器、５１  ＣＰＵ、５２  メモリ、５３  インタフェース、５４  専用回路、８１  位置制御部、８２  速度制御部、８３  電流制御部、１００  モータ制御システム。
【図１】
2018020636.tif 000005
【図２】
2018020636.tif 000006
【図３】
2018020636.tif 000007
【図４】
2018020636.tif 000008
【図５】
2018020636.tif 000009
【国際調査報告】
2018020636.tif 000010
2018020636.tif 000011