节点--node

节点

在 ROS 中,每个节点都应该负责一个单一的、模块化的功能,例如控制车轮电机或发布激光测距仪的传感器数据。每个节点可以通过主题(topics)、服务(services)、动作(actions)或参数(parameters)与其他节点发送和接收数据。

一个完整的机器人系统由多个协同工作的节点组成。在 ROS 2 中,一个可执行文件(C++ 程序、Python 程序等)可以包含一个或多个节点。

查看节点列表

命令 ros2 run 用于从软件包中启动可执行文件。

复制代码
ros2 run <package_name> <executable_name>

要运行 turtlesim,请打开一个新的终端,并输入以下命令:

复制代码
ros2 run turtlesim turtlesim_node

这里,包的名称是 turtlesim,可执行文件的名称是 turtlesim_node。

然而,我们仍然不知道节点的名称。你可以使用 ros2 node list 来查找节点名称。

ros2 node list 会显示所有正在运行的节点的名称。这在你想与某个节点交互时,或者在系统运行许多节点并需要跟踪它们时尤为有用。

复制代码
ros2 node list

重新映射

重新映射允许你将默认的节点属性(如节点名称、主题名称、服务名称等)重新分配为自定义值。在上一个教程中,你使用了重新映射在 turtle_teleop_key 上更改 cmd_vel 主题并指定目标为 turtle2。

现在,让我们重新分配 /turtlesim 节点的名称。在一个新的终端中,运行以下命令:

复制代码
ros2 run turtlesim turtlesim_node --ros-args --remap __node:=my_turtle

查看node 列表

查看节点信息

现在你知道了节点的名称,你可以使用以下方式获取更多关于它们的信息:

复制代码
ros2 node info <node_name>

要检查您的最新节点 my_turtle,请运行以下命令:

复制代码
ros2 node info /my_turtle
相关推荐
wdfk_prog5 天前
Wi-Fi Direct教程 01:在 Ubuntu 搭建双 mac80211_hwsim + wpa_supplicant 2.12
linux·运维·服务器·ubuntu·ros·wifi-direct
wdfk_prog13 天前
ROS教程17:Navigation / move_base——从定位、Costmap、Planner 到 cmd_vel
ros
wdfk_prog15 天前
ROS教程08:从 TransportTCP::connect() 追到 TCPROS Connection Header、序列化与 Socket 数据传输
运维·缓存·docker·容器·ros
wdfk_prog15 天前
ROS教程11.5:roscore源码阅读——从启动脚本到 Master 注册表与控制面
ros
wdfk_prog16 天前
ROS教程10:从 gtest 到 rostest——Unit Test、Node 集成测试、rosbag 与 rqt 验证闭环
运维·缓存·docker·容器·ros
wdfk_prog17 天前
ROS教程07:从 ros::start() 顺着源码读懂 Master、XML-RPC 与 Topic 注册发现
运维·缓存·docker·容器·ros
wdfk_prog17 天前
用 Git Submodule + Sparse Checkout 管理 RT-Thread:内核、BSP、第三方库与业务代码分层实践
运维·缓存·docker·容器·ros
wdfk_prog17 天前
ROS教程06:ROS1 Node 启动与停止流程
运维·缓存·docker·容器·ros
黑马水牛17 天前
Carla仿真系列:17_利用Carla仿真环境跑通3DGS——从采集360张图到高斯泼溅建模
python·ros·colmap·3dgs·新视角合成·carla仿真·三维建图
wdfk_prog19 天前
ROS教程:01 搭建 ROS1 Noetic Docker 开发环境
运维·缓存·docker·容器·ros