KR20210042644A - Control system and method for humanoid robot - Google Patents

Control system and method for humanoid robot Download PDF

Info

Publication number
KR20210042644A
KR20210042644A KR1020190125451A KR20190125451A KR20210042644A KR 20210042644 A KR20210042644 A KR 20210042644A KR 1020190125451 A KR1020190125451 A KR 1020190125451A KR 20190125451 A KR20190125451 A KR 20190125451A KR 20210042644 A KR20210042644 A KR 20210042644A
Authority
KR
South Korea
Prior art keywords
image
joint
humanoid robot
user
position information
Prior art date
Application number
KR1020190125451A
Other languages
Korean (ko)
Other versions
KR102335926B1 (en
Inventor
최강선
사재민
Original Assignee
한국기술교육대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국기술교육대학교 산학협력단 filed Critical 한국기술교육대학교 산학협력단
Priority to KR1020190125451A priority Critical patent/KR102335926B1/en
Publication of KR20210042644A publication Critical patent/KR20210042644A/en
Application granted granted Critical
Publication of KR102335926B1 publication Critical patent/KR102335926B1/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/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
    • 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/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • 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

Disclosed are a control system and a method for a humanoid robot. According to the present invention, the method for the humanoid robot photographs a user through two lenses apart from each other, estimates the posture of the user from each of two images photographed from two different points of view, checks the three-dimensional position of each joint of the user from the estimated postures, removes noise, and corrects the positions of the corresponding joints. Afterwards, the method uses the three-dimensional position information of each joint, generates an angle of each motor included in the humanoid robot for the corresponding humanoid robot to show the same posture as that of the user, provides the angle to the humanoid robot, and thereby controls the posture of the humanoid robot. Accordingly, the present invention is able to rapidly control the humanoid robot in a stable manner from a remote place through a relatively simple calculation even without using a depth sensor.

Description

휴머노이드 로봇 제어 시스템 및 방법{Control system and method for humanoid robot}Humanoid robot control system and method {Control system and method for humanoid robot}

본 발명은 로봇 제어 시스템 및 방법에 관한 것으로서, 보다 구체적으로는 휴머노이드 로봇 제어 시스템 및 방법에 관한 것이다.The present invention relates to a robot control system and method, and more particularly, to a humanoid robot control system and method.

사람이 접근하기 어려운 공간 또는 사람이 작업하기 위험한 공간에 로봇을 투입하여, 인명 구조 및 위험한 작업을 수행하고자 하는 기술이 활발하게 연구되고 있으나 아직 상용화되지 못하는 실정이다. 이는 로봇의 정확한 움직임 제어에 실패하게 되면, 로봇이 파손되거나 로봇 자체가 위험요소가 될 수 있기 때문이다.A technology that attempts to save lives and perform dangerous tasks by putting a robot in a space that is difficult for humans to access or a space where humans can work dangerous is being actively researched, but has not yet been commercialized. This is because if the robot fails to accurately control its movement, the robot may be damaged or the robot itself may become a risk factor.

현재 원격 조종 로봇의 제어 정확도와 속도는 트레이드오프 관계에 있어서, 로봇의 제어시에 어느 한 쪽을 선택해야 하며, 보편적인 로봇 원격 조종은 제어의 정확도에 더 큰 비중을 두게 된다. 이 때문에, 대부분의 로봇 원격 조종은 속도가 매우 느리다는 단점이 있다. Currently, the control accuracy and speed of a remote-controlled robot are in a trade-off relationship, so either one must be selected when controlling the robot, and the universal remote-controlled robot places a greater weight on the accuracy of the control. For this reason, most of the robot remote control has the disadvantage that the speed is very slow.

이는 로봇을 보다 정확히 제어하기 위한 다중의 검증 과정이 많이 필요하기 때문이다. 실시간으로 로봇을 조종하기 위해서는 모터 제어를 위한 정확한 계산을 수행해야 하지만, 현재의 로봇 제어 알고리즘들은 전체적인 계산량이 많아 실시간 제어에 어려움이 있다.This is because a lot of multiple verification processes are required to control the robot more accurately. In order to control a robot in real time, it is necessary to perform accurate calculations for motor control, but current robot control algorithms have a large amount of overall calculation, which makes real-time control difficult.

본 발명이 해결하고자 하는 과제는 연산량이 적은 알고리즘을 이용하여 실시간으로 로봇을 제어할 수 있는, 특히, 인간의 관절 구조를 갖는 휴머노이드 로봇을 제어할 수 있는 휴머노이드 로봇 제어 시스템 및 방법을 제공하는 것이다. The problem to be solved by the present invention is to provide a humanoid robot control system and method capable of controlling a robot in real time using an algorithm with a small amount of computation, in particular, a humanoid robot having a human joint structure.

상술한 과제를 해결하기 위한 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 시스템은, 서로 이격된 두 개의 렌즈를 이용하여, 로봇을 제어하고자 하는 사용자의 자세를 각각 촬영하여 제 1 영상 및 제 2 영상을 생성하는 촬영부; 상기 제 1 영상 및 상기 제 2 영상 각각으로부터 사용자의 자세 정보를 생성하고, 상기 사용자의 자세 정보로부터 사용자의 각 관절의 위치 정보를 생성하는 자세 정보 생성부; 상기 사용자의 각 관절의 위치 정보를 이용하여, 제어 대상인 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록, 휴머노이드 로봇에 포함된 각 모터의 각도를 제어하는 모터 제어 신호를 생성하는 모터 제어 신호 생성부; 및 상기 모터 제어 신호를 휴머노이드 로봇측으로 전송하는 통신부를 포함한다.A humanoid robot control system according to a preferred embodiment of the present invention for solving the above-described problems, by using two lenses spaced apart from each other, respectively photographing the postures of the user who wants to control the robot, the first image and the second image A photographing unit to generate a; A posture information generator for generating posture information of the user from each of the first image and the second image, and generating position information of each joint of the user from the posture information of the user; A motor control signal generator for generating a motor control signal for controlling an angle of each motor included in the humanoid robot so that the humanoid robot to be controlled displays the same posture as the user by using the position information of each joint of the user; And a communication unit for transmitting the motor control signal to the humanoid robot.

또한, 상기 촬영부는, 두 개의 렌즈가 수평 방향으로 사전에 정의된 거리 만큼 서로 이격되어, 사용자를 촬영한 제 1 영상(좌측 영상) 및 제 2 영상(우측 영상)을 생성할 수 있다.In addition, the photographing unit may generate a first image (left image) and a second image (right image) photographing a user by two lenses being spaced apart from each other by a predefined distance in the horizontal direction.

또한, 상기 자세 정보 생성부는, 상기 제 1 영상 및 상기 제 2 영상에 표현된 사용자의 자세를 추정하여, 상기 제 1 영상의 사용자의 각 관절의 위치 정보 및 상기 제 2 영상의 사용자의 각 관절의 위치 정보를 각각 생성하는 제 1 자세 추정부 및 제 2 자세 추정부; 상기 제 1 영상 및 상기 제 2 영상의 상기 각 관절의 위치 정보 각각에 대해서 노이즈를 제거하는 제 1 노이즈 제거부 및 제 2 노이즈 제거부; 및 상기 제 1 영상 및 상기 제 2 영상의 노이즈가 제거된 서로 대응되는 각 관절 위치 정보 및 이전 시점에 결정된 대응되는 각 관절의 위치 정보를 이용하여 현재 시점의 해당 관절의 위치 정보를 보정하여, 각 관절의 최종 관절 위치 정보를 생성하는 위치 보정부를 포함할 수 있다.In addition, the posture information generation unit estimates the posture of the user expressed in the first image and the second image, and provides position information of each joint of the user in the first image and the position information of each joint of the user in the second image. A first posture estimating unit and a second posture estimating unit respectively generating position information; A first noise removing unit and a second noise removing unit for removing noise from each of the position information of the joints of the first image and the second image; And correcting the position information of the corresponding joint at the current viewpoint using the position information of the joints corresponding to each other from which the noise of the first image and the second image has been removed, and the position information of the corresponding joints determined at a previous time point. It may include a position correction unit for generating the final joint position information of the joint.

또한, 상기 제 1 노이즈 제거부 및 상기 제 2 노이즈 제거부는, 각 관절의 위치 정보에 대해서 칼만(kalman) 필터링을 수행하여 노이즈 제거를 수행할 수 있다.In addition, the first noise removing unit and the second noise removing unit may perform noise removal by performing kalman filtering on position information of each joint.

또한, 상기 위치 보정부는, 상기 제 1 영상 및 상기 제 2 영상의 노이즈가 제거된 서로 대응되는 관절 위치 정보 및 이전 시점에 결정된 대응되는 관절의 위치 정보에 미디안(median) 필터링을 수행하여 해당 관절의 최종 위치 정보를 생성하여 상기 모터 제어 신호 생성부로 출력할 수 있다.In addition, the position correction unit performs median filtering on joint position information corresponding to each other from which noises of the first image and the second image are removed, and position information of the corresponding joint determined at a previous time point. Final position information may be generated and output to the motor control signal generator.

또한, 상기 모터 제어 신호 생성부는, 상기 자세 정보 생성부로부터 입력된 사용자의 각 관절의 위치 정보를 이용하여, 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록 휴머노이드 로봇에 포함되는 각 모터의 각도값을 생성하는 관절 모터 각도 생성부를 포함할 수 있다.In addition, the motor control signal generator generates an angle value of each motor included in the humanoid robot so that the humanoid robot displays the same posture as the user by using the position information of each joint of the user input from the posture information generator. It may include a joint motor angle generator.

또한, 상기 모터 제어 신호 생성부는, 상기 관절 모터 각도 생성부로부터 입력된 각 모터의 각도값과 이전 시점의 대응되는 각 모터의 각도값을 이용하여 IIR(Infinite Impulse Response) 필터링 수행하여 관절 모터 각도값을 보정하는 각도 보정부를 더 포함할 수 있다.In addition, the motor control signal generation unit performs IIR (Infinite Impulse Response) filtering by using the angle value of each motor input from the joint motor angle generation unit and the angle value of each corresponding motor at a previous point in time to perform a joint motor angle value. It may further include an angle correction unit for correcting.

한편, 상술한 과제를 해결하기 위한 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 방법은, 휴머노이드 로봇 제어 시스템에서 수행되는 휴머노이드 로봇 제어 방법으로서, (a) 서로 이격된 두 개의 렌즈를 이용하여, 로봇을 제어하고자 하는 사용자의 자세를 각각 촬영하여 제 1 영상 및 제 2 영상을 생성하는 단계; (b) 상기 제 1 영상 및 상기 제 2 영상 각각에서 사용자의 자세 정보를 생성하고, 상기 사용자의 자세 정보로부터 사용자의 각 관절의 위치 정보를 생성하는 단계; (c) 상기 사용자의 각 관절의 위치 정보를 이용하여, 제어 대상인 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록, 휴머노이드 로봇에 포함된 각 모터의 각도를 제어하는 모터 제어 신호를 생성하는 단계; 및 (d) 상기 모터 제어 신호를 휴머노이드 로봇측으로 전송하는 단계를 포함한다.Meanwhile, a humanoid robot control method according to a preferred embodiment of the present invention for solving the above-described problems is a humanoid robot control method performed in a humanoid robot control system, comprising: (a) using two lenses spaced apart from each other, a robot Generating a first image and a second image by respectively photographing a posture of a user who wants to control the user's posture; (b) generating the user's posture information from each of the first image and the second image, and generating location information of each joint of the user from the user's posture information; (c) generating a motor control signal for controlling an angle of each motor included in the humanoid robot so that the humanoid robot to be controlled displays the same posture as the user by using the position information of each joint of the user; And (d) transmitting the motor control signal to the humanoid robot.

또한, 상기 (a) 단계는, 두 개의 렌즈가 수평 방향으로 사전에 정의된 거리 만큼 서로 이격되어, 사용자를 촬영한 제 1 영상(좌측 영상) 및 제 2 영상(우측 영상)을 생성할 수 있다.In addition, in the step (a), the two lenses are spaced apart from each other by a predefined distance in the horizontal direction, so that a first image (left image) and a second image (right image) photographed by the user may be generated. .

또한, 상기 (b) 단계는, (b1) 상기 제 1 영상 및 상기 제 2 영상에 표현된 사용자의 자세를 추정하여, 상기 제 1 영상의 사용자의 각 관절의 위치 정보 및 상기 제 2 영상의 사용자의 각 관절의 위치 정보를 각각 생성하는 단계; (b2) 상기 제 1 영상 및 상기 제 2 영상의 상기 각 관절의 위치 정보 각각에 대해서 노이즈를 제거하는 단계; 및 (b3) 상기 제 1 영상 및 상기 제 2 영상의 노이즈가 제거된 서로 대응되는 각 관절 위치 정보 및 이전 시점에 결정된 대응되는 각 관절의 위치 정보를 이용하여 현재 시점의 해당 관절의 위치 정보를 보정하여, 각 관절의 최종 관절 위치 정보를 생성하는 단계를 포함할 수 있다.In addition, the step (b), (b1) by estimating the posture of the user expressed in the first image and the second image, the position information of each joint of the user of the first image and the user of the second image Generating location information of each joint of each; (b2) removing noise from each of the position information of the joints of the first image and the second image; And (b3) correcting the position information of the corresponding joint at the current time point using the position information of the joints corresponding to each other from which the noise of the first image and the second image has been removed and the position information of the corresponding joints determined at a previous time point. Thus, it may include the step of generating the final joint position information of each joint.

또한, 상기 (b2) 단계는, 각 관절의 위치 정보에 대해서 칼만(kalman) 필터링을 수행하여 노이즈 제거를 수행할 수 있다.In addition, in step (b2), noise removal may be performed by performing kalman filtering on position information of each joint.

또한, 상기 (b3) 단계는, 상기 제 1 영상 및 상기 제 2 영상의 노이즈가 제거된 서로 대응되는 관절 위치 정보 및 이전 시점에 결정된 대응되는 관절의 위치 정보에 미디안(median) 필터링을 수행하여 해당 관절의 최종 위치 정보를 생성할 수 있다.In addition, in step (b3), median filtering is performed on the joint position information corresponding to each other from which noises of the first image and the second image are removed and the position information of the corresponding joint determined at a previous time point. The final position information of the joint can be generated.

또한, 상기 (c) 단계는, (c1) 상기 (b) 단계에서 생성된 사용자의 각 관절의 위치 정보를 이용하여, 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록 휴머노이드 로봇에 포함되는 각 모터의 각도값을 생성하는 단계를 포함할 수 있다.In addition, step (c), using the position information of each joint of the user generated in step (c1) (b), the angle of each motor included in the humanoid robot so that the humanoid robot displays the same posture as the user. It may include generating a value.

또한, 상기 (c) 단계는, (c2) 상기 (c1) 단계에서 생성된 각 모터의 각도값과 이전 시점의 대응되는 각 모터의 각도값을 이용하여 IIR(Infinite Impulse Response) 필터링 수행하여 관절 모터 각도값을 보정하는 단계를 더 포함할 수 있다.In addition, in step (c), the joint motor is filtered by performing IIR (Infinite Impulse Response) filtering using the angle value of each motor generated in step (c2) and the angle value of each corresponding motor at the previous point in time. It may further include the step of correcting the angle value.

본 발명은 서로 이격된 2개의 렌즈를 통해서 사용자를 촬영하여 서로 다른 시점에서 촬영된 2개의 영상으로부터 각각 사용자의 자세를 추정하고, 추정된 자세로부터 사용자의 각 관절의 3차원 위치를 확인하고 노이즈를 제거한 후 대응되는 관절의 위치를 보정한다. 그 후, 각 관절의 3차원 위치 정보를 이용하여 이에 대응되는 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록 휴머노이드 로봇에 포함되는 각 모터의 각도를 생성하여 휴머노이드 로봇측에 제공함으로써 휴머노이드 로봇의 자세를 제어한다. 따라서, 본 발명은 깊이 센서를 이용하지 않고서도 비교적 간단한 연산을 통해서 신속하게 휴머노이드 로봇을 원격에서 안정적으로 제어할 수 있다.The present invention photographs a user through two lenses spaced apart from each other, estimates the user's posture from two images taken at different points of view, checks the three-dimensional position of each joint of the user from the estimated posture, and reduces noise. After removal, correct the position of the corresponding joint. After that, using the 3D position information of each joint, the humanoid robot's posture is controlled by generating the angle of each motor included in the humanoid robot and providing it to the humanoid robot side so that the corresponding humanoid robot shows the same posture as the user. do. Accordingly, the present invention can quickly and stably control a humanoid robot remotely through a relatively simple operation without using a depth sensor.

도 1은 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 시스템의 전체적인 구성 및 연결 관계를 도시하는 도면이다.
도 2는 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 시스템의 세부 구성을 도시하는 블록도이다.
도 3은 본 발명에 적용된 HPE(Human Pose Estimation) 방식을 이용하여 사용자의 자세를 추정한 일 예를 도시하는 도면이다.
도 4는 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 시스템의 성능을 설명하는 도면이다.
도 5는 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 방법을 설명하는 흐름도이다.
1 is a diagram showing the overall configuration and connection relationship of a humanoid robot control system according to a preferred embodiment of the present invention.
2 is a block diagram showing a detailed configuration of a humanoid robot control system according to a preferred embodiment of the present invention.
3 is a diagram illustrating an example of estimating a user's posture using the Human Pose Estimation (HPE) method applied to the present invention.
4 is a diagram illustrating the performance of a humanoid robot control system according to a preferred embodiment of the present invention.
5 is a flowchart illustrating a method of controlling a humanoid robot according to a preferred embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 설명한다.Hereinafter, exemplary embodiments of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 시스템의 전체적인 구성 및 연결 관계를 도시하는 도면이다.1 is a diagram showing the overall configuration and connection relationship of a humanoid robot control system according to a preferred embodiment of the present invention.

도 1을 참조하면, 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 시스템(이하, "로봇 제어 시스템"으로 약칭함)은, 휴머노이드 로봇(300)을 제어하고자 하는 사용자(100)가 자세를 취하면, 이를 촬영하여 제어 대상이 되는 휴머노이드 로봇(300)이 사용자와 동일한 자세를 취하도록 휴머노이드 로봇의 각 관절에 포함된 모터를 제어하기 위한 모터 제어 신호를 생성하여 무선 통신 또는 유선 통신 방식으로 휴머노이드 로봇으로 전송한다.Referring to FIG. 1, a humanoid robot control system (hereinafter, abbreviated as "robot control system") according to a preferred embodiment of the present invention, when a user 100 who wants to control the humanoid robot 300 takes a posture. , By photographing this, a motor control signal for controlling the motor included in each joint of the humanoid robot is generated so that the humanoid robot 300 as a control target takes the same posture as the user, and is used as a humanoid robot through wireless communication or wired communication. send.

휴머노이드 로봇(300)은 모터 제어 신호를 수신하고, 모터 제어 신호에 따라서 모터가 구동되어 사용자가 취하는 자세와 동일한 자세를 취하도록 구동된다.The humanoid robot 300 receives a motor control signal and drives the motor according to the motor control signal to take the same posture as the user's posture.

이러한 동작을 구현하기 위한 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 시스템(200)은, 촬영부(210), 자세 정보 생성부(220), 모터 제어 신호 생성부(230) 및 통신부(240)를 포함하여 구성된다. The humanoid robot control system 200 according to a preferred embodiment of the present invention for implementing such an operation includes a photographing unit 210, a posture information generation unit 220, a motor control signal generation unit 230, and a communication unit 240. Consists of including.

촬영부(210)는 서로 이격된 두 개의 렌즈를 이용하여, 로봇을 제어하고자 하는 사용자의 자세를 각각 촬영하여 제 1 영상(예컨대, 좌측 영상) 및 제 2 영상(예컨대, 우측 영상)을 생성하고, 이들 영상들을 자세 정보 생성부(220)로 출력한다.The photographing unit 210 generates a first image (eg, left image) and a second image (eg, right image) by photographing the posture of the user who wants to control the robot using two lenses spaced apart from each other. , These images are output to the posture information generation unit 220.

자세 정보 생성부(220)는 촬영부(210)로부터 입력된 제 1 영상 및 제 2 영상 각각에서 사용자의 자세 정보를 추정하고, 사용자의 자세 정보로부터 사용자의 관절 위치를 확인하고, 이에 대응되는 각 관절의 3차원 위치 정보를 생성하여 출력한다. 이하에서 설명될 본 발명의 바람직한 실시예에서는, 도 1에 도시된 바와 같이, 8개의 관절을 갖는 휴머노이드 로봇에 대한 제어 신호를 생성하는 예를 설명한다.The posture information generation unit 220 estimates the user’s posture information from each of the first image and the second image input from the photographing unit 210, checks the user’s joint position from the user’s posture information, and Generates and outputs 3D position information of the joint. In a preferred embodiment of the present invention to be described below, as shown in FIG. 1, an example of generating a control signal for a humanoid robot having 8 joints will be described.

모터 제어 신호 생성부(230)는 자세 정보 생성부(220)로부터 입력된 사용자의 각 관절의 3차원 위치 정보를 이용하여, 이에 대응되는 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록, 휴머노이드 로봇에 포함된 각 모터의 각도를 제어하는 모터 제어 신호를 생성하여 통신부(240)로 출력한다.The motor control signal generation unit 230 is included in the humanoid robot so that the corresponding humanoid robot displays the same posture as the user by using the 3D position information of each joint of the user input from the posture information generation unit 220. A motor control signal for controlling the angle of each motor is generated and output to the communication unit 240.

통신부(240)는 모터 제어 신호를 소정의 무선 또는 유선 통신 방식으로 휴머노이드 로봇측으로 전송한다.The communication unit 240 transmits the motor control signal to the humanoid robot through a predetermined wireless or wired communication method.

한편, 휴머노이드 로봇(300)의 통신부(310)는 모터 제어 신호를 수신하여 로봇 제어부(320)로 출력하고, 로봇 제어부(320)는 통신부(310)로부터 입력된 각 모터 제어 신호를 이용하여 대응되는 각 모터를 구동함으로써 휴머노이드 로봇이 사용자와 동일한 자세를 취하도록 한다.Meanwhile, the communication unit 310 of the humanoid robot 300 receives a motor control signal and outputs it to the robot control unit 320, and the robot control unit 320 corresponds to each motor control signal input from the communication unit 310. By driving each motor, the humanoid robot takes the same posture as the user.

도 2는 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 시스템(200)의 세부 구성을 도시하는 블록도이다.2 is a block diagram showing a detailed configuration of a humanoid robot control system 200 according to a preferred embodiment of the present invention.

도 2를 참조하면, 본 발명의 촬영부(210)는 사전에 정의된 거리 L 만큼 서로 이격된 2개의 렌즈를 구비하여, 각각의 렌즈를 통해서 서로 다른 시점에서 촬영한 제 1 영상(편의상 "좌측(L) 영상"이라 칭함) 및 제 2 영상(편의상 "우측(R) 영상"이라 칭함)을 각각 자세 정보 생성부(220)로 출력한다. 본 발명의 바람직한 실시예에서는 두 개의 렌즈가 수평 방향으로 서로 거리 L 만큼 이격된 것으로 설명하였으나, 서로 수직으로 또는 사선으로 배치되어도 무방한다.Referring to FIG. 2, the photographing unit 210 of the present invention includes two lenses spaced apart from each other by a predefined distance L, and a first image captured at different viewpoints through each lens (for convenience, "left side An (L) image") and a second image (referred to as a "right (R) image" for convenience) are output to the posture information generator 220, respectively. In a preferred embodiment of the present invention, it has been described that the two lenses are spaced apart from each other by a distance L in the horizontal direction, but may be disposed vertically or diagonally from each other.

자세 정보 생성부(220)는 제 1 자세 추정부(221-1), 제 2 자세 추정부(221-2), 제 1 노이즈 제거부(223-1), 제 2 노이즈 제거부(223-2), 및 위치 보정부(225)를 포함한다.The posture information generation unit 220 includes a first posture estimating unit 221-1, a second posture estimating unit 221-2, a first noise removing unit 223-1, and a second noise removing unit 223-2. ), and a position correction unit 225.

