首页 > 其他分享 >ROS2指令总结

ROS2指令总结

时间:2023-05-24 12:13:15浏览次数:31  
标签:总结 查看 -- 0.0 list 指令 ROS2 action ros2

  1. 查看功能
ros2 node list
ros2 topic list
ros2 service list
ros2 action list
查看节点信息:
ros2 node info <node_name>
  1. 话题
ros2 topic echo <topic_name>
查看话题的详细信息:
ros2 topic info <topic_name>
查看话题的数据类型:
ros2 topic list -t
查看数据类型的具体数据结构:
ros2 interface show <topic_name>
发送话题
ros2 topic pub <topic_name> <msg_type> '<args>'
例如小海龟:(冒号中间要加空格)
ros2 topic pub --once /turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 1.8}}"
按照某个频率持续发布:1hz
ros2 topic pub --rate 1 /turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 1.8}}"
查看某一个话题的发布频率
ros2 topic hz /turtle1/pose
  1. 服务
查看某一个服务的数据结构:
ros2 service type <service_name>
查看所有服务的数据类型:
ros2 service list -t
查看所有提供同样数据类型的的服务:
ros2 service find <type_name>
查看服务数据类型的具体结构:
ros2 interface show <type_name>.srv
发送服务请求:
ros2 service call <service_name> <service_type> <arguments>
<arguments>部分是可选的,比如Empty类型的服务就没有任何参数:
ros2 service call /clear std_srvs/srv/Empty
这个服务只是出发一个信号,让海龟仿真器清除海龟后边的运动轨迹,不需要传输什么数据
产生一只新的海龟:
ros2 service call /spawn turtlesim/srv/Spawn "{x: 2, y: 2, theta: 0.2, name: ''}"
  1. 动作
    action是抢占式的,后一个action的执行直接中断了前一个action的执行
查看所有动作的数据类型:
ros2 action list -t
查看action的信息:
ros2 action info <action_name>
查看action数据类型的具体信息:
ros2 interface show <action_name>.action
命令行发送action目标:
ros2 action send_goal <action_name> <action_type> <values>
例:
ros2 action send_goal /turtle1/rotate_absolute turtlesim/action/RotateAbsolute "{theta: 1.57}"
如果先要看到action中的周期反馈,以上命令还需要加一个--feedback参数:
ros2 action send_goal /turtle1/rotate_absolute turtlesim/action/RotateAbsolute "{theta: -1.57}" --feedback
  1. 参数
查看系统中的参数列表:
ros2 param list
获取参数值:
ros2 param get <node_name> <parameter_name>
设置参数值:
ros2 param set <node_name> <parameter_name> <value>
保存参数:
ros2 param dump <node_name>
加载参数文件:
ros2 run <package_name> <executable_name> --ros-args --params-file <file_name>
例:
ros2 run turtlesim turtlesim_node --ros-args --params-file ./turtlesim.yaml
  1. 日志可视化工具
ros2 run rqt_console rqt_console
  1. rqt_graph观测系统
rqt_graph
  1. 使用bag录制/回放数据
录制话题数据:
ros2 bag record <topic_name>
录制多个话题的消息:文件名叫subset
ros2 bag record -o subset /turtle1/cmd_vel /turtle1/pose
查看数据库文件:
ros2 bag info <bag_file_name>
回放数据:
ros2 bag play subset
  1. 解决依赖问题
rosdep install -i --from-path src --rosdistro galactic -y
  1. 编译
colcon build
--packages-up-to :编译指定的功能包,而不是整个工作空间
--symlink-install :节省每次重建python脚本的时间
-event-handlers console_direct+ :在终端中显示编译过程中的详细日志
  1. 设置环境变量
例:
cd ~/dev_ws
. install/setup.sh
  1. 创建功能包
在src下:
ros2 pkg create --build-type ament_cmake <package_name>

标签:总结,查看,--,0.0,list,指令,ROS2,action,ros2
From: https://www.cnblogs.com/penuel/p/17427457.html

相关文章

  • 《Linux的文件目录类指令 20条》
    文件目录类的指令1.pwd指令查看当前目录 2.ls 指令查看当前目录所有内容信息ls-a显示当前目录所有的文件和目录,包括隐藏的ls-l以列表的方式显示信息ls-al或la-al举个栗子 3.cd指令基本语法cd[参数](切换到指定目录)cd~或者cd回到自己的家目录cd../......
  • 今日总结
    今日报告代码时间:5h代码行数:不到七百行吧发表的博客:4篇遇到的问题与收获:得知老师下周一要进行测试,我连忙进行了javaweb的复习,编写了一个javaweb程序进行练习现在对于我来说,难的是JONS技术和script技术,vue也没学会......
  • 每日总结-23.5.23
    <%@pageimport="san.Thesql"%><%@pageimport="san.Pd_stu"%><%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtmlPUBLIC......
  • 每日总结2023-05-23
    今天对于javaweb进行了复习以及回忆,在进行javaweb项目中使用idea进行时,webServlet注解不能正常使用,经讨论,查找资料,发现是路径错误,应该是/包名/注解名/的格式,在使用中发生了以上错误并加以改正。packageservlet;importbean.keBean;importrepository.KeRep;importjava......
  • 软件工程课程期末总结
    通过这学期<软件工程>这门课程的学习,使我获益良多,作为一名计算机专业的学生,觉得计算机方面的东西学的实在是太少了,专业知识的浅陋让我感到有点羞愧,老师告诉我们,我们在做毕业设计时,要根据<软件工程>这门课程中的有关内容来进行文档的撰写,我学到了很多,了解到如何来写毕业......
  • 5.23每日总结
    今天学习了如何实现AndroidApp的自动登录,目前遇到了点困难,只能实现记住账户和密码不用用户再次输入的功能,还没有实现登录一次后点击应用直接进入。  ......
  • 5.23每日总结
    今天学习了如何将数据库挂到网端,具体步骤如下:在云端搭建数据库服务器搭建云端数据库服务器可以使用云服务商的数据库服务,例如:AWSRDS、阿里云RDS等。根据实际情况选择一个适合的云数据库供应商,并创建一个新的数据库实例。然后通过数据库供应商提供的远程连接工具或命令行工具,......
  • 2023.5.23每日总结
    <%@pageimport="wangzhan.Thesql"%><%@pageimport="wangzhan.Pd_P_assignment"%><%@pageimport="wangzhan.Pd_S_assignment"%><%@pagelanguage="java"contentType="text/html;charset=UTF......
  • 个人总结
    对于开课目标:对于手机上的小游戏仅仅绘制了游戏的界面xml,但由于androidstdio配置问题,导致项目被删除(当时的博客也说明了此事),也和老师当面讲清了这件事。《构建之法》这本书提出的五个问题是:如何将部分整合为一个具有执行力的整体?如何在持续改进的环境中,构建一个有效的......
  • 十大经典排序算法总结
    排序算法可以分为:内部排序:数据记录在内存中进行排序。外部排序:因排序的数据很大,内存不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序、计数排序、桶排序。其中比较类......