説明

サーボアンプの制御ループゲイン調整方法、プログラム及びロボット制御装置

【課題】ロボット動作中のサーボアンプの電源電圧の変動に対して簡易な制御で制御ループを安定化させる。
【解決手段】ロボットの各関節に設けられたサーボモータに対して外部からの制御指令に応じた該サーボモータの制御量を帰還させて制御ループを形成するサーボアンプの制御ループゲイン調整方法であって、前記制御ループゲインのデフォルト値及び前記サーボアンプの電源電圧のデフォルト値に基づいて、前記制御ループを形成するとともに前記サーボモータの駆動を開始する工程と、前記サーボアンプの電源電圧を検出する工程と、前記制御ループゲインを構成する制御ゲインのうち前記サーボアンプの電源電圧と相関して変化する制御ループゲインを、検出した前記サーボアンプの電源電圧の変化に対して逆方向に変化するように調整する工程と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーボアンプの制御ループゲイン調整方法、プログラム及びロボット制御装置に関する。
【背景技術】
【0002】
ロボットは、ロボットアームの先端部位にツール部材が取り付けられており、ロボットアームを構成する複数のアーム部材の各回転軸周りの回転を互いに独立して行い得るように構成されている。ロボットの動作を制御するロボット制御装置は、複数のアーム部材の各回転軸の位置サーボ制御によってツール部材を所望の位置に所望の姿勢で停止させたり、複数のアーム部材の各回転軸の速度サーボ制御によりツール部材を所望の経路に沿って所望の姿勢で、かつ所望の速度で移動させるように構成されている。さらに、ロボット制御装置は、各軸に設けられたサーボモータの各相に流れる電流量を各々制御する電流サーボ制御を行うように構成されている。これらのサーボ制御の具体例として、例えば以下に示す特許文献1〜3に記載された技術がある。
【0003】
特許文献1には、アクティブフィルタにより3相交流を整流し、その整流波形の電力を平滑コンデンサにより直流に平滑化して出力するロボットの電源装置と、上記平滑コンデンサの両端子間電圧が一定となるように制御する該電源装置の制御回路とが開示されている。
【0004】
特許文献2には、位置指令信号に基づいて速度指令信号を出力する位置制御部と、該位置制御部の速度指令信号に基づいて電流値の設定指令信号を出力する速度制御部と、該速度制御部の設定指令信号に基づいてサーボモータの電流を制御する電流制御部と、を備えるとともに、上記サーボモータの電流、回転速度及び回転位置をそれぞれ検出してこれらの検出値をフィードバックし、ロボットを駆動制御するロボットの制御装置において、上記位置制御部、速度制御部及び電流制御部のゲインを必要に応じて切換指令する切換指令信号を出力するゲイン切替部を備えることが開示されている。
【0005】
特許文献3には、サーボアンプへ入力される電源電圧を測定する入力電圧測定方法と、この測定した入力電圧に基づいてサーボアンプの制御ゲインを設定する制御ゲイン設定方法とが開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平8−251922号公報
【特許文献2】特開平1−255015号公報
【特許文献3】特開平8−205569号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところで、ロボットアームの加速や該ロボットアーム先端のツール部材によってワークを持ち上げる場合など、多くの電力消費を伴うサーボ制御が行われるときに、商用電源から供給される電力が各軸のサーボモータで消費される電力に間に合わず、ロボットの電源部からモータ駆動回路に供給される電源電圧(例えば、特許文献1の平滑コンデンサ間電圧)が低下するおそれがある。なお、このように電源電圧が低下すると、電流サーボ制御における応答が遅くなるという問題が生じる。
【0008】
一方、ロボットアームの減速や該ロボットアーム先端のツール部材によってワークを降ろす場合など、サーボモータが発電機として作動する回生動作を伴うサーボ制御が行われるときに、回生抵抗によって回生電力を消費しきれず、上記の電源電圧が上昇するおそれがある。なお、このように電源電圧が上昇すると、電流サーボ制御の電流ループゲインが上昇するため、サーボモータの振動や異音が発生するという問題が生じる。
【0009】
上記の問題は、電流ループゲインに限らず、サーボアンプの制御ループゲイン(位置速度ループゲイン、速度ループゲインなど)全般に該当するものである。
【0010】
特許文献1では、ロボットの負荷変動を考慮して電源装置の平滑コンデンサ間電圧を一定にしようとするものであるが、この制御のために新たなハードウェア(制御回路)を追加する必要がある。
【0011】
特許文献2では、位置制御部、速度制御部及び電流制御部のゲインを、ワーク間を移動するときには高い値に切り替え、ワークとハンド間に引付力あるいは押付力が作用するときには低い値に切り替えようとするものであるが、上記のようにロボット動作中に電源電圧が変動することについて示唆も開示もない。
【0012】
特許文献3では、サーボアンプの入力許容電圧にはある程度の幅があることを考慮して、測定した入力電圧に基づいてサーボアンプの制御ゲインを設定するものであるが、上記のようにロボット動作中の電源電圧の変動を考慮したものではない。また、サーボアンプの制御ゲインを設定するにあたり、サーボモータの相電流の無効電流成分比から推定された電源電圧が用いられており、複雑な制御が必要である。
【0013】
本発明は、上記のような従来の課題を解決するためになされたものであり、ロボット動作中のサーボアンプの電源電圧の変動に対して簡易な制御で制御ループを安定化させることを目的とする。
【課題を解決するための手段】
【0014】
上記目的を達成するために、本発明に係るサーボアンプの制御ループゲイン調整方法は、ロボットの各関節に設けられたサーボモータに対して外部からの制御指令に応じた該サーボモータの制御量を帰還させて制御ループを形成する、サーボアンプの制御ループゲイン調整方法であって、前記制御ループゲインのデフォルト値及び前記サーボアンプの電源電圧のデフォルト値に基づいて、前記制御ループを形成するとともに前記サーボモータの駆動を開始する工程と、前記サーボアンプの電源電圧を検出する工程と、検出した前記サーボアンプの電源電圧の変化に対して逆方向に変化するように前記制御ループゲインを調整する工程と、を備えるものである。
【0015】
この方法によれば、ロボットの各関節に設けられたサーボモータの駆動中(ロボット動作中)にサーボアンプの電源電圧が変動しても、サーボアンプの電源電圧の変化に対して逆方向に制御ループゲインが変化するので、制御ループの安定化が図られる。
【0016】
上記のサーボアンプの制御ループゲイン調整方法において、記制御ループは、前記サーボモータの電流を帰還させて形成される電流ループを含み、前記制御ループゲインを調整する工程は、前記電流ループ全体のゲインである電流ループゲインに含まれる比例ゲインを調整する、としてもよい。
【0017】
この方法によれば、サーボアンプの電源電圧の変動に対して、簡易な制御で電流ループを安定化させることができる。
【0018】
上記のサーボアンプの制御ループゲイン調整方法において、検出した前記サーボアンプの電源電圧を上限値から下限値までの範囲内にリミット処理する工程を備える、としてもよい。
【0019】
この方法によれば、簡易な制御で電流ループをさらに安定化させることができる。
【0020】
上記のサーボアンプの制御ループゲイン調整方法において、調整した前記制御ループゲインを上限値から下限値までの範囲内にリミット処理する工程を備える、としてもよい。
【0021】
この方法によれば、簡易な制御で電流ループをさらに安定化させることができる。
【0022】
上記のサーボアンプの制御ループゲイン調整方法において、検出した前記サーボアンプの電源電圧又は調整した前記制御ループゲインをフィルタ処理する工程を備える、としてもよい。
【0023】
この方法によれば、簡易な制御で電流ループをさらに安定化させることができる。
上記目的を達成するために、その他の本発明に係るサーボアンプの制御ループゲイン調整プログラムは、ロボットの各関節に設けられたサーボモータに対して外部からの制御指令に応じた該サーボモータの制御量を帰還させて制御ループを形成する、サーボアンプの制御ループゲイン調整プログラムであって、コンピュータに、前記制御ループゲインのデフォルト値及び前記サーボアンプの電源電圧のデフォルト値に基づいて、前記制御ループを形成するとともに前記サーボモータの駆動を開始する工程と、前記サーボアンプの電源電圧を検出する工程と、検出した前記サーボアンプの電源電圧の変化に対して逆方向に変化するように前記制御ループゲインを調整する工程と、を遂行させる、ものである。
【0024】
上記目的を達成するために、その他の本発明に係るロボット制御装置は、ロボットの各関節に設けられたサーボモータに対して、外部からの制御指令に応じた該サーボモータの制御量を帰還させて制御ループを形成するサーボアンプを備えたロボット制御装置において、前記サーボアンプは、前記サーボモータを駆動する駆動部と、前記サーボアンプ全体の制御を司る制御部と、商用電源を整流して得られる直流の電源電圧を前記制御部に供給する電源部と、を備え、前記制御部は、前記制御ループの制御ループゲインのデフォルト値及び前記電源部の前記電源電圧のデフォルト値に基づいて、前記制御ループを形成するとともに、前記駆動部による前記サーボモータの駆動を開始する手段と、前記電源部の前記電源電圧を検出する手段と、検出した前記電源電圧が上昇する場合には減少させ、前記の電源電圧が下降する場合には増大させるように前記制御ループゲインを調整する手段と、を備えるものである。
【発明の効果】
【0025】
本発明によれば、ロボット動作中のサーボアンプの電源電圧の変動に対して簡易な制御で制御ループを安定化させることができる。
【図面の簡単な説明】
【0026】
【図1】図1は、本発明の実施の形態に係るサーボアンプを含むロボット制御システムの全体構成を示した図である。
【図2】図2は、図1に示すロボット制御装置の詳細な構成を示した図である。
【図3】図3は、図2に示す電流サーボ制御系の概略のブロック線図である。
【図4】図4は、図1、図2に示すロボット制御装置の電流ループゲインの調整動作を説明するフローチャートである。
【図5】図5は、図4に示すフローチャートを遂行したときの電流ループゲインKCP及びPN間電圧PNvoltageの時間的推移を表したグラフである。
【発明を実施するための形態】
【0027】
以下、本発明の好ましい実施の形態を、図面を参照しながら説明する。なお、以下では全ての図を通じて同一又は相当する要素には同一の参照符号を付して、特に言及しない場合にはその重複する説明を省略する。
【0028】
[ロボット制御システムの構成]
図1は、本発明の実施の形態に係るサーボアンプを含むロボット制御システムの全体構成を示した図である。
【0029】
多関節ロボット100は、基台2が作業スペース下側の床面に設置される所謂床置き型の6軸の垂直ロボットとして構成されている。つまり、多関節ロボット100は、先端に設けられた手首と所定の基端から当該手首に向かって順に設けられた6つの関節JT1〜JT6とを具備し6つの関節JT1〜JT6が第1乃至第6回転軸A1〜A6をそれぞれ有し、かつ各回転軸A1〜A6の周りに次の関節を回転させるように構成されている。なお、上記の6つの関節及び6つの回転軸に付与された符号(JT1〜JT6、A1〜A6)は便宜上付したものであり、6つの関節及び6つの回転軸それぞれを識別可能であれば如何なる符号であってもよい。
【0030】
基台2が床面に適正に設置されると、第1乃至第6回転軸A1〜A6は、全ての互いに隣り合う関節の回転軸が互いに垂直となるように配置されている。基台2には、旋回台3、アーム部材(リンク)4、5、6、7及びアタッチメント9がこの順に連設されている。なお、アタッチメント9の先端を成すフランジ面には、各種の作業内容に応じて適宜選択されたツール部材11(図示せず)が着脱可能に取り付けられている。基台2からアタッチメント9までの連設された部材2〜7,9は互いに相対回転可能となるよう連結されている。以下、このように6つの関節JT1〜JT6によって互いに連接された部材群2〜7,9を、ロボットアームと定義する。
【0031】
アーム部材6,7、及びアタッチメント9は、アタッチメント9に取り付けられるツール部材11に微細な動作を行わせるための人間の手首に似せた構造体10(以下、手首装置という。)を成している。第1回転軸A1、第2回転軸A2及び第3回転軸A3は、ツール部材11を手首装置10とともに水平旋回させたり揺動させたりするための回転軸として用いられ、多関節ロボット100の主軸を成している。第4回転軸A4、第5回転軸A5及び第6回転軸A6は、手首装置10に設定される回転軸である。
【0032】
第1乃至第6関節JT1〜JT6にはサーボモータM1〜M6及び位置検出器E1〜E6がそれぞれ設けられている。位置検出器E1〜E6は、例えば、ロータリーエンコーダで構成されている。上記の各サーボモータM1〜M6を駆動することにより、第1乃至第6関節JT1〜JT6においてそれぞれ許容される第1乃至第6回転軸A1〜A6周りの回転が行われる。なお、各サーボモータM1〜M6は互いに独立して駆動することが可能である。また、上記の各サーボモータM1〜M6が駆動されると、上記の各位置検出器E1〜E6によって上記の各サーボモータM1〜M6の第1乃至第6回転軸A1〜A6周りの回転位置の検出が行われる。
【0033】
ロボット制御装置200は、多関節ロボット100の基台2の周辺に配置されている。なお、多関節ロボット100と遠隔に配置されていてもよいし、多関節ロボット100と物理的に着脱可能な形態で接続されてもよい。ロボット制御装置200は、サーボアンプ210を備えている。サーボアンプ210は、多関節ロボット100の第1乃至第6関節JT1〜JT6が具備するサーボモータM1〜M6それぞれに対し、アタッチメント9に取り付けられたツール部材11を任意の位置及び姿勢に任意の経路に沿って移動させるサーボ制御を行うものである。
【0034】
サーボアンプ210は、駆動部230、制御部240及び電源部250を備えている。なお、制御部240及び電源部250は、サーボアンプ210の外部に設けられてもよく、換言すると、サーボアンプ210は、駆動部230のみで構成されていてもよい。
【0035】
駆動部230は、多関節ロボット100のサーボモータM1〜M6を駆動する直流−交流変換器であり、例えば、フルブリッジ回路又はハーフブリッジ回路から成るインバータで構成されている。なお、サーボアンプ210はサーボモータM1〜M6それぞれに対して個別のサーボループを形成するように複数設けられているが、1つのサーボアンプ210によってサーボモータM1〜M6が統括して駆動されるように構成されてもよい。この場合、駆動部230のみがサーボモータM1〜M6毎に設けられる。
【0036】
制御部240は、サーボアンプ210を含めたロボット制御装置200全体の制御を司るものであり、例えば、マイクロコントローラ、CPU、MPU、PLC、DSP、ASIC又はFPGAなどで構成されている。なお、制御部240は、互いに協働して分散制御する複数の制御器によって構成されていてもよい。例えば、上位制御装置とのインタフェース処理をCPUが担当し、サーボアンプ210の基本演算(位置ループ演算、速度ループ演算及び電流ループ演算)をDSPが担当するようにシステム構成されてもよい。
【0037】
電源部250は、商用電源220(一次電源)を直流に整流して得られる電源電圧(後述のPN間電圧PNvoltage)を駆動部230に供給する交流−直流変換器であり、例えば、サイリスタ整流器、スイッチング電源によって構成されている。
【0038】
ロボット制御装置200は、ティーチペンダントなどの周辺装置(図示せず)と通信可能に接続可能となっている。ロボット制御装置200は、この周辺装置のオペレータの操作によって記憶された位置情報に応じて多関節ロボット100を並進又は回転運動させるための位置指令(制御指令)が入力される。すると、ロボット制御装置200は、制御時間毎に入力された上記の位置指令に基づいて、ツール部材11が当該制御時間の経過後に位置すべき目標位置を算出する。かかる目標位置は、制御時間と予め定められたツール部材11の制限移動速度などから求まる移動距離に基づいて算出された後、制御部240が演算可能となるようにツール座標系(直交座標系)において定義される座標データという形式に変換される。そして、制御部240は、目標位置の座標データの逆変換処理を行い、制御時間の経過後にツール部材11を目標位置に移動させるために必要となる関節角θ1〜θ6をそれぞれ演算し、これらの関節角θ1〜θ6と上記の位置検出器E1〜E6により検出される電源オン時の回転位置との偏差に基づき、第1乃至第6関節JT1〜JT6に設けられたサーボモータM1〜M6の動作量の指令値をそれぞれ演算し、各サーボモータM1〜M6に供給する。これにより、ツール部材11が制御時間の経過毎に目標位置に移動される。
【0039】
[ロボット制御装置の構成]
図2は、図1に示すロボット制御装置の詳細な構成を示した図である。なお、同図に示す参照符号M及びEは、図1に示す各軸A1〜A6のサーボモータM1〜M6及び位置検出器E1〜E6のうちのいずれか一つを表している。駆動部230及び制御部240は、各軸A1〜A6それぞれに設けられるものである。また、同図に示す太線は、電流サーボ系の電流ループを表している。
【0040】
電源部250は、商用電源220から供される三相交流又は単相交流を全波整流する全波整流器251と、全波整流器251の出力を直流に平滑化する平滑コンデンサ252と、サーボモータMが発電機として作動する回生時に用いられる回生抵抗253及び回生電力放電用トランジスタ254とを備えている。平滑コンデンサ252の両端子間の直流電圧は、後述の駆動部230のソーストランジスタT1及びシンクトランジスタT2の電源電圧として用いられる。以下では、平滑コンデンサ252の両端子間の電圧のことを、PN間電圧PNvoltageと呼ぶ。このPN間電圧PNvoltageを検出するために、電圧検出器255が設けられている。
【0041】
駆動部230は、サーボモータMの各相それぞれに対して、PN間電圧PNvoltageを規定する正極Pと負極Nとの間に、例えば、ソーストランジスタT1とシンクトランジスタT2とが直列に接続されており、この接続点からサーボモータMの対応したコイルにコイル電流を供給するように構成されている。また、駆動部230は、電流サーボ制御のために、駆動部230からサーボモータMのコイルに供給されるコイル電流を検出する電流検出器231が設けられている。さらに、駆動部230は、無効電流及びサーボモータMが発電機として作動する回生時における電流の経路を形成するために、ソーストランジスタT1とシンクトランジスタT2それぞれに対して回生ダイオードD1,D2を並列に設けている。なお、図2では、図面の簡略化のために、サーボモータMの1相分の駆動部230の構成のみを図示している。
【0042】
制御部240は、位置制御部241と、速度制御部242と、電流制御部243と、パルス幅変調部244と、回生制御部245と、ゲイン調整部246とを備えている。位置制御部241は、ロボット制御装置200からの位置指令とサーボモータMの位置検出器Eにより検出された回転位置との偏差に応じた速度指令を出力する。速度制御部242は、位置制御部241から出力された速度指令と位置検出器Eにより検出された回転位置の微分値(回転速度)との偏差に応じた電流指令(トルク指令)を出力する。電流制御部243は、速度制御部242から出力された電流指令と電流検出器231により検出されたコイル電流との偏差に応じた電圧指令を出力する。パルス幅変調部244は、電流制御部243から出力された電圧指令を三角波信号と比較して、駆動部230のソーストランジスタT1及びシンクトランジスタT2をオンオフさせるPWM信号を生成して出力する。
【0043】
回生制御部245は、電圧検出器255により検出されたPN間電圧PNvoltageを所定の閾値電圧(例えば、後述の上限値PNVOLT_MAX以上の値)と比較した結果に基づいて、回生電力放電用トランジスタ254をオンオフさせるスイッチング制御信号を出力する。詳しくは、回生制御部245は、PN間電圧PNvoltageが閾値電圧を上回るとき、回生電力放電用トランジスタ254をオンさせ、PN間電圧PNvoltageが閾値電圧を下回るとき、回生電力放電用トランジスタ254をオフさせるように、スイッチング制御信号を出力する。
【0044】
ゲイン調整部246は、電圧検出器255により検出されたPN間電圧PNvoltageのレベルに基づいて、電流制御部243の電流ループゲインを調整するものである。
【0045】
図3は、図2に示す電流サーボ制御系の概略のブロック線図である。同図に示すように、電流制御部243は、速度制御部242から出力される電流指令iと電流検出器231により検出されたコイル電流との偏差が入力され、該偏差を入力とする比例ゲインKCPの伝達関数の出力を出力する比例要素247と、比例要素247の出力を入力とする積分ゲインKCIの伝達関数の出力を出力する積分要素248と、を備え、比例要素247の出力と積分要素248の出力とを加算した結果を電圧指令vとして出力するものである。電流制御部243から出力された電圧指令vは電子回路上でパルス幅変調部244によりスイッチングされた後に抵抗成分Rとインダクタンス成分Lを有するサーボモータMに与えられ、その応答としてのコイル電流iが電流制御部243の入力へとフィードバックされる。
【0046】
ここで、電流制御部243のブロック構成では、積分要素248は単なる時定数要素として作用するので、比例要素247の作用が支配的となっている。従って、図3に示す電流制御部243の電流ループゲインは、比例要素247の比例ゲインKCPのみで取り扱っても差し支えなく、電流制御部243では、比例要素247の比例ゲインKCPをPN間電圧PNvoltageのレベルに応じて可変なゲインとしている。
【0047】
[ロボット制御装置の動作(電流ループゲイン調整)]
図4は、図1、図2に示すロボット制御装置の電流ループゲインの調整動作を説明するフローチャートである。
【0048】
まず、商用電源220の交流電力が全波整流器251によって全波整流され、平滑コンデンサ252には直流かつデフォルト値PNVOLT_DEF(例えば、実効値210V、整流値297V)のPN間電圧PNvoltageが充電されており、このPN間電圧PNvoltageが駆動部230のブリッジ回路の電源電圧として出力されている。また、ゲイン調整部246は、電流制御部243の電流ループゲイン(比例ゲイン)KCPをデフォルト値KCP_Defaultに初期設定している(ステップS400)。
【0049】
つぎに、ロボット制御装置200は、多関節ロボット100のサーボモータM1〜M6に対して位置サーボ制御、速度サーボ制御及び電流サーボ制御を開始する。すると、ロボットアームの加速や該ロボットアーム先端のツール部材11によってワークを持ち上げる場合など、多くの電力消費を伴うサーボ制御が行われるときに、商用電源220から供給される電力が各軸のサーボモータM1〜M6で消費される電力に間に合わず、電源部250から駆動部230のブリッジ回路に供給されるPN間電圧PNvoltageが低下することがある。あるいは、ロボットアームの減速や該ロボットアーム先端のツール部材11によってワークを降ろす場合など、サーボモータM1〜M6が発電機として作動する回生動作を伴うサーボ制御が行われるときに、回生抵抗253によってサーボモータM1〜M6が発生した回生電力を消費しきれず、PN間電圧PNvoltageが上昇することがある。
【0050】
そこで、ゲイン調整部246は、PN間電圧PNvoltageがデフォルト値PNVOLT_DEFのα倍になれば、電流制御部243の電流ループゲインKCPをデフォルト値KCP_Defaultの1/α倍に変更する。これにより、ロボットアームの動作状況によってPN間電圧PNvoltageが変動したとしても、電流サーボ制御の電流ループ特性を一定に保つことができる。
【0051】
具体的には、ゲイン調整部246は、電圧検出器255によって検出されたPN間電圧PNvoltageを取得して所定の変数に代入し(ステップS401)、このPN間電圧PNvoltageの変数値が上限値PNVOLT_MAX(例えば350V)から下限値PNVOLT_MIN(例えば250V)までの範囲内に収まっている否かを判定する(ステップS402)。PN間電圧PNvoltageの変数値が上限値PNVOLT_MAXから下限値PNVOLT_MINまでの範囲内に収まっていれば(ステップS402:YES)、電流制御部243の電流ループゲインKCPを次式により演算して所定のバッファに書き込む(ステップS403)。
【0052】
KCP=(PNVOLT_DEF[V]/PNvoltage[V])*KCP_default ・・・(式1)
(式1)はPN間電圧PNvoltageと電流ループゲインKCPとの間には反比例の関係が成立することを表している。
【0053】
PN間電圧PNvoltageの変数値が上限値PNVOLT_MAX以上であれば(ステップS402:NO)、PN間電圧PNvoltageの変数値を上限値PNVOLT_MAXに維持し、下限値PNVOLT_MIN以下であれば(ステップS402:NO)、PN間電圧PNvoltageの変数値を下限値PNVOLTに維持する(ステップS404)。この様にする理由は、電流ループゲインKCPの急激な変化に伴う電流サーボ制御の不安定性を抑止するためである。そして、上記のステップS403に移行して、(式1)に基づいて電流ループゲインKCPが演算される。つまり、電流ループゲインKCPの上限値KCP_MAX及び下限値KCP_MINは、それぞれ次式で表される。
【0054】
KCP_MAX=(PNVOLT_DEF[V]/PNVOLT_MIN[V])*KCP_default ・・・(式2)
KCP_MIN=(PNVOLT_DEF[V]/PNVOLT_MAX[V])*KCP_default ・・・(式3)
つぎに、ゲイン調整部246は、バッファに書き込まれた電流ループゲインKCPの変数値に対してローパスフィルタ処理を実行し(ステップS405)、上限値KCP_MAXから下限値KCP_MINの範囲内に収まるようにリミット処理を実行する(ステップS406)。電流ループゲインKCPの急激な変化に伴う電流サーボ制御の不安定性をさらに抑止するためである。
【0055】
つぎに、ゲイン調整部246は、電流制御部243に初期設定されているデフォルト値KCP_Defaultを、ステップS406で求められた電流ループゲインKCPに変更する(ステップS407)。以降の処理として、ゲイン調整部246は、ステップS401〜S407を繰り返し実行する。
【0056】
図5は、図4に示すフローチャートに従って電流ループゲインKCPを調整したときのPN間電圧PNvoltage及び電流ループゲインKCPの時間的推移を表したグラフである。詳しくは、PN間電圧PNvoltageが上限値PNVOLT_MAX以上となるときの電流ループゲインKCPの時間的推移を表したグラフである。以下、同図に現れた状況を説明する。
【0057】
ロボットアームの減速や該ロボットアーム先端のツール部材11によってワークを降ろすことで、PN間電圧PNvoltageはデフォルト値PNVOLT_DEFから上限値PNVOLT_MAXまで上昇する。このとき、PN間電圧PNvoltageは上限値PNVOLT_MAXから下限値PNVOLT_MINまでの範囲内に収まっているので、ゲイン調整部246は、上記の(式1)に従って、PN間電圧PNvoltageの上昇に反比例して電流制御部243の電流ループゲインKCPを下げるようにする。
【0058】
PN間電圧PNvoltageが上限値PNVOLT_MAX以上となれば、ゲイン調整部246は、電流制御部243の電流ループゲインKCPを下限値KCP_MINに維持する。なお、PN間電圧PNvoltageの上昇に伴ってサーボモータMは発電機として作動している。すると、回生制御部245は、PN間電圧PNvoltageが上限値PNVOLT_MAX以上の閾値電圧となったことを契機として、回生電力放電用トランジスタ254をオフからオンに切り替えるので、回生抵抗253によって回生電力が消費され、PN間電圧PNvoltageは下降することになる。なお、回生動作は継続しているため、PN間電圧PNvoltageは上限値PNVOLT_MAXまで下降すると、回生制御部245は、回生電力放電用トランジスタ254をオンからオフに切り替え、PN間電圧PNvoltageは再び上昇する。このように、回生電力放電用トランジスタ254のオンオフにより、PN間電圧PNvoltageは上昇と下降とを繰り返すことになる。
【0059】
回生動作が終了したとき、PN間電圧PNvoltageは上限値PNVOLT_MAXからデフォルト値PNVOLT_DEFまで徐々に下降する。このとき、PN間電圧PNvoltageは上限値PNVOLT_MAXから下限値PNVOLT_MINまでの範囲内に収まっているので、ゲイン調整部246は、上記の(式1)に従って、PN間電圧PNvoltageの下降に反比例して電流制御部243の電流ループゲインKCPを下限値KCP_MINから上げるようにする。なお、PN間電圧PNvoltageはデフォルト値PNVOLT_DEFとなった後では、電流ループゲインKCPはデフォルト値KCP_Defaultに維持される。
【0060】
[変形例]
PN間電圧PNvoltageのレベルに応じて可変させる電流制御ループゲインは、電流制御部243の比例ゲインKCP及び積分ゲインKCIの両方であってもよい。また、電流制御部243はPID制御を行うように構成されてもよく、この場合、PN間電圧PNvoltageのレベルに応じて可変させる電流制御ループゲインは、比例ゲイン、比例ゲイン+積分ゲイン、比例ゲイン+微分ゲイン、又は比例ゲイン+積分ゲイン+微分ゲインのうちのいずれか一つとしてもよい。
電流ループゲインKCPに対して実行したローパスフィルタ処理は、電圧検出器255から取得したPN間電圧PNvoltageに対して実行してもよい。
電流ループゲインKCPに対して実行したローパスフィルタ処理は、バンドパスフィルタ処理などの他のフィルタ処理であってもよい。
【0061】
なお、ロボット制御装置200の制御対象であるロボットは、上述の6軸の多関節ロボット100には限定されず、任意のロボットであってよい。例えば、6軸以外の多軸の関節ロボット、関節ロボット以外のタイプのロボットであってもよい。
【0062】
また、駆動部230のブリッジ回路を構成するスイッチング素子として、上述のトランジスタ以外に、GTO、IGBT、SIサイリスタ等を用いることができる。
【0063】
上記説明から、当業者にとっては、本発明の多くの改良や他の実施形態が明らかである。従って、上記説明は、例示としてのみ解釈されるべきであり、本発明を実行する最良の態様を当業者に教示する目的で提供されたものである。本発明の精神を逸脱することなく、その構造及び/又は機能の詳細を実質的に変更できる。
【産業上の利用可能性】
【0064】
本発明は、サーボアンプの制御ループゲイン調整方法、プログラム及びロボット制御装置に係り、ロボット動作中のサーボアンプの電源電圧の変動に対して簡易な制御で制御ループを安定化させる上で有用である。
【符号の説明】
【0065】
100…多関節ロボット
M1〜M6…サーボモータ
E1〜E6…位置検出器
A1〜A6…回転軸
JT1〜JT6…関節
2…基台
3…旋回台
4〜7…アーム部材
9…アタッチメント
10…手首装置
11…ツール部材
200…ロボット制御装置
210…サーボアンプ
220…商用電源
230…駆動部
231…電流検出器
T1…ソーストランジスタ
T2…シンクトランジスタ
D1、D2…回生ダイオード
240…制御部
241…位置制御部
242…速度制御部
243…電流制御部
244…パルス幅変調部
245…回生制御部
246…ゲイン調整部
247…比例要素
248…積分要素
250…電源部
251…全波整流器
252…平滑コンデンサ
253…回生抵抗
254…回生電力放電用トランジスタ
255…電圧検出器

