KR102005196B1 - Robot that manipulate object by remote control - Google Patents

Robot that manipulate object by remote control Download PDF

Info

Publication number
KR102005196B1
KR102005196B1 KR1020180131039A KR20180131039A KR102005196B1 KR 102005196 B1 KR102005196 B1 KR 102005196B1 KR 1020180131039 A KR1020180131039 A KR 1020180131039A KR 20180131039 A KR20180131039 A KR 20180131039A KR 102005196 B1 KR102005196 B1 KR 102005196B1
Authority
KR
South Korea
Prior art keywords
distance
camera module
robot
processor
memory
Prior art date
Application number
KR1020180131039A
Other languages
Korean (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 박배억
Priority to KR1020180131039A priority Critical patent/KR102005196B1/en
Application granted granted Critical
Publication of KR102005196B1 publication Critical patent/KR102005196B1/en

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/1679Programme controls characterised by the tasks executed
    • B25J9/1689Teleoperation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/006Controls for manipulators by means of a wireless system for controlling one or several manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera 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/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/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

Abstract

According to an embodiment, a robot operated based on the remote control of a manager terminal includes: a communication module communicating with the manager terminal; a manipulation device for physically manipulating a physical object; a camera module generating an image by photographing the object; a moving module moving the manipulation device and the camera module; a processor; and a memory storing instructions able to be executed by the processor. The processor loads the image into the memory and transmits the image to the manager terminal, and synchronizes at least one object generated from the image loaded into the memory with at least one object generated from the image loaded into the manager terminal; receives information about a specific object selected by a manager from the manager terminal; calculates a (X, Y, Z) value which is a three-dimensional position of a subject which is a part of a target corresponding to the specific object; and manipulates the subject corresponding to the specific object through the manipulation device by moving the manipulation device based on the (X, Y, Z) value.

Description

원격 제어에 의해 대상물을 조작하는 로봇 및 로봇의 동작 방법{ROBOT THAT MANIPULATE OBJECT BY REMOTE CONTROL}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a robot for operating an object by remote control,

본 발명은 원격으로 제어되는 로봇에 관한 것으로서, 보다 구체적으로 원격 제어에 의해 공작 기계 등의 대상물을 물리적으로 조작할 수 있는 로봇 및 로봇의 동작 방법에 관한 것이다. The present invention relates to a robot that is remotely controlled, and more particularly, to a robot that can physically manipulate an object such as a machine tool by remote control and an operation method of the robot.

로봇 기술의 발전으로 로봇을 원격에서 제어하여 로봇으로 하여금 공작 기계를 조작하게 하거나 로봇으로 폭발물을 제거하는 하는 등의 작업을 할 수 있다. 이를 위해 일반적으로 로봇은 카메라를 구비한다. 로봇은 카메라로 촬영된 이미지를 원격지의 관리자의 단말로 전송하고, 관리자는 단말에 표시되는 촬영 이미지를 보며 로봇을 제어한다. 이와 같이 관리자가 직접 공작 기계 등을 직접 눈으로 보지 않고 원격에서 촬영 이미지를 보며 로봇을 제어하기 때문에, 공작 기계 등에 대한 물리적인 조작이 정밀하지 못한 경우가 많다. 관리자가 로봇 제어에 능숙하지 못하면 실수가 발생할 수 있다.With the advancement of robot technology, it is possible to remotely control the robot, thereby allowing the robot to operate the machine tool or to remove explosives with the robot. For this purpose, the robot generally has a camera. The robot transmits an image photographed by the camera to the terminal of the manager at the remote site, and the manager controls the robot while viewing the photographed image displayed on the terminal. In this way, since the manager directly controls the robot while viewing the shot image remotely without looking directly at the machine tool, the physical manipulation of the machine tool is often not precise. If the manager is not proficient in robot control, mistakes may occur.

본 발명은 로봇에서 촬영하여 전송하는 촬영 이미지를 원격지에 위치한 관리자가 보며 촬영 이미지에서 조작하고자 하는 객체를 선택하기만 하면 로봇이 객체의 실제 3차원 위치를 자동으로 분석하여 정밀하게 조작할 수 있도록 하는 로봇 및 로봇의 동작 방법을 제공하는 데 목적이 있다. The present invention enables a robot to automatically analyze an actual three-dimensional position of an object and precisely manipulate the object by simply selecting an object to be manipulated from a photographed image, And to provide a method of operating a robot and a robot.

일 측면에 따른 관리자 단말의 원격 제어에 의해 동작하는 로봇은, 상기 관리자 단말과 통신하는 통신 모듈; 물리적 대상물을 물리적으로 조작할 수 있는 조작 장치; 상기 대상물을 촬영하여 촬영 이미지를 생성하는 카메라 모듈; 상기 조작 장치 및 상기 카메라 모듈을 이동시키는 이동 모듈; 프로세서; 및 상기 프로세서에 의해 실행 가능한 명령어를 저장하는 메모리; 상기 프로세서는, 상기 촬영 이미지를 상기 메모리에 로드하고 상기 관리자 단말로 전송하며 상기 메모리에 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체와 상기 관리자 단말에서 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체를 동기화하며, 상기 관리자 단말로부터 관리자에 의해 선택된 특정 객체의 정보를 수신하고, 상기 특정 객체에 대응하는 상기 대상물의 부분인 피사체의 3차원 위치인 (X, Y, Z) 값을 산출하며, 그 (X, Y, Z) 값에 기초하여 상기 조작 장치를 이동하여 상기 특정 객체에 대응하는 상기 피사체를 상기 조작 장치로 조작한다.A robot that operates by remote control of an administrator terminal according to one aspect includes: a communication module that communicates with the administrator terminal; An operating device capable of physically manipulating a physical object; A camera module for photographing the object and generating a shot image; A movement module for moving the operation device and the camera module; A processor; And a memory for storing instructions executable by the processor; Wherein the processor loads at least one object created in the shot image loaded into the memory and at least one object created in the shot image loaded in the manager terminal, (X, Y, Z) of a subject, which is a part of the object corresponding to the specific object, and calculates (X, Y, Z) X, Y, Z) of the object, and operates the object corresponding to the specific object with the operation device.

상기 프로세서는, 상기 특정 객체에 대응하는 상기 피사체와 상기 카메라 모듈 간의 거리가 최단 촬영거리가 되도록 상기 카메라 모듈을 이동시키고, 피사체면 내에서 중심으로부터 상기 피사체까지의 가로 및 세로의 거리인 (X, Y) 값을 산출하며, 상기 최단 촬영거리와 상기 카메라 모듈의 이동 거리를 이용하여 상기 카메라 모듈로부터 상기 피사체까지의 거리인 Z 값을 산출하고, 상기 (X, Y, Z) 값에 기초하여 상기 조작 장치를 이동할 수 있다.Wherein the processor moves the camera module such that the distance between the subject and the camera module corresponding to the specific object is the shortest photographing distance, Calculating a Z value that is a distance from the camera module to the subject using the shortest photographing distance and the moving distance of the camera module, and calculating a Z value based on the (X, Y, Z) The operating device can be moved.

상기 프로세서는, 상기 Z 값을 산출하는 데 있어서, 상기 최단 촬영거리에 상기 이동 거리를 더한 값을 상기 Z 값으로 결정할 수 있다.In calculating the Z value, the processor may determine a value obtained by adding the moving distance to the shortest photographing distance as the Z value.

상기 프로세서는, 상기 피사체와의 거리가 최단 촬영거리보다 먼 제 1 위치에 상기 카메라 모듈을 위치시킨 후 최단 촬영거리에 상기 카메라 모듈의 초점이 맞도록 한 상태에서, 상기 카메라 모듈을 상기 제 1 위치로부터 상기 피사체 방향으로 이동시켜 상기 피사체에 초점이 맞을 때까지 이동한 거리를 상기 이동 거리로 결정할 수 있다.Wherein the processor is configured to position the camera module at a first position that is a distance from the subject to a shortest photographing distance and then focus the camera module at a shortest photographing distance, The moving distance of the subject is determined as the moving distance until the subject is focused on the subject.

상기 프로세서는, 상기 피사체와 상기 카메라 모듈 간의 거리가 최단 촬영거리인 지점부터 상기 카메라 모듈을 상기 피사체로부터 멀어지도록 이동시킨 때의 그 이동한 거리를 상기 이동 거리로 결정할 수 있다.The processor may determine the moved distance when the camera module is moved away from the subject from a position at which the distance between the subject and the camera module is the shortest photographing distance as the moving distance.

상기 프로세서는, 상기 촬영 이미지 내에서 중심으로부터 상기 피사체까지의 가로 및 세로의 거리인 (x1, y1) 값을 산출하고, 상기 (x1, y1) 값과, 상기 최단 촬영거리, 그리고 상기 카메라 모듈의 초점거리를 이용하여, 상기 (X, Y) 값을 산출할 수 있다.Wherein the processor calculates a value of (x1, y1) which is a distance between a center and a center of the subject in the shot image and calculates a value of (x1, y1) By using the focal length, the (X, Y) value can be calculated.

상기 메모리는, 상기 카메라 모듈의 최단 촬영거리를 기준으로 초점거리의 감소에 대응하는 피사체까지의 거리인 Z 값을 더 저장하고, 상기 프로세서는, 상기 피사체에 초점이 맞을 때의 상기 카메라 모듈의 초점거리에 대응하는 Z 값을 상기 메모리에서 확인하고, 상기 피사체와 상기 카메라 모듈 간의 거리가 최단 촬영거리가 되도록 상기 카메라 모듈을 이동시킨 후 피사체면 내에서 중심으로부터 상기 피사체까지의 가로 및 세로의 거리인 (X, Y) 값을 산출할 수 있다.Wherein the memory further stores a Z value which is a distance to a subject corresponding to the reduction of the focal distance based on a shortest photographing distance of the camera module, A Z value corresponding to the distance is checked in the memory and the camera module is moved so that the distance between the subject and the camera module is the shortest photographing distance. Then, the distance between the center and the subject in the subject plane (X, Y) can be calculated.

상기 카메라 모듈은, 두 개의 카메라를 포함하고, 상기 프로세서는, 카메라의 제2주점과 촬상면의 상기 피사체를 잇는 선분이, 카메라의 중심축과 이루는 각도를 각 카메라마다 산출하고, 이 각도들과 상기 두 개의 카메라 간 거리를 이용하여, 상기 제2주점과 피사체면의 피사체 간 수직거리를 산출하며, 상기 수직거리에 상기 제2주점과 상기 촬상면 간의 거리를 더하여 Z 값을 산출하고, 상기 제2주점과 피사체면의 피사체 간 수직거리와, 상기 각도들을 이용하여 (X, Y) 값을 산출할 수 있다.Wherein the camera module includes two cameras, and the processor calculates an angle formed by a line segment connecting the second principal point of the camera and the subject on the imaging plane to the central axis of the camera for each camera, Calculating a vertical distance between the second principal point and a subject by using a distance between two cameras and calculating a Z value by adding the distance between the second principal point and the imaging plane to the vertical distance, (X, Y) values can be calculated by using the above-described vertical distances between the subject and the subject and the vertical distance between the subject and the subject.

상기 카메라 모듈은, 레이저를 이용한 심도 센서를 포함하고, 상기 프로세서는, 카메라의 제2주점과 촬상면의 상기 피사체를 잇는 선분이, 카메라의 중심축과 이루는 각도를 산출하고, 상기 심도 센서를 상기 제2주점의 위치로 이동시킨 후 상기 각도에 기초하여 상기 심도 센서의 레이저를 상기 피사체로 향하게 하여 심도 값을 산출하며, 산출된 상기 심도 값과, 상기 각도와, 상기 촬상면의 중심으로부터 상기 제2주점까지의 거리와, 촬상면 내에서 피사체의 x축 방향의 거리 값과, 촬상면 내에서 피사체의 y축 방향의 거리 값을 이용하여 상기 피사체의 (X, Y, Z) 값을 산출할 수 있다.Wherein the camera module includes a depth sensor using a laser and the processor calculates an angle formed by a line segment connecting the second principal point of the camera and the subject on the imaging surface to the center axis of the camera, After moving to the position of the two taverns Calculating a depth value by causing the laser of the depth sensor to be directed to the subject based on the angle and calculating a depth value based on the calculated depth value, the angle, the distance from the center of the sensing surface to the second trough, (X, Y, Z) values of the subject can be calculated using the distance value of the subject in the x-axis direction and the distance value in the y-axis direction of the subject in the image sensing plane.

상기 프로세서는, 촬영 이미지와 피사체면 각각을 서로 대응하게 복수 개의 격자로 분할한 후 상기 촬영 이미지의 각 격자의 중심에 대응하는 피사체면의 각 격자의 중심의 (X, Y, Z) 값을 산출하여 상기 메모리에 미리 저장하고, 상기 특정 객체가 위치하는 격자의 (X, Y, Z) 값을 상기 메모리에 읽어 이용할 수 있다.The processor divides the photographed image and the subject surface into a plurality of gratings corresponding to each other, and then calculates (X, Y, Z) values of the centers of the gratings of the subject surfaces corresponding to the centers of the gratings of the photographed images (X, Y, Z) values of the grid in which the specific object is located can be read and used in the memory.

상기 프로세서는, 최단 촬영거리에 초점이 맞도록 상기 카메라 모듈을 맞춘 후에 상기 카메라 모듈을 상기 피사체에 접근시켜 멈춘 후, 초점을 그대로 둔 상태에서 상기 카메라 모듈을 후퇴시키면서 다른 피사체들에 초점이 맞을 때 각각 이미지를 촬영하며, 각 이미지를 촬영했을 때의 상기 카메라 모듈의 위치를 각 다른 피사체마다의 Z 값으로 기록하고, 상기 다른 피사체들과 상기 카메라 모듈 간의 거리가 최단 촬영거리가 되도록 상기 카메라 모듈을 이동시킨 후, 피사체면 내에서 중심으로부터 상기 다른 피사체들까지의 가로 및 세로의 거리인 (X, Y) 값을 각 다른 피사체마다 산출할 수 있다.The processor may cause the camera module to approach the subject after stopping the camera module so as to focus on the shortest shooting distance, and then, when the camera module is retracted while the focus remains unchanged, And the camera module is recorded with the Z value for each of the different subjects when the respective images are captured and the camera module is moved such that the distance between the other objects and the camera module is the shortest shooting distance, (X, Y), which is the distance between the center of the object plane and the other objects in the object plane, can be calculated for each different object.

상기 프로세서는, 관리자의 객체 선택에 대한 과정을 상기 메모리에 기록하고, 기록된 객체 선택 과정에 기초하여 관리자가 특정 객체의 선택시 이후의 객체 선택 과정을 자동으로 처리할 수 있다.The processor may record the process of object selection by an administrator in the memory, and may automatically process an object selection process subsequent to selection of a specific object based on the recorded object selection process.

상기 대상물은 농작물이고, 상기 프로세서는, 관리자가 수확 대상으로 선택한 객체인 열매 부분을 기준으로 상기 관리자가 잘려지는 부분으로 선택한 객체인 꼭지 부분의 위치 값을 평균화하여 상기 메모리에 기록하고, 상기 메모리에 기록된 위치 값을 기초로 상기 촬영 이미지에 열매와 꼭지 부분을 구분하여 표시할 수 있다.Wherein the object is a crop, and the processor averages position values of a vertex, which is an object selected by the administrator as a cropping portion, based on a fruit portion, which is an object selected by the administrator as an object to be harvested, The fruit and the nipple can be separately displayed on the photographed image based on the recorded position value.

