IE处理惯导数据的方法

上传人:工**** 文档编号:509701024 上传时间:2023-06-28 格式:DOC 页数:17 大小:1.53MB
返回 下载 相关 举报
IE处理惯导数据的方法_第1页
第1页 / 共17页
IE处理惯导数据的方法_第2页
第2页 / 共17页
IE处理惯导数据的方法_第3页
第3页 / 共17页
IE处理惯导数据的方法_第4页
第4页 / 共17页
IE处理惯导数据的方法_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《IE处理惯导数据的方法》由会员分享,可在线阅读,更多相关《IE处理惯导数据的方法(17页珍藏版)》请在金锄头文库上搜索。

1、三十三所惯导和里程计数据的处理方法说明运用WaypointInertialExplorer软件对三十三所采集的惯导数据和里程计数据,结合Novtal的GPS数据进展处理得到最终的pos数据。原始数据的预处理由于三十三所的惯导采集的数据格式是.IMUUTC格式的数据包含惯导和里程计数据,WaypointInertialExplorer软件对此格式不识别,需要进展格式转换:(以2015年3月4日良乡采集的试验数据为例)1MUUTC转换为.bin格式惯导数据和.dmr格式里程计数据A.IMU原始测量数据,数据格式如下:BYTEbtemp1,btemp2;fscanf(F_IMUUTC,%ld%d%d

2、%lf%lf%lf%lf%lf%lf%ld%d%lf,&(ImuAst.PC),&(btemp1),&(btemp2),&(Wibb0),&(Wibb1),&(Wibb2),&(Aibb0),&(Aibb1),&(Aibb2),&(ODOMETERInfo.Npulse),&(CtrlData.GpsSynFlag),&(CtrlData.UTCTime);其他信息:ImuAst.PC:int类型IMU帧计数每5ms加1btemp1:回到基准点标志btemp2:停止标志Wibb:陀螺数据,单位:rad/s;Aibb:加表数据,单位:m/s/s;ODOMETERInfo.Npulse:里程计脉冲

3、数,单位:CtrlData.GpsSynFlag:卫星同步脉冲标志,个,每个当量代表0.00175米1:有,0:无CtrlData.UTCTime:IMU数据对应的UTC时间惯导坐标定义:x朝前,y朝上,z朝右里程计在惯导中的位置:x,z为0,y-0.17m,里程计在惯导下面17cm频率200hz加速度角速度的增量里程计脉冲个数一圈180个脉冲里程计周长315mm直径100毫米一个脉冲1.75mmB.运用VC代码进展转换,提取所需的惯导和里程计数据,代码如下:CFileDialogdlg(TRUEMUUTC,*.IMUUTC,OFN_HIDEREADONLOFN_FILEMUSTEXISTIM

4、UFile(*.IMUUTC)|*IMUUTC|,NULL;if(dlg.DoModal()!=IDOK)return;|CStringfilename=dlg.GetPathName();获得打开的文件名称FILE*fp;if(fp=fopen(filename,r)=NULLMessageBoX文件打不开);return;FILE*fpw,*dmrfp;CStringBinFileName,DmrFileName;BinFileName=filename.Left(filename.GetLength()-7)+.bin;/转换后bin格式的文件名DmrFileName=filename.

5、Left(filename.GetLength()-7)+.dmr;/转换后dmr格式的文件名fpw=fopen(BinFileName,wb);if(fpw=NULLreturn;dmrfp=fopen(DmrFileName,wb);if(dmrfp=NULLreturn;/设置dmr格式的头文件信息根据所使用的里程计信息szHdr4=T;charszHdr1;szHdr1=$;charszHdr2;szHdr2=D;charszHdr3;szHdr3=M;charszHdr4;charszHdr5;szHdr5=R;charszHdr6;szHdr6=A;charszHdr7;szHdr

6、7=W;charszHdr8;szHdr8=0;shortsHdrSize;sHdrSize=512;shortsRecSize;sRecSize=16;shortsValueType;sValueType=O;shortsMeasType;sMeasType=2;/1量距离,2量速度shortsDIM;|sDIM=1;shortsRes;sRes=3;shortsDistanceType;/可选的/sDistanceType=1;shortsVelocityType;/量距单位,1-m/sor2-ticks/ssVelocityType=2;doubledScale;dScale=1.0;c

7、harszAxisName48=L,e,f,t,0;/,可选的doubledWheelSize;dWheelSize=0.315;/实际的轮胎长度longITicksPerRevolution;ITicksPerRevolution=180;/轮胎走一圈脉冲个数char*cExtra2=newchar420;/未赋值,可选的memset(cExtra2,0,420);cExtra2=Writebyzzz;fwrite(&szHdr1,sizeof(char),1,dmrfp);fwrite(&szHdr2,sizeof(char),1,dmrfp);fwrite(&szHdr3,sizeof(

8、char),1,dmrfp);fwrite(&szHdr4,sizeof(char),1,dmrfp);fwrite(&szHdr5,sizeof(char),1,dmrfp);fwrite(&szHdr6,sizeof(char),1,dmrfp);fwrite(&szHdr7,sizeof(char),1,dmrfp);fwrite(&szHdr8,sizeof(char),1,dmrfp);fwrite(&sHdrSize,sizeof(short),1,dmrfp);fwrite(&sRecSize,sizeof(short),1,dmrfp);|fwrite(&sValueType,

9、sizeof(short),1,dmrfp);fwrite(&sMeasType,sizeof(short),1,dmrfp);|fwrite(&sDIM,sizeof(short),1,dmrfp);fwrite(&sRes,sizeof(short),1,dmrfp);fwrite(&sDistanceType,sizeof(short),1,dmrfp);fwrite(&sVelocityType,sizeof(short),1,dmrfp);fwrite(&dScale,sizeof(double),1,dmrfp);fwrite(&szAxisName,sizeof(char),48

10、,dmrfp);fwrite(&dWheelSize,sizeof(double),1,dmrfp);fwrite(&ITicksPerRevolution,sizeof(long),1,dmrfp);fwrite(cExtra2,sizeof(char),420,dmrfp);/读取原始文件的变量intrecordnum;intflag1;intflag2;doublegx,gy,gz,ax,ay,az;intodo;intGpsSynFlag;doublegpstime;.bin文件变量longscale=1000000;比例系数longlgx,lgy,lgz,lax,lay,laz;.d

11、mr文件的数据记录变量shortsSync;sSync=65518;/setto0xffeeshortsWeek;sWeek=-1;GPSweeknumber,Setto-1ifnotknowndoubledTime;unsignedlonglValue;/values(counts)lValue=0;do/读取原文件数据fscanf(fp,%ld,&record_num);fscanf(fp,%ld,&flag1);fscanf(fp,%ld,&flag2);fscanf(fp,%lf,&gx);fscanf(fp,%ld,&odo);fscanf(fp,%lf,&gy);fscanf(fp

12、,%lf,&gz);fscanf(fp,%lf,&ax);fscanf(fp,%lf,&ay);fscanf(fp,%lf,&az);fscanf(fp,%ld,&GpsSynFlag);fscanf(fp,%lf,&gpstime);if(feof(fp)break;/提取.bin文件数据gx=gx/3.846*180;陀螺计数据x由弧度每秒转换为度每秒gy=gy/3.846*180;陀螺计数据y由弧度每秒转换为度每秒gz=gz/3.846*180;陀螺计数据z由弧度每秒转换为度每秒lgx=int(gx*scale);lgy=int(gy*scale);lgz=int(gz*scale);l

13、ax=int(ax*scale);lay=int(ay*scale);laz=int(az*scale);gpstime=gpstime+259200.0;/天秒转换成周秒fwrite(&gpstime,sizeof(double),1,fpw);fwrite(&lgx,sizeof(long),1,fpw);fwrite(&lgy,sizeof(long),1,fpw);fwrite(&lgz,sizeof(long),1,fpw);fwrite(&lax,sizeof(long),1,fpw);fwrite(&lay,sizeof(long),1,fpw);fwrite(&laz,size

14、of(long),1,fpw);/提取.dmr格式文件dTime=gpstime;lValue+=odo;fwrite(&sSync,sizeof(short),1,dmrfp);fwrite(&sWeek,sizeof(short),1,dmrfp);fwrite(&dTime,sizeof(double),1,dmrfp);fwrite(&lValue,sizeof(unsignedlong),1,dmrfp);while(!feof(fp);fclose(fp);fclose(fpw);fclose(dmrfp);MessageBoXTMA转换为BIN和DMR格式处理完成!);2Wayp

15、ointInertialExplorer软件转换.bin文件为.imr文件打开转换选项的界面,选择要转换的.bin文件*WaypointIMUDdtaConversionInput/OutputFiles|Inputeinar5IMUFilell70237.bin血歷色|OutputWaypointBinaryFilftT7U237.irnrOutputWaypointASCIIFile(Forviewingtheda减fiat1000epochs)ITOutputASCIIPath:wgdmiriistratorWeklcp三十三所良乡教据5030馆IMUProfilesHG190D7iMARFJIQ-1yKJOQQHziMARFMS0-xI72-?_200

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号