KR20170008745A - 자가 이동로봇의 장애물을 회피한 보행방법 - Google Patents

자가 이동로봇의 장애물을 회피한 보행방법 Download PDF

Info

Publication number
KR20170008745A
KR20170008745A KR1020167031679A KR20167031679A KR20170008745A KR 20170008745 A KR20170008745 A KR 20170008745A KR 1020167031679 A KR1020167031679 A KR 1020167031679A KR 20167031679 A KR20167031679 A KR 20167031679A KR 20170008745 A KR20170008745 A KR 20170008745A
Authority
KR
South Korea
Prior art keywords
point
axis
obstacle
walking
self
Prior art date
Application number
KR1020167031679A
Other languages
English (en)
Other versions
KR102329060B1 (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 이코벡스 로보틱스 컴퍼니 리미티드
Publication of KR20170008745A publication Critical patent/KR20170008745A/ko
Application granted granted Critical
Publication of KR102329060B1 publication Critical patent/KR102329060B1/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
    • 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/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
    • 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/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2836Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means characterised by the parts which are controlled
    • A47L9/2852Elements for displacement of the vacuum cleaner or the accessories therefor, e.g. wheels, casters or nozzles
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/24Floor-sweeping machines, motor-driven
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4061Steering means; Means for avoiding obstacles; Details related to the place where the driver is accommodated
    • 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
    • B25J11/0085Cleaning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0003Home robots, i.e. small robots for domestic use
    • 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/04Automatic control of the travelling movement; Automatic obstacle detection
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2201/00Application
    • G05D2201/02Control of position of land vehicles
    • G05D2201/0215Vacuum cleaner
    • 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

자가 이동로봇의 장애물을 회피한 보행방법으로서, 단계 1000: 자가 이동로봇이 Y축을 따라 이동하고, 자가 이동로봇이 장애물을 검출할 경우, 해당 위치를 장애물 지점으로 설정하고, 해당 위치의 좌표를 저장하여 기록 지점을 형성하는 단계; 단계 2000: 기록 지점을 이전에 저장한 적이 있는지 그리고 해당 기록 지점의 Y축 좌표가 현재 장애물 지점과 이전 장애물 지점의 Y축 좌표에 의해 정해지는 값 범위 내에 있는지 판단하는 단계; 단계 3000: 판단결과가 긍정이면, 해당 기록 지점이 전환점이고, 자가 이동로봇이 현재 장애물 지점으로부터 X축을 따라 전환점 쪽으로 전환점의 X축 좌표까지 이동하고, 전환점 좌표를 삭제하며, 해당 전환점과 현재 장애물 지점 사이의 구역에서 순회 보행을 완료한 후에 단계 1000으로 되돌아가고; 판단결과가 부정이면, 자아 이동로봇이 X축을 따라 변위량 M1만큼 이동하는 단계; 단계 4000: 자가 이동로봇이 원래의 Y축 보행방향과 반대 방향을 따라 이동하고, 단계 1000으로 되돌아가는 단계; 및 단계 5000: 보행 구역에서의 Y축 순회 보행이 완성될 때까지 단계 1000 내지 단계 4000을 반복하는 단계를 포함하는 자가 이동로봇의 장애물을 회피한 보행방법이 제공된다. 본 방법은 장애물 위치를 정확하게 판단하고, 보행경로가 간결하며, 자가 이동로봇의 작업 효율을 크게 향상시킨다.

Description

자가 이동로봇의 장애물을 회피한 보행방법{OBSTACLE AVOIDANCE WALKING METHOD OF SELF-MOVING ROBOT}
본 발명은 자가 이동로봇의 장애물을 회피한 보행방법에 관한 것으로, 소형 가전제품을 제조하는 기술 분야에 속하는 것이다.
자가 로봇은 조작이 편리하고 보행이 자유롭다는 이유로 널리 사용되고 있고, 창문 닦기, 바닥 청소, 공기 정화를 비롯한 다양한 용도에 이용될 수 있다.
자가 로봇은 작업하는 과정에서 종종 장애물을 만나게 되는데, 자체 이동 보행 과정에서 장애물을 정확하고 효과적으로 회피할 수 있다면 작업 효율을 크게 향상시킬 수 있다.
유리 닦기 로봇의 예로서, 선행 기술 CN02137830.4는 자동 청소기의 청소 가능 구역과 장애물 구역을 식별하는 방법을 제시하고 있다.
도 1은 기존의 자가 이동로봇의 장애물을 회피한 보행에 대한 설명도이다.
도 1을 참조하면, 자가 이동로봇의 운동방향을 수평방향(X축)과 수직방향(Y축)의 운동으로 구분할 경우, 도 1은 자가 이동로봇이 X축 방향을 따라 순회 보행하면서 Y축 방향으로 장애물 회피 보행을 하는 것을 도시한 것이다.
도 1에 도시된 바와 같이, 자가 이동로봇은 각각 Y1, Y2 및 Y3의 왕복 경로를 따라 이동한다. 장애물 A4를 만날 때, 장애물을 우회하여 수직방향으로 왕복 이동하는데, 수직방향에서 장애물 A4를 만날 때마다 그러한 우회 동작을 수행한다.
기존의 자가 이동로봇의 보행 방식으로는, 장애물 A4의 우측 경로를 보행하는 것을 여러 번 반복하게 되고, 이러한 다량의 반복 보행으로 인해 로봇의 보행시간이 크게 늘어나서 작업 효율에 심각한 영향을 미치게 된다.
본 발명이 해결하고자 하는 과제는 선행 기술의 결점을 고려하여, 장애물 위치를 정확히 판단하면서 보행경로도 간결하고 자가 이동로봇의 작업 효율을 크게 향상시킬 수 있는 자가 이동로봇의 장애물을 회피한 보행방법을 제공함에 있다.
본 발명이 해결하고자 하는 과제는 다음의 기술방안에 의해 해결된다.
자가 이동로봇의 장애물을 회피한 보행방법으로서, 상기 자가 이동로봇의 보행구역에서 수평방향을 X축으로 하고 수직방향을 Y축으로 하는 평면 직교 좌표계가 형성되는 방법에 있어서, 구체적으로 다음의 단계들을 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법이 제공된다.
단계 100: 자가 이동로봇이 Y축을 따라 이동하고, 자가 이동로봇이 Y축을 따라 정방향으로 이동하다가 장애물을 검출할 경우, 해당 위치의 장애물 지점을 상향 장애물 지점으로 설정하고, 유효한 상향 장애물 지점을 상향 기록 지점으로 저장하며; 자가 이동로봇이 Y축을 따라 역방향으로 이동하다가 장애물을 검출할 경우, 해당 위치의 장애물 지점을 하향 장애물 지점으로 설정하고, 유효한 하향 장애물 지점을 하향 기록 지점으로 저장하는 단계;
단계 200: 저장순서에 따라 상향 기록 지점과 하향 기록 지점을 현재 상향 기록 지점과 이전 상향 기록 지점으로, 그리고 현재 하향 기록 지점과 이전 하향 기록 지점으로 각각 분류하는 단계;
단계 300: 상기 현재 장애물 지점이 상향 장애물 지점일 경우, 현재 상향 장애물 지점 전에 이전 상향 기록 지점이 있는지 그리고 해당 이전 상향 기록 지점의 Y축 좌표가 현재 상향 장애물 지점의 Y축 좌표보다 작은지 판단하고; 상기 현재 장애물 지점이 하향 장애물 지점일 경우, 현재 하향 장애물 지점 전에 이전 하향 기록 지점이 있는지 그리고 해당 이전 하향 기록 지점의 Y축 좌표가 현재 하향 장애물 지점의 Y축 좌표보다 큰지 판단하는 단계;
단계 400: 판단결과가 긍정이면, 해당 이전 상향 기록 지점 또는 이전 하향 기록 지점이 전환점이고, 자가 이동로봇이 해당 장애물 지점으로부터 X축을 따라 전환점 쪽으로 전환점의 X축 좌표까지 이동하고, 전환점 좌표를 삭제하며, 해당 전환점과 현재 장애물 지점 사이의 구역에서 순회 보행을 완료한 후에 단계 100으로 되돌아가고; 판단결과가 부정이면, 자가 이동로봇이 X축을 따라 변위량 M1만큼 이동하는 단계;
단계 500: 자가 이동로봇이 원래의 Y축 보행방향과 반대 방향을 따라 이동하고, 단계 100으로 되돌아가는 단계; 및
단계 600: 보행 구역에서의 순회 보행이 완료될 때까지 단계 100 내지 단계 500을 반복하는 단계.
상향 장애물 지점과 하향 장애물 지점은 부분적으로 또는 전체적으로 저장될 수 있는데, 구체적으로는 부분적으로 저장될 경우, 상기 단계 100은 구체적으로 현재 상향 장애물 지점이 이전 상향 기록 지점들 모두의 Y축 좌표와 다르면, 해당 상향 장애물 지점이 유효한 상향 장애물 지점이고; 현재 하향 장애물 지점이 이전 하향 기록 지점들 모두의 Y축 좌표와 다르면, 해당 하향 장애물 지점이 유효한 하향 장애물 지점인 것을 더 포함한다.
전체적으로 저장될 경우, 상기 단계 100은 구체적으로 어느 상향 장애물 지점도 모두 유효한 상향 장애물 지점이고; 어느 하향 장애물 지점도 모두 유효한 하향 장애물 지점인 것을 더 포함한다.
상기 단계 400은 구체적으로 판단 결과가 긍정인 경우, 판단 조건을 만족하는 모든 상향 기록 지점들 또는 하향 기록 지점들의 X축 좌표들과 해당 장애물 지점의 X축 좌표의 차이를 비교하고, 차이가 가장 큰 상향 기록 지점 또는 하향 기록 지점을 전환점으로 취하는 것을 더 포함한다.
저장량을 감소시키기 위해, 상기 단계 400은 구체적으로 판단 결과가 긍정인 경우, 판단 조건을 만족하는 모든 상향 기록 지점들 또는 하향 기록 지점들을 삭제하는 것을 더 포함한다.
상기 단계 400은 구체적으로 자가 이동로봇이 전환점의 X축 좌표에 도달하기 전에 장애물을 다시 검출할 경우, 전환점 좌표를 삭제한 후에 단계 500으로 진행하는 것을 더 포함한다.
상기 단계 400에서, 로봇이 전환점과 현재 장애물 지점 사이의 구역에서 순회보행을 수행하는 보행방식은 단계 600에서 보행구역에서의 순회보행을 완료하는 보행방식과 동일하다.
상기 단계 400은 다음의 단계 410을 더 포함한다:
자가 이동로봇이 원래의 Y축 보행방향을 따라 이동할 수 있는지 판단하고, 판단결과가 긍정이면 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동하고 단계 100으로 되돌아가며; 판단결과가 부정이면 단계 500으로 되돌아가는 단계.
상기 단계 410에서 자가 이동로봇이 Y축 보행방향을 따라 이동할 수 있는지 판단하는 것은 구체적으로 우선 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동하고, 일정한 거리를 이동하고서도 장애물을 검출하지 않으면, 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동 가능한 것으로 판단하고; 그렇지 않으면 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동할 수 없는 것으로 판단하는 것을 포함한다.
자가 이동로봇의 측면에는 측방감시센서가 구비되고, 상기 단계 410에서 자가 이동로봇이 Y축 보행방향을 따라 이동할 수 있는지 판단하는 것은 구체적으로 자가 이동로봇이 측방감시센서의 피드백 신호에 의해 원래의 Y축 보행방향을 따라 이동할 수 있는지 판단하는 것을 포함한다.
본 발명은 자가 이동로봇의 장애물을 회피한 보행방법으로서, 상기 자가 이동로봇의 보행구역에서 수평방향을 X축으로 하고 수직방향을 Y축으로 하는 평면 직교 좌표계가 형성되고, X축 또는 Y축 방향으로 이동하는 것을 정방향 보행으로 하는 방법에 있어서, 구체적으로는 다음의 단계들을 포함하는 자가 이동로봇의 장애물을 회피한 보행방법이 제공된다.
단계 1000: 자가 이동로봇이 Y축을 따라 이동하고, 자가 이동로봇이 장애물을 검출할 경우, 해당 위치를 장애물 지점으로 설정하고, 해당 위치의 좌표를 저장하여 기록 지점을 형성하는 단계;
단계 2000: 기록 지점을 이전에 저장한 적이 있는지 그리고 해당 기록 지점의 Y축 좌표가 현재 장애물 지점과 이전 장애물 지점의 Y축 좌표에 의해 정해지는 값 범위 내에 있는지 판단하는 단계;
단계 3000: 판단결과가 긍정이면, 해당 기록 지점이 전환점이고, 자가 이동로봇이 현재 장애물 지점으로부터 X축을 따라 전환점 쪽으로 전환점의 X축 좌표까지 이동하고, 전환점 좌표를 삭제하며, 해당 전환점과 현재 장애물 지점 사이의 구역에서 순회 보행을 완료한 후에 단계 1000으로 되돌아가고; 판단결과가 부정이면, 자아 이동로봇이 X축을 따라 변위량 M1만큼 이동하는 단계;
단계 4000: 자가 이동로봇이 원래의 Y축 보행방향과 반대 방향을 따라 이동하고, 단계 1000으로 되돌아가는 단계; 및
단계 5000: 보행 구역에서의 Y축 순회 보행이 완성될 때까지 단계 1000 내지 단계 4000을 반복하는 단계.
전술한 바와 같이, 자가 이동로봇이 보행을 하는 과정에서 장애물을 만날 경우, 좌표에 대한 판단으로 장애물을 한 번에 회피하여 장애물 주변과 보행구역 경계 사이의 각각의 구역에서의 작업을 완료할 수 있는데 반해, 선행 기술에서는 작업 과정에서 장애물을 반복적으로 회피하면서 그 주위를 돌아 이동하여야 한다.
따라서 본 발명은 장애물 위치에 대한 판단이 명확하고, 보행 경로도 간결하며, 그리하여 자가 이동로봇의 작업 효율도 크게 향상시킬 수 있는 장점이 있다.
이하, 본 발명의 기술적 방안을 첨부 도면 및 구체적인 실시예와 결합하여 상세히 설명하기로 한다.
도 1은 기존의 자가 이동로봇의 장애물을 회피한 보행방법에 대한 설명도이고;
도 2는 본 발명의 실시예 1에 따른 자가 이동로봇의 장애물을 회피한 보행방법에 대한 설명도이며;
도 3은 본 발명의 실시예 2에 따른 자가 이동로봇의 장애물을 회피한 보행방법에 대한 설명도이고;
도 4는 본 발명의 실시예 3에 따른 자가 이동로봇의 장애물을 회피한 보행방법에 대한 설명도이다.
실시예 1
도 2는 본 발명의 실시예 1에 따른 자가 이동로봇의 장애물을 회피한 보행방법에 대한 설명도이다.
도 2에 도시된 바와 같이, 본 발명의 구체적인 장애물을 회피한 보행과정은 아래와 같이 기술된다.
우선, 상기 자가 이동로봇의 보행구역에서 수평방향을 X축으로 하고 수직방향을 Y축으로 하는 평면 직교 좌표계가 형성되고, 또한 X 축 또는 Y축 방향을 따라 이동하는 것이 정방향 보행이고, 그렇지 않으면 역방향 보행이다.
도 2를 참조하면, 본 실시예에서는 자가 이동로봇이 Y축 방향을 따라 이동하는 것을 단지 예로 들어 본 발명의 장애물 회피과정에 대해 설명하기로 한다.
구체적으로, 보행구역 100에서 자가 이동로봇이 해당 구역의 왼쪽 아래에 있는 Q점에서 출발하여 Y축을 따라 상향 정방향으로 보행구역 100의 위쪽 가장자리 P점까지 이동하였을 때에 장애물이 검출되는데, 여기서 해당 장애물은 보행구역의 테두리 또는 테두리 없는 매달린 경계부일 수 있다.
이때, 해당 지점의 좌표를 (XO, YP)로 저장하고, 자가 이동로봇이 X축 방향을 따라 M1만큼의 거리를 평행 이동한 후에 Y축을 따라 하향 역방향으로 이동한다.
자가 이동로봇이 보행구역 100의 하부 가장자리 Q점까지 이동하였을 때에 장애물이 검출되는데, 이때 해당 지점의 좌표를 (XQ, YQ)로 저장한다.
자가 이동로봇은 자동으로 검출을 실행하여 기록 지점이 존재하는지 그리고 해당 기록 지점의 Y 좌표가 저장된 현재 좌표 지점 Q와 이전 좌표 지점 P에 의해 정해지는 Y축 좌표 범위 (YQ, YP) 내에 있는지 판단한다.
도 2에 도시된 바와 같이, 이러한 기록 지점이 없는 것이 분명하므로, 자가 이동로봇이 Q점으로부터 X축 방향을 따라 M1만큼의 거리를 평행 이동한 후에 계속해서 Y축을 따라 상향 역방향으로 이동한다.
이렇게 "弓"자 형태의 경로를 따라 왕복 이동하면서 장애물이 검출된 모든 지점들의 좌표에 대해 기록하고, 또한 저장된 현재 좌표 지점과 이전 좌표 지점에 의해 정해지는 Y축 좌표 범위 내에 Y 좌표가 있는 기록 지점이 존재하는지 판단한다.
자가 이동로봇이 A점까지 이동하였을 때에 장애물이 검출되고, 해당 지점의 좌표를 (XA, YA)로 저장한다.
A점 이전의 장애물 지점 A'의 좌표가 (XA', YQ) 이고, YA와 YQ 사이에 Y축 좌표가 있는 장애물 기록 지점도 없으므로, 자가 이동로봇이 A점에서 X축 방향을 따라 M1만큼의 거리를 평행 이동한 후에 계속해서 Y축을 따라 하향 이동하고, 이렇게 "弓"자 형태의 경로를 따라 왕복 이동하면서 장애물을 검출한 모든 지점의 좌표에 대해 기록한다.
자가 이동로봇이 C점까지 이동하였을 때에 장애물이 검출되고, 해당 지점의 좌표를 (XC, YP)로 저장한다.
그 지점 직전에 장애물이 검출된 지점이 F점이고, 해당 지점의 좌표가 (XB, YQ)이며, 저장된 기록 지점들 중에서 A점, B1점, 및 B2점의 Y 좌표가 C점과 F점의 Y 좌표 사이에 있고, 또한 A점의 X축 좌표 XA가 B점의 X축 좌표 XB보다 작으므로, A가 전환점이다.
자가 이동로봇이 C점으로부터 X축 방향을 따라 역방향으로 A점의 X 좌표와 같은 D점까지 이동하는데, 이때 자가 이동로봇이 다시 복귀하여 반복 보행하는 것을 방지하기 위해, A점, B점, 및 Y 좌표가 A점 및 B점과 같은 각각의 기록 지점을 삭제하고, D점과 C점 사이의 구역에서 순회 이동을 시작한다.
이 과정에서는, 자가 이동로봇이 장애물을 검출하더라도 더 이상 좌표 지점을 저장하지 않고서 C점의 X축까지 다시 이동한다.
이후, 장애물이 검출되었을 때에 좌표들을 저장하는 것을 다시 재개하여 "弓"자 형태의 경로를 왕복하는 일반적인 보행방식으로 돌아간다.
본 실시예에서는, D점과 C점 사이의 구역에서의 순회보행모드도 역시 "弓"자 형태의 경로를 왕복하는 보행방식이다.
유의하여야 할 것은 여기서 보행방식이 "弓"자 형태의 경로를 왕복하는 보행방식에 한정되는 것이 아니라, 다른 보행모드의 사용도 가능하고, 예를 들어 "回"자 형태의 보행방식으로도 동일한 기술효과를 기대할 수 있다는 것이다.
도 2에 도시된 바와 같이, 자가 이동로봇의 보행경로는 O→P→Q→A→B→F→G→C→D→N→E→C→G이다.
즉, 실시예 1에서는, 장애물 지점의 좌표를 저장함에 의해 기록 지점을 형성하고, 자가 이동로봇이 이동하는 과정 중에 Y축 좌표가 현재 장애물 지점과 이전 장애물 지점의 Y축 좌표들에 의해 정해지는 Y축 범위 내에 있는 기록 지점이 존재하는지 판단하는데, 존재한다면 해당 기록 지점은 전환점이고, 자가 이동로봇이 현재 장애물 지점으로부터 전환점으로 되돌아간다.
그 중에서, 판단 조건을 만족하는 기록 지점이 여러 개 존재한다면, 판단 조건을 만족하는 모든 기록 지점들의 X축 좌표들과 해당 장애물 지점의 X축 좌표의 차이를 비교하여 차이가 가장 큰 기록 지점을 전환점으로 취한다.
기록 지점이 존재하지 않는다면, 자가 이동로봇이 현재 장애물 지점으로부터 X축을 따라 M1만큼의 거리를 평행 이동한 후에 Y축 방향을 따라 역방향으로 이동하고, 다시 "弓"자 형태의 경로를 왕복하는 일반적인 보행방식으로 돌아간다.
전술한 바와 같이, 본 발명에서는 자가 이동로봇의 보행구역에서 수평방향을 X축으로 하고 수직방향을 Y축으로 하는 평면 직교 좌표계가 형성되고, 또한 X축 또는 Y축 방향으로 이동하는 것이 정방향 보행인 자가 이동로봇의 장애물을 회피한 보행방법이 제공된다.
본 방법은 구체적으로는 다음의 단계들을 포함한다.
단계 1000: 자가 이동로봇이 Y축을 따라 이동하고, 자가 이동로봇이 장애물을 검출할 경우, 해당 위치를 장애물 지점으로 설정하며, 해당 위치의 좌표를 저장하여 기록 지점을 형성하는 단계;
단계 2000: 이전에 저장된 기록 지점이 있는지 그리고 해당 기록 지점의 Y축 좌표가 현재 장애물 지점과 이전 장애물 지점의 Y축 좌표들에 의해 정해지는 수치 범위 내에 있는지 판단하는 단계;
단계 3000: 판단결과가 긍정이면, 해당 기록 지점이 전환점이고, 자가 이동로봇이 현재 장애물 지점으로부터 X축을 따라 전환점 쪽으로 전환점의 X축 좌표까지 이동하고, 전환점의 좌표를 삭제하며, 해당 전환점과 현재 장애물 지점 사이의 구역에서 순회 보행을 완료한 후에 단계 1000으로 되돌아가고; 판단결과가 부정이면, 자가 이동로봇이 X축을 따라 변위량 M1만큼 이동하는 단계;
단계 4000: 자가 이동로봇이 원래의 Y축 보행방향과 반대 방향을 따라 이동하고, 단계 1000으로 되돌아가는 단계; 및
단계 5000: 보행 구역에서의 Y축 순회 보행이 완료될 때까지 단계 1000 내지 단계 4000을 반복하는 단계.
실시예 2
도 3은 본 발명의 실시예 2에 따른 자가 이동로봇의 장애물을 회피한 보행방법에 대한 설명도이다.
도 3에 도시된 바와 같이, 본 실시예에서도 역시 상기 자가 이동로봇의 보행구역에서 수평방향을 X축으로 하고 수직방향을 Y축으로 하는 평면 직교 좌표계가 형성되어야 하고, 또한 X축 또는 Y축 방향을 따라 이동하는 것이 정방향 보행이고, 그렇지 않으면 역방향 보행이다.
또한, 자가 이동로봇이 Y축을 따라 정방향으로 이동하다가 장애물을 만났을 때에 그것이 위치한 지점의 좌표가 상향 장애물 지점의 좌표에 해당하고; 자가 이동로봇이 Y축을 따라 역방향으로 이동하다가 장애물을 만났을 때에 그것이 위치한 지점의 좌표가 하향 장애물 지점의 좌표에 해당한다.
동일한 원리로, 자가 이동로봇이 X축을 따라 정방향으로 이동하다가 장애물을 만났을 때에 그것이 위치한 지점의 좌표가 우향 장애물 지점의 좌표에 해당하고; 자가 이동로봇이 X축을 따라 역방향으로 이동하다가 장애물을 만났을 때에 그것이 위치한 지점의 좌표가 좌향 장애물 지점의 좌표에 해당한다.
자가 이동로봇은 상향 장애물 지점과 하향 장애물 지점의 좌표들을 각각 저장하고, 상향 장애물 지점 또는 하향 장애물 지점 중에서 Y축 좌표가 같은 지점들을 한 번만 저장한다.
도 3을 참조하면, 구체적으로 자가 이동로봇이 P점까지 이동하여 좌표가 (XO, YP)인 상향 장애물 지점 P를 검출해내는데, P점 이전에는 Y축 좌표가 P점의 Y축 좌표 YP와 같은 상향 기록 지점이 존재하지 않으므로, P점이 유효한 상향 장애물 지점이고, P점을 상향 기록 지점으로 저장한다. P점과 A점 사이의 보행구역에서는 모든 상향 장애물 지점들의 Y축 좌표가 P점의 Y축 좌표와 같으므로, 해당 구역에서의 상향 장애물 지점은 모두 무효한 상향 장애물 지점들이고, 그 좌표들을 저장하지 않는다.
동일한 원리로, 그 구역에서의 하향 장애물 지점 중에서는, 하향 장애물 지점 Q의 좌표 (XQ, YQ)만을 저장한다.
자가 이동로봇이 Y축을 따라 정방향으로 A까지 이동하여 장애물을 만났을 때에, 해당 지점의 좌표 (XA, YA)를 저장된 상향 기록 지점들의 좌표와 비교하는데, 이때 저장된 상향 기록 지점은 P점이 유일하고, A점의 Y축 좌표 YA가 P점의 Y축 좌표 YP와 다르므로, 상향 장애물 지점 A의 좌표 (XA, YA)를 상향 기록 지점으로 저장한다.
또한, 좌표 YA가 YP보다 작으므로, 자가 이동로봇이 A로부터 X축을 따라 M1만큼의 거리를 평행 이동한 후에 변위 전의 보행 방향을 따라 계속 이동할 수 있는지 먼저 판단하는데, 이때 원래의 방향은 Y축의 정방향이다.
판단결과가 긍정이면 Y축을 따라 정방향으로 이동하고, 판단결과가 부정이면 Y축을 따라 역방향으로 이동하는데, 이때 자가 이동로봇은 당연히 Y축을 따라 정방향으로 이동할 수 없고, 따라서 자가 이동로봇이 Y축 방향을 따라 역방향으로 이동한다. A점과 B1점 사이의 구역에서는 모든 상향 장애물 지점들의 Y축 좌표가 A점의 Y축 좌표와 같으므로, 해당 구역 내의 상향 장애물 지점들의 좌표를 저장하지 않는다.
자가 이동로봇이 B1까지 이동하였을 때에 장애물이 검출되고, 이때 역시 B1의 좌표를 이전에 저장된 상향 기록 지점들의 좌표와 비교하는데, P점과 A점의 Y 좌표가 B1의 Y 좌표보다 크거나 같으므로, 자가 이동로봇이 B1로부터 X축을 따라 M1만큼의 거리를 이동하여 B점까지 이동한다.
B점에서는, 자가 이동로봇이 원래의 Y축 방향을 따라 상향이동이 가능한지 판단하여야 하는데, 이때 당연히 원래의 Y축 방향을 따라 상향 이동이 가능하고, 따라서 자가 이동로봇이 계속해서 C점까지 이동하게 된다.
자가 이동로봇이 C점까지 이동하였을 때에 C점의 좌표를 이전에 저장된 P점과 A점의 Y축 좌표와 비교하는데, 이때 당연히 A점의 Y축 좌표가 C점의 Y축 좌표보다 작다.
자가 이동로봇이 A점을 전환점으로 하여 C점으로부터 X축 방향을 따라 X 좌표가 A점의 좌표와 같은 D점까지 이동한 후에 Y축 방향을 따라 이동한다. 이때, A점의 기록을 삭제한다.
이어서, D점으로부터 E점까지 "弓"자 형태의 경로를 왕복하는데, 이 과정에서는 자가 이동로봇이 장애물을 검출하더라도 좌표 지점을 더 이상 저장하지 않고, E점(E점은 포함하지 않음)까지 이동한 후에 다시 유효한 장애물 지점을 저장한다.
이때, 전술한 B점에서와 마찬가지로, 자가 이동로봇이 원래의 Y축 방향을 따라 하향 이동이 가능한지 판단하여야 하는데, 판단결과가 긍정이면 E점으로부터 계속해서 G점까지 이동하고; 판단결과가 부정이면 Y축을 따라 상향 이동한다(미도시).
이어서, G점으로부터 "弓"자 형태의 경로를 왕복하는 것을 재개한다.
도 3에 도시된 바와 같이, 자가 이동로봇의 이동 경로는 O→P→Q→A→B→C→D→N→E→G이다.
실시예 1과 비교하였을 때에, 실시예 2는 두 가지의 차이점을 갖는다.
첫째, 자가 이동로봇이 Y축을 따라 이동하는 방향에 대해 상향과 하향의 개념이 정의된다. 자가 이동로봇이 Y축을 따라 정방향으로 이동할 경우, 상향 장애물 지점들 중에서 Y축 좌표가 같은 장애물 지점들의 좌표를 모두 저장할 필요가 없고, Y축 좌표가 다른 장애물 지점만 저장하여 기록 지점으로 형성하면 된다. 자가 이동로봇이 이동하는 과정에서는, 이전에 저장된 상향 기록 지점들 중에서 Y축 좌표가 현재 장애물 지점의 Y축 좌표보다 작은 기록 지점이 존재하는지만 판단하면 되고, 존재한다면 자가 이동로봇이 현재 장애물 지점으로부터 해당 기록 지점의 X축 좌표로 돌아가고; 존재하지 않는다면 자가 이동로봇이 현재 장애물 지점으로부터 X축을 따라 M1만큼의 거리를 평행 이동한다.
둘째, 자가 이동로봇이 장애물을 검출하고 M1만큼의 거리를 평행 이동한 후에, 자가 이동로봇이 평행 이동하기 전의 보행방향을 따라 계속 이동할 수 있는지에 대한 판단을 추가로 하여야 하고, 판단결과가 긍정이면 평행 이동하기 전의 보행방향을 따라 계속 이동할 수 있고, 부정이면 평행 이동하기 전의 보행방향과 반대되는 방향을 따라 이동하여야 한다.
본 실시예에서는, 이러한 판단 단계를 추가하여 보행 경로를 더욱 간결하게 하고, 자가 이동로봇의 작업 효율도 향상시키게 된다.
유의하여야 할 것은 본 실시예에서는 이동로봇이 Y축을 따라 이동하는 방향에 대해 상향과 하향의 개념을 정의하고, 또한 데이터 저장량을 감소시키기 위해 상향 장애물 지점과 하향 장애물 지점 중에서 Y축 좌표가 같은 장애물 지점을 한 번만 저장하지만, 모든 장애물 지점들의 좌표를 저장하여도 도 3에 도시된 보행경로를 실현할 수 있다는 것이다.
또한, 본 실시예에서는, 경로를 최적화하기 위해 자가 이동로봇이 장애물을 검출하고 나서 M1만큼의 거리를 평행 이동한 후에 우선적으로 평행 이동하기 전의 보행방향을 따라 이동하지만, 본 실시예에 따른 장애물 회피 보행방법은 그러한 제한 조건에 한정되지 않는다.
예컨대, 해당 제한 조건을 배제하고 자가 이동로봇이 처음부터 끝까지 "弓"자 형태의 경로를 왕복하여 보행하여도 도 2에 도시된 보행 경로를 구현할 수 있다.
실시예 3
도 4는 본 발명의 실시예 3에 따른 자가 이동로봇의 장애물을 회피한 보행방법에 대한 설명도이다.
도 4에 도시된 바와 같이, 본 실시예는 앞서 전술한 2개의 실시예에 기초하여 더욱 최적화된 것이다.
자가 이동로봇이 A점에서 장애물을 만난 후에 해당 지점의 좌표를 기록하고, C점에서 다시 장애물을 만나게 된다. A점의 Y축 좌표가 C점의 Y축 좌표보다 작으므로, 이전의 제어방법에 따르면 자가 이동로봇이 A점을 전환점으로 하여 C점으로부터 X축 방향을 따라 A점의 X축 좌표와 같은 위치에 이동하여야 할 것이다.
그러나 장애물 M이 가로막고 있는 것을 검출하게 된다. 이때, 전환점 A의 좌표를 삭제하고, C점으로부터 Y축을 따라 B점까지 하향 이동하며, B점으로부터 X축 방향을 따라 M1만큼의 거리를 평행 이동한 후에 D점까지 이동하고, D점으로부터는 "弓"자 형태의 경로를 왕복하는 것을 재개한다.
도 4에 도시된 바와 같이, 자가 이동로봇의 이동 경로는 A→B→C→B→D이다.
실시예 3에서는, 자가 이동로봇이 Y축이나 X축 방향을 따라 이동하는 과정에서 제어방법에 따라 방향을 바꿔야 하지만 장애물을 만났을 경우에 판단과 제어를 더 수행하는 절차를 추가하여 실시예 1과 실시예 2에서 제공된 제어방법을 개선하고자 한다.
상기 3개의 실시예들에서, 자가 이동로봇이 Y축 방향을 따라 이동할 때의 장애물 회피 방법에 대해서만 설명하였다. 당연히, 자가 이동로봇이 X축 방향을 따라 이동할 때에도 같은 방법이 적용될 수 있다.
또한, 수평 방향을 X축으로 하고 수직방향을 Y축으로 하는 평면 직교 좌표계가 형성되는 것으로 하여 보행경로를 쉽게 설명할 수 있지만, 본 발명은 수평방향과 수직방향에만 한정되지 않고, 서로 수직한 다른 2개의 방향으로도 좌표계를 형성할 수 있는데, 그러한 방향은 예를 들어 동서방향이나 남북방향일 수 있다.
전술한 바와 같이, 본 발명은 자가 이동로봇의 보행구역에서 수평방향을 X축으로 하고 수직방향을 Y축으로 하는 평면 직교 좌표계가 형성되는 자가 이동로봇의 장애물을 회피한 보행방법을 제공하고, 상기 방법은 구체적으로는 다음의 단계들을 포함한다.
단계 100: 자가 이동로봇이 Y축을 따라 이동하고, 자가 이동로봇이 Y축을 따라 정방향으로 이동하다가 장애물을 검출할 경우, 해당 위치의 장애물 지점을 상향 장애물 지점으로 설정하고, 유효한 상향 장애물 지점을 상향 기록 지점으로 저장하며; 자가 이동로봇이 Y축을 따라 역방향으로 이동하다가 장애물을 검출할 경우, 해당 위치의 장애물 지점을 하향 장애물 지점으로 설정하고, 유효한 하향 장애물 지점을 하향 기록 지점으로 저장하는 단계;
단계 200: 저장순서에 따라 상향 기록 지점과 하향 기록 지점을 현재 상향 기록 지점과 이전 상향 기록 지점으로, 그리고 현재 하향 기록 지점과 이전 하향 기록 지점으로 각각 분류하는 단계;
단계 300: 상기 현재 장애물 지점이 상향 장애물 지점일 경우, 현재 상향 장애물 지점 전에 이전 상향 기록 지점이 있는지 그리고 해당 이전 상향 기록 지점의 Y축 좌표가 현재 상향 장애물 지점의 Y축 좌표보다 작은지 판단하고; 상기 현재 장애물 지점이 하향 장애물 지점일 경우, 현재 하향 장애물 지점 전에 이전 하향 기록 지점이 있는지 그리고 해당 이전 하향 기록 지점의 Y축 좌표가 현재 하향 장애물 지점의 Y축 좌표보다 큰지 판단하는 단계;
단계 400: 판단결과가 긍정이면, 해당 이전 상향 기록 지점 또는 이전 하향 기록 지점이 전환점이고, 자가 이동로봇이 해당 장애물 지점으로부터 X축을 따라 전환점 쪽으로 전환점의 X축 좌표까지 이동하고, 전환점 좌표를 삭제하며, 해당 전환점과 현재 장애물 지점 사이의 구역에서 순회 보행을 완료한 후에 단계 100으로 되돌아가고; 판단결과가 부정이면, 자가 이동로봇이 X축을 따라 변위량 M1만큼 이동하는 단계;
단계 500: 자가 이동로봇이 원래의 Y축 보행방향과 반대 방향을 따라 이동하고, 단계 100으로 되돌아가는 단계; 및
단계 600: 보행 구역에서의 순회 보행이 완료될 때까지 단계 100 내지 단계 500을 반복하는 단계.
상기 단계 100은 구체적으로 현재 상향 장애물 지점이 이전 상향 기록 지점들 모두의 Y축 좌표와 다르면, 해당 상향 장애물 지점이 유효한 상향 장애물 지점이고; 현재 하향 장애물 지점이 이전 하향 기록 지점들 모두의 Y축 좌표와 다르면, 해당 하향 장애물 지점이 유효한 하향 장애물 지점인 것을 더 포함한다.
대안적으로, 상기 단계 100은 구체적으로 어느 상향 장애물 지점도 모두 유효한 상향 장애물 지점이고; 어느 하향 장애물 지점도 모두 유효한 하향 장애물 지점인 것을 더 포함한다.
상기 단계 400은 구체적으로 판단 결과가 긍정인 경우, 판단 조건을 만족하는 모든 상향 기록 지점들 또는 하향 기록 지점들의 X축 좌표들과 해당 장애물 지점의 X축 좌표의 차이를 비교하고, 차이가 가장 큰 상향 기록 지점 또는 하향 기록 지점을 전환점으로 취하는 것을 더 포함한다.
상기 단계 400은 구체적으로 판단 결과가 긍정인 경우, 판단 조건을 만족하는 모든 상향 기록 지점들 또는 하향 기록 지점들을 삭제하는 것을 더 포함한다.
상기 단계 400은 구체적으로 자가 이동로봇이 전환점의 X축 좌표에 도달하기 전에 장애물을 다시 검출할 경우, 전환점 좌표를 삭제한 후에 단계 500으로 진행하는 것을 더 포함한다.
상기 단계 400에서, 로봇이 전환점과 현재 장애물 지점 사이의 구역에서 순회보행을 수행하는 보행방식은 단계 600에서 보행구역에서의 순회보행을 완료하는 보행방식과 동일하다.
상기 단계 400은 다음의 단계 410을 더 포함한다:
자가 이동로봇이 원래의 Y축 보행방향을 따라 이동할 수 있는지 판단하고, 판단결과가 긍정이면 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동하고 단계 100으로 되돌아가며; 판단결과가 부정이면 단계 500으로 되돌아가는 단계.
상기 단계 410에서 자가 이동로봇이 Y축 보행방향을 따라 이동할 수 있는지 판단하는 것은 구체적으로 우선 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동하고, 일정한 거리를 이동하고서도 장애물을 검출하지 않으면, 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동 가능한 것으로 판단하고; 그렇지 않으면 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동할 수 없는 것으로 판단하는 것을 포함한다.
자가 이동로봇의 측면에는 측방감시센서가 구비되고, 상기 단계 410에서 자가 이동로봇이 Y축 보행방향을 따라 이동할 수 있는지 판단하는 것은 구체적으로 자가 이동로봇이 측방감시센서의 피드백 신호에 의해 원래의 Y축 보행방향을 따라 이동할 수 있는지 판단하는 것을 포함한다.
도 1 및 도 2 내지 도 4를 비교하면 알 수 있는 바와 같이, 본 발명에서는 자가 이동로봇이 보행 작업을 하는 과정에서 장애물을 만날 경우, 좌표에 대한 판단에 의해 장애물을 한 번에 회피하여 장애물 주변과 보행구역의 경계 사이의 각각의 구역에서의 작업을 완료할 수 있는데 반해, 선행 기술에서는 작업 과정에서 장애물을 반복적으로 회피하여 이동하여야 하므로, 본 발명은 장애물 위치에 대한 판단이 명확하고, 보행 경로도 간결하며, 자가 이동로봇의 작업 효율도 크게 향상시킬 수 있는 장점이 있다.

Claims (11)

  1. 자가 이동로봇의 장애물을 회피한 보행방법으로서, 상기 자가 이동로봇의 보행구역에서 수평방향을 X축으로 하고 수직방향을 Y축으로 하는 평면 직교 좌표계가 형성되는 방법에 있어서,
    구체적으로
    단계 100: 자가 이동로봇이 Y축을 따라 이동하고, 자가 이동로봇이 Y축을 따라 정방향으로 이동하다가 장애물을 검출할 경우, 해당 위치의 장애물 지점을 상향 장애물 지점으로 설정하고, 유효한 상향 장애물 지점을 상향 기록 지점으로 저장하며; 자가 이동로봇이 Y축을 따라 역방향으로 이동하다가 장애물을 검출할 경우, 해당 위치의 장애물 지점을 하향 장애물 지점으로 설정하고, 유효한 하향 장애물 지점을 하향 기록 지점으로 저장하는 단계;
    단계 200: 저장순서에 따라 상향 기록 지점과 하향 기록 지점을 현재 상향 기록 지점과 이전 상향 기록 지점으로, 그리고 현재 하향 기록 지점과 이전 하향 기록 지점으로 각각 분류하는 단계;
    단계 300: 상기 현재 장애물 지점이 상향 장애물 지점일 경우, 현재 상향 장애물 지점 전에 이전 상향 기록 지점이 있는지 그리고 해당 이전 상향 기록 지점의 Y축 좌표가 현재 상향 장애물 지점의 Y축 좌표보다 작은지 판단하고; 상기 현재 장애물 지점이 하향 장애물 지점일 경우, 현재 하향 장애물 지점 전에 이전 하향 기록 지점이 있는지 그리고 해당 이전 하향 기록 지점의 Y축 좌표가 현재 하향 장애물 지점의 Y축 좌표보다 큰지 판단하는 단계;
    단계 400: 판단결과가 긍정이면, 해당 이전 상향 기록 지점 또는 이전 하향 기록 지점이 전환점이고, 자가 이동로봇이 해당 장애물 지점으로부터 X축을 따라 전환점 쪽으로 전환점의 X축 좌표까지 이동하고, 전환점 좌표를 삭제하며, 해당 전환점과 현재 장애물 지점 사이의 구역에서 순회 보행을 완료한 후에 단계 100으로 되돌아가고; 판단결과가 부정이면, 자가 이동로봇이 X축을 따라 변위량 M1만큼 이동하는 단계;
    단계 500: 자가 이동로봇이 원래의 Y축 보행방향과 반대 방향을 따라 이동하고, 단계 100으로 되돌아가는 단계; 및
    단계 600: 보행 구역에서의 순회 보행이 완료될 때까지 단계 100 내지 단계 500을 반복하는 단계를 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법.
  2. 제1항에 있어서,
    상기 단계 100은 구체적으로 현재 상향 장애물 지점이 이전 상향 기록 지점들 모두의 Y축 좌표와 다르면, 해당 상향 장애물 지점이 유효한 상향 장애물 지점이고; 현재 하향 장애물 지점이 이전 하향 기록 지점들 모두의 Y축 좌표와 다르면, 해당 하향 장애물 지점이 유효한 하향 장애물 지점인 것을 더 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 이동방법.
  3. 제1항에 있어서,
    상기 단계 100은 구체적으로 어느 상향 장애물 지점도 모두 유효한 상향 장애물 지점이고; 어느 하향 장애물 지점도 모두 유효한 하향 장애물 지점인 것을 더 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법.
  4. 제3항에 있어서,
    상기 단계 400은 구체적으로 판단 결과가 긍정인 경우, 판단 조건을 만족하는 모든 상향 기록 지점들 또는 하향 기록 지점들의 X축 좌표들과 해당 장애물 지점의 X축 좌표의 차이를 비교하고, 차이가 가장 큰 상향 기록 지점 또는 하향 기록 지점을 전환점으로 취하는 것을 더 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법.
  5. 제4항에 있어서,
    상기 단계 400은 구체적으로 판단 결과가 긍정인 경우, 판단 조건을 만족하는 모든 상향 기록 지점들 또는 하향 기록 지점들을 삭제하는 것을 더 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법.
  6. 제1항에 있어서,
    상기 단계 400은 구체적으로 자가 이동로봇이 전환점의 X축 좌표에 도달하기 전에 장애물을 다시 검출할 경우, 전환점 좌표를 삭제한 후에 단계 500으로 진행하는 것을 더 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법.
  7. 제1항에 있어서,
    상기 단계 400에서, 로봇이 전환점과 현재 장애물 지점 사이의 구역에서 순회보행을 수행하는 보행방식은 단계 600에서 보행구역에서의 순회보행을 완료하는 보행방식과 동일한 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 단계 400은,
    단계 410: 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동할 수 있는지 판단하고, 판단결과가 긍정이면 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동하고 단계 100으로 되돌아가며; 판단결과가 부정이면 단계 500으로 되돌아가는 단계를 더 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법.
  9. 제8항에 있어서,
    상기 단계 410에서 자가 이동로봇이 Y축 보행방향을 따라 이동할 수 있는지 판단하는 것은 구체적으로 우선 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동하고, 일정한 거리를 이동하고서도 장애물을 검출하지 않으면, 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동 가능한 것으로 판단하고; 그렇지 않으면 자가 이동로봇이 원래의 Y축 보행방향을 따라 이동할 수 없는 것으로 판단하는 것을 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법.
  10. 제8항에 있어서,
    자가 이동로봇의 측면에는 측방감시센서가 구비되고, 상기 단계 410에서 자가 이동로봇이 Y축 보행방향을 따라 이동할 수 있는지 판단하는 것은 구체적으로 자가 이동로봇이 측방감시센서의 피드백 신호에 의해 원래의 Y축 보행방향을 따라 이동할 수 있는지 판단하는 것을 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법.
  11. 자가 이동로봇의 장애물을 회피한 보행방법으로서, 상기 자가 이동로봇의 보행구역에서 수평방향을 X축으로 하고 수직방향을 Y축으로 하는 평면 직교 좌표계가 형성되고, X축 또는 Y축 방향으로 이동하는 것을 정방향 보행으로 하는 방법에 있어서,
    구체적으로
    단계 1000: 자가 이동로봇이 Y축을 따라 이동하고, 자가 이동로봇이 장애물을 검출할 경우, 해당 위치를 장애물 지점으로 설정하고, 해당 위치의 좌표를 저장하여 기록 지점을 형성하는 단계;
    단계 2000: 기록 지점을 이전에 저장한 적이 있는지 그리고 해당 기록 지점의 Y축 좌표가 현재 장애물 지점과 이전 장애물 지점의 Y축 좌표에 의해 정해지는 값 범위 내에 있는지 판단하는 단계;
    단계 3000: 판단결과가 긍정이면, 해당 기록 지점이 전환점이고, 자가 이동로봇이 현재 장애물 지점으로부터 X축을 따라 전환점 쪽으로 전환점의 X축 좌표까지 이동하고, 전환점 좌표를 삭제하며, 해당 전환점과 현재 장애물 지점 사이의 구역에서 순회 보행을 완료한 후에 단계 1000으로 되돌아가고; 판단결과가 부정이면, 자아 이동로봇이 X축을 따라 변위량 M1만큼 이동하는 단계;
    단계 4000: 자가 이동로봇이 원래의 Y축 보행방향과 반대 방향을 따라 이동하고, 단계 1000으로 되돌아가는 단계; 및
    단계 5000: 보행 구역에서의 Y축 순회 보행이 완성될 때까지 단계 1000 내지 단계 4000을 반복하는 단계를 포함하는 것을 특징으로 하는 자가 이동로봇의 장애물을 회피한 보행방법.
KR1020167031679A 2014-04-14 2015-04-14 자가 이동로봇의 장애물을 회피한 보행방법 KR102329060B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410148490.X 2014-04-14
CN201410148490.XA CN104972462B (zh) 2014-04-14 2014-04-14 自移动机器人避障行走方法
PCT/CN2015/076510 WO2015158240A1 (zh) 2014-04-14 2015-04-14 自移动机器人避障行走方法

Publications (2)

Publication Number Publication Date
KR20170008745A true KR20170008745A (ko) 2017-01-24
KR102329060B1 KR102329060B1 (ko) 2021-11-19

Family

ID=54269697

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167031679A KR102329060B1 (ko) 2014-04-14 2015-04-14 자가 이동로봇의 장애물을 회피한 보행방법

Country Status (6)

Country Link
US (3) US10248126B2 (ko)
EP (1) EP3133457B1 (ko)
JP (1) JP6622215B2 (ko)
KR (1) KR102329060B1 (ko)
CN (1) CN104972462B (ko)
WO (1) WO2015158240A1 (ko)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104972462B (zh) 2014-04-14 2017-04-19 科沃斯机器人股份有限公司 自移动机器人避障行走方法
US9751210B2 (en) 2014-11-26 2017-09-05 Irobot Corporation Systems and methods for performing occlusion detection
US9519289B2 (en) 2014-11-26 2016-12-13 Irobot Corporation Systems and methods for performing simultaneous localization and mapping using machine vision systems
DE102015109775B3 (de) 2015-06-18 2016-09-22 RobArt GmbH Optischer Triangulationssensor zur Entfernungsmessung
DE102015114883A1 (de) 2015-09-04 2017-03-09 RobArt GmbH Identifizierung und Lokalisierung einer Basisstation eines autonomen mobilen Roboters
DE102015119501A1 (de) 2015-11-11 2017-05-11 RobArt GmbH Unterteilung von Karten für die Roboternavigation
DE102015119865B4 (de) 2015-11-17 2023-12-21 RobArt GmbH Robotergestützte Bearbeitung einer Oberfläche mittels eines Roboters
DE102015121666B3 (de) 2015-12-11 2017-05-24 RobArt GmbH Fernsteuerung eines mobilen, autonomen Roboters
DE102016102644A1 (de) 2016-02-15 2017-08-17 RobArt GmbH Verfahren zur Steuerung eines autonomen mobilen Roboters
CN106020207B (zh) * 2016-07-26 2019-04-16 广东宝乐机器人股份有限公司 自移动机器人行走方法与装置
CN106155056B (zh) * 2016-07-26 2019-09-03 广东宝乐机器人股份有限公司 自移动机器人行走方法与装置
CN107340768B (zh) 2016-12-29 2020-08-28 珠海市一微半导体有限公司 一种智能机器人的路径规划方法
US11709489B2 (en) 2017-03-02 2023-07-25 RobArt GmbH Method for controlling an autonomous, mobile robot
CN106959695B (zh) 2017-04-24 2019-08-02 广东宝乐机器人股份有限公司 移动机器人在工作区域内的角度修正方法及移动机器人
CN107505939B (zh) * 2017-05-13 2019-07-12 大连理工大学 一种移动机器人的全覆盖路径规划方法
CN107468160A (zh) * 2017-08-10 2017-12-15 宁波菜鸟智能科技有限公司 一种有线智能吸尘器清扫方法
CN107314773B (zh) * 2017-08-18 2019-10-01 广东宝乐机器人股份有限公司 移动机器人的地图创建方法及基于该地图的路径规划方法
CN109425352A (zh) * 2017-08-25 2019-03-05 科沃斯机器人股份有限公司 自移动机器人路径规划方法
CN107885213A (zh) * 2017-11-22 2018-04-06 广东艾可里宁机器人智能装备有限公司 一种扫地机器人室内导航系统及方法
CN107807650A (zh) * 2017-11-29 2018-03-16 莱克电气股份有限公司 一种机器人的运动控制方法、装置及设备
CN108345303A (zh) * 2018-01-24 2018-07-31 五邑大学 一种基于导引带与机器人的新型电动汽车充电服务系统
CN108958243A (zh) * 2018-06-27 2018-12-07 芜湖市越泽机器人科技有限公司 一种机器人躲避障碍物控制方法
CN109077674A (zh) * 2018-06-28 2018-12-25 芜湖泰领信息科技有限公司 扫地机的自动避障方法及智能扫地机
CN109582015B (zh) * 2018-11-07 2020-11-20 深圳乐动机器人有限公司 一种室内清扫规划的方法、装置及机器人
CN109634276B (zh) * 2018-12-13 2021-05-25 中联重科股份有限公司 农用车辆无人驾驶控制方法、系统及该农用车辆
CN111347415B (zh) * 2018-12-21 2021-08-13 广东宝乐机器人股份有限公司 擦窗机器人移动控制方法、移动控制系统及擦窗机器人
CN109753074A (zh) * 2019-01-28 2019-05-14 北京猎户星空科技有限公司 一种机器人巡航控制方法、装置、控制设备和存储介质
CN112276933A (zh) * 2019-07-24 2021-01-29 广东宝乐机器人股份有限公司 移动机器人的控制方法和移动机器人
CN112493924B (zh) * 2019-08-26 2023-03-10 苏州宝时得电动工具有限公司 清洁机器人及其控制方法
CN111061263B (zh) * 2019-11-27 2023-11-28 小狗电器互联网科技(北京)股份有限公司 机器人清扫绕障的方法和扫地机器人
CN112549033B (zh) * 2020-12-15 2022-12-02 灵动科技(北京)有限公司 一种轨迹控制方法、装置、机器人及存储介质
SE2150497A1 (en) * 2021-04-22 2022-10-23 Husqvarna Ab Improved obstacle handling for a robotic work tool
CN113296099B (zh) * 2021-05-21 2023-09-01 福建盛海智能科技有限公司 一种根据障碍物自动生成规避路径的方法及终端
CN113589806A (zh) * 2021-07-21 2021-11-02 珠海一微半导体股份有限公司 机器人弓字型行走时的策略控制方法
CN114259187B (zh) * 2021-12-15 2023-04-07 华帝股份有限公司 一种清洁设备控制方法、清洁设备
CN114578348B (zh) * 2022-05-05 2022-07-29 深圳安德空间技术有限公司 一种基于深度学习的探地雷达自主式智能扫查及导航方法
CN115268470B (zh) * 2022-09-27 2023-08-18 深圳市云鼠科技开发有限公司 清洁机器人的障碍物位置标记方法、装置以及介质
SE2251131A1 (en) * 2022-09-30 2024-03-31 Husqvarna Ab Improved navigation for a robotic work tool
CN117282698A (zh) * 2023-09-20 2023-12-26 宁夏隆基宁光仪表股份有限公司 一种光伏清洁机器人及其自主选择清洁路线的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5353224A (en) * 1990-12-07 1994-10-04 Goldstar Co., Ltd. Method for automatically controlling a travelling and cleaning operation of vacuum cleaners
KR20080075051A (ko) * 2007-02-10 2008-08-14 삼성전자주식회사 로봇 청소기 및 그 제어방법
KR20090104390A (ko) * 2008-03-31 2009-10-06 엘지전자 주식회사 로봇 청소기의 제어방법
CN102541056A (zh) * 2010-12-16 2012-07-04 莱克电气股份有限公司 机器人的障碍物处理方法

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6093522A (ja) * 1983-10-26 1985-05-25 Ootomatsukusu Kk 移動ロボツトの制御装置
JP3401023B2 (ja) * 1991-11-22 2003-04-28 日本輸送機株式会社 無人作業車の制御方法
JPH05257533A (ja) * 1992-03-12 1993-10-08 Tokimec Inc 移動ロボットの床面掃引方法及び装置
US6574536B1 (en) * 1996-01-29 2003-06-03 Minolta Co., Ltd. Moving apparatus for efficiently moving on floor with obstacle
US5890250A (en) * 1996-02-02 1999-04-06 Sky Robitics, Inc. Robotic washing apparatus
IL124413A (en) * 1998-05-11 2001-05-20 Friendly Robotics Ltd System and method for area coverage with an autonomous robot
GB2344900A (en) 1998-12-18 2000-06-21 Notetry Ltd Robotic floor cleaning device with obstacle detection
US8412377B2 (en) * 2000-01-24 2013-04-02 Irobot Corporation Obstacle following sensor scheme for a mobile robot
CN1129053C (zh) * 2001-01-15 2003-11-26 泰怡凯电器(苏州)有限公司 自动吸尘器的可清扫区域和障碍物区域的识别方法
CN1287722C (zh) * 2002-06-21 2006-12-06 泰怡凯电器(苏州)有限公司 自动吸尘器的可清扫区域和障碍物区域的识别方法
US20050010331A1 (en) * 2003-03-14 2005-01-13 Taylor Charles E. Robot vacuum with floor type modes
JP2004275468A (ja) 2003-03-17 2004-10-07 Hitachi Home & Life Solutions Inc 自走式掃除機およびその運転方法
FR2861855B1 (fr) * 2003-11-03 2006-06-30 Wany Sa Procede et dispositif pour balayer une surface de maniere statistique
JP2005211367A (ja) 2004-01-30 2005-08-11 Funai Electric Co Ltd 自律走行ロボットクリーナー
US20050273967A1 (en) 2004-03-11 2005-12-15 Taylor Charles E Robot vacuum with boundary cones
JP2006113952A (ja) 2004-10-18 2006-04-27 Funai Electric Co Ltd 充電式走行システム
KR101281512B1 (ko) * 2007-04-06 2013-07-03 삼성전자주식회사 로봇청소기 및 그 제어방법
CN104970741B (zh) * 2009-11-06 2017-08-29 艾罗伯特公司 用于通过自主型机器人完全覆盖表面的方法和系统
KR101081927B1 (ko) * 2010-05-15 2011-11-09 주식회사 일심글로발 유리창 청소 장치 및 그의 이동 제어 방법
TWM451103U (zh) * 2012-10-30 2013-04-21 Agait Technology Corp 行走裝置
KR102116285B1 (ko) * 2013-11-29 2020-06-05 삼성전자주식회사 청소 로봇 및 그 제어 방법
CN104977926A (zh) * 2014-04-14 2015-10-14 科沃斯机器人科技(苏州)有限公司 自移动机器人局部避障行走方法
CN104972462B (zh) 2014-04-14 2017-04-19 科沃斯机器人股份有限公司 自移动机器人避障行走方法
AU2015285065B2 (en) * 2014-07-01 2018-07-05 Samsung Electronics Co., Ltd. Cleaning robot and controlling method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5353224A (en) * 1990-12-07 1994-10-04 Goldstar Co., Ltd. Method for automatically controlling a travelling and cleaning operation of vacuum cleaners
KR20080075051A (ko) * 2007-02-10 2008-08-14 삼성전자주식회사 로봇 청소기 및 그 제어방법
KR20090104390A (ko) * 2008-03-31 2009-10-06 엘지전자 주식회사 로봇 청소기의 제어방법
CN102541056A (zh) * 2010-12-16 2012-07-04 莱克电气股份有限公司 机器人的障碍物处理方法

