JP5730179B2 - 多関節型ロボットの制御装置,制御方法及び制御プログラム - Google Patents

多関節型ロボットの制御装置,制御方法及び制御プログラム Download PDF

Info

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
Application number
JP2011254807A
Other languages
English (en)
Other versions
JP2012196754A (ja
Inventor
努 大根
努 大根
利彦 西村
利彦 西村
重吉 正之
正之 重吉
武 小池
武 小池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kobe Steel Ltd
Original Assignee
Kobe Steel Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kobe Steel Ltd filed Critical Kobe Steel Ltd
Priority to JP2011254807A priority Critical patent/JP5730179B2/ja
Priority to EP12755280.0A priority patent/EP2684648B1/en
Priority to US14/003,429 priority patent/US9242373B2/en
Priority to KR1020137023659A priority patent/KR101581095B1/ko
Priority to PCT/JP2012/055313 priority patent/WO2012121124A1/ja
Priority to CN201280011374.2A priority patent/CN103429397B/zh
Publication of JP2012196754A publication Critical patent/JP2012196754A/ja
Application granted granted Critical
Publication of JP5730179B2 publication Critical patent/JP5730179B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23KSOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
    • B23K9/00Arc welding or cutting
    • B23K9/095Monitoring or automatic control of welding parameters
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23KSOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
    • B23K9/00Arc welding or cutting
    • B23K9/12Automatic feeding or moving of electrodes or work for spot or seam welding or cutting
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/06Programme-controlled manipulators characterised by multi-articulated arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical 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/41Numerical 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/4103Digital interpolation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39527Workpiece detector, sensor mounted in, near hand, gripper
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40333Singularity, at least one movement not possible, kinematic redundancy
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40354Singularity detection
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42207Generate 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

本発明は,先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットの制御技術に関するものである。
図23に示す多関節型ロボットの一種である6軸マニピュレータは,先端に設けられたエンドエフェクタ(作業部)の姿勢を変化させるJ4軸,J5軸,J6軸を有する第1関節駆動系と,その第1関節駆動系の位置を変化させるJ1軸,J2軸,J3軸を有する第2関節駆動系とを備えている。そして,6軸マニピュレータの制御装置は,予め設定された作業開始点及び作業終了点各々の位置及び姿勢に基づいてJ1軸〜J6軸を制御することによりエンドエフェクタの位置及び姿勢を変化させる。
より具体的には,作業開始点と作業終了点とを結ぶ教示経路を補間する複数の補間点を算出し,該補間点に従ってJ1軸〜J6軸を駆動させる。なお,エンドエフェクタの位置座標X,Y,Z及び姿勢角α,β,γが与えられたとき,逆運動学問題の解を求めることによってJ1軸〜J6軸の各関節角θ1〜θ6を求めることができる。但し,このとき逆運動学問題の解として得られる関節角θ1〜θ6には2通りの解が存在する。具体的に,二つの解におけるJ4軸の角度θ4,θ’4,J5軸の角度θ5,θ’5,J6軸の角度θ6,θ’6は,θ4−θ’4=±180度,θ5+θ’5=0度,θ6−θ’6=±180度の関係にある。
ところで,6軸マニピュレータにおいてJ5軸の角度が0度になると,J4軸,J6軸の速度が急激に変化するいわゆる特異姿勢(特異点)をとることになる。そのため,一般には,作業開始点における解と同じ符号のままでJ5軸の角度を遷移させることにより特異姿勢を回避している。但し,この場合には,作業開始点及び作業終了点におけるJ5軸の角度の符号が異符号であるとき,そのJ5軸の角度を作業終了点における角度に到達させることができない。
これに対し,例えば特許文献1では,特異姿勢近傍であることが検出された場合に,逆運動学問題の他方の解に移行させることが開示されている。このような構成によれば,作業開始点及び作業終了点におけるJ5軸の角度の符号が異符号である場合でも,該J5軸の角度を作業終了点における角度に到達させることができる。なお,一般に特異姿勢の検出は,J5軸の角度が0度近傍に達することや,J4軸及びJ6軸の角度が急激に変化することを条件に行われる。
特開平02−218569号公報
しかしながら,前記特許文献1に係る構成では,特異姿勢近傍に達したことが逆運動学問題の他方の解への移行条件であるため,特異点姿勢に近づくことなく動作する場合には,駆動軸を作業終了点の正しい角度に到達させることができない。
具体的に,図24は,作業開始点及び作業終了点におけるJ5軸の角度の符号が異符号であるが,J5軸の角度が0度近傍に到達せず,J4軸やJ6軸の角度も急激に変化することなく動作する場合の軌跡を示している。この場合,特異姿勢近傍に近づいたことを検出することができない。そのため,J5軸の角度が作業開始点における符号のまま移動するため,J4軸〜J6軸の角度を作業終了点の正しい角度に到達させることができない。
そのため,例えば作業終了点の次の教示点に向けて動作する場合にJ4軸〜J6軸の角度が作動範囲外に到達するおそれがある。
従って,本発明は上記事情に鑑みてなされたものであり,その目的とするところは,作業部の位置及び移動速度を維持しつつ,第1関節駆動系の駆動軸各々の角度を確実に作業終了点の角度に到達させることのできる多関節型ロボットの制御装置,制御方法及び制御プログラムを提供することにある。
上記目的を達成するために本発明は,先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットを制御する多関節型ロボットの制御装置に適用されるものであって,以下の(1)〜(4)を備えてなることを特徴として構成される。
(1)予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出手段。
(2)前記補間点算出手段により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御手段。
(3)前記駆動制御手段により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する例外条件判定手段。
(4)前記例外条件判定手段により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出手段によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作手段。
これにより,前記作業開始点及び前記作業終了点における前記第1関節駆動系の中央の駆動軸の符号の異同にかかわらず,前記補間点算出手段で算出された前記補間点における前記作業部の位置及び移動速度を維持しつつ,前記第1関節駆動系の駆動軸各々の角度を前記作業終了点の角度に確実に到達させることができる。
例えば,前記例外条件は,次の前記補間点からの前記作業部の残りの移動時間又は移動距離の間に前記第1関節駆動系の駆動軸各々の角度を前記作業終了点における角度に到達させる場合に前記第1関節駆動系の少なくとも一つの駆動軸の速度が予め設定された許容範囲を超えることである。これにより,前記第1関節駆動系の駆動軸各々の速度を前記許容範囲に抑えつつ該第1関節駆動系の駆動軸各々の角度を前記作業終了点の角度に確実に到達させることができる。また,前記例外条件が,前記作業部の残りの移動時間又は移動距離が予め設定された所定値以下に達することであってもよい。
さらに,前記例外条件は,次の前記補間点における前記第1関節駆動系の少なくとも一つの駆動軸の角度が前記作業開始点や前記作業終了点に基づいて定まる基準角度から予め設定された所定角度以上離間することであってもよい。これにより,例えば前記第1関節駆動系の駆動軸各々の角度が前記基準角度から離れ過ぎて前記作業終了点の角度に到達するまでの速度が急激になることを予防し,該第1関節駆動系の駆動軸各々を前記作業終了点に確実に到着させることができる。
また,前記例外条件は,次の前記補間点における前記第1関節駆動系の少なくとも一つの駆動軸の角度が予め設定された作動範囲を超えることであってもよい。これにより,前記作動範囲を超えない範囲で前記第1関節駆動系の駆動軸各々を駆動させて前記作業終了点の角度に到達させることができる。
ところで,前記作業部と加工対象物の加工線とのズレ量を検出するズレ量検出手段と,前記ズレ量検出手段により検出されたズレ量に基づいて前記作業部を前記加工線に倣って移動させる倣い制御手段とを備える構成では,前記作業終了点の位置が変化することになる。
そこで,前記ズレ量検出手段により検出されたズレ量を前記作業終了点に加算して該作業終了点を更新する作業終了点更新手段を更に備えてなり,前記例外条件判定手段や前記例外動作手段が前記作業終了点更新手段による更新後の前記作業終了点に基づいて処理を実行するものであることが考えられる。これにより,前記例外動作手段は,前記倣い制御手段による倣い制御が実行される場合であっても,前記駆動軸各々を前記作業終了点更新手段による更新後の作業終了点に到達させることができる。前記例外条件判定手段による前記例外条件の判定も前記作業終了点更新手段による更新後の作業終了点を基準として適切に行うことができる。
さらに,前記例外動作手段が,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形動作させる場合より該目標に近い角度の範囲内において該駆動軸各々の角度の候補を複数算出する角度候補算出手段と,前記角度候補算出手段により算出された角度の候補から,該候補各々を採用したときの次の前記補間点の前記作業部から見た作業座標系における3つの姿勢角度の成分のうち予め設定された一つ又は二つの特定成分の変動が最も抑制される角度の候補を選択する角度選択手段とを備えることも考えられる。
これにより,前記特定成分の変動を抑制しつつ前記第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の概略構成を表すブロック図。 多関節型ロボット2の関節駆動系を示すモデル図。 本発明の実施形態に係る多関節型ロボットの制御装置1が実行するロボット制御処理の手順の一例を示すフローチャート。 従来の駆動軸34〜36の動作例を示す図。 実施の形態に係るロボット制御処理が実行されたときの駆動軸34〜36の動作例を示す図。 従来の駆動軸34〜36の動作例を示す図。 実施例1に係るロボット制御処理が実行されたときの駆動軸34〜36の動作例を示す図。 ロボット制御処理における線形動作の変形例を説明するための図。 実施例2に係るロボット制御処理の手順の一例を示すフローチャート。 実施例2に係るロボット制御処理が実行されたときの駆動軸34〜36の動作例を示す図。 倣い制御及びロボット制御処理が共に実行されるときのエンドエフェクタ2の動作例を示す図。 特定成分抑制処理の手順の一例を示すフローチャート。 溶接線座標系Σlineを説明するための図。 溶接線座標系Σlineを説明するための図。 溶接線座標系Σlineを説明するための図。 溶接線座標系Σlineを説明するための図。 特定成分抑制処理の実行結果を説明するための図。 特定成分抑制処理の実行結果を説明するための図。 特定成分抑制処理の実行結果を説明するための図。 特定成分抑制処理の実行結果を説明するための図。 特定成分抑制処理の実行結果を説明するための図。 特定成分抑制処理の実行結果を説明するための図。 一般的な多関節型ロボットの関節駆動系を示すモデル図。 特異姿勢に近づかない場合の従来の駆動軸J4軸〜J6軸の動作例を示す図。 特異姿勢を回避中であることを報知する装置を説明するための図。
以下添付図面を参照しながら,本発明の実施の形態について説明し,本発明の理解に供する。尚,以下の実施の形態は,本発明を具体化した一例であって,本発明の技術的範囲を限定する性格のものではない。
図1に示すように,本発明の実施の形態に係る多関節型ロボットの制御装置1(以下「制御装置1」と略称する)は,先端にエンドエフェクタ2が設けられた多関節型ロボット3の動作を制御するものであって,演算部11,記憶部12,操作部13などを備えている。前記エンドエフェクタ2は,加工対象物に対して,例えば溶接や塗装などの作用を与える溶接器(トーチ),塗装器,工具,捕獲器などである。
前記記憶部12は,所定の制御プログラムや各種処理で参照されるパラメータ情報などが予め記憶されるROMやHDD等と,前記演算部11で各種処理が実行される際の作業領域(一時記憶領域)として利用されるEEPROMなどの揮発性メモリとを有している。
前記操作部13は,シートキーや操作ボタン,操作レバー等を有するユーザインターフェースである。前記操作部13は,ユーザ操作に対応する操作信号を前記演算部11に入力する。具体的に,ユーザによって前記操作部13が操作されることにより,前記多関節型ロボット3の作業開始点,作業終了点,作業時間,移動速度などの各種加工パラメータが設定される。
前記演算部11は,前記記憶部12に記憶された前記制御プログラムに従って後述のロボット制御処理(図3参照)などの各種処理を実行するCPUなどのプロセッサである。
なお,本発明は,前記演算部11に後述のロボット制御処理を実行させるための制御プログラムの発明として捉えてもよい。
ここに,図2は前記多関節型ロボット3の関節駆動系を示すモデル図である。
図2に示すように,前記多関節型ロボット3は,前記エンドエフェクタ2の姿勢を変化させる3つの駆動軸34〜36を有する第1関節駆動系と,その第1関節駆動系の後端の駆動軸34に連結されて該第1関節駆動系の位置を変化させる3つの駆動軸31〜33を有する第2関節駆動系とを備えている。前記駆動軸31〜36各々は,電気モータ等の駆動手段によって例えば±180度の範囲で個別に回転駆動される。なお,前記第2関節駆動系は4軸以上の駆動軸を有する構成であってもよい。
前記多関節型ロボット3における前記エンドエフェクタ2の位置・姿勢は,該多関節型ロボット3のベース座標系Σbaseにおける位置座標XYZと姿勢角αβγとによって表される。前記姿勢角αβγは,オイラー角やロール・ピッチ・ヨー角などで表される。
ここで,前記第2関節駆動系は,前記第1関節駆動系の駆動軸34〜36の動作にかかわらず,前記多関節型ロボット3のベース座標系Σbaseにおける前記エンドエフェクタ2の位置座標XYZを自由に作り出すことができる。
なお,前記多関節型ロボット3における前記駆動軸31〜36各々の角度θ1〜θ6は,前記多関節型ロボット3のベース座標系Σbaseにおける位置座標XYZ,姿勢角αβγから逆運動学問題の解を求めることにより算出可能である。
以下,図3のフローチャートに従って,前記制御装置1により実行されるロボット制御処理の手順の一例について説明する。ここに,図3に示すS1,S2,…は処理手順(ステップ)番号を表す。なお,本発明は,以下の処理手順の各工程を実行する多関節型ロボットの制御方法の発明として捉えてもよい。
前記制御装置1は,当該ロボット制御処理を実行することにより,前記操作部13によって予め設定された作業開始点及び作業終了点に基づいて前記多関節型ロボット3を制御する。ここでは,前記操作部13の操作により作業開始点Q1の位置・姿勢{Xs,Ys,Zs,αs,βs,γs},作業終了点Q2の位置・姿勢{Xe,Ye,Ze,αe,βe,γe}が予め設定されているものとする。
(ステップS1)
まず,ステップS1において,前記制御装置1は,前記作業開始点Q1及び前記作業終了点Q2各々の位置及び姿勢を結ぶ教示経路を補間する複数の補間点を算出するための経路方程式P(t)=Q1+ΔP・tを求める。ここに,ΔPは単位時間(1msec)あたりの前記エンドエフェクタ2の位置の移動量,tは前記作業開始点Q1から計時される制御時間[msec]を示している。なお,前記経路方程式P(t)で算出される補間点は,前記多関節型ロボット3のベース座標系Σbaseにおける位置・姿勢XYZαβγ
(t)より表されるものである。
具体的に,前記経路方程式P(t)は,前記エンドエフェクタ2の位置を前記作業開始点Q1から前記作業終了点Q2まで予め定められた速度で移動させるための複数の補間点を算出するものである。具体的に,前記エンドエフェクタ2の位置が前記作業開始点Q1から前記作業終了点Q2まで移動するときの合計制御時間をT[msec],前記エンドエフェクタ2の位置・姿勢XYZαβγの単位時間(1msec)あたりの変化量をΔX,ΔY,ΔZ,Δα,Δβ,Δγとすると,ΔPは,(Q2−Q1)/T={ΔX=(Xe−Xs)/T,ΔY=(Ye−Ys)/T,ΔZ=(Ze−Zs)/T,Δα=(αe−αs)/T,Δβ=(βe−βs)/T,Δγ=(γe−γs)/T}によって表される。もちろん,前記合計制御時間Tが設定されている場合に限らず,前記エンドエフェクタ2の移動速度が予め定められた速度に設定されていてもよい。
(ステップ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が直接設定されてもよい。
また,ステップS3において,前記制御装置1は,制御時間t及び制御開始フラグFを0に初期設定する。なお,前記制御開始フラグFは,後述の例外条件(S61)が既に充足されているか否かを示す情報であって,後述のステップS62において1に設定される。
(ステップS4〜S6)
次に,ステップS4において,前記制御装置1は前記制御時間tを更新する(t=t+Δt)。ここに,Δtは,前記制御装置1による前記多関節型ロボット3の制御周期(サンプル周期)であって,例えば10[msec]や100[msec]である。
そして,ステップS5において,前記制御装置1は,前記経路方程式P(t)に基づいて次の補間点における前記駆動軸31〜36各々の角度θ1(t)〜θ6(t)を算出する。ここに,係る算出処理を実行するときの前記制御装置1が補間点算出手段に相当する。
具体的に,まず前記制御装置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の処理は省略してもよい。
その後,ステップS6において,前記制御装置1は,前記制御開始フラグFが1であるか否かを判断する。ここで,前記制御開始フラグFが1であると判断されると(S6のYes側),処理はステップS7に移行し,前記制御開始フラグFが0であると判断されると(S6のNo側),処理はステップS61に移行する。
(ステップS61)
ステップS61において,前記制御装置1は,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する。ここに,当該ステップS61は,後述のステップS64において前記第1関節駆動系及び前記第2関節駆動系の駆動軸31〜36各々が前記ステップS5で算出された角度θ1(t)〜θ6(t)に基づいて駆動されているときに実行される。ここに,係る判定処理を実行するときの前記制御装置1が例外条件判定手段に相当する。前記第1関節駆動系の特異姿勢の検出条件とは,例えば前記駆動軸35の角度が0に近づいたことや前記駆動軸34,36の角度が急激に変化したことである。
具体的に,本実施の形態では,次の補間点からの前記エンドエフェクタ2の残りの移動時間の間に前記第1関節駆動系の駆動軸34〜36各々の角度を前記作業終了点Q2における角度θ4e〜θ6eに到達させる場合に前記第1関節駆動系の駆動軸34〜36の少なくとも一つの駆動軸の速度が予め設定された許容範囲を超えることが前記例外条件として予め設定されているものとする。即ち,前記制御装置1は,当該ステップS61において,前記エンドエフェクタ2の残りの移動時間の間に,前記駆動軸34〜36各々の速度を前記許容範囲内に維持しつつ前記作業終了点Q2に到達させることができるか否かを判定する。
例えば,前記制御装置1は,以下の(11)式〜(13)式のいずれかが成立する場合に,前記例外条件が充足したと判定することが可能である。ここに,T(t)は次の補間点における残りの移動時間,θ4d,θ5d,θ6dは前記駆動軸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の残りの移動時間や残りの移動距離が予め設定された所定値以下に達することを前記例外条件として用いることも他の実施例として考えられる。
そして,当該ステップS61において,前記例外条件が充足していないと判断されると(S61のNo側),処理はステップS64に移行し,前記例外条件が充足したと判断されると(S61のYes側),処理はステップS62に移行する。
(ステップ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に移行することとなる。
次に,ステップS63において,前記制御装置1は,前記駆動軸34〜36各々の現在の角度をθ4OLD ,θ5OLD ,θ6OLD として前記記憶部12に記憶する。即ち,θ4OLD =θ4(t−Δt),θ5OLD =θ5(t−Δt),θ6OLD =θ6(t−Δt)である。
(ステップ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 を算出する。
ここで算出される前記駆動軸31〜33の角度θ1NOW ,θ2NOW ,θ3NOW は,前記ステップS5で算出された次の補間点の位置座標XYZ(t)を維持しているため,前記エンドエフェクタ2の位置及び移動速度は,前記ステップS64による駆動制御時における前記エンドエフェクタ2の位置及び移動速度を維持したものとなる。
なお,前記制御装置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における駆動制御が実行される。
なお,前記制御装置1は,続くステップS12において,前記エンドエフェクタ2が前記作業終了点Q2に到着したか否かを判断し,該エンドエフェクタ2が前記作業終了点Q2に到着するまで(S12のNo側),前記ステップS4以後の処理を繰り返し実行する。一方,前記エンドエフェクタ2が前記作業終了点Q2に到着すると(S12のYes側),当該ロボット制御処理は終了される。
以上説明したように,本発明の実施の形態に係る前記制御装置1は,前記例外条件が充足したと判定された後,前記エンドエフェクタ2が前記作業終了点Q2に到達するまでの間,前記第1関節駆動系の駆動軸34〜36各々を前記作業終了点Q2の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸34〜36各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸34〜36各々の角度と前記ステップS5によって算出された補間点における前記エンドエフェクタ2の位置とに基づいて前記第2関節駆動系の駆動軸31〜33各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させている。ここに,係る処理を実行するときの前記制御装置1が例外動作手段に相当する。
したがって,前記ステップS5で算出された補間点における前記エンドエフェクタ2の位置及び移動速度を維持しつつ,前記第1関節駆動系の駆動軸34〜36各々の角度を前記作業終了点Q2の角度に確実に到達させることができる。これにより,例えば前記作業終了点Q2から次の教示点に向けて動作する場合に前記駆動軸34〜36が作動範囲を超えることを防止することができる。
特に,前記制御装置1は,前記作業開始点Q1及び前記作業終了点Q2の前記駆動軸35の角度の符号が異符号であり,前記第1関節駆動系の特異姿勢(駆動軸35の角度が0度)を経なければ前記駆動軸35の角度を前記作業終了点Q2の角度に到達させることができない場合に好適である。以下,この点について図4及び図5を参照しつつ説明する。
ここに,図4及び図5は,前記作業開始点Q1及び前記作業終了点Q2における前記駆動軸35の符号が異符号である場合の動作例を示すものであって,図4は従来例を示すものであり,図5は前記ロボット制御処理(図3)の実行結果を示すものである。具体的に,前記作業開始点Q1における前記駆動軸35の角度θ5sが+65度,前記作業終了点Q2における前記駆動軸35の角度θ5eが−65度である。
図4に示すように,通常は,前記作業開始点Q1及び前記作業終了点Q2における前記駆動軸35の角度θ5s,θ5eの符号が異符号である場合,前記作業開始点Q1における前記駆動軸35の符号が維持された解のまま前記エンドエフェクタ2が移動するため,前記駆動軸34〜36各々が前記作業終了点Q2における角度に到達しない。そのため,例えば前記作業終了点Q2から次の教示点に向けて動作する場合に前記駆動軸34〜36が作動範囲を逸脱するおそれがある。また,前記駆動軸35が0度に近づくことや前記駆動軸34,36の速度が所定値以上となることを条件に前記第1関節駆動系の特異姿勢を検出し,異なる解に移行させる構成であっても,図4に示すように前記駆動軸35が0度に近づかず,前記駆動軸34,36の速度が所定値以上とならない場合には,前記第1関節駆動系の特異姿勢を検出することができない。
これに対し,図5に示すように,前記ロボット制御処理(図3)が実行される場合には,前記例外条件が充足したと判定されると,その時点L1からは前記駆動軸34〜36が前記作業終了点Q2の角度に向けて線形に変化するように前記駆動軸31〜36が駆動されるため,該駆動軸34〜36各々を前記作業開始点Q2における角度に確実に到達させることができる。
もちろん,前記作業開始点Q1及び前記作業終了点Q2における前記駆動軸35の符号が同符号である場合であっても同様に,前記例外条件が充足した時点から,前記駆動軸34〜36が前記作業終了点Q2における角度に向けて線形に変化するため,該駆動軸34〜36各々を前記作業開始点Q2における角度に確実に到達させることができる。
本実施例1では,前記ロボット制御処理(図3参照)における前記例外条件の他の例について説明する。
具体的に,本実施例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度であるものとする。
図6に示すように,前記作業開始点Q1及び前記作業終了点Q2における前記駆動軸35の符号が異符号であるにもかかわらず,前記作業開始点Q1における前記駆動軸35の符号が維持された解のまま前記エンドエフェクタ2が移動すると,前記駆動軸34,36の角度が該駆動軸34,36の作動範囲(±180度)を超えて異常停止するおそれがある。
これに対し,図7に示すように,本実施例1に係るロボット制御処理が実行される場合には,前記駆動軸34〜36の少なくとも一つの駆動軸の次の補間点における角度が予め設定された作動範囲を超えるという前記例外条件が充足したと判定されると,その時点L2からは前記駆動軸34〜36が前記作業終了点Q2の角度に向けて線形に変化するように前記駆動軸31〜36が駆動される。そして,一般に前記制御装置1では前記作業終了点Q2が前記駆動軸34〜36の角度の作動範囲内でのみ設定可能である。そのため,前記駆動軸34〜36各々を許容範囲内で駆動させつつ前記作業開始点Q2の角度に確実に到達させることができる。もちろん,前記作業開始点Q1及び前記作業終了点Q2における前記駆動軸35の符号が同符号である場合であっても同様である。
ところで,図7に示す動作例では,前記駆動軸34〜36各々の角度が,前記作業終了点Q2よりも少し前の時点で該作業終了点Q2の近傍に到達し,その後,前記作業終了点Q2における角度に向けて緩やかな速度で動作している。このように,前記駆動軸34〜36各々の速度を少しずつ落として前記作業終了点Q2に緩やかに停止させれば,停止時の振動などを抑制することができる。
特に,このとき前記制御装置1は,前記駆動軸34〜36各々の速度を調節して該駆動軸34〜36各々を同時に前記作業終了位置Q2における角度に到着させて停止させることが望ましい。これにより,前記駆動軸34〜36各々の駆動モータが個別に停止する場合に比べて該駆動モータの停止時に生じる振動などを抑制することができる。
さらに,前記例外条件が充足する時点L2における前記駆動軸34〜36各々の線形動作開始時の速度が緩やかになるように該駆動軸34〜36の角度を補正することも考えられる。例えば図8は,前記例外条件が充足する前後の前記駆動軸36の角度の変化例を示している。図8に実線で示すように,前記駆動軸36の角度が180度まで増加した後,急にマイナス方向に向けて変化すると,該駆動軸36に急激なマイナス方向の加速度が生じ,振動などの原因となる。そこで,図8に破線で示すように,前記駆動軸36の作動範囲の上限値180に到達することを事前に推定し,その時点から前記駆動軸36の角度が緩やかにマイナス方向に変化するように,該駆動軸36の角度を補正することが考えられる。これにより,前記例外条件が充足した直後に前記駆動軸36の急激な加速度が生じないため,振動などを防止することができる。もちろん,前記駆動軸35,36についても同様である。
また,このように前記駆動軸34〜36の急激な停止や急激な加速度を防止するための制御手法は,前記実施の形態や後述の実施例2などの他の例外条件を用いる場合にも同様に適用することができる。
本実施例2では,前記ロボット制御処理(図3参照)における前記例外条件のさらに他の例について説明する。
ここに,図9は,本実施例2に係るロボット制御処理の手順の一例を示すフローチャートである。なお,前記ロボット制御処理(図3参照)と同様の処理手順については同じ符号を付してその説明を省略する。
具体的に,図9に示すように,本実施例2に係るロボット制御処理では,前記ステップS2〜S4,S61(図3参照)に代えて後述のステップS21,S31,S41,S611が実行される。
(ステップS21,S31,S41)
ステップS21において,前記制御装置1は,前記作業終了点Q2における前記駆動軸34〜36の角度θ4e,θ5e,θ6eと共に,前記作業開始点Q1における前記駆動軸34〜36の角度θ4s,θ5s,θ6sを算出する。
また,前記制御装置1は,当該ステップS21において,前記駆動軸34〜36を前記作業開始点Q1から前記作業終了点Q2まで一定速度で線形に動作させたときの単位時間(1msec)あたりの前記駆動軸34〜36の角度変動Δθ4,Δθ5,Δθ6も算出する。このとき,角度変動Δθ4,Δθ5,Δθ6は,前記作業開始点Q1における前記エンドエフェクタ2の残りの移動時間をT(s)とすると,以下の(51)〜(53)で
求められる。
Δθ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}に設定される。
また,前記制御装置1は,ステップS41において,前記制御装置1は前記制御時間tを更新し(t=t+Δt),前記基準角度θk(t)を更新する。具体的に基準角度θk(t)は,θ4k=θ4k+Δθ4・Δt,θ5k=θ5k+Δθ5・Δt,θ6k=θ6k+Δθ6・Δtとなる。
即ち,前記基準角度θ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度に設定しておくことが考えられる。
例えば,前記制御装置1は,下記の(61)式〜(63)式のいずれかが成立する場合に前記例外条件が充足したと判定する。
|θ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についても同様である。
図10に示すように,本実施例2に係るロボット制御処理が実行される場合には,前記駆動軸36の次の補間点の角度θ6(t)が前記基準角度θ6k(t)から90度以上離れると判断された時点L3から,前記駆動軸34〜36が前記作業終了点Q2の角度に向けて線形に変化するように前記駆動軸31〜36が駆動されるため,該駆動軸34〜36各々を前記作業開始点Q2における角度に確実に到達させることができる。特に,本実施例2に係るロボット制御処理によれば,前記駆動軸34〜36各々の角度が前記基準角度θk(t)から離れ過ぎる前の早期の段階で,該駆動軸34〜36を前記作業終了点Q2に向けて線形動作させることができ,前記駆動軸34〜36の急激な角度変動を未然に防止することができる。
ところで,前記制御装置1は,前記実施の形態,前記実施例1,当該実施例2で説明した複数の前記例外条件の少なくとも一つの充足の有無を判断するものであればよいが,複数の前記例外条件の充足の有無を同時に監視しておき,いずれか一つの例外条件が充足した場合に,前記ステップS7以後の線形動作処理を実行することも考えられる。これにより,前記実施の形態,前記実施例1,当該実施例2で得られる効果を共に奏する構成を具現することができる。
本実施例3では,前記制御装置1が,前記エンドエフェクタ2が加工対象物の加工線に倣って移動するように前記多関節型ロボット3を制御する倣い制御を実行する構成を考える。この場合,前記多関節型ロボット3には,前記エンドエフェクタ2と前記加工線とのズレ量ΔXYZαβγ(t)を検出するセンサ(ズレ量検出手段に相当)が設けられる。
ここに,各時点において前記センサで検出される前記ズレ量ΔXYZαβγ(t)は,前記経路方程式P(t)により算出されたその時点における補間点を基準として表した値である。そして,前記制御装置1は,前記センサによる検出結果に基づいて前記エンドエフェクタ2を前記加工線に倣って移動させる前記倣い制御を実行する。ここに,係る倣い制御を実行するときの前記制御装置1が倣い制御手段に相当する。
具体的に,前記制御装置1は,前記ロボット制御処理(図3参照)のステップS5において次の補間点を算出する際,現在前記センサによって検出されているズレ量ΔXYZαβγ(t)を前記経路方程式P(t)に加算する。また,前記制御装置1は,その加算後の補間点の位置・姿勢X’Y’Z’α’β’γ’(t)から逆運動学問題の解を求めることにより,次の補間点における前記駆動軸31〜36各々の角度θ1’(t)〜θ6’(t)を算出する。そして,前記例外条件が充足していない場合,前記制御装置1は,前記ステップS64において,前記ズレ量ΔXYZαβγ(t)で修正された後の前記角度θ1’(t)〜θ6’(t)に基づいて前記駆動軸31〜36を駆動する。
また,前記制御装置1は,前記ステップS5において,前記作業終了点Q2を,該作業終了点Q2に前記ズレ量ΔXYZαβγ(t)を加算した値に更新する。このとき,更新後の前記作業終了点Q2における前記駆動軸34〜36各々の角度をθ4e(t),θ5e(t),θ6e(t)とする。ここに,係る処理を実行するときの前記制御装置1が作業終了点更新手段に相当する。
これにより,前記例外条件の判断処理では,前記更新後の前記作業終了点Q2に基づいて前記例外条件の充足の有無が判断される。例えば,前記実施の形態における前記ステップS61の例外条件の判定指標となる上記(11)式〜(13)式は,以下の(11’)式〜(13’)式となる。
|(θ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)に到達させることができる。
ところで,前記ロボット制御処理(図3参照)において,前記エンドエフェクタ2の姿勢を完全に無視することは望ましくない。そこで,本実施例4では,前記エンドエフェクタ2の姿勢のうち予め定められた特定成分の変動を抑制することのできる構成について説明する。
具体的に,本実施例4において,前記制御装置1は,前記ロボット制御処理(図3参照)の前記ステップS8と前記ステップS9との間において,後述の特定成分抑制処理(図12参照)を実行する。なお,前記ロボット制御処理については,前記実施の形態で説明したものに限らず,前記実施例1〜3のいずれかに記載された内容を採用すればよい。
以下,図12のフローチャートに従って,前記制御装置1によって実行される特定成分抑制処理の手順の一例について説明する。
(ステップ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で表される。
具体的に,前記制御装置1は,前記ステップS5で算出された次の補間点の前記ベース座標系Σbaseにおける位置・姿勢XYZαβγ(t)を,前記溶接線座標系Σlineにおける姿勢角度(トーチ傾斜角Rx,トーチ前進角Ry,トーチ回転角Rz)に変換する。
例えば,前記ベース座標系Σbaseから前記溶接線座標系Σlineへの変換は,以下の(101)式〜(107)式に従って行われる。なお,前記溶接線座標系ΣlineにおけるX軸,Y軸,Z軸の単位ベクトルをXm,Ym,Zmとする。
Rx=atan(Rm23/Rm33) …(105)
Ry=asin(Rm13) …(106)
Rz=atan(Rm12/Rm11) …(107)
(ステップS82)
次に,ステップS82において,前記制御装置1は,前回の制御周期における前記駆動軸34〜36の速度を基準として,該駆動軸34〜36各々の次の補間点における速度の候補を複数生成する。ここに,係る処理を実行するときの前記制御装置1が角度候補算出手段に相当する。
例えば,前記制御装置1は,前回の制御周期における前記駆動軸34〜36の速度をVθ4OLD ,Vθ5OLD ,Vθ6OLD としたとき,前記駆動軸34の速度の候補として,Vθ4m=Vθ4OLD −F,Vθ4n=Vθ4OLD ,Vθ4p=Vθ4OLD +Fを生成する。また,前記制御装置1は,同じく前記駆動軸35の速度の候補として,Vθ5m=Vθ5OLD−G,Vθ5n=Vθ5OLD ,Vθ5p=Vθ5OLD +G,前記駆動軸36の速度の候補として,Vθ6m=Vθ6OLD −H,Vθ6n=Vθ6OLD ,Vθ6p=Vθ6OLD +Hを生成する。ここに,前記定数F,G,H各々は,1サンプル周期あたりの加速度の限界値や振動などが起きない範囲の値で予め定めたものである。
このように前記駆動軸34〜36各々について3通りの速度の候補を生成すると,以下(201)〜(227)の合計27通りの異なる組み合わせが生じる。
(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)とする。
続いて,ステップS84において,前記制御装置1は,3つの速度の候補Vθa(t),Vθb(t),Vθc(t)各々が採用された場合の次の補間点における前記駆動軸34〜36の角度の候補θa(t),θb(t),θc(t)を生成する。なお,ここでは説明の便宜上3つの速度の候補及び角度の候補を生成しているが,その候補の数は,前記制御装置1の演算性能に応じて,前記多関節型ロボット3に要求される動作速度が満たされる範囲で任意に設定すればよい。
例えば,最初のサンプル周期において,以下の(301)〜(303)に示すように前記速度の候補Vθa(t),Vθb(t),Vθc(t)として前記組み合わせ(201),(202),(203)が選択されると,以下の(304)〜(306)に示すように前記角度の候補θa(t),θb(t),θ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との間の角度であるか否かが判断される。
ここで,前記角度の候補θa(t),θb(t),θc(t)各々が,前記角度θ4NOW,θ5NOW ,θ6NOW と前記角度θ4e,θ5e,θ6eとの間の角度であると判断された場合には(S85のYes側),処理はステップS86に移行する。しかし,そうでないと判断された場合には(S85のNo側),処理は前記ステップS83に戻されて異なる組み合わせが選択され,続く前記ステップS84において前記候補θa(t),θb(t),θc(t)が再度生成される。
このように,前記駆動軸34〜36各々の角度の候補が,常に前記角度θ4NOW ,θ5NOW ,θ6NOW と前記角度θ4e,θ5e,θ6eとの間の角度の範囲に限定されるため,該駆動軸34〜36各々の角度を前記作業終了位置Q2における角度に確実に到達させることができる。なお,前記作業終了位置Q2よりも手前で前記駆動軸34〜36各々の角度が該作業終了位置Q2における角度に到達することも考えられるが,この場合には,その後,前記駆動軸34〜36各々の角度θ4NOW =θ4e,θ5NOW =θ5e,θ6NOW =θ6eとすればよい。ここに,前記ステップS82〜S85により複数の角度の候補を算出するときの前記制御装置1が角度候補算出手段に相当する。
(ステップS86)
次に,ステップS86において,前記制御装置1は,前記ステップS84で生成された角度の候補θa(t),θb(t),θc(t)のそれぞれについて,前記溶接線座標系Σlineから見た前記エンドエフェクタ2の姿勢角度を求める。
具体的には,前記角度の候補θa(t),θb(t),θc(t)について順運動学問題の解を求めることにより,該候補ごとに対応する前記ベース座標系Σbaseにおける位置・姿勢を算出した後,該ベース座標系Σbaseから溶接線座標系Σlineに変換することが考えられる。なお,ベース座標系Σbaseから溶接線座標系Σlineへの変換は,前記ステップS81と同様に行えばよいため,ここでは説明を省略する。
(ステップS87〜S88)
そして,ステップS87において,前記制御装置1は,前記角度の候補θa(t)〜θc(t)のうち,前記ステップS86で求められた姿勢角度が前記ステップS81で求められた姿勢角度に最も近い角度の候補を選択する。このとき,前記制御装置1は,前記溶接線座標系Σlineから見た前記エンドエフェクタ2の姿勢角度の3つの成分(トーチ傾斜角Rx,トーチ前進角Ry,トーチ回転角Rz)のうち,予め定められた一つ又は二つの特定成分の変動を抑制したときに,前記ステップS81で求められた姿勢角度に最も近いものを選択する。ここに,係る処理を実行するときの前記制御装置1が角度選択手段に相当する。なお,前記特定成分は,前記操作部13による操作に応じて,或いは前記多関節型ロボット3の加工内容に応じて前記制御装置1によって予め設定される。
具体的に,前記制御装置1は,前記角度の候補θa(t),θb(t),θc(t)それぞれを採用した場合における姿勢角度と前記ステップS81で求められた姿勢角度との変動量Ua,Ub,Ucを下記の(331)〜(333)に従って求める。ここに,定数D,E,Fは,前記エンドエフェクタ2の姿勢角度の3つの成分(トーチ傾斜角Rx,トーチ前進角Ry,トーチ回転角Rz)のいずれの成分の変動を抑制するかによって定められる数値である。例えば,トーチ傾斜角Rx,トーチ前進角Ryの変動を抑制する場合には,D=1,E=1,F=0であることが考えられる。
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)を選択する。
その後,ステップS88において,前記制御装置1は,前記ステップS8で算出されたθ4NOW ,θ5NOW ,θ6NOW を,前記ステップS87で選択された前記角度の候補θa(t),θb(t),θc(t)のいずれかに変更する。例えば,Ua<Ub<Ucであれば,変動量Uaに対応する前記角度の候補θa(t)が選択され,θ4NOW =θ4a(t),θ5NOW =θ5a(t),θ6NOW =θ6a(t)となる。
これにより,その後の前記ステップS9〜S11により前記駆動軸31〜36が駆動されたときの前記エンドエフェクタ2の前記特定成分の変動量を抑制することができる。
ここに,図17は,前記実施の形態における前記ロボット制御処理(図3)において,前記特定成分抑制処理を実行した場合の前記駆動軸34〜36の駆動軌跡を示している。
なお,図17における破線は,前記特定成分抑制処理を実行せずに前記駆動軸34〜36を線形動作させた場合の駆動軌跡を示している。
ここでは,前記多関節型ロボット3の加工内容が溶接であって,前記エンドエフェクタ2の前記溶接線座標系Σlineにおける姿勢角度(トーチ傾斜角Rx,トーチ前進角Ry,トーチ回転角Rz)のうちトーチ傾斜角Rx,トーチ前進角Ryの変動を抑制することが特に重要であり,該トーチ傾斜角Rx,トーチ前進角Ryが前記特定成分として予め設定されているものとする。
この場合,前記特定成分抑制処理(図12参照)が実行されることにより,図17に示すように,前記例外条件が充足した後,前記駆動軸34〜36は,前記作業終了点Q2を目標として概ね線形動作することになるが,その経路は,前記エンドエフェクタ2の前記溶接線座標系Σlineにおけるトーチ傾斜角Rx,トーチ前進角Ryを抑制するために微調整される。
これにより,図18に示すように,溶接作業にとって重要でない(重み付けが小さい)トーチ回転角Rzの変動を犠牲にして,溶接作業に重要な(重み付けが大きい)トーチ傾斜角Rxとトーチ前進角Ryとの変動を抑制することができる。なお,図18における破線は,前記特定成分抑制処理を実行せずに前記駆動軸34〜36を線形動作させた場合の変動量を示している。
また,図19は,前記実施例2における前記ロボット制御処理(図9)において,前記特定成分抑制処理を実行した場合の前記駆動軸34〜36の駆動軌跡を示している。なお,図19における破線は,前記特定成分抑制処理を実行せずに前記駆動軸34〜36を線形動作させた場合の駆動軌跡を示している。
ここでも,前記多関節型ロボット3の加工内容が溶接であって,前記トーチ傾斜角Rx,トーチ前進角Ryが前記特定成分として予め設定されているものとする。
この場合,前記特定成分抑制処理(図12参照)が実行されることにより,図19に示すように,前記例外条件が充足した後,前記駆動軸34〜36は,前記作業終了点Q2を目標として概ね線形動作することになるが,その経路は,前記エンドエフェクタ2の前記溶接線座標系Σlineにおけるトーチ傾斜角Rx,トーチ前進角Ryを抑制するために微調整される。
これにより,図20〜図22に示すように,溶接作業にとって重要でない(重み付けが小さい)トーチ回転角Rzの変動を犠牲にして,溶接作業に重要な(重み付けが大きい)トーチ傾斜角Rxとトーチ前進角Ryとの変動を抑制することができる。なお,図20〜22における破線は,前記特定成分抑制処理を実行せずに前記駆動軸34〜36を線形動作させた場合の変動量を示している。
ところで,当該ステップS64において,前記制御装置1は,前記第1関節駆動系が特異姿勢(特異点)に近づいたか否かを検出し,特異姿勢に近づいた場合には,前記ステップS5で算出される逆運動学問題の解のうち他方の解に滑らかに移行させるための処理を実行するものであってもよい。
さらに,前記逆運動学問題の一方の解から他方の解に移行するとき,前記実施例4のように,前記エンドエフェクタ2の前記溶接線座標系Σlineにおける姿勢角度(トーチ傾斜角Rx,トーチ前進角Ry,トーチ回転角Rz)のうち予め設定された一つ又は二つの特定成分の変動を抑制するように複数の候補から一つの候補を選択しながら,前記駆動軸34〜36の角度を,前記逆運動学問題の一方の解から他方の解に滑らかに移行させることが望ましい。
上述した実施形態のような特異姿勢を回避する処理(回避処理)を行っている際は、この回避処理を行っていることを示す、即ち、多関節型ロボット3が特異姿勢を回避中であることを外部に報知する手段を設けることが好ましい。
具体的には、図25に示すように、特異姿勢を回避中であることを示す「特異点回避中」を、操作部13(教示ペンダント)の表示画面Mに表示する。なお、特異姿勢を回避中であることを示す表示は、「特異点回避中」という表現に限定されず、特異姿勢を回避していることが分かる表現であればどのような表現であってもよい。
このように、特異点回避中であることを表示することによって、多関節型ロボット3が特異点回避中の状態であるか、特異点回避中ではない状態であるかをオペレータが溶接中に把握することができる。そのため、例えば、作業対象物(材料)の溶接後に品質検査を行う場合、特異点回避中の状態で溶接した箇所を注視して検査することが可能となる。
また、例えば、特異点回避中の状態における多関節型ロボット3の全体の動きを、オペレータが目視などで監視することもでき、この監視に基づいて、次の溶接作業などで、再度、多関節型ロボット3を動かすときに、多関節型ロボット3の全体の動作を見直すこともできる。
なお、「特異点回避中」の表示の他に、処理プログラムが分かるように処理プログラムの内容(例えば、再生中プログラムの番号)を表示画面Mに表示したり、処理プログラムを実行している時間(再生時間)、エンドエフェクタの動き(例えば、直線移動)を表示画面Mに表示してもよい。さらに、予め教示されたトーチの情報(例えば、トーチ傾斜角、トーチ前進角、トーチ回転角など)と、現在のトーチの情報とを表示画面Mに表示してもよい。
これによれば、「特異点回避中」における多関節型ロボット3の詳しい状態を把握することができる。
上述した例では、特異点回避の処理を行っていることを表示画面Mに表示させているが、これに代えて、特異点回避を行っていることをスピーカ等によって音で知らせてもよいし、ランプなどの点灯や点滅など光で知らせてもよい。特異点回避を行っていることは、多関節型ロボットの教示ペンダント13とは別の外部の表示装置に表示してもよい。
また、「特異点回避中」の時間を制御部10の記憶部12などにログとして記憶してもよい。そして、例えば、溶接終了後に操作部13(教示ペンダント)の表示画面Mに特異点回避中の時間履歴を表示し、オペレータなどが特異点回避中の時間履歴を確認できるようにしてもよい。
1 :多関節型ロボットの制御装置
11:演算部
12:記憶部
13:操作部
2 :エンドエフェクタ
3 :多関節型ロボット
31〜36:駆動軸

Claims (8)

  1. 先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットを制御する多関節型ロボットの制御装置であって,
    予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出手段と,
    前記補間点算出手段により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御手段と,
    前記駆動制御手段により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する例外条件判定手段と,
    前記例外条件判定手段により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出手段によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作手段と,
    を備えてなり,
    前記例外動作手段が,
    前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形動作させる場合より該目標に近い角度の範囲内において該駆動軸各々の角度の候補を複数算出する角度候補算出手段と,
    前記角度候補算出手段により算出された角度の候補から,該候補各々を採用したときの次の前記補間点の前記作業部から見た作業座標系における3つの姿勢角度の成分のうち予め設定された一つ又は二つの特定成分の変動が最も抑制される角度の候補を選択する角度選択手段と,
    を備えてなることを特徴とする多関節型ロボットの制御装置。
  2. 前記例外条件が,次の前記補間点からの前記作業部の残りの移動時間又は移動距離の間
    に前記第1関節駆動系の駆動軸各々の角度を前記作業終了点における角度に到達させる場合に前記第1関節駆動系の少なくとも一つの駆動軸の速度が予め設定された許容範囲を超えることである請求項1に記載の多関節型ロボットの制御装置。
  3. 前記例外条件が,前記作業部の残りの移動時間又は移動距離が予め設定された所定値以下に達することである請求項1又は2のいずれかに記載の多関節型ロボットの制御装置。
  4. 前記例外条件が,次の前記補間点における前記第1関節駆動系の少なくとも一つの駆動軸の角度が前記作業開始点及び/又は前記作業終了点に基づいて定まる基準角度から予め設定された所定角度以上離間することである請求項1〜3のいずれかに記載の多関節型ロボットの制御装置。
  5. 前記例外条件が,次の前記補間点における前記第1関節駆動系の少なくとも一つの駆動軸の角度が予め設定された作動範囲を超えることである請求項1〜4のいずれかに記載の多関節型ロボットの制御装置。
  6. 前記作業部と加工対象物の加工線とのズレ量を検出するズレ量検出手段と,前記ズレ量検出手段により検出されたズレ量に基づいて前記作業部を前記加工線に倣って移動させる倣い制御手段と,前記ズレ量検出手段により検出されたズレ量を前記作業終了点に加算して該作業終了点を更新する作業終了点更新手段とを更に備えてなり,
    前記例外条件判定手段及び/又は前記例外動作手段が,前記作業終了点更新手段による更新後の前記作業終了点に基づいて処理を実行するものである請求項1〜5のいずれかに記載の多関節型ロボットの制御装置。
  7. 先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットを制御する多関節型ロボットの制御方法であって,
    予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出工程と,
    前記補間点算出工程により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御工程と,
    前記駆動制御工程により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する例外条件判定工程と,
    前記例外条件判定工程により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出工程によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作工程と,を実行するものであって,
    前記例外動作工程が,
    前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形動作させる場合より該目標に近い角度の範囲内において該駆動軸各々の角度の候補を複数算出する角度候補算出工程と,
    前記角度候補算出手段により算出された角度の候補から,該候補各々を採用したときの次の前記補間点の前記作業部から見た作業座標系における3つの姿勢角度の成分のうち予め設定された一つ又は二つの特定成分の変動が最も抑制される角度の候補を選択する角度選択工程と, を実行することを特徴とする多関節型ロボットの制御方法。
  8. 先端に設けられた作業部の姿勢を変化させる3つの駆動軸を有する第1関節駆動系と前記第1関節駆動系の位置を変化させる少なくとも3つの駆動軸を有する第2関節駆動系とを備えてなる多関節型ロボットを制御するための多関節型ロボットの制御プログラムであって,
    予め設定される作業開始点及び作業終了点各々の位置及び姿勢を結ぶ教示経路上で前記作業部の位置を予め定められた速度で移動させるための複数の補間点を算出する補間点算出工程と,
    前記補間点算出工程により算出された前記補間点に従って前記第1関節駆動系及び前記第2関節駆動系を駆動させる駆動制御工程と,
    前記駆動制御工程により前記第1関節駆動系及び前記第2関節駆動系が駆動されているときに,前記第1関節駆動系の特異姿勢の検出条件とは異なる予め設定された例外条件が充足したか否かを判定する例外条件判定工程と,
    前記例外条件判定工程により前記例外条件が充足したと判定された後,前記作業部が前記作業終了点に到達するまでの間,前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形に変化させるための該第1関節駆動系の駆動軸各々の角度を算出すると共に,該算出された第1関節駆動系の駆動軸各々の角度と前記補間点算出工程によって算出された前記補間点における前記作業部の位置とに基づいて前記第2関節駆動系の駆動軸各々の角度を算出し,該算出結果に従って前記第1関節駆動系及び前記第2関節駆動系の駆動軸各々を駆動させる例外動作工程と,をプロセッサに実行させるものであって,
    前記例外動作工程が,
    前記第1関節駆動系の駆動軸各々を前記作業終了点の角度を目標として線形動作させる場合より該目標に近い角度の範囲内において該駆動軸各々の角度の候補を複数算出する角度候補算出工程と,
    前記角度候補算出手段により算出された角度の候補から,該候補各々を採用したときの次の前記補間点の前記作業部から見た作業座標系における3つの姿勢角度の成分のうち予め設定された一つ又は二つの特定成分の変動が最も抑制される角度の候補を選択する角度選択工程と,をプロセッサに実行させることを特徴とする多関節型ロボットの制御プログラム。
JP2011254807A 2011-03-08 2011-11-22 多関節型ロボットの制御装置,制御方法及び制御プログラム Active JP5730179B2 (ja)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 株式会社東芝 ロボット制御装置

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