KR20110081701A - 캘리브레이션 장치 - Google Patents

캘리브레이션 장치 Download PDF

Info

Publication number
KR20110081701A
KR20110081701A KR1020100001989A KR20100001989A KR20110081701A KR 20110081701 A KR20110081701 A KR 20110081701A KR 1020100001989 A KR1020100001989 A KR 1020100001989A KR 20100001989 A KR20100001989 A KR 20100001989A KR 20110081701 A KR20110081701 A KR 20110081701A
Authority
KR
South Korea
Prior art keywords
robot
angular velocity
calibration
plane
rotation angle
Prior art date
Application number
KR1020100001989A
Other languages
English (en)
Other versions
KR101685151B1 (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 KR1020100001989A priority Critical patent/KR101685151B1/ko
Publication of KR20110081701A publication Critical patent/KR20110081701A/ko
Application granted granted Critical
Publication of KR101685151B1 publication Critical patent/KR101685151B1/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/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • 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/37Measurements
    • G05B2219/37009Calibration of vision system, camera, adapt light level

Abstract

캘리브레이션을 수행하는 캘리브레이션 장치가 개시된다. 본 발명의 일실시예에 따르면, 캘리브레이션 장치는 로봇이 평면상에서 회전하는지 여부를 판단한다. 캘리브레이션 장치는 판단 결과에 따라 각속도를 계산하기 위해 사용되는 스케일 인자를 캘리브레이션할 수 있다.

Description

캘리브레이션 장치{CALIBRATION APPARATUS FOR GYRO SENSOR}
각속도를 계산하기 위해 사용되는 스케일 인자를 캘리브레이션할 수 있는 캘리브레이션 장치와 관련된다.
일반적으로 로봇은 산업용으로 개발되어 공장 자동화의 일환으로 사용되거나, 인간이 견딜 수 없는 극한의 환경에서 인간을 대신하여 작업을 수행하는 데 사용되어 왔다. 이러한 로봇 공학 분야는 근래에 들어 최첨단의 우주 개발산업에 사용되면서 발전을 거듭하여 최근에 들어서는 인간친화적인 가정용 로봇의 개발에까지 이르렀다. 덧붙여, 로봇은 의료용 기기를 대체하여 인간 생체 내에 투입됨으로써, 기존의 의료용 기기로는 치료가 불가능했던 미세한 인간 생체조직의 치료에까지 이용된다. 이와 같은 눈부신 로봇공학의 발전은 인터넷에 의한 정보혁명과 이를 뒤이어 유행하고 있는 생명공학 분야를 대체하여 새롭게 등장할 최첨단 분야로서 각광받고 있다.
가정용 로봇은 산업용 로봇에 국한되어왔던 기존의 중공업 중심의 로봇 공학분야를 경공업 중심의 로봇 공학 분야까지 확대시킨 주역이다. 예를 들면, 가정용 로봇에는 청소용 로봇이 있다. 청소용 로봇의 기능 중 가장 기본적인 기능은 이동 로봇의 정확한 위치를 파악하는 기능이다. 위치를 파악하는 방법으로는 초음파 센서를 이용한 비콘(beacon)을 가정 내에 장착하는 방법, 실내용 GSP(Global Positioning System)를 이용하는 방법, 엔코더(encoder)로부터 회전 속도와 직진 속도를 구하고 이를 적분하여 위치를 구하는 방법 등이 있다.
이와 같이, 이동 로봇의 위치를 파악할 수 있는 다양한 방법에 대한 다양한 연구가 절실히 요구되고 있는 실정이다.
로봇이 평면상에서 회전할 때, 캘리브레이션을 수행하는 로봇의 캘리브레이션 장치가 개시된다.
본 발명의 일 실시예에 따른 로봇의 캘리브레이션 장치는, 로봇이 평면상에서 회전하는지 여부를 판단하고, 평면상에서 회전하는 경우에만 캘리브레이션하는 제어부를 포함할 수 있다.
여기서, 캘리브레이션 장치는 고정 영상 데이터를 획득하는 카메라를 더 포함하고, 제어부는 카메라를 통해 로봇의 회전 시작 전에 획득된 제 1 고정 영상 데이터에 포함된 복수의 기준점들 간의 제 1 거리와 로봇의 회전 종료 후에 획득된 제 2 고정 영상 데이터에서 트래킹하여 추출된 복수의 기준점들 간의 제 2 거리에 기초하여 오차 값을 계산하고, 오차 값에 기초하여 로봇이 평면상에서 회전하는지 여부를 판단할 수 있다.
여기서, 제어부는 오차 값이 기준 오차 값보다 작은 경우를 로봇이 평면상에서 회전하는 것으로 판단할 수 있다.
여기서, 캘리브레이션 장치는 로봇의 회전 관성에 따른 복수의 원 데이터를 출력하는 자이로 센서와, 복수의 원 데이터와 스케일 인자에 기초하여 로봇의 각속도를 계산하는 각속도 계산부를 더 포함하고, 제어부는 계산된 각속도 값에 기초하여 로봇이 평면상에서 회전하는지 여부를 판단할 수 있다.
여기서, 제어부는 계산된 각속도 값이 기준 각속도 값보다 작은 경우를 로봇이 평면상에서 회전하는 것으로 판단할 수 있다.
여기서, 캘리브레이션 장치는 로봇의 회전 시작 전의 제 1 고정 영상 데이터와 로봇의 회전 종료 후의 제 2 고정 영상 데이터를 획득하는 카메라와, 로봇의 회전 관성에 따른 복수의 원 데이터를 출력하는 자이로 센서 및 복수의 원 데이터와 스케일 인자에 기초하여 로봇의 각속도를 계산하는 각속도 계산부를 더 포함하고, 제어부는 제 1 고정 영상 데이터와 제 2 고정 영상 데이터에 기초하여 로봇의 제 1 회전각을 계산하고, 계산된 각속도를 시간에 대해 적분하여 로봇의 제 2 회전 각을 계산하고, 제 1 회전각과 제 2 회전각의 관계에 기초하여 스케일 인자를 계산할 수 있다.
개시된 내용에 따르면, 스케일 인자를 캘리브레이션함으로써, 로봇의 위치 또는 움직임을 정확하게 파악할 수 있다.
도 1은 본 발명의 일 실시예와 관련된 캘리브레이션(CALIBRATION) 장치(100)의 블록 구성도(block diagram).
도 2는 자이로 전압(ωz)과 각속도(y) 간의 관계를 보여주는 도면.
도 3은 정지 상태에서 자이로 센서의 바이어스 트리프트를 보여주는 도면.
도 4는 이동 중 바이어스를 추정하는 예를 보여주는 도면.
도 5는 본 발명의 제 1 실시예에 따른 판단부(132)의 동작을 설명하기 위한 도면.
도 6은 본 발명의 제 2 실시예에 따른 판단부(132)의 동작을 설명하기 위한 도면.
도 7은 본 발명의 일 실시예에 따른 캘리브레이션 방법을 설명하기 위한 흐름도.
도 8은 본 발명의 제 1 실시예에 따른 도 7의 판단 단계(S700)를 설명하기 위한 흐름도.
도 9는 본 발명의 제 2 실시예에 따른 도 7의 판단 단계(S700)를 설명하기 위한 흐름도.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시예에 따른 캘리브레이션 장치에 대하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예와 관련된 캘리브레이션(CALIBRATION) 장치(100)의 블록 구성도(block diagram)이다. 여기서, 캘리브레이션 장치는 로봇 내에 장착될 수 있다. 여기서, 캘리브레이션이란 자이로 센서로부터 얻어지는 데이터에 기초하여 실제 물리적인 값(각속도)을 계산할 때, 사용되는 스케일 인자를 구하거나 업데이트하는 작업을 의미한다. 스케일 인자는 자이로 센서로부터 수신된 데이터에 기초하여 각속도를 계산할 때 사용되는 인자를 의미한다. 스케일 인자에 대한 구체적인 설명은 이하의 도 2 내지 도 4를 참조하여 후술하겠다.
도 1을 참조하면, 로봇에는 카메라(110), 모터(120), 자이로 센서(140) 및 캘리브레이션 장치(100)가 포함된다. 여기서, 캘리브레이션 장치(100)는 주 제어부(130) 및 자이로 제어부(150)를 포함한다. 여기서, 주 제어부(130) 및 자이로 제어부(150)는 하나의 제어부로 구현될 수 있다.
카메라(110)는 천정, 벽 등과 같은 고정 환경에 대한 고정 영상 데이터를 생성한다. 생성된 고정 영상 데이터는 주 제어부(130)에 전송된다. 카메라(110)는 CCD(Charge Coupled Device), CMOS(Complementary Metal Oxide Semiconductior), CIS(Contact Image Sensor) 또는 기타 알려진 이미지 센서를 구비할 수 있다. 카메라는 이미지 획득 장치 중 하나이다.
모터(120)는 로봇이 이동할 수 있도록 구동력을 제공한다. 모터(120)는 회전 모터, 스텝 모터, 리니어 모터 등과 같이 다양한 모터가 사용될 수 있다. 로봇을 이동시키기 위해, 모터(120)는 적어도 2개 이상의 바퀴와 연결될 수 있다.
주 제어부(130)는 통상적으로 로봇의 전반적인 동작을 제어한다. 예를 들면, 로봇의 이동, 로봇의 위치 파악 등과 관련된 제어 및 처리를 수행한다.
주 제어부(130)는 모터 제어부(131), 판단부(132), 및 제 1 회전각 계산부(133)를 포함할 수 있다.
모터 제어부(131)는 모터 제어 신호를 모터(120) 및 자이로 제어부(160)로 전송한다. 모터 제어 신호가 입력되면, 모터(120)는 소정 패턴으로 로봇을 회전시킨다.
판단부(132)는 로봇이 평면상에서 회전하는지 여부를 판단한다. 여기서, 로봇이 평면상에서 회전한다는 것은 로봇이 지면과 수직 방향의 축을 중심으로 회전하는 것을 의미한다. 판단결과, 로봇이 평면상에 회전하는 경우, 캘리브레이션 장치(100)는 자이로 센서(140)에 대한 캘리브레이션을 실행한다. 로봇이 평면상에서 회전하는지 여부를 판단하는 방법은 이하의 도 2 및 도 3을 참조하여 후술하기로 한다. 캘리브레이션 과정은 이하의 도 4 내지 도 6을 참조하여 구체적으로 설명하겠다.
제 1 회전각 계산부(133)는 카메라(110)를 통해 획득된 로봇 회전 전의 제 1 고정 영상 데이터 및 로봇 회전 후의 제 2 고정 영상 데이터에 기초하여 로봇의 제 1 회전각을 계산한다. 이때, 제 1 고정 영상 데이터 및 제 2 고정 영상 데이터를 단순히 비교하여 회전각을 측정하면, 회전각이 정확하게 측정되지 않을 수 있다. 이에 따라, 제 1 및 제 2 영상의 차이를 정량화하여 표현할 수 있는 기법이 사용될 수 있다. 예를 들면, Lucas-Kanade 알고리즘이 사용될 수 있다.
자이로 센서(140)는 로봇의 회전에 따라 로봇의 위치 또는 로봇의 회전에 대한 데이터를 출력한다. 이하 본 발명에서는 데이터의 일 예인 전압 신호(이하, 자이로 전압이라고 함)를 기준으로 설명하겠다.
자이로 제어부(150)는 자이로 센서(140)로부터 출력된 전압 신호에 기초하여 로봇의 각속도 또는 회전각을 계산하거나 스케일 인자를 업데이트할 수 있다.
자이로 제어부(150)는 각속도 계산부(151), 제 2 회전각 계산부(152), 스케일 인자 계산부(153) 및 메모리(154)를 포함할 수 있다.
여기서, 캘리브레이션 부는 제 1 회전각 계산부(133), 제 2 회전각 계산부(152) 및 스케일 인자 계산부(153)을 포함한다. 캘리브레이션 부는 스케일 인자를 캘리브레이션하는 기능을 한다.
각속도 계산부(151)는 스케일 인자 및 자이로 전압에 기초하여 로봇의 각속도를 실시간으로 계산한다. 스케일 인자는 스케일 인자 계산부(153)에 의해서 업데이트될 수 있다. 업데이트된 스케일 인자는 각속도 계산부(151)로 제공되거나 메모리(154)에 저장될 수 있다. 그러면, 각속도 계산부(151)는 업데이트된 스케일 인자 및 자이로 전압에 기초하여 로봇의 각속도를 계산한다.
제 2 회전각 계산부(152)는 각속도 계산부(151)에서 계산된 각속도를 적분함으로써 로봇의 제 2 회전 각을 계산한다. 예를 들면, 제 2 회전각 계산부(152)는 계산된 각속도를 적분하여 회전각을 계속 계산한다. 그 다음, 모터 정지 신호가 입력될 때, 제 2 회전각 계산부(152)는 현재 계산된 회전각을 로봇의 제 2 회전각으로 계산할 수 있다.
스케일 인자 계산부(153)는 제 1 회전각 계산부(133)에서 계산된 제 1 회전각 및 제 2 회전각 계산부(153)에서 계산된 제 2 회전각의 비율을 계산한다. 스케일 인자 계산부(153)는 비율과 기설정된 스케일 인자를 곱하여 새로운 스케일 인자를 생성한다. 즉, 스케일 인자를 업데이트한다. 업데이트된 스케일 인자는 메모리(154)에 저장될 수 있다.
메모리(154)는 스케일 인자를 저장하고, 저장된 스케일 인자를 각속도 계산부(151)에 제공한다. 여기서, 메모리(154)는 자이로 제어부(150)에 내장되거나 별도로 구현될 수 있다.
메모리(154)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
여기에 설명되는 다양한 실시예는 예를 들어, 소프트웨어, 하드웨어 또는 이들의 조합된 것을 이용하여 컴퓨터 또는 이와 유사한 장치로 읽을 수 있는 기록매체 내에서 구현될 수 있다.
본 발명에 따른 캘리브레이션은 일반적으로 로봇을 움직이는 경우 또는 캘리브레이션을 하기 위해 로봇을 강제로 움직이는 경우에 실행될 수 있다. 또한, 캘리브레이션은 주기적으로 또는 캘리브레이션 실행 신호가 입력되면 실행될 수 있다. 예를 들면, 캘리브레이션은 1시간, 1일 또는 1주마다 실행될 수 있다. 또는, 캘리브레이션은 사용자에 의해 입력되는 캘리브레이션 실행 신호가 입력되면 실행될 수 있다.
이에 따라, 스케일 인자를 자동으로 업데이트함으로써, 더욱 정확하게 로봇의 회전각을 계산할 수 있다.
도 2 내지 도 4는 본 발명의 스케일 인자 계산부(153)의 동작을 설명하기 위한 도면이다.
도 2는 자이로 전압(ωz)과 각속도(y) 간의 관계를 보여주는 도면이다. 여기서, 함수 f(x)를 이용하여 스케일 인자를 계산하는 과정이 캘리브레이션 과정이다.
일반적으로 자이로 전압(ωz)과 실제 물리적으로 의미 있는 값, 즉 각속도(y) 간의 관계는 다음의 수학식 1와 같이 모델링될 수 있다.
Figure pat00001
여기서, f(ωz)는 자이로 전압에 스케일 인자를 적용한 함수이고, Bz는 바이어스 항으로서 상수이다. 그 이외의 Mxz + Myy는 커플링 항이고, Bgx*ax + Bgz*az는 중력 성분 항이다. f(ωz) 및 Bz를 제외한 항은 특별한 환경에 적용되는 경우를 제외하고는 각속도(y)에 미치는 영향이 미미하므로 생략될 수 있다.
ωz를 x라고 표기하고, f(x)를 n차의 다항식으로 가정하면, f(x)는 다음의 수학식 2과 같이 표현될 수 있다.
Figure pat00002
그런데, 로봇이 정지하고 있는 중에도 자이로 센서의 소자 특성으로 인하여 바이어스 드리프트(바이어스가 시간에 따라 변화하는 현상)가 발생한다.
도 3은 정지 상태에서 자이로 센서의 바이어스 트리프트를 보여주는 도면이다.
일반적으로, 자이로 센서를 통한 각속도의 계산의 정확도에 있어서 바이어스 드리프트는 상당한 영향을 미친다. 따라서, 캘리브레이션 과정에서는 이러한 바이어스 드리프트도 아울러 고려할 필요가 있다.
바이어스를 보정하는 방법으로는 실시간 자이로 전압에서 로봇의 정지 중에 측정된 바이어스만큼을 차감하는 방법이 있다. 바이어스는 시간에 따라 수시로 변동하므로 로봇이 정지할 때마다 업데이트되는 것이 바람직하다. 예를 들면, 로봇이 정지한 경우, 스케일 인자 계산부(153)는 이때 입력되는 자이로 전압(또는 정지 중 전압의 평균)을 현재의 바이어스로 추정할 수 있다. 다만, 이동 중에는 바이어스의 정확한 값을 측정할 수 없으므로, 정지 중에 측정된 바이어스를 보간 하여 이동 중 바이어스를 추정할 필요가 있다.
도 4는 이동 중 바이어스를 추정하는 예를 보여주는 도면이다. 로봇은 시간 t1 이전에는 정지한 상태에 있으며, t1 내지 tn 사이에서는 도 4에 도시된 바와 같은 패턴의 운동을 한 후, 다시 tm 이후에는 다시 정지한다. 이때, 자이로 전압도 변화하게 되고, t1에서의 바이어스 B1과 t2에서의 바이어스 B2는 서로 다른 값일 수 있다. 따라서, 운동 중인 구간(t1 내지 tn)에서의 바이어스는 B1 및 B2를 이용하여 보간할 필요가 있다. 여기서, 보간 함수((b(x))는 선형 함수를 사용할 수 있다. 만약 보간 함수(b(x))가 결정되면, 이동 중 임의의 시간(t1)에서의 바이어스 값(b(t1))을 구할 수 있다.
이와 같이, 이동 중 바이어스를 계산한 후, 입력된 자이로 전압('보정 전 전압')에서 계산된 바이어스 값을 차감함으로써, 정확한 자이로 전압('보정 후 전압')을 구할 수 있다.
임의의 시간 인덱스 i에서의 보정된 자이로 전압(xi) 및 전차(Ri)는 다음의 수학식 3와 같이 표시된다.
Figure pat00003
여기서, gi, yi, bi는 각각 시간 인덱스 i에서의 보정 전 자이로 전압, 각속도 및 바이어스를 나타낸다. 그리고, f(xi)는 최종적으로 그 계수를 결정하여야하는 함수, 즉 목적 함수이다.
전체 시간 구간(i=1 내자 m)에서 잔차의 합을 최소로 하는 f(xi)의 계수 ao 내지 an를 구하는 것이 최소 자승법(Least Square, LS)이다. 계산된 계수들의 집합이 스케일 인자이다.
도 5는 본 발명의 제 1 실시예에 따른 판단부(132)의 동작을 설명하기 위한 도면이다.
이하에서는, 본 발명의 제 1 실시예에 따른 판단부(132)가 카메라(110)로부터 수신되는 고정 영상 데이터에 기초하여 로봇이 평면상에서 회전하는지 여부를 판단하는 과정을 설명한다. 모터 제어부(131)에서 모터 구동 신호가 생성되거나 타 구성요소로 전송되면, 판단부(132)는 카메라(110)를 통해 고정 환경에 대한 제 1 고정 영상 데이터를 획득하여 복수의 기준점(501, 502, 503)을 추출한다. 여기서, 제 1 고정 영상 데이터는 로봇이 회전하기 전의 고정 환경에 대한 고정 영상 데이터이다. 복수의 기준점은 Harris corner detector 등을 사용하여 추출할 수 있다. 판단부(132)는 복수의 기준점들 간의 거리를 계산한다. 즉, 복수의 기준점들 간의 제 1 거리(a, b, c)를 계산한다. 제 1 거리의 단위는 픽셀(pixel)이다. 그 다음, 모터 제어부(131)에서 모터 정지 신호가 생성되거나 타 구성요소로 전송되면, 판단부(132)는 카메라(110)를 통해 고정 환경에 대한 제 2 고정 영상 데이터를 획득하여 기준점(501, 502, 503)을 트래킹(tracking) 하여 추출한다. 여기서, 제 2 공정 영상 데이터는 로봇이 회전한 후의 고정 환경에 대한 고정 영상 데이터이다. 복수의 기준점은 Lucas-Kanade tracker 등을 사용하여 트래킹할 수 있다. 판단부(132)는 복수의 기준점들 간의 거리를 계산한다. 즉, 복수의 기준점들 간의 제 2 거리(a', b', c')를 계산한다. 그 다음, 판단부(132)는 제 1 거리(a, b, c) 및 제 2 거리(a', b', c')를 비교하여 오차 값을 계산한다. 오차값은 아래의 수학식 4를 이용하여 구해질 수 있다.
Figure pat00004
여기서, sqrt는 제곱근을 의미한다.
다만, 오차값(Error)은 위와 같은 방법 이외에도 다양한 방법에 의해서 계산될 수 있다.
판단부(132)는 오차 값과 오차 기준 값을 비교하여 로봇이 평면상에서 회전하는 여부를 판단한다. 여기서, 오차 기준 값은 로봇이 평면상에서 회전하는지를 판단하기 위해 기준이 되는 값을 의미한다. 예를 들면, 판단부(132)는 오차 값이 오차 기준 값보다 큰 경우는 로봇이 평면상에서 회전하지 않는 것으로 판단하고, 오차 값이 오차 기준 값보다 작은 경우는 로봇이 평면상에서 회전하는 것으로 판단한다. 오차 기준 값은 디폴트값으로 정해지거나 사용자 등에 의해서 변경될 수도 있다. 오차 값이 오차 기준 값보다 작은 경우, 캘리브레이션 장치(100)는 자이로 센서를 캘리브레이션한다.
위에서는 기준점이 3개인 경우를 기준으로 설명하였으나, 본 실시예는 기준점이 2개 이상인 경우에도 모두 적용될 수 있다.
도 6은 본 발명의 제 2 실시예에 따른 판단부(132)의 동작을 설명하기 위한 도면이다.
이하에서는, 본 발명의 제 2 실시예에 따른 판단부(132)가 각속도 계산부(151)로부터 출력된 각속도 값에 기초하여 로봇이 평면상에서 회전하는지 여부를 판단하는 과정을 설명한다. 도 3의 (a)를 참조하면, 로봇이 평면상에서 이동하는 경우에 시간과 속도와의 관계를 나타낸 그래프이다. 도면 부호 600을 참조하면, 로봇이 평면상에서 회전하는 경우, 로봇은 등속도 운동을 하게 된다.
반면에, 도 3의 (b)를 참조하면, 로봇이 전선, 필기도구 등과 같은 장애물을 넘어 이동하는 경우에 시간과 속도와의 관계를 나타낸 그래프이다. 도면 부호 610을 참조하면, 로봇이 장애물을 넘어 이동하는 경우, 로봇은 등속도 운동을 하지 않게 된다. 즉, 각속도 값이 순간적으로 커지게 된다.
따라서, 판단부(132)는 각속도 계산부(151)로부터 출력된 각속도 값이 기준 각속도 임계값 이하인 경우, 로봇이 평면상에서 회전하는 것으로 판단한다. 반면에, 판단부(132)는 각속도 계산부(151)로부터 출력된 각속도 값이 기준 각속도 임계값 이상인 경우, 로봇이 평면상에서 회전하지 않는 것으로 판단한다. 기준 각속도 임계값은 로봇이 평면상에서 회전하는지 장애물을 넘어 이동하는지를 판단하기 위한 기준이 되는 각속도 값이다. 로봇이 평면상에서 회전하는 것으로 판단된 경우, 캘리브레이션 장치(100)는 자이로 센서를 캘리브레이션한다.
도 7은 본 발명의 일 실시예에 따른 캘리브레이션 방법을 설명하기 위한 흐름도이다.
판단부(132)는 로봇이 평면상에서 회전하는지 여부를 판단한다(S700). 판단 결과, 로봇이 평면상에서 회전하는 경우, 제 1 회전각 계산부(133)는 제 1 및 제 2 고정 영상 데이터에 기초하여 제 1 회전각을 계산한다(S710). 또한, 로봇이 평면상에서 회전하는 경우, 제 2 회전각 계산부(152)는 각속도 계산부(151)로부터 출력된 각속도 값에 기초하여 제 2 회전각을 계산한다(S720). 이때, 제 2 회전각 계산부(152)는 모터 정지 신호가 입력될 때의 계산된 회전각을 로봇의 제 2 회전각으로 계산할 수 있다. 그 다음, 스케일 인자 계산부(153)는 제 1 회전각 및 제 2 회전각의 관계에 기초하여 스케일 인자를 계산한다(S730). 예를 들면, 스케일 인자 계산부(153)는 제 1 회전각 및 제 2 회전각의 비율(이하, K라함)을 계산한다. 그 다음, 스케일 인자 계산부(153)는 기존에 결정된 스케일 인자에 비율(K)을 곱함으로써, 새로운 스케일 인자를 계산할 수 있다. 여기서, 기존에 결정된 스케일 인자는 제품 생산시 디폴트값으로 설정되었거나 추후 업데이트된 스케일 인자일 수 있다. 계산된 새로운 스케일 인자는 메모리(154)에 저장될 수 있다. 각속도 계산부(151)는 계산된 스케일 인자에 기초하여 로봇의 각속도를 계산한다. 여기서, 캘리브레이션이란 스케일 인자를 구하는 과정을 의미한다.
캘리브레이션 장치(100)는, 로봇이 평면상에서 회전하는 경우에만 캘리브레이션을 수행함으로써, 정확하게 로봇의 각속도 또는 회전각 등을 계산할 수 있다.
도 8은 본 발명의 제 1 실시예에 따른 도 7의 판단 단계(S700)를 설명하기 위한 흐름도이다.
도 8을 참조하면, 모터 제어부(131)에서 모터 구동 신호가 생성되면(S800), 판단부(132)는 카메라(110)를 통해 고정 환경에 대한 제 1 고정 영상 데이터를 획득하여 복수의 기준점을 추출한다(S805). 판단부(132)는 복수의 기준점들 간의 제 1 거리를 계산한다(S810). 모터 제어부(131)에서 모터 정지 신호가 생성되면(S815), 판단부(132)는 카메라(110)를 통해 고정 환경에 대한 제 2 고정 영상 데이터를 획득하여 기준점을 트래킹(tracking)하여 추출한다(S820). 판단부(132)는 복수의 기준점들 간의 제 2 거리를 계산한다(S825). 판단부(132)는 제 1 거리 및 제 2 거리를 비교하여 오차 값을 계산한다(S830). 판단부(132)는 오차 값이 오차 기준 값보다 작은지 여부를 판단한다(S835). 판단 결과, 오차 값이 오차 기준 값보다 작은 경우, 캘리브레이션 장치(100)는 자이로 센서(140)를 캘리브레이션한다(S840). 캘리브레이션하는 단계는 도 7의 S710, S720 및 S730단계를 포함한다.
이와 같이, 카메라(110)로부터 출력되는 고정 영상 데이터에 기초하여 로봇이 평면상에서 회전하는지 여부를 판단할 수 있다.
도 9는 본 발명의 제 2 실시예에 따른 도 7의 판단 단계(S700)를 설명하기 위한 흐름도이다.
도 9를 참조하면, 모터 제어부(131)에서 모터 구동 신호가 생성되면(S900), 각속도 계산부(151)는 자이로 센서(140)로부터 입력되는 자이로 전압 및 스케일 인자에 기초하여 각속도를 계산하여 판단부(132)로 출력한다(S910). 판단부(132)는 출력된 각속도가 기준 각속도 임계값 이하인지 여부를 판단한다(S920). 판단 결과, 출력된 각속도 값이 기준 각속도 임계값 이상인 경우, 판단부(132)는 로봇이 평면상에서 회전하지 않는 것으로 판단한다. 그러면, 캘리브레이션 장치(100)는 자이로 센서를 캘리브레이션하지 않는다. 반면에, 출력된 각속도 값이 기준 각속도 임계값 이하인 경우, 판단부(132)는 캘리브레이션 장치(100)는 자이로 센서(140)를 캘리브레이션한다(S930). 캘리브레이션하는 단계는 도 7의 S710, S720 및 S730단계를 포함한다.
이와 같이, 각속도 계산부(151)로부터 출력되는 각속도 값에 기초하여 로봇이 평면상에서 회전하는지 여부를 판단할 수 있다.
캘리브레이션 장치는 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
또한, 실시예는 그 설명을 위한 것이며, 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술분야의 통상의 전문가라면 본 발명의 기술사상의 범위에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.
또한, 본 발명의 일실시예에 의하면, 전술한 방법은, 프로그램이 기록된 매체에 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 매체의 예로는, ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.

Claims (6)

  1. 로봇의 캘리브레이션 장치에 있어서,
    상기 로봇이 평면상에서 회전하는지 여부를 판단하는 판단부; 및
    판단 결과에 따라 캘리브레이션을 실행하는 캘리브레이션부를 포함하는 캘리브레이션 장치.
  2. 제 1 항에 있어서,
    상기 판단부는,
    로봇의 회전 시작 전에 획득된 제 1 고정 영상 데이터에 포함된 복수의 기준점들 간의 제 1 거리와, 로봇의 회전 종료 후에 획득된 제 2 고정 영상 데이터에서 상기 복수의 기준점들을 트래킹하여 추출된 기준점들 간의 제 2 거리에 기초하여 오차 값을 계산하고, 상기 오차 값에 기초하여 로봇이 평면상에서 회전하는지 여부를 판단하는 캘리브레이션 장치.
  3. 제 2 항에 있어서,
    상기 판단부는,
    상기 오차 값이 기준 오차 값보다 작은 경우를 로봇이 평면상에서 회전하는 것으로 판단하는 캘리브레이션 장치.
  4. 제 1 항에 있어서,
    로봇의 각속도를 계산하는 각속도 계산부를 더 포함하고,
    상기 판단부는,
    상기 계산된 각속도 값에 기초하여 로봇이 평면상에서 회전하는지 여부를 판단하는 캘리브레이션 장치.
  5. 제 4 항에 있어서,
    상기 판단부는,
    상기 계산된 각속도 값이 기준 각속도 값보다 작은 경우를 로봇이 평면상에서 회전하는 것으로 판단하는 캘리브레이션 장치.
  6. 제 1 항에 있어서,
    상기 켈리브레이션부는,
    로봇의 회전 시작 전에 획득된 제 1 고정 영상 데이터와 로봇의 회전 종료 후에 획득된 제 2 고정 영상 데이터에 기초하여 로봇의 제 1 회전각을 계산하고, 로봇의 각속도를 계산하는 각속도 계산부에서 계산된 각속도를 시간에 대해 적분하여 로봇의 제 2 회전 각을 계산하고, 상기 제 1 회전각과 상기 제 2 회전각의 관계에 기초하여 스케일 인자를 계산하는 캘리브레이션 장치.
KR1020100001989A 2010-01-08 2010-01-08 캘리브레이션 장치 KR101685151B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100001989A KR101685151B1 (ko) 2010-01-08 2010-01-08 캘리브레이션 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100001989A KR101685151B1 (ko) 2010-01-08 2010-01-08 캘리브레이션 장치

Publications (2)

Publication Number Publication Date
KR20110081701A true KR20110081701A (ko) 2011-07-14
KR101685151B1 KR101685151B1 (ko) 2016-12-12

Family

ID=44920155

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100001989A KR101685151B1 (ko) 2010-01-08 2010-01-08 캘리브레이션 장치

Country Status (1)

Country Link
KR (1) KR101685151B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012105107A1 (de) 2011-08-17 2013-02-21 Lg Display Co., Ltd. Anzeigevorrichtung mit organischen Licht emittierenden Dioden
WO2019004538A1 (ko) * 2017-06-30 2019-01-03 현대엠엔소프트 주식회사 관성센서 캘리브레이션 방법
KR20190028156A (ko) * 2017-09-08 2019-03-18 주식회사 한화 자이로 센서의 바이어스 오차 보정 장치 및 그 방법
JP6951539B1 (ja) * 2020-12-07 2021-10-20 株式会社ユアテック 自走式装置、測定方法、及び、プログラム
JP2022090252A (ja) * 2020-12-07 2022-06-17 株式会社ユアテック 自走式装置、測定方法、及び、プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210060779A (ko) 2019-11-19 2021-05-27 현대자동차주식회사 차량센서의 이상 진단 장치 및 그 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100772915B1 (ko) * 2006-07-05 2007-11-05 삼성전자주식회사 이동 로봇에 장착된 자이로의 바이어스를 보정하는 장치 및방법
KR100886340B1 (ko) * 2007-04-04 2009-03-03 삼성전자주식회사 이동 로봇의 자이로 센서를 캘리브레이션하는 장치 및 방법
KR20090047145A (ko) * 2007-11-07 2009-05-12 전자부품연구원 로봇의 비시인성 장애물 탐지방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100772915B1 (ko) * 2006-07-05 2007-11-05 삼성전자주식회사 이동 로봇에 장착된 자이로의 바이어스를 보정하는 장치 및방법
KR100886340B1 (ko) * 2007-04-04 2009-03-03 삼성전자주식회사 이동 로봇의 자이로 센서를 캘리브레이션하는 장치 및 방법
KR20090047145A (ko) * 2007-11-07 2009-05-12 전자부품연구원 로봇의 비시인성 장애물 탐지방법

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012105107A1 (de) 2011-08-17 2013-02-21 Lg Display Co., Ltd. Anzeigevorrichtung mit organischen Licht emittierenden Dioden
DE102012105107A9 (de) 2011-08-17 2013-04-25 Lg Display Co., Ltd. Anzeigevorrichtung mit organischen Licht emittierenden Dioden
WO2019004538A1 (ko) * 2017-06-30 2019-01-03 현대엠엔소프트 주식회사 관성센서 캘리브레이션 방법
KR20190028156A (ko) * 2017-09-08 2019-03-18 주식회사 한화 자이로 센서의 바이어스 오차 보정 장치 및 그 방법
JP6951539B1 (ja) * 2020-12-07 2021-10-20 株式会社ユアテック 自走式装置、測定方法、及び、プログラム
JP2022090252A (ja) * 2020-12-07 2022-06-17 株式会社ユアテック 自走式装置、測定方法、及び、プログラム
JP2022090251A (ja) * 2020-12-07 2022-06-17 株式会社ユアテック 自走式装置、測定方法、及び、プログラム

Also Published As

Publication number Publication date
KR101685151B1 (ko) 2016-12-12

Similar Documents

Publication Publication Date Title
KR100886340B1 (ko) 이동 로봇의 자이로 센서를 캘리브레이션하는 장치 및 방법
EP4290878A2 (en) Techniques for co-optimization of motion and sensory control
JP6534664B2 (ja) カメラ動き予測及び修正のための方法
KR100772915B1 (ko) 이동 로봇에 장착된 자이로의 바이어스를 보정하는 장치 및방법
CN108519615B (zh) 基于组合导航和特征点匹配的移动机器人自主导航方法
US11125581B2 (en) Method and system for calibrating components of an inertial measurement unit (IMU) using scene-captured data
US9386209B2 (en) Method and apparatus for estimating position
JP5854655B2 (ja) 無人機、特に自動操縦下でホバリング飛行を行うことができる無人機の水平速度を評価する方法
US20120106828A1 (en) Mobile robot and simultaneous localization and map building method thereof
KR101685151B1 (ko) 캘리브레이션 장치
JP2022510418A (ja) 時間同期処理方法、電子機器及び記憶媒体
JP2004212382A (ja) ロボット掃除機の回転位置誤差補正方法
US20180075609A1 (en) Method of Estimating Relative Motion Using a Visual-Inertial Sensor
Irmisch et al. Simulation framework for a visual-inertial navigation system
Petersen et al. Video-based realtime IMU-camera calibration for robot navigation
CN110823225A (zh) 室内动态情景下的定位方法和装置
JP2020160594A (ja) 自己位置推定方法
WO2023162017A1 (ja) 位置姿勢推定装置、位置姿勢推定システム、およびセンサ設置方法
CN110566716B (zh) 基于卡尔曼滤波器的轨道阀阀位测量系统及方法
CN116185046B (zh) 一种移动机器人的定位方法、移动机器人及介质
WO2023220972A1 (zh) 移动设备及其位姿估计方法、装置、存储介质
Henrik Fusion of IMU and Monocular-SLAM in a Loosely Coupled EKF
Unterholzner et al. Vision-based online-calibration of inertial gaze stabilization
KR101746792B1 (ko) 회전 모듈과 거리 센서간의 위치 변환 관계 추정 방법 및 장치
JP2023069019A (ja) 情報処理装置、情報処理システム、情報処理方法、およびプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant