KR102113462B1 - 위치 제어 장치 및 위치 제어 방법 - Google Patents

위치 제어 장치 및 위치 제어 방법 Download PDF

Info

Publication number
KR102113462B1
KR102113462B1 KR1020197022651A KR20197022651A KR102113462B1 KR 102113462 B1 KR102113462 B1 KR 102113462B1 KR 1020197022651 A KR1020197022651 A KR 1020197022651A KR 20197022651 A KR20197022651 A KR 20197022651A KR 102113462 B1 KR102113462 B1 KR 102113462B1
Authority
KR
South Korea
Prior art keywords
image
unit
neural network
control amount
amount
Prior art date
Application number
KR1020197022651A
Other languages
English (en)
Other versions
KR20190102250A (ko
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 KR20190102250A publication Critical patent/KR20190102250A/ko
Application granted granted Critical
Publication of KR102113462B1 publication Critical patent/KR102113462B1/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/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D3/00Control of position or direction
    • G05D3/12Control of position or direction using feedback
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/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
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/027Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D3/00Control of position or direction
    • G05D3/12Control of position or direction using feedback
    • G05D3/20Control of position or direction using feedback using a digital comparing device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • 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/39271Ann artificial neural network, ffw-nn, feedforward neural network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Fuzzy Systems (AREA)
  • Manipulator (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

2개의 물체가 존재하는 화상을 촬상하는 촬상부(201)와, 촬상된 2개의 물체의 화상의 정보를 뉴럴 네트워크의 입력층에 입력하고, 2개의 물체의 위치 관계를 제어하기 위한 위치의 제어량을 뉴럴 네트워크의 출력층으로서 출력하는 제어 파라미터 생성부(202)와, 출력된 위치의 제어량을 이용하여 2개의 물체의 위치 관계를 제어하기 위한 전류 또는 전압을 제어하는 제어부(203)와, 2개의 물체의 위치 관계를 제어하기 위한 전류 또는 전압을 이용하여 2개의 물체의 한쪽의 위치를 바꾸는 구동부(204)를 구비하고, 제어 파라미터 생성부(202)는, 복수의 뉴럴 네트워크로부터 1개를 선택하는 구성으로 했으므로, 개개의 물체의 개체차 또는 2개의 물체의 위치 관계의 오차가 있더라도 위치 맞춤을 행하는 것을 보다 정밀하게 행할 수 있다고 하는 효과가 있다.

Description

위치 제어 장치 및 위치 제어 방법
본 발명은 위치 제어 장치 및 위치 제어 방법에 관한 것이다.
로봇 암으로 조립 동작을 행하는 생산 시스템을 구축할 때에는, 티칭이라고 불리는 사람의 손에 의한 교시 작업을 행하는 것이 일반적이다. 그러나, 이 티칭에 있어서 로봇은 기억된 위치에 대해서만 동작을 반복하여 행하기 때문에, 제작이나 설치에 의한 오차가 발생하는 경우에는, 대응할 수 없는 경우도 있다. 그 때문에, 이 개체 오차를 흡수하는 위치 보정 기술을 개발하는 것이 가능하면, 생산성의 향상을 기대할 수 있고, 또한 로봇이 활약하는 장면도 커진다.
현재의 기술에 있어서도, 카메라 화상을 이용하여 커넥터 삽입 작업의 직전까지의 위치 보정을 행하는 기술은 존재한다(특허문헌 1). 또한, 힘 센서, 스테레오 카메라 등 복수의 디바이스를 이용하면 조립(삽입, 워크 유지 등)에 관한 위치의 오차를 흡수할 수는 있다. 그러나, 위치 보정량을 결정하기 위해, 동 참고문헌과 같이 파지한 커넥터의 중심 좌표, 삽입되는 쪽의 커넥터의 중심 좌표 등의 양을 명시적으로 화상 정보로부터 계산할 필요가 있다. 이 계산은 커넥터의 형상에 의존하고, 사용 커넥터마다 설계자가 설정하지 않으면 안 된다. 또한, 3차원 정보를 거리 카메라 등으로부터 취득할 수 있으면 이 계산도 비교적 용이하지만, 2차원 화상 정보로부터 취득하기 위해서는 커넥터마다 화상 처리 알고리즘을 개발할 필요가 있기 때문에, 많은 설계 비용이 필요하게 되어 버린다.
특허문헌 1 : WO 98-017444호 공보
즉, 단안(monocular)의 카메라로부터의 정보에 의해서만 조립을 위한 위치를 제어하는 것은 어렵다고 하는 과제가 있었다.
본 발명은 상기의 과제를 해결하기 위해 이루어진 것으로서, 단안 카메라만으로 위치 맞춤을 행하는 것을 목적으로 한다.
본 발명과 관련되는 위치 제어 장치는, 제 1 물체를 구동부에 의해 이동시켜 제 2 물체에 맞붙이기 위한 위치 제어 장치에 있어서, 제 1 물체와 제 2 물체의 2개의 물체가 존재하는 화상을 촬상하는 단안 카메라의 촬상부와, 촬상부에 의해 촬상된 복수의 화상의 정보가 입력층에 입력되고, 입력층에 입력된 복수의 화상 각각과 각각이 대응 관계에 있는 제 1 물체를 이동시키는 이동량인, 확률적 구배법을 포함하는 학습 규칙에 근거하여 얻어진 제어량이 출력층에 출력되는 복수의 뉴럴 네트워크 중, 상기 촬상부가 화상을 최초로 취득했을 때, 소정의 뉴럴 네트워크를 선택하고, 상기 선택한 뉴럴 네트워크의 출력층에 출력된 제어량을, 촬상부로부터 취득한 화상에 존재하는 제 1 물체와 제 2 물체의 2개의 물체 중 제 1 물체를 구동부에 의해 이동시키는 제어량으로서 출력하고, 촬상부가 2회째 이후에 촬상한 화상을 취득하고, 그 화상의 정보를, 전회 취득한 화상의 정보를 입력층에 입력한 뉴럴 네트워크의 출력층에 출력된 제어량의 크기에 근거하여 복수의 뉴럴 네트워크로부터 1개의 뉴럴 네트워크를 선택하고, 그 선택한 뉴럴 네트워크의 입력층에 입력하고, 그 선택한 뉴럴 네트워크의 출력층에 출력된 제어량을, 촬상부로부터 취득한 화상에 존재하는 제 1 물체와 제 2 물체의 2개의 물체 중 제 1 물체를 구동부에 의해 이동시키는 제어량으로서 출력하는 제어 파라미터 생성부를 구비한다.
본 발명과 관련되는 위치 제어 장치에 따르면, 제 1 물체를 구동부에 의해 이동시켜 제 2 물체에 맞붙이기 위한 위치 제어 장치에 있어서, 제 1 물체와 제 2 물체의 2개의 물체가 존재하는 화상을 촬상하는 단안(monocular) 카메라의 촬상부와, 촬상부에 의해 촬상된 복수의 화상의 정보가 입력층에 입력되고, 입력층에 입력된 복수의 화상 각각과 각각이 대응 관계에 있는 제 1 물체를 이동시키는 이동량인, 확률적 구배법을 포함하는 학습 규칙에 근거하여 얻어진 제어량이 출력층에 출력되는 복수의 뉴럴 네트워크 중, 상기 촬상부가 화상을 최초로 취득했을 때, 소정의 뉴럴 네트워크를 선택하고, 상기 선택한 뉴럴 네트워크의 출력층에 출력된 제어량을, 촬상부로부터 취득한 화상에 존재하는 제 1 물체와 제 2 물체의 2개의 물체 중 제 1 물체를 상기 구동부에 의해 이동시키는 제어량으로서 출력하고, 촬상부가 2회째 이후에 촬상한 화상을 취득하고, 그 화상의 정보를, 전회 취득한 화상의 정보를 입력층에 입력한 뉴럴 네트워크의 출력층에 출력된 제어량의 크기에 근거하여 복수의 뉴럴 네트워크로부터 1개의 뉴럴 네트워크를 선택하고, 그 선택한 뉴럴 네트워크의 입력층에 입력하고, 그 선택한 뉴럴 네트워크의 출력층에 출력된 제어량을, 촬상부로부터 취득한 화상에 존재하는 제 1 물체와 제 2 물체의 2개의 물체 중 제 1 물체를 구동부에 의해 이동시키는 제어량으로서 출력하는 제어 파라미터 생성부를 구비하므로, 단안 카메라만으로 위치 맞춤을 행할 수 있다고 하는 효과를 나타낸다.
도 1은 실시의 형태 1에 있어서의 로봇 암(100)과 수 커넥터(male connector)(110), 암 커넥터(female connector)(120)가 배치된 도면이다.
도 2는 실시의 형태 1에 있어서의 위치 제어 장치의 기능 구성도이다.
도 3은 실시의 형태 1에 있어서의 위치 제어 장치의 하드웨어 구성도이다.
도 4는 실시의 형태 1에 있어서의 위치 제어 장치의 위치 제어에 있어서의 플로차트이다.
도 5는 실시의 형태 1에 있어서의 단안 카메라(102)가 촬영한 삽입 개시 위치와 그 주변 부근에서의 카메라 화상과 제어량을 나타내는 도면의 예이다.
도 6은 실시의 형태 1에 있어서의 뉴럴 네트워크와, 뉴럴 네트워크의 학습 규칙의 예를 나타내는 도면이다.
도 7은 실시의 형태 1에 있어서의 뉴럴 네트워크에 있어서, 복수의 네트워크를 이용한 플로차트이다.
도 8은 실시의 형태 2에 있어서의 위치 제어 장치의 기능 구성도이다.
도 9는 실시의 형태 2에 있어서의 위치 제어 장치의 하드웨어 구성도이다.
도 10은 실시의 형태 2에 있어서의 수 커넥터(110)와 암 커넥터(120)의 감합의 시행의 모습을 나타내는 도면이다.
도 11은 실시의 형태 2에 있어서의 위치 제어 장치의 경로 학습에 있어서의 플로차트이다.
도 12는 실시의 형태 3에 있어서의 위치 제어 장치의 경로 학습에 있어서의 플로차트이다.
도 13은 실시의 형태 3에 있어서의 뉴럴 네트워크와, 뉴럴 네트워크의 학습 규칙의 예를 나타내는 도면이다.
실시의 형태 1.
이하, 본 발명의 실시의 형태에 대하여 설명한다.
실시의 형태 1에 있어서는, 각 커넥터의 삽입 위치를 학습하고, 생산 라인에서 조립을 행하는 로봇 암과 그 위치 제어 방법에 대하여 설명한다.
구성을 설명한다. 도 1은 실시의 형태 1에 있어서의 로봇 암(100)과 수 커넥터(110), 암 커넥터(120)가 배치된 도면이다. 로봇 암(100)에는 수 커넥터(110)를 파지하는 파지부(101)가 구비되어 있고, 이 파지부가 보이는 위치에 단안 카메라(102)가 로봇 암(100)에 설치되어 있다. 이 단안 카메라(102) 위치는, 로봇 암(100)의 선단의 파지부(101)가 수 커넥터(110)를 파지했을 때에, 파지된 수 커넥터(110)의 선단부와 삽입되는 쪽의 암 커넥터(120)가 보이도록 설치한다.
도 2는 실시의 형태 1에 있어서의 위치 제어 장치의 기능 구성도이다.
도 2에 있어서, 도 1에 있어서의 단안 카메라(102)의 기능이고, 화상을 촬영하는 촬상부(201)와, 촬상된 화상을 이용하여 로봇 암(100)의 위치의 제어량을 생성하는 제어 파라미터 생성부(202)와, 위치의 제어량을 이용하여 로봇 암(100)의 구동부(204)에 대하여, 전류ㆍ전압치를 제어하는 제어부(203)와, 제어부(203)로부터 출력된 전류ㆍ전압치에 근거하여 로봇 암(100)의 위치를 변경하는 구동부(204)로 구성되어 있다.
제어 파라미터 생성부(202)는, 단안 카메라(102)의 기능이고, 화상을 촬영하는 촬상부(201)로부터 화상을 취득하면, 로봇 암(100)의 위치 (X, Y, Z, Ax, Ay, Az)의 값에 대한 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)를 결정하고, 제어부(203)에 제어량을 출력한다. (X, Y, Z는 로봇 암의 위치, Ax, Ay, Az는, 로봇 암(100)의 자세 각도)
제어부(203)는, 받은 로봇 암(100)의 위치 (X, Y, Z, Ax, Ay, Az)의 값에 대한 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)에 근거하여 구동부(204)를 구성하는 각 디바이스에 대한 전류ㆍ전압치를 결정하여 제어한다.
구동부(204)는, 제어부(203)로부터 받은 각 디바이스에 대한 전류ㆍ전압치로 동작함으로써, 로봇 암(100)이 (X+ΔX, Y+ΔY, Z+ΔZ, Ax+ΔAx, Ay+ΔAy, Az+ΔAz)의 위치까지 이동한다.
도 3은 실시의 형태 1에 있어서의 위치 제어 장치의 하드웨어 구성도이다.
단안 카메라(102)는, 입출력 인터페이스(301)를 경유하여 프로세서(302), 메모리(303)에, 유선 무선에 관계없이 통신 가능하게 접속된다. 입출력 인터페이스(301), 프로세서(302), 메모리(303)로 도 2에 있어서의 제어 파라미터 생성부(202)의 기능을 구성한다. 입출력 인터페이스(301)는 또한, 제어부(203)에 대응하는 제어 회로(304)와 유선 무선에 관계없이 통신 가능하게 접속된다. 제어 회로(304)는 또한, 전기적으로 모터(305)와 접속된다. 모터(305)는, 도 2에 있어서의 구동부(204)에 대응하고, 각 디바이스의 위치를 제어하기 위한 부품으로서 구성된다. 또, 본 실시의 형태에 있어서, 구동부(204)에 대응하는 하드웨어의 형태로서 모터(305)로 했지만, 위치를 제어할 수 있는 하드웨어이면 된다. 따라서, 단안 카메라(102)와 입출력 인터페이스(301)는 별체(separate body)로서 구성되어 있더라도 좋고, 또한, 입출력 인터페이스(301)와 제어 회로(304)는 별체로서 구성되어 있더라도 좋다.
다음으로 동작에 대하여 설명한다.
도 4는 실시의 형태 1에 있어서의 위치 제어 장치의 위치 제어에 있어서의 플로차트이다.
우선, 스텝 S101에 있어서, 로봇 암(100)의 파지부(101)는, 수 커넥터(110)를 파지한다. 이 수 커넥터(110)의 위치나 자세는 도 2의 제어부(203) 쪽에서 사전에 등록되어 있고, 미리 제어부(203) 쪽에 등록된 제어 프로그램에 근거하여 동작한다.
다음으로, 스텝 S102에 있어서, 로봇 암(100)을 암 커넥터(120)의 삽입 위치 부근까지 접근시킨다. 이 암 커넥터(120)의 대략적인 위치나 자세는, 도 2의 제어부(203) 쪽에서 사전에 등록되어 있고, 미리 제어부(203) 쪽에 등록된 제어 프로그램에 근거하여 수 커넥터(110)의 위치가 제어된다.
다음으로, 스텝 S103에 있어서, 제어 파라미터 생성부(202)는 단안 카메라(102)의 촬상부(201)에 대하여, 화상을 촬상하도록 지시하고, 단안 카메라(102)는, 파지부(101)가 파지하고 있는 수 커넥터(110)와, 삽입 목적지가 되는 암 커넥터(120)가 양쪽 모두 찍혀 있는 화상을 촬상한다.
다음으로, 스텝 S104에 있어서, 제어 파라미터 생성부(202)는, 촬상부(201)로부터 화상을 취득하고, 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)를 결정한다. 이 제어량의 결정에 대해서는, 제어 파라미터 생성부(202)는, 도 3의 프로세서(302), 메모리(303)를 하드웨어로서 이용함과 아울러, 뉴럴 네트워크를 이용하여 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)를 계산한다. 뉴럴 네트워크를 이용한 제어량의 계산 방법은 후술한다.
다음으로, 스텝 S105에 있어서, 제어부(203)는, 제어 파라미터 생성부(202)가 출력한 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)를 취득함과 아울러, 미리 결정하여 둔 임계치와 제어량의 모든 성분을 비교한다. 제어량의 모든 성분이 임계치 이하이면, 스텝 S107로 진행하여, 제어부(203)는, 수 커넥터(110)를 암 커넥터(120)에 삽입하도록 구동부(204)를 제어한다.
제어량의 어느 성분이 임계치보다 크면, 스텝 S106에 있어서, 제어부(203)는, 제어 파라미터 생성부(202)가 출력한 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)를 이용하여 구동부(204)를 제어하고, 스텝 S103으로 돌아간다.
다음으로 도 4의 스텝 S104에서의 뉴럴 네트워크를 이용한 제어량의 계산 방법에 대하여 설명한다.
뉴럴 네트워크를 이용한 제어량의 계산을 행하기 전에, 사전 준비로서, 뉴럴 네트워크에 의해 입력 화상으로부터 감합 성공까지의 이동량을 산출할 수 있도록 하기 위해, 사전에, 화상과 필요한 이동량의 세트를 모은다. 예컨대, 위치가 알려져 있는 감합 상태의 수 커넥터(110)와 암 커넥터(120)에 대하여, 로봇 암(100)의 파지부(101)로 수 커넥터(110)를 파지한다. 그리고, 알려져 있는 뽑는 방향으로 파지부(101)를 움직이게 하면서 삽입 개시 위치까지 움직이게 함과 아울러, 단안 카메라(102)로 복수 매의 화상을 취득한다. 또한, 삽입 개시 위치를 제어량 (0, 0, 0, 0, 0, 0)으로 하여 감합 상태로부터 삽입 개시까지의 이동량뿐 아니라, 그 주변의 이동량, 즉 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)와 그것에 대응하는 화상도 취득한다.
도 5는 실시의 형태 1에 있어서의 단안 카메라(102)가 촬영한 삽입 개시 위치와 그 주변 부근에서의 카메라 화상과 제어량을 나타내는 도면의 예이다.
그리고, 감합 상태로부터 삽입 개시 위치까지의 이동량과 단안 카메라(102)에 있어서의 삽입 개시 위치 및 주변의 위치의 화상으로 이루어지는 복수의 세트를 이용하여, 일반적인 뉴럴 네트워크의 학습 규칙에 근거하여(예 : 확률적 구배법) 학습시킨다.
뉴럴 네트워크에는 CNN이나 RNN 등 다양한 형태가 존재하지만, 본 발명은 그 형태에 의존하지 않고, 임의의 형태를 사용할 수 있다.
도 6은 실시의 형태 1에 있어서의 뉴럴 네트워크와, 뉴럴 네트워크의 학습 규칙의 예를 나타내는 도면이다.
입력층에는, 단안 카메라(102)로부터 얻어진 화상(예컨대 각 픽셀의 휘도, 색차의 값)이 입력되고, 출력층에는 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)가 출력된다.
뉴럴 네트워크의 학습 과정에 있어서, 입력된 화상으로부터 중간층을 거쳐 얻어진 출력층의 출력치를 화상 세트로 기억된 제어량에 근사시키기 위해 중간층의 파라미터를 최적화시키는 것이 행하여진다. 그 근사 방법으로서 확률적 구배법 등이 있다.
따라서, 도 5에 나타내는 바와 같이 감합 상태로부터 삽입 개시까지의 이동량뿐 아니라, 삽입 개시 위치 주변의 위치에 이르는 이동량과 그것에 대응하는 화상을 취득하여 학습시킴으로써, 보다 정확한 학습을 행할 수 있다.
또한, 도 5에 있어서는, 수 커넥터(110)는 단안 카메라(102)에 대하여 위치가 고정이고, 암 커넥터(120)만의 위치가 변화한 경우에 대하여 나타내고 있지만, 실제로는, 로봇 암(100)의 파지부(101)가, 정확한 위치에서 수 커넥터(110)를 파지하는 것은 아니고, 개체차 등에 의해, 수 커넥터(110)의 위치가 어긋난 경우도 존재한다. 따라서, 이 학습의 과정에 있어서 수 커넥터(110)가 정확한 위치로부터 어긋난 경우의 삽입 개시 위치와 그 부근의 위치의 복수의 제어량과 화상의 세트를 취득하여 학습함으로써, 수 커넥터(110)와 암 커넥터(120)의 양쪽의 개체차에 대응할 수 있는 학습이 행하여진다.
단, 여기서 주의가 필요한 것은, 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)는 촬영한 시점의 감합 상태 위치로부터 삽입 개시 위치까지의 이동량을 제외하고 산출하기 때문에, 삽입 개시 위치로부터 감합 상태 위치까지의 이동량에 대해서는, 도 4의 스텝 S107에서 이용하기 위해, 별도로 기억할 필요가 있다. 또한, 상기 좌표는 단안 카메라의 좌표계로서 구해지기 때문에, 제어부(203)는 단안 카메라의 좌표계와 로봇 암(100) 전체의 좌표계가 상이한 경우에는 변환한 뒤에 로봇 암(100)을 제어할 필요가 있다.
이 실시예에 있어서, 단안 카메라를 로봇 암(100)에 고정하고 있기 때문에, 암 커넥터(120)가 놓여 있는 좌표계와, 단안 카메라(102)의 좌표계가 상이하다. 따라서, 단안 카메라(102)가 암 커넥터(120)와 동일한 좌표계에 있으면, 단안 카메라(102)의 좌표계로부터 로봇 암(100)의 좌표계로의 변환은 불필요해진다.
다음으로, 도 4의 동작의 상세와 동작의 예에 대하여 설명한다.
스텝 S101에 있어서, 로봇 암(100)이, 사전에 등록한 동작대로 수 커넥터(110)를 파지하고, 스텝 S102에 있어서, 그 수 커넥터(110)는 암 커넥터(120)의 거의 위까지 이동된다.
이때에, 파지하고 있는 수 커넥터(110)의 파지하기 직전의 위치가 항상 일정하다고는 할 수 없다. 이 수 커넥터(110)의 위치를 세트하는 기계의 미묘한 동작 어긋남 등으로, 미묘한 오차가 항상 발생하고 있을 가능성이 있다. 마찬가지로 암 커넥터(120)도 어떠한 오차를 갖고 있을 가능성도 있다.
그 때문에, 스텝 S103에 있어서, 도 5와 같이 로봇 암(100)에 부속되어 있는 단안 카메라(102)의 촬상부(201)에서 촬영된 화상에, 수 커넥터(110)와 암 커넥터(120) 양쪽 모두가 찍혀 있는 화상을 취득하고 있는 것이 중요해진다. 단안 카메라(102)의 로봇 암(100)에 대한 위치는 항상 고정되어 있기 때문에, 수 커넥터(110)와 암 커넥터(120)의 상대적인 위치 정보가 이 화상에는 반영되어 있다.
스텝 S104에 있어서, 이 상대적인 위치 정보를 사전에 학습한 도 6에 나타내는 바와 같은 뉴럴 네트워크를 갖는 제어 파라미터 생성부(202)에 의해 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)가 계산된다. 단, 학습의 정확도에 따라서는, 제어 파라미터 생성부(202)가 출력하는 제어량으로는 삽입 개시 위치까지의 동작이 불가능한 경우도 있다. 그 경우, 스텝 S103~S106의 루프를 복수 회 반복하는 것에 의해 스텝 S105에 나타내는 제어량의 모든 성분이 임계치 이하가 되도록 제어 파라미터 생성부(202)가 반복하여 계산하고, 제어부(203)와 구동부(204)가 제어하여 로봇 암(100)의 위치를 제어하는 경우도 있다.
S105에 나타내는 임계치는 감합하는 수 커넥터(110)와 암 커넥터(120)의 요구 정밀도에 의해 정해진다. 예컨대, 커넥터와의 감합이 느슨하고, 원래 커넥터의 특성으로서 정밀도가 거기까지 필요가 없는 경우에는, 임계치를 크게 설정할 수 있다. 또한 반대의 경우에는 임계치를 작게 설정하게 된다. 일반적으로 제조 공정의 경우에는, 제작이 허용할 수 있는 오차가 규정되는 일이 많기 때문에, 이 값을 이용하는 것도 가능하다.
또한, 학습의 정확도에 따라서는, 제어 파라미터 생성부(202)가 출력하는 제어량이 삽입 개시 위치까지 동작할 수 없는 경우를 상정하면, 삽입 개시 위치를 복수 위치 설정하더라도 좋다. 수 커넥터(110)와 암 커넥터(120)의 거리를 충분히 취하지 않은 채 삽입 개시 위치를 설정하여 버리면 삽입 개시를 행하기 전에 수 커넥터(110)와 암 커넥터(120)가 맞닿아, 어느 한쪽을 파손하여 버리는 리스크도 존재한다. 그 경우는, 예컨대 수 커넥터(110)와 암 커넥터(120)의 클리어런스를 처음에는 5㎜, 다음에는 20㎜, 다음에는 10㎜와 같이, 도 4에 있어서의 스텝 S103~스텝 S106의 사이의 루프의 횟수에 따라 삽입 개시 위치를 설정하더라도 좋다.
또, 본 실시의 형태에 있어서는, 커넥터를 이용하여 설명했지만, 이 기술의 적용은 커넥터의 감합으로 한정되지 않는다. 예컨대 기판에 IC를 싣는 경우에도 적용할 수 있고, 특히 다리의 치수 오차가 큰 콘덴서 등을 기판의 구멍에 삽입함에 있어서도, 마찬가지의 방법을 이용하면 효과를 나타내는 것이다.
또한, 반드시 기판으로의 삽입에 한한 이야기가 아니고, 화상과 제어량의 관계로부터 제어량을 구하는 위치 제어 전반에 이용할 수 있다. 본 발명에 있어서는, 뉴럴 네트워크를 이용하여 화상과 제어량의 관계를 학습시킴으로써, 물체와 물체의 위치 맞춤을 행할 때의 각각의 개체차를 흡수할 수 있다고 하는 메리트가 있다.
따라서, 실시의 형태 1에 있어서, 2개의 물체가 존재하는 화상을 촬상하는 촬상부(201)와, 촬상된 2개의 물체의 화상의 정보를 뉴럴 네트워크의 입력층에 입력하고, 2개의 물체의 위치 관계를 제어하기 위한 위치의 제어량을 뉴럴 네트워크의 출력층으로서 출력하는 제어 파라미터 생성부(202)와, 출력된 위치의 제어량을 이용하여 2개의 물체의 위치 관계를 제어하기 위한 전류 또는 전압을 제어하는 제어부(203)와, 2개의 물체의 위치 관계를 제어하기 위한 전류 또는 전압을 이용하여 2개의 물체의 한쪽의 위치를 바꾸는 구동부(204)를 구비하였으므로, 개개의 물체의 개체차 또는 2개의 물체의 위치 관계의 오차가 있더라도 단안 카메라만으로 위치 맞춤을 행할 수 있다고 하는 효과가 있다.
이번에, 뉴럴 네트워크를 1개 사용하는 실시예에 대하여 설명했지만, 필요에 따라서 복수 사용할 필요가 있다. 왜냐하면, 이번과 같이 입력을 화상, 출력을 수치로 한 경우, 이 수치의 근사 정밀도에는 한계가 있고, 상황에 따라서는 수% 정도의 오차가 나와 버린다. 도 4의 스텝 S102의 삽입 개시 부근의 위치로부터, 삽입 개시 위치까지의 양에 따라서는, 스텝 S105의 판정이 항상 "아니오"가 되어 버려 동작이 완료되지 않는 경우가 있다. 그와 같은 경우에는, 도 7과 같이 복수의 네트워크를 이용한다.
도 7은 실시의 형태 1에 있어서의 뉴럴 네트워크에 있어서, 복수의 네트워크를 이용한 플로차트이다. 도 4의 스텝 S104의 상세 스텝을 나타내고 있다. 복수의 파라미터는 도 2의 제어 파라미터 생성부에 포함되어 있다.
스텝 S701에 있어서, 제어 파라미터 생성부(202)는, 입력된 화상에 근거하여 어느 네트워크를 이용할지를 선택한다.
루프 횟수가 1회째 또는 이전에 얻어진 제어량이 25㎜ 이상인 경우는 뉴럴 네트워크 1을 선택하여 스텝 S702로 진행한다. 또한, 루프 횟수가 2회째 이후이고, 또한 이전에 얻어진 제어량이 5㎜ 이상 25㎜ 미만인 경우는 뉴럴 네트워크 2를 선택하여 스텝 S703으로 진행한다. 또한 루프 횟수가 2회째 이후에 얻어진 제어량이 5㎜ 미만인 경우는 뉴럴 네트워크 3을 선택하여 스텝 S704로 진행한다. 스텝 S702~스텝 S704 중에서 선택된 스텝의 뉴럴 네트워크를 이용하여 제어량을 산출한다.
예컨대, 각 뉴럴 네트워크는 수 커넥터(110)와 암 커넥터(120)의 거리 또는 제어량에 따라 학습되고 있고, 도면 중의 뉴럴 네트워크 3은 오차가 ±1㎜, ±1도의 범위 내의 학습 데이터를 사용하고, 뉴럴 네트워크 2는 ±1~±10㎜, ±1~±5도의 범위의 학습 데이터를 사용하는 것처럼 단계적으로 학습하는 데이터의 범위를 바꾸고 있다. 여기서 각 뉴럴 네트워크에 있어서 사용하는 화상의 범위를 오버랩시키지 않는 것이 효율적이다.
또한, 이 도 7에서는 3개의 예를 나타내고 있지만, 네트워크의 수는 특별히 제한이 없다. 이와 같은 방식을 이용하는 경우에는, 어느 네트워크를 사용할지를 결정하는 스텝 S701의 판별 기능을 "네트워크 선택 스위치"로서 준비할 필요가 있다.
이 네트워크 선택 스위치는, 뉴럴 네트워크로도 구성할 수 있다. 이 경우, 입력층으로의 입력은 화상이 되고, 출력층의 출력은 네트워크 번호가 된다. 화상 데이터는, 모든 네트워크에서 사용하고 있는 화상, 네트워크 번호의 페어(pair)를 사용한다.
또, 복수의 뉴럴 네트워크를 이용한 예에 대해서도 커넥터를 이용하여 설명했지만, 이 기술의 적용은 커넥터의 감합으로 한정되지 않는다. 예컨대 기판에 IC를 싣는 경우에도 적용할 수 있고, 특히 다리의 치수 오차가 큰 콘덴서 등을 기판의 구멍에 삽입하는 경우에 있어서도, 마찬가지의 방법을 이용하면 효과를 나타내는 것이다.
또한, 복수의 뉴럴 네트워크를 이용한 예에 대해서도 반드시 기판으로의 삽입에 한한 이야기가 아니고, 화상과 제어량의 관계로부터 제어량을 구하는 위치 제어 전반에 이용할 수 있다. 본 발명에 있어서는, 뉴럴 네트워크를 이용하여 화상과 제어량의 관계를 학습시킴으로써, 물체와 물체의 위치 맞춤을 행할 때의 각각의 개체차를 흡수할 수 있다고 하는 메리트가 있고, 보다 정밀하게 제어량을 산출할 수 있다.
따라서, 2개의 물체가 존재하는 화상을 촬상하는 촬상부(201)와, 촬상된 2개의 물체의 화상의 정보를 뉴럴 네트워크의 입력층에 입력하고, 2개의 물체의 위치 관계를 제어하기 위한 위치의 제어량을 뉴럴 네트워크의 출력층으로서 출력하는 제어 파라미터 생성부(202)와, 출력된 위치의 제어량을 이용하여 2개의 물체의 위치 관계를 제어하기 위한 전류 또는 전압을 제어하는 제어부(203)와, 2개의 물체의 위치 관계를 제어하기 위한 전류 또는 전압을 이용하여 2개의 물체의 한쪽의 위치를 바꾸는 구동부(204)를 구비하고, 제어 파라미터 생성부(202)는, 복수의 뉴럴 네트워크로부터 1개를 선택하는 구성으로 했으므로, 개개의 물체의 개체차 또는 2개의 물체의 위치 관계의 오차가 있더라도 위치 맞춤을 행하는 것을 보다 정밀하게 행할 수 있다고 하는 효과가 있다.
실시의 형태 2.
실시의 형태 1에 있어서는, 위치가 알려져 있는 감합 상태의 수 커넥터(110)와 암 커넥터(120)에 대하여, 로봇 암(100)의 파지부(101)로 수 커넥터(110)를 파지한다. 그리고, 알려져 있는 뽑는 방향으로 파지부(101)를 움직이게 하면서 삽입 개시 위치까지 움직이게 함과 아울러, 단안 카메라(102)로 복수 매의 화상을 취득하고 있었다. 실시의 형태 2에 있어서는, 수 커넥터(110)와 암 커넥터(120)의 감합 위치가 미지였을 경우에 대하여 설명한다.
로봇이 스스로 학습하여 적절한 행동을 획득하는 수법의 선행 연구로서, 강화 학습이라고 불리는 수법이 연구되고 있다. 이 수법에서는, 로봇이 다양한 동작을 시행착오적으로 행하고, 좋은 결과를 낸 행동을 기억하면서 결과적으로 행동을 최적화하는 것이지만, 행동의 최적화를 위해서는 대량의 시행 횟수를 필요로 하고 있다.
이 시행 횟수를 줄이는 수법으로서, 강화 학습 중에서 방책 온(on policy)이라고 불리는 체계가 일반적으로 이용되고 있다. 그렇지만, 이 체계를 로봇 암의 티칭에 응용하려면, 로봇 암이나 제어 신호에 특화된 다양한 개선을 행할 필요가 있기 때문에 곤란하고, 실용화까지는 도달하지 않았다.
실시의 형태 2에서는, 실시의 형태 1에 있어서와 같은 로봇이 다양한 동작을 시행착오적으로 행하여, 좋은 결과를 낸 행동을 기억하면서 결과적으로 행동을 최적화하기 위한 대량의 시행 횟수를 경감할 수 있는 형태에 대하여 설명한다.
시스템 구성을 설명한다. 특별히 기술하지 않는 부분에 대해서는 실시의 형태 1과 동일하다.
전체의 하드웨어 구성으로서는 실시의 형태 1의 도 1과 동일하지만, 로봇 암(100)에는 파지부(101)에 걸리는 부하를 계측하는 힘 센서(801)(도 1에는 도시하고 있지 않다)가 부가되어 있는 점이 상이하다.
도 8은 실시의 형태 2에 있어서의 위치 제어 장치의 기능 구성도를 나타낸다. 도 2와의 차이는, 힘 센서(801), 경로 결정부(802)가 추가되어 있고, 또한 경로 결정부(802)는, Critic부(803), Actor부(804), 평가부(805), 경로 설정부(806)로 구성되어 있다.
도 9는 실시의 형태 2에 있어서의 위치 제어 장치의 하드웨어 구성도이다. 도 3과 상이한 것은, 힘 센서(801)가 입출력 인터페이스(301)와 전기적 또는 통신 가능하게 접속되어 있는 점뿐이다. 또한, 입출력 인터페이스(301), 프로세서(302), 메모리(303)는, 도 8의 제어 파라미터 생성부(202)의 기능을 구성함과 아울러, 경로 결정부(802)의 기능도 구성한다. 따라서 힘 센서(801)와 단안 카메라(102)와 입출력 인터페이스(301)는 별체로서 구성되어 있더라고 좋고, 또한, 입출력 인터페이스(301)와 제어 회로(304)는 별체로서 구성되어 있더라도 좋다.
다음으로 도 8의 상세에 대하여 설명한다.
힘 센서(801)는, 로봇 암(100)의 파지부(101)에 걸리는 부하를 계측하는 것이고, 예컨대 도 1에서 말하는 수 커넥터(110)와 암 커넥터(120)가 맞닿았을 경우의 힘의 값을 계측할 수 있는 것이다.
Critic부(803) 및 Actor부(804)는, 종래의 강화 학습에서 말하는, Critic, Actor와 동일하다.
여기서 종래의 강화 학습 수법에 대하여 설명한다. 본 실시예에서는 강화 학습 중에서도 Actor-Critic 모델이라고 불리는 모델을 사용하고 있다(참고 문헌 : 강화 학습 : R. S. Sutton and A. G. Barto 2000년 12월 출판). Actor부(804), Critic부(803)는 환경의 상태를 촬상부(201)나 힘 센서(801)를 통해서 취득하고 있다. Actor부(804)는, 센서 디바이스를 이용하여 취득한 환경 상태 I를 입력으로 하고, 로봇 컨트롤러에 제어량 A를 출력하는 함수이다. Critic부(803)는 Actor부(804)의 감합이 성공하도록, 입력 I에 대하여 Actor부(804)에 출력 A를 적절히 학습시키는 기구이다.
이하, 종래의 강화 학습 수법의 방식에 관하여 기재한다.
강화 학습에서는, 보수 R이라고 불리는 양을 정의하고, 그 R을 최대화하는 행동 A를 Actor부(804)가 획득할 수 있도록 하고 있다. 일례로서, 학습하는 작업을 실시의 형태 1에 나타내는 바와 같은 수 커넥터(110)와 암 커넥터(120)의 감합으로 하면, 감합이 성공했을 때에 R=1, 그렇지 않을 때는 R=0 등으로 정의된다. 행동 A는, 이번에는 현시점의 위치 (X, Y, Z, Ax, Ay, Az)로부터의 이동 보정량을 나타내고, A=(dX, dY, dZ, dAx, dAy, dAz)이다. 여기서, X, Y, Z는 로봇의 중심부를 원점으로 하는 위치 좌표를 나타내고, Ax, Ay, Az는, 각각, X축, Y축, Z축을 중심으로 하는 회전량을 나타내고 있다. 이동 보정량은, 현재의 지점으로부터 수 커넥터(110)를 감합의 최초의 시행에 있어서의 삽입 개시 위치까지 이동시킬 때의 이동량이다. 환경 상태, 즉 시행 결과는 촬상부(201) 및 힘 센서(801)로 관측되고, 그로부터 화상 및 값으로서 얻어진다.
강화 학습에서는, 상태 가치 함수 V(I)라고 불리는 함수를 Critic부(803)에서 학습한다. 여기서, 시각 t=1(예컨대 감합 시행 개시 때)일 때에, 상태 I(1)에서 행동 A(1)을 취하고, 시각 t=2(예컨대 1회째의 감합 시행 종료 후 2회째의 감합 개시 전)일 때에 환경이 I(2)로 변화하고, 보수량 R(2)(첫 번째의 감합 시행 결과)를 얻었다고 한다. 다양한 갱신 식을 생각할 수 있지만, 하기를 일례로서 든다.
V(I)의 갱신 식은 이하로 정의된다.
[수학식 1]
Figure 112019078942789-pct00001
[수학식 2]
Figure 112019078942789-pct00002
여기서, δ는 예측 오차, α는 학습 계수이고 0~1까지의 양의 실수, γ는 할인율이고 0~1까지의 양의 실수이다.
Actor부(804)는 입력을 I, 출력을 A(I)로 하고 이하와 같이, A(I)가 갱신된다.
δ>0일 때
[수학식 3]
Figure 112019078942789-pct00003
δ≤0일 때
[수학식 4]
Figure 112019078942789-pct00004
여기서, σ는 출력의 표준 편차의 값을 나타내고, Actor부는 상태 I에 있어서, A(I)에 평균 0, 분산을 σ2으로 한 분포를 갖는 난수를 가산한다. 즉, 시행의 결과에 상관없이, 랜덤으로 2회째의 이동 보정량이 결정되는 것이다.
또, 상기의 갱신 식을 일례로서 이용하고 있지만, Actor-Critic 모델도 다양한 갱신 식이 있고, 상기에 구애되지 않고 일반적으로 사용되고 있는 모델이면 변경이 가능하다.
단, Actor부(804)는 상기의 구성에서 각 상태에 있던 적절한 행동을 기억하게 되지만, 실시의 형태 1대로 움직이는 것은 학습이 완료된 시점이다. 학습 중에는 경로 설정부(806)로부터 학습 때의 추천 행동이 계산되어 전달되기 때문에, 학습 때는 제어부(203)에 대하여, 경로 설정부(806)로부터의 이동 신호를 그대로 받아 제어부(203)가 구동부(204)를 제어하게 된다.
즉, Actor-Critic의 종래의 모델에서는, 감합이 성공했을 때에 R=1, 그렇지 않을 때는 R=0으로 정의되기 때문에, 감합이 성공했을 때에 처음으로 학습이 행하여지고, 또한 감합이 성공할 때까지는, 시행에 이용되는 이동 보정량은 랜덤으로 주어지기 때문에, 시행의 실패 정도에 따른 다음의 시행을 위한 이동 보정량의 결정은 행하여지지 않는다. 이것은, Actor-Critic의 종래의 모델뿐 아니라, Q-Learning 등 다른 강화 학습 모델을 이용하더라도 감합의 성공과 실패 그 자체밖에 평가하지 않기 때문에, 마찬가지의 결과가 된다. 본 발명의 본 실시의 형태에 있어서는, 이 실패 정도를 평가하여 다음의 시행을 위한 이동 보정량을 결정하는 프로세스에 대하여 설명한다.
평가부(805)는, 각 감합 시행 때에 있어서의 평가를 행하는 함수를 생성한다.
도 10은 실시의 형태 2에 있어서의 수 커넥터(110)와 암 커넥터(120)의 감합의 시행의 모습을 나타내는 도면이다.
예컨대 도 10(A)와 같은 화상이 시행의 결과로서 손에 들어왔다고 한다. 이 시행에서는, 커넥터의 감합 위치가 크게 어긋나기 때문에 실패하고 있다. 이때에 어느 정도 성공에 가까운 것인지를 계측하고 수치화하여, 성공 정도를 나타내는 평가치를 구한다. 수치화의 방법으로서, 예컨대 도 10(B)와 같이, 화상 중에서 삽입 목적지 쪽의 커넥터 표면적(픽셀 수)을 계산하는 방법이 있다. 이 방법에서는, 수 커넥터(110)의 암 커넥터(120)로의 삽입 실패를, 로봇 암(100)의 힘 센서(801)에 의해 검지했을 때에 암 커넥터(120) 감합면의 표면만 다른 배경과는 상이한 색을 도포, 혹은 실(seal)이 붙어 있으면, 화상으로부터의 데이터 취득과 계산이 보다 간단하고 쉬워진다. 또한, 지금까지 말한 방법은 카메라의 수가 1대인 경우이지만, 복수 대의 카메라를 나란히 하여 촬영하고, 촬영된 각각의 화상을 이용한 결과를 종합하더라도 상관없다. 또한, 커넥터 표면적 이외에도 2차원 방향(예컨대 X, Y 방향)의 픽셀 수 등을 취득하더라도 마찬가지의 것을 평가할 수 있다.
경로 설정부(806)는, 처리로서 2개의 스텝으로 나누어진다.
제 1 스텝에서는, 평가부(805)에서 처리된 평가 결과와 로봇이 실제로 움직인 움직임을 학습한다. 로봇의 이동 보정량을 A, 평가부(805)에서 처리된 성공 정도를 나타내는 평가치를 E로 했을 때, 경로 설정부(806)는 A를 입력으로 하고, E를 출력으로 하는 함수를 준비하고, 근사한다. 함수로서는 일례로서 RBF(Radial Basis Function) 네트워크를 들 수 있다. RBF는, 다양한 미지의 함수를 간단하게 근사하는 것이 가능한 함수로서 알려져 있다.
예컨대, k번째의 입력
[수학식 5]
Figure 112019078942789-pct00005
에 대하여 출력 f(x)는, 이하와 같이 정의된다.
[수학식 6]
Figure 112019078942789-pct00006
[수학식 7]
Figure 112019078942789-pct00007
여기서, σ는 표준 편차, μ는 RBF의 중심을 의미한다.
RBF에서 학습하는 데이터는, 단일 데이터가 아니고, 시행 개시 때로부터 최신의 데이터까지의 전부를 이용한다. 예컨대, 현재, N회째의 시행의 경우에는, N개의 데이터가 준비되어 있다. 학습에 의해 상기의 W=(w_1, …, w_J)를 결정할 필요가 있고, 그 결정에 대해서는 다양한 방법을 생각할 수 있지만, 하기와 같은 RBF 보간을 일례로서 들 수 있다.
[수학식 8]
Figure 112019078942789-pct00008
[수학식 9]
Figure 112019078942789-pct00009
으로 했을 때에
[수학식 10]
Figure 112019078942789-pct00010
에서, 학습이 완료된다.
RBF 보간에 의해 근사를 끝낸 후는, 최급강하법이나 PSO(Particle Swam Optimization) 등의 일반적인 최적화 수법에 의해 최소치를 상기 RBF 네트워크에 의해 구한다. 이 최소치를 다음의 추천값으로서 다음의 Actor부(804)에 입력한다.
요컨대, 상기 사례를 구체적으로 설명하면, 실패했을 때의 이동 보정량에 대한 표면적이나 2차원 방향의 픽셀 수를 평가치로서 시행 횟수마다 시계열로 배열하여 그 배열의 값을 이용하여 최적의 해를 구하는 것이다. 좀 더 심플하게 2차원 방향의 픽셀 수를 감소시키는 방향으로 일정 비율의 이동을 시키는 이동 보정량을 구하더라도 좋다.
다음으로 동작 흐름을 도 11에 나타낸다.
도 11은 실시의 형태 2에 있어서의 위치 제어 장치의 경로 학습에 있어서의 플로차트이다.
우선, 스텝 S1101에 있어서, 로봇 암(100)의 파지부(101)는, 수 커넥터(110)를 파지한다. 이 수 커넥터(110)의 위치나 자세는 도 8의 제어부(203) 쪽에서 사전에 등록되어 있고, 미리 제어부(203) 쪽에 등록된 제어 프로그램에 근거하여 동작된다.
다음으로, 스텝 S1102에 있어서, 로봇 암(100)을 암 커넥터(120)의 삽입 위치 부근까지 접근시킨다. 이 암 커넥터(120)의 대략적인 위치나 자세는, 도 8의 제어부(203) 쪽에서 사전에 등록되어 있고, 미리 제어부(203) 쪽에 등록된 제어 프로그램에 근거하여 수 커넥터(110)의 위치가 제어된다. 여기까지는 실시의 형태 1에 있어서의 도 4의 플로차트의 스텝 S101~S102와 동일하다.
다음으로, 스텝 S1103에 있어서, 경로 결정부(802)는, 단안 카메라(102)의 촬상부(201)에 대하여, 화상을 촬상하도록 지시하고, 단안 카메라(102)는, 파지부(101)가 파지하고 있는 수 커넥터(110)와, 삽입 목적지가 되는 암 커넥터(120)가 양쪽 모두 찍혀 있는 화상을 촬상한다. 또한, 경로 결정부(802)는, 제어부(203)와 단안 카메라(102)에 대하여, 현재 위치 부근에서의 화상을 촬상하도록 지시하고, 제어부(203)에 지시한 복수의 이동치에 근거하여 구동부(204)에 의해 이동된 위치에 있어서 단안 카메라는 수 커넥터(110)와, 삽입 목적지가 되는 암 커넥터(120)가 양쪽 모두 찍혀 있는 화상을 촬상한다.
다음으로, 스텝 S1104에 있어서, 경로 결정부(802)의 Actor부(804)는, 감합을 행하기 위한 이동량을 제어부(203)에 주어 구동부(204)에 의해 로봇 암(100)을 이동시켜, 수 커넥터(110)와, 삽입 목적지가 되는 암 커넥터(120)의 감합을 시행한다.
다음으로 스텝 S1105에 있어서, 구동부(204)에 의해 로봇 암(100)을 이동 중에 커넥터끼리가 접촉한 경우에는 이동량의 단위량마다 힘 센서(801)의 값과, 단안 카메라(102)로부터의 화상을 경로 결정부(802)의 평가부(805)와 Critic부(803)가 기억한다.
그리고, 스텝 S1106에 있어서 감합이 성공했는지를 평가부(805)와 Critic부(803)가 확인한다.
통상, 이 시점에서는 감합이 성공하지 않는다. 그 때문에, 스텝 S1108에 있어서 평가부(805)는, 성공 정도를 도 10에서 설명한 방법으로 평가하고, 위치 맞춤에 대한 성공 정도를 나타내는 평가치를 경로 설정부(806)에 준다.
그리고, 스텝 S1109에 있어서, 경로 설정부(806)는, 상술한 방법을 이용하여 학습을 행하고, 경로 설정부(806)는, 다음의 추천값을 Actor부(804)에 줌과 아울러, Critic부(803)가 보수량에 따라 구한 값을 출력하고, Actor부(804)가 수신한다. 스텝 S1110에 있어서, Actor부(804)는, Critic부(803)가 출력한 보수량에 따라 구한 값과 경로 설정부(806)가 출력한 다음의 추천값을 가산하여 이동 보정량을 구한다. 또, 이 스텝에 있어서, 경로 설정부(806)가 출력한 다음의 추천값을 이용하는 것만으로 충분한 효과가 있는 경우에는, Critic부(803)가 출력한 보수량에 따라 구한 값을 가산할 필요가 없는 것은 말할 필요도 없다. 또한, Actor부(804)는, 이동 보정량을 구할 때에, Critic부(803)가 출력한 보수량에 따라 구한 값의 경로 설정부(806)가 출력한 다음의 추천값에 대한 가산 비율을 설정하고, 가산 비율에 따라 이동 보정량을 변경하더라도 좋다.
그 후, 스텝 S1111에 있어서, Actor부(804)는, 이동 보정량을 제어부(203)에 주어 로봇 암(100)의 파지부(101)를 이동시킨다.
그 후, 다시, 스텝 S1103으로 돌아가, 이동 보정량에 의해 이동된 위치에서 화상을 촬영하고, 감합 동작을 행한다. 이것을 성공할 때까지 반복한다.
감합이 성공한 경우, 스텝 S1107에 있어서, 감합 성공 후는, 감합 성공했을 때의 스텝 S1102로부터 S1106까지의 환경 상태 I에 대하여 Actor부(804) 및 Critic부(803)의 학습을 행한다. 마지막으로 경로 결정부(802)는 이 학습된 뉴럴 네트워크의 데이터를 제어 파라미터 생성부(202)에 줌으로써, 실시의 형태 1에 있어서의 동작이 가능하게 된다.
또, 상기 스텝 S1107에 있어서, 감합 성공한 경우의 환경 상태 I에 대하여 Actor부(804) 및 Critic부(803)의 학습을 행한다고 하고 있지만, 감합 시행 개시로부터 성공까지 모든 시행 때의 데이터를 이용하여 Actor부(804) 및 Critic부(803)가 학습하더라도 좋다. 그 경우, 실시의 형태 1에 있어서, 제어량에 따라 복수의 뉴럴 네트워크를 형성하는 경우에 대하여 기재하고 있지만, 감합의 성공의 위치를 알 수 있으면, 감합 성공까지의 거리를 이용하여 제어량의 크기에 따른 적절한 복수의 뉴럴 네트워크를 동시에 형성시키는 것이 가능하게 된다.
강화 학습 모듈로서 Actor-Critic 모델을 베이스로 기재했지만, Q-Learning 등 다른 강화 학습 모델을 이용하더라도 상관없다.
함수 근사로서 RBF 네트워크를 들었지만, 다른 함수 근사 수법(선형, 2차 함수 등)을 이용하더라도 상관없다.
평가 수법으로서, 커넥터의 표면이 색 차이를 갖는 수법을 들었지만, 다른 화상 처리 기술에 의해 커넥터 사이의 어긋남의 양 등을 평가 수법으로 하더라도 상관없다.
또한, 실시의 형태 1 및 본 실시의 형태에서 말한 바와 같이, 이 기술의 적용은 커넥터의 감합으로 한정되지 않는다. 예컨대 기판에 IC를 싣는 경우에도 적용할 수 있고, 특히 다리의 치수 오차가 큰 콘덴서 등을 기판의 구멍에 삽입하는 경우에 있어서도, 마찬가지의 방법을 이용하면 효과를 나타내는 것이다.
또한, 반드시 기판으로의 삽입에 한한 이야기가 아니고, 화상과 제어량의 관계로부터 제어량을 구하는 위치 제어 전반에 이용할 수 있다. 본 발명에 있어서는, 뉴럴 네트워크를 이용하여 화상과 제어량의 관계를 학습시킴으로써, 물체와 물체의 위치 맞춤을 행할 때의 각각의 개체차를 흡수할 수 있다고 하는 메리트가 있고, 보다 정밀하게 제어량을 산출할 수 있다.
따라서, 본 실시 형태에 있어서는, 제어량을 학습하기 위해 Actor-Critic 모델을 이용할 때, Actor부(804)는, Critic부(803)가 보수량에 따라 구한 값과, 경로 설정부(806)가 평가치에 근거하여 구한 추천값을 가산하여 시행하기 위한 이동 보정량을 구함으로써, 통상의 Actor-Critic 모델에서는, 위치 맞춤이 성공할 때까지는 매우 많은 시행착오 횟수가 필요하지만, 본 발명에 의해 대폭으로 위치 맞춤의 시행 횟수를 삭감하는 것이 가능하다.
또, 본 실시의 형태에 있어서는, 위치 맞춤 실패 때의 촬상부(201)로부터의 화상을 평가하는 것에 의해 위치 맞춤의 시행 횟수를 삭감하는 것에 대하여 기재했지만, 위치 맞춤 시행 때의 힘 센서(801)의 값을 이용하더라도 시행 횟수를 삭감할 수 있다. 예컨대, 커넥터의 감합 또는 2개의 물체의 삽입을 포함하는 위치 맞춤에 있어서, 실패인지 여부의 검출은, 힘 센서(801)의 값이 어느 임계치 이상이 되었을 때에, 2개의 물체가 감합 또는 삽입이 완료되어 있는 위치에 있는지 여부를 Actor부(804)가 판단하는 것에 의해 이루어지는 것이 일반적이다. 그 경우에, a. 임계치에 이른 시점에서 감합 또는 삽입 도중이었던 경우, b. 감합과 삽입은 완료되어 있지만 감합 또는 삽입 도중의 힘 센서(801)의 값이, 어느 정도의 값을 나타내는 경우 등도 생각할 수 있다.
a의 경우는, 힘 센서(801)의 값과 화상의 양쪽을 학습시키는 방법이 있고, 상세는 실시의 형태 3에 기재된 방법을 이용하면 실시할 수 있다.
b의 경우도, 힘 센서(801)의 값만으로 학습하는 방법으로서 실시의 형태 3에 기재된 방법을 이용하면, 실시할 수 있다. 또한, 다른 방법으로서, Actor-Critic 모델에서의 보수 R의 정의에 있어서, 감합 또는 삽입 도중에 걸린 최대 부하를 F로 하고, A를 양의 정수로 했을 때, 성공 때, R=(1-A/F), 실패 때 R=0으로 정의하더라도 마찬가지의 효과를 나타낼 수 있다.
실시의 형태 3.
본 실시의 형태에 있어서는, 실시의 형태 2에 있어서, 위치 맞춤이 성공한 후에 행하는 학습 과정에 있어서 효율적으로 데이터를 수집하는 방법에 대하여 설명한다. 따라서 특별히 설명하지 않는 경우에 대해서는 실시의 형태 2와 동일한 것으로 한다. 즉, 실시의 형태 3에 있어서의 위치 제어 장치의 기능 구성도는 도 8이고, 하드웨어 구성도는 도 9가 된다.
동작에 있어서는, 실시의 형태 2에 있어서의 도 11의 스텝 S1107의 동작 때에 보다 효율적으로 학습 데이터를 수집하는 방법에 대하여 이하 설명한다.
도 12는 실시의 형태 3에 있어서의 위치 제어 장치의 경로 학습에 있어서의 플로차트를 나타내고 있다.
우선, 스텝 S1201에 있어서, 도 11의 스텝 S1107에 있어서 수 커넥터(110)와 암 커넥터(120)의 감합이 성공한 경우, 경로 설정부(806)는, 변수를 i=0, j=1, k=1로서 초기화한다. 변수 i는, 이후의 로봇 암(100)의 학습 횟수, 변수 k는, 수 커넥터(110)와 암 커넥터(120)의 감합이 풀어졌을 때로부터의 학습 횟수, 변수 j는 도 12의 플로차트의 루프 횟수이다.
다음으로, 스텝 S1202에 있어서, 경로 설정부(806)는, 도 11의 스텝 S1104에 있어서 감합을 행하기 위해 준 이동량에 의해 초래된 상태로부터 1㎜만큼 되돌리도록 Actor부(804)를 경유하여 제어부(203)에 이동량을 주고, 구동부(204)에 의해 로봇 암(100)을 이동시킨다. 그리고 변수 i에 대하여 1 가산한다. 여기서, 이동량으로부터 1㎜ 되돌리는 지시를 주었지만, 반드시 1㎜에 한할 필요는 없고, 0.5㎜이더라도 2㎜ 등의 단위량이더라도 좋다.
다음으로, 스텝 S1203에 있어서, 경로 설정부(806)는 그때의 좌표를 O(i)(이때 i=1)로서 기억한다.
스텝 S1204에 있어서, 경로 설정부(806)는 O(i)로부터의 랜덤의 이동량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)를 생성하고, Actor부(804)를 경유하여 제어부(203)에 이동량을 주고, 구동부(204)에 의해 로봇 암(100)을 이동시킨다. 이때, 이 이동량의 최대량은, 이동을 할 수 있는 범위에서 임의로 설정할 수 있다.
다음으로 스텝 S1205에 있어서, 스텝 S1204에 있어서 이동 후의 위치에 있어서, Actor부(804)는, 이동량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)에 대응하는 힘 센서(801)의 값을 수집함과 아울러, 스텝 S1206에 있어서, Critic부(803)와 Actor부(804)는, 이동량에 -1을 곱한 (-ΔX, -ΔY, -ΔZ, -ΔAx, -ΔAy, -ΔAz)와 수 커넥터(110)를 유지하기 위해 걸리는 힘을 계측하는 힘 센서(801)의 센서값을 학습 데이터로서 기록한다.
다음으로 스텝 S1207에 있어서, 경로 설정부(806)는, 모은 데이터의 수가 소정의 수 J에 도달할 수 있었는지를 판정한다. 데이터의 수가 부족하면, 스텝 S1208에 있어서 변수 j에 1 가산하여 스텝 S1204로 돌아가고, 이동량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)를 난수에 의해 바꾸어 데이터를 취득하고, 소정의 수 J개의 데이터가 모일 때까지 S1204~S1207을 반복한다.
소정의 수의 데이터가 모이면, 스텝 S1209에 있어서, 경로 설정부(806)는, 변수 j를 1로 한 뒤에, 스텝 S1210에 있어서, 수 커넥터(110)와 암 커넥터(120)의 감합이 풀어졌는지를 확인한다.
풀어져 있지 않으면, 스텝 S1211을 경유하여 스텝 S1202로 돌아간다.
스텝 S1211에 있어서 경로 설정부(806)는, 로봇 암(100)의 좌표를, 랜덤의 이동량을 주기 전의 좌표 O(i)로 되돌리도록 Actor부(804)를 경유하여 제어부(203)에 이동량을 주고, 구동부(204)에 의해 로봇 암(100)을 이동시킨다.
그 후, 스텝 S1202로부터 스텝 S1210까지의 루프를 수 커넥터(110)와 암 커넥터(120)의 감합이 풀어질 때까지, 감합을 행하기 위해 준 이동량에 의해 초래된 상태로부터 1㎜ 또는 단위량 되돌리는 처리와, 되돌린 위치를 중심으로 랜덤의 이동량을 주어 힘 센서(801)의 데이터를 수집하는 처리를 반복한다. 수 커넥터(110)와 암 커넥터(120)의 감합이 풀어진 경우는, 스텝 S1212로 진행한다.
스텝 S1212에 있어서, 경로 설정부(806)는, 변수 i를 I(I는 수 커넥터(110)와 암 커넥터(120)의 감합이 풀어졌다고 판정되었을 때의 i의 값보다 큰 정수)로 함과 아울러, 감합을 행하기 위해 준 이동량에 의해 초래된 상태로부터 예컨대 10㎜(여기도 그 외의 값이더라도 좋다) 되돌리도록 Actor부(804)를 경유하여 제어부(203)에 이동량 주고, 구동부(204)에 의해 로봇 암(100)을 이동시킨다.
다음으로, 스텝 S1213에 있어서, 경로 설정부(806)는, 스텝 S1212에서 로봇 암(100)이 이동한 위치의 좌표를 중심 위치 O(i+k)의 좌표로서 기억한다.
다음으로, 스텝 S1214에 있어서, 경로 설정부(806)는, 중심 위치 O(i+k)를 중심으로, 다시, 랜덤으로 이동량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)를 결정한 다음, Actor부(804)를 경유하여 제어부(203)에 이동량을 주고, 구동부(204)에 의해 로봇 암(100)을 이동시킨다.
스텝 S1215에 있어서, Critic부(803)와 Actor부(804)는, 이동량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)로 이동 후의 로봇 암(100) 위치에 있어서, 단안 카메라(102)의 촬상부(201)가 촬상한 화상을 취득한다.
스텝 S1216에 있어서, Critic부(803)와 Actor부(804)는, 이동량에 -1을 곱한 (-ΔX, -ΔY, -ΔZ, -ΔAx, -ΔAy, -ΔAz)와 화상을 1개의 학습 데이터로서 기록한다.
스텝 S1217에 있어서, 경로 설정부(806)는, 모은 데이터 수가 소정의 수 J에 도달할 수 있었는지를 판정한다. 데이터 수가 부족하면, 스텝 S1218에 있어서 변수 j에 1 가산하여 스텝 S1214로 돌아가고, 이동량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)를 난수에 의해 바꾸어 데이터를 취득하고, 소정의 수 J개의 데이터가 모일 때까지 S1214~S1217 반복한다.
또, S1204에 있어서의 이동량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)와 S1214에서의 이동량의 랜덤 값의 최대치는 상이한 값을 취할 수 있다.
이상의 방법으로 취득한 학습 데이터를 이용하여, Actor부(804) 및 Critic부(803)의 학습을 행한다.
도 13은 실시의 형태 3에 있어서의 뉴럴 네트워크와, 뉴럴 네트워크의 학습 규칙의 예를 나타내는 도면이다.
실시의 형태 1, 2에 대해서는, 힘 센서(801)의 데이터를 이용한 학습 방법에 대하여 기재하고 있지 않았다. 실시 형태 1과 2는, 입력층은 화상뿐이었던 것에 비하여, 실시의 형태 3에 있어서는, 입력층에 화상 대신에 힘 센서(801)의 값을 넣더라도 좋다. 힘 센서(801)의 값은, 3개(힘과 2방향의 모멘트)의 경우와 6개(3방향과 3방향 모멘트)의 경우 중 어느 것이더라도 좋다. 출력층에는 제어량 (ΔX, ΔY, ΔZ, ΔAx, ΔAy, ΔAz)가 출력된다. 또, 수 커넥터(110)와 암 커넥터(120)의 감합이 풀어져 있는 경우에는, 입력층에 화상과 힘 센서(801)의 값이 동시에 입력되게 된다.
뉴럴 네트워크의 학습 과정에 있어서, 입력된 화상 및 힘 센서(801)의 값으로부터 중간층을 거쳐 얻어진 출력층의 출력치를 화상 및 힘 센서(801)의 값과 세트로 기억된 제어량에 근사시키기 위해 중간층의 파라미터를 최적화시키는 것이 행하여지고, 학습되게 된다.
마지막으로 경로 결정부(802)는 이 학습된 뉴럴 네트워크의 데이터를 제어 파라미터 생성부(202)에 줌으로써, 실시의 형태 1에 있어서의 동작이 가능하게 된다.
또, 본 실시의 형태에 있어서는, 수 커넥터(110)와 암 커넥터(120)의 감합을 위한 이동으로부터 조금씩 되돌리면서, 로봇 암(100)을 미소하게 주변으로 이동시켜 학습시키기 때문에, 감합이 풀어질 때까지는 단안 카메라(102)의 화상의 화소량에 따라서는 충분히 학습할 수 없는 전제로 설명하고 있었다.
그렇지만 단안 카메라(102)의 화상이 충분히 고해상도이고 로봇 암(100)을 미소하게 주변으로 이동시킨 화상이더라도 충분히 학습 가능한 경우는, 단안 카메라(102)의 화상만으로 학습하더라도 좋고, 수 커넥터(110)와 암 커넥터(120)가 감합하고 있는 경우이더라도 단안 카메라(102)의 화상과 힘 센서(801)의 값을 양쪽 모두 이용하더라도 좋다.
또한, 실시의 형태 1, 2에 있어서, 복수의 뉴럴 네트워크를 사용하는 케이스에 대하여 설명하고 있다. 본 실시의 형태에 있어서도, 예컨대 수 커넥터(110)와 암 커넥터(120)가 감합하고 있는 상태와, 수 커넥터(110)와 암 커넥터(120)가 감합하고 있지 않은 경우에, 뉴럴 네트워크를 구별하더라도 좋다. 상기에 설명한 바와 같이 수 커넥터(110)와 암 커넥터(120)가 감합하고 있는 상태에서는 힘 센서(801)로부터의 값만으로 입력층을 형성하고, 감합으로부터 풀어지면 화상만으로 입력층을 형성하는 것이 보다 정밀도가 좋은 학습을 행할 수 있고, 화상만으로 학습시키는 경우에도 감합하고 있는 경우와 하고 있지 않은 경우를 구별함으로써, 화상의 구성이 상이하기 때문에 정밀도가 좋은 학습을 행할 수 있다.
또, 실시의 형태 1, 2에서 말한 바와 같이, 본 실시의 형태에 있어서도, 이 기술의 적용은 커넥터의 감합으로 한정되지 않는다. 예컨대 기판에 IC를 싣는 경우에도 적용할 수 있고, 특히 다리의 치수 오차가 큰 콘덴서 등을 기판의 구멍에 삽입하는 경우에 있어서도, 마찬가지의 방법을 이용하면 효과를 나타내는 것이다.
또한, 반드시 기판으로의 삽입에 한한 이야기가 아니고, 화상과 제어량의 관계로부터 제어량을 구하는 위치 제어 전반에 이용할 수 있다. 본 발명에 있어서는, 뉴럴 네트워크를 이용하여 화상과 제어량의 관계를 학습시킴으로써, 물체와 물체의 위치 맞춤을 행할 때의 각각의 개체차를 흡수할 수 있다고 하는 메리트가 있고, 보다 정밀하게 제어량을 산출할 수 있다.
따라서, 본 실시의 형태에 있어서는, 2개의 물체에 대하여 삽입을 수반하는 위치 맞춤을 포함하는 경우, 제어량을 학습하기 위해, 삽입 상태로부터 뽑아낼 때에 삽입 상태로부터의 경로 상과 그 주변으로 이동시키도록 이동량을 지시하는 경로 설정부(806)와, 이동된 위치의 출력층, 이동된 위치의 힘 센서(801)의 값을 입력층으로서 학습시키기 위해 이동된 위치와 힘 센서(801)의 값을 취득하는 Actor부(804)를 구비하였으므로, 효율적으로 학습 데이터를 수집할 수 있다.
100 : 로봇 암
101 : 파지부
102 : 단안 카메라
110 : 수 커넥터
120 : 암 커넥터
201 : 촬상부
202 : 제어 파라미터 생성부
203 : 제어부
204 : 구동부
301 : 입출력 인터페이스
302 : 프로세서
303 : 메모리
304 : 제어 회로
305 : 모터
801 : 힘 센서
802 : 경로 결정부
803 : Critic부
804 : Actor부
805 : 평가부
806 : 경로 설정부

