跨境派

跨境派

跨境派,专注跨境行业新闻资讯、跨境电商知识分享!

当前位置:首页 > 综合服务 > 社群媒体 > Ubuntu 20.04使用Livox Mid-360

Ubuntu 20.04使用Livox Mid-360

时间:2024-04-10 14:35:32 来源:网络cs 作者:往北 栏目:社群媒体 阅读:

标签: 使用 

参考文章:

Ubuntu 20.04使用Livox mid 360 测试 FAST_LIO-CSDN博客

一:Livox mid 360驱动安装与测试

前言:

Livox mid360需要使用Livox-SDK2,而非Livox-SDK,以及对应的livox_ros_driver2 。

1. 安装Livox-SDK2

参照官方教程:GitHub - Livox-SDK/Livox-SDK2: Drivers for receiving LiDAR data and controlling lidar, support Lidar HAP and Mid-360.

2.在ROS空间下编译安装FAST_LIO源码

2.1. 创建ROS1工程

mkdir livox_ws/src 

2.2 在src文件夹中下载livox_ros_driver2源码

git clone https://github.com/Livox-SDK/livox_ros_driver2.git

3.编译工程

在工程目录的livox_ws/src/livox_ros_driver2使用下面指令编译,不要直接使用catkin_make.

cd src/livox_ros_driver2./build.sh ROS1

4. 修改Livox mid360的配置

4.1. 修改电脑IP地址
  建议电脑ip修改为192.168.1.5,否则需要修改下面的配置文件中对应的电脑ip,DNS地址写不写无所谓,网关要改为192.168.1.1。(这里是网络有线那里的ip地址)

4.2. 修改Livox mid360 IP
获取Livox mid360 IP的方式有两种;
4.2.1 通过出厂编号获取  
打开文件livox_ws/src/livox_ros_driver2/config/MID360_config.json。Livox mid360的IP是出厂后已经固定下来的,看它上面的二维码下面的 SN 码 ,后两个数字前面再加一个1,便是其对应的ip。(例如 SN 码后两位数字为26,那它对应的ip就是192.168.1.126)。
4.2.2 通过wireshark工具读取雷达端口ip

查看接受雷达数据的网口:

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      }    }  ]}

5.运行测试

打开两个终端,分别运行:

source devel/setup.bashroslaunch livox_ros_driver2 rviz_MID360.launch

也可以在终端对于话题数据进行打印

rostoptic list     rostoptic echo /livox/lidar

 运行成功截图如下:

二:使用Livox mid360 录制数据包

前言:录制rosbag包之前,需要先使各种传感器处于工作状态,例如Livox mid360需要启动先前安装好的驱动。此外还要确保每个传感器的时间戳同步。

source devel/setup.bashroslaunch livox_ros_driver2 rviz_MID360.launch

1. 话题录制

1.1 录制所有发布出来的话题,此时默认将话题保存在一个以当时时间戳命名的文件夹中:

rosbag record -a

1.2 录制指定话题

rosbag record /topic1 /topic12 -o out.bag

2. 话题回放

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

3.数据包截取

在使用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包的时候看到。
 

本文链接:https://www.kjpai.cn/news/2024-04-10/156558.html,文章来源:网络cs,作者:往北,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇:YOLOV5损失函数

下一篇:返回列表

文章评论