KR20090069595A - 이동 로봇의 이동 오류 검출 장치 및 방법 - Google Patents

이동 로봇의 이동 오류 검출 장치 및 방법 Download PDF

Info

Publication number
KR20090069595A
KR20090069595A KR1020070137307A KR20070137307A KR20090069595A KR 20090069595 A KR20090069595 A KR 20090069595A KR 1020070137307 A KR1020070137307 A KR 1020070137307A KR 20070137307 A KR20070137307 A KR 20070137307A KR 20090069595 A KR20090069595 A KR 20090069595A
Authority
KR
South Korea
Prior art keywords
movement
mobile robot
output value
error detection
wheel
Prior art date
Application number
KR1020070137307A
Other languages
English (en)
Inventor
형승용
김종완
이종창
박종호
심현식
이건학
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020070137307A priority Critical patent/KR20090069595A/ko
Priority to US12/343,653 priority patent/US8135498B2/en
Publication of KR20090069595A publication Critical patent/KR20090069595A/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/007Manipulators mounted on wheels or on carriages mounted on wheels
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Motorcycle And Bicycle Frame (AREA)

Abstract

본 발명은 이동 로봇의 이동 중 발생되는 바퀴의 미끄러짐이나 과전류 오류와 같은 이동 오류를 검출하는 이동 로봇의 이동 오류 검출 장치 및 방법에 관한 것이다. 본 발명은 바퀴를 갖는 이동 로봇의 이동 오류 검출 방법으로, 센서부는 구동 모터에 입력되는 이동 명령에 따른 상기 바퀴의 실제 이동을 감지하여 실제 출력값을 출력하고, 상기 이동 명령에 따른 상기 바퀴의 정상적인 이동에 따라 상기 센서부에서 출력될 이상 출력값을 산출하고, 상기 실제 출력값과 상기 이상 출력값을 비교하여 이동 오류 여부를 검출하는 이동 로봇의 이동 오류 검출 장치 및 방법을 제공한다.
이동 로봇, 미끄러짐, 과전류, 수학적 모델, 상태공간 방정식

Description

이동 로봇의 이동 오류 검출 장치 및 방법{Apparatus and method for detecting movement error in moving robot}
본 발명은 이동 로봇에 관한 것으로, 더욱 상세하게는 이동 로봇의 이동 중 발생되는 바퀴의 미끄러짐이나 과전류 오류를 검출하는 이동 로봇의 이동 오류 검출 장치 및 방법에 관한 것이다.
청소 로봇과 같은 이동 로봇에서 자기의 정확한 위치를 파악하는 것은 가장 기본적이고 중요한 기능 중의 하나이다. 이동 로봇은 자기 위치를 인식하기 위해서 절대 항법과 추측 항법을 사용한다.
절대 항법은 GPS(Global Position System)를 이용하는 방법이 있다. GPS를 이용할 경우, 이동 로봇의 절대 위치를 안정적으로 획득할 수 있는 장점이 있지만, 이동 로봇의 제조 비용이 상승하고 위치 정밀도가 떨어지는 문제점을 안고 있다. 특히 GPS는 건물 내부와 같은 제한된 공간에서는 사용할 수 없기 때문에, 실내에서 사용되는 이동 로봇에는 적용할 수 없는 문제점을 안고 있다.
추측 항법은 엔코더, 가속도 센서 또는 자이로 센서를 이용하는 방법이 있다. 이와 같은 센서를 이용하는 방법은 제조 비용이 저렴하고 정확한 위치를 계산 할 수 있는 장점을 갖고 있지만, 적분을 통해서 얻어진 결과이므로 주행거리가 늘어나고 회전이 잦아질수록 오차가 커지는 문제점을 안고 있습니다.
특히 이동 로봇의 바퀴에 미끄러짐이 발생될 경우, 위치 오차가 크게 발생된다. 또한 이동 명령에 따라 모터에 전류가 공급되는 상태에서 바퀴가 장애물 등에 걸려 잘 돌아가지 못하는 경우, 바퀴의 구동 모터에 과부하(과전류)가 걸려 구동 모터의 수명을 단축하거나 심할 경우 구동 모터가 고장나는 문제가 발생될 수 있다.
따라서, 본 발명의 목적은 이동 중 바퀴의 미끄러짐이나 과전류 오류와 같은 이동 오류를 검출하기 위한 것이다.
상기 목적을 달성하기 위하여, 본 발명은 이동 로봇의 동특성을 수학적 모델화하여 입력과 출력의 비교만으로 이동 오류를 검출할 수 있는 이동 로봇의 이동 오류 검출 장치 및 방법을 제공한다.
본 발명은 바퀴를 갖는 이동 로봇의 이동 오류 검출 방법으로, 센서부는 구동 모터에 입력되는 이동 명령에 따른 상기 바퀴의 실제 이동을 감지하여 실제 출력값을 출력하는 출력 과정과, 상기 이동 명령에 따른 상기 바퀴의 정상적인 이동에 따라 상기 센서부에서 출력될 이상 출력값을 산출하는 산출 과정과, 상기 실제 출력값과 상기 이상 출력값을 비교하여 이동 오류 여부를 검출하는 검출 과정을 포함하는 이동 로봇의 이동 오류 검출 방법을 제공한다.
한편 본 발명은 바퀴를 갖는 이동 로봇의 이동 오류 검출 장치로서, 센서부, 이상 출력값 산출부 및 이동 오류 검출부를 포함하여 구성되는 이동 로봇의 이동 오류 검출 장치를 제공한다. 상기 센서부는 상기 바퀴의 구동 모터에 인가되는 이동 명령에 따른 상기 바퀴의 실제 이동을 감지하여 실제 출력값을 출력한다. 상기 이상 출력값 산출부는 상기 이동 명령에 따른 상기 바퀴의 정상적인 이동에 따라 상기 센서부에서 출력될 이상 출력값을 산출한다. 그리고 상기 이동 오류 검출부는 상기 실제 출력값과 상기 이상 출력값을 비교하여 이동 오류 여부를 검출한다.
본 발명에 따른 이동 로봇의 동특성을 수학적 모델화하여 실제 출력값과 이상 출력값의 비교만으로 이동 오류를 검출할 수 있다. 특히 본 발명은 별도의 하드웨어적인 구성 요소의 추가 없이 소프트웨어적인 접근을 통하여 이동 오류를 검출하기 때문에, 하드웨어의 추가에 따른 비용 상승 문제를 해소하고, 하드웨어적인 설계 변경으로 인한 시스템의 복잡도가 증가하는 것을 억제할 수 있다. 이로 인해 이동 로봇의 신뢰성을 향상시킬 수 있다.
이하, 첨부 도면을 참조하여 본 발명의 실시예를 보다 상세하게 설명하고자 한다.
이동 로봇의 이동 오류 검출 장치
본 실시예에 따른 이동 오류 검출 장치(50)가 적용된 이동 로봇(100)은, 도 1 및 도 2에 도시된 바와 같이, 본체(12)와, 본체(12)에 설치된 한 쌍의 바퀴(14, 16)를 포함하여 구성된다. 본체(12) 내에 바퀴(14, 16)를 구동시키는 구동 모터(18)와, 바퀴(14, 16)의 이동을 감지하는 센서부(41, 43, 45)를 포함한 이동 오류 검출 장치(50)가 설치된다.
한편 본 실시예에서는 본체(12)의 외측면에 바퀴(14, 16)가 설치된 예를 개시하였지만, 이에 한정되는 것은 아니다. 예컨대 바퀴는 본체의 바닥면에 설치되거나, 본체의 상부면과 바닥면을 관통하여 설치될 수 있다.
본 실시예에 따른 이동 오류 검출 장치(50)는 제어부(20), 메모리부(30) 및 센서부(41, 43, 45)를 포함하여 구성된다.
제어부(20)는 이동 오류 검출 장치(50)를 포함한 이동 로봇(100)의 전반적인 제어 동작을 수행하는 마이크로프로세서(microprocessor)이다. 제어부(20)는 이동 로봇(100)의 이동을 제어하고, 이동 중 발생되는 이동 오류의 검출을 제어한다.
한편 왼쪽 바퀴(14)와 오른쪽 바퀴(16)는 구동 모터(18)에 연결되어 있으며, 구동 모터(18)는 제어부(20)의 이동 명령(
Figure 112007093121917-PAT00001
,
Figure 112007093121917-PAT00002
)에 따라 왼쪽 바퀴(14)와 오른쪽 바퀴(16)를 회전시킨다. 구동 모터(18)로는 직류 모터가 사용될 수 있으며, 펄스 폭 변조 방식으로 이동 명령(
Figure 112007093121917-PAT00003
,
Figure 112007093121917-PAT00004
)이 입력된다. 여기서
Figure 112007093121917-PAT00005
은 왼쪽 바퀴(14)의 이동 명령이고,
Figure 112007093121917-PAT00006
은 오른쪽 바퀴(16)의 이동 명령이다.
메모리부(30)는 이동 로봇(100)의 동작 제어시 필요한 프로그램과, 그 프로그램 수행 중에 발생되는 데이터를 저장하며, 하나 이상의 휘발성 메모리 소자와 비휘발성 메모리 소자로 이루어진다. 메모리부(30)는 이동 오류를 검출하기 위한 이동 오류 검출 프로그램(31)을 저장하며, 이동 오류 검출 프로그램(31)의 실행 중에 발생되는 데이터를 저장할 수 있다.
그리고 센서부(41, 43, 45)는 구동 모터(18)로 입력되는 이동 명령(
Figure 112007093121917-PAT00007
,
Figure 112007093121917-PAT00008
)에 따른 바퀴(14, 16)의 실제 이동을 감지하여 실제 출력값(
Figure 112007093121917-PAT00009
,
Figure 112007093121917-PAT00010
,
Figure 112007093121917-PAT00011
)을 제어부(20)로 출력하며, 왼쪽 엔코더(41), 오른쪽 엔코더(43) 및 자이로 센서(45)를 포함하여 구성된다. 왼쪽 엔코더(41)는 왼쪽 바퀴(14)의 축 에 연결되어 왼쪽 바퀴(14)의 이동 여부를 검출하여 제어부(20)로 출력한다. 오른쪽 엔코더(43)는 오른쪽 바퀴(16)의 축에 연결되어 오른쪽 바퀴(16)의 이동 여부를 검출하여 제어부(20)로 출력한다. 그리고 자이로 센서(45)는 이동 로봇(100)의 회전 여부를 검출하여 제어부(20)로 출력한다. 이때 왼쪽 및 오른쪽 엔코더(41, 43)는 바퀴(14, 16)의 축에 연결되어 바퀴(14, 16)의 회전수에 비례하는 회전 속도와 직진 속도를 출력하고, 제어부(20)는 그 출력값을 적분하여 이동 로봇(100)의 위치를 산출한다. 자이로 센서(45)는 이동 로봇(100)의 회전 여부를 검출하여 각속도를 출력하고, 제어부(20)는 그 출력값을 적분하여 이동 로봇(100)의 이동 방향을 산출한다. 여기서
Figure 112007093121917-PAT00012
은 왼쪽 엔코더(41)의 출력값이고,
Figure 112007093121917-PAT00013
은 오른쪽 엔코더(43)의 출력값이고,
Figure 112007093121917-PAT00014
는 자이로 센서(45)의 출력값이다.
특히 제어부(20)는 이상 출력값 산출부(21)와 이동 오류 검출부(23)를 포함하여 구성된다. 이상 출력값 산출부(21)는 이동 명령(
Figure 112007093121917-PAT00015
,
Figure 112007093121917-PAT00016
)에 따른 바퀴(14, 16)의 정상적인 이동에 따라 센서부(41, 43, 45)에서 출력될 이상 출력값을 산출한다. 그리고 이동 오류 검출부(23)는 실제 출력값과 이상 출력값을 비교하여 이동 오류의 발생 여부를 검출한다.
이때 이상 출력값 산출부(21)는 이상 출력값을 아래의 수학식1로 산출한다.
Figure 112007093121917-PAT00017
(
Figure 112007093121917-PAT00018
은 왼쪽 바퀴 속도,
Figure 112007093121917-PAT00019
은 오른쪽 바퀴 속도,
Figure 112007093121917-PAT00020
은 왼쪽 바퀴의 이동 명령,
Figure 112007093121917-PAT00021
은 오른쪽 바퀴의 이동 명령, a 및 b는 시스템 파라미터,
Figure 112007093121917-PAT00022
은 왼쪽 엔코더의 출력값,
Figure 112007093121917-PAT00023
은 오른쪽 엔코더의 출력값,
Figure 112007093121917-PAT00024
는 자이로 센서의 각속도값,
Figure 112007093121917-PAT00025
은 왼쪽 및 오른쪽 바퀴 간 거리)
여기서 수학식1은 이동 로봇(100)의 수학적 모델로서 상태공간 방정식으로 표현한 것이다. 즉 이동 로봇(100)을 포함한 모든 동역학 시스템은 상태공간 방정식으로 표현할 수 있다. 수학식1은 일반적인 상태공간 방정식에서 이동 로봇(100)의 동특성 분석을 통하여 획득된 구체적인 수학적 모델이다.
이와 같은 수학적 모델은 이동 로봇(100)의 다양한 기동을 통하여 입출력 데이터를 수집하고, 수집된 입출력 데이터를 최소좌승법(least square)을 통하여 파라미터를 추출하여 획득된 상태공간 방정식이다. 정확한 수학적 모델을 획득하기 위해서는, 다양한 주파수 대역의 입력을 통해 출력 데이터를 얻어야 한다. 수학적 모델은 임의의 상태의 이동 로봇(100)에 입력된 이동 명령(
Figure 112007093121917-PAT00026
,
Figure 112007093121917-PAT00027
)에 대한 출력 의 함수로서 출력값(
Figure 112007093121917-PAT00028
,
Figure 112007093121917-PAT00029
,
Figure 112007093121917-PAT00030
)을 예상할 수 있는 장치이다. 이와 같은 수학적 모델은 실제 모델과 정확하게 일치할 수는 없으나 추출된 파라미터의 오차가 일정한 범위 내에서 동작한다고 명시할 수 있어야 한다.
본 실시예에서는 전술된 바와 같은 작업을 통하여 수학식1과 같은 수학적 모델을 획득하였다. 본 실시예에 따른 이동 로봇(100)은 두 바퀴(14, 16)를 통하여 이동하기 때문에, 다입력 다출력 시스템(multi input multi output system)이다. 따라서 이동 로봇(100)은 두 개의 이동 명령(
Figure 112007093121917-PAT00031
,
Figure 112007093121917-PAT00032
)을 받고 3개의 출력값(
Figure 112007093121917-PAT00033
,
Figure 112007093121917-PAT00034
,
Figure 112007093121917-PAT00035
)을 생성하는 상태공간 방정식으로 표현될 수 있다. 여기서 두 개의 이동 명령(
Figure 112007093121917-PAT00036
,
Figure 112007093121917-PAT00037
)은 왼쪽 바퀴(14)의 이동 명령(
Figure 112007093121917-PAT00038
)과 오른쪽 바퀴(16)의 이동 명령(
Figure 112007093121917-PAT00039
)이다. 3개의 출력값(
Figure 112007093121917-PAT00040
,
Figure 112007093121917-PAT00041
,
Figure 112007093121917-PAT00042
)은 왼쪽 엔코더(41)의 출력값(
Figure 112007093121917-PAT00043
), 오른쪽 엔코더(43)의 출력값(
Figure 112007093121917-PAT00044
), 자이로 센서(45)의 각속도값(
Figure 112007093121917-PAT00045
)이다. 이 경우 상태공간 방정식은 비선형 시스템이지만 운영점 근처에서 선형화시킬 수 있게 되며, 수학식1을 얻을 수 있다.
예컨대, 왼쪽 바퀴(14)에 미끄러짐이 발생할 경우, 이동 로봇(100)은 정상적인 상태의 입출력 반응양상을 띄지 않고 다른 값을 출력하게 된다. 보통 미끄러짐 마찰이 정지 마찰보다 작기 때문에, 시스템 파라미터 상에 변화가 발생되어 수학식2와 같은 형태를 갖게 된다.
Figure 112007093121917-PAT00046
Figure 112007093121917-PAT00047
(
Figure 112007093121917-PAT00048
는 각각 파라미터에서 발생되는 오류)
이와 같이 이동 오류가 발생되면, 수학식1 및 2에 표현된 바와 같이, 같은 이동 명령(
Figure 112007093121917-PAT00049
,
Figure 112007093121917-PAT00050
)에 대해서 다른 출력값(
Figure 112007093121917-PAT00051
,
Figure 112007093121917-PAT00052
,
Figure 112007093121917-PAT00053
)을 출력한다.
따라서 이동 오류 검출부(23)는 실제 출력값과 이상 출력값의 차이값(이하 '고장 잔차'라 한다)을 통하여 이동 오류 여부를 검출한다. 즉 이동 로봇(100)의 이동에 따라 센서부(41, 43, 45)에서 출력된 실제 출력값과, 수학식1에서 산출된 이상 출력값의 차이값을 통하여 이동 오류 여부를 검출한다.
한편 실제 출력값은 수학식2로 표현할 수 있기 때문에, 고장 잔차는 수학식3으로 표현할 수 있다. 수학식3은 수학식1 및 수학식2의 라플라스 변환을 통하여 획득된 수학식이다.
Figure 112007093121917-PAT00054
(s는 라플라스 변수)
이동 오류 검출부(23)는, 도 4에 도시된 바와 같이, 수학식3에 의해 산출된 고장 잔차로 이동 오류를 검출한다. 즉 고장 잔차가 "0"에 가까우면, 이동 오류 검출부(23)는 이동 로봇(100)의 모든 동작이 정상적으로 진행되고 있는 것으로 판단한다. 반면에 고장 잔차가 일정 한계값을 초과하게 되면, 이동 오류 검출부(23)는 이동 오류가 발생된 것으로 판단한다. 아울러 한계값을 초과한 오류 지속 시간이 한계 시간(t2-t1)을 초과하면, 이동 오류 검출부(23)는 이동 오류로 판단한다.
이와 같이 이동 오류 검출부(23)의 이동 오류 검출은 한계값과 오류 지속 시간을 통하여 이루어진다. 이때 수학적 모델이 실제 모델과 많이 다르다면 한계값을 크게 잡아야 할 것이다. 또한 센서부(41, 43, 45)에서 발생되는 잡음량이 많이 발생된다면 한계시간(t2-t1)을 크게 잡아야 한다. 즉 실제 출력값과 제 2 수학식으로 산출된 출력값 사이의 차이에 비례하게 한계값을 조절하고, 센서부(41, 43, 45)에서 발생되는 잡음량에 비례하게 한계 시간을 조절하는 것이 바람직하다.
한편 수학식2 및 수학식3은 왼쪽 바퀴(14)에 미끄러짐이 발생된 경우를 예시하였고, 일반적으로는 수학식4 및 수학식5로 표현될 수 있다.
Figure 112007093121917-PAT00055
(
Figure 112007093121917-PAT00056
는 각각 파라미터에서 발생되는 오류)
Figure 112007093121917-PAT00057
(s는 라플라스 변수)
수학식4에서 "
Figure 112007093121917-PAT00058
"는 오른쪽 바퀴(16)의 이동 오류와 관련된 성분이기 때문에, 이 성분은 오른쪽 바퀴(16)가 정상적으로 동작할 경우 "0"의 값을 갖게 된다. 즉 수학식4로부터 왼쪽 바퀴(14)의 이동 오류에 따른 수학식2가 도출될 수 있다.
수학식5를 살펴보면, 고장 잔차는 단순한 값이 아닌 벡터(vector)의 형태를 가지게 됨을 알 수 있다. 벡터의 크기는 한계값 추출을 통해 이동 오류의 검출에 사용하고, 벡터의 방향은 어떠한 이동 오류가 발생하는 지를 나타낸다. 즉 이동 오 류 검출 장치(50)는 서로 독립된 왼쪽 엔코더(41), 오른쪽 엔코더(43) 및 자이로 센서(45)를 갖기 때문에, 산출된 벡터 분석을 통하여 이동 오류를 분리해서 검출할 수 있다.
예컨대, 왼쪽 엔코더(41), 오른쪽 엔코더(43) 및 자이로 센서(45) 중 하나에 고장이 발생된 경우, 왼쪽 엔코더(41)의 고장 잔차는
Figure 112007093121917-PAT00059
, 오른쪽 엔코더(43)의 고장 잔차는
Figure 112007093121917-PAT00060
및 자이로 센서(45)의 고장 잔차는
Figure 112007093121917-PAT00061
형태로 표현된다.
그리고 한쪽 바퀴에 미끄러짐이 발생하거나 장애물에 걸려 잘 돌아가지 않는 경우, 이상 출력값과 실제 출력값의 모든 요소가 불일치하기 때문에, 고장 잔차는
Figure 112007093121917-PAT00062
형태로 표현된다.
이동 오류 검출 방법
본 실시예에 따른 이동 오류 검출 방법을, 도 1 내지 4를 참조하여 설명하면 다음과 같다. 여기서 도 3은 도 2의 이동 오류 검출 장치(50)의 이동 오류 검출 방법에 따른 흐름도이다.
먼저 S61과정에서 제어부(20)는 구동 모터(18)에 이동 명령(
Figure 112007093121917-PAT00063
,
Figure 112007093121917-PAT00064
)을 입력하면, S63과정에서 구동 모터(18)는 왼쪽 바퀴(14) 및 오른쪽 바퀴(16)를 회전시켜 이동 로봇(100)을 이동시킨다.
다음으로 S65과정에서 센서부(41, 43, 45)는 바퀴(14, 16)의 실제 이동을 감지하여 실제 출력값을 제어부(20)로 출력한다. 즉 왼쪽 엔코더(41)는 왼쪽 바퀴(14)의 축에 연결되어 왼쪽 바퀴(14)의 회전수에 비례하는 회전 속도와 직진 속도를 제어부(20)로 출력한다. 오른쪽 엔코더(43)는 왼쪽 엔코더(41)와 같은 방식으로 오른쪽 바퀴(16)의 회전수에 비례하는 회전 속도와 직진 속도를 제어부(20)로 출력한다. 그리고 자이로 센서(45)는 이동 로봇(100)의 회전 여부를 감지하여 각속도를 제어부(20)로 출력한다. 이때 제어부(20)는 센서부(41, 43, 45)로부터 수신한 값을 적분하여 이동 로봇(100)의 위치 및 이동 방향을 산출한다.
다음으로 S67과정에서 이상 출력값 산출부(21)는 구동 모터(18)에 입력된 이동 명령(
Figure 112007093121917-PAT00065
,
Figure 112007093121917-PAT00066
)에 따른 이상 출력값을 산출한다. 이때 이상 출력값은 수학식1에 의해 산출될 수 있다.
이어서 S69과정에서 이동 오류 검출부(23)는 실제 출력값과 이상 출력값의 차이값인 고장 잔차가 한계값을 초과하는 지의 여부를 판단한다. 이때 고장 잔차는 수학식5에 의해 산출될 수 있다.
S69과정의 판단 결과 한계값을 초과한 경우, S71과정에서 다시 이동 오류 검출부(23)는 한계값을 초과한 오류 지속 시간이 한계 시간을 초과하는 지의 여부를 판단한다.
S73과정의 판단 결과 한계 시간을 초과한 경우, S73과정에서 이동 오류 검출부(23)는 이동 오류가 발생된 것으로 판단한다. 그리고 S75과정에서 제어부(20)는 검출된 이동 오류에 따라 이동 로봇(100)의 이동을 제어한다. 예컨대, 이동 오류가 검출되면, 제어부(100)는 소리 또는 빛으로 알람을 출력하거나, 구동 모터(18)로의 이동 명령(
Figure 112007093121917-PAT00067
,
Figure 112007093121917-PAT00068
)의 입력을 중단하여 이동 로봇(100)의 이동을 일시 정지시킬 수 있다.
한편 S59과정의 판단 결과 한계값을 초과하지 않고, S71과정의 판단 결과 한계 시간을 초과하지 않은 경우, S77과정에서 이동 오류 검출부(23)는 이동 로봇(100)이 정상적으로 이동하는 것으로 판단한다.
한편, 본 명세서와 도면에 개시된 본 발명의 실시예들은 이해를 돕기 위해 특정 예를 제시한 것에 지나지 않으며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형예들이 실시 가능하다는 것은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 자명한 것이다.
도 1은 본 발명에 따른 이동 오류 검출 장치가 적용된 이동 로봇의 한 예를 보여주는 사시도이다.
도 2는 본 발명에 따른 이동 오류 검출 장치의 구성을 보여주는 블록도이다.
도 3은 도 2의 이동 오류 검출 장치의 이동 오류 검출 방법에 따른 흐름도이다.
도 4는 도 3의 이동 오류 검출 방법에 따라 산출된 고장 잔치의 시간에 대한 그래프이다.