제 1 자세 추정부(221-1) 및 제 2 자세 추정부(221-2)는 각각 촬영부(210)로부터 제 1 영상 및 제 2 영상을 입력받고, 제 1 영상 및 제 2 영상에 표현된 사용자의 자세를 추정하여 사용자의 각 관절의 위치 정보를 제 1 노이즈 제거부(223-1)및 제 2 노이즈 제거부(223-2)로 각각 출력한다.The first posture estimating unit 221-1 and the second posture estimating unit 221-2 respectively receive a first image and a second image from the photographing unit 210, and are expressed in the first image and the second image. The user's posture is estimated and the position information of each joint of the user is output to the first noise removing unit 223-1 and the second noise removing unit 223-2, respectively.

본 발명의 바람직한 실시예에 따른 제 1 자세 추정부(221-1) 및 제 2 자세 추정부(221-2)는 공지의 자세 추정 알고리즘을 이용하여 사용자의 자세를 추정할 수 있다. 다만, 본 실시예에서는 『A. Kanazawa, M. J. Black, D. W. Jacobs, and J. Malik, "End-to-end recovery of human shape and pose," IEEE Conference on Computer Vision and Pattern Recognition, Jun. 2018.』에 기재된 HPE(Human Pose Estimation) 방식을 이용하여 사용자의 자세를 추정하고, 각 관절의 위치를 추정하였다. 도 3은 본 발명에 적용된 HPE(Human Pose Estimation) 방식을 이용하여 사용자의 자세를 추정한 일 예를 도시하는 도면이다.The first posture estimating unit 221-1 and the second posture estimating unit 221-2 according to a preferred embodiment of the present invention may estimate a user's posture using a known posture estimation algorithm. However, in this embodiment, "A. Kanazawa, MJ Black, DW Jacobs, and J. Malik, "End-to-end recovery of human shape and pose," IEEE Conference on Computer Vision and Pattern Recognition, Jun. 2018.』, the user's posture was estimated and the position of each joint was estimated using the HPE (Human Pose Estimation) method. 3 is a diagram illustrating an example of estimating a user's posture using the Human Pose Estimation (HPE) method applied to the present invention.

이러한 HPE 방식을 도 1(a)에 도시된 8개의 관절을 갖는 휴머노이드 로봇에 적용하면, 제 1 자세 추정부(221-1) 및 제 2 자세 추정부(221-2)가 출력하는 시간 t에, j 번째 관절의 위치 정보는

Figure pat00001
로 표현된다. 이 때 V는 좌측 영상(L) 또는 우측 영상(R)(V={L,R})을 나타내고, j는 각 관절의 식별번호를 나타낸다(
Figure pat00002
).When this HPE method is applied to a humanoid robot having eight joints shown in FIG. 1(a), the first posture estimating unit 221-1 and the second posture estimating unit 221-2 output time t , The location information of the j-th joint is
Figure pat00001
It is expressed as At this time, V represents the left image (L) or the right image (R) (V={L,R}), and j represents the identification number of each joint (
Figure pat00002
).

한편, 제 1 노이즈 제거부(223-1)는 제 1 자세 추정부(221-1)로부터 좌측 영상(제 1 영상)에서 추정된 사용자 관절의 위치 정보

Figure pat00003
를 입력받고, 제 2 노이즈 제거부(223-2)는 제 2 자세 추정부(221-2)로부터 우측 영상(제 2 영상)에서 추정된 사용자 관절의 위치 정보
Figure pat00004
를 입력받아, 해당 관절의 위치 정보에 포함된 노이즈를 제거한 후, 노이즈가 제거된 관절의 위치 정보를 위치 보정부(225)로 출력한다. On the other hand, the first noise removing unit 223-1 is the position information of the user joint estimated from the left image (first image) from the first posture estimating unit 221-1
Figure pat00003
Is input, and the second noise removing unit 223-2 determines the position information of the user's joint estimated from the right image (the second image) from the second posture estimating unit 221-2
Figure pat00004
Is received, noise included in the position information of the corresponding joint is removed, and then the position information of the joint from which the noise is removed is output to the position correction unit 225.

