主要内容

insfilterAsync滤波器的自动调谐

这个insfilterasync.(导航工具箱)对象是一个复杂的扩展卡尔曼滤波器,估计设备姿势。但是,手动调整过滤器或查找噪声参数的最佳值可能是一个具有挑战性的任务。此示例说明了如何使用(导航工具箱)函数优化滤波器噪声参数。

弹道和传感器设置

来说明insfilterasync.过滤器,使用简单的随机航路点轨迹免疫传感器GPS传感器对象为过滤器创建输入。

%IMU以100 Hz的频率运行,GPS以1 Hz的频率运行。imurate=100;gpsrate=1;decim=激励/gpsrate;%创建一个随机航点轨迹。rng(1)净现值=4;%航路点数量wpPer=5;%在航点之间的时间tstart = 0;趋于= WPPER *(NPTS -1);wp = waypointtrajectory(“航路点”,5*兰特(净现值,3),...“到达时间”,TSTART:WPPER:倾向于,...“方向”,[四元管。Randrot(NPTS-1,1)],...“采样器”,刺激);[位置、方向、速度、加速度、角度速度]=注视(...WP,TSTART:(1 /刺激):趋势);%设置IMU并处理轨迹。imu=imu传感器(“采样器”,imurate);加载参数(imu,fullfile(matlabroot,...“工具箱”,“共享”,“定位”,“定位数据”,“generic.json”),...“genericlowcost9axis”)[加速计、陀螺仪、磁强计]=imu(加速度、,...角度(速度、方向);imuData=时间表(加速计、陀螺仪、磁强计、,“采样器”,刺激);%设置GPS传感器并处理轨迹。gps=gps传感器(“采样器”,gpsrate,“衰变因子”,0.5,...'stupernalpositionAccuracy',1.6,'verticalPositionAccuracy',1.6,...'velocityAccuracy',0.1);[GPSPosition,GPSVelocity]=全球定位系统(位置(1:decim:end,:),速度(1:decim:end,:);gpsData=时刻表(GPSPosition,GPSVelocity,“采样器”,gpsrate);%为调谐功能创建时间表。传感器数据=同步(imuData、gpsData);%创建一个时间表,捕捉地面真实姿势。地面实况=时间表(位置、方向、,“采样器”,刺激);

构造过滤器

这个insfilterasync.过滤器融合来自异步运行的多个传感器的数据

filtUntuned=insfilterAsync;

确定过滤器初始条件

设置初始值状态状态协方差属性基于地面真相。通常要获得初始值,您将使用第一个若干样本Sensoldata.但是,在本例中地面用于设置滤波器快速收敛的初始状态。

idx=stateinfo(Filtuned);Filtuned.State(idx.Orientation)=compact(Orientation(1));Filtuned.State(idx.AngularVelocity)=AngularVelocity(1,:);Filtuned.State(idx.Velocity)=加速度(1,:);Filtuned.State(idx.AccelerometerBias)=imu.Accelerator.ConstantBias;Filtuned.State(idx.陀螺仪偏置)=imu.陀螺仪.ConstantBias;Filtuned.State(idx.GeomagneticFieldVector)=imu.MagneticField;Filtuned.State(idx.MagnetometerBias)=imu.Magnetometer.ConstantBias;Filtuned.StateC协方差=1e-5*eye(numel(Filtuned.State));%稍后创建FILTuned对象的副本以进行调整。filtTuned=复制(filtUntuned);

过程Sensoldata.带有一个无限的过滤器

使用调谐器噪声创建测量噪声的功能,也需要调整。为了说明要调整的必要性,请首先使用滤波器及其默认参数。

mn=调谐噪声(“insfilterAsync”);[posUntunedEst,orientUntunedEst]=保险丝(filteuntuned,传感器数据,mn);

调整过滤器和流程Sensoldata.

使用函数以最小化两个参数之间的均方根(RMS)误差地面和州预算。

cfg=调谐配置(类(滤波调谐),“最大迭代次数”,15,'向前一步',1.1);tunedmn=调谐(滤波调谐,mn,传感器数据,地面实况,cfg);
迭代参数公制加速度计噪声4.5898 1陀螺仪噪声4.5694 1磁力仪噪声4.5481 1 gps位置噪声4.4737 1 gps低频噪声4.2984 1四元数噪声4.2984 1角速度噪声3.9668 1位置噪声3.9668 1速度噪声3.9668加速度噪声3.9556 1陀螺仪噪声3.9556加速度计噪音3.9511 1地磁矢量噪音3.9511 1磁力仪噪音3.9360 2加速度计噪音3.9360 2陀螺仪噪音3.9360 2磁力仪噪音3.9064 2 GPs位置噪音3.9064 2 GPs低频噪音3.7129 2四元数噪音3.7122 2角速度噪音3.0116 2位置噪音3.0116 2速度噪音3.0116 2加速噪音2.9850 2陀螺仪噪声2.9850 2加速度计噪声2.9824 2地磁矢量噪声2.9824 2磁力仪噪声2.9821 3加速度计噪声2.9821 3陀螺仪噪声2.9613 3磁力仪噪声2.9432 3 gps位置噪声2.9432 3 gps低频噪声2.8373 3四元数噪声2.8369 3角速度噪声2.6993 3位置噪声2.6993 3速度噪声2.6993 3加速度噪声2.6993 3陀螺仪噪声2.6993 3加速度计噪声2.6971 3地磁矢量噪声2.6971 3磁测噪声2.6955 4加速度计噪声2.6941 4陀螺仪噪声2.6797 4磁测噪声2.6676 4 gps位置噪声2.6626 4 gps加速度噪声2.5530 4四元数噪声2.5530 4角速度噪声2.4285 4位置噪声2.4285 4速度噪声2.4285 4加速度噪声2.4232 4陀螺仪噪声2.4232 4加速度计噪声2.4217 4地磁矢量噪声2.4217 4磁强计噪声2.4023 5加速度计噪声2.4019 5陀螺仪噪声2.3900 5磁强计噪声2.3900 5 gps位置噪声2.3887 5 gps低频噪声2.2986 5四元数噪声2.2986 5角速度噪声2.1945 5位置噪声2.1945 5速度噪声2.1945 5加速度噪声2.1863 5陀螺仪偏置噪声2.1863 5加速度计噪声2.1856 5地磁矢量噪声2.1856 5磁强计噪声2.1615 6加速度计噪声2.1613 6陀螺仪噪声2.1393 6磁强计噪声2.1199 6 gps位置噪声2.1112 6 GPS加速度噪声2.0140 6四元数噪声2.0140 6角速度噪声1.9288 6位置噪声1.9288 6速度噪声1.9288 6加速度噪声1.9242 6陀螺仪偏置1.9242 6加速度计轨道噪声1.9216 6地磁矢量噪声1.9216 6磁强计轨道噪声1.9054 7加速度计轨道噪声1.9047陀螺仪噪声1.8887磁强计噪声1.8820 7 gps位置噪声1.8803 7 gps加速度噪声1.7713 7四元数噪声1.7712 7角速度噪声1.7145 7位置噪声1.7145 7速度噪声1.7145 7加速度噪声1.7122 7陀螺仪偏置1.7122 7加速度噪声1.7112 7地磁矢量噪声1.7112 7磁强计噪声1.6873 8加速度噪声1.6853 8陀螺仪噪声1.6790 8磁力仪噪声1.6694 8 gps位置噪声1.6565 8 gps加速度噪声1.5700 8四元数噪声1.5676 8角速度噪声1.5366 8位置噪声1.5366 8速度噪声1.5366 8加速度噪声1.5366 8陀螺仪偏置1.5366 8加速度计噪声1.5353 8地磁矢量噪声1.5337 8磁强计噪声1.5166 9加速度计噪声1.5129 9陀螺仪噪声1.5117 9磁强计噪声1.5114 9 gps位置噪声1.4953 9 gps低频噪声1.4106 9四元数噪声1.4106 9角速度噪声1.3742 9位置噪声1.3742 9速度噪声1.3742 9加速度噪声1.3731 9陀螺仪偏置1.3731 9加速度计噪声1.3715 9地磁矢量噪声1.3715 9磁强计轨道噪声1.3576 10加速度计噪声1.3528 10陀螺仪噪声1.3528 10磁强计噪声1.3510 gps位置噪声1.3322 10 gps加速度噪声1.2512 10四元数噪声1.2512 10角速度噪声1.2507 10位置噪声1.2507 10速度噪声1.2507 10加速度噪声1.2497 10陀螺仪噪声1.2497 10加速度计噪声1.2480 10地磁矢量噪声1.2480 10磁测噪声1.23011加速度计噪声1.2233 11陀螺仪噪声1.2222 11磁测噪声1.2220 11 gps位置噪声1.2008 11 gps低频噪声1.1043 11四元数噪声1.1043 11角速度噪声1.1038 11位置噪声1.1038 11速度噪声1.1038 11加速度噪声1.1028 11陀螺仪噪声1.1028 11加速度计噪声1.1013 11地磁矢量噪声1.1013 11磁力仪噪声1.0867 12加速度计噪声1.0782 12陀螺仪噪声1.0767 12磁力仪噪声1.0733 12 gps位置噪声1.0505 12 gps加速度噪声0.9564 12四元数噪声0.9563 12角速度噪声0.9563 12位置噪声0.9563 12速度噪声0.9563 12加速度噪声0.9550 12陀螺仪偏置噪声0.9550 12加速度计噪声0.9534 12地磁矢量噪声0.9534 12磁强计噪声0.9402 13加速度计噪声0.9303 13陀螺仪噪声0.9291 13磁强计噪声0.9269 13 gps位置噪声0.9036 13GPS低速噪声0.8072 13四元数噪声0.8071 13角速度噪声0.8071 13位置噪声0.8071 13速度噪声0.8071 13加速度噪声0.8065 13陀螺仪偏置0.8065 13加速度计轨道号ise 0.8052 13 GeomagneticVectorNoise 0.8052 13 MagnetometerBiasNoise 0.7901 14 AccelerometerNoise 0.7806 14 GyroscopeNoise 0.7806 14 MagnetometerNoise 0.7768 14 GPSPositionNoise 0.7547 14 GPSVelocityNoise 0.6932 14 QuaternionNoise 0.6930 14 AngularVelocityNoise 0.6923 14 PositionNoise 0.6923 14 VelocityNoise 0.6923 14 AccelerationNoise 0.6906 14 GyroscopeBiasNoise 0.6906 14 AccelerometerBiasNoise 0.6896 14 GeomagneticVectorNoise 0.6896 14 MagnetometerBiasNoise 0.6801 15 AccelerometerNoise 0.6704 15 GyroscopeNoise 0.6676 15 MagnetometerNoise 0.6653 15 GPSPositionNoise 0.6469 15 GPSVelocityNoise 0.6047 15 QuaternionNoise 0.6047 15 AngularVelocityNoise 0.6037 15 PositionNoise 0.6037 15 VelocityNoise 0.6037 15 AccelerationNoise 0.6019 15 GyroscopeBiasNoise 0.6019 15 AccelerometerBiasNoise 0.6015 15 GeomagneticVectorNoise 0.6015 15 MagnetometerBiasNoise 0.5913
[postenedest,orientTunedEst]=保险丝(滤波调谐,传感器数据,调谐DMN);

比较调谐与非调谐滤波器

绘制来自调谐和未经过的过滤器的位置估计以及地面真理位置。然后,对调谐和未经过期的过滤器绘制定向误差(四元数距离)。调谐滤波器估计比未经过的滤波器更好的位置和方向。

%位置误差图;t=传感器数据。时间;子批次(3,1,1);绘图(t,[假定最(:,1)位置最不协调(:,1)位置(:,1)];标题(“位置”);伊莱贝尔(“X轴”);传奇(“调谐”,“不协调的”,“真相”); 子批次(3,1,2);图(t,[假定的最(:,2)最不协调的位置(:,2)位置(:,2)];伊拉贝尔('y轴'); 子批次(3,1,3);图(t,[假定的最(:,3)最不协调的位置(:,3)位置(:,3)];伊拉贝尔(“Z轴”);

%方向错误图形绘图(t,rad2deg(距离(方向,方向调谐)),...t、 rad2deg(dist(定向,定向不均匀));头衔(“方向错误”);伊莱贝尔(“学位”);传奇(“调谐”,“不协调的”);