Token导航 LogoToken导航TokenDH.com
Safe Robotic Pouring logo
AI代理stdio官方级别未说明来源级核验

Safe Robotic Pouring

MCP Server

一个结合自然语言控制和AI代理的机器人操作系统,支持无硬件需求的规划模式和真实机器人操作模式。

工具数

6

提示词数

0

GitHub Stars

2

资源数

0
机器人控制自然语言处理PythonClaudeAI代理Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

1douya1

提供方

1douya1

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r agent/simple_requirements.txt

详细介绍

RSS工作坊-人工智能驱动的机器人操作系统

RSS 2025会议补充库

本存储库的目的

此存储库支持 两个互补的用例 对于RSS系统论文:

  1. 审阅者/研究者路径 --无需机器人的可运行规划管道

所需硬件(默认,建议审阅者使用)。

  1. 完整硬件路径 --UFACTORY UF850+Intel上的端到端执行

RealSense D435i,包括ChArUco手眼校准、感知和 基于MTC的运动执行。

这两条路径共享相同的源代码树、构建系统和代理层—— 唯一的区别是机器人+摄像头是否物理连接。

默认执行模式: 仅计划/试运行 (推荐给审稿人)。 对于真正的机器人路径,请从以下位置开始 docs/REAL_ROBOT_QUICK_START.md.

______________________________________________________________________

快速导航

供审稿人使用 (无机器人硬件):

对于完整的硬件路径 (v2.0中的新功能):

为了理解代码:

故障排除:

______________________________________________________________________

______________________________________________________________________

30秒理解

此回购包含什么:

  • 用于基于MTC的操纵规划的ROS 2包
  • 用于自然语言控制的LLM代理层(LangGraph+Claude)
  • 仅规划管道——不需要机器人
  • 真正的机器人流水线——UF850+RealSense D435i,ChArUco手眼校准,

对规划场景桥、MTC执行的感知

  • 将外部依赖项固定为git子模块(xarm_ros2、easy_handeye2)

未包含的内容:

  • 预训练的目标检测模型权重(*.pt, *.pth 被忽视)
  • 硬件特定的校准数据(仅提供示例骨架) 配置/)
  • 来自单独maniagent项目的脚本碰巧共享相同的脚本

框架(参见 外部设计.md,第4节)

供审稿人使用:在“仅计划”模式下运行,以验证计划架构。 适用于机器人操作员:参见 docs/REAL_ROBOT_QUICK_START.md.

______________________________________________________________________

🎯 系统概述

该存储库演示了一个人工智能驱动的机器人操纵系统,该系统结合了:

  • 自然语言机器人控制:使用简明英语指挥任务
  • AI代理集成:LangGraph+克劳德十四行诗4用于任务规划
  • 场景理解:实时目标检测和场景状态管理
  • MTC任务规划:基于任务的高级运动规划

系统架构:

Natural Language Input → Claude AI Agent → Action Tools → ROS2 MTC → (Planning/Execution)
                                ↓
                         Scene Manager (ROS2 subscriber)

关键创新:具有LLM驱动的自然语言界面的分层任务规划。

______________________________________________________________________

🚀 包含内容

核心组件

  1. AI 代理 (agent/)

- agent_app.py:主要的自然语言代理应用程序 - action_tools.py:为LangChain包装的机器人动作工具 - scene_manager.py:ROS2场景状态管理器 - task_graph.py:复杂序列的任务图定义

  1. ROS2包装 (src/)

- mtc_interface:消息和动作定义 - mtc_tutorial:MTC任务构建器和执行服务器

  1. 文档 (docs/)

- 架构图 - 使用指南 - 快速参考资料

  1. 演示脚本 (scripts/)

- run_demo.sh:一个命令演示启动器

______________________________________________________________________

需求

仅计划模式(建议审阅者使用)

  • Ubuntu 22.04 LTS
  • ROS 2谦逊的霍克斯比尔
  • Python 3.10+
  • MoveIt 2+MoveIt任务构建器
  • 无需机器人或摄像头

真实机器人模式(附加,在上述模式之上)

  • UFACTORY UF850机器人手臂(经过测试的固件:附带v2.0.0-humble驱动程序)
  • 英特尔RealSense D435i摄像头
  • 完成ChArUco手眼校准(手眼) *或* 眼睛到手)
  • Anthropic API密钥(用于LLM代理)

外部依赖 记录在一个地方: 看见 外部设计.md 对于权威子模块/ apt/pip矩阵。缩写为:

# 1. System ROS 2 + MoveIt + MTC
sudo apt install ros-humble-desktop ros-humble-moveit-task-constructor-*

