搜索
bottom↓
回复: 53

请教:GPS启动的时间为什么至少要几十秒那么长?

[复制链接]

出0入0汤圆

发表于 2010-9-16 08:18:33 | 显示全部楼层 |阅读模式
GPS启动的时间为什么至少要几十秒那么长? 即便是接收条件良好时,也是如此.
目前我知道的原因是:
1.不知道有那几颗星可以接收到.          若知道了就可以不再管那些肯定收不到的星了.
2.不知道有那几颗星信号强.              若知道了就可以不再管那些信号差的星了.先有4颗强的即可.以后再收那些信号差的星.他们的信息多少也有用.
3.不知道那几颗星信号强的星的位置       若知道了也就大致知道了多普勒频率,这将使得搜索捕获时间大大减少.
4.若知道了上述的那些,就是温启动了

上面的想法,不知有错否?

我希望知道的是:
在不知道多普勒频率的情况下,捕获一个星的时间大概是多少?是怎么估算的?
在知道多普勒频率的情况下,捕获一个星的时间大概是多少?是怎么估算的?
在进入跟踪状态后,大约多少时间,其获取的参数精度够了,就可以进行运算,并显示出来了?
头像被屏蔽

出0入0汤圆

发表于 2010-9-16 08:26:09 | 显示全部楼层
这个问题我也一直想知道。估计几乎所有的网友也想知道。

找到答案,这就是COOL帖子。

我们论坛一定能找到答案的。先置COOL!

出160入0汤圆

发表于 2010-9-16 08:31:19 | 显示全部楼层
agps 功能在互联网服务器提取当前可见的卫星,然后跟踪 ,速度快不少啊。

出0入0汤圆

 楼主| 发表于 2010-9-16 08:46:33 | 显示全部楼层
从A-GPS服务器送到用户端的信息:
1.可见卫星列表
2.见到的卫星的多普勒频偏和代码相位
3.精确的卫星轨道数据(星历),2-4小时内有效,也可扩展到卫星可见的整个周期(12小时)
...

我更感兴趣的不是要联网的A-GPS,是独立的接收设备,比如:精度极高的钟.
(我上大学的时候,教授们就说过,精度极高的钟是一种战略武器,其重要性不亚于原子_弹.可惜,当时一点感觉都没有.
近喜闻,国内基于MEMS的铷钟的研究有重大进展,我祝它好运!也敬请各位关注.)

出0入0汤圆

发表于 2010-9-16 09:11:45 | 显示全部楼层
同样关注这个问题

出0入0汤圆

发表于 2010-9-16 09:13:52 | 显示全部楼层
从GPS-VIEW上看,冷启动时星是一个个出现的,而且越来越快。一般是信号强的先出现吧。所有我估计,要重新捕抓一个星是需要接收
很长一段报文,来得到星历,这个过程应该有点像PLL的启动时VCO和CLK的同步

出0入33汤圆

发表于 2010-9-16 09:21:35 | 显示全部楼层
【转帖】


为什么 GPS 定位时间长短不一

GPS模块一般支持冷启动(Cold start)和热启动(Hot start)两种模式(注:暖启动warm-start不讨论)

一般冷启动比热启动时间要长很多,以信号足够好为例,SirFIII的热启动为15秒以内,冷启动则需要42秒以内;在信号弱的情况下则需要更长时间;

热启动条件如下:

(1)上次关机前的位置信息(经纬度,高度)已知(所以在车库内关机下次就一定是冷启动了);
(2)当前时间、年历、星历已知(需要实时时钟支持)
(3)距离上次关机时间不超过4小时(时间过长则星历变化了,即以前的卫星看不到了)


GPS接收器的启动时间是一个目前比较混乱,同时如果不具备一定的GPS知识比较难以理解的一个概念。本文希望能够用比较简单的语言让GPS爱好者们加深认识。关于几个启动时间的解释也只是一家之言,大家还可以进一步探讨。GPS的启动是一个比较有趣的话题,因为通过这个话题,可以作为深入了解GPS专业知识的一个门径。


1. 热启动:

GPS接收器保存有其最后计算的可视卫星的位置、almanac(历书)和UTC时间,在重启以后,GPS接收器以保存的上述内容为基础获取和计算当前卫星的最新位置。


2. 暖启动:

GPS接收器保存有最后计算的卫星的位置、历书和UTC时间,但保存的内容不是当前可视卫星的数据。GPS接收器重启以后尝试去获得当前卫星和信号并计算其新位置。接收器基于其最后的位置和历书得以大概知道当前天空中的可视卫星。


3. 冷启动:

GPS接收器清空了所有历史信息并重启,然后它尝试定位并锁定卫星,由于没有先前信息,这将花去很长的时间。GPS接收器采用类似于轮询的方法,从所有的卫星中锁定信号,这将比事前知道该搜索哪些卫星要慢不少。这一类重新获取锁定要花最长的时间。


* 比较和小结:

热启动就是启动时可视的卫星信息和之前保存的信息是基本一致的。

暖启动和热启动的区别在于经管也保存了之前的卫星信息,可视搜星的时候可视卫星(当前卫星)并不是以前记忆的信息的卫星,但是保存的历史信息仍然有利于快速定位当前卫星。

