JP2021133470A - ロボットの制御方法およびロボットシステム - Google Patents

ロボットの制御方法およびロボットシステム Download PDF

Info

Publication number
JP2021133470A
JP2021133470A JP2020033136A JP2020033136A JP2021133470A JP 2021133470 A JP2021133470 A JP 2021133470A JP 2020033136 A JP2020033136 A JP 2020033136A JP 2020033136 A JP2020033136 A JP 2020033136A JP 2021133470 A JP2021133470 A JP 2021133470A
Authority
JP
Japan
Prior art keywords
robot
work
robot arm
target position
shape data
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.)
Withdrawn
Application number
JP2020033136A
Other languages
English (en)
Inventor
正幸 奥山
Masayuki Okuyama
正幸 奥山
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2020033136A priority Critical patent/JP2021133470A/ja
Priority to CN202110212355.7A priority patent/CN113319848B/zh
Priority to US17/186,038 priority patent/US11691290B2/en
Publication of JP2021133470A publication Critical patent/JP2021133470A/ja
Withdrawn legal-status Critical Current

Links

Images

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/1694Programme 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
    • B25J9/1697Vision controlled systems
    • 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
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/006Controls for manipulators by means of a wireless system for controlling one or several manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • B25J13/089Determining the position of the robot with reference to its environment
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0081Programme-controlled manipulators with master teach-in means
    • 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
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • 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

Abstract

【課題】迅速に目標位置を設定し、かつ、正確な作業を行うことができるロボットの制御方法およびロボットシステムを提供すること。【解決手段】作業対象物に対して所定の作業を行うロボットアームを有するロボットを制御するロボットの制御方法であって、前記作業対象物を異なる方向から投影した複数の投影形状から予測した簡易形状データに対して、前記所定の作業を行う際の前記ロボットアームの制御点を移動させる目標位置を複数設定する目標位置設定ステップと、前記目標位置設定ステップで設定した複数の前記目標位置と、前記ロボットアームに加わる力と、に基づいた力制御により前記ロボットアームを駆動し、前記所定の作業を行う駆動ステップと、を有することを特徴とするロボットの制御方法。【選択図】図13

Description

本発明は、ロボットの制御方法およびロボットシステムに関する。
先端にエンドエフェクターが装着されるロボットアームを有し、ロボットアームを駆動することによって、ワークに対して所定の作業を行うロボットが知られている。このようなロボットにおいては、例えば、特許文献1に記載されているように、ワークの表面に、エンドエフェクターの先端が通過する目標位置であるツール通過点を設定する。そして、エンドエフェクターの先端がツール通過点を通過するように、ロボットアームを駆動する。
また、特許文献1には、ワークの3次元データにおいて、ワークの表面にメッシュ状の格子点を設定し、各格子点をツール通過点に設定する方法が開示されている。また、各ツール通過点に対し、移動の順番を設定することにより、ロボットアームの移動経路が生成される。
特開平7−100755号公報
しかしながら、特許文献1に開示されているようなツール通過点の設定方法では、ワークの表面にツール通過点を正確に設定するためには、3次元データ上のワークの表面に設定するメッシュ状の格子点を細かく設定する必要がある。この場合、ツール通過点の数が増大してしまい、ロボットアームの移動経路の生成の処理に時間がかかる場合がある。一方、3次元データ上のワークの表面に設定するメッシュ状の格子点を粗く設定すると、実際のワークの表面から離間した位置にツール通過点が設定されることがあり、前記所定の作業を正確に行うことができなくなる。
本発明のロボットの制御方法は、作業対象物に対して所定の作業を行うロボットアームを有するロボットを制御するロボットの制御方法であって、
前記作業対象物を異なる方向から投影した複数の投影形状から予測した簡易形状データに対して、前記所定の作業を行う際の前記ロボットアームの制御点を移動させる目標位置を複数設定する目標位置設定ステップと、
前記目標位置設定ステップで設定した複数の前記目標位置と、前記ロボットアームに加わる力と、に基づいた力制御により前記ロボットアームを駆動し、前記所定の作業を行う駆動ステップと、を有することを特徴とする。
本発明のロボットの制御方法は、作業対象物に対して所定の作業を行うロボットアームを有するロボットを制御するロボットの制御方法であって、
前記作業対象物を異なる方向から投影した複数の投影形状から予測した簡易形状データに対して、前記所定の作業を行う際の前記ロボットアームの制御点を移動させる目標位置を複数設定する目標位置設定ステップと、
前記目標位置設定ステップで設定した複数の前記目標位置と、前記作業対象物と前記ロボットアームの制御点との離間距離と、に基づいて位置制御により前記ロボットアームを駆動し、前記離間距離が所定値となるよう前記所定の作業を行う駆動ステップと、を有することを特徴とする。
本発明のロボットシステムは、作業対象物に対して所定の作業を行うロボットアームと、
前記ロボットアームに加わる力を検出する力検出部と、
前記作業対象物を異なる方向から投影した複数の投影形状から予測した簡易形状データに対して、前記所定の作業を行う際の前記ロボットアームの制御点を移動させる目標位置を複数設定する目標位置設定部と、
前記目標位置設定部が設定した複数の前記目標位置と、前記ロボットアームに加わる力と、に基づいた力制御により前記ロボットアームを駆動し、前記所定の作業を行う駆動制御部と、を備えることを特徴とする。
本発明のロボットシステムは、作業対象物に対して所定の作業を行うロボットアームと、
前記ロボットアームと前記作業対象物との距離を検出する距離検出部と、
前記作業対象物を異なる方向から投影した複数の投影形状から予測した簡易形状データに対して、前記所定の作業を行う際の前記ロボットアームの制御点を移動させる目標位置を複数設定する目標位置設定部と、
前記目標位置設定部が設定した複数の前記目標位置と、前記距離検出部の検出結果とに基づいて、前記作業対象物と前記ロボットアームとの離間距離が所定値となるよう位置制御により前記ロボットアームを駆動して前記所定の作業を行う駆動制御部と、を備えることを特徴とする。
図1は、第1実施形態のロボットシステムの全体構成を示す図である。 図2は、図1に示すロボットシステムのブロック図である。 図3は、図1に示す第1撮像部が撮像した第1撮像画像を示す図である。 図4は、図1に示す第2撮像部が撮像した第2撮像画像を示す図である。 図5は、図1に示す第3撮像部が撮像した第3撮像画像を示す図である。 図6は、第1投影形状のデータである第1投影形状データを示す図である。 図7は、第2投影形状のデータである第2投影形状データを示す図である。 図8は、第3投影形状のデータである第3投影形状データを示す図である。 図9は、第1投影形状データから予測される第1予測形状データを示す図である。 図10は、第2投影形状データから予測される第2予測形状データを示す図である。 図11は、第3投影形状データから予測される第3予測形状データを示す図である。 図12は、ワークの予測立体形状である簡易形状データを示す図である。 図13は、図12に示す予測立体形状に目標位置を設定した状態を示す図である。 図14は、図13に示す予測立体形状に設定した目標位置を実際の作業対象物に適用した状態を示す図である。 図15は、図13に示す予測立体形状に設定した目標位置に、ロボットアームが移動する順番を設定した状態を示す図である。 図16は、図13に示す予測立体形状に設定した目標位置に、ロボットアームが移動する順番を設定した状態を示す図である。 図17は、ロボットアームがワークに対して所定の作業を行っている状態を示す断面図である。 図18は、図2に示す制御装置が行う制御動作を説明するためのフローチャートである。 図19は、第2実施形態のロボットシステムが備えるロボットアームがワークに対して所定の作業を行っている状態を示す断面図である。 図20は、図19に示すロボットシステムが備える制御装置が行う制御動作を説明するためのフローチャートである。 図21は、ロボットシステムについてハードウェアを中心として説明するためのブロック図である。 図22は、ロボットシステムのハードウェアを中心とした変形例1を示すブロック図である。 図23は、ロボットシステムのハードウェアを中心とした変形例2を示すブロック図である。
<第1実施形態>
図1は、第1実施形態のロボットシステムの全体構成を示す図である。図2は、図1に示すロボットシステムのブロック図である。図3は、図1に示す第1撮像部が撮像した第1撮像画像を示す図である。図4は、図1に示す第2撮像部が撮像した第2撮像画像を示す図である。図5は、図1に示す第3撮像部が撮像した第3撮像画像を示す図である。図6は、第1投影形状のデータである第1投影形状データを示す図である。図7は、第2投影形状のデータである第2投影形状データを示す図である。図8は、第3投影形状のデータである第3投影形状データを示す図である。図9は、第1投影形状データから予測される第1予測形状データを示す図である。図10は、第2投影形状データから予測される第2予測形状データを示す図である。図11は、第3投影形状データから予測される第3予測形状データを示す図である。図12は、ワークの予測立体形状である簡易形状データを示す図である。図13は、図12に示す予測立体形状に目標位置を設定した状態を示す図である。図14は、図13に示す予測立体形状に設定した目標位置を実際の作業対象物に適用した状態を示す図である。図15は、図13に示す予測立体形状に設定した目標位置に、ロボットアームが移動する順番を設定した状態を示す図である。図16は、図13に示す予測立体形状に設定した目標位置に、ロボットアームが移動する順番を設定した状態を示す図である。図17は、ロボットアームがワークに対して所定の作業を行っている状態を示す断面図である。図18は、図2に示す制御装置が行う制御動作を説明するためのフローチャートである。
以下、本発明のロボットの制御方法およびロボットシステムを添付図面に示す好適な実施形態に基づいて詳細に説明する。なお、以下では、説明の便宜上、図1中の+Z軸方向、すなわち、上側を「上」、−Z軸方向、すなわち、下側を「下」とも言う。また、ロボットアームについては、図1中の基台11側を「基端」、その反対側、すなわち、エンドエフェクター20側を「先端」とも言う。また、図1中のZ軸方向、すなわち、上下方向を「鉛直方向」とし、X軸方向およびY軸方向、すなわち、左右方向を「水平方向」とする。
図1に示すように、ロボットシステム100は、ロボット1と、ロボット1を制御する制御装置3と、教示装置4と、第1撮像部5Aと、第2撮像部5Bと、第3撮像部5Cと、を備え、本発明のロボットの制御方法を実行する。
まず、ロボット1について説明する。
図1に示すロボット1は、本実施形態では単腕の6軸垂直多関節ロボットであり、基台11と、ロボットアーム10と、を有する。また、ロボットアーム10の先端部にエンドエフェクター20を装着することができる。エンドエフェクター20は、ロボット1の構成要件であってもよく、ロボット1の構成要件でなくてもよい。
なお、ロボット1は、図示の構成に限定されず、例えば、双腕型の多関節ロボットであってもよい。また、ロボット1は、水平多関節ロボットであってもよい。
基台11は、ロボットアーム10を下側から駆動可能に支持する支持体であり、例えば工場内の床に固定されている。ロボット1は、基台11が中継ケーブル18を介して制御装置3と電気的に接続されている。なお、ロボット1と制御装置3との接続は、図1に示す構成のように有線による接続に限定されず、例えば、無線による接続であってもよく、さらには、インターネットのようなネットワークを介して接続されていてもよい。
本実施形態では、ロボットアーム10は、第1アーム12と、第2アーム13と、第3アーム14と、第4アーム15と、第5アーム16と、第6アーム17とを有し、これらのアームが基台11側からこの順に連結されている。なお、ロボットアーム10が有するアームの数は、6つに限定されず、例えば、1つ、2つ、3つ、4つ、5つまたは7つ以上であってもよい。また、各アームの全長等の大きさは、それぞれ、特に限定されず、適宜設定可能である。
基台11と第1アーム12とは、関節171を介して連結されている。そして、第1アーム12は、基台11に対し、鉛直方向と平行な第1回動軸を回動中心とし、その第1回動軸回りに回動可能となっている。第1回動軸は、基台11が固定される床の法線と一致している。
第1アーム12と第2アーム13とは、関節172を介して連結されている。そして、第2アーム13は、第1アーム12に対し、水平方向と平行な第2回動軸を回動中心として回動可能となっている。第2回動軸は、第1回動軸に直交する軸と平行である。
第2アーム13と第3アーム14とは、関節173を介して連結されている。そして、第3アーム14は、第2アーム13に対して水平方向と平行な第3回動軸を回動中心として回動可能となっている。第3回動軸は、第2回動軸と平行である。
第3アーム14と第4アーム15とは、関節174を介して連結されている。そして、第4アーム15は、第3アーム14に対し、第3アーム14の中心軸方向と平行な第4回動軸を回動中心として回動可能となっている。第4回動軸は、第3回動軸と直交している。
第4アーム15と第5アーム16とは、関節175を介して連結されている。そして、第5アーム16は、第4アーム15に対して第5回動軸を回動中心として回動可能となっている。第5回動軸は、第4回動軸と直交している。
第5アーム16と第6アーム17とは、関節176を介して連結されている。そして、第6アーム17は、第5アーム16に対して第6回動軸を回動中心として回動可能となっている。第6回動軸は、第5回動軸と直交している。
また、第6アーム17は、ロボットアーム10の中で最も先端側に位置するロボット先端部となっている。この第6アーム17は、ロボットアーム10の駆動により、エンドエフェクター20ごと回動することができる。
ロボット1は、駆動部としてのモーターM1、モーターM2、モーターM3、モーターM4、モーターM5およびモーターM6と、エンコーダーE1、エンコーダーE2、エンコーダーE3、エンコーダーE4、エンコーダーE5およびエンコーダーE6とを備える。モーターM1は、関節171に内蔵され、基台11と第1アーム12とを相対的に回転させる。モーターM2は、関節172に内蔵され、第1アーム12と第2アーム13とを相対的に回転させる。モーターM3は、関節173に内蔵され、第2アーム13と第3アーム14とを相対的に回転させる。モーターM4は、関節174に内蔵され、第3アーム14と第4アーム15とを相対的に回転させる。モーターM5は、関節175に内蔵され、第4アーム15と第5アーム16とを相対的に回転させる。モーターM6は、関節176に内蔵され、第5アーム16と第6アーム17とを相対的に回転させる。
また、エンコーダーE1は、関節171に内蔵され、モーターM1の位置を検出する。エンコーダーE2は、関節172に内蔵され、モーターM2の位置を検出する。エンコーダーE3は、関節173に内蔵され、モーターM3の位置を検出する。エンコーダーE4は、関節174に内蔵され、モーターM4の位置を検出する。エンコーダーE5は、関節175に内蔵され、モーターM5の位置を検出する。エンコーダーE6は、関節176に内蔵され、モーターM6の位置を検出する。
エンコーダーE1〜E6は、制御装置3と電気的に接続されており、モーターM1〜モーターM6の位置情報、すなわち、回転量が制御装置3に電気信号として送信される。そして、この情報に基づいて、制御装置3は、モーターM1〜モーターM6を、図示しないモータードライバーを介して駆動させる。すなわち、ロボットアーム10を制御するということは、モーターM1〜モーターM6を制御することである。
また、ロボットアーム10の先端には、制御点CPが設定されている。制御点CPは、ロボットアーム10の制御を行う際の基準となる点のことである。ロボットシステム100では、ロボット座標系で制御点CPの位置を把握し、制御点CPが所望の位置に移動するようにロボットアーム10を駆動する。
また、ロボット1では、ロボットアーム10に、力を検出する力検出部19が着脱自在に設置される。そして、ロボットアーム10は、力検出部19が設置された状態で駆動することができる。力検出部19は、本実施形態では、6軸力覚センサーである。力検出部19は、互いに直交する3個の検出軸上の力の大きさと、当該3個の検出軸まわりのトルクの大きさとを検出する。すなわち、互いに直交するX軸、Y軸、Z軸の各軸方向の力成分と、X軸回りとなるW方向の力成分と、Y軸回りとなるV方向の力成分と、Z軸回りとなるU方向の力成分とを検出する。なお、本実施形態では、Z軸方向が鉛直方向となっている。また、各軸方向の力成分を「並進力成分」と言い、各軸回りの力成分を「トルク成分」と言うこともできる。また、力検出部19は、6軸力覚センサーに限定されず、他の構成のものであってもよい。
本実施形態では、力検出部19は、第6アーム17に設置されている。なお、力検出部19の設置箇所としては、第6アーム17、すなわち、最も先端側に位置するアームに限定されず、例えば、他のアームや、隣り合うアーム同士の間であってもよい。
力検出部19には、エンドエフェクター20を着脱可能に装着することができる。エンドエフェクター20は、本実施形態では、作業対象物であるワークW1の研磨を行う研磨機である。この研磨機は、外周部に砥粒を有する研磨部材21と、研磨部材21を回転させる図示しないモーターと、モーターを駆動する図示しない電源と、を有する。また、ロボット座標系において、研磨部材21の先端面の任意の位置、好ましくは中心にツールセンターポイントTCPが設定されている。なお、これに限定されず、ツールセンターポイントTCPは、研磨部材21の外周部に設定されていてもよい。
前述したように、ロボットシステム100では、ロボット座標系で制御点CPの位置を把握し、制御点CPが所望の位置に移動するようにロボットアーム10を駆動する。また、エンドエフェクター20の種類、特に、長さを把握しておくことにより、ツールセンターポイントTCPと制御点CPとのオフセット量を把握することができる。このため、ツールセンターポイントTCPの位置をロボット座標系で把握することができる。したがって、ツールセンターポイントTCPを制御の基準とすることができる。
また、本実施形態では、エンドエフェクター20は、研磨機で構成されているが、本発明ではこれに限定されず、例えば、研削機、切削機等や、ドライバー、レンチ等の工具であってもよく、吸引、挟持によりワークW1を把持するハンドであってもよい。また、エンドエフェクターは、第2実施形態のように、処理液を噴出するスプレーであってもよく、処理液を塗布する刷毛等であってもよい。
また、本実施形態では、図1に示すように、ワークW1は、横断面形状が円形の長尺体で構成され、その長手方向の途中が2か所湾曲した部材として説明する。
次に、第1撮像部5A〜第3撮像部5Cについて説明する。第1撮像部5A〜第3撮像部5Cは、設置位置、向きが異なること以外は、同様の構成である。第1撮像部5A〜第3撮像部5Cは、例えば、複数の画素を有するCCD(Charge Coupled Device)イメージセンサーで構成された撮像素子と、レンズ等を含む光学系と、を有する構成とすることができる。図2に示すように、第1撮像部5A〜第3撮像部5Cは、制御装置3の目標位置設定部3Aと電気的に接続されている。また、第1撮像部5A〜第3撮像部5Cは、撮像素子が受光した光を電気信号に変換し、その電気信号を目標位置設定部3Aへと出力する。そして、目標位置設定部3Aは、この電気信号を画像データに変換して記憶部3Cに一時的に記憶する。なお、以下では、第1撮像部5Aからの電気信号に基づいた画像データを第1撮像画像D1と言い、第2撮像部5Bからの電気信号に基づいた画像データを第2撮像画像D2と言い、第3撮像部5Cからの電気信号に基づいた画像データを第3撮像画像D3と言う。
図1に示すように、第1撮像部5Aは、ワークW1を+X軸側から撮像し、第2撮像部5Bは、ワークW1を+Y軸側から撮像し、第3撮像部5Cは、ワークW1を+Z軸側から撮像する。また、第1撮像部5A〜第3撮像部5Cは、ロボット1がワークW1に対して所定の作用を行うのに先立って撮像を行う。そして、得られた第1撮像画像D1〜第3撮像画像D3に基づいて、目標位置設定部3Aがロボットアーム10の動作経路を設定する。このことに関しては、後に詳述する。
なお、本実施形態では、第1撮像部5A〜第3撮像部5Cの3つの撮像部を有する構成であったが、本発明ではこれに限定されず、第1撮像部5A〜第3撮像部5Cのうちの1〜3つが省略されていてもよい。撮像部が1つまたは2つである場合、撮像部を移動させつつ複数の方向から撮像を行う構成であるのが好ましい。また、撮像部が省略されている場合、例えば、ワークW1の3次元データ、例えば、CADデータ等を制御装置3または教示装置4に入力することにより、ロボットアーム10の動作経路を設定することができる。
次に、制御装置3および教示装置4について説明する。
制御装置3は、ロボット1から離間して配置されており、プロセッサーの1例であるCPU(Central Processing Unit)が内蔵されたコンピューター等で構成することができる。この制御装置3は、ロボット1の基台11に内蔵されていてもよい。
制御装置3は、中継ケーブル18によりロボット1と通信可能に接続される。また、制御装置3は、教示装置4とケーブルで、または無線通信可能に接続される。教示装置4は、専用のコンピューターであってもよいし、ロボット1を教示するためのプログラムがインストールされた汎用のコンピューターであってもよい。例えばロボット1を教示するための専用装置であるティーチングペンダント等を教示装置4の代わりに用いても良い。さらに、制御装置3と教示装置4とは、別々の筐体を備えていてもよいし、一体に構成されていてもよい。
また、教示装置4には、制御装置3に後述する目標位置Sと目標力fStとを引数とする実行プログラムを生成して制御装置3にロードするためのプログラムがインストールされていてもよい。教示装置4は、ディスプレイ41、プロセッサー、RAMやROMを備え、これらのハードウェア資源が教示プログラムと協働して実行プログラムを生成する。
図2に示すように、制御装置3は、ロボット1の制御を行うための制御プログラムがインストールされたコンピューターである。制御装置3は、プロセッサーや図示しないRAMやROMを備え、これらのハードウェア資源がプログラムと協働することによりロボット1を制御する。
また、図2に示すように、制御装置3は、目標位置設定部3Aと、駆動制御部3Bと、記憶部3Cと、を有する。記憶部3Cは、例えば、RAM(Random Access Memory)等の揮発性メモリー、ROM(Read Only Memory)等の不揮発性メモリー、着脱式の外部記憶装置等で構成される。記憶部3Cには、本発明のロボットの制御方法を実行するためのプログラム等、ロボット1を作動させるための動作プログラムが記憶されている。
目標位置設定部3Aは、ワークW1に対して所定の作業を実行するための目標位置Sおよび動作経路を設定する。以下、具体的に説明する。
目標位置設定部3Aは、まず、第1撮像部5Aから図3に示す第1撮像画像D1を取得するとともに、第2撮像部5Bから図4に示す第2撮像画像D2を取得するとともに、第3撮像部5Cから図5に示す第3撮像画像D3を取得する。
次いで、目標位置設定部3Aは、第1撮像画像D1に対し二値化処理を行い、図6に示すように、ワークW1の第1投影形状のデータである第1投影形状データD1’を生成する。同様に、目標位置設定部3Aは、図7に示すように、第2撮像画像D2からワークW1の第2投影形状のデータである第2投影形状データD2’を生成し、図8に示すように、第3撮像画像D3からワークW1の第3投影形状のデータである第3投影形状データD3’を生成する。
次いで、目標位置設定部3Aは、第1投影形状データD1’から、ワークW1の形状を予測して第1予測形状データDAを生成する。具体的には、横断面形状が第1投影形状データD1’における第1投影形状と同じ形状となるような所定長さの長尺な第1立体形状の第1予測形状データDAを生成する。同様に、目標位置設定部3Aは、第2投影形状データD2’から、図10に示すように、第2立体形状の第2予測形状データDBを生成し、第3投影形状データD3’から、図11に示すように、第3立体形状の第3予測形状データDCを生成する。
次いで、目標位置設定部3Aは、第1予測形状データDA〜第3予測形状データDCに基づいて、すなわち、合成して、図12に示すように、ワークW1の予測立体形状W’のデータである簡易形状データDDを生成する。簡易形状データDDにおける予測立体形状W’は、曲面の部分が実際のワークW1よりも少なく、また、稜線200の本数が多く、比較的粗いデータである。このように、目標位置設定部3Aは、第1撮像画像D1〜第3撮像画像D3に基づいて、簡易形状データDDを生成する。ただし、この構成に限定されず、第1撮像部5A〜第3撮像部5Cを省略し、ワークW1の、CADデータ等の立体形状データから簡易形状データDDを生成してもよい。
また、上記では、目標位置設定部3Aが簡易形状データDDを生成する場合について説明したが、本発明ではこれに限定されず、例えば、教示装置4やその他の外部機器で生成された簡易形状データDDが制御装置3に入力される構成であってもよい。
そして、図13に示すように、目標位置設定部3Aは、簡易形状データDDにおける予測立体形状W’に複数の目標位置Sを設定する。なお、本明細書中で「目標位置Sを設定する」とは、予測立体形状W’に対する目標位置Sの位置情報を記憶部3Cに記憶することを言う。
本実施形態では、予測立体形状W’の稜線200上に、目標位置Sを所定の間隔で設定する。予測立体形状W’の稜線200は、ワークW1の形状が簡素化された特徴部分である。この稜線200上に複数の目標位置Sを設定することにより、ワークW1の形状が簡素化された部分に目標位置Sを設定することができ、目標位置Sの設定の簡素化を図ることができる。また、稜線200は、各投影形状における輪郭部分に対応している。このような稜線200上に複数の目標位置Sを設定することにより、全体的にムラなく目標位置Sを設定することができる。
なお、予測立体形状W’において、稜線200以外の部分に対して目標位置Sを設定してもよい。また、各稜線200の形状に応じて目標位置Sの設定頻度を変更してもよい。例えば、湾曲形状の稜線200における各目標位置Sの間隔を比較的小さくし、直線形状の稜線200における各目標位置Sの間隔を比較的大きくしてもよい。
次いで、目標位置設定部3Aは、図14に示すように、実際のワークW1に対して上記で設定した目標位置Sを適用する。具体的には、図13に示す各目標位置S同士の位置関係を維持したまま、図3〜図5に示す第1撮像画像D1〜第3撮像画像D3に基づいて、実際のワークW1に目標位置Sを設定する。さらに換言すれば、実際にワークW1が置かれている位置に基づいて、各目標位置Sに対してロボット座標系での座標を設定する。なお、座標を設定するとともに、各目標位置Sに対してロボットアーム10が接近する姿勢も設定する。
次いで、図15および図16に示すように、各目標位置Sに対してロボットアーム10の制御点CPまたはツールセンターポイントTCPが移動する順番を設定する。すなわち、ロボットアーム10の動作経路を設定する。「目標位置Sに対してロボットアーム10の制御点CPまたはツールセンターポイントTCPが移動する」とは、制御点CPまたはツールセンターポイントTCPが目標位置Sと一致するまで移動しなくても、目標位置Sを目標として移動することを言う。
なお、各目標位置Sに対して順番を設定する際、各目標位置Sに対してロボットアーム10が接近する姿勢も設定する。すなわち、各目標位置Sに対して順番を設定する際、目標位置Sごとにどの方向からどのような姿勢で接近するかを紐づけて記憶部3Cに記憶する。
以上のような目標位置設定部3Aによれば、比較的単純な構造である予測立体形状W’に対して複数の目標位置Sを設定することができる。このため、例えば、特開平7−100755号公報に開示されている方法よりも目標位置Sの数を減らすことができる。よって、従来よりも簡単かつ迅速に目標位置Sを設定することができる。
しかしながら、図14〜図16に示すように、設定された目標位置Sは、ワークW1の表面に対して離れた場所に位置しているものもある。この場合、単に、ツールセンターポイントTCPが各目標位置Sを通過するようにロボットアーム10を駆動させつつ作業を行っていると、エンドエフェクター20がワークW1に接触しないことがある。この場合、良好な作業を行うことができない。そこで、ロボットシステム100では、駆動制御部3Bが以下のような制御を行うことにより、この問題を解消することができる。以下、駆動制御部3Bについて説明する。
駆動制御部3Bは、ロボットアーム10の駆動を制御するものであり、位置制御部30と、座標変換部31と、座標変換部32と、補正部33と、力制御部34と、指令統合部35と、を有する。
位置制御部30は、予め作成されたコマンドで指定される目標位置に従って、ロボット1のツールセンターポイントTCPの位置を制御する位置指令信号、すなわち、位置指令値を生成する。
ここで、制御装置3は、ロボット1の動作を力制御等で制御することが可能である。「力制御」とは、力検出部19の検出結果に基づいて、エンドエフェクター20の位置、すなわち、ツールセンターポイントTCPの位置や、第1アーム12〜第6アーム17の姿勢を変更したりするロボット1の動作の制御のことである。
力制御には、例えば、フォーストリガー制御と、インピーダンス制御とが含まれている。フォーストリガー制御では、力検出部19により力検出を行い、その力検出部19により所定の力を検出するまで、ロボットアーム10に移動や姿勢の変更の動作をさせる。
インピーダンス制御は、倣い制御を含む。まず、簡単に説明すると、インピーダンス制御では、ロボットアーム10の先端部に加わる力を可能な限り所定の力に維持、すなわち、力検出部19により検出される所定方向の力を可能な限り目標力fStに維持するようにロボットアーム10の動作を制御する。これにより、例えば、ロボットアーム10に対してインピーダンス制御を行うと、ロボットアーム10は、対象物や、オペレーターから加わった外力に対し、前記所定方向について倣う動作を行う。なお、目標力fStには、0も含まれる。例えば、倣い動作の場合には、目標値を「0」とすることができる。なお、目標力fStを0以外の数値とすることもできる。この目標力fStは、作業者が適宜設定可能である。
記憶部3Cは、モーターM1〜モーターM6の回転角度の組み合わせと、ロボット座標系におけるツールセンターポイントTCPの位置との対応関係を記憶している。また、制御装置3は、ロボット1が行う作業の工程ごとに目標位置Sと目標力fStとの少なくとも一方をコマンドに基づいて記憶部3Cに記憶する。目標位置Sおよび目標力fStを引数、すなわち、パラメーターとするコマンドは、ロボット1が行う作業の工程ごとに設定される。
駆動制御部3Bは、設定された目標位置Sと目標力fStとがツールセンターポイントTCPにて一致されるように、コマンドに基づいて第1アーム12〜第6アーム17を制御する。目標力fStとは、第1アーム12〜第6アーム17の動作に応じて力検出部19が検出すべき力である。ここで、「S」の文字は、ロボット座標系を規定する軸の方向(X,Y,Z,U,V,W)のいずれか1つの方向を表すこととする。また、Sは、S方向の位置も表すこととする。例えば、S=Xの場合、ロボット座標系にて設定された目標位置のX方向成分がS=Xとなり、目標力のX方向成分がfSt=fXtとなる。
また、駆動制御部3Bでは、モーターM1〜モーターM6の回転角度を取得すると、図2に示す座標変換部31が、対応関係に基づいて、当該回転角度をロボット座標系におけるツールセンターポイントTCPの位置S(X,Y,Z,V,W,U)に変換する。そして、座標変換部32が、ツールセンターポイントTCPの位置Sと、力検出部19の検出値とに基づいて、力検出部19に現実に作用している作用力fをロボット座標系において特定する。
作用力fの作用点は、ツールセンターポイントTCPとは別に原点として定義される。原点は、力検出部19が力を検出している点に対応する。なお、制御装置3は、ロボット座標系におけるツールセンターポイントTCPの位置Sごとに、力検出部19のセンサー座標系における検出軸の方向を規定した対応関係を記憶している。従って、制御装置3は、ロボット座標系におけるツールセンターポイントTCPの位置Sと対応関係とに基づいて、ロボット座標系における作用力fを特定できる。また、ロボットに作用するトルクは、作用力fと、接触点から力検出部19までの距離とから算出することができ、トルク成分として特定される。なお、ワークW1に対してエンドエフェクター20が接触して作業を行う場合、接触点は、ツールセンターポイントTCPとみなすことができる。
補正部33は、作用力fに対して重力補償を行う。重力補償とは、作用力fから重力に起因する力やトルクの成分を除去することである。重力補償を行った作用力fは、ロボットアーム10またはエンドエフェクター20に作用している重力以外の力と見なすことができる。
また、補正部33は、作用力fに対して慣性補償を行う。慣性補償とは、作用力fから慣性力に起因する力やトルクの成分を除去することである。慣性補償を行った作用力fは、ロボットアーム10またはエンドエフェクター20に作用している慣性力以外の力と見なすことができる。
力制御部34は、インピーダンス制御を行う。インピーダンス制御は、仮想の機械的インピーダンスをモーターM1〜モーターM6によって実現する能動インピーダンス制御である。制御装置3は、このようなインピーダンス制御を、ワークの嵌合作業、螺合作業、研磨作業等、エンドエフェクター20が対象物であるワークから力を受ける接触状態の工程や、直接教示を行う際に実行する。なお、このような工程以外であっても、例えば、人がロボット1に接触した際にインピーダンス制御を行うことにより、安全性を高めることができる。
インピーダンス制御では、目標力fStを後述する運動方程式に代入してモーターM1〜モーターM6の回転角度を導出する。制御装置3がモーターM1〜モーターM6を制御する信号は、PWM(Pulse Width Modulation)変調された信号である。
また、制御装置3は、エンドエフェクター20が外力を受けない非接触状態の工程では、目標位置Sから線形演算で導出する回転角度でモーターM1〜モーターM6を制御する。目標位置Sから線形演算で導出する回転角度でモーターM1〜モーターM6を制御するモードのことを、位置制御モードと言う。
制御装置3は、目標力fStと作用力fとをインピーダンス制御の運動方程式に代入することにより、力由来補正量ΔSを特定する。力由来補正量ΔSとは、ツールセンターポイントTCPが機械的インピーダンスを受けた場合に、目標力fStとの力偏差Δf(t)を解消するために、ツールセンターポイントTCPが移動すべき位置Sの大きさを意味する。下記の式(1)は、インピーダンス制御の運動方程式である。
Figure 2021133470
式(1)の左辺は、ツールセンターポイントTCPの位置Sの2階微分値に仮想質量係数m(以下、「質量係数m」と言う)を乗算した第1項と、ツールセンターポイントTCPの位置Sの微分値に仮想粘性係数d(以下、「粘性係数d」と言う)を乗算した第2項と、ツールセンターポイントTCPの位置Sに仮想弾性係数k(以下、「弾性係数k」と言う)を乗算した第3項とによって構成される。式(1)の右辺は、目標力fStから現実の力fを減算した力偏差Δf(t)によって構成される。式(1)における微分とは、時間による微分を意味する。ロボット1が行う工程において、目標力fStとして一定値が設定される場合もあるし、目標力fStとして時間の関数が設定される場合もある。
質量係数mは、ツールセンターポイントTCPが仮想的に有する質量を意味し、粘性係数dは、ツールセンターポイントTCPが仮想的に受ける粘性抵抗を意味し、弾性係数kは、ツールセンターポイントTCPが仮想的に受ける弾性力のバネ定数を意味する。
質量係数mの値が大きくなるにつれて、動作の加速度が小さくなり、質量係数mの値が小さくなるにつれて動作の加速度が大きくなる。粘性係数dの値が大きくなるにつれて、動作の速度が遅くなり、粘性係数dの値が小さくなるにつれて動作の速度が速くなる。弾性係数kの値が大きくなるにつれて、バネ性が大きくなり、弾性係数kの値が小さくなるにつれて、バネ性が小さくなる。
本明細書では、質量係数m、粘性係数dおよび弾性係数kの各々を力制御パラメーターと言う。これら質量係数m、粘性係数dおよび弾性係数kは、方向ごとに異なる値に設定されてもよいし、方向に関わらず共通の値に設定されてもよい。また、質量係数m、粘性係数dおよび弾性係数kは、作業者が、作業前に適宜設定可能である。
このように、ロボットシステム100では、力検出部19の検出値、予め設定された力制御パラメーター、および、予め設定された目標力から補正量を求める。この補正量は、前述した力由来補正量ΔSのことであり、外力を受けたその位置からツールセンターポイントTCPを移動すべき位置との差のことである。
そして、指令統合部35は、位置制御部30が生成した位置指令値Pに、力由来補正量ΔSを合算する。これを随時行うことにより、指令統合部35は、外力を受けた位置に移動させるために用いていた位置指令値Pから、新たな位置指令値P’を求める。
そして、この新たな位置指令値P’を座標変換部31がロボット座標に変換し、実行部351が実行することにより、力由来補正量ΔSを加味した位置にツールセンターポイントTCPを移動させて、外力が加わった衝撃を緩和し、ロボット1に接触した対象物に対し、それ以上負荷がかかるのを緩和することができる。
このような駆動制御部3Bによれば、ツールセンターポイントTCPを目標位置Sに向かって移動させつつ、かつ、目標力fStが予め設定された値になるまでツールセンターポイントTCPが移動するようにロボットアーム10を駆動することができる。換言すれば、例えば、図17に示すように、予め設定された方向からツールセンターポイントTCPを目標位置Sに向かって移動させ、図17中二点鎖線で示すように、ツールセンターポイントTCPが目標位置Sと一致したとしても、エンドエフェクター20がワークW1に接触していなければ、これまで移動してきた方向の延長上をツールセンターポイントTCPがさらに移動するようにロボットアーム10を駆動させる。そして、図17中実線で示すように、エンドエフェクター20がワークW1と接触し、目標力fStが予め設定された値になるよう、ロボットアーム10を駆動する。また、このような制御を、目標位置Sごとに実行する。
このような構成により、目標位置設定部3Aで設定された目標位置SがワークW1の表面に対して離れた場所に位置していたとしても、上述したような力制御により、ワークW1に対してエンドエフェクター20を接触させて所定の作業を良好に行うことができる。換言すれば、ロボットシステム100では、目標位置設定部3Aが、目標位置S、ひいては、動作経路を迅速に設定し、駆動制御部3Bが力制御によりロボットアーム10を駆動することで、迅速な経路設定を行う目標位置設定部3Aの粗さを駆動制御部3Bの高精度なロボットアーム10の駆動で補うことができる。その結果、迅速な目標位置Sの設定と、ワークW1に対する作業の正確性とを両立することができる。
このように、ロボットシステム100は、作業対象物であるワークW1に対して所定の作業を行うロボットアーム10と、ロボットアーム10に加わる力を検出する力検出部19と、ワークW1を異なる方向から投影した複数の投影形状から予測した簡易形状データDDに対して、所定の作業を行う際のロボットアーム10の制御点CPを移動させる目標位置Sを複数設定する目標位置設定部3Aと、目標位置設定部3Aが設定した複数の目標位置Sと、ロボットアーム10に加わる力と、に基づいた力制御によりロボットアーム10を駆動し、所定の作業を行う駆動制御部3Bと、を備える。これにより、目標位置設定部3Aが迅速かつ簡単に目標位置Sを設定することができる。また、駆動制御部3Bが力制御によりロボットアーム10を駆動することにより、迅速な目標位置Sの設定を行う目標位置設定部3Aの粗さを駆動制御部3Bが行う力制御によって補うことができる。その結果、迅速な目標位置Sの設定と、ワークW1に対する作業の正確性とを両立することができる。
次に、制御装置3が実行する動作プログラムの一例、すなわち、本発明のロボットの制御方法の一例を、図18に示すフローチャートに基づいて説明する。
ステップS101〜ステップS104が簡易形状データ生成ステップであり、ステップS105およびステップS106が目標位置設定ステップであり、ステップS107が駆動ステップである。
まず、ステップS101において、第1撮像部5A〜第3撮像部5Cを用いてワークW1を撮像する。これにより、図3〜図5に示すように、異なる方向から撮像した第1撮像画像D1〜第3撮像画像D3を得ることができる。
次いで、ステップS102において、少なくとも2つ、本実施形態では、3つの投影形状データを生成する。すなわち、第1撮像画像D1〜第3撮像画像D3に対し二値化処理を行い、図6〜図8に示すように、第1投影形状データD1’〜第3投影形状データD3’を生成する。
次いで、ステップS103において、予測形状データを生成する。すなわち、第1投影形状データD1’〜第3投影形状データD3’から、図9〜図11に示すように、第1予測形状データDA〜第3予測形状データDCを生成する。この生成方法は、前述した通りである。
次いで、ステップS104において、ワークW1の予測立体形状である簡易形状データDDを生成する。すなわち、第1予測形状データDA〜第3予測形状データDCを合成して図12に示すように、ワークW1の予測立体形状W’である簡易形状データDDを生成する。簡易形状データDDにおける予測立体形状W’は、曲面の部分が実際のワークW1よりも少なく、また、稜線200の本数が多く、比較的粗いデータである。
以上のステップS101〜ステップS104が簡易形状データ生成ステップである。このように、ロボットの制御方法は、目標位置設定ステップの前に、簡易形状データを生成する簡易形状データ生成ステップをさらに有する。これにより、簡易形状データがない場合であっても、簡易形状データを生成することができ、目標位置設定ステップに移行することができる。
また、簡易形状データ生成ステップでは、作業対象物であるワークW1を異なる方向から投影した複数の投影形状のうち、最も投影面積が大きい投影形状と、2番目に投影面積が大きい投影形状とから簡易形状データDDを生成するのが好ましい。複数の方向からの投影形状から、投影面積が大きいものを選択し、これらに基づいて簡易形状データDDを生成することにより、簡易形状データDDの形状を、実際のワークW1により近づけることができる。
また、簡易形状データ生成ステップでは、撮像部である第1撮像部5A〜第3撮像部5Cを用いて作業対象物であるワークW1を撮像して撮像画像である第1撮像画像D1〜第3撮像画像D3を取得し、第1撮像画像D1〜第3撮像画像D3に基づいて、投影形状のデータである第1投影形状データD1’〜第3投影形状データD3’を取得する。これにより、例えば、ワークW1の立体形状データがない場合であっても、簡易形状データを生成することができ、目標位置設定ステップに移行することができる。
次いで、ステップS105において、目標位置Sを設定する。すなわち、図13に示すように、予測立体形状W’の稜線200上に、所定の間隔で目標位置Sを複数設定する。このように、目標位置設定ステップでは、簡易形状データDDの稜線200上に所定の間隔で目標位置Sを複数設定する。稜線200は、ワークW1の形状が簡素化された特徴部分である。この稜線200上に複数の目標位置Sを設定することにより、ワークW1の形状が簡素化された部分に目標位置Sを設定することができ、目標位置Sの設定の簡素化を図ることができる。また、稜線200は、各投影形状における輪郭部分に対応している。このような稜線200上に複数の目標位置Sを設定することにより、全体的にムラなく目標位置Sを設定することができる。
次いで、ステップS106において、各目標位置Sに対して移動する順番を設定する。本ステップでは、各目標位置Sに対して1ずつ順番を設定する。また、図15および図16では、その順番に従って各目標位置Sを矢印で結んでいる。順番を設定する方法としては、例えば、ツールセンターポイントTCPと最も近くなる位置から、徐々に離れていくように順番を設定する方法等が挙げられる。なお、各目標位置Sに対して移動する順番を設定するときに、各目標位置Sに対してロボットアーム10が接近する姿勢も設定する。
このような目標位置設定ステップによれば、簡易形状データDDに各目標位置Sを設定することができる。また、各目標位置Sに対して移動する順番を設定することにより、ロボットアーム10の動作経路を設定することができる。
そして、ステップS107において、前述したように、力制御により作業を行う。すなわち、目標位置設定ステップで設定した目標位置Sと、ロボットアーム10に加わる力と、に基づいた力制御によりロボットアーム10を駆動し、所定の作業を行う。
以上説明したように、ロボットの制御方法は、作業対象物であるワークW1に対して所定の作業を行うロボットアーム10を有するロボット1を制御するロボットの制御方法である。また、ワークW1を異なる方向から投影した複数の投影形状から予測した簡易形状データDDに対して、所定の作業を行う際のロボットアームの制御点CPを移動させる目標位置Sを複数設定する目標位置設定ステップと、目標位置設定ステップで設定した複数の目標位置Sと、ロボットアーム10に加わる力と、に基づいた力制御によりロボットアーム10を駆動し、所定の作業を行う駆動ステップと、を有する。これにより、目標位置設定ステップで迅速かつ簡単に目標位置Sを設定することができる。また、駆動ステップで力制御によりロボットアーム10を駆動することにより、迅速な目標位置Sの設定を行う目標位置設定部3Aの粗さを駆動制御部3Bが行う力制御によって補うことができる。その結果、迅速な目標位置Sの設定と、ワークW1に対する作業の正確性とを両立することができる。
<第2実施形態>
図19は、第2実施形態のロボットシステムが備えるロボットアームがワークに対して所定の作業を行っている状態を示す断面図である。図20は、図19に示すロボットシステムが備える制御装置が行う制御動作を説明するためのフローチャートである。
以下、図19および図20を参照して本発明のロボットの制御方法およびロボットシステムの第2実施形態について説明するが、前述した実施形態との相違点を中心に説明し、同様の事項はその説明を省略する。
図19に示すように、本実施形態では、エンドエフェクター20は、ワークW1に対して処理液Lを噴出する噴出部で構成される。また、処理液Lとしては、特に限定されないが、水、消毒液、接着剤、コーティング剤等が挙げられる。
また、本実施形態では、ロボット1は、ロボットアーム10とワークW1との離間距離d1を検出する距離検出部9を有する距離検出部9としては、特に限定されないが、例えば、カメラ、光学式センサー、静電容量センサー等が挙げられる。また、距離検出部9の設置位置は、特に限定されず、ロボットアーム10の任意の位置に設置されていてもよく、ロボットアーム10以外の位置、例えば、作業台等に設置されていてもよい。
また、図示はしないが、距離検出部9は、制御装置3と電気的に接続されており、距離検出部9が検出したロボットアーム10とワークW1との離間距離d1に関する情報は、制御装置3に電気信号として送信される。
次に図20に示すフローチャートに基づいて、本実施形態のロボットの制御方法を説明する。本実施形態では、駆動ステップが異なること以外は、第1実施形態と同様である。すなわち、本実施形態では、第1実施形態でのステップS107に代えて、駆動ステップであるステップS207を実行する。
ステップS207では、ツールセンターポイントTCPを目標位置Sに向かって移動させつつ、距離検出部9を用いて、ロボットアーム10とワークW1との離間距離d1を検出する。ツールセンターポイントTCPの移動は、ロボットアーム10とワークW1との離間距離d1が予め設定された値、すなわち、所定値となるまで行われる。
例えば、図19に示すように、予め設定された方向からツールセンターポイントTCPを目標位置Sに向かって移動させ、ツールセンターポイントTCPが目標位置Sまで到達しなかったとしても、ロボットアーム10とワークW1との離間距離d1が所定値となったら、ロボットアーム10の移動を停止し、作業を行う、すなわち、処理液Lを噴出する。また、このような制御を、目標位置Sごとに実行する。
このような本実施形態によれば、前記第1実施形態と同様に、目標位置設定ステップで迅速かつ簡単に目標位置Sを設定することができる。また、駆動ステップにおいて、ロボットアーム10とワークW1との離間距離d1を検出しつつ、離間距離d1が所定値となるようにロボットアーム10を駆動する。このため、目標位置SがワークW1の表面に対して離間していたとしても、作業中においては、ロボットアーム10とワークW1との離間距離d1を所定値に保つことができる。よって、良好な作業、すなわち、処理液Lの塗布ムラを抑制することができ、正確な作業を行うことができる。
このように、ロボットシステム100は、作業対象物であるワークW1に対して所定の作業を行うロボットアーム10と、ロボットアーム10とワークW1との距離を検出する距離検出部9と、ワークW1を異なる方向から投影した複数の投影形状から予測した簡易形状データDDに対して、所定の作業を行う際のロボットアーム10の制御点CPを移動させる目標位置Sを複数設定する目標位置設定部3Aと、目標位置設定部3Aが設定した複数の目標位置Sと、距離検出部9の検出結果とに基づいて、ワークW1とロボットアーム10の制御点CPとの離間距離d1が所定値となるようロボットアーム10を駆動して所定の作業を行う駆動制御部3Bと、を備える。これにより、第1実施形態と同様に、目標位置設定部3Aが迅速に目標位置Sの設定を行うことができる。また、目標位置Sの粗さを、駆動制御部3Bが行う上記位置制御によって補うことができる。その結果、迅速な目標位置Sの設定と、ワークW1に対する作業の正確性とを両立することができる。
また、ロボットの制御方法は、作業対象物であるワークW1に対して所定の作業を行うロボットアーム10を有するロボット1を制御するロボットの制御方法である。また、ロボットの制御方法は、ワークW1を異なる方向から投影した複数の投影形状から予測した簡易形状データDDに対して、所定の作業を行う際のロボットアーム10の制御点CPを移動させる目標位置Sを複数設定する目標位置設定ステップと、目標位置設定ステップで設定した複数の目標位置Sと、ワークW1とロボットアーム10の制御点CPとの離間距離d1と、に基づいて位置制御によりロボットアーム10を駆動し、離間距離d1が所定値となるよう所定の作業を行う駆動ステップと、を有する。これにより、目標位置設定部3Aが迅速に目標位置Sの設定を行うことができる。また、目標位置Sの粗さを、駆動ステップにて行う上記位置制御によって補うことができる。その結果、迅速な目標位置Sの設定と、ワークW1に対する作業の正確性とを両立することができる。
なお、所定値は、作業内容によって適宜設定される値であり、記憶部3Cに予め記憶されている値とされる。また、所定値は、幅を持っていてもよい。すなわち、所定値は、所定数値範囲でもよい。
<ロボットシステムの他の構成例>
図21は、ロボットシステムについてハードウェアを中心として説明するためのブロック図である。
図21には、ロボット1とコントローラー61とコンピューター62が接続されたロボットシステム100Aの全体構成が示されている。ロボット1の制御は、コントローラー61にあるプロセッサーによりメモリーにある指令を読み出して実行されてもよいし、コンピューター62に存在するプロセッサーによりメモリーにある指令を読み出してコントローラー61を介して実行されてもよい。
従って、コントローラー61とコンピューター62とのいずれか一方または両方を「制御装置」として捉えることができる。
<変形例1>
図22は、ロボットシステムのハードウェアを中心とした変形例1を示すブロック図である。
図22には、ロボット1に直接コンピューター63が接続されたロボットシステム100Bの全体構成が示されている。ロボット1の制御は、コンピューター63に存在するプロセッサーによりメモリーにある指令を読み出して直接実行される。
従って、コンピューター63を「制御装置」として捉えることができる。
<変形例2>
図23は、ロボットシステムのハードウェアを中心とした変形例2を示すブロック図である。
図23には、コントローラー61が内蔵されたロボット1とコンピューター66が接続され、コンピューター66がLAN等のネットワーク65を介してクラウド64に接続されているロボットシステム100Cの全体構成が示されている。ロボット1の制御は、コンピューター66に存在するプロセッサーによりメモリーにある指令を読み出して実行されてもよいし、クラウド64上に存在するプロセッサーによりコンピューター66を介してメモリーにある指令を読み出して実行されてもよい。
従って、コントローラー61とコンピューター66とクラウド64とのいずれか1つ、または、いずれか2つ、または、3つを「制御装置」として捉えることができる。
以上、本発明のロボットの制御方法およびロボットシステムを図示の実施形態について説明したが、本発明は、これに限定されるものではない。また、ロボットシステムを構成する各部は、同様の機能を発揮し得る任意の構成のものと置換することができる。また、任意の構成物が付加されていてもよい。
1…ロボット、3…制御装置、3A…目標位置設定部、3B…駆動制御部、3C…記憶部、4…教示装置、5A…第1撮像部、5B…第2撮像部、5C…第3撮像部、9…距離検出部、10…ロボットアーム、11…基台、12…第1アーム、13…第2アーム、14…第3アーム、15…第4アーム、16…第5アーム、17…第6アーム、18…中継ケーブル、19…力検出部、20…エンドエフェクター、21…研磨部材、30…位置制御部、31…座標変換部、32…座標変換部、33…補正部、34…力制御部、35…指令統合部、41…ディスプレイ、61…コントローラー、62…コンピューター、63…コンピューター、64…クラウド、65…ネットワーク、66…コンピューター、100…ロボットシステム、100A…ロボットシステム、100B…ロボットシステム、100C…ロボットシステム、171…関節、172…関節、173…関節、174…関節、175…関節、176…関節、200…稜線、351…実行部、CP…制御点、D1…第1撮像画像、D1’…第1投影形状データ、D2…第2撮像画像、D2’…第2投影形状データ、D3…第3撮像画像、D3’…第3投影形状データ、DA…第1予測形状データ、DB…第2予測形状データ、DC…第3予測形状データ、DD…簡易形状データ、E1…エンコーダー、E2…エンコーダー、E3…エンコーダー、E4…エンコーダー、5…エンコーダー、E6…エンコーダー、L…処理液、M1…モーター、M2…モーター、M3…モーター、M4…モーター、M5…モーター、M6…モーター、P…位置指令値、P’…位置指令値、S…目標位置、TCP…ツールセンターポイント、W’…予測立体形状、W1…ワーク、d1…離間距離、f…作用力、fSt…目標力、ΔS…力由来補正量

Claims (9)

  1. 作業対象物に対して所定の作業を行うロボットアームを有するロボットを制御するロボットの制御方法であって、
    前記作業対象物を異なる方向から投影した複数の投影形状から予測した簡易形状データに対して、前記所定の作業を行う際の前記ロボットアームの制御点を移動させる目標位置を複数設定する目標位置設定ステップと、
    前記目標位置設定ステップで設定した複数の前記目標位置と、前記ロボットアームに加わる力と、に基づいた力制御により前記ロボットアームを駆動し、前記所定の作業を行う駆動ステップと、を有することを特徴とするロボットの制御方法。
  2. 前記目標位置設定ステップでは、前記簡易形状データの稜線上に所定の間隔で前記目標位置を複数設定する請求項1に記載のロボットの制御方法。
  3. 前記目標位置設定ステップでは、複数の前記目標位置に対し、前記制御点が移動する順番を設定する請求項1または2に記載のロボットの制御方法。
  4. 前記目標位置設定ステップの前に、前記簡易形状データを生成する簡易形状データ生成ステップを有する請求項1ないし3のいずれか1項に記載のロボットの制御方法。
  5. 前記簡易形状データ生成ステップでは、前記作業対象物を異なる方向から投影した複数の投影形状のうち、最も投影面積が大きい投影形状と、2番目に投影面積が大きい投影形状とから前記簡易形状データを生成する請求項4に記載のロボットの制御方法。
  6. 前記簡易形状データ生成ステップでは、撮像部を用いて前記作業対象物を撮像して撮像画像を取得し、前記撮像画像に基づいて、前記投影形状を取得する請求項1ないし4のいずれか1項に記載のロボットの制御方法。
  7. 作業対象物に対して所定の作業を行うロボットアームを有するロボットを制御するロボットの制御方法であって、
    前記作業対象物を異なる方向から投影した複数の投影形状から予測した簡易形状データに対して、前記所定の作業を行う際の前記ロボットアームの制御点を移動させる目標位置を複数設定する目標位置設定ステップと、
    前記目標位置設定ステップで設定した複数の前記目標位置と、前記作業対象物と前記ロボットアームの制御点との離間距離と、に基づいて位置制御により前記ロボットアームを駆動し、前記離間距離が所定値となるよう前記所定の作業を行う駆動ステップと、を有することを特徴とするロボットの制御方法。
  8. 作業対象物に対して所定の作業を行うロボットアームと、
    前記ロボットアームに加わる力を検出する力検出部と、
    前記作業対象物を異なる方向から投影した複数の投影形状から予測した簡易形状データに対して、前記所定の作業を行う際の前記ロボットアームの制御点を移動させる目標位置を複数設定する目標位置設定部と、
    前記目標位置設定部が設定した複数の前記目標位置と、前記ロボットアームに加わる力と、に基づいた力制御により前記ロボットアームを駆動し、前記所定の作業を行う駆動制御部と、を備えることを特徴とするロボットシステム。
  9. 作業対象物に対して所定の作業を行うロボットアームと、
    前記ロボットアームと前記作業対象物との距離を検出する距離検出部と、
    前記作業対象物を異なる方向から投影した複数の投影形状から予測した簡易形状データに対して、前記所定の作業を行う際の前記ロボットアームの制御点を移動させる目標位置を複数設定する目標位置設定部と、
    前記目標位置設定部が設定した複数の前記目標位置と、前記距離検出部の検出結果とに基づいて、前記作業対象物と前記ロボットアームとの離間距離が所定値となるよう位置制御により前記ロボットアームを駆動して前記所定の作業を行う駆動制御部と、を備えることを特徴とするロボットシステム。
JP2020033136A 2020-02-28 2020-02-28 ロボットの制御方法およびロボットシステム Withdrawn JP2021133470A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020033136A JP2021133470A (ja) 2020-02-28 2020-02-28 ロボットの制御方法およびロボットシステム
CN202110212355.7A CN113319848B (zh) 2020-02-28 2021-02-25 机器人的控制方法以及机器人系统
US17/186,038 US11691290B2 (en) 2020-02-28 2021-02-26 Robot control method and robot system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020033136A JP2021133470A (ja) 2020-02-28 2020-02-28 ロボットの制御方法およびロボットシステム

Publications (1)

Publication Number Publication Date
JP2021133470A true JP2021133470A (ja) 2021-09-13

Family

ID=77414418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020033136A Withdrawn JP2021133470A (ja) 2020-02-28 2020-02-28 ロボットの制御方法およびロボットシステム

Country Status (3)

Country Link
US (1) US11691290B2 (ja)
JP (1) JP2021133470A (ja)
CN (1) CN113319848B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021142608A (ja) * 2020-03-12 2021-09-24 キヤノン株式会社 ロボット装置、制御装置、情報処理装置、制御方法、物品の製造方法、プログラム、および記録媒体
JP2021171838A (ja) * 2020-04-21 2021-11-01 株式会社東芝 ピッキング装置、制御装置、及びプログラム
TWI745169B (zh) * 2020-11-18 2021-11-01 許又升 伺服驅動式浮動機構

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2966706B2 (ja) 1993-10-05 1999-10-25 株式会社日立製作所 磨きロボットの自動教示方法
JP3670700B2 (ja) 1994-04-27 2005-07-13 株式会社日立製作所 ロボット機構制御方法
CN108081268A (zh) * 2013-10-10 2018-05-29 精工爱普生株式会社 机器人控制系统、机器人、程序以及机器人控制方法
JP6327556B2 (ja) 2014-04-23 2018-05-23 株式会社ディテクト 三次元形状計測システム
WO2017033353A1 (ja) * 2015-08-25 2017-03-02 川崎重工業株式会社 遠隔操作ロボットシステム
JP7314475B2 (ja) * 2016-11-11 2023-07-26 セイコーエプソン株式会社 ロボット制御装置、及び、ロボット制御方法
EP3634696A1 (en) * 2017-06-09 2020-04-15 MAKO Surgical Corp. Robotic system and method for producing reactive forces to implement virtual boundaries
CN109559341B (zh) * 2017-09-27 2021-03-26 北京猎户星空科技有限公司 一种机械臂抓取方案的生成方法及装置
US11097418B2 (en) * 2018-01-04 2021-08-24 X Development Llc Grasping of an object by a robot based on grasp strategy determined using machine learning model(s)
CN109597087B (zh) * 2018-11-15 2022-07-01 天津大学 一种基于点云数据的3d目标检测方法

