(57)【特許請求の範囲】
【請求項１】
位置指令を生成する指令生成器と、前記位置指令とモータ位置により速度指令を生成し前記モータ位置を制御する位置制御部と、前記速度指令とモータ速度によりトルク指令を生成し前記モータ速度を制御する速度制御部と、前記トルク指令を電流指令に変換しモータ電流を制御する電流制御器と、前記モータに連結した負荷の機械定数を同定すると共に、同定値を用いてトルク指令を補正するトルク指令補正部と、を備えたモータ制御装置において、
前記位置指令から前記モータ位置を減算し位置偏差を生成する減算器と、前記位置偏差に比例ゲインを乗算し第１速度指令を生成する比例制御器と、前記位置指令を微分して第２速度指令を生成する速度フィードフォワード制御器と、前記第１速度指令と前記第２速度指令を加算し速度指令を生成する加算器と、前記速度指令から前記モータ速度を減算し速度偏差を生成する減算器と、前記速度偏差を比例・積分制御処理をして第１トルク指令を生成する比例積分器と、前記位置偏差に比例ゲインを乗算し第２トルク指令を生成する比例制御器と、前記位置指令に比例ゲインを乗算し第３トルク指令を生成するトルクフィードフォワード制御器と、前記第１トルク指令と前記第２トルク指令と前記第３トルク指令とを加算し第４トルク指令を生成する加算器と、前記モータ速度と前記速度偏差から粘性摩擦同定値を生成する粘性摩擦同定器と、前記第４トルク指令と前記粘性摩擦同定値から第５トルク指令を生成する加算器と、前記第５トルク指令と前記速度偏差から慣性モーメント同定値を生成する慣性モーメント同定器と、前記第５トルク指令と前記慣性モーメント同定値からトルク指令を生成する乗算器と、を備えたことを特徴とするモータ制御装置。
【請求項２】
前記慣性モーメント同定器は、前記第５トルク指令と前記速度偏差の乗算値が最小になるように慣性モーメント同定値を生成する演算器を備えたことを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記粘性摩擦同定器は、前記速度偏差と前記モータ速度の乗算値が最小になるように粘性摩擦係数を生成する演算器と、前記粘性摩擦係数と前記モータ速度から粘性摩擦同定値を生成する乗算器と、を備えたことを特徴とする請求項１記載のモータ制御装置。
【請求項４】
前記慣性モーメント同定器及び粘性摩擦同定器は、前記位置偏差もしくは前記速度偏差を入力し、前記位置偏差もしくは前記速度偏差の状態量に応じて前記演算器の同定演算継続もしくは中止を決定する切換器を備えたことを特徴とする請求項１記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットや工作機械における機械定数同定装置を備えたモータ制御装置に関する。
【背景技術】
【０００２】
従来の機械定数同定装置を備えたモータ制御装置は、特許文献１に開示されている。これは、制御対象の慣性モーメント、粘性摩擦係数、重力外乱を同定し、得られた各同定値を用いた速度制御を特徴とするものである。
【０００３】
図４は特許文献１で開示された従来技術のブロック図で、ロボットを制御対象とした速度制御系を表しており、速度指令４０１とモータ速度４１６を減算器４０２に入力し速度偏差４０３を出力し、速度偏差４０３と速度比例ゲイン４０４を乗算しトルク指令１を出力し、速度偏差４０３を速度積分器４０５に入力しトルク指令２を出力する。トルク指令１とトルク指令２を加算器４０６に入力しトルク指令を出力する。また、速度指令４０１を微分器４０７に入力し、微分器４０７と慣性モーメント同定値４０８の乗算値とトルク指令を加算器４０９に入力する。加算器４０９の出力とロボットアームの回転角度と重力外乱同定値４１０の乗算値を加算器４１１に入力する。切換器４１２は、モータ速度４１６の符号に従ってクーロン摩擦同定値ＣＬ＋＊（速度正）とクーロン摩擦同定値ＣＬ−＊（速度負）のいずれかを出力するものである。モータ速度４１６と粘性摩擦係数同定値４１７の乗算値とクーロン摩擦同定値と加算器４１１の出力を加算器４１３に入力し、さらに加算器４１３の出力を加算器４１４に入力する。切換入力τ１はトルク外乱同定値Ｄｉｓを速度偏差４０３の符号に従って加算器４１４に入力する。加算器４１４の出力を制御対象４１５に入力し、所望のモータ速度を出力するモータ制御装置である。同定すべき慣性モーメント（Ｊ＊）４０８、粘性摩擦（Ａ＊）４１７、重力外乱係数（Ｇｒ＊）４１０、クーロン摩擦ＣＬ＊、一定外乱Ｆｒ＊とトルク外乱Ｄｉｓ＊は（１）式〜（７）式により求めている。
【０００４】
【数１】
0004771078.tif 000002
【０００５】
【数２】
0004771078.tif 000003
【０００６】
【数３】
0004771078.tif 000004
【０００７】
【数４】
0004771078.tif 000005
【０００８】
【数５】
0004771078.tif 000006
【０００９】
【数６】
0004771078.tif 000007
【００１０】
【数７】
0004771078.tif 000008
式中のｅは速度偏差、ｒは速度指令、符号の上に付された・は微分を表している。
【特許文献１】特開平６−８３４０３号公報（第７頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【００１１】
従来の機械定数同定装置を備えたモータ制御装置は速度指令を入力し、モータ速度を制御する速度制御の構成であった。例えば、速度制御の外側に位置制御を構成する事は容易に思いつくが、単純に位置制御を構成しても安定性は保証されないという問題があった。また、速度指令４０１の微分値と慣性モーメント同定値を乗算しトルク指令にフィードフォワードしているが、加減速時にしかフィードフォワードの効果が得られない為、慣性モーメントが変動する場合には、制御性能向上ができないという問題があった。
本発明はこのような問題点に鑑みてなされたものであり、機械の慣性モーメントが変動しても、安定で、制御性が高いモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記問題を解決するため、本発明は、次のように構成したのである。
【００１３】
請求項１に記載の発明は、位置指令を生成する指令生成器と、前記位置指令とモータ位置により速度指令を生成し前記モータ位置を制御する位置制御部と、前記速度指令とモータ速度によりトルク指令を生成し前記モータ速度を制御する速度制御部と、前記トルク指令を電流指令に変換しモータ電流を制御する電流制御器と、前記モータに連結した負荷の機械定数を同定すると共に、同定値を用いてトルク指令を補正するトルク指令補正部と、を備えたモータ制御装置において、前記位置指令から前記モータ位置を減算し位置偏差を生成する減算器と、前記位置偏差に比例ゲインを乗算し第１速度指令を生成する比例制御器と、前記位置指令を微分して第２速度指令を生成する速度フィードフォワード制御器と、前記第１速度指令と前記第２速度指令を加算し速度指令を生成する加算器と、前記速度指令から前記モータ速度を減算し速度偏差を生成する減算器と、前記速度偏差を比例・積分制御処理をして第１トルク指令を生成する比例積分器と、前記位置偏差に比例ゲインを乗算し第２トルク指令を生成する比例制御器と、前記位置指令に比例ゲインを乗算し第３トルク指令を生成するトルクフィードフォワード制御器と、前記第１トルク指令と前記第２トルク指令と前記第３トルク指令とを加算し第４トルク指令を生成する加算器と、前記モータ速度と前記速度偏差から粘性摩擦同定値を生成する粘性摩擦同定器と、前記第４トルク指令と前記粘性摩擦同定値から第５トルク指令を生成する加算器と、前記第５トルク指令と前記速度偏差から慣性モーメント同定値を生成する慣性モーメント同定器と、前記第５トルク指令と前記慣性モーメント同定値からトルク指令を生成する乗算器と、を備えたことを特徴とするものである。
請求項２に記載の発明は、請求項１記載のモータ制御装置において、前記慣性モーメント同定器は、前記第５トルク指令と前記速度偏差の乗算値が最小になるように慣性モーメント同定値を生成する演算器を備えたことを特徴とするものである。
請求項３に記載の発明は、請求項１記載のモータ制御装置において、前記粘性摩擦同定器は、前記速度偏差と前記モータ速度の乗算値が最小になるように粘性摩擦係数を生成する演算器と、前記粘性摩擦係数と前記モータ速度から粘性摩擦同定値を生成する乗算器と、を備えたことを特徴とするものである。
請求項４に記載の発明は、請求項１に記載のモータ制御装置において、前記慣性モーメント同定器及び粘性摩擦同定器は、前記位置偏差もしくは前記速度偏差を入力し、前記位置偏差もしくは前記速度偏差の状態量に応じて前記演算器の同定演算継続もしくは中止を決定する切換器を備えたことを特徴とするものである。
【発明の効果】
【００１４】
請求項１に記載の発明によると、モータ駆動中の位置偏差を０に近づけることができる。
請求項２に記載の発明によると、慣性モーメント同定ができる。
請求項３に記載の発明によると、粘性摩擦同定ができる。
請求項４に記載の発明によると、同定値の発散を防ぐことができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【００１６】
図１は、本発明の機械定数同定装置を備えたモータ制御装置の構成を示すブロック図である。図１において、１は指令発生器、２は位置指令、３、１３は減算器、４はモータ位置、５は位置偏差、６、１７は比例制御器、７は第１速度指令、８は速度フィードフォワード制御器、９は第２速度指令、１０、１９、２４は加算器、１１は速度指令、１２はモータ速度、１４は速度偏差、１５は速度ＰＩ制御器、１６は第１トルク指令、１８は第２トルク指令、２０は粘性摩擦同定器、２１はトルクフィードフォワード制御器、２２は第３トルク指令、２３は第４トルク指令、２５は第５トルク指令、２６は慣性モーメント同定器、２７は乗算器、２８はトルク指令、２９は電流制御器、３０はモータ、３１はエンコーダ、３２は差分演算器、３３はトルク指令補正部である。減算器３は指令発生器１の生成した位置指令２からモータ位置４を減算し位置偏差５を生成する。比例制御器６は、位置偏差５に比例ゲインＫｐを乗算し、第１速度指令７を生成する。速度フィードフォワード制御器８は位置指令２から第２速度指令９を生成する。加算器１０は第１速度指令７と第２速度指令９を加算し速度指令１１を生成する。減算器１３は速度指令１１からモータ速度１２を減算し速度偏差１４を生成する。速度ＰＩ制御器１５は速度偏差１４をＰＩ制御処理して第１トルク指令１６を生成する。比例制御器１７は位置偏差５に比例ゲインを乗算し第２トルク指令１８を生成する。トルクフィードフォワード制御器２１は位置指令２から第３トルク指令２２を生成する。加算器１９は第１トルク指令１６と第２トルク指令１８と第３トルク指令２２を加算し第４トルク指令２３を生成する。また、粘性摩擦同定器２０は位置偏差５とモータ速度１２と速度偏差１４から粘性摩擦同定値を生成する。加算器２４は第４トルク指令２３と粘性摩擦同定値を加算して第５トルク指令２５を生成する。慣性モーメント同定器２６は第５トルク指令２５と速度偏差１４と位置偏差５から慣性モーメント同定値を生成する。乗算器２７は慣性モーメント同定値と第５トルク指令を乗算してトルク指令２８を生成する。電流制御器２９はトルク指令２８を電流指令に変換し、電流指令とモータ電流から電圧指令を生成し、さらに電力増幅してモータ３０を駆動する。モータ３０とエンコーダ３１は直結されており、モータ３０が回転するとエンコーダ３１はモータ位置４を生成する。差分演算器３２は制御時間ごとにモータ位置４の時間差分をとりモータ速度１２を生成する。
【００１７】
図２は慣性モーメント同定器で、慣性モーメント同定演算器２０１は第５トルク指令２１と速度偏差１４と位置偏差５から慣性モーメント同定値を生成する。慣性モーメント同定演算器２０１では、第５トルク指令２１と速度偏差１４の乗算値とバッファ２０３が記憶した前回慣性モーメント同定値を加算して、現在の慣性モーメントを生成する。絶対値演算器２０２は位置偏差５の絶対値をとり位置偏差絶対値を生成する。慣性モーメント演算器は位置偏差絶対値が所定値以上の場合には慣性モーメント同定値を演算し、所定値よりも小さい場合には慣性モーメント同定演算を中止し前回の慣性モーメント同定値を使用する。
【００１８】
図３は粘性摩擦同定器で、粘性摩擦係数同定演算器３０１はモータ速度１２と速度偏差１４と位置偏差５から粘性摩擦係数同定値を生成し、さらに粘性摩擦係数同定値にモータ速度１２を乗算し粘性摩擦同定値を生成する。粘性摩擦係数同定演算器３０１では、モータ速度１２と速度偏差１４の乗算値とバッファ３０３に記憶した前回粘性摩擦係数同定値を加算して、現在の粘性摩擦係数同定値を生成する。絶対値演算器３０２は位置偏差４の絶対値をとり位置偏差絶対値を生成する。粘性摩擦係数同定演算器は位置偏差絶対値が所定値以上の場合には粘性摩擦係数同定値を演算し、所定値よりも小さい場合には粘性摩擦係数同定演算を中止し、前回粘性摩擦係数同定値を使用する。
【００１９】
本発明の制御系設計方法について説明する。本発明は、バックステッピング適応制御手法を用いて設計を行う。位置制御器を設計した後、速度制御器を設計する。この速度制御器を設計する際に、慣性モーメントと粘性摩擦を生成する同定器を設計する。本発明で説明するモータ制御装置のモータ動特性を式（８）で表す。
【００２０】
【数８】
0004771078.tif 000009
0004771078.tif 000010
【００２１】
式（８）のθはモータ位置、ωはモータ速度、Ｊは慣性モーメント、τはトルク指令、Ｄは粘性摩擦係数とする。実施例１では位置Ｐ速度ＰＩ制御となるモータ制御器を設計する。位置偏差を式（９）で表し、式（９）の時間微分を式（１０）とする。
【００２２】
【数９】
0004771078.tif 000011
【００２３】
【数１０】
0004771078.tif 000012
【００２４】
ｅｐは位置偏差、θｒは位置指令とする。次に速度フィードフォワードと比例制御を用いて速度指令を生成する制御器を式（１１）とする。
【００２５】
【数１１】
0004771078.tif 000013
【００２６】
式（１１）のＫｐは位置ループゲインを表す。次に速度偏差を式（１２）で表す。
【００２７】
【数１２】
0004771078.tif 000014
【００２８】
式（１２）を時間微分し、式（８）を代入して、式（１３）を得る。
【００２９】
【数１３】
0004771078.tif 000015
【００３０】
次に、トルク指令を式（１４）で表す。
【００３１】
【数１４】
0004771078.tif 000016
【００３２】
式（１４）において、Ｋｖは速度ループゲイン、Ｋｉは速度ループ積分時間、χｖは速度偏差の積分値、Ｊ＾は慣性モーメント同定値、Ｄ＾は粘性摩擦係数同定値を表す。また｛｝内をφと表す。このφは慣性モーメント同定演算式で利用する。次にリアプノフ関数を式（１５）で定義する。
【００３３】
【数１５】
0004771078.tif 000017
【００３４】
式（１５）において、Ｊ＾は慣性モーメント同定誤差、Ｄ＾は粘性摩擦係数同定誤差、γ１は慣性モーメント同定計算で用いるゲインであり、γ２は粘性摩擦係数同定計算で用いるゲインを表す。この式（１５）を時間微分し、式（１０）、（１１）、（１３）、（１４）を代入すると式（１６）が得られる。
【００３５】
【数１６】
0004771078.tif 000018
【００３６】
式（１６）において、右辺第３項と第４項の括弧内が０となるように慣性モーメントと粘性摩擦係数の同定演算式を選ぶとリアプノフ安定となる。慣性モーメント同定演算式は式（１７）であり、粘性摩擦係数同定演算式は式（１８）である。
【００３７】
【数１７】
0004771078.tif 000019
【００３８】
【数１８】
0004771078.tif 000020
【００３９】
式（１１）、（１２）、（１４）、（１７）、（１８）を用いた制御系を構成し、モータ制御に利用すると本発明のモータ制御装置（図１）となる。
【００４０】
次に、本発明における機械同定装置をモデル化したモータ制御装置でのシミュレーションについて説明する。
図５はシミュレーションに用いる速度台形指令波形である。速度台形指令正転と負転で１往復動作となり、往復動作１０回実施した。縦軸は速度台形指令振幅、横軸は時間軸を表す。指令生成器１では、速度台形指令を積分して位置指令２を生成する。また、このシミュレーションに用いた機械定数は、実験装置（ボールネジ１軸スライダー装置）の値を使用し、負荷慣性モーメントは、モータ慣性モーメントの１０倍、粘性摩擦係数は０．９８７ｅ−３［Ｎｍｓ／ｒａｄ］とした。
図６は、本発明装置を用いた時の位置偏差の結果を示すシミュレーション結果である。往復動作８回目以降は位置偏差の最大値が一定となり、８回目以降の最大位置偏差は、１００パルスとなった。
図７は、本発明装置を用いた時の慣性モーメント（図中上段）と粘性摩擦係数（図中下段）の同定結果を示すシミュレーション結果である。慣性モーメント同定値は、真値の１．２５倍となり、粘性摩擦係数同定値は、１ｅ−３［Ｎｍｓ／ｒａｄ］となりほぼ真値に一致した。
【図面の簡単な説明】
【００４１】
【図１】本発明の機械定数同定装置を備えたモータ制御装置の構成を示すブロック図
【図２】本発明の慣性モーメント同定器の構成を示すブロック図
【図３】本発明の粘性摩擦同定器の構成を示すブロック図
【図４】従来技術による機械定数同定装置を備えたモータ制御装置
【図５】本発明装置のシミュレーション結果（速度指令波形）
【図６】本発明装置のシミュレーション結果（位置偏差波形）
【図７】本発明装置のシミュレーション結果（慣性モーメントと粘性摩擦係数同定結果）
【符号の説明】
【００４２】
１  指令生成器
２  位置指令
３、１３、４０２  減算器
１０、１９、２４、４０６、４０９、４１１、４１３、４１４  加算器
４  モータ位置
５  位置偏差
６、１７  比例制御器
７  第１速度指令
８  速度フィードフォワード制御器
９  第２速度指令
１１、４０１  速度指令
１２、４１６  モータ速度
１４、４０３  速度偏差
１５  速度ＰＩ制御器
１６  第１トルク指令
１８  第２トルク指令
２０  粘性摩擦同定器
２１  トルクフィードフォワード制御器
２２  第３トルク指令
２３  第４トルク指令
２５  第５トルク指令
２６  慣性モーメント同定器
２７  乗算器
２８  トルク指令
２９  電流制御器
３０  モータ
３１  エンコーダ
３２  差分演算器
３３  トルク指令補正部
４０４  速度比例ゲイン
４０５  速度積分器
４０７  微分器
４０８  慣性モーメント
４１０  重力外乱係数
４１２  切換器
４１５  制御対象
４１７  粘性摩擦
【図１】
0004771078.tif 000021
【図２】
0004771078.tif 000022
【図３】
0004771078.tif 000023
【図４】
0004771078.tif 000024
【図５】
0004771078.tif 000025
【図６】
0004771078.tif 000026
【図７】
0004771078.tif 000027