๐ English ยท ํ๊ตญ์ด
๋ชจ๋ ๊ธธ ์์ ์์จ์ฃผํ ๋ฐฐ์ก ๋ก๋ด
by ROBOTIS AI
์์ํ๊ธฐ ยป
โยทโ
ํจํค์ง ยป
โยทโ
์ํคํ
์ฒ ยป
AntBot์ ROBOTIS AI์์ ๊ฐ๋ฐํ ์์จ์ฃผํ ๋ฐฐ์ก ๋ก๋ด์ฉ ์คํ์์ค ์ํํธ์จ์ด์ ๋๋ค. 4๋ฐํด๊ฐ ๊ฐ๊ฐ ๋ ๋ฆฝ์ ์ผ๋ก ์กฐํฅํ๋ ์ค์๋ธ ๋๋ผ์ด๋ธ ๋ฐฉ์์ผ๋ก, ์ค์ ๋ฐฐ์ก ํ์ฅ์์ ๋ฐ๋ก ์ฌ์ฉํ ์ ์๋ ์์ค์ ์ฝ๋๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ข์ ๋ก๋ด์ ์ด๋๋ ๊ฐ ์ ์์ด์ผ ํฉ๋๋ค. ์ข์ ๊ธฐ์ ์ ๋๊ตฌ๋ ์ธ ์ ์์ด์ผ ํฉ๋๋ค. โ ์์ธํ ๋ณด๊ธฐ โ
์ด ์ ์ฅ์ ํ๋๋ก ๋ก๋ด ๊ตฌ๋์ ํ์ํ ๋ชจ๋ ๊ฒ์ ๊ฐ์ถ ์ ์์ต๋๋ค:
- Swerve-drive controller โ ์ญ๊ธฐ๊ตฌํ ๊ธฐ๋ฐ 4๋ฅ ๋ ๋ฆฝ ์กฐํฅ ์ ์ด, ์ค๋๋ฉํธ๋ฆฌ ์ถ๋ ฅ
- Hardware interface โ Dynamixel Protocol 2.0์ผ๋ก ANT-RCU ๋ณด๋์ ํต์
- Multi-camera driver โ V4L2, USB, RGB-D ์นด๋ฉ๋ผ ๋์ ์ง์
- Sensor integration โ 2D/3D LiDAR, IMU, GNSS ์ผ์ ํตํฉ ๊ด๋ฆฌ
- Complete URDF model โ ์ผ์ ํ๋ ์, ๋ฉ์๊น์ง ํฌํจ๋ ์ ์ฒด ๋ก๋ด ๋ชจ๋ธ
- One-command bringup โ ๋ช ๋ น์ด ํ๋๋ก ์ ์ฒด ์์คํ ํ ๋ฒ์ ์คํ
| Package | ์ค๋ช |
|---|---|
antbot |
๋ฉํ ํจํค์ง |
antbot_bringup |
์ ์ฒด ์์คํ launch ํ์ผ ๋ชจ์ |
antbot_description |
URDF / Xacro ๋ก๋ด ๋ชจ๋ธ (์ผ์ ํ๋ ์, ๋ฉ์ ํฌํจ) |
antbot_swerve_controller |
ros2_control ๊ธฐ๋ฐ ์ค์๋ธ ๋๋ผ์ด๋ธ ์ปจํธ๋กค๋ฌ (IK, ์ค๋๋ฉํธ๋ฆฌ) |
antbot_hw_interface |
RCU ๋ณด๋์ฉ ros2_control SystemInterface ํ๋ฌ๊ทธ์ธ |
antbot_libs |
Dynamixel Protocol 2.0 ํต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ (C++) |
antbot_interfaces |
์ปค์คํ ROS 2 ๋ฉ์์ง ๋ฐ ์๋น์ค ์ ์ |
antbot_camera |
๋ฉํฐ ์นด๋ฉ๋ผ ๋๋ผ์ด๋ฒ (V4L2 / USB / Orbbec RGB-D) |
antbot_imu |
IMU ๋๋ผ์ด๋ฒ (์๋ณด ํํฐ, ์๋ ์บ๋ฆฌ๋ธ๋ ์ด์ ) |
antbot_teleop |
ํค๋ณด๋ ์๊ฒฉ ์กฐ์ข (์ ๋ฐฉํฅ ์ด๋ ์ง์) |
์ธ๋ถ ์ผ์ ๋๋ผ์ด๋ฒ ํฌํจ:
vanjee_lidar_sdk(3D LiDAR),vanjee_lidar_msg(LiDAR ๋ฉ์์ง ์ ์)
System Block Diagram (ํด๋ฆญํ์ฌ ํผ์น๊ธฐ)
antbot_bringup antbot_description
(launch files) (URDF / Xacro, meshes)
โ โ
โ launches โ robot_description
โผ โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ros2_control Framework โ
โ (Controller Manager) โ
โ โ
โ antbot_swerve_controller โโโโโ /cmd_vel โ
โ (IK, motion profiling, odometry) โ
โ โโโ /odom โ
โ โโโ /tf โ
โโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
read() โ write()
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ antbot_hw_interface โ
โ (BoardInterface plugin) โ
โ โ
โ Wheel โ Steering โ
โ Encoder โ Motor โ
โ Battery โ
โโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโ
โ antbot_libs โ โโโโโโโโโโโโโโโโโโโโโโโ
โ Communicator โ โ antbot_imu โ
โ ControlTableParser โ โ (ImuNode) โ
โโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโฌโโโโโโโโโโโ
โ โ
โโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโ
โ Serial (Dynamixel Protocol 2.0) โ
โโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโ
โ โ
โโโโโโโโผโโโโโโโ โโโโโโโโผโโโโโโโ
โ ANT-RCU โ โ IMU Board โ
โ Motors x4 โ โ Accel/Gyro โ
โ Steering x4โ โโโโโโโโโโโโโโโ
โ Encoders โ
โ Battery โ
โโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ antbot_camera โ
โ V4L2 / USB / RGB-D โโโโโ /sensor/camera/*/image_raw
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ vanjee_lidar_sdk โ
โ 3D LiDAR โโโโโ /sensor/lidar_3d/point_cloud
โ 2D LiDAR ร 2 โโโโโ /sensor/lidar_2d_{front,back}/scan
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
bringup.launch.py
โโโ robot_state_publisher.launch.py โ URDF โ /tf, /tf_static
โโโ controller.launch.py โ ros2_control + swerve controller
โโโ imu.launch.py โ 6-axis IMU
โโโ lidar_2d.launch.py โ 2ร 2D LiDAR (USB serial)
โโโ lidar_3d.launch.py โ 3D LiDAR (Ethernet)
โโโ ublox_gps_node-launch.py โ u-blox GNSS
โโโ camera.launch.py โ V4L2 + USB + RGB-D cameras
โโโ teleop_joy.launch.py โ DualSense joystick teleop
antbot/
โโโ antbot/ # ๋ฉํ ํจํค์ง
โโโ antbot_bringup/ # Launch ํ์ผ (bringup, view, controller, sensors)
โโโ antbot_description/ # URDF / Xacro ๋ชจ๋ธ, ๋ฉ์, RViz ์ค์
โโโ antbot_swerve_controller/ # Swerve-drive ์ปจํธ๋กค๋ฌ (IK, ์ค๋๋ฉํธ๋ฆฌ, ํ๋กํ์ผ๋ง)
โโโ antbot_hw_interface/ # ANT-RCU์ฉ ros2_control ํ๋์จ์ด ํ๋ฌ๊ทธ์ธ
โโโ antbot_libs/ # ๊ณต์ C++ ๋ผ์ด๋ธ๋ฌ๋ฆฌ (Dynamixel ํต์ , XML ํ์ฑ)
โโโ antbot_interfaces/ # ์ปค์คํ
ROS 2 ๋ฉ์์ง ๋ฐ ์๋น์ค ์ ์
โโโ antbot_camera/ # ๋ฉํฐ ๋๋ผ์ด๋ฒ ์นด๋ฉ๋ผ ๋
ธ๋ (V4L2, USB, RGB-D)
โโโ antbot_imu/ # ์๋ณด ํํฐ ํฌํจ IMU ๋๋ผ์ด๋ฒ
โโโ antbot_teleop/ # ํค๋ณด๋ ํ
๋ ์คํผ๋ ์ด์
(Python)
โโโ vanjee_lidar_sdk/ # Vanjee 3D LiDAR ๋๋ผ์ด๋ฒ
โโโ vanjee_lidar_msg/ # Vanjee LiDAR ๋ฉ์์ง ์ ์
โโโ docs/ # ๋ฌธ์ ๋ฐ ์ด๋ฏธ์ง
โโโ scripts/ # ์ ํธ๋ฆฌํฐ ์คํฌ๋ฆฝํธ
โ โโโ setting.sh # ์์กด์ฑ ์ค์น ์คํฌ๋ฆฝํธ
โโโ additional_repos.repos # vcs import์ฉ ์ธ๋ถ ์ ์ฅ์ ๋ชฉ๋ก
Quick Start โ ROS 2 Humble์ด ์ด๋ฏธ ์ค์น๋์ด ์๋ค๋ฉด?
mkdir -p ~/antbot_ws/src && cd ~/antbot_ws/src git clone https://github.com/ROBOTIS-move/antbot.git cd ~/antbot_ws/src/antbot && bash scripts/setting.sh cd ~/antbot_ws && colcon build --symlink-install && source install/setup.bash ros2 launch antbot_bringup bringup.launch.py
1. ์ํฌ์คํ์ด์ค๋ฅผ ์์ฑํ๊ณ ์ ์ฅ์๋ฅผ ํด๋ก ํฉ๋๋ค:
mkdir -p ~/antbot_ws/src && cd ~/antbot_ws/src
git clone https://github.com/ROBOTIS-move/antbot.git2. ์ค์ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ์ฌ ์์กด์ฑ์ ์ค์นํฉ๋๋ค (์์คํ
๋๊ตฌ, ์ธ๋ถ ์ ์ฅ์, rosdep ๊ธฐ๋ฐ ROS ์์กด์ฑ):
cd ~/antbot_ws/src/antbot
bash scripts/setting.sh3. ์ํฌ์คํ์ด์ค๋ฅผ ๋น๋ํฉ๋๋ค:
cd ~/antbot_ws
colcon build --symlink-install4. ์ํฌ์คํ์ด์ค๋ฅผ ์์ฑํฉ๋๋ค:
source ~/antbot_ws/install/setup.bash๐ก Tip:
~/.bashrc์source ~/antbot_ws/install/setup.bash๋ฅผ ์ถ๊ฐํ๋ฉด ์ ํฐ๋ฏธ๋๋ง๋ค ์๋์ผ๋ก ์์ฑ๋ฉ๋๋ค.
ros2_control, swerve controller, IMU, LiDAR, GPS, ์นด๋ฉ๋ผ๋ฅผ ํฌํจํ ์ ์ฒด ์์คํ ์ ์คํํฉ๋๋ค:
ros2 launch antbot_bringup bringup.launch.pyRViz๋ก ๋ชจ๋ ์ผ์ ๋ชจ๋ํฐ๋ง (๋ณ๋ PC์์ ์คํ):
ros2 launch antbot_bringup view.launch.pyURDF ๋ชจ๋ธ ๋ฏธ๋ฆฌ๋ณด๊ธฐ (ํ๋์จ์ด ๋ถํ์):
ros2 launch antbot_description description.launch.pyํค๋ณด๋๋ก ์ง์ ์กฐ์ข :
# ํค๋ณด๋ ํ
๋ ์คํผ๋ ์ด์
(ํฐ๋ฏธ๋์์ ์คํ)
ros2 run antbot_teleop teleop_keyboard
# ์กฐ์ด์คํฑ ํ
๋ ์คํผ๋ ์ด์
(DualSense, USB)
ros2 launch antbot_teleop teleop_joy.launch.pyํค ๋ฐ์ธ๋ฉ:
| Key | Action |
|---|---|
W / X |
์ ์ง / ํ์ง |
A / D |
์ข์ธก / ์ฐ์ธก ์ด๋ |
Q / E |
๋ฐ์๊ณ / ์๊ณ ํ์ |
1 ~ 9 |
์๋ ๋ ๋ฒจ |
ESC |
์ข ๋ฃ |
์กฐ์ด์คํฑ ๋ฒํผ ๋ฐ์ธ๋ฉ (DualSense):
# 0.5 m/s๋ก ์ ์ง
ros2 topic pub /cmd_vel geometry_msgs/msg/Twist \
"{linear: {x: 0.5, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.0}}"
# 0.3 m/s๋ก ์ฐ์ธก ์ด๋
ros2 topic pub /cmd_vel geometry_msgs/msg/Twist \
"{linear: {x: 0.0, y: -0.3, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.0}}"
# 1.0 rad/s๋ก ์ ์๋ฆฌ ํ์
ros2 topic pub /cmd_vel geometry_msgs/msg/Twist \
"{linear: {x: 0.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 1.0}}"| ๊ตฌ์ฑ ์์ | ์ฌ์ |
|---|---|
| Drive Type | 4๋ฅ ๋ ๋ฆฝ ์กฐํฅ ์ค์๋ธ ๋๋ผ์ด๋ธ |
| Control Board | ANT-RCU (Dynamixel Protocol 2.0, ID 200) |
| Communication | USB Serial @ 4 Mbps |
| Wheel Motors | 4ร (M1โM4), ๋ฒ์: โ185 ~ 185 RPM |
| Steering Motors | 4ร (S1โS4), ๋ฒ์: โ56.2ยฐ ~ 56.2ยฐ |
| Cameras | 1ร ์คํ ๋ ์ค RGB-D + 4ร ๋ชจ๋ ธ (V4L2) |
| 3D LiDAR | 3D LiDAR (Ethernet) |
| 2D LiDAR | 2ร 2D LiDAR (USB Serial) |
| IMU | 6์ถ (3์ถ ๊ฐ์๋๊ณ + 3์ถ ์์ด๋ก์ค์ฝํ) |
| GNSS | u-blox GPS ์์ ๊ธฐ |
| Battery | BMS ๋ชจ๋ํฐ๋ง (์ ์, ์ ๋ฅ, SoC, ์จ๋) |
| Topic | Type | ์ค๋ช |
|---|---|---|
/cmd_vel |
์๋ ๋ช ๋ น (linear x/y + angular z) |
| Service | Type | ์ค๋ช |
|---|---|---|
/cargo/command |
ํ๋ฌผํจ ์ ๊ธ / ํด์ | |
/headlight/operation |
์ ์กฐ๋ฑ ์ผ๊ธฐ / ๋๊ธฐ | |
/wiper/operation |
์์ดํผ ๋ชจ๋ ์ค์ (OFF / ONCE / REPEAT) |
| Package | ์ฉ๋ |
|---|---|
| Dynamixel Protocol 2.0 ํต์ | |
| Controller manager ํ๋ ์์ํฌ | |
| ํ๋ผ๋ฏธํฐ ์๋ ์์ฑ | |
| ROS โ OpenCV ์ด๋ฏธ์ง ๋ณํ | |
| Control table XML ํ์ฑ | |
| RViz IMU ์๊ฐํ |
Apache License 2.0ํ์ ๋ฐฐํฌ๋ฉ๋๋ค. ์์ธํ ๋ด์ฉ์ LICENSE๋ฅผ ์ฐธ๊ณ ํ์ธ์.
Copyright 2026 ROBOTIS AI CO., LTD.
ROBOTIS AI CO., LTD.
- ๐ Website: www.robotis.com
- ๐ง Contact: peter@robotis.com
.png)