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

Method for providing artificial intelligence model for robot Download PDF

Info

Publication number
KR102642036B1
KR102642036B1 KR1020220021021A KR20220021021A KR102642036B1 KR 102642036 B1 KR102642036 B1 KR 102642036B1 KR 1020220021021 A KR1020220021021 A KR 1020220021021A KR 20220021021 A KR20220021021 A KR 20220021021A KR 102642036 B1 KR102642036 B1 KR 102642036B1
Authority
KR
South Korea
Prior art keywords
robot
artificial intelligence
data
control unit
unit
Prior art date
Application number
KR1020220021021A
Other languages
Korean (ko)
Other versions
KR20230009280A (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

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

Abstract

본 발명은 인공지능 모듈이, 획득된 데이터를 트레이닝 데이터로 사용하여 기계 학습을 수행하는 단계; 상기 인공지능 모듈이, 상기 기계 학습의 결과값에 기초하여, 로봇의 적어도 하나의 동작에 관한 예측 모델을 생성하는 단계; 상기 예측 모델이 GPU(Graphics Processing Unit)에 인스톨되는 단계; 상기 GPU가 PCB에 실장된 상태로, 로봇의 바디 내부에 배치되어, 로봇의 센싱부 및 제어부와 전기적으로 연결되는 단계; 및 로봇이, 상기 예측 모델에 기초하여 주행 경로를 생성하고, 생성된 경로를 따라 자율 주행하는 단계;를 포함하는 로봇용 인공지능 모델 제공 방법에 관한 것이다.The present invention includes the steps of an artificial intelligence module performing 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 the results of the machine learning; Installing the prediction model into a GPU (Graphics Processing Unit); A step where the GPU is mounted on a PCB, placed inside the body of a robot, and electrically connected to a sensing unit and a control unit of the robot; It relates to a method of providing an artificial intelligence model for a robot, including a step of the robot generating a driving path based on the prediction model and autonomously driving along the generated path.

Description

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

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

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

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

이러한 인공 지능 기술이 적용된 로봇은 제조 시점에 충분한 센싱 데이터를 확보하지 못한 시점에서는 충분한 학습을 수행하지 못해 주어진 임무를 수행하는데 효율적인 움직임을 보이지 못하는 문제가 있다.Robots equipped with such artificial intelligence technology have the problem of not being able to perform sufficient learning when sufficient sensing data is not secured at the time of manufacturing, and thus not showing efficient movement in performing given tasks.

등록번호 10-1987133Registration number 10-1987133

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

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

상기 과제를 달성하기 위하여, 본 발명의 실시예에 따른 로봇용 인공지능 모델 제공 방법은, 인공지능 모듈이, 획득된 데이터를 트레이닝 데이터로 사용하여 기계 학습을 수행하는 단계; 상기 인공지능 모듈이, 상기 기계 학습의 결과값에 기초하여, 로봇의 적어도 하나의 동작에 관한 예측 모델을 생성하는 단계; 상기 예측 모델이 GPU(Graphics Processing Unit)에 인스톨되는 단계; 상기 GPU가 PCB에 실장된 상태로, 로봇의 바디 내부에 배치되어, 로봇의 센싱부 및 제어부와 전기적으로 연결되는 단계; 및 로봇이, 상기 예측 모델에 기초하여 주행 경로를 생성하고, 생성된 경로를 따라 자율 주행하는 단계;를 포함한다.In order to achieve the above task, a method of providing an artificial intelligence model for a robot according to an embodiment of the present invention includes the steps of an artificial intelligence module performing 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 the results of the machine learning; Installing the prediction model into a GPU (Graphics Processing Unit); A step where the GPU is mounted on a PCB, placed inside the body of a robot, and electrically connected to a sensing unit and a control unit of the robot; and a step of the robot generating a travel path based on the prediction model and autonomously driving along the generated path.

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

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

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

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

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

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

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

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

셋째, 로봇의 동작에 따라 저사양 GPU 또는 고사양 GPU 중 선택하여 인스톨할 수 있어 합리적인 제조 단가를 형성할 수 있다.Third, depending on the operation of the robot, you can choose to install either a low-end GPU or a high-end GPU, creating 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 diagram showing the appearance of a robot according to an embodiment of the present invention.
Figure 2 is a control block diagram of a robot according to an embodiment of the present invention.
Figure 3 is a flow chart of a method for providing an artificial intelligence platform for robots according to an embodiment of the present invention.
Figure 4 is a diagram referenced to explain a method of providing an artificial intelligence platform for robots according to an embodiment of the present invention.
Figure 5 is a diagram referenced for explaining the charging operation of the robot according to an embodiment of the present invention.

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

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

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

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

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

도 1은 본 발명의 실시예에 따른 로봇의 외관을 도시한 도면이다.1 is a diagram 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 robot) to which an artificial intelligence algorithm according to an embodiment of the present invention is applied is a robot that performs multiple operations. Specifically, the robot 100 runs autonomously in the target space and can perform customer service operations, quarantine operations, sterilization operations, air purification operations, cleaning operations, etc. Meanwhile, the target space may be defined as a space where the robot 100 performs various operations while autonomously driving.

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

