[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR102752454B1 - Method and apparatus for object following robot using uwb and odometry-based relative position estimation - Google Patents

Method and apparatus for object following robot using uwb and odometry-based relative position estimation Download PDF

Info

Publication number
KR102752454B1
KR102752454B1 KR1020210088738A KR20210088738A KR102752454B1 KR 102752454 B1 KR102752454 B1 KR 102752454B1 KR 1020210088738 A KR1020210088738 A KR 1020210088738A KR 20210088738 A KR20210088738 A KR 20210088738A KR 102752454 B1 KR102752454 B1 KR 102752454B1
Authority
KR
South Korea
Prior art keywords
target
tracking
driving record
robot
relative position
Prior art date
Application number
KR1020210088738A
Other languages
Korean (ko)
Other versions
KR20230007877A (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 KR1020210088738A priority Critical patent/KR102752454B1/en
Priority to US17/523,501 priority patent/US12093055B2/en
Publication of KR20230007877A publication Critical patent/KR20230007877A/en
Application granted granted Critical
Publication of KR102752454B1 publication Critical patent/KR102752454B1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0272Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/028Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/12Target-seeking control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/245Arrangements for determining position or orientation using dead reckoning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/247Arrangements for determining position or orientation using signals provided by artificial sources external to the vehicle, e.g. navigation beacons
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/644Optimisation of travel parameters, e.g. of energy consumption, journey time or distance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D3/00Control of position or direction
    • G05D3/12Control of position or direction using feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

UWB를 통한 거리 측정 데이터와 주행기록계 데이터를 융합하여 로봇 중심 좌표계에서 타겟의 상대 위치를 추종하고 적합한 통신 방식과 구동방식을 통해 로봇이 목표물을 추종할 수 있도록 하는 방법 및 장치가 개시된다. 목표물 추종 방법은, 목표물의 추종 요청에 따라 로봇 자신의 추종 알고리즘을 초기화하는 단계, SS-TWR poll 메시지를 송출하는 단계, 목표물로부터 SS-TWR poll 메시지에 대한 단일 응답 메시지를 받는 단계-여기서 단일 응답 메시지는 목표물의 제2 주행기록 측정 장치의 제2 주행기록 정보를 포함함-, SS-TWR 방식으로 산출한 왕복지연시간에 기초하여 추정하는 단계, 제2 주행기록 정보와 로봇의 제1 주행기록 측정 장치의 제1 주행기록 정보를 통해 목표물의 위치를 예측하는 단계, 및 추정한 거리를 토대로 예측된 목표물의 위치를 보정하는 단계를 포함한다.A method and device are disclosed for tracking the relative position of a target in a robot-centered coordinate system by fusing distance measurement data via UWB and odometer data, and for enabling the robot to track the target through an appropriate communication method and driving method. The target tracking method includes a step of initializing a tracking algorithm of the robot itself in response to a tracking request from the target, a step of transmitting an SS-TWR poll message, a step of receiving a single response message to the SS-TWR poll message from the target, wherein the single response message includes second driving record information of a second driving record measuring device of the target, a step of estimating based on a round-trip delay time calculated by the SS-TWR method, a step of predicting the position of the target through the second driving record information and the first driving record information of the first driving record measuring device of the robot, and a step of correcting the predicted position of the target based on the estimated distance.

Description

UWB 및 주행기록계 기반 상대 위치 추정을 이용하는 로봇의 목표물 추종 방법 및 장치{METHOD AND APPARATUS FOR OBJECT FOLLOWING ROBOT USING UWB AND ODOMETRY-BASED RELATIVE POSITION ESTIMATION}{METHOD AND APPARATUS FOR OBJECT FOLLOWING ROBOT USING UWB AND ODOMETRY-BASED RELATIVE POSITION ESTIMATION}

본 발명은 목표물 추종 로봇(object following robots) 기술에 관한 것으로, 더욱 상세하게는 UWB(ultra-wideband)를 통한 거리 측정 데이터와 주행기록계(odometry) 데이터를 융합하여 로봇 중심 좌표계에서 타겟의 상대 위치를 추정하고 이에 적합한 통신 방식과 구동 방식을 통해 로봇이 목표물을 추종할 수 있도록 하는 방법 및 장치에 관한 것이다.The present invention relates to object following robot technology, and more specifically, to a method and device for estimating the relative position of a target in a robot-centered coordinate system by fusing distance measurement data through UWB (ultra-wideband) and odometry data, and enabling a robot to follow a target through a suitable communication method and driving method.

최근 스마트폰에 초광대역(ultra-wideband, UWB) 기반의 통신 모듈을 탑재하려는 시도가 일어나면서 UWB를 이용한 다양한 기술들이 연구되고 있다. UWB는 기존의 스펙트럼에 비해 매우 넓은 대역에 걸쳐 낮은 전력으로 대용량의 정보를 전송할 수 있는 무선통신 프로토콜 또는 무선통신 기술을 지칭한다.Recently, as attempts are being made to install ultra-wideband (UWB)-based communication modules in smartphones, various technologies using UWB are being studied. UWB refers to a wireless communication protocol or wireless communication technology that can transmit large amounts of information at low power over a very wide band compared to existing spectrum.

UWB의 특징은 매우 정밀한 공간 인식과 방향성이며, 근거리 무선통신 중 거리 측정 정확도가 높다는 UWB의 장점을 이용해 실내에서 사용자를 따라가는 로봇을 만드는 연구에도 적극 활용 중이다.The characteristics of UWB are very precise spatial recognition and directionality, and it is being actively utilized in research to create a robot that follows a user indoors by taking advantage of UWB's advantage of high distance measurement accuracy among short-range wireless communications.

기존의 UWB 기반 사용자 추종 로봇 대부분은 사용자가 UWB 태그(Tag)를 지니고 있고, 로봇에는 4개의 UWB 앵커(Anchor)을 장착하는 방식을 사용한다.Most existing UWB-based user-tracking robots use a method in which the user carries a UWB tag and the robot is equipped with four UWB anchors.

그러나 기존의 UWB 기반 사용자 추종 방법은 4개의 앵커들이 일정거리 이상의 간격을 유지해야 하기 때문에 초소형 로봇에 사용할 수 없으며, 장애물에 가로막히는 UWB의 특성상 4개의 안테나를 매우 신중히 설치해야 한다는 단점이 있다.However, the existing UWB-based user tracking method cannot be used for ultra-small robots because the four anchors must be spaced a certain distance apart, and the four antennas must be installed very carefully due to the characteristic of UWB being blocked by obstacles.

이와 같은 기존 UWB 앵커 및 태그 기반의 사용자 추종 로봇의 단점을 극복하면서 로봇이 효과적으로 목표물을 추종할 수 있는 방안이 요구되고 있다.There is a need for a method that enables robots to effectively track targets while overcoming the shortcomings of existing UWB anchor and tag-based user-tracking robots.

본 발명의 전술한 종래 기술의 단점을 해결하기 위해 도출된 것으로, 본 발명의 목적은 UWB를 앵커(anchor)와 태그(tag) 시스템으로 나누지 않고 독립적인 UWB(ultra-wideband) 모듈과 주행기록계(odometry) 기반으로 상대 위치를 추정함으로써 로봇이 목표물을 효과적으로 추종할 수 있도록 하는, 로봇의 목표물 추종 방법 및 장치를 제공하는데 있다.The present invention was derived to solve the shortcomings of the above-mentioned prior art, and an object of the present invention is to provide a method and device for tracking a target by a robot, which enables the robot to effectively track a target by estimating a relative position based on an independent UWB (ultra-wideband) module and odometry without dividing UWB into an anchor and tag system.

본 발명의 다른 목적은 로봇에 4개의 UWB 모듈을 부착할 필요가 없고 목표물과 로봇에 각각 1개씩의 UWB 모듈과 주행기록계(odometry)만을 부착하여 로봇이 목표물을 효과적으로 추종할 수 있도록 하는 목표물 추종 로봇 알고리즘을 제공하는데 있다.Another object of the present invention is to provide a target-tracking robot algorithm that enables a robot to effectively track a target by attaching only one UWB module and one odometry to each of the target and the robot, without the need to attach four UWB modules to the robot.

본 발명의 또 다른 목적은 4개의 UWB 안테나를 설치한 공간이 없는 초소형 무인 이동체에도 적합할 뿐 아니라 목표물을 추종하는 로봇 자체가 다시 목표물이 되어 또 다른 로봇의 추종을 받도록 하는 데 유용한, 새로운 구동 방법 혹은 로봇과 목표물 간의 새로운 통신 방법을 이용하는 목표물 추종 방법 및 장치를 제공하는데 있다.Another object of the present invention is to provide a target tracking method and device that utilizes a new driving method or a new communication method between a robot and a target, which is not only suitable for an ultra-small unmanned vehicle that does not have space for installing four UWB antennas, but is also useful for causing a robot tracking a target to become a target again and be tracked by another robot.

상기 기술적 과제를 해결하기 위한 본 발명의 일 측면에 따른 로봇의 목표물 추종 방법은, 제1 UWB(ultra-wideband) 통신 모듈과 제1 주행기록 측정 장치를 탑재한 로봇에서 목표물을 추종하는 방법으로서, 목표물의 추종 요청에 따라 로봇 자신의 추종 알고리즘을 초기화하는 단계; SS-TWR(single-sided two-way ranging) 폴(poll) 메시지를 송출하는 단계; 상기 목표물로부터 상기 SS-TWR 폴 메시지에 대한 단일 응답 메시지를 받는 단계-상기 단일 응답 메시지는 상기 목표물의 제2 주행기록 측정 장치의 제2 주행기록 정보를 포함함-; 상기 목표물까지의 거리를, SS-TWR 방식으로 산출한 왕복지연시간(round trip delay, RTD)에 기초하여 추정하는 단계; 및 상기 제2 주행기록 정보와 상기 제1 주행기록 측정 장치의 제1 주행기록 정보를 통해 상기 목표물의 위치를 예측하는 단계; 및 상기 추정한 거리를 토대로 상기 예측한 목표물의 위치를 보정하는 단계를 포함한다.According to an aspect of the present invention for solving the above technical problem, a method for tracking a target by a robot is provided, wherein a robot equipped with a first ultra-wideband (UWB) communication module and a first driving record measuring device tracks a target, the method comprising: a step of initializing a tracking algorithm of the robot itself in response to a request for tracking of the target; a step of transmitting a single-sided two-way ranging (SS-TWR) poll message; a step of receiving a single response message to the SS-TWR poll message from the target, wherein the single response message includes second driving record information of a second driving record measuring device of the target; a step of estimating a distance to the target based on a round trip delay (RTD) calculated by the SS-TWR method; and a step of predicting a position of the target using the second driving record information and the first driving record information of the first driving record measuring device; and a step of correcting the predicted position of the target based on the estimated distance.

일실시예에서, 상기 초기화하는 단계는, 상기 목표물로부터 기지정된 프로토콜에 따라 수신한 추종 요청 메시지에 기초하여 상대 위치 벡터 및 공분산을 초기화할 수 있다.In one embodiment, the initializing step may initialize the relative position vector and covariance based on a tracking request message received from the target according to a predefined protocol.

일실시예에서, 상기 추종 요청 메시지는 상기 목표물의 제2 UWB 통신 모듈의 주소, 상대 위치 추종 알고리즘 주기, 상기 제2 주행기록 측정 장치의 정밀도 관련 정보를 포함할 수 있다.In one embodiment, the tracking request message may include an address of the second UWB communication module of the target, a relative position tracking algorithm cycle, and precision-related information of the second driving record measuring device.

일실시예에서, 목표물 추종 방법은, 상기 추정하는 단계 전에, 상대 위치 벡터와 공분산을 초기화하는 단계를 더 포함할 수 있다.In one embodiment, the target tracking method may further include, prior to the estimating step, a step of initializing a relative position vector and a covariance.

일실시예에서, 목표물 추종 방법은, 상기 초기화하는 단계 후에 상기 공분산의 노름(norm)이 특정값 이하가 될 때까지 대기하고, 상기 공분산의 노름이 특정값 이하가 될 때 상기 목표물에 대한 추종을 시작하는 단계를 더 포함할 수 있다.In one embodiment, the target tracking method may further include a step of waiting until the norm of the covariance becomes less than or equal to a specific value after the initializing step, and starting tracking the target when the norm of the covariance becomes less than or equal to the specific value.

일실시예에서, 상기 예측하는 단계는, 상기 로봇이 측정한 목표물과의 거리 정보, 상기 제1 주행기록 정보 및 상기 제2 주행기록 정보를 통해 상기 목표물과의 상대 위치를 추정할 수 있다.In one embodiment, the predicting step may estimate a relative position with respect to the target using distance information measured by the robot with respect to the target, the first driving record information, and the second driving record information.

일실시예에서, 상기 예측하는 단계는, 확장 칼만 필터(extended Kalman filter, EKF)를 이용하여 상대 위치 벡터 및 공분산을 동시에 추정할 수 있다.In one embodiment, the predicting step can estimate the relative position vector and covariance simultaneously using an extended Kalman filter (EKF).

일실시예에서, 상기 예측하는 단계 및 상기 보정하는 단계는, 확장 칼만 필터를 적용한 상대 위치 추정 알고리즘을 통해 상대 위치를 추정할 수 있다:In one embodiment, the predicting step and the correcting step can estimate the relative position through a relative position estimation algorithm applying an extended Kalman filter:

일실시예에서, 상기 예측하는 단계 및 상기 보정하는 단계는, 상기 상대 위치 추정 알고리즘을 통해 상기 목표물의 위치의 공분산이 미리 설정된 지정 값 이하로 내려갈 때 상기 목표물의 추종을 위해 수행될 수 있다.In one embodiment, the predicting step and the correcting step may be performed to track the target when the covariance of the position of the target falls below a preset value through the relative position estimation algorithm.

일실시예에서, 목표물 추종 방법은, 상기 보정된 위치를 토대로 상기 목표물을 추종하는 중에 상기 목표물로부터 UWB 데이터 통신을 통해 추종 거리 관련 정보를 수신하는 단계; 및 상기 추정 거리 관련 정보에 기초하여 상기 목표물에 대한 추종 거리를 조정하는 단계를 더 포함할 수 있다.In one embodiment, the target tracking method may further include a step of receiving tracking distance related information from the target via UWB data communication while tracking the target based on the corrected position; and a step of adjusting the tracking distance to the target based on the estimated distance related information.

일실시예에서, 상기 제1 또는 제2 주행기록 측정 장치는, 자세 추정을 위한 관성 측정 장치(inertial measurement unit, IMU), 카메라 센서, 변위 추정을 위한 가속도계 또는 이들의 조합을 포함할 수 있다. 그리고 상기 거리 및 상기 위치는 상기 제1 및 제2 주행기록 측정 장치들 각각의 주행 기록 기준 좌표계의 자세를 같으며, 이러한 동일 자세를 위해 각 주행기록 층정 장치는 지자기계를 구비할 수 있다.In one embodiment, the first or second driving record measuring device may include an inertial measurement unit (IMU) for attitude estimation, a camera sensor, an accelerometer for displacement estimation, or a combination thereof. In addition, the distance and the position are the same as the attitude of the driving record reference coordinate system of each of the first and second driving record measuring devices, and for this same attitude, each driving record layer device may be equipped with a geomagnetic field.

일실시예에서, 상기 목표물의 제2 UWB 통신 모듈의 변위 측정값은 상기 제2 주행기록 측정 장치의 위치 변화값을 좌표변환하여 생성될 수 있다.In one embodiment, the displacement measurement value of the second UWB communication module of the target can be generated by transforming the position change value of the second driving record measuring device into coordinates.

상기 기술적 과제를 해결하기 위한 본 발명의 다른 측면에 따른 목표물 추종 장치는, 제1 UWB(ultra-wideband) 통신 모듈과 제1 주행기록 측정 장치를 탑재하고 목표물을 추종하는 장치로서, 프로세서; 상기 프로세서에 의해 실행되는 명령어들; 및 상기 명령어들을 저장하는 메모리를 포함하고, 상기 프로세서에 의해 실행될 때, 상기 명령어들은 상기 프로세서가: 목표물의 추종 요청에 따라 로봇 자신의 추종 알고리즘을 초기화하는 단계; SS-TWR(single-sided two-way ranging) 폴(poll) 메시지를 송출하는 단계; 상기 목표물로부터 상기 SS-TWR 폴 메시지에 대한 단일 응답 메시지를 받는 단계-상기 단일 응답 메시지는 상기 목표물의 제2 주행기록 측정 장치의 제2 주행기록 정보를 포함함-; 상기 목표물까지의 거리를, SS-TWR 방식으로 산출한 왕복지연시간(round trip delay, RTD)에 기초하여 추정하는 단계; 상기 제2 주행기록 정보와 상기 제1 주행기록 측정 장치의 제1 주행기록 정보를 통해 상기 목표물의 위치를 예측하는 단계; 및 상기 추정한 거리를 토대로 상기 목표물의 위치를 보정하는 단계를 수행하도록 이루어진다.According to another aspect of the present invention for solving the above technical problem, a target tracking device is provided, which is a device for tracking a target, which comprises a first UWB (ultra-wideband) communication module and a first driving record measuring device, and which comprises a processor; instructions executed by the processor; and a memory storing the instructions, wherein, when executed by the processor, the instructions cause the processor to perform the following steps: initializing a tracking algorithm of the robot itself in response to a request for tracking of the target; transmitting a single-sided two-way ranging (SS-TWR) poll message; receiving a single response message to the SS-TWR poll message from the target, wherein the single response message includes second driving record information of a second driving record measuring device of the target; estimating a distance to the target based on a round trip delay (RTD) calculated by the SS-TWR method; predicting a position of the target using the second driving record information and the first driving record information of the first driving record measuring device; and correcting the position of the target based on the estimated distance.

일실시예에서 목표물 추종 장치는 프로세서가, 상기 초기화하는 단계에서 상기 목표물로부터 기지정된 프로토콜에 따라 수신한 추종 요청 메시지에 기초하여 상대 위치 벡터 및 공분산을 초기화하도록 할 수 있다.In one embodiment, the target tracking device may cause the processor to initialize the relative position vector and covariance based on a tracking request message received from the target according to a predefined protocol in the initializing step.

일실시예에서 목표물 추종 장치는 상기 프로세서가, 상기 추정하는 단계 전에, 상대 위치 벡터와 공분산을 초기화하는 단계를 더 수행하도록 할 수 있다.In one embodiment, the target tracking device may further cause the processor to perform, prior to the estimating step, a step of initializing a relative position vector and covariance.

일실시예에서 목표물 추종 장치는 프로세서가, 상기 초기화하는 단계 후에 상기 공분산의 노름(norm)이 특정값 이하가 될 때까지 대기하고, 상기 공분산의 노름이 특정값 이하가 될 때 상기 목표물에 대한 추종을 시작하는 단계를 더 수행하도록 할 수 있다.In one embodiment, the target tracking device may further perform a step of waiting for the norm of the covariance to become less than or equal to a specific value after the initializing step, and starting tracking of the target when the norm of the covariance becomes less than or equal to the specific value.

일실시예에서 목표물 추종 장치는 프로세서가, 상기 예측하는 단계에서 상기 로봇이 측정한 목표물과의 거리 정보, 상기 제1 주행기록 정보 및 상기 제2 주행기록 정보를 통해 상기 목표물과의 상대 위치를 추정하도록 할 수 있다.In one embodiment, the target tracking device may cause the processor to estimate a relative position with respect to the target using distance information with respect to the target measured by the robot in the predicting step, the first driving record information, and the second driving record information.

일실시예에서 목표물 추종 장치는 프로세서가 상기 예측하는 단계에서 확장 칼만 필터를 이용하여 상대 위치 벡터 및 공분산을 동시에 추정하도록 할 수 있다.In one embodiment, the target tracking device may enable the processor to simultaneously estimate the relative position vector and covariance using an extended Kalman filter during the prediction step.

일실시예에서 목표물 추종 장치는 프로세서가, 상기 보정된 위치를 토대로 상기 목표물을 추종하는 중에 상기 목표물로부터 UWB 데이터 통신을 통해 추종 거리 관련 정보를 수신하는 단계; 및 상기 추정 거리 관련 정보에 기초하여 상기 목표물에 대한 추종 거리를 조정하는 단계를 더 수행하도록 할 수 있다.In one embodiment, the target tracking device may further perform the step of: receiving tracking distance related information from the target via UWB data communication while tracking the target based on the corrected position; and the step of adjusting the tracking distance to the target based on the estimated distance related information.

본 발명에 의하면, UWB(ultra-wideband) 및 주행기록계(odometry)를 통해 추정한 상대 위치를 토대로 로봇이 목표물을 효과적으로 추종하도록 하는 새로운 알고리즘을 제공할 수 있다. 즉, 기존의 목표물 추종 로봇 기술에 사용되는 UWB 시스템은 앵커(anchor) 및 태그(Tag)로 역할을 나누어 사용했지만, 본 실시예에서는 UWB 시스템의 역할을 나누지 않고 주행기록계를 함께 이용하여 로봇과 목표물 각각에 탑재된 각 UWB 통신 모듈이 추종을 하는 주체이자 추종을 당하는 주체가 되도록 구현되며, 이에 의해 제1 로봇이 사용자를 효과적으로 추종하도록 하면서, 또 다른 제2 로봇이 제2 로봇을 추종하도록 시스템을 간편하고 효율적으로 구현할 수 있다.According to the present invention, a new algorithm can be provided for a robot to effectively track a target based on a relative position estimated through UWB (ultra-wideband) and odometry. That is, while the UWB system used in existing target-tracking robot technology has divided the roles into an anchor and a tag, in this embodiment, the roles of the UWB system are not divided, and an odometry is used together, so that each UWB communication module mounted on the robot and the target respectively becomes a tracking subject and a followed subject, thereby making it possible to simply and efficiently implement a system in which a first robot effectively follows a user while another second robot follows the second robot.

또한, 본 발명에 의하면, 기존 UWB 시스템보다 시스템 로드가 적은 초기화 방안과 적은 횟수의 통신으로 추종 알고리즘에 필요한 데이터를 획득할 수 있는 새로운 목표물 추종 프로토콜과 이러한 프로토콜을 이용하는 목표물 추종 방법 및 장치를 제공할 수 있다.In addition, according to the present invention, it is possible to provide a new target tracking protocol capable of obtaining data required for a tracking algorithm with a small number of communications and an initialization method with less system load than existing UWB systems, and a target tracking method and device using this protocol.

아울러, 본 발명에 따른 목표물 추종 로봇 알고리즘은 무인이동체, 드론 등을 포함하는 거의 모든 로봇에서 통용하는 제어입력을 이용하여 해당 로봇을 제어할 수 있으므로, 다양한 로봇에 효과적으로 적용할 수 있는 장점이 있다.In addition, since the target-following robot algorithm according to the present invention can control the robot using control inputs commonly used in almost all robots, including unmanned vehicles and drones, it has the advantage of being effectively applicable to various robots.

도 1은 본 발명의 일실시예에 따른 목표물 추종 로봇의 작동 원리를 설명하기 위한 예시도이다.
도 2는 도 1의 목표물 추종 로봇과 목표물과의 메시지 전달 과정을 설명하기 위한 도면이다.
도 3은 도 1의 목표물 추종 로봇의 목표물 추정 방법에 대한 흐름도이다.
도 4는 도 3의 목표물 추종 방법에 채용할 수 있는 추가 절차에 대한 흐름도이다.
도 5는 도 3의 목표물 추종 방법에 채용할 수 있는 또 다른 추가 절차에 대한 흐름도이다.
도 6은 본 발명의 다른 실시예에 따른 목표물 추종 로봇의 주요 구성에 대한 블록도이다.
도 7은 도 6의 목표물 추종 로봇이 목표물을 추종하면서 다른 로봇의 추종을 받은 형태에 대한 예시도이다.
도 8은 도 6의 목표물 추종 로봇인 드론이 목표물인 다른 드론을 추종하는 형태에 대한 예시도이다.
FIG. 1 is an exemplary diagram for explaining the operating principle of a target-tracking robot according to one embodiment of the present invention.
Figure 2 is a drawing for explaining the message transmission process between the target following robot of Figure 1 and the target.
Figure 3 is a flowchart of a target estimation method of the target following robot of Figure 1.
Figure 4 is a flowchart of an additional procedure that can be employed in the target tracking method of Figure 3.
Figure 5 is a flowchart of another additional procedure that can be employed in the target tracking method of Figure 3.
FIG. 6 is a block diagram of the main configuration of a target-following robot according to another embodiment of the present invention.
Figure 7 is an example of a form in which the target-tracking robot of Figure 6 tracks a target while being followed by another robot.
Figure 8 is an example of a form in which a drone, which is a target-tracking robot of Figure 6, follows another drone, which is a target.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.The present invention can have various modifications and various embodiments, and specific embodiments are illustrated in the drawings and described in detail. However, this is not intended to limit the present invention to specific embodiments, but should be understood to include all modifications, equivalents, or substitutes included in the spirit and technical scope of the present invention.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are only used to distinguish one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term and/or includes a combination of a plurality of related described items or any one of a plurality of related described items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When it is said that a component is "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that there may be other components in between. On the other hand, when it is said that a component is "directly connected" or "directly connected" to another component, it should be understood that there are no other components in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is only used to describe specific embodiments and is not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly indicates otherwise. In this application, it should be understood that the terms "comprises" or "has" and the like are intended to specify the presence of a feature, number, step, operation, component, part or combination thereof described in the specification, but do not exclude in advance the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms defined in commonly used dictionaries, such as those defined in common dictionaries, should be interpreted as having a meaning consistent with the meaning they have in the context of the relevant art, and will not be interpreted in an idealized or overly formal sense unless expressly defined in this application.

명세서 전체에서 초광대역(UWB)은 기존의 스펙트럼에 비해 매우 넓은 대역에 걸쳐 낮은 전력으로 대용량의 정보를 전송하는 무선통신 기술로서, 넓은 의미에서 UWB는 500㎒ 이상의 대역폭을 사용하고 반송파 혹은 변조의 유무와 상관없이 근거리 고속통신이 가능한 무선통신이면서 그 중심주파수에 대응하는 대역폭(비대역폭)이 20% 혹은 25% 이상인 무선통신을 지칭한다.Throughout the specification, ultra-wideband (UWB) is a wireless communication technology that transmits a large amount of information at low power over a very wide band compared to existing spectrums. In a broad sense, UWB refers to wireless communication that uses a bandwidth of 500㎒ or more, enables short-distance high-speed communication regardless of the presence or absence of a carrier wave or modulation, and has a bandwidth (partial bandwidth) corresponding to its center frequency of 20% or 25% or more.

또한, 용어 로봇(robot)은 인간과 유사한 모습과 기능을 가진 기계를 지칭하거나, 한 개의 컴퓨터 프로그램으로 작동할 수 있고 자동적으로 복잡한 일련의 작업(complex series of actions)을 수행하는 기계적 장치를 지칭하거나, 어떤 작업이나 조작을 자동하는 하는 기계 장치를 지칭할 수 있다. 본 명세서에서 로봇은 목표물을 추종하기 위해 목표물의 움직임에 따라 자신의 움직임을 자동으로 조정하는 모든 이동가능한 기계 장치를 포함한다. 로봇은 드론을 포함할 수 있다. 이 경우, 제1 드론은 정면의 목표물 혹은 제2 드론을 일정 고도에서 일정 거리를 두고 추종할 수 있다.Also, the term robot may refer to a machine having a human-like appearance and function, or a mechanical device that can operate with a single computer program and automatically perform a complex series of actions, or a mechanical device that automates a task or operation. In this specification, a robot includes any movable mechanical device that automatically adjusts its movement according to the movement of a target in order to follow the target. A robot may include a drone. In this case, a first drone may follow a target in front or a second drone at a certain altitude and at a certain distance.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, with reference to the attached drawings, a preferred embodiment of the present invention will be described in more detail. In order to facilitate an overall understanding in describing the present invention, the same reference numerals are used for the same components in the drawings, and redundant descriptions of the same components are omitted.

도 1은 본 발명의 일실시예에 따른 목표물 추종 로봇의 작동 원리를 설명하기 위한 예시도이다. 도 2는 도 1의 목표물 추종 로봇과 목표물과의 메시지 전달 과정을 설명하기 위한 도면이다. 도 3은 도 1의 목표물 추종 로봇의 목표물 추정 방법에 대한 흐름도이다. 도 4는 도 3의 목표물 추종 방법에 채용할 수 있는 추가 절차에 대한 흐름도이다. 그리고 도 5는 도 3의 목표물 추종 방법에 채용할 수 있는 또 다른 추가 절차에 대한 흐름도이다.FIG. 1 is an exemplary diagram for explaining the operating principle of a target-tracking robot according to an embodiment of the present invention. FIG. 2 is a diagram for explaining a message transmission process between the target-tracking robot of FIG. 1 and a target. FIG. 3 is a flowchart for a target estimation method of the target-tracking robot of FIG. 1. FIG. 4 is a flowchart for an additional procedure that can be employed in the target-tracking method of FIG. 3. And FIG. 5 is a flowchart for another additional procedure that can be employed in the target-tracking method of FIG. 3.

도 1을 참조하면, 목표물 추종 로봇(이하 간략히 로봇)(30)은 목표물(10)을 추종한다. 이를 위해 로봇(30)은 제1 UWB 통신 모듈(32)과 제2 주행기록장치(34)를 구비하고, 이와 유사하게 목표물(10)도 제2 초광대역(ultra-wideband, UWB) 통신 모듈(12)과 제2 주행기록장치(14)를 구비한다.Referring to Fig. 1, a target-tracking robot (hereinafter simply referred to as a robot) (30) tracks a target (10). To this end, the robot (30) is equipped with a first UWB communication module (32) and a second driving recorder (34), and similarly, the target (10) is equipped with a second ultra-wideband (UWB) communication module (12) and a second driving recorder (14).

UWB 통신 모듈은 UWB 통신 장치 또는 UWB 모듈로 지칭될 수 있다. 주행기록장치는 주행기록계 또는 주행기록 측정 장비로 지칭될 수 있다. 그리고 목표물(10)은 사람의 스마트폰이나 휴대 장치 형태를 구비할 수 있다.The UWB communication module may be referred to as a UWB communication device or a UWB module. The driving recorder may be referred to as a driving recorder or a driving record measuring device. And the target (10) may have a form of a person's smartphone or a portable device.

목표물(10)은 제2 주행기록장치(14)로 자신의 주행기록(odometry)를 측정할 수 있고, 제2 UWB 통신 모듈(12)을 통해 데이터 통신이 가능하다고 가정한다.It is assumed that the target (10) can measure its own driving record (odometry) with a second driving recorder (14) and can communicate data through a second UWB communication module (12).

우선, 로봇(30)이 목표물로부터 추종 요청을 받으면, 로봇(30)은 자신의 추정 알고리즘 초기화를 실행한다. 그런 다음, 로봇(30)은 주기적으로 목표물(10)에 폴(poll) 메시지를 보내고, 목표물(10)로부터 poll 메시지에 대한 응답(response) 메시지를 받는다. 로봇(30)은 응답 메시지를 통해 목표물(10)의 주행기록(odometry) 정보(이하 제2 주행기록 정보)를 획득한다. poll 메시지는 SS-TWR(sigle side two way ranging) poll 메시지를 포함할 수 있다(도 2 참조).First, when the robot (30) receives a tracking request from the target, the robot (30) executes initialization of its own estimation algorithm. Then, the robot (30) periodically sends a poll message to the target (10) and receives a response message to the poll message from the target (10). The robot (30) obtains odometry information (hereinafter, referred to as second odometry information) of the target (10) through the response message. The poll message may include a SS-TWR (single side two way ranging) poll message (see FIG. 2).

로봇(30)은 제2 주행기록 정보를 통해 목표물(10)까지의 거리를 추정한다. 그리고, 로봇(30)은 자신의 주행기록 정보(이하 제1 주행기록 정보)와 제2 주행기록 정보를 통해 상대 위치를 예측한 후, 앞서 추정한 거리를 토대로 기예측된 상대 위치를 보정한다. 예측 및 보정은 확장 칼만 필터(extended Kalman fliter, EKF) 방식을 따를 수 있다.The robot (30) estimates the distance to the target (10) using the second driving record information. Then, the robot (30) predicts the relative position using its own driving record information (hereinafter, the first driving record information) and the second driving record information, and then corrects the predicted relative position based on the previously estimated distance. The prediction and correction may follow the extended Kalman filter (EKF) method.

로봇(30)은 보정된 상대 위치 정보를 토대로 목표물과 일정거리를 유지하며 목표물을 추종하여 움직이기 위해 자신의 방향 및 속도를 제어한다. 로봇(30)은 목표물(10)을 추종하는 중에 UWB 데이터 통신을 통해 주종 거리 등을 제어할 수 있다.The robot (30) controls its own direction and speed to follow the target while maintaining a certain distance from the target based on the corrected relative position information. The robot (30) can control the main and subordinate distances, etc. through UWB data communication while following the target (10).

전술한 로봇(30)의 작동 방법 혹은 목표물 추종 방법을 설명하면 다음과 같다. 도 3에 도시한 바와 같이, 제1 UWB(ultra-wideband) 통신 모듈과 제1 주행기록 측정 장치를 탑재하고 목표물을 추종하는 로봇은, 목표물의 추종 요청에 따라 로봇 자신의 추종 알고리즘을 초기화한다(S31).The operating method or target tracking method of the aforementioned robot (30) is described as follows. As shown in Fig. 3, a robot equipped with a first UWB (ultra-wideband) communication module and a first driving record measuring device and tracking a target initializes its own tracking algorithm according to a target tracking request (S31).

다음, 로봇은 SS-TWR(single-sided two-way ranging) 폴(poll) 메시지를 전송한다(S32).Next, the robot transmits a single-sided two-way ranging (SS-TWR) poll message (S32).

다음, 로봇은 목표물로부터 SS-TWR 폴 메시지에 대한 응답 메시지를 수신한다(S33). 응답 메시지는 목표물의 제2 주행기록 측정 장치의 제2 주행기록 정보를 포함한다.Next, the robot receives a response message to the SS-TWR poll message from the target (S33). The response message includes second driving record information of the second driving record measuring device of the target.

다음, 로봇은 목표물까지의 거리를, SS-TWR 방식으로 산출한 왕복지연시간(round trip delay, RTT)에 기초하여 추정한다(S35).Next, the robot estimates the distance to the target based on the round trip delay (RTT) calculated using the SS-TWR method (S35).

다음, 로봇은 제2 주행기록 정보와 제1 주행기록 측정 장치의 제1 주행기록 정보를 통해 목표물의 위치를 예측한다(S36).Next, the robot predicts the location of the target using the second driving record information and the first driving record information of the first driving record measuring device (S36).

다음, 로봇은 추정한 거리를 토대로 앞서 예측한 목표물의 위치를 보정한다(S37).Next, the robot corrects the previously predicted position of the target based on the estimated distance (S37).

전술한 목표물(10)과 로봇(30)에 각각 탑재되는 UWB 통신 장치 및 주행기록(odometry) 측정 장비에 대해 좀더 구체적으로 설명한다.The UWB communication device and odometry measurement equipment mounted on the aforementioned target (10) and robot (30) will be described in more detail.

UWB 통신 장치는 일반적인 UWB 방식을 사용하는 통신 장비로 다른 UWB 통신 장치와 일반적인 데이터 통신이 가능하고 거리 측정이 가능하다고 가정한다. 다만, 본 실시예의 UWB 통신 장치는, 일반적인 UWB RTLS(real-time location system)와 달리 앵커(Anchor)와 태그(Tag)로 구분하지 않고, 단일 모듈 간에 해당 기능 동작이 가능하다. 즉, 태그와 태그끼리도 동작할 수 있도록 구성된다. 또한, 통신을 위해 서로 간의 주소를 알고 있어야 하는데 목표물은 로봇의 UWB 통신 주소를 알고 있다고 가정한다. 목표물은 로봇에 대한 정보를 네트워크를 통해 접속가능한 로봇 제조사의 웹 서비스를 통해 획득하여 저장할 수 있다.The UWB communication device is a communication device using a general UWB method, and it is assumed that general data communication is possible with other UWB communication devices and that distance measurement is possible. However, unlike a general UWB RTLS (real-time location system), the UWB communication device of the present embodiment does not distinguish between anchors and tags, and can perform the corresponding function operation between single modules. In other words, it is configured so that tags can also operate with each other. In addition, it is assumed that the target knows the UWB communication address of the robot, and the addresses of each other must be known for communication. The target can obtain and store information about the robot through a web service of a robot manufacturer that can be accessed through a network.

주행기록 측정 장비는 목표물 또는 로봇의 각 장치의 이동 경로를 추정할 수 있는 장비이다. 절대 위치 좌표를 측정할 필요는 없으며 일정 시간 전과 현재의 위치 정보를 비교할 수 있으면 된다. 이러한 주행기록 측정 장비는 실내에서 IMU(inertial mesaurement unit)를 통한 자세추정, 가속도계 적분을 통해 위치 변화를 추정 등 주행기록 측정 장비의 조건을 만족하는 모든 장치를 포함할 수 있다.Driving record measuring equipment is equipment that can estimate the movement path of each device of a target or robot. It is not necessary to measure the absolute position coordinates, and it is sufficient to be able to compare the current position information with that of a certain time ago. Such driving record measuring equipment can include all devices that satisfy the conditions of driving record measuring equipment, such as estimating attitude through an IMU (inertial measurement unit) indoors and estimating position changes through accelerometer integration.

본 실시예에서 사용되는 좌표값은 모두 UWB 통신 장치의 중심 좌표계에서 일어나는 것으로 처리된다. UWB 측정 장비의 위치 변화 측정은 주행기록 측정 장비의 위치 변화값을 좌표 변환하는 것으로 획득할 수 있다.All coordinate values used in this embodiment are processed as occurring in the central coordinate system of the UWB communication device. The position change measurement of the UWB measurement device can be obtained by transforming the position change value of the driving record measurement device into coordinates.

본 실시예의 목표물 추종 로봇 알고리즘의 구현을 위해 목표물과 로봇 모두에 UWB 통신 장치 및 주행기록 측정 장비를 각각 장착한다. 단, 목표물과 로봇에서의 UWB 통신 장치 및 주행기록 측정 장비가 반드시 같은 장비일 필요는 없다. 그리고 목표물은 사용자가 휴대한 휴대 단말이나 휴대 전자 장치로 한정되지 않고 자체적으로 이동하는 다른 로봇을 포함할 수 있다.In order to implement the target-following robot algorithm of this embodiment, both the target and the robot are equipped with a UWB communication device and a driving record measuring device, respectively. However, the UWB communication device and the driving record measuring device of the target and the robot do not necessarily have to be the same devices. In addition, the target is not limited to a portable terminal or portable electronic device carried by a user, and may include another robot that moves on its own.

다음은 추종 초기화와 송수신 메시지에 관해 좀더 구체적으로 설명한다.The following describes the tracking initialization and sending/receiving messages in more detail.

로봇은 목표물의 응답(resp) 메시지를 통해 SS-TWR 방식으로 거리를 측정한다. 로봇은 EKF 방식으로 목표물과의 상대위치를 추정할 수 있다. EKF 방식 등을 사용하는 경우, 로봇은 상대위치를 추정하기 전에 상대위치 벡터 및 공분산을 초기화할 필요가 있다.The robot measures the distance using the SS-TWR method through the target's response (resp) message. The robot can estimate the relative position with the target using the EKF method. When using the EKF method, etc., the robot needs to initialize the relative position vector and covariance before estimating the relative position.

추종 초기화는 로봇이 목표물로부터 추종 요청을 받고 상대 위치 벡터 및 공분산을 초기화하는 작업으로 이루어질 수 있다. 로봇은 목표물로부터 미리 정해진 프로토콜에 따라 추종 요청 메시지를 수신할 수 있다. 추종 요청 메시지에는 목표물 UWB 통신 주소 및 상대 위치 추종 알고리즘 주기, 주행기록(odometry)의 정밀도 관련 정보가 포함될 수 있다.Tracking initialization can be done by the robot receiving a tracking request from the target and initializing the relative position vector and covariance. The robot can receive a tracking request message from the target according to a predefined protocol. The tracking request message can include information related to the target UWB communication address, the relative position tracking algorithm cycle, and the accuracy of the odometry.

로봇은 추종 요청을 받은 후 추종 요청 메시지에 포함된 목표물의 UWB 통신 주소로 SS-TWR poll 메시지를 보낼 수 있다. 그리고 로봇은 메시지를 받은 목표물로부터 SS-TWR resp 메시지를 받을 수 있다. 로봇은 응답(resp) 메시지의 SS-TWR을 통해 목표물과의 거리를 측정한다. 거리 측정 후 아래의 [수학식 1]의 방법으로 상대 위치 벡터와 자신의 공분산을 초기화할 수 있다.After receiving a tracking request, the robot can send a SS-TWR poll message to the UWB communication address of the target included in the tracking request message. Then, the robot can receive a SS-TWR resp message from the target that received the message. The robot measures the distance to the target through the SS-TWR of the response (resp) message. After measuring the distance, the relative position vector and its own covariance can be initialized by the method of [Mathematical Formula 1] below.

[수학식 1]에서, s()는 로봇에서 목표물까지의 상대 위치 벡터를 의미하는 3차원 벡터를, P()는 s()의 공분산을, k는 사용자가 튜닝가능한 값으로 초기화 이득(initialization gain)을, d0는 목표물과의 거리를, 그리고 I는 3차원 항등행렬을 각각 나타낸다.In [Mathematical Formula 1], s() represents a three-dimensional vector representing the relative position vector from the robot to the target, P() represents the covariance of s(), k represents the initialization gain as a user-tunable value, d0 represents the distance to the target, and I represents a three-dimensional identity matrix.

초기화 후, 로봇은 공분산의 노름(norm)이 사용자가 지정하는 특정값 이하가 될 때까지 대기할 수 있다(도 4의 S34 참조). 그리고 로봇은 공분산의 노름이 특정값 이하가 되는 경우, 목표물 추종이나 이를 위한 추정, 예측 및 보정을 포함한 메인 프로세스를 시작할 수 있다. 참고로, 프로세스 시작 직전에, 효과적인 추정을 위해, 목표물은 조금씩 움직일 수 있고, 이 경우 노름 값이 적절하게 감소할 수 있다. 이러한 목표물의 동작은 추종 요청을 보낸 목표물의 자체 설정에 따라 혹은 목표물 추정 로봇의 요청에 따라 수행될 수 있다.After initialization, the robot can wait until the norm of the covariance becomes less than or equal to a specific value specified by the user (see S34 in Fig. 4). Then, when the norm of the covariance becomes less than or equal to the specific value, the robot can start the main process including target tracking or estimation, prediction, and compensation for the same. As a reference, just before the process starts, for effective estimation, the target can move slightly, in which case the norm value can be appropriately reduced. This target motion can be performed according to the self-setting of the target that sent the tracking request or according to the request of the target estimation robot.

다음으로 상대 위치 추정 알고리즘에 관하여 좀더 구체적으로 설명한다.Next, we will explain the relative position estimation algorithm in more detail.

상대 위치 추정 알고리즘은 로봇이 측정한 목표물과의 거리 정보 d(k), 목표물에서 전달받은 주행기록 정보(odom_object), 로봇 자신의 주행기록 정보(odom_robot)를 통해 목표물과의 상대 위치를 추정하는 알고리즘이다. 이 알고리즘은 확장 칼만 필터를 기본으로 하기 때문에 상대 위치 벡터와 공분산을 동시에 추정하는 방식을 사용한다. 확장 칼만 필터의 예측 및 보정은 [수학식 2]와 같다.The relative position estimation algorithm is an algorithm that estimates the relative position to the target using the distance information d(k) measured by the robot to the target, the driving record information (odom_object) received from the target, and the robot's own driving record information (odom_robot). Since this algorithm is based on the extended Kalman filter, it uses a method of simultaneously estimating the relative position vector and covariance. The prediction and correction of the extended Kalman filter are as shown in [Mathematical Formula 2].

[수학식 2]에서, s(k)는 사용자가 튜닝가능한 값인 특정 시간 k에서 로봇으로부터 목표물까지의 상대 위치 벡터를 의미하는 3차원 벡터를, P(k)는 s(k)의 공분산을, Qobject는 초기화 때 받은 목표물의 제2 주행기록 측정 장치의 정밀도를, 그리고 Qrobot은 로봇의 제1 주행기록 측정 장치의 정밀도를 각각 나타내고, 측정 모델 H(k)는 제1 및 제2 주행기록 측정 장치들의 차이를 통해 획득 가능하고, R은 UWB의 거리 측정 정밀도를 나타낸다.[In Mathematical Expression 2], s(k) is a three-dimensional vector representing a relative position vector from a robot to a target at a specific time k, which is a user-tunable value; P(k) represents the covariance of s(k); Q object represents the precision of the second driving record measuring device of the target received at initialization; and Q robot represents the precision of the first driving record measuring device of the robot. The measurement model H(k) can be obtained through the difference between the first and second driving record measuring devices; and R represents the distance measurement precision of UWB.

각 정밀도는 센서 노이즈를 분석하여 얻을 수 있는 정보이지만, 사용자 편의에 맞게 튜닝하여 사용 가능하다. 측정 모델 H(k)는 주행기록들 간의 차를 통해 획득 가능하다. R은 UWB의 거리측정 정밀도(RUWB)를 의미한다. 이와 같은 데이터를 토대로 확장 칼만 필터를 적용할 수 있고, 이를 통해 목표물의 상대 위치를 추정할 수 있다.Each precision is information that can be obtained by analyzing sensor noise, but can be tuned and used according to the user's convenience. The measurement model H(k) can be obtained through the difference between driving records. R means the distance measurement precision of UWB (R UWB ). Based on this data, an extended Kalman filter can be applied, and the relative position of the target can be estimated through this.

본 실시예의 목표물 추정 방법에 채용할 수 있는 상대 위치 추정 알고리즘은 특유의 UWB 메시지 전달 프로토콜을 이용할 수 있다.A relative position estimation algorithm that can be employed in the target estimation method of the present embodiment can utilize a unique UWB message transmission protocol.

다시 말해서, 일반적인 UWB 모듈에서는 거리 측정을 위한 기능과 데이터 전달 기능을 따로 사용하기 때문에 로봇에서 목표물로 SS-TWR poll 메시지를 보내고, 목표물에서 로봇으로 SS-TWR resp 메시지를 보내고, 목표물에서 로봇으로 주행기록 데이터를 전달하는, 적어도 총 세 번의 메시지 교환이 필요하다. 그리고 비동기적으로 구동할 경우, 일반적인 목표물의 UWB 통신 모듈은 주행기록 측정 장비에 데이터를 요구하고 주행기록 데이터를 획득하는 시간도 필요하게 된다.In other words, since a general UWB module uses the function for distance measurement and the function for data transmission separately, at least three message exchanges are required: sending an SS-TWR poll message from the robot to the target, sending an SS-TWR resp message from the target to the robot, and transmitting driving record data from the target to the robot. In addition, when operated asynchronously, the UWB communication module of a general target also needs time to request data from the driving record measuring equipment and acquire the driving record data.

반면에, 다시 도 2를 참조하면, 본 실시예의 UWB 모듈이나 이를 탑재한 목표물 추종 로봇에서는 동기식 SS-TWR와 데이터 통신을 조합한 메시지 구조 혹은 이러한 메시지 구조를 이용하는 통신 방식을 사용한다.On the other hand, referring back to FIG. 2, the UWB module of the present embodiment or the target-tracking robot equipped with the same uses a message structure combining synchronous SS-TWR and data communication or a communication method utilizing such a message structure.

즉, 본 실시예에서는 로봇(robot)이 제1 시간(T_0)에 목표물(object)로 SS-TWR poll 메시지(poll msg)를 전송하고, 목표물로부터 SS-TWR resp 메시지(resp msg)를 받는다. poll 메시지에는 메시지 송신 시간(Tx_poll_time) 정보가 포함될 수 있다. 이때, 본 실시예의 목표물(object)의 UWB 통신 모듈(UWB module)은, 기존의 일반적인 방식과 달리, 미리 정해진 주기에 따라 제2 주행기록 측정 장치(odom module)부터 주행기록 관련 데이터(odometry data)을 획득하여 저장한다. 그리고 목표물(object)은 SS-TWR resp 메시지에 주행기록 메시지(odometry msg) 등과 같이 목표물 자신의 주행기록 관련 데이터를 추가로 넣어 전송한다. SS-TWR resp 메시지는 프로토콜 헤더와 SS-TWR을 위한 1바이트 데이터 등을 포함하거나, 8바이트씩 3개의 심볼(8bytes*3 symbol)을 포함할 수 있다. 예를 들어, SS-TWR resp 메시지는 poll 메시지의 수신 시간(Rx_poll_time), 응답 메시지 송신 시간(Tx_resp_time) 및 주행기록 데이터(odometry data)를 포함할 수 있다.That is, in the present embodiment, the robot transmits a SS-TWR poll message (poll msg) to the object at the first time (T_0) and receives an SS-TWR resp message (resp msg) from the object. The poll message may include message transmission time (Tx_poll_time) information. At this time, the UWB communication module (UWB module) of the object of the present embodiment, unlike the conventional general method, obtains and stores odometry data from the second odometry measurement device (odom module) according to a predetermined cycle. In addition, the object additionally inserts its own odometry data, such as a odometry message (odometry msg), into the SS-TWR resp message and transmits it. The SS-TWR resp message may include a protocol header and 1 byte data for SS-TWR, or may include 3 symbols of 8 bytes each (8bytes*3 symbol). For example, the SS-TWR resp message may include the reception time of the poll message (Rx_poll_time), the transmission time of the response message (Tx_resp_time), and odometry data.

추종 초기화 단계에서 정한 주기(period)에 맞춰 로봇(robot)과 목표물(object)이 SS-TWR poll 메시지와 SS-TWR resp 메시지의 두 번의 메시지 교환을 수행하고, 이를 통해 로봇은 상대 위치 추정을 위한 정보를 모두 획득할 수 있다.In accordance with the period set in the tracking initialization phase, the robot and the object exchange two messages, the SS-TWR poll message and the SS-TWR resp message, through which the robot can obtain all the information for estimating the relative position.

다음으로 로봇의 목표물 추종 알고리즘에 대해 좀더 구체적으로 설명한다.Next, we will explain the robot's target tracking algorithm in more detail.

추종 초기화 후, 상대 위치 추종알고리즘을 통해 상대 위치의 공분산이 사용자 등에 의해 지정된 특정값 이하로 내려가면, 로봇은 목표물 추종 알고리즘을 통해 제어되어 목표물을 추종할 수 있다.After tracking initialization, if the covariance of the relative position goes below a specific value specified by the user or a third party through the relative position tracking algorithm, the robot can be controlled through the target tracking algorithm to track the target.

로봇은 자신의 방향(yaw)와 자신의 속도를 추정할 수 있고, 자신의 방향(yaw rate) 및 직후진(velocity_front) 속도를 제어할 수 있다고 가정한다. 이때 로봇의 상하 운동은 고려하지 않는다. 이러한 움직임은 지상 이동 로봇뿐 아니라 드론에도 적합한 가정이다.We assume that the robot can estimate its own heading (yaw) and its own velocity, and control its own heading (yaw rate) and forward (velocity_front) velocity. We do not consider the robot's up-and-down motion. This motion is an assumption that is suitable for drones as well as ground-based mobile robots.

본 실시예에 따른 목표물 추종 방법의 제어 목표는 드론의 정면이 항상 목표물을 향하고 목표물과의 거리가 일정하도록 제어하는 것이다. 제어 목표를 도달하기 위해 [수학식 3]과 같은 제어 알고리즘을 사용할 수 있다.The control goal of the target tracking method according to the present embodiment is to control the drone so that its front always faces the target and the distance from the target is constant. To achieve the control goal, a control algorithm such as [Mathematical Formula 3] can be used.

[수학식 3]에서 Kyaw는 자세 제어를 위한 계수, Kvel은 속도 제어를 위한 계수이다. 계수는 일반적으로 주어지며 사용자는 원하는 성능을 위해 계수들을 튜닝할 수 있다. 그리고 Ddesired는 사용자가 원하는 목표물과 로봇 사이의 거리로 추종 알고리즘 구동 중에 UWB를 통한 일반 데이터 통신으로 변경가능하도록 한다.In [Mathematical expression 3], K yaw is a coefficient for attitude control, and K vel is a coefficient for velocity control. The coefficients are generally given, and the user can tune the coefficients for desired performance. In addition, D desired is the distance between the target and the robot desired by the user, and can be changed to general data communication via UWB during the tracking algorithm operation.

즉, 도 5에 도시한 바와 같이, 로봇은 목표물로부터 추종 거리 관련 정보를 수신하고(S38), 추종 거리 관련 정보를 토대로 추종 거리를 조정할 수 있다(S39).That is, as illustrated in Fig. 5, the robot receives tracking distance related information from the target (S38) and can adjust the tracking distance based on the tracking distance related information (S39).

이와 같이, 본 실시예에 따른 로봇의 목표물 추정 기술에서는 UWB를 통한 거리 측정 데이터와 주행기록(odometry) 데이터를 융합하여 로봇 중심 좌표계에서 목표물의 상대 위치를 추정하는 알고리즘과 이러한 알고리즘에 적합한 통신 방식, 그리고 상대 위치 추정 이후 로봇이 목표물을 추종하도록 만드는 구동 방식을 제공할 수 있다.In this way, the target estimation technology of the robot according to the present embodiment can provide an algorithm for estimating the relative position of the target in the robot-centered coordinate system by fusing distance measurement data through UWB and odometry data, a communication method suitable for the algorithm, and a driving method for making the robot follow the target after the relative position estimation.

도 6은 본 발명의 다른 실시예에 따른 목표물 추종 로봇의 주요 구성에 대한 블록도이다. 도 7은 도 6의 목표물 추종 로봇이 목표물을 추종하면서 다른 로봇의 추종을 받은 형태에 대한 예시도이다. 그리고 도 8은 도 6의 목표물 추종 로봇인 드론이 목표물인 다른 드론을 추종하는 형태에 대한 예시도이다.Fig. 6 is a block diagram of the main configuration of a target-following robot according to another embodiment of the present invention. Fig. 7 is an exemplary diagram of a form in which the target-following robot of Fig. 6 follows a target while being followed by another robot. And Fig. 8 is an exemplary diagram of a form in which the target-following robot, which is a drone, of Fig. 6 follows another drone, which is a target.

도 6을 참조하면, 목표물 추종 로봇(100)은 적어도 하나의 프로세서(110) 및 메모리(120)를 포함할 수 있다. 또한, 목표물 추종 로봇(100)은 네트워크와 연결되어 통신을 수행하는 네트워크 인터페이스(I/F)와 연결될 수 있다. 네트워크 인터페이스(140)는 목표물 추종 로봇(100)에 포함될 수도 있다. 또한, 목표물 추종 로봇(100)은 UWB 통신 모듈(150)과 주행기록(odometry) 측정 장비(160)에 연결될 수 있다. UWB 통신 모듈(150)과 주행기록(odometry) 측정 장비(160)는 로봇(100)에 포함될 수도 있다.Referring to FIG. 6, the target following robot (100) may include at least one processor (110) and memory (120). In addition, the target following robot (100) may be connected to a network interface (I/F) that is connected to a network and performs communication. The network interface (140) may be included in the target following robot (100). In addition, the target following robot (100) may be connected to a UWB communication module (150) and an odometry measurement device (160). The UWB communication module (150) and the odometry measurement device (160) may be included in the robot (100).

프로세서(110)는 메모리(120) 또는 이에 대응하는 저장 장치에 저장된 프로그램이나 명령어(instructions)을 실행할 수 있다. 프로세서(110)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(120) 또는 저장 장치는 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(120)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중에서 적어도 하나로 구성될 수 있다.The processor (110) can execute a program or instructions stored in the memory (120) or a storage device corresponding thereto. The processor (110) may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor in which methods according to embodiments of the present invention are performed. The memory (120) or the storage device may be configured with at least one of a volatile storage medium and a nonvolatile storage medium. For example, the memory (120) may be configured with at least one of a read only memory (ROM) and a random access memory (RAM).

또한, 목표물 추종 로봇(100)은 목표물 추종 로봇 알고리즘(130)을 포함할 수 있다. 목표물 추종 로봇 알고리즘(130)은 초기화 모듈(131), 대기제어 모듈(132), 추정 모듈(133), 예측 모듈(134), 보정 모듈(135) 및 추종거리조정 모듈(136)을 포함할 수 있다. 목표물 추종 로봇 알고리즘(130)은 메모리(120)에 데이터(122) 또는 프로그램의 일부, 명령어들(124)의 일부로 저장될 수 있고, 프로세서(110)에 탑재되어 실행될 수 있다.In addition, the target following robot (100) may include a target following robot algorithm (130). The target following robot algorithm (130) may include an initialization module (131), a waiting control module (132), an estimation module (133), a prediction module (134), a correction module (135), and a following distance adjustment module (136). The target following robot algorithm (130) may be stored in a memory (120) as data (122) or a part of a program, a part of instructions (124), and may be loaded onto a processor (110) and executed.

메시지 송수신 모듈은 네트워크 인터페이스(140)를 통해 SS-TWR(single-sided two-way ranging) 폴(poll) 메시지를 목표물에 전송하고, 목표물로부터 SS-TWR 폴 메시지에 대한 응답 메시지를 수신할 수 있다. 응답 메시지는 목표물의 제2 주행기록 측정 장치의 제2 주행기록 정보를 포함한다.The message transmission/reception module can transmit a single-sided two-way ranging (SS-TWR) poll message to a target through a network interface (140) and receive a response message to the SS-TWR poll message from the target. The response message includes second driving record information of the second driving record measuring device of the target.

초기화 모듈(131)은 목표물의 추종 요청에 따라 로봇 자신의 추종 알고리즘에 사용할 상대 위치 벡터와 공분산을 초기화한다.The initialization module (131) initializes the relative position vector and covariance to be used in the robot's own tracking algorithm according to the target tracking request.

대기제어 모듈(132)는 초기화 후에 공분산의 노름(norm)이 사용자가 지정하는 특정값 이하가 될 때까지 추종 프로세스의 작동 시작 시점을 지연시킬 수 있다.The standby control module (132) can delay the start of the operation of the tracking process until the norm of the covariance becomes less than or equal to a user-specified specific value after initialization.

추정 모듈(133)은 목표물의 응답 메시지에 기초하여 로봇의 UWB 모듈의 중심 좌표계를 기준으로 목표물과의 상대 위치를 추정할 수 있다. 즉, 추정 모듈(133)은 목표물까지의 거리를, SS-TWR 방식으로 산출한 왕복지연시간(round trip delay, RTT)에 기초하여 추정할 수 있다.The estimation module (133) can estimate the relative position to the target based on the center coordinate system of the UWB module of the robot based on the response message of the target. That is, the estimation module (133) can estimate the distance to the target based on the round trip delay (RTT) calculated using the SS-TWR method.

예측 모듈(134)은 제2 주행기록 정보와 제1 주행기록 측정 장치의 제1 주행기록 정보를 통해 목표물의 위치를 예측할 수 있다.The prediction module (134) can predict the location of the target using the second driving record information and the first driving record information of the first driving record measuring device.

보정 모듈(135)은 추정한 거리를 토대로 앞서 예측한 목표물의 위치를 보정할 수 있다.The correction module (135) can correct the previously predicted position of the target based on the estimated distance.

추종거리조정 모듈(136)은 목표물로부터 받은 추종 거리 관련 정보에 따라 추종 거리를 조정할 수 있다.The tracking distance adjustment module (136) can adjust the tracking distance according to tracking distance related information received from the target.

본 실시예에 의하면, 도 7에 도시한 바와 같이 제1 로봇(30)이 목표물(10)을 추종하고, 제3 UWB 통신 모듈(52)과 제3 주행기록 측정 장비(54)를 탑재한 제2 로봇(50)이 제 1 로봇을 추종하도록 할 수 있다. 이때, 제1 로봇(30)은 목표물(10)과의 1회의 왕복 메시지 송수신을 통해 목표물 추종을 위한 위치 정보를 획득하고, 제2 로봇(50)은 제1 로봇(30)과 1회의 왕복 메시지 송수신을 통해 제1 로봇(30)의 추종을 위한 위치 정보를 획득할 수 있다.According to the present embodiment, as shown in Fig. 7, a first robot (30) can track a target (10), and a second robot (50) equipped with a third UWB communication module (52) and a third driving record measuring device (54) can track the first robot. At this time, the first robot (30) can obtain position information for tracking the target through one round-trip message transmission and reception with the target (10), and the second robot (50) can obtain position information for tracking the first robot (30) through one round-trip message transmission and reception with the first robot (30).

또한 도 8에 도시한 바와 같이, 드론(70, 90)에도 적용될 수 있으며, 각 드론은 자신의 방향 예컨대, 요(yaw) 방향과 자신의 속도를 추정할 수 있고, 자신의 요 속도(yaw rate) 및 직후진(velocity_front) 속도를 제어할 수 있다고 가정한다. 이때 드론의 상하 운동은 고려하지 않는다. 제2 드론(90)은 제1 드론(70)과 거리 측정 및 주행기록을 공유할 수 있고, 제1 드론(70)의 상대 위치(Lp)를 추정하고, 이에 기초하여 목표물 추종 알고리즘을 통해 제1 드론(70)을 추종(Fm)할 수 있다. 본 실시예에 따른 목표물 추종 방법은 제2 드론(90)의 정면이 제1 드론(70)을 향하고 제1 드론(70)과의 거리가 일정하도록 제어하는데 사용될 수 있다.Also, as illustrated in FIG. 8, it can be applied to drones (70, 90), and it is assumed that each drone can estimate its own direction, for example, the yaw direction and its own speed, and control its own yaw rate and velocity_front speed. At this time, the up-and-down movement of the drone is not considered. The second drone (90) can share distance measurement and driving records with the first drone (70), estimate the relative position (Lp) of the first drone (70), and track (Fm) the first drone (70) based on this through a target tracking algorithm. The target tracking method according to the present embodiment can be used to control the front of the second drone (90) to face the first drone (70) and the distance from the first drone (70) to be constant.

본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.The methods according to the present invention may be implemented in the form of program commands that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program commands, data files, data structures, etc., alone or in combination. The program commands recorded on the computer-readable medium may be those specially designed and configured for the present invention or may be known and available to those skilled in the art of computer software.

컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer-readable media include hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, and flash memory. Examples of program instructions include not only machine language codes generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter, etc. The above-described hardware devices can be configured to operate with at least one software module to perform the operations of the present invention, and vice versa.

이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the present invention has been described with reference to the above embodiments, it will be understood by those skilled in the art that various modifications and changes can be made to the present invention without departing from the spirit and scope of the present invention as set forth in the claims below.

Claims (20)

제1 UWB(ultra-wideband) 통신 모듈과 제1 주행기록 측정 장치를 탑재한 로봇에서 목표물을 추종하는 방법으로서,
목표물의 추종 요청에 따라 로봇 자신의 추종 알고리즘을 초기화하는 단계;
SS-TWR(single-sided two-way ranging) 폴(poll) 메시지를 송출하는 단계;
상기 목표물로부터 상기 SS-TWR 폴 메시지에 대한 단일 응답 메시지를 받는 단계-상기 단일 응답 메시지는 상기 목표물의 제2 주행기록 측정 장치의 제2 주행기록 정보를 포함함-;
상기 목표물까지의 거리를, SS-TWR 방식으로 산출한 왕복지연시간(round trip delay)에 기초하여 추정하는 단계; 및
상기 제2 주행기록 정보와 상기 제1 주행기록 측정 장치의 제1 주행기록 정보를 통해 상기 목표물의 위치를 예측하는 단계; 및
상기 추정한 거리를 토대로 상기 목표물의 위치를 보정하는 단계;
를 포함하고,
상기 제1 또는 제2 주행기록 측정 장치는, 자세 추정을 위한 관성 측정 장치(inertial measurement unit, IMU)와 변위 추정을 위한 가속도계를 포함하며,
상기 거리 및 상기 위치는 상기 제1 UWB 통신 모듈을 중심으로 하는 모듈 좌표계의 좌표값으로 산출되고,
상기 목표물의 제2 UWB 통신 모듈의 변위 측정값은 상기 제2 주행기록 측정 장치의 위치 변화값을 좌표변환하여 생성되는, 목표물 추종 방법.
A method for tracking a target in a robot equipped with a first UWB (ultra-wideband) communication module and a first driving record measuring device,
A step of initializing the robot's own tracking algorithm according to the target's tracking request;
A step of transmitting a SS-TWR (single-sided two-way ranging) poll message;
A step of receiving a single response message to the SS-TWR poll message from the target, the single response message including second driving record information of a second driving record measuring device of the target;
A step of estimating the distance to the target based on the round trip delay calculated using the SS-TWR method; and
A step of predicting the location of the target using the second driving record information and the first driving record information of the first driving record measuring device; and
A step of correcting the position of the target based on the estimated distance;
Including,
The first or second driving record measuring device includes an inertial measurement unit (IMU) for attitude estimation and an accelerometer for displacement estimation.
The above distance and the above location are calculated as coordinate values of the module coordinate system centered on the first UWB communication module,
A target tracking method in which the displacement measurement value of the second UWB communication module of the above target is generated by converting the position change value of the second driving record measuring device into coordinates.
청구항 1에 있어서,
상기 초기화하는 단계는, 상기 목표물로부터 기지정된 프로토콜에 따라 수신한 추종 요청 메시지에 기초하여 상대 위치 벡터 및 공분산을 초기화하는, 목표물 추종 방법.
In claim 1,
A target tracking method, wherein the initializing step initializes a relative position vector and covariance based on a tracking request message received from the target according to a pre-specified protocol.
청구항 2에 있어서,
상기 추종 요청 메시지는 상기 목표물의 제2 UWB 통신 모듈의 주소, 상대 위치 추종 알고리즘 주기, 상기 제2 주행기록 측정 장치의 정밀도 관련 정보를 포함하는, 목표물 추종 방법.
In claim 2,
A target tracking method, wherein the tracking request message includes an address of the second UWB communication module of the target, a relative position tracking algorithm cycle, and information related to the precision of the second driving record measuring device.
청구항 1에 있어서,
상기 추정하는 단계 전에, 상대 위치 벡터와 공분산을 초기화하는 단계를 더 포함하는, 목표물 추종 방법.
In claim 1,
A target tracking method, further comprising a step of initializing a relative position vector and covariance before the above estimating step.
청구항 4에 있어서,
상기 초기화하는 단계 후에 상기 공분산의 노름(norm)이 특정값 이하가 될 때까지 대기하고, 상기 공분산의 노름이 특정값 이하가 될 때 상기 목표물에 대한 추종을 시작하는 단계;를 더 포함하는 목표물 추종 방법.
In claim 4,
A target tracking method further comprising: a step of waiting until the norm of the covariance becomes less than or equal to a specific value after the initializing step, and starting tracking of the target when the norm of the covariance becomes less than or equal to the specific value.
청구항 1에 있어서,
상기 예측하는 단계는, 상기 로봇이 측정한 목표물과의 거리 정보, 상기 제1 주행기록 정보 및 상기 제2 주행기록 정보를 통해 상기 목표물과의 상대 위치를 추정하는, 목표물 추종 방법.
In claim 1,
The above-mentioned predicting step is a target tracking method in which the robot estimates a relative position with respect to the target using distance information with respect to the target measured by the robot, the first driving record information, and the second driving record information.
청구항 6에 있어서,
상기 예측하는 단계는, 확장 칼만 필터를 이용하여 상대 위치 벡터 및 공분산을 동시에 추정하는, 목표물 추종 방법.
In claim 6,
The above-mentioned predicting step is a target tracking method that simultaneously estimates the relative position vector and covariance using an extended Kalman filter.
청구항 1에 있어서,
상기 예측하는 단계 및 상기 보정하는 단계는, 확장 칼만 필터를 적용한 상대 위치 추정 알고리즘을 통해 상대 위치를 추정하며,
[상대 위치 추정 알고리즘]

상기 상대 위치 추정 알고리즘에서, s()는 로봇에서 목표물까지의 상대 위치 벡터를 의미하는 3차원 벡터를, P()는 s()의 공분산을, k는 사용자가 튜닝가능한 값을, Q_object는 초기화 때 받은 목표물의 제2 주행기록 측정 장치의 정밀도를, 그리고 Q_robot은 로봇의 제1 주행기록 측정 장치의 정밀도를 각각 나타내고, 측정 모델 H는 제1 및 제2 주행기록 측정 장치들의 차이를 통해 획득 가능하고, R은 UWB의 거리 측정 정밀도를 나타내는, 목표물 추종 방법.
In claim 1,
The above-mentioned predicting step and the above-mentioned correcting step estimate the relative position through a relative position estimation algorithm that applies an extended Kalman filter,
[Relative Position Estimation Algorithm]

A target tracking method wherein, in the above relative position estimation algorithm, s() represents a three-dimensional vector meaning a relative position vector from a robot to a target, P() represents the covariance of s(), k represents a user-tunable value, Q_object represents the precision of the second driving record measuring device of the target received at initialization, and Q_robot represents the precision of the first driving record measuring device of the robot, a measurement model H can be obtained through the difference between the first and second driving record measuring devices, and R represents the distance measurement precision of UWB.
청구항 8에 있어서,
상기 예측하는 단계 및 상기 보정하는 단계는, 상기 상대 위치 추정 알고리즘을 통해 상기 목표물의 위치의 공분산이 미리 설정된 지정 값 이하로 내려갈 때 상기 목표물의 추종을 위해 수행되는, 목표물 추종 방법.
In claim 8,
A target tracking method, wherein the above-mentioned predicting step and the above-mentioned correcting step are performed for tracking the target when the covariance of the position of the target falls below a preset value through the relative position estimation algorithm.
청구항 1에 있어서,
상기 보정된 위치를 토대로 상기 목표물을 추종하는 중에 상기 목표물로부터 UWB 데이터 통신을 통해 추종 거리 관련 정보를 수신하는 단계; 및
상기 추종 거리 관련 정보에 기초하여 상기 목표물에 대한 추종 거리를 조정하는 단계를 더 포함하는, 목표물 추종 방법.
In claim 1,
A step of receiving tracking distance related information from the target via UWB data communication while tracking the target based on the corrected position; and
A target tracking method further comprising a step of adjusting a tracking distance to the target based on the tracking distance related information.
삭제delete 삭제delete 제1 UWB(ultra-wideband) 통신 모듈과 제1 주행기록 측정 장치를 탑재하고 목표물을 추종하는 장치로서,
프로세서;
상기 프로세서에 의해 실행되는 명령어들; 및
상기 명령어들을 저장하는 메모리를 포함하고,
상기 프로세서에 의해 실행될 때, 상기 명령어들은 상기 프로세서가:
목표물의 추종 요청에 따라 로봇 자신의 추종 알고리즘을 초기화하는 단계;
SS-TWR(single-sided two-way ranging) 폴(poll) 메시지를 송출하는 단계;
상기 목표물로부터 상기 SS-TWR 폴 메시지에 대한 단일 응답 메시지를 받는 단계-상기 단일 응답 메시지는 상기 목표물의 제2 주행기록 측정 장치의 제2 주행기록 정보를 포함함-;
상기 목표물까지의 거리를, SS-TWR 방식으로 산출한 왕복지연시간(round trip delay)에 기초하여 추정하는 단계; 및
상기 제2 주행기록 정보와 상기 제1 주행기록 측정 장치의 제1 주행기록 정보를 통해 상기 목표물의 위치를 예측하는 단계; 및
상기 추정한 거리를 토대로 상기 목표물의 위치를 보정하는 단계;
를 수행하도록 하며,
상기 제1 또는 제2 주행기록 측정 장치는, 자세 추정을 위한 관성 측정 장치(inertial measurement unit, IMU)와 변위 추정을 위한 가속도계를 포함하고,
상기 거리 및 상기 위치는 상기 제1 UWB 통신 모듈을 중심으로 하는 모듈 좌표계의 좌표값으로 산출되고,
상기 목표물의 제2 UWB 통신 모듈의 변위 측정값은 상기 제2 주행기록 측정 장치의 위치 변화값을 좌표변환하여 생성되는, 목표물 추종 장치.
A device that tracks a target and is equipped with a first UWB (ultra-wideband) communication module and a first driving record measuring device.
processor;
instructions executed by said processor; and
Contains a memory for storing the above commands,
When executed by said processor, said instructions cause said processor to:
A step of initializing the robot's own tracking algorithm according to the target's tracking request;
A step of transmitting a SS-TWR (single-sided two-way ranging) poll message;
A step of receiving a single response message to the SS-TWR poll message from the target, the single response message including second driving record information of a second driving record measuring device of the target;
A step of estimating the distance to the target based on the round trip delay calculated using the SS-TWR method; and
A step of predicting the location of the target using the second driving record information and the first driving record information of the first driving record measuring device; and
A step of correcting the position of the target based on the estimated distance;
To perform,
The first or second driving record measuring device includes an inertial measurement unit (IMU) for attitude estimation and an accelerometer for displacement estimation,
The above distance and the above location are calculated as coordinate values of the module coordinate system centered on the first UWB communication module,
A target tracking device in which the displacement measurement value of the second UWB communication module of the above target is generated by converting the position change value of the second driving record measuring device into coordinates.
청구항 13에 있어서,
상기 프로세서가, 상기 초기화하는 단계에서 상기 목표물로부터 기지정된 프로토콜에 따라 수신한 추종 요청 메시지에 기초하여 상대 위치 벡터 및 공분산을 초기화하는, 목표물 추종 장치.
In claim 13,
A target tracking device, wherein the processor initializes a relative position vector and covariance based on a tracking request message received from the target according to a pre-designated protocol in the initializing step.
청구항 14에 있어서,
상기 추종 요청 메시지는 상기 목표물의 제2 UWB 통신 모듈의 주소, 상대 위치 추종 알고리즘 주기, 상기 제2 주행기록 측정 장치의 정밀도 관련 정보를 포함하는, 목표물 추종 장치.
In claim 14,
A target tracking device, wherein the tracking request message includes the address of the second UWB communication module of the target, a relative position tracking algorithm cycle, and information related to the precision of the second driving record measuring device.
청구항 13에 있어서,
상기 프로세서가, 상기 추정하는 단계 전에, 상대 위치 벡터와 공분산을 초기화하는 단계를 더 수행하도록 하는, 목표물 추종 장치.
In claim 13,
A target tracking device, wherein the processor further performs, before the estimating step, a step of initializing a relative position vector and covariance.
청구항 16에 있어서,
상기 프로세서가, 상기 초기화하는 단계 후에 상기 공분산의 노름(norm)이 특정값 이하가 될 때까지 대기하고, 상기 공분산의 노름이 특정값 이하가 될 때 상기 목표물에 대한 추종을 시작하는 단계를 더 수행하도록 하는 목표물 추종 장치.
In claim 16,
A target tracking device which causes the processor to further perform a step of waiting until the norm of the covariance becomes less than or equal to a specific value after the initializing step, and starting tracking of the target when the norm of the covariance becomes less than or equal to the specific value.
청구항 13에 있어서,
상기 프로세서가, 상기 예측하는 단계에서 상기 로봇이 측정한 목표물과의 거리 정보, 상기 제1 주행기록 정보 및 상기 제2 주행기록 정보를 통해 상기 목표물과의 상대 위치를 추정하도록 하는, 목표물 추종 장치.
In claim 13,
A target tracking device that causes the processor to estimate a relative position with respect to the target using distance information from the target measured by the robot in the predicting step, the first driving record information, and the second driving record information.
청구항 18에 있어서,
상기 프로세서가, 상기 예측하는 단계에서 확장 칼만 필터를 이용하여 상대 위치 벡터 및 공분산을 동시에 추정하도록 하는, 목표물 추종 장치.
In claim 18,
A target tracking device, wherein the processor simultaneously estimates a relative position vector and covariance using an extended Kalman filter in the predicting step.
청구항 13에 있어서,
상기 프로세서가,
상기 보정된 위치를 토대로 상기 목표물을 추종하는 중에 상기 목표물로부터 UWB 데이터 통신을 통해 추종 거리 관련 정보를 수신하는 단계; 및
상기 추종 거리 관련 정보에 기초하여 상기 목표물에 대한 추종 거리를 조정하는 단계를 더 수행하도록 하는, 목표물 추종 장치.
In claim 13,
The above processor,
A step of receiving tracking distance related information from the target via UWB data communication while tracking the target based on the corrected position; and
A target tracking device further comprising: a step of adjusting a tracking distance to the target based on the tracking distance related information.
KR1020210088738A 2021-07-06 2021-07-06 Method and apparatus for object following robot using uwb and odometry-based relative position estimation KR102752454B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210088738A KR102752454B1 (en) 2021-07-06 2021-07-06 Method and apparatus for object following robot using uwb and odometry-based relative position estimation
US17/523,501 US12093055B2 (en) 2021-07-06 2021-11-10 Method and apparatus for object following robot using UWB and odometry-based relative position estimation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210088738A KR102752454B1 (en) 2021-07-06 2021-07-06 Method and apparatus for object following robot using uwb and odometry-based relative position estimation

Publications (2)

Publication Number Publication Date
KR20230007877A KR20230007877A (en) 2023-01-13
KR102752454B1 true KR102752454B1 (en) 2025-01-10

Family

ID=84798085

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210088738A KR102752454B1 (en) 2021-07-06 2021-07-06 Method and apparatus for object following robot using uwb and odometry-based relative position estimation

Country Status (2)

Country Link
US (1) US12093055B2 (en)
KR (1) KR102752454B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240361447A1 (en) * 2023-04-18 2024-10-31 Samsung Electronics Co., Ltd. Indoor localization using a state machine
KR20240159300A (en) * 2023-04-28 2024-11-05 삼성전자주식회사 Method and apparatus for obtaining location of device in wireless communication system
CN118519436A (en) * 2024-05-11 2024-08-20 湖南信息职业技术学院 Following robot control method, system, equipment and storage medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200033857A1 (en) * 2018-07-24 2020-01-30 Huili Yu Autonomous target following method and device

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8380362B2 (en) * 2009-07-10 2013-02-19 The Boeing Company Systems and methods for remotely collaborative vehicles
CN101630413B (en) * 2009-08-14 2012-01-25 浙江大学 Multi-robot tracked mobile target algorithm
KR20140108821A (en) 2013-02-28 2014-09-15 삼성전자주식회사 Mobile robot and method of localization and mapping of mobile robot
CN109144043A (en) * 2017-06-27 2019-01-04 金宝电子工业股份有限公司 Method for tracking target object
KR102554881B1 (en) 2018-04-11 2023-07-12 현대자동차주식회사 Transmission for electric vehicle
US11169539B2 (en) 2018-05-04 2021-11-09 Lg Electronics Inc. Plurality of autonomous mobile robots and controlling method for the same
KR102100941B1 (en) 2018-05-04 2020-04-14 엘지전자 주식회사 A plurality of autonomous mobile robots and a controlling method for the same
EP3831544A4 (en) * 2018-08-21 2022-03-30 Siemens Aktiengesellschaft METHOD, DEVICE AND SYSTEM FOR CORRECTING OFFLINE PROGRAMMERS, MEDIA AND TERMINAL
US11511425B2 (en) * 2019-03-19 2022-11-29 Lg Electronics Inc. Robot stopping parallel to installed object and method of stopping the same
JP7234895B2 (en) * 2019-10-15 2023-03-08 トヨタ自動車株式会社 Robot use system
CN112788516A (en) * 2019-11-04 2021-05-11 高立志 Fire-fighting scheduling method, device and system and terminal equipment
KR102257445B1 (en) 2019-11-12 2021-05-31 주식회사 오딘로보틱스 UWB Anchor Control System for Improving Object Location Perception of Object Tracking Robots to Track UWB Tags

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200033857A1 (en) * 2018-07-24 2020-01-30 Huili Yu Autonomous target following method and device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
양정기외 2명. 다중 드론의 상대 위치 추정을 위한 UWB/INS 기반 가상 좌표계 형성 알고리즘. 한국항공우주학회. 2020.11.30. pp.636-637

Also Published As

Publication number Publication date
US20230008482A1 (en) 2023-01-12
KR20230007877A (en) 2023-01-13
US12093055B2 (en) 2024-09-17

Similar Documents

Publication Publication Date Title
KR102752454B1 (en) Method and apparatus for object following robot using uwb and odometry-based relative position estimation
US20220334598A1 (en) Distributed localization systems and methods and self-localizing apparatus
US9606219B2 (en) Systems and methods for locating a target in a GPS-denied environment
US11656348B2 (en) Device and method for ultra-wide band ranging
US8983685B2 (en) System and method for moving-base RTK measurements
CN107479513B (en) Positioning method and system, and electronic device
US9846241B2 (en) Navigation system and method using RTK with data received from a mobile base station
KR20180019617A (en) Method and system for scheduling transmission of a position recognition signal and operating its own position recognition device
US10942029B2 (en) Tracking a target using multiple tracking systems
KR102459019B1 (en) Method for location tracking employing grouping flight to UWB
US20210278864A1 (en) Methods and systems for estimating the orientation of an object
CN106412840A (en) Information transmission method of unmanned device, and base station
Wu et al. Mobility control of unmanned aerial vehicle as communication relay in airborne multi-user systems
CN116567531A (en) Sensor Fusion Indoor Positioning Method and System Based on Particle Filter Algorithm
US20210132182A1 (en) Estimation and tracking of position information in a distributed radio frequency (rf) communications system
US20210319568A1 (en) Cooperative Aircraft Navigation
US20220007137A1 (en) Machine learning techniques for location tracking
Yang et al. Ultrawideband coupled relative positioning algorithm applicable to flight controller for multidrone collaboration
Gao et al. Moving horizon estimation for cooperative localisation with communication delay
KR100937876B1 (en) Method and apparatus of satellite tracking and data transmission in the uplink station
US20210310776A1 (en) Method for ascertaining position information for an effector, effector, computing unit and weapons system
Whitacre et al. Cooperative estimation using mobile sensor nodes in the presence of communication loss
CN114608572B (en) Method for realizing AGV indoor positioning by combining UWB and IMU
KR102533943B1 (en) Error cancellation method and device for IMU and gyroscope data using linear Kalman filter and GNSS information
CN111148210A (en) Subscriber station of a mobile communication system and operating method for the subscriber station

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20210706

PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20220316

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20210706

Comment text: Patent Application

PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20240429

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20241128

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20250106

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20250106

End annual number: 3

Start annual number: 1

PG1601 Publication of registration