Skip to content

시작 가이드

다양한 이차 개발 방식 시작 가이드

INEXBOT 소프트웨어 플랫폼은 컨트롤러, 티치 펜던트, 상위 컴퓨터, 마스터 스테이션에 대한 사용자의 다양한 요구를 충족하기 위해 여러 이차 개발 방식을 제공합니다. 애플리케이션 시나리오에 따라, 사용자는 적합한 개발 방식을 선택하여 기능을 맞춤 설정할 수 있습니다. 본 가이드는 사용자가 필요에 따라 적합한 개발 방식을 선택하고, 관련 개발 지식 요구 사항을 간략히 설명하는 것을 돕습니다.

1. 컨트롤러 이차 개발

애플리케이션 시나리오: 특수 공정 개발, 특수 모델 지원, 보간 알고리즘 교체 등.

개발 방식:

필수 지식:

  • 운영 체제: Linux 시스템
  • 프로그래밍 언어: C++
  • 주요 기능: 컨트롤러 저수준 알고리즘 및 특정 하드웨어 지원 개발, 예: 보간 알고리즘 교체, 하드웨어 인터페이스 맞춤 등.
  • 개발 내용: 이 개발 방식은 사용자가 저수준 하드웨어와 알고리즘에 대한 깊은 이해를 요구합니다. 일반적으로 로봇 컨트롤러의 핵심 기능 맞춤에 적용되며, 예를 들어 경로 계획 조정, 실시간 제어 최적화 등.

적합한 사용자: 컨트롤러 하드웨어 및 알고리즘 개발자, 강력한 프로그래밍 능력을 갖추고 하드웨어와 상호 작용하며 로봇 제어 흐름을 최적화할 수 있는 사람.

2. 티치 펜던트 이차 개발

애플리케이션 시나리오: 전용 사용자 인터페이스(UI/UE) 및 기능을 맞춤 설정하여, 컨트롤러와 협력하여 동작.

개발 방식:

  • C++ 프로그래밍: C++ 언어에 익숙하고, 객체 지향 프로그래밍과 데이터 구조를 숙지해야 합니다.
  • Linux 시스템 프로그래밍: Linux 시스템의 기본 동작(예: 프로세스 관리, 메모리 관리 등)에 대한 이해.
  • 로봇 제어 이론: 로봇 제어 알고리즘(예: 운동학, 동역학, 보간 알고리즘 등)에 대한 이해는 컨트롤러 개발의 핵심 문제를 이해하는 데 도움이 됩니다.

필수 지식:

  • 운영 체제: Linux 시스템
  • 프로그래밍 언어: Qt / C++
  • 주요 기능: 맞춤화된 사용자 인터페이스 설계, 컨트롤러의 이차 개발과 결합하여 전용 기능을 구현. 예를 들어, 제어 패널, 수동 조작 인터페이스 설계, 컨트롤러와 함께 맞춤 동작 및 명령 입력.
  • 개발 내용: Qt 프레임워크를 통해 그래픽 인터페이스를 개발하고, 컨트롤러 기능과 결합해야 합니다.

적합한 사용자: UI/UE 개발자, 프런트엔드 개발 경험을 갖추고, 사용자에게 맞춤 조작 인터페이스를 제공하려는 엔지니어.

3. 상위 컴퓨터 개발

애플리케이션 시나리오: API를 통해 직접 로봇을 제어하여 티치 펜던트의 제약을 벗어나 보다 유연한 제어를 실현.

개발 방식:

  • Qt 프레임워크: Qt UI 설계 및 개발에 익숙하고, Qt Designer, QML 등의 도구를 사용하여 인터페이스를 설계할 수 있어야 합니다.

  • C++ 프로그래밍: C++ 언어를 숙지하고, Qt의 시그널/슬롯 메커니즘, 이벤트 처리 등을 이해합니다.

  • Linux 시스템 개발: 기본적인 Linux 시스템 동작, 특히 컨트롤러와 상호 작용하는 부분에 대한 이해.

  • 운영 체제:

  • Windows 시스템: VC++ / C# / VB / Python / Qt

  • Linux 시스템: C++ / Qt / Python

필수 지식:

  • 주요 기능: API를 통해 로봇을 직접 제어하여, 상위 컴퓨터에서 보다 고급 제어 및 모니터링을 수행. 다양한 프로그래밍 언어를 지원하여, 프로젝트 요구에 따라 개발 언어와 도구를 유연하게 선택할 수 있습니다.
  • 개발 내용: 네트워크 인터페이스 또는 시리얼 포트 등 통신 방식을 통해 컨트롤러와 상호 작용하고, 명령을 보내고 피드백 정보를 가져옵니다. 이 개발 방식은 티치 펜던트에 의존하지 않으므로, 로봇에 대한 복잡한 원격 제어 및 데이터 처리에 적합합니다.

적합한 사용자: 로봇 고수준 제어, 자동화 작업 또는 시스템 통합이 필요한 개발자.

4. 마스터 스테이션 개발

애플리케이션 시나리오: 컨트롤러를 산업용 컴퓨터로 강등시켜 실시간 시스템과 EtherCAT 마스터 기능을 제공하여, 고객 요구를 맞춤화합니다.

개발 방식:

  • 프로그래밍 언어 선택: 운영 체제와 언어 선택에 따라 학습이 필요합니다. Windows 시스템의 경우 사용자는 C#, VC++ 또는 Python 등 언어에 대한 이해가 필요합니다. Linux 시스템의 경우 사용자는 C++, Qt 또는 Python에 익숙해야 합니다.
  • API 호출: API를 통해 로봇 컨트롤러와 상호 작용하는 방법을 이해합니다.
  • 네트워크 프로그래밍: 기본적인 네트워크 프로그래밍 지식, 특히 분산 시스템에서 디바이스 간 통신 방법에 대한 이해.

필수 지식:

  • 운영 체제: Linux 시스템
  • 프로그래밍 언어: C / C++
  • 주요 기능: 마스터 스테이션 기능을 통해 EtherCAT 마스터와 디바이스 간 통신을 구현하여, 고객의 로봇 제어에 대한 실시간 요구를 충족합니다. 이 플랫폼에서 실시간 제어 시스템 및 산업용 네트워크 통신 프로토콜을 개발할 수 있습니다.
  • 개발 내용: 실시간 작업 작성, EtherCAT 마스터 프로토콜 개발, 컨트롤러 및 다른 디바이스와의 통신 수행.

적합한 사용자: 산업 자동화 및 임베디드 시스템 개발자, 특히 실시간 제어 시스템과 네트워크 통신 프로토콜을 맞춤화해야 하는 엔지니어.

5. JSON 프로토콜 개발

애플리케이션 시나리오: JSON 프로토콜을 따라 INEXBOT 컨트롤러와 통신하여, 원격 제어 및 데이터 교환을 수행.

개발 방식:

  • C/C++ 프로그래밍: C/C++ 프로그래밍 언어에 대한 깊은 이해, 특히 실시간 프로그래밍 및 동시성 제어.

  • 실시간 운영 체제(RTOS): 실시간 시스템 개발 숙지, 실시간 작업 스케줄링, 시스템 성능 등 지식 이해.

  • EtherCAT 프로토콜: EtherCAT 프로토콜 및 산업용 네트워크 통신에 대한 이해, 디바이스 간 실시간 고효율 통신 구현 가능.

  • 운영 체제:

  • Windows 시스템: VC++ / C# / VB / Python / Qt

  • Linux 시스템: C++ / Qt / Python

필수 지식:

  • 주요 기능: JSON 프로토콜을 기반으로 시스템과 로봇 사이의 통신 인터페이스를 개발하여, 원격 제어 및 데이터 상호 작용을 편리하게 수행할 수 있습니다.
  • 개발 내용: JSON 형식의 메시지를 통해 로봇 컨트롤러와 상호 작용하고, 제어 명령을 보내고 실행 결과를 가져옵니다.

적합한 사용자: 표준화된 프로토콜을 통해 로봇과 통합하거나 원격 제어가 필요한 개발자.

6. ROS 개발

애플리케이션 시나리오: ROS 프로토콜을 기반으로 INEXBOT 컨트롤러를 개발 및 제어하여, 보다 유연한 로봇 제어 및 디버깅을 수행.

개발 방식:

  • JSON 형식: JSON 데이터 구조 이해, 컨트롤러와 통신하는 JSON 메시지 작성 가능.
  • 프로그래밍 언어: 시스템 플랫폼에 따라 적합한 프로그래밍 언어를 선택하여 개발.
  • 네트워크 통신: HTTP, TCP/IP 등 프로토콜 기반의 네트워크 통신 방식 숙지.

필수 지식:

  • 운영 체제: Linux 시스템
  • 프로그래밍 언어: C++ / Python
  • 주요 기능: ROS(로봇 운영 체제)를 통해 INEXBOT 컨트롤러를 제어하여, ROS 네트워크에 통합할 수 있으며, 로봇 시스템의 실시간 모니터링 및 제어를 지원합니다.
  • 개발 내용: ROS 노드를 개발하고, 다른 ROS 노드와 협력하여 로봇 제어 및 데이터 처리를 구현.

적합한 사용자: ROS 개발자, 특히 ROS 환경에 익숙하고 INEXBOT 컨트롤러를 ROS 시스템에 통합하고자 하는 엔지니어.

요약:

  • ROS 프레임워크: ROS의 기본 개념, 노드, 토픽, 서비스 등에 익숙합니다.
  • C++ / Python 프로그래밍: C++ 또는 Python 프로그래밍을 숙지하여, ROS 노드를 개발하고 컨트롤러와 상호 작용할 수 있어야 합니다.
  • 로봇 제어: ROS에서 흔히 사용되는 제어 방법 및 도구(예: MoveIt, RViz 등)에 대한 이해.

다양한 대상 독자에 적합한 개발 방식

INEXBOT 시스템은 다양한 유형의 사용자에게 유연한 개발 플랫폼을 제공하여, 초보자부터 전문 연구 개발자까지의 요구를 충족할 수 있습니다. 대상 독자에 따라, 다음과 같은 개발 방식을 추천하여, 더욱 빠르게 시작하고 목표를 달성하도록 돕습니다.

1. 본체 제조업체

목표 요구: 제어 시스템을 신속하게 맞춤화하고, 자체 로봇 두뇌를 만들며, 브랜드 인지도를 높입니다.

추천 개발 방식:

  • 개발 형태 선택: 필요(예: 알고리즘 맞춤, UI 맞춤, 컨트롤러 통합 등)에 따라 적합한 이차 개발 형태를 선택합니다.

  • 반드시 익혀야 할 기술: 개발 방식에 따라 익혀야 할 기술 스택이 다르므로, 개발 형태를 선택한 후 해당 프로그래밍 언어와 플랫폼을 깊이 학습합니다.

  • 컨트롤러 이차 개발:

  • 본체 제조업체는 일반적으로 자체 하드웨어에 적합한 맞춤 제어 알고리즘이 필요하며, 제품의 고유성과 시장 경쟁력을 높입니다. 컨트롤러 이차 개발은 저수준 제어에 대한 깊은 맞춤을 허용하며, 강력한 성능 최적화 공간을 제공합니다.

  • 컨트롤러 이차 개발을 통해 로봇 모션 제어, 보간 알고리즘 등을 조정하여 특정 기능을 구현하고, 로봇의 정밀성과 효율성을 보장할 수 있습니다.

  • 티치 펜던트 이차 개발:

기술 요구:

  • 본체 제조업체가 자신만의 전용 사용자 인터페이스를 만들어 조작 경험을 향상시키려는 경우, 티치 펜던트 이차 개발이 좋은 선택입니다.
  • 브랜드 요구에 따라 인터페이스를 설계하고, 그래픽 인터페이스를 맞춤 설정하여 사용자 경험을 높이고, 브랜드 인지도를 강화할 수 있습니다.

2. 통합업체

목표 요구: 특수 공정을 개발하고, 자체 산업 지식을 보호하며, 제품 해자를 구축합니다.

추천 개발 방식:

  • 하드웨어에 대한 깊은 이해, C++ 프로그래밍 및 제어 알고리즘에 익숙합니다.

  • 상위 컴퓨터 개발:

  • 통합업체는 일반적으로 여러 디바이스 간의 효율적인 통신 및 제어가 필요하며, 자체 특수 공정과 기술을 통합해야 합니다. 상위 컴퓨터 개발은 통합업체가 PC 또는 상위 컴퓨터에서 복잡한 제어를 수행하고, 컨트롤러와 깊이 통합하는 데 도움이 됩니다.

  • 상위 컴퓨터 개발을 통해 API로 로봇을 제어하는 동시에 로봇에서 오는 데이터를 수집하고 처리하여, 자체 공정의 최적화를 용이하게 합니다.

  • JSON 프로토콜 개발:

기술 요구:

  • JSON 프로토콜은 경량 통신 방식으로, 크로스 플랫폼, 크로스 시스템 애플리케이션 시나리오에 적합합니다. 통합업체는 JSON 프로토콜을 사용하여 표준화된 데이터 전송을 수행하고, 자체 공정 데이터를 보호하여 외부 유출을 방지할 수 있습니다.
  • 표준화된 프로토콜을 통해 통합업체는 여러 다른 시스템과의 호환성을 실현하여, 제품의 확장성을 높일 수 있습니다.

3. 과학 연구 사용자

목표 요구: 고정밀 운동 제어 알고리즘 연구에 집중하고, 로봇의 극한 성능을 깊이 파며, 과학 기술의 정상을 향해 용감히 도전.

