赞
踩
参考文章:
Ubuntu 20.04使用Livox mid 360 测试 FAST_LIO-CSDN博客
Livox mid360需要使用Livox-SDK2
,而非Livox-SDK
,以及对应的livox_ros_driver2
。
mkdir livox_ws/src
src
文件夹中下载livox_ros_driver2源码git clone https://github.com/Livox-SDK/livox_ros_driver2.git
在工程目录的livox_ws/src/livox_ros_driver2使用下面指令编译,不要直接使用catkin_make.
- cd src/livox_ros_driver2
- ./build.sh ROS1
查看接受雷达数据的网口:
ifconfig
使用以下命令安装wireshark
sudo apt-get install wireshark
运行wireshark工具
sudo wireshark
修改配置文件,打开打开文件livox_ws/src/livox_ros_driver2/config/MID360_config.json。
- {
- "lidar_summary_info" : {
- "lidar_type": 8
- },
- "MID360": {
- "lidar_net_info" : {
- "cmd_data_port": 56100,
- "push_msg_port": 56200,
- "point_data_port": 56300,
- "imu_data_port": 56400,
- "log_data_port": 56500
- },
- "host_net_info" : {
- "cmd_data_ip" : "192.168.1.5", # <-这里和修改后的电脑ip一致
- "cmd_data_port": 56101,
- "push_msg_ip": "192.168.1.5", # <-这里和修改后的电脑ip一致
- "push_msg_port": 56201,
- "point_data_ip": "192.168.1.5", # <-这里和修改后的电脑ip一致
- "point_data_port": 56301,
- "imu_data_ip" : "192.168.1.5", # <-这里和修改后的电脑ip一致
- "imu_data_port": 56401,
- "log_data_ip" : "",
- "log_data_port": 56501
- }
- },
- "lidar_configs" : [
- {
- "ip" : "192.168.1.126", # <-这里是Livox mid360的ip
- "pcl_data_type" : 1,
- "pattern_mode" : 0,
- "extrinsic_parameter" : {
- "roll": 0.0,
- "pitch": 0.0,
- "yaw": 0.0,
- "x": 0,
- "y": 0,
- "z": 0
- }
- }
- ]
- }
打开两个终端,分别运行:
- source devel/setup.bash
- roslaunch livox_ros_driver2 rviz_MID360.launch
也可以在终端对于话题数据进行打印
- rostoptic list
- rostoptic echo /livox/lidar
运行成功截图如下:
前言:录制rosbag包之前,需要先使各种传感器处于工作状态,例如Livox mid360需要启动先前安装好的驱动。此外还要确保每个传感器的时间戳同步。
- source devel/setup.bash
- roslaunch livox_ros_driver2 rviz_MID360.launch
1.1 录制所有发布出来的话题,此时默认将话题保存在一个以当时时间戳命名的文件夹中:
rosbag record -a
1.2 录制指定话题
rosbag record /topic1 /topic12 -o out.bag
2.1 基本回放
rosbag play <your bagfile name>
2.2 等待一定时间之后发布bag文件中的内容
rosbag play <your bagfile name> -d <delay time>
2.3按一定频率回放,-r选项用来设定消息发布速率,如下面命令则表示以3倍原始速率发布话题
rosbag play -r 3 <your bagfile name>
2.4 回放指定话题
rosbag play <your bagfile name> --topics <topics>
2.5 创建一个除了/tf消息的新包
rosbag filter file.bag file-no-tf.bag "topic != '/tf'"
2.6 重映射topic信息(将out.bag中point_cloud转为velodyne_points)
rosbag play out.bag /point_cloud:=/velodyne_points
2.7 播放bag并重新生成一个新包
rosbag record -O mahao_1.bag /velodyne_points
2.8 查看bag中对应topic的frame_id
rostopic echo /topic | grep frame_id
注:当播放rosbag包,想要在rviz中查看时,需要将rviz中的Fixed Frame换成bag中对应topic的frame_id
在使用rosbag录包的时候,我们有时候只需包中的某一段时间,因此就有必要按时间截取rosbag包。
3.1 在rosbag包目录下启动终端
3.2 按时间截取
rosbag filter 原始包名.bag 截取后的包名.bag "t.to_sec() > 开始时间 and t.to_sec() < 结束时间"
Exemple:
rosbag filter lidar_zed4.bag lidar_zed4_filter.bag "t.to_sec() > 1641196460.608130 and t.to_sec() < 1641196485.7"
注意:时间是Bag Time,可以在回放rosbag包的时候看到。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。