KR102423572B1 - Controlling method for Artificial intelligence Moving robot - Google Patents

Controlling method for Artificial intelligence Moving robot Download PDF

Info

Publication number
KR102423572B1
KR102423572B1 KR1020200084025A KR20200084025A KR102423572B1 KR 102423572 B1 KR102423572 B1 KR 102423572B1 KR 1020200084025 A KR1020200084025 A KR 1020200084025A KR 20200084025 A KR20200084025 A KR 20200084025A KR 102423572 B1 KR102423572 B1 KR 102423572B1
Authority
KR
South Korea
Prior art keywords
mobile robot
voice
cleaning
user
data
Prior art date
Application number
KR1020200084025A
Other languages
Korean (ko)
Other versions
KR20200085712A (en
Inventor
조원철
이성훈
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020180100647A external-priority patent/KR102290983B1/en
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020200084025A priority Critical patent/KR102423572B1/en
Publication of KR20200085712A publication Critical patent/KR20200085712A/en
Application granted granted Critical
Publication of KR102423572B1 publication Critical patent/KR102423572B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • 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
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • B25J11/0085Cleaning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • B25J19/061Safety devices with audible signals
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • 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
    • B25J9/1666Avoiding collision or forbidden zones
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Multimedia (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

본 발명의 일 측면에 따른 인공지능 이동 로봇의 제어 방법은, 사용자에게 음성을 발화할 수 있어, 음성을 매개로 사용자와 대화하고 인터랙션할 수 있으며, 요청하기 전에 먼저 능동적으로 정보를 제공하고, 서비스, 기능 등을 추천함으로써, 사용자의 신뢰도, 선호도 및 제품 활용도를 높일 수 있다. The control method of the artificial intelligence mobile robot according to an aspect of the present invention can utter a voice to the user, so that the user can talk and interact with the user through the voice, and actively provide information before requesting a service, , functions, etc. can be recommended to increase user's reliability, preference, and product utilization.

Description

인공지능 이동 로봇의 제어 방법{Controlling method for Artificial intelligence Moving robot}Control method of artificial intelligence moving robot {Controlling method for Artificial intelligence Moving robot}

본 발명은 인공지능 이동 로봇의 제어 방법에 관한 것으로서, 더욱 상세하게는 능동적으로 사용자에게 정보 및 서비스를 제공할 수 있는 인공지능 이동 로봇의 제어 방법에 관한 것이다. The present invention relates to a method for controlling an artificial intelligence mobile robot, and more particularly, to a method for controlling an artificial intelligence mobile robot capable of actively providing information and services to a user.

로봇은 산업용으로 개발되어 공장 자동화의 일 부분을 담당하여 왔다. 최근에는 로봇을 응용한 분야가 더욱 확대되어, 의료용 로봇, 우주 항공 로봇 등이 개발되고, 일반 가정에서 사용할 수 있는 가정용 로봇도 만들어지고 있다. 이러한 로봇 중에서 자력으로 주행이 가능한 것을 이동 로봇이라고 한다. Robots have been developed for industrial use and have been a part of factory automation. Recently, the field of application of robots has been further expanded, and medical robots and aerospace robots have been developed, and household robots that can be used in general homes are also being made. Among these robots, those capable of driving by their own force are called mobile robots.

가정에서 사용되는 이동 로봇의 대표적인 예는 로봇 청소기로, 로봇 청소기는 일정 영역을 스스로 주행하면서, 주변의 먼지 또는 이물질을 흡입함으로써, 해당 영역을 청소하는 기기이다. A representative example of a mobile robot used at home is a robot cleaner, which is a device that cleans a corresponding area by inhaling dust or foreign substances while driving in a certain area by itself.

이동 로봇은, 스스로 이동이 가능하여 이동이 자유롭고, 주행중 장애물 등을 피하기 위한 다수의 센서가 구비되어 장애물을 피해 주행할 수 있다.The mobile robot is free to move because it can move by itself, and is provided with a plurality of sensors for avoiding obstacles while driving, so that it can run while avoiding obstacles.

한편, 사용자의 사용 편의성을 향상하기 위하여 다양한 기기에 음성 인식 기술이 적용되고 있고, 음성 인식 기술을 이용하여 이동 로봇을 제어하는 방안에 대한 연구가 증가하고 있다.Meanwhile, in order to improve user convenience, voice recognition technology is being applied to various devices, and research on a method of controlling a mobile robot using the voice recognition technology is increasing.

예를 들어, 선행 문헌 1(한국 공개특허공보 10-2012-0114670호, 공개일자 2012년 10월 17일)은 로봇 청소기가 음성 인식 유닛을 구비하고 사용자의 음성 신호를 인식하여 대응하는 제어 명령을 실행하고 있다.For example, in Prior Document 1 (Korean Patent Application Laid-Open No. 10-2012-0114670, publication date October 17, 2012), a robot cleaner has a voice recognition unit and recognizes a user's voice signal to generate a corresponding control command. are running

선행 문헌 1에서는, 음성 입력이 사용자에서 로봇 청소기로 단방향으로 이루어져서, 버튼을 누르거나 리모콘으로 조작하는 제어동작의 추가적인 수단에서 머무르고 있다. 따라서, 음성 인식 기능이 사용자에게 단순한 제어 이상의 의미를 주기 힘들고, 제어 입력 수단의 추가 이외에 다른 기능 및 서비스를 제공하지 못한다는 문제점이 있었다.In Prior Document 1, the voice input is made unidirectionally from the user to the robot cleaner, so it stays as an additional means of control operation by pressing a button or operating with a remote control. Accordingly, there are problems in that it is difficult for the voice recognition function to give a meaning beyond simple control to the user, and other functions and services other than the addition of control input means cannot be provided.

음성 인식을 하나의 제어 입력 수단으로만 이용하는데 그치는 선행 문헌1의 한계를 넘어, 본 발명의 목적은 음성을 매개로 사용자와 인터랙션(interaction)할 수 있는 인공지능 이동 로봇의 제어 방법을 제공함에 있다.It is an object of the present invention to provide a control method of an artificial intelligence mobile robot capable of interacting with a user through voice, beyond the limitation of the prior document 1, which only uses voice recognition as a control input means. .

본 발명의 목적은 이동 로봇이 능동적으로 사용자에게 다양한 정보와 서비스를 사용자에게 제공함에 있다.An object of the present invention is to provide a mobile robot with various information and services to the user actively.

본 발명의 목적은 사용자의 제품 신뢰도 및 선호도를 향상할 수 있도록 사용자 친화적인 동작을 할 수 있는 인공지능 이동 로봇의 제어 방법을 제공함에 있다.It is an object of the present invention to provide a control method of an artificial intelligence mobile robot capable of user-friendly operation so as to improve the user's product reliability and preference.

상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇은, 사용자에게 소정 정보, 서비스를 안내하는 음성을 발화할 수 있어, 음성을 매개로 사용자와 대화하고 인터랙션(interaction)할 수 있다.In order to achieve the above or other objects, the mobile robot according to an aspect of the present invention may utter a voice for guiding a user to predetermined information and services, and may communicate and interact with the user through the voice. .

상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇은, 요청하기 전에 먼저 능동적으로 소정 정보를 제공하고, 소정 서비스, 기능 등을 추천함으로써, 사용자의 신뢰도, 선호도 및 제품 활용도를 높일 수 있다.In order to achieve the above or other objects, the mobile robot according to an aspect of the present invention actively provides predetermined information before making a request and recommends predetermined services, functions, etc., thereby increasing the user's reliability, preference, and product utilization. can

상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇의 동작 방법은, 이동하며 청소를 수행하는 단계, 이전의 청소 수행으로 획득된 기존 데이터에 기반하여, 특수지역을 판별하는 단계, 및, 판별된 특수지역에 도착한 경우에, 상기 특수지역에 대한 음성 안내 메시지를 출력하는 단계를 포함함으로써, 사용자의 요청 전에 능동적으로 정보 제공의 필요성이 있는 특수지역에 대한 안내를 음성으로 제공할 수 있다.In order to achieve the above or other object, an operating method of a mobile robot according to an aspect of the present invention includes the steps of performing cleaning while moving, determining a special area based on existing data obtained by performing previous cleaning, and, when arriving at the determined special area, outputting a voice guide message for the special area, so that the user's request for information on the special area that needs to be actively provided can be provided by voice. have.

여기서, 특수지역은, 주행 불능 상태가 발생했었던 위험지역, 또는, 주행 속도 또는 청소율이 평균값보다 낮았거나, 회전 횟수가 기준 횟수보다 많았던 저효율지역일 수 있다.Here, the special area may be a dangerous area in which a driving incapacity has occurred, or a low-efficiency area in which the running speed or the cleaning rate is lower than the average value, or the number of rotations is greater than the reference number.

또한, 이전의 청소 수행으로 획득된 기존 데이터는, 주행 이력 데이터(driving history data) 및 청소 이력 데이터(cleaning history data)를 포함할 수 있다.In addition, the existing data obtained through the previous cleaning performance may include driving history data and cleaning history data.

또한, 이전의 청소 수행으로 획득된 기존 데이터는, 특수지역에 등록된 장애물 정보를 더 포함할 수 있고, 이 경우에, 음성 안내 메시지는, 특수지역에 존재하는 장애물에 대한 안내 메시지를 포함할 수 있다.In addition, the existing data obtained by performing the previous cleaning may further include information about obstacles registered in the special area, and in this case, the voice guidance message may include a guidance message for obstacles existing in the special area. have.

한편, 음성 안내 메시지는, 특수지역에 대한 청소 여부 확인을 요청하는 메시지를 포함할 수 있다. 이 경우에, 음성 안내 메시지는, 특수지역으로 판별한 이유에 대한 설명, 또는 사용자가 음성 입력할 수 있는 명령어의 예시에 대한 안내 중 적어도 하나를 더 포함할 수 있다.Meanwhile, the voice guidance message may include a message requesting to confirm whether to clean the special area. In this case, the voice guidance message may further include at least one of an explanation of the reason for determining that the region is a special area, or an example of a command that the user can input by voice.

본 발명의 일 측면에 따른 이동 로봇의 동작 방법은, 상기 음성 안내 메시지에 대한 사용자의 음성 피드백을 수신하는 단계, 수신된 음성 피드백에 포함되는 음성 명령을 식별하는 단계, 및, 식별된 음성 명령에 대응하는 동작을 수행하는 단계를 더 포함할 수 있다.A method of operating a mobile robot according to an aspect of the present invention includes receiving a user's voice feedback for the voice guidance message, identifying a voice command included in the received voice feedback, and responding to the identified voice command. The method may further include performing a corresponding operation.

이 경우에, 음성 명령의 식별은 이동 로봇에서 자체적으로 수행되거나, 서버에서 수행되거나, 이동 로봇과 서버에서 단계적으로 수행될 수 있다.In this case, the identification of the voice command may be performed by itself in the mobile robot, in the server, or in steps in the mobile robot and the server.

상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따른 이동 로봇의 동작 방법은, 사용자의 음성 명령을 수신하는 단계, 사용 기록에 기초하여, 기준 횟수 미만으로 사용된 기능 중 적어도 하나를 추천하는 음성 안내 메시지를 출력하는 단계, 음성 안내 메시지에 대한, 사용자의 음성 피드백이 수신되면, 수신된 음성 피드백에 포함되는 피드백 음성 명령을 식별하는 단계, 및, 식별된 피드백 음성 명령에 기초하여 소정 기능을 설정하는 단계를 포함함으로써, 사용자가 자주 사용하지 않는 기능 중 유용한 기능을 능동적으로 추천할 수 있다.In order to achieve the above or other object, a method of operating a mobile robot according to an aspect of the present invention includes receiving a user's voice command, and based on a usage record, recommending at least one of a function used less than a reference number of times. Outputting a voice guidance message, when a user's voice feedback for the voice guidance message is received, identifying a feedback voice command included in the received voice feedback, and performing a predetermined function based on the identified feedback voice command By including the setting step, useful functions among functions not frequently used by the user can be actively recommended.

여기서, 사용 기록은, 일반 청소 완료 횟수, 충전대 복귀 횟수, 영역별 청소 기능 완료 횟수, 운용 시간, 영역별 청소 세기 평균, 영역별 먼지량, 영역별 청소 모드 사용 빈도, 영역별 청소 모드 사용 비율, 청소 기능 및 부가 기능별 사용 횟수 중 적어도 하나를 포함할 수 있다.Here, the usage record is the number of times of completion of general cleaning, the number of returning to the charging station, the number of times of cleaning function completed by area, operating time, average cleaning intensity by area, amount of dust by area, frequency of use of cleaning mode by area, ratio of cleaning mode used by area, cleaning It may include at least one of the number of uses for each function and additional function.

또한, 이동 로봇은, 기설정된 우선 순위에 따라, 기준 횟수 미만으로 사용된 기능 중 적어도 하나를 선택하여 추천할 수 있다. 이 경우에, 기설정된 우선 순위는, 기설정된 기능별 중요도가 높은 순서 또는 사용 횟수가 작은 순서일 수 있다.Also, the mobile robot may select and recommend at least one of the functions used less than a reference number of times according to a preset priority. In this case, the preset priority may be an order in which importance for each preset function is high or an order in which the number of times of use is small.

본 발명의 일 측면에 따른 이동 로봇의 동작 방법은, 사용자의 음성 명령을 식별하는 단계를 더 포함할 수 있다. 이 경우에, 식별된 사용자의 음성 명령에 대응하는 동작을 수행할 수 있고, 기준 횟수 미만으로 사용된 기능 중 식별된 사용자의 음성 명령과 연관된 기능을 선택하여 추천할 수 있다.The method of operating a mobile robot according to an aspect of the present invention may further include identifying a user's voice command. In this case, an operation corresponding to the identified user's voice command may be performed, and a function related to the identified user's voice command may be selected and recommended among functions used less than a reference number of times.

한편, 음성 명령, 피드백 음성 명령의 식별은 이동 로봇에서 자체적으로 수행되거나, 서버에서 수행되거나, 이동 로봇과 서버에서 단계적으로 수행될 수 있다.Meanwhile, the identification of the voice command and the feedback voice command may be performed by the mobile robot itself, by the server, or by the mobile robot and the server in stages.

본 발명의 실시예들 중 적어도 하나에 의하면, 이동 로봇은, 사용자에게 음성을 발화할 수 있어, 음성을 매개로 사용자와 대화하고 인터랙션할 수 있다.According to at least one of the embodiments of the present invention, the mobile robot may utter a voice to the user, and may communicate and interact with the user through the voice.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 요청하기 전에 먼저 이동 로봇이 능동적으로 정보를 제공하고, 서비스, 기능 등을 추천함으로써, 사용자의 신뢰도, 선호도 및 제품 활용도를 높일 수 있다.In addition, according to at least one of the embodiments of the present invention, the mobile robot actively provides information before making a request and recommends services, functions, etc., thereby increasing user's reliability, preference, and product utilization.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 이동 로봇에게 위험한 위험지역, 청소가 쉽지 않은 저효율지역을 능동적으로 안내함으로써, 이동 로봇의 안정성 및 사용자의 편의성을 제고하고, 운전 효율, 청소 효율 등을 향상시킬 수 있다.In addition, according to at least one of the embodiments of the present invention, by actively guiding the mobile robot to a dangerous dangerous area and a low-efficiency area that is not easy to clean, the stability and user convenience of the mobile robot are improved, and operation efficiency and cleaning efficiency are improved. etc. can be improved.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 사용자가 자주 사용하지 않는 기능 중 유용한 기능을 능동적으로 추천함으로써, 사용자의 신뢰도, 선호도 및 제품 활용도를 높일 수 있다.In addition, according to at least one of the embodiments of the present invention, the user's reliability, preference, and product utilization may be increased by actively recommending useful functions among functions not frequently used by the user.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 사용자의 음성 명령과 연관된 다른 기능을 추천함으로써, 사용자가 추가적인 노력을 하지 않고서도 연관된 기능을 간편하게 설정하고 이용할 수 있다.In addition, according to at least one of the embodiments of the present invention, by recommending another function related to the user's voice command, the user can easily set and use the related function without additional effort.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 음성 인식이 이동 로봇에서 자체적으로 수행되거나, 서버에서 수행되거나, 이동 로봇과 서버에서 단계적으로 수행됨으로써, 효과적인 음성 인식을 수행할 수 있다.In addition, according to at least one of the embodiments of the present invention, effective voice recognition may be performed by performing voice recognition in the mobile robot itself, in the server, or in stages in the mobile robot and the server.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 음성 인식, 장애물 인식, 제품 데이터 분석 등에 인공지능과 머신 러닝을 활용함으로써, 진화하는 사용자 경험(ux)을 제공할 수 있다.In addition, according to at least one of the embodiments of the present invention, it is possible to provide an evolving user experience (ux) by utilizing artificial intelligence and machine learning for voice recognition, obstacle recognition, product data analysis, and the like.

한편, 그 외의 다양한 효과는 후술될 본 발명의 실시예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 것이다.On the other hand, various other effects will be disclosed directly or implicitly in the detailed description according to the embodiment of the present invention to be described later.

도 1은 본 발명의 일 실시예에 따른 홈 어플라이언스 네트워크 시스템 구성도이다.
도 2는 본 발명의 일 실시예에 따른 이동 로봇을 도시하는 사시도이다.
도 3은 도 2의 이동 로봇의 평면도이다.
도 4는 도 2의 이동 로봇의 측면도이다.
도 5는 본 발명의 일 실시예에 따른 이동 로봇의 주요 구성들 간의 제어관계를 도시한 블록도이다.
도 6은 본 발명의 일 실시예에 따른 제품 데이터(product data)를 이용한 학습(Learning)에 대한 설명에 참조되는 도면이다.
도 7은 본 발명의 일 실시예에 따른 서버의 간략한 내부 블록도의 일예이다.
도 8은 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.
도 9는 본 발명의 실시예에 따른 이동 로봇의 제어 방법에 관한 설명에 참조되는 도면이다.
도 10은 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.
도 11은 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.
도 12는 본 발명의 실시예에 따른 이동 로봇의 제어 방법에 관한 설명에 참조되는 도면이다.
도 13은 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.
도 14는 본 발명의 실시예에 따른 이동 로봇의 제어 방법에 관한 설명에 참조되는 도면이다.
1 is a configuration diagram of a home appliance network system according to an embodiment of the present invention.
2 is a perspective view illustrating a mobile robot according to an embodiment of the present invention.
3 is a plan view of the mobile robot of FIG. 2 .
4 is a side view of the mobile robot of FIG. 2 .
5 is a block diagram illustrating a control relationship between main components of a mobile robot according to an embodiment of the present invention.
6 is a diagram referenced in the description of learning using product data according to an embodiment of the present invention.
7 is an example of a simplified internal block diagram of a server according to an embodiment of the present invention.
8 is a flowchart illustrating a method for controlling a mobile robot according to an embodiment of the present invention.
9 is a diagram referenced in the description of a method for controlling a mobile robot according to an embodiment of the present invention.
10 is a flowchart illustrating a method for controlling a mobile robot according to an embodiment of the present invention.
11 is a flowchart illustrating a method for controlling a mobile robot according to an embodiment of the present invention.
12 is a diagram referenced in the description of a method for controlling a mobile robot according to an embodiment of the present invention.
13 is a flowchart illustrating a method for controlling a mobile robot according to an embodiment of the present invention.
14 is a diagram referenced in the description of a method for controlling a mobile robot according to an embodiment of the present invention.

이하에서는 첨부한 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. 그러나 본 발명이 이러한 실시예에 한정되는 것은 아니며 다양한 형태로 변형될 수 있음은 물론이다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, it goes without saying that the present invention is not limited to these embodiments and may be modified in various forms.

도면에서는 본 발명을 명확하고 간략하게 설명하기 위하여 설명과 관계없는 부분의 도시를 생략하였으며, 명세서 전체를 통하여 동일 또는 극히 유사한 부분에 대해서는 동일한 도면 참조부호를 사용한다. In the drawings, in order to clearly and briefly describe the present invention, the illustration of parts irrelevant to the description is omitted, and the same reference numerals are used for the same or extremely similar parts throughout the specification.

한편, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 단순히 본 명세서 작성의 용이함만이 고려되어 부여되는 것으로서, 그 자체로 특별히 중요한 의미 또는 역할을 부여하는 것은 아니다. 따라서, 상기 "모듈" 및 "부"는 서로 혼용되어 사용될 수도 있다.On the other hand, the suffixes "module" and "part" for the components used in the following description are given simply in consideration of the ease of writing the present specification, and do not give a particularly important meaning or role by themselves. Accordingly, the terms “module” and “unit” may be used interchangeably.

본 발명의 일 실시예에 따른 이동 로봇(100)은 바퀴 등을 이용하여 스스로 이동이 가능한 로봇을 의미하고, 가정 도우미 로봇 및 로봇 청소기 등이 될 수 있다. 이하에서는, 도면들을 참조하여, 이동 로봇 중 청소 기능을 가지는 로봇 청소기를 예로 들어 설명하나, 본 발명은 이에 한정되지 않는다.The mobile robot 100 according to an embodiment of the present invention means a robot capable of moving by itself using wheels, etc., and may be a home helper robot, a robot cleaner, or the like. Hereinafter, a robot cleaner having a cleaning function among mobile robots will be described as an example with reference to the drawings, but the present invention is not limited thereto.

도 1은 본 발명의 일 실시예에 따른 홈 어플라이언스 네트워크 시스템 구성도이다. 1 is a configuration diagram of a home appliance network system according to an embodiment of the present invention.

도 1을 참조하면, 홈 어플라이언스 네트워크 시스템은, 통신 모듈을 구비하여 다른 기기, 서버(70)와 통신하거나 네트워크에 접속할 수 있는 홈 어플라이언스(home appliance)들을 포함하여 구성될 수 있다.Referring to FIG. 1 , a home appliance network system may include home appliances that are provided with a communication module to communicate with other devices and servers 70 or access a network.

예를 들어, 홈 어플라이언스에는 통신 모듈을 구비한 공조 기기(10), 청소기(20), 냉장고(31), 세탁기(32) 등이 해당될 수 있다.For example, the home appliance may include an air conditioner 10 having a communication module, a cleaner 20 , a refrigerator 31 , a washing machine 32 , and the like.

한편, 상기 공조 기기(10)는 공기조화기(11), 공기 청정기(12, 13), 가습기(14), 후드(Hood, 15) 중 적어도 하나를 포함할 수 있다.Meanwhile, the air conditioner 10 may include at least one of an air conditioner 11 , air cleaners 12 and 13 , a humidifier 14 , and a hood 15 .

또한, 상기 청소기(20)는, 진공 청소기(21), 로봇 청소기(22) 등일 수 있다.Also, the cleaner 20 may be a vacuum cleaner 21 , a robot cleaner 22 , or the like.

한편, 홈 어플라이언스(10, 20, 31, 32)가 구비하는 통신 모듈은 와이파이(wi-fi) 통신 모듈일 수 있으며, 본 발명은 통신 방식에 한정되지 않는다.On the other hand, the communication module provided in the home appliance (10, 20, 31, 32) may be a Wi-Fi (wi-fi) communication module, the present invention is not limited to the communication method.

또는, 홈 어플라이언스(10, 20, 31, 32)는 다른 종류의 통신 모듈을 구비하거나 복수의 통신 모듈을 구비할 수 있다. 예를 들어, 홈 어플라이언스(10, 20, 31, 32)는 NFC 모듈, 지그비(zigbee) 통신 모듈, 블루투스(Bluetooth™) 통신 모듈 등을 포함할 수 있다.Alternatively, the home appliances 10 , 20 , 31 , and 32 may include different types of communication modules or a plurality of communication modules. For example, the home appliances 10 , 20 , 31 , and 32 may include an NFC module, a Zigbee communication module, a Bluetooth™ communication module, and the like.

홈 어플라이언스(10, 20, 31, 32)는 와이파이(wi-fi) 통신 모듈 등을 통해 소정 서버(70)와 연결 가능하고, 원격 모니터링, 원격 제어 등 스마트 기능을 지원할 수 있다.The home appliances 10 , 20 , 31 , and 32 may be connected to a predetermined server 70 through a Wi-Fi communication module or the like, and may support smart functions such as remote monitoring and remote control.

본 발명의 일 실시예에 따른 홈 어플라이언스 네트워크 시스템은, 스마트 폰(smart phone), 태블릿(Tablet) PC 등 휴대 단말기(50)를 포함할 수 있다.The home appliance network system according to an embodiment of the present invention may include a mobile terminal 50 such as a smart phone or a tablet PC.

사용자는 휴대 단말기(50)를 통하여 홈 어플라이언스 네트워크 시스템 내의 홈 어플라이언스(10, 20, 31, 32)에 관한 정보를 확인하거나 홈 어플라이언스(10, 20, 31, 32)를 제어할 수 있다.The user may check information on the home appliances 10 , 20 , 31 , 32 in the home appliance network system or control the home appliances 10 , 20 , 31 , 32 through the portable terminal 50 .

한편, 본 발명의 일 실시예에 따른 홈 어플라이언스 네트워크 시스템은, 복수의 사물인터넷(IoT) 기기(미도시)를 포함하여 구성될 수 있다. 따라서, 홈 어플라이언스 네트워크 시스템은, 홈 어플라이언스(10, 20, 31, 32), 휴대 단말기(50), 사물인터넷(IoT) 기기들을 포함할 수 있다. Meanwhile, the home appliance network system according to an embodiment of the present invention may be configured to include a plurality of Internet of Things (IoT) devices (not shown). Accordingly, the home appliance network system may include the home appliances 10 , 20 , 31 , 32 , the portable terminal 50 , and Internet of Things (IoT) devices.

본 발명의 일 실시예에 따른 홈 어플라이언스 네트워크 시스템은, 네트워크를 구성하는 통신 방식에 한정되지 않는다. A home appliance network system according to an embodiment of the present invention is not limited to a communication method constituting a network.

예를 들어, 홈 어플라이언스(10, 20, 31, 32), 휴대 단말기(50), 사물인터넷(IoT) 기기들은, 유/무선 공유기(미도시)를 통하여, 통신 연결될 수 있다.For example, the home appliances 10 , 20 , 31 , and 32 , the portable terminal 50 , and Internet of Things (IoT) devices may be communicatively connected through a wired/wireless router (not shown).

또한, 홈 어플라이언스 네트워크 시스템 내의 기기들은 각각 개별적으로 통신 연결되는 메쉬 토폴로지(mesh topology)를 구성할 수 있다.In addition, devices in the home appliance network system may configure a mesh topology in which each of the devices is individually communicatively connected.

홈 어플라이언스 네트워크 시스템 내의 홈 어플라이언스(10, 20, 31, 32)는 유/무선 공유기(미도시)를 경유하여 서버(70)나 휴대 단말기(50)와 통신할 수 있다. 또한, 홈 어플라이언스 네트워크 시스템 내의 홈 어플라이언스(10, 20, 31, 32)는 이더넷(Ethernet)에 의해서 서버(70)나 휴대 단말기(50)와 통신할 수 있다. The home appliances 10 , 20 , 31 , and 32 in the home appliance network system may communicate with the server 70 or the mobile terminal 50 via a wired/wireless router (not shown). In addition, the home appliances 10 , 20 , 31 , and 32 in the home appliance network system may communicate with the server 70 or the mobile terminal 50 through Ethernet.

도 2는 본 발명의 일 실시예에 따른 이동 로봇을 도시하는 사시도이고, 도 3은 도 2의 이동 로봇의 평면도이며, 도 4는 도 2의 이동 로봇의 측면도이다.2 is a perspective view illustrating a mobile robot according to an embodiment of the present invention, FIG. 3 is a plan view of the mobile robot of FIG. 2 , and FIG. 4 is a side view of the mobile robot of FIG. 2 .

도 2 내지 도 4를 참고하여, 이동 로봇(100)은 일정 영역을 스스로 주행할 수 있다. 이동 로봇(100)은 바닥을 청소하는 기능을 수행할 수 있다. 여기서 말하는 바닥의 청소에는, 바닥의 먼지(이물질을 포함한다)를 흡입하거나 바닥을 걸레질하는 것이 포함된다.2 to 4 , the mobile robot 100 may travel by itself in a predetermined area. The mobile robot 100 may perform a function of cleaning the floor. The cleaning of the floor referred to herein includes sucking in dust (including foreign matter) on the floor or mopping the floor.

이동 로봇(100)은 본체(110)를 포함한다. 본체(110)는 외관을 형성하는 케비닛을 포함한다. 이동 로봇(100)은, 본체(110)에 구비된 흡입 유닛(130) 및 먼지통(140)을 포함할 수 있다. 이동 로봇(100)은 이동 로봇 주변의 환경과 관련된 정보를 감지하는 영상획득부(120)를 포함한다. 이동 로봇(100)은 상기 본체를 이동시키는 주행부(160)를 포함한다. 이동 로봇(100)은 이동 로봇(100)의 제어를 위한 제어부(181)를 포함한다. 제어부(181)는 본체(110)에 구비된다.The mobile robot 100 includes a body 110 . The body 110 includes a cabinet forming an exterior. The mobile robot 100 may include a suction unit 130 and a dust container 140 provided in the main body 110 . The mobile robot 100 includes an image acquisition unit 120 that detects information related to the environment around the mobile robot. The mobile robot 100 includes a traveling unit 160 that moves the main body. The mobile robot 100 includes a controller 181 for controlling the mobile robot 100 . The control unit 181 is provided in the main body 110 .

주행부(160)는 이동 로봇(100)의 주행을 위한 휠 유닛(111)을 포함한다. 휠 유닛(111)은 본체(110)에 구비된다. 휠 유닛(111)에 의해 이동 로봇(100)은 전후좌우로 이동되거나 회전될 수 있다. 제어부가 휠 유닛(111)의 구동을 제어함으로써, 이동 로봇(100)은 바닥을 자율 주행할 수 있다. 휠 유닛(111)은 메인 휠(111a) 및 서브 휠(111b)을 포함한다. The driving unit 160 includes a wheel unit 111 for driving the mobile robot 100 . The wheel unit 111 is provided in the body 110 . The mobile robot 100 may be moved or rotated forward, backward, left, and right by the wheel unit 111 . As the controller controls the driving of the wheel unit 111 , the mobile robot 100 may autonomously drive on the floor. The wheel unit 111 includes a main wheel 111a and a sub wheel 111b.

메인 휠(111a)은 본체(110)의 양측에 각각 구비되어, 제어부의 제어 신호에 따라 일 방향 또는 타 방향으로 회전 가능하게 구성된다. 각각의 메인 휠(111a)은 서로 독립적으로 구동 가능하게 구성될 수 있다. 예를 들어, 각각의 메인 휠(111a)은 서로 다른 모터에 의해서 구동될 수 있다.The main wheel 111a is provided on both sides of the main body 110, and is configured to be rotatable in one direction or the other according to a control signal of the controller. Each of the main wheels 111a may be configured to be driven independently of each other. For example, each of the main wheels 111a may be driven by different motors.

서브 휠(111b)은 메인 휠(111a)과 함께 본체(110)를 지지하며, 메인 휠(111a)에 의한 이동 로봇(100)의 주행을 보조하도록 이루어진다. 이러한 서브 휠(111b)은 후술하는 흡입 유닛(130)에도 구비될 수 있다.The sub wheel 111b supports the main body 110 together with the main wheel 111a, and is configured to assist the movement of the mobile robot 100 by the main wheel 111a. This sub wheel 111b may also be provided in the suction unit 130 to be described later.

흡입 유닛(130)은 본체(110)의 전방(F)으로부터 돌출된 형태로 배치될 수 있다. 흡입 유닛(130)은 먼지가 포함된 공기를 흡입하도록 구비된다.The suction unit 130 may be disposed to protrude from the front F of the body 110 . The suction unit 130 is provided to suck air containing dust.

흡입 유닛(130)이 본체(110)의 전방에서 좌우 양측방으로 돌출된 형태를 가질 수 있다. 흡입 유닛(130)의 전단부는 본체(110)의 일측으로부터 전방으로 이격된 위치에 배치될 수 있다. 흡입 유닛(130)의 좌우 양단부는 본체(110)로부터 좌우 양측으로 각각 이격된 위치에 배치될 수 있다.The suction unit 130 may have a shape protruding from the front of the main body 110 to both left and right sides. The front end of the suction unit 130 may be disposed at a position spaced forward from one side of the body 110 . Both left and right ends of the suction unit 130 may be disposed at positions spaced apart from the main body 110 in both left and right sides, respectively.

본체(110)는 원형으로 형성되고, 흡입 유닛(130)의 후단부 양측이 본체(110)로부터 좌우 양측으로 각각 돌출 형성됨에 따라, 본체(110)와 흡입 유닛(130) 사이에는 빈 공간, 즉 틈이 형성될 수 있다. 상기 빈 공간은 본체(110)의 좌우 양단부와 흡입 유닛(130)의 좌우 양단부 사이의 공간으로서, 이동 로봇(100)의 내측으로 함몰된 형태를 가진다.The body 110 is formed in a circular shape, and as both sides of the rear end of the suction unit 130 protrude from the body 110 to the left and right sides, respectively, there is an empty space between the body 110 and the suction unit 130 , that is, A gap may be formed. The empty space is a space between the left and right both ends of the main body 110 and the left and right ends of the suction unit 130 , and has a shape recessed into the mobile robot 100 .

흡입 유닛(130)은 본체(110)에 착탈 가능하게 결합될 수 있다. 흡입 유닛(130)이 본체(110)로부터 분리되면, 분리된 흡입 유닛(130)을 대체하여 걸레 모듈(미도시)이 본체(110)에 착탈 가능하게 결합될 수 있다.The suction unit 130 may be detachably coupled to the body 110 . When the suction unit 130 is separated from the main body 110 , a mop module (not shown) may be detachably coupled to the main body 110 to replace the separated suction unit 130 .

영상획득부(120)는 본체(110)에 배치될 수 있다. 영상획득부(120)는 본체(110)의 전방(F)에 배치될 수 있다. 영상획득부(120)는 본체(110)의 상하 방향으로 흡입 유닛(130)과 오버랩(overlap)되도록 배치될 수 있다. 영상획득부(120)는 흡입 유닛(130)의 상부에 배치될 수 있다.The image acquisition unit 120 may be disposed on the main body 110 . The image acquisition unit 120 may be disposed in the front (F) of the main body (110). The image acquisition unit 120 may be disposed to overlap the suction unit 130 in the vertical direction of the main body 110 . The image acquisition unit 120 may be disposed on the suction unit 130 .

영상획득부(120)는 이동 로봇(100) 주변의 장애물을 감지할 수 있다. 영상획득부(120)는 이동 로봇(100)의 가장 앞쪽에 위치하는 흡입 유닛(130)이 장애물과 부딪히지 않도록 전방의 장애물이나 지형지물 등을 감지할 수 있다. 영상획득부(120)는 이러한 감지 기능 외의 후술할 다른 센싱 기능을 추가로 수행할 수 있다.The image acquisition unit 120 may detect obstacles around the mobile robot 100 . The image acquisition unit 120 may detect an obstacle or a feature in the front so that the suction unit 130 positioned at the front of the mobile robot 100 does not collide with the obstacle. The image acquisition unit 120 may additionally perform other sensing functions, which will be described later, in addition to these sensing functions.

본체(110)에는 먼지통 수용부(미도시)가 구비될 수 있다. 먼지통 수용부에는 흡입된 공기 중의 먼지를 분리하여 집진하는 먼지통(140)이 착탈 가능하게 결합된다. 먼지통 수용부는 본체(110)의 후방(R)에 형성될 수 있다. 먼지통(140)의 일부는 먼지통 수용부에 수용되되, 먼지통(140)의 다른 일부는 본체(110)의 후방(R)을 향하여 돌출되게 형성될 수 있다.The main body 110 may be provided with a dust container accommodating part (not shown). A dust container 140 that separates and collects dust in the sucked air is detachably coupled to the dust container accommodating part. The dust container accommodating part may be formed in the rear (R) of the main body 110 . A part of the dust container 140 may be accommodated in the dust container accommodating part, and the other part of the dust container 140 may be formed to protrude toward the rear R of the main body 110 .

먼지통(140)에는 먼지가 포함된 공기가 유입되는 입구(미도시)와 먼지가 분리된 공기가 배출되는 출구(미도시)가 형성된다. 먼지통 수용부에 먼지통(140)이 장착시 먼지통(140)의 상기 입구와 상기 출구는 먼지통 수용부의 내측벽에 형성된 제1 개구(미도시) 및 제2 개구(미도시)와 각각 연통되도록 구성된다.In the dust container 140 , an inlet (not shown) through which air containing dust is introduced and an outlet (not shown) through which dust-separated air is discharged are formed. When the dust bin 140 is mounted on the dust bin accommodating part, the inlet and the outlet of the dust bin 140 are configured to communicate with a first opening (not shown) and a second opening (not shown) formed on the inner wall of the dust bin accommodating part, respectively. .

흡입 유닛(130)의 흡입구부터 상기 제1 개구까지 공기를 안내하는 흡입 유로(미도시)가 구비된다. 상기 제2 개구부터 외부를 향해 열린 배기구(미도시)까지 공기를 안내하는 배기 유로(미도시)가 구비된다.A suction flow path (not shown) for guiding air from the suction port of the suction unit 130 to the first opening is provided. An exhaust flow path (not shown) for guiding air from the second opening to an exhaust port (not shown) opened toward the outside is provided.

흡입 유닛(130)을 통하여 유입된 먼지가 포함된 공기는 본체(110) 내부의 상기 흡기유로를 거쳐, 먼지통(140)으로 유입되고, 먼지통(140)의 필터 내지는 사이클론을 거치면서 공기와 먼지가 상호 분리된다. 먼지는 먼지통(140)에 집진되며, 공기는 먼지통(140)에서 배출된 후 본체(110) 내부의 상기 배기유로를 거쳐 최종적으로 상기 배기구를 통하여 외부로 배출된다.The air containing dust introduced through the suction unit 130 passes through the intake passage inside the main body 110 and flows into the dust container 140 , and the air and dust pass through the filter or cyclone of the dust container 140 . separated from each other Dust is collected in the dust container 140 , and after air is discharged from the dust container 140 , it passes through the exhaust passage inside the main body 110 and is finally discharged to the outside through the exhaust port.

도 5는 본 발명의 일 실시예에 따른 이동 로봇의 주요 구성들 간의 제어관계를 도시한 블록도이다.5 is a block diagram illustrating a control relationship between main components of a mobile robot according to an embodiment of the present invention.

도 2 내지 도 5를 참조하면, 이동 로봇(100)은, 본체(110)와, 본체(110) 주변의 영상을 획득하는 영상획득부(120)를 포함한다. 2 to 5 , the mobile robot 100 includes a main body 110 and an image acquisition unit 120 that acquires images around the main body 110 .

이동 로봇(100)은 본체(110)를 이동시키는 주행부(160)를 포함한다. 주행부(160)는 본체(110)를 이동시키는 적어도 하나의 휠 유닛(111)을 포함한다. 주행부(160)는 휠 유닛(111)에 연결되어 휠 유닛(111)을 회전시키는 구동 모터(미도시)를 포함한다. The mobile robot 100 includes a traveling unit 160 that moves the main body 110 . The driving unit 160 includes at least one wheel unit 111 for moving the body 110 . The driving unit 160 includes a driving motor (not shown) connected to the wheel unit 111 to rotate the wheel unit 111 .

영상획득부(120)는 주행구역을 촬영하는 것으로, 카메라 모듈을 포함할 수 있다. 상기 카메라 모듈은 디지털 카메라를 포함할 수 있다. 디지털 카메라는 적어도 하나의 광학렌즈와, 광학렌즈를 통과한 광에 의해 상이 맺히는 다수개의 광다이오드(photodiode, 예를 들어, pixel)를 포함하여 구성된 이미지센서(예를 들어, CMOS image sensor)와, 광다이오드들로부터 출력된 신호를 바탕으로 영상을 구성하는 디지털 신호 처리기(DSP: Digital Signal Processor)를 포함할 수 있다. 디지털 신호 처리기는 정지영상은 물론이고, 정지영상으로 구성된 프레임들로 이루어진 동영상을 생성하는 것도 가능하다.The image acquisition unit 120 captures the driving area, and may include a camera module. The camera module may include a digital camera. A digital camera includes at least one optical lens and an image sensor (eg, CMOS image sensor) including a plurality of photodiodes (eg, pixels) that are imaged by light passing through the optical lens; It may include a digital signal processor (DSP) that configures an image based on signals output from the photodiodes. The digital signal processor may generate a still image as well as a moving picture composed of frames composed of still images.

이러한 카메라는 촬영 효율을 위해 각 부위별로 여러 개가 설치될 수도 있다. 카메라에 의해 촬상된 영상은 해당 공간에 존재하는 먼지, 머리카락, 바닥 등과 같은 물질의 종류 인식, 청소 여부, 또는 청소 시점을 확인하는데 사용할 수 있다.A plurality of such cameras may be installed for each part for photographing efficiency. The image captured by the camera may be used to recognize the type of material such as dust, hair, floor, etc. present in the space, whether to clean it, or to check the cleaning time.

카메라는 이동 로봇(100)의 주행 방향 전면에 존재하는 장애물 또는 청소 영역의 상황을 촬영할 수 있다.The camera may photograph the situation of an obstacle or a cleaning area existing in front of the moving direction of the mobile robot 100 .

본 발명의 일 실시예에 따르면, 상기 영상획득부(120)는 본체(110) 주변을 연속적으로 촬영하여 복수의 영상을 획득할 수 있고, 획득된 복수의 영상은 저장부(105)에 저장될 수 있다.According to an embodiment of the present invention, the image acquisition unit 120 may acquire a plurality of images by continuously photographing the periphery of the main body 110 , and the acquired plurality of images may be stored in the storage unit 105 . can

이동 로봇(100)은 복수의 영상을 이용하여 공간 인식, 위치 인식, 장애물 인식의 정확성을 높이거나, 복수의 영상 중 하나 이상의 영상을 선택하여 효과적인 데이터를 사용함으로써 공간 인식, 위치 인식, 장애물 인식의 정확성을 높일 수 있다.The mobile robot 100 increases the accuracy of spatial recognition, location recognition, and obstacle recognition by using a plurality of images, or selects one or more images among a plurality of images and uses effective data to perform spatial recognition, location recognition, and obstacle recognition. accuracy can be increased.

또한, 이동 로봇(100)은 이동 로봇의 동작, 상태와 관련된 각종 데이터를 센싱하는 센서들을 포함하는 센서부(170)를 포함할 수 있다.In addition, the mobile robot 100 may include a sensor unit 170 including sensors for sensing various data related to the operation and state of the mobile robot.

예를 들어, 상기 센서부(170)는 전방의 장애물을 감지하는 장애물 감지 센서를 포함할 수 있다. 또한, 상기 센서부(170)는 주행구역 내 바닥에 낭떠러지의 존재 여부를 감지하는 낭떠러지 감지센서와, 바닥의 영상을 획득하는 하부 카메라 센서를 더 포함할 수 있다. For example, the sensor unit 170 may include an obstacle detection sensor that detects an obstacle in front. In addition, the sensor unit 170 may further include a cliff detection sensor for detecting the presence of a cliff on the floor in the driving zone, and a lower camera sensor for acquiring an image of the floor.

상기 장애물 감지 센서는, 적외선 센서, 초음파 센서, RF 센서, 지자기 센서, PSD(Position Sensitive Device) 센서 등을 포함할 수 있다.The obstacle detection sensor may include an infrared sensor, an ultrasonic sensor, an RF sensor, a geomagnetic sensor, a Position Sensitive Device (PSD) sensor, and the like.

한편, 상기 장애물 감지 센서에 포함되는 센서의 위치와 종류는 이동 로봇의 기종에 따라 달라질 수 있고, 상기 장애물 감지 센서는 더 다양한 센서를 포함할 수 있다.On the other hand, the position and type of the sensor included in the obstacle detection sensor may vary depending on the model of the mobile robot, and the obstacle detection sensor may include more various sensors.

한편, 상기 센서부(170)는 본체(110)의 구동에 따른 이동 로봇(100)의 동작을 감지하고 동작 정보를 출력하는 동작 감지 센서를 더 포함할 수 있다. 예를 들어, 동작 감지 센서로는, 자이로 센서(Gyro Sensor), 휠 센서(Wheel Sensor), 가속도 센서(Acceleration Sensor) 등을 사용할 수 있다.Meanwhile, the sensor unit 170 may further include a motion detection sensor that detects a motion of the mobile robot 100 according to the driving of the main body 110 and outputs motion information. For example, as the motion detection sensor, a gyro sensor, a wheel sensor, an acceleration sensor, or the like may be used.

자이로 센서는, 이동 로봇(100)이 운전 모드에 따라 움직일 때 회전 방향을 감지하고 회전각을 검출한다. 자이로 센서는, 이동 로봇(100)의 각속도를 검출하여 각속도에 비례하는 전압 값을 출력한다. 제어부(150)는 자이로 센서로부터 출력되는 전압 값을 이용하여 회전 방향 및 회전각을 산출한다.The gyro sensor detects a rotation direction and a rotation angle when the mobile robot 100 moves according to a driving mode. The gyro sensor detects the angular velocity of the mobile robot 100 and outputs a voltage value proportional to the angular velocity. The controller 150 calculates a rotation direction and a rotation angle by using a voltage value output from the gyro sensor.

휠 센서는, 휠 유닛(111)에 연결되어 바퀴의 회전수를 감지한다. 여기서, 휠 센서는 로터리 엔코더(Rotary Encoder)일 수 있다. The wheel sensor is connected to the wheel unit 111 to detect the number of rotations of the wheel. Here, the wheel sensor may be a rotary encoder.

가속도 센서는, 이동 로봇(100)의 속도 변화, 예를 들어, 출발, 정지, 방향 전환, 물체와의 충돌 등에 따른 이동 로봇(100)의 변화를 감지한다. The acceleration sensor detects a change in speed of the mobile robot 100 , for example, a change in the mobile robot 100 according to start, stop, direction change, collision with an object, and the like.

또한, 가속도 센서는 제어부(150)에 내장되어 이동 로봇(100)의 속도 변화를 감지할 수 있다. Also, the acceleration sensor may be embedded in the controller 150 to detect a change in speed of the mobile robot 100 .

제어부(150)는 동작 감지 센서로부터 출력된 동작 정보에 기초하여 이동 로봇(100)의 위치 변화를 산출할 수 있다. 이러한 위치는 영상 정보를 이용한 절대 위치에 대응하여 상대 위치가 된다. 이동 로봇은 이러한 상대 위치 인식을 통해 영상 정보와 장애물 정보를 이용한 위치 인식의 성능을 향상시킬 수 있다.The controller 150 may calculate a change in the position of the mobile robot 100 based on the motion information output from the motion detection sensor. This position becomes a relative position corresponding to the absolute position using the image information. The mobile robot can improve the performance of position recognition using image information and obstacle information through such relative position recognition.

한편, 이동 로봇(100)은 충전 가능한 배터리를 구비하여 이동 로봇 내로 전원을 공급하는 전원 공급부(미도시)를 포함할 수 있다.Meanwhile, the mobile robot 100 may include a power supply unit (not shown) that includes a rechargeable battery and supplies power to the mobile robot.

상기 전원 공급부는 이동 로봇(100)의 각 구성 요소들에 구동 전원과, 동작 전원을 공급하며, 전원 잔량이 부족하면 충전대(미도시)에서 전원을 공급받아 충전될 수 있다. The power supply unit supplies driving power and operating power to each component of the mobile robot 100, and when the remaining power is insufficient, it may be charged by receiving power from a charging station (not shown).

이동 로봇(100)은 배터리의 충전 상태를 감지하고, 감지 결과를 제어부(150)에 전송하는 배터리 감지부(미도시)를 더 포함할 수 있다. 배터리는 배터리 감지부와 연결되어 배터리 잔량 및 충전 상태가 제어부(150)에 전달된다. 배터리 잔량은 출력부(180)의 디스플레이(182)에 표시될 수 있다.The mobile robot 100 may further include a battery detection unit (not shown) that detects the state of charge of the battery and transmits the detection result to the control unit 150 . The battery is connected to the battery detection unit, and the remaining battery level and charging state are transmitted to the control unit 150 . The remaining battery level may be displayed on the display 182 of the output unit 180 .

또한, 이동 로봇(100)은 온/오프(On/Off) 또는 각종 명령을 입력할 수 있는 입력부(125)를 포함한다. 입력부(125)는 버튼이나 다이얼, 터치 스크린 등을 포함할 수 있다. 입력부(125)는 사용자의 음성 지시를 입력 받기 위한 마이크를 포함할 수 있다. 입력부(125)를 통해 이동 로봇(100)의 작동 전반에 필요한 각종 제어명령을 입력받을 수 있다. In addition, the mobile robot 100 includes an input unit 125 capable of inputting on/off or various commands. The input unit 125 may include a button, a dial, a touch screen, or the like. The input unit 125 may include a microphone for receiving a user's voice instruction. Various control commands necessary for the overall operation of the mobile robot 100 may be input through the input unit 125 .

또한, 이동 로봇(100)은 출력부(180)를 포함하여, 예약 정보, 배터리 상태, 동작모드, 동작상태, 에러상태 등을 이미지로 표시하거나 음향으로 출력할 수 있다. In addition, the mobile robot 100 may include the output unit 180 to display reservation information, battery state, operation mode, operation state, error state, etc. as an image or output the sound.

출력부(180)는 오디오 신호를 출력하는 음향 출력부(181)를 포함할 수 있다. 음향 출력부(181)는 제어부(150)의 제어에 따라 경고음, 동작모드, 동작상태, 에러상태 등의 알림 메시지 등을 음향으로 출력할 수 있다. 음향 출력부(181)는, 제어부(150)로부터의 전기 신호를 오디오 신호로 변환하여 출력할 수 있다. 이를 위해, 스피커 등을 구비할 수 있다.The output unit 180 may include a sound output unit 181 for outputting an audio signal. The sound output unit 181 may output a notification message such as a warning sound, an operation mode, an operation state, an error state, etc. in sound according to the control of the controller 150 . The sound output unit 181 may convert the electrical signal from the control unit 150 into an audio signal and output it. For this, a speaker or the like may be provided.

또한, 출력부(180)는 예약 정보, 배터리 상태, 동작모드, 동작상태, 에러상태 등을 이미지로 표시하는 디스플레이(182)를 더 포함할 수 있다.In addition, the output unit 180 may further include a display 182 for displaying reservation information, battery status, operation mode, operation state, error state, etc. as an image.

도 5를 참조하면, 이동 로봇(100)은 현재 위치를 인식하는 등 각종 정보를 처리하고 판단하는 제어부(150), 및 각종 데이터를 저장하는 저장부(105)를 포함한다. 또한, 이동 로봇(100)은 외부 단말기와 데이터를 송수신하는 통신부(190)를 더 포함할 수 있다. Referring to FIG. 5 , the mobile robot 100 includes a control unit 150 for processing and determining various information such as recognizing a current location, and a storage unit 105 for storing various data. In addition, the mobile robot 100 may further include a communication unit 190 for transmitting and receiving data with an external terminal.

외부 단말기는 이동 로봇(100)을 제어하기 위한 애플리케이션을 구비하고, 애플리케이션의 실행을 통해 이동 로봇(100)이 청소할 주행구역에 대한 맵을 표시하고, 맵 상에 특정 영역을 청소하도록 영역을 지정할 수 있다. 외부 단말기는 맵 설정을 위한 애플리케이션(application)이 탑재된 리모콘, PDA, 랩탑(laptop), 스마트 폰, 태블릿 등을 예로 들 수 있다. The external terminal has an application for controlling the mobile robot 100, displays a map for the driving area to be cleaned by the mobile robot 100 through the execution of the application, and can designate an area to clean a specific area on the map have. The external terminal may include, for example, a remote controller, a PDA, a laptop, a smart phone, a tablet, etc. equipped with an application for setting a map.

외부 단말기는 이동 로봇(100)과 통신하여, 맵과 함께 이동 로봇의 현재 위치를 표시할 수 있으며, 복수의 영역에 대한 정보가 표시될 수 있다. 또한, 외부 단말기는 이동 로봇의 주행에 따라 그 위치를 갱신하여 표시한다. The external terminal may communicate with the mobile robot 100 to display the current location of the mobile robot together with a map, and information on a plurality of areas may be displayed. In addition, the external terminal updates and displays the position according to the movement of the mobile robot.

제어부(150)는 이동 로봇(100)를 구성하는 영상획득부(120), 입력부(125), 주행부(160), 흡입 유닛(130) 등을 제어하여, 이동 로봇(100)의 동작 전반을 제어한다. The control unit 150 controls the image acquisition unit 120 , the input unit 125 , the traveling unit 160 , the suction unit 130 , and the like constituting the mobile robot 100 to control the overall operation of the mobile robot 100 . Control.

제어부(150)는 입력부(125)의 마이크를 통해 수신되는 사용자의 음성 입력 신호를 처리하고 음성 인식 과정을 수행할 수 있다. 실시예에 따라서, 이동 로봇(100)은 제어부(150) 내부 또는 외부에 음성 인식을 수행하는 음성 인식 모듈을 구비할 수 있다.The controller 150 may process a user's voice input signal received through the microphone of the input unit 125 and perform a voice recognition process. According to an embodiment, the mobile robot 100 may include a voice recognition module for performing voice recognition inside or outside the control unit 150 .

실시예에 따라서, 간단한 음성 인식은 이동 로봇(100)이 자체적으로 수행하고, 자연어 처리 등 고차원의 음성 인식은 서버(70)에서 수행될 수 있다.According to an embodiment, simple voice recognition may be performed by the mobile robot 100 by itself, and high-level voice recognition such as natural language processing may be performed by the server 70 .

저장부(105)는 이동 로봇(100)의 제어에 필요한 각종 정보들을 기록하는 것으로, 휘발성 또는 비휘발성 기록 매체를 포함할 수 있다. 기록 매체는 마이크로 프로세서(micro processor)에 의해 읽힐 수 있는 데이터를 저장한 것으로, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등을 포함할 수 있다.The storage unit 105 records various types of information necessary for controlling the mobile robot 100 , and may include a volatile or nonvolatile recording medium. A recording medium stores data that can be read by a microprocessor, such as HDD (Hard Disk Drive), SSD (Solid State Disk), SDD (Silicon Disk Drive), ROM, RAM, CD-ROM, magnetic may include tapes, floppy disks, optical data storage devices, and the like.

또한, 저장부(105)에는 주행구역에 대한 맵(Map)이 저장될 수 있다. 맵은 이동 로봇(100)과 유선 또는 무선 통신을 통해 정보를 교환할 수 있는 외부 단말기, 서버 등에 의해 입력된 것일 수도 있고, 이동 로봇(100)이 스스로 학습을 하여 생성한 것일 수도 있다. In addition, the storage unit 105 may store a map (Map) for the driving area. The map may be input by an external terminal or server capable of exchanging information with the mobile robot 100 through wired or wireless communication, or may be generated by the mobile robot 100 learning itself.

맵에는 주행구역 내의 방들의 위치가 표시될 수 있다. 또한, 이동 로봇(100)의 현재 위치가 맵 상에 표시될 수 있으며, 맵 상에서의 이동 로봇(100)의 현재의 위치는 주행 과정에서 갱신될 수 있다. 외부 단말기는 저장부(105)에 저장된 맵과 동일한 맵을 저장한다. The map may display the locations of the rooms in the driving area. In addition, the current position of the mobile robot 100 may be displayed on the map, and the current position of the mobile robot 100 on the map may be updated during the driving process. The external terminal stores the same map as the map stored in the storage unit 105 .

상기 저장부(105)는 청소 이력 정보를 저장할 수 있다. 이러한 청소 이력 정보는 청소를 수행할 때마다 생성될 수 있다.The storage unit 105 may store cleaning history information. Such cleaning history information may be generated whenever cleaning is performed.

상기 저장부(105)에 저장되는 주행구역에 대한 맵은, 청소 중 주행에 사용되는 내비게이션 맵(Navigation map), 위치 인식에 사용되는 SLAM(Simultaneous localization and mapping) 맵, 장애물 등에 부딪히면 해당 정보를 저장하여 학습 청소시 사용하는 학습 맵, 전역 위치 인식에 사용되는 전역 위치 맵, 인식된 장애물에 관한 정보가 기록되는 장애물 인식 맵 등일 수 있다. The map for the driving area stored in the storage unit 105 is a navigation map used for driving while cleaning, a Simultaneous localization and mapping (SLAM) map used for location recognition, and an obstacle. Thus, it may be a learning map used for learning and cleaning, a global location map used for global location recognition, an obstacle recognition map in which information on recognized obstacles is recorded, and the like.

한편, 상술한 바와 같이 용도별로 상기 저장부(105)에 맵들을 구분하여 저장, 관리할 수 있지만, 맵이 용도별로 명확히 구분되지 않을 수도 있다. 예를 들어, 적어도 2 이상의 용도로 사용할 수 있도록 하나의 맵에 복수의 정보를 저장할 수도 있다.Meanwhile, as described above, although maps can be stored and managed in the storage unit 105 by use, the maps may not be clearly classified by use. For example, a plurality of pieces of information may be stored in one map to be used for at least two or more purposes.

제어부(150)는 주행제어모듈(151), 지도생성모듈(152), 위치인식모듈(153) 및 장애물인식모듈(154)을 포함할 수 있다. The control unit 150 may include a driving control module 151 , a map generation module 152 , a location recognition module 153 , and an obstacle recognition module 154 .

도 1 내지 도 5를 참조하면, 주행제어모듈(151)은 이동 로봇(100)의 주행을 제어하는 것으로, 주행 설정에 따라 주행부(160)의 구동을 제어한다. 또한, 주행제어모듈(151)은 주행부(160)의 동작을 바탕으로 이동 로봇(100)의 주행경로를 파악할 수 있다. 예를 들어, 주행제어모듈(151)은 휠 유닛(111)의 회전속도를 바탕으로 이동 로봇(100)의 현재 또는 과거의 이동속도, 주행한 거리 등을 파악할 수 있으며, 이렇게 파악된 이동 로봇(100)의 주행 정보를 바탕으로, 맵 상에서 이동 로봇(100)의 위치가 갱신될 수 있다. 1 to 5 , the driving control module 151 controls the driving of the mobile robot 100 and controls the driving of the driving unit 160 according to the driving setting. Also, the driving control module 151 may determine the driving path of the mobile robot 100 based on the operation of the driving unit 160 . For example, the driving control module 151 may determine the current or past movement speed, the distance traveled, etc. of the mobile robot 100 based on the rotation speed of the wheel unit 111, and the detected mobile robot ( Based on the driving information of 100 ), the position of the mobile robot 100 on the map may be updated.

지도생성모듈(152)은 주행구역의 맵을 생성할 수 있다. 지도생성모듈(152)은 영상획득부(120)를 통해 획득한 영상을 처리하여 맵을 작성할 수 있다. 즉, 청소 영역과 대응되는 청소 맵을 작성할 수 있다.The map generation module 152 may generate a map of the driving area. The map generation module 152 may create a map by processing the image acquired through the image acquisition unit 120 . That is, a cleaning map corresponding to the cleaning area may be created.

또한, 지도생성모듈(152)은 각 위치에서 영상획득부(120)를 통해 획득한 영상을 처리하여 맵과 연계시켜 전역위치를 인식할 수 있다.In addition, the map generation module 152 may process the image acquired through the image acquisition unit 120 at each location and link it with the map to recognize the global location.

위치인식모듈(153)은 현재 위치를 추정하여 인식한다. 위치인식모듈(153)은 영상획득부(120)의 영상 정보를 이용하여 지도생성모듈(152)과 연계하여 위치를 파악함으로써, 이동 로봇(100)의 위치가 갑자기 변경되는 경우에도 현재 위치를 추정하여 인식할 수 있다.The location recognition module 153 estimates and recognizes the current location. The position recognition module 153 uses the image information of the image acquisition unit 120 to determine the position in connection with the map generation module 152, thereby estimating the current position even when the position of the mobile robot 100 is suddenly changed. can be recognized by

또한, 위치인식모듈(153)은 현재 위치하는 영역의 속성을 인식할 수 있다, 즉, 위치인식모듈(153)는 공간을 인식할 수 있다.In addition, the location recognition module 153 can recognize the property of the area currently located, that is, the location recognition module 153 can recognize the space.

이동 로봇(100)은 위치인식모듈(153)을 통해 연속적인 주행 중에 위치 인식이 가능하고 또한, 위치인식모듈(153) 없이 지도생성모듈(152) 및 장애물인식모듈(154)을 통해, 맵을 학습하고 현재 위치 등을 추정할 수 있다. The mobile robot 100 can recognize a position during continuous driving through the position recognition module 153 and, through the map generation module 152 and the obstacle recognition module 154 without the position recognition module 153, create a map. You can learn and estimate your current location, etc.

이동 로봇(100)이 주행하는 중에, 영상획득부(120)는 이동 로봇(100) 주변의 영상들을 획득한다. 이하, 영상획득부(120)에 의해 획득된 영상을 '획득영상'이라고 정의한다. While the mobile robot 100 is running, the image acquisition unit 120 acquires images around the mobile robot 100 . Hereinafter, an image acquired by the image acquisition unit 120 is defined as an 'acquired image'.

획득영상에는 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러가지 특징(feature)들이 포함된다. The acquired image includes various features such as lights located on the ceiling, edges, corners, blobs, and ridges.

지도생성모듈(152)은 획득영상들 각각으로부터 특징을 검출하고, 각 특징점을 근거로 디스크립터를 산출한다. The map generation module 152 detects a feature from each of the acquired images, and calculates a descriptor based on each feature point.

지도생성모듈(152)은 각 위치의 획득영상을 통해 얻은 디스크립터 정보를 바탕으로, 획득영상마다 적어도 하나의 디스크립터를 소정 하위 분류규칙에 따라 복수의 군으로 분류하고, 소정 하위 대표규칙에 따라 같은 군에 포함된 디스크립터들을 각각 하위 대표 디스크립터로 변환할 수 있다.The map generation module 152 classifies at least one descriptor for each acquired image into a plurality of groups according to a predetermined sub-classification rule based on the descriptor information obtained through the acquired image of each location, and classifies the same group according to a predetermined sub-representative rule. Each of the descriptors included in ? can be converted into a sub-representative descriptor.

다른 예로, 실(room)과 같이 소정 구역내의 획득영상들로부터 모인 모든 디스크립터를 소정 하위 분류규칙에 따라 복수의 군으로 분류하여 상기 소정 하위 대표규칙에 따라 같은 군에 포함된 디스크립터들을 각각 하위 대표 디스크립터로 변환할 수도 있다. As another example, all descriptors collected from acquired images within a predetermined area such as a room are classified into a plurality of groups according to a predetermined sub-classification rule, and the descriptors included in the same group according to the predetermined sub-representative rule are respectively classified as sub-representative descriptors. can also be converted to

지도생성모듈(152)은 이 같은 과정을 거쳐, 각 위치의 특징분포를 구할 수 있다. 각 위치 특징분포는 히스토그램 또는 n차원 벡터로 표현될 수 있다. 또 다른 예로, 지도생성모듈(152)은 소정 하위 분류규칙 및 소정 하위 대표규칙을 거치지 않고, 각 특징점으로부터 산출된 디스크립터를 바탕으로 미지의 현재위치를 추정할 수 있다. The map generation module 152 may obtain the feature distribution of each location through this process. Each location feature distribution may be expressed as a histogram or an n-dimensional vector. As another example, the map generating module 152 may estimate an unknown current location based on descriptors calculated from each feature point without going through a predetermined sub-classification rule and a predetermined sub-representative rule.

또한, 위치 도약 등의 이유로 이동 로봇(100)의 현재 위치가 미지의 상태가 된 경우에, 기 저장된 디스크립터 또는 하위 대표 디스크립터 등의 데이터를 근거로 현재 위치를 추정할 수 있다. In addition, when the current position of the mobile robot 100 becomes unknown due to a position jump or the like, the current position may be estimated based on data such as a pre-stored descriptor or a sub-representative descriptor.

이동 로봇(100)은, 미지의 현재 위치에서 영상획득부(120)를 통해 획득영상을 획득한다. 영상을 통해 천장에 위치하는 조명들, 경계(edge), 코너(corner), 얼룩(blob), 굴곡(ridge) 등의 여러가지 특징(feature)들이 확인된다.The mobile robot 100 acquires an acquired image through the image acquisition unit 120 at an unknown current position. Various features such as lights located on the ceiling, edges, corners, blobs, and ridges are identified through the image.

위치인식모듈(153)은 획득영상으로부터 특징들을 검출하고, 디스크립터를 산출한다. The location recognition module 153 detects features from the acquired image and calculates a descriptor.

위치인식모듈(153)은 미지의 현재 위치의 획득영상을 통해 얻은 적어도 하나의 디스크립터 정보를 근거로, 소정 하위 변환규칙에 따라 비교대상이 되는 위치 정보(예를 들면, 각 위치의 특징분포)와 비교 가능한 정보(하위 인식 특징분포)로 변환한다.The location recognition module 153 is configured to compare location information (eg, feature distribution of each location) to be compared according to a predetermined sub-transformation rule based on at least one descriptor information obtained through an image acquired through an unknown current location. It is converted into comparable information (lower recognition feature distribution).

소정 하위 비교규칙에 따라, 각각의 위치 특징분포를 각각의 인식 특징분포와 비교하여 각각의 유사도를 산출할 수 있다. 각각의 위치에 해당하는 상기 위치 별로 유사도(확률)를 산출하고, 그 중 가장 큰 확률이 산출되는 위치를 현재위치로 결정할 수 있다.According to a predetermined sub-comparison rule, each positional feature distribution may be compared with each recognized feature distribution to calculate each similarity. A degree of similarity (probability) may be calculated for each location corresponding to each location, and a location from which the greatest probability is calculated may be determined as the current location.

이와 같이, 제어부(150)는 주행구역을 구분하고 복수의 영역으로 구성된 맵을 생성하거나, 기저장된 맵을 바탕으로 본체(110)의 현재 위치를 인식할 수 있다. In this way, the controller 150 may divide the driving zone and generate a map composed of a plurality of areas, or recognize the current location of the main body 110 based on a pre-stored map.

제어부(150)는 맵이 생성되면, 생성된 맵을 통신부(190)를 통해 외부 단말기, 서버 등으로 전송할 수 있다. 또한, 제어부(150)는 앞서 설명한 바와 같이, 외부 단말기, 서버 등으로부터 맵이 수신되면, 저장부(105)에 저장할 수 있다. When the map is generated, the control unit 150 may transmit the generated map to an external terminal, a server, or the like through the communication unit 190 . Also, as described above, when a map is received from an external terminal, a server, or the like, the controller 150 may store the map in the storage unit 105 .

이때, 맵은 청소 영역을 복수의 영역으로 구분되고, 복수의 영역을 연결하는 연결통로가 포함하며, 영역 내의 장애물에 대한 정보를 포함할 수 있다. In this case, the map may divide the cleaning area into a plurality of areas, may include a connection passage connecting the plurality of areas, and may include information on obstacles in the area.

제어부(150)는 청소명령이 입력되면, 맵 상의 위치와 이동 로봇의 현재위치가 일치하는지 여부를 판단한다. 청소명령은 리모컨, 입력부 또는 외부 단말기로부터 입력될 수 있다. When a cleaning command is input, the control unit 150 determines whether the location on the map matches the current location of the mobile robot. The cleaning command may be input from a remote control, an input unit, or an external terminal.

제어부(150)는 현재 위치가 맵 상의 위치와 일치하지 않는 경우, 또는 현재 위치를 확인할 수 없는 경우, 현재 위치를 인식하여 이동 로봇(100)의 현재 위치를 복구한 한 후, 현재 위치를 바탕으로 지정영역으로 이동하도록 주행부(160)를 제어할 수 있다. When the current location does not match the location on the map, or when the current location cannot be confirmed, the controller 150 recognizes the current location and restores the current location of the mobile robot 100, and then based on the current location. The driving unit 160 may be controlled to move to a designated area.

현재 위치가 맵 상의 위치와 일치하지 않는 경우 또는 현재 위치를 확인 할 수 없는 경우, 위치인식모듈(153)은 영상획득부(120)로부터 입력되는 획득영상을 분석하여 맵을 바탕으로 현재 위치를 추정할 수 있다. 또한, 장애물인식모듈(154) 또는 지도생성모듈(152) 또한, 같은 방식으로 현재 위치를 인식할 수 있다. When the current location does not match the location on the map or when the current location cannot be confirmed, the location recognition module 153 analyzes the acquired image input from the image acquisition unit 120 to estimate the current location based on the map can do. In addition, the obstacle recognition module 154 or the map generation module 152 may also recognize the current location in the same way.

위치를 인식하여 이동 로봇(100)의 현재 위치를 복구한 후, 주행제어모듈(151)은 현재 위치로부터 지정영역으로 주행경로를 산출하고 주행부(160)를 제어하여 지정영역으로 이동한다. After recognizing the position and restoring the current position of the mobile robot 100, the driving control module 151 calculates a driving route from the current position to the designated area and controls the driving unit 160 to move to the designated area.

서버로부터 청소 패턴 정보를 수신하는 경우, 주행제어모듈(151)은 수신한 청소 패턴 정보에 따라, 전체 주행구역을 복수의 영역으로 나누고, 하나 이상의 영역을 지정영역으로 설정할 수 있다.When receiving the cleaning pattern information from the server, the driving control module 151 may divide the entire driving zone into a plurality of regions according to the received cleaning pattern information, and may set one or more regions as a designated region.

또한, 주행제어모듈(151)은 수신한 청소 패턴 정보에 따라 주행경로를 산출하고, 주행경로를 따라 주행하며, 청소를 수행할 수 있다. In addition, the driving control module 151 may calculate a driving route according to the received cleaning pattern information, travel along the driving route, and perform cleaning.

제어부(150)는 설정된 지정영역에 대한 청소가 완료되면, 청소기록을 저장부(105)에 저장할 수 있다. When cleaning of the set designated area is completed, the controller 150 may store the cleaning record in the storage unit 105 .

또한, 제어부(150)는 통신부(190)를 통해 이동 로봇(100)의 동작상태 또는 청소상태를 소정 주기로 외부 단말기, 서버로 전송할 수 있다. In addition, the control unit 150 may transmit the operation state or the cleaning state of the mobile robot 100 to an external terminal or a server at a predetermined cycle through the communication unit 190 .

그에 따라 외부 단말기는 수신되는 데이터를 바탕으로, 실행중인 애플리케이션의 화면상에 맵과 함께 이동 로봇의 위치를 표시하고, 또한 청소 상태에 대한 정보를 출력한다.Accordingly, the external terminal displays the location of the mobile robot along with a map on the screen of the running application based on the received data, and also outputs information on the cleaning status.

본 발명의 실시예에 따른 이동 로봇(100)은 일방향으로 장애물이나 벽면이 감지될 때까지 이동하다가, 장애물인식모듈(154)이 장애물을 인식하면, 인식된 장애물의 속성에 따라 직진, 회전 등 주행 패턴을 결정할 수 있다.The mobile robot 100 according to an embodiment of the present invention moves in one direction until an obstacle or a wall is detected, and when the obstacle recognition module 154 recognizes the obstacle, it travels straight ahead, rotates, etc. according to the properties of the recognized obstacle. pattern can be determined.

한편, 제어부(150)는 인식된 장애물의 속성에 기초하여 다른 패턴으로 회피주행을 수행하도록 제어할 수 있다. 제어부(150)는 비위험 장애물(일반 장애물), 위험 장애물, 이동 가능한 장애물 등 장애물의 속성에 따라 다른 패턴으로 회피 주행하도록 제어할 수 있다. Meanwhile, the controller 150 may control to perform the avoidance driving in a different pattern based on the recognized attribute of the obstacle. The controller 150 may control to avoid driving in different patterns according to the properties of obstacles, such as non-hazardous obstacles (general obstacles), dangerous obstacles, and movable obstacles.

예를 들어, 제어부(150)는 위험 장애물은 더 긴 거리의 안전 거리를 확보한 상태에서 우회하여 회피하도록 제어할 수 있다.For example, the controller 150 may control the dangerous obstacle to be bypassed and avoided while securing a longer safety distance.

또한, 제어부(150)는 이동 가능한 장애물의 경우에 소정 대기 시간 후에도 장애물이 이동하지 않으면, 일반 장애물에 대응하는 회피 주행 또는 위험 장애물에 대응하는 회피 주행을 수행하도록 제어할 수 있다. 또는, 제어부(150)는 이동 가능한 장애물에 대응하는 회피 주행 패턴이 별도로 설정된 경우에는 이에 따라 주행하도록 제어할 수 있다.In addition, in the case of a movable obstacle, if the obstacle does not move even after a predetermined waiting time, the controller 150 may control to perform an evasive driving corresponding to a general obstacle or an evasive driving corresponding to a dangerous obstacle. Alternatively, when an avoidance driving pattern corresponding to a movable obstacle is set separately, the control unit 150 may control the vehicle to travel according to the setting.

본 발명의 실시예에 따른 이동 로봇(100)은, 머신 러닝(machine learning) 기반의 장애물 인식 및 회피를 수행할 수 있다. The mobile robot 100 according to an embodiment of the present invention may perform machine learning-based obstacle recognition and avoidance.

상기 제어부(150)는, 입력 영상에서 머신 러닝(machine learning)으로 기학습된 장애물을 인식하는 장애물인식모듈(154)과 상기 인식된 장애물의 속성에 기초하여, 상기 주행부(160)의 구동을 제어하는 주행제어모듈(151)을 포함할 수 있다.The control unit 150, based on the obstacle recognition module 154 for recognizing an obstacle previously learned by machine learning from the input image and the property of the recognized obstacle, controls the driving of the driving unit 160 It may include a driving control module 151 to control.

한편, 도 5에서는 복수의 모듈(151, 152, 153, 154)이 제어부(160) 내에 별도로 구비되는 예를 도시하였으나, 본 발명은 이에 한정되지 않는다.Meanwhile, although FIG. 5 illustrates an example in which the plurality of modules 151 , 152 , 153 , and 154 are separately provided in the control unit 160 , the present invention is not limited thereto.

예를 들어, 위치인식모듈(153)과 장애물인식모듈(154)은 하나의 인식기로써 통합되어 하나의 인식모듈(155)로 구성될 수 있다. 이 경우에, 머신 러닝 등의 학습 기법을 이용하여 인식기를 학습시키고, 학습된 인식기는 이후에 입력되는 데이터를 분류하여 영역, 사물 등의 속성을 인식할 수 있다.For example, the location recognition module 153 and the obstacle recognition module 154 may be integrated as one recognizer to constitute one recognition module 155 . In this case, the recognizer is trained using a learning technique such as machine learning, and the learned recognizer can recognize properties such as regions and objects by classifying input data thereafter.

실시예에 따라서, 지도생성모듈(152), 위치인식모듈(153), 및, 장애물인식모듈(154)이 하나의 통합모듈로 구성될 수도 있다.According to an embodiment, the map generation module 152 , the location recognition module 153 , and the obstacle recognition module 154 may be configured as one integrated module.

이하에서는, 위치인식모듈(153)과 장애물인식모듈(154)은 하나의 인식기로써 통합되어 하나의 인식모듈(155)로 구성되는 실시예를 중심으로 설명하지만, 위치인식모듈(153)과 장애물인식모듈(154)이 각각 구비되는 경우에도 동일한 방식으로 동작할 수 있다.Hereinafter, the location recognition module 153 and the obstacle recognition module 154 are integrated as a single recognizer to focus on an embodiment composed of a single recognition module 155, but the location recognition module 153 and the obstacle recognition module Even when each module 154 is provided, it may operate in the same manner.

본 발명의 실시예에 따른 이동 로봇(100)은, 머신 러닝으로 사물, 공간의 속성이 학습된 인식모듈(155)을 포함할 수 있다.The mobile robot 100 according to an embodiment of the present invention may include a recognition module 155 in which properties of objects and spaces are learned through machine learning.

머신 러닝은 컴퓨터에게 사람이 직접 로직(Logic)을 지시하지 않아도 데이터를 통해 컴퓨터가 학습을 하고 이를 통해 컴퓨터가 알아서 문제를 해결하게 하는 것을 의미한다.Machine learning means that a computer learns from data without a human instructing the computer directly to logic, and allows the computer to solve problems on its own.

딥러닝(Deep Learning)은. 인공지능(artificial intelligence)을 구성하기 위한 인공신경망(Artificial Neural Networks: ANN)에 기반으로 해 컴퓨터에게 사람의 사고방식을 가르치는 방법으로 사람이 가르치지 않아도 컴퓨터가 스스로 사람처럼 학습할 수 있는 인공지능 기술이다.Deep Learning is. Based on Artificial Neural Networks (ANN) for constructing artificial intelligence, it is a method of teaching a computer how to think of a person. .

상기 인공신경망(ANN)은 소프트웨어 형태로 구현되거나 칩(chip) 등 하드웨어 형태로 구현될 수 있다.The artificial neural network (ANN) may be implemented in the form of software or in the form of hardware such as a chip.

인식모듈(155)은 공간의 속성, 장애물 등 사물의 속성이 학습된 소프트웨어 또는 하드웨어 형태의 인공신경망(ANN)을 포함할 수 있다. The recognition module 155 may include an artificial neural network (ANN) in the form of software or hardware in which properties of objects, such as properties of space and obstacles, are learned.

예를 들어, 인식모듈(155)은 딥러닝(Deep Learning)으로 학습된 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), DBN(Deep Belief Network) 등 심층신경망(Deep Neural Network: DNN)을 포함할 수 있다.For example, the recognition module 155 is a deep neural network (DNN) such as a Convolutional Neural Network (CNN), a Recurrent Neural Network (RNN), and a Deep Belief Network (DBN) trained by deep learning. may include

인식모듈(155)은 상기 심층신경망(DNN)에 포함된 노드들 사이의 가중치(weight)들에 기초하여 입력되는 영상 데이터에 포함되는 공간, 사물의 속성을 판별할 수 있다.The recognition module 155 may determine the properties of a space and an object included in the input image data based on weights between nodes included in the deep neural network (DNN).

한편, 상기 주행제어모듈(151)은 상기 인식된 공간, 장애물의 속성에 기초하여 상기 주행부(160)의 구동을 제어할 수 있다.Meanwhile, the driving control module 151 may control the driving of the driving unit 160 based on the recognized properties of the space and obstacles.

한편, 인식모듈(155)은, 머신 러닝(machine learning)으로 기학습된 데이터에 기초하여 상기 선택된 특정 시점 영상에 포함되는 공간, 장애물의 속성을 인식할 수 있다.Meanwhile, the recognition module 155 may recognize properties of a space and an obstacle included in the selected specific viewpoint image based on data previously learned through machine learning.

한편, 저장부(105)에는 공간, 사물 속성 판별을 위한 입력 데이터, 상기 심층신경망(DNN)을 학습하기 위한 데이터가 저장될 수 있다. Meanwhile, the storage unit 105 may store input data for determining space and object properties, and data for learning the deep neural network (DNN).

저장부(105)에는 영상획득부(120)가 획득한 원본 영상과 소정 영역이 추출된 추출 영상들이 저장될 수 있다. The storage unit 105 may store the original image acquired by the image acquisition unit 120 and the extracted images from which a predetermined region is extracted.

또한, 실시예에 따라서는, 저장부(105)에는 상기 심층신경망(DNN) 구조를 이루는 웨이트(weight), 바이어스(bias)들이 저장될 수 있다.In addition, according to an embodiment, the storage unit 105 may store weights and biases constituting the structure of the deep neural network (DNN).

또는, 실시예에 따라서는, 상기 심층신경망 구조를 이루는 웨이트(weight), 바이어스(bias)들은 인식모듈(155)의 임베디드 메모리(embedded memory)에 저장될 수 있다.Alternatively, according to an embodiment, weights and biases constituting the deep neural network structure may be stored in an embedded memory of the recognition module 155 .

한편, 상기 인식모듈(155)은 상기 영상획득부(120)가 영상을 획득하거나 영상의 일부 영역을 추출할 때마다 소정 영상을 트레이닝(training) 데이터로 사용하여 학습 과정을 수행하거나, 소정 개수 이상의 영상이 획득된 후 학습 과정을 수행할 수 있다.Meanwhile, the recognition module 155 performs a learning process by using a predetermined image as training data whenever the image acquisition unit 120 acquires an image or extracts a partial region of the image, or After the image is acquired, a learning process may be performed.

또는, 이동 로봇(100)은 통신부(190)를 통하여 상기 소정 서버로부터 머신 러닝과 관련된 데이터를 수신할 수 있다.Alternatively, the mobile robot 100 may receive data related to machine learning from the predetermined server through the communication unit 190 .

이 경우에, 이동 로봇(100)은, 상기 소정 서버로부터 수신된 머신 러닝과 관련된 데이터에 기초하여 인식모듈(155)을 업데이트(update)할 수 있다.In this case, the mobile robot 100 may update the recognition module 155 based on the machine learning-related data received from the predetermined server.

도 6은 본 발명의 일 실시예에 따른 제품 데이터(product data)를 이용한 학습(Learning)에 대한 설명에 참조되는 도면이다. 6 is a diagram referenced in the description of learning using product data according to an embodiment of the present invention.

도 6을 참조하면, 이동 로봇(100) 등 소정 기기의 동작으로 획득되는 제품 데이터(product data)가 서버(70)로 전송될 수 있다.Referring to FIG. 6 , product data obtained by the operation of a predetermined device such as the mobile robot 100 may be transmitted to the server 70 .

예를 들어, 이동 로봇(100)은, 서버(70)로 공간(space), 사물(Object), 사용(Usage) 관련 데이터(Data)를 서버(70)로 전송할 수 있다.For example, the mobile robot 100 may transmit space, object, and usage related data to the server 70 to the server 70 .

여기서, 공간(space), 사물(Object) 관련 데이터는 이동 로봇(100)이 인식한 공간(space)과 사물(Object)의 인식 관련 데이터이거나, 영상획득부(120)가 획득한 공간(space)과 사물(Object)에 대한 이미지 데이터일 수 있다. Here, the space and object related data are data related to the recognition of a space and an object recognized by the mobile robot 100 or a space acquired by the image acquisition unit 120 . and image data for objects.

또한, 사용(Usage) 관련 데이터(Data)는 소정 제품, 예를 들어, 이동 로봇(100)의 사용에 따라 획득되는 데이터로, 사용 이력 데이터, 센서부(170)에서 획득된 센싱 데이터 등이 해당될 수 있다.In addition, usage-related data (Data) is data acquired according to the use of a predetermined product, for example, the mobile robot 100 , and includes usage history data, sensing data acquired by the sensor unit 170 , and the like. can be

한편, 이동 로봇(100)의 제어부(150), 더욱 상세하게는 인식모듈(155)에는 CNN(Convolutional Neural Network) 등 심층신경망 구조(DNN)가 탑재될 수 있다.Meanwhile, a deep neural network structure (DNN) such as a convolutional neural network (CNN) may be mounted on the control unit 150 of the mobile robot 100 , more specifically, the recognition module 155 .

상기 학습된 심층신경망 구조(DNN)는 인식용 입력 데이터를 입력받고, 입력 데이터에 포함된 사물, 공간의 속성을 인식하여, 그 결과를 출력할 수 있다.The learned deep neural network structure (DNN) may receive input data for recognition, recognize the properties of objects and spaces included in the input data, and output the result.

또한, 상기 학습된 심층신경망 구조(DNN)는 인식용 입력 데이터를 입력받고, 이동 로봇(100)의 사용(Usage) 관련 데이터(Data)를 분석하고 학습하여 사용 패턴, 사용 환경 등을 인식할 수 있다.In addition, the learned deep neural network structure (DNN) receives input data for recognition, analyzes and learns usage-related data of the mobile robot 100 to recognize usage patterns, usage environments, etc. have.

한편, 공간(space), 사물(Object), 사용(Usage) 관련 데이터(Data)는 통신부(190)를 통하여 서버(70)로 전송될 수 있다. Meanwhile, space, object, and usage related data may be transmitted to the server 70 through the communication unit 190 .

서버(70)는 학습된 웨이트(weight)들의 구성을 생성할 수 있고, 서버(70)는 심층신경망(DNN) 구조를 트레이닝(training) 데이터를 사용하여 학습할 수 있다. The server 70 may generate a configuration of learned weights, and the server 70 may learn a deep neural network (DNN) structure using training data.

서버(70)는 수신한 데이터에 기초하여, 심층신경망(DNN)을 학습시킨 후, 업데이트된 심층신경망(DNN) 구조 데이터를 이동 로봇(100)으로 전송하여 업데이트하게 할 수 있다.After the server 70 trains a deep neural network (DNN) based on the received data, the updated deep neural network (DNN) structure data may be transmitted to the mobile robot 100 to be updated.

이에 따라, 이동 로봇(100) 등 홈 어플라이언스 제품이 점점 더 똑똑해지고, 사용할수록 진화되는 사용자 경험(UX)을 제공할 수 있다.Accordingly, it is possible to provide a user experience (UX) that evolves as home appliance products such as the mobile robot 100 become smarter and more used.

도 7은 본 발명의 일 실시예에 따른 서버의 간략한 내부 블록도의 일예이다7 is an example of a simplified internal block diagram of a server according to an embodiment of the present invention;

도 7을 참조하면, 서버(70)는, 통신부(720), 저장부(730), 학습모듈(740), 및 프로세서(710)를 구비할 수 있다.Referring to FIG. 7 , the server 70 may include a communication unit 720 , a storage unit 730 , a learning module 740 , and a processor 710 .

프로세서(710)는, 서버(70)의 전반적인 동작을 제어할 수 있다.The processor 710 may control the overall operation of the server 70 .

한편, 서버(70)는, 상기 이동 로봇(100) 등 홈 어플라이언스 제조사가 운영하는 서버 또는 서비스 제공자가 운영하는 서버일 수 있고, 일종의 클라우드(Cloud) 서버일 수 있다.Meanwhile, the server 70 may be a server operated by a home appliance manufacturer such as the mobile robot 100 or a server operated by a service provider, or may be a kind of cloud server.

통신부(720)는, 휴대 단말기, 이동 로봇(100) 등 홈 어플라이언스, 게이트웨이 등으로부터 상태 정보, 동작 정보, 조작 정보 등 각종 데이터를 수신할 수 있다. The communication unit 720 may receive various data such as state information, operation information, and operation information from a home appliance such as a mobile terminal and a mobile robot 100 , a gateway, and the like.

그리고 통신부(720)는 수신되는 각종 정보에 대응하는 데이터를 휴대 단말기, 이동 로봇(100) 등 홈 어플라이언스, 게이트웨이 등으로 송신할 수 있다.In addition, the communication unit 720 may transmit data corresponding to various types of received information to a mobile terminal, a home appliance such as the mobile robot 100, a gateway, or the like.

이를 위해, 통신부(720)는 인터넷 모듈, 이동 통신 모듈 등 하나 이상의 통신 모듈을 구비할 수 있다.To this end, the communication unit 720 may include one or more communication modules such as an Internet module and a mobile communication module.

저장부(730)는, 수신되는 정보를 저장하고, 이에 대응하는 결과 정보 생성을 위한 데이터를 구비할 수 있다.The storage unit 730 may store received information and include data for generating result information corresponding thereto.

또한, 저장부(730)는, 머신 러닝에 사용되는 데이터, 결과 데이터 등을 저장할 수 있다.Also, the storage unit 730 may store data used for machine learning, result data, and the like.

학습모듈(740)은 상기 이동 로봇(100) 등 홈 어플라이언스의 학습기 역할을 수행할 수 있다.The learning module 740 may serve as a learner of a home appliance such as the mobile robot 100 .

상기 학습모듈(740)에는 인공신경망, 예를 들어, CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), DBN(Deep Belief Network) 등 심층신경망(Deep Neural Network: DNN)을 포함될 수 있고, 심층신경망을 학습할 수 있다.The learning module 740 may include an artificial neural network, for example, a deep neural network (DNN) such as a Convolutional Neural Network (CNN), a Recurrent Neural Network (RNN), or a Deep Belief Network (DBN). Neural networks can be trained.

한편, 상기 제어부(710)는 설정에 따라 학습 후 상기 이동 로봇(100) 등 홈 어플라이언스의 인공신경망 구조를 학습된 인공신경망 구조로 업데이트시키도록 제어할 수 있다.Meanwhile, the controller 710 may control to update the artificial neural network structure of the home appliance such as the mobile robot 100 to the learned artificial neural network structure after learning according to a setting.

또한, 상기 학습모듈(740)은, 인식용 입력 데이터를 입력받고, 입력 데이터에 포함된 사물, 공간의 속성을 인식하여, 그 결과를 출력할 수 있다. 이 경우에, 통신부(720)는 이동 로봇(100)으로 인식 결과를 송신할 수 있다.Also, the learning module 740 may receive input data for recognition, recognize properties of objects and spaces included in the input data, and output the result. In this case, the communication unit 720 may transmit the recognition result to the mobile robot 100 .

또한, 상기 학습모듈(740)은, 이동 로봇(100)의 사용(Usage) 관련 데이터(Data)를 분석하고 학습하여 사용 패턴, 사용 환경 등을 인식하여, 그 결과를 출력할 수 있다. 이 경우에, 통신부(720)는 이동 로봇(100)으로 인식 결과를 송신할 수 있다.In addition, the learning module 740 may analyze and learn usage-related data of the mobile robot 100 to recognize a usage pattern, a usage environment, and the like, and output the result. In this case, the communication unit 720 may transmit the recognition result to the mobile robot 100 .

이에 따라, 이동 로봇(100) 등 홈 어플라이언스 제품들은 서버(70)로부터 인식 결과를 수신하고, 수신된 인식 결과를 활용하여 동작할 수 있다. Accordingly, home appliance products such as the mobile robot 100 may receive the recognition result from the server 70 and operate using the received recognition result.

또한, 서버(70)가 제품 데이터를 이용하여 학습하여 점점 더 똑똑해지므로, 홈 어플라이언스 제품을 사용할수록 진화되는 사용자 경험(UX)을 제공할 수 있다.In addition, since the server 70 learns using product data and becomes smarter, it is possible to provide a user experience (UX) that evolves as the home appliance product is used.

한편, 이동 로봇(100) 및 서버(70)는 외부 정보(external information)도 이용할 수 있다.Meanwhile, the mobile robot 100 and the server 70 may also use external information.

예를 들어, 이동 로봇(100) 및 서버(70)는, 이동 로봇(100) 등 특정 홈 어플라이언스 제품의 공간 정보, 사물 정보, 사용 패턴 등의 내부 정보 및 다른 제품으로부터 획득하거나, 서버(70)가 다른 연계 서비스 서버로부터 획득한 외부 정보를 종합적으로 사용하여 우수한 사용자 경험을 제공할 수 있다.For example, the mobile robot 100 and the server 70 may be obtained from internal information and other products such as spatial information, object information, and usage patterns of specific home appliance products such as the mobile robot 100, or the server 70 can provide an excellent user experience by comprehensively using external information obtained from other linked service servers.

본 발명의 일실시예에 따르면, 인공지능을 통한 와이파이(Wi-Fi)로 연결된 홈 어플라이언스 네트워크 시스템 내의 제품 운전 순서를 최적화하고, 최적 운전 순서를 사용자에게 제시할 수 있다.According to an embodiment of the present invention, it is possible to optimize the operation order of products in the home appliance network system connected by Wi-Fi through artificial intelligence, and present the optimal operation order to the user.

예를 들어, 이동 로봇(100)으로 집안 청소를 수행하고, 공기 청정기(12, 13)로 청소 중 생긴 먼지 관리를 수행하며, 공기조화기(11)로 집안 습도 및 온도 관리하고, 세탁기(32)가 사용자가 집에 도착하는 시간에 맞추어 세탁이 종료되도록 세탁을 수행할 수 있다.For example, house cleaning is performed with the mobile robot 100, dust generated during cleaning is performed with the air purifiers 12 and 13, house humidity and temperature are managed with the air conditioner 11, and the washing machine 32 ) may perform the washing so that the washing is finished according to the time when the user arrives at the house.

상기 서버(70)는 사용자가 발화한 음성 입력 신호를 수신하여 음성 인식을 수행할 수 있다. 이를 위해, 상기 서버(70)는 음성 인식 모듈을 포함할 수 있고, 음성 인식 모듈은 입력 데이터에 대하여 음성 인식을 수행하여 음성 인식 결과를 출력하도록 학습된 인공신경망을 포함할 수 있다.The server 70 may perform voice recognition by receiving a voice input signal uttered by a user. To this end, the server 70 may include a voice recognition module, and the voice recognition module may include an artificial neural network trained to perform voice recognition on input data and output a voice recognition result.

한편, 상기 서버(70)는 음성 인식을 위한 음성 인식 서버를 포함할 수 있다. 또한, 음성 인식 서버도 음성 인식 과정 중 소정 과정을 분담하여 수행하는 복수의 서버를 포함할 수 있다. 예를 들어, 음성 인식 서버는, 음성 데이터를 수신하고, 수신한 음성 데이터를 텍스트(text) 데이터로 변환하는 자동 음성 인식(Automatic Speech Recognition: ASR) 서버, 및, 상기 자동 음성 인식 서버로부터 상기 텍스트 데이터를 수신하고, 수신한 텍스트 데이터를 분석하여 음성 명령을 판별하는 자연어 처리(Natural Language Processing: NLP) 서버를 포함할 수 있다. 경우에 따라서, 음성 인식 서버는, 자연어 처리 서버가 출력한 텍스트 음성 인식 결과를 음성 데이터로 변환하여 다른 서버 또는 홈 어플라이언스로 송신하는 텍스트 음성 변환(Text to Speech: TTS) 서버를 더 포함할 수 있다.Meanwhile, the server 70 may include a voice recognition server for voice recognition. Also, the voice recognition server may include a plurality of servers that share and perform a predetermined process among the voice recognition processes. For example, the speech recognition server may include an Automatic Speech Recognition (ASR) server that receives speech data and converts the received speech data into text data, and the text from the automatic speech recognition server. It may include a natural language processing (NLP) server that receives data and analyzes the received text data to determine a voice command. In some cases, the voice recognition server may further include a text-to-speech (TTS) server that converts the text-to-speech recognition result output by the natural language processing server into voice data and transmits it to another server or home appliance. .

본 발명에 따르면, 이동 로봇(100) 및/또는 서버(70)가 음성 인식을 수행할 수 있어, 이동 로봇(100)의 제어를 위한 입력을 사용자 음성을 사용할 수 있다.According to the present invention, the mobile robot 100 and/or the server 70 may perform voice recognition, so that the user's voice may be used as an input for controlling the mobile robot 100 .

종래의 음성 인식을 지원하는 로봇 청소기에서 음성 인식은 단순히 제어를 위한 수단에 불과하였다. 그로 인해 로봇 청소기는 인식된 제어 명령만 수행하게 되므로, 사용자가 현재 어떤 기능을 많이 사용하고 어떤 부분이 청소가 덜 되는지에 대한 분석은 음성이 아닌 다른 방법을 통해 알아봐야 하는 단점이 있었다.In the conventional robot cleaner supporting voice recognition, voice recognition is merely a means for control. As a result, the robot vacuum cleaner performs only the recognized control commands, so the analysis of which functions the user currently uses the most and which parts are less cleaned has a disadvantage in that it is necessary to find out through a method other than voice.

하지만, 본 발명은, 이동 로봇(100)이 발화하여 단순한 단말 제어보다 간단한 인터랙션(Interaction) 기능을 제공할 수 있다.However, according to the present invention, the mobile robot 100 may ignite and provide a simpler interaction function than simple terminal control.

또한, 본 발명에 따르면, 이동 로봇(100)이 능동적으로 먼저 정보를 제공하거나 기능, 서비스를 추천하는 음성을 출력함으로써 사용자에게 더욱 다양하고 적극적인 제어 기능을 제공할 수 있다.In addition, according to the present invention, the mobile robot 100 can provide more diverse and active control functions to the user by actively providing information first or outputting a voice for recommending a function or service.

또한, 본 발명에 따르면, 이동 로봇(100)이 사용자의 사용패턴을 학습하고 이해할 수 있다. 이에 따라, 이동 로봇(100)이 사용자에게 먼저 소정 기능을 제안하면서 상호작용할 수 있어, 더 효율적이고 사용자 친화적인 동작을 수행할 수 있다.In addition, according to the present invention, the mobile robot 100 can learn and understand the user's usage pattern. Accordingly, the mobile robot 100 can interact while first suggesting a predetermined function to the user, thereby performing more efficient and user-friendly operation.

도 8은 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이고, 도 9는 본 발명의 실시예에 따른 이동 로봇의 제어 방법에 관한 설명에 참조되는 도면이다.8 is a flowchart illustrating a method for controlling a mobile robot according to an embodiment of the present invention, and FIG. 9 is a diagram referenced in the description of a method for controlling a mobile robot according to an embodiment of the present invention.

도 8을 참조하면, 이동 로봇(100)은 명령 또는 설정에 따라서 이동하며 청소를 시작할 수 있다(S810). 예를 들어, 이동 로봇(100)은 청소 시작 명령 또는 청소 예약 설정에 따라서, 저장부(105)에 저장된 내비게이션(navigation) 맵 또는 SLAM(Simultaneous localization and mapping) 맵에 기반하여 이동할 수 있다. Referring to FIG. 8 , the mobile robot 100 may start cleaning while moving according to a command or setting ( S810 ). For example, the mobile robot 100 may move based on a navigation map or a SLAM (Simultaneous localization and mapping) map stored in the storage unit 105 according to a cleaning start command or a cleaning reservation setting.

이동 로봇(100)은 이동하며 청소를 수행할 수 있고, 센서부(170)에서 획득되는 센싱 데이터, 영상획득부(120)에서 획득되는 이미지 데이터 등을 저장부(105)에 저장할 수 있다.The mobile robot 100 may perform cleaning while moving, and may store sensing data obtained from the sensor unit 170 , image data obtained from the image acquisition unit 120 , and the like in the storage unit 105 .

또한, 이동 로봇(100)은 주행 이력 데이터(driving history data), 청소 이력 데이터(cleaning history data) 등 청소 수행으로 획득되는 데이터를 저장부(105)에 저장할 수 있다.In addition, the mobile robot 100 may store data obtained by performing cleaning, such as driving history data and cleaning history data, in the storage unit 105 .

여기서 청소 수행으로 획득되는 데이터는, 이동 로봇(100)의 사용 기록일 수 있다. 예를 들어, 일반 청소 완료 횟수, 충전대 복귀 횟수, 영역별 청소 기능 완료 횟수, 운용 시간, 영역별 청소 세기 평균, 영역별 먼지량, 영역별 청소 모드(꼼꼼청소, 퀵(quick) 청소, 일반 청소 등) 빈도 및 비율, 모니터링, 지정 청소, 집중 청소, 가상벽(virtual wall) 포함 청소 등 기능 사용 횟수, 상기 언급된 기록의 시간대별 집중도 중 적어도 하나를 포함할 수 있다.Here, the data obtained by performing cleaning may be a usage record of the mobile robot 100 . For example, the number of times of general cleaning completed, the number of returning to the charging station, the number of times cleaning functions completed by area, operating time, average cleaning intensity by area, amount of dust by area, cleaning mode by area (fine cleaning, quick cleaning, general cleaning, etc.) ) frequency and rate, monitoring, designated cleaning, intensive cleaning, the number of times of use of functions such as virtual wall cleaning, and concentration by time of the above-mentioned record.

