待补充 Interbotix/interbotix_ros_manipulators

机器人 4/5 🧩 软硬件结合 已发布
Interbotix 440 Stars 未知 BOM 完整度: 0/5 教程完整度: 0/5
待补充

项目简介

ROS Packages for Interbotix Arms


Interbotix/interbotix_ros_manipulators 是一个专为 Trossen Robotics 旗下各类机械臂产品设计的 ROS 控制仓库。该项目基于 interbotix_ros_core 提供的底层驱动节点,并配合 interbotix_ros_toolboxes 中的工具包,构建了一套完整、易用的机械臂控制生态。其核心功能涵盖了从物理臂控制、MoveIt 运动规划、Gazebo 仿真到 ROS Control 集成等关键环节,同时提供了丰富的演示包和脚本,帮助用户快速上手。项目技术栈以 ROS 1 Noetic 和 ROS 2 Galactic、Humble、Rolling 为主,支持多种 Dynamixel X 系列舵机驱动的机械臂,并通过 URDF 模型和网格文件实现 RViz 中的可视化。该仓库解决了研究人员和开发者在使用不同型号、不同自由度机械臂时面临的配置复杂、接口不统一的问题,尤其适合需要快速搭建机械臂控制原型、进行运动规划算法验证或开展机器人教学实验的场景。通过将底层 ROS 代码抽象为易用的 Python 和 MATLAB 接口,即使是缺乏 ROS 经验的用户也能像操作普通对象一样控制机械臂,大幅降低了开发门槛。项目结构清晰,按机械臂类型组织核心包和示例包,并鼓励社区贡献,未来还将持续扩展支持更多类型的机械臂。

标签

项目特点

支持多款 Trossen Robotics 机械臂(WidowX、Reach、PincherX 等),统一控制接口
集成 MoveIt 运动规划,支持正逆运动学、路径规划与碰撞检测
提供 Gazebo 仿真环境,无需真实硬件即可调试算法
兼容 ROS 1 Noetic 和 ROS 2 Galactic、Humble,覆盖主流 ROS 版本
包含丰富的演示脚本(如关节控制、末端执行器控制、轨迹录制回放)
模块化架构,易于扩展自定义机械臂或传感器

技术规格

支持 ROS 版本 ROS 1 Noetic / ROS 2 Galactic / ROS 2 Humble
支持机械臂型号 WidowX-200/250/250S, WidowX-300, WidowX-300S, PincherX-100/150, ReachX-200, RX-200, RX-150, VX-300S 等
底层通信 Dynamixel SDK (USB2Dynamixel / U2D2)
运动规划 MoveIt (OMPL / CHOMP / STOMP)
仿真环境 Gazebo (ROS 1) / Ignition Gazebo (ROS 2)
控制接口 ROS Control (JointTrajectoryController / PositionController)
编程语言 C++ (节点) + Python (脚本/演示)
操作系统 Ubuntu 20.04 (Noetic) / Ubuntu 22.04 (Humble)

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
Trossen Robotics 机械臂(如 WidowX-250) 1 用户自选型号
USB2Dynamixel 或 U2D2 适配器 1 用于 PC 与机械臂通信
12V 电源适配器(含插头) 1 随机械臂附赠
Ubuntu 20.04 / 22.04 1 操作系统
ROS 1 Noetic 或 ROS 2 Humble 1 按需安装
interbotix_ros_core 1 底层驱动包
interbotix_ros_toolboxes 1 工具包集合
interbotix_ros_manipulators 1 本仓库

3D 模型