Also Published As

Publication number Publication date
CN113319848A (zh) 2021-08-31
US20210268660A1 (en) 2021-09-02
CN113319848B (zh) 2023-11-14
US11691290B2 (en) 2023-07-04

Similar Documents

Publication Publication Date Title
CN113319848B (zh) 机器人的控制方法以及机器人系统
JP6710946B2 (ja) 制御装置、ロボットおよびロボットシステム
JP7314475B2 (ja) ロボット制御装置、及び、ロボット制御方法
JP3782679B2 (ja) 干渉回避装置
US20180154520A1 (en) Control device, robot, and robot system
US20230001577A1 (en) Force Control Parameter Setup Support Method And Force Control Parameter Setup Support System
CN113858189B (zh) 机器人的控制方法及机器人系统
JP2014240106A (ja) ロボット、ロボット制御装置およびロボットの駆動方法
JP2018001332A (ja) ロボット、制御装置、及びロボットシステム
US11759955B2 (en) Calibration method
JP7459530B2 (ja) 教示方法およびロボットシステム
US20230038804A1 (en) Master-slave system and controlling method
JP7423943B2 (ja) 制御方法およびロボットシステム
JP6268924B2 (ja) ロボット、およびロボットの作業方法
JP7277340B2 (ja) マスタスレーブシステム、制御方法及び制御装置
JP2021003781A (ja) オーバーシュート量検出方法、オーバーシュート量検出システム、ロボットシステムおよびオーバーシュート量調整方法
WO2021210514A1 (ja) ロボットの制御装置及び制御方法、ロボットシステム、ロボットの動作プログラムを生成する装置及び方法
US20220314450A1 (en) Method For Controlling Robot, Robot System, And Storage Medium
JP2020157459A (ja) 制御方法およびロボットシステム
JP2019042902A (ja) 撮像方法及びロボットシステム
US20220258353A1 (en) Calibration Method
US20230078238A1 (en) Teaching Method
JP2022073192A (ja) ロボットの制御方法
JP2023007773A (ja) 教示支援装置
JP2023022776A (ja) ロボットシステム、ロボットの加工方法及び加工プログラム

Legal Events

Date Code Title Description
RD07 Notification of extinguishment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7427

Effective date: 20200818

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20210914

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20211101

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231205

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20240205