【特許請求の範囲】
【請求項1】
ロボットの各関節に設けられたサーボモータに対して外部からの制御指令に応じた該サーボモータの制御量を帰還させて制御ループを形成する、サーボアンプの制御ループゲイン調整方法であって、
前記制御ループゲインのデフォルト値及び前記サーボアンプの電源電圧のデフォルト値に基づいて、前記制御ループを形成するとともに前記サーボモータの駆動を開始する工程と、
前記サーボアンプの電源電圧を検出する工程と、
検出した前記サーボアンプの電源電圧の変化に対して逆方向に変化するように前記制御ループゲインを調整する工程と、
を備えるサーボアンプの制御ループゲイン調整方法。
【請求項2】
前記制御ループは、前記サーボモータの電流を帰還させて形成される電流ループを含み、
前記制御ループゲインを調整する工程は、前記電流ループ全体のゲインである電流ループゲインに含まれる比例ゲインを調整する、請求項1に記載のサーボアンプの制御ループゲイン調整方法。
【請求項3】
検出した前記サーボアンプの電源電圧を上限値から下限値までの範囲内にリミット処理する工程を備える、請求項1に記載のサーボアンプの制御ループゲイン調整方法
【請求項4】
調整した前記制御ループゲインを上限値から下限値までの範囲内にリミット処理する工程を備える、請求項1に記載のサーボアンプの制御ループゲイン調整方法。
【請求項5】
検出した前記サーボアンプの電源電圧又は調整した前記制御ループゲインをフィルタ処理する工程を備える、請求項1に記載のサーボアンプの制御ループゲイン調整方法。
【請求項6】
ロボットの各関節に設けられたサーボモータに対して外部からの制御指令に応じた該サーボモータの制御量を帰還させて制御ループを形成する、サーボアンプの制御ループゲイン調整プログラムであって、
コンピュータに、
前記制御ループゲインのデフォルト値及び前記サーボアンプの電源電圧のデフォルト値に基づいて、前記制御ループを形成するとともに前記サーボモータの駆動を開始する工程と、
前記サーボアンプの電源電圧を検出する工程と、
検出した前記サーボアンプの電源電圧の変化に対して逆方向に変化するように前記制御ループゲインを調整する工程と、
を遂行させる、サーボアンプの制御ループゲイン調整プログラム。
【請求項7】
ロボットの各関節に設けられたサーボモータに対して、外部からの制御指令に応じた該サーボモータの制御量を帰還させて制御ループを形成するサーボアンプを備えたロボット制御装置において、
前記サーボアンプは、
前記サーボモータを駆動する駆動部と、
前記サーボアンプ全体の制御を司る制御部と、
商用電源を整流して得られる直流の電源電圧を前記制御部に供給する電源部と、を備え、
前記制御部は、
前記制御ループの制御ループゲインのデフォルト値及び前記電源部の前記電源電圧のデフォルト値に基づいて、前記制御ループを形成するとともに、前記駆動部による前記サーボモータの駆動を開始する手段と、
前記電源部の前記電源電圧を検出する手段と、
検出した前記電源電圧が上昇する場合には減少させ、前記の電源電圧が下降する場合には増大させるように前記制御ループゲインを調整する手段と、
を備えるロボット制御装置。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−125844(P2012−125844A)
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願番号】特願2010−276687(P2010−276687)
【出願日】平成22年12月13日(2010.12.13)
【出願人】(000000974)川崎重工業株式会社 (1,710)
【Fターム(参考)】