KR102009482B1 - 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체 - Google Patents

로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체 Download PDF

Info

Publication number
KR102009482B1
KR102009482B1 KR1020120121520A KR20120121520A KR102009482B1 KR 102009482 B1 KR102009482 B1 KR 102009482B1 KR 1020120121520 A KR1020120121520 A KR 1020120121520A KR 20120121520 A KR20120121520 A KR 20120121520A KR 102009482 B1 KR102009482 B1 KR 102009482B1
Authority
KR
South Korea
Prior art keywords
robot
route plan
route
plan
current position
Prior art date
Application number
KR1020120121520A
Other languages
English (en)
Other versions
KR20140055134A (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 KR1020120121520A priority Critical patent/KR102009482B1/ko
Priority to US13/932,500 priority patent/US9102062B2/en
Publication of KR20140055134A publication Critical patent/KR20140055134A/ko
Application granted granted Critical
Publication of KR102009482B1 publication Critical patent/KR102009482B1/ko

Links

Images

Classifications

    • 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
    • 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
    • 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/0217Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39091Avoid collision with moving obstacles
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/01Mobile robot

Abstract

본 발명은 실시간으로 변하는 환경 변화에 대응하여 로봇의 경로를 생성하도록 하는 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체에 관한 것이다. 로봇의 경로계획 방법은 로봇의 경로계획 방법은 제1 경로계획에 의한 로봇 주행 단계, 제1 경로계획에 의한 로봇의 주행 중 전방의 장애물 발생에 응답하여 장애물 주변의 제1 경로계획을 삭제하는 단계, 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하는 경우 제2 경로계획을 생성하는 단계, 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하지 않는 경우 제3 경로계획을 생성하는 단계 및 제2 또는 제3 경로계획 중 어느 한 경로계획에 의한 로봇의 지속 주행단계를 포함하는 것을 특징으로 한다.

Description

로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체{Apparatus and method for planning path of robot, and the recording media storing the program for performing the said method}
본 발명은 실시간으로 변하는 환경 변화에 대응하여 로봇의 경로를 생성하도록 하는 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체에 관한 것이다.
로봇의 어떤 작업이나 조작을 자동으로 수행하는 장치로서, 다양한 분야에서 인간을 대신하거나 보조하는데 활용된다. 로봇에 주어진 임무 또는 서비스를 수행하기 위해서 로봇의 동작을 제어하는 것은 중요하다. 로봇의 동작을 다루는 기술은 기본적으로 경로계획(path planning) 알고리즘에 기반을 둔다. 로봇의 경로계획을 위해서 로봇 주행 지역의 환경 지도가 필요하다. 이 환경지도를 이용하여 로봇은 실행 가능한 경로들을 찾아 그 중 최적의 경로를 선택하여 추종한다.
경로계획 알고리즘은 그리드(grid) 기반의 격자 주행 경로계획과 샘플링 기반의 경로계획으로 나뉠 수 있다. 그리드 기반의 격자 주행 경로계획은 환경 지도를 격자로 나뉘어 격자간의 주행으로 목적지까지 주행하는 경로를 계획한다. 그리드 기반의 격자 주행 경로계획은 최적화된 경로를 빠르게 생성하나 로봇의 상태가 고차원일 경우 실시간 경로 생성이 어려운 문제점이 있다.
샘플링 기반의 경로계획은 환경 지도를 사용하여 트리 형태의 모습으로 주행 가능 지역들을 탐색하여 목적지까지의 경로를 찾는다. 샘플링 기반의 경로계획은 최적화된 경로를 찾기 보다는 불확실성을 이용하여 복잡한 로봇의 동역학을 고려한 경로 생성을 목적으로 한다. 그러나, 샘플링 기반의 경로계획은 경로 재 생성 시에 이전에 탐색했던 경로를 재 사용하지 않고, 처음부터 다시 경로 탐색을 수행하여 경로 생성에 시간이 많이 소요되어 로봇 주행의 안전성을 낮추는 요인이 된다.
본 발명이 해결하고자 하는 기술적인 과제는 실시간으로 변하는 환경 변화에 대응하여 로봇의 경로를 생성하도록 하는 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체를 제공하는데 있다.
본 발명이 이루고자 하는 기술적인 과제를 해결하기 위한 로봇의 경로계획 방법은 제1 경로계획에 의한 로봇 주행 단계; 상기 제1 경로계획에 의한 로봇의 주행 중 전방의 장애물 발생에 응답하여 상기 장애물 주변의 상기 제1 경로계획을 삭제하는 단계; 상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 상기 제1 경로계획 정보가 존재하는 경우 제2 경로계획을 생성하는 단계; 상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 상기 제1 경로계획 정보가 존재하지 않는 경우 제3 경로계획을 생성하는 단계; 및 상기 제2 또는 제3 경로계획 중 어느 한 경로계획에 의한 상기 로봇의 지속 주행단계;를 포함하는 것을 특징으로 한다.
본 발명에 있어서, 상기 장애물 미발생에 응답하여, 상기 제1 경로계획에 의한 상기 로봇의 지속 주행단계;를 더 포함하는 것을 특징으로 한다.
본 발명에 있어서, 상기 제1 경로계획에 의한 로봇 주행 단계는, RRT 알고리즘에 의해 생성된 경로계획인 것을 특징으로 한다.
본 발명에 있어서, 상기 제2 경로계획을 생성하는 단계는, 상기 공간 내에서 상기 제1 경로계획에 따른 적어도 하나 이상의 제1 노드 및 임의의 제1 노드와 제1 노드 사이가 연결된 적어도 하나 이상의 에지를 검출하는 단계; 상기 에지를 균등 분할하여 가상의 노드를 생성하는 단계; 상기 제1 노드 및 상기 가상의 노드를 중간 목적지로 설정하는 단계; 상기 로봇의 현재 위치에서 상기 중간 목적지까지 중간 목적지 경로계획을 생성하는 단계; 및 상기 로봇의 현재 위치에서 임의의 한 중간 목적지 경로를 경유하여 최종 목적지를 연결하는 제2 경로계획을 생성하는 단계;를 포함하는 것을 특징으로 한다.
본 발명에 있어서, 상기 중간 목적지 경로계획을 생성하는 단계는, 상기 로봇의 현재 위치에서 상기 중간 목적지까지 제1 알고리즘을 수행하여 적어도 하나 이상의 상기 중간 목적지 경로를 생성하는 단계인 것을 특징으로 한다.
본 발명에 있어서, 상기 제1 알고리즘은 RRT 알고리즘인 것을 특징으로 한다.
본 발명에 있어서, 상기 제3 경로계획을 생성하는 단계는, 상기 공간 내에서 제2 알고리즘을 수행하여 적어도 하나 이상의 제2 노드를 생성하는 단계; 상기 제2 노드 및 상기 공간 외부의 제1 노드가 만나는 지점을 중간 목적지로 설정하는 단계; 상기 로봇의 현재 위치에서 상기 중간 목적지까지 중간 목적지 경로계획을 생성하는 단계; 및 상기 로봇의 현재 위치에서 임의의 한 중간 목적지 경로를 경유하여 최종 목적지를 연결하는 제3 경로계획을 생성하는 단계;를 포함하는 것을 특징으로 한다.
본 발명에 있어서, 상기 제2 알고리즘은 PRM 알고리즘인 것을 특징으로 한다.
본 발명에 있어서, 상기 중간 목적지 경로계획을 생성하는 단계는, 상기 로봇의 현재 위치에서 상기 중간 목적지까지 제1 알고리즘을 수행하여 적어도 하나 이상의 중간 목적지 경로를 생성하는 단계인 것을 특징으로 한다.
본 발명에 있어서, 상기 제1 알고리즘은 RRT 알고리즘인 것을 특징으로 한다.
본 발명이 이루고자 하는 기술적인 과제를 해결하기 위한 로봇의 경로계획 장치는 경로계획에 의해 로봇을 주행시키는 로봇 주행 제어부; 및 제1 경로계획을 생성하거나, 상기 제1 경로계획에 의한 로봇의 주행 중 전방의 장애물 발생에 응답하여 상기 장애물 주변의 상기 제1 경로계획을 삭제하고, 현재 위치에서 목적지까지의 제2 경로계획 또는 제3 경로계획을 생성하여 상기 로봇 주행 제어부로 출력하는 경로계획 생성부;를 포함하는 것을 특징으로 한다.
본 발명에 있어서, 상기 경로계획 생성부는, 상기 장애물 미발생에 응답하여, 상기 제1 경로계획을 유지하는 신호를 상기 로봇 주행 제어부로 출력하는 것을 특징으로 한다.
본 발명에 있어서, 상기 경로계획 생성부는, 제1 경로계획을 생성하는 제1 경로계획 생성부; 상기 제1 경로계획에 의한 로봇의 주행 중 전방의 장애물 발생에 응답하여 상기 장애물 주변의 상기 제1 경로계획을 삭제하는 판단부; 상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 상기 제1 경로계획 정보가 존재하는 경우 제2 경로계획을 생성하는 제2 경로계획 생성부; 및 상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하지 않는 경우 제3 경로계획을 생성하는 제3 경로계획 생성부를 포함하는 것을 특징으로 한다.
본 발명에 있어서, 상기 제1 경로계획 생성부는, RRT 알고리즘에 의해 제1 경로계획을 생성하는 것을 특징으로 한다.
본 발명에 있어서, 상기 제2 경로계획 생성부는 상기 공간 내에서 상기 제1 경로계획에 따른 적어도 하나 이상의 제1 노드 및 임의의 제1 노드와 제1 노드 사이가 연결된 적어도 하나 이상의 에지를 균등 분할한 가상의 노드를 중간 목적지로 설정하고, 상기 로봇의 현재 위치에서 상기 중간 목적지까지 중간 목적지 경로계획을 생성한 후, 상기 로봇의 현재 위치에서 임의의 한 중간 목적지 경로를 경유하여 최종 목적지를 연결하는 제2 경로 계획을 생성하는 것을 특징으로 한다.
본 발명에 있어서, 상기 제2 경로계획 생성부는, 상기 로봇의 현재 위치에서 상기 중간 목적지까지 RRT 알고리즘을 수행하여 적어도 하나 이상의 상기 중간 목적지 경로를 생성하는 것을 특징으로 한다.
본 발명에 있어서, 상기 제3 경로계획 생성부는 상기 공간 내에서 제2 알고리즘을 수행하여 적어도 하나 이상의 제2 노드를 생성하고, 상기 제2 노드 및 상기 공간 외부의 제1 노드가 만나는 지점을 중간 목적지로 설정하여, 상기 로봇의 현재 위치에서 상기 중간 목적지까지 중간 목적지 경로계획을 생성한 후 상기 로봇의 현재 위치에서 임의의 한 중간 목적지 경로를 경유하여 최종 목적지를 연결하는 제3 경로 계획을 생성하는 것을 특징으로 한다.
본 발명에 있어서, 상기 제2 알고리즘은 PRM 알고리즘인 것을 특징으로 한다.
본 발명에 있어서, 상기 제3 경로계획 생성부는, 상기 로봇의 현재 위치에서 상기 중간 목적지까지 RRT 알고리즘을 수행하여 적어도 하나 이상의 상기 중간 목적지 경로를 생성하는 것을 특징으로 한다.
본 발명에 있어서, 상기 항 중 어느 한 항에 따른 로봇의 경로 계획 장치를 포함하는 이동 로봇을 포함하는 것을 특징으로 한다.
본 발명이 이루고자 하는 기술적인 과제를 해결하기 위한 로봇의 경로계획 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체는 제1 경로계획에 의한 로봇 주행 단계; 상기 제1 경로계획에 의한 로봇의 주행 중 전방의 장애물 발생에 응답하여 상기 장애물 주변의 상기 제1 경로계획을 삭제하는 단계; 상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 상기 제1 경로계획 정보가 존재하는 경우 제2 경로계획을 생성하는 단계; 상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하지 않는 경우 제3 경로계획을 생성하는 단계; 및 상기 제2 또는 제3 경로계획 중 어느 한 경로계획에 의한 상기 로봇의 지속 주행단계;를 포함하는 것을 특징으로 한다.
상술한 바와 같이 본 발명에 따르면, 로봇의 경로계획 생성 시에, 이전에 탐색했던 경로를 재 사용하여 경로를 생성함으로써, 경로 생성에 걸리는 시간을 단축시키고, 로봇 주행의 안정성을 향상시킬 수 있다.
또한 로봇의 경로계획 생성 시에 비홀로노믹 구속(non-holonomic constraint)을 고려하지 않고, 경로계획을 생성한 후, 생성된 경로를 바탕으로 동역학을 고려한 최종 경로계획을 생성함으로써 로봇을 부드럽고 자연스럽게 주행시킬 수 있다.
도 1은 본 발명의 일 실시 예에 따른 로봇의 경로계획 장치의 구성을 보이는 블록도 이다.
도 2는 도 1의 경로계획 중 RRT 알고리즘에 의한 경로생성을 설명하기 위한 도면이다.
도 3은 도 1의 경로계획 중 PRM 알고리즘에 의한 경로 생성을 설명하기 위한 도면이다.
도 4는 도 1 중 경로계획 생성부의 상세 구성도 이다.
도 5는 도 1 중 제1 경로계획에 따른 로봇의 이동을 보이는 도면이다.
도 6은 도 1 중 로봇 이동 중 장애물 발생시 로봇의 대응을 설명하는 도면이다.
도 7은 도 1 중 제2 경로계획 생성 및 로봇의 이동을 설명하는 도면이다.
도 8은 도 1 중 제3 경로계획 생성 및 로봇의 이동을 설명하는 도면이다.
도 9는 본 발명의 일 실시 예에 따른 로봇의 경로계획 방법의 동작을 보이는 흐름도 이다.
도 10은 도 9 중 제2 경로계획 생성 방법의 동작을 보이는 흐름도 이다.
도 11은 도 9 중 제3 경로계획 생성 방법의 동작을 보이는 흐름도 이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명은 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 발명은 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 본 발명에의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 잇는 것과 유사하게, 본 발명은 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 발명은 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. 매커니즘, 요소, 수단, 구성과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
이하, 본 발명의 실시 예를 첨부도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 발명의 일 실시 예에 따른 로봇의 경로계획 장치의 구성을 보이는 블록도 이다.
도 1을 참조하면, 로봇의 경로계획 장치는 사용자 인터페이스부(100), 경로계획 생성부(200), 지도 생성부(300), 로봇 제어부(400) 및 구동부(500)를 포함한다.
사용자 인터페이스부(100)는 로봇이 주행할 수 있도록 시작지점 및 목표지점의 좌표를 입력한다. 또한 사용자 인터페이스부(100)는 로봇에 작업 명령을 입력하기 위해 사용자에 의한 스위치 조작 신호 또는 음성 신호를 수신한다.
경로계획 생성부(200)는 제1 경로계획을 생성하거나, 제1 경로계획에 의한 로봇의 주행 중 전방의 장애물 발생에 응답하여 장애물 주변의 제1 경로계획을 삭제하고, 로봇의 현재 위치에서 목적지까지의 제2 경로계획 또는 제3 경로계획을 생성한다.
지도 생성부(300)는 경로계획 생성부(200)에서 생성한 경로계획에 따른 환경지도를 생성한다. 지도 생성부(300)는 이전의 경로계획이 저장되어 있다가, 경로계획이 변경되거나 새롭게 생성된 경우 업데이트된다.
로봇 제어부(400)는 경로계획 생성부(200)에서 생성한 경로계획으로 로봇의주행 제어신호를 출력한다.
구동부(500)는 로봇 제어부(400)의 주행 제어 신호에 의해 실질적으로 로봇을 주행시킨다.
로봇 제어부(400) 및 구동부(500)는 하기 청구범위에 경로계획에 의해 로봇을 주행시키는 로봇 주행 제어부로 표기되었다.
경로계획 생성부(200)는 샘플링 기반을 바탕으로 한 제1 내지 제3 경로계획을 생성한다. 샘플링 기반의 경로계획은 대표적으로 RRT(rapidly exploring random tree) 알고리즘 및 PRM(probabilistic roadmap) 알고리즘이 있다.
도 2에는 RRT 알고리즘을 설명하기 위한 도면이 도시되어 있다. RRT 알고리즘은 구성 공간(configuration space; 이하 C-space라 표기함)에서 무작위 탐색을 이용하여 자료 구조(tree)를 만들어서 이를 로봇의 경로 계획으로 이용한다. 도 2a에 도시된 바와 같이, 구성 공간에서 로봇의 구성이 하나의 노드로 모델링된 트리(T)로 시각화되며, 초기 노드(qint)(시작지점)으로부터 목적지점(G)까지 제약조건을 만족하는 경로를 찾는 알고리즘이다. 여기서 트리(T)의 확장은 구성 공간에서 무작위로 샘플링한 노드(q)에서 트리(T)에 속하는 노드들 중 최근접 노드(qnear)를 정하고, 그 최근접 노드(qnear)에서 일정 거리(d)만큼 떨어진 새로운 노드(qnew)를 선정하는 과정의 반복이다.
도 2b를 참조하면, 구성 공간에서 제약 조건을 만족하지 못하는 공간(K, 장애물)을 회피하여 초기 노드(qint)로부터 목적지점(G)까지 도달하기 위한 트리 1(T1)을 생성하는 경우에 있어, 샘플링된 노드(q)에서 최근접 노드(qnear)를 찾고, 샘플링한 노드(q)와 최근접 노드(qnear)를 연결하여 트리 1(T1)을 확장한다.
그런 다음, 도 2c에 도시된 바와 같이, 샘플링한 노드(q)와 최근접 노드(qnear)를 연결하여 트리 2(T2)를 확장하고, 마찬가지로 도 2d에서도 샘플링한 노드(q)와 최근접 노드(qnear)를 연결하여 트리 3(T3)를 확장한다. 도 2e에서와 같이 샘플링한 노드(q)와 최근접 노드(qnear)를 연결하고, 그 최근접 노드(qnear)로부터 일정거리(d)만큼 떨어진 노드를 순차적으로 트리 4(T4)에 포함하여 트리 4(T4)를 확장시켜 나갈 때, 최근접 노드(qnear)로부터 일정거리(d)만큼 떨어진 새로운 노드(qnew)가 제약조건을 만족하지 않는 공간(K)에 위치하면, 샘플링한 노드(q)를 향하여 트리를 확장하는 것을 멈추고 다시 새로운 샘플링을 진행한다. 이와 같이 RRT 알고리즘은 제약조건을 만족하도록 트리를 확장시키면서 경로를 생성한다. RRT 알고리즘은 후술하는 PRM 알고리즘과 달리 첫 단계의 로드맵을 구축하는 불필요한 계산이 줄어든다.
도 3에는 PRM 알고리즘을 설명하기 위한 도면이 도시되어 있다. PRM 알고리즘은 구성 공간 내에 존재하는 충돌 회피점을 무작위로 추출한 후에 상호 연결하여 로드맵을 구성하고, 각각의 경로에 대하여 이동에 소요되는 비용을 연산함으로써, 시작지점(S)과 목표지점(G)를 연결하는 최적의 경로를 추출한다. PRM 알고리즘은 충돌체크에 반응이 빠르면서 구성 공간의 정확한 표현을 계산하는 것을 피하여 경로 계산에 대한 시간을 단축시킨다. PRM 알고리즘은 구성 공간 상의 자유 공간에서 경로계획을 위한 로드맵을 구성하는 과정인 학습 단계(preprocessing phase)와 구성된 로드맵을 바탕으로 각각의 국부경로에 대한 이동비용을 연산하여 전역 경로를 생성하는 과정인 쿼리 단계(query phase)의 두 단계로 구성되는데, 반드시 학습 단계를 먼저 수행한 후에 쿼리 단계를 수행할 필요는 없다.
학습 단계에서는, 도 3a에 도시된 바와 같이 구성 공간 내에 존재하는 충돌 회피점을 무작위로 추출한 후, 도 3b에 도시된 바와 같이 충돌 회피점을 상호 연결하여 네트워크 형식의 로드맵을 구성한다. 쿼리 단계에서는 도 3c에 도시된 바와 같이 로드맵을 바탕으로 시작지점(S)과 목표지점(G)을 연결하면서 최적의 전역 경로를 구성하는 구부경로들의 조합을 추출해 낸다.
이와 같은 경로계획 생성부(200)의 상세 구성도가 도 4에 도시되어 있다. 도 4를 참조하면, 경로계획 생성부(200)는 제1 경로계획 생성부(210), 장애물 판단부(220), 제2 경로계획 생성부(230) 및 제3 경로계획 생성부(240)를 포함한다.
제1 경로계획 생성부(210)는 도 2에 도시된 RRT 알고리즘을 이용하여 로봇의 제1 경로계획을 생성한다. 지도 생성부(300)에 이전의 경로계획이 저장되어 있는 경우, 이전의 경로계획 중 소정의 조건을 만족하는 경로가 제1 경로계획으로 생성되고, 지도 생성부(300)에 이전의 경로계획이 저장되어 있지 않은 경우 RRT 알고리즘을 이용하여 제1 경로계획을 생성한다.
제1 경로계획 생성부(210)는 환경지도 상에서 로봇의 시작지점 및 목표지점을 갖는 구성 공간을 생성하고, 구성 공간에서 랜덤하게 샘플링한 임의의 노드 중 시작지점과 가장 가까운 샘플링 노드를 선택하여 가상선을 연결한 후, 가상선 안의 샘플링 노드가 구속조건을 만족하면 샘플링 노드를 트리에 포함시키는 트리 확장 과정을 목표지점에 도달할 때까지 수행하고, 복수의 경로계획으로서의 로봇의 시작지점부터 목표지점까지 연결된 트리 중 소정의 조건을 만족하는 샘플링 노드들간의 가상선을 제1 경로계획으로 생성한다. 여기서 소정의 조건은 예를 들어, 시작지점에서 목표지점까지 가장 가까운 경로, 또는 경로간 거리에 따른 점수를 설정하여 시작지점에서 목표지점까지 점수가 가장 낮은 경로일 수 있으며, 이에 한정되는 것은 아니다.
제1 경로계획 생성부(210)에서 생성한 제1 경로계획은 초기 로봇 주행의 경로계획으로, 로봇 제어부(400)는 제1 경로계획을 이용하여 로봇 주행을 위한 제어 신호를 출력하고, 구동부(500)는 제1 경로계획에 따른 로봇 제어 신호에 의해 로봇을 주행시킨다.
도 5A에는 로봇의 시작 위치에서부터 목적지까지 RRT 알고리즘에 의해 생성된 제1 경로계획이 도시되어 있고, 도 5B에는 제1 경로계획에 따른 로봇의 주행을 보이는 도면이다. 도 5B에서 로봇이 제1 경로계획으로 주행 중에 과거의 주행 경로가 삭제될 수 있다.
판단부(220)는 제1 경로계획으로 주행 중인 환경지도 상에서 로봇의 주행을 저지하는 장애물 발생을 판단한다. 로봇에는 센서(미도시)가 구비되어 있으며, 전방의 장애물을 감지할 수 있다. 본 발명에서 판단부(220)는 로봇이 감지한 장애물과 지도 생성부(300)에 저장되어 있는 환경지도를 비교하여 장애물 발생을 판단할 수 있다. 도 6A에는 로봇이 제1 경로계획으로 이동 중에 전방에 장애물이 발생하였음을 나타내는 도면이 도시되어 있다.
판단부(220)는 제1 경로계획으로 주행 중인 환경지도 상에서 로봇의 주행을 저지하는 장애물 발생에 응답하여 장애물 주변의 제1 경로계획을 삭제한다. 도 6B에는 장애물 주변의 제1 경로계획이 삭제된 도면이 도시되어 있다.
만약 판단부(220)가 제1 경로계획으로 주행 중인 환경지도 상에서 장애물 발생을 판단하지 않은 경우, 즉, 장애물이 발생하지 않은 경우, 로봇은 제1 경로계획에 의해 목적지까지 지속적으로 주행한다.
제2 경로계획 생성부(230)는 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하는지 판단하여, 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하는 경우 제2 경로계획을 생성한다. 여기서, 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간은 도 7A에 원으로 표현되어 있으며, 로봇의 현재 위치에서 떨어진 일정 거리는 로봇의 속도와 장애물 크기를 고려하여 미리 설정된다.
제2 경로계획 생성부(230)는 제2 경로계획 생성 조건은 도 7A에 도시된 바와 같이 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하는 경우이다. 여기서 제1 경로계획 정보는 RRT 알고리즘에 의해 생성된 적어도 하나 이상의 제1 노드(70) 및 임의의 제1 노드(70)와 제1 노드(70) 사이가 연결된 적어도 하나 이상의 에지(71)일 수 있다.
제2 경로계획 생성부(230)는 에지(71)를 균등 분할하여 적어도 하나 이상의 가상의 노드(72)를 생성하고, 제1 노드(70) 및 가상의 노드(72)를 적어도 하나 이상의 중간 목적지(73)로 설정한다.
이후 제2 경로계획 생성부(230)는 로봇의 현재 위치에서 중간 목적지(73)까지 중간 목적지 경로계획을 생성한다. 로봇의 현재 위치에서 중간 목적지 경로계획을 생성하기 위해, 제2 경로계획 생성부(230)는 제1 알고리즘 즉, RRT 알고리즘을 수행하여 적어도 하나 이상의 중간 목적지 경로계획을 생성한다. 도 7B에는 로봇의 현재 위치에서 중간 목적지(73)까지 RRT 알고리즘에 의해 생성된 중간 목적지 경로가 도시되어 있다.
제2 경로계획 생성부(230)는 적어도 하나 이상의 중간 목적지 경로계획 중 최적의 중간 목적지 경로를 선택한다. 최적의 중간 목적지 경로 선택 조건은 로봇의 현재 위치에서 중간 목적지까지 가장 가까운 경로, 또는 경로간 거리에 따른 점수를 설정하여 로봇의 현재위치에서 중간 목적지까지 점수가 가장 낮은 경로를 최적의 중간 목적지 경로로 선택할 수 있으며, 이에 한정되는 것은 아니다. 도 7C에는 로봇의 현재 위치에서 중간 목적지까지 선택된 최적의 중간 목적지 경로를 도시하고 있다.
제2 경로계획 생성부(230)는 최종적으로, 로봇의 현재 위치에서 선택된 중간 목적지 경로를 경유하여 목적지를 연결하는 제2 경로계획을 생성한다. 다시 말해 최종 제2 경로계획은 다음과 같다. 로봇의 시작점부터 장애물 발생 전까지 제1 경로계획으로 이동하고, 장애물 발생 판단 이후부터 중간 목적지까지 제2 경로계획으로 이동하고, 중간 목적지부터 목적지까지 제1 경로 계획으로 주행하는 경로를 나타낸다.
제2 경로계획 생성이 완료되면, 제2 경로계획 생성부(230)는 지도 생성부(300)를 업데이트한다. 제2 경로계획 생성부(230)에서 생성한 제2 경로계획은 로봇 제어부(400)로 출력되고, 로봇 제어부(400)는 제2 경로계획을 이용하여 로봇 주행을 위한 제어 신호를 출력하고, 구동부(500)는 제2 경로계획에 따른 로봇 제어 신호에 의해 로봇을 주행시킨다. 도 7D에는 생성된 제2 경로계획에 의해 로봇의 주행을 보이는 도면이 도시되어 있다.
제3 경로계획 생성부(240)는 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하는지 판단하여, 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하지 않는 경우 제3 경로계획을 생성한다. 여기서, 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간은 도 8A에 원으로 표현되어 있으며, 로봇의 현재 위치에서 떨어진 일정 거리는 로봇의 속도와 장애물 크기를 고려하여 미리 설정된다.
제3 경로계획 생성부(240)는 제2 경로계획 생성 조건은 도 8A에 도시된 바와 같이 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하지 않는 경우이다. 여기서 제1 경로계획 정보는 도 7A에 도시된 바와 같이 RRT 알고리즘에 의해 생성된 적어도 하나 이상의 제1 노드(70) 및 임의의 제1 노드(70)와 제1 노드(70) 사이가 연결된 적어도 하나 이상의 에지(71)일 수 있다.
제3 경로계획 생성부(240)는 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에서 제2 알고리즘 즉, PRM 알고리즘을 수행하여 적어도 하나 이상의 제2 노드(80) 즉, 충돌 회피점을 이용하여, 로드맵을 생성한다.
그리고 제3 경로계획 생성부(240)는 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 존재하는 제2 노드(80) 및 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 외부에 존재하는 제1 노드(70)가 만나는 지점을 중간 목적지(83)로 설정한다. 이때 제2 노드(80) 주변에 제1 노드(70)가 존재하는 경우, 제2 노드(80)를 제1 노드(70)로 이동시킬 수 있다. 도 8B에는 제2 노드(80) 및 제1 노드(70)가 만나는 지점에 설정된 중간 목적지(83)를 보이는 도면이 도시되어 있다.
이후 제3 경로계획 생성부(240)는 로봇의 현재 위치에서 중간 목적지(83)까지 중간 목적지 경로계획을 생성한다. 로봇의 현재 위치에서 중간 목적지 경로계획을 생성하기 위해, 제3 경로계획 생성부(240)는 제1 알고리즘 즉, RRT 알고리즘을 수행하여 적어도 하나 이상의 중간 목적지 경로계획을 생성한다. 도 8C에는 로봇의 현재 위치에서 중간 목적지(83)까지 RRT 알고리즘에 의해 생성된 중간 목적지 경로계획이 도시되어 있다.
제3 경로계획 생성부(240)는 적어도 하나 이상의 중간 목적지 경로계획 중 최적의 중간 목적지 경로를 선택한다. 최적의 중간 목적지 경로 선택 조건은 로봇의 현재 위치에서 중간 목적지까지 적어도 하나 이상의 경로에 대하여 이동에 소요되는 비용(거리, 점수 등)을 연산함으로써, 비용이 가장 적게 드는 경로일 수 있으며, 이에 한정되는 것은 아니다. PRM 알고리즘은 충돌체크에 반응이 빠르면서 구성 공간의 정확한 표현을 계산하는 것을 피하여 경로 계산에 대한 시간을 단축시킬 수 있다. 도 8D에는 로봇의 현재 위치에서 중간 목적지까지 선택된 최적의 중간 목적지 경로를 도시하고 있다.
제3 경로계획 생성부(240)는 최종적으로, 로봇의 현재 위치에서 선택된 중간 목적지 경로를 경유하여 목적지를 연결하는 제3 경로계획을 생성한다. 다시 말해 최종 제3 경로계획은 다음과 같다. 로봇의 시작점부터 장애물 발생 전까지 제1 경로계획으로 이동하고, 장애물 발생 판단 이후부터 중간 목적지까지 제3 경로계획으로 이동하고, 중간 목적지부터 목적지까지 제1 경로 계획으로 주행하는 경로를 나타낸다.
제3 경로계획 생성이 완료되면, 제3 경로계획 생성부(240)는 지도 생성부(300)를 업데이트한다. 제3 경로계획 생성부(240)에서 생성한 제3 경로계획은 로봇 제어부(400)로 출력되고, 로봇 제어부(400)는 제3 경로계획을 이용하여 로봇 주행을 위한 제어 신호를 출력하고, 구동부(500)는 제3 경로계획에 따른 로봇 제어 신호에 의해 로봇을 주행시킨다. 도 8E에는 생성된 제3 경로계획에 의해 로봇의 주행을 보이는 도면이 도시되어 있다.
이와 같이 로봇 주행 중 장애물 발생 시에, 장애물이 발생한 시점부터 비홀로노믹 구속(non-holonomic constraint)을 고려하지 않고 경로계획을 생성한 후, 생성된 경로를 바탕으로 동역학을 고려한 최종 경로계획을 생성함으로써 로봇을 부드럽고 자연스럽게 주행시킬 수 있다
이하, 도 9 내지 도 11를 참조하여 본 발명에 따른 로봇의 경로계획 방법을 설명하며, 이하의 설명에서, 도 1 내지 도 8에 대한 설명과 중복되는 부분은 그 설명을 생략하기로 한다. 로봇의 경로계획은 경로계획 생성부(200)에서 생성되며, 경로계획 생성부(200)에서 출력되는 경로계획 신호가 로봇 제어부(400) 및 구동부(500)로 출력되어 로봇이 주행하는데, 설명의 편의 경로계획 생성부(200)가 로봇을 주행시킨다고 가정하고 설명하기로 한다.
도 9는 본 발명의 일 실시 예에 따른 로봇의 경로계획 방법의 동작을 보이는 흐름도 이다.
도 9을 참조하면, 경로계획 생성부(200)는 RRT 알고리즘을 이용하여 환경지도에서 생성된 복수의 경로계획 중 제1 경로계획에 의한 로봇을 주행시키는 단계(S100)를 수행한다.
경로계획 생성부(200)는 제1 경로계획에 의한 로봇 주행 중, 로봇 전방에 장애물이 발생하였는지 판단하는 단계(S200)를 수행한다.
그러나, 로봇 전방에 장애물이 발생한 경우, 경로계획 생성부(200)는 장애물주변의 제1 경로계획을 삭제하는 단계(S300)를 수행한다.
장애물주변의 제1 경로계획이 삭제되면, 경로계획 생성부(200)는 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보 즉, 노드 및 에지의 존재 유무를 판단하는 단계(S400)를 수행한다.
로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하는 경우, 경로계획 생성부(200)는 제2 경로계획을 생성하는 단계(S500)를 수행한다.
도 10에는 제2 경로계획을 생성하는 방법의 상세 흐름도가 도시되어 있다. 도 10을 참조하면, 경로계획 생성부(200)는 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 존재하는 제1 경로계획에 따른 적어도 하나 이상의 제1 노드 및 임의의 제1 노드와 제1 노드 사이가 연결된 적어도 하나 이상의 에지를 검색하는 단계(S510)를 수행한다. 적어도 하나 이상의 제1 노드 및 에지가 검색되면, 경로계획 생성부(200)는 에지를 균등 분할하여 가상의 노드 생성하는 단계(520)를 수행한다. 이어서, 경로계획 생성부(200)는 제1 노드 및 가상 노드를 중간 목적지로 설정하는 단계(530)를 수행하고, 로봇의 현재 위치에서 중간 목적지까지 제1 알고리즘, 즉 RRT 알고리즘을 수행하여 적어도 하나 이상의 로봇의 현재 위치에서부터 중간 목적지까지의 경로계획을 생성하는 단계(540)를 수행한다. 경로계획 생성부(200)는 적어도 하나 이상의 중간 목적지 경로계획 중 최적의 중간 목적지 경로를 선택하는 단계(S550)를 수행한다. 이후 경로계획 생성부(200)는 로봇의 현재 위치에서 선택된 중간 목적지 경로를 경유하여 최종 목적지를 연결하는 경로들 중 최적의 경로를 제2 경로계획으로 생성하는 단계(S560)를 수행한다.
다시, 도 9로 돌아와서, 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하지 않는 경우, 경로계획 생성부(200)는 제3 경로계획을 생성하는 단계(S600)를 수행한다.
도 11에는 제3 경로계획을 생성하는 방법의 상세 흐름도가 도시되어 있다. 도 11을 참조하면, 경로계획 생성부(200)는 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에서 제2 알고리즘 즉, PRM 알고리즘을 수행하여 적어도 하나 이상의 제2 노드를 이용한 로드맵을 생성하는 단계(610)를 수행한다. 이어서, 경로계획 생성부(200)는 제2 노드 및 제1 노드가 만나는 지점을 중간 목적지로 설정하는 단계(620)를 수행한다. 중간 목적지로 설정이 완료되면, 경로계획 생성부(200)는 로봇의 현재 위치에서 중간 목적지까지 제1 알고리즘 즉, RRT 알고리즘을 수행하여 적어도 하나 이상의 중간 목적지 경로계획을 생성하는 단계(630)를 수행한다. 경로계획 생성부(200)는 적어도 하나 이상의 중간 목적지 경로계획 중 최적의 중간 목적지 경로를 선택하는 단계(S640)를 수행한다. 이후 경로계획 생성부(200)는 로봇의 현재 위치에서 선택된 중간 목적지 경로를 경유하여 최종 목적지를 연결하는 경로들 중 최적의 경로를 제3 경로계획으로 생성하는 단계(S650)를 수행한다.
다시 도 9로 돌아와서, 제2 또는 제3 경로계획 생성이 완료되면, 경로계획 생성부(200)는 제2 또는 제3 경로계획 중 어느 한 경로계획에 따라 현재 위치에서 목적지까지 로봇을 주행시키는 단계(S700)를 수행한다. S700에는 로봇 전방에 장애물이 발생하지 않은 경우, 제1 경로계획에 의해 로봇을 지속적으로 주행시키는 단계도 포함된다.
한편, 본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현하는 것을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.
이제까지 본 발명에 대하여 바람직한 실시 예를 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 본 발명을 구현할 수 있음을 이해할 것이다. 그러므로 상기 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 한다.
100: 사용자 인터페이스 200: 경로계획 생성부
210: 제1 경로계획 생성부 220: 판단부
230: 제2 경로계획 생성부 240: 제3 경로계획 생성부
300: 저장부 400: 로봇 제어부
500: 구동부

Claims (21)

  1. 제1 경로계획에 의한 로봇 주행 단계;
    상기 제1 경로계획에 의한 로봇의 주행 중 전방의 장애물 발생에 응답하여 장애물 주변의 상기 제1 경로계획을 삭제하는 단계;
    상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 상기 제1 경로계획 정보가 존재하는 경우 제2 경로계획을 생성하는 단계;
    상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 상기 제1 경로계획 정보가 존재하지 않는 경우 제3 경로계획을 생성하는 단계; 및
    상기 제2 또는 제3 경로계획 중 어느 한 경로계획에 의한 상기 로봇의 지속 주행단계;를 포함하는 것을 특징으로 하는 로봇의 경로계획 방법.
  2. 제 1항에 있어서,
    장애물 미발생에 응답하여, 상기 제1 경로계획에 의한 상기 로봇의 지속 주행단계;를 더 포함하는 것을 특징으로 하는 로봇의 경로계획 방법.
  3. 제 1항에 있어서, 상기 제1 경로계획에 의한 로봇 주행 단계는,
    RRT 알고리즘에 의해 생성된 경로계획인 것을 특징으로 하는 로봇의 경로계획 방법.
  4. 제 1항에 있어서, 상기 제2 경로계획을 생성하는 단계는,
    상기 공간 내에서 상기 제1 경로계획에 따른 적어도 하나 이상의 제1 노드 및 임의의 제1 노드와 제1 노드 사이가 연결된 적어도 하나 이상의 에지를 검출하는 단계;
    상기 에지를 균등 분할하여 가상의 노드를 생성하는 단계;
    상기 제1 노드 및 상기 가상의 노드를 중간 목적지로 설정하는 단계;
    상기 로봇의 현재 위치에서 상기 중간 목적지까지 중간 목적지 경로계획을 생성하는 단계; 및
    상기 로봇의 현재 위치에서 임의의 한 중간 목적지 경로를 경유하여 최종 목적지를 연결하는 제2 경로계획을 생성하는 단계;를 포함하는 것을 특징으로 하는 로봇의 경로계획 방법.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 경로계획에 의해 로봇을 주행시키는 로봇 주행 제어부; 및
    제1 경로계획을 생성하거나, 상기 제1 경로계획에 의한 로봇의 주행 중 전방의 장애물 발생에 응답하여 장애물 주변의 상기 제1 경로계획을 삭제하고, 현재 위치에서 목적지까지의 제2 경로계획 또는 제3 경로계획을 생성하여 상기 로봇 주행 제어부로 출력하는 경로계획 생성부;를 포함하고,
    상기 경로계획 생성부는,
    제1 경로계획을 생성하는 제1 경로계획 생성부;
    상기 제1 경로계획에 의한 로봇의 주행 중 전방의 장애물 발생에 응답하여 상기 장애물 주변의 상기 제1 경로계획을 삭제하는 판단부;
    상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 상기 제1 경로계획 정보가 존재하는 경우 제2 경로계획을 생성하는 제2 경로계획 생성부; 및
    상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하지 않는 경우 제3 경로계획을 생성하는 제3 경로계획 생성부;를 포함하는 것을 특징으로 하는 로봇의 경로계획 장치.
  12. 제 11항에 있어서, 상기 경로계획 생성부는,
    장애물 미발생에 응답하여, 상기 제1 경로계획을 유지하는 신호를 상기 로봇 주행 제어부로 출력하는 것을 특징으로 하는 로봇의 경로계획 장치.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 제1 경로계획에 의한 로봇 주행 단계;
    상기 제1 경로계획에 의한 로봇의 주행 중 전방의 장애물 발생에 응답하여 장애물 주변의 상기 제1 경로계획을 삭제하는 단계;
    상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 상기 제1 경로계획 정보가 존재하는 경우 제2 경로계획을 생성하는 단계;
    상기 로봇의 현재 위치에서 일정 거리만큼 떨어진 공간 내에 제1 경로계획 정보가 존재하지 않는 경우 제3 경로계획을 생성하는 단계; 및
    상기 제2 또는 제3 경로계획 중 어느 한 경로계획에 의한 상기 로봇의 지속 주행단계;를 포함하는 것을 특징으로 하는 로봇의 경로계획 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체.
KR1020120121520A 2012-10-30 2012-10-30 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체 KR102009482B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120121520A KR102009482B1 (ko) 2012-10-30 2012-10-30 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체
US13/932,500 US9102062B2 (en) 2012-10-30 2013-07-01 Apparatus and method for planning path of robot, and the recording media storing the program for performing the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120121520A KR102009482B1 (ko) 2012-10-30 2012-10-30 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체

Publications (2)

Publication Number Publication Date
KR20140055134A KR20140055134A (ko) 2014-05-09
KR102009482B1 true KR102009482B1 (ko) 2019-08-14

Family

ID=50548048

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120121520A KR102009482B1 (ko) 2012-10-30 2012-10-30 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체

Country Status (2)

Country Link
US (1) US9102062B2 (ko)
KR (1) KR102009482B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220128233A (ko) * 2021-03-12 2022-09-20 모셔널 에이디 엘엘씨 운전 데이터 기반 공간 계획

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102165437B1 (ko) * 2014-05-02 2020-10-14 한화디펜스 주식회사 이동 로봇의 경로 계획 장치
CN107206592B (zh) * 2015-01-26 2021-03-26 杜克大学 专用机器人运动规划硬件及其制造和使用方法
US10884406B2 (en) 2015-08-03 2021-01-05 X-Control System Co., Ltd. Method and device for controlling movement of external device
KR101748632B1 (ko) 2015-10-29 2017-06-20 한국과학기술연구원 로봇의 구동 경로를 계획하기 위한 로봇 제어 시스템 및 로봇 구동 경로 계획방법
EP3374947A4 (en) * 2015-11-09 2019-03-27 Simbe Robotics, Inc. METHOD FOR FOLLOWING A STOCK LEVEL IN A STORE
WO2017089623A1 (fr) * 2015-11-26 2017-06-01 Institut De Recherche Technologique Jules Verne Procédé et dispositif pour le pilotage d'un robot en co-activité
JP6606442B2 (ja) * 2016-02-24 2019-11-13 本田技研工業株式会社 移動体の経路計画生成装置
EP3459008A4 (en) 2016-05-19 2019-11-27 Simbe Robotics, Inc. METHOD FOR MONITORING THE PLACEMENT OF PRODUCTS ON SHELVES IN A STORE
CN109477723B (zh) 2016-06-10 2023-02-21 杜克大学 自动驾驶车辆运动规划和可重新配置的运动规划处理器
US10296012B2 (en) 2016-12-21 2019-05-21 X Development Llc Pre-computation of kinematically feasible roadmaps
US10480947B2 (en) 2016-12-21 2019-11-19 X Development Llc Boolean satisfiability (SAT) reduction for geometry and kinematics agnostic multi-agent planning
US10363657B2 (en) 2016-12-23 2019-07-30 X Development Llc Multi-agent coordination under sparse networking
US10406687B2 (en) 2016-12-23 2019-09-10 X Development Llc Layered multi-agent coordination
KR101858108B1 (ko) * 2016-12-26 2018-05-16 한국생산기술연구원 로봇을 위한 동작 시뮬레이션 장치 및 방법
CN107677285B (zh) * 2017-04-11 2019-05-28 平安科技(深圳)有限公司 机器人的路径规划系统及方法
CN109284847B (zh) * 2017-07-20 2020-12-25 杭州海康威视数字技术股份有限公司 一种机器学习、寻物方法及装置
CN109895088B (zh) * 2017-12-10 2022-05-31 湖南特辉电力科技有限公司 一种机器人驱动装置
WO2019139815A1 (en) 2018-01-12 2019-07-18 Duke University Apparatus, method and article to facilitate motion planning of an autonomous vehicle in an environment having dynamic objects
US11458626B2 (en) * 2018-02-05 2022-10-04 Canon Kabushiki Kaisha Trajectory generating method, and trajectory generating apparatus
TWI822729B (zh) 2018-02-06 2023-11-21 美商即時機器人股份有限公司 用於儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作之方法及設備
US11738457B2 (en) 2018-03-21 2023-08-29 Realtime Robotics, Inc. Motion planning of a robot for various environments and tasks and improved operation of same
KR102100476B1 (ko) 2018-05-04 2020-05-26 엘지전자 주식회사 복수의 이동 로봇 및 그 제어방법
WO2019212240A1 (en) * 2018-05-04 2019-11-07 Lg Electronics Inc. A plurality of robot cleaner and a controlling method for the same
CA3098496A1 (en) 2018-05-25 2019-11-28 The Toro Company Autonomous grounds maintenance machines with path planning for trap and obstacle avoidance
JP7077800B2 (ja) * 2018-06-11 2022-05-31 オムロン株式会社 経路計画装置、経路計画方法、及び経路計画プログラム
WO2019246452A1 (en) 2018-06-20 2019-12-26 Simbe Robotics, Inc Method for managing click and delivery shopping events
GB2577915B (en) 2018-10-10 2021-06-16 Dyson Technology Ltd Path planning
KR102301758B1 (ko) * 2018-12-07 2021-09-14 주식회사 유진로봇 자율 주행 가능한 이동 로봇 및 이의 주행 제어 방법
US20220022715A1 (en) * 2018-12-07 2022-01-27 Yujin Robot Co., Ltd. Autonomously traveling mobile robot and traveling control method therefor
WO2020247207A1 (en) 2019-06-03 2020-12-10 Realtime Robotics, Inc. Apparatus, methods and articles to facilitate motion planning in environments having dynamic obstacles
CN114466730B (zh) 2019-08-23 2023-05-23 实时机器人有限公司 用于使机器人优化速度同时保持对加速度和加加速度的限制的运动规划
CN110823227B (zh) * 2019-11-12 2021-07-20 深圳创维数字技术有限公司 路径导航方法、设备及计算机可读存储介质
JP7460356B2 (ja) 2019-11-13 2024-04-02 ファナック株式会社 移動経路生成装置
CN110908387A (zh) * 2019-12-13 2020-03-24 齐鲁工业大学 一种动态环境水面无人艇路径规划方法、介质及电子设备
TW202146189A (zh) 2020-01-22 2021-12-16 美商即時機器人股份有限公司 於多機器人操作環境中之機器人之建置
KR102296694B1 (ko) * 2020-03-10 2021-08-31 엘지전자 주식회사 이동 로봇
US11407109B2 (en) 2020-04-16 2022-08-09 Boston Dynamics, Inc. Global arm path planning with roadmaps and precomputed domains
CN112415997B (zh) * 2020-10-21 2023-07-28 北京洛必德科技有限公司 一种用于多机器人协作的路径规划方法及系统
CN112378402B (zh) * 2020-11-11 2022-02-22 四川长虹电器股份有限公司 自适应调整路径点容差的移动机器人路径规划方法及装置
CN113172627B (zh) * 2021-04-30 2022-07-29 同济大学 多移动机械手协同搬运系统运动学建模与分布式控制方法
CN113190006B (zh) * 2021-05-08 2023-10-20 北京洛必德科技有限公司 一种机器人路径规划方法、装置及存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5202661A (en) * 1991-04-18 1993-04-13 The United States Of America As Represented By The Secretary Of The Navy Method and system for fusing data from fixed and mobile security sensors
US6442456B2 (en) * 2000-03-07 2002-08-27 Modular Mining Systems, Inc. Anti-rut system for autonomous-vehicle guidance
US7079943B2 (en) 2003-10-07 2006-07-18 Deere & Company Point-to-point path planning
TWI305610B (en) * 2006-07-07 2009-01-21 Ind Tech Res Inst Path guidance method for autonomous mobile device
JP5047709B2 (ja) * 2007-07-04 2012-10-10 株式会社日立製作所 移動装置、システム、移動方法及び移動プログラム
JP4936288B2 (ja) * 2007-12-10 2012-05-23 本田技研工業株式会社 目標経路生成システム
JP2009178782A (ja) 2008-01-29 2009-08-13 Toyota Motor Corp 移動体、環境地図生成装置、及び環境地図生成方法
US8234032B2 (en) * 2008-11-10 2012-07-31 Electronics And Telecommunications Research Institute Method and apparatus for generating safe path of mobile robot
KR101240181B1 (ko) * 2008-11-10 2013-03-07 한국전자통신연구원 이동 로봇의 안전경로 생성 방법 및 장치
KR101554515B1 (ko) 2009-01-07 2015-09-21 삼성전자 주식회사 로봇의 경로계획장치 및 그 방법
US9037294B2 (en) * 2009-06-12 2015-05-19 Samsung Electronics Co., Ltd. Robot cleaner and control method thereof
KR101667032B1 (ko) 2009-10-30 2016-10-17 삼성전자 주식회사 로봇의 경로 계획 장치 및 그 방법
JP5414465B2 (ja) 2009-11-06 2014-02-12 株式会社日立製作所 シミュレーションシステム
KR101732902B1 (ko) * 2010-12-27 2017-05-24 삼성전자주식회사 로봇의 경로 계획 장치 및 그 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220128233A (ko) * 2021-03-12 2022-09-20 모셔널 에이디 엘엘씨 운전 데이터 기반 공간 계획
KR102601860B1 (ko) 2021-03-12 2023-11-13 모셔널 에이디 엘엘씨 운전 데이터 기반 공간 계획
US11946749B2 (en) 2021-03-12 2024-04-02 Motional Ad Llc Driving data guided spatial planning

Also Published As

Publication number Publication date
US20140121833A1 (en) 2014-05-01
US9102062B2 (en) 2015-08-11
KR20140055134A (ko) 2014-05-09

Similar Documents

Publication Publication Date Title
KR102009482B1 (ko) 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체
JP7228420B2 (ja) 情報処理装置、情報処理方法、情報処理システム及びコンピュータプログラム
CN110231824B (zh) 基于直线偏离度方法的智能体路径规划方法
US20210103286A1 (en) Systems and methods for adaptive path planning
CN113710431B (zh) 使用基于采样的最优树的路径规划方法以及记录介质
CN109489675A (zh) 用于自动驾驶车辆的基于成本的路径规划
CN108827278B (zh) 导航方法及设备
JP4577248B2 (ja) 移動体の経路探索システム、経路探索方法及び経路探索プログラム
CN106774347A (zh) 室内动态环境下的机器人路径规划方法、装置和机器人
WO2017144350A1 (en) Method for motion planning for autonomous moving objects
JP3749323B2 (ja) 移動装置
CN107436148A (zh) 一种基于多地图的机器人导航方法及装置
CN113190010B (zh) 一种沿边绕障路径规划方法、芯片及机器人
WO2022267283A1 (zh) 机器人及其导航方法、装置和计算机可读存储介质
US20220203534A1 (en) Path planning method and biped robot using the same
CN109737980A (zh) 一种导航方法及其对应的机器人
CN114705196B (zh) 一种用于机器人的自适应启发式全局路径规划方法与系统
KR20180040787A (ko) 경로 선택에 기반한 자율 주행 방법 및 장치
WO2021246169A1 (ja) 情報処理装置、情報処理システム、および方法、並びにプログラム
JP6623130B2 (ja) 経路情報生成装置、経路結合装置、方法、及びプログラム
CN115562356A (zh) 一种飞行车辆图搜索路径规划方法、终端设备和介质
KR102434949B1 (ko) 무인이동체를 위한 인공지능 기반의 경로 재계획 방법 및 장치
WO2022049918A1 (ja) 情報処理装置と情報処理方法およびプログラム
CN114690771A (zh) 机器人的路径规划方法及装置
KR20230053896A (ko) 도심형 자율주행 이동체를 위한 보행로 중심의 이동경로 데이터 구축 방법 및 시스템

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant