rosclaw-so101-ros2-mcp
ROSClaw MCP服务器 SO-101机械臂 通过ROS2。
部分 ROSClaw 嵌入式智能操作系统。
概述
此MCP服务器使LLM代理能够通过模型上下文协议控制SO-101 6-DOF机器人手臂。它通过ROS2主题与 lekiwi_motor_bridge 处理Feetech STS3215伺服通信的节点。
LLM Agent ──MCP──► rosclaw-so101-ros2-mcp ──ROS2──► lekiwi_motor_bridge ──Serial──► SO-101硬件
| 字段 | 值 |
|---|---|
| 机器人 | SO-101(6自由度手臂+夹具) |
| 伺服 | Feetech STS3215 x6(电机ID 1-6) |
| 协议 | ROS2通过lekiwi_motor_bridge |
| 主题 | /joint_states (in), /joint_commands (out) |
安装
source /opt/ros/jazzy/setup.bash
pip install -e .先决条件
这个 lekiwi_motor_bridge 节点从 lekiwi_hw_interface 程序包必须正在运行:
ros2 run lekiwi_hw_interface lekiwi_motor_bridge --ros-args \
-p port:=/dev/ttyACM0 \
-p use_so101:=true作为MCP服务器运行
source /opt/ros/jazzy/setup.bash
python src/so101_mcp_server.py可用工具
| 工具 | 说明 |
|---|---|
connect_so101 | 通过ROS2连接到SO-101 |
disconnect_so101 | 断开SO-101的连接 |
move_arm_to_home | 将所有关节移到零(垂直) |
move_arm_joint | 将单个关节移动到目标位置 |
move_arm_joints | 同时移动多个关节 |
open_gripper | 完全打开夹持器 |
close_gripper | 完全关闭夹持器 |
stop_arm | 保持当前位置 |
get_arm_state | 获取关节位置和夹持器状态 |
可用资源
| 资源 | 描述 |
|---|---|
so101://status | 关节位置和夹持器状态 |
so101://joints | 联合限制参考 |
so101://connection | ROS2连接状态 |
联合参考
| 关节 | 范围(rad) | 电机ID |
|---|---|---|
| 肩盘 | -2.055至+2.058 | 1 |
| 肩举 | -2.018至+2.018 | 2 |
| elbow_flex | -1.653到+1.654 | 3 |
| wrist_flex | -1.786到+1.790 | 4 |
| 腕卷 | -3.194至+4.120 | 5 |
| 夹持器 | -0.175至+1.745 | 6 |
许可证
Apache 2.0
ROSClaw的一部分
此软件包也用于 罗氏-莱基维-罗氏2-mcp 用于LeKiwi基座+SO-101手臂组合控制。
