1. 准备数据
自己录制的IMU和Pandar64 线Point2数据(一个激光雷达传感器),并且有LiDAR到IMU的外参。
修改数据包时,注意frame_id要与cartorgrapher参数urdf中描述的一致。
IMU数据因为要被用于Robot的位姿估计,所以要注意当前数据与Cartographer中的坐标一致性。
注意激光雷达扫描一周时所生成帧的频率,此处是每旋转一周生成一帧点云数据,当采用npackages模式时,每个UDP包就生成一帧,一个旋转周期可能会上百帧,要注意跟 参数 TRAJECTORY_BUILDER_3D.num_accumulated_range_data 配合使用。
2. 在cargographer中的数据校验
只要没有特别醒目的报错,即可认为没问题。
类似以下这样的报警,可以不必在意,基本不影响建图,
Point data (frame_id: "horizontal_vlp16_link") has a large gap, largest is 0.118117 s, recommended is [0.0005, 0.05] s with no jitter.
3. launch和lua参数配置
按照demo_backpack_3d.launch以及对应的lua和urdf参数进行配置即可,需要注意以下参数
map_frame = "map",
tracking_frame = "imu_link",
published_frame = "base_link",
odom_frame = "odom",
provide_odom_frame = false,
use_odometry = false,
num_point_clouds = 1,
TRAJECTORY_BUILDER_3D.num_accumulated_range_data = 1 #这个参数一定要注意,如果不改成对应的频率,可能会出现点云一直不动,没有轨迹生成的情况
同时也要注意,urdf中 欧拉角给出的顺序,参考backpack_3d.urdf可知,实际顺序为 rpy="pitch roll yaw",而不是想象中的RPY。
4.建好的图
查看邻居表是否建立。建立的话,查看其他区域是否为完全末节区域或NSSA。是的话,肯定没了,这两个区域是隐藏路由信息的。完全末节区域默认是无法学到其他路由的,只能学域内路由和默认路由,NSSA只能学到直连的域间和域内,外部直连,但是无法学到外部转发的。你可以通过在完全末节区域的ABR上构建一条redistribute connect,加入默认路由。在NSSA的ABR上加入一条default-information originate。在环回上加入ip ospf network point-to-point ,效果可以使你在路由表中看到的环回掩码为所填写的,而不是/32欢迎分享,转载请注明来源:内存溢出
评论列表(0条)