← ClaudeAtlas

srdflisted

SRDF (Semantic Robot Description Format) authoring for MoveIt2. Use when defining or editing planning groups, group_state named poses, end-effectors, virtual joints, passive joints, or disable_collisions matrices for an existing URDF — i.e. when MoveIt2 / OMPL motion planning, IK groups, allowed-collision matrix, or moveit_setup_assistant artifacts are involved. Use the urdf skill for kinematic / link / joint definition itself; use cad-viewer for joint sliders / 3D preview; use sdf for Gazebo world physics (independent path). 关键词:SRDF, MoveIt, MoveIt2, planning group, group_state, 规划组, collision matrix, disable_collisions, 碰撞矩阵, 虚位姿, named pose, setup_assistant, end effector, virtual joint, passive joint。
baibai2013/build123d-cad · ★ 2 · Code & Development · score 65
Install: claude install-skill baibai2013/build123d-cad
# SRDF — MoveIt2 语义层 > SRDF 不是 URDF 的替代,是它的语义补丁。URDF 描述「机器人长什么样、怎么动」, > SRDF 描述「为了规划运动,我们怎么把它分组、哪些位姿叫得出名字、哪些碰撞可以忽略」。 --- ## 核心规则 1. **URDF 先稳**:SRDF 引用 URDF 中的 `link` / `joint` 名字,URDF 改名 → SRDF 同步改; URDF 还在改尺寸 / 关节顺序 → 不要急着写 SRDF。 2. **三大支柱**:`<group>`(规划组)、`<group_state>`(命名虚位姿)、`<disable_collisions>` (碰撞白名单)。其它元素 (`virtual_joint` / `end_effector` / `passive_joint`) 按需补。 3. **disable_collisions 只关四类**: ① `Adjacent` 相邻链接(URDF joint 直连)、② `Never` 几何上永远不可能碰、 ③ `Always` 在所有姿态下都重叠(冗余几何)、④ `Default` 在 home 位姿下重叠。 不要为了消 setup_assistant 红字盲关 — 删掉一对真实存在的碰撞,planner 会 生成穿模轨迹。 4. **virtual_joint 给移动底座**:四足 / 移动机器人必须有 `virtual_joint` 把 `world` 连到 `base_link`(`type="floating"`),否则 MoveIt 把整机当固定基座,IK / 规划群组 全部失效。 5. **group_state 用于"调出来一个姿态"**:home / stand / sit 之类。值是关节角, 不是 link 位姿。每个 group_state 必须显式列出该 group 内**所有**关节。 6. **链 (chain) vs 关节集 (joints)**:腿 / 臂这种串联结构用 `<chain base_link tip_link>`, 非串联(整机、双手协同)用 `<joints>` 列举或 `<group>` 嵌套。 7. **生成顺序**:authoring 先手写关键骨架(group + group_state) → moveit_setup_assistant 交互式补 disable_collisions(几何采样需要它) → 回头人工审 Always 类(防过松)。 8. **跨子技能边界**:URDF 是 SRDF 的**唯一上游**;不要让 SRDF 直接读 STEP / 关节 原始数据,统一通过 URDF 的 link / joint 名字面对。 --- ## SRDF vs URDF 一句话对照 | 维度 | URDF | SRDF | |---|---|---| | 关心 | 几何 / 惯量 / 关节物理参数 | 语义分组 / 命名位姿 / 碰撞白名单 | | 文件根 | `<robot name>` | `<robot name>` (同名,SRDF 必须与 URDF 同名) | | 引用关系 | 自闭包 | **引用** URDF 中的 link / joint 名字 | | 谁消费 | RViz / robot_state_publisher / Gazebo / MoveIt | **MoveIt2 主用