(57)【要約】      （修正有）【課題】指令出力装置がステップ状の位置指令を出力する場合において、例えばアプリケーションによって多様な値となりうる移動量に対してもトルク制限を超過せずに、位置決め動作の精度を向上させることができ、かつ、比較的小さな移動量の場合でも高速な位置決め動作が可能な、モータ制御装置及びモータ制御システムを提供すること。【解決手段】モータ制御装置１は、指令出力装置２から出力されたステップ状の位置指令をフィルタリングする位置指令フィルタ７と、フィルタリングされた位置指令にモータ位置が追従するようにモータ３を制御するためのトルク指令を出力する制御部９と、トルク指令に基づいた電圧指令をモータ巻線に印加する電力変換部１０と、指令出力装置２からの位置指令から、モータ３の移動量を算出する移動量算出部６と、算出した移動量に基づいて、位置指令フィルタ７のフィルタ定数を設定するフィルタ定数設定部８と、を有する。【選択図】図１
2011010533.tif 000002
【特許請求の範囲】
【請求項１】
指令出力装置から出力されたステップ状の位置指令に基づいて、負荷を駆動するモータを制御するモータ制御装置であって、
所定のフィルタ定数により、前記位置指令をフィルタリングする位置指令フィルタと、
前記位置指令フィルタによりフィルタリングされた位置指令と、位置検出装置により検出されたモータ位置とに基づいて、前記フィルタリングされた位置指令に前記モータ位置が追従するように前記モータを制御するためのトルク指令を出力する制御部と、
前記トルク指令に基づいた電圧指令を、前記モータのモータ巻線に印加する電力変換部と、
前記ステップ状の位置指令から、サンプリング時間当たりの前記モータの移動量を算出する移動量算出部と、
前記移動量算出部が算出した移動量に基づいて、前記位置指令フィルタの前記フィルタ定数を設定するフィルタ定数設定部と、
を有することを特徴とする、モータ制御装置。
【請求項２】
前記位置指令フィルタは、前記位置指令により前記モータが等速で駆動する時間間隔が、前記負荷の機構系が有する振動系の共振周期の整数倍に一致するように、前記位置指令をフィルタリングすることを特徴とする、請求項１に記載のモータ制御装置。
【請求項３】
前記フィルタ定数設定部は、前記移動量が増加すれば前記時間間隔が増加し、かつ、前記移動量が減少すれば前記時間間隔が減少するように、前記フィルタ定数を設定することを特徴とする、請求項２に記載のモータ制御装置。
【請求項４】
前記移動量算出部が算出した移動量に基づいて、前記制御部の制御定数を設定する制御定数設定部を更に有することを特徴とする、請求項３に記載のモータ制御装置。
【請求項５】
前記制御定数設定部は、前記移動量が増加した際、該移動量の増加に応じて前記時間間隔が増加するように前記フィルタ定数設定部が前記フィルタ定数を設定する前に、前記制御定数を少なくとも一時的に減少させることを特徴とする、請求項４に記載のモータ制御装置。
【請求項６】
前記移動量算出部は、前記位置指令フィルタでフィルタリングされる位置指令として、前記ステップ状の位置指令から、前記サンプリング時間当たりの移動量を表すインパルス状の位置増分指令を算出して、当該位置増分指令を前記位置指令フィルタに入力し、
前記位置指令フィルタは、前記移動量算出部から入力した位置増分指令をフィルタリングすることを特徴とする、請求項２〜５のいずれか１項に記載のモータ制御装置。
【請求項７】
前記位置指令フィルタは、
前記位置指令として入力される前記位置増分指令を、所定の遅延時間遅延させる遅延器と、
前記遅延器で遅延されていない前記位置増分指令から、前記遅延器で遅延された位置増分指令を減算する減算器と、
前記減算器が減算した結果を積分する積分器と、
前記積分器が積分した積分値を、前記遅延器における前記遅延時間で除算して、該除算の結果を前記フィルタリングされた位置指令として前記制御部に出力する除算器と、
を有し、
前記フィルタ定数設定部は、前記フィルタ定数として、前記遅延時間を前記共振周期の整数倍に設定することを特徴とする、請求項６に記載のモータ制御装置。
【請求項８】
前記フィルタ定数設定部は、前記遅延時間を、前記共振周期の整数倍であり、かつ、前記制御部が出力するトルク指令が制限されない最小値となるように設定することを特徴とする、請求項７に記載のモータ制御装置。
【請求項９】
負荷を駆動可能なモータと、
前記モータの位置に関してステップ状の位置指令を出力する指令出力装置と、
前記位置指令に基づいて、前記モータを駆動するモータ制御装置と、
前記モータのモータ位置を検出する位置検出装置と、
を有し、
前記モータ制御装置は、
所定のフィルタ定数により、前記位置指令をフィルタリングする位置指令フィルタと、
前記位置指令フィルタによりフィルタリングされた位置指令と、前記位置検出装置により検出されたモータ位置とに基づいて、前記フィルタリングされた位置指令に前記モータ位置が追従するように前記モータを制御するためのトルク指令を出力する制御部と、
前記トルク指令に基づいた電圧指令を、前記モータのモータ巻線に印加する電力変換部と、
前記ステップ状の位置指令から、サンプリング時間当たりの前記モータの移動量を算出する移動量算出部と、
前記移動量算出部が算出した移動量に基づいて、前記位置指令フィルタの前記フィルタ定数を設定するフィルタ定数設定部と、
を有することを特徴とする、モータ制御システム。
【請求項１０】
前記位置指令フィルタは、前記位置指令により前記モータが等速で駆動する時間間隔が、前記負荷の機構系が有する振動系の共振周期の整数倍に一致するように、前記位置指令をフィルタリングすることを特徴とする、請求項９に記載のモータ制御システム。
【請求項１１】
前記フィルタ定数設定部は、前記移動量が増加すれば前記時間間隔が増加し、かつ、前記移動量が減少すれば前記時間間隔が減少するように、前記フィルタ定数を設定することを特徴とする、請求項１０に記載のモータ制御システム。
【請求項１２】
前記移動量算出部が算出した移動量に基づいて、前記制御部の制御定数を設定する制御定数設定部を更に有することを特徴とする、請求項１１に記載のモータ制御システム。
【請求項１３】
前記制御定数設定部は、前記移動量が増加した際、該移動量の増加に応じて前記時間間隔が増加するように前記フィルタ定数設定部が前記フィルタ定数を設定する前に、前記制御定数を少なくとも一時的に減少させることを特徴とする、請求項１２に記載のモータ制御システム。
【請求項１４】
前記移動量算出部は、前記位置指令フィルタでフィルタリングされる位置指令として、前記ステップ状の位置指令から、前記サンプリング時間当たりの移動量を表すインパルス状の位置増分指令を算出して、当該位置増分指令を前記位置指令フィルタに入力し、
前記位置指令フィルタは、前記移動量算出部から入力した位置増分指令をフィルタリングすることを特徴とする、請求項１０〜１３のいずれか１項に記載のモータ制御システム。
【請求項１５】
前記位置指令フィルタは、
前記位置指令として入力される前記位置増分指令を、所定の遅延時間遅延させる遅延器と、
前記遅延器で遅延されていない前記位置増分指令から、前記遅延器で遅延された位置増分指令を減算する減算器と、
前記減算器が減算した結果を積分する積分器と、
前記積分器が積分した積分値を、前記遅延器における前記遅延時間で除算して、該除算の結果を前記フィルタリングされた位置指令として前記制御部に出力する除算器と、
を有し、
前記フィルタ定数設定部は、前記フィルタ定数として、前記遅延時間を前記共振周期の整数倍に設定することを特徴とする、請求項１４に記載のモータ制御システム。
【請求項１６】
前記フィルタ定数設定部は、前記遅延時間を、前記共振周期の整数倍であり、かつ、前記制御部が出力するトルク指令が制限されない最小値となるように設定することを特徴とする、請求項１５に記載のモータ制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ステップ状の位置指令形態の指令発生装置を使ったモータ制御装置及びモータ制御システムに関する。
【背景技術】
【０００２】
近年、半導体製造装置やロボット、各種工作機械などのサーボモータを使用する分野では、マシンのタクトタイム向上のための「高速化」の要求や、マシンの性能向上のための「高精度化」の要求が年々高まっている。これらの要求を実現するためには、モータ制御装置のより一層高速・高精度な位置決め性能が不可欠である。高速・高精度な位置決めを行うためには、サーボ系の応答を高め、かつ、オーバーシュートや振動を減少させた位置決め特性を実現する必要がある。
【０００３】
しかし、サーボ系の応答や位置決め特性は、モータを含めた機構系の特性に大きく左右される。機構系が持つ振動系の共振周波数は、サーボ系の応答を上げていく場合にサーボ系の発振の原因となるため、サーボ系の高応答化を妨げる原因となっている。また、機構系が持つ振動系の共振周波数及び反共振周波数は、位置指令に含まれ、かつ、それら周波数と一致する周波数成分によって共振し、位置決め時に振動として現れるため、高精度化を妨げる原因となっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第４００３７４１号（第３−５頁、図１など）
【特許文献２】特開平７−１２３７６２号公報（第５−７頁、図１など）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記問題に対し、機構系が持つ振動系の共振周波数によるサーボ系の発振に対して、トルク指令にノッチフィルタを挿入し、その共振周波数のピークを下げる方法が使用されている。更に、このモータ制御装置では、振動系の共振周波数及び反共振周波数による位置決め時の振動に対して、位置指令に制振フィルタを挿入し、その共振周波数及び反共振周波数成分を低減する方法がある（例えば、特許文献１参照）。この特許文献１では、指令方向によって位置指令に挿入する制振フィルタを切り替える方法が開示されており、ロボットのアームの伸縮や搬送機での物の搭載の有無など、機構系の特性の変化に自動的に対応させている。
【０００６】
一方、例えばガルバノスキャナの制御装置などのようなモータ制御装置では、通常、ステップ状の位置指令が使用されており、その上で、上記のような高速・高精度な位置決めを実現することが希求されている。しかしながら、指令出力装置の位置指令がステップ状の位置指令形態の場合、移動量に相当する位置指令が一度に位置偏差に含まれることになるため、制御部から出力されるトルク指令値が大きくなる場合がある。この際、特に負荷の慣性モーメントが大きい場合に移動量が大きくなると、トルク指令がモータ又はアンプの出力制限値を上回ることがある。このように出力制限を上回りトルク指令が制限された場合、位置決め特性にオーバーシュートが発生するため、位置決め精度が低下してしまう。
【０００７】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、指令出力装置がステップ状の位置指令を出力する場合において、移動量に因らずにトルク指令が出力制限値を超過しないようにすることが可能で、かつ、位置決め動作の精度を向上させることが可能な、モータ制御装置及びモータ制御システムを提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のある観点によれば、指令出力装置から出力されたステップ状の位置指令に基づいて、負荷を駆動するモータを制御するモータ制御装置であって、
所定のフィルタ定数により、上記位置指令をフィルタリングする位置指令フィルタと、
上記位置指令フィルタによりフィルタリングされた位置指令と、位置検出装置により検出されたモータ位置とに基づいて、上記フィルタリングされた位置指令に上記モータ位置が追従するように上記モータを制御するためのトルク指令を出力する制御部と、
上記トルク指令に基づいた電圧指令を、上記モータのモータ巻線に印加する電力変換部と、
上記ステップ状の位置指令から、サンプリング時間当たりの上記モータの移動量を算出する移動量算出部と、
上記移動量算出部が算出した移動量に基づいて、上記位置指令フィルタの上記フィルタ定数を設定するフィルタ定数設定部と、
を有することを特徴とする、モータ制御装置が提供される。
【０００９】
また、上記位置指令フィルタは、上記位置指令により上記モータが等速で駆動する時間間隔が、上記負荷の機構系が有する振動系の共振周期の整数倍に一致するように、上記位置指令をフィルタリングしてもよい。
【００１０】
また、上記フィルタ定数設定部は、上記移動量が増加すれば上記時間間隔が増加し、かつ、上記移動量が減少すれば上記時間間隔が減少するように、上記フィルタ定数を設定してもよい。
【００１１】
また、上記移動量算出部が算出した移動量に基づいて、上記制御部の制御定数を設定する制御定数設定部を更に有してもよい。
【００１２】
また、上記制御定数設定部は、上記移動量が増加した際、該移動量の増加に応じて上記時間間隔が増加するように上記フィルタ定数設定部が上記フィルタ定数を設定する前に、上記制御定数を少なくとも一時的に減少させてもよい。
【００１３】
また、上記移動量算出部は、上記位置指令フィルタでフィルタリングされる位置指令として、上記ステップ状の位置指令から、上記サンプリング時間当たりの移動量を表すインパルス状の位置増分指令を算出して、当該位置増分指令を上記位置指令フィルタに入力し、
上記位置指令フィルタは、上記移動量算出部から入力した位置増分指令をフィルタリングしてもよい。
【００１４】
また、上記位置指令フィルタは、
上記位置指令として入力される上記位置増分指令を、所定の遅延時間遅延させる遅延器と、
上記遅延器で遅延されていない上記位置増分指令から、上記遅延器で遅延された位置増分指令を減算する減算器と、
上記減算器が減算した結果を積分する積分器と、
上記積分器が積分した積分値を、上記遅延器における上記遅延時間で除算して、該除算の結果を上記フィルタリングされた位置指令として上記制御部に出力する除算器と、
を有し、
上記フィルタ定数設定部は、上記フィルタ定数として、上記遅延時間を上記共振周期の整数倍に設定してもよい。
【００１５】
また、上記フィルタ定数設定部は、上記遅延時間を、上記共振周期の整数倍であり、かつ、上記制御部が出力するトルク指令が制限されない最小値となるように設定してもよい。
【００１６】
また、上記課題を解決するために、本発明の別の観点によれば、負荷を駆動可能なモータと、
上記モータの位置に関してステップ状の位置指令を出力する指令出力装置と、
上記位置指令に基づいて、上記モータを駆動するモータ制御装置と、
上記モータのモータ位置を検出する位置検出装置と、
を有し、
上記モータ制御装置は、
所定のフィルタ定数により、上記位置指令をフィルタリングする位置指令フィルタと、
上記位置指令フィルタによりフィルタリングされた位置指令と、上記位置検出装置により検出されたモータ位置とに基づいて、上記フィルタリングされた位置指令に上記モータ位置が追従するように上記モータを制御するためのトルク指令を出力する制御部と、
上記トルク指令に基づいた電圧指令を、上記モータのモータ巻線に印加する電力変換部と、
上記ステップ状の位置指令から、サンプリング時間当たりの上記モータの移動量を算出する移動量算出部と、
上記移動量算出部が算出した移動量に基づいて、上記位置指令フィルタの上記フィルタ定数を設定するフィルタ定数設定部と、
を有することを特徴とする、モータ制御システムが提供される。
【００１７】
また、上記位置指令フィルタは、上記位置指令により上記モータが等速で駆動する時間間隔が、上記負荷の機構系が有する振動系の共振周期の整数倍に一致するように、上記位置指令をフィルタリングしてもよい。
【００１８】
また、上記フィルタ定数設定部は、上記移動量が増加すれば上記時間間隔が増加し、かつ、上記移動量が減少すれば上記時間間隔が減少するように、上記フィルタ定数を設定してもよい。
【００１９】
また、上記移動量算出部が算出した移動量に基づいて、上記制御部の制御定数を設定する制御定数設定部を更に有してもよい。
【００２０】
また、上記制御定数設定部は、上記移動量が増加した際、該移動量の増加に応じて上記時間間隔が増加するように上記フィルタ定数設定部が上記フィルタ定数を設定する前に、上記制御定数を少なくとも一時的に減少させてもよい。
【００２１】
また、上記移動量算出部は、上記位置指令フィルタでフィルタリングされる位置指令として、上記ステップ状の位置指令から、上記サンプリング時間当たりの移動量を表すインパルス状の位置増分指令を算出して、当該位置増分指令を上記位置指令フィルタに入力し、
上記位置指令フィルタは、上記移動量算出部から入力した位置増分指令をフィルタリングしてもよい。
【００２２】
また、上記位置指令フィルタは、
上記位置指令として入力される上記位置増分指令を、所定の遅延時間遅延させる遅延器と、
上記遅延器で遅延されていない上記位置増分指令から、上記遅延器で遅延された位置増分指令を減算する減算器と、
上記減算器が減算した結果を積分する積分器と、
上記積分器が積分した積分値を、上記遅延器における上記遅延時間で除算して、該除算の結果を上記フィルタリングされた位置指令として上記制御部に出力する除算器と、
を有し、
上記フィルタ定数設定部は、上記フィルタ定数として、上記遅延時間を上記共振周期の整数倍に設定してもよい。
【００２３】
また、上記フィルタ定数設定部は、上記遅延時間を、上記共振周期の整数倍であり、かつ、上記制御部が出力するトルク指令が制限されない最小値となるように設定してもよい。
【発明の効果】
【００２４】
以上説明したように本発明によれば、指令出力装置がステップ状の位置指令を出力する場合において、移動量に因らずにトルク指令が出力制限値を超過しないようにすることが可能で、かつ、位置決め動作の精度を向上させることができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の第１実施形態におけるモータ制御システムの構成を説明するための説明図である。
【図２】本発明の第１実施形態における位置指令フィルタの構成と動作を説明するための説明図である。
【図３Ａ】本発明の第１実施形態における移動量が１０００パルスの場合の位置決め動作のシミュレーション結果を説明するための説明図である。
【図３Ｂ】本発明の第１実施形態における移動量が１０００パルスの場合の位置決め動作のシミュレーション結果を説明するための説明図である。
【図３Ｃ】本発明の第１実施形態における移動量が１０００パルスの場合の位置決め動作のシミュレーション結果を説明するための説明図である。
【図３Ｄ】本発明の第１実施形態における移動量が１０００パルスの場合の位置決め動作のシミュレーション結果を説明するための説明図である。
【図４Ａ】本発明の第１実施形態における移動量が１００００パルスの場合の位置決め動作のシミュレーション結果を説明するための説明図である。
【図４Ｂ】本発明の第１実施形態における移動量が１００００パルスの場合の位置決め動作のシミュレーション結果を説明するための説明図である。
【図４Ｃ】本発明の第１実施形態における移動量が１００００パルスの場合の位置決め動作のシミュレーション結果を説明するための説明図である。
【図４Ｄ】本発明の第１実施形態における移動量が１００００パルスの場合の位置決め動作のシミュレーション結果を説明するための説明図である。
【図５】本発明の第１実施形態における位置指令フィルタの移動量とフィルタ定数の関係を説明するための説明図である。
【図６】本発明の第２実施形態におけるモータ制御システムの構成を説明するための説明図である。
【図７】本発明の第２実施形態における移動量とフィルタ定数及び制御定数との関係を説明するための説明図である。
【図８】関連技術に係るモータ制御システムの構成を説明するための説明図である。
【発明を実施するための形態】
【００２６】
以下に添付図面を参照して、本発明の実施の形態について詳細に説明する。本明細書及び図面において、実質的に同一の機能構成を有する構成要素は、原則として同一の符号で表し、これらの構成要素についての重複説明は、適宜省略するものとする。
【００２７】
なお、実際のモータ制御装置には様々な機能や手段が内蔵されてもよい。しかし、説明の便宜上、以下で説明する実施形態において、明細書及び図面には、本発明の各実施形態に関係する機能や手段のみを記載し説明することとする。
【００２８】
＜１．関連技術に係るモータ制御システム＞
まず、本発明の各実施形態について説明する前に、本発明に関連する関連技術に係るモータ制御システムについて、図８を参照しつつ説明する。図８は、関連技術に係るモータ制御システムの構成を説明するための説明図である。
【００２９】
図８に示すように、モータ制御システムは、モータ制御装置１ａと、指令出力装置２ａと、モータ３と、モータ３の位置を検出するエンコーダ４と、２慣性系負荷５とを含む。
【００３０】
モータ制御装置１ａは、指令出力装置２ａからの位置指令に基づきモータ３を駆動し、エンコーダ４からのモータ位置をフィードバック信号として検出し、位置指令値とフィードバック信号とが一致するようにモータ３を制御する。
【００３１】
２慣性系負荷５は、例えばロボットアームなどの負荷であり、共振点と反共振点に周波数特性のピーク点がある。よって、負荷側には、モータ側の反共振周波数のピークにより振動が誘起される。
【００３２】
次にモータ制御装置１ａの詳細について説明する。
モータ制御装置１ａは、制御部９ａと、電力変換部１０と、制振フィルタ１１と、フィルタ切替部１２と、指令方向検出部１３とを含む。
【００３３】
制御部９ａは、一般的に位置制御と速度制御であり、例えば、位置制御は、Ｐ制御（比例制御）、速度制御は、ＰＩ制御（比例・積分制御）を有することが多い。位置制御では、指令出力装置２ａから与えられる位置指令とエンコーダからのフィードバック信号であるモータ位置との差に、位置比例ゲインを掛けたものが、速度指令として出力される。速度制御では、位置制御からの速度指令とエンコーダからのフィードバック信号から検出できるモータ速度とが等しくなるように、ＰＩ制御が行われ、トルク指令が出力される。
【００３４】
電力変換部１０は、例えばＩＧＢＴ（Ｉｎｓｕｌａｔｅｄ  Ｇａｔｅ  Ｂｉｐｏｌａｒ  Ｔｒａｎｓｉｓｔｏｒｓ）やＭＯＳＦＥＴ（Ｍｅｔａｌ−Ｏｘｉｄｅ−Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  Ｆｉｅｌｄ−Ｅｆｆｅｃｔ  Ｔｒａｎｓｉｓｔｏｒ）などを有し、制御部９ａから出力されたトルク指令に基づきモータの巻線に電圧を印加する。
【００３５】
制振フィルタ１１は、ノッチフィルタと同様に所定の周波数帯でゲインが下がる周波数特性を持つフィルタであり、第一の制振フィルタ１１ａと第二の制振フィルタ１１ｂとの２つのフィルタを設定できる構成となっている。指令出力装置２ａから出力された位置指令は、第一の制振フィルタあるいは第二の制振フィルタを通り、第一の位置指令あるいは第二の位置指令が、この制御フィルタ１１から出力される。
【００３６】
指令方向検出部１３は、指令出力装置からの位置指令がＣＣＷ（Ｃｏｕｎｔｅｒ  Ｃｌｏｃｋ  Ｗｉｓｅ）／ＣＷ（Ｃｌｏｃｋ  Ｗｉｓｅ）のいずれの方向の指令なのかを検出して指令方向を出力する。
【００３７】
ここで、フィルタ切替部１２は、指令方向によって位置指令を切り替える働きをし、例えばＣＣＷ方向の指令の場合には第一の位置指令を選択し、ＣＷ方向の指令の場合には第二の位置指令を選択し、制御部９ａへ位置指令を与える。制振フィルタ１１を通過した位置指令は、それぞれ第一の制振フィルタ又は第二の制振フィルタで設定した周波数成分が除去されているため、２慣性系負荷の反共振周波数と制振フィルタの設定周波数とを一致させることで、振動を低減することができる。
【００３８】
以上のような構成にすることで、ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）システム装置の反共振周波数の変化に自動的に対応することができる。つまり、例えば、物を輸送するロボットでは、物を搭載している場合はＣＣＷ方向、搭載していない場合はＣＷ方向といったように決まった動きをすることが多い。そこで、関連技術に係るモータ制御装置は、このような場合に指令方向によって制振フィルタを自動的に切り替えて、振動を低減しているのである。
【００３９】
一方、例えばガルバノスキャナの制御装置などのようなモータ制御装置では、通常、ステップ状の位置指令が使用されており、その上で、上記のような高速・高精度な位置決めを実現することが希求されている。
【００４０】
しかしながら、指令出力装置の位置指令がステップ状の位置指令形態の場合、移動量に相当する位置指令が一度に位置偏差に含まれることになるため、制御部から出力されるトルク指令値が大きくなる場合がある。この際、特に負荷の慣性モーメントが大きい場合に移動量が大きくなると、トルク指令がモータ又はアンプの出力制限値を上回ることがある。このように出力制限を上回りトルク指令が制限された場合、位置決め特性にオーバーシュートが発生するため、位置決め精度が低下してしまう。
【００４１】
そこで、関連技術に係る技術では、移動量が最大時でもトルク指令が出力制限値を超過しないような時定数のフィルタを、位置指令の伝達経路に挿入している。しかしながら、移動量が比較的小さい場合にはそれ程大きな時定数のフィルタは必要ではない。よって、仮に移動量が比較的大きい場合に対応した時定数を使用すると、移動量が比較的小さい場合の高速化を犠牲にする結果となる。
【００４２】
一方、位置指令のフィルタの特性を切り替える方法として、移動量によってフィルタの遅延量を切り替えてフィードフォワード信号を生成し、追従性の向上を目的とした方法が開示されている（例えば、特許文献２参照）。
【００４３】
しかしながら、この特許文献２のような技術では、遅延量をどれだけ変更しても、位置指令を遅延させるだけで位置指令を平滑にする効果はないので、トルク指令が出力制限値を超過しないようにさせる手段にはならない。よって、このような特許文献２のような技術でも、やはりトルク指令が制限される場合が発生し、位置決め精度を向上させるのが難しいのが実情である。
【００４４】
本発明の発明者らは、このような関連技術に係るモータ制御システムについて、鋭意研究・開発を行った結果、本発明を完成させた。
【００４５】
本発明の発明者らが完成させた本発明の各実施形態に係るモータ制御装置及びモータ制御システムは、例えば、指令出力装置がステップ状の位置指令を出力する場合において、例えばアプリケーションによって多様な値となりうる移動量に対しても、トルク指令が出力制限値を超過せずに位置決め動作の精度を向上させることができ、かつ、比較的小さな移動量の場合でも高速な位置決め動作が可能である。
【００４６】
つまり、本発明の各実施形態に係るモータ制御装置及びモータ制御システムによれば、指令出力装置がステップ状の位置指令を出力する場合に、位置指令フィルタのフィルタ定数を、移動量に応じて設定することができる。従って、移動量に応じて適した位置指令フィルタを使用することができる。つまり、例えば、負荷の慣性モーメントが比較的大きい場合などにおいて、移動量が仮に比較的大きくなったとしても、制御部から出力されるトルク指令値を、その移動量に適したフィルタ定数によりトルク制限値よりも低く抑えることができる。よって、移動量の大小にかかわらず、高い位置決め精度を実現することが可能である。また、このように、本発明によれば、移動量が比較的大きい場合に合わせて一定に定められたフィルタ定数を使用せずとも、適切にトルク指令値を抑えられる。従って、移動量の大きさにかかわらず、処理の高速化を実現することができる。
【００４７】
そこで、以下では、このモータ制御装置及びモータ制御システムについて、各実施形態を通じて詳しく説明する。
【００４８】
＜２．第１実施形態に係るモータ制御システム＞
［２−１．モータ制御システムの構成］
まず、図１を参照しつつ、本発明の第１実施形態に係るモータ制御システムの全体構成について説明する。図１は、本発明の第１実施形態におけるモータ制御システムの構成を説明するための説明図である。
【００４９】
図１に示すように、本実施形態に係るモータ制御システムは、大きく分けて、モータ制御装置１と、指令出力装置２と、モータ３（リニアモータでもロータリモータでもよい。）と、該モータ３の位置を検出する位置検出器（例えばエンコーダ）４と、モータが駆動する対象である負荷５と、有する。ただし、負荷５は、必ずしも必要ではないことは言うまでもない。
【００５０】
モータ制御装置１は、指令出力装置２から出力される位置指令と、位置検出器４が検出するモータ３の位置を表すモータ位置検出信号とに基づいて、位置指令にモータ位置が追従するようにモータ３を駆動し、その結果、負荷５を動作させる。
【００５１】
指令出力装置２は、位置指令出力装置の一例であり、モータ３の位置に関して、モータ３又は負荷５の目標位置（位置指令）を、ステップ状の位置指令形態でモータ制御装置１へ出力する。なお、指令出力装置２からモータ制御装置１に出力されるデータ形態には、例えば、シリアルデータやアナログ電圧などがある。
【００５２】
負荷５は、モータ３の稼動部材（例えばモータ軸）に結合された駆動対象である。この負荷５の機構系の特性は、一般的に振動系を持っており、位置決め動作での性能に影響を与えている。なお、この負荷５などの機構系が持つ振動系は、位置決め時の振動を発生する原因の一つとなりうる。本実施形態に係るモータ制御システムは、このような機構系が持つ振動系が原因で発生する位置決め時の振動をも、低減することを可能にしている。
【００５３】
［２−２．モータ制御装置１の構成］
次に、図１を引き続き参照しつつ、本実施形態に係るモータ制御装置１の構成について説明する。
【００５４】
図１に示すように、モータ制御装置１は、移動量算出部６と、位置指令フィルタ７と、フィルタ定数設定部８と、制御部９と、電力変換部１０とを有する。
【００５５】
移動量算出部６は、指令出力装置２から出力された位置指令に基づいて、位置指令における所定のサンプリング時間当りの移動量を算出し、これをフィルタ定数設定部８に出力する。なお、本実施形態に係る移動量算出部６は、位置指令がステップ状であるため、その位置指令が入力された時点で即座に移動量（位置指令における目標位置までの移動量）を算出することが可能である。
【００５６】
また、本実施形態では、移動量算出部６は、更に、指令出力装置２から出力されたステップ状の位置指令から、その位置指令の上記サンプリング時間当りの移動量を表す位置増分指令（位置指令増分値、セグメントデータ等とも言う。位置指令の速度換算値に相当し、位置指令の一例でもある。）を位置指令フィルタ７に出力する。この位置増分指令は、位置指令が上述の通りステップ状であるため、インパルス状になる。上述の通り、移動量を即座に算出することができるため、移動量算出部６は、同様に位置増分指令をも短時間で算出することが可能である。なお、本実施形態では、位置指令フィルタ７による処理が理解しやすいように説明の便宜上、位置指令の一例として、移動量算出部６がこのようなインパルス状の位置増分指令を算出する場合について説明している。しかしながら、必ずしもインパルス状の位置増分指令が算出される必要はなく、位置指令フィルタ７には、ステップ状の位置指令、又は他の形態に変換された位置指令が入力されてもよい。位置指令フィルタ７にステップ状の位置指令を入力させる場合、この移動量算出部６が、指令出力装置２から取得したステップ状の位置指令を、そのまま位置指令フィルタ７に入力してもよい。また、このように位置指令フィルタ７にステップ状の位置指令を入力させる場合、図１の構成とは異なり、指令出力装置２から出力されたステップ状の位置指令が、例えば所定の分岐部により分岐されて、一方が移動量算出部６に入力されて、他方が位置指令フィルタ７に入力されてもよい。
【００５７】
位置指令フィルタ７は、所定のフィルタ定数により、位置指令（本実施形態ではその一例である位置増分指令）をフィルタリングする。この際、位置指令フィルタ７は、指令出力装置２から出力された位置指令によりモータ３で行われる加速と減速との時間間隔（加速終了から減速開始までの時間間隔）が、負荷５の機構系が有する振動系の共振周期の整数倍の長さになるように、入力された位置指令をフィルタリングする。つまり、位置指令フィルタ７は、位置指令をフィルタリングすることにより、その位置指令によりモータ３がほぼ等速で駆動する時間間隔を共振周期の整数倍に一致させる。本実施形態の場合、位置指令フィルタ７は、移動量算出部６から位置指令の一例としてインパルス状の位置増分指令を取得するため、このインパルス状の位置増分指令を、その等速区間が振動系の共振周期の整数倍の長さになるようなパルス状の位置増分指令に平滑化することになる。このようにインパルス状の位置増分指令がフィルタリングされることで、本実施形態に係るモータ制御システムは、負荷５が持つ振動系に対する加振を抑え、位置決め時の振動を低減することができる。そして、このモータ制御システムは、制御部９から出力されるトルク指令がモータ又はアンプの出力制限に掛からない（出力制限値を超過しない）ようにすることができる。この位置指令フィルタ７の具体的構成例については詳しく後述する。
【００５８】
フィルタ定数設定部８は、移動量算出部６で得られた移動量に基づいて、位置指令フィルタ７のフィルタ定数を設定・変更する。フィルタ定数の設定は、位置指令フィルタ７によるフィルタリング処理前に行われる。このフィルタ定数設定部８によるフィルタ定数設定処理等については、位置指令フィルタ７の具体的な構成について説明した後に詳しく説明する。
【００５９】
制御部９は、位置指令フィルタ７によりフィルタリングされた位置指令と、位置検出器４が検出した現在のモータ位置を表すモータ位置信号とを取得する。そして、制御部９は、このフィルタリング後の位置指令と現在のモータ位置とに基づいて、フィルタリング後の位置指令にモータ位置が追従するようにモータ３を制御するためのトルク指令を出力する。本実施形態の場合、位置指令フィルタ７によりフィルタリングされた位置指令は、その一例である位置増分指令となる。よって、制御部９は、測定されたモータ位置からそのモータ位置の同一サンプリング時間当たりの変化量（速度相当値）を算出し、その速度相当値と位置増分指令との差分を積分する。そして、制御部９は、更に、その積分値（位置偏差）が減少するように、制御部９の制御ゲインに基づいて、上記トルク指令を出力することになる。
【００６０】
より具体的には、制御部９は、例えば、位置制御ループ、速度制御ループ及び電流制御ループ（図示せず）を有しており、位置検出器４の検出結果を取得して、算出されたトルク指令に基づいた電圧指令をＰＷＭ（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ）信号として電力変換部１０へ出力する。つまり、位置制御ループは、位置指令フィルタ７でフィルタリングされた位置増分指令と、位置検出器４が検出したモータ位置検出信号とに基づいて、モータ位置のサンプリング時間当たりの変化量がそのフィルタリングされた位置増分指令に追従するように制御するための速度指令を出力する。そして、速度制御ループは、位置制御ループから出力された速度指令に基づいて、モータ速度がその速度指令に一致するように制御するためのトルク指令を出力する。更に、電流制御ループは、速度制御ループから出力されたトルク指令に応じて、モータ電流を制御するための電圧指令を、ＰＷＭ信号として電力変換部１０に出力する。
【００６１】
なお、この制御部９では、３つの制御ループを有する場合について説明しているが、本発明はこの例に限定されるものではなく、少なくとも位置制御ループを有すれば、速度制御ループ及び／又は電流制御ループを有さないように構成されてもよい。
【００６２】
電力変換部１０は、ゲートドライブ回路（図示せず）やインバータ回路（図示せず）を有しており、制御部９から出力されるＰＷＭ信号としての電圧指令に応じた電圧を、モータ３の巻線に印加する。その結果、モータ３は電圧指令により駆動されて、モータ３に連結された負荷５は作動される。
【００６３】
図８に示した関連技術に係るモータ制御システムでは、トルク指令がトルク制限値により制限されない範囲の位置指令の場合では、制振フィルタによって位置決め時の振動をある程度抑えることができる。しかしながら、トルク指令がトルク制限値により制限される可能性があるステップ状の位置指令では、位置決め時にオーバーシュートを発生してしまう。
【００６４】
これに対して、本実施形態に係るモータ制御システムによれば、位置指令フィルタ７が位置決め時の振動を低減し、かつ、モータ制御装置１が移動量算出部６及びフィルタ定数設定部８などを備えているため、ステップ状の位置指令であっても、移動量に応じた最適なフィルタ定数を、位置指令フィルタ７に設定することができる。従って、このモータ制御システムによれば、トルク指令に対するトルク制限値による出力制限を回避することができる。
【００６５】
［２−３．位置指令フィルタ７の構成］
次に図２を参照しつつ、位置指令の一例として位置増分指令が入力する場合の位置指令フィルタ７の具体的な構成例と動作の一例について説明する。図２に示すように、本実施形態に係る位置指令フィルタ７は、遅延器７０と、減算器７１と、積分器７２と、除算器７３と、を有する。
【００６６】
遅延器７０は、移動量算出部６から入力された位置増分指令を所定の遅延時間Ｔだけ遅延させる。減算器７１は、移動量算出部６から入力された位置増分指令から、遅延器７０で遅延された遅延時間Ｔ後の位置増分指令を減算する。積分器７０は、減算器７１が減算した結果を積分する。そして、除算器７３は、積分器７０が積分した積分値を、遅延器７０における遅延時間Ｔで除算する。位置指令フィルタ７は、この除算器７３で除算された値を、フィルタリングされた位置指令として制御部９に出力する。
【００６７】
この位置指令フィルタ７によれば、インパルス状の位置増分指令を、遅延時間Ｔを等速区間に持つパルス状の位置増分指令に変更することができる。ここで位置指令フィルタ７は、遅延時間Ｔの値（フィルタ定数の一例）を、フィルタ定数設定部８により、負荷５が持つ振動系の周波数ｆに基づいて、式（１）で示す値に設定される。それにより、位置指令フィルタ７は、インパルス状の位置増分指令を、位置増分指令の立ち上がりと立ち下がりとの時間間隔、つまり、位置指令による加速と減速の時間間隔（等速駆動の時間間隔）を、振動系の共振周期（＝１／ｆ）の整数倍に変換することができる。その結果、加速による加振を減速による加振で相殺できるため、位置決め時の振動を低減することができる。
【００６８】
【数１】
2011010533.tif 000003
（１）
【００６９】
なお、位置指令フィルタ７としては、図２に示した例に限定されるものではなく、位置指令により等速駆動が行われる時間間隔を、振動系の共振周波数の逆数（共振周期）の整数倍にフィルタリングすることができるフィルタであれば様々なフィルタを使用することが可能である。例えば、上述のように、位置指令フィルタ７に入力される位置指令が、インパルス状の位置増分値ではない場合には、その入力される位置指令に応じた構成のフィルタが使用可能である。
【００７０】
ただし、図２に示す位置指令フィルタ７は、ステップ状の位置指令（つまりインパルス状の位置増分指令）に対して、位置指令により等速駆動が行われる時間間隔を、より正確に振動系の共振周波数の逆数（共振周期）の整数倍にすることができる。そればかりか、この位置指令フィルタ７は、パルス状の位置増分指令をフィルタリングするため、出力の遅れが非常に少ない（位置指令（つまりパルス状の位置増分指令）の払い出し時間が非常に短い）。従って、この図２に示した位置指令フィルタ７を使用する場合には、ステップ状の位置指令に対して位置決め精度を更に向上させ、かつ、高速な位置決めを可能にすることができる。よって、本実施形態のように、位置指令フィルタ７にインパルス状の位置増分値を入力し、かつ、図２に示した位置指令フィルタ７が使用されることが、本実施形態の効果をより一層発揮させる上で望ましい。
【００７１】
ここで、この図２に示す位置指令フィルタ７を有する本実施形態に係るモータ制御システムによる効果等について、図３Ａ〜図３Ｄに示すシミュレーション結果を参照しつつ説明する。
【００７２】
図３Ａ〜図３Ｄは、負荷５の振動系の共振周波数ｆが４ｋＨｚで、移動量が１０００パルスの場合の位置決め動作のシミュレーション結果を説明するための説明図である。図３Ａは、位置指令フィルタ７の遅延時間Ｔ＝０の場合の位置指令と位置応答（例えばモータ位置検出信号）の波形であり、図３Ｂは、位置指令フィルタ７の遅延時間Ｔ＝２５０μｓ（ｎ＝１）の場合の位置指令と位置応答の波形である。そして、図３Ｃは、位置指令フィルタ７の遅延時間Ｔ＝３７５μｓの場合の位置指令と位置応答の波形であり、図３Ｄは、位置指令フィルタ７の遅延時間Ｔ＝５００μｓ（ｎ＝２）の場合の位置指令と位置応答の波形である。
【００７３】
図３Ａに示すように、遅延時間Ｔ＝０の場合、位置決め時の４ｋＨｚの振動（位置応答における振動波形）が発生し、位置決め精度を低下させてしまう。しかしながら、図３Ｂ〜図３Ｄに示すように、本実施形態に係るモータ制御システムによれば、このような位置決め時に発生する負荷５の機構系の振動系で生じる共振振動を、位置指令フィルタ７等により低減することが可能である。
【００７４】
なお、図３Ｂ〜図３Ｄに示すように、遅延時間Ｔは、いずれの値であっても振動低減効果を発揮することが判る。図３Ｂ及び図３Ｄに示す上記式（１）を満たすように遅延時間Ｔが設定された場合、つまり位置指令フィルタ７が位置指令による等速駆動の時間間隔を振動系の共振周期の整数倍にする場合、図３Ｃに示す上記式（１）を満たさない場合よりも、更に振動低減効果を向上させることが可能である。
【００７５】
［２−４．フィルタ定数設定部８の処理］
次に、フィルタ定数設定部８によるフィルタ定数変更の具体的な処理の内容について説明する。
【００７６】
このフィルタ定数設定部８は、上述のように、位置指令によりモータ３が等速で駆動する時間間隔を、位置指令フィルタ７のフィルタリング結果により、負荷５の機構系の共振周期の整数倍とするように、位置指令フィルタ７のフィルタ定数を設定・変更する。
【００７７】
この際、フィルタ定数設定部８は、このフィルタ定数を、移動量算出部６が算出した負荷５の移動量に応じて変更する。より具体的には、フィルタ定数設定部８は、移動量が増加すれば、モータ３が等速駆動する時間間隔を段階的に増加させ、移動量が減少すれば、モータ３が等速駆動する時間間隔を段階的に減少させる。換言すれば、フィルタ定数設定部８は、共振周期を整数倍するその整数値が、移動量が増加すれば大きくなり、移動量が減少すれば小さくなるように、フィルタ定数を変更する。
【００７８】
更に具体的にこのフィルタ定数設定部８における処理について、本実施形態における位置指令フィルタ７を例に説明すれば以下の通りである。
【００７９】
まず、制御部９から出力されるトルク指令は、移動量及び負荷５の慣性モーメントが大きい程、大きくなり、かつ、制御部９の制御ゲインが高い程、大きくなる。そして、モータ３又はアンプなどの出力制限を超過しないようにトルク指令が出力制限される場合の移動量は、取り付けられた負荷５と、制御部９に設定されている制御ゲインとに対して、実験などで容易に求めることができる。
【００８０】
そこで、フィルタ定数設定部８には、負荷５が有する機構系の共振周波数ｆと、その負荷５について移動量に対しトルク指令が制限されない最小のｎの値と、が予め設定される。そして、フィルタ定数設定部８は、移動量算出部６が算出した移動量に基づいて、その移動量に対応付けられたｎの値を特定し、上記共振周波数ｆとｎの値とに基づいて、上記式（１）から遅延時間Ｔを算出する。その後、フィルタ定数設定部８は、算出した遅延時間Ｔを、位置指令フィルタ７のフィルタ定数として設定する。上述の通り、移動量に対するｎの値は、その移動量に対してトルク指令が制限されない最小の値に設定される。このように最小な値をｎとして使用することにより、トルク指令が制限される可能性を低減させつつ、その目標位置への移動に要する時間を短縮することが可能である。
【００８１】
なお、この移動量に対するｎの値は、予め実験などにより求めておき、フィルタ定数設定部８又は他の記録装置（図示せず）に記録されることが望ましい。また、フィルタ定数設定部８で上記式（１）から遅延時間Ｔを算出する代わりに、予め移動量に対する遅延時間Ｔを実験などにより求めてフィルタ定数設定部８又は他の記録装置（図示せず）に記録しておくことも可能である。この場合、フィルタ定数設定部８は、記録された移動量と遅延時間Ｔとの関係と、移動量算出部６が算出した移動量とに基づいて、遅延時間Ｔを求めて、位置指令フィルタ７に設定することも可能である。
【００８２】
図４Ａ〜図４Ｄは、負荷５の振動系の共振周波数ｆが４ｋＨｚで、移動量が１００００パルスの場合の位置決め動作のシミュレーション結果を説明するための説明図である。図４Ａは、位置指令フィルタ７の遅延時間Ｔ＝２５０μｓ（ｎ＝１）の場合の位置指令と位置応答の波形であり、図４Ｂは、この遅延時間Ｔ＝２５０μｓ（ｎ＝１）の場合におけるトルク指令（％）の波形である。一方、図４Ｃは、位置指令フィルタ７の遅延時間Ｔ＝５００μｓ（ｎ＝２）の場合の位置指令と位置応答の波形であり、図４Ｄは、この遅延時間Ｔ＝５００μｓ（ｎ＝２）の場合におけるトルク指令（％）の波形である。
【００８３】
図４Ｂに示すように、１００００パルスの移動量の場合、遅延時間Ｔ＝２５０μｓでは、トルク指令が３００％を超えてしまい、トルク制限に掛かってしまう。一方、図４Ｄに示すように、同じ１００００パルスの移動量の場合、遅延時間Ｔ＝５００μｓであれば、トルク指令は３００％を超えることなく、トルク制限を発生させずに済むことがわかる。
【００８４】
従って、図４Ａ〜図４Ｄに示す例では、フィルタ定数設定部８は、移動量が１００００パルスの場合、その移動量に応じて遅延時間Ｔを５００μｓに設定する。
【００８５】
図５は、移動量に対して、フィルタ定数設定部８が位置指令フィルタ７に設定するフィルタ定数（遅延時間）の設定値の例を示した図である。図５において、移動量Ｘは遅延時間が１／ｆの場合にトルク制限に掛かる最小の移動量を示している。そして、図５に示すように、フィルタ定数設定部８は、位置指令フィルタ７の遅延時間Ｔ１（上記遅延時間Ｔの例）を、移動量がＸ未満の場合は１／ｆに設定し、移動量がＸ以上２Ｘ未満の場合は２／ｆに設定し、移動量が２Ｘ以上３Ｘ未満の場合は３／ｆに設定する。
【００８６】
つまり、本実施形態に係るフィルタ定数設定部８は、移動量が増加するにつれて、遅延時間Ｔ１を増加させるが、この際、遅延時間Ｔ１を共振周波数ｆの逆数の整数ｎ倍となるように、不連続に段階的に増加させる。その結果、位置指令フィルタ７におけるフィルタリングでは、ステップ状の位置指令によるモータ３の加速と減速との時間間隔が負荷５の振動系の共振周期の整数倍となるように位置指令をフィルタリングする際に、その時間間隔を、移動量が増加するにつれて段階的に増加させ、移動量が減少するにつれて段階的に減少させる。このように、位置指令フィルタ７におけるフィルタリング処理が変更されることにより、移動量の大小によらずに、加速による加振を減速による加振で相殺でき、結果として位置決め時の振動を低減することができる。
【００８７】
［２−５．本実施形態による効果の例］
このように、本実施形態に係るモータ制御システムによれば、指令出力装置２の位置指令形態がステップ状の場合に、位置指令フィルタ７のフィルタ定数を、トルク指令が制限されずに、しかも機構系が持つ振動系による位置決め時の振動を低減する最小値に、移動量に応じて設定することができる。従って、このモータ制御システムは、移動量に関係なく、高速・高精度な位置決め動作を実現することができる。また、この際、位置決め時の振動を低減することができるため、モータ制御システムの安定性及び信頼性が高まるばかりか、騒音の低減にもつながる。
【００８８】
＜３．第２実施形態に係るモータ制御システム＞
以上、本発明の第１実施形態に係るモータ制御システムについて説明した。
なお、この第１実施形態に係るモータ制御システムでは、上述のように、フィルタ定数を移動量に応じて設定することにより、移動量が増加すればモータ３が等速で駆動する時間間隔を増加させていた。その結果、上述のように、振動を抑え、安定性及び信頼性を高め、騒音を制限しつ、更には、位置決めを高速化するという格別な作用効果が発揮されていた。次に、このような第１実施形態と同様の作用効果を奏するだけでなく、更に位置決めを高速化可能な本発明の第２実施形態に係るモータ制御システムについて説明する。
【００８９】
［３−１．モータ制御システム等の構成］
まず、図６を参照しつつ、本発明の第２実施形態に係るモータ制御システムの構成について説明する。図６は、本発明の第２実施形態におけるモータ制御システムの構成を説明するための説明図である。
【００９０】
本実施形態に係るモータ制御システムは、図６に示すように、上記第１実施形態に係るモータ制御システムが有するモータ制御装置１の代わりにモータ制御装置１００を有する。そして、このモータ制御装置１００は、第１実施形態に係るモータ制御装置１が有する制御部９の代わりに制御部１０９を有すると共に、更に制御定数設定部１０８を有する。
【００９１】
なお、本実施形態における他の構成については、図６に示すように第１実施形態における構成とほぼ同様に構成可能である。従って、以下では本実施形態について、第１実施形態と異なる点について中心に説明し、重複説明は適宜省略する。
【００９２】
制御部１０９は、基本的には、制御部９と同様に構成される。
つまり、制御部１０９は、位置指令フィルタ７によりフィルタリングされた位置指令と、位置検出器４が検出した現在のモータ位置を表すモータ位置信号とを取得する。そして、制御部１０９は、このフィルタリング後の位置指令と現在のモータ位置とに基づいて、フィルタリング後の位置指令にモータ位置が追従するようにモータ３を制御するためのトルク指令を出力する。そして、この制御部１０９も、上記制御部９と同様に、少なくとも位置制御ループを含む３つの制御ループを有する。なお、制御部１０９について制御部９と重複する部分についての詳しい説明は省略する。
【００９３】
この制御部１０９は、制御部９と異なり、後述する制御定数設定部１０８により制御ループにおける制御定数を変更可能に構成される。この制御定数は、ループゲインともいい、各制御ループにおける応答特性を決定する一因となる。本実施形態に係る制御部１０９は、制御ループの一例として、位置制御ループと、その内側の速度制御ループと、そのまた内側の電流制御ループを有する。この制御ループそれぞれには、そのループの応答特性を決定するループゲインという制御定数が設定されている（位置制御ループでは位置ループゲイン）。そして、制御部１０９全体の応答特性は、一番外側の制御ループである位置ループゲインによって決定されることが多い。そこで、本実施形態に係る制御部１０９は、制御ループの一例として、位置ループゲインを少なくとも設定・変更可能に構成される。
【００９４】
なお、通常、各制御ループのループゲインは、内側にある制御ループになる程高く（通常一段外側の制御ループのループゲインの２〜４倍程度以上）設定されることが望ましい。このバランスが崩れると、制御部１０９は不安定になり、位置決め動作は振動的になる場合がある。よって、制御部１０９の応答特性を変更する場合には、位置制御ループ以外の制御ループにおけるループゲインは、内側の制御ループになる程高く（２〜４倍程度以上）なるように調整されることが望ましい。なお、この内側制御ループのゲイン調整は、制御定数設定部１０８が位置ループゲインと共に行ってもよく、また、例えば制御部１０９自身などの他の部材が制御定数設定部１０８が設定する位置ループゲインに応じて行ってもよい。
【００９５】
制御定数設定部１０８は、移動量算出部６から出力された移動量に応じて、上記制御部１０９の制御定数（ここでは位置ループゲイン）を設定・変更する。この際、制御定数設定部１０８は、制御部１０９から出力されたトルク指令が制限値により制限されず、位置決め時の振動が許容の範囲内に収まり、かつ、最も速い位置決め動作が行えるように、その制御定数を設定する。その結果、制御定数設定部１０８は、フィルタ定数設定部８によるフィルタ定数設定の効果を相乗することが可能である。
【００９６】
つまり、本実施形態でも第１実施形態と同様に、フィルタ定数設定部８による移動量に応じたフィルタ定数の設定では、負荷５が有する振動系の共振周期（１／ｆ）の整数倍（ｎ倍）に、フィルタ定数（遅延時間Ｔ）が設定される。つまり、フィルタ定数には、不連続な値が段階的に設定される。しかし、本実施形態では、この段階的なフィルタ定数の設定による応答の遅れが少なくなるように、制御定数設定部１０８が制御定数（ここでは位置ループゲイン）を設定する。
【００９７】
このような制御定数設定部１０８による制御定数の設定方法は、制御部１０９や負荷５の慣性及び振動周期等に応じて様々な方法がある。本実施形態の場合、制御定数設定部１０８は、移動量が増加した際に、フィルタ定数設定部８がフィルタ定数を一段階増加させる前に、少なくとも一時的に制御定数を変更する。この際、制御定数設定部１０８は、制御定数が一定であればトルク指令が制限値を超えてしまうような場合でも、制御定数を例えば一時的に減少させることにより応答を遅らせて、トルク指令を制限値以下に抑えることができる。その結果、トルク指令が制限されることを防止するためにフィルタ定数設定部８がフィルタ定数を増加させる移動量の閾値（図５におけるＸ，２Ｘ，３Ｘ等）を、制御定数が一時的に変更されることにより、増加させることができる。このことは、移動量が増加した場合に、移動量の閾値が増加した分、フィルタ定数設定部８がフィルタ定数を増加させずに済むことを意味する。従って、フィルタ定数が増加される確率を低減して、位置決めを更に高速化することが可能である。
【００９８】
［３−２．制御定数設定部１０８の処理］
より具体的に、本実施形態に係る制御定数設定部１０８による制御定数の変更について、図７を参照しつつ説明する。図７は、本発明の第２実施形態における移動量とフィルタ定数及び制御定数との関係を説明するための説明図である。
【００９９】
図７において、移動量Ｙは本実施形態において遅延時間が１／ｆの場合にトルク制限に掛かる最小の移動量を示している。そして、遅延時間Ｔ２は、本実施形態において移動量の変化に対して設定される遅延時間を示している。一方、図７において、移動量Ｘは上記第１実施形態において遅延時間が１／ｆの場合にトルク制限に掛かる最小の移動量を示している。そして、遅延時間Ｔ１は、上記第１実施形態において移動量の変化に対して設定される遅延時間を示している。
【０１００】
また、位置ループゲインＧ２は、本実施形態において制御定数設定部１０８が移動量の変化に応じて設定する制御定数を示している。一方、位置ループゲインｇ２は、制御定数設定部１０８が調整する前の制御定数を示している。
【０１０１】
図７に示すように、本実施形態において移動量が増加すると、フィルタ定数設定部８がフィルタ定数（遅延時間Ｔ２）を増加させる前に、制御定数設定部１０８が一時的に制御定数（位置ループゲインＧ２）を減少させる。
【０１０２】
このように位置ループゲインＧ２が減少された場合、制御部９による応答が一時的に遅れて、トルク指令が制限値を超えることを防ぐことができる。なお、この制御部９の制御定数は、共振を抑えるために段階的に増加されるフィルタ定数とは異なり、連続的に変更することが可能である。従って、制御定数設定部１０８は、トルク指令が制限値を超えない範囲内で最小の値だけ、制御定数（位置ループゲインＧ２）を減少させることが望ましい。更に移動量が増加した場合、制御定数設定部１０８は、フィルタ定数を一段増加させることによる遅延よりも制御定数の減少による遅延の方が長くなる前に、制御定数を元の値（位置ループゲインｇ１）に戻す。一方、フィルタ定数設定部８は、それと同時にか前後して、フィルタ定数を一段上げることになる。従って、本実施形態によれば、移動量に応じたきめ細かい調整が可能となり、第１実施形態の移動量に対するフィルタ定数の段階的な設定による段階的な位置指令フィルタの応答遅れを少なくすることが可能である。
【０１０３】
なお、移動量に応じた制御定数は、上記移動量に応じたフィルタ定数と同様に、負荷５に応じて予め実験などにより求めておき、制御定数設定部１０８又は他の記録装置（図示せず）に記録されることが望ましい。そして、位置指令フィルタ７のフィルタ定数を変更するか、制御部１０９の制御定数を変更するかは、位置決め動作での振動と応答の速さに応じて位置決め特性が良い方を選択すればよい。また、両方の定数を最適な値に調整して設定してもよい。更に言えば、このように移動量に応じた制御定数及びフィルタ定数をそれぞれフィルタ定数設定部８及び制御定数設定部１０８等に記憶する以外に、別途の定数制御部等（図示せず）により、移動量に応じてフィルタ定数設定部８及び制御定数設定部１０８を制御して、いずれの定数を調整させるのか決定させることも可能である。
【０１０４】
［３−３．本実施形態による効果の例］
以上のように、本発明の第２実施形態では、さらに制御定数設定部１０８を有し、移動量に応じて制御部１０９の制御定数を変更できる。従って、移動量に応じて制御部１０９の応答、つまり制御部１０９から出力されるトルク指令の大きさを調整することができる。換言すれば、位置指令フィルタ７のフィルタ定数以外にもトルク指令が制限されない設定ができ、移動量に応じたきめ細かい調整が可能となる。よって、本発明の第２実施形態では、上記第１実施形態で奏される効果に加えて、第１実施形態の移動量に対するフィルタ定数の段階的な設定による段階的な位置指令フィルタの応答遅れを少なくすることができるという効果を発揮でき、より高速な位置決めを実現することができる。このような効果は、特に、例えば、振動系の周期（１／ｆ）が長い場合や、移動量が閾値Ｘをわずかに超えてわずかにトルク指令が制限されてしまうような場合に、有効である。つまり、この場合、位置指令フィルタ７のフィルタ定数を１段階伸ばすよりも、制御部１０９の応答をわずかに下げるような制御定数に設定する方が速い位置決め動作を実現できることとなる。
【０１０５】
以上、添付図面を参照しながら本発明の実施形態について詳細に説明した。しかしながら、本発明はこれらの実施形態の例に限定されないことは言うまでもない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範囲内において、様々な変更や修正することに想到できることは明らかである。従って、これらの変更後や修正後の技術も、当然に本発明の技術的範囲に属するものである。
【０１０６】
例えば、上記実施形態では、移動量算出部６が指令出力装置２から出力された位置指令を位置指令の一例である位置増分指令に変換し、位置指令フィルタ７がその位置増分指令をフィルタリングする場合について説明した。しかしながら、本発明はかかる例に限定されるものではない。つまり、例えば、移動量算出部６は、指令出力装置２から出力された位置指令を、そのまま位置指令フィルタ７に出力したり、指令出力装置２から出力された位置指令が、移動量算出部６を介さずに位置指令フィルタ７に入力されてもよい。この場合、位置指令フィルタ７では、指令出力装置２から出力された位置指令によりモータ３で行われる等速駆動の時間間隔が負荷５の振動系の共振周期の整数倍の長さになるように、ステップ状の位置指令がフィルタリングされてもよい。
【０１０７】
また、上記実施形態では、位置指令フィルタ７の一例として、図２に示す構成を例に説明し、かつ、位置指令フィルタ７は、位置指令による加速と減速の時間間隔を、振動系の共振周期の整数倍にフィルタリングできるフィルタであれば、この図２の構成例に限定されない旨について説明した。一方、図２に示す構成の位置指令フィルタ７では、フィルタ定数設定部８が、フィルタ定数の一例として、位置指令フィルタ７の遅延器７０の遅延時間Ｔを設定・変更する構成について説明した。しかしながら、位置指令フィルタ７の構成が変われば、フィルタ定数設定部８が変更するフィルタ定数も、遅延時間Ｔに限定されるものではなく、上記の整数を変更可能な定数であれば様々な定数であってもよいことは言うまでもない。
【０１０８】
また、上記第２実施形態では、制御定数設定部１０８が主に設定する制御定数の一例として、位置ループゲインを例に説明した。そして、この第２実施形態では、制御部１０９が位置制御ループ、速度制御ループ及び電流制御ループの３つの制御ループを有する場合を例に説明した。しかしながら、上述の通り、少なくとも位置制御ループを含めば制御ループの数及び種類は特に限定されるものではない。そして、制御定数設定部１０８が設定する制御定数は、いずれの制御ループのループゲインであってもよいが、少なくとも位置ループゲインを含むことが望ましい。
【符号の説明】
【０１０９】
１，１００        モータ制御装置
２        指令出力装置
３        モータ
４        位置検出器（エンコーダ）
５        負荷（２慣性負荷）
６        移動量算出部
７        位置指令フィルタ
８        フィルタ定数設定部
９，１０９        制御部
１０      電力変換部
１１      制振フィルタ
１０８    制御定数設定部
７０      遅延器
７１      減算器
７２      積分器
７３      除算器
【図１】
2011010533.tif 000004
【図２】
2011010533.tif 000005
【図３Ａ】
2011010533.tif 000006
【図３Ｂ】
2011010533.tif 000007
【図３Ｃ】
2011010533.tif 000008
【図３Ｄ】
2011010533.tif 000009
【図４Ａ】
2011010533.tif 000010
【図４Ｂ】
2011010533.tif 000011
【図４Ｃ】
2011010533.tif 000012
【図４Ｄ】
2011010533.tif 000013
【図５】
2011010533.tif 000014
【図６】
2011010533.tif 000015
【図７】
2011010533.tif 000016
【図８】
2011010533.tif 000017