목록Tech/Microsoft Products (49)
CHOU
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..
이전에 RunForm 객체를 등록 시키는 방법이 아니라 WinFormsServicePort에서 제공하는 특정한 메소드들을 사용하여, WinForm 안에 등록되어 있는 메소드들을 호출하는 방법을 알아보려 합니다. 오늘도 역시 MSRDS 네이버 카페에 김영준 수석님께서 올려주신 예제를 가지고 알아보겠습니다. 이 번 예제는 별도로 추가한 폼의 색상을 변경하는 메소드와 두 개으 숫자값을 더해서 결과를 표시하는 메소드를 별도로 추가한 폼에 생성해 놓은 후, 기존 폼에서 이 메소드들을 호출하는 과정을 알아보겠습니다. 1. 먼저, 프로젝트 참조에 이전과 같이 Ccr.Adapters.Winforms.dll을 기존 Microsoft.Ccr.Core.dll 파일과 같이 추가 합니다. 그림1. 레퍼런스 추가 화면 그림2. ..
일반적으로 CCR은 UI 없이 백그라운드로 처리되는 프로그램에 주로 사용되는데, 직접 로봇을 컨트롤 한다던가 시뮬레이션 과정을 적절히 제어하기 위해서는 UI를 만들어 사용하는데 이때 WinForm을 다루게 됩니다. 오늘은 몇가지 메소드를 이용해서 WinForm을 적절히 사용하는 방법을 알아보겠습니다. 오늘도 역시 네이버 MSRDS 카페에 김영준 수석님께서 올려주신 예제를 수행해 보면서 이해해 보겠습니다. CCR에서 WInForm을 제어하기 위해서는 기존에 참조했던 것에 더해서 새로운 Ccr.Adapters.Winforms.dll을 추가해 주어야 합니다. 아래 그림과 같이 참조 추가를 선택해서 추가해주고 using을 이용하여 선언해 줍니다. 그림1. .NET 레퍼런스 추가화면 그림2. 소스코드 추가화면 1..
Arbiter는 CCR에서 가장 중요한 기능을 담당하는데 크게 3가지의 기능을 제공합니다. 1) 다른 프로시저(핸들러) 형태로 정의되어 있는 부분을 ITask에 매핑시켜서 해당 프로시저가 수행할 수 있도록 합니다. 2) Coordination 기능으로서 특정한 메세지를 해당 핸들러에 매핑시켜서, 해당 메세지가 수신되면 해당 헨들러에 전달하여 해당 핸들러가 수행되도록 합니다. 3) 동시성을 제어하는 기능으로, 특정한 시점에 동시 실행을 허용하던가, 아니면 배타적으로 오직 하나의 작업만 수행다던가 하는 선택 작업을 수행할 수 있습니다. 오늘은 핸들러 형태로 정의되어 있는 프로시저 부분을 ITask로 변환시켜서 해당 핸들러 안에 구현되어 있는 작업들을 실행시키는 예제를 수행하면서 위에 1번의 기능에 대해 알아..