当前位置:网站首页>Detailed explanation of 19 dimensional integrated navigation module sinsgps in psins (time synchronization part)
Detailed explanation of 19 dimensional integrated navigation module sinsgps in psins (time synchronization part)
2022-07-07 02:48:00 【Python Xiaobai (Xiaohei in the next stage)】
PSINS in 19 Dimensional integrated navigation module sinsgps Detailed explanation
Time synchronization part
Time asynchronous error principle
See chart 7.3.2, In inertia / In the integrated satellite navigation system , The time when the integrated navigation computer obtains the navigation information of the two types of sensors is often not the time when the actual information of the sensors is collected (A and B), There is a certain time lag between sensor information acquisition and integrated navigation calculation ﹐ For example, after the satellite receiver collects the radio signal ﹐ A series of solutions are needed first , Then it is sent to the integrated navigation computer through the communication port . The time lag of inertial and satellite sensors is generally different , The relative lag between the two is recorded as time asynchronous error delta t
. When comparing integrated navigation information , The time synchronization error must be estimated or compensated .
When analyzing the time synchronization error , It is assumed that the rod arm error between inertial navigation and satellite navigation has been corrected . Pictured 7.3.2 Shown , The relationship between inertial navigation speed and satellite speed should be
Time out of sync error code
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
Time out of sync initialization
1.imugpssyn(imu(:,end), gps(:,end));
Initialize the module for parameters with time out of sync , the imu and gps The time of is assigned to the global variable
2. [kgps, dt] = imugpssyn(k, k1, 'F');
This code block in the subsequent code , Is to look for gps
The time is imu
In the middle of two moments :imu
Time is t0
,t1
;gps
Time is tg
; if t0<tg<t1
, be dT=t1-tg
;
边栏推荐
- C#/VB. Net to delete watermarks in word documents
- 差异与阵列和阵列结构和链表的区别
- 【Node学习笔记】chokidar模块实现文件监听
- 哈希表及完整注释
- unity webgl自适应网页尺寸
- 导数、偏导数、方向导数
- Code line breaking problem of untiy text box
- C#/VB.NET 删除Word文档中的水印
- 3 -- Xintang nuc980 kernel supports JFFS2, JFFS2 file system production, kernel mount JFFS2, uboot network port settings, and uboot supports TFTP
- 6-6 vulnerability exploitation SSH security defense
猜你喜欢
如何设计好接口测试用例?教你几个小技巧,轻松稿定
MATLB|具有储能的经济调度及机会约束和鲁棒优化
慧通编程入门课程 - 2A闯关
基于ensp防火墙双击热备二层网络规划与设计
MySQL - common functions - string functions
MySQL提升大量数据查询效率的优化神器
Draco - gltf model compression tool
MySQL --- 常用函数 - 字符串函数
一文读懂Faster RCNN
Ali yunyili: how does yunyuansheng solve the problem of reducing costs and improving efficiency?
随机推荐
wireshark安装
Application analysis of face recognition
Error in fasterxml tostringserializerbase
KYSL 海康摄像头 8247 h9 isapi测试
Examples of how to use dates in Oracle
QPushButton-》函数精解
MySQL提升大量数据查询效率的优化神器
Station B's June ranking list - feigua data up main growth ranking list (BiliBili platform) is released!
Untiy文本框的代码换行问题
MySQL is an optimization artifact to improve the efficiency of massive data query
C#/VB.NET 删除Word文档中的水印
What management points should be paid attention to when implementing MES management system
Static proxy of proxy mode
从零安装Redis
Redis入门完整教程:复制拓扑
Statistics of radar data in nuscenes data set
Difference and the difference between array and array structure and linked list
Gee upgrade can realize one piece of run tasks
Apifox,你的API接口文档卷成这样了吗?
慧通编程入门课程 - 2A闯关