상세보기

e-nuvo의 보행모션 설계와 제어용 마이컴 C 코드 자동생성 e-nuvo의 보행모션 설계와 제어용 마이컴 C 코드 자동생성 관리자 기자입력 2007-06-04 14:06:57

TV에서 유머러스하게 스모를 하는 로봇 등이 선보이며 다양한 움직임이 가능한 로봇이 화제가 되고 있다.
2족 보행로봇 교재인 「e-nuvo(ZMP社)」는 이공계용 교재로서 기계계통, 전기계통, 정보계통을 기초부터 체계적으로 배울 수 있는 실습 커리큘럼을 제공함은 물론, MATLAB/Simulink와 조합시킴으로써 교육, 연구 대상으로서 폭을 넓힐 수 있다.
본 내용에서는 데모동작과 e-nuvo의 개발/설계에 MATLAB/Simulink를 사용한 예를 살펴보도록 하겠다.

<편집자 주>

데모의 설명

·동작
본 데모는 2족 보행로봇 「e-nuvo」가 전진보행, 후퇴보행, 편족굽힘 폄 등 다양한 포즈를 실연한다.
「e-nuvo」의 포즈를 지정하는 모션 데이터는 외부 PC의 제어용GUI(e-nuvo GUI)에서 각시(刻時) 전송되어 「e-nuvo」의 각 관절에 부착된 DC Gear Driven 모터가 모션 데이터를 설정장치로 하여 설정장치에 따라 제어를 행함으로써 실현된다.

·시스템 구성
본 데모의 시스템은 주로 2족 보행로봇 「e-nuvo」, 호스트 PC(OS : Windows XP), 접속 케이블로 구성된다.

·3e-nuvo에 대하여
e-nuvo는 각 다리 6관절, 합 12 관절을 갖추고 있다. 「1관절」=「1모터」=「1자유도」이므로 12자유도를 가진 2족 보행로봇이라고 표현 가능하다.
각 관절의 회전방향은 발목(롤 방향과 피치 방향의 2자유도), 무릎(피치 방향만 2자유도), 고관절(피치·롤·요 3자유도)이다. 또한 각 모터, 제어용의 기판 등은 <그림 1> 위치에 배치되어 있고, <표 1>은 e-nuvo의 Spec이 나와 있다.

보행모션 설계

e-nuvo로 정보행에 의한 2족 보행을 실현한 예를 개략 소개하면 다음과 같다.
정보행에서는 2족 보행로봇의 중심에서 내린 수직선과 바닥의 교전이 지지 다리접지부(발바닥)가 만드는 지지 다각형의 내측에 충분히 들어오도록 항상 유지하면서 보행이 이루어진다. 이 조건을 만족하는 보행 패턴을 <그림 2>의 Flow에서 계산한다.
보행 파라미터로부터 계산하는 발바닥 목표 궤도에 의해서 발바닥의 위치(X, Y, Z) 3자유도와 자세 3자유도(롤, 피치, 요) 합계 6자유도가 정해진다. 게다가 발바닥의 위치에서 정해진 허리 부의 위치·자세의 6자유도분의 구속(拘束)으로부터 다리부의 12개의 관절 값을 구하는 계산이 이루어진다.
알고리즘 일부의 MATLAB 프로그램 예와 계산 결과도 검증할 수 있다.

제어용 마이컴 C코드 자동생성

최근, 자동차ㆍ항공우주 등의 제어시스템 개발에 있어서 주목 받는 모델 베이스 설계(MBD)는 개발 공정의 상류에서 하류까지 일관되게 MATLAB/Simulink 모델을 활용하는 것이다. Simulink 모델에서 C코드를 자동생성하고 타깃에 실장하는 기술은 MBD를 떠받치는 기간(基幹) 중 하나라고 말할 수 있다.
여기에서는 e-nuvo의 Legacy Code와 등가(等價)안 Simulink모델로부터 C코드를 자동생성하고 Legacy Code에서 치환하여 실장한 예를 소개하겠다.

·Simulink모델과 Legacy Code의 비교 검증
PID 제어 로직을 기술한 Legacy Code와 등가인 Simulink 모델에서 Legacy Code의 실행결과와 같은 결과가 얻어지는 것을 검증한다.
S-Funtion화 한 Legacy Code와 Simulink 모델에 같은 입력을 주어서 각 출력 차가 항상 0으로 등가이면 판단 가능하다.

·자동생성 코드의 컴파일/실장
검증한 모델을 사용하여 Real-Time Workshop 및 Real-time Workshop Embedded Coder를 사용하여 C코드 자동생성을 행한다. 자동생성 코드를 툴 체인을 사용하여 컴파일하고 마이컴(H8S : 주식회사 르네사스 테크놀로지)에서 입력한다. 자동생성 코드를 실장한 e-nuvo의 동작 예도 살펴볼 수 있다.

·사용 Tool 등
MATLAB, SImulink, Real-Time Workshop, Real-Time Workshop Embedded Coder 툴 체인으로서의 다음의 3점을 사용한다.
- High Performance Embedded Workshop4(주식회사 르네사스 테크놀로지)
- Flash Development Toolkit(주식회사 르네사스 테크놀로지)
- GNUH8v0502-ELF(KPIT Cummins Infosystems Ltd)

관리자 기자
로봇시대의 글로벌 리더를 만드는 로봇기술 뉴스레터 받기
전문보기
관련 뉴스
의견나누기 회원로그인
  • 자동등록방지