Mid360 ubuntu20.04 配置调试

前言

对于这方面的了解我还是太少了,以至于之前一直做出把功能线看成电源线的愚蠢事情,我太傻了,真的。

发现电源线可以配置之后极速购买新的电源适配器后直接开始配置雷达调试,值得一提的是我无法在ubuntu上使用Livox Viewer2,所以才使得rviz2的调试那么关键

Livox-SDK2

这一步比较简单,首先打开官方Github链接:https://github.com/Livox-SDK/Livox-SDK2/tree/master

一般来说默认我们的cmake已经是装好的了,因为之前装ROS2都会默认装好,所以直接开始下载安装,根据以下代码运行即可:

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

如果过程中有一些warning,没关系,我也有但是不影响。

Livox ros driver2

这里我一开始就搞错了,我以为是官网的ros2 driver,毕竟我们用的是ros2,结果发现应该是ros driver2,搞对了之后我们直接上链接:https://github.com/Livox-SDK/livox_ros_driver2

cd到根目录文件夹下,也就是cd ~,执行下面的指令获取驱动

git clone https://github.com/Livox-SDK/livox_ros_driver2.git ws_livox/src/livox_ros_driver2

根据ROS的版本执行以下命令:

#foxy版本ros2
source /opt/ros/foxy/setup.sh
cd ws_livox/src/livox_ros_driver2
./build.sh ROS2

#humble版本ros2
source /opt/ros/humble/setup.sh
cd ws_livox/src/livox_ros_driver2
./build.sh humble

如果运气好,一路走来可能不会有问题,但是显然我运气就不好,我报错了,在最后一个代码运行时出现了CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files

查了一堆答案,我决定严格按照官网的流程来,在执行最后一段代码前,重新build了livox-sdk2,新开一个窗口跳转到livox-sdk2对应路径执行以下代码:

cmake .. && make -j
sudo make install

执行完之后再次./build.sh ROS2,然后成功了

IP修改和文件配置

在正式开始测试程序之前我们需要配置一些参数,首先是修改主机的ip

设置->network->wired的齿轮,打开选择ipv4然后选择手动设置,address设置为192.169.1.50,network设置为255.255.255.0,Gateway设置为192.168.1.1

修改完主机的ip就应该修改配置文件了,打开ws_livox/install/livox_ros_driver2/share/livox_ros_driver2/config/文件夹,找到MID360_config.json文件,修改配置文件

{
  "lidar_summary_info" : {
    "lidar_type": 8
  },
  "MID360": {
    "lidar_net_info" : {
      "cmd_data_port": 56100,
      "push_msg_port": 56200,
      "point_data_port": 56300,
      "imu_data_port": 56400,
      "log_data_port": 56500
    },
    "host_net_info" : {
      "cmd_data_ip" : "192.168.1.50",  	# <-这里和修改后的电脑ip一致
      "cmd_data_port": 56101,
      "push_msg_ip": "192.168.1.50",  	# <-这里和修改后的电脑ip一致
      "push_msg_port": 56201,
      "point_data_ip": "192.168.1.50",  	# <-这里和修改后的电脑ip一致
      "point_data_port": 56301,
      "imu_data_ip" : "192.168.1.50",  	# <-这里和修改后的电脑ip一致
      "imu_data_port": 56401,
      "log_data_ip" : "",
      "log_data_port": 56501
    }
  },
  "lidar_configs" : [
    {
      "ip" : "192.168.1.178",		  	# <-这里是Livox mid360的ip
      "pcl_data_type" : 1,
      "pattern_mode" : 0,
      "extrinsic_parameter" : {
        "roll": 0.0,
        "pitch": 0.0,
        "yaw": 0.0,
        "x": 0,
        "y": 0,
        "z": 0
      }
    }
  ]
}

为什么我们的雷达是178的ip呢?首先是因为我们的雷达的序列号最后两位是78,ip被设置为1+最后两位序列号,除此之外还可以下载wireshark工具查找,前提是mid360线已经接好并且上电。

sudo apt-get install wireshark
sudo wireshark

对于我们来说上面的ip是178,网口是50,到这一步就算配置完了.

虚拟机还需要额外配置一些内容,可以参考https://blog.csdn.net/qq_62565963/article/details/140187181?ops_request_misc=&request_id=&biz_id=102&utm_term=mid360%E8%99%9A%E6%8B%9F%E6%9C%BA&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-140187181.142^v100^pc_search_result_base7&spm=1018.2226.3001.4187

运行Mid360

这一步和学习ROS2的步骤是一样的,首先需要source添加功能包,然后运行节点

cd ws_livox/
source install/setup.sh 
ros2 launch livox_ros_driver2 rviz_MID360_launch.py
上一篇
下一篇