模型名称文件名文件
底座 - uxarm5 base uxarm5_base.STL
连杆 - uxarm5 link1 uxarm5_link1.STL
连杆 - uxarm5 link2 uxarm5_link2.STL
连杆 - uxarm5 link3 uxarm5_link3.STL
连杆 - uxarm5 link4 uxarm5_link4.STL
连杆 - uxarm5 link5 uxarm5_link5.STL
底座 - uxarm6 base uxarm6_base.stl
连杆 - uxarm6 link1 uxarm6_link1.stl
连杆 - uxarm6 link2 uxarm6_link2.stl
连杆 - uxarm6 link3 uxarm6_link3.stl
连杆 - uxarm6 link4 uxarm6_link4.stl
连杆 - uxarm6 link5 uxarm6_link5.stl
连杆 - uxarm6 link6 uxarm6_link6.stl
底座 - uxarm7 base uxarm7_base.STL
连杆 - uxarm7 link1 uxarm7_link1.STL
连杆 - uxarm7 link2 uxarm7_link2.STL
连杆 - uxarm7 link3 uxarm7_link3.STL
连杆 - uxarm7 link4 uxarm7_link4.STL
连杆 - uxarm7 link5 uxarm7_link5.STL
连杆 - uxarm7 link6 uxarm7_link6.STL
连杆 - uxarm7 link7 uxarm7_link7.STL
底座 - gripper base gripper_base.stl
left finger left_finger.stl
left inner knuckle left_inner_knuckle.stl
left outer knuckle left_outer_knuckle.stl
right finger right_finger.stl
right inner knuckle right_inner_knuckle.stl
right outer knuckle right_outer_knuckle.stl
底座 - mobile px100 1 base mobile_px100_1_base.stl
mobile px100 2 shoulder mobile_px100_2_shoulder.stl
臂 - mobile px100 3 upper arm mobile_px100_3_upper_arm.stl
臂 - mobile px100 4 forearm mobile_px100_4_forearm.stl
mobile px100 5 gripper mobile_px100_5_gripper.stl
mobile px100 6 gripper prop mobile_px100_6_gripper_prop.stl
mobile px100 7 gripper bar mobile_px100_7_gripper_bar.stl
mobile px100 8 gripper finger mobile_px100_8_gripper_finger.stl
mobile px100 9 ar tag mobile_px100_9_ar_tag.stl
mobile wx200 10 ar tag mobile_wx200_10_ar_tag.stl
底座 - mobile wx200 1 base mobile_wx200_1_base.stl
mobile wx200 2 shoulder mobile_wx200_2_shoulder.stl
臂 - mobile wx200 3 upper arm mobile_wx200_3_upper_arm.stl
臂 - mobile wx200 4 forearm mobile_wx200_4_forearm.stl
mobile wx200 5 wrist mobile_wx200_5_wrist.stl
mobile wx200 6 gripper mobile_wx200_6_gripper.stl
mobile wx200 7 gripper prop mobile_wx200_7_gripper_prop.stl
mobile wx200 8 gripper bar mobile_wx200_8_gripper_bar.stl
mobile wx200 9 gripper finger mobile_wx200_9_gripper_finger.stl
mobile wx250s 10 gripper finger mobile_wx250s_10_gripper_finger.stl
mobile wx250s 11 ar tag mobile_wx250s_11_ar_tag.stl
底座 - mobile wx250s 1 base mobile_wx250s_1_base.stl

能力画像

**记忆与知识检索**:2/5 — 项目本身不涉及知识库或检索能力,但文档清晰,可快速查阅参数。
**动手与操作**:4/5 — 需要连接硬件、配置串口、调试机械臂,动手要求较高。
**编程与算法**:3/5 — 主要使用 ROS 标准接口,少量自定义节点需要 C++/Python 编程。
**设计与建模**:2/5 — 不涉及机械设计,但支持在 URDF 层面修改模型参数。
**实验与调试**:4/5 — 提供仿真和真实硬件两种调试模式,支持轨迹录制与回放。
**协作与分享**:3/5 — 开源项目,可通过 GitHub Issue/PR 协作,社区活跃。
**学习与研究**:4/5 — 适合学习 ROS 控制、MoveIt 规划、机械臂运动学等。
**系统集成**:4/5 — 可集成视觉、力传感器、末端执行器,扩展性强。

所需技能

熟悉 ROS 1 或 ROS 2 基本概念(节点、话题、服务、动作) 掌握 Linux 命令行操作(Ubuntu) 具备 C++ 或 Python 基础编程能力 了解机械臂运动学(正逆解)基本概念 能够连接串口设备并配置权限 会使用 Git 进行版本管理

适用场景

高校机器人课程教学与实验(如运动学、轨迹规划)
科研机构进行机械臂控制算法验证
创客/开发者搭建桌面机械臂原型
工业场景中的轻量级拾放、分拣任务
机器人竞赛(如 RoboMaster、ICRA 挑战赛)中的机械臂控制
远程实验室或仿真教学平台部署