冷启动,最好理解,就是在没有历史信息的情况下一个一个轮询的方式搜星定位,所需时间最长。


* 关键名词解释:Almanac 和 Ephemeris:

Almanac 数据是反映所有卫星状况的比较粗略的轨道参数,每一个卫星都会广播所有卫星的Almanac 数据,这类数据不是十分精确,有效期长达几个月。

Ephemeris 数据相比之下是十分精确的轨道和时钟纠正信息,每一颗卫星只会广播自己的Ephemeris 数据,这类数据的有效期或许有几个小时(取决于广播信息的包含的内容)。Ephemeris 数据每隔30秒广播一次。

出0入0汤圆

 楼主| 发表于 2010-9-16 14:32:44 | 显示全部楼层
关键是定量估算.

期待大侠们出现.为什么他们不来呢?

出0入0汤圆

发表于 2010-9-16 14:55:43 | 显示全部楼层
GPS定位分成几个过程:

1、收星历。这是GPS卫星几十个都在广播的,就是告诉接收机,卫星的分布情况,这是进行定位的基础,由美国的基地上传到卫星进行广播。
2、同步时间。都知道GPS是用时间来计算出来的。也是卫星广播。
3、几个卫星的信号同时收到,理论上才能解算出三维座标。三维最少需要4星,二维(经纬度)最少需要三星。但收到那么多星不一定就是解算出来,比如使用的几个卫星在天上的排列队型不好(很近、一条线)这种照样算不出来。收到4星算不出来很正常,因为我们使用GPS的时候很可能只能一个方向收到信号(楼里的窗户方向,车里),只能过一会儿收到其它信号的时候,或者卫星运动离开一定的距离才能算出来。

这些,都是要时间的。

AGPS定位快就是上网下载的星历,不用等卫星的广播,要快一些。AGPS也把数据发到服务器上进行计算,也快些。

出0入0汤圆

发表于 2010-9-16 15:54:39 | 显示全部楼层
GPS接收机可以“瞬间”找到卫星,计算自己与卫星的距离,但并不能计算出自己的位置,因为它不知道卫星在发射电波时的位置,因此在卫星载波上面,还加载了一个50Hz的导航电文,这个导航电文包括了:卫星的轨道参数、时钟参数、轨道修正参数、大气对GPS信号折射的修正值等等。GPS接收机就是通过这些参数计算出某一时刻某颗卫星在空间中的位置,然后再确定自己与卫星的距离,然后再计算自己的实际位置。导航电文总长1500比特,在50Hz发送的情况下,每一个循环周期是30秒。
  因此所有型号的的GPS接收机的冷启动时间(即GPS对卫星及自己所在地一无所知)都是45秒左右,不是厂商懒不想改进GPS性能,而是已经快到技术极限啦:45秒里面的30秒是用来接收导航电文的,剩下15秒钟是计算接收机位置的。

出0入618汤圆

发表于 2010-9-16 16:19:05 | 显示全部楼层
回复【7楼】elder60 60岁老头
关键是定量估算.
期待大侠们出现.为什么他们不来呢?
-----------------------------------------------------------------------

定量估算需要针对具体方案,市面上的商业解决方案都没有公开资料,很难分析每步所需时间。
例如你最近发的论文,用FFT来捕捉CA码,在信噪比足够高的时候只需要捕捉到1ms信号即可完成所有可用卫星的载频和CA码同步。
S53MV的方案捕获模式的CA码相位步进为6,9ms一个周期(没说捕获模式是不是9ms,假定是),那么捕获一颗星的CA码最多需要1.5秒。
捕获后,接收一帧完整的导航电文至少需要30秒,这个大家都一样。

出0入0汤圆

发表于 2010-9-16 16:32:09 | 显示全部楼层
学习!

出0入0汤圆

 楼主| 发表于 2010-9-17 09:47:40 | 显示全部楼层
我最近2个月,突然对GPS感兴趣了,在学习的过程中,碰到的问题和困惑越来越多.才发此贴以求帮助.
上面提到的论文是我昨天中午转发在"老头学GPS 射频前端 【100楼】". 感兴趣者可一看.不过,我想看懂他,但还没看懂.

商业解决方案总是会寻求"最佳者,当然,必须考虑成本.那么,是否上述方案的成本高呢? 我估计是这样.

9楼的后半段,观点最明确:
  "因此所有型号的的GPS接收机的冷启动时间(即GPS对卫星及自己所在地一无所知)都是45秒左右,不是厂商懒不想改进GPS性能,而是已经快到技术极限啦:45秒里面的30秒是用来接收导航电文的,剩下15秒钟是计算接收机位置的。"

要想反对都不能,因为这个说法和我们观察到的现实好像是一致的.不知道卫星在发射电波时的位置,没法算,是不能定位的.
谢谢9楼.

那么,我们在什么时候才能知道卫星在发射电波时的位置呢? 是否要等接收导航电文完? 是否要30秒呢?
我们在开机的时候,导航电文发到什么地方是随机的.像开机看电视: 晚了,已经放一半啦.

各个卫星发导航电文是否是同步的?若是,老美为什么要这样做?
若不是该多好!像5个电视台,异步放10集连续剧,每天2集,运气好,一天就看完.
瞎说说.见笑了.

出0入0汤圆

发表于 2010-9-18 16:42:59 | 显示全部楼层
很久不搞GPS了,先说明一下,下面的某些术语可能不够标准
大概是这样的:
GPS信号是经过两次(两级)调制的,即把50Hz的数字信号先经CDMA调制到1.023MHz(一般叫做chip rate),再调制到射频载波频率fo上,对于C/A码,也就是民用码,这个频率是1575.42MHz(10.23MHz * 154),而军用码是1227.6MHz(10.23MHz * 120)

接收机的射频前端先对GPS信号降频,降频后再用AD采样获取数字信号,民用场合,一般2位AD就足够了,需要注意的是AD采样实际上对GPS信号又进行了一次混频,接收机考虑的多普勒频移,也要考虑这两次混频的影响。因为有多普勒频移,接收机需要检测出该频移才能实现捕获和跟踪
CDMA调制所用的伪随机码是Gold码,采用10bit生成器,一个周期有1023个码,接收机需要获取大概的C/A的相位才能实现捕获和跟踪

下面假设采用串行方式进行捕获:
捕获到的C/A码精度必须在1/2码才能实现跟踪,国外利用GP2021开发的基于Linux和ISA总线的开源GPS接收机在捕获时的精度就是1/2码,SirF III捕获精度应该是1/4码,这样每颗卫星(或者说每个C/A码序列)需要进行4092次相关计算,并且这4092次相关计算必须全部完成,因为要从中找到最大值,才能确定C/A码相位。
可以算一下,完成一次相关运算需要的时间为1/1.023M * 1023 = 1ms,也就是一个C/A码序列的时间,一颗卫星就需要4s来完成

一般民用接收机,多普勒频移在+/-5kHz,如果捕获精度要求100Hz,就有101个频点

注意GPS接收机需要两级嵌套环路,一级是载波,一级是C/A码,因此对于一颗卫星就需要101*4=404s来完成捕获

当然实际的系统是不可能采用完全串行的方式实现,具体加速捕获的方法很多,这里就不再一一赘述了,以下方法仅供参考:
对于C/A码解调,可以先预存1ms数据,进行相关运算时采用高速时钟,如16倍速时钟(当然运算过程中因为多普勒频移,C/A码相位会有所变动,这个也要考虑),捕获时间一下子就缩短了
对于载波解调,可以先将精度定在1kHz,第二轮再到100Hz,这样扫描的频点就只有42个了
最后捕获一颗卫星的时间就是10.5s

一般GPS芯片都是12或者24个通道(GP2021是12个通道),一共有32颗卫星需要捕获,所需最多为10.5*3=31.5s(10.5*2=21s)

这是冷启动时的捕获时间

热启动时,因为已经有Almanac 和 Ephemeris,根据GPS卫星轨道参数,可以预测当前天空上那几颗卫星可见,直接对这些卫星进行捕获,时间就变成最多10.5s了

先写这些吧,有空再写

出0入0汤圆

 楼主| 发表于 2010-9-18 19:18:13 | 显示全部楼层
太深奥,没怎么懂.

怎么又出来个"对于一颗卫星就需要101*4=404s来完成捕获",那不完了.那是历史上发生的事.

对于为什么要40多秒,非要搞清楚不行.还要认真点来想的.
楼上讲的,我理解为:捕获耗时,由于要2维扫描,耗大量时间,这代表一种观点;另一种就是需要"等待电文".

关于"捕获耗时论":
"SiRFstarIII有超过200 000个相关器的硬件结构,进一步缩短了首次定位时间。"此类报道,说明各厂家都在努力.
当然,我对于20万个相关器的说法,是有异议的,那要占用多少资源啊.

"等待电文论"; 我会好好学,争取搞懂.现在没有发言权.

出0入0汤圆

 楼主| 发表于 2010-9-19 12:34:33 | 显示全部楼层
这是刚从网上搜来的,7年前的一个实验的结论: 当有"历书推算"时,21秒.  该怎么理解?

实 验  时间:2003.9.5~9.27
接收机状态:静止,接收机预先输入接收机本地概略地址和时间,有历书推算:

星号                       15      26       21        29
接收机测得的多普勒频移值   7320    2579     4120      2381
推算得到的多普勒频移值     7201    2566     4356      2210
程序设置的多普勒频移值     7201    2566     4356      2210
4颗星达到载波跟踪状态所需时间:21s
不考虑接收机时钟漂移的冷启动时间:82s
考虑接收机时钟漂移后的冷启动时间:21s

仅供参考,分析.

出0入0汤圆

发表于 2010-9-19 17:08:43 | 显示全部楼层
对于GPS接收机来说,先要进行捕获

捕获完成后进行跟踪,跟踪过程中如果CNo超过预定值,开始输出报文,解调出完整报文后才会结算出PVT

我之前说的只是捕获过程,并且也是说的原理,具体不同的芯片厂家设计肯定不同,需要的时间也就不同

出0入0汤圆

发表于 2010-9-19 17:18:17 | 显示全部楼层
等待电文的时间是没办法改善的,除非有外部辅助信息,这就成了A-GPS了,暂时不做讨论

能够改善的就是捕获时间,也是需要下大力气改进的

出0入0汤圆

发表于 2010-9-19 17:23:01 | 显示全部楼层
回复【15楼】elder60 60岁老头
这是刚从网上搜来的,7年前的一个实验的结论: 当有"历书推算"时,21秒.  该怎么理解?
-----------------------------------------------------------------------

信息不是很完整,我按自己的理解来

有历书推算,也可以算作狭义的A-GPS,只是这个A不是来自外部的

有了历书,根据历书的时间戳,就可以大致推算头顶上大概有那几颗星,捕获就快多了

出0入0汤圆

发表于 2010-9-19 17:25:12 | 显示全部楼层
mark,GPS搜星时间

出0入0汤圆

发表于 2010-9-19 17:55:23 | 显示全部楼层
接13楼
捕获完成后,跟踪环路的FLL和/或PLL、DLL就开始工作了
FLL虽然叫做锁频换,但其实是锁不住频率的,频率会在一定范围内漂移,但是FLL动态性好,能迅速把频率拉到0附近,也就是说能迅速去除多普勒频移的大部分;并且FLL有一个致命的缺点,就是存在比特翻转
多普勒频移的剩余部分就靠PLL了,PLL正好跟FLL相反,动态性差,但是稳定性好
DLL用于锁定C/A码相位

经过一段时间跟踪后,解调出的CNo超过预定值,这时就可以将解调的电文认为是有效的,解算程序判断帧头,并在适当的时候进行CRC,等到有足够的信息就可以算出PVT了

计算PVT的时候,除了要有电文之外,还要给出多普勒频移、数控振荡器相位(用于数字混频、去除多普勒频移)、C/A码相位、DLL

这个就是所谓的“等待电文论”了

出0入0汤圆

 楼主| 发表于 2010-9-19 18:56:04 | 显示全部楼层
nobrains 请勿焦急.我学习gps原理才2个月,目前才在学捕获.需要专家指导.(尤其是更想知道一般质料上不太讲的东西)

15L的所谓资料,他没有讲清楚,停机间隔时间,我也是抱怀疑态度的.只是在我的脑子里多了个"历书推算"的名词而已.
而且,我也相信,"历书推算"早晚会出现在产品中.当然,我承认,这个结论,源于我的推理.

若你方便的话请直接回答0楼的疑问:
1.在不知道多普勒频率的情况下,捕获一个星的时间大概是多少?是怎么估算的?
2.在知道多普勒频率的情况下,捕获一个星的时间大概是多少?是怎么估算的?
3.在进入跟踪状态后,大约多少时间,其获取的参数精度够了,就可以进行运算,并显示出来了?

还有就是:
4. "对于一颗卫星就需要101*4=404s来完成捕获"是怎么来的?

如果你还有时间,请明确地回答一个"疯老头的痴想":

MAX2769 + STM32F = GPS接收机 ?  答案3选1: 可以,不可能,或许有可能.

我不胜感激!

出0入0汤圆

发表于 2010-9-19 21:25:50 | 显示全部楼层
可以实现瞬间搜星,只是成本高了。没人愿意这么做。

出0入0汤圆

发表于 2010-9-19 23:59:12 | 显示全部楼层
前两个问题需要视情况而定,也就是说,不同的产品实现的捕获方法是不同的,捕获时间也会不同,市面上的现成产品捕获时间差不多,不能说明捕获一颗星有固定的时间

我举的例子是基于如下假设:
1. 没有任何内外部辅助信息,包括接收机时间未知、接收机地点未知、无外部历书和星历信息、无内部历书和星历信息等
2. 每次相关运算取1ms的数据
3. 多普勒频偏在+/-5kHz范围内,捕获精度为100Hz
4. C/A码的捕获精度为1/4chip
5. 采用纯粹串行方式捕获,也就是分两级扫描
   foreach frequency in (-5kHz ~ +5kHz) with 100Hz interval
   begin
      foreach 1/4 chip in 1023 chips
      begin
         correlation with 1ms data
      end
   end

这样我们可以算出总的时间为
       1023      5kHz - (-5kHz)
1ms * ------ * ( -------------- + 1 ) = 413.292 s
        1/4           100

这个时间实在是太长了,因此商用(更不用说军用的了)的方案是绝对不会采用纯粹串行方式的,而加快捕获速度的方法很多,不管什么方法,无非就是在两层环路上下功夫,比如说
1. 提高相关器运算频率
2. 优化多普勒频偏扫描方法
3. 采用FFT
4. 多路并行相关器

我想,这应该能回答你提出的1、2、4三个问题

关于第3个问题:
GPS数据中所谓的superframe是有25页(Page)的,每页有5个帧(Frame),每个帧有10个字(Word),每个字有30位(Bit),每位有20个C/A序列,每个C/A序列持续1ms,可以算出每页有1500位,每位20ms,共30s
每页的5个帧中的前3个帧包含进行解算的必要参数,也就是说只要解调出前三帧,就可以完成解算,即算出卫星、接收机的PVT,但是不能预先对接收到的电文进行假设,也就是说不能保证接收机解调出来的第一个帧就是Subframe 1,因此一般情况下,需要解调5帧才能完成解算,也就是30s

关于最后一个问题:
答案是不可能
理论上说MAX2769+MCU可以构成GPS接收机,但是MAX2769仅集成了LNA、下变频和ADC,MCU需要完成相关运算和解算,这两个工作交给STM32F恐怕是不行的,相关运算交给GP2021是可以的,stm32f用来做控制和解算应该差不多

=================================================
另一篇帖子里,看到elder60 想用FFT,恐怕最后一个问题的回答不够圆满
FFT对于GPS来说也仅仅是用于捕获,跟踪阶段仍然需要相关器,而相关器的输出需要实时,否则就没有导航定位的意义了
而GPS需要至少4颗卫星可见才能正常工作,也就是需要至少4路独立的相关器
需要注意的是,这里的相关器其实不只是相关运算,准确地说应该是:NCO、混频、CIC滤波、C/A码产生器(包括超前滞后码)、相关、PLL
所以,我认为不可能

出0入0汤圆

 楼主| 发表于 2010-9-20 01:13:53 | 显示全部楼层
好贴!好就好在1.切题,2.观点明确,不含糊,3.书写工整,认真.
详细明天再写.(这是一个学生对老师的点评)因为太晚了.

出0入0汤圆

发表于 2010-9-20 09:27:17 | 显示全部楼层
认真学习。。。

出0入0汤圆

 楼主| 发表于 2010-9-20 10:54:18 | 显示全部楼层
首先,我自我批评一下,实际上我在0楼提出的问题是不太确切的,他反映出一个GPS初学者的水平.

斗胆提一点23楼回复的美中不足的地方:

1. 0楼提出的问题不言而喻,是针对我们常见的商品接收机,而不是很多年前的东西.
然而,所有回复中有关计算以及据的例子都是教科书里常见的,历史上产品里的"纯粹串行方式".
  然而,目前的接收机,全部都是多路并行相关器.
先生若是这样说: 当相关器的数量是多少?他们可能会怎么用法,于是从开机到锁定会要多少时间,其理由是...这样是否更好?

  先生没有对我的想法"我对于20万个相关器的说法,是有异议的",表示自己的看法。我是遗憾的。

2. 对于现有商品机可能采纳的几个措施:
"1. 提高相关器运算频率 2.优化多普勒频偏扫描方法 3.采用FFT 4.多路并行相关器 "
他们对减少冷开机时间的贡献,先生却没有定量论述,而一笔带过.这是现有商品机,是我们问题针对的对象.

3. 关于"电文及30秒",先生没有列举其中的关键参数是什么?以及利用他们来完成定位的大约计算时间(结合商品机,以ARM
为例),因为,这也是冷启动时间的一部分.
   (对我来说,由于电文属于我自学3年级的课,还没有学到.不过,也有听听的兴趣.)

  对于我在12楼提出的问题(各个卫星发导航电文是否是同步的?若是,老美为什么要这样做?),先生也没有指点,有点遗憾.

4. 冷启动时间应该是变量"停机时间"的函数.至少这样的观点想必不会遭到反对. 是否可以以此为题,开个课.

以上是我学生对老师的点评. 请老师指正.
------------------------------------------------------------------------------------------------
另外:
"另一篇帖子里,看到elder60 想用FFT."         
恰恰相反,是误解:  请看"老头学GPS 射频前端"110楼, 不过很想听先生对31楼论文的评价.

感觉先生没有细看该贴. 那是个纪实剧--"我(GPSDIYer)的'成长的烦恼'",欢迎先生常来光顾.

在该贴28楼,有这样的记载:
开此贴的目的不在于我做出什么来,只要能使更多网友来参与GPS接收机的DIY,就了我心愿。OURDEV需要提高层次)
...看“征:GPS开源活动负责人.(精彩的技术讨论从61楼开始)”,我很着急,又不懂,不好插嘴。
但总要干起来才行啊!于是我这个“半脚猫跳上台耍猴“了。  

上述讨论中也有你(第三主角).
你们专家们 ●为●什●么 就不能来开一个贴,带领年轻人一起玩一下呢? 观点不同,单独开贴,比试比试也可以啊!
如果你们愿意这样做,我会很高兴的.这样,我会把我的帖子停了.并感谢你们救我一命.
(我现在的身体,打字极困难,此贴我是从早上8点开始打的,3个多小时啊!)

可能我用词太过分,但愿先生能够体谅我.

出0入0汤圆

发表于 2010-9-20 12:10:39 | 显示全部楼层
首先说明一下哈,elder60称我作“先生”令我羞愧难当啊
我比elder60可小多了,估计elder60的儿子年龄比我都要大,所以请别叫我“先生”了,真的是“羞愧难当”

论水平,我觉得littleGnss比我要强,我已经很久没有接触这个东西了,并且之前接触过的也只是基带解调部分,还有一点点解算部分,射频前端是一窍不通。

不过我会针对elder60的问题,在我力所能及的范围内作答;当然,有些东西我也不懂,有些东西需要捡起来,说错的部分也请包涵

今天我是请假在家看孩子,估计没时间给予回复了

最后:elder60做磁悬浮的时候就关注他了,非常敬佩elder60,elder60的不浮躁、好奇心、求知欲、扎实的基础知识、不屈不挠的精神,都是我们应该学习的

出0入0汤圆

 楼主| 发表于 2010-9-20 13:00:49 | 显示全部楼层
楼上过奖了.

楼上如此客气,那我以后就可大胆请教了.其实,在"老头学GPS 射频前端"一贴中,共有问号120余,其中至少20%是技术性的.

还有,若“征:GPS开源活动负责人.(精彩的技术讨论从61楼开始)”中3位专家能够合作开贴,我可开瓶82年获赠的茅台来祝贺.
当然阿莫也要来一二杯,马屁还是要拍的.

我担心一件事,恐怕引起对我的误解:
有个学生,上午问老师问题,未解;老师下午发现学生是理解此问题的,不悦: 懂还问? 其实,很明显,学生是委屈的.

发现先生对MPW(多项目晶圆)是熟悉的.(不知现在行情如何)不妨给网友们普及一下,也是件功德事.

出0入0汤圆

发表于 2010-9-20 15:18:12 | 显示全部楼层
进来学习的,der60 想搞GPS?

出0入0汤圆

 楼主| 发表于 2010-9-20 16:40:18 | 显示全部楼层
哦,没有发现,悟侠到来.失敬,失敬.
你肯定不是因为闻到茅台酒香,就是看到老头耍猴,看我笑话来了.
对你有意见,至今不肯让我看看尊容.

出0入0汤圆

 楼主| 发表于 2010-9-20 16:59:14 | 显示全部楼层
请教 nobrains:
根据你的经验,从4个卫星跟踪输出 到 算出用户位置的计算量,大概需多长时间(以ARM7为例)?

最近有点焦头烂额,需要评估STM3F的实现可能性,一开始,我自己定的是5%.现在还是.

feng_matrix 悟 的到来,使我想起,他肯定对短数据输出时间的GPS接收机感兴趣的.

出0入0汤圆

发表于 2010-9-20 17:05:08 | 显示全部楼层
回复【30楼】elder60 60岁老头
哦,没有发现,悟侠到来.失敬,失敬.
你肯定不是因为闻到茅台酒香,就是看到老头耍猴,看我笑话来了.
对你有意见,至今不肯让我看看尊容.
-----------------------------------------------------------------------

是闻到茅台味了,几次开车路过你们名人苑门口,都没敢进去打扰啊!想问问上次你电话说的硅光电池还搞的到吗?

出0入0汤圆

 楼主| 发表于 2010-9-20 17:27:33 | 显示全部楼层
硅光电池? 片? 上四轴用?

邮件已发.

出0入0汤圆

 楼主| 发表于 2010-9-20 18:23:18 | 显示全部楼层
邮件已发.

出0入0汤圆

发表于 2010-9-20 18:39:39 | 显示全部楼层
回复【31楼】elder60 60岁老头
请教 nobrains:
根据你的经验,从4个卫星跟踪输出 到 算出用户位置的计算量,大概需多长时间(以arm7为例)?  
最近有点焦头烂额,需要评估stm3f的实现可能性,一开始,我自己定的是5%.现在还是.
feng_matrix 悟 的到来,使我想起,他肯定对短数据输出时间的gps接收机感兴趣的.

-----------------------------------------------------------------------

这个我倒是没有经验数据,虽然了解过解算,但也仅仅是为辅助相关运算部分而了解

不过,仅仅做实验并且仅计算4颗卫星的话,对于S3C44B0 66MHz来说,我觉得5%是够用的
66M*5%/4=825K,也就是说每颗卫星需要825K时钟周期完成解算,应该是绰绰有余了

出0入0汤圆

发表于 2010-9-20 18:55:01 | 显示全部楼层
回复【28楼】elder60 60岁老头
发现先生对mpw(多项目晶圆)是熟悉的.(不知现在行情如何)不妨给网友们普及一下,也是件功德事.
-----------------------------------------------------------------------

说实话,我没有参与过MPW

我提的MPW主要是说有些高校的学生有免费MPW的机会,如果个人有资源也可以免费

关于芯片设计流程,有兴趣的话倒是可以普及一下

另:抱歉今天打不了很多字

出0入0汤圆

 楼主| 发表于 2010-9-20 19:09:44 | 显示全部楼层
谢谢了.

出0入0汤圆

发表于 2010-9-20 23:34:38 | 显示全部楼层
那个40多秒,其中有大概10s是用来捕获的,这是由于有运算能力限制的。另外就是商业接收机,比如Sirf也是使用FFT的。这个在他们的专利里可以看到。

剩下的30s,第一是用来完成帧同步,然后decode电文,用来计算卫星位置和速度。尽管30s一帧的电文,只有第一第二frame (每个frame 6s)就可以计算卫星位置和速度了。但是接收时,如果是从第二个frame开始解调的,那就不得不等到下个帧时,才能把需呀的卫星轨道参数解调出来。

出0入0汤圆

发表于 2010-9-21 00:35:03 | 显示全部楼层
我想起我的手机里的模块也是啊莫卖的这种,我想知道怎么吧AGPS信号送入这个模块,加快定位速度,我有两个,准备搞点好玩的东东

出0入0汤圆

发表于 2010-9-21 02:24:44 | 显示全部楼层
回复【26楼】elder60 60岁老头
==============================================================================================================
1. 0楼提出的问题不言而喻,是针对我们常见的商品接收机,而不是很多年前的东西.
然而,所有回复中有关计算以及据的例子都是教科书里常见的,历史上产品里的"纯粹串行方式".
  然而,目前的接收机,全部都是多路并行相关器.
先生若是这样说: 当相关器的数量是多少?他们可能会怎么用法,于是从开机到锁定会要多少时间,其理由是...这样是否更好?
---------------------------------------------------------------------------------------------------------------
同意:)

  先生没有对我的想法"我对于20万个相关器的说法,是有异议的",表示自己的看法。我是遗憾的。
----------------------------------------------------------------------------------------------------------------
关于20万个相关器,应该是说等效个数,并且也仅限于捕获过程
按上面我们的计算方法,捕获一颗卫星需要进行的相关操作次数为101*4092=413 292,所需时间为413.292s
对于SirF的芯片来说,捕获一颗卫星的时间就变成了413.292s/200 000 = 20.9646ms
32颗卫星总的捕获时间为20.9646ms*32 = 661.2672ms
至于实际能否在这么短的时间内完成捕获,就不得而知了

==============================================================================================================
2. 对于现有商品机可能采纳的几个措施:
"1. 提高相关器运算频率 2.优化多普勒频偏扫描方法 3.采用FFT 4.多路并行相关器 "
他们对减少冷开机时间的贡献,先生却没有定量论述,而一笔带过.这是现有商品机,是我们问题针对的对象.
--------------------------------------------------------------------------------------------------------------
1)提高相关器运算频率:仍按照以上指标计算,也就是要求C/A码捕获精度为1/4chip,对于一个完整的C/A码序列,需要对1ms数据进行4092次乘加运算。既然MAC运算的次数是固定的,如果提高MAC的时钟频率,如提高16倍,单次相关操作需要的时间就从1ms变为1/16ms
2)优化多普勒频偏扫描方法:仍按照以上指标计算,串行方式需要对+/-5kHZ每隔100Hz扫描一个频点,可以改为先间隔500Hz,需要扫描21次,在间隔100Hz,在+/-500Hz范围内扫描11次,总共扫描次数由101次降为32次
3)采用FFT:FFT可以对载波进行并行搜索,如下图所示:

(原文件名:FFT.JPG)
结果如下图所示:

(原文件名:FFT_result.JPG)
可以看到,右边的图有个峰值,这个峰值点对应的频率与中频之差就是多普勒频偏了
这个方法中C/A码的搜索仍然是串行的,假设FFT时间为Tms,则按照以上指标计算,每1/4chip的相关操作时间由101ms变为Tms,如果FFT由硬件来实现的话,效率的提高是很可观的
4)多路并行相关器:该方法其实是对C/A码的搜索采用并行方法,GPS信号同时进入多路相关器,每一路相关器中C/A码的相位互不相同,假设N路并行,捕获速度变为原来的1/N

出0入0汤圆

发表于 2010-9-21 07:05:43 | 显示全部楼层
mark

出0入0汤圆

 楼主| 发表于 2010-9-21 07:58:21 | 显示全部楼层
回复【40楼】nobrains
-----------------------------------------------------------------------
这么晚复贴,实在辛苦.对不起了,都是我若得祸.  你孩子多大了?
关于"关于20万个相关器,应该是说等效个数,并且也仅限于捕获过程"一说,我很同意.结合littleGnss 所说,Sirf是使用FFT的专利的.
好像更有可能.
我们不妨再说明白一点: 20万个相关器是指 相当于同时进行20万个相关操作的效果. 怎么说,不知对否?
可怕的商业宣传啊! 以后也要学点. 啊,我可没有"以后"了.
littleGnss 能否把sirf的专利再看一下,他的fft的情况: 1.是几个? 2.是否用"流水"的? 3.进行fft时的频率是多少?(我印象中sirf的中频是很高的,他是否数字降频了?) 辛苦了.

-----------------------------------------------
1)提高相关器运算频率:仍按照以上指标计算,也就是要求C/A码捕获精度为1/4chip,对于一个完整的C/A码序列,需要对1ms数据进行4092次乘加运算。既然MAC运算的次数是固定的,如果提高MAC的时钟频率,如提高16倍,单次相关操作需要的时间就从1ms变为1/16ms
-----------------------------------------------
可能我少见多怪,如果我来干,乘加运算肯定会采用仅可能高的时钟频率.难道原来不是不是这样,是用不太高的频率?

-----------------------------------------------
2)优化多普勒频偏扫描方法:仍按照以上指标计算,串行方式需要对+/-5kHZ每隔100Hz扫描一个频点,可以改为先间隔500Hz,需要扫描21次,再间隔100Hz,在+/-500Hz范围内扫描11次,总共扫描次数由101次降为32次
-----------------------------------------------
间隔500Hz时,会不会漏掉?保证能出来? S/N小时怎么样?

回复【38楼】littleGnss
那个40多秒,其中有大概10s是用来捕获的,这是由于有运算能力限制的。另外就是商业接收机,比如sirf也是使用fft的。这个在他们的专利里可以看到。
剩下的30s,第一是用来完成帧同步,然后decode电文,用来计算卫星位置和速度。尽管30s一帧的电文,只有第一第二frame (每个frame 6s)就可以计算卫星位置和速度了。但是接收时,如果是从第二个frame开始解调的,那就不得不等到下个帧时,才能把需呀的卫星轨道参数解调出来。
-----------------------------------------------------------------------
你直指本贴主题,而且进一步细化了.好.
我试图把你的话"白话化"一下:
● 除了捕获跟踪花时外,解电文的时间要看我们的运气:
1. 运气最好时,刚解电文时,就碰上第一第二子帧(300Bit x 2) 12秒后,就可以去定位计算了.
2. 运气最坏时,刚解电文时,第一子帧刚过(没发收全)  那就要在近6个子帧时间,即36秒后,才去定位计算.
是这个意思吧?

想法是对的,但是否把"第一第二子帧"搞错了,是否应该是"第一到第三子帧",至少是"第二第三子帧"?

出0入0汤圆

发表于 2010-9-21 11:26:52 | 显示全部楼层
孩子还小,主要是还有其他事情

可能我少见多怪,如果我来干,乘加运算肯定会采用仅可能高的时钟频率.难道原来不是不是这样,是用不太高的频率?
-----------------------------------------------------------------------
GP2010就没法提高频率

间隔500Hz时,会不会漏掉?保证能出来? S/N小时怎么样?
-----------------------------------------------------------------------
第二轮扫描对第一轮的捕获频率两侧的+/-500Hz进行捕获,应该还好,但是手头没有数据来支撑
至于误报(False Alarm),总是会有的,如下图

(原文件名:FalseAlarm.JPG)

出0入0汤圆

 楼主| 发表于 2010-9-21 11:48:31 | 显示全部楼层
我担心的不是第二轮扫描,而是第一轮扫描.
我再想想,谢谢.

出0入0汤圆

发表于 2010-9-22 01:29:41 | 显示全部楼层
============================================================================================================
3. 关于"电文及30秒",先生没有列举其中的关键参数是什么?以及利用他们来完成定位的大约计算时间(结合商品机,以ARM
为例),因为,这也是冷启动时间的一部分.  
------------------------------------------------------------------------------------------------------------
这里的关键参数,我也没有很仔细的了解过,从基带解调出电文及其他一些必要信息(稍后说明)后,解算定位就是一些固定的公式,倒是卡尔曼滤波很有搞头,除了滤波(不滤波的话,定位偶尔甚至会有100m的误差)外,还可以预测

仅列举一下每页中各帧包含的大概信息,注意帧即Frame,有的书上叫做Subframe
帧1:主要包含卫星时间校准的信息,用于获得卫星时间
帧2和帧3:主要包含卫星轨道信息,用于计算卫星位置
帧4和帧5:包含GPS系统的星历,具有长时有效性,同时其精度也低于前面3帧

出0入0汤圆

 楼主| 发表于 2010-9-22 07:38:08 | 显示全部楼层
来点细的,啊,终于让你们看到老头的"傻"了.整理得好苦,但没办法,因为脑子坏了.整理能帮助记忆.也有助编程.
不赞成年轻人也这么做,我是病人,特殊些.
子帧1的导航数据
参数      说明                           比特地址  比例因子LSB    有效范围  单位
WN        星期序号                       61-70     1
          测距精度预测                   73-76       
          卫星健康状况                   77-82
IODC      10位数据星历时钟发布号 7天     83-84 211-218
TGD       群延时差别评估8bit             197-204 8BIT* 2^-31                 S
toe       时钟修正项                     219-234 16BIT 2^4         604-784   S
αf2       时钟修正项                     241-248 8BIT* 2^-55                 S/S^2
αf1       时钟修正项                     249-264 16BIT* 2^-43                S/S
αf0       时钟修正项                     271-291 22BIT* 2^-31                S

结论:第一子帧必须要,二,三也是.所以冷启动时间的说法又要变了.

出10入0汤圆

发表于 2011-3-30 23:43:29 | 显示全部楼层
mark 好贴

出0入0汤圆

发表于 2011-4-28 14:23:45 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-6-13 23:43:15 | 显示全部楼层
非常有技术含量啊。

出0入0汤圆

发表于 2011-6-29 19:05:01 | 显示全部楼层
好贴!!!

出0入0汤圆

发表于 2011-7-1 19:58:50 | 显示全部楼层
好贴!

出0入0汤圆

发表于 2012-5-29 17:31:09 | 显示全部楼层
哈哈   学习了                                                                  
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-4 18:21

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表