Skip to content

关于在不同使用场景与使用平台中设置参数以达到高精度定位的目标的讨论 #123

Description

@Wangben1019

非常感谢贵团队开源的优秀工作。

目前我想用Point Lio作为我导航无人机的定位算法。
但是我在使用中时发现定位偶尔会出现偏移。

我想要同您讨论一下关于参数、平台、硬件以及运行环境的设置。
激光雷达:Livox-MID360
机载电脑:Jetson orin nx
操作系统:Ubuntu 20
ROS版本:ROS1 Noetic
运行环境:室内场地,但是场地周围有网格(动捕场地的周围网格)
怀疑问题:场地网格干扰、无人机震动、未做时间同步、参数设置不合理

我在使用过程中发现,偶尔会出现一个方向上的漂移,不过漂移速度并不快,应该低于1m/s。
这是我的Point lio的参数
`common:
lid_topic: "/livox/lidar"
imu_topic: "/livox/imu"
con_frame: false # true: if you need to combine several LiDAR frames into one
con_frame_num: 1 # the number of frames combined
cut_frame: false # true: if you need to cut one LiDAR frame into several subframes
cut_frame_time_interval: 0.1 # should be integral fraction of 1 / LiDAR frequency
time_diff_lidar_to_imu: 0.0 # Time offset between LiDAR and IMU calibrated by other algorithms, e.g., LI-Init (find in Readme)

preprocess:
lidar_type: 1 # 4
scan_line: 4 # 32
timestamp_unit: 3 # the unit of time/t field in the PointCloud2 rostopic: 0-second, 1-milisecond, 2-microsecond, 3-nanosecond.
blind: 0.1

mapping:
imu_en: true
extrinsic_est_en: false # for aggressive motion, set this variable false
imu_time_inte: 0.005 # = 1 / frequency of IMU
lidar_time_inte: 0.1
satu_acc: 30.0 # the saturation value of IMU's acceleration. not related to the units
satu_gyro: 35.0 # the saturation value of IMU's angular velocity. not related to the units
acc_norm: 1.0 # 9.810 # 1.0 for g as unit, 9.81 for m/s^2 as unit of the IMU's acceleration
lidar_meas_cov: 0.1 # 0.001; 0.01
acc_cov_output: 500.0
gyr_cov_output: 1000.0
b_acc_cov: 0.0001
b_gyr_cov: 0.0001
imu_meas_acc_cov: 0.01 #0.1 # 0.1
imu_meas_omg_cov: 0.01 #0.01 # 0.1
gyr_cov_input: 0.01 # for IMU as input model
acc_cov_input: 0.1 # for IMU as input model
plane_thr: 0.05 # 0.05, the threshold for plane criteria, the smaller, the flatter a plane
match_s: 81.0
fov_degree: 360
det_range: 70.0
ivox_grid_resolution: 2.0
gravity: [0.0, 0.0, -9.810] # [0.0, 9.810, 0.0] # # [0.0, 0.0, -9.787561] # gvins #
gravity_init: [0.0, 0.0, -9.810] # preknown gravity in the initial IMU frame for unstationary start or in the initial LiDAR frame for using without IMU
extrinsic_T: [ 0.011, 0.02329, -0.04412 ] # avia # [0.011, 0.02329, -0.04412] # mid360
extrinsic_R: [ 1, 0, 0,
0, 1, 0,
0, 0, 1 ]

odometry:
publish_odometry_without_downsample: false

publish:
path_en: true # false: close the path output
scan_publish_en: true # false: close all the point cloud output
scan_bodyframe_pub_en: false # true: output the point cloud scans in IMU-body-frame

pcd_save:
pcd_save_en: false
interval: -1 # how many LiDAR frames saved in each pcd file;
# -1 : all frames will be saved in ONE pcd file, may lead to memory crash when having too much frames.`

并且我这套参数在地面端运行似乎没有那么大的问题。
请问我该如何排查相关的问题所在?
我正在努力的复现问题并录制bag。
感谢。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions