KR20230007877A - 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
KR20230007877A
KR20230007877A KR1020210088738A KR20210088738A KR20230007877A KR 20230007877 A KR20230007877 A KR 20230007877A KR 1020210088738 A KR1020210088738 A KR 1020210088738A KR 20210088738 A KR20210088738 A KR 20210088738A KR 20230007877 A KR20230007877 A KR 20230007877A
Authority
KR
South Korea
Prior art keywords
target
robot
tracking
relative position
driving record
Prior art date
Application number
KR1020210088738A
Other languages
Korean (ko)
Inventor
양정기
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020210088738A priority Critical patent/KR20230007877A/en
Priority to US17/523,501 priority patent/US20230008482A1/en
Publication of KR20230007877A publication Critical patent/KR20230007877A/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/12Target-seeking control
    • 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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
    • 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]

Abstract

A method and device for tracking the relative position of a target in a robot-centered coordinate system by fusing distance measuring data and odometer data through UWB and enabling a robot to track the target through an appropriate communication method and driving method are disclosed. A target tracking method comprises the steps of: initializing a tracking algorithm of the robot according to a tracking request of the target; transmitting an 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 odometer information of a second odometer measuring device of the target; estimating based on the round-trip delay time calculated by using an SS-TWR method; predicting the position of the target through the second odometer information and first odometer information of a first odometer measuring device of the robot; and 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 following a target of a robot using UWB and odometer-based relative position estimation

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

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

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

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

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

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

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

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

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

상기 기술적 과제를 해결하기 위한 본 발명의 일 측면에 따른 로봇의 목표물 추종 방법은, 제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 주행기록 정보를 통해 상기 목표물의 위치를 예측하는 단계; 및 상기 추정한 거리를 토대로 상기 예측한 목표물의 위치를 보정하는 단계를 포함한다.A method for following a target of a robot according to an aspect of the present invention for solving the above technical problem is a method for following a target in a robot equipped with a first ultra-wideband (UWB) communication module and a first driving record measurement device, Initializing the robot's own tracking algorithm according to the target's tracking request; sending 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 history information of a second driving history measuring device of the target; estimating a distance to the target based on a round trip delay (RTD) calculated by an SS-TWR method; and predicting a location of the target through the second driving record information and the first driving record information of the first driving record measuring device. and correcting the predicted position of the target based on the estimated distance.

일실시예에서, 상기 초기화하는 단계는, 상기 목표물로부터 기지정된 프로토콜에 따라 수신한 추종 요청 메시지에 기초하여 상대 위치 벡터 및 공분산을 초기화할 수 있다.In an embodiment, in the initializing, the relative position vector and covariance may be initialized based on a follow-up request message received from the target according to a predetermined 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 period of a relative position tracking algorithm, and accuracy-related information of the second driving record measuring device.

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

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

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

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

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

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

일실시예에서, 목표물 추종 방법은, 상기 보정된 위치를 토대로 상기 목표물을 추종하는 중에 상기 목표물로부터 UWB 데이터 통신을 통해 추종 거리 관련 정보를 수신하는 단계; 및 상기 추정 거리 관련 정보에 기초하여 상기 목표물에 대한 추종 거리를 조정하는 단계를 더 포함할 수 있다.In one embodiment, the method for following a target may include receiving tracking distance-related information from a target through UWB data communication while tracking the target based on the corrected position; and adjusting a 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 measurement device may include an inertial measurement unit (IMU) for posture estimation, a camera sensor, an accelerometer for displacement estimation, or a combination thereof. Further, the distance and the position have the same attitude of the travel history reference coordinate system of each of the first and second travel history measurement devices, and each travel history measurement device may include a geomagnetic device for this same attitude.

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

상기 기술적 과제를 해결하기 위한 본 발명의 다른 측면에 따른 목표물 추종 장치는, 제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 주행기록 정보를 통해 상기 목표물의 위치를 예측하는 단계; 및 상기 추정한 거리를 토대로 상기 목표물의 위치를 보정하는 단계를 수행하도록 이루어진다.A target tracking device according to another aspect of the present invention for solving the above technical problem is a device for following a target equipped with a first ultra-wideband (UWB) communication module and a first driving record measurement device, comprising: a processor; instructions executed by the processor; and a memory for storing the instructions, wherein when executed by the processor, the instructions cause the processor to: initialize a robot's own tracking algorithm according to a target tracking request; sending 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 history information of a second driving history measuring device of the target; estimating a distance to the target based on a round trip delay (RTD) calculated by an SS-TWR method; predicting a location of the target through 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 an embodiment, the target tracking device may cause the processor to initialize the relative position vector and the covariance based on a tracking request message received from the target according to a predetermined protocol in the initializing step.

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

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

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

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

일실시예에서 목표물 추종 장치는 프로세서가, 상기 보정된 위치를 토대로 상기 목표물을 추종하는 중에 상기 목표물로부터 UWB 데이터 통신을 통해 추종 거리 관련 정보를 수신하는 단계; 및 상기 추정 거리 관련 정보에 기초하여 상기 목표물에 대한 추종 거리를 조정하는 단계를 더 수행하도록 할 수 있다.In one embodiment, the target tracking device includes: receiving, by a processor, tracking distance-related information from the target through UWB data communication while tracking the target based on the corrected position; and adjusting a 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, it is possible to provide a new algorithm that enables a robot to effectively follow a target based on a relative position estimated through ultra-wideband (UWB) and odometry. That is, the UWB system used in the existing target-following robot technology divided the roles into anchor and tag, but in this embodiment, the role of the UWB system is not divided and the odometer is used together to track the robot and the target. Each UWB communication module mounted on each is implemented to be a subject that is followed and a subject that is being followed, thereby enabling the first robot to effectively follow the user and another second robot to follow the second robot. It can be implemented simply and efficiently.

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

아울러, 본 발명에 따른 목표물 추종 로봇 알고리즘은 무인이동체, 드론 등을 포함하는 거의 모든 로봇에서 통용하는 제어입력을 이용하여 해당 로봇을 제어할 수 있으므로, 다양한 로봇에 효과적으로 적용할 수 있는 장점이 있다.In addition, since the target-following robot algorithm according to the present invention can control the robot using a control input 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의 목표물 추종 로봇인 드론이 목표물인 다른 드론을 추종하는 형태에 대한 예시도이다.
1 is an exemplary diagram for explaining the operating principle of a target following robot according to an embodiment of the present invention.
FIG. 2 is a diagram for explaining a message transfer process between the target following robot of FIG. 1 and a target.
FIG. 3 is a flowchart of a method for estimating a target of the target following robot of FIG. 1 .
FIG. 4 is a flowchart of additional procedures that may be employed in the target tracking method of FIG. 3 .
FIG. 5 is a flowchart of yet another additional procedure that may be employed in the target tracking method of FIG. 3 .
6 is a block diagram of the main components of a target following robot according to another embodiment of the present invention.
FIG. 7 is an exemplary view of a form in which the target following robot of FIG. 6 follows another robot while following a target.
FIG. 8 is an exemplary view of a form in which a drone, which is the target following robot of FIG. 6 , follows another drone as a target.

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

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

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.It is understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, but other elements may exist in the middle. It should be. On the other hand, when an element is referred to as “directly connected” or “directly connected” to another element, it should be understood that no other element exists in the middle.

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

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, 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 the present invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and unless explicitly defined in this application, they should not be interpreted in an ideal or excessively formal meaning. don't

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

또한, 용어 로봇(robot)은 인간과 유사한 모습과 기능을 가진 기계를 지칭하거나, 한 개의 컴퓨터 프로그램으로 작동할 수 있고 자동적으로 복잡한 일련의 작업(complex series of actions)을 수행하는 기계적 장치를 지칭하거나, 어떤 작업이나 조작을 자동하는 하는 기계 장치를 지칭할 수 있다. 본 명세서에서 로봇은 목표물을 추종하기 위해 목표물의 움직임에 따라 자신의 움직임을 자동으로 조정하는 모든 이동가능한 기계 장치를 포함한다. 로봇은 드론을 포함할 수 있다. 이 경우, 제1 드론은 정면의 목표물 혹은 제2 드론을 일정 고도에서 일정 거리를 두고 추종할 수 있다.In addition, the term robot refers to a machine with a human-like appearance and function, or a mechanical device that can be operated by a single computer program and automatically performs a complex series of actions. , it can refer to a mechanical device that automates certain tasks or operations. 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. Robots may include drones. In this case, the first drone may follow the front target or the second drone at a certain altitude and at a certain distance.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, with reference to the accompanying drawings, preferred embodiments of the present invention will be described in more detail. In order to facilitate overall understanding in the description of 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의 목표물 추종 방법에 채용할 수 있는 또 다른 추가 절차에 대한 흐름도이다.1 is an exemplary diagram for explaining the operating principle of a target following robot according to an embodiment of the present invention. FIG. 2 is a diagram for explaining a message transfer process between the target following robot of FIG. 1 and a target. FIG. 3 is a flowchart of a method for estimating a target of the target following robot of FIG. 1 . FIG. 4 is a flowchart of additional procedures that may be employed in the target tracking method of FIG. 3 . And FIG. 5 is a flowchart of 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 following robot (hereinafter simply a robot) 30 follows a target 10 . To this end, the robot 30 includes a first UWB communication module 32 and a second driving recorder 34, and similarly, the target 10 also has a second ultra-wideband (UWB) communication module ( 12) and a second travel recording device 14.

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

목표물(10)은 제2 주행기록장치(14)로 자신의 주행기록(odometry)를 측정할 수 있고, 제2 UWB 통신 모듈(12)을 통해 데이터 통신이 가능하다고 가정한다.It is assumed that the target 10 can measure its own odometry with the second driving recorder 14 and data communication is possible through the 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 follow-up request from a target, the robot 30 executes its own estimation algorithm initialization. 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 a response message. The poll message may include a single side two way ranging (SS-TWR) 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 through the second driving record information. In addition, the robot 30 predicts the relative position through its own driving record information (hereinafter referred to as first driving record information) and second driving record information, and then corrects the predicted relative position based on the previously estimated distance. Prediction and correction may follow an extended Kalman filter (EKF) scheme.

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

전술한 로봇(30)의 작동 방법 혹은 목표물 추종 방법을 설명하면 다음과 같다. 도 3에 도시한 바와 같이, 제1 UWB(ultra-wideband) 통신 모듈과 제1 주행기록 측정 장치를 탑재하고 목표물을 추종하는 로봇은, 목표물의 추종 요청에 따라 로봇 자신의 추종 알고리즘을 초기화한다(S31).The operation method or the target tracking method of the above-described robot 30 will be described. As shown in FIG. 3, a robot following a target equipped with a first UWB (ultra-wideband) communication module and a first driving record measurement device initializes its own tracking algorithm according to the target's following 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 travel history information of the second travel history 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 by the SS-TWR method (S35).

다음, 로봇은 제2 주행기록 정보와 제1 주행기록 측정 장치의 제1 주행기록 정보를 통해 목표물의 위치를 예측한다(S36).Next, the robot predicts the location of the target through 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 above-described target 10 and the robot 30, respectively, will be described in more detail.

UWB 통신 장치는 일반적인 UWB 방식을 사용하는 통신 장비로 다른 UWB 통신 장치와 일반적인 데이터 통신이 가능하고 거리 측정이 가능하다고 가정한다. 다만, 본 실시예의 UWB 통신 장치는, 일반적인 UWB RTLS(real-time location system)와 달리 앵커(Anchor)와 태그(Tag)로 구분하지 않고, 단일 모듈 간에 해당 기능 동작이 가능하다. 즉, 태그와 태그끼리도 동작할 수 있도록 구성된다. 또한, 통신을 위해 서로 간의 주소를 알고 있어야 하는데 목표물은 로봇의 UWB 통신 주소를 알고 있다고 가정한다. 목표물은 로봇에 대한 정보를 네트워크를 통해 접속가능한 로봇 제조사의 웹 서비스를 통해 획득하여 저장할 수 있다.It is assumed that the UWB communication device is communication equipment using a general UWB method, and can perform general data communication with other UWB communication devices and measure distance. However, unlike a general UWB real-time location system (RTLS), the UWB communication device of the present embodiment does not distinguish between an anchor and a tag, and allows corresponding functional operation between single modules. That is, 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, while each other needs to know the address for communication. The target may acquire and store information about the robot through a web service of a robot manufacturer accessible through a network.

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

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

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

다음은 추종 초기화와 송수신 메시지에 관해 좀더 구체적으로 설명한다.The following describes follow-up 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 resp message. The robot can estimate the relative position with the target using the EKF method. When using the EKF method or the like, the robot needs to initialize the relative position vector and covariance before estimating the relative position.

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

로봇은 추종 요청을 받은 후 추종 요청 메시지에 포함된 목표물의 UWB 통신 주소로 SS-TWR poll 메시지를 보낼 수 있다. 그리고 로봇은 메시지를 받은 목표물로부터 SS-TWR resp 메시지를 받을 수 있다. 로봇은 응답(resp) 메시지의 SS-TWR을 통해 목표물과의 거리를 측정한다. 거리 측정 후 아래의 [수학식 1]의 방법으로 상대 위치 벡터와 자신의 공분산을 초기화할 수 있다.After receiving the follow-up request, the robot can send an SS-TWR poll message to the target's UWB communication address included in the follow-up request message. And the robot can receive the 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 resp message. After measuring the distance, the relative position vector and its covariance can be initialized by the method of [Equation 1] below.

Figure pat00001
Figure pat00001

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

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

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

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

Figure pat00002
Figure pat00002

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

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

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

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

반면에, 다시 도 2를 참조하면, 본 실시예의 UWB 모듈이나 이를 탑재한 목표물 추종 로봇에서는 동기식 SS-TWR와 데이터 통신을 조합한 메시지 구조 혹은 이러한 메시지 구조를 이용하는 통신 방식을 사용한다.On the other hand, referring to FIG. 2 again, the UWB module or the target following robot equipped with the UWB module of this embodiment uses a message structure combining synchronous SS-TWR and data communication or a communication method using 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 this embodiment, the robot transmits the SS-TWR poll message (poll msg) to the target at the first time T_0 and receives the SS-TWR resp message (resp msg) from the target. The poll message may include message transmission time (Tx_poll_time) information. At this time, the UWB communication module of the object according to the present embodiment, unlike the conventional general method, transmits driving record-related data (odometry data) from the second driving record measurement device (odom module) according to a predetermined cycle. Acquire and save. In addition, the target (object) transmits the SS-TWR resp message with additional data related to the object's own driving record, such as an odometry msg. The SS-TWR resp message may include a protocol header and 1-byte data for SS-TWR, or may include 3 symbols (8bytes*3 symbol) of 8 bytes each. For example, the SS-TWR resp message may include a poll message reception time (Rx_poll_time), a response message transmission time (Tx_resp_time), and odometry data.

추종 초기화 단계에서 정한 주기(period)에 맞춰 로봇(robot)과 목표물(object)이 SS-TWR poll 메시지와 SS-TWR resp 메시지의 두 번의 메시지 교환을 수행하고, 이를 통해 로봇은 상대 위치 추정을 위한 정보를 모두 획득할 수 있다.The robot and the object exchange two messages, SS-TWR poll message and SS-TWR resp message, according to the period set in the follow-up initialization stage. All information can be obtained.

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

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

