当前位置:网站首页>PSINS中19维组合导航模块sinsgps详解(时间同步部分)
PSINS中19维组合导航模块sinsgps详解(时间同步部分)
2022-07-06 19:13:00 【python小白(下阶段小黑)】
时间同步部分
时间不同步误差原理
参见图7.3.2,在惯性/卫星组合导航系统中,组合导航计算机获得两类传感器导航信息的时刻往往不是传感器实际信息的采集时刻(A和B),从传感器信息采集到组合导航计算之间存在一定的时间滞后﹐比如卫星接收机采集到无线电信号后﹐需要先进行一系列的解算,再经过通信端口发送给组合导航计算机。惯性和卫星两类传感器的时间滞后一般并不相同,两者之间的相对滞后记为时间不同步误差delta t。在组合导航信息比对时,必须对时间不同步误差进行估计或补偿。
在分析时间不同步误差时,假设惯导与卫导之间的杆臂误差已经得到校正。如图7.3.2所示,惯导速度和卫星速度之间的关系应为
时间不同步误差代码
function [kgps, dt] = imugpssyn(k0, k1, ForB)
% SIMU & GPS time synchronization. A schematic diagram for time
% relationship between SIMU & GPS looks like
% k0 k1
% imu_t: -----|------*---|-----|--------
% <---dt---> (Forward)
% <--dt--> (Backward)
% gps_t: ------------|------------------
% kgps
% where k0,k1 for SIMU data log index and kgps for GPS data log index.
%
% Prototype: [kgps, dt] = imugpssyn(k0, k1, ForB)
% Usages:
% For initialization: imugpssyn(imut, gpst)
% where imut is SIMU time array, gpst is GPS time array
% For synchrony checking: [kgps, dt] = imugpssyn(k0, k1, ForB)
% It checks if there is any GPS sample between SIMU time interval
% imut(k0) and imut(k1), if exists, return the GPS index 'kgps'
% and time gap 'dt'.
% ForB='F' for forward checking,
% ForB='B' for backward checking,
% ForB='f' for re-setting from the first one,
% ForB='b' for re-setting from the last one.
%
% See also insupdate, kfupdate, POSProcessing, combinedata, combinet, igsplot.
% Copyright(c) 2009-2014, by Gongmin Yan, All rights reserved.
% Northwestern Polytechnical University, Xi An, P.R.China
% 03/02/2014
global igaln
if nargin==2 % initialization: imugpsaln(imut, gpst)
igaln.imut = k0; igaln.gpst = k1;
igaln.glen = length(igaln.gpst);
igaln.kgps = 1;
return;
end
k0 = k0-1;
if k0==0, k0 = 1; end
t0 = igaln.imut(k0); t1 = igaln.imut(k1);
kgps = 0; dt = 0;
if ForB=='F' % Forward search
while igaln.gpst(igaln.kgps)<t0
igaln.kgps = igaln.kgps + 1;
if igaln.kgps>igaln.glen
igaln.kgps = igaln.glen;
break;
end
end
tg = igaln.gpst(igaln.kgps);
if t0<tg && tg<=t1
kgps = igaln.kgps; dt = t1 - tg;
end
elseif ForB=='B' % Backward search
while igaln.gpst(igaln.kgps)>t1
igaln.kgps = igaln.kgps - 1;
if igaln.kgps==0
igaln.kgps = 1;
break;
end
end
tg = igaln.gpst(igaln.kgps);
if t0<=tg && tg<t1
kgps = igaln.kgps; dt = tg - t0;
end
elseif ForB=='f' % Forward re-intialization, set to the first one
igaln.kgps = 1;
elseif ForB=='b' % Backward re-intialization, set to the last one
igaln.kgps = igaln.glen;
end
时间不同步初始化
1.imugpssyn(imu(:,end), gps(:,end));为时间不同步的参数初始化模块,即将imu和gps的时间赋值给全局变量
2. [kgps, dt] = imugpssyn(k, k1, 'F');后续代码中的这个代码块,就是找gps的时间在imu的两个时刻中间的情况:imu时间分别为t0,t1;gps时间为tg;若t0<tg<t1,则dT=t1-tg;
边栏推荐
- Leetcode:minimum_ depth_ of_ binary_ Tree solutions
- Work of safety inspection
- Draco - gltf model compression tool
- QPushButton-》函数精解
- Untiy文本框的代码换行问题
- Halcon instance to opencvsharp (C openCV) implementation -- bottle mouth defect detection (with source code)
- MMDetection3D加载毫米波雷达数据
- QT common Concepts-1
- The annual salary of general test is 15W, and the annual salary of test and development is 30w+. What is the difference between the two?
- 【Socket】①Socket技术概述
猜你喜欢
随机推荐
普通测试年薪15w,测试开发年薪30w+,二者差距在哪?
fiddler的使用
Number theory --- fast power, fast power inverse element
MySQL --- 常用函数 - 字符串函数
QT common Concepts-1
3 -- Xintang nuc980 kernel supports JFFS2, JFFS2 file system production, kernel mount JFFS2, uboot network port settings, and uboot supports TFTP
Niuke programming problem -- double pointer of 101 must be brushed
Redis入门完整教程:复制拓扑
What are the characteristics of the operation and maintenance management system
The cities research center of New York University recruits master of science and postdoctoral students
MySQL
Compress JS code with terser
Linear list --- circular linked list
fasterxml ToStringSerializerBase报错
代码调试core-踩内存
进程管理基础
Lombok makes the pit of ⽤ @data and @builder at the same time
记一次JAP查询导致OOM的问题分析
Redis入门完整教程:复制配置
unity webgl自适应网页尺寸






![leetcode:5. Longest palindrome substring [DP + holding the tail of timeout]](/img/62/d4d5428f69fc221063a4f607750995.png)


