상세보기

(주)티이에스의 2족 보행로봇 교육-2족 보행 로봇의 모델베이스 개발(SILS) (주)티이에스의 2족 보행로봇 교육-2족 보행 로봇의 모델베이스 개발(SILS) 관리자 기자입력 2007-07-02 13:13:40

최근 제어시스템 개발에 있어서 모델 베이스 개발(MBD; Model Based Development)이라고 불리는 개발방법이 주목받고 있다. MBD에 있어서의 SILS(Software In the Loop Simulation)는 시뮬레이션 환경상에 구축된 제어대상의 모델에 대하여 제어측을 소프트웨어로써 평가/검증하는 것이다.
본 내용은 2족 보행로봇 교재 「e-nuvo(ZMP社)」를 사용하여, 로봇 제어측의 평가/검증을 SILS(MATLAB/Simulink상에 구축)로 한 사례를 소개한다.  <편집자 주>


도입

일반적으로 설계/개발에 있어서 기존 시스템의 Legacy(자산)을 활용하면서 Legacy의 일부를 신규로 치환해 가는 것은 많이 볼 수 있다.
본 내용은 2족 보행로봇의 제어측 설계의 Legacy에서 MBD로의 리플레이스를 상정하고 MBD의 수법으로 어떻게 이루어지는지 <그림 1>의 플로우에서 그에 따른 사례를 나타낸다. 단, Legacy의 일부 치환을 특화한다는 생각이 아니고 플로우에서 Legacy Code 항을 제거하면 일반적인 신규 시스템에 있어서의 SILS 플로우로 볼 수 있다.

e-nuvo에 대하여

2족 보행로봇 e-nuvo는 각 다리 6관절, 합 12관절을 갖추고 있다. 「1관절」=「1모터」=「1자유도」이므로 12자유도를 가진 2족 보행로봇이라고 표현 가능하다. 각 관절의 회전방향은 발목(롤 방향과 피치 방향의 2자유도), 무릎(피치 방향만 1자유도), 고관절(피치ㆍ롤ㆍ요 3자유도)이다.
e-nuvo의 동작을 결정하는 12관절의 각도 설정치는 e-nuvo의 외부에서 시계열(時系列) 데이터로서 얻어진다.
<그림 2>의 서브 CPU 기판상의 H8S(주식회사 르네사스 테크놀로지)에 실장된 소프트웨어로부터 관절각도의 설정치 추종 PID 제어가 이루어지고, 관절각은 센서(포텐셔미터)에 의해 얻어진다. DC Gear Driven Motor는 H 브리지로 PWM 제어된다.
SILS에 대하여

·도입
본 내용에서는 <그림 1>의 플로우에 기초하여 데모에 있어서의 SILS의 공정을 설명하겠다.

(1) Legacy Code와 등가인 Simulink모델 작성
본 데모에서 사용하는 Legacy Code는 <그림 2>에서 PID 제어측을 기술한 것이다.
Legacy Code에서는 각 변수에 다양한 수치형(數値型)을 지정하고 있고, Simulink 모델에서는 각 개소(個所)에서 그 형(型)에 맞추는 것이 필요하다.

(2) Simulink 모델과 C코드 자동생성
Simulink 모델에서 C코드를 자동생성하고 타깃으로 실장하는 기술은 MBD를 떠받치는 기간(基幹) 중 하나라고 말할 수 있다.
Simulink 모델에서 Simulink 옵션의 Real-Time Workshop 및 Real-Time Workshop Embedded Coder를 사용하고 실장에 따라 적합한 C코드 자동생성을 행하는 것이 가능하다.

(3) Simulink 모델과 C코드의 평가
C코드와 Simulink 모델의 등가 확인에는 이하의 순서가 유효한 수법 중 한가지이다.
C코드를 S-Function에 입력하고 Simulink 환경상에 Simulink 모델과 S-Function에 동일하게 입력을 줄 때 같은 출력이 나오는지를 평가한다.

(4) SILS 환경의 구축
오른쪽 다리 무릎의 관절 이외의 관절에는 각도, 각속도 및 각가속도로 구성된 모션 데이터가 주어지고, 오른쪽 다리 무릎의 관절에 대하여 이하와 같이 SILS를 구축한다.
2족 보행로봇의 기구계통, 전기계통을 합한 모델을 제어 대상으로 한다.
기구계통 모델은 SimMec-hanics로, 전기계통 모델은 SimPowerSystems의 DC모터와 H 브리지, PWM 생성기 및 기어 등으로 구성한다.
PID 제어측이 되고 Simulink모델, Legacy Code 및 자동생성 C코드를 적당히 절환시킨다. 각각 Legacy Code, 자동생성 C코드를 Lap한 S-Function이다.
이 모델의 목표는 <그림 2>에 있는 관절 1개분의 PID 제어 구조를 시뮬레이션 환경상에서 재현하고 Simulink, Legacy Code 및 자동생성 C코드의 평가를 행하는 것이다.

(5) SILS 환경상에서의 평가

실기와 같은 설정치에 대하여 조금 늦은 기미로 추종하는 경향이 확인 가능하고 출력하는 Duty비도 확인할 수 있다.

·사용 TOOL 등
MATLAB, Simulink, SimMc-hanics, SimPowerSystems, Real-Time Workshop, Real-Time Workshop Embedde Coder

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