추천 개발 방식:

  • 네트워크 프로토콜 및 데이터 교환에 익숙하고, 시스템 통합 및 효율적인 데이터 전송을 수행할 수 있어야 합니다.

  • 컨트롤러 이차 개발:

  • 과학 연구 사용자는 제어 알고리즘에 대한 깊은 연구와 맞춤이 필요합니다. 컨트롤러 이차 개발은 과학 연구 요구에 따라 제어 시스템을 조정하고 최적화할 수 있는 강력한 플랫폼을 제공합니다.

  • 운동 제어 및 알고리즘을 깊이 맞춤하여, 고정밀 제어 전략 테스트를 수행하고, 극한 성능에서 로봇의 성능을 탐구할 수 있습니다.

  • ROS 개발:

기술 요구:

  • ROS(로봇 운영 체제)는 과학 연구 영역에서 흔히 사용되는 개발 프레임워크로, 복잡한 알고리즘 및 시스템 통합이 필요한 사용자에게 적합합니다. 과학 연구 사용자는 ROS 시스템을 통해 로봇의 모션 계획, 센서 데이터 처리 등을高层회적으로 연구 및 실험할 수 있습니다.
  • ROS 개발은 다중 로봇의 협업 작업을 지원할 수 있으며, 풍부한 도구 라이브러리와 개발 지원을 과학 연구 사용자에게 제공하여, 로봇 영역에서 혁신을 실현하도록 돕습니다.

4. 교육 사용자

목표 요구: 학생들이 로봇을 사용할 줄 아는 데 그치지 않고, 스스로 로봇을 설계 및 제조할 수 있도록 양성을 목표로 합니다.

추천 개발 방식:

  • 높은 기술 연구 개발 능력을 갖추고, 제어 알고리즘, ROS 개발 및 고정밀 운동 제어에 익숙합니다.

  • 티치 펜던트 이차 개발:

  • 교육 사용자는 티치 펜던트 이차 개발을 통해 사용하기 쉬운 조작 인터페이스를 맞춤 설정하여, 학생들이 로봇 제어 및 프로그래밍 과정을 더 잘 이해하도록 도울 수 있습니다.

  • 예제 프로그램과 이해하기 쉬운 그래픽 인터페이스는 학생들이 빠르게 시작하는 데 도움이 되며, 동시에 기본적인 프로그래밍 과제를 제공하여 그들의 실践 능력을 향상시킵니다.

  • JSON 프로토콜 개발:

기술 요구:

  • 교육의 필요에 있어, JSON 프로토콜의 간단하고 사용하기 쉬운 특성은 학생들이 데이터 전송 및 로봇 제어의 기본 개념을 빠르게 습득하는 데 도움이 될 수 있습니다. 간소화된 데이터 교환 흐름을 통해, 학생들은 짧은 시간에 로봇과 다른 시스템의 상호 작용 방식을 이해할 수 있습니다.
  • 동시에, JSON 프로토콜은 학생들에게 크로스 플랫폼 개발 경험을 제공하여, 다른 하드웨어 플랫폼과 더 잘 연동할 수 있도록 합니다.

요약: 다양한 필요에 따라 적합한 개발 방식을 선택합니다.

대상 독자추천 개발 방식개발 중점
본체 제조업체컨트롤러 이차 개발, 티치 펜던트 이차 개발제어 시스템 및 사용자 인터페이스의 깊은 맞춤
통합업체상위 컴퓨터 개발, JSON 프로토콜 개발효율적인 통신 및 자체 공정 보호
과학 연구 사용자컨트롤러 이차 개발, ROS 개발정밀 제어 및 복잡한 알고리즘 연구
교육 사용자티치 펜던트 이차 개발, JSON 프로토콜 개발사용 편의성 및 크로스 플랫폼 데이터 전송

입문 팁:

  • 로봇 조작에 대한 기본 이해를 갖추고, 그래픽 인터페이스 개발 및 기본 프로그래밍 언어에 익숙합니다.

필요와 기술 배경에 따라, 적합한 개발 경로를 선택하고 프로젝트 요구에 따라 점차 심화하면, 짧은 시간에 목표를 실현하고 더 나은 개발 경험을 얻을 수 있습니다.

  • 학습 자료: 각 개발 방식은 풍부한 문서 및 예제 코드를 제공하므로, 시작하기 전에 먼저 관련 문서를 읽어보고 개발 플랫폼의 기본 지식을 이해하는 것이 좋습니다.
  • 커뮤니티 지원: 과학 연구 및 교육 사용자의 경우, ROS와 JSON 프로토콜은 광범위한 커뮤니티 지원을 받으므로, 온라인 포럼, 튜토리얼 및 리소스 공유를 통해 플랫폼을 더 잘 이해하고 사용할 수 있습니다.
  • 유연한 응용: 다양한 대상 독자에 대해, 유연하고 확장이 용이한 개발 방식을 선택하는 것이 좋습니다. 특히 초기 단계에서는 개발 경로의 개방성을 유지하여 후기의 빠른 반복에 도움이 됩니다.