ROS编程基础

推荐平台:ROS官方平台
安装地址
Ubuntu ROS Melodic安装地址
需要了解需要使用的工具,使用的包ROS Tutorials

基于TCP的通讯方式,需要有多个节点进行管理主节点,他是开辟一个master节点,这个节点是每一个节点在创建向主节点进行注册,高速有那个node,node名字是什么,地址是什么。他存在内部端口号,其他的node会向其注册。

存在问题:

  1. TCP是具有延迟的,这就是为啥无人驾驶要将其替换掉,替换到主节点上。
  2. 如果主节点down掉了,那么可想而之,整个系统瘫痪了,其实是一个依赖于主节点的。完全重启主节点,还要重启其他的node,因为是需要重新注册。
roscore

发布一个rosbag

rosbag play 2022-06-30-15-32-46_1.bag

有哪些发布的topic

rostopic list

查看发布的rostopic 的类型,返回ros msg的格式

rostopic type /rslidar_points

发布频率,真实采集的激光雷达的频率

rostopic hz  /rslidar_points

查看topic的内容,可以查看其数据

rostopic echo  /rslidar_points

想知道这个节点是谁发布的:info

rostopic info /rslidar_points

查看支持的消息类型

rosmsg

rosbag

查看相应的订阅话题并且记录下来

扫描二维码关注公众号,回复: 14643940 查看本文章
rosbag record /rslidar_points

想知道这个包里面有哪些内容:info,有哪些数据,数据有多少帧,数据类型是什么

rosbag info /rslidar_points

如何可视化节点RVIZ

查看ros自带的消息类型,通过topic进行添加,比如添加我们的双目相机的其中的一个image

rviz

在这里插入图片描述
ros有自带的支持的可视化的发布可以看到每一帧的帧数据的时间戳,可以清楚的看到有一些时间戳是同步的。可以相应的做一些时间同步和时间校准。

rqt_bag 2020-01-07-15XXX.bag

在这里插入图片描述
在这种情况可以查看

rostopic info /rslidar_points

在这里插入图片描述
在这个过程中,我们可以看到有发布方和订阅方

通过rqt_graph查看目前发布的节点。进行可视化节点,发布的情况。

rosrun rqt_graph rqt_graph
roslaunch rslidar_pointcloud rs_lidar_32.launch

在这里插入图片描述
如何构建整个包

cd catkin_ws/
ls
cd src
ls
cd ..

后面做的整个过程中,CMakeLists.txt里面有哪些库,并且如何编译。可以进行添加包,package 规定了内部需要哪些组件。

猜你喜欢

转载自blog.csdn.net/weixin_44497198/article/details/125547045
今日推荐