主要内容

rangeSensor

模拟距离轴承传感器读数

描述

rangeSensor系统对象™是一个距离轴承传感器,能够根据给定的传感器姿态和占用图输出距离和角度测量。距离读数是根据占用地图上的障碍物来计算的。

使用此对象模拟距离轴承传感器:

  1. 创建rangeSensor对象并设置其属性。

  2. 使用参数调用对象,就像调用函数一样。

有关系统对象如何工作的详细信息,请参见什么是系统对象?

创建

描述

例子

rbsensor= rangeSensor返回一个rangeSensor系统对象,rbsensor.传感器能够根据传感器姿态和占用图输出范围和角度测量。

rbsensor= rangeSensor (名称,值使用一个或多个名称-值对设置传感器的属性。未指定的属性有默认值。将每个属性名用引号括起来。

属性

全部展开

除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放功能解锁它们。

如果属性为可调,您可以随时更改其值。

有关更改属性值的详细信息,请参见使用系统对象的MATLAB系统设计

最小和最大可探测范围,指定为1乘2的正实值向量。单位是米。

例子:15 [1]

可调:是的

数据类型:|

最小和最大水平检测角,指定为1 × 2实值向量。单位以弧度为单位。

例子:(-π/ 3π/ 3)

数据类型:|

水平角度读数的分辨率,指定为正标量。分辨率定义了两个连续传感器读数之间的角度间隔。单位以弧度为单位。

例子:0.01

数据类型:|

距离噪声的标准偏差,用正标量表示。将距离噪声建模为具有指定标准偏差的零均值白噪声过程。单位是米。

例子:0.01

可调:是的

数据类型:|

水平角噪声的标准偏差,用正标量表示。将距离噪声建模为具有指定标准偏差的零均值白噪声过程。单位以弧度为单位。

例子:0.01

可调:是的

数据类型:|

此属性是只读的。

传感器每个姿态的输出读数数,指定为正整数。这个性质取决于HorizonalAngle而且HorizontalAngleResolution属性。

数据类型:|

使用

描述

范围= rbsensor(构成地图返回来自二维姿态信息和地面真相地图的距离和角度读数。

输入参数

全部展开

传感器在2-D地图中的位姿,指定为N-by-3实值矩阵,其中N是模拟传感器的姿势数。矩阵的每一行对应传感器的一个姿态,顺序为[xyθ]。x而且y表示传感器在地图帧中的位置。的单位x而且y单位是米。θ传感器的航向角是否相对于正方向x-地图帧的方向。的单位θ都是弧度单位。

地面真相地图,指定为occupancyMap(导航工具箱)或者一个binaryOccupancyMap(导航工具箱)对象。为occupancyMap输入时,距离轴承传感器认为单元格已被占用,如果单元格的占用概率大于指定的值,则返回一个范围读数OccupiedThreshold(导航工具箱)占用图的属性。

输出参数

全部展开

量程读数,指定为R——- - - - - -N实值矩阵。N传感器被模拟的姿势的数量,以及R是传感器每个姿态的传感器读数数。R等于NumReadings财产。

角度读数,指定为R-by-1实值向量。R是传感器每个姿态的传感器读数数。R等于NumReadings财产。

对象的功能

要使用对象函数,请将System对象指定为第一个输入参数。例如,释放system对象的系统资源obj,使用这种语法:

发行版(obj)

全部展开

一步 运行系统对象算法
克隆 创建重复的系统对象

例子

全部折叠

创建一个距离轴承传感器。

rbsensor = rangsensor;

指定传感器的位置和地面真相图。

truePose = [0 0 pi/4];trueMap = binaryoccuancymap (eye(10));

生成传感器读数。

[range, angles] = rbsensor(truePose, trueMap);

使用以下方法将结果可视化lidarScan

扫描= lidarScan(范围,角度);图绘制(扫描)

图中包含一个轴对象。标题为LiDAR Scan的axis对象包含一个类型为line的对象。

扩展功能

另请参阅

(导航工具箱)|(导航工具箱)|

R2020b中介绍