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 PDFInfo
- 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
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/1674—Programme controls characterised by safety, monitoring, diagnostic
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
- B25J11/008—Manipulators for service tasks
-
- 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/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- 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
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.
Description
본 발명은 이동 객체를 식별하여 맵을 작성하는 방법 및 이를 구현하는 로봇에 관한 기술이다.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
도 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
이동부(300)는 바퀴와 같이 로봇(1000)을 이동시키는 수단으로, 제어부(900)의 제어에 따라 로봇(1000)을 이동시킨다. 이때, 제어부(900)는 맵 저장부(200)에 저장된 영역에서 로봇(1000)의 현재 위치를 확인하여 이동부(300)에 이동 신호를 제공할 수 있다. 또한, 센싱부(100)에서 센싱된 외부의 객체의 존재 유무를 제어부(900)가 판별하여 이동부(300)의 이동을 제어할 수 있다. 기능부(400)는 로봇의 특화된 기능을 제공하는 것을 의미한다. 예를 들어, 청소 로봇인 경우 기능부(400)는 청소에 필요한 구성요소를 포함한다. 안내 로봇인 경우 기능부(400)는 안내에 필요한 구성요소를 포함한다. 기능부(400)는 로봇이 제공하는 기능에 따라 다양한 구성요소를 포함할 수 있다. The moving
맵 저장부(200)는 맵(210)을 포함한다. 맵은 로봇(1000)이 이동할 수 있는 공간에 대한 정보를 의미한다. 맵은 전체 공간을 세분화된 단위 영역으로 나누어 단위 영역에 고정 객체가 배치되어 있는지, 혹은 해당 고정 객체의 높이나 재질이 무엇인지 등을 저장할 수 있다. The
또한, 맵 저장부는 맵 뿐만 아니라 이동 객체들에 대한 정보를 저장하는 이동 객체 저장부(220)를 더 포함할 수 있다. 예를 들어, 특정 위치에서 발견된 이동 객체들과 이동 객체들이 센싱된 시간에 대한 정보 혹은 주기적으로 센싱되는 시간 정보 등을 이동 객체 저장부(220)에 저장한다. 이는 이동 객체로 판단되어도 로봇(1000)이 해당 위치에 이동할 수 있도록 하기 위함이다. Also, the map storage unit may further include a moving
본 발명의 일 실시예에 의하면 맵(210)은 고정 객체에 대한 정보를 저장하며, 통상 벽이나 유리, 기둥과 같이 고정된 구조물에 대한 정보를 저장한다. 반면 이동 객체 저장부(220)는 움직이는 사물 혹은 일시적으로 배치되는 사물에 대한 정보를 저장한다. 이와 달리, 본 발명의 다른 실시예는 도 13에서 살펴본 바와 같이, 맵(210)과 이동 객체 저장부(220)를 통합하되 고정 객체와 이동 객체가 구분되도록 저장할 수도 있다. According to an embodiment of the present invention, the
한편, 맵 저장부(200)는 히스토리 저장부(230)를 더 포함할 수 있다. 이는 특정 위치에서 객체가 센싱되는 시간 정보를 누적하여 저장하는 것을 의미한다. 히스토리 저장부(230)는 로봇(1000)에게 정보를 제공하는 별도의 서버에 구축될 수도 있다.Meanwhile, the
도 2에서 맵 저장부(200)는 로봇(1000) 내에 포함되어 있으나, 다른 실시예에 의하면 맵 저장부(200)가 서버에 배치될 수 있다. 이 경우, 로봇(1000)은 실시간으로 혹은 일정한 시간 간격을 두고 서버에 저장된 맵을 서버의 통신부와 통신을 이용하여 수신할 수 있다. 또한, 로봇(1000)이 추가로 저장해야 할 정보를 서버에 전송할 수 있다. In FIG. 2 , the
맵은 다양한 방식으로 구성될 수 있다. 일 실시예로 전체 공간을 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
한편, 제어부(900)는 센싱부(100)가 센싱한 객체의 이동성을 산출하여 이동성의 값이 미리 설정된 기준보다 높거나 같은 경우, 제어부는 센싱된 객체의 센싱된 정보와 센싱한 시간 정보를 이동 객체 저장부(220)에 저장할 수 있다. Meanwhile, the
이하 본 명세서에서 맵 저장부(200)는 도 3의 210을 실시예로 하는 맵과, 도 4의 220을 실시예로 하는 이동 객체 저장부를 포함한다. Hereinafter, in the present specification, the
도 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
도 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
도 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
220의 항목을 살펴보면, 시리얼 넘버(Serial)과 이동 객체가 센싱된 위치 정보(Xpos, Ypos), 그리고 센싱된 시간(Time)이 저장된다. 또한 해당 위치에서 이동 객체의 센싱이 지속된 기간(Duration)과 이동 객체가 해당 위치에서 센싱되는 간격(Period)에 대한 정보를 함께 저장할 수 있다. 또한, 선택적으로 해당 객체의 이동성(Movability)에 대한 정보를 함께 저장할 수 있다. 실시예에 따라 이동성의 값은 0에서 5 사이의 값을 가지는 것으로 하지만, 본 발명이 이에 한정되는 것은 아니다. Looking at the
예를 들어 시리얼 넘버가 432인 이동 객체는 (2, 4)에서 "2016-12-13 11:35"에 센싱되었으며, "Duration" 필드를 통해 이전에는 센싱되지 않은 객체임을 확인할 수 있다. 또한 시리얼 넘버가 433인 이동 객체는 (10, 17)에서 "2016-12-13 14:35"에 센싱되었으며, 마찬가지로 "Duration" 필드를 통해 이전에는 센싱되지 않은 객체임을 확인할 수 있다. For example, a moving object with
예를 들어, 시리얼 넘버가 434인 이동 객체는 (16, 15)에서 "2016-12-13 16:24"에 센싱되었으며, "Duration" 필드를 통해 12시간 53분 전부터 센싱이 지속된 객체임을 확인할 수 있다. 센싱의 지속 여부는 해당 로봇(1000)이 동일한 위치를 상이한 시간에 이동하면서 센싱한 정보에 토대를 두어 산출될 수도 있다. 또한 다른 실시예에 의하면, 다른 로봇이 제공하는 정보를 통신부(500)가 수신하여 업데이트할 수도 있다. For example, a moving object with
전술한 구성에 따라, 로봇(1000)의 각 구성요소들을 이용하여 동적으로 움직이는 장애물을 판별하여 이러한 장애물을 맵에서 고정 객체와 구분하여 판단하는 과정에 대해 살펴본다.According to the above-described configuration, a process of determining dynamically moving obstacles by using each component of the
도 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
이후 제어부(900)는 센싱된 제1객체의 이동성을 산출한다(S520). 이동성은 센싱된 객체가 어떠한 이동성을 가지는 지를 확인하는 것을 의미한다. 예를 들어, 벽이나 유리와 같은 고정된 객체는 아니지만, 한번 설치된 후 일정 기간 계속 유지되는 휴지통 혹은 안내표지판 등은 한번 센싱된 이후 계속 센싱될 경우 이의 이동성은 낮아지며 고정 객체에 준하여 고정될 수 있다. 이동성의 실시예는 해당 객체가 해당 위치에 존재하며 센싱된 시간을 기준으로 산출될 수 있다. 예를 들어, 고정된 객체로 판단할 수 있는 기간이 하루(24시간)인 경우, 24시간에 가까울수록 이동성이 낮을 수 있다. Thereafter, the
이후, 로봇의 제어부(900)가 산출한 제1객체의 이동성이 미리 설정된 기준보다 낮은 경우(S530), 이는 이동할 가능성이 낮은 객체이므로, 향후 로봇이 이동할 때, 고정 객체에 준하여 판단할 수 있도록 제1객체의 센싱된 정보와 센싱한 시간 정보를 이용하여 맵에 고정 객체로 저장한다(S540). 다만, 이동성을 가지고 있는 경우, 다른 고정 객체와 구별을 둘 수 있다. 예를 들어, 도 3에서 살펴본 맵에 검은색 컬러로 표시하지 않고, 회색으로 표시하는 것과 같이 완전한 고정된 구조물과는 구분하여 저장할 수 있다.Thereafter, when the mobility of the first object calculated by the
한편, 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
또한, 센싱된 정보에는 위치 정보가 포함될 수 있다. 센싱된 정보에서 위치는 로봇의 현재 위치와 센싱된 객체와의 거리 또는 방향 정보를 이용할 수 있다. 로봇의 현재 위치는 맵(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
도 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
본 발명의 일 실시예에 의한 로봇(1000)이 청소 기능 혹은 각 공간을 탐지하는 탐지 기능을 제공하는 경우, 전술한 장애물이 이동한 뒤에 해당 공간으로 진입하여 소정의 기능을 수행하는 것이 필요하다. 따라서, 본 명세서의 센싱부(100)는 외부의 객체가 센싱된 경우, 이를 바로 제어부(900)에 통지하여 이동 객체로 확인하는 것 보다는 해당 객체가 일정 시간 지난 후에도 센싱되는지 확인한 후, 계속 센싱될 경우에 이를 제어부(900)에게 통지할 수 있다. When the
즉, 센싱부(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_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
혹은 전술한 바와 달리 유동인구의 증가로 인해 센싱된 객체가 끊임없이 존재할 수 있으므로, 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
센싱부(100)는 제1객체가 센싱된 경우(S502), 미리 설정된 시간인 Sensing_Period_Time 이후 동일 위치에 대해 다시 센싱한다(S503). 다시 센싱해도 제1객체가 센싱되면(S504), 제1객체가 지속하여 센싱된 것으로 판단하고, 센싱부(100)는 제어부(900)에게 제1객체의 센싱된 정보를 제공한다(S505). When the first object is sensed (S502), the
여기서 만약 특정한 위치에 사람 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
도 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
반면, 진행 방향으로 센싱된 객체가 계속 센싱될 경우, 이에 대해서는 제어부(900)에게 통지한다. On the other hand, when the sensed object in the moving direction is continuously sensed, the
이를 위해 센싱 데이터 분석부(130)는 일차로 센싱된 객체와 이동 후에 센싱된 객체에 대한 비교를 수행할 수 있다. To this end, the sensing
예를 들어, 진행 방향에 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
한편, 진행 방향이 북쪽이며 북동쪽으로 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
전술한 실시예를 구현하기 위해 센싱 데이터 분석부(130)는 도 4에서 살펴본 이동 객체 저장부(220)를 추가로 보유할 수 있다. In order to implement the above-described embodiment, the sensing
도 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
도 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
한편, 제어부(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
전술한 실시예를 적용하면, 라이다 센서와 같이 레이저 거리센서로 들어오는 모든 정보를 맵에 바로 등록시키지 않고 센싱된 객체가 정적인 장애물인지, 아니면 이동하는 장애물인지를 지속적으로 판단하여, 정적인 장애물로 판단되는 정보만 맵에 등록할 수 있다. 이는 레이저 센서로부터 획득한 특정 사물의 거리정보, 각도정보는 로봇의 현재 위치 정보로 계산하면 전체 맵 좌표계의 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
또한, 맵에 정적장애물로 등록된 경우라도 일정 시간이 지난 후 다시 해당 지점을 스캔하였을때 해당 장애물이 없는 경우 동적장애물로 판단하고 기존 맵에서 제거할 수 있다. 예를 들어, 전술한 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
이는, 객체(720)가 확인된 좌표(10, 17)에서 일정시간 동안 동일한 위치를 나타낼 때 정적인 장애물로 판단하여 고정 객체로 맵에 저장하더라도, 해당 위치의 객체(720)가 이동할 경우 이를 맵에 그대로 적용하여 맵에서 삭제할 수 있도록 하기 위함이다. 즉, 완전히 고정된 구조물(벽, 유리, 기둥) 등과 같이 제거가 불가능한 고정 객체는 맵에만 저장하지만, 어느 정도 이동 가능하거나 제거가 가능한 객체들(안내 데스크, 표지판, 휴지통 등)은 이동 객체 저장부(220a)에 저장된 상태를 유지하면 이후 전술한 제거 가능한 객체들이 이동하거나 제거되는 경우 이를 쉽게 반영할 수 있다. In this case, even if the
예를 들어 사람이 일정 시간 동안 특정 지점에서 움직이지 않을 수 있거나 혹은 해당 위치에 항상 사람들이 오가는 경우, 또는 사물이 놓여진 상태가 지속될 수 있기 때문에 정적 장애물로 판단하여 고정 객체로 맵 상에 등록할 가능성이 존재하지만, 이런 경우에는 특정 시간 후에 해당 지점을 다시 스캔하였을 때 장애물이 없다면 기존 맵에서 해당 장애물을 제거 할 수 있다. 이를 위해 고정 객체로 맵에 등록된 경우라도 이동 객체 저장부에 해당 객체의 정보를 저장할 수 있다. 예를 들어 이동 객체 저장부에 이동성이 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
도 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
이후 로봇들(1000a, ..., 1000z)은 주행 과정에서 이동 객체 정보를 업데이트한다(S910, S920). 일 실시예로 각 로봇이 보유하는 이동 객체 저장부의 정보를 업데이트하는 것을 포함한다. 또한, 로봇 중에서 인접하여 위치하는 로봇 사이에서는 새로이 습득한 이동 객체에 대한 정보를 쉐어링할 수 있다(S915). 이때 이동 객체에 대한 정보의 쉐어링은 일정한 범위 내에 근접해있는 로봇들에게만 한정하여 제공할 수 있다. 또는, 로봇 이후에 해당 공간으로 이동하는 것이 예정된 로봇에게 제공할 수도 있다. Thereafter, the
그리고 각각의 로봇들(1000a, ..., 1000z)은 주행 중 취득한 이동 객체 정보를 서버로 업로드(S911, S921) 송신한다. And, each of the
서버(2000)는 수신한 이동 객체 정보를 업데이트 하며(S930) 이 과정에서 중복된 정보를 하나의 객체에 대한 정보로 정리하거나, 혹은 이동성 값의 변동이 필요한 경우 등을 조정하여 새로이 이동 객체 정보를 다운로드한다(S931, S932). 이동성 값의 변동이란, 다수의 로봇들이 상이한 시간에 특정 위치에서 객체가 존재하는 것으로 누적하여 센싱하고 이에 대한 정보를 업로드한 경우, 이 정보를 토대로 해당 위치의 객체의 이동성 값을 낮게 하거나 고정 맵에 추가하는 방안을 의미한다. 따라서, 이동 객체 정보 다운로드 과정에서는 맵에 대한 변동 정보도 함께 다운로드 될 수 있다.The
도 9와 같이, 혹은 앞서 살펴본 로봇의 제어부(900) 및 맵 저장부(200)를 이용하면, 특정 위치에서 객체가 주기성을 가지고 위치하는 것을 확인할 수 있다. 예를 들어, 특정한 위치에 객체가 센싱되는 시점을 누적하여 저장할 경우 해당 위치에 주기를 가지고 객체가 배치되는 룰을 생성할 수 있으며, 이를 기반으로 로봇(1000)은 해당 위치에서 객체가 배치되지 않는 시점에 이동하여 기능을 수행할 수 있다. 또한, 외부로부터 특정 위치에 객체가 주기성을 가지고 배치된다는 정보를 제공받고, 이를 토대로 로봇(1000)이 이동할 수 있다. As shown in FIG. 9 or by using the
도 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
히스토리 저장부(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
도 10의 과정은 로봇(1000)이 진행할 수도 있고, 앞서 살펴본 서버(2000)에서 진행할 수 있다. 서버(2000)는 다수의 로봇들이 제공하는 정보들을 취합하고, 로봇이 센싱한 값의 오차를 보정하여 특정 위치의 주기성을 확인하고, 이를 다시 다수의 로봇들에게 제공할 수 있다. The process of FIG. 10 may be performed by the
도 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
로봇의 제어부(900)는 로봇의 이동 루틴을 생성한다(S1110). 이 과정에서 제어부(900)는 이동 루틴에 포함된 위치에 객체가 주기적으로 배치되는 것이 예상되는지 확인한다(S1120). 확인 결과 주기적 배치가 예상되는 경우 객체의 시간적 주기성에 따라 객체가 센싱되지 않는 시간 주기를 산출한다. 즉, 객체가 배치되는 시간적 주기성을 이용하여 객체가 센싱되지 않는 시간 주기를 산출한다(S1130). 이후, 제어부(900)는 센싱되지 않는 시간 주기에 맵의 해당 위치로 로봇이 이동하도록 이동 루틴을 생성하고, 이 루틴에 따라 이동하여 기능을 수행하도록(S1135) 제어부가 이동부(300)를 제어할 수 있다.The
한편, 객체의 주기적 배치가 예상되지 않는 경우, 생성된 이동 루틴에 따라 이동하여 기능을 수행하도록 제어부가 이동부(300)를 제어할 수 있다. Meanwhile, when the periodic arrangement of the object is not expected, the controller may control the moving
도 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.
도 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
본 발명의 다른 실시예에 의하면, 하나의 맵 내에 고정 객체와 이동 객체를 모두 저장할 수 있다.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
따라서, 로봇이 이동하는 과정에서 전체 맵(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
전술한 실시예들을 적용할 경우, 레이저 센서를 활용하여 로봇이 맵을 작성하거나 업데이트할 경우, 동적 장애물을 제거할 수 있다. 레이저 센서로 감지된 사물의 위치 정보가 일정시간 동안 변경되지 않을 경우 맵에 등록하고, 등록된 사물을 다시 스캔하였을 때 해당 사물이 동일 위치에서 감지되지 않을 경우 해당 사물을 맵에서 제거할 수 있다.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
도 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
뿐만 아니라, 서버(2000)는 공항, 항만, 터미널 등에서 제공하는 특정 위치의 사물 배치에 대한 정보를 맵(2210) 또는 이동 객체 저장부(2220)에 반영하여 이를 로봇들에게 제공할 수 있다. 예를 들어, 원래는 사물이 배치되지 않는 영역이지만, 새로이 일정 기간동안 안내 데스크가 설치될 경우, 이 지점에 대한 정보를 맵(2210) 또는 이동 객체 저장부(2220)에 저장하여 로봇이 불필요한 센싱을 수행하거나 해당 영역에 재진입을 위해 이동 루틴을 수정하지 않도록 하여 로봇의 이동의 효율성을 높일 수 있다. In addition, the
또한, 서버(2000)는 룰 저장부(2600)를 추가적으로 포함할 수 있다. 이는 히스토리 저장부(2230)를 이용하여 사물 배치의 주기성을 룰로 만들어 이를 로봇들이 이동시 참고할 수 있도록 한다. 예를 들어, (2, 3)에 매주 화요일에 이동 객체가 배치되며, 이와 동시에 (2, 8)에도 매주 화요일에 이동 객체가 배치되는 것이 확인되며, 이러한 배치의 연관성이 높을 경우 (2, 3) 및 (2, 8) 지역이 커플링되어 이동 객체가 주기성을 가지며 배치된다는 룰을 만들 수 있다. 룰은 일종의 히스토리 저장부(2230)에서 산출되는 사물 배치의 주기성에 기반하여 생성되는 규칙을 포함한다.Also, the
본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니며, 본 발명의 목적 범위 내에서 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(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:
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객체의 이동성의 값을 낮게 설정하는 단계를 포함하는, 이동 객체를 식별하여 맵을 작성하는 방법.
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객체의 센싱된 정보 및 상기 센싱한 시간 정보를 이동 객체 저장부에 저장하는, 이동 객체를 식별하여 맵을 작성하는 방법.
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객체의 센싱된 정보를 제공하는 단계를 더 포함하는, 이동 객체를 식별하여 맵을 작성하는 방법.
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객체가 일치하지 않는 경우 상기 이동성을 높이는 단계를 포함하는, 이동 객체를 식별하여 맵을 작성하는 방법.
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객체의 위치에 대응하는 제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.
상기 맵 저장부는 객체가 센싱되는 시간적 주기성을 저장하는, 이동 객체를 식별하여 맵을 작성하는 방법.
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.
상기 로봇의 제어부는 상기 맵 저장부에 저장된 객체의 시간적 주기성을 이용하여 상기 객체가 센싱되지 않는 시간 주기를 산출하는 단계;
상기 센싱되지 않는 시간 주기에 상기 맵의 위치로 상기 로봇이 이동하도록 상기 로봇의 제어부가 제어하는 단계를 포함하는, 이동 객체를 식별하여 맵을 작성하는 방법.
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.
상기 로봇의 통신부는 서버에게 이동 객체의 정보를 송수신하는 단계;
상기 서버가 다수의 로봇들이 상이한 시간에 특정 위치에서 센싱한 제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.
상기 맵은 고정 객체에 대한 정보를 저장하며,
상기 맵 저장부는 이동 객체에 대한 정보를 저장하는 이동 객체 저장부를 더 포함하는, 이동 객체를 식별하여 맵을 작성하는 로봇.
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.
상기 이동성이 미리 설정된 기준 보다 높거나 같은 경우, 상기 제어부는 상기 제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.
상기 제어부는 상기 센싱부에게 센싱 가능 범위 내의 고정 객체의 정보를 제공하며,
상기 센싱부는 상기 센싱 가능 범위 내에 상기 제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.
상기 로봇의 제어부는 상기 맵의 고정 객체와 상기 센싱된 제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.
상기 로봇의 제어부는 상기 이동 객체 저장부에 상기 제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.
상기 맵 저장부는 객체가 센싱되는 시간적 주기성을 저장하는, 이동 객체를 식별하여 맵을 작성하는 로봇.
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.
상기 로봇의 제어부는 상기 맵 저장부에 저장된 객체의 시간적 주기성을 이용하여 상기 객체가 센싱되지 않는 시간 주기를 산출하여, 상기 센싱되지 않는 시간 주기에 상기 맵의 위치로 상기 로봇이 이동하도록 상기 로봇의 제어부가 상기 이동부를 제어하는, 이동 객체를 식별하여 맵을 작성하는 로봇.
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.
상기 로봇의 통신부는 서버에게 이동 객체의 정보를 송수신하며,
상기 서버가 다수의 로봇들이 상이한 시간에 특정 위치에서 센싱한 제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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102479774B1 (en) | 2022-09-15 | 2022-12-21 | 주식회사 라스테크 | Humanoid robot having robot arm |
Citations (3)
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 |
-
2019
- 2019-08-09 KR KR1020190097429A patent/KR102420090B1/en active IP Right Grant
Patent Citations (3)
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)
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 |