이 때, 제 1 노이즈 제거부(223-1) 및 제 2 노이즈 제거부(223-2)는 다양한 노이즈 필터링 알로리즘을 적용하여 관절의 위치 정보에 포함된 노이즈를 제거할 수 있는데, 본 발명의 바람직한 실시예에서는 칼만 필터를 아래의 수학식 1과 같이, 각 관절의 위치 정보에 적용하여 노이즈를 제거한다.In this case, the first noise removing unit 223-1 and the second noise removing unit 223-2 may remove noise included in the joint position information by applying various noise filtering algorithms. In a preferred embodiment, the Kalman filter is applied to position information of each joint as shown in Equation 1 below to remove noise.

Figure pat00005
Figure pat00005

상기 수학식 1에서

Figure pat00006
는 시간 t 에서의 좌측 영상 및 및 우측 영상의 각 관절의 위치 정보를 나타내고,
Figure pat00007
는 칼만 필터링을 통해서 노이즈가 제거된 관절의 위치 정보를 나타낸다.In Equation 1 above
Figure pat00006
Represents the location information of each joint in the left image and the right image at time t,
Figure pat00007
Represents the location information of the joint from which noise has been removed through Kalman filtering.

위치 보정부(225)는 제 1 노이즈 제거부(223-1) 및 제 2 노이즈 제거부(223-2)로부터 입력된 제 1 영상(좌측 영상) 및 제 2 영상(우측 영상)의 서로 대응되는 각 관절 위치 정보(

Figure pat00008
) 및 이전 시점(t-1)에 위치 보정부(225)에서 결정된 대응되는 각 관절의 위치 정보를 이용하여 현재 시점(t)의 해당 관절의 위치 정보를 보정하여, 최종 관절 위치 정보를 생성하여 모터 제어 신호 생성부(230)로 출력한다. The position correction unit 225 corresponds to each other of the first image (left image) and the second image (right image) input from the first noise removing unit 223-1 and the second noise removing unit 223-2. Position information of each joint (
Figure pat00008
) And the position information of the corresponding joint determined by the position correction unit 225 at the previous time point (t-1), correcting the position information of the corresponding joint at the current time point (t), and generating the final joint position information. Output to the motor control signal generator 230.

이를 위해서, 본 발명의 바람직한 실시예에 따른 위치 보정부(225)는 아래의 수학식 2에 따라서 미디안(median) 필터를 이용하였다.To this end, the position correction unit 225 according to a preferred embodiment of the present invention uses a median filter according to Equation 2 below.

Figure pat00009
Figure pat00009

상기 수학식 2에서 알 수 있는 바와 같이, 미디안 필터는 입력 값의 각 차원 별로 중간 값을 반환하는 필터를 의미하며,

Figure pat00010
은 칼만필터 적용 후 미디안필터를 적용시켜 구해진 관절의 위치 정보를 의미한다. As can be seen in Equation 2, the median filter refers to a filter that returns an intermediate value for each dimension of an input value,
Figure pat00010
Denotes the position information of the joint obtained by applying the Kalman filter and then applying the median filter.