또한, 이동 로봇(100)이 수행하는 청소 기능뿐만 아니라 다른 기능에 관한 사용 기록도 저장될 수 있다. In addition, not only the cleaning function performed by the mobile robot 100 but also usage records related to other functions may be stored.

예를 들어, 지정 청소, 집중 청소, 가상벽(virtual wall) 포함 청소 등의 청소 사용 이력, 지정된 영역에 대한 모니터링(monitoring), 움직이는 오브젝트를 인식하고, 인식된 오브젝트를 촬영하여 지정된 기기로 전송해주는 홈가드 기능, 맵핑(mapping) 등 이동 로봇이 제공할 수 있는 기능, 물건 찾기, 온도, 습도, 공기질 먼지 측정 등 환경 센싱 및 주행 전략으로 사용될 수 있는 것을 사용 기록으로 저장할 수 있다.For example, cleaning usage history such as designated cleaning, intensive cleaning, and cleaning including virtual wall, monitoring for a designated area, recognizing a moving object, photographing a recognized object and sending it to a designated device Functions that mobile robots can provide, such as home guard function and mapping, and environmental sensing and driving strategies such as finding objects, measuring temperature, humidity, and air quality dust can be stored as usage records.

이러한 주행으로 획득되는 데이터를 이용하여, 이동 로봇(100) 및/또는 서버(70)는 사용자의 이동 로봇(100) 사용 패턴, 집 등 사용 환경 내의 각 영역별 공간 정보, 사용 환경 내에 존재하는 사물 정보를 분석하고 학습할 수 있다.Using the data obtained through such driving, the mobile robot 100 and/or the server 70 provides the user's mobile robot 100 usage pattern, spatial information for each area in the usage environment such as home, and objects existing in the usage environment. Analyze and learn information.

또한, 이동 로봇(100)은 이전의 청소 수행으로 획득된 기존 데이터에 기반하여, 특수지역을 판별할 수 있다(S820). 이동 로봇(100)은 영상획득부(120)로부터 획득된 영상에 기초하여 현재 위치 및 공간을 식별할 수 있고 특수지역 여부를 판별할 수 있다. 또한, 이동 로봇(100)은, 현재 식별된 위치 및 공간 정보에 기초하여 해당 공간의 영역별 정보 등을 추가적으로 확인하여 특수지역 여부를 판별할 수 있다. In addition, the mobile robot 100 may determine a special area based on existing data obtained by performing the previous cleaning ( S820 ). The mobile robot 100 may identify the current location and space based on the image obtained from the image acquisition unit 120 and may determine whether there is a special area. Also, the mobile robot 100 may determine whether a special area exists by additionally checking information for each area of the corresponding space based on the currently identified location and space information.

여기서, 상기 특수지역은, 주행 불능 상태가 발생했었던 위험지역일 수 있다. 예를 들어, 위험지역은, 스턱, 트랩, 낙하, 전원 오프(off) 등 주행 불능 상황이 발생한 지역일 수 있다.Here, the special area may be a dangerous area in which a driving incapacitated state has occurred. For example, the dangerous area may be an area in which a driving impossible situation such as a stuck, a trap, a fall, or a power off occurs.

또는, 상기 특수지역은, 주행 속도 또는 청소율이 평균값보다 낮았거나, 회전 횟수가 기준 횟수보다 많았던 저효율지역일 수 있다. 예를 들어, 저효율지역은, 영역내 일정 면적 지정된 평균 속도 이하 주행 지역, 터닝 횟수 잦은 지역, 모든 대응 모션 일정 횟수 이상 발생 지역 등이 해당될 수 있다.Alternatively, the special area may be a low-efficiency area in which the running speed or the cleaning rate is lower than the average value or the number of rotations is greater than the reference number. For example, the low-efficiency area may correspond to an area in which a certain area within the area is driven below a specified average speed, an area where the number of turns is frequent, and an area in which all corresponding motions occur more than a predetermined number of times.

이동 로봇(100)은, 이동 중에, 상기 판별된 특수지역에 도착하면(S830), 상기 특수지역에 대한 알림 정보를 출력할 수 있다(S840). When the mobile robot 100 arrives at the determined special area while moving (S830), it may output notification information for the special area (S840).

바람직하게는 이동 로봇(100)의 음향 출력부(181)가 상기 특수지역에 대한 음성 안내 메시지를 출력할 수 있다(S840). 이에 따라, 사용자의 주의를 끌고, 사용자가 소리가 들리는 방향으로 고개를 돌리거나 움직이면 자연스럽게 상기 특수지역의 상황을 확인하게 할 수 있다.Preferably, the sound output unit 181 of the mobile robot 100 may output a voice guidance message for the special area (S840). Accordingly, it is possible to attract the user's attention and to naturally check the situation of the special area when the user turns or moves his/her head in the direction in which the sound is heard.

한편, 이전의 청소 수행으로 획득된 기존 데이터는, 상기 특수지역에 등록된 장애물 정보를 더 포함할 수 있다. 이 경우에, 이동 로봇(100)이 발화하는 음성 안내 메시지는, 상기 특수지역에 존재하는 장애물에 대한 안내 메시지를 포함할 수 있다. 이에 따라, 사용자는 장애물의 종류, 위험 정도를 즉각 판단하여, 이동 로봇(100)의 다음 동작을 지시할 수 있다.On the other hand, the existing data obtained by performing the previous cleaning may further include obstacle information registered in the special area. In this case, the voice guidance message uttered by the mobile robot 100 may include a guidance message for an obstacle existing in the special area. Accordingly, the user can immediately determine the type of obstacle and the degree of danger, and instruct the next operation of the mobile robot 100 .

상기 음성 안내 메시지는, 상기 특수지역에 대한 청소 여부 확인을 요청하는 메시지를 포함할 수 있다.The voice guidance message may include a message requesting confirmation of whether to clean the special area.

또한, 상기 음성 안내 메시지는, 상기 특수지역으로 판별한 이유에 대한 설명, 또는 사용자가 음성 입력할 수 있는 명령어의 예시에 대한 안내 중 적어도 하나를 더 포함할 수 있다. In addition, the voice guidance message may further include at least one of a description of the reason for determining the special area, or a guide on an example of a command that the user can input by voice.

상기 특수지역으로 판별한 이유에 대한 설명을 제공함으로써, 사용자가 특수지역에 대해 더 빠르게 이해하는데 도움을 줄 수 있다.By providing an explanation of the reason for determining the special area, it can help the user to more quickly understand the special area.

사용자가 음성 입력할 수 있는 명령어의 예시에 대한 안내를 제공함으로써, 사용자가 정확하게 피드백 음성을 입력하는데 도움을 줄 수 있다. 또한, 사용자가 예시된 명령어를 발화하는 경우에, 이동 로봇(100) 및/또는 서버(70)는 더 빠르고 정확하게 사용자의 음성 명령을 인식할 수 있다.By providing guidance on examples of commands that the user can input by voice, it can help the user to accurately input the feedback voice. In addition, when the user utters the exemplified command, the mobile robot 100 and/or the server 70 may recognize the user's voice command more quickly and accurately.

또한, 음성으로 왜 위험 지역인지, 어떤 명령어를 쓸 수 있는지 등의 정보를 동시에 안내할 수 있다. 예를 들어, 이동 로봇(100)이 "과거 운행이 정지되었던 지역입니다. 청소를 원하시면 “청소”라고 답해주세요."라고 발화할 수 있다.In addition, information such as why the area is in a dangerous area and what commands can be used can be simultaneously guided by voice. For example, the mobile robot 100 may utter, "This is an area where operation has been stopped in the past. If you want to clean, please answer "Clean".

이동 로봇(100)은, 위험지역, 저효율지역 등 특수지역을 판별할 수 있고(S820). 특수지역에 도착한 경우에(S830), 특수지역에 대해서 청소를 수행할 지 여부를 먼저 문의할 수 있다(S840). The mobile robot 100 may determine a special area such as a dangerous area or a low-efficiency area (S820). When the user arrives in the special area (S830), it is possible to first inquire whether or not to clean the special area (S840).

도 9를 참조하면, 전선이 많이 존재하는 위험지역(910)에 도착한 이동 로봇(100)은 위험지역을 안내하는 음성 안내 메시지(920)를 발화할 수 있다.Referring to FIG. 9 , the mobile robot 100 that arrives in a dangerous area 910 where there are many wires may ignite a voice guidance message 920 for guiding the dangerous area.

음성 안내 메시지(920)는 전선이 복잡하다는 내용(921)과 청소가 어렵다는 내용(922) 등을 포함할 수 있다. The voice guidance message 920 may include a content 921 that the wire is complicated and a content 922 that it is difficult to clean.

본 발명의 일 실시예에 따른 이동 로봇(100)은, 다수의 청소를 통해 인지된, 위험 장애물이 존재하는 청소 위험 지역, 청소 실패 이력이 있는 청소 실패 지역 등 특수지역에 진입 시, 음성을 통해 청소 위험 지역 등을 알릴 수 있다.The mobile robot 100 according to an embodiment of the present invention, recognized through a plurality of cleaning, when entering a special area, such as a cleaning danger area where dangerous obstacles exist, a cleaning failure area with a cleaning failure history, through voice It can notify the danger area of cleaning, etc.

예를 들어, 전선 등의 위험 장애물이 존재하는 댁내 주행 환경에서 이동 로봇(100)의 이동이 구속(Stuck)되는 상황 발생 가능성 있고, 한번 구속 상황이 발생한 장소에서는 지속적인 구속 상황이 발생할 확률이 높다.For example, there is a possibility that the movement of the mobile robot 100 is stuck in an indoor driving environment in which dangerous obstacles such as electric wires exist, and there is a high probability that a continuous restraint situation occurs at a place where the restraint situation occurs once.

지속적인 구속 상황 발생은 사용자의 불만 증가와 제품 신뢰도 하락을 야기할 수 있다.The continuous occurrence of restraints can cause increased user dissatisfaction and lower product reliability.

따라서, 본 발명의 일 실시예에 따른 이동 로봇(100)은, 위험 구간 진입 시 발화를 통해 위험 상황 인지를 하고 있음을 사용자에게 알릴 수 있다. 이에 따라, 사용자의 신뢰도, 선호도를 증대할 수 있다.Accordingly, the mobile robot 100 according to an embodiment of the present invention may notify the user that it is aware of a dangerous situation through utterance when entering the danger section. Accordingly, it is possible to increase the user's reliability and preference.

또한, 너무 복잡해 도저히 주행을 할 수 없는 영역에 대해, 사용자가 직접 정리를 하도록 유도해서, 청소를 완료할 수 있도록 부가적 도움을 제공할 수 있다.In addition, in areas that are too complex to drive, the user may be encouraged to clean up on their own, providing additional assistance to complete the cleaning.

예를 들어, 특수지역 진입 시 이동 로봇(100)이“여기는 제가 청소하기 어려워요”와 같은 음성 안내 메시지를 발화하고, 사용자는 해당지역에 복잡한 전선이나 장난감 등이 없는 지 확인하고 치울 수 있다. 이후, 이동 로봇(100)은 해당지역데 대한 청소를 안전하게 수행할 수 있다.For example, when entering a special area, the mobile robot 100 ignites a voice guidance message such as “I am difficult to clean here”, and the user can check whether there are complicated wires or toys in the area and remove it. Thereafter, the mobile robot 100 can safely perform cleaning of the corresponding area.

한편, 사용자의 피드백 응답에 따라, 특수지역에 대한 청소를 스킵(skip)하여, 다른 영역에 대한 청소에 지장이 없게 하거나 전체 청소 시간을 감소시킬 수 있다. 예를 들어, 사용자가“거긴 청소하지마" 라고 하면 이동 로봇(100)은 해당지역을 청소하지 않는다.Meanwhile, according to the user's feedback response, cleaning of a special area may be skipped, so that cleaning of other areas may not be disturbed or an overall cleaning time may be reduced. For example, when the user says "Do not clean there", the mobile robot 100 does not clean the corresponding area.

한편, 발화 시 청소 소음으로 사용자가 음성 안내 메시지를 못알아 들어“뭐라고?”라고 말하면, 이동 로봇(100)은 방금 출력한 음성 안내 메시지를 반복하여 말해 줄 수 있다. On the other hand, when the user does not understand the voice guidance message due to the cleaning noise during utterance and says “what?”, the mobile robot 100 may repeat the voice guidance message just output.

한편, 이동 로봇(100)은, 청소 수행시 구속, 전원 오프 등 주행 불능 상황이 발생된 장소를 기록할 수 있고, 특정 횟수 이상 주행 불능 상황이 발생되면 해당 지역을 위험 지역으로 분류할 수 있다.On the other hand, the mobile robot 100 may record a place where a driving impossible situation such as restraint or power off occurs during cleaning, and if a driving impossible situation occurs more than a certain number of times, the corresponding area may be classified as a dangerous area.

이 경우에, 주행 불능 상황의 발생 빈도에 따라 음성 안내 메시지의 안내 강도 등을 증가시킬 수 있다.In this case, it is possible to increase the guidance strength of the voice guidance message and the like according to the frequency of occurrence of the driving impossible situation.

예를 들어, 청소를 시작할 때, 이동 로봇(100)은 상습적으로 주행 불능 상황이 발생하는 위험지역에 대해“주인님, 이리와 보세요. 여기는 제가 정말 청소하기 어려워요. 조금만 치워주시면, 더 열심히 청소하겠습니다." 등 안내의 표현 강도 단계를 높힐 수 있다.For example, when starting cleaning, the mobile robot 100 responds to a dangerous area in which driving is habitually impossible, saying, “Master, come here. It's really hard for me to clean here. If you clean it a little bit, I will clean it harder." You can increase the level of expression intensity of the guidance.

또한, 이동 로봇(100)이 비효율적인 동작(주행 속도 또는 청소율이 평균값보다 낮거나, 회전 횟수가 기준 횟수보다 많음)을 하는 구간에서 비효율적인 행동을 하지 않아도 되는지 먼저 음성으로 물어보면서 사용자와 상호작용할 수 있다.In addition, the mobile robot 100 interacts with the user while first asking with a voice whether it is necessary to avoid inefficient actions in the section in which the mobile robot 100 performs inefficient operations (the running speed or the cleaning rate is lower than the average value, or the number of rotations is greater than the reference number). can

특수지역은 이동 로봇(100)의 이동이 구속되는 등 안전의 위험과 다른 영역의 청소 수행에까지 악영향을 줄 수 있는 위험 지역이거나 청소를 수행하기 어려워 효율이 떨어지는 저효율지역이다.The special area is a dangerous area that may adversely affect the cleaning performance of other areas as well as a risk of safety, such as restricting movement of the mobile robot 100, or a low-efficiency area in which it is difficult to perform cleaning and thus efficiency is lowered.

따라서, 사용자에게 특수지역의 청소 여부를 물어보고(S840), 사용자 피드백이 수신되면(S850), 수신된 피드백에 따라 동작할 수 있다(S860).Accordingly, the user may be asked whether to clean the special area (S840), and when user feedback is received (S850), an operation may be performed according to the received feedback (S860).

이동 로봇(100)은, 소정 음성 대기 시간 동안에, 상기 음성 안내 메시지에 대한 사용자의 음성 피드백을 수신할 수 있다(S850),The mobile robot 100 may receive a user's voice feedback for the voice guidance message during a predetermined voice waiting time (S850),

사용자의 음성 피드백이 수신되면, 상기 수신된 음성 피드백에 포함되는 음성 명령을 식별할 수 있고 상기 식별된 음성 명령에 대응하는 동작을 수행할 수 있다(S860).When the user's voice feedback is received, a voice command included in the received voice feedback may be identified and an operation corresponding to the identified voice command may be performed (S860).

사용자의 피드백 응답은 청소해, 진행해, 계속해, 괜찮아, 어, 응 등 긍정 어휘가 사용된 경우에, 청소를 원하는 것으로 판별될 수 있다.The user's feedback response may determine that cleaning is desired if positive words such as cleaning, proceeding, continuing, okay, uh, yes, etc. are used.

사용자의 피드백 응답은 아니, 청소하지마, 하지마 등 부정 어휘를 포함하는 경우에, 청소를 원하는 것으로 판별될 수 있다.When the user's feedback response includes negative words such as no, do not clean, do not do, it may be determined that cleaning is desired.

실시예에 따라서, 상기 사용자의 음성 피드백에 대한 음성 명령의 식별은, 이동 로봇(100)이 자체적으로 수행할 수 있다.According to an embodiment, the identification of the voice command for the user's voice feedback may be performed by the mobile robot 100 itself.

예를 들어, 이동 로봇(100)은, 입력되는 데이터에 포함되는 음성을 인식하도록 학습된 인공신경망을 포함하고, 상기 인공신경망이 상기 수신된 음성 피드백에 포함되는 음성 명령을 인식할 수 있다.For example, the mobile robot 100 may include an artificial neural network trained to recognize a voice included in input data, and the artificial neural network may recognize a voice command included in the received voice feedback.

또는, 상기 사용자의 음성 피드백에 대한 음성 명령의 식별은, 서버(70)에서 수행할 수 있다.Alternatively, the identification of the voice command for the user's voice feedback may be performed by the server 70 .

이 경우에, 상기 수신된 음성 피드백에 포함되는 음성 명령을 식별하는 단계는, 입력되는 데이터에 포함되는 음성을 인식하도록 학습된 인공신경망을 포함하는 음성 인식 서버로 상기 수신된 음성 피드백 데이터를 송신하는 단계, 및, 상기 음성 인식 서버로부터 상기 수신된 음성 피드백 데이터의 음성 인식 결과를 수신하는 단계를 포함할 수 있다.In this case, the step of identifying the voice command included in the received voice feedback includes transmitting the received voice feedback data to a voice recognition server including an artificial neural network trained to recognize a voice included in the input data. and receiving a voice recognition result of the received voice feedback data from the voice recognition server.

여기서, 상기 음성 인식 서버는 상기 서버(70)의 일부로써 구성될 수 있지만, 상기 서버(70)와 별도로 음성 인식을 위한 전용 서버로서 구성되는 것도 가능하다.Here, the voice recognition server may be configured as a part of the server 70 , but may be configured as a dedicated server for voice recognition separately from the server 70 .

또는, 이동 로봇(100)과 서버(70)에서 단계적으로 수행될 수 있다. 간단한 음성 명령의 경우에 1차적으로 이동 로봇(100)이 인식하고, 이동 로봇(100)이 인식하지 못하는 경우에는 서버(70)를 이용할 수 있다.Alternatively, it may be performed step by step in the mobile robot 100 and the server 70 . In the case of a simple voice command, the mobile robot 100 primarily recognizes it, and when the mobile robot 100 does not recognize it, the server 70 may be used.

이 경우에, 상기 음성 명령을 식별하는 단계는, 상기 수신된 음성 피드백이 기설정된 키워드(keyword)를 포함하는 경우에, 상기 키워드에 대응하는 음성 명령을 식별하는 단계, 상기 수신된 음성 피드백이 기설정된 키워드(keyword)를 포함하지 않는 경우에, 입력되는 데이터에 포함되는 음성을 인식하도록 학습된 인공신경망을 포함하는 음성 인식 서버로 상기 수신된 음성 피드백 데이터를 송신하는 단계, 및, 상기 음성 인식 서버로부터 상기 수신된 음성 피드백 데이터의 음성 인식 결과를 수신하는 단계를 포함할 수 있다.In this case, the step of identifying the voice command may include: if the received voice feedback includes a preset keyword, identifying a voice command corresponding to the keyword; transmitting the received voice feedback data to a voice recognition server including an artificial neural network trained to recognize a voice included in input data when it does not include a set keyword, and the voice recognition server It may include receiving a voice recognition result of the received voice feedback data from the.

즉, 이동 로봇(100)은 긍정 어휘, 부정 어휘, 또는 명령어의 예시로 안내되는 특정 어휘와 같이 간단한 키워드(keyword)를 인식하고, 인식된 키워드에 따라 동작할 수 있다. That is, the mobile robot 100 may recognize a simple keyword, such as a positive vocabulary, a negative vocabulary, or a specific vocabulary guided by an example of a command, and operate according to the recognized keyword.

또한, 이동 로봇(100)은 키워드가 인식되지 않으면, 사용자의 음성 피드백 데이터를 서버(70)로 송신하여, 서버(70)로부터 음성 인식 결과를 수신할 수 있다.Also, if the keyword is not recognized, the mobile robot 100 may transmit the user's voice feedback data to the server 70 and receive the voice recognition result from the server 70 .

한편, 사용자의 피드백이 일정 시간 수신되지 않으면(S850), 이동 로봇(100)은 기설정되 회피 동작을 수행할 수 있다(S870).Meanwhile, if the user's feedback is not received for a predetermined period of time (S850), the mobile robot 100 may perform a preset avoidance operation (S870).

실시예에 따라서, 사용자의 피드백이 일정 시간 수신되지 않으면(S850), 이동 로봇(100)은 청소를 강행하도록 설정될 수 있다. According to an embodiment, if the user's feedback is not received for a predetermined time ( S850 ), the mobile robot 100 may be set to force cleaning.

본 발명의 일 실시예에 따르면, 이동 로봇(100)이 초기에는 아무말 없이 청소만 하다가 일정 시간이 경과한 후에 사용자에게 말을 걸어오기 시작할 수 있다.According to an embodiment of the present invention, the mobile robot 100 may start to talk to the user after a predetermined time has elapsed after cleaning without saying anything at first.

즉, 이동 로봇(100)은 복수의 청소 수행으로 획득되는 데이터로 딥러닝을 수행할 수 있고, 딥러닝을 통해 위험 장애물 혹은 그 위치의 상황을 인식하여, 해당 상황을 복합적으로 설명할 수 있다.That is, the mobile robot 100 may perform deep learning with data obtained by performing a plurality of cleaning, recognize a dangerous obstacle or a situation of its location through deep learning, and explain the situation in a complex manner.

또한, 변화하는 가정 환경 내 위험지역, 저효율지역을 지속적으로 업데이트 하여 사용자와 소통할 수 있다.In addition, it is possible to communicate with users by continuously updating dangerous areas and low-efficiency areas in the changing home environment.

본 발명에 따르면, 음성을 통해 이동 로봇(100)의 단순제어뿐 아닌 사용자와의 인터랙션(Interaction)으로 음성 인식 기능 및 제품 전체의 만족도를 향상할 수 있다.According to the present invention, it is possible to improve the satisfaction of the voice recognition function and the overall product through interaction with a user as well as simple control of the mobile robot 100 through voice.

또한, 청소가 어려운 지역을 음성으로 사용자의 입력을 받도록 제어하고. 사용자의 음성 입력에 따라 청소하거나 청소하지 않음으로써, 청소 효율도 향상할 수 있다.In addition, it controls difficult-to-clean areas to receive user input by voice. By cleaning or not cleaning according to a user's voice input, cleaning efficiency may also be improved.

도 10은 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이다.10 is a flowchart illustrating a method for controlling a mobile robot according to an embodiment of the present invention.

도 10을 참조하면, 본 발명의 일 실시예에 따른 이동 로봇(100)은, 사용자의 음성 명령을 수신할 수 있다(S1010).Referring to FIG. 10 , the mobile robot 100 according to an embodiment of the present invention may receive a user's voice command (S1010).

종래의 음성 인식 이동 로봇은, 수신되는 음성 명령을 인식하여 대응하는 동작을 바로 수행할 뿐이다.A conventional voice recognition mobile robot recognizes a received voice command and immediately performs a corresponding operation.

하지만, 본 발명의 일 실시예에 따른 이동 로봇(100)은, 사용자의 음성 명령 수신(S1010)에 따라, 사용 기록 등 저장된 기존 데이터를 점검하고 확인할 수 있다(S1020).However, the mobile robot 100 according to an embodiment of the present invention may check and confirm existing data stored, such as a usage record, according to a user's voice command reception (S1010) (S1020).

여기서, 상기 사용 기록은, 일반 청소 완료 횟수, 충전대 복귀 횟수, 영역별 청소 기능 완료 횟수, 운용 시간, 영역별 청소 세기 평균, 영역별 먼지량, 영역별 청소 모드 사용 빈도, 영역별 청소 모드 사용 비율, 청소 기능 및 부가 기능별 사용 횟수 중 적어도 하나를 포함할 수 있다. 또한, 상기 언급된 사용 기록에 포함되는 항목들의 시간대별 집중도를 더 포함할 수 있다.Here, the usage records include the number of times of completion of general cleaning, the number of returning to the charging station, the number of times of cleaning function completed by area, operating time, average cleaning intensity by area, amount of dust by area, frequency of use of cleaning mode by area, rate of use of cleaning mode by area, It may include at least one of a cleaning function and the number of times of use for each additional function. In addition, it may further include a concentration level for each time period of the items included in the above-mentioned usage record.

또한, 이동 로봇(100)이 수행하는 청소 기능뿐만 아니라 다른 기능에 관한 사용 기록도 저장되고 추후 확인될 수 있다.In addition, not only the cleaning function performed by the mobile robot 100 but also usage records related to other functions may be stored and confirmed later.

예를 들어, 지정 청소, 집중 청소, 가상벽(virtual wall) 포함 청소 등의 청소 사용 이력, 지정된 영역에 대한 모니터링(monitoring), 움직이는 오브젝트를 인식하고, 인식된 오브젝트를 촬영하여 지정된 기기로 전송해주는 홈가드 기능, 맵핑(mapping) 등 이동 로봇이 제공할 수 있는 기능, 물건 찾기, 온도, 습도, 공기질 먼지 측정 등 환경 센싱 및 주행 전략으로 사용될 수 있는 것을 사용 기록으로 저장할 수 있다.For example, cleaning usage history such as designated cleaning, intensive cleaning, and cleaning including virtual wall, monitoring for a designated area, recognizing a moving object, photographing a recognized object and sending it to a designated device Functions that mobile robots can provide, such as home guard function and mapping, and environmental sensing and driving strategies such as finding objects, measuring temperature, humidity, and air quality dust can be stored as usage records.

이러한 주행으로 획득되는 데이터를 이용하여, 이동 로봇(100) 및/또는 서버(70)는 사용자의 이동 로봇(100) 사용 패턴, 집 등 사용 환경 내의 각 영역별 공간 정보, 사용 환경 내에 존재하는 사물 정보를 분석하고 학습할 수 있다.Using the data obtained through such driving, the mobile robot 100 and/or the server 70 provides the user's mobile robot 100 usage pattern, spatial information for each area in the usage environment such as home, and objects existing in the usage environment. Analyze and learn information.

이동 로봇(100)은, 사용 기록에 기초하여, 기준 횟수 미만으로 사용된 기능 중 적어도 하나를 추천하는 음성 안내 메시지를 출력할 수 있다(S1030).The mobile robot 100 may output a voice guidance message for recommending at least one of the functions used less than a reference number of times based on the usage record ( S1030 ).

본 발명의 일 실시예에 따르면, 이동 로봇(100)이 평상시에 사용되지 않았던 기능들에 대해서 사용자에게 음성으로 제안함으로써 다른 기능도 사용할 수 있게 유도할 수 있다. According to an embodiment of the present invention, the mobile robot 100 may induce other functions to be used by suggesting functions not normally used to the user by voice.

또한, 소정 음성을 입력한 사용자는 이동 로봇(100)과 대화하기에 적절한 근거리에 위치하고 있다. 따라서, 이동 로봇(100)은 사용자의 음성에 대응하는 명령을 수행하기에 앞서, 근거리에 위치하는 사용자에게 소정 기능을 추천하거나 정보를 제공할 수 있고, 자연스러운 상호작용이 가능하다.In addition, a user who has input a predetermined voice is located in a suitable short distance to communicate with the mobile robot 100 . Accordingly, the mobile robot 100 may recommend a predetermined function or provide information to a user located in a short distance before performing a command corresponding to the user's voice, and natural interaction is possible.

또한, 이동 로봇(100)이 사용자의 판단이 필요하다고 생각되는 기능 및 케이스(case)에 대해서 먼저 물어보면서 향상된 청소 서비스 제공이 가능하다.In addition, it is possible to provide an improved cleaning service while the mobile robot 100 first asks about a function and a case that the user considers necessary.

제어부(150)는, 기설정된 우선 순위에 따라, 기준 횟수 미만으로 사용된 기능 중 적어도 하나를 선택하여 추천하는 음성 안내 메시지를 출력하도록 음향 출력부(181)를 제어할 수 있다.The controller 150 may control the sound output unit 181 to output a recommended voice guidance message by selecting at least one of the functions used less than a reference number of times according to a preset priority.

여기서, 상기 기설정된 우선 순위는, 기설정된 기능별 중요도가 높은 순서일 수 있다. 예를 들어, SLAM 성공율 저하시 맵핑(mapping) 기능을 1순위, 미청소 영역 청소 기능을 2순위, 부재중 청소, 홈가드 등 스케줄에 따른 기능을 3순위, 상시 미청소 영역 가상벽(virtual wall) 추가, 위험지역 설정 기능 등을 4순위로 설정할 수 있다. 이 경우에, 사용자가 자주 사용하지 않는 기능들 중 우선 순위가 가장 높은 기능을 추천할 수 있다.Here, the preset priority may be an order of increasing importance for each preset function. For example, when the SLAM success rate is low, the mapping function is given the 1st priority, the uncleaned area cleaning function is the 2nd priority, and the functions according to the schedule such as absent cleaning and home guard are the 3rd priority, and a virtual wall of the uncleaned area at all times Addition, dangerous area setting function, etc. can be set as 4th priority. In this case, a function having the highest priority among functions not frequently used by the user may be recommended.

또는, 상기 기설정된 우선 순위는, 사용 횟수가 작은 순서일 수 있다. 즉, 사용을 안하거나 빈도수가 낮은 기능을 추천할 수 있다. 이 경우에, 사용 횟수가 동일한 기능의 경우에는 랜덤(random)하게 추천하거나, 일정의 추천 기능 풀(pool)을 설정하고 풀(pool)에 포함되는 기능을 우선적으로 추천할 수 있다.Alternatively, the preset priority may be in the order of the number of times of use being small. In other words, you can recommend features that you don't use or that you don't use frequently. In this case, in the case of a function having the same number of uses, it may be randomly recommended, or a predetermined recommended function pool may be set and functions included in the pool may be preferentially recommended.

또한, 제어부(150)는 상기 기설정된 우선 순위에 따라 필요한 데이터를 점검하고 확인하여 추천 기능을 판별할 수 있다. In addition, the controller 150 may determine the recommended function by checking and confirming necessary data according to the preset priority.

한편, 사용자 음성 명령의 수신(S1010)에 따라, 이동 로봇(100) 및/또는 서버(70)는 상기 사용자의 음성 명령을 식별할 수 있다.Meanwhile, according to the reception of the user's voice command ( S1010 ), the mobile robot 100 and/or the server 70 may identify the user's voice command.

이 경우에, 상기 기준 횟수 미만으로 사용된 기능 중 상기 식별된 사용자의 음성 명령과 연관된 기능을 선택하여 추천할 수 있다.In this case, it is possible to select and recommend a function associated with the identified user's voice command from among the functions used less than the reference number of times.

이를 위해, 이동 로봇(100) 및/또는 서버(70)는 사용 기록의 점검(S1020) 전 또는 후에 상기 수신된 음성 명령을 인식할 수 있다.To this end, the mobile robot 100 and/or the server 70 may recognize the received voice command before or after checking the usage record ( S1020 ).

본 발명의 일 실시예에 따르면, 음성 인식으로 판별된 제어 명령을 바탕으로 유사한 청소 기능 혹은 도움이 될 만한 기능을 추천할 수 있다. 예를 들어, 사용자의 음성 명령이, 꼼꼼청소 명령으로 판별되면 먼지량 많은 지역 집중청소 수행 기능을 추천하고, 퀵 청소 명령으로 판별되면 자주 청소하지 않는 지역 스킵(skip)을 추천할 수 있다.According to an embodiment of the present invention, a similar cleaning function or a helpful function may be recommended based on the control command determined by voice recognition. For example, if the user's voice command is determined as a thorough cleaning command, a function to perform intensive cleaning in an area with a large amount of dust may be recommended, and if it is determined as a quick cleaning command, it may be recommended to skip an area that is not frequently cleaned.

한편, 상기 음성 안내 메시지에 대한, 소정 시간 이내에 상기 사용자의 음성 피드백이 수신되면(S1040), 상기 수신된 음성 피드백에 포함되는 피드백 음성 명령을 식별하고, 상기 식별된 피드백 음성 명령에 기초하여 소정 기능을 설정할 수 있다(S1050).On the other hand, if the user's voice feedback for the voice guidance message is received within a predetermined time (S1040), a feedback voice command included in the received voice feedback is identified, and a predetermined function is performed based on the identified feedback voice command. can be set (S1050).

이후, 이동 로봇(100)은 사용자 음성 명령의 수신(S1010)에 대응하여 식별된 사용자의 음성 명령에 대응하는 동작을 수행할 수 있다(S0160).Thereafter, the mobile robot 100 may perform an operation corresponding to the identified user's voice command in response to the reception of the user's voice command ( S1010 ) ( S0160 ).

한편, 도 8을 참조하여 설명한 것과 같이, 상기 사용자의 음성 피드백에 대한 음성 명령의 식별은, 이동 로봇(100)이 자체적으로 수행할 수 있다.Meanwhile, as described with reference to FIG. 8 , the identification of the voice command for the user's voice feedback may be performed by the mobile robot 100 itself.

예를 들어, 이동 로봇(100)은, 입력되는 데이터에 포함되는 음성을 인식하도록 학습된 인공신경망을 포함하고, 상기 인공신경망이 상기 수신된 음성 피드백에 포함되는 음성 명령을 인식할 수 있다.For example, the mobile robot 100 may include an artificial neural network trained to recognize a voice included in input data, and the artificial neural network may recognize a voice command included in the received voice feedback.

또는, 상기 사용자의 음성 피드백에 대한 음성 명령의 식별은, 서버(70)에서 수행할 수 있다.Alternatively, the identification of the voice command for the user's voice feedback may be performed by the server 70 .

이 경우에, 상기 수신된 음성 피드백에 포함되는 음성 명령을 식별하는 단계는, 입력되는 데이터에 포함되는 음성을 인식하도록 학습된 인공신경망을 포함하는 음성 인식 서버로 상기 수신된 음성 피드백 데이터를 송신하는 단계, 및, 상기 음성 인식 서버로부터 상기 수신된 음성 피드백 데이터의 음성 인식 결과를 수신하는 단계를 포함할 수 있다.In this case, the step of identifying the voice command included in the received voice feedback includes transmitting the received voice feedback data to a voice recognition server including an artificial neural network trained to recognize a voice included in the input data. and receiving a voice recognition result of the received voice feedback data from the voice recognition server.

본 발명에 따르면, 이동 로봇(100)이 사용자의 사용패턴을 인식하고 분석해서 평상시에 사용되지 않는 기능들에 대해서 먼저 제안을 하면서 사용자와 대화할 수 있다.According to the present invention, the mobile robot 100 can communicate with the user while recognizing and analyzing the user's usage pattern and suggesting functions not normally used first.

본 발명에 따르면, 음성을 통한 이동 로봇(100)의 제어뿐만 아니라 사용자와의 인터랙션(Interaction)으로 음성 인식 기능 및 제품 만족도를 향상할 수 있다.According to the present invention, it is possible to improve the voice recognition function and product satisfaction by not only controlling the mobile robot 100 through voice, but also interacting with the user.

또한, 이동 로봇(100)이 판단할 때 더 뛰어난 청소 전략(청소 모드, 스케줄)이 판별되는 경우에 판별된 청소 전략 등을 음성으로 추천할 수 있다.In addition, when the mobile robot 100 determines that a better cleaning strategy (cleaning mode, schedule) is determined, the determined cleaning strategy or the like may be recommended by voice.

그리고 사용자의 피드백 음성 입력에 따라 해당 기능을 설정하고 사용할 수 있다.And according to the user's feedback voice input, the corresponding function can be set and used.

이하에서는 도면들을 참조하여 이동 로봇(100)이 능동적으로 사용자와 인터랙션하는 다양한 실시예를 설명한다.Hereinafter, various embodiments in which the mobile robot 100 actively interacts with a user will be described with reference to the drawings.

도 11은 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이고, 도 12는 본 발명의 실시예에 따른 이동 로봇의 제어 방법에 관한 설명에 참조되는 도면이다. 11 is a flowchart illustrating a method for controlling a mobile robot according to an embodiment of the present invention, and FIG. 12 is a diagram referenced in the description of a method for controlling a mobile robot according to an embodiment of the present invention.

도 11을 참조하면, 이동 로봇(100)은 현관 도어(door)가 열리는 것을 인식할 수 있다(S1110). 현관 도어 오픈(open)의 인식은 현관 도어에 부착된 센서, 서버 등 다른 기기로부터 수신되는 신호에 기초하여 인식될 수 있다.Referring to FIG. 11 , the mobile robot 100 may recognize that the front door is opened ( S1110 ). Recognition of the entrance door open may be recognized based on a signal received from another device such as a sensor attached to the entrance door or a server.

현관 도어 오픈(open)이 인식되면, 이동 로봇(100)은 현관 도어로 이동하여(S1120), 사용자를 인식할 수 있다(S1130).When the entrance door open is recognized, the mobile robot 100 moves to the entrance door (S1120) and recognizes the user (S1130).

예를 들어, 사용자 인식은 영상획득부(120)를 통하여 획득되는 이미지를 인식하여 수행될 수 있다. 또는 다른 홈 어플라이언스, 서버로부터 관련 정보를 수신할 수 있다.For example, user recognition may be performed by recognizing an image acquired through the image acquisition unit 120 . Alternatively, the related information may be received from another home appliance or server.

사용자가 인식되면(S1130), 이동 로봇(100)은 사용자 부재시 이동 로봇(100)의 동작 상황을 음성으로 브리핑할 수 있다(S1140).When the user is recognized (S1130), the mobile robot 100 may brief the operation status of the mobile robot 100 by voice in the absence of the user (S1140).

이동 로봇(100)은 사용자 부재시 이동 로봇(100)의 동작 상황을 음성으로 브리핑할 수 있다(S1140).The mobile robot 100 may brief the operation state of the mobile robot 100 by voice when the user is absent ( S1140 ).

도 12를 참조하면, 이동 로봇(100)의 현관에서 들어오고 있는 사용자에게 접근하여, 사용자 부재시 이동 로봇(100)의 동작 상황을 브리핑하는 음성 안내 메시지(1210)를 음향 출력부(181)를 통하여 출력할 수 있다.Referring to FIG. 12 , a voice guidance message 1210 briefing the operation status of the mobile robot 100 is transmitted through the sound output unit 181 when the user is not present by approaching the user coming in from the entrance of the mobile robot 100 . can be printed out.

집안에 없을 때, 사람이 들어오면 이동 로봇(100)이 마중을 나가 현관에서 음성 피드백을 제공할 수 있다. 브리핑 후, 미세먼지가 많거나 사용자의 요청이 있을 경우 이동 로봇(100)은 주변 청소를 진행할 수 있다.When not in the house, when a person enters, the mobile robot 100 may meet and provide voice feedback at the entrance. After the briefing, if there is a lot of fine dust or there is a user's request, the mobile robot 100 may clean the surroundings.

또한, 이동 로봇(100)은 와이파이 통신으로 연결된 홈 어플라이언스 네트워크 시스템에 포함되는 홈 어플라이언스의 사용자 부재 시 동작 상황 및 결과를 브리핑할 수 도 있다.In addition, the mobile robot 100 may brief the operation status and results in the absence of a user of the home appliance included in the home appliance network system connected through Wi-Fi communication.

사용자의 귀가를 감지하여, 이동 로봇(100)은 당일 홈 어플라이언스들의 동작 기록을 먼저 안내할 수 있다.By detecting the user's return home, the mobile robot 100 may first guide the operation records of the home appliances on the day.

이동 로봇(100)은 사용자의 움직임에 추종하며 음성 브리핑을 제공할 수 있다.The mobile robot 100 may follow the user's movement and provide a voice briefing.

예를 들어, 반려동물이 집에 돌아온 사람을 반겨주는 것처럼, 이동 로봇(100)이 집에 들어온 사용자를 인식 후 사용자를 따라다니면서 그날의 청소 기록을 이야기할 수 있다. For example, just as a companion animal greets a person returning home, the mobile robot 100 may recognize a user entering the house and then follow the user and talk about the cleaning record of the day.

한편, 이동 로봇(100)은“로보킹, 이리와!”등 사용자의 발화에 대응하여 사용자 추종 주행 모드로 동작할 수 있다.Meanwhile, the mobile robot 100 may operate in a user-following driving mode in response to a user's utterance such as “Roboking, come here!”.

또한, 이동 로봇(100)은 사용자 부재 중 집안 청소 시 청소하지 못한 미청소영역의 사진 등 소정 데이터를 애플리케이션을 통해 사용자에게 제공할 수 있다.In addition, the mobile robot 100 may provide predetermined data, such as a picture of an uncleaned area that has not been cleaned during house cleaning in the absence of the user, to the user through the application.

본 발명의 일 실시예에 따르면, 이동 로봇(100)이‘반려동물’과 유사하게 행동하여 사용자가 호감과 재미를 느끼도록 할 수 있다.According to an embodiment of the present invention, the mobile robot 100 may act similarly to a 'pet animal' so that the user may feel good and fun.

또한, 사용자가 가정 내 홈 어플라이언스들의 상태를 확인할 필요 없이, 귀가 후 사용자 자신에게 접근한 이동 로봇(100)의 음성으로 부재시 홈 어플라이언스들의 동작 상황을 알 수 있다.In addition, the user can know the operation status of the home appliances in the absence of the user through the voice of the mobile robot 100 approaching the user after returning home without needing to check the status of the home appliances in the home.

또한, 사용자를 적극적으로 인식한다는 피드백을 주어 제품의 만족도를 상승시킬 수 있다.In addition, it is possible to increase the satisfaction of the product by giving feedback that the user is actively recognized.

만약 사용자가 인식되지 않으면(S1130), 시간 또는 횟수 기준으로 설정되는 실패 기준을 만족할 때까지(S1150), 사용자 인식을 수행할 수 있다.If the user is not recognized (S1130), until a failure criterion set based on time or number of times is satisfied (S1150), user recognition may be performed.

실패 기준을 만족할 때까지 사용자가 인식되지 않으면(S1150), 충전대 복귀 후 대기, 홈가드 등 기설정된 동작을 수행할 수 있다(S1160).If the user is not recognized until the failure criterion is satisfied (S1150), a preset operation such as standby or home guard after returning to the charging station may be performed (S1160).

도 13은 본 발명의 일 실시예에 따른 이동 로봇의 제어 방법을 도시한 순서도이고, 도 14는 본 발명의 실시예에 따른 이동 로봇의 제어 방법에 관한 설명에 참조되는 도면이다. 13 is a flowchart illustrating a method for controlling a mobile robot according to an embodiment of the present invention, and FIG. 14 is a diagram referenced in the description of a method for controlling a mobile robot according to an embodiment of the present invention.

도 13과 도 14를 참조하면, 이동 로봇(100)은 홈 어플라이언스 네트워크 시스템에 포함되는 다른 기기로부터 소정 데이터를 수신할 수 있다(S1810).13 and 14 , the mobile robot 100 may receive predetermined data from other devices included in the home appliance network system (S1810).

예를 들어, 공기 청청기(200)는 실내 공기 센서를 통해 공간/영역 별 먼지 또는 공기 질 지수 데이터화할 수 있다, 또한, 공기 청청기(200)는 먼지 또는 공기 질 지수 데이터를 이동 로봇(100)과 공유할 수 있다.For example, the air purifier 200 may convert dust or air quality index data for each space/region through an indoor air sensor. Also, the air purifier 200 converts the dust or air quality index data into the mobile robot 100 ) can be shared with

공기 청청기(200)는 먼지 발생 유무를 감지하거나, 사람들이 많이 모여있다가 떠난 공간을 감지할 수 있다. The air purifier 200 may detect whether dust is generated or detect a space where many people have gathered and then left.

공기 청청기(200)는 먼지 발생을 감지하면 운전을 시작하고, 이동 로봇(100)에 먼지 발생 위치 데이터 등을 전송할 수 있다.When the air hearing aid 200 detects the generation of dust, it may start driving and transmit dust generation location data to the mobile robot 100 .

한편, 이동 로봇(100)은 공기 청청기(200)로부터 수신한 데이터와 기존에 학습된 데이터에 기초하여 청소 계획을 수립하고 추천할 수 있다(S1320).Meanwhile, the mobile robot 100 may establish and recommend a cleaning plan based on the data received from the air purifier 200 and previously learned data ( S1320 ).

예를 들어, 이동 로봇(100)은 먼지가 많은 공간의 집중 청소를 추천하여 유도, 공기 청정기(200)의 방향 전환을 추천하여 유도할 수 있다.For example, the mobile robot 100 may guide by recommending intensive cleaning of a dusty space, and recommending and inducing a direction change of the air purifier 200 .

또한, 이동 로봇(100)은 먼지 발생 정도, 감지되는 사람의 수 등을 고려하여 사용자에게 일정 시간 이후의 청소 계획을 제안할 수 있다. 이 때 이동 로봇(100)은 현재 상태, 한 시간 뒤 청소 등 청소 계획을 포함하는 음성 안내 메시지(1410)를 발화할 수 있다. In addition, the mobile robot 100 may suggest a cleaning plan to the user after a predetermined time in consideration of the degree of dust generation, the number of detected people, and the like. At this time, the mobile robot 100 may utter a voice guidance message 1410 including a current state and a cleaning plan, such as cleaning after one hour.

이동 로봇(100)은 사용자의 응답 여부에 따라 청소를 진행할 수 있다.The mobile robot 100 may perform cleaning according to the user's response.

만약 두 시간 뒤의 청소 시작을 포함하는 사용자의 음성 응답(1420)이 있으면, 이동 로봇(100)은 두 시간 뒤에 청소를 시작할 수 있다.If there is a user's voice response 1420 including the start of cleaning after two hours, the mobile robot 100 may start cleaning after two hours.

본 발명의 일 실시예에 따르면, 홈 어플라이언스 간 연동 사용 시나리오를 통해 긍정적인 시너지 효과를 제공할 수 있다.According to an embodiment of the present invention, it is possible to provide a positive synergy effect through the interworking use scenario between home appliances.

또한, 청소가 필요한 상황을 홈 어플라이언스들이 먼저 감지하여 사용자에게 제안함으로써 제품 신뢰성을 높일 수 있다.In addition, home appliances first detect a situation requiring cleaning and suggest to the user, thereby increasing product reliability.

본 발명의 실시예들 중 적어도 하나에 의하면, 이동 로봇은, 사용자에게 음성을 발화할 수 있어, 음성을 매개로 사용자와 대화하고 인터랙션할 수 있다.According to at least one of the embodiments of the present invention, the mobile robot may utter a voice to the user, and may communicate and interact with the user through the voice.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 요청하기 전에 먼저 이동 로봇이 능동적으로 정보를 제공하고, 서비스, 기능 등을 추천함으로써, 사용자의 신뢰도, 선호도 및 제품 활용도를 높일 수 있다.In addition, according to at least one of the embodiments of the present invention, the mobile robot actively provides information before making a request and recommends services, functions, etc., thereby increasing user's reliability, preference, and product utilization.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 이동 로봇에게 위험한 위험지역, 청소가 쉽지 않은 저효율지역을 능동적으로 안내함으로써, 이동 로봇의 안정성 및 사용자의 편의성을 제고하고, 운전 효율, 청소 효율 등을 향상시킬 수 있다.In addition, according to at least one of the embodiments of the present invention, by actively guiding the mobile robot to a dangerous dangerous area and a low-efficiency area that is not easy to clean, the stability and user convenience of the mobile robot are improved, and operation efficiency and cleaning efficiency are improved. etc. can be improved.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 사용자가 자주 사용하지 않는 기능 중 유용한 기능을 능동적으로 추천함으로써, 사용자의 신뢰도, 선호도 및 제품 활용도를 높일 수 있다.In addition, according to at least one of the embodiments of the present invention, the user's reliability, preference, and product utilization may be increased by actively recommending useful functions among functions not frequently used by the user.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 사용자의 음성 명령과 연관된 다른 기능을 추천함으로써, 사용자가 추가적인 노력을 하지 않고서도 연관된 기능을 간편하게 설정하고 이용할 수 있다.In addition, according to at least one of the embodiments of the present invention, by recommending another function related to the user's voice command, the user can easily set and use the related function without additional effort.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 음성 인식이 이동 로봇에서 자체적으로 수행되거나, 서버에서 수행되거나, 이동 로봇과 서버에서 단계적으로 수행됨으로써, 효과적인 음성 인식을 수행할 수 있다.In addition, according to at least one of the embodiments of the present invention, effective voice recognition may be performed by performing voice recognition in the mobile robot itself, in the server, or in stages in the mobile robot and the server.

또한, 본 발명의 실시예들 중 적어도 하나에 의하면, 음성 인식, 장애물 인식, 제품 데이터 분석 등에 인공지능과 머신 러닝을 활용함으로써, 진화하는 사용자 경험(ux)을 제공할 수 있다.In addition, according to at least one of the embodiments of the present invention, it is possible to provide an evolving user experience (ux) by utilizing artificial intelligence and machine learning for voice recognition, obstacle recognition, product data analysis, and the like.

본 발명에 따른 이동 로봇은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.In the mobile robot according to the present invention, the configuration and method of the embodiments described above cannot be limitedly applied, but all or part of each embodiment is selectively combined so that various modifications can be made. may be configured.

한편, 본 발명의 실시예에 따른 이동 로봇의 제어 방법은, 프로세서가 읽을 수 있는 기록매체에 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 프로세서가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한, 인터넷을 통한 전송 등과 같은 캐리어 웨이브의 형태로 구현되는 것도 포함한다. 또한, 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.Meanwhile, the method for controlling a mobile robot according to an embodiment of the present invention may be implemented as a processor-readable code on a processor-readable recording medium. The processor-readable recording medium includes all types of recording devices in which data readable by the processor is stored. Examples of the processor-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc., and also includes those implemented in the form of carrier waves such as transmission over the Internet . In addition, the processor-readable recording medium is distributed in a computer system connected to a network, so that the processor-readable code can be stored and executed in a distributed manner.

또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.In addition, although preferred embodiments of the present invention have been illustrated and described above, the present invention is not limited to the specific embodiments described above, and the technical field to which the present invention belongs without departing from the gist of the present invention as claimed in the claims In addition, various modifications may be made by those of ordinary skill in the art, and these modifications should not be individually understood from the technical spirit or perspective of the present invention.

이동 로봇: 100
서버: 70
저장부: 105
본체: 110
영상획득부: 120
입력부: 125
제어부: 150
주행부: 160
센서부: 170
출력부: 180
통신부: 190
Mobile Robot: 100
Server: 70
Storage: 105
Body: 110
Image Acquisition Unit: 120
Input: 125
Controls: 150
Driving part: 160
Sensor unit: 170
Output: 180
Communications Department: 190

Claims (19)

이동하며 청소를 수행하는 단계;
이전의 청소 수행으로 획득된 기존 데이터에 기반하여, 주행 속도 또는 청소율이 평균값보다 낮았거나, 회전 횟수가 기준 횟수보다 많았던 저효율지역을 특수지역으로 판별하는 단계; 및
상기 판별된 특수지역에 도착한 경우에, 상기 특수지역에 대한 음성 안내 메시지를 출력하는 단계;를 포함하는 이동 로봇의 제어 방법.
moving and performing cleaning;
determining, as a special area, a low-efficiency area in which a running speed or a cleaning rate was lower than an average value, or a number of rotations was greater than a reference number, based on existing data obtained by performing previous cleaning; and
When arriving at the determined special area, outputting a voice guidance message for the special area; control method of a mobile robot comprising a.
삭제delete 제1항에 있어서,
상기 이전의 청소 수행으로 획득된 기존 데이터는, 주행 이력 데이터(driving history data) 및 청소 이력 데이터(cleaning history data)를 포함하는 것을 특징으로 하는 이동 로봇의 제어 방법.
According to claim 1,
The existing data obtained by performing the previous cleaning, the control method of the mobile robot, characterized in that it includes driving history data (driving history data) and cleaning history data (cleaning history data).
제3항에 있어서,
상기 이전의 청소 수행으로 획득된 기존 데이터는,
상기 특수지역에 등록된 장애물 정보를 더 포함하고,
상기 음성 안내 메시지는,
상기 특수지역에 존재하는 장애물에 대한 안내 메시지를 포함하는 것을 특징으로 하는 이동 로봇의 제어 방법.
4. The method of claim 3,
Existing data obtained by performing the previous cleaning,
Further comprising obstacle information registered in the special area,
The voice guidance message is
A control method of a mobile robot, characterized in that it includes a guide message for obstacles existing in the special area.
제1항에 있어서,
상기 음성 안내 메시지는,
상기 특수지역에 대한 청소 여부 확인을 요청하는 메시지를 포함하는 것을 특징으로 하는 이동 로봇의 제어 방법.
According to claim 1,
The voice guidance message is
The control method of a mobile robot, characterized in that it comprises a message requesting to check whether the cleaning of the special area.
제5항에 있어서,
상기 음성 안내 메시지는,
상기 특수지역으로 판별한 이유에 대한 설명, 또는 사용자가 음성 입력할 수 있는 명령어의 예시에 대한 안내 중 적어도 하나를 더 포함하는 것을 특징으로 하는 이동 로봇의 제어 방법.
6. The method of claim 5,
The voice guidance message is
The control method of the mobile robot, characterized in that it further comprises at least one of an explanation of the reason for determining the special area, or a guide for an example of a command that can be input by a user's voice.
제1항에 있어서,
상기 음성 안내 메시지에 대한 사용자의 음성 피드백을 수신하는 단계;
상기 수신된 음성 피드백에 포함되는 음성 명령을 식별하는 단계; 및,
상기 식별된 음성 명령에 대응하는 동작을 수행하는 단계;를 더 포함하는 이동 로봇의 제어 방법.
According to claim 1,
receiving a user's voice feedback on the voice guidance message;
identifying a voice command included in the received voice feedback; and,
The method of controlling a mobile robot further comprising; performing an operation corresponding to the identified voice command.
제7항에 있어서,
상기 음성 명령을 식별하는 단계는,
입력되는 데이터에 포함되는 음성을 인식하도록 학습된 인공신경망을 포함하는 음성 인식 서버로 상기 수신된 음성 피드백 데이터를 송신하는 단계, 및,
상기 음성 인식 서버로부터 상기 수신된 음성 피드백 데이터의 음성 인식 결과를 수신하는 단계를 포함하는 것을 특징으로 하는 이동 로봇의 제어 방법.
8. The method of claim 7,
The step of identifying the voice command comprises:
transmitting the received voice feedback data to a voice recognition server including an artificial neural network trained to recognize a voice included in input data; and
and receiving a voice recognition result of the received voice feedback data from the voice recognition server.
제7항에 있어서,
상기 이동 로봇은, 입력되는 데이터에 포함되는 음성을 인식하도록 학습된 인공신경망을 포함하고,
상기 음성 명령을 식별하는 단계는,
상기 인공신경망이 상기 수신된 음성 피드백에 포함되는 음성 명령을 인식하는 것을 특징으로 하는 이동 로봇의 제어 방법.
8. The method of claim 7,
The mobile robot includes an artificial neural network trained to recognize a voice included in input data,
The step of identifying the voice command comprises:
The control method of a mobile robot, characterized in that the artificial neural network recognizes a voice command included in the received voice feedback.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020200084025A 2018-08-27 2020-07-08 Controlling method for Artificial intelligence Moving robot KR102423572B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200084025A KR102423572B1 (en) 2018-08-27 2020-07-08 Controlling method for Artificial intelligence Moving robot

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180100647A KR102290983B1 (en) 2018-08-27 2018-08-27 Controlling method for Artificial intelligence Moving robot
KR1020200084025A KR102423572B1 (en) 2018-08-27 2020-07-08 Controlling method for Artificial intelligence Moving robot

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180100647A Division KR102290983B1 (en) 2018-08-27 2018-08-27 Controlling method for Artificial intelligence Moving robot

Publications (2)

Publication Number Publication Date
KR20200085712A KR20200085712A (en) 2020-07-15
KR102423572B1 true KR102423572B1 (en) 2022-07-20

Family

ID=82609269

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200084025A KR102423572B1 (en) 2018-08-27 2020-07-08 Controlling method for Artificial intelligence Moving robot

Country Status (1)

Country Link
KR (1) KR102423572B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6993382B2 (en) * 2019-04-26 2022-02-04 ファナック株式会社 Robot teaching device
WO2022138474A1 (en) * 2020-12-23 2022-06-30 パナソニックIpマネジメント株式会社 Robot control method, robot, program, and recording medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100752098B1 (en) * 2006-03-07 2007-08-24 한국과학기술연구원 Robot system based on neural network

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100678728B1 (en) * 2005-06-16 2007-02-05 에스케이 텔레콤주식회사 Interaction between mobile robot and user, System for same
KR102306709B1 (en) * 2014-08-19 2021-09-29 삼성전자주식회사 Robot cleaner, control apparatus, control system, and control method of robot cleaner
KR102695816B1 (en) * 2017-01-02 2024-08-14 엘지전자 주식회사 Home robot and method for operating the same
KR101966044B1 (en) * 2017-02-16 2019-04-04 엘지전자 주식회사 Robot Cleaner and Controlling Method for the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100752098B1 (en) * 2006-03-07 2007-08-24 한국과학기술연구원 Robot system based on neural network

Also Published As

Publication number Publication date
KR20200085712A (en) 2020-07-15

Similar Documents

Publication Publication Date Title
KR102290983B1 (en) Controlling method for Artificial intelligence Moving robot
US20190332119A1 (en) Mobile robot and method of controlling the same
US11556844B2 (en) Artificial intelligence robot for determining cleaning route using sensor data and method for the same
US11779180B2 (en) Robot cleaner for cleaning in consideration of floor state through artificial intelligence and operating method for the same
US20200008639A1 (en) Artificial intelligence monitoring device and method of operating the same
US11330951B2 (en) Robot cleaner and method of operating the same
KR101356165B1 (en) Robot cleaner and controlling method of the same
US11307593B2 (en) Artificial intelligence device for guiding arrangement location of air cleaning device and operating method thereof
US11580385B2 (en) Artificial intelligence apparatus for cleaning in consideration of user's action and method for the same
KR102314538B1 (en) Artificial intelligence Moving robot
US11269342B2 (en) Robot cleaner for avoiding stuck situation through artificial intelligence and method of operating the same
KR102423572B1 (en) Controlling method for Artificial intelligence Moving robot
US11378966B2 (en) Robot cleaner for recognizing stuck situation through artificial intelligence and method of operating the same
US11607801B2 (en) Artificial intelligence robot for managing movement of object using artificial intelligence and method of operating the same
JP2010231470A (en) Information providing system
US20200046193A1 (en) Artificial intelligence robot cleaner
US11653805B2 (en) Robot cleaner for performing cleaning using artificial intelligence and method of operating the same
US11318614B2 (en) Robot cleaner and operating method thereof
KR102612822B1 (en) Controlling method for Artificial intelligence Moving robot
KR102500529B1 (en) Moving Robot and controlling method
KR102147210B1 (en) Controlling method for Artificial intelligence Moving robot
KR102612827B1 (en) Controlling method for Artificial intelligence Moving robot
KR20190110075A (en) Interaction between mobile robot and user, method for same
KR102201143B1 (en) Artificial intelligence Moving robot and control method thereof
KR102093709B1 (en) Robot cleaner, mobile terminal and method for including the same

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant