JP5730179B2 - 多関節型ロボットの制御装置,制御方法及び制御プログラム - Google Patents
多関節型ロボットの制御装置,制御方法及び制御プログラム Download PDFInfo
- Publication number
- JP5730179B2 JP5730179B2 JP2011254807A JP2011254807A JP5730179B2 JP 5730179 B2 JP5730179 B2 JP 5730179B2 JP 2011254807 A JP2011254807 A JP 2011254807A JP 2011254807 A JP2011254807 A JP 2011254807A JP 5730179 B2 JP5730179 B2 JP 5730179B2
- Authority
- JP
- Japan
- Prior art keywords
- angle
- drive system
- joint drive
- joint
- end point
- 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.)
- Active
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23K—SOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
- B23K9/00—Arc welding or cutting
- B23K9/095—Monitoring or automatic control of welding parameters
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/10—Programme-controlled manipulators characterised by positioning means for manipulator elements
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23K—SOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
- B23K9/00—Arc welding or cutting
- B23K9/12—Automatic feeding or moving of electrodes or work for spot or seam welding or cutting
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/06—Programme-controlled manipulators characterised by multi-articulated arms
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/41—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
- G05B19/4103—Digital interpolation
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39527—Workpiece detector, sensor mounted in, near hand, gripper
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40333—Singularity, at least one movement not possible, kinematic redundancy
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40354—Singularity detection
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/42—Servomotor, servo controller kind till VSS
- G05B2219/42207—Generate points between start and end position, linear interpolation
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Robotics (AREA)
- Plasma & Fusion (AREA)
- General Physics & Mathematics (AREA)
- Manufacturing & Machinery (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
Description
具体的に,図24は,作業開始点及び作業終了点におけるJ5軸の角度の符号が異符号であるが,J5軸の角度が0度近傍に到達せず,J4軸やJ6軸の角度も急激に変化することなく動作する場合の軌跡を示している。この場合,特異姿勢近傍に近づいたことを検出することができない。そのため,J5軸の角度が作業開始点における符号のまま移動するため,J4軸〜J6軸の角度を作業終了点の正しい角度に到達させることができない。
そのため,例えば作業終了点の次の教示点に向けて動作する場合にJ4軸〜J6軸の角度が作動範囲外に到達するおそれがある。
(2)前記補間点算出手段により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御手段。
(4)前記例外条件判定手段により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出手段によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作手段。
例えば,前記例外条件は,次の前記補間点からの前記作業部の残りの移動時間又は移動距離の間に前記第1関節駆動系の駆動軸各々の角度を前記作業終了点における角度に到達させる場合に前記第1関節駆動系の少なくとも一つの駆動軸の速度が予め設定された許容範囲を超えることである。これにより,前記第1関節駆動系の駆動軸各々の速度を前記許容範囲に抑えつつ該第1関節駆動系の駆動軸各々の角度を前記作業終了点の角度に確実に到達させることができる。また,前記例外条件が,前記作業部の残りの移動時間又は移動距離が予め設定された所定値以下に達することであってもよい。
ところで,前記作業部と加工対象物の加工線とのズレ量を検出するズレ量検出手段と,前記ズレ量検出手段により検出されたズレ量に基づいて前記作業部を前記加工線に倣って移動させる倣い制御手段とを備える構成では,前記作業終了点の位置が変化することになる。
また,本発明は,多関節型ロボットの制御方法や制御プログラムの発明として捉えることも可能である。
即ち,予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出工程と,前記補間点算出工程により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御工程と,前記駆動制御工程により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の駆動軸各々が前記作業終了点の角度に到達するまでの間に該第1関節駆動系の少なくとも一つの駆動軸の速度又は角度が予め設定された所定範囲を超えることを,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件により判定する例外条件判定工程と,前記例外条件判定工程により前記例外条件が充足したと判定された場合に,前記駆動制御工程に代わって,前記第1関節駆動系及び前記第2関節駆動系を,前記第1関節駆動系の駆動軸各々が前記作業終了点の角度を目標として線形に変化し,且つ前記作業部の位置が予め定められた速度で移動するように駆動させる例外動作工程とを実行する
多関節型ロボットの制御方法や,前記各工程をプロセッサに実行させる制御プログラムの発明として捉えてもよい。
なお、本発明にかかる多関節型ロボットの制御装置の最も好ましい形態は、先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットを制御する多関節型ロボットの制御装置であって,予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出手段と,前記補間点算出手段により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御手段と,前記駆動制御手段により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する例外条件判定手段と,前記例外条件判定手段により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出手段によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作手段と,を備えてなり,前記例外動作手段が,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形動作させる場合より該目標に近い角度の範囲内において該駆動軸各々の角度の候補を複数算出する角度候補算出手段と,前記角度候補算出手段により算出された角度の候補から,該候補各々を採用したときの次の前記補間点の前記作業部から見た作業座標系における3つの姿勢角度の成分のうち予め設定された一つ又は二つの特定成分の変動が最も抑制される角度の候補を選択する角度選択手段と,を備えてなることを特徴とする。
また、本発明にかかる多関節型ロボットの制御方法の最も好ましい形態は、先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットを制御する多関節型ロボットの制御方法であって,予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出工程と,前記補間点算出工程により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御工程と,前記駆動制御工程により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する例外条件判定工程と,前記例外条件判定工程により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出工程によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作工程と,を実行するものであって,前記例外動作工程が,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形動作させる場合より該目標に近い角度の範囲内において該駆動軸各々の角度の候補を複数算出する角度候補算出工程と,前記角度候補算出手段により算出された角度の候補から,該候補各々を採用したときの次の前記補間点の前記作業部から見た作業座標系における3つの姿勢角度の成分のうち予め設定された一つ又は二つの特定成分の変動が最も抑制される角度の候補を選択する角度選択工程と,を実行することを特徴とする。
また、本発明にかかる多関節型ロボットの制御プログラムの最も好ましい形態は、先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1
関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットを制御するための多関節型ロボットの制御プログラムであって,予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出工程と,前記補間点算出工程により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御工程と,前記駆動制御工程により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する例外条件判定工程と,前記例外条件判定工程により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出工程によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作工程と,をプロセッサに実行させるものであって,前記例外動作工程が,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形動作させる場合より該目標に近い角度の範囲内において該駆動軸各々の角度の候補を複数算出する角度候補算出工程と,前記角度候補算出手段により算出された角度の候補から,該候補各々を採用したときの次の前記補間点の前記作業部から見た作業座標系における3つの姿勢角度の成分のうち予め設定された一つ又は二つの特定成分の変動が最も抑制される角度の候補を選択する角度選択工程と,をプロセッサに実行させることを特徴とする。
図1に示すように,本発明の実施の形態に係る多関節型ロボットの制御装置1(以下「制御装置1」と略称する)は,先端にエンドエフェクタ2が設けられた多関節型ロボット3の動作を制御するものであって,演算部11,記憶部12,操作部13などを備えている。前記エンドエフェクタ2は,加工対象物に対して,例えば溶接や塗装などの作用を与える溶接器(トーチ),塗装器,工具,捕獲器などである。
前記操作部13は,シートキーや操作ボタン,操作レバー等を有するユーザインターフェースである。前記操作部13は,ユーザ操作に対応する操作信号を前記演算部11に入力する。具体的に,ユーザによって前記操作部13が操作されることにより,前記多関節型ロボット3の作業開始点,作業終了点,作業時間,移動速度などの各種加工パラメータが設定される。
なお,本発明は,前記演算部11に後述のロボット制御処理を実行させるための制御プログラムの発明として捉えてもよい。
ここに,図2は前記多関節型ロボット3の関節駆動系を示すモデル図である。
ここで,前記第2関節駆動系は,前記第1関節駆動系の駆動軸34〜36の動作にかかわらず,前記多関節型ロボット3のベース座標系Σbaseにおける前記エンドエフェクタ2の位置座標XYZを自由に作り出すことができる。
以下,図3のフローチャートに従って,前記制御装置1により実行されるロボット制御処理の手順の一例について説明する。ここに,図3に示すS1,S2,…は処理手順(ステップ)番号を表す。なお,本発明は,以下の処理手順の各工程を実行する多関節型ロボットの制御方法の発明として捉えてもよい。
(ステップS1)
まず,ステップS1において,前記制御装置1は,前記作業開始点Q1及び前記作業終了点Q2各々の位置及び姿勢を結ぶ教示経路を補間する複数の補間点を算出するための経路方程式P(t)=Q1+ΔP・tを求める。ここに,ΔPは単位時間(1msec)あたりの前記エンドエフェクタ2の位置の移動量,tは前記作業開始点Q1から計時される制御時間[msec]を示している。なお,前記経路方程式P(t)で算出される補間点は,前記多関節型ロボット3のベース座標系Σbaseにおける位置・姿勢XYZαβγ
(t)より表されるものである。
(ステップS2〜S3)
続いて,ステップS2において,前記制御装置1は,前記作業終了点Q2における前記エンドエフェクタ2の位置・姿勢{Xe,Ye,Ze,αe,βe,γe}の逆運動学問題の解を求めることにより,該作業終了点Q2における前記駆動軸31〜36の角度{θ1e,θ2e,θ3e,θ4e,θ5e,θ6e}を算出する。なお,前記操作部13による教示時に前記作業終了点Q2における前記駆動軸31〜36の角度θ1e〜θ6eが直接設定されてもよい。
(ステップS4〜S6)
次に,ステップS4において,前記制御装置1は前記制御時間tを更新する(t=t+Δt)。ここに,Δtは,前記制御装置1による前記多関節型ロボット3の制御周期(サンプル周期)であって,例えば10[msec]や100[msec]である。
具体的に,まず前記制御装置1は,次の補間点の位置・姿勢XYZαβγ(t)={Xs+ΔX・t,Ys+ΔY・t,Zs+ΔZ・t,αs+Δα・t,βs+Δβ・t,γs+Δγ・t}を算出する。そして,前記制御装置1は,前記位置・姿勢XYZαβγ(t)の逆運動学問題の解を求めることにより,次の補間点における前記駆動軸31〜36各々の角度θ1(t),θ2(t),θ3(t),θ4(t),θ5(t),θ6(t)を算出する。なお,前記制御開始フラグFが1に設定された後は,前記角度θ1(t)〜θ6(t)を用いないため,当該ステップS5の処理は省略してもよい。
(ステップS61)
ステップS61において,前記制御装置1は,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する。ここに,当該ステップS61は,後述のステップS64において前記第1関節駆動系及び前記第2関節駆動系の駆動軸31〜36各々が前記ステップS5で算出された角度θ1(t)〜θ6(t)に基づいて駆動されているときに実行される。ここに,係る判定処理を実行するときの前記制御装置1が例外条件判定手段に相当する。前記第1関節駆動系の特異姿勢の検出条件とは,例えば前記駆動軸35の角度が0に近づいたことや前記駆動軸34,36の角度が急激に変化したことである。
|(θ4e−θ4(t))/T(t)|>θ4d …(11)
|(θ5e−θ5(t))/T(t)|>θ5d …(12)
|(θ6e−θ6(t))/T(t)|>θ6d …(13)
なお,前記エンドエフェクタ2の残りの移動時間に限らず,該エンドエフェクタ2の残りの移動距離(=残りの移動時間×移動速度)の間に,前記駆動軸34〜36各々の速度を許容範囲内に維持しつつ,前記エンドエフェクタ2を前記作業終了点Q2に到達させることができるか否かを判定してもよい。また,単に前記エンドエフェクタ2の残りの移動時間や残りの移動距離が予め設定された所定値以下に達することを前記例外条件として用いることも他の実施例として考えられる。
(ステップS64)
ステップS64において,前記制御装置1は,前記駆動軸31〜36各々を前記ステップS5で算出された角度θ1(t),θ2(t),θ3(t),θ4(t),θ5(t),θ6(t)に基づいて駆動させ,処理をステップS12に移行させる。なお,当該ステップS64における処理は従来と同様であるため,詳細な説明は省略する。ここに,係る駆動処理を実行するときの前記制御装置1が駆動制御手段に相当する。
(ステップS62〜S63)
一方,前記例外条件が充足すると,続くステップS62において,前記制御装置1は,前記制御開始フラグFを1に設定する。これにより,今後,前記ステップS6においては,前記制御開始フラグFが1であると判断され,処理は前記ステップS61〜S63を経由することなく後述のステップS7に移行することとなる。
(ステップS7〜S8)
そして,ステップS7において,前記制御装置1は,現在の補間点からの残りの移動時間T(t−Δt)の間に,前記駆動軸34〜36各々の角度を前記作業終了点Q2の角度に到達させるために必要な前記駆動軸34〜36各々の単位時間(1msec)あたりの速度Vθ4,Vθ5,Vθ6を算出する。ここに,速度Vθ4,Vθ5,Vθ6は,現在の前記駆動軸34〜36各々の角度θ4OLD ,θ5OLD ,θ6OLD を前記作業終了点Q2における角度θ4e,θ5e,θ6eに線形に変化させるための速度である。具体的に,速度Vθ4,Vθ5,Vθ6は,以下の(21)式〜(23)式により算出可能である。
Vθ4=(θ4e−θ4OLD )/T(t−Δt) …(21)
Vθ5=(θ5e−θ5OLD )/T(t−Δt) …(22)
Vθ6=(θ6e−θ6OLD )/T(t−Δt) …(23)
次に,ステップS8において,前記制御装置1は,前記ステップS7で算出された速度Vθ4,Vθ5,Vθ6に基づいて,次の補間点の前記駆動軸34〜36の角度θ4NOW,θ5NOW ,θ6NOW を算出する。ここに,角度θ4NOW ,θ5NOW ,θ6NOW は,以下の(31)式〜(33)式により算出可能である。
θ4NOW =θ4OLD +Vθ4・Δt …(31)
θ5NOW =θ5OLD +Vθ5・Δt …(32)
θ6NOW =θ6OLD +Vθ6・Δt …(33)
(ステップS9〜S10)
そして,ステップS9において,前記制御装置1は,前記ステップS8で算出された次の補間点の角度θ4NOW ,θ5NOW ,θ6NOW と,前記ステップS5で算出された次の補間点の位置座標XYZ(t)とに基づいて,前記第2関節駆動系の駆動軸31〜33各々の次の補間点における角度θ1NOW ,θ2NOW ,θ3NOW を算出する。
なお,前記制御装置1は,ステップS10において,前記駆動軸34〜36各々の角度θ4NOW ,θ5NOW ,θ6NOW を,次の制御周期で使用するためにθ4OLD ,θ5OLD ,θ6OLD として記憶する(θ4OLD =θ4NOW ,θ5OLD =θ5NOW ,θ6OLD =θ6NOW )。
(ステップS11〜S12)
その後,ステップS11において,前記制御装置1は,前記ステップS8で算出された次の補間点における前記駆動軸34〜36の角度θ4NOW ,θ5NOW ,θ6NOW と,前記ステップS9で算出された次の補間点における前記駆動軸31〜33の角度θ1NOW ,θ2NOW ,θ3NOW とに基づいて前記駆動軸31〜36を駆動させる。このように,当該ロボット制御処理では,前記例外条件が充足した後は,前記ステップS64における駆動制御に代えて,前記ステップS11における駆動制御が実行される。
ここに,図4及び図5は,前記作業開始点Q1及び前記作業終了点Q2における前記駆動軸35の符号が異符号である場合の動作例を示すものであって,図4は従来例を示すものであり,図5は前記ロボット制御処理(図3)の実行結果を示すものである。具体的に,前記作業開始点Q1における前記駆動軸35の角度θ5sが+65度,前記作業終了点Q2における前記駆動軸35の角度θ5eが−65度である。
具体的に,本実施例1では,前記制御装置1が,前記ステップS61において,前記駆動軸34〜36の少なくとも一つの駆動軸の次の補間点における角度が予め設定された作動範囲を超える場合に,前記例外条件が充足したと判定する。例えば,前記制御装置1は,予め設定された前記駆動軸34〜36各々のプラス側の作動範囲がθ4+L ,θ5+L ,θ6+L ,前記駆動軸34〜36各々のマイナス側の作動範囲がθ4-L ,θ5-L ,θ6-L であるとき,以下の(41)〜(46)の少なくとも一つが成立した場合に前記例外条件が充足したと判定する。なお,前記駆動軸34〜36各々の作動範囲とは,例えば前記駆動軸34〜36の駆動モータの許容動作範囲である。
θ4(t)>θ4+L …(41)
θ4(t)<θ4-L …(42)
θ5(t)>θ5+L …(43)
θ5(t)<θ5-L …(44)
θ6(t)>θ6+L …(45)
θ6(t)<θ6-L …(46)
ここに,図6及び図7は,前記作業開始点Q1及び前記作業終了点Q2における前記駆動軸35の符号が異符号である場合の動作例を示すものであって,図6は従来例を示すものであり,図7は本実施例1に係るロボット制御処理の実行結果を示すものである。具体的に,前記作業開始点Q1における前記駆動軸35の角度θ5sが−10度,前記作業終了点Q2における前記駆動軸35の角度θ5eが+10度である。なお,前記駆動軸34〜36の角度の作動範囲は−180度〜+180度であるものとする。
さらに,前記例外条件が充足する時点L2における前記駆動軸34〜36各々の線形動作開始時の速度が緩やかになるように該駆動軸34〜36の角度を補正することも考えられる。例えば図8は,前記例外条件が充足する前後の前記駆動軸36の角度の変化例を示している。図8に実線で示すように,前記駆動軸36の角度が180度まで増加した後,急にマイナス方向に向けて変化すると,該駆動軸36に急激なマイナス方向の加速度が生じ,振動などの原因となる。そこで,図8に破線で示すように,前記駆動軸36の作動範囲の上限値180に到達することを事前に推定し,その時点から前記駆動軸36の角度が緩やかにマイナス方向に変化するように,該駆動軸36の角度を補正することが考えられる。これにより,前記例外条件が充足した直後に前記駆動軸36の急激な加速度が生じないため,振動などを防止することができる。もちろん,前記駆動軸35,36についても同様である。
ここに,図9は,本実施例2に係るロボット制御処理の手順の一例を示すフローチャートである。なお,前記ロボット制御処理(図3参照)と同様の処理手順については同じ符号を付してその説明を省略する。
(ステップS21,S31,S41)
ステップS21において,前記制御装置1は,前記作業終了点Q2における前記駆動軸34〜36の角度θ4e,θ5e,θ6eと共に,前記作業開始点Q1における前記駆動軸34〜36の角度θ4s,θ5s,θ6sを算出する。
求められる。
Δθ4=(θ4e−θ4s)/T(s) …(51)
Δθ5=(θ5e−θ5s)/T(s) …(52)
Δθ6=(θ6e−θ6s)/T(s) …(53)
次に,ステップS31において,前記制御装置1は,制御時間t及び制御開始フラグFを0に初期設定すると共に,前記駆動軸34〜36に対応する基準角度θk(t)={θ4k,θ5k,θ6k}の初期設定を行う。前記基準角度θk(t)は,後述のステップS611において例外条件の判断で参照されるものであって,その初期値θk(0)は,{θ4k,θ5k,θ6k}={θ4s,θ5s,θ6s}に設定される。
即ち,前記基準角度θk(t)は,前記作業開始点Q1及び前記作業終了点Q2に基づいて定まるものであって,前記作業開始点Q1及び前記作業終了点Q2を結ぶ直線上の値に随時更新される。なお,前記基準角度θk(t)が前記作業開始点Q1や前記作業終了点Q2における前記駆動軸34〜36の角度であることも他の実施例として考えられる。
(ステップS611)
そして,本実施例2に係るロボット制御処理では,ステップS611の例外条件の判定処理において,前記制御装置1は,次の補間点における前記第1関節駆動系の駆動軸34〜36の角度θ4(t),θ5(t),θ6(t)の少なくとも一つと前記基準角度θ4k,θ5k,θ6kとの離間角度が予め設定された所定角度θ4w,θ5w,θ6wを超えるか否かを判断する。前記所定角度θ4w,θ5w,θ6wは,前記駆動軸34〜36の角度θ4(t),θ5(t),θ6(t)が前記基準角度θ4k,θ5k,θ6kから離れすぎて,該駆動軸34〜36を前記作業終了点Q2に到達させるために該駆動軸34〜36の角度の急激な変化を伴う可能性が高いことを事前に推定するために予め設定されたものである。例えば,前記所定角度θ4w,θ5w,θ6w各々は,90度,180度,90度に設定しておくことが考えられる。
|θ4(t)−θ4k|>θ4w …(61)
|θ5(t)−θ5k|>θ5w …(62)
|θ6(t)−θ6k|>θ6w …(63)
ここに,図10は,前記作業開始点Q1及び前記作業終了点Q2における前記駆動軸35の符号が異符号である場合の動作例を示すものであって,本実施例2に係る前記ロボット制御処理の実行結果を示すものである。具体的に,前記作業開始点Q1における前記駆動軸35の角度θ5sが+10度,前記作業終了点Q2における前記駆動軸35の角度θ5eが−10度である。また,ここでは前記所定角度θ6wが90度に設定されているものとし,前記駆動軸36の角度θ6(t)が前記基準角度θ6k(t)から90度離れる場合を例に挙げて説明する。もちろん,前記駆動軸34,35についても同様である。
ここに,各時点において前記センサで検出される前記ズレ量ΔXYZαβγ(t)は,前記経路方程式P(t)により算出されたその時点における補間点を基準として表した値である。そして,前記制御装置1は,前記センサによる検出結果に基づいて前記エンドエフェクタ2を前記加工線に倣って移動させる前記倣い制御を実行する。ここに,係る倣い制御を実行するときの前記制御装置1が倣い制御手段に相当する。
|(θ4e(t)−θ4(t))/T(t)|>θ4d …(11’)
|(θ5e(t)−θ5(t))/T(t)|>θ5d …(12’)
|(θ6e(t)−θ6(t))/T(t)|>θ6d …(13’)
また,前記ステップS7において前記速度Vθ4,Vθ5,Vθ6を算出するための上記(21)式〜(23)式は,以下の(21’)式〜(23’)式となる。即ち,前記ステップS11における前記駆動処理では,前記更新後の前記作業終了点Q2を目標として前記駆動軸34〜36の線形動作処理が行われる。
Vθ4=(θ4e(t)−θ4OLD )/T(t−Δt) …(21’)
Vθ5=(θ5e(t)−θ5OLD )/T(t−Δt) …(22’)
Vθ6=(θ6e(t)−θ6OLD )/T(t−Δt) …(23’)
これにより,前記センサで検出されるズレ量に基づいて前記倣い制御が実行される場合であっても,前記駆動軸34〜36各々の角度を前記倣い制御で修正された後の作業終了点Q2に確実に到達させることができる。
具体的に,図11(a)〜(c)に示すように,前記エンドエフェクタ2が前記作業開始点Q1から前記作業終了点Q2に向けて移動し,前記倣い制御により前記ズレ量ΔXYZαβγ(t)が修正されるとき,前記作業終了点Q2は,前記ズレ量ΔXYZαβγ(t)が加算されて作業終了点Q2(t)に更新される。これにより,前記駆動軸34〜36各々の角度を前記作業終了点Q2(t)に到達させることができる。
具体的に,本実施例4において,前記制御装置1は,前記ロボット制御処理(図3参照)の前記ステップS8と前記ステップS9との間において,後述の特定成分抑制処理(図12参照)を実行する。なお,前記ロボット制御処理については,前記実施の形態で説明したものに限らず,前記実施例1〜3のいずれかに記載された内容を採用すればよい。
(ステップS81)
まず,ステップS81において,前記制御装置1は,次の補間点について,図13に示すように,前記エンドエフェクタ2が移動する方向(進行方向)の軸をX軸とし,該X軸と重力方向との外積(X軸×重力方向)によって表される軸をY軸とし,該X軸と該Y軸との外積(X軸×Y軸)によって表される方向の軸をZ軸とする作業座標系(以下,「溶接線座標系Σline」という)における姿勢角度を求める。ここに,前記溶接線座標系Σlineにおける前記エンドエフェクタ2の姿勢角度は,図14〜図16に示すように,前記X軸の軸周りの回転角であるトーチ傾斜角Rx,前記Y軸の軸周りの回転角であるトーチ前進角Ry,前記Z軸の軸周りの回転角であるトーチ回転角Rzで表される。
例えば,前記ベース座標系Σbaseから前記溶接線座標系Σlineへの変換は,以下の(101)式〜(107)式に従って行われる。なお,前記溶接線座標系ΣlineにおけるX軸,Y軸,Z軸の単位ベクトルをXm,Ym,Zmとする。
Ry=asin(Rm13) …(106)
Rz=atan(Rm12/Rm11) …(107)
(ステップS82)
次に,ステップS82において,前記制御装置1は,前回の制御周期における前記駆動軸34〜36の速度を基準として,該駆動軸34〜36各々の次の補間点における速度の候補を複数生成する。ここに,係る処理を実行するときの前記制御装置1が角度候補算出手段に相当する。
(201):Vθ4m,Vθ5m,Vθ6m
(202):Vθ4m,Vθ5m,Vθ6n
(203):Vθ4m,Vθ5m,Vθ6p
(204):Vθ4m,Vθ5n,Vθ6m
(205):Vθ4m,Vθ5n,Vθ6n
(206):Vθ4m,Vθ5n,Vθ6p
(207):Vθ4m,Vθ5p,Vθ6m
(208):Vθ4m,Vθ5p,Vθ6n
(209):Vθ4m,Vθ5p,Vθ6p
(210):Vθ4n,Vθ5m,Vθ6m
(211):Vθ4n,Vθ5m,Vθ6n
(212):Vθ4n,Vθ5m,Vθ6p
(213):Vθ4n,Vθ5n,Vθ6m
(214):Vθ4n,Vθ5n,Vθ6n
(215):Vθ4n,Vθ5n,Vθ6p
(216):Vθ4n,Vθ5p,Vθ6m
(217):Vθ4n,Vθ5p,Vθ6n
(218):Vθ4n,Vθ5p,Vθ6p
(219):Vθ4p,Vθ5m,Vθ6m
(220):Vθ4p,Vθ5m,Vθ6n
(221):Vθ4p,Vθ5m,Vθ6p
(222):Vθ4p,Vθ5n,Vθ6m
(223):Vθ4p,Vθ5n,Vθ6n
(224):Vθ4p,Vθ5n,Vθ6p
(225):Vθ4p,Vθ5p,Vθ6m
(226):Vθ4p,Vθ5p,Vθ6n
(227):Vθ4p,Vθ5p,Vθ6p
(ステップS83〜S84)
次に,ステップS83において,前記制御装置1は,前記組み合わせ(201)〜(227)のうち,ランダムに或いは予め設定された規則に基づいて3つの組み合わせを選択
する。このとき選択された3つの速度の候補をVθa(t),Vθb(t),Vθc(t)とする。
Vθa(t)=Vθ4a(t),Vθ5a(t),Vθ6a(t)=Vθ4m,Vθ5m,Vθ6m …(301)
Vθb(t)=Vθ4b(t),Vθ5b(t),Vθ6b(t)=Vθ4m,Vθ5m,Vθ6n …(302)
Vθc(t)=Vθ4c(t),Vθ5c(t),Vθ6c(t)=Vθ4m,Vθ5m,Vθ6p …(303)
θa(t)=θ4a(t),θ5a(t),θ6a(t)=θ4OLD +Vθ4a(t)・Δt,θ5OLD +Vθ5a(t)・Δt,θ6OLD +Vθ6a(t)・Δt …(304)
θb(t)=θ4b(t),θ5b(t),θ6b(t)=θ4OLD +Vθ4b(t)・Δt,θ5OLD +Vθ5b(t)・Δt,θ6OLD +Vθ6b(t)・Δt …(305)
θc(t)=θ4c(t),θ5c(t),θ6c(t)=θ4OLD +Vθ4c(t)・Δt,θ5OLD +Vθ5c(t)・Δt,θ6OLD +Vθ6c(t)・Δt …(306)
また,次のサンプル周期においても同様に,以下の(311)〜(313)に示すように前記速度の候補Vθa(t),Vθb(t),Vθc(t)として前記組み合わせ(203),(206),(209)が選択された場合も,前記角度の候補θa(t),θb(t),θc(t)が生成される。
Vθa(t)=Vθ4a(t),Vθ5a(t),Vθ6a(t)=Vθ4m,Vθ5m,Vθ6p …(311)
Vθb(t)=Vθ4b(t),Vθ5b(t),Vθ6b(t)=Vθ4m,Vθ5n,Vθ6p …(312)
Vθc(t)=Vθ4c(t),Vθ5c(t),Vθ6c(t)=Vθ4m,Vθ5p,Vθ6p …(313)
その後,さらに次のサンプル周期においても同様に,以下の(321)〜(323)に示すように前記速度の候補Vθa(t),Vθb(t),Vθc(t)として前記組み合わせ(209),(218),(227)が選択された場合も,前記角度の候補θa(t),θb(t),θc(t)が生成される。
Vθa(t)=Vθ4a(t),Vθ5a(t),Vθ6a(t)=Vθ4m,Vθ5p,Vθ6p …(321)
Vθb(t)=Vθ4b(t),Vθ5b(t),Vθ6b(t)=Vθ4n,Vθ5p,Vθ6p …(322)
Vθc(t)=Vθ4c(t),Vθ5c(t),Vθ6c(t)=Vθ4p,Vθ5
p,Vθ6p …(323)
(ステップS85)
そして,ステップS85において,前記制御装置1は,前記第1関節駆動系の駆動軸34〜36各々を前記作業終了点Q2の角度を目標として線形動作させる場合より該目標に近い角度の範囲内であるか否かを判断する。即ち,前記ステップS84で算出された角度の候補θa(t),θb(t),θc(t)各々が,前記ステップS8で算出された角度θ4NOW ,θ5NOW ,θ6NOW と前記ステップS2で算出された角度θ4e,θ5e,θ6eとの間の角度であるか否かが判断される。
(ステップS86)
次に,ステップS86において,前記制御装置1は,前記ステップS84で生成された角度の候補θa(t),θb(t),θc(t)のそれぞれについて,前記溶接線座標系Σlineから見た前記エンドエフェクタ2の姿勢角度を求める。
(ステップS87〜S88)
そして,ステップS87において,前記制御装置1は,前記角度の候補θa(t)〜θc(t)のうち,前記ステップS86で求められた姿勢角度が前記ステップS81で求められた姿勢角度に最も近い角度の候補を選択する。このとき,前記制御装置1は,前記溶接線座標系Σlineから見た前記エンドエフェクタ2の姿勢角度の3つの成分(トーチ傾斜角Rx,トーチ前進角Ry,トーチ回転角Rz)のうち,予め定められた一つ又は二つの特定成分の変動を抑制したときに,前記ステップS81で求められた姿勢角度に最も近いものを選択する。ここに,係る処理を実行するときの前記制御装置1が角度選択手段に相当する。なお,前記特定成分は,前記操作部13による操作に応じて,或いは前記多関節型ロボット3の加工内容に応じて前記制御装置1によって予め設定される。
Ua=D・(Rx-Rxa)2 + E・(Ry-Rya)2 + F・(Rz-Rza)2 (331)
Ub=D・(Rx-Rxb)2 + E・(Ry-Ryb)2 + F・(Rz-Rzb)2 (332)
Uc=D・(Rx-Rxc)2 + E・(Ry-Ryc)2 + F・(Rz-Rzc)2 (333)
そして,前記制御装置1は,前記変動量Ua,Ub,Ucのうちその値が最も小さいもの,即ち前記ステップS81で求められた姿勢角度との間で前記特定成分の変動量が最も小さいものに対応する前記角度の候補θa(t),θb(t),θc(t)を選択する。
ここに,図17は,前記実施の形態における前記ロボット制御処理(図3)において,前記特定成分抑制処理を実行した場合の前記駆動軸34〜36の駆動軌跡を示している。
なお,図17における破線は,前記特定成分抑制処理を実行せずに前記駆動軸34〜36を線形動作させた場合の駆動軌跡を示している。
ここでも,前記多関節型ロボット3の加工内容が溶接であって,前記トーチ傾斜角Rx,トーチ前進角Ryが前記特定成分として予め設定されているものとする。
さらに,前記逆運動学問題の一方の解から他方の解に移行するとき,前記実施例4のように,前記エンドエフェクタ2の前記溶接線座標系Σlineにおける姿勢角度(トーチ傾斜角Rx,トーチ前進角Ry,トーチ回転角Rz)のうち予め設定された一つ又は二つの特定成分の変動を抑制するように複数の候補から一つの候補を選択しながら,前記駆動軸34〜36の角度を,前記逆運動学問題の一方の解から他方の解に滑らかに移行させることが望ましい。
具体的には、図25に示すように、特異姿勢を回避中であることを示す「特異点回避中」を、操作部13(教示ペンダント)の表示画面Mに表示する。なお、特異姿勢を回避中であることを示す表示は、「特異点回避中」という表現に限定されず、特異姿勢を回避していることが分かる表現であればどのような表現であってもよい。
また、例えば、特異点回避中の状態における多関節型ロボット3の全体の動きを、オペレータが目視などで監視することもでき、この監視に基づいて、次の溶接作業などで、再度、多関節型ロボット3を動かすときに、多関節型ロボット3の全体の動作を見直すこともできる。
上述した例では、特異点回避の処理を行っていることを表示画面Mに表示させているが、これに代えて、特異点回避を行っていることをスピーカ等によって音で知らせてもよいし、ランプなどの点灯や点滅など光で知らせてもよい。特異点回避を行っていることは、多関節型ロボットの教示ペンダント13とは別の外部の表示装置に表示してもよい。
11:演算部
12:記憶部
13:操作部
2 :エンドエフェクタ
3 :多関節型ロボット
31〜36:駆動軸
Claims (8)
- 先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットを制御する多関節型ロボットの制御装置であって,
予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出手段と,
前記補間点算出手段により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御手段と,
前記駆動制御手段により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する例外条件判定手段と,
前記例外条件判定手段により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出手段によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作手段と,
を備えてなり,
前記例外動作手段が,
前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形動作させる場合より該目標に近い角度の範囲内において該駆動軸各々の角度の候補を複数算出する角度候補算出手段と,
前記角度候補算出手段により算出された角度の候補から,該候補各々を採用したときの次の前記補間点の前記作業部から見た作業座標系における3つの姿勢角度の成分のうち予め設定された一つ又は二つの特定成分の変動が最も抑制される角度の候補を選択する角度選択手段と,
を備えてなることを特徴とする多関節型ロボットの制御装置。 - 前記例外条件が,次の前記補間点からの前記作業部の残りの移動時間又は移動距離の間
に前記第1関節駆動系の駆動軸各々の角度を前記作業終了点における角度に到達させる場合に前記第1関節駆動系の少なくとも一つの駆動軸の速度が予め設定された許容範囲を超えることである請求項1に記載の多関節型ロボットの制御装置。 - 前記例外条件が,前記作業部の残りの移動時間又は移動距離が予め設定された所定値以下に達することである請求項1又は2のいずれかに記載の多関節型ロボットの制御装置。
- 前記例外条件が,次の前記補間点における前記第1関節駆動系の少なくとも一つの駆動軸の角度が前記作業開始点及び/又は前記作業終了点に基づいて定まる基準角度から予め設定された所定角度以上離間することである請求項1〜3のいずれかに記載の多関節型ロボットの制御装置。
- 前記例外条件が,次の前記補間点における前記第1関節駆動系の少なくとも一つの駆動軸の角度が予め設定された作動範囲を超えることである請求項1〜4のいずれかに記載の多関節型ロボットの制御装置。
- 前記作業部と加工対象物の加工線とのズレ量を検出するズレ量検出手段と,前記ズレ量検出手段により検出されたズレ量に基づいて前記作業部を前記加工線に倣って移動させる倣い制御手段と,前記ズレ量検出手段により検出されたズレ量を前記作業終了点に加算して該作業終了点を更新する作業終了点更新手段とを更に備えてなり,
前記例外条件判定手段及び/又は前記例外動作手段が,前記作業終了点更新手段による更新後の前記作業終了点に基づいて処理を実行するものである請求項1〜5のいずれかに記載の多関節型ロボットの制御装置。 - 先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットを制御する多関節型ロボットの制御方法であって,
予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出工程と,
前記補間点算出工程により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御工程と,
前記駆動制御工程により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する例外条件判定工程と,
前記例外条件判定工程により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出工程によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作工程と,を実行するものであって,
前記例外動作工程が,
前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形動作させる場合より該目標に近い角度の範囲内において該駆動軸各々の角度の候補を複数算出する角度候補算出工程と,
前記角度候補算出手段により算出された角度の候補から,該候補各々を採用したときの次の前記補間点の前記作業部から見た作業座標系における3つの姿勢角度の成分のうち予め設定された一つ又は二つの特定成分の変動が最も抑制される角度の候補を選択する角度選択工程と, を実行することを特徴とする多関節型ロボットの制御方法。 - 先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットを制御するための多関節型ロボットの制御プログラムであって,
予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出工程と,
前記補間点算出工程により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御工程と,
前記駆動制御工程により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する例外条件判定工程と,
前記例外条件判定工程により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出工程によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作工程と,をプロセッサに実行させるものであって,
前記例外動作工程が,
前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形動作させる場合より該目標に近い角度の範囲内において該駆動軸各々の角度の候補を複数算出する角度候補算出工程と,
前記角度候補算出手段により算出された角度の候補から,該候補各々を採用したときの次の前記補間点の前記作業部から見た作業座標系における3つの姿勢角度の成分のうち予め設定された一つ又は二つの特定成分の変動が最も抑制される角度の候補を選択する角度選択工程と,をプロセッサに実行させることを特徴とする多関節型ロボットの制御プログラム。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011254807A JP5730179B2 (ja) | 2011-03-08 | 2011-11-22 | 多関節型ロボットの制御装置,制御方法及び制御プログラム |
EP12755280.0A EP2684648B1 (en) | 2011-03-08 | 2012-03-02 | Control device, control method and control program for articulated robot |
US14/003,429 US9242373B2 (en) | 2011-03-08 | 2012-03-02 | Control device, control method, and control program for articulated robot |
KR1020137023659A KR101581095B1 (ko) | 2011-03-08 | 2012-03-02 | 다관절형 로봇의 제어 장치, 제어 방법 및 제어 프로그램을 기록한 컴퓨터 판독가능한 기록 매체 |
PCT/JP2012/055313 WO2012121124A1 (ja) | 2011-03-08 | 2012-03-02 | 多関節型ロボットの制御装置,制御方法及び制御プログラム |
CN201280011374.2A CN103429397B (zh) | 2011-03-08 | 2012-03-02 | 多关节型机器人的控制装置、控制方法以及控制程序 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011050459 | 2011-03-08 | ||
JP2011050459 | 2011-03-08 | ||
JP2011254807A JP5730179B2 (ja) | 2011-03-08 | 2011-11-22 | 多関節型ロボットの制御装置,制御方法及び制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012196754A JP2012196754A (ja) | 2012-10-18 |
JP5730179B2 true JP5730179B2 (ja) | 2015-06-03 |
Family
ID=46798088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011254807A Active JP5730179B2 (ja) | 2011-03-08 | 2011-11-22 | 多関節型ロボットの制御装置,制御方法及び制御プログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US9242373B2 (ja) |
EP (1) | EP2684648B1 (ja) |
JP (1) | JP5730179B2 (ja) |
KR (1) | KR101581095B1 (ja) |
CN (1) | CN103429397B (ja) |
WO (1) | WO2012121124A1 (ja) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104128692B (zh) * | 2013-04-30 | 2018-04-10 | 株式会社大亨 | 机器人控制装置及多道焊机器人的补偿值的示教方法 |
JP6168890B2 (ja) * | 2013-04-30 | 2017-07-26 | 株式会社ダイヘン | ロボット制御装置および多層盛溶接ロボットにおけるオフセット値の教示方法 |
US20150129581A1 (en) * | 2013-11-12 | 2015-05-14 | Lincoln Global, Inc. | System and method for pendant component for a welding system |
USD765111S1 (en) | 2014-06-24 | 2016-08-30 | Lincoln Global, Inc. | Display screen or portion thereof with graphical user interface |
KR101586765B1 (ko) * | 2015-02-27 | 2016-01-25 | 주식회사 다우인큐브 | 반도체 공정 기반 3차원 가상 형상 모델링 방법 |
WO2016144741A1 (en) | 2015-03-06 | 2016-09-15 | Illinois Tool Works Inc. | Sensor assisted head mounted displays for welding |
EP3268949B1 (en) | 2015-03-09 | 2021-05-26 | Illinois Tool Works Inc. | Methods and apparatus to provide visual information associated with welding operations |
US9977242B2 (en) | 2015-03-26 | 2018-05-22 | Illinois Tool Works Inc. | Control of mediated reality welding system based on lighting conditions |
US10363632B2 (en) | 2015-06-24 | 2019-07-30 | Illinois Tool Works Inc. | Time of flight camera for welding machine vision |
CN105856231B (zh) * | 2016-01-25 | 2018-04-10 | 广东工业大学 | 一种特定构型六轴工业机器人的运动控制方法 |
EP3428754B1 (de) * | 2017-07-13 | 2023-02-15 | Siemens Aktiengesellschaft | Verfahren zum einrichten eines bewegungsautomaten und einrichtungsanordnung |
JP7199073B2 (ja) * | 2017-10-20 | 2023-01-05 | 株式会社キーレックス | 垂直多関節ロボットの教示データ作成システム |
CN109551485B (zh) * | 2019-01-21 | 2020-10-16 | 北京镁伽机器人科技有限公司 | 运动控制方法、装置和***及存储介质 |
US11450233B2 (en) | 2019-02-19 | 2022-09-20 | Illinois Tool Works Inc. | Systems for simulating joining operations using mobile devices |
US11521512B2 (en) | 2019-02-19 | 2022-12-06 | Illinois Tool Works Inc. | Systems for simulating joining operations using mobile devices |
CN109911241B (zh) * | 2019-03-20 | 2022-06-14 | 成都飞机工业(集团)有限责任公司 | 一种基于七次多项式的多部段自动化调姿的调姿方法 |
US11667035B2 (en) * | 2019-07-01 | 2023-06-06 | Wisconsin Alumni Research Foundation | Path-modifying control system managing robot singularities |
US11721231B2 (en) | 2019-11-25 | 2023-08-08 | Illinois Tool Works Inc. | Weld training simulations using mobile devices, modular workpieces, and simulated welding equipment |
US11322037B2 (en) | 2019-11-25 | 2022-05-03 | Illinois Tool Works Inc. | Weld training simulations using mobile devices, modular workpieces, and simulated welding equipment |
CN111673716A (zh) * | 2020-06-08 | 2020-09-18 | 中冶南方城市建设工程技术有限公司 | 灵巧手定位方法及控制*** |
US20220379477A1 (en) * | 2021-05-28 | 2022-12-01 | Illinois Tool Works Inc. | Systems and methods to configure a robotic welding system |
CN113341876B (zh) * | 2021-06-24 | 2022-08-26 | 合肥工业大学 | 一种基于微分向量优化的五轴曲面加工轨迹规划方法 |
US20230226682A1 (en) * | 2022-01-18 | 2023-07-20 | James Walter Beard, III | Method for Teaching Torch Orientation for Robotic Welding |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4623971A (en) * | 1983-06-30 | 1986-11-18 | Cincinnati Milacron Inc. | Machine control with motor velocity constraint |
US4680519A (en) * | 1985-09-23 | 1987-07-14 | General Electric Co. | Recursive methods for world-to-joint transformation for a robot manipulator |
US4716350A (en) * | 1986-12-08 | 1987-12-29 | Ford Motor Company | Method to avoid singularity in a robot mechanism |
JPH02218569A (ja) | 1989-02-20 | 1990-08-31 | Mitsubishi Heavy Ind Ltd | 関節型ロボットのptp教示に対する特異点通過補間方法 |
JP2874238B2 (ja) * | 1990-01-23 | 1999-03-24 | 株式会社安川電機 | 多関節形ロボットの制御方法 |
JPH055270A (ja) | 1991-06-28 | 1993-01-14 | Toray Ind Inc | 編疵検出装置 |
JPH0756127Y2 (ja) * | 1991-07-10 | 1995-12-25 | 川崎重工業株式会社 | ウィービング動作をするアーク溶接ロボット |
KR0155281B1 (ko) | 1993-10-11 | 1998-12-15 | 김광호 | 다관절 로보트의 직선보간방법 |
JPH0976178A (ja) * | 1995-09-12 | 1997-03-25 | Hitachi Ltd | ロボット制御装置 |
JP4060393B2 (ja) * | 1996-01-24 | 2008-03-12 | 三菱電機株式会社 | ロボットの速度演算装置、およびロボットの速度演算方法 |
JPH10315169A (ja) * | 1997-05-14 | 1998-12-02 | Mitsubishi Heavy Ind Ltd | マニピュレータ制御装置 |
US6317651B1 (en) * | 1999-03-26 | 2001-11-13 | Kuka Development Laboratories, Inc. | Trajectory generation system |
US6845295B2 (en) * | 2002-03-07 | 2005-01-18 | Fanuc Robotics America, Inc. | Method of controlling a robot through a singularity |
KR20040034167A (ko) | 2002-10-21 | 2004-04-28 | 창원대학교 공작기계기술연구센터 | 6축 수직다관절 매니퓰레이터의 직선이동 제어방법 |
JP5011525B2 (ja) * | 2006-08-03 | 2012-08-29 | 国立大学法人東京工業大学 | 逐次検索法による6自由度ロボットアームの逆運動学、およびそれを使用するロボットのシステム、制御方法、プログラム |
JP2009032189A (ja) * | 2007-07-30 | 2009-02-12 | Toyota Motor Corp | ロボットの動作経路生成装置 |
JP2009113172A (ja) * | 2007-11-08 | 2009-05-28 | Mitsubishi Electric Corp | 指令値生成装置 |
JP2009166076A (ja) | 2008-01-15 | 2009-07-30 | Kobe Steel Ltd | 溶接ロボット |
JP5103237B2 (ja) * | 2008-03-25 | 2012-12-19 | 株式会社神戸製鋼所 | ロボットの動作余裕量演算表示方法及びその装置 |
FR2930472B1 (fr) * | 2008-04-24 | 2010-08-13 | Univ Havre | Robot manipulateur et commande associee pour un positionnement fin de l'extremite terminale |
JP5231935B2 (ja) * | 2008-10-21 | 2013-07-10 | 株式会社東芝 | ロボット制御装置 |
-
2011
- 2011-11-22 JP JP2011254807A patent/JP5730179B2/ja active Active
-
2012
- 2012-03-02 US US14/003,429 patent/US9242373B2/en active Active
- 2012-03-02 CN CN201280011374.2A patent/CN103429397B/zh active Active
- 2012-03-02 WO PCT/JP2012/055313 patent/WO2012121124A1/ja active Application Filing
- 2012-03-02 EP EP12755280.0A patent/EP2684648B1/en active Active
- 2012-03-02 KR KR1020137023659A patent/KR101581095B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
CN103429397B (zh) | 2016-04-06 |
KR20130122969A (ko) | 2013-11-11 |
EP2684648B1 (en) | 2021-02-24 |
WO2012121124A1 (ja) | 2012-09-13 |
US20130345868A1 (en) | 2013-12-26 |
EP2684648A4 (en) | 2016-09-07 |
KR101581095B1 (ko) | 2015-12-29 |
US9242373B2 (en) | 2016-01-26 |
CN103429397A (zh) | 2013-12-04 |
EP2684648A1 (en) | 2014-01-15 |
JP2012196754A (ja) | 2012-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5730179B2 (ja) | 多関節型ロボットの制御装置,制御方法及び制御プログラム | |
JP5726052B2 (ja) | 多関節型ロボットの制御装置,制御方法及び制御プログラム | |
JP2000024968A (ja) | ロボット制御装置 | |
JP5458769B2 (ja) | ロボットの制御装置 | |
US11613012B2 (en) | Robot controller | |
JP2010231575A (ja) | ロボットのオフライン教示装置、ロボットのオフライン教示方法、及びロボットシステム | |
JP6348141B2 (ja) | 付加軸の状態が含まれる動作プログラムを表示するロボットの制御装置 | |
US11890759B2 (en) | Robot control method | |
JP2020044590A (ja) | ロボット装置 | |
JP4745921B2 (ja) | 溶接ロボットの制御方法 | |
JP2004188594A (ja) | ロボット制御装置 | |
JP5583549B2 (ja) | アーク溶接ロボット制御装置 | |
JP2009050949A (ja) | ロボットアームの軌道教示方法および軌道教示装置 | |
JP7469457B2 (ja) | ロボットプログラミング装置及びロボットプログラミング方法 | |
KR100736136B1 (ko) | 작업성을 고려한 용접로봇의 제어방법 | |
JP7424097B2 (ja) | ロボットの制御装置及びロボットの制御方法 | |
US20240066700A1 (en) | Device for simulating operation of robot, device for controlling robot, and method for simulating operation of robot | |
US20220347852A1 (en) | Robot control device and direct teaching method for robot | |
JP6439375B2 (ja) | ロボット及び制御装置 | |
WO2022157878A1 (ja) | 動作軌道の評価装置、動作軌道の評価方法 | |
JPH08323666A (ja) | ロボットの制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130902 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140624 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140818 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150407 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150407 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5730179 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |