• 검색 결과가 없습니다.

실제 이동로봇에 적용된 센서 모델

문서에서 저작자표시 (페이지 41-50)

그림 3.12. 초음파 위성과의 거리데이터에 대한 센서 모델

Fig 3.12. Sensor model for distance data from a ultrasonic satellite

   

  

 

 × 

  ×

 

(3.14)

여기서 은 초음파 위성의 거리데이터에 관한 표준편차로 실제 이동로봇

에 200mm로 설정한 후 센서 모델링을 수행한다. 그림 3.13은 수식 3.14를 가지고 각 거리에 대한 센서모델을 적용하였을 경우 그래프로 표현한 것이다.

그림 3.13. 실제 이동로봇에 적용된 센서모델 Fig 3.13. Sensor model for mobile robot

제6절 리샘플링 모델링

리샘플링 모델은 센서신호에 근거해 이동로봇의 위치를 추정하는 과정으로 센

서 모델에 의해 추정된 파티클들의 신뢰도에 의해 파티클을 선별한다. 이때 파티 클 선택 방법은 그림 3.14와 같이 룰렛 방법을 이용하였다. 룰렛 선택 방법은 파 티클의 신뢰도에 비례하여 선택되어지며, 신뢰도가 높은 파티클들이 선택될 확률 이 높음을 의미한다.

그림 3.14. 파티클 리샘플링 알고리즘 Fig 3.14. Particle resampling algorithm

제4장 실험 및 고찰

본 장에서는 구현된 MCL 알고리즘을 가지고 시뮬레이터와 실제 이동로봇에 적 용한 결과를 보인다.

위치추정 알고리즘을 실제 이동로봇에 적용하기 전에 로봇 시뮬레이터를 통하 여 구현된 위치추정 알고리즘 검증하였고, 시뮬레이터를 통해 검증된 위치추정 알 고리즘을 실제 이동로봇에 적용하였다.

실제 본 연구에서 사용되는 시뮬레이터 및 이동 로봇은 그림 4.1과 같이 차륜 방식의 구동 메커니즘이 사용되어졌고, 엔코더 정보를 이용하여 직진속도와 회전 속도를 구하게 된다. 이와 같이 오드메트리 정보를 통해 구한 속도 정보는 실제 위치추정 본 연구에서 제안된 알고리즘인 MCL 알고리즘의 모션 모델에서 속도정보 로 이용하게 된다.

그림 4.1. 본 연구에 이용된 이동로봇 Fig 4.1. Mobile robot used in the Experiment

제 1절 시뮬레이터를 이용한 이동로봇 위치추정

본 시뮬레이터는 로봇의 오드메트리 정보에 대한 에러를 포함하고 센서에 대한 에러를 추가할 수 있는 프로그램으로 실제 이동로봇에 위치추정 알고리즘을 적용 하기 전에 에러가 포함된 이동로봇의 동작 환경과 유사한 상황을 제공해 주기 때

문에 위치추정 알고리즘을 손쉽게 검증해 볼 수 있다는 장점을 가지고 있다. 시뮬 레이터의 구성을 보면 그림4.2와 같이 로봇 시뮬레이션 프로그램, MCL 알고리즘, 그리고 시뮬레이션 프로그램과 MCL알고리즘 사이에 명령 및 정보를 전송 할 수 있 는 IPC 서버로 구성된다.

그림 4.2. 로봇 시뮬레이터의 구성 Fig 4.2. Components of robot simulator

그림4.3는 위치추정 알고리즘을 검증했던 로봇 시뮬레이션 프로그램으로 실제 이동로봇이 구동하는 환경과 유사한 조건을 만들 수 있도록 구현되어있다. 이와 같은 이동로봇 시뮬레이션 프로그램은 시뮬레이션에서 구동되는 이동로봇의 환경 정보 및 상태 정보를 획득할 수 있다.

그림 4.3. 시뮬레이션 프로그램 Fig 4.3. User Interface of the simulation

그림4.4은 MCL 알고리즘 프로그램으로 로봇 시뮬레이터에서 오도메트리 정보 및 센서 정보를 수신한 후 시뮬레이터 로봇에 MCL알고리즘을 적용한 프로그램이 다. 프로그램의 구성을 보면 ①은 시뮬레이션과 MCL알고리즘 프로그램 연동할 수 있는 접속 창, ②는 시뮬레이터 상에서 구동되는 로봇의 구동 명령 및 위치정보를 획득할 수 있는 상태 정보 창, ③은 시뮬레이션에서 구동되는 데드레크닝 정보, MCL 알고리즘을 적용한 이동로봇의 위치를 표현할 수 있는 표시 창, ④는 이동 로 봇에 수신되는 거리데이터 확인창, ⑤는 MCL알고리즘 적용 및 파라미터 업데이트 적용 창, ⑥은 사용자들이 로봇과 센서정보의 설정 상태를 확인해 볼 수 있는 정 보확인 창으로 구성되어져 있다.

그림 4.4. MCL 알고리즘 테스트 프로그램 Fig 4.4. Window to test MCL algorithm

그림 4.5는 IPC서버를 통해 로봇 시뮬레이터에서 들어오는 로봇 상태 정보 가 지고 MCL알고리즘을 적용했을 때 시간이 지남에 따라 파티클 1000개에 대한 상태 변화를 보이고 있다. 여기서 SR은 시뮬레이션에서의 로봇을 의미하고, PT는 파티 클 1000개에 대해 평균을 취한 것으로, ①의 경우 초기 파티클들이 여러 구역으로 포되어짐을 보이고, ②~⑥까지 시간이 경과함에 따라 파티클들이 시뮬레이션 로봇 의 위치를 잘 추정하고 있음을 볼 수 있다.

그림 4.5. MCL을 사용한 위치추정 Fig 4.5. Localization using MCL

제2절 실제 환경에서의 이동로봇 위치추정

본 연구에서는 이동로봇에 위치추정 알고리즘인 MCL을 적용하기 위해 초음파 위성을 사용하여 거리데이터를 획득한다. 본 연구에서 사용된 초음파 위성은 KOREA LPS의 USAT으로 그림 4.6와 같이 초음파 위성 4개, 위성들의 동기화 및 데 이터 전송을 위한 방송기, 그리고 수신기와 초음파 위성간의 거리 및 좌표정보를 수신하는 수신기로 구성되어져 있다.

그림 4.6. 초음파 기반 센서 네트워크 Fig 4.6. Sensor network based on ultrasonics

초음파위성의 경우 출력되어지는 데이터는 위성과 수신기 사이의 거리 데이터, 수신기의 좌표 및 송신기와 수신기 사이의 높이, 그리고 데이터 수신 시간으로 구 성된다. 이와 같이 4개의 초음파 위성을 4240mm * 4270mm의 위치에 초음파 송신기 를 설치하여 초음파 기반 센서네트워크 환경을 구축하였고, 그림 4.7의 프로그램 을 통해 초음파 위성을 사용하여 수신된 센서 데이터의 정확성을 확인하였다.

그림 4.7. 센서데이터 분석 프로그램 Fig 4.7 Sensor data analysis program

그림 4.8은 센서데이터 분석 프로그램을 통해 초음파 위성에서 수신된 데이터 를 실제 위치와 비교, 분석한 것이다. 그림 4.8 ①은 측정구역 4에서 213mm의 오 차를 보이고, ②의 경우 측정구역 5에서 최대 202mm의 오차를 확인할 수 있다.

그림 4.8. 센서 네트워크 환경 및 분석 데이터 Fig 4.8. Senor network environment and data analysis

그림 4.9는 본 연구에 사용된 이동로봇 움직임(모션)을 제어하고 위치추정 알 고리즘을 적용하여 이동로봇의 위치를 추정할 수 있는 프로그램으로 ①은 실제 위 치추정 알고리즘이 적용된 로봇을 제어하는 명령 창, ②는 이동로봇의 엔코더 및 데드레크닝 정보를 표시하는 로봇 상태확인 창, ③은 초음파 위성의 수신 데이터 정보를 표시하는 센서 정보 창, ④는 위치추정 알고리즘의 파라미터 및 제어하는 위치추정 알고리즘 제어창, ⑤는 초음파 위성에서 수신되는 좌표 정보, 엔코더 정 보를 이용한 이동로봇의 데드레크닝 정보, MCL 알고리즘을 적용한 이동로봇의 위 치추정을 표현할 수 있는 표시 창으로 구성되어져 있다.

그림 4.9. 이동로봇 제어 및 위치추정 프로그램 Fig 4.9. Mobile Robot control and localization program

본 절에서는 실제 환경에서 이동로봇에 적용된 위치추정 알고리즘의 실험으로 구성되어져 있고, 이동로봇이 움직이지 않는 상태와 속도명령에 따라 이동로봇이 움직이면서 실험하여 상황에 따른 위치추정 결과를 보인다.

문서에서 저작자표시 (페이지 41-50)

관련 문서