KR20230043706A - 작업 프로그램 작성 시스템 및 작업 프로그램 작성 방법 - Google Patents

작업 프로그램 작성 시스템 및 작업 프로그램 작성 방법 Download PDF

Info

Publication number
KR20230043706A
KR20230043706A KR1020220109788A KR20220109788A KR20230043706A KR 20230043706 A KR20230043706 A KR 20230043706A KR 1020220109788 A KR1020220109788 A KR 1020220109788A KR 20220109788 A KR20220109788 A KR 20220109788A KR 20230043706 A KR20230043706 A KR 20230043706A
Authority
KR
South Korea
Prior art keywords
point cloud
cloud data
coordinate system
welding
work
Prior art date
Application number
KR1020220109788A
Other languages
English (en)
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
Priority claimed from JP2022109756A external-priority patent/JP7195476B1/ja
Application filed by 가부시키가이샤 다이헨 filed Critical 가부시키가이샤 다이헨
Publication of KR20230043706A publication Critical patent/KR20230043706A/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • 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
    • B25J9/1666Avoiding collision or forbidden zones
    • 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
    • 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
    • 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/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • 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/37Measurements
    • G05B2219/37217Inspect solder joint, machined part, workpiece, welding result
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40323Modeling robot environment for sensor based robot system
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40392Programming, visual robot programming language
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40476Collision, planning for collision free path
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40548Compare measured distances to obstacle with model of environment
    • 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/45Nc applications
    • G05B2219/45135Welding
    • 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/47Tracing, tracking
    • G05B2219/4705Detect edge during machining, welding, sewing
    • 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/49Nc machine tool, till multiple
    • G05B2219/49386Automatic seam, weld line, finding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker

Abstract

다양한 배치 패턴 또는 배치 요소에 유연하게 대응할 수 있는 작업 프로그램 작성 시스템을 제공한다. 용접 대상을 포함하는 화상을 촬영하는 촬영부(211)와, 촬영부(211)에 의하여 촬영된 화상에 포함되는 마커를 기준으로 하는 유저 좌표계를 설정하는 좌표계 설정부(212)와, 화상에 기초하여 마커의 특정 위치를 검출하고, 해당 검출한 특정 위치를, 용접 대상까지의 거리를 측정하는 거리 계측 센서에 의하여 취득된 점군 데이터 상에 설정하고, 해당 설정한 특정 위치를 원점으로 하는 유저 좌표계의 좌표가 부여된 점군 데이터를, 유저 좌표계에 묘화하는 점군 데이터 묘화부(213)와, 유저 좌표계에 묘화된 점군 데이터에 기초하여, 유저 좌표계에 가상적으로 놓이는 용접 로봇이, 점군 데이터와의 간섭을 회피하면서 용접 동작을 행하도록, 용접 프로그램을 작성하는 프로그램 작성부(215)를 구비한다.

Description

작업 프로그램 작성 시스템 및 작업 프로그램 작성 방법 {WORK PROGRAM CREATING SYSTEM AND WORK PROGRAM CREATING METHOD}
본 발명은, 작업 프로그램 작성 시스템 및 작업 프로그램 작성 방법에 관한 것이다.
하기 특허 문헌 1에는, 용접 로봇의 프로그램을 생성하는 기술이 개시되어 있다. 이 기술에서는, 로봇 시스템의 전형적인 배치 패턴과, 그 배치 패턴에 배치하는 배치 요소(로봇, 주변 장치, 테이블, 워크 등)를 유저에게 선택시키고, 선택된 배치 패턴 및 배치 요소에 기초하여, 배치 요소가 서로 간섭하지 않는 레이아웃을 생성하고, 그 레이아웃에 따라 용접 로봇의 프로그램을 생성하고 있다. 또한, 이 기술에서는, 생성한 프로그램을 가상 공간 상에서 실행하고, 동작 상태의 로봇이 다른 배치 요소와 간섭하는 경우에, 배치 요소의 설치 위치를 자동 수정하고, 자동 수정한 설치 위치에 기초하여 프로그램을 보정하고 있다.
특허 문헌 1: 일본 특허 등록 공보 제6816068호
상기의 기술에서는, 선택하는 배치 패턴 또는 배치 요소를 사전에 준비할 필요가 있다. 따라서, 사전에 준비한 배치 패턴과 상이한 배치 패턴을 채용하는 경우, 또는 사전에 준비한 배치 요소에 존재하지 않는 배치 요소를 채용하는 경우에는, 그 배치 패턴 또는 배치 요소를 선택할 수 있도록 준비하지 않으면, 바른 프로그램을 생성할 수 없다.
이에, 본 발명은, 다양한 배치 패턴 또는 배치 요소에 유연하게 대응할 수 있는 작업 프로그램 작성 시스템 및 작업 프로그램 작성 방법을 제공하는 것을 목적으로 한다.
본 발명의 일 태양에 따른 작업 프로그램 작성 시스템은, 작업 대상을 포함하는 화상을 촬영하는 촬영 단말과, 촬영 단말에 의하여 촬영된 화상에 포함되는 마커를 기준으로 하는 유저 좌표계를 설정하는 좌표계 설정부와, 화상에 기초하여 마커의 특정 위치를 검출하고, 해당 검출한 특정 위치를, 작업 대상까지의 거리를 측정하는 거리 계측 센서에 의하여 취득된 점군 데이터 상에 설정하고, 설정한 특정 위치를 원점으로 하는 유저 좌표계의 좌표가 부여된 점군 데이터를, 유저 좌표계에 묘화하는 점군 데이터 묘화부와, 유저 좌표계에 묘화된 점군 데이터에 기초하여, 유저 좌표계에 가상적으로 놓이는 산업용 로봇이, 점군 데이터와의 간섭을 회피하면서 작업을 행하도록, 작업 프로그램을 작성하는 프로그램 작성부를 구비한다.
이 태양에 의하면, 작업 대상 및 마커를 촬영한 화상에 기초하여, 마커의 특정 위치를 검출하고, 그 검출한 마커의 특정 위치를 점군 데이터 상에 설정하고, 그 설정한 마커의 특정 위치를 원점으로 하는 유저 좌표계의 좌표를 부여한 점군 데이터를 화상 상에 묘화하고, 유저 좌표계에 가상적으로 놓이는 산업용 로봇이, 점군 데이터와의 간섭을 회피하면서 작업을 행하도록, 작업 프로그램을 작성할 수 있다. 따라서, 작업 대상의 배치 상태 또는 장해물의 상황에 관계없이, 간섭을 회피하면서 작업을 행하게 하는 것이 가능해진다.
상기 태양에 있어서, 프로그램 작성부는, 산업용 로봇이 점군 데이터와 간섭한다고 판정한 경우에, 간섭한다고 판정한 점군 데이터를 경계로 하여 형성되는 에어리어 중, 촬영 단말이 있는 측을 간섭 회피 에어리어로 하고, 해당 간섭 회피 에어리어 중에서 산업용 로봇의 동작 궤적의 일부를 변경함으로써, 간섭한다고 판정한 점군 데이터와의 간섭을 회피시켜도 된다.
이 태양에 의하면, 산업용 로봇이 점군 데이터와 간섭한다고 판정한 경우에, 점군 데이터의 전방측에 있는 간섭 회피 에어리어 중에서 산업용 로봇의 동작 궤적의 일부를 변경하여 간섭을 회피시키는 것이 가능해진다.
상기 태양에 있어서, 간섭한다고 판정한 점군 데이터와의 간섭을 회피시키는 방향은, 간섭 회피 에어리어 중에서, 간섭한다고 판정한 점군 데이터로부터 촬영 단말에 가까워지는 방향이어도 된다.
이 태양에 의하면, 촬영 단말에 가까워지는 방향으로 회피시킬 수 있으므로, 점군 데이터의 신뢰도가 높아지는 방향으로 산업용 로봇을 회피시키는 것이 가능해진다.
상기 태양에 있어서, 유저 좌표계에 묘화된 점군 데이터에 기초하여, 작업 대상의 작업 개소를 검출하는 검출부를 더 구비하고, 프로그램 작성부는, 산업용 로봇이, 점군 데이터와의 간섭을 회피하면서, 검출부에 의하여 검출된 작업 개소에 대한 작업을 행하도록, 작업 프로그램을 작성해도 된다.
이 태양에 의하면, 유저 좌표계에 묘화된 점군 데이터에 기초하여 작업 개소를 인식하고, 점군 데이터와의 간섭을 회피하면서, 그 인식한 작업 개소에 대한 작업을 행하도록, 작업 프로그램을 작성할 수 있다. 따라서, 작업 프로그램에 의한 작업의 정밀도를 향상시키는 것이 가능해진다.
상기 태양에 있어서, 촬영 단말이 복수 대 있고, 각각의 촬영 단말이, 각각 상이한 위치로부터 화상을 촬영해도 된다.
이 태양에 의하면, 촬영한 위치마다 간섭의 유무를 판정하고, 간섭이 있다고 판정한 경우에 간섭을 회피하도록 조정하는 것이 가능해진다.
상기 태양에 있어서, 간섭 회피의 대상으로부터 제외하는 점군 데이터의 집합을 설정하는 설정부를 더 구비해도 된다.
이 태양에 의하면, 작업에 지장을 초래하지 않는 간섭에 대해서는, 회피 동작을 행하지 않고 작업을 진행시킬 수 있다.
본 발명의 다른 태양에 따른 작업 프로그램 작성 방법은, 프로세서에 의하여 실행되는 방법으로서, 촬영 단말에 의하여 촬영된 작업 대상을 포함하는 화상에 포함되는 마커를 기준으로 하는 유저 좌표계를 설정하는 단계와, 화상에 기초하여 마커의 특정 위치를 검출하고, 해당 검출한 특정 위치를, 작업 대상까지의 거리를 측정하는 거리 계측 센서에 의하여 취득된 점군 데이터 상에 설정하고, 해당 설정한 특정 위치를 원점으로 하는 유저 좌표계의 좌표가 부여된 점군 데이터를, 유저 좌표계에 묘화하는 단계와, 유저 좌표계에 묘화된 점군 데이터에 기초하여, 유저 좌표계에 가상적으로 놓이는 산업용 로봇이, 점군 데이터와의 간섭을 회피하면서 작업을 행하도록, 작업 프로그램을 작성하는 단계 포함한다.
이 태양에 의하면, 작업 대상 및 마커를 촬영한 화상에 기초하여, 마커의 특정 위치를 검출하고, 그 검출한 마커의 특정 위치를 점군 데이터 상에 설정하고, 그 설정한 마커의 특정 위치를 원점으로 하는 유저 좌표계의 좌표를 부여한 점군 데이터를 화상 상에 묘화하고, 유저 좌표계에 가상적으로 놓이는 산업용 로봇이, 점군 데이터와의 간섭을 회피하면서 작업을 행하도록, 작업 프로그램을 작성할 수 있다. 따라서, 작업 대상의 배치 상태 또는 장해물의 상황에 관계없이, 간섭을 회피하면서 작업을 행하게 하는 것이 가능해진다.
본 발명에 의하면, 다양한 배치 패턴 또는 배치 요소에 유연하게 대응할 수 있는 작업 프로그램 작성 시스템 및 작업 프로그램 작성 방법을 제공할 수 있다.
도 1은, 실시 형태에 따른 용접 프로그램 작성 시스템을 포함하는 용접 로봇 시스템의 구성을 예시하는 도면이다.
도 2는, 용접 프로그램 작성 시스템의 기능적인 구성을 예시하는 도면이다.
도 3은, 마커의 위치를 원점으로 하는 유저 좌표계의 일예를 도시하는 도면이다.
도 4는, 용접 대상의 일예를 도시하는 도면이다.
도 5는, 유저 좌표계에 묘화되는 점군 데이터의 일예를 도시하는 도면이다.
도 6은, 용접 대상의 일예를 도시하는 도면이다.
도 7은, 용접 프로그램을 작성하는 순서의 일예를 설명하기 위한 도면이다.
도 8은, 점군 데이터와의 간섭을 회피할 수 있는 방향을 인식하는 방법의 일예를 나타내는 모식도이다.
도 9는, 용접 프로그램 작성 시스템으로 용접 프로그램을 작성할 때의 동작의 일예를 설명하기 위한 플로우차트이다.
도 10은, 변형예에 따른 용접 프로그램 작성 시스템의 기능적인 구성을 예시하는 도면이다.
첨부 도면을 참조하여, 본 발명의 바람직한 실시 형태에 대하여 설명한다. 또한, 각 도면에서, 동일한 부호를 붙이는 것은, 동일 또는 같은 구성을 가진다. 또한, 도면은 모식적인 것이므로, 각 구성 요소의 치수 또는 비율은 실제의 것과는 상위(相違)하다.
도 1은, 실시 형태에 따른 용접 프로그램 작성 시스템을 포함하는 용접 로봇 시스템의 구성을 예시하는 도면이다. 용접 로봇 시스템(100)은, 예를 들면, 촬영 단말(1)과, 로봇 제어 장치(2)와, 매니퓰레이터(3)를 구비한다. 촬영 단말(1)과 로봇 제어 장치(2)는, 예를 들면, 네트워크(N)를 통하여 접속되고, 로봇 제어 장치(2)와 매니퓰레이터(3)는, 예를 들면, 통신 케이블(C)을 통하여 접속된다. 네트워크(N)는, 유선(통신 케이블을 포함)이어도 되고 무선이어도 된다. 또한, 용접 로봇 시스템(100)에, 티칭 팬던트를 포함해도 된다. 티칭 팬던트는, 작업자가 매니퓰레이터(3)의 동작을 교시하는 조작 장치이다.
매니퓰레이터(3)는, 로봇 제어 장치(2)에 있어서 설정되는 시공 조건에 따라 아크 용접을 행하는 용접 로봇이다. 매니퓰레이터(3)는, 예를 들면, 공장의 마루면 등에 고정되는 베이스 부재 상에 설치되는 다관절 암(31)과, 다관절 암(31)의 선단에 연결되는 용접 토치(32)를 가진다. 여기서, 용접 토치(32)에 공급되는 용접 와이어는, 매니퓰레이터(3)의 구성에 포함하지 않는 것으로 한다.
로봇 제어 장치(2)는, 매니퓰레이터(3)의 동작을 제어하는 제어 유닛이며, 예를 들면, 제어부(21), 기억부(22), 통신부(23) 및 용접 전원부(24)를 포함한다.
제어부(21)는, 예를 들면, 기억부(22)에 기억되어 있는 작업 프로그램을 프로세서가 실행함으로써, 매니퓰레이터(3) 및 용접 전원부(24)를 제어한다.
통신부(23)는, 네트워크(N)를 통하여 접속되는 촬영 단말(1)과의 통신을 제어하는 것, 또는 통신 케이블(C)을 통하여 접속되는 매니퓰레이터(3)와의 통신을 제어한다.
용접 전원부(24)는, 예를 들면, 용접 와이어의 선단과 워크와의 사이에 아크를 발생시키기 위하여, 미리 정해진 용접의 시공 조건에 따라, 용접 전류 및 용접 전압 등을 매니퓰레이터(3)로 공급한다. 용접의 시공 조건에는, 예를 들면, 용접 조건, 용접 개시 위치, 용접 종료 위치, 아크 방전의 시간, 용접 거리, 용접 토치의 자세 및 용접 토치의 이동 속도 등의 데이터 항목이 포함된다. 용접 전원부(24)는, 로봇 제어 장치(2)와 별개로 구비하는 것으로 해도 된다.
촬영 단말(1)은, 예를 들면, 디지털 카메라이지만, 디지털 카메라가 부착된 가반형(可搬型) 단말이어도 된다. 가반형 단말에는, 예를 들면, 태블릿 단말, 스마트폰, 휴대 정보 단말(PDA), 노트 PC(퍼스널 컴퓨터) 등의 운반 가능한 단말이 포함된다. 촬영 단말(1)은, 예를 들면, 제어부(11), 촬영부(12), 통신부(13), 표시부(14)를 포함한다.
제어부(11)는, 메모리에 저장된 소정의 프로그램을 프로세서가 실행함으로써, 촬영 단말(1)의 각 부를 제어한다.
촬영부(12)는, 예를 들면, 렌즈 및 촬상 소자(이미지 센서)를 포함하여, 렌즈로 수광한 피사체의 빛을 전기 신호(디지털 화상 데이터)로 변환한다.
통신부(13)는, 네트워크(N)를 통하여 접속되는 로봇 제어 장치(2)와의 통신을 제어한다.
표시부(14)는, 예를 들면, 터치 패널을 가지는 디스플레이이며, 촬영부(12)에 의한 피사체의 영상을 표시함과 동시에, 작업자에 의한 조작 지시 등의 입력을 접수한다. 표시부(14)는, 예를 들면, 터치 패널을 가지는 디스플레이 장치로서, 촬영 단말(1)과는 별개로 구비하는 것으로 해도 된다.
도 2는, 본 발명에 따른 용접 프로그램 작성 시스템의 기능적인 구성을 예시하는 도면이다. 용접 프로그램 작성 시스템은, 기능적인 구성으로서, 예를 들면, 촬영부(211)와, 좌표계 설정부(212)와, 점군 데이터 묘화부(213)와, 검출부(214)와, 프로그램 작성부(215)를 가진다. 이러한 기능 중, 촬영부(211)는, 촬영 단말(1)이 가지는 기능이다. 한편, 좌표계 설정부(212), 점군 데이터 묘화부(213), 검출부(214) 및 프로그램 작성부(215)는, 촬영 단말(1) 및 로봇 제어 장치(2) 중 어느 하나가 전부를 구비해도 되고, 촬영 단말(1) 및 로봇 제어 장치(2)에 각 기능을 분산하여 구비해도 된다. 또한, 촬영 단말(1) 및 로봇 제어 장치(2) 이외의 다른 장치가, 상기 기능의 일부 또는 전부를 구비해도 된다.
촬영부(211)는, 상기 촬영 단말(1)의 촬영부(12)와 동일하다. 본 실시 형태에 따른 촬영부(211)는, 예를 들면, 아크 용접의 대상이 되는 복수 매의 철판 부재(워크)에 의하여 구성되는 구조물을 용접 대상으로 하여 촬영한다. 도 3에, 용접 대상의 일예를 도시한다. 동일 도면에는, 저판이 되는 1 매의 워크(Wa)와, 측판이 되는 2 매의 워크(Wb, Wc)와, 배판이 되는 1 매의 워크(Wd)로 구성되는 구조물이, 용접 대상으로서 표시되어 있다. 이 구조물에 의하여 형성되는 공간 내에는, 마커(M)가 놓여 있다.
도 2에 도시하는 좌표계 설정부(212)는, 촬영부(211)에 의한 영상에 포함되는 마커(M)의 위치를 원점으로 하는 유저 좌표계를 설정한다. 도 3에, 마커(M)의 위치를 원점으로 하는 유저 좌표계의 일예를 나타낸다. 동일 도면에는, 마커(M)의 위치를 원점(O)으로 하고, 그 원점(O)에서 서로 직교하는 X 축, Y 축 및 Z 축에 의한 3 차원의 직교 좌표계가, 유저 좌표계로서 표시되어 있다.
또한, 유저 좌표계의 원점은, 마커(예를 들면, 마커의 각(角) 또는 마커의 중심 등)를 기준으로 하여 설정할 수 있으면 된다. 촬영 단말(1)을 기준으로 하여 유저 좌표계의 원점을 설정하는 것이 아니라, 마커를 기준으로 하여 유저 좌표계의 원점을 설정하는 것은, 이하의 이유에 의한다. 촬영 단말(1)은, 촬영 시에 작업자가 소지하여 이동하므로, 로봇 좌표계 상에서 촬영 단말(1)의 위치를 특정하는 것은 어렵다. 이에 대하여, 마커는, 고정하여 배치되므로, 로봇 좌표계 상에서 마커의 위치를 특정하는 것은 비교적 용이하다. 따라서, 마커를 기준으로 하여 유저 좌표계를 설정하면, 촬영 단말(1)을 기준으로 하여 유저 좌표계를 설정하는 것보다도, 유저 좌표계와 로봇 좌표계와의 위치 관계를 칼리브레이션하기 쉽게 하는 것이 가능해진다.
여기서, 마커(M)는, 공간 내에 놓여있는 것을 촬영부(211)에 인식시킬 수 있는 식별자이면 되지만, 바람직하게는 AR 마커를 이용하는 것이 좋다. AR 마커를 이용함으로써, 공간 내에 놓인 AR 마커를 인식한 때에, 그 AR 마커를 원점으로 하는 유저 좌표계를, 실제의 영상에 중합하여 표시시키는 것이 간이(簡易)하게 실현 가능해진다.
마커를 기준으로 하는 유저 좌표계는, 카메라 좌표계의 원점(예를 들면, 렌즈의 중심)을, 후술하는 마커의 특정 위치로 이동시킴으로써 설정할 수 있다. 이러한 유저 좌표계는, 예를 들면, AR 마커의 좌표계를 설정하는 공지의 기술을 적용해 설정할 수 있다.
도 2에 도시한 점군 데이터 묘화부(213)는, 촬영부(211)에 의하여 촬영된 화상에 포함되는 물체에 대응하는 좌표 데이터(점군 데이터)를 취득하고, 그 취득한 좌표 데이터를 유저 좌표계에 묘화한다.
구체적으로 설명한다. 점군 데이터 묘화부(213)는, 촬영부(211)에 의하여 촬영된 화상에 기초하여 마커의 특정 위치(예를 들면, 마커의 각(角) 또는 마커의 중심)를 검출하고, 그 검출한 마커의 특정 위치를, 후술하는 거리 계측 센서에 의하여 취득되는 점군 데이터 상에 설정하고, 그 설정한 마커의 특정 위치를 원점으로 하는 유저 좌표계의 좌표가 부여된 점군 데이터를, 유저 좌표계에 묘화한다. 점군 데이터 상에 설정하는 마커의 특정 위치는, 예를 들면, 점군 데이터 상의 마커의 특정 위치를 데이터 해석에 의하여 자동적으로 인식시켜도 되고, 점군 데이터 상의 마커의 특정 위치를 작업자가 가리켜 나타내는 등 하여 지정해도 된다.
물체에 대응하는 좌표 데이터는, 예를 들면, 거리 계측 센서에 의하여 취득할 수 있다. 거리 계측 센서는, 용접 대상까지의 거리를 측정 가능한 센서이면 된다. 거리 계측 센서로서, 예를 들면, LiDAR(Light Detection and Ranging) 센서, 밀리파 센서, 초음파 센서 등을 이용할 수 있다. 또한, 물체에 대응하는 좌표 데이터를, 용접 대상을 상이한 복수의 위치로부터 촬영한 복수의 화상에 기초하여 산정함으로써 취득해도 된다. 이 경우, 공지의 스테레오법에 의한 3 차원 계측 수법을 이용할 수 있다.
여기서, 거리 계측 센서를 촬영 단말(1)에 포함해도 된다. 이에 의하여, 이미지 센서와 거리 계측 센서와의 위치 관계를 고정시킬 수 있어, 각 센서에서 데이터를 취득하는 타이밍을 맞추는 것이 가능해진다. 따라서, 상술한 마커의 특정 위치를 점군 데이터 상에 설정하는 처리 효율을 향상시키는 것이 가능해진다. 또한, 이미지 센서와 거리 계측 센서를 촬영 단말(1)에 구비함으로써, 용접 대상의 용접선과 마커를 동시에 촬영할 수 있는 임의의 위치에, 촬영 단말(1)을 조작하는 작업자가 자유롭게 이동하여 촬영하는 것이 가능해지므로, 작업 효율을 높일 수 있다.
또한, 화상을 촬영하여 취득하는 센서의 기능과 거리를 계측하여 취득하는 센서의 기능을 겸비하는 센서를 촬영 단말(1)에 포함해도 된다. 이에 의하여, 용접 대상을 포함하는 화상과 용접 대상까지의 거리를 같은 개소로부터 취득하고, 또한 같은 타이밍에서 취득할 수 있으므로, 상술한 마커의 특정 위치를 점군 데이터 상에 설정하는 처리 효율을 더 높이는 것이 가능해진다.
도 4 및 도 5를 참조하여, 화상에 포함되는 물체에 대응하는 좌표 데이터를, 점군 데이터로서 유저 좌표계에 묘화하는 개념에 대하여 설명한다.
도 4는, 용접 대상의 일예를 도시하는 도면이다. 동일 도면에는, 작업 테이블(T) 상에 놓인 워크(We)와, 그 워크(We)와 대략 수직 관계가 되도록 놓인 워크(Wf)로 구성되는 용접 대상이 예시되어 있다. 용접 대상의 옆에 마커(M)가 놓여 있다.
도 5는, 유저 좌표계에 묘화되는 점군 데이터의 일예를 도시하는 도면이다. 동일 도면에는, 도 4의 워크(We) 및 워크(Wf)에 각각 대응하는 좌표 데이터(Wec, Wfc)와, 도 4의 작업 테이블(T)에 대응하는 좌표 데이터(Tc)가 점군 데이터로서 유저 좌표계에 묘화되어 있다.
도 2에 도시하는 검출부(214)는, 유저 좌표계에 묘화된 점군 데이터에 기초하여, 용접 대상의 용접선을 검출한다. 구체적으로, 검출부(214)는, 유저 좌표계에 묘화된 점군 데이터에 기초하여, 용접 대상에 대응하는 복수의 평면을 인식한다. 검출부(214)는, 이들 복수의 평면에 포함되는 2 개의 평면의 교선을 용접선으로서 검출한다. 2 개의 평면의 조합이 복수 존재하는 경우에는, 각각의 조합마다 용접선을 검출한다.
여기서, 용접선으로서 검출하는 것은, 2 개의 평면의 교선으로 한정되지 않는다. 예를 들면, 2 개의 면의 교선을 용접선으로서 검출해도 된다.
또한, 검출된 용접선이, 실제로 용접을 행하는 용접선인지의 여부를, 예를 들면, 음성 또는 문자 메세지 등의 가이드에 따라, 작업자가 화상 상에서 선별하여, 실제로 용접을 행하는 용접선만을 남길 수 있도록 해도 된다. 실제로 용접을 행하는 용접선만을 남기는 방법의 일예에 대하여, 도 6을 참조하여 설명한다.
동일 도면에는, 검출부(214)에 의하여 검출된 복수의 용접선이, 용접 대상의 화상 상에 중합시켜 표시되어 있다. 이들 복수의 용접선 중, 실제로 용접을 행하는 용접선이, 예를 들면, 용접선(La, Lb, Lc, Ld)의 4 개라고 한다. 이 경우, 예를 들면, 음성 또는 문자 메세지 등의 가이드에 따라, 작업자가 화상 상에 표시된 복수의 용접선 중에서, 실제의 용접선에 해당하지 않는 선을 차례대로 터치(탭)해 가면, 터치한 용접선이 화상 상으로부터 제거된다. 이에 의하여, 실제로 용접을 행하는 용접선(La, Lb, Lc, Ld)만을 화상 상에 남길 수 있다. 또한, 작업자가 화상 상에 원 등으로 범위를 지정하고, 그 지정한 범위 내에 있는 용접선만을 남기는 것으로 해도 된다.
프로그램 작성부(215)는, 유저 좌표계에 묘화된 점군 데이터에 기초하여, 유저 좌표계에 가상적으로 놓이는 매니퓰레이터(3)가, 점군 데이터와의 간섭을 회피하면서 용접 동작을 행하도록, 아크 용접을 행하는 용접 프로그램을 작성한다. 여기서, 본 실시 형태에 있어서의 간섭이란, 매니퓰레이터(3)가 용접 동작을 행할 때에, 점군 데이터에 대응하는 물체와의 접촉 등에 의하여, 그 용접 동작이 방해되는(정상적인 용접 동작에 지장이 생기는) 것을 말한다.
매니퓰레이터(3)를 가상적으로 두는 위치는, 예를 들면, 음성 또는 문자 메세지 등의 가이드에 따라, 작업자가 용접 대상의 화상 상을 터치 등 함으로써 작업자가 임의로 지정할 수 있다.
또한, 가상적으로 놓이는 매니퓰레이터(3)는, 예를 들면, 와이어 송급(送給) 장치 또는 각종 센서, 용접 토치 등의 부속 부품이 접속된 모델이어도 된다.
구체적으로, 프로그램 작성부(215)는, 유저 좌표계에 가상적으로 놓이는 매니퓰레이터(3)가, 유저 좌표계에 묘화된 점군 데이터와의 간섭을 회피하고, 또한 검출부(214)에 의하여 검출된 용접선을 따라가도록 용접 프로그램을 작성한다. 용접 프로그램을 작성하는 순서의 일예에 대하여, 도 7을 참조하여 설명한다.
동일 도면에는, 실제로 용접을 행하는 용접선으로서, 4 개의 용접선(La, Lb, Lc, Ld)이 용접 대상의 화상 상에 중합시켜 표시되어 있다. 4 개의 용접선(La, Lb, Lc, Ld)을 용접하는 순서 또는 용접하는 방향은, 작업자가 화면 상으로부터 지정하여 설정해도 되고, 프로그램 작성부(215)가, 예를 들면, 최단 거리가 되는 경로를 산정하여 결정해도 된다. 이 예에서는, 용접선(La), 용접선(Lb), 용접선(Lc), 용접선(Ld)의 순서대로 용접하고, 용접선(La) 및 용접선(Lb)은 지면 상에서 우측 방향으로 용접하고, 용접선(Lc) 및 용접선(Ld)은 지면 상에서 좌측 방향으로 용접하도록 설정되어 있는 것으로 한다.
맨 처음으로, 프로그램 작성부(215)는, 매니퓰레이터(3)의 기준 위치로부터 용접선(La)의 용접 개시 위치까지 용접 토치(32)를 이동시키는 프로그램을 작성한다. 이어서, 프로그램 작성부(215)는, 용접선(La)의 용접 개시 위치에서 아크 용접을 개시하고, 아크 용접하면서 용접선(La)을 따라가도록 용접 토치(32)를 이동시켜, 용접선(La)의 용접 종료 위치에서 아크 용접을 종료시키는 프로그램을 작성한다.
이어서, 프로그램 작성부(215)는, 용접선(La)의 용접 종료 위치로부터 용접선(Lb)의 용접 개시 위치까지 용접 토치(32)를 이동시키는 프로그램을 작성한다. 이 때, 용접 토치(32)가 점군 데이터와 간섭하지 않는 경로를 통하여 이동하도록, 용접 토치(32)의 이동 경로(동작 궤적)를 조정한다. 이 조정은, 예를 들면, 용접 토치(32)가 점군 데이터와 간섭할지의 여부를 판정하고, 간섭하는 경우에, 그 간섭을 회피할 수 있는 방향으로 용접 토치(32)의 이동 경로를 변경함으로써 행할 수 있다. 점군 데이터와의 간섭을 회피할 수 있는 방향을 인식하는 방법에 대해서는 후술한다.
이어서, 프로그램 작성부(215)는, 용접선(Lb)의 용접 개시 위치에서 아크 용접을 개시하고, 아크 용접하면서 용접선(Lb)을 따라가도록 용접 토치(32)를 이동시켜, 용접선(Lb)의 용접 종료 위치에서 아크 용접을 종료시키는 프로그램을 작성한다. 이어서, 프로그램 작성부(215)는, 용접선(Lb)의 용접 종료 위치로부터 용접선(Lc)의 용접 개시 위치까지 용접 토치(32)를 이동시키는 프로그램을, 이동 경로를 조정하면서 작성한다.
이어서, 프로그램 작성부(215)는, 용접선(Lc)의 용접 개시 위치에서 아크 용접을 개시하고, 아크 용접하면서 용접선(Lc)을 따라가도록 용접 토치(32)를 이동시켜, 용접선(Lc)의 용접 종료 위치에서 아크 용접을 종료시키는 프로그램을 작성한다. 이어서, 프로그램 작성부(215)는, 용접선(Lc)의 용접 종료 위치로부터 용접선(Ld)의 용접 개시 위치까지 용접 토치(32)를 이동시키는 프로그램을, 이동 경로를 조정하면서 작성한다.
이어서, 프로그램 작성부(215)는, 용접선(Ld)의 용접 개시 위치에서 아크 용접을 개시하고, 아크 용접하면서 용접선(Ld)을 따라가도록 용접 토치(32)를 이동시켜, 용접선(Ld)의 용접 종료 위치에서 아크 용접을 종료시키는 프로그램을 작성한다. 이어서, 프로그램 작성부(215)는, 용접선(Ld)의 용접 종료 위치로부터 매니퓰레이터(3)의 기준 위치까지 용접 토치(32)를 이동시키는 프로그램을 작성한다.
프로그램 작성부(215)는, 작성한 용접 프로그램을, 로봇 제어 장치(2)의 기억부(22)에 기억시킨다. 이에 의하여, 매니퓰레이터(3)가 아크 용접을 행할 때에, 로봇 제어 장치(2)의 제어부(21)가 용접 프로그램을 읽어들이고, 그 용접 프로그램으로 지정된 용접 순서에 따라, 물체와의 간섭을 회피하면서 아크 용접을 행하도록, 매니퓰레이터(3)를 제어하는 것이 가능해진다.
도 8을 참조하여, 프로그램 작성부(215)가, 점군 데이터와의 간섭을 회피할 수 있는 방향을 인식하는 방법의 일예에 대하여 설명한다. 도 8은, 거리 계측 센서를 탑재하는 촬영 단말(1)에 의하여 촬영되는 화상에, 마커(M)와 간섭물(I)(예를 들면, 용접 대상 또는 다른 물체)이 포함되는 상태를 모식적으로 나타낸 도면이다. 마커(M)를 기준으로 하여 3 차원의 유저 좌표계가 설정되고, 간섭물(I)의 촬영 단말(1)측에, 유저 좌표계 상의 점군 데이터(Ic)가 묘화되어 있다.
여기서, 점군 데이터(Ic)는, 촬영 단말(1)에 탑재되는 거리 계측 센서에 의하여 취득되는 데이터이다. 따라서, 촬영 단말(1)에서 점군 데이터(Ic)를 취득하고 있을 때에는, 촬영 단말(1)과 점군 데이터(Ic)와의 사이에 장해물이 존재하고 있지 않게 된다. 즉, 촬영 단말(1)과 점군 데이터(Ic)와의 사이에 형성되는 공간은, 장해물이 존재하지 않는 자유 공간이 된다.
프로그램 작성부(215)는, 점군 데이터(Ic)를 경계로 하여 형성되는 2 개의 에어리어 중, 촬영 단말(1)이 있는 측(전방측)을 간섭물(I)이 존재하지 않는 간섭 회피 에어리어(Aa)라고 판정한다. 한편, 프로그램 작성부(215)는, 점군 데이터(Ic)를 경계로 하여 형성되는 2 개의 에어리어 중, 촬영 단말(1)이 없는 측(내부측)을 간섭물(I)이 존재하는 간섭 에어리어(Ab)라고 판정한다.
그리고, 프로그램 작성부(215)는, 간섭 회피 에어리어(Aa) 중에서, 점군 데이터(Ic)로부터 촬영 단말(1)의 기준점(예를 들면, 렌즈의 중심)으로 향하는 방향(Da)을, 점군 데이터와의 간섭을 회피할 수 있는 방향으로서 인식한다.
또한, 점군 데이터와의 간섭을 회피시키는 거리는, 예를 들면, 작업자가 지정하는 고정값이어도 되고, 회피 동작의 시뮬레이션 결과를 기계 학습함으로써 얻어지는 수치 범위의 하한값이어도 된다. 회피 동작은, 예를 들면, 매니퓰레이터(3)의 위치를 움직임으로써 행해도 되고, 다관절 암(31) 중 어느 한 관절을 움직임으로써 행해도 되며, 용접 토치(32)의 자세를 바꿈으로써 행해도 되고, 그들 조합이어도 된다.
또한, 점군 데이터의 정밀도는, 대상물이 촬영 위치로부터 멀어질수록 저하되는 경향이 있다. 따라서, 촬영 위치와 간섭물과의 사이의 거리가 멀어질수록, 점군 데이터와의 간섭을 회피시키는 거리를 크게 하는 것으로 해도 된다.
여기서, 상기 도 8의 설명에서는, 간섭 회피 에어리어(Aa) 중에서, 점군 데이터(Ic)로부터 촬영 단말(1)의 기준점으로 향하는 방향(Da)으로, 매니퓰레이터(3)의 동작 궤적의 일부를 변경시키고 있으나, 이에 한정되지 않는다. 예를 들면, 간섭 회피 에어리어(Aa) 중에서, 점군 데이터(Ic)로부터 촬영 단말(1)에 가까워지는 방향으로, 매니퓰레이터(3)의 동작 궤적의 일부를 변경시키는 것으로 해도 되고, 간섭 회피 에어리어(Aa) 중에서, 점군 데이터와의 간섭을 회피할 수 있도록, 매니퓰레이터(3)의 동작 궤적의 일부를 변경시키는 것으로 해도 된다. 촬영 단말(1)에 가까워지는 방향으로 매니퓰레이터(3)의 동작 궤적을 변경함으로써, 점군 데이터의 신뢰도가 높아지는 방향으로 매니퓰레이터(3)를 회피시킬 수 있어, 회피 정밀도를 높이는 것이 가능해진다.
도 9를 참조하여, 프로그램 작성부(215)가 용접 프로그램을 작성할 때의 동작의 일예를 설명한다.
맨 처음으로, 프로그램 작성부(215)는, 검출부(214)에 의하여 검출된 용접선에 기초하여, 유저 좌표계 상에서의 용접선을 특정한다(단계 S101).
이어서, 프로그램 작성부(215)는, 상기 단계 S101에서 특정한 용접선에 대하여, 토치의 전진각, 토치의 후퇴각 및 토치의 목표각 등의 토치의 자세를 설정한다(단계 S102).
이어서, 프로그램 작성부(215)는, 유저 좌표계 상에서의 매니퓰레이터(3)의 각 부의 자세를 포함한 동작 궤적을 결정한다(단계 S103).
이어서, 프로그램 작성부(215)는, 유저 좌표계 상에서의 동작 궤적 중에, 매니퓰레이터(3)가 점군 데이터와 간섭하는 개소가 있는지의 여부를 판정한다(단계 S104).
상기 단계 S104에서 동작 궤적 중에 점군 데이터와 간섭하는 개소가 있다고 판정한 경우(단계 S104;YES)에, 프로그램 작성부(215)는, 점군 데이터와의 간섭을 회피할 수 있는 방향으로 매니퓰레이터(3)의 동작 궤적의 일부를 변경한다(단계 S105).
한편, 상기 단계 S104에서 동작 궤적 중에 점군 데이터와 간섭하는 개소가 없다고 판정한 경우(단계 S104;NO)에, 프로그램 작성부(215)는, 유저 좌표계 상에서의 동작 궤적을, 로봇 좌표계 상의 동작 궤적으로 변환하여 용접 프로그램을 작성한다(단계 S106). 그리고, 본 동작을 종료한다.
여기서, 상기 동작의 각 단계는, 촬영 단말(1) 및 로봇 제어 장치(2) 중 어디에서 실행해도 되고, 각 단계의 일부를 촬영 단말(1)에서 실행하고, 나머지 일부를 로봇 제어 장치(2)에서 실행해도 된다.
전술한 바와 같이, 실시 형태에 따른 용접 프로그램 작성 시스템에 의하면, 용접 대상 및 그 용접 대상에 의하여 형성되는 공간 내에 놓인 마커를 촬영한 화상에 기초하여, 마커의 특정 위치를 원점으로 하는 유저 좌표계를 설정하고, 그 유저 좌표계에 화상 중의 물체에 대응하는 점군 데이터를 묘화하고, 유저 좌표계에 가상적으로 놓이는 용접 로봇이, 점군 데이터와의 간섭을 회피하면서 용접 동작을 행하도록, 용접 프로그램을 작성할 수 있다. 따라서, 용접 대상의 배치 상태나 장해물의 상황에 관계없이, 간섭을 회피하면서 용접 동작을 행하게 하는 것이 가능해진다.
그러므로, 실시 형태에 따른 용접 프로그램 작성 시스템에 의하면, 다양한 배치 패턴 또는 배치 요소에 유연하게 대응하는 것이 가능해진다.
또한, 본 발명은, 전술한 실시 형태로 한정되는 것은 아니며, 본 발명의 요지를 일탈하지 않는 범위내에 있어서, 다른 다양한 형태로 실시할 수 있다. 이 때문에, 상기 실시 형태는 모든 점으로써 단순한 예시에 지나지 않고, 한정적으로 해석되는 것은 아니다.
예를 들면, 상술한 실시 형태에서는, 용접 로봇을 고용하여 설명했으나, 이에 한정되지 않는다. 예를 들면, 피킹 등을 행하는 핸들링 로봇을 포함하는 산업용 로봇에 본 발명을 적용할 수 있다. 이 경우, 상기 실시 형태에서 이용한 용접 프로그램, 용접 대상, 용접선 및 용접 동작을, 각각 작업 프로그램, 작업 대상, 작업 개소 및 작업과 치환할 수 있다.
또한, 상술한 실시 형태에서는, 점군 데이터와의 간섭을 회피시키고 있으나, 간섭 회피하지 않는 점군 데이터의 집합을 설정하고, 그 점군 데이터의 집합을 간섭 회피의 대상으로부터 제외해도 된다. 이 변형예에서는, 도 10에 도시한 바와 같이, 용접 프로그램 작성 시스템에 설정부(216)를 더 구비하는 것이 바람직하다. 설정부(216)는, 예를 들면, 용접 대상의 화상 상에 겹쳐 표시되어 있는 점군 데이터 중에서, 범위 지정을 접수하고, 지정된 범위 내에 있는 점군 데이터를, 간섭 회피의 대상으로부터 제외하는 점군 데이터의 집합으로서 설정한다. 이에 의하여, 작업에 지장을 초래하지 않는 간섭에 대해서는, 회피 동작을 행하지 않고 작업을 진행시킬 수 있으므로, 작업 효율을 높이는 것이 가능해진다.
간섭 회피의 대상으로부터 제외하는 점군 데이터의 집합으로서, 예를 들면, 용접선을 포함하는 용접선 부근의 영역, 또는 핸들링 로봇이 파지하는 영역 등을 설정할 수 있다.
또한, 상술한 실시 형태에서는, 1 대의 촬영 단말(1)로 용접 대상을 포함하는 화상을 촬영하고 있으나, 복수의 촬영 단말(1)을 이용하여, 각각 상이한 위치로부터 용접 대상을 포함하는 화상을 촬영해도 된다. 이에 의하여, 촬영한 위치마다 간섭의 유무를 판정하고, 간섭이 있다고 판정한 경우에 간섭을 회피하도록 조정할 수 있다. 그러므로, 간섭을 회피하는 정밀도를 높이는 것이 가능해진다.
1 : 촬영 단말
2 : 로봇 제어 장치
3 : 매니퓰레이터
11 : 제어부
12 : 촬영부
13 : 통신부
14 : 표시부
21 : 제어부
22 : 기억부
23 : 통신부
24 : 용접 전원부
31 : 다관절 암
32 : 용접 토치
100 : 용접 로봇 시스템
211 : 촬영부
212 : 좌표계 설정부
213 : 점군 데이터 묘화부
214 : 검출부
215 : 프로그램 작성부
216 : 설정부
C : 통신 케이블
M : 마커
N : 네트워크

