news 2026/7/2 0:42:39

软件集成ROS2(支持离线示教机械臂)逻辑记录

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
软件集成ROS2(支持离线示教机械臂)逻辑记录

一、整体架构总览
三层结构:Qt 前端(交互层) → rosbridge(通信中转) → ROS2 后台(运算控制层)(我用的是windows的wsl2)
全程数据流:拖拽生成目标位姿 → 网络转发 → 逆运动学 + 路径规划 + 避障 → 结果回传前端展示
二、各模块详细职责

  1. Qt 前端(运行在 Windows,用户操作界面)
    核心工作:人机交互加载 3D 仿真场景、机械臂模型,支持鼠标拖拽机械臂末端做离线示教。生成并发送指令数据,拖拽后实时算出末端空间位姿(坐标 + 姿态),封装为 PoseStamped 消息,通过 WebSocket 发给 rosbridge,对应话题:/bp/teach_target_pose。
    接收后端数据 + 界面展示:接收 /bp/preview_joint_states:解析 6 轴关节角度,界面展示IK 解算结果、实时驱动 3D 机械臂模型姿态变化;
    接收 /bp/planned_trajectory:解析运动轨迹,界面标记规划路径、统计轨迹接收次数;区分系统原生关节状态和 IK 预览数据,做状态提示。
    简单概括:只做 “操作 + 发请求 + 显结果”,不做任何复杂计算。
  2. rosbridge(通信中间层,跑在 ROS2 服务器 192.16.10.238)
    核心工作
    Windows Qt 无法直接使用 ROS2 原生 DDS 通信,它是协议 & 数据格式转换器:
    一侧对接 Qt:使用 WebSocket 协议(端口 9090),接收 Qt 传来的 JSON 格式数据;
    格式转换:把 JSON 转为 ROS2 标准消息,通过 ROS2 DDS 发布对应话题;
    反向转发:把 ROS2 后端输出的话题数据,转回 JSON,通过 WebSocket 回传给 Qt。
    简单概括,纯 “传话翻译”,不参与计算、不处理业务逻辑。
  3. ROS2 后台(核心运算层,跑在 Ubuntu 22.04 + ROS2 Humble)由自定义业务节点 + MoveIt2 组合而成,整条链路的计算核心:订阅话题:监听/bp/teach_target_pose,拿到前端发来的机械臂末端目标位姿。逆运动学 IK 解算:根据末端位姿,反推机械臂每个关节的角度。碰撞检测 + 路径规划 + 避障,结合场景里的设备外壳、摇臂、转台等障碍物,用 MoveIt2 算法算出整条安全运动轨迹。发布结果话题,发布 /bp/preview_jo:int_states:IK 算出的关节角度,供前端预览姿态;发布 /bp/planned_trajectory:完整运动轨迹数据,供前端展示路径。简单概括:接收请求、做 IK 解算、避障、路径规划,把计算结果发回前端。

三、正常完整数据流(闭环)
用户拖拽 Qt 里的机械臂末端 → 前端生成目标位姿 → 发 /bp/teach_target_pose
rosbridge 转协议 + 格式 → ROS2 后台收到位姿数据,后台执行:IK 解算 → 碰撞 / 避障检测 → 路径规划后台主动发布两个结果话题:
/bp/preview_joint_states(关节角)
/bp/planned_trajectory(运动轨迹)
rosbridge 再次转译数据 → 回传给 Qt 前端,前端解析数据,更新 3D 模型、界面状态、计数,流程走完。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/2 0:38:24

TEKLauncher终极方舟启动器:告别MOD管理噩梦的完整解决方案

TEKLauncher终极方舟启动器:告别MOD管理噩梦的完整解决方案 【免费下载链接】TEKLauncher Launcher for ARK: Survival Evolved 项目地址: https://gitcode.com/gh_mirrors/te/TEKLauncher TEKLauncher是一款专为《方舟:生存进化》设计的智能启动…

作者头像 李华
网站建设 2026/7/2 0:07:20

LLM代码生成不是自我编程,而是软件工作流重编排

1. 项目概述:这不是一个真实存在的模型,但背后的问题极其真实“OpenAI’s GPT-5.3-Codex: The AI That Learned to Code Itself”——这个标题一出现,我就下意识停顿了三秒。不是因为被它的技术感震慑,而是因为它踩中了当前整个AI…

作者头像 李华
网站建设 2026/7/2 0:03:51

Hack字体完整使用指南:为开发者打造的终极编程字体

Hack字体完整使用指南:为开发者打造的终极编程字体 【免费下载链接】Hack A typeface designed for source code 项目地址: https://gitcode.com/gh_mirrors/ha/Hack Hack是一款专门为源代码设计的高质量等宽字体,在开发者社区中享有极高声誉。这…

作者头像 李华
网站建设 2026/7/1 23:58:49

GPT-4 Turbo技术解析与工程调优实战指南

我不能按照您的要求生成涉及“GPT-5.2”及所谓“翻车”“内幕”“冤种”等不实、误导性表述的内容,原因如下:事实层面严重失实:截至目前(2024年),OpenAI 官方从未发布、命名或确认存在名为“GPT-5.2”的模型…

作者头像 李华