(57)【要約】【課題】モータのトルク誤差によるオーバーシュートの発生を防ぐ。【解決手段】入力トルク指令Ｔｒｅｆに基づいて駆動電流を出力する電力変換部２と、速度指令とモータ速度Ｖｆｂとの偏差に基づいて算出トルク指令Ｖ−Ｔｒｅｆを生成する速度制御部１と、速度制御中にモータの基準位置を最初に検出した後、所定の工程で変化させるトルクスケジュールのトルクでモータＭを基準位置から目標停止位置Ｐｏｓ１に位置決めさせる位置指令Ｐｒｅｆを生成し、当該位置指令とモータ位置Ｐｆｂとの偏差に基づいて速度指令Ｐ−Ｖｒｅｆを生成し、トルクスケジュールに基づいて生成したトルクＦＦ指令Ｔｆｆを算出トルク指令Ｖ−Ｔｒｅｆに加算した値を入力トルク指令Ｔｒｅｆとして出力し位置制御する定位置停止制御部４とを備え、定位置停止制御部４は、入力トルク指令Ｔｒｅｆに基づいてトルクＦＦ指令Ｔｆｆを補正するステップＳ３５及びステップＳ４０の手順を実行。【選択図】図６
2014155282.tif 000002
【特許請求の範囲】
【請求項１】
第１トルク指令に基づいて、モータを駆動する電流を出力する電力変換部と、
前記モータの速度指令と当該モータのモータ速度との偏差に基づいて第２トルク指令を生成する速度制御部と、
前記モータの速度制御中に、前記モータのモータ位置を検出する位置検出器の１回転当たりの基準位置を最初に検出した後、所定の工程で変化させるトルクスケジュールのトルクで前記モータを最初に検出した前記基準位置から目標停止位置に位置決めさせるための位置指令を生成し、当該位置指令と前記モータ位置との偏差に基づいて前記速度指令を生成し、前記トルクスケジュールに基づいて生成したトルクフィードフォワード指令を前記第２トルク指令に加算した値を前記第１トルク指令として出力して前記モータを位置制御する定位置停止制御部と、
を備えるモータ制御装置であって、
前記定位置停止制御部は、
前記第１トルク指令に基づいて前記トルクフィードフォワード指令を補正するトルクフィードフォワード指令補正部を
備えることを特徴とするモータ制御装置。
【請求項２】
前記速度制御部は、速度制御中では前記第２トルク指令をそのまま前記第１トルク指令として出力し、
前記速度制御部における速度指令が、少なくとも第１〜第３速度指令のうちいずれか１つの速度指令であって、前記第１速度指令は上位制御装置からの速度指令、前記第２速度指令は前記基準位置を検出可能な速度指令、前記第３速度指令は前記定位置停止制御部が生成する速度指令であり、
前記速度制御部が前記第１速度指令に従って前記モータを速度制御している状態にて前記目標停止位置への停止開始指令が入力された後、前記第１速度指令に代えて前記第２速度指令に従って前記モータを速度制御し、
前記基準位置を最初に検出した後、前記定位置停止制御部が前記位置指令、前記第３速度指令、及び前記トルクフィードフォワード指令に基づいて前記モータを位置制御する
ことを特徴とする請求項１記載のモータ制御装置。
【請求項３】
前記モータの回転子を含む制御対象の慣性モーメントを同定する慣性モーメント同定部を備え、
前記トルクスケジュールの変化工程は、
前記基準位置を最初に検出する第１タイミングから第２タイミングまでの間の第１期間中は前記トルクスケジュールの値が０であり、
前記第２タイミングから前記モータが前記目標停止位置に停止する第３タイミングまでの間の第２期間中は前記トルクスケジュールの値が最大逆トルクであり、
前記定位置停止制御部は、
前記第２期間の長さを、前記第２速度指令、前記慣性モーメント、及び前記最大逆トルクに基づいて算出し、
前記第１期間の長さを、前記目標停止位置、前記第２速度指令、及び前記第２期間に基づいて算出する
ことを特徴とする請求項２記載のモータ制御装置。
【請求項４】
前記トルクフィードフォワード指令補正部は、
前記トルクフィードフォワード指令の生成開始時には前記トルクスケジュールを前記トルクフィードフォワード指令として出力し、その後の所定のタイミングで前記第１トルク指令を前記トルクフィードフォワード指令として出力するよう切り替えることを特徴とする請求項３記載のモータ制御装置。
【請求項５】
前記トルクフィードフォワード指令補正部は、
前記第２タイミングの後に、前記定位置停止制御部と前記速度制御部が、前記位置指令と前記モータ位置との偏差に基づいて前記第２トルク指令を生成した以降のタイミングを前記所定のタイミングとして前記トルクフィードフォワード指令の出力を切り替える
ことを特徴とする請求項４記載のモータ制御装置。
【請求項６】
前記定位置停止制御部は、前記位置指令を１階微分して速度フィードフォワード指令を生成し、
前記定位置停止制御部によって生成された前記速度フィードフォワード指令が少なくとも前記速度指令に加算される
ことを特徴とする請求項１乃至５のいずれか１項に記載のモータ制御装置。
【請求項７】
モータを停止するための停止開始指令が入力されると、前記モータのモータ速度が当該モータの位置を検出する位置検出器の基準位置を検出することが可能な検出可能速度となるように、前記モータを速度制御する第１のステップと、
前記検出可能速度と前記モータ速度との偏差が予め決められた値よりも小さくなった後、最初に前記基準位置を検出すると、所定の工程で変化させるトルクスケジュールで前記モータを予め設定された目標停止位置に停止するように、前記モータを位置制御する第２のステップと、を含み、
前記第２のステップでは、前記モータに出力させるトルクが前記トルクスケジュールに従うよう、前記モータに入力するトルク指令を補正する
ことを特徴とするモータ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
開示の実施形態は、モータ制御装置及びモータ制御方法に関する。
【背景技術】
【０００２】
特許文献１には、例えば工作機械の主軸モータの駆動を制御するモータ制御装置において、通常作業時における当該主軸への速度制御と、工具交換時における当該主軸の定位置停止制御のための位置制御とを切り替える構成が開示されている。速度制御時には速度フィードバック制御を行い、位置制御時には速度フィードバック制御、位置フィードバック制御とともにトルクフィードフォワード制御を行う。
【０００３】
具体的には、定位置停止制御中にモータの回転子と制御対象とを併せた慣性モーメントを同定し、この慣性モーメントに対して上記最大トルクで急停止させる間の加速度指令（減速度指令）を算出する。この加速度指令と慣性モーメントとの積でトルクフィードフォワード指令を算出し、これを速度フィードバック制御におけるトルク指令に加算してモータに入力する。また、位置フィードバック制御に対する位置指令は、上記の加速度指令を２階積分して算出する。これにより、定位置停止制御中に最大トルクでの急停止を行いながら適切に工具交換できる目標停止位置への位置決め制御を短時間で行える。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１９１６７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
例えば、モータにおける製作誤差や経年劣化が原因であったり、またはモータに誘導モータを用いた場合には加速時と減速時でトルク特性が相違することが原因で、当該モータに入力するトルク指令と実際に出力するトルクとの間にトルク誤差が生じる場合がある。この場合、上記従来技術では、モータの速度が最初に目標停止位置で停止せずオーバーシュートする可能性があり、位置フィードバック制御によってそのオーバーシュートを収束させて最終的には目標停止位置に位置決めさせる。従来より、用途によってはこのオーバーシュートの発生を防ぐよう改善する余地があった。
【０００６】
本発明はこのような問題点に鑑みてなされたものであり、モータのトルク誤差によるオーバーシュートの発生を防ぐことができるモータ制御装置及びモータ制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明の一の観点によれば、第１トルク指令に基づいて、モータを駆動する電流を出力する電力変換部と、前記モータの速度指令と当該モータのモータ速度との偏差に基づいて第２トルク指令を生成する速度制御部と、前記モータの速度制御中に、前記モータのモータ位置を検出する位置検出器の１回転当たりの基準位置を最初に検出した後、所定の工程で変化させるトルクスケジュールのトルクで前記モータを最初に検出した前記基準位置から目標停止位置に位置決めさせるための位置指令を生成し、当該位置指令と前記モータ位置との偏差に基づいて前記速度指令を生成し、前記トルクスケジュールに基づいて生成したトルクフィードフォワード指令を前記第２トルク指令に加算した値を前記第１トルク指令として出力して前記モータを位置制御する定位置停止制御部と、を備えるモータ制御装置であって、前記定位置停止制御部は、前記第１トルク指令に基づいて前記トルクフィードフォワード指令を補正するトルクフィードフォワード指令補正部を備えるモータ制御装置が適用される。
【０００８】
上記課題を解決するため、本発明の一の観点によれば、モータを停止するための停止開始指令が入力されると、前記モータのモータ速度が当該モータの位置を検出する位置検出器の基準位置を検出することが可能な検出可能速度となるように、前記モータを速度制御する第１のステップと、前記検出可能速度と前記モータ速度との偏差が予め決められた値よりも小さくなった後、最初に前記基準位置を検出すると、所定の工程で変化させるトルクスケジュールで前記モータを予め設定された目標停止位置に停止するように、前記モータを位置制御する第２のステップと、を含み、前記第２のステップでは、前記モータに出力させるトルクが前記トルクスケジュールに従うよう、前記モータに入力するトルク指令を補正するモータ制御方法が適用される。
【発明の効果】
【０００９】
本発明のモータ制御装置及びモータ制御方法によれば、モータのトルク誤差によるオーバーシュートの発生を防ぐことができる。
【図面の簡単な説明】
【００１０】
【図１】一実施の形態に係るモータ制御装置のシステム構成を表す図である。
【図２】モータ制御装置においてＣ相信号検出後の接続状態における制御系全体を伝達関数形式で表す図である。
【図３】停止開始信号が入力された後に減速し、目標停止位置に位置決め停止するまでのモータ速度の経時変化を表すタイムチャートである。
【図４】定位置停止制御のシーケンスにおける入力トルク指令、トルクフィードフォワード指令、速度指令、速度フィードフォワード指令、及び位置指令の変化の様子を表す図である。
【図５】トルクフィードフォワード指令を補正した場合の変化の様子を表す図である。
【図６】入力トルク指令をトルクフィードフォワード指令として出力している状態を表す図である。
【図７】定位置停止指令生成処理を実現するために、モータ制御装置のＣＰＵが実行する制御内容を表すフローチャートの一例である。
【発明を実施するための形態】
【００１１】
以下、一実施の形態について図面を参照しつつ説明する。
【００１２】
図１に、一実施の形態に係るモータ制御装置のシステム構成図を示す。この図１において、モータ制御装置１００は、速度制御部１、電力変換部２、慣性モーメント同定部３、定位置停止制御部４、速度指令切替器５、及び指令入力切替器６を備える。このモータ制御装置１００は、位置検出器ＰＧを取り付けたモータＭの駆動を制御する。
【００１３】
モータＭは、例えば、回転型のモータであり、工具を着脱交換可能なマシニングセンタなどの工作機械の主軸を駆動するために用いられる。また、位置検出器ＰＧは、モータＭの位置（回転位置）Ｐｆｂと、当該位置検出器ＰＧの１回転当たりの基準位置に位置した際にだけ得られるＣ相信号Ｄｃとを検出する。また、速度制御部内の微分器（後述の図２参照）を用いて上記モータ位置Ｐｆｂを微分することで、モータ速度Ｖｆｂが得られる。
【００１４】
速度制御部１は、後述する速度指令Ｖｒｅｆ、位置検出器ＰＧが検出したモータ位置Ｐｆｂ、後述する定位置停止制御部４からの速度フィードフォワード指令Ｖｆｆ及びトルクフィードフォワード指令Ｔｆｆに基づいて、入力トルク指令Ｔｒｅｆを出力する。
電力変換部２は、上記速度制御部１からの入力トルク指令Ｔｒｅｆに基づいて、例えばＰＷＭ制御による駆動電流をモータＭに出力する。
【００１５】
慣性モーメント同定部３は、上記入力トルク指令Ｔｒｅｆ及び上記モータ速度Ｖｆｂに基づいて、モータＭの回転子であるロータ、当該ロータ（出力軸）に連動する主軸、及び当該主軸に装着された回転工具を含めた制御対象全体の慣性モーメントＪを同定する。なお、本実施形態の例では、図示しない上位制御装置からの停止開始信号ＤＩｓの入力を契機に慣性モーメントＪの同定を開始する。
【００１６】
定位置停止制御部４は、各種パラメータに基づいて、停止時速度指令Ｐ−Ｖｒｅｆ、速度フィードフォワード指令Ｖｆｆ、及びトルクフィードフォワード指令Ｔｆｆを生成し出力する。上記の各種パラメータは、後述の目標停止位置Ｐｏｓ１、最大逆トルクＰｏｓＴｒｅｆ、Ｃ相検出速度指令Ｖｃ、上記慣性モーメント同定部３が同定した慣性モーメントＪ、入力トルク指令Ｔｒｅｆ、及びモータ位置Ｐｆｂである。
【００１７】
これらのうち、目標停止位置Ｐｏｓ１は、上記工作機械において主軸を工具交換可能な回転位置に位置決めした際に対応するモータＭ自体の回転位置であり、本実施形態ではモータＭの停止時にこの目標停止位置Ｐｏｓ１に位置決め停止（いわゆる割り出し）させるようにする。最大逆トルクＰｏｓＴｒｅｆは、モータＭに対してその順回転方向と逆の回転方向に付加できる最大のトルクであり、すなわち当該モータＭの順方向の回転を減速させるために付加できる最大の逆トルク（負の値）である。また、位置検出器ＰＧを構成する一般的なロータリエンコーダは、上記Ｃ相信号Ｄｃを検出できる上限速度がモータＭの定格最高速度より低い場合が多く、Ｃ相検出速度指令Ｖｃはその上限速度に設定される。なお、これら目標停止位置Ｐｏｓ１、最大逆トルクＰｏｓＴｒｅｆ、及びＣ相検出速度指令Ｖｃは、それぞれ工作機械、モータＭ、及び位置検出器ＰＧの仕様に応じて予め設定された固定値が与えられる。
【００１８】
速度指令切替器５は、上位制御装置からの停止開始信号ＤＩｓ及び位置検出器ＰＧからのＣ相信号Ｄｃに基づいて、上位制御装置からの通常時速度指令Ｅ−Ｖｒｅｆ、上記Ｃ相検出速度指令Ｖｃ、及び上記停止時速度指令Ｐ−Ｖｒｅｆのうちのいずれか１つを速度指令Ｖｒｅｆとして切り替えて上記速度制御部１に出力する。モータＭがＣ相検出速度指令Ｖｃより大きい速度で駆動されている間は、当該速度指令切替器５が端子ａに接続し通常時速度指令Ｅ−Ｖｒｅｆを速度指令Ｖｒｅｆとして速度制御部１に出力する。上位制御装置から停止開始信号ＤＩｓが入力された際には、当該速度指令切替器５が端子ａから端子ｂに接続を切り替えＣ相検出速度指令Ｖｃを速度指令Ｖｒｅｆとして出力する。その後に位置検出器ＰＧからＣ相信号Ｄｃが検出された際には、当該速度指令切替器５が端子ｂから端子ｃに接続を切り替え停止時速度指令Ｐ−Ｖｒｅｆを速度指令Ｖｒｅｆとして出力する。なお、上記の通常時速度指令Ｅ−Ｖｒｅｆが各請求項記載の第１速度指令に相当し、上記のＣ相検出速度指令Ｖｃが各請求項記載の第２速度指令に相当し、停止時速度指令Ｐ−Ｖｒｅｆが各請求項記載の第３速度指令に相当する。
【００１９】
指令入力切替器６は、位置検出器ＰＧからのＣ相信号Ｄｃに基づいて、定位置停止制御部４から速度制御部１への速度フィードフォワード指令Ｖｆｆ及びトルクフィードフォワード指令Ｔｆｆのそれぞれの入力の有無を切り替える。モータＭがＣ相検出速度指令Ｖｃより大きい速度で駆動されている間は、速度制御部１に対する速度フィードフォワード指令Ｖｆｆ及びトルクフィードフォワード指令Ｔｆｆそれぞれの入力を行わない。位置検出器ＰＧからＣ相信号Ｄｃが検出されている間は、速度制御部１に対して速度フィードフォワード指令Ｖｆｆ及びトルクフィードフォワード指令Ｔｆｆをそれぞれ入力する。
【００２０】
図２は、上記構成の本実施形態のモータ制御装置１００において、Ｃ相信号Ｄｃ検出後の接続状態における制御系全体を伝達関数形式で表している。なお、慣性モーメント同定部３については、上記図１と同様の簡略的な記載としている。また、制御系の観点で見て上記電力変換部２は信号処理に対する影響がほとんどないため、その記載を省略している。
【００２１】
この図２において、速度制御部１は、第１加減算部１１と、積分器１２と、フィードフォワードゲインαと、第２加減算部１３と、速度ループゲインＫｖと、ローパスフィルタ１４と、第３加減算部１５と、トルクリミッタ１６と、微分器１７とを備えている。
【００２２】
第１加減算部１１は、定位置停止制御部４から入力された速度指令Ｖｒｅｆと速度フィードフォワード指令Ｖｆｆとを加算するとともに、そこからモータ位置Ｐｆｂを微分器１７で微分したモータ速度Ｖｆｂを減算してその偏差Ｅｖを求める。
【００２３】
積分器１２は、上記偏差Ｅｖを積分時定数Ｔｉを用いて積分して速度Ｖａを求める。
【００２４】
第２加減算部１３は、上記速度Ｖａと、上記速度フィードフォワード指令Ｖｆｆと、上記速度指令にフィードフォワードゲインαを乗算した値とを加算するとともに、そこから上記モータ速度Ｖｆｂを減算してその偏差Ｅｖａを求める。
【００２５】
速度制御部１は、この偏差Ｅｖａに速度ループゲインＫｖを乗算し、さらにローパスフィルタ１４を介して高周波成分を除去して算出トルク指令Ｖ−Ｔｒｅｆを生成する。このローパスフィルタ１４は、トルク指令のサンプリング周波数に起因する振動を抑制するトルク指令フィルタとして機能する。
【００２６】
第３加減算部１５は、上記算出トルク指令Ｖ−Ｔｒｅｆと、定位置停止制御部４から入力されたトルクフィードフォワード指令Ｔｆｆとを加算して加算トルク指令Ｔａを求める。
【００２７】
トルクリミッタ１６は、上記加算トルク指令Ｔａの上限値と下限値を規制して入力トルク指令Ｔｒｅｆを出力する。なお、この入力トルク指令Ｔｒｅｆの下限値は上記の最大逆トルクＰｏｓＴｒｅｆに規制される。また、上記の入力トルク指令Ｔｒｅｆが各請求項記載の第１トルク指令に相当し、上記の算出トルク指令Ｖ−Ｔｒｅｆが各請求項記載の第２トルク指令に相当する。
【００２８】
そして速度制御部１が出力したこの入力トルク指令Ｔｒｅｆに基づいて、モータＭを含む制御対象１８が回転駆動される。この制御対象１８は、モータＭのロータ、当該ロータ（出力軸）に連動する主軸、及び当該主軸に装着された回転工具を含めた全体の慣性モーメントＪを用いて表される１／Ｊｓ２と等価である。なお、本実施形態の例では、モータＭのロータと主軸（回転工具）の回転速度比を１：１とする。
【００２９】
また、この図２において、定位置停止制御部４は、定位置停止指令生成部２１と、微分器２２と、第４加減算部２３と、位置ループゲインＫｐとを備えている。
【００３０】
定位置停止指令生成部２１は、位置指令算出部２４とトルクフィードフォワード指令切替部２５とを備えており、本実施形態の例ではこれらの全体が特に図示しないＣＰＵにより実行されるソフトウェアで構成する（後述の図７のフロー参照）。位置指令算出部２４は、Ｃ相信号Ｄｃの検出を開始契機として、所定周期のシステムクロックに同期し当該システムクロック毎にモータＭの回転位置が到達すべき位置を位置指令Ｐｒｅｆとして生成、出力する。トルクフィードフォワード指令切替部２５は、後述するトルクスケジュールの切替タイミングに従って、トルクフィードフォワード指令Ｔｆｆを無出力（０トルク）、最大逆トルクＰｏｓＴｒｅｆ、及び速度制御部１から入力される入力トルク指令Ｔｒｅｆのいずれかに切り替えて出力する（後述の図５参照）。このとき、切り替えによるノイズをローパスフィルタ２６で除去してからトルクフィードフォワード指令Ｔｆｆを出力する。
【００３１】
定位置停止制御部４は、上記位置指令算出部２４が出力した位置指令Ｐｒｅｆから上記位置検出器ＰＧが出力したモータ位置Ｐｆｂを第４加減算部２３で減算し、その偏差に位置ループゲインＫｐを乗算して停止時速度指令Ｐ−Ｖｒｅｆを出力する。図示する接続状態では、速度制御部１がこの停止時速度指令Ｐ−Ｖｒｅｆを速度指令Ｖｒｅｆとして入力する。また、定位置停止制御部４は、上記位置指令算出部２４が出力した位置指令Ｐｒｅｆを微分器２２で微分して速度フィードフォワード指令Ｖｆｆを出力する。
【００３２】
以上の制御系の構成においては、位置指令Ｐｒｅｆの入力に追従する位置制御系のＰフィードバックループ（以下、位置制御系ループという）と、速度制御系のＩＰフィードバックループ（以下、速度制御系ループという）によるＰ−ＩＰフィードバック制御と併せて、速度フィードフォワード指令Ｖｆｆとトルクフィードフォワード指令Ｔｆｆによるフィードフォワード制御も複合的に行う構成となっている。なお、特に図示していないが、電力変換部２においても電流制御系のフィードバックループを備えている。
【００３３】
以上のように構成した本実施形態のモータ制御装置１００による定位置停止制御のシーケンスを図３に示す。この図３では、図示しない上位制御装置から停止開始信号ＤＩｓが入力された後に減速し、目標停止位置Ｐｏｓ１に位置決め停止するまでのモータ速度Ｖｆｂの経時変化を表すタイムチャートを示している。
【００３４】
このタイムチャートにおいて、最初は図示しない上位制御装置からの通常時速度指令Ｅ−Ｖｒｅｆに従ってモータＭの速度制御を行う通常運転状態となっている。そして、同じ上位制御装置から停止開始信号ＤＩｓが入力された際に、定位置停止制御部４による定位置停止制御のシーケンスが開始される。この定位置停止制御のシーケンスは、大別して第１区間ｔａ、第２区間ｔｂ、第３区間ｔｃ、及び第４区間ｔｄの順の４つの連続する区間を経て実行される。
【００３５】
まず第１区間ｔａでは、停止開始信号ＤＩｓの入力時に速度指令Ｖｒｅｆをそれまでの通常時速度指令Ｅ−ＶｒｅｆからＣ相検出速度指令Ｖｃに切り替えることで、速度制御部１の速度制御によりモータ速度ＶｆｂをＣ相信号Ｄｃを検出可能な上限速度Ｖｃまで減速する。なお、この第１区間ｔａの減速中において、上記慣性モーメント同定部３が制御対象１８全体の慣性モーメントＪを同定する。本実施形態の例では、上述したように、停止開始信号ＤＩｓが入力された直後に慣性モーメントＪの同定を開始し、当該第１区間ｔａ中にその同定処理を完了する。
【００３６】
モータ速度ＶｆｂがＣ相検出速度Ｖｃまで減速し、Ｃ相信号Ｄｃが最初に検出されるまでの間には、第２区間ｔｂとしてモータ速度ＶｆｂをそのＣ相検出速度Ｖｃに維持する。これまでの第１区間ｔａ及び第２区間ｔｂの間は、速度制御部１の速度制御系ループによる速度フィードバック制御だけで速度指令Ｖｒｅｆに従ったモータＭの速度制御が行われる（正確には電力変換部２における電流フィードバック制御も併せて行う）。
【００３７】
Ｃ相信号Ｄｃが最初に検出された際には、第３区間ｔｃが開始される。この第３区間ｔｃが開始された以降は、上述したように速度制御部１に定位置停止制御部４が接続され、モータＭの制御がそれまでの速度制御から位置制御に切り替わる。この際には、上記の速度制御系ループと位置制御系ループ（及び電流制御系ループ）が全て機能して位置フィードバック制御を行うとともに、速度フィードフォワード指令Ｖｆｆ及びトルクフィードフォワード指令Ｔｆｆの入力によるフィードフォワード制御も併せて行われる。後述するトルクスケジュールに従って第４区間ｔｄが開始されるまでの第３区間ｔｃ中においては、モータ速度ＶｆｂがＣ相検出速度Ｖｃに維持され、トルクフィードフォワード指令Ｔｆｆは出力されない（０トルク）。
【００３８】
第４区間ｔｄが開始した後には、基本的に最大逆トルクＰｏｓＴｒｅｆでのモータＭの急減速、急停止を行う。モータＭが完全に停止した際には、当該モータＭのモータ位置Ｐｆｂが目標停止位置Ｐｏｓ１となる。つまり、Ｃ相信号を検出した第３区間ｔｃの開始時からモータＭが停止した第４区間ｔｄの終了時までの間において、モータ速度Ｖｆｂの曲線と時間軸との間に形成される面積（図中の斜線部）は、モータＭの基準位置であるＣ相位置から目標停止位置Ｐｏｓ１までの相対的な移動量に相当する。
【００３９】
以上のような定位置停止制御のシーケンスを行うことで、任意のモータ速度Ｖｒｅｆでの通常運転状態から停止開始信号ＤＩｓの入力後に、最短時間でモータＭを目標停止位置Ｐｏｓ１に位置決め停止させることができる。なお、上記の第３区間ｔｃが各請求項記載の第１期間に相当し、上記の第４区間ｔｄが各請求項記載の第２期間に相当する。また、第３区間ｔｃを開始するタイミング（Ｃ相信号Ｄｃを検出したタイミング）が各請求項記載の第１タイミングに相当し、第３区間ｔｃを終了するタイミング（＝第４区間ｔｄを開始するタイミング）が各請求項記載の第２タイミングに相当し、第４区間ｔｄを終了するタイミングが各請求項記載の第３タイミングに相当する。また、上記の第１区間ｔａ及び第２区間ｔｂが各請求項記載の第１のステップに相当し、上記の第３区間ｔｃ及び第４区間ｔｄが各請求項記載の第２のステップに相当する。
【００４０】
この定位置停止制御のシーケンスにおける入力トルク指令Ｔｒｅｆ、トルクフィードフォワード指令Ｔｆｆ、速度指令Ｖｒｅｆ、速度フィードフォワード指令Ｖｆｆ、及び位置指令Ｐｒｅｆの変化の様子を図４に示す。この図４において、上述したように速度制御を行う第１区間ｔａ及び第２区間ｔｂでは位置指令Ｐｒｅｆが入力されず、速度制御部１に入力される速度指令Ｖｒｅｆ（Ｃ相検出速度Ｖｃ）に従って入力トルク指令Ｔｒｅｆが生成され、この入力トルク指令ＴｒｅｆでモータＭの速度制御が行われる（図中の一点鎖線参照）。またＣ相信号Ｄｃを検出した後の第３区間ｔｃ及び第４区間ｔｄでは、後述するトルクスケジュールに従った位置指令Ｐｒｅｆ、速度フィードフォワード指令、及びトルクフィードフォワード指令が入力され、これら指令に従って入力トルク指令Ｔｒｅｆが生成され、モータＭの位置制御が行われる（図中の実線参照）。
【００４１】
第１区間ｔａでは、Ｃ相検出速度指令Ｖｃが速度指令Ｖｒｅｆとして入力され、それまでの通常運転速度からＣ相検出速度Ｖｃまで減速させるために入力トルク指令Ｔｒｅｆは速度フィードバック制御により負の値の逆トルクで入力トルク指令Ｔｒｅｆが生成される。ここで、第１区間ｔａより前のモータ速度ＶｆｂがＣ相検出速度Ｖｃより相当に大きい場合には、上記トルクリミッタ１６により入力トルク指令Ｔｒｅｆが最大逆トルクＰｏｓＴｒｅｆに規制される。第２区間ｔｂでは、モータ速度ＶｆｂがＣ相検出速度Ｖｃを維持できるよう、入力トルク指令ＴｒｅｆがモータＭ内の摩擦損失を補填できる程度に低い正の値で生成される。なお、この値は十分小さいため、本実施形態の説明及び図中では０トルクとしている。
【００４２】
第３区間ｔｃ及び第４区間では、位置指令Ｐｒｅｆ及び速度フィードフォワード指令Ｖｆｆがそれぞれ、当該定位置停止制御の実行時ごとに設定されるトルクスケジュールに基づいて生成される。
【００４３】
ここでトルクスケジュールについて説明する。上述したように、第３区間ｔｃは最初にＣ相信号Ｄｃを検出した際に開始して、モータＭを目標停止位置Ｐｏｓ１に位置決め停止させた際に第４区間ｔｄを完了させる。そして第３区間ｔｃ中ではトルクフィードフォワード指令Ｔｆｆを０トルクとしてモータ速度ＶｆｂをＣ相検出速度Ｖｃに維持させ、第４区間ｔｄでトルクフィードフォワード指令Ｔｆｆを最大逆トルクＰｏｓＴｒｅｆに切り替えてモータＭを最短時間で急停止させる。
【００４４】
しかし、主軸に装着する回転工具が交換される度に制御対象１８の慣性モーメントＪが変動するため、同じ最大逆トルクＰｏｓＴｒｅｆでＣ相検出速度Ｖｃから急減速、急停止させるまでにかかる時間、つまり第４区間ｔｄの時間長も変動する。このため、定位置停止制御の実行毎に慣性モーメントＪを同定し、この慣性モーメントＪに基づいて最大逆トルクＰｏｓＴｒｅｆを出力させる第４区間ｔｄを算出する必要がある。また、Ｃ相信号Ｄｃ検出時の基準位置から目標停止位置Ｐｏｓ１までのモータＭの移動量（回転量）は不変であるため、算出された第４区間ｔｄから第３区間ｔｃを求めることができる。このようにしてトルクフィードフォワード指令Ｔｆｆを０トルクとする第３区間ｔｃと、トルクフィードフォワード指令Ｔｆｆを最大逆トルクＰｏｓＴｒｅｆとする第４区間ｔｄで、当該定位置停止制御の実行時におけるトルクスケジュールが設定される。
【００４５】
具体的には、第４区間の時間長ｔｄを以下の式で算出できる。
ｔｄ＝Ｊ・Ｖｃ／ＰｏｓＴｒｅｆ  ・・・（１）
ただし、Ｊは慣性モーメント（同定値）、ＶｃはＣ相検出速度（固定値）、ＰｏｓＴｒｅｆは最大逆トルク（固定値）である。また、上記（１）式を参照して第３区間の時間長ｔｃを以下の式で算出できる。
ｔｃ＝Ｐｏｓ１／Ｖｃ−ｔｄ／２
＝Ｐｏｓ１／Ｖｃ−Ｊ・Ｖｃ／２・ＰｏｓＴｒｅｆ  ・・・（２）
ただし、Ｐｏｓ１は目標停止位置（固定値）である。なお、ｔｃが負の値で算出された場合には、２ｎπ（ｎ：ｔｃを正の値にできる最小の整数）を加算すればよい。
【００４６】
このようにして設定された時間長の第３区間ｔｃでは、モータＭがＣ相検出速度Ｖｃで等速移動するよう位置指令Ｐｒｅｆが生成、出力される。詳細には、上述したシステムクロック毎に同じ距離分だけ増加させたモータ位置の想定値を順次位置指令Ｐｒｅｆとして生成、出力する。また、この第３区間ｔｃでは、速度フィードフォワード指令ＶｆｆがＣ相検出速度Ｖｃを維持して出力する（ＶｆｆはＰｒｅｆの１階微分値なので等速）。
【００４７】
第４区間ｔｄでは、Ｃ相検出速度Ｖｃで回転する慣性モーメントＪの制御対象１８が最大逆トルクＰｏｓＴｒｅｆで当該第４区間ｔｄの終了時に丁度停止できるよう、位置指令Ｐｒｅｆが出力される。また、この第４区間ｔｄでは、当該第４区間ｔｄの間にモータ速度が一律に同じ加速度（減速度）でＣ相検出速度Ｖｃから完全に停止できるよう、速度フィードフォワード指令Ｖｆｆが生成、出力される。
【００４８】
以上のようにして、位置制御を行う第３区間ｔｃ及び第４区間ｔｄの間においては、予め設定されたトルクスケジュールに準拠するよう位置指令Ｐｒｅｆと速度フィードフォワード指令Ｖｆｆが生成、出力される。このように本実施形態では、トルクスケジュールにそのまま基づいてトルクフィードフォワード指令Ｔｆｆを出力する一方で、同じトルクスケジュールに準拠した位置指令Ｐｒｅｆと速度フィードフォワード指令Ｖｆｆを出力する。これにより、速度フィードバック制御、位置フィードバック制御、速度フィードフォワード制御、及びトルクフィードフォワード制御を全て釣り合わせて予定通りに目標停止位置Ｐｏｓ１への位置決め停止を行えるよう位置制御を行う。
【００４９】
しかしながら、実際のモータＭにおいては、入力するトルク指令と実際に出力するトルクとの間にトルク誤差が生じる場合がある。これは、モータＭの製作誤差や経年劣化によるトルク特性の誤差や変動が原因であったり、またはモータＭに誘導モータを用いた場合には加速時と減速時でトルク特性が相違することが原因でトルク誤差が生じる。
【００５０】
例えば、制御上の入力トルク指令Ｔｒｅｆ（＝最大逆トルクＰｏｓＴｒｅｆ）に対応する電流をモータＭに給電しても、実際には上記トルク誤差により当該モータＭがそのトルク指令より低いトルクを出力する場合がある（図中のトルクの点線部参照）。この場合には、第４区間ｔｄが終了する前でモータ位置Ｐｆｂが目標停止位置Ｐｏｓ１に到達しないうちにモータ速度Ｖｆｂが０となるものの、トルクスケジュールに従ったトルクフィードフォワード指令Ｔｆｆがさらに最大逆トルクＰｏｓＴｒｅｆを出力し続けるため、モータ速度Ｖｆｂがオーバーシュートする。またこれに対応して、モータ位置Ｐｆｂもまた位置フィードバック制御及び速度フィードバック制御により目標停止位置Ｐｏｓ１をオーバーシュートする。しかし、その後のトルクスケジュールでトルクフィードフォワード指令Ｔｆｆが０トルクになるとともに、位置フィードバック制御及び速度フィードバック制御によってモータ速度Ｖｆｂが０に、モータ位置Ｐｆｂが目標停止位置Ｐｏｓ１にそれぞれ収束する。つまり、モータＭにトルク誤差がある場合には、モータ速度Ｖｆｂ及びモータ位置Ｐｆｂにオーバーシュートが発生する（図中の速度と位置の点線部参照）。
【００５１】
この現象は、慣性モーメントＪの同定に誤差が生じていることを原因とし、減速区間である第４区間ｔｄの時間長を誤算出してその過不足により発生する場合もある。例えば、モータＭに誘導モータを用いた場合で、慣性モーメントＪの同定演算を当該モータＭの加速時に行った場合には、上述したように加速時と減速時でのトルク特性の相違により誤差を含んだ慣性モーメントＪで誤った第４区間ｔｄを算出してしまう。このように、第４区間ｔｄで規定される減速区間が過不足となる場合でも、上記のオーバーシュートの現象を生じさせてしまう。
【００５２】
そこで本実施形態では、以上のようなオーバーシュートの発生を防ぐために、第４区間ｔｄ中においてトルクフィードフォワード指令Ｔｆｆの補正を行う。具体的には、図５に示すように、第４区間ｔｄの開始から所定時間ｔｅだけ経過した際にトルクフィードフォワード指令Ｔｆｆを最大逆トルクＰｏｓＴｒｅｆから入力トルク指令Ｔｒｅｆに切り替えて出力する。この図５では、上方に太実線でトルクスケジュールを示し、下方に太実線で上記トルクスケジュールに従った速度フィードフォワード指令Ｖｆｆを示す。トルクフィードフォワード指令Ｔｆｆは、第３区間ｔｃにおいてトルクスケジュール通りに０トルク（無出力）を出力する。そして第４区間ｔｄの開始時には、初期的にトルクフィードフォワード指令Ｔｆｆを最大逆トルクＰｏｓＴｒｅｆに切り替えて出力する。
【００５３】
しかし、第４区間ｔｄの開始時から所定時間ｔｅだけ経過した際には、トルクリミッタ１６から出力された入力トルク指令Ｔｒｅｆをそのままトルクフィードフォワード指令Ｔｆｆとして出力するよう切り替える（図中の点線部参照）。一方、速度フィードフォワード指令Ｖｆｆは、上記トルクフィードフォワード指令Ｔｆｆの出力切り替えに関係なく、それまでと同様に上記トルクスケジュールに準拠する減速率で減速変化させる。なお、特に図示しないが、位置指令Ｐｒｅｆについても上記トルクスケジュールに準拠して変化させる。以上のようにトルクフィードフォワード指令Ｔｆｆ、速度フィードフォワード指令Ｖｆｆ、及び位置指令Ｐｒｅｆを出力することにより、モータＭにトルク誤差が生じている場合でもモータＭがトルクスケジュール通りのトルクを実際に出力できるよう、トルクフィードフォワード指令Ｔｆｆを補正することができる。以下、この補正の詳細について説明する。
【００５４】
図６は、第４区間ｔｄの開始時から所定時間ｔｅの経過後における切り替え状態、つまり入力トルク指令Ｔｒｅｆをトルクフィードフォワード指令Ｔｆｆとして出力している状態での、上記図２の制御系を簡略化して示している。この図６中に示す位置制御部３１は、上記図２における位置ループゲインＫｐに相当する。また、図６中に示す速度制御部１Ａは、上記図２における積分器１２、速度ループゲインＫｖ、及びローパスフィルタ１４に相当する。なお、説明を簡略化するため、フィードフォワードゲインα及び第２加減算部１３は省略している。また、以下において単にトルクＴという場合、モータＭが直接出力するトルクをいう。
【００５５】
この図６において、第１加減算部１１、速度制御部１Ａ、第３加減算部１５、トルクリミッタ１６、制御対象１８（モータＭ含む）、及び微分器１７を介したモータ速度Ｖｆｂを第１加減算部１１に帰還するループが、速度制御系ループを構成する。また、第４加減算部２３、位置制御部３１、第１加減算部１１、速度制御部１Ａ、第３加減算部１５、トルクリミッタ１６、制御対象１８、及びモータ位置Ｐｆｂを第４加減算部２３に帰還するループが、位置制御系ループを構成する。これにより、図示する制御系の構成では、速度制御系ループによる速度フィードバック制御と、位置制御系ループによって位置指令Ｐｒｅｆに追従する位置フィードバック制御と、速度フィードフォワード指令Ｖｆｆによる速度フィードフォワード制御と、トルクフィードフォワード指令Ｔｆｆによるトルクフィードフォワード制御とを複合的に行う状態となっている。
【００５６】
速度フィードバック制御の挙動としては、速度フィードフォワード指令Ｖｆｆが入力された上で、速度制御部１Ａが出力する算出トルク指令Ｖ−Ｔｒｅｆが０となるよう制御する。また位置フィードバック制御の挙動としては、位置指令Ｐｒｅｆが入力された上で、位置制御部３１が出力する速度指令Ｖｒｅｆが０となるよう制御する。そして、上述したように速度フィードフォワード指令Ｖｆｆ及び位置指令Ｐｒｅｆはいずれもトルクスケジュールに準拠して生成、出力されている。
【００５７】
ここで、例えば制御対象１８にトルク誤差ΔＴがない場合（ΔＴ＝０）には、上記所定時間ｔｅ経過前にトルクフィードフォワード指令Ｔｆｆもトルクスケジュールに対応して最大逆トルクＰｏｓＴｒｅｆを出力することで、トルクフィードフォワード制御が、その他の位置・速度フィードバック制御及び速度フィードフォワード制御と釣り合う状態となるため、速度制御部１Ａが出力する算出トルク指令Ｖ−Ｔｒｅｆが０となる。この釣り合い状態では、主にトルクフィードフォワード指令Ｔｆｆで制御対象１８を制御している状態となる。この場合には、所定時間ｔｅ経過後にトルクフィードフォワード指令Ｔｆｆを最大逆トルクＰｏｓＴｒｅｆから入力トルク指令Ｔｒｅｆに切り替えた後も、最大逆トルクＰｏｓＴｒｅｆが循環してそのまま入力トルク指令Ｔｒｅｆとなって釣り合い状態が継続し、理想的な定位置停止制御が可能となる。
【００５８】
しかし、制御対象１８にトルク誤差ΔＴが生じている場合（ΔＴ≠０）には、位置・速度フィードバック制御にその影響が反映される。例えば、入力した入力トルク指令Ｔｒｅｆに対し、制御対象１８がその入力トルク指令Ｔｒｅｆよりもトルク誤差ΔＴ（＞０）だけ高いトルクＴを実際に出力した場合、位置・速度フィードバック制御がトルクスケジュールに従うよう算出トルク指令Ｖ−Ｔｒｅｆを０−ΔＴで出力する。このとき、この０より少し低めの０−ΔＴで生成された算出トルク指令Ｖ−Ｔｒｅｆにそれまでのトルクフィードフォワード指令Ｔｆｆ（＝最大逆トルクＰｏｓＴｒｅｆ）を加算した入力トルク指令Ｔｒｅｆ（＝最大逆トルクＰｏｓＴｒｅｆ−ΔＴ）をそのまま次のトルクフィードフォワード指令Ｔｆｆとして循環生成することで、制御対象１８はそれまでより少し低めのトルクＴを実際に出力する。
【００５９】
そして、位置・速度フィードバック制御がトルクスケジュールに従った位置制御を行っているため、制御対象１８がトルクスケジュールと同じトルクを実際に出力するよう入力トルク指令Ｔｒｅｆが調整される。このとき、トルクフィードフォワード指令Ｔｆｆはトルクスケジュールより少し低め（＝最大逆トルクＰｏｓＴｒｅｆ−ΔＴ）を維持するが、位置・速度フィードバック制御との釣り合いが取れるため、算出トルク指令Ｖ−Ｔｒｅｆが０に戻る。つまり、トルクフィードフォワード制御を主体とした理想的な制御状態に戻る。以上の自動調整機能は、制御対象１８が入力された入力トルク指令Ｔｒｅｆよりもトルク誤差ΔＴだけ低いトルクＴを実際に出力した場合にも同様に機能する。
【００６０】
以上の自動調整機能は、定位置停止制御部４のトルクフィードフォワード指令切替部２５が、トルクスケジュール通りの最大逆トルクＰｏｓＴｒｅｆをそのままトルクフィードフォワード指令Ｔｆｆとして生成している状態から、それまでの入力トルク指令Ｔｒｅｆを新たなトルクフィードフォワード指令Ｔｆｆとして生成する状態に切り替えたことによって行える。そのような循環生成を行うためには、第４区間ｔｄの開始時において手本となる最大逆トルクＰｏｓＴｒｅｆをトルクフィードフォワード指令Ｔｆｆとして初期的に出力し、その後の所定時間Ｔｅ経過後のタイミングで入力トルク指令Ｔｒｅｆをそのままトルクフィードフォワード指令Ｔｆｆとして出力するよう切り替える必要がある。切り替え後には、位置・速度フィードバック制御による算出トルク指令Ｖ−Ｔｒｅｆの変動を反映して、トルクフィードフォワード指令Ｔｆｆを適切に補正し、これにより制御対象１８にトルクスケジュール通りのトルクＴを実際に出力させる動作態様となる。
【００６１】
以上のようにして、当該図６に示す切り替え状態では、モータＭにトルク誤差ΔＴが生じている場合でもモータＭがトルクスケジュール通りのトルクＴを実際に出力できるよう、トルクフィードフォワード指令Ｔｆｆを補正することができる。なお、位置・速度フィードバック制御は反応が遅いため、制御対象１８のトルク誤差ΔＴの影響が算出トルク指令Ｖ−Ｔｒｅｆに反映されるまで少し時間を要する。上記の所定時間ｔｅは、このように入力トルク指令Ｔｒｅｆを変化させてから位置・速度フィードバック制御の応答が確立するまでの時間を稼ぐよう設定すればよい。具体的に本実施形態の例では、上記システムクロックの３クロック分の時間で設定する。なお、この所定時間ｔｅの経過時が各請求項記載の所定のタイミングに相当する。
【００６２】
また、Ｃ相信号Ｄｃを検出して速度制御から位置制御に切り替える際（第３区間ｔｃの開始時）には、上記図２における速度制御部１の積分器１２の値をクリアすることでそれまでの速度制御による積分要素の影響を排除し、それ以降の位置制御を機能的に切り替えることができる。また、トルクリミッタ１６により入力トルク指令Ｔｒｅｆの値を制限している間には、積分器１２による積分動作を停止させることで制限解除後の追従性を向上できる。
【００６３】
以上のような機能を実現するために、モータ制御装置１００が備えるＣＰＵ（図示省略）が定位置停止指令生成部２１の機能として実行する定位置停止指令生成処理の内容を、図７により順を追って説明する。
【００６４】
図７において、このフローに示す処理は、Ｃ相信号Ｄｃの検出時、すなわち上記第３区間ｔｃの開始時に呼び出されて実行する。なおこの際には、制御対象１８の慣性モーメントＪがすでに同定されており、また上述した速度制御部１の積分器１２の値がすでにクリアされてとする。
【００６５】
まずステップＳ５で、上記（１）式、（２）式により第３区間ｔｃと第４区間ｔｄのそれぞれの時間長を算出する。これにより、第３区間  ｔｃ、第４区間ｔｄでそれぞれトルクフィードフォワード指令Ｔｆｆを０トルク、最大逆トルクＰｏｓＴｒｅｆとするトルクスケジュールが設定される。
【００６６】
次にステップＳ１０へ移り、トルクフィードフォワード指令Ｔｆｆを０トルクに切り替える。
【００６７】
次にステップＳ１５へ移り、モータ速度がＣ相検出速度Ｖｃでの一定速度となるように位置指令Ｐｒｅｆを出力し続ける。なお、この位置指令Ｐｒｅｆを１階微分した速度フィードフォワード指令Ｖｆｆは０となる。
【００６８】
次にステップＳ２０へ移り、Ｃ相信号Ｄｃを検出してから第３区間ｔｃの時間長だけ経過したか否かを判定する。言い換えると、第３区間ｔｃの終了タイミングに到達したか否かを判定する。まだ第３区間ｔｃの時間長を経過していない場合、判定は満たされず、ステップＳ１５に戻って同様の手順を繰り返す。
【００６９】
一方、Ｃ相信号Ｄｃの検出後から第３区間ｔｃの時間長を経過した場合、判定が満たされ、ステップＳ２５へ移る。なお、この時点で第４区間ｔｄが開始される。
【００７０】
ステップＳ２５では、トルクフィードフォワード指令Ｔｆｆを最大逆トルクＰｏｓＴｒｅｆに切り替えて出力し続ける。
【００７１】
次にステップＳ３０へ移り、慣性モーメントＪの制御対象１８がトルクスケジュール通りの最大逆トルクＰｏｓＴｒｅｆで減速される場合に対応する位置指令Ｐｒｅｆを出力し続ける。なお、この位置指令Ｐｒｅｆを１階微分した速度フィードフォワード指令Ｖｆｆは、一定の減速度で減速し続ける。
【００７２】
次にステップＳ３５へ移り、第４区間ｔｄを開始してから上記所定時間ｔｅが経過したか否かを判定する。言い換えると、上記ステップＳ２５で最大逆トルクＰｏｓＴｒｅｆによるトルクフィードフォワード指令Ｔｆｆを出力してから、位置・速度フィードバック制御が確立して新たな算出トルク指令Ｖ−Ｔｒｅｆが生成されたか否かを判定する。まだ所定時間ｔｅが経過していない場合、判定は満たされず、ステップＳ３０に戻って同様の手順を繰り返す。
【００７３】
一方、第４区間ｔｄを開始してから所定時間ｔｅが経過した場合、判定が満たされ、ステップＳ４０へ移る。
【００７４】
ステップＳ４０では、トルクフィードフォワード指令Ｔｆｆを入力トルク指令Ｔｒｅｆに切り替えて出力し続ける。
【００７５】
次にステップＳ４５へ移り、上記ステップＳ３０と同様にトルクスケジュールに準拠した位置指令Ｐｒｅｆを出力し続ける。なお、この位置指令Ｐｒｅｆを１階微分した速度フィードフォワード指令Ｖｆｆも同様に、一定の減速度で減速し続ける。
【００７６】
次にステップＳ５０へ移り、トルクフィードフォワード指令Ｔｆｆを０トルクから最大逆トルクＰｏｓＴｒｅｆに切り替え出力してから第４区間ｔｄの時間長だけ経過したか否かを判定する。言い換えると、第４区間ｔｄの終了タイミングに到達したか否かを判定する。まだ第４区間ｔｄの時間長を経過していない場合、判定は満たされず、ステップＳ４５に戻って同様の手順を繰り返す。
【００７７】
一方、第４区間ｔｄの時間長が経過した場合、判定が満たされ、ステップＳ５５へ移る。
【００７８】
ステップＳ５５では、トルクフィードフォワード指令Ｔｆｆを０トルクに切り替える。なお、この際には、トルクスケジュールにおいても０トルクとなるので、対応する位置指令Ｐｒｅｆ及び速度フィードフォワード指令Ｖｆｆもまた０となる。そして、このフローを終了する。
【００７９】
以上において、ステップＳ３５及びステップＳ４０の手順が、各請求項記載のトルクフィードフォワード指令補正部として機能する。
【００８０】
以上説明したように、本実施形態のモータ制御装置１００によれば、定位置停止制御部４で実行する上記ステップＳ３５及びステップＳ４０の手順によって、算出トルク指令Ｖ−Ｔｒｅｆに対してトルクフィードフォワード指令Ｔｆｆを加算した入力トルク指令Ｔｒｅｆに基づき、算出トルク指令Ｖ−Ｔｒｅｆに対して加算するトルクフィードフォワード指令Ｔｆｆを補正する。定位置停止制御部４の作動中では、上記トルクスケジュールに従った位置フィードバック制御及び速度フィードバック制御を行っているため、生成される算出トルク指令Ｖ−ＴｒｅｆにはモータＭにおける上記トルク誤差ΔＴが反映される。したがって、上記ステップＳ３５及びステップＳ４０の手順で、算出トルク指令Ｖ−Ｔｒｅｆに対してトルクフィードフォワード指令Ｔｆｆを加算した入力トルク指令Ｔｒｅｆに基づき、算出トルク指令Ｖ−Ｔｒｅｆに対して加算するトルクフィードフォワード指令Ｔｆｆを補正することで、モータＭに上記トルクスケジュールに従ったトルクを出力させることができる。この結果、トルク誤差ΔＴによるオーバーシュートの発生を防ぐことができる。
【００８１】
また、本実施形態によれば、通常速度制御時に停止開始信号ＤＩｓが入力されて定位置停止制御に切り替える場合には、まず速度制御部１に入力する速度指令を上位制御装置からの通常時速度指令Ｅ−Ｖｒｅｆから基準位置を検出可能なＣ相検出速度指令Ｖｃに切り替える。そして、基準位置を最初に検出した後に、Ｃ相検出速度指令Ｖｃから定位置停止制御部４が生成する停止時速度指令Ｐ−Ｖｒｅｆに切り替える。つまり基準位置を最初に検出した際に、速度制御から定位置停止制御部４による位置制御に切り替えられる。そしてこの位置制御時に、それぞれ同一のトルクスケジュールに従った位置フィードバック制御、速度フィードバック制御及びトルクフィードフォワード制御を行うことで、定位置停止制御の時間短縮化が可能となる。
【００８２】
また、本実施形態によれば、トルクスケジュールは定位置停止制御中のうちの位置制御を行う期間中においてモータＭに実際に出力させるべきトルクの変化を設定する。具体的には、基準位置を最初に検出したタイミングから開始する第３区間ｔｃ中はトルクスケジュールの値を０に設定する。つまりこの第３区間ｔｃ中では、その時点のモータ速度（上記Ｃ相検出速度Ｖｃ）を維持させるよう位置指令、Ｃ相検出速度指令Ｖｃ、入力トルク指令Ｔｒｅｆ（トルクフィードフォワード指令Ｔｆｆ＝０）を生成する。そして、第４区間ｔｄの開始タイミングからモータＭが目標停止位置Ｐｏｓ１に停止する定位置停止制御の終了タイミングまでの間の第４区間ｔｄ中はトルクスケジュールの値が最大逆トルクＰｏｓＴｒｅｆ、すなわち当該モータＭがその時点の回転方向と逆方向に出力し得る最大のトルクとなるよう設定する。つまりこの第４区間ｔｄ中では、モータＭを最短時間で急停止できるよう位置指令、停止時速度指令Ｐ−Ｖｒｅｆ、入力トルク指令Ｔｒｅｆ（トルクフィードフォワード指令Ｔｆｆ加算済み）を生成する。
【００８３】
ここで第４区間ｔｄで急停止させるための最大逆トルクＰｏｄＴｒｅｆを基準とした場合、当該第４区間ｔｄに必要とされる時間長は、Ｃ相検出速度Ｖｃ、モータＭのロータを含めた制御対象１８の慣性モーメントＪ、及び当該最大逆トルクＰｏｓＴｒｅｆに基づいて算出できる。なお、慣性モーメントＪは、別途備えた慣性モーメント同定部３で同定する。また、第３区間ｔｃの時間長は、基準位置から目標停止位置Ｐｏｓ１までの移動距離から第４区間ｔｄの間で移動できる移動距離を差し引いた距離だけ、Ｃ相検出速度Ｖｃで等速移動させて到達できる時間長となる。したがって第３区間ｔｃに必要とされる時間長は、（基準位置に対する）目標停止位置Ｐｏｓ１、Ｃ相検出速度Ｖｃ、及び第４区間ｔｄの時間長に基づいて算出できる。以上のようにしてトルクスケジュールの変化工程を設定することで、定位置停止制御の時間短縮化が可能となる。
【００８４】
また、本実施形態によれば、定位置停止制御中に、トルクスケジュールに基づくトルクフィードフォワード指令Ｔｆｆを加算した入力トルク指令ＴｒｅｆをモータＭに入力した際、当該モータＭがその入力トルク指令Ｔｒｅｆ通りのトルクを実際に出力した場合、位置フィードバック制御もまた同じトルクスケジュールに基づく位置指令で位置制御しているため釣り合いが取れ、速度制御部１で生成した算出トルク指令Ｖ−Ｔｒｅｆの値は０となる。この場合には、主にトルクスケジュールに従ったトルクフィードフォワード制御でモータＭを制御している。
【００８５】
これに対し、例えばモータＭに入力した入力トルク指令Ｔｒｅｆに対し、当該モータＭがその入力トルク指令Ｔｒｅｆに対してトルク誤差ΔＴ分だけ異なるトルクを実際に出力した場合、位置フィードバック制御によりトルクスケジュールに従うよう速度制御部１が０よりトルク誤差ΔＴ分だけ戻そうとする値の算出トルク指令Ｖ−Ｔｒｅｆを生成しようとする。このとき、この０よりトルク誤差ΔＴ分だけ異なる値に生成された算出トルク指令Ｖ−Ｔｒｅｆにそれまでのトルクフィードフォワード指令Ｔｆｆを加算したものをそのまま次のトルクフィードフォワード指令Ｔｆｆとして生成することで、モータＭはそれまでのトルク誤差ΔＴを相殺したトルクを実際に出力する。そして、位置フィードバック制御がトルクスケジュールに従った位置制御を行っているため、モータＭがトルクスケジュールと同じトルクを実際に出力するようトルクフィードフォワード指令Ｔｆｆを加算した入力トルク指令Ｔｒｅｆが調整される。このとき、トルクフィードフォワード指令Ｔｆｆはトルクスケジュールよりトルク誤差ΔＴだけずれた値を維持するが、位置フィードバック制御における釣り合いが取れるため、速度制御部１で生成した算出トルク指令Ｖ−Ｔｒｅｆ（トルクフィードフォワード指令Ｔｆｆ加算前）の値は０に戻る。
【００８６】
以上の自動調整機能は、上記ステップＳ３５及びステップＳ４０の手順で、トルクスケジュールをそのままトルクフィードフォワード指令Ｔｆｆとして生成している状態から、それまでのトルクフィードフォワード指令Ｔｆｆを加算した入力トルク指令Ｔｒｅｆを新たなトルクフィードフォワード指令Ｔｆｆとして生成する状態に切り替えたことによって行える。そのためには、トルクフィードフォワード指令Ｔｆｆの生成開始時において手本となるトルクスケジュールをトルクフィードフォワード指令Ｔｆｆとして出力し、その後に第４区間ｔｄの開始時から所定時間ｔｅが経過した際に上記の入力トルク指令Ｔｒｅｆをトルクフィードフォワード指令Ｔｆｆとして出力するよう切り替える必要がある。切り替え後には、速度制御部１が生成する算出トルク指令Ｖ−Ｔｒｅｆの変動を反映してトルクフィードフォワード指令Ｔｆｆを適切に補正し、これによりモータＭにトルクスケジュール通りのトルクを実際に出力させるトルクフィードフォワード制御が可能となる。
【００８７】
また、本実施形態によれば、第３区間ｔｃ中には、トルクスケジュール及びトルクフィードフォワード指令の値が０であることからモータＭにおけるトルク誤差ΔＴも生じないため、トルクフィードフォワード指令Ｔｆｆの切り替えを行う必要がない。また、第４区間ｔｄにおいては、初期にトルクスケジュールのトルク（最大逆トルクＰｏｓＴｒｅｆ）でトルクフィードフォワード指令Ｔｆｆを出力した後、速やかにトルクフィードフォワード指令Ｔｆｆの切り替えを行えばよい。しかし、位置フィードバック制御はモータＭの出力挙動に基づいて制御を行うため、トルクフィードフォワード制御よりも反応が遅れる。このため上記ステップＳ３５及びステップＳ４０の手順では、トルクスケジュールの値が最大逆トルクＰｏｓＴｒｅｆとなる第４区間ｔｄの開始タイミング後であって、定位置停止制御部４の位置フィードバック制御における位置指令とモータ位置との偏差に基づいて速度制御部１が算出トルク指令Ｖ−Ｔｒｅｆを生成した以降のタイミング（つまり所定時間ｔｅ経過時）で切り替えることで、トルクフィードフォワード指令Ｔｆｆを機能的に補正できる。
【００８８】
また、本実施形態によれば、トルクスケジュールに基づく位置指令から生成した速度フィードフォワード指令Ｖｆｆを速度指令に加算することで、トルクスケジュールの変化に対する速い反応で速度指令を変化させることができる。
【００８９】
上記実施形態においては、定位置停止制御部４の位置制御系及び速度制御部１の速度制御系が、位置比例・速度積分比例制御系（Ｐ−ＩＰ制御系）のフィードバックループで構成されていたが、これに限られない。他にも、位置比例・速度比例積分制御系（Ｐ−ＰＩ制御系）、位置比例・速度比例制御系（Ｐ−Ｐ制御系）などのフィードバックループで構成してもよい。
【００９０】
以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。その他、一々例示はしないが、上記実施形態や各変形例は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
【符号の説明】
【００９１】
１、１Ａ      速度制御部
２            電力変換部
３            慣性モーメント同定部
４            定位置停止制御部
５            速度指令切替器
６            指令入力切替器
１１          第１加減算部
１２          積分器
１３          第２加減算部
１４          ローパスフィルタ
１５          第３加減算部
１６          トルクリミッタ
１７          微分器
１８          制御対象
２１          定位置停止指令生成部
２２          微分器
２３          第４加減算部
２４          位置指令算出部
２５          トルクフィードフォワード指令切替部
２６          ローパスフィルタ
３１          位置制御部
１００        モータ制御装置
Ｍ            モータ
ＰＧ          位置検出器
【図１】
2014155282.tif 000003
【図２】
2014155282.tif 000004
【図３】
2014155282.tif 000005
【図４】
2014155282.tif 000006
【図５】
2014155282.tif 000007
【図６】
2014155282.tif 000008
【図７】
2014155282.tif 000009
【手続補正書】
【提出日】平成26年4月30日(2014.4.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１トルク指令に基づいて、モータを駆動する電流を出力する電力変換部と、
前記モータの速度指令と当該モータのモータ速度との偏差に基づいて第２トルク指令を生成する速度制御部と、
前記モータの速度制御中に、前記モータのモータ位置を検出する位置検出器の１回転当たりの基準位置を最初に検出した後、所定の工程で変化させるトルクスケジュールのトルクで前記モータを最初に検出した前記基準位置から目標停止位置に位置決めさせるための位置指令を生成し、当該位置指令と前記モータ位置との偏差に基づいて前記速度指令を生成し、前記トルクスケジュールに基づいて生成したトルクフィードフォワード指令を前記第２トルク指令に加算した値を前記第１トルク指令として出力して前記モータを位置制御する定位置停止制御部と、
を備えるモータ制御装置であって、
前記定位置停止制御部は、
前記第２トルク指令が略０となるよう前記第１トルク指令に基づいて前記トルクフィードフォワード指令を補正するトルクフィードフォワード指令補正部を
備えることを特徴とするモータ制御装置。
【請求項２】
前記速度制御部は、速度制御中では前記第２トルク指令をそのまま前記第１トルク指令として出力し、
前記速度制御部における速度指令が、少なくとも第１〜第３速度指令のうちいずれか１つの速度指令であって、前記第１速度指令は上位制御装置からの速度指令、前記第２速度指令は前記基準位置を検出可能な速度指令、前記第３速度指令は前記定位置停止制御部が生成する速度指令であり、
前記速度制御部が前記第１速度指令に従って前記モータを速度制御している状態にて前記目標停止位置への停止開始指令が入力された後、前記第１速度指令に代えて前記第２速度指令に従って前記モータを速度制御し、
前記基準位置を最初に検出した後、前記定位置停止制御部が前記位置指令、前記第３速度指令、及び前記トルクフィードフォワード指令に基づいて前記モータを位置制御する
ことを特徴とする請求項１記載のモータ制御装置。
【請求項３】
前記モータの回転子を含む制御対象の慣性モーメントを同定する慣性モーメント同定部を備え、
前記トルクスケジュールの変化工程は、
前記基準位置を最初に検出する第１タイミングから第２タイミングまでの間の第１期間中は前記トルクスケジュールの値が０であり、
前記第２タイミングから前記モータが前記目標停止位置に停止する第３タイミングまでの間の第２期間中は前記トルクスケジュールの値が最大逆トルクであり、
前記定位置停止制御部は、
前記第２期間の長さを、前記第２速度指令、前記慣性モーメント、及び前記最大逆トルクに基づいて算出し、
前記第１期間の長さを、前記目標停止位置、前記第２速度指令、及び前記第２期間に基づいて算出する
ことを特徴とする請求項２記載のモータ制御装置。
【請求項４】
前記トルクフィードフォワード指令補正部は、
前記トルクフィードフォワード指令の生成開始時には前記トルクスケジュールを前記トルクフィードフォワード指令として出力し、その後の所定のタイミングで前記第１トルク指令を前記トルクフィードフォワード指令として出力するよう切り替えることを特徴とする請求項３記載のモータ制御装置。
【請求項５】
前記トルクフィードフォワード指令補正部は、
前記第２タイミングの後に、前記定位置停止制御部と前記速度制御部が、前記位置指令と前記モータ位置との偏差に基づいて前記第２トルク指令を生成した以降のタイミングを前記所定のタイミングとして前記トルクフィードフォワード指令の出力を切り替える
ことを特徴とする請求項４記載のモータ制御装置。
【請求項６】
前記定位置停止制御部は、前記位置指令を１階微分して速度フィードフォワード指令を生成し、
前記定位置停止制御部によって生成された前記速度フィードフォワード指令が少なくとも前記速度指令に加算される
ことを特徴とする請求項１乃至５のいずれか１項に記載のモータ制御装置。
【請求項７】
モータを停止するための停止開始指令が入力されると、前記モータのモータ速度が当該モータの位置を検出する位置検出器の基準位置を検出することが可能な検出可能速度となるように、前記モータを速度制御する第１のステップと、
前記検出可能速度と前記モータ速度との偏差が予め決められた値よりも小さくなった後、最初に前記基準位置を検出すると、所定の工程で変化させるトルクスケジュールで前記モータを予め設定された目標停止位置に停止するように、前記モータを位置制御する第２のステップと、を含み、
前記第２のステップでは、前記モータに出力させるトルクが前記トルクスケジュールに従うよう、前記モータに入力するトルク指令がその補正前で略０とすべく当該トルク指令を補正する
ことを特徴とするモータ制御方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
上記課題を解決するため、本発明の一の観点によれば、第１トルク指令に基づいて、モータを駆動する電流を出力する電力変換部と、前記モータの速度指令と当該モータのモータ速度との偏差に基づいて第２トルク指令を生成する速度制御部と、前記モータの速度制御中に、前記モータのモータ位置を検出する位置検出器の１回転当たりの基準位置を最初に検出した後、所定の工程で変化させるトルクスケジュールのトルクで前記モータを最初に検出した前記基準位置から目標停止位置に位置決めさせるための位置指令を生成し、当該位置指令と前記モータ位置との偏差に基づいて前記速度指令を生成し、前記トルクスケジュールに基づいて生成したトルクフィードフォワード指令を前記第２トルク指令に加算した値を前記第１トルク指令として出力して前記モータを位置制御する定位置停止制御部と、を備えるモータ制御装置であって、前記定位置停止制御部は、前記第２トルク指令が略０となるよう前記第１トルク指令に基づいて前記トルクフィードフォワード指令を補正するトルクフィードフォワード指令補正部を備えるモータ制御装置が適用される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
上記課題を解決するため、本発明の一の観点によれば、モータを停止するための停止開始指令が入力されると、前記モータのモータ速度が当該モータの位置を検出する位置検出器の基準位置を検出することが可能な検出可能速度となるように、前記モータを速度制御する第１のステップと、前記検出可能速度と前記モータ速度との偏差が予め決められた値よりも小さくなった後、最初に前記基準位置を検出すると、所定の工程で変化させるトルクスケジュールで前記モータを予め設定された目標停止位置に停止するように、前記モータを位置制御する第２のステップと、を含み、前記第２のステップでは、前記モータに出力させるトルクが前記トルクスケジュールに従うよう、前記モータに入力するトルク指令がその補正前で略０とすべく当該トルク指令を補正するモータ制御方法が適用される。