5_树莓派机载计算机的实现SLAM定位教程——无名创新

树莓派机载计算机的实现SLAM定位教程

SLAM定位

激光雷达SLAM建图

首先确定已将飞机定点模式设置成Lidar/T265,具体操作方法见《从零开始学习飞控教程》—5躺赢者PRO飞控OLED显示屏主要页面介绍,因为SLAM定位时,飞控需要将自身位姿信息发送给机载计算机,提供base_stabilized到base_link之间的tf信息,缺少此tf信息无法完成slam定位。需要注意的是飞控后开启温控系统,然后执行陀螺仪标定过程,为了避免激光雷达转动过程影响陀螺仪标定过程,飞控发送位姿数据是在陀螺仪标定完成之后才发布的,机载计算机接收到位姿tf数据才使能激光雷达运转。

在这里插入图片描述

rplidar a2雷达安装方向为:

在这里插入图片描述

在这里插入图片描述

启动激光雷达slam定位脚本,通过终端输入如下命令:

roslaunch serialport serialport_rplidar_slam.launch

为了方便客户使用,上面的激光雷达定位脚本已经设置了开机自启动,自启动设置参考教程0中的开机自启动AP部分.

在这里插入图片描述

通过Rviz可以观察slam建图情况,查看slam输出的位姿态信息可以通过终端输入如下命令:

rostopic echo /poseupdate

在这里插入图片描述

在这里插入图片描述

查看飞控上发的位姿数据信息可以通过终端输入如下命令:

rostopic echo /flight_state

在这里插入图片描述

命令行输入rqt_topic会调用gui显示有关 ROS 主题的调试信息,包括发布者、订阅者、发布速率和 ROS 消息:

在这里插入图片描述

执行激光雷达slam定位脚本后,树莓派机载计算机会发送slam输出的位姿数据给飞控,飞控接收并解析数据帧后融合自身惯导加速度数据,得到飞机位置、速度估计用于飞机自身定位。

在这里插入图片描述

在SLAM定位模式下操作无人机前,需要先熟悉飞控教程中——《4、躺赢者PRO飞控解锁上锁、功能模式操作教程》的内容和操作类视频教程。

机载计算机控制无人机自主飞行

在激光雷达slam定位定况下,可以通过发布位置控制话题信息,控制飞行器自主飞行,终端输入:

rosrun auto_flight auto_flight_demo

在这里插入图片描述

执行的动作命令为一个边长为100cm的正方形轨迹,节点图信息可以直接输入命令行输入:rqt_graph

在这里插入图片描述

在这里插入图片描述

用户可以参考默认的demo,调整参数后catkin_make编译后,实现自定义轨迹飞行。

同理,当采用T265定位时,在终端命令行窗口输入如下命令:

roslaunch serialport serialport_t265.launch

在这里插入图片描述

在终端命令行窗口输入如下命令:

realsense-viewer

在这里插入图片描述

在这里插入图片描述

需要注意的是T265传感器需要接在树莓派4B的USB 3.0端口上,同时在树莓派4B、部分英伟达Nano上电自启动的过程中,usb的枚举过程失败,导致必须上电插拔后才能正常使用。由于T265已经停产,英特尔官方对此问题一直没有有效解决。

在这里插入图片描述

如果在启动时连接,则无法在树莓派 4 上识别 T265 ·问题 #5079 ·英特尔实感/自由感知 (github.com)

265 ·问题 #5079 ·英特尔实感/自由感知 (github.com)](https://github.com/IntelRealSense/librealsense/issues/5079)

T265 在启动后未正确枚举 ·问题 #4681 ·英特尔实感/自由感知 (github.com)

猜你喜欢

转载自blog.csdn.net/u011992534/article/details/123158682