본문 바로가기

Robotics/Software Tech.

(148)
Open-source 2D Mobile Robot Simulation LUA 스크립트를 사용해서 모바일 로봇의 2D 시뮬레이션을 할 수 있도록 만들어진 프로그램이다. 물론 소스는 Open이다. 프로그램과 소스는 http://www.codeproject.com/KB/applications/2drobotsimulator.aspx 에서 받을 수 있다. 매뉴얼도 있으니 참조하면 된다. 이 프로그램의 특징은 아래와 같다. • Differential steering robot • Multiple-robot simulation • Sonar and laser beam type distance sensor • Embedded Lua script for the robot code • Graphical world editor • Code editor with syntax colorizati..
Dataset에 숨겨진 수학적 관계와 함수 방정식을 찾아주는 프로그램 코넬(Cornell)대에 Cornell Computational Synthesis Laboratory에서 개발한 Eureqa(유레카라고 발음)라는 프로그램이다. 이 프로그램은 우리가 실험이나 어떤 시뮬레이션을 통해 discrete하게 얻은 데이터들간의 수학적 관계를 나타낼 수 있는 근사함수(approximation)를 구해주는 프로그램이다. 사실 이 기능은 우리가 자주 사용하는 엑셀에도 있는 기능이고, 공학에서 종종 사용하는 MATLAB에도 이런 기능이 있다. 이 프로그램은 approximation 오차가 적은 함수를 찾고, 그 History를 보여준다. 프로그램 다운로드는 http://ccsl.mae.cornell.edu/eureqa에서 할 수 있고, 소개 및 튜토리얼 동영상부터, PDF로 된 가이드자..
3D Simulation 하루종일(?) 집에서 영어만 공부하려니 지겹지도 하고.. 실증도 나고.. 그래서, 나름대로 이 분야에 대해 감을 잃지 않으려고 논문도 읽고, 프로그램도 짜봐야겠다고 마음을 먹었다. 한국에서 가져온 노트북으로 프로그램을 짜기가 뭣하긴 하지만.. 어쩔수 없잖아? 여기서 사자니 돈 아깝기도 하고.. 나중에 한국에 가져가기도 힘들고... 오늘 처음 OpenSceneGraph 라이브러리를 컴퓨터에 설치했다. OpenGL을 바로 사용해도 관계는 없지만, 좀더 상위의 3D 그래픽 툴킷을 사용하는게 더 나을것 같아서, 몇가지 중에 Open Source이면서 성능도 괜찮고, 내가 하고자 하는 시뮬레이션에 적당할 것 같아서 이것을 선택했다. * 라이브러리 설치를 위한 패키지 다운로드와 기타 문서는 http://www.op..
ADIS16365 Inertial sensor 테스트 프로그램 ADIS16365 관성센서와 ADISUSBZ 보드를 사용하여, 테스트 프로그램을 만들어 봤습니다. 1차적으로 자이로, 가속도,온도,전원 데이터만 보여주는 프로그램입니다. 자이로와 가속도데이터는 그래프로, 온도와 전원상태는 숫자로 표시하였습니다. 아직 캘리브레이션이나 Flash롬 라이팅등의 기능은 없습니다. 프로그램 실행파일을 올려봅니다. 이것을 실행하려면 아날로그 디바이스에서 제공하는 드라이버를 설치해야 합니다. 소스는 정리되면 공개하겠습니다.
error: ‘>>’ should be ‘> >’ within a nested template argument list 이건 뭥미.. 윈도우에서는 잘 되던 컴파일이.. 겨우 띄어쓰기 하나때문에 걸린단 말인가.... STL에서 템플릿을 쓸때, '>>' 대신에 '> >'로 써야한단다.. 예를 들면, std::vector trajectory; 를 std::vector trajectory; 로 써야한다는 것... 아놔.. 별게 다...ㅡ,.ㅡ
G++ 에서 STL의 transform을 사용할때 발생하는 문제점의 해결방법 윈도우에서 어플리케이션을 짜놓고 리눅스로 바꾸는 과정중에 STL의 transform 함수에서 문제가 발생했다. transform(strJointtype.begin(), strJointtype.end(), strJointtype.begin(), (int(*)(int))tolower); 이 코드를 컴파일 하니.. error: no matching function for call to ‘transform(__gnu_cxx::__normal_iterator, __gnu_cxx::__normal_iterator, __gnu_cxx::__normal_iterator, ) 위와같이 에러가 뜬다. 이것을 해결하기 위해 구글링을 해보니, 답이 바로 나온다. 답은 아래 웹페이지에 나온다. http://osdir.com/m..
렌더링 엔진 OGRE을 접하다. * 물리엔진이라고 작성되었것을 렌더링 엔진으로 수정합니다. - 2010.1.20- ODE(Open Dynamics Engine)는 많이 들어봤는데, 사실 OGRE라는 것은 오늘 처음 알았다. 이미 게임 개발자들은 한번이상은 들어본 렌더링엔진이겠지만 말이다. 인터넷을 검색하여 알게된 정보들중에 물리엔진이 그렇게 많은줄은 몰랐다. 그것도, 상용도 많지만 공개용도 많다는것.. OGRE(Object-Oriented Graphics Rendering Engine)은 LGPL라이센스 적용을 받고 있고 오픈소스이며(오픈소스라고 무조건 무료라는 의미는 아님) OpenGL과 DiretX를 지원한다. (ODE와 OGRE는 서로 다른 기능의 엔진입니다.^^;) 요즘 회사에서 일을 하는데 물리엔진? 렌더링엔진?을 이용해야 할..
로봇 소프트웨어 컴포넌트 공개 최근에 수행하였고, 수행중인 과제인 OPROS입니다. 자세한 내용과 관련 소스코드 및 엔진은 http://opros.or.kr/ 에서 다운로드 받으실 수 있습니다. 현재 Windows와 Linux버젼의 컴포넌트 배포를 위해 준비하고 있습니다.. 확실한 로봇 플랫폼별 검증이 필요하지만, 로봇 소프트웨어 컴포넌트에 대해서 공부하고자 하는데는 좋은 자료가 되지 않을까 합니다. 또, 개발하고자 하는 로봇 플랫폼에서 돌아가는 소프트웨어를 쉽게 구현할 수 있습니다. 다만, OPROS엔진을 통해 소프트웨어가 돌아가고, 컴포넌트 저작도구를 이용하여 MSRDS의 VPL과 같은 사용자 인터페이스로 쉽게 로봇을 구동할 수 있습니다. OPROS로 로봇을 구동하는 데모를 한 적이 있다고, 본 블로그에서 말한 적이 있습니다. 본..