KR20180058303A - Mobile robot and system having the same and controlling method of mobile robot - Google Patents

Mobile robot and system having the same and controlling method of mobile robot Download PDF

Info

Publication number
KR20180058303A
KR20180058303A KR1020160157071A KR20160157071A KR20180058303A KR 20180058303 A KR20180058303 A KR 20180058303A KR 1020160157071 A KR1020160157071 A KR 1020160157071A KR 20160157071 A KR20160157071 A KR 20160157071A KR 20180058303 A KR20180058303 A KR 20180058303A
Authority
KR
South Korea
Prior art keywords
map
mobile robot
user
data
generated
Prior art date
Application number
KR1020160157071A
Other languages
Korean (ko)
Other versions
KR102656581B1 (en
Inventor
곽노산
김지민
노경식
박순용
윤석준
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020160157071A priority Critical patent/KR102656581B1/en
Publication of KR20180058303A publication Critical patent/KR20180058303A/en
Application granted granted Critical
Publication of KR102656581B1 publication Critical patent/KR102656581B1/en

Links

Images

Classifications

    • 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
    • B25J11/0085Cleaning
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2836Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means characterised by the parts which are controlled
    • A47L9/2852Elements for displacement of the vacuum cleaner or the accessories therefor, e.g. wheels, casters or nozzles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0003Home robots, i.e. small robots for domestic use
    • 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
    • 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/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/04Automatic control of the travelling movement; Automatic obstacle detection

Abstract

According to one aspect of the disclosed invention, provided are a moving robot improving a robot map generated by a moving robot to a user map which can be recognized by a user, a system including the same, and a control method of a moving robot. The moving robot of the disclosed aspect comprises: a main body; sensor collecting data on a space in which the main body is driven; a communications unit communicating with the outside; and a controller generating a first map based on the data and requiring a second map through the communications unit. Moreover, the second map can be generated by a deep learning process based on the first map.

Description

이동 로봇, 그를 포함하는 시스템 및 이동 로봇의 제어 방법{MOBILE ROBOT AND SYSTEM HAVING THE SAME AND CONTROLLING METHOD OF MOBILE ROBOT}TECHNICAL FIELD [0001] The present invention relates to a mobile robot, a system including the mobile robot, and a control method of the mobile robot.

개시된 발명은 이동 로봇이 생성하는 격자 지도를 개량하여 사용자에게 제공할 수 있는 수준의 지도를 생성하는 이동 로봇, 그를 포함하는 시스템 및 이동 로봇의 제어 방법에 관한 것이다.The present invention relates to a mobile robot for improving a grid map generated by a mobile robot and generating a map of a level that can be provided to a user, a system including the mobile robot, and a control method for the mobile robot.

일반적으로, 이동 로봇은 사용자의 조작 없이도 주행하고자 하는 영역을 자율적으로 이동하면서 작업을 수행하는 장치이다. 이동 로봇은 청소 로봇이나 홈 로봇과 같은 형태로 실생활에 보급되고 있다. 더욱이 기술 발전과 함께 이동 로봇은 가정, 기업, 공공 장소에 널리 보급될 것이라 예상된다.Generally, a mobile robot is a device that autonomously moves an area to be traveled without a user's operation. Mobile robots are spreading in real life like cleaning robots or home robots. Moreover, along with technological advancement, mobile robots are expected to be widely used in homes, businesses and public places.

자율 주행하는 이동 로봇은 위치 인식 및 주행 경로를 파악하기 위해 주변 공간에 대한 지도를 만든다. 그러나 이동 로봇이 생성하는 로봇 지도는 주행 공간에 관한 데이터를 수집하는 센서의 성능 부족으로 인해 사용자가 인식하기 어려운 수준이다. The autonomous mobile robot makes a map of the surrounding space in order to grasp the position recognition and the travel route. However, the robot map generated by the mobile robot is difficult for the user to recognize because of the lack of performance of the sensor for collecting the data about the travel space.

이러한 문제로 인해서 종래의 이동 로봇은 생성한 로봇 지도를 사용자에게 공개하지 않는다. 이 때문에 사용자는 이동 로봇과의 인터랙션(Interaction)에 제약을 받는다. 일 예로 사용자가 이동 로봇이 주행할 목적지를 설정하는 경우, 로봇 지도와 사용자가 인식하는 공간의 불일치가 발생하고, 이동 로봇은 사용자가 원하는 목적지에 도달하지 못할 수 있다.Due to such a problem, the conventional mobile robot does not disclose the created robot map to the user. Therefore, the user is limited in the interaction with the mobile robot. For example, when the user sets a destination for the mobile robot to travel, a mismatch occurs between the robot map and the space recognized by the user, and the mobile robot may not reach the destination desired by the user.

이러한 인터랙션의 제약은 사용자에게 이동 로봇의 제어의 불편함을 초래하고, 나아가 사용자의 만족도를 하락시키는 문제점이 있었다. Such a restriction of the interaction causes the inconvenience of the control of the mobile robot to the user, and further, the user's satisfaction is lowered.

개시된 발명의 일 측면은 이동 로봇이 생성하는 로봇 지도를 사용자가 인식할 수 있는 수준의 사용자 지도로 개량하는 이동 로봇, 그를 포함하는 시스템 및 이동 로봇의 제어 방법을 제공한다.According to an aspect of the present invention, there is provided a mobile robot for improving a robot map generated by a mobile robot to a user map that can be recognized by a user, a system including the same, and a control method for the mobile robot.

개시된 일 예에 따른 이동 로봇은 본체; 상기 본체가 주행하는 공간에 대한 데이터를 수집하는 센서; 외부로 통신을 수행하는 통신부; 상기 데이터에 기초하여 상기 제 1지도를 생성하고, 상기 통신부를 통해 상기 제 2지도를 요청하는 제어부;를 포함하고, 상기 제 2지도는 상기 제 1지도를 기초로 심층 학습(Deep Learning)에 의해 생성한다.The mobile robot according to the disclosed example includes a main body; A sensor for collecting data on a space in which the main body travels; A communication unit for performing communication to the outside; And a controller for generating the first map based on the data and requesting the second map through the communication unit, wherein the second map is generated by Deep Learning based on the first map, .

상기 제 2지도를 출력하는 유저 인터페이스;를 더 포함하고, 상기 제어부는, 상기 통신부를 통해 상기 제 2지도를 송신하도록 제어하고, 상기 유저 인터페이스를 제어하여 상기 제 2지도를 출력할 수 있다.The control unit may control to transmit the second map through the communication unit and to output the second map by controlling the user interface.

상기 심층 학습은, CNN(Convolution Neural Network)을 포함하고, 상기 제 2지도는 상기 CNN에 기초하여 생성할 수 있다.The deep learning includes a CNN (Convolution Neural Network), and the second map can be generated based on the CNN.

상기 제어부는, 상기 제 2지도를 라벨링(labeling)할 수 있다.The control unit may label the second map.

상기 제 2지도는, 3차원 시뮬레이션 환경에 기초하여 생성할 수 있다.The second map can be generated based on a three-dimensional simulation environment.

상기 제어부는, 상기 제 2지도에 기초하여 상기 본체의 이동 경로를 판단하고, 상기 이동 경로에 기초하여 상기 본체를 주행할 수 있다.The control unit may determine the travel route of the main body based on the second map, and may drive the main body based on the travel route.

개시된 다른 실시예에 따른 시스템은 심층 학습에 필요한 학습 데이터를 수집하는 서버; 주행하면서 데이터를 수집하고, 상기 데이터에 기초하여 제 1 지도를 생성하는 이동 로봇; 상기 서버로부터 전달받은 상기 학습 데이터를 기초로 상기 심층 학습하는 심층 학습기;를 포함하고, 상기 이동 로봇은, 상기 제 1 지도를 기초로 심층 학습에 의해 생성되는 제 2지도를 상기 심층 학습기에 요청한다.A system according to another disclosed embodiment includes a server for collecting learning data necessary for in-depth learning; A mobile robot for collecting data while traveling and generating a first map based on the data; And an in-depth learning device for performing in-depth learning based on the learning data received from the server, wherein the mobile robot requests the in-depth learning device for a second map generated by in-depth learning based on the first map .

상기 이동 로봇은, 상기 제 2지도를 수신하고, 상기 수신한 제 2지도에 기초하여 주행할 수 있다.The mobile robot may receive the second map and travel based on the received second map.

상기 이동 로봇과 통신하는 사용자 단말;을 더 포함하고, 상기 이동 로봇은, 제 2지도를 상기 사용자 단말로 전달할 수 있다.And a user terminal communicating with the mobile robot, wherein the mobile robot can transmit the second map to the user terminal.

상기 심층 학습기는, 상기 제 2지도에서 포함된 의미 정보를 라벨링(labeling)하고, 상기 이동 로봇으로 전달할 수 있다.The deep layer learning device may label semantic information included in the second map and transmit the label information to the mobile robot.

상기 이동 로봇은, 상기 사용자 단말이 전달하는 이동 경로에 관한 명령을 수신하고, 상기 이동 경로를 기초하여 주행할 수 있다.The mobile robot may receive a command related to a travel route transmitted by the user terminal, and may travel based on the travel route.

상기 서버는, 상기 심층 학습기가 전달하는 상기 제 2지도를 수신하고, 상기 이동 로봇으로 상기 제 2지도를 전달할 수 있다.The server may receive the second map transmitted by the deep layer learning device, and may transmit the second map to the mobile robot.

상기 학습 데이터는, 상기 3차원 시뮬레이션 환경에서 가상으로 주행하여 생성되는 정보를 포함할 수 있다.The learning data may include information generated by virtually driving in the three-dimensional simulation environment.

상기 심층 학습은, CNN(Convolution Neural Network)을 포함할 수 있다.The deep learning may include CNN (Convolution Neural Network).

개시된 또 다른 실시예에 따른 이동 로봇의 제어방법은 주행하면서 공간에 관한 데이터를 수집하고; 상기 데이터에 기초하여 제 1지도를 생성하고; 상기 제 1지도를 외부로 전달하고; 상기 제 1지도에 기초로 심층 학습에 의해 생성되는 제 2 지도를 요청하는 것;을 포함한다.According to another aspect of the present invention, there is provided a control method for a mobile robot, the method comprising: collecting data on a space while traveling; Generate a first map based on the data; Transferring the first map to the outside; And requesting a second map generated by in-depth learning based on the first map.

상시 제 2지도를 수신하고; 상기 제 2지도에 기초하여 주행하는 것;을 더 포함할 수 있다.The second map is always received; And traveling on the basis of the second map.

상기 제 2지도를 사용자의 입력 명령을 수신하는 사용자 단말로 전달하는 것;을 더 포함할 수 있다.And transmitting the second map to a user terminal receiving the input command of the user.

상기 사용자 단말이 전달하는 이동 경로를 수신하고; 상기 주행하는 것은, 상기 이동 경로를 상기 제 2지도에 매칭시켜 주행하는 것;을 포함할 수 있다.Receiving a movement route transmitted by the user terminal; The traveling may include running the traveling route by matching the traveling route to the second map.

상기 제 1지도는, 격자 지도를 포함할 수 있다.The first map may include a grid map.

상기 제 2지도는, 상기 격자 지도 및 평면도를 기초로 상기 심층 학습에 의해 생성될 수 있다.The second map may be generated by the depth learning based on the grid map and the plan view.

개시된 발명의 일 측면에 따른 이동 로봇, 그를 포함하는 시스템 및 이동 로봇의 제어 방법은 이동 로봇이 생성하는 로봇 지도를 사용자가 인식할 수 있는 수준의 사용자 지도로 개량함으로써, 사용자에게 이동 로봇이 인식하는 공간의 이해를 높이고, 이동 로봇과 사용자 간의 인터랙션을 증가시켜 이동 로봇 제어의 편리함을 제공한다.According to an aspect of the present invention, there is provided a mobile robot, a system including the mobile robot, and a control method of the mobile robot, wherein the robot map generated by the mobile robot is improved to a user- And provides the convenience of the mobile robot control by increasing the interaction between the mobile robot and the user.

도 1은 일 실시예에 의한 이동 로봇 시스템의 전체 구성을 도시한 도면이다.
도 2는 일 실시예에 따른 이동 로봇의 외관을 개략적으로 도시한 도면이다.
도 3은 개시된 일 예에 따른 이동 로봇의 제어 블록도이다.
도 4는 개시된 일 예에 따른 이동 로봇의 동작을 설명하기 위한 순서도이다.
도 5a는 이동 로봇의 실제 주행 공간을 간략하게 도시한 것이고, 도 5b는 이동 로봇이 생성한 격자 지도를 도시한 것이며, 도 5c는 격자지도를 간소화한 로봇 지도를 도시한 것이다.
도 6은 일 예에 따른 이동 로봇이 사용자에게 제공하는 평면도를 도시한 것이다.
도 7은 개시된 일 예에 따른 시스템에 관한 구성을 설명하기 위한 도면이다.
도 8은 일 예에 따른 시스템의 동작을 설명하기 위한 순서도이다.
도 9는 심층 학습에 관한 일 예를 설명하기 위한 순서도이다.
도 10은 심층 학습의 일 예를 설명하기 위한 도면이다.
도 11은 개시된 일 예에 따른 이동 로봇과 사용자의 인터랙션을 설명하기 위한 도면이다.
도 12는 다른 일 예에 따른 이동 로봇과 사용자의 인터랙션을 설명하기 위한 도면이다.
FIG. 1 is a diagram showing the overall configuration of a mobile robot system according to an embodiment.
2 is a view schematically showing an appearance of a mobile robot according to an embodiment.
FIG. 3 is a control block diagram of a mobile robot according to an example disclosed. FIG.
4 is a flowchart illustrating an operation of the mobile robot according to an embodiment of the present invention.
FIG. 5A is a schematic view of an actual traveling space of the mobile robot, FIG. 5B is a grid map generated by the mobile robot, and FIG. 5C is a robot map in which a grid map is simplified.
FIG. 6 is a plan view of a mobile robot according to an exemplary embodiment of the present invention.
FIG. 7 is a diagram for explaining a configuration of a system according to an example disclosed. FIG.
8 is a flowchart for explaining the operation of the system according to an example.
9 is a flowchart for explaining an example of in-depth learning.
10 is a diagram for explaining an example of in-depth learning.
11 is a diagram for explaining interaction between a mobile robot and a user according to an example of the present invention.
12 is a diagram for explaining interaction between a mobile robot and a user according to another example.

명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 명세서가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 발명이 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다. Like reference numerals refer to like elements throughout the specification. The present specification does not describe all elements of the embodiments, and redundant description between general contents or embodiments in the technical field of the present invention will be omitted. The term 'part, module, member, or block' used in the specification may be embodied in software or hardware, and a plurality of 'part, module, member, and block' may be embodied as one component, It is also possible that a single 'part, module, member, block' includes a plurality of components.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only the case directly connected but also the case where the connection is indirectly connected, and the indirect connection includes connection through the wireless communication network do.

또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Also, when an element is referred to as "comprising ", it means that it can include other elements as well, without departing from the other elements unless specifically stated otherwise.

명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.Throughout the specification, when a member is located on another member, it includes not only when a member is in contact with another member but also when another member exists between the two members.

제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다. The terms first, second, etc. are used to distinguish one element from another, and the elements are not limited by the above-mentioned terms.

단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.The singular forms " a " include plural referents unless the context clearly dictates otherwise.

각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다. In each step, the identification code is used for convenience of explanation, and the identification code does not describe the order of the steps, and each step may be performed differently from the stated order unless clearly specified in the context. have.

이하 첨부된 도면들을 참고하여 개시된 이동 로봇, 그를 포함하는 시스템 및 이동 로봇의 제어 방법의 작용 원리 및 실시예들에 대해 설명한다.BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which: FIG.

도 1은 일 실시예에 의한 이동 로봇의 구성을 도시한 도면이다.FIG. 1 is a diagram showing a configuration of a mobile robot according to an embodiment.

이동 로봇(100)은 이동 일정 영역을 자율적으로 이동하면서 작업을 수행하는 로봇(Robot)을 의미한다. 이러한 이동 로봇(100)은 도 1에서 도시된 바와 같이 바퀴를 주행 수단으로 할 수도 있으며, 사람과 같이 자립하여 다리로 이동할 수도 있다. 이하에서는 이동 로봇(100)이 바퀴를 이용하여 주행하는 로봇을 일 예로 설명한다.The mobile robot 100 refers to a robot that performs work while autonomously moving a predetermined area. As shown in FIG. 1, the mobile robot 100 may be a wheel as a traveling means, or may be self-supporting as a person and move to a leg. Hereinafter, a robot in which the mobile robot 100 travels using wheels will be described as an example.

도 1은 바퀴를 이용하여 주행하는 이동 로봇(100)과 이동 로봇(100)과 분리되어 이동 로봇(100)을 원격으로 제어하는 디바이스(101), 이동 로봇(100)과 분리되어 이동 로봇(100)의 배터리(Battery) 전원을 충전하는 충전 스테이션(102)을 도시한 것이다.1 shows a mobile robot 100 that travels using wheels and a device 101 that remotely controls the mobile robot 100 separated from the mobile robot 100. The mobile robot 100 is separated from the mobile robot 100, And a charging station 102 for charging a battery power of the battery.

구체적으로 이동 로봇(100)은 디바이스(101)의 제어 명령을 전달받아 제어 명령에 대응하는 동작을 수행하고, 충전 가능한 배터리를 구비하며, 주행 중 장애물을 피할 수 있는 장애물 센서를 구비하여 작업 영역을 자율적으로 주행하며 작업할 수 있다.Specifically, the mobile robot 100 includes an obstacle sensor that receives a control command of the device 101, performs an operation corresponding to the control command, includes a rechargeable battery, and can avoid an obstacle while driving, You can work and run autonomously.

디바이스(101)는 이동 로봇(100)의 이동을 제어하거나 이동 로봇(100)의 작업을 수행하기 위한 제어 명령을 무선으로 송신하는 원격 제어 장치를 의미한다. 디바이스(101)는 유,무선을 통해 이동 로봇(100)과 이후에서 후술하는 여러 데이터 및 정보를 주고 받는다. The device 101 refers to a remote control device for controlling movement of the mobile robot 100 or wirelessly transmitting control commands for performing operations of the mobile robot 100. The device 101 exchanges various data and information to be described later with the mobile robot 100 via wired and wireless communication.

도 1에서는 디바이스(101)의 일 예를 간단한 형태의 일반적인 리모컨으로 도시하였다. 리모컨은 일반적으로 적외선 통신(IrDA, infrared Data Association)을 이용하여 이동 로봇(100)과 신호를 송수신한다. In FIG. 1, an example of the device 101 is shown as a simple remote control. The remote controller generally transmits and receives signals to and from the mobile robot 100 using an infrared data association (IrDA).

구체적으로, 디바이스(101)는 이동 로봇(100)의 전원을 온/오프 제어하기 위한 전원 버튼과, 이동 로봇(100)의 배터리 충전을 위해 충전 스테이션(103)으로 복귀하도록 지시하기 위한 충전 복귀 버튼과, 이동 로봇(100)의 제어 모드를 변경하기 위한 모드 버튼과, 이동 로봇(100)의 동작을 시작/정지하거나 제어 명령의 개시, 취소 및 확인을 위한 시작/정지 버튼과, 다이얼 등을 포함할 수 있다.Specifically, the device 101 includes a power button for on / off controlling the power of the mobile robot 100, a charge return button 103 for instructing the mobile robot 100 to return to the charging station 103 for charging the battery of the mobile robot 100, A mode button for changing the control mode of the mobile robot 100, a start / stop button for starting / stopping the operation of the mobile robot 100, a start / stop button for starting / canceling / checking the control command, can do.

한편, 디바이스(101)는 휴대폰(Cellphone, PCS phone), 스마트 폰(smart phone), 휴대 단말기(Personal Digital Assistants: PDA), 휴대용 멀티미디어 플레이어(Portable Multimedia Player: PMP), 노트북 컴퓨터(laptop computer), 디지털 방송용 단말기, 넷북, 태블릿, 네비게이션(Navigation) 등과 같은 사용자 단말(200)을 포함할 수 있다.The device 101 may be a cellular phone, a PCS phone, a smart phone, a PDA, a portable multimedia player (PMP), a laptop computer, A digital broadcasting terminal, a netbook, a tablet, a navigation, and the like.

이외에도, 디바이스(101)는 무선 통신 기능이 내장된 디지털 카메라, 캠코더 등과 같이 여러 응용 프로그램을 이용한 다양한 기능의 구현이 가능한 모든 장치를 포함한다.In addition, the device 101 includes all devices capable of realizing various functions using various application programs such as a digital camera, a camcorder, etc. having a wireless communication function built therein.

즉, 디바이스(101)는 RF(Radio Frequency), 와이파이(Wireless Fidelity, Wi-Fi), 블루투스(Bluetooth), 지그비(Zigbee), 엔에프씨(near field communication: NFC), 초광대역(Ultra Wide Band: UWB) 통신 등 다양한 방식을 이용하여 이동 로봇(100)과 무선 통신 신호를 송수신할 수 있으면, 충분하고 제한은 없다.That is, the device 101 may be a radio frequency (RF), a wireless fidelity, a Wi-Fi, a Bluetooth, a Zigbee, a near field communication (NFC) UWB) communication or the like, it is possible to transmit and receive a wireless communication signal to the mobile robot 100 without any limitation.

충전 스테이션(102)은 이동 로봇(100)의 배터리 충전을 위한 것으로, 이동 로봇(100)이 도킹되는 것을 안내하는 가이드 부재(미도시)가 마련되어 있고, 가이드 부재(미도시)에는 이동 로봇(100)에 구비된 전원부(170, 도 2 참조)를 충전시키기 위해 접속 단자(미도시)가 마련되어 있을 수 있다.The charging station 102 is for charging the battery of the mobile robot 100 and is provided with a guide member (not shown) for guiding the mobile robot 100 to be docked. The guide member (not shown) A connection terminal (not shown) may be provided to charge the power supply unit 170 (see FIG.

도 2는 일 실시예에 따른 이동 로봇의 외관을 개략적으로 도시한 도면이다.2 is a view schematically showing an appearance of a mobile robot according to an embodiment.

도 2를 참조하면, 이동 로봇(100)은 외관을 형성하는 본체(104)와, 본체(104)의 상부를 덮는 커버(105)와, 본체(104)를 구동시키기 위한 구동 전원을 공급하는 전원부(170)와, 본체(101)를 이동시키는 주행부(160)를 포함하여 구성된다. 또한, 본체(104)는 이동 로봇(100)이 주행하면서 주행 공간에 대한 데이터를 수집하는 센서(130)를 더 포함한다.2, the mobile robot 100 includes a main body 104 forming an outer appearance, a cover 105 covering an upper portion of the main body 104, and a power supply unit 106 for supplying driving power for driving the main body 104. [ (170), and a traveling unit (160) for moving the main body (101). The main body 104 further includes a sensor 130 for collecting data on the traveling space while the mobile robot 100 is traveling.

본체(104)는 이동 로봇(100)의 외관을 형성하는 한편, 그 내부에 설치되는 각종 부품들을 지지한다.The main body 104 forms an outer appearance of the mobile robot 100, and supports various components installed therein.

전원부(170)는 주행부(160) 및 그 외 본체(104)를 구동시키기 위한 각 부하와 전기적으로 연결되어 구동 전원을 공급하는 배터리를 포함한다. 배터리는 재충전이 가능한 2차 배터리로 마련되며, 본체(104)가 작업을 완료하고 충전 스테이션(103)에 결합된 경우, 충전 스테이션(103)으로부터 전력을 공급받아 충전된다. 또한, 전원부(170)는 충전 잔량이 부족하면 충전 스테이션(103)으로부터 충전 전류를 공급받아 충전된다.The power supply unit 170 includes a battery that is electrically connected to each load for driving the traveling unit 160 and the main body 104 to supply driving power. The battery is provided with a rechargeable secondary battery and is charged with electric power from the charging station 103 when the main body 104 completes the work and is coupled to the charging station 103. In addition, the power source unit 170 receives the charging current from the charging station 103 when the remaining charge amount is insufficient.

주행부(160)는 본체(101)의 중앙부 양측에 각각 마련되어 본체(101)가 작업을 수행하는 과정에서 전진, 후진 및 회전주행 등의 이동 동작이 가능하도록 한다.The traveling unit 160 is provided on both sides of the center of the main body 101 so that the main body 101 can move forward, backward, and run in the process of performing the operation.

도 2에서 도시된 일 예에 따른 주행부(160)는 이동 로봇(100)이 이동하는 바닥 면의 상태에 따라 회전하는 각도가 변화하는 캐스터 휠을 포함할 수 있다. 캐스터 휠은 이동 로봇(100)의 자세 안정 및 추락 방지 등에 활용되어 이동 로봇(100)을 지지하며, 롤러나 캐스터 형상의 휠로 구성된다.The traveling unit 160 according to the example shown in FIG. 2 may include a caster wheel whose angle of rotation varies according to a state of a floor on which the mobile robot 100 moves. The caster wheel is utilized for stabilizing the posture of the mobile robot 100 and preventing falling, supports the mobile robot 100, and is formed of a roller or a caster-shaped wheel.

주행부(160)는 후술하는 제어부(110, 도 3 참조)의 명령에 따라 전진 또는 후진 방향으로 각각 회전하여 이동 로봇(100)이 전진 또는 후진하거나 회전할 수 있도록 한다. 예를 들면 양 캐스터 휠을 전진 또는 후진 방향으로 회전시켜 이동 로봇(100)이 전진 또는 후진 주행하도록 한다. The traveling unit 160 rotates in the forward or backward direction according to a command of the control unit 110 (see FIG. 3) to be described later so that the mobile robot 100 can be moved forward, backward, or rotated. For example, the two caster wheels are rotated in the forward or backward direction so that the mobile robot 100 travels forward or backward.

센서(130)는 본체(104)의 정면에 마련되어, 이동 로봇(100)이 이동하는 공간의 정보를 수집한다.The sensor 130 is provided on the front surface of the main body 104 and collects information on the space in which the mobile robot 100 moves.

센서(130)는 이동 로봇(100)에 장착될 수 있는 각종 레이더(Radar) 및 라이더(Lidar) 등을 포함할 수 있으며, 주변 영상을 촬영하는 카메라(Camera)를 포함할 수도 있다. 즉, 센서(130)는 이동 로봇(100)의 주변 환경에 대한 데이터를 수집하는 장치이면 충분하고, 제한은 없다.The sensor 130 may include various radar and lidar that can be mounted on the mobile robot 100 and may include a camera for capturing a surrounding image. That is, the sensor 130 may be an apparatus for collecting data on the surrounding environment of the mobile robot 100, and is not limited.

한편, 센서(130)가 반드시 이동 로봇(100)의 정면에 장착될 필요는 없으며, 다양한 위치에 마련될 수 있고, 복수 개로 마련될 수 있다.On the other hand, the sensor 130 does not necessarily need to be mounted on the front side of the mobile robot 100, and may be provided in various positions, or may be provided in plural.

도 3은 개시된 일 예에 따른 이동 로봇의 제어 블록도이다.FIG. 3 is a control block diagram of a mobile robot according to an example disclosed. FIG.

도 3을 참조하면, 개시된 이동 로봇(100)은 유저 인터페이스(120), 영상 획득부(130), 통신부(140), 저장부(180) 및 제어부(110)를 포함한다.Referring to FIG. 3, the mobile robot 100 includes a user interface 120, an image acquisition unit 130, a communication unit 140, a storage unit 180, and a control unit 110.

유저 인터페이스(120)는 이동 로봇(100)의 본체(104) 상면에 마련될 수 있으며, 사용자로부터 제어 명령을 수신하는 입력 버튼(121)과 이동 로봇(100)의 동작 정보를 표시하는 디스플레이(123)를 포함할 수 있다.The user interface 120 may be provided on the upper surface of the main body 104 of the mobile robot 100. The user interface 120 may include an input button 121 for receiving a control command from a user and a display 123 for displaying operation information of the mobile robot 100 ).

입력 버튼(121)은 이동 로봇(100)를 턴온 또는 턴오프시키는 전원 버튼, 이동 로봇(100)를 동작시키거나 정지시키는 동작/정지 버튼, 이동 로봇(100)를 충전 스테이션(103)으로 복귀시키는 복귀 버튼 등을 포함할 수 있다.The input button 121 includes a power button for turning the mobile robot 100 on or off, an operation / stop button for activating or deactivating the mobile robot 100, a return button for returning the mobile robot 100 to the charging station 103 A return button, and the like.

또한, 입력 버튼(121)은 사용자의 가압을 감지하는 푸시 스위치(push switch), 멤브레인 스위치(membrane) 또는 사용자의 신체 일부의 접촉을 감지하는 터치 스위치(touch switch)를 채용할 수 있다.The input button 121 may be a push switch, a membrane switch, or a touch switch that senses contact of a user's body part.

디스플레이(123)는 사용자가 입력한 제어 명령에 대응하여 이동 로봇(100)의 정보를 표시한다, 예를 들어, 디스플레이(123)는 이동 로봇(100)의 동작 상태, 전원의 상태, 사용자가 선택한 청소 모드, 충전 스테이션(102)으로의 복귀 여부 등을 표시할 수 있다.The display 123 displays the information of the mobile robot 100 in response to a control command inputted by the user. For example, the display 123 displays the operation state of the mobile robot 100, the state of the power source, A cleaning mode, a return to the charging station 102, and the like.

개시된 일 예에 따른 디스플레이(123)는 이동 로봇(100)의 인식하는 주변 공간에 대한 지도를 표시할 수 있다. 구체적으로 디스플레이(123)가 표시하는 지도는 사용자가 인식할 수 있는 수준의 지도를 의미한다. 즉, 개시된 이동 로봇은 사용자가 인식할 수 있는 수준의 지도를 제공함으로써, 사용자와 인터랙션(Interaction)을 수행한다.The display 123 according to the illustrated example may display a map of the perimeter space recognized by the mobile robot 100. Specifically, the map displayed by the display 123 means a map of a level that can be recognized by the user. That is, the disclosed mobile robot performs an interaction with a user by providing a level map that the user can recognize.

그러나, 이동 로봇(100)의 디스플레이(123)가 반드시 지도를 표시해야 하는 것은 아니며, 통신부(140)를 이용하여 사용자 단말(200)로 지도를 전송할 수도 있다.However, the display 123 of the mobile robot 100 does not necessarily need to display a map, and the map may be transmitted to the user terminal 200 using the communication unit 140. [

한편, 디스플레이(123)는 자체 발광이 가능한 발광 다이오드(Light Emitting Diode: LED)와 유기 발광 다이오드(Organic Light Emitting Diode: OLED) 또는 별도의 발원을 구비하는 액정 디스플레이(Liquid Crystal Display) 등을 채용하여 구성될 수 있으며, 제한은 없다.The display 123 may include a light emitting diode (LED), an organic light emitting diode (OLED), or a liquid crystal display having a separate source And there is no limitation.

도면에는 도시되지 않았으나, 실시 형태에 따라 유저 인터페이스(120)는 사용자로부터 제어 명령을 입력받고, 입력받은 제어 명령에 대응하는 동작 정보를 표시하는 터치 스크린 패널(Touch Screen Panel:TSP)을 포함할 수 있다.Although not shown in the drawing, according to an embodiment, the user interface 120 may include a touch screen panel (TSP) that receives a control command from a user and displays operation information corresponding to the received control command have.

터치 스크린 패널은 동작 정보 및 사용자가 입력할 수 있는 제어 명령을 표시하는 디스플레이, 사용자의 신체 일부가 접촉한 좌표를 검출하는 터치 패널(Touch Panel), 터치 패널이 검출한 접촉 좌표를 기초로 사용자가 입력한 제여 명령을 판단하는 터치 스크린 컨트롤러를 포함할 수 있다.The touch screen panel includes a display for displaying operation information and a control command that can be input by a user, a touch panel for detecting coordinates of a part of the user's body contacted, And a touch screen controller for determining the input command.

센서(130)는 이동 로봇(100)이 현재 위치하고 있는 공간에 관한 데이터를 획득하는 정보 획득 장치를 의미한다.The sensor 130 refers to an information acquiring device that acquires data on the space where the mobile robot 100 is currently located.

구체적으로 센서(130)는 스캔에 따라 측정 대상까지의 거리를 측정하여 이동 로봇(100)이 위치한 실제 환경의 거리 데이터를 획득하는 2D 센서 또는 3D센서일 수 있다. 또한, 센서(130)는 외부의 영상 이미지인 프레임을 포착(capture)하여 이를 디지털 신호로 변환해주는 CCD(Charge Coupled Device) 모듈이나 CMOS(Complementary Metal Oxide Semiconductor) 모듈일 수도 있다.Specifically, the sensor 130 may be a 2D sensor or a 3D sensor that measures the distance to the measurement target according to the scan and acquires distance data of the actual environment where the mobile robot 100 is located. The sensor 130 may be a CCD (Charge Coupled Device) module or a CMOS (Complementary Metal Oxide Semiconductor) module that captures a frame, which is an external image, and converts it into a digital signal.

한편, 센서(130)가 수집하는 공간에 대한 영상과 정보를 이용하여, 이동 로봇(100)은 스스로의 위치를 검출하기 위한 지도를 생성한다. 센서(130)가 수집하는 데이터에 기초하여 생성하는 1차적인 로봇 지도는 이하 다른 도면을 통해 구체적으로 후술한다.On the other hand, the mobile robot 100 generates a map for detecting its own position, using images and information about the space collected by the sensor 130. [ The primary robot map generated based on the data collected by the sensor 130 will be described later in detail with reference to other drawings.

통신부(140)는 이동 로봇(100)가 이하에서 후술할 시스템(1000)의 구성과 상호 연결을 수행하는 모듈을 의미한다. 즉, 이동 로봇(100)은 통신부(140)를 이용하여 외부 장치와 통신을 수행한다.The communication unit 140 refers to a module in which the mobile robot 100 interconnects with the configuration of the system 1000, which will be described below. That is, the mobile robot 100 performs communication with an external device using the communication unit 140. [

구체적으로 통신부(140)는 이동 로봇(100)이 1차적으로 생성하는 로봇 지도를 외부로 전송하고, 로봇 지도를 기초로 생성되는 2차적 지도를 외부에 요청할 수도 있다. 또한, 통신부(140)는 수신된 2차적 지도를 제어부(110)로 전달하고, 다시 사용자 단말(200)로 송신할 수도 있다. 이와 관련된 자세한 설명은 이하 다른 도면을 통해 후술한다.Specifically, the communication unit 140 may transmit a robot map primarily generated by the mobile robot 100 to the outside, and request a secondary map generated based on the robot map to the outside. Also, the communication unit 140 may transmit the received secondary map to the control unit 110, and may transmit the secondary map to the user terminal 200 again. A detailed description related thereto will be described later with reference to other drawings.

한편, 통신부(140)는 여러 통신 모듈로 구성될 수 있다. 예를 들어 통신부(140)는 근거리 통신 모듈, 무선 통신 모듈 및 유선 통신 모듈 중 적어도 하나를 포함할 수 있다.Meanwhile, the communication unit 140 may be composed of various communication modules. For example, the communication unit 140 may include at least one of a short-range communication module, a wireless communication module, and a wired communication module.

근거리 통신 모듈은 블루투스 모듈, 적외선 통신 모듈, RFID(Radio Frequency Identification) 통신 모듈, WLAN(Wireless Local Access Network) 통신 모듈, NFC 통신 모듈, 직비(Zigbee) 통신 모듈 등 근거리에서 무선 통신망을 이용하여 신호를 송수신하는 다양한 근거리 통신 모듈을 포함할 수 있다.The short-range communication module uses a wireless communication network, such as a Bluetooth module, an infrared communication module, an RFID (Radio Frequency Identification) communication module, a WLAN (Wireless Local Access Network) communication module, an NFC communication module, and a Zigbee communication module, And may include various short range communication modules for transmitting and receiving.

무선 통신 모듈은 와이파이(Wifi) 모듈, 와이브로(Wireless broadband) 모듈 외에도, GSM(global System for Mobile Communication), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), UMTS(universal mobile telecommunications system), TDMA(Time Division Multiple Access), LTE(Long Term Evolution) 등 다양한 무선 통신 방식을 지원하는 무선 통신 모듈을 포함할 수 있다.In addition to the Wifi module and the wireless broadband module, the wireless communication module may be a GSM (Global System for Mobile Communication), a CDMA (Code Division Multiple Access), a WCDMA (Wideband Code Division Multiple Access) ), Time Division Multiple Access (TDMA), Long Term Evolution (LTE), and the like.

무선 통신 모듈은 무선 신호를 송신하는 안테나 및 송신기(Transmitter)를 포함하는 무선 통신 인터페이스를 포함할 수 있다. 또한, 무선 통신 모듈은 제어부(110)의 제어에 따라 무선 통신 인터페이스를 통해 제어부(110)로부터 출력된 디지털 제어 신호, 예를 들어 1차적 로봇 지도를 아날로그 형태의 무선 신호로 변조하는 신호 변환 모듈을 더 포함할 수 있다. The wireless communication module may include a wireless communication interface including an antenna and a transmitter for transmitting wireless signals. The wireless communication module also includes a signal conversion module for modulating a digital control signal output from the control unit 110 through a wireless communication interface, for example, a primary robot map into an analog type wireless signal under the control of the controller 110 .

이러한 무선 통신 모듈은 외부 신호를 수신하는 안테나 및 수신기(Receiver)를 포함할 수 있다. 또한, 무선 통신 모듈은 아날로그 형태의 무선 신호를 디지털 제어 신호로 변,복조하는 신호 변환 모듈을 더 포함할 수 있다.Such a wireless communication module may include an antenna and a receiver for receiving an external signal. The wireless communication module may further include a signal conversion module that demodulates an analog type wireless signal into a digital control signal.

유선 통신 모듈은 이동 로봇(100)이 충전 스테이션(102)에 결합하면, 충전 스테이션(102)을 통해 유선으로 외부와 통신할 수 있다. 일 예로 유선 통신 모듈은 지역 통신(Local Area Network; LAN) 모듈, 광역 통신(Wide Area Network; WAN) 모듈 또는 부가가치 통신(Value Added Network; VAN) 모듈 등 다양한 유선 통신 모듈뿐만 아니라, USB(Universal Serial Bus), HDMI(High Definition Multimedia Interface), DVI(Digital Visual Interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 다양한 케이블 통신 모듈을 포함할 수 있다.When the mobile robot 100 is connected to the charging station 102, the wired communication module can communicate with the outside through the charging station 102 by wire. For example, the wired communication module may include various wired communication modules such as a local area network (LAN) module, a wide area network (WAN) module or a value added network (VAN) Bus, a High Definition Multimedia Interface (HDMI), a Digital Visual Interface (DVI), a recommended standard 232 (RS-232), a power line communication, or a plain old telephone service (POTS).

저장부(180)는 센서(130)가 수집한 데이터를 실 시간으로 저장하고, 이동 로봇(100)이 동작하는 환경의 지도, 이동 로봇(100)의 동작을 위한 운영 프로그램과 주행 패턴, 주행 과정에서 획득한 이동 로봇(100)의 위치 정보 및 장애물 정보 등을 저장하는 메모리이다.The storage unit 180 stores data collected by the sensor 130 in real time and displays a map of the environment in which the mobile robot 100 operates, an operation program for operating the mobile robot 100, And information about the position of the mobile robot 100 and obstacle information acquired from the robot 100.

구체적으로 저장부(180)는 제어부(110)가 생성한 로봇 지도 및 통신부(140)가 외부에서 수신한 지도를 저장한다. 외부에서 수신한 지도는 전술한 바와 같이 로봇 지도를 기초로 생성된 2차적 지도를 의미하고, 이 지도는 사용자에게 제공할 수 있는 수준의 지도를 의미한다. 지도와 관련된 자세한 설명은 다른 도면을 통해 후술한다.Specifically, the storage unit 180 stores the robot map generated by the control unit 110 and the map received from the communication unit 140 from the outside. The map received from the outside means a secondary map generated based on the robot map as described above, and this map means a map that can be provided to the user. A detailed description related to the map will be described later in the other drawings.

이 외에도 저장부(180)는 이동 로봇(100)의 동작을 제어하기 위한 제어 데이터, 이동 로봇(100)의 동작 제어 중 사용되는 기준 데이터, 이동 로봇(100)이 소정의 동작을 수행하는 중에 발생되는 동작 데이터, 이동 로봇(100)이 소정 동작을 수행하도록 디바이스(200)에 의해 입력된 설정 데이터 등과 같은 사용자 입력 정보가 저장될 수 있다. In addition, the storage unit 180 stores control data for controlling the operation of the mobile robot 100, reference data to be used during the operation control of the mobile robot 100, reference data used during the operation of the mobile robot 100 User input information such as operation data input by the mobile robot 100, setting data inputted by the device 200 so that the mobile robot 100 performs a predetermined operation, and the like can be stored.

한편, 제어부(180)는 아래에서 설명할 제어부(110)에 포함된 메모리(115)를 보조하는 보조 기억 장치로서 동작할 수 있으며, 이동 로봇(100)가 전원이 차단되더라도 저장된 데이터가 소멸되지 않는 비 휘발성 저장 매체로 구성될 수 있다.The controller 180 may operate as an auxiliary memory device for assisting the memory 115 included in the controller 110 to be described below. Even if the mobile robot 100 is powered off, Non-volatile storage media.

저장부(180)는 반도체 소자에 데이터를 저장하는 반도체 소자 드라이브(181), 자기 디스크에 데이터를 저장하는 자기 디스크 드라이브(183) 등을 포함할 수 있다.The storage unit 180 may include a semiconductor device drive 181 that stores data in a semiconductor device, a magnetic disk drive 183 that stores data on the magnetic disk, and the like.

주행부(160)는 이동 로봇(100)를 이동시키며, 도 2 에 도시된 바와 같이 주행 바퀴, 주행 바퀴를 구동시키는 구동 모터 등을 포함할 수 있다.The traveling unit 160 may include a traveling motor for driving the mobile robot 100 and a driving motor for driving the traveling wheels as shown in FIG.

주행부(160)는 제어부(110)의 제어 신호에 따라 구동 모터에 구동 전류를 공급하는 모터 구동 회로(미도시), 구동 모터의 회전력을 주행 바퀴에 전달하는 동력 전달 모듈(미도시), 구동 모터 또는 주행 바퀴의 회전 변위 및 회전 속도를 검출하는 회전 감지 센서(미도시) 등을 더 포함할 수 있다.The driving unit 160 includes a motor driving circuit (not shown) for supplying a driving current to the driving motor in response to a control signal from the control unit 110, a power transmission module (not shown) for transmitting the rotational force of the driving motor to the traveling wheels, A rotation detecting sensor (not shown) for detecting the rotational displacement and the rotational speed of the motor or the traveling wheel, and the like.

한편, 주행부(160)가 반드시 바퀴 등에 한정되는 것은 아니며, 다리형 이동 로봇의 경우 주행부(160)는 다리를 동작시키는 다른 모듈을 포함할 수 있다.Meanwhile, the traveling unit 160 is not necessarily limited to a wheel or the like, and in the case of a legged mobile robot, the traveling unit 160 may include another module for operating the legs.

전원부(170)는 이동 로봇(100)에 동력을 공급하는 구성을 의미한다. 앞서 언급한 바와 같이 전원부(170)는 주행부(160) 및 그 외 본체(101)를 구동시키기 위한 각 부하와 전기적으로 연결되어 구동 전원을 공급하는 배터리를 포함할 수 있다 The power supply unit 170 supplies power to the mobile robot 100. As described above, the power supply unit 170 may include a battery that is electrically connected to each load for driving the traveling unit 160 and the main body 101 to supply driving power

한편, 전원부(170)는 다양한 형태의 에너지를 공급하는 구성이면 충분하고, 제한이 없다.The power supply unit 170 may be configured to supply various types of energy, and is not limited.

제어부(110)는 이동 로봇(100)의 동작을 총괄적으로 제어한다.The control unit 110 collectively controls the operation of the mobile robot 100.

구체적으로, 제어부(110)는 이동 로봇(100)에 포함된 각종 구성 장치와 제어부(110) 사이에서 데이터 출입을 매개하는 입출력 인터페이스(117), 프로그램 및 데이터를 기억하는 메모리(115), 영상 처리를 수행하는 그래픽 프로세서(113) 및 메모리(113)에 기억된 프로그램 및 데이터에 따라 연산 동작을 수행하고 이동 로봇(100)의 주행 공간에 대한 로봇 지도를 생성하는 메인 프로세서(111), 입출력 인터페이스(117), 메모리(115), 그래픽 프로세서(113) 및 메인 프로세서(111) 사이의 데이터 송수신의 통로가 되는 시스템 버스(119)를 포함할 수 있다.Specifically, the control unit 110 includes an input / output interface 117 that mediates data input / output between various constituent devices included in the mobile robot 100 and the control unit 110, a memory 115 that stores programs and data, A main processor 111 for performing an arithmetic operation according to programs and data stored in the memory 113 and generating a robot map for the traveling space of the mobile robot 100, an input / output interface And a system bus 119 serving as a path for data transmission and reception between the main processor 111 and the memory 115, the graphics processor 113 and the main processor 111. [

입출력 인터페이스(117)는 센서(130)로부터 수집한 데이터 등을 수신하고, 이를 시스템 버스(119)를 통하여 메인 프로세서(111), 그래픽 프로세서(113), 메모리(115) 등으로 전송한다. 또한, 입출력 인터페이스(117)는 메인 프로세서(111)가 출력하는 각종 제어 신호를 주행부(160) 및 이동 로봇(100)의 각종 제어 구성에 전달할 수 있다.The input / output interface 117 receives data and the like collected from the sensor 130 and transmits it to the main processor 111, the graphic processor 113, the memory 115 and the like via the system bus 119. The input / output interface 117 can transmit various control signals output from the main processor 111 to various control structures of the driving unit 160 and the mobile robot 100.

메모리(115)는 이동 로봇(100)의 동작을 제어하기 위한 제어 프로그램 및 제어 데이터를 저장부(180)로부터 불러와 기억하거나, 센서(130)가 획득한 데이터에 기초하여 그래픽 프로세서(113)가 생성한 지도 및 결과 등을 임시로 기억할 수 있다.The memory 115 stores a control program and control data for controlling the operation of the mobile robot 100 from the storage unit 180 and stores the control program and control data in the memory 115 The generated maps and results can be temporarily stored.

메모리(115)는 S램, D랩 등의 휘발성 메모리를 포함할 수 있다. 다만, 이에 한정되는 것은 아니며, 경우에 따라서 메모리(115)는 플래시 메모리, 롬(Read Only Memory), 이피롬(Erasable Programmable Read Only Memory: EPROM), 이이피롬(Electrically Erasable Programmable Read Only Memory: EEPROM) 등의 비휘발성 메모리를 포함할 수도 있다. The memory 115 may include a volatile memory such as an SRAM or a D-RAM. The memory 115 may be a flash memory, a read only memory (EPROM), an erasable programmable read only memory (EPROM), an electrically erasable programmable read only memory (EEPROM) Volatile memory such as < / RTI >

그래픽 프로세서(113)는 센서(130)가 획득한 데이터를 변환시켜 생성되는 로봇 지도, 예를 들어 격자 지도를 생성한다. 그래픽 프로세서(113)는 생성된 격자 지도를 메모리(115) 또는 저장부(180)에 저장할 수 있는 포맷으로 변환하거나, 영상의 해상도 또는 크기를 변경할 수 있다.The graphics processor 113 generates a robot map, e.g., a grid map, generated by transforming the data acquired by the sensor 130. The graphics processor 113 can convert the generated grid map into a format that can be stored in the memory 115 or the storage unit 180, or change the resolution or size of the image.

메인 프로세서(111)는 메모리(115)에 저장된 프로그램 및 데이터에 따라 센서(130)의 감지 결과를 처리하고, 주행부(160)를 제어하며, 이동 로봇(100)의 위치를 보정하거나 이에 따른 지도를 보정하기 위한 연산동작을 수행한다. 또한, 메인 프로세서(111)는 통신부(140)가 전달하는 2차적 지도를 사용자 단말(200) 등으로 전달한다.The main processor 111 processes the detection result of the sensor 130 according to programs and data stored in the memory 115 and controls the traveling unit 160 to correct the position of the mobile robot 100, Is performed. In addition, the main processor 111 transmits a secondary map transmitted from the communication unit 140 to the user terminal 200 or the like.

이하에서 설명할 메인 프로세서(111)의 처리나 연산과정은 제어부(110)의 처리나 연산과정으로 해석할 수 있다. The process and operation process of the main processor 111, which will be described below, can be interpreted as a process or an operation process of the control unit 110. [

한편, 개시된 이동 로봇은 개시된 구성 이외에도 다양한 구성을 포함할 수 있으며, 제한은 없다.On the other hand, the disclosed mobile robot may include various configurations other than the disclosed configurations, and there is no limitation.

도 4는 개시된 일 예에 따른 이동 로봇의 동작을 설명하기 위한 순서도이다.4 is a flowchart illustrating an operation of the mobile robot according to an embodiment of the present invention.

도 4를 참조하면, 개시된 일 예에 따른 이동 로봇(100)은 사용자의 입력 명령에 의해서 자율적으로 주행한다(510).Referring to FIG. 4, the mobile robot 100 according to an embodiment of the present invention autonomously travels by an input command of a user (510).

이동 로봇(100)이 자율적으로 주행하기 위해서는 기본적으로 스스로의 위치를 인식하는 것이 필요하다. 위치 인식을 위해서 이동 로봇(100)은 센서(130)를 이용하여 주행 공간의 데이터를 수집하고, 데이터를 기초하여 지도를 생성한다(511).In order for the mobile robot 100 to autonomously travel, it is basically necessary to recognize its own position. In order to recognize the position, the mobile robot 100 uses the sensor 130 to collect data of the traveling space and generates a map based on the data (511).

이동 로봇(100)이 생성하는 지도(이하 제 1지도)는 격자 지도(도 5b 참조)와 같이 사용자가 인식할 수 있는 수준의 지도가 아니다. 제 1지도는 단순히 이동 로봇(100) 스스로 자신의 위치를 인식하는데 사용되기 때문에 격자 지도에서 외곽선만을 추출하는 등의 간소화 처리를 거친다.The map generated by the mobile robot 100 (hereinafter, referred to as a first map) is not a level map recognizable by the user, such as a grid map (see FIG. 5B). Since the first map is simply used to recognize the position of the mobile robot 100 itself, the first map is simplified by extracting only the outline from the grid map.

따라서 제 1지도는 이동 로봇(100)이 주행하는 실제의 주행 공간과 큰 차이가 있으며, 사용자가 알아보기 어렵다. 사용자가 인식하는 실제 공간과 제 1지도와의 차이는 사용자와 이동 로봇(100)간의 인터랙션(Interaction)을 방해하고, 사용자가 이동 로봇(100)을 제어할 때 어려움을 야기한다. Therefore, the first map is significantly different from the actual traveling space traveled by the mobile robot 100, and is difficult to be recognized by the user. The difference between the actual space recognized by the user and the first map interferes with the interaction between the user and the mobile robot 100 and causes difficulties when the user controls the mobile robot 100.

일 예로 사용자는 디바이스(101), 구체적으로 사용자 단말(200) 등에 표시될 수 있는 인식 가능한 정도의 지도를 이용하여, 이동 로봇(100)이 어느 지점으로 이동하도록 명령할 수 있다. For example, the user can instruct the mobile robot 100 to move to a certain point using a recognizable map that can be displayed on the device 101, specifically, the user terminal 200 or the like.

그러나 만약 이동 로봇(100)이 제 1지도를 사용자에게 제공하면, 사용자는 제 1지도를 인식할 수 없다. 또한, 제 1지도는 사용자가 실질적으로 인식하는 공간과 상이하므로 사용자가 제 1지도를 통해 입력한 명령은 사용자가 실제 원하는 이동 로봇(100)의 이동 지점과 상이할 수 있다.However, if the mobile robot 100 provides the first map to the user, the user can not recognize the first map. In addition, since the first map is different from the space actually recognized by the user, the command inputted by the user through the first map may be different from the movement point of the desired mobile robot 100 by the user.

이러한 문제점에 의해서 종래 이동 로봇(100)은 스스로 생성한 제 1지도를 사용자에게 공개하지 않았다. 그러나 개시된 일 예에 따른 이동 로봇(100)은 사용자와의 인터랙션을 방해하는 제 1지도를 개량하여 사용자가 인식할 수 있는 수준의 지도(이하 제 2지도)를 제공함으로써 전술한 문제점을 해결한다.Due to such a problem, the conventional mobile robot 100 did not disclose the first map generated by itself to the user. However, the mobile robot 100 according to one embodiment of the present invention solves the above-mentioned problem by providing a map (hereinafter, referred to as a second map) that can be recognized by the user by improving the first map that interferes with the interaction with the user.

제 2지도는 심층 학습을 통해서 생성된다(512).The second map is generated through in-depth learning (512).

심층 학습(Deep Learning)은 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화(abstractions, 다량의 데이터나 복잡한 자료들 속에서 핵심적인 내용 또는 기능을 요약하는 작업)를 시도하는 기계학습(machine learning)에 관한 알고리즘의 집합을 의미한다. Deep Learning is a combination of several nonlinear transformation techniques that allows for a high level of abstraction (machine learning) that attempts to summarize key content or functions in large amounts of data or complex data, And the like.

구체적으로 심층 학습은 어떠한 학습 데이터를 컴퓨터가 이해할 수 있는 형태(예를 들어 이미지의 경우는 픽셀(Pixel)정보를 열 벡터로 표현하는 등)로 표현(Representation)하고 이를 학습에 적용하기 위해 많은 연구(어떻게 하면 더 좋은 표현기법을 만들고 또 어떻게 이것들을 학습할 모델을 만들지에 대한)에 대한 학습 기법으로, DNN(Deep Neural Networks) 및DBN(Deep Belief Networks)등을 포함한다.Specifically, in-depth learning is represented by a form in which the learning data can be understood by the computer (for example, in the case of an image, pixel information is represented by a column vector), and many studies (How to make better expression techniques and how to model them). It includes Deep Neural Networks (DNN) and Deep Belief Networks (DBN).

개시된 이동 로봇 및 이동 로봇을 포함하는 시스템은 이동 로봇이 생성한 제 1지도 및 실제 공간에 관한 설계지도(심층학습의 학습 데이터에 해당)를 비교하고, 제 1지도로부터 제 2지도를 유추하는 방법을 학습한다. 이후 이동 로봇을 포함하는 시스템은 이동 로봇(100)이 새로운 제 1지도를 제공할 때, 그와 관련된 제 2지도를 생성한다. A system including the mobile robot and the mobile robot disclosed herein compares a design map (corresponding to learning data of in-depth learning) about the first map and the actual space generated by the mobile robot, and a method of inferring the second map from the first map . Then, the system including the mobile robot generates a second map associated with the mobile robot 100 when the mobile robot 100 provides a new first map.

제 2지도를 생성하는 심층 학습의 일 예는 CNN(Convolutional Neural Networks)이 있다. CNN에 관한 구체적인 설명은 도 9에서 후술한다.One example of in-depth learning to generate a second map is CNN (Convolutional Neural Networks). A detailed description of CNN will be described later with reference to FIG.

다시 도 4를 참조하면, 이동 로봇(100)은 심층 학습에 의해 생성된 제 2지도를 표시하거나 사용자 단말(200) 또는 디바이스(101)로 전달한다(513).Referring again to FIG. 4, the mobile robot 100 displays the second map generated by the in-depth learning or transmits it to the user terminal 200 or the device 101 (513).

제 2지도는 사용자가 인식할 수 있는 정도의 다양한 정보를 포함하는 사용자 지도를 의미한다. 사용자는 이동 로봇(100)이 제공하는 제 2지도를 기초로 이동 로봇(100)을 제어하고, 이동 로봇(100)은 제 2지도에 기초하여 자율 주행을 실시함으로써, 사용자와의 인터랙션을 강화한다The second map means a user map including various information that the user can perceive. The user controls the mobile robot 100 based on the second map provided by the mobile robot 100 and the mobile robot 100 performs the autonomous travel based on the second map to enhance the interaction with the user

도 5a는 이동 로봇의 실제 주행 공간을 간략하게 도시한 것이고, 도 5b는 이동 로봇이 생성한 격자 지도를 도시한 것이며, 도 5c는 격자지도를 간소화한 제 1지도를 도시한 것이다. 중복되는 설명을 피하기 위해서 이하 함께 설명한다.FIG. 5A is a schematic view showing an actual traveling space of the mobile robot, FIG. 5B is a grid map generated by a mobile robot, and FIG. 5C is a first map in which a grid map is simplified. To avoid redundant explanations, the following will be described together.

도 5a를 먼저 참조하면, 개시된 이동 로봇(100)은 사용자가 머무는 주변 환경(1)에서 특정 지점에 위치할 수 있다. 일 예에 따른 이동 로봇(100)은 청소 로봇일 수 있으며, 주변 환경(1)은 아파트의 내부일 수 있다.Referring first to FIG. 5A, the disclosed mobile robot 100 may be located at a specific point in the surrounding environment 1 where the user is staying. The mobile robot 100 according to an example may be a cleaning robot, and the surrounding environment 1 may be an interior of an apartment.

이동 로봇(100)은 사용자의 명령에 기초하여 도 5a에 도시된 굵은 선을 따라 이동하면서 청소 작업을 수행할 수 있다. 이동 로봇(100)이 사용자의 명령에 따라 자율 주행을 수행하기 위해서는 주변 환경(1)에 대한 지도를 생성하고, 자신의 위치를 파악해야 한다.The mobile robot 100 can perform a cleaning operation while moving along the bold line shown in FIG. 5A based on a user's command. In order for the mobile robot 100 to perform an autonomous running according to a user's command, a map for the surrounding environment 1 must be generated and its position should be grasped.

생성하는 지도는 이동 로봇(100)이 주행을 실시하면서 센서(130)에 의해 수집하는 데이터에 기초한다.The generated map is based on data collected by the sensor 130 while the mobile robot 100 is traveling.

이동 로봇(100)은 수집한 데이터에 기초하여 도 5b에서 도시된 격자 지도(2)를 생성한다. 생성된 격자 지도(2)를 주변 환경(1)과 비교하면 그 위치 및 구조가 상이하다.The mobile robot 100 generates the grid map 2 shown in Fig. 5B based on the collected data. When the generated grid map 2 is compared with the surrounding environment 1, its position and structure are different.

이는 격자 지도(2)가 이동 로봇(100)이 실질적으로 주행한 영역에서 한정되어 수집된 데이터를 기초로 하고 있으며, 이동 로봇(100)에 마련된 센서(130)의 성능 부족에 기인하다. 즉, 이동 로봇(100)이 주행하는 실제 주변 환경(1)과 이동 로봇이 인식하는 공간에 대한 지도는 서로 다를 수 있다.This is due to the lack of performance of the sensor 130 provided in the mobile robot 100 because the grid map 2 is based on collected data limited in the region where the mobile robot 100 actually traveled. That is, the map of the actual surrounding environment 1 traveled by the mobile robot 100 and the space recognized by the mobile robot may be different from each other.

한편, 이동 로봇(100)은 격자 지도(2)를 간소화하여 도 5c와 같은 로봇 지도(3)를 생성한다. 구체적으로 로봇 지도(3)는 격자 지도(2)의 외곽선을 추출하여 생성될 수 있다. 일반적인 이동 로봇(100)는 로봇 지도(3)와 같은 제 1지도를 통해서 자신의 위치를 인식한다.On the other hand, the mobile robot 100 simplifies the grid map 2 and generates the robot map 3 as shown in Fig. 5C. Specifically, the robot map 3 can be generated by extracting the outline of the grid map 2. [ The general mobile robot 100 recognizes its position through a first map such as the robot map 3. [

만약 로봇 지도(3)와 같은 제 1지도가 사용자에게 제공된다면, 사용자는 실제 환경(1)과 큰 차이를 보이는 로봇 지도(3)를 알아보기 어렵고, 로봇 지도(3)를 통해서 이동 로봇(100)과 인터랙션을 수행하는 것은 현실적으로 불가능하다.If a first map such as the robot map 3 is provided to the user, it is difficult for the user to know the robot map 3 showing a large difference from the actual environment 1, It is practically impossible to perform the interaction with the user.

따라서 개시된 이동 로봇(100)는 심층 학습을 통해 도 6에서 도시된 바와 같은 제 2지도를 사용자에게 제공한다.Thus, the disclosed mobile robot 100 provides the user with a second map as shown in Fig. 6 through in-depth learning.

도 6은 일 예에 따른 이동 로봇이 사용자에게 제공하는 평면도를 도시한 것이다.FIG. 6 is a plan view of a mobile robot according to an exemplary embodiment of the present invention.

일 예에 따른 제 2지도는 도 6과 같이 평면도(Plane Figure, 4) 형태를 포함할 수 있다. 구체적으로 평면도(4)는 각 공간에 명칭 및 수치를 포함한다. 즉 평면도(4)는 침실(4a, 4b), 거실(4c), 발코니(Balcony, 4d) 및 복도(4e)과 같은 공간에 의미를 부여하는 명칭을 포함하고, 각 공간의 크기를 알 수 있는 여러 수치를 포함할 수 있다. 또한, 평면도(4)는 문의 위치, 통로의 위치 등을 포함할 수도 있다.The second map according to an example may include a plan view (4) as shown in FIG. Specifically, the plan view 4 includes a name and a numerical value in each space. That is, the floor plan 4 includes a name giving meaning to spaces such as the bedroom 4a and 4b, the living room 4c, the balcony 4d, and the hallway 4e, It can contain multiple numbers. Also, the plan view 4 may include the position of the door, the position of the passage, and the like.

개시된 이동 로봇(100)은 도 6과 같은 평면도(4)를 사용자에게 제공하고, 사용자는 평면도(4)와 같은 제 2지도를 이용하여 이동 로봇(100)의 위치 및 필요한 서비스를 실행하도록 이동 로봇(100)에게 정확한 명령을 내릴 수 있다.The mobile robot 100 shown in FIG. 6 provides the user with a plan view 4 as shown in FIG. 6, and the user uses the second map such as the plan view 4 to move the mobile robot 100, (100). ≪ / RTI >

한편, 개시된 이동 로봇(100)은 제 1지도로부터 평면도(6)와 같은 제 2지도를 사용자에게 제공한다. 제 2지도는 심층 학습을 통해 생성된다. 심층 학습에 관한 구체적인 설명은 이하 도 7 내지 도 10을 통해 후술한다. On the other hand, the disclosed mobile robot 100 provides the user with a second map such as the floor plan 6 from the first map. The second map is generated through in-depth learning. A detailed description of the in-depth learning will be described later with reference to FIG. 7 to FIG.

도 7은 개시된 일 예에 따른 시스템에 관한 구성을 설명하기 위한 도면이다.FIG. 7 is a diagram for explaining a configuration of a system according to an example disclosed. FIG.

도 7을 참조하면, 일 예에 따른 시스템(1000)은 이동 로봇(100), 이동 로봇(100)을 제어하는 디바이스(102), 이동 로봇(100)이 제공하는 제 1지도를 수신하고, 심층 학습을 통해 제 2지도를 생성하는 심층 학습기(300), 생성한 제 2지도를 제공받아 이동 로봇과 사용자가 인터랙션을 수행하도록 연결하는 사용자 단말(200) 및 전술한 각 구성을 연결시켜 주는 서버(400)를 포함한다.7, a system 1000 according to an example includes a mobile robot 100, a device 102 for controlling the mobile robot 100, a first map provided by the mobile robot 100, An in-depth learning machine 300 that generates a second map through learning, a user terminal 200 that receives the generated second map and connects the mobile robot to perform an interaction with the user, and a server 400).

구체적으로 이동 로봇(100)은 전술한 바와 같이, 스스로의 위치를 인식하기 위한 제 1지도를 생성한다.Specifically, the mobile robot 100 generates a first map for recognizing its own position, as described above.

제 1지도는 다양할 수 있으며, 사용자에게 제공하기 부족한 정도인 격자 지도(2) 등을 포함할 수 있다.The first map may be various and may include a grid map 2 which is insufficient to provide to the user.

이동 로봇(100)은 생성한 제 1지도를 통신부(140)를 통해 심층 학습기(300) 또는 서버(400)로 전달한다. The mobile robot 100 transmits the generated first map to the deep layer learning device 300 or the server 400 through the communication unit 140.

심층 학습기(300)는 심층 학습을 통해 학습한 후, 제공되는 제 1지도를 제 2지도로 변경하는 장치를 의미한다.The in-depth learning device 300 means a device that learns through in-depth learning and then changes the provided first map to a second map.

심층 학습기(300)는 심층 학습에 필요한 정보를 서버(400)등을 통해서 제공받아 미리 심층 학습을 수행한다.The in-depth learning device 300 receives information necessary for in-depth learning through the server 400 or the like, and performs in-depth learning in advance.

일 예로 이동 로봇(100)이 사용자에게 판매되면서, 제조사는 이동 로봇(100)이 주행하는 사용자의 공간에 대한 평면도(4)를 미리 입수하여 제공할 수 있다. 이동 로봇(100)은 스스로 주행하면서 생성한 제 1 지도를 제공하고, 제조사는 서버를 통해 이동 로봇(100)이 주행하는 공간에 대한 평면도(4)를 심층 학습기(300)에 전달할 수 있다. 즉, 심층 학습기(300)는 심층 학습에 필요한 데이터 쌍(제 1지도와 제 1지도와 관련된 제 2지도)를 수집한다.For example, while the mobile robot 100 is sold to a user, the manufacturer can obtain and provide a floor plan 4 of the space of the user traveling by the mobile robot 100 in advance. The mobile robot 100 provides a first map generated while traveling by itself and the manufacturer can transmit the floor plan 4 of the space where the mobile robot 100 travels through the server to the deep learning machine 300. [ That is, the in-depth learning device 300 collects a pair of data (a first map and a second map related to the first map) necessary for in-depth learning.

심층 학습기(300)는 제공되는 여러 데이터 쌍을 기초로 심층 학습을 수행하고, 제 1지도로부터 평면도를 생성하는 방법을 학습할 수 있다. The in-depth learning device 300 can learn a method of performing in-depth learning based on various data pairs provided and generating a floor plan from the first map.

학습을 마친 심층 학습기(300)는 이동 로봇(100)이 새로이 전달하는 사용자 공간에 대한 정보, 즉 제 1지도를 기초로 제 1지도와 매칭되는 제 2지도를 생성한다.After the learning, the in-depth learning device 300 generates information on the user space newly transferred by the mobile robot 100, that is, a second map that matches the first map based on the first map.

심층 학습기(300)는 생성된 제 2지도를 이동 로봇(100) 또는 서버(400)로 전달하고, 제 2지도는 사용자 단말(200) 또는 디바이스(101)를 거처 사용자에게 제공된다.The in-depth learning machine 300 delivers the generated second map to the mobile robot 100 or the server 400 and the second map is provided to the user via the user terminal 200 or the device 101. [

한편, 심층 학습기(300)는 CNN과 같은 알고리즘을 통해 지도 영상을 분류하고 학습할 수 있다. 심층 학습과 관련된 구체적인 사항은 도 10을 통해 후술한다.Meanwhile, the in-depth learning device 300 can classify and learn map images through an algorithm such as CNN. Specific details related to the in-depth learning will be described later with reference to FIG.

사용자 단말(200)은 사용자와 시스템(1000)을 연결시켜 주는 장치를 의미하며, 제 2지도를 제공하고 사용자의 입력 명령을 수신하는 역할을 한다.The user terminal 200 is a device for connecting a user to the system 1000, and provides a second map and receives a user's input command.

사용자 단말(200)은 네트워크를 통해 서버(400)에 접속할 수 있는 컴퓨터나 휴대용 단말기로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop), 태블릿 PC, 슬레이트 PC 등을 포함하고, 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), WiBro(Wireless Broadband Internet) 단말, 스마트 폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치와 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD) 등과 같은 웨어러블 장치를 포함할 수 있다.The user terminal 200 may be implemented as a computer or a portable terminal that can access the server 400 through a network. Here, the computer includes, for example, a notebook computer, a desktop computer, a laptop PC, a tablet PC, a slate PC, and the like, each of which is equipped with a WEB Browser. (PDS), a Personal Digital Assistant (PDA), an International Mobile Telecommunication (IMT), and a Personal Digital Assistant (PDS) -2000, Code Division Multiple Access (CDMA) -2000, W-CDMA (W-CDMA), WiBro (Wireless Broadband Internet) terminals, smart phones A wireless communication device and a wearable device such as a watch, a ring, a bracelet, a bracelet, a necklace, a pair of glasses, a contact lens, or a head-mounted-device (HMD).

디바이스(101)는 전술한 바와 같이, 이동 로봇(100)의 이동을 제어하거나 이동 로봇(100)의 작업을 수행하기 위한 제어 명령을 무선으로 송신하는 원격 제어 장치를 의미한다.The device 101 refers to a remote control device for wirelessly transmitting control commands for controlling the movement of the mobile robot 100 or for performing operations of the mobile robot 100, as described above.

일 예에 따른 디바이스(101)는 이동 로봇(100)을 제어하는 디스플레이(Display, 미도시)를 더 포함할 수 있다. 이러한 디스플레이는 심층 학습기(300) 또는 서버(400)로부터 제 2지도를 표시하고, 사용자의 터치를 입력받는 터치 스크린(TSP)을 포함할 수도 있다. 즉, 사용자는 디바이스(101)에 표시된 제 2지도를 이용하여 이동 로봇(100)을 편리하게 제어할 수 있다.The device 101 according to an example may further include a display (not shown) for controlling the mobile robot 100. Such a display may include a touch screen (TSP) that displays a second map from the in-depth learning device 300 or the server 400, and receives a user's touch. That is, the user can conveniently control the mobile robot 100 using the second map displayed on the device 101.

디바이스(101)와 관련하여 도 1 내지 도 2와 중복되는 사항에 대한 설명은 생략한다.Description of elements overlapping with those of Figs. 1 and 2 with respect to the device 101 will be omitted.

서버(400)는 네트워크를 통해 여러 데이터를 저장하거나 전달하는 매개체의 역할을 하는 장치를 의미한다.The server 400 refers to a device that serves as a medium for storing or transmitting various data through a network.

서버(400)는 심층 학습기(300)가 심층 학습에 필요한 학습 데이터를 수집하고, 제공하는 역할을 한다. 심층 학습은 학습 데이터가 많을수록 그 정확성이 증가할 수 있다. 따라서 개시된 서버(400)는 시스템(1000)의 여러 구성을 네트워크로 연결하고, 심층 학습에 필요한 데이터를 수집할 수 있다.The server 400 plays the role of the in-depth learning device 300 collecting and providing learning data required for in-depth learning. The more learning data, the more accurate the depth learning can be. Thus, the disclosed server 400 can connect various configurations of the system 1000 to the network, and collect data necessary for in-depth learning.

일 예에 따른 서버(400)는 클라우드(Cloud) 서버를 포함할 수 있다. 클라우드 서버는 가상 사설 서버(Virtual private server)를 의미하며, 하나의 물리적 서버를 나누어 여러 개의 가상 서버로 사용하는 가상화 방법의 한 형태이다. 이러한 클라우드 서버는 이동 로봇(100)이 전달하는 제 1지도에서 심층 학습에 의해 생성된 제 2지도를 저장하고, 이동 로봇(100)에게 다시 제 2지도를 제공한다.The server 400 according to one example may include a cloud server. A cloud server is a virtual private server. It is a form of virtualization that divides one physical server into several virtual servers. The cloud server stores the second map generated by the in-depth learning on the first map transmitted from the mobile robot 100, and provides the second map to the mobile robot 100 again.

한편, 심층 학습기(300)는 반드시 구성으로 한정될 필요는 없고, 심층 학습을 수행하는 알고리즘 또는 로직으로 구현될 수도 있다. 따라서 개시된 다른 실시예에 따른 시스템(1000)애서 서버(400)가 심층 학습을 수행하는 알고리즘을 포함할 수 있으며, 서버(400)가 이동 로봇(100)이 제공하는 제 1지도를 심층 학습을 통해 제 2지도를 생성할 수도 있다.On the other hand, the in-depth learning device 300 is not necessarily limited to the configuration, and may be implemented with an algorithm or logic for performing in-depth learning. Accordingly, the server 400 in the system 1000 according to another disclosed embodiment may include an algorithm for performing in-depth learning, and the server 400 may perform a first map provided by the mobile robot 100 through deep learning A second map may be generated.

시스템(1000)은 앞서 설명한 구성 이외에 다른 구성을 포함할 수도 있으며, 제한은 없다.The system 1000 may include other configurations other than the configurations described above, but is not limited thereto.

도 8은 일 예에 따른 시스템의 동작을 설명하기 위한 순서도이다.8 is a flowchart for explaining the operation of the system according to an example.

편의를 위해서 심층 학습기(300)를 주체로 심층 학습의 통해 제 2지도를 생성하는 방법을 구체적으로 설명한다. 도 8을 참조하면, 심층 학습기(300)는 이동 로봇(100) 및 서버(400) 등으로부터 심층 학습에 필요한 학습 데이터를 수집한다(520).For convenience, a method of generating the second map through in-depth learning with the in-depth learning device 300 as a main body will be described in detail. Referring to FIG. 8, the in-depth learning device 300 collects learning data necessary for in-depth learning from the mobile robot 100 and the server 400 or the like (520).

학습 데이터는 도 7에서 설명한 데이터 쌍을 포함한다. 여기서 데이터 쌍은 이동 로봇(100)이 주행하면서 생성한 제 1지도 및 주행 공간에 대한 정보를 포함하면서 사용자에게 제공할 수 있는 정도의 제 2지도를 의미한다. The learning data includes the data pairs described in Fig. Here, the data pair means a second map that can be provided to the user while including information on the first map and the traveling space generated while the mobile robot 100 is traveling.

결국 심층 학습기(300)가 생성하여 이동 로봇(100)에 전달하는 제 2지도는 학습 데이터에 포함된 수많은 제 2지도를 기초로 생성된다.The second map generated by the in-depth learning device 300 and transmitted to the mobile robot 100 is generated on the basis of a plurality of second maps included in the learning data.

심층 학습기(300)는 수많은 데이터 쌍을 서로 비교하여 핵심적인 특징을 필터링하고, 추상화 작업을 거쳐 제1 지도와 제 2지도를 분류하고, 제 1지도로부터 제 2지도를 생성해내는 방법을 학습한다(521).The in-depth learning device 300 learns how to compare a number of data pairs to filter key features, classify the first map and the second map through an abstract operation, and generate a second map from the first map (521).

전술한 바와 같이 여러 이동 로봇(100)은 특정 건설사가 건설한 아파트 내부를 주행할 수 있다. 생성되는 제 1지도는 다양할 수 있지만, 건설사의 설계도와 관계되는 특징점이 도출될 수 있다. 심층 학습기(300)는 이러한 특징점을 학습하고, 다음 번 이동 로봇(100)이 전달하는 제 1지도에서 학습한 특징점이 발견되면, 심층 학습기(300)는 제 1지도에서 건설사의 설계도를 유추할 수 있다.As described above, the plurality of mobile robots 100 can travel within an apartment constructed by a specific construction company. The first map to be generated may be various, but minutia points related to the design of the construction company can be derived. The in-depth learning device 300 learns the feature points and if the feature points learned in the first map transmitted by the next mobile robot 100 are found, the in-depth learning device 300 can infer the design plan of the construction company from the first map have.

심층 학습이 완료된 심층 학습기(300)는 이동 로봇(100)이 현재 주행하는 공간에 대해서 생성한 제 1지도로부터 제 2지도를 생성한다(522).The in-depth learning device 300 that has completed the in-depth learning generates a second map from the first map generated for the space currently being traveled by the mobile robot 100 (522).

생성된 제 2지도는 수많은 학습 데이터에 포함된 제 2지도에서 도출될 수 있으며, 여러 수많은 형태로 변경될 수 있다. 학습 데이터의 크기가 다양할수록 심층 학습의 횟수가 증가할수록 심층 학습기(300)가 생성된 제 2지도는 실제 주행공간과 일치할 가능성이 커진다.The generated second map can be derived from a second map included in a lot of learning data, and can be changed into a number of various forms. As the size of the learning data increases, as the number of times of in-depth learning increases, the possibility that the second map generated by the in-depth learning device 300 matches the actual driving space increases.

심층 학습기(300)는 이동 로봇(100)이 요청하면, 제 2지도를 이동 로봇(100)으로 전달한다. 이동 로봇(100)은 제 2지도를 사용자에게 전달하고, 사용자와 인터랙션을 수행한다(523).The in-depth learning machine 300 transmits the second map to the mobile robot 100 when the mobile robot 100 requests it. The mobile robot 100 transmits the second map to the user and performs an interaction with the user (523).

이동 로봇(100)과 사용자가 제 2지도를 통해 실행하는 인터랙션은 다양할 수 있다. 이와 관련된 구체적인 실시예는 도 11 내지 도 12를 통해 후술한다.The interaction performed by the mobile robot 100 and the user through the second map may be various. A specific embodiment related to this will be described later with reference to FIG. 11 to FIG.

도 9는 심층 학습에 관한 일 예를 설명하기 위한 순서도이다.9 is a flowchart for explaining an example of in-depth learning.

도 9를 참조하면, 심층 학습기(300)는 2D 평면도를 수집한다(530). 수집하는 평면도는 도 6에서 도시된 제 2지도와 같은 형태 뿐만 아니라 다양한 2차원 공간,지도 및 위치 데이터를 포함한다.Referring to FIG. 9, the depth learning machine 300 collects a 2D floor plan (530). The floor plan to be collected includes various second-dimensional space, map and position data as well as the second map-like form shown in Fig.

심층 학습기(300)는 수집된 2D 평면도 등을 기초로 시뮬레이션 3D 환경을 생성한다(531).The deep learning machine 300 generates a simulation 3D environment based on the collected 2D plan view and the like (531).

일 예에 따른 시뮬레이션 3D 환경은 실제 주행 공간을 간략하게 도시한 도 5a와 같은 3차원 형태의 가상 공간을 의미한다.A simulation 3D environment according to an example means a three-dimensional virtual space as shown in FIG. 5A, which briefly shows an actual running space.

심층 학습기(300)는 생성한 시뮬레이션 환경을 통해 가상의 이동 로봇을 주행시킨다(532).The in-depth learning machine 300 drives the virtual mobile robot through the generated simulation environment (532).

도 8에서 설명한 바와 같이, 일 예에 따른 심층 학습기(300)는 이동 로봇(100)이 생성하는 제 1지도와 서버(400)가 제공하는 제 2지도의 데이터 쌍을 통해서 심층 학습하였다.As described in FIG. 8, the in-depth learning machine 300 according to an exemplary embodiment of the present invention performs in-depth learning through a first map generated by the mobile robot 100 and a second map data provided by the server 400.

이와 비교하여 도 9의 다른 실시예에 따른 심층 학습기(300)는 실제 이동 로봇(100)이 생성하는 제 1지도를 기초로 하지 않고, 시뮬레이션 환경에서 가상으로 주행시킨 데이터를 기초로 심층 학습을 한다.In contrast, the in-depth layered learning device 300 according to another embodiment of FIG. 9 performs in-depth learning based on data virtually traveling in the simulation environment, not based on the first map generated by the actual mobile robot 100 .

이러한 시뮬레이션 주행은 제한적으로 수집될 수 있는 실제 이동 로봇(100)의 생성 데이터를 보충하고, 단시간에 수많은 선행 학습을 할 수 있으므로 심층 학습기(300)가 생성하는 제 2지도에 대한 오차를 줄일 수 있다.This simulation run can supplement the generated data of the actual mobile robot 100 that can be collected in a limited manner, and can perform a large number of preliminary learning in a short time, thereby reducing errors in the second map generated by the in-depth learning device 300 .

심층 학습이 완료된 심층 학습기(300)는 실제 이동 로봇(100)이 생성한 제 1지도를 전달받는다(533).The in-depth learning device 300 having completed the in-depth learning receives the first map generated by the actual mobile robot 100 (533).

이후, 심층 학습기(300)는 학습한대로 제 1지도에서 제 2지도를 생성한다(534).Thereafter, the in-depth learning device 300 generates a second map on the first map as it is learned (534).

심층 학습기(300)는 생성한 제 2지도를 이동 로봇으로 전달하고(535), 이동 로봇(100)는 제 2지도를 사용자에게 제공함으로써 인터랙션을 강화한다.The in-depth learning machine 300 transmits the generated second map to the mobile robot (535), and the mobile robot 100 enhances the interaction by providing the second map to the user.

한편, 전술한 도 9의 심층 학습 방법은 반드시 주행 공간을 실질적으로 주행한 이동 로봇(100)에 대한 정보가 필요하지 않을 수 있다. 따라서 심층 학습은 서버(400)를 통해서 이뤄질 수 있으며, 다른 실시예에 따른 시스템(1000)은 서버(400), 이동 로봇(100) 및 사용자 단말(200) 등을 포함할 수도 있다.On the other hand, the above-described in-depth learning method of FIG. 9 may not necessarily require information on the mobile robot 100 that substantially travels the traveling space. Thus, in-depth learning may be performed through the server 400, and the system 1000 according to another embodiment may include the server 400, the mobile robot 100, and the user terminal 200 and the like.

도 10은 심층 학습의 일 예를 설명하기 위한 도면이다.10 is a diagram for explaining an example of in-depth learning.

심층 학습은 심층 신경망(Deep Neural Network, DNN) 알고리즘을 통해 수행된다. 다시 심층 신경망(DNN)은 입력층(input layer)과 출력층(output layer) 사이에 다중의 은닉층(hidden layer)이 존재하는 심층(deep) 신경망, 동물의 시각 피질의 구조와 유사하게 뉴런 사이의 연결 패턴을 형성하는 컨볼루션(convolutional) 신경망, 시간에 따라 매순간 신경망을 쌓아올리는 재귀(recurrent) 신경망으로 구체화될 수 있다.In-depth learning is performed through the Deep Neural Network (DNN) algorithm. DNN is a deep neural network in which there are multiple hidden layers between the input and output layers and a connection between neurons similar to that of the animal's visual cortex A convolutional neural network that forms a pattern, and a recurrent neural network that builds up a neural network every moment according to time.

도 10은 심층 신경망의 일 예로, 컨볼루션 신경망, 즉 CNN(Convolutional Neural Networks)을 설명하기 위한 도면이다.FIG. 10 is a view for explaining a convolutional neural network, that is, CNN (Convolutional Neural Networks), as an example of a depth neural network.

구체적으로 CNN은 컨벌루션(Convoltion)과 서브 샘플링(Sub-Sampling)을 반복하여 데이터의 양을 줄이고, 왜곡시켜 신경망을 분류한다. 즉, CNN은 특징 추출과 분류 행위를 통해 부류 결과를 출력하는데, 주로 이미지를 분석하는데 사용된다.Specifically, CNN repeats convolution and sub-sampling to reduce the amount of data and classify the neural network by distorting it. In other words, CNN outputs class results through feature extraction and classification, mainly used for image analysis.

컨벌루션은 영상 필터링을 의미하며, 가중치를 갖는 마스크(311)를 이용한다. Convolution means image filtering, and uses a mask 311 having a weight.

구체적으로 컨벌류젼(310)은 제 1지도와 같은 입력 영상(301)에서 마스크(311)를 씌운 후, 입력 영상(301)의 픽셀값과 마스크(311)의 가중치를 각각 곱하고, 그 합을 출력 영상(312)의 픽셀값으로 산출한다.More specifically, the convolution 310 includes mask 311 in the input image 301 such as the first map, multiplies the pixel value of the input image 301 by the weight of the mask 311, Is calculated as the pixel value of the image 312.

마스크(311)는 입력 영상(301)의 각 부분마다 복수 개로 씌여지며, 마스크(311)가 이동하면서 산출된 결과값을 합한 결과가 추출된다. 추출되는 영상은 적어도 하나 이상의 영상이 추출되는데, 강인한 특징(왜곡, 변형과 같은 환경변화에 적응하는)을 유도한다. A plurality of masks 311 are written for each portion of the input image 301, and a result obtained by summing up the calculated results while the mask 311 is moved is extracted. The extracted image extracts at least one image, which induces robust features (adapting to environmental changes such as distortion and deformation).

도 10의 일 예에 따라 제 1 컨벌루션(310)에 의해서 추출되는 출력 영상(feature maps, 312)은 4장이다.10, the number of feature maps 312 extracted by the first convolution 310 is four.

서브 샘플링은 영상의 크기를 줄이는 과정을 의미한다. 일 예로 서브 샘플링은 맥스-풀(Max Pool)을 사용한다. 맥스-풀은 해당 영역에서 최대치를 선택하는 기법인데 뉴런이 가장 큰 신호에 반응하는 것과 유사하다. 서브 샘플링은 노이즈를 감소시키고, 학습의 속도를 증가시킨다.Subsampling means the process of reducing the size of the image. For example, subsampling uses Max Pool. Max-Pull is a technique for selecting the maximum value in a given area, similar to the way a neuron responds to the largest signal. Subsampling reduces noise and increases the speed of learning.

일 예로 제 1 컨벌루션(310)에서 출력된 출력 영상(312)에 서브 샘플링은 맥스-풀을 위한 해당 영역(321)을 선택하고, 해당 영역(321)의 픽셀값에서 최대값만이 출력된다. For example, in the output image 312 output from the first convolution 310, subsampling selects the corresponding area 321 for the Max-Pull, and only the maximum value is output from the pixel value of the corresponding area 321.

도 10에서 제 1서브 샘플링(320)에 의해서 출력되는 출력 영상(322)은 4장이다.In FIG. 10, the number of output images 322 output by the first subsampling 320 is four.

한편, CNN은 컨벌루션(310, 330) 및 서브 샘플링(320, 340)을 반복적으로 수행한다. 반복과정의 횟수는 제한이 없다. 즉, 도 10에서는 2번 반복과정을 도시하였지만, 이에 제한되지 않는다.CNN, on the other hand, performs convolution 310,330 and subsampling 320,340 repeatedly. The number of iterations is unlimited. In other words, although FIG. 10 shows an iteration of two times, it is not limited thereto.

마지막으로 CNN은 완전 연결(Fully-Connected MLP, 350)를 수행한다. 완전 연결(350)은 학습 증가 시간을 단축시키고, 망의 크기 및 변수의 개수를 줄이기 위한 것으로, 수많이 출력될 수 있는 출력 영상(312, 322)을 1차원 행렬(351)으로 변환한다. 행렬(351)은 입력단에서 맵핑(Mapping)된다.Finally, CNN performs Fully-Connected MLP (350). The full connection 350 converts the output images 312 and 322, which can be output a large number of times, into a one-dimensional matrix 351 in order to shorten the learning increase time and reduce the network size and the number of variables. The matrix 351 is mapped at the input end.

일 예로 수많은 고양이 영상이 CNN을 거치면, 심층 학습기(300)는 이후 제시되는 개와 고양이 영상 중에서 고양이 영상을 구분할 수 있다. 마찬가지로 개시된 심층 학습기(300)도 제 1지도와 평면도의 데이터 쌍을 학습하여, 후에 입력되는 제 1지도로부터 이동 로봇(100)이 실제 이동한 제 2지도(예를 들어 평면도)를 생성할 수 있다.For example, if a large number of cat images pass through CNN, the in-depth learning device 300 can distinguish cat images from the dog and cat images presented later. Likewise, the disclosed in-depth learning machine 300 can learn a pair of data of the first map and the plan view to generate a second map (for example, a plan view) in which the mobile robot 100 actually moved from a first map that is input later .

도 11은 개시된 일 예에 따른 이동 로봇(100)과 사용자의 인터랙션을 설명하기 위한 도면이다.11 is a view for explaining interaction between a mobile robot 100 and a user according to an example of the present invention.

심층 학습에 의해서 생성되어 이동 로봇(100)에 전달된 제 2지도는 도 11과 같이 평면도(5)의 형태일 수 있다.The second map generated by the in-depth learning and transmitted to the mobile robot 100 may be in the form of a plan view 5 as shown in FIG.

이동 로봇(100)은 사용자 단말(200)을 통해 이동 로봇(100)이 인식하고 있는 주행 공간에 대한 제 2지도를 전달할 수 있다. 이 때 개시된 이동 로봇(100)은 평면도(5)에 포함된 공간의 명칭 정보를 라벨링(Labeling)하여 사용자에게 제공할 수 있다.The mobile robot 100 can transmit the second map to the traveling space recognized by the mobile robot 100 through the user terminal 200. [ At this time, the mobile robot 100 can label the name of the space included in the floor plan 5 and provide it to the user.

일 예로 사용자에게 제공되는 평면도(5)는 도 11과 같이 침실(Bedroom, 5a), 발코니(Balcony, 5b), 거실(Living, 5c) 및 주방(Kitchen, 5d)의 공간 정보 부분에 음영으로 부각시켜 전달될 수 있다.For example, the floor plan 5 provided to the user is a shade in the spatial information part of the bedroom (Bedroom, 5a), Balcony (5b), Living room (5c) and Kitchen .

사용자는 사용자 단말(200) 또는 디바이스(101)에 표시되는 도 11과 같은 지도를 통해 이동 로봇(100)의 이동을 제어하는데 활용할 수 있다.The user can utilize the user's terminal 200 or the device 101 to control the movement of the mobile robot 100 through the map shown in FIG.

도 12는 다른 일 예에 따른 이동 로봇(100)과 사용자의 인터랙션을 설명하기 위한 도면이다.12 is a diagram for explaining interaction between a mobile robot 100 and a user according to another example.

심층 학습에 의해서 생성되어 이동 로봇(100)에 전달된 제 2지도는 도 12와 같이 평면도(5)의 형태일 수 있다.The second map generated by the in-depth learning and transferred to the mobile robot 100 may be in the form of a plan view 5 as shown in FIG.

이동 로봇(100)은 사용자 단말(200)을 통해 평면도(5)를 전달할 수 있다. The mobile robot 100 may transmit the floor plan 5 through the user terminal 200. [

사용자는 사용자 단말(200)이 제공하는 평면도(5)에서 이동 로봇(100)이 특정 공간(예를 들어 거실)만을 주행하도록 이동 경로를 설정하거나, 특정 지점을 지나가도록 제어하기 위한 중간 지점(Waypoint, 6a 내지 6e)을 설정할 수 있다.The user can set a movement path for the mobile robot 100 to travel only in a specific space (for example, a living room) in a plan view 5 provided by the user terminal 200, , 6a to 6e can be set.

이동 로봇(100)은 도 12과 같은 이동 경로에 기초하여 주행할 수 있다. 또한, 이동 로봇(100)은 중간 지점(6a 내지 6e)이 설정된 제 2지도(6)를 기초로 중간 지점을 통해 주행할 수 있다.The mobile robot 100 can travel based on the movement route shown in Fig. Further, the mobile robot 100 can travel through the intermediate point based on the second map 6 on which the intermediate points 6a to 6e are set.

즉. 사용자는 사용자가 인식할 수 있는 수준의 지도, 제 2지도를 통해 이동 로봇(100)이 주행할 이동 경로를 설정하거나, 중간 지점을 선택할 수 있다. 이러한 다양한 제어를 통해 이동 로봇(100)과 사용자간의 인터랙션은 강화된다.In other words. The user can set a travel route to be traveled by the mobile robot 100 or select an intermediate point through a second map that is recognizable by the user. Interaction between the mobile robot 100 and the user is enhanced through various controls.

100: 이동 로봇, 130: 센서
200: 사용자 단말 300: 심층 학습기
400: 서버 1000: 시스템
100: mobile robot, 130: sensor
200: user terminal 300: deep learning machine
400: Server 1000: System

Claims (20)

본체;
상기 본체가 주행하는 공간에 대한 데이터를 수집하는 센서;
외부로 통신을 수행하는 통신부;
상기 데이터에 기초하여 상기 제 1지도를 생성하고, 상기 통신부를 통해 상기 제 2지도를 요청하는 제어부;를 포함하고,
상기 제 2지도는 상기 제 1지도를 기초로 심층 학습(Deep Learning)에 의해 생성되는 이동 로봇.
main body;
A sensor for collecting data on a space in which the main body travels;
A communication unit for performing communication to the outside;
And a control unit for generating the first map based on the data and requesting the second map through the communication unit,
And the second map is generated by Deep Learning based on the first map.
제 1항에 있어서,
상기 제 2지도를 출력하는 유저 인터페이스;를 더 포함하고,
상기 제어부는,
상기 통신부를 통해 상기 제 2지도를 송신하도록 제어하고, 상기 유저 인터페이스를 제어하여 상기 제 2지도를 출력하는 이동 로봇.
The method according to claim 1,
And a user interface for outputting the second map,
Wherein,
Controls the second map to be transmitted through the communication unit, and outputs the second map by controlling the user interface.
제 1항에 있어서,
상기 심층 학습은,
CNN(Convolution Neural Network)을 포함하고,
상기 제 2지도는 상기 CNN에 기초하여 생성되는 이동 로봇.
The method according to claim 1,
The deep-
CNN (Convolution Neural Network)
And the second map is generated based on the CNN.
제 1항에 있어서,
상기 제어부는,
상기 제 2지도를 라벨링(labeling)하는 이동 로봇.
The method according to claim 1,
Wherein,
And labeling the second map.
제 1항에 있어서,
상기 제 2지도는,
3차원 시뮬레이션 환경에 기초하여 생성되는 이동 로봇.
The method according to claim 1,
The second map may further include:
A mobile robot generated based on a 3D simulation environment.
제 1항에 있어서,
상기 제어부는,
상기 제 2지도에 기초하여 상기 본체의 이동 경로를 판단하고, 상기 이동 경로에 기초하여 상기 본체를 주행하는 이동 로봇.
The method according to claim 1,
Wherein,
And determines a travel route of the main body based on the second map, and travels the main body based on the travel route.
심층 학습에 필요한 학습 데이터를 수집하는 서버;
주행하면서 데이터를 수집하고, 상기 데이터에 기초하여 제 1 지도를 생성하는 이동 로봇;
상기 서버로부터 전달받은 상기 학습 데이터를 기초로 상기 심층 학습하는 심층 학습기;를 포함하고,
상기 이동 로봇은, 상기 제 1 지도를 기초로 심층 학습에 의해 생성되는 제 2지도를 상기 심층 학습기에 요청하는 시스템.
A server for collecting learning data necessary for in-depth learning;
A mobile robot for collecting data while traveling and generating a first map based on the data;
And an in-depth learning unit for performing in-depth learning based on the learning data received from the server,
Wherein the mobile robot requests a second map generated by in-depth learning based on the first map to the in-depth learning device.
제 7항에 있어서,
상기 이동 로봇은,
상기 제 2지도를 수신하고, 상기 수신한 제 2지도에 기초하여 주행하는 시스템.
8. The method of claim 7,
The mobile robot includes:
And receives the second map and travels based on the received second map.
제 7항에 있어서,
상기 이동 로봇과 통신하는 사용자 단말;을 더 포함하고,
상기 이동 로봇은,
제 2지도를 상기 사용자 단말로 전달하는 시스템.
8. The method of claim 7,
And a user terminal communicating with the mobile robot,
The mobile robot includes:
And transmits the second map to the user terminal.
제 9항에 있어서,
상기 심층 학습기는,
상기 제 2지도에서 포함된 의미 정보를 라벨링(labeling)하고, 상기 이동 로봇으로 전달하는 시스템.
10. The method of claim 9,
The deep-
Labeling the semantic information included in the second map, and delivering the semantic information to the mobile robot.
제 9항에 있어서,
상기 이동 로봇은,
상기 사용자 단말이 전달하는 이동 경로에 관한 명령을 수신하고, 상기 이동 경로를 기초하여 주행하는 시스템.
10. The method of claim 9,
The mobile robot includes:
And receives a command related to a travel route transmitted by the user terminal, and travels based on the travel route.
제 7항에 있어서,
상기 서버는,
상기 심층 학습기가 전달하는 상기 제 2지도를 수신하고, 상기 이동 로봇으로 상기 제 2지도를 전달하는 시스템.
8. The method of claim 7,
The server comprises:
Receives the second map transmitted by the deep layer learning device, and delivers the second map to the mobile robot.
제 7항에 있어서,
상기 학습 데이터는,
상기 3차원 시뮬레이션 환경에서 가상으로 주행하여 생성되는 정보를 포함하는 시스템.
8. The method of claim 7,
The learning data includes:
Wherein the information includes information generated by virtually traveling in the three-dimensional simulation environment.
제 7항에 있어서,
상기 심층 학습은,
CNN(Convolution Neural Network)을 포함하는 시스템.
8. The method of claim 7,
The deep-
A system comprising a Convolution Neural Network (CNN).
주행하면서 공간에 관한 데이터를 수집하고;
상기 데이터에 기초하여 제 1지도를 생성하고;
상기 제 1지도를 외부로 전달하고;
상기 제 1지도에 기초로 심층 학습에 의해 생성되는 제 2 지도를 요청하는 것;을 포함하는 이동 로봇의 제어방법.
Collect data on space while traveling;
Generate a first map based on the data;
Transferring the first map to the outside;
And requesting a second map generated by in-depth learning based on the first map.
제 15항에 있어서,
상시 제 2지도를 수신하고; 및
상기 제 2지도에 기초하여 주행하는 것;을 더 포함하는 이동 로봇의 제어방법.
16. The method of claim 15,
The second map is always received; And
And traveling on the basis of the second map.
제 16항에 있어서,
상기 제 2지도를 사용자의 입력 명령을 수신하는 사용자 단말로 전달하는 것;을 더 포함하는 이동 로봇의 제어방법.
17. The method of claim 16,
And transmitting the second map to a user terminal that receives a user's input command.
제 17항에 있어서,
상기 사용자 단말이 전달하는 이동 경로를 수신하고;
상기 주행하는 것은,
상기 이동 경로를 상기 제 2지도에 매칭시켜 주행하는 것;을 포함하는 이동 로봇의 제어방법.
18. The method of claim 17,
Receiving a movement route transmitted by the user terminal;
The above-
And moving the travel route matching the second map.
제 15항에 있어서,
상기 제 1지도는,
격자 지도를 포함하는 이동 로봇의 제어방법.
16. The method of claim 15,
The first map may include:
A method of controlling a mobile robot including a grid map.
제 19항에 있어서,
상기 제 2지도는,
상기 격자 지도 및 평면도를 기초로 상기 심층 학습에 의해 생성되는 이동 로봇의 제어방법.
20. The method of claim 19,
The second map may further include:
Wherein the robot is generated by the deep learning based on the grid map and the plan view.
KR1020160157071A 2016-11-24 2016-11-24 Mobile robot and system having the same and controlling method of mobile robot KR102656581B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160157071A KR102656581B1 (en) 2016-11-24 2016-11-24 Mobile robot and system having the same and controlling method of mobile robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160157071A KR102656581B1 (en) 2016-11-24 2016-11-24 Mobile robot and system having the same and controlling method of mobile robot

Publications (2)

Publication Number Publication Date
KR20180058303A true KR20180058303A (en) 2018-06-01
KR102656581B1 KR102656581B1 (en) 2024-04-12

Family

ID=62635191

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160157071A KR102656581B1 (en) 2016-11-24 2016-11-24 Mobile robot and system having the same and controlling method of mobile robot

Country Status (1)

Country Link
KR (1) KR102656581B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020141924A1 (en) * 2019-01-04 2020-07-09 Samsung Electronics Co., Ltd. Apparatus and method of generating map data of cleaning space
WO2021066375A1 (en) * 2019-10-04 2021-04-08 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof
WO2022186598A1 (en) * 2021-03-05 2022-09-09 삼성전자주식회사 Robot cleaner and control method thereof
US11442455B2 (en) 2018-12-24 2022-09-13 Samsung Electronics Co., Ltd. Method and apparatus for generating local motion based on machine learning

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004276168A (en) * 2003-03-14 2004-10-07 Japan Science & Technology Agency Map making system for mobile robot
KR20070120780A (en) * 2006-06-20 2007-12-26 삼성전자주식회사 Method of building gridmap in mobile robot and method of cell decomposition using it
KR20080089148A (en) * 2007-03-30 2008-10-06 성균관대학교산학협력단 A central information processing system and method for service robot, with layered information structure according to recognition and reasoning level
KR20090066068A (en) * 2007-12-18 2009-06-23 한국전자통신연구원 Method and apparatus for forming lattice map for robot by use of drawings
KR20100094213A (en) * 2009-02-18 2010-08-26 삼성전자주식회사 Apparatus and method for generating route using grid map
JP2012011200A (en) * 2010-07-01 2012-01-19 Vorwerk & Co Interholding Gmbh Self-propelled device and method for operating such device
KR20120059428A (en) * 2010-11-30 2012-06-08 주식회사 유진로봇 Apparatus and Method for controlling a mobile robot on the basis of past map data
KR20120102955A (en) * 2011-03-09 2012-09-19 포항공과대학교 산학협력단 Cleaning method of cleaning robots by detecting a feature point
KR20130030958A (en) * 2011-09-20 2013-03-28 엘지전자 주식회사 Robot cleaner
KR20150004568A (en) * 2013-07-03 2015-01-13 삼성전자주식회사 Method for recognizing position of autonomous mobile robot
KR20160038437A (en) * 2014-09-30 2016-04-07 엘지전자 주식회사 A robot cleaner and control method thereof

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004276168A (en) * 2003-03-14 2004-10-07 Japan Science & Technology Agency Map making system for mobile robot
KR20070120780A (en) * 2006-06-20 2007-12-26 삼성전자주식회사 Method of building gridmap in mobile robot and method of cell decomposition using it
JP2008004078A (en) * 2006-06-20 2008-01-10 Samsung Electronics Co Ltd Method, apparatus and medium for building grid map of mobile robot, and method, apparatus and medium for cell decomposition using the same
KR20080089148A (en) * 2007-03-30 2008-10-06 성균관대학교산학협력단 A central information processing system and method for service robot, with layered information structure according to recognition and reasoning level
KR20090066068A (en) * 2007-12-18 2009-06-23 한국전자통신연구원 Method and apparatus for forming lattice map for robot by use of drawings
KR20100094213A (en) * 2009-02-18 2010-08-26 삼성전자주식회사 Apparatus and method for generating route using grid map
JP2012011200A (en) * 2010-07-01 2012-01-19 Vorwerk & Co Interholding Gmbh Self-propelled device and method for operating such device
KR20120059428A (en) * 2010-11-30 2012-06-08 주식회사 유진로봇 Apparatus and Method for controlling a mobile robot on the basis of past map data
KR20120102955A (en) * 2011-03-09 2012-09-19 포항공과대학교 산학협력단 Cleaning method of cleaning robots by detecting a feature point
KR20130030958A (en) * 2011-09-20 2013-03-28 엘지전자 주식회사 Robot cleaner
KR20150004568A (en) * 2013-07-03 2015-01-13 삼성전자주식회사 Method for recognizing position of autonomous mobile robot
KR20160038437A (en) * 2014-09-30 2016-04-07 엘지전자 주식회사 A robot cleaner and control method thereof

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11442455B2 (en) 2018-12-24 2022-09-13 Samsung Electronics Co., Ltd. Method and apparatus for generating local motion based on machine learning
WO2020141924A1 (en) * 2019-01-04 2020-07-09 Samsung Electronics Co., Ltd. Apparatus and method of generating map data of cleaning space
US11334084B2 (en) 2019-01-04 2022-05-17 Samsung Electronics Co., Ltd. Apparatus and method of generating map data of cleaning space
WO2021066375A1 (en) * 2019-10-04 2021-04-08 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof
US11697203B2 (en) 2019-10-04 2023-07-11 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof
WO2022186598A1 (en) * 2021-03-05 2022-09-09 삼성전자주식회사 Robot cleaner and control method thereof

Also Published As

Publication number Publication date
KR102656581B1 (en) 2024-04-12

Similar Documents

Publication Publication Date Title
KR102567525B1 (en) Mobile Robot System, Mobile Robot And Method Of Controlling Mobile Robot System
US10807230B2 (en) Bistatic object detection apparatus and methods
US10274325B2 (en) Systems and methods for robotic mapping
US10175688B2 (en) Apparatus and system for remotely controlling a moving robot and method thereof
US10723027B2 (en) Robot systems incorporating cloud services systems
KR20180058303A (en) Mobile robot and system having the same and controlling method of mobile robot
KR102018763B1 (en) Interfacing with a mobile telepresence robot
CN109571513B (en) Immersive mobile grabbing service robot system
CN109414142A (en) The system and method independently advanced for image training robot along route
US10377042B2 (en) Vision-based robot control system
KR20170087384A (en) Apparatus and System for Remotely Controlling a Robot Cleaner and Method thereof
US11565415B2 (en) Method of tracking user position using crowd robot, tag device, and robot implementing thereof
WO2017198211A1 (en) Remote control system for service robot and control method of remote control system
US11559902B2 (en) Robot system and control method of the same
CN107962573A (en) Accompany humanoid robot and robot control method
US11340630B2 (en) Systems and methods for robust robotic mapping
KR102386361B1 (en) Apparatus for localization of mobile robot and method thereof
CN114505840A (en) Intelligent service robot of autonomous operation box type elevator
CN205521430U (en) High position adaptive service robot
CN113081525B (en) Intelligent walking aid equipment and control method thereof
CN117073662A (en) Map construction method, device, robot and storage medium
CN116358522A (en) Local map generation method and device, robot, and computer-readable storage medium
US20240036582A1 (en) Robot navigation
WO2017092620A1 (en) Smart device, smart control method thereof and computer storage medium
CN114326736A (en) Following path planning method and foot type robot

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right