다른 측면에 따른 관리자 단말의 원격 제어에 의해 동작하는 로봇의 동작 방법은, 카메라로 촬영한 상기 촬영 이미지를 메모리에 로드하고 관리자 단말로 전송하는 단계; 상기 메모리에 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체와 상기 관리자 단말에서 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체를 동기화하는 단계; 상기 관리자 단말로부터 관리자에 의해 선택된 특정 객체의 정보를 수신하고, 상기 특정 객체에 대응하는 상기 대상물의 부분인 피사체의 3차원 위치인 (X, Y, Z) 값을 산출하는 단계; 및 상기 (X, Y, Z) 값에 기초하여 조작 장치를 이동하여 상기 특정 객체에 대응하는 상기 피사체를 상기 조작 장치로 조작하는 단계를 포함한다.A method of operating a robot operated by remote control of an administrator terminal according to another aspect includes the steps of loading the captured image captured by a camera into a memory and transmitting the loaded image to an administrator terminal; Synchronizing at least one object created in the shot image loaded in the memory and at least one object generated in the shot image loaded in the manager terminal; Receiving information of a specific object selected by an administrator from the administrator terminal, and calculating (X, Y, Z) a three-dimensional position of a subject, which is a part of the object corresponding to the specific object; And moving the operation device based on the (X, Y, Z) value to operate the subject corresponding to the specific object with the operation device.

본 발명의 일 실시예에 따르면, 관리자는 원격지에서 로봇이 보내온 촬영 이미지를 보고 촬영 이미지에서 조작하고자 하는 객체를 선택하기만 하면 된다. 로봇은 관리자가 선택한 객체에 대응하는 대상물의 부분의 물리적인 3차원 위치를 분석하여 조작 장치를 이동시켜 실제 대상물의 부분을 조작하게 되어 관리자의 실수를 줄일 수 있다.According to an embodiment of the present invention, the administrator merely needs to view a shot image sent from a robot at a remote place and select an object to be operated on the shot image. The robot analyzes the physical three-dimensional position of the object part corresponding to the object selected by the manager and moves the operation device to manipulate the part of the actual object, thereby reducing the mistake of the manager.

본 발명의 일 실시예에 따르면, 로봇은 카메라를 이용하여 소프트웨어적으로 실제 대상물의 부분들의 3차원 위치를 분석함으로써, 정밀 제어를 위한 로봇 제조 비용을 줄이고 연산 속도를 높일 수 있다.According to an embodiment of the present invention, the robot analyzes the three-dimensional position of portions of an actual object by software using a camera, thereby reducing the manufacturing cost of the robot for precision control and increasing the operation speed.

본 발명의 일 실시예에 따르면, 관리자의 객체 선택에 대한 과정을 로봇이 학습하여 인공지능적으로 로봇이 스스로 대상물을 조작할 수 있도록 하여 작업 자동화를 이룰 수 있다. According to an embodiment of the present invention, a robot can learn a process of object selection by an administrator, and the robot can artificially manipulate the object by itself, thereby achieving the task automation.

도 1은 본 발명의 일 실시예에 따른 로봇 원격 제어 시스템을 나타낸 도면이다.
도 2는 도 1의 로봇의 구성을 나타낸 도면이다.
도 3은 도 1의 제어 장치의 구성을 나타낸 도면이다.
도 4는 도 1의 시스템에서 원격에서 로봇을 제어하여 공작 기계의 버튼을 누르는 방법을 설명하는 일 실시예의 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 촬상면과 피사체면과의 관계를 나타낸 도면이다.
도 6은 도 5에서 X 축만을 추출하여 표시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 피사체 및 카메라의 위치 관계를 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 두 개의 카메라의 X 축을 나타낸 도면이다.
도 9는 본 발명의 일 실시예에 따른 n×n개의 격자로 분할된 촬상면을 나타낸 도면이다.
1 is a block diagram of a robot remote control system according to an embodiment of the present invention.
Fig. 2 is a view showing a configuration of the robot shown in Fig. 1. Fig.
Fig. 3 is a diagram showing a configuration of the control apparatus of Fig. 1. Fig.
4 is a flow diagram of one embodiment for explaining how to remotely control a robot in a system of FIG. 1 to depress a button of a machine tool.
5 is a diagram showing a relationship between an imaging surface and a subject surface according to an embodiment of the present invention.
FIG. 6 is a diagram showing only the X-axis extracted in FIG.
7 is a view showing a positional relationship between a subject and a camera according to an embodiment of the present invention.
8 is a diagram illustrating the X-axis of two cameras according to an exemplary embodiment of the present invention.
9 is a view showing an image sensing plane divided into n × n lattices according to an embodiment of the present invention.

상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.The foregoing and other objects, features and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings, in which: There will be. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. Hereinafter, a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 로봇 원격 제어 시스템을 나타낸 도면이고, 도 2는 도 1의 로봇(130)의 구성을 나타낸 도면이며, 도 3은 도 1의 제어 장치(140)의 구성을 나타낸 도면이다. 도 1을 참조한 로봇 원격 제어 시스템은, 여러 대의 공작 기계(예, CNC(Computer Numerical Control))(110)가 일정한 간격으로 횡으로 배치되고, 이와 평행하게 리니어 레일(120)이 설치되며, 그 레일(120) 위에 상기 공작 기계(110)들을 제어할 수 있는 로봇(130)이 설치된다. 로봇(130)은 레일(120)을 따라 이동하면서 각각의 공작 기계(110)를 제어할 수 있다. 상기 레일(120)은 본 발명을 쉽게 설명하기 위한 예이며, 로봇(121)이 바퀴 등의 별도의 이동 기능을 가지고 있다면 별도로 설치할 필요는 없다. 상기 공작 기계(110)는 전면에 공작 기계(110)의 구동을 위한 버튼 등이 표시되는 터치 디스플레이나 물리적인 버튼 등이 구비될 수 있다. FIG. 1 is a view showing a robot remote control system according to an embodiment of the present invention. FIG. 2 is a diagram showing the configuration of the robot 130 of FIG. 1, Fig. 1, a plurality of machine tools (for example, a CNC (Computer Numerical Control) 110) are arranged laterally at regular intervals, a linear rail 120 is installed in parallel with the machine tool, A robot 130 capable of controlling the machine tools 110 is installed on the robot 120. The robot 130 can control each machine tool 110 while moving along the rail 120. The rail 120 is an example for easily explaining the present invention. If the robot 121 has a separate moving function such as a wheel, it is not necessary to install it separately. The machine tool 110 may include a touch display or a physical button on a front surface thereof for displaying a button for driving the machine tool 110 or the like.

상기 로봇(130)은 원격지의 제어 장치(140)와 통신한다. 로봇(130)은 대상물인 공작 기계(110)의 조작반을 촬영한 촬영 이미지를 내부 응용 프로그램상에 로드하고 제어 장치(140)로 전송한다. 로봇(130)은 제어 장치(140)로부터 상기 촬영 이미지에 기초하여 수신되는 객체 정보에 따라 상기 내부 응용 프로그램상에 로드된 촬영 이미지에 동기화된 객체를 생성한다. 또는 로봇(130)은 응용 프로그램상에 로드된 촬영 이미지에서 특정 부분을 객체로 설정한 후 촬영 이미지와 객체 정보를 제어 장치(140)로 전송한 후, 제어 장치(140)로부터 그 객체의 수정, 추가 등에 관한 객체 정보를 수신하고, 수신된 객체 정보에 따라 상기 내부 응용 프로그램상에 로드된 촬영 이미지에 객체를 생성한다. 즉, 로봇(130)의 내부 응용 프로그램상에 로드되는 촬영 이미지의 객체들과 제어 장치(140)에 표시되는 촬영 이미지의 객체들이 상호 연동되도록 동기화된다. 로봇(130)은 제어 장치(140)에서 특정 객체에 대한 명령이 관리자에 의해 입력되면 그 명령에 따라 공작 기계(110)의 조작반을 물리적으로 제어한다. 여기서 객체 정보는, 예를 들어, 객체의 종류(예, 버튼, 스위치), 행위 정보(예, 누름, 회전 등), 위치 좌표 등을 포함할 수 있다. The robot 130 communicates with the remote control device 140. The robot 130 loads a photographed image of an operation panel of the machine tool 110 as an object on an internal application program and transmits the loaded image to the control device 140. The robot 130 generates an object synchronized with the shot image loaded on the internal application program according to the object information received based on the shot image from the control device 140. [ Or the robot 130 sets a specific part of the shot image loaded on the application program as an object and transmits the shot image and object information to the control device 140 and then transmits the modified image and the object information from the control device 140 to the controller 140, And the like, and creates an object in the captured image loaded on the internal application program according to the received object information. That is, the objects of the shot image loaded on the internal application program of the robot 130 and the objects of the shot image displayed on the control device 140 are synchronized with each other. The robot 130 physically controls the operation panel of the machine tool 110 according to the command when a command for a specific object is input by the controller in the controller 140. [ Here, the object information may include, for example, an object type (e.g., button, switch), action information (e.g., push, rotation, etc.), position coordinates, and the like.

도 2에 도시된 바와 같이, 로봇(130)은 카메라 모듈(210), 통신 모듈(220), 프로세서(230), 메모리(240), 이동 모듈(250) 및 조작 장치(260)를 포함한다. 2, the robot 130 includes a camera module 210, a communication module 220, a processor 230, a memory 240, a movement module 250, and a manipulation device 260. As shown in FIG.

카메라 모듈(210)은, 카메라 렌즈와 이미지 센서를 포함하고, 프로세서(230)의 제어에 따라 공작 기계(110), 보다 구체적으로 공작 기계(110)의 조작반을 촬영한다. 통신 모듈(220)은 무선 또는 유선 통신을 수행할 수 있다. 통신 모듈(220)은 전기 신호를 전자파로 또는 그 반대로 변환하며 이 전자파를 통하여 통신 네트워크, 다른 이동형 게이트웨이 및 통신 장치와 통신할 수 있다. 통신 모듈(220)은 예를 들어 안테나 시스템, RF 트랜시버, 하나 이상의 증폭기, 튜너, 하나 이상의 오실레이터, 디지털 신호 처리기, CODEC 칩셋, 가입자 식별 모듈(subscriber identity module, SIM) 카드, 메모리 등을 포함하지만 이에 한정되지 않는 이러한 기능을 수행하기 위한 주지의 회로를 포함할 수 있다. 통신 모듈(220)은 월드 와이드 웹(World Wide Web, WWW)으로 불리는 인터넷, 인트라넷과 네트워크 및/또는, 셀룰러 전화 네트워크, 무선 LAN 및/또는 MAN(metropolitan area network)와 같은 무선 네트워크, 그리고 근거리 무선 통신에 의하여 다른 장치와 통신할 수 있다.The camera module 210 includes a camera lens and an image sensor and photographs the machine tool 110, more specifically, the operation panel of the machine tool 110 under the control of the processor 230. The communication module 220 may perform wireless or wired communication. The communication module 220 converts electrical signals to electromagnetic waves and vice versa and is capable of communicating with the communication network, other mobile gateways, and communication devices through the electromagnetic waves. The communication module 220 includes, for example, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module And may include well-known circuits for performing such functions without limitation. The communication module 220 may be any type of communication module such as the Internet, called the World Wide Web (WWW), a network such as an intranet and / or a cellular telephone network, a wireless LAN and / or a metropolitan area network (MAN) It can communicate with other devices by communication.

메모리(240)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치와 같은 불휘발성 메모리, 또는 다른 불휘발성 반도체 메모리 장치를 포함할 수 있다. 일부 실시예에서, 메모리는 하나 이상의 프로세서로부터 멀리 떨어져 위치하는 저장 장치, 예를 들어 통신 회로와, 인터넷, 인트라넷, LAN(Local Area Network), WLAN(Wide LAN), SAN(Storage Area Network) 등, 또는 이들의 적절한 조합과 같은 통신 네트워크(도시하지 않음)를 통하여 액세스되는 네트워크 부착형(attached) 저장 장치를 더 포함할 수 있다. 소프트웨어 구성요소로서 운영 체제 및 응용 프로그램(명령어 세트)이 메모리에 탑재(설치)될 수 있다. 운영 체제는, 예를 들어, 다윈(Darwin), RTXC, LINUX, UNIX, OS X, WINDOWS 또는 VxWorks, 안드로이드 등과 같은 내장 운영체제일 수 있고, 일반적인 시스템 태스크(task)(예를 들어, 메모리 관리, 저장 장치 제어, 전력 관리 등)를 제어 및 관리하는 다양한 소프트웨어 구성요소를 포함하고, 다양한 하드웨어와 소프트웨어 구성요소 사이의 통신을 촉진시킨다. Memory 240 may include high speed random access memory and may also include one or more magnetic disk storage devices, non-volatile memory such as flash memory devices, or other non-volatile semiconductor memory devices. In some embodiments, the memory may be a storage device, e.g., a communication circuit, located remotely from one or more processors, and may be connected to the Internet, an intranet, a local area network (LAN), a wide area network (WLAN) (Not shown), such as a computer readable storage medium, or any suitable combination thereof. As a software component, an operating system and an application program (instruction set) can be mounted (installed) in the memory. The operating system may be an embedded operating system such as, for example, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS or VxWorks, Android, etc. and may include general system tasks Device control, power management, etc.), and facilitates communication between various hardware and software components.

프로세서(230)는 로봇(130)에 연관된 동작을 수행하고 명령어들을 수행하도록 구성된 프로세서로서, 예를 들어, 메모리(240)로부터 검색된 명령어들을 이용하여, 로봇(130)의 컴포넌트 간의 입력 및 출력 데이터의 수신과 조작을 제어할 수 있다. 프로세서(230)는 카메라 모듈(210)에 의해 촬영된 촬영 이미지를 응용 프로그램에 로드하고 동시에 통신 모듈(220)을 통해 관리자의 제어 장치(140)로 전송할 수 있다. 프로세서(230)는 제어 장치(140)로부터 상기 촬영 이미지에 기초하여 수신되는 객체 정보에 따라 상기 내부 응용 프로그램상에 로드된 촬영 이미지에 객체를 생성할 수 있다. 또는 프로세서(230)는 응용 프로그램상에 로드된 촬영 이미지에서 특정 부분을 객체로 설정한 후 촬영 이미지와 객체 정보를 제어 장치(140)로 전송한 후, 제어 장치(140)로부터 그 객체의 수정, 추가 등에 관한 객체 정보를 수신하고, 수신된 객체 정보에 따라 상기 내부 응용 프로그램상에 로드된 촬영 이미지에 객체를 생성할 수 있다. 프로세서(230)는 제어 장치(140)에서 특정 객체에 대한 명령이 관리자에 의해 입력되면 그 명령에 따라 공작 기계(110)의 조작반을 물리적으로 제어한다. Processor 230 is a processor configured to perform an operation associated with robot 130 and to perform instructions and instructions to retrieve input and output data between components of robot 130 using, for example, Reception and operation can be controlled. The processor 230 may load the captured image photographed by the camera module 210 into an application program and simultaneously transmit the captured image to the controller 140 of the administrator through the communication module 220. [ The processor 230 may generate an object in the shot image loaded on the internal application program according to the object information received based on the shot image from the control device 140. [ Alternatively, the processor 230 may set a specific part of the shot image loaded on the application program as an object, transmit the shot image and object information to the control device 140, and then modify the object from the control device 140, Addition, and the like, and generate an object in the captured image loaded on the internal application program according to the received object information. The processor 230 physically controls the operation panel of the machine tool 110 according to the instruction when a command for a specific object is input by the controller in the controller 140. [

이동 모듈(250)은, 공작 기계(110)를 조작하는데 적합한 여러 가지 조작 수단들, 예를 들어 공작 기계(110)의 버튼을 누르거나 공작 기계(110)의 스위치를 회전시킬 수 있는 손가락 모양의 조작 수단이나, 과일이나 채소를 수확하기에 적합한 가위 기능이 있는 조작 수단을 X, Y, Z 각 축으로 이동시키는 수단을 포함한다. 또한, 이동 모듈(250)은 로봇(130)을 이동시키는 모터와 바퀴를 포함할 수 있다. 또한 이동 모듈(250)은 카메라 모듈(210)을 전후로 이동시킬 수 있는 모터, 체인 등을 포함할 수 있다. 이하에서 카메라 모듈(210)의 전후 이동은 로봇(130)을 이동시키거나 또는 카메라 모듈(210)만을 이동시키는 것 중 어느 하나일 수 있다.The movement module 250 may include various manipulation means suitable for manipulating the machine tool 110 such as a finger-like manipulator capable of pressing the button of the machine tool 110 or rotating the switch of the machine tool 110 And means for moving the operation means, or the operation means having a scissor function suitable for harvesting fruits or vegetables, along the X, Y, and Z axes. In addition, the movement module 250 may include a motor and wheels for moving the robot 130. In addition, the movement module 250 may include a motor, a chain, and the like that can move the camera module 210 back and forth. Hereinafter, the backward and forward movement of the camera module 210 may be any one of moving the robot 130 or moving the camera module 210 only.

조작 장치(260)는 앞서 설명한 손가락 모양의 조작 수단이나, 가위 기능이 있는 조작 수단 등을 포함하고, 이동 모듈(250)과 결합되어 X, Y, Z 각 축으로 이동한다. 바람직하게, 이동 모듈(250)은 카메라 모듈(210)의 촬상면의 X 축과 Y 축 그리고 심도를 나타내는 Z 축에 각각 평행하게 이동하되 조작 수단이 공작 기계(110) 등의 대상물을 조작하는데 적합한 위치로 이동한다. The operation device 260 includes the aforementioned finger-shaped operation means, operation means having a scissors function, and the like, and is coupled with the movement module 250 to move on the X, Y, and Z axes. Preferably, the movement module 250 is moved in parallel to the X and Y axes and the Z axis of the imaging plane of the camera module 210, respectively, .

다시 도 1을 참조하면, 제어 장치(140)는, 로봇(130)으로부터 수신되는 촬영 이미지를 화면에 표시하고, 촬영 이미지를 기초로 관리자가 생성한 객체 정보를 로봇(130)으로 전송한다. 여기서 객체 정보는, 상기 촬영 이미지에서 관리자가 선택한 특정 부분(예, 버튼)의 정보로서, 예를 들어, 객체의 종류(예, 버튼, 스위치), 행위 정보(예, 누름, 회전 등), 위치 좌표 등을 포함할 수 있다. 제어 장치(140)는, 촬영 이미지에서 특정 부분이 이미 로봇(130)에서 객체로 설정되어 수신된 경우, 관리자로부터 객체의 수정이나 추가에 관한 객체 정보를 입력받아 로봇(130)으로 전송할 수 있다. 또한, 제어 장치(140)는 상기 촬영 이미지의 특정 객체에 대한 관리자의 명령(예, 누름, 스위치 ON 등)을 입력받아 로봇(130)으로 전송할 수 있다. 1, the controller 140 displays a shot image received from the robot 130 on the screen, and transmits the object information generated by the manager to the robot 130 based on the shot image. Here, the object information is information of a specific part (e.g., a button) selected by the administrator in the captured image, for example, information such as the type of object (e.g., button, switch), action information Coordinates, and the like. When a specific part of the photographed image is already set and received as an object in the robot 130, the control device 140 may receive object information related to modification or addition of the object from the manager and transmit the object information to the robot 130. In addition, the control device 140 may receive an administrator's command (e.g., push, switch ON, etc.) for a specific object of the shot image and transmit the command to the robot 130.

도 3에 도시된 바와 같이, 제어 장치(140)는, 메모리(310), 메모리 제어기(321), 하나 이상의 프로세서(CPU)(322), 주변 인터페이스(323), 입출력(I/O) 서브시스템(330), 디스플레이 장치(341), 입력 장치(342) 및 통신 모듈(352)을 포함한다. 이러한 구성요소는 하나 이상의 통신 버스 또는 신호선을 통하여 통신한다. 도 3에 도시한 여러 구성요소는 하나 이상의 신호 처리 및/또는 애플리케이션 전용 집적 회로(application specific integrated circuit)를 포함하여, 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어 둘의 조합으로 구현될 수 있다. 제어 장치(140)는, 예를 들어, 스마트폰, 태블릿 PC, 또는 노트북이나 퍼스널 컴퓨터 등일 수 있으나 여기에 제한되지는 않는다.3, the control device 140 includes a memory 310, a memory controller 321, one or more processors (CPU) 322, a peripheral interface 323, an input / output (I / O) An input device 330, a display device 341, an input device 342, and a communication module 352. These components communicate through one or more communication buses or signal lines. The various components shown in FIG. 3 may be implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing and / or application specific integrated circuits. The control device 140 may be, for example, a smart phone, a tablet PC, or a notebook computer or a personal computer, but is not limited thereto.

메모리(310)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치와 같은 불휘발성 메모리, 또는 다른 불휘발성 반도체 메모리 장치를 포함할 수 있다. 일부 실시예에서, 메모리(210)는 하나 이상의 프로세서(222)로부터 멀리 떨어져 위치하는 저장 장치, 예를 들어 통신 모듈(352)과, 인터넷, 인트라넷, LAN(Local Area Network), WLAN(Wide LAN), SAN(Storage Area Network) 등, 또는 이들의 적절한 조합과 같은 통신 네트워크(도시하지 않음)를 통하여 액세스되는 네트워크 부착형(attached) 저장 장치를 더 포함할 수 있다. 프로세서(322) 및 주변 인터페이스(323)와 같은 제어 장치(140)의 다른 구성요소에 의한 메모리(310)로의 액세스는 메모리 제어기(321)에 의하여 제어될 수 있다. 메모리(310)는 제어 장치(140)의 각종 정보와 프로그램을 저장할 수 있다. Memory 310 may include high speed random access memory and may also include one or more magnetic disk storage devices, non-volatile memory such as flash memory devices, or other non-volatile semiconductor memory devices. In some embodiments, the memory 210 may include a storage device, e.g., a communication module 352, located remotely from the one or more processors 222, an Internet, an intranet, a Local Area Network (WLAN) , A Storage Area Network (SAN), or the like, or any suitable combination thereof, via a network (not shown). Access to the memory 310 by other components of the control device 140 such as the processor 322 and the peripheral interface 323 may be controlled by the memory controller 321. [ The memory 310 may store various types of information and programs of the control device 140.

주변 인터페이스(323)는 제어 장치(140)의 입출력 주변 장치를 프로세서(322) 및 메모리(310)와 연결한다. 하나 이상의 프로세서(322)는 다양한 소프트웨어 프로그램 및/또는 메모리(310)에 저장되어 있는 명령어 세트를 실행하여 제어 장치(140)를 위한 여러 기능을 수행하고 데이터를 처리한다. 일부 실시예에서, 주변 인터페이스(323), 프로세서(322) 및 메모리 제어기(321)는 칩(320)과 같은 단일 칩 상에서 구현될 수 있다. 일부 다른 실시예에서, 이들은 별개의 칩(320)으로 구현될 수 있다.The peripheral interface 323 connects the input / output peripheral device of the control device 140 to the processor 322 and the memory 310. The one or more processors 322 perform various functions for the control device 140 and process data by executing various software programs and / or a set of instructions stored in the memory 310. [ In some embodiments, peripheral interface 323, processor 322 and memory controller 321 may be implemented on a single chip, such as chip 320. In some other embodiments, these may be implemented as separate chips 320. [

I/O 서브시스템(330)은 디스플레이 장치(341), 입력 장치(342)와 같은 제어 장치(140)의 입출력 주변장치와 주변 인터페이스(323) 사이에 인터페이스를 제공한다. 디스플레이 장치(341)는 LCD(liquid crystal display) 기술 또는 LPD(light emitting polymer display) 기술 등을 사용할 수 있고, 이러한 디스플레이 장치(341)는 용량형, 저항형, 적외선형 등의 터치 디스플레이일 수 있다. 터치 디스플레이는 제어 장치(140)와 사용자 사이에 출력 인터페이스 및 입력 인터페이스를 제공한다. 터치 디스플레이는 사용자에게 시각적인 출력을 표시한다. 시각적 출력은 텍스트, 그래픽, 비디오와 이들의 조합을 포함할 수 있다. 시각적 출력의 일부 또는 전부는 사용자 인터페이스 대상에 대응할 수 있다. 터치 디스플레이는 사용자 입력을 수용하는 터치 감지면을 형성한다.The I / O subsystem 330 provides an interface between the input / output peripheral of the control device 140, such as the display device 341, the input device 342, and the peripheral interface 323. The display device 341 may be a liquid crystal display (LCD) technology or a light emitting polymer display (LPD) technology. The display device 341 may be a capacitive type, a resistive type, . The touch display provides an output interface and an input interface between the control device 140 and the user. The touch display displays a visual output to the user. The visual output may include text, graphics, video, and combinations thereof. Some or all of the visual output may correspond to a user interface object. The touch display forms a touch sensitive surface that accommodates user input.

프로세서(322)는 제어 장치(140)에 연관된 동작을 수행하고 명령어들을 수행하도록 구성된 프로세서로서, 예를 들어, 메모리(310)로부터 검색된 명령어들을 이용하여, 제어 장치(140)의 컴포넌트 간의 입력 및 출력 데이터의 수신과 조작을 제어할 수 있다. 프로세서(322)는 메모리(310)에 저장된 응용 프로그램(313)에 따라 상술한 촬영 이미지의 수신, 촬영 이미지에서 객체의 설정, 객체 정보의 전송, 객체에 대한 명령의 전송을 수행할 수 있다. 소프트웨어 구성요소는 운영 체제(311), 그래픽 모듈(312) 및 응용 프로그램(313)이 메모리(310)에 설치된다. 운영 체제(311)는, 예를 들어, 다윈(Darwin), RTXC, LINUX, UNIX, OS X, WINDOWS 또는 VxWorks, 안드로이드 등과 같은 내장 운영체제일 수 있고, 일반적인 시스템 태스크(task)(예를 들어, 메모리 관리, 저장 장치 제어, 전력 관리 등)를 제어 및 관리하는 다양한 소프트웨어 구성요소 및/또는 장치를 포함하고, 다양한 하드웨어와 소프트웨어 구성요소 사이의 통신을 촉진시킨다. 그래픽 모듈(312)은 디스플레이 장치(341) 상에 그래픽을 제공하고 표시하기 위한 주지의 여러 소프트웨어 구성요소를 포함한다. "그래픽(graphics)"이란 용어는 텍스트, 웹 페이지, 아이콘(예컨대, 소프트 키를 포함하는 사용자 인터페이스 대상), 디지털 이미지, 비디오, 애니메이션 등을 제한 없이 포함하여, 사용자에게 표시될 수 있는 모든 대상을 포함한다. 응용 프로그램(313)은 로봇(130)의 제어를 위한 그래픽을 표시하고, 프로세서(322)의 제어에 따라 로봇(130)의 응용 프로그램과 통신 모듈(352)을 통해 통신한다. The processor 322 is a processor configured to perform the operations associated with the controller 140 and to perform the instructions and to control the operations of the controller 140 using, for example, the instructions retrieved from the memory 310, Reception and manipulation of data can be controlled. The processor 322 can perform the above-described reception of the shot image, setting of the object in the shot image, transmission of the object information, and transmission of the command to the object according to the application program 313 stored in the memory 310. [ The software components are installed in the memory 310 by an operating system 311, a graphics module 312 and an application program 313. The operating system 311 may be an embedded operating system such as, for example, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS or VxWorks, Android, Management, storage control, power management, etc.), and facilitates communication between the various hardware and software components. Graphics module 312 includes a number of well known software components for providing and displaying graphics on display device 341. The term "graphics" includes, without limitation, text, web pages, icons (e.g., user interface targets including soft keys), digital images, video, animations, . The application program 313 displays a graphic for controlling the robot 130 and communicates with the application program of the robot 130 through the communication module 352 under the control of the processor 322. [

통신 모듈(352)은 외부 포트를 통한 통신 또는 RF 신호에 의한 통신을 수행한다. 통신 모듈(352)은 전기 신호를 RF 신호로 또는 그 반대로 변환하며 이 RF 신호를 통하여 통신 네트워크, 다른 이동형 게이트웨이 장치 및 통신 장치와 통신할 수 있다. 통신 모듈(352)은 예를 들어 안테나 시스템, RF 트랜시버, 하나 이상의 증폭기, 튜너, 하나 이상의 오실레이터, 디지털 신호 처리기, CODEC 칩셋, 가입자 식별 모듈(subscriber identity module, SIM) 카드, 메모리 등을 포함할 수 있고, 이러한 기능을 수행하기 위한 주지의 회로를 포함할 수 있다. 통신 모듈(352)은 월드 와이드 웹(World Wide Web, WWW)으로 불리는 인터넷, 인트라넷과 네트워크 및/또는, 셀룰러 전화 네트워크, 무선 LAN 및/또는 MAN(metropolitan area network)와 같은 무선 네트워크, 그리고 근거리 무선 통신에 의하여 다른 장치와 통신할 수 있다. The communication module 352 performs communication via an external port or communication by an RF signal. The communication module 352 converts electrical signals to RF signals and vice versa and is capable of communicating with the communication network, other mobile gateway devices, and communication devices via the RF signals. The communication module 352 may include, for example, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module And may include well-known circuits for performing such functions. The communication module 352 may be any type of communication module such as the Internet, called the World Wide Web (WWW), a network such as an intranet and / or a cellular telephone network, a wireless LAN and / or a metropolitan area network (MAN) It can communicate with other devices by communication.

입력 장치(342)는 키보드 또는 터치 패드 또는 마우스, 터치펜 등의 물리적인 입력 인터페이스를 통해 사용자 입력을 수신할 수 있고, 또는 디스플레이 장치(341)의 터치 디스플레이와 연계하여 사용자 입력을 수신할 수 있다. The input device 342 may receive user input via a physical input interface, such as a keyboard or touchpad or a mouse, a touch pen, or may receive user input in conjunction with a touch display of the display device 341 .

이상의 도 1 내지 도 3을 참조하여 설명한 바와 같이, 로봇(130)은 공작 기계(110)의 조작반을 촬영한 촬영 이미지를 내부 응용 프로그램에 로드하고 동시에 관리자의 제어 장치(140)로 전송한다. 관리자는 제어 장치(140)에 표시되는 촬영된 이미지를 분석하여 적합한 부분(예를 들어, 촬영 이미지상의 버튼 등)들을 객체로 설정하고 속성을 추가하는 등의 작업을 수행하고 제어 장치(140)는 객체 정보를 로봇(130)으로 전송한다. 로봇(130)은 수신된 객체 정보를 기초로 제어 장치(140)에서 생성된 객체들과 동일한 속성을 가진 객체를 내부 응용 프로그램에 로드된 촬영 이미지 상에 생성한다. 또는, 로봇(130)은 내부 응용 프로그램에서 로드된 촬영 이미지를 분석하여 적합한 부분들을 객체로 설정한 후 촬영 이미지와 객체 정보를 통신 기능을 이용하여 관리자의 제어 장치(140)로 전송하고, 관리자에 의해 객체가 추가되거나 수정되면 이에 관한 객체 정보를 제어 장치(140)로부터 수신할 수도 있다. 이러한 일련의 과정을 통해 제어 장치(140)의 응용 프로그램 내의 촬영 이미지의 객체들과 로봇(130)의 응용 프로그램 내의 촬영 이미지의 객체들이 상호 연동한다. 즉 관리자가 제어 장치(140)에 표시되는 촬영 이미지의 A 버튼 객체를 터치하면 이와 연동되어 로봇(130)에서도 A 버튼 객체가 터치된 것으로 인식되어 로봇(130)은 이동 모듈(250)을 이동시켜 조작 장치(260)가 대상물, 즉 공작 기계(110)의 조작반에 실제 존재하는 A 버튼을 누르게 된다. As described above with reference to FIGS. 1 to 3, the robot 130 loads the captured image of the operation panel of the machine tool 110 into the internal application program and simultaneously transmits the captured image to the controller 140 of the manager. The manager analyzes the photographed image displayed on the control device 140 and performs operations such as setting an appropriate part (e.g., a button on the photographed image) as an object and adding an attribute, and the control device 140 And transmits the object information to the robot 130. The robot 130 creates an object having the same properties as the objects created in the controller 140 on the captured image loaded in the internal application program based on the received object information. Alternatively, the robot 130 analyzes the shot image loaded in the internal application program, sets suitable parts as objects, transmits the shot image and object information to the controller 140 of the manager using the communication function, The object information may be received from the control device 140 when the object is added or modified. Through this series of processes, the objects of the shot image in the application program of the control device 140 and the objects of the shot image in the application program of the robot 130 cooperate with each other. That is, when the manager touches the A button object of the shot image displayed on the control device 140, the robot 130 recognizes that the A button object is also touched by the robot 130, and the robot 130 moves the movement module 250 The operation device 260 presses the A button actually present on the object, that is, the operation panel of the machine tool 110. [

한편, 제어 장치(140)와 로봇(130)의 응용 프로그램에서 촬영 이미지는 투명 상태로 하위 레이어에 위치하고 촬영 이미지 상에 생성된 객체들은 상위 레이어에 반투명 상태로 위치하며 상기 하위 레이어에 위치하는 촬영 이미지는 로봇(130)에서 실시간으로 촬영되는 촬영 이미지가 실시간으로 표시된다. 예를 들어, 관리자가 제어 장치(140)에 표시되는 촬영 이미지에서 A 버튼 객체를 터치하면 로봇(130)의 조작 장치(260)가 공작 기계(110)의 조작반에 실제 존재하는 A 버튼을 누르는 실시간 장면 영상이 제어 장치(140)로 실시간 전송되어 제어 장치(140)의 응용 프로그램에서 하위 레이어에 실시간으로 표시된다. 따라서 관리자는 실제 A 버튼이 잘 눌러지는지를 확인할 수 있다. On the other hand, in the application program of the controller 140 and the robot 130, the photographed image is positioned in a lower layer in a transparent state, and the objects created on the photographed image are positioned in a semi-transparent state on the upper layer, The photographed image photographed in real time by the robot 130 is displayed in real time. For example, when the manager touches the A button object on the captured image displayed on the control device 140, the operating device 260 of the robot 130 displays the real time A button on the operation panel of the machine tool 110 The scene image is transmitted in real time to the control device 140 and displayed in real time on the lower layer in the application program of the control device 140. [ Therefore, the administrator can confirm that the actual A button is pressed well.

로봇(130)은 제어 장치(140)를 통한 관리자의 반복되는 조작을 학습하여 학습 결과를 메모리 등의 저장 장치에 저장하고 이 학습 결과를 이용하여 제어 장치(140)로 관리자의 미래에 할 조작을 알려줄 수 있다. 예를 들어, 과거에 관리자가 'A 버튼'을 누른 다음 'B 버튼'을 눌렀다면, 로봇(130)은 이 기록을 분석하여 관리자가 'A 버튼'을 누르면 제어 장치(140)의 'B 버튼' 객체에 일정한 표시, 예를 들어 색상을 달리하여 깜박임을 주는 등의 선행 표시를 할 수 있다. 로봇(130)은 누적되는 학습 결과를 토대로 관리자의 이후 작업이 확률적으로 명확하다고 판단되면 관리자의 조작과 무관하게 자율 조작을 할 수 있고 이 자율 조작에 관한 실시간 영상을 제어 장치(140)로 전송하여 관리자가 볼 수 있도록 한다. The robot 130 learns the repeated operation of the administrator through the control device 140, stores the learning result in a storage device such as a memory, and uses the learning result to perform operations to be performed in the future by the control device 140 You can tell. For example, if the administrator pressed the 'A button' and then the 'B button' in the past, the robot 130 analyzes the record and if the manager presses the 'A button', the 'B button 'It is possible to display a certain display on the object, for example, to give a flicker by changing the color. The robot 130 can perform an autonomous operation regardless of the operation of the manager if the subsequent operation of the administrator is determined to be stochastically clear based on the accumulated learning result, and transmits the real-time image related to the autonomous operation to the control device 140 So that the administrator can view it.

도 4는 도 1의 시스템에서 원격에서 로봇을 제어하여 공작 기계의 버튼을 누르는 방법을 설명하는 일 실시예의 흐름도이다. 4 is a flow diagram of one embodiment for explaining how to remotely control a robot in a system of FIG. 1 to depress a button of a machine tool.

도 4를 참조하면, 로봇(130)은 공작 기계(110)의 조작반을 카메라 모듈(210)을 이용하여 촬영한다(S401). 그리고 로봇(130)은 촬영 이미지를 내부 응용 프로그램에 로드하고 또한 촬영 이미지를 분석하여 촬영 이미지에 있는 각 버튼을 객체로 생성한다(S402). 예를 들어, 촬영 이미지를 투명 상태로 하여 하위 레이어에 표시하고 촬영 이미지에 포함된 버튼에 대한 객체가 상위 레이어에 반투명 상태로 표시된다. 즉 촬영 이미지의 위에 버튼 객체가 중첩되어 표시된다. Referring to FIG. 4, the robot 130 photographs the operation panel of the machine tool 110 using the camera module 210 (S401). Then, the robot 130 loads the captured image into the internal application program, analyzes the captured image, and generates each button in the captured image as an object (S402). For example, the photographed image is displayed in a transparent state and displayed on a lower layer, and an object for a button included in the photographed image is displayed in a translucent state on an upper layer. That is, a button object is superimposed on the captured image.

로봇(130)은 상기 단계 S402에서 생성된 버튼들의 객체 정보를 상기 촬영 이미지에 삽입한다(S402). 촬영 이미지에서 색에 영향이 없는 픽셀 값을 상기 객체 정보로 대체하는 방식으로 촬영 이미지에 객체 정보를 삽입할 수 있다. 객체 정보는 예를 들면 객체의 종류(버튼, 스위치 등), 촬영 이미지 내에서의 객체의 위치 좌표 등을 포함할 수 있다. 로봇(130)은 객체 정보가 포함된 촬영 이미지를 통신망을 통해 제어 장치(140)로 전송한다(S404). 본 실시예에서는 촬영 이미지에 객체 정보를 삽입하여 전송하는 것으로 설명하나 객체 정보와 촬영 이미지를 각각 별도로 전송할 수도 있다. The robot 130 inserts the object information of the buttons generated in step S402 into the shot image (S402). The object information can be inserted into the shot image by replacing the pixel value that is not affected by the color in the shot image with the object information. The object information may include, for example, the type of object (button, switch, etc.), position coordinates of the object in the shot image, and the like. The robot 130 transmits the captured image including the object information to the control device 140 through the communication network (S404). In the present embodiment, it is described that object information is inserted and transmitted in a captured image, but object information and a captured image may be separately transmitted.

객체 정보가 삽입된 촬영 이미지를 수신한 제어 장치(140)는 촬영 이미지를 분석하여 객체 정보를 추출하고 촬영 이미지는 투명 상태로 하여 하위 레이어에 표시하고 객체 정보에 따른 버튼 객체를 상위 레이어에 표시한다. 따라서 촬영 이미지의 지정된 위치에 버튼 객체가 중첩되어 표시된다(S405). 제어 장치(140)에 표시된 버튼 객체 중 위치가 잘못 배치된 버튼 객체의 위치를 변경하는 등의 수정 입력을 관리자로부터 수신할 수 있고, 또한 촬영 이미지에 버튼이 있으나 버튼 객체가 생성되지 않은 위치에 새로 버튼 객체를 생성하는 입력을 관리자로부터 수신하여, 수정 또는/및 추가된 객체 정보를 생성한다(S406). 제어 장치(140)는 상기 단계 S406에서 생성된 수정 또는/및 추가된 객체 정보를 통신망을 통해 로봇(130)으로 전송한다(S407). 로봇(130)은 수신된 수정 또는/및 추가된 객체 정보에 따라 내부 응용 프로그램에 로드한 촬영 이미지에 중첩되어 표시되고 있는 객체를 수정하거나 새로운 객체를 생성하여 상위 레이어에 표시한다. 이와 같은 과정을 통해 로봇(130)에서 로드된 촬영 이미지 상의 객체들과 제어 장치(140)에서 로드된 촬영 이미지 상의 객체들이 서로 상호 연동된다. The control device 140 receives the captured image in which the object information is inserted, extracts the object information by analyzing the captured image, displays the captured image in a transparent state, displays the captured image on the lower layer, and displays the button object according to the object information on the upper layer . Accordingly, the button object is displayed superimposed on the designated position of the shot image (S405). It is possible to receive a correction input, such as changing the position of the button object whose position is misplaced among the button objects displayed on the control device 140, from the manager, An input for generating the button object is received from the manager, and the modified / added object information is generated (S406). The control device 140 transmits the modified and / or added object information generated in step S406 to the robot 130 via the communication network in step S407. The robot 130 modifies an object displayed on the captured image loaded in the internal application program according to the received modified and / or added object information, or creates a new object and displays it on an upper layer. Through the above process, the objects on the shot image loaded on the robot 130 and the objects on the shot image loaded on the control device 140 are interlocked with each other.

제어 장치(140)는 표시된 촬영 이미지 상의 버튼 객체들 중에서 특정 버튼에 대한 관리자의 누름 입력을 수신한다(S408). 여기서 누름 입력은 터치 디스플레이를 통한 입력일 수도 있고, 또는 마우스 등을 통한 입력일 수도 있다. 제어 장치(140)는 상기 특정 버튼에 대한 누름 입력 명령을 통신망을 통해 로봇(130)으로 전송한다(S409). 상기 누름 입력 명령은 상기 특정 버튼의 객체 정보, 예를 들어 촬영 이미지에서의 위치 좌표, 객체의 종류 등을 포함할 수 있다. 따라서, 로봇(130)은 상기 누름 입력 명령에 따라 이동 모듈(250)을 구동하여 조작 장치(260)를 공작 기계(110)의 조작반에 실제 존재하는 버튼으로 이동시켜 해당 버튼을 누르는 행위를 완료한다(S410).The control device 140 receives the push input of the manager for the specific button among the button objects on the displayed photographed image (S408). Here, the push input may be input through the touch display, or may be input through a mouse or the like. The control device 140 transmits a push input command for the specific button to the robot 130 via the communication network (S409). The push input command may include object information of the specific button, for example, position coordinates in the shot image, kind of object, and the like. Accordingly, the robot 130 drives the movement module 250 in response to the push input command, moves the operation device 260 to the actual button on the operation panel of the machine tool 110, and completes the act of pressing the corresponding button (S410).

이하에서는 관리자가 제어 장치(140)의 촬영 이미지에서 특정 객체를 선택하였을 때, 로봇(130)이 공작 기계의 조작반에 있는 상기 특정 객체에 대응하는 실제 객체, 예를 들어 버튼을 누르기 위해, 해당 실제 객체의 실제 위치를 계산하는 방법을 설명한다. 여기서 실제 객체의 실제 위치는 (X, Y, Z) 값으로서, Z는 로봇(130)의 카메라 모듈(210)의 촬상면의 중심으로부터 촬상면에 평행한 피사체, 즉 실제 객체가 위치하는 피사체면의 중심까지의 거리이고, X, Y는 피사체면을 XY 평면으로 가정할 때 X, Y 좌표이다. 이하에서 (X, Y, Z) 값을 구하는 방법을 도면을 참조하여 구체적으로 설명한다. Hereinafter, when the manager selects a specific object from the captured image of the control device 140, the robot 130 selects the actual object corresponding to the specific object on the operation panel of the machine tool, for example, Describes how to calculate the actual position of an object. Here, the actual position of the actual object is the value of (X, Y, Z), Z is the distance from the center of the imaging surface of the camera module 210 of the robot 130 to the object parallel to the imaging surface, And X and Y are X and Y coordinates when the object plane is assumed to be the XY plane. Hereinafter, a method of obtaining (X, Y, Z) values will be described in detail with reference to the drawings.

1. (X, Y) 값을 구하는 방법1. How to find the (X, Y) value

도 5는 본 발명의 일 실시예에 따른 촬상면과 피사체면과의 관계를 나타낸 도면이고, 도 6은 도 5에서 X 축만을 추출하여 표시한 도면이다. FIG. 5 is a view showing a relationship between an imaging surface and a subject surface according to an embodiment of the present invention, and FIG. 6 is a view showing only the X-axis in FIG.

도 5에서 참조부호 S1이 피사체면이고 참조부호 S2가 촬상면이다. 촬상면(S2)(즉, 이미지 센서)의 축은 소문자 x, y, z로 표시되고, 피사체면(S1)의 축은 대문자 X, Y, Z로 표시되어 있다. 그리고 피사체면(S1)의 중심점은 P1으로 표기되고, 촬상면(S2)의 중심점은 P2로 표기되어 있다. 그리고 참조부호 Q2는 카메라 렌즈의 광학적 중심점으로서 제2주점이다. 피사체면(S1)의 중심점인 P1으로부터 Q2까지의 거리는 d0로 표기되고, 촬상면(S2)의 중심점인 P2로부터 Q2까지의 거리는 di로 표기된다. In Fig. 5, reference symbol S1 denotes the object surface, and reference symbol S2 denotes the imaging surface. The axis of the imaging surface S2 (i.e., the image sensor) is represented by lowercase letters x, y, and z, and the axis of the subject surface S1 is represented by uppercase letters X, Y, The center point of the subject surface S1 is denoted by P1, and the center point of the imaging surface S2 is denoted by P2. And reference numeral Q2 denotes a second principal point as an optical center point of the camera lens. And distance to the Q2 represented by d 0 from the center point P1 of the object surface (S1), from the distance to the center of the imaging surface (S2) P2 Q2 is denoted by d i.

도 6에서 참조부호 X1은 피사체의 실제 위치로서 피사체면(S1)에서의 피사체의 위치를 나타낸다. 그리고 참조부호 x1은 촬상면(S2)에 맺히는 피사체의 촬상면(S2)에서의 위치를 나타낸다. 도 6에서, 피사체면(S1)에서 중심 P1으로부터 피사체 X1까지의 거리는 A로 표기되고, 촬상면(S2)에서 중심 P2로부터 피사체 x1까지의 거리는 a로 표기된다. 그리고 피사체면(S1)으로부터 촬상면(S2)까지의 거리는 ds로 표기된다.6, reference numeral X1 denotes the position of the subject on the subject plane S1 as the actual position of the subject. And reference numeral x1 denotes a position of the object on the sensing surface S2 of the sensing surface S2. 6, the distance from the center P1 to the subject X1 on the object plane S1 is denoted by A, and the distance from the center P2 to the subject x1 on the image sensing plane S2 is denoted by a. And the distance to the imaging surface (S2) from the object surface (S1) is represented by d s.

도 5 및 도 6과 같이 표기할 때, 먼저 아래의 (수학식 1)의 관계가 성립한다.5 and 6, the following relationship (1) is established first.

(수학식 1) w/W = h/H = di/do= a/A(1) w / W = h / H = d i / d o = a / A

상기 (수학식 1)에서 A가 구하고자 하는 (X, Y)에서의 X 값이고, 상기 (수학식 1)에서 A를 정리하면 다음 (수학식 2)와 같다. 다음 (수학식 2)에 따르면, 촬상면(S2)에서 중심 P2로부터 관리자가 터치한 객체(x1)의 지점까지의 x 축의 거리인 a와, 카메라 렌즈의 광학적 중심점 Q2로부터 촬상면(S2)의 중심 P2까지의 거리인 di와, 카메라 렌즈의 광학적 중심점 Q2으로부터 피사체면(S1)의 중심 P1까지의 거리인 d0를 알면, A 값, 즉 피사체면(S1)에서의 피사체의 X 값을 알 수 있다. 따라서, a, d0, di 각각을 알아야 한다.In Equation (1), A is the X value at (X, Y) to be obtained, and A in (Equation 1) is expressed by Equation (2). The distance a from the center P2 to the point of the object x1 touched by the manager on the image sensing plane S2 and the center P2 of the image sensing plane S2 from the optical center point Q2 of the camera lens and a distance of d i to, knowing the distance of d 0 to the center P1 of the object surface (S1) from the optical center point Q2 of the camera lens, a value, that is, to know the X value of the subject in the object plane (S1) have. Therefore, we need to know each of a, d 0 , and d i .

(수학식 2) A = a×d0/di &Quot; (2) " A = a x d 0 / d i

a, d0, di 각각을 구하는 방법을 다음과 같다. a, d 0 , and d i are obtained as follows.

(1) a를 구하는 방법(1) How to obtain a

먼저, a는 촬상면(S2)에서 중심 P2로부터 관리자가 터치한 객체의 지점까지의 x 축의 거리로서, 촬상면(S2)의 가로 및 세로의 물리적 길이와, 촬영 이미지의 가로 및 세로의 픽셀 개수를 이용하여 구할 수 있다. 가령 초점거리 50mm인 단 렌즈의 풀 프레임의 경우, 촬상면(S2)의 가로 값과 세로 값은 각각 36mm와 24mm이다. 또한 출력되는 촬영 이미지의 가로 픽셀과 세로 픽셀의 개수는 각각 3,600 픽셀과 2,400 픽셀이다. 만약 관리자가 터치한 지점이 x 축으로 900 픽셀 지점이라면, 다음 (수학식 3)의 관계에 따라 a는 9mm로 계산된다.First, a is the distance of the x-axis from the center P2 to the point of the object touched by the manager on the sensing plane S2. The physical length of the sensing plane S2 and the number of pixels in the horizontal and vertical directions of the captured image are used . For example, in the case of a full frame of a single lens having a focal length of 50 mm, the horizontal and vertical values of the imaging surface S2 are 36 mm and 24 mm, respectively. The number of horizontal pixels and vertical pixels of the output image is 3,600 pixels and 2,400 pixels, respectively. If the point touched by the manager is 900 pixels on the x-axis, a is calculated to be 9 mm according to the following relation (Equation 3).

(수학식 3) 3,600 픽셀 : 900 픽셀 = 36mm : a(3) 3,600 pixels: 900 pixels = 36 mm: a

(2) d(2) d 00 , , dd ii To 구하는 방법 How to obtain

관리자가 촬영 이미지에서 특정 객체, 즉 피사체를 터치하면, 상술한 바와 같이 a를 구한 후, 로봇(130)은 d0, di를 구하기 위해 피사체(X1)에 카메라 센서가 초점을 맞출 수 있는 최소거리인 최단 촬영거리로 카메라 모듈(210)을 피사체(X1)에 접근시킨다. 최단 촬영거리는 카메라 렌즈의 제조사에 의해 제공되는 값이다. 앞서 설명한 바와 같이 피사체면(S1)으로부터 촬상면(S2)까지의 거리 ds는 아래 (수학식 4)와 같다. 카메라 모듈(210)을 피사체(X1)에 접근시켜 최단 촬영거리에 위치시키면 그 최단 촬영거리가 곧 피사체면(S1)으로부터 촬상면(S2)까지의 거리 ds가 된다. 카메라 렌즈의 초점거리(피사체가 무한대의 거리에 있을 때의 초점거리)를 f라고 할 때 다음의 (수학식 5)의 관계가 성립한다. 그리고 (수학식 5)에 (수학식 4)를 대입하면, 다음의 (수학식 6)의 이차 방정식이 생성된다. (수학식 6)에 카메라 렌즈의 초점거리 f와 최단 촬영거리인 ds를 입력하면, d0, di가 구해진다. At least an administrator to match the specific object, that is, if touch the subject, then obtaining a a, as described above, the robot 130 is a camera sensor on a subject (X1) to obtain the d 0, d i in the recorded image The camera module 210 approaches the subject X1 at the shortest photographing distance. The shortest photographing distance is a value provided by the manufacturer of the camera lens. The distance to the imaging surface (S2) from the object plane (S1) as described above, d s is as follows (Equation 4). Access the camera module 210 in the object (X1) by placing at the shortest photographing distance is the distance d s to the Minimum Distance soon imaging surface from the object side (S1) (S2). And the focal distance of the camera lens (the focal distance when the subject is at an infinite distance) is f, the following relation (5) is established. Substituting (Equation 4) into (Equation 5), a quadratic equation of (Equation 6) is generated. When the focal length f of the camera lens and the shortest photographing distance d s are input to (Equation 6), d 0 and d i are obtained.

(수학식 4) do + di = ds (4) d o + d i = d s

(수학식 5) 1/do + 1/di = 1/f(Equation 5) 1 / d o + 1 / d i = 1 / f

(수학식 6) di 2 - ds×di + f×ds = 0(6) d i 2 - d s x d i + f d s = 0

예를 들어, 초점거리(f)가 50mm인 단렌즈의 최단 촬영거리 ds가 0.45m인 경우, 이를 상기 (수학식 6)에 대입하면, di≒57.3mm가 구해지고, 이 값을 다시 상기 (수학식 4)에 대입하면, do≒392.7mm가 구해진다.For example, when the shortest imaging distance d s of a single lens having a focal length f of 50 mm is 0.45 m, substituting this into Equation (6) yields d i 57.3 mm. Substituting this into (Equation 4), d o ? 392.7 mm is obtained.

이상에서 구해진 a, d0 및 di를 상기 (수학식 2)에 대입하면, 최종적으로 피사체면(S1)에서의 X 값인 A가 구해진다. Substituting a, d 0 and d i obtained in the above into the above equation (2), A, which is an X value on the object plane S1, is finally obtained.

피사체면(S1)에서의 Y 값의 계산은 앞서 설명한 방법과 동일한 방법으로 구할 수 있다. 상기 (수학식 2)의 a 값으로서 촬상면(S2)의 중심 P2로부터 관리자가 터치한 지점까지의 y 축의 거리를 대입하면, 구해지는 A 값은 피사체면(S1)에서의 Y 값이 나온다. The calculation of the Y value on the object plane S1 can be obtained by the same method as described above. When the distance of the y-axis from the center P2 of the imaging surface S2 to the point touched by the manager is substituted as the a value of the expression (2), the obtained A value is the Y value on the object surface S1.

2-1. (Z) 값을 구하는 2-1. (Z) 제 11st 방법 Way

도 7은 본 발명의 일 실시예에 따른 피사체 및 카메라의 위치 관계를 나타낸 도면이다. 도 7에서 참조번호 710은 실제 피사체로서, 예를 들어 공작 기계(110)의 조작반이다. 로봇(130)은 현재 카메라 모듈(210)의 촬상면이 C의 위치에 있는 상태에서 최단 촬영거리에 초점이 맞도록 초점을 조절한다. 도 7에서 C로부터 C1까지의 거리가 최단 촬영거리로 조절된 초점거리이다. 이와 같이 최단 촬영거리에 초점이 맞도록 초점을 조절한 후에, 로봇(130)은 카메라 모듈(210)을 피사체(710)에 점층적으로 접근시켜 피사체(710)에 초점이 맞는 상태가 되도록 한다. 즉 도 7에서 카메라 모듈(210)의 촬상면은 D의 위치가 된다. 이와 같이 물리적으로 이동한 거리를 상기 최단 촬영거리에 더하면, C의 위치를 기준으로 한 피사체(710)의 Z 값이 도출된다. 7 is a view showing a positional relationship between a subject and a camera according to an embodiment of the present invention. 7, reference numeral 710 denotes an actual object, for example, an operation panel of the machine tool 110. [ The robot 130 adjusts the focus so as to focus on the shortest shooting distance in a state where the imaging plane of the camera module 210 is present at the position of C In Fig. 7, the distance from C to C1 is the focal length adjusted to the shortest shooting distance. After the focus is adjusted so as to focus on the shortest shooting distance, the robot 130 moves the camera module 210 to the subject 710 so as to focus on the subject 710. That is, the image sensing plane of the camera module 210 in FIG. When the distance physically moved in this manner is added to the shortest photographing distance, the Z value of the subject 710 based on the position of C is derived.

또는, 도 7의 D의 위치, 즉 카메라 모듈(210)이 최단 촬영거리에 초점이 맞도록 한 후 피사체(710)에 초점이 맞도록 카메라 모듈(210)을 위치시킨 후, 로봇(130)은 카메라 모듈(210)을 피사체(710)로부터 멀어지게 후퇴하여 임의의 위치, 즉 C의 위치로 이동시킨다. 이때 후퇴하며 이동한 거리(D->C)와 상기 최단 촬영거리를 더하면 이는 카메라 모듈(210)의 촬상면의 위치, 즉 C를 기준으로 한 피사체(710)의 Z 값이 도출된다. Alternatively, after positioning the camera module 210 such that the camera module 210 is focused on the subject 710 after the camera module 210 is focused on the shortest shooting distance, the robot 130 The camera module 210 is retracted away from the subject 710 and moved to an arbitrary position, that is, the position of C. At this time, when the distance D - > C moved backward is added to the shortest distance, the Z value of the object 710 based on the position of the image sensing plane of the camera module 210, that is, C is derived.

이상을 종합하면, 로봇(130)은, 촬영 이미지 내의 특정 객체가 관리자에 의해 선택되면, 그 특정 객체에 대응하는 피사체(710), 즉 공작 기계(110)의 조작반에 카메라 센서가 초점을 맞출 수 있는 최소 거리인 최단 촬영거리로 카메라 모듈(210)을 피사체(710)에 접근시킨 후, 피사체면의 중심을 기준으로 한 (X, Y) 값을 구하고, 또한 카메라 모듈(210)의 이동 거리에 최단 촬영거리를 더하여 (Z) 값을 구한다. 그리고 나서, 로봇(130)은 (X, Y, Z) 값에 기초하여 이동 모듈(250)을 제어하여 조작 장치(260)를 통해 물리적으로 피사체(710)를 조작한다.When the specific object in the shot image is selected by the administrator, the robot 130 can focus the object 710 corresponding to the specific object, that is, the camera sensor on the operation panel of the machine tool 110 (X, Y) values based on the center of the object plane are obtained after the camera module 210 is approached to the subject 710 at the shortest photographing distance that is the minimum distance between the camera module 210 and the camera module 210, (Z) is obtained by adding the shortest shooting distance. The robot 130 then controls the moving module 250 based on the (X, Y, Z) value to physically manipulate the subject 710 through the operating device 260. [

또는, 로봇(130)은, 피사체(710), 즉 공작 기계(110)의 조작반에 카메라 센서가 초점을 맞출 수 있는 최소 거리인 최단 촬영거리로 카메라 모듈(210)을 피사체(710)에 접근시킨 후, 촬영 이미지에 생성되어 있는 각 객체에 대응하는 실제 대상체들(예, 버튼) 각각의 피사체면의 중심을 기준으로 한 (X, Y) 값을 구하여 저장한다. 그리고 나서, 로봇(130)은 카메라 모듈(210)을 후퇴하여 피사체(710)로부터 멀어지게 임의의 위치로 이동시킨다. 그 이동 거리에 상기 최단 촬영거리를 더하면 촬상면의 중심으로부터 피사체면의 중심까지의 Z 값이 구해진다. 이와 같이 로봇(130)은 피사체(710)의 (X, Y, Z) 값을 알게 되므로, 관리자가 촬영 이미지에서 특정 객체를 터치시 이동 모듈(250)을 제어하여 조작 장치(260)가 물리적으로 피사체(710)를 조작하도록 할 수 있다. Alternatively, the robot 130 may move the camera module 210 to the subject 710 with the shortest photographing distance, which is the minimum distance that the camera sensor can focus on the subject 710, that is, the operation panel of the machine tool 110 (X, Y) values based on the center of the object plane of each of the actual objects (e.g., buttons) corresponding to each object generated in the captured image are obtained and stored. Then, the robot 130 retracts the camera module 210 and moves it to an arbitrary position away from the subject 710. When the shortest imaging distance is added to the moving distance, the Z value from the center of the imaging surface to the center of the object surface is obtained. Since the robot 130 recognizes the values (X, Y, Z) of the subject 710, when the manager touches the specific object in the captured image, the controller 130 controls the movement module 250 so that the operation device 260 physically The subject 710 can be operated.

2-2. (Z) 값을 구하는 2-2. (Z) 제 2Second 방법 Way

피사체의 심도에 따라 카메라 렌즈의 초점거리가 달라진다. 즉 초점거리가 50mm인 단렌즈의 경우 피사체가 무한대의 거리에 있을 때 초점거리가 50mm이고, 피사체가 최단 촬영거리인 0.45m 거리에 위치할 때 초점거리는 약 57.3mm이다. 렌즈의 초점 링을 조정하여 0.45m의 거리에서부터 순차적으로 무한대에 위치한 피사체에 이르기까지 초점을 맞추면 초점거리 또한 57.3mm에서 50mm로 순차적으로 감소하게 된다. 따라서 로봇(130)은 최단 촬영거리에 초점이 맞았을 때를 기준으로 초점거리가 0.1mm 단위로 감소할 때의 피사체까지의 거리인 Z 값을 미리 메모리에 저장한 후, 피사체에 초점을 동적으로 맞추며 초점이 맞았을 때 해당 초점거리에 대응하는 Z 값을 메모리에서 확인할 수 있다. 심도가 다른 복수 개의 피사체가 있을 때 각 피사체에 초점이 맞춰질 때마다 (X, Y, Z) 값이 자동으로 산출되어 메모리에 기록될 수 있다. 이 기록 값은 관리자가 촬영 이미지의 특정 부분을 터치하거나 또는 로봇(130)이 자율 조작을 할 때 참조될 수 있다. The focal length of the camera lens changes depending on the depth of the subject. That is, in the case of a single lens having a focal length of 50 mm, the focal distance is 50 mm when the subject is at an infinite distance, and the focal distance is about 57.3 mm when the subject is located at the shortest shooting distance of 0.45 m. By adjusting the focus ring of the lens, focusing from a distance of 0.45m to an infinitely-positioned subject, the focal length also decreases sequentially from 57.3mm to 50mm. Therefore, the robot 130 stores the Z value, which is the distance to the subject when the focal length is reduced by 0.1 mm, in advance in reference to the time when the focus is focused on the shortest shooting distance, and then focuses the object dynamically And the Z value corresponding to the focal distance can be confirmed in the memory when it is focused. When there are a plurality of subjects having different depths, the values of (X, Y, Z) can be automatically calculated and recorded in the memory each time the subject is focused. This record value can be referred to when an administrator touches a specific part of the shot image or when the robot 130 performs autonomous operation.

3. 듀얼 카메라를 이용하여 (X, Y, Z)를 구하는 방법3. How to obtain (X, Y, Z) using a dual camera

로봇(130)의 카메라 모듈(210)은 두 개의 카메라를 포함할 수 있다. 도 8은 본 발명의 일 실시예에 따른 두 개의 카메라의 X 축을 나타낸 도면이다. 도 8에 도시된 바와 같이, 두 개의 카메라(810, 820)의 촬영 영역은 중첩된다. 중첩되는 공통 촬영 영역은 도 8에서 세점 S1, S2 및 M이 이루는 영역이다. 각 카메라(810, 820)의 촬상면에서 M까지의 수직 거리는 최단 촬영거리보다 작거나 같도록 카메라(810, 820)의 간격과 렌즈 등을 설계한다. 공통 촬영 영역 밖의 피사체의 Z 값은 동일한 초점거리의 공통 촬영 영역에 위치한 피사체의 Z 값으로 갈음할 수 있다. The camera module 210 of the robot 130 may include two cameras. 8 is a diagram illustrating the X-axis of two cameras according to an exemplary embodiment of the present invention. As shown in Fig. 8, the shooting regions of the two cameras 810 and 820 overlap. The overlapping common photographing area is an area formed by the three points S1, S2, and M in Fig. The vertical distance from the imaging plane of each of the cameras 810 and 820 to M is designed to be less than or equal to the shortest imaging distance and the distance between the cameras 810 and 820 and the lens. The Z value of the subject outside the common photographing area can be replaced with the Z value of the subject located in the common photographing area of the same focal distance.

도 8에서 피사체의 실제 위치는 X12로 표기되어 있다. 제 1 카메라(810)의 제2주점 Q1에서 C까지의 거리는 제 1 카메라(810)의 피사체면의 중심으로부터 피사체까지의 거리로서, a로 표기된다. 제 2 카메라(820)의 제2주점 Q2에서 C까지의 거리는 제 2 카메라(820)의 피사체면의 중심으로부터 피사체까지의 거리로서, b로 표기된다. 따라서, 두 카메라(810, 820) 간의 간격인 c는 a+b가 된다. a와 b를 알게 되면, 구하고자 하는 (X, Y, Z) 값 중 (X, Y) 값을 알 수 있다. a와 b는 아래에서 구한다. In FIG. 8, the actual position of the subject is indicated by X12. The distance from the second principal point Q1 to C of the first camera 810 is the distance from the center of the subject surface of the first camera 810 to the subject and is denoted by a. The distance from the second principal point Q2 to C of the second camera 820 is the distance from the center of the object plane of the second camera 820 to the object, Therefore, the interval c between the two cameras 810 and 820 is a + b. If you know a and b, you can find the (X, Y) value of the (X, Y, Z) values you want to find. a and b are obtained from below.

한편, 제 1 카메라(810)의 중심축과 선분 Q1-x1(x1은 촬상면에서의 피사체의 위치)이 이루는 각도를 α, 제 2 카메라(820)의 중심축과 선분 Q2-x2(x2은 촬상면에서의 피사체의 위치)이 이루는 각도를 β라고 하면, α 및 β는 다음 (수학식 7)에 의해 구할 수 있다.On the other hand, the angle formed between the central axis of the first camera 810 and the line segment Q1-x1 (x1 is the position of the subject on the sensing surface) is α, the center axis of the second camera 820 and the line segment Q2- (The position of the subject in the photographing direction) is represented by?,? And? Can be obtained by the following formula (7).

(수학식 7) (7)

α = tan-1(촬영 이미지 상의 x1 지점의 픽셀 값을 제 1 카메라(810)의 이미지 센서의 크기로 환산한 거리/Q1과 촬상면 사이의 거리)? = tan -1 (distance between a pixel value of the x1 point on the captured image and the image pickup surface of the first camera 810 / Q1)

β = tan-1(촬영 이미지 상의 x2 지점의 픽셀 값을 제 2 카메라(820)의 이미지 센서의 크기로 환산한 거리/Q2과 촬상면 사이의 거리)? = tan -1 (the distance between the pixel value of the x2 point on the captured image and the image sensor size of the second camera 820 / Q2 and the distance between the imaging surface)

이와 같이 α 및 β를 구한 후, 제2주점(Q1 또는 Q2)과 피사체(X12) 간의 수직거리인 h를 다음과 같이 구할 수 있다. 즉, tan(90-α) = h/a이고, tan(90-β) = h/b이며, c=a+b이다. 이들의 연립 방적식을 풀면 다음 (수학식 8)과 같이 h를 구할 수 있다.After obtaining α and β in this way, the vertical distance h between the second principal point Q1 or Q2 and the subject X12 can be obtained as follows. That is, tan (90 -?) = H / a, tan (90 -?) = H / b, and c = a + b. Solving these simultaneous equations, h can be obtained as in (Equation 8).

(수학식 8)(8)

h=c×tan(90-α)×tan(90-β) / (tan(90-α)+tan(90-β))(90 -?) / tan (90 -?) + tan (90 -?)

여기서 구한 h, 그리고 상기 α 및 β를 앞서 설명한 tan(90-α) = h/a와 tan(90-β) = h/b에 대입하면, a, b를 구할 수 있고, 이로부터 (X, Y) 값을 얻어낼 수 있다. A and b can be obtained by substituting the values h and tan (90 -?) = H / a and tan (90 -?) Y) can be obtained.

그리고 Z 값은 카메라(810 또는 820)의 제2주점(Q1 또는 Q2)과 촬상면 간의 수직거리에 상기 h 값을 더하면 구해질 수 있다. And the Z value can be obtained by adding the h value to the vertical distance between the second principal point (Q1 or Q2) of the camera 810 or 820 and the image sensing plane.

4. 심도 센서를 이용하여 (X, Y, Z)를 구하는 방법4. How to find (X, Y, Z) using depth sensor

카메라 모듈(210)은 레이저를 포함하는 심도 센서를 포함할 수 있다. 심도 센서는 SL(Structured Light)와 ToF(Time of Flight) 방식 중 어느 한 방식일 수 있다. SL 방식의 심도 센서는 특정 패턴의 레이저를 피사체에 발사한 후 피사체 표면의 모양에 따라 패턴의 변형 정보를 분석하여 심도를 계산한다. ToF 방식은 레이저가 피사체에 반사돼 돌아오는 시간을 측정해 심도를 계산한다. 본 실시예에서 로봇(130)은 심도 센서를 이용하여 Z 값을 계산하고, (X, Y) 값은 앞서 설명한 방식과 동일하게 계산할 수 있다. Z 값은 촬영 이미지의 픽셀당 계산될 수 있고, 또는 n개의 픽셀당 또는 n×n개의 픽셀당 계산될 수 있다. n개의 픽셀당 Z 값은, n개의 픽셀의 중심을 기준으로 Z 값을 구하고 그 n개의 픽셀은 모두 동일한 Z 값을 갖는다고 가정한다. 또한 n×n개의 픽셀당 Z 값은 해당 n×n개의 픽셀이 만드는 격자의 중심을 기준으로 Z 값을 구하고 그 격자 내의 모든 픽셀은 모두 동일한 Z 값을 갖는다고 가정한다. 이하에서는 n×n개의 픽셀당 Z 값을 구하는 것을 설명한다.The camera module 210 may include a depth sensor that includes a laser. The depth sensor may be one of SL (Structured Light) and ToF (Time of Flight). The SL-type depth sensor calculates the depth by analyzing the deformation information of the pattern according to the shape of the surface of the subject after emitting a laser of a specific pattern to the subject. The ToF method calculates the depth by measuring the time the laser returns from the subject. In this embodiment, the robot 130 calculates the Z value using the depth sensor, and the (X, Y) value can be calculated in the same manner as described above. The Z value may be calculated per pixel of the shot image, or may be calculated per n pixels or per n x n pixels. It is assumed that the Z value per n pixels is a Z value based on the center of n pixels, and that all the n pixels have the same Z value. It is also assumed that the Z value per n × n pixels is a Z value based on the center of the grid formed by the n × n pixels, and all the pixels in the grid have the same Z value. Hereinafter, a method of obtaining a Z value per n x n number of pixels will be described.

도 9는 본 발명의 일 실시예에 따른 n×n개의 격자로 분할된 촬상면을 나타낸 도면으로서, 촬영 이미지를 n×n개의 격자로 분할하고, 그 촬영 이미지와 대응하게 이미지 센서의 촬상면(S2)도 동일하게 n×n개의 격자로 분할한다. 따라서, 피사체면(S1)도 촬상면(S2)과 동일하게 n×n개의 격자로 분할된다고 가정할 수 있다. 피사체면(S1)의 피사체를 A라 하고 이에 대응하는 촬상면(S2)의 피사체를 a라 한다. 피사체면(S1)의 피사체 A의 Z 값을 구하기 위해서, 촬상면(S2)에 피사체 a가 맺힌 격자의 중심과 제2주점 Q2를 잇는 선분이 중심축과 이루는 각도 α(X 축 각도 및 Y 축 각도)를 확인한다. 이는 곧 피사체 A로부터 반사되어 오는 빛의 방향과 각도를 의미한다. 보다 구체적으로, 제2주점 Q2에서 촬상면(S2)의 중심점까지의 거리인 초점 거리 f와, 촬상면(S2) 내에서 피사체 a의 x축 방향의 거리 값인 ax와, 촬상면(S2) 내에서 피사체 a의 y축 방향의 거리 값인 ay를 이용하면, 촬상면(S2) 내의 피사체 a가 중심축에서 x축 방향과 이루는 각도 αx와 y축 방향과 이루는 각도 αy 그리고 xy축 방향과 이루는 각도 α를 다음 (수학식 9) 내지 (수학식 11)과 같이 구할 수 있다.9 is a view showing an image sensing plane divided into n × n lattices according to an embodiment of the present invention. The image sensing plane is divided into n × n lattices, Are also divided into n × n lattices. Therefore, it can be assumed that the object plane S1 is also divided into n x n lattices in the same manner as the image sensing plane S2. Let A be the subject of the subject surface S1 and a be the subject of the corresponding imaging surface S2. An angle? (An X-axis angle and a Y-axis angle) formed by a line segment connecting the center of the grating on which the subject "a" is formed with the second principal point Q2 to the central axis on the image sensing plane S2 is used to obtain the Z value of the object A on the object plane S1. ). This means the direction and angle of the light reflected from the subject A. More specifically, the focal length f, which is the distance from the second principal point Q2 to the center point of the imaging surface S2, ax, the distance value in the x-axis direction of the subject a in the imaging plane S2, The angle a formed by the object a in the imaging plane S2 with the x-axis direction in the x-axis direction and the y-axis direction and the angle a formed in the xy-axis direction by the distance a in the y- (9) through (11).

(수학식 9) αx = tan-1(ax/f)(9)? X = tan -1 (ax / f)

(수학식 10) αy = tan-1(ay/f). (10)? Y = tan -1 (ay / f).

(수학식 11) α = tan-1((√ ax2 + ay2 )/f) Α = tan (Equation 11) -1 ((√ ax 2 + ay 2) / f)

로봇(130)은 카메라 모듈(210)에 포함된 심도 센서를 제2주점 Q2의 위치로 이동시킨 후 상기 각도 α를 참조하여 레이저를 피사체로 향하게 한 후 해당 피사체 A의 심도 값을 구한다. 이 피사체 A의 심도 값과, 상기 (수학식 11)에서 구한 촬상면(S2) 내의 피사체 a가 xy축 방향과 이루는 각도 α를 이용하면, 다음 (수학식 12)와 같이, 제2주점 Q2과 피사체면(S1)의 중심까지의 거리(Zd)를 구할 수 있다.The robot 130 moves the depth sensor included in the camera module 210 to the position of the second principal point Q2, and directs the laser to the subject with reference to the angle?, And obtains the depth value of the subject A. Using the depth value of the subject A and the angle alpha formed by the subject a in the image sensing plane S2 obtained by the above formula (11) with the xy axis direction, the second principal point Q2 and the subject The distance Z d to the center of the surface S1 can be obtained.

(수학식 12)(12)

Zd(Q2로부터 P1까지의 거리) = D(피사체 A의 심도 값으로서, Q2로부터 A까지의 거리) × cos αZ d (distance from Q2 to P1) = D (distance from Q2 to A as depth value of subject A) x cos?

다음으로, 로봇(130)은, 상기 (수학식 12)에서 구한 제2주점 Q2로부터 피사체면(S1)의 중심까지의 거리(Zd)에 촬상면(S2)으로부터 제2주점 Q2까지의 거리를 더하면 해당 피사체 A의 Z 값이 산출된다. 이는 다음 (수학식 13)과 같이 표현된다.Next, the robot 130 calculates the distance (Z d ) from the second principal point Q 2 to the center of the subject surface S 1 and the distance from the imaging plane S 2 to the second principal point Q 2 The Z value of the subject A is calculated. This is expressed by the following equation (13).

(수학식 13)(13)

Z = Zd + f(초점 거리로서, 촬상면(S2)의 중심에서 Q2까지 거리)Z = Z d + f (focal length, distance from the center of the imaging surface S2 to Q2)

한편, 이와 같이 Z 값이 산출되면, 로봇(130)은 상기 Z 값, 그리고 피사체 a가 중심축에서 x축 방향과 이루는 각도 αx와 y축 방향과 이루는 각도 αy를 이용하여 다음 (수학식 14) 및 (수학식 15)와 같이 (X, Y) 값을 산출한다. When the Z value is calculated as described above, the robot 130 calculates the Z value using the angle? X formed by the object a with the x axis direction in the central axis and the angle? Y with the y axis direction, And (X, Y) values as in (15).

(수학식 14) X = Zd × tan(αx)X = Z d x tan (? X)

(수학식 15) Y = Zd × tan(αy) (15) Y = Z d x tan (? Y)

따라서, 관리자가 제어 장치(140)에 표시되는 촬영 이미지에서 피사체 a를 선택하게 되면 위와 같은 방식으로 (X, Y, Z) 값을 산출하게 된다.Accordingly, if the administrator selects the subject a from the photographed image displayed on the control device 140, the value of (X, Y, Z) is calculated in the above manner.

상기 심도 센서는 팬(Pan, 수평 회전) 기능과 틸트(Tilt, 수직 회전) 기능을 가진 지지체에 의해 고정되며, 상기 Q2 위치에서 상기 αx 각도만큼 수평 회전을 하고, αy 각도만큼 수직 회전을 하여 중심축과 α 각도를 이루어 피사체 A를 향하도록 하여 심도를 측정하게 된다.The depth sensor is fixed by a support having a pan (pan) function and a tilt function (vertical rotation). The depth sensor rotates horizontally by the angle? X at the position Q2, And the depth is measured by aiming at the object A with an axis and an angle.

도 9를 참조한 실시예에서는 관리자가 촬영 이미지에서 객체를 선택했을 때 (X, Y, Z) 값을 구하는 것을 설명하나 여기에 제한되는 것은 아니고, 촬영 이미지를 n×n개의 격자로 분할하였을 때 각 격자에 대응하는 피사체면의 각 격자의 Z 값을 모두 구하여 피사체면의 각 격자의 (X, Y, Z) 값을 미리 메모리에 저장할 수 있다. 관리자가 촬영 이미지에서 특정 격자 부분을 선택하면 메모리에서 해당 격자의 (X, Y, Z) 값을 읽어와 조작 장치(260)를 이동시켜 피사체를 조작할 수 있다. 이 방식은 심도 센서를 이용할 때뿐만 아니라 앞서 설명한 방식에도 적용될 수 있다. 즉 촬영 이미지를 복수 개의 격자로 분할한 후 각 격자마다 격자의 중심을 피사체로 보고 각 격자의 중심에 대응하는 피사체면의 각 격자의 중심의 (X, Y, Z) 값을 메모리에 미리 저장했다가 이용할 수 있다. In the embodiment of FIG. 9, when the administrator selects an object from the shot image, the value (X, Y, Z) is obtained. However, the present invention is not limited to this. When the shot image is divided into nxn grid (X, Y, Z) values of the respective gratings of the object plane can be previously stored in the memory by obtaining all the Z values of the respective gratings of the object plane corresponding to the grating. When the manager selects a specific grid portion in the shot image, the user can manipulate the object by reading the (X, Y, Z) values of the grid from the memory and moving the operation device 260. This method can be applied not only to the use of the depth sensor but also to the method described above. In other words, after dividing the photographed image into a plurality of gratings, taking the center of the grating as a subject for each grating, the (X, Y, Z) values of the centers of the gratings on the object plane corresponding to the center of each grating were previously stored in the memory Can be used.

또한 관리자가 촬영 이미지에서 여러 개의 객체를 순차적으로 선택했을 때 메모리에 각 객체의 상기 αx, αy, α 값을 메모리에 순차적으로 저장하되, 피사체면(S1)의 중심 좌표를 기준으로 1 ~ 4 사분면으로 분할하여 선택된 객체의 해당 부호값을 상기 αx, αy 값에 적용하여 상기 심도 센서 지지체의 회전 방향을 결정하도록 할 수 있다.Also, when the administrator sequentially selects a plurality of objects in the shot image, the αx, αy, and α values of each object are sequentially stored in the memory, and the first to fourth quadrants And determines the rotation direction of the depth sensor support by applying the code value of the selected object to the values of? X and? Y.

스마트 농장의 Smart farm 실시예Example

토마토 농장에 로봇(130)의 이동 경로와 평행하게 토마토가 심어져 있다. 로봇(130)은 카메라와 토마토 간의 거리를 최단 촬영거리 이상이 되도록 카메라 모듈(210)의 위치를 유지한다. 로봇(130)은 카메라 모듈(210)로 촬영한 촬영 이미지를 관리자의 제어 장치(140)로 전송한다. 로봇(130)과 제어 장치(140)는 상호 공유한 촬영 이미지에서 토마토를 객체로 생성하여 동기화한다. Tomatoes are planted on the tomato farm in parallel with the movement path of the robot (130). The robot 130 maintains the position of the camera module 210 such that the distance between the camera and the tomato is at least the shortest photographing distance. The robot 130 transmits the photographed image photographed by the camera module 210 to the controller 140 of the administrator. The robot 130 and the control device 140 generate tomatoes as objects and synchronize them in the captured images.

로봇(130)은 관리자가 제어 장치(140)에서 잘 익은 특정 토마토를 선택하여 원모양으로 표시하고 가위로 자를 부분, 즉 꼭지 부분을 짧은 선분으로 표시하면 이에 관한 정보를 제어 장치(140)로부터 수신한다. 이때 제어 장치(140)는 영상 전체를 전송하는 것이 아니라 원모양의 필기 도형의 중심 좌표 값과 선분 모양의 필기 도형의 시작점과 끝점 좌표 값만을 전송할 수 있다. The robot 130 displays the selected ripe tomatoes in a circular shape in the control unit 140 and displays information about the tomatoes in a short line segment, do. At this time, the control device 140 does not transmit the entire image, but can transmit only the center coordinate value of the circled handwritten graphic and the start and end coordinate values of the handwritten graphic handwritten.

로봇(130)은 최단 촬영거리에 초점이 맞도록 카메라 모듈(210)의 초점 링을 제어한 후 카메라 모듈(210)을 토마토 방향으로 최대한 접근시켜 상기 선택한 특정 토마토에 초점이 맞으면 이동을 멈춘다. 그리고 로봇(130)은 촬영 이미지에서 상기 특정 토마토의 (X, Y) 값을 구하고 또한 최단 촬영거리와 이동 거리를 더한 값을 Y 값으로 하여 상기 특정 토마토의 (X, Y, Z) 값을 산출한다. 로봇(130)은 이 (X, Y, Z) 값에 기초하여 로봇(130)은 조작 장치(260)를 이동시켜 토마토를 잘라 수확한다. 이때 로봇(130)은 선분의 시작점과 끝점을 활용하여 조작 장치(260)에 포함된 가위로 자른다. The robot 130 controls the focus ring of the camera module 210 so as to focus on the shortest shooting distance and then moves the camera module 210 as far as possible in the tomato direction to stop the movement when the selected specific tomato is focused. The robot 130 calculates the (X, Y, Z) value of the specific tomato by calculating the (X, Y) value of the specific tomato in the photographed image and using the value obtained by adding the shortest photographing distance and the moving distance as the Y value do. The robot 130 moves the operating device 260 based on the (X, Y, Z) values to cut and harvest the tomatoes. At this time, the robot 130 cuts the scissors included in the manipulation device 260 using the starting point and the end point of the line segment.

로봇(130)은 관리자가 잘 익은 것으로 판단하여 선택한 토마토의 색상 값의 도수분포표를 기록하여 메모리에 저장할 수 있다. 또한, 로봇(130)은 관리자가 자르는 부분으로 선택한 꼭지 부분과 토마토 열매 부분을 구분하여 색상 값을 데이터화하여 기록하고 또한 토마토 열매 부분의 형상을 기준으로 잘려지는 꼭지 부분의 위치 값을 평균화하여 기록할 수 있다. 데이터의 양이 증가할수록 관리자의 안목에 근접하게 수치화되고, 로봇(130)은 관리자의 판단에 선행하여 촬영 이미지에서 토마토의 열매 부분에 원 모양을 표시하고 또한 꼭지 부분에 선모양을 표시하여 제어 장치(140)로 전송하여 관리자의 판단을 기다릴 수 있다. 관리자는 로봇(130)의 판단과 자신의 판단이 차이가 없다고 판단되면 자율 버튼을 누르고 이후 로봇(130)은 관리자의 판단 없이 자율적으로 판단하여 토마토를 수확한다. The robot 130 may record the frequency distribution table of the color values of the selected tomatoes and store them in the memory as judged by the administrator. In addition, the robot 130 divides the selected portion of the faucet and the tomato fruit portion selected by the administrator into data and records the color value, and also records the average value of the position of the cut portion based on the shape of the tomato fruit portion . As the amount of data increases, it is numerically represented close to the view of the manager. The robot 130 displays a circle shape on the fruit portion of the tomato and a line shape on the stem portion of the tomato prior to the judgment of the manager, (140) and wait for the manager's judgment. If it is determined that there is no difference between the judgment of the robot 130 and the judgment of the robot 130, the manager presses the autonomic button, and the robot 130 autonomously judges the robot 130 without the administrator's decision, and the tomato is harvested.

이상의 실시예에서 로봇(130)은 최단 촬영거리에 초점이 맞도록 카메라 모듈(210)을 맞춘 후에 관리자가 선택한 토마토로 이동하여 (X, Y, Z)의 값을 산출하였으나, 메모리에 저장된 초점거리별 Z 값을 확인하여 Z 값을 산출하고 (X, Y) 값은 앞서 설명한 방법과 동일한 방법으로 산출할 수도 있다. 또한 로봇(130)은 관리자가 특정 토마토를 선택하면 두 개의 카메라를 이용하여 그 선택한 특정 토마토의 (X, Y, Z) 값을 산출할 수도 있다. 또한 로봇(130)은 이상에서 설명한 심도 센서를 이용하여 토마토의 Z 값을 산출할 수도 있다. In the above embodiment, the robot 130 moves the camera module 210 to focus on the shortest shooting distance, and then moves to the tomato selected by the administrator to calculate the values of (X, Y, Z) The Z value can be calculated by checking the Z value, and the (X, Y) value can be calculated in the same manner as described above. Also, the robot 130 may calculate the (X, Y, Z) values of the selected specific tomato using the two cameras when the manager selects a specific tomato. The robot 130 may also calculate the Z value of the tomato using the depth sensor described above.

또는, 로봇(130)은 최단 촬영거리에 초점이 맞도록 카메라 모듈(210)을 맞춘 후에 카메라 모듈(210)을 토마토에 접근시켜 멈춘다. 그리고 로봇(130)은 초점을 그대로 둔 상태에서 카메라 모듈(210)을 후퇴시키면서 여러 장면의 영상을 촬영하고 각 영상을 촬영했을 때의 위치를 기록한다. 예를 들어, 카메라 모듈(210)을 후퇴하며 어느 한 토마토에 초점이 맞으면 그 시점에서 토마토의 위치는 최단 촬영거리만큼 떨어진 전방이다. 이후 카메라 모듈(210)을 제1거리만큼 더 후퇴시키면 그 토마토의 위치는 최단 촬영거리에 상기 제1거리의 합이 된다. 이와 같이 초점이 맞았던 토마토들의 Z 값들이 기록되고, 로봇(130)은 복수의 촬영 이미지을 제어 장치(140)로 전송하고 관리자가 복수의 촬영 이미지에서 특정 토마토를 선택하면, 기록된 Z 값, 그리고 (X, Y) 값을 산출하여 토마토를 수확할 수 있다. Alternatively, the robot 130 closes the camera module 210 by approaching the camera module 210 after aligning the camera module 210 so as to focus on the shortest shooting distance. Then, the robot 130 retreats the camera module 210 while keeping the focus, and records images of various scenes and records the positions of the images when the images are captured. For example, when the camera module 210 is retracted and one tomato is focused, the position of the tomato at that point is forward by the shortest shooting distance. When the camera module 210 is further retracted by the first distance, the position of the tomato is the sum of the first distance and the shortest photographing distance. The Z values of the tomatoes thus focused are recorded, and the robot 130 transmits a plurality of photographed images to the control device 140. When the manager selects a specific tomato from a plurality of photographed images, X, Y), and the tomato can be harvested.

본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 안 된다. 또한, 본 명세서에서 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서에서 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.While the specification contains many features, such features should not be construed as limiting the scope of the invention or the scope of the claims. In addition, the features described in the individual embodiments herein may be combined and implemented in a single embodiment. Conversely, various features described in the singular < Desc / Clms Page number 5 > embodiments herein may be implemented in various embodiments individually or in combination as appropriate.

도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로, 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 프로그램 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.Although the operations have been described in a particular order in the figures, it should be understood that such operations are performed in a particular order as shown, or that all described operations are performed to obtain a sequence of sequential orders, or a desired result . In certain circumstances, multitasking and parallel processing may be advantageous. It should also be understood that the division of various system components in the above embodiments does not require such distinction in all embodiments. The above-described program components and systems can generally be implemented as a single software product or as a package in multiple software products.

상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.The method of the present invention as described above can be implemented by a program and stored in a computer-readable recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto optical disk, etc.). Such a process can be easily carried out by those skilled in the art and will not be described in detail.

이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the invention. The present invention is not limited to the drawings.

110 : 공작 기계
120 : 레일
130 : 로봇
140 : 제어 장치
210 : 카메라 모듈
220 : 통신 모듈
230 : 프로세서
240 : 메모리
250 : 이동 모듈
260 : 조작 장치
110: Machine tools
120: rail
130: Robot
140: Control device
210: camera module
220: Communication module
230: Processor
240: Memory
250: Moving module
260: Operation device

Claims (15)

삭제delete 삭제delete 삭제delete 관리자 단말의 원격 제어에 의해 동작하는 로봇에 있어서,
상기 관리자 단말과 통신하는 통신 모듈;
물리적 대상물을 물리적으로 조작할 수 있는 조작 장치;
상기 대상물을 촬영하여 촬영 이미지를 생성하는 카메라 모듈;
상기 조작 장치 및 상기 카메라 모듈을 이동시키는 이동 모듈;
프로세서; 및
상기 프로세서에 의해 실행 가능한 명령어를 저장하는 메모리;
상기 프로세서는,
상기 촬영 이미지를 상기 메모리에 로드하고 상기 관리자 단말로 전송하며 상기 메모리에 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체와 상기 관리자 단말에서 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체를 동기화하고,
상기 관리자 단말로부터 관리자에 의해 선택된 특정 객체의 정보를 수신하고, 상기 특정 객체에 대응하는 상기 대상물의 부분인 조작 대상의 3차원 위치인 (X, Y, Z) 값을 산출하며, 그 (X, Y, Z) 값에 기초하여 상기 조작 장치를 이동하여 상기 특정 객체에 대응하는 상기 조작 대상을 상기 조작 장치로 조작하되,
피사체면 내에서 중심으로부터 상기 조작 대상까지의 가로 및 세로의 거리인 (X, Y) 값을 산출하며,
상기 조작 대상과의 거리가 최단 촬영거리보다 먼 제 1 위치에 상기 카메라 모듈을 위치시킨 후 최단 촬영거리에 상기 카메라 모듈의 초점이 맞도록 한 상태에서, 상기 카메라 모듈을 상기 제 1 위치로부터 상기 조작 대상 방향으로 이동시켜 상기 조작 대상에 초점이 맞을 때까지 이동한 거리와, 상기 최단 촬영거리를 더한 값을 상기 조작 대상까지의 거리인 Z 값으로 산출하는 것을 특징으로 하는 로봇.
A robot that operates by remote control of an administrator terminal,
A communication module for communicating with the manager terminal;
An operating device capable of physically manipulating a physical object;
A camera module for photographing the object and generating a shot image;
A movement module for moving the operation device and the camera module;
A processor; And
A memory for storing instructions executable by the processor;
The processor comprising:
Loading the captured image into the memory and transferring the captured image to the manager terminal, synchronizing at least one object generated in the captured image loaded in the memory and at least one object generated in the captured image loaded in the manager terminal,
(X, Y, Z), which is a three-dimensional position of the object to be manipulated, which is a part of the object corresponding to the specific object, Y, Z) to move the operation device to operate the operation object corresponding to the specific object with the operation device,
(X, Y), which is the distance between the center and the object in the object plane,
The camera module is moved from the first position to the operation position in a state in which the camera module is positioned at a first position where the distance from the operation target is longer than the shortest photographing distance, And calculates a Z value that is a distance to the operation target from a value obtained by adding the shortest photographing distance and the distance moved by moving the subject in the subject direction until the subject is focused on the operation subject.
관리자 단말의 원격 제어에 의해 동작하는 로봇에 있어서,
상기 관리자 단말과 통신하는 통신 모듈;
물리적 대상물을 물리적으로 조작할 수 있는 조작 장치;
상기 대상물을 촬영하여 촬영 이미지를 생성하는 카메라 모듈;
상기 조작 장치 및 상기 카메라 모듈을 이동시키는 이동 모듈;
프로세서; 및
상기 프로세서에 의해 실행 가능한 명령어를 저장하는 메모리;
상기 프로세서는,
상기 촬영 이미지를 상기 메모리에 로드하고 상기 관리자 단말로 전송하며 상기 메모리에 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체와 상기 관리자 단말에서 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체를 동기화하고,
상기 관리자 단말로부터 관리자에 의해 선택된 특정 객체의 정보를 수신하고, 상기 특정 객체에 대응하는 상기 대상물의 부분인 조작 대상의 3차원 위치인 (X, Y, Z) 값을 산출하며, 그 (X, Y, Z) 값에 기초하여 상기 조작 장치를 이동하여 상기 특정 객체에 대응하는 상기 조작 대상을 상기 조작 장치로 조작하되,
피사체면 내에서 중심으로부터 상기 조작 대상까지의 가로 및 세로의 거리인 (X, Y) 값을 산출하며,
상기 조작 대상과 상기 카메라 모듈 간의 거리가 최단 촬영거리가 되도록 상기 카메라 모듈을 위치시킨 상태에서, 그 지점부터 상기 카메라 모듈을 상기 조작 대상으로부터 멀어지도록 이동시킨 때의 그 이동한 거리와, 상기 최단 촬영거리를 더한 값을 상기 조작 대상까지의 거리인 Z 값으로 산출하는 것을 특징으로 하는 로봇.
A robot that operates by remote control of an administrator terminal,
A communication module for communicating with the manager terminal;
An operating device capable of physically manipulating a physical object;
A camera module for photographing the object and generating a shot image;
A movement module for moving the operation device and the camera module;
A processor; And
A memory for storing instructions executable by the processor;
The processor comprising:
Loading the captured image into the memory and transferring the captured image to the manager terminal, synchronizing at least one object generated in the captured image loaded in the memory and at least one object generated in the captured image loaded in the manager terminal,
(X, Y, Z), which is a three-dimensional position of the object to be manipulated, which is a part of the object corresponding to the specific object, Y, Z) to move the operation device to operate the operation object corresponding to the specific object with the operation device,
(X, Y), which is the distance between the center and the object in the object plane,
A moving distance of the camera module when the camera module is moved away from the operation target in a state in which the camera module is positioned so that the distance between the operation target and the camera module is the shortest shooting distance, And calculates a value obtained by adding the distance as a Z value that is a distance to the operation target.
제 4 항 또는 제 5 항에 있어서,
상기 프로세서는,
상기 촬영 이미지 내에서 중심으로부터 상기 관리자에 의해 선택된 특정 객체까지의 가로 및 세로의 거리인 (x1, y1) 값을 산출하고,
상기 (x1, y1) 값과, 상기 최단 촬영거리, 그리고 상기 카메라 모듈의 초점거리를 이용하여, 상기 (X, Y) 값을 산출하는 것을 특징으로 하는 로봇.
The method according to claim 4 or 5,
The processor comprising:
(X1, y1), which is the distance between the center and the specific object selected by the manager in the captured image,
Calculates the (X, Y) value using the (x1, y1) value, the shortest photographing distance, and the focal distance of the camera module.
관리자 단말의 원격 제어에 의해 동작하는 로봇에 있어서,
상기 관리자 단말과 통신하는 통신 모듈;
물리적 대상물을 물리적으로 조작할 수 있는 조작 장치;
상기 대상물을 촬영하여 촬영 이미지를 생성하는 카메라 모듈;
상기 조작 장치 및 상기 카메라 모듈을 이동시키는 이동 모듈;
프로세서; 및
상기 프로세서에 의해 실행 가능한 명령어와, 상기 카메라 모듈의 최단 촬영거리를 기준으로 초점거리의 감소에 대응하는 상기 대상물까지의 거리인 Z 값을 저장하는 메모리;
상기 프로세서는,
상기 촬영 이미지를 상기 메모리에 로드하고 상기 관리자 단말로 전송하며 상기 메모리에 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체와 상기 관리자 단말에서 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체를 동기화하고,
상기 관리자 단말로부터 관리자에 의해 선택된 특정 객체의 정보를 수신하고, 상기 특정 객체에 대응하는 상기 대상물의 부분인 조작 대상의 3차원 위치인 (X, Y, Z) 값을 산출하며, 그 (X, Y, Z) 값에 기초하여 상기 조작 장치를 이동하여 상기 특정 객체에 대응하는 상기 조작 대상을 상기 조작 장치로 조작하되,
상기 조작 대상에 초점이 맞을 때의 상기 카메라 모듈의 초점거리에 대응하는 Z 값을 상기 메모리에서 확인하고, 상기 조작 대상과 상기 카메라 모듈 간의 거리가 최단 촬영거리가 되도록 상기 카메라 모듈을 이동시킨 후 피사체면 내에서 중심으로부터 상기 조작 대상까지의 가로 및 세로의 거리인 (X, Y) 값을 산출하는 로봇.
A robot that operates by remote control of an administrator terminal,
A communication module for communicating with the manager terminal;
An operating device capable of physically manipulating a physical object;
A camera module for photographing the object and generating a shot image;
A movement module for moving the operation device and the camera module;
A processor; And
A memory that stores a Z value that is a distance to the object corresponding to a decrease in focal length based on a shortest shooting distance of the camera module;
The processor comprising:
Loading the captured image into the memory and transferring the captured image to the manager terminal, synchronizing at least one object generated in the captured image loaded in the memory and at least one object generated in the captured image loaded in the manager terminal,
(X, Y, Z), which is a three-dimensional position of the object to be manipulated, which is a part of the object corresponding to the specific object, Y, Z) to move the operation device to operate the operation object corresponding to the specific object with the operation device,
The camera module is moved so that the distance between the operation target and the camera module becomes the shortest photographing distance, and the Z value corresponding to the focal length of the camera module when the operation object is in focus, (X, Y) which is the distance between the center and the object in the plane.
삭제delete 삭제delete 삭제delete 삭제delete 관리자 단말의 원격 제어에 의해 동작하는 로봇에 있어서,
상기 관리자 단말과 통신하는 통신 모듈;
물리적 대상물을 물리적으로 조작할 수 있는 조작 장치;
상기 대상물을 촬영하여 촬영 이미지를 생성하는 카메라 모듈;
상기 조작 장치 및 상기 카메라 모듈을 이동시키는 이동 모듈;
프로세서; 및
상기 프로세서에 의해 실행 가능한 명령어를 저장하는 메모리;
상기 프로세서는,
상기 촬영 이미지를 상기 메모리에 로드하고 상기 관리자 단말로 전송하며 상기 메모리에 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체와 상기 관리자 단말에서 로드되는 촬영 이미지에서 생성되는 적어도 하나의 객체를 동기화하고,
상기 관리자 단말로부터 관리자에 의해 선택된 특정 객체의 정보를 수신하고, 상기 특정 객체에 대응하는 상기 대상물의 부분인 조작 대상의 3차원 위치인 (X, Y, Z) 값을 산출하며, 그 (X, Y, Z) 값에 기초하여 상기 조작 장치를 이동하여 상기 특정 객체에 대응하는 상기 조작 대상을 상기 조작 장치로 조작하되,
최단 촬영거리에 초점이 맞도록 상기 카메라 모듈을 맞춘 후에 상기 카메라 모듈을 상기 조작 대상에 접근시켜 멈춘 후, 초점을 그대로 둔 상태에서 상기 카메라 모듈을 후퇴시키면서 다른 조작 대상들에 초점이 맞을 때 각각 이미지를 촬영하며, 각 이미지를 촬영했을 때의 상기 카메라 모듈의 위치를 각 다른 조작 대상마다의 Z 값으로 기록하고,
상기 다른 조작 대상들과 상기 카메라 모듈 간의 거리가 최단 촬영거리가 되도록 상기 카메라 모듈을 이동시킨 후, 피사체면 내에서 중심으로부터 상기 다른 조작 대상들까지의 가로 및 세로의 거리인 (X, Y) 값을 각 다른 조작 대상마다 산출하는 로봇.
A robot that operates by remote control of an administrator terminal,
A communication module for communicating with the manager terminal;
An operating device capable of physically manipulating a physical object;
A camera module for photographing the object and generating a shot image;
A movement module for moving the operation device and the camera module;
A processor; And
A memory for storing instructions executable by the processor;
The processor comprising:
Loading the captured image into the memory and transferring the captured image to the manager terminal, synchronizing at least one object generated in the captured image loaded in the memory and at least one object generated in the captured image loaded in the manager terminal,
(X, Y, Z), which is a three-dimensional position of the object to be manipulated, which is a part of the object corresponding to the specific object, Y, Z) to move the operation device to operate the operation object corresponding to the specific object with the operation device,
After the camera module is aligned with the shortest photographing distance, the camera module is stopped to approach the operation target, and when the camera module is retracted while the focus remains unchanged, when the other operation targets are focused, The position of the camera module when each image is captured is recorded as a Z value for each different operation object,
(X, Y) value, which is the distance between the center and the other operation objects in the object plane, after moving the camera module so that the distance between the other operation objects and the camera module is the shortest imaging distance For each different operation target.
제 4 항, 제 5 항, 제 7항, 또는 제 12 항 중 어느 한 항에 있어서,
상기 프로세서는,
관리자의 객체 선택에 대한 과정을 상기 메모리에 기록하고, 기록된 객체 선택 과정에 기초하여 관리자가 특정 객체의 선택시 이후의 객체 선택 과정을 자동으로 처리하는 것을 특징으로 하는 로봇.
13. A method according to any one of claims 4, 5, 7, or 12,
The processor comprising:
Wherein the process of selecting an object of an administrator is recorded in the memory and an administrator automatically processes an object selection process subsequent to selection of a specific object based on the recorded object selection process.
제 4 항, 제 5 항, 제 7항, 또는 제 12 항 중 어느 한 항에 있어서,
상기 대상물은 농작물이고,
상기 프로세서는,
관리자가 수확 대상으로 선택한 객체인 열매 부분을 기준으로 상기 관리자가 잘려지는 부분으로 선택한 객체인 꼭지 부분의 위치 값을 평균화하여 상기 메모리에 기록하고, 상기 메모리에 기록된 위치 값을 기초로 상기 촬영 이미지에 열매와 꼭지 부분을 구분하여 표시하는 것을 특징으로 하는 로봇.
13. A method according to any one of claims 4, 5, 7, or 12,
The object is a crop,
The processor comprising:
The image processing method according to claim 1, further comprising: averaging a position value of a vertex, which is an object selected by the administrator as a truncated part, based on a fruit part, which is an object selected as an object to be harvested by an administrator, And displays the fruit and the nip portion separately.
삭제delete
KR1020180131039A 2018-10-30 2018-10-30 Robot that manipulate object by remote control KR102005196B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180131039A KR102005196B1 (en) 2018-10-30 2018-10-30 Robot that manipulate object by remote control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180131039A KR102005196B1 (en) 2018-10-30 2018-10-30 Robot that manipulate object by remote control

Publications (1)

Publication Number Publication Date
KR102005196B1 true KR102005196B1 (en) 2019-07-29

Family

ID=67480597

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180131039A KR102005196B1 (en) 2018-10-30 2018-10-30 Robot that manipulate object by remote control

Country Status (1)

Country Link
KR (1) KR102005196B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112975975A (en) * 2021-03-02 2021-06-18 路邦康建有限公司 Robot control interface correction method and hospital clinical auxiliary robot thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000136905A (en) * 1998-11-02 2000-05-16 Nissan Motor Co Ltd Apparatus for measuring position of end of object, and judgment apparatus for passage of moving body
JP2006035416A (en) * 2004-07-06 2006-02-09 Commiss Energ Atom Method for gripping object by means of robot arm equipped with camera
JP5855885B2 (en) * 2010-09-22 2016-02-09 トヨタ モーター エンジニアリング アンド マニュファクチャリング ノース アメリカ,インコーポレイティド Human-robot interface apparatus and method for controlling a robot

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000136905A (en) * 1998-11-02 2000-05-16 Nissan Motor Co Ltd Apparatus for measuring position of end of object, and judgment apparatus for passage of moving body
JP2006035416A (en) * 2004-07-06 2006-02-09 Commiss Energ Atom Method for gripping object by means of robot arm equipped with camera
JP5855885B2 (en) * 2010-09-22 2016-02-09 トヨタ モーター エンジニアリング アンド マニュファクチャリング ノース アメリカ,インコーポレイティド Human-robot interface apparatus and method for controlling a robot

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112975975A (en) * 2021-03-02 2021-06-18 路邦康建有限公司 Robot control interface correction method and hospital clinical auxiliary robot thereof

Similar Documents

Publication Publication Date Title
EP3021078B1 (en) Geodetic surveying system with virtual camera
EP3246660B1 (en) System and method for referencing a displaying device relative to a surveying instrument
JP5192822B2 (en) At least one target surveying method and geodetic apparatus
DE112011101407B4 (en) Method of using gestures to control a laser tracking device
US11277597B1 (en) Marker-based guided AR experience
US11782514B2 (en) Wearable device and control method thereof, gesture recognition method, and control system
WO2017120363A1 (en) Task management using augmented reality devices
JP2014527630A (en) Measuring device for determining the spatial posture of a measuring aid
JP2021101535A (en) Machine vision system and method with respect to steerable mirror
US11689877B2 (en) Immersive augmented reality experiences using spatial audio
EP3021079B1 (en) Geodetic surveying system with task list visualization
AU2015275035A1 (en) A method and system to identify a position of a measurement pole
US11915453B2 (en) Collaborative augmented reality eyewear with ego motion alignment
EP4172733A1 (en) Augmented reality eyewear 3d painting
KR102005196B1 (en) Robot that manipulate object by remote control
JP2021018710A (en) Site cooperation system and management device
EP4172732A1 (en) Augmented reality eyewear with mood sharing
CN110517298B (en) Track matching method and device
US20220404147A1 (en) Measuring system, measuring method, and measuring program
US20200184222A1 (en) Augmented reality tools for lighting design
US20230007227A1 (en) Augmented reality eyewear with x-ray effect
JP6783618B2 (en) Information display device and its processing control method
JP2021174089A (en) Information processing device, information processing system, information processing method and program
RU2772407C1 (en) Method and system for optical-inertial tracking of a moving object
CN114723923B (en) Transmission solution simulation display system and method

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant