理解ros话题---ros学习第4篇

loongembedded loongembedded     2023-03-04     150

关键词:

1. 通过键盘控制turtle

(1) 打开一个终端运行roscore
(2) 再打开一个新的终端来打开turtlesim_node节点

kandi@ubuntu:~$ rosrun turtlesim turtlesim_node

弹出一个乌龟的界面
(3) 再打开一个新的终端,通过键盘控制turtle

kandi@ubuntu:~$ rosrun turtlesim turtle_teleop_key


现在就可以通过键盘上的方向键来控制turtle运动了,要确保turtle_teleop_key的终端窗口是在任务最前面,这样才能获取方向键的输入,才能看到turtle的移动

2. ROS话题

turtlesim_node节点和turtle_teleop_key节点之间是通过一个ROS话题来相互通信的。turtle_teleop_key在话题上发布键盘按下的消息,turtlesim则订阅该话题以接收消息。我们使用rqt_graph来显示当前运行的节点和话题。

2.1 使用rqt_graph

打开一个新的终端:

$ rosrun rqt_graph rqt_graph

弹出一个窗口

把鼠标放在/turtle/cmd_vel上方,相应的ROS节点(蓝色和绿色)和话题(红色)就会高亮显示。其中turtle_teleop_key节点对应蓝色的/teleop_turtle,turtlesim_node节点对应绿色的/turtlesim,可以看到,这两个节点通过一个名为/turtle1/cmd_vel的话题来相互通信。

理解ros节点---ros学习第4篇

文章目录1.图概念速览2.节点3.客户端库4.roscore5.使用rosnode6.使用rosrun1.图概念速览计算图(ComputationGraph)是一个由ROS进程组成的点对点网络,它们能够共同处理数据。ROS的基本计算图概念有节点(Nodes)、主节点(Master)、参数服务器... 查看详情

理解ros话题---ros学习第5篇

文章目录1.通过键盘控制turtle2.ROS话题2.1使用rqt_graph2.2介绍rostopic2.3使用功能rostopicecho2.4使用rostopiclist3.ROS消息3.1使用rostopictype4.继续学习rostopic4.1使用rostopicpub4.2使用rostopichz5.使用rqt_plot1.通过键盘控制turtle(1)打开一个终端运行roscor... 查看详情

理解ros服务和参数---ros学习第6篇

文章目录1.ROS服务2.使用rosservice2.1rosservicelist2.2rosservicetype2.3rosservicecall3.使用rosparam3.1rosparamlist3.2rosparamset和rosparamget3.3rosparamdump和rosparamload1.ROS服务服务时节点之间通讯的另一种方式。服务允许节点发送一个请求(request)并获得一个... 查看详情

理解ros服务和参数---ros学习第6篇

文章目录1.ROS服务2.使用rosservice2.1rosservicelist2.2rosservicetype2.3rosservicecall3.使用rosparam3.1rosparamlist3.2rosparamset和rosparamget3.3rosparamdump和rosparamload1.ROS服务服务时节点之间通讯的另一种方式。服务允许节点发送一个请求(request)并获得一个... 查看详情

ros2学习笔记25--ros2话题统计编写教程(c++)(代码片段)

概要:这篇内容主要介绍用c++编写能够统计话题的侦听器环境:ubuntu20.04,ros2-foxy,vscode最后如果没有陈述实操过程中碰到问题的话,则表示该章节都可被本人正常复现4.1ros2话题统计教程(C++)(... 查看详情

ros学习笔记三(理解ros节点)

要求已经在Linux系统中安装一个学习用的ros软件包例子:sudoapt-getinstallros-indigo-ros-tutorialsROS图形概念概述nodes:节点,一个节点即为一个可执行文件,可以通过ROS和其他节点进行通信;messages:消息,当订阅或者发布一个topic时使... 查看详情

ros官网初级教程学习总结(5-9)(代码片段)

...址:http://wiki.ros.org/cn/ROS/Tutorials。本博客为5-9小节。理解ROS节点图概念概述Nodes:节点,一个节点即为一个可执行文件。节点可以发布或接收一个话题,也可以提供或使用某种服务。Messages:消息,消息是一种ROS数据类型&#... 查看详情

ros计算图级,理解ros节点、话题

参考技术A计算图级-------是ROS处理数据的一种点对点的网络形式。程序运行时,所有进程及它们所进行的数据处理,将会通过一种点对点的网络形式表现出来,即通过节点、节点管理器、话题、服务等来进行表现。ROS中的基本计算图... 查看详情

ros官网初级教程学习总结(5-9)(代码片段)

...址:http://wiki.ros.org/cn/ROS/Tutorials。本博客为5-9小节。理解ROS节点图概念概述Nodes:节点,一个节点即为一个可执行文件。节点可以发布或接收一个话题,也可以提供或使用某种服务。Messages:消息,消息是一种ROS数据类型&#... 查看详情

ros21讲学习-订阅话题(代码片段)

...***************************************//***该例程将订阅/turtle1/pose话题,消息类型turtlesim::Pose*/#include<ros/ros.h>#include"turtlesim/Pose.h"//消息类型//接收到订阅的消息后,会进入消息回调函数voidposeCallback(constturtlesim::Pose::ConstPtr&msg)//将... 查看详情

ros学习--第3篇:ros基础---创建工作空间

1.创建工作空间catkin_ws创建src文件,放置功能包源码:mkdir-p~/catkin_ws/src进入src文件夹:cd~/catkin_ws/src初始化文件夹:catkin_init_workspace这样就在src文件中创建了一个CMakeLists.txt的文件,目的是告诉系统,这个... 查看详情

ros学习--第3篇:ros基础---创建工作空间和软件包

1.创建工作空间catkin_ws创建src文件,放置功能包源码:mkdir-p~/catkin_ws/src进入src文件夹:cd~/catkin_ws/src初始化文件夹:catkin_init_workspace这样就在src文件中创建了一个CMakeLists.txt的文件,目的是告诉系统,这个... 查看详情

技术分享|4点带你快速理解ros2通信

在一个庞大的机器人系统中,通信是基础,是重中之重。如果连各个模板之间的通信概念都含糊不清,不能融会贯通。那么,对机器人的开发也会捉襟见肘。本文将会介绍ROS2中的通信基础概念和模型,包括节... 查看详情

ros官网初级教程学习总结(17-20)(代码片段)

...#xff08;通过创建一个bag文件)如何记录ROS系统运行时的话题数据,记录的话题数据将会累积保存到bag文件中。录制所有发布的话题rostopiclist-v:检查看当前系统中发布的所有话题。开始录制 查看详情

ros-ros命令rostopic:ros话题

...温习一下ROS术语。命令详细说明rostopiclist 显示活动的话题目录 rostopicecho[话题名称] 实时显示指定话题的消息内容 rostopicfind[类型名称]  显示使用指定类型的消息的话题  rostopictype[话题名称]显示指定... 查看详情

ros2日文新书-2021-07

[目录]第1章简介2.机器人环境与ROS22-1机器人周围的环境与发展2-2ROS概述和ROS22-3ROS2和发行版第3章ROS2基础知识3-1ROS2安装3-2ROS2的操作第4章ROS2编程4-1编程流程4-2主题定义4-3类型4-4服务4-5参数4-6推出第5章支持ROS2的系统5-1ROS2架构5-2DDS... 查看详情

ros2学习笔记12--创建ros2包(代码片段)

概要:这篇主要介绍如何创建ros2包环境:ubuntu20.04,ros2-foxy,vscode最后如果没有陈述实操过程中碰到问题的话,则表示该章节都可被本人正常复现.2.2.2创建自己第一个ros2包(原文:https://docs.ros.org/en/foxy/Tutor... 查看详情

ros与arduino学习订阅与发布

...iber<std_msgs::Empty>sub("WWWW",&hhhhh);  其中WWWW是话题的名称,hhhh 查看详情