Also Published As

Publication number Publication date
US10248126B2 (en) 2019-04-02
CN104972462A (zh) 2015-10-14
US11768496B2 (en) 2023-09-26
JP6622215B2 (ja) 2019-12-18
US20210365030A1 (en) 2021-11-25
EP3133457A1 (en) 2017-02-22
WO2015158240A1 (zh) 2015-10-22
KR102329060B1 (ko) 2021-11-19
JP2017511549A (ja) 2017-04-20
US20170083022A1 (en) 2017-03-23
US11112800B2 (en) 2021-09-07
CN104972462B (zh) 2017-04-19
EP3133457B1 (en) 2019-01-02
EP3133457A4 (en) 2018-01-03
US20190179321A1 (en) 2019-06-13

Similar Documents

Publication Publication Date Title
KR20170008745A (ko) 자가 이동로봇의 장애물을 회피한 보행방법
JP2017511549A5 (ko)
CN107390698B (zh) 扫地机器人的补扫方法及芯片
US20190314991A1 (en) Method for controlling robot movement and robot
US20170075353A1 (en) Local obstacle avoidance walking method of self-moving robot
CN110338715B (zh) 智能机器人清洁地面的方法和芯片以及清洁机器人
WO2021008611A1 (zh) 机器人被困检测及脱困方法
US11774980B2 (en) Method for controlling cleaning of robot, chip, and robot cleaner
CN107340768B (zh) 一种智能机器人的路径规划方法
US20170357266A1 (en) Method for controlling walk of robot, and robot
KR102599597B1 (ko) 청소 로봇의 경로 스위핑 방법, 시스템 및 칩
CN108189039B (zh) 一种移动机器人的行进方法及装置
KR20220123297A (ko) 밀집된 장애물에 기반한 청소 제어 방법
US20210011480A1 (en) Cleaning Area Selection Method and Device
CN106155056A (zh) 自移动机器人行走方法与装置
CN110477813B (zh) 一种激光式清洁机器人及其控制方法
CN111158353A (zh) 用于多个机器人的移动控制方法以及其系统
CN108803586B (zh) 一种扫地机器人的工作方法
CN113031616A (zh) 一种清洁机器人返回路径规划方法、系统和清洁机器人
CN111714028A (zh) 清扫设备的禁区脱困方法、装置、设备及可读存储介质
KR102122236B1 (ko) 로봇 청소기 및 로봇 청소기의 제어 방법
KR101970191B1 (ko) 청소 기능 제어 장치와 방법 및 청소 로봇
CN114442618A (zh) 一种基于aco-pso-vfh的室内移动机器人自主动态路径规划方法
CN112764413A (zh) 一种机器人路径规划方法
JP2018120482A (ja) ロボットおよびその制御方法

Legal Events

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