主要内容

定位与姿态估计

惯性导航、位姿估计、扫描匹配、蒙特卡罗定位

使用定位和姿态估计算法来定位您的车辆在您的环境中。传感器姿态估计使用滤波器来改善和组合IMU、GPS和其他传感器读数。定位算法,如蒙特卡罗定位和扫描匹配,利用距离传感器或激光雷达读数在已知地图上估计你的姿态。姿态图跟踪你估计的姿态,并可以基于边缘约束和循环闭包进行优化。有关同步本地化和映射,请参见大满贯

功能

全部展开

ahrsfilter 从加速度计,陀螺仪和磁力计读数的方向
ahrs10filter MARG和高度计读数的高度和方位
complementaryFilter 基于互补滤波器的方向估计
ecompass 从磁力计和加速度计读数定位
imufilter 加速度计和陀螺仪读数的方向
insfilter 创建惯性导航滤波器
insfilterAsync 从异步MARG和GPS数据估计姿态
insfilterErrorState 从IMU、GPS和单目视觉里程计(MVO)数据估计姿态
insfilterMARG 根据MARG和GPS数据估计姿态
insfilterNonholonomic 用非完整约束估计位姿
tunerconfig Fusion过滤器调谐器配置选项
tunerPlotPose 在调优期间,绘图过滤器的姿态估计
stateEstimatorPF 创建粒子滤波器状态估计器
getStateEstimate 从粒子中提取最佳状态估计和协方差
预测 预测机器人在下一时刻的状态
正确的 调整基于传感器测量的状态估计
matchScans 估计两个激光扫描之间的姿势
matchScansGrid 使用网格搜索估计两个激光雷达扫描之间的姿态
火柴扫描线 利用直线特征估计两次激光扫描之间的姿态
transformScan 基于相对位姿的激光扫描变换
lidarScan 创建存储2-D激光雷达扫描的对象
monteCarloLocalization 使用距离传感器数据和地图定位机器人
lidarScan 创建存储2-D激光雷达扫描的对象
获取粒子 通过定位算法获取粒子
里程计模型 创建一个里程计运动模型
likelihoodFieldSensorModel 创建似然场距离传感器模型
resamplingPolicyPF 创建具有重采样设置的重采样策略对象
poseGraph 创建2-D姿势图
poseGraph3D 创建3-D姿势图
addPointLandmark 在姿态图中添加地标点节点
addRelativePose 在姿势图中添加相对姿势
edgeNodePairs 位姿图中的边节点对
edgeConstraints 位姿图中的边约束
edgeResidualErrors 计算位姿图的边缘残差
findEdgeID 找到边的边ID
nodeEstimates 位姿图中节点的位姿
optimizePoseGraph 优化姿态图中的节点
removeEdges 从图形中删除循环闭合边
显示 情节构成图
修剪环闭合 优化姿态图,消除坏循环封闭
wheelEncoderOdometryAckermann 使用车轮编码器滴答声和转向角度计算阿克曼车辆里程
wheelEncoderOdometryBicycle 使用车轮编码器滴答声和转向角度计算自行车里程
wheelEncoderOdometryDifferentialDrive 使用车轮编码器滴答声计算差动驱动车辆里程
车轮编码器测力循环 使用轮编码器刻度和角速度计算独轮车里程

主题

传感器融合

使用头部跟踪的双耳音频渲染

通过融合从IMU接收到的数据跟踪头的方向,然后利用头相关传递函数(HRTF)控制声源到达的方向。

通过惯性传感器融合估计方向

这个例子展示了如何使用6轴和9轴融合算法来计算方向。

用于方位估计的记录传感器数据对齐

这个示例展示了如何对齐和预处理已记录的传感器数据。

使用四元数SLERP的低通滤波器定位

这个例子展示了如何使用球面线性插值(SLERP)来创建四元数序列和低通滤波器噪声轨迹。

来自异步传感器的姿态估计

这个例子展示了如何以不同的速度融合传感器来估计姿态。

选择惯性传感器融合滤波器

惯性传感器融合滤波器的适用性和局限性。

用互补滤波器和IMU数据估计方向

这个例子展示了如何从Arduino传输IMU数据,并使用互补过滤器估计方向。

利用惯性传感器融合和MPU-9250估计方向

该示例演示了如何从InvenSense MPU-9250 IMU传感器获取数据,并在传感器数据中使用6轴和9轴融合算法来计算设备的方向。

基于BNO055的无线数据流和传感器融合

此示例显示如何通过HC-05 Bluetooth®模块从Bosch BNO055 IMU传感器获取数据,并在传感器数据上使用9轴AHRS融合算法来计算设备的方向。

自定义调优融合滤波器

使用调优函数优化多个融合滤波器的噪声参数,包括ahrsfilter对象

定位算法

用蒙特卡洛定位乌龟机器人

这个例子演示了蒙特卡罗定位(MCL)算法在模拟Gazebo®环境下的TurtleBot®上的应用。

通过改变姿势进行一系列激光扫描

使用matchScans函数来计算一系列激光扫描之间的位姿差。

基于IMU的网格激光雷达扫描匹配搜索范围最小化

此示例显示如何使用惯性测量单元(IMU)最小化扫描匹配算法的旋转角度搜索范围。

利用位姿图减少三维视觉里程计轨迹漂移

这个例子展示了如何使用三维姿态图优化减少单目摄像机估计轨迹(位置和方向)中的漂移。

蒙特卡罗定位算法

采用蒙特卡罗定位(MCL)算法估计机器人的位置和姿态。

粒子滤波参数

使用stateEstimatorPF(Robotics System Toolbox)粒子滤波器,您必须指定参数,如粒子的数量,初始粒子位置,和状态估计方法。

粒子滤波的工作流

粒子滤波器是一种递归的贝叶斯状态估计器,它使用离散粒子来近似估计状态的后验分布。

特色的例子