KR102420090B1 - Method of drawing map by identifying moving object and robot implementing thereof - Google Patents

Method of drawing map by identifying moving object and robot implementing thereof Download PDF

Info

Publication number
KR102420090B1
KR102420090B1 KR1020190097429A KR20190097429A KR102420090B1 KR 102420090 B1 KR102420090 B1 KR 102420090B1 KR 1020190097429 A KR1020190097429 A KR 1020190097429A KR 20190097429 A KR20190097429 A KR 20190097429A KR 102420090 B1 KR102420090 B1 KR 102420090B1
Authority
KR
South Korea
Prior art keywords
map
robot
sensed
information
moving
Prior art date
Application number
KR1020190097429A
Other languages
Korean (ko)
Other versions
KR20190096327A (en
Inventor
손병곤
김동훈
김한신
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020170012277A external-priority patent/KR102012549B1/en
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020190097429A priority Critical patent/KR102420090B1/en
Publication of KR20190096327A publication Critical patent/KR20190096327A/en
Application granted granted Critical
Publication of KR102420090B1 publication Critical patent/KR102420090B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning

Abstract

본 발명은 이동 객체를 식별하여 맵을 작성하는 방법 및 이를 구현하는 로봇에 관한 기술로, 본 발명의 일 실시예에 의한 이동 객체를 식별하여 맵을 작성하는 방법은 로봇의 센싱부가 로봇의 외부에 배치된 제1객체를 센싱하는 단계, 로봇의 제어부가 센싱된 제1객체의 이동성을 산출하는 단계, 및 로봇의 제어부가 산출한 제1객체의 이동성이 미리 설정된 기준보다 낮은 경우, 제1객체의 센싱된 정보 및 센싱한 시간 정보를 맵에 고정 객체로 저장하는 단계를 포함한다. The present invention relates to a method for creating a map by identifying a moving object and a technology for a robot implementing the same. In the method for creating a map by identifying a moving object according to an embodiment of the present invention, a sensing unit of the robot is installed outside the robot. Sensing the arranged first object, the step of calculating the sensed mobility of the first object by the control unit of the robot, and when the mobility of the first object calculated by the control unit of the robot is lower than a preset criterion, and storing the sensed information and the sensed time information as a fixed object on the map.

Figure R1020190097429
Figure R1020190097429

Description

이동 객체를 식별하여 맵을 작성하는 방법 및 이를 구현하는 로봇{METHOD OF DRAWING MAP BY IDENTIFYING MOVING OBJECT AND ROBOT IMPLEMENTING THEREOF}METHOD OF DRAWING MAP BY IDENTIFYING MOVING OBJECT AND ROBOT IMPLEMENTING THEREOF

본 발명은 이동 객체를 식별하여 맵을 작성하는 방법 및 이를 구현하는 로봇에 관한 기술이다.The present invention relates to a method for creating a map by identifying a moving object, and a technology for a robot implementing the same.

공항, 학교, 관공서, 호텔, 사무실, 공장 등 인적, 물적 교류가 활발하게 발생하는 공간에서 로봇이 동작하기 위해서는 전체 공간에 대한 맵을 가져야 하며, 또한 전체 공간에서 발생하는 동적 변화를 확인하고 동적 변화에 의한 일시적인 공간의 변화와 맵에 적용되어야 하는 항구적인 공간의 특징을 구별하는 것이 필요하다. 특히, 공항이나 항만, 기차역과 같이 다수의 사람들이 이동하는 공간에서는 건축물의 구조뿐만 아니라 다양한 이동 객체들의 움직임을 파악하는 것이 필요하다.In order for the robot to operate in a space where human and material exchanges actively occur such as airports, schools, government offices, hotels, offices, factories, etc., it is necessary to have a map of the entire space. It is necessary to distinguish between temporary spatial changes caused by In particular, in a space where a large number of people move, such as an airport, a port, or a train station, it is necessary to understand the movement of various moving objects as well as the structure of the building.

그러나, 공항이나 항만, 기차역과 같이 항시적으로 사람들이 많이 이용하는 공간은 이동 객체가 상존하는 문제가 있으므로, 로봇이 이를 맵의 고정된 영역과 구별하는 방안이 필요하다. 따라서, 이러한 문제점을 해결하기 위해, 본 명세서에서는 로봇이 이동 중에 파악한 이동 객체에 대한 정보를 누적하고 이를 분석하여 맵의 고정 객체가 배치되는 영역과 구별하는 방안을 제시하고자 한다. However, since there is a problem in that moving objects exist in spaces that are constantly used by people, such as airports, ports, and train stations, a method for the robot to distinguish them from the fixed areas of the map is required. Therefore, in order to solve this problem, in the present specification, a method of accumulating information on a moving object detected by the robot while moving and analyzing it is proposed to distinguish it from an area in which a fixed object is disposed on a map.

본 명세서에서는 전술한 문제점을 해결하기 위한 것으로, 변화가 빈번한 공간 내에서 고정 객체와 이동 객체를 구별하여 로봇이 기능을 수행할 수 있도록 하는 방법과 이를 구현하는 로봇을 제공하고자 한다.An object of the present specification is to provide a method for allowing the robot to perform a function by distinguishing a fixed object from a moving object in a space with frequent changes and a robot implementing the same in order to solve the above-mentioned problems.

또한, 본 명세서에서는 전술한 문제점을 해결하기 위해, 외부에서 센싱된 객체들이 고정 객체인지 이동 객체인지를 구분할 수 있도록 내부의 맵 정보를 이용하는 방법과 이를 구현하는 로봇을 제공하고자 한다.In addition, in order to solve the above-mentioned problems, in the present specification, it is an object of the present specification to provide a method of using internal map information to distinguish whether objects sensed from the outside are fixed objects or moving objects, and a robot implementing the same.

또한, 본 명세서에서는 유동 인구들을 지속적으로 센싱하는 결과로 인해 실제 비어있는 공간임에도 로봇이 진입하지 못하는 문제를 해결하는 방법과 이를 구현하는 로봇을 제공하고자 한다. In addition, an object of the present specification is to provide a method for solving a problem that the robot cannot enter even in an actual empty space due to a result of continuously sensing floating populations, and a robot implementing the same.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention not mentioned may be understood by the following description, and will be more clearly understood by the examples of the present invention. It will also be readily apparent that the objects and advantages of the present invention may be realized by the means and combinations thereof indicated in the appended claims.

본 발명의 일 실시예에 의한 이동 객체를 식별하여 맵을 작성하는 방법은 로봇의 센싱부가 로봇의 외부에 배치된 제1객체를 센싱하는 단계, 로봇의 제어부가 센싱된 제1객체의 이동성을 산출하는 단계, 및 로봇의 제어부가 산출한 제1객체의 이동성이 미리 설정된 기준보다 낮은 경우, 제1객체의 센싱된 정보 및 센싱한 시간 정보를 맵에 고정 객체로 저장하는 단계를 포함한다. The method for creating a map by identifying a moving object according to an embodiment of the present invention includes the steps of: a sensing unit of a robot senses a first object disposed outside the robot; and a control unit of the robot calculates mobility of the sensed first object and storing the sensed information and the sensed time information of the first object as a fixed object on a map when the mobility of the first object calculated by the control unit of the robot is lower than a preset reference.

본 발명의 다른 실시예에 의한 이동 객체를 식별하여 맵을 작성하는 로봇은 로봇의 이동을 제어하는 이동부, 로봇의 이동시 참조하는 맵을 저장하는 맵 저장부, 로봇의 외부에 배치된 제1객체를 센싱하는 센싱부, 및 이동부, 맵 저장부, 센싱부를 제어하며, 센싱된 제1객체의 이동성을 산출하는 제어부를 포함하며, 로봇의 제어부는 이동성이 미리 설정된 기준보다 낮은 경우, 제1객체의 센싱된 정보 및 센싱한 시간 정보를 맵에 고정 객체로 저장한다.A robot for creating a map by identifying a moving object according to another embodiment of the present invention includes a moving unit that controls the movement of the robot, a map storage unit that stores a map referenced when the robot moves, and a first object disposed outside the robot. a sensing unit sensing the Stores the sensed information and the sensed time information in the map as a fixed object.

본 발명의 실시예들을 적용할 경우, 센서를 이용하여 맵울 작성하거나 수정하는 과정에서 동적인 장애물을 구별하여 저장하므로, 로봇이 정확한 맵 정보를 보유하고 주행할 수 있다. When the embodiments of the present invention are applied, dynamic obstacles are distinguished and stored in the process of creating or modifying a map using a sensor, so that the robot can drive with accurate map information.

또한, 본 발명의 실시예를 적용할 경우, 이동 객체로 센싱되어도 일정기간 이상 해당 위치에 배치되는 경우 이를 고정된 객체로 저장하여 로봇의 주행 시 이를 확인하도록 할 수 있다.In addition, when the embodiment of the present invention is applied, even if it is sensed as a moving object, if it is placed in the corresponding position for a certain period of time or longer, it can be stored as a fixed object so that it can be checked when the robot is driving.

또한, 본 발명의 일 실시예를 적용할 경우, 고정 객체로 저장한 이동 객체의 주기성에 따라 로봇이 진입 혹은 주행하여 기능을 수행할 수 있도록 할 수 있다. In addition, when an embodiment of the present invention is applied, the robot can enter or drive to perform a function according to the periodicity of a moving object stored as a fixed object.

또한, 본 발명의 일 실시예를 적용할 경우, 고정 객체로 저장한 이동 객체가 제거된 경우 이를 로봇이 센싱하여 맵에 반영하여 로봇이 정확한 맵에 기반하여 주행할 수 있도록 한다. In addition, when an embodiment of the present invention is applied, when a moving object stored as a fixed object is removed, the robot senses it and reflects it on the map so that the robot can drive based on the accurate map.

본 발명의 효과는 전술한 효과에 한정되지 않으며, 본 발명의 당업자들은 본 발명의 구성에서 본 발명의 다양한 효과를 쉽게 도출할 수 있다. The effects of the present invention are not limited to the aforementioned effects, and those skilled in the art can easily derive various effects of the present invention from the configuration of the present invention.

도 1은 본 발명의 일 실시예에 의한 라이다 센서의 구성을 보여주는 도면이다.
도 2는 본 발명의 일 실시예에 의한 로봇의 구성을 보여주는 도면이다.
도 3은 본 발명의 일 실시예에 의한 공간을 단위 영역으로 구성되는 맵으로 구성한 도면이다.
도 4는 본 발명의 일 실시예에 의한 이동 객체에 대한 정보가 저장된 이동 객체 저장부를 도시한 도면이다.
도 5는 본 발명의 일 실시예에 의한 로봇의 제어부가 맵과 상이한 이동 객체를 센싱하는 과정을 보여주는 도면이다.
도 6은 본 발명의 일 실시예에 의한 센싱부가 외부의 객체를 시간 간격을 두고 센싱하는 과정을 보여주는 도면이다.
도 7 및 도 8은 본 발명의 일 실시예에 의한, 센싱된 객체의 이동성을 산출하는 과정을 보여주는 도면이다.
도 9는 본 발명의 일 실시예에 의한 다수의 로봇 사이에, 혹은 로봇과 서버 사이에 이동 객체에 대한 정보를 교환하는 과정을 보여주는 도면이다.
도 10은 본 발명의 일 실시예에 의한 이동 객체 저장부에 이동 객체의 주기성을 저장하는 도면이다.
도 11은 본 발명의 일 실시예에 의한 로봇의 주행을 제어하는 과정을 보여주는 도면이다.
도 12는 본 발명의 일 실시예에 의한 맵 저장부의 이동 객체가 맵에 표시되는 실시예와 표시되지 않는 실시예를 보여주는 도면이다.
도 14는 본 발명의 다른 실시예에 의한 센싱부의 구성을 보여주는 도면이다.
도 15는 본 발명의 일 실시예에 의한 서버의 구성에 관한 도면이다.
1 is a diagram showing the configuration of a lidar sensor according to an embodiment of the present invention.
2 is a diagram showing the configuration of a robot according to an embodiment of the present invention.
3 is a diagram in which a space according to an embodiment of the present invention is configured as a map composed of unit areas.
4 is a diagram illustrating a moving object storage unit in which information on a moving object is stored according to an embodiment of the present invention.
5 is a diagram illustrating a process in which a controller of a robot senses a moving object different from a map according to an embodiment of the present invention.
6 is a diagram illustrating a process in which a sensing unit senses an external object at a time interval according to an embodiment of the present invention.
7 and 8 are diagrams illustrating a process of calculating the mobility of a sensed object according to an embodiment of the present invention.
9 is a diagram illustrating a process of exchanging information on a moving object between a plurality of robots or between a robot and a server according to an embodiment of the present invention.
10 is a diagram for storing periodicity of a moving object in a moving object storage unit according to an embodiment of the present invention.
11 is a view showing a process of controlling the driving of the robot according to an embodiment of the present invention.
12 is a diagram illustrating an embodiment in which a moving object of the map storage unit is displayed on a map and an embodiment in which the moving object is not displayed according to an embodiment of the present invention.
14 is a diagram showing the configuration of a sensing unit according to another embodiment of the present invention.
15 is a diagram illustrating the configuration of a server according to an embodiment of the present invention.

이하, 도면을 참조하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.Hereinafter, with reference to the drawings, embodiments of the present invention will be described in detail so that those of ordinary skill in the art to which the present invention pertains can easily implement them. The present invention may be embodied in many different forms and is not limited to the embodiments described herein.

본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조 부호를 붙이도록 한다. 또한, 본 발명의 일부 실시예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가질 수 있다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 수 있다.In order to clearly explain the present invention, parts irrelevant to the description are omitted, and the same reference numerals are assigned to the same or similar components throughout the specification. Further, some embodiments of the present invention will be described in detail with reference to exemplary drawings. In adding reference numerals to components of each drawing, the same components may have the same reference numerals as much as possible even though they are indicated in different drawings. In addition, in describing the present invention, if it is determined that a detailed description of a related known configuration or function may obscure the gist of the present invention, the detailed description may be omitted.

본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질, 차례, 순서 또는 개수 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 다른 구성 요소가 "개재"되거나, 각 구성 요소가 다른 구성 요소를 통해 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In describing the components of the present invention, terms such as first, second, A, B, (a), (b), etc. may be used. These terms are only for distinguishing the elements from other elements, and the essence, order, order, or number of the elements are not limited by the terms. When it is described that a component is “connected”, “coupled” or “connected” to another component, the component may be directly connected or connected to the other component, but other components may be interposed between each component. It should be understood that each component may be “interposed” or “connected”, “coupled” or “connected” through another component.

또한, 본 발명을 구현함에 있어서 설명의 편의를 위하여 구성요소를 세분화하여 설명할 수 있으나, 이들 구성요소가 하나의 장치 또는 모듈 내에 구현될 수도 있고, 혹은 하나의 구성요소가 다수의 장치 또는 모듈들에 나뉘어져서 구현될 수도 있다.In addition, in implementing the present invention, components may be subdivided for convenience of description, but these components may be implemented in one device or module, or one component may include a plurality of devices or modules. It may be implemented by being divided into .

이하, 본 명세서에서 로봇은 특정한 목적(청소, 보안, 모니터링, 안내 등)을 가지거나 혹은 로봇이 이동하는 공간의 특성에 따른 기능을 제공하며 이동하는 장치를 포함한다. 따라서, 본 명세서에서의 로봇은 소정의 정보와 센서를 이용하여 이동할 수 있는 이동수단을 보유하며 소정의 기능을 제공하는 장치를 통칭한다. Hereinafter, in the present specification, a robot includes a device that moves while having a specific purpose (cleaning, security, monitoring, guidance, etc.) or providing a function according to the characteristics of the space in which the robot moves. Accordingly, a robot in the present specification refers to a device that has a moving means capable of moving using predetermined information and a sensor and provides a predetermined function.

본 명세서에서 로봇은 맵을 보유하면서 이동할 수 있다. 맵은 공간에서 이동하지 않는 고정된 벽, 계단 등에 대한 정보를 의미한다. 또한, 로봇은 맵 위에 별도의 객체들에 대한 정보를 저장할 수 있다. 예를 들어, 고정된 벽에 부착된 안내 플랫폼, 새로이 설치된 자판기 등은 고정된 사물은 아니지만 일정 시간동안 고정성을 가지고 있으므로, 이는 맵에 추가적인 고정물로 저장되는 것이 필요하다. 반면, 어느 공간에 사람이 항상 존재해도 그 사람은 이동이 예견된 것이므로, 그 공간을 고정된 장애물이 있는 것으로 맵을 구성할 경우, 공간에 대한 기능을 완성하지 못할 수 있다. In this specification, the robot can move while holding the map. The map means information about fixed walls and stairs that do not move in space. Also, the robot may store information on separate objects on the map. For example, a guide platform attached to a fixed wall, a newly installed vending machine, etc. are not fixed objects, but are fixed for a certain period of time, so they need to be stored as additional fixtures on the map. On the other hand, even if a person is always present in any space, the person's movement is predicted, so if the map is configured with a fixed obstacle in the space, the function for the space may not be completed.

도 1은 본 발명의 일 실시예에 의한 라이다 센서의 구성을 보여주는 도면이다. 본 발명의 일 실시예에 로봇은 라이다(Lidar) 센서를 이용하여 맵을 보완하거나 혹은 이동 객체를 식별할 수 있다. 라이다 센서는 외부의 장애물 혹은 이동체를 향해 출사시킨 레이저의 반사를 통해 사물까지의 거리나 방향, 사물의 속도나 온도, 혹은 물질 분포와 농도 등을 확인할 수 있다. 이를 위해 라이다 센서를 포함하는 센싱부(100)는 레이저를 출사시키는 레이저 송신부(110)와 레이저 수신부(120)로 구성될 수 있으며, 이에 더하여 수신된 신호를 분석하는 센싱 데이터 분석부(130)로 구성될 수 있다. 레이저 송신부(110)는 특정한 파장의 레이저 혹은 파장을 가변하는 것이 가능한 레이저 광원을 이용할 수 있다. 센싱 데이터 분석부(130)는 센싱된 객체와의 거리, 혹은 센싱된 객체의 온도나 속도와 같은 정보를 분석하여 센싱부(100)가 장착된 로봇에게 제공할 수 있다.1 is a diagram showing the configuration of a lidar sensor according to an embodiment of the present invention. In an embodiment of the present invention, the robot may use a lidar sensor to supplement a map or identify a moving object. The lidar sensor can check the distance or direction to an object, the speed or temperature of the object, or the distribution and concentration of substances through the reflection of the laser emitted toward an external obstacle or moving object. To this end, the sensing unit 100 including the lidar sensor may include a laser transmitting unit 110 and a laser receiving unit 120 that emit a laser, and in addition, a sensing data analysis unit 130 that analyzes the received signal. can be composed of The laser transmitter 110 may use a laser of a specific wavelength or a laser light source capable of varying the wavelength. The sensing data analysis unit 130 may analyze information such as a distance to a sensed object or a temperature or speed of the sensed object and provide it to the robot equipped with the sensing unit 100 .

도 1은 센싱부의 일 실시예로 레이저를 이용하는 라이다 센서의 구성을 제시하고 있으나, 본 발명이 이에 한정되는 것은 아니며, 초음파 센서, 적외선 센서 등 다양한 센서를 이용하여 이동 객체를 확인할 수 있다. 또한 둘 이상의 센서들을 이용하고, 각 센서들이 식별한 정보의 특징을 반영하여 이동 객체를 확인할 수 있다.1 shows a configuration of a lidar sensor using a laser as an embodiment of the sensing unit, but the present invention is not limited thereto, and a moving object may be identified using various sensors such as an ultrasonic sensor and an infrared sensor. In addition, two or more sensors may be used and the moving object may be identified by reflecting the characteristics of the information identified by each sensor.

도 2는 본 발명의 일 실시예에 의한 로봇의 구성을 보여주는 도면이다. 로봇(1000)은 외부의 이동 객체 혹은 고정 객체를 센싱하는 센싱부(100), 맵을 저장하는 맵 저장부(200), 이동을 제어하는 이동부(300), 로봇의 소정의 기능을 수행하는 기능부(400), 다른 로봇과 맵 또는 이동 객체, 고정 객체에 관한 정보를 송수신하는 통신부(500), 그리고 이들 각각의 구성요소들을 제어하는 제어부(900)를 포함한다. 제어부(900)는 센싱된 객체가 있을 경우, 이 객체의 이동성을 산출할 수 있다. 그리고 센싱한 객체가 고정 객체인지 혹은 이동 객체인지에 따라 맵 저장부(200)에 상이한 방식과 정보로 저장할 수 있다. 2 is a diagram showing the configuration of a robot according to an embodiment of the present invention. The robot 1000 includes a sensing unit 100 for sensing an external moving object or a fixed object, a map storage unit 200 for storing a map, a moving unit 300 for controlling movement, and performing a predetermined function of the robot. It includes a functional unit 400 , a communication unit 500 for transmitting and receiving information about a map or moving object and a fixed object with another robot, and a control unit 900 for controlling each of these components. When there is a sensed object, the controller 900 may calculate the mobility of the object. In addition, depending on whether the sensed object is a fixed object or a moving object, it may be stored in different methods and information in the map storage unit 200 .

이동부(300)는 바퀴와 같이 로봇(1000)을 이동시키는 수단으로, 제어부(900)의 제어에 따라 로봇(1000)을 이동시킨다. 이때, 제어부(900)는 맵 저장부(200)에 저장된 영역에서 로봇(1000)의 현재 위치를 확인하여 이동부(300)에 이동 신호를 제공할 수 있다. 또한, 센싱부(100)에서 센싱된 외부의 객체의 존재 유무를 제어부(900)가 판별하여 이동부(300)의 이동을 제어할 수 있다. 기능부(400)는 로봇의 특화된 기능을 제공하는 것을 의미한다. 예를 들어, 청소 로봇인 경우 기능부(400)는 청소에 필요한 구성요소를 포함한다. 안내 로봇인 경우 기능부(400)는 안내에 필요한 구성요소를 포함한다. 기능부(400)는 로봇이 제공하는 기능에 따라 다양한 구성요소를 포함할 수 있다. The moving unit 300 is a means for moving the robot 1000 like a wheel, and moves the robot 1000 under the control of the controller 900 . In this case, the control unit 900 may provide a movement signal to the moving unit 300 by checking the current position of the robot 1000 in the area stored in the map storage unit 200 . In addition, the controller 900 may determine whether or not an external object sensed by the sensing unit 100 exists to control the movement of the moving unit 300 . The function unit 400 means to provide a specialized function of the robot. For example, in the case of a cleaning robot, the functional unit 400 includes components necessary for cleaning. In the case of a guide robot, the functional unit 400 includes components necessary for guidance. The function unit 400 may include various components according to functions provided by the robot.

맵 저장부(200)는 맵(210)을 포함한다. 맵은 로봇(1000)이 이동할 수 있는 공간에 대한 정보를 의미한다. 맵은 전체 공간을 세분화된 단위 영역으로 나누어 단위 영역에 고정 객체가 배치되어 있는지, 혹은 해당 고정 객체의 높이나 재질이 무엇인지 등을 저장할 수 있다. The map storage 200 includes a map 210 . The map means information about a space in which the robot 1000 can move. The map divides the entire space into subdivided unit areas to store whether a fixed object is placed in the unit area, or the height or material of the fixed object.

또한, 맵 저장부는 맵 뿐만 아니라 이동 객체들에 대한 정보를 저장하는 이동 객체 저장부(220)를 더 포함할 수 있다. 예를 들어, 특정 위치에서 발견된 이동 객체들과 이동 객체들이 센싱된 시간에 대한 정보 혹은 주기적으로 센싱되는 시간 정보 등을 이동 객체 저장부(220)에 저장한다. 이는 이동 객체로 판단되어도 로봇(1000)이 해당 위치에 이동할 수 있도록 하기 위함이다. Also, the map storage unit may further include a moving object storage unit 220 that stores information on moving objects as well as a map. For example, moving objects found at a specific location and information on the time at which the moving objects are sensed or periodically sensed time information are stored in the moving object storage 220 . This is to allow the robot 1000 to move to a corresponding position even if it is determined as a moving object.

본 발명의 일 실시예에 의하면 맵(210)은 고정 객체에 대한 정보를 저장하며, 통상 벽이나 유리, 기둥과 같이 고정된 구조물에 대한 정보를 저장한다. 반면 이동 객체 저장부(220)는 움직이는 사물 혹은 일시적으로 배치되는 사물에 대한 정보를 저장한다. 이와 달리, 본 발명의 다른 실시예는 도 13에서 살펴본 바와 같이, 맵(210)과 이동 객체 저장부(220)를 통합하되 고정 객체와 이동 객체가 구분되도록 저장할 수도 있다. According to an embodiment of the present invention, the map 210 stores information on fixed objects, and usually stores information on fixed structures such as walls, glass, and columns. On the other hand, the moving object storage 220 stores information about a moving object or a temporarily placed object. Alternatively, in another embodiment of the present invention, as shown in FIG. 13 , the map 210 and the moving object storage 220 may be integrated, but the fixed object and the moving object may be stored separately.

한편, 맵 저장부(200)는 히스토리 저장부(230)를 더 포함할 수 있다. 이는 특정 위치에서 객체가 센싱되는 시간 정보를 누적하여 저장하는 것을 의미한다. 히스토리 저장부(230)는 로봇(1000)에게 정보를 제공하는 별도의 서버에 구축될 수도 있다.Meanwhile, the map storage unit 200 may further include a history storage unit 230 . This means accumulating and storing time information when an object is sensed at a specific location. The history storage unit 230 may be built in a separate server that provides information to the robot 1000 .

도 2에서 맵 저장부(200)는 로봇(1000) 내에 포함되어 있으나, 다른 실시예에 의하면 맵 저장부(200)가 서버에 배치될 수 있다. 이 경우, 로봇(1000)은 실시간으로 혹은 일정한 시간 간격을 두고 서버에 저장된 맵을 서버의 통신부와 통신을 이용하여 수신할 수 있다. 또한, 로봇(1000)이 추가로 저장해야 할 정보를 서버에 전송할 수 있다. In FIG. 2 , the map storage unit 200 is included in the robot 1000 , but according to another embodiment, the map storage unit 200 may be disposed in the server. In this case, the robot 1000 may receive the map stored in the server in real time or at regular time intervals using communication with the communication unit of the server. Also, the robot 1000 may transmit information to be additionally stored to the server.

맵은 다양한 방식으로 구성될 수 있다. 일 실시예로 전체 공간을 X 및 Y축으로 하고, 일정한 단위 영역으로 나누어 각 단위 영역에 고정 객체 혹은 이동 객체가 배치되는지에 대한 정보를 저장할 수 있다. The map may be configured in a variety of ways. In an embodiment, information on whether a fixed object or a moving object is disposed in each unit area may be stored by dividing the entire space into X and Y axes.

본 발명의 일 실시예에 의한 제어부(900)는 센싱부(100)가 센싱한 객체의 이동성을 산출하여 이동성의 값이 미리 설정된 기준보다 낮은 경우, 이를 고정 객체 혹은 주기적으로 배치되는 객체로 판단하여 센싱된 객체의 센싱된 정보(위치 정보) 및 센싱한 시간 정보를 맵에 고정 객체로 저장한다. The control unit 900 according to an embodiment of the present invention calculates the mobility of the object sensed by the sensing unit 100, and when the value of the mobility is lower than a preset reference, it is determined as a fixed object or a periodically arranged object, The sensed information (location information) and the sensed time information of the sensed object are stored in the map as a fixed object.

한편, 제어부(900)는 센싱부(100)가 센싱한 객체의 이동성을 산출하여 이동성의 값이 미리 설정된 기준보다 높거나 같은 경우, 제어부는 센싱된 객체의 센싱된 정보와 센싱한 시간 정보를 이동 객체 저장부(220)에 저장할 수 있다. Meanwhile, the control unit 900 calculates the mobility of the object sensed by the sensing unit 100 and, when the value of the mobility is higher than or equal to a preset reference, the control unit moves the sensed information of the sensed object and the sensed time information It may be stored in the object storage 220 .

이하 본 명세서에서 맵 저장부(200)는 도 3의 210을 실시예로 하는 맵과, 도 4의 220을 실시예로 하는 이동 객체 저장부를 포함한다. Hereinafter, in the present specification, the map storage unit 200 includes a map 210 of FIG. 3 as an embodiment and a moving object storage unit with 220 of FIG. 4 as an embodiment.

도 3은 본 발명의 일 실시예에 의한 공간을 단위 영역으로 구성되는 맵으로 구성한 도면이다. 도 3의 210과 같이 단위 영역을 20x20으로 구성하여 맵의 단위 영역의 컬러가 검은 색인 경우 벽, 유리 등과 같은 고정 객체가 배치된 공간으로 정보를 저장한다. 맵의 단위 영역이 하얀 색인 경우 해당 공간은 장애물과 같은 객체가 존재하지 않아 로봇(1000)이 이동할 수 있는 공간이다. 3 is a diagram in which a space according to an embodiment of the present invention is configured as a map composed of unit areas. As shown in 210 of FIG. 3 , when the unit area is configured as 20x20 and the color of the unit area of the map is black, information is stored as a space in which a fixed object such as a wall or glass is disposed. When the unit area of the map is white, the corresponding space is a space in which the robot 1000 can move because objects such as obstacles do not exist.

도 3의 210은 일종의 비트맵과 같이 구성할 수 있다. 이미지 파일의 비트맵에서 각 비트가 하나의 단위 영역을 나타내도록 구성할 수 있다. 각 단위 영역은 좌측 하단을 (0, 0)으로, 우측 상단을 (19, 19)로 지시할 수 있다. 또한, 도 3의 210은 20x20 구조의 데이터 구조를 가질 수 있다. 예를 들어, 각 위치에 대해 객체가 배치되는지 여부에 대한 정보를 포함할 수 있다. 일종의 행렬과 같이 정보를 배치하고, 고정 객체가 배치되는 경우에는 해당 행렬의 값을 미리 설정된 값으로 설정할 수 있다. 210 of FIG. 3 may be configured as a kind of bitmap. In the bitmap of the image file, each bit can be configured to represent one unit area. For each unit area, the lower left may be indicated by (0, 0) and the upper right may be indicated by (19, 19). Also, 210 of FIG. 3 may have a data structure of a 20x20 structure. For example, it may include information on whether an object is disposed for each location. Information is arranged like a matrix, and when a fixed object is arranged, the value of the matrix can be set to a preset value.

또한, 맵 저장부(200)는 고정 객체들로 구성된 맵(210) 외에도 이동 객체들에 대한 정보를 저장할 수 있다. In addition, the map storage unit 200 may store information on moving objects in addition to the map 210 composed of fixed objects.

도 4는 본 발명의 일 실시예에 의한 이동 객체에 대한 정보가 저장된 이동 객체 저장부를 도시한 도면이다. 본 발명의 일 실시예에 의하면, 로봇(1000)의 센싱부(100)가 맵(210)에 기록되지 않은 객체가 확인될 경우, 이동 객체 저장부(220)에 센싱된 객체의 위치 정보와 센싱된 시각에 대한 정보를 저장할 수 있다. 도 4의 220은 센싱된 이동 객체들의 정보를 제시한다.4 is a diagram illustrating a moving object storage unit in which information on a moving object is stored according to an embodiment of the present invention. According to an embodiment of the present invention, when the sensing unit 100 of the robot 1000 identifies an object that is not recorded on the map 210 , location information and sensing of the object sensed in the moving object storage unit 220 . It is possible to store information about the time of day. 220 of FIG. 4 presents information on sensed moving objects.

220의 항목을 살펴보면, 시리얼 넘버(Serial)과 이동 객체가 센싱된 위치 정보(Xpos, Ypos), 그리고 센싱된 시간(Time)이 저장된다. 또한 해당 위치에서 이동 객체의 센싱이 지속된 기간(Duration)과 이동 객체가 해당 위치에서 센싱되는 간격(Period)에 대한 정보를 함께 저장할 수 있다. 또한, 선택적으로 해당 객체의 이동성(Movability)에 대한 정보를 함께 저장할 수 있다. 실시예에 따라 이동성의 값은 0에서 5 사이의 값을 가지는 것으로 하지만, 본 발명이 이에 한정되는 것은 아니다. Looking at the item 220, the serial number (Serial), the sensed location information (Xpos, Ypos) of the moving object, and the sensed time (Time) are stored. In addition, information on a duration (Duration) during which the sensing of the moving object is sensed at the corresponding position and the interval (Period) during which the moving object is sensed at the corresponding position may be stored together. In addition, information on the mobility of the corresponding object may be optionally stored together. According to an embodiment, the mobility value is set to have a value between 0 and 5, but the present invention is not limited thereto.

예를 들어 시리얼 넘버가 432인 이동 객체는 (2, 4)에서 "2016-12-13 11:35"에 센싱되었으며, "Duration" 필드를 통해 이전에는 센싱되지 않은 객체임을 확인할 수 있다. 또한 시리얼 넘버가 433인 이동 객체는 (10, 17)에서 "2016-12-13 14:35"에 센싱되었으며, 마찬가지로 "Duration" 필드를 통해 이전에는 센싱되지 않은 객체임을 확인할 수 있다. For example, a moving object with serial number 432 was sensed at "2016-12-13 11:35" at (2, 4), and it can be confirmed that it is an object that has not been sensed before through the "Duration" field. Also, the moving object with serial number 433 was sensed at "2016-12-13 14:35" at (10, 17), and it can be confirmed that it is an object that has not been sensed before through the "Duration" field as well.

예를 들어, 시리얼 넘버가 434인 이동 객체는 (16, 15)에서 "2016-12-13 16:24"에 센싱되었으며, "Duration" 필드를 통해 12시간 53분 전부터 센싱이 지속된 객체임을 확인할 수 있다. 센싱의 지속 여부는 해당 로봇(1000)이 동일한 위치를 상이한 시간에 이동하면서 센싱한 정보에 토대를 두어 산출될 수도 있다. 또한 다른 실시예에 의하면, 다른 로봇이 제공하는 정보를 통신부(500)가 수신하여 업데이트할 수도 있다. For example, a moving object with serial number 434 was sensed at "2016-12-13 16:24" at (16, 15), and through the "Duration" field, it is confirmed that it is an object that has been sensed since 12 hours and 53 minutes. can Whether the sensing continues or not may be calculated based on information sensed while the corresponding robot 1000 moves to the same location at different times. Also, according to another embodiment, the communication unit 500 may receive and update information provided by another robot.

전술한 구성에 따라, 로봇(1000)의 각 구성요소들을 이용하여 동적으로 움직이는 장애물을 판별하여 이러한 장애물을 맵에서 고정 객체와 구분하여 판단하는 과정에 대해 살펴본다.According to the above-described configuration, a process of determining dynamically moving obstacles by using each component of the robot 1000 to distinguish these obstacles from fixed objects on a map will be described.

도 5는 본 발명의 일 실시예에 의한 로봇의 제어부가 맵과 상이한 이동 객체를 센싱하는 과정을 보여주는 도면이다. 5 is a diagram illustrating a process in which a controller of a robot senses a moving object different from a map according to an embodiment of the present invention.

먼저 로봇의 센싱부(100)가 로봇의 외부에 배치된 제1객체를 센싱한다(S510). 센싱부(100)가 외부의 제1객체를 센싱하는 방식으로는 라이다 센서를 구성하는 레이저 송신부(110)가 레이저 신호를 송신한 후, 레이저 수신부(120)에서 수신된 신호를 센싱 데이터 분석부(130)가 분석한 결과를 포함한다. First, the sensing unit 100 of the robot senses a first object disposed outside the robot (S510). In a manner in which the sensing unit 100 senses the external first object, the laser transmitter 110 constituting the lidar sensor transmits a laser signal, and then the signal received from the laser receiver 120 is analyzed by the sensing data analysis unit. (130) includes the analysis results.

이후 제어부(900)는 센싱된 제1객체의 이동성을 산출한다(S520). 이동성은 센싱된 객체가 어떠한 이동성을 가지는 지를 확인하는 것을 의미한다. 예를 들어, 벽이나 유리와 같은 고정된 객체는 아니지만, 한번 설치된 후 일정 기간 계속 유지되는 휴지통 혹은 안내표지판 등은 한번 센싱된 이후 계속 센싱될 경우 이의 이동성은 낮아지며 고정 객체에 준하여 고정될 수 있다. 이동성의 실시예는 해당 객체가 해당 위치에 존재하며 센싱된 시간을 기준으로 산출될 수 있다. 예를 들어, 고정된 객체로 판단할 수 있는 기간이 하루(24시간)인 경우, 24시간에 가까울수록 이동성이 낮을 수 있다. Thereafter, the controller 900 calculates the sensed mobility of the first object ( S520 ). Mobility means checking what kind of mobility the sensed object has. For example, although it is not a fixed object such as a wall or glass, a trash bin or a guide sign that is maintained for a certain period after being installed once is sensed once and then continues to be sensed, its mobility is lowered and can be fixed according to a fixed object. An embodiment of mobility may be calculated based on a time sensed when a corresponding object exists at a corresponding location. For example, when a period that can be determined as a fixed object is one day (24 hours), the closer to 24 hours, the lower the mobility may be.

이후, 로봇의 제어부(900)가 산출한 제1객체의 이동성이 미리 설정된 기준보다 낮은 경우(S530), 이는 이동할 가능성이 낮은 객체이므로, 향후 로봇이 이동할 때, 고정 객체에 준하여 판단할 수 있도록 제1객체의 센싱된 정보와 센싱한 시간 정보를 이용하여 맵에 고정 객체로 저장한다(S540). 다만, 이동성을 가지고 있는 경우, 다른 고정 객체와 구별을 둘 수 있다. 예를 들어, 도 3에서 살펴본 맵에 검은색 컬러로 표시하지 않고, 회색으로 표시하는 것과 같이 완전한 고정된 구조물과는 구분하여 저장할 수 있다.Thereafter, when the mobility of the first object calculated by the robot controller 900 is lower than the preset reference (S530), it is an object with a low probability of moving, so that when the robot moves in the future, the first object can be determined based on the fixed object. Using the sensed information of one object and the sensed time information, it is stored as a fixed object in the map (S540). However, if it has mobility, it can be distinguished from other fixed objects. For example, the map shown in FIG. 3 may not be displayed in black color, but may be stored separately from a completely fixed structure, such as displayed in gray.

한편, S530에서 제1객체의 이동성이 미리 설정된 기준 보다 높거나 같은 경우, 제1객체의 센싱된 정보 및 센싱한 시간 정보를 이동 객체 저장부(도 4의 220)에 저장할 수 있다. Meanwhile, when the mobility of the first object is higher than or equal to the preset reference in S530, the sensed information of the first object and the sensed time information may be stored in the moving object storage unit 220 of FIG. 4 .

또한, 센싱된 정보에는 위치 정보가 포함될 수 있다. 센싱된 정보에서 위치는 로봇의 현재 위치와 센싱된 객체와의 거리 또는 방향 정보를 이용할 수 있다. 로봇의 현재 위치는 맵(210)과 이동부(300)의 이동 결과를 반영하여 맵(210) 내에 로봇의 위치를 확인할 수 있다. 다른 실시예로 로봇은 현재의 위치를 외부로부터 정확하게 포지셔닝 받을 수 있다. Also, the sensed information may include location information. For the position in the sensed information, distance or direction information between the current position of the robot and the sensed object may be used. The current position of the robot may be confirmed in the map 210 by reflecting the result of movement of the map 210 and the moving unit 300 . In another embodiment, the robot may receive the current position accurately positioned from the outside.

도 6은 본 발명의 일 실시예에 의한 센싱부가 외부의 객체를 시간 간격을 두고 센싱하는 과정을 보여주는 도면이다. 본 발명의 실시예에 의한 센싱부(100)는 센싱한 객체가 이동하는 장애물인지, 아니면 고정 객체인지를 확인한다. 여기서 센싱한 객체가 이동하는 장애물인 경우, 예를 들어 사람 혹은 수하물인 경우 한 장소에 머물기보다는 이동할 가능성이 높다. 6 is a diagram illustrating a process in which a sensing unit senses an external object at a time interval according to an embodiment of the present invention. The sensing unit 100 according to an embodiment of the present invention checks whether the sensed object is a moving obstacle or a fixed object. In the case where the sensed object is a moving obstacle, for example, a person or luggage, it is highly likely to move rather than stay in one place.

본 발명의 일 실시예에 의한 로봇(1000)이 청소 기능 혹은 각 공간을 탐지하는 탐지 기능을 제공하는 경우, 전술한 장애물이 이동한 뒤에 해당 공간으로 진입하여 소정의 기능을 수행하는 것이 필요하다. 따라서, 본 명세서의 센싱부(100)는 외부의 객체가 센싱된 경우, 이를 바로 제어부(900)에 통지하여 이동 객체로 확인하는 것 보다는 해당 객체가 일정 시간 지난 후에도 센싱되는지 확인한 후, 계속 센싱될 경우에 이를 제어부(900)에게 통지할 수 있다. When the robot 1000 according to an embodiment of the present invention provides a cleaning function or a detection function for detecting each space, it is necessary to enter the space after the aforementioned obstacle moves and perform a predetermined function. Therefore, the sensing unit 100 of the present specification, when an external object is sensed, notifies the control unit 900 immediately and confirms whether the object is sensed even after a certain period of time has elapsed, rather than confirming it as a moving object, and then continues to be sensed. In this case, this may be notified to the controller 900 .

즉, 센싱부(100)는 짧은 시간 감지된 후 다시 감지되지 않는 외부의 제1객체에 대해서는 로봇의 제어부(900)에게 통지하지 않도록 구성될 수 있다. 이는 유동 인구가 많은 공간에서는 지속적으로 제1객체가 센싱이 된 후 다시 사라지는 현상이 발생할 수 있다. 따라서 센싱부(100)는 이러한 유동 인구의 움직임에 맞추어 제1객체가 센싱되어도 미리 설정된 시간인 Sensing_Period_Time(0.1초 혹은 1초 등)이 지난 후 다시 제1객체의 센싱을 시도하여 제1객체가 Sensing_Period_Time 보다 오랜 시간 존재하는 것으로 확인될 경우에만 로봇의 제어부(900)에게 통지할 수 있다. 이를 위해, 제어부(900)는 센싱부(100)에게 맵 저장부(200)의 맵 정보에 기반하여 일정 범위 내에 고정 객체가 없다는 정보를 제공할 수 있다. That is, the sensing unit 100 may be configured not to notify the controller 900 of the robot about the first external object that is not sensed again after being sensed for a short time. This may cause a phenomenon in which the first object is continuously sensed and then disappears again in a space with a large floating population. Therefore, the sensing unit 100 attempts to sense the first object again after a preset time Sensing_Period_Time (0.1 second or 1 second, etc.) has elapsed even if the first object is sensed according to the movement of the floating population, and the first object detects the Sensing_Period_Time It is possible to notify the controller 900 of the robot only when it is confirmed that it exists for a longer period of time. To this end, the control unit 900 may provide the sensing unit 100 with information that there is no fixed object within a predetermined range based on the map information of the map storage unit 200 .

전술한 Sensing_Period_Time은 미리 설정될 수도 있고, 로봇(1000)이 주행하는 시간의 특성에 따라 자동으로 변경될 수 있다. 예를 들어, 유동인구가 매우 많은 시간에는 사람들이 이동한 뒤 다시 그 위치에 새로운 사람들이 움직이는 경우가 있으므로, 이 경우에는 Sensing_Period_Time을 길게 설정할 수 있다. 또한, 유동 인구가 적은 시간에는 이동하는 사람들이 많지 않으므로, 특정 위치에 사람들이 지속하여 대기할 가능성이 많지 않으므로, Sensing_Period_Time를 짧게 설정할 수 있다. The aforementioned Sensing_Period_Time may be set in advance or may be automatically changed according to the characteristics of the time the robot 1000 travels. For example, when the floating population is very high, people may move and then new people may move to the same location again. In this case, Sensing_Period_Time can be set longer. In addition, since there are not many people who move during the time when the floating population is small, there is not much possibility that people are constantly waiting in a specific location, so the Sensing_Period_Time can be set short.

혹은 전술한 바와 달리 유동인구의 증가로 인해 센싱된 객체가 끊임없이 존재할 수 있으므로, Sensing_Period_Time을 오히려 짧게 설정하여 이동 객체인지 여부를 확인할 수 있다. Alternatively, unlike the above, since a sensed object may constantly exist due to an increase in the floating population, it is possible to check whether the object is a moving object by setting the Sensing_Period_Time to be rather short.

전술한 과정을 보다 상세히 살펴본다. 제어부(900)는 센싱부(100)에게 센싱 가능 범위 내의 고정 객체의 정보를 제공한다(S501). 예를 들어, 센싱부(100)가 센싱할 수 있는 거리가 5미터인 경우, 5미터 이내에 고정 객체가 없다는 정보, 혹은 5미터 이내에서 좌측 3미터 지점에 고정 객체가 있다는 정보 등이 제공되는 정보에 포함된다. 이 정보를 이용하면 센싱부(100)는 외부의 객체가 센싱될 경우 고정 객체로 판단되면 고정 객체로 바로 제어부(900)에게 통지할 수 있다. 그리고 고정 객체가 아닌 이동 객체로 판단되면 이동 객체에 대해 도 6과 같이 다시 센싱할 수 있다. The above-described process will be described in more detail. The control unit 900 provides the sensing unit 100 with information on a fixed object within a senseable range ( S501 ). For example, when the sensing unit 100 senses a distance of 5 meters, information that there is no fixed object within 5 meters or information that there is a fixed object at a point 3 meters on the left within 5 meters is provided. included in Using this information, when an external object is sensed and it is determined that the object is a fixed object, the sensing unit 100 may immediately notify the controller 900 as a fixed object. And if it is determined that the moving object is not a fixed object, the moving object may be sensed again as shown in FIG. 6 .

센싱부(100)는 제1객체가 센싱된 경우(S502), 미리 설정된 시간인 Sensing_Period_Time 이후 동일 위치에 대해 다시 센싱한다(S503). 다시 센싱해도 제1객체가 센싱되면(S504), 제1객체가 지속하여 센싱된 것으로 판단하고, 센싱부(100)는 제어부(900)에게 제1객체의 센싱된 정보를 제공한다(S505). When the first object is sensed (S502), the sensing unit 100 senses the same position again after Sensing_Period_Time, which is a preset time (S503). If the first object is sensed even after sensing again (S504), it is determined that the first object has been continuously sensed, and the sensing unit 100 provides the sensed information of the first object to the controller 900 (S505).

여기서 만약 특정한 위치에 사람 A가 이동하고 그 뒤를 사람 B가 이동하는 과정에서 센싱부(100)가 사람 A 및 사람 B를 연달아 센싱하여 제1객체가 존재하는 것으로 판단할 수 있다. 즉 도 6에서 센싱부(100)가 S502에서 센싱한 제1객체가 반드시 센싱부(100)가 S505에서 센싱한 제1객체와 동일할 필요는 없다. Here, if person A moves to a specific location and person B moves thereafter, the sensing unit 100 may sequentially sense person A and person B to determine that the first object exists. That is, in FIG. 6 , the first object sensed by the sensing unit 100 at S502 is not necessarily the same as the first object sensed by the sensing unit 100 at S505 .

도 6의 실시예에서, 센서의 종류에 따라 로봇은 이동하면서 도 6의 과정을 수행할 수 있다. 예를 들어, 라이다 센서와 같이 센싱하는 거리가 긴 경우, 원거리에서 센싱된 객체가 존재할 경우, 센싱 데이터 분석부(130)가 이에 대한 정보를 저장하고, 진행하면서 다시 센싱한다. 만약 진행 방향으로 객체가 센싱되었고, 이동 하는 과정에서 해당 객체가 센싱되지 않으면 센싱 데이터 분석부(130)가 이를 삭제하고 제어부(900)에게 통지하지 않는다. In the embodiment of FIG. 6 , depending on the type of sensor, the robot may perform the process of FIG. 6 while moving. For example, when the sensing distance is long like a lidar sensor, and when there is an object sensed from a long distance, the sensing data analysis unit 130 stores the information and senses it again while proceeding. If an object is sensed in the moving direction and the corresponding object is not sensed during the movement, the sensing data analysis unit 130 deletes it and does not notify the control unit 900 .

반면, 진행 방향으로 센싱된 객체가 계속 센싱될 경우, 이에 대해서는 제어부(900)에게 통지한다. On the other hand, when the sensed object in the moving direction is continuously sensed, the controller 900 is notified about this.

이를 위해 센싱 데이터 분석부(130)는 일차로 센싱된 객체와 이동 후에 센싱된 객체에 대한 비교를 수행할 수 있다. To this end, the sensing data analysis unit 130 may compare the object sensed primarily with the object sensed after movement.

예를 들어, 진행 방향에 10미터 앞에 객체가 센싱되면, 10미터 앞에 객체가 존재한다는 정보를 센싱 데이터 분석부(130)가 저장한다. 그리고 5미터를 진행한 후 여전히 5미터 앞에 객체가 센싱되고, 다시 1미터를 진행한 후에 1미터 앞에 객체가 센싱된다면, 이에 대해서 제어부(900)에 진행 방향 1미터 앞에 객체가 센싱되었다는 정보를 제공한다. For example, when an object is sensed 10 meters ahead in the direction of travel, the sensing data analysis unit 130 stores information indicating that the object exists 10 meters ahead. And if an object is still sensed 5 meters ahead after proceeding 5 meters, and an object is sensed 1 meter ahead after proceeding 1 meter again, information that the object is sensed 1 meter ahead in the direction of travel is provided to the controller 900 do.

한편, 진행 방향이 북쪽이며 북동쪽으로 5미터 앞에 객체가 센싱되면 이에 대한 정보를 센싱 데이터 분석부(130)가 저장한다. 이후 2.23미터를 북쪽으로 진행한 후 동쪽 2.23미터에 객체가 센싱되면 앞서 센싱되었던 객체가 그대로 배치되었음을 의미하므로, 이에 대해서 제어부(900)에게 진행 방향으로 동쪽 방향 2.23미터에 객체가 센싱되었다는 정보를 제공한다. On the other hand, when the moving direction is north and an object is sensed 5 meters in front of the northeast, the sensing data analysis unit 130 stores this information. After moving 2.23 meters north, if an object is sensed at 2.23 meters east, it means that the previously sensed object is placed as it is. In this regard, information is provided to the control unit 900 that the object is sensed at 2.23 meters east in the moving direction. do.

전술한 실시예를 구현하기 위해 센싱 데이터 분석부(130)는 도 4에서 살펴본 이동 객체 저장부(220)를 추가로 보유할 수 있다. In order to implement the above-described embodiment, the sensing data analysis unit 130 may additionally retain the moving object storage unit 220 illustrated in FIG. 4 .

도 7 및 도 8은 본 발명의 일 실시예에 의한, 센싱된 객체의 이동성을 산출하는 과정을 보여주는 도면이다. 도 5의 S520의 실시예를 보여준다. 7 and 8 are diagrams illustrating a process of calculating the mobility of a sensed object according to an embodiment of the present invention. 5 shows an embodiment of S520.

제어부(900)는 맵 저장부(200) 내에 고정 객체와 같이 고정된 구조물에 관한 도 7의 맵(210)과 센싱된 객체를 비교할 수 있다. 센싱부(100)에서 제공하는 센싱된 제1객체(710)가 맵(210) 내의 고정 객체와 비교하여 일치하는지를 확인한다. 만약, 제1객체(710)에 인접하게 고정 객체가 존재한다면, 이를 고정 객체로 판단할 수 있다. 그러나, 로봇의 제어부(900)가 맵의 고정 객체와 센싱된 제1객체의 위치가 일치하지 않는 경우 이동성을 높일 수 있다. The control unit 900 may compare the sensed object with the map 210 of FIG. 7 regarding a fixed structure such as a fixed object in the map storage unit 200 . It is checked whether the sensed first object 710 provided by the sensing unit 100 matches the fixed object in the map 210 . If a fixed object exists adjacent to the first object 710 , it may be determined as a fixed object. However, when the position of the fixed object on the map and the position of the sensed first object do not match, the controller 900 of the robot may increase mobility.

도 8은 객체의 이동성의 값이 높아져서 5의 값을 가지도록 이동 객체 저장부(220a)에 710a와 같이 저장된 실시예를 보여준다. 만약, 로봇의 제어부(900)가 맵의 고정 객체와 센싱된 제1객체의 위치가 완전히 일치하지는 않으나 일부 중첩될 경우, 맵이 가지는 오차 또는 로봇의 이동 과정에서 발생하는 기계적인 오차로 인해 고정 객체를 이동 객체로 판단할 가능성도 있으므로, 이 경우에는 이동성의 값을 3 또는 4와 같이 낮게 설정한다. 그리고 다음 주행 또는 다른 이동에서 해당 객체가 여전히 센싱되면서도 이동이 발생하지 않으면 고정 객체로 판단하여 맵을 수정할 수 있다. 이는 초기에 로봇이 맵을 생성하는 과정에서 발생한 오차를 수정하는 기능을 포함한다. 8 shows an embodiment in which the value of the object's mobility is increased and stored as 710a in the moving object storage unit 220a to have a value of 5. As shown in FIG. If the control unit 900 of the robot does not completely match the positions of the fixed object on the map and the sensed first object, but partially overlaps, the fixed object may be caused by an error in the map or a mechanical error occurring during the movement of the robot. Since there is a possibility of judging as a moving object, in this case, the value of mobility is set as low as 3 or 4. In the next driving or other movement, if the corresponding object is still sensed and no movement occurs, it is determined as a fixed object and the map can be modified. This includes a function to correct errors that occurred in the process of initially generating the map by the robot.

한편, 제어부(900)는 이전에 이동 객체 저장부에 저장된 위치에서 다시 객체(720)가 센싱되면 이에 대해서도 이동성을 산출할 수 있다. 즉, 720은 앞서 도 4의 이동 객체 저장부(220)의 시리얼 번호 433인 객체와 동일한 위치에서 센싱된 객체이다. 즉, 제어부가 이동 객체 저장부에 제1객체의 위치에 대응하는 제2객체의 저장 여부 및 저장 기간 또는 저장 간격을 확인하여, 확인된 정보에 따라 이동성을 변화시킬 수 있다. 도 8에서720a는 SensingTime과 Duration이 변화하였으며, 또한 이동성을 나타내는 Movability의 값이 5에서 2로 변화하였음을 확인할 수 있다. 만약, 도 7의 720으로 지시되는 객체가 다시 센싱된다면, 이의 이동성인 Movability는 1이 되며, 고정된 객체로 파악하여 맵을 업데이트 할 수 있다. 고정된 객체로 판단하는 기준은 시스템 및 로봇의 동작 환경에 따라 다양하게 구성할 수 있다. On the other hand, when the object 720 is sensed again from a location previously stored in the moving object storage unit, the controller 900 may calculate the mobility even for this. That is, 720 is an object sensed at the same location as the object of serial number 433 of the moving object storage 220 of FIG. 4 . That is, the controller may check whether the second object corresponding to the location of the first object is stored in the moving object storage unit and the storage period or storage interval, and change the mobility according to the checked information. In FIG. 8, 720a, it can be seen that SensingTime and Duration are changed, and the value of Movability indicating mobility is changed from 5 to 2. If the object indicated by 720 of FIG. 7 is sensed again, its mobility, ie, mobility, becomes 1, and the map may be updated by recognizing it as a fixed object. The criterion for judging a fixed object can be variously configured according to the operating environment of the system and robot.

전술한 실시예를 적용하면, 라이다 센서와 같이 레이저 거리센서로 들어오는 모든 정보를 맵에 바로 등록시키지 않고 센싱된 객체가 정적인 장애물인지, 아니면 이동하는 장애물인지를 지속적으로 판단하여, 정적인 장애물로 판단되는 정보만 맵에 등록할 수 있다. 이는 레이저 센서로부터 획득한 특정 사물의 거리정보, 각도정보는 로봇의 현재 위치 정보로 계산하면 전체 맵 좌표계의 x,y를 추출할 수 있으므로, 특정 사물의 x, y 좌표 값을 도 4 및 도 8에서 살펴본 이동 객체 저장부(220, 220a)에 저장하여, 일정 시간동안 동일한 위치를 나타내면 정적장애물로 판단하여 맵에 등록하고, 좌표가 변하면 동적장애물로 판단하여 맵에 등록하지 않을 수 있다. If the above-described embodiment is applied, it is not directly registered on the map all information coming in from the laser distance sensor, such as a lidar sensor, but it is continuously determined whether the sensed object is a static obstacle or a moving obstacle, Only information that is determined to be can be registered on the map. This is because the x and y of the entire map coordinate system can be extracted when the distance information and angle information of a specific object obtained from the laser sensor are calculated as the robot's current position information, so the x and y coordinate values of the specific object are shown in FIGS. 4 and 8 It is stored in the moving object storage units 220 and 220a as described above, and if the same location is shown for a certain period of time, it is determined as a static obstacle and registered on the map. If the coordinates change, it is determined as a dynamic obstacle and not registered on the map.

또한, 맵에 정적장애물로 등록된 경우라도 일정 시간이 지난 후 다시 해당 지점을 스캔하였을때 해당 장애물이 없는 경우 동적장애물로 판단하고 기존 맵에서 제거할 수 있다. 예를 들어, 전술한 720으로 지시되는 객체를 맵에 정적, 고정 객체로 저장하여도 이동 객체 저장부(220a)에도 저장된 상태를 유지한 후, 해당 객체(720)에 대해 로봇이 주행시 센싱을 시도하여 만약 해당 객체(720)가 센싱되지 않으면, 맵(210)에서도 삭제하고 이동 객체 저장부(220a)에서도 삭제할 수 있다. In addition, even if it is registered as a static obstacle on the map, when the corresponding point is scanned again after a certain period of time, if there is no corresponding obstacle, it is determined as a dynamic obstacle and can be removed from the existing map. For example, even if the object indicated by 720 is stored as a static or fixed object on the map, the stored state is maintained in the moving object storage unit 220a, and then the robot attempts to sense the object 720 while driving. Therefore, if the corresponding object 720 is not sensed, it can be deleted from the map 210 and also from the moving object storage 220a.

이는, 객체(720)가 확인된 좌표(10, 17)에서 일정시간 동안 동일한 위치를 나타낼 때 정적인 장애물로 판단하여 고정 객체로 맵에 저장하더라도, 해당 위치의 객체(720)가 이동할 경우 이를 맵에 그대로 적용하여 맵에서 삭제할 수 있도록 하기 위함이다. 즉, 완전히 고정된 구조물(벽, 유리, 기둥) 등과 같이 제거가 불가능한 고정 객체는 맵에만 저장하지만, 어느 정도 이동 가능하거나 제거가 가능한 객체들(안내 데스크, 표지판, 휴지통 등)은 이동 객체 저장부(220a)에 저장된 상태를 유지하면 이후 전술한 제거 가능한 객체들이 이동하거나 제거되는 경우 이를 쉽게 반영할 수 있다. In this case, even if the object 720 is determined as a static obstacle and stored as a fixed object on the map when it indicates the same position for a certain period of time at the confirmed coordinates (10, 17), when the object 720 at the corresponding position moves, it is a map This is so that it can be applied as it is and deleted from the map. That is, non-removable fixed objects such as completely fixed structures (walls, glass, columns) are stored only in the map, but objects that can be moved or removed to some extent (information desk, sign, trash can, etc.) are stored in the moving object storage unit. If the state stored in 220a is maintained, it can be easily reflected when the above-described removable objects are moved or removed later.

예를 들어 사람이 일정 시간 동안 특정 지점에서 움직이지 않을 수 있거나 혹은 해당 위치에 항상 사람들이 오가는 경우, 또는 사물이 놓여진 상태가 지속될 수 있기 때문에 정적 장애물로 판단하여 고정 객체로 맵 상에 등록할 가능성이 존재하지만, 이런 경우에는 특정 시간 후에 해당 지점을 다시 스캔하였을 때 장애물이 없다면 기존 맵에서 해당 장애물을 제거 할 수 있다. 이를 위해 고정 객체로 맵에 등록된 경우라도 이동 객체 저장부에 해당 객체의 정보를 저장할 수 있다. 예를 들어 이동 객체 저장부에 이동성이 0 혹은 1인 경우에는 맵에 저장시키되, 다시 해당 위치를 센싱하여 객체가 존재하지 않는다면, 맵에서 삭제할 수 있다. For example, if a person may not move at a specific point for a certain period of time, if there are always people coming and going at that location, or because an object may remain in a state where it is placed, it may be judged as a static obstacle and registered as a fixed object on the map. However, in this case, if there are no obstacles when the point is scanned again after a specific time, the obstacle can be removed from the existing map. For this purpose, even if it is registered as a fixed object in the map, information of the corresponding object may be stored in the moving object storage unit. For example, if the mobility is 0 or 1 in the moving object storage unit, it is stored in the map, but if the object does not exist by sensing the position again, it can be deleted from the map.

또한, 이동 객체 저장부에 저장된 내용은 통신부(500)를 통하여 다른 로봇과 정보를 교환할 수도 있다. Also, the contents stored in the moving object storage unit may exchange information with other robots through the communication unit 500 .

도 9는 본 발명의 일 실시예에 의한 다수의 로봇 사이에, 혹은 로봇과 서버 사이에 이동 객체에 대한 정보를 교환하는 과정을 보여주는 도면이다. 9 is a diagram illustrating a process of exchanging information on a moving object between a plurality of robots or between a robot and a server according to an embodiment of the present invention.

서버(2000)는 다수의 로봇들(1000a, ..., 1000z)에게 이동 객체에 대한 정보를 다운로드(S901, S902) 송신한다. 로봇들(1000a, ..., 1000z)은 수신된 이동 객체에 대한 정보를 이동 객체 저장부(220)에 업데이트한다. 서버(2000)는 다수의 로봇들(1000a, ..., 1000z)이 전송한 이동 객체에 대한 정보를 분석하여 동일한 위치에서 중복하여 센싱된 정보는 새로이 업데이트 하여 하나의 이동 객체에 대한 정보로 저장할 수 있다. 또한, 특정 위치에 반복하여 등장하고 사라지는 객체가 있는지에 대한 히스토리 정보를 누적하여 이동 객체의 이동성에 대한 정보를 수정하여 다운로드 송신을 할 수 있다.The server 2000 downloads (S901, S902) information on the moving object to the plurality of robots 1000a, ..., 1000z. The robots 1000a, ..., 1000z update the received moving object information to the moving object storage 220 . The server 2000 analyzes information on a moving object transmitted by a plurality of robots 1000a, ..., 1000z, and updates the duplicated sensed information at the same location to store it as information on one moving object. can In addition, by accumulating history information on whether there is an object repeatedly appearing and disappearing at a specific location, information on the mobility of the moving object may be corrected, and download transmission may be performed.

이후 로봇들(1000a, ..., 1000z)은 주행 과정에서 이동 객체 정보를 업데이트한다(S910, S920). 일 실시예로 각 로봇이 보유하는 이동 객체 저장부의 정보를 업데이트하는 것을 포함한다. 또한, 로봇 중에서 인접하여 위치하는 로봇 사이에서는 새로이 습득한 이동 객체에 대한 정보를 쉐어링할 수 있다(S915). 이때 이동 객체에 대한 정보의 쉐어링은 일정한 범위 내에 근접해있는 로봇들에게만 한정하여 제공할 수 있다. 또는, 로봇 이후에 해당 공간으로 이동하는 것이 예정된 로봇에게 제공할 수도 있다. Thereafter, the robots 1000a, ..., 1000z update the moving object information in the driving process (S910, S920). In one embodiment, it includes updating information of a moving object storage unit held by each robot. In addition, information on a newly acquired moving object may be shared among robots located adjacently among robots (S915). In this case, the sharing of information on the moving object can be provided only to robots that are close to each other within a certain range. Alternatively, it may be provided to a robot that is scheduled to move to the corresponding space after the robot.

그리고 각각의 로봇들(1000a, ..., 1000z)은 주행 중 취득한 이동 객체 정보를 서버로 업로드(S911, S921) 송신한다. And, each of the robots 1000a, ..., 1000z uploads (S911, S921) the moving object information acquired while driving to the server and transmits them.

서버(2000)는 수신한 이동 객체 정보를 업데이트 하며(S930) 이 과정에서 중복된 정보를 하나의 객체에 대한 정보로 정리하거나, 혹은 이동성 값의 변동이 필요한 경우 등을 조정하여 새로이 이동 객체 정보를 다운로드한다(S931, S932). 이동성 값의 변동이란, 다수의 로봇들이 상이한 시간에 특정 위치에서 객체가 존재하는 것으로 누적하여 센싱하고 이에 대한 정보를 업로드한 경우, 이 정보를 토대로 해당 위치의 객체의 이동성 값을 낮게 하거나 고정 맵에 추가하는 방안을 의미한다. 따라서, 이동 객체 정보 다운로드 과정에서는 맵에 대한 변동 정보도 함께 다운로드 될 수 있다.The server 2000 updates the received moving object information (S930), and in this process, the duplicated information is arranged as information about one object, or when a change in the mobility value is necessary, the moving object information is newly updated. Download (S931, S932). The change in the mobility value means that when multiple robots accumulate and sense the existence of an object at a specific location at different times and upload information about it, the mobility value of the object at the location is lowered based on this information, or it is stored on a fixed map. means to add. Accordingly, in the moving object information download process, change information on the map may also be downloaded.

도 9와 같이, 혹은 앞서 살펴본 로봇의 제어부(900) 및 맵 저장부(200)를 이용하면, 특정 위치에서 객체가 주기성을 가지고 위치하는 것을 확인할 수 있다. 예를 들어, 특정한 위치에 객체가 센싱되는 시점을 누적하여 저장할 경우 해당 위치에 주기를 가지고 객체가 배치되는 룰을 생성할 수 있으며, 이를 기반으로 로봇(1000)은 해당 위치에서 객체가 배치되지 않는 시점에 이동하여 기능을 수행할 수 있다. 또한, 외부로부터 특정 위치에 객체가 주기성을 가지고 배치된다는 정보를 제공받고, 이를 토대로 로봇(1000)이 이동할 수 있다. As shown in FIG. 9 or by using the control unit 900 and the map storage unit 200 of the robot described above, it can be confirmed that the object is located in a specific position with periodicity. For example, when accumulating and storing the time points at which an object is sensed at a specific location, a rule in which an object is disposed with a cycle at the location may be created, and based on this, the robot 1000 will prevent the object from being disposed at the location. You can move to a point in time and perform a function. In addition, information that an object is disposed at a specific location with periodicity is provided from the outside, and the robot 1000 can move based on this.

도 10은 본 발명의 일 실시예에 의한 이동 객체 저장부에 이동 객체의 주기성을 저장하는 도면이다. 10 is a diagram for storing periodicity of a moving object in a moving object storage unit according to an embodiment of the present invention.

이동 객체 저장부에 이동 객체의 주기성을 저장하기 위해, 본 발명의 일 실시예에서는 맵 저장부(200) 내에 추가적으로 히스토리 저장부(230)를 더 포함할 수 있다. 히스토리 저장부(230)는 특정 위치에 객체가 센싱되는 시간을 저장하며, 이는 해당 로봇뿐만 아니라 다른 로봇이 센싱한 시간 정보도 함께 저장할 수 있다. 도 9의 과정에서 이동 객체 정보를 다운로드 받거나 쉐어링하는 다양한 과정에서 센싱된 객체의 정보를 저장할 수 있다.In order to store the periodicity of the moving object in the moving object storage unit, in an embodiment of the present invention, the map storage unit 200 may further include a history storage unit 230 . The history storage unit 230 stores the time when the object is sensed at a specific location, which may store time information sensed by not only the corresponding robot but also other robots. In the process of FIG. 9 , information on objects sensed in various processes of downloading or sharing moving object information may be stored.

히스토리 저장부(230)에 저장된 정보를 살펴보면, (3, 5) 위치에 객체가 센싱된 위치가 누적하여 저장되어 있다. 저장된 시간적 패턴을 살펴보면, 매주 화요일 오전 10시 15분에서 13시 15분까지 객체가 존재하는 것으로 센싱되었다. 따라서, (3, 5) 위치에는 매주 화요일 오전 10시 15분에서 13시 15분(혹은 이 시간 전후로 시간을 더 추가하여) 사이에 이동 객체가 배치되므로, 이 시간을 피해 해당 위치에서 로봇(1000)이 기능을 수행할 수 있도록 한다. 230의 내용을 반영한 이동 객체 저장부(220b)의 실시예를 살펴보면, 730과 같이, 저장될 수 있다. 이후, (3, 5)에서 객체가 센싱되지 않으면 일정 기간동안 센싱되지 않는 정보를 확인한 뒤 이동 객체 저장부(220b)에서 제거할 수 있다.Looking at the information stored in the history storage unit 230, positions where objects are sensed are accumulated and stored at positions (3, 5). Looking at the stored temporal pattern, it was sensed that the object was present every Tuesday from 10:15 am to 13:15 am. Therefore, at position (3, 5) a moving object is placed every Tuesday between 10:15 AM and 13:15 AM (or more time before or after this time), so avoid this time and move the robot (1000) at that location. ) to perform this function. Looking at the embodiment of the moving object storage 220b reflecting the contents of 230, it may be stored as shown in 730. Thereafter, if the object is not sensed in (3, 5), information that is not sensed for a predetermined period may be checked and then removed from the moving object storage unit 220b.

도 10의 과정은 로봇(1000)이 진행할 수도 있고, 앞서 살펴본 서버(2000)에서 진행할 수 있다. 서버(2000)는 다수의 로봇들이 제공하는 정보들을 취합하고, 로봇이 센싱한 값의 오차를 보정하여 특정 위치의 주기성을 확인하고, 이를 다시 다수의 로봇들에게 제공할 수 있다. The process of FIG. 10 may be performed by the robot 1000 or may be performed by the server 2000 described above. The server 2000 may collect information provided by a plurality of robots, correct an error in a value sensed by the robot, confirm the periodicity of a specific location, and provide it to the plurality of robots again.

도 11은 본 발명의 일 실시예에 의한 로봇의 주행을 제어하는 과정을 보여주는 도면이다. 11 is a view showing a process of controlling the driving of the robot according to an embodiment of the present invention.

로봇의 제어부(900)는 이동을 시작하기 전 또는 이동하는 과정에서 이동 루틴을 생성할 수 있다. 이 경우, 전술한 도 10에서 살펴본 객체의 시간적 주기성(Period)에 대한 정보를 확인하여, 이동 루틴을 생성할 수 있다. 또한, 이동 루틴을 조정하여 객체가 위치하지 않을 것으로 예상되는 시점에 해당 위치로 이동하여 기능을 수행할 수 있다. The control unit 900 of the robot may generate a movement routine before starting movement or in the course of movement. In this case, the movement routine may be generated by checking the information on the temporal periodicity of the object discussed with reference to FIG. 10 . In addition, by adjusting the movement routine, it is possible to perform a function by moving to a corresponding position at a time when the object is not expected to be located.

로봇의 제어부(900)는 로봇의 이동 루틴을 생성한다(S1110). 이 과정에서 제어부(900)는 이동 루틴에 포함된 위치에 객체가 주기적으로 배치되는 것이 예상되는지 확인한다(S1120). 확인 결과 주기적 배치가 예상되는 경우 객체의 시간적 주기성에 따라 객체가 센싱되지 않는 시간 주기를 산출한다. 즉, 객체가 배치되는 시간적 주기성을 이용하여 객체가 센싱되지 않는 시간 주기를 산출한다(S1130). 이후, 제어부(900)는 센싱되지 않는 시간 주기에 맵의 해당 위치로 로봇이 이동하도록 이동 루틴을 생성하고, 이 루틴에 따라 이동하여 기능을 수행하도록(S1135) 제어부가 이동부(300)를 제어할 수 있다.The control unit 900 of the robot creates a movement routine of the robot (S1110). In this process, the control unit 900 checks whether an object is expected to be periodically arranged at a position included in the movement routine (S1120). If periodic arrangement is expected as a result of the check, the time period in which the object is not sensed is calculated according to the temporal periodicity of the object. That is, a time period in which an object is not sensed is calculated using the temporal periodicity in which the object is arranged ( S1130 ). Thereafter, the control unit 900 generates a movement routine so that the robot moves to the corresponding position on the map in a time period that is not sensed, and the control unit controls the movement unit 300 to perform a function by moving according to the routine (S1135). can do.

한편, 객체의 주기적 배치가 예상되지 않는 경우, 생성된 이동 루틴에 따라 이동하여 기능을 수행하도록 제어부가 이동부(300)를 제어할 수 있다. Meanwhile, when the periodic arrangement of the object is not expected, the controller may control the moving unit 300 to move according to the generated movement routine to perform a function.

도 12는 본 발명의 일 실시예에 의한 맵 저장부의 이동 객체가 맵에 표시되는 실시예와 표시되지 않는 실시예를 보여주는 도면이다. 12 is a diagram illustrating an embodiment in which a moving object of the map storage unit is displayed on a map and an embodiment in which the moving object is not displayed according to an embodiment of the present invention.

1210은 고정객체와 이동객체가 모두 표시된 영역이다. 1220은 고정객체만 표시된 영역이다. 1210은 맵(210)과 이동 객체 저장부(220)의 정보를 모두 조합하여 표시한 것이며, 1220은 맵(210)의 정보만을 표시한 것이다. 로봇(1000)은 이동 루틴을 생성하거나, 특정 위치로 이동하는 과정에서 1220의 정보를 이용하여 고정 객체만이 배치된 공간 내에서 특정한 기능을 수행하도록 이동할 수 있다. 그리고 이동 과정에서 새롭게 센싱한 이동 객체에 대한 정보는 누적하여 저장하여, 이동 객체가 고정적으로 배치되는지를 확인하여 맵을 업데이트할 수 있다. 1210 is an area in which both fixed and moving objects are displayed. 1220 is an area where only fixed objects are displayed. Reference numeral 1210 denotes a combination of all information of the map 210 and the moving object storage 220 , and reference numeral 1220 denotes only information on the map 210 . The robot 1000 may move to perform a specific function in a space in which only a fixed object is disposed by using the information of 1220 in the process of generating a movement routine or moving to a specific location. In addition, information on the moving object sensed newly in the moving process may be accumulated and stored, and the map may be updated by checking whether the moving object is fixedly disposed.

도 12의 1220과 같이, 레이저 거리센서로 맵을 작성하거나 업데이트 하는 과정에서 동적장애물을 맵에 등록하지 않고 실제 외벽이나 정지된 사물들만 맵에 등록되도록 하여, 로봇이 정확한 맵 정보를 가지고 주행을 할 수 있다. 또한, 초기에 작성된 맵의 공간에서 특정 사물이 제거된 경우 로봇은 해당 사물이 사라진 것을 감지하여 맵에서 제거하여 맵을 업데이트를 할 수 있다. As shown in 1220 of FIG. 12 , in the process of creating or updating a map with a laser distance sensor, dynamic obstacles are not registered on the map, but only actual external walls or stationary objects are registered on the map, so that the robot can drive with accurate map information. can In addition, when a specific object is removed from the space of the initially created map, the robot can detect that the object has disappeared and remove it from the map to update the map.

이는 앞서 살펴본 이동 객체 저장부에 저장된 객체들이 배치되거나 혹은 제거되는 정보를 이용할 수 있다. This may use information on which objects stored in the above-described moving object storage unit are arranged or removed.

맵 저장부(200)는 맵(210)과 이동 객체 저장부(220)를 분리하여 로봇이 이동할 수 있도록 제어부(900)에게 정보를 제공한다. The map storage unit 200 separates the map 210 and the moving object storage unit 220 and provides information to the controller 900 so that the robot can move.

본 발명의 다른 실시예에 의하면, 하나의 맵 내에 고정 객체와 이동 객체를 모두 저장할 수 있다.According to another embodiment of the present invention, both a fixed object and a moving object may be stored in one map.

도 13은 본 발명의 다른 실시예에 의한 하나의 맵 내에 고정 객체와 이동 객체에 대한 정보를 나타내는 실시예이다. 도 13의 맵(1310)에는 전체 공간을 20x20으로 나누었다. 이 공간에서 벽, 유리와 같은 고정 객체는 1로, 그 외 이동 객체는 2 내지 5의 값을 가지면서 표시된다. 숫자가 높을수록 이동성이 높아 동적으로 이동하거나 곧 제거될 것으로 예측할 수 있다. 13 is an embodiment illustrating information on a fixed object and a moving object in one map according to another embodiment of the present invention. In the map 1310 of FIG. 13 , the entire space is divided by 20×20. In this space, fixed objects such as walls and glass are displayed with a value of 1, and other moving objects are displayed with a value of 2 to 5. The higher the number, the more mobile it can be predicted to move dynamically or to be removed soon.

따라서, 로봇이 이동하는 과정에서 전체 맵(1310)에서 이동성의 값을 기준으로 맵을 재구성할 수 있다. 예를 들어, 맵(1310)에서 이동성의 값이 1 및 2인 객체만 표시하도록 나타내도록 제어부가 제어하면, 로봇은 고정 객체와 준 고정 객체들만을 식별하여 이동할 수 있다. 또한 유동인구가 많은 상황에서는 이동 객체들도 상존하는 것으로 파악하여, 이동성의 값이 5인 객체들까지도 맵에 표시하도록 하여 로봇이 이동할 수 있도록 한다.Accordingly, in the course of the robot moving, the map may be reconstructed based on the mobility value in the entire map 1310 . For example, if the controller controls to display only objects having mobility values 1 and 2 on the map 1310 to be displayed, the robot can identify and move only fixed objects and semi-fixed objects. In addition, in a situation with a large floating population, moving objects are also considered to exist, and even objects with a mobility value of 5 are displayed on the map so that the robot can move.

전술한 실시예들을 적용할 경우, 레이저 센서를 활용하여 로봇이 맵을 작성하거나 업데이트할 경우, 동적 장애물을 제거할 수 있다. 레이저 센서로 감지된 사물의 위치 정보가 일정시간 동안 변경되지 않을 경우 맵에 등록하고, 등록된 사물을 다시 스캔하였을 때 해당 사물이 동일 위치에서 감지되지 않을 경우 해당 사물을 맵에서 제거할 수 있다.When the above-described embodiments are applied, when a robot creates or updates a map by using a laser sensor, a dynamic obstacle can be removed. If the location information of an object detected by the laser sensor does not change for a certain period of time, it is registered on the map, and when the registered object is scanned again, if the object is not detected in the same location, the object can be removed from the map.

또한, 기존에 맵에 표시되지 않은 정적인 구조물이 새로이 배치될 경우, 이러한 구조물이 지속적으로 배치되는지를 확인하여, 일정 기간 이상 고정하여 배치된 경우에는 이를 맵의 고정 객체로 업데이트 할 수 있다. 따라서 동적으로 변동하는 공간의 변화를 이동 객체와 고정 객체로 분리하여 맵을 구성할 수 있도록 하여 로봇이 이동 객체로 인한 기능 실현에 장애가 되지 않도록 한다. 특히, 유동 인구가 많은 공항, 항만, 터미널과 같은 공간에서 유동인구가 있다는 것만으로 해당 공간에 로봇의 진입이 아예 중단된다면, 해당 공간의 청소, 보안을 담당하는 로봇의 기능을 충분히 활용하지 못할 수 있다. 이에, 본 명세서에서는 라이다와 같은 레이저 센서를 이용하여 사물의 배치 상황을 확인하고 이들의 동적인 움직임을 시간상에 기록할 수 있다. In addition, when a static structure not previously displayed on the map is newly placed, it is checked whether such a structure is continuously placed, and when it is fixedly placed for a certain period or longer, it can be updated as a fixed object of the map. Therefore, it is possible to compose a map by separating dynamically changing spatial changes into moving objects and fixed objects, so that the robot does not become an obstacle to realization of functions due to moving objects. In particular, in a space with a large floating population, such as airports, ports, and terminals, if the robot stops entering the space just because there is a floating population, it may not be possible to fully utilize the functions of the robot in charge of cleaning and security of the space. have. Accordingly, in the present specification, by using a laser sensor such as lidar, it is possible to check the arrangement of objects and record their dynamic movements in time.

도 14는 본 발명의 다른 실시예에 의한 센싱부의 구성을 보여주는 도면이다. 14 is a diagram showing the configuration of a sensing unit according to another embodiment of the present invention.

도 14에서 센싱부(100)는 레이저 송신부(110) 및 레이저 수신부(120)를 포함하는 라이다 센서 외에 인체 감지 센서(150)를 추가로 포함할 수 있다. 라이다 센서와 병행하여 적용할 수 있는데, 라이다 센서가 감지한 이동 객체가 사람인 경우, 인체 감지 센서(150)는 사람을 센싱했다는 정보를 센싱 데이터 분석부(130)에게 제공한다. 센싱 데이터 분석부(130)는 센싱한 정보를 제어부(900)에게 제공하는 과정에서 인체가 감지되었다는 정보를 함께 제공하여, 제어부(900)가 해당 이동 객체에 대해 이동성을 항상 5로 설정할 수 있도록 한다. In FIG. 14 , the sensing unit 100 may further include a human body detection sensor 150 in addition to the lidar sensor including the laser transmitting unit 110 and the laser receiving unit 120 . It can be applied in parallel with the lidar sensor. When the moving object detected by the lidar sensor is a human, the human body detection sensor 150 provides information that the human is sensed to the sensing data analysis unit 130 . The sensing data analysis unit 130 provides information indicating that a human body has been detected in the process of providing the sensed information to the control unit 900 so that the control unit 900 can always set the mobility to 5 for the corresponding moving object. .

도 15는 본 발명의 일 실시예에 의한 서버의 구성에 관한 도면이다. 서버(2000)는 중앙에서 로봇들이 생성한 맵 정보와 이동 객체에 대한 정보, 그리고 히스토리를 저장하는 맵 저장부(2200)와 제어부(2900), 통신부(2500)으로 구성된다. 맵(2210)은 고정 객체들에 대한 정보를 저장한다. 로봇들이 이동하며 센싱한 이동 객체들에 대한 정보를 서버(2000)의 통신부(2500)가 수집하여 이동 객체 저장부(2220)에 저장한다. 또한 히스토리 저장부(2230)에는 각 위치를 기준으로 배치되는 객체들의 정보를 누적하여 저장한다. 이를 토대로, 서버(2000)는 로봇들에게 센싱된 객체의 배치가 주기적으로 발생하는지에 대한 정보를 제공할 수 있다. 15 is a diagram illustrating the configuration of a server according to an embodiment of the present invention. The server 2000 includes a map storage unit 2200, a control unit 2900, and a communication unit 2500 that centrally store map information generated by robots, information on moving objects, and a history. The map 2210 stores information about fixed objects. The communication unit 2500 of the server 2000 collects information on moving objects sensed by the robots as they move and stores the information in the moving object storage unit 2220 . In addition, the history storage unit 2230 accumulates and stores information on objects arranged with respect to each location. Based on this, the server 2000 may provide information on whether the arrangement of the sensed object periodically occurs to the robots.

뿐만 아니라, 서버(2000)는 공항, 항만, 터미널 등에서 제공하는 특정 위치의 사물 배치에 대한 정보를 맵(2210) 또는 이동 객체 저장부(2220)에 반영하여 이를 로봇들에게 제공할 수 있다. 예를 들어, 원래는 사물이 배치되지 않는 영역이지만, 새로이 일정 기간동안 안내 데스크가 설치될 경우, 이 지점에 대한 정보를 맵(2210) 또는 이동 객체 저장부(2220)에 저장하여 로봇이 불필요한 센싱을 수행하거나 해당 영역에 재진입을 위해 이동 루틴을 수정하지 않도록 하여 로봇의 이동의 효율성을 높일 수 있다. In addition, the server 2000 may reflect information on the arrangement of objects at a specific location provided by an airport, a port, a terminal, etc. on the map 2210 or the moving object storage unit 2220 and provide it to the robots. For example, in the original area where objects are not placed, when an information desk is newly installed for a certain period of time, information about this point is stored in the map 2210 or the moving object storage unit 2220, so that the robot is unnecessary for sensing. It is possible to increase the efficiency of the robot's movement by not modifying the movement routine for re-entry or to re-enter the area.

또한, 서버(2000)는 룰 저장부(2600)를 추가적으로 포함할 수 있다. 이는 히스토리 저장부(2230)를 이용하여 사물 배치의 주기성을 룰로 만들어 이를 로봇들이 이동시 참고할 수 있도록 한다. 예를 들어, (2, 3)에 매주 화요일에 이동 객체가 배치되며, 이와 동시에 (2, 8)에도 매주 화요일에 이동 객체가 배치되는 것이 확인되며, 이러한 배치의 연관성이 높을 경우 (2, 3) 및 (2, 8) 지역이 커플링되어 이동 객체가 주기성을 가지며 배치된다는 룰을 만들 수 있다. 룰은 일종의 히스토리 저장부(2230)에서 산출되는 사물 배치의 주기성에 기반하여 생성되는 규칙을 포함한다.Also, the server 2000 may additionally include a rule storage unit 2600 . This makes the periodicity of the arrangement of objects a rule using the history storage unit 2230 so that the robots can refer to it when moving. For example, it is confirmed that a moving object is placed every Tuesday at (2, 3), and at the same time that a moving object is placed every Tuesday at (2, 8). ) and (2, 8) regions are coupled to create a rule that the moving object is arranged with periodicity. The rule includes a rule generated based on the periodicity of the arrangement of objects calculated by a kind of history storage unit 2230 .

본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니며, 본 발명의 목적 범위 내에서 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 반도체 기록소자를 포함하는 저장매체를 포함한다. 또한 본 발명의 실시예를 구현하는 컴퓨터 프로그램은 외부의 장치를 통하여 실시간으로 전송되는 프로그램 모듈을 포함한다. Even if all the components constituting the embodiment of the present invention are described as being combined or operated as one, the present invention is not necessarily limited to this embodiment, and all components within the scope of the present invention are one or more may be selectively combined to operate. In addition, although all of the components may be implemented as one independent hardware, some or all of the components are selectively combined to perform some or all of the functions of one or a plurality of hardware programs module It may be implemented as a computer program having Codes and code segments constituting the computer program can be easily deduced by those skilled in the art of the present invention. Such a computer program is stored in a computer readable storage medium (Computer Readable Media), read and executed by the computer, thereby implementing the embodiment of the present invention. The storage medium of the computer program includes a magnetic recording medium, an optical recording medium, and a storage medium including a semiconductor recording device. In addition, the computer program implementing the embodiment of the present invention includes a program module that is transmitted in real time through an external device.

이상에서는 본 발명의 실시예를 중심으로 설명하였지만, 통상의 기술자의 수준에서 다양한 변경이나 변형을 가할 수 있다. 따라서, 이러한 변경과 변형이 본 발명의 범위를 벗어나지 않는 한 본 발명의 범주 내에 포함되는 것으로 이해할 수 있을 것이다.In the above, although the embodiment of the present invention has been mainly described, various changes or modifications may be made at the level of those skilled in the art. Accordingly, it will be understood that such changes and modifications are included within the scope of the present invention without departing from the scope of the present invention.

1000: 로봇 100: 센싱부
200: 맵저장부 210, 1310: 맵
220: 이동객체 저장부 230: 히스토리 저장부
300: 이동부 400:기능부
500: 통신부 2000: 서버
1000: robot 100: sensing unit
200: map storage unit 210, 1310: map
220: moving object storage unit 230: history storage unit
300: moving unit 400: function unit
500: communication unit 2000: server

Claims (18)

로봇의 센싱부가 로봇의 외부에 배치된 제1객체를 센싱하는 단계;
상기 로봇의 제어부가 상기 센싱된 제1객체의 이동성을 산출하는 단계; 및
상기 로봇의 제어부가 산출한 상기 제1객체의 이동성이 미리 설정된 기준보다 낮은 경우, 상기 제1객체의 센싱된 정보 및 상기 센싱한 시간 정보를 맵에 고정 객체로 저장하는 단계를 포함하며,
상기 이동성을 산출하는 단계는
상기 맵의 고정 객체와 센싱된 제1객체의 위치가 완전히 일치하지는 않으나 일부 중첩될 경우, 상기 제1객체의 이동성의 값을 낮게 설정하는 단계를 포함하는, 이동 객체를 식별하여 맵을 작성하는 방법.
sensing, by a sensing unit of the robot, a first object disposed outside the robot;
calculating, by the control unit of the robot, the sensed mobility of the first object; and
When the mobility of the first object calculated by the control unit of the robot is lower than a preset reference, storing the sensed information of the first object and the sensed time information as a fixed object on a map;
The step of calculating the mobility is
When the positions of the fixed object of the map and the sensed first object do not completely coincide with each other, but partially overlap, a method for creating a map by identifying a moving object, including setting a low value of the mobility of the first object .
제1항에 있어서,
상기 이동성이 미리 설정된 기준 보다 높거나 같은 경우, 상기 제1객체의 센싱된 정보 및 상기 센싱한 시간 정보를 이동 객체 저장부에 저장하는, 이동 객체를 식별하여 맵을 작성하는 방법.
According to claim 1,
When the mobility is higher than or equal to a preset criterion, the sensed information of the first object and the sensed time information are stored in a moving object storage unit, a method of identifying a moving object and creating a map.
제1항에 있어서,
상기 센싱하는 단계 이전에,
상기 제어부는 상기 센싱부에게 센싱 가능 범위 내의 고정 객체의 정보를 제공하는 단계를 포함하며,
상기 센싱하는 단계는,
상기 센싱부가 상기 센싱 가능 범위 내에 상기 제1객체가 미리 설정된 시간 이상 지속하여 센싱되는지를 확인하여 상기 제어부에게 상기 제1객체의 센싱된 정보를 제공하는 단계를 더 포함하는, 이동 객체를 식별하여 맵을 작성하는 방법.
According to claim 1,
Before the sensing step,
The control unit includes the step of providing information on a fixed object within a sensing possible range to the sensing unit,
The sensing step is
The sensing unit further comprises the step of providing the sensed information of the first object to the control unit by confirming whether the first object is continuously sensed within the senseable range for a preset time or longer, How to write.
제1항에 있어서,
상기 이동성을 산출하는 단계는
상기 로봇의 제어부가 상기 맵의 고정 객체와 상기 센싱된 제1객체가 일치하지 않는 경우 상기 이동성을 높이는 단계를 포함하는, 이동 객체를 식별하여 맵을 작성하는 방법.
According to claim 1,
The step of calculating the mobility is
and increasing, by the control unit of the robot, the mobility when the fixed object of the map and the sensed first object do not match.
제1항에 있어서,
상기 이동성을 산출하는 단계는
상기 로봇의 제어부가 이동 객체 저장부에 상기 제1객체의 위치에 대응하는 제2객체의 저장 여부 및 저장 기간 또는 저장 간격을 확인하는 단계; 및
상기 확인된 정보에 따라 상기 제1객체의 이동성을 변화시키는 단계를 포함하는, 이동 객체를 식별하여 맵을 작성하는 방법.
According to claim 1,
The step of calculating the mobility is
checking, by the control unit of the robot, whether a second object corresponding to the location of the first object is stored in a moving object storage unit, and a storage period or storage interval; and
and changing the mobility of the first object according to the identified information.
제1항에 있어서,
상기 맵 저장부는 객체가 센싱되는 시간적 주기성을 저장하는, 이동 객체를 식별하여 맵을 작성하는 방법.
According to claim 1,
The map storage unit stores the temporal periodicity in which the object is sensed, a method of creating a map by identifying a moving object.
제6항에 있어서,
상기 로봇의 제어부는 상기 맵 저장부에 저장된 객체의 시간적 주기성을 이용하여 상기 객체가 센싱되지 않는 시간 주기를 산출하는 단계;
상기 센싱되지 않는 시간 주기에 상기 맵의 위치로 상기 로봇이 이동하도록 상기 로봇의 제어부가 제어하는 단계를 포함하는, 이동 객체를 식별하여 맵을 작성하는 방법.
7. The method of claim 6,
calculating, by the control unit of the robot, a time period in which the object is not sensed by using the temporal periodicity of the object stored in the map storage unit;
A method of creating a map by identifying a moving object, comprising controlling, by a controller of the robot, to move the robot to the location of the map in the non-sensing time period.
제1항에 있어서,
상기 로봇의 통신부는 서버에게 이동 객체의 정보를 송수신하는 단계;
상기 서버가 다수의 로봇들이 상이한 시간에 특정 위치에서 센싱한 제2객체의 위치 정보를 이용하여 상기 제2객체의 이동성을 낮추거나 또는 상기 제2객체를 고정 맵에 추가하는 단계를 더 포함하는, 이동 객체를 식별하여 맵을 작성하는 방법.
According to claim 1,
Transmitting and receiving information of a moving object to a server by the communication unit of the robot;
The server further comprising the step of lowering the mobility of the second object or adding the second object to a fixed map by using the location information of the second object sensed at a specific location at different times by a plurality of robots, How to create a map by identifying moving objects.
로봇의 이동을 제어하는 이동부;
로봇의 이동시 참조하는 맵을 저장하는 맵 저장부;
로봇의 외부에 배치된 제1객체를 센싱하는 센싱부; 및
상기 이동부, 맵 저장부, 센싱부를 제어하며, 상기 센싱된 제1객체의 이동성을 산출하는 제어부를 포함하며,
상기 로봇의 제어부는 상기 이동성이 미리 설정된 기준보다 낮은 경우, 상기 제1객체의 센싱된 정보 및 상기 센싱한 시간 정보를 맵에 고정 객체로 저장하며,
상기 제어부는 상기 맵의 고정 객체와 센싱된 제1객체의 위치가 완전히 일치하지는 않으나 일부 중첩될 경우, 상기 제1객체의 이동성의 값을 낮게 설정하는, 이동 객체를 식별하여 맵을 작성하는 로봇.
a moving unit for controlling the movement of the robot;
a map storage unit for storing a map referenced when the robot moves;
a sensing unit for sensing a first object disposed outside the robot; and
a control unit for controlling the moving unit, the map storage unit, and the sensing unit, and calculating the sensed mobility of the first object;
When the mobility is lower than a preset criterion, the control unit of the robot stores the sensed information of the first object and the sensed time information as a fixed object on the map,
When the position of the fixed object of the map and the sensed first object do not completely coincide with each other, but partially overlap, the controller sets a low value of the mobility of the first object. A robot that identifies a moving object and creates a map.
제9항에 있어서,
상기 맵은 고정 객체에 대한 정보를 저장하며,
상기 맵 저장부는 이동 객체에 대한 정보를 저장하는 이동 객체 저장부를 더 포함하는, 이동 객체를 식별하여 맵을 작성하는 로봇.
10. The method of claim 9,
The map stores information about fixed objects,
The map storage unit further comprises a moving object storage unit for storing information on the moving object, a robot for creating a map by identifying a moving object.
제10항에 있어서,
상기 이동성이 미리 설정된 기준 보다 높거나 같은 경우, 상기 제어부는 상기 제1객체의 센싱된 정보 및 상기 센싱한 시간 정보를 상기 이동 객체 저장부에 저장하는, 이동 객체를 식별하여 맵을 작성하는 로봇.
11. The method of claim 10,
When the mobility is higher than or equal to a preset criterion, the controller stores the sensed information of the first object and the sensed time information in the moving object storage unit, a robot that identifies a moving object and creates a map.
제9항에 있어서,
상기 제어부는 상기 센싱부에게 센싱 가능 범위 내의 고정 객체의 정보를 제공하며,
상기 센싱부는 상기 센싱 가능 범위 내에 상기 제1객체가 미리 설정된 시간 이상 지속하여 센싱되는지를 확인하여 상기 제어부에게 상기 제1객체의 센싱된 정보를 제공하는, 이동 객체를 식별하여 맵을 작성하는 로봇.
10. The method of claim 9,
The control unit provides information on a fixed object within a sensing possible range to the sensing unit,
The sensing unit checks whether the first object is continuously sensed for a preset time or longer within the senseable range, and provides the sensed information of the first object to the control unit. A robot that identifies a moving object and creates a map.
제9항에 있어서,
상기 로봇의 제어부는 상기 맵의 고정 객체와 상기 센싱된 제1객체가 일치하지 않는 경우 상기 이동성을 높이는, 이동 객체를 식별하여 맵을 작성하는 로봇.
10. The method of claim 9,
When the fixed object of the map and the sensed first object do not match, the controller of the robot creates a map by identifying a moving object to increase the mobility.
제9항에 있어서,
상기 로봇의 제어부는 상기 이동 객체 저장부에 상기 제1객체의 위치에 대응하는 제2객체의 저장 여부 및 저장 기간 또는 저장 간격을 확인하여, 상기 확인된 정보에 따라 상기 제1객체의 이동성을 변화시키는, 이동 객체를 식별하여 맵을 작성하는 로봇.
10. The method of claim 9,
The control unit of the robot checks whether the second object corresponding to the position of the first object is stored in the moving object storage unit and the storage period or storage interval, and changes the mobility of the first object according to the checked information A robot that creates a map by identifying moving objects.
제9항에 있어서,
상기 맵 저장부는 객체가 센싱되는 시간적 주기성을 저장하는, 이동 객체를 식별하여 맵을 작성하는 로봇.
10. The method of claim 9,
The map storage unit stores the temporal periodicity in which the object is sensed, a robot that identifies a moving object and creates a map.
제9항에 있어서,
상기 로봇의 제어부는 상기 맵 저장부에 저장된 객체의 시간적 주기성을 이용하여 상기 객체가 센싱되지 않는 시간 주기를 산출하여, 상기 센싱되지 않는 시간 주기에 상기 맵의 위치로 상기 로봇이 이동하도록 상기 로봇의 제어부가 상기 이동부를 제어하는, 이동 객체를 식별하여 맵을 작성하는 로봇.
10. The method of claim 9,
The control unit of the robot calculates a time period in which the object is not sensed by using the temporal periodicity of the object stored in the map storage unit, and moves the robot to the location of the map in the time period in which the object is not sensed. A robot that creates a map by identifying a moving object, in which a controller controls the moving unit.
제9항에 있어서,
상기 로봇의 통신부는 서버에게 이동 객체의 정보를 송수신하며,
상기 서버가 다수의 로봇들이 상이한 시간에 특정 위치에서 센싱한 제2객체의 위치 정보를 이용하여 상기 제2객체의 이동성을 낮추거나 또는 상기 제2객체를 고정 맵에 추가한 후, 상기 로봇의 통신부가 상기 고정 맵을 수신하는, 이동 객체를 식별하여 맵을 작성하는 로봇.
10. The method of claim 9,
The communication unit of the robot transmits and receives information of the moving object to the server,
After the server lowers the mobility of the second object or adds the second object to a fixed map by using the location information of the second object sensed at a specific location at different times by a plurality of robots, the communication unit of the robot A robot that creates a map by identifying a moving object, which receives the fixed map.
삭제delete
KR1020190097429A 2017-01-25 2019-08-09 Method of drawing map by identifying moving object and robot implementing thereof KR102420090B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190097429A KR102420090B1 (en) 2017-01-25 2019-08-09 Method of drawing map by identifying moving object and robot implementing thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170012277A KR102012549B1 (en) 2017-01-25 2017-01-25 Method of drawing map by identifying moving object and robot implementing thereof
KR1020190097429A KR102420090B1 (en) 2017-01-25 2019-08-09 Method of drawing map by identifying moving object and robot implementing thereof

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020170012277A Division KR102012549B1 (en) 2017-01-25 2017-01-25 Method of drawing map by identifying moving object and robot implementing thereof

Publications (2)

Publication Number Publication Date
KR20190096327A KR20190096327A (en) 2019-08-19
KR102420090B1 true KR102420090B1 (en) 2022-07-11

Family

ID=82396306

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190097429A KR102420090B1 (en) 2017-01-25 2019-08-09 Method of drawing map by identifying moving object and robot implementing thereof

Country Status (1)

Country Link
KR (1) KR102420090B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102479774B1 (en) 2022-09-15 2022-12-21 주식회사 라스테크 Humanoid robot having robot arm

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007249632A (en) * 2006-03-16 2007-09-27 Fujitsu Ltd Mobile robot moving autonomously under environment with obstruction, and control method for mobile robot
JP2010134656A (en) * 2008-12-03 2010-06-17 Sogo Keibi Hosho Co Ltd Autonomous mobile body and speed control method
JP2013086234A (en) * 2011-10-20 2013-05-13 Panasonic Corp Destination direction notification system, destination direction notification method, and destination direction notification program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007249632A (en) * 2006-03-16 2007-09-27 Fujitsu Ltd Mobile robot moving autonomously under environment with obstruction, and control method for mobile robot
JP2010134656A (en) * 2008-12-03 2010-06-17 Sogo Keibi Hosho Co Ltd Autonomous mobile body and speed control method
JP2013086234A (en) * 2011-10-20 2013-05-13 Panasonic Corp Destination direction notification system, destination direction notification method, and destination direction notification program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102479774B1 (en) 2022-09-15 2022-12-21 주식회사 라스테크 Humanoid robot having robot arm

Also Published As

Publication number Publication date
KR20190096327A (en) 2019-08-19

Similar Documents

Publication Publication Date Title
KR102012549B1 (en) Method of drawing map by identifying moving object and robot implementing thereof
KR101989982B1 (en) Modeling system and method by analyzing indoor environment based on digital-twin
KR102092392B1 (en) Method and system for automatically collecting and updating information about point of interest in real space
KR101419176B1 (en) Monitoring device, monitoring method, and computer readable recording medium having program recorded therein
US10527730B2 (en) Object detection system
US11688081B2 (en) Method of performing simultaneous localization and mapping with respect to a salient object in an image
KR102350533B1 (en) Method of configuring position based on vision information and robot implementing thereof
JP2017215653A (en) Detailed route creation device, automatic drive system for vehicle and detailed route creation program
KR102428765B1 (en) Autonomous driving vehicle navigation system using the tunnel lighting
CN110879598A (en) Information fusion method and device of multiple sensors for vehicle
KR20180087783A (en) Method of performing interpersonal behavior by identifying a person and robot implementing thereof
KR102420090B1 (en) Method of drawing map by identifying moving object and robot implementing thereof
CN105387844B (en) Pavement behavior measurement system and pavement behavior assay method
KR20200013156A (en) Method and system for improving signage detection performance
CN110068328B (en) Navigation route generation method and device, computer readable storage medium and computer equipment
US20180364046A1 (en) Apparatus and method for determining a vehicle position in a fixed-traffic-node coordinate system
JP7160257B2 (en) Information processing device, information processing method, and program
CN113532461A (en) Robot autonomous obstacle avoidance navigation method, equipment and storage medium
KR102368082B1 (en) Autonomous driving control method of a Robot and System therefor
KR102329674B1 (en) Method of configuring position based on identification of fixed object and moving object and robot implementing thereof
KR102012548B1 (en) Method of identifying enterable region of robot and robot implementing thereof
KR102189926B1 (en) Method and system for detecting change point of interest
KR20200046161A (en) Indoor position recognition system of transpotation robot
KR102323228B1 (en) Safety inspection maintenance method and system for structure using drone
JP6645768B2 (en) Vehicle type identification device

Legal Events

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