首页 > 其他分享 >ROS的通讯机制(一):常用命令

ROS的通讯机制(一):常用命令

时间:2024-09-16 12:53:21浏览次数:10  
标签:通讯 rosparam list 命令 rosservice rostopic 常用命令 ROS rosmsg

        一、rosnode : 操作节点

        rosnode 是用于获取节点信息的命令。

相关命令:

rosnode ping        测试到节点的连接状态
rosnode list        列出活动节点
rosnode info        打印节点信息
rosnode machine     列出指定设备上节点
rosnode kill        杀死某个节点
rosnode cleanup     清除不可连接的节点

注意 rosnode cleanup命令:

        清除无用节点,启动乌龟节点,然后 ctrl + c 关闭,该节点并没被彻底清除,可以使用 cleanup 清除节点

        二、rostopic : 命令行工具

        rostopic包含rostopic命令行工具,用于显示有关ROS 主题的调试信息,包括发布者,订阅者,发布频率和ROS消息。它还包含一个实验性Python库,用于动态获取有关主题的信息并与之交互。 

相关命令:

rostopic list   显示所有活动状态下的主题
rostopic bw     显示主题使用的带宽
rostopic delay  显示带有 header 的主题延迟
rostopic echo   打印消息到屏幕
rostopic find   根据类型查找主题
rostopic hz     显示主题的发布频率
rostopic info   显示主题相关信息
rostopic pub    将数据发布到主题
rostopic type   打印主题类型
         2.1  rostopic list(-v)命令:

        可以直接调用,控制台将打印当前运行状态下的主题名称

        rostopic list -v :获取话题详细信息

         2.2   rostopic pub命令:

        可以直接调用命令向订阅者发布消息。

        为roboware 自动生成的 发布/订阅 模型案例中的 订阅者 发布一条字符串

        调用格式:

rostopic pub /主题名称 消息类型 消息内容
rostopic pub /chatter std_msgs gagaxixi

        三、rosmsg命令:命令行工具

        rosmsg是用于显示有关 ROS消息类型的 信息的命令行工具。

相关命令:

rosmsg show         显示消息描述
rosmsg info         显示消息信息
rosmsg list         列出所有消息
rosmsg md5          显示 md5 加密后的消息
rosmsg package      显示某个功能包下的所有消息
rosmsg packages     列出包含消息的功能包
        3.1 rosmsg package命令:

        列出某个包下的所有msg:

//rosmsg package 包名 
rosmsg package turtlesim

        四、rosservice命令:命令行工具

        rosservice包含用于列出和查询ROSServices的rosservice命令行工具。

rosservice args    打印服务参数
rosservice call    使用提供的参数调用服务
rosservice find    按照服务类型查找服务
rosservice info    打印有关服务的信息
rosservice list    列出所有活动的服务
rosservice type    打印服务类型
rosservice uri     打印服务的 ROSRPC uri

  注意:调用部分服务时,如果对相关工作空间没有配置 path,需要进入工作空间调用命令:

source ./devel/setup.bash

        五、rossrv命令: 命令行工具

        rossrv是用于显示有关ROS服务类型的信息的命令行工具,与 rosmsg 使用语法高度雷同。

        相关命令:

rossrv show        显示服务消息详情
rossrv info        显示服务消息相关信息
rossrv list        列出所有服务信息
rossrv md5         显示 md5 加密后的服务消息
rossrv package     显示某个包下所有服务消息
rossrv packages    显示包含服务消息的所有包

        六、rosparam命令:

        rosparam包含rosparam命令行工具,用于使用YAML编码文件在参数服务器上获取和设置ROS参数。

        相关命令:

rosparam set         设置参数
rosparam get         获取参数
rosparam load        从外部文件加载参数
rosparam dump        将参数写出到外部文件
rosparam delete      删除参数
rosparam list        列出所有参数
        6.1 rosparam list命令  列出所有参数
rosparam list

//默认结果
/rosdistro
/roslaunch/uris/host_helloros_virtual_machine__42911
/rosversion
/run_id
        6.2  rosparam set命令:设置参数
rosparam set name huluwa

//再次调用 rosparam list 结果
/name
/rosdistro
/roslaunch/uris/host_helloros_virtual_machine__42911
/rosversion
/run_id

     以上命令在后期讲解通讯机制会被调用。

标签:通讯,rosparam,list,命令,rosservice,rostopic,常用命令,ROS,rosmsg
From: https://blog.csdn.net/m0_73900651/article/details/142301256

相关文章

  • 小米SUV最新谍照曝光:动感设计,疑似对标法拉利Purosangue
    9月16日最新动态,知名汽车博主@电动星球小新今日分享了一组小米首款SUV车型的路试谍照。从公布的图片中可以看出,小米SUV呈现出强烈的运动风格,与奥迪A4Avant并列停放时,更能凸显其偏向年轻化和动感的设计理念,有网友戏称其颇有几分法拉利Purosangue的味道。车身设计与特征溜背......
  • ROS2图形化方式新建功能包工具- Turtle Nest
    提示:全文AI生成。链接:https://github.com/Jannkar/turtle_nest配置TurtleNest使用说明(中文版)一、TurtleNest简介正如海龟巢是幼海龟的诞生地,ROS2TurtleNest是ROS2包的诞生和成长之地。TurtleNest提供了一个易用的图形用户界面(GUI),简化了ROS2包的创建......
  • 推荐一个比较好用的工具Microsoft PowerToys
    MicrosoftPowerToys是一组实用工具,可帮助高级用户调整和简化其Windows体验,从而提高工作效率。虽然刚刚使用这个工具不久,但是已经能初步感受到它的强大,接下来我就对于我使用的几个功能进行简单介绍。屏幕截取这个功能在日常工作中应该是经常会用到,在学生时代,使用这个功能......
  • 信息学奥赛初赛天天练-89-CSP-S2023基础题1-linux常用命令、完全平方数、稀疏图、队列
    PDF文档公众号回复关键字:202409142023CSP-S选择题单项选择题(共15题,每题2分,共计30分:每题有且仅有一个正确选项)1在Linux系统终端中,以下哪个命令用于创建一个新的目录?()AnewdirBmkdirCcreateDmkfold2从0,1,2,3,4中选取4个数字,能组成(......
  • abc370D Cross Explosion
    一开始并查集写的,ga掉。set应用一道非常好的题目。```#include<bits/stdc++.h>#include<set>#definesiiset<int>::iteratorusingnamespacestd;inth,w,q,ans;set<int>s1[400007],s2[400007];voiddel(intx,inty){//printf("%d%d\n",x,......
  • 使用 Microsoft.Extensions.ServiceDiscovery 进行服务发现并调用
    简介在现代微服务架构中,服务发现(ServiceDiscovery)是一项关键功能。它允许微服务动态地找到彼此,而无需依赖硬编码的地址。以前如果你搜.NETServiceDiscovery,大概率会搜到一大堆Eureka,Consul等的文章。现在微软为我们带来了一个官方的包:Microsoft.Extensions.ServiceDiscovery......
  • macOS 中 Rosetta 模拟器打开,造成 MLX 框架的错误
    概述背景AppleSilicon(M1,M2芯片)是基于ARM架构的,而老的IntelMac是基于x86_64架构的。Rosetta2是macOS提供的工具,用于在AppleSilicon上模拟运行x86应用程序。某些应用程序(如终端)可能默认通过Rosetta运行为x86架构,而不是ARM原生运行。在安装及编......
  • 局域网聊天工具:提升企业内部信息安全的私有化即时通讯软件
    在数字化转型的过程中,越来越多的企业依赖即时通讯工具来进行内部沟通与协作。然而,许多企业在使用的微信、钉钉等SaaS聊天工具却存在着严重的安全隐患和管理难题,这些问题不仅危及信息安全,还影响企业的整体运营效率。针对这些痛点,选择一款私有化部署的局域网聊天工具成为了企业的当务......
  • qt和西门子plc的通讯,用的snap7协议
    个人日记,主要通过s7协议进行pc和设备的连接,知道plc(我用的smart200)的地址,端口号默认102,然后通过协议里的函数进行读取数据,然后在自己编写一个数据处理的过程,得到最终的结果。出现问题:无法连接,看电脑是否与plc的地址在同一网段,win+r cmd进行去pingplc的地址,来确认是否能pi......
  • Android开发使用WebSocket时如何构建数据通讯框架
    前言之前我们介绍过服务端使用WebSocket如何设计数据框架,现在我们看看客户端如何与它通讯。如果光说要用WebSocket做一个例子,相信很多小伙伴都能搞通,网上这么多资料。随便拿一个过来,调通就行了。不过,做出来与把它做好是两码事。我们的目标是,不但要把数据调通,还要把它梳理完善......