Claims (8)

  1. 제 1 물체를 구동부에 의해 이동시켜 제 2 물체에 맞붙이기 위한 위치 제어 장치에 있어서,
    상기 제 1 물체와 상기 제 2 물체의 2개의 물체가 존재하는 화상을 촬상하는 단안(monocular) 카메라의 촬상부와,
    상기 촬상부에 의해 촬상된 복수의 화상의 정보가 입력층에 입력되고, 상기 입력층에 입력된 복수의 화상 각각과 각각이 대응 관계에 있는 상기 제 1 물체를 이동시키는 이동량인, 확률적 구배법을 포함하는 학습 규칙에 근거하여 얻어진 제어량이 출력층에 출력되는 복수의 뉴럴 네트워크 중, 상기 촬상부가 화상을 최초로 취득했을 때, 소정의 뉴럴 네트워크를 선택하고, 상기 선택한 뉴럴 네트워크의 출력층에 출력된 제어량을, 상기 촬상부로부터 취득한 화상에 존재하는 상기 제 1 물체와 상기 제 2 물체의 2개의 물체 중 상기 제 1 물체를 상기 구동부에 의해 이동시키는 제어량으로서 출력하고, 상기 촬상부가 2회째 이후에 촬상한 화상을 취득하고, 그 화상의 정보를, 전회 취득한 화상의 정보를 입력층에 입력한 뉴럴 네트워크의 출력층에 출력된 제어량의 크기에 근거하여 상기 복수의 뉴럴 네트워크로부터 1개의 뉴럴 네트워크를 선택하고, 그 선택한 뉴럴 네트워크의 입력층에 입력하고, 그 선택한 뉴럴 네트워크의 출력층에 출력된 제어량을, 상기 촬상부로부터 취득한 화상에 존재하는 상기 제 1 물체와 상기 제 2 물체의 2개의 물체 중 상기 제 1 물체를 상기 구동부에 의해 이동시키는 제어량으로서 출력하는 제어 파라미터 생성부
    를 구비한 위치 제어 장치.
  2. 제 1 항에 있어서,
    상기 제어 파라미터 생성부로부터 출력된 제어량을 이용하여, 상기 구동부에 대한, 상기 제 1 물체를 이동시키기 위한 전류치 또는 전압치를 제어하는 제어부를 구비하는 위치 제어 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 제 1 물체를 상기 구동부에 의해 이동시키는 제어량을 학습하기 위하여,
    시행 때에, 상기 촬상부에 촬상된 화상의 정보를 입력으로 하고, 시행 때 최초의 상기 촬상부에 촬상된 화상의 상기 제 1 물체의 위치로부터 얻어진, 정의된 보수를 최대화하는 이동 보정량을, 상기 제 1 물체를 상기 구동부에 의해 이동시키는 이동 제어량으로서 출력하고, 상기 촬상부가 2회째 이후에 촬상한 화상의 상기 제 1 물체의 위치로부터 추천값을 이용하여 얻어진 이동 보정량을, 상기 제 1 물체를 상기 구동부에 의해 이동시키는 이동 제어량으로서 출력하는 Actor부와,
    상기 제 1 물체를, 상기 Actor부로부터 출력된 이동 제어량에 의해 이동시켰을 때의 상기 제 1 물체와 상기 제 2 물체의 위치 관계에 근거하는 성공 정도를 나타내는 평가치에 근거하여 추천값을 구하고, 구한 추천값을 상기 Actor부로의 추천값으로서 주는 경로 설정부를 구비하고,
    상기 경로 설정부는 학습된 뉴럴 네트워크의 데이터를 상기 제어 파라미터 생성부에 제공하는
    위치 제어 장치.
  4. 제 1 물체를 구동부에 의해 이동시켜 제 2 물체에 맞붙이기 위한 위치 제어 방법으로서,
    단안 카메라의 촬상부에 의해 최초로 촬상된, 상기 제 1 물체 및 상기 제 2 물체의 2개의 물체가 존재하는 화상의 정보를, 출력층에 출력되는 제어량의 크기의 범위가 상이한 복수의 뉴럴 네트워크 중 소정의 뉴럴 네트워크의 입력층에 입력하고,
    상기 소정의 뉴럴 네트워크의 입력층에 입력된 상기 촬상부에 의해 최초로 촬상된 화상과 대응 관계에 있는 상기 제 1 물체를 이동시키는 이동량인, 확률적 구배법을 포함하는 학습 규칙에 근거하여 얻어진, 화상의 정보와의 화상 세트가 되는 제어량을 상기 촬상부에 의해 최초로 촬상된 화상에 존재하는 상기 제 1 물체와 상기 제 2 물체의 2개의 물체 중 상기 제 1 물체를 상기 구동부에 의해 이동시키는 제어량으로서 상기 소정의 뉴럴 네트워크의 출력층에 출력하고,
    상기 촬상부에 의해 2회째 이후에 촬상된, 상기 제 1 물체 및 상기 제 2 물체의 2개의 물체가 존재하는 화상의 정보를, 전회 상기 촬상부에 의해 촬상된 화상을 입력층에 입력한 뉴럴 네트워크의 출력층에 출력된 제어량의 크기에 근거하여, 상기 복수의 뉴럴 네트워크 중에서 1개의 뉴럴 네트워크를 선택하고, 선택한 뉴럴 네트워크의 입력층에 입력하고,
    상기 선택한 뉴럴 네트워크의 입력층에 입력된 상기 촬상부에 의해 촬상된 화상과 대응 관계에 있는 상기 제 1 물체를 이동시키는 이동량인, 확률적 구배법을 포함하는 학습 규칙에 근거하여 얻어진, 화상의 정보와의 화상 세트가 되는 제어량을, 상기 촬상부에 의해 촬상된 화상에 존재하는 상기 제 1 물체와 상기 제 2 물체의 2개의 물체 중 상기 제 1 물체를 상기 구동부에 의해 이동시키는 제어량으로서 상기 선택한 뉴럴 네트워크의 출력층에 출력하는
    위치 제어 방법.
  5. 제 1 물체를 구동부에 의해 이동시켜 제 2 물체에 맞붙이기 위한 위치 제어 방법으로서,
    단안 카메라의 촬상부에 의해 시행 때 최초로 촬상된, 상기 제 1 물체 및 상기 제 2 물체의 2개의 물체가 존재하는 화상의 정보의 상기 제 1 물체의 위치로부터, 정의된 보수를 최대화하는 이동 보정량을, 상기 제 1 물체를 상기 구동부에 의해 이동시키는 이동 제어량으로서 구하고,
    상기 제 1 물체를 그 구하여진 이동 제어량에 의해 이동시켰을 때의 상기 제 1 물체와 상기 제 2 물체의 위치 관계에 근거하는 성공 정도를 나타내는 평가치에 근거하여 추천값을 구하고,
    그 구한 추천값을 이용하여 상기 촬상부로부터 시행 때 2회째에 촬상한 화상의 상기 제 1 물체의 위치로부터의 이동 보정량을, 상기 제 1 물체를 상기 구동부에 의해 이동시키는 이동 제어량으로서 구하고,
    상기 촬상부가 시행 때 3회째 이후에 촬상했을 때, 전회 구하여진 이동 제어량에 의해 상기 제 1 물체를 이동시켰을 때의 상기 제 1 물체와 상기 제 2 물체의 위치 관계에 근거하는 성공 정도를 나타내는 평가치에 근거하여 추천값을 구하고,
    그 구한 추천값을 이용하여 상기 촬상부로부터 시행 때 3회째 이후에 촬상한 화상의 상기 제 1 물체의 위치로부터의 이동 보정량을, 상기 제 1 물체를 상기 구동부에 의해 이동시키는 이동 제어량으로서 구하는
    학습 과정을 포함하고,
    상기 학습 과정 이후에,
    상기 촬상부에 의해 촬상된, 상기 제 1 물체 및 상기 제 2 물체의 2개의 물체가 존재하는 화상의 정보를, 상기 구하여진 이동 제어량에 근거하여 출력층에 출력되는 제어량의 크기의 범위가 상이한 복수의 뉴럴 네트워크로부터 1개의 뉴럴 네트워크를 선택하고, 선택한 뉴럴 네트워크의 입력층에 입력하고,
    상기 선택한 뉴럴 네트워크의 입력층에 입력된 상기 촬상부에 의해 촬상된 화상과 대응 관계에 있는 상기 제 1 물체를 이동시키는 이동량인, 확률적 구배법을 포함하는 학습 규칙에 근거하여 얻어진, 화상의 정보와의 화상 세트가 되는 제어량을, 상기 촬상부에 의해 촬상된 화상에 존재하는 상기 제 1 물체와 상기 제 2 물체의 2개의 물체 중 상기 제 1 물체를 상기 구동부에 의해 이동시키는 제어량으로서 상기 선택한 뉴럴 네트워크의 출력층에 출력하는
    위치 제어 방법.
  6. 삭제
  7. 삭제
  8. 삭제
KR1020197022651A 2017-02-09 2017-02-09 위치 제어 장치 및 위치 제어 방법 KR102113462B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/004732 WO2018146769A1 (ja) 2017-02-09 2017-02-09 位置制御装置及び位置制御方法

Publications (2)

Publication Number Publication Date
KR20190102250A KR20190102250A (ko) 2019-09-03
KR102113462B1 true KR102113462B1 (ko) 2020-05-21

Family

ID=63107958

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197022651A KR102113462B1 (ko) 2017-02-09 2017-02-09 위치 제어 장치 및 위치 제어 방법

Country Status (7)

Country Link
US (1) US11440184B2 (ko)
JP (1) JP6587761B2 (ko)
KR (1) KR102113462B1 (ko)
CN (1) CN110268358B (ko)
DE (1) DE112017007025T5 (ko)
TW (1) TWI640851B (ko)
WO (1) WO2018146769A1 (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10427305B2 (en) * 2016-07-21 2019-10-01 Autodesk, Inc. Robotic camera control via motion capture
JP6603257B2 (ja) * 2017-03-31 2019-11-06 ファナック株式会社 行動情報学習装置、管理装置、ロボット制御システム及び行動情報学習方法
CN107292392B (zh) * 2017-05-11 2019-11-22 苏州大学 基于深度带权双q学习的大范围监控方法及监控机器人
JP7020812B2 (ja) * 2017-07-19 2022-02-16 キヤノン株式会社 ロボット装置、ロボット装置の制御方法、ロボット装置を用いた物品の組立方法、制御プログラムおよび記録媒体
US11833681B2 (en) 2018-08-24 2023-12-05 Nvidia Corporation Robotic control system
DE102019122790B4 (de) * 2018-08-24 2021-03-25 Nvidia Corp. Robotersteuerungssystem
US11685052B2 (en) * 2018-09-18 2023-06-27 Kinova Inc. Vision guided robot arm and method for operating the same
US11292133B2 (en) * 2018-09-28 2022-04-05 Intel Corporation Methods and apparatus to train interdependent autonomous machines
JP6699702B2 (ja) * 2018-10-17 2020-05-27 トヨタ自動車株式会社 内燃機関の制御装置及びその制御方法、並びに内燃機関を制御するための学習モデル及びその学習方法
JP6978454B2 (ja) * 2019-02-22 2021-12-08 ファナック株式会社 物体検出装置、制御装置及び物体検出用コンピュータプログラム
JP7290439B2 (ja) * 2019-03-25 2023-06-13 Ntn株式会社 嵌合作業装置
DE102019205651B3 (de) * 2019-04-18 2020-08-20 Kuka Deutschland Gmbh Verfahren und System zum Ausführen von Roboterapplikationen
JP6941305B2 (ja) * 2019-07-30 2021-09-29 株式会社安川電機 嵌合装置、嵌合方法及びプログラム
WO2021118702A1 (en) 2019-12-12 2021-06-17 Mujin, Inc. Method and computing system for performing motion planning based on image information generated by a camera
WO2021176902A1 (ja) * 2020-03-02 2021-09-10 ソニーグループ株式会社 学習処理装置、ロボット制御装置、および方法、並びにプログラム
JP7463777B2 (ja) 2020-03-13 2024-04-09 オムロン株式会社 制御装置、学習装置、ロボットシステム、および方法
DE102020112149A1 (de) 2020-05-05 2021-11-11 Integrated Dynamics Engineering Gesellschaft mit beschränkter Haftung Verfahren zur Kontrolle von Handlingsystemen
US20210352835A1 (en) * 2020-05-05 2021-11-11 Integrated Dynamics Engineering Gmbh Method for processing substrates, in particular wafers, masks or flat panel displays, with a semi-conductor industry machine
DE102020113278A1 (de) 2020-05-15 2021-11-18 Gerhard Schubert Gesellschaft mit beschränkter Haftung Verfahren zur Steuerung des Betriebs eines Industrieroboters
DE102020206913B4 (de) * 2020-06-03 2022-12-22 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Betreiben eines Roboters
CN111823230B (zh) * 2020-06-19 2022-01-07 山东科技大学 一种基于Scara机器人的非固定式手眼关系标定方法
WO2022002571A2 (de) 2020-07-02 2022-01-06 Sew-Eurodrive Gmbh & Co. Kg Verfahren zum betreiben eines systems und system, aufweisend einen stapel von objekten, einen roboter, einen sensor und ein aufnahmemittel
DE102020209685B4 (de) * 2020-07-31 2023-07-06 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum steuern einer robotervorrichtung und robotervorrichtungssteuerung
US20220105626A1 (en) * 2020-10-05 2022-04-07 Autodesk, Inc. Techniques for force and torque-guided robotic assembly
CN114851184B (zh) * 2021-01-20 2023-05-09 广东技术师范大学 一种面向工业机器人的强化学习奖励值计算方法
CN113059570B (zh) * 2021-04-09 2022-05-24 华南理工大学 基于人体动态臂力估计模型的人-机器人协同控制方法
DE102021109332B4 (de) * 2021-04-14 2023-07-06 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zum Steuern eines Roboters zum Einsetzen eines Objekts in eine Einsetzstelle
DE102021109333B4 (de) * 2021-04-14 2023-07-06 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zum Trainieren eines Neuronalen Netzes zum Steuern eines Roboters für eine Einsetzaufgabe
DE102021204846B4 (de) 2021-05-12 2023-07-06 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Steuern einer Robotervorrichtung
DE102022202144A1 (de) 2022-03-02 2023-09-07 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zur Steuerung eines Roboters zur Durchführung einer Aufgabe
DE102022202145A1 (de) 2022-03-02 2023-09-07 Robert Bosch Gesellschaft mit beschränkter Haftung Roboter und Verfahren zum Steuern eines Roboters
DE102022202143B4 (de) 2022-03-02 2024-05-16 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zur Steuerung eines Roboters zur Durchführung einer Aufgabe
DE102022204724A1 (de) 2022-05-13 2023-11-16 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Steuern einer Robotervorrichtung

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012003782A (ja) 2005-05-07 2012-01-05 Stephen L Thaler 有用な情報を自律的にブートストラッピングする装置
JP2016000442A (ja) 2014-06-12 2016-01-07 セイコーエプソン株式会社 ロボット、ロボットシステム及び制御装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5309525A (en) * 1990-06-14 1994-05-03 Canon Kabushiki Kaisha Image processing apparatus using neural network
JPH05318355A (ja) 1992-05-25 1993-12-03 Sony Corp 位置補正方法及び位置補正装置
CN1072374C (zh) * 1995-08-07 2001-10-03 货款接收机公司 用人工神经网络对硬币的有效性进行图形识别的装置
US6141863A (en) 1996-10-24 2000-11-07 Fanuc Ltd. Force-controlled robot system with visual sensor for performing fitting operation
TW444499B (en) * 1998-12-31 2001-07-01 Tsai Ching Yuan Binocular mechanical head monitoring system
JP3876234B2 (ja) * 2003-06-17 2007-01-31 ファナック株式会社 コネクタ把持装置、同装置を備えたコネクタ検査システム及びコネクタ接続システム
JP2005125475A (ja) 2003-10-24 2005-05-19 Sunao Kitamura 一回の成功試行で最良経路を学習するアーキテクチャ
KR20050073964A (ko) * 2004-01-12 2005-07-18 고종선 동기전동기를 이용한 위치 제어장치 및 방법
CN101396829A (zh) * 2007-09-29 2009-04-01 株式会社Ihi 机器人装置的控制方法以及机器人装置
CN100524108C (zh) * 2007-11-19 2009-08-05 北京理工大学 一种基于小波神经网络的视觉反馈控制方法
JP5427658B2 (ja) 2010-03-16 2014-02-26 パナソニック株式会社 コンパレータのオフセット補正装置
FI20106090A0 (fi) * 2010-10-21 2010-10-21 Zenrobotics Oy Menetelmä kohdeobjektin kuvien suodattamiseksi robottijärjestelmässä
JP5744587B2 (ja) * 2011-03-24 2015-07-08 キヤノン株式会社 ロボット制御装置、ロボット制御方法、プログラム及び記録媒体
JP5869406B2 (ja) 2012-03-30 2016-02-24 株式会社大気社 熱交換システム、及び、コントローラ
US20140025613A1 (en) * 2012-07-20 2014-01-23 Filip Ponulak Apparatus and methods for reinforcement learning in large populations of artificial spiking neurons
TWI492008B (zh) * 2013-11-01 2015-07-11 Ind Tech Res Inst 工作機械控制系統及其方法
CN105430255A (zh) * 2014-09-16 2016-03-23 精工爱普生株式会社 图像处理装置以及机器人系统
JP2016185572A (ja) * 2015-03-27 2016-10-27 セイコーエプソン株式会社 ロボット、ロボット制御装置およびロボットシステム
JP6517567B2 (ja) * 2015-03-31 2019-05-22 日本電産サンキョー株式会社 サーボモータ制御装置及び衝突検出方法
DE112016003350T5 (de) * 2015-07-24 2018-04-05 Google Llc Kontinuierliche steuerung mit tiefem bestärkendem lernen

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012003782A (ja) 2005-05-07 2012-01-05 Stephen L Thaler 有用な情報を自律的にブートストラッピングする装置
JP2016000442A (ja) 2014-06-12 2016-01-07 セイコーエプソン株式会社 ロボット、ロボットシステム及び制御装置

Also Published As

Publication number Publication date
JP6587761B2 (ja) 2019-10-09
US11440184B2 (en) 2022-09-13
TW201830183A (zh) 2018-08-16
WO2018146769A1 (ja) 2018-08-16
CN110268358B (zh) 2022-11-04
DE112017007025T5 (de) 2019-10-24
US20200030970A1 (en) 2020-01-30
CN110268358A (zh) 2019-09-20
KR20190102250A (ko) 2019-09-03
TWI640851B (zh) 2018-11-11
JPWO2018146769A1 (ja) 2019-06-27

Similar Documents

Publication Publication Date Title
KR102113462B1 (ko) 위치 제어 장치 및 위치 제어 방법
KR102113465B1 (ko) 위치 제어 장치 및 위치 제어 방법
JP6458912B1 (ja) 位置制御装置及び位置制御方法
JP5852364B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP4645601B2 (ja) 環境地図の生成方法及び移動ロボット
CN107015530B (zh) 模拟装置以及模拟方法
JP4961860B2 (ja) ロボット装置及びロボット装置の制御方法
CN114615441A (zh) 校准装置以及校准方法
CN113878588B (zh) 面向卡扣式连接的基于触觉反馈的机器人柔顺装配方法
Henrich et al. Multi-camera collision detection between known and unknown objects
Kruse et al. Camera-based observation of obstacle motions to derive statistical data for mobile robot motion planning
Caporali et al. Combining vision and tactile data for cable grasping
CN113927602A (zh) 基于视、触觉融合的机器人精密装配控制方法及系统
Graae et al. Stereoscopic vision for a humanoid robot using genetic programming
CN110942083A (zh) 拍摄装置以及拍摄系统
JP7067479B2 (ja) 変位計測装置、変位計測システム、変位計測方法及びプログラム
Tsai et al. Overview of a unified calibration trio for robot eye, eye-to-hand, and hand calibration using 3D machine vision
CN111522299B (zh) 机械控制装置
KR20210042644A (ko) 휴머노이드 로봇 제어 시스템 및 방법
JP3541980B2 (ja) 視覚センサ付きロボットにおけるキャリブレーション方法
CN117930841A (zh) 一种基于三维点云重构的果园建模及采摘机器人控制方法
Hornung et al. A model-based approach for visual guided grasping with uncalibrated system components
Howden et al. Hand-eye coordinated learning using hierarchical space tessellation

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right