KR20190095182A - 인공지능을 이용하여 주행공간을 식별하는 방법, 학습모듈 및 카트로봇 - Google Patents

인공지능을 이용하여 주행공간을 식별하는 방법, 학습모듈 및 카트로봇 Download PDF

Info

Publication number
KR20190095182A
KR20190095182A KR1020190090023A KR20190090023A KR20190095182A KR 20190095182 A KR20190095182 A KR 20190095182A KR 1020190090023 A KR1020190090023 A KR 1020190090023A KR 20190090023 A KR20190090023 A KR 20190090023A KR 20190095182 A KR20190095182 A KR 20190095182A
Authority
KR
South Korea
Prior art keywords
cart robot
space
robot
data
cart
Prior art date
Application number
KR1020190090023A
Other languages
English (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 엘지전자 주식회사
Publication of KR20190095182A publication Critical patent/KR20190095182A/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0088Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62BHAND-PROPELLED VEHICLES, e.g. HAND CARTS OR PERAMBULATORS; SLEDGES
    • B62B3/00Hand carts having more than one axis carrying transport wheels; Steering devices therefor; Equipment therefor
    • B62B3/14Hand carts having more than one axis carrying transport wheels; Steering devices therefor; Equipment therefor characterised by provisions for nesting or stacking, e.g. shopping trolleys
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/028Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal

Abstract

인공지능을 이용하여 주행공간을 식별하는 방법, 학습모듈 및 카트로봇에 관한 것으로, 본 발명의 일 실시예에 의한 카트로봇은 진동 센서가 센싱한 데이터에서 특징 데이터를 추출하여 특징 데이터와 파라미터를 비교하여 카트로봇이 주행 중인 공간을 식별하고, 식별된 공간에 적합하게 이동부의 이동 방향 또는 이동 속도를 제어하거나 이동부에 인가되는 전기 에너지의 크기를 변화시킨다.

Description

인공지능을 이용하여 주행공간을 식별하는 방법, 학습모듈 및 카트로봇{METHOD OF IDENTIFYING DRIVING SPACE USING ARTIFICIAL INTELLIGENCE, LEARNING MODULE, AND CART-ROBOT OF IMPLEMENTING THEREOF}
본 발명은 인공지능을 이용하여 주행공간을 식별하는 방법, 학습모듈 및 카트로봇에 관한 기술이다.
대형 마트, 백화점, 공항, 골프장 등 인적, 물적 교류가 활발하게 발생하는 공간에서 다양한 사람들이 다양한 물건을 소지하고 이동한다. 이 경우, 사용자의 편의를 제공하기 위해 물건을 이동시킴에 있어서 카트와 같은 장치가 사용자를 보조할 수 있다.
종래에는 사용자가 카트를 직접 핸들링하여 이동시켰다. 그러나 공간 내에 사용자가 다양한 품목의 상품을 확인하는 과정에서 카트가 통로 중간에 배치될 수 있다. 이러한 상황에서 사용자가 매번 카트를 제어하는 것은 많은 시간과 노력을 필요로 한다.
따라서, 사용자가 자유롭게 이동하면서 다양한 활동을 하기 위해서는 카트와 같은 장치들을 사용자가 별도로 제어하지 않으면서도 카트가 사용자를 추종하며 이동하는 것이 필요하다. 이를 자율 모드라 한다. 또는 사용자의 제어에 따라 카트와 같은 장치들은 전기적 에너지를 이용하여 이동할 수 있다. 이를 반자율 모드라 한다. 그런데 자율 모드 또는 반자율 모드로 카트가 이동하는 주행면은 일률적인 바닥으로 구성되어 있지 않다.
특히, 주차장과 같이 차량이 이동하는 공간을 카트로봇이 이동하는 경우, 매장 공간의 노면과 차량 이동 공간의 노면은 상이하다. 따라서 카트로봇이 주행면의 변화를 인공지능을 이용하여 확인하고, 이에 적응적으로 카트로봇이 공간을 식별하는 방안에 대해 살펴본다.
본 명세서에서는 전술한 문제점을 해결하기 위한 것으로, 카트로봇이 주행면의 변화를 이용하여 공간을 식별하고자 한다.
본 명세서에서는 전술한 문제점을 해결하기 위한 것으로, 카트로봇이 주행 공간의 노면의 변화에 적응적으로 이동하여 심리스(seamless)한 주행을 가능하게 한다.
또한, 본 명세서에서는 카트로봇이 사용자의 제어에 따라 이동하되 주행 공간이 달라질 경우 안전성을 높이면서 이동할 수 있도록 한다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
본 발명의 일 실시예에 의한 인공지능을 이용하여 주행공간을 식별하는 카트로봇은 진동 센서가 센싱한 데이터에서 특징 데이터를 추출하여 특징 데이터와 파라미터를 비교하여 카트로봇이 주행 중인 공간을 식별하고, 식별된 공간에 적합하게 카트로봇의 이동부의 이동 방향 또는 이동 속도를 제어하거나 이동부에 인가되는 전기 에너지의 크기를 변화시킨다.
본 발명의 일 실시예에 의한 인공지능을 이용하여 주행공간을 식별하는 카트로봇은 핸들 어셈블리에 가해진 힘의 변화를 센싱하는 포스 센서의 로드셀이 진동을 센싱한다.
본 발명의 일 실시예에 의한 인공지능을 이용하여 주행공간을 식별하는 카트로봇은 공간을 식별한 결과에 따라 카트로봇의 이동부에 전기 에너지를 제공하는 모터의 PID 값을 조절한다.
본 발명의 일 실시예에 의한 인공지능을 이용하여 주행공간을 식별하는 카트로봇의 진동 센서는 로드셀을 포함하는 제1진동 센서와, IMU 센서를 포함하는 제2진동 센서를 포함하며, 카트로봇은 제1진동 센서의 신호를 버퍼링하여 제1특징 데이터를 산출한 후, 카트로봇이 주행 중인 공간을 식별하지 못할 경우, 카트로봇은 제2진동 센서의 신호를 버퍼링하여 제2특징 데이터를 산출한 후, 카트로봇이 주행 중인 공간을 식별한다.
본 발명의 일 실시예에 의한 인공지능을 이용하여 주행공간을 식별하는 카트로봇은 카트로봇의 주변에 배치된 장애물을 센싱하는 장애물 센서를 더 포함하며, 카트로봇은 식별된 공간에 적합하게 장애물 센서가 사물 또는 인체 중 어느 하나 이상을 더 정확하게 감지하도록 제어한다.
본 발명의 일 실시예에 의한 인공지능을 이용하여 주행공간을 식별하는 학습모듈은 카트로봇이 제1공간을 주행하는 과정에서 카트로봇의 진동 센서가 센싱한 제1데이터와, 카트로봇이 제2공간을 주행하는 과정에서 카트로봇의 진동 센서가 센싱한 제2데이터를 저장하는 저장부와, 저장부에 저장된 다수의 제1데이터 및 다수의 제2데이터를 분류하여 다수의 제1데이터를 제1공간으로 식별하며, 다수의 제2데이터를 제2공간으로 식별하는 파라미터를 생성하는 학습부를 포함한다.
본 발명의 일 실시예에 의한 카트로봇이 인공지능을 이용하여 주행공간을 식별하는 방법은 카트로봇의 이동부가 카트로봇을 이동시키는 단계와, 카트로봇의 진동 센서가 카트로봇의 이동 과정에서 발생한 진동을 센싱하는 단계와, 카트로봇의 제어부가 진동 센서가 센싱한 데이터에서 특징 데이터를 추출하는 단계와, 제어부가 특징 데이터와 파라미터를 비교하여 카트로봇이 주행 중인 공간을 식별하는 단계와, 제어부가 식별된 공간에 적합하게 이동부의 이동 방향 또는 이동 속도를 제어하거나 이동부에 인가되는 전기 에너지의 크기를 변화시키는 단계를 포함한다.
본 발명의 실시예들을 적용할 경우, 카트로봇은 노면의 변화를 진동 센서를 이용하여 확인하고 공간의 변경을 확인할 수 있다.
본 발명의 실시예들을 적용할 경우, 카트로봇이 변경된 공간을 식별하여 식별된 공간에 적응적으로 이동할 수 있도록 하여 이동 효율을 높일 수 있따.
본 발명의 실시예들을 적용할 경우, 카트로봇은 사용자의 제어에 따라 이동하되 주행 공간이 달라질 경우 안전성을 높이면서 이동할 수 있다.
본 발명의 효과는 전술한 효과에 한정되지 않으며, 본 발명의 당업자들은 본 발명의 구성에서 본 발명의 다양한 효과를 쉽게 도출할 수 있다.
도 1은 본 발명의 일 실시예에 의한 카트로봇의 외관을 보여준다.
도 2는 본 발명의 일 실시예에 의한 카트로봇의 제어모듈의 구성요소를 보여준다.
도 3은 본 발명의 일 실시예에 의한 카트로봇이 공간 내를 이동하는 과정에서 데이터를 수집하는 과정을 보여준다.
도 4는 본 발명의 일 실시예에 의한 카트로봇이 수집한 데이터를 학습하는 과정을 보여준다.
도 5는 본 발명의 일 실시예에 의한 카트로봇이 공간을 구분하는 과정을 보여준다.
도 6은 본 발명의 일 실시예에 의한 LAND1/LAND2에서 진동 센서가 센싱한 신호를 보여준다.
도 7은 본 발명의 일 실시예에 의한 진동 센서가 센싱한 값이 표시된 특징 맵을 보여준다.
도 8은 카트로봇(100)이 로드셀(245) 및 IMU 센서(247)를 이용하여 두 공간을 구분하는 과정을 보여준다.
도 9는 본 발명의 일 실시예에 의한 서버의 구성을 보여준다.
도 10은 본 발명의 일 실시예에 의한 학습모듈의 구성을 보여준다.
도 11 및 도 12는 본 발명의 일 실시예에 의한 장애물 센서의 센싱 특성을 조절하는 구성을 보여준다.
도 13은 본 발명의 일 실시예인 도 1에 도시된 카트로봇의 후면을 보여준다.
도 14는 핸들 어셈블리를 확대하여 보여준다.
도 15는 본 발명의 다른 실시 예에 따른 카트의 후방을 도시한 후면 사시도이다.
도 16, 도 17은 도 15에 따른 핸들 어셈블리의 주요 부분을 확대한 도면이다.
이하, 도면을 참조하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조 부호를 붙이도록 한다. 또한, 본 발명의 일부 실시예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가질 수 있다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 수 있다.
본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질, 차례, 순서 또는 개수 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 다른 구성 요소가 "개재"되거나, 각 구성 요소가 다른 구성 요소를 통해 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
또한, 본 발명을 구현함에 있어서 설명의 편의를 위하여 구성요소를 세분화하여 설명할 수 있으나, 이들 구성요소가 하나의 장치 또는 모듈 내에 구현될 수도 있고, 혹은 하나의 구성요소가 다수의 장치 또는 모듈들에 나뉘어져서 구현될 수도 있다.
이하, 본 명세서에서 사용자를 추종하며 자율적으로 이동하거나 사용자의 제어에 따라 전기적 에너지에 기반하여 이동하는 장치들을 스마트 카트로봇, 카트로봇 로봇 혹은 줄여서 카트라고 한다. 카트로봇은 대형 마트나 백화점 등 매장 내에서 사용할 수 있다. 또는 공항이나 항만과 같이 여행객들이 많이 이동하는 공간 내에서 사용자들이 카트로봇을 사용할 수 있다. 그리고 카트로봇은 골프장과 같은 레저 공간에서도 사용될 수 있다.
또한, 카트로봇은 사용자의 위치를 추적하여 사용자를 따르면서 소정의 보관 공간을 가지는 모든 장치를 포함한다. 카트로봇은 사용자가 밀거나 당기는 등의 제어에 따라 전기적 동력을 이용하여 이동하는 모든 장치를 포함한다. 그 결과, 사용자는 카트로봇을 전혀 조정할 필요 없이 카트로봇을 이동시킬 수 있다. 또한 사용자는 매우 작은 힘을 들여서 카트로봇을 이동시킬 수 있다.
도 1은 본 발명의 일 실시예에 의한 카트로봇의 외관을 보여준다. 도 2는 본 발명의 일 실시예에 의한 카트로봇의 제어모듈(150)의 구성요소를 보여준다. 도 1의 x, y, z 축은 카트로봇을 중심으로 하는 3차원 축을 도시한 것이다.
카트로봇(100)는 수납부(110)와 핸들 어셈블리(120), 제어모듈(150), 이동부(190a, 190b)를 포함한다. 수납부(110)는 사용자에 의해 사물이 수납되거나 적재되는 공간이다. 핸들 어셈블리(120)는 사용자가 카트로봇(100)를 수동으로 이동을 제어하거나, 반자동으로 이동을 제어할 수 있도록 한다.
핸들 어셈블리(120)를 이용하여 사용자는 카트로봇(100)를 전후로 밀거나 방향을 변경할 수 있다. 이 경우, 핸들 어셈블리(120)에 가해진 힘의 크기나 좌우 힘의 차이에 따라 카트로봇(100)는 전기적 에너지를 이용하여 반자동으로 주행할 수 있도록 한다.
제어모듈(150)는 카트로봇(100)의 이동을 제어한다. 특히, 제어모듈(150)는 사용자를 추종할 수 있도록 카트로봇(100)의 자율 주행을 제어한다. 또한, 제어모듈(150)은 사용자가 작은 힘으로 카트로봇을 밀거나 당길 때 사용자의 힘을 보조하여 카트로봇이 주행하는 반자율 주행(파워 어시스트)을 제어한다.
제어모듈(150)은 이동부(190)를 제어할 수 있다. 이동부(190)는 제어부(250)가 생성한 이동 경로 또는 제어부(250)의 제어에 따라 카트로봇을 이동시킨다. 이동부(190)는 이동부(190)를 구성하는 바퀴를 회전시킴으로써 카트로봇을 이동시킬 수 있다.
이동부(190)에 의한 카트로봇 이동은 휠의 회전속도와 회전한 횟수, 방향 등에 기반하여 카트로봇(100)의 위치를 제어부(250)가 확인할 수 있도록 한다. 제어부(250)가 생성한 이동 경로는 카트로봇의 좌측 바퀴와 우측 바퀴에 인가하는 각속도를 포함한다.
또한 카트로봇(100)의 여러 영역에 사용자의 추종을 위한 사용자 위치를 추적하는 측위 센서가 배치될 수 있다. 또한 카트로봇(100)의 여러 영역에는 주변의 장애물을 센싱하기 위한 장애물 센서가 배치될 수 있다. 도 2를 참조한다.
도 2는 제어모듈(150)을 구성하는 논리적 구성요소들인 측위센서(210), 포스센서(240), 장애물 센서(220), 인터페이스부(230), 제어부(250), 통신부(280), 무게센서(290)를 도시한 도면이다.
장애물 센서(220)는 카트로봇의 주변에 배치된 장애물을 센싱한다. 장애물 센서(220)는 사람, 벽, 사물, 고정물 또는 설치물(installed object) 등과 카트로봇과의 거리를 센싱할 수 있다. 또는 장애물 센서(220)는 카트로봇 주변의 사물/사람/설치물 등의 영상을 촬영할 수 있다. 장애물 센서(220)는 카트로봇(100)의 하단에 배치될 수 있다.
예를 들어 155에서 지시되는 영역에 다수의 장애물 센서(220)들이 배치된다. 이들 다수의 장애물 센서(220)들은 카트로봇의 전/좌/우/후방의 장애물을 센싱할 수 있다. 장애물 센서(220)는 카트로봇(100)의 하단에 동일한 높이에 배치될 수 있다.
또는 장애물 센서(220)는 카트로봇(100)의 하단에 둘 이상의 높이가 다른 영역에 배치될 수 있다. 또한 전면/양측면과 같이 카트로봇(100)가 이동하는 방향으로 장애물 센서가 배치될 수 있다. 또는 카트로봇(100)가 후진할 경우, 전면 및 후면, 양측면에 장애물 센서가 배치될 수 있다.
무게센서(290)는 카트로봇의 수납부(110)에 적재된 물건의 무게를 센싱한다.
측위 센서(210)는 자율 주행을 지원하는 카트로봇에 구성요소이다. 또한, 반자율 주행(파워 어시스트) 주행 만을 지원하는 카트로봇의 경우 측위 센서(210)는 선택적으로 배치될 수 있다.
측위 센서(210)는 송신모듈(500)을 소지하는 사용자의 위치를 추적할 수 있으며, 카트로봇(100)의 상단 또는 측면 등에 배치될 수 있다. 그러나 이들 센서들의 위치는 실시예에 따라 다양하게 변경될 수 있으며 본 발명이 이에 한정되지 않는다. 그리고 센서들의 위치와 무관하게 제어모듈(150)은 센서들을 제어하거나 센서들이 센싱한 정보를 활용한다. 즉, 센서들은 물리적 위치에 상관없이 논리적으로 제어모듈(150)의 구성요소이다.
측위센서(210)는 송신모듈(500)로부터 신호를 수신하여 송신모듈(500)의 위치를 측정한다. 사용자는 측위 센서(210)에게 소정의 신호를 송신하는 송신모듈(500)을 소지할 수 있다. 일 실시예로 측위 센서(210)는 UWB(Ultra-wideband)를 이용하여 송신모듈(500)로부터 신호를 수신할 수 있다.
그리고 측위 센서(210)는 송신모듈(500)의 위치로 사용자의 위치를 확인할 수 있다. 일 실시예로 사용자는 손목에 부착하는 밴드 형태의 송신모듈(500)을 소지할 수 있다.
또한, 핸들 어셈블리(120)에는 사용자에게 소정의 정보를 출력하는 인터페이스부가 배치될 수 있으며, 인터페이스부 역시 제어모듈(150)의 제어를 받는 구성요소가 될 수 있다. 그리고 핸들 어셈블리(120)는 사용자가 카트로봇을 밀거나 당기는 힘, 즉 핸들 어셈블리(120)에 가해진 힘을 센싱하는 포스 센서(240)를 포함한다. 인터페이스부는 선택적으로 다양한 위치에 배치될 수 있다.
포스 센서(240)는 핸들 어셈블리(120)의 조작에 의해 힘의 변화가 가해지는 카트로봇(100)의 외부 또는 내부에 배치될 수 있다. 포스 센서(240)의 위치나 구성은 다양하게 적용될 수 있으며 본 발명의 실시예들은 특정한 포스 센서(240)에 한정되지 않는다.
포스센서(240)는 핸들 어셈블리(120)에 배치되거나 핸들 어셈블리(120)에 연결된 카트로봇(100)의 외부 또는 내부에 배치된다. 포스센서(240)는 사용자가 핸들 어셈블리(120)에 힘을 가할 경우, 힘의 크기나 힘의 변화 등을 센싱한다. 포스 센서(240)는 홀 센서, 마그네틱 타입 센서, 버튼식 센서, 로드셀(load cell) 등 다양한 센서를 포함한다. 포스 센서(240)는 좌측 포스센서와 우측 포스센서로 각각 핸들 어셈블리(120) 또는 카트로봇(100) 내부 또는 외부에 배치될 수 있다.
한편, 포스센서(240)가 하나 이상의 로드셀(245)를 포함하거나, 혹은 하나 이상의 로드셀(245)을 이용하여 포스센서(240)를 구현할 경우, 로드셀(245)는 카트로봇이 이동하는 과정에서 지면과의 마찰로 인한 진동을 감지할 수 있다.
로드셀(245)은 핸들 어셈블리(120)에 가해진 힘을 전기적인 신호로 변환하기 위해 카트로봇(100)에 장착된다. 로드셀(245)은 사용자가 카트로봇(100)를 밀거나 당기는 등의 힘을 센싱한다.
이외에도 로드셀(245)은 카트로봇(100)이 주행 중 바닥과의 마찰로 인해 발생하는 진동을 센싱한다. 로드셀(245)은 진동과 관련된 신호들을 산출한다. 따라서 제어부(250)는 로드셀(245)이 센싱한 노면의 진동을 기반으로 노면의 상태를 확인할 수 있다.
또는, 별도의 IMU 센서(247)가 카트로봇(100)에 배치될 수있다. 일 실시예로 IMU 센서(247)는 이동부(190a, 190b)에 근접하여 배치될 수 있다.
전술한 로드셀(245) 및 IMU 센서(247)는 선택적으로 카트로봇(100)에 배치되거나 또는 모두 카트로봇(100)에 배치되어 카트로봇(100)이 주행하는 주행면 상태에 따라 발생하는 진동을 감지할 수 있다.
IMU 센서(Inertial Measurement Unit Sensor)(247)는 가속도와 자이로, 지자계를 측정한다. IMU 센서는 카트로봇(100)이 기울어졌는지, 또는 카트로봇(100)의 구성요소들 중에서 진동이 발생했는지 여부 등을 확인하는데 필요한 신호를 센싱한다. 또한, IMU 센서는 카트로봇의 주행면이 변경되었는지를 센싱한다.
따라서, 로드셀(245) 및 IMU 센서(247)는 각각 핸드 어셈블리(120)에 가해진 힘을 센싱하거나 카트로봇(100)의 가속도나 기울기 등을 측정하는 동시에, 카트로봇(100)에서 발생한 진동을 센싱할 수 있다.
이하, 로드셀(245) 및 IMU 센서(247)를 모두 진동 센서(260)로 통칭한다. 진동 센서(260)는 로드셀(245) 및 IMU 센서(247) 중 어느 하나 이상을 이용하여 카트로봇의 이동 과정에서 노면과의 마찰 등으로 발생한 진동을 센싱한다. 진동 센서(260)는 도 1의 카트로봇(100)이 진동 과정에서 발생한 x/y/z 축의 변화 등을 센싱할 수 있다.
장애물 센서(220)는 카트로봇의 주변에 배치된 장애물을 센싱한다. 장애물 센서는 거리를 측정하거나 영상을 취득하여 영상 내에서 장애물을 확인하는 센서를 포함한다. 거리 측정을 위한 장애물 센서(220)는 적외선 센서나 초음파 센서, 라이다 센서 등을 일 실시예로 한다.
또한 장애물 센서(220)는 뎁스 센서 혹은 RGB 센서를 포함한다. RGB 센서의 경우 영상 내에서 장애물과 설치물을 감지할 수 있다. 뎁스 센서는 영상 내에서 각 지점 별 뎁스 정보를 산출한다.
또한 장애물 센서(220)는 TOF(Time of Flight) 센서를 포함한다.
제어부(250)는 송신모듈의 위치정보를 누적하여 저장하고, 저장된 송신모듈의 위치정보에 대응하는 이동 경로를 생성한다. 누적하여 위치정보를 저장하기 위해서 제어부(250)는 송신모듈(500) 및 카트로봇(100)의 위치정보를 일정한 기준점을 기반으로 하는 절대위치정보(절대좌표)로 저장할 수 있다.
또는 제어부(250)는 장애물 센서(220)와 진동 센서(260)를 이용하여 주행면에 변화가 발생했는지 확인하여 카트로봇의 이동을 제어할 수 있다.
또한 제어부(250)는 포스 센서(240)가 센싱한 힘의 변화 또는 크기에 따라, 이동부의 이동 방향 또는 이동 속도를 제어한다. 또는 제어부(250)는 이동 속도를 제어하기 위해 이동부의 모터에 더 많은 전기에너지가 제공되도록 이동부(190)를 제어할 수 있다.
특히, 카트로봇이 자율 주행 혹은 반자율 주행(파워 어시스트 모드)로 동작하는 과정에서 제어부(250)가 진동 센서(260)에 기반하여 노면의 변화를 식별하고 공간을 식별한 경우, 제어부(250)는 노면의 특징에 맞추어 이동부(190a, 190b)를 제어할 수 있다.
예를 들어, 일반 매장과 주차 공간과 같이 노면의 재질이 다를 경우에 제어부(250)는 식별한 각각의 공간의 특성에 따라 카트로봇의 이동을 제어할 수 있다.
예를 들어, 제어부(250)는 진동 센서(260)를 이용하여 카트로봇(100)이 주차 공간을 주행 중인 것으로 확인되면, 움직이는 차량이나 주차 차량을 우선적으로 인식하도록 장애물 센서(220) 또는 이동부(190)를 제어할 수 있다.
또한, 제어부(250)는 진동 센서(260)를 이용하여 카트로봇(100)이 일반 공간(예를 들어 마트 매장 등)을 주행 중인 것으로 확인되면, 움직이는 사람과 충돌을 방지하도록 전환 장애물 센서(220) 또는 이동부(190)를 제어할 수 있다.
특히, 진동 센서(260)를 통해 진동이 많이 발생하거나 카트로봇(100)이 이동하는데 있어 마찰이 많이 발생하는 노면에서 제어부(250)는 이동부(190)의 모터 속력 또는 토크를 제어 한다. 주차공간과 같이 노면의 마찰로 인해 저항이 큰 노면의 경우 모터의 상한 토크를 변경하여 카트로봇(100)의 이동을 용이하게 한다.
또한, 로드셀(245)과 같이 반자율 주행인 파워 어시스트 모드를 위한 포스 센서(240)의 구성요소를 진동 센서(260)로 사용할 경우 하나의 센서를 이용하여 포스 센싱 및 노면 센싱을 모두 수행하므로 제작 비용을 절감할 수 있다.
정리하면, 제어부(250)는 진동 센서(260)가 센싱한 데이터에서 특징 데이터를 추출하여 특징 데이터와 미리 저장된 파라미터를 비교한다. 그리고 제어부(250)는 카트로봇(100)이 주행 중인 공간을 식별하고, 식별된 공간에 적합하게 이동부(190)의 이동 방향 또는 이동 속도를 제어하거나 또는 이동부(190)에 인가되는 전기 에너지의 크기를 변화시킨다. 이는 진동 센서(260)가 센싱한 데이터를 이용하여 제어부(250)가 현재 카트로봇이 주행중인 공간을 식별하여 공간에 적합하게 이동부(190)를 제어하는 것을 포함한다.
통신부(280)는 카트로봇(100)에 선택적으로 배치될 수 있다. 도 3에 도시한 바와 같이 카트로봇들 중에서 일부 카트로봇들은 통신부(280)를 포함한다. 통신부(280)는 진동 센서(260)가 센싱한 데이터를 서버(500)에게 전송하고 서버(500)로부터 공간을 구분하는데 필요한 파라미터를 수신한다.
도 3은 본 발명의 일 실시예에 의한 카트로봇이 공간 내를 이동하는 과정에서 데이터를 수집하는 과정을 보여준다. 도 3에서 카트로봇 중에서 일부는 수집한 데이터를 서버(500)로 전송한다(S1~S4). 이는 카트로봇이 학습을 수행하는 학습모듈을 포함하지 않는 경우이다.
반면, 학습모듈을 제어부가 포함할 경우 카트로봇은 수집한 데이터를 이용하여 직접 학습한다.
도 3은 카트로봇(100)이 이동할 수 있는 공간이며, 두 종류의 공간(LAND1, LAND2)로 나뉘어진다. 예를 들어 LAND1은 지면이 매끈한 일반 매장을 일 실시예로 한다. LAND2는 지면이 거친 주차공간을 일 실시예로 한다. 두 공간에서 다수의 카트로봇(100)들은 주행하며 노면으로부터 발생하는 진동을 기록한다.
지면이 매끈한 LAND1 상에 카트로봇(100)이 이동할 경우 카트로봇(100)에 전달되는 진동과 지면이 매끈하지 않은 LAND2 상에 카트로봇(100)이 이동할 경우 카트로봇(100)이 노면과 마찰로 인해 발생하는 진동의 특성은 상이하다. 이는 지면의 종류에 따라 달라진다.
따라서 카트로봇(100)의 진동 센서(260)는 카트로봇(100)이 이동하는 과정에서 발생하는 진동을 센싱하고, 제어부(250)는 이를 다양한 특징 데이터(feature data)로 저장한다. 특징 데이터의 실시예로는 센싱된 진동의 수평폭에 대한 값, 수직폭에 대한 값, 진동이 유지된 시간 등의 데이터들을 포함한다.
또한, 이 과정에서 카트로봇(100)에 적재된 제품들의 무게도 특징 데이터로 저장될 수 있다. 무거운 짐이 적재된 경우의 카트로봇(100)이 노면 주행으로 센싱하는 진동과 가벼운 짐이 적재된 경우의 카트로봇(100)이 노면 주행으로 센싱하는 진동은 상이할 수 있다.
다수의 카트로봇(100)들은 이동 과정에서 각가 센싱한 노면의 진동을 데이터로 기록한다. 기록된 데이터는 카트로봇(100)에 저장될 수도 있고 외부의 서버로 전송될 수 있다.
또한, 진동 센서(260)의 일 실시예로 로드셀(245)을 구현할 수 있다. 로드셀(245)은 포스 센서(240)를 구성하여 핸들 어셈블리(120)에 가해진 힘을 센싱한다. 또한 각기 다른 노면의 LAND1 및 LAND2를 카트로봇(100)이 이동하는 과정에서 마찰로 인해 진동이 발생하면 로드셀(245)은 이를 측정한다.
따라서, 카트로봇(100)이 주행하는 공간을 구분하기 위해서는 주차장과 마트 등 다양한 노면을 주행하며 로드셀(245) 신호를 수집한다. 그리고, 서버 등의 학습 기능을 제공하는 장치 또는 카트로봇(100)은 각각의 노면(마트 노면과 주차장 노면)들의 특징(feature)들을 추출하고 기계 학습을 수행한다.
기계학습을 수행하여 학습된 파라미터를 이용하여 카트로봇(100)은 주행 과정에서 진동 센서(260)가 센싱한 값을 이용하여 마트 바닥과 주차장 등 노면의 상태가 상이한 공간들을 실시간으로 구분할 수 있다.
또한, 카트로봇(100)이나 서버 등은 에지 러닝(edge learning)을 통해 학습 파라미터를 주기적으로 업데이트시킬 수 있다.
도 4는 본 발명의 일 실시예에 의한 카트로봇이 수집한 데이터를 학습하는 과정을 보여준다.
카트로봇(100)들이 취합한 데이터는 소정의 학습 과정을 통해 특징이 추출된다. 도 3에 도시된 바와 같이 각각의 카트로봇(100)들은 주행 과정에서 데이터를 수집한다(S11).
그리고 수집된 데이터는 누적 저장된다. 서버(500) 혹은 카트로봇(100)을 구성하는 학습모듈은 저장된 데이터를 이용하여 특징 데이터를 추출하고 학습을 수행한다(S12).
학습 과정에서 서버 혹은 카트로봇(100)은 학습의 완료 여부를 확인한다(S13). 그리고 학습이 완료되지 않은 경우 다시 데이터를 추가한다(S14). 데이터 추가는 기저장된 데이터를 이용하거나 또는 카트로봇(100)이 S11 과정을 수행하는 것을 포함한다.
데이터가 충분히 누적되어 학습이 완료되면, 서버 혹은 카트로봇(100)은 공간 구분 파라미터를 추출한다(S15). 그리고 혹은 카트로봇(100)은 파라미터를 저장한다(S16). 저장된 결과를 이용하여 카트로봇(100)은 추후 노면의 진동이 발생하면 파라미터를 이용하여 노면의 상태 및 위치를 확인할 수 있다.
도 4의 과정은 카트로봇(100) 별로 학습을 수행할 수 있다. 또는 다수의 카트로봇(100)들이 데이터를 수집하여 별도의 서버가 학습을 수행할 수 있다.
진동 센서(260)가 로드셀인 경우, 공간을 구분하기 위해 필요한 특징 데이터는 로드셀(245)이 진동을 센싱하여 산출한 신호들의 공분산(Covariance), 스펙트럼 엔트로피(Spectral Entropy), 힘(Force) 등이 있으나 본 발명이 이에 한정되는 것은 아니다.
진동 센서(260)가 IMU 센서(247)인 경우, 공간을 구분하기 위해 필요한 특징 데이터는 IMU 센서(247)가 진동을 센싱하여 산출한 신호들의 상관관계(Correlation), 분산(variance), 엔트로피(Entropy), 신호의 이산(Signal Difference) 등이 있으나 본 발명이 이에 한정되는 것은 아니다.
도 4의 프로세스를 정리하면 다음과 같다.
진동 센서(260)가 카트로봇(100)의 이동 과정에서 발생한 진동을 센싱하고(S22), 제어부(250)가 진동 센서(260)가 센싱한 데이터에서 특징 데이터를 추출한다(S23). 그리고 제어부(250)가 특징 데이터와 파라미터를 비교하여 카트로봇(100)이 주행 중인 공간을 식별한다(S25 내지 S27). 주행 중인 공간의 식별이란 LAND1, LAND2 등과 같이 공간을 구분하는 것을 의미한다.
도 5는 본 발명의 일 실시예에 의한 카트로봇이 공간을 구분하는 과정을 보여준다.
카트로봇(100)은 도 4에서 추출된 공간 구분 파라미터를 저장한 후, 이를 이동 과정에서 리딩한다(S21). 그리고 진동 센서는 이동 과정에서 센싱된 데이터를 버퍼링한다(S22). 버퍼링이란 진동 센서가 센싱한 데이터를 일시적으로 저장하는 것을 의미한다.
버퍼링된 데이터는 제어부(250)로 전달된다. 또는 버퍼링 없이 진동 센서(260)가 센싱한 값을 실시간으로 제어부(250)로 전송할 수 있다. 즉, 버퍼링의 1차적 주체는 진동 센서(260)이지만 최종적인 주체는 제어부(250)가 된다. 제어부(250)는 카트로봇이 이동하는 과정에서 진동 센서(260)가 센싱한 데이터를 버퍼링하여 누적 저장할 수 있다.
제어부(250)는 버퍼링된 데이터(누적 저장된 데이터)에서 특징 데이터를 추출하고, 특징 데이터가 충분히 구비되었는지 확인한다(S23). 만약 특징 데이터가 구비되지 않았으면 진동 센서(260)는 더 많은 데이터를 수집한다(S22).
특징 데이터가 구비된 경우, 제어부(250)는 전술한 공간 구분 파라미터를 이용하여 공간 구분을 계산한다(S25). 그리고 공간 구분에 따른 계산 결과를 후처리한 후(S26), 공간을 인터페이스부(230)에 표시한다(S27). 그리고 S22 내지 S28의 과정은 카트로봇(100)이 이동을 종료할 때까지(S28) 반복한다.
카트로봇(100)은 식별된 공간에 적용가능한 이동부(190)의 제어 정보를 저장할 수 있다. 또한 카트로봇(100)은 식별된 공간에서 이동부(190)의 제어 정보를 적용한 후, 카트로봇(100)의 주행 과정에서 오류가 발생한 경우 이에 대한 정보를 저장하여 파라미터들 또는 학습모듈(300)을 변경할 수 있다.
예를 들어 LAND1으로 확인하도록 분류된 특징 데이터에 기반하여 LAND1에 적합하게 이동부가 제어된 후 카트로봇(100)이 이동하는 과정에서 진동이 더 많이 발생하거나 혹은 LAND1에 적합하지 않은 장애물(LAND2에서 다수 센싱되는 장애물)이 센싱될 수 있다. 이 경우, 카트로봇(100)은 앞서 분류된 특징 데이터를 재분류하여 LAND2로 분류되도록 조절할 수 있다.
도 6은 본 발명의 일 실시예에 의한 LAND1/LAND2에서 진동 센서가 센싱한 신호를 보여준다. 카트로봇(100)이 LAND1과 LAND2을 주행하는 과정에서 진동 센서가 센싱한 값을 표시한 것이다.
도 6과 같은 신호는 카트로봇(100)이 이동하는 과정에서 누적된다. 카트로봇(100)은 현재 이동하는 공간이 LAND1인지 혹은 LAND2인지에 대한 정보를 추가적으로 저장할 수 있다. 또는 위와 같은 공간에 대한 정보 없이 신호만을 누적 저장할 수 있다.
또한, 카트로봇(100)은 수납부(110)의 무게를 센싱하여 수납된 물건의 무게와 진동 센서가 센싱한 값을 함께 저장할 수 있다.
진동 센서가 센싱하여 생성한 값들은 카트로봇(100)들 다수가 수집한다. 그리고 카트로봇(100) 또는 서버 중 어느 하나가 이들 데이터에 대해 학습을 수행한다. 수집된 데이터들에 기반한 학습 결과 특징 맵(feature map)을 생성하면 LAND1과 LAND2에서 각 진동 센서가 센싱한 값을 구분하는 선(Classification Line)에 대한 함수가 산출된다.
이후, 카트로봇(100)은 전술한 함수를 이용하여 진동 센서가 센싱한 값을 도 7과 같은 특징맵에 적용하거나 전술한 함수에 대입하면 진동 센서의 센싱값에 기반하여 현재 카트로봇(100)이 주행하는 공간이 LAND1 또는 LAND2인지를 확인할 수 있다.
도 7은 본 발명의 일 실시예에 의한 진동 센서가 센싱한 값이 표시된 특징 맵을 보여준다.
도 7과 같은 특징맵은 진동 센서가 둘 이상인 경우 각각의 센서 별로 산출할 수 있다. 예를 들어 진동 센서가 로드셀(245)인 경우 카트로봇(100)이나 서버는 로드셀 특징맵을 산출할 수 있다.
또한, 진동 센서가 IMU 센서(247)인 경우 카트로봇(100)이나 서버는 IMU 센서 특징맵을 산출할 수 있다.
도 8은 본 발명의 일 실시예에 의한 카트로봇이 로드셀 및 IMU 센서의 신호를 이용하여 카트로봇의 이동을 제어하는 과정을 보여주는 도면이다. 카트로봇(100)이 로드셀(245) 및 IMU 센서(247)를 이용하여 두 공간을 구분하는 과정은 다음과 같다.
예를 들어, 로드셀(245)은 제1진동 센서로, IMU 센서(247)는 제2진동 센서로 동작한다. 그리고 제어부(250)는 제1진동 센서의 신호를 버퍼링하여 제1특징 데이터를 산출한 후, 카트로봇이 주행 중인 공간을 식별하지 못할 경우(S35에서 No), 제어부(250)는 제2진동 센서의 신호를 버퍼링하여 제2특징 데이터를 산출한 후, 카트로봇이 주행 중인 공간을 식별할 수 있다.
카트로봇(100)은 노면이 비교적 부드러운 LAND1과, 노면이 비교적 거친 LAND2라는 공간을 이동한다. LAND1의 일 실시예는 마트와 같은 매장이 될 수 있다. LAND2의 일 실시예는 주차장이 될 수 있다.
먼저, 카트로봇(100)은 로드셀(245)이 생성한 신호를 데이터로 버퍼링한다(S31). 제어부(250)는 로드셀(245)이 생성한 신호를 이용하여 공간을 구분하는데 필요한 특징 데이터를 산출한다(S32). 그리고 공간 구분을 계산한다(S33). 제어부(250)는 도 7과 같은 특징맵에 S32의 특징 데이터를 적용한다.
그 결과, 제어부(250)는 현재 주행중인 공간이 LAND1일 확률이 P1 보다 큰지 확인한다(S34). P1은 다양하게 설정될 수 있는데 80%, 90% 등의 100분위 비율을 실시예로 한다.
S34에서 LAND1일 확률이 P1 보다 큰 경우, 제어부(250)는 식별한 LAND1에서 주행하기에 적합하도록 이동부(190)의 모터를 제어한다. 예를 들어 제어부(250)는 모터의 PID를 LAND1에 적합한 모터의 PID(LAND1_PID)로 셋팅한다(S38).
그리고 제어부(250)는 LAND1 환경에서 카트로봇(100)의 이동 시 모터를 셋팅된 값(LAND1_PID)에 따라 제어한다(S39). 제어부(250)는 공간을 식별한 결과에 따라 이동부(190)에 전기 에너지를 제공하는 모터의 PID를 조절(proportional, integral, derivative)할 수 있다.
이는 일 실시예이며, 이외에도 제어부(250)는 확인된 노면(LAND1)에 적합하게 이동부(190)를 제어할 수 있다. 뿐만 아니라 제어부(250)는 포스센서(240)가 센싱한 힘과 이동부(190)의 속도 역시 LAND1에 적합하게 조절할 수 있다.
한편, S34에서 LAND1일 확률이 P1 보다 작은 경우, 제어부(250)는 LAND2일 확률이 P2보다 큰지 확인한다(S35). 역시 P2는 다양하게 설정될 수 있는데 80%, 90% 등의 100분위 비율을 실시예로 한다.
S35에서 LAND2일 확률이 P2 보다 큰 경우, 제어부(250)는 LAND2에서 주행하기에 적합하도록 이동부(190)의 모터를 제어한다. 예를 들어 제어부(250)는 모터의 PID를 LAND2에 적합한 모터의 PID(LAND2_PID)로 셋팅한다(S36).
그리고 제어부(250)는 LAND2 환경에서 카트로봇(100)의 이동 시 모터를 셋팅된 값(LAND2_PID)에 따라 제어한다(S37). 이외에도 제어부(250)는 확인된 노면(LAND2)에 적합하게 이동부(190)를 제어할 수 있다. 뿐만 아니라 제어부(250)는 포스센서(240)가 센싱한 힘과 이동부(190)의 속도 역시 LAND2에 적합하게 조절할 수 있다.
한편 S35에서 LAND2일 확률이 P2 보다 작은 경우, 로드셀(245)의 센싱 결과만으로 공간을 확인하기 어려우므로, 제어부(250)는 IMU 센서(247)를 이용하여 공간을 구분할 수 있다.
제어부(250)는 IMU 센서(247)가 센싱한 데이터를 버퍼링한다(S41). 또는 이 데이터는 S31 과정에서 누적될 수 있다. 그리고 제어부(250)는 IMU 공간 구분 특징 데이터를 산출한다(S42). 그리고 제어부(250)는 공간 구분을 계산한다(S43). 제어부(250)는 도 7과 같은 특징맵에 S42의 특징 데이터를 적용한다.
그 결과, 제어부(250)는 현재 주행중인 공간이 LAND2일 확률이 P2 보다 큰지 확인한다(S44). P3은 다양하게 설정될 수 있다.
확인 결과에 따라 제어부(250)는 S36 또는 S38의 단게를 진행한다.
도 8은 하나의 로드셀이 센싱한 값을 이용하여 제어부(250)가 공간을 구분하지 못할 경우 IMU 센서를 이용하는 과정을 보여준다. 만약, 제어부(250)가 로드셀만 이용할 경우, 제어부(250)는 S35에서 No의 경우 S31로 분기할 수 있다.
제어부(250)는 진동 센서를 이용하여 현재 카트로봇(100)이 주행 중인 공간을 구분하고, 구분된 공간의 특성에 따라 이동부(190)를 구성하는 모터의 PID 튜닝 값을 조절하면 카트의 이동 성능이 향상된다.
또한 도 8에서 제어부(250)는 PID 값의 조절뿐만 아니라 이동부(190)를 식별된 공간에 적합하게 조절할 수 있다. 예를 들어, 제어부(250)는 식별된 공간에 적합하게 이동부(190)의 이동 방향 또는 이동 속도를 제어할 수 있다. 또한 제어부(250)는 이동부(190)에 인가되는 전기 에너지의 크기를 변화시킬 수 있다. LAND1/LAND2 등 과 같이 식별된 공간의 노면의 특징 또는 공간에 배치된 사물들의 특징 등을 반영할 수 있다.
도 9는 본 발명의 일 실시예에 의한 서버의 구성을 보여준다.
서버(500)는 학습모듈(300)과 통신부(580)를 포함한다. 학습모듈(300)은 카트로봇(100)의 제어부(250)에 탑재될 수도 있다. 즉, 카트로봇(100)이 학습을 수행할 경우 도 9의 학습모듈(300)은 카트로봇(100)에 장착된다. 학습모듈(300)은 제어부(250)의 하위 구성요소가 될 수 있다.
학습모듈(300)의 저장부(310)는 카트로봇이 제1공간을 주행하는 과정에서 카트로봇(100)의 진동 센서(260)가 센싱한 제1데이터와, 카트로봇(100)이 제2공간을 주행하는 과정에서 카트로봇(100)의 진동 센서(260)가 센싱한 제2데이터를 저장한다.
그리고 학습부(320)는 저장부에 저장된 다수의 제1데이터 및 다수의 제2데이터를 분류하여 다수의 제1데이터를 제1공간으로 식별하며, 다수의 제2데이터를 제2공간으로 식별하는 파라미터를 생성한다.
학습부(320)는 도 7에서 두 공간을 구분하는 라인(Classification line)을 파라미터로 구성할 수 있다.
즉, 학습부(320)는 제1데이터를 X축/Y축의 LAND 1에 대응하는 특징 데이터로 변환한다. 그리고 학습부(320)는 제2데이터를 X축/Y축의 LAND 2에 대응하는 특징 데이터로 변환한다. 그리고 학습부(320)는 LAND1 또는 LAND2 사이로 매핑되는 영역들을 구분하는 소정의 직선 또는 2차원 곡선 또는 3차원 곡선 등을 정의하는 파라미터를 생성한다.
또는 학습부(320)는 각각의 센서들이 산출한 신호에서 X축/Y축/Z축에 대응하는 특징 데이터를 산출할 수 있다. 또는 학습부(320)는 시간 데이터를 특징 데이터로 산출할 수 있다.
제1데이터 및 제2데이터의 특징 데이터로는 진동 센서가 센싱한 신호를 N차원으로 변환하는 것을 일 실시예로 한다.
예를 들어 제1데이터는 제1공간에서 카트로봇의 이동 속도를 포함한다. 또한 제1데이터는 제1공간에서 카트로봇의 진동 센서가 센싱한 진폭의 크기 또는 진폭이 유지된 시간적 크기를 포함한다.
제2데이터는 제2공간에서 카트로봇의 이동 속도를 포함한다. 또한 제2데이터는 제2공간에서 카트로봇의 진동 센서가 센싱한 진폭의 크기 또는 진폭이 유지된 시간적 크기를 포함한다.
학습부(320)는 제1데이터 및 제2데이터가 각각 제1공간 및 제2공간에서 발생한 것인지에 대한 메타 정보를 이용하여 학습할 수 있다. 또는 학습부(320)는 제1데이터 및 제2데이터가 각각 제1공간 및 제2공간에서 발생한 것인지에 대한 메타 정보 없이 학습할 수 있다.
학습 결과 학습부(320)는 두 영역의 데이터들을 구분짓는, 즉 두 영역의 데이터들 사이의 경계선을 지시하는 파라미터를 생성한다.
통신부(580)는 다수의 카트로봇들로부터 제1데이터 및 제2데이터를 수신한다. 그리고 통신부(580)는 학습부(320)가 산출한 파라미터를 다수의 카트로봇에게 전송한다.
정리하면 도 9의 학습모듈(300)은 진동 센서가 센싱한 데이터를 특징 데이터로 추출하고 이를 둘 이상의 공간 중 어느 하나의 공간으로 매핑하는 공간 구분 파라미터를 생성한다. 그리고 이러한 학습 모듈(300)은 서버(500) 또는 제어부(250)에 포함된다.
도 10은 본 발명의 일 실시예에 의한 학습모듈의 구성을 보여준다.
카트로봇(100)의 제어부(250)는 학습모듈(300)을 추가로 포함할 수 있다. 또는 도 9에 도시된 바와 같이 서버(500)가 학습모듈(300)을 포함할 수 있다.
진동 센서(260)는 센싱된 값을 제어부(250) 또는 서버(500)에게 제공하면, 제어부(250) 또는 서버(500) 내의 학습 모듈(300)이 센싱된 값을 입력받아 공간을 식별하는데 필요한 파라미터를 산출한다.
학습모듈(300)은 기계학습(machine learning) 또는 딥러닝 네트워크(Deep Learning Network)를 일 실시예로 한다.
카트로봇의 제어부(250)는 또는 서버(500)는 학습모듈을 이용하여 상황인식(Context Awareness)을 수행할 수 있다. 마찬가지로, 센싱된 값들, 사용자의 제어, 또는 다른 카트로봇들이나 서버로부터 수신된 정보 등을 학습모듈의 입력값으로 하여 카트로봇(100)이 주행하는 공간을 식별할 수 있다.
전술한 학습모듈(300)은 추론 엔진(inference engine), 뉴럴 네트워크(neural network), 확률모델(probability model)을 포함할 수 있다. 그리고 학습모듈(300)은 다양한 데이터에 기반한 지도학습(supervised learning) 또는 비지도학습(unsupervised learning)을 수행할 수 있다.
또한, 학습모듈(300)은 예시적으로 사용자의 음성을 인식하여 이로부터 정보를 추출하기 위해 자연어 처리(natural language processing)을 수행할 수 있다.
특히, 노면의 진동을 이용하여 공간을 식별하기 위해서 학습모듈(300)은 도 10과 같이 딥러닝 네트워크를 포함할 수 있다. 입력되는 특징 데이터(feature data)들은 진동 센서가 센싱한 데이터 또는 이 데이터를 변환한 것을 일 실시예로 한다. 또한 특징 데이터로 카트로봇(100)의 수납함에 적재된 물건의 무게 정보를 포함한다. 또한 특징 데이터는 카트로봇(100)의 속도 정보를 포함한다.
즉, 진동의 발생과 변화에 영향을 미칠 수 있는 카트로봇의 전체 무게(또는 질량), 속도, 그리고 자율 주행 모드인지 반자율 주행 모드인지에 대한 정보 등이 모두 특징 데이터로 입력된다. 그리고 학습모듈(300)은 다수 입력된 특징 데이터들의 셋을 이용하여 공간을 구분하는데 적합한 파라미터들을 산출한다.
또는 일 실시예로 파라미터의 생성 대신 학습 모듈 내의 딥러닝 네트워크의 레이어들의 재설정에 기반하여 학습을 수행할 수 있다. 예를 들어, 지도학습에 따라 각 공간에 대한 정보가 주어지는 경우, 학습모듈(300)은 특징 데이터를 입력 레이어에 입력하고, 출력은 공간에 대한 구분 정보(0, 1, 2 등)를 지정하여 히든 레이어를 조정할 수 있다.
파라미터들은 제어부(250)에 저장된다. 제어부(250)는 이후 카트로봇(100)이 주행하는 과정에서 취득한 진동 센서(260)의 센싱 데이터를 변환 후 파라미터와 비교하거나 학습모듈(300)에 입력하여 주행 공간을 식별한다.
이 과정에서 제어부(250)는 진동 센서(260)가 센싱한 데이터 외에도, 무게 정보, 속도 정보, 시간 정보 등을 특징 데이터로 산출하여 공간 식별의 정확도를 높인다.
도 11 및 도 12는 본 발명의 일 실시예에 의한 장애물 센서의 센싱 특성을 조절하는 구성을 보여준다.
전술한 실시예에서 카트로봇(100)이 현재 주행 중인 공간을 식별할 경우, 해당 공간에 적합하게 장애물 센서(220)들의 센싱 간격이나 센싱 주기 등을 조절할 수 있다.
예를 들어, 카트로봇(100)이 마트 매장으로 공간을 식별한 경우, 사람들과의 충돌을 피하기 위해 인체를 더 정확하게 감지하도록 장애물 센서(220)의 센싱 주기나 센싱 간격을 제어할 수 있다.
도 11에 도시된 바와 같이, 장애물 센서들 중 사물 감지 장애물 센서가 1회 센싱하는 주기 동안, 인체 감지 장애물 센서가 2회 센싱한다. 이는 인체 센싱의 정확도를 높인다. 제어부(250)는 식별된 공간인 매장에 적합하게 장애물 센서가 인체를 더 정확하게 감지하도록 장애물 센서를 제어한다.
또한, 카트로봇(100)이 주차장으로 공간을 식별한 경우, 차량과의 충돌을 피하기 위해 차량을 더 정확하게 감지하도록 장애물 센서(220)의 센싱 주기나 센싱 간격을 제어할 수 있다.
도 12에 도시된 바와 같이, 장애물 센서들 중 인체 감지 장애물 센서가 1회 센싱하는 주기 동안, 사물 감지 장애물 센서가 2회 센싱한다. 이는 자동차와 같은 사물에 대한 센싱의 정확도를 높인다. 제어부(250)는 식별된 공간인 주차장에 적합하게 장애물 센서가 사물을 더 정확하게 감지하도록 장애물 센서를 제어한다.
본 발명의 일 실시예를 적용할 경우 사용자의 이동 경로를 따라 이동하는 자율 주행(추종 모드)에서 카트로봇(100)은 마트 매장내부와 주차장이라는 상이한 공간적 특징에 따라 이동한다.
카트로봇(100)은 마트 매장에서 자율 주행시 보행자 감지에 중점을 둘 수 있다. 또한 카트로봇(100)은 주차장장에서 자율 주행시 차량감지에 중점을 둘 수 있다. 이에 따라 제어부(250)는 카트로봇(100)의 장애물 센싱 방식을 조절할 수 있다.
또한, 카트로봇(100)은 반자율 주행인 파워어시스트 모드에서도 사용자가 밀거나 당기는 힘에 대응하여 이동부(190)에 인가되는 전기에너지의 크기를 공간에 따라 달리 할 수 있다. 특히, 반자율 주행을 지원하는 카트로봇(100)은 핸들 어셈블리에 배치된 포스 센서 중 하나인 로드셀을 공간을 구분할 경우에도 활용할 수 있으며 카트로봇(100)은 로드셀이라는 하나의 센서를 이용하여 다양한 정보를 취합할 수 있는 기술적 경제적 효과를 제공한다.
마트/주차장 등 상이한 노면을 가진 공간을 이동하는 카트로봇(100)은 마트 매장에서 주차장으로 진입하는 과정에 이르기까지 카트에 걸리는 부하가 누적(물건 적재)되며 이는 모터 전류 제어가 상황에 따라 변화가 필요하다.
따라서, 카트로봇(100)은 공간의 노면(예를 들어 주차장과 마트 바닥)에 최적화된 PID 튜닝 값을 이동부(190)의 모터에 적용하여 주행 성능, 특히 자율 주행 시의 추종 모드 혹은 반자율 주행시의 파워 어시스트 모드를 일정하게 유지할 수 있다.
이하, 진동 센서의 일 실시예인 로드셀이 배치되는 구성에 대해 보다 상세히 살펴본다. 도 13 내지 도 17의 로드셀(442, 442')이 배치되는 구성은 카트로봇(100)의 구성에 따라 다양하게 배치될 수 있다.
도 13은 본 발명의 일 실시예인 도 1에 도시된 카트로봇(100)의 후면을 보여준다. 도 14는 핸들 어셈블리를 확대하여 보여준다.
바와 같이, 핸들 어셈블리(400)의 핸들 바(410)는 일자형의 바(bar)로, 복수 개의 프레임이 외관을 형성한다. 핸들 바(410)는 프레임들에 의해 수용 공간을 형성할 수 있다. 이렇게 형성된 수용 공간에 포스 센서(440)가 장착되고, 포스 센서(440)의 일부 구성이 핸들 바(410)의 외부로 노출될 수 있다.
도 14에서 P1은 사용자가 전진하기 위해 카트(10)에 가해지는 힘의 방향이다. P2는 사용자가 후진하기 위해 카트(100)에 가해지는 힘의 방향이다. 사용자가 전진하려고 할 때 P1 방향으로 카트(100)를 밀게 되고, 후진할 때에는 P2 방향으로 카트(100)를 당기게 된다. 이러한 힘의 방향은 포스 센싱 모듈(440)을 통해 감지되고, 제어부(250)로 전달되어 파워 어시스트 기능 제공에 활용될 수 있다.
도 14에 도시된 바와 같이, 핸들 커버 프레임(420)은 일자형의 핸들 바(410)를 양단에서 지지한다. 이를 위해, 핸들 커버 프레임(420)은 한 쌍으로 구비된다. 각각의 핸들 커버 프레임(420)은 일단이 핸들 바(410)의 일단에 결합되고, 타단이 하측을 향해 유선형으로 벤딩(bending)된 형태를 갖는다. 핸들 커버 프레임(420)은 내부에 그 형상을 따라 수용 공간이 형성된다. 수용 공간에 핸들 지지 프레임(430)이 삽입된다.
핸들 지지 프레임(430)은 핸들 어셈블리(400)의 뼈대가 되는 부분이다. 핸들 지지 프레임(430)은 각각의 핸들 커버 프레임(420) 내부에 삽입된다. 따라서 핸들 지지 프레임(430) 역시 한 쌍으로 구비된다.
핸들 바(410)나 핸들 커버 프레임(420)은 금속 재질이 아닌 재질로 만들어질 수 있으나, 핸들 지지 프레임(430)은 금속 재질 또는 강성이 높은 재질로 만들어질 수 있다. 핸들 지지 프레임(430)은 핸들 바(410)에 가해지는 힘(외력)을 지지하며, 외력을 포스 센서(440)로 전달한다. 이를 위해, 핸들 지지 프레임(430)은 포스 센싱 모듈(440)과 연결된다. 정확하게는 핸들 지지 프레임(430)은 포스 센싱 모듈(440)의 연결 브래킷(444)에 결합된다.
포스 센서(440)는 핸들 지지 프레임(430)의 하측인 본체(100)의 후면 상단에 배치될 수 있다. 포스 센서(440)는 수납부(110)의 후방에 배치되되 수납부(110) 상에 결합될 수도 있고, 수납부(110)를 지지하는 별도의 프레임 상에 결합될 수도 있다. 포스 센서(440)는 핸들 바(410)에 가해지는 힘의 방향을 감지하는 로드셀(442)과, 포스 센서(442)가 장착되는 연결 브래킷(444) 및 서포트 프레임(446)을 포함한다.
로드셀(442)은 사용자의 핸들 바(410)에 가해지는 힘인 외력의 방향을 측정하기 위한 센서이다. 로드셀(442)외에도 힘의 방향을 감지할 수 있는 센서가 포스센서(440)를 구성할 수 있다.
다만, 로드셀(442)일 경우, 노면의 진동 역시 센싱이 가능하다. 따라서, 진동 센서(260)의 기능과 포스센서(440) 기능을 동시에 제공하도록 본 발명의 일 실시예는 로드셀(442)를 핸들 어셈블리(400)에 배치될 수 있다.
로드셀은 외력에 의해 비례적으로 변형되는 탄성체와, 탄성체의 변형 정도를 전기적인 신호로 변환하는 스트레인 게이지를 이용한 하중감지 센서이다. 탄성체에 질량이 가해지면 탄성 거동이 발생하고, 스트레인 게이지에서 가해진 질량에 대응하는 저항 변화가 발생한다. 전기회로에서 저항 변화를 전기 신호로 변환함으로써 하중 변화를 감지할 수 있다.
로드셀은 그 형태에 따라 밀거나 당기는 힘을 측정할 수 있는 바(bar) 타입, 누르는 힘을 측정할 수 있는 원통형 타입, 당기는 힘을 측정할 수 있는 S자형 타입 등 여러 형태의 제품이 있다.
도 14에서는 핸들 바(410)를 밀거나 당기는 힘의 방향을 측정하기 위해 바 타입의 로드셀(442)을 포스 센서(440)로 사용한다. 카트(100)를 전진 또는 후진시키기 위해 핸들 바(410)를 P1 또는 P2 방향으로 밀면, 핸들 지지 프레임(430)으로 전달된 힘이 연결 브래킷(444)을 통해 로드셀(442)로 전달된다. 로드셀(442)로 전달된 힘의 방향에 따라 로드셀(442)의 감지값이 달라지므로, 이를 통해 제어부(250)는 핸들 바(410)에 가해지는 힘의 방향을 판단할 수 있다.
뿐만 아니라 로드셀(442)은 핸들로 전달되는 진동을 감지한다. 감지된 진동은 카트로봇(100)이 노면을 이동하는 과정에서 센싱된 것이며, 감지된 진동 관련된 데이터는 제어부(250)에 전달되고 제어부(250)는 현재 주행 중인 노면의 공간을 식별한다.
로드셀(442)은 한 쌍으로 구비되어 한 쌍의 핸들 지지 프레임(430)을 통해 전달되는 외력을 각각 감지한다. 로드셀(442)은 바 타입이므로, 일단은 연결 브래킷(444)에 결합되고 타단은 서포트 프레임(446) 상에 결합된다. 로드셀(442)이 연결 브래킷(444)에 결합되는 일단은 자유단이다. 로드셀(442)이 서포트 프레임(446)에 결합되는 타단은 고정단이다.
따라서 로드셀(442)은 연결 브래킷(444)에 힘이 가해지면 자유단 쪽이 변형된다. 자유단 쪽의 변형에 의해 포스 센서(442)의 저항값이 달라지고, 이를 통해 외력의 방향을 판단할 수 있다.
도 15는 본 발명의 다른 실시 예에 따른 카트의 후방을 도시한 후면 사시도이다. 도 16, 도 17은 도 15에 따른 핸들 어셈블리의 주요 부분을 확대한 도면이다.
핸들 어셈블리(400')는 카트(100)의 하부에 포스 센서(440')가 구비될 수 있다. 핸들 어셈블리(400')는 한 쌍의 핸들 지지 프레임(430')을 포함한다. 또한, 핸들 어셈블리(400')는 한 쌍의 제1 서브 프레임(432') 및 한 쌍의 제2 서브 프레임(434'), 제2 서브 프레임(434')에 연결되는 포스 센서(440')를 포함한다.
도 15 내지 도 17에 도시된 바와 같이, 핸들 커버 프레임(420')은 카트로봇(100)의 하부까지 연장되며, 내부에 핸들 지지 프레임(430')이 삽입된다. 핸들 커버 프레임(420')은 일단이 핸들 바(410)에 결합되고 타단은 하향 벤딩되어 연장된다. 핸들 커버 프레임(420')은 길이 방향(L)의 상측이 본체(100')에 결합될 수 있다. 즉, 핸들 커버 프레임(420')은 본체(100')에 결합되는 부위를 기준으로 P1 또는 P2 방향으로 가해지는 힘을 핸들 지지 프레임(430')으로 전달할 수 있을 정도의 유동이 가능하도록 본체(100')에 결합될 수 있다.
핸들 지지 프레임(430')은 길이 방향(L)을 따라 배치되는 일자형의 바(bar) 이다. 핸들 지지 프레임(430')은 하단의 일부가 핸들 커버 프레임(420')이 외측으로 노출된다. 그러나 핸들 지지 프레임(430')은 본체 내부에 수납되어 본체 외부로 노출되지는 않는다. 핸들 지지 프레임(430')의 하단에는 제1 서브 프레임(432') 및 제2 서브 프레임(434')이 결합된다.
제1 서브 프레임(432')은 일단이 핸들 지지 프레임(430')의 하단에 결합되고 타단이 하향 연장된다. 제1 서브 프레임(432')의 하향 연장된 부분 중 상측에 제2 서브 프레임(434') 및 힌지부(448')가 결합된다. 이 부분을 힌지 결합부(432a')로 정의한다. 또한, 제1 서브 프레임(432')의 하향 연장된 부분 중 하단에 연결 브래킷(444)에 의해 로드셀(442')이 결합된다.
제2 서브 프레임(434')은 힌지부(448')에 의해 제1 서브 프레임(432')에 회전 가능하게 결합된다. 제2 서브 프레임(434')은 상단이 힌지부(448')에 의해 제1 서브 프레임(432')에 결합되고, 타단은 하향 연장된다. 타단은 본체(100') 내부에 수납되어 고정될 수 있다. 상단 부분을 힌지 결합부(434a')로 정의한다.
제1 서브 프레임(432') 및 제2 서브 프레임(434')의 결합 부위가 핸들 지지 프레임(430')의 두께보다 두꺼워지지 않도록 각 힌지 결합부(432a', 434a')가 형성된 부분의 두께는 힌지 결합부(432a', 434a')가 없는 부분의 두께보다 얇게 형성될 수 있다.
또한, 제1 서브 프레임(432')을 별도로 구비하지 않고 핸들 지지 프레임(430')의 하단에 제2 서브 프레임(434')이 직결될 수도 있다.
포스 센서(440')는 로드셀(442')와, 로드셀(442')을 제1 서브 프레임(432')에 연결하는 연결 브래킷(444')과, 로드셀(442')을 지지하는 서포트 프레임(446)을 포함한다. 로드셀(442') 및 연결 브래킷(444')은 각각 한 쌍으로 구비되며, 서포트 프레임(446')은 하나로 구비될 수 있다.
연결 브래킷(444')은 포스 센서(442')를 제1 서브 프레임(432')에 결합시킨다. 연결 브래킷(444')의 일단에는 센서 안착부(444a)가 형성되어 볼트 등에 의해 포스 센서(442')가 결합된다. 연결 브래킷(444')의 타단에는 프레임 결합부(444b)가 형성되어 볼트 등에 의해 제1 서브 프레임(432')이 결합된다.
전술한 구성을 갖는 본 발명의 일 실시 예에 따른 카트에 있어서, 포스 센싱 및 파워 어시스트가 이루어지는 과정에 대해 설명하기로 한다.
제2 서브 프레임(434')의 하단은 카트로봇(100) 상에 고정되나 상단은 고정되지 않으므로 하단에 비해 약간의 유동이 가능하다.
제1 서브 프레임(432')은 상단이 핸들 지지 프레임(430')에 결합되고 하단은 제2 서브 프레임(434')에 회전 가능하게 결합되며 카트로봇(100)에 고정되지 않는다. 따라서 제2 서브 프레임(434')의 하단은 힌지부(448')를 기준으로 도 16의 하단 화살표 방향으로 회전이 가능하다.
핸들 지지 프레임(430')은 핸들 커버 프레임(420')에 삽입되고 타단이 제1 서브 프레임(432')에 결합된다. 따라서 핸들 지지 프레임(430')은 힌지부(448')를 기준으로 상단이 약간의 유동을 가질 수 있다(도 16의 L 방향 점선이 핸들 지지 프레임의 변위임).
핸들 바(410)에 가해지는 힘은 P1 방향 또는 P2 방향(도 14 참조)이다. 따라서 핸들 바(410)에 P1 방향 또는 P2 방향으로 힘이 가해지면, 핸들 지지 프레임(430'), 제1 서브 프레임(432')은 힌지부(448')를 기준으로 화살표 방향으로 움직이게 된다(도 16 하단 화살표 방향 참조).
본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니며, 본 발명의 목적 범위 내에서 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 반도체 기록소자를 포함하는 저장매체를 포함한다. 또한 본 발명의 실시예를 구현하는 컴퓨터 프로그램은 외부의 장치를 통하여 실시간으로 전송되는 프로그램 모듈을 포함한다.
이상에서는 본 발명의 실시예를 중심으로 설명하였지만, 통상의 기술자의 수준에서 다양한 변경이나 변형을 가할 수 있다. 따라서, 이러한 변경과 변형이 본 발명의 범위를 벗어나지 않는 한 본 발명의 범주 내에 포함되는 것으로 이해할 수 있을 것이다.

Claims (22)

  1. 카트로봇을 이동시키는 이동부;
    카트로봇의 이동 과정에서 발생한 진동을 센싱하는 진동 센서; 및
    상기 진동 센서가 센싱한 데이터에서 특징 데이터를 추출하여 상기 특징 데이터와 파라미터를 비교하여 상기 카트로봇이 주행 중인 공간을 식별하고, 상기 식별된 공간에 적합하게 상기 이동부의 이동 방향 또는 이동 속도를 제어하거나 상기 이동부에 인가되는 전기 에너지의 크기를 변화시키는 제어부를 포함하는, 인공지능을 이용하여 주행공간을 식별하는 카트로봇.
  2. 제1항에 있어서,
    상기 카트로봇의 핸들 어셈블리에 가해진 힘의 변화를 센싱하는 포스 센서를 더 포함하며,
    상기 진동 센서는 상기 포스 센서를 구성하는 로드셀인, 인공지능을 이용하여 주행공간을 식별하는 카트로봇.
  3. 제1항에 있어서,
    상기 제어부는 상기 공간을 식별한 결과에 따라 상기 이동부에 전기 에너지를 제공하는 모터의 PID 값을 조절하는, 인공지능을 이용하여 주행공간을 식별하는 카트로봇.
  4. 제1항에 있어서,
    상기 제어부는 상기 카트로봇이 이동하는 과정에서 상기 진동 센서가 센싱한 데이터를 버퍼링한 후,
    상기 버퍼링한 데이터에서 상기 특징 데이터를 추출하는, 인공지능을 이용하여 주행공간을 식별하는 카트로봇.
  5. 제1항에 있어서,
    상기 진동 센서는 로드셀을 포함하는 제1진동 센서와, IMU 센서를 포함하는 제2진동 센서를 포함하며,
    상기 제어부가 상기 제1진동 센서의 신호를 버퍼링하여 제1특징 데이터를 산출한 후, 상기 카트로봇이 주행 중인 공간을 식별하지 못할 경우,
    상기 제어부는 상기 제2진동 센서의 신호를 버퍼링하여 제2특징 데이터를 산출한 후, 상기 카트로봇이 주행 중인 공간을 식별하는, 인공지능을 이용하여 주행공간을 식별하는 카트로봇.
  6. 제1항에 있어서,
    상기 카트로봇의 수납부에 적재된 물건의 무게를 센싱하는 무게 센서를 더 포함하며,
    상기 제어부는 상기 무게 센서에서 센싱된 무게 정보를 이용하여 상기 공간을 식별하는, 인공지능을 이용하여 주행공간을 식별하는 카트로봇.
  7. 제1항에 있어서,
    상기 제어부는 상기 추출된 특징 데이터를 학습하는 학습 모듈을 더 포함하며,
    상기 학습 모듈은 상기 특징 데이터를 둘 이상의 공간 중 어느 하나의 공간으로 매핑하는 공간 구분 파라미터를 생성하는, 인공지능을 이용하여 주행공간을 식별하는 카트로봇.
  8. 제1항에 있어서,
    상기 카트로봇은 상기 진동 센서가 센싱한 데이터를 서버로 전송하는 통신부를 더 포함하는, 인공지능을 이용하여 주행공간을 식별하는 카트로봇.
  9. 제1항에 있어서,
    상기 카트로봇의 주변에 배치된 장애물을 센싱하는 장애물 센서를 더 포함하며,
    상기 제어부는 상기 식별된 공간에 적합하게 상기 장애물 센서가 사물 또는 인체 중 어느 하나 이상을 더 정확하게 감지하도록 제어하는, 인공지능을 이용하여 주행공간을 식별하는 카트로봇.
  10. 카트로봇이 제1공간을 주행하는 과정에서 상기 카트로봇의 진동 센서가 센싱한 제1데이터와, 상기 카트로봇이 제2공간을 주행하는 과정에서 상기 카트로봇의 진동 센서가 센싱한 제2데이터를 저장하는 저장부; 및
    상기 저장부에 저장된 다수의 제1데이터 및 다수의 제2데이터를 분류하여 상기 다수의 제1데이터를 상기 제1공간으로 식별하며, 상기 다수의 제2데이터를 상기 제2공간으로 식별하는 파라미터를 생성하는 학습부를 포함하는, 인공지능을 이용하여 주행공간을 식별하는 학습 모듈.
  11. 제10항에 있어서,
    상기 제1데이터는 상기 제1공간에서 상기 카트로봇의 이동 속도와 상기 카트로봇의 진동 센서가 센싱한 진폭의 크기 또는 진폭이 유지된 시간적 크기를 포함하며,
    상기 제2데이터는 상기 제2공간에서 상기 카트로봇의 이동 속도와 상기 카트로봇의 진동 센서가 센싱한 진폭의 크기 또는 진폭이 유지된 시간적 크기를 포함하며,
    상기 파라미터는 상기 다수의 제1데이터 및 상기 다수의 제2데이터 사이의 경계선을 지시하는, 인공지능을 이용하여 주행공간을 식별하는 학습 모듈.
  12. 제10항에 있어서,
    상기 제1데이터 및 상기 제2데이터는 상기 카트로봇의 수납부에 적재된 물건의 무게 정보를 포함하는, 인공지능을 이용하여 주행공간을 식별하는 학습 모듈.
  13. 제10항에 있어서,
    상기 학습 모듈은 서버에 배치되며,
    상기 서버는 다수의 카트로봇들로부터 상기 제1데이터 및 상기 제2데이터를 수신하는 통신부를 더 포함하는, 인공지능을 이용하여 주행공간을 식별하는 학습 모듈.
  14. 카트로봇의 이동부가 상기 카트로봇을 이동시키는 단계;
    상기 카트로봇의 진동 센서가 상기 카트로봇의 이동 과정에서 발생한 진동을 센싱하는 단계;
    상기 카트로봇의 제어부가 상기 진동 센서가 센싱한 데이터에서 특징 데이터를 추출하는 단계;
    상기 제어부가 상기 특징 데이터와 파라미터를 비교하여 상기 카트로봇이 주행 중인 공간을 식별하는 단계; 및
    상기 제어부가 상기 식별된 공간에 적합하게 상기 이동부의 이동 방향 또는 이동 속도를 제어하거나 상기 이동부에 인가되는 전기 에너지의 크기를 변화시키는 단계를 포함하는, 인공지능을 이용하여 카트로봇이 주행공간을 식별하는 방법.
  15. 제14항에 있어서,
    상기 카트로봇은 상기 카트로봇의 핸들 어셈블리에 가해진 힘의 변화를 센싱하는 포스 센서를 더 포함하며,
    상기 진동 센서는 상기 포스 센서를 구성하는 로드셀인, 인공지능을 이용하여 카트로봇이 주행공간을 식별하는 방법.
  16. 제14항에 있어서,
    상기 제어부가 상기 공간을 식별한 결과에 따라 상기 이동부에 전기 에너지를 제공하는 모터의 PID 값을 조절하는 단계를 더 포함하는, 인공지능을 이용하여 카트로봇이 주행공간을 식별하는 방법.
  17. 제14항에 있어서,
    상기 제어부가 상기 카트로봇이 이동하는 과정에서 상기 진동 센서가 센싱한 데이터를 버퍼링하는 단계; 및
    상기 버퍼링한 데이터에서 상기 특징 데이터를 추출하는 단계를 더 포함하는, 인공지능을 이용하여 카트로봇이 주행공간을 식별하는 방법.
  18. 제14항에 있어서,
    상기 진동 센서는 로드셀을 포함하는 제1진동 센서와, IMU 센서를 포함하는 제2진동 센서를 포함하며,
    상기 제어부가 상기 제1진동 센서의 신호를 버퍼링하여 제1특징 데이터를 산출한 후, 상기 카트로봇이 주행 중인 공간을 식별하지 못할 경우,
    상기 제어부는 상기 제2진동 센서의 신호를 버퍼링하여 제2특징 데이터를 산출한 후, 상기 카트로봇이 주행 중인 공간을 식별하는 단계를 더 포함하는, 인공지능을 이용하여 카트로봇이 주행공간을 식별하는 방법.
  19. 제14항에 있어서,
    상기 카트로봇의 수납부에 적재된 물건의 무게를 센싱하는 무게 센서를 더 포함하며,
    상기 제어부는 상기 무게 센서에서 센싱된 무게 정보를 이용하여 상기 공간을 식별하는 단계를 더 포함하는, 인공지능을 이용하여 카트로봇이 주행공간을 식별하는 방법.
  20. 제14항에 있어서,
    상기 제어부는 상기 추출된 특징 데이터를 학습하는 학습 모듈을 더 포함하며,
    상기 학습 모듈은 상기 특징 데이터를 둘 이상의 공간 중 어느 하나의 공간으로 매핑하는 공간 구분 파라미터를 생성하는 단계를 더 포함하는, 인공지능을 이용하여 카트로봇이 주행공간을 식별하는 방법.
  21. 제14항에 있어서,
    상기 카트로봇의 통신부는 상기 진동 센서가 센싱한 데이터를 서버로 전송하는 단계를 더 포함하는, 인공지능을 이용하여 카트로봇이 주행공간을 식별하는 방법.
  22. 제14항에 있어서,
    상기 카트로봇의 주변에 배치된 장애물을 센싱하는 장애물 센서를 더 포함하며,
    상기 제어부는 상기 식별된 공간에 적합하게 상기 장애물 센서가 사물 또는 인체 중 어느 하나 이상을 더 정확하게 감지하도록 제어하는 단계를 더 포함하는, 인공지능을 이용하여 카트로봇이 주행공간을 식별하는 방법.
KR1020190090023A 2019-05-02 2019-07-25 인공지능을 이용하여 주행공간을 식별하는 방법, 학습모듈 및 카트로봇 KR20190095182A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
PCT/KR2019/005288 WO2020222342A1 (ko) 2019-05-02 2019-05-02 인공지능을 이용하여 주행공간을 식별하는 방법, 학습모듈 및 카트로봇
WOPCT/KR2019/005288 2019-05-02

Publications (1)

Publication Number Publication Date
KR20190095182A true KR20190095182A (ko) 2019-08-14

Family

ID=67622465

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190090023A KR20190095182A (ko) 2019-05-02 2019-07-25 인공지능을 이용하여 주행공간을 식별하는 방법, 학습모듈 및 카트로봇

Country Status (3)

Country Link
US (1) US20200393831A1 (ko)
KR (1) KR20190095182A (ko)
WO (1) WO2020222342A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111331596A (zh) * 2020-01-22 2020-06-26 深圳国信泰富科技有限公司 一种机器人自动轨迹校正方法及系统
KR20210147685A (ko) * 2020-05-29 2021-12-07 한국로봇융합연구원 다중 자율 로봇의 작업 계획 관리 장치 및 방법

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3051279B1 (fr) * 2016-05-10 2021-01-29 Vincent Jacquemart Procede de gestion de deplacements d’une flotte d’objets mobiles autonomes, procede de deplacement d’un objet mobile autonome, dispositifs et produits programme d’ordinateur correspondants
KR20210136185A (ko) * 2019-04-08 2021-11-17 엘지전자 주식회사 파워 어시스트 기능을 갖는 카트의 핸들 어셈블리 및 카트
WO2020226198A1 (ko) * 2019-05-07 2020-11-12 엘지전자 주식회사 파워 어시스트 기능을 갖는 카트의 핸들 어셈블리 및 카트
CN112869969B (zh) * 2021-01-14 2023-01-17 安徽金百合医疗器械有限公司 一种用于电动轮椅的全方位通行策略生成系统和方法
CN115338902A (zh) * 2022-10-20 2022-11-15 常州龙源智能机器人科技有限公司 一种用于服务机器人的防洒阻尼托盘

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120001845U (ko) * 2010-09-02 2012-03-12 이정철 힘 감지용 조작 핸들이 장착된 전동식 카트
KR101502975B1 (ko) * 2013-05-21 2015-03-16 한국생산기술연구원 카트 제어 장치 및 방법
KR101638242B1 (ko) * 2014-09-30 2016-07-11 가천대학교 산학협력단 전동 동력 보조 안전 유모차 제어 방법 및 이를 위한 제어 장치
KR20180109107A (ko) * 2017-03-27 2018-10-08 (주)로직아이텍 매장 및 창고에서 활용할 수 있는 지능형 카트로봇장치
GB2578031A (en) * 2017-06-28 2020-04-15 Mitsubishi Electric Eng Position detection system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111331596A (zh) * 2020-01-22 2020-06-26 深圳国信泰富科技有限公司 一种机器人自动轨迹校正方法及系统
CN111331596B (zh) * 2020-01-22 2021-05-18 深圳国信泰富科技有限公司 一种机器人自动轨迹校正方法及系统
KR20210147685A (ko) * 2020-05-29 2021-12-07 한국로봇융합연구원 다중 자율 로봇의 작업 계획 관리 장치 및 방법

Also Published As

Publication number Publication date
WO2020222342A1 (ko) 2020-11-05
US20200393831A1 (en) 2020-12-17

Similar Documents

Publication Publication Date Title
KR20190095182A (ko) 인공지능을 이용하여 주행공간을 식별하는 방법, 학습모듈 및 카트로봇
US10173673B1 (en) Distribution decision trees
Stavens et al. A self-supervised terrain roughness estimator for off-road autonomous driving
CN109901572B (zh) 自动驾驶方法、训练方法及相关装置
KR102275300B1 (ko) 이동 로봇 및 그 제어방법
US20160140438A1 (en) Hyper-class Augmented and Regularized Deep Learning for Fine-grained Image Classification
CN106741028A (zh) 一种机场智能行李车
US11565415B2 (en) Method of tracking user position using crowd robot, tag device, and robot implementing thereof
Vulpi et al. Recurrent and convolutional neural networks for deep terrain classification by autonomous robots
Krebs et al. Adaptive rover behavior based on online empirical evaluation: Rover–terrain interaction and near‐to‐far learning
US11513532B2 (en) Method of moving in power assist mode reflecting physical characteristics of user and robot implementing thereof
KR20210072362A (ko) 인공 지능 모델에 대한 학습 데이터를 생성하는 인공 지능 장치 및 그 방법
CN112438664B (zh) 通过人工智能识别卡堵情形的机器人清洁器及其操作方法
CN112401747B (zh) 通过人工智能避开卡住情况的机器人清洁器及其操作方法
US20220097785A1 (en) Robot
KR20210110610A (ko) 에스컬레이터를 검출하기 위한 시스템, 장치, 및 방법
US11635759B2 (en) Method of moving robot in administrator mode and robot of implementing method
US11334094B2 (en) Method for maintaining stability of mobile robot and mobile robot thereof
Gajjar et al. A comprehensive study on lane detecting autonomous car using computer vision
Muller et al. Real-time adaptive off-road vehicle navigation and terrain classification
Lamon 3D-position tracking and control for all-terrain robots
Vulpi et al. Deep terrain estimation for planetary rovers
Libby Self-Supervised Learning on Mobile Robots Using Acoustics, Vibration, and Visual Models to Build Rich Semantic Terrain Maps
Wilson High Speed Navigation of UGVs in Rough Unknown Terrains
Sivaprakasam et al. Tartandrive 1.5: Improving large multimodal robotics dataset collection and distribution