Claims (7)

  1. 작업 대상을 포함하는 화상을 촬영하는 촬영 단말과,
    상기 촬영 단말에 의하여 촬영된 상기 화상에 포함되는 마커를 기준으로 하는 유저 좌표계를 설정하는 좌표계 설정부와,
    상기 화상에 기초하여 상기 마커의 특정 위치를 검출하고, 해당 검출한 상기 특정 위치를, 상기 작업 대상까지의 거리를 측정하는 거리 계측 센서에 의하여 취득된 점군 데이터 상에 설정하고, 해당 설정한 상기 특정 위치를 원점으로 하는 상기 유저 좌표계의 좌표가 부여된 상기 점군 데이터를, 상기 유저 좌표계에 묘화하는 점군 데이터 묘화부와,
    상기 유저 좌표계에 묘화된 상기 점군 데이터에 기초하여, 상기 유저 좌표계에 가상적으로 놓이는 산업용 로봇이, 상기 점군 데이터와의 간섭을 회피하면서 작업을 행하도록, 작업 프로그램을 작성하는 프로그램 작성부를 구비하는 작업 프로그램 작성 시스템.
  2. 제1항에 있어서,
    상기 프로그램 작성부는, 상기 산업용 로봇이 상기 점군 데이터와 간섭한다고 판정한 경우에, 상기 간섭한다고 판정한 상기 점군 데이터를 경계로 하여 형성되는 에어리어 중, 상기 촬영 단말이 있는 측을 간섭 회피 에어리어로 하고, 해당 간섭 회피 에어리어 중에서 상기 산업용 로봇의 동작 궤적의 일부를 변경함으로써, 상기 간섭한다고 판정한 상기 점군 데이터와의 간섭을 회피시키는, 작업 프로그램 작성 시스템.
  3. 제2항에 있어서,
    상기 간섭한다고 판정한 상기 점군 데이터와의 간섭을 회피시키는 방향은, 상기 간섭 회피 에어리어 중에서, 상기 간섭한다고 판정한 상기 점군 데이터로부터 상기 촬영 단말에 가까워지는 방향인, 작업 프로그램 작성 시스템.
  4. 제1항 또는 제2항에 있어서,
    상기 유저 좌표계에 묘화된 상기 점군 데이터에 기초하여, 상기 작업 대상의 작업 개소를 검출하는 검출부를 더 구비하고,
    상기 프로그램 작성부는, 상기 산업용 로봇이, 상기 점군 데이터와의 간섭을 회피하면서, 상기 검출부에 의하여 검출된 상기 작업 개소에 대한 작업을 행하도록 작업 프로그램을 작성하는, 작업 프로그램 작성 시스템.
  5. 제1항 또는 제2항에 있어서,
    상기 촬영 단말이 복수 대 있고, 각각의 상기 촬영 단말이, 각각 상이한 위치로부터 상기 화상을 촬영하는, 작업 프로그램 작성 시스템.
  6. 제1항 또는 제2항에 있어서,
    간섭 회피의 대상으로부터 제외하는 상기 점군 데이터의 집합을 설정하는 설정부를 더 구비하는, 작업 프로그램 작성 시스템.
  7. 프로세서에 의하여 실행되는 방법으로서,
    촬영 단말에 의하여 촬영된 작업 대상을 포함하는 화상에 포함되는 마커를 기준으로 하는 유저 좌표계를 설정하는 단계와,
    상기 화상에 기초하여 상기 마커의 특정 위치를 검출하고, 해당 검출한 상기 특정 위치를, 상기 작업 대상까지의 거리를 측정하는 거리 계측 센서에 의하여 취득된 점군 데이터 상에 설정하고, 해당 설정한 상기 특정 위치를 원점으로 하는 상기 유저 좌표계의 좌표가 부여된 상기 점군 데이터를, 상기 유저 좌표계에 묘화하는 단계와,
    상기 유저 좌표계에 묘화된 상기 점군 데이터에 기초하여, 상기 유저 좌표계에 가상적으로 놓이는 산업용 로봇이, 상기 점군 데이터와의 간섭을 회피하면서 작업을 행하도록, 작업 프로그램을 작성하는 단계를 포함하는 작업 프로그램 작성 방법.
KR1020220109788A 2021-09-24 2022-08-31 작업 프로그램 작성 시스템 및 작업 프로그램 작성 방법 KR20230043706A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JPJP-P-2021-155239 2021-09-24
JP2021155239 2021-09-24
JPJP-P-2022-109756 2022-07-07
JP2022109756A JP7195476B1 (ja) 2021-09-24 2022-07-07 作業プログラム作成システム及び作業プログラム作成方法

Publications (1)

Publication Number Publication Date
KR20230043706A true KR20230043706A (ko) 2023-03-31

Family

ID=83228824

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220109788A KR20230043706A (ko) 2021-09-24 2022-08-31 작업 프로그램 작성 시스템 및 작업 프로그램 작성 방법

Country Status (5)

Country Link
US (1) US20230098696A1 (ko)
EP (1) EP4155037A1 (ko)
KR (1) KR20230043706A (ko)
CN (1) CN115846804A (ko)
TW (1) TWI818717B (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6816068B2 (ja) 2018-07-06 2021-01-20 ファナック株式会社 ロボットプログラム生成装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63763A (ja) 1986-06-20 1988-01-05 Sanyo Electric Co Ltd ワ−ドプロセツサの英文スペルチエツク方式
DE102007008598A1 (de) * 2007-02-19 2008-08-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Automatische Programmierung von Robotern zum Abschweißen gehefteter Profile auf Mikropaneelen mit Hilfe digitaler Bilderfassung
GB2580312A (en) * 2018-12-24 2020-07-22 Semblr Tech Limited Structural assembler
CN111687515A (zh) * 2020-06-17 2020-09-22 北京智机科技有限公司 大型钢构智能焊接引导系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6816068B2 (ja) 2018-07-06 2021-01-20 ファナック株式会社 ロボットプログラム生成装置

Also Published As

Publication number Publication date
TW202313283A (zh) 2023-04-01
TWI818717B (zh) 2023-10-11
CN115846804A (zh) 2023-03-28
EP4155037A1 (en) 2023-03-29
US20230098696A1 (en) 2023-03-30

Similar Documents

Publication Publication Date Title
EP4177015B1 (en) Robot teaching system
JP7176148B1 (ja) 溶接線検出システム
KR20230043706A (ko) 작업 프로그램 작성 시스템 및 작업 프로그램 작성 방법
JP7195476B1 (ja) 作業プログラム作成システム及び作業プログラム作成方法
TWI822314B (zh) 焊接線檢測系統
JP7201764B1 (ja) 溶接プログラム作成システム及び溶接プログラム作成方法
JP7423851B1 (ja) 端末装置
TWI806762B (zh) 標誌檢測裝置以及機器人示教系統
JP7433501B1 (ja) 干渉判定装置
TWI806761B (zh) 標誌檢測裝置以及機器人示教系統
JP2023069274A (ja) 座標系変換システム及び座標系変換方法