文档帮助中心文档
insSensor
惯性导航系统和GNSS / GPS仿真模型
的insSensor系统对象™模型设备,融合测量从一个惯性导航系统(INS)和全球导航卫星系统(GNSS)如GPS、并输出融合测量。
输出融合INS和GNSS测量:
创建insSensor对象并设置其属性。
调用对象的参数,就好像它是一个函数。
了解更多关于系统对象是如何工作的,看到的系统对象是什么?
INS = insSensor
INS = insSensor(名称、值)
例子
INS= insSensor返回一个系统对象,INS,模型输出测量的INS和GNSS的装置。
INS= insSensor
INS
INS= insSensor (名称,值)集属性使用一个或多个名称-值对。未指定的属性有默认值。在报价附上每个属性的名字。
INS= insSensor (名称,值)
名称,值
全部展开
属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。
释放
如果一个属性可调在任何时候,你可以改变它的值。
改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象。
MountingLocation
(0 0 0)
位置传感器的平台,在米,指定为一个三元素实值向量的形式xyz]。向量定义传感器的起源从原点的偏移的平台。
可调:是的
数据类型:单|双
单
双
RollAccuracy
0.2
辊的精度测量传感器的身体,在度,指定为一个非负实数。
卷是周围的旋转x设在传感器的身体。滚动噪声建模为一个白噪声过程。RollAccuracy集卷测量噪声的标准差。
PitchAccuracy
球场的精度测量传感器的身体,在度,指定为一个非负实数。
球场是周围的旋转y设在传感器的身体。音调噪声建模为一个白噪声过程。PitchAccuracy定义了螺距测量噪声的标准差。
YawAccuracy
1
偏航传感器测量精度的身体,在度,指定为一个非负实数。
偏航是周围的旋转z设在传感器的身体。偏航噪声建模为一个白噪声过程。YawAccuracy定义了偏航测量噪声的标准差。
PositionAccuracy
(1 1 1)
身体的位置测量传感器,精度在米,指定为非负实数或三元素实值向量。向量的元素设置的准确性x- - - - - -,y- - - - - -,z分别测量-安置。如果您指定PositionAccuracy作为一个标量值,那么对象集所有三个位置的准确性这个值。
位置噪声建模为一个白噪声过程。PositionAccuracy定义位置测量噪声的标准差。
VelocityAccuracy
0.05
传感器的速度测量精度的身体,在米每秒,指定为一个非负实数。
速度噪声建模为一个白噪声过程。VelocityAccuracy定义了速度测量噪声的标准差。
AccelerationAccuracy
0
加速度传感器测量精度的身体,在米每秒,指定为一个非负实数。
加速度噪声建模为一个白噪声过程。AccelerationAccuracy定义加速度测量噪声的标准差。
AngularVelocityAccuracy
传感器的角速度测量精度的身体,在米每秒,指定为一个非负实数。
角速度是建模为一个白噪声过程。AngularVelocityAccuracy定义加速度测量噪声的标准差。
TimeInput
假
真正的
允许输入的模拟时间,指定为一个逻辑0(假)或1(真正的)。将此属性设置为真正的通过使用输入仿真时间simTime论点。
simTime
可调:没有
数据类型:逻辑
逻辑
HasGNSSFix
启用GNSS修复,指定为一个逻辑1(真正的)或0(假)。将此属性设置为假模拟GNSS接收机修复的损失。GNSS接收机修复丢失时,指定的位置测量漂移速度PositionErrorFactor财产。
PositionErrorFactor
要启用这个特性,设置TimeInput来真正的。
位置误差因素没有GNSS修复,指定为一个标量或1×3向量的标量。
当HasGNSSFix属性设置为假,位置误差的增长速度二次加速度计由于常数的偏见。一个位置组件的位置误差E(t)可以表示为E(t)= 1/2αt2,在那里α是相应的组件和位置误差因素t是自GNSS修复丢失的时间。在运行时,对象的计算t基于simTime输入。计算出的E(t)的值x,y,z组件的组件被添加到相应的位置gTruth输入。
gTruth
要启用这个特性,设置TimeInput来真正的和HasGNSSFix来假。
RandomStream
“全球流”
“与种子mt19937ar”
随机数来源,指定这些选项之一:
“全球流”——使用当前全球随机数生成随机数流。
“与种子mt19937ar”——使用mt19937ar算法生成随机数,指定的种子种子财产。
种子
数据类型:字符|字符串
字符
字符串
67年
的初始种子mt19937ar随机数发生器算法,指定为一个非负整数。
要启用这个特性,设置RandomStream来“与种子mt19937ar”。
数据类型:单|双|int8|int16|int32|int64|uint8|uint16|uint32|uint64
int8
int16
int32
int64
uint8
uint16
uint32
uint64
测量= INS (gTruth)
测量= INS (gTruth simTime)
测量= INS (gTruth)模型从一个INS传感器接收到的数据阅读和GNSS传感器读数。真实的输出测量是基于惯性传感器的身体状态,gTruth。
测量
测量= INS (gTruth,simTime)另外指定模拟的时候,simTime。要启用这种语法,设置TimeInput财产真正的。
测量= INS (gTruth,simTime)
惯性传感器身体的真实状态,在当地笛卡尔坐标系,指定为一个包含这些字段的结构:
“位置”
位置,在米,指定为一个真正的、有限的N3的矩阵xyz)向量。N在当前帧的样本数量。
“速度”
速度(v),米每秒,指定为一个真正的、有限的N3的矩阵vxvyvz)向量。N在当前帧的样本数量。
“定位”
取向对当地的笛卡儿坐标系统,指定为这些选项之一:
N元的列向量四元数对象
四元数
3-by-3-by -N旋转矩阵的数组
N3的矩阵x卷y球场z偏航)角的度
每一个四元数或旋转矩阵是一个框架旋转从本地笛卡尔坐标系统电流传感器体坐标系。N在当前帧的样本数量。
“加速”
加速度(一个米每秒的平方),指定为一个真正的、有限的N3的矩阵一个x一个y一个z)向量。N在当前帧的样本数量。
“AngularVelocity”
角速度(ω),在度每秒的平方,指定为一个真正的、有限的N3的矩阵ωxωyωz)向量。N在当前帧的样本数量。
必须的字段值类型双或单。
的位置,速度,取向字段是必需的。其他字段是可选的。
位置
速度
取向
例子:结构(“位置”,[0 0 0],“速度”,[0 0 0],“定位”,四元数([1 0 0 0]))
结构(“位置”,[0 0 0],“速度”,[0 0 0],“定位”,四元数([1 0 0 0]))
仿真时间,以秒为单位,指定为一个非负实数。
测量传感器的身体运动,在当地的笛卡尔坐标,返回包含这些字段的结构:
返回的字段值的类型双或单和相同类型的中相应的字段值gTruth输入。
使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:
obj
发行版(obj)
扰动
扰乱
一步
克隆
isLocked
重置
全部折叠
创建一个动态结构,定义了一个固定位置在当地north-east-down (NED)的起源。因为这个平台是静止的,你只需要定义一个样本。假设真实运动采样10秒100 Hz采样率。创建一个默认的insSensor系统对象™。Preallocate变量来保存的输出insSensor对象。
Fs = 100;时间= 10;numSamples = f *时间;运动=结构(…“位置”,0 (1、3)…“速度”,0 (1、3)…“定位”,(1,1,“四元数”));INS = insSensor;positionMeasurements = 0 (numSamples, 3);velocityMeasurements = 0 (numSamples, 3);orientationMeasurements = 0 (numSamples 1“四元数”);
在一个循环中,调用INS运动与静止的结构返回位置,速度,在当地NED和方向测量坐标系统。日志的位置、速度和姿态测量。
为=我= 1:numSamples测量INS(运动);:positionMeasurements(我)= measurements.Position;:velocityMeasurements(我)= measurements.Velocity;orientationMeasurements (i) = measurements.Orientation;结束
从四元数与欧拉角转换方向可视化的目的。情节的位置、速度和方向测量。
orientationMeasurements = eulerd (orientationMeasurements,“ZYX股票”,“帧”);t = (0: (numSamples-1)) / Fs;次要情节(1,1)情节(t, positionMeasurements)标题(“位置”)包含(“时间(s)”)ylabel (“位置(m)”)传说(“北”,“东”,“下来”次要情节(3、1、2)情节(t, velocityMeasurements)标题(“速度”)包含(“时间(s)”)ylabel (“速度(米/秒)”)传说(“北”,“东”,“下来”次要情节(3,1,3)情节(t, orientationMeasurements)标题(“定位”)包含(“时间(s)”)ylabel (的旋转(度))传说(“滚”,“节”,“偏航”)
生成INS测量使用insSensor系统对象™。使用waypointTrajectory生成真实的道路。
waypointTrajectory
指定一个真实取向,从传感器的身体开始x设在北部和结尾与传感器的身体x设在与东方。指定路径点弧形轨迹和到场时间向量对应的锚点。使用一个100 Hz采样率。创建一个waypointTrajectory系统对象的路径约束和设置SamplesPerFrame这整个轨迹输出一个电话。
SamplesPerFrame
eulerAngles = [0, 0, 0;…0,0,0;…90年,0,0;…90年,0,0);取向=四元数(eulerAngles,“eulerd”,“ZYX股票”,“帧”);r = 20;路点= [0,0,0;…100年,0,0;…100 + r, r, 0;…100 + r, 100 + r, 0);toa =[0、10、10 +(2 *π* r / 4), 20 +(2 *π* r / 4)];Fs = 100;numSamples =地板(Fs * toa(结束));路径= waypointTrajectory (“锚点”锚点,…“TimeOfArrival”toa,…“定位”取向,…“SampleRate”Fs,…“SamplesPerFrame”,numSamples);
创建一个insSensor系统接收INS数据对象模型。设置PositionAccuracy来0.1。
0.1
ins = insSensor (“PositionAccuracy”,0.1);
调用路径轨迹对象,路径真实,产生运动。叫INS模拟器,ins真实的运动生成INS测量。
路径
ins
[motion.Position, motion.Orientation,运动。速度]=路径();insMeas = ins(运动);
转换返回的取向ins欧拉角的度可视化的目的。随着时间的推移图的完整路径和方向。
orientationMeasurementEuler = eulerd (insMeas.Orientation,“ZYX股票”,“帧”);次要情节(2,1,1)情节(insMeas.Position (: 1), insMeas.Position (:, 2));标题(“路径”)包含(“北(m)”)ylabel (“东(m)”次要情节(2,1,2)t = (0: (numSamples-1)。/ Fs;情节(t, orientationMeasurementEuler (: 1),…t, orientationMeasurementEuler (:, 2),…t, orientationMeasurementEuler (:, 3));标题(“定位”)传说(“偏航”,“节”,“滚”)包含(“时间(s)”)ylabel (的旋转(度))
对象的功能,扰动和扰乱,不支持代码生成。万博1manbetx
使用笔记和限制:
看到系统在MATLAB代码生成对象(MATLAB编码器)。
imuSensor
gpsSensor
你有一个修改版的这个例子。你想打开这个例子与编辑?
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站翻译内容,看到当地事件和提供。根据你的位置,我们建议您选择:。
你也可以从下面的列表中选择一个网站:
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。
联系你当地的办公室