9 PCAP文件 - 高级主题
9.1 简介
Asensing 雷达可以工作在如下场景。
单播/组播/广播模式
运行在VLAN协议上
向Packet中加入用户自己的层
接入多个雷达
本文说明在每种场景下,如何配置aglidar_sdk。
在阅读本文之前,请先阅读:
9.2 一般场景
在下列场景下,使用如下配置解码PCAP文件。
广播/组播/单播模式
PCAP文件中有多个雷达
common:
msg_source: 3
send_point_cloud_ros: true
lidar:
- driver:
lidar_type: A0
pcap_path: /home/asensing/lidar.pcap
msop_port: 51180
difop_port: 7788
ros:
ros_frame_id: aglidar
ros_send_point_cloud_topic: /aglidar_points
一个例外是:PCAP 文件中有多个雷达数据,但这些雷达目的端口相同,使用不同的目的 IP 地址来区分。这种情况不支持。
9.3 VLAN
有些场景下,雷达工作在 VLAN 环境下。这时 MSOP/DIFOP 包带 VLAN 层,如下图。

ag_driver 使用 libpcap 库解析 PCAP 文件,可以得到完整的、包括 VLAN 层的 MSOP/DIFOP 包。
要剥除 VLAN 层,只需要设置 use_vlan: true。
lidar:
- driver:
lidar_type: A0
pcap_path: /home/asensing/lidar.pcap
msop_port: 51180
difop_port: 7788
use_vlan: true
9.4 User Layer, Tail Layer
某些场景下,用户可能在 MSOP/DIFOP 数据前后加入自己的层。
USER_LAYER 在 MSOP/DIFOP 数据之前,TAIL_LAYER 在 MSOP/DIFOP 数据之后。

这些层是 UDP 数据的一部分,所以 ag_driver 可以自己剥除他们。只需要告诉它每个层的字节数就可以。
如下的例子中,指定 USER_LAYER 为 8 字节,TAIL_LAYER 为 4 字节。
lidar:
- driver:
lidar_type: A0
pcap_path: /home/asensing/lidar.pcap
msop_port: 51180
difop_port: 7788
user_layer_bytes: 8
tail_layer_bytes: 4