Claims (18)

  1. 바퀴를 갖는 이동 로봇의 이동 오류 검출 방법으로,
    센서부는 구동 모터에 입력되는 이동 명령에 따른 상기 바퀴의 실제 이동을 감지하여 실제 출력값을 출력하는 출력 과정과;
    상기 이동 명령에 따른 상기 바퀴의 정상적인 이동에 따라 상기 센서부에서 출력될 이상 출력값을 산출하는 산출 과정과;
    상기 실제 출력값과 상기 이상 출력값을 비교하여 이동 오류 여부를 검출하는 검출 과정;을 포함하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 방법.
  2. 제 1항에 있어서, 상기 센서부는 엔코더 또는 자이로 센서 중에 적어도 하나를 포함하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 방법.
  3. 제 2항에 있어서, 상기 이동 로봇은 일정 거리를 두고 설치된 왼쪽 바퀴와 오른쪽 바퀴를 포함하며,
    상기 센서부는
    상기 왼쪽 바퀴의 이동 여부를 검출하는 왼쪽 엔코더와;
    상기 오른쪽 바퀴의 이동 여부를 검출하는 오른쪽 엔코더와;
    상기 이동 로봇의 회전 여부를 검출하는 자이로 센서;를 포함하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 방법.
  4. 제 3항에 있어서, 상기 이상 출력값은,
    Figure 112007093121917-PAT00069
    (
    Figure 112007093121917-PAT00070
    은 왼쪽 바퀴 속도,
    Figure 112007093121917-PAT00071
    은 오른쪽 바퀴 속도,
    Figure 112007093121917-PAT00072
    은 왼쪽 바퀴의 이동 명령,
    Figure 112007093121917-PAT00073
    은 오른쪽 바퀴의 이동 명령, a 및 b는 시스템 파라미터,
    Figure 112007093121917-PAT00074
    은 왼쪽 엔코더의 출력값,
    Figure 112007093121917-PAT00075
    은 오른쪽 엔코더의 출력값,
    Figure 112007093121917-PAT00076
    는 자이로 센서의 각속도값,
    Figure 112007093121917-PAT00077
    은 왼쪽 및 오른쪽 바퀴 간 거리)
    위의 제 1 수학식으로 산출하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 방법.
  5. 제 4항에 있어서, 상기 실제 출력값은,
    Figure 112007093121917-PAT00078
    (
    Figure 112007093121917-PAT00079
    는 각각 파라미터에서 발생되는 오류)
    위의 제 2 수학식으로 표현할 수 있는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 방법.
  6. 제 5항에 있어서, 상기 검출 과정은,
    Figure 112007093121917-PAT00080
    (s는 라플라스 변수)
    위와 같이 상기 제 2 수학식과 상기 제 1 수학식의 차이값으로 이동 오류 여부를 검출하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 방법.
  7. 제 6항에 있어서, 상기 검출 과정은
    상기 산출된 차이값이 한계값을 초과하게 되면 이동 오류로 판단하는 것을 하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 방법.
  8. 제 6항에 있어서, 상기 검출 과정은,
    상기 산출된 차이값이 한계값을 초과하고, 상기 한계값을 초과한 오류 지속 시간이 한계 시간을 초과하면 이동 오류로 판단하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 방법.
  9. 제 8항에 있어서, 상기 실제 출력값과 상기 제 2 수학식으로 산출된 출력값 사이의 차이에 비례하게 상기 한계값을 조절하고, 상기 센서부에 발생되는 잡음량에 비례하게 상기 한계 시간을 조절하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 방법.
  10. 바퀴를 갖는 이동 로봇의 이동 오류 검출 장치로서,
    상기 바퀴의 구동 모터에 인가되는 이동 명령에 따른 상기 바퀴의 실제 이동을 감지하여 실제 출력값을 출력하는 센서부와;
    상기 이동 명령에 따른 상기 바퀴의 정상적인 이동에 따라 상기 센서부에서 출력될 이상 출력값을 산출하는 이상 출력값 산출부; 및
    상기 실제 출력값과 상기 이상 출력값을 비교하여 이동 오류 여부를 검출하는 이동 오류 검출부;를 포함하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 장치.
  11. 제 10항에 있어서, 상기 센서부는 엔코더 또는 자이로 센서 중에 적어도 하나를 포함하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 장치.
  12. 제 11항에 있어서, 상기 이동 로봇은 일정 거리를 두고 설치된 왼쪽 바퀴와 오른쪽 바퀴를 포함하며,
    상기 센서부는
    상기 왼쪽 바퀴의 이동 여부를 검출하는 왼쪽 엔코더와,
    상기 오른쪽 바퀴의 이동 여부를 검출하는 오른쪽 엔코더와,
    상기 이동 로봇의 회전 여부를 검출하는 자이로 센서를 포함하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 장치.
  13. 제 12항에 있어서, 상기 이상 출력값은,
    Figure 112007093121917-PAT00081
    (
    Figure 112007093121917-PAT00082
    은 왼쪽 바퀴 속도,
    Figure 112007093121917-PAT00083
    은 오른쪽 바퀴 속도,
    Figure 112007093121917-PAT00084
    은 왼쪽 바퀴의 이동 명령,
    Figure 112007093121917-PAT00085
    은 오른쪽 바퀴의 이동 명령, a 및 b는 시스템 파라미터,
    Figure 112007093121917-PAT00086
    은 왼쪽 엔코더의 출력값,
    Figure 112007093121917-PAT00087
    은 오른쪽 엔코더의 출력값,
    Figure 112007093121917-PAT00088
    는 자이로 센서의 각속도값,
    Figure 112007093121917-PAT00089
    은 왼쪽 및 오른쪽 바퀴 간 거리)
    위의 제 1 수학식으로 산출하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 장치.
  14. 제 13항에 있어서, 상기 실제 출력값은,
    Figure 112007093121917-PAT00090
    (
    Figure 112007093121917-PAT00091
    는 각각 파라미터에서 발생되는 오류)
    위의 제 2 수학식으로 표현할 수 있는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 장치.
  15. 제 14항에 있어서, 상기 이동 오류 검출부는,
    Figure 112007093121917-PAT00092
    위와 같이 상기 제 2 수학식과 상기 제 1 수학식의 차이값으로부터 이동 오 류 여부를 검출하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 장치.
  16. 제 15항에 있어서, 상기 이동 오류 검출부는,
    상기 산출된 차이값이 한계값을 초과하게 되면 이동 오류로 판단하는 것을 하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 장치.
  17. 제 15항에 있어서, 상기 이동 오류 검출부는,
    상기 산출된 차이값이 한계값을 초과하고, 상기 한계값을 초과한 오류 지속 시간이 한계 시간을 초과하면 이동 오류로 판단하는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 방법.
  18. 제 17항에 있어서, 상기 실제 출력값과 상기 제 2 수학식으로 산출된 출력값 사이의 차이에 비례하게 상기 한계값이 조절되고, 상기 센서부에 발생되는 잡음량에 비례하게 상기 한계 시간이 조절되는 것을 특징으로 하는 이동 로봇의 이동 오류 검출 장치.
KR1020070137307A 2007-12-26 2007-12-26 이동 로봇의 이동 오류 검출 장치 및 방법 KR20090069595A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070137307A KR20090069595A (ko) 2007-12-26 2007-12-26 이동 로봇의 이동 오류 검출 장치 및 방법
US12/343,653 US8135498B2 (en) 2007-12-26 2008-12-24 Method and apparatus for detecting movement error in mobile robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070137307A KR20090069595A (ko) 2007-12-26 2007-12-26 이동 로봇의 이동 오류 검출 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20090069595A true KR20090069595A (ko) 2009-07-01

Family

ID=40799471

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070137307A KR20090069595A (ko) 2007-12-26 2007-12-26 이동 로봇의 이동 오류 검출 장치 및 방법

Country Status (2)

Country Link
US (1) US8135498B2 (ko)
KR (1) KR20090069595A (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101303158B1 (ko) * 2011-07-25 2013-09-09 엘지전자 주식회사 로봇 청소기 및 이의 자가 진단 방법
KR101303159B1 (ko) * 2011-07-25 2013-09-17 엘지전자 주식회사 로봇 청소기 및 이의 자가 진단 방법
KR101324166B1 (ko) * 2011-07-25 2013-11-08 엘지전자 주식회사 로봇 청소기 및 이의 자가 진단 방법
KR101371036B1 (ko) * 2011-07-25 2014-03-10 엘지전자 주식회사 로봇 청소기 및 이의 자가 진단 방법
US8800101B2 (en) 2011-07-25 2014-08-12 Lg Electronics Inc. Robot cleaner and self testing method of the same
US9928459B2 (en) 2011-07-25 2018-03-27 Lg Electronics Inc. Robotic cleaner and self testing method of the same
KR20210015120A (ko) * 2019-07-31 2021-02-10 엘지전자 주식회사 이동 로봇 및 그 제어방법

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090069595A (ko) * 2007-12-26 2009-07-01 삼성전자주식회사 이동 로봇의 이동 오류 검출 장치 및 방법
KR101553653B1 (ko) * 2009-01-07 2015-09-16 삼성전자 주식회사 로봇의 슬립 감지 장치 및 방법
JP5685842B2 (ja) 2010-07-12 2015-03-18 セイコーエプソン株式会社 ロボット装置およびロボット装置の制御方法
US20140031980A1 (en) 2011-11-11 2014-01-30 Jens-Steffen Gutmann Systems and methods for extending slam to multiple regions
JP2015062994A (ja) * 2015-01-14 2015-04-09 セイコーエプソン株式会社 ロボット装置およびロボット装置の制御方法
GB2538779B (en) * 2015-05-28 2017-08-30 Dyson Technology Ltd A method of controlling a mobile robot
CA167756S (en) * 2015-10-07 2018-01-02 Starship Tech Oü Delivery robot
DE112016006191T5 (de) * 2016-01-08 2018-09-20 Yamaha Hatsudoki Kabushiki Kaisha Bewegungsfehlerdetektionseinrichtung eines Montagekopfs und Bauteilmontageeinrichtung
US11172608B2 (en) 2016-06-30 2021-11-16 Tti (Macao Commercial Offshore) Limited Autonomous lawn mower and a system for navigating thereof
CN109416543B (zh) 2016-06-30 2022-11-08 创科(澳门离岸商业服务)有限公司 一种自主式割草机及其导航系统
USD821265S1 (en) 2017-03-23 2018-06-26 Starship Technologies Oü Vehicle
JP1612118S (ko) * 2017-12-21 2018-08-27
CN108508886B (zh) * 2018-02-11 2020-10-27 浙江科聪智能科技有限公司 用于防爆巡检机器人的一体化控制器及其控制系统
CN108415440B (zh) * 2018-05-16 2024-04-09 中山北京理工大学研究院 一种位移轨迹反馈系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1271241B (it) * 1994-10-04 1997-05-27 Consorzio Telerobot Sistema di navigazione per robot mobile autonomo
KR100486505B1 (ko) * 2002-12-31 2005-04-29 엘지전자 주식회사 로봇 청소기의 자이로 오프셋 보정방법
CA2531305A1 (en) * 2005-04-25 2006-10-25 Lg Electronics Inc. Self-moving robot capable of correcting movement errors and method for correcting movement errors of the same
KR101297388B1 (ko) * 2006-06-16 2013-08-19 삼성전자주식회사 위치 보정 기능을 제공하는 이동 장치 및 위치 보정 방법
KR100855469B1 (ko) * 2006-09-13 2008-09-01 삼성전자주식회사 이동 로봇의 자세 추정 장치 및 방법
KR20090069595A (ko) * 2007-12-26 2009-07-01 삼성전자주식회사 이동 로봇의 이동 오류 검출 장치 및 방법

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101303158B1 (ko) * 2011-07-25 2013-09-09 엘지전자 주식회사 로봇 청소기 및 이의 자가 진단 방법
KR101303159B1 (ko) * 2011-07-25 2013-09-17 엘지전자 주식회사 로봇 청소기 및 이의 자가 진단 방법
KR101324166B1 (ko) * 2011-07-25 2013-11-08 엘지전자 주식회사 로봇 청소기 및 이의 자가 진단 방법
KR101371036B1 (ko) * 2011-07-25 2014-03-10 엘지전자 주식회사 로봇 청소기 및 이의 자가 진단 방법
US8800101B2 (en) 2011-07-25 2014-08-12 Lg Electronics Inc. Robot cleaner and self testing method of the same
US9928459B2 (en) 2011-07-25 2018-03-27 Lg Electronics Inc. Robotic cleaner and self testing method of the same
KR20210015120A (ko) * 2019-07-31 2021-02-10 엘지전자 주식회사 이동 로봇 및 그 제어방법
WO2021020932A3 (ko) * 2019-07-31 2021-03-25 엘지전자 주식회사 이동 로봇 및 그 제어방법
US11625039B2 (en) 2019-07-31 2023-04-11 Lg Electronics Inc. Moving robot and control method thereof

Also Published As

Publication number Publication date
US8135498B2 (en) 2012-03-13
US20090171504A1 (en) 2009-07-02

Similar Documents

Publication Publication Date Title
KR20090069595A (ko) 이동 로봇의 이동 오류 검출 장치 및 방법
TWI544994B (zh) 機器人及機器人之雜訊除去方法
US8000925B2 (en) Moving body with tilt angle estimating mechanism
KR101844542B1 (ko) 협업로봇의 충돌을 감지하는 장치 및 방법
KR101008360B1 (ko) 이동 로봇에서의 자이로 센서 오차를 교정하는 장치 및방법
US7328123B2 (en) System for collision avoidance of rotary atomizer
KR102489196B1 (ko) 조향 모델에 기반한 모델 기반 진단
KR101694763B1 (ko) 조향 제어 장치 및 조향 제어 방법
CN109689312A (zh) 编码器的异常检测方法及异常检测装置和自动装置控制系统
KR101679835B1 (ko) 로봇 머니퓰레이터 및 이의 제어 방법
CN107407931A (zh) 通过触碰操纵器实现的鲁棒的直观的操作方法
KR101214685B1 (ko) 주파수 기반 로봇 머니퓰레이터 제어 방법
US11465679B2 (en) Method for detecting the presence of hands on the steering wheel
CN106020124A (zh) 伺服马达控制装置以及碰撞检测方法
US20110166763A1 (en) Apparatus and method detecting a robot slip
US9222237B1 (en) Earthmoving machine comprising weighted state estimator
JP5120082B2 (ja) ロボット暴走判定方法およびロボット制御装置
JP6601670B2 (ja) 路面状況認識装置、そのプログラム、及び移動体システム
JP2001051721A (ja) 衝突検出装置
KR101078854B1 (ko) 휠 구동 차량 및 이의 휠 접촉 감지 방법
KR102052871B1 (ko) 레졸버 출력신호 간 단락고장 진단 방법 및 장치
JP6757798B2 (ja) 物理量測定装置
JP4446156B2 (ja) モータ駆動システムのベルト切断検出装置および方法
JP7176255B2 (ja) 電動機制御装置及び衝突検出方法
Li et al. BMP: A self-balancing mobile platform

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application