한편, 실시예에 따라, 로봇(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 (e.g., an access management system, a kiosk). may be included.

도 2는 본 발명의 실시예에 따른 로봇의 제어 블럭도이다.Figure 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 actions while moving on its own in a specific space. The robot 100 may be referred to as an autonomous mobile robot. The robot 100 can drive autonomously. The robot 100 may generate a driving path based on data generated by the sensing unit 110 and the artificial intelligence module 200 and autonomously drive along the generated path.

로봇(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 operating unit 155, and It may include a charging unit 190.

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

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

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

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

센싱부(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, infrared sensor, camera, environmental sensor, and IMU (Inertial Measurement Unit).

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

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

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

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

라이다는, 레이저 광을 이용하여, 로봇(100) 외부의 오브젝트를 감지할 수 있다. Lidar can detect objects outside the robot 100 using laser light.

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

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

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

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

비구동식으로 구현되는 경우, 라이다는, 광 스티어링에 의해, 로봇(100)을 기준으로 소정 범위 내에 위치하는 오브젝트를 검출할 수 있다. When implemented in a non-driven manner, the LIDAR can detect objects located within a predetermined range based on the robot 100 through optical steering.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

예를 들면, 카메라는, 스테레오 카메라에서 획득된 스테레오 영상에서 디스패러티(disparity) 정보를 기초로 오브젝트와의 거리 정보 및 상대 속도 정보를 획득할 수 있다. For example, the camera may obtain distance information and relative speed information to an object based on disparity information in a stereo image acquired 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 four-channel camera consisting of a front camera, a rear camera, a left camera, and a right camera.

환경 센서는, 대상 공간에 대한 오염도를 센싱할 수 있다. 예를 들면, 환경 센서는, 대상 공간에서의 방역 대상이 되는 생화학적 오염 물질의 유무, 농도 등을 센싱할 수 있다.The environmental sensor can sense the level of pollution in the target space. For example, an environmental sensor can sense the presence or concentration of biochemical pollutants that are subject to quarantine in the target space.

IMU(Inertial Measurement Unit)는, 로봇(100)의 관성을 측정할 수 있다. IMU는, 가속도계와 회전 속도계, 때로는 자력계의 조합을 사용하여 로봇(100)의 특정한 힘, 각도 비율 및 때로는 로봇(100)을 둘러싼 자기장을 측정하는 전자 장치로 설명될 수 있다. 제어부(170)는, IMU로부터 수신되는 데이터에 기초하여 로봇(100)의 자세에 대한 정보를 생성할 수 있다.The IMU (Inertial Measurement Unit) can measure the inertia of the robot 100. An IMU can be described as an electronic device that measures specific forces, angular rates, and sometimes magnetic fields surrounding the robot 100 using a combination of accelerometers, tachometers, and sometimes magnetometers. The control unit 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 can learn the properties of objects, spaces, and robots 100 through machine learning. Machine learning means that a computer learns from data without a person directly instructing the computer to use logic, and through this, the computer solves problems on its own.

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

상기 인공신경망(ANN)은 소프트웨어 형태로 구현되거나 칩(chip) 등 하드웨어 형태로 구현될 수 있다.The artificial neural network (ANN) may be implemented in software form or in hardware form 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 properties of objects, such as spatial properties 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 CNN (Convolutional Neural Network), RNN (Recurrent Neural Network), and DBN (Deep Belief Network) learned through deep learning. may include.

인공지능 모듈(200)은 상기 심층신경망(DNN)에 포함된 노드들 사이의 가중치(weight)들에 기초하여 입력되는 영상 데이터에 포함되는 공간, 사물의 속성을 판별할 수 있다.The artificial intelligence module 200 can determine the properties 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 can recognize the properties of space and obstacles included in the selected specific viewpoint image based on data previously learned through machine learning.

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

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

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

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

한편, 인공지능 모듈(200)은 센싱부(110)를 통해 수신한 데이터를 트레이닝(training) 데이터로 사용하여 학습 과정을 수행할 수 있다.Meanwhile, the artificial intelligence module 200 may perform a learning process using 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 given 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 obtained through 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, data related to space and objects are data related to the recognition of space and objects recognized by the robot 100, or data related to space and objects acquired by the camera. It may be image data for In addition, usage-related data is data acquired according to the use of a certain product, for example, the robot 100, and may include usage history data, sensing data obtained from the sensing unit 110, etc. You 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 (DNN) structure such as CNN (Convolutional Neural Network). The learned deep neural network structure (DNN) can receive input data for recognition, recognize the properties of objects and spaces included in the input data, and output the results. In addition, the learned deep neural network structure (DNN) receives input data for recognition, analyzes and learns data related to the usage of the robot 100, and can recognize usage patterns, usage environments, etc. .

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

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

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

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

인공지능 모듈(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 for scheduling operations.

인공지능 모듈(200)은, GPU(Graphics Processing Unit)로 구현될 수 있다. GPU로 구현된 인공지능 모듈(200)이 로봇(100)에 물리적으로 인스톨되고 로봇 시스템의 일부가 될 수 있다.The artificial intelligence module 200 may be implemented with a GPU (Graphics Processing Unit). The artificial intelligence module 200 implemented with GPU can 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 on which the artificial intelligence module 200 is implemented may be mounted on a printed circuit board (PCB), placed inside the body of the robot, and 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, the artificial intelligence module 200 enables motion control of the robot 100 based on machine learning.

인공지능 모듈(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 with a processor (eg, GPU), the artificial intelligence module 200 may be referred to as the processor on which the artificial intelligence module 200 is implemented.

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

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

통신부(125)는, 통신을 수행하기 위해 송신 안테나, 수신 안테나, 각종 통신 프로토콜이 구현 가능한 RF(Radio Frequency) 회로 및 RF 소자 중 적어도 어느 하나를 포함할 수 있다. The communication unit 125 may include at least one of a transmitting antenna, a receiving 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 used to receive information from the user, and the data collected by the input unit 130 can be 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, it may include a gesture input unit or a mechanical input unit.

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

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

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

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

제스쳐 입력부는, 사용자의 제스쳐 입력을 전기적 신호로 전환할 수 있다. 전환된 전기적 신호는 제어부(170)에 제공될 수 있다.The gesture input unit may convert the user's gesture input into an electrical signal. The converted electrical signal may be provided to the control unit 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. The electrical signal generated by the mechanical input unit may be provided to the control unit 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 control unit 170. The memory 140 can 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 control unit 170. The memory 140 may be comprised of at least one of ROM, RAM, EPROM, flash drive, and hard drive in terms of hardware. The memory 140 may store various data for the overall operation of the robot 100, such as programs for processing or controlling 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 the task given to the robot 100. The operation unit 155 may perform at least one of a customer service operation, a quarantine operation, a sterilization operation, an air purification operation, and a cleaning operation.

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

방역 동작은, 방역 기능은 전염병 발생 또는 유행을 미리 막는 동작으로, 대상 공간 내에서 자율 주행하면서 화학적 소독 및 물리적 소독 동작 중 적어도 어느 하나를 수행하는 동작일 수 있다.The quarantine operation is an operation to prevent the outbreak 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 the target space.

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

공기청정 동작은, 대상 공간 내에서 자율 주행하면서, 대상 공간 내의 공기를 깨끗하게 하는 동작일 수 있다.The air cleaning operation may be an operation that cleans the air in the target space while autonomously driving within 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 driving within the target space.

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

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

제어부(170)는, 로봇(100)의 각 유닛의 전반적인 동작을 제어할 수 있다. 제어부(170)는 ECU(Electronic Control Unit)로 명명될 수 있다. 제어부(170)는, 로봇(100)의 각 유닛과 전기적으로 연결된다.The control unit 170 can control the overall operation of each unit of the robot 100. The control unit 170 may be called an Electronic Control Unit (ECU). The control unit 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 control unit 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 other electrical units for performing functions.

도 3은 본 발명의 실시예에 따른 로봇용 인공지능 플랫폼 제공 방법의 플로우 차트이다.Figure 3 is a flow chart 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 drawing, the artificial intelligence module 200 can acquire 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 acquired 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 prediction model for at least one operation of the robot based on the results of machine learning (S330). The prediction model may be a model using at least one artificial neural network (ANN). A prediction model is a result of learning past data, and can be understood as a model that outputs prediction data for that time and space when input values for time and space are input.

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

인공지능 모듈(200)이 GPU로 구현됨으로써, 분산 처리가 가능하게 되어, 연산의 효율성이 증대된다.As the artificial intelligence module 200 is implemented with GPU, distributed processing becomes possible, thereby increasing computational efficiency.

한편, 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 can be installed on the robot 100 (S350). In this case, the prediction model is installed in the robot 100. The GPU on which the artificial intelligence module 200 is implemented is mounted inside the robot 100 and electrically connected to the unit included in the robot 100, so that the artificial intelligence module 200 can be installed 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 operating 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 로봇일 수 있다.Meanwhile, the robot 100 on which the artificial intelligence module 200 is installed may be a second robot that is 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 where the artificial intelligence module 200 is electrically connected to the control unit 170 of the robot 100 and exchanges signals.

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

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

인공지능 모듈(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 a customer service operation, a quarantine operation, a sterilization operation, an air purification operation, a cleaning operation, and a charging operation, based on the prediction information.

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

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

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

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

도 4는 본 발명의 실시예에 따른 로봇용 인공지능 플랫폼 제공 방법을 설명하는데 참조되는 도면이다.Figure 4 is a diagram referenced to explain a method of 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 with a GPU, the specifications of the GPU may be determined depending on the robot 100 to which the GPU is installed. GPUs with greater processing power can be used for robots that perform functions requiring more data processing.

제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 on 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 1 GPU 410 is greater than that of the second GPU 420. The first GPU 410 may be classified as a high-spec 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 linked to control the robot 100. do.

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

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

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

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

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

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

제어부(170)는, 배터리의 충전이 필요하다고 판단되는 경우, 충전 스테이션(400)을 향해 로봇(100)이 이동하도록 구동부(150)를 제어할 수 있다.If it is determined that the battery needs to be charged, the control unit 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 control unit 170 may determine whether the distance between the robot 100 and the charging station 400 is within a reference value. For example, the control unit 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 control unit 170 may calculate the 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)에 충전 준비 신호를 전달할 수 있다.If it is determined that the distance between the robot 100 and the charging station 400 is within the reference value, the control unit 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 be switched to the ready mode when receiving a charging ready signal. When switched to the ready mode, the charging station 400 may project a three-dimensional marker.

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

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

제어부(170)는, 카메라로부터, 충전 스테이션(400)의 마커를 촬영한 영상 데이터를 수신할 수 있다. 제어부(170)는, 영상 데이터에서 검출된 입체 마커의 상태에 기초하여, 충전 스테이션 대비 로봇(100)의 상대적 위치를 판단할 수 있다. The control unit 170 may receive image data of a marker of the charging station 400 from a camera. The control unit 170 may determine the relative position of the robot 100 with respect 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 with the charging station 400 and is placed on the charging station 400. The marker may include a first marker, a second marker, and a third marker. The first marker may be called a three-dimensional marker. The first marker may move linearly according to the power provided. The first marker may protrude from the surface of the charging station by a first height by the provided power. The first marker can be stored 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 the 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 control unit 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 control unit 170 may determine that the robot 100 is not located at the center line.

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

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

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

예를 들면, 충전 스테이션(400)은, 준비 모드 상태에서, 충전 스테이션(400)의 충전 단자에 상대적으로 약한 전류를 유입시킬 수 있다. 제어부(170)는, 충전부(190)의 충전 단자 약한 전류가 유입되는 것이 감지되는 경우, 로봇(100)이 충전 스테이션(400)에 도킹 완료된 것으로 판단할 수 있다. 이를 위해, 충전부(190)는, 전류 감지기를 포함할 수 있다.For example, in the ready mode, the charging station 400 may introduce a relatively weak current into the charging terminal of the charging station 400. When it is detected that a weak current is flowing into the charging terminal of the charging unit 190, the control unit 170 may determine that the robot 100 has completed docking to the charging station 400. For this purpose, 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 the sensing data generated by the sensing unit 110. If it is within the set range, it may be determined that the robot 100 has completed docking to 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 moving straight toward the charging station 400 along the center line, the three-dimensional marker moves slightly in the direction of movement of the robot 100. When unintended linear movement 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 status information to the robot 100. The control unit 170 may determine that the robot 100 has completed docking to the charging station 400, based on information received from the charging station 400.

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

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

로봇(100)이 충전 스테이션(400)에 도킹 완료되는 경우, 충전 스테이션(400)은 충전 모드로 전환될 수 있다. When the robot 100 is completely docked at the charging station 400, the charging station 400 may be switched to 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 control unit 170 can charge the battery with electrical energy provided from the charging station 400.

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

충전 완료 신호가 수신되는 경우, 충전 스테이션(400)은, 전기에너지 공급을 중단할 수 있다.When a charging 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 present invention described above can be implemented as computer-readable code on a program-recorded medium. Computer-readable media includes all types of recording devices that store data that can be read by a computer system. Examples of computer-readable media include HDD (Hard Disk Drive), SSD (Solid State Disk), SDD (Silicon Disk Drive), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. There is. Additionally, the computer may include a processor or control unit. Accordingly, the above detailed description should not be construed as restrictive 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 an artificial intelligence platform for robots

Claims (5)

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

According to clause 1,
A method of providing an artificial intelligence model for a robot, further comprising: allowing the robot to perform a preset operation based on the prediction 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 KR20230009280A (en) 2023-01-17
KR102642036B1 true 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 (3)

* 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
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

Family Cites Families (2)

* 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
KR101974447B1 (en) * 2017-10-13 2019-05-02 네이버랩스 주식회사 Controlling mobile robot based on reinforcement learning using game environment abstraction

Patent Citations (3)

* 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
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
KR20230009280A (en) 2023-01-17
KR102366333B1 (en) 2022-02-25

Similar Documents

Publication Publication Date Title
CN110023867B (en) System and method for robotic mapping
JP7356567B2 (en) Mobile robot and its control method
Patel et al. Sensor modality fusion with CNNs for UGV autonomous driving in indoor environments
EP2952993B1 (en) Method for building a map of probability of one of absence and presence of obstacles for an autonomous robot
CN112438664B (en) Robot cleaner for recognizing blocking situation through artificial intelligence and operation method thereof
Harapanahalli et al. Autonomous Navigation of mobile robots in factory environment
Chatterjee et al. Vision based autonomous robot navigation: algorithms and implementations
KR20210051014A (en) Robot cleaner and operating method thereof
CN112401747B (en) Robot cleaner avoiding jamming situation through artificial intelligence and operation method thereof
CN112352207A (en) Autonomous mobile robot and control method thereof
CN204423154U (en) A kind of automatic charging toy robot based on independent navigation
CN107984474A (en) A kind of humanoid intelligent robot of half body and its control system
CN111630346B (en) Improved positioning of mobile devices based on images and radio words
Ahmad et al. End-to-end probabilistic depth perception and 3d obstacle avoidance using pomdp
KR102366328B1 (en) Mobile robot that implements charging safety through communication with the charging station, Automatic charging system of mobile robot and Control method of mobile robot
KR102642036B1 (en) Method for providing artificial intelligence model for robot
KR102366332B1 (en) Robot with artificial intelligence algorithm
KR102224637B1 (en) Moving robot and control method thereof
CN114563011A (en) Active auditory localization method for map-free navigation
Yang et al. Research into the application of AI robots in community home leisure interaction
Peter et al. Development of a low-cost multipurpose autonomous navigation robot
KR20230077847A (en) Autonomous driving robot with artificial intelligence algorithm
CN207953861U (en) A kind of humanoid intelligent robot of half body and its control system
US20210107143A1 (en) Recording medium, information processing apparatus, and information processing method
Crnokić et al. Fusion of infrared sensors and camera for mobile robot navigation system-simulation scenario

Legal Events

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