ubuntu18.04 配置 mid360并测试fast_lio

2024-06-12 11:04

本文主要是介绍ubuntu18.04 配置 mid360并测试fast_lio,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.在买到Mid360之后,我们可以看到mid360延伸出来了三组线。

     第一组线是电源线,包含了红色线正极,和黑色线负极。一般可以用来接9-27v的电源,推荐接12v的电源转换器,或者接14.4v的电源转换器。

     第二组线是信号线,共5根线,包含了2根pps线,秒脉冲;包含了2根GPS信号输入和GPS信号输出线,和一根地线。

    第三组线是数据线,是一个网线,直接连接笔记本就可以了

2.IP配置

2.1 先把mid360的电源线接上,通上电;把数据线也就是网线插入到笔记本的网口上。

首先点屏幕右上角的向下箭头,找到【以太网连接】,点开后找到【有线设置】,在PCI以太网选项中,点击【齿轮】按钮,点ipv4,地址:192.168.1.50   子网掩码 255.255.255.0  网管 192.168.1.254

然后就可以用  Livox VIewer2 来显示了。

3. livox mid360配置指南

cd ~
# Download Livox Viewer 2
wget https://terra-1-g.djicdn.com/65c028cd298f4669a7f0e40e50ba1131/Mid360/LivoxViewer2%20for%20Ubuntu%20v2.3.0.zip
# Unzip
unzip "LivoxViewer2 for Ubuntu v2.3.0.zip"
# Go to Livox
cd "LivoxViewer2 for Ubuntu v2.3.0"
# Grant permission
chmod +x LivoxViewer2.sh
# Run Livox Viewer 2
./LivoxViewer2.sh

这时候,就直接可以看到mid360所采集的点云了。

4. livox sdk2 的配置

    (1) 修改mid360_config.json中的IP地址

   首先进入到livox_sdk2/Samples/Livox_lidar_quick_start文件夹中,打开mid360_config.json,把host_ip设置为:192.168.1.50   和之前设置在IPV4中的网址是一样的。

(2)配置livox_sdk2

# Install cmake
sudo apt install cmake -y
# Go to Home
cd ~
# Download Livox SDK2
git clone https://github.com/Livox-SDK/Livox-SDK2.git
# Go to the SDK2 package
cd Livox-SDK2
# Create build folder
mkdir build
cd build
# Compile
cmake .. && make -j
# Install SDK2 in system
sudo make install
# Go to demo1
cd samples/livox_lidar_quick_start
# WARNING: 
# Remember to modify the mid360_config.json with your PC IP 192.168.1.50

(3)运行demo

# Run demo
./livox_lidar_quick_start ../../../samples/livox_lidar_quick_start/mid360_config.json

就可以看到mid360所发出的消息。

5. Livox Ros配置

(1)配置livox ros

# Download the Livox ROS Driver 2 Package to ws_livox_src
git clone https://github.com/Livox-SDK/livox_ros_driver2.git ws_livox/src/livox_ros_driver2
# Update ros dependencies
rosdep install --from-paths src --ignore-src -r -y
# Build the package
source /opt/ros/noetic/setup.sh
# Go to livox
cd livox_ros_driver2/
./build.sh ROS1
# Source workspace
echo "source ws_livox/devel/setup.sh" >> ~/.bashrc
source ~/.bashrc
# Warning:
# Remember to modify the mid360_config.json with your PC IP 192.168.1.50
# and your lidar IP 192.168.1.1XX (xx is the last two digits of the SN code)

(2).修改IP地址

1)首先找到mid360_config.json,在src/Livox_ros_driver2/config文件夹中,host_net_info的子项cmd_data_ip, push_msg_ip, point_data_ip,imu_data_ip这四个都改成192.168.1.50

 2)然后把lidar_configs子项 ip 改为192.168.1.1xx,其中xx为 mid360上的SN码后两位。

(3).运行

roslaunch livox_ros_driver2 rviz_MID360.launch

6. fast-lio安装指南

(1) 安装eigen3

#安装eigen3
sudo apt install libeigen3-dev
#查看版本
$ pkg-config --modversion eigen3

(2)安装pcl

#安装PCL
sudo apt install libpcl-dev
#查看版本
apt-cache show libpcl-dev
#对照如下
#Ubuntu20.04   ——>   1.10.0
#Ubuntu18.04   ——>   1.8.1
#Ubuntu16.04   ——>   1.7.2

(3)安装sophus

# 安装非模版类Sophus
git clone https://github.com/strasdat/Sophus.git
cd Sophus
git checkout a621ff  #版本回溯
mkdir build && cd build && cmake .. && sudo make install

报错:

***/sophus/so2.cpp:32:26: error: lvalue required as left operand of assignmentunit_complex_.real() = 1.;^~
***/sophus/so2.cpp:33:26: error: lvalue required as left operand of assignmentunit_complex_.imag() = 0.;

解决:打开so2.cpp修改构造函数:

//unit_complex_.real() = 1.;
//unit_complex_.imag() = 0.;
unit_complex_.real(1.); 
unit_complex_.imag(0.);

安装结果如下:

-- Install configuration: "Release"
-- Up-to-date: /usr/local/include/sophus
-- Installing: /usr/local/include/sophus/se3.h
-- Installing: /usr/local/include/sophus/scso3.h
-- Installing: /usr/local/include/sophus/se2.h
-- Installing: /usr/local/include/sophus/so2.h
-- Installing: /usr/local/include/sophus/sim3.h
-- Installing: /usr/local/include/sophus/so3.h
-- Installing: /usr/local/lib/libSophus.so

(4)FAST_LIO编译

#首先创建一个ROS1的工作空间,在工作空间下的src中运行cd srcgit clone https://github.com/zlwang7/S-FAST_LIO.git --recursive

(5)修改FAST_LIO代码

原因:FAST_LIO默认支持livox_ros_driver但是我们用的是livox_ros_driver2

     1)修改FAST_LIO的CMakelists.txt

添加:

set(Sophus_LIBRARIES "/usr/local/lib/libSophus.so")

修改:

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
)

  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)修改FAST_LIO的头文件引用

分别打开FAST_LIO/src/preprocess.h 、FAST_LIO/src/laserMapping.cpp

修改前:

#include <livox_ros_driver/CustomMsg.h>

修改后:

#include <livox_ros_driver2/CustomMsg.h>

4)修改FAST_LIO的命名空间

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

修改前:

livox_ros_driver::

修改后:

livox_ros_driver2::

(6)编译

catkin_make

成功后:

如果还有编译错误提示,那就说明livox_ros_driver::没有全部改成livox_ros_driver2:: ,如下图:

(7)运行demo

source devel/setup.bash
roslaunch livox_ros_driver2 msg_MID360.launch
#再开一个终端
source devel/setup.bash
roslaunch fast_lio mapping_mid360.launch

参考文献:

https://zhuanlan.zhihu.com/p/668966629

这篇关于ubuntu18.04 配置 mid360并测试fast_lio的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1054038

相关文章

Debian系和Redhat系防火墙配置方式

《Debian系和Redhat系防火墙配置方式》文章对比了Debian系UFW和Redhat系Firewalld防火墙的安装、启用禁用、端口管理、规则查看及注意事项,强调SSH端口需开放、规则持久化,... 目录Debian系UFW防火墙1. 安装2. 启用与禁用3. 基本命令4. 注意事项5. 示例配置R

PyCharm中配置PyQt的实现步骤

《PyCharm中配置PyQt的实现步骤》PyCharm是JetBrains推出的一款强大的PythonIDE,结合PyQt可以进行pythion高效开发桌面GUI应用程序,本文就来介绍一下PyCha... 目录1. 安装China编程PyQt1.PyQt 核心组件2. 基础 PyQt 应用程序结构3. 使用 Q

Redis MCP 安装与配置指南

《RedisMCP安装与配置指南》本文将详细介绍如何安装和配置RedisMCP,包括快速启动、源码安装、Docker安装、以及相关的配置参数和环境变量设置,感兴趣的朋友一起看看吧... 目录一、Redis MCP 简介二、安www.chinasem.cn装 Redis MCP 服务2.1 快速启动(推荐)2.

Spring Boot配置和使用两个数据源的实现步骤

《SpringBoot配置和使用两个数据源的实现步骤》本文详解SpringBoot配置双数据源方法,包含配置文件设置、Bean创建、事务管理器配置及@Qualifier注解使用,强调主数据源标记、代... 目录Spring Boot配置和使用两个数据源技术背景实现步骤1. 配置数据源信息2. 创建数据源Be

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用