实机px4的fast-lio建图实现无人机起飞(已经实现)(大学经验分享)
#我先说一下,这个做出来还是挺让人兴奋的,我也是临危受命,本来脑子里啥也没有,都不知道咋开始,但是一天一次就稳定飞起来了。所以很兴奋,迫不及待分享一下#看了这个,人人都能手搓飞控了,有点夸大哈,至少不用去买人家的产品,自己有零件就可以了,技术费全部免费哈哈
硬件部分
其实主要的就是一个mid360雷达,我们用的是jesn nano18.04,一个px4,其他硬件就不用介绍了,玩无人机的都知道。
参考文章+整个目录
LIVOX-Mid360雷达配置&&FAST_Lio建图_livox mid360建图-CSDN博客
使用mid360从0开始搭建实物机器人入门级导航系统,基于Fast_Lio,Move_Base-CSDN博客
觉得我写的不好的话也可以参考我参考的文章
首先SDK直接克隆在根目录下就行了,然后livox_ros_driver2和fast-lio和Sophus克隆在自己的catkin_ws/src下面
克隆Livox-SDK2
第一步就是安装SDK
按照我这个来不会报错,直接复制粘贴就行了(注意的是把这个克隆在根目录下)
git clone https://github.com/Livox-SDK/Livox-SDK2.gitcd ./Livox-SDK2/mkdir buildcd buildcmake .. && make -jsudo make install
克隆livox_ros_driver2
第二步就是安装ros驱动
按照我这个来不会报错,直接复制粘贴就行了(注意的是把这个克隆在自己的工作空间下)
git clone https://github.com/Livox-SDK/livox_ros_driver2.gitsource /opt/ros/noetic/setup.shcd livox_ros_driver2./build.sh ROS1cd ../catkin_make
前两步搞完了就可以先看看效果了,启动雷达rviz
roslaunch livox_ros_driver2 rviz_MID360.launch
然后就是看有没有类似我这样的点云数据,多半是没有的,因为每个雷达序列号不一样,还没配置序列号呢。
打开有线网的配置
修改ipv4的配置
找到我这个目录下 ,打开MID360_config.json文件,用文本编辑器打开他,把里面的配置改了
都改完了之后就保存,然后重新运行一下刚才的launch文件,这时候你能看到点云数据就说明你成功了,能够获取原始点云数据。
fast-lio建图
首先还是克隆在catkin_ws/src目录下
git clone https://github.com/hku-mars/FAST_LIO.gitcd FAST_LIOgit submodule update --initcd ../..catkin_makesource devel/setup.bash
注意,fastlio里面用的是livox_ros_driver,这里我们要把他们全部改成livox_ros_driver2,比较多,我这里就不说了,直接编译,哪里出错,那就是改哪里,改完就不会出错了。
sophus安装
如果之前没有这个,还是克隆到catkin_ws/src目录下面
git clone https://github.com/strasdat/Sophus.gitcd Sophusgit checkout a621ffmkdir buildcd buildcmake ../ -DUSE_BASIC_LOGGING=ONmakesudo make install
这里多半是编译会出错的,不过没关系,我已经解决了,遇到下面这个错
/home/lau/Sophus/sophus/so2.cpp:32:26: error: lvalue required as left operand of assignment unit_complex_.real() = 1.; ^~/home/lau/Sophus/sophus/so2.cpp:33:26: error: lvalue required as left operand of assignment
直接改,根据报错找到so2.cpp文件位置,打开之后把 原本的改成我这个,然后再重新编译就可以了。
SO2::SO2(){ unit_complex_.real(1.); unit_complex_.imag(0.);}
sophus编译完了之后重新编译一下fastlio,然后就可以了
效果展示
上面都搞完了之后就可以直接运行了
先更新一下环境变量分别打开两个终端运行roslaunch livox_ros_driver2 msg_MID360.launchroslaunch fast_lio mapping_mid360.launch
然后你就能看到建图的点云,如果出现有警告没关系,不用管他
到这里就都结束了,下一个讲解fastlio和px4通讯让实机飞起来, 有疑问的地方欢迎提问