상기 수학식 2에서 주의할 점은, 좌측 영상의 관절 위치 정보(

Figure pat00011
)와 우측 영상의 관절 위치 정보(
Figure pat00012
) 외에, 이전 시간(t-1)에 미디언 필터를 통해서 얻은 최종적인 관절의 위치 정보(
Figure pat00013
)를 다시 미디안필터에 적용하는 것으로, 이는 좌측 영상에서 추정된 관절의 위치 정보와 우측 영상에서 추정된 관절의 위치 정보가 서로 다른 위치를 나타낼 때 생기는 사용자 자세의 글리치(glitch)를 제거해주는 역할을 한다. 또한, 두 자세가 동일한 형태로 변화할 때, 좀 더 느리게 변화를 유도하는 것으로 볼 수 있으며, 이는 안정적인 로봇의 동작 제어에 기여한다.Note that in Equation 2, the joint position information of the left image (
Figure pat00011
) And joint position information in the right image (
Figure pat00012
), the final joint position information obtained through the median filter at the previous time (t-1) (
Figure pat00013
) Is again applied to the median filter, which removes glitches in the user posture that occur when the position information of the joint estimated from the left image and the position information of the joint estimated from the right image indicate different positions. do. In addition, when the two postures change into the same form, it can be seen that the change is induced more slowly, which contributes to the stable motion control of the robot.

한편, 모터 제어 신호 생성부(230)는 위치 보정부(225)로부터 입력된 사용자의 각 관절의 3차원 위치 정보를 이용하여, 제어 대상인 휴머노이드 로봇(300)이 사용자와 동일한 자세를 나타내도록, 휴머노이드 로봇(300)에 포함된 각 모터의 각도를 제어하는 모터 제어 신호를 생성하여 통신부(240)로 출력한다.On the other hand, the motor control signal generation unit 230 uses the 3D position information of each joint of the user input from the position correction unit 225, so that the humanoid robot 300 as a control target represents the same posture as the user, A motor control signal for controlling the angle of each motor included in the robot 300 is generated and output to the communication unit 240.

이를 위해서, 모터 제어 신호 생성부(230)는 관절 모터 각도 생성부(231) 및 각도 보정부(233)를 포함한다.To this end, the motor control signal generation unit 230 includes a joint motor angle generation unit 231 and an angle correction unit 233.

먼저, 관절 모터 각도 생성부(231)는 입력된 각 관절의 3차원 위치 정보를 이용하여 이에 대응되는 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록 휴머노이드 로봇에 포함되는 각 모터의 각도를 계산하여 각도 보정부(233)로 출력한다. 이를 위해서 본 발명의 바람직한 실시예에 따른 관절 모터 각도 생성부(231)는 아래의 수학식 3에 따라서 도 1(b)에 도시된 휴머노이드 로봇(LIMS)에 포함된 각 모터의 각도값들(Qt)을 생성한다.First, the joint motor angle generator 231 calculates the angle of each motor included in the humanoid robot so that the corresponding humanoid robot displays the same posture as the user using the input 3D position information of each joint. Output to the government 233. To this end, the joint motor angle generator 231 according to a preferred embodiment of the present invention includes the angle values Q of each motor included in the humanoid robot LIMS shown in FIG. 1(b) according to Equation 3 below. t ).

Figure pat00014
Figure pat00014

수학식 3에서 J2Q()는 휴머노이드 로봇에 특화된 Q 연산 함수를 나타낸다.In Equation 3, J2Q() represents a Q operation function specialized for humanoid robots.

여기서, Φ1 내지 Φ3 는 도 1(b)에 도시된 LIMS 로봇의 좌측 및 우측 어깨에 설치된 모터를 나타내고, Φ4는 도 1(b)에 도시된 LIMS 로봇의 좌측 및 우측 팔꿈치에 설치된 모터를 나타내며, 각각의 모터는 Qt 에 포함된 각 모터의 각도값들에 따라서 구동된다. 휴머노이드 로봇에 특화된 Q 연산 함수를 이용하여 모터의 각도를 계산하는 방법은 익히 알려진 것이므로 구체적인 설명은 생략한다.Here, Φ1 to Φ3 denote motors installed on the left and right shoulders of the LIMS robot shown in Fig. 1(b), and Φ4 denotes motors installed on the left and right elbows of the LIMS robot shown in Fig. 1(b), Each motor is driven according to the angle values of each motor included in Q t. Since the method of calculating the angle of the motor using the Q operation function specialized for humanoid robots is well known, a detailed description will be omitted.

한편, 각도 보정부(233)는 관절 모터 각도 생성부(231)로부터 입력된 현재 시점 t의 각 모터의 각도값들(Qt)을, 이전 시점 t-1에서 결정된 각 모터의 각도값들을 이용하여 보정함으로써, 노이즈 및 오류를 보정하여 최종적으로 휴머노이드 로봇에 포함된 모터들을 제어할 모터 제어 신호를 생성하여 통신부(240)로 출력한다. On the other hand, the angle correction unit 233 uses the angle values (Q t ) of each motor at the current time t input from the joint motor angle generator 231 and the angle values of each motor determined at the previous time t-1. By performing correction, noise and errors are corrected, and a motor control signal to finally control the motors included in the humanoid robot is generated and output to the communication unit 240.

관절 모터 각도 생성부(231)로부터 입력된 현재 시점 t의 각 모터의 각도값들(Qt)은, 휴머노이드 로봇을 제어할 때 급격한 변위를 발생시킴으로써 심각한 문제를 초래할 수 있는 불연속적인 각도값들을 포함할 수 있다. 따라서, 각도 보정부(233)는 연속적인 모터의 움직임을 보장하기 위해서, 관절 모터 각도 생성부(231)로부터 입력된 현재 시점 t의 각 모터의 각도값들(Qt)을, 이전 시점 t-1에서 결정된 각 모터의 각도값들을 이용하여 보정한다. The angle values (Q t ) of each motor at the current time t input from the joint motor angle generator 231 include discontinuous angle values that can cause serious problems by generating a sudden displacement when controlling a humanoid robot. can do. Accordingly, the angle correction unit 233 calculates the angle values Q t of each motor at the current time t input from the joint motor angle generator 231 to ensure the continuous motion of the motor, and the previous time t- Correct using the angle values of each motor determined in 1.

본 발명의 바람직한 실시예에서, 각도 보정부(233)는 아래의 수학식 4와 같이 IIR 필터(Infinite Impulse Response filter)를 이용하여 불연속적인 모터 각도값들을 제거함으로써 각 모터의 각도를 보정하였다.In a preferred embodiment of the present invention, the angle correction unit 233 corrects the angle of each motor by removing discontinuous motor angle values using an Infinite Impulse Response filter (IIR) as shown in Equation 4 below.

Figure pat00015
Figure pat00015

본 발명의 바람직한 실시예에서, 상기 수학식 4의 감쇄 계수 α는 0.05로 설정하였고,

Figure pat00016
이 휴머노이드 로봇의 모터 제어 신호로서 통신부(240)를 통해서 휴머노이드 로봇으로 전송된다. In a preferred embodiment of the present invention, the attenuation coefficient α of Equation 4 is set to 0.05,
Figure pat00016
As a motor control signal of the humanoid robot, it is transmitted to the humanoid robot through the communication unit 240.

도 4는 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 시스템의 성능을 설명하는 도면이다.4 is a diagram illustrating the performance of a humanoid robot control system according to a preferred embodiment of the present invention.

도 4에 도시된 예를 참조하면, 우측 4번째 모터(

Figure pat00017
)의 각도 변화를 도시하였다. 상기한 종래의 HPE(Human Pose Estimation) 방식에 따라서만 계산된 각도는 파란색으로, 본 발명의 제 1 및 제 2 노이즈 제거부(223-1,223-2)에서 칼만 필터링되고 위치 보정부(225)에서 미디안 필터링되었으나 각도 보정부(233)에서 IIR 필터링되지 않은 각도는 하늘색으로, 본 발명에 따라서 최종적으로 생성된 각도는 빨간색으로 각각 도시하였다.Referring to the example shown in Fig. 4, the right fourth motor (
Figure pat00017
) Of the angle change is shown. The angle calculated only according to the conventional HPE (Human Pose Estimation) method is blue, and Kalman is filtered by the first and second noise removal units 223-1 and 223-2 of the present invention, and the position correction unit 225 Angles that are median filtered but not IIR filtered by the angle correction unit 233 are shown in light blue, and angles finally generated according to the present invention are shown in red.

