Skip to content

시작하기

개요

IndySDK 는 Indy 제어프레임워크(Indy Frmaework)의 확장성과 유연성을 높이기 위해 설계된 연구용 개발환경 입니다.

  • Indy Frmaework 는 뉴로메카 Indy을 구동시키는 핵심 소프트웨어 프레임워크입니다.

  • IndySDK 는 IndyFramework 2.0을 기반으로 개발된 확장 프레임워크이며, 비영리 연구기관에게 연구 목적으로만 제공됩니다.

IndySDK는 개발자에게 다음과 같은 이점을 제공합니다.

  • 호환성: 뉴로메카의 Indy Framework가 제공하는 다양한 기능들을 API와 SDK를 통해 쉽게 접근할 수 있으며, 통신프로토콜과 티칭팬던트 연동 기능을 그대로 활용할 수 있습니다.

  • 재사용성: IndySDK의 컴포넌트 방식 소프트웨어 아키텍처는 재사용성을 보장합니다.

  • 간편성: 컴포넌트의 프로젝트 템플릿이 Eclipe 개발환경에서 플러그인으로 제공됩니다.


IndySDK의 기본개념

개발자는 IndySDK를 이용하여 Indy Framework이 제공하는 로봇제어의 핵심 컴포넌트인 로봇의 기구학적 동역학적 모델, 관절공간 제어기, 작업공간 제어기, 관절공간 궤적 인터폴레이터작업공간 궤적 인터폴레이터 등 에 대한 직접 개발이 가능합니다. 즉, IndySDK를 이용해서 개발자가 직접 개발한 위치제어, 힘제어, 임피던스 제어 알고리즘 등을 Indy Frmawork에 쉽게 이식할 수 있습니다.

설치하기

공급/판매 정책

IndySDK는 비영리 연구기관 (연구소 및 대학교)에만 제공됩니다. 이를 사용하기 위해서는 뉴로메카와 몇 가지 사용관련 협약을 진행하여야 합니다. 구체적인 문의사항은 뉴로메카 영업팀에 문의해주십시오 (sales@neuromeka.com).

설치가 성공적으로 진행 되었다면, 설치 된 디렉토리에 NRMKFoundation 폴더와 NRMKPlatformPC2 폴더가 생성됩니다. NRMKFoundation 폴더에는 IndySDK를 사용하여 컴포넌트 개발을 수행 할 수 있도록 다양한 헤더와 라이브러리 파일들이 설치됩니다. 폴더의 하위폴더들은 다음과 같습니다.

  • bin 은 개발 및 테스트 단계에서 사용자가 활용할 수 있는 유틸리티 도구들을 포함합니다.
  • core 는 프레임워크 개발을 위한 핵심 헤더파일과 3rd party 라이브러리를 포함합니다.
  • helper 는 프레임워크 개발을 위한 유틸리티 헤더파일을 포함합니다.
  • example 은 IndyFramework에서 구현된 실시간 태스크 예제 프로젝트를 포함합니다.
  • lib & lib64 는 프레임워크 개발을 위한 핵심 라이브러리 파일들을 포함합니다.

NRMKPlatform 은 Eclipse 개발환경을 포함하며 Xenomai, EtherCAT, 직렬 통신 인터페이스등을 STEP에서 활용하기 위한 라이브러리 파일들을 포함합니다.

  • bin 은 Eclipse IDE를 포함하며 필수 라이브러리 파일들을 포함합니다.
  • example 은 STEP의 이더켓 통신, 실시간 태스크, 그 외 입출력 예제들을 예제들을 포함합니다.
  • Drivers 는 JRE와 VC++ 설치파일들을 포함합니다.

IndySDK 매뉴얼의 구성

이 문서는 IndySDK 기초 사용방법부터 IndySDK를 활용한 다양한 로봇제어 예제에 이르기까지 광범위한 내용을 다루기 때문에 사용자는 IndySDK의 활용방법을 쉽게 터득할 수 있습니다. 매뉴얼의 구성은 다음과 같습니다.

  • 구성하기 에서는 IndySDK 패키지 설치방법을 시작으로 IndySDK 컴포넌트를 생성하는방법 및 개발환경을 구축하는 방법에 대해서 설명합니다.
  • 튜토리얼 에서는 단계별 튜토리얼을 통해서 IndySDK의 기초 사용방법을 학습합니다.
  • 예제 에서는 제어기 설계 예제들을 활용하여 IndySDK에서 제공하는 API들의 활용방법을 학습합니다.

머리문자 및 약어

이 문서에서 사용되는 머리문자 및 약어들은 아래 표를 참고하시기 바랍니다.

머리문자 및 약어 의미
Indy 모든 유형의 뉴로메카 인디로봇
IndySDK Eclipse IDE plugin, 3rd party library들을 포함하는 Indy Software Development Kit
STEP 인디의 임베디드 컨드롤러
TCP 로봇의 Tool Center Point
6-D 공간 6차원 공간 (3-D 변위 & 3-D 방향)
Pos/pos 로봇의 직교공간 위치 (미터 & 라디안)
Vel/vel 로봇의 직교공간 속도 (미터/초 & 라디안/초)
Acc/acc 로봇의 직교공간 가속도 (미터/초^{2} & 라디안/초^{2})
q 로봇의 관절공간 위치 (라디안)
qdot 로봇의 관절공간 속도 (라디안/초)
qddot 로봇의 관절공간 가속도 (라디안/초^{2})
J 자코비안 행렬
Jdot 자코비안 행렬의 미분