KR20230009280A - Method for providing artificial intelligence model for robot - Google Patents
Method for providing artificial intelligence model for robot Download PDFInfo
- 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
Links
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 78
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000010801 machine learning Methods 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims abstract description 15
- 238000012549 training Methods 0.000 claims abstract description 9
- 230000033001 locomotion Effects 0.000 claims description 9
- 238000007600 charging Methods 0.000 description 75
- 239000003550 marker Substances 0.000 description 31
- 238000013528 artificial neural network Methods 0.000 description 20
- 238000004891 communication Methods 0.000 description 13
- 238000004140 cleaning Methods 0.000 description 11
- 238000004659 sterilization and disinfection Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000003032 molecular docking Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000001954 sterilising effect Effects 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000002360 preparation method Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000010363 phase shift Effects 0.000 description 3
- 239000000126 substance Substances 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000011109 contamination Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 208000035473 Communicable disease Diseases 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000000356 contaminant Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000005507 spraying Methods 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/008—Artificial 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning 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
Description
본 발명은 로봇용 인공지능 모델 제공 방법에 관한 것이다.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.
본 발명은 상기한 문제점을 해결하기 위하여, 로봇 제조 후 소비자에게 인도된 시점부터 주어진 임무를 효율적으로 수행할 수 있도록 로봇용 인공지능 플랫폼 제공 방법을 제공하는데 목적이 있다. 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
한편, 로봇(100)은, 내부에 포함된 배터리로부터 전기 에너지를 공급받는다. 멀티 동작을 수행하는 동안에 전기 에너지를 공급받기 위해서는, 상황에 맞춰 충전이 이루어져야 한다. 로봇은 상술한 동작 외에 충전 동작을 수행할 수 있다.Meanwhile, the
한편, 실시예에 따라, 로봇(100)의 범위에는 의료용 배송 로봇, 방역 로봇, 방역 접객 로봇, 이동형 협동 로봇, 청소 로봇, 특정 공간에 설치되는 디바이스(예를 들면, 출입 관리 시스템, 키오스크)까지 포함될 수 있다.Meanwhile, depending on the embodiment, the scope of the
도 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
로봇(100)은, 센싱부(110), 인공지능 모듈(200), 통신부(125), 입력부(130), 메모리(140), 제어부(170), 구동부(150), 동작부(155) 및 충전부(190)를 포함할 수 있다.The
센싱부(110)는, 로봇(100) 내부 또는 외부의 상황을 감지할 수 있다. 센싱부(110)는, 적어도 하나의 센서에서 생성된 데이터를 제어부(170)에 제공할 수 있다. 제어부(170)는, 센싱부(110)로부터 수신된 데이터에 기초하여 동작을 수행할 수 있다.The
센싱부(110)는, 대상 공간에서 사람을 검출할 수 있다. 예를 들면, 센싱부(110)는, 카메라로 촬영된 영상 분석을 통해, 대상 공간에서 사람을 검출할 수 있다.The
센싱부(110)는, 대상 공간의 오염도를 측정할 수 있다. 예를 들면, 센싱부(110)는, 환경 센서에서 생성된 데이터를 통해, 대상 공간의 오염도를 측정할 수 있다.The
한편, 센싱부(110)는, 로봇(100)이 자율 주행하는 도중에 내부 또는 외부의 상황을 감지할 수 있다.Meanwhile, the
센싱부(110)는, 복수의 센서를 포함한다. 센싱부(110)는, 초음파 센서, 라이다, 레이다, 적외선 센서, 카메라, 환경 센서, IMU(Inertial Measurement Unit)를 포함할 수 있다.The
초음파 센서는, 초음파를 이용하여, 로봇(100) 외부의 오브젝트를 감지할 수 있다. The ultrasonic sensor may sense an object outside the
초음파 센서는, 초음파 송신부, 수신부를 포함할 수 있다. 실시예에 따라, 초음파 센서는, 초음파 송신부, 수신부와 전기적으로 연결되어, 수신되는 신호를 처리하고, 처리된 신호에 기초하여 오브젝트에 대한 데이터를 생성하는 적어도 하나의 제어부를 더 포함할 수 있다. 초음파 센서의 제어부 기능은 제어부(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
초음파 센서는, 초음파를 기초로 오브젝트를 검출하고, 검출된 오브젝트의 위치, 검출된 오브젝트와의 거리 및 상대 속도를 검출할 수 있다. 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
라이다는, 레이저 광을 이용하여, 로봇(100) 외부의 오브젝트를 감지할 수 있다. LIDAR may sense an object outside the
라이다는, 광 송신부 및 광 수신부를 포함할 수 있다. 실시예에 따라, 라이다는, 광 송신부 및 광 수신부와 전기적으로 연결되어, 수신되는 신호를 처리하고, 처리된 신호에 기초하여 오브젝트에 대한 데이터를 생성하는 적어도 하나의 제어부를 더 포함할 수 있다. 라이다의 제어부 기능은 제어부(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
라이다는, 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
비구동식으로 구현되는 경우, 라이다는, 광 스티어링에 의해, 로봇(100)을 기준으로 소정 범위 내에 위치하는 오브젝트를 검출할 수 있다. When implemented as a non-driven type, lidar may detect an object located within a predetermined range with respect to the
로봇(100)은 복수의 비구동식 라이다를 포함할 수 있다. The
라이다는, 레이저 광 매개로, 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
레이다는, 전자파 송신부, 수신부를 포함할 수 있다. 레이더는 전파 발사 원리상 펄스 레이더(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
적외선 센서는, 적외선 송신부, 수신부를 포함할 수 있다. 적외선 센서는, 적외선 광을 기초로 오브젝트를 검출하고, 검출된 오브젝트의 위치, 검출된 오브젝트와의 거리 및 상대 속도를 검출할 수 있다.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
카메라는, 로봇(100) 외부 영상을 촬영할 수 있다.The camera may capture an external image of the
카메라는, 영상을 이용하여 로봇(100) 외부의 오브젝트에 대한 정보를 생성할 수 있다. 카메라는 적어도 하나의 렌즈, 적어도 하나의 이미지 센서 및 이미지 센서와 전기적으로 연결되어 수신되는 신호를 처리하고, 처리되는 신호에 기초하여 오브젝트에 대한 데이터를 생성하는 적어도 하나의 제어부를 포함할 수 있다.The camera may generate information about an object outside the
카메라는, 모노 카메라, 스테레오 카메라 중 적어도 어느 하나일 수 있다. 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
로봇(100)은, 복수의 카메라를 포함할 수 있다. 예를 들면, 로봇(100)은, 전방 카메라, 후방 카메라, 좌측방 카메라, 우측방 카메라를 구성된 4채널 카메라를 포함할 수 있다.The
환경 센서는, 대상 공간에 대한 오염도를 센싱할 수 있다. 예를 들면, 환경 센서는, 대상 공간에서의 방역 대상이 되는 생화학적 오염 물질의 유무, 농도 등을 센싱할 수 있다.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
IMU는, 가속도 센서, 자이로 센서, 자기 센서 중 적어도 어느 하나를 포함할 수 있다.The IMU may include at least one of an acceleration sensor, a gyro sensor, and a magnetic sensor.
인공지능 모듈(200)은, 머신 러닝으로 사물, 공간, 로봇(100)의 속성을 학습할 수 있다. 머신 러닝은 컴퓨터에게 사람이 직접 로직(Logic)을 지시하지 않아도 데이터를 통해 컴퓨터가 학습을 하고 이를 통해 컴퓨터가 알아서 문제를 해결하게 하는 것을 의미한다.The
딥러닝(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
예를 들어, 인공지능 모듈(200)은 딥러닝(Deep Learning)으로 학습된 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), DBN(Deep Belief Network) 등 심층신경망(Deep Neural Network: DNN)을 포함할 수 있다.For example, the
인공지능 모듈(200)은 상기 심층신경망(DNN)에 포함된 노드들 사이의 가중치(weight)들에 기초하여 입력되는 영상 데이터에 포함되는 공간, 사물의 속성을 판별할 수 있다.The
인공지능 모듈(200)은, 머신 러닝(machine learning)으로 기 학습된 데이터에 기초하여 상기 선택된 특정 시점 영상에 포함되는 공간, 장애물의 속성을 인식할 수 있다.The
한편, 메모리(140)에는 공간, 사물 속성 판별을 위한 입력 데이터, 상기 심층신경망(DNN)을 학습하기 위한 데이터가 저장될 수 있다.Meanwhile, the
메모리(140)에는 카메라가 획득한 원본 영상과 소정 영역이 추출된 추출 영상들이 저장될 수 있다.The
또한, 실시예에 따라서는, 메모리(140)에는 상기 심층신경망(DNN) 구조를 이루는 웨이트(weight), 바이어스(bias)들이 저장될 수 있다.Also, depending on embodiments, the
또는, 실시예에 따라서는, 상기 심층신경망 구조를 이루는 웨이트(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
한편, 인공지능 모듈(200)은 센싱부(110)를 통해 수신한 데이터를 트레이닝(training) 데이터로 사용하여 학습 과정을 수행할 수 있다.Meanwhile, the
로봇(100)은 통신부(125)를 통하여 상기 소정 서버로부터 머신 러닝과 관련된 데이터를 수신할 수 있다. 이 경우에, 로봇(100)은, 상기 소정 서버로부터 수신된 머신 러닝과 관련된 데이터에 기초하여 인공지능 모듈(200)을 업데이트(update)할 수 있다.The
로봇(100)의 동작으로 획득되는 데이터가 서버로 전송될 수 있다. 로봇(100)은, 서버로 공간(space), 사물(Object), 사용(Usage) 관련 데이터(Data)를 서버로 전송할 수 있다. 여기서, 공간(space), 사물(Object) 관련 데이터는 로봇(100)이 인식한 공간(space)과 사물(Object)의 인식 관련 데이터이거나, 카메라가 획득한 공간(space)과 사물(Object)에 대한 이미지 데이터일 수 있다. 또한, 사용(Usage) 관련 데이터(Data)는 소정 제품, 예를 들어, 로봇(100)의 사용에 따라 획득되는 데이터로, 사용 이력 데이터, 센싱부(110)에서 획득된 센싱 데이터 등이 해당될 수 있다.Data acquired by the operation of the
한편, 로봇(100)의 인공지능 모듈(200)에는 CNN(Convolutional Neural Network) 등 심층신경망 구조(DNN)가 탑재될 수 있다. 상기 학습된 심층신경망 구조(DNN)는 인식용 입력 데이터를 입력 받고, 입력 데이터에 포함된 사물, 공간의 속성을 인식하여, 그 결과를 출력할 수 있다. 또한, 상기 학습된 심층신경망 구조(DNN)는 인식용 입력 데이터를 입력 받고, 로봇(100)의 사용(Usage) 관련 데이터(Data)를 분석하고 학습하여 사용 패턴, 사용 환경 등을 인식할 수 있다. Meanwhile, the
한편, 공간(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
이에 따라, 로봇(100)은 점점 더 똑똑해지고, 사용할수록 진화되는 사용자 경험(UX)을 제공할 수 있다.Accordingly, the
인공지능 모듈(200)은, 센싱부(110)를 통해 수신한 데이터를 트레이닝 데이터로 사용하여 오브젝트를 검출 동작의 학습 과정을 수행할 수 있다. 여기서, 오브젝트는, 로봇(100) 주변의 사물, 사람, 구조물 등 로봇(100)의 이동에 직접적 또는 간접적으로 영향을 주는 객체로 정의할 수 있다.The
인공지능 모듈(200)은, 센싱부(110)를 통해 수신한 데이터를 트레이닝 데이터로 사용하여 접객 동작, 방역 동작 또는 학습 동작의 학습 과정을 수행할 수 있다.The
인공지능 모듈(200)은, 센싱부(110)를 통해 수신한 데이터를 트레이닝 데이터로 사용하여 스케줄링 동작의 학습 과정을 수행할 수 있다.The
인공지능 모듈(200)은, GPU(Graphics Processing Unit)로 구현될 수 있다. GPU로 구현된 인공지능 모듈(200)이 로봇(100)에 물리적으로 인스톨되고 로봇 시스템의 일부가 될 수 있다.The
인공지능 모듈(200)이 구현된 GPU는, PCB(printed circuit board)에 실장된 상태로, 로봇의 바디 내부에 배치되어, 로봇(100)의 다른 구성들과 전기적으로 연결될 수 있다. 특히, 인공지능 모듈(200)은, 제어부(170)와 전기적으로 연결됨으로써, 신호를 교환하여 로봇(100)의 스마트한 제어가 가능하게 된다. 이경우, 인공지능 모듈(200)로 인해 로봇(100)의 머신 러닝에 기반한 동작 제어가 가능하게 된다.The GPU in which the
인공지능 모듈(200)은, 소프트웨어로 구현되거나, 하드웨어 형태로 구현될 수 있다. 인공지능 모듈(200)이 프로세서(예를 들면, GPU)로 구현되는 경우, 인공지능 모듈(200)이 구현된 프로세서로 명명될 수 있다.The
통신부(125)는, 로봇(100) 외부의 전자 장치(예를 들면, 사용자 단말기, 서버, 다른 이동 로봇, 충전 스테이션 등)와 신호를 교환할 수 있다. The
통신부(125)는, 외부의 전자 장치와 데이터를 교환할 수 있다.The
통신부(125)는, 통신을 수행하기 위해 송신 안테나, 수신 안테나, 각종 통신 프로토콜이 구현 가능한 RF(Radio Frequency) 회로 및 RF 소자 중 적어도 어느 하나를 포함할 수 있다. The
입력부(130)는, 사용자로부터 정보를 입력 받기 위한 것으로, 입력부(130)에서 수집한 데이터는, 제어부(170)에 의해 분석되어, 사용자의 제어 명령으로 처리될 수 있다.The
입력부(130)는, 음성 입력부, 터치 입력부를 포함할 수 있다. 실시예에 따라, 제스쳐 입력부 또는 기계식 입력부를 포함할 수 있다.The
음성 입력부는, 사용자의 음성 입력을 전기적 신호로 전환할 수 있다. 전환된 전기적 신호는, 제어부(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
터치 입력부는, 사용자의 터치 입력을 전기적 신호로 전환할 수 있다. 전환된 전기적 신호는 제어부(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
터치 입력부는, 사용자의 터치 입력을 감지하기 위한 터치 센서를 포함할 수 있다.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
제스쳐 입력부는, 사용자의 제스쳐 입력을 전기적 신호로 전환할 수 있다. 전환된 전기적 신호는 제어부(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
제스쳐 입력부는, 사용자의 제스쳐 입력을 감지하기 위한 적외선 센서 및 이미지 센서 중 적어도 어느 하나를 포함할 수 있다.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
메모리(140)는, 제어부(170)와 전기적으로 연결된다. 메모리(140)는 유닛에 대한 기본데이터, 유닛의 동작제어를 위한 제어데이터, 입출력 되는 데이터를 저장할 수 있다. 메모리(140)는, 제어부(170)에서 처리된 데이터를 저장할 수 있다. 메모리(140)는, 하드웨어적으로, ROM, RAM, EPROM, 플래시 드라이브, 하드 드라이브 중 적어도 어느 하나로 구성될 수 있다. 메모리(140)는 제어부(170)의 처리 또는 제어를 위한 프로그램 등, 로봇(100) 전반의 동작을 위한 다양한 데이터를 저장할 수 있다. 메모리(140)는, 제어부(170)와 일체형으로 구현될 수 있다. 실시예에 따라, 메모리(140)는, 제어부(170)의 하위 구성으로 분류될 수 있다.The
동작부(155)는, 로봇(100)에게 주어진 임무에 적합한 동작을 수행할 수 있다. 동작부(155)는, 접객 동작, 방역 동작, 멸균 동작, 공기청정 동작, 청소 동작 중 적어도 어느 하나의 동작을 수행할 수 있다.The
접객 동작은, 대상 공간 내에 있는 사람과 인터렉션 하는 동작일 수 있다.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
충전부(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
제어부(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
도 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
인공지능 모듈(200)은, 획득된 데이터를 트레이닝 데이터로 사용하여 기계 학습을 수행할 수 있다(S320).The
인공지능 모듈(200)은, 기계 학습의 결과값에 기초하여, 로봇의 적어도 하나의 동작에 관한 예측 모델을 생성할 수 있다(S330). 예측 모델은, 적어도 하나의 인공신경망(ANN)을 활용한 모델일 수 있다. 예측 모델은, 과거의 데이터를 학습하여 산출된 결과물로, 시간과 공간에 대한 인풋값을 입력하면 해당 시간과 공간에 대한 예측 데이터를 출력하는 모델로 이해될 수 있다.The
인공지능 모듈(200)은, GPU(Graphics Processing Unit)로 구현될 수 있다(S340). 이경우, 예측 모델은 GPU로 구현되게 된다. 가령, 인공지능 모듈(200)이 소프트웨어로 구현되는 경우, 소프트웨어를 GPU에 인스톨함으로써 인공지능 모듈(200)이 GPU로 구현될 수 있다. 한편, 실시예에 따라, 인공지능 모듈(200)이 하드웨어로 구현되는 경우, S340 단계는 생략될 수 있다.The
인공지능 모듈(200)이 GPU로 구현됨으로써, 분산 처리가 가능하게 되어, 연산의 효율성이 증대된다.Since the
한편, S340 단계에서, 로봇(100) 동작의 종류에 기초하여 GPU 사양이 결정될 수 있다.Meanwhile, in step S340, GPU specifications may be determined based on the type of operation of the
인공지능 모듈(200)은, 로봇(100)에 인스톨 될 수 있다(S350). 이경우, 예측 모델은 로봇(100)에 인스톨되게 된다. 인공지능 모듈(200)이 구현된 GPU가 로봇(100) 내부에 장착되고, 로봇(100)에 포함되는 유닛과 전기적으로 연결됨으로써, 인공지능 모듈(200)은, 로봇(100)에 인스톨될 수 있다. 인공지능 모듈(200)은, 센싱부(110), 통신부(125), 입력부(130), 메모리(140), 제어부(170), 구동부(150), 동작부(155), 충전부(190) 중 적어도 어느 하나와 직접적 또는 간접적으로 신호를 교환할 수 있다.The
한편, 인공지능 모듈(200)이 인스톨되는 로봇(100)은, S310 단계에서 데이터 획득의 근원이 되는 제1 로봇과 다른 제2 로봇일 수 있다.On the other hand, the
S350 단계는, 인공지능 모듈(200)이 로봇(100)의 제어부(170)와 전기적으로 연결되어 신호를 교환하는 단계를 포함할 수 있다.Step S350 may include a step in which the
인공지능 모듈(200)이 로봇(100)에 인스톨된 상태에서, 로봇(100)은, 동작을 수행할 수 있다(S360). 로봇(100)은, 예측 모델에 기초하여 동작을 수행할 수 있다. In a state where the
인공지능 모듈(200)은, 예측 모델에 예측 모델에 시간과 영역에 대한 데이터를 입력하여, 해당 시간과 해당 영역에 대한 유동인구와 오염도에 대한 예측 정보를 생성할 수 있다. 한편, 영역은, 대상 공간을 기 설정된 기준으로 분할하여 구분된 단위 공간으로 설명될 수 있다.The
인공지능 모듈(200)은, 예측 정보에 기초하여, 동작 스케줄을 생성할 수 있다. 인공지능 모듈(200)은, 예측 정보에 기초하여, 접객 동작, 방역 동작, 멸균 동작, 공기청정 동작, 청소 동작, 충전 동작 중 적어도 어느 하나의 동작에 대한 스케줄을 생성할 수 있다.The
제어부(170)는, 생성된 스케줄에 따라 동작을 수행할 수 있다.The
인공지능 모듈(200)은, 센싱부(110)에서 생성된 데이터를 수신할 수 있다(S370). The
인공지능 모듈(200)은, 센싱부(110)에서 생성된 데이터에 기초하여, 반복적으로 기계 학습을 수행할 수 있다(S380).The
한편, 인공지능 모듈(200)이 로봇(100)에 인스톨됨으로써, ROS(Robot Operating System), Darknet & YOLO, Cloud와 연관된 연산 처리시, 인공지능 모듈(200)이 활용될 수 있게 된다. On the other hand, since the
도 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
제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
로봇(100)에 GPU(410, 42)이 인스톨되어, 제어부(170)와 전기적으로 연결되는 경우, GPU(410, 420)와 제어부(170)는, 연동되어 로봇(100)을 제어할 수 있게 된다.When the
도 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
통신부(125)는, 충전 스테이션(400)과 신호 교환을 할 수 있다. The
제어부(170)는, 배터리의 충전 필요 여부를 판단할 수 있다. 예를 들면, 제어부(170)는, 배터리의 잔존 전기 에너지 양을 기준으로 배터리의 충전 필요 여부를 판단할 수 있다. 예를 들면, 제어부(170)는, 로봇(100)의 임무 대비 잔존 전기 에너지 양을 기준으로 배터리의 충전 필요 여부를 판단할 수 있다. 제어부(170)는, 로봇(100)의 기능을 수행하기 위한 에너지량보다 배터리에 저장된 에너지량이 적은 경우, 배터리의 충전이 필요하다고 판단할 수 있다.The
제어부(170)는, 배터리의 충전이 필요하다고 판단되는 경우, 통신부(125)를 통해, 충전 스테이션(400)에 충전 대기 신호를 전송할 수 있다. When it is determined that the battery needs to be charged, the
충전 스테이션(400)은, 충전 대기 신호를 수신하는 경우, 대기 모드로 전환될 수 있다. 대기 모드로 전환되면, 충전 스테이션(400)은, 충전 스테이션의 각 유닛에 전원을 공급하여, 시스템을 웨이크업(wake up) 시킬 수 있다.The charging
제어부(170)는, 배터리의 충전이 필요하다고 판단되는 경우, 충전 스테이션(400)을 향해 로봇(100)이 이동하도록 구동부(150)를 제어할 수 있다.When it is determined that the battery needs to be charged, the
제어부(170)는, 로봇(100)과 충전 스테이션(400) 사이의 거리가 기준값 이내인지 판단할 수 있다. 예를 들면, 제어부(170)는, 통신 신호의 세기에 기초하여, 로봇(100)과 충전 스테이션(400) 사이의 거리를 산출하고, 거리가 기준값 이내인지 판단할 수 있다. 예를 들면, 제어부(170)는, 센싱부(110)에서 생성된 데이터에 기초하여, 로봇(100)과 충전 스테이션(400) 사이의 거리를 산출하고, 거리가 기준값 이내인지 판단할 수 있다.The
로봇(100)과 충전 스테이션(400) 사이의 거리가 기준값 이내인 것으로 판단되는 경우, 제어부(170)는, 제1 통신부(125)를 통해, 충전 스테이션(400)에 충전 준비 신호를 전달할 수 있다.When it is determined that the distance between the
충전 스테이션(400)은, 충전 준비 신호를 수신하는 경우, 준비 모드로 전환될 수 있다. 준비 모드로 전환되면, 충전 스테이션(400)은, 입체 마커를 돌출시킬 수 있다.The charging
제어부(170)는, 로봇(100)이 충전 스테이션(400)에 도킹되도록 구동부(150)를 제어할 수 있다.The
제어부(170)는, 충전 스테이션(400) 대비 로봇(100)의 상대적 위치를 판단할 수 있다.The
제어부(170)는, 카메라로부터, 충전 스테이션(400)의 마커를 촬영한 영상 데이터를 수신할 수 있다. 제어부(170)는, 영상 데이터에서 검출된 입체 마커의 상태에 기초하여, 충전 스테이션 대비 로봇(100)의 상대적 위치를 판단할 수 있다. The
한편, 마커는, 로봇(100)이 충전 스테이션(400)에 도킹하는데 도움을 주기 위한 요소로, 충전 스테이션(400)에 배치된다. 마커는 제1 마커, 제2 마커, 제3 마커를 포함할 수 있다. 제1 마커는, 입체 마커로 명명될 수 있다. 제1 마커는, 제공되는 동력에 따라 직선 운동할 수 있다. 제1 마커는, 제공되는 동력에 의해 제1 높이만큼 충전 스테이션의 표면에서 돌출될 수 있다. 제1 마커는, 제공되는 동력에 의해 수납될 수 있다.Meanwhile, the marker is an element to help the
돌출된 상태의 제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
제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
제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
로봇(100)이 센터 라인에 위치하는 것으로 판단되는 경우, 제어부(170)는, 로봇(100)이 충전 스테이션(400)을 향해 직선 이동하도록 구동부(150)를 제어할 수 있다. 제어부(170)는, 로봇(100)의 직선 이동을 통해, 도킹을 시도할 수 있다.When it is determined that the
제어부(170)는, 로봇(100)이 충전 스테이션(400)에 도킹 완료 되었는지 판단할 수 있다.The
예를 들면, 충전 스테이션(400)은, 준비 모드 상태에서, 충전 스테이션(400)의 충전 단자에 상대적으로 약한 전류를 유입시킬 수 있다. 제어부(170)는, 충전부(190)의 충전 단자 약한 전류가 유입되는 것이 감지되는 경우, 로봇(100)이 충전 스테이션(400)에 도킹 완료된 것으로 판단할 수 있다. 이를 위해, 충전부(190)는, 전류 감지기를 포함할 수 있다.For example, the charging
예를 들면, 제어부(170)는, 로봇(100)의 중심이 센터 라인위에 위치하고, 센싱부(110)에서 생성되는 센싱 데이터에 기초하여 산출된 로봇(100)과 충전 스테이션(400) 사이의 거리가 기 설정 범위 내에 있는 경우, 로봇(100)이 충전 스테이션(400)에 도킹 완료된 것으로 판단할 수 있다.For example, the
예를 들면, 충전 스테이션(400)은, 로봇(100)이 입체 마커에 접촉하였는지 판단할 수 있다. 로봇(100)이 센터 라인을 따라 충전 스테이션(400)을 향해 직선 이동하면서, 입체 마커에 접촉하면, 입체 마커는, 로봇(100)의 이동 방향으로 약간의 직선 운동을 한다. 입체 마커의 의도되지 않은 직선 운동이 감지되면, 충전 스테이션(400)은, 로봇(100)이 충전 스테이션(400)에 도킹 완료된 것으로 판단할 수 있다. 충전 스테이션(400)은, 로봇(100)에 도킹 완료 상태 정보를 전송할 수 있다. 제어부(170)는, 충전 스테이션(400)에서 수신된 정보에 기초하여, 로봇(100)이 충전 스테이션(400)에 도킹 완료된 것으로 판단할 수 있다.For example, the charging
로봇(100)이 충전 스테이션(400)에 도킹된 것으로 판단되는 경우, 제어부(170)는, 충전 스테이션(400)에 충전 요청 신호를 전달할 수 있다.When it is determined that the
제어부(170)는, 로봇(100)과 충전 스테이션(400) 사이의 도킹 여부에 따라, 릴레이의 온(on) 오프(off)를 제어할 수 있다. 예를 들면, 로봇(100)이 충전 스테이션(400)에 도킹 완료되는 경우, 로봇(100)은 충전 모드로 전환될 수 있다. 충전 모드로 전환되는 경우, 제어부(170)는, 릴레이를 온(on) 상태로 전환할 수 있다.The
로봇(100)이 충전 스테이션(400)에 도킹 완료되는 경우, 충전 스테이션(400)은 충전 모드로 전환될 수 있다. When the docking of the
충전 모드에서 충전 스테이션(400)은, 로봇(100)의 충전부(190)에 전원을 인가하고, 충전 시작 신호를 로봇(100)에 전송할 수 있다.In the charging mode, the charging
제어부(170)는, 충전 스테이션(400)에서 제공되는 전기 에너지로 배터리를 충전할 수 있다.The
제어부(170)는, 배터리의 충전이 완료된 것으로 판단되는 경우, 충전 완료 신호를 충전 스테이션(400)에 전달할 수 있다.When it is determined that the battery is fully charged, the
충전 완료 신호가 수신되는 경우, 충전 스테이션(400)은, 전기에너지 공급을 중단할 수 있다.When the charge completion signal is received, the charging
전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, 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.
상기 전기적으로 연결되는 단계는,
상기 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.
상기 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.
상기 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.
로봇이, 상기 예측 모델에 기초하여 기 설정된 동작을 수행하는 단계;를 더 포함하는 로봇용 인공지능 모델 제공 방법.
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.
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)
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 |
-
2021
- 2021-07-08 KR KR1020210089513A patent/KR102366333B1/en active IP Right Grant
-
2022
- 2022-02-17 KR KR1020220021021A patent/KR102642036B1/en active IP Right Grant
Patent Citations (5)
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 |