(57)【要約】      （修正有）【課題】モータが駆動する機構の影響により発生する振動を抑制することができるディジタルサーボ制御装置を提供する。【解決手段】速度指令Ｖｒｅｆと算出モータ速度Ｖｆｂとを入力しモータ速度Ｖを速度指令Ｖｒｅｆに追従させるようにトルク指令Ｔｒｅｆを算出して出力する速度制御部２と、トルク指令Ｔｒｅｆに基づく電流指令Ｉｒｅｆを算出して電流指令Ｉｒｅｆに応じた電力をモータ４に供給する電流制御部３とを備えたディジタルサーボ制御装置１において、モータ速度Ｖとトルク指令Ｔｒｅｆとを入力し、モータ４に結合された機械部６の複数の振動周波数を除去するように算出モータ速度Ｖｆｂを算出して出力する全振動除去部７を備える。【選択図】図１
2010161853.tif 000002
【特許請求の範囲】
【請求項１】
モータの位置または速度を検出しモータ速度を算出して出力する検出器を有するモータを駆動するディジタルサーボ制御装置であって、速度指令と前記モータ速度とを入力し前記モータ速度を前記速度指令に追従させるようにトルク指令を算出して出力する速度制御部と、前記トルク指令に基づく電流指令を算出して前記電流指令に応じた電力を前記モータに供給する電流制御部と、を備えたディジタルサーボ制御装置において、
前記モータ速度と前記トルク指令とを入力し、前記モータに結合された機械部の複数の振動周波数を除去するように前記モータ速度を算出して出力する全振動除去部を備えることを特徴とするディジタルサーボ制御装置。
【請求項２】
前記全振動除去部が、前記トルク指令と前記モータ速度とに基づいて、前記モータ速度に重畳した前記機械部の複数の振動周波数のうち１つの振動成分を除去した第１モータ速度を算出し、
前記トルク指令と前記第１モータ速度とに基づいて、前記複数の振動周波数のうち他の１つの振動成分を除去した第２モータ速度を算出するように、
順次１つずつ、振動成分を除去したモータ速度の演算を繰り返し、前記モータ速度に重畳した前記複数の振動周波数を全て除去した前記モータ速度を出力する
ことを特徴とする請求項１記載のディジタルサーボ制御装置。
【請求項３】
前記全振動除去部が、前記トルク指令と前記モータ速度とに基づいてモータ推定速度を算出し、
前記モータ速度から前記モータ推定速度を減じた速度振動成分を入力して位相調整速度振動成分を算出し、
前記モータ速度から前記位相調整速度振動成分を減じた前記モータ速度を出力することを特徴とする請求項１記載のディジタルサーボ制御装置。
【請求項４】
前記全振動除去部が、速度オブザーバを用いて前記モータ推定速度を算出し、
前記速度振動成分と前記モータ速度との位相を同位相となるように位相調整することを特徴とする請求項３記載のディジタルサーボ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＮＣ工作機械やロボット等のモータ応用システムに用いるモータの速度制御を行うディジタルサーボ制御装置に関し、特にモータが駆動する機構の影響により発生する振動を抑制するディジタルサーボ制御装置およびその制御方法に関する。
【背景技術】
【０００２】
従来のディジタルサーボ制御装置は、マイクロコンピュータの高速化に伴い、制御処理周期を短くすることで、制御帯域を広くするようにしている。しかしながら、制御処理周期を短くすると速度検出の量子化誤差の影響が大きくなるという技術課題があった。エンコーダの分解能を高くすることでこの技術課題を解決することができるが、エンコーダの分解能を高くするとエンコーダが高価格となり実用性に欠けるという問題がある。この技術課題を解決するために、従来のディジタルサーボ制御装置では速度制御で用いるモータの回転速度情報を制御処理周期の短い速度オブザーバと、制御処理周期の長い速度オブザーバと、を用いて速度検出の量子化誤差の低減を図り、かつ、速度制御特性を改善している（例えば、特許文献１参照）。
【０００３】
図８は、従来のディジタルサーボ制御装置の構成を示すブロック図である。図において、１０１はモータ、１０２は駆動回路、１０３は速度補償器、１０４はエンコーダ、１０５は速度推定手段、１０５ａは短周期速度オブザーバ、１０５ｂは長周期速度オブザーバ、１０６は実速度演算手段、１０７は減算器、１０８は加算器、１１１はパイパスフィルタ、１１２はローパスフィルタ、ωｃは速度指令、Ｉｃはトルク電流指令、ωｆは速度計算値である。短周期速度オブザーバ１０５ａは、速度補償器３からのトルク電流指令Ｉｃと前記エンコーダ１０４の回転速度検出値とを基に速度補償器３と同程度の周期による処理により速度推定値ωｈａを算出する。長周期速度オブザーバ１０５ｂは、速度補償器３からのトルク電流指令Ｉｃと前記エンコーダ１０４の回転速度検出値とを基に速度補償器３の数十倍長い周期による処理により速度推定値ωｈｂを算出する。
【０００４】
速度推定値ωｈｂは、ローパスフィルタ１１２にて長周期速度オブザーバ１０５ｂで推定可能な周波数帯域までのローパスフィルタ処理を行う。速度推定値ωｈａは、ハイパスフィルタ１１１により、ローパスフィルタ１１２の処理の周波数帯域を下限としてフィルタ処理を行う。加算器１０８はハイパスフィルタ１１１の出力とローパスフィルタ１１２の出力とを加算して速度計算値ωｆを算出する。
【０００５】
このように、従来のディジタルサーボ制御装置は、短周期速度オブザーバ１０５ａと、長周期オブザーバ１０５ｂと、を用いることで、短周期速度オブザーバからモータ回転速度変動のうち高周波成分まで考慮した速度推定値を出力して、長周期速度オブザーバから速度検出精度の劣化を補償した速度推定値を出力するのである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０８−３１７６７９号公報（第４−５頁、図１）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来のディジタルサーボ制御装置は、複数の速度オブザーバを用いて、速度検出精度の劣化を補償する構成となっているが、モータが駆動する機構の振動を抑制することができないという問題があった。
【０００８】
本発明はこのような問題に鑑みてなされたものであり、モータが駆動する機構の影響により発生する振動を抑制することができるディジタルサーボ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記問題を解決するため、本発明は、次のように構成したのである。
請求項１に記載の発明は、モータの位置または速度を検出しモータ速度を算出して出力する検出器を有するモータを駆動するディジタルサーボ制御装置であって、速度指令と前記モータ速度とを入力し前記モータ速度を前記速度指令に追従させるようにトルク指令を算出して出力する速度制御部と、前記トルク指令に基づく電流指令を算出して前記電流指令に応じた電力を前記モータに供給する電流制御部と、を備えたディジタルサーボ制御装置において、前記モータ速度と前記トルク指令とを入力し、前記モータに結合された機械部の複数の振動周波数を除去するように前記モータ速度を算出して出力する全振動除去部を備えるものである。
また、請求項２に記載の発明は、請求項１記載の発明における前記全振動除去部が、前記トルク指令と前記モータ速度とに基づいて、前記モータ速度に重畳した前記機械部の複数の振動周波数のうち１つの振動成分を除去した第１モータ速度を算出し、前記トルク指令と前記第１モータ速度とに基づいて、前記複数の振動周波数のうち他の１つの振動成分を除去した第２モータ速度を算出するように、順次１つずつ、振動成分を除去したモータ速度の演算を繰り返し、前記モータ速度に重畳した前記複数の振動周波数を全て除去した前記モータ速度を出力するものである。
また、請求項３に記載の発明は、請求項１記載の発明における前記全振動除去部が、前記トルク指令と前記モータ速度とに基づいてモータ推定速度を算出し、前記モータ速度から前記モータ推定速度を減じた速度振動成分を入力して位相調整速度振動成分を算出し、前記モータ速度から前記位相調整速度振動成分を減じた前記モータ速度を出力するものである。
また、請求項４に記載の発明は、請求項３記載の発明における前記全振動除去部が、速度オブザーバを用いて前記モータ推定速度を算出し、前記速度振動成分と前記モータ速度との位相を同位相となるように位相調整するものである。
【発明の効果】
【００１０】
請求項１乃至４記載の発明によると、モータやモータに結合された機械部の共振等により発生してモータ速度に重畳される複数の振動を除去するように、順次１つずつ、モータフィードバック速度を算出するので、モータ速度に重畳される複数の振動成分を全て除去することができモータおよびモータにより駆動される機械部を滑らかに制御することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明のディジタルサーボ制御装置の構成を示すブロック図
【図２】本発明の全振動除去部の詳細な構成を示すブロック図
【図３】本発明の第１振動除去部の詳細な構成を示すブロック図
【図４】本発明の速度推定部の構成の例を示すブロック図
【図５】本発明の位相調整部の構成の例を示すブロック図
【図６】本発明の位相調整部の構成の別の例を示すブロック図
【図７】本発明のディジタルサーボ制御装置の制御方法を示すフローチャート
【図８】従来のディジタルサーボ制御装置の構成を示すブロック図
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【００１３】
図１は、本発明のディジタルサーボ制御装置の構成を示すブロック図である。図において、２は速度制御部、３は電流制御部、４はモータ、５はモータ４のモータ速度ｖを検出する検出器、６はモータ４に結合されて駆動される機械部、７は全振動除去部となっている。全振動除去部７は、モータ速度ｖとトルク指令Ｔｒｅｆとからモータ４およびモータ４が駆動する機構である機械部６の影響により発生する振動を除去したモータフィードバック速度Ｖｆｂを出力する。
【００１４】
本発明が従来技術と異なる部分は、全振動除去部７を備えた部分であり、モータ４とモータ４が駆動する機構である機械部６の影響により、検出器５から検出されるモータ速度ｖが振動している場合、特にモータ４とモータ４が駆動する機構である機械部６に共振点が複数あり、複数の振動周波数で振動している場合に、全振動除去手段７にて複数の振動成分を除去することができる部分である。
【００１５】
次に図１の動作について説明する。速度制御部２は、速度指令Ｖｒｅｆと全振動除去部７から出力されるモータフィードバック速度Ｖｆｂとを入力してモータフィードバック速度Ｖｆｂが速度指令Ｖｒｅｆに一致するようにトルク指令Ｔｒｅｆを算出する。このとき、速度制御部２は比例制御、または比例積分制御などを行うことによりトルク指令Ｔｒｅｆを算出する。電流制御部３は、モータ４がトルク指令Ｔｒｅｆ通りのモータトルクを出力するための電流指令Ｉｒｅｆを算出してモータ４に与える。機械部６はモータ４と結合されていてモータ４が回転動作することで機械部６が駆動する。検出器５はモータの位置または速度を検出してモータ速度ｖを算出する。
全振動除去部７は、トルク指令Ｔｒｅｆとモータ速度ｖとを入力してモータ速度ｖが振動している場合に、振動成分を除去したモータフィードバック速度Ｖｆｂを算出する。モータ速度ｖが振動していない場合は、モータ速度ｖをそのままモータフィードバック速度Ｖｆｂとして使用する。
【００１６】
図２は、全振動除去部７の詳細な構成を示すブロック図である。図において、７１は第１振動除去部、７１´は第２振動除去部となっている。
【００１７】
次に図２の動作について説明する。全振動除去部７に入力されたトルク指令Ｔｒｅｆとモータ速度ｖは、第１振動除去部７１に入力される。モータ４およびモータ４が駆動する機構である機械部６の影響により、モータ速度ｖが振動周波数ｆ１で振動している場合、モータ速度ｖから振動周波数ｆ１の振動成分を除去してモータフィードバック速度ｖｆｂ１を生成する。モータ速度ｖが振動していない場合は、モータ速度ｖをそのまま全振動除去部７の出力であるモータフィードバック速度Ｖｆｂとして出力する。
第１振動除去部７１から出力されたモータフィードバック速度ｖｆｂ１が振動周波数ｆ２で振動している場合、モータフィードバック速度ｖｆｂ１から振動周波数ｆ２の振動成分を除去してモータフィードバック速度ｖｆｂ２を生成して、モータフィードバック速度ｖｆｂ２を全振動除去部７の出力であるモータフィードバック速度Ｖｆｂとして出力する。第１振動除去部７１から出力されたモータフィードバック速度ｖｆｂ１が振動していない場合は、モータフィードバック速度ｖｆｂ１をそのまま全振動除去部７の出力であるモータフィードバック速度Ｖｆｂとして出力する。
【００１８】
図３は、図２における第１振動除去部７１の詳細な構成を示すブロック図である。図において、７２は位相調整部、７３は速度推定部となっている。図４は、図３における速度推定部７３の詳細な構成を示すブロック図である。図において、７４はゲイン、７５はゲイン、７６は積分器となっている。図５は図３における位相調整部７２の詳細なブロック図である。図において７７はローパスフィルタ、７８はハイパスフィルタとなっている。
【００１９】
次に図３の動作について説明する。モータ速度ｖが振動周波数ｆ１で振動していて第１振動除去部７１がモータ速度ｖから振動周波数ｆ１成分を除去する場合、振動除去部７１に入力されたトルク指令Ｔｒｅｆとモータ速度ｖとを速度推定部７３に入力する。速度推定部７３は推定速度ｖｏｂｓを算出する。速度推定部７３は、トルク指令Ｔｒｅｆとモータ速度ｖからモータ速度を推定する一般的な速度オブザーバであればよい。具体例として式（１）で推定速度ｖｏｂｓを算出することができる。図４は、式（１）をブロック図として示したものである。
【００２０】
ｖｏｂｓ＝Ｔｒｅｆ／Ｊｓ＋ｇ１・（ｖ−ｖｏｂｓ）／ｓ  ・・・  （１）
ただし、式（１）において、Ｊはモータ４と機械部６との慣性モーメントの合計値、ｓはラプラス演算子、ｇ１は速度推定部７３の応答周波数である。ｇ１は、振動周波数ｆ１以下に設定して推定速度ｖｏｂｓが振動周波数ｆ１で振動しない信号にする。
位相調整部７２は、モータ速度ｖから速度推定部７３で算出された推定速度ｖｏｂｓを減じてモータ速度ｖの振動周波数ｆ１成分のみを抽出した信号である速度振動成分ｖｖｉｂの位相を、モータ速度ｖと同位相とするように位相調整する。図５は図３における位相調整部７２の詳細な構成を示すブロック図、図６は図３における位相調整部７２の詳細な他の構成を示すブロック図である。図５において、速度振動成分ｖｖｉｂをローパスフィルタ７７とハイパスフィルタ７８とを用いて、振動成分の位相を調整して位相調整速度成分ｖｐｈｓとして出力する。位相調整部７２は、速度振動成分ｖｖｉｂの位相をモータ速度ｖの振動と同位相とするような機構のものであればよく、図６に示すように遅延素子７９を用いて速度振動成分ｖｖｉｂの位相を調整してもよい。
そして、モータ速度ｖから位相調整速度成分ｖｐｈｓを減じた信号をモータフィードバック速度ｖｆｂ１として出力する。
【００２１】
以上が振動除去部７１の動作であるが、第２振動除去部７１´も同様の動作を行う。ただし、第２振動除去部７１´はモータ速度ｖの代わりに第１モータフィードバック速度ｖｆｂ１を入力する。
【００２２】
このように、全振動除去部７が複数の振動除去部を備えており、それぞれの振動除去部が異なる振動周波数の振動を除去することができるので、モータ４を含めた機械部６の影響によりモータ速度ｖが複数の振動周波数成分の振動を含んだ信号であっても滑らかに速度制御することができるのである。
【００２３】
図７は、本発明のディジタルサーボ制御装置の全振動除去部７の動作のフローチャートである。図において、ステップ１はモータ速度ｖに振動が発生しているかを判断するステップ、ステップ２はステップ１でモータ速度ｖに振動が発生していた場合にモータ速度ｖの振動周波数を測定するステップ、ステップ３はステップ２で測定した振動周波数の振動周波数を除去するステップ、ステップ３Ａは推定速度を算出するステップ、ステップ３Ｂはモータ速度ｖから振動成分を抽出するステップ、ステップ３Ｃは抽出した振動成分の信号の位相を調整するステップ、ステップ３Ｄはモータ速度ｖから位相調整した振動成分の信号を減じてモータ速度ｖの振動を除去するステップ、ステップ４はステップ３によって振動を除去したモータ速度ｖにさらに振動が発生しているかを判断するステップ、ステップ５はステップ４でモータ速度ｖに振動が発生していた場合にモータ速度ｖの振動周波数を測定するステップ、ステップ６はステップ４で測定した振動周波数の振動周波数を除去するステップである。
【００２４】
次に、図７の更に詳細な動作について説明する。
ステップ１ではモータ速度ｖに振動が発生しているかを判断する。具体的には、例えばモータ速度ｖを一定時間のデータを保存して、保存したデータを周波数解析して振動レベルが予め設定した閾値よりも大きい場合に振動が発生していると判断する。モータ速度ｖに振動が発生していない場合は、モータ速度ｖをそのままモータフィードバック速度Ｖｆｂとして出力する。
ステップ２ではモータ速度ｖの振動周波数を測定する。具体的には、例えばステップ１で測定した周波数解析の結果で一番振動レベルが大きいものを振動周波数とする。
ステップ３ではモータ速度ｖからステップ２で測定した振動周波数成分の信号を除去したモータフィードバック速度を算出する。ステップ３は更に詳細にステップ３Ａ、ステップ３Ｂ、ステップ３Ｃ、ステップ３Ｄの４つのステップでモータ速度ｖから振動を除去する。
ステップ３Ａはモータ速度ｖとトルク指令Ｔｒｅｆとから速度オブザーバを用いて推定速度を算出する。ステップ３Ｂはモータ速度からステップ３Ａで算出したモータ速度を減じてモータ速度ｖの振動成分を抽出する。ステップ３Ｃはステップ３Ｂで抽出したモータ速度ｖの振動成分の位相を調整してモータ速度ｖの振動の位相とステップ３Ｂで算出した振動成分の位相が同位相になるようにする。ステップ３Ｄはモータ速度ｖからステップ３Ｃで位相調整したモータ速度ｖの振動成分を減じてモータ速度ｖの振動成分を除去する。
【００２５】
ステップ４ではステップ３で算出したモータ速度ｖから振動成分を除去したモータフィードバック速度ｖｆｂ１に振動が発生しているかを判断する。具体的な振動が発生しているかを判断する方法は、ステップ１と同様であるため説明は省略する。ステップ４で振動が発生していない場合は、ステップ３で算出されたモータフィードバック速度ｖｆｂ１をそのままモータフィードバック速度Ｖｆｂとして出力する。
ステップ５ではモータフィードバック速度ｖｆｂ１の振動周波数を測定する。具体的な方法は、ステップ２と同様であるため説明は省略する。
ステップ６ではモータフィードバック速度ｖｆｂ１からステップ５で測定した振動周波数成分の信号を除去したモータフィードバック速度を算出する。ステップ６の具体的な処理ステップは、ステップ３と同じであるため説明は省略する。ただし、ステップ６ではモータ速度ｖの代わりにモータフィードバック速度ｖｆｂ１を入力する。
【００２６】
尚、本発明において、全振動除去部はこの実施例に限定されるものではなく、全振動除去部７は３つ以上の振動除去部を備えて、３種類以上の振動周波数の振動を除去することも可能である。例えば、３つ振動除去部を備えて３種類の振動周波数を除去する場合は、第２振動除去部７１´の後段に第３振動除去部を直列に接続して、トルク指令Ｔｒｅｆとモータフィードバック速度ｖｆｂ２とを入力して、モータフィードバック速度ｖｆｂ２から振動成分を除去すればよい。
【符号の説明】
【００２７】
１  ディジタルサーボ制御装置
２  速度制御部
３  電流制御部
４  モータ
５  検出器
６  機械部
７  全振動除去部
７１  第１振動除去部
７１´  第２振動除去部
７２  位相調整部
７３  速度推定部
７４  ゲイン
７５  ゲイン
７６  積分器
７７  ローパスフィルタ
７８  ハイパスフィルタ
７９  遅延素子
【図１】
2010161853.tif 000003
【図２】
2010161853.tif 000004
【図３】
2010161853.tif 000005
【図４】
2010161853.tif 000006
【図５】
2010161853.tif 000007
【図６】
2010161853.tif 000008
【図７】
2010161853.tif 000009
【図８】
2010161853.tif 000010