GPS卫星导航系统模拟器设计
无需注册登录,支付后按照提示操作即可获取该资料.
摘 要
现阶段,GPS(全球卫星定位系统)已经广泛应用于各个领域。在GPS的应用环境中,GPS接收机的定位性能是一项重要的指标。为了测试接收机的性能,应用导航模拟器来模拟各种条件下的真实的GPS信号。随着计算机技术的发展,导航模拟器可以采用硬件实现方案或者软件实现方案。导航信号模拟器具有实用性高,操作方便,实时性强,灵活性高,可配置性强等优点。
文中给出了导航模拟器的软件实现方案,对C/A码和导航电文的产生做了详细的介绍和阐述,主要完成了C/A码的生成和导航星历的产生。本方案设计出的C/A码和导航星历被写入到数字中频文件中。
通过对C/A码和导航星历的原理和结构分析,采用高级C语言编程分别实现了37颗不同卫星的C/A码编码和导航星历的生成,并将生成的C/A码和导航星历存储在特定的文件中,以便被使用。
关键词:全球定位系统; 导航模拟器; C/A码; 导航星历
ABSTRACT
GPS has widely used in many areas these days. Among the GPS utilities, the receiver’s orientation performance is one of the most important requirements. In order to verify the receiver’s performance, navigation simulator is used for generating the actual GPS signal in various conditions. The conventional navigation signal simulator is implemented by hardware or software and hardware integration. With the development of PC industry, navigation signal simulator can be implemented by software only. Compared with the hardware-implemented navigation signal simulator, software-implemented navigation signal simulator has the characteristics of flexible configuration, easy to carry, easy to migrate, easy to upgrade, and easy to operate.
The paper presents the navigation simulator’s implementation scheme and its various modules, especially gives a detailed introduction and explanation on the generation of the C/A code and navigation ephemeris, and mainly complete the the generation of the C/A code and navigation ephemeris. The C/A code and navigation ephemeris generated by this scheme are saved in the digital IF file.
Through the analysis of the elements and structure based on the C/A code and navigation ephemeris, the design carries out 37 satellites’ C/A code and navigation ephemeris through C programming language. In order to be used flexibly, the C/A code and navigation ephemeris generated are saved into the special file.
Key words: Global Position System; Navigation Simulator; C/A Code; Navigation Ephemeris
导航模拟器的基本原理及技术
导航模拟器包含很多复杂的技术和原理,本章将对导航模拟器的功能结构、C/A码的相关理论、GPS导航电文进行阐述。
导航模拟器的功能结构
一、 导航模拟器的功能
软件GPS模拟器的主要功能是模拟GPS信号从卫星上产生,进入传播环境到达GPS接收机的前端,变成数字化的中频信号的全部过程(见图2.1)。模拟的结果是以文件方式存储的中频数字信号。模拟过程主要包括3个环节:信号产生环节、传播环节和接收环节。
二、 模拟器各部分功能
信号产生环节实现了从产生C/A码,生成导航星历,产生卫星信号的过程,各个功能均由独立的模块完成。
传播环节主要是模拟传播过程中的各种误差,包括电离层误差,对流层误差,环境热噪声误差,多径误差,相对论效应和卫星位置钟差等模块。由于相对论效应对频率的影响已经在卫星时钟上作了修正,且修正后的误差影响可以忽略,因此相对论效应可以不用模拟。而卫星钟差在差分定位中是可以不考虑的,在单点定位中也不是主要误差源,因此仿真器也没有模拟卫星的钟差,相应的在下放的星历中,卫星钟差的修正系数也都按0来模拟。因此传播环节中模拟的误差来源为电离层误差,对流层误差,环境热噪声和多径误差。
在接收环节中,需要配置接收机的工作环境和参数,包括中频频率,采样频率,量化方式,温度,湿度等,还需定义接收机的运动轨迹,速度,加速度,然后软件信号模拟器再根据所定义的环境产生相应的到达接收机前端的中频信号。
目 录
第一章 绪 论 1
第一节 引 言 1
第二节 GPS卫星导航系统的发展现状与展望 1
一、 系统介绍 1
二、 系统现代化 2
第三节 GPS卫星信号模拟器应用及意义 2
第四节 本课题研究的主要任务 4
第二章 导航模拟器的基本原理及技术 5
第一节 导航模拟器的功能结构 5
一、 导航模拟器的功能 5
二、 模拟器各部分功能 5
第二节 C/A码相关理论 6
一、 伪随机噪声码的产生及特性 6
二、 Gold组合码 9
三、 C/A码(Clear/Acquisition Code) 11
第三节 GPS卫星的导航电文 13
一、 导航电文的基本结构和基本内容 13
二、 各子帧内容及意义 14
第三章 C/A码和导航电文的设计与实现 22
第一节 C/A码的生成 22
(优秀毕业设计网 www.2bysj.cn)
一、 设计思路 22
二、 程序流程图 22
三、 产生的C/A码结果 23
第二节 导航电文的产生 25
一、 设计思路 25
二、 程序流程图 25
三、 函数解析 27
四、 生成的导航电文 31
结 论 32
致 谢 33
参考文献 34
附录:程序部分源代码 35
附录:程序部分源代码
一、C/A码生成源代码
#include<stdio.h>
#define SAT_NUM 37;
void CreateCACodeTable(char svcode[], int prn)
{
int g2shift_vector[37] = {5,6,7,8,17,18,139,140,141,251,252,254,255,256,257,258,469,470,471,472,473,474,509,512,513,514,515,516,859,860,861,862,863,950,947,948,950};
int reg[10];
int g1[1023];
(优秀毕业设计网 www.2bysj.cn)
int g2[1023];
int g2tmp[1023];
int g2_shift;
int i;
int j;
int save1;
if ((prn <= 0) | (prn > 37))
printf("invalid prn: must be between 1 and 37");
prn--;
g2_shift = g2shift_vector[prn];
/************* Generate G1 code **************************/
for(i=0;i< 10;i++)
reg[i] = -1;
for(i =0; i<1023;i++)
{
g1[i] = reg[9];
save1 = reg[2] * reg[9];
for(j = 8;j>=0; j--)
reg[j+1] = reg[j];
reg[0] = save1;
}
/************end of G1 code ***********************/
/......