JP2014137626A - ロボットの制御方法及びロボット制御装置 - Google Patents
ロボットの制御方法及びロボット制御装置 Download PDFInfo
- Publication number
- JP2014137626A JP2014137626A JP2013004545A JP2013004545A JP2014137626A JP 2014137626 A JP2014137626 A JP 2014137626A JP 2013004545 A JP2013004545 A JP 2013004545A JP 2013004545 A JP2013004545 A JP 2013004545A JP 2014137626 A JP2014137626 A JP 2014137626A
- Authority
- JP
- Japan
- Prior art keywords
- control
- current
- dead zone
- integral
- control loop
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Manipulator (AREA)
- Control Of Position Or Direction (AREA)
Abstract
【課題】
各軸のモータ電流の正領域から負領域、または負領域から正領域に切り替わる不感帯領域に起因するエンドエフェクタの速度変動の制御性能の劣化を防止するロボット制御装置を提供する。
【解決手段】
コントローラRCはマニピュレータの関節軸を駆動するサーボモータ41〜47を、PID制御を備えた電流制御ループを含むCPU91によりサーボ制御する。CPU91はサーボモータ41〜47の相電流がゼロクロスを含む不感帯領域に入ったとき、電流制御ループに加えて予め設定されたフィードフォワード量でサーボモータ41〜47をフィードフォワード制御するとともに電流制御ループの積分制御を前記不感帯領域に入る直前の電流制御ループの積分ゲインよりも大きい積分ゲインで行う。相電流が不感帯領域から脱したとき、フィードフォワード制御を停止するとともに不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻す。
【選択図】図2
各軸のモータ電流の正領域から負領域、または負領域から正領域に切り替わる不感帯領域に起因するエンドエフェクタの速度変動の制御性能の劣化を防止するロボット制御装置を提供する。
【解決手段】
コントローラRCはマニピュレータの関節軸を駆動するサーボモータ41〜47を、PID制御を備えた電流制御ループを含むCPU91によりサーボ制御する。CPU91はサーボモータ41〜47の相電流がゼロクロスを含む不感帯領域に入ったとき、電流制御ループに加えて予め設定されたフィードフォワード量でサーボモータ41〜47をフィードフォワード制御するとともに電流制御ループの積分制御を前記不感帯領域に入る直前の電流制御ループの積分ゲインよりも大きい積分ゲインで行う。相電流が不感帯領域から脱したとき、フィードフォワード制御を停止するとともに不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻す。
【選択図】図2
Description
本発明は、ロボットの制御方法及びロボット制御装置に関する。
ロボットのアームを駆動するモータにおいて、不感帯を解消する制御方法としては、特許文献1及び特許文献2が公知である。
特許文献1は、モータの可動部の位置に応じて、相互に90°位相差のある2つの正弦波を決められたピッチを周期として出力するエンコーダを設け、前記エンコーダと演算器との間に指令値に従って帯域を指定するプログラマブル・フィルタを設け、アームの移動開始時は前記プログラマブル・フィルタをハイパスフィルタとして使用し、アームの移動後の停止時にはバンドパスフィルタとして使用するものである。前記演算器は、前記プログラマブル・フィルタを介して入力された前記エンコーダからの2相の出力に基づいて演算し、減算器は指令部からの指令値によりモータ電流検出値と前記演算器の出力(演算結果)を減算するようにしている。このことによって、アームの移動開始時の伝達系の静止摩擦によるモータの出力軸への力の不感帯を補正するとともに、アームの空間移動から対象物へ接触するときに発生する衝撃力を減少させる利点がある。
特許文献1は、モータの可動部の位置に応じて、相互に90°位相差のある2つの正弦波を決められたピッチを周期として出力するエンコーダを設け、前記エンコーダと演算器との間に指令値に従って帯域を指定するプログラマブル・フィルタを設け、アームの移動開始時は前記プログラマブル・フィルタをハイパスフィルタとして使用し、アームの移動後の停止時にはバンドパスフィルタとして使用するものである。前記演算器は、前記プログラマブル・フィルタを介して入力された前記エンコーダからの2相の出力に基づいて演算し、減算器は指令部からの指令値によりモータ電流検出値と前記演算器の出力(演算結果)を減算するようにしている。このことによって、アームの移動開始時の伝達系の静止摩擦によるモータの出力軸への力の不感帯を補正するとともに、アームの空間移動から対象物へ接触するときに発生する衝撃力を減少させる利点がある。
また、特許文献2は、ロボットのアームを駆動する駆動装置において、アームの位置信号と指令信号との偏差の絶対値が閾値より大きいと判断されたときから一定期間内は不感帯の補償信号を生成して出力を保持し、前記補償信号と前記偏差とを加算して被制御体の駆動を行うようにしたものである。このことによって、アクチュエータの不感帯を除去する利点がある。
しかしながら、多軸ロボットを動作させる場合、各軸のモータ電流の正領域から負領域及び負領域から正領域に切り替わるゼロクロスを中心とした不感帯領域に対してはなんら考慮されていない技術である。
本発明の目的は、各軸のモータ電流の正領域から負領域、または負領域から正領域に切り替わる不感帯領域に起因するエンドエフェクタの速度変動の制御性能の劣化を防止するロボットの制御方法及びロボット制御装置を提供することにある。
上記問題点を解決するために、本ロボット制御装置は、多関節ロボットの関節軸を駆動するサーボモータを、比例制御、積分制御及び微分制御のうち、少なくとも比例制御及び積分制御を備えた電流制御ループを含む制御部によりサーボ制御するロボット制御装置において、前記制御部は、前記サーボモータのモータ電流がゼロクロスを含む不感帯領域に入ったとき、前記電流制御ループに加えて予め設定されたフィードフォワード量で前記サーボモータをフィードフォワード制御するとともに、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインよりも大きい積分ゲインで行い、前記モータ電流が前記不感帯領域から脱したとき、前記フィードフォワード制御を停止するとともに、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻すことを行うものである。
また、ロボット制御装置は、多関節ロボットの関節軸を駆動するサーボモータを、比例制御、積分制御及び微分制御のうち、少なくとも比例制御及び積分制御を備えた電流制御ループを含む制御部によりサーボ制御するロボット制御装置において、前記制御部は、前記サーボモータのモータ電流がゼロクロスを含む不感帯領域にあるか否かを判定する判定部と、前記モータ電流が前記不感帯領域にある場合、予め設定されたフィードフォワード量で前記サーボモータをフィードフォワード制御するフィードフォワード制御部を備え、前記制御部は、前記モータ電流が前記不感帯領域にある場合、前記電流制御ループの積分制御を前記不感帯領域に入る直前の電流制御ループの積分ゲインよりも大きい積分ゲインで行い、前記モータ電流が前記不感帯領域から脱したとき、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻すことを行うものである。
また、本ロボットの制御方法は、多関節ロボットの関節軸を駆動するサーボモータを、比例制御、積分制御及び微分制御のうち、少なくとも比例制御及び積分制御を備えた電流制御ループを含む制御部によりサーボ制御するロボットの制御方法において、前記サーボモータのモータ電流がゼロクロスを含む不感帯領域に入ったとき、前記電流制御ループに加えて予め設定されたフィードフォワード量で前記サーボモータをフィードフォワード制御するとともに、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインよりも大きい積分ゲインで行い、前記モータ電流が前記不感帯領域から脱したとき、前記フィードフォワード制御を停止するとともに、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻すことを行うものである。
本発明のロボットの制御方法及びロボット制御装置によれば、各軸のモータ電流の正領域から負領域、または負領域から正領域に切り替わる不感帯領域に起因するエンドエフェクタの速度変動の制御性能の劣化を防止することができる効果を奏する。
以下、本発明を具体化した一実施形態の7軸マニピュレータを制御するロボット制御方法及びロボット制御装置を図1〜図5を参照して説明する。
まず、本実施形態の作業自由度に対して冗長自由度を有するマニピュレータについて説明する。
まず、本実施形態の作業自由度に対して冗長自由度を有するマニピュレータについて説明する。
図1に示すように、マニピュレータ10は、8個のリンク11〜18が7個の関節21〜27により直列に連結されて形成されている。多関節ロボットであるマニピュレータ10は、7個の関節21〜27においてリンク12〜18が旋回することのできる7自由度(自由度n=7)を有するロボットであり、その作業空間の次元数(次元数m)は6であって、1(=n−m)の冗長性を有する。
第1リンク11は一端が床面FLに固定され、他端が第1関節21の一側に接続されている。第1関節21の他側には、第2リンク12の一端が接続され、第2リンク12の他端には第2関節22の一側が接続されている。以下同様に、第3リンク13、第4リンク14、第5リンク15、第6リンク16、第7リンク17及び第8リンク18が、それぞれ第3関節23、第4関節24、第5関節25、第6関節26及び第7関節27を介して順に連結されている。
第1関節21の他側は一側に対して、矢印31に示すように、図1において上下方向に延びる軸を中心に回転可能とされており、これにより、第2リンク12は隣接する第1リンク11に対して、第1関節21の回転軸(J1軸)を中心に矢印31方向に旋回可能である。
また、第2関節22の他側は一側に対して、矢印32に示すように、図1において紙面に垂直な方向に延びる軸(J2軸)を中心に回転可能とされている。これにより、第3リンク13は隣接する第2リンク12に対して、第2関節22の回転軸を中心に矢印32方向、すなわち、上下方向に回転可能である。
以下、第3関節23、第4関節24、第5関節25、第6関節26及び第7関節27についてもそれぞれ、回転可能とされており、第4リンク14、第5リンク15、第6リンク16、第7リンク17及び第8リンク18も、それぞれ関節23〜27の回転軸(J3軸〜J7軸)を中心に、矢印33〜37方向に旋回可能である。尚、本願の全体にわたって、第1関節21〜27を介して連結されているリンク11〜18同士を、互いに隣接するリンク11〜18という。また、J1軸〜J7軸は、関節軸に相当する。
なお、J2軸、J4軸及びJ6軸の回転方向は、図1に示すように、重力加速度が働く方向と一致している。
図1に示すように、第1関節21には第1サーボモータ41が取り付けられており、電力が供給されることにより、第2リンク12を図示しない減速機を介して第1リンク11に対して旋回させる。
図1に示すように、第1関節21には第1サーボモータ41が取り付けられており、電力が供給されることにより、第2リンク12を図示しない減速機を介して第1リンク11に対して旋回させる。
また、第2関節22には第2サーボモータ42が取り付けられており、電力が供給されることにより、第3リンク13を図示しない減速機を介して第2リンク12に対して旋回させる。以下、同様に、第3関節23、第4関節24、第5関節25、第6関節26及び第7関節27にはそれぞれサーボモータ43〜47が取り付けられており、電力が供給されることにより、各々リンク14〜18を図示しない減速機を介して旋回させる。
なお、各モータは、各関節内に設けられるが、図1では、説明の便宜上、関節とは分離して図示している。また、本実施形態では回転系アクチュエータ(以下、単にアクチュエータという)としてサーボモータであるACモータが使用されているが、限定されるものではない。
第8リンク18の先端には、エンドエフェクタとしてのツール49が取り付けられている。ツール49は第8リンク18とともに、第7関節27の回転軸(J7軸)を中心に図1に示すように矢印37方向に旋回可能とされている。ツール49は、例えば、ワーク等を把持可能なハンドである。なお、ツール49の種類は、本発明とは関係しないため、限定されるものではない。
上述したようにマニピュレータ10は、第1サーボモータ41〜第7サーボモータ47を駆動して第2リンク12〜第8リンク18を回転させることにより、第2リンク12〜第8リンク18の回転角度が累積して先端部にあるツール49に働くため、ツール49の先端の位置および姿勢を、その作業内容に応じた目標位置および目標姿勢に一致させることが可能である。
次に、図2を参照して、前記マニピュレータ10を制御するロボット制御装置としてのコントローラRCを中心とした多関節ロボットの電気的な構成を説明する。
コントローラRCは、コンピュータ90と、コンピュータ90に電気的に接続されたPWMジェネレータ51〜57と、PWMジェネレータ51〜57に電気的に接続されたサーボアンプ61〜67を有する。各サーボアンプ61〜67はそれぞれ第1サーボモータ41〜第7サーボモータ47に電気的に接続されている。
コントローラRCは、コンピュータ90と、コンピュータ90に電気的に接続されたPWMジェネレータ51〜57と、PWMジェネレータ51〜57に電気的に接続されたサーボアンプ61〜67を有する。各サーボアンプ61〜67はそれぞれ第1サーボモータ41〜第7サーボモータ47に電気的に接続されている。
コンピュータ90は、制御指令をPWMジェネレータ51〜57に出力し、PWMジェネレータ51〜57は、当該制御指令に基づいてPWM信号をサーボアンプ61〜67に出力する。サーボアンプ61〜67は、その出力に応じてサーボモータ41〜47を作動させることにより、各リンク12〜18を回転させる。
前記サーボモータ41〜47にはロータリエンコーダ71〜77が内蔵されており、インターフェイス80を介してコンピュータ90と接続されている。ロータリエンコーダ71〜77は、各々のサーボモータ41〜47の回動角度を検出することにより、すなわち、リンク12〜18のそれぞれが隣接するリンク11〜17に対する回転角度(なお、関節軸の関節角度ということがある)を検出して、その検出信号をコントローラRCに送信する。ロータリエンコーダ71〜77は、回転角度検出器に相当する。なお、回転角度検出器としては、ロータリエンコーダに限定するものではなく、レゾルバ、或いは、ポテンショメータであってもよい。
なお、第1サーボモータ41〜第7サーボモータ47に対してロータリエンコーダ71〜77を設ける代わりに、リンク11〜18または第1関節21〜第7関節27に、リンク11〜18の回転角度(関節軸の関節角度)を直接に検出可能なセンサを取り付けてもよい。
前記コンピュータ90は、CPU91、ROM92、RAM93、及びハードディスク等の不揮発性の記憶部94、及びインターフェイス95等を備え、バス96を介して電気的に接続されている。
記憶部94には、各種データ、ロボットに各種作業を行わせるための作業プログラム、各種パラメータ等が記憶されている。作業プログラムは、教示ステップ(教示により記述されたプログラムの行)毎に、教示点、動作指令或いは各種動作条件等のパラメータが記述されている。
本実施形態のロボットは、ティーチングプレイバック方式で作動するロボットであり、前記作業プログラムが実行されることにより、前記マニピュレータ10が動作する。ROM92は、システム全体のシステムプログラムが記憶されている。RAM93は、CPU91の作業用のメモリであって、各種演算等が実行されるときに一時的にデータが格納される。CPU91は、判定部、フィードフォワード制御部及び制御部に相当する。
コントローラRCには入力装置82が前記インターフェイス95を介して接続されている。入力装置82は、図示しないモニター画面及び各種入力キー等を有する操作盤であり、ユーザーが各種のデータを入力操作可能とされている。入力装置82は、多関節ロボットの電源スイッチが設けられるとともに、コンピュータ90に対して、マニピュレータ10の先端部にあるツール49の先端(以下、手先という)の最終目標位置および最終目標姿勢、ツール49の先端の補間点における位置および姿勢の入力、並びに、冗長性を利用したマニピュレータ10の姿勢変更のためのジョグ操作等による入力が可能となっている。
(実施形態の作用)
次に、本実施形態による多関節ロボットのコントローラRCの作用を図3〜図5を参照して説明する。
次に、本実施形態による多関節ロボットのコントローラRCの作用を図3〜図5を参照して説明する。
図3に示すように、CPU91は、それぞれ位置制御部110、速度制御部120及び電流制御部130として位置制御、速度制御及び電流制御を実行する。なお、図3は、一点鎖線から左側は、コントローラRC側の動作を表わし、右側は、サーボモータ側の動作を表わしている。
図3に示すように、CPU91が、RAM93に格納された作業プログラムに記述されているエンドエフェクタ(ツール49)の目標位置及び目標姿勢に基づいて逆変換演算を行って求めた各サーボモータの回転位置を位置指令θs*とする。
この位置指令θs*と、ロータリエンコーダ71〜77にて求めた各サーボモータ41〜47の実位置θkとの偏差を算出する。なお、前記ロータリエンコーダ71〜77は作業プログラムでの制御周期よりも、十分に短い検出周期で回転角度(すなわち、関節角度)を検出している。
そして、この算出した位置偏差に、位置制御部110では、P制御(比例制御)にて、予め設定されている位置ゲインK0を乗じて、サーボモータの目標速度(速度指令ωs*)を算出する。位置ゲインK0は、位置制御ループのゲインである。
さらにこの速度指令ωs*と、実位置θkから求められた各サーボモータ41〜47の実速度ωとの速度偏差に、速度制御部120では、PID制御により、予め設定されている所定の速度ゲインK1を乗じて、各サーボモータ41〜47に対する電流指令iq*を算出し、この電流指令iq*を電流制御部130に出力する。
ここでの速度ゲインK1は、PID制御における比例制御の比例ゲインK11、積分制御の積分ゲインK12及び微分制御の微分ゲインK13を総合したものであり、各ゲインは予め設定されたものである。ここでは、実速度ωがフィードバックされた速度制御ループが構成されている。
また、電流制御部130は、図示しない電流検出回路にて検出されるとともにA/D変換された各サーボモータ41〜47の各相の相電流(実電流iq)と前記電流指令iq*の電流偏差を取り込む。また、電流制御部130は後述する制御フローチャートの実行時のために実電流iqを取り込む。
図4は、電流制御部130が実行する制御フローチャートである。この制御フローチャートは、実電流iqの検出周期毎に実行される。S10では、実電流iqが不感帯領域Dにあるか否かを判定する。不感帯領域Dは、|iq|≦εの範囲をいい、閾値ε(>0)は、ゼロクロスに近い値である。すなわち、図5に示すように不感帯領域Dは、正領域及び負領域のうち、ゼロクロスに近い値を含む領域である。なお、図5は、ACモータが三相モータの場合であって、定常状態のときの相電流を正弦波で示している。図5において、横軸はACモータの回転子の回転角であり、縦軸は電流である。
S10で、実電流iq(モータ電流)が不感帯領域にないと電流制御部130が判定した場合は、S20で電流制御部130はフィードバック制御を行う。このように、電流制御部130ではPI制御が行われることにより、実電流iqがフィードバックされる電流制御ループが構成される。
すなわち、電流制御部130は、PI制御により制御指令を算出し、具体的には、電流指令iq*と実電流iqとの電流偏差に対して、予め設定されている所定のゲインK2を乗じて、各サーボモータ41〜47に対する制御指令を算出し、この制御指令を図2に示すPWMジェネレータ51〜57に出力してこのフローチャートを一旦終了する。
前記所定のゲインK2は、PI制御における比例制御の比例ゲインKp、及び積分制御の積分ゲインKI1を総合したものであり、各ゲインは予め設定されたものである。
ここで、積分ゲインKI1は、後述する積分ゲインKI2を使用しない場合のフィードバック制御中に使用するものであり、モータ電流が不感帯領域から脱している、すなわち、モータ電流が不感帯領域にないと判定されたとき、不感帯領域に入る直前の電流制御ループの積分ゲインに相当する。
ここで、積分ゲインKI1は、後述する積分ゲインKI2を使用しない場合のフィードバック制御中に使用するものであり、モータ電流が不感帯領域から脱している、すなわち、モータ電流が不感帯領域にないと判定されたとき、不感帯領域に入る直前の電流制御ループの積分ゲインに相当する。
なお、図3において、KI1・1/s、KI2・1/s、及び後述するKif・s、並びに、以下の説明で記述する「s」はラプラス演算子である。
S10で、実電流iq(モータ電流)が不感帯領域にあると電流制御部130が判定した場合は、S30でフィードバック制御の積分制御を不感帯領域に入る直前の電流制御ループの積分ゲインKI1よりも大きい積分ゲインKI2で行うとともに、さらにフィードフォワード制御を加える。
S10で、実電流iq(モータ電流)が不感帯領域にあると電流制御部130が判定した場合は、S30でフィードバック制御の積分制御を不感帯領域に入る直前の電流制御ループの積分ゲインKI1よりも大きい積分ゲインKI2で行うとともに、さらにフィードフォワード制御を加える。
フィードフォワード制御を行うのは、不感帯領域Dでは電流制御ループによる制御が大きく貢献できないためである。
図4に示すようにフィードフォワード制御では、位置制御部110からの速度指令ωs*にゲインKif・s(微分演算子)を乗算することによりフィードフォワード量uを算出する。このフィードフォワード量uは、この不感帯領域Dにおいてエンドエフェクタ(ツール49)の速度変動等の制御性能が劣化しない量である。なお、ゲインKifは電流フィードフォワードゲインである。
図4に示すようにフィードフォワード制御では、位置制御部110からの速度指令ωs*にゲインKif・s(微分演算子)を乗算することによりフィードフォワード量uを算出する。このフィードフォワード量uは、この不感帯領域Dにおいてエンドエフェクタ(ツール49)の速度変動等の制御性能が劣化しない量である。なお、ゲインKifは電流フィードフォワードゲインである。
図4に示すように、電流制御部130は、速度制御部120からの電流指令iq*と前記フィードフォワード量uの和と、実電流iqの偏差を入力してPI制御を行う。ここでの電流制御部130が行うPI制御での所定のゲインK2は、PI制御における比例制御の比例ゲインKp、及び積分制御の積分ゲインKI2を総合したものである。
前記積分ゲインKI2の大きさは、例えば積分ゲインKI1の2倍とするが限定するものではない。
電流制御部130は、前記PI制御により算出した制御指令を図2に示すPWMジェネレータ51〜57に出力してこのフローチャートを一旦終了する。
電流制御部130は、前記PI制御により算出した制御指令を図2に示すPWMジェネレータ51〜57に出力してこのフローチャートを一旦終了する。
前記制御指令が図2に示すPWMジェネレータ51〜57に出力されると、PWMジェネレータ51〜57はPWM信号を生成する。
そして、PWMジェネレータ51〜57は生成したPWM信号を各サーボアンプ61〜67に出力して、各サーボモータ41〜47の通電電流を制御する。なお、図3において、実電流をA/D変換にて取り込む手順を表わすブロックP6に記載のKA/D は、実電流をデジタル値に変換する際の変換定数を表わす。
そして、PWMジェネレータ51〜57は生成したPWM信号を各サーボアンプ61〜67に出力して、各サーボモータ41〜47の通電電流を制御する。なお、図3において、実電流をA/D変換にて取り込む手順を表わすブロックP6に記載のKA/D は、実電流をデジタル値に変換する際の変換定数を表わす。
この結果、各サーボモータ41〜47のモータ巻線には、各サーボアンプ61〜67から、PWM信号に応じて駆動電圧が印加され、モータ巻線の端子電圧は、この駆動電圧と、モータの回転角速度に逆起電力定数Keを乗じて得られる逆起電圧とを合成した電圧となる。そして、各モータ巻線には、この端子電圧に、モータインダクタンスL及びモータ抵抗Rをパラメータとする係数{1/(R+Ls)}を乗じた電流(つまり実電流)が流れる。
また、モータ巻線に電流が流れると、各サーボモータ41〜47においては、回転子に、実電流とトルク定数Ktとにより決定されるモータトルクTMが発生し、モータ軸のイナーシャJによる遅れ(1/J)を伴って回転角加速度が発生し、その回転角加速度を積分(1/s)した回転速度に制御される。そして、この回転速度を積分(1/s)した回転位置が、各サーボモータ41〜47に設けられたロータリエンコーダ等のセンサにて検出され、その検出信号がコントローラRC内にフィードバックされる。
このようにして、コントローラRCは、各サーボモータ41〜47の回転位置,速度をフィードバック制御するサーボ系の制御装置として構成され、各サーボモータ41〜47の回転位置、及びツール49の位置を制御する。
本実施形態では、下記の特徴を有する。
(1) 本実施形態のロボットの制御方法は、マニピュレータ10(多関節ロボット)の関節軸を駆動するサーボモータ41〜47を、PI制御を備えた電流制御ループを含むCPU91(制御部)によりサーボ制御する。そして、CPU91は、サーボモータ41〜47の相電流(モータ電流)がゼロクロスを含む不感帯領域Dに入ったとき、電流制御ループに加えて予め設定されたフィードフォワード量uでサーボモータ41〜47をフィードフォワード制御するとともに、電流制御ループの積分制御を、不感帯領域に入る直前の電流制御ループの積分ゲインKI1よりも大きい積分ゲインKI2で行い、モータ電流が不感帯領域から脱したとき、フィードフォワード制御を停止するとともに、電流制御ループの積分制御を、不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻すことを行うようにした。
(1) 本実施形態のロボットの制御方法は、マニピュレータ10(多関節ロボット)の関節軸を駆動するサーボモータ41〜47を、PI制御を備えた電流制御ループを含むCPU91(制御部)によりサーボ制御する。そして、CPU91は、サーボモータ41〜47の相電流(モータ電流)がゼロクロスを含む不感帯領域Dに入ったとき、電流制御ループに加えて予め設定されたフィードフォワード量uでサーボモータ41〜47をフィードフォワード制御するとともに、電流制御ループの積分制御を、不感帯領域に入る直前の電流制御ループの積分ゲインKI1よりも大きい積分ゲインKI2で行い、モータ電流が不感帯領域から脱したとき、フィードフォワード制御を停止するとともに、電流制御ループの積分制御を、不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻すことを行うようにした。
従来は、モータ電流が不感帯領域に入った場合、不感帯領域では電流制御ループによる制御は大きく貢献できない。このため、従来は不感帯領域にモータ電流が入ると速度変動が生ずるが、本実施形態では、この不感帯領域中は、電流制御ループ(フィードバック制御)の積分ゲインを不感帯領域に入る直前の電流制御ループの積分ゲインよりも大きくし、さらに、予め設定されたフィードフォワード量uでサーボモータをフィードフォワード制御するため、不感帯領域で、速度変動が生じない。
なお、モータ電流が不感帯領域を脱したときは、フィードフォワード制御を停止し、電流制御ループ(フィードバック制御)の積分ゲインを不感帯領域に入る直前の電流制御ループの積分ゲインに戻すため、フィードフォワード制御終了後の速度変動を抑制することができる。
この結果、各軸のモータ電流の正領域から負領域、または負領域から正領域に切り替わる不感帯領域に起因するエンドエフェクタの速度変動の制御性能の劣化を防止することができる。
(2) 本実施形態のロボット制御装置(コントローラRC)は、マニピュレータ10(多関節ロボット)の関節軸を駆動するサーボモータ41〜47を、PI制御を備えた電流制御ループを含むCPU91(制御部)によりサーボ制御する。そして、CPU91は、サーボモータ41〜47の相電流(モータ電流)がゼロクロスを含む不感帯領域Dに入ったとき、電流制御ループに加えて予め設定されたフィードフォワード量uでサーボモータ41〜47をフィードフォワード制御するとともに、電流制御ループの積分制御を、不感帯領域に入る直前の電流制御ループの積分ゲインKI1よりも大きい積分ゲインKI2で行い、モータ電流が不感帯領域から脱したとき、フィードフォワード制御を停止するとともに、電流制御ループの積分制御を、不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻すことを行うようにした。この結果、上記(1)と同様の効果を奏する。
(3) 本実施形態のロボット制御装置のCPU91(制御部)は、モータ電流が不感帯領域にあるか否かを判定する判定部として機能し、前記モータ電流が不感帯領域にあると判定した場合、予め設定されたフィードフォワード量でサーボモータ41〜47をフィードフォワード制御するフィードフォワード制御部として機能する。また、CPU91(制御部)は、前記モータ電流が前記不感帯領域にある場合、電流制御ループの積分制御を前記不感帯領域に入る直前の電流制御ループの積分ゲインよりも大きい積分ゲインで行い、モータ電流が前記不感帯領域から脱したとき、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻すことを行うようにした。この結果、上記(1)と同様の効果を奏する。
なお、本発明の実施形態は前記実施形態に限定されるものではなく、下記のように変更しても良い。
・ 前記実施形態では、7軸マニピュレータのロボット制御装置に具体化したが、6軸以下のマニピュレータを制御するロボット制御装置、または8軸以上のマニピュレータを制御するロボット制御装置に具体化してもよい。
・ 前記実施形態では、7軸マニピュレータのロボット制御装置に具体化したが、6軸以下のマニピュレータを制御するロボット制御装置、または8軸以上のマニピュレータを制御するロボット制御装置に具体化してもよい。
・ 前記実施形態では、サーボモータをACモータとしたが、DCモータに変更してもよい。
・ 前記実施形態では、電流制御部130は、PI制御を行うようにしたが、PID制御を行うようにしてもよい。
・ 前記実施形態では、電流制御部130は、PI制御を行うようにしたが、PID制御を行うようにしてもよい。
RC…コントローラ(ロボット制御装置)、
10…マニピュレータ、41〜47…サーボモータ、
91…CPU(制御部、判定部、フィードバック制御部)。
10…マニピュレータ、41〜47…サーボモータ、
91…CPU(制御部、判定部、フィードバック制御部)。
Claims (3)
- 多関節ロボットの関節軸を駆動するサーボモータを、比例制御、積分制御及び微分制御のうち、少なくとも比例制御及び積分制御を備えた電流制御ループを含む制御部によりサーボ制御するロボット制御装置において、
前記制御部は、
前記サーボモータのモータ電流がゼロクロスを含む不感帯領域に入ったとき、前記電流制御ループに加えて予め設定されたフィードフォワード量で前記サーボモータをフィードフォワード制御するとともに、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインよりも大きい積分ゲインで行い、前記モータ電流が前記不感帯領域から脱したとき、前記フィードフォワード制御を停止するとともに、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻すことを行うロボット制御装置。 - 多関節ロボットの関節軸を駆動するサーボモータを、比例制御、積分制御及び微分制御のうち、少なくとも比例制御及び積分制御を備えた電流制御ループを含む制御部によりサーボ制御するロボット制御装置において、
前記制御部は、
前記サーボモータのモータ電流がゼロクロスを含む不感帯領域にあるか否かを判定する判定部と、
前記モータ電流が前記不感帯領域にある場合、予め設定されたフィードフォワード量で前記サーボモータをフィードフォワード制御するフィードフォワード制御部を備え、
前記制御部は、前記モータ電流が前記不感帯領域にある場合、前記電流制御ループの積分制御を前記不感帯領域に入る直前の電流制御ループの積分ゲインよりも大きい積分ゲインで行い、前記モータ電流が前記不感帯領域から脱したとき、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻すことを行うロボット制御装置。 - 多関節ロボットの関節軸を駆動するサーボモータを、比例制御、積分制御及び微分制御のうち、少なくとも比例制御及び積分制御を備えた電流制御ループを含む制御部によりサーボ制御するロボットの制御方法において、
前記サーボモータのモータ電流がゼロクロスを含む不感帯領域に入ったとき、前記電流制御ループに加えて予め設定されたフィードフォワード量で前記サーボモータをフィードフォワード制御するとともに、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインよりも大きい積分ゲインで行い、前記モータ電流が前記不感帯領域から脱したとき、前記フィードフォワード制御を停止するとともに、前記電流制御ループの積分制御を、前記不感帯領域に入る直前の電流制御ループの積分ゲインの大きさに戻すことを行うロボットの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013004545A JP2014137626A (ja) | 2013-01-15 | 2013-01-15 | ロボットの制御方法及びロボット制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013004545A JP2014137626A (ja) | 2013-01-15 | 2013-01-15 | ロボットの制御方法及びロボット制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014137626A true JP2014137626A (ja) | 2014-07-28 |
Family
ID=51415108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013004545A Pending JP2014137626A (ja) | 2013-01-15 | 2013-01-15 | ロボットの制御方法及びロボット制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014137626A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105487375A (zh) * | 2015-12-31 | 2016-04-13 | 中国船舶重工集团公司第七一九研究所 | 一种离散pid控制器参数整定方法 |
CN106571759A (zh) * | 2015-10-12 | 2017-04-19 | 上海安浦鸣志自动化设备有限公司 | 一种显著提升定位系统响应的前馈方法 |
-
2013
- 2013-01-15 JP JP2013004545A patent/JP2014137626A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106571759A (zh) * | 2015-10-12 | 2017-04-19 | 上海安浦鸣志自动化设备有限公司 | 一种显著提升定位系统响应的前馈方法 |
CN105487375A (zh) * | 2015-12-31 | 2016-04-13 | 中国船舶重工集团公司第七一九研究所 | 一种离散pid控制器参数整定方法 |
CN105487375B (zh) * | 2015-12-31 | 2018-06-22 | 中国船舶重工集团公司第七一九研究所 | 一种离散pid控制器参数整定方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5895628B2 (ja) | ロボットの制御方法及びロボット制御装置、並びにロボット制御システム | |
JP5374613B2 (ja) | 多関節ロボットの弾性変形補償制御装置および制御方法 | |
JP4896276B2 (ja) | ロボット、ロボットの制御装置、制御方法、及び制御プログラム | |
US9481088B2 (en) | Robot control device, robot, and robot system | |
JP5916583B2 (ja) | 多関節ロボットのウィービング制御装置 | |
JP5897644B2 (ja) | ロボットの制御装置 | |
JP6584102B2 (ja) | ロボット装置、ロボット制御方法、プログラム、記録媒体、及び物品の製造方法 | |
KR20180059888A (ko) | 로봇교시방법 및 로봇 암 제어장치 | |
KR20180069031A (ko) | 로봇의 다이렉트 교시방법 | |
JP2013248682A (ja) | 多関節ロボットの軌跡制御装置および制御方法 | |
JP5144035B2 (ja) | 産業用ロボットのツールの位置・姿勢制御方法及び制御システム | |
CN102385342A (zh) | 虚拟轴机床并联机构运动控制的自适应动态滑模控制方法 | |
CN105619424A (zh) | 电机驱动设备的控制设备及方法、多轴电机的控制设备 | |
JP2017124455A (ja) | ロボット装置、ロボット制御方法、プログラム及び記録媒体 | |
JP6021478B2 (ja) | ロボット制御装置、及びロボット制御方法 | |
JP2014137626A (ja) | ロボットの制御方法及びロボット制御装置 | |
JP2013223895A (ja) | ロボット制御方法及びロボット制御装置 | |
JP2020015124A (ja) | ロボット制御方法、物品の製造方法、ロボット制御装置、ロボット、プログラム及び記録媒体 | |
JP6700679B2 (ja) | 制御方法、物品の製造方法、ロボット装置、制御プログラム及び記録媒体 | |
JP2013220501A (ja) | ロボット制御方法及びロボット制御装置 | |
JP2013226619A (ja) | ロボット制御方法及びロボット制御装置 | |
JP2014159066A (ja) | ロボット制御装置及びロボットの制御方法 | |
JP2013215818A (ja) | 冗長自由度を持つロボットの制御方法及びロボット制御装置、並びにロボット制御システム | |
JP2014172104A (ja) | ロボット制御装置及びロボット制御方法 | |
JP2013223896A (ja) | ロボット制御方法及びロボット制御装置 |