로봇은 자신의 방향(yaw)와 자신의 속도를 추정할 수 있고, 자신의 방향(yaw rate) 및 직후진(velocity_front) 속도를 제어할 수 있다고 가정한다. 이때 로봇의 상하 운동은 고려하지 않는다. 이러한 움직임은 지상 이동 로봇뿐 아니라 드론에도 적합한 가정이다.It is assumed that the robot can estimate its own direction (yaw) and its own speed, and can control its own direction (yaw rate) and forward speed (velocity_front). At this time, the vertical movement of the robot is not considered. This movement is a good assumption for drones as well as ground mobile robots.

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

Figure pat00003
Figure pat00003

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

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

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

도 6은 본 발명의 다른 실시예에 따른 목표물 추종 로봇의 주요 구성에 대한 블록도이다. 도 7은 도 6의 목표물 추종 로봇이 목표물을 추종하면서 다른 로봇의 추종을 받은 형태에 대한 예시도이다. 그리고 도 8은 도 6의 목표물 추종 로봇인 드론이 목표물인 다른 드론을 추종하는 형태에 대한 예시도이다.6 is a block diagram of the main components of a target following robot according to another embodiment of the present invention. FIG. 7 is an exemplary view of a form in which the target following robot of FIG. 6 follows another robot while following a target. 8 is an exemplary view of a form in which the drone, which is the target-following robot of FIG. 6, follows another drone as 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 a memory 120 . Also, 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 also be included in the target following robot 100 . In addition, the target following robot 100 may be connected to the UWB communication module 150 and the odometry measurement equipment 160 . The UWB communication module 150 and the odometry measurement equipment 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 may execute programs or instructions stored in the memory 120 or a storage device corresponding thereto. The processor 110 may refer to a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to embodiments of the present invention are performed. The memory 120 or the storage device may be composed of at least one of a volatile storage medium and a non-volatile storage medium. For example, the memory 120 may include 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, an atmospheric control module 132, an estimation module 133, a prediction module 134, a correction module 135, and a tracking distance adjustment module 136. there is. The target following robot algorithm 130 may be stored in the memory 120 as data 122 or part of a program or part of instructions 124, and may be loaded and executed in the processor 110.

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

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

추정 모듈(133)은 목표물의 응답 메시지에 기초하여 로봇의 UWB 모듈의 중심 좌표계를 기준으로 목표물과의 상대 위치를 추정할 수 있다. 즉, 추정 모듈(133)은 목표물까지의 거리를, SS-TWR 방식으로 산출한 왕복지연시간(round trip delay, RTT)에 기초하여 추정할 수 있다.The estimation module 133 may estimate a relative position with 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 may 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 may predict the location of the target through the second driving record information and the first driving record information of the first driving record measuring device.

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

추종거리조정 모듈(136)은 목표물로부터 받은 추종 거리 관련 정보에 따라 추종 거리를 조정할 수 있다.The following distance adjustment module 136 may adjust the following distance according to the following 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 this embodiment, as shown in FIG. 7, the first robot 30 follows the target 10, and the third UWB communication module 52 and the third driving record measuring device 54 are installed. The second robot 50 can follow the first robot. At this time, the first robot 30 obtains location information for following the target through one-time round-trip message transmission and reception with the target 10, and the second robot 50 receives one round-trip message with the first robot 30. Position information for following the first robot 30 may be acquired through transmission and reception.

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

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

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

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

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 주행기록 정보를 통해 상기 목표물의 위치를 예측하는 단계; 및
상기 추정한 거리를 토대로 상기 목표물의 위치를 보정하는 단계;
를 포함하는 목표물 추종 방법.
A method for following a target in a robot equipped with a first ultra-wideband (UWB) communication module and a first driving record measuring device, comprising:
Initializing the robot's own tracking algorithm according to the target's tracking request;
sending 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 history information of a second driving history measuring device of the target;
estimating a distance to the target based on a round trip delay calculated using the SS-TWR method; and
predicting a location of the target through 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;
Target tracking method comprising a.
청구항 1에 있어서,
상기 초기화하는 단계는, 상기 목표물로부터 기지정된 프로토콜에 따라 수신한 추종 요청 메시지에 기초하여 상대 위치 벡터 및 공분산을 초기화하는, 목표물 추종 방법.
The method of claim 1,
The initializing step may include initializing a relative position vector and a covariance based on a follow-up request message received from the target according to a predetermined protocol.
청구항 2에 있어서,
상기 추종 요청 메시지는 상기 목표물의 제2 UWB 통신 모듈의 주소, 상대 위치 추종 알고리즘 주기, 상기 제2 주행기록 측정 장치의 정밀도 관련 정보를 포함하는, 목표물 추종 방법.
The method of claim 2,
The tracking request message includes an address of a second UWB communication module of the target, a period of a relative position tracking algorithm, and accuracy-related information of the second driving record measuring device.
청구항 1에 있어서,
상기 추정하는 단계 전에, 상대 위치 벡터와 공분산을 초기화하는 단계를 더 포함하는, 목표물 추종 방법.
The method of claim 1,
The target tracking method of claim 1 , further comprising initializing a relative position vector and covariance before the estimating step.
청구항 4에 있어서,
상기 초기화하는 단계 후에 상기 공분산의 노름(norm)이 특정값 이하가 될 때까지 대기하고, 상기 공분산의 노름이 특정값 이하가 될 때 상기 목표물에 대한 추종을 시작하는 단계;를 더 포함하는 목표물 추종 방법.
The method of claim 4,
After the initializing step, waiting until the norm of the covariance becomes less than or equal to a specific value, and starting tracking the target when the norm of the covariance becomes less than or equal to the specific value; Way.
청구항 1에 있어서,
상기 예측하는 단계는, 상기 로봇이 측정한 목표물과의 거리 정보, 상기 제1 주행기록 정보 및 상기 제2 주행기록 정보를 통해 상기 목표물과의 상대 위치를 추정하는, 목표물 추종 방법.
The method of claim 1,
The predicting step may include estimating a relative position with the target based on distance information from the target measured by the robot, the first driving record information, and the second driving record information.
청구항 6에 있어서,
상기 예측하는 단계는, 확장 칼만 필터를 이용하여 상대 위치 벡터 및 공분산을 동시에 추정하는, 목표물 추종 방법.
The method of claim 6,
In the step of predicting, a relative position vector and covariance are simultaneously estimated using an extended Kalman filter.
청구항 1에 있어서,
상기 예측하는 단계 및 상기 보정하는 단계는, 확장 칼만 필터를 적용한 상대 위치 추정 알고리즘을 통해 상대 위치를 추정하며,
[상대 위치 추정 알고리즘]
Figure pat00004

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

In the relative position estimation algorithm, s() is a 3D vector representing the relative position vector from the robot to the target, P() is the covariance of s(), k is a value tunable by the user, and Q_object is initialized and Q_robot represents the precision of the first driving record measuring device of the robot, respectively, and the measurement model H can be obtained through the difference between the first and second driving record measuring devices. and R represents the distance measurement accuracy of UWB.
청구항 8에 있어서,
상기 예측하는 단계 및 상기 보정하는 단계는, 상기 상대 위치 추정 알고리즘을 통해 상기 목표물의 위치의 공분산이 미리 설정된 지정 값 이하로 내려갈 때 상기 목표물의 추종을 위해 수행되는, 목표물 추종 방법.
The method of claim 8,
The predicting step and the correcting step are performed to track the target when the covariance of the position of the target through the relative position estimation algorithm goes down to a predetermined value or less.
청구항 1에 있어서,
상기 보정된 위치를 토대로 상기 목표물을 추종하는 중에 상기 목표물로부터 UWB 데이터 통신을 통해 추종 거리 관련 정보를 수신하는 단계; 및
상기 추정 거리 관련 정보에 기초하여 상기 목표물에 대한 추종 거리를 조정하는 단계를 더 포함하는, 목표물 추종 방법.
The method of claim 1,
receiving tracking distance-related information from the target through UWB data communication while tracking the target based on the corrected position; and
and adjusting a tracking distance to the target based on the estimated distance related information.
청구항 1에 있어서,
상기 제1 또는 제2 주행기록 측정 장치는, 자세 추정을 위한 관성 측정 장치(inertial measurement unit, IMU)와 변위 추정을 위한 가속도계를 포함하며,
상기 거리 및 상기 위치는 상기 제1 UWB 통신 모듈을 중심으로 하는 모듈 좌표계의 좌표값으로 산출되는, 목표물 추종 방법.
The method of claim 1,
The first or second driving record measurement device includes an inertial measurement unit (IMU) for attitude estimation and an accelerometer for displacement estimation,
The distance and the location are calculated as coordinate values of a module coordinate system centered on the first UWB communication module.
청구항 11에 있어서,
상기 목표물의 제2 UWB 통신 모듈의 변위 측정값은 상기 제2 주행기록 측정 장치의 위치 변화값을 좌표변환하여 생성되는, 목표물 추종 방법.
The method of claim 11,
The displacement measurement value of the second UWB communication module of the target is generated by coordinate transformation of the position change value of the second driving record measuring device.
제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 주행기록 정보를 통해 상기 목표물의 위치를 예측하는 단계; 및
상기 추정한 거리를 토대로 상기 목표물의 위치를 보정하는 단계;
를 수행하도록 하는 목표물 추종 장치.
A device for following a target equipped with a first ultra-wideband (UWB) communication module and a first driving record measuring device, comprising:
processor;
instructions executed by the processor; and
a memory for storing the instructions;
When executed by the processor, the instructions cause the processor to:
Initializing the robot's own tracking algorithm according to the target's tracking request;
sending 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 history information of a second driving history measuring device of the target;
estimating a distance to the target based on a round trip delay calculated using the SS-TWR method; and
predicting a location of the target through 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;
A target tracking device to perform
청구항 13에 있어서,
상기 프로세서가, 상기 초기화하는 단계에서 상기 목표물로부터 기지정된 프로토콜에 따라 수신한 추종 요청 메시지에 기초하여 상대 위치 벡터 및 공분산을 초기화하는, 목표물 추종 장치.
The method of claim 13,
wherein the processor initializes a relative position vector and covariance based on a follow-up request message received from the target according to a predetermined protocol in the initializing step.
청구항 14에 있어서,
상기 추종 요청 메시지는 상기 목표물의 제2 UWB 통신 모듈의 주소, 상대 위치 추종 알고리즘 주기, 상기 제2 주행기록 측정 장치의 정밀도 관련 정보를 포함하는, 목표물 추종 장치.
The method of claim 14,
The tracking request message includes an address of a second UWB communication module of the target, a period of a relative position tracking algorithm, and accuracy-related information of the second driving record measuring device.
청구항 13에 있어서,
상기 프로세서가, 상기 추정하는 단계 전에, 상대 위치 벡터와 공분산을 초기화하는 단계를 더 수행하도록 하는, 목표물 추종 장치.
The method of claim 13,
and causing the processor to further perform a step of initializing a relative position vector and a covariance before the step of estimating.
청구항 16에 있어서,
상기 프로세서가, 상기 초기화하는 단계 후에 상기 공분산의 노름(norm)이 특정값 이하가 될 때까지 대기하고, 상기 공분산의 노름이 특정값 이하가 될 때 상기 목표물에 대한 추종을 시작하는 단계를 더 수행하도록 하는 목표물 추종 장치.
The method of claim 16
After the initializing step, the processor waits until the norm of the covariance becomes less than or equal to a specific value, and starts following the target when the norm of the covariance becomes less than or equal to the specific value. target tracking device.
청구항 13에 있어서,
상기 프로세서가, 상기 예측하는 단계에서 상기 로봇이 측정한 목표물과의 거리 정보, 상기 제1 주행기록 정보 및 상기 제2 주행기록 정보를 통해 상기 목표물과의 상대 위치를 추정하도록 하는, 목표물 추종 장치.
The method of claim 13,
wherein the processor estimates a relative position with the target through distance information to the target measured by the robot in the predicting step, the first driving record information, and the second driving record information.
청구항 18에 있어서,
상기 프로세서가, 상기 예측하는 단계에서 확장 칼만 필터를 이용하여 상대 위치 벡터 및 공분산을 동시에 추정하도록 하는, 목표물 추종 장치.
The method of claim 18
and causing the processor to simultaneously estimate a relative position vector and a covariance using an extended Kalman filter in the predicting step.
청구항 13에 있어서,
상기 프로세서가,
상기 보정된 위치를 토대로 상기 목표물을 추종하는 중에 상기 목표물로부터 UWB 데이터 통신을 통해 추종 거리 관련 정보를 수신하는 단계; 및
상기 추정 거리 관련 정보에 기초하여 상기 목표물에 대한 추종 거리를 조정하는 단계를 더 수행하도록 하는, 목표물 추종 장치.
The method of claim 13,
the processor,
receiving tracking distance-related information from the target through UWB data communication while tracking the target based on the corrected position; and
and adjusting a tracking distance to the target based on the estimated 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 KR20230007877A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210088738A KR20230007877A (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 US20230008482A1 (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 KR20230007877A (en) 2021-07-06 2021-07-06 Method and apparatus for object following robot using uwb and odometry-based relative position estimation

Publications (1)

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

Family

ID=84798085

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210088738A KR20230007877A (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) US20230008482A1 (en)
KR (1) KR20230007877A (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101630413B (en) * 2009-08-14 2012-01-25 浙江大学 Multi-robot tracked mobile target algorithm
CN109144043A (en) * 2017-06-27 2019-01-04 金宝电子工业股份有限公司 The method for tracking object
WO2020037496A1 (en) * 2018-08-21 2020-02-27 西门子股份公司 Method, device and system for correcting offline programming program, medium, 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

Also Published As

Publication number Publication date
US20230008482A1 (en) 2023-01-12

Similar Documents

Publication Publication Date Title
US11378985B2 (en) Distributed localization systems and methods and self-localizing apparatus
Munafo et al. An acoustic network navigation system
US7821453B2 (en) Distributed iterative multimodal sensor fusion method for improved collaborative localization and navigation
JP5632470B2 (en) System and method for remote coordinated vehicle
CN107479513B (en) Positioning method and system, and electronic device
KR20180019617A (en) Method and system for scheduling transmission of a position recognition signal and operating its own position recognition device
US11656348B2 (en) Device and method for ultra-wide band ranging
US9977113B2 (en) Method of determining position and cooperative positioning system using same
US10942029B2 (en) Tracking a target using multiple tracking systems
US11877253B2 (en) Aircraft time synchronization system and method
US20240118375A1 (en) Method for Initializing Newly Added Base Station in UWB System, Terminal, and System
CN105356930A (en) Global optimal relay position search method and system based on timing mechanism
Wu et al. Mobility control of unmanned aerial vehicle as communication relay in airborne multi-user systems
KR20230007877A (en) Method and apparatus for object following robot using uwb and odometry-based relative position estimation
Whitacre et al. Cooperative estimation using mobile sensor nodes in the presence of communication loss
CN116567537A (en) Terminal cloud co-location method, terminal equipment and edge node
Yang et al. Ultrawideband coupled relative positioning algorithm applicable to flight controller for multidrone collaboration
Pourjabar et al. Land & localize: An infrastructure-free and scalable nano-drones swarm with uwb-based localization
KR102533943B1 (en) Error cancellation method and device for IMU and gyroscope data using linear Kalman filter and GNSS information
CN116321418B (en) Cluster unmanned aerial vehicle fusion estimation positioning method based on node configuration optimization
Agliamzanov et al. Robust and efficient self-adaptive position tracking in wireless embedded systems
Torres-González et al. An efficient fast-mapping SLAM method for UAS applications using only range measurements
KR102657344B1 (en) Communication Device and Method, and Unmanned Aerial Vehicle Employing the Same
CN109269499B (en) Target joint networking positioning method based on relative navigation
Whitacre et al. Cooperative geolocation with UAVs under communication constraints

Legal Events

Date Code Title Description
E902 Notification of reason for refusal