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

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

Info

Publication number
JP2022011402A
JP2022011402A JP2020112527A JP2020112527A JP2022011402A JP 2022011402 A JP2022011402 A JP 2022011402A JP 2020112527 A JP2020112527 A JP 2020112527A JP 2020112527 A JP2020112527 A JP 2020112527A JP 2022011402 A JP2022011402 A JP 2022011402A
Authority
JP
Japan
Prior art keywords
work
robot
robot arm
force
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020112527A
Other languages
English (en)
Inventor
信宏 狩戸
Nobuhiro Karido
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 JP2020112527A priority Critical patent/JP2022011402A/ja
Priority to CN202110722227.7A priority patent/CN113858189B/zh
Priority to US17/361,425 priority patent/US11951625B2/en
Publication of JP2022011402A publication Critical patent/JP2022011402A/ja
Pending 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/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
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert 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/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/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • 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
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39322Force and position control

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

Figure 2022011402000001
【課題】複数のワークに対して作業を行う場合、累積の作業時間を短縮することができるロボットの制御方法およびロボットシステムを提供すること。
【解決手段】所定の位置指令値に基づいて力制御によりロボットアームを動作させて第1作業対象物に対して第1作業を実行する第1作業ステップと、ロボットアームに設定された制御点が、第1作業ステップにおいて通過した軌道の第1位置情報を記憶する第1記憶ステップと、第1記憶ステップにおいて記憶した第1位置情報に基づいてロボットアームに対する位置指令値を更新し、更新した位置指令値である更新値に基づいて力制御によりロボットアームを動作させて第2作業対象物に対して第2作業を実行する第2作業ステップと、を有することを特徴とするロボットの制御方法。
【選択図】図11

Description

本発明は、ロボットの制御方法およびロボットシステムに関する。
例えば、特許文献1に示すように、先端に工具が装着されるロボットアームを有し、ロボットアームを駆動することによって、作業の対象部材に対して所定の作業を行うロボットが知られている。
特許文献1に記載のロボットは、対象部材の表面に沿って加工等を行う倣い制御により動作を行う。具体的には、工具が予め設定された目標位置に向かうようにロボットアームを移動させつつ、ロボットアームと対象部材との接触力を検出する。そして、検出した力が目標力に一致するように目標位置を補正し、ロボットアームを所定の速度で動作させる。
特開平6-31663号公報
また、対象部材に工具を確実に接触させるために、倣い制御における目標位置は、工具と対象部材との実際の距離よりも長くなるような位置に設定される。すなわち、実際に工具と対象部材とが接触する位置は、目標位置とずれている。工具と対象部材とが接触するまでの間、比較的遅い速度でロボットアームを動作させるため、このずれ量の大きさによっては、作業時間が長くなる。特に、複数のワークに対して作業を行う場合、累積の作業時間が長くなってしまう。
本発明のロボットの制御方法は、第1作業対象物に対して第1作業を行い、前記第1作業対象物と同種の第2作業対象物に対して前記第1作業と同種の第2作業を行うロボットアームを有するロボットの制御方法であって、
所定の位置指令値に基づいて力制御により前記ロボットアームを動作させて前記第1作業対象物に対して前記第1作業を実行する第1作業ステップと、
前記ロボットアームに設定された制御点が、前記第1作業ステップにおいて通過した軌道の第1位置情報を記憶する第1記憶ステップと、
前記第1記憶ステップにおいて記憶した前記第1位置情報に基づいて前記ロボットアームに対する位置指令値を更新し、更新した前記位置指令値である更新値に基づいて力制御により前記ロボットアームを動作させて前記第2作業対象物に対して前記第2作業を実行する第2作業ステップと、を有することを特徴とする。
本発明のロボットシステムは、第1作業対象物に対して第1作業を行い、前記第1作業対象物と同種の第2作業対象物に対して前記第1作業と同種の第2作業を行うロボットアームと、
記憶部を有し、前記ロボットアームの作動を制御する制御部と、を備え、
前記制御部は、
所定の位置指令値に基づいて力制御により前記ロボットアームを動作させて前記第1作業対象物に対して前記第1作業を実行し、
前記ロボットアームに設定された制御点が、前記第1作業において通過した軌道の第1位置情報を記憶し、
記憶した前記第1位置情報に基づいて前記ロボットアームに対する位置指令値を更新し、
更新した前記位置指令値である更新値に基づいて力制御により前記ロボットアームを動作させて前記第2作業対象物に対して前記第2作業を実行することを特徴とする。
図1は、第1実施形態のロボットシステムの全体構成を示す図である。 図2は、図1に示すロボットシステムのブロック図である。 図3は、図1に示すロボットの作業対象物であるワークの斜視図である。 図4は、図3に示すワークに目標位置を設定した状態を示す斜視図である。 図5は、図4中のA-A線断面図である。 図6は、図4中のB-B線断面図である。 図7は、図3に示すワークの斜視図であって、各目標位置を制御点が通過する順番を矢印で示した図である。 図8は、図4中のA-A線断面図であって、作業を行っている状態を示す図である。 図9は、ワークの横断面図であって、2回目の作業を行う際の目標位置を設定した状態を示す図である。 図10は、図2に示す制御装置が行う制御動作を説明するためのフローチャートであって、1回目の作業を行う際のフローチャートである。 図11は、図2に示す制御装置が行う制御動作を説明するためのフローチャートであって、2回目の作業を行う際のフローチャートである。 図12は、第2実施形態のロボットシステムの制御装置が生成する学習モデルの概念図である。 図13は、ロボットシステムについてハードウェアを中心として説明するためのブロック図である。 図14は、ロボットシステムのハードウェアを中心とした変形例1を示すブロック図である。 図15は、ロボットシステムのハードウェアを中心とした変形例2を示すブロック図である。
<第1実施形態>
図1は、第1実施形態のロボットシステムの全体構成を示す図である。図2は、図1に示すロボットシステムのブロック図である。図3は、図1に示すロボットの作業対象物であるワークの斜視図である。図4は、図3に示すワークに目標位置を設定した状態を示す斜視図である。図5は、図4中のA-A線断面図である。図6は、図4中のB-B線断面図である。図7は、図3に示すワークの斜視図であって、各目標位置を制御点が通過する順番を矢印で示した図である。図8は、図4中のA-A線断面図であって、作業を行っている状態を示す図である。図9は、ワークの横断面図であって、2回目の作業を行う際の目標位置を設定した状態を示す図である。図10は、図2に示す制御装置が行う制御動作を説明するためのフローチャートであって、1回目の作業を行う際のフローチャートである。図11は、図2に示す制御装置が行う制御動作を説明するためのフローチャートであって、2回目の作業を行う際のフローチャートである。
以下、本発明のロボットの制御方法およびロボットシステムを添付図面に示す好適な実施形態に基づいて詳細に説明する。なお、以下では、説明の便宜上、図1中の+Z軸方向、すなわち、上側を「上」、-Z軸方向、すなわち、下側を「下」とも言う。また、ロボットアームについては、図1中の基台11側を「基端」、その反対側、すなわち、エンドエフェクター20側を「先端」とも言う。また、図1中のZ軸方向、すなわち、上下方向を「鉛直方向」とし、X軸方向およびY軸方向、すなわち、左右方向を「水平方向」とする。
図1に示すように、ロボットシステム100は、第1作業対象物であるワークW1および第2作業対象物であるワークW2に対して順次作業を行うロボット1と、ロボット1を制御する制御装置3と、教示装置4と、を備え、本発明のロボットの制御方法を実行する。
まず、ロボット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およびワークW2の研磨を行う研磨機である。この研磨機は、外周部に砥粒を有する研磨部材21と、研磨部材21を回転させる図示しないモーターと、モーターを駆動する図示しない電源と、を有する。また、ロボット座標系において、研磨部材21の先端面の任意の位置、好ましくは中心にツールセンターポイントTCPが設定されている。なお、これに限定されず、ツールセンターポイントTCPは、研磨部材21の外周部に設定されていてもよい。
前述したように、ロボットシステム100では、ロボット座標系で制御点CPの位置を把握し、制御点CPが所望の位置に移動するようにロボットアーム10を駆動する。また、エンドエフェクター20の種類、特に、長さを把握しておくことにより、ツールセンターポイントTCPと制御点CPとのオフセット量を把握することができる。このため、ツールセンターポイントTCPの位置をロボット座標系で把握することができる。したがって、ツールセンターポイントTCPを制御の基準とすることができる。すなわち、制御点CPの位置を制御するということは、ツールセンターポイントTCPの位置を制御することである。また、後述するように、ツールセンターポイントTCPの位置を記憶するということは、制御点CPの位置を記憶することである。
また、以下では、ワークW1およびワークW2に作業を行う際、エンドエフェクター20において、少なくともツールセンターポイントTCPの位置は、ワークW1およびワークW2と接触することとする。
また、本実施形態では、エンドエフェクター20は、研磨機で構成されているが、本発明ではこれに限定されず、例えば、研削機、切削機等や、ドライバー、レンチ等の工具であってもよく、吸引、挟持によりワークW1およびワークW2を把持するハンドであってもよい。
また、本実施形態では、図1および図3に示すように、ワークW1およびワークW2は、横断面形状が円形の長尺体で構成され、その長手方向の途中が2か所湾曲した部材として説明する。
ワークW1およびワークW2は、同種の作業対象物である。ここで、「同種の作業対象物」とは、全体形状が一致している場合はもちろん、作業対象部位の寸法が一致しており、作業対象部位以外の部位の形状が異なっている場合も含む。また、「寸法が一致」とは、同一部位で比較したときの寸法誤差が、1mm以下のことを言う。
また、ロボット1は、ワークW1およびワークW2に対して同種の作業を行う。ロボットが行う作業としては、研磨、研削、切削、組み立て等が挙げられる。「同種の作業」とは、これらのカテゴリーが同じ作業であり、同じ工具を用いて行う作業のことを言う。
次に、制御装置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を作動させるための動作プログラムや、ワークW1およびワークW2の形状に関する情報、および、ワークW1およびワークW2が配置されるロボット座標系における位置が記憶されている。また、記憶部3Cには、後述する第1位置情報や、第2位置情報等が記憶される。
目標位置設定部3Aは、ワークW1およびワークW2に対して所定の作業を実行するための目標位置Sおよび経路計画を設定する。
まず、目標位置設定部3Aは、ワークW1およびワークW2の形状に関する情報、および、ワークW1およびワークW2が配置されるロボット座標系における位置を記憶部3Cから取得する。なお、記憶部3Cに記憶されているこれらの情報は、例えば作業者が教示装置4を用いて入力した3次元データから得られたものであってもよく、図示しない撮像装置がワークW1およびワークW2の撮像を行い、その撮像データから得られたものであってもよい。
次いで、目標位置設定部3Aは、図4に示すように、ワークW1に対し、目標位置Sをロボット座標系で設定する。目標位置設定部3Aは、図5および図6に示すように、ワークW1の外表面よりも奥まった位置、すなわち、内側に目標位置Sを複数設定する。目標位置Sをこのように設定することにより、後述する第1作業時に、より確実にエンドエフェクター20とワークW1を接触させることができ、より正確な作業を行うことができる。
また、目標位置設定部3Aは、各目標位置Sを所定の間隔で設定する。これらの間隔は、全て同じであってもよく、異なる箇所があってもよい。また、これらの間隔は、予め設定されていてもよく、教示装置4を用いて作業者が設定する構成であってもよい。
次いで、各目標位置Sに対してロボットアーム10の制御点CPまたはツールセンターポイントTCPが移動する順番を設定する。すなわち、ロボットアーム10の動作経路を設定する。例えば、動作経路は、最初の目標位置Sを作業開始位置として、隣り合う目標位置Sを順次通過するような経路である。なお、動作経路は、予め設定されていてもよく、教示装置4を用いて作業者が設定する構成であってもよい。また、「目標位置Sに対してロボットアーム10の制御点CPまたはツールセンターポイントTCPが移動する」とは、制御点CPまたはツールセンターポイントTCPが目標位置Sと一致するまで移動しなくても、目標位置Sを目標として移動することを言う。
また、作業開始位置は、実際にワークW1が置かれている位置や、ロボットアーム10の姿勢、すなわち、制御点CPの位置に応じて設定することができる。例えば、制御点CPに一番近い目標位置Sを作業開始位置とすることができる。
なお、各目標位置Sに対してロボットアーム10の制御点CPまたはツールセンターポイントTCPが移動する順番を設定する際、各目標位置Sに対してロボットアーム10が接近する姿勢も設定する。すなわち、各目標位置Sに対して順番を設定する際、目標位置Sごとにどの方向からどのような姿勢で接近するかを紐づけて記憶部3Cに記憶する。
駆動制御部3Bは、ロボットアーム10の駆動を制御するものであり、位置制御部30と、座標変換部31と、座標変換部32と、補正部33と、力制御部34と、指令統合部35と、を有する。
位置制御部30は、予め作成されたコマンドで指定される位置に従って、ロボット1のツールセンターポイントTCPの位置を制御する位置指令信号を生成する。すなわち、位置制御部30は、各目標位置SにツールセンターポイントTCPが移動する位置指令値Pを生成する。
ここで、制御装置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およびワークW2に対してエンドエフェクター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 2022011402000002
式(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を求める。力由来補正量ΔSは、外力を受けたその位置からツールセンターポイントTCPを移動すべき位置との差のことである。
そして、指令統合部35は、位置制御部30が生成した位置指令値Pに、力由来補正量ΔSを合算する。これを随時行うことにより、指令統合部35は、外力を受けた位置に移動させるために用いていた位置指令値Pから、新たな位置指令値である位置指令値P’を求める。なお、位置指令値Pは、目標位置SにツールセンターポイントTCPを移動させるための指令値のことである。
そして、この位置指令値P’を座標変換部31がロボット座標に変換し、実行部351が実行することにより、力由来補正量ΔSを加味した位置にツールセンターポイントTCPを移動させて、外力が加わった衝撃を緩和し、ロボット1に接触した対象物に対し、それ以上負荷がかかるのを緩和することができる。
ここで、力制御において、力検出部19により検出される所定方向の力を可能な限り目標力fStに維持するためには、ロボットアーム10の動作速度を比較的遅くする必要がある。特に、エンドエフェクター20とワークW1とをより確実に接触させるためには、図5および図6に示すように、ワークW1の外表面よりも奥まった位置、すなわち、内側に目標位置Sを設定する。このため、実際にエンドエフェクター20とワークW1とが接触する位置は、ずれている。エンドエフェクター20とワークW1とが接触するまでは、いつ接触してもワークW1に過剰な負荷がかからないようにロボットアーム10の動作速度を比較的低くする必要がある。このため、図8に示すように、実際にエンドエフェクター20とワークW1とが接触する位置と、目標位置Sとのずれ量Dが比較的大きいと、ロボットアーム10の動作速度をさらに遅くする必要があり、作業時間が長くなってしまう。特に、複数のワークに対して作業を行う場合、累積の作業時間が長くなってしまう。これに対し、本発明では、以下のようにして、累積の作業時間を短縮することができる。
なお、以下では、ワークW1に設定された目標位置Sを目標位置St1と言い、ワークW2に設定された目標位置Sを目標位置St2と言う。また、ワークW1に対する作業を第1作業と言い、ワークW2に対する作業を第2作業と言う。
ロボットシステム100では、第1作業を行う際、目標位置設定部3Aが、図5および図6に示すように、ワークW1の外表面よりも奥まった位置、すなわち、内側に目標位置Sを複数設定する。これは、前述したように、力制御によりロボットアーム10を駆動する際、エンドエフェクター20とワークW1とをより確実に接触させるためである。
作業開始位置の目標位置St1に向かってエンドエフェクター20を移動させて、エンドエフェクター20とワークW1とが接触すると、力検出部19がワークW1からの反力を検出する。そして、この反力が目標力fStと一致するように、前述したような力制御を行う。そして、力制御でロボットアーム10を駆動しつつ、ツールセンターポイントTCPが予め設定された順番で目標位置St1に向かうようロボットアーム10を駆動することにより、第1作業が行われる。
また、各目標位置St1において、目標位置St1からずれ量Dをキャンセルした位置、すなわち、実際に作業を行った位置を記憶部3Cに記憶する。すなわち、第1作業において、ツールセンターポイントTCPが通過した軌道を記憶部3Cに記憶する。なお、軌道とは、ツールセンターポイントTCPが移動した点の集合のことを言う。なお、記憶する間隔、タイミングは、特に限定されないが、本実施形態では、目標位置St1ごとに記憶することとする。
第1作業が完了すると第2作業に移行する。なお、第1作業が完了したとき、作業者、または、ロボットアーム10がワークW1と同じ位置にワークW2を搬送してきてもよく、図1に示すように、異なる位置にて作業を順次行ってもよい。この場合、ワークW1およびワークW2の位置ずれを考慮して、目標位置St1および目標位置St2をそれぞれ設定する。
そして、ワークW2に目標位置St2を設定する際、記憶部3Cに記憶されている第1位置情報に基づいて、ロボットアーム10に対する位置指令値Pを更新する。具体的には、図9に示すように、第1作業で実際にツールセンターポイントTCPが移動した第1位置情報を目標位置St2に設定する。次いで、この目標位置St2に対応する位置指令値Pを更新して、更新値を算出する。つまり、更新値とは、更新された位置指令値Pのことである。そして、この更新値に基づいて、第2作業を力制御により実行する。これにより、第2作業における目標位置St2を、第1作業における目標位置St1よりも外表面側にシフトさせることができる。すなわち、第1作業において実際にツールセンターポイントTCPが通過した位置を目標位置として力制御を行うことができる。よって、第2作業におけるずれ量Dを第1作業よりも小さくすることができ、第2作業では、第1作業よりもロボットアーム10の動作速度を早くすることができる。その結果、第2作業を迅速に行うことができ、累積の作業時間を短縮することができる。
このように、本発明のロボットシステム100は、第1作業対象物であるワークW1に対して第1作業を行い、ワークW1と同種の第2作業対象物であるワークW2に対して第1作業と同種の第2作業を行うロボットアーム10と、記憶部3Cを有し、ロボットアーム10の作動を制御する制御部である制御装置3と、を備える。また、制御装置3は、所定の位置指令値に基づいて力制御によりロボットアーム10を動作させてワークW1に対して第1作業を実行し、ロボットアーム10に設定された制御点CPが、第1作業において通過した軌道の第1位置情報を記憶し、記憶した第1位置情報に基づいてロボットアーム10に対する位置指令値を更新し、更新した位置指令値Pである更新値に基づいて力制御によりロボットアームを動作させてワークW2に対して第2作業を実行する。これにより、第2作業において、実際にエンドエフェクター20とワークW1とが接触する位置と、目標位置Sとのずれ量Dを、第1作業よりも小さくすることができる。よって、第2作業では、第1作業よりもロボットアーム10の動作速度を早くすることができる。その結果、第2作業を迅速に行うことができ、累積の作業時間を短縮することができる。
次に、図10および図11に示すフローチャートを参照しつつ説明する。まず、図10に示すフローチャートを用いて、ワークW1に対する作業について説明する。
まず、ステップS101において、ワークW1に対し、目標位置St1を設定する。この目標位置St1は、ワークW1の外表面よりも奥まった位置、すなわち、内側に位置している。また、本ステップにおいて、各目標位置St1を通過する順番も設定する。
次いで、ステップS102において、力制御により第1作業を開始するとともに、逐次軌道計画処理を行う。この逐次軌道計画処理によって、軌道計画で生成した軌道に従ったアームの位置指令値Pを計算し、力制御によりロボットアーム10を駆動する。
ステップS103において、位置指令値Pに力由来補正量ΔSを合算して、位置指令値P’を算出する。すなわち、力検出部19が検出した検出値、すなわち、ワークW1から受けた反力に応じて、力由来補正量ΔSを算出し、位置指令値Pに合算して、新たな位置指令値P’を求める。
次いで、ステップS104では、ステップS103で算出した位置指令値P’を記憶する。すなわち、第1作業において、ツールセンターポイントTCPが通過した軌道、すなわち、第1位置情報を記憶部3Cに記憶する。
次いで、ステップS105では、ステップS103で算出した位置指令値P’をロボットアーム10に送信する。これにより、ワークW1に過剰な負荷をかけることなく第1作業を行うことができる。
次いで、ステップS106において、全ての目標位置St1を目標として移動が完了したか否かを判断する。未だ完了していないと判断した場合、ステップS102に戻り、以下のステップを順次繰り返す。
以上のような第1作業において、ステップS102、ステップS103およびステップS105が、第1作業ステップである。また、ステップS104が第1記憶ステップである。なお、本実施形態では、第1作業ステップと第1記憶ステップとを並行して行うが、本発明ではこれに限定されず、第1作業ステップと第1記憶ステップとを順次行ってもよい。すなわち、ステップS102、ステップS103およびステップS106が完了した後にステップS104を行ってもよい。
次に、第2作業について説明する。
まず、ステップS201において、1回目の作業時のデータを読み出し、目標位置を設定する。すなわち、第1作業においてステップS104で記憶した第1位置情報を読み出し、目標位置St2として設定する。さらに換言すれば、第1作業時にツールセンターポイントTCPが移動した位置を目標位置St2に設定する。
次いで、ステップS202において、力制御により第2作業を開始するとともに、逐次軌道計画処理を行う。このステップでは、第1位置情報に基づいて位置指令値を更新し、更新値に基づいて力制御を行う。これにより、ロボットアーム10の動作速度を第1作業よりも早くすることができる。
次いで、ステップS203において、力検出部19が検出した検出値、すなわち、ワークW1から受けた反力が所定値を超えたか否かを判断する。ここで言う所定値とは、検出した力の大きさの閾値であり、予め記憶部3Cに記憶されている。
ステップS203において、力検出部19が検出した検出値が所定値を超えていないと判断した場合、ステップS204、ステップS205、ステップS206およびステップS207を順次行う。これらのステップは、第1作業におけるステップS103~ステップS106と略同様であるため、その説明を省略する。なお、ステップS206は、第2記憶ステップである。
ステップS203において、力検出部19が検出した検出値が所定値を超えたと判断した場合、ステップS105において、ロボットアーム10の動作速度を調節する。
ステップS105としては、以下のような2つのパターンがある。
1つ目のパターンは、第2作業ステップでは、ロボットアーム10に加わる力が所定値を超えた場合、制御点CPの移動速度を低下させてロボットアーム10を動作させる。これにより、第2作業では、第1作業よりも動作速度を上げたとしても、ワークW2に過剰な負荷がかるのを防止または抑制することができる。また、第2作業を止めることがないため、生産性を高めることができる。
2つめのパターンは、第2作業ステップでは、ロボットアーム10に加わる力が所定値を超えた場合、ロボットアーム10の動作を停止する。これにより、第2作業では、第1作業よりも動作速度を上げたとしても、ワークW2に過剰な負荷がかるのを防止または抑制することができる。また、動作を停止するため、より安全性を高めることができる。
なお、2つめのパターンでは、例えば作業者からの指示により、作業を再開する構成とすることができる。
以上のような第2作業において、ステップS202、ステップS203、ステップS204、ステップS205、ステップS207およびステップS208が、第2作業ステップである。また、ステップS206が第2記憶ステップである。なお、本実施形態では、第2作業ステップと第2記憶ステップとを並行して行うが、本発明ではこれに限定されず、第2作業ステップと第2記憶ステップとを順次行ってもよい。すなわち、ステップS202、ステップS203、ステップS204、ステップS205、ステップS207およびステップS208が完了した後にステップS206を行ってもよい。
以上説明したように、本発明のロボットの制御方法は、第1作業対象物であるワークW1に対して第1作業を行い、ワークW1と同種の第2作業対象物であるワークW2に対して第1作業と同種の第2作業を行うロボットアーム10を有するロボットの制御方法である。また、ロボットの制御方法は、所定の位置指令値に基づいて力制御によりロボットアーム10を動作させて第1作業対象物に対して第1作業を実行する第1作業ステップと、ロボットアーム10に設定された制御点CPが、第1作業ステップにおいて通過した軌道の第1位置情報を記憶する第1記憶ステップと、第1記憶ステップにおいて記憶した第1位置情報に基づいてロボットアーム10に対する位置指令値を更新し、更新した位置指令値Pである更新値に基づいて力制御によりロボットアーム10を動作させてワークW2に対して第2作業を実行する第2作業ステップと、を有する。これにより、第2作業において、実際にエンドエフェクター20とワークW1とが接触する位置と、目標位置Sとのずれ量Dを、第1作業よりも小さくすることができる。よって、第2作業では、第1作業よりもロボットアーム10の動作速度を早くすることができる。その結果、第2作業を迅速に行うことができ、累積の作業時間を短縮することができる。
また、第1作業と第2作業とは、連続して行われる作業である。換言すれば、第1作業は、第2作業の直前の作業である。さらに換言すれば、ロボット1は、第1作業を行った後、他の作業をすることなく、第2作業を実行する。第1作業および第2作業がこのような関係であることにより、累積の作業時間を効果的に短縮することができる。
また、図示はしないが、第2作業ステップが完了した後に、ワークW1およびワークW2とは別で、かつ、同種のワークに対して第3作業を行ってもよい。すなわち、ワークの数に応じて、第3作業ステップ、または、それ以降のステップを行ってもよい。この場合、第3作業ステップでは、第1位置情報および第2位置情報の平均値に基づいてロボットアームに対する位置指令値Pを更新し、更新値に基づいて前記ロボットアームを動作させて第3作業を行うのが好ましい。
このように、本発明のロボットの制御方法は、第2作業ステップにおいて制御点CPが通過した軌道の第2位置情報を記憶する第2記憶ステップと、第1位置情報および第2位置情報の平均値に基づいてロボットアーム10に対する位置指令値Pを更新し、平均値に基づいて更新した位置指令値Pである更新値に基づいてロボットアーム10を動作させて第3作業を行う第3作業ステップと、を有する。これにより、従来と比較した場合、累積時間をさらに短縮することができる。また、第3作業ステップでは、第1位置情報および第2位置情報の平均値に基づいて位置指令値の更新値を求めるため、過去の傾向を考慮して作業を行うことができる。その結果、さらに迅速かつ正確に作業を行うことができる。
なお、第3作業ステップでは、第2位置情報に基づいて位置指令値Pの更新値を算出してもよい。すなわち、直前の作業での位置情報に基づいて位置指令値Pの更新値を算出してもよい。
また、第2作業では、目標位置St2の数を第1作業での目標位置St1の数よりも少なくしてもよい、すなわち、間引いてもよい。これにより、ロボットアーム10のさらに移動速度を早くすることができ、より迅速な作業を行うことができる。
また、第2作業では、力制御と位置制御とを併用してもよい。例えば、ワークW2の表面形状が複雑な部分に対しては力制御で作業を行い、ワークW2の表面形状が簡素な部分に対しては位置制御で作業を行ってもよい。これにより、作業の質を落とすことなく、さらに迅速に作業を行うことができる。
<第2実施形態>
図12は、第2実施形態のロボットシステムの制御装置が生成する学習モデルの概念図である。
以下、図12を参照して本発明のロボットの制御方法およびロボットシステムの第2実施形態について説明するが、前述した実施形態との相違点を中心に説明し、同様の事項はその説明を省略する。
制御装置3は、図12に示すように、機械学習により学習モデル200を生成するモデル生成部300を有する。なお、機械学習により学習モデル200を生成するということは、入力データから反復的に学習し、各入力データから読み取れる特徴、傾向等を見出し、その結果を新たな入力データに当てはめて予測しつつ、学習モデル200を生成することを言う。
学習モデル200とは、入力値を受け取り、評価、判定を行い、その結果を出力値として出力するもののことを言う。入力値は、過去の作業において、制御点CPが実際に通過した位置、すなわち、位置指令値、および、ロボットアーム10に加わる力であり、出力値は、位置指令値の更新値である。
モデル生成部300は、例えば、図12に示すようなリカレント型のニューラルネットワークを使用して構築することができる。具体的には、モデル生成部300は、入力層と、中間層と、出力層と、を有する構成とすることができる。各情報が、隣り合う層の情報と、ネットワークでつながり、より大きなネットワークが展開される。また、中間層は、図示の構成では、1層であるが、複数層有しているのが好ましい。これにより、中間層の各層において、情報の重要性に重み付けを行うことができ、さらに正確な故障予測を行うことができる。
また、リカレント型のニューラルネットワークでは、前回の時刻の中間層の情報を、今回の時刻の中間層の情報に置き換えてネットワークを構築することができる。よって、時系列情報を考慮したネットワークを構築することができる。その結果、さらに正確な目標位置の設定を行うことができる。
なお、モデル生成部300における学習法としては、教師あり学習や、教師なし学習や、これらを組み合わせた学習法が挙げられる。教師あり学習の場合、出力値、または、その合否結果を入力値に反映することで、より正確な目標位置の設定を行うことができる。教師なし学習の場合、入力値と出力値のデータの組を大量に準備しておき、モデル生成部300に与えることで、それらのデータセットにある特徴を学習し、入力から結果を推定するモデル、すなわち、その関係性を帰納的に獲得することができる。よって、目標位置の合否の判定に関する情報が与えられなくても、正確な目標位置の設定を行うことができる。その結果、さらに迅速かつ正確な作業を行うことができる。例えば、リカレント型のニューラルネットワークに、例えば誤差逆伝播法を適用することにより、教師なし学習が可能となり、正確な目標位置の設定を行うことができる。
このように、制御部である制御装置3は、ロボットアーム10に対する位置指令値と、ロボットアーム10に加わる力を入力とし、更新値を出力とする学習モデル200を生成する。これにより、過去の作業において制御点CPがどの位置を通過し、ロボットアーム10がどれだけの力を受けたかという傾向を考慮しつつ、更新値を出力することができる。よって、さらに正確な目標位置の設定を行うことができる。
<ロボットシステムの他の構成例>
図13は、ロボットシステムについてハードウェアを中心として説明するためのブロック図である。
図13には、ロボット1とコントローラー61とコンピューター62が接続されたロボットシステム100Aの全体構成が示されている。ロボット1の制御は、コントローラー61にあるプロセッサーによりメモリーにある指令を読み出して実行されてもよいし、コンピューター62に存在するプロセッサーによりメモリーにある指令を読み出してコントローラー61を介して実行されてもよい。
従って、コントローラー61とコンピューター62とのいずれか一方または両方を「制御装置」として捉えることができる。
<変形例1>
図14は、ロボットシステムのハードウェアを中心とした変形例1を示すブロック図である。
図14には、ロボット1に直接コンピューター63が接続されたロボットシステム100Bの全体構成が示されている。ロボット1の制御は、コンピューター63に存在するプロセッサーによりメモリーにある指令を読み出して直接実行される。
従って、コンピューター63を「制御装置」として捉えることができる。
<変形例2>
図15は、ロボットシステムのハードウェアを中心とした変形例2を示すブロック図である。
図15には、コントローラー61が内蔵されたロボット1とコンピューター66が接続され、コンピューター66がLAN等のネットワーク65を介してクラウド64に接続されているロボットシステム100Cの全体構成が示されている。ロボット1の制御は、コンピューター66に存在するプロセッサーによりメモリーにある指令を読み出して実行されてもよいし、クラウド64上に存在するプロセッサーによりコンピューター66を介してメモリーにある指令を読み出して実行されてもよい。
従って、コントローラー61とコンピューター66とクラウド64とのいずれか1つ、または、いずれか2つ、または、3つを「制御装置」として捉えることができる。
以上、本発明のロボットの制御方法およびロボットシステムを図示の実施形態について説明したが、本発明は、これに限定されるものではない。また、ロボットシステムを構成する各部は、同様の機能を発揮し得る任意の構成のものと置換することができる。また、任意の構成物が付加されていてもよい。
1…ロボット、3…制御装置、3A…目標位置設定部、3B…駆動制御部、3C…記憶部、4…教示装置、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…学習モデル、300…モデル生成部、351…実行部、CP…制御点、D…ずれ量、E1…エンコーダー、E2…エンコーダー、E3…エンコーダー、E4…エンコーダー、E5…エンコーダー、E6…エンコーダー、M1…モーター、M2…モーター、M3…モーター、M4…モーター、M5…モーター、M6…モーター、P…位置指令値、P’…位置指令値、S…目標位置、St1…目標位置、St2…目標位置、TCP…ツールセンターポイント、W1…ワーク、W2…ワーク

Claims (7)

  1. 第1作業対象物に対して第1作業を行い、前記第1作業対象物と同種の第2作業対象物に対して前記第1作業と同種の第2作業を行うロボットアームを有するロボットの制御方法であって、
    所定の位置指令値に基づいて力制御により前記ロボットアームを動作させて前記第1作業対象物に対して前記第1作業を実行する第1作業ステップと、
    前記ロボットアームに設定された制御点が、前記第1作業ステップにおいて通過した軌道の第1位置情報を記憶する第1記憶ステップと、
    前記第1記憶ステップにおいて記憶した前記第1位置情報に基づいて前記ロボットアームに対する位置指令値を更新し、更新した前記位置指令値である更新値に基づいて力制御により前記ロボットアームを動作させて前記第2作業対象物に対して前記第2作業を実行する第2作業ステップと、を有することを特徴とするロボットの制御方法。
  2. 前記第2作業ステップでは、前記ロボットアームに加わる力が所定値を超えた場合、前記制御点の移動速度を低下させて前記ロボットアームを動作させる請求項1に記載のロボットの制御方法。
  3. 前記第2作業ステップでは、前記ロボットアームに加わる力が所定値を超えた場合、前記ロボットアームの動作を停止する請求項2に記載のロボットの制御方法。
  4. 前記第2作業ステップにおいて前記制御点が通過した軌道の第2位置情報を記憶する第2記憶ステップと、
    前記第1位置情報および前記第2位置情報の平均値に基づいて前記ロボットアームに対する位置指令値を更新し、前記平均値に基づいて更新した前記位置指令値である更新値に基づいて前記ロボットアームを動作させて第3作業を行う第3作業ステップと、を有する請求項1ないし3のいずれか1項に記載のロボットの制御方法。
  5. 前記第1作業と前記第2作業とは、連続して行われる作業である請求項1ないし4のいずれか1項に記載のロボットの制御方法。
  6. 第1作業対象物に対して第1作業を行い、前記第1作業対象物と同種の第2作業対象物に対して前記第1作業と同種の第2作業を行うロボットアームと、
    記憶部を有し、前記ロボットアームの作動を制御する制御部と、を備え、
    前記制御部は、
    所定の位置指令値に基づいて力制御により前記ロボットアームを動作させて前記第1作業対象物に対して前記第1作業を実行し、
    前記ロボットアームに設定された制御点が、前記第1作業において通過した軌道の第1位置情報を記憶し、
    記憶した前記第1位置情報に基づいて前記ロボットアームに対する位置指令値を更新し、
    更新した前記位置指令値である更新値に基づいて力制御により前記ロボットアームを動作させて前記第2作業対象物に対して前記第2作業を実行することを特徴とするロボットシステム。
  7. 前記制御部は、前記ロボットアームに対する前記位置指令値と、前記ロボットアームに加わる力を入力とし、前記更新値を出力とする学習モデルを生成する請求項6に記載のロボットシステム。
JP2020112527A 2020-06-30 2020-06-30 ロボットの制御方法およびロボットシステム Pending JP2022011402A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020112527A JP2022011402A (ja) 2020-06-30 2020-06-30 ロボットの制御方法およびロボットシステム
CN202110722227.7A CN113858189B (zh) 2020-06-30 2021-06-28 机器人的控制方法及机器人系统
US17/361,425 US11951625B2 (en) 2020-06-30 2021-06-29 Control method for robot and robot system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020112527A JP2022011402A (ja) 2020-06-30 2020-06-30 ロボットの制御方法およびロボットシステム

Publications (1)

Publication Number Publication Date
JP2022011402A true JP2022011402A (ja) 2022-01-17

Family

ID=78990001

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020112527A Pending JP2022011402A (ja) 2020-06-30 2020-06-30 ロボットの制御方法およびロボットシステム

Country Status (3)

Country Link
US (1) US11951625B2 (ja)
JP (1) JP2022011402A (ja)
CN (1) CN113858189B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021049597A (ja) * 2019-09-24 2021-04-01 ソニー株式会社 情報処理装置、情報処理システム及び情報処理方法
US20230075185A1 (en) * 2021-09-09 2023-03-09 Ford Global Technologies, Llc Method and system for positioning a moveable robotic system
US20230191598A1 (en) * 2021-12-22 2023-06-22 Ati Industrial Automation, Inc. Contact Force Overshoot Mitigation in Pneumatic Force Control Devices

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0631663A (ja) 1992-07-17 1994-02-08 Fujitsu Ltd 倣い制御ロボットの軌道制御装置
JPH06170763A (ja) 1992-12-04 1994-06-21 Fanuc Ltd 力制御を用いた研磨方法
US7117068B2 (en) * 2003-09-29 2006-10-03 Quantum Corporation System and method for library robotics positional accuracy using parallax viewing
CN100561491C (zh) * 2005-02-25 2009-11-18 Abb研究有限公司 自动路径学习的方法和设备
JP5765615B2 (ja) 2011-02-28 2015-08-19 株式会社Ihi 加工ロボットの軌道追従装置と方法
JP2015000455A (ja) * 2013-06-17 2015-01-05 キヤノン株式会社 ロボット装置及びロボット装置の制御方法
CA2928645C (en) * 2013-10-25 2021-10-26 Aleksandar VAKANSKI Image-based robot trajectory planning approach
JP5927259B2 (ja) * 2014-09-30 2016-06-01 ファナック株式会社 力制御を実行するロボットシステム
JP6034900B2 (ja) * 2015-03-06 2016-11-30 ファナック株式会社 動作プログラムの再開を判断するロボット制御装置
JP6567998B2 (ja) * 2016-03-23 2019-08-28 国立大学法人 東京大学 制御方法
CN109483556B (zh) * 2018-10-30 2021-04-16 武汉大学 一种基于示教学习的机器人打磨系统及方法
US10946519B1 (en) * 2018-11-30 2021-03-16 X Development Llc Offline computation and caching of precalculated joint trajectories

Also Published As

Publication number Publication date
US20210402596A1 (en) 2021-12-30
CN113858189B (zh) 2024-01-09
CN113858189A (zh) 2021-12-31
US11951625B2 (en) 2024-04-09

Similar Documents

Publication Publication Date Title
CN108422420B (zh) 具有学习控制功能的机器人系统以及学习控制方法
JP2022011402A (ja) ロボットの制御方法およびロボットシステム
US11691290B2 (en) Robot control method and robot system
JP6697544B2 (ja) 最適化装置及びそれを備えた垂直型多関節ロボット
US11660742B2 (en) Teaching method and robot system
JP2021146435A (ja) ロボットシステム、ロボットシステムで実行される方法および教示データを生成する方法
JP7423943B2 (ja) 制御方法およびロボットシステム
JP7566810B2 (ja) ロボットシステム、プランニングシステム、ロボット制御方法、およびプランニングプログラム
EP4067012A1 (en) Method for controlling robot, robot system, and program for controlling robot
JP7528709B2 (ja) 力制御パラメーター調整方法
JP7548036B2 (ja) 動作パラメーター調整方法、動作パラメーター調整プログラムおよびロボットシステム
CN114179077B (zh) 力控制参数调整方法、机器人系统及存储介质
JP6668629B2 (ja) ロボット制御装置およびロボットシステム
WO2021095833A1 (ja) マスタスレーブシステム及び制御方法
CN113442131B (zh) 示教方法
US20220314450A1 (en) Method For Controlling Robot, Robot System, And Storage Medium
CN114179076B (zh) 作业时间提示方法、力控制参数设定方法、机器人系统以及存储介质
US20220134565A1 (en) Control Method For Robot
US20220314451A1 (en) Method For Controlling Robot, Robot System, And Storage Medium
JP2023039052A (ja) 動作パラメーター調整方法
JP2020157459A (ja) 制御方法およびロボットシステム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20210913

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20211104

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240820