主要内容

stateSpaceDubins

状态空间的杜宾车辆

自从R2019b

描述

stateSpaceDubins对象参数和状态存储在杜宾状态空间,这是由状态向量表示为(x,y,θ]。xy笛卡尔坐标,θ是定向角。杜宾状态空间的上下限转弯半径(指定的MinTurningRadius属性的对象)之间的导航状态和使用最短的可行的曲线连接状态。

创建

描述

例子

空间= stateSpaceDubins创建一个杜宾状态空间对象的默认状态边界x,y,θ

空间= stateSpaceDubins (界限)指定了界限x,y,θ。状态值超出了边界截断边界。输入,界限,允许你设置的值StateBounds财产。

属性

全部展开

状态空间的名称,指定为一个字符串。

这个属性是只读的。

状态空间的维度,指定为一个正整数。

状态变量的范围,指定为一个3×2实值矩阵。

  • 第一行指定的上下界限x在米。

  • 第二行指定的上下界限y在米。

  • 第三行指定的上下界限θ州弧度。

数据类型:

最小转弯半径(米,指定为一个积极的标量。最小的圆的最小转弯半径最大的车辆可以引导在一个方向。

对象的功能

复制 状态空间对象的创建深复制
距离 两个国家之间的距离
enforceStateBounds 减少州边界
插入 国家之间插入
sampleGaussian 示例使用高斯分布状态
sampleUniform 示例使用均匀分布状态

例子

全部折叠

创建一个杜宾状态空间,设置最小图灵半径0.2

党卫军= stateSpaceDubins;ss.MinTurningRadius = 0.2;

创建一个occupancyMap使用创建的状态空间的状态验证器。

sv = validatorOccupancyMap (ss);

从一个例子创建一个占用地图地图和地图分辨率设置为10细胞/米。

负载exampleMaps地图= occupancyMap (simpleMap 10);sv。地图=地图;

设置验证验证器的距离。

sv。ValidationDistance = 0.01;

更新状态空间边界地图限制一样。

ss.StateBounds = [map.XWorldLimits; map.YWorldLimits;[-ππ]];

创建路径规划和增加最大连接距离。

规划师= plannerRRT (ss、sv);计划。MaxConnectionDistance = 0.3;

设定开始和目标状态。

开始= (0.5,0.5,0);目标= (2.5,0.2,0);

计划路径和默认设置。

rng (100“旋风”);%可重复的结果[pthObj, solnInfo] = planner.plan(开始,目标);

可视化结果。

显示(地图);持有;情节(solnInfo.TreeData (: 1) solnInfo.TreeData (:, 2),“。”);%树扩张情节(pthObj.States (: 1) pthObj.States (:, 2),的r -,“线宽”,2)%画出路径

图包含一个坐标轴对象。坐标轴对象与标题占用网格,包含X [m], ylabel Y [m]包含3类型的对象形象,线。

扩展功能

C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。

版本历史

介绍了R2019b