KR20230009280A - Method for providing artificial intelligence model for robot - Google Patents

Method for providing artificial intelligence model for robot Download PDF

Info

Publication number
KR20230009280A
KR20230009280A KR1020220021021A KR20220021021A KR20230009280A KR 20230009280 A KR20230009280 A KR 20230009280A KR 1020220021021 A KR1020220021021 A KR 1020220021021A KR 20220021021 A KR20220021021 A KR 20220021021A KR 20230009280 A KR20230009280 A KR 20230009280A
Authority
KR
South Korea
Prior art keywords
robot
artificial intelligence
data
gpu
unit
Prior art date
Application number
KR1020220021021A
Other languages
Korean (ko)
Other versions
KR102642036B1 (en
Inventor
최동완
Original Assignee
주식회사 제타뱅크
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 제타뱅크 filed Critical 주식회사 제타뱅크
Priority to KR1020220021021A priority Critical patent/KR102642036B1/en
Publication of KR20230009280A publication Critical patent/KR20230009280A/en
Application granted granted Critical
Publication of KR102642036B1 publication Critical patent/KR102642036B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Robotics (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Mechanical Engineering (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Fuzzy Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The present invention relates to a method of providing an artificial intelligence model for a robot. The method comprises the steps of: performing, by an artificial intelligence module, machine learning using acquired data as training data; generating, by the artificial intelligence module, a prediction model for at least one operation of a robot based on results of the machine learning; installing the prediction model into a graphics processing unit (GPU); allowing the GPU to be placed inside the body of the robot while mounted on a PCB, so as to be electrically connected to a sensing unit and a control unit of the robot; and generating, by the robot, a driving path based on the prediction model, wherein the robot autonomously drives along the generated path. A given task can be efficiently performed.

Description

로봇용 인공지능 모델 제공 방법{Method for providing artificial intelligence model for robot}Method for providing artificial intelligence model for robot

본 발명은 로봇용 인공지능 모델 제공 방법에 관한 것이다.The present invention relates to a method for providing an artificial intelligence model for a robot.

최근에는 산업체에서 이용되는 산업용 로봇뿐만 아니라 일반 가정이나 사무실, 관공서 등 건물내에서 가사일이나 사무 보조로서 로봇이 실용화되고 있다. 이에 해당하는 대표적인 예로서 청소 로봇, 안내 로봇, 방범 로봇 등을 들 수 있다.In recent years, robots have been put into practical use not only as industrial robots used in industries, but also as housework or office assistants in buildings such as general homes, offices, and government offices. Representative examples corresponding to this include cleaning robots, guidance robots, crime prevention robots, and the like.

인공 지능 기술의 발전에 따라 로봇에도 인공 지능 기술이 적용된다. 인공 지능 기술이 적용된 로봇은 센싱 데이터를 이용해 기계 학습하여 주어진 임무를 수행한다.With the development of artificial intelligence technology, artificial intelligence technology is also applied to robots. Robots with artificial intelligence technology perform machine learning using sensing data to perform given tasks.

이러한 인공 지능 기술이 적용된 로봇은 제조 시점에 충분한 센싱 데이터를 확보하지 못한 시점에서는 충분한 학습을 수행하지 못해 주어진 임무를 수행하는데 효율적인 움직임을 보이지 못하는 문제가 있다.A robot to which such artificial intelligence technology is applied has a problem in that it does not perform efficient movements to perform a given task because it does not perform sufficient learning at the time when sufficient sensing data is not secured at the time of manufacture.

등록번호 10-1987133Registration No. 10-1987133

본 발명은 상기한 문제점을 해결하기 위하여, 로봇 제조 후 소비자에게 인도된 시점부터 주어진 임무를 효율적으로 수행할 수 있도록 로봇용 인공지능 플랫폼 제공 방법을 제공하는데 목적이 있다. In order to solve the above problems, an object of the present invention is to provide a method for providing an artificial intelligence platform for a robot so that it can efficiently perform a given task from the time the robot is manufactured and delivered to a consumer.

본 발명의 과제들은 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The tasks of the present invention are not limited to the tasks mentioned above, and other tasks not mentioned will be clearly understood by those skilled in the art from the following description.

상기 과제를 달성하기 위하여, 본 발명의 실시예에 따른 로봇용 인공지능 모델 제공 방법은, 인공지능 모듈이, 획득된 데이터를 트레이닝 데이터로 사용하여 기계 학습을 수행하는 단계; 상기 인공지능 모듈이, 상기 기계 학습의 결과값에 기초하여, 로봇의 적어도 하나의 동작에 관한 예측 모델을 생성하는 단계; 상기 예측 모델이 GPU(Graphics Processing Unit)에 인스톨되는 단계; 상기 GPU가 PCB에 실장된 상태로, 로봇의 바디 내부에 배치되어, 로봇의 센싱부 및 제어부와 전기적으로 연결되는 단계; 및 로봇이, 상기 예측 모델에 기초하여 주행 경로를 생성하고, 생성된 경로를 따라 자율 주행하는 단계;를 포함한다.In order to achieve the above object, a method for providing an artificial intelligence model for a robot according to an embodiment of the present invention includes: performing, by an artificial intelligence module, machine learning using acquired data as training data; generating, by the artificial intelligence module, a predictive model for at least one motion of the robot based on a result value of the machine learning; installing the prediction model in a graphics processing unit (GPU); placing the GPU inside a body of a robot in a state where the GPU is mounted on a PCB, and electrically connecting to a sensing unit and a control unit of the robot; and generating, by the robot, a driving route based on the prediction model, and autonomously driving along the generated route.

상기 전기적으로 연결되는 단계는, 상기 GPU가, 상기 제어부와 신호를 교환하는 단계;를 포함한다.The electrically connecting step includes exchanging signals between the GPU and the control unit.

본 발명의 실시예에 따른 로봇용 인공지능 모델 제공 방법은, 상기 GPU가, 상기 센싱부에서 생성된 데이터를 수신하는 단계;를 더 포함한다.The method for providing an artificial intelligence model for a robot according to an embodiment of the present invention further includes, by the GPU, receiving data generated by the sensing unit.

본 발명의 실시예에 따른 로봇용 인공지능 모델 제공 방법은, 상기 GPU가, 상기 센싱부에서 생성된 데이터에 기초하여, 반복적으로 기계 학습을 수행하는 단계;를 더 포함한다.The method for providing an artificial intelligence model for a robot according to an embodiment of the present invention further includes, by the GPU, repeatedly performing machine learning based on the data generated by the sensing unit.

본 발명의 실시예에 따른 로봇용 인공지능 모델 제공 방법은, 로봇이, 상기 예측 모델에 기초하여 기 설정된 동작을 수행하는 단계;를 더 포함한다.The method for providing an artificial intelligence model for a robot according to an embodiment of the present invention further includes, by the robot, performing a predetermined operation based on the prediction model.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Details of other embodiments are included in the detailed description and drawings.

본 발명에 따르면 다음과 같은 효과가 하나 혹은 그 이상 있다.According to the present invention, there is one or more of the following effects.

첫째, 로봇의 제조 초기부터 추가적인 기계 학습 없이 로봇의 역할을 효율적으로 수행하는 효과가 있다.First, there is an effect of efficiently performing the role of the robot without additional machine learning from the beginning of robot manufacturing.

둘째, 일정 정도 기계 학습이 된 로봇을 제조하여 납품함으로써 사용자의 편의성이 증대되는 효과가 있다.Second, there is an effect of increasing user convenience by manufacturing and delivering robots with machine learning to a certain extent.

셋째, 로봇의 동작에 따라 저사양 GPU 또는 고사양 GPU 중 선택하여 인스톨할 수 있어 합리적인 제조 단가를 형성할 수 있다.Third, it is possible to select and install either a low-end GPU or a high-spec GPU according to the operation of the robot, thereby forming a reasonable manufacturing cost.

본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.

도 1은 본 발명의 실시예에 따른 로봇의 외관을 도시한 도면이다.
도 2는 본 발명의 실시예에 따른 로봇의 제어 블럭도이다.
도 3은 본 발명의 실시예에 따른 로봇용 인공지능 플랫폼 제공 방법의 플로우 차트이다.
도 4는 본 발명의 실시예에 따른 로봇용 인공지능 플랫폼 제공 방법을 설명하는데 참조되는 도면이다.
도 5는 본 발명의 실시예에 따른 로봇의 충전 동작을 설명하는데 참조되는 도면이다.
1 is a view showing the appearance of a robot according to an embodiment of the present invention.
2 is a control block diagram of a robot according to an embodiment of the present invention.
3 is a flowchart of a method for providing an artificial intelligence platform for robots according to an embodiment of the present invention.
4 is a diagram referenced to explain a method for providing an artificial intelligence platform for robots according to an embodiment of the present invention.
5 is a diagram referenced to describe a charging operation of a robot according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Hereinafter, the embodiments disclosed in this specification will be described in detail with reference to the accompanying drawings, but the same or similar elements are given the same reference numerals regardless of reference numerals, and redundant description thereof will be omitted. The suffixes "module" and "unit" for components used in the following description are given or used together in consideration of ease of writing the specification, and do not have meanings or roles that are distinct from each other by themselves. In addition, in describing the embodiments disclosed in this specification, if it is determined that a detailed description of a related known technology may obscure the gist of the embodiment disclosed in this specification, the detailed description thereof will be omitted. In addition, the accompanying drawings are only for easy understanding of the embodiments disclosed in this specification, the technical idea disclosed in this specification is not limited by the accompanying drawings, and all changes included in the spirit and technical scope of the present invention , it should be understood to include equivalents or substitutes.

제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms including ordinal numbers, such as first and second, may be used to describe various components, but the components are not limited by the terms. These terms are only used for the purpose of distinguishing one component from another.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.It is understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, but other elements may exist in the middle. It should be. On the other hand, when an element is referred to as “directly connected” or “directly connected” to another element, it should be understood that no other element exists in the middle.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. Singular expressions include plural expressions unless the context clearly dictates otherwise.

본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this application, terms such as "comprise" or "have" are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or more other features It should be understood that the presence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded.

도 1은 본 발명의 실시예에 따른 로봇의 외관을 도시한 도면이다.1 is a view showing the appearance of a robot according to an embodiment of the present invention.

도면을 참조하면, 본 발명의 실시예에 따른 인공 지능 알고리즘이 적용된 로봇(100)(이하, 로봇)은, 멀티 동작을 수행하는 로봇이다. 구체적으로, 로봇(100)은, 대상 공간에서 자율 주행하며, 접객 동작, 방역 동작, 멸균 동작, 공기청정 동작, 청소 동작 등을 수행할 수 있다. 한편, 대상 공간은, 로봇(100)이 자율 주행하면서 각종 동작을 수행하는 공간으로 정의될 수 있다.Referring to the drawings, a robot 100 (hereinafter referred to as a robot) to which an artificial intelligence algorithm according to an embodiment of the present invention is applied is a robot that performs multi-operations. Specifically, the robot 100 may autonomously travel in a target space and perform customer service, quarantine, sterilization, air cleaning, cleaning, and the like. Meanwhile, the target space may be defined as a space in which the robot 100 performs various operations while autonomously traveling.

한편, 로봇(100)은, 내부에 포함된 배터리로부터 전기 에너지를 공급받는다. 멀티 동작을 수행하는 동안에 전기 에너지를 공급받기 위해서는, 상황에 맞춰 충전이 이루어져야 한다. 로봇은 상술한 동작 외에 충전 동작을 수행할 수 있다.Meanwhile, the robot 100 receives electrical energy from a battery included therein. In order to receive electric energy while performing multi-operations, charging must be performed according to circumstances. The robot may perform a charging operation in addition to the above-described operation.

한편, 실시예에 따라, 로봇(100)의 범위에는 의료용 배송 로봇, 방역 로봇, 방역 접객 로봇, 이동형 협동 로봇, 청소 로봇, 특정 공간에 설치되는 디바이스(예를 들면, 출입 관리 시스템, 키오스크)까지 포함될 수 있다.Meanwhile, depending on the embodiment, the scope of the robot 100 includes a medical delivery robot, a quarantine robot, a quarantine service robot, a mobile collaborative robot, a cleaning robot, and a device installed in a specific space (eg, an access control system, a kiosk). can be included

도 2는 본 발명의 실시예에 따른 로봇의 제어 블럭도이다.2 is a control block diagram of a robot according to an embodiment of the present invention.

도면을 참조하면, 로봇(100)은, 특정 공간에서 스스로 이동하면서 동작을 수행한다. 로봇(100)은, 자율 주행 이동 로봇으로 명명될 수 있다. 로봇(100)은, 자율 주행할 수 있다. 로봇(100)은, 센싱부(110) 및 인공지능 모듈(200)에서 생성된 데이터에 기초하여 주행 경로를 생성하고, 생성된 경로를 따라 자율 주행할 수 있다. Referring to the drawing, the robot 100 performs an operation while moving by itself in a specific space. The robot 100 may be referred to as an autonomous mobile robot. The robot 100 can autonomously travel. The robot 100 may generate a driving route based on data generated by the sensing unit 110 and the artificial intelligence module 200 and autonomously drive along the created route.

로봇(100)은, 센싱부(110), 인공지능 모듈(200), 통신부(125), 입력부(130), 메모리(140), 제어부(170), 구동부(150), 동작부(155) 및 충전부(190)를 포함할 수 있다.The robot 100 includes a sensing unit 110, an artificial intelligence module 200, a communication unit 125, an input unit 130, a memory 140, a control unit 170, a driving unit 150, an operation unit 155, and A charging unit 190 may be included.

센싱부(110)는, 로봇(100) 내부 또는 외부의 상황을 감지할 수 있다. 센싱부(110)는, 적어도 하나의 센서에서 생성된 데이터를 제어부(170)에 제공할 수 있다. 제어부(170)는, 센싱부(110)로부터 수신된 데이터에 기초하여 동작을 수행할 수 있다.The sensing unit 110 may detect conditions inside or outside the robot 100 . The sensing unit 110 may provide data generated by at least one sensor to the controller 170 . The controller 170 may perform an operation based on data received from the sensing unit 110 .

센싱부(110)는, 대상 공간에서 사람을 검출할 수 있다. 예를 들면, 센싱부(110)는, 카메라로 촬영된 영상 분석을 통해, 대상 공간에서 사람을 검출할 수 있다.The sensing unit 110 may detect a person in the target space. For example, the sensing unit 110 may detect a person in the target space through analysis of an image captured by a camera.

센싱부(110)는, 대상 공간의 오염도를 측정할 수 있다. 예를 들면, 센싱부(110)는, 환경 센서에서 생성된 데이터를 통해, 대상 공간의 오염도를 측정할 수 있다.The sensing unit 110 may measure the degree of contamination of the target space. For example, the sensing unit 110 may measure the pollution level of the target space through data generated by an environmental sensor.

한편, 센싱부(110)는, 로봇(100)이 자율 주행하는 도중에 내부 또는 외부의 상황을 감지할 수 있다.Meanwhile, the sensing unit 110 may detect an internal or external situation while the robot 100 autonomously travels.

센싱부(110)는, 복수의 센서를 포함한다. 센싱부(110)는, 초음파 센서, 라이다, 레이다, 적외선 센서, 카메라, 환경 센서, IMU(Inertial Measurement Unit)를 포함할 수 있다.The sensing unit 110 includes a plurality of sensors. The sensing unit 110 may include an ultrasonic sensor, lidar, radar, an infrared sensor, a camera, an environmental sensor, and an inertial measurement unit (IMU).

초음파 센서는, 초음파를 이용하여, 로봇(100) 외부의 오브젝트를 감지할 수 있다. The ultrasonic sensor may sense an object outside the robot 100 by using ultrasonic waves.

초음파 센서는, 초음파 송신부, 수신부를 포함할 수 있다. 실시예에 따라, 초음파 센서는, 초음파 송신부, 수신부와 전기적으로 연결되어, 수신되는 신호를 처리하고, 처리된 신호에 기초하여 오브젝트에 대한 데이터를 생성하는 적어도 하나의 제어부를 더 포함할 수 있다. 초음파 센서의 제어부 기능은 제어부(170)에서 구현될 수도 있다.The ultrasonic sensor may include an ultrasonic transmitter and a receiver. According to embodiments, the ultrasonic sensor may further include at least one controller electrically connected to the ultrasonic transmitter and the receiver, processing a received signal, and generating data about an object based on the processed signal. The controller function of the ultrasonic sensor may be implemented in the controller 170 .

초음파 센서는, 초음파를 기초로 오브젝트를 검출하고, 검출된 오브젝트의 위치, 검출된 오브젝트와의 거리 및 상대 속도를 검출할 수 있다. The ultrasonic sensor may detect an object based on ultrasonic waves, and may detect a position of the detected object, a distance to the detected object, and a relative speed.

초음파 센서는, 로봇(100)의 전방, 후방 또는 측방에 위치하는 오브젝트를 감지하기 위해 로봇(100) 외부의 적절한 위치에 배치될 수 있다.The ultrasonic sensor may be disposed at an appropriate location outside the robot 100 in order to detect an object located in front, rear or side of the robot 100 .

라이다는, 레이저 광을 이용하여, 로봇(100) 외부의 오브젝트를 감지할 수 있다. LIDAR may sense an object outside the robot 100 by using laser light.

라이다는, 광 송신부 및 광 수신부를 포함할 수 있다. 실시예에 따라, 라이다는, 광 송신부 및 광 수신부와 전기적으로 연결되어, 수신되는 신호를 처리하고, 처리된 신호에 기초하여 오브젝트에 대한 데이터를 생성하는 적어도 하나의 제어부를 더 포함할 수 있다. 라이다의 제어부 기능은 제어부(170)에서 구현될 수도 있다.LiDAR may include an optical transmission unit and an optical reception unit. Depending on the embodiment, the lidar may further include at least one control unit electrically connected to the light transmission unit and the light reception unit, processing a received signal, and generating data about an object based on the processed signal. . The control function of LIDAR may be implemented in the control unit 170.

라이다는, TOF(Time of Flight) 방식 또는 페이즈 쉬프트(phase-shift) 방식으로 구현될 수 있다. LIDAR may be implemented in a Time of Flight (TOF) method or a phase-shift method.

라이다는, 구동식 또는 비구동식으로 구현될 수 있다. LiDAR may be implemented as a driven or non-driven type.

구동식으로 구현되는 경우, 라이다는, 모터에 의해 회전되며, 로봇(100) 주변의 오브젝트를 검출할 수 있다. When implemented as a driving type, lidar is rotated by a motor and can detect objects around the robot 100 .

비구동식으로 구현되는 경우, 라이다는, 광 스티어링에 의해, 로봇(100)을 기준으로 소정 범위 내에 위치하는 오브젝트를 검출할 수 있다. When implemented as a non-driven type, lidar may detect an object located within a predetermined range with respect to the robot 100 by light steering.

로봇(100)은 복수의 비구동식 라이다를 포함할 수 있다. The robot 100 may include a plurality of non-driven lidars.

라이다는, 레이저 광 매개로, TOF(Time of Flight) 방식 또는 페이즈 쉬프트(phase-shift) 방식에 기초하여, 오브젝트를 검출하고, 검출된 오브젝트의 위치, 검출된 오브젝트와의 거리 및 상대 속도를 검출할 수 있다. LIDAR detects an object based on a time of flight (TOF) method or a phase-shift method through laser light, and measures the position of the detected object, the distance to the detected object, and the relative speed. can be detected.

라이다는, 로봇(100)의 전방, 후방 또는 측방에 위치하는 오브젝트를 감지하기 위해 로봇(100) 외부의 적절한 위치에 배치될 수 있다.LiDAR may be disposed at an appropriate location outside the robot 100 in order to detect an object located in front, rear or side of the robot 100 .

레이다는, 전자파 송신부, 수신부를 포함할 수 있다. 레이더는 전파 발사 원리상 펄스 레이더(Pulse Radar) 방식 또는 연속파 레이더(Continuous Wave Radar) 방식으로 구현될 수 있다. 레이더는 연속파 레이더 방식 중에서 신호 파형에 따라 FMCW(Frequency Modulated Continuous Wave)방식 또는 FSK(Frequency Shift Keying) 방식으로 구현될 수 있다.The radar may include an electromagnetic wave transmitter and a receiver. The radar may be implemented in a pulse radar method or a continuous wave radar method in terms of the radio wave emission principle. The radar may be implemented in a frequency modulated continuous wave (FMCW) method or a frequency shift keying (FSK) method according to a signal waveform among continuous wave radar methods.

레이더는 전자파를 매개로, TOF(Time of Flight) 방식 또는 페이즈 쉬프트(phase-shift) 방식에 기초하여, 오브젝트를 검출하고, 검출된 오브젝트의 위치, 검출된 오브젝트와의 거리 및 상대 속도를 검출할 수 있다. The radar detects an object based on a Time of Flight (TOF) method or a phase-shift method using electromagnetic waves as a medium, and detects the position of the detected object, the distance to the detected object, and the relative speed. can

레이더는, 로봇(100)의 전방, 후방 또는 측방에 위치하는 오브젝트를 감지하기 위해 로봇(100)의 외부의 적절한 위치에 배치될 수 있다. The radar may be disposed at an appropriate location outside the robot 100 in order to detect an object located in front, rear or side of the robot 100 .

적외선 센서는, 적외선 송신부, 수신부를 포함할 수 있다. 적외선 센서는, 적외선 광을 기초로 오브젝트를 검출하고, 검출된 오브젝트의 위치, 검출된 오브젝트와의 거리 및 상대 속도를 검출할 수 있다.The infrared sensor may include an infrared transmitter and a receiver. The infrared sensor may detect an object based on infrared light, and detect a position of the detected object, a distance to the detected object, and a relative speed.

적외선 센서는, 로봇(100)의 전방, 후방 또는 측방에 위치하는 오브젝트를 감지하기 위해 로봇(100)의 외부의 적절한 위치에 배치될 수 있다.The infrared sensor may be disposed at an appropriate location outside the robot 100 in order to detect an object located in front, rear or side of the robot 100 .

카메라는, 로봇(100) 외부 영상을 촬영할 수 있다.The camera may capture an external image of the robot 100.

카메라는, 영상을 이용하여 로봇(100) 외부의 오브젝트에 대한 정보를 생성할 수 있다. 카메라는 적어도 하나의 렌즈, 적어도 하나의 이미지 센서 및 이미지 센서와 전기적으로 연결되어 수신되는 신호를 처리하고, 처리되는 신호에 기초하여 오브젝트에 대한 데이터를 생성하는 적어도 하나의 제어부를 포함할 수 있다.The camera may generate information about an object outside the robot 100 using an image. The camera may include at least one lens, at least one image sensor, and at least one controller electrically connected to the image sensor to process a received signal and to generate data about an object based on the processed signal.

카메라는, 모노 카메라, 스테레오 카메라 중 적어도 어느 하나일 수 있다. The camera may be at least one of a mono camera and a stereo camera.

카메라는, 다양한 영상 처리 알고리즘을 이용하여, 오브젝트의 위치 정보, 오브젝트와의 거리 정보 또는 오브젝트와의 상대 속도 정보를 획득할 수 있다. The camera may obtain location information of an object, distance information with respect to the object, or relative speed information with respect to the object by using various image processing algorithms.

예를 들면, 카메라는, 획득된 영상에서, 시간에 따른 오브젝트 크기의 변화를 기초로, 오브젝트와의 거리 정보 및 상대 속도 정보를 획득할 수 있다. For example, the camera may obtain distance information and relative speed information with respect to the object based on a change in the size of the object over time in the obtained image.

예를 들면, 카메라는, 핀홀(pin hole) 모델, 노면 프로파일링 등을 통해, 오브젝트와의 거리 정보 및 상대 속도 정보를 획득할 수 있다. For example, the camera may obtain distance information and relative speed information with respect to an object through a pinhole model, road profiling, and the like.

예를 들면, 카메라는, 스테레오 카메라에서 획득된 스테레오 영상에서 디스패러티(disparity) 정보를 기초로 오브젝트와의 거리 정보 및 상대 속도 정보를 획득할 수 있다. For example, the camera may obtain distance information and relative speed information with respect to an object based on disparity information in a stereo image obtained from a stereo camera.

카메라는, 로봇(100) 외부를 촬영하기 위해 FOV(field of view) 확보가 가능한 위치에 장착될 수 있다. The camera may be mounted in a position where a field of view (FOV) can be secured in order to photograph the outside of the robot 100 .

로봇(100)은, 복수의 카메라를 포함할 수 있다. 예를 들면, 로봇(100)은, 전방 카메라, 후방 카메라, 좌측방 카메라, 우측방 카메라를 구성된 4채널 카메라를 포함할 수 있다.The robot 100 may include a plurality of cameras. For example, the robot 100 may include a 4-channel camera composed of a front camera, a rear camera, a left camera, and a right camera.

환경 센서는, 대상 공간에 대한 오염도를 센싱할 수 있다. 예를 들면, 환경 센서는, 대상 공간에서의 방역 대상이 되는 생화학적 오염 물질의 유무, 농도 등을 센싱할 수 있다.The environmental sensor may sense the degree of contamination of the target space. For example, the environmental sensor may sense the presence or absence, concentration, and the like of biochemical contaminants to be quarantined in the target space.

IMU(Inertial Measurement Unit)는, 로봇(100)의 관성을 측정할 수 있다. IMU는, 가속도계와 회전 속도계, 때로는 자력계의 조합을 사용하여 로봇(100)의 특정한 힘, 각도 비율 및 때로는 로봇(100)을 둘러싼 자기장을 측정하는 전자 장치로 설명될 수 있다. 제어부(170)는, IMU로부터 수신되는 데이터에 기초하여 로봇(100)의 자세에 대한 정보를 생성할 수 있다.An inertial measurement unit (IMU) may measure the inertia of the robot 100 . An IMU can be described as an electronic device that uses a combination of an accelerometer, a gyrometer, and sometimes a magnetometer to measure a specific force on the robot 100, an angular rate, and sometimes a magnetic field surrounding the robot 100. The controller 170 may generate information about the posture of the robot 100 based on data received from the IMU.

IMU는, 가속도 센서, 자이로 센서, 자기 센서 중 적어도 어느 하나를 포함할 수 있다.The IMU may include at least one of an acceleration sensor, a gyro sensor, and a magnetic sensor.

인공지능 모듈(200)은, 머신 러닝으로 사물, 공간, 로봇(100)의 속성을 학습할 수 있다. 머신 러닝은 컴퓨터에게 사람이 직접 로직(Logic)을 지시하지 않아도 데이터를 통해 컴퓨터가 학습을 하고 이를 통해 컴퓨터가 알아서 문제를 해결하게 하는 것을 의미한다.The artificial intelligence module 200 may learn properties of objects, spaces, and the robot 100 through machine learning. Machine learning means that a computer learns through data without a person directly instructing the computer with logic, and through this, the computer solves the problem on its own.

딥러닝(Deep Learning)은. 인공지능(artificial intelligence)을 구성하기 위한 인공신경망(Artificial Neural Networks: ANN)에 기반으로 해 컴퓨터에게 사람의 사고방식을 가르치는 방법으로 사람이 가르치지 않아도 컴퓨터가 스스로 사람처럼 학습할 수 있는 인공지능 기술이다.Deep Learning is. Based on artificial neural networks (ANNs) to construct artificial intelligence, it is an artificial intelligence technology that allows computers to learn like humans on their own without being taught by humans as a method of teaching computers how to think. .

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

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

예를 들어, 인공지능 모듈(200)은 딥러닝(Deep Learning)으로 학습된 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), DBN(Deep Belief Network) 등 심층신경망(Deep Neural Network: DNN)을 포함할 수 있다.For example, the artificial intelligence module 200 is a deep neural network (DNN) such as a convolutional neural network (CNN), a recurrent neural network (RNN), and a deep belief network (DBN) learned by deep learning. can include

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

인공지능 모듈(200)은, 머신 러닝(machine learning)으로 기 학습된 데이터에 기초하여 상기 선택된 특정 시점 영상에 포함되는 공간, 장애물의 속성을 인식할 수 있다.The artificial intelligence module 200 may recognize properties of spaces and obstacles included in the selected specific viewpoint image based on data pre-learned through machine learning.

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

메모리(140)에는 카메라가 획득한 원본 영상과 소정 영역이 추출된 추출 영상들이 저장될 수 있다.The memory 140 may store original images acquired by the camera and extracted images from which predetermined regions are extracted.

또한, 실시예에 따라서는, 메모리(140)에는 상기 심층신경망(DNN) 구조를 이루는 웨이트(weight), 바이어스(bias)들이 저장될 수 있다.Also, depending on embodiments, the memory 140 may store weights and biases constituting the deep neural network (DNN) structure.

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

한편, 인공지능 모듈(200)은 센싱부(110)를 통해 수신한 데이터를 트레이닝(training) 데이터로 사용하여 학습 과정을 수행할 수 있다.Meanwhile, the artificial intelligence module 200 may perform a learning process by using the data received through the sensing unit 110 as training data.

로봇(100)은 통신부(125)를 통하여 상기 소정 서버로부터 머신 러닝과 관련된 데이터를 수신할 수 있다. 이 경우에, 로봇(100)은, 상기 소정 서버로부터 수신된 머신 러닝과 관련된 데이터에 기초하여 인공지능 모듈(200)을 업데이트(update)할 수 있다.The robot 100 may receive data related to machine learning from the predetermined server through the communication unit 125 . In this case, the robot 100 may update the artificial intelligence module 200 based on data related to machine learning received from the predetermined server.

로봇(100)의 동작으로 획득되는 데이터가 서버로 전송될 수 있다. 로봇(100)은, 서버로 공간(space), 사물(Object), 사용(Usage) 관련 데이터(Data)를 서버로 전송할 수 있다. 여기서, 공간(space), 사물(Object) 관련 데이터는 로봇(100)이 인식한 공간(space)과 사물(Object)의 인식 관련 데이터이거나, 카메라가 획득한 공간(space)과 사물(Object)에 대한 이미지 데이터일 수 있다. 또한, 사용(Usage) 관련 데이터(Data)는 소정 제품, 예를 들어, 로봇(100)의 사용에 따라 획득되는 데이터로, 사용 이력 데이터, 센싱부(110)에서 획득된 센싱 데이터 등이 해당될 수 있다.Data acquired by the operation of the robot 100 may be transmitted to the server. The robot 100 may transmit data related to space, objects, and usage to the server. Here, the space and object related data is recognition related data of the space and object recognized by the robot 100, or the space and object acquired by the camera. It may be image data for In addition, the usage related data (Data) is data obtained according to the use of a predetermined product, for example, the robot 100, and may correspond to usage history data, sensing data obtained from the sensing unit 110, and the like. can

한편, 로봇(100)의 인공지능 모듈(200)에는 CNN(Convolutional Neural Network) 등 심층신경망 구조(DNN)가 탑재될 수 있다. 상기 학습된 심층신경망 구조(DNN)는 인식용 입력 데이터를 입력 받고, 입력 데이터에 포함된 사물, 공간의 속성을 인식하여, 그 결과를 출력할 수 있다. 또한, 상기 학습된 심층신경망 구조(DNN)는 인식용 입력 데이터를 입력 받고, 로봇(100)의 사용(Usage) 관련 데이터(Data)를 분석하고 학습하여 사용 패턴, 사용 환경 등을 인식할 수 있다. Meanwhile, the artificial intelligence module 200 of the robot 100 may be equipped with a deep neural network structure (DNN) such as a Convolutional Neural Network (CNN). The learned deep neural network structure (DNN) may receive input data for recognition, recognize properties of objects and spaces included in the input data, and output the result. In addition, the learned deep neural network structure (DNN) receives input data for recognition, analyzes and learns usage related data of the robot 100, and recognizes usage patterns, usage environments, etc. .

한편, 공간(space), 사물(Object), 사용(Usage) 관련 데이터(Data)는 통신부(125)를 통하여 서버로 전송될 수 있다. 서버는 학습된 웨이트(weight)들의 구성을 생성할 수 있고, 서버는 심층신경망(DNN) 구조를 트레이닝(training) 데이터를 사용하여 학습할 수 있다. 서버는 수신한 데이터에 기초하여, 심층신경망(DNN)을 학습시킨 후, 업데이트된 심층신경망(DNN) 구조 데이터를 로봇(100)으로 전송하여 업데이트하게 할 수 있다.Meanwhile, space, object, and usage related data may be transmitted to the server through the communication unit 125 . The server may create a configuration of learned weights, and the server may learn a deep neural network (DNN) structure using training data. The server may train a deep neural network (DNN) based on the received data, and then transmit updated deep neural network (DNN) structure data to the robot 100 to update.

이에 따라, 로봇(100)은 점점 더 똑똑해지고, 사용할수록 진화되는 사용자 경험(UX)을 제공할 수 있다.Accordingly, the robot 100 can provide a user experience (UX) that becomes increasingly smarter and evolves as it is used.

인공지능 모듈(200)은, 센싱부(110)를 통해 수신한 데이터를 트레이닝 데이터로 사용하여 오브젝트를 검출 동작의 학습 과정을 수행할 수 있다. 여기서, 오브젝트는, 로봇(100) 주변의 사물, 사람, 구조물 등 로봇(100)의 이동에 직접적 또는 간접적으로 영향을 주는 객체로 정의할 수 있다.The artificial intelligence module 200 may perform a learning process of an object detection operation by using data received through the sensing unit 110 as training data. Here, the object may be defined as an object that directly or indirectly affects the movement of the robot 100, such as objects, people, and structures around the robot 100.

인공지능 모듈(200)은, 센싱부(110)를 통해 수신한 데이터를 트레이닝 데이터로 사용하여 접객 동작, 방역 동작 또는 학습 동작의 학습 과정을 수행할 수 있다.The artificial intelligence module 200 may use the data received through the sensing unit 110 as training data to perform a learning process of a customer service operation, quarantine operation, or learning operation.

인공지능 모듈(200)은, 센싱부(110)를 통해 수신한 데이터를 트레이닝 데이터로 사용하여 스케줄링 동작의 학습 과정을 수행할 수 있다.The artificial intelligence module 200 may perform a learning process of a scheduling operation by using data received through the sensing unit 110 as training data.

인공지능 모듈(200)은, GPU(Graphics Processing Unit)로 구현될 수 있다. GPU로 구현된 인공지능 모듈(200)이 로봇(100)에 물리적으로 인스톨되고 로봇 시스템의 일부가 될 수 있다.The artificial intelligence module 200 may be implemented as a graphics processing unit (GPU). The artificial intelligence module 200 implemented as a GPU may be physically installed in the robot 100 and become part of the robot system.

인공지능 모듈(200)이 구현된 GPU는, PCB(printed circuit board)에 실장된 상태로, 로봇의 바디 내부에 배치되어, 로봇(100)의 다른 구성들과 전기적으로 연결될 수 있다. 특히, 인공지능 모듈(200)은, 제어부(170)와 전기적으로 연결됨으로써, 신호를 교환하여 로봇(100)의 스마트한 제어가 가능하게 된다. 이경우, 인공지능 모듈(200)로 인해 로봇(100)의 머신 러닝에 기반한 동작 제어가 가능하게 된다.The GPU in which the artificial intelligence module 200 is implemented is mounted on a printed circuit board (PCB), disposed inside the body of the robot, and may be electrically connected to other components of the robot 100. In particular, the artificial intelligence module 200 is electrically connected to the control unit 170, thereby enabling smart control of the robot 100 by exchanging signals. In this case, motion control based on machine learning of the robot 100 is possible due to the artificial intelligence module 200 .

인공지능 모듈(200)은, 소프트웨어로 구현되거나, 하드웨어 형태로 구현될 수 있다. 인공지능 모듈(200)이 프로세서(예를 들면, GPU)로 구현되는 경우, 인공지능 모듈(200)이 구현된 프로세서로 명명될 수 있다.The artificial intelligence module 200 may be implemented in software or hardware form. When the artificial intelligence module 200 is implemented as a processor (eg, GPU), it may be referred to as a processor in which the artificial intelligence module 200 is implemented.

통신부(125)는, 로봇(100) 외부의 전자 장치(예를 들면, 사용자 단말기, 서버, 다른 이동 로봇, 충전 스테이션 등)와 신호를 교환할 수 있다. The communication unit 125 may exchange signals with an external electronic device (eg, a user terminal, a server, another mobile robot, a charging station, etc.) of the robot 100 .

통신부(125)는, 외부의 전자 장치와 데이터를 교환할 수 있다.The communication unit 125 may exchange data with an external electronic device.

통신부(125)는, 통신을 수행하기 위해 송신 안테나, 수신 안테나, 각종 통신 프로토콜이 구현 가능한 RF(Radio Frequency) 회로 및 RF 소자 중 적어도 어느 하나를 포함할 수 있다. The communication unit 125 may include at least one of a transmission antenna, a reception antenna, a radio frequency (RF) circuit capable of implementing various communication protocols, and an RF element to perform communication.

입력부(130)는, 사용자로부터 정보를 입력 받기 위한 것으로, 입력부(130)에서 수집한 데이터는, 제어부(170)에 의해 분석되어, 사용자의 제어 명령으로 처리될 수 있다.The input unit 130 is for receiving information from a user, and the data collected by the input unit 130 is analyzed by the control unit 170 and processed as a user's control command.

입력부(130)는, 음성 입력부, 터치 입력부를 포함할 수 있다. 실시예에 따라, 제스쳐 입력부 또는 기계식 입력부를 포함할 수 있다.The input unit 130 may include a voice input unit and a touch input unit. Depending on the embodiment, a gesture input unit or a mechanical input unit may be included.

음성 입력부는, 사용자의 음성 입력을 전기적 신호로 전환할 수 있다. 전환된 전기적 신호는, 제어부(170)에 제공될 수 있다. 음성 입력부는, 하나 이상의 마이크로 폰을 포함할 수 있다.The voice input unit may convert a user's voice input into an electrical signal. The converted electrical signal may be provided to the controller 170 . The voice input unit may include one or more microphones.

터치 입력부는, 사용자의 터치 입력을 전기적 신호로 전환할 수 있다. 전환된 전기적 신호는 제어부(170)에 제공될 수 있다.The touch input unit may convert a user's touch input into an electrical signal. The converted electrical signal may be provided to the controller 170 .

터치 입력부는, 사용자의 터치 입력을 감지하기 위한 터치 센서를 포함할 수 있다.The touch input unit may include a touch sensor for sensing a user's touch input.

실시예에 따라, 터치 입력부는 디스플레이(181)와 일체형으로 형성됨으로써, 터치 스크린을 구현할 수 있다. 이러한, 터치 스크린은, 로봇(100)과 사용자 사이의 입력 인터페이스 및 출력 인터페이스를 함께 제공할 수 있다.According to an embodiment, the touch input unit may be integrally formed with the display 181 to realize a touch screen. Such a touch screen may provide both an input interface and an output interface between the robot 100 and the user.

제스쳐 입력부는, 사용자의 제스쳐 입력을 전기적 신호로 전환할 수 있다. 전환된 전기적 신호는 제어부(170)에 제공될 수 있다.The gesture input unit may convert a user's gesture input into an electrical signal. The converted electrical signal may be provided to the controller 170 .

제스쳐 입력부는, 사용자의 제스쳐 입력을 감지하기 위한 적외선 센서 및 이미지 센서 중 적어도 어느 하나를 포함할 수 있다.The gesture input unit may include at least one of an infrared sensor and an image sensor for detecting a user's gesture input.

기계식 입력부는, 버튼, 돔 스위치(dome switch), 조그 휠 및 조그 스위치 중 적어도 어느 하나를 포함할 수 있다. 기계식 입력부에 의해 생성된 전기적 신호는, 제어부(170)에 제공될 수 있다.The mechanical input unit may include at least one of a button, a dome switch, a jog wheel, and a jog switch. An electrical signal generated by the mechanical input unit may be provided to the controller 170 .

메모리(140)는, 제어부(170)와 전기적으로 연결된다. 메모리(140)는 유닛에 대한 기본데이터, 유닛의 동작제어를 위한 제어데이터, 입출력 되는 데이터를 저장할 수 있다. 메모리(140)는, 제어부(170)에서 처리된 데이터를 저장할 수 있다. 메모리(140)는, 하드웨어적으로, ROM, RAM, EPROM, 플래시 드라이브, 하드 드라이브 중 적어도 어느 하나로 구성될 수 있다. 메모리(140)는 제어부(170)의 처리 또는 제어를 위한 프로그램 등, 로봇(100) 전반의 동작을 위한 다양한 데이터를 저장할 수 있다. 메모리(140)는, 제어부(170)와 일체형으로 구현될 수 있다. 실시예에 따라, 메모리(140)는, 제어부(170)의 하위 구성으로 분류될 수 있다.The memory 140 is electrically connected to the controller 170 . The memory 140 may store basic data for the unit, control data for controlling the operation of the unit, and input/output data. The memory 140 may store data processed by the controller 170 . The memory 140 may be configured with at least one of ROM, RAM, EPROM, a flash drive, and a hard drive in terms of hardware. The memory 140 may store various data for overall operation of the robot 100, such as a program for processing or control by the control unit 170. The memory 140 may be implemented integrally with the control unit 170 . Depending on the embodiment, the memory 140 may be classified as a sub-component of the control unit 170 .

동작부(155)는, 로봇(100)에게 주어진 임무에 적합한 동작을 수행할 수 있다. 동작부(155)는, 접객 동작, 방역 동작, 멸균 동작, 공기청정 동작, 청소 동작 중 적어도 어느 하나의 동작을 수행할 수 있다.The operation unit 155 may perform an operation suitable for a task given to the robot 100 . The operation unit 155 may perform at least one operation among a customer service operation, quarantine operation, sterilization operation, air cleaning operation, and cleaning operation.

접객 동작은, 대상 공간 내에 있는 사람과 인터렉션 하는 동작일 수 있다.The customer service operation may be an operation of interacting with a person in the target space.

방역 동작은, 방역 기능은 전염병 발생 또는 유행을 미리 막는 동작으로, 대상 공간 내에서 자율 주행하면서 화학적 소독 및 물리적 소독 동작 중 적어도 어느 하나를 수행하는 동작일 수 있다.The quarantine function is an operation to prevent the occurrence or epidemic of an infectious disease in advance, and may be an operation of performing at least one of chemical disinfection and physical disinfection while autonomously driving within a target space.

멸균 동작은, 대상 공간 내에서 자율 주행하면서 멸균을 위한 약액을 분사하는 동작일 수 있다.The sterilization operation may be an operation of spraying a chemical solution for sterilization while autonomously traveling within a target space.

공기청정 동작은, 대상 공간 내에서 자율 주행하면서, 대상 공간 내의 공기를 깨끗하게 하는 동작일 수 있다.The air cleaning operation may be an operation of cleaning the air in the target space while autonomously driving in the target space.

청소 동작은, 대상 공간 내에서 자율 주행하면서, 이물질을 빨아들이거나 물걸래로 바닥을 닦는 동작일 수 있다.The cleaning operation may be an operation of sucking up foreign substances or wiping the floor with a wet mop while autonomously traveling within a target space.

동작부(155)는, 상술한 각각의 동작을 수행하기 위한 하드웨어 및 소프트웨어를 구비할 수 있다.The operation unit 155 may include hardware and software for performing each of the above-described operations.

충전부(190)는, 충전 스테이션으로부터 전기 에너지를 공급받을 수 있다. 충전부(190)는. 공급받은 전기 에너지를 배터리에 저장할 수 있다.The charging unit 190 may receive electrical energy from a charging station. The charging unit 190 is. The electrical energy supplied can be stored in a battery.

제어부(170)는, 로봇(100)의 각 유닛의 전반적인 동작을 제어할 수 있다. 제어부(170)는 ECU(Electronic Control Unit)로 명명될 수 있다. 제어부(170)는, 로봇(100)의 각 유닛과 전기적으로 연결된다.The control unit 170 may control the overall operation of each unit of the robot 100. The controller 170 may be referred to as an Electronic Control Unit (ECU). The controller 170 is electrically connected to each unit of the robot 100.

제어부(170)는, ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다.The controller 170 includes application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, and controllers. It may be implemented using at least one of controllers, micro-controllers, microprocessors, and electrical units for performing other functions.

도 3은 본 발명의 실시예에 따른 로봇용 인공지능 플랫폼 제공 방법의 플로우 차트이다.3 is a flowchart of a method for providing an artificial intelligence platform for robots according to an embodiment of the present invention.

도면을 참조하면, 인공지능 모듈(200)은, 데이터를 획득할 수 있다(S310). 여기서, 데이터는, 제1 로봇에 포함된 센싱부에서 획득된 데이터일 수 있다. 또는, 데이터는, 제1 로봇이 센싱부에서 획득한 데이터로 학습한 데이터일 수 있다.Referring to the drawings, the artificial intelligence module 200 may obtain data (S310). Here, the data may be data obtained from a sensing unit included in the first robot. Alternatively, the data may be data learned by the first robot using data obtained from the sensing unit.

인공지능 모듈(200)은, 획득된 데이터를 트레이닝 데이터로 사용하여 기계 학습을 수행할 수 있다(S320).The artificial intelligence module 200 may perform machine learning using the acquired data as training data (S320).

인공지능 모듈(200)은, 기계 학습의 결과값에 기초하여, 로봇의 적어도 하나의 동작에 관한 예측 모델을 생성할 수 있다(S330). 예측 모델은, 적어도 하나의 인공신경망(ANN)을 활용한 모델일 수 있다. 예측 모델은, 과거의 데이터를 학습하여 산출된 결과물로, 시간과 공간에 대한 인풋값을 입력하면 해당 시간과 공간에 대한 예측 데이터를 출력하는 모델로 이해될 수 있다.The artificial intelligence module 200 may generate a predictive model for at least one motion of the robot based on the result of machine learning (S330). The prediction model may be a model using at least one artificial neural network (ANN). The predictive model is a result calculated by learning past data, and can be understood as a model that outputs predicted data for a corresponding time and space when an input value for time and space is input.

인공지능 모듈(200)은, GPU(Graphics Processing Unit)로 구현될 수 있다(S340). 이경우, 예측 모델은 GPU로 구현되게 된다. 가령, 인공지능 모듈(200)이 소프트웨어로 구현되는 경우, 소프트웨어를 GPU에 인스톨함으로써 인공지능 모듈(200)이 GPU로 구현될 수 있다. 한편, 실시예에 따라, 인공지능 모듈(200)이 하드웨어로 구현되는 경우, S340 단계는 생략될 수 있다.The artificial intelligence module 200 may be implemented as a Graphics Processing Unit (GPU) (S340). In this case, the predictive model is implemented with a GPU. For example, when the artificial intelligence module 200 is implemented as software, the artificial intelligence module 200 may be implemented as a GPU by installing the software in the GPU. Meanwhile, according to an embodiment, when the artificial intelligence module 200 is implemented as hardware, step S340 may be omitted.

인공지능 모듈(200)이 GPU로 구현됨으로써, 분산 처리가 가능하게 되어, 연산의 효율성이 증대된다.Since the artificial intelligence module 200 is implemented as a GPU, distributed processing is possible, and efficiency of calculation is increased.

한편, S340 단계에서, 로봇(100) 동작의 종류에 기초하여 GPU 사양이 결정될 수 있다.Meanwhile, in step S340, GPU specifications may be determined based on the type of operation of the robot 100.

인공지능 모듈(200)은, 로봇(100)에 인스톨 될 수 있다(S350). 이경우, 예측 모델은 로봇(100)에 인스톨되게 된다. 인공지능 모듈(200)이 구현된 GPU가 로봇(100) 내부에 장착되고, 로봇(100)에 포함되는 유닛과 전기적으로 연결됨으로써, 인공지능 모듈(200)은, 로봇(100)에 인스톨될 수 있다. 인공지능 모듈(200)은, 센싱부(110), 통신부(125), 입력부(130), 메모리(140), 제어부(170), 구동부(150), 동작부(155), 충전부(190) 중 적어도 어느 하나와 직접적 또는 간접적으로 신호를 교환할 수 있다.The artificial intelligence module 200 may be installed in the robot 100 (S350). In this case, the predictive model is installed in the robot 100. The artificial intelligence module 200 may be installed in the robot 100 as the GPU in which the artificial intelligence module 200 is implemented is mounted inside the robot 100 and electrically connected to a unit included in the robot 100. there is. The artificial intelligence module 200 includes a sensing unit 110, a communication unit 125, an input unit 130, a memory 140, a control unit 170, a driving unit 150, an operation unit 155, and a charging unit 190. Signals can be exchanged directly or indirectly with at least one of them.

한편, 인공지능 모듈(200)이 인스톨되는 로봇(100)은, S310 단계에서 데이터 획득의 근원이 되는 제1 로봇과 다른 제2 로봇일 수 있다.On the other hand, the robot 100 to which the artificial intelligence module 200 is installed may be a second robot different from the first robot that is the source of data acquisition in step S310.

S350 단계는, 인공지능 모듈(200)이 로봇(100)의 제어부(170)와 전기적으로 연결되어 신호를 교환하는 단계를 포함할 수 있다.Step S350 may include a step in which the artificial intelligence module 200 is electrically connected to the control unit 170 of the robot 100 to exchange signals.

인공지능 모듈(200)이 로봇(100)에 인스톨된 상태에서, 로봇(100)은, 동작을 수행할 수 있다(S360). 로봇(100)은, 예측 모델에 기초하여 동작을 수행할 수 있다. In a state where the artificial intelligence module 200 is installed in the robot 100, the robot 100 may perform an operation (S360). The robot 100 may perform an operation based on a predictive model.

인공지능 모듈(200)은, 예측 모델에 예측 모델에 시간과 영역에 대한 데이터를 입력하여, 해당 시간과 해당 영역에 대한 유동인구와 오염도에 대한 예측 정보를 생성할 수 있다. 한편, 영역은, 대상 공간을 기 설정된 기준으로 분할하여 구분된 단위 공간으로 설명될 수 있다.The artificial intelligence module 200 may generate prediction information on the floating population and pollution level for a corresponding time and region by inputting data on time and region to the predictive model. Meanwhile, the region may be described as a unit space divided by dividing the target space based on a predetermined criterion.

인공지능 모듈(200)은, 예측 정보에 기초하여, 동작 스케줄을 생성할 수 있다. 인공지능 모듈(200)은, 예측 정보에 기초하여, 접객 동작, 방역 동작, 멸균 동작, 공기청정 동작, 청소 동작, 충전 동작 중 적어도 어느 하나의 동작에 대한 스케줄을 생성할 수 있다.The artificial intelligence module 200 may generate an operation schedule based on prediction information. The artificial intelligence module 200 may generate a schedule for at least one of customer service, quarantine, sterilization, air cleaning, cleaning, and charging based on the predicted information.

제어부(170)는, 생성된 스케줄에 따라 동작을 수행할 수 있다.The controller 170 may perform an operation according to the created schedule.

인공지능 모듈(200)은, 센싱부(110)에서 생성된 데이터를 수신할 수 있다(S370). The artificial intelligence module 200 may receive data generated by the sensing unit 110 (S370).

인공지능 모듈(200)은, 센싱부(110)에서 생성된 데이터에 기초하여, 반복적으로 기계 학습을 수행할 수 있다(S380).The artificial intelligence module 200 may repeatedly perform machine learning based on the data generated by the sensing unit 110 (S380).

한편, 인공지능 모듈(200)이 로봇(100)에 인스톨됨으로써, ROS(Robot Operating System), Darknet & YOLO, Cloud와 연관된 연산 처리시, 인공지능 모듈(200)이 활용될 수 있게 된다. On the other hand, since the artificial intelligence module 200 is installed in the robot 100, the artificial intelligence module 200 can be utilized during calculations related to ROS (Robot Operating System), Darknet & YOLO, and Cloud.

도 4는 본 발명의 실시예에 따른 로봇용 인공지능 플랫폼 제공 방법을 설명하는데 참조되는 도면이다.4 is a diagram referenced to explain a method for providing an artificial intelligence platform for robots according to an embodiment of the present invention.

도면을 참조하면, 인공지능 모듈(200)을 GPU로 구현하는 경우, GPU의 인스톨 대상 로봇(100)에 따라 GPU의 사양이 정해질 수 있다. 데이터 처리량이 더 많은 기능을 수행하는 로봇에 프로세싱 파워가 더 큰 GPU가 이용될 수 있다.Referring to the drawing, when the artificial intelligence module 200 is implemented as a GPU, specifications of the GPU may be determined according to the robot 100 to be installed. GPUs with greater processing power can be used for robots that perform functions with higher data throughput.

제1 동작을 수행하는 제1 로봇에는 제1 GPU(410)에 인공지능 모듈(200)이 구현되어 인스톨될 수 있다. 제2 동작을 수행하는 제2 로봇에는 제2 GPU(420)에 인공지능 모듈(200이 구현되어 인스톨될 수 있다. 제1 동작에 필요한 데이터 처리량은 제2 동작에 필요한 데이터 처리량보다 더 많다. 제1 GPU(410)의 프로세싱 파워는 제2 GPU(420)의 프로세싱 파워보다 더 크다. 제1 GPU(410)는, 고사양 GPU로 분류되고 제2 GPU(420)는, 저사양 GPU로 분류될 수 있다.The artificial intelligence module 200 may be implemented and installed in the first GPU 410 in the first robot performing the first operation. The artificial intelligence module 200 may be implemented and installed in the second GPU 420 in the second robot performing the second operation. The data processing amount required for the first operation is greater than the data processing amount required for the second operation. The processing power of one GPU 410 is greater than that of the second GPU 420. The first GPU 410 may be classified as a high-end GPU and the second GPU 420 may be classified as a low-spec GPU. .

로봇(100)에 GPU(410, 42)이 인스톨되어, 제어부(170)와 전기적으로 연결되는 경우, GPU(410, 420)와 제어부(170)는, 연동되어 로봇(100)을 제어할 수 있게 된다.When the GPUs 410 and 42 are installed in the robot 100 and electrically connected to the control unit 170, the GPUs 410 and 420 and the control unit 170 are interlocked to control the robot 100. do.

도 5는 본 발명의 실시예에 따른 로봇의 충전 동작을 설명하는데 참조되는 도면이다.5 is a diagram referenced to describe a charging operation of a robot according to an embodiment of the present invention.

도면을 참조하면, 충전 스테이션(400)은, 상용 전원으로부터 전기 에너지를 공급받아 로봇(100)에 제공할 수 있다. 충전 스테이션(400)은, 상용 전원에 연결된 상태로, 로봇(100)이 도킹되면, 로봇(100)에 전기 에너지를 공급할 수 있다. 로봇(100)과 충전 스테이션(400)은 로봇 시스템의 하위 개념으로 분류될 수 있다.Referring to the drawings, the charging station 400 may receive electrical energy from a commercial power source and provide the same to the robot 100 . The charging station 400 may supply electric energy to the robot 100 when the robot 100 is docked in a state connected to commercial power. The robot 100 and the charging station 400 may be classified as sub-concepts of a robot system.

통신부(125)는, 충전 스테이션(400)과 신호 교환을 할 수 있다. The communication unit 125 may exchange signals with the charging station 400 .

제어부(170)는, 배터리의 충전 필요 여부를 판단할 수 있다. 예를 들면, 제어부(170)는, 배터리의 잔존 전기 에너지 양을 기준으로 배터리의 충전 필요 여부를 판단할 수 있다. 예를 들면, 제어부(170)는, 로봇(100)의 임무 대비 잔존 전기 에너지 양을 기준으로 배터리의 충전 필요 여부를 판단할 수 있다. 제어부(170)는, 로봇(100)의 기능을 수행하기 위한 에너지량보다 배터리에 저장된 에너지량이 적은 경우, 배터리의 충전이 필요하다고 판단할 수 있다.The controller 170 may determine whether or not the battery needs to be charged. For example, the controller 170 may determine whether the battery needs to be charged based on the amount of remaining electric energy of the battery. For example, the controller 170 may determine whether or not the battery needs to be charged based on the amount of remaining electric energy compared to the task of the robot 100 . When the amount of energy stored in the battery is less than the amount of energy required to perform the functions of the robot 100, the controller 170 may determine that the battery needs to be charged.

제어부(170)는, 배터리의 충전이 필요하다고 판단되는 경우, 통신부(125)를 통해, 충전 스테이션(400)에 충전 대기 신호를 전송할 수 있다. When it is determined that the battery needs to be charged, the controller 170 may transmit a charging standby signal to the charging station 400 through the communication unit 125 .

충전 스테이션(400)은, 충전 대기 신호를 수신하는 경우, 대기 모드로 전환될 수 있다. 대기 모드로 전환되면, 충전 스테이션(400)은, 충전 스테이션의 각 유닛에 전원을 공급하여, 시스템을 웨이크업(wake up) 시킬 수 있다.The charging station 400 may switch to a standby mode when receiving a charging standby signal. When switched to the standby mode, the charging station 400 may wake up the system by supplying power to each unit of the charging station.

제어부(170)는, 배터리의 충전이 필요하다고 판단되는 경우, 충전 스테이션(400)을 향해 로봇(100)이 이동하도록 구동부(150)를 제어할 수 있다.When it is determined that the battery needs to be charged, the controller 170 may control the driving unit 150 to move the robot 100 toward the charging station 400 .

제어부(170)는, 로봇(100)과 충전 스테이션(400) 사이의 거리가 기준값 이내인지 판단할 수 있다. 예를 들면, 제어부(170)는, 통신 신호의 세기에 기초하여, 로봇(100)과 충전 스테이션(400) 사이의 거리를 산출하고, 거리가 기준값 이내인지 판단할 수 있다. 예를 들면, 제어부(170)는, 센싱부(110)에서 생성된 데이터에 기초하여, 로봇(100)과 충전 스테이션(400) 사이의 거리를 산출하고, 거리가 기준값 이내인지 판단할 수 있다.The controller 170 may determine whether the distance between the robot 100 and the charging station 400 is within a reference value. For example, the controller 170 may calculate the distance between the robot 100 and the charging station 400 based on the strength of the communication signal, and determine whether the distance is within a reference value. For example, the controller 170 may calculate a distance between the robot 100 and the charging station 400 based on data generated by the sensing unit 110 and determine whether the distance is within a reference value.

로봇(100)과 충전 스테이션(400) 사이의 거리가 기준값 이내인 것으로 판단되는 경우, 제어부(170)는, 제1 통신부(125)를 통해, 충전 스테이션(400)에 충전 준비 신호를 전달할 수 있다.When it is determined that the distance between the robot 100 and the charging station 400 is within the reference value, the controller 170 may transmit a charging preparation signal to the charging station 400 through the first communication unit 125. .

충전 스테이션(400)은, 충전 준비 신호를 수신하는 경우, 준비 모드로 전환될 수 있다. 준비 모드로 전환되면, 충전 스테이션(400)은, 입체 마커를 돌출시킬 수 있다.The charging station 400 may switch to a preparation mode when receiving a charging preparation signal. When switched to the preparation mode, the charging station 400 may project a three-dimensional marker.

제어부(170)는, 로봇(100)이 충전 스테이션(400)에 도킹되도록 구동부(150)를 제어할 수 있다.The controller 170 may control the driving unit 150 so that the robot 100 is docked with the charging station 400 .

제어부(170)는, 충전 스테이션(400) 대비 로봇(100)의 상대적 위치를 판단할 수 있다.The controller 170 may determine the relative position of the robot 100 relative to the charging station 400 .

제어부(170)는, 카메라로부터, 충전 스테이션(400)의 마커를 촬영한 영상 데이터를 수신할 수 있다. 제어부(170)는, 영상 데이터에서 검출된 입체 마커의 상태에 기초하여, 충전 스테이션 대비 로봇(100)의 상대적 위치를 판단할 수 있다. The controller 170 may receive image data obtained by photographing the marker of the charging station 400 from the camera. The controller 170 may determine the relative position of the robot 100 relative to the charging station based on the state of the three-dimensional marker detected in the image data.

한편, 마커는, 로봇(100)이 충전 스테이션(400)에 도킹하는데 도움을 주기 위한 요소로, 충전 스테이션(400)에 배치된다. 마커는 제1 마커, 제2 마커, 제3 마커를 포함할 수 있다. 제1 마커는, 입체 마커로 명명될 수 있다. 제1 마커는, 제공되는 동력에 따라 직선 운동할 수 있다. 제1 마커는, 제공되는 동력에 의해 제1 높이만큼 충전 스테이션의 표면에서 돌출될 수 있다. 제1 마커는, 제공되는 동력에 의해 수납될 수 있다.Meanwhile, the marker is an element to help the robot 100 dock to the charging station 400, and is disposed on the charging station 400. The markers may include a first marker, a second marker, and a third marker. The first marker may be referred to as a three-dimensional marker. The first marker may linearly move according to the provided power. The first marker may protrude from the surface of the charging station by a first height due to the provided power. The first marker may be accommodated by provided power.

돌출된 상태의 제1 마커는, 위에서 볼 때, 센터라인 상에 위치할 수 있다. 제2 마커는, 제1 마커와 제1 방향으로 제1 거리만큼 이격된다. 제3 마커는, 제1 마커와 제1 방향과 반대 방향인 제2 방향으로 제1 거리만큼 이격된다.The first marker in a protruding state may be located on the centerline when viewed from above. The second marker is spaced apart from the first marker by a first distance in a first direction. The third marker is spaced apart from the first marker by a first distance in a second direction opposite to the first direction.

제어부(170)는, 수신된 영상 데이터에서, 제1 마커 이미지, 제2 마커 이미지 및 제3 마커 이미지를 검출할 수 있다.The controller 170 may detect a first marker image, a second marker image, and a third marker image from the received image data.

제1 마커 이미지가 제2 마커 이미지에 더 근접하거나, 제3 마커 이미지에 더 근접한 경우, 제어부(170)는, 로봇(100)이 센터 라인에 위치하지 않는 것으로 판단할 수 있다.When the first marker image is closer to the second marker image or closer to the third marker image, the controller 170 may determine that the robot 100 is not positioned on the center line.

제1 마커 이미지가 제2 마커 이미지 및 제3 마커 이미지의 가운데에 위치한 경우, 제어부(170)는, 로봇(100)이 센터 라인에 위치한 것으로 판단할 수 있다. 여기서, 가운데는, 수학적으로 정확한 중심을 의미하지 않고, 작은 수치의 오차를 반영하여, 좌측과 우측으로 소정의 배리언스(variance)를 두는 정도까지 의미한다. 한편, 센터 라인은, 위에서 볼때 바닥에서 제2 마커와 제3 마커의 사이의 중심을 가르면서 충전 스테이션의 적어도 하나의 모서리에 직각되게 형성된 가상의 선으로 정의할 수 있다.When the first marker image is located in the center of the second and third marker images, the controller 170 may determine that the robot 100 is located on the center line. Here, the center does not mean a mathematically accurate center, but means a degree of leaving a predetermined variance to the left and right sides by reflecting a small numerical error. Meanwhile, the center line may be defined as a virtual line perpendicular to at least one corner of the charging station while dividing the center between the second marker and the third marker from the floor when viewed from above.

로봇(100)이 센터 라인에 위치하는 것으로 판단되는 경우, 제어부(170)는, 로봇(100)이 충전 스테이션(400)을 향해 직선 이동하도록 구동부(150)를 제어할 수 있다. 제어부(170)는, 로봇(100)의 직선 이동을 통해, 도킹을 시도할 수 있다.When it is determined that the robot 100 is located on the center line, the controller 170 may control the driving unit 150 so that the robot 100 linearly moves toward the charging station 400 . The controller 170 may attempt docking through linear movement of the robot 100 .

제어부(170)는, 로봇(100)이 충전 스테이션(400)에 도킹 완료 되었는지 판단할 수 있다.The controller 170 may determine whether the docking of the robot 100 to the charging station 400 is completed.

예를 들면, 충전 스테이션(400)은, 준비 모드 상태에서, 충전 스테이션(400)의 충전 단자에 상대적으로 약한 전류를 유입시킬 수 있다. 제어부(170)는, 충전부(190)의 충전 단자 약한 전류가 유입되는 것이 감지되는 경우, 로봇(100)이 충전 스테이션(400)에 도킹 완료된 것으로 판단할 수 있다. 이를 위해, 충전부(190)는, 전류 감지기를 포함할 수 있다.For example, the charging station 400 may introduce a relatively weak current into a charging terminal of the charging station 400 in a ready mode state. The controller 170 may determine that the robot 100 has been docked to the charging station 400 when it is sensed that a weak current flows into the charging terminal of the charging unit 190 . To this end, the charging unit 190 may include a current sensor.

예를 들면, 제어부(170)는, 로봇(100)의 중심이 센터 라인위에 위치하고, 센싱부(110)에서 생성되는 센싱 데이터에 기초하여 산출된 로봇(100)과 충전 스테이션(400) 사이의 거리가 기 설정 범위 내에 있는 경우, 로봇(100)이 충전 스테이션(400)에 도킹 완료된 것으로 판단할 수 있다.For example, the control unit 170 determines that the center of the robot 100 is located on the center line and the distance between the robot 100 and the charging station 400 calculated based on sensing data generated by the sensing unit 110 When is within a preset range, it may be determined that the robot 100 is docked with the charging station 400 .

예를 들면, 충전 스테이션(400)은, 로봇(100)이 입체 마커에 접촉하였는지 판단할 수 있다. 로봇(100)이 센터 라인을 따라 충전 스테이션(400)을 향해 직선 이동하면서, 입체 마커에 접촉하면, 입체 마커는, 로봇(100)의 이동 방향으로 약간의 직선 운동을 한다. 입체 마커의 의도되지 않은 직선 운동이 감지되면, 충전 스테이션(400)은, 로봇(100)이 충전 스테이션(400)에 도킹 완료된 것으로 판단할 수 있다. 충전 스테이션(400)은, 로봇(100)에 도킹 완료 상태 정보를 전송할 수 있다. 제어부(170)는, 충전 스테이션(400)에서 수신된 정보에 기초하여, 로봇(100)이 충전 스테이션(400)에 도킹 완료된 것으로 판단할 수 있다.For example, the charging station 400 may determine whether the robot 100 has contacted the three-dimensional marker. When the robot 100 touches the three-dimensional marker while linearly moving toward the charging station 400 along the center line, the three-dimensional marker makes a slight linear motion in the moving direction of the robot 100 . When an unintended linear motion of the three-dimensional marker is detected, the charging station 400 may determine that the robot 100 has been docked to the charging station 400 . The charging station 400 may transmit docking completion state information to the robot 100 . The controller 170 may determine that the docking of the robot 100 to the charging station 400 is completed based on the information received from the charging station 400 .

로봇(100)이 충전 스테이션(400)에 도킹된 것으로 판단되는 경우, 제어부(170)는, 충전 스테이션(400)에 충전 요청 신호를 전달할 수 있다.When it is determined that the robot 100 is docked with the charging station 400, the controller 170 may transmit a charging request signal to the charging station 400.

제어부(170)는, 로봇(100)과 충전 스테이션(400) 사이의 도킹 여부에 따라, 릴레이의 온(on) 오프(off)를 제어할 수 있다. 예를 들면, 로봇(100)이 충전 스테이션(400)에 도킹 완료되는 경우, 로봇(100)은 충전 모드로 전환될 수 있다. 충전 모드로 전환되는 경우, 제어부(170)는, 릴레이를 온(on) 상태로 전환할 수 있다.The controller 170 may control on/off of the relay according to whether the robot 100 and the charging station 400 are docked. For example, when the docking of the robot 100 to the charging station 400 is completed, the robot 100 may be switched to a charging mode. When switching to the charging mode, the controller 170 may switch the relay to an on state.

로봇(100)이 충전 스테이션(400)에 도킹 완료되는 경우, 충전 스테이션(400)은 충전 모드로 전환될 수 있다. When the docking of the robot 100 to the charging station 400 is completed, the charging station 400 may be switched to a charging mode.

충전 모드에서 충전 스테이션(400)은, 로봇(100)의 충전부(190)에 전원을 인가하고, 충전 시작 신호를 로봇(100)에 전송할 수 있다.In the charging mode, the charging station 400 may apply power to the charging unit 190 of the robot 100 and transmit a charging start signal to the robot 100 .

제어부(170)는, 충전 스테이션(400)에서 제공되는 전기 에너지로 배터리를 충전할 수 있다.The controller 170 may charge the battery with electric energy provided from the charging station 400 .

제어부(170)는, 배터리의 충전이 완료된 것으로 판단되는 경우, 충전 완료 신호를 충전 스테이션(400)에 전달할 수 있다.When it is determined that the battery is fully charged, the controller 170 may transmit a charging completion signal to the charging station 400 .

충전 완료 신호가 수신되는 경우, 충전 스테이션(400)은, 전기에너지 공급을 중단할 수 있다.When the charge completion signal is received, the charging station 400 may stop supplying electrical energy.

전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 상기 컴퓨터는 프로세서 또는 제어부를 포함할 수도 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.The above-described present invention can be implemented as computer readable code on a medium on which a program is recorded. The computer-readable medium includes all types of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable media include Hard Disk Drive (HDD), Solid State Disk (SSD), Silicon Disk Drive (SDD), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. there is Also, the computer may include a processor or a control unit. Accordingly, the above detailed description should not be construed as limiting in all respects and should be considered illustrative. The scope of the present invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the present invention are included in the scope of the present invention.

100 : 로봇
S300 : 로봇용 인공지능 플랫폼 제공 방법
100: robot
S300: How to provide artificial intelligence platform for robots

Claims (5)

인공지능 모듈이, 획득된 데이터를 트레이닝 데이터로 사용하여 기계 학습을 수행하는 단계;
상기 인공지능 모듈이, 상기 기계 학습의 결과값에 기초하여, 로봇의 적어도 하나의 동작에 관한 예측 모델을 생성하는 단계;
상기 예측 모델이 GPU(Graphics Processing Unit)에 인스톨되는 단계;
상기 GPU가 PCB에 실장된 상태로, 로봇의 바디 내부에 배치되어, 로봇의 센싱부 및 제어부와 전기적으로 연결되는 단계; 및
로봇이, 상기 예측 모델에 기초하여 주행 경로를 생성하고, 생성된 경로를 따라 자율 주행하는 단계;를 포함하는 로봇용 인공지능 모델 제공 방법.
Performing, by an artificial intelligence module, machine learning using the acquired data as training data;
generating, by the artificial intelligence module, a prediction model for at least one motion of the robot based on a result value of the machine learning;
installing the prediction model in a graphics processing unit (GPU);
placing the GPU in a body of a robot in a state where the GPU is mounted on a PCB, and electrically connecting to a sensing unit and a control unit of the robot; and
A method for providing an artificial intelligence model for robots, comprising: generating, by a robot, a travel path based on the prediction model, and autonomously traveling along the created path.
제 1항에 있어서,
상기 전기적으로 연결되는 단계는,
상기 GPU가, 상기 제어부와 신호를 교환하는 단계;를 포함하는 로봇용 인공지능 모델 제공 방법.
According to claim 1,
The step of electrically connecting,
The method of providing an artificial intelligence model for a robot comprising the; exchanging a signal with the control unit by the GPU.
제 2항에 있어서,
상기 GPU가, 상기 센싱부에서 생성된 데이터를 수신하는 단계;를 더 포함하는 로봇용 인공지능 모델 제공 방법.
According to claim 2,
The method for providing an artificial intelligence model for a robot further comprising receiving, by the GPU, data generated by the sensing unit.
제 3항에 있어서,
상기 GPU가, 상기 센싱부에서 생성된 데이터에 기초하여, 반복적으로 기계 학습을 수행하는 단계;를 더 포함하는 로봇용 인공지능 모델 제공 방법.
According to claim 3,
The GPU, based on the data generated by the sensing unit, iteratively performing machine learning; method for providing an artificial intelligence model for a robot further comprising.
제 1항에 있어서,
로봇이, 상기 예측 모델에 기초하여 기 설정된 동작을 수행하는 단계;를 더 포함하는 로봇용 인공지능 모델 제공 방법.

According to claim 1,
A method for providing an artificial intelligence model for robots, further comprising: performing, by the robot, a predetermined operation based on the predictive model.

KR1020220021021A 2021-07-08 2022-02-17 Method for providing artificial intelligence model for robot KR102642036B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220021021A KR102642036B1 (en) 2021-07-08 2022-02-17 Method for providing artificial intelligence model for robot

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210089513A KR102366333B1 (en) 2021-07-08 2021-07-08 Method for providing artificial intelligence platform
KR1020220021021A KR102642036B1 (en) 2021-07-08 2022-02-17 Method for providing artificial intelligence model for robot

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020210089513A Division KR102366333B1 (en) 2021-07-08 2021-07-08 Method for providing artificial intelligence platform

Publications (2)

Publication Number Publication Date
KR20230009280A true KR20230009280A (en) 2023-01-17
KR102642036B1 KR102642036B1 (en) 2024-02-28

Family

ID=80490405

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020210089513A KR102366333B1 (en) 2021-07-08 2021-07-08 Method for providing artificial intelligence platform
KR1020220021021A KR102642036B1 (en) 2021-07-08 2022-02-17 Method for providing artificial intelligence model for robot

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020210089513A KR102366333B1 (en) 2021-07-08 2021-07-08 Method for providing artificial intelligence platform

Country Status (1)

Country Link
KR (2) KR102366333B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018206286A (en) * 2017-06-09 2018-12-27 川崎重工業株式会社 Operation prediction system and operation prediction method
KR20190041831A (en) * 2017-10-13 2019-04-23 네이버랩스 주식회사 Controlling mobile robot based on reinforcement learning using game environment abstraction
KR101987133B1 (en) 2017-01-31 2019-06-10 (주) 한호기술 Unmanned autonomous driving robot for pest control
JP2020104215A (en) * 2018-12-27 2020-07-09 川崎重工業株式会社 Robot control device, robot system and robot control method
JP2021065955A (en) * 2019-10-21 2021-04-30 キヤノン株式会社 Robot control system, control method for the same, and program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101987133B1 (en) 2017-01-31 2019-06-10 (주) 한호기술 Unmanned autonomous driving robot for pest control
JP2018206286A (en) * 2017-06-09 2018-12-27 川崎重工業株式会社 Operation prediction system and operation prediction method
KR20190041831A (en) * 2017-10-13 2019-04-23 네이버랩스 주식회사 Controlling mobile robot based on reinforcement learning using game environment abstraction
JP2020104215A (en) * 2018-12-27 2020-07-09 川崎重工業株式会社 Robot control device, robot system and robot control method
JP2021065955A (en) * 2019-10-21 2021-04-30 キヤノン株式会社 Robot control system, control method for the same, and program

Also Published As

Publication number Publication date
KR102642036B1 (en) 2024-02-28
KR102366333B1 (en) 2022-02-25

Similar Documents

Publication Publication Date Title
JP7356567B2 (en) Mobile robot and its control method
KR102639675B1 (en) Mobile Robot System, Mobile Robot And Method Of Controlling Mobile Robot System
Patel et al. Sensor modality fusion with CNNs for UGV autonomous driving in indoor environments
US10823576B2 (en) Systems and methods for robotic mapping
KR102670610B1 (en) Robot for airport and method thereof
CN112438664B (en) Robot cleaner for recognizing blocking situation through artificial intelligence and operation method thereof
CN112352207A (en) Autonomous mobile robot and control method thereof
CN112401747B (en) Robot cleaner avoiding jamming situation through artificial intelligence and operation method thereof
CN204423154U (en) A kind of automatic charging toy robot based on independent navigation
Bista et al. Image-based indoor topological navigation with collision avoidance for resource-constrained mobile robots
KR102224637B1 (en) Moving robot and control method thereof
KR102366332B1 (en) Robot with artificial intelligence algorithm
KR102366333B1 (en) Method for providing artificial intelligence platform
KR102147211B1 (en) Controlling method for Artificial intelligence Moving robot
Peter et al. Development of a low-cost multipurpose autonomous navigation robot
CN111837084A (en) Control device, control method, and program
CN114663754A (en) Detection method, detection device, multi-legged robot and storage medium
KR20230077847A (en) Autonomous driving robot with artificial intelligence algorithm
Yang et al. Research into the application of AI robots in community home leisure interaction
US20210107143A1 (en) Recording medium, information processing apparatus, and information processing method
KR102361130B1 (en) Moving robot and control method thereof
Mohtaseb et al. An Intelligent Mobile Robot that Localizes itself Inside a Maze
WO2024137503A1 (en) Learning an ego state model through perceptual boosting
Bubeníková et al. Robotic System for Mapping of the Environment for Industry 4.0 Applications
Bhargava et al. Design and Development of a Visual-SLAM based Automated Guided Vehicle

Legal Events

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