KR20230173277A - Robot and controlling method therof - Google Patents

Robot and controlling method therof Download PDF

Info

Publication number
KR20230173277A
KR20230173277A KR1020220073793A KR20220073793A KR20230173277A KR 20230173277 A KR20230173277 A KR 20230173277A KR 1020220073793 A KR1020220073793 A KR 1020220073793A KR 20220073793 A KR20220073793 A KR 20220073793A KR 20230173277 A KR20230173277 A KR 20230173277A
Authority
KR
South Korea
Prior art keywords
cleaning
wire
image
robot
area
Prior art date
Application number
KR1020220073793A
Other languages
Korean (ko)
Inventor
임배석
배기범
윤재민
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020220073793A priority Critical patent/KR20230173277A/en
Priority to PCT/KR2023/006041 priority patent/WO2023243859A1/en
Publication of KR20230173277A publication Critical patent/KR20230173277A/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • B25J11/0085Cleaning
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • 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/2805Parameters or conditions being sensed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/04Viewing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/02Manipulators mounted on wheels or on carriages travelling along a guideway
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • B25J9/162Mobile manipulator, movable base with manipulator arm mounted on it
    • 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
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • 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)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

로봇이 개시된다. 로봇은 청소 대상 영역의 타입에 따른 청소 시나리오 및 신경망 모델이 저장된 메모리, 카메라, 거리 센서, 구동부 및 프로세서를 포함한다. 프로세서는 카메라를 통해 획득된 이미지 및 거리 센서를 통해 획득된 거리 데이터를 신경망 모델에 입력하여 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득하고, 획득된 타입 정보에 대응되는 청소 시나리오를 메모리로부터 획득하고, 획득된 청소 시나리오에 기초하여 구동부를 제어할 수 있다. 구동부는 모터, 회전 가능하도록 설계된 플레이트, 플레이트 상에 배치되며 지면과 일정한 각도로 기울어진 슬로프(slope)를 구비한 레일, 레일 상에서 왕복 가능하도록 배치된 슬라이더, 일 측이 슬라이더에 결합되며 슬라이더가 레일 상에서 왕복함에 따라 지면과 일정한 각도를 유지하며 이동하는 암(Arm) 및 암의 타 측에 결합된 석션부를 포함할 수 있다.The robot starts. The robot includes a memory storing cleaning scenarios and neural network models according to the type of area to be cleaned, a camera, a distance sensor, a driving unit, and a processor. The processor inputs the image acquired through the camera and the distance data acquired through the distance sensor into a neural network model to obtain type information about at least one cleaning target area included in the image, and creates a cleaning scenario corresponding to the obtained type information. can be obtained from memory, and the driving unit can be controlled based on the obtained cleaning scenario. The driving part consists of a motor, a plate designed to rotate, a rail placed on the plate and having a slope inclined at a certain angle to the ground, a slider arranged to be able to travel back and forth on the rail, and one side is coupled to the slider, and the slider is connected to the rail. It may include an arm that moves while maintaining a constant angle with the ground as it reciprocates on the surface, and a suction unit coupled to the other side of the arm.

Description

로봇 및 그 제어 방법 {ROBOT AND CONTROLLING METHOD THEROF}Robot and its control method {ROBOT AND CONTROLLING METHOD THEROF}

본 발명은 로봇 및 그 제어 방법에 관한 것으로, 보다 상세하게는 공간을 주행하며 청소 태스크를 수행하는 로봇 및 그 제어 방법에 관한 것이다.The present invention relates to a robot and a method of controlling the same, and more specifically, to a robot that travels in space and performs a cleaning task and a method of controlling the same.

최근 실내 공간에 배치되어 사용자에게 서비스를 제공하는 로봇에 대한 기술 개발이 활발해지고 있다. 로봇은 실내 공간을 주행하며 청소, 가이드, 서빙, 패트롤 또는 긴급 상황 대처 등과 같이 다양한 서비스를 제공할 수 있다. 특히, 사용자의 개입 없이 스스로 공간을 청소하는 로봇에 대한 수요는 나날이 높아지고 있다.Recently, technology development for robots that are deployed in indoor spaces and provide services to users has become active. Robots can travel indoor spaces and provide a variety of services such as cleaning, guiding, serving, patrolling, or responding to emergency situations. In particular, the demand for robots that clean spaces on their own without user intervention is increasing day by day.

로봇이 청소 서비스를 제공하는 경우, 공간의 구조적 특성 또는 공간 내에 위치한 장애물로 인해 공간 내에 로봇이 주행할 수 없는 사각지대가 형성될 수 있으며, 이로 인해 원활한 서비스 제공이 어려워진다는 문제점이 있었다. 이에 따라, 다양한 타입의 청소 영역에 대하여 만족스러운 청소 서비스를 제공할 수 있는 방법에 대한 지속적인 요구가 있었다.When a robot provides a cleaning service, there is a problem that blind spots where the robot cannot run may be formed in the space due to the structural characteristics of the space or obstacles located within the space, which makes it difficult to provide a smooth service. Accordingly, there has been a continuous demand for a method that can provide satisfactory cleaning services for various types of cleaning areas.

본 개시는 상술한 필요성에 따른 것으로, 본 개시의 목적은 이미지 및 거리 데이터에 기초하여 청소 대상 영역에 대한 타입 정보를 획득하고, 획득된 타입 정보에 대응되는 청소 시나리오에 기초하여 청소를 수행하는 로봇 및 그 제어 방법을 제공함에 있다.The present disclosure is in response to the above-described need, and the purpose of the present disclosure is to provide a robot that acquires type information about a cleaning target area based on image and distance data and performs cleaning based on a cleaning scenario corresponding to the obtained type information. and providing a control method thereof.

이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 로봇은, 청소 대상 영역의 타입에 따른 청소 시나리오 및 신경망 모델이 저장된 메모리, 카메라, 거리 센서, 구동부 및 상기 카메라를 통해 획득된 이미지 및 상기 거리 센서를 통해 획득된 거리 데이터를 상기 신경망 모델에 입력하여 상기 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득하고, 상기 획득된 타입 정보에 대응되는 청소 시나리오를 상기 메모리로부터 획득하고, 상기 획득된 청소 시나리오에 기초하여 상기 구동부를 제어하는 프로세서를 포함하며, 상기 구동부는, 모터, 회전 가능하도록 설계된 플레이트, 상기 플레이트 상에 배치되며 지면과 일정한 각도로 기울어진 슬로프(slope)를 구비한 레일, 상기 레일 상에서 왕복 가능하도록 배치된 슬라이더, 일 측이 상기 슬라이더에 결합되며 상기 슬라이더가 상기 레일 상에서 왕복함에 따라 상기 지면과 일정한 각도를 유지하며 이동하는 암(Arm) 및 상기 암의 타 측에 결합된 석션부를 포함할 수 있다.A robot according to an embodiment of the present invention to achieve the above object includes a memory storing a cleaning scenario and a neural network model according to the type of area to be cleaned, a camera, a distance sensor, a driving unit, an image acquired through the camera, and Inputting the distance data obtained through the distance sensor into the neural network model to obtain type information about at least one cleaning target area included in the image, and obtaining a cleaning scenario corresponding to the obtained type information from the memory. and a processor that controls the driving unit based on the obtained cleaning scenario, wherein the driving unit includes a motor, a plate designed to rotate, and a slope disposed on the plate and inclined at a certain angle with the ground. A rail provided, a slider arranged to be able to reciprocate on the rail, an arm whose one side is coupled to the slider and moves while maintaining a certain angle with the ground as the slider reciprocates on the rail, and the other arm of the arm It may include a suction part coupled to the side.

여기서, 상기 신경망 모델은, 이미지 및 거리 데이터가 입력되면, 상기 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 출력하도록 학습되거나, 상기 이미지에 포함된 오브젝트에 대한 정보를 출력하도록 학습되며, 상기 프로세서는, 상기 신경망 모델로부터 상기 이미지에 포함된 오브젝트에 대한 정보가 획득되면, 상기 획득된 오브젝트에 대한 정보에 기초하여 상기 이미지에 포함된 청소 대상 영역에 대한 타입 정보를 획득할 수 있다. Here, when image and distance data are input, the neural network model is trained to output type information about at least one cleaning target area included in the image, or is trained to output information about the object included in the image. , when information about the object included in the image is obtained from the neural network model, the processor may obtain type information about the area to be cleaned included in the image based on the obtained information about the object.

또한, 상기 구동부는, 상기 석션부의 일측에 결합된 제1 와이어 및 상기 석션부의 상기 일측에서 상기 제1 와이어와 일정 거리 이격되어 결합된 제2 와이어를 더 포함하며, 상기 프로세서는, 상기 청소 대상 영역의 타입에 따라 상기 석션부가 상기 지면과 제1 각도를 유지하도록 상기 제1 와이어를 제1 방향으로 와인딩(winding)하며, 상기 청소 대상 영역의 타입에 따라 상기 석션부가 상기 지면과 제2 각도를 유지하도록 상기 제2 와이어를 제2 방향으로 와인딩할 수 있다.In addition, the driving unit further includes a first wire coupled to one side of the suction unit and a second wire coupled to the first wire at a predetermined distance from the one side of the suction unit, and the processor is configured to operate the cleaning target area. Depending on the type, the suction part winds the first wire in a first direction so that the suction part maintains a first angle with the ground, and depending on the type of the cleaning target area, the suction part maintains a second angle with the ground. The second wire may be wound in a second direction so as to do so.

여기서, 상기 프로세서는, 상기 청소 대상 영역에 인접한 오브젝트가 이동 가능한 오브젝트로 식별되면, 상기 석션부가 상기 오브젝트에 접촉되도록 상기 제1 와이어를 상기 제1 방향으로 와인딩하며, 상기 석션부가 상기 오브젝트에 접촉되면, 상기 플레이트가 일 방향으로 회전되도록 상기 모터를 제어할 수 있다.Here, when the object adjacent to the cleaning target area is identified as a movable object, the processor winds the first wire in the first direction so that the suction part contacts the object, and when the suction part contacts the object, the processor winds the first wire in the first direction. , the motor can be controlled so that the plate rotates in one direction.

또한, 상기 프로세서는, 상기 오브젝트가 이동 불가능한 오브젝트인 것으로 식별되면, 상기 오브젝트의 이동을 요청하는 가이드 UI(User Interface)를 제공할 수 있다.Additionally, if the object is identified as an immovable object, the processor may provide a guide UI (User Interface) requesting movement of the object.

또한, 상기 프로세서는, 상기 청소 대상 영역이 특정 타입이면, 상기 제1 와이어를 상기 제1 방향으로 와인딩하고, 상기 청소 대상 영역이 상기 특정 타입 외의 타입이면, 상기 제2 와이어를 상기 제2 방향으로 와인딩할 수 있다.In addition, if the area to be cleaned is a specific type, the processor winds the first wire in the first direction, and if the area to be cleaned is a type other than the specific type, the processor winds the second wire in the second direction. Can be wound.

또한, 상기 프로세서는, 상기 청소 대상 영역과 상기 지면의 단차가 임계 값 이상인 경우, 상기 슬라이더를 후방으로 이동시켜 상기 청소 대상 영역으로 상기 석션부의 위치를 제어할 수 있다.Additionally, when the level difference between the cleaning target area and the ground is greater than or equal to a threshold value, the processor may control the position of the suction unit toward the cleaning target area by moving the slider rearward.

또한, 상기 거리 센서는, 라이다(LIDAR) 센서를 포함하며, 상기 프로세서는, 상기 청소를 수행하는 동안 상기 라이다 센서를 통해 획득된 거리 데이터에 기초하여 상기 슬라이더를 제어할 수 있다.Additionally, the distance sensor includes a LIDAR sensor, and the processor can control the slider based on distance data acquired through the LIDAR sensor while performing the cleaning.

또한, 상기 프로세서는, 상기 이미지에서 청소 불가능한 영역이 식별되면, 청소 불가능한 영역을 가이드하는 UI를 제공할 수 있다.Additionally, when an area that cannot be cleaned is identified in the image, the processor may provide a UI that guides the area that cannot be cleaned.

한편, 본 발명의 일 실시 예에 따른 로봇의 제어 방법은, 카메라를 통해 획득된 이미지 및 거리 센서를 통해 획득된 거리 데이터를 신경망 모델에 입력하여 상기 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득하는 단계, 상기 획득된 타입 정보에 대응되는 청소 시나리오를 획득하는 단계 및 상기 획득된 청소 시나리오에 기초하여 상기 구동부를 제어하여 청소를 수행하는 단계를 포함하며, 상기 구동부는, 모터, 회전 가능하도록 설계된 플레이트, 상기 플레이트 상에 배치되며 지면과 일정한 각도로 기울어진 슬로프(slope)를 구비한 레일, 상기 레일 상에서 왕복 가능하도록 배치된 슬라이더, 일 측이 상기 슬라이더에 결합되며 상기 슬라이더가 상기 레일 상에서 왕복함에 따라 상기 지면과 일정한 각도를 유지하며 이동하는 암(Arm) 및 상기 암의 타 측에 결합된 석션부를 포함할 수 있다.Meanwhile, the robot control method according to an embodiment of the present invention inputs the image acquired through the camera and the distance data obtained through the distance sensor into a neural network model to determine at least one cleaning target area included in the image. Obtaining type information, obtaining a cleaning scenario corresponding to the obtained type information, and controlling the driving unit to perform cleaning based on the obtained cleaning scenario, wherein the driving unit includes a motor, A plate designed to be rotatable, a rail disposed on the plate and having a slope inclined at a certain angle with the ground, a slider disposed to be reciprocatable on the rail, one side is coupled to the slider, and the slider is It may include an arm that moves while maintaining a constant angle with the ground as it reciprocates on the rail, and a suction unit coupled to the other side of the arm.

여기서, 상기 신경망 모델은, 이미지 및 거리 데이터가 입력되면, 상기 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 출력하도록 학습되거나, 상기 이미지에 포함된 오브젝트에 대한 정보를 출력하도록 학습되며, 상기 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득하는 단계는, 상기 신경망 모델로부터 상기 이미지에 포함된 오브젝트에 대한 정보가 획득되면, 상기 획득된 오브젝트에 대한 정보에 기초하여 상기 이미지에 포함된 청소 대상 영역에 대한 타입 정보를 획득할 수 있다.Here, when image and distance data are input, the neural network model is trained to output type information about at least one cleaning target area included in the image, or is trained to output information about the object included in the image. , The step of acquiring type information about the at least one cleaning target area includes, when information about the object included in the image is obtained from the neural network model, based on the obtained information about the object included in the image. Type information about the area to be cleaned can be obtained.

또한, 상기 구동부는, 상기 석션부의 일측에 결합된 제1 와이어 및 상기 석션부의 상기 일측에서 상기 제1 와이어와 일정 거리 이격되어 결합된 제2 와이어를 더 포함하며, 상기 청소 대상 영역의 타입에 따라 상기 석션부가 상기 지면과 제1 각도를 유지하도록 상기 제1 와이어를 제1 방향으로 와인딩(winding)하는 단계 및 상기 청소 대상 영역의 타입에 따라 상기 석션부가 상기 지면과 제2 각도를 유지하도록 상기 제2 와이어를 제2 방향으로 와인딩하는 단계를 더 포함할 수 있다.In addition, the driving unit further includes a first wire coupled to one side of the suction unit and a second wire coupled to the first wire at a predetermined distance from the one side of the suction unit, depending on the type of the area to be cleaned. Winding the first wire in a first direction so that the suction part maintains a first angle with the ground, and according to the type of the cleaning target area, the suction part maintains a second angle with the ground. 2 The step of winding the wire in the second direction may be further included.

여기서, 상기 제1 와이어를 제1 방향으로 와인딩하는 단계는, 상기 청소 대상 영역에 인접한 오브젝트가 이동 가능한 오브젝트로 식별되면, 상기 석션부가 상기 오브젝트에 접촉되도록 상기 제1 와이어를 상기 제1 방향으로 와인딩하며, 상기 제어 방법은, 상기 석션부가 상기 오브젝트에 접촉되면, 상기 플레이트를 일 방향으로 회전시키는 단계를 더 포함할 수 있다.Here, the step of winding the first wire in the first direction includes, when an object adjacent to the cleaning target area is identified as a movable object, winding the first wire in the first direction so that the suction unit contacts the object. The control method may further include rotating the plate in one direction when the suction unit contacts the object.

또한, 상기 오브젝트가 이동 불가능한 오브젝트인 것으로 식별되면, 상기 오브젝트의 이동을 요청하는 가이드 UI(User Interface)를 제공하는 단계를 더 포함할 수 있다.Additionally, if the object is identified as an immovable object, the method may further include providing a guide UI (User Interface) requesting movement of the object.

또한, 상기 제1 와이어를 제1 방향으로 와인딩하는 단계는, 상기 청소 대상 영역이 특정 타입이면, 상기 제1 와이어를 상기 제1 방향으로 와인딩하고, 상기 제2 와이어를 제2 방향으로 와인딩하는 단계는, 상기 청소 대상 영역이 상기 특정 타입 외의 타입이면, 상기 제2 와이어를 상기 제2 방향으로 와인딩할 수 있다.In addition, the step of winding the first wire in the first direction includes, if the area to be cleaned is a specific type, winding the first wire in the first direction and winding the second wire in the second direction. If the area to be cleaned is of a type other than the specific type, the second wire may be wound in the second direction.

또한, 상기 청소를 수행하는 단계는, 상기 청소 대상 영역과 상기 지면의 단차가 임계 값 이상인 경우, 상기 슬라이더를 후방으로 이동시켜 상기 청소 대상 영역으로 상기 석션부를 위치시킬 수 있다.Additionally, in the step of performing the cleaning, when the level difference between the cleaning target area and the ground is greater than or equal to a threshold value, the slider may be moved rearward to position the suction unit in the cleaning target area.

또한, 상기 청소를 수행하는 단계는, 상기 청소를 수행하는 동안 라이다 센서를 통해 획득된 거리 데이터에 기초하여 상기 슬라이더를 이동시킬 수 있다.Additionally, the step of performing the cleaning may involve moving the slider based on distance data acquired through a LiDAR sensor while performing the cleaning.

또한, 상기 이미지에서 청소 불가능한 영역이 식별되면, 청소 불가능한 영역을 가이드하는 UI를 제공하는 단계를 더 포함할 수 있다.Additionally, when an area that cannot be cleaned is identified in the image, a step of providing a UI to guide the area that cannot be cleaned may be further included.

본 개시의 다양한 실시 예에 따르면, 로봇이 다양한 타입의 청소 영역에 대하여 만족스러운 청소 서비스를 제공할 수 있으므로, 사용자의 편의가 향상될 수 있다.According to various embodiments of the present disclosure, since a robot can provide satisfactory cleaning services for various types of cleaning areas, user convenience can be improved.

도 1은 로봇의 청소 서비스 제공에 관해 개략적으로 설명하기 위한 도면이다.
도 2는 본 개시의 일 실시 예에 따른 로봇의 구성을 설명하기 위한 블록도이다.
도 3a 및 도 3b는 본 개시의 일 실시 예에 따른 암의 동작을 설명하기 위한 도면이다.
도 4는 본 개시의 일 실시 예에 따른 석션부의 동작을 설명하기 위한 도면이다.
도 5는 본 개시의 일 실시 예에 따른 신경망 모델에 대해 설명하기 위한 도면이다.
도 6a 내지 도 6d는 본 개시의 일 실시 예에 따른 다양한 청소 시나리오에 대해 설명하기 위한 도면이다.
도 7a 및 도 7b는 본 개시의 일 실시 예에 따른 오브젝트 이동 가부에 따른 로봇의 동작을 설명하기 위한 도면이다.
도 8은 본 개시의 일 실시 예에 따른 로봇의 단차 영역에 대한 청소 동작을 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시 예에 따른 로봇의 구성을 구체적으로 설명하기 위한 블록도이다.
도 10은 본 개시의 일 실시 예에 따른 제어 방법을 설명하기 위한 흐름도이다.
Figure 1 is a diagram schematically explaining the provision of cleaning services by a robot.
Figure 2 is a block diagram for explaining the configuration of a robot according to an embodiment of the present disclosure.
3A and 3B are diagrams for explaining the operation of an arm according to an embodiment of the present disclosure.
Figure 4 is a diagram for explaining the operation of the suction unit according to an embodiment of the present disclosure.
Figure 5 is a diagram for explaining a neural network model according to an embodiment of the present disclosure.
FIGS. 6A to 6D are diagrams for explaining various cleaning scenarios according to an embodiment of the present disclosure.
FIGS. 7A and 7B are diagrams for explaining the operation of a robot depending on whether an object can be moved according to an embodiment of the present disclosure.
Figure 8 is a diagram for explaining a cleaning operation of a robot in a step area according to an embodiment of the present disclosure.
Figure 9 is a block diagram for specifically explaining the configuration of a robot according to an embodiment of the present disclosure.
Figure 10 is a flowchart for explaining a control method according to an embodiment of the present disclosure.

이하에서는 첨부 도면을 참조하여 본 개시를 상세히 설명한다. Hereinafter, the present disclosure will be described in detail with reference to the accompanying drawings.

본 개시의 실시 예에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 개시의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다. The terms used in the embodiments of the present disclosure have selected general terms that are currently widely used as much as possible while considering the functions in the present disclosure, but this may vary depending on the intention or precedent of a technician working in the art, the emergence of new technology, etc. . In addition, in certain cases, there are terms arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the description part of the relevant disclosure. Therefore, the terms used in this disclosure should be defined based on the meaning of the term and the overall content of this disclosure, rather than simply the name of the term.

본 개시에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.In the present disclosure, expressions such as “have,” “may have,” “includes,” or “may include” refer to the presence of the corresponding feature (e.g., component such as numerical value, function, operation, or part). , and does not rule out the existence of additional features.

A 또는/및 B 중 적어도 하나라는 표현은 "A" 또는 "B" 또는 "A 및 B" 중 어느 하나를 나타내는 것으로 이해되어야 한다. The expression at least one of A or/and B should be understood as referring to either “A” or “B” or “A and B”.

본 개시에서 사용된 "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. Expressions such as “first,” “second,” “first,” or “second,” used in the present disclosure can modify various components regardless of order and/or importance, and can refer to one component. It is only used to distinguish from other components and does not limit the components.

어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 어떤 구성요소가 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. A component (e.g., a first component) is “(operatively or communicatively) coupled with/to” another component (e.g., a second component). When referred to as “connected to,” it should be understood that a certain component can be connected directly to another component or connected through another component (e.g., a third component).

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as “comprise” or “consist of” are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are intended to indicate the presence of one or more other It should be understood that this does not exclude in advance the presence or addition of features, numbers, steps, operations, components, parts, or combinations thereof.

본 개시에서 "모듈" 혹은 "부"는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 "모듈" 혹은 복수의 "부"는 특정한 하드웨어로 구현될 필요가 있는 "모듈" 혹은 "부"를 제외하고는 적어도 하나의 모듈로 일체화되어 적어도 하나의 프로세서(미도시)로 구현될 수 있다.In the present disclosure, a “module” or “unit” performs at least one function or operation, and may be implemented as hardware or software, or as a combination of hardware and software. Additionally, a plurality of “modules” or a plurality of “units” are integrated into at least one module and implemented by at least one processor (not shown), except for “modules” or “units” that need to be implemented with specific hardware. It can be.

본 개시에서 '사용자'는 로봇으로부터 서비스를 제공받는 사람을 의미할 수 있으나, 이에 한정되는 것은 아니다.In this disclosure, 'user' may refer to a person who receives services from a robot, but is not limited thereto.

도 1은 로봇의 청소 서비스 제공에 관해 개략적으로 설명하기 위한 도면이다.Figure 1 is a diagram schematically explaining the provision of cleaning services by a robot.

본 개시의 일 실시 예에 따른 로봇(100)은 특정 공간에 배치되며, 공간에 거주하거나 일시 방문한 사용자에게 다양한 서비스를 제공할 수 있다. 로봇(100)은 사용자에게 청소, 가이드, 서빙, 패트롤 또는 긴급 상황 대처 등의 서비스를 제공할 수 있으나, 본 명세서에서는 로봇(100)이 청소 서비스를 제공하는 것을 전제로 로봇(100)의 동작을 설명하도록 한다.The robot 100 according to an embodiment of the present disclosure is placed in a specific space and can provide various services to users who live in or temporarily visit the space. The robot 100 can provide services such as cleaning, guiding, serving, patrolling, or responding to emergency situations to the user. However, in this specification, the operation of the robot 100 is based on the premise that the robot 100 provides cleaning services. Let me explain.

공간을 주행하며 청소 서비스를 제공하는 로봇(100)은 공간 내에 위치한 오브젝트와 임계 거리 이내로 이격된 것으로 식별되면 오브젝트와 인접한 영역에 대한 청소 시나리오에 기초하여 청소를 수행할 수 있다. 예를 들어, 로봇(100)은 오브젝트에 의해 형성된 코너(10)에 대응되는 청소 시나리오에 기초하여 코너(10) 영역을 청소할 수 있다.When the robot 100, which provides cleaning services while traveling in a space, is identified as being spaced within a critical distance from an object located in the space, it can perform cleaning based on a cleaning scenario for an area adjacent to the object. For example, the robot 100 may clean the corner 10 area based on a cleaning scenario corresponding to the corner 10 formed by the object.

예를 들어, 로봇(100)은 코너(10)를 포함하는 이미지 및 거리 데이터를 획득하고, 획득된 이미지 및 거리 데이터에 기초하여 이미지에 포함된 코너(10) 타입의 청소 영역을 식별할 수 있다. 또한, 로봇(100)은 식별된 영역에 대응되는 청소 시나리오를 획득하고, 획득된 청소 시나리오에 기초하여 청소를 수행할 수 있다.For example, the robot 100 may acquire an image and distance data including the corner 10, and identify a cleaning area of the type of corner 10 included in the image based on the acquired image and distance data. . Additionally, the robot 100 may obtain a cleaning scenario corresponding to the identified area and perform cleaning based on the obtained cleaning scenario.

또한, 로봇(100)은 특정한 타입의 청소 대상 영역을 효과적으로 청소하기 위해 로봇(100)의 본체를 기준으로 청소가 가능한 범위를 가변적으로 조절할 수 있는 특수한 형태의 구동부를 포함할 수 있다. 로봇(100)은 획득된 청소 시나리오에 기초하여 구동부를 제어함으로써 식별된 청소 대상 영역을 효과적으로 청소할 수 있다.Additionally, the robot 100 may include a special type of driving unit that can variably adjust the cleaning range based on the main body of the robot 100 in order to effectively clean a specific type of cleaning target area. The robot 100 can effectively clean the identified cleaning target area by controlling the driving unit based on the acquired cleaning scenario.

이하에서는, 이미지 및 거리 데이터에 기초하여 청소 대상 영역에 대한 타입 정보를 획득하고, 획득된 타입 정보에 대응되는 청소 시나리오에 기초하여 청소를 수행하는 다양한 실시 예에 대해 좀더 구체적으로 설명하도록 한다.Hereinafter, various embodiments of obtaining type information about a cleaning target area based on image and distance data and performing cleaning based on a cleaning scenario corresponding to the obtained type information will be described in more detail.

도 2는 본 개시의 일 실시 예에 따른 로봇의 구성을 설명하기 위한 블록도이다.Figure 2 is a block diagram for explaining the configuration of a robot according to an embodiment of the present disclosure.

도 2에 따르면, 본 개시의 일 실시 예에 따른 로봇(100)은 메모리(110), 카메라(120), 거리 센서(130), 구동부(140) 및 프로세서(150)를 포함할 수 있다.According to FIG. 2, the robot 100 according to an embodiment of the present disclosure may include a memory 110, a camera 120, a distance sensor 130, a driver 140, and a processor 150.

메모리(110)는 본 개시의 다양한 실시 예를 위해 필요한 데이터를 저장할 수 있다. 메모리(110)는 데이터 저장 용도에 따라 로봇(100)에 임베디드된 메모리 형태로 구현되거나, 로봇(100)에 탈부착이 가능한 메모리 형태로 구현될 수도 있다. 예를 들어, 로봇(100)의 구동을 위한 데이터의 경우 로봇(100)에 임베디드된 메모리에 저장되고, 로봇(100)의 확장 기능을 위한 데이터의 경우 로봇(100)에 탈부착이 가능한 메모리에 저장될 수 있다. 한편, 로봇(100)에 임베디드된 메모리의 경우 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(non-volatile Memory)(예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, 플래시 메모리(예: NAND flash 또는 NOR flash 등), 하드 드라이브, 또는 솔리드 스테이트 드라이브(solid state drive(SSD)) 중 적어도 하나로 구현될 수 있다. 또한, 로봇(100)에 탈부착이 가능한 메모리의 경우 메모리 카드(예를 들어, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital), MMC(multi-media card) 등), USB 포트에 연결가능한 외부 메모리(예를 들어, USB 메모리) 등과 같은 형태로 구현될 수 있다.The memory 110 may store data necessary for various embodiments of the present disclosure. The memory 110 may be implemented as a memory embedded in the robot 100 or as a memory detachable from the robot 100 depending on the data storage purpose. For example, data for driving the robot 100 is stored in a memory embedded in the robot 100, and data for expansion functions of the robot 100 is stored in a memory that is detachable from the robot 100. It can be. Meanwhile, in the case of memory embedded in the robot 100, volatile memory (e.g., dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM (SDRAM), etc.), non-volatile memory (e.g. : OTPROM (one time programmable ROM), PROM (programmable ROM), EPROM (erasable and programmable ROM), EEPROM (electrically erasable and programmable ROM), mask ROM, flash ROM, flash memory (e.g. NAND flash or NOR flash, etc.) , a hard drive, or a solid state drive (SSD). In addition, in the case of memory that is removable from the robot 100, a memory card (e.g., compact flash (CF), SD (secure digital), Micro-SD (micro secure digital), Mini-SD (mini secure digital), xD (extreme digital), MMC (multi-media card), etc.), external memory that can be connected to a USB port (e.g. For example, it may be implemented in a form such as USB memory).

일 예에 따른 메모리(110)는 청소 대상 영역의 타입에 따른 청소 시나리오 및 청소 영역의 타입 정보 획득에 활용되는 신경망 모델을 저장할 수 있다. The memory 110 according to one example may store a cleaning scenario according to the type of the cleaning target area and a neural network model used to obtain information on the type of the cleaning area.

일 예에 따르면, 신경망 모델은 이미지 및 거리 데이터가 입력되면 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 출력하도록 학습된 모델일 수 있다. 이 경우 신경망 모델은 이미지 및 거리 데이터가 입력되면 이미지에 포함된 복수의 세그먼트(Segment) 영역 각각 또는 서로 다른 세그먼트가 접하고 있는 영역 중 청소가 가능한 영역(이하, 청소 대상 영역)의 타입 정보를 출력하도록 학습된 모델일 수 있다.According to one example, the neural network model may be a model learned to output type information about at least one cleaning target area included in the image when image and distance data are input. In this case, when image and distance data are input, the neural network model outputs type information on the area that can be cleaned (hereinafter referred to as the area to be cleaned) among multiple segment areas included in the image or areas where different segments are in contact. It may be a learned model.

다른 예에 따르면, 신경망 모델은 이미지 및 거리 데이터가 입력되면 이미지에 포함된 오브젝트에 대한 정보를 출력하도록 학습된 모델일 수 있다. 이 경우 신경망 모델은 이미지 및 거리 데이터가 입력되면 이미지에 포함된 복수의 세그먼트 각각에 대한 정보를 출력할 수 있다.According to another example, a neural network model may be a model learned to output information about objects included in the image when image and distance data are input. In this case, when image and distance data are input, the neural network model can output information about each of a plurality of segments included in the image.

카메라(120)는 로봇(100)의 주변의 오브젝트를 포함하는 이미지를 획득하는 구성이다. 카메라(120)는 오브젝트에 의해 반사되어 수신되는 가시광 기타 광학 신호를 이미지 센서로 포커싱하는 렌즈 및 가시광 기타 광학 신호를 감지할 수 있는 이미지 센서를 포함할 수 있다. 여기서, 이미지 센서는 복수의 픽셀로 구분되는 2D의 픽셀 어레이를 포함할 수 있다.The camera 120 is configured to acquire images including objects around the robot 100. The camera 120 may include a lens that focuses visible light and other optical signals reflected by an object and received into an image sensor, and an image sensor that can detect visible light and other optical signals. Here, the image sensor may include a 2D pixel array divided into a plurality of pixels.

프로세서(150)는 가시광선 또는 적외선 등 다양한 파장대의 광학 신호를 카메라(120)의 렌즈를 통해 수신하고, 수신된 광학 신호를 카메라(120)의 이미지 센서를 통해 처리하여 이미지를 획득할 수 있다. 또한, 일 예에 따른 카메라(120)는 뎁스(Depth) 카메라로 구현될 수 있으며, 이 경우 프로세서(150)는 카메라(120)를 통해 뎁스 이미지를 획득할 수 있다.The processor 150 may receive optical signals in various wavelength ranges, such as visible light or infrared light, through the lens of the camera 120, and process the received optical signals through the image sensor of the camera 120 to obtain an image. Additionally, the camera 120 according to one example may be implemented as a depth camera, and in this case, the processor 150 may acquire a depth image through the camera 120.

한편, 카메라(120)는 복수의 렌즈 및 복수의 이미지 센서를 포함하는 카메라 모듈의 형태로 구현될 수 있다. 일 예에 따르면, 카메라(120)는 두 개의 렌즈와 두 개의 이미지 센서를 포함하는 스테레오 카메라(stereo camera)일 수 있으나 이에 한정되는 것은 아니다.Meanwhile, the camera 120 may be implemented in the form of a camera module including a plurality of lenses and a plurality of image sensors. According to one example, the camera 120 may be a stereo camera including two lenses and two image sensors, but is not limited thereto.

거리 센서(130)는 거리 데이터를 획득할 수 있다. 구체적으로, 거리 센서(130)는 로봇(100)의 위치와 오브젝트의 위치와의 거리를 측정하고, 측정 결과에 기초하여 거리 데이터를 획득할 수 있다. 일 예에 따른 거리 센서(130)는 라이다(LIDAR, Light Detection And Ranging), RADAR(RAdio Detection And Ranging) 또는 SONAR((RAdio Detection And Ranging) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.The distance sensor 130 may acquire distance data. Specifically, the distance sensor 130 may measure the distance between the position of the robot 100 and the position of the object, and obtain distance data based on the measurement result. The distance sensor 130 according to an example may include at least one of LIDAR (Light Detection And Ranging), RADAR (RAdio Detection And Ranging), or SONAR (RAdio Detection And Ranging), but is limited thereto. no.

구동부(140)는 로봇(100)의 주행 및 청소 서비스 제공을 위한 구성이다. 로봇(100)의 주행과 관련하여, 구동부(140)는 프로세서(150)의 제어에 따라 주행 방향 및 주행 속도를 조절할 수 있다. 일 예에 따른 구동부(140)는 로봇(100)이 주행하기 위한 동력을 발생시키는 동력발생장치(예: 사용 연료(또는 에너지원)에 따라 가솔린 엔진(engine), 디젤 엔진, LPG(liquefied petroleum gas) 엔진, 전기 모터 등), 주행 방향을 조절하기 위한 조향 장치(예: 기계식 스티어링(manual steering), 유압식 스티어링(hydraulics steering), 전자식 스티어링(electronic control power steering, EPS) 등), 동력에 따라 로봇(100)을 주행시키는 주행 장치(예: 바퀴, 프로펠러 등) 등을 포함할 수 있다. 또한, 구동부(140)는 로봇(100)의 주행 타입(예: 휠 타입, 보행 타입, 비행 타입 등)에 따라 변형 실시될 수 있다.The driving unit 140 is configured to drive the robot 100 and provide cleaning services. Regarding the driving of the robot 100, the driving unit 140 may adjust the driving direction and driving speed according to the control of the processor 150. The driving unit 140 according to one example is a power generator that generates power for the robot 100 to travel (e.g., a gasoline engine, a diesel engine, or a liquefied petroleum gas (LPG) depending on the fuel (or energy source) used. ) engines, electric motors, etc.), steering devices to control the driving direction (e.g., manual steering, hydraulics steering, electronic control power steering, EPS, etc.), robots depending on power. It may include a traveling device (e.g., wheels, propeller, etc.) that drives (100). Additionally, the driving unit 140 may be modified depending on the driving type of the robot 100 (e.g., wheel type, walking type, flying type, etc.).

로봇(100)의 청소 기능과 관련하여, 구동부(140)는 프로세서(150)의 제어에 따라 청소 대상 영역에 분포하고 있는 이물질을 흡입하여 제거할 수 있다. 일 예에 따른 구동부(140)는 모터, 회전 가능하도록 설계된 플레이트, 플레이트 상에 배치되며 지면과 일정한 각도로 기울어진 슬로프(slope)를 구비한 레일, 레일 상에서 왕복 가능하도록 배치된 슬라이더, 일 측이 슬라이더에 결합되며 슬라이더가 레일 상에서 왕복함에 따라 지면과 일정 각도를 유지하며 이동하는 암(Arm) 및 암의 타측에 결합된 석션부를 포함할 수 있다.In relation to the cleaning function of the robot 100, the driving unit 140 can suction and remove foreign substances distributed in the cleaning target area under the control of the processor 150. The driving unit 140 according to an example includes a motor, a plate designed to be rotatable, a rail disposed on the plate and having a slope inclined at a certain angle with the ground, a slider arranged to be reciprocatable on the rail, and one side It may include an arm that is coupled to the slider and moves while maintaining a certain angle with the ground as the slider reciprocates on the rail, and a suction portion coupled to the other side of the arm.

또한, 구동부(140)는 석션부의 일측에 결합된 제1 와이어 및 석션부의 일측에서 제1 와이어와 일정 거리 이격되어 결합된 제2 와이어를 포함할 수 있다.Additionally, the driving unit 140 may include a first wire coupled to one side of the suction unit and a second wire coupled to one side of the suction unit at a predetermined distance from the first wire.

프로세서(150)는 로봇(100)의 동작을 전반적으로 제어한다. 구체적으로, 프로세서(150)는 로봇(100)의 각 구성과 연결되어 로봇(100)의 동작을 전반적으로 제어할 수 있다. 예를 들어, 프로세서(150)는 메모리(110), 카메라(120), 거리 센서(130) 및 구동부(140)와 연결되어 로봇(100)의 동작을 제어할 수 있다.The processor 150 generally controls the operation of the robot 100. Specifically, the processor 150 is connected to each component of the robot 100 and can generally control the operation of the robot 100. For example, the processor 150 may be connected to the memory 110, the camera 120, the distance sensor 130, and the driver 140 to control the operation of the robot 100.

일 실시 예에 따라 프로세서(150)는 디지털 시그널 프로세서(digital signal processor(DSP), 마이크로 프로세서(microprocessor), 중앙처리장치(central processing unit(CPU)), MCU(Micro Controller Unit), MPU(micro processing unit), NPU(Neural Processing Unit), 컨트롤러(controller), 어플리케이션 프로세서(application processor(AP)) 등 다양한 이름으로 명명될 수 있으나, 본 명세서에서는 프로세서(150)로 기재한다.According to one embodiment, the processor 150 includes a digital signal processor (DSP), a microprocessor, a central processing unit (CPU), a micro controller unit (MCU), and a micro processing unit (MPU). It may be named by various names such as unit), NPU (Neural Processing Unit), controller, and application processor (AP), but in this specification, it is referred to as processor 150.

프로세서(150)는 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, FPGA(Field Programmable gate array) 형태로 구현될 수도 있다. 또한, 프로세서(150)는 SRAM 등의 휘발성 메모리를 포함할 수 있다.The processor 150 may be implemented as a System on Chip (SoC), large scale integration (LSI), or may be implemented as a Field Programmable Gate Array (FPGA). Additionally, the processor 150 may include volatile memory such as SRAM.

본 개시의 일 실시 예에 따른 프로세서(150)는 카메라(120)를 통해 획득된 이미지 및 거리 센서(130)를 통해 획득된 거리 데이터를 메모리(110)에 저장된 신경망 모델에 입력하여 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득할 수 있다.The processor 150 according to an embodiment of the present disclosure inputs the image acquired through the camera 120 and the distance data obtained through the distance sensor 130 into the neural network model stored in the memory 110 to obtain the image included in the image. Type information about at least one cleaning target area can be obtained.

일 예에 따라 이미지 및 거리 데이터가 입력되면 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 출력하도록 학습된 신경망 모델을 활용하는 경우, 프로세서(150)는 신경망 모델을 통해 출력된 결과 값에 기초하여 별도의 후처리 없이 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득할 수 있다. 여기서, 청소 대상 영역의 타입은 노멀(Normal), 얕은 틈, 코너, 깊은 틈, 좁은 틈 또는 단차 영역 중 적어도 하나일 수 있으나 이에 한정되는 것은 아니다.According to one example, when image and distance data are input and a neural network model learned to output type information about at least one cleaning target area included in the image is used, the processor 150 outputs the result value through the neural network model. Based on this, type information about at least one cleaning target area included in the image can be obtained without separate post-processing. Here, the type of the area to be cleaned may be at least one of normal, shallow gap, corner, deep gap, narrow gap, or step area, but is not limited thereto.

다른 예에 따르면, 신경망 모델은 이미지 및 거리 데이터가 입력되면 이미지에 포함된 오브젝트에 대한 정보를 출력하도록 학습된 모델일 수 있다. 이러한 방식으로 학습된 신경망 모델을 활용하는 경우, 프로세서(150)는 신경망 모델을 통해 출력된 오브젝트에 대한 정보에 기초하여 별도의 후처리를 통해 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득할 수 있다. 구체적으로, 프로세서(150)는 후처리를 통해 이미지에 포함된 세그먼트에 대응되는 오브젝트들 간의 관계에 기초하여 청소 대상 영역의 타입 정보를 획득할 수 있다.According to another example, a neural network model may be a model learned to output information about objects included in the image when image and distance data are input. When using a neural network model learned in this way, the processor 150 generates type information for at least one cleaning target area included in the image through separate post-processing based on information about the object output through the neural network model. can be obtained. Specifically, the processor 150 may obtain type information of the area to be cleaned based on the relationship between objects corresponding to segments included in the image through post-processing.

이어서, 프로세서(150)는 메모리(110)에 저장된 복수의 청소 시나리오 중 획득된 타입 정보에 대응되는 청소 시나리오를 식별할 수 있다. 프로세서(150)는 식별된 청소 시나리오에 기초하여 구동부(140)를 제어함으로써 청소 대상 영역에 대한 청소를 수행할 수 있다.Subsequently, the processor 150 may identify a cleaning scenario corresponding to the obtained type information among the plurality of cleaning scenarios stored in the memory 110. The processor 150 may perform cleaning of the area to be cleaned by controlling the driver 140 based on the identified cleaning scenario.

또한, 프로세서(150)는 청소 대상 영역의 타입에 따라 석션부가 지면과 제1 각도를 유지하도록 제1 와이어를 제1 방향으로 와인딩하거나 석션부가 지면과 제2 각도를 유지하도록 제2 와이어를 제2 방향으로 와인딩할 수 있다. 여기서, 프로세서(150)는 청소 대상 영역에 인접한 오브젝트가 이동 가능한 오브젝트로 식별되면 석션부가 오브젝트에 접촉되도록 제1 와이어를 제1 방향으로 와인딩하며, 석션부가 오브젝트에 접촉되면 플레이트가 일 방향으로 회전되도록 모터를 제어할 수 있다.In addition, the processor 150 may wind the first wire in a first direction so that the suction unit maintains a first angle with the ground, or wind the second wire in a second direction so that the suction unit maintains a second angle with the ground, depending on the type of area to be cleaned. It can be wound in any direction. Here, when the object adjacent to the area to be cleaned is identified as a movable object, the processor 150 winds the first wire in the first direction so that the suction part contacts the object, and rotates the plate in one direction when the suction part contacts the object. The motor can be controlled.

또한, 프로세서(150)는 오브젝트가 이동 불가능한 오브젝트인 것으로 식별되면 오브젝트의 이동을 요청하는 가이드 UI(User Interface)를 제공할 수 있다.Additionally, if an object is identified as an immovable object, the processor 150 may provide a guide UI (User Interface) to request movement of the object.

또한, 프로세서(150)는 청소 대상 영역이 특정 타입인 것으로 식별되면 제1 와이어를 제1 방향으로 와인딩하고, 청소 대상 영역이 특정 타입 외의 타입이면 제2 와이어를 제2 방향으로 와인딩할 수 있다.Additionally, the processor 150 may wind the first wire in a first direction if the area to be cleaned is identified as being a specific type, and may wind the second wire in a second direction if the area to be cleaned is of a type other than the specific type.

또한, 프로세서(150)는 청소 대상 영역과 지면의 단차가 임계 값 이상인 경우, 슬라이더를 후방으로 이동시켜 청소 대상 영역으로 석션부의 위치를 제어할 수 있다.Additionally, if the level difference between the area to be cleaned and the ground is greater than or equal to a threshold value, the processor 150 may control the position of the suction unit to the area to be cleaned by moving the slider backward.

또한, 거리 센서(130)가 라이다(LIDAR) 센서를 포함하는 경우, 프로세서(150)는 청소를 수행하는 동안 라이다 센서를 통해 획득된 거리 데이터에 기초하여 청소 대상 영역에 대한 타입 정보를 획득하고, 획득된 타입 정보에 대응되는 청소 시나리오에 기초하여 슬라이더를 제어할 수 있다.In addition, when the distance sensor 130 includes a LIDAR sensor, the processor 150 obtains type information about the area to be cleaned based on distance data acquired through the LIDAR sensor while cleaning. And, the slider can be controlled based on the cleaning scenario corresponding to the acquired type information.

또한, 프로세서(150)는 이미지에서 청소 불가능한 영역이 식별되면, 청소 불가능한 영역을 가이드하는 UI를 제공할 수도 있다. 여기서, 청소 불가능한 영역은 이미지에 포함된 오브젝트 자체 및 로봇(100)의 폼 팩터를 고려할 때 청소를 전혀 수행할 수 없는 영역은 물론 청소를 수행하는 경우 오브젝트의 파손 등의 문제가 발생할 수 있는 영역을 포함할 수 있으나 이에 한정되는 것은 아니다. Additionally, when an area that cannot be cleaned is identified in the image, the processor 150 may provide a UI that guides the area that cannot be cleaned. Here, the uncleanable area refers to an area where cleaning cannot be performed at all, considering the form factor of the object itself and the robot 100 included in the image, as well as an area where problems such as damage to the object may occur when cleaning is performed. It may include, but is not limited to this.

도 3a 및 도 3b는 본 개시의 일 실시 예에 따른 암의 동작을 설명하기 위한 도면이다.3A and 3B are diagrams for explaining the operation of an arm according to an embodiment of the present disclosure.

구동부(140)는 모터를 포함할 수 있다. 구동부(140)는 로봇(100)의 주행 및 청소 기능과 관계되는 단일한 모터를 포함할 수도 있으며, 주행에 관계되는 제1 모터와 청소 기능에 관계되는 제2 모터를 포함할 수도 있다.The driving unit 140 may include a motor. The driving unit 140 may include a single motor related to the driving and cleaning functions of the robot 100, or may include a first motor related to driving and a second motor related to the cleaning function.

구동부(140)는 회전 가능하도록 설계된 플레이트(142)를 포함할 수 있다. 플레이트(142)는 지면과 수직한 방향을 기준으로 회전 가능하도록 설계될 수 있으며, 플레이트(142) 상에는 지면과 일정한 각도로 기울어진 슬로프를 구비한 레일(143)이 배치될 수 있다. 일 예에 따르면, 레일(143)은 한 쌍의 직선형 레일로 구현될 수 있으나 이에 한정되는 것은 아니다.The driving unit 140 may include a plate 142 designed to be rotatable. The plate 142 may be designed to be rotatable based on a direction perpendicular to the ground, and a rail 143 having a slope inclined at a certain angle to the ground may be disposed on the plate 142. According to one example, the rail 143 may be implemented as a pair of straight rails, but is not limited thereto.

레일(143)은 슬라이더(144)와 결합할 수 있으며, 레일(143)과 슬라이더(144)의 결합부에는 베어링 등의 부속이 포함될 수 있다. 슬라이더(144)는 레일(143)상에서 왕복 가능하도록 배치되며, 일 예에 따른 슬라이더(144)는 한 쌍의 레일에 대응되는 한쌍의 결합부를 포함할 수 있다.The rail 143 may be coupled to the slider 144, and parts such as bearings may be included in the joint portion of the rail 143 and the slider 144. The slider 144 is arranged to be reciprocatable on the rail 143, and the slider 144 according to one example may include a pair of coupling parts corresponding to a pair of rails.

슬라이더(144)는 암(145)과 결합된 구성이다. 암(145)은 슬라이더(144)가 레일(143) 상에서 왕복함에 따라 지면과 일정한 각도를 유지하며 이동할 수 있다. 이 경우, 암(145)은 레일(143)에 포함된 슬로프를 따라서 지면과 일정한 각도를 유지하며 이동할 수 있다. 암(145)이 슬라이더(144)와 결합한 일 측에는 힌지 등이 포함되어 암(145)의 원활한 동작을 도울 수 있다.The slider 144 is combined with the arm 145. The arm 145 can move while maintaining a constant angle with the ground as the slider 144 reciprocates on the rail 143. In this case, the arm 145 can move along the slope included in the rail 143 while maintaining a constant angle with the ground. One side of the arm 145 coupled to the slider 144 may include a hinge, etc. to help the arm 145 operate smoothly.

암(145)의 타 측에는 석션부(146)가 결합될 수 있다. 석션부(146)는 청소 대상 영역에 분포된 이물질을 흡입하여 제거하기 위한 흡입부 및 석션부(146)가 청소 대상 영역에 인접한 오브젝트에 접촉할 경우 석션부(146)와 오브젝트 간의 마찰력을 증대시키기 위한 논슬립(non-slip) 부재 등을 포함할 수 있다.A suction unit 146 may be coupled to the other side of the arm 145. The suction unit 146 is a suction unit for sucking and removing foreign substances distributed in the area to be cleaned, and increases friction between the suction unit 146 and the object when the suction unit 146 contacts an object adjacent to the area to be cleaned. It may include non-slip members, etc.

암(145)은 석션부(146)의 동작을 제어하기 위한 와이어(147)를 포함할 수 있다. 예를 들어, 와이어(147)는 석션부(146)의 일측에 결합된 제1 와이어 및 석션부(146)의 일측에서 제1 와이어와 일정 거리 이격되어 결합된 제2 와이어를 포함할 수 있으나, 이에 한정되는 것은 아니다.The arm 145 may include a wire 147 for controlling the operation of the suction unit 146. For example, the wire 147 may include a first wire coupled to one side of the suction portion 146 and a second wire coupled to one side of the suction portion 146 at a certain distance from the first wire. It is not limited to this.

도 3a에 따르면, 프로세서(150)는 슬라이더(144)가 암(145)의 반대 방향으로 이동하도록 제어할 수 있다. 이 경우 암(145)은 슬라이더(144)의 이동 방향으로 함께 이동하며, 그 결과 레일(143) 밖으로 돌출된 암(145)의 길이는 단축될 수 있다. 즉, 슬라이더(144)의 후퇴에 따라 로봇(100)의 위치를 기준으로 로봇(100)이 청소할 수 있는 범위는 감소할 수 있다.According to FIG. 3A, the processor 150 may control the slider 144 to move in the opposite direction of the arm 145. In this case, the arm 145 moves together in the direction of movement of the slider 144, and as a result, the length of the arm 145 protruding out of the rail 143 can be shortened. That is, as the slider 144 retreats, the range that the robot 100 can clean based on the position of the robot 100 may decrease.

또한, 슬라이더(144)의 후퇴에 따라 석션부(146)가 지면으로부터 이격된 거리는 증가할 수 있다. 이 경우 석션부(146)에 의한 이물질 흡입이 원활하게 이루어지지 않을 수 있기 때문에, 프로세서(150)는 모터(141)를 통해 와이어(147)를 제어하여 석션부(146)가 지면에 가까워지도록 석션부(146)의 위치를 조정할 수 있다.Additionally, as the slider 144 retracts, the distance between the suction unit 146 and the ground may increase. In this case, since the suction of foreign substances by the suction unit 146 may not be smoothly achieved, the processor 150 controls the wire 147 through the motor 141 to bring the suction unit 146 closer to the ground. The position of unit 146 can be adjusted.

도 3b에 따르면, 프로세서(150)는 슬라이더(144)가 암(145)의 방향으로 이동하도록 제어할 수 있다. 이 경우 암(145)은 슬라이더(144)의 이동 방향으로 함께 이동하며, 그 결과 레일(143) 밖으로 돌출된 암(145)의 길이는 신장될 수 있다. 즉, 슬라이더(144)의 전진에 따라 로봇(100)의 위치를 기준으로 로봇(100)이 청소할 수 있는 범위는 증가할 수 있다.According to FIG. 3B, the processor 150 can control the slider 144 to move in the direction of the arm 145. In this case, the arm 145 moves together in the direction of movement of the slider 144, and as a result, the length of the arm 145 protruding out of the rail 143 may be extended. That is, as the slider 144 moves forward, the range that the robot 100 can clean may increase based on the position of the robot 100.

또한, 슬라이더(144)의 전진에 따라 석션부(146)가 지면으로부터 이격된 거리는 감소할 수 있다. 이 경우 석션부(146)가 지면에 일시적으로 접합되거나 주행 중에 석션부(146)와 지면의 마찰이 야기될 수 있기 때문에, 프로세서(150)는 모터(141)를 통해 와이어(147)를 제어하여 석션부(146)가 지면과 멀어지도록 석션부(146)의 위치를 조정할 수 있다.Additionally, as the slider 144 moves forward, the distance between the suction unit 146 and the ground may decrease. In this case, because the suction unit 146 may be temporarily bonded to the ground or friction between the suction unit 146 and the ground may occur during driving, the processor 150 controls the wire 147 through the motor 141 to The position of the suction unit 146 can be adjusted so that the suction unit 146 is away from the ground.

도 4는 본 개시의 일 실시 예에 따른 석션부의 동작을 설명하기 위한 도면이다.Figure 4 is a diagram for explaining the operation of the suction unit according to an embodiment of the present disclosure.

도 4에 따르면, 모터(141)에 의한 와이어(147)의 와인딩(winding)에 의하여 지면과 석션부(146) 사이의 각도가 조정될 수 있다. 예를 들어, 석션부(146)는 지면을 기준으로 제1 각도 이상 제2 각도 이하의 범위를 갖도록 구동될 수 있다. 석션부(146)는 모터(141)에 의한 와이어(147)의 와인딩에 따라 지면을 기준으로 슬로프가 기울어진 각도보다 더 작은 각도(이하, 제1 각도)를 유지할 수도 있고, 슬로프가 기울어진 각도보다 더 작은 각도(이하, 제2 각도)를 유지할 수도 있다. 석션부(146)가 지면과 제1 각도를 유지하는 경우에는 로봇(100)이 청소 대상 영역과 인접한 오브젝트를 이동시키는 동작을 수행할 수 있으며, 석션부(146)가 지면과 제2 각도를 유지하는 경우에는 로봇(100)이 통상적인 청소 서비스를 제공할 수 있다. According to FIG. 4, the angle between the ground and the suction unit 146 can be adjusted by winding the wire 147 by the motor 141. For example, the suction unit 146 may be driven to have a range of a first angle or more and a second angle or less with respect to the ground. The suction unit 146 may maintain an angle (hereinafter, the first angle) smaller than the angle at which the slope is inclined relative to the ground according to the winding of the wire 147 by the motor 141, and the angle at which the slope is inclined A smaller angle (hereinafter referred to as the second angle) may be maintained. When the suction unit 146 maintains a first angle with the ground, the robot 100 can perform an operation to move an object adjacent to the cleaning target area, and the suction unit 146 maintains a second angle with the ground. In this case, the robot 100 can provide normal cleaning services.

로봇(100)이 통상적인 청소 서비스를 제공하는 과정에서 석션부(146)는 슬로프의 경사 방향보다 아래로 꺾인 상태(401)를 유지할 수 있다.In the process of the robot 100 providing a normal cleaning service, the suction unit 146 may maintain a state 401 bent downward from the incline direction of the slope.

일 예에 따르면, 프로세서(150)는 청소 대상 영역의 타입 정보에 기초하여 청소 대상 영역에 인접한 오브젝트를 이동시킬 필요가 있는지 식별할 수 있다. 오브젝트를 이동시킬 필요가 있는 것으로 식별되면, 프로세서(150)는 석션부(146)의 일측에 결합된 제1 와이어를 제1 방향으로 와인딩하여 석션부(146)가 지면과 제1 각도를 유지하도록 모터(141)를 제어할 수 있다. 이 경우 석션부(146)는 슬로프의 경사 방향보다 위로 꺾인 상태(402)를 유지할 수 있다.According to one example, the processor 150 may identify whether an object adjacent to the cleaning target area needs to be moved based on type information of the cleaning target area. When it is identified that the object needs to be moved, the processor 150 winds the first wire coupled to one side of the suction unit 146 in a first direction so that the suction unit 146 maintains a first angle with the ground. The motor 141 can be controlled. In this case, the suction unit 146 may maintain a state 402 bent upward from the slope direction of the slope.

또한, 프로세서(150)는 청소 대상 영역에 인접한 오브젝트가 이동 가능한 오브젝트로 식별되면, 석션부(146)가 오브젝트에 접촉되도록 제1 와이어를 제1 방향으로 와인딩 하도록 모터(141)를 제어할 수 있다. 프로세서(150)는 석션부(146)가 오브젝트에 접촉되면 플레이트(142)가 일 방향으로 회전되도록 모터(141)를 제어하여 오브젝트를 이동시킬 수 있다.In addition, when the object adjacent to the cleaning target area is identified as a movable object, the processor 150 may control the motor 141 to wind the first wire in the first direction so that the suction unit 146 contacts the object. . The processor 150 may move the object by controlling the motor 141 so that the plate 142 rotates in one direction when the suction unit 146 contacts the object.

또한, 프로세서(150)는 청소 대상 영역이 특정 타입이면 제1 와이어를 제1 방향으로 와인딩할 수 있다. 예를 들어, 프로세서(150)는 청소 대상 영역이 ‘좁은 틈’으로 식별되면 제1 와이어를 제1 방향으로 와인딩한 후 청소 대상 영역에 인접한 오브젝트를 이동시킬 수 있다. 만일 청소 대상 영역이 특정 타입 외의 타입이면, 프로세서(150)는 제2 와이어를 제1 방향으로 와인딩하여 통상적인 청소 서비스를 제공할 수 있다.Additionally, the processor 150 may wind the first wire in the first direction if the area to be cleaned is of a specific type. For example, if the area to be cleaned is identified as a ‘narrow gap,’ the processor 150 may wind the first wire in the first direction and then move an object adjacent to the area to be cleaned. If the area to be cleaned is of a type other than a specific type, the processor 150 may provide a normal cleaning service by winding the second wire in the first direction.

도 5는 본 개시의 일 실시 예에 따른 신경망 모델에 대해 설명하기 위한 도면이다.Figure 5 is a diagram for explaining a neural network model according to an embodiment of the present disclosure.

본 개시에 따른 청소 대상 영역에 대한 타입 정보 획득과 관련된 기능은 프로세서(150)와 메모리(110)를 통해 동작된다. 프로세서(150)는 하나 또는 복수의 프로세서로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공지능 전용 프로세서일 수 있다. 하나 또는 복수의 프로세서는, 메모리(110)에 저장된 신경망 모델에 따라 입력 데이터를 처리할 수 있으며, 하나 또는 복수의 프로세서가 인공지능 전용 프로세서인 경우, 인공지능 전용 프로세서는 특정 신경망 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다.The function related to obtaining type information about the area to be cleaned according to the present disclosure is operated through the processor 150 and memory 110. The processor 150 may be comprised of one or multiple processors. At this time, one or more processors may be a general-purpose processor such as a CPU, AP, or DSP (Digital Signal Processor), a graphics-specific processor such as a GPU or VPU (Vision Processing Unit), or an artificial intelligence-specific processor such as an NPU. One or more processors may process input data according to the neural network model stored in the memory 110. If one or more processors are artificial intelligence-only processors, the artificial intelligence-only processor is specialized for processing a specific neural network model. It can be designed as a hardware structure.

메모리(110)에 저장된 신경망 모델(500)은 학습을 통해 만들어진 것을 특징으로 한다. 여기서, 학습을 통해 만들어진다는 것은, 기본 신경망 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 신경망 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 다양한 실시 예가 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어 질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.The neural network model 500 stored in the memory 110 is characterized by being created through learning. Here, being created through learning means that the basic neural network model is learned using a large number of learning data by a learning algorithm, thereby creating a predefined operation rule or neural network model set to perform the desired characteristics (or purpose). do. Such learning may be performed on the device itself on which various embodiments according to the present disclosure are performed, or may be performed through a separate server and/or system. Examples of learning algorithms include supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but are not limited to the examples described above.

신경망 모델(500)은, 복수의 신경망 레이어들로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 신경망 모델의 학습 결과에 의해 최적화될 수 있다. 예를 들어, 학습 과정 동안 신경망 모델에서 획득한 로스(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 갱신될 수 있다. 인공 신경망은 심층 신경망(DNN:Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등이 있으나, 전술한 예에 한정되지 않는다.The neural network model 500 may be composed of a plurality of neural network layers. Each of the plurality of neural network layers has a plurality of weight values, and neural network calculation is performed through calculation between the calculation result of the previous layer and the plurality of weights. The plurality of weights possessed by the plurality of neural network layers can be optimized based on the learning results of the neural network model. For example, a plurality of weights may be updated so that loss or cost values obtained from the neural network model are reduced or minimized during the learning process. Artificial neural networks may include deep neural networks (DNN), for example, Convolutional Neural Network (CNN), Deep Neural Network (DNN), Recurrent Neural Network (RNN), Restricted Boltzmann Machine (RBM), Deep Belief Network (DBN), Bidirectional Recurrent Deep Neural Network (BRDNN), or Deep Q-Networks, etc., but are not limited to the examples described above.

본 개시의 일 실시 예에 따르면, 신경망 모델(500)은 카메라(120)를 통해 획득된 이미지(511) 및 거리 센서(130)를 통해 획득된 거리 데이터(512)가 입력되면 이미지에 포함된 세그먼트(521) 및 세그먼트의 타입(522)을 출력하도록 학습된 모델일 수 있다. 여기서, 세그먼트의 타입(522)은 바닥, 벽, 슬로프 또는 장애물과 같이 이미지(511)에 포함된 오브젝트에 대한 정보일 수도 있고, 노멀(Normal), 얕은 틈, 코너, 깊은 틈, 좁은 틈 또는 단차 영역과 같이 이미지(511)에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보일 수도 있다.According to an embodiment of the present disclosure, the neural network model 500 generates a segment included in the image when the image 511 acquired through the camera 120 and the distance data 512 acquired through the distance sensor 130 are input. It may be a model learned to output (521) and type of segment (522). Here, the type of segment 522 may be information about an object included in the image 511, such as a floor, wall, slope, or obstacle, and may be normal, shallow gap, corner, deep gap, narrow gap, or step. It may be type information about at least one cleaning target area included in the image 511, such as an area.

도 6a 내지 도 6d는 본 개시의 일 실시 예에 따른 다양한 청소 시나리오에 대해 설명하기 위한 도면이다.FIGS. 6A to 6D are diagrams for explaining various cleaning scenarios according to an embodiment of the present disclosure.

도 6a에 따르면, 로봇(100)은 청소 대상 영역의 타입이 ‘얕은 틈’인 것으로 식별하고, 얕은 틈(610)에 대응되는 청소 시나리오에 기초하여 청소를 수행할 수 있다. 예를 들어, 로봇(100)은 석션부(146)를 얕은 틈(610) 상에 위치시킨 상태에서 얕은 틈(610)을 따라 주행하며 청소를 수행할 수 있다.According to FIG. 6A, the robot 100 may identify the type of area to be cleaned as a ‘shallow gap’ and perform cleaning based on a cleaning scenario corresponding to the shallow gap 610. For example, the robot 100 may perform cleaning by traveling along the shallow gap 610 with the suction unit 146 positioned on the shallow gap 610.

도 6b에 따르면, 로봇(100)은 청소 대상 영역의 타입이 ‘코너’인 것으로 식별하고, 코너(620)에 대응되는 청소 시나리오에 기초하여 청소를 수행할 수 있다. 예를 들어, 로봇(100)의 석션부(146)가 코너(620)를 구성하는 오브젝트와 근접한 상태를 유지하면서 플레이트(142)를 회전시켜 청소를 수행할 수 있다. 이 과정에서, 프로세서(150)는 로봇(100)의 위치를 기준으로 로봇(100)이 청소할 수 있는 범위를 가변적으로 조절하기 위해 모터(141)를 통해 슬라이더(144)를 왕복운동 시킬 수 있다.According to FIG. 6B, the robot 100 identifies the type of area to be cleaned as 'corner' and performs cleaning based on the cleaning scenario corresponding to the corner 620. For example, cleaning can be performed by rotating the plate 142 while maintaining the suction unit 146 of the robot 100 close to the object constituting the corner 620. In this process, the processor 150 may reciprocate the slider 144 through the motor 141 to variably control the range that the robot 100 can clean based on the position of the robot 100.

도 6c에 따르면, 로봇(100)은 청소 대상 영역의 타입이 ‘깊은 틈’인 것으로 식별하고, 깊은 틈(630)에 대응되는 청소 시나리오에 기초하여 청소를 수행할 수 있다. 예를 들어, 로봇(100)은 플레이트(142)가 제1 방향 또는 제2 방향으로 교번적으로 회전하도록 모터(141)를 제어할 수 있다. 플레이트(142)의 교번적인 회전 동작과 동시에 로봇(100) 깊은 틈(630)을 따라 주행하는 경우, 이를 통해 석션부(146)가 깊은 틈(630) 내부로 진입한 정도가 지속적으로 변화하면서 청소가 수행되기 때문에 짧은 시간 내에 보다 넓은 범위에 대한 청소가 수행될 수 있다.According to FIG. 6C, the robot 100 identifies the type of area to be cleaned as ‘deep crevice’ and performs cleaning based on the cleaning scenario corresponding to the deep crevice 630. For example, the robot 100 may control the motor 141 so that the plate 142 alternately rotates in the first direction or the second direction. When the robot 100 travels along the deep gap 630 at the same time as the alternating rotation motion of the plate 142, the degree to which the suction part 146 enters the deep gap 630 continuously changes and cleans. Because cleaning is performed, cleaning of a wider area can be performed in a short period of time.

도 6d에 따르면, 로봇(100)은 청소 대상 영역의 타입이 ‘좁은 틈’인 것으로 식별하고, 좁은 틈(640)에 대응되는 청소 시나리오에 기초하여 청소를 수행할 수 있다. 예를 들어, 로봇(100)은 좁은 틈이 시작되는 지점과 끝나는 지점 사이의 영역을 청소하기 위해 슬라이더(144)를 왕복운동 시킬 수 있다. 이를 통해 암(145)이 로봇(100)의 본체를 기준으로 돌출되거나 회수되는 동작이 연속적으로 일어날 수 있으므로, 좁은 틈(640)에 대한 효율적인 청소가 가능해진다.According to FIG. 6D, the robot 100 identifies the type of area to be cleaned as ‘narrow gap’ and performs cleaning based on the cleaning scenario corresponding to the narrow gap 640. For example, the robot 100 may reciprocate the slider 144 to clean the area between the start and end points of the narrow gap. Through this, the arm 145 can continuously protrude or recover from the main body of the robot 100, thereby enabling efficient cleaning of the narrow gap 640.

도 7a 및 도 7b는 본 개시의 일 실시 예에 따른 오브젝트 이동 가부에 따른 로봇의 동작을 설명하기 위한 도면이다.FIGS. 7A and 7B are diagrams for explaining the operation of a robot depending on whether an object can be moved according to an embodiment of the present disclosure.

도 7a에 따르면, 로봇(100)은 로봇(100)의 스펙을 기초로 이동 가능한 오브젝트(710)가 인접한 청소 대상 영역을 청소할 수 있다. 청소 과정에서 로봇(100)은 오브젝트(710)가 이동 가능한 오브젝트인 것인지 여부를 식별할 수 있다. 예를 들어, 로봇(100)은 이미지 및 거리 데이터를 신경망 모델에 입력하여 출력된 결과에 기초하여 오브젝트(710)가 이동 가능한 오브젝트인 것으로 식별하고, 석션부(146)가 오브젝트(710)에 접촉되도록 모터(141)를 통해 와이어(147)를 제어할 수 있다.According to FIG. 7A, the robot 100 can clean a cleaning target area where the movable object 710 is adjacent based on the specifications of the robot 100. During the cleaning process, the robot 100 may identify whether the object 710 is a movable object. For example, the robot 100 inputs image and distance data into a neural network model and identifies the object 710 as a movable object based on the output results, and the suction unit 146 contacts the object 710. If possible, the wire 147 can be controlled through the motor 141.

석션부(146)가 오브젝트에 접촉되면, 프로세서(150)는 플레이트(142)가 일 방향으로 회전하도록 모터(141)를 제어하여 오브젝트(710)를 이동시킬 수 있다. 이후 프로세서(150)는 오브젝트(710)의 기존 위치와 인접한 영역을 청소하도록 구동부(140)를 제어할 수 있다.When the suction unit 146 contacts an object, the processor 150 may control the motor 141 to rotate the plate 142 in one direction to move the object 710. Thereafter, the processor 150 may control the driving unit 140 to clean the area adjacent to the existing location of the object 710.

도 7b에 따르면, 로봇(100)은 사용자 인터페이스(160)를 더 포함할 수 있다. 로봇(100)은 로봇(100)의 스펙을 기초로 이동 불가능한 오브젝트(720)가 인접한 청소 대상 영역을 청소하는 과정에서 이미지 및 거리 데이터를 신경망 모델에 입력하여 출력된 결과에 기초하여 오브젝트(720)가 이동 불가능한 오브젝트인 것으로 식별하고, 오브젝트(720)의 이동을 요청하는 가이드 UI(700)를 사용자 인터페이스(160)를 통해 제공할 수 있다.According to FIG. 7B, the robot 100 may further include a user interface 160. The robot 100 inputs image and distance data into a neural network model in the process of cleaning a cleaning target area adjacent to an immovable object 720 based on the specifications of the robot 100, and cleans the object 720 based on the output results. is identified as an object that cannot be moved, and a guide UI 700 requesting movement of the object 720 may be provided through the user interface 160 .

일 예에 따른 가이드 UI(700)는 사용자로 하여금 오브젝트(720)를 이동시키도록 주위를 환기하는 텍스트, 확인 버튼(701) 및 무시 버튼(702) 등의 정보를 포함할 수 있다. 여기서, 사용자가 확인 버튼(701)을 선택하는 경우 로봇(100)은 구동을 중지하고 오브젝트(720)가 이동될 때까지 대기할 수 있다. 반대로, 사용자가 무시 버튼(702)을 선택하는 경우 로봇(100)은 오브젝트(720)의 이동과 무관하게 다음 청소 대상 영역을 청소하기 위해 현 위치를 벗어날 수 있다.The guide UI 700 according to an example may include information such as text that alerts the user to move the object 720, a confirmation button 701, and an ignore button 702. Here, when the user selects the confirm button 701, the robot 100 may stop driving and wait until the object 720 is moved. Conversely, when the user selects the ignore button 702, the robot 100 may leave the current location to clean the next cleaning target area regardless of the movement of the object 720.

도 8은 본 개시의 일 실시 예에 따른 로봇의 단차 영역에 대한 청소 동작을 설명하기 위한 도면이다.Figure 8 is a diagram for explaining a cleaning operation of a robot in a step area according to an embodiment of the present disclosure.

도 8에 따르면, 로봇(100)이 위치한 공간 내에는 지면과 임계 값 이상의 단차를 갖는 영역(이하, 단차 영역)을 형성하는 오브젝트(800)가 배치되어 있을 수 있다. 일 예에 따른 프로세서(150)는 청소 대상 영역인 단차 영역이 지면과 임계 값 이상의 단차를 가지는 것으로 식별되면 슬라이더(144)를 후방으로 이동시켜 단차 영역으로 석션부(146)의 위치를 제어할 수 있다.According to FIG. 8, in the space where the robot 100 is located, an object 800 forming an area having a level difference greater than a threshold value from the ground (hereinafter referred to as a level difference area) may be disposed. The processor 150 according to an example may control the position of the suction unit 146 to the step area by moving the slider 144 rearward when the step area, which is the cleaning target area, is identified as having a step difference greater than a threshold value from the ground. there is.

이 과정에서 암(145)이 레일(143)에 포함된 슬로프를 따라 로봇(100)의 본체 방향으로 회수되므로 석션부(146)가 지면과 이격된 거리는 증가하며, 그에 따라 석션부(146)가 단차 영역과 적정한 거리로 이격된 상태가 유지될 수 있다.In this process, the arm 145 is recovered in the direction of the main body of the robot 100 along the slope included in the rail 143, so the distance between the suction part 146 and the ground increases, and accordingly, the suction part 146 It can be maintained at an appropriate distance from the step area.

한편, 로봇(100)은 상술한 방식 이외에도 와이어(147)를 와인딩하여 석션부(146)가 단차 영역과 적정한 거리로 이격된 상태가 유지되도록 모터(141)를 제어할 수 있음은 물론이다.Meanwhile, of course, in addition to the above-described method, the robot 100 can control the motor 141 by winding the wire 147 so that the suction part 146 is maintained at an appropriate distance from the step area.

도 9는 본 개시의 일 실시 예에 따른 로봇의 구성을 구체적으로 설명하기 위한 블록도이다.Figure 9 is a block diagram for specifically explaining the configuration of a robot according to an embodiment of the present disclosure.

도 9에 따르면, 로봇(100)은 메모리(110), 카메라(120), 거리 센서(130), 구동부(140), 프로세서(150), 사용자 인터페이스(160) 및 통신 인터페이스(170)를 포함할 수 있다. 도 9에 도시된 구성 중 도 2에 도시된 구성과 중복되는 구성에 대해서는 자세한 설명을 생략하도록 한다.According to FIG. 9, the robot 100 may include a memory 110, a camera 120, a distance sensor 130, a driver 140, a processor 150, a user interface 160, and a communication interface 170. You can. Among the configurations shown in FIG. 9, detailed descriptions of configurations that overlap with those shown in FIG. 2 will be omitted.

카메라(120)는 RGB 카메라(121)와 적외선 카메라(122)를 포함하는 카메라 모듈의 형태로 구현될 수 있다. 일 예에 따르면, 카메라(120)는 가시광 센서를 포함하는 RGB 카메라(121)와 적외선 센서를 포함하는 적외선 카메라(122)를 포함할 수 있으며, 이 경우 프로세서(150)는 RGB 카메라(121)를 통해 획득된 가시광 이미지, 적외선 카메라(122)를 통해 획득된 적외선 이미지 및 거리 데이터를 신경망 모델에 입력하여 청소 대상 영역에 대한 타입 정보를 획득할 수 있다.The camera 120 may be implemented in the form of a camera module including an RGB camera 121 and an infrared camera 122. According to one example, the camera 120 may include an RGB camera 121 including a visible light sensor and an infrared camera 122 including an infrared sensor. In this case, the processor 150 uses the RGB camera 121. The visible light image obtained through the infrared camera 122, the infrared image obtained through the infrared camera 122, and the distance data can be input into the neural network model to obtain type information about the area to be cleaned.

거리 센서(130)는 LIDAR(131), RADAR(132) 및 SONAR(133)를 포함할 수 있다. The distance sensor 130 may include LIDAR 131, RADAR 132, and SONAR 133.

LIDAR(131)는 고출력 레이저 펄스를 발사해, 레이저가 오브젝트에 도달한 후 다시 반사되어 돌아오는 시간을 측정할 수 있다(Tof, Time of Flight 방식). 이를 통해 LIDAR(131)는 오브젝트에 이르는 거리 데이터를 획득할 수 있다. 또한, LIDAR는 오브젝트 표면 영역에 대응되는 포인트 클라우드에 기초하여 오브젝트의 형태에 관한 데이터 역시 획득할 수 있다. 프로세서(150)는 로봇(100)이 청소를 수행하는 동안 LIDAR(131)를 통해 획득된 거리 데이터에 기초하여 석션부(146)가 오브젝트와 충돌하지 않는 범위 내에서 청소 범위가 조정되도록 모터(141)를 통해 슬라이드(144)를 제어할 수 있다.LIDAR (131) can fire a high-output laser pulse and measure the time it takes for the laser to reach the object and then reflect back (Tof, Time of Flight method). Through this, LIDAR 131 can acquire distance data to the object. Additionally, LIDAR can also obtain data about the shape of an object based on a point cloud corresponding to the object surface area. The processor 150 controls the motor 141 so that the cleaning range is adjusted within the range where the suction unit 146 does not collide with the object based on the distance data acquired through the LIDAR 131 while the robot 100 performs cleaning. ) can be used to control the slide 144.

RADAR(132)는 LIDAR(131)와 같은 방식(ToF)으로 오브젝트에 이르는 거리 데이터를 획득할 수 있다. 다만, RADAR(132)는 LIDAR(131)와 달리 전파를 이용하며, 전파가 오브젝트에 반사되어 돌아오는 시간을 측정하여 오브젝트까지의 거리 데이터를 획득할 수 있다.RADAR 132 can acquire distance data to an object in the same way as LIDAR 131 (ToF). However, unlike the LIDAR 131, the RADAR 132 uses radio waves and can obtain distance data to the object by measuring the time the radio waves take to reflect and return to the object.

SONAR(133)는 음파를 활용해 오브젝트까지의 거리 데이터를 획득할 수 있는 장비이다. 일 예에 따른 SONAR(133)는 원추 형상의 화각을 가질 수 있으며, 음파가 오브젝트에 반사되어 돌아오는 시간을 측정하여 오브젝트까지의 거리 데이터를 획득할 수 있다.SONAR (133) is equipment that can acquire distance data to an object using sound waves. SONAR 133 according to one example may have a cone-shaped angle of view, and may obtain distance data to the object by measuring the time it takes for a sound wave to reflect and return to an object.

프로세서(150)는 카메라(120)를 통해 획득된 이미지 및 LIDAR(131), RADAR(132) 및 SONAR(133)를 통해 각각 획득된 복수의 거리 데이터들에 기초하여 청소 대상 영역에 대한 타입 정보를 획득할 수 있다.The processor 150 provides type information about the area to be cleaned based on the image acquired through the camera 120 and a plurality of distance data respectively acquired through LIDAR 131, RADAR 132, and SONAR 133. It can be obtained.

구동부(140)는 모터(141), 플레이트(142), 레일(143), 슬라이더(144), 암(145), 석션부(146) 및 와이어(147)를 포함할 수 있다. 구동부(140)에 포함된 각 구성에 대해서는 전술하였으므로 여기에서는 자세한 설명을 생략하도록 한다.The driving unit 140 may include a motor 141, a plate 142, a rail 143, a slider 144, an arm 145, a suction unit 146, and a wire 147. Since each component included in the driving unit 140 has been described above, detailed description will be omitted here.

사용자 인터페이스(160)는 로봇(100)이 사용자와 인터렉션(Interaction)을 수행하는 데 관여하는 구성이다. 예를 들어 사용자 인터페이스(160)는 디스플레이, 터치 스크린, 버튼, 조그(Jog) 다이얼, 스위치, 근접 센서, 다양한 타입의 생체 센서, 마이크 또는 스피커 중 적어도 하나를 포함할 수 있으나 이에 한정되는 것은 아니다. 프로세서(150)는 청소 대상 영역에 인접한 오브젝트의 이동이 불가능한 경우에는 사용자 인터페이스(160)를 통해 오브젝트의 이동을 요청하는 가이드 UI를 제공할 수 있으며, 카메라(120)를 통해 획득된 이미지에서 청소 불가능한 영역이 식별되면 사용자 인터페이스(160)를 통해 청소 불가능한 영역을 가이드하는 UI를 제공할 수 있다.The user interface 160 is a component that helps the robot 100 interact with a user. For example, the user interface 160 may include, but is not limited to, at least one of a display, a touch screen, a button, a jog dial, a switch, a proximity sensor, various types of biometric sensors, a microphone, or a speaker. If it is impossible to move an object adjacent to the cleaning target area, the processor 150 may provide a guide UI requesting movement of the object through the user interface 160, and may provide a guide UI requesting movement of the object in the image acquired through the camera 120. Once the area is identified, a UI that guides the area that cannot be cleaned can be provided through the user interface 160.

통신 인터페이스(170)는 다양한 타입의 데이터를 입력 및 출력할 수 있다. 예를 들어, 통신 인터페이스(170)는 AP 기반의 Wi-Fi(와이파이, Wireless LAN 네트워크), 블루투스(Bluetooth), 지그비(Zigbee), 유/무선 LAN(Local Area Network), WAN(Wide Area Network), 이더넷(Ethernet), IEEE 1394, HDMI(High-Definition Multimedia Interface), USB(Universal Serial Bus), MHL(Mobile High-Definition Link), AES/EBU(Audio Engineering Society/ European Broadcasting Union), 옵티컬(Optical), 코액셜(Coaxial) 등과 같은 통신 방식을 통해 외부 장치(예를 들어, 소스 장치), 외부 저장 매체(예를 들어, USB 메모리), 외부 서버(예를 들어 웹 하드)와 다양한 타입의 데이터를 송수신할 수 있다.The communication interface 170 can input and output various types of data. For example, the communication interface 170 is AP-based Wi-Fi (Wireless LAN network), Bluetooth, Zigbee, wired/wireless LAN (Local Area Network), and WAN (Wide Area Network). , Ethernet, IEEE 1394, HDMI (High-Definition Multimedia Interface), USB (Universal Serial Bus), MHL (Mobile High-Definition Link), AES/EBU (Audio Engineering Society/ European Broadcasting Union), Optical ), coaxial, etc. to external devices (e.g. source devices), external storage media (e.g. USB memory), external servers (e.g. web hard drives) and various types of data. can be sent and received.

프로세서(150)는 사용자 인터페이스(160)를 통해 각종 UI를 제공할 수도 있으나, 통신 인터페이스(160)를 통해 UI 정보를 사용자 단말로 전송함으로써 각종 UI를 제공할 수도 있다. 또한, 본 개시에 따른 신경망 모델을 활용한 청소 대상 영역의 타입 정보 획득 동작이 외부 장치(예: 서버 등)를 통해 이루어지는 경우, 프로세서(150)는 카메라(120)를 통해 획득된 이미지 및 거리 센서(130)를 통해 획득된 거리 데이터를 외부 장치로 전송하도록 통신 인터페이스(170)를 제어하고, 통신 인터페이스(170)를 통해 외부 장치로부터 청소 대상 영역의 타입 정보를 수신할 수 있다.The processor 150 may provide various UIs through the user interface 160, but may also provide various UIs by transmitting UI information to the user terminal through the communication interface 160. In addition, when the operation of acquiring type information of the area to be cleaned using the neural network model according to the present disclosure is performed through an external device (e.g., a server, etc.), the processor 150 may use the image acquired through the camera 120 and the distance sensor. The communication interface 170 may be controlled to transmit the distance data obtained through 130 to an external device, and information on the type of area to be cleaned may be received from the external device through the communication interface 170.

도 10은 본 개시의 일 실시 예에 따른 제어 방법을 설명하기 위한 흐름도이다.Figure 10 is a flowchart for explaining a control method according to an embodiment of the present disclosure.

본 개시의 일 실시 예에 따른 제어 방법은 카메라를 통해 획득된 이미지 및 거리 센서를 통해 획득된 거리 데이터를 신경망 모델에 입력하여 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득한다(S1010).The control method according to an embodiment of the present disclosure inputs an image acquired through a camera and distance data obtained through a distance sensor into a neural network model to obtain type information about at least one cleaning target area included in the image ( S1010).

이어서, 획득된 타입 정보에 대응되는 청소 시나리오를 획득한다(S1020).Next, a cleaning scenario corresponding to the obtained type information is acquired (S1020).

마지막으로, 획득된 청소 시나리오에 기초하여 구동부를 제어하여 청소를 수행할 수 있다(S1030).Finally, cleaning can be performed by controlling the driving unit based on the obtained cleaning scenario (S1030).

여기서, 구동부는 모터, 회전 가능하도록 설계된 플레이트, 플레이트 상에 배치되며 지면과 일정한 각도로 기울어진 슬로프(slope)를 구비한 레일, 레일 상에서 왕복 가능하도록 배치된 슬라이더, 일 측이 슬라이더에 결합되며 슬라이더가 레일 상에서 왕복함에 따라 지면과 일정한 각도를 유지하며 이동하는 암(Arm) 및 암의 타 측에 결합된 석션부를 포함할 수 있다.Here, the driving part includes a motor, a plate designed to rotate, a rail disposed on the plate and having a slope inclined at a certain angle with the ground, a slider arranged to be able to reciprocate on the rail, and one side is coupled to the slider and the slider It may include an arm that moves while maintaining a constant angle with the ground as it moves back and forth on the rail, and a suction portion coupled to the other side of the arm.

여기서, 신경망 모델은 이미지 및 거리 데이터가 입력되면 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 출력하도록 학습되거나, 이미지에 포함된 오브젝트에 대한 정보를 출력하도록 학습되며, 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득하는 단계(S1010)에서는 신경망 모델로부터 이미지에 포함된 오브젝트에 대한 정보가 획득되면 획득된 오브젝트에 대한 정보에 기초하여 이미지에 포함된 청소 대상 영역에 대한 타입 정보를 획득할 수 있다.Here, when image and distance data are input, the neural network model is trained to output type information about at least one cleaning target area included in the image, or is trained to output information about objects included in the image, and is trained to output at least one cleaning target area. In the step of acquiring type information about the target area (S1010), when information about the object included in the image is obtained from the neural network model, type information about the cleaning target area included in the image is acquired based on the information about the acquired object. can do.

또한, 구동부는 석션부의 일측에 결합된 제1 와이어 및 석션부의 일측에서 제1 와이어와 일정 거리 이격되어 결합된 제2 와이어를 더 포함하며, 이 경우 제어 방법은 청소 대상 영역의 타입에 따라 석션부가 지면과 제1 각도를 유지하도록 제1 와이어를 제1 방향으로 와인딩(winding)하는 단계 및 청소 대상 영역의 타입에 따라 석션부가 지면과 제2 각도를 유지하도록 제2 와이어를 제2 방향으로 와인딩하는 단계를 더 포함할 수 있다.In addition, the driving unit further includes a first wire coupled to one side of the suction unit and a second wire coupled to one side of the suction unit at a predetermined distance from the first wire. In this case, the control method may be used to control the suction unit according to the type of the area to be cleaned. Winding the first wire in a first direction to maintain a first angle with the ground and winding the second wire in a second direction so that the suction portion maintains a second angle with the ground depending on the type of area to be cleaned. Additional steps may be included.

여기서, 제1 와이어를 제1 방향으로 와인딩하는 단계는 청소 대상 영역에 인접한 오브젝트가 이동 가능한 오브젝트로 식별되면 석션부가 오브젝트에 접촉되도록 제1 와이어를 제1 방향으로 와인딩하며, 이 경우 제어 방법은 석션부가 오브젝트에 접촉되면 플레이트를 일 방향으로 회전시키는 단계를 더 포함할 수 있다.Here, the step of winding the first wire in the first direction includes winding the first wire in the first direction so that the suction unit contacts the object when the object adjacent to the cleaning target area is identified as a movable object. In this case, the control method is suction. The method may further include rotating the plate in one direction when it comes into contact with an additional object.

또한, 오브젝트가 이동 불가능한 오브젝트인 것으로 식별되면 오브젝트의 이동을 요청하는 가이드 UI(User Interface)를 제공하는 단계를 더 포함할 수 있다.Additionally, if the object is identified as an immovable object, the step of providing a guide UI (User Interface) to request movement of the object may be further included.

또한, 제1 와이어를 제1 방향으로 와인딩하는 단계는 청소 대상 영역이 특정 타입이면 제1 와이어를 제1 방향으로 와인딩하고, 제2 와이어를 제2 방향으로 와인딩하는 단계는 청소 대상 영역이 특정 타입 외의 타입이면 제2 와이어를 제2 방향으로 와인딩할 수 있다.In addition, the step of winding the first wire in the first direction is winding the first wire in the first direction when the area to be cleaned is a specific type, and the step of winding the second wire in the second direction is to do so when the area to be cleaned is a specific type. For other types, the second wire can be wound in the second direction.

또한, 청소를 수행하는 단계(S1030)에서는 청소 대상 영역과 지면의 단차가 임계 값 이상인 경우 슬라이더를 후방으로 이동시켜 청소 대상 영역으로 석션부를 위치시킬 수 있다.Additionally, in the cleaning step (S1030), if the level difference between the cleaning target area and the ground is greater than a critical value, the slider can be moved backward to position the suction unit in the cleaning target area.

또한, 청소를 수행하는 단계(S1030)에서는 청소를 수행하는 동안 라이다 센서를 통해 획득된 거리 데이터에 기초하여 슬라이더를 이동시킬 수 있다.Additionally, in the cleaning step (S1030), the slider can be moved based on distance data acquired through the LiDAR sensor while cleaning.

또한, 이미지에서 청소 불가능한 영역이 식별되면 청소 불가능한 영역을 가이드하는 UI를 제공하는 단계를 더 포함할 수 있다.Additionally, when an area that cannot be cleaned is identified in the image, a step of providing a UI to guide the area that cannot be cleaned may be further included.

또한, 상술한 본 개시의 다양한 실시 예들에 따른 방법들은 기존 로봇에 대한 소프트웨어 업그레이드, 또는 하드웨어 업그레이드 만으로도 구현될 수 있다. Additionally, the methods according to various embodiments of the present disclosure described above can be implemented only by upgrading software or hardware for an existing robot.

또한, 상술한 본 개시의 다양한 실시 예들은 로봇에 구비된 임베디드 서버 또는 적어도 하나의 외부 서버를 통해 수행되는 것도 가능하다.Additionally, the various embodiments of the present disclosure described above can also be performed through an embedded server provided in a robot or at least one external server.

한편, 이상에서 설명된 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 일부 경우에 있어 본 명세서에서 설명되는 실시 예들이 프로세서(150) 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 동작을 수행할 수 있다.Meanwhile, the various embodiments described above may be implemented in a recording medium that can be read by a computer or similar device using software, hardware, or a combination thereof. In some cases, embodiments described herein may be implemented by the processor 150 itself. According to software implementation, embodiments such as procedures and functions described in this specification may be implemented as separate software modules. Each of the software modules may perform one or more functions and operations described herein.

한편, 상술한 본 개시의 다양한 실시 예들에 따른 로봇(100)의 프로세싱 동작을 수행하기 위한 컴퓨터 명령어(computer instructions)는 비일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium)에 저장될 수 있다. 이러한 비일시적 컴퓨터 판독 가능 매체에 저장된 컴퓨터 명령어는 특정 기기의 프로세서에 의해 실행되었을 때 상술한 다양한 실시 예에 따른 로봇(100)에서의 처리 동작을 특정 기기가 수행하도록 한다. Meanwhile, computer instructions for performing processing operations of the robot 100 according to various embodiments of the present disclosure described above may be stored in a non-transitory computer-readable medium. . Computer instructions stored in such a non-transitory computer-readable medium, when executed by a processor of a specific device, cause the specific device to perform processing operations in the robot 100 according to the various embodiments described above.