도 4를 참조하면, 종래기술에 따른 경우 모터의 각도가 급격하게 변화하는 것을 것을 알 수 있고, 본 발명에 따른 경우에는 각도가 자연스럽게 연속적으로 변화하는 것을 알 수 있다.Referring to FIG. 4, it can be seen that the angle of the motor changes rapidly in the case of the prior art, and it can be seen that the angle changes naturally and continuously in the case of the present invention.

아울러, 도 4의 아래에는, 시점 t=1190 및 시점 t=1575에 각각 사용자를 촬영한 영상과, 각 시점에서 종래 기술에 따라서 추정된 자세를 이용하여 제어된 휴머노이드 로봇의 자세(Initial Pose) 및 본 발명에 따라서 제어된 휴머노이드 로봇의 자세(Refined Pose)를 도시하였다. 도시된 바와 같이, 본 발명에 따라서 제어된 휴머노이드 로봇의 자세가 종래기술에 비하여 훨씬 정확하며, 휴머노이드 로봇의 원격 제어에 적합함을 알 수 있다.In addition, in the lower part of FIG. 4, an image of a user photographed at a time point t=1190 and a time point t=1575, respectively, and an initial pose of a humanoid robot controlled using a posture estimated according to the prior art at each time point, and It shows the posture (Refined Pose) of the humanoid robot controlled according to the present invention. As shown, it can be seen that the posture of the humanoid robot controlled according to the present invention is much more accurate than that of the prior art, and is suitable for remote control of the humanoid robot.

지금까지 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 시스템(200)에 대해서 설명하였다. So far, the humanoid robot control system 200 according to a preferred embodiment of the present invention has been described.

도 5는 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 방법을 설명하는 흐름도이다. 5 is a flowchart illustrating a method of controlling a humanoid robot according to a preferred embodiment of the present invention.

이하에서는, 도 5를 참조하여, 본 발명의 바람직한 실시예에 따른 휴머노이드 로봇 제어 방법을 설명한다. 다만, 후술하는 휴머노이드 로봇 제어 방법은 모두 전술한 휴머노이드 로봇 제어 시스템(200)에서 수행되는 것이므로, 그 기능이 동일하다. 따라서, 별도의 반대되는 설명이 없는 한, 도 1 내지 도 4를 참조하여 설명한 기능들은 본 발명의 휴머노이드 로봇 제어 방법에서 그대로 적용되며, 이하에서는, 설명의 중복을 피하기 위해서, 본 방법의 전체적인 흐름만을 설명하고, 구체적인 기능은 전술한 휴머노이드 로봇 제어 시스템(200)의 기능을 참고해야 한다.Hereinafter, a method for controlling a humanoid robot according to a preferred embodiment of the present invention will be described with reference to FIG. 5. However, since all humanoid robot control methods described below are performed by the above-described humanoid robot control system 200, their functions are the same. Therefore, unless otherwise stated to the contrary, the functions described with reference to FIGS. 1 to 4 are applied as they are in the humanoid robot control method of the present invention. Hereinafter, in order to avoid duplication of description, only the overall flow of the method is It will be described, and specific functions should refer to the functions of the humanoid robot control system 200 described above.

먼저, 본 발명의 휴머노이드 로봇 제어 방법에서, 휴머노이드 로봇 제어 시스템(200)은 내부의 서로 이격된 두 개의 렌즈로 사용자를 촬영하여 제 1 영상(좌측 영상) 및 제 2 영상(우측 영상)을 각각 생성한다(S510).First, in the humanoid robot control method of the present invention, the humanoid robot control system 200 generates a first image (left image) and a second image (right image) by photographing a user with two lenses spaced apart from each other inside. Do (S510).

그 후, 휴머노이드 로봇 제어 시스템(200)은 제 1 영상 및 제 2 영상 각각에서 사용자의 자세를 추정하고, 제 1 영상에서 추정된 사용자의 각 관절의 위치 정보 및 제 2 영상에서 추정된 사용자의 각 관절의 위치 정보를 생성한다(S520).Then, the humanoid robot control system 200 estimates the user's posture from each of the first image and the second image, and estimates the position information of each joint of the user estimated from the first image and the user's angle estimated from the second image. The position information of the joint is generated (S520).

다음으로, 휴머노이드 로봇 제어 시스템(200)은 제 1 영상 및 제 2 영상의 각 관절 위치 정보에 포함된 노이즈 제거한다(S530). 이를 위해서, 본 발명이 각 관절 위치 정보에 대해서 칼만 필터링을 수행함은 상술한 바와 같다.Next, the humanoid robot control system 200 removes noise included in the joint position information of the first image and the second image (S530). To this end, it is as described above that the present invention performs Kalman filtering on each joint position information.

그 후, 휴머노이드 로봇 제어 시스템(200)은 제 1 영상 및 제 2 영상으로부터 획득된 서로 대응되는 각 관절의 위치 정보 및 이전 시점에 결정된 서로 대응되는 각 관절의 위치 정보를 이용하여 현재 시점의 관절의 해당 위치 정보를 보정하여 최종 관절 위치 정보를 생성한다(S540). 이 과정에서, 본 발명의 바람직한 실시예가 미디안 필터를 적용함은 상술한 바와 같다.Thereafter, the humanoid robot control system 200 uses the position information of the joints corresponding to each other acquired from the first image and the second image, and the position information of the joints corresponding to each other determined at a previous point in time. Final joint position information is generated by correcting the corresponding position information (S540). In this process, it is as described above that the preferred embodiment of the present invention applies the median filter.

그 다음으로, 휴머노이드 로봇 제어 시스템(200)은 각 관절의 최종 3차원 위치 정보를 이용하여 제어 대상인 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록 휴머노이드 로봇에 포함되는 각 모터의 각도를 계산한다(S550).Next, the humanoid robot control system 200 calculates the angle of each motor included in the humanoid robot so that the humanoid robot to be controlled displays the same posture as the user by using the final 3D position information of each joint (S550). .

그 후, 로봇의 급격한 이동을 방지하기 위해서, 현재 시점의 각 모터의 각도값들을, 이전 시점에서 결정된 각 모터의 각도값들을 이용하여 보정하여 최종적으로 휴머노이드 로봇에 포함된 모터들을 제어할 모터 제어 신호를 생성하여 휴머노이드 로봇측으로 전송한다(S560).After that, in order to prevent rapid movement of the robot, the motor control signal that will finally control the motors included in the humanoid robot by correcting the angle values of each motor at the current time using the angle values of each motor determined at the previous time. Is generated and transmitted to the humanoid robot (S560).

모터 제어 신호를 수신한 휴머노이드 로봇은 모터 제어 신호에 따라서 휴머노이드 로봇에 포함된 각 모터를 구동하여 사용자가 취하는 자세를 취하도록 제어된다(S570). The humanoid robot receiving the motor control signal is controlled to take a posture taken by the user by driving each motor included in the humanoid robot according to the motor control signal (S570).

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far, the present invention has been looked at around its preferred embodiments. Those of ordinary skill in the art to which the present invention pertains will be able to understand that the present invention may be implemented in a modified form without departing from the essential characteristics of the present invention. Therefore, the disclosed embodiments should be considered from an illustrative point of view rather than a limiting point of view. The scope of the present invention is shown in the claims rather than the above description, and all differences within the scope equivalent thereto should be construed as being included in the present invention.

100:사용자
200:휴머노이드 로봇 제어 시스템
210:촬영부
220:자세 정보 생성부
221-1:제 1 자세 추정부 221-2:제 1 자세 추정부
223-1:제 1 노이즈 제거부 223-2:제 2 노이즈 제거부
225:위치 보정부
230:모서 제어 신호 생성부
231:관절 모터 각도 생성부 233:각도 보정부
240:통신부
300:휴머노이드 로봇
310:통신부
320:로봇 제어부
100: user
200: Humanoid robot control system
210: photographing department
220: posture information generation unit
221-1: first posture estimating unit 221-2: first posture estimating unit
223-1: first noise removing unit 223-2: second noise removing unit
225: position correction unit
230: a corner control signal generation unit
231: joint motor angle generation unit 233: angle correction unit
240: Ministry of Communications
300: Humanoid robot
310: Ministry of Communications
320: robot control unit

Claims (14)

서로 이격된 두 개의 렌즈를 이용하여, 로봇을 제어하고자 하는 사용자의 자세를 각각 촬영하여 제 1 영상 및 제 2 영상을 생성하는 촬영부;
상기 제 1 영상 및 상기 제 2 영상 각각으로부터 사용자의 자세 정보를 생성하고, 상기 사용자의 자세 정보로부터 사용자의 각 관절의 위치 정보를 생성하는 자세 정보 생성부;
상기 사용자의 각 관절의 위치 정보를 이용하여, 제어 대상인 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록, 휴머노이드 로봇에 포함된 각 모터의 각도를 제어하는 모터 제어 신호를 생성하는 모터 제어 신호 생성부; 및
상기 모터 제어 신호를 휴머노이드 로봇측으로 전송하는 통신부를 포함하는 것을 특징으로 하는 휴머노이드 로봇 제어 시스템.
A photographing unit for generating a first image and a second image by photographing a posture of a user who wants to control the robot using two lenses spaced apart from each other;
A posture information generator for generating posture information of the user from each of the first image and the second image, and generating position information of each joint of the user from the posture information of the user;
A motor control signal generator for generating a motor control signal for controlling an angle of each motor included in the humanoid robot so that the humanoid robot to be controlled displays the same posture as the user by using the position information of each joint of the user; And
And a communication unit for transmitting the motor control signal to a humanoid robot.
제 1 항에 있어서, 상기 촬영부는
두 개의 렌즈가 수평 방향으로 사전에 정의된 거리 만큼 서로 이격되어, 사용자를 촬영한 제 1 영상(좌측 영상) 및 제 2 영상(우측 영상)을 생성하는 것을 특징으로 하는 휴머노이드 로봇 제어 시스템.
The method of claim 1, wherein the photographing unit
A humanoid robot control system, characterized in that the two lenses are spaced apart from each other by a predefined distance in a horizontal direction to generate a first image (left image) and a second image (right image) photographing a user.
제 1 항에 있어서, 상기 자세 정보 생성부는
상기 제 1 영상 및 상기 제 2 영상에 표현된 사용자의 자세를 추정하여, 상기 제 1 영상의 사용자의 각 관절의 위치 정보 및 상기 제 2 영상의 사용자의 각 관절의 위치 정보를 각각 생성하는 제 1 자세 추정부 및 제 2 자세 추정부;
상기 제 1 영상 및 상기 제 2 영상의 상기 각 관절의 위치 정보 각각에 대해서 노이즈를 제거하는 제 1 노이즈 제거부 및 제 2 노이즈 제거부; 및
상기 제 1 영상 및 상기 제 2 영상의 노이즈가 제거된 서로 대응되는 각 관절 위치 정보 및 이전 시점에 결정된 대응되는 각 관절의 위치 정보를 이용하여 현재 시점의 해당 관절의 위치 정보를 보정하여, 각 관절의 최종 관절 위치 정보를 생성하는 위치 보정부를 포함하는 것을 특징으로 하는 휴머노이드 로봇 제어 시스템.
The method of claim 1, wherein the posture information generation unit
A first for estimating the user's postures expressed in the first image and the second image, and generating position information of each joint of the user in the first image and position information of each joint of the user in the second image, respectively. A posture estimating unit and a second posture estimating unit;
A first noise removing unit and a second noise removing unit for removing noise from each of the position information of the joints of the first image and the second image; And
By correcting the position information of the corresponding joint at the current time point by using the position information of the joints corresponding to each other from which the noise of the first image and the second image has been removed and the position information of the corresponding joints determined at a previous time point, each joint Humanoid robot control system comprising a position correction unit for generating the final joint position information of.
제 3 항에 있어서,
상기 제 1 노이즈 제거부 및 상기 제 2 노이즈 제거부는
각 관절의 위치 정보에 대해서 칼만(kalman) 필터링을 수행하여 노이즈 제거를 수행하는 것을 특징으로 하는 휴머노이드 로봇 제어 시스템.
The method of claim 3,
The first noise removing unit and the second noise removing unit
A humanoid robot control system, characterized in that noise removal is performed by performing kalman filtering on position information of each joint.
제 3 항에 있어서, 상기 위치 보정부는
상기 제 1 영상 및 상기 제 2 영상의 노이즈가 제거된 서로 대응되는 관절 위치 정보 및 이전 시점에 결정된 대응되는 관절의 위치 정보에 미디안(median) 필터링을 수행하여 해당 관절의 최종 위치 정보를 생성하여 상기 모터 제어 신호 생성부로 출력하는 것을 특징으로 하는 휴머노이드 로봇 제어 시스템.
The method of claim 3, wherein the position correction unit
By performing median filtering on the joint position information corresponding to each other from which noise of the first image and the second image has been removed, and the position information of the corresponding joint determined at a previous point in time, the final position information of the corresponding joint is generated. Humanoid robot control system, characterized in that output to the motor control signal generating unit.
제 1 항에 있어서, 상기 모터 제어 신호 생성부는
상기 자세 정보 생성부로부터 입력된 사용자의 각 관절의 위치 정보를 이용하여, 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록 휴머노이드 로봇에 포함되는 각 모터의 각도값을 생성하는 관절 모터 각도 생성부를 포함하는 것을 특징으로 하는 휴머노이드 로봇 제어 시스템.
The method of claim 1, wherein the motor control signal generation unit
Including a joint motor angle generator for generating an angle value of each motor included in the humanoid robot so that the humanoid robot represents the same posture as the user by using the position information of each joint of the user input from the posture information generator. Humanoid robot control system characterized by.
제 6 항에 있어서, 상기 모터 제어 신호 생성부는
상기 관절 모터 각도 생성부로부터 입력된 각 모터의 각도값과 이전 시점의 대응되는 각 모터의 각도값을 이용하여 IIR(Infinite Impulse Response) 필터링 수행하여 관절 모터 각도값을 보정하는 각도 보정부를 더 포함하는 것을 특징으로 하는 휴머노이드 로봇 제어 시스템.
The method of claim 6, wherein the motor control signal generator
Further comprising an angle correction unit for correcting the joint motor angle value by performing IIR (Infinite Impulse Response) filtering using the angle value of each motor input from the joint motor angle generator and the angle value of each motor at a previous time point. Humanoid robot control system, characterized in that.
휴머노이드 로봇 제어 시스템에서 수행되는 휴머노이드 로봇 제어 방법으로서,
(a) 서로 이격된 두 개의 렌즈를 이용하여, 로봇을 제어하고자 하는 사용자의 자세를 각각 촬영하여 제 1 영상 및 제 2 영상을 생성하는 단계;
(b) 상기 제 1 영상 및 상기 제 2 영상 각각에서 사용자의 자세 정보를 생성하고, 상기 사용자의 자세 정보로부터 사용자의 각 관절의 위치 정보를 생성하는 단계;
(c) 상기 사용자의 각 관절의 위치 정보를 이용하여, 제어 대상인 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록, 휴머노이드 로봇에 포함된 각 모터의 각도를 제어하는 모터 제어 신호를 생성하는 단계; 및
(d) 상기 모터 제어 신호를 휴머노이드 로봇측으로 전송하는 단계를 포함하는 것을 특징으로 하는 휴머노이드 로봇 제어 방법.
As a humanoid robot control method performed in a humanoid robot control system,
(a) generating a first image and a second image by photographing a posture of a user who wants to control the robot using two lenses spaced apart from each other;
(b) generating the user's posture information from each of the first image and the second image, and generating location information of each joint of the user from the user's posture information;
(c) generating a motor control signal for controlling an angle of each motor included in the humanoid robot so that the humanoid robot to be controlled displays the same posture as the user by using the position information of each joint of the user; And
(d) transmitting the motor control signal to the humanoid robot.
제 8 항에 있어서, 상기 (a) 단계는
두 개의 렌즈가 수평 방향으로 사전에 정의된 거리 만큼 서로 이격되어, 사용자를 촬영한 제 1 영상(좌측 영상) 및 제 2 영상(우측 영상)을 생성하는 것을 특징으로 하는 휴머노이드 로봇 제어 방법.
The method of claim 8, wherein step (a) is
A method for controlling a humanoid robot, characterized in that two lenses are spaced apart from each other by a predefined distance in a horizontal direction to generate a first image (left image) and a second image (right image) photographing a user.
제 8 항에 있어서, 상기 (b) 단계는
(b1) 상기 제 1 영상 및 상기 제 2 영상에 표현된 사용자의 자세를 추정하여, 상기 제 1 영상의 사용자의 각 관절의 위치 정보 및 상기 제 2 영상의 사용자의 각 관절의 위치 정보를 각각 생성하는 단계;
(b2) 상기 제 1 영상 및 상기 제 2 영상의 상기 각 관절의 위치 정보 각각에 대해서 노이즈를 제거하는 단계; 및
(b3) 상기 제 1 영상 및 상기 제 2 영상의 노이즈가 제거된 서로 대응되는 각 관절 위치 정보 및 이전 시점에 결정된 대응되는 각 관절의 위치 정보를 이용하여 현재 시점의 해당 관절의 위치 정보를 보정하여, 각 관절의 최종 관절 위치 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 휴머노이드 로봇 제어 방법.
The method of claim 8, wherein step (b) is
(b1) By estimating the posture of the user expressed in the first image and the second image, position information of each joint of the user in the first image and position information of each joint of the user in the second image are respectively generated. The step of doing;
(b2) removing noise from each of the position information of the joints of the first image and the second image; And
(b3) By correcting the position information of the corresponding joint at the current point of view using the position information of the joints corresponding to each other from which the noise of the first image and the second image has been removed, and the position information of the corresponding joints determined at a previous point in time. , Humanoid robot control method comprising the step of generating the final joint position information of each joint.
제 10 항에 있어서, 상기 (b2) 단계는
각 관절의 위치 정보에 대해서 칼만(kalman) 필터링을 수행하여 노이즈 제거를 수행하는 것을 특징으로 하는 휴머노이드 로봇 제어 방법.
The method of claim 10, wherein the step (b2) is
A method for controlling a humanoid robot, characterized in that noise removal is performed by performing Kalman filtering on position information of each joint.
제 10 항에 있어서, 상기 (b3) 단계는
상기 제 1 영상 및 상기 제 2 영상의 노이즈가 제거된 서로 대응되는 관절 위치 정보 및 이전 시점에 결정된 대응되는 관절의 위치 정보에 미디안(median) 필터링을 수행하여 해당 관절의 최종 위치 정보를 생성하는 것을 특징으로 하는 휴머노이드 로봇 제어 방법.
The method of claim 10, wherein step (b3) is
Generating final position information of a corresponding joint by performing median filtering on joint position information corresponding to each other from which noise of the first image and the second image has been removed, and position information of a corresponding joint determined at a previous time point. Humanoid robot control method characterized in that.
제 8 항에 있어서, 상기 (c) 단계는
(c1) 상기 (b) 단계에서 생성된 사용자의 각 관절의 위치 정보를 이용하여, 휴머노이드 로봇이 사용자와 동일한 자세를 나타내도록 휴머노이드 로봇에 포함되는 각 모터의 각도값을 생성하는 단계를 포함하는 것을 특징으로 하는 휴머노이드 로봇 제어 방법.
The method of claim 8, wherein step (c) is
(c1) using the position information of each joint of the user generated in step (b), including the step of generating an angle value of each motor included in the humanoid robot so that the humanoid robot represents the same posture as the user. Humanoid robot control method characterized in that.
제 13 항에 있어서, 상기 (c) 단계는
(c2) 상기 (c1) 단계에서 생성된 각 모터의 각도값과 이전 시점의 대응되는 각 모터의 각도값을 이용하여 IIR(Infinite Impulse Response) 필터링 수행하여 관절 모터 각도값을 보정하는 단계를 더 포함하는 것을 특징으로 하는 휴머노이드 로봇 제어 방법.
The method of claim 13, wherein step (c) is
(c2) Compensating the joint motor angle value by performing IIR (Infinite Impulse Response) filtering using the angle value of each motor generated in step (c1) and the angle value of each motor corresponding to the previous time point. Humanoid robot control method, characterized in that.
KR1020190125451A 2019-10-10 2019-10-10 Control system and method for humanoid robot KR102335926B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190125451A KR102335926B1 (en) 2019-10-10 2019-10-10 Control system and method for humanoid robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190125451A KR102335926B1 (en) 2019-10-10 2019-10-10 Control system and method for humanoid robot

Publications (2)

Publication Number Publication Date
KR20210042644A true KR20210042644A (en) 2021-04-20
KR102335926B1 KR102335926B1 (en) 2021-12-03

Family

ID=75743249

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190125451A KR102335926B1 (en) 2019-10-10 2019-10-10 Control system and method for humanoid robot

Country Status (1)

Country Link
KR (1) KR102335926B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113492404A (en) * 2021-04-21 2021-10-12 北京科技大学 Humanoid robot action mapping control method based on machine vision

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019000918A (en) * 2017-06-12 2019-01-10 日立Geニュークリア・エナジー株式会社 System and method for controlling arm attitude of working robot
WO2019059364A1 (en) * 2017-09-22 2019-03-28 三菱電機株式会社 Remote control manipulator system and control device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019000918A (en) * 2017-06-12 2019-01-10 日立Geニュークリア・エナジー株式会社 System and method for controlling arm attitude of working robot
WO2019059364A1 (en) * 2017-09-22 2019-03-28 三菱電機株式会社 Remote control manipulator system and control device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113492404A (en) * 2021-04-21 2021-10-12 北京科技大学 Humanoid robot action mapping control method based on machine vision
CN113492404B (en) * 2021-04-21 2022-09-30 北京科技大学 Humanoid robot action mapping control method based on machine vision

Also Published As

Publication number Publication date
KR102335926B1 (en) 2021-12-03

Similar Documents

Publication Publication Date Title
JP6587761B2 (en) Position control device and position control method
JP6376296B1 (en) Position control device and position control method
CN105425795B (en) Method and device for planning optimal following path
JP3994950B2 (en) Environment recognition apparatus and method, path planning apparatus and method, and robot apparatus
US8265791B2 (en) System and method for motion control of humanoid robot
Mariottini et al. Image-based visual servoing for nonholonomic mobile robots using epipolar geometry
JP6458912B1 (en) Position control device and position control method
CN106708048B (en) Ceiling image positioning method and system for robot
CN112634318B (en) Teleoperation system and method for underwater maintenance robot
JP2016540211A (en) Multi-sensor fusion for stable autonomous flight in indoor and outdoor environments on a rotary airfoil (MAV)
JP2013132748A (en) Moving device and method for recognizing position of the same
CN105844692A (en) Binocular stereoscopic vision based 3D reconstruction device, method, system and UAV
JP7431025B2 (en) Ego motion information estimation device and method
KR102335926B1 (en) Control system and method for humanoid robot
Tarrio et al. Realtime edge based visual inertial odometry for MAV teleoperation in indoor environments
CN113927602A (en) Robot precision assembly control method and system based on visual and tactile fusion
US20100246893A1 (en) Method and Apparatus for Nonlinear Dynamic Estimation of Feature Depth Using Calibrated Moving Cameras
US20220050454A1 (en) Delayed Telop Aid
Xu et al. Point-cloud-based model-mediated teleoperation
Cao et al. Adaptive dynamic surface control for vision-based stabilization of an uncertain electrically driven nonholonomic mobile robot
CN111367291B (en) Self-obstacle surmounting robot and control method
Berti et al. Kalman filter for tracking robotic arms using low cost 3d vision systems
Andersen A framework for control of a camera head
Jin et al. A wearable robotic device for assistive navigation and object manipulation
Chitrakaran et al. Velocity and structure estimation of a moving object using a moving monocular camera

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant