开源夏令营《基于HackRF开发GPS信号仿真模拟器》工作总结(三)

这篇工作总结介绍了在开源夏令营中,利用HackRF开发GPS信号仿真模拟器的过程。主要内容包括卫星信号传输时间的精确计算、GPSL1导航电文的生成以及通道数据的创建。项目已进行到第三周,为迎接中期检查做准备。

2014.07.21-2014.07.27,项目已经开展三周了,接下来就要面对中期检查了。实验室已经放假了,现在只剩下为数不多的几个人了,其中包括我。

这周主要解决的问题

这周主要解决的问题分为三个方面:信号传输时间、导航电文和通道数据。

卫星信号传输时间的计算

卫星信号的传输时间是整个模拟器的核心。它不仅涉及卫星位置的计算,更涉及坐标系的转换,以及迭代。而且传输时间直接决定了码相位的大小,因此在传输时间上差一点,都会对最后的结果产生比较大的影响。(CA码一个码片,产生的误差大致是3e8m/s*1us=300m。)查找了一些有关信号传输时间的计算的资料,其中卡尔加里大学的一篇论文《IF GPS Signal Simulator Development and Verification》对自己的启发很大,对其他的有关章节进行了翻译,地址: GPS模拟器中的传输时间计算
编写了卫星传输时间计算的函数,主要是一个迭代过程,在卫星信号的发射时刻和卫星信号的接收时刻两者的位置关系上进行迭代,直到二者的误差在可接受范围内,可认为结果可用。

GPSL1导航电文的生成

按照GPSL1的ICD文件,对导航电文进行了生成。L1的导航电文是层次结构:一个超级帧为12.5分钟,分25页播发,每页是一帧;一帧为30s,包含5个子帧;每个子帧占据6s,包含10个字,这10个字的每一个都是由30bit组成的。其中每一帧的前三子帧包含了星历信息,是导航定位所需要的。而后两子帧则包含了历书信息,主要是电离层参数和UTC参数。
导航电文生成函数也按照这个层次进行编写。首先对于星历中的数据,按照相应的比例因子计算得到中间值,再将中间值转换为补码形式(补码形式是GPSICD中注明的),然后按照ICD说明注到每一个字中。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值