KR102386361B1 - Apparatus for localization of mobile robot and method thereof - Google Patents
Apparatus for localization of mobile robot and method thereof Download PDFInfo
- Publication number
- KR102386361B1 KR102386361B1 KR1020150132274A KR20150132274A KR102386361B1 KR 102386361 B1 KR102386361 B1 KR 102386361B1 KR 1020150132274 A KR1020150132274 A KR 1020150132274A KR 20150132274 A KR20150132274 A KR 20150132274A KR 102386361 B1 KR102386361 B1 KR 102386361B1
- Authority
- KR
- South Korea
- Prior art keywords
- mobile robot
- sensor data
- local map
- recognizing
- map
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1633—Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
Abstract
사용자가 이동 로봇을 임의의 위치로 옮긴 경우 불필요한 이동 없이 제자리에서 현재 위치를 인식할 수 있는 이동 로봇의 위치 인식 장치 및 그 방법을 제안한다.
이동 로봇이 작업 도중에 사용자에 의해 일정 거리 이내의 다른 위치로 이동되었을 경우에 불필요한 이동 없이 제자리에서 일정 각도 또는 360° 회전하면서 이동 로봇이 이동한 위치 주변을 스캔하여 이동 로봇의 현재 위치를 빠르고 정확하게 인식할 수 있기 때문에 위치 인식에 소요되는 시간을 단축할 수 있다. 또한, 이동 로봇의 위치 인식 후에는 디스플레이나 음향을 통해 이동 로봇의 위치 인식이 완료되었음을 알려 주어 제품에 대한 사용자의 신뢰성을 높일 수 있도록 한다.We propose an apparatus and method for recognizing a location of a mobile robot that can recognize the current location in place without unnecessary movement when a user moves the mobile robot to an arbitrary location.
When the mobile robot is moved to another location within a certain distance by the user during operation, the mobile robot rotates a certain angle or 360° in place without unnecessary movement and scans around the moved location to quickly and accurately recognize the mobile robot's current location This can reduce the time required for location recognition. In addition, after recognizing the location of the mobile robot, it is notified through a display or sound that the location recognition of the mobile robot has been completed, so that the user's reliability of the product can be increased.
Description
본 발명은 불필요한 이동 없이 제자리에서 현재 위치를 인식할 수 있는 이동 로봇의 위치 인식 장치 및 그 방법에 관한 것이다.The present invention relates to an apparatus and method for recognizing a position of a mobile robot capable of recognizing a current position in place without unnecessary movement.
일반적으로, 이동 로봇은 사용자의 조작 없이도 주행하고자 하는 영역을 자율적으로 이동하면서 작업을 수행하는 장치이다. 최근 들어 이동 로봇은 센서 및 제어기의 발달로 다양한 분야에서 활용되고 있으며, 그 예로는 청소 로봇, 텔레프레전스 로봇(telepresence robot), 경비 로봇(security robot) 등이 있다.In general, a mobile robot is a device that performs a task while autonomously moving an area to be driven without a user's manipulation. In recent years, mobile robots have been used in various fields due to the development of sensors and controllers, and examples thereof include cleaning robots, telepresence robots, and security robots.
이러한 이동 로봇이 자율 주행을 하기 위해서는 이동 로봇의 위치를 인식하는 위치 인식이 필수적으로 요구된다. 이동 로봇의 위치 인식은 이동 로봇이 동작하는 환경의 지도와 센서로 측정한 데이터를 이용하여 이동 로봇의 현재 위치를 추정하는 것이다.In order for such a mobile robot to autonomously drive, location recognition for recognizing the location of the mobile robot is essential. The position recognition of the mobile robot is to estimate the current position of the mobile robot using a map of the environment in which the mobile robot operates and data measured by a sensor.
지도를 이용한 위치 인식 방법으로 가장 많이 사용되는 기술은 파티클 필터(Particle Filter) 기반의 몬테 카를로 위치 추정(Monte Carlo Localization;이하, "MCL"이라 한다) 방법이다. MCL 방법은 이동 로봇의 위치 인식을 위해 파티클 필터(Particle Filter)를 구현한 것으로, 일정 영역 이내에 이동 로봇의 가상 위치를 나타내는 파티클들을 지도 위에 임의로 샘플링(Random Sampling)하고, 이동 로봇은 일정 거리를 임의의 방향으로 이동하면서 파티클들을 수렴시키는 작업을 반복적으로 수행한다. 이러한 과정을 통해 최종적으로 파티클들은 한 곳으로 수렴되며, 수렴된 위치를 이동 로봇의 현재 위치로 인식하는 방법이다.The most used technique as a method for recognizing a location using a map is a particle filter-based Monte Carlo localization (hereinafter referred to as "MCL") method. The MCL method implements a particle filter to recognize the location of a mobile robot, and randomly samples particles representing the virtual location of the mobile robot within a certain area on the map, and the mobile robot randomly selects a certain distance. Repeatedly performs the task of converging particles while moving in the direction of . Through this process, the particles finally converge to one place, and the converged position is a method of recognizing the current position of the mobile robot.
그러나, 이러한 위치 인식 방법은 사용하는 파티클의 개수가 적은 경우에는 위치 인식에 실패할 가능성이 있고, 파티클의 개수가 많은 경우에는 위치 인식을 위한 연산 시간이 증가하는 단점이 있다. 또한, 파티클들을 한 곳으로 수렴시키기 위해 이동 로봇이 일정 거리를 임의의 방향으로 무의미하게 이동하여야 하기 때문에 매우 비효율적이다.However, this location recognition method has a disadvantage in that location recognition may fail when the number of particles used is small, and when the number of particles is large, a calculation time for location recognition increases. In addition, in order to converge the particles to one place, it is very inefficient because the mobile robot must move meaninglessly a certain distance in an arbitrary direction.
상술한 문제를 해결하기 위하여 개시된 본 발명의 일 측면은 사용자가 이동 로봇을 임의의 위치로 옮긴 경우 불필요한 이동 없이 제자리에서 현재 위치를 빠르고 정확하게 인식할 수 있는 이동 로봇의 위치 인식 장치 및 그 방법을 제안하고자 한다.One aspect of the present invention disclosed in order to solve the above-described problem proposes a position recognition device and method for a mobile robot that can quickly and accurately recognize the current position in place without unnecessary movement when the user moves the mobile robot to an arbitrary position want to
이를 위해 본 발명의 일 측면은 사용자에 의해 임의의 위치로 이동된 이동 로봇의 위치를 인식하는 방법에 있어서, 임의의 위치 주변을 스캔하여 로컬 맵을 획득하고; 임의의 위치에서 이동 로봇이 회전하면서 실 센서 데이터를 획득하고; 로컬 맵과 실 센서 데이터 간의 정합을 수행하여 로컬 맵에 대한 상기 이동 로봇의 상대 위치를 인식하는 것;을 포함한다.To this end, an aspect of the present invention provides a method for recognizing the position of a mobile robot moved to an arbitrary position by a user, comprising: acquiring a local map by scanning around an arbitrary position; Acquire real sensor data while the mobile robot rotates at an arbitrary position; and recognizing the relative position of the mobile robot with respect to the local map by performing matching between the local map and the real sensor data.
또한, 본 발명의 일 측면에 의한 이동 로봇의 위치 인식 방법은, 이동 로봇의 위치 인식이 완료되었음을 알리는 것;을 더 포함한다.In addition, the method for recognizing a position of a mobile robot according to an aspect of the present invention further includes notifying that the recognition of the position of the mobile robot is completed.
로컬 맵을 획득하는 것은, 이동 로봇이 동작하는 환경의 지도 정보를 기반으로 하여 임의의 위치 주변을 스캔하여 로컬 맵을 획득하는 것이다.Acquiring a local map is to acquire a local map by scanning around an arbitrary location based on map information of an environment in which the mobile robot operates.
로컬 맵을 획득하는 방식은, 가상 센서 데이터 추출 방식, Small Local Map 추출 방식 또는 Large Local Map 추출 방식 중에서 적어도 하나를 포함한다.The method of obtaining the local map includes at least one of a virtual sensor data extraction method, a Small Local Map extraction method, and a Large Local Map extraction method.
이동 로봇이 동작하는 환경 지도는, 2차원 격자 지도 또는 3차원 격자 지도를 사용한다.The environment map in which the mobile robot operates uses a two-dimensional grid map or a three-dimensional grid map.
실 센서 데이터를 획득하는 것은, 이동 로봇에 설치된 센서로부터 측정 대상까지의 거리를 측정하여 이동 로봇이 위치한 임의의 위치에서 거리 데이터를 획득하는 것이다.Acquiring the real sensor data is to obtain distance data from an arbitrary location where the mobile robot is located by measuring the distance from a sensor installed in the mobile robot to a measurement target.
이동 로봇은, 센서의 시야에 따라 실 센서 데이터의 획득 방식을 다르게 한다.The mobile robot uses a different method of acquiring real sensor data according to the field of view of the sensor.
실 센서 데이터의 획득 방식은, 이동 로봇이 정지된 상태에서 실 센서 데이터를 획득하는 방식; 이동 로봇이 제자리에서 일정 각도를 회전하면서 센서의 시야 밖의 실 센서 데이터를 획득하는 방식; 이동 로봇이 제자리에서 360° 회전하면서 전(全)방향에 대한 실 센서 데이터를 획득하는 방식; 중에서 적어도 하나를 포함한다.The method of acquiring the real sensor data may include: a method of acquiring the real sensor data in a state in which the mobile robot is stopped; a method in which the mobile robot rotates a certain angle in place and acquires real sensor data outside the field of view of the sensor; A method in which a mobile robot rotates 360° in place to acquire real sensor data for all directions; includes at least one of
로컬 맵에 대한 이동 로봇의 상대 위치를 인식하는 것은, 실 센서 데이터와 로컬 맵 간의 데이터 정합을 통해 대응점들을 획득하고; 획득된 대응점들을 이용하여 로컬 맵에 대한 실 센서 데이터의 상대 위치를 계산하고; 복수의 로컬 맵과 실 센서 데이터의 유사도를 계산하고; 유사도가 가장 큰 로컬 맵에 대한 이동 로봇의 상대 위치를 환경 지도에 대한 이동 로봇의 위치로 결정하는 것;을 포함한다.Recognizing the relative position of the mobile robot with respect to the local map includes: acquiring corresponding points through data matching between real sensor data and the local map; calculating a relative position of the real sensor data with respect to a local map using the obtained corresponding points; calculating a degree of similarity between the plurality of local maps and real sensor data; and determining the relative position of the mobile robot with respect to the local map having the greatest similarity as the position of the mobile robot with respect to the environment map.
또한, 본 발명의 일 측면에 의한 이동 로봇의 위치 인식 방법은, 로컬 맵과 실 센서 데이터에 공통으로 포함되는 데이터 점의 개수가 많을수록 유사도가 높은 것으로 계산한다.In addition, in the method for recognizing the location of a mobile robot according to an aspect of the present invention, the higher the number of data points commonly included in the local map and the real sensor data, the higher the degree of similarity is calculated.
또한, 본 발명의 일 측면에 의한 이동 로봇의 위치 인식 방법은, 획득된 대응점들 중에서 이상점을 제거하는 것;을 더 포함한다.In addition, the method for recognizing a position of a mobile robot according to an aspect of the present invention further includes; removing an outlier from among the obtained corresponding points.
그리고, 본 발명의 다른 측면은 사용자에 의해 임의의 위치로 이동된 이동 로봇의 위치를 인식하는 장치에 있어서, 임의의 위치에서 이동 로봇에 설치된 센서로부터 측정 대상까지의 거리를 측정하여 실 센서 데이터를 획득하는 데이터 획득부; 이동 로봇이 동작하는 환경의 지도 정보를 기반으로 임의의 위치 주변을 스캔하여 로컬 맵을 획득하는 로컬 맵 획득부; 로컬 맵과 실 센서 데이터 간의 정합을 수행하여 상기 로컬 맵에 대한 상기 이동 로봇의 상대 위치를 인식하는 제어장치;를 포함한다.And, another aspect of the present invention is a device for recognizing the position of a mobile robot moved to an arbitrary position by a user, and measures the distance from a sensor installed in the mobile robot to a measurement target at an arbitrary position to obtain real sensor data. a data acquisition unit to acquire; a local map acquisition unit that acquires a local map by scanning around an arbitrary location based on map information of an environment in which the mobile robot operates; and a control device for recognizing the relative position of the mobile robot with respect to the local map by performing matching between the local map and real sensor data.
또한, 본 발명의 일 측면에 의한 이동 로봇의 위치 인식 장치는, 이동 로봇의 위치 인식이 완료되었음을 표시하는 디스플레이부;를 더 포함한다.In addition, the apparatus for recognizing a position of a mobile robot according to an aspect of the present invention further includes a display unit for indicating that the recognition of the position of the mobile robot has been completed.
또한, 본 발명의 일 측면에 의한 이동 로봇의 위치 인식 장치는, 이동 로봇의 위치 인식이 완료되었음을 알리는 음향출력부;를 더 포함한다.In addition, the apparatus for recognizing a position of a mobile robot according to an aspect of the present invention further includes a sound output unit notifying that the position recognition of the mobile robot is completed.
데이터 획득부는, 이동 로봇이 정지된 상태에서 실 센서 데이터를 획득하는 것; 이동 로봇이 제자리에서 일정 각도를 회전하면서 센서의 시야 밖의 실 센서 데이터를 획득하는 것; 이동 로봇이 제자리에서 360° 회전하면서 전(全)방향에 대한 실 센서 데이터를 획득하는 것; 중에서 적어도 하나를 이용하여 센서의 시야에 따라 실 센서 데이터를 획득한다.The data acquisition unit may include: acquiring real sensor data in a state in which the mobile robot is stopped; Acquiring real sensor data outside the field of view of the sensor while the mobile robot rotates a certain angle in place; Acquiring real sensor data for all directions while the mobile robot rotates 360° in place; Real sensor data is acquired according to the field of view of the sensor using at least one of them.
센서는, 2D 센서 또는 3D 센서를 사용한다.The sensor uses a 2D sensor or a 3D sensor.
제어장치는, 실 센서 데이터와 로컬 맵 간의 데이터 정합을 통해 대응점들을 획득하는 데이터 획득부; 획득된 대응점들을 이용하여 로컬 맵에 대한 실 센서 데이터의 상대 위치를 계산하는 상대 위치 계산부; 복수의 로컬 맵과 실 센서 데이터의 유사도를 계산하는 유사도 계산부; 유사도가 가장 큰 로컬 맵에 대한 이동 로봇의 상대 위치를 환경 지도에 대한 이동 로봇의 위치로 결정하는 위치 결정부;를 포함한다.The control device includes: a data acquisition unit configured to acquire corresponding points through data matching between real sensor data and a local map; a relative position calculation unit for calculating a relative position of the real sensor data with respect to a local map using the obtained corresponding points; a similarity calculator configured to calculate similarities between a plurality of local maps and real sensor data; and a positioning unit that determines the relative position of the mobile robot with respect to the local map having the greatest similarity as the position of the mobile robot with respect to the environment map.
유사도 계산부는, 로컬 맵과 실 센서 데이터에 공통으로 포함되는 데이터 점의 개수가 많을수록 유사도가 높다고 계산한다.The similarity calculator calculates that the higher the number of data points commonly included in the local map and the real sensor data, the higher the similarity.
제어장치는, 획득된 대응점들 중에서 이상점을 제거하는 것;을 더 포함한다.The control device further includes; removing an outlier from among the obtained corresponding points.
제안된 이동 로봇의 위치 인식 장치 및 그 방법에 의하면, 이동 로봇이 작업 도중에 사용자에 의해 일정 거리 이내의 다른 위치로 이동되었을 경우에 불필요한 이동 없이 제자리에서 일정 각도 또는 360° 회전하면서 이동 로봇이 이동한 위치 주변을 스캔하여 이동 로봇의 현재 위치를 빠르고 정확하게 인식할 수 있기 때문에 위치 인식에 소요되는 시간을 단축할 수 있다.According to the proposed device for recognizing the position of a mobile robot and its method, when the mobile robot is moved to another position within a certain distance by the user during the operation, the mobile robot moves while rotating at a certain angle or 360° without unnecessary movement. Because the current location of the mobile robot can be recognized quickly and accurately by scanning around the location, the time required for location recognition can be shortened.
또한, 이동 로봇의 위치 인식 후에는 디스플레이나 음향을 통해 이동 로봇의 위치 인식이 완료되었음을 알려 주어 제품에 대한 사용자의 신뢰성을 높일 수 있도록 한다.In addition, after recognizing the location of the mobile robot, it is notified through a display or sound that the location recognition of the mobile robot has been completed, so that the user's reliability of the product can be increased.
도 1은 본 발명의 일 실시예에 의한 이동 로봇 시스템의 전체 구성을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 의한 이동 로봇의 외관을 개략적으로 도시한 도면이다.
도 3은 본 발명의 일 실시예에 의한 이동 로봇의 위치 인식 제어 구성도이다.
도 4는 본 발명의 일 실시예에 의한 이동 로봇의 현재 위치를 인식하기 위한 제어 알고리즘을 도시한 동작 순서도이다.
도 5는 본 발명의 일 실시예에 의한 이동 로봇의 현재 위치를 인식하기 위한 제어 알고리즘을 도시한 동작 순서도이다.
도 6은 본 발명의 일 실시예에 의한 이동 로봇이 이동한 위치에서 가상 센서 데이터를 추출하는 위치를 나타낸 도면이다.
도 7a 내지 도 7c는 도 6의 가상 센서 데이터 추출 위치를 계산하는 방법을 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 의한 광선 던지기 기법의 예를 나타낸 도면이다.
도 9는 도 8의 광선 던지기 기법을 이용하여 추출된 가상 센서 데이터의 예를 나타낸 도면이다.
도 10은 본 발명의 일 실시예에 의한 이동 로봇이 이동한 위치에서 Small Local Map을 추출하는 위치를 나타낸 도면이다.
도 11은 Small Local Map 추출 위치를 이용하여 추출된 Small Local Map의 예를 나타낸 도면이다.
도 12는 본 발명의 일 실시예에 의한 이동 로봇에서 획득한 실 센서 데이터의 예를 나타낸 도면이다.
도 13은 본 발명의 일 실시예에 의한 이동 로봇에서 획득한 가상 센서 데이터의 예를 나타낸 도면이다.
도 14는 본 발명의 일 실시예에 의한 로컬 맵에 대한 실 센서 데이터의 상대 위치를 계산하는 방법을 나타낸 도면이다.
도 15는 본 발명의 일 실시예에 의한 로컬 맵을 팽창시킨 상태를 나타낸 도면이다.
도 16은 본 발명의 일 실시예에 의한 로컬 맵과 실 센서 데이터가 맞춤(Fitting)이 잘된 경우를 나타낸 도면이다.
도 17은 본 발명의 일 실시예에 의한 로컬 맵과 실 센서 데이터가 맞춤(Fitting)이 잘못된 경우를 나타낸 도면이다.1 is a view showing the overall configuration of a mobile robot system according to an embodiment of the present invention.
2 is a diagram schematically illustrating an external appearance of a mobile robot according to an embodiment of the present invention.
3 is a configuration diagram of a position recognition control of a mobile robot according to an embodiment of the present invention.
4 is an operation flowchart illustrating a control algorithm for recognizing a current position of a mobile robot according to an embodiment of the present invention.
5 is an operation flowchart illustrating a control algorithm for recognizing a current position of a mobile robot according to an embodiment of the present invention.
6 is a diagram illustrating a position where virtual sensor data is extracted from a position where the mobile robot moves according to an embodiment of the present invention.
7A to 7C are diagrams illustrating a method of calculating a virtual sensor data extraction position of FIG. 6 .
8 is a diagram illustrating an example of a beam throwing technique according to an embodiment of the present invention.
9 is a diagram illustrating an example of virtual sensor data extracted using the ray throwing technique of FIG. 8 .
10 is a diagram illustrating a location where a small local map is extracted from a location where the mobile robot moves according to an embodiment of the present invention.
11 is a diagram illustrating an example of a Small Local Map extracted using a Small Local Map extraction location.
12 is a view showing an example of real sensor data obtained by the mobile robot according to an embodiment of the present invention.
13 is a diagram illustrating an example of virtual sensor data acquired by a mobile robot according to an embodiment of the present invention.
14 is a diagram illustrating a method of calculating a relative position of real sensor data with respect to a local map according to an embodiment of the present invention.
15 is a diagram illustrating an expanded state of a local map according to an embodiment of the present invention.
16 is a diagram illustrating a case in which a local map and real sensor data are well fitted according to an embodiment of the present invention.
17 is a diagram illustrating a case in which a local map and real sensor data are incorrectly fitted according to an embodiment of the present invention.
본 명세서에 기재된 실시예와 도면에 도시된 구성은 개시된 발명의 바람직한 일 예이며, 본 출원의 출원 시점에 있어서 본 명세서의 실시예와 도면을 대체할 수 있는 다양한 변형 예들이 있을 수 있다.The configuration shown in the embodiments and drawings described in this specification is a preferred example of the disclosed invention, and there may be various modifications that can be substituted for the embodiments and drawings of the present specification at the time of filing of the present application.
또한, 본 명세서의 각 도면에서 제시된 동일한 참조 번호 또는 부호는 실질적으로 동일한 기능을 수행하는 부품 또는 구성 요소를 나타낸다.In addition, the same reference number or reference number given in each drawing of this specification indicates a part or component which performs substantially the same function.
또한, 본 명세서에서 사용한 용어는 실시예를 설명하기 위해 사용된 것으로, 개시된 발명을 제한 및/또는 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다", "구비하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는다.In addition, the terminology used herein is used to describe the embodiments, and is not intended to limit and/or limit the disclosed invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In this specification, terms such as "comprises", "comprises" or "have" are intended to designate that the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification exist, but one It does not preclude in advance the possibility of the presence or addition of other features or numbers, steps, operations, components, parts, or combinations thereof, or other features.
또한, 본 명세서에서 사용한 "제1", "제2" 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되지는 않으며, 상기 용어들은 하나의 구성 요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1구성 요소는 제2구성 요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1구성 요소로 명명될 수 있다. "및/또는" 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.In addition, terms including ordinal numbers such as "first", "second", etc. used herein may be used to describe various elements, but the elements are not limited by the terms, and the terms are It is used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. The term “and/or” includes a combination of a plurality of related listed items or any of a plurality of related listed items.
이하에서는 본 발명에 의한 실시예를 첨부된 도면을 참조하여 상세히 설명한다.Hereinafter, an embodiment according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일 실시예에 의한 이동 로봇 시스템의 전체 구성을 도시한 도면이다.1 is a view showing the overall configuration of a mobile robot system according to an embodiment of the present invention.
도 1에서, 본 발명의 일 실시예에 의한 이동 로봇 시스템(1)은 일정 영역을 자율적으로 이동하면서 작업을 수행하는 이동 로봇(100)과, 이동 로봇(100)과 분리되어 이동 로봇(100)을 원격으로 제어하는 디바이스(200)와, 이동 로봇(100)과 분리되어 이동 로봇(100)의 배터리 전원을 충전하는 충전 스테이션(300)을 포함한다.In FIG. 1 , a
이동 로봇(100)은 디바이스(200)의 제어 명령을 전달받아 제어 명령에 대응하는 동작을 수행하는 장치로, 충전 가능한 배터리를 구비하고, 주행 중 장애물을 피할 수 있는 장애물 센서를 구비하여 작업 영역을 자율적으로 주행하며 작업할 수 있다.The
또한, 이동 로봇(100)은 카메라나 각종 센서들을 통해 주변 환경에 대한 사전 정보 없이 자신의 위치를 인식하고, 환경에 대한 정보로부터 지도를 작성하는 위치 인식(Localization)과 지도 작성(Map-building)의 과정을 수행할 수 있다. In addition, the
디바이스(200)는 이동 로봇(100)의 이동을 제어하거나 이동 로봇(100)의 작업을 수행하기 위한 제어 명령을 무선으로 송신하는 원격 제어 장치로, 휴대폰(Cellphone, PCS phone), 스마트 폰(smart phone), 휴대 단말기(Personal Digital Assistants: PDA), 휴대용 멀티미디어 플레이어(Portable Multimedia Player: PMP), 노트북 컴퓨터(laptop computer), 디지털 방송용 단말기, 넷북, 태블릿, 네비게이션(Navigation) 등을 포함할 수 있다. The
이외에도, 디바이스(200)는 유무선 통신 기능이 내장된 디지털 카메라, 캠코더 등과 같이 여러 응용 프로그램을 이용한 다양한 기능의 구현이 가능한 모든 장치를 포함한다.In addition, the
또한, 디바이스(200)는 간단한 형태의 일반적인 리모컨일 수 있다. 리모컨은 일반적으로 적외선 통신(IrDA, infrared Data Association)을 이용하여 이동 로봇(100)과 신호를 송수신한다. Also, the
또한, 디바이스(200)는 RF(Radio Frequency), 와이파이(Wireless Fidelity, Wi-Fi), 블루투스(Bluetooth), 지그비(Zigbee), 엔에프씨(near field communication: NFC), 초광대역(Ultra Wide Band: UWB) 통신 등 다양한 방식을 이용하여 이동 로봇(100)과 무선 통신 신호를 송수신할 수 있으며, 디바이스(200)와 이동 로봇(100)이 무선 통신 신호를 주고 받을 수 있는 것이면, 어느 방식을 사용하여도 무방하다.In addition, the
또한, 디바이스(200)는 이동 로봇(100)의 전원을 온/오프 제어하기 위한 전원 버튼과, 이동 로봇(100)의 배터리 충전을 위해 충전 스테이션(300)으로 복귀하도록 지시하기 위한 충전 복귀 버튼과, 이동 로봇(100)의 제어 모드를 변경하기 위한 모드 버튼과, 이동 로봇(100)의 동작을 시작/정지하거나 제어 명령의 개시, 취소 및 확인을 위한 시작/정지 버튼과, 다이얼 등을 포함할 수 있다.In addition, the
충전 스테이션(300)은 이동 로봇(100)의 배터리 충전을 위한 것으로, 이동 로봇(100)이 도킹되는 것을 안내하는 가이드 부재(미도시)가 마련되어 있고, 가이드 부재(미도시)에는 이동 로봇(100)에 구비된 전원부(130)를 충전시키기 위해 접속 단자(미도시)가 마련되어 있다.The charging
도 2는 본 발명의 일 실시예에 의한 이동 로봇의 외관을 개략적으로 도시한 도면이다.2 is a diagram schematically illustrating an external appearance of a mobile robot according to an embodiment of the present invention.
도 2에서, 이동 로봇(100)은 외관을 형성하는 본체(110)와, 본체(110)의 상부를 덮는 커버(120)와, 본체(110)를 구동시키기 위한 구동 전원을 공급하는 전원부(130)와, 본체(110)를 이동시키는 구동부(140)를 포함하여 구성된다.In FIG. 2 , the
본체(110)는 이동 로봇(100)의 외관을 형성하는 한편, 그 내부에 설치되는 각종 부품들을 지지한다.The
전원부(130)는 구동부(140) 및 그 외 본체(110)를 구동시키기 위한 각 부하와 전기적으로 연결되어 구동 전원을 공급하는 배터리를 포함한다. 배터리는 재충전이 가능한 2차 배터리로 마련되며, 본체(110)가 작업을 완료하고 충전 스테이션(300)에 결합된 경우 충전 스테이션(300)으로부터 전력을 공급받아 충전된다.The
또한, 전원부(130)는 충전 잔량이 부족하면 충전 스테이션(300)으로부터 충전 전류를 공급받아 충전된다.In addition, when the remaining amount of charge is insufficient, the
또한, 본체(110)의 전방에는 이동 로봇(100)이 이동하는 바닥 면의 상태에 따라 회전하는 각도가 변화하는 캐스터 휠이 설치될 수 있다. 캐스터 휠은 이동 로봇(100)의 자세 안정 및 추락 방지 등에 활용되어 이동 로봇(100)을 지지하며, 롤러나 캐스터 형상의 휠로 구성된다.In addition, a caster wheel whose rotation angle changes according to the state of the floor surface on which the
구동부(140)는 본체(110)의 중앙부 양측에 각각 마련되어 본체(110)가 작업을 수행하는 과정에서 전진, 후진 및 회전주행 등의 이동 동작이 가능하도록 한다. The driving
양 구동부(140)는 후술하는 제어부(100, 도 3 참조)의 명령에 따라 전진 또는 후진 방향으로 각각 회전하여 이동 로봇(100)이 전진 또는 후진하거나 회전할 수 있도록 한다. 예를 들면 양 구동부(140)를 전진 또는 후진 방향으로 회전시켜 이동 로봇(100)이 전진 또는 후진 주행하도록 한다. 또한 좌측 구동부(140)를 후진 방향으로 회전시키는 동안 우측 구동부(140)를 전진 방향으로 회전시켜 이동 로봇(100)이 전방을 기준으로 좌측 방향으로 회전하도록 하고, 우측 구동부(140)를 후진 방향으로 회전시키는 동안 좌측 구동부(140)를 전진 방향으로 회전시켜 이동 로봇(100)이 전방을 기준으로 우측 방향으로 회전하도록 한다.Both driving
도 3은 본 발명의 일 실시예에 의한 이동 로봇의 위치 인식 제어 구성도이다.3 is a configuration diagram of a position recognition control of a mobile robot according to an embodiment of the present invention.
도 3에서, 본 발명의 일 실시예에 의한 이동 로봇(100)은 도 2에 도시한 구성 요소 이외에 데이터 획득부(150), 저장부(160), 제어장치(170), 디스플레이부(180) 및 음향출력부(190)를 더 포함한다.In FIG. 3 , the
데이터 획득부(150)는 이동 로봇(100)이 현재 위치하고 있는 실 센서 데이터를 획득하는 것으로, 이동 로봇(100)에 설치된 2D 센서 또는 3D센서의 스캔에 따라 측정 대상까지의 거리를 측정하여 이동 로봇(100)이 위치한 실제 환경의 거리 데이터를 획득한다. 2D 센서는 측정 대상까지의 거리를 센서의 기준 좌표계에 대해 (x, y) 좌표로 표시할 수 있고, 3D 센서는 측정 대상까지의 거리를 센서의 기준 좌표계에 대해 (x, y, z) 좌표로 표시할 수 있다. 이러한 2D 센서 또는 3D 센서에서 출력되는 거리 데이터의 개수는 센서의 시야(Field of View, FoV)와 해상도(Resolution)에 따라 달라진다.The
즉, 데이터 획득부(150)는 2D 센서 또는 3D 센서의 시야(FoV)에 따라 이동 로봇(100)은 실 센서 데이터 획득을 위한 방식을 달리한다. 센서의 시야가 충분히 확보되었을 경우 이동 로봇(100)은 정지 상태에서 실 센서 데이터를 획득한다. 또는 제자리에서 일정 각도를 회전하면서 센서의 시야 밖의 데이터를 획득하거나 제자리에서 360° 회전하면서 전(全)방향에 대한 실 센서 데이터를 획득한다.That is, the
저장부(160)는 이동 로봇(100)이 동작하는 환경의 지도와, 이동 로봇(100)의 동작을 위한 운영 프로그램과 주행 패턴, 주행 과정에서 획득한 이동 로봇(100)의 위치 정보와 장애물 정보 등을 저장하는 메모리이다.The
또한, 저장부(160)는 이동 로봇(100)의 동작을 제어하기 위한 제어 데이터, 이동 로봇(100)의 동작 제어 중 사용되는 기준 데이터, 이동 로봇(100)이 소정의 동작을 수행하는 중에 발생되는 동작 데이터, 이동 로봇(100)이 소정 동작을 수행하도록 디바이스(200)에 의해 입력된 설정 데이터 등과 같은 사용자 입력 정보가 저장될 수 있다.In addition, the
또한, 저장부(160)는 롬(Read Only Memory; ROM), 피롬(Programmable Read Only Memory; PROM), 이피롬(Erasable Programmed Read Only Memory; EPRM), 플레시 메모리(flash memory)와 같은 비활성 메모리 소자, 램(Random Access Memory; RAM)과 같은 휘발성 메모리 소자 또는 하드디스크(hard disc), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 광 디스크와 같은 저장 매체로 구현될 수 있다. 그러나 저장부(160)는 이에 한정되지 않으며 설계자가 고려할 수 있는 다양한 저장 매체가 사용될 수 있다.In addition, the
제어장치(170)는 이동 로봇(100)의 전반적인 동작을 제어하는 마이크로 프로세서로, 로컬 맵과 센서 데이터 간의 정합(Matching)을 수행하여 로컬 맵에 대한 이동 로봇(100)의 상대 위치를 인식한다. 이를 위해 제어장치(170)는 로컬 맵 획득부(171), 대응점 획득부(172), 상대 위치 계산부(173), 유사도 계산부(174) 및 위치 결정부(175)를 더 포함한다.The
로컬 맵 획득부(171)는 저장부(160)에 저장된 환경 지도를 기반으로 하여 추출되는 가상 센서 데이터를 이용하여 이동 로봇(100)이 이동한 위치 주변의 로컬 맵(Local Map; 국지적 지도)을 획득한다. 로컬 맵(Local Map)을 획득하는 방법에 대해서는 도 5 내지 도 11을 참조하여 이후에 상세히 설명한다.The local map acquisition unit 171 uses virtual sensor data extracted based on the environment map stored in the
대응점 획득부(172)는 데이터 획득부(150)에 의해 획득된 실 센서 데이터와 로컬 맵 획득부(171)에 의해 획득된 로컬 맵 간의 데이터 정합을 통해 대응점(Corresponding Point)을 획득한다. 대응점을 획득하는 방법에 대해서는 도 12 및 도 13을 참조하여 이후에 상세히 설명한다.Correspondence
상대 위치 계산부(173)는 대응점 획득부(172)에 의해 획득된 대응점들을 이용하여 로컬 맵에 대한 실 센서 데이터의 상대 위치 즉, 좌표 변환 계수(Coordinates Transformation Parameter, Rotation 및 Translation)를 계산한다. 로컬 맵에 대한 실 센서 데이터의 상대 위치를 계산하는 방법에 대해서는 도 14를 참조하여 이후에 상세히 설명한다.The
유사도 계산부(174)는 상대 위치 계산부(173)에서 계산된 로컬 맵에 대한 실 센서 데이터의 상대 위치를 이용하여 복수의 로컬 맵과 실 센서 데이터의 유사도를 계산한다. 로컬 맵은 이진(Binary) 영상으로 간주할 수 있다. 디지털 영상 처리 기법 중 Dilation(팽창 연산) 방법을 사용하여 로컬 맵(Local map)을 팽창시키고, 팽창된 로컬 맵에 실 센서 데이터를 맞춤(fitting)하여 유사도를 계산한다.The
로컬 맵과 실 센서 데이터가 서로 맞춤(fitting)이 잘되었으면 유사도는 높다. If the local map and real sensor data are well-fitted, the similarity is high.
반면, 로컬 맵과 실 센서 데이터에 공통으로 포함되는 데이터 점의 개수가 현저히 적거나 없을 경우 또는 좌표 변환 계수가 잘못 계산되었을 경우에는 로컬 맵과 실 센서 데이터의 유사도는 작다.On the other hand, when the number of data points commonly included in the local map and the real sensor data is significantly small or absent, or when the coordinate transformation coefficient is calculated incorrectly, the similarity between the local map and the real sensor data is small.
위치 결정부(175)는 유사도 계산부(174)에서 계산된 유사도를 이용하여 유사도가 가장 큰 로컬 맵에 대한 이동 로봇(100)이 상대 위치를 환경 지도에 대한 이동 로봇(100)의 위치로 결정한다.The
디스플레이부(180)는 이동 로봇(100)의 위치 인식이 완료되었음을 알리기 위해 아이콘이나 LED를 이용하여 표시한다.The
이와 같이, 디스플레이부(180)는 아이콘이나 텍스트 표기가 가능한 LCD UI의 경우, 아이콘이나 텍스트로 이동 로봇(100)의 위치 인식 상태를 표시하여 사용자가 쉽게 확인할 수 있도록 한다.As such, in the case of an LCD UI capable of displaying icons or texts, the
또한, 디스플레이부(180)는 LED UI의 경우, 점등 또는 점멸, 지속 시간 차이를 이용하여 이동 로봇(100)의 위치 인식 상태를 표시하여 사용자가 쉽게 확인할 수 있도록 한다.In addition, in the case of the LED UI, the
이외에도, 디스플레이부(180)는 제어장치(170)의 표시 제어 신호에 따라 사용자의 입력 정보와 이동 로봇(100)의 동작 상태를 표시하는 것으로, 이동 로봇(100)으로부터 수신한 각종 정보와 디바이스를 통해 사용자로부터 입력 받은 각종 제어 명령 등을 디스플레이할 수 있다.In addition, the
예컨대, 디스플레이부(180)는 시각 설정이나 예약 설정, 직접 제어 명령 입력 시 시각이나 이동 로봇(100)의 속력을 디스플레이하고, 그 외의 경우에는 현재 시각이나 예약 정보, 배터리 잔량, 이동 거리, 이동 경로 등을 디스플레이할 수 있다.For example, the
또한, 디스플레이부(180)는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display) 중에서 적어도 하나를 포함할 수 있다.In addition, the
음향출력부(190)는 제어장치(170)의 음향 제어 신호에 따라 이동 로봇(100)의 동작 상태와 이동 로봇(100)의 위치 인식 상태를 음향(예를 들어, Beep음)으로 출력하는 스피커를 포함할 수 있다. The
이외에도, 음향출력부는 디지털화된 전기적 신호를 아날로그화하는 디지털-아날로그 변환기(Digital-to-Analog Convertor: DAC), 디지털-아날로그 변환기에 의하여 아날로그화된 전기적 신호를 증폭하는 증폭기 등을 더 포함할 수 있다.In addition, the sound output unit may further include a digital-to-analog converter (DAC) for converting a digitized electrical signal to an analog, an amplifier for amplifying an electrical signal analogized by the digital-to-analog converter, and the like. .
이하, 본 발명의 일 실시예에 의한 이동 로봇 및 그 위치 인식 방법의 동작 과정 및 작용 효과를 설명한다.Hereinafter, the operation process and effect of the mobile robot and its position recognition method according to an embodiment of the present invention will be described.
일반 가정과 같은 복잡한 환경 내에서 동작하는 이동 로봇(100)은 필요에 따라 사용자에 의해 위치가 강제로 이동되는 경우가 자주 발생한다. 예를 들어, 이동 로봇(100, 구체적으로는 청소 로봇)이 청소 도중에 가구 사이에 끼어서 움직이지 못할 경우에 사용자는 이동 로봇(100)을 들어서 다른 위치로 이동시켜줘야 한다. 이와 같이, 이동 로봇(100)이 작업 도중 사용자에 의해 강제로 위치가 변경되었을 경우에 이동 로봇(100)은 새로 이동한 위치를 빠르고 정확하게 인식할 수 있어야 한다.The
그러나, 기존의 MCL 방법을 이용하여 이동 로봇(100)이 이동한 위치를 인식하기 위해서는 파티클들을 한 곳으로 수렴시키기 위해 이동 로봇(100)이 일정 거리를 임의의 방향으로 불필요하게 이동하여야 하기 때문에 이동 거리가 늘어나 비효율적이다. 또한, 위치 인식의 성공률을 높이기 위해서 파티클의 개수가 가능한 많이 요구되므로 위치 인식을 위한 연산 시간이 증가하는 단점이 있다.However, in order to recognize the moved position of the
이에, 본 발명에서는 이동 로봇(100)이 작업 도중에 사용자에 의해 일정 거리 이내의 다른 위치로 이동되었을 경우에 불필요한 이동 없이 제자리에서 일정 각도 또는 360° 회전하면서 이동 로봇(100)이 이동한 위치 주변을 스캔하여 이동 로봇(100)의 현재 위치를 빠르고 정확하게 인식하는 방법을 제안하였다.Accordingly, in the present invention, when the
도 4는 본 발명의 일 실시예에 의한 이동 로봇이 동작하는 환경의 지도를 나타낸 도면이다.4 is a view showing a map of an environment in which the mobile robot operates according to an embodiment of the present invention.
본 발명의 일 실시예를 설명하기에 앞서, 이동 로봇(100)이 동작하는 환경의 지도(500, Map)가 주어져 있다고 가정한다. 이동 로봇(100)이 동작하는 환경 지도(500)의 형태는 도 4에 도시한 바와 같이, 2차원의 격자 지도(Grid Map) 또는 3차원의 격자 지도(Grid Map)이다. 격자 지도(Grid Map)는 이동 로봇(100)의 주위 환경을 작은 격자(Grid)로 나누어 각 격자에 물체가 있을 가능성을 확률적으로 표현한 지도로서, 확률 격자 지도라고도 한다.Before describing an embodiment of the present invention, it is assumed that a map 500 (Map) of an environment in which the
도 5는 본 발명의 일 실시예에 의한 이동 로봇의 현재 위치를 인식하기 위한 제어 알고리즘을 도시한 동작 순서도이다.5 is an operation flowchart illustrating a control algorithm for recognizing a current position of a mobile robot according to an embodiment of the present invention.
도 5에서, 이동 로봇(100)이 작업 도중에 사용자에 의해 일정 거리 이내의 다른 위치로 이동되면, 이동 로봇(100)이 동작하는 환경 지도(500)의 정보(도 4 참조)를 기반으로 하여 이동 로봇(100)이 이동한 위치 주변의 로컬 맵(Local Map; 국지적 지도)을 획득한다(400).In FIG. 5 , when the
본 발명에서는 로컬 맵 획득의 실시 예로서 2차원 격자 지도를 활용한 3가지 방법을 제안한다. 이 방법은 3차원 격자 지도로 확장하여 적용될 수 있음은 물론이다.The present invention proposes three methods using a two-dimensional grid map as an embodiment of obtaining a local map. Of course, this method can be extended and applied to a 3D grid map.
(1) 로컬 맵을 획득하는 방식으로 가상 센서 데이터(Virtual Sensor Data) 추출 방식을 도 6 내지 도 9를 참조하여 설명한다.(1) A method of extracting virtual sensor data as a method of obtaining a local map will be described with reference to FIGS. 6 to 9 .
도 6은 본 발명의 일 실시예에 의한 이동 로봇이 이동한 위치에서 가상 센서 데이터를 추출하는 위치를 나타낸 도면이고, 도 7a 내지 도 7c는 도 6의 가상 센서 데이터 추출 위치를 계산하는 방법을 나타낸 도면이며, 도 8은 본 발명의 일 실시예에 의한 광선 던지기 기법의 예를 나타낸 도면이고, 도 9는 도 8의 광선 던지기 기법을 이용하여 추출된 가상 센서 데이터의 예를 나타낸 도면이다.6 is a view showing a position at which virtual sensor data is extracted from a position where the mobile robot moves according to an embodiment of the present invention, and FIGS. 7A to 7C show a method of calculating the virtual sensor data extraction position of FIG. 6 8 is a diagram showing an example of a ray throwing technique according to an embodiment of the present invention, and FIG. 9 is a diagram showing an example of virtual sensor data extracted using the ray throwing technique of FIG. 8 .
먼저, 도 6에 도시한 바와 같이, 이동 로봇(100)이 옮겨진 즉, 이동한 위치(S)를 중심으로 일정 거리 이내에서 복수의 가상 센서 데이터 추출 위치(X)들을 지도 상에서 선정한다.First, as shown in FIG. 6 , a plurality of virtual sensor data extraction positions (X) are selected on the map within a predetermined distance from the position (S) to which the
가상 센서 데이터 추출 위치(X)는 이동 로봇(100)이 이동한 위치(S)를 중심으로 서로 직각이 되며, 반경 R되는 지점의 끝을 추출 위치(X)로 결정한다(도 7a 내지 도 7c 참조).The virtual sensor data extraction position (X) is perpendicular to each other with respect to the position (S) to which the
도 7a 내지 도 7c에서는 한 변의 길이가 2R인 X자의 4군데 끝 지점이 가상 센서 데이터 추출 위치(X)가 된다.In FIGS. 7A to 7C , the four end points of the X-shape having a side length of 2R are the virtual sensor data extraction positions (X).
이후, 도 8에 도시한 바와 같이, 각각의 가상 센서 데이터 추출 위치(X)에서 360° 전(全) 방향에 대해 Ray Casting(광선 던지기) 기법을 수행하여 도 9에 도시한 바와 같이, 가상 센서 데이터를 추출한다. 도 9는 표시된 가상 센서 데이터 추출 위치(X)에서 추출된 가상 센서 데이터의 예를 보여준다.Thereafter, as shown in FIG. 8 , a Ray Casting technique is performed for 360° all directions at each virtual sensor data extraction location (X), and as shown in FIG. 9 , the virtual sensor extract data. 9 shows an example of virtual sensor data extracted from the displayed virtual sensor data extraction location (X).
(2) 로컬 맵을 획득하는 방식으로 Small Local Map 추출 방식을 도 10 및 도 11을 참조하여 설명한다.(2) A Small Local Map extraction method as a method of obtaining a local map will be described with reference to FIGS. 10 and 11 .
도 10은 본 발명의 일 실시예에 의한 이동 로봇이 이동한 위치에서 Small Local Map을 추출하는 위치를 나타낸 도면이고, 도 11은 Small Local Map 추출 위치를 이용하여 추출된 Small Local Map의 예를 나타낸 도면이다.10 is a view showing a location at which a small local map is extracted from a location where the mobile robot moves according to an embodiment of the present invention, and FIG. 11 is a view showing an example of a small local map extracted using the location of the small local map extraction It is a drawing.
도 10에 도시한 바와 같이, 이동 로봇(100)이 옮겨진 즉, 이동한 위치(S)를 중심으로 일정 거리 이내에서 복수의 Small Local Map 추출 위치(X)들을 지도 상에서 선정한다. Small Local Map의 가로(W)와 세로(H) 길이를 이동 로봇(100)에 장착된 센서의 최대 감지 거리를 기반으로 결정한다. 각각의 Small Local Map 추출 위치(X)를 중심으로 정해진 크기(W x H) 만큼의 Local Map을 환경 지도로부터 추출한다. 도 11은 표시된 Small Local Map 추출 위치(X)에서 추출된 Small Local Map의 예를 보여준다.As shown in FIG. 10 , a plurality of Small Local Map extraction locations (X) are selected on the map within a predetermined distance from the moved location (S) to which the
(3) 로컬 맵을 획득하는 방식으로 Large Local Map 추출 방식을 설명한다.(3) The Large Local Map extraction method will be described as a method of obtaining a local map.
이동 로봇(100)이 옮겨진 즉, 이동한 위치(S)를 Large Local Map 추출의 중심으로 하고, Small Local Map 보다 넓은 영역을 환경 지도로부터 추출한다.The
이와 같이, 가상 센서 데이터 추출 방식, Small Local Map 추출 방식 또는Large Local Map 추출 방식을 이용하여 로컬 맵을 획득하면, 이동 로봇(100)이 정지된 상태에서 이동 로봇(100)에 설치된 센서(2D 센서 또는 3D 센서)로부터 측정 대상까지의 거리를 측정하여 실 센서 데이터를 획득한다. 또는 이동 로봇(100)이 제자리에서 일정 각도를 회전하면서 센서의 시야(FoV) 밖의 데이터를 획득하거나 제자리에서 360° 회전하면서 전(全)방향에 대한 실 센서 데이터를 획득한다(402).As such, when a local map is obtained using the virtual sensor data extraction method, the Small Local Map extraction method, or the Large Local Map extraction method, the sensor (2D sensor) installed in the
이어서, 실 센서 데이터와 로컬 맵 간의 대응점들(Corresponding Point)을 획득한다(404). 도 12 및 도 13은 실 센서 데이터와 가상 센서 데이터의 예를 보여준다.Then, the corresponding points (Corresponding Point) between the real sensor data and the local map is obtained (404). 12 and 13 show examples of real sensor data and virtual sensor data.
도 12는 본 발명의 일 실시예에 의한 이동 로봇에서 획득한 실 센서 데이터의 예를 나타낸 도면이고, 도 13은 본 발명의 일 실시예에 의한 이동 로봇에서 획득한 가상 센서 데이터의 예를 나타낸 도면이다.12 is a view showing an example of real sensor data acquired by the mobile robot according to an embodiment of the present invention, and FIG. 13 is a diagram showing an example of virtual sensor data acquired by the mobile robot according to an embodiment of the present invention am.
도 12 및 도 13에서 보듯이, 각 센서 데이터는 복수의 데이터 점(Data Point)들로 구성되어 있다. 예를 들어 어떤 점 P가 실 센서 데이터에는 P1, 가상 센서 데이터에는 P2로 포함되어 있으면 P1과 P2는 대응점 관계이다. 2D 센서의 경우 실 센서 데이터를 구성하는 데이터 점들은 이동 로봇(100)의 기준 좌표계에 대해 각각 (x, y)로 정의된다. 가상 센서 데이터를 구성하는 데이터 점들은 환경 지도의 기준 좌표계에 대해 각각 (x, y)로 정의된다.12 and 13 , each sensor data is composed of a plurality of data points. For example, if a certain point P is included as P1 in the real sensor data and P2 in the virtual sensor data, P1 and P2 have a corresponding point relationship. In the case of the 2D sensor, data points constituting the real sensor data are defined as (x, y) with respect to the reference coordinate system of the
이와 같이, 이동 로봇(100)의 기준 좌표계에 대해 각각 (x, y)로 정의된 실 센서 데이터의 데이터 점들과, 환경 지도의 기준 좌표계에 대해 각각 (x, y)로 정의된 가상 센서 데이터의 데이터 점들을 획득한다(도 4의 404 참조).As such, data points of real sensor data defined as (x, y) with respect to the reference coordinate system of the
그리고, 획득한 대응점들 중에서 이상점(Outlier)을 제거한다(406). 이상점(Outlier)이란 실 센서 데이터와 가상 센서 데이터에 공통으로 포함되어 있지 않은 데이터 점을 의미한다. Then, an outlier is removed from among the obtained corresponding points ( 406 ). An outlier means a data point that is not commonly included in real sensor data and virtual sensor data.
이상점(Outlier)을 제거한 나머지 대응점(Inlier)들로 로컬 맵(Local Map)에 대한 실 센서 데이터의 상대 위치를 계산한다(408). A relative position of the real sensor data with respect to the local map is calculated using the remaining corresponding points from which the outlier is removed ( 408 ).
상대 위치는 실 센서 데이터에 속한 대응점(Inlier)들을 로컬 맵(Local Map)에 속한 각각의 대응되는 대응점(Inlier)들로 맞춤(Fitting)하는 좌표 변환 계수(Coordinates Transformation Parameter, Rotation 및 Translation)를 구하여 얻을 수 있다. 로컬 맵(Local Map)의 각 데이터 점들은 환경 지도의 기준 좌표계에 대해 정의되어 있으므로 실 센서 데이터를 맞춤(Fitting)하는 좌표 변환 계수는 환경 지도에 대한 이동 로봇(100)의 상대 위치를 나타낸다. 이를 도 14를 참조하여 보다 구체적으로 설명한다.The relative position is obtained by obtaining a Coordinates Transformation Parameter (Rotation and Translation) that fits the corresponding points (Inliers) belonging to the real sensor data to the corresponding points (Inliers) belonging to the local map (Local Map). can be obtained Since each data point of the local map is defined with respect to the reference coordinate system of the environment map, the coordinate transformation coefficient for fitting the real sensor data indicates the relative position of the
도 14는 본 발명의 일 실시예에 의한 로컬 맵에 대한 실 센서 데이터의 상대 위치를 계산하는 방법을 나타낸 도면이다.14 is a diagram illustrating a method of calculating a relative position of real sensor data with respect to a local map according to an embodiment of the present invention.
도 14에서, {A} 좌표계를 로컬 맵(Local Map)의 기준 좌표계, {B} 좌표계를 센서의 기준 좌표계라고 한다.In FIG. 14 , the {A} coordinate system is referred to as a reference coordinate system of a local map, and the {B} coordinate system is referred to as a reference coordinate system of the sensor.
로컬 맵(Local Map)을 이루는 데이터 점들(PA)과 실 센서 데이터의 데이터 점들(PB)이 도 14에 도시한 바와 같이, 대응되었다고 하면 아래의 [수학식 1] 로 서로의 관계가 표현될 수 있다.If the data points P A constituting the local map and the data points P B of the real sensor data correspond as shown in FIG. 14 , the relationship between each other is expressed by the following [Equation 1] can be
[수학식 1][Equation 1]
PA=RㅇPB+tP A =R P B +t
[수학식 1]에서, R과 t는 좌표 변환 계수로, R은 회전 행렬(Rotation Matrix)을 의미하고, t는 전위 벡터(Translation Vector)를 의미한다. In [Equation 1], R and t are coordinate transformation coefficients, R is a rotation matrix, and t is a translation vector.
즉, {A} 좌표게를 R에 따라 회전하고 t만큼 이동시키면 {B} 좌표계와 동일하게 된다. 본 발명의 일 실시예에서는 최소 제곱법(Least squares method)를 이용하여 R과 t를 구한다.That is, if the {A} coordinate system is rotated according to R and moved by t, it becomes the same as the {B} coordinate system. In an embodiment of the present invention, R and t are obtained using the least squares method.
이와 같이, 로컬 맵에 대한 실 센서 데이터의 상대 위치가 계산되면(도 4의 408 참조), 복수의 로컬 맵과 실 센서 데이터의 유사도를 계산한다(410). 도 13에 도시한 로컬 맵은 이진(Binary) 영상으로 간주할 수 있다. 따라서 디지털 영상 처리 기법 중 Dilation(팽창 연산) 방법을 사용하여 도 15에 도시한 바와 같이, 로컬 맵(Local map)을 팽창시키고, 팽창된 로컬 맵에 실 센서 데이터를 맞춤(Fitting)하여 유사도를 계산한다.In this way, when the relative position of the real sensor data with respect to the local map is calculated (refer to 408 of FIG. 4 ), a degree of similarity between the plurality of local maps and the real sensor data is calculated ( 410 ). The local map shown in FIG. 13 may be regarded as a binary image. Therefore, as shown in FIG. 15 , using the Dilation method among digital image processing techniques, the local map is expanded and the similarity is calculated by fitting the real sensor data to the expanded local map. do.
즉, 도 12에 도시한 실 센서 데이터를 도 15에 도시한 팽창된 로컬 맵에 맞춤(Fitting)한다. 실 센서 데이터의 데이터 점들 중 팽창된 로컬 맵 간에 겹치는 데이터 점들의 개수를 유사도로 사용한다.That is, the real sensor data shown in FIG. 12 is fitted to the expanded local map shown in FIG. 15 . Among the data points of the real sensor data, the number of overlapping data points between the inflated local maps is used as the similarity.
도 16에 도시한 바와 같이, 로컬 맵과 실 센서 데이터가 맞춤(Fitting)이 잘되어 실 센서 데이터와 팽창된 로컬 맵의 겹치는 부분(Overlap)의 개수가 많으면, 유사도는 높다.As shown in FIG. 16 , if the number of overlaps between the real sensor data and the inflated local map is large because the local map and the real sensor data are well fitted, the degree of similarity is high.
반면, 도 17에 도시한 바와 같이, 로컬 맵과 실 센서 데이터가 맞춤(Fitting)이 잘못되어 실 센서 데이터와 팽창된 로컬 맵의 겹치는 부분(Overlap)의 개수가 적으면, 유사도는 낮다. On the other hand, as shown in FIG. 17 , if the number of overlaps between the real sensor data and the inflated local map is small due to incorrect fitting between the local map and the real sensor data, the similarity is low.
따라서, 최종적으로 유사도가 가장 큰 로컬 맵에 대한 이동 로봇(100)의 상대 위치를 환경 지도에 대한 이동 로봇(100)의 위치로 결정한다(412).Therefore, finally, the relative position of the
이동 로봇(100)의 위치가 결정되면, 이동 로봇(100)의 위치 인식이 완료되었음을 사용자에게 알려 준다(414). 이동 로봇(100)의 위치 인식을 알리는 방법은, 디스플레이부(180)에서 아이콘이나 LED 점멸을 통해 표시하거나, 음향출력부(190)에서 음향(예를 들어, Beep음)을 출력하여 사용자가 쉽게 알 수 있도록 한다.When the location of the
이상의 상세한 설명은 본 발명을 예시하는 것이다. 또한 전술한 내용은 본 발명의 바람직한 실시 형태를 나타내어 설명하는 것이며, 본 발명은 다양한 다른 조합, 변경 및 환경에서 사용할 수 있다. 즉 본 명세서에 개시된 발명의 개념의 범위, 저술한 개시 내용과 균등한 범위 및/또는 당업계의 기술 또는 지식의 범위내에서 변경 또는 수정이 가능하다. 저술한 실시예는 본 발명의 기술적 사상을 구현하기 위한 최선의 상태를 설명하는 것이며, 본 발명의 구체적인 적용 분야 및 용도에서 요구되는 다양한 변경도 가능하다. 따라서 이상의 발명의 상세한 설명은 개시된 실시 상태로 본 발명을 제한하려는 의도가 아니다. 또한 첨부된 청구범위는 다른 실시 상태도 포함하는 것으로 해석되어야 한다.The above detailed description is illustrative of the present invention. In addition, the above description shows and describes preferred embodiments of the present invention, and the present invention can be used in various other combinations, modifications, and environments. That is, changes or modifications are possible within the scope of the concept of the invention disclosed herein, the scope equivalent to the written disclosure, and/or within the scope of skill or knowledge in the art. The written embodiment describes the best state for implementing the technical idea of the present invention, and various changes required in the specific application field and use of the present invention are possible. Therefore, the detailed description of the present invention is not intended to limit the present invention to the disclosed embodiments. Also, the appended claims should be construed as including other embodiments.
1 : 이동 로봇 시스템 100 : 이동 로봇
110 : 본체 130 : 전원부
140 : 구동부 150 : 데이터 획득부
160 : 저장부 170 : 제어장치
171 : 로컬 맵 획득부 172 : 대응점 획득부
173 : 상대 위치 계산부 174 : 유사도 계산부
175 : 위치 결정부 180 : 디스플레이부
190 : 음향출력부 200 : 디바이스
300 : 충전 스테이션1: mobile robot system 100: mobile robot
110: body 130: power supply
140: driving unit 150: data acquisition unit
160: storage unit 170: control device
171: local map acquisition unit 172: correspondence point acquisition unit
173: relative position calculation unit 174: similarity calculation unit
175: positioning unit 180: display unit
190: sound output unit 200: device
300: charging station
Claims (19)
상기 임의의 위치 주변을 스캔하여 로컬 맵을 획득하고;
상기 임의의 위치에서 상기 이동 로봇이 회전하면서 실 센서 데이터를 획득하고;
상기 로컬 맵과 상기 실 센서 데이터 간의 정합을 수행하여 상기 로컬 맵에 대한 상기 이동 로봇의 상대 위치를 인식하는 것;을 포함하고,
상기 로컬 맵을 획득하는 것은,
상기 이동 로봇의 현재 위치를 중심으로 선정된 복수의 로컬 맵 추출 위치 각각을 중심으로 정해진 크기의 로컬 맵을 환경 지도로부터 추출하는 이동 로봇의 위치 인식 방법.A method for recognizing the position of a mobile robot moved to an arbitrary position by a user, the method comprising:
scan around the arbitrary location to obtain a local map;
acquiring real sensor data while the mobile robot rotates at the arbitrary position;
Recognizing the relative position of the mobile robot with respect to the local map by performing matching between the local map and the real sensor data;
To obtain the local map,
A method for recognizing a location of a mobile robot for extracting a local map of a predetermined size based on each of a plurality of local map extraction locations selected based on the current location of the mobile robot from an environment map.
상기 이동 로봇의 위치 인식이 완료되었음을 알리는 것;을 더 포함하는 이동 로봇의 위치 인식 방법.According to claim 1,
The method of recognizing the location of the mobile robot further comprising; informing that the recognition of the location of the mobile robot is completed.
상기 로컬 맵을 획득하는 것은,
상기 이동 로봇이 동작하는 환경의 지도 정보를 기반으로 하여 상기 임의의 위치 주변을 스캔하여 상기 로컬 맵을 획득하는 이동 로봇의 위치 인식 방법.According to claim 1,
To obtain the local map,
A method for recognizing a location of a mobile robot to acquire the local map by scanning around the arbitrary location based on map information of an environment in which the mobile robot operates.
상기 로컬 맵을 획득하는 방식은,
가상 센서 데이터 추출 방식, Small Local Map 추출 방식 또는 Large Local Map 추출 방식 중에서 적어도 하나를 포함하는 이동 로봇의 위치 인식 방법.4. The method of claim 3,
The method of obtaining the local map is,
A method for recognizing a location of a mobile robot including at least one of a virtual sensor data extraction method, a Small Local Map extraction method, and a Large Local Map extraction method.
상기 이동 로봇이 동작하는 환경 지도는,
2차원 격자 지도 또는 3차원 격자 지도를 사용하는 이동 로봇의 위치 인식 방법.4. The method of claim 3,
The environment map in which the mobile robot operates is
A method for recognizing the position of a mobile robot using a two-dimensional grid map or a three-dimensional grid map.
상기 실 센서 데이터를 획득하는 것은,
상기 이동 로봇에 설치된 센서로부터 측정 대상까지의 거리를 측정하여 상기 이동 로봇이 위치한 상기 임의의 위치에서 거리 데이터를 획득하는 이동 로봇의 위치 인식 방법.According to claim 1,
Acquiring the real sensor data includes:
A method for recognizing a location of a mobile robot for acquiring distance data at the arbitrary location where the mobile robot is located by measuring a distance from a sensor installed in the mobile robot to a measurement target.
상기 이동 로봇은,
상기 센서의 시야에 따라 상기 실 센서 데이터의 획득 방식을 다르게 하는 이동 로봇의 위치 인식 방법.7. The method of claim 6,
The mobile robot is
A method of recognizing a position of a mobile robot in which a method of acquiring the real sensor data is different according to a field of view of the sensor.
상기 실 센서 데이터의 획득 방식은,
상기 이동 로봇이 정지된 상태에서 상기 실 센서 데이터를 획득하는 방식;
상기 이동 로봇이 제자리에서 일정 각도를 회전하면서 상기 센서의 시야 밖의 상기 실 센서 데이터를 획득하는 방식;
상기 이동 로봇이 제자리에서 360° 회전하면서 전(全)방향에 대한 상기 실 센서 데이터를 획득하는 방식; 중에서 적어도 하나를 포함하는 이동 로봇의 위치 인식 방법.8. The method of claim 7,
The method of acquiring the real sensor data is
a method of acquiring the real sensor data in a state in which the mobile robot is stopped;
a method in which the mobile robot acquires the real sensor data outside the field of view of the sensor while rotating at a predetermined angle in place;
a method in which the mobile robot rotates 360° in place to acquire the real sensor data for all directions; A method of recognizing a position of a mobile robot comprising at least one of
상기 로컬 맵에 대한 상기 이동 로봇의 상대 위치를 인식하는 것은,
상기 실 센서 데이터와 상기 로컬 맵 간의 데이터 정합을 통해 대응점들을 획득하고;
상기 획득된 대응점들을 이용하여 상기 로컬 맵에 대한 상기 실 센서 데이터의 상대 위치를 계산하고;
복수의 로컬 맵과 상기 실 센서 데이터의 유사도를 계산하고;
상기 유사도가 가장 큰 로컬 맵에 대한 상기 이동 로봇의 상대 위치를 상기 환경 지도에 대한 상기 이동 로봇의 위치로 결정하는 것;을 포함하는 이동 로봇의 위치 인식 방법.6. The method of claim 5,
Recognizing the relative position of the mobile robot with respect to the local map,
acquiring corresponding points through data matching between the real sensor data and the local map;
calculating a relative position of the real sensor data with respect to the local map using the obtained corresponding points;
calculating a degree of similarity between a plurality of local maps and the real sensor data;
and determining the relative position of the mobile robot with respect to the local map having the greatest similarity as the position of the mobile robot with respect to the environment map.
상기 로컬 맵과 상기 실 센서 데이터에 공통으로 포함되는 데이터 점의 개수가 많을수록 상기 유사도가 높은 이동 로봇의 위치 인식 방법.10. The method of claim 9,
The more the number of data points commonly included in the local map and the real sensor data, the higher the similarity of the position recognition method of the mobile robot.
상기 획득된 대응점들 중에서 이상점을 제거하는 것;을 더 포함하는 이동 로봇의 위치 인식 방법.10. The method of claim 9,
The method of recognizing a position of a mobile robot further comprising; removing an outlier from among the obtained corresponding points.
상기 임의의 위치에서 상기 이동 로봇에 설치된 센서로부터 측정 대상까지의 거리를 측정하여 실 센서 데이터를 획득하는 데이터 획득부;
상기 이동 로봇이 동작하는 환경의 지도 정보를 기반으로 상기 임의의 위치 주변을 스캔하여 로컬 맵을 획득하는 로컬 맵 획득부;
상기 로컬 맵과 상기 실 센서 데이터 간의 정합을 수행하여 상기 로컬 맵에 대한 상기 이동 로봇의 상대 위치를 인식하는 제어장치;를 포함하고,
상기 로컬 맵 획득부는,
상기 이동 로봇의 현재 위치를 중심으로 선정된 복수의 로컬 맵 추출 위치 각각을 중심으로 정해진 크기의 로컬 맵을 상기 환경 지도로부터 추출하는 이동 로봇의 위치 인식 장치.An apparatus for recognizing the position of a mobile robot moved to an arbitrary position by a user, the apparatus comprising:
a data acquisition unit configured to acquire real sensor data by measuring a distance from a sensor installed in the mobile robot to a measurement target at the arbitrary location;
a local map acquisition unit configured to acquire a local map by scanning around the arbitrary location based on map information of an environment in which the mobile robot operates;
a control device for recognizing the relative position of the mobile robot with respect to the local map by performing matching between the local map and the real sensor data;
The local map acquisition unit,
A device for recognizing a location of a mobile robot for extracting, from the environment map, a local map of a predetermined size based on each of a plurality of selected local map extraction locations based on the current location of the mobile robot.
상기 이동 로봇의 위치 인식이 완료되었음을 표시하는 디스플레이부;를 더 포함하는 이동 로봇의 위치 인식 장치.13. The method of claim 12,
The apparatus for recognizing the position of the mobile robot further comprising a; a display unit for displaying that the recognition of the position of the mobile robot has been completed.
상기 이동 로봇의 위치 인식이 완료되었음을 알리는 음향출력부;를 더 포함하는 이동 로봇의 위치 인식 장치.13. The method of claim 12,
The apparatus for recognizing the position of a mobile robot further comprising a; an acoustic output unit notifying that the position recognition of the mobile robot is completed.
상기 데이터 획득부는,
상기 이동 로봇이 정지된 상태에서 상기 실 센서 데이터를 획득하는 것;
상기 이동 로봇이 제자리에서 일정 각도를 회전하면서 상기 센서의 시야 밖의 상기 실 센서 데이터를 획득하는 것;
상기 이동 로봇이 제자리에서 360° 회전하면서 전(全)방향에 대한 상기 실 센서 데이터를 획득하는 것; 중에서 적어도 하나를 이용하여 상기 센서의 시야에 따라 상기 실 센서 데이터를 획득하는 이동 로봇의 위치 인식 장치. 13. The method of claim 12,
The data acquisition unit,
acquiring the real sensor data while the mobile robot is stopped;
acquiring the real sensor data out of the field of view of the sensor while the mobile robot rotates a predetermined angle in place;
acquiring the real sensor data for all directions while the mobile robot rotates 360° in place; A position recognition device for a mobile robot that acquires the real sensor data according to the field of view of the sensor using at least one of the following.
상기 센서는,
2D 센서 또는 3D 센서를 사용하는 이동 로봇의 위치 인식 장치.13. The method of claim 12,
The sensor is
Position-aware devices for mobile robots that use 2D or 3D sensors.
상기 제어장치는,
상기 실 센서 데이터와 상기 로컬 맵 간의 데이터 정합을 통해 대응점들을 획득하는 데이터 획득부;
상기 획득된 대응점들을 이용하여 상기 로컬 맵에 대한 상기 실 센서 데이터의 상대 위치를 계산하는 상대 위치 계산부;
복수의 로컬 맵과 상기 실 센서 데이터의 유사도를 계산하는 유사도 계산부;
상기 유사도가 가장 큰 로컬 맵에 대한 상기 이동 로봇의 상대 위치를 환경 지도에 대한 상기 이동 로봇의 위치로 결정하는 위치 결정부;를 포함하는 이동 로봇의 위치 인식 장치.13. The method of claim 12,
The control device is
a data acquisition unit configured to acquire corresponding points through data matching between the real sensor data and the local map;
a relative position calculation unit for calculating a relative position of the real sensor data with respect to the local map using the obtained corresponding points;
a similarity calculator configured to calculate a degree of similarity between a plurality of local maps and the real sensor data;
and a position determining unit that determines the relative position of the mobile robot with respect to the local map having the greatest similarity as the position of the mobile robot with respect to the environment map.
상기 유사도 계산부는,
상기 로컬 맵과 상기 실 센서 데이터에 공통으로 포함되는 데이터 점의 개수가 많을수록 상기 유사도가 높다고 계산하는 이동 로봇의 위치 인식 장치.18. The method of claim 17,
The similarity calculator,
The apparatus for recognizing a position of a mobile robot for calculating that the similarity is higher as the number of data points commonly included in the local map and the real sensor data increases.
상기 제어장치는,
획득된 대응점들 중에서 이상점을 제거하는 것;을 더 포함하는 이동 로봇의 위치 인식 장치. 13. The method of claim 12,
The control device is
Recognizing the position of the mobile robot further comprising; removing the abnormal point from among the obtained corresponding points.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150132274A KR102386361B1 (en) | 2015-09-18 | 2015-09-18 | Apparatus for localization of mobile robot and method thereof |
EP16176784.3A EP3144765B1 (en) | 2015-09-18 | 2016-06-29 | Apparatus for localizing cleaning robot, cleaning robot, and controlling method of cleaning robot |
US15/203,079 US10663972B2 (en) | 2015-09-18 | 2016-07-06 | Apparatus for localizing cleaning robot, cleaning robot, and controlling method of cleaning robot |
CN201610773063.XA CN106541407B (en) | 2015-09-18 | 2016-08-30 | Cleaning robot and control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150132274A KR102386361B1 (en) | 2015-09-18 | 2015-09-18 | Apparatus for localization of mobile robot and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170034069A KR20170034069A (en) | 2017-03-28 |
KR102386361B1 true KR102386361B1 (en) | 2022-04-15 |
Family
ID=58495744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150132274A KR102386361B1 (en) | 2015-09-18 | 2015-09-18 | Apparatus for localization of mobile robot and method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102386361B1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102094773B1 (en) * | 2018-10-31 | 2020-03-30 | (주)오토노머스에이투지 | Method for map matching using observed map of moving apparatus, and computing device using the same |
KR20200084423A (en) | 2018-12-24 | 2020-07-13 | 삼성전자주식회사 | Method and apparatus for generating local motion based on machine learning |
KR20190109325A (en) | 2019-08-07 | 2019-09-25 | 엘지전자 주식회사 | Robot and method for localizing robot |
KR20190109342A (en) | 2019-09-06 | 2019-09-25 | 엘지전자 주식회사 | Robot and method for localizing robot |
WO2021125510A1 (en) * | 2019-12-20 | 2021-06-24 | Samsung Electronics Co., Ltd. | Method and device for navigating in dynamic environment |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020010257A (en) * | 2000-07-28 | 2002-02-04 | 김인광 | Apparatus and method for recognizing self-position in robort system |
KR100843085B1 (en) * | 2006-06-20 | 2008-07-02 | 삼성전자주식회사 | Method of building gridmap in mobile robot and method of cell decomposition using it |
KR102096398B1 (en) * | 2013-07-03 | 2020-04-03 | 삼성전자주식회사 | Method for recognizing position of autonomous mobile robot |
-
2015
- 2015-09-18 KR KR1020150132274A patent/KR102386361B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20170034069A (en) | 2017-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106541407B (en) | Cleaning robot and control method thereof | |
KR102386361B1 (en) | Apparatus for localization of mobile robot and method thereof | |
CN108290294B (en) | Mobile robot and control method thereof | |
US11467602B2 (en) | Systems and methods for training a robot to autonomously travel a route | |
KR102567525B1 (en) | Mobile Robot System, Mobile Robot And Method Of Controlling Mobile Robot System | |
KR101857952B1 (en) | Apparatus and System for Remotely Controlling a Robot Cleaner and Method thereof | |
KR102457222B1 (en) | Mobile robot and method thereof | |
US9597804B2 (en) | Auto-cleaning system, cleaning robot and method of controlling the cleaning robot | |
JP2020126691A (en) | Movable robot movement restriction | |
JP7223732B2 (en) | System and method for automatic device pairing | |
CN105190482A (en) | Detection of a zooming gesture | |
KR101976462B1 (en) | A robot cleaner a control method thereof | |
KR20130029852A (en) | Cleaning robot for enabling set up data of cleaning area and verification of after cleaning real cleaning area and system for controlling the same | |
KR101623642B1 (en) | Control method of robot cleaner and terminal device and robot cleaner control system including the same | |
US11627853B2 (en) | Robotic cleaner and control method therefor | |
KR102471487B1 (en) | Cleaning robot and controlling method thereof | |
US20190004122A1 (en) | Wireless position sensing using magnetic field of single transmitter | |
US20190354246A1 (en) | Airport robot and movement method therefor | |
EP3115926A1 (en) | Method for control using recognition of two-hand gestures | |
KR20180058303A (en) | Mobile robot and system having the same and controlling method of mobile robot | |
JP2018190363A (en) | Portable mobile robot and operation method thereof | |
JP7393255B2 (en) | Information processing device and information processing method | |
KR20230029427A (en) | Cleaning robot and method for identifying a position of the cleaning robot | |
KR20180039202A (en) | 3-dimensional remote control system and method, control device thereof | |
KR20210104530A (en) | Robot and control method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |