Giter Site home page Giter Site logo

旭's Projects

-a icon -a

对流层延迟修正 项目作者:田睿 本科毕业于北京航空航天大学,现在读研,GNSS领域入门两年。 请注意! 该项目原始路径为:E:\Thesis\RTKLIB_Workspace\WorkSpace\For_Thesis\For_Thesis 项目名称为For_Thesis(即上传的文件夹中包含的内容) 在笔者Win10系统、VS2017上成功运行,亲测可用!!! 请务必仔细阅读此文件!!! ==============程序主要功能============== 本程序的主要功能是基于GGOS对流层产品进行对流层延迟解算,还可用于rtklib开源项目的二次开发及改进。 总之,该程序的目的是方便其他使用rtklib开源项目的GNSS研究者,提高其科研效率。 ==============程序基本信息============== 本程序基于rtklib2.4.3 b33版本进行二次开发,采用C语言编写,并在Win10、Visual Studio 2017平台上完成开发及调试,项目路径为: ‪E:\Thesis\RTKLIB_Workspace\WorkSpace\For_Thesis\For_Thesis 相比于原项目,主要改动点为: 1.增加了Demo_Tropo.c文件(最主要的改进)。 2.增加了测试用的main.cpp文件,作为程序入口,应注意!主程序文件必须为cpp文件,不能使用c文件。 3.在rtklib.h 文件中增加了部分函数的声明。 4.在Windows系统下,采用VS2017编译rtklib项目会遇到各种问题。对此,对原项目进行了必要的改动, 如增加了unistd.h文件、去掉main函数的rnx2rtkp.c文件等,具体编译方法详见后文。 5.增加了数据文件orography_ell.txt等,应注意!数据文件必须放在项目目录内,因为主程序中使用的是相对路径。 ==============Windows下采用Visual Studio IDE的项目编译方法============== Windows下常用的C/C++ IDE即Visual Studio,功能丰富全面,适合GNSS研究者使用。 当然,对计算机比较精通的研究者可以采用linux系统,不使用IDE,采用cmake等工具进行编译。事实上,这样做更适合rtklib的二次开发。 然而,对于刚接触GNSS领域的硕/博研究生而言,学习linux系统及cmake等编译工具,无疑会大大拉长学习周期, 耽误宝贵的科研时间,降低科研效率。对此,笔者深有体会!因此,笔者坚持在windows系统下用Visual Studio IDE开发此项目, 遇到的编译问题很多,可参考如下博客解决: https://blog.csdn.net/wuwuku123/article/details/100030177 https://blog.csdn.net/sd28you28/article/details/82911273 https://blog.csdn.net/zhangtao_heu/article/details/79536427 https://blog.csdn.net/qq_35363018/article/details/101317869 https://blog.csdn.net/baixia3551/article/details/101085788?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase https://blog.csdn.net/WalterBrien/article/details/80754215 此外,笔者在编译过程中还遇到一些没有解决的问题,在此总结发布以飨读者: 要通过Project——Manage NuGet Packages添加pthread、dirent等 一定记得切换为64位 注意预编译器添加的是WIN32而非Win32!!! 预编译器中记得添加 WIN32 _DEBUG _CONSOLE _CRT_SECURE_NO_WARNINGS _WINSOCK_DEPRECATED_NO_WARNINGS ENAGLO DLL 主程序必须是.cpp文件!!! 记得添加unistd.h文件 经上述操作后仍出现: unresolved external symbol showmsg等错误 经测试,发现下述方法可行: 将RTKLIB-rtklib_2.4.3\app\rnx2rtkp文件夹下的rnx2rtkp.c文件放到项目的src文件夹下并加入到工程,并去掉其中的主程序(也可以把这个当做主程序)。 ==============数据源============== 所用数据均可在网站https://vmf.geo.tuwien.ac.at/上下载。 应注意!VMFG_FC产品必须注册账户后才能获取,注册方法即通过英文邮件向相关管理人员提出申请,管理人员会通过邮件提供给你一个账户。 ==============开发参考============== 参考了官方的matlab程序vmf1_grid.m及vmf1_ht.m 参考了如下文献: 《GGOS对流层延迟产品精度分析及在PPP中的应用》 《不同全球对流层天顶延迟产品在**区域的比较》 《Troposphere mapping functions for GPS and VLBI from ECMWF operational analysis data》 《Implementation and testing of the gridded Vienna Mapping Function 1 (VMF1)》 《Generation and Assessment of VMF1-Type Grids Using North-American Numerical Weather Models》 《Discussion and recommendations about the height correction for a priori zenith hydrostatic delays derived from ECMWF data》 还有一些官方网站上提供的资料(请参见官网) ==============关于程序结果的一点讨论============== 经测试,本项目运行结果与官方matlab程序有一定出入,差距在厘米级。 经检查,笔者自认为这并非是编程的问题,而是必然存在的数值计算误差,因为C程序与matlab程序的数值精度不同。 笔者测试的结果是本程序更接近IGS发布的天顶对流层延迟数据。 也可采用C与matlab联合编程应用GGOS产品,但运行较慢,且移植性不好。 如有发现程序中问题的,欢迎在GitHub库上及时发布新版本。 ==============重要声明============== 鉴于笔者入门不久,水平有限,有所疏漏在所难免。 该项目仅供研究者参考,并非TU Wien发布的官方代码,可能存在笔者尚未发现的未知错误。 如各位研究者发现问题,欢迎在GitHub上发布修正版本。非常欢迎各位研究者对本项目查漏补缺,系统测试! 在该项目尚未成熟之前,建议各位研究者审慎地考虑在科研中到底是应用本项目,还是使用C与matlab联合编程,后者虽慢,但毕竟是官方反复验证过的matlab代码。 当然,该项目注释详尽,参考价值较高,可作为学习GGOS产品应用的重要参考! 在此开源发布,权作抛砖引玉,期冀各位研究者对其进一步改进与完善!

-rtklib icon -rtklib

RTKLIB开源库有着强大的GPS数据实时和后处理功能,由于笔者的毕业设计中需要对GPS载波相位观测量进行RTK解算,故而,对RTKLIB开源库进行了学习与研究。 RTKLIB提供了很多底层的函数,笔者准备直接对源码进行编译输出标准DLL的方式供C#调用。所用的VS平台是VS2012(其它VS版本类似),RTKLIB库用的是网上使用的最多,相对稳定的rtklib_2.4.2版本,编译的项目采用“相对路径”,即工程可移植到任何地方,方便以后使用。

awesome-gnss icon awesome-gnss

Community list of open-source GNSS software and resources :satellite:

awesome-gnss-1 icon awesome-gnss-1

A collection of awesome GNSS/RNSS related sources, tools, data, MOOC's course, etc.

bdspace icon bdspace

3D space geometry, positioning and motion

carvig icon carvig

integrated navigation for ins/gnss/vision for vehicle positioning

dgps icon dgps

A real-time pseudorange differential GPS positioning algorithm.

docs-rtk-gps icon docs-rtk-gps

Real Time Kinematic (RTK) GNSS is a technique used to enhance the precision of position data derived from satellite-based positioning systems such as GPS, GLONASS, Galileo and Beidou.

ginav icon ginav

GNSS and GNSS/INS integration algorithms

gnss-matlab icon gnss-matlab

Matlab codes to generate GNSS PRNs, secondary codes, dataless signals and spectra. Includes real data captures and a theory summary. GPS (L1CA, L2C, L5), Gaileo (E1OS, E5), BeiDou-2 (B1I)

gnss-rtk- icon gnss-rtk-

Software for your own GNSS base station for RTK localization

gnss-sensor-fusion icon gnss-sensor-fusion

Extended Kalman Filter (EKF) for position estimation using raw GNSS signals, IMU data, and barometer

gnss_double_differencing icon gnss_double_differencing

🛰️ Double Differencing: Main method of high precision commercial positioning. This method requires two high grade GNSS receivers. In this case a reference, and a (static or kinematic) rover receiver.

gnss_lib_py icon gnss_lib_py

Modular Python tool for parsing, analyzing, and visualizing Global Navigation Satellite Systems (GNSS) data and state estimates

gogps_matlab icon gogps_matlab

goGPS MATLAB is an advanced GNSS observation processing software.

gps-navigation-solution icon gps-navigation-solution

Software Package that computes the position of a GNSS receiver given the RINEX Observation and Navigation files

graphgnsslib icon graphgnsslib

An Open-source Package for GNSS Positioning and Real-time Kinematic Using Factor Graph Optimization

gvins-dataset icon gvins-dataset

A dataset containing synchronized visual, inertial and GNSS raw measurements.

ic-gvins icon ic-gvins

A Robust, Real-time, INS-Centric GNSS-Visual-Inertial Navigation System

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.