JP7309592B2 - ロボット曲面倣い制御方法 - Google Patents
ロボット曲面倣い制御方法 Download PDFInfo
- Publication number
- JP7309592B2 JP7309592B2 JP2019226602A JP2019226602A JP7309592B2 JP 7309592 B2 JP7309592 B2 JP 7309592B2 JP 2019226602 A JP2019226602 A JP 2019226602A JP 2019226602 A JP2019226602 A JP 2019226602A JP 7309592 B2 JP7309592 B2 JP 7309592B2
- Authority
- JP
- Japan
- Prior art keywords
- work
- robot
- curved surface
- pen
- work tool
- 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
- 238000000034 method Methods 0.000 title claims description 40
- 239000013598 vector Substances 0.000 claims description 35
- 230000033001 locomotion Effects 0.000 claims description 23
- 238000012545 processing Methods 0.000 claims description 16
- 238000001514 detection method Methods 0.000 claims description 10
- 238000012937 correction Methods 0.000 claims description 8
- 239000012636 effector Substances 0.000 description 23
- 238000002360 preparation method Methods 0.000 description 21
- 230000036544 posture Effects 0.000 description 16
- 238000007781 pre-processing Methods 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000003860 storage Methods 0.000 description 4
- 238000003825 pressing Methods 0.000 description 3
- 239000006071 cream Substances 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 240000007594 Oryza sativa Species 0.000 description 1
- 235000007164 Oryza sativa Nutrition 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 238000005498 polishing Methods 0.000 description 1
- 235000009566 rice Nutrition 0.000 description 1
Images
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/1679—Programme controls characterised by the tasks executed
- B25J9/1684—Tracking a line or surface by means of sensors
-
- 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
- B25J9/1633—Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
-
- 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/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
-
- 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/34—Director, elements to supervisory
- G05B2219/34128—General surface replaced by sphere, cylinder, toroid, calculate quickly
-
- 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/35—Nc in input of data, input till input file format
- G05B2219/35071—Drawing function, rotate designed figure, rotation
-
- 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/35—Nc in input of data, input till input file format
- G05B2219/35292—By making, plotting a drawing
-
- 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/39003—Move end effector on ellipse, circle, sphere
-
- 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/40083—Pick up pen and robot hand writing
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Description
本発明は、ロボットに曲面を倣わせる制御に関する。
従来から、3次元自由曲面を有する対象ワークの表面に対して、先端部に取り付けられた作業具で所定作業を行うロボットに、対象ワークの曲面を倣わせるための制御方法が知られている。特許文献1は、この種のパイプ表面の倣い制御方法を開示する。
特許文献1のパイプ表面の倣い制御方法は、力制御ロボットの先端部を対象ワークであるパイプの表面に接触させながら移動させて、先端部の移動軌跡からパイプの断面の形状を測定することにより、形状情報及び位置情報を得て、パイプのモデルを作成するとともに、作成したパイプモデルに基づいてパイプと力制御ロボットとの相対的な位置誤差を修正する構成となっている。
しかし、上記特許文献1の構成は、事前に、対象ワークの表面に接触して走査しながら測定することで、対象ワークの形状情報を取得する必要がある。従って、対象ワークの形状情報の取得等、事前準備が煩雑である。また、風船等の柔軟物を対象ワークとする場合、その表面を接触して走査して形状情報を取得するが、走査によって風船が破損してしまう可能性があるという点で改善の余地があった。
本発明は以上の事情に鑑みてされたものであり、その目的は、対象ワークが柔軟質であっても、曲面に対しても好適に倣うことができるロボット曲面倣い制御方法を提供することにある。
本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
本発明の観点によれば、以下の構成のロボット曲面倣い制御方法が提供される。このロボット曲面倣い制御方法は、ハンド部と、アーム部と、制御部と、を備えるロボットを制御するために用いられる。前記ロボットのハンド部には、作業具が取り付けられている。前記アーム部は、前記ハンド部に連結する。前記制御部は、前記ハンド部及び前記アーム部の動作を制御する。このロボット曲面倣い制御方法は、法線方向特定工程と、作業具姿勢制御工程と、を含む処理を行う。前記法線方向特定工程では、曲面を有する対象ワークの形状を近似する数式に基づいて、前記ハンド部に取り付けられた前記作業具が、前記数式によって表した仮想形状に接触する仮想位置における当該仮想形状の法線方向を求める。前記作業具制御工程では、前記対象ワークの表面で前記仮想位置に対応する位置である対応位置において、前記ハンド部に取り付けられた前記作業具を、前記法線方向特定工程で特定された前記法線方向に沿う姿勢で前記対象ワークに接触させる。
これにより、対象ワークの曲面に対して、ロボットを好適に倣わせながら作業を行うことができるとともに、事前準備処理を簡単にすることができる。また、対象ワークが柔軟物である場合であっても、その表面に良好に倣うことができる。
本発明によれば、事前準備を簡単にすることができ、対象ワークが柔軟質であっても、曲面に対しても好適に倣うことができる。
次に、図面を参照して本発明の実施の形態を説明する。図1は、本発明の一実施形態に係るロボット曲面倣い制御方法が適用するロボット100が風船Wの表面に倣う様子を示す側面図である。
図1に示すロボット100は、例えば、垂直型の多関節ロボットとして構成される。ロボット100は、対象ワークに対して、組立て、加工、塗装、洗浄等の作業を行うことができる。ロボット100は、支持台11と、多関節アーム(アーム部)12と、エンドエフェクタ(ハンド部)13と、制御部10と、を備える。
支持台11は、ロボット100を固定するために用いられる。多関節アーム12には、それぞれの関節を動かすための図略の電動モータが配置されている。ロボット100は、この電動モータを介して多関節アーム12の関節を動かすことで、例えば、エンドエフェクタ13(作業具15)を、3次元空間移動させることができる。また、各関節には、多関節アーム12及びエンドエフェクタ13を駆動するための電動モータの回転角度を検出するエンコーダが設けられている。
後述の制御部10は、このエンコーダにより検出された電動モータの回転角度に基づいて、エンドエフェクタ13の移動軌跡等を算出することができる。また、制御部10は、ロボット100のある姿勢におけるエンコーダの出力(即ち各電動モータの回転角度)を記憶することで、記憶された回転角度で各電動モータの回転を制御することで、当該姿勢を再現することができる。
エンドエフェクタ13は、多関節アーム12の先端に取り付けられる。エンドエフェクタ13には、作業内容に応じた作業具15が着脱可能に取り付けられている。エンドエフェクタ13の動作は、制御部10からの動作指令に応じて制御される。エンドエフェクタ13は、多関節アーム12の駆動により、3次元空間内で位置と姿勢を移動可能である。なお、エンドエフェクタ13が対象ワークに直接的に接触して作用する場合、当該エンドエフェクタ13が作業具に相当する。
エンドエフェクタ13には、力センサ14が取り付けられている。力センサ14は、エンドエフェクタ13に取り付けられている作業具15に加わる力を検出することができる。
力センサ14は、力に代えて又は加えてモーメントを検出するように構成されても良い。力センサ14は、対象ワークに対する押付け力を検出できれば、エンドエフェクタ13と多関節アーム12との間、作業具15等の部位に取り付けられても良い。
制御部10は、多関節アーム12及びエンドエフェクタ13の姿勢、動作等を制御するために用いられる。制御部10は、公知のコンピュータとして構成されており、マイクロコントローラ、CPU、MPU、PLC、DSP、ASIC又はFPGA等の演算処理部と、ROM、RAM、HDD等の記憶部と、外部装置と通信可能な通信部と、を備える。記憶部には、演算処理部が実行するプログラム、通信部を介して外部装置から入力された各種の設定閾値、曲面倣いに関する各種データ等が記憶されている。
制御部10は、力センサ14の検出値に基づいて、作業具15に作用する外力を取得し、当該外力が一定値(所定閾値又は所定閾値範囲内)となるように、多関節アーム12を駆動する図略の電動モータを制御することで、作業具15を対象ワークの表面に押し付けながら予め設定された作業軌跡に沿って移動させる。即ち、制御部10は、対象ワークの表面に対する作業具15の押付け力を制御しながら、作業具15を対象ワークの表面形状に倣って移動させる。
続いて、対象ワークである風船Wの表面(詳細には、上面)に任意のイラストレーションを描画する場合を例にして、本実施形態のロボット曲面倣い制御方法について、詳細に説明する。この例において、エンドエフェクタ13に取り付けられる作業具15は、図5に示す描画用のペン15aである。
本実施形態のロボット曲面倣い制御方法は、図2に示すように、事前処理装置2(図1)を用いて、倣う対象ワークの形状(風船Wの外周形状)に対する近似形状の決定等の事前処理を行う。そして、このロボット曲面倣い制御方法では、作業(描画)時において、ロボット100の制御部10を用いて、事前処理で得られた近似形状に基づいてエンドエフェクタ13(ひいてはペン15a)の姿勢及び移動に関するデータを算出しながら、ペン15aの動きを制御する。
事前処理装置2は、図1に示すように、近似形状決定部21と、数式演算部22と、作業軌跡作成部23と、を備える。事前処理装置2は、例えば、ロボット100の制御部10とは別途に設けられる。
事前処理装置2は、公知のコンピュータとして構成されており、マイクロコントローラ、CPU、MPU、PLC、DSP、ASIC又はFPGA等の演算処理部と、ROM、RAM、HDD等の記憶部と、外部装置と通信可能な通信部と、を備える。記憶部には、演算処理部が実行するプログラム等が記憶されている。このハードウェアとソフトウェアの協働により、事前処理装置2を、近似形状決定部21、数式演算部22、及び作業軌跡作成部23として機能させることができる。
近似形状決定部21は、図2に示す事前準備の第1準備ステップS101を行う。第1準備ステップS101では、近似形状決定部21が風船Wの形状情報を分析し、風船Wの形状に近似する近似形状(仮想形状)を決定する。現実の風船Wの形状は3次元であるため、近似形状も3次元形状となる。風船Wの3次元の形状情報は、例えば、風船Wがセットされる位置の周辺に設置された図略の複数のカメラにより画像を取得し、複数の画像を解析することにより、得ることができる。複数のカメラに代えて、3次元レーザスキャナ等により得られた3次元点群データから、風船Wの形状情報を取得しても良い。
近似形状の決定は、例えば、近似形状の表面の位置と、現実の風船Wの表面の位置と、の誤差が所定閾値以内となるように行うことができる。誤差の閾値は、作業に要求される精度を考慮して決定される。近似形状は、予め定められた複数の幾何学的な3次元形状(例えば、球体、楕円球体、円柱体、円錐体、角柱等)から選択される。本実施形態においては、風船Wに近似する近似形状は、例えば、図1等に示す球体3に決定される。近似形状の決定は、例えば、機械学習により予め構築された学習済モデルによって自動的に行うことができる。風船Wの大きさ、形状、及びセットされる位置等が予め(概ね)決まっている場合は、形状情報の分析は省略し、作業者等によって予め設定された近似形状をそのまま用いることができる。
数式演算部22は、図2に示す事前準備の第2準備ステップS102及び第3準備ステップS103を行う。第2準備ステップS102では、数式演算部22が、近似形状決定部21で決定された近似形状を表す数式である形状数式を取得する。近似形状の種類と形状数式の対応関係は、事前処理装置2に予め記憶されている。近似形状が球体3である場合、得られる形状数式は、例えば下記の式(1)となる。
ただし、Rは、球体3の半径である。(XC,YC,ZC)は、球体3の中心である。(x,y,z)は、球体3の表面のある点を表す位置座標である。
そして、第3準備ステップS103では、数式演算部22が、第1準備ステップS101で決定された近似形状の表面の任意の位置における法線ベクトルを表す数式である法線数式を取得する。近似形状の種類と法線数式の対応関係は、近似形状の種類と形状数式の対応関係と同様に、事前処理装置2に予め記憶されている。近似形状が球体3である場合、得られる法線数式は、例えば下記の式(2)となる。式(2)で得られる法線ベクトルは、球体3の表面の各位置から球体3の中心(XC,YC,ZC)に向くベクトルである。
数式演算部22は、上記のように得られた法線数式を表すパラメータを、例えば、通信部を介してロボット100の制御部10に送信する。この場合、制御部10は、この式(2)を用いて、球体3(ひいては風船W)の表面における作業予定(描画予定)の各位置の法線ベクトルを算出する。
上述の第1準備ステップS101、第2準備ステップS102及び第3準備ステップS103は、法線方向特定工程に相当する。
作業軌跡作成部23は、図2に示す事前準備の第4準備ステップS104を行う。第4準備ステップでは、作業軌跡作成部23が、外部装置から入力された(又は作業者が入力した)2次元作業軌跡5を、近似形状の球体3の表面に沿う3次元作業軌跡6に変換する。今回説明する例においては、当該作業軌跡(2次元作業軌跡5又は3次元作業軌跡6)は、描画予定のイラストレーションを構成する線の軌跡である。3次元作業軌跡6は、現実の風船Wの形状が近似形状と一致すると仮定した場合に、ペン15aが当該風船W(言い換えれば、球体3)と接触する点である仮想接触点(仮想位置)のそれぞれから構成された軌跡ということもできる。
2次元作業軌跡5は、ベクターグラフィックス形式で表される。2次元作業軌跡5は、例えば、作業者がドローイングソフトにより作成しても良いし、適宜のカメラで撮影した画像データを画像処理することにより自動的に作成しても良い。2次元作業軌跡5は、例えば、XY2次元座標系における点の位置を示す座標と、描画(ストローク)するかしないかを表す情報と、の組合せを、ペン15aの移動順序に従って並べたデータとして表現することができる。曲面を有する形状への描画の仕上がりを考慮して、点と次の点の間の距離は、十分短くなるように定められる。
作業軌跡作成部23は、入力された2次元作業軌跡5を構成するそれぞれの点を、図3に示すように球体3の表面に投影して、得られた投影点の位置座標のそれぞれを求めることで、3次元作業軌跡6を作成する。この変換により、3次元作業軌跡6は、例えば、3次元座標系における点の位置を示す座標と、その点で描画するかしないかを表す情報と、の組合せを、ペン15aの移動順序に従って並べたデータとなる。ただし、3次元作業軌跡6(又は3次元作業軌跡6に関する位置座標等のデータ)の作成方法は上記に限定されない。3次元作業軌跡6におけるそれぞれの点座標は、近似によって得られる仮想的な球体3の表面にペン15aが接触する点である仮想接触点と考えることができる。
以下、任意の仮想接触点を第1仮想接触点と呼び、第1仮想接触点の次の仮想接触点を第2仮想接触点と呼ぶ。3次元作業軌跡6の各仮想接触点は、2次元作業軌跡5の各点に対応しているので、第1仮想接触点と第2仮想接触点の間の距離は十分に短い。従って、第1仮想接触点から第2仮想接触点へ向かうベクトルは、実質的に、第1仮想接触点における法線方向に垂直な平面内(言い換えれば、第1仮想接触点で球体3の表面に接する平面内)に沿った向きとなる。このように、仮想接触点から次の仮想接触点へ向かう向きは、近似形状である球体3に対して常に接線方向である。
詳細は後述するが、現実のペン15aの進行方向は上記のベクトルに基づいて定められるので、以下では、当該ベクトルをペン進行方向ベクトル(作業具進行方向ベクトル)と呼ぶことがある。ペン進行方向ベクトルは、通過順序が隣接する2つの仮想接触点の差分に相当する。従って、3次元作業軌跡6は、通常、多数の仮想接触点のデータを含んでいるが、このデータ系列は、多数のペン進行方向ベクトルの群と考えることができる。
作業軌跡作成部23は、得られた3次元作業軌跡6を、通信部を介して、ロボット100の制御部10(又は数式演算部22)に送信する。
上記のように事前準備が完了した後、実際の描画作業が開始される。通常、イラストレーションは多数本の描画(ストローク)から構成されるが、以下では、説明を簡単にするために、1本の描画を開始してから終了するまでに着目して説明する。
風船Wの上面に描画を開始する場合、ロボット100は、最初の仮想接触点(描画開始点)から上方に十分に離れ、かつ当該仮想接触点と上下方向で対応する位置に、ペン15aの先端が位置するように、ペン15aを移動させる。また、ロボット100は、ペン15aの姿勢を、当該仮想接触点における法線方向と一致するように調整する。
その後、ロボット100は、ペン15aの姿勢を保持しつつ、力センサ14の検出値を監視しながら下向きに動かす。ペン15aを下向きに移動させると、やがて、ペン15aが現実の風船Wに接触し、それに伴う力が力センサ14によって検出される。移動の過程で、力センサ14の検出値が所定値に到達すると、ペン15aの下向きへの移動が停止される。移動停止時のペン15aの先端の位置(現実のペン15aの位置と考えることができる。)は、仮想接触点より下になることもあれば、上になることもある。
その後、ロボット100は、ペン15aを移動させる。この移動の向きは、現在の仮想接触点から次の仮想接触点までに至る向きである。この向きは、上述したように、3次元作業軌跡6に応じた接線方向ということができる。ロボット100は、この移動の過程で、ペン15aの姿勢を、新しい仮想接触点における法線方向と一致するように調整する。更に、この過程で、ペン15aの上下方向の位置(即ち、ペン15aの先端と風船Wとの接触の強さ)が、力センサ14の検出値に応じて調節される。
最後の仮想接触点に至ると、ロボット100はペン15aを上向きに移動させ、この結果、ペン15aが現実の風船Wから離れる。以上により、ペン15aによって1本の線が風船Wの表面に描かれる。このようにして、ロボット100は、仮想接触点における球体3と現実の風船Wの形状の誤差を吸収しつつ、現実の風船Wの外周面にペン15aを倣わせながら描画作業を行う。
図4には、上記の動作を実現するための処理がフローチャートとして示されている。以下、この処理を説明する。ただし、図4に示すフローチャートは一例であり、処理の順序又は内容を変更することができる。
描画作業が開始すると、ロボット100の制御部10は、先ず、描画作業を行うため、3次元作業軌跡6に含まれる仮想接触点のそれぞれについて、当該仮想接触点における法線ベクトルを、上記式(2)を用いて求める(ステップS201)。
そして、制御部10は、処理が完了していない仮想接触点が存在するか否か(即ち、描画作業が完了したか否か)を判定する(ステップS202)。この判断は、全ての仮想接触点に対して後述の処理を反復するためのものである。従って、全ての仮想接触点に対する処理(即ち、描画作業)が完了するまで、後述のステップS203以降の処理が繰返し実行される。
ステップS202の判断で、描画作業がまだ完了していないと判定した場合、制御部10は、今回のループ回で処理する仮想接触点が最初の仮想接触点であるか否かを判定する(ステップS203)。
ステップS203の判断で、処理する仮想接触点が最初の仮想接触点であった場合、制御部10は、当該仮想接触点における法線ベクトルに沿うようにペン15aの姿勢を調整した後(ステップS205)、ペン15aを風船Wに近づくように移動させる(ステップS206、ステップS207)。制御部10は、力センサ14の検出値に基づいて、ペン15aに加わる力が所定閾値(又は所定閾値範囲内)となるような位置で、ペン15aの移動を停止させる。即ち、制御部10は、ペン15aを、最初の仮想接触点における法線ベクトルと一致する姿勢で、風船Wに対して適切な押付け力で接触させる(ステップS206及びステップS207)。上述したように、球体3は風船Wの近似形状であるため、ペン15aと風船Wとの実際の接触点である実接触点(対応位置)は、仮想接触点と一致しない場合が殆どである。その後、処理がステップS202に戻り、次の仮想接触点に対する処理が行われる。
ステップS203の判断で、今回のループ回が最初の仮想接触点に対する処理ではないと判定した場合、直前回の仮想接触点から今回の仮想接触点に向けてペン15aを移動させる(ステップS204)。2つの仮想接触点の距離は十分に短いため、ペン15aの移動距離は短い。また、ペン15aの移動方向は、直前回の仮想接触点を含み、かつ、当該仮想接触点における法線ベクトルと垂直な平面(接平面)に沿ったものとなる。
以下においては、図5から図7までを参照して、図5に示す仮想接触点(k-1)から仮想接触点(k)までペン15aを移動させる例を用いて、ステップS203に示す処理を詳細に説明する。仮想接触点(k-1)は直前回の仮想接触点に相当し、仮想接触点(k)は今回の仮想接触点に相当する。図5等においては、説明を分かり易くするために、処理順序が隣接する仮想接触点(k-1)と仮想接触点(k)とが大きく離れるように誇張して描かれている。
図5には、直前回の仮想接触点(k-1)における法線ベクトルzT(k-1)が示されている。また、図5には、直前回の仮想接触点(k-1)から今回の仮想接触点(k)に向かう方向のベクトルgT(k-1)が示されている。図5においてベクトルgT(k-1)の向きは、直前回の仮想接触点(k-1)と今回の仮想接触点(k)とを結ぶ直線の向きと一致していないが、これは、上述した表現の誇張によるものである。
以下では、3次元の作業具座標系を一時的に考える。この作業具座標系は、処理対象の仮想接触点が変わる毎に再定義される。この作業具座標系では、直前回の仮想接触点(k-1)を含み、法線ベクトルzT(k-1)に垂直な平面(図6の接平面TP)をXY平面とする。また、当該作業具座標系では、法線ベクトルに沿う方向がZ軸となる。この作業具座標系で、当該仮想接触点(k-1)における上述のベクトルgT(k-1)は、例えば、下記式(3)を用いて表すことができる。
ただし、dxTは、作業具座標系のx軸における移動量指令値である。dyTは、作業具座標系のy軸における移動量指令値である。式(3)においてZ座標が常にゼロであることから分かるように、求められたベクトルgT(k-1)は、上記の接平面TPに含まれる。従って、このベクトルgT(k-1)を、接線ベクトルと呼ぶことができる。
制御部10は、ロボット100を制御することで、上記のように求められた接線ベクトルに従って、ペン15aを現在の現実の位置から新しい位置へ移動させる。また、制御部10は、ペン15aを移動させながら、又は移動後において、ペン15aの姿勢を、今回の仮想接触点(上記の例においては、仮想接触点(k))における法線ベクトルと一致させる(ステップS205)。
その後、制御部10は、力センサ14の検出値に基づいて、ペン15aの先端の高さ(即ち、ペン15aの先端と風船Wとの接触具合)を調節する必要があるか否かを判定する(ステップS206)。
例えば、制御部10は、力センサ14の検出値が所定閾値(又は所定閾値範囲の最大値)より上回る場合、ペン15aの高さを調整する必要があると判定し、ペン15aの姿勢を保ったまま、ペン15aの先端を上方(即ち、風船Wから離れる方向)に退避させる。
また、力センサ14の検出値が所定閾値(又は所定閾値範囲の最小値)以下である場合、制御部10は、ペン15aの高さを調整する必要があると判定し、ペン15aの姿勢を保ったまま、ペン15aの先端を下側(即ち風船Wから近づく方向)に進出させる。
図5の例においては、直前回の仮想接触点(k-1)から今回の仮想接触点(k)へのベクトルに従って移動したペン15aは、現実の風船Wに対してめり込む形となる。従って、ペン15aは、適切な接触具合で風船Wと接触するように上方に移動する。逆に、移動後のペン15aが現実の風船Wから離れることも考えられる。この場合、ペン15aは、適切な接触具合で風船Wと接触するように下方に移動する。
下方は、球体3から内側へ進出する方向に相当し、上方は、球体3から外側へ退避する方向に相当する。なお、実際は、ペン15aが十分に小さな距離だけ移動する毎に高さが調整されるため、ペン15aが風船Wを割ったり、ペン15aが風船Wから離れて描画が途切れたりすることはない。
また、ステップS206の判断で、ペン15aの先端の高さを調節する必要がない(即ち、力センサ14の検出値が所定閾値(又は所定閾値範囲内)である)と判定した場合、処理はステップS202に戻り、制御部10は次の仮想接触点に対する処理を行う。
上述のステップS205、ステップS206及びステップS207は、作業具姿勢制御工程に相当する。
このように、本発明のロボット曲面倣い制御方法を用いて、対象ワークの表面形状を事前に測定しなくても、ロボット100のエンドエフェクタ13に取り付けられた作業具15を、対象ワークの曲面に倣いながら、作業を行わせることができる。
以上に説明したように、本実施形態のロボット曲面倣い制御方法は、ペン15aが取り付けられるエンドエフェクタ13と、エンドエフェクタ13に連結する多関節アーム12と、エンドエフェクタ13及び多関節アーム12の動作を制御する制御部10と、を備えるロボット100を制御するために用いられる。このロボット曲面倣い制御方法は、法線方向特定工程と、作業具姿勢制御工程と、を含む処理を行う。法線方向特定工程では、曲面を有する風船Wの形状を近似する数式に基づいて、エンドエフェクタ13に取り付けられたペン15aが、数式によって表した形状である球体3に接触する仮想接触点における当該球体3の法線方向を求める。作業具姿勢制御工程では、風船Wの表面で仮想接触点に対応する位置である実接触点において、エンドエフェクタ13に取り付けられたペン15aを、法線方向特定工程で特定された法線方向に沿う姿勢で風船Wに接触させる。
これにより、事前準備処理を簡単にしながら、風船W等の対象ワークの曲面に対して、ロボット100を好適に倣わせながら作業を行うことができる。また、柔軟物である風船W等に対しても、その表面に良好に倣うことができる。
また、本実施形態のロボット曲面倣い制御方法の対象のロボット100には、力センサ14が設けられている。ロボット曲面倣い制御方法では、数式で表した球体3の表面に沿ってペン15aを進行させる経路が、法線方向に垂直な接平面TPでの向きの移動を示すペン進行方向ベクトルの群として表現されている。作業具姿勢制御工程では、法線方向に沿う姿勢のペン15aを、それぞれのペン進行方向ベクトルに沿って移動させるとともに、力センサ14の検出値に応じて、球体3から内側へ進出する方向又は球体3から外側へ退避する方向にペン15aの位置を補正する。
これにより、風船W等の対象ワークに対する接触力を一定値に維持することができる。
また、本実施形態のロボット曲面倣い制御方法において、作業具姿勢制御工程では、力センサ14の検出値が所定閾値を上回る場合、ペン15aの姿勢を保ちながら、ペン15aを位置補正方向の一側(高さ方向上側)へ移動させる。力センサ14の検出値が所定閾値以下である場合、ペン15aの姿勢を保ちながら、ペン15aを位置補正方向の他側(高さ方向下側)へ移動させる。位置補正方向が、球体3の法線方向にかかわらず一定である。
これにより、簡単な制御で、風船W等の対象ワークに対する接触力を一定値に維持することができる。
以上に本発明の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。
制御部10は、作業軌跡を作成する等、事前処理装置2で行う処理の一部乃至全部を実行しても良い。制御部10は、事前処理装置2で行う全ての処理を行う場合、事前処理装置2が省略されても良い。
3次元作業軌跡6を構成する各仮想接触点における法線ベクトル及び/又は接線ベクトルは、事前準備において、事前処理装置2により算出しても良い。
イラストレーションは、風船Wの上面ではなく、側面等に描画することもできる。この場合、力センサ14の検出値に応じてペン15aを動かす方向(位置補正方向)は、上下方向とは異なる。上述の例では位置補正方向は法線方向にかかわらず一定であるが、力センサ14の検出値に応じて、ペン15aを、上述の法線ベクトルの方向に動かしても良い。
本発明のロボット曲面倣い制御方法は、曲面ワークに対する罫書き作業、磨き作業、塗布作業、ケーキの表面(特に湾曲している側面)にクリームを塗る作業及び塗ったクリームの整形作業、壁の曲面に対する左官作業等に適用することができる。
10 制御部
12 多関節アーム(アーム部)
13 エンドエフェクタ(ハンド部)
15 作業具
15a ペン(作業具)
W 風船(対象ワーク)
100 ロボット
12 多関節アーム(アーム部)
13 エンドエフェクタ(ハンド部)
15 作業具
15a ペン(作業具)
W 風船(対象ワーク)
100 ロボット
Claims (3)
- 作業具が取り付けられるハンド部と、前記ハンド部に連結するアーム部と、前記ハンド部及び前記アーム部の動作を制御する制御部と、を備えるロボットを制御するためのロボット曲面倣い制御方法であって、
曲面を有する対象ワークの形状を近似する数式に基づいて、前記ハンド部に取り付けられた前記作業具が、前記数式によって表した形状である仮想形状に接触する仮想位置における当該仮想形状の法線方向を求める法線方向特定工程と、
前記対象ワークの表面で前記仮想位置に対応する位置である対応位置において、前記ハンド部に取り付けられた前記作業具を、前記法線方向特定工程で特定された前記法線方向に沿う姿勢で前記対象ワークに接触させる作業具姿勢制御工程と、
を含む処理を行うことを特徴とするロボット曲面倣い制御方法。 - 請求項1に記載のロボット曲面倣い制御方法であって、
前記ロボット又は前記作業具には、力センサが設けられており、
前記数式で表した前記仮想形状の表面に沿って前記作業具を進行させる経路が、前記法線方向に垂直な平面での向きの移動を示す作業具進行方向ベクトルの群として表現されており、
前記作業具姿勢制御工程では、前記法線方向に沿う姿勢の前記作業具を、それぞれの作業具進行方向ベクトルに沿って移動させるとともに、前記力センサの検出値に応じて、前記仮想形状から内側へ進出する方向又は前記仮想形状から外側へ退避する方向に前記作業具の位置を補正することを特徴とするロボット曲面倣い制御方法。 - 請求項2に記載のロボット曲面倣い制御方法であって、
前記作業具姿勢制御工程では、
前記力センサの検出値が所定閾値を上回る場合、前記作業具の姿勢を保ちながら、前記作業具を位置補正方向の一側へ移動させ、
前記力センサの検出値が所定閾値以下である場合、前記作業具の姿勢を保ちながら、前記作業具を前記位置補正方向の他側へ移動させ、
前記位置補正方向が、前記仮想形状の法線方向にかかわらず一定であることを特徴とするロボット曲面倣い制御方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019226602A JP7309592B2 (ja) | 2019-12-16 | 2019-12-16 | ロボット曲面倣い制御方法 |
PCT/JP2020/046780 WO2021125175A1 (ja) | 2019-12-16 | 2020-12-15 | ロボット曲面倣い制御方法 |
CN202080087036.1A CN115210048A (zh) | 2019-12-16 | 2020-12-15 | 机器人曲面仿形控制方法 |
US17/785,402 US20230028732A1 (en) | 2019-12-16 | 2020-12-15 | Curved surface following control method for robot |
EP20903929.6A EP4079468A4 (en) | 2019-12-16 | 2020-12-15 | METHOD FOR CONTROLLING TRACKING OF A CURVED SURFACE BY A ROBOT |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019226602A JP7309592B2 (ja) | 2019-12-16 | 2019-12-16 | ロボット曲面倣い制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021094633A JP2021094633A (ja) | 2021-06-24 |
JP7309592B2 true JP7309592B2 (ja) | 2023-07-18 |
Family
ID=76430081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019226602A Active JP7309592B2 (ja) | 2019-12-16 | 2019-12-16 | ロボット曲面倣い制御方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230028732A1 (ja) |
EP (1) | EP4079468A4 (ja) |
JP (1) | JP7309592B2 (ja) |
CN (1) | CN115210048A (ja) |
WO (1) | WO2021125175A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006331255A (ja) | 2005-05-30 | 2006-12-07 | Daihen Corp | 産業用ロボットの制御方法 |
CN103085072A (zh) | 2013-03-11 | 2013-05-08 | 南京埃斯顿机器人工程有限公司 | 基于三维建模软件实现工业机器人离线编程的方法 |
WO2018173165A1 (ja) | 2017-03-22 | 2018-09-27 | 三菱電機株式会社 | 教示プログラム、教示方法およびロボットシステム |
JP7210230B2 (ja) | 2018-11-07 | 2023-01-23 | 花王株式会社 | 茶飲料 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3380028B2 (ja) | 1994-01-25 | 2003-02-24 | 新日本製鐵株式会社 | 力制御ロボットによるパイプ表面の倣い制御方法 |
JPH0866879A (ja) * | 1994-08-24 | 1996-03-12 | Meidensha Corp | ロボットの制御方法 |
-
2019
- 2019-12-16 JP JP2019226602A patent/JP7309592B2/ja active Active
-
2020
- 2020-12-15 WO PCT/JP2020/046780 patent/WO2021125175A1/ja unknown
- 2020-12-15 CN CN202080087036.1A patent/CN115210048A/zh active Pending
- 2020-12-15 EP EP20903929.6A patent/EP4079468A4/en active Pending
- 2020-12-15 US US17/785,402 patent/US20230028732A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006331255A (ja) | 2005-05-30 | 2006-12-07 | Daihen Corp | 産業用ロボットの制御方法 |
CN103085072A (zh) | 2013-03-11 | 2013-05-08 | 南京埃斯顿机器人工程有限公司 | 基于三维建模软件实现工业机器人离线编程的方法 |
WO2018173165A1 (ja) | 2017-03-22 | 2018-09-27 | 三菱電機株式会社 | 教示プログラム、教示方法およびロボットシステム |
JP7210230B2 (ja) | 2018-11-07 | 2023-01-23 | 花王株式会社 | 茶飲料 |
Also Published As
Publication number | Publication date |
---|---|
CN115210048A (zh) | 2022-10-18 |
EP4079468A4 (en) | 2024-01-03 |
WO2021125175A1 (ja) | 2021-06-24 |
EP4079468A1 (en) | 2022-10-26 |
US20230028732A1 (en) | 2023-01-26 |
JP2021094633A (ja) | 2021-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10551821B2 (en) | Robot, robot control apparatus and robot system | |
CN109397282B (zh) | 机械手臂加工方法、系统及计算机可读取纪录媒体 | |
US9517563B2 (en) | Robot system using visual feedback | |
JP5448326B2 (ja) | 把持装置および把持装置制御方法 | |
JP4271232B2 (ja) | ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体 | |
US9884425B2 (en) | Robot, robot control device, and robotic system | |
EP2783814A2 (en) | Robot system and calibration method | |
JP2016099257A (ja) | 情報処理装置及び情報処理方法 | |
JP2011115877A (ja) | 双腕ロボット | |
JP6885856B2 (ja) | ロボットシステムおよびキャリブレーション方法 | |
TWI493153B (zh) | 非接觸式物件空間資訊量測裝置與方法及取像路徑的計算方法 | |
JP2004243215A (ja) | シーラー塗布装置のロボットティーチング方法及びシーラー塗布装置 | |
WO2023037634A1 (ja) | 指令値生成装置、方法、及びプログラム | |
JP7307263B2 (ja) | バリ取り装置、及び制御システム | |
JP2019077026A (ja) | 制御装置、ロボットシステム、制御装置の動作方法及びプログラム | |
JP7309592B2 (ja) | ロボット曲面倣い制御方法 | |
WO2023013740A1 (ja) | ロボット制御装置、ロボット制御システム、及びロボット制御方法 | |
US11759955B2 (en) | Calibration method | |
CN110977950B (zh) | 一种机器人抓取定位方法 | |
WO2020255229A1 (ja) | 計測装置、計測方法、及び計測プログラム | |
CN114981045A (zh) | 机器人的控制装置、机器人系统、控制方法及计算机程序 | |
JP6908908B2 (ja) | ロボットアームの経路生成装置および経路生成プログラム | |
WO2021210514A1 (ja) | ロボットの制御装置及び制御方法、ロボットシステム、ロボットの動作プログラムを生成する装置及び方法 | |
WO2023013699A1 (ja) | ロボット制御装置、ロボット制御システム、及びロボット制御方法 | |
WO2023013739A1 (ja) | ロボット制御装置、ロボット制御システム、及びロボット制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221121 |
|
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: 20230704 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230705 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7309592 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |