全网最详细的 Ubuntu 18.04 安装Livox mid-360驱动,测试 fast_lio2

目录

一、前言

二、依赖的环境

三、 安装Livox-SDK2,fast_lio2 和 livox_ros_driver2 

(1) 安装Livox-SDK2

(2) 安装 fast_lio2 和 livox_ros_driver2 

四、mid-360 设备硬件设置

五、运行设备

六、topic信息查看


一、前言

  • Livox mid-360需要使用Livox-SDK2,而非Livox-SDK,以及对应的livox_ros_driver2 。并需要修改FAST_LIO中部分代码。
  •  地址为:Faster—LIO;高博的介绍为:Faster-LIO:快速激光IMU里程计。论文地址为:Faster-LIO:快速激光IMU里程计PDF。
  • 大部分Lidar SLAM都是基于loam进行改造的,基本上是通过线特征edge和面特征(面点)分割进行配准得到里程计的,而fast-lio2是通过一个迭代扩展卡尔曼滤波器去优化帧内位姿,然后通过输入点云与地图进行配准得到里程计,精度和鲁棒性都不错。

二、依赖的环境

PCL >= 1.8, Follow PCL Installation.

Eigen >= 3.3.4, Follow Eigen Installation.

  • ROS (melodic or noetic)
  • glog: sudo apt-get install libgoogle-glog-dev
  • Eigen: sudo apt-get install libeigen3-dev
  • pcl: sudo apt-get install libpcl-dev
  • yaml-cpp: sudo apt-get install libyaml-cpp-dev

三、 安装Livox-SDK2,fast_lio2 和 livox_ros_driver2 

新建一个文件夹: Livox-SDK2_ROS_driver/src

(1) 安装Livox-SDK2

  • cd Livox-SDK2_ROS_driver/src
  • git clone https://github.com/Livox-SDK/Livox-SDK2.git
  • cd ./Livox-SDK2/
  • mkdir build && cd build
  • cmake .. && make -j
  • sudo make install

编译完成后,效果图如下:  

(2) 安装 fast_lio2livox_ros_driver2 

步骤一: 下载 FAST_LIO代码

  • cd Livox-SDK2_ROS_driver/src         // 也是安装这个目录下
  • git clone https://github.com/hku-mars/FAST_LIO.git  
  • cd FAST_LIO
  • git submodule update --init
  • cd ../..

步骤二: 下载 livox_ros_driver2

  • cd Livox-SDK2_ROS_driver/src         // 也是安装这个目录下
  • git clone https://github.com/Livox-SDK/livox_ros_driver2.git

步骤三: 修改FAST_LIO代码

3.1. 修改FAST_LIO的CMakelists.txt
修改前:

find_package(catkin REQUIRED COMPONENTSgeometry_msgsnav_msgssensor_msgsroscpprospystd_msgspcl_rostflivox_ros_driver		# <-修改这里message_generationeigen_conversions
)

修改后:

find_package(catkin REQUIRED COMPONENTSgeometry_msgsnav_msgssensor_msgsroscpprospystd_msgspcl_rostflivox_ros_driver2		# <-修改这里message_generationeigen_conversions
)

3.2. 修改FAST_LIO的package.xml
修改前:

<build_depend>livox_ros_driver</build_depend>
<run_depend>livox_ros_driver</run_depend>

修改后:

<build_depend>livox_ros_driver2</build_depend>
<run_depend>livox_ros_driver2</run_depend>

3.3. 修改FAST_LIO的头文件引用
分别打开FAST_LIO/src/preprocess.hFAST_LIO/src/laserMapping.cpp
修改前:

#include <livox_ros_driver/CustomMsg.h>

修改后:

#include <livox_ros_driver2/CustomMsg.h>

3.4. 修改FAST_LIO的命名空间
分别打开FAST_LIO/src/preprocess.hFAST_LIO/src/preprocess.cppFAST_LIO/src/laserMapping.cpp中的命名空间,有多处需要修改
修改前: livox_ros_driver

修改后: livox_ros_driver2

注意拉:代码中, livox_ros_driver::全部改成livox_ros_driver2::

步骤四:编译工程

注意啦:在工程目录的fast_lio/src/livox_ros_driver2使用下面指令编译,不要直接使用catkin_make

  • cd livox_ros_driver2
  • source /opt/ros/melodic/setup.sh   //ubuntu18.04 用 melodic,其他选择相应的版本
  • ./build.sh ROS1

编译后的结果如下:

  

 

四、mid-360 设备硬件设置

(1)修改电脑IP地址

  • 建议电脑ip修改为192.168.1.5,否则需要修改下面的配置文件中对应的电脑ip,DNS地址写不写无所谓。
  • 雷达的IP是192.168.1.1** 最后两位为雷达S/N码最后两位数字 mid360 iP应该192.168.1.125
  • 再把Ubuntu的有线IP改为静态IP,我这里改为192.168.1.25,在一个局域网内就行,可以Ping通mid360的IP就行。

ping通了!!!

(2)修改Livox mid360 IP

  • 打开文件fast_lio/src/livox_ros_driver2/config/MID360_config.json。Livox mid360的IP是出厂后已经固定下来的,看它上面的二维码下面的 SN 码 ,后两个数字前面再加一个1,便是其对应的ip。(例如 SN 码后两位数字为12,那它对应的ip就是192.168.1.125)。
  • 改这个文件里的IP,前面几个改为Ubuntu端静态IP,最后一个改为mid360的静态IP。

五、运行设备

前提:设备连接,前面三步骤没有出现问题

打开两个终端,分别运行

  • cd Livox-SDK2_ROS_driver
  • source devel/setup.bash

  • roslaunch livox_ros_driver2 msg_MID360.launch

结果如下:

 
另外打开一个终端

  • cd Livox-SDK2_ROS_driver
  • source devel/setup.bash
  • roslaunch fast_lio mapping_mid360.launch

六、topic信息查看

  • rostopic list                         // 看一下发布的topic
  • rostopic echo "topic"    // 看一下发布的topic具体信息
  • rostopic hz "topic"         // 看一下发布的topic的频率

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/774011.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【OceanBase OBCP题目解析17】关于OceanBase事务引擎一致性特点,描述正确的是

本文为云贝教育郭一军&#xff08;微信&#xff1a;guoyJoe&#xff09;原创&#xff0c;请尊重知识产权&#xff0c;转发请注明出处&#xff0c;不接受任何抄袭、演绎和未经注明出处的转载。 关于OceanBase事务引擎一致性特点&#xff0c;描述正确的是 &#xff1f; A. 保证…

海外媒体宣发:企业出海最有“范儿”的几大媒体

1. 雅虎财经&#xff08;Yahoo Finance&#xff09; 雅虎&#xff08;英文名称&#xff1a;Yahoo&#xff0c;NASDAQ&#xff1a;YHOO&#xff09;是美国著名的互联网门户网站&#xff0c;也是20世纪末互联网奇迹的创造者之一。其服务包括搜索引擎、电邮、新闻等&#xff0c;业…

【面试经典150 | 动态规划】零钱兑换

文章目录 Tag题目来源解题思路方法一&#xff1a;动态规划 写在最后 Tag 【动态规划】【数组】 题目来源 322. 零钱兑换 解题思路 方法一&#xff1a;动态规划 定义状态 dp[i] 表示凑成总金额的最少硬币个数。 状态转移 从小到大枚举要凑成的金额 i&#xff0c;如果当前…

详解ARP攻击原理、类型、机制、欺骗主机、仿冒网关、泛洪攻击,以及网络攻击中如何快速判断客户端是否存在恶意连接?

详解ARP攻击原理、类型、机制、欺骗主机、仿冒网关、泛洪攻击,以及网络攻击中如何快速判断客户端是否存在恶意连接? ARP攻击(Address Resolution Protocol attack)是一种网络攻击技术,它利用了ARP协议的设计缺陷来实施攻击。ARP是网络协议中用于将网络层的IP地址解析为链路…

舵机烧录

舵机烧录 一、硬件连接1、准备物资2、连接&#xff08;1&#xff09;舵机线一侧连接舵机控制板&#xff0c;另一侧连接舵机&#xff08;2&#xff09;老安卓线一侧连接舵机控制板&#xff0c;一侧连接电脑&#xff08;3&#xff09;接上低压电池 二、软件使用1、打开舵机烧录软…

表格中的状态类型值(tag)

一&#xff1a;数字转换为简单的中文值 ** 不用转换直接用find()方法&#xff1a;在statusList里找&#xff1b; **lastHandleCode是对应的获取到的每行数据的code值&#xff1b; vue: <el-table-column label"执行状态" align"center"><templat…

Vmware虚拟机无法用root直连说明

Vmware虚拟机无法用root直连说明 背景目的SSH服务介绍无法连接检查配置 背景 今天在VM上新装了一套Centos-stream-9系统&#xff0c;网络适配器的连接方式采用的是桥接&#xff0c;安装好虚拟机后&#xff0c;在本地用ssh工具进行远程连接&#xff0c;ip、用户、密码均是成功的…

【Java程序设计】【C00384】基于(JavaWeb)Springboot的民航网上订票系统(有论文)

【C00384】基于&#xff08;JavaWeb&#xff09;Springboot的民航网上订票系统&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 博主介绍&#xff1a;java高级开发&#xff0c;从事互联网行业六年&#xff0c;已经做了六年的毕业设计程序开发&#x…

如何简单在手机上/移动端测试web程序

也许你在搜索到如何在手机上测试web的方法是&#xff1a; Chrome DevTools模拟手机调试 岩鼠平台真机调试 weinre远程调试工具 等等等待 但也许只是需要在手机上简单试用一下我们开发的web 目录 一、前置条件 二、安装Live Server扩展 三、以Live Server运行程序 四、访问…

(vue)el-table表格回显返回的已勾选的数据

(vue)el-table表格编辑时回显返回的已勾选的数据 tableData数据&#xff1a; el-tableref"multipleTable":data"tableData"... >...<el-table-column prop"result" label"相关.." align"center" width"220"…

2022 年甘肃省职业院校技能大赛 高职组 网络系统管理竞赛 网络构建模块试题

2022 年甘肃省职业院校技能大赛 高职组网络系统管理竞赛 网络构建模块试题 目 录 考试说明… 3 任务描述… 3 任务清单… 3 &#xff08;一&#xff09;基础配置… 3 &#xff08;二&#xff09;有线网络配置… 4 &#xff08;三&#xff09;无线网络配置… 6 &#xff08;四&a…

Halcon与C#联合开发——1.读取图片、图像二值化

在vs中引入halcon控件 修改目标平台为 x64 拖出三个控件 代码展示 using System; using System.Windows.Forms; //引用支持halcon的命名空间 using HalconDotNet;namespace _1.HalconDisplay {public partial class Form1 : Form {// HObject 是Halcon库中表示图像和其他图形…

微信小程序的页面交互练习——实现比较两数大小功能

前提&#xff1a;配置好页面后 一、在wxml里面搭建好框架&#xff1a; <navigation-bar title"Weixin" back"{{false}}" color"black" background"#FFF"></navigation-bar> <scroll-view class"scrollarea"…

【数据结构】受限制的线性表——队列

&#x1f9e7;&#x1f9e7;&#x1f9e7;&#x1f9e7;&#x1f9e7;个人主页&#x1f388;&#x1f388;&#x1f388;&#x1f388;&#x1f388; &#x1f9e7;&#x1f9e7;&#x1f9e7;&#x1f9e7;&#x1f9e7;数据结构专栏&#x1f388;&#x1f388;&#x1f388;&…

实现UI自动化测试,这5个常见问题你必须知道!

UI自动化测试一直都是如此的令人纠结&#xff0c;自动化测试初学者总是拿它入门&#xff0c;但有些经验丰富者对其又是毁誉参半&#xff0c;抑或抛出分层自动化测试那个经典的“金字塔”&#xff0c;来说明UI自动化测试还是少做为好。 我在从事7年产品研发之后&#xff0c;临危…

c语言--实用调试技巧

1什么是bug 2调试是什么&#xff0c;有多重要&#xff1f; 3debug与release 4windows环境调试简绍 5一些调试的实例 6如何写出好的代码&#xff08;便于调试&#xff09; 7编程常见错误 1什么是bug 导致计算机出现问题就叫bug 2调试是什么&#xff0c;有多重要&#x…

靠谱服装库存管理系统大盘点,商陆花、管家婆、秦丝哪家强?

在服装行业&#xff0c;库存管理是至关重要的环节。对于咱服装老板来说&#xff0c;选对的库存管理系统是提高效率、降低运营成本的关键。市场里有不少系统&#xff0c;我们今天拿出来最常见的5款&#xff0c;给大家一个详细指南。 选择服装库存管理系统时应考虑以下因素&…

dndc模型:可以模拟几乎所有陆地生态系统的动态模拟模型

由于全球变暖、大气中温室气体浓度逐年增加等问题的出现&#xff0c;“双碳”行动特别是碳中和已经在世界范围形成广泛影响。国家领导人在多次重要会议上讲到&#xff0c;要把“双碳”纳入经济社会发展和生态文明建设整体布局。同时&#xff0c;提到要把减污降碳协同增效作为促…

TinyEMU源码分析之启动流程

TinyEMU源码分析之启动流程 1 始于0x10002 确定BBL入口点3 mentry.S执行过程4 启动流程小结 本文属于《 TinyEMU模拟器基础系列教程》之一&#xff0c;欢迎查看其它文章。 本文中使用的代码&#xff0c;均为伪代码&#xff0c;删除了部分源码。 1 始于0x1000 我们沿着TinyEMU…

DCS系统在工业场合中的功能是什么?为你揭秘常见DCS系统的应用场景

一.DCS系统的功能和应用 DCS系统的主要功能包括数据采集和处理、监控和报警、控制和调节、历史数据记录和趋势分析等。通过这些功能&#xff0c;DCS系统可以实现自动化控制、优化生产过程、提高生产效率和质量等目标。DCS系统广泛应用于各个行业&#xff0c;如化工、电力、制药…