livox 使用

viewer

windows 下可以使用
linux 无法使用报错:编译环境问题

SDK

  1. 下载编译:略
    TX2 下编译:
cd Livox-SDK
cd build && \
cmake .. -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_C_COMPILER=aarch64-linux-gnu-gcc -DCMAKE_CXX_COMPILER=aarch64-linux-gnu-g++
make
sudo make install 
  1. 修改 静态ip
    来自
    在这里插入图片描述
sudo  gedit /etc/network/interfaces

设置ip

auto enp3s0
iface enp3s0 inet static #设置为静态 
address 192.168.1.1   #ip 地址 livox默认:ip为:192.168.1.xxx
netmask 255.255.255.0 #子网掩码 livox默认:netmask 255.255.255.0 
gateway 192.168.1.1 #网关	   livox默认:192.168.1.1

重启网络:

sudo /etc/init.d/networking restart
  1. 测试
    详见
./lidar_sample
./lidar_sample_cc -c "广播码" -l
./Livox-SDK/build/sample_cc/lidar/lidar_sample_cc -c "3JEDHC900100781" 

存在问题:
重新插拔会造成网络波动,需要重启网卡才能重新连接

ROS_driver

  1. 安装
git clone https://github.com/Livox-SDK/livox_ros_driver.git
git clone https://github.com/Livox-SDK/livox_mapping.git

  1. 编译
catkin_make
  1. 测试
roslaunch livox_ros_driver livox_lidar.launch bd_list:="3JEDHC900100781"
//bd_list="广播码"
roslaunch livox_mapping mapping_mid.launch

loam_livox

    roslaunch loam_livox livox.launch
    roslaunch livox_ros_driver livox_lidar.launch bd_list:="3JEDHC900100781"

时间同步

livox 支持如下方式

  1. PTP 时钟:IEEE 1588v2.0 PTP 网络协议同步
    <1> 简介:转载
    高精度时间同步协议,可以到达亚微秒级精度,硬件实现时可以达到ns 级的精度,软件实现时通常可以达到ms 级的精度
    <2> 特点:
    -直接在 MAC 层进行 PTP 协议包分析 , 这样可以不经过UDP 协议栈 , 减少PTP 在协议栈中驻留时间 , 提高同步的精确度。
    -主从同步系统,一般采用硬件时间戳,并配合一些对NTP更高精度的延时测量算法
    -也可以承载在 UDP 上时 , 软件可以采用 SOCKET 进行收发 UDP包 , 事件消息的 UDP 端口号 319 , 普通消息的组播端口号为 320 ,但其精度就大大降低
    -在物理硬件要求主从端都是PTP设备,且网络不能太大,其中间经过的交换机设备也必须支持PTP协议,并且主从时间网络链路唯一,不存在交替的PTP通道。
    -采用相对时间同步机制。一个参与者被选作主时间钟,其将发送同步信息到从站。主站将发送同步报文到网络。所有的从站计算时间延迟。
    <3>:时钟同步
    传输路径延时: D e l a y = [ ( t 4 – t 1 ) – ( t 3 – t 2 ) ] / 2 Delay = [(t4 – t1) – (t3 – t2)]/2 Delay=[(t4t1)(t3t2)]/2
    时间偏移: O f f s e t = ( t 2 − t 1 ) − D e l a y = [ ( t 2 – t 1 ) + ( t 3 – t 4 ) ] / 2 Offset = (t2 - t1) - Delay = [(t2 – t1) + (t3 – t4)]/2 Offset=(t2t1)Delay=[(t2t1)+(t3t4)]/2
    在这里插入图片描述
    <4>:livox作为slave端,和master时钟设备进行ptp时间同步
    linux 配置PTP
    -安装(需要联网)
git clone http://git.code.sf.net/p/linuxptp/code linuxptp
cd linuxptp
make
sudo make install

-查看内核(需要3.0 以上)

 uname -srm

-查看网卡需要支持硬件时间戳

ethtool -T eth0

-开启ptp4l 主时钟

sudo ptp4l -i eth0 -l 6 -m
#-L legacy硬件时间戳
#-i interface 确定一个ptp的端口。
#-m 将消息打印到标准输出。
#可以使用winreshasrk 查看
sudo wireshark
#选择 eth0 如果有时钟证明存在良好

-让系统时间和PTP硬件时钟同步

sudo phc2sys -c eth0 -s CLOCK_REALTIME -O 0
#-c 时间接收设备
#-s 时间源设备
#-o 接收时间源偏移意识按
  1. GPS:秒脉冲+GPRMC时间数据,GPS时间同步
  2. PPS:秒脉冲同步,需要通过串口等获取脉冲时间修正点云,不推荐使用。
  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值