主要内容

扰乱

对物体施加扰动

描述

例子

偏移量=扰乱(obj应用定义在物体上的扰动,obj并返回偏移量。方法定义对象上的扰动扰动函数。

例子

全部折叠

定义一个路径点轨迹。默认情况下,该轨迹包含两个路径点。

traj = waypoint弹道
traj = waypointTrajectory with properties: SampleRate: 100 SamplesPerFrame: 1 Waypoints: [2x3 double] TimeOfArrival: [2x1 double] velocity: [2x3 double] Course: [2x1 double] GroundSpeed: [2x1 double] ClimbRate: [2x1 double] Orientation: [2x1 quaternion] AutoPitch: 0 AutoBank: 0 ReferenceFrame: 'NED'

上定义扰动路点财产和TimeOfArrival财产。

rng (2020);扰动1 =扰动(traj,“锚点”“正常”, 1, 1)
perturbs1 =2×3表属性类型值  _______________ ________ __________________ " 路点”“正常”{[1]}{[1]}”TimeOfArrival”“没有”{(南)}{(南)}
扰动s2 =扰动(traj,“TimeOfArrival”“选择”, {[0, 1], [0; 2]})
perturbs2 =2×3表属性类型值  _______________ ___________ _______________________________ " 路点”“正常”{[1]}{[1]}”TimeOfArrival”“选择”{1 x2细胞}{[0.5000 - 0.5000]}

扰动轨迹。

偏移量=扰动(traj)
偏移量=2×1包含字段的struct数组:属性偏移PerturbedValue

路点财产和TimeOfArrival属性发生了变化。

traj。路点
ans =2×31.8674 1.0203 0.7032 2.3154 -0.3207 0.0999
traj。TimeOfArrival
ans =2×10 2

创建一个insSensor对象。

传感器
sensor = insSensor with properties: MountingLocation: [0 0 0] m RollAccuracy: 0.2 deg PitchAccuracy: 0.2 deg YawAccuracy: 1 deg PositionAccuracy: [1 1 1] m VelocityAccuracy: 0.05 m/s AccelerationAccuracy: 0 m/s²AngularVelocityAccuracy: 0 deg/s TimeInput: 0 RandomStream: '全局流'

定义上的扰动RollAccuracy属性为三个值,每个值的可能性相等。

值= {0.1 0.2 0.3}
值=1×3单元格数组{[0.1000]} {[0.2000]} {[0.3000]}
概率= [1/3 /3 /3]
概率=1×30.3333 0.3333 0.3333
扰动(传感器,“RollAccuracy”“选择”、价值观、概率)
ans =7×3表属性类型值  _________________________ ___________ ______________________________________ " RollAccuracy”“选择”{1 x3细胞}{[0.3333 0.3333 0.3333]}”PitchAccuracy”“没有”{(南)}{(南)}”YawAccuracy”“没有”{(南)}{(南)}”PositionAccuracy”“没有”{(南)}{(南)}”VelocityAccuracy”“没有”{(南)}{(南)}”AccelerationAccuracy”“没有”{(南)}{(南)}”AngularVelocityAccuracy”“没有”{(南)}{(南)}

扰乱的传感器对象使用摄动函数。

rng(2020)扰乱(传感器);传感器
sensor = insSensor with properties: MountingLocation: [0 0 0] m RollAccuracy: 0.5 deg PitchAccuracy: 0.2 deg YawAccuracy: 1 deg PositionAccuracy: [1 1 1] m VelocityAccuracy: 0.05 m/s AccelerationAccuracy: 0 m/s²AngularVelocityAccuracy: 0 deg/s TimeInput: 0 RandomStream: 'Global stream'

RollAccuracy是不安到0.5度。

创建一个imuSensor对象,并显示其摄动性质。

imu = imsensor;扰动(imu)
ans =17×3表属性类型值  ______________________________________ ______ __________________ " 加速度计。MeasurementRange" "None" {[NaN]} {[NaN]} "加速度计。分辨率" "无" {[NaN]} {[NaN]} "加速度计。ConstantBias" "None" {[NaN]} {[NaN]} "加速度计。noiseddensity " "None" {[NaN]} {[NaN]} "加速度计。BiasInstability" "None" {[NaN]} {[NaN]} "加速度计。RandomWalk" "None" {[NaN]} {[NaN]} "加速度计。TemperatureBias" "None" {[NaN]} {[NaN]} "加速度计。TemperatureScaleFactor" "None" {[NaN]} {[NaN]} "陀螺仪。MeasurementRange" "None" {[NaN]} {[NaN]} "陀螺仪。分辨率““无”{[NaN]} {[NaN]} "陀螺仪。ConstantBias" "None" {[NaN]} {[NaN]} "陀螺仪。噪声密度" "无" {[NaN]} {[NaN]} "陀螺仪。偏差不稳定性" "无" {[NaN]} {[NaN]} "陀螺仪。随机行走" "None" {[NaN]} {[NaN]} "陀螺仪。温度偏差" "无" {[NaN]} {[NaN]} "陀螺仪。TemperatureScaleFactor" "None" {[NaN]} {[NaN]}»

的扰动NoiseDensity加速度计的特性为均匀分布。

扰动(imu,加速度计。NoiseDensity”...“统一”1 e-5 1 e - 3);

的扰动随机散步陀螺仪的特性是截断正态分布。

Perts =扰动(imu,的陀螺仪。随机散步的...“TruncatedNormal”2 1 e-5 0正);

加载预录制的IMU数据。

负载imuSensorData.matnumSamples =大小(方向);

模拟imuSensor用不同的扰动实现了三次。

rng (2021);%用于可重复的结果numRuns = 3;颜色= [“b”“r”‘g’];idx = 1:numRuns%克隆IMU,保持原有值imuCopy =克隆(imu);%扰动噪声值offset = perturb(imuCopy);获得测量值[accelreads, gyroreads] = imuCopy(加速度,角速度,方向);绘制结果情节(次gyroReadings(:, 3),颜色(idx));持有结束包含(“时间(s)”) ylabel (陀螺读数z分量(rad/s))传说(“第一次”“第二传递”“第三通过”);持有

图中包含一个轴对象。axis对象包含3个line类型的对象。这些对象表示First Pass, Second Pass, Third Pass。

输入参数

全部折叠

输出参数

全部折叠

属性偏移量,作为结构数组返回。每个结构都包含以下字段:

字段名 描述
财产 扰动属性的名称
抵消 摄动中应用的偏移值
PerturbedValue 扰动后的属性值

版本历史

R2020b中介绍

另请参阅