(57)【要約】【課題】モータ制御の安定性を高める。【解決手段】モータ制御装置１００は、出力指令演算部６０および慣性負荷値演算部７０を備えている。出力指令演算部６０は、モータ４の負荷の慣性の大きさを示す慣性負荷値Ｊ０とモータ加速度指令Ａとに基づいてモータ出力指令Ｔｒを演算する。慣性負荷値演算部７０は、モータ４から出力されるモータ実出力Ｘとモータ出力指令Ｔｒとに基づいて適応オブザーバを用いて推定慣性負荷値ＪＥを演算し、推定慣性負荷値ＪＥに基づいて慣性負荷値Ｊ０を演算する。【選択図】図２
2019097268.tif 000002
【特許請求の範囲】
【請求項１】
モータの負荷の慣性の大きさを示す慣性負荷値とモータ加速度指令とに基づいてモータ出力指令を演算する出力指令演算部と、
前記モータから出力されるモータ実出力と前記モータ出力指令とに基づいて適応オブザーバを用いて推定慣性負荷値を演算し、前記推定慣性負荷値に基づいて前記慣性負荷値を演算する慣性負荷値演算部と、
を備えたモータ制御装置。
【請求項２】
前記モータ実出力と前記モータ出力指令とに基づいて出力補正値を演算する出力補正値演算部をさらに備え、
前記出力指令演算部は、前記モータ加速度指令と前記慣性負荷値とに基づいて出力指令を演算する第１出力指令演算部と、前記出力指令と前記出力補正値とに基づいて前記モータ出力指令を演算する第２出力指令演算部と、を有している、
請求項１に記載のモータ制御装置。
【請求項３】
前記出力補正値演算部は、前記モータの外乱を推定し前記出力補正値を演算する、
請求項２に記載のモータ制御装置。
【請求項４】
前記慣性負荷値演算部は、前記モータ実出力と前記モータ出力指令とに基づき前記適応オブザーバを用いて前記推定慣性負荷値を演算する推定慣性負荷値演算部と、前記推定慣性負荷値に基づいて前記慣性負荷値を変更する慣性負荷値変更部と、を有している、
請求項１〜３のいずれかに記載のモータ制御装置。
【請求項５】
前記慣性負荷値変更部は、基準慣性負荷範囲と前記推定慣性負荷値とに基づいて前記慣性負荷値を変更する、
請求項４に記載のモータ制御装置。
【請求項６】
前記慣性負荷値変更部は、前記モータの可動部材の慣性の大きさを示す基準慣性負荷値に対する、前記推定慣性負荷値から前記基準慣性負荷値を減算して得られた対象慣性負荷値の割合を推定慣性負荷比として演算し、
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の上限値よりも大きい場合に、前記慣性負荷値を増加させる、
請求項５に記載のモータ制御装置。
【請求項７】
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の前記上限値よりも大きい場合に、前記推定慣性負荷値を用いて前記慣性負荷値を増加させる、
請求項６に記載のモータ制御装置。
【請求項８】
前記慣性負荷値変更部は、前記モータの可動部材の慣性の大きさを示す基準慣性負荷値に対する、前記推定慣性負荷値から前記基準慣性負荷値を減算して得られた対象慣性負荷値の割合を推定慣性負荷比として演算し、
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の下限値よりも小さい場合に、前記慣性負荷値を減少させる、
請求項５〜７のいずれかに記載のモータ制御装置。
【請求項９】
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の前記下限値よりも小さい場合に、前記推定慣性負荷値を用いて前記慣性負荷値を減少させる、
請求項８に記載のモータ制御装置。
【請求項１０】
前記慣性負荷値演算部は、前記推定慣性負荷値を前記慣性負荷値として前記出力指令演算部に出力することで前記慣性負荷値を演算する、
請求項１に記載のモータ制御装置。
【請求項１１】
前記慣性負荷値演算部は、状態設定値と前記モータ実出力とに基づいて第１状態量を演算する第１状態量演算部と、前記状態設定値と前記モータ出力指令とに基づいて第２状態量を演算する第２状態量演算部と、前記第１状態量と前記第２状態量とに基づいて前記推定慣性負荷値を演算する適応同定演算部と、を有している、
請求項１〜１０のいずれかに記載のモータ制御装置。
【請求項１２】
前記慣性負荷値演算部は、前記モータ加速度指令と前記モータ加速度指令よりも上流側の指令とを直接用いることなく、前記モータ実出力と前記モータ出力指令とに基づき前記適応オブザーバを用いて前記推定慣性負荷値を演算する、
請求項１〜１１のいずれかに記載のモータ制御装置。
【請求項１３】
前記慣性負荷値は、慣性モーメントを含んでいる、
請求項１〜１２のいずれかに記載のモータ制御装置。
【請求項１４】
前記慣性負荷値は、慣性質量を含んでいる、
請求項１〜１２のいずれかに記載のモータ制御装置。
【請求項１５】
モータの負荷の慣性の大きさを示す慣性負荷値とモータ加速度指令とに基づいて出力指令演算部によりモータ出力指令を演算する出力指令演算工程と、
前記モータから出力されるモータ実出力と前記モータ出力指令とに基づき適応オブザーバを用いて慣性負荷値演算部により推定慣性負荷値を演算し、前記推定慣性負荷値に基づいて前記慣性負荷値演算部により前記慣性負荷値を演算する慣性負荷値演算工程と、
を備えたモータ制御方法。
【請求項１６】
前記モータ実出力と前記モータ出力指令とに基づいて出力補正値演算部により出力補正値を演算する出力補正値演算工程をさらに備え、
前記出力指令演算工程は、前記モータ加速度指令と前記慣性負荷値とに基づいて前記出力指令演算部により出力指令を演算する第１出力指令演算工程と、前記出力指令と前記出力補正値とに基づいて前記出力指令演算部により前記モータ出力指令を演算する第２出力指令演算工程と、を有している、
請求項１５に記載のモータ制御方法。
【請求項１７】
前記出力補正値演算工程では、前記モータの外乱を推定し前記出力補正値が演算される、
請求項１６に記載のモータ制御方法。
【請求項１８】
前記慣性負荷値演算工程では、前記慣性負荷値演算部により前記推定慣性負荷値を前記慣性負荷値として前記出力指令演算部に出力することで前記慣性負荷値を演算する、
請求項１５に記載のモータ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願に開示される技術は、モータ制御装置およびモータ制御方法に関する。
【背景技術】
【０００２】
モータを制御するための装置が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許６０４１０７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本願に開示される技術の課題は、例えば、モータ制御の安定性を高めることにある。
【課題を解決するための手段】
【０００５】
第１の特徴に係るモータ制御装置は、出力指令演算部および慣性負荷値演算部を備えている。出力指令演算部は、モータの負荷の慣性の大きさを示す慣性負荷値とモータ加速度指令とに基づいてモータ出力指令を演算する。慣性負荷値演算部は、モータから出力されるモータ実出力とモータ出力指令とに基づいて適応オブザーバを用いて推定慣性負荷値を演算し、推定慣性負荷値に基づいて慣性負荷値を演算する。
【０００６】
第２の特徴に係るモータ制御方法は、出力指令演算工程および慣性負荷値演算工程を備えている。出力指令演算工程では、モータの負荷の慣性の大きさを示す慣性負荷値とモータ加速度指令とに基づいて出力指令演算部によりモータ出力指令を演算する。慣性負荷値演算工程は、モータから出力されるモータ実出力とモータ出力指令とに基づき適応オブザーバを用いて慣性負荷値演算部により推定慣性負荷値を演算し、推定慣性負荷値に基づいて慣性負荷値演算部により慣性負荷値を演算する。
【発明の効果】
【０００７】
本願に開示される技術であれば、例えば、モータ制御の安定性を高めることができる。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態に係るモータ制御装置を有するモータ制御システムの概略ブロック図
【図２】図１に示すモータ制御装置のブロック図
【図３】図２に示すモータ制御装置の出力補正値演算部のブロック図
【図４】図２に示すモータ制御装置の慣性負荷値変更工程のフローチャート
【図５】図２に示すモータ制御装置のフローチャート
【図６】図２に示すモータ制御装置のフローチャート
【図７】慣性負荷値演算部の適応オブザーバで採用した制御対象のモデルを示すブロック図
【図８】（Ａ）〜（Ｄ）慣性負荷値演算部の適応オブザーバのシミュレーション結果
【図９】（Ａ）〜（Ｄ）慣性負荷値演算部の適応オブザーバのシミュレーション結果（位置制御モードでのゲインバランスによる振動の影響）
【図１０】（Ａ）〜（Ｄ）慣性負荷値演算部の適応オブザーバのシミュレーション結果（位置制御モードでの周期外乱による影響）
【図１１】（Ａ）および（Ｂ）慣性負荷値演算部の適応オブザーバのシミュレーションで用いる制御対象（２慣性系）の周波数特性
【図１２】（Ａ）〜（Ｄ）慣性負荷値演算部の適応オブザーバのシミュレーション結果（２慣性モデルに対するモデル化誤差の影響）
【図１３】（Ａ）および（Ｂ）慣性負荷値演算部の適応オブザーバのシミュレーションで用いる制御対象（３慣性系）の周波数特性
【図１４】（Ａ）〜（Ｄ）慣性負荷値演算部の適応オブザーバのシミュレーション結果（３慣性モデルに対するモデル化誤差の影響）
【図１５】（Ａ）および（Ｂ）慣性負荷値演算部の適応オブザーバのシミュレーションで用いる制御対象（４慣性系）の周波数特性
【図１６】（Ａ）〜（Ｄ）慣性負荷値演算部の適応オブザーバのシミュレーション結果（４慣性モデルに対するモデル化誤差の影響）
【図１７】（Ａ）〜（Ｄ）慣性負荷値演算部の適応オブザーバの他のシミュレーション結果（４慣性モデルに対するモデル化誤差の影響）
【図１８】慣性負荷値演算部の適応オブザーバの評価実験における動作条件（位置制御時）
【図１９】慣性負荷値演算部の適応オブザーバの評価実験結果（平均推定慣性モーメント比）
【図２０】（Ａ）および（Ｂ）慣性負荷値演算部の適応オブザーバの評価実験結果（無負荷、位置制御時、出力補正無効）
【図２１】（Ａ）および（Ｂ）慣性負荷値演算部の適応オブザーバの評価実験結果（２８倍剛体負荷、位置制御時、出力補正無効）
【図２２】（Ａ）および（Ｂ）慣性負荷値演算部の適応オブザーバの評価実験結果（無負荷、位置制御時、出力補正有効）
【図２３】（Ａ）および（Ｂ）慣性負荷値演算部の適応オブザーバの評価実験結果（２８倍剛体負荷、位置制御時、出力補正有効）
【図２４】第２実施形態に係るモータ制御装置のブロック図
【図２５】図２４に示すモータ制御装置のフローチャート
【図２６】（Ａ）慣性負荷値演算部の適応オブザーバの評価実験結果（２８倍剛体負荷、位置制御時、出力補正無効）、（Ｂ）慣性負荷値演算部がない場合の比較例の評価実験結果（２８倍剛体負荷、位置制御時、出力補正無効）
【発明を実施するための形態】
【０００９】
以下、実施形態について図面を参照しながら説明する。図中において同じ符号は、対応するまたは同一の構成を示している。
〔第１実施形態〕
＜モータ制御装置の構成＞
図１に示すように、モータ制御システム１は、第１実施形態に係るモータ制御装置１００、外部装置２、モータ４、駆動対象物８、およびモータ出力センサ９を備えている。モータ制御装置１００は、外部装置２から入力される外部指令２Ａに基づいてモータ４を制御する。モータ制御装置１００は外部指令２Ａを受信するように外部装置２に接続されている。モータ制御装置１００は交流電源６およびモータ４の間に配置されている。モータ制御装置１００は交流電源６から供給される交流電圧を外部指令２Ａに応じて変調してモータ４に伝達する。モータ４は駆動対象物８に連結されている。モータ制御装置１００は外部指令２Ａに基づいて、モータ４が駆動対象物８を駆動するようにモータ４を制御する。
【００１０】
本実施形態では、制御対象として回転モータを例にモータ制御装置１００について説明するが、ここに開示される技術はリニアモータの制御およびその他のモータ４の制御にも適用可能である。モータ４は回転モータであるが、モータ４はリニアモータなどの他のモータであってもよい。本実施形態では、制御方式を位置制御としてモータ制御装置１００について説明するが、モータ制御装置１００の制御方式は速度制御であってもよい。
【００１１】
図１に示すように、モータ４はベース部材４Ａおよび可動部材４Ｂを有している。本実施形態のようにモータ４が回転モータの場合、可動部材４Ｂはベース部材４Ａに対して回転可能に設けられたロータを有している。
【００１２】
モータ４のモータ実出力Ｘはモータ出力センサ９により検出される。具体的には、可動部材４Ｂの現在位置（絶対位置）がモータ実出力Ｘとしてモータ出力センサ９により検出される。モータ出力センサ９は一定の周期でモータ実出力Ｘを検出する。モータ出力センサ９はモータ制御装置１００に接続されている。モータ実出力Ｘ（現在位置）は一定の周期でモータ制御装置１００に入力される。例えば、モータ出力センサ９はエンコーダを有している。本実施形態のようにモータ４が回転モータの場合、モータ出力センサ９は、ベース部材４Ａに対する可動部材４Ｂの回転位置を検出するロータリエンコーダを有している。
【００１３】
本実施形態では、モータ制御装置１００が位置制御を行うので、外部指令２Ａはモータ４の目標位置（可動部材４Ｂの目標位置）を示す位置指令を含んでいる。しかし、モータ制御装置１００が速度制御を行う場合、外部指令２Ａはモータ４の目標速度（可動部材４Ｂの目標速度）を示す速度指令を含み得る。
【００１４】
図１に示すように、モータ制御装置１００は電流制御部１０、プロセッサ２０、およびインターフェース２５を有している。電流制御部１０は交流電源６およびモータ４の間に配置されている。電流制御部１０は、交流電源６から供給される交流電圧をプロセッサ２０から入力される指令に基づいて変調し、モータ４の駆動電圧を生成する。本実施形態では、モータ制御装置１００が電流制御部１０を有しているが、電流制御部１０はモータ制御装置１００とは別の装置であってもよい。
【００１５】
プロセッサ２０はＣＰＵ（Central Processing Unit）２１、メモリ２２、基板２３、およびシステムバス２４を有している。ＣＰＵ２１、メモリ２２、およびシステムバス２４は基板２３上に設けられている。インターフェース２５はシステムバス２４に電気的に接続されている。ＣＰＵ２１、メモリ２２、およびインターフェース２５は基板２３およびシステムバス２４を介して互いに通信が可能なように電気的に接続されている。インターフェース２５は外部装置２およびモータ出力センサ９に接続されるよう構成されている。インターフェース２５は外部装置２およびモータ出力センサ９から受信する信号をプロセッサ２０に伝達する。
【００１６】
メモリ２２はＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）を有している。例えば、メモリ２２に記憶されたプログラムがＣＰＵ２１に読み込まれることにより、以下に説明するモータ制御装置１００の構成の少なくとも一部が実現される。すなわち、ＣＰＵ２１、メモリ２２、基板２３、およびシステムバス２４はモータ制御装置１００の制御回路を構成している。つまり、プロセッサ２０は制御回路２０と言い換えることができる。
【００１７】
なお、プロセッサ２０の構成は本実施形態に限定されない。例えば、ＣＰＵ２１およびメモリ２２が一体の集積回路で構成されていてもよい。
【００１８】
図２に示すように、モータ制御装置１００は位置偏差演算部３０、速度指令演算部４０、および加速度指令演算部５０を備えている。位置偏差演算部３０は外部指令２Ａ（位置指令）とモータ実出力（現在位置）Ｘとの位置偏差ｕｅを演算する。速度指令演算部４０は位置偏差ｕｅに基づいて位置偏差ｕｅが小さくなるように速度指令Ｖを演算する。加速度指令演算部５０は速度指令Ｖに基づいてモータ加速度指令Ａを演算する。
【００１９】
メモリ２２はモータ実出力Ｘ、位置偏差ｕｅ、速度指令Ｖ、およびモータ加速度指令Ａを記憶する。モータ出力センサ９によりモータ実出力Ｘが検出されるたびに、メモリ２２に記憶されているモータ実出力Ｘは最新の値に更新される。同様に、位置偏差ｕｅ、速度指令Ｖ、および加速度指令ａの最新の値がメモリ２２に記憶される。
【００２０】
本実施形態では、位置偏差演算部３０、速度指令演算部４０、および加速度指令演算部５０は別の演算部として構成されているが、位置偏差演算部３０、速度指令演算部４０、および加速度指令演算部５０のうち少なくとも２つが一体であってもよい。また、位置偏差演算部３０、速度指令演算部４０、および加速度指令演算部５０のうち少なくとも１つはモータ制御装置１００以外の装置として構成されていてもよい。
【００２１】
図２に示すように、モータ制御装置１００は出力指令演算部６０を備えている。出力指令演算部６０はモータ４の負荷の慣性の大きさを示す慣性負荷値Ｊ０とモータ加速度指令Ａとに基づいてモータ出力指令Ｔｒを演算する。モータ４の負荷とは、例えば、モータ４の可動部材４Ｂと可動部材４Ｂに連結された駆動対象物８との総負荷を示している。本実施形態では、モータ４が回転モータであるので、慣性負荷値は慣性モーメントを含んでいる。また、本実施形態では、モータ４が回転モータであるので、モータ出力指令Ｔｒはトルク指令を含んでいる。
【００２２】
メモリ２２（図１）は出力指令演算部６０で演算されたモータ出力指令Ｔｒを記憶する。出力指令演算部６０がモータ出力指令Ｔｒを演算するたびに、メモリ２２に記憶されているモータ出力指令Ｔｒは最新の値に更新される。
【００２３】
図２に示すように、モータ制御装置１００は慣性負荷値演算部７０を備えている。慣性負荷値演算部７０は、モータ４から出力されるモータ実出力Ｘとモータ出力指令Ｔｒとに基づいて適応オブザーバを用いて推定慣性負荷値ＪＥを演算し、推定慣性負荷値ＪＥに基づいて慣性負荷値Ｊ０を演算する。本実施形態では、慣性負荷値演算部７０は、モータ加速度指令Ａとモータ加速度指令Ａよりも上流側の指令とを直接用いることなく、モータ実出力Ｘとモータ出力指令Ｔｒとに基づき適応オブザーバを用いて推定慣性負荷値ＪＥを演算する。また、慣性負荷値演算部７０は、モータ実出力Ｘとモータ出力指令Ｔｒとに基づき適応オブザーバを用いて推定慣性負荷値ＪＥおよび推定粘性抵抗係数ＤＥを演算する。推定粘性抵抗係数ＤＥはモータ４および駆動対象物８の総粘性抵抗係数の推定値である。粘性抵抗係数には粘性摩擦係数が含まれる。
【００２４】
ここで、モータ制御装置１００においては、外部装置２が上流側の機器に相当し、モータ４が下流側の機器に相当する。したがって、モータ加速度指令Ａよりも上流側の指令としては、例えば、外部指令２Ａ、位置偏差ｕｅ、および速度指令Ｖが挙げられる。
【００２５】
メモリ２２（図１）は慣性負荷値演算部７０で演算された慣性負荷値Ｊ０を記憶する。慣性負荷値演算部７０が慣性負荷値Ｊ０を演算するたびに、メモリ２２に記憶されている慣性負荷値Ｊ０は最新の値に更新される。同様に、メモリ２２は慣性負荷値演算部７０で演算された推定慣性負荷値ＪＥを記憶する。慣性負荷値演算部７０が推定慣性負荷値ＪＥを演算するたびに、メモリ２２に記憶されている推定慣性負荷値ＪＥは最新の値に更新される。
【００２６】
メモリ２２（図１）は慣性負荷値Ｊ０の初期値および推定慣性負荷値ＪＥの初期値を記憶している。本実施形態では、慣性負荷値Ｊ０の初期値および推定慣性負荷値ＪＥの初期値は、モータ４の可動部材４Ｂの慣性の大きさを示す基準慣性負荷値ＪＭである。慣性負荷値Ｊ０の演算がなされていない初期状態（例えば、電源投入時）では、メモリ２２に記憶された初期値（基準慣性負荷値ＪＭ）が慣性負荷値Ｊ０として用いられる。推定慣性負荷値ＪＥの演算がなされていない初期状態では、メモリ２２に記憶された慣性負荷値Ｊ０の初期値（基準慣性負荷値ＪＭ）が推定慣性負荷値ＪＥとして用いられる。慣性負荷値演算部７０の詳細については後述する。
【００２７】
なお、後述するように、推定粘性抵抗係数ＤＥの推定誤差は推定慣性負荷値ＪＥの推定誤差よりも大きくなるので、推定粘性抵抗係数ＤＥはモータ制御装置１００での制御には用いられない。
【００２８】
図２に示すように、モータ制御装置１００は出力補正値演算部８０をさらに備えている。出力補正値演算部８０はモータ実出力Ｘとモータ出力指令Ｔｒとに基づいて出力補正値Ｔｃを演算する。本実施形態では、モータ制御装置１００は実速度演算部８８を備えている。実速度演算部８８はモータ４のモータ実出力Ｘを微分することでモータ４の実速度ＶＲを演算する。出力補正値演算部８０は実速度ＶＲとモータ出力指令Ｔｒとに基づいて出力補正値Ｔｃを演算する。出力補正値演算部８０はモータ４の外乱を推定し出力補正値Ｔｃを演算する。具体的には、出力補正値演算部８０は外乱オブザーバを用いて出力補正値Ｔｃを演算する。しかし、出力補正値演算部８０は、外乱オブザーバに限定されず、他の構成で出力補正値Ｔｃを演算してもよい。本実施形態のようにモータ４は回転モータの場合、出力補正値Ｔｃはトルク補正値を有している。出力補正値Ｔｃは出力指令演算部６０でのモータ出力指令Ｔｒの演算に用いられる。
【００２９】
メモリ２２（図１）は出力補正値演算部８０で演算された出力補正値Ｔｃを記憶する。出力補正値演算部８０が出力補正値Ｔｃを演算するたびに、メモリ２２に記憶されている出力補正値Ｔｃは最新の値に更新される。
【００３０】
出力指令演算部６０は第１出力指令演算部６１および第２出力指令演算部６２を有している。第１出力指令演算部６１はモータ加速度指令Ａと慣性負荷値Ｊ０とに基づいて出力指令Ｔを演算する。第２出力指令演算部６２は出力指令Ｔと出力補正値Ｔｃとに基づいてモータ出力指令Ｔｒを演算する。具体的には、第１出力指令演算部６１はモータ加速度指令Ａに慣性負荷値Ｊ０を乗算して出力指令Ｔを演算する。本実施形態のようにモータ４が回転モータの場合、出力指令Ｔはトルク指令に対応している。第２出力指令演算部６２は出力指令Ｔに出力補正値Ｔｃを加算してモータ出力指令Ｔｒを演算する。第２出力指令演算部６２および出力補正値演算部８０により出力指令Ｔが補正される。本実施形態では、出力指令演算部６０が第１出力指令演算部６１および第２出力指令演算部６２を有しているが、出力指令演算部６０の構成は本実施形態に限定されない。
【００３１】
図３に示すように、出力補正値演算部８０は外乱を受けるモデル（ノミナルモデル）を組み込んだ状態オブザーバとして設計される外乱オブザーバを有している。本実施形態では、出力補正値演算部８０は、電流ループモデル８１、共振抑制モデル８２、第１等価ローパスフィルタ８３、第２等価ローパスフィルタ８４、減算器８５、ローパスフィルタ８６、およびゲイン乗算器８７を有している。
【００３２】
電流ループモデル８１は電流制御系ループの影響により機械共振のゲインが増大するのを抑制する。電流ループモデル８１はモータ出力指令Ｔｒに対して近似的に電流制御系ループの遅れを加味したモータ出力指令信号を生成する。
【００３３】
共振抑制モデル８２は理想モータの加速度トルク信号（ノミナルモデルで仮定した理想的なモータが加減速に使うトルク成分）を生成する。具体的には、共振抑制モデル８２は第１逆システム８２Ａおよび第２逆システム８２Ｂを有している。第１逆システム８２Ａは、周波数特性制御器の逆システムであり、モータ４の実速度ＶＲの周波数特性を制御する。第２逆システム８２Ｂは、駆動対象物８の機械剛体系の逆システムであり、第１逆システム５１の出力（モータ４が駆動する駆動対象物８の加速度）に対してモータ４の可動部材４Ｂの基準慣性負荷値ＪＭを乗算し、さらに演算子ｓも合わせて乗算する。
【００３４】
第１等価ローパスフィルタ８３および第２等価ローパスフィルタ８４は外乱オブザーバの周波数帯域を決めるフィルタである。第１等価ローパスフィルタ８３は電流ループモデル８１で生成されたモータ出力信号から高周波成分を除去する。第２等価ローパスフィルタは共振抑制モデル８２で生成された基準加速度信号から高周波成分を除去する。減算器８５は第２等価ローパスフィルタ８４を通過した信号を、第１等価ローパスフィルタ８３を通過した信号から減算して推定外乱出力ｄＥを演算する。推定外乱出力ｄＥはモータ４の可動部材４Ｂに作用する外乱出力（例えば、外乱トルク）の推定値である。ローパスフィルタ８６は時定数で設定された高調波雑音を推定外乱出力ｄＥから除去する。ゲイン乗算器８７は所定のゲインを用いて推定外乱出力ｄＥを調整し出力補正値Ｔｃを演算する。
【００３５】
図２に示すように、慣性負荷値演算部７０は推定慣性負荷値演算部７１および慣性負荷値変更部７２を有している。推定慣性負荷値演算部７１はモータ実出力Ｘとモータ出力指令Ｔｒとに基づき適応オブザーバを用いて推定慣性負荷値ＪＥを演算する。慣性負荷値変更部７２は推定慣性負荷値ＪＥに基づいて慣性負荷値Ｊ０を変更する。推定慣性負荷値演算部７１はモータ実出力Ｘとモータ出力指令Ｔｒとに基づき適応オブザーバを用いて推定慣性負荷値ＪＥおよび推定粘性抵抗係数ＤＥを演算する。
【００３６】
慣性負荷値演算部７０は第１状態量演算部７３、第２状態量演算部７４および適応同定演算部７５を有している。第１状態量演算部７３は状態設定値ｇ１とモータ実出力Ｘとに基づいて第１状態量Ｚ１を演算する。第２状態量演算部７４は状態設定値ｇ１とモータ出力指令Ｔｒとに基づいて第２状態量Ｚ２を演算する。適応同定演算部７５は第１状態量Ｚ１と第２状態量Ｚ２とに基づいて推定慣性負荷値ＪＥを演算する。第１状態量演算部７３および第２状態量演算部７４は適応オブザーバの状態変数フィルタに相当する。
【００３７】
状態設定値ｇ１は、第１状態量Ｚ１および第２状態量Ｚ２を演算するための設定値であり、メモリ２２に記憶されている。適応オブザーバを利用することで、慣性負荷値演算部７０は推定慣性負荷値ＪＥを比較的短時間でかつ正確に演算することができる。適応オブザーバについては後述する。
【００３８】
図４は慣性負荷値変更部７２の慣性負荷値変更処理のフローチャートを示している。図４に示すように、慣性負荷値変更部７２は基準慣性負荷範囲と推定慣性負荷値ＪＥとに基づいて慣性負荷値Ｊ０を変更する。具体的には、慣性負荷値変更部７２は、モータ４の可動部材４Ｂの慣性の大きさを示す基準慣性負荷値ＪＭを慣性負荷値Ｊ０の初期値として設定する（ステップＳ１）。慣性負荷値Ｊ０はメモリ２２（図１）に記憶される。慣性負荷値変更部７２は、基準慣性負荷値ＪＭに対する、推定慣性負荷値ＪＥから基準慣性負荷値ＪＭを減算して得られた対象慣性負荷値ＪＬの割合（ＪＬ／ＪＭ）を推定慣性負荷比ＲＥとして演算する（ステップＳ２）。対象慣性負荷値ＪＬは可動部材４Ｂに連結された駆動対象物８の慣性負荷値の推定値である。
【００３９】
ここで、基準慣性負荷範囲は、出力指令演算部６０で用いられる慣性負荷値Ｊ０が駆動対象物８に対して適切な値に設定されているか否かを判定するための基準範囲である。推定慣性負荷比ＲＥが基準慣性負荷範囲内にある場合、出力指令演算部６０で用いられる慣性負荷値Ｊ０は駆動対象物８に対して比較的適切な値に設定されていると判断できる。
【００４０】
一方、推定慣性負荷比ＲＥが基準慣性負荷範囲内にない場合、出力指令演算部６０で用いられる慣性負荷値Ｊ０をより適切な値に変更した方が制御の安定性を高められると判断できる。したがって、本実施形態では、慣性負荷値変更部７２は、推定慣性負荷比ＲＥが基準慣性負荷範囲内にない場合、慣性負荷値Ｊ０を変更する。一方、慣性負荷値変更部７２は、推定慣性負荷比ＲＥが基準慣性負荷範囲内にある場合、慣性負荷値Ｊ０を変更しない。
【００４１】
基準慣性負荷範囲は上限値ＲＵおよび下限値ＲＬを有している。上限値ＲＵは下限値ＲＬよりも大きい。本実施形態では、基準慣性負荷範囲は、慣性負荷比の範囲として規定されている。したがって、上限値ＲＵおよび下限値ＲＬは慣性負荷比に相当する。例えば、基準慣性負荷範囲は慣性負荷比１０〜２０倍の範囲に相当する場合、上限値ＲＵは２０であり、下限値ＲＬは１０である。メモリ２２は基準慣性負荷範囲の上限値ＲＵおよび下限値ＲＬを記憶している。本実施形態では、基準慣性負荷範囲の上限値ＲＵおよび下限値ＲＬは固定値であるが、例えば、基準慣性負荷範囲の上限値ＲＵおよび下限値ＲＬはユーザにより設定されてもよいし演算により算出されてもよい。なお、慣性負荷比は、基準慣性負荷値ＪＭに対する、駆動対象物８の慣性の大きさを示す実対象慣性負荷値ＪＬＲの割合（ＪＬＲ／ＪＭ）である。
【００４２】
図４に示すように、慣性負荷値変更部７２は、推定慣性負荷比ＲＥが基準慣性負荷範囲の上限値ＲＵよりも大きい場合に、慣性負荷値Ｊ０を増加させる（ステップＳ３およびＳ４）。具体的には、慣性負荷値変更部７２は、推定慣性負荷比ＲＥが基準慣性負荷範囲の上限値ＲＵよりも大きい場合に、推定慣性負荷値ＪＥを用いて慣性負荷値Ｊ０を増加させる（ステップＳ３およびＳ４）。本実施形態では、推定慣性負荷比ＲＥと上限値ＲＵとの差が大きいほど慣性負荷値Ｊ０が増加するように、例えば、以下の式により新たに慣性負荷値Ｊ０を設定する。
【００４３】
2019097268.tif 000003
【００４４】
例えば、上限値ＲＵが２０かつ推定慣性負荷比ＲＥが６０の場合、（６０／２０）×ＪＭ＝３×ＪＭを慣性負荷値Ｊ０に加算して新たに慣性負荷値Ｊ０として設定する。
【００４５】
一方、慣性負荷値変更部７２は、推定慣性負荷比ＲＥが基準慣性負荷範囲の上限値ＲＵ以下の場合は、推定慣性負荷比ＲＥを基準慣性負荷範囲の下限値ＲＬと比較する（ステップＳ３、Ｓ５）。慣性負荷値変更部７２は、推定慣性負荷比ＲＥが基準慣性負荷範囲の下限値ＲＬよりも小さい場合に、慣性負荷値Ｊ０を減少させる（ステップＳ５、Ｓ６、およびＳ７）。具体的には、慣性負荷値変更部７２は、推定慣性負荷比ＲＥが基準慣性負荷範囲の下限値ＲＬよりも小さい場合に、推定慣性負荷値ＪＥを用いて慣性負荷値Ｊ０を減少させる（ステップＳ５、Ｓ６、およびＳ７）。本実施形態では、慣性負荷値変更部７２は、推定慣性負荷比ＲＥが基準慣性負荷範囲の下限値ＲＬよりも小さい場合に、慣性負荷値Ｊ０が基準慣性負荷値ＪＭ以上であるか否かを判定する（ステップＳ５およびＳ６）。慣性負荷値Ｊ０が基準慣性負荷値ＪＭ未満の場合は、慣性負荷値Ｊ０を減少させることなく、処理がステップＳ２に戻る（ステップＳ６）。一方、慣性負荷値Ｊ０が基準慣性負荷値ＪＭ以上である場合は、推定慣性負荷比ＲＥと下限値ＲＬとの差が大きいほど慣性負荷値Ｊ０が減少するように、例えば、以下の式により新たに慣性負荷値Ｊ０を設定する（ステップＳ６およびＳ７）。
【００４６】
2019097268.tif 000004
【００４７】
例えば、下限値ＲＬが１０かつ推定慣性負荷比ＲＥが６の場合、（（１０−６）／１０）×ＪＭ＝０．４×ＪＭを慣性負荷値Ｊ０から減算して新たに慣性負荷値Ｊ０として設定する。
【００４８】
このように、ステップＳ４およびＳ７において推定慣性負荷比ＲＥを用いて慣性負荷値Ｊ０を新たに演算することで、仮に推定慣性負荷値ＪＥの推定誤差が瞬間的に大きくなったとしても、モータ制御への影響を低減でき、モータ制御の安定性を全体として高めることができる。
【００４９】
なお、ステップＳ４およびＳ７において、推定慣性負荷値ＪＥをそのまま慣性負荷値Ｊ０として設定することも可能である（つまり、Ｊ０＝ＪＥ）。この場合、慣性負荷値変更処理の処理速度が向上する。
【００５０】
また、本実施形態では、モータ制御装置１００の制御の安定性に余裕を持たせるために、基準慣性負荷範囲はモータ制御装置１００の慣性負荷比の補償範囲よりも狭く設定されている。しかし、基準慣性負荷範囲は慣性負荷比の補償範囲と同じであってもよい。
【００５１】
図２に示すように、モータ制御装置１００は補正モード切替部９０を有している。出力補正値演算部８０は出力補正有効モードおよび出力補正無効モードを有している。補正モード切替部９０は、外部装置２から入力される補正モード切替指令２Ｂに応じて出力補正値演算部８０のモードを出力補正有効モードおよび出力補正無効モードの間で切り替える。
【００５２】
出力補正有効モードでは、前述のように、出力補正値演算部８０で演算された出力補正値Ｔｃを用いて出力指令Ｔが補正されモータ出力指令Ｔｒが演算される。また、出力補正有効モードでは、慣性負荷値変更部７２により推定慣性負荷値ＪＥを用いて慣性負荷値Ｊ０が変更される。
【００５３】
一方、出力補正無効モードでは、出力補正値演算部８０および慣性負荷値変更部７２の機能が無効となる。具体的には、出力補正無効モードでは、出力補正値Ｔｃは０となり、出力指令Ｔがそのままモータ出力指令Ｔｒとして用いられる。また、出力補正無効モードでは、慣性負荷値変更部７２の処理が無効となるので、推定慣性負荷値演算部７１で演算された推定慣性負荷値ＪＥがそのまま慣性負荷値Ｊ０として出力指令演算部６０で用いられる。つまり、出力補正無効モードでは、モータ制御装置１００の構成が後述の第２実施形態に係るモータ制御装置２００の構成と概ね同じとなる。
＜モータ制御方法＞
図５および図６を参照しながら、モータ制御装置１００を用いたモータ制御方法について説明する。
【００５４】
図５および図６に示すように、第１実施形態に係るモータ制御方法は、モード検出工程、速度指令演算工程、加速度指令演算工程、出力指令演算工程、出力補正値演算工程、慣性負荷値演算工程、および慣性負荷値変更工程を備えている。
【００５５】
モード検出工程Ｓ１１では、補正モード切替指令２Ｂに基づいて、出力補正有効モードおよび出力補正無効モードのいずれがモータ制御装置１００のモードとして選択されているか補正モード切替部９０により検出される。図５に示すように、出力補正有効モードが選択されている場合、ステップＳ１２〜Ｓ１７が実行される。図５および図６に示すように、出力補正無効モードが選択されている場合、ステップＳ２２〜Ｓ２６が実行される。
【００５６】
図５に示すように、出力補正有効モードが選択されている場合、位置偏差演算工程Ｓ１２において、外部指令２Ａおよびモータ実出力Ｘに基づいて位置偏差演算部３０により位置偏差ｕｅを演算する。速度指令演算工程Ｓ１３では、位置偏差ｕｅに基づいて速度指令演算部４０により速度指令Ｖを演算する。加速度指令演算工程Ｓ１４では、速度指令Ｖに基づいて加速度指令演算部５０によりモータ加速度指令Ａを演算する。
【００５７】
出力指令演算工程Ｓ１５では、慣性負荷値Ｊ０とモータ加速度指令Ａとに基づいて出力指令演算部６０によりモータ出力指令Ｔｒを演算する。具体的には、出力指令演算工程Ｓ１５は、第１出力指令演算工程Ｓ１５Ａおよび第２出力指令演算工程Ｓ１５Ｂを有している。第１出力指令演算工程Ｓ１５Ａでは、モータ加速度指令Ａと慣性負荷値Ｊ０とに基づいて出力指令演算部６０により出力指令Ｔを演算する。第２出力指令演算工程Ｓ１５Ｂでは、出力指令Ｔと出力補正値Ｔｃとに基づいて出力指令演算部６０によりモータ出力指令Ｔｒを演算する。
【００５８】
出力補正値演算工程Ｓ１６では、モータ実出力Ｘとモータ出力指令Ｔｒとに基づいて出力補正値演算部８０により出力補正値Ｔｃを演算する。出力補正値演算工程Ｓ１６では、モータ４の外乱を推定し出力補正値Ｔｃが演算される。
【００５９】
慣性負荷値演算工程Ｓ１７では、モータ実出力Ｘとモータ出力指令Ｔｒとに基づき適応オブザーバを用いて慣性負荷値演算部７０により推定慣性負荷値ＪＥを演算し、推定慣性負荷値ＪＥに基づいて慣性負荷値演算部７０により慣性負荷値Ｊ０を演算する。具体的には、慣性負荷値演算工程Ｓ１７は推定慣性負荷値演算工程Ｓ１７Ａおよび慣性負荷値変更工程Ｓ１７Ｂを有している。推定慣性負荷値演算工程Ｓ１７Ａでは、モータ実出力Ｘとモータ出力指令Ｔｒとに基づき適応オブザーバを用いて推定慣性負荷値演算部７１により推定慣性負荷値ＪＥを演算する。慣性負荷値変更工程Ｓ１７Ｂでは、推定慣性負荷値ＪＥに基づいて慣性負荷値変更部７２により慣性負荷値Ｊ０を変更する。図４に示すように、慣性負荷値変更工程はステップＳ１〜Ｓ７を有している。慣性負荷値変更工程Ｓ１７Ｂの詳細はすでに説明した通りであるので、その詳細な説明は省略する。
【００６０】
なお、図５および図６に示すフローチャートは、便宜上、前述の工程が時系列に並んでいるように表現されているが、前述の工程の順序は図５および図６に限定されず、前述の工程のうち少なくとも１つが他の工程と並行して実行されてもよい。
【００６１】
図５および図６に示すように、出力補正無効モードが選択されている場合、位置偏差演算工程Ｓ２２、速度指令演算工程Ｓ２３、加速度指令演算工程Ｓ２４、出力指令演算工程Ｓ２５、および慣性負荷値演算工程Ｓ２６が実行される。これらの工程Ｓ２２〜２６は、それぞれ図５の工程Ｓ１２〜Ｓ１５およびＳ１７と同じであるが、出力補正有効モードと異なり、出力補正無効モードでは出力補正値演算工程Ｓ１６は省略されている。したがって、出力補正無効モードではモータ出力指令Ｔｒは出力補正値Ｔｃで補正されずに出力指令Ｔがそのままモータ出力指令Ｔｒとなる。
＜適応オブザーバの構成＞
以上に説明したように、モータ制御装置１００では、出力補正値演算部８０とは異なり、適応オブザーバを用いて推定慣性負荷値ＪＥを演算している。ここで、推定慣性負荷値演算部７１に適用される適応オブザーバについて詳細に説明する。なお、著書「オブザーバ」（コロナ社、岩井善太ほか）は参照することにより本願に組み込まれる。
【００６２】
推定慣性負荷値演算部７１の適応オブザーバでは、制御対象の入力信号（モータ出力指令Ｔｒ）および出力信号（モータ実出力Ｘ）を入力とする２つの状態変数フィルタ（第１状態量演算部７３および第２状態量演算部７４）の出力信号（Ｚ１、Ｚ２）をそれぞれ用いて制御対象を表現する。さらに、推定慣性負荷値演算部７１の適応オブザーバでは、制御対象に対してパラメータ同定機構を導入し、パラメータ推定誤差の状態推定誤差に及ぼす影響を時間の経過とともに減少させる。
【００６３】
まず、次式（１）および（２）で表現される１入出力可制御かつ可観測なｎ次制御対象を考える。
【００６４】
2019097268.tif 000005
【００６５】
ここで、ｘはｎ次元状態ベクトルを示している。ｕおよびｙは、スカラー入力およびスカラー出力であり、検出可能な量とする。また、ｎ×ｎ行列Ａ、ｎ次ベクトルｂおよびｃの要素は未知かつ定数であるとする。式（１）および（２）は可制御かつ可観測であるので、式（１）および（２）は以下の式（３）の伝達関数表示と等価な最小実現形式になっていると推測できる。
【００６６】
2019097268.tif 000006
【００６７】
このことは、式（３）の（αｉ,βｉ）,ｉ＝１,２,・・・ｎで代表されるように、式（１）および（２）で表現される制御対象における本質的に未知なパラメータの個数は２ｎであることを意味している。したがって、式（１）および（２）は状態設定値を適切に選ぶことで、次の２ｎ個の未知パラメータを含む可観測標準形で表現されるものとして一般性を失わない。
【００６８】
2019097268.tif 000007
【００６９】
ここで、ａおよびｂは、それぞれｎ次の未知定数ベクトルを示しており、ｈおよびＦはそれぞれｎ−１次既知ベクトルおよび（ｎ−１）×（ｎ−１）次既知行列である。ただし、（ｈＴ,Ｆ）は可観測ペアでなければならない。ここでは、ｈおよびＦは、例えば以下のように表現すればよい。
【００７０】
2019097268.tif 000008
【００７１】
ここで、次の漸近安定なｎ×ｎ行列Ｇを導入する。
【００７２】
2019097268.tif 000009
【００７３】
（ｈＴ,Ｆ）は可観測ペアであるので、（ｃＴ,Ｇ）も可観測ペアとなる。このＧを用いると、式（４）および（５）は以下のように書き改めることができる。
【００７４】
2019097268.tif 000010
【００７５】
式（６）および（７）は、適応オブザーバの構成に適した最小実現形式である。
【００７６】
さらに、この形式から以下に述べる制御対象の非最小実現形式が導かれる。ここでは、制御対象の非最小実現形式としてKreisselmeier形式（Ｋ形）を採用した場合について説明する。制御対象の入力ｕおよび出力ｙを入力とする、以下のｎ×ｎ行列フィルタとｎ次状態変数フィルタを考える。
【００７７】
2019097268.tif 000011
【００７８】
このとき、式（６）および（７）で表現される制御対象は、上式（８）および（９）を用いて以下のように表現することができる。
【００７９】
2019097268.tif 000012
【００８０】
上式（１０）および（１１）を制御対象のＫ形表現と呼び、ｚ（ｔ）を回帰ベクトルと呼ぶ。
【００８１】
ここで、Ｐ（ｔ）、ｚ（ｔ）、Θ、ｆｅ（ｔ）、およびｆ（ｔ）を以下のように定義する。
【００８２】
2019097268.tif 000013
【００８３】
このとき、状態推定誤差、出力推定誤差、およびパラメータ推定誤差をそれぞれ以下のようにおく。
2019097268.tif 000014
【００８４】
式（１０）、（１１）、（１４）、および（１５）より以下の式が成立する。
2019097268.tif 000015
【００８５】
本実施形態では重み付き最小２乗法に基づく適応同定則を用いる。
2019097268.tif 000016
【００８６】
対応する誤差モデルは以下のようになる。
【００８７】
2019097268.tif 000017
【００８８】
ここで、パラメータ推定値は次の重み付き誤差２乗積分を最小とするように定めるものとする。λ（≧０）は重み係数である。
2019097268.tif 000018
【００８９】
Γ（ｔ）を正則と仮定した上で上式を微分すると以下の式が得られる。
【００９０】
2019097268.tif 000019
【００９１】
ただし、Γ（０）＝γＩ２ｎ（γは微小な正数）である。式（１６）および（１７）を重み付き最小２乗適応同定則という。
【００９２】
ここで、式（１）および（２）に相当する制御対象として図７のモデルを考える。このモデルでは、モータ出力指令Ｔｒを入力すると、慣性負荷値Ｊおよび粘性摩擦係数Ｄの影響により駆動対象物が速度ｖで移動することを意味している。具体的には、図７の制御対象を式で表記すると次式（１８）および（１９）となる。
【００９３】
2019097268.tif 000020
【００９４】
ここで、ｘ、ｕ、ａ、ｈ、Ｆ、およびｂを以下のようにおくと、Ｇ＝ｇ１（ｇ１は任意の実数）となる。
2019097268.tif 000021
【００９５】
式（１８）および（１９）は、式（６）および（７）に相当する式として次のように変形することができる。
2019097268.tif 000022
【００９６】
式（２０）および（２１）が最小実現形式となるので、Ｋ形非最小実現形式に変形するためにΘを以下のようにおく。
2019097268.tif 000023
【００９７】
式（１１）に相当する式として次式を得る。      
2019097268.tif 000024
【００９８】
式（１５）のように適応オブザーバを構成すると以下の式が得られる。   
2019097268.tif 000025
【００９９】
ただし、Γ＝ΓＴ＞０であり、行列Γの初期値を以下のようにおく。
2019097268.tif 000026
【０１００】
また、ｅは以下の式（２５）を示している。
2019097268.tif 000027
【０１０１】
2019097268.tif 000028
【０１０２】
式（２６）および（２７）をラプラス変換して変形すると式（２８）および（２９）が得られる。 
2019097268.tif 000029
【０１０３】
式（２８）および（２９）が回帰ベクトルの導出式であり、状態変数フィルタに相当する。さらに、式（１７）に相当する式として式（３０）を導入する。
2019097268.tif 000030
【０１０４】
式（２９）を逐次計算すれば、行列Γを得ることができる。周波数λは、式（３０）をラプラス変換すると１次ローパスフィルタのカットオフ周波数に相当し、周波数λが大きいほど行列Γの収束までの時間が短くなる。
2019097268.tif 000031
【０１０５】
なお、例えば、式（２８）が第１状態量演算部７３に対応しており、式（２９）が第２状態量演算部７４に対応している。式（３０）が適応同定演算部７５に対応している。
＜推定慣性負荷値演算手法のシミュレーション結果＞
前述の適応オブザーバについて、振動外乱の影響およびモデル化誤差の影響をシミュレーションにより確認した。各シミュレーションは回転モータを想定して行った。以下、各シミュレーション結果について説明する。
（１）トルク制御モードでの振動の影響
制御対象を以下のような剛体として定義する。
【０１０６】
慣性モーメントＪの真値〔ｋｇｍ３〕＝０．２６３×１０−３
粘性摩擦係数Ｄの真値〔−〕＝０．０００１
状態変数フィルタのカットオフ周波数ｇ１＝−２π×１００
Γの初期値γ＝１．０×１０−６
重み係数λ＝１０００
この制御対象に対して、定格トルク１０％で１００ｍｓの加減速を行い、加減速の間に２００ｍｓの０％トルク指令を入力した。また、周期外乱として定格トルク０．１％（周波数１０Ｈｚ）を入力した。さらに、重み係数λを１から１０００まで大きくして推定誤差が０になるまでの時間をシミュレーションにより確認した。
【０１０７】
図８（Ａ）〜図８（Ｄ）にシミュレーション結果を示す。図８（Ａ）はトルク指令の変化を示している。図８（Ｂ）はモータ速度の変化を示している。図８（Ｃ）は推定誤差の変化を示している。図８（Ｄ）は粘性摩擦係数の推定値（点線）および慣性モーメントの推定値（実線）の変化を示している。図８（Ｃ）では前述の式（２５）に相当する値をプロットしている。
【０１０８】
図８（Ｃ）から分かるように、約２５ｍｓで推定誤差は０になっている。また、図８（Ｄ）から分かるように、推定誤差が０になった後の推定粘性摩擦係数は０．０００１、推定慣性モーメントは０．２６３×１０−３であり、制御対象の粘性摩擦係数および慣性モーメントの真値を正しく推定できている。
（２）位置制御モードでのゲインバランスによる振動の影響
通常、制御対象（例えば、モータ４および駆動対象物８）の慣性モーメント比（慣性負荷比）の真値に対して演算に用いられる設定慣性モーメント比が小さい場合、位置ループゲインと速度ループゲインのバランスが崩れて振動が発生することがある。したがって、制御対象の実慣性モーメント比を１０００％、設定慣性モーメント比を０％（無負荷）と設定し、シミュレーションを行った。
【０１０９】
図９（Ａ）〜図９（Ｄ）にシミュレーション結果を示す。図９（Ａ）はトルク指令の変化を示している。図９（Ｂ）は位置指令速度（破線）およびモータ速度（実線）の変化を示している。図９（Ｃ）は推定偏差の変化を示している。図９（Ｄ）は粘性摩擦係数の真値（破線）、慣性モーメントの真値（一点鎖線）、粘性摩擦係数の推定値（二点鎖線）、および慣性モーメントの推定値（実線）の変化を示している。
【０１１０】
図９（Ａ）〜図９（Ｄ）から分かるように、振動が発生しても粘性摩擦係数Ｄおよび慣性モーメントＪは真値が推定されている。また、推定値が収束するまでの時間は約２５ｍｓとなっており、前述のトルク制御モード時と同じ結果となっている。
【０１１１】
したがって、ゲインバランスによる振動が発生しても前述の適応オブザーバによる慣性負荷値推定手法に影響はないといえる。
（３）位置制御モードでの周期外乱による影響
慣性モーメント比を正しく設定した場合でも、外力により振動が発生する場合が考えられる。制御対象の慣性モーメント比および設定慣性モーメント比を５００％に設定し、外力として定格トルクの５０％（周波数１０Ｈｚ）の周期外乱を制御対象に印加した場合のシミュレーション結果を図１０（Ａ）〜図１０（Ｄ）に示す。
【０１１２】
図１０（Ａ）〜図１０（Ｄ）から分かるように、外乱が印加されても粘性摩擦係数および慣性モーメントは真値が推定されている。また、推定値が収束するまでの時間は約２５ｍｓであり、前述のトルク制御モード時と同じ結果となっている。
【０１１３】
したがって、周期外乱が印加されても前述の適応オブザーバによる慣性負荷値推定手法に影響はないといえる。
（４）モデル化誤差の影響（２慣性モデル）
前述のシミュレーション（１）〜（３）は制御対象が剛体であることを前提とした。しかし、制御対象は剛体ばかりではない。そこで、図１１（Ａ）および図１１（Ｂ）に示す周波数特性を有する２慣性モデルを制御対象としてシミュレーションを行った。
【０１１４】
図１２（Ａ）〜図１２（Ｄ）から分かるように、慣性モーメントの推定は速度が変化するタイミングでずれるものの、それ以外ではほぼ真値を推定できている。一方、粘性摩擦係数は真値とは全く異なる値を推定している。
【０１１５】
以上より、モデル化誤差の影響は、主に粘性摩擦係数の推定誤差として表れ、慣性モーメントの推定には大きく影響しないと推測できる。本推測を確認するために、３慣性および４慣性の制御対象に対しても同じようにシミュレーションを実施した。
（５）モデル化誤差の影響（３慣性モデル）
ここでは、図１３（Ａ）および図１３（Ｂ）に示す周波数特性を有する３慣性モデルを制御対象としてシミュレーションを行った。
【０１１６】
図１４（Ａ）〜図１４（Ｄ）から分かるように、２慣性モデル同様、慣性モーメントの推定は速度が変化するタイミングでずれるものの、それ以外ではほぼ真値を推定できている。一方、粘性摩擦係数は真値とは全く異なる値を推定している。
（６）モデル化誤差の影響（４慣性モデル）
ここでは、図１５（Ａ）および図１５（Ｂ）に示す周波数特性を有する４慣性モデルを制御対象としてシミュレーションを行った。
【０１１７】
図１６（Ａ）〜図１６（Ｄ）から分かるように、２慣性モデル同様、慣性モーメントの推定は速度が変化するタイミングでずれるものの、それ以外ではほぼ真値を推定できている。一方、粘性摩擦係数は真値とは全く異なる値を推定している。
【０１１８】
また、図１７（Ａ）〜図１７（Ｄ）は、図１５（Ａ）および図１５（Ｂ）に示す制御対象に対して粘性摩擦係数を０．０００１から０．０１に変更した場合のシミュレーション結果を示している。トルク飽和を考慮して、指令加減速時間も１００ｍｓから２００ｍｓに変更した。図１７（Ａ）〜図１７（Ｄ）から分かるように、粘性摩擦係数を変更しても慣性モーメントの推定結果は図１６（Ａ）〜図１６（Ｄ）の推定結果から概ね変化はないが、粘性摩擦係数の推定結果が真値に近づいたことが分かる。これは、モデル化誤差よりも粘性摩擦係数の影響が相対的に大きくなったためと推測できる。
（７）モデル化誤差の影響（まとめ）
以上のように、２慣性モデル、３慣性モデル、および４慣性モデルの結果から、モデル化誤差の影響は主に粘性摩擦係数の推定誤差として表れ、慣性モーメントの推定には大きく影響しないと言える。慣性モーメント（慣性負荷値）が速度の次元の変数であるのに対して、粘性摩擦係数は加速度の次元の変数である。演算時に、慣性モーメントが粘性摩擦係数よりも先に収束し、後に収束する粘性摩擦係数にモデル化誤差が集中する。これにより、慣性モーメントの推定誤差が粘性摩擦係数の推定誤差よりも小さくなり、慣性モーメントを正確に推定することができる。つまり、モータ制御装置１００においては、慣性負荷値演算部７０（推定慣性負荷値演算部７１）は、モータ実出力Ｘとモータ出力指令Ｔｒとに基づいて、推定慣性負荷値ＪＥの推定誤差が推定粘性抵抗係数ＤＥの推定誤差よりも小さくなるように推定慣性負荷値ＪＥおよび推定粘性抵抗係数ＤＥを演算する。
＜推定慣性負荷値演算手法の実験結果＞
前述の適応オブザーバによる慣性負荷値の推定アルゴリズムを用いて、実機にて回転モータ単体（慣性負荷比：０倍）の場合および回転モータに剛性負荷（慣性負荷比：２８倍）を連結した場合で実験による性能評価を行った。具体的には、速度制御および位置制御にて、出力補正値演算部８０を有効（出力補正有効モード）にしている場合と無効（出力補正無効モード）にしている場合とで、図１８に示す動作条件で評価を行った。図１８は位置制御時の動作条件を示している。出力補正値演算部８０を無効にしている場合は、適応オブザーバを用いて演算された推定慣性モーメントを慣性モーメントに反映し速度ループゲインを更新した。加速時間および減速時間はソフトスタートをそれぞれ１０００ｍｓおよび５０００ｍｓで設定した。
【０１１９】
図１９に各条件における平均推定慣性モーメント比を示す。本実験では、推定開始までの慣性モーメント比０％の区間は平均から除外した。また、本実験では、推定結果に対して平均化処理を行った。具体的には、１０ｍｓごとに推定結果に対して、適応オブザーバの推定誤差が設定した第１閾値を下回っており、かつ、モータ速度とトルクの変化が設定した第２閾値を上回っている値だけを使用して慣性モーメント比の平均を求めた。また、１０ｍｓのすべての区間で動作条件を満足しなかった場合は、１０ｍｓの慣性モーメント比を出力するようにした。
【０１２０】
図２０（Ａ）〜図２３（Ｂ）は、フィードバック速度（破線）、指令速度（一点鎖線）、トルク指令（二点鎖線）、および慣性モーメント比（実線）を示している。
【０１２１】
図１９の表および図２０（Ａ）〜図２３（Ｂ）のグラフから分かるように、微小動作時を除いて、概ね良好な慣性モーメントの推定精度が得られた。また、慣性モーメント推定精度は出力補正の有効および無効には依存しないことが分かる。
【０１２２】
このように、図７に示す制御対象モデルに適応オブザーバを適用すると、モータ制御装置１００において推定慣性負荷値ＪＥを比較的短時間でかつ正確に演算できる。
＜特徴＞
モータ制御装置１００およびモータ制御方法の特徴を以下にまとめる。
（１）推定慣性負荷値演算部７１がモータ出力指令Ｔｒとモータ実出力Ｘとに基づいて適応オブザーバを用いて推定慣性負荷値ＪＥを演算するので、モータ４の実負荷レベルに対して推定慣性負荷値ＪＥを比較的短時間で追従させることができる。したがって、推定慣性負荷値ＪＥに基づいて慣性負荷値を演算することで、モータ４の実負荷レベルに対してモータ出力指令Ｔｒを比較的短時間で追従させることができる。すなわち、このモータ制御装置１００およびモータ制御方法では、モータ制御の安定性を高めることができる。
【０１２３】
例えば、モータ制御装置１００では、外部指令２Ａが位置指令である位置制御時は、位置ループと速度ループのゲインバランスを回復することによる制御安定性および外乱応答特性の回復が期待できる。また、外部指令２Ａが速度指令である速度制御時は、指令追従性の回復が期待できる。
（２）モータ制御装置１００は、モータ実出力Ｘとモータ出力指令Ｔｒとに基づいて出力補正値Ｔｃを演算する出力補正値演算部８０をさらに備えている。出力指令演算部６０は、モータ加速度指令Ａと慣性負荷値とに基づいて出力指令を演算する第１出力指令演算部６１と、出力指令と出力補正値Ｔｃとに基づいてモータ出力指令Ｔｒを演算する第２出力指令演算部６２と、を有している。このモータ制御装置１００およびモータ制御方法では、モータ出力指令Ｔｒとモータ実出力Ｘとに基づいて出力指令Ｔを補正できるので、モータ４の実負荷レベルにモータ出力指令Ｔｒを追従させることができる。したがって、モータ制御の安定性をより高めることができる。
（３）このモータ制御装置１００およびモータ制御方法では、出力補正値演算部８０が外乱を推定し出力補正値Ｔｃを演算するので、出力補正値Ｔｃの精度を高めることができる。
（４）このモータ制御装置１００では、慣性負荷値変更部７２が推定慣性負荷値ＪＥに基づいて慣性負荷値Ｊ０を変更するので、モータ４の実負荷レベルに慣性負荷値を確実に追従させることができる。
（５）慣性負荷値変更部７２が基準慣性負荷範囲および推定慣性負荷値ＪＥに基づいて慣性負荷値を変更するので、モータ４の仕様に合わせて基準慣性負荷範囲を設定することで、モータ４の基準慣性負荷範囲をモータ４の実負荷レベルに追従させることができ、モータ制御の安定性をより高めることができる。
（６）推定慣性負荷値ＪＥが基準慣性負荷範囲の上限値ＲＵよりも大きい場合に、慣性負荷値変更部７２が慣性負荷値を増加させるので、モータ４の基準慣性負荷範囲がモータ４の実負荷レベルに比べて低い場合でも、基準慣性負荷範囲をモータ４の実負荷レベルに確実に追従させることができ、モータ制御の安定性をより確実に高めることができる。
（７）推定慣性負荷値ＪＥが基準慣性負荷範囲の上限値ＲＵよりも大きい場合に、推定慣性負荷値ＪＥを用いて慣性負荷値変更部７２が慣性負荷値を増加させるので、慣性負荷値を増加させる際に慣性負荷値を段階的に演算することなく慣性負荷値を変更することができる。したがって、慣性負荷値演算の処理速度が向上する。
（８）基準慣性負荷値および推定慣性負荷比が第２慣性負荷比よりも小さい場合に、慣性負荷値変更部７２が慣性負荷値を減少させるので、モータ４の基準慣性負荷範囲がモータ４の実負荷レベルに比べて高い場合でも、基準慣性負荷範囲をモータ４の実負荷レベルに確実に追従させることができ、モータ制御の安定性をより確実に高めることができる。
（９）基準慣性負荷値および推定慣性負荷比が第２慣性負荷比よりも小さい場合に、推定慣性負荷値ＪＥを用いて慣性負荷値変更部７２が慣性負荷値を減少させるので、慣性負荷値を減少させる際に慣性負荷値を段階的に演算することなく慣性負荷値を変更することができる。したがって、慣性負荷値演算の処理速度が向上する。
（１０）適応同定演算部７５が第１状態量および第２状態量に基づいて推定慣性負荷値ＪＥを演算するので、慣性負荷値の推定精度を高めることができる。
（１１）慣性負荷値演算部７０がモータ加速度指令Ａおよびモータ加速度指令Ａよりも上流側の指令を用いることなく推定慣性負荷値ＪＥを演算するので、推定慣性負荷値ＪＥの演算がモータ制御装置１００の入力の影響を受けにくくなる。したがって、モータ４の実負荷レベルに対する推定慣性負荷値ＪＥの追従性を高めることができる。
（１２）慣性負荷値が慣性モーメントを含んでいるので、回転モータの制御の追従性能を高めることができる。
〔第２実施形態〕
図２４〜図２６（Ｂ）を用いて第２実施形態に係るモータ制御装置２００について説明する。モータ制御装置２００は、出力補正値演算部８０および慣性負荷値変更部７２を除いて、モータ制御装置１００と同じ構成を有している。したがって、第１実施形態の構成と実質的に同じ機能を有する構成については、同じ符号を付し、簡略化のためにその詳細な説明は省略する。
【０１２４】
図２４に示すように、モータ制御装置２００の構成は、出力補正無効モードでのモータ制御装置１００の構成と実質的に同じである。具体的には、モータ制御装置２００は、位置偏差演算部３０、速度指令演算部４０、加速度指令演算部５０、出力指令演算部２６０、および慣性負荷値演算部２７０を備えている。モータ制御装置２００では、第１実施形態に係るモータ制御装置１００から出力補正値演算部８０および慣性負荷値変更部７２が省略されている。
【０１２５】
それに伴い、慣性負荷値演算部２７０は推定慣性負荷値ＪＥを慣性負荷値Ｊ０として出力指令演算部２６０に出力することで慣性負荷値Ｊ０を演算する。具体的には、慣性負荷値演算部２７０は、慣性負荷値変更部７２での処理の代わりに、推定慣性負荷値演算部７１により演算された推定慣性負荷値ＪＥを慣性負荷値Ｊ０としてメモリ２２に格納する。出力指令演算部２６０は、慣性負荷値Ｊ０（＝推定慣性負荷値ＪＥ）とモータ加速度指令Ａとに基づいてモータ出力指令Ｔｒを演算する。
【０１２６】
図２５に示すように、第２実施形態に係るモータ制御方法は、位置偏差演算工程Ｓ１２、速度指令演算工程Ｓ１３、加速度指令演算工程Ｓ１４、出力指令演算工程Ｓ２１５、および慣性負荷値演算工程Ｓ２１６を備えている。第１実施形態のモータ制御方法（図５および図６）と比較すると、これら以外の工程は省略されている。出力指令演算工程Ｓ２１５では、第１実施形態の出力指令演算工程Ｓ１５から第２出力指令演算工程Ｓ１５Ｂが省略されている。また、慣性負荷値演算工程Ｓ２１７では、第１実施形態の慣性負荷値演算工程Ｓ１７から慣性負荷値変更工程Ｓ１７Ｂが省略されている。
【０１２７】
出力指令演算工程Ｓ２１５（第１出力指令演算工程Ｓ１５Ａ）では、慣性負荷値Ｊ０とモータ加速度指令Ａとに基づいて出力指令演算部２６０によりモータ出力指令Ｔｒを演算する。一方、慣性負荷値演算工程Ｓ２１７では、モータ実出力Ｘとモータ出力指令Ｔｒとに基づき適応オブザーバを用いて慣性負荷値演算部２７０により推定慣性負荷値ＪＥを演算し、推定慣性負荷値ＪＥに基づいて慣性負荷値演算部２７０により慣性負荷値Ｊ０を演算する。具体的には、慣性負荷値演算工程Ｓ２１７では、慣性負荷値演算部２７０により推定慣性負荷値ＪＥを慣性負荷値Ｊ０として出力指令演算部２６０に出力することで慣性負荷値Ｊ０を演算する。慣性負荷値演算工程Ｓ２１７は、推定慣性負荷値演算工程Ｓ１７Ａで演算された推定慣性負荷値ＪＥが慣性負荷値Ｊ０としてメモリ２２に格納される。つまり、出力指令演算工程Ｓ２１５（第１出力指令演算工程Ｓ１５Ａ）では、推定慣性負荷値ＪＥとモータ加速度指令Ａとに基づいて出力指令演算部２６０によりモータ出力指令Ｔｒを演算する。
【０１２８】
図２６（Ａ）は慣性負荷値演算部２７０の適応オブザーバの評価実験結果を示している。モータ制御装置２００の構成はモータ制御装置１００の出力補正無効モードの構成と概ね同じであるので、図２１（Ａ）のグラフの横軸を拡大すると図２６（Ａ）のグラフが得られる。図２６（Ｂ）は慣性負荷値演算部２７０を省略した場合の評価実験結果を示している。
【０１２９】
図２６（Ａ）から分かるように、慣性負荷値演算部２７０を用いた場合は、約８００ｍｓで慣性モーメントの真値を推定できており、モータ制御が比較的短時間で安定している。一方、図２６（Ｂ）から分かるように、慣性負荷値演算部２７０を用いない場合は発散振動が生じモータ制御が不安定となる。
【０１３０】
このように、出力指令演算部２６０が推定慣性負荷値ＪＥを慣性負荷値Ｊ０として用いることで、推定慣性負荷値ＪＥを用いた演算処理を簡略化することができ、モータ制御の安定性を高めつつモータ制御装置２００の処理速度が向上する。
〔変形例〕
（１）第１および第２実施形態では、モータ制御装置１００および２００において位置制御が行われているが、前述の実施形態で開示されている技術は、速度制御の場合でも適用可能である。
（２）第１および第２実施形態では、モータ制御装置１００および２００は、回転モータであるモータ４を制御しているが、前述の実施形態で開示されている技術は、モータ４がリニアモータやその他のモータであっても適用可能である。例えば、モータ４がリニアモータの場合、可動部材４Ｂはベース部材４Ａに対して直線的に移動可能に設けられたスライダを有している。モータ出力センサ９は、ベース部材４Ａに対する可動部材４Ｂの直線上の位置を検出するリニアエンコーダを有している。また、モータ４がリニアモータの場合は、出力指令Ｔは推力指令を含んでおり、モータ出力指令Ｔｒはモータ推力指令を含んでおり、出力補正値Ｔｃは推力補正値を含んでいる。さらに、モータ４がリニアモータの場合、慣性負荷値Ｊ０は慣性質量を含んでいる。慣性負荷値Ｊ０が慣性質量を含んでいるので、直動式モータの制御の追従性能を高めることができる。
【０１３１】
「慣性モーメント」を「慣性質量」、「トルク」を「推力」というように、回転系の用語を直動系の用語に読みかえることで、第１および第２実施形態の説明をリニアモータにも適用することができる。したがって、リニアモータを制御する場合の説明は省略する。
【０１３２】
なお、本願においては、「備えている」およびその派生語は、構成要素の存在を説明する非制限用語であり、記載されていない他の構成要素の存在を排除しない。これは、「有している」、「含んでいる」およびそれらの派生語にも適用される。
【０１３３】
また、実施形態の構成は、所望の機能を実現するように構成されたハードウェアや所望の機能を実現するようにプログラムされたソフトウェアのうち少なくとも一方を含んでいる。つまり、所望の機能はハードウェア、ソフトウェアまたはそれらの組み合わせにより実現され得る。
【０１３４】
本願において、「第１」や「第２」などの序数は、単に構成を識別するための用語であって、他の意味（例えば特定の順序など）は有していない。例えば、「第１要素」があるからといって「第２要素」が存在していることを暗に意味しているわけではなく、また「第２要素」があるからといって「第１要素」が存在していることを暗に意味しているわけではない。
【０１３５】
上記の開示内容から考えて、本発明の種々の変更や修正が可能であることは明らかである。したがって、本発明の趣旨を逸脱しない範囲で、本願の具体的な開示内容とは別の方法で本発明が実施されてもよい。
【符号の説明】
【０１３６】
２          ：外部装置
２Ａ        ：外部指令
４          ：モータ
４Ｂ        ：可動部材
８          ：駆動対象物
３０        ：位置偏差演算部
４０        ：速度指令演算部
５０        ：加速度指令演算部
６０、２６０：出力指令演算部
６１        ：第１出力指令演算部
６２        ：第２出力指令演算部
７０、２７０：慣性負荷値演算部
７１        ：推定慣性負荷値演算部
７２        ：慣性負荷値変更部
７３        ：第１状態量演算部
７４        ：第２状態量演算部
７５        ：適応同定演算部
８０        ：出力補正値演算部
９０        ：補正モード切替部
１００、２００：モータ制御装置
ＪＥ        ：推定慣性負荷値
Ｊ０        ：慣性負荷値
【図１】
2019097268.tif 000032
【図２】
2019097268.tif 000033
【図３】
2019097268.tif 000034
【図４】
2019097268.tif 000035
【図５】
2019097268.tif 000036
【図６】
2019097268.tif 000037
【図７】
2019097268.tif 000038
【図８】
2019097268.tif 000039
【図９】
2019097268.tif 000040
【図１０】
2019097268.tif 000041
【図１１】
2019097268.tif 000042
【図１２】
2019097268.tif 000043
【図１３】
2019097268.tif 000044
【図１４】
2019097268.tif 000045
【図１５】
2019097268.tif 000046
【図１６】
2019097268.tif 000047
【図１７】
2019097268.tif 000048
【図１８】
2019097268.tif 000049
【図１９】
2019097268.tif 000050
【図２０】
2019097268.tif 000051
【図２１】
2019097268.tif 000052
【図２２】
2019097268.tif 000053
【図２３】
2019097268.tif 000054
【図２４】
2019097268.tif 000055
【図２５】
2019097268.tif 000056
【図２６】
2019097268.tif 000057
【手続補正書】
【提出日】平成30年10月18日(2018.10.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
モータの負荷の慣性の大きさを示す慣性負荷値とモータ加速度指令とに基づいてモータ出力指令を演算する出力指令演算部と、
前記モータから出力されるモータ実出力を微分して算出したモータ実速度と前記モータ出力指令とに基づいて適応オブザーバを用いて推定慣性負荷値を演算し、前記推定慣性負荷値に基づいて前記慣性負荷値を演算する慣性負荷値演算部と、を備え、
前記慣性負荷値演算部は、状態設定値と前記モータ実速度とに基づいて第１状態量を演算する第１状態量演算部と、前記状態設定値と前記モータ出力指令とに基づいて第２状態量を演算する第２状態量演算部と、前記第１状態量と前記第２状態量とに基づいて前記推定慣性負荷値を演算する適応同定演算部と、を有している、
モータ制御装置。
【請求項２】
前記モータ実速度と前記モータ出力指令とに基づいて出力補正値を演算する出力補正値演算部をさらに備え、
前記出力指令演算部は、前記モータ加速度指令と前記慣性負荷値とに基づいて出力指令を演算する第１出力指令演算部と、前記出力指令と前記出力補正値とに基づいて前記モータ出力指令を演算する第２出力指令演算部と、を有している、
請求項１に記載のモータ制御装置。
【請求項３】
前記出力補正値演算部は、前記モータの外乱を推定し前記出力補正値を演算する、
請求項２に記載のモータ制御装置。
【請求項４】
前記慣性負荷値演算部は、前記モータ実速度と前記モータ出力指令とに基づき前記適応オブザーバを用いて前記推定慣性負荷値を演算する推定慣性負荷値演算部と、前記推定慣性負荷値に基づいて前記慣性負荷値を変更する慣性負荷値変更部と、を有している、
請求項１〜３のいずれかに記載のモータ制御装置。
【請求項５】
前記慣性負荷値変更部は、基準慣性負荷範囲と前記推定慣性負荷値とに基づいて前記慣性負荷値を変更する、
請求項４に記載のモータ制御装置。
【請求項６】
前記慣性負荷値変更部は、前記モータの可動部材の慣性の大きさを示す基準慣性負荷値に対する、前記推定慣性負荷値から前記基準慣性負荷値を減算して得られた対象慣性負荷値の割合を推定慣性負荷比として演算し、
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の上限値よりも大きい場合に、前記慣性負荷値を増加させる、
請求項５に記載のモータ制御装置。
【請求項７】
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の前記上限値よりも大きい場合に、前記推定慣性負荷値を用いて前記慣性負荷値を増加させる、
請求項６に記載のモータ制御装置。
【請求項８】
前記慣性負荷値変更部は、前記モータの可動部材の慣性の大きさを示す基準慣性負荷値に対する、前記推定慣性負荷値から前記基準慣性負荷値を減算して得られた対象慣性負荷値の割合を推定慣性負荷比として演算し、
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の下限値よりも小さい場合に、前記慣性負荷値を減少させる、
請求項５〜７のいずれかに記載のモータ制御装置。
【請求項９】
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の前記下限値よりも小さい場合に、前記推定慣性負荷値を用いて前記慣性負荷値を減少させる、
請求項８に記載のモータ制御装置。
【請求項１０】
前記慣性負荷値演算部は、前記推定慣性負荷値を前記慣性負荷値として前記出力指令演算部に出力することで前記慣性負荷値を演算する、
請求項１に記載のモータ制御装置。
【請求項１１】
前記慣性負荷値演算部は、前記モータ加速度指令と前記モータ加速度指令よりも上流側の指令とを直接用いることなく、前記モータ実速度と前記モータ出力指令とに基づき前記適応オブザーバを用いて前記推定慣性負荷値を演算する、
請求項１〜１０のいずれかに記載のモータ制御装置。
【請求項１２】
前記慣性負荷値は、慣性モーメントを含んでいる、
請求項１〜１１のいずれかに記載のモータ制御装置。
【請求項１３】
前記慣性負荷値は、慣性質量を含んでいる、
請求項１〜１１のいずれかに記載のモータ制御装置。
【請求項１４】
モータの負荷の慣性の大きさを示す慣性負荷値とモータ加速度指令とに基づいて出力指令演算部によりモータ出力指令を演算する出力指令演算工程と、
前記モータから出力されるモータ実出力を微分して算出したモータ実速度と前記モータ出力指令とに基づき適応オブザーバを用いて慣性負荷値演算部により推定慣性負荷値を演算し、前記推定慣性負荷値に基づいて前記慣性負荷値演算部により前記慣性負荷値を演算する慣性負荷値演算工程と、を備え、
前記慣性負荷値演算工程は、状態設定値と前記モータ実速度とに基づいて第１状態量を演算する第１状態量演算工程と、前記状態設定値と前記モータ出力指令とに基づいて第２状態量を演算する第２状態量演算工程と、前記第１状態量と前記第２状態量とに基づいて前記推定慣性負荷値を演算する適応同定演算工程と、を有している、
モータ制御方法。
【請求項１５】
前記モータ実速度と前記モータ出力指令とに基づいて出力補正値演算部により出力補正値を演算する出力補正値演算工程をさらに備え、
前記出力指令演算工程は、前記モータ加速度指令と前記慣性負荷値とに基づいて前記出力指令演算部により出力指令を演算する第１出力指令演算工程と、前記出力指令と前記出力補正値とに基づいて前記出力指令演算部により前記モータ出力指令を演算する第２出力指令演算工程と、を有している、
請求項１４に記載のモータ制御方法。
【請求項１６】
前記出力補正値演算工程では、前記モータの外乱を推定し前記出力補正値が演算される、
請求項１５に記載のモータ制御方法。
【請求項１７】
前記慣性負荷値演算工程では、前記慣性負荷値演算部により前記推定慣性負荷値を前記慣性負荷値として前記出力指令演算部に出力することで前記慣性負荷値を演算する、
請求項１４に記載のモータ制御方法。
【手続補正書】
【提出日】平成31年3月8日(2019.3.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
モータの負荷の慣性の大きさを示す慣性負荷値とモータ加速度指令とに基づいてモータ出力指令を演算する出力指令演算部と、
前記モータのモータ実速度と前記モータ出力指令とに基づいて適応オブザーバを用いて推定慣性負荷値を演算し、前記推定慣性負荷値に基づいて前記慣性負荷値を演算する慣性負荷値演算部と、を備え、
前記慣性負荷値演算部は、状態設定値と前記モータ実速度とに基づいて第１状態量を演算する第１状態量演算部と、前記状態設定値と前記モータ出力指令とに基づいて第２状態量を演算する第２状態量演算部と、前記第１状態量と前記第２状態量とに基づいて前記推定慣性負荷値および推定粘性抵抗係数を演算する適応同定演算部と、を有しており、
前記慣性負荷値演算部は、前記推定粘性抵抗係数を用いることなく前記推定慣性負荷値に基づいて前記慣性負荷値を演算する、
モータ制御装置。
【請求項２】
前記モータ実速度と前記モータ出力指令とに基づいて出力補正値を演算する出力補正値演算部をさらに備え、
前記出力指令演算部は、前記モータ加速度指令と前記慣性負荷値とに基づいて出力指令を演算する第１出力指令演算部と、前記出力指令と前記出力補正値とに基づいて前記モータ出力指令を演算する第２出力指令演算部と、を有している、
請求項１に記載のモータ制御装置。
【請求項３】
前記出力補正値演算部は、前記モータの外乱を推定し前記出力補正値を演算する、
請求項２に記載のモータ制御装置。
【請求項４】
前記慣性負荷値演算部は、前記推定慣性負荷値に基づいて前記慣性負荷値を変更する慣性負荷値変更部を有している、
請求項１〜３のいずれかに記載のモータ制御装置。
【請求項５】
前記慣性負荷値変更部は、基準慣性負荷範囲と前記推定慣性負荷値とに基づいて前記慣性負荷値を変更する、
請求項４に記載のモータ制御装置。
【請求項６】
前記慣性負荷値変更部は、前記モータの可動部材の慣性の大きさを示す基準慣性負荷値に対する、前記推定慣性負荷値から前記基準慣性負荷値を減算して得られた対象慣性負荷値の割合を推定慣性負荷比として演算し、
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の上限値よりも大きい場合に、前記慣性負荷値を増加させる、
請求項５に記載のモータ制御装置。
【請求項７】
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の前記上限値よりも大きい場合に、前記推定慣性負荷値を用いて前記慣性負荷値を増加させる、
請求項６に記載のモータ制御装置。
【請求項８】
前記慣性負荷値変更部は、前記モータの可動部材の慣性の大きさを示す基準慣性負荷値に対する、前記推定慣性負荷値から前記基準慣性負荷値を減算して得られた対象慣性負荷値の割合を推定慣性負荷比として演算し、
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の下限値よりも小さい場合に、前記慣性負荷値を減少させる、
請求項５〜７のいずれかに記載のモータ制御装置。
【請求項９】
前記慣性負荷値変更部は、前記推定慣性負荷比が前記基準慣性負荷範囲の前記下限値よりも小さい場合に、前記推定慣性負荷値を用いて前記慣性負荷値を減少させる、
請求項８に記載のモータ制御装置。
【請求項１０】
前記慣性負荷値演算部は、前記推定慣性負荷値を前記慣性負荷値として前記出力指令演算部に出力することで前記慣性負荷値を演算する、
請求項１に記載のモータ制御装置。
【請求項１１】
前記慣性負荷値演算部は、前記モータ加速度指令と前記モータ加速度指令よりも上流側の指令とを直接用いることなく、前記モータ実速度と前記モータ出力指令とに基づき前記適応オブザーバを用いて前記推定慣性負荷値を演算する、
請求項１〜１０のいずれかに記載のモータ制御装置。
【請求項１２】
前記慣性負荷値は、慣性モーメントを含んでいる、
請求項１〜１１のいずれかに記載のモータ制御装置。
【請求項１３】
前記慣性負荷値は、慣性質量を含んでいる、
請求項１〜１１のいずれかに記載のモータ制御装置。
【請求項１４】
モータの負荷の慣性の大きさを示す慣性負荷値とモータ加速度指令とに基づいて出力指令演算部によりモータ出力指令を演算する出力指令演算工程と、
前記モータのモータ実速度と前記モータ出力指令とに基づき適応オブザーバを用いて慣性負荷値演算部により推定慣性負荷値を演算し、前記推定慣性負荷値に基づいて前記慣性負荷値演算部により前記慣性負荷値を演算する慣性負荷値演算工程と、を備え、
前記慣性負荷値演算工程は、状態設定値と前記モータ実速度とに基づいて第１状態量を演算する第１状態量演算工程と、前記状態設定値と前記モータ出力指令とに基づいて第２状態量を演算する第２状態量演算工程と、前記第１状態量と前記第２状態量とに基づいて前記推定慣性負荷値および推定粘性抵抗係数を演算する適応同定演算工程と、を有しており、
前記慣性負荷値演算工程では、前記推定粘性抵抗係数を用いることなく前記推定慣性負荷値に基づいて前記慣性負荷値を演算する、
モータ制御方法。
【請求項１５】
前記モータ実速度と前記モータ出力指令とに基づいて出力補正値演算部により出力補正値を演算する出力補正値演算工程をさらに備え、
前記出力指令演算工程は、前記モータ加速度指令と前記慣性負荷値とに基づいて前記出力指令演算部により出力指令を演算する第１出力指令演算工程と、前記出力指令と前記出力補正値とに基づいて前記出力指令演算部により前記モータ出力指令を演算する第２出力指令演算工程と、を有している、
請求項１４に記載のモータ制御方法。
【請求項１６】
前記出力補正値演算工程では、前記モータの外乱を推定し前記出力補正値が演算される、
請求項１５に記載のモータ制御方法。
【請求項１７】
前記慣性負荷値演算工程では、前記慣性負荷値演算部により前記推定慣性負荷値を前記慣性負荷値として前記出力指令演算部に出力することで前記慣性負荷値を演算する、
請求項１４に記載のモータ制御方法。