ros2命令行工具与 turtlesim
第 2 章 命令行工具与 turtlesim学习目标用ros2 run启动节点用ros2 node查看节点信息用ros2 topic查看和发布话题数据用ros2 service、ros2 action、ros2 param与服务/动作/参数交互用rqt_graph可视化节点图1. 启动 turtlesimturtlesim 是一个专门用来学习 ROS 2 的轻量模拟器一只小乌龟可以在蓝色画布上游动并留下轨迹。启动它ros2 run turtlesim turtlesim_noderos2 run 功能包名 可执行文件名是运行节点的基本命令。此时桌面上应该出现乌龟窗口。再打开一个终端进入容器启动键盘遥控器dockerexec-itros2_learningbashsource/opt/ros/jazzy/setup.bash ros2 run turtlesim turtle_teleop_key在遥控器窗口里按方向键乌龟就会游动。提示第一个终端要一直保持运行turtlesim_node所有“第二个终端”命令都指新开的这个终端。2. 查看节点在第二个终端里ros2nodelist输出类似/teleop_turtle /turtlesim查看单个节点的详细信息ros2nodeinfo /turtlesim输出会列出这个节点发布/订阅的话题、提供的服务等——这就是节点“接线图”的文字版。3. 话题操作列出当前所有话题ros2 topic list ros2 topic list-t# 连同消息类型一起显示你会在输出中看到/turtle1/cmd_vel速度指令和/turtle1/pose乌龟位姿等话题。实时查看话题数据按CtrlC停止ros2 topicecho/turtle1/pose操作键盘让乌龟动一下可以看到位姿数据不断刷新x: 5.544444561004639 y: 5.544444561004639 theta: 0.0查看话题的详细信息发布者、订阅者、消息类型ros2 topic info-v/turtle1/cmd_vel统计消息发布频率ros2 topic hz /turtle1/pose直接向话题发布数据不需要写任何代码ros2 topic pub /turtle1/cmd_vel geometry_msgs/msg/Twist{linear: {x: 2.0}, angular: {z: 1.0}}这条命令让乌龟一边前进一边转弯。命令里{linear: {x: 2.0}, angular: {z: 1.0}}是 Twist 消息的字段值线速度 2 m/s、角速度 1 rad/s。4. 服务操作列出所有服务ros2servicelist查看服务类型ros2servicetype/spawn调用服务在 (2, 2) 位置生成一只新乌龟ros2servicecall /spawn turtlesim/srv/Spawn{x: 2, y: 2, theta: 0.2}调用服务清空轨迹ros2servicecall /clear std_srvs/srv/Empty{}注意服务的调用方式是ros2 service call 服务名 类型 参数。5. 动作操作列出所有动作ros2 action list ros2 action list-t# 连同类型调用动作让乌龟原地旋转 90 度约 1.57 弧度可以观察到进度反馈ros2 action send_goal /turtle1/rotate_absolute turtlesim/action/RotateAbsolute{theta: 1.57}6. 参数操作查看节点的参数ros2 param list /turtlesim读取参数ros2 param get /turtlesim background_b修改参数把背景改成红色系ros2 paramset/turtlesim background_r200设置后乌龟窗口背景立即变化——参数让程序运行中可以调配置。7. 用 rqt_graph 可视化装好工具后如缺失可执行sudo apt install -y ros-jazzy-rqt-graphrqt_graph会弹出一个窗口以图形方式显示节点、话题、服务的连接关系。绿色椭圆是节点彩色连线是话题/服务把鼠标放上去可以看到消息类型。这是理解 ROS 2 架构最好的工具之一。8. 本章小结常用命令速查目的命令运行节点ros2 run 包名 可执行名列出节点ros2 node list节点详情ros2 node info 节点名列出话题ros2 topic list -t查看话题内容ros2 topic echo 话题手动发布ros2 topic pub 话题 类型 {...}调用服务ros2 service call 服务名 类型 {...}发送动作ros2 action send_goal 动作名 类型 {...}查看/设置参数ros2 param list/get/set 节点名 ...可视化rqt_graph常见问题现象原因与解决办法ros2 node list只有/ROS 环境未加载或节点不在同一个 DDS 域先source /opt/ros/jazzy/setup.bash并确认两个终端在同一个容器里键盘遥控没反应光标要先点击遥控器终端窗口另外确认 turtlesim_node 还开着package turtlesim not found执行sudo apt install -y ros-jazzy-turtlesim找不到命令rqt_graph执行sudo apt install -y ros-jazzy-rqt-graph练习题用ros2 service call /spawn生成两只乌龟说说生成后节点列表和话题列表有什么变化。用一条ros2 topic pub命令让乌龟画一个圆再用/clear清空后画一个反向的圆。打开rqt_graph观察按下键盘时哪两个节点之间出现了数据流动。

相关新闻

昆泰芯 KTH1711|1.8~5.5V/-40~125℃单 S 极低功耗霍尔开关 SOT23-3L/TO92S TWS 水表笔记本磁吸场景分享

昆泰芯 KTH1711|1.8~5.5V/-40~125℃单 S 极低功耗霍尔开关 SOT23-3L/TO92S TWS 水表笔记本磁吸场景分享

一、产品整体概述 KTH1711 是昆泰芯微电子专为电池供电小型便携设备打造的单 S 极定向霍尔开关,芯片采用成熟 CMOS 霍尔工艺,片内完整集成霍尔感应电桥、失调电压抑制单元、全域温度补偿电路、唤醒休眠分时时钟、两级信号放大器、电压比较器与 CMOS 推挽…

2026/8/2 6:08:46 阅读更多 →
AI标签自动分类效率提升300%:从零搭建高精度分类 pipeline 的7步黄金流程

AI标签自动分类效率提升300%:从零搭建高精度分类 pipeline 的7步黄金流程

更多请点击: https://intelliparadigm.com 第一章:AI标签自动分类效率提升300%:从零搭建高精度分类 pipeline 的7步黄金流程 构建一个高精度、低延迟的AI标签自动分类pipeline,关键在于数据、模型与工程三者的协同优化。我们实测…

2026/8/2 6:08:46 阅读更多 →
深入解析F28335存储器架构:从地址映射到实战优化与避坑指南

深入解析F28335存储器架构:从地址映射到实战优化与避坑指南

1. 从“地址”说起:为什么F28335的存储器布局是开发第一课?如果你刚开始接触TI的TMS320F28335这颗经典的DSP芯片,可能会觉得它和普通的单片机差不多,无非是写写代码、调调外设。但当你第一次尝试把程序从RAM搬到FLASH里运行&#…

2026/8/2 6:08:46 阅读更多 →

最新新闻

配置管理全解析:从环境隔离到安全实践,构建可靠软件交付基石

配置管理全解析:从环境隔离到安全实践,构建可靠软件交付基石

1. 项目概述:为什么“配置”是技术人的基本功与分水岭“配置”这个词,听起来平平无奇,甚至有些枯燥。在很多新手眼里,它可能就是照着文档复制粘贴几行代码,改几个参数。但在我十多年的开发生涯里,我见过太多…

2026/8/2 7:03:09 阅读更多 →
泛型类与类型安全详解

泛型类与类型安全详解

执行上述 Java 程序清单&#xff0c;每个清单的核心概念、代码要点及运行结果如下&#xff1a; Listing 1: 基本泛型类 概念&#xff1a;定义了一个泛型类 Gen<T>&#xff0c;其中 T 是类型参数&#xff0c;在实例化时被具体类型&#xff08;如 Integer、String&#x…

2026/8/2 7:03:09 阅读更多 →
泛微·令信通统一身份管控系统应用场景介绍

泛微·令信通统一身份管控系统应用场景介绍

> 账号分散风险凸显&#xff0c;泛微令信通如何构建身份安全体系&#xff1f;> 泛微令信通统一身份管控&#xff0c;赋能全场景可信安全访问一、引言/背景概述随着数字经济与实体经济深度融合&#xff0c;组织数字化转型进入深水区&#xff0c;OA、ERP、CRM、HRM等业务系…

2026/8/2 7:03:09 阅读更多 →
似乎没人用4*4卷积了!cifar10训练上82

似乎没人用4*4卷积了!cifar10训练上82

平时用惯了两个线性层结尾&#xff1a;layers.emplace_back(std::make_shared<Linear>(cublas, batch, 128 * 64, 500)); layers.emplace_back(std::make_shared<LeakyRL>(cudnn, batch, 500, 1, 1));layers.emplace_back(std::make_shared<Linear>(cubla…

2026/8/2 7:03:09 阅读更多 →
什么是二月闹,宝宝整夜哭闹怎么办,附益健星胀气贴使用规范

什么是二月闹,宝宝整夜哭闹怎么办,附益健星胀气贴使用规范

二月闹&#xff0c;是育儿圈对婴儿出生后第 2 个月左右出现频繁、阵发性、以夜间为主的哭闹现象的通俗称呼&#xff0c;多与肠胀气、肠绞痛等因素相关。本词条整理其定义、识别要点、居家缓解方法、外用辅助护理用品的选择与使用规范&#xff0c;以及需要就医的判断标准。识别要…

2026/8/2 7:03:09 阅读更多 →
ODYSSEY-X86J41x5 GPIO开发指南:从Libmraa安装到PWM、I2C实战

ODYSSEY-X86J41x5 GPIO开发指南:从Libmraa安装到PWM、I2C实战

1. 项目缘起&#xff1a;为什么要在ODYSSEY - X86J41x5上折腾GPIO&#xff1f;如果你和我一样&#xff0c;是从传统的树莓派、Arduino或者STM32这类微控制器平台玩过来的&#xff0c;第一次拿到ODYSSEY - X86J41x5这样的x86架构单板计算机时&#xff0c;可能会有点懵。这块板子…

2026/8/2 7:02:09 阅读更多 →

日新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流&#xff1a;一个核心问题的诞生想象一下&#xff0c;你是一个城市供水系统的总工程师。你的城市有多个水源&#xff08;水库&#xff09;&#xff0c;需要通过一个复杂的地下管道网络&#xff0c;将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/2 0:00:38 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/2 0:00:38 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起&#xff1a;为什么我们需要互相关几年前&#xff0c;我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号&#xff0c;理论上它们接收到的声音波形应该非常相似&#xff0c;只是由于麦克风位置不同&#xff…

2026/8/2 0:00:38 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流&#xff1a;一个核心问题的诞生想象一下&#xff0c;你是一个城市供水系统的总工程师。你的城市有多个水源&#xff08;水库&#xff09;&#xff0c;需要通过一个复杂的地下管道网络&#xff0c;将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/2 0:00:38 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/2 0:00:38 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起&#xff1a;为什么我们需要互相关几年前&#xff0c;我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号&#xff0c;理论上它们接收到的声音波形应该非常相似&#xff0c;只是由于麦克风位置不同&#xff…

2026/8/2 0:00:38 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速&#xff1a;macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/2 6:34:16 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南&#xff1a;3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗&#xff1f;ncmdump解密工具帮你轻松解决这个困…

2026/8/2 2:47:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片&#xff1a;为英语学习 App 打造桌面级学习助手适用平台&#xff1a;HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0&#xff08;API 26 Beta&#xff09;新增了 AgentCard 智能体卡片能力&#xff0c;这是继 HMAF&#xff08;鸿蒙智能体框架&#x…

2026/8/2 0:23:22 阅读更多 →