비일시적 컴퓨터 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 비일시적 컴퓨터 판독 가능 매체의 구체적인 예로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 있을 수 있다.A non-transitory computer-readable medium refers to a medium that stores data semi-permanently and can be read by a device, rather than a medium that stores data for a short period of time, such as registers, caches, and memories. Specific examples of non-transitory computer-readable media may include CD, DVD, hard disk, Blu-ray disk, USB, memory card, ROM, etc.

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

100: 로봇 110: 메모리
120: 카메라 130: 거리 센서
140: 구동부 141: 모터
142: 플레이트 143: 레일
144: 슬라이더 145: 암
146: 석션부 147: 와이어
150: 프로세서
100: Robot 110: Memory
120: Camera 130: Distance sensor
140: driving unit 141: motor
142: plate 143: rail
144: Slider 145: Arm
146: Suction part 147: Wire
150: processor

Claims (18)

로봇에 있어서,
청소 대상 영역의 타입에 따른 청소 시나리오 및 신경망 모델이 저장된 메모리;
카메라;
거리 센서;
구동부; 및
상기 카메라를 통해 획득된 이미지 및 상기 거리 센서를 통해 획득된 거리 데이터를 상기 신경망 모델에 입력하여 상기 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득하고,
상기 획득된 타입 정보에 대응되는 청소 시나리오를 상기 메모리로부터 획득하고,
상기 획득된 청소 시나리오에 기초하여 상기 구동부를 제어하는 프로세서;를 포함하며,
상기 구동부는,
모터;
회전 가능하도록 설계된 플레이트;
상기 플레이트 상에 배치되며 지면과 일정한 각도로 기울어진 슬로프(slope)를 구비한 레일;
상기 레일 상에서 왕복 가능하도록 배치된 슬라이더;
일 측이 상기 슬라이더에 결합되며 상기 슬라이더가 상기 레일 상에서 왕복함에 따라 상기 지면과 일정한 각도를 유지하며 이동하는 암(Arm); 및
상기 암의 타 측에 결합된 석션부;를 포함하는, 로봇.
In robots,
A memory storing cleaning scenarios and neural network models according to the type of cleaning target area;
camera;
distance sensor;
driving part; and
Input the image acquired through the camera and the distance data obtained through the distance sensor into the neural network model to obtain type information about at least one cleaning target area included in the image,
Obtain a cleaning scenario corresponding to the acquired type information from the memory,
It includes a processor that controls the driving unit based on the obtained cleaning scenario,
The driving unit,
motor;
Plate designed to be rotatable;
a rail disposed on the plate and having a slope inclined at a certain angle with the ground;
a slider arranged to move back and forth on the rail;
An arm whose one side is coupled to the slider and moves while maintaining a constant angle with the ground as the slider reciprocates on the rail; and
A robot comprising a suction unit coupled to the other side of the arm.
제1항에 있어서,
상기 신경망 모델은,
이미지 및 거리 데이터가 입력되면, 상기 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 출력하도록 학습되거나,
상기 이미지에 포함된 오브젝트에 대한 정보를 출력하도록 학습되며,
상기 프로세서는,
상기 신경망 모델로부터 상기 이미지에 포함된 오브젝트에 대한 정보가 획득되면, 상기 획득된 오브젝트에 대한 정보에 기초하여 상기 이미지에 포함된 청소 대상 영역에 대한 타입 정보를 획득하는, 로봇.
According to paragraph 1,
The neural network model is,
When image and distance data are input, it is learned to output type information about at least one cleaning target area included in the image,
Learned to output information about objects included in the image,
The processor,
When information about the object included in the image is obtained from the neural network model, the robot acquires type information about the cleaning target area included in the image based on the obtained information about the object.
제1항에 있어서,
상기 구동부는,
상기 석션부의 일측에 결합된 제1 와이어; 및
상기 석션부의 상기 일측에서 상기 제1 와이어와 일정 거리 이격되어 결합된 제2 와이어;를 더 포함하며,
상기 프로세서는,
상기 청소 대상 영역의 타입에 따라 상기 석션부가 상기 지면과 제1 각도를 유지하도록 상기 제1 와이어를 제1 방향으로 와인딩(winding)하며,
상기 청소 대상 영역의 타입에 따라 상기 석션부가 상기 지면과 제2 각도를 유지하도록 상기 제2 와이어를 제2 방향으로 와인딩하는, 로봇.
According to paragraph 1,
The driving unit,
a first wire coupled to one side of the suction unit; and
It further includes a second wire coupled to the first wire at a predetermined distance apart from the first wire on one side of the suction unit,
The processor,
Winding the first wire in a first direction so that the suction unit maintains a first angle with the ground according to the type of the area to be cleaned,
A robot that winds the second wire in a second direction so that the suction unit maintains a second angle with the ground according to the type of the cleaning target area.
제3항에 있어서,
상기 프로세서는,
상기 청소 대상 영역에 인접한 오브젝트가 이동 가능한 오브젝트로 식별되면, 상기 석션부가 상기 오브젝트에 접촉되도록 상기 제1 와이어를 상기 제1 방향으로 와인딩하며,
상기 석션부가 상기 오브젝트에 접촉되면, 상기 플레이트가 일 방향으로 회전되도록 상기 모터를 제어하는, 로봇.
According to paragraph 3,
The processor,
When an object adjacent to the cleaning target area is identified as a movable object, winding the first wire in the first direction so that the suction unit contacts the object,
A robot that controls the motor so that the plate rotates in one direction when the suction unit contacts the object.
제3항에 있어서,
상기 프로세서는,
상기 오브젝트가 이동 불가능한 오브젝트인 것으로 식별되면, 상기 오브젝트의 이동을 요청하는 가이드 UI(User Interface)를 제공하는, 로봇.
According to paragraph 3,
The processor,
A robot that provides a guide UI (User Interface) to request movement of the object when the object is identified as an immovable object.
제3항에 있어서,
상기 프로세서는,
상기 청소 대상 영역이 특정 타입이면, 상기 제1 와이어를 상기 제1 방향으로 와인딩하고,
상기 청소 대상 영역이 상기 특정 타입 외의 타입이면, 상기 제2 와이어를 상기 제2 방향으로 와인딩하는, 로봇.
According to paragraph 3,
The processor,
If the area to be cleaned is a specific type, winding the first wire in the first direction,
If the area to be cleaned is of a type other than the specific type, the robot winds the second wire in the second direction.
제1항에 있어서,
상기 프로세서는,
상기 청소 대상 영역과 상기 지면의 단차가 임계 값 이상인 경우, 상기 슬라이더를 후방으로 이동시켜 상기 청소 대상 영역으로 상기 석션부의 위치를 제어하는, 로봇.
According to paragraph 1,
The processor,
A robot that moves the slider rearward to control the position of the suction unit to the cleaning target area when the level difference between the cleaning target area and the ground is greater than a threshold value.
제1항에 있어서,
상기 거리 센서는,
라이다(LIDAR) 센서;를 포함하며,
상기 프로세서는,
상기 청소를 수행하는 동안 상기 라이다 센서를 통해 획득된 거리 데이터에 기초하여 상기 슬라이더를 제어하는, 로봇.
According to paragraph 1,
The distance sensor is,
Includes a LIDAR sensor,
The processor,
A robot that controls the slider based on distance data acquired through the lidar sensor while performing the cleaning.
제1항에 있어서,
상기 프로세서는,
상기 이미지에서 청소 불가능한 영역이 식별되면, 청소 불가능한 영역을 가이드하는 UI를 제공하는, 로봇.
According to paragraph 1,
The processor,
When an area that cannot be cleaned is identified in the image, a robot provides a UI to guide the area that cannot be cleaned.
구동부를 포함하는 로봇의 제어 방법에 있어서,
카메라를 통해 획득된 이미지 및 거리 센서를 통해 획득된 거리 데이터를 신경망 모델에 입력하여 상기 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득하는 단계;
상기 획득된 타입 정보에 대응되는 청소 시나리오를 획득하는 단계; 및
상기 획득된 청소 시나리오에 기초하여 상기 구동부를 제어하여 청소를 수행하는 단계;를 포함하며,
상기 구동부는,
모터, 회전 가능하도록 설계된 플레이트, 상기 플레이트 상에 배치되며 지면과 일정한 각도로 기울어진 슬로프(slope)를 구비한 레일, 상기 레일 상에서 왕복 가능하도록 배치된 슬라이더, 일 측이 상기 슬라이더에 결합되며 상기 슬라이더가 상기 레일 상에서 왕복함에 따라 상기 지면과 일정한 각도를 유지하며 이동하는 암(Arm) 및 상기 암의 타 측에 결합된 석션부를 포함하는, 제어 방법.
In the control method of a robot including a driving unit,
Inputting an image acquired through a camera and distance data obtained through a distance sensor into a neural network model to obtain type information about at least one cleaning target area included in the image;
Obtaining a cleaning scenario corresponding to the obtained type information; and
A step of controlling the driving unit to perform cleaning based on the obtained cleaning scenario,
The driving unit,
A motor, a plate designed to be rotatable, a rail disposed on the plate and having a slope inclined at a certain angle with the ground, a slider disposed to be reciprocatable on the rail, one side of which is coupled to the slider and the slider A control method comprising an arm that moves while maintaining a constant angle with the ground as it reciprocates on the rail, and a suction portion coupled to the other side of the arm.
제10항에 있어서,
상기 신경망 모델은,
이미지 및 거리 데이터가 입력되면, 상기 이미지에 포함된 적어도 하나의 청소 대상 영역에 대한 타입 정보를 출력하도록 학습되거나,
상기 이미지에 포함된 오브젝트에 대한 정보를 출력하도록 학습되며,
상기 적어도 하나의 청소 대상 영역에 대한 타입 정보를 획득하는 단계는,
상기 신경망 모델로부터 상기 이미지에 포함된 오브젝트에 대한 정보가 획득되면, 상기 획득된 오브젝트에 대한 정보에 기초하여 상기 이미지에 포함된 청소 대상 영역에 대한 타입 정보를 획득하는, 제어 방법.
According to clause 10,
The neural network model is,
When image and distance data are input, it is learned to output type information about at least one cleaning target area included in the image,
Learned to output information about objects included in the image,
The step of obtaining type information about the at least one cleaning target area includes:
When information about the object included in the image is obtained from the neural network model, type information about the area to be cleaned included in the image is obtained based on the obtained information about the object.
제10항에 있어서,
상기 구동부는,
상기 석션부의 일측에 결합된 제1 와이어 및 상기 석션부의 상기 일측에서 상기 제1 와이어와 일정 거리 이격되어 결합된 제2 와이어를 더 포함하며,
상기 청소 대상 영역의 타입에 따라 상기 석션부가 상기 지면과 제1 각도를 유지하도록 상기 제1 와이어를 제1 방향으로 와인딩(winding)하는 단계; 및
상기 청소 대상 영역의 타입에 따라 상기 석션부가 상기 지면과 제2 각도를 유지하도록 상기 제2 와이어를 제2 방향으로 와인딩하는 단계;를 더 포함하는, 제어 방법.
According to clause 10,
The driving unit,
It further includes a first wire coupled to one side of the suction portion and a second wire coupled to the first wire at a predetermined distance from the one side of the suction portion,
Winding the first wire in a first direction so that the suction unit maintains a first angle with the ground according to the type of the area to be cleaned; and
The control method further comprising: winding the second wire in a second direction so that the suction unit maintains a second angle with the ground according to the type of the area to be cleaned.
제12항에 있어서,
상기 제1 와이어를 제1 방향으로 와인딩하는 단계는,
상기 청소 대상 영역에 인접한 오브젝트가 이동 가능한 오브젝트로 식별되면, 상기 석션부가 상기 오브젝트에 접촉되도록 상기 제1 와이어를 상기 제1 방향으로 와인딩하며,
상기 제어 방법은,
상기 석션부가 상기 오브젝트에 접촉되면, 상기 플레이트를 일 방향으로 회전시키는 단계;를 더 포함하는, 제어 방법.
According to clause 12,
The step of winding the first wire in the first direction,
When an object adjacent to the cleaning target area is identified as a movable object, winding the first wire in the first direction so that the suction unit contacts the object,
The control method is,
A control method further comprising: rotating the plate in one direction when the suction unit contacts the object.
제12항에 있어서,
상기 오브젝트가 이동 불가능한 오브젝트인 것으로 식별되면, 상기 오브젝트의 이동을 요청하는 가이드 UI(User Interface)를 제공하는 단계;를 더 포함하는, 제어 방법.
According to clause 12,
If the object is identified as an immovable object, providing a guide UI (User Interface) requesting movement of the object.
제12항에 있어서,
상기 제1 와이어를 제1 방향으로 와인딩하는 단계는,
상기 청소 대상 영역이 특정 타입이면, 상기 제1 와이어를 상기 제1 방향으로 와인딩하고,
상기 제2 와이어를 제2 방향으로 와인딩하는 단계는,
상기 청소 대상 영역이 상기 특정 타입 외의 타입이면, 상기 제2 와이어를 상기 제2 방향으로 와인딩하는, 제어 방법.
According to clause 12,
The step of winding the first wire in the first direction,
If the area to be cleaned is a specific type, winding the first wire in the first direction,
The step of winding the second wire in the second direction,
If the area to be cleaned is of a type other than the specific type, the control method includes winding the second wire in the second direction.
제10항에 있어서,
상기 청소를 수행하는 단계는,
상기 청소 대상 영역과 상기 지면의 단차가 임계 값 이상인 경우, 상기 슬라이더를 후방으로 이동시켜 상기 청소 대상 영역으로 상기 석션부를 위치시키는, 제어 방법.
According to clause 10,
The steps for performing the cleaning are:
When the level difference between the cleaning target area and the ground is greater than or equal to a threshold value, the control method moves the slider rearward to position the suction unit in the cleaning target area.
제10항에 있어서,
상기 청소를 수행하는 단계는,
상기 청소를 수행하는 동안 라이다 센서를 통해 획득된 거리 데이터에 기초하여 상기 슬라이더를 이동시키는, 제어 방법.
According to clause 10,
The steps for performing the cleaning are:
A control method for moving the slider based on distance data acquired through a lidar sensor while performing the cleaning.
제10항에 있어서,
상기 이미지에서 청소 불가능한 영역이 식별되면, 청소 불가능한 영역을 가이드하는 UI를 제공하는 단계;를 더 포함하는, 제어 방법.
According to clause 10,
When an area that cannot be cleaned is identified in the image, providing a UI that guides the area that cannot be cleaned.
KR1020220073793A 2022-06-16 2022-06-16 Robot and controlling method therof KR20230173277A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220073793A KR20230173277A (en) 2022-06-16 2022-06-16 Robot and controlling method therof
PCT/KR2023/006041 WO2023243859A1 (en) 2022-06-16 2023-05-03 Robot and method for controlling same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220073793A KR20230173277A (en) 2022-06-16 2022-06-16 Robot and controlling method therof

Publications (1)

Publication Number Publication Date
KR20230173277A true KR20230173277A (en) 2023-12-27

Family

ID=89191449

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220073793A KR20230173277A (en) 2022-06-16 2022-06-16 Robot and controlling method therof

Country Status (2)

Country Link
KR (1) KR20230173277A (en)
WO (1) WO2023243859A1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140070250A (en) * 2012-11-30 2014-06-10 삼성테크윈 주식회사 Robot cleaning device
US20190246858A1 (en) * 2018-02-13 2019-08-15 Nir Karasikov Cleaning robot with arm and tool receptacles
KR102243178B1 (en) * 2019-03-29 2021-04-21 엘지전자 주식회사 A ROBOT CLEANER Using artificial intelligence AND CONTROL METHOD THEREOF
KR20210040613A (en) * 2019-10-04 2021-04-14 삼성전자주식회사 Electronic apparatus and controlling method thereof
KR20220059741A (en) * 2020-11-03 2022-05-10 삼성전자주식회사 Robot arm apparatus

Also Published As

Publication number Publication date
WO2023243859A1 (en) 2023-12-21

Similar Documents

Publication Publication Date Title
EP3568334B1 (en) System, method and non-transitory computer readable storage medium for parking vehicle
JP2020125102A (en) Method and device for optimized resource allocation during autonomous travel on the basis of reinforcement learning with use of data from rider, radar and camera sensor
US11877716B2 (en) Determining region attribute
US11120538B2 (en) Sensor degradation detection and remediation
WO2017065171A1 (en) Electric vacuum cleaner
JP2018534699A (en) System and method for correcting erroneous depth information
JP2023500994A (en) Obstacle recognition method, device, autonomous mobile device and storage medium
US11482007B2 (en) Event-based vehicle pose estimation using monochromatic imaging
US20230000304A1 (en) Robot device and control method therefor
WO2020038155A1 (en) Autonomous movement device, control method and storage medium
CN111026115A (en) Robot obstacle avoidance control method and device based on deep learning
CN110164179A (en) The lookup method and device of a kind of parking stall of garage free time
KR20230173277A (en) Robot and controlling method therof
KR101868549B1 (en) Method of generating around view and apparatus performing the same
US20220308592A1 (en) Vision-based obstacle detection for autonomous mobile robots
US20210109541A1 (en) Method of estimating position in local area of large space and robot and cloud server implementing thereof
KR20220102343A (en) Robot and controlling method thereof
EP2618312A2 (en) System and method for snapping normals to create fair 3D surfaces from edge curves
US11724397B2 (en) Robot and method for controlling the same
US20230401748A1 (en) Apparatus and methods to calibrate a stereo camera pair
KR20190094302A (en) Method of extracting feature from image using laser pattern and device and robot of extracting feature thereof
EP4206977A1 (en) Electronic device and control method of electronic device
KR20220021581A (en) Robot and control method thereof
CN114265397A (en) Interaction method and device for mobile robot, mobile robot and storage medium
CN113359731B (en) Cleaning robot, path learning method, path repeating method, and medium