Previous Contents/Robotics 10

휴머노이드 보행 로봇의 적용을 위한 해 공간의 특성 분석 자료

로봇 게이트 생성 기법을 4족 보행 -> 휴머노이드로 이전하면서, 해공간의 특성 분석이 필요해서 몇가지 샘플트리에 대해 적합도 공간 변화가 어떤지 체크해본 그래프이다. 4족 보행 로봇의 경우 네 발로 지탱하는 특성 때문에, 안정성에 대한 지표가 크게 변하지 않지만, 휴머노이드는 넘어짐이라는 특성이 발생하기 때문에 아주 작은 변화에도 결과에 매우 큰 영향을 주는 현상이 나타날 수 있다고 생각했고, 그것을 증명하기 위한 그래프 자료이다. 아래와 같은 각각의 트리에서 ERC 값, 즉 실수값을 P1, P2, ... ,P8 의 변수로 표현하여, 각각 0.001 씩 증가시키면서 해공간의 변화를 나타낸 것이다. x 축은 0.001씩 몇번이나 증가 시켰는지를 의미하며, y 축은 적합도값을 의미한다. HP: (/ (/ ..

대표적인 로보틱스 프레임워크들

로보틱스 시장을 선점하기 위한 각계의 노력이 이어지고 있는 가운데, 두각을 나타내는 프레임워크들이 속속 나타나고 있다. 대표적 로봇 프레임워크 MSRDS, OROCOS, RTC, OPRoS MSRDS 는 아직 전폭적인 지원을 받으며 개발되고 있는 상태는 아닌것으로 보임 가장 큰 특징은 .NET Framework, Service Oriented Architecture, 즉 DSS, CCR 로 구분되는 Run-time 환경 ERSP - Evolution Robotics 사에 의해 모바일 로봇을 개발하기 위한 소프트웨어 플랫폼(상용임) http://www.evolution.com/products/ersp/ OROCOS - 유럽 프로젝트, Component based Robot Software http://ww..

MSRDS(Microsoft Robotics Developer Studio) 2008 사용 소감

MSRS(Microsoft Robotics Studio) 가 정식버전이 나오면서 MSRDS(Microsoft Robotics Developer Studio) 로 이름이 바뀌어 발매가 되었더군요. MSRS 이던 시절부터 이 툴 에 대한 기대는 매우 컸고, 소개나 이런 것들을 봤을때 정말 로봇 연구 분야에 있어서 최적의 툴이 아닌가 생각을 했었습니다. CCR(Concurrency and Coordination Runtime) 과 DSS(Decentralized Software Services) 를 통해 비동기적 처리 방식에 실시간 반응이 가능하도록 하였고, VPL(Visual Programming Language) 이라는 Labview 와 같은 GUI 형태의 언어를 통해 누구나 쉽게 로봇을 제어할 수 있다는..

보행로봇의 걸음 제어의 여러가지 방식

이 글에서는 여러가지 제어방식에 대해 이제까지 제가 찾아보고 알아낸 정보들을 개략적으로 정리해보고자 합니다. 보행 로봇의 걸음제어에 대해 막 입문하시는 분들께 약간의 도움이라도 되었으면 좋겠습니다. 제가 처음에 보행로봇의 걸음제어에 관심을 가지게 된 것은 Aibo 를 이용한 Robocup 대회 관련된 논문들을 살펴보면서 였습니다. 외국의 많은 팀들은 각자 독특한 여러가지 방식으로 로봇의 걸음새(영어로 Gait 라는 표현을 쓰더군요)를 만들었습니다. 처음에 가장 기초적인 프리미티브(Primitive, 적절한 한글 표현이 없는듯 싶네요;;)방식, 그리고 역기구학 해석을 통한 발자취의 제어 형태, 수학적 알고리즘을 통한 발자취 제어의 최적화 방식, 가장 최근에는 진화연산을 이용한 발자취 파라미터의 최적값을 찾..

보행로봇의 CPG(Central Pattern Generator) 이론에 대해서...

요새 관심을 갖고 보고있는 것이 바로 이 CPG 입니다. Central Pattern Generator 이하 줄여서 CPG 라고 부릅니다. 중추신경발생기? 라고 해야 맞는말인지는 잘 모르겠습니다. ? 어찌되었든, CPG 는 일반적인 생물체의 보행에 관련된 신경을 나타냅니다. 인간의 걸음걸이나 개의 걸음걸이와 같은 2족, 혹은 4족, 또는 그 이상의 곤충들, 기타 모든 생물체의 반복적 움직임에 관여하고 있다고 알려져 있습니다. ( 이 부분은 정확한 것은 아닙니다. ) ? 한마디로 표현하면 CPG 라는 것은 규칙적인 순환구조의 패턴을 생성해내는 신호 발생기라고 생각하면 간단합니다. 물론 어디까지나 간단하게 생각하는 차원에서 입니다. ? 위키에 나와 있는 다음의 원문을 번역해본 것 입니다. ( http://e..

Webots 에서 VS 6.0 을 이용한 Controller 프로그래밍 셋팅 방법

Webots 을 이용해 보신 분들이라면 아시겠지만 Webots 내부에서 제공되는 에디터를 이용해 프로그램을 작성하는게 여간 불편한게 아닙니다. 메뉴얼에 이미 있는 내용이지만, 한번 다시 정리해 보겠습니다. 순서대로만 따라서 하면 아주 쉽게 이용하실 수 있습니다. 1. 새로운 Project 생성 위의 그림에서 보이듯이 New 를 눌러서 새로운 Project 를 생성해 줍니다. 2. Project 생성(세부) Win32 Console Application 을 선택해 주신 후, Project name 에 이용하실 Controller의 이름을 넣어줍니다. 3. Project Settings 그리고 Project 가 생성된 후 Project -> Settings 메뉴를 통해 설정을 해 줍니다. 저 메뉴를 누르게되..

Webots 에서 로봇의 좌표값을 얻어내는 두 방법에 대한 이야기

크게 두가지 방법이 있습니다. Physics Controller 를 이용한 접근 혹은 Supervisor Controller 를 이용한 접근 이렇게 두가지 방법이 있는데 제가 테스트 해본 바로는 신뢰성이 Physics Controller 가 더 높아보입니다. Aibo ERS-7 의 Trajectory 를 구성하고 로봇이 실제 움직이는 모양이 Trajectory 와 어느정도 비슷한지를 평가하기 위해 Supervisor Controller 의 supervisor_field_get 함수를 이용해서 값을 추출해 봤는데 좌표값이 제대로 매칭이 안되는 것으로 판단됩니다. 로봇의 루트 노드를 타겟으로 잡고 값을 추출 할 때는 매칭이 되지만 하나의 일부 노드를 타겟으로 잡고 값을 추출 할 때는 제대로 매칭이되지 않는 ..

Webots 시뮬레이터의 좌표계...

Webots 시뮬레이터를 혹시라도 이용하시는 분이 있으시다면 참고해 볼만한 내용 입니다. 제작자인 Olivier 씨에게 문의를 해 보았는데 x,y,z 좌표계의 1 이라는 수치가 의미하는 길이가 실세계의 1 미터 라고 하는 군요 그리고 Webots 에서 구현되어 있는 모든 로봇들의 좌표계에 대한 것인데 좌표들은 다 부모 노드에 종속되어 있는 상대적 좌표계 라고 하네요 즉 가장 외부로 나와 있는 것은 dWorld 객체에 종속되어 있는 좌표계를 이용하는 것이고 로봇의 각각의 부분은 그것이 부착되어 있는 부모 노드의 좌표를 원점으로 종속되어 있다고 하는군요. 혹시 웹봇을 이용하시는분이 계신다면 저한테 연락좀 주시겠습니까? 서로 자료에 대해 공유도 하고 토론도 하게요 ^^