CHOU

[MSRDS] VPL을 이용하여 Simulation 환경 실행하기 본문

Tech/Microsoft Products

[MSRDS] VPL을 이용하여 Simulation 환경 실행하기

chobabo 2009. 3. 13. 22:14

VPL을 이용해서 시뮬레이션 환경을 구축하는 것을 한번 해보겠습니다.

아래의 파일들은 http://cafe.naver.com/msrskorea 에서 제공하는 예제 파일입니다. 우선 예제 파일을 이용해서 시뮬레이션은 어떻게 하는 것인가에 대한 개념을 이해하고, 그 다음에 좀 구체적인 예를 하나 만들어서 시뮬레이션을 해볼까 합니다.

1. MSRS Auto Launcher를 다운 받아서 설치 합니다.



2. 설치를 하셨다면 vpl_roboticsbasic_01_startsimulation.mrds 파일을 다운 받으시고 클릭 한후 열기(Open)을 실행하면 다음과 같은 화면이 나타나면 정상 설치가 된 것 입니다.




그림1. 설치 화면

3. 위에 2가지 파일이 정상 설치 되면 자동으로 VPL이 실행되게 되는데 아래의 다이어그램 화면이 나오면 정상 설치 된 것 입니다.
 
그림2. VPL 다이어 그램 화면

여기까지 해서 실행을 해보면 기본 시뮬레이션 세팅만 되어 있고 배경 이외에는 아무것도 없다는 것을 볼 수 있습니다.

4. 시뮬레이션 공간 상에 아무것도 없기 때문에 로봇을 한대 추가해 보겠습니다. 추가되는 로봇은 Pioneer 3DX 로봇인데 모바일로봇사에서 제작한 실제 로봇을 시뮬레이션 모델링 한 것 입니다. 로봇을 추가하기 위해서는 아래의 파일을 받아서 위에 2번의 방법으로 vpl_roboticsbasic_02_addrobot.mrds 파일을 설치 합니다. 설치후 아래의 다이어그램이 보이면 정상 설치된 것 입니다.




그림3. 다이어 그램 화면

5. 그리고 이전에도 언급한 적이 있는 컨트롤 대시보드를 추가하고 처음 구축했던 아무것도 없는 가상환경에 몇 개의 엔티티를 추가하기 위해 위와 같은 방법(클릭한 후 열기)으로 아래의 두개의 파일을 실행합니다.  
vpl_roboticsbasic_03_simplerobotcontrol.mrds은  대시보드를 이용하여 센서 값을 받아오거나 마우스로 쉽게 로봇을 컨트롤 하기 위함이고 vpl_roboticsbasic_03_02_basicobstacles.mrds은 가상환경에 몇개의 엔티티를 추가해 주게 됩니다.




올바르게 설치가 되었다면 아래와 같은 다이어그램이 보이게 됩니다.
 

그림4. 다이어그램 화면

 이제 기본 구성이 끝나고 로봇을 가상환경에서 대시보드를 이용하여 컨트롤 할 수 있게 됩니다. 이때 대시보드 사용 방법은 이전에 언급했던 대시보드 사용법과 동일합니다.


6. 대시보드를 이용하여 로봇을 컨트롤 하지 않고 로봇이 VPL 코딩에 의해 움직이게 할 수도 있는데 아래의 파일을 설치하여 한번 알아 봅니다. 파일을 설치하면 로봇은 double 형의 데이터 값으로 인해 직진을 하게 되는데 왼쪽, 오른쪽 바퀴의 값이라고 쉽게 알수 있습니다.



그림5. 다이어그램 화면

위에서 부터 다이어그램을 간단하게 생각해 보면 엔티티 엔진에 모델링한 가상환경 데이터 값을 넣어주고, 가상환경에 서비스 되는 로봇을 정의해서 그 위치값을 입력 받아서 동작 가능하게 드라이브 시뮬레이터를 붙이는 거 같습니다. Connect를 하지 않아도 알아서 관계를 파악하는게 좀 특이한 것 같습니다^^.

7. Pioneer 3DX 에는 앞, 뒤 범퍼센서와 레이저 센서를 가지고 있는데 범퍼센서는 터치가 되었나 안되었나를 알 수 있는 센서기 때문에 앞은 0의 값을 뒤는 1의 값을 가집니다. 레이저 센서는 동시에 180도 각도, 전방 8M 측정 가능한 무시무시한 기능을 가진 센서입니다^^.(실제로는 비싸서 사용해 보지 못했는데 시뮬레이션이라도 해보려 합니다.) 레이저 센서는 180도의 각도를 0.5도로 나누어서 리턴하기 때문에 실제로는 360개의 배열 값을 넘겨주게 됩니다.

아래의 파일들을 실행시키면 범퍼 센서와 레이저 센서에 대한 이해를 할 수 있습니다. (이해하는데 어렵지 않습니다.) 





 위의 예제를 통해 비교적 간단히 VPL을 이용해서 시뮬레이션하는 방법을 알아봤는데 다음에는 Pioneer 3DX 을 이용하여 복잡한 미로를 통과 하는것을 해 보겠습니다.