AgileX UGV SDK <unk> 유니버설 CAN 플랫폼 SDK
AgileX ugv_sdk C++ 라이브러리와 pyagxrobots Python 결합을 위한 완전한 참조. 설치, CAN 설정, 지원되는 플랫폼 (SCOUT, RANGER, BUNKER, TRACER, HUNTER, LIMO), ROS2 사용 및 프로토콜 세부 사항을 포함합니다.
이 페이지에
- [전환]
- [지원되는 플랫폼]
- [설비]
- [C++ 라이브러리]
- [파이톤 결합]
- [CAN 설정]
- [단순식 설정]
- [ 지속적인 설정 ]
- [프로토콜 세부 사항]
- [ROS2 사용]
- [게제보 시뮬레이션]
- [왼쪽]
AgileX 페이지
- [Hub
모든 플랫폼] - [UGV SDK]
- [SCOUT 시리즈]
- [RANGER 시리즈]
- [BUNKER 시리즈]
- [트래커 + 헌터]
- [LIMO]
- [파이퍼 팔]
하드웨어 가이드
- [VLAI L1 로봇]
- [LinkerBot O6]
- [DK1 바이맨્યુઅલ 키트]
- [오픈아름 1]
- 보스터 K1
- [BrainCo Revo II]
- [파키니 센서]
- [우지 손]
또한 참조
- [← 모든 기사는]
- [로봇스 아카데미 →]
- 플랫폼 →
- [문제 하나 물어봐요]
** 라이브러리:**
C++ 파이썬 CAN 버스 ROS2 모든 플랫폼
1. 전반적인 설명
ugv_sdk는 AgileX 로봇의 오픈소스 C++ 라이브러리로서 CAN 버스를 통해 모든 AgileX 모바일 플랫폼에 통일된 소프트웨어 인터페이스를 제공합니다. 플랫폼 특정 드라이버보다는 ugv_sdk는 기본 CAN 프로토콜을 일관된 API로 추상화합니다.
라이브러리는 프로토콜 버전 2개를 지원합니다. ** 프로토콜 V1** (유산) 및 ** 프로토콜 V2** (현재). 2021년부터 생산되는 모든 플랫폼은 프로토콜 V2를 사용합니다. 프로토콜 V1 지원은 오래된 스카우트, 스카우트 미니, 헌터 1.0 및 벙커 단위로 후진 호환성을 위해 유지됩니다.
파이썬 사용자들을 위해 pyagxrobots 패키지는 파이썬 파이프로 ugv_sdk에 Python 결합을 제공하여 C++ 라이브러리를 직접 컴파일하지 않고 파이썬으로 작성된 내비게이션 스택과 빠른 프로토타입 제작 및 통합을 가능하게 합니다.
** 하나의 SDK, 모든 플랫폼.** ugv_sdk는 모든 AgileX ROS2 패키지 (
2. 지원되는 플랫폼
아래 표는 각 AgileX 플랫폼의 프로토콜 버전 지원, 사용 가능한 인터페이스 및 현재 지원 상태를 보여줍니다.
| Robot | Protocol V1 | Protocol V2 | UART | CAN | Status |
|---|---|---|---|---|---|
| Scout 2.0 | Y | Y | N | Y | Active |
| Scout Mini (Skid) | Y | Y | — | Y | Active |
| Scout Mini (Omni) | Y | Y | — | Y | Active |
| Hunter 1.0 | Y | Y | — | Y | Active |
| Hunter 2.0 | — | Y | — | Y | Active |
| Bunker | Y | Y | — | Y | Active |
| Tracer | — | Y | N | Y | Active |
| Ranger Mini 2.0 | — | Y | — | Y | Active |
| Ranger Mini 3.0 | — | Y | — | Y | Active |
| Ranger | — | Y | — | Y | Active |
** 프로토콜 V2는 모든 새로운 개발에 권장됩니다.** 프로토콜 V1 지원은 오래된 하드웨어에 있습니다. 플랫폼이 프로토콜 V2 (2021년부터 모든 단위) 를 탑재하면 V1
3· 설치
C++ 라이브러리
소스에서 ugv_sdk를 구축하고 설치합니다. 라이브러리는 CMake 3.10+, C++14 호환 컴파일러 및 SocketCAN 개발 헤더 (
# 의존성을 설치 (Ubuntu 20.04 / 22.04) sudo apt 설치 구축 필수적인 cmake libsocketcan-dev
# 구축 및 설치
설치 후 헤더는
파이썬 결합 (pyagxrobots)
파이썬 첫 번째 작업 흐름에 대해 파이썬 공식 결합을 파이프로 설치하십시오. C++ 컴파일링이 필요하지 않습니다.
** 파이썬 결합은 작동하는 CAN 인터페이스를 필요로 한다.**
4. CAN 버스 설정
모든 AgileX 플랫폼은 500 kbps**로 **CAN 2.0B를 사용합니다. GS_USB 호환 USB-to-CAN 어댑터 (예를 들어, CANable, Waveshare USB-CAN-A) 를 필요로 합니다. 아래 명령어 중 하나를 실행하기 전에 로봇의 CAN 포트에 연결하십시오.
CAN 인터페이스를 가져오십시오
GS USB 커널 모듈을 로드 sudo modprobe gs_usb
500kbps로 캔0를 올리는
sudo ip 링크 세트
# 인터페이스가 작동하고 있는지 확인 ip 링크 쇼가 될 수 있습니다
# 선택적: 진단에 필요한 원료 CAN 프레임을 폐기 캔드 캔드
리부팅 중 지속적인 설정
각 플랫폼의 ROS2 패키지는 지속성을 자동으로 처리하는 두 개의 셸 스크립트를 배포합니다.
# 어댑터를 구성하기 위해 첫 하드웨어 연결 후 한 번 실행 bash 설정_can2usb.bash
ROS2 노드를 시작하기 전에 다음 각 부팅을 실행 바쉬를 가져오세요
두 스크립트는 플랫폼 특화된 ROS2 패키지의
** 팁: 스ક્રિપ્트를 수동으로 실행하지 않고 자동으로 시작되는 CAN 인터페이스를 원한다면 ~/.bashrc 또는 systemd 서비스에 bringup을 추가하십시오.
5· 프로토콜 세부 사항
| Parameter | Value |
|---|---|
| CAN standard | CAN 2.0B (extended frame support) |
| Bitrate | 500 kbps |
| Byte order | Motorola (big-endian) |
| Timeout protection | 500 ms — platform stops if no command received |
| Minimum command rate | 10 Hz (recommended: 20–50 Hz) |
| Protocol versions | V1 (legacy), V2 (current, all 2021+ units) |
500 ms 안전 시간** 제어 노드 충돌 또는 500 ms 이상 정지하면 로봇은 자동으로 멈출 것입니다. 이것은 의도적입니다. 제어 루프를 최소 10 Hz에서 명령을 보내도록 설계하십시오. 원활한 움직임을 위해 50 Hz는 원활하게 작동하는 것이 좋습니다.
6. ROS2 사용
모든 AgileX 플랫폼은 동일한 ROS2 발사 패턴을 따르고 있습니다.
플랫폼의 ROS2 패키지를 설치
# SCOUT의 예제
기본 드라이버를 발사
# 먼저 CAN 인터페이스를 가져오십시오 (이기에 안 들어간 경우) bash ~/ros2_ws/src/scout_ros2/scripts/bringup_can2usb.bash
로봇 기반 드라이버를 시작하세요
로즈2 발사 스카우트
2단말에서 키보드 텔레오퍼레이션 로즈2를 실행하세요
속도 명령 주제는
모든 플랫폼은
# 드라이버를 시작한 후 사용 가능한 주제를 확인하세요 로스2 주제가
# 수동 속도 명령 (0.3m/s 앞으로, 0 각) 을 보내십시오 로즈2 주제는 pub /cmd_vel 기하학 "{선형: {x: 0.3, y: 0.0, z: 0.0}, 각형: {x: 0.0, y: 0.0, z: 0.0}}"
nav2 호환성. 모든 AgileX 플랫폼 ROS2 패키지는 ROS2 nav2 내비게이션 스택과 호환성입니다. 기본 드라이버는 nav2가 요구하는
7. 가제보 시뮬레이션
AgileX는 [ugv_gazebo_sim] (UGV) 에서 모든 UGV 플랫폼에 통일된 Gazebo 시뮬레이션 패키지를 제공합니다. 시뮬레이션은 실제 하드웨어와 동일한 ROS2 주제 인터페이스를 사용합니다. 따라서 시뮬레이션에서 개발된 코드는 변경 없이 물리적 로봇에 전송됩니다.
# Gazebo Sim 패키지를 복제
cd ~/ros2_ws/src
git klone
# 가제보에서 스카우트 2.0를 출시 (스카우트를 플랫폼으로 교체) 로즈2 발사 스카우트
8· 주요 링크
| Resource | URL |
|---|---|
| ugv_sdk GitHub | github.com/agilexrobotics/ugv_sdk |
| Gazebo Simulation | github.com/agilexrobotics/ugv_gazebo_sim |
| Python binding | pypi.org/project/pyagxrobots |
| AgileX GitHub org | github.com/agilexrobotics (87 repos) |
| AgileX website | www.agilex.ai |
| Technical support | support@agilex.ai |
** 모든 AgileX 플랫폼** AgileX 플랫폼 허브 를 검색하여 SCOUT, RANGER, BUNKER, TRACER, LIMO, Piper를 포함하는 제품 당 페이지를 검색합니다.
** 질문이 있습니까?** [공동체에게 물어보십시오]







