📦 Ros1 Noetic General — ROS1问答与机器人控制

v0.1.1

双语ROS1 Noetic通用技能,覆盖机器狗、移动机器人、机械臂、感知管线及仿真的构建、调试、启动、健康检查与rosbridge管理,一键操控真实或仿真环境。

0· 115·1 当前·1 累计
下载技能包
最后更新
2026/3/26
0
安全扫描
VirusTotal
无害
查看报告
OpenClaw
安全
high confidence
技能文件、脚本与运行指令均围绕ROS1 Noetic故障排查/启动工具展开;无索要无关凭据或外部安装,但捆绑脚本可启停运行时并驱动硬件,运行前请审查并在真实机器人上确认。
评估建议
该技能功能与描述一致:本地ROS1 Noetic工作区及运行时管理。安装或运行前:1) 自行检查捆绑脚本(将执行roslaunch/rosrun并可能发布机器人运动指令)。2) 未经人工确认勿在生产硬件上运行;优先仿真。3) 若暴露rosbridge,请核查网络/防火墙并白名单限定主题/服务。4) 先在隔离环境(VM/容器)或带急停的机器人上测试。5) 若不完全信任来源,禁止自主调用或手动限制代理可触发的操作。...
详细分析 ▾
用途与能力
名称/描述(ROS1 Noetic启动、构建、调试、OpenClaw集成)与所含脚本及引用一致:工作区探测、环境检查、启动发现、启停、健康检查、接口检查、rosbridge指导及运动脚本。未声明无关环境变量、二进制文件或安装需求。
指令范围
SKILL.md明确指示代理运行捆绑脚本并在本地工作区与运行时状态上操作。此为预期行为,但若干脚本将产生副作用:启动roslaunch/rosrun、启动rosbridge、在/tmp下记录日志/状态文件,且Python运动脚本发布cmd_vel(实际运动)。技能包含安全提示(运行sudo/硬件运动前询问),但调用者仍须在真实硬件执行前确认。
安装机制
无安装规范——仅指令与捆绑脚本。技能不会在安装时下载或安装外部代码。唯一执行风险是运行主机上的内含脚本;安装器不会获取外部压缩包或URL。
凭证需求
技能不请求密钥或环境变量。期望并加载常规ROS设置(如/opt/ros/noetic/setup.zsh),并可能在tmp目录下创建每次运行的ROS_HOME及状态/日志文件。未请求过度凭据访问或无关配置路径。
持久化与权限
always:false(默认)。技能由用户调用,且允许被代理平台自主调用(正常默认)。其在每次运行的tmp目录下写入自身运行/状态/日志文件,但不修改其他技能或系统级代理配置。注意:自主调用加上启停硬件能力意味着用户应限制无人工确认的自动运行。
安全有层次,运行前请审查代码。

运行时依赖

无特殊依赖

版本

latestv0.1.12026/3/25

同步最新ROS1通用能力更新:增强启动/运行健康检查与脚本工具

无害

安装命令

点击复制
官方npx clawhub@latest install ros1-noetic-general
镜像加速npx clawhub@latest install ros1-noetic-general --registry https://cn.longxiaskill.com

技能文档

本 skill 用于与具体项目无关的 ROS1 Noetic 任务,不限于四足机器人。典型触发句式包括:

  • "启动机器狗"
  • "启动 ROS 程序"
  • "启动 ROS"
  • "帮我看一下 ROS"
  • "帮我编译一下这个 ROS 项目"
  • "检查这个 catkin 工作区"
  • "帮我把这个 launch 跑起来"
  • "看看这个 ROS 节点为什么没起来"
  • "build this ROS package"
  • "start this ROS launch"
  • "check this ROS workspace"
  • "debug this ROS node"
  • "use rosskill"

本 skill 内部路由规则:

  • 若请求主要为通用 ROS 知识(概念、术语、架构、最佳实践),先给出 ROS 指导。
  • 若请求涉及本地文件、本地工作区状态、本地命令、构建/启动/launch/运行/监控/停止动作或运行时诊断,使用本 skill 的脚本与执行流程。
  • 若用户明确说 使用 rosskill用 ros skilluse rosskill,即使请求也可被更一般地回答,也强烈优先使用本 skill。

当请求提到 OpenClawrosbridgewebsocket ROS 控制远程意图映射 时,及早加载 references/ros1-openclaw-adapter.md

工作流

  • 解析执行上下文与捆绑资源路径。
  • 验证 ROS1 环境及活跃图。
  • 将请求归类为某一项目画像。
  • 执行画像专属检查清单。
  • 应用安全上线与验证。
  • 报告结果,附带可复现命令。

步骤 1:先解析执行上下文

捆绑脚本位于本 skill 目录内。不要假定当前 shell 目录就是 skill 根目录。

  • 在使用前,相对于本 SKILL.md 文件解析 scripts/...references/...
  • 若执行捆绑脚本,优先使用脚本的绝对路径。
  • 若主机运行时已提供等效 ROS 检查命令,可直接使用。

示例模式:

SKILL_DIR=""
zsh "$SKILL_DIR/scripts/ros1_shell_detect.sh"
zsh "$SKILL_DIR/scripts/ros1_env_check.sh"

步骤 2:验证环境

运行:

zsh "$SKILL_DIR/scripts/ros1_shell_detect.sh"
zsh "$SKILL_DIR/scripts/ros1_env_check.sh"
zsh "$SKILL_DIR/scripts/ros1_graph_probe.sh" topic

若缺少 ROS 命令,根据 shell 检测器输出判断机器需要 setup.bash 还是 setup.zsh,然后先 source ROS。

典型模式:

source /opt/ros/noetic/setup.zsh

若存在工作区叠加,先 source 基础,再 source 叠加。

步骤 3:选择项目画像

  • A. 启动/构建:catkin 工作区、包依赖、launch 文件。
  • B. 运行时调试:topic/service/action、tf 树、节点健康。
  • C. 运动控制:速度/关节命令并带反馈检查。
  • D. 数据管道:rosbag 录制/回放、离线分析。
  • E. OpenClaw 集成:rosbridge websocket 适配与意图映射。
  • F. 架构/性能:nodelet、回调线程、message_filters、dynamic_reconfigure。
  • G. 迁移规划:ROS1 遗留维护与 ROS1→ROS2 过渡策略。

详细命令见 references/project-profiles.md。如需完整 ROS1 覆盖(核心图、launch、tf/tf2、action、bag、诊断、网络),加载 references/ros1-full-scope.md

步骤 4:按画像执行

A) 启动/构建

  • bringup 指将 ROS 系统启动到可运行状态:source ROS、识别工作区、按需构建、查找 launch 文件、启动节点、确认图健康。
  • 验证工作区结构与包可发现性。
  • 先用 scripts/ros1_workspace_probe.sh 检测工作区/构建策略。
  • 启动或重建项目前运行 scripts/ros1_bringup_check.sh
  • 对于 OpenClaw 风格工具,使用运行时循环:ros1_start_target.shros1_runtime_health_check.shros1_stop_target.sh
  • 使用检测到的 catkin 命令构建,首次报错即停止。
  • 运行前发现并验证 launch 文件。

最小运行时循环示例:

zsh "$SKILL_DIR/scripts/ros1_start_target.sh" \
  --workspace /path/to/ws \
  --package my_pkg \
  --launch demo.launch

zsh "$SKILL_DIR/scripts/ros1_runtime_health_check.sh" \ --state-file /tmp/ros1_skill_runtime//state.env \ --expect-topic /rosout

zsh "$SKILL_DIR/scripts/ros1_stop_target.sh" \ --state-file /tmp/ros1_skill_runtime//state.env

B) 运行时调试

  • 确认图可见性(rosnode listrostopic list)。
  • 检查关键 topic 的类型/频率/带宽。
  • 验证 tf 可用性与坐标系一致性。

C) 运动控制

  • 验证命令 topic 类型及活跃订阅者。
  • scripts/ros1_interface_check.sh 显式校验关键接口类型。
  • 若请求距离/角度,优先采用闭环运动。
  • 保持保守默认值,始终发送显式停止。

先用接口/类型检查,再运行运动脚本(移动底盘画像):

zsh "$SKILL_DIR/scripts/ros1_interface_check.sh" topic /cmd_vel geometry_msgs/Twist

python3 "$SKILL_DIR/scripts/move_forward_by_odom.py" \ --cmd-topic /cmd_vel \ --odom-topic /odom \ --distance 1.0 \ --speed 0.2

D) 数据管道

  • 仅录制必需 topic(除非要求,否则避免“全部录制”)。
  • 回放场景下确认时钟/时间行为。
  • 记录 bag 元数据与重放命令,确保可复现。

E) OpenClaw 集成(ROS1)

  • rosbridge 是 websocket 桥,让 OpenClaw 或其他外部客户端无需编写原生 rospy/roscpp 即可向 ROS 图发布/订阅/调用。
  • 启动 ROS1 rosbridge websocket。
  • 在将任何端点暴露给 OpenClaw 前,先做 ROS 图预检。
  • 用显式模板将高级意图映射到 ROS1 topic/service/action 操作。
  • 对每个运动意图强制执行安全停止语义、超时与断开行为。

references/ros1-openclaw-adapter.md

F) 架构 / 性能

  • 强制单一职责节点边界。
  • 高频率传感器 topic 要有意设置队列长度。
  • 使用 message_filters 做传感器时间同步。
  • 采用回调线程模式(MultiThreadedSpinner/工作队列)。
  • 大进程内数据且零拷贝重要时,使用 nodelet。
  • 使用 dynamic_reconfigure 运行时调参,而非硬编码常数。

references/ros1-engineering-patterns.md

G) 迁移规划(ROS1 → ROS2)

  • 迁移前先捕获当前 ROS1 接口(topic/service/action/参数)。
  • 优先从叶节点向内分阶段迁移。
  • 需要混合 ROS1/ROS2 运行时使用桥接期规划。

references/ros1-engineering-patterns.md 迁移章节。

步骤 5:安全与质量关卡

  • 函数退出时绝不让机器人/控制器继续运动。
  • 每个长时命令都加超时。
  • 遥测陈旧或缺失时快速失败。
  • 报告实测结果(不仅是“成功”)。
  • 启动长进程时,持久化 pid/日志/状态元数据,以便后续健康检查与停止动作使用同一句柄。
  • 对安装包、需 sudo、更改系统配置或真实世界移动硬件的命令,先征求确认。
  • 任何具破坏性或状态化的 ROS 动作前,优先干运行检查。

步骤 6:参考资料

  • 官方 ROS 文档与包索引链接:references/official-docs.md
  • 完整 ROS1 能力映射与命令矩阵:references/ros1-full-scope.md
  • 工程模式与迁移手册:references/ros1-engineering-patterns.md
  • 项目画像检查清单与命令模板:references/project-profiles.md
  • OpenClaw↔ROS1 适配蓝图:references/ros1-openclaw-adapter.md
  • ROS1 知识库来源清单(已审核官方页面):references/ros1-knowledge-base-sources.md

若官方站点无法直接抓取,使用主机运行时实际暴露的任何浏览或浏览器自动化工具。不要假定主机未提供的工具名称。

数据来源ClawHub ↗ · 中文优化:龙虾技能库