목록MSRDS (41)
CHOU
로봇 제어를 위해 필요한 기능을 생각해 보면 기본적으로 모터를 제어하고, 입력 받은 센서를 적절히 처리해야 하며, 통합적인 관리 정도라고 생각합니다. 물론 세부적으로 들어가 보면 더욱 많은 기능들이 필요하겠지만, 저는 한동안 Pioneer3DX를 제어해 보기 위한 기본적인 서비스만 생각해 보려 합니다. MSRDS 네이버 카페에 김영준 수석님께서 올려주신 범퍼센서 만들기 예제를 수행해 보면서 로봇 서비스 개발을 이해해 보고, 나아가 통합적으로 구현하는 Brick 개념에 대해 공부해 보겠습니다. 우선 Bumper Service 구현에 앞서, 타이머를 구현 하겠습니다. 타이머는 로봇 서비스와는 관계가 없지만, 범퍼 서비스에서 범퍼 데이터를 가상으로 생성할 때 이용하기 위해 구현해야 합니다^^; 1. 우선 Vi..
연구실에 작년에 스테레오 프로젝트를 진행해서 Pioneer 3DX가 있길래 교수님께 말씀을 드려 MSRDS에서 만든 서비스를 돌려보기로 했습니다^^. 연구실 선배는 스테레오 카메라를 이용해서 거리 및 특징점을 파악했는데, 우선 MSRDS에서 제공하는 기본 센서등을 돌려보고 다양한 방법으로 이용해 봐야겠습니다. 아래 그림은 MSRDS로 시뮬레이션을 했을때 나타나는 Pioneer 3DX 화면 입니다. 김영준 수석님께서 올려주신 Maze Explorer 을 컴파일하면 결과를 얻어낼 수 있습니다. 실제로 단순히 컴파일만 하면 그냥 수행이 될 줄 알았는데, 압축만 풀어서 컴파일을 해보면 무지 많은 오류를 보게 될 겁니다. 컴파일이 올바르게 수행되게 하려면, 우선 첫번째로 레퍼런스 창에 참조 오류를 해결해줘야 합니..
MSRDS로 서비스를 개발하면서 시리얼 통신을 이용하게 되는데 이때, 개발하려는 요구조건에 맞게 미리 시리얼 통신을 만들어 놓으면 훨씬 편리합니다. 이번에도 네이버 MSRDS 카페에 김영준 수석 님께서 올려 놓은 예제를 수행하면서 이해해 보겠습니다. 1. Visual Studio 를 실행하여 C# Application 을 실행하고, using 을 이용하여 using System.IO.Ports 를 추가해 줍니다. 그림1. 코드 추가 화면 2. 다음은 윈폼에다가 시리얼 통신을 하기위한 Port Open, Port Close 버튼과 시리얼 통신이 수행되기 위한 예제 버튼, 리스트 박스 버튼을 생성합니다. 그림2. 윈폼 생성화면 3. 각각의 버튼에 대한 이벤트와 함수코드를 아래와 같이 작성합니다. using ..
RoboSoft 는 Mobile Robotics, Image Processing, 3D Image Synthesis 등을 개발하는 회사입니다. 최근에는 MSRDS에서 시뮬레이션 가능한 Mobile Robot을 많이 선보였는데 오늘은 RoboSoft 에서 제공하는 로봇을 사용하는 방법을 알아보겠습니다. 우선 RoboSoft 의 홈페이지를 접속합니다. http://www.robosoft.fr/eng/ 접속하게 되면 위의 화면과 같이 보이는데 MSRDS에서 동작하는 시뮬레이션을 실행하려면 오른쪽에 RobuBox를 클릭해 주면 됩니다. 클릭을 해서 RobuBox 로 들어가보면 아래와 같은 화면이 보이는데, 여기서 자신의 구미에 맞는 시뮬레이션을 받아서 실행해 보면 됩니다. 대부분 튜토리얼이 제공이 되기 때문에 ..
CCR 에서 WinForm들 간의 이벤트를 제어하는 방법을 알아보겠습니다. 우선 아래 그림과 같이 WinForm을 생성 한 후, 각각의 WinForm에서 발생하는 이벤트들을 중간의 CCR Program을 통해서 상호 중계해주는 예제를 알아보겠습니다. 그림1. 예제 다이어그램(출처: 네이버 MSRDS 카페) 메인 폼에서는 각각의 WinForm으로 부터 메세지를 받는 포트들을 정의해 놓고, 이러한 포트들에 메시지가 등록될 경우 실행되는 핸들러를 정의 합니다. 이 핸들러에서는 다시 각각 WinForm 들의 메소드를 호출하는 명령어를 기술해 놓아서 수신받은 다른 폼에 전달되도록 합니다. 즉, 별도의 WinForm으로 부터 데이터를 받을 때에는 포트를 통해서 받고, 이 포트에 연결된 핸들러안에서 FormInvok..