KR102318942B1 - 설치물에 평행하게 정지하는 로봇 및 이동 방법 - Google Patents

설치물에 평행하게 정지하는 로봇 및 이동 방법 Download PDF

Info

Publication number
KR102318942B1
KR102318942B1 KR1020190119796A KR20190119796A KR102318942B1 KR 102318942 B1 KR102318942 B1 KR 102318942B1 KR 1020190119796 A KR1020190119796 A KR 1020190119796A KR 20190119796 A KR20190119796 A KR 20190119796A KR 102318942 B1 KR102318942 B1 KR 102318942B1
Authority
KR
South Korea
Prior art keywords
robot
installation
parallel
control unit
obstacle
Prior art date
Application number
KR1020190119796A
Other languages
English (en)
Other versions
KR20200111602A (ko
Inventor
박혜리
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to US16/750,855 priority Critical patent/US11511425B2/en
Publication of KR20200111602A publication Critical patent/KR20200111602A/ko
Application granted granted Critical
Publication of KR102318942B1 publication Critical patent/KR102318942B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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
    • 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
    • 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
    • B25J13/085Force or torque sensors
    • 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
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62BHAND-PROPELLED VEHICLES, e.g. HAND CARTS OR PERAMBULATORS; SLEDGES
    • B62B5/00Accessories or details specially adapted for hand carts
    • B62B5/0006Bumpers; Safety devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62BHAND-PROPELLED VEHICLES, e.g. HAND CARTS OR PERAMBULATORS; SLEDGES
    • B62B5/00Accessories or details specially adapted for hand carts
    • B62B5/0026Propulsion aids
    • B62B5/0069Control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62BHAND-PROPELLED VEHICLES, e.g. HAND CARTS OR PERAMBULATORS; SLEDGES
    • B62B5/00Accessories or details specially adapted for hand carts
    • B62B5/0026Propulsion aids
    • B62B5/0069Control
    • B62B5/0073Measuring a force

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

본 발명은 설치물에 평행하게 정지하는 로봇 및 이동 방법에 관한 것으로, 본 발명의 일 실시예에 의한 설치물에 평행하게 정지하는 로봇은 로봇의 일시 정지 상태를 판단하고, 장애물 센서가 장애물과의 거리를 산출하면, 로봇 주변에 배치된 설치물 중 인접한 설치물에 평행하여 근접하게 배치되도록 로봇을 이동시킨다.

Description

설치물에 평행하게 정지하는 로봇 및 이동 방법{ROBOT STOPPING PARALLEL TO THE INSTALLED OBJECT AND METHOD OF PARKING THEREOF}
본 발명은 설치물과 평행하게 정지하는 로봇 및 이동 방법에 관한 기술이다.
대형 마트, 백화점, 공항, 골프장 등 인적, 물적 교류가 활발하게 발생하는 공간에서 다양한 사람들이 다양한 물건을 소지하고 이동한다. 이 경우, 사용자의 편의를 제공하기 위해 물건을 이동시킴에 있어서 물건을 적재하는 카트와 같은 장치 일종의 로봇으로 사용자를 보조할 수 있다.
종래에는 사용자가 카트를 직접 핸들링하여 이동시켰다. 그러나 공간 내에 사용자가 다양한 품목의 상품을 확인하는 과정에서 카트가 통로 중간에 배치될 수 있다. 이러한 상황에서 사용자가 매번 카트를 제어하는 것은 많은 시간과 노력을 필요로 한다.
따라서, 사용자가 자유롭게 이동하면서 다양한 활동을 하기 위해서는 카트와 같은 장치들이 자율로 동작하는 것이 필요하다. 특히, 사용자가 별도로 제어하지 않으면서도 카트가 사용자를 추종하며 이동하거나 또는 사용자의 제어에 따라 전기적 에너지를 이용하여 이동할 수 있어야 한다. 그런데 이러한 자율 또는 반자율 이동 후 카트와 같은 장치가 정지한 경우, 정지한 장치가 다른 장치나 사람의 통행을 방해할 수 있다. 특히, 장치들이 많은 공간 내에서 장치가 비스듬하게 정지할 경우 이 장치는 다른 장치의 이동을 방해할 수 있다. 이에, 장치들이 배치된 공간의 특수성을 반영하여 카트와 같은 장치가 효율적으로 정지하는 기술이 필요하다.
본 명세서에서는 전술한 문제점을 해결하기 위한 것으로, 로봇이 일시적으로 정지할 경우 벽, 매대 등과 같은 설치물에 평행하게 이동 후 정지하도록 로봇을 제어하여 공간 내에서 다수의 로봇들의 이동 효율을 높이고자 한다.
또한, 본 명세서에서는 로봇이 센싱한 공간의 거리 정보를 이용하여 로봇이 설치물에 평행하게 근접하여 이동 및 정지하는 방법 및 이를 구현하는 로봇을 제공하고자 한다.
또한, 본 명세서에서는 로봇이 공간 내에서 평행을 유지하며 정지하여 다른 로봇들과의 충돌을 회피하고 공간 내의 복잡도를 낮출 수 있도록 한다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
본 발명의 일 실시예에 의한 설치물에 평행하게 정지하는 로봇은 로봇의 일시 정지 상태를 판단하고, 장애물 센서가 장애물과의 거리를 산출하면, 로봇 주변에 배치된 설치물 중 인접한 설치물에 평행하여 근접하게 배치되도록 로봇을 이동시키는 제어부를 포함한다.
본 발명의 일 실시예에 의한 설치물에 평행하게 정지하는 로봇은 장애물 센서가 로봇의 좌측에 배치된 설치물과의 거리와 로봇의 우측에 배치된 설치물과의 거리를 산출하고, 제어부가 좌측 또는 우측의 설치물들 중 근접한 설치물 하나를 선택하여, 선택한 설치물로 로봇을 전진 또는 후진으로 이동시킨다.
본 발명의 일 실시예에 의한 설치물에 평행하게 정지하는 로봇의 제어부는 설치물을 향해 배치된 장애물 센서들이 산출한 거리를 비교하여 로봇의 이동 방향을 제어한다.
본 발명의 일 실시예에 의한 설치물에 평행하게 정지하는 로봇의 제어부는 장애물 센서가 산출한 거리를 누적하여 저장하며, 제어부는 로봇이 이동한 경로를 중심으로 누적하여 저장한 거리를 반영하여 설치물의 위치를 산출한다.
본 발명의 일 실시예에 의한 설치물에 평행하게 로봇이 정지하는 방법은 로봇의 장애물 센서가 주변에 배치된 장애물을 센싱하는 단계와, 로봇의 제어부가 로봇의 일시 정지 상태를 판단하는 단계와, 장애물 센서가 산출한 장애물과의 거리를 이용하여 제어부가 로봇 주변에 배치된 설치물 중 인접한 설치물을 선택하는 단계와, 제어부가 로봇을 선택된 설치물에 평행하게 근접하여 배치되도록 로봇의 이동 경로를 생성하는 단계와, 이동부가 이동 경로를 따라 로봇을 이동하시키는 단계를 포함한다.
본 발명의 실시예들을 적용할 경우, 로봇은 벽, 매대 등과 같은 설치물과 거리를 센싱하여 로봇이 일시적으로 정지할 경우 설치물에 근접하여 평행하게 이동 후 정지한 상태를 유지하여 공간 내에의 이동 효율을 높일 수 있다.
본 발명의 실시예들을 적용할 경우, 로봇은 다수의 로봇들과 충돌을 회피하기 위해 평행하게 이동 후 정지한 상태를 유지하므로 자율 또는 반자율로 이동하는 로봇과 다른 로봇이 충돌할 가능성을 줄인다.
본 발명의 실시예들을 적용할 경우, 공간 내에서 설치물을 센싱하여 설치물에 평행하게 로봇이 이동하도록 작은 수의 센서를 이용하여 설치물을 센싱할 수 있으므로 별도의 장치 없이도 로봇을 일시적으로 정지시킬 수 있다.
본 발명의 효과는 전술한 효과에 한정되지 않으며, 본 발명의 당업자들은 본 발명의 구성에서 본 발명의 다양한 효과를 쉽게 도출할 수 있다.
도 1은 본 발명의 일 실시예에 의한 카트의 형태를 가지는 로봇의 외관을 보여준다.
도 2는 본 발명의 일 실시예에 의한 로봇의 제어모듈의 구성요소를 보여준다.
도 3은 본 발명의 일 실시예에 의한 파워 어시스트 모드에서 평행 정지하는 과정을 보여준다.
도 4는 본 발명의 일 실시예에 의한 로봇이 설치물에 평행하게 정지하는 과정을 보여준다.
도 5 및 도 6은 본 발명의 일 실시예에 의한 로봇의 측면에 배치된 장애물 센서를 이용하여 설치물에 평행하게 정지하는 과정을 보여준다.
도 6은 제어부가 좌측 및 우측의 설치물을 검색하여 로봇을 설치물에 평행하게 정지시키기 위한 상세한 과정을 보여준다.
도 7은 본 발명의 일 실시예에 의한 추종 모드에서 로봇이 평행 정지하는 과정을 보여준다.
도 8 내지 10은 본 발명의 일 실시예에 의한 설치물의 위치를 산출하여 저장하는 과정을 보여준다.
도 11은 본 발명의 일 실시예에 의한 로봇에 배치된 측위 센서와 장애물 센서의 센싱 범위 및 방향을 보여주는 도면이다.
도 12은 본 발명의 일 실시예에 의한 로봇의 외관이 삼각형인 경우 로봇의 측면에 배치된 장애물 센서를 이용하여 설치물에 평행하게 정지하는 과정을 보여준다.
도 13은 본 발명의 일 실시예에 의한 도 12의 로봇이 설치물에 평행하여 정지하는 실시예를 보여준다.
도 14는 도 12와 유사한 형상인 사다리꼴 로봇이 설치물에 평행하여 정지하는 실시예를 보여준다.
이하, 도면을 참조하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조 부호를 붙이도록 한다. 또한, 본 발명의 일부 실시예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가질 수 있다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 수 있다.
본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질, 차례, 순서 또는 개수 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 다른 구성 요소가 "개재"되거나, 각 구성 요소가 다른 구성 요소를 통해 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
또한, 본 발명을 구현함에 있어서 설명의 편의를 위하여 구성요소를 세분화하여 설명할 수 있으나, 이들 구성요소가 하나의 장치 또는 모듈 내에 구현될 수도 있고, 혹은 하나의 구성요소가 다수의 장치 또는 모듈들에 나뉘어져서 구현될 수도 있다.
이하, 본 명세서에서 사용자를 추종하며 자율적으로 이동하거나 사용자의 제어에 따라 전기적 에너지에 기반하여 이동하는 장치들을 스마트 카트 혹은 줄여서 카트 또는 로봇라고 한다. 이하 설명의 편의를 위해 로봇이라고 통칭한다. 로봇은 대형 마트나 백화점 등 매장 내에서 사용할 수 있다. 또는 공항이나 항만과 같이 여행객들이 많이 이동하는 공간 내에서 사용자들이 로봇을 사용할 수 있다. 그리고 로봇은 골프장과 같은 레저 공간에서도 사용될 수 있다.
또한, 로봇은 사용자의 위치를 추적하여 사용자를 따르면서 소정의 보관 공간을 가지는 모든 장치를 포함한다. 로봇은 사용자가 밀거나 당기는 등의 제어에 따라 전기적 동력을 이용하여 이동하는 모든 장치를 포함한다. 그 결과, 사용자는 로봇을 전혀 조정할 필요 없이 로봇을 이동시킬 수 있다. 또한 사용자는 매우 작은 힘을 들여서 로봇을 이동시킬 수 있다.
따라서, 로봇은 병원에서 특정한 약품 또는 치료 장비를 수송하는 장치를 포함한다. 또한 로봇은 환자를 이송하는 침대와 같은 장치를 포함한다. 그외에도 로봇은 대형화된 공장에서 상품을 수송하기 위해 상품을 적재하여 이동하는 장치를 포함한다.
도 1은 본 발명의 일 실시예에 의한 카트의 형태를 가지는 로봇의 외관을 보여준다. 도 2는 본 발명의 일 실시예에 의한 로봇의 제어모듈(150)의 구성요소를 보여준다.
로봇(100)는 수납부(110)와 핸들 어셈블리(120), 제어모듈(150), 이동부(190)를 포함한다. 수납부(110)는 사용자에 의해 사물이 수납되거나 적재되는 공간이다. 핸들 어셈블리(120)는 사용자가 로봇(100)을 수동으로 이동을 제어하거나, 반자동으로 이동을 제어할 수 있도록 한다.
핸들 어셈블리(120)를 이용하여 사용자는 로봇(100)을 전후로 밀거나 방향을 변경할 수 있다. 이 경우, 핸들 어셈블리(120)에 가해진 힘의 크기나 좌우 힘의 차이에 따라 로봇(100)는 전기적 에너지를 이용하여 반자동으로 주행할 수 있도록 한다.
제어모듈(150)는 로봇(100)의 이동을 제어한다. 특히, 제어모듈(150)는 사용자를 추종할 수 있도록 로봇(100)의 자율 주행을 제어한다. 또한, 제어모듈(150)은 사용자가 작은 힘으로 로봇을 밀거나 당길 때 사용자의 힘을 보조하여 로봇이 주행하는 반자율 주행(파워 어시스트)을 제어한다.
제어모듈(150)은 이동부(190)를 제어할 수 있다. 또한 로봇(100)의 여러 영역에 사용자의 추종을 위한 사용자 위치를 추적하는 측위 센서가 배치될 수 있다. 또한 로봇(100)의 여러 영역에는 주변의 장애물을 센싱하기 위한 장애물 센서가 배치될 수 있다.
장애물 센서(220)는 로봇의 주변에 배치된 장애물을 센싱한다. 장애물 센서(220)는 사람, 벽, 사물, 고정물 또는 설치물(installed object) 등과 로봇과의 거리를 센싱할 수 있다. 또는 장애물 센서(220)는 로봇 주변의 사물/사람/설치물 등의 영상을 촬영할 수 있다. 장애물 센서(220)는 로봇(100)의 하단에 배치될 수 있다.
예를 들어 155에서 지시되는 영역에 로봇의 전/좌/우/후방의 장애물을 센싱하기 위해 다수의 장애물 센서(220)들이 배치될 수 있다. 장애물 센서(220)는 로봇(100)의 하단에 동일한 높이에 배치될 수 있다. 또는 장애물 센서(220)는 로봇(100)의 하단에 둘 이상의 높이가 다른 영역에 배치될 수 있다. 또한 전면/양측면과 같이 로봇(100)이 이동하는 방향으로 장애물 센서가 배치될 수 있다. 또는 로봇(100)이 후진할 경우, 전면 및 후면, 양측면에 장애물 센서가 배치될 수 있다.
측위 센서(210)는 자율 주행을 지원하는 로봇에 필수 구성요소이다. 그러나 반자율 주행(파워 어시스트) 주행 만을 지원하는 로봇의 경우 측위 센서(210)는 선택적으로 배치될 수 있다.
측위 센서(210)는 송신모듈(500)을 소지하는 사용자의 위치를 추적할 수 있으며, 로봇(100)의 상단 또는 측면 등에 배치될 수 있다. 그러나 이들 센서들의 위치는 실시예에 따라 다양하게 변경될 수 있으며 본 발명이 이에 한정되지 않는다. 그리고 센서들의 위치와 무관하게 제어모듈(150)은 센서들을 제어하거나 센서들이 센싱한 정보를 활용한다. 즉, 센서들은 물리적 위치에 상관없이 논리적으로 제어모듈(150)의 구성요소이다.
또한, 핸들 어셈블리(120)에는 사용자에게 소정의 정보를 출력하는 인터페이스부가 배치될 수 있으며, 인터페이스부 역시 제어모듈(150)의 제어를 받는 구성요소가 될 수 있다. 그리고 핸들 어셈블리(120)는 사용자가 로봇을 밀거나 당기는 힘을 센싱하는 포스 센서(240)를 포함한다.
포스 센서(240)는 핸들 어셈블리(120)의 조작에 의해 힘의 변화가 가해지는 로봇(100)의 외부 또는 내부에 배치될 수 있다. 포스 센서(240)의 위치나 구성은 다양하게 적용될 수 있으며 본 발명의 실시예들은 특정한 포스 센서(240)에 한정되지 않는다.
도 2는 제어모듈(150)을 구성하는 논리적 구성요소들인 측위센서(210), 포스센서(240), 장애물 센서(220), 인터페이스부(230), 제어부(250), 통신부(280)를 도시한 도면이다.
측위센서(210)는 송신모듈(500)로부터 신호를 수신하여 송신모듈(500)의 위치를 측정한다. 측위 센서(210)가 UWB(Ultra-wideband)를 이용할 경우, 사용자는 측위 센서(210)에게 소정의 신호를 송신하는 송신모듈(500)을 소지할 수 있다. 그리고 측위 센서(210)는 송신모듈(500)의 위치로 사용자의 위치를 확인할 수 있다. 일 실시예로 사용자는 손목에 부착하는 밴드 형태의 송신모듈(500)을 소지할 수 있다.
포스센서(240)는 핸들 어셈블리(120)에 배치되거나 핸들 어셈블리(120)에 연결된 로봇(100)의 외부 또는 내부에 배치된다. 포스센서(240)는 사용자가 핸들 어셈블리(120)에 힘을 가할 경우, 힘의 크기나 힘의 변화 등을 센싱한다. 포스 센서(240)는 홀 센서, 마그네틱 타입 센서, 버튼식 센서 등 다양한 센서를 포함한다. 포스 센서(240)는 좌측 포스센서와 우측 포스센서로 각각 핸들 어셈블리(120) 또는 로봇(100) 내부 또는 외부에 배치될 수 있다.
장애물 센서(220)는 로봇의 주변에 배치된 장애물을 센싱한다. 장애물 센서는 거리를 측정하거나 영상을 취득하여 영상 내에서 장애물을 확인하는 센서를 포함한다. 거리 측정을 위한 장애물 센서(220)는 적외선 센서나 초음파 센서, 라이다 센서 등을 일 실시예로 한다.
또한 장애물 센서(220)는 뎁스 센서 혹은 RGB 센서를 포함한다. RGB 센서의 경우 영상 내에서 장애물과 설치물을 감지할 수 있다. 뎁스 센서는 영상 내에서 각 지점 별 뎁스 정보를 산출한다.
제어부(250)는 송신모듈의 위치정보를 누적하여 저장하고, 저장된 송신모듈의 위치정보에 대응하는 이동 경로를 생성한다. 누적하여 위치정보를 저장하기 위해서 제어부(250)는 송신모듈(500) 및 로봇(100)의 위치정보를 일정한 기준점을 기반으로 하는 절대위치정보(절대좌표)로 저장할 수 있다.
또는 제어부(250)는 송신모듈(500)과의 거리에 기반하여 로봇(100)의 일시 정지 상태를 확인하기 위해 로봇(100)을 중심으로 송신모듈(500)의 상대위치정보(상대좌표)를 저장할 수 있다. 일시 정지 상태란 사용자가 로봇(100)을 제어하지 않거나 로봇 주변에 있기 때문에 로봇(100)이 일시적으로 정지하는 상태를 의미한다.
또한 제어부(250)는 포스 센서(240)가 센싱한 힘의 변화 또는 크기에 따라, 이동부의 이동 방향 또는 이동 속도를 제어한다.
또한, 제어부(250)는 장애물 센서(220)가 센싱한 값을 이용하여 로봇 주변에 배치된 설치물을 검출한다. 제어부(250)는 로봇의 측면 및 전면에 배치된 장애물 센서(220)를 이용하여 설치물을 확인할 수 있다. 특히 설치물과 평행을 이루기 위해서 로봇은 설치물의 수직 평면을 확인할 수 있다.
설치물의 수직 평면이란, 매대나 벽 같은 설치물이 배치된 바닥과 설치물이 수직으로 이루는 면을 의미한다. 예를 들어 설치물이 벽인 경우 벽면을 수직 평면이라 지시한다. 또한 설치물이 매대인 경우, 매대에 적재된 물건들이 구성하는 평면, 매대의 측면 등을 수직 평면이라 한다.
설치물의 수직 평면이란, 실제 설치물의 수직 외곽선을 일 실시예로 한다. 또한 설치물의 수직 평면이란 실제 설치물의 외곽 부분에서 돌출된 부분과 들어간 부분 등을 반영한 가상의 평면을 일 실시예로 한다. 마찬가지로, 설치물과 평행이란, 로봇의 일측면이 설치물과 평행한 실시예를 포함한다. 또는 설치물과의 평행이란, 로봇의 중심선이 설치물과 평행한 실시예를 포함한다. 예를 들어, 로봇이 직사각형 형태인 경우에는 로봇의 측면이 설치물과 평행할 수 있다. 또는 로봇이 타원형인 경우, 로봇의 중심선이 설치물과 평행할 수 있다.
로봇의 중심선은 로봇이 직진 주행하는 방향을 기준으로 설정될 수 있다. 또는 로봇이 좌우 대칭인 경우 로봇의 좌우에서 중심이 되는 지점들의 집합이 중심선이 될 수 있다. 중심선은 별도로 로봇의 외관에 그려지지는 않으나, 제어부(250)는 로봇의 중심선에 대한 정보를 저장할 수 있다. 그리고, 제어부(250)는 로봇과 다른 설치물 사이의 평행 여부를 판단하기 위해 로봇의 중심선을 하나의 기준으로 적용할 수 있다. 즉, 제어부(250)는 로봇의 중심선을 기준으로 설치물과의 평행을 판단하여 로봇을 평행 정지시킬 수 있다.
제어부(250)는 검출한 수직 평면을 이용하여 로봇을 설치물에 평행 정지시킨다.
제어부(250)는 로봇이 파워 어시스트 모드 또는 추종 모드에서 일시 정지하였는지를 판단한다. 제어부(250)는 장애물 센서에 의해 산출된 장애물과의 거리를 이용하여 로봇 주변에 배치된 설치물 중 인접한 설치물에 평행하여 근접하게 배치되도록 로봇의 이동 경로를 생성한다. 즉, 제어부(250)는 평행하게 로봇이 배치되도록 로봇을 이동시킨다. 로봇의 이동은 이동 경로를 생성하여 로봇의 이동부가 로봇을 이동시키는 것을 일 실시예로 한다.
이동부(190)는 제어부(250)가 생성한 이동 경로를 따라 로봇을 이동시킨다. 이동부(190)는 이동부(190)를 구성하는 바퀴를 회전시킴으로써 로봇을 이동시킬 수 있다. 이동부(190)에 의한 로봇 이동은 휠의 회전속도와 회전한 횟수, 방향 등에 기반하여 로봇(100)의 위치를 제어부(250)가 확인할 수 있도록 한다. 제어부(250)가 생성한 이동 경로는 로봇의 좌측 바퀴와 우측 바퀴에 인가하는 각속도를 포함한다.
송신모듈(500)의 위치 정보에 기반하여 송신모듈을 추종하는 로봇(100)는 도 1 및 도 2의 실시예를 포함한다.
통신부(280)는 제어모듈(150)의 소프트웨어를 원격에서 업그레이드 하거나, 측위센서(210)가 송신모듈(500)의 위치를 측정하지 못할 경우 송신모듈(500)의 위치 정보를 외부로부터 수신하는 기능을 제공한다.
또는 인터페이스부(230)가 소정의 광고를 출력할 수 있으며, 통신부(280)는 광고나 메시지 등 인터페이스부(230)에 출력할 정보를 수신할 수 있다. 또한 통신부(280)는 수납부(110)에 수납된 상품의 정보를 외부의 서버로 전송하여 무인 매장 내에서 결제를 용이하게 할 수 있다.
장애물 센서(220)는 로봇이 이동하는 공간 내에서 설치물의 위치를 확인한다. 예를 들어, 장애물 센서(220)가 라이다 센서 또는 거리 센서인 경우 외부에 배치된 설치물의 수직 평면을 센싱할 수 있다. 설치물은 벽, 매장의 상품 진열대(매대) 등이 될 수 있다.
설치물은 공간 내에서 수직 또는 수직에 근접하게 배치된다. 따라서, 로봇의 어느 한 면에 배치된 장애물 센서(200)들이 설치물을 센싱할 경우, 설치물과의 거리는 일정하게 증가하거나 감속하거나 혹은 일정한 값을 가질 수 있다. 제어부(250)는 둘 이상의 장애물 센서(200)들이 센싱된 거리값을 이용하여 설치물에 평행하게 로봇을 정지시킬 수 있다.
이하, 로봇(100)이 측위센서(210)를 이용하여 송신모듈(500)의 위치를 측정하여 사용자를 추종하여 자율 주행하는 모드를 추종 모드(Following mode)라 한다. 한편, 로봇(100)의 핸들 어셈블리(120)에 가해진 힘을 포스 센서(240)가 센싱하여 반자율 주행하는 모드를 파워 어시스트 모드(Power Assist mode)라 한다.
파워 어시스트 모드는 사용자가 핸들 어셈블리에 가한 힘보다 더 큰 힘으로 로봇을 이동시키는 일종의 파워 핸들 기능의 모드를 의미한다. 파워 어시스트 모드에서 제어부(250)는 포스 센서(240)가 센싱한 힘에 대응하여 로봇의 이동 방향이나 이동 속도 등을 결정하여 이동부(190)를 이동시킨다.
본 명세서에서는 추종 모드 또는 파워 어시스트 모드에서 로봇(100)이 이동하다가 일시적으로 정지할 경우 설치물에 근접하여 평행하게 정지하는 기술을 제시한다. 또한, 로봇(100)이 설치물에 비스듬하게 또는 멀리 배치된 후, 로봇(100)의 제어모듈(150)은 로봇(100)의 평행 배치를 판단하여 로봇(100)을 이동시킬 수 있다.
파워 어시스트 모드 하에서 사용자는 로봇을 제어하는 도중에 일시적으로 로봇을 제어하지 않을 수 있다. 이 경우, 도 1 및 도 2의 구성이 제시하는 로봇은 매대나 벽과 같은 설치물에 평행하도록 이동 및 정지한다.
또한, 추종 모드 하에서 로봇이 사용자를 추종하여 이동하는 과정에서 일시적으로 사용자가 로봇에 근접하여 움직이지 않을 경우, 도 1 및 도 2의 구성이 제시하는 로봇은 매대나 벽과 같은 설치물에 평행하도록 이동 및 정지한다.
도 3은 본 발명의 일 실시예에 의한 파워 어시스트 모드에서 평행 정지하는 과정을 보여준다. 파워 어시스트 모드는 주행 상태와 대기 상태라는 두 가지 상태를 가진다. 주행 상태에서 핸들 어셈블리에 사용자가 밀거나 당기는 등의 힘이 입력되면, 포스센서가 사용자의 힘을 감지하여 이동부(190)를 구동하는 모터를 제어하여 사용자의 의도에 맞게 주행하는 상태이다. 파워 어시스트 모드 하에서의 주행 상태 또는 줄여서 주행 모드라 할 수 있다.
한편 대기 상태는 핸들 어셈블리에 사용자가 밀거나 당기는 등의 힘이 일정 시간동안 입력되지 않는 경우 대기하는 상태를 지칭한다. 파워 어시스트 모드 하에서의 대기 상태 또는 줄여서 대기 모드라 할 수 있다. 포스 센서가 힘을 센싱하지 않은 경우, 제어부(250)는 로봇의 일시 정지 상태를 판단하여 로봇을 설치물에 평행하게 정지시킨다.
대기 상태에서 로봇은 측면에 장착된 장애물 센서를 이용하여 주변의 장애물을 감지하고 이것이 설치물인 것으로 확인되면 설치물과 평행하도록 이동 후 정지한다.
포스 센서(240)가 힘을 센싱한다(S11). 포스 센서(240)는 핸들 어셈블리(120)를 손으로 밀거나 당길 경우 이 힘을 센싱한다. 따라서 힘이 센싱될 경우 로봇은 파워 어시스트 모드로 주행 동작한다(S31). 그리고 사용자의 조정(핸들 어셈블리에 가해지는 힘의 크기나 좌우 차이)에 맞게 로봇은 직진하거나 회전 동작 등을 수행한다(S32). 포스 센서(240)는 지속하여 힘을 센싱하는지 체크한다.
한편, 포스 센서가 힘을 센싱하지 않은 경우 사용자는 로봇의 핸들 어셈블리(120)에서 손을 뗀 상태이다. 측위 센서(210)는 사용자의 위치를 측정한다. 측위 센서(210)는 송신모듈(500)로부터 신호를 수신하여 송신모듈(500)의 위치를 측정한다.
측정 결과 제어부(250)는 사용자의 위치(송신 모듈의 위치)가 로봇으로부터 일정한 거리나 일정한 범위(미리 설정된 거리) 이내에 있는지 여부를 확인한다(S12). 만약, 사용자가 로봇과 일정 거리(1미터 또는 2미터 등) 이상 떨어진 경우, 제어부(250)는 로봇이 일시 정지 상태인 것으로 판단한다. 그리고 제어부(250)는 로봇을 추종 모드로 변경하고 사용자를 따라 이동하도록 제어한다(S35).
한편, 사용자의 위치가 로봇과 일정 범위 이내(일정 거리 이내)에 있는 경우에 제어부(250)는 설치물에 로봇(100)을 평행 정지시키기 위해 로봇(100)와 설치물 간의 거리나 방향을 확인한다. 이를 위해, 제어부(250)는 로봇 측면에 배치된 장애물 센서를 이용하여 매대 혹은 벽과 같은 설치물이 감지되는지 확인한다(S13).
만약 측면의 장애물 센서(220)가 설치물을 감지하지 못하는 경우 제어부(250)는 로봇을 회전시킨다(S14). 제어부(250)는 로봇이 일방향으로 회전할 때, 회전한 각도를 누적 저장한다(S15). 그리고 누적된 회전 각도가 360도를 넘어서는 경우(S16) 설치물을 감지하지 못하였으므로 제어부(250)는 로봇(100)을 정지시킨다(S24).
한편, 회전 각도가 360도가 되지 않은 경우 로봇은 조금씩 일방향으로 회전하고 제어부(250)는 로봇 측면에 배치된 장애물 센서를 이용하여 매대 혹은 벽과 같은 설치물이 감지되는지 확인한다(S13).
확인 결과 설치물이 감지되면 제어부(250)는 측면의 장애물 센서(220)를 이용하여 설치물과 로봇 사이의 거리를 측정한다(S21). 좌측 및 우측 장애물 센서(220)에서 측정한 거리가 산출되면 제어부(250)는 좌측 및 우측 설치물 중 가까운 설치물을 검색한다(S22).
그리고 제어부(250)는 로봇에 가까운 쪽(좌측 또는 우측)에 배치된 설치물과 로봇이 평행을 이루도록 로봇을 이동시킨다(S23). 그리고 로봇과 설치물이 평행을 이룰 경우 제어부(250)는 로봇(100)을 정지시킨다(S24).
도 3에서 추종 모드를 지원하지 않는 로봇인 경우, 제어부(250)는 S11 단계 이후 포스 센서가 힘을 센싱하지 않은 경우 S12 단계를 건너뛰고 S13 단계로 진행하여 로봇을 평행 정지시킬 수 있다. 도 3에서 S11 또는 S12는 제어부(250)가 로봇이 일시적으로 정지한 상태인지를 판단하는 단계이다.
도 4는 본 발명의 일 실시예에 의한 로봇이 설치물에 평행하게 정지하는 과정을 보여준다. 도 3에서 살펴본 순서도에 기반하여 로봇이 이동한다.
도 4는 설명의 편의를 위해 로봇의 양측면이 평행한 경우를 보여준다. 그러나 본 발명이 이에 한정되는 것은 아니다. 로봇의 양 측면이 평행하지 않아 로봇이 삼각형 또는 사다리꼴인 경우에도, 로봇은 설치물에 평행하게 정지할 수 있다. 이러한 삼각형 또는 사다리꼴 로봇이 평행 정지하는 기준은 로봇의 일측면이 설치물에 평행하거나, 혹은 로봇의 중심선이 설치물에 평행한 실시예를 포함한다. 또한, 타원형 로봇이라면 로봇의 중심선에 대한 정보를 이용하여 설치물과 평행하게 정지할 수 있다. 이에 대해 후술한다.
두 개의 설치물(W1, W2) 사이에 로봇(100a, 100b, 100c)가 배치된 상태이다. 41에서 지시된 바와 같이, 로봇(100a)는 두 개의 설치물 사이에 있다. 사용자가 로봇(100a)의 핸들 어셈블리에서 손을 뗀 경우 포스 센서(240)가 힘을 감지하지 못한다. 평행 정지가 필요한 상태인 경우 제어부(250)는 양쪽의 장애물 센서를 이용하여 좌측 설치물(W1)및 우측 설치물(W2)과 로봇 사이의 거리를 측정한다.
제어부(250)는 좌측 설치물과 로봇 사이의 거리가 가까운 것으로 판단한다. 42에서 지시하는 바와 같이 제어부(250)는 로봇(100b)를 직진시켜 좌측 설치물(W1)에 가까이 이동시킨다.
그리고 제어부(250)는 좌측 설치물과 로봇의 거리가 충분히 가까워진 경우(미리 설정된 기준 이하) 로봇을 회전시켜 설치물(W1)에 평행하게 로봇(100c)를 배치한다. 43에 지시된 바와 같다. 43에서 점선은 41의 로봇의 위치(100a)를 표시한 것이다.
도 4의 과정을 정리하면 다음과 같다. 장애물 센서(220)가 로봇의 좌측에 배치된 설치물과의 거리와 로봇의 우측에 배치된 설치물과의 거리를 산출한다. 그리고 제어부(250)는 좌측 또는 우측의 설치물들 중 근접한 설치물 하나를 선택한다. 이후 제어부(250)는 로봇이 선택한 설치물로 전진 또는 후진으로 이동하도록 이동부(190)를 제어한다.
도 5 및 도 6은 본 발명의 일 실시예에 의한 로봇의 측면에 배치된 장애물 센서를 이용하여 설치물에 평행하게 정지하는 과정을 보여준다. 로봇(100)의 제어부(250)는 거리를 측정하는 둘 이상의 장애물 센서들이 측면 방향으로 센싱한 거리들을 비교한다. 그리고 제어부(250)는 로봇을 설치물에 근접하여 평행하게 위치하도록 이동시킨다.
도 5는 측면에 배치된 4개의 장애물 센서(220a, 220b, 220c, 220d)가 로봇(100)의 측면에 배치된 구성을 보여준다. 물론, 다수의 장애물 센서들이 측면 및 전면, 후면 등에 배치될 수 있으며, 장애물 센서의 개수는 한정되지 않는다.
좌측면 전방의 장애물 센서(220a)가 좌측 방향의 장애물을 센싱한 거리는 A이다. 좌측면 후방의 장애물 센서(220b)가 좌측 방향의 장애물을 센싱한 거리는 B이다. 우측면 전방의 장애물 센서(220c)가 우측 방향의 장애물을 센싱한 거리는 C이다. 우측면 후방의 장애물 센서(220d)가 우측 방향의 장애물을 센싱한 거리는 D이다.
제어부(250)는 A, B, C, D의 차이에 기반하여 로봇과 설치물의 거리를 확인할 수 있다.
도 6은 제어부가 좌측 및 우측의 설치물을 검색하여 로봇을 설치물에 평행하게 정지시키기 위한 상세한 과정을 보여준다. 도 3의 S21, S22, S23 과정을 상세히 구현한 것이다. 도 5를 참조한다. 제어부(250)는 좌측 장애물 센서(220a, 220b)가 센싱한 거리(A, B)및 우측의 장애물 센서(220c, 220d)가 센싱한 거리(C, D)를 확인하고(S51) 이를 비교한다(S52).
제어부(250)는 전방의 두 측정값 A, C를 비교하고 후방의 두 측정값 B, D를 비교할 수 있다. 또는 제어부(250)는 좌측의 두 측정값 A, B 중 최소값을 선택하고, 우측의 두 측정값 C, D 중 최소값을 선택하여 두 개의 최소값을 비교할 수 있다.
비교 결과 제어부(250)는 로봇이 중 좌측 설치물에 가까운 것으로 판단한 경우 S53 내지 S56의 단계를 수행한다. 반대로 비교 결과 제어부(250)는 로봇이 중 우측 설치물에 가까운 것으로 판단한 경우 S63 내지 S66의 단계를 수행한다.
제어부(250)가 좌측 설치물에 평행하게 로봇을 이동시키는 S53 내지 S56의 단계를 살펴본다. S53 내지 S56의 단계에서 장애물 센서들은 장애물과의 거리를 실시간 측정한다.
제어부(250)는 로봇을 좌측 설치물(W1)에 평행 정지하도록 평행 정지 모드를 시작한다(S53). 먼저 제어부(250)는 A, B 값(거리 값)이 모두 기준치(th) 이상인지 확인한다(S54). 기준치(th)란 로봇이 평행 정지를 위해 설치물에 근접해야 하는 거리를 의미한다.
따라서, 제어부(250)는 A, B 모두 기준치 이상인 경우 더 가까운 방향(전진 방향 또는 후진 방향)으로 이동하여 설치물에 근접하게 이동한다(S55). 이동 중에도 계속 장애물 센서들은 설치물과의 거리를 측정하여 A/B 중 어느 하나의 거리가 기준치(th) 이하가 되는지를 확인한다(S54).
S54에서 A 또는 B 중 어느 하나가 기준치 이하인 경우 로봇(100)는 좌측 설치물(W1)에 충분히 근접한 상태이므로 제어부(250)는 로봇(100)을 좌측 설치물에 평행하도록 로봇을 이동시킨 후 로봇을 정지시킨다(S56).
제어부(250)가 우측 설치물에 평행하게 로봇을 이동시키는 S63 내지 S66의 단계를 살펴본다. S63 내지 S66의 단계에서 장애물 센서들은 장애물과의 거리를 실시간 측정한다.
제어부(250)는 로봇을 우측 설치물(W2)에 평행 정지하도록 평행 정지 모드를 시작한다(S63). 먼저 제어부(250)는 C, D 값(거리 값)이 모두 기준치(th) 이상인지 확인한다(S64). 기준치(th)란 로봇이 평행 정지를 위해 설치물에 근접해야 하는 거리를 의미한다.
따라서, 제어부(250)는 C, D 모두 기준치 이상인 경우 더 가까운 방향(전진 방향 또는 후진 방향)으로 이동하여 설치물에 근접하게 이동한다(S65). 이동 중에도 계속 장애물 센서들은 설치물과의 거리를 측정하여 C/D 중 어느 하나의 거리가 기준치(th) 이하가 되는지를 확인한다(S64).
S64에서 C 또는 D 중 어느 하나가 기준치 이하인 경우 로봇(100)는 우측 설치물(W2)에 충분히 근접한 상태이므로 제어부(250)는 로봇(100)을 우측 설치물에 평행하도록 로봇을 이동시킨 후 로봇을 정지시킨다(S66).
도 6의 S55는 다음과 같은 의사코드(pseudo code)로 구현할 수 있다.
[S55 PseudoCode]
if (A > th) and (B > th) and (A > B)
then, B가 th 이하가 될 때까지 로봇을 후진시킴
if (A > th) and (B > th) and (A < B)
then, A가 th 이하가 될 때까지 로봇을 전진시킴
도 6의 S65는 A 대신 C를, B 대신 D를 적용하여 구현할 수 있다.
도 6의 S56은 다음과 같은 의사코드로 구현할 수 있다.
[S56 PseudoCode]
if (A > B)
then 반시계방향 회전
elseif (A < B)
then 시계방향 회전
elseif (A=B)
then 회전을 멈춤
도 6의 S66은 다음과 같은 의사코드로 구현할 수 있다.
[S66 PseudoCode]
if (C > D)
then 시계방향 회전
elseif (C < D)
then 반시계방향 회전
elseif (C=D)
then 회전을 멈춤
로봇의 시계방향 회전을 위해 제어부(250)는 이동부(190)의 왼쪽 바퀴에 인가되는 모터 값을 증가시키고, 이동부(190)의 오른쪽 바퀴에 인가되는 모터 값을 감소시키는 것을 일 실시예로 한다.
로봇의 반시계방향 회전을 위해 제어부(250)는 이동부(190)의 왼쪽 바퀴에 인가되는 모터 값을 감소시키고, 이동부(190)의 오른쪽 바퀴에 인가되는 모터 값을 증가시키는 것을 일 실시예로 한다.
도 6에서 장애물 센서가 센싱한 값(장애물과의 거리)이 큰 경우 장애물이 멀리 위치한 상태이다. 반대로 장애물 센서가 센싱한 값이 작은 경우 장애물이 가까이 위치한 상태이다.
장애물과의 거리에 따라 장애물이 전혀 센싱되지 않는 경우에 이동부의 좌/우 바퀴에 연결된 모터에 동일한 각속도를 반대로 주는 경우 제자리 회전할 수 있다. 또는 설치물로 확인된 장애물에 근접하기위해 직진과 후진 대신에 회전을 수행할 수 있다.
예를 들어, 로봇은 설치물로 확인된 장애물에 근접하기 위해 직진할 수 있다. 이 경우, 전방에 장애물이 감지되면 직진 하지 않고 회전만 수행할 수 있다. 그리고 회전했을 때 사용자와의 거리가 멀어지는 경우 후진을 수행할 수 있다. 그리고 후진하는 과정에서 사용자와 거리가 너무 가까워질 경우 후진하지 않고 회전만 수행한다.
도 5, 6을 정리하면 다음과 같다. 장애물 센서가 좌측 및 우측에 각각 두 개 이상 배치된다. 제어부(250)는 측면에 두 개 이상 배치된 장애물 센서들이 센싱한 값들을 이용하여 로봇과 설치물 사이에 평행한지 여부를 확인한다.
도 5에서 제어부(250)는 A/B를 이용하여 좌측 설치물(W1)과 로봇(100) 사이의 평행 여부를 확인하였다. 도 5에서 제어부(250)는 C/D를 이용하여 우측 설치물(W2) 과 과 로봇(100) 사이의 평행 여부를 확인하였다.
즉, 제어부(250)는 인접한 것으로 선택한 설치물을 향해 배치된 두 개의 장애물 센서들(예를 들어 좌측 방향으로 220a, 220b, 우측 방향으로 220c, 220d)이 산출한 거리를 비교하여 이동부의 방향을 제어한다(S56, S66).
도 5 및 도 6에서 설치물에 근접하는 과정에서 제어부(250)는 사용자와의 거리를 지속적으로 확인한다. 측위 센서(210)가 송신 모듈(500)의 위치를 반복적으로 확인하여 제어부(250)는 사용자와의 거리를 확인할 수 있다. 그 결과 사용자와의 거리가 멀어질 경우, 로봇은 직진이나 후진 대신 회전을 하여 설치물에 근접하게 평행 이동할 수 있다.
도 7은 본 발명의 일 실시예에 의한 추종 모드에서 로봇이 평행 정지하는 과정을 보여준다.
추종 모드는 추종 주행 상태와 근접 대기 상태라는 두 가지 상태를 가진다. 추종 주행 상태는 사용자와 로봇 사이의 거리가 일정 거리 이상 이격된 경우 로봇이 사용자를 추종하여 이동하는 상태이다. 한편 근접 대기 상태는 사용자와 로봇 사이가 가까운 경우, 로봇이 이동하지 않고 사용자에 근접하여 대기하는 상태를 지칭한다.
도 7은 로봇(100)이 사용자의 위치와 거리를 측정하여 사용자를 따라 이동하는 추종 모드에서 일정기간 사용자가 로봇(100) 주변에 있을 경우, 로봇(100)는 사용자가 로봇 주변에서 다른 작업을 수행할 것으로 예측한다. 그리고 로봇(100)는 인접한 설치물을 검색하여 평행 정지 모드를 시작할 수 있다.
로봇은 추종 모드로 이동하며 사용자의 위치와 거리를 측정한다(S71). 여기서 사용자의 위치와 거리는 측위 센서(210)가 송신모듈(500)을 측정한 결과이다. 제어부(250)는 사용자(즉, 송신 모듈)와 로봇 사이의 거리가 기준거리(예를 들어 1미터) 이하인지 확인한다(S72). 기준거리 이상인 경우에는 로봇(100)는 S71 단계를 수행한다.
기준거리 이하, 즉 로봇(100)와 사용자 사이의 거리가 가까운 경우, 제어부(250)는 사용자와 로봇(100) 사이의 거리가 근접한 시간을 카운트한다. 이를 위해 제어부(250)는 근접거리 시간 카운팅을 시작한다(S73).
그리고 측위 센서(210)가 사용자와의 거리를 측정하면(S74), 제어부(250)는 사용자와 로봇 사이의 거리가 여전히 기준거리 이하인지 확인한다(S75). 만약 기준거리 이상인 경우 사용자가 이동한 것이므로 로봇(100)는 S71 단계를 수행한다.
S75에서 사용자와 로봇 사이의 거리가 기준거리 이하인 경우, 제어부(250)는 카운팅한 시간이 기준 시간(예를 들어 30초) 이상인지 확인한다. 일정 시간 이상 로봇과 사용자 사이가 가까운 경우라면 제어부(250)는 인접한 설치물을 검색하고 평행 정지 모드를 시작한다(S77).
여기서 인접한 설치물이란 로봇(100)에 가까이 배치된 설치물을 의미한다. 예를 들어, 로봇(100)와 거리가 1미터 이하로 가까운 설치물이 검색되면 로봇(100)이 해당 설치물에 가까이 평행 이동 및 정지를 수행하기 위해 도 3의 S13 단계를 수행한다.
반면 S76에서 카운팅한 시간이 기준 시간 이하인 경우에는 근접 거리 시간 카운팅을 증가시키고(S78) S74 단계로 진행한다.
도 7을 정리하면 추종 모드에서 제어부(250)는 송신모듈과 로봇의 거리가 일정 거리 이하인 경우 로봇이 일시 정지 상태인 것으로 판단한다. 그리고 제어부(250)는 로봇을 설치물에 평행하게 정지시킨다.
도 8 내지 10은 본 발명의 일 실시예에 의한 설치물의 위치를 산출하여 저장하는 과정을 보여준다.
도 8 내지 도 10의 실시예는 장애물 센서가 설치물을 센싱하는 과정에서 다른 장애물을 센싱하거나 진열대에 물건이 돌출하여 배치되는 상황에 적용 가능하다.
제어부(250)는 장애물 센서가 산출한 거리를 누적하여 저장한다(S81). 이 정보는 로봇을 중심으로 좌측 및 우측의 장애물들의 거리를 확인하는 것이다. 도 9와 같이 로봇(100a, 100b, 100c)가 이동한 궤적을 보여준다. 로봇(100a, 100b, 100c)의 좌측 및 우측에는 두 개의 설치물(W1, W2)가 배치되었다. 도 10은 도 9의 각 로봇 별 위치에서 장애물 센서가 장애물을 센싱하여 산출한 거리를 점선으로 표시한 것이다. 도 9의 점선은 장애물의 위치를 나타낸다.
장애물들이 직선으로 센싱될 경우, 이들 장애물은 설치물일 가능성이 높다.
도 10을 살펴본다. 100a 및 100c와 같은 로봇의 위치에서 로봇의 좌측 및 우측은 모두 단일한 직선이 점선으로 표시된다. 점선은 장애물이 센싱된 위치를 나타낸다. 반면, 100b와 같은 로봇의 위치에서 좌측에 장애물들이 센싱된 거리를 누적하여 표시하면 장애물들이 이루는 윤곽선은 1a로 지시되는 제1라인, 2로 지시되는 제2라인, 그리고 1b로 지시되는 제3라인으로 구성된다.
제어부(250)는 로봇이 이동한 경로를 중심으로 누적하여 저장한 거리를 반영하여 설치물의 위치를 산출한다(S82, S83). 보다 상세히, 제어부(250)는 제1시점에 장애물 센서가 산출한 거리를 이용하여 분리되지 않는 직선의 제1라인 및 제1라인과 분리된 직선의 제2라인을 생성한다(S82). 이는 도 9의 로봇(100b)의 좌측에 분리된 3개의 라인(1a, 2, 1b)가 배치된 것을 일 실시예로 한다.
그런데, 로봇(100b)가 "2"로 지시되는 장애물을 센싱하기 전 시점의 로봇(100a)는 좌측에서 별도의 장애물을 센싱하지 않았다. 마찬가지로 로봇(100b)가 "2"로 지시되는 장애물을 센싱한 후 시점의 로봇(100c) 역시 좌측에 별도의 장애물을 센싱하지 않았다.
따라서, "2"로 지시되는 장애물은 일시적으로 센싱된 장애물일 가능성이 높다. 이에, 제어부(250)는 제1라인(1a, 1b) 및 제2라인(2) 사이에 배치된 장애물이 제1시점 이전 또는 이후는 센싱되지 않은 경우, 제어부는 제1라인과 제2라인을 연결한다. 이는 우측으로 100bb와 같이 지시되는 로봇, 그리고 좌측의 하나의 단일한 직선인 1이 표시된 것과 같다.
뿐만 아니라, 도 10에서 "2"로 지시되는 것이 100a, 100c 에서도 확인된 경우, 제어부(250)는 "2"로 지시되는 영역을 돌출 장애물로 확인한다. 그 결과 1a와 1b를 연장하여 100bb와 같이 하나의 직선을 산출할 수 있다.
도 8 내지 도 10과 같이 장애물 센서가 센싱한 장애물들의 위치 정보를 누적하여 저장할 경우, 제어부(250)는 일시적으로 센싱된 장애물 혹은 일부 돌출된 장애물을 제외하고 설치물의 수직 평면을 확인할 수 있다. 그 결과 제어부(250)는 로봇(100)이 일시 정지 상태인 경우에 인접한 설치물에 평행하게 로봇(100)을 이동 후 정지시킬 수 있다.
또한, 장애물 센서가 상이한 높이에 배치된 경우, 제어부(250)는 각 높이별로 센싱된 장애물들의 위치를 결합하여 설치물인지 또는 이동형 장애물인지를 확인할 수 있다.
도 11은 본 발명의 일 실시예에 의한 로봇에 배치된 측위 센서와 장애물 센서의 센싱 범위 및 방향을 보여주는 도면이다. 점선으로 구성된 화살표와 같이 측위 센서(210)가 송신모듈(500)의 위치를 측정한다. 실선으로 구성된 화살표와 같이 다수의 장애물 센서들(220)이 전면 방향과 양측면 방향, 그리고 대각선 방향으로 장애물을 센싱한다.
장애물이 다수 센싱될 경우, 제어부(250)는 송신모듈(500)과 로봇(100)의 거리 정보를 조절할 수 있다. 또는 제어부(250)는 로봇(100)의 이동 속도를 조절할 수 있다.
또한, 좌측 및 우측에 배치된 장애물 센서가 장애물을 센싱하지 못할 경우, 제어부(250)는 전방에 배치된 장애물 센서를 이용하여 로봇(100)을 좌측으로 회전시킬 것인지 우측으로 회전시킬 것인지 결정할 수 있다.
예를 들어 전방 좌측에 배치된 장애물 센서들이 센싱한 거리가 전방 우측에 배치된 장애물 센서들이 센싱한 거리보다 짧은 경우 제어부(250)는 우측으로 회전하여 좌측의 설치물에 평행하도록 로봇(100)을 이동시킨다.
또한 전방 우측에 배치된 장애물 센서들이 센싱한 거리가 전방 좌측에 배치된 장애물 센서들이 센싱한 거리보다 짧은 경우 제어부(250)는 좌측으로 회전하여 우측의 설치물에 평행하도록 로봇(100)을 이동시킨다.
전술한 실시예들을 적용할 경우, 유동인구가 많은 공간 또는 좁은 마트와 같은 공간에서 로봇들이 설치물에 평행하게 근접 이동하여 정지한다. 그 결과, 좁은 공간 내에서도 로봇들이 서로 충돌하지 않도록 효율적으로 배치된다.
특히, 사용자가 로봇을 제어하지 않는 경우(파워 어시스트 모드에서의 대기 상태) 또는 사용자가 로봇에 근접하여 서있는 경우(추종 모드에서의 근접 대기 상태) 로봇이 매장 공간에 질서있게 평행 배치되면 공간의 혼잡도(또는 복잡도)를 줄이는 효과가 있다. 그리고 로봇들의 평행 배치 및 정지로 인해 다른 로봇들과 보행자가 다닐 수 있는 공간이 확보됨으로써, 로봇의 주행 경로 생성도 용이하다.
사용자가 물건을 고르는 과정에서 로봇이 설치물에 평행하지 않게 비스듬하게 정지한 경우, 해당 로봇으로 인해 다른 로봇이 이동하지 못하는 상황이 발생할 수 있다. 따라서, 전술한 실시예들은 로봇이 비스듬하게 정지한 상태에서 다른 로봇이나 보행자의 이동을 방해하는 문제를 해결한다.
특히, 다양한 상품들이 전시되거나 판매되는 공간에서는 사용자는 로봇을 제어하는 과정에서, 혹은 로봇이 사용자를 추종하여 이동하는 과정에서 사용자가 물건을 고를 수 있다. 즉, 핸들 어셈블리에서 사용자가 손을 떼거나 사용자가 로봇 주변에 서있는 경우에 로봇은 일시적으로 설치물에 평행하게 정차할 수 있다.
전술한 실시예들은 로봇의 외관이 직사각형 또는 정사각형이 아닌 경우에도 로봇은 로봇의 중심선 또는 로봇의 일측면을 기준으로 설치물과 로봇의 평행을 유지할 수 있다. 이에 대해 보다 상세히 살펴본다.
도 12은 본 발명의 일 실시예에 의한 로봇의 외관이 삼각형인 경우 로봇의 측면에 배치된 장애물 센서를 이용하여 설치물에 평행하게 정지하는 과정을 보여준다.
로봇(100)의 외형은 삼각형이다. 로봇의 측면에 4개의 장애물 센서(220a, 220b, 220c, 220d)가 배치된다. 로봇의 좌측면에 2개의 장애물 센서(220a, 220b)가 배치되며, 로봇의 우측면에 2개의 장애물 센서(220c, 220d)가 배치된다.
그리고 로봇의 중심에는 가상의 중심선(CL, Center line)이 표시되었다. 로봇은 설치물(W1 또는 W2)과 평행하기 위해 좌측면 또는 우측면을 설치물과 평행하도록 로봇을 정지시킬 수 있다. 또는 로봇은 설치물(W1 또는 W2)과 평행하기 위해 중심선(CL)을 설치물과 평행하도록 로봇을 정지시킬 수 있다.
좌측면 전방의 장애물 센서(220a)가 좌측 방향의 장애물을 센싱한 거리는 A이다. 또한, 좌측면 전방의 장애물 센서(220a)와 중심선(CL) 사이의 거리는 a1이다.
좌측면 후방의 장애물 센서(220b)가 좌측 방향의 장애물을 센싱한 거리는 B이다. 또한, 좌측면 후방의 장애물 센서(220b)와 중심선(CL) 사이의 거리는 b1이다.
우측면 전방의 장애물 센서(220c)가 우측 방향의 장애물을 센싱한 거리는 C이다. 또한, 우측면 전방의 장애물 센서(220c)와 중심선(CL) 사이의 거리는 c1이다.
우측면 후방의 장애물 센서(220d)가 우측 방향의 장애물을 센싱한 거리는 D이다. 또한, 우측면 후방의 장애물 센서(220d)와 중심선(CL) 사이의 거리는 d1이다.
로봇의 중심선(CL)이 설치물 W1과 평행하게 정지하기 위해서는 로봇은 a1과 A를 합친 거리(A+a1) 및 b1과 B를 합친 거리(B+b1)가 동일하거나 거리의 차이가 오차 범위 내에 있도록 로봇의 이동을 제어할 수 있다.
로봇의 중심선(CL)이 설치물 W2과 평행하게 정지하기 위해서는 로봇은 c1과 C를 합친 거리(C+c1) 및 d1과 D를 합친 거리(D+d1)가 동일하거나 거리의 차이가 오차 범위 내에 있도록 로봇의 이동을 제어할 수 있다.
여기서 각 4개의 장애물 센서(220a, 220b, 220c, 220d)들은 중심선(CL)을 기준으로 직각 방향에 배치된 장애물과의 거리를 감지할 수 있다.
로봇의 좌측면이 평행하게 정지하기 위해서는 로봇은 A와 B가 동일하거나 A와 B의 차이가 오차 범위 내에 있도록 로봇의 이동을 제어할 수 있다. 또는 로봇의 우측면이 평행하게 정지하기 위해서는 로봇은 C와 D가 동일하거나 C와 D의 차이가 오차 범위 내에 있도록 로봇의 이동을 제어할 수 있다.
도 13은 본 발명의 일 실시예에 의한 도 12의 로봇이 설치물에 평행하여 정지하는 실시예를 보여준다. 로봇들(100a, 100b, 100c)의 중심의 점선은 중심선을 나타낸다.
도 13의 제1로봇(100a)은 로봇의 좌측면이 설치물(W1)에 평행하며 정지된 상태를 보여준다. 도 13의 제2로봇(100b)은 로봇의 중심선이 설치물(W1)에 평행하며 정지된 상태를 보여준다. 도 13의 제3로봇(100c)은 로봇의 우측면이 설치물(W1)에 평행하며 정지된 상태를 보여준다.
도 14는 도 12와 유사한 형상인 사다리꼴 로봇이 설치물에 평행하여 정지하는 실시예를 보여준다. 도 14의 제1로봇(100a)은 로봇의 좌측면이 설치물(W1)에 평행하며 정지된 상태를 보여준다. 도 14의 제2로봇(100b)은 로봇의 중심선이 설치물(W1)에 평행하며 정지된 상태를 보여준다. 도 14의 제3로봇(100c)은 로봇의 우측면이 설치물(W1)에 평행하며 정지된 상태를 보여준다.
도 12 내지 도 14에서 살펴본 바와 같이, 로봇의 형태가 직사각형 혹은 정사각형이 아닌 경우에도 로봇의 중심선을 기준으로 또는 로봇의 일측면을 기준으로 설치물에 평행하게 정지할 수 있다.
도 13의 100a 및 도 14의 100a와 같은 평행 정지는 공간 내에 다수의 사람들이나 사물들이 이동하는 경우에 적용할 수 있다. 즉, 로봇의 장애물 센서(220)가 주변의 유동 인구나 사물들이 다수 배치된 것을 감지한 경우, 제어부(250)는 로봇(100a)을 최대한 설치물(W1)에 근접하게 배치시킬 수 있다. 이를 위해 제어부(250)는 로봇의 일측면(도 13 및 14에서는 좌측면)을 기준으로 설치물(W1)과 평행한지를 확인한다. 도 12에 도시된 바와 같이, A, B 거리만을 기준으로 제어부(250)는 로봇(100a)과 설치물(W1) 사이의 평행 여부를 확인할 수 있다.
반대로, 설치물(W1)이 매대와 같이 물품이 적재되었고, 물품의 적재로 인해 설치물(W1)의 수직 평면이 복잡하게 도출될 수 있다. 이 경우에는 로봇(100c)이 근접할 경우 매대의 물품과 충돌할 수 있으므로, 도 13의 100c 및 도 14의 100c와 같이 로봇이 배치될 수 있다.
즉, 제어부(250)는 로봇(100c)과 설치물(W1)과 거리를 이격하여 배치시킬 수 있다. 이를 위해 제어부(250)는 로봇의 일측면(도 13 및 14에서는 우측면)을 기준으로 설치물(W1)과 평행한지를 확인한다. 도 12에 도시된 바와 같이, A+a1+c1의 거리와, B+b1+d1의 거리를 기준으로 제어부(250)는 로봇(100c)과 설치물(W1) 사이의 평행 여부를 확인할 수 있다.
정리하면, 로봇의 형상의 일 실시예로, 로봇은 좌측면과 우측면을 가지고 있으며 좌측면 및 우측면은 평행이 아닌 형태를 포함한다. 이때, 제어부(250)는 장애물 센서(220)가 센싱한 장애물의 수 또는 장애물의 이동 속도 또는 설치물의 수직 평면의 돌출 상태에 따라 좌측면 또는 우측면 중 어느 하나를 기준으로 설치물과의 평행을 판단한다. 이때 장애물의 수란 장애물 센서(220)가 센싱한 장애물의 수를 일 실시예로 하며 정확도를 위해 일정 거리 내의 장애물의 수를 반영할 수 있다. 또한, 장애물의 이동 속도란 장애물 센서(220)가 센싱한 장애물의 이동 속도를 의미한다. 장애물의 수가 많거나 이동 속도가 빠른 경우, 도 13, 14의 100a와 같이 로봇은 설치물(W1)에 근접한다.
설치물의 수직 평면의 돌출 상태란, 다수의 물품이 수직 평면에 배치되거나, 또는 매대와 같은 설치물에서 물품이 튀어나오도록 배치된 상태를 일 실시예로 한다. 또는 설치물 자체가 평면이 아닌 돌출된 형상인 경우에도 이에 해당한다. 여기에서 도 13, 14의 100c와 같이 로봇은 설치물(W1)에 이격한다.
본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니며, 본 발명의 목적 범위 내에서 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 반도체 기록소자를 포함하는 저장매체를 포함한다. 또한 본 발명의 실시예를 구현하는 컴퓨터 프로그램은 외부의 장치를 통하여 실시간으로 전송되는 프로그램 모듈을 포함한다.
이상에서는 본 발명의 실시예를 중심으로 설명하였지만, 통상의 기술자의 수준에서 다양한 변경이나 변형을 가할 수 있다. 따라서, 이러한 변경과 변형이 본 발명의 범위를 벗어나지 않는 한 본 발명의 범주 내에 포함되는 것으로 이해할 수 있을 것이다.

Claims (24)

  1. 로봇을 이동시키는 이동부;
    로봇의 주변에 배치된 장애물을 센싱하는 장애물 센서; 및
    로봇의 일시 정지 상태를 판단하고, 상기 장애물 센서가 장애물과의 거리를 산출하면, 상기 장애물 중 일시적으로 센싱된 장애물 또는 일부 돌출된 장애물을 제외하고 설치물의 수직 평면을 확인하여 상기 장애물 중에서 상기 로봇 주변에 배치된 상기 설치물 중 인접한 설치물에 평행하여 근접하게 배치되도록 상기 로봇을 이동시키도록 상기 이동부를 제어하는 제어부를 포함하며,
    상기 수직 평면은 상기 설치물의 외곽 부분에서 돌출된 부분과 들어간 부분을 반영한 가상의 평면이며,
    상기 설치물에 근접하게 이동하기 위해 상기 로봇을 시계방향으로 회전시킬 경우 상기 제어부는 상기 이동부의 왼쪽 바퀴에 인가되는 모터값을 증가시키고, 상기 이동부의 오른쪽 바퀴에 인가되는 모터값을 감소시키며,
    상기 설치물에 근접하게 이동하기 위해 상기 로봇을 반시계방향으로 회전시킬 위해 상기 제어부는 상기 이동부의 왼쪽 바퀴에 인가되는 모터값을 감소시키고, 상기 이동부의 오른쪽 바퀴에 인가되는 모터값을 증가시키는, 설치물에 평행하게 정지하는 로봇.
  2. 제1항에 있어서,
    상기 장애물 센서가 상기 로봇의 좌측에 배치된 설치물과의 거리와 상기 로봇의 우측에 배치된 설치물과의 거리를 산출하며,
    상기 제어부는 좌측 또는 우측의 설치물들 중 근접한 설치물 하나를 선택하여, 상기 선택한 설치물로 상기 로봇이 전진 또는 후진으로 이동하도록 상기 이동부를 제어하는, 설치물에 평행하게 정지하는 로봇.
  3. 제1항에 있어서,
    상기 로봇의 핸들 어셈블리에 가해진 힘의 변화를 센싱하는 포스 센서를 더 포함하며,
    상기 제어부는 상기 포스 센서가 센싱한 힘의 변화에 따라 상기 이동부의 이동 방향 또는 이동 속도를 제어하며,
    상기 제어부는 상기 포스 센서가 힘을 센싱하지 않은 경우, 상기 로봇의 일시 정지 상태를 판단하는, 설치물에 평행하게 정지하는 로봇.
  4. 제1항에 있어서,
    송신모듈로부터 신호를 수신하여 상기 송신모듈의 위치를 측정하는 측위 센서를 더 포함하며,
    상기 제어부는 상기 송신모듈의 위치정보에 대응하는 이동 경로를 생성하며,
    상기 제어부는 상기 송신 모듈과 상기 로봇의 거리가 일정 거리 이하인 경우에 상기 로봇의 일시 정지 상태를 판단하는, 설치물에 평행하게 정지하는 로봇.
  5. 제1항에 있어서,
    상기 제어부는 상기 장애물 센서가 산출한 거리를 누적하여 저장하며,
    상기 제어부는 상기 로봇이 이동한 경로를 중심으로 상기 누적하여 저장한 거리를 반영하여 설치물의 위치를 산출하는, 설치물에 평행하게 정지하는 로봇.
  6. 로봇의 장애물 센서가 주변에 배치된 장애물을 센싱하는 단계;
    상기 로봇의 제어부가 로봇의 일시 정지 상태를 판단하는 단계;
    상기 장애물 센서가 산출한 장애물과의 거리를 이용하여 상기 제어부가 상기 장애물 중에서 상기 로봇 주변에 배치된 설치물 중 인접한 설치물을 선택하는 단계; 및
    상기 제어부가 일시적으로 센싱된 장애물 또는 일부 돌출된 장애물을 제외하고 상기 선택된 설치물의 수직 평면을 확인하여 상기 로봇을 상기 선택된 설치물에 평행하게 근접하여 배치되도록 상기 로봇을 이동시키는 단계를 포함하며,
    상기 수직 평면은 상기 설치물의 외곽 부분에서 돌출된 부분과 들어간 부분을 반영한 가상의 평면이며,
    상기 설치물에 근접하게 이동하기 위해 상기 로봇을 시계방향으로 회전시킬 경우 상기 제어부는 이동부의 왼쪽 바퀴에 인가되는 모터값을 증가시키고, 상기 이동부의 오른쪽 바퀴에 인가되는 모터값을 감소시키는 단계; 및,
    상기 설치물에 근접하게 이동하기 위해 상기 로봇을 반시계방향으로 회전시킬 위해 상기 제어부는 상기 이동부의 왼쪽 바퀴에 인가되는 모터값을 감소시키고, 상기 이동부의 오른쪽 바퀴에 인가되는 모터값을 증가시키는 단계를 더 포함하는, 설치물에 평행하게 로봇이 정지하는 방법.
  7. 제6항에 있어서,
    상기 장애물 센서가 상기 로봇의 좌측에 배치된 설치물과의 거리와 상기 로봇의 우측에 배치된 설치물과의 거리를 산출하는 단계; 및
    상기 제어부는 좌측 또는 우측의 설치물들 중 근접한 설치물 하나를 선택하여, 상기 선택한 설치물로 전진 또는 후진으로 이동하도록 상기 로봇의 이동부를 제어하는 단계를 포함하는, 설치물에 평행하게 로봇이 정지하는 방법.
  8. 제6항에 있어서,
    상기 로봇의 핸들 어셈블리에 가해진 힘의 변화를 센싱하는 포스 센서를 더 포함하며,
    상기 제어부는 상기 포스 센서가 센싱한 힘의 변화에 따라 상기 로봇의 이동부의 이동 방향 또는 이동 속도를 제어하는 단계; 및
    상기 제어부는 상기 포스 센서가 힘을 센싱하지 않은 경우, 상기 로봇의 일시 정지 상태를 판단하는 단계를 더 포함하는, 설치물에 평행하게 로봇이 정지하는 방법.
  9. 제6항에 있어서,
    송신모듈로부터 신호를 수신하여 상기 송신모듈의 위치를 측정하는 측위 센서를 더 포함하며,
    상기 제어부는 상기 송신모듈의 위치정보에 대응하는 이동 경로를 생성하는 단계; 및
    상기 제어부는 상기 송신 모듈과 상기 로봇의 거리가 일정 거리 이하인 경우에 상기 로봇의 일시 정지 상태를 판단하는 단계를 더 포함하는, 설치물에 평행하게 로봇이 정지하는 방법.
  10. 제6항에 있어서,
    상기 제어부는 상기 장애물 센서가 산출한 거리를 누적하여 저장하는 단계; 및
    상기 제어부는 상기 로봇이 이동한 경로를 중심으로 상기 누적하여 저장한 거리를 반영하여 설치물의 위치를 산출하는 단계를 더 포함하는, 설치물에 평행하게 로봇이 정지하는 방법.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
KR1020190119796A 2019-03-19 2019-09-27 설치물에 평행하게 정지하는 로봇 및 이동 방법 KR102318942B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/750,855 US11511425B2 (en) 2019-03-19 2020-01-23 Robot stopping parallel to installed object and method of stopping the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
WOPCT/KR2019/003182 2019-03-19
PCT/KR2019/003182 WO2020189818A1 (ko) 2019-03-19 2019-03-19 설치물에 평행하게 정지하는 카트 및 이동 방법

Publications (2)

Publication Number Publication Date
KR20200111602A KR20200111602A (ko) 2020-09-29
KR102318942B1 true KR102318942B1 (ko) 2021-10-28

Family

ID=72520939

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190119796A KR102318942B1 (ko) 2019-03-19 2019-09-27 설치물에 평행하게 정지하는 로봇 및 이동 방법

Country Status (4)

Country Link
EP (1) EP3943366B1 (ko)
KR (1) KR102318942B1 (ko)
CN (1) CN113365897B (ko)
WO (1) WO2020189818A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112440283A (zh) * 2020-12-11 2021-03-05 深圳市越疆科技有限公司 机器人的弹窗交互方法、装置、机器人及计算机存储介质
KR102486834B1 (ko) 2022-03-31 2023-01-11 주식회사 파이엇 자율주행 서비스 로봇 운행관리시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101832076B1 (ko) * 2014-08-20 2018-02-23 도시바 라이프스타일 가부시키가이샤 전기청소기

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05286453A (ja) * 1992-04-08 1993-11-02 Ishikawajima Harima Heavy Ind Co Ltd 台車の移動制御装置
KR100534463B1 (ko) * 2003-07-21 2005-12-08 주식회사 한울로보틱스 다수개의 거리 측정용 센서를 이용한 이동로봇의 장애물검출 및 자세보정방법
ES2298938T3 (es) * 2004-06-02 2008-05-16 Robert Bosch Gmbh Procedimiento para apoyar un proceso de aparcamiento de un vehiculo.
JP2006251883A (ja) * 2005-03-08 2006-09-21 Funai Electric Co Ltd 充電式走行システム
KR20130136113A (ko) * 2012-06-04 2013-12-12 현대모비스 주식회사 충돌경고 장치 및 방법
JP5891314B2 (ja) * 2012-12-13 2016-03-22 株式会社日立製作所 自律走行装置
KR20160011390A (ko) * 2014-07-22 2016-02-01 이병주 자동운행 기능을 갖는 물류 이송용 카트
KR101795843B1 (ko) * 2014-12-23 2017-12-04 한국해양대학교 산학협력단 추종로봇 및 그 제어방법
US9801517B2 (en) * 2015-03-06 2017-10-31 Wal-Mart Stores, Inc. Shopping facility assistance object detection systems, devices and methods
KR101694001B1 (ko) * 2015-05-29 2017-01-09 현대자동차주식회사 주차 상태에서의 차량 충돌 방지 시스템
TWI689387B (zh) * 2016-05-17 2020-04-01 南韓商Lg電子股份有限公司 行動機器人
CN108544490B (zh) * 2018-01-05 2021-02-23 广东雷洋智能科技股份有限公司 无人驾驶智能机器人道路避障方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101832076B1 (ko) * 2014-08-20 2018-02-23 도시바 라이프스타일 가부시키가이샤 전기청소기

Also Published As

Publication number Publication date
CN113365897A (zh) 2021-09-07
KR20200111602A (ko) 2020-09-29
EP3943366A1 (en) 2022-01-26
CN113365897B (zh) 2023-07-18
EP3943366B1 (en) 2024-01-24
EP3943366A4 (en) 2022-11-09
WO2020189818A1 (ko) 2020-09-24

Similar Documents

Publication Publication Date Title
US10239740B2 (en) Shopping facility assistance system and method having a motorized transport unit that selectively leads or follows a user within a shopping facility
US11679969B2 (en) Shopping facility assistance systems, devices and methods
JP7169593B2 (ja) 側方追従及び障害物回避を備えたスマート自己駆動システム
KR102215618B1 (ko) 설치물과 평행하게 이동하는 카트 및 이동 방법
GB2568157B (en) Shopping facility assistance systems, devices and methods
US9073736B1 (en) Enhanced inventory holder
KR102318942B1 (ko) 설치물에 평행하게 정지하는 로봇 및 이동 방법
US20210147202A1 (en) Systems and methods for operating autonomous tug robots
JP7163782B2 (ja) 自律走行台車
US11865717B2 (en) Method of controlling movement of cart robot in response to change in travel surface using artificial intelligence and cart robot implementing the same
US20230266762A1 (en) Autonomous Movement Device, Autonomous Movement Method, And Program
US11511425B2 (en) Robot stopping parallel to installed object and method of stopping the same
CA2938075A1 (en) Shopping space mapping systems, devices and methods
GB2542265A (en) Shopping facility track system and method of routing motorized transport units
JP7487990B1 (ja) 搬送車の走行制御システム及び搬送車の走行制御方法
JP7301409B2 (ja) 搬送システム、及び搬送制御方法
WO2022149285A1 (ja) 搬送システム、及び搬送制御方法
CN211454365U (zh) 一种可避障智能盘点机器人
GB2542473A (en) Shopping facility assistance system and method to retrieve in-store abandoned mobile item containers
JP2024510722A (ja) 床領域上の格納装置を取り扱う移動式格納システム
JP2023113943A (ja) 搬送システム、及び搬送制御方法
CA2959640A1 (en) Motorized transport unit worker support systems and methods

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right