JP6418359B1 - ロボットプログラムの生成装置及び生成方法 - Google Patents

ロボットプログラムの生成装置及び生成方法 Download PDF

Info

Publication number
JP6418359B1
JP6418359B1 JP2018514923A JP2018514923A JP6418359B1 JP 6418359 B1 JP6418359 B1 JP 6418359B1 JP 2018514923 A JP2018514923 A JP 2018514923A JP 2018514923 A JP2018514923 A JP 2018514923A JP 6418359 B1 JP6418359 B1 JP 6418359B1
Authority
JP
Japan
Prior art keywords
robot
hand
component
combination
posture
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
JP2018514923A
Other languages
English (en)
Other versions
JPWO2018173318A1 (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6418359B1 publication Critical patent/JP6418359B1/ja
Publication of JPWO2018173318A1 publication Critical patent/JPWO2018173318A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/1656Programme controls characterised by programming, planning systems for manipulators
    • 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/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • 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/1612Programme controls characterised by the hand, wrist, grip 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/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/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • 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/39476Orient hand relative to object
    • 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/39484Locate, reach and grasp, visual guided grasping
    • 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/39536Planning of hand motion, grasping
    • 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/39542Plan grasp points, grip matrix and initial grasp force
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

ロボット(100)を用いてバラ積み供給された部品(170)を複数の移動経路で整列するプログラムについて、教示点を共有化したプログラムを生成する。部品(170)の3次元形状データから部品(170)が平面上で安定する安定姿勢を算出し、ハンドで把持する把持方法を算出し、ハンドの接続先の情報を含むシステム構成データ(240)、把持方法と安定姿勢との組合せ群からハンドが干渉しない組合せを算出する組合せ可否算出部(250)と、算出された組合せを用いて部品の持ち替え経路を算出する持ち替え経路算出部(260)と、部品(170)の投入姿勢及び整列姿勢を指定する姿勢データ(270)に基づいて、持ち替え経路から教示点の数が最小となる経路を経路群として算出する経路群算出部(280)と、ロボット(100)のプログラムを経路群に基づいて生成するプログラム生成部(290)とを備える。

Description

この発明は、産業用ロボットのプログラムを生成する装置及びその方法に関するものであり、特に、ロボットを用いてバラ積み供給された部品を整列するプログラムを生成するものである。
従来の産業用ロボットのプログラム生成方法としては、作業者がデモンストレーションした部品の移動経路を3次元計測し、その移動経路で部品を移動させるロボットプログラムを出力する方法が知られている。プログラム出力時には、ロボットの身体性を考慮し、経路の実現可否も判定する。また、単体のロボットで移動が不可能な場合には、複腕による持ち替えも、プログラムの候補として出力する(特許文献1)。
部品の移動経路を2次元平面内で探索するプログラム生成方法も知られている。作業エリアを上空から見た2次元で表現し、適当なサイズのエリアに分割する。部品の初期位置と最終位置とを分割されたエリアから選択する。各エリアでロボットアームの到達可否を判定し、初期位置から最終位置までの連続した、ロボットアームが到達可能なエリアを抽出して移動経路とする。一つのロボットアームで移動経路が見つからない場合には、複数のロボットアーム間で部品の持ち替えを行う(特許文献2)。
特開2015−054378 特開2015−058492
このようなプログラムの生成方法においては、移動経路毎にロボットの教示作業が必要になる。産業用ロボットでは、移動の目標位置は、教示という現物合わせを行い、教示点として設定する必要がある。ロボットハンドと部品の形状によっては、この教示作業は1ミリメータ以下の精度が必要な作業である。また、ロボットハンドの姿勢を含めると6自由度で合わせる必要があり、設定と確認とを合わせると時間のかかる煩わしい作業である。ビジョンセンサを利用した作業においても、一般的には、基本となる把持方法は教示で設定している。
これに対して、複数の移動経路を設定する場合においても、教示点を共通化して、教示作業の負荷を低減したいという課題がある。特に、近年のロボットシステムにおいては、バラ積み供給された部品への対応も求められており、部品の姿勢及び把持方法が複数あることから、移動経路が増加している。
この発明は、上記のような問題点を解決するためになされたものであり、複数の姿勢で供給される部品について、それらの姿勢毎の移動経路において、教示点を共通化したロボットプログラムを生成するものである。
この発明に係るロボットプログラムの生成装置は、部品の3次元形状データから部品が平面上で安定する安定姿勢を算出する安定姿勢算出部と、ハンドの3次元データ及び3次元形状データから部品をハンドで把持する把持方法を算出する把持方法算出部と、ロボットによる把持方法とロボット以外による把持方法及び安定姿勢との組合せ群から、ハンドの接続先の情報を含むシステム構成データ、安定姿勢、及び把持方法に基づいて、ハンドが干渉しない組合せを算出する組合せ可否算出部と、組合せ可否算出部で算出された組合せを用いて部品の移動回数が最小となる持ち替え経路を全て算出する持ち替え経路算出部と、仮置き台で取扱う部品の姿勢である投入姿勢及び整列台に整列させる部品の姿勢である整列姿勢を指定する姿勢データに基づいて、持ち替え経路において教示点を共有することで教示点の数が最小となる経路を経路群として算出する経路群算出部と、ロボットを用いてバラ積み供給された部品を持ち替えて整列台に整列させるプログラムを経路群に基づいて生成するプログラム生成部とを備えたものである。
また、この発明に係るロボットプログラムの生成方法は、部品の3次元形状データから部品が平面上で安定する安定姿勢を複数算出する安定姿勢算出工程と、ハンドの3次元データ及び3次元形状データから部品をハンドで把持する把持方法を算出する把持方法算出工程と、ロボットによる把持方法とロボット以外による把持方法及び安定姿勢との組合せ群から、ハンドの接続先の情報を含むシステム構成データ、安定姿勢、及び把持方法に基づいて、ハンドが干渉しない組合せを算出する組合せ可否算出工程と、組合せ可否算出工程で算出された組合せを用いて部品の移動回数が最小となる持ち替え経路を全て算出する持ち替え経路算出工程と、仮置き台で取扱う部品の姿勢である投入姿勢及び整列台に整列させる部品の姿勢である整列姿勢を指定する姿勢データに基づいて、持ち替え経路において教示点を共有することで教示点の数が最小となる経路を経路群として算出する経路群算出工程と、ロボットを用いてバラ積み供給された部品を持ち替えて整列台に整列させるプログラムを経路群に基づいて生成するプログラム生成工程とを備えたものである。

本発明によれば、複数の移動経路において教示点を共有した、教示点数の少ないロボットプログラムを生成することができる。
図1は本発明の実施の形態1によるロボットシステムの一例の構成図である。 図2は本発明の実施の形態1によるプログラム生成装置の機能構成図である。 図3は本発明のハードウェア構成を説明するための図である。 図4は本発明の実施の形態1による組合せ可否算出部が出力する組合せ可否結果の例を示す図である。 本発明の実施の形態1による移動回数を説明する組合せの一例を示す図である。 図6は本発明の実施の形態1によるプログラム生成部が出力するロボットプログラムのフローチャートの例である。 図7は本発明の実施の形態2によるプログラム生成装置の機能構成図である。 図8は本発明の実施の形態3によるプログラム生成装置の機能構成図である。 図9は平面となる作業位置にある部品の例を示す図である。 図10は本発明の実施の形態4によるプログラム生成装置の機能構成図である。 図11は本発明の実施の形態5によるプログラム生成装置の機能構成図である。
実施の形態1.
図1は本発明の代表的な適用先である、バラ積み部品170を整列させるロボットシステムの一例の模式図である。ロボット100は、垂直多関節型ロボット100で広く普及しているものである。部品供給台110は、バラ積みされた部品170が供給される台である。部品供給方法としては、部品供給台110に固定されたパレットに部品170が順次供給される方法の他に、部品170が詰め込まれたパレット単位で交換する方法、及びそれらを組合せた方法がある。
部品供給台110からは3次元ビジョンセンサ150の認識結果を利用して、部品170を一つだけ仮置き台120に取り出す。取り出し方法としては、ロボットハンド(単に「ハンド」と称することもある。)の指が挿入可能な領域を導出して、挿入可能な領域に指を挿入して指を閉じることで部品170を把持して取り出す方法が知られている。他にも、部品170の全体又は一部の特徴部の位置姿勢から、把持位置を計算する方法もある。ここでは、部品供給台110上の部品170同士が接触しているバラ積みの状態から、部品170同士が接触していない状態で、部品170を仮置き台120に置ければ、その手段は問わない。ここで、位置姿勢とは、位置及び姿勢を意味するロボット分野の技術用語であり、剛体を3次元空間上に設定するものである。例えば、位置とは重心など代表点となる1点を設定し、座標値で表現されるものである。姿勢とは、例えば回転変換行列で決めることができるものである。
仮置き台120上の平面に部品170を置くと、特殊な部品形状を除き、部品170の姿勢は有限個の姿勢パターンの何れかの姿勢で安定する。ここで、特殊な部品形状とは、接地面を変えることなく連続的に姿勢を変更できる形状を有する部品170をいい、例えば、球面又は筒状の側面を接地した状態で安定する形状を有する部品170である。仮置き台120で平面上に置かれた部品形状の姿勢は有限個に限定され、また部品形状の姿勢毎に部品170の高さも一定になるので、2次元ビジョンセンサ160で位置姿勢の認識が可能になる。
その後は、2次元ビジョンセンサ160で高精度に部品170の位置姿勢を認識し、整列台140上の予め決められた部品170の最終姿勢に、ロボット100が移動させる。把持方法の関係から最終姿勢で整列台140に直接移動させることができない場合には、部品170を把持可能な持ち替え治具130を利用して、ロボット100が部品170を持ち替えてから、最終姿勢となるように整列台140に移動させる。なお、持ち替え治具130だけでなく、仮置き台120に部品170を置き直して持ち替えてもよい。
図2は実施の形態1によるプログラム生成装置の機能構成図である。ハンド3次元データ200には、対象のシステムで使用するロボットハンドと持ち替え治具130といった、部品170を把持するハンドの形状に関する3次元データが含まれる。ここで、ハンド3次元データ200には、ハンドの把持部の指定、指の移動方向、ハンドの向き等といった、ハンドに関する付加情報が含まれてもよい。
部品形状3次元データ210には、対象のシステムで扱う部品170の形状に関する3次元データが含まれる。こちらにも、部品170の把持可能領域等の部品170に関する付加情報が含まれてもよい。図3はハードウェア構成を説明するための図である。ハンド3次元データ200及び部品形状3次元データ210は、データベースであり、ハードディスクなどの記憶装置301に記憶されている。例えば、入力は作業者による教示による把持方法である。
把持方法算出部220は、ハンド3次元データ200と部品形状3次元データ210とから、各ハンドでの部品170の把持方法を算出して、その把持方法を出力する。部品170の把持方法を算出する方法としては、ハンドと部品170との接触点で囲まれる領域に重心位置が存在するかを確認する方法等、様々な方法が提案されている。また、把持方法算出部220は、作業者からの入力に従って把持方法を算出してもよい。作業者に入力させる方法としては、部品170とハンドとの3次元表示と、その3次元表示内でのハンドの移動手段を提供する方法等がある。何れの方法にせよ、把持方法算出部220は、ハンド3次元データ200と部品形状3次元データ210との入力から、各ハンドでの部品170の把持方法を出力する。このように、把持方法算出部220は、ロボット100のハンドの3次元データ及び3次元形状データから部品170をハンドで把持する把持方法を一つ以上、算出する。なお、把持方法とは、部品170を把持する方法といった狭義の概念だけでは無く、部品170を把持してハンドが適切な把持姿勢をとることを含めて広義の概念である。よって、全文を通じて把持方法には、技術用語としての把持姿勢の概念も含んでいる。
安定姿勢算出部230は、部品形状3次元データ210から、部品170を平面に置いた時の安定姿勢を全て算出して、部品安定姿勢データとして出力する。安定姿勢算出部230は、複数の安定姿勢を算出することになる。安定姿勢の算出方法としては、例えば、部品170を囲む最小体積の凸多面体を導出し、各面を含む平面に重心を射影した時に、射影した点が凸多面体の表面内にあれば安定姿勢とする方法がある。ここで、安定姿勢とは、部品170が静的な安定性を保つことができる姿勢のことである。部品形状3次元データ210から、部品170が取り得る全ての部品安定姿勢データが出力されれば、その方法は問わない。このように、安定姿勢算出部230は、部品170の3次元形状データから部品170が平面上で安定する安定姿勢を算出する。
システム構成データ240は、少なくともハンドが接続される設備の情報が含まれ、加えて、各設備がアクセスできる先方の情報、さらには作業場の環境による制約等が含まれていてもよい。例えば、ロボット100に取付けられたハンドは、部品供給台110、仮置き台120、持ち替え治具130、整列台140といった全ての設備にアクセスが可能である。一方、持ち替え治具130に取付けられたハンドは他の設備にアクセスすることはできず、ロボット100に取付けたハンドからアクセスされる必要がある。システム構成データ240は、データベースであり、記憶装置301に記憶されている。
組合せ可否算出部250について説明する。把持方法算出部220からハンドによる部品170の把持方法と、安定姿勢算出部230から部品170が取り得る全ての部品安定姿勢データと、システム構成データ240からハンドが接続される設備の情報とが、組合せ可否算出部250に入力される。組合せ可否算出部250は、ロボット100と持ち替え治具130との把持方法の組合せにおける持ち替え実現可否と、ロボット100の把持方法と安定姿勢との組合せにおける把持実現可否を算出して、組合せ可否結果として出力する。
持ち替え実現可否の算出では、ロボット100に接続されたハンドの把持方法と、持ち替え治具130に接続されたハンドの把持方法との組合せにおいて、2つのハンドが干渉しなければ、持ち替え可能と判断する。逆に、ハンドが干渉する場合には、持ち替え不可と判断する。また、把持実現可否の算出では、ロボット100に接続されたハンドの把持方法と、安定姿勢との組合せにおいて、部品170が接地している平面にハンドが干渉しなければ、把持可能と判断する。逆に、干渉する場合には把持不可と判断する。把持可能と判定された安定姿勢と把持方法との組合せでは、その把持方法を用いて、その安定姿勢で部品170を置くことも可能である。このように、組合せ可否算出部250は、安定姿勢及び把持方法のいずれか一方と把持方法との組合せ群から、ハンドの接続先の情報を含むシステム構成データ240、安定姿勢、及び把持方法に基づいて、ハンドが干渉しない組合せを一つ以上、算出することになる。換言すれば、組合せ可否算出部250は、安定姿勢及び把持方法のいずれか一方と把持方法との組合せからハンドが干渉しない組合せを算出する
図4は組合せ可否算出部250が出力する組合せ可否結果の例を示す図である。行に記載の状態から、列に記載の状態へ部品170の持ち替え、すなわち、部品170の移動が直接できるか否かを示している。把持方法1、2、3はロボット100に接続されたハンドの把持方法、把持方法4、5は持ち替え治具130に接続されたハンドの把持方法である。安定姿勢1、2、3は部品170の平面上での安定姿勢であり、仮置き台120と整列台40とで共通している。
ここでは、アームを一つ持つロボット100が1台で構成されているロボットを前提にしている。6行目から8行目は仮置き台120からロボット100が部品170を把持する場合を表し、6列目から8列目は整列台140にロボット100が部品170を置く場合を表している。なお、例えば、ロボット100が2台であれば、2台のロボット100を区別して、追加されたロボット100に対応した把持方法が追加されることになる。
ロボット100の把持方法と持ち替え治具130の把持方法との間で、部品170を直接持ち替え可能な組合せは「○」とし、干渉して部品170を直接持ち替えることができない組合せは「×」としている。また、ロボット100の把持方法と仮置き台120又は整列台140の安定姿勢との組合せにおいて、部品170を直接把持可能な組合せは「○」とし、平面に干渉して部品170を直接把持することができない組合せは「×」としている。
例えば、ロボット100が複数ある場合には、複数のロボット100間で部品170を直接持ち替えることもある。より具体的には、一方のロボット100の把持方法Aと他方のロボットの把持方法Bとで、干渉せずに部品170を直接持ち替えることができれば、「○」となる。同様に、一台のロボット100であっても、アームが複数ある場合には、アーム毎に把持方法を規定することになる。
また、持ち替え治具130は複数あってもよいが、持ち替え治具130の把持方法が直接変化することはあり得ない。さらに、持ち替え治具130で部品170が把持された状態から直接、整列台140の安定姿勢に移動することはあり得ない。同様に、仮置き台120に置かれた部品170が持ち替え治具130又は整列台140に直接移動することもない。以上のことから、4行4列から8行8列までは全て「−」となっている。このように、組合せてとしては考えられても、部品170を直接持ち替えることができない、すなわち、部品170が持ち替えずに直接移動できない場合を「×」として表示し、組合せとして意味がない場合は「−」としている。
また、把持した時のハンド間の干渉に限らずに、把持するまでの移動時の干渉を考慮してもよい。移動とは、例えば、ハンドの爪の開閉、把持位置までのハンドの移動である。把持位置までの移動方向は、単純にはハンドの基部から先端方向であるが、それ以外にも作業者が設定してもよい。
持ち替え経路算出部260では、組合せ可否算出部250が出力する組合せ可否結果から、各組合せの一方を初期状態に、もう一方を最終状態とする経路において、移動回数が最小となる経路を全て算出して、持ち替え経路群として出力する。
図5は実施の形態1による移動回数を説明する組合せの一例を示す図である。より具体的には、把持方法及び安定姿勢の組合せにおける、持ち替え経路算出部260で算出される部品170の最小の移動回数を纏めた図である。i行j列の項目は、iの状態からjの状態までの最低移動回数を表現している。6行目から8行目は、仮置き台120の安定姿勢からの移動を表し、6列目から8列目は整列台140の安定姿勢への移動を表している。
ここで、図5の移動回数の数え方について説明する。図4と図5とを比較すると、図4で組合せが「○」となっている箇所は、部品170を持ち替えることなく直接、移動することができるので、図5では全て移動回数は1回になっている。また、把持方法1から把持方法1へのように同じ把持方法の場合、部品170は移動しないことになるので、移動回数は0回になっている。一方、仮置き台120の安定姿勢1から整列台140の安定姿勢1へとなる組合せ(図4では「−」の箇所)では、例えば、仮置き台120の安定姿勢1から把持方法1へ、把持方法1から整列台140の安定姿勢1へと、図4で組合せが「○」となっている箇所を2回介することで、部品170を移動させることができるので、移動回数は2回となる。さらに、図4で「×」となっている箇所でも、「○」となっている組合せ(経路)を複数回介することで、部品170を移動させることができる。
例えば、1行2列目は、把持方法1から把持方法4へ、把持方法4から把持方法2へと至るので、移動回数としては2回となる。6行6列は、仮置き台120の安定姿勢1から把持方法1へ、把持方法1から整列台140の安定姿勢1へと至るので、移動回数としては2回となる。6行8列は、仮置き台120の安定姿勢1から把持方法1へ、把持方法1から把持方法4へ、把持方法4から把持方法2へ、把持方法2から整列台140の安定姿勢3に至るので、移動回数としては4回となる。以上のように、移動回数の数え方は、最小となる図4の「○」の組合せ(経路)の回数となる。
最小の移動回数を実現する経路は複数ある。例えば、6行8列は、上記の他に、仮置き台120の安定姿勢1から把持方法3、把持方法5、把持方法2と順番に経由して、整列台140の安定姿勢3に至るので、経路が異なるが、移動回数としては同じ4回となる。持ち替え経路算出部260では、全ての初期状態と最終状態との組合せにおいて、最小の移動回数となる全ての経路を算出して、持ち替え経路群として出力する。
ここで、移動回数が最小となる経路を抽出しているが、移動時間が短くなる経路を抽出してもよい。各移動が単純で、ロボット100の移動時間がどの移動時間でも殆ど同じ場合には、移動回数で移動時間を近似することができる。ところが、複雑な移動が含まれる場合、単純な移動の場合と比較して移動時間がより大きくなる。このような場合には、移動回数だけでは移動時間を近似することは困難である。そこで、最小の移動時間を実現する経路と、その移動時間からの差が小さい経路を抽出してもよい。移動時間の差は、何秒といった絶対値でも良いし、何%といった割合でもよい。
持ち替え経路算出部260は、各組合せの初期状態から最終状態までの経路において、部品170の移動回数が最小となる経路を全て算出するものである。前段落でも説明したように、部品170の移動回数が最小となる経路の群が、必ずしも部品170の移動時間が最小となる経路を含んでいるとは限らない。このため、持ち替え経路算出部260は、移動回数ではなく、移動時間を算出して、最短の移動時間から所定の移動時間内に移動できる経路を全て算出するものでもよい。ここで、所定の移動時間とは、最短の移動時間に対して何秒といった絶対値であったり、最短の移動時間の何%といった割合であったりする。また、この場合、図5の代わりに、又は図5の移動回数の情報と組み合わせて、移動時間の情報を持つことになる。このように、持ち替え経路算出部260は、組合せ可否算出部250で算出された組合せを用いて部品170の持ち替え経路を算出することになる。
姿勢データ270は、仮置き台120上で取扱う部品170の姿勢である投入姿勢データと、最終的に整列台140上で整列させる姿勢である整列姿勢データの両方が設定されている。姿勢データ270は、部品170の投入姿勢データ及び整列姿勢データのデータベースであり、記憶装置301に記憶されている。
経路群算出部280は、姿勢データ270のデータ及び持ち替え経路算出部260が算出する経路を基に、指定された投入姿勢から最終的な整列状態へ至る持ち替え経路群から、適切な経路の組合せを経路群として算出して出力する。ここで適切であるとは、例えば、教示点の数が最小となる経路の組合せのことをいう。別の言葉で表現すると、図4で「○」が埋められている組合せの内、使用される組合せが最小となる経路の組合せである。このように、経路群算出部280は、部品170の投入姿勢及び整列姿勢を指定する投入及び整列姿勢データに基づいて、持ち替え経路から教示点の数が最小となる経路を経路群として算出することになる。
プログラム生成部290では、経路群算出部280が出力する経路群を実現するロボットプログラムを生成して出力する。なお、経路群算出部280が出力する適切な経路の組合せである経路群は、1つが算出されるとは限らない。経路群算出部280が複数の経路群を出力することもあり、この場合、プログラム生成部290では、それぞれの経路群にあわせたロボットプログラムを生成して出力することになる。複数のロボットプログラムが生成される場合には、例えば、教示作業者がどのロボットプログラムを適用するか、適宜選択すればよい。
把持方法算出部220、安定姿勢算出部230、組合せ可否算出部250、持ち替え経路算出部260、経路群算出部280、及びプログラム生成部290での演算は、図3のプロセッサ300で演算されるものであり、プログラム生成部290はプログラムを出力することになる。
ロボットプログラムは、ロボット100の移動及び信号処理の流れを表現するものであり、例えば、移動の目標位置は位置変数として扱われるのが一般的である。この位置変数は教示作業によって現物合わせで入力される。このため、位置変数は、例えば、初期値として全て0が入力されており、実際にロボット100を運転させることはできないものである。
本発明では、プログラムで利用されている位置変数は、異なる移動経路であっても、同じ目標位置であれば共有される。図4及び図5を用いた例では、仮置き台120の安定姿勢3から整列台140の安定姿勢1に移動させる移動経路と、仮置き台120の安定姿勢3から整列台140の安定姿勢3に移動させる移動経路とでは、どちらの移動経路にも含まれるものとして、仮置き台120の安定姿勢3をロボット100の把持方法2で把持する目標位置は、共通の教示点として共有する。また、ロボット100の把持方法1から持ち替え治具130の把持方法4に部品170を渡す時のロボット100の目標位置と、持ち替え治具130の把持方法4からロボット100の把持方法1に部品170を渡す時のロボット100の目標位置とでは、作業は異なっているも同じ目標位置でよく、共通の教示点として共有する。
図6はプログラム生成部290が出力するロボットプログラムのフローチャートの例である。初期化S501は、ロボットプログラムの起動時に一度だけ実行される処理である。変数及びパラメータの初期化、初期位置への移動等の処理が行われる。次に、3次元ビジョンセンサ認識処理S502は、3次元ビジョンセンサ150で部品供給台110のバラ積み部品170を認識し、ロボット100が部品170を把持するための目標位置姿勢を計算する処理である。また、バラ積みからの取出しS503は、3次元ビジョンセンサ認識S502の結果を基に、バラ積み状態の部品170から、部品170を取り出して仮置き台120に投入する処理である。説明を簡単にするため、ここでは部品170が一つだけ取り出されるとする。
2次元ビジョンセンサ認識処理S504は、仮置き台120に設置された部品170の位置姿勢を2次元ビジョンセンサ160で認識する処理である。次に、移動経路選択S505は、部品170の位置姿勢の認識結果から、部品170がどの安定姿勢であるかを判定し、仮置き台120から整列台140までの移動経路を選択する処理である。経路群算出部280が出力した経路群の内、2次元ビジョンセンサ160で認識した安定姿勢から始まる移動経路を選択する処理である。さらに、部品整列S506は、選択された移動経路で、仮置き台120上の部品170を整列台140に移動させる一連の処理である。部品整列S506で部品170を整列させた後は、3次元ビジョンセンサ認識処理S502に戻る。
このフローチャートでは、説明を簡単にするため、バラ積み状態から部品170を一つだけ仮置き台120に取り出せることを前提にしている。ところが、バラ積みからの取出しS503の工程で、一度に複数の部品170を取り出すことは、よくあることである。このようなことがあるため、処理の流れとしては、エラーリカバリ―を含めて様々なバリエーションがある。
例えば、複数の部品170を取り出すことを前提に、部品整列S506の後は2次元ビジョンセンサ認識処理S504に戻り、認識した結果、仮置き台120に部品170が存在しない場合には、3次元ビジョンセンサ認識処理S502に戻るといったフローもある。本発明は、部品170の位置姿勢が確定された後に、部品170の移動プログラムを生成させることに主眼があり、移動プログラム周辺のプログラム構成は、どのようなものであってもよい。
最後に作業者は、プログラム生成部290が出力したプログラムで利用されている位置変数を教示し、ロボット100が移動可能な教示点とすることで、運転可能なロボットプログラムが完成する。
以上の説明は、説明を簡単にするために、適用するロボットシステムを限定し、発明内の各機能の処理も限定したが、これに限定されるものではない。例えば、複数のロボット100を利用したロボットシステムとしてもよい。
持ち替え治具130等を利用して、一台のロボット100で複数の工程をこなすと、部品170あたりの平均整列時間が伸びることになる。例えば、図5では、仮置き台120の安定姿勢1を整列台140上の安定姿勢3で整列させるためには、持ち替え治具130を利用しているため、4回の移動を伴っている。仮に、この工程を2台のロボット100でパイプライン処理すれば、システム全体としては、1台のロボット100が2回の移動で整列するのと同じ時間で整列させ続けることができる。このように、複数のロボット100を用いれば、システムのスループットを向上することができる。
このように複数のロボット100を利用する場合には、システム構成データ240で設定された、各ロボット100のアクセス可能先(ハンドの接続先)が異なることになる。ロボット100が1台の構成では、そのロボット100は全ての台(部品供給台110、仮置き台120、整列台140)及び持ち替え治具130にアクセスできたが、複数のロボット100で分業するようなシステムを組む場合には、各ロボット100のハンドの接続先が異なることになる。また、他のロボット100との持ち替えも発生するため、アクセス先としては部品供給台110、仮置き台120、整列台140、持ち替え治具130に加えて、他のロボット100も追加されることになる。システム構成データ240としては、これらのハンドの接続先の情報が必要となる。
組合せ可否算出部250では、各ハンドのアクセス先を考慮して、アクセスが不可能な組合せにおいては、組合せ不可と判断する。持ち替え経路算出部260と経路群算出部280との処理は変わらない。また、プログラム生成部290は、複数のロボット100のプログラムを出力することになるが、1台のロボット100の処理と同様の出力となる。
図1では、適用するロボット100システムとして、3次元ビジョンセンサ150と2次元ビジョンセンサ160とを、それぞれ部品供給台110と仮置き台120の上に固定しているものとして説明した。これに拘ることはなく、別のハードウェアを利用するのではなく、2次元ビジョンセンサ160の処理を3次元ビジョンセンサ150で実施してもよい。また、それぞれのカメラ(3次元ビジョンセンサ150、2次元ビジョンセンサ160など)を台の上に固定するのではなく、上空に取付けた駆動部に取付けてもよいし、ロボット100に取付けて移動可能としてもよい。これらカメラの設置構成を問わず、本発明は適用可能である。
組合せ可否算出部250では、システム構成データ240に含まれるハンドの接続先情報を基に、可否を判断する組合せを限定していた。例えば、図4では、ロボット100に取付けられたハンドの把持方法間と、持ち替え治具130に取付けられたハンドの把持方法間での組合せにおける可否は算出していなかった。
ロボット100が複数の場合には接続先のロボット100によってアクセス可能先は異なっており、アクセス不可(持ち替え実現の可否)の組合せも、当然、図4の場合とは異なことになる。そこで、どこに接続されているかの制約を無視して、全ての把持方法及び安定姿勢による組合せで可否の判断を実施してもよい。もっとも、同じハンドをシステム内の複数の機器で利用する場合には、接続先が異なるハンド毎に組合せ可否を算出するのではなく、ハンド毎に算出した方が算出する組合せが少なくなることがある。
この場合、システム構成情報は持ち替え経路算出部260で初めて利用されることになる。持ち替え経路算出部260では、接続先によってハンドのアクセス可能先が変わるので、ハンド接続先の情報が必要となるからである。
これまでは、部品170が実現し得る全ての安定姿勢に対して、仮置き台120から最終の整列姿勢への移動経路を含むプログラムの生成方法を説明してきた。プログラムで生成する移動経路について、自由度があってもよい。
先ず、安定姿勢算出部230が導出した全ての安定姿勢を取扱う必要がない場合がある。部品170によっては、非常に不安定で、現実的には仮置き台120上で現れない安定姿勢が存在する場合がある。例えば、ペンを立たせることはできるが、その姿勢は非常に不安定であり、仮置き台120に乱暴に投入した場合には、その発生確率は無視できる程に小さい。そのような姿勢に対するプログラムの作成・調整は無駄な作業になる。
そのため、非常に不安定な安定姿勢については、安定姿勢算出部230で安定姿勢から除去してもよい。小さな外力を与えた場合であっても、別の安定姿勢に遷移する安定姿勢を除外するものである。例えば、ペンのような細長い形状の部品を立てたような安定姿勢である。また、安定姿勢算出部230で除去する以外に、姿勢データ270で除外してもよい。
また、移動経路の初期状態として安定姿勢以外を設定してもよい。これによって、ロボット100が部品170を把持した状態からの移動経路が含まれたプログラムが出力される。例えば、確率的な手法で部品170を把持し、その把持状態を画像認識するようなシステムで利用される。
さらに、移動経路の最終状態として、一つの安定姿勢だけでなく、複数の安定姿勢、又は複数の把持状態を設定してもよい。この時、全ての初期状態と最終状態との組合せを移動経路としてプログラムを生成してもよいし、姿勢データ270で、取扱う初期状態と最終状態との組合せを設定してもよい。
本実施の形態で記載したロボットシステムの形態及び各機能の処理は一例であり、これに限定されるものではない。また、作業者が入力する外部からのデータ入力で、一部の機能を補うこともできる。
また、経路群算出部280が出力した経路群を作業者に提示して、作業者が移動経路を選択・修正するようにしてもよい。他の機能に関しても出力結果及び候補を作業者に提示し、作業者が選択又は修正してもよい。
以上、本発明のロボットプログラム生成装置は、ハンドと部品170の3次元形状データから部品170の把持方法を出力する把持方法算出部220と、3次元形状データから部品170の平面上で安定する姿勢を算出して、部品170の安定姿勢として出力する安定姿勢算出部230と、少なくともハンドの接続先情報が含まれるシステム構成データ240と、部品170の把持方法及び部品170の安定姿勢から、2つの把持方法間の組合せ及び把持方法の内の一つと部品170の安定姿勢の内の一つとの間の組合せの、少なくともどちらか一方の組合せにおける、ハンドの干渉について判定して、組合せ可否を出力する組合せ可否算出部250と、組合せ可否から、部品170の把持方法及び安定姿勢の、少なくともどちらか一方の組合せにおける、全ての持ち替え経路を算出して出力する持ち替え経路算出部260と、部品170の投入姿勢及び最終の整列姿勢を指定する姿勢データ270を基に、持ち替え経路から、教示点の数が最小となる経路の組合せを経路群として出力する経路群算出部280と、経路群からロボットのプログラムを出力するプログラム生成部290とを備えている。
換言すれば、本発明のロボットプログラム生成装置は、部品の3次元形状データから部品が平面上で安定する安定姿勢を算出する安定姿勢算出部と、ハンドの3次元データ及び3次元形状データから部品をハンドで把持する把持方法を算出する把持方法算出部と、当該ロボットによる把持方法と当該ロボット以外による把持方法及び安定姿勢との組合せ群から、ハンドの接続先の情報を含むシステム構成データ、安定姿勢、及び把持方法に基づいて、ハンドが干渉しない組合せを算出する組合せ可否算出部と、組合せ可否算出部で算出された組合せを用いて部品の持ち替え経路を算出する持ち替え経路算出部と、部品の投入姿勢及び整列姿勢を指定する姿勢データに基づいて、持ち替え経路から教示点の数が最小となる経路を経路群として算出する経路群算出部と、ロボットのプログラムを経路群に基づいて生成するプログラム生成部とを備えたので、複数の移動経路において教示点を共有することで、教示点数の少ないロボットプログラムを生成することができる。これによって、作業者による教示作業の調整工数を減らすことができる。このように、組合せ可否算出部は、安定姿勢及び把持方法のいずれか一方と把持方法との組合せ群からハンドが干渉しない組合せを一つ以上、算出している。
実施の形態2.
実施の形態1では、ロボットプログラムを生成した後に、作業者が教示点を教示していたが、プログラムで教示点のデータを生成してもよい。ここでは、実施の形態1との相違点を中心に説明する。説明が不足する箇所については、実施の形態1と同様の構成である。
図7は本発明の実施の形態2によるプログラム生成装置の機能構成図である。説明を簡単にするため、先ずは、ロボット100が1台の場合で説明する。なお、図において、同一の符号を付したものは、同一またはこれに相当するものであり、このことは明細書の全文、図面の全図において共通することである。さらに、明細書全文に表れている構成要素の形態は、あくまで例示であってこれらの記載に限定されるものではない。
システム構成データ240に実施の形態1の情報に加えて、仮置き台120、整列台140、持ち替え治具130の位置情報を設定する。システム構成データ240は、ハンドの接続先の情報の他に、ハンドが作業をする作業位置のデータを含むことになる。これらの位置情報はロボット100座標系の基、ロボット100のベース位置からの相対位置で設定される。
教示点出力部600は、プログラム生成部290が出力したプログラムで使用されている教示点をロボット100の座標系の基で計算する。まず、出力されたプログラムの教示点が、どの位置の作業であるかを経路情報から抽出する。ロボット100の作業位置とは、仮置き台120、整列台140、持ち替え治具130のことである。この作業位置の位置情報に部品170が設置された場合に、経路情報で設定されている把持方法を実現した時のロボット100の位置姿勢データを算出し、教示点として出力する。なお、教示点出力部600はプロセッサ300で演算されるものであり、教示点出力部600は教示点を出力することになる。
ここで、ハンドの位置姿勢を実現する際に、ロボット100の位置姿勢が複数あり、ロボット100の位置姿勢データが一意に定まらないこともある。このような場合には、そのハンドの位置を実現するロボット100の位置姿勢の何れかを教示点として出力するようにしてもよいし、複数の教示点の候補から作業者が選択できるように提示してもよい。
作業位置が、平面ではなく持ち替え治具130の場合には、持ち替え治具130の位置と、持ち替え治具130の把持方法を基に、部品170の設置位置姿勢が決まる。
次に、複数のロボット100を利用する場合には、システム構成データ240に各ロボット100の設置位置を含め、そのロボット100からの相対位置で教示点データを計算する。また、ロボット100間で受け渡しを行う場合には、少なくともどちらか一方のロボット100の受渡し作業時の位置姿勢をシステム構成データ240で設定する。
図7では、プログラム生成部290でプログラムを生成した後に、教示点出力部600で教示点データを出力したが、プログラム生成部290より前の段階で出力してもよい。作業者が作業位置と把持方法とを設定することで、教示点データを出力することは可能である。このため、把持方法算出部220で把持方法が設定された後であれば、作業者からの任意の要求タイミングで教示点データは出力可能だからである。
以上、本実施の形態によれば、システム構成データ240で作業位置のデータを設定し、作業位置に部品170があるとして把持方法を実現するハンドの位置を計算し、教示点データを出力する移動経路教示点出力部600を備えたことで、教示作業を省力できる効果がある。
換言すれば、本発明のロボットプログラム生成装置は、部品の3次元形状データから部品が平面上で安定する安定姿勢を算出する安定姿勢算出部と、ハンドの3次元データ及び3次元形状データから部品をハンドで把持する把持方法を算出する把持方法算出部と、当該ロボットによる把持方法と当該ロボット以外による把持方法及び安定姿勢との組合せ群から、ハンドの接続先の情報を含むシステム構成データ、安定姿勢、及び把持方法に基づいて、ハンドが干渉しない組合せを算出する組合せ可否算出部と、組合せ可否算出部で算出された組合せを用いて部品の持ち替え経路を算出する持ち替え経路算出部と、部品の投入姿勢及び整列姿勢を指定する姿勢データに基づいて、持ち替え経路から教示点の数が最小となる経路を経路群として算出する経路群算出部と、ロボットのプログラムを経路群に基づいて生成するプログラム生成部とを備えたので、複数の移動経路において教示点を共有した、教示点数の少ないロボットプログラムを生成することができる。また、教示点が出力されるので、作業者の調整工数を減らすことができる。なお、組合せ可否算出部は、安定姿勢及び把持方法のいずれか一方と把持方法との組合せ群からハンドが干渉しない組合せを一つ以上、算出している。
実施の形態3.
実施の形態2では教示点のデータを生成していたが、教示点でロボット100が位置姿勢をとれるかの可否を判定して、教示点を出力してもよい。ロボット100が教示位置姿勢をとれない(実現できない)ことがあるからである。ここでは、実施の形態1及び2との相違点、特に実施の形態2との相違点を中心に説明する。説明が不足する箇所については、実施の形態1及び2と同様の構成である。
実施の形態1及び2を実施しようとしても、ロボット100が教示位置姿勢をとることができないことがある。分かりやすい例として、台の上にある部品170が遠すぎてロボット100のハンドが届かない場合がある。その他にも、ロボット100の関節角度が実現できない角度となる場合がある。ロボット100が6自由度を有していても、全ての関節で360度の可動領域を有するわけではない。また、ロボット100の一部がロボット100本体内に入り込むような間接角度の組合せも存在する。そのため、ロボット100の関節によっては、可動領域が制限されるのが通常である。また、ロボット100毎にこの可動領域も異なり、使用を予定しているロボット100固有の制約条件になる。さらに、ここに床面及び壁といった外部環境による動作可能領域の制約が加わることもある。このように、教示点でロボット100が教示位置姿勢をとれない(実現できない)ことがある。
図8は本発明の実施の形態3によるプログラム生成装置の機能構成図である。使用するロボット100に関連する情報を基に、教示点となる位置でロボット100が教示位置姿勢を実現できるかを教示点判定部700で判定している。なお、教示点判定部700は、図8の組合せ可否算出部250の工程以降で行ってもよい。
もっとも、教示点判定部700の工程が組合せ可否算出部250の工程の前にあれば、教示点判定部700の判定結果を組合せ可否算出部250の工程でも反映させることができるので、より作業者による教示作業の省力化を図ることができる。また、教示点出力部601も教示点判定部700の工程以降であれば、どこであってもよい。ロボット100に関連する情報には、ハンドの接続先の情報及びハンドが作業をする作業位置のデータを含むシステム構成データ240と、安定姿勢と、把持方法が含まれる。
使用するロボット100の情報、少なくともハンドの接続先の情報、及びハンドが作業をする作業位置のデータをシステム構成データ240に設定し、教示点判定部700で教示点を実現できるかの可否を判定する。この他にも、システム構成データ240には、使用を予定しているロボット100が有する固有の制約条件、必要に応じて外部環境による制約が含まれることもある。
教示点判定部700の判定結果を教示点出力部601で出力することになる。教示点判定部700の判定結果として、例えば、実現できない(否の)場合には、教示点出力部601で作業者にエラーを出力し、実現できる(可の)場合には、教示点を出力することになる。なお、教示点判定部700及び教示点出力部601はプロセッサ300で演算されるものである。
以上のように、システム構成データ240は、ハンドの接続先の情報及びハンドが作業をする作業位置のデータを含み、作業位置に部品170があるときに教示点となる位置で、ロボット100が教示位置姿勢とれるかの可否を判定する教示点判定部700を備えたので、システム構成の実現性を事前に検証できるようになる。
ここで、教示点判定部700の判定方法の例について詳述する。図9は平面となる作業位置(例えば、仮置き台120)にある部品170の例を示す図である。図9は仮置き台120上にある部品170を上方からみた状態の例であり、図9の(a)から(i)まで、部品170を平面となる仮置き台120上で、平面に垂直な軸(法線)で右側に45度毎に回転させたものである。一周することで部品170は、図9の(a)と(i)とで同じ位置となる。図9の(a)と(i)とは、平面内で回転させた設置角度が同じになっている。
教示点判定部700は、システム構成データ240で指定した作業位置で部品170を回転させながら、教示点となる位置でロボット100による教示位置姿勢の実現可否を判断する。具体的には、仮置き台120に部品170を投入した場合には、図9のように、部品170を平面上で平面に垂直な軸(法線)で回転させる。部品170を把持する位置姿勢をロボット100が常に実現できるかを判定するためには、部品170を平面内で回転させて判定する必要があるからである。平面内で回転させた全範囲の設置角度で把持方法を実現できるかで可否を判定する。
教示点判定部は、平面となる作業位置に部品170がある場合には、部品170を平面に垂直な軸(法線)で回転させた全範囲でロボット100が教示位置姿勢をとることができる場合に可と判定することになる。判定が可であれば、全範囲でロボット100が教示位置姿勢をとることができるので、図9の例では、(a)から(i)までのどの設置角度であっても、当然、ロボット100は教示位置姿勢をとることができる。このようにして、使用するロボット100の位置姿勢の実現可否を判定することで、システム構成の実現性を事前に検証できる効果が得られる。
このように、本発明のロボットプログラム生成装置は、部品の3次元形状データから部品が平面上で安定する安定姿勢を算出する安定姿勢算出部と、ハンドの3次元データ及び3次元形状データから部品をハンドで把持する把持方法を算出する把持方法算出部と、当該ロボットによる把持方法と当該ロボット以外による把持方法及び安定姿勢との組合せ群から、ハンドの接続先の情報を含むシステム構成データ、安定姿勢、及び把持方法に基づいて、ハンドが干渉しない組合せを算出する組合せ可否算出部と、組合せ可否算出部で算出された組合せを用いて部品の持ち替え経路を算出する持ち替え経路算出部と、部品の投入姿勢及び整列姿勢を指定する姿勢データに基づいて、持ち替え経路から教示点の数が最小となる経路を経路群として算出する経路群算出部と、ロボットのプログラムを経路群に基づいて生成するプログラム生成部とを備えている。なお、組合せ可否算出部は、安定姿勢及び把持方法のいずれか一方と把持方法との組合せ群からハンドが干渉しない組合せを一つ以上、算出している。
特に、教示点判定部は、平面となる作業位置に部品がある場合には、部品を平面に垂直な軸で回転させた全範囲でロボットが教示位置姿勢をとることができる場合に可と判定する。これらによって、複数の移動経路において教示点を共有した、教示点数の少ないロボットプログラムを生成することができる。また、使用するロボットの位置姿勢の実現可否を判定することで、システム構成の実行性を判断できる。
実施の形態4.
実施の形態3では、教示点判定部700は、平面となる作業位置に部品170がある場合には、部品170を平面に垂直な軸で回転させた全範囲でロボット100が教示位置姿勢をとることができる場合に可と判定した。実施の形態4では、部品170を平面に垂直な軸で回転させた全範囲ではなく、所定の設置角度の範囲内であれば、ロボット100が教示位置姿勢をとることができる場合は、ロボット100が教示位置姿勢をとることができる場合として、把持が実現できる把持方法を組合せたプログラムを生成してもよい。
図10は本発明の実施の形態4によるプログラム生成装置の機能構成図である。教示点判定部701は教示点判定部700と異なり、部品170を平面に垂直な軸で回転させた全範囲ではなく、所定の設置角度の範囲内であれば、教示点となる位置でロボット100が教示位置姿勢とれる場合に、所定の設置角度の範囲内については可と判定することになる。その他の点については、教示点判定部701と教示点判定部700とで異なる点は無い。
把持方法と安定姿勢の組合せ毎に、例えば、仮置き台120上で部品170を回転させたとき、ロボット100が把持方法を実現できる部品170の回転範囲を算出する。教示点判定部701は、平面となる作業位置に部品170がある場合には、部品170を平面に垂直な軸(法線)で回転させて、教示点となる位置でロボット100が教示位置姿勢をとれる設置角度の範囲を算出して可と判定することになる。
例えば、図9の例では、(b)から(d)までと、(f)から(h)までとであれば、部品170を平面に垂直な軸で回転させてロボット100が教示位置姿勢をとることができならば、該当の設置角度の範囲で教示点判定部701は可と判定することになる。このように、設置角度の範囲は360度の中でも、複数の範囲で可に該当することもある。また、図9の例では45度単位であったが、これは例示に過ぎず、設置角度の範囲を決定する際には、より細かな単位、あるいはより大きな単位でも設定することができる。
把持経路算出部800は、教示点判定部701で可となる設置角度の範囲にある部品170をハンドで把持する経路を算出する。部品170の安定姿勢毎に、平面内で回転させた全範囲の設置角度において、ロボット100が位置姿勢を実現できる設置角度が特定できているので、把持方法の組合せを算出することができる。
把持経路算出部800は、平面となる作業位置(例えば、仮置き台120)の部品170について、教示点判定部701の判定結果で可となる設置角度の部品170をハンドで把持する経路を算出して、把持経路を算出する。これによって、一律に否とせずに、所定の範囲内にある設置角度の部品170であれば、把持可能な把持方法を用いた移動経路を選択するプログラムを生成することができる。
教示点出力部602は、教示点出力部600,601と同様の働きをするもので、教示点をロボット100の座標系の基で計算し出力する。また、教示点出力部602は、教示点判定部701の工程以降のどこにあってもよい。なお、教示点判定部701、把持経路算出部800及び教示点出力部602はプロセッサ300で演算されるものである。
以上、教示点判定部は、平面となる作業位置に部品がある場合には、部品を平面に垂直な軸で回転させて可となる設置角度を算出し、教示点判定部で可となる設置角度の部品をハンドで把持する経路を算出する把持経路算出部を備えるので、平面となる作業位置で部品170が回転した際に、一つの把持方法だけでは対応できない場合でも、複数の把持方法を組合せて対応するプログラムを出力することができる。
このように、本発明のロボットプログラム生成装置は、本発明のロボットプログラム生成装置は、部品の3次元形状データから部品が平面上で安定する安定姿勢を算出する安定姿勢算出部と、ハンドの3次元データ及び3次元形状データから部品をハンドで把持する把持方法を算出する把持方法算出部と、当該ロボットによる把持方法と当該ロボット以外による把持方法及び安定姿勢との組合せ群から、ハンドの接続先の情報を含むシステム構成データ、安定姿勢、及び把持方法に基づいて、ハンドが干渉しない組合せを算出する組合せ可否算出部と、組合せ可否算出部で算出された組合せを用いて部品の持ち替え経路を算出する持ち替え経路算出部と、部品の投入姿勢及び整列姿勢を指定する姿勢データに基づいて、持ち替え経路から教示点の数が最小となる経路を経路群として算出する経路群算出部と、ロボットのプログラムを経路群に基づいて生成するプログラム生成部とを備えている。なお、組合せ可否算出部は、安定姿勢及び把持方法のいずれか一方と把持方法との組合せ群からハンドが干渉しない組合せを一つ以上、算出している。
特に、教示点判定部は、平面となる作業位置に部品がある場合には、部品を平面に垂直な軸で回転させてロボットが教示位置姿勢をとることができる設置角度を算出し、教示点判定部で教示位置姿勢をとることができる設置角度に部品がある場合には、ハンドで部品を把持する経路として算出する把持経路算出部を備えているので、平面となる作業位置で部品が回転した時に、一つの把持方法だけでは対応できない場合にも、複数の把持方法を組合せて対応するプログラムを出力することができる。
実施の形態5.
実施の形態5は、実施の形態1から実施の形態4のいずれか一つの実施の形態に対して、ロボットの運転状況に応じて、ハンドの移動速度を制限した上で、保守作業を要求するプログラムを生成するものが追加されたものである。
バラ積み部品170の整列システムでは、部品170の取りこぼしなどの作業失敗なしに運転し続けることは困難であり、適切なタイミングで保守作業を実施する必要がある。バラ積み部品170の取り扱いでは、部品170の位置姿勢の不確定性が高く、また、不良部品170が混入している可能性も高い。このため、一般的な化設備のように、100%に近い作業成功率を実現するのは困難である。
このため、作業を失敗する度に作業者による復旧作業を行う運用は効率が悪く、ある一定量の失敗は許容して運転を続行するシステムが要求される。ここで、許容する失敗とは、部品170を移動中に落とすなど、他の部品170を整列させる作業には支障をきたさない失敗を指す。
もっとも、あまりにも多くの部品170を落として、堆積した場合には問題が発生する。また、部品170管理の観点から、落とした部品170の種類と数を把握することが重要である。さらに、システム内のどの工程で部品170を落としたが分かれば、保守作業者による部品170の回収も容易となる。
図11は本発明の実施の形態5によるプログラム生成装置の機能構成図である。ここでは、基本形の実施の形態である実施の形態1に対して、保守作業プログラム生成部900と運転状況データ910とが追加されている。運転状況データ910は、ロボットの運転状況に関するデータベースであり、記憶装置301に記憶されている。また、保守作業プログラム生成部900での演算は、プロセッサ300で演算されるものであり、保守作業プログラム生成部900はプログラムを出力することになる。
保守作業プログラム生成部900は、プログラム生成部290が出力したロボットプログラムに、保守作業を要求するプログラムを生成して出力するものでる。保守作業プログラム生成部900の出力は、プログラム生成部290が生成するプログラムに追加してプログラムを出力してもよい。追加するプログラムとしては、運転履歴が一定の条件を満たしたら、ロボット100の移動速度を安全速度に制限し、保守作業を要求するものである。
ここで、運転履歴の一定条件とは、例えば、前回の保守作業から、指定した回数の作業失敗が発生するなどである。作業失敗は、例えば、2次元ビジョンセンサ160による仮置き台120の認識、又はロボット100の力覚センサによる把持部品170の監視、整列台140の整列部品170の確認等で検知できる。また、安全速度とは、例えば、手先合成速度が250mm/sec以下といった教示作業時の移動速度であり、作業者がロボット100との衝突を回避することが容易な速度である。
これによって、ロボット100の移動速度を制限することで、ロボット100を運転停止することなく保守作業を安全に行うことができる。また、保守作業の要求とは、落下させた部品170除去の保守作業者への要求である。このとき、作業失敗を検知したときの部品170の種別と、想定される落下場所等の情報を付加してもよい。保守作業が完了した後は、移動速度の制限を解除して、運転を継続すればよい。
本発明のロボットプログラム生成装置は、部品の3次元形状データから部品が平面上で安定する安定姿勢を算出する安定姿勢算出部と、ハンドの3次元データ及び3次元形状データから部品をハンドで把持する把持方法を算出する把持方法算出部と、当該ロボットによる把持方法と当該ロボット以外による把持方法及び安定姿勢との組合せ群から、ハンドの接続先の情報を含むシステム構成データ、安定姿勢、及び把持方法に基づいて、ハンドが干渉しない組合せを算出する組合せ可否算出部と、組合せ可否算出部で算出された組合せを用いて部品の持ち替え経路を算出する持ち替え経路算出部と、部品の投入姿勢及び整列姿勢を指定する姿勢データに基づいて、持ち替え経路から教示点の数が最小となる経路を経路群として算出する経路群算出部と、ロボットのプログラムを経路群に基づいて生成するプログラム生成部と、ロボットの運転状況データに基づきロボットの移動速度を制限し、ロボットの保守作業を要求する保守作業プログラムを生成する保守作業プログラム生成部とを備えたので、保守作業者が運転状況から保守必要性を確認し、ロボットシステムを停止して保守する場合と比較して、ロボットシステムの運転効率を高めることができる。なお、組合せ可否算出部は、安定姿勢及び把持方法のいずれか一方と把持方法との組合せ群からハンドが干渉しない組合せを一つ以上、算出している。
100 ロボット、110 部品供給台、120 仮置き台、130 持ち替え治具、140 整列台、150 3次元ビジョンセンサ、160 2次元ビジョンセンサ、170 部品、200 ハンド3次元データ、210 部品形状3次元データ、220 把持方法算出部、230 安定姿勢算出部、240 システム構成データ、250 組合せ可否算出部、260 持ち替え経路算出部、270 姿勢データ、280 経路群算出部、290 プログラム生成部、300 プロセッサ、301 記憶装置、600、601、602 教示点出力部、700、701 教示点判定部、800 把持経路算出部、900 保守作業プログラム生成部、910 運転状況データ。

Claims (7)

  1. 部品の3次元形状データから前記部品が平面上で安定する安定姿勢を算出する安定姿勢算出部と、
    ハンドの3次元データ及び前記3次元形状データから前記部品を前記ハンドで把持する把持方法を算出する把持方法算出部と
    ボットによる前記把持方法と前記ロボット以外による前記把持方法及び前記安定姿勢との組合せ群から、前記ハンドの接続先の情報を含むシステム構成データ、前記安定姿勢、及び前記把持方法に基づいて、前記ハンドが干渉しない前記組合せ群を算出する組合せ可否算出部と、
    前記組合せ可否算出部で算出された前記組合せを用いて前記部品の移動回数が最小となる持ち替え経路を全て算出する持ち替え経路算出部と、
    仮置き台で取扱う前記部品の姿勢である投入姿勢及び整列台に整列させる前記部品の姿勢である整列姿勢を指定する姿勢データに基づいて、前記持ち替え経路において教示点を共有することで前記教示点の数が最小となる経路を経路群として算出する経路群算出部と、
    前記ロボットを用いてバラ積み供給された前記部品を持ち替えて前記整列台に整列させるプログラムを前記経路群に基づいて生成するプログラム生成部とを備えたことを特徴とするロボットプログラムの生成装置。
  2. 請求項1に記載のロボットプログラムの生成装置であって、
    前記システム構成データは、前記ハンドが作業をする作業位置のデータを含み、
    前記作業位置に前記部品があるときの前記ハンドの位置を算出して前記教示点の位置を出力する教示点出力部を備えたことを特徴とするロボットプログラムの生成装置。
  3. 請求項1に記載のロボットプログラムの生成装置であって、
    前記システム構成データは、前記ハンドが作業をする作業位置のデータを含み、
    前記作業位置に前記部品があるときに前記教示点となる位置で前記ロボットが教示位置姿勢をとれるかの可否を判定する教示点判定部を備えたことを特徴とするロボットプログラムの生成装置。
  4. 請求項3に記載のロボットプログラムの生成装置であって、
    前記教示点判定部は、平面となる前記作業位置に前記部品がある場合には、前記部品を前記平面に垂直な軸で回転させた全範囲で前記ロボットが前記教示位置姿勢をとることができる場合に可と判定することを特徴とするロボットプログラムの生成装置。
  5. 請求項3に記載のロボットプログラムの生成装置であって、
    前記教示点判定部は、平面となる前記作業位置に前記部品がある場合には、前記部品を前記平面に垂直な軸で回転させて前記ロボットが前記教示位置姿勢をとることができる設置角度を算出し、
    前記教示点判定部で前記教示位置姿勢をとることができる前記設置角度に前記部品がある場合には、前記ハンドで前記部品を把持する経路として算出する把持経路算出部を備えたことを特徴とするロボットプログラムの生成装置。
  6. 請求項1から5のいずれか1項に記載のロボットプログラムの生成装置であって、
    前記ロボットの運転状況データに基づき前記ロボットの移動速度を制限し、前記ロボットの保守作業を要求する保守作業プログラムを生成する保守作業プログラム生成部を備えたことを特徴とするロボットプログラムの生成装置。
  7. 部品の3次元形状データから前記部品が平面上で安定する安定姿勢を複数算出する安定姿勢算出工程と、
    ハンドの3次元データ及び前記3次元形状データから前記部品を前記ハンドで把持する把持方法を算出する把持方法算出工程と
    ボットによる前記把持方法と前記ロボット以外による前記把持方法及び前記安定姿勢との組合せ群から、前記ハンドの接続先の情報を含むシステム構成データ、前記安定姿勢、及び前記把持方法に基づいて、前記ハンドが干渉しない前記組合せを算出する組合せ可否算出工程と、
    前記組合せ可否算出工程で算出された前記組合せを用いて前記部品の移動回数が最小となる持ち替え経路を全て算出する持ち替え経路算出工程と、
    仮置き台で取扱う前記部品の姿勢である投入姿勢及び整列台に整列させる前記部品の姿勢である整列姿勢を指定する姿勢データに基づいて、前記持ち替え経路において教示点を共有することで前記教示点の数が最小となる経路を経路群として算出する経路群算出工程と、
    前記ロボットを用いてバラ積み供給された前記部品を持ち替えて前記整列台に整列させるプログラムを前記経路群に基づいて生成するプログラム生成工程とを備えたことを特徴とするロボットプログラムの生成方法。
JP2018514923A 2017-03-24 2017-09-04 ロボットプログラムの生成装置及び生成方法 Active JP6418359B1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017059621 2017-03-24
JP2017059621 2017-03-24
PCT/JP2017/031706 WO2018173318A1 (ja) 2017-03-24 2017-09-04 ロボットプログラムの生成装置及び生成方法

Publications (2)

Publication Number Publication Date
JP6418359B1 true JP6418359B1 (ja) 2018-11-07
JPWO2018173318A1 JPWO2018173318A1 (ja) 2019-03-28

Family

ID=63585203

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018514923A Active JP6418359B1 (ja) 2017-03-24 2017-09-04 ロボットプログラムの生成装置及び生成方法

Country Status (6)

Country Link
US (1) US11003177B2 (ja)
JP (1) JP6418359B1 (ja)
CN (1) CN110461550B (ja)
DE (1) DE112017007311B4 (ja)
TW (1) TWI649171B (ja)
WO (1) WO2018173318A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11833681B2 (en) * 2018-08-24 2023-12-05 Nvidia Corporation Robotic control system
EP4091776A4 (en) * 2020-01-16 2023-04-26 OMRON Corporation PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD AND GENERATION PROGRAM
TWI775525B (zh) * 2021-07-09 2022-08-21 群邁通訊股份有限公司 零部件識別方法及系統
DE102021209646A1 (de) 2021-09-02 2023-03-02 Robert Bosch Gesellschaft mit beschränkter Haftung Robotervorrichtung, Verfahren zum computerimplementierten Trainieren eines Roboter-Steuerungsmodells und Verfahren zum Steuern einer Robotervorrichtung

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10138185A (ja) * 1996-11-08 1998-05-26 Ricoh Co Ltd ロボットの制御方法
JP2000010618A (ja) * 1998-06-25 2000-01-14 Nippon Telegr & Teleph Corp <Ntt> ロボット教示装置およびロボット教示装置用アプリケーション製造装置とそのプログラムを記録した記録媒体
JP2009056513A (ja) * 2007-08-29 2009-03-19 Toshiba Corp 把持位置姿勢決定システムおよび把持位置姿勢決定方法
JP2013043271A (ja) * 2011-08-26 2013-03-04 Canon Inc 情報処理装置、情報処理装置の制御方法、およびプログラム
JP2015044274A (ja) * 2013-08-29 2015-03-12 三菱電機株式会社 部品供給装置および部品供給装置のプログラム生成方法
WO2016132521A1 (ja) * 2015-02-20 2016-08-25 株式会社日立製作所 教示データ生成装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1044074A (ja) * 1996-07-30 1998-02-17 Nippon Telegr & Teleph Corp <Ntt> マルチ作業方法及び装置
JP4238256B2 (ja) * 2006-06-06 2009-03-18 ファナック株式会社 ロボットシミュレーション装置
JP4235214B2 (ja) * 2006-07-04 2009-03-11 ファナック株式会社 ロボットプログラムを作成するための装置、プログラム、記録媒体及び方法
DE102007060653A1 (de) * 2007-12-15 2009-06-18 Abb Ag Positionsermittlung eines Objektes
JP4942672B2 (ja) * 2008-01-25 2012-05-30 三菱電機株式会社 ロボット軌道制御装置及びロボット軌道制御方法
JP4835616B2 (ja) * 2008-03-10 2011-12-14 トヨタ自動車株式会社 動作教示システム及び動作教示方法
JP2010142910A (ja) * 2008-12-19 2010-07-01 Yaskawa Electric Corp ロボットシステム
JP4938115B2 (ja) * 2010-07-27 2012-05-23 ファナック株式会社 ワーク取出し装置およびワーク取出し方法
DE112011103794B4 (de) * 2010-11-17 2019-01-24 Mitsubishi Electric Corporation Aufnehmervorrichtung für Werkstücke
JP5803155B2 (ja) * 2011-03-04 2015-11-04 セイコーエプソン株式会社 ロボット位置検出装置及びロボットシステム
KR101634463B1 (ko) 2011-06-29 2016-06-28 미쓰비시덴키 가부시키가이샤 부품 공급 장치
US9014857B2 (en) * 2012-01-13 2015-04-21 Toyota Motor Engineering & Manufacturing North America, Inc. Methods and computer-program products for generating grasp patterns for use by a robot
JP5620445B2 (ja) 2012-09-13 2014-11-05 ファナック株式会社 選択条件に基づいてロボットの保持位置姿勢を決定する物品取出装置
JP5642759B2 (ja) 2012-10-31 2014-12-17 ファナック株式会社 物品取出装置及び物品取出方法
US9393686B1 (en) * 2013-03-15 2016-07-19 Industrial Perception, Inc. Moveable apparatuses having robotic manipulators and conveyors to facilitate object movement
JP2015054378A (ja) 2013-09-13 2015-03-23 セイコーエプソン株式会社 情報処理装置、ロボット、シナリオ情報生成方法及びプログラム
JP2015058492A (ja) 2013-09-18 2015-03-30 セイコーエプソン株式会社 制御装置、ロボットシステム、ロボット、ロボット動作情報生成方法及びプログラム
JP6429450B2 (ja) 2013-10-31 2018-11-28 キヤノン株式会社 情報処理装置、情報処理方法
JP5788460B2 (ja) * 2013-11-05 2015-09-30 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
JP2015100874A (ja) * 2013-11-25 2015-06-04 セイコーエプソン株式会社 ロボットシステム
JP2015147256A (ja) * 2014-02-04 2015-08-20 セイコーエプソン株式会社 ロボット、ロボットシステム、制御装置、及び制御方法
JP6364856B2 (ja) * 2014-03-25 2018-08-01 セイコーエプソン株式会社 ロボット
US9561587B2 (en) * 2014-12-16 2017-02-07 Amazon Technologies, Inc. Robotic grasping of items in inventory system
JP6335806B2 (ja) * 2015-01-22 2018-05-30 三菱電機株式会社 ワーク供給装置およびワーク把持姿勢計算方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10138185A (ja) * 1996-11-08 1998-05-26 Ricoh Co Ltd ロボットの制御方法
JP2000010618A (ja) * 1998-06-25 2000-01-14 Nippon Telegr & Teleph Corp <Ntt> ロボット教示装置およびロボット教示装置用アプリケーション製造装置とそのプログラムを記録した記録媒体
JP2009056513A (ja) * 2007-08-29 2009-03-19 Toshiba Corp 把持位置姿勢決定システムおよび把持位置姿勢決定方法
JP2013043271A (ja) * 2011-08-26 2013-03-04 Canon Inc 情報処理装置、情報処理装置の制御方法、およびプログラム
JP2015044274A (ja) * 2013-08-29 2015-03-12 三菱電機株式会社 部品供給装置および部品供給装置のプログラム生成方法
WO2016132521A1 (ja) * 2015-02-20 2016-08-25 株式会社日立製作所 教示データ生成装置

Also Published As

Publication number Publication date
DE112017007311B4 (de) 2021-09-16
TWI649171B (zh) 2019-02-01
CN110461550A (zh) 2019-11-15
US11003177B2 (en) 2021-05-11
JPWO2018173318A1 (ja) 2019-03-28
DE112017007311T5 (de) 2019-12-05
WO2018173318A1 (ja) 2018-09-27
US20200233407A1 (en) 2020-07-23
TW201834802A (zh) 2018-10-01
CN110461550B (zh) 2022-11-15

Similar Documents

Publication Publication Date Title
JP6418359B1 (ja) ロボットプログラムの生成装置及び生成方法
JP6807949B2 (ja) 干渉回避装置
JP6860863B2 (ja) 経路出力方法
JP6057862B2 (ja) 部品供給装置および部品供給装置のプログラム生成方法
Holz et al. Real-time object detection, localization and verification for fast robotic depalletizing
Kaldestad et al. Collision avoidance with potential fields based on parallel processing of 3D-point cloud data on the GPU
US20160158936A1 (en) Collision avoidance method, control device, and program
US11185984B2 (en) Method and apparatus for controlling robot
JP2017226029A (ja) ロボット装置の制御方法、およびロボット装置
JP2009056513A (ja) 把持位置姿勢決定システムおよび把持位置姿勢決定方法
US11518024B2 (en) Extensible underconstrained robotic motion planning
CN112236272B (zh) 把持姿态评价装置和把持姿态评价程序
WO2016132521A1 (ja) 教示データ生成装置
WO2019069361A1 (ja) 把持位置姿勢教示装置、把持位置姿勢教示方法及びロボットシステム
JP7061013B2 (ja) 経路補正方法及び多軸加工機の制御装置
CN115026843B (zh) 一种基于交叉激光传感器的自动tcp标定及纠偏方法
US20230264352A1 (en) Robot device for detecting interference of constituent member of robot
WO2018180299A1 (ja) ロボット教示装置、ロボット教示装置の制御方法及びロボット教示プログラム
JPH06143170A (ja) 自律運搬装置
US20230182298A1 (en) Placement planning
KR20230128502A (ko) 동작 계획
Kuzniatsou et al. Algorithmization and modeling of multicoordinate mechatronic systems
Sharma Layout design and trajectory planning of robotic workcell using point cloud approach
JP2023146747A (ja) 加工装置
JP2016112655A (ja) 制御装置、制御方法、および制御プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180319

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180319

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180319

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180416

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180622

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: 20180911

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180924

R151 Written notification of patent or utility model registration

Ref document number: 6418359

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250