TW201834802A - 機器人程式之產生裝置及產生方法 - Google Patents

機器人程式之產生裝置及產生方法 Download PDF

Info

Publication number
TW201834802A
TW201834802A TW107103806A TW107103806A TW201834802A TW 201834802 A TW201834802 A TW 201834802A TW 107103806 A TW107103806 A TW 107103806A TW 107103806 A TW107103806 A TW 107103806A TW 201834802 A TW201834802 A TW 201834802A
Authority
TW
Taiwan
Prior art keywords
robot
posture
gripping
path
combination
Prior art date
Application number
TW107103806A
Other languages
English (en)
Other versions
TWI649171B (zh
Inventor
永谷達也
奥田晴久
Original Assignee
日商三菱電機股份有限公司
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 日商三菱電機股份有限公司 filed Critical 日商三菱電機股份有限公司
Publication of TW201834802A publication Critical patent/TW201834802A/zh
Application granted granted Critical
Publication of TWI649171B publication Critical patent/TWI649171B/zh

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

本發明係針對利用機器人(100)將散亂堆積而供應的零件(170)以複數個移動路徑來排列的程式,產生教導點共有化的程式。本發明的機器人程式之產生裝置係根據零件(170)的三維形狀資料,算出零件(170)穩定在平面上的穩定姿勢,且算出利用機械手把持的把持方法,且具備:組合可否算出部(250),係根據含有機械手的連接對象的資訊的系統構成資料(240)、把持方法與穩定姿勢的組合群,算出機械手不干涉的組合;改換抓持路徑算出部(260),係利用所算出的組合來算出零件的改換抓持路徑;路徑群算出部(280),係根據指定零件(170)的投入姿勢及排列姿勢的姿勢資料(270),算出自改換抓持路徑起,教導點的數量為最少的路徑作為路徑群;以及程式產生部(290),係根據路徑群來產生機器人(100)的程式。

Description

機器人程式之產生裝置及產生方法
本發明係關於一種產業用機器人之程式的產生裝置及產生方法,特別是產生使用機器人來排列散亂堆積地供應的零件的程式者。
就以往的產業用機器人之程式產生方法而言,已知有三維量測經作業者示範之零件的移動路徑,並且將以其移動路徑移動零件的機器人程式輸出的方法。在程式輸出時,考慮機器人的自體條件,亦判定路徑可否實現。此外,當不能以單體機器人移動時,亦輸出多臂的改換抓持作為程式的候選(專利文獻1)。
亦已知有在二維平面內探索零件的移動路徑的程式產生方法。以俯視所見的二維平面來表示作業區域,且切割成適當之大小的區域。從分割的區域選出零件的初始位置及最終位置。判定各區域中機器人手臂可否到達,且抽出從初始位置至最終位置為止之連續的機器人手臂可到達的區域,作為移動路徑。當找不到以單體機器人手臂可達成的移動路徑時,在複數個機器人手臂間進行零 件的改換抓持(專利文獻2)。
(先前技術文獻) (專利文獻)
專利文獻1:日本特開2015-054378
專利文獻2:日本特開2015-058492
上述程式的產生方法中,必須依每個移動路徑進行機器人的教導作業。在產業用機器人中,移動的目標位置必須設定為教導點,且進行教導的實際對合。根據機器手與零件的形狀,有時上述教導作業成為要求1毫米以下之精密度的作業。此外,若包含機器手的姿勢,則必須整合六自由度(Six degrees of freedom;6DoF),若要整合設定與確認,更是耗費時間的繁瑣作業。即使是利用視覺感測器的作業,一般而言,基本的把持方法也是在教導中進行設定。
對此,即使是設定複數個移動路徑的情況,亦有欲使教導點共通化以減低教導作業的負荷的課題。特別是,近年來的機器人系統中,由於亦有能夠對應散亂堆積地供應的零件之需求而具有複數個零件的姿勢及把持方法,故增加了移動路徑。
本發明是為了解決上述問題點所研創者,所產生的機器人程式,係針對以複數個姿勢供應的零件, 在這些零件的每一個姿勢的移動路徑中,使教導點共通化。
本發明的機器人程式的產生裝置係具備:穩定姿勢算出部、把持方法算出部、組合可否算出部、改換抓持路徑算出部、路徑群算出部、以及程式產生部。其中,該穩定姿勢算出部係根據零件的三維形狀資料,算出零件穩定在平面上的穩定姿勢;該把持方法算出部係根據機械手的三維資料及零件的三維形狀資料,算出利用機械手把持零件的把持方法;該組合可否算出部係從該機器人所進行的把持方法與該機器人以外者所進行的把持方法及穩定姿勢的組合群,根據含有機械手的連接對象的資訊的系統構成資料、穩定姿勢、及把持方法,算出機械手不干涉的組合;該改換抓持路徑算出部係利用組合可否算出部所算出的組合,算出零件的改換抓持路徑;該路徑群算出部係根據指定零件的投入姿勢及排列姿勢的姿勢資料,算出自改換抓持路徑起,教導點之數量為最少的路徑作為路徑群;該程式產生部係根據路徑群,產生機器人的程式。
此外,本發明的機器人程式的產生方法係具備:穩定姿勢算出步驟、把持方法算出步驟、組合可否算出步驟、改換抓持路徑算出步驟、路徑群算出步驟、以及程式產生步驟。其中,穩定姿勢算出步驟係根據零件的三維形狀資料,算出零件穩定在平面上的複數個穩定姿 勢;把持方法算出步驟係根據機械手的三維資料及零件的三維形狀資料,算出利用機械手把持零件的把持方法;組合可否算出步驟係從該機器人所進行的把持方法與該機器人以外者所進行的把持方法及穩定姿勢的組合群,根據含有機械手的連接對象的資訊的系統構成資料、穩定姿勢、及把持方法,算出機械手不干涉的組合;改換抓持路徑算出步驟係利用組合可否算出步驟所算出的組合,算出零件的改換抓持路徑;路徑群算出步驟係根據指定零件的投入姿勢及排列姿勢的姿勢資料,算出自改換抓持路徑起,教導點之數量為最少的路徑作為路徑群;以及程式產生步驟係根據路徑群來產生機器人的程式。
根據本發明,可產生在複數個移動路徑中共有教導點之教導點數量較少的機器人程式。
100‧‧‧機器人
110‧‧‧零件供應檯
120‧‧‧暫置檯
130‧‧‧改換抓持輔助具
140‧‧‧排列檯
150‧‧‧三維視覺感測器
160‧‧‧二維視覺感測器
170‧‧‧零件
200‧‧‧機械手三維資料
210‧‧‧零件形狀三維資料
220‧‧‧把持方法算出部
230‧‧‧穩定姿勢算出部
240‧‧‧系統構成資料
250‧‧‧組合可否算出部
260‧‧‧改換抓持路徑算出部
270‧‧‧姿勢資料
280‧‧‧路徑群算出部
290‧‧‧程式產生部
300‧‧‧處理器
301‧‧‧記憶裝置
600、601、602‧‧‧教導點輸出部
700、701‧‧‧教導點判定部
800‧‧‧把持路徑算出部
900‧‧‧維護作業程式產生部
910‧‧‧運轉狀況資料
S501~S506‧‧‧步驟
第1圖係本發明的實施形態1的機器人系統之一例的構成圖。
第2圖係本發明的實施形態1的程式產生裝置的功能構成圖。
第3圖係用以說明本發明的硬體構成的圖。
第4圖係顯示本發明的實施形態1之組合可否算出部輸出的組合可否結果之例的圖。
第5圖係顯示說明本發明的實施形態1之移動次數的組合之一例的圖。
第6圖係本發明的實施形態1的程式產生部輸出之機器人程式的流程圖之例。
第7圖係本發明的實施形態2的程式產生裝置的功能構成圖。
第8圖係本發明的實施形態3的程式產生裝置的功能構成圖。
第9圖係顯示位於呈平面的作業位置的零件之例的圖。
第10圖係本發明的實施形態4的程式產生裝置的功能構成圖。
第11圖係本發明的實施形態5的程式產生裝置的功能構成圖。
實施形態1.
第1圖係本發明的代表性的應用例之使散亂堆積的零件170排列整齊的機器人系統之一例的示意圖。機器人100係泛用之垂直多關節型機器人100。零件供應檯110係供應散亂堆積的零件170之檯。就零件供應方法而言,除了依序將零件170供應至固定於零件供應檯110的托盤的方法之外,還有以裝滿零件170的托盤為單位進行交換的方法、以及組合該等之方法。
利用三維視覺感測器150的認識結果,從零件供應檯110僅取出一個零件170至暫置檯120。就取出方法而言,已知的方法係導出機器人手(以下亦有簡稱「機械手」的情形)的指部可***的區域,使指部***可***的區域並捏合指部,藉此把持並取出零件170。此外,亦有根據零件170的整體或一部分的特徵部的位置姿勢,來計算把持位置的方法。在此,只要能從零件供應檯110上的零件170彼此接觸的散亂堆積狀態,將零件170以零件170彼此不接觸的狀態放置到暫置檯120,則不限制零件170的取出手段。在此,所謂的位置姿勢係意指位置及姿勢之機器人領域的技術用語,意指將剛體設定於三維空間上者。例如,所謂的位置係指:設定重心等的代表點之一點,且以座標值而顯示者。所謂的姿勢係指:例如可利用旋轉變換行列而決定者。
當零件170放置到暫置檯120上的平面時,除了特殊的零件形狀以外,零件170的姿勢係穩定於有限的姿勢態樣中的某一姿勢。在此,所謂的特殊的零件係指:具有不改變接地面而可連續地變更姿勢之形狀的零件170,例如具有以球面或筒狀的側面接地之狀態下呈穩定的形狀的零件170。放置在暫置檯120平面上的零件形狀的姿勢係限定為有限個,或者就零件形狀的每個姿勢而言,零件170的高度均成為一定,所以可利用二維視覺感測器160來認識位置姿勢。
之後,利用二維視覺感測器160高精密度地認識零件170的位置姿勢,以機器人100移動成為排列檯140上之預定的零件170的最終姿勢。由於把持方法的關係而無法以最終姿勢直接移動至排列台140時,利用可把持零件170的改換抓持輔助具130,機器人100在改換抓持零件170後,以呈最終姿勢之方式移動至排列檯140。另外,不僅是改換抓持輔助具130,亦可將零件170重置於暫置檯120而進行改換抓持。
第2圖係實施形態1之程式產生裝置的功能構成圖。機械手三維資料200中包含:對象系統中使用之機器人手及改換抓持輔助具130之有關於把持零件170的機械手形狀的三維資料。在此,機械手三維資料200亦可包含:機械手的把持部的指定、指部的移動方向、機械手的朝向等有關於機械手的附加資訊。
零件形狀三維資料210中包含與利用對象系統處理之零件170的形狀相關的三維資料。其中,亦可包含零件170之可把持區域等有關於零件170的附加資訊。第3圖係用以說明硬體構成的圖。機械手三維資料200及零件形狀三維資料210為一種資料庫,記憶於硬碟等之記憶裝置301。例如,輸入有由根據作業者所進行之教導而輸入的把持方法。
把持方法算出部220係從機械手三維資料200與零件形狀三維資料210,算出各機械手之零件170的把持方法,並輸出其把持方法。就零件170的把持方法 之算出方法而言,已有確認重心位置是否存在於機械手及零件170之接觸點所包圍的區域之方法等各種方法的提案。此外,把持方法算出部220亦可根據來自作業者的輸入而算出把持方法。就作業者輸入的方法而言,具有:提供零件170與機械手之三維顯示、以及在其三維顯示內的機械手的移動手段之方法等。不論什麼方法,把持方法算出部220係根據機械手三維資料200、及零件形狀三維資料210的輸入,來輸出各機械手之零件170的把持方法。如此,把持方法算出部220係由機器人100的機械手的三維資料及零件形狀三維資料,算出一個以上的利用機械手把持零件170的把持方法。另外,所謂的把持方法不僅是把持零件170之方法的狹義的概念,還包含機械手把持零件170並呈適當的把持姿勢之廣義的概念。因此,說明書全文中,把持方法亦包含把持姿勢之技術用語的概念。
穩定姿勢算出部230係根據零件形狀三維資料210,算出零件170放置於平面時的所有穩定姿勢,並輸出作為零件穩定姿勢資料。穩定姿勢算出部230係算出複數個穩定姿勢。就穩定姿勢的算出方法而言,例如有導出包圍零件170之最小體積的凸多面體,將重心投影在包含各面的平面時,若投影的點位於凸多面體的表面內,則為穩定姿勢的方法。在此,所謂的穩定姿勢係指:零件170可保持靜態的穩定性的姿勢。只要由零件形狀三維資料210輸出零件170可能呈現的所有零件穩定姿勢資料,則不限制其方法為何。如此,穩定姿勢算出部230係由零 件170的三維形狀資料,算出零件170穩定在平面上的穩定姿勢。
系統構成資料240係至少包含機械手所連接之設備的資料,此外,亦可包含各設備可出入(access)之對象的資訊,甚至是作業場所的環境的限制條件等。例如,安裝於機器人100的機械手係可出入於零件供應檯110、暫置檯120、改換抓持輔助具130、排列檯140之所有的設備。另一方面,安裝於改換抓持輔助具130的機械手並無法出入於其他的設備,而必須接受安裝於機器人100的機械手的出入。系統構成資料240為一種資料庫,記憶於記憶裝置301。
針對組合可否算出部250加以說明。組合可否算出部250係從把持方法算出部220輸入依據機械手之零件170的把持方法,從穩定姿勢算出部230輸入零件170可能呈現的所有零件穩定姿勢資料,並且從系統構成資料240輸入機械手所連接之設備的資訊。組合可否算出部250係算出:機器人100與改換抓持輔助具130之把持方法之組合中的改換抓持可否實現、以及機器人100的把持方法與穩定姿勢之組合中的把持可否實現,並輸出作為組合可否結果。
在改換抓持可否實現的算出中,就連接於機器人100的機械手的把持方法與連接於改換抓持輔助具130的機械手的把持方法的組合中,若兩個機械手不干涉,則判斷為可改換抓持。相反地,當機械手干涉時,判斷為 不可改換抓持。此外,在把持可否實現的算出中,就連接於機器人100的機械手的把持方法與穩定姿勢的組合中,若機械手未與零件170接地的平面干涉,則判斷為可把持。相反地,當干涉時判斷為不可把持。判定為可把持的穩定姿勢與把持方法的組合中,亦可採用其把持方法,以其穩定姿勢來放置零件170。如此,組合可否算出部250係從穩定姿勢及把持方法中之任一方與把持方法的組合群中,根據包含機械手的連接對象的資訊的系統構成資料240、穩定姿勢、及把持方法,算出一個以上的機械手不干涉的組合。也就是說,組合可否算出部250係由穩定姿勢及把持方法中之任一方與把持方法的組合來算出機械手不干涉的組合。
第4圖係顯示組合可否算出部250所輸出的組合可否結果之例的圖。顯示零件170可否從橫行所記載的狀態經改換抓持而變換為縱列所記載的狀態,也可說是顯示零件170可否直接移動。把持方法1、2、3為連接於機器人100的機械手的把持方法,而把持方法4、5為連接於改換抓持輔助具130的機械手的把持方法。穩定姿勢1、2、3係零件170在平面上的穩定姿勢,共通於暫置台120與排列檯40。
在此係以一台具有一個臂部的機器人100所構成的機器人為前提。第六橫行至第八橫行係表示機器人100從暫置檯12把持零件170的情形,而第六縱列至第八縱列係表示機器人100將零件170放置到排列檯140的 情形。另外,若機器人100為兩台,則區分兩台機器人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。根據以上所述,從第四橫行第四縱列起至第八橫行第八縱列為止全部記為「-」。如此,即使考慮上述組合,也無法直接改換抓持零件170,也就是說, 零件170在未經改換抓持的情況下無法直接移動時以「×」來表示,而組合並無意義時記為「-」。
此外,不僅是把持時的機械手間的干涉,亦可考慮至把持為止之移動時的干涉。所謂的移動係指:例如機械手的爪部的開閉、至把持位置為止的機械手的移動。至把持位置為止的移動方向,簡而言之係機械手的基部至前端方向,但除此之外,亦可由作業者來設定。
改換抓持路徑算出部260中,根據組合可否算出部250所輸出的組合可否結果,在各組合的一方設為初始狀態、而另一方設為最終狀態的路徑中,算出全部的移動次數最少的路徑,並輸出作為改換抓持路徑群。
第5圖係顯示說明實施形態1之移動次數之組合的一例的圖。更具體而言,係顯示彙整了把持方法及穩定姿勢的組合中,利用改換抓持路徑算出部260所算出的零件170的最少移動次數的圖。i橫行j縱列的項目係顯示從i的狀態變換為j的狀態的最低移動次數。第六橫行至第八橫行係顯示自暫置檯120的穩定姿勢起的移動,第六縱列至第八縱列係顯示要成為排列檯140的穩定姿勢的移動。
在此,針對第5圖的移動次數的計數方式加以說明。對照參閱第4圖與第5圖時,第4圖中組合為「○」的欄位,係可不改換抓持而直接地移動零件170,所以在第5圖中移動次數皆為1次。此外,如從把持方法1變換為把持方法1一般地,為相同的把持方法的情況時,由於不 移動零件170,所以移動次數為0次。另一方面,從暫置檯120的穩定姿勢1變換為排列檯140的穩定姿勢1的組合(在第4圖中「-」的欄位)中,例如能夠先從暫置檯120的穩定姿勢1變換為把持方法1,再從把持方法1變換為排列檯140的穩定姿勢1,藉此,經2次第4圖組合為「○」的欄位來移動零件170,所以移動次數為2次。再者,即便在第4圖為「×」的欄位部分,亦可藉由經複數次「○」的組合(路徑)來移動零件170。
例如,第一橫行第二縱列係先從把持方法1變換為把持方法4,再從把持方法4變換為把持方法2,所以就移動次數而言為2次。第六橫行第六縱列係先從暫置檯120的穩定姿勢1變換為把持方法1,再從把持方法1變換為排列檯140的穩定姿勢1,所以就移動次數而言為2次。第六橫行第八縱列係先從暫置檯120的穩定姿勢1變換為把持方法1,接著從把持方法1變換為把持方法4,再從把持方法4變換為把持方法2,最後從把持方法2變換成為排列檯140的穩定姿勢3,所以就移動次數而言為4次。如上所述,移動次數的計算方法係計算第4圖中的「○」之組合(路徑)的最少次數。
實現最少移動次數的路徑會有複數個的情況。例如,第六橫行第八縱列,除了上述路徑以外,還有從暫置檯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所輸出的適當的路徑之組合的路徑群不限於僅算出一個。亦會有路徑算出部280輸出複數個路徑群的情形,此時,程式產生部290中係產生並輸出配合各個路徑群的機器人程式。當產生複數個機器人程式時,例如可由教導作業者適當地選擇要採用哪一個機器人程式。
把持方法算出部220、穩定姿勢算出部230、組合可否算出部250、改換抓持路徑算出部260、路徑群算出部280、以及程式產生部290的演算,係利用第3圖中的處理器300所演算者,而程式產生部290係將程式輸出。
機器人程式係顯示機器人100的移動及信號處理的流程者,例如,移動的目標位置一般而言以位置變數加以處理。此位置變數係根據教導作業實際對合而輸入。因此,位置變數係例如初始值全部被輸入零而實際上無法使機器人100運作者。
本發明中,利用於程式中的位置變數,即便不同的移動路徑,只要為相同目標位置則為共有。在利用第4圖及第5圖之例中,從暫置檯120的穩定姿勢3變換為排列檯140的穩定姿勢1的移動路徑,以及從暫置檯120的穩定姿勢3變換為排列檯140的穩定姿勢3的移動路徑中,任一移動路徑均包含利用機器人100的把持方法2來把持的目標位置之暫置檯120的穩定姿勢3,而為共有之共同的教導點。此外,將零件170從機器人100的把持方法1遞交至改換抓持輔助具130的把持方法4時的機器人100的目標位置,以及將零件170從改換抓持輔助具130的把持方法4遞交至機器人100的把持方法1時的機器人100的目標位置中,即便作業不同亦有相同的目標位置,而為共有之共同的教導點。
第6圖係程式產生部290輸出機器人程式的流程圖之例。初始化步驟S501係於機器人程式的啟動時僅執行一次的處理,其進行變數及參數的初始化,往初始位置移動等的處裡。接著,三維視覺感測器認識處理步驟S502係以三維視覺感測器150認識零件供應檯110的散亂堆積零件170,且計算機器人100用以把持零件170的目標位置姿勢的處理。再者,從散亂堆積的取出步驟S503係根據三維視覺感測器認識處理步驟S502的結果,從散亂堆積狀態的零件170取出零件170並投入暫置檯120的處理。為便於說明,在此假設僅取出一個零件170。
二維視覺感測器認識處理步驟S504係利用二維視覺感測器160來認識放置於暫置檯120的零件170的位置姿勢的處理。接著,移動路徑選擇步驟S505係根據零件170的位置姿勢的認識結果,來判定零件170屬於哪一個穩定姿勢,並選擇從暫置檯120至排列檯140的移動路徑的處理。且為在路徑群算出部280所輸出的路徑群當中,選擇從利用二維視覺感測器160認識的穩定姿勢開始的移動路徑的處理。再者,零件排列步驟S506係以所選擇的移動路徑,將暫置檯120上的零件170移動至排列檯140的一連串的處理。以零件排列步驟S506使零件170完成排列之後,返回至三維視覺感測器認識處理步驟S502。
此流程圖中,為了便於說明,係以從散亂堆積狀態取出一個零件170至暫置檯120的情況為前提。 然而,從散亂堆積的取出步驟S503中,經常會有一次取出複數個零件170的情況。由於會有此種狀況,所以就處理的流程而言,會有包含錯誤恢復之各式各樣的版本。
例如,以取出複數個零件170為前提時,亦會有零件排列步驟S506之後係返回至二維視覺感測器認識處理步驟S504,經認識結果,當零件170不存在於暫置檯120時,返回至三維視覺感測器認識處理步驟S502的流程。本發明主要著眼於:在零件170的位置姿勢確定後,產生零件170的移動程式,而移動程式周邊的程式構成可為任意的型態。
最後,作業者係教導要被利用在程式產生部290所輸出的程式的位置變數,作為機器人100能夠移動的教導點,而完成能夠運作的機器人程式。
以上的說明係為了便於說明而限定了應用的機器人系統,且亦限定了發明內的各功能的處理,但並不限定於此。例如,亦可為利用複數個機器人100的機器人系統。
利用改換抓持輔助具130等,以一台的機器人100來處理複數個製程時,會延長每個零件170之平均排列時間。例如,第5圖中,為了要使暫置檯120的穩定姿勢1排列成為排列檯140上的穩定姿勢3,由於利用改換抓持輔助具130,所以涉及4次的移動。假設,若利用兩台機器人100以管線處理來進行此製程,則就系統整體而言,能夠與以一台機器人100移動2次來排列的相同時 間進行持續排列。如此,採用複數台機器人100可提升系統的處理量。
如此地利用複數台機器人100時,系統構成資料240所設定之各機器人100的可出入對象(機械手的連接對象)即不同。在機器人100為一台的構成中,其機器人100可出入於全部的桌檯(零件供應檯110、暫置檯120、排列檯140)及改換抓持輔助具130,惟以複數台機器人100組合分工的系統時,各機器人100的機械手的連接對象即不同。此外,由於發生與其他的機器人100之間的改換抓持,就出入對象而言,除了零件供應檯110、暫置檯120、排列檯140、改換抓持輔助具130之外,亦追加有其他的機器人100。就系統構成資料240而言,必須具有上述該等機械手的連接對象的資訊。
在組合可否算出部250中,考慮各機械手的出入對象,就不可能出入的組合,判斷為組合不可,而改換抓持路徑算出部260與路徑群算出部280的處理不改變。此外,程式產生部290雖輸出複數台機器人100的程式,但係與一台機器人100的處理進行相同的輸出。
第1圖中,應用的機器人100系統係以三維視覺感測器150及二維視覺感測器160分別固定於零件供應檯110及暫置檯120上來進行說明。惟不限於此,亦可利用三維視覺感測器150來實施二維視覺感測器160的處理而不利用另外的硬體。此外,各個攝影機(三維視覺感測器150、二維視覺感測器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所輸出的路徑群,由作業者選擇、修正移動路徑。關於其他的功能,亦可對作業者提示輸出結果及候選,由作業者選擇或修正之。
如上所述,本發明的機器人程式產生裝置係具備:把持方法算出部220、穩定姿勢算出部230、系統構成資料240、組合可否算出部250、改換抓持路徑算出部260、路徑群算出部280、以及程式產生部290。其中,該把持方法算出部220係根據機械手及零件的三維形狀資料,輸出零件170的把持方法;該穩定姿勢算出部230係根據三維形狀資料,算出零件170的穩定在平面上的姿勢,並輸出作為零件170的穩定姿勢;該系統構成資料240係至少含有機械手的連接對象資訊;該組合可否算出部250係根據零件170的把持方法及零件170的穩定姿勢,針對兩個把持方法間的組合及把持方法中的一個把持方法與零件170的穩定姿勢中的一個穩定姿勢之間的組合當中,至少某一方的組合中的機械手的干涉,進行判定,並輸出組合可否;該改換抓持路徑算出部260係根據組合可否,算出並輸出零件170的把持方法及穩定姿勢的至少某一方的組合中的所有改換抓持路徑;該路徑群算出部280係根據指示零件170的投入姿勢及最終的排列姿勢的姿勢資料270,輸出從改換抓持路徑起,教導點的數量為最少的路徑的組合作為路徑群;該程式產生部290係根據路徑群,輸出機器人的程式。
換言之,本發明的機器人程式產生裝置由於具備:穩定姿勢算出部、把持方法算出部、組合可否算出部、改換抓持路徑算出部、路徑群算出部、以及程式產生部,所以可在複數個移動路徑中共有教導點,而產生教導點較少的機器人程式。其中,該穩定姿勢算出部係根據零件的三維形狀資料,算出零件穩定在平面上的穩定姿勢;該把持方法算出部係根據機械手的三維資料及零件的三維形狀資料,算出利用機械手把持零件的把持方法;該組合可否算出部係從該機器人所進行的把持方法與該機器人以外者所進行的把持方法及穩定姿勢的組合群,根據含有機械手的連接對象的資訊的系統構成資料、穩定姿勢、及把持方法,算出機械手不干涉的組合;該改換抓持路徑算出部係利用組合可否算出部所算出的組合,算出零件的改換抓持路徑;該路徑群算出部係根據指定零件的投入姿勢及排列姿勢的姿勢資料,算出自改換抓持路徑起,教導點之數量為最少的路徑作為路徑群;該程式產生部係根據路徑群,產生機器人的程式。藉此,可減少由作業者所進行之教導作業的調整工時。如此,組合可否算出部係根據穩定姿勢及把持方法中的任一方與把持方法的組合群,算出一個以上機械手不干涉的組合。
實施形態2.
實施形態1中,作業者係在產生機器人程式之後教導教導點,惟亦能夠以程式產生教導點的資料。在此,以與 實施形態1之不同點為中心進行說明。未加以說明的部分係與實施形態1為同樣的構成。
第7圖係本發明的實施形態2的程式產生裝置的功能構成圖。為了便於說明,首先,以機器人100為一台的情形進行說明。另外,圖中標註相同的符號者係相同或相當者,此事項係共通於說明書全文、圖式的所有圖中。再者,說明書全文所表示的構成元件的形態,僅為例示並不限定於該等記載。
除了實施形態1的資訊之外,系統構成資料240還設定有暫置檯120、排列檯140、改換抓持輔助具130的位置資訊。系統構成資料240除了機械手的連接對象的資訊以外,還包含了機械手要進行作業的作業位置的資料。這些位置資訊係基於機器人100的座標系統,以機器人100之基座位置的相對位置來進行設定。
教導點輸出部600係基於機器人100的座標系統,計算使用在程式產生部290所輸出之程式的教導點。首先,從路徑資訊抽出所輸出的程式的教導點係屬於哪一個位置的作業。機器人100的作業位置係指:暫置檯120、排列檯140、改換抓持輔助具130者。此作業位置的位置資訊中設置有零件170時,算出實現路徑資訊設定之把持方法時的機器人100的位置姿勢資料,且輸出作為教導點。另外,教導點輸出部600係利用處理器300演算者,且教導點輸出部600輸出教導點。
在此,在實現機械手的位置姿勢時,機器人100的位置姿勢會有複數個,而機器人的位置姿勢資料亦會有非唯一地定義的情形。在這樣的情形下,可將某個實現其機械手之位置的機器人100的位置姿勢輸出作為教導點,亦可提示以供作業者可從複數個教導點的候選進行選擇。
當作業位置並非平面而是改換抓持輔助具130時,根據改換抓持輔助具130的位置及改換抓持輔助具130的把持方法,來決定零件170的設置位置姿勢。
接著,當利用複數個機器人100時,系統構成資料240係含有各機器人100的設置位置,且以其機器人100的相對位置來計算教導點資料。此外,在機器人100間進行遞交時,以系統構成資料240設定至少某一方的機器人100的遞交作業時的位置姿勢。
第7圖中,係在程式產生部290產生程式之後,以教導點輸出部600輸出教導點資料,但亦可在程式產生部290之前的階段輸出。可由作業者設定作業位置及把持方法而輸出教導點資料。因此,若在以把持方法算出部220設定把持方法之後,則可在來自作業者的任意的請求時機輸出教導點資料。
以上,根據本實施形態,由於以系統構成資料240設定作業位置的資料,以在作業位置有零件170的方式計算實現把持方法的機械手的位置,且具備輸出教 導點資料之移動路徑教導點輸出部600,而具有可使教導作業省力的效果。
換言之,本發明的機器人程式產生裝置由於具備:穩定姿勢算出部、把持方法算出部、組合可否算出部、改換抓持路徑算出部、路徑群算出部、以及程式產生部,所以可產生在複數個移動路徑中共有教導點之教導點較少的機器人程式。其中,該穩定姿勢算出部係根據零件的三維形狀資料,算出零件穩定在平面上的穩定姿勢;該把持方法算出部係根據機械手的三維資料及零件的三維形狀資料,算出利用機械手把持零件的把持方法;該組合可否算出部係從該機器人所進行的把持方法與該機器人以外者所進行的把持方法及穩定姿勢的組合群,根據含有機械手的連接對象的資訊的系統構成資料、穩定姿勢、及把持方法,算出機械手不干涉的組合;該改換抓持路徑算出部係利用組合可否算出部所算出的組合,算出零件的改換抓持路徑;該路徑群算出部係根據指定零件的投入姿勢及排列姿勢的姿勢資料,算出自改換抓持路徑起,教導點之數量為最少的路徑作為路徑群;該程式產生部係根據路徑群,產生機器人的程式。此外,由於將教導點輸出,所以可減少作業者的調整工時。另外,組合可否算出部係根據穩定姿勢及把持方法中的任一方與把持方法的組合群,算出一個以上機械手不干涉的組合。
實施形態3.
實施形態2中係產生教導點的資料,惟亦可判定機器人100在教導點可否達成位置姿勢,並輸出教導點。這是因為會有機器人100無法達成(無法實現)教導位置姿勢的情形。在此,以與實施形態1及實施形態2的相異點,特別是與實施形態2的相異點為中心加以說明。未加以說明的部分係與實施形態1及實施形態2為同樣的構成。
即使想要實施實施形態1及實施形態2,還是有機器人100無法達成教導位置姿勢的情形。就易於瞭解的一例而言,有機器人100的機械手離置於桌檯上的零件170太遠而搆不到的情形。除此之外,還有角度是機器人100的關節角度無法實現的情形。即使機器人100具有六自由度,也並非全部的關節具有360度的可動範圍。此外,亦存在有例如機器人100的一部分嵌入至機器人100本體內一般之間接角度的組合。因此,根據機器人100的關節,通常可動範圍會受到限制。此外,此可動範圍依每個機器人100而有所不同,成為預定使用之機器人100固有的限制條件。再者,亦有對前述限制條件更加上地面及牆壁等之外部環境所造成之可動作區域的限制。如此而有機器人100在教導點無法達成(無法實現)教導位置姿勢的情形。
第8圖係本發明之實施形態3的程式產生裝置的功能構成圖。根據相關於使用之機器人100的資訊,利用教導點判定部700判定機器人100可否在成為教導點 的位置實現教導位置姿勢。另外,教導點判定部700亦可位在第8圖的組合可否算出部250以後。
當然地,若教導點判定部700在組合可否算出部250之前,亦可將教導點判定部700的判定結果反映在組合可否算出部250進行的步驟,所以更可謀求作業者所進行之教導作業的省力化。此外,只要教導點輸出部601亦在教導點判定部700之後,則可在任意位置。在有關於機器人100的資訊係包含:系統構成資料240、穩定姿勢、及持方法,而該系統構成資料240係含有機械手的連接對象的資訊及機械手要進行作業的作業位置的資料。
使用之機器人100的資訊,至少將機械手的連接對象的資訊及機械手要進行作業的作業位置的資料設定於系統構成資料240,且利用教導點判定部700判定教導點之實現的可否。此外,在系統構成資料240亦包含:預定使用之機器人100所具有之固有的限制條件、及因應需要而由外部環境造成的限制。
利用教導點輸出部601輸出教導點判定部700的判定結果。就教導點判定部700的判定結果而言,例如,在無法實現(否)的情形時,利用教導點輸出部601對作業者輸出表示發生錯誤之訊息,而在可實現(可)的情形時,輸出教導點。另外,教導點判定部700及教導點輸出部601係利用處理器300演算者。
如上所述,本實施形態中,由於系統構成資料240係包含機械手的連接對象的資訊及機械手要作業的作業位置的資料,且具備在作業位置有零件170時成為教導點的位置,判定機器人100可否達成教導位置姿勢的教導點判定部700,所以在事前可驗證系統構成的實現性。
在此,詳述教導點判定部700的判定方法之例。第9圖係顯示位於呈平面的作業位置(例如,暫置檯120)的零件之例的圖。第9圖係從上方觀看位於暫置檯120上之零件170的狀態之例,第9圖(a)至第9圖(j)係使零件170在呈平面的暫置檯120上,以垂直於平面之軸(法線)朝右側以45度單位旋轉的圖。旋轉一周時,零件170係在第9圖(a)與第9圖(i)呈相同的位置。第9圖(a)與第9圖(i)係在平面內所旋轉的設置角度為相同。
教導點判定部700係在以系統構成資料240指定的作業位置使零件170旋轉的情況下,判斷機器人100可否在教導點的位置實現教導位置姿勢。具體而言,當零件170投入暫置檯120時,如第9圖所示,使零件170在平面上以垂直於平面之軸(法線)旋轉。這是由於為了要判定機器人100可否實現所有把持零件170的位置姿勢,而必須使零件170在平面內旋轉來進行判定。以可否在平面內旋轉的全範圍的設置角度實現把持方法,進行可否的判定。
教導點判定部係在平面的作業位置有零件170的情況下,機器人100可在使零件170以垂直於平面之軸(法線)旋轉的全範圍達成教導位置姿勢時,則判定為「可」。若判定為「可」,則機器人100可在全範圍達成教導位置姿勢,所以在第9圖的例中,不論是第9圖(a)至第9圖(i)的任意設置角度,機器人100當然地均可達成教導位置姿勢。如以上所述,判定使用之機器人100的位置姿勢的實現可否,而獲得可於事前驗證系統的實現性的效果。
如此,本發明的機器人程式產生裝置係具備:穩定姿勢算出部、把持方法算出部、組合可否算出部、改換抓持路徑算出部、路徑群算出部、以及程式產生部。其中,該穩定姿勢算出部係根據零件的三維形狀資料,算出零件穩定在平面上的穩定姿勢;該把持方法算出部係根據機械手的三維資料及零件的三維形狀資料,算出利用機械手把持零件的把持方法;該組合可否算出部係從該機器人所進行的把持方法與該機器人以外者所進行的把持方法及穩定姿勢的組合群,根據含有機械手的連接對象的資訊的系統構成資料、穩定姿勢、及把持方法,算出機械手不干涉的組合;該改換抓持路徑算出部係利用組合可否算出部所算出的組合,算出零件的改換抓持路徑;該路徑群算出部係根據指定零件的投入姿勢及排列姿勢的姿勢資料,算出自改換抓持路徑起,教導點之數量為最少的路徑作為路徑群;該程式產生部係根據路徑群,產生機器人的 程式。另外,組合可否算出部係根據穩定姿勢及把持方法中的任一方與把持方法的組合群,算出一個以上機械手不干涉的組合。
特別是,教導點判定部係在平面的作業位置有零件的情況下,機器人可在使零件以垂直於平面之軸旋轉的全範圍達成教導位置姿勢時,則判定為「可」。藉此,可產生在複數個移動路徑中共有教導點之教導點數量較少的機器人程式。此外,判定使用之機器人的位置姿勢的實現可否,而可判斷系統構成的執行性。
實施形態4.
實施形態3中,教導點判定部700係在平面的作業位置有零件170的情況下,機器人100可在使零件170以垂直於平面之軸旋轉的全範圍達成教導位置姿勢時,則判定為「可」。而實施形態4中,機器人100不需在使零件170以垂直於平面之軸旋轉的全範圍,只要可在預定的設置角度範圍內達成教導位置姿勢時,則亦可判定為機器人100可達成教導位置姿勢的情形,而產生組合了可實現把持的把持方法的程式。
第10圖係本發明之實施形態4之程式產生裝置的功能構成圖。教導點判定部701係與教導點判定部700不同,機器人100不需在使零件170以垂直於平面之軸旋轉的全範圍,只要可在預定的設置角度範圍內,在教導點的位置達成教導位置姿勢時,則針對預定的設置角度 的範圍內,判定為「可」。而就其他點而言,教導點判定部701與教導點判定部700並無相異點。
依每個把持方法與穩定姿勢的組合,例如在暫置檯120上使零件170旋轉時,算出機器人100可實現把持方法的零件170的旋轉範圍。教導點判定部701係在平面的作業位置有零件170時,使零件170以垂直於平面之軸(法線)旋轉,並算出機器人100可在教導點的位置達成教導姿勢的設置角度的範圍,來判定為「可」。
例如,在第9圖的例中,若在第9圖(b)至第9圖(d)及第9圖(f)至第9圖(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在平面的作業位置旋轉時,即便無法僅以一個把持方法對應的情形,亦可組合複數個把持方法來產生對應的程式。
如此,本發明的機器人程式產生裝置係具備:穩定姿勢算出部、把持方法算出部、組合可否算出部、改換抓持路徑算出部、路徑群算出部、以及程式產生部。其中,該穩定姿勢算出部係根據零件的三維形狀資料,算出零件穩定在平面上的穩定姿勢;該把持方法算出部係根據機械手的三維資料及零件的三維形狀資料,算出利用機 械手把持零件的把持方法;該組合可否算出部係從該機器人所進行的把持方法與該機器人以外者所進行的把持方法及穩定姿勢的組合群,根據含有機械手的連接對象的資訊的系統構成資料、穩定姿勢、及把持方法,算出機械手不干涉的組合;該改換抓持路徑算出部係利用組合可否算出部所算出的組合,算出零件的改換抓持路徑;該路徑群算出部係根據指定零件的投入姿勢及排列姿勢的姿勢資料,算出自改換抓持路徑起,教導點之數量為最少的路徑作為路徑群;該程式產生部係根據路徑群,產生機器人的程式。另外,組合可否算出部係根據穩定姿勢及把持方法中的任一方與把持方法的組合群,算出一個以上機械手不干涉的組合。
特別是,本實施形態中,教導點判定部係在平面的作業位置有零件時,使零件以垂直於平面之軸旋轉,並算出機器人可達成教導位置姿勢的設置角度,且具備在教導點判定部判定可達成教導位置姿勢的設置角度有零件時,算出利用機械手把持零件的路徑之把持路徑算出部,所以零件在平面的作業位置旋轉時,即便無法僅以一個把持方法對應的情形,亦可組合複數個把持方法來產生對應的程式。
實施形態5.
實施形態5係對於實施形態1至實施形態4中的任一個實施形態,追加因應機器人的運作狀況,產生限制機械手的移動速度,而且要求維護作業的程式者。
在散亂堆積零件170的排列系統中,難以不發生零件170的滑落等之作業失敗而持續運作,且必須在適當的時機實施維護作業。在散亂堆積零件170的處理中,零件170的位置姿勢的不確定性高,另外,混入有不良零件170的可能性亦高。所以,難以如一般化的設備,實現接近100%的作業成功率。
因此,每當作業失敗時才由作業者進行復原作業的運用效率不佳,而有容許某一定量的失敗而持續運作的系統需求。在此,所謂的容許失敗係指:零件170在移動中落下等,不對其他零件排列作業造成影響的失敗。
當然地,太多的零件170落下而推積時,會產生問題。此外,從零件170的管理的觀點來看,掌握落下的零件170的種類及數量極為重要。再者,若得知零件170在系統內的哪一個製程落下,則亦容易由維護作業者進行零件170的回收。
第11圖係本發明的實施形態5的程式產生裝置的功能構成圖。在此,係對於基本的實施形態之實施形態1,追加維護作業程式產生部900及運作狀態資料910。運作狀況資料910係關於機器人的運轉狀況的資料庫,且記憶於記憶裝置301。此外,維護作業程式產生部900的 演算係以處理器300演算,且維護作業程式產生部900係輸出程式。
維護作業程式產生部900係對於程式產生部290所輸出的機器人程式產生並輸出請求維護作業的程式。維護作業程式產生部900的輸出,亦可追加於程式產生部290所產生的程式而輸出程式。就追加的程式而言,例如運作履歷滿足一定的條件之後,則將機器人100的移動速度限制為安全速度,且要求維護作業。
在此,所謂的運作履歷的一定條件係指:例如,從前一次的維護作業起,產生指定之次數的作業失敗等。作業失敗係例如可藉由二維視覺感測器160所進行的暫置檯120的認識、機器人100的壓力感測器所進行的把持零件170的監視、或排列檯140的排列零件170的確認等而加以檢測。此外,所謂的安全速度係指:例如,機械手前端的合成速度為250mm/sec以下的教導作業時的移動速度,且為作業者容易迴避與機器人100之干涉的速度。
藉此,限制機器人100的移動速度,可使機器人100不停止運作而安全地進行維護作業。此外,所謂的維護作業的要求係指對於維護作業者要求除去落下的零件170。此時,亦可附加檢測到作業失敗時的零件170的種別、可能的落下場所等的資訊。當維護作業結束後,即可解除移動速度的限制並持續運作。
本發明的機器人程式產生裝置係具備:穩定姿勢算出部、把持方法算出部、組合可否算出部、改換抓持路徑算出部、路徑群算出部、程式產生部、以及維護作業程式產生部,所以維護作業者可根據運作狀況確認維護必要性,與機器人系統停止以進行維護的情形相比較,可提高機器人系統的運作效率。其中,該穩定姿勢算出部係根據零件的三維形狀資料,算出零件穩定在平面上的穩定姿勢;該把持方法算出部係根據機械手的三維資料及零件的三維形狀資料,算出利用機械手把持零件的把持方法;該組合可否算出部係從該機器人所進行的把持方法與該機器人以外者所進行的把持方法及穩定姿勢的組合群,根據含有機械手的連接對象的資訊的系統構成資料、穩定姿勢、及把持方法,算出機械手不干涉的組合;該改換抓持路徑算出部係利用組合可否算出部所算出的組合,算出零件的改換抓持路徑;該路徑群算出部係根據指定零件的投入姿勢及排列姿勢的姿勢資料,算出自改換抓持路徑起,教導點之數量為最少的路徑作為路徑群;該程式產生部係根據路徑群,產生機器人的程式;該維護作業程式產生部係根據機器人的運作狀況資料來限制機器人的移動速度,且產生要求機器人的維護作業的維護作業程式。另外,組合可否算出部係根據穩定姿勢及把持方法中的任一方與把持方法的組合群,算出一個以上機械手不干涉的組合。

Claims (7)

  1. 一種機器人程式的產生裝置,係具備:穩定姿勢算出部,係根據零件的三維形狀資料,算出前述零件穩定在平面上的穩定姿勢;把持方法算出部,係根據機械手的三維資料及前述三維形狀資料,算出利用前述機械手把持前述零件的把持方法;組合可否算出部,係從該機器人所進行的前述把持方法與該機器人以外者所進行的前述把持方法及前述穩定姿勢的組合群,根據含有前述機械手的連接對象的資訊的系統構成資料、前述穩定姿勢、及前述把持方法,算出前述機械手不干涉的前述組合;改換抓持路徑算出部,係利用前述組合可否算出部所算出的前述組合,算出前述零件的改換抓持路徑;路徑群算出部,係根據指定前述零件的投入姿勢及排列姿勢的姿勢資料,算出自前述改換抓持路徑起,教導點之數量為最少的路徑作為路徑群;以及程式產生部,係根據前述路徑群,產生前述機器人的程式。
  2. 如申請專利範圍第1項所述之機器人程式的產生裝置,其中,前述系統構成資料係包含前述機械手要進行作業的作業位置的資料;且該機器人程式的產生裝置具備教導點輸出部,該 教導點輸出部係算出在前述作業位置有前述零件時之前述機械手的位置,並輸出前述教導點的位置者。
  3. 如申請專利範圍第1項所述之機器人程式的產生裝置,其中,前述系統構成資料係包含前述機械手要進行作業的作業位置的資料;且該機器人程式的產生裝置具備教導點判定部,該教導點判定部係在前述作業位置有前述零件時,判定前述機器人可否在前述教導點的位置達成教導位置姿勢。
  4. 如申請專利範圍第3項所述之機器人程式的產生裝置,其中,前述教導點判定部係在平面的前述作業位置有前述零件的情況下,前述機器人在使前述零件以垂直於前述平面之軸旋轉的全範圍可達成前述教導位置姿勢時,判定為「可」。
  5. 如申請專利範圍第3項所述之機器人程式的產生裝置,其中,前述教導點判定部係在平面的前述作業位置有前述零件的情況下,使前述零件以垂直於前述平面之軸旋轉,並算出前述機器人可達成前述教導位置姿勢的設置角度;且該機器人程式的產生裝置具備把持路徑算出部,該把持路徑算出部係在以前述教導點判定部判定可達 成前述教導位置姿勢的前述設置角度有前述零件時,算出利用前述機械手把持前述零件的路徑。
  6. 如申請專利範圍第1項至第5項中任一項所述之機器人程式的產生裝置,更具備:維護作業程式產生部,係根據前述機器人的運作狀況資料來限制前述機器人的移動速度,且產生要求前述機器人的維護作業之維護作業程式。
  7. 一種機器人程式的產生方法,係具備:穩定姿勢算出步驟,係根據零件的三維形狀資料,算出前述零件穩定在平面上的複數個穩定姿勢;把持方法算出步驟,係根據機械手的三維資料及前述三維形狀資料,算出利用前述機械手把持前述零件的把持方法;組合可否算出步驟,係從該機器人所進行的前述把持方法與前述機器人以外者所進行的前述把持方法及前述穩定姿勢的組合群,根據含有前述機械手的連接對象的資訊的系統構成資料、前述穩定姿勢、及述把持方法,算出前述機械手不干涉的前述組合;改換抓持路徑算出步驟,係利用前述組合可否算出步驟所算出的前述組合,算出前述零件的改換抓持路徑;路徑群算出步驟,係根據指定前述零件的投入姿勢及排列姿勢的姿勢資料,算出自前述改換抓持路徑起,教導點之數量為最少的路徑作為路徑群;以及 程式產生步驟,係根據前述路徑群,產生機器人的程式。
TW107103806A 2017-03-24 2018-02-02 機器人程式之產生裝置及產生方法 TWI649171B (zh)

Applications Claiming Priority (4)

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

Publications (2)

Publication Number Publication Date
TW201834802A true TW201834802A (zh) 2018-10-01
TWI649171B TWI649171B (zh) 2019-02-01

Family

ID=63585203

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107103806A TWI649171B (zh) 2017-03-24 2018-02-02 機器人程式之產生裝置及產生方法

Country Status (6)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI775525B (zh) * 2021-07-09 2022-08-21 群邁通訊股份有限公司 零部件識別方法及系統

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
DE102019122790B4 (de) * 2018-08-24 2021-03-25 Nvidia Corp. Robotersteuerungssystem
WO2021144911A1 (ja) * 2020-01-16 2021-07-22 オムロン株式会社 プログラム生成装置、プログラム生成方法、及び生成プログラム
DE102021209646B4 (de) 2021-09-02 2024-05-02 Robert Bosch Gesellschaft mit beschränkter Haftung Robotervorrichtung, Verfahren zum computerimplementierten Trainieren eines Roboter-Steuerungsmodells und Verfahren zum Steuern einer Robotervorrichtung

Family Cites Families (30)

* 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> マルチ作業方法及び装置
JPH10138185A (ja) 1996-11-08 1998-05-26 Ricoh Co Ltd ロボットの制御方法
JP2000010618A (ja) 1998-06-25 2000-01-14 Nippon Telegr & Teleph Corp <Ntt> ロボット教示装置およびロボット教示装置用アプリケーション製造装置とそのプログラムを記録した記録媒体
JP4238256B2 (ja) * 2006-06-06 2009-03-18 ファナック株式会社 ロボットシミュレーション装置
JP4235214B2 (ja) * 2006-07-04 2009-03-11 ファナック株式会社 ロボットプログラムを作成するための装置、プログラム、記録媒体及び方法
JP2009056513A (ja) 2007-08-29 2009-03-19 Toshiba Corp 把持位置姿勢決定システムおよび把持位置姿勢決定方法
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 ファナック株式会社 ワーク取出し装置およびワーク取出し方法
KR101453234B1 (ko) * 2010-11-17 2014-10-22 미쓰비시덴키 가부시키가이샤 워크 취출 장치
JP5803155B2 (ja) * 2011-03-04 2015-11-04 セイコーエプソン株式会社 ロボット位置検出装置及びロボットシステム
DE112012002677B4 (de) 2011-06-29 2018-12-06 Mitsubishi Electric Corp. Zuführvorrichtung für Bauelemente
JP5852364B2 (ja) * 2011-08-26 2016-02-03 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム
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 ファナック株式会社 物品取出装置及び物品取出方法
US9102055B1 (en) * 2013-03-15 2015-08-11 Industrial Perception, Inc. Detection and reconstruction of an environment to facilitate robotic interaction with the environment
JP6057862B2 (ja) 2013-08-29 2017-01-11 三菱電機株式会社 部品供給装置および部品供給装置のプログラム生成方法
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 三菱電機株式会社 ワーク供給装置およびワーク把持姿勢計算方法
WO2016132521A1 (ja) * 2015-02-20 2016-08-25 株式会社日立製作所 教示データ生成装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI775525B (zh) * 2021-07-09 2022-08-21 群邁通訊股份有限公司 零部件識別方法及系統

Also Published As

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

Similar Documents

Publication Publication Date Title
TWI649171B (zh) 機器人程式之產生裝置及產生方法
JP6807949B2 (ja) 干渉回避装置
US11173601B2 (en) Teaching device for performing robot teaching operations and teaching method
CN104936748B (zh) 徒手机器人路径教导
JP3732494B2 (ja) シミュレーション装置
US20150273689A1 (en) Robot control device, robot, robotic system, teaching method, and program
US20080027580A1 (en) Robot programming method and apparatus with both vision and force
US11185984B2 (en) Method and apparatus for controlling robot
WO2019009350A1 (ja) 経路出力方法、経路出力システム及び経路出力プログラム
JP6508691B1 (ja) 制御装置、作業ロボット、プログラム、及び、制御方法
JP2015085475A (ja) 情報処理装置、情報処理方法
CN104070265A (zh) 焊缝信息设定装置、程序、自动示教***以及焊缝信息设定方法
CN107848117B (zh) 机器人***以及控制方法
JP2020110885A (ja) 経路生成装置、経路生成方法、及び経路生成プログラム
US11117257B2 (en) Robot system for performing learning control based on machining results and control method therefor
JP5806105B2 (ja) パラメータ補正方法および制御システム
JP6456557B1 (ja) 把持位置姿勢教示装置、把持位置姿勢教示方法及びロボットシステム
US10377041B2 (en) Apparatus for and method of setting boundary plane
US11518025B2 (en) Robot teaching device, robot teaching method, and method of storing operation instruction
EP4241241A1 (en) Optimizing calibration with constraints between different coordinate frames
JP2015100874A (ja) ロボットシステム
CN104423372B (zh) 示教数据作成***
Manjunath et al. Design & simulation of the workspace for a stationary robot system
Maťuga Control and positioning of robotic arm on CNC cutting machines and their applications in industry
WO2018180299A1 (ja) ロボット教示装置、ロボット教示装置の制御方法及びロボット教示プログラム

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees