实际工程,使用了几百个GP-02, 现在相互之间卫星授时的值不一致!
从GPS输出的数据量还是蛮大的。通过查看相同帧头之间的字节数,比如两个 "$GNRMC"之间的字节数,有的超过了1K字节,在9600波特率下,传输耗费的时间就超出了1秒。随着搜星过程的深入,星越多,数据量就越大。那么,接收设备收到的数据帧表示的时间值与当时的实际时刻是有偏差的,而且还随数据量漂浮不定。这种情况下就需要借助1PPS信号来做精准同步。
但是,通过抓取信号波形以及我们处理中输出的波形(参看下图)可以看到,如果截取"$GNRMC"帧的时段完全在两个1PPS信号之间,就可以将秒数值加1,用后一个1PPS的上升沿来做校时操作;如果因数据量大,这个抓取"GNRMC"的时段与第二个1PPS重叠的话,这个秒值就需要加2,用再后一个1pps来校时了。
问题来了:重叠,乃至滞后到这个1PPS之后,如何判断数据与哪个1PPS关联,GPS自身有没有校准?总不会因为每批数据字节数超出1K,一直这样滞后吧?串口收到的时间值就完全不准了。
请问技术支持,这种情况,该怎么判断处理截取的"$GNRMC"帧与1PPS的相位关系?
麻烦尽快解答!谢谢!
|