(57)【要約】【課題】  実際の運転前の制御装置への電源オン時に、短時間に、モータを駆動することなく微少動作で負荷イナーシャを同定できる方法を提供する。【解決手段】  位置及び／または速度制御部１に所定周波数の正弦波の位置指令を与える位置指令発生部４と、トルク指令の応答周波数を算出するトルク指令応答算出部６と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部５とを備えた装置の負荷イナーシャ同定方法において、位置指令周波数とトルク指令応答周波数とを比較し、前記位置指令周波数が前記トルク指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記位置指令周波数が前記トルク指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とする。【選択図】図１
2009038942.tif 000002
【特許請求の範囲】
【請求項１】
位置制御部に所定周波数の正弦波の位置指令を与える位置指令発生部と、トルク指令の応答周波数を算出するトルク指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えた装置の負荷イナーシャ同定方法において、
位置指令周波数とトルク指令応答周波数とを比較し、前記位置指令周波数が前記トルク指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記位置指令周波数が前記トルク指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とすることを特徴とする負荷イナーシャ同定方法。
【請求項２】
前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うことを特徴とする請求項１に記載の負荷イナーシャ同定方法。
負荷イナーシャ＝仮設定イナーシャ×（位置指令周波数／トルク指令応答周波数）−モータイナーシャ
【請求項３】
前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記位置指令を印加して、前記トルク指令応答周波数を求め、前記トルク指令応答周波数が前記位置指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すことを特徴とする請求項１に記載の負荷イナーシャ同定方法。
【請求項４】
速度制御部に所定周波数の正弦波の速度指令を与える速度指令発生部と、トルク指令の応答周波数を算出するトルク指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えた装置の負荷イナーシャ同定方法において、
速度指令周波数とトルク指令応答周波数とを比較し、前記速度指令周波数が前記トルク指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記速度指令周波数が前記トルク指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とすることを特徴とする負荷イナーシャ同定方法。
【請求項５】
前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うことを特徴とする請求項４に記載の負荷イナーシャ同定方法。
負荷イナーシャ＝仮設定イナーシャ×（速度指令周波数／トルク指令応答周波数）−モータイナーシャ
【請求項６】
前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記速度指令を印加して、前記トルク指令応答周波数を求め、前記トルク指令応答周波数が前記速度指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すことを特徴とする請求項４に記載の負荷イナーシャ同定方法。
【請求項７】
位置制御部に所定周波数の正弦波の位置指令を与える位置指令発生部と、速度指令の応答周波数を算出する速度指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えた装置の負荷イナーシャ同定方法において、
位置指令周波数と速度指令応答周波数とを比較し、前記位置指令周波数が前記速度指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記位置指令周波数が前記速度指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とすることを特徴とする負荷イナーシャ同定方法。
【請求項８】
前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うことを特徴とする請求項７に記載の負荷イナーシャ同定方法。
負荷イナーシャ＝仮設定イナーシャ×（位置指令周波数／速度指令応答周波数）−モータイナーシャ
【請求項９】
前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記位置指令を印加して、前記速度指令応答周波数を求め、前記速度指令応答周波数が前記位置指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すことを特徴とする請求項７に記載の負荷イナーシャ同定方法。
【請求項１０】
前記仮設定イナーシャの初期値は、モータイナーシャ値からモータイナーシャ値の１０倍の範囲で任意に設定可能であることを特徴とする請求項１乃至９のいずれかに記載の負荷イナーシャ同定方法。
【請求項１１】
位置制御部に所定周波数の正弦波の位置指令を与える位置指令発生部と、トルク指令の応答周波数を算出するトルク指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えたサーボモータ制御装置において、
位置指令周波数とトルク指令応答周波数とを比較し、前記位置指令周波数が前記トルク指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記位置指令周波数が前記トルク指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とすることを特徴とするサーボモータ制御装置。
【請求項１２】
前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うことを特徴とする請求項１１に記載のサーボモータ制御装置。
負荷イナーシャ＝仮設定イナーシャ×（位置指令周波数／トルク指令応答周波数）−モータイナーシャ
【請求項１３】
前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記位置指令を印加して、前記トルク指令応答周波数を求め、前記トルク指令応答周波数が前記位置指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すことを特徴とする請求項１１に記載のサーボモータ制御装置。
【請求項１４】
速度制御部に所定周波数の正弦波の速度指令を与える速度指令発生部と、トルク指令の応答周波数を算出するトルク指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えたサーボモータ制御装置において、
速度指令周波数とトルク指令応答周波数とを比較し、前記速度指令周波数が前記トルク指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記速度指令周波数が前記トルク指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とすることを特徴とするサーボモータ制御装置。
【請求項１５】
前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うことを特徴とする請求項１４に記載のサーボモータ制御装置。
負荷イナーシャ＝仮設定イナーシャ×（速度指令周波数／トルク指令応答周波数）−モータイナーシャ
【請求項１６】
前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記速度指令を印加して、前記トルク指令応答周波数を求め、前記トルク指令応答周波数が前記速度指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すことを特徴とする請求項１４に記載のサーボモータ制御装置。
【請求項１７】
位置制御部に所定周波数の正弦波の位置指令を与える位置指令発生部と、速度指令の応答周波数を算出する速度指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えたサーボモータ制御装置において、
位置指令周波数と速度指令応答周波数とを比較し、前記位置指令周波数が前記速度指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記位置指令周波数が前記速度指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とすることを特徴とするサーボモータ制御装置。
【請求項１８】
前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うことを特徴とする請求項１７に記載のサーボモータ制御装置。
負荷イナーシャ＝仮設定イナーシャ×（位置指令周波数／速度指令応答周波数）−モータイナーシャ
【請求項１９】
前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記位置指令を印加して、前記速度指令応答周波数を求め、前記速度指令応答周波数が前記位置指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すことを特徴とする請求項１７に記載のサーボモータ制御装置。
【請求項２０】
前記仮設定イナーシャの初期値は、モータイナーシャ値からモータイナーシャ値の１０倍の範囲で任意に設定可能であることを特徴とする請求項１１乃至１９のいずれかに記載のサーボモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械に取り付けられたサーボモータを駆動するサーボモータ制御装置において、電源を投入して実運転に入る前に、負荷イナーシャの同定を行う方法及びその制御装置に関する。
【背景技術】
【０００２】
イナーシャを同定する従来例１は、モデル速度とモデルトルクと実速度と発生トルクよりイナーシャを算出している（例えば、特許文献１参照）。また、従来例２では、往復の速度指令を与えて速度オブザーバの速度推定値と実際の速度の位相差が０になる係数より、負荷イナーシャを推定している（例えば、特許文献２参照）。
従来例１を示す図６において、１０１は制御対象、１０２はモデル演算部、１０３は比例制御器、１０４は積分制御器、  １０５はイナーシャ算出器であり、モデル速度ｖａとモデルトルクｑａと実速度ｖｍとトルク指令ｑｒからイナーシャ算出器１０５でイナーシャを算出している。
従来例２を示す図７において、２０１は速度オブザーバ、２０２はイナーシャ推定部、２５０は位置偏差量の演算部、２５１は位置制御部、２６０は速度検出器であり、位置制御部２５１から往復の速度指令が与えられて速度オブザーバ２０１の速度推定値と速度検出器２６０からの実際の速度から、イナーシャ推定部２０２で負荷イナーシャを推定している。
【特許文献１】特開２００３−１２８３５２号公報（第７頁、図１）
【特許文献２】特開２００２−７８３６９号公報（第６頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来例１の方法ではモデルと制御対象が一致しないと正確なイナーシャを算出できず、また一致させるための運転動作で時間がかかるという問題があった。また、従来例２では速度指令を与え、速度推定値と実際の速度の位相差が０になるように、負荷イナーシャを推定しながら何回も指令を与える必要があるので時間がかかり、且つ、負荷イナーシャの推定動作には負荷や摩擦の影響によって、あるいは応答性を上げようとした場合は、比較的大きな指令を与える必要があるため、機械の移動量が問題となることがある。また、負荷イナーシャが同定されていない状態では、場合によって機械に振動が発生し、機械に悪影響を及ぼすという問題があった。
本発明はこのような問題点に鑑みてなされたものであり、実際の運転前の制御装置への電源オン時に、短時間に、モータを駆動することなく微少動作で負荷イナーシャを同定できる方法を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記問題を解決するため、本発明は、次のような方法および構成としたものである。
請求項１に記載の発明は、位置制御部に所定周波数の正弦波の位置指令を与える位置指令発生部と、トルク指令の応答周波数を算出するトルク指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えた装置の負荷イナーシャ同定方法において、
位置指令周波数とトルク指令応答周波数とを比較し、前記位置指令周波数が前記トルク指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記位置指令周波数が前記トルク指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とするものである。
請求項２に記載の発明は、請求項１記載の負荷イナーシャ同定方法において、前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うものである。
負荷イナーシャ＝仮設定イナーシャ×（位置指令周波数／トルク指令応答周波数）−モータイナーシャ
請求項３に記載の発明によれば、請求項１記載の負荷イナーシャ同定方法において、前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記位置指令を印加して、前記トルク指令応答周波数を求め、前記トルク指令応答周波数が前記位置指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すものである。
【０００５】
請求項４に記載の発明は、速度制御部に所定周波数の正弦波の速度指令を与える速度指令発生部と、トルク指令の応答周波数を算出するトルク指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えた装置の負荷イナーシャ同定方法において、
速度指令周波数とトルク指令応答周波数とを比較し、前記速度指令周波数が前記トルク指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記速度指令周波数が前記トルク指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とするものである。
請求項５に記載の発明によれば、請求項４記載の負荷イナーシャ同定方法において、前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うものである。
負荷イナーシャ＝仮設定イナーシャ×（速度指令周波数／トルク指令応答周波数）−モータイナーシャ
請求項６に記載の発明によれば、請求項４に記載の負荷イナーシャ同定方法において、前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記速度指令を印加して、前記トルク指令応答周波数を求め、前記トルク指令応答周波数が前記速度指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すものである。
【０００６】
請求項７に記載の発明は、位置制御部に所定周波数の正弦波の位置指令を与える位置指令発生部と、速度指令の応答周波数を算出する速度指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えた装置の負荷イナーシャ同定方法において、
位置指令周波数と速度指令応答周波数とを比較し、前記位置指令周波数が前記速度指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記位置指令周波数が前記速度指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とするものである。
請求項８に記載の発明によれば、請求項７記載の負荷イナーシャ同定方法において、前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うものである。
負荷イナーシャ＝仮設定イナーシャ×（位置指令周波数／速度指令応答周波数）−モータイナーシャ
請求項９に記載の発明によれば、請求項７記載の負荷イナーシャ同定方法において、前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記位置指令を印加して、前記速度指令応答周波数を求め、前記速度指令応答周波数が前記位置指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すものである。
請求項１０に記載の発明によれば、請求項１乃至９のいずれかに記載の負荷イナーシャ同定方法において、前記仮設定イナーシャの初期値は、モータイナーシャ値からモータイナーシャ値の１０倍の範囲で任意に設定可能としたものである。
【０００７】
請求項１１に記載の発明は、位置制御部に所定周波数の正弦波の位置指令を与える位置指令発生部と、トルク指令の応答周波数を算出するトルク指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えたサーボモータ制御装置において、
位置指令周波数とトルク指令応答周波数とを比較し、前記位置指令周波数が前記トルク指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記位置指令周波数が前記トルク指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とするものである。
請求項１２に記載の発明によれば、請求項１１記載のサーボモータ制御装置において、前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うものである。
負荷イナーシャ＝仮設定イナーシャ×（位置指令周波数／トルク指令応答周波数）−モータイナーシャ
請求項１３に記載の発明によれば、請求項１１記載のサーボモータ制御装置において、前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記位置指令を印加して、前記トルク指令応答周波数を求め、前記トルク指令応答周波数が前記位置指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すものである。
【０００８】
請求項１４に記載の発明は、速度制御部に所定周波数の正弦波の速度指令を与える速度指令発生部と、トルク指令の応答周波数を算出するトルク指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えたサーボモータ制御装置において、
速度指令周波数とトルク指令応答周波数とを比較し、前記速度指令周波数が前記トルク指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記速度指令周波数が前記トルク指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とするものである。
請求項１５に記載の発明によれば、請求項１４記載のサーボモータ制御装置において、前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うものである。
負荷イナーシャ＝仮設定イナーシャ×（速度指令周波数／トルク指令応答周波数）−モータイナーシャ
請求項１６に記載の発明によれば、請求項１４記載のサーボモータ制御装置において、前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記速度指令を印加して、前記トルク指令応答周波数を求め、前記トルク指令応答周波数が前記速度指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すものである。
【０００９】
請求項１７に記載の発明は、位置制御部に所定周波数の正弦波の位置指令を与える位置指令発生部と、速度指令の応答周波数を算出する速度指令応答算出部と、負荷イナーシャの同定処理を行う負荷イナーシャ同定部とを備えたサーボモータ制御装置において、
位置指令周波数と速度指令応答周波数とを比較し、前記位置指令周波数が前記速度指令応答周波数よりも高い場合は、初期値として与えた仮設定イナーシャを補正して負荷イナーシャを算出し、前記位置指令周波数が前記速度指令応答周波数よりも低い場合は、前記仮設定イナーシャからモータイナーシャを差し引いた値或いはそれ以下を負荷イナーシャ値とするものである。
請求項１８に記載の発明によれば、請求項１７記載のサーボモータ制御装置において、前記仮設定イナーシャを補正して前記負荷イナーシャを算出する手段は、下記の計算式に基づいて行うものである。
負荷イナーシャ＝仮設定イナーシャ×（位置指令周波数／速度指令応答周波数）−モータイナーシャ
請求項１９に記載の発明によれば、請求項１７記載のサーボモータ制御装置において、前記負荷イナーシャの算出は、前記仮設定イナーシャを補正して前記負荷イナーシャを算出した後、該算出した負荷イナーシャとモータイナーシャの和を仮設定イナーシャとし、再度、前記位置指令を印加して、前記速度指令応答周波数を求め、前記速度指令応答周波数が前記位置指令周波数と同等或いは高くなるまで前記負荷イナーシャの計算を繰り返すものである。
請求項２０に記載の発明によれば、請求項１１乃至１９のいずれかに記載のサーボモータ制御装置において、前記仮設定イナーシャの初期値は、モータイナーシャ値からモータイナーシャ値の１０倍の範囲で任意に設定可能としたものである。
【発明の効果】
【００１０】
請求項１乃至２０に記載の発明によると、実際の運転前の制御装置への電源オン時に、短時間に、負荷イナーシャを同定できるので、負荷イナーシャの不定による振動や遅れ等を未然に防止できる。また微少な移動量で負荷イナーシャを同定することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態についてサーボモータ制御装置を例として、図１乃至図５を参照して説明する。実際のサーボモータ制御装置には様々な機能や手段が内蔵されているが、以下に示す図には本発明に関係する機能や手段のみを記載して説明する。
【実施例１】
【００１２】
図１は、本発明における実施例１のサーボモータ制御装置の構成図である。同図において、１は位置及び／または速度制御部、２は電流制御部、３はパワー変換部、４は位置指令発生部、５は負荷イナーシャ同定部、６はトルク指令応答算出部、７はエンコーダ入出力部、８はモータ、９はエンコーダである。
本発明が従来技術と異なる部分は、位置指令発生部４とトルク指令応答算出部６を付加している点である。
【００１３】
次に、図１に示すサーボモータ制御装置１０の動作について説明する。今、位置指令を入力すると、位置及び／または速度制御部１はエンコーダ９からの位置情報をエンコーダ入出力部７で受信し、位置フィードバック信号として位置指令から差し引いて位置制御ゲインをかけて位置制御する。速度制御部は、不図示の位置制御部の出力である速度指令から、エンコーダ入出力部７からの位置フィードバック信号を微分して得られる速度フィードバック信号を差し引いて速度制御ゲインをかけて速度制御する。電流制御部２は、速度制御部の出力をトルク指令として、不図示のモータ電流検出器からの電流フィードバック信号を差し引いて電流制御ゲインをかけて電流制御する。電流制御部２の出力信号をパワー変換部３でパワー変換してモータ８を駆動する。
なお、位置及び／または速度制御部１の構成は、位置制御部＋速度制御部、または速度制御部のみを想定したものであり、速度制御部のみでの構成の場合は、入力指令として速度指令が与えられ速度制御用のサーボモータ制御装置１０として動作する。
上述の図１に示すサーボモータ制御装置１０の動作説明は位置及び／または速度制御部１の構成が、位置制御部＋速度制御部、の場合について述べたものである。
次に、負荷イナーシャ同定時の動作について説明する。位置指令発生部４は位置及び／または速度制御部１に、ある所定の周波数の正弦波を加える。トルク指令応答算出部６はトルク指令の応答周波数解析を行う。すなわち、トルク指令の周波数毎の振幅を求め、その振幅が一番大きな周波数を算出する。負荷イナーシャ同定部５は位置指令発生部４の位置指令周波数とトルク指令応答算出部６の応答周波数より負荷イナーシャを同定する。
【００１４】
次に、負荷イナーシャ同定の動作を図２のフローチャートを用いて説明する。先ず、ステップ１では位置または速度制御に使用するサーボモータのイナーシャを設定すると共に負荷イナーシャを仮設定する。ステップ２では、モータイナーシャと仮設定した負荷イナーシャを加算して仮設定イナーシャとする。
初期値としての負荷イナーシャの仮設定は、例えば、モータイナーシャと同等の値に見積る。または、機械の用途によっては、機械側のイナーシャがモータイナーシャに比較して、無視できる場合もあるので、負荷イナーシャ値をゼロと見積る。従って、この場合であれば、仮設定イナーシャはモータイナーシャ値からモータイナーシャ値の２倍程度の値となる。しかし、機械の用途によっては負荷イナーシャがモータイナーシャの２０倍程度になる場合もあるので、仮設定イナーシャとしては、モータイナーシャ値からモータイナーシャ値の１０倍程度まで任意に設定できるようにしてもよい。ただし、仮設定イナーシャはことさら厳密に設定する必要はないので、通常の用途であれば、モータイナーシャの２倍程度を初期値とすればよい。
なお、ここで言うモータイナーシャとは、回転形モータの場合は、回転子のイナーシャを指し、リニアモータの場合は可動子のイナーシャを指す。ここでは、これらのイナーシャを総称してモータイナーシャと呼ぶ。
【００１５】
次にステップ３では位置指令として、ある所定の周波数の正弦波を加える。この場合、位置制御ゲインは位置指令周波数より高く設定し、速度制御ゲインは位置指令周波数相当とする。位置指令として与える周波数は、例えば速度制御系が応答できるような周波数とする。ステップ４ではトルク指令の応答周波数解析をする。ステップ５では位置指令周波数がトルク指令の応答周波数より高いか判断する。位置指令周波数がトルク指令の応答周波数より高い場合はステップ６に進む。ステップ６ではトルク指令の応答周波数に応じて負荷イナーシャを下記の（１）式に従って計算する。
負荷イナーシャ＝仮設定イナーシャ×（位置指令周波数／トルク指令応答周波数）−モータイナーシャ
・・・・・・・（１）
ステップ５でトルク指令応答周波数が位置指令周波数以上の場合、負荷イナーシャは仮設定イナーシャ以下なので、ステップ７に進み、位置指令周波数がトルク指令の応答周波数と同等か判断する。位置指令周波数がトルク指令応答周波数と同等である場合は、仮設定イナーシャからモータイナーシャを差し引いた値を負荷イナーシャ値として同定動作を終了する。  なお、ここで言う“同等”の判断は、それぞれの周波数差が±１０％または±２０％等の値に設定して判定する。その誤差の設定は同定動作とのトレードオフで決定する。位置指令周波数がトルク指令応答周波数より低い場合は、仮設定イナーシャからモータイナーシャを差し引いた値より小さな値、例えば仮設定イナーシャからモータイナーシャを差し引いた値の１／２倍等を負荷イナーシャ値として同定動作を終了する。
ステップ６において負荷イナーシャを計算した後、ステップ８、ステップ９で、負荷イナーシャが予め想定した最大負荷イナーシャ値以上に達していれば、負荷イナーシャ＝最大負荷イナーシャ、として同定動作を終了する。最大イナーシャ値に達していなければ、再度、ステップ２に戻り、仮設定イナーシャに前回求めた負荷イナーシャとモータイナーシャとの和を代入して、ステップ３からステップ６で負荷イナーシャの計算を繰り返し、位置指令周波数がトルク指令の応答周波数以下になったか、あるいは負荷イナーシャが予め設定した最大負荷イナーシャ値以上に達した時、ステップ７またはステップ９に進み同定動作を終了する。
【００１６】
負荷イナーシャ同定原理について、図５を参照して説明する。図５は位置制御系の制御ブロック図である。同図において５１は位置制御部、５２は速度制御部、５３はモータ部、５４は積分である。位置指令周波数とトルク指令応答周波数の関係は、位置制御ゲインが位置指令周波数よりも充分大きいものとすると、応答は速度制御部５２の応答特性で決まることになる。そこで速度制御部５２を図５に示すようにＰＩ（比例積分）制御とした場合、速度制御部５２とモータ部５３を含めた速度制御ループの応答特性は２次遅れの伝達関数になり、次のように表すことができる。
【００１７】
【数１】
2009038942.tif 000003
（２）
但し、
【００１８】
【数２】
2009038942.tif 000004
（３）
【００１９】
ζ＝（１／２）ωｎＴｉ                          （４）
Ｊ＝ＪＭ＋ＪＬ                                  （５）
【００２０】
ここで、ω：速度フィードバック信号（実際速度）、ωｒｅｆ：速度指令、ωｎ：固有周波数、ζ：減衰係数、Ｋｖ：速度制御部５２の比例ゲイン、Ｔｉ：速度制御部５２の積分時定数、Ｊ：合成イナーシャ、ＪＭ：モータイナーシャ、ＪＬ：負荷イナーシャ、ｓ：ラプラス演算子
【００２１】
今、（３）式を変形してＫｖを求めると、（６）式となる。
【００２２】
Ｋｖ＝（ωｎ２／Ｔｉ）Ｊ                        （６）
【００２３】
（６）式において、（ωｎ２／Ｔｉ）を固定した場合、Ｋｖは合成イナーシャＪに比例することになる。従って、仮設定イナーシャが実際のイナーシャよりも低く設定された場合、Ｋｖ値が小さくなり、実際の速度制御ループの応答特性は、設定したωｎより低下する。
その応答特性はトルク指令に反映されるので、トルク指令を解析すれば分かる。
例えば、速度制御ループの応答周波数を１００Ｈｚに設定したとすると、１００Ｈｚの速度指令に対して、速度制御ループの応答特性は１００Ｈｚまでは速度振幅がほぼフラットになり、１００Ｈｚ以上では振幅が急速に低下する。
イナーシャの設定値が実際のイナーシャよりも低く設定された場合、Ｋｖ値はその分低下し、例えば、Ｊの設定値が５０％相当であった場合、Ｋｖ値は５０％の設定となり、速度制御ループの応答特性は５０Ｈｚとなる。
【００２４】
今、位置指令として一定振幅、一定周波数の正弦波を印加した場合、その位置指令と位置フィードバック信号との偏差量である速度指令は、多くの周波数成分を含んでいる。さらに、この速度指令に対する速度フィードバック信号との偏差量であるトルク指令には、多くの周波数成分を含んでいるので、ここでは、これらの周波数成分の振幅を求め、振幅値が最大となる周波数をトルク指令応答周波数として定義する。
そして、位置指令周波数とトルク指令応答周波数との比より、次式によって概略の合成イナーシャ値が算出できる。
【００２５】
トルク指令応答周波数＝位置指令周波数×（仮設定イナーシャ／実際の合成イナーシャ）
・・・・・・・（７）
（７）式より、実際の合成イナーシャは（８）式で与えられる。
実際の合成イナーシャ＝仮設定イナーシャ×（位置指令周波数／トルク指令応答周波数）
・・・・・・・（８）
従って、負荷イナーシャＪＬは（５）式と（８）式より、
ＪＬ＝Ｊ−ＪＭ
＝仮設定イナーシャ×（位置指令周波数／トルク指令応答周波数）−ＪＭ
・・・・・・・（９）
として求めることができる。
【００２６】
（９）式に基づいて負荷イナーシャ値を計算し、求めた負荷イナーシャとモータイナーシャとの和を仮設定イナーシャ値として、再度、位置指令周波数とトルク指令応答周波数との比較を繰り返すことにより、負荷イナーシャ値を同定することができる。
なお、上述の実施例１の変形例として、位置及び／または速度制御部１が速度制御部のみで構成されている場合は、入力指令として速度指令が与えられ速度制御用のサーボモータ制御装置１０として動作する。この場合の負荷イナーシャ同定は、上述した位置指令発生部４を速度指令発生部に置き換えて、実施例１で示した手順と同様の手順で負荷イナーシャの同定を行うことができる。
【実施例２】
【００２７】
図３は、本発明における実施例２のサーボモータ制御装置３０の構成図を示すもので、その動作は実施例１と同様である。
負荷イナーシャ同定時、速度指令応答算出部３６は不図示の位置制御部の出力である速度指令の応答周波数解析を行う。負荷イナーシャ同定部３５は、位置指令発生部４の位置指令周波数と速度指令応答算出部３６の速度指令応答周波数より負荷イナーシャを同定する。実施例１と異なるのはトルク指令応答算出部６の代りに、速度指令応答算出部３６がある点と負荷イナーシャ同定部３５の同定動作が異なるのみである。
【００２８】
次に負荷イナーシャ同定の動作を図４のフローチャートを用いて説明する。先ず、ステップ４１では制御に使用するサーボモータのイナーシャを設定すると共に負荷イナーシャを仮設定する。ステップ４２でモータイナーシャと仮設定した負荷イナーシャを加算して、仮設定イナーシャとする。  次にステップ４３では位置及び／または速度制御部１に、ある所定の周波数の正弦波を加える。この場合、位置制御ゲインは位置指令周波数より高く設定し、速度制御ゲインは位置指令周波数相当とする。位置指令として与える周波数は、例えば速度制御系が応答できるような周波数とする。ステップ４４では速度指令の応答周波数解析をする。速度指令の応答周波数解析はトルク指令の応答周波数解析と同様に速度指令の応答周波数毎の振幅を求め、その振幅が一番大きな周波数を算出する。ステップ４５では位置指令周波数が速度指令応答周波数より高いか判断する。位置指令周波数が高い場合はステップ４６に進む。ステップ４６では実施例１と同様に速度指令応答周波数に応じて、次式により負荷イナーシャを求める。
負荷イナーシャ＝仮設定イナーシャ×（位置指令周波数／速度指令応答周波数）−モータイナーシャ
・・・・・（１０）
ステップ４５で速度指令応答周波数が位置指令周波数以上の場合、負荷イナーシャは仮負荷イナーシャ以下なので、ステップ４７に進み、位置指令周波数が速度指令応答周波数と同等か判断する。位置指令周波数が速度指令応答周波数と同等である場合は、ステップ５０で負荷イナーシャ＝仮設定イナーシャ−モータイナーシャ、として同定動作を終了する。
なお、ここで言う“同等”の判断は、それぞれの周波数差が±１０％または±２０％等の値に設定して判定する。その誤差の設定は同定動作とのトレードオフで決定する。位置指令周波数が速度指令応答周波数より低い場合は、ステップ５１で仮設定イナーシャからモータイナーシャを差し引いた値より小さな値、例えば、仮設定イナーシャからモータイナーシャを差し引いた値の１／２倍等を負荷イナーシャ値として同定動作を終了する。
ステップ４８、４９の動作は実施例１の図２のステップ８、９の動作と同様である。また、実施例２では位置指令周波数と速度指令応答周波数との比較を繰り返すことにより、負荷イナーシャ値の同定動作を行うが、基本的な考え方は実施例１と同じであり、その詳細な説明は省略する。
【図面の簡単な説明】
【００２９】
【図１】本発明の実施例１を示すサーボモータ制御装置の構成図
【図２】本発明の実施例１の動作を示すフローチャート
【図３】本発明の実施例２を示すサーボモータ制御装置の構成図
【図４】本発明の実施例２の動作を示すフローチャート
【図５】位置制御系の制御ブロック図
【図６】従来例１の制御装置の構成図
【図７】従来例２の制御装置の構成図
【符号の説明】
【００３０】
１  位置及び／または速度制御部
２  電流制御部
３  パワー変換部
４  位置指令発生部
５、３５  負荷イナーシャ同定部
６  トルク指令応答算出部
７  エンコーダ入出力部
８  モータ
９  エンコーダ
３６  速度指令応答算出部
５１  位置制御部
５２  速度制御部
５３  モータ部
５４  積分
【図１】
2009038942.tif 000005
【図２】
2009038942.tif 000006
【図３】
2009038942.tif 000007
【図４】
2009038942.tif 000008
【図５】
2009038942.tif 000009
【図６】
2009038942.tif 000010
【図７】
2009038942.tif 000011