# 2. Clone this repo WITH its submodules (xarm_ros2, easy_handeye2)
git clone https://github.com/1douya1/safe-robotic-pouring.git RSS_Workshop
cd RSS_Workshop
git submodule update --init --recursive   # pulls xarm_ros2 AND xarm_sdk/cxx

Python依赖关系(代理层和/或真实机器人)

完整的pip pin列表(仅计划需要哪些包) 真正的机器人) 保持在 外部设计.md,第3节.

对于此仓库中的代理/web UI:

pip install -r agent/simple_requirements.txt

对于真正的机器人感知层,另外安装:

/usr/bin/python3 -m pip install "numpy 注: `--packages-up-to mtc_tutorial` 仅构建 `mtc_tutorial` 及其
> 依赖关系(`mtc_interface`, `xarm_moveit_config`, ...),跳过无关的
> 包裹(`realsense_gazebo_plugin`在某些系统上可能会发生故障。

> 如果你以前跑过 `colcon build` 从 `RSS_Workshop/src`,你可能有
> 第二次覆盖 `src/install`.在repo覆盖之前获取参考底图:
> `source src/install/setup.bash && source install/setup.bash`.进行修复
> 持久化,在采购后重建一次回购覆盖 `src/install`.

______________________________________________________________________

## 快速入门(真正的机器人)

**在阅读本节之前,请阅读 [docs/SAFETY_CHECKLIST.md](docs/SAFETY_CHECKLIST.md).**

0. One-time: ensure hand-eye calibration has been done.

See docs/CALIBRATION_PIPELINE.md for the ChArUco procedure.

1. Clone + build (same as plan-only)

git clone https://github.com/1douya1/safe-robotic-pouring.git RSS_Workshop cd RSS_Workshop git submodule update --init --recursive source /opt/ros/humble/setup.bash colcon build --symlink-install --packages-up-to mtc_tutorial source install/setup.bash

2. Python deps for perception + agent

/usr/bin/python3 -m pip install -r agent/simple_requirements.txt /usr/bin/python3 -m pip install "numpy<2" "opencv-python==4.10.0.84" ultralytics pyrealsense2

3. Guided launch plan (prints the 4-terminal command set)

./scripts/run_demo.sh --real-robot


引导式发射器打印启动的确切命令(在单独的终端中):
RealSense驱动程序、UF850+MoveIt堆栈、校准发布器、
检测桥和TF健全性检查。完整演练
[docs/REAL_ROBOT_QUICK_START.md](docs/REAL_ROBOT_QUICK_START.md).

### 详细步骤

看 [docs/QUICK_START.md](docs/QUICK_START.md) (仅计划)或
[docs/REAL_ROBOT_QUICK_START.md](docs/REAL_ROBOT_QUICK_START.md) (真正的机器人)
获取带解释的分步说明。

______________________________________________________________________

## 🎮 仅运行计划演示

### 推荐给审稿人

One command:

./scripts/run_demo.sh --plan-only


这将:

1. 检查所有依赖项(ROS2、MoveIt、xarm_ROS2)
1. 如果需要,构建工作区
1. 为带有假控制器的UF850启动MoveIt2
1. 使用机器人模型和规划场景打开RViz
1. 注入演示碰撞对象(桌子、杯子、碗)
1. 启动MTC模块任务服务器

### 你会在RViz看到什么

- UF850机器人模型处于原位
- 棕色桌面
- 蓝色圆柱体(杯子/源容器)
- 红色圆柱体(碗/目标容器)
- MotionPlanning互动规划小组

### 启动计划

一旦RViz打开并且对象可见,请在 **新终端**:

source install/setup.bash ros2 run mtc_tutorial test_modular_tasks


这将计划一个拾取任务(仅计划,不执行)并显示结果。

### 用于硬件执行

看 [执行模块.md](EXECUTION_MODES.md) 用于模拟和真实机器人模式。

**审查此工作不需要硬件执行。**

______________________________________________________________________

## 📂 仓库结构

RSS_Workshop/ ├── agent/ # AI Agent module │ ├── agent_app.py # Main natural language agent │ ├── action_tools.py # LangChain-wrapped robot actions │ ├── scene_manager.py # ROS2 scene state manager │ ├── task_graph.py # Task graph definitions │ └── simple_requirements.txt # Python dependencies │ ├── src/ # ROS2 packages │ ├── mtc_interface/ # Message/Action definitions │ │ ├── action/ExecutePour.action, ExecuteTask.action │ │ └── msg/DetectedObject.msg, DetectionResult.msg │ │ │ └── mtc_tutorial/ # MTC task builders & demo │ ├── src/ # C++ task builders & servers │ ├── scripts/ # Python utilities │ │ ├── spawn_demo_scene.py # <-- NEW: inject demo objects │ │ └── mtc_mcp_server.py # MCP tool server │ ├── launch/ │ │ ├── plan_only_demo.launch.py # <-- NEW: one-launch demo │ │ └── pour_demo.launch.py │ ├── config/ │ │ └── demo_scene.yaml # <-- NEW: demo collision objects │ └── include/ # C++ headers │ ├── scripts/ │ └── run_demo.sh # One-command demo entrypoint │ ├── configs/ # Agent configuration ├── docs/ # Documentation ├── LICENSE └── README.md


______________________________________________________________________

## 🔧 可用的机器人动作

AI代理可以通过自然语言执行以下操作:

### 核心行动

- **拾取对象(object_id)**:抓取指定对象
- **place_object(object_id,return_to_origin)**:将对象放置在某个位置
- **move_and_pour(target_id、should_pour、速度)**:移动到目标位置,并可选择倾倒
- **返回主页()**:将机器人返回原位

### 查询操作

- **get_scene_objects()**:列出所有检测到的对象
- **get_robot_status()**:检查机器人状态(保持、最后动作)
- **ask_user_clarization(问题、选项)**:请用户澄清

看 `docs/API_REFERENCE.md` 查看详细的动作参数。

______________________________________________________________________

## 🧪 测试

### 烟雾测试(无需机器人)

Test the agent without robot hardware

cd agent python3 -c " from scene_manager import get_scene_manager from action_tools import get_tools

scene = get_scene_manager() tools = get_tools() print('✅ All imports successful') print(f'✅ Available tools: {len(tools)}') "


### 集成测试(需要ROS2)

Ensure ROS2 is running, then:

source install/setup.bash ros2 topic list # Should show /planning_scene, /joint_states, etc. ros2 node list # Should show move_group if MoveIt is running


______________________________________________________________________

## 已知限制/不包括的内容

1. **硬件特定数据** --实时内情、手眼结果,以及
   `recorded_poses.yaml` 是特定于安装的,并且是不可忽略的。仅
   这 `configs/*.example.yaml` *骨架* 被跟踪。
1. **目标检测模型权重** -- `*.pt`, `*.pth`, `*.onnx` 是
   被忽视了。自己下载或重新训练YOLOv8。
1. **Isaac Sim集成** --故意超出范围。
1. **`moveit_task_constructor`, `find_object_2d`, `realsense2_camera` 来源**
   --通过消费 `apt` 而不是出卖。
1. **来自单独maniagent项目的脚本** (pointcloud_geometry_fitter,
   publish_camera_root_from_handeye,佛罗伦萨_视觉检测启动)--这些
   共享相同的框架,但不是RSS管道的一部分。他们是
   仅引用于 [外部设计.md](external-deps.md)第4节。

看 [docs/EXCLUDED_COMPONENTS.md](docs/EXCLUDED_COMPONENTS.md) 为了
长篇理论基础。

______________________________________________________________________

## 🐛 故障排除

### 代理无法启动

Check Python dependencies

pip install -r agent/simple_requirements.txt

Verify ROS2 environment

source install/setup.bash echo $ROS_DISTRO # Should output: humble


### 未检测到任何物体

Check if detection node is running

ros2 node list | grep detection

Verify detection topic

ros2 topic echo /object_detection_result --once


### 规划失败

Check MoveIt is running

ros2 node list | grep move_group

Verify planning scene

ros2 topic echo /planning_scene --once

Check joint states

ros2 topic echo /joint_states --once


______________________________________________________________________

## 📚 其他资源

- **全部文件**:参见 `docs/` 文件夹
- **代理使用指南**: `docs/AGENT_USAGE_GUIDE.md`
- **架构概述**: `docs/ARCHITECTURE.md`
- **MTC任务构建器**: https://moveit.picknik.ai/main/doc/tutorials/pick_and_place_with_moveit_task_constructor/pick_and_place_with_moveit_task_constructor.html

______________________________________________________________________

## 📝 引用

如果您在研究中使用此代码,请引用:

@inproceedings{rss2025_workshop, title={AI-Driven Robot Manipulation with Natural Language Control}, author={Your Name}, booktitle={Robotics: Science and Systems (RSS)}, year={2025} }


______________________________________________________________________

## 📄 许可证

此项目根据MIT许可证获得许可-请参阅 [许可证](LICENSE) 文件以获取详细信息。

______________________________________________________________________

## 🙏 致谢

- **MoveIt任务构造器**:强大的基于任务的规划框架
- **工厂**:适用于UF850机器人平台
- **Anthropic**:用于Claude AI模型
- **语言链/语言图**:用于AI代理框架

______________________________________________________________________

**版本**:2.0(仅计划+真实机器人)
**查看快照**:标签 `v1.1.0-review` 仅保留原始计划提交。

目录标签

目录标签

机器人控制自然语言处理PythonClaudeAI代理本地部署ROS2

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP