0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

轻松掌握基本GNSS测试——首次定位时间(TTFF)

虹科卫星与无线电通信 ? 2023-06-21 10:09 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

首次定位时间(TTFF)是指从GNSS单元打开到能够输出具有给定性能级别的有效导航解决方案之间的时间。根据接收机的规格,用于验证导航解决方案的性能标准可以是跟踪卫星的数量(即用于2D或3D定位)/跟踪星座或位置精度。该测试确定设备在各种潜在情况下对反复启动和关闭的反应。

对于TTFF测试,接收机要测试的三个最重要的条件是冷启动、暖启动和热启动。下表解释了这三个启动条件的含义。

wKgaomTHIruAF1YBAACH7K4Rm4M334.jpg

首次定位时间的测试建议:

  • 每个接收机针对每个单元启动条件(冷、暖和热)至少执行200次TTFF测试,以确保有足够的数据点来较为精准的确定启动时间的典型值。(注意:GNSS接收机的规格通常需要平均值或95%置信度值)。通过自动化测试,执行的测试数量可以更高。
  • 建议在不同的模拟场景(例如位置、历书、时间)中评估接收机的TTFF,以应对不同的星座配置。应调整方案参数以匹配实际应用的要求,如对于静态或移动车辆、存在多路径和/或干扰的情况。

在有多个卫星星座可用的时代(除了GPS以外,现在还有北斗、GLONASS,伽利略等卫星导航系统),必须评估接收机支持的每个星座的TTFF。如果能够在接收机上单独激活每个星座,建议可以这样测试接收机支持星座的TTF,但如果接收机没有这个功能,也可以选择在虹科Safran Skydel GNSS模拟器上进行测试,一次启用一个星座,但接收机的算法不会被优化为搜索此可见星座的“仅信号”。

为了正确评估接收机的TTFF,有必要从大量场景点开始,并经常更改模拟星座配置。为此,虹科Safran Skydel模拟器提供了强大的API,能够自动启动连续的Skydel场景,并向正在测试的接收机发送自动关闭/启动命令。只需简单的编程,就可以使用Skydel模拟器轻松实现TTFF测试的自动化。

测试流程

在这个案例中,将评估u-blox EVK-M8N接收机在多个TTFF场景中的性能。虹科Safran Skydel模拟器具备强大的灵活性,接收机可以很容易地在不同的星座模式和启动条件下进行测试。例如,选择验证单个星座(分别是GPS C/A和Galileo E1)以及混合模式(同时使用GPS和Galileo)在冷/热启动条件下的性能。接收机性能还可以使用Skydel软件的干扰功能在GNSS信号的采集和跟踪期间激活干扰来进行测量。对于每个性能点评估(一个星座在一个起始条件下),接收机将在200个不同的场景中启动5次。

模拟器

Skydel

版本 17.1.7

软件定义无线电 (SDR)

Ettus USRP X300

控制器电脑

Nvidia GeForce GTX 1080

Intel Core I7-6700K

Windows 10 Pro

接收机

u-blox EVK-M8N

软件版本 EXT CORE 3.01

硬件版本 00080000

测试设置

如下图所示,设置虹科Safran Skydel模拟器的基本配置来进行测试。GNSS 接收机使用USB电缆连接到控制器PC,由u-blox接收机的专有软件界面管理连接。通过这种配置,Skydel模拟器和u-blox接收机可以在一台PC上进行轻松控制,而无需管理多个以太网接口

wKgaomTHIryAB3dZAAKJGTcI9_s616.png

系统设置完成后,首先使用Skydel GUI创建5种不同的模拟场景。每个场景都设置在地球上的不同位置,并使用不同的开始时间。这样将确保在每个场景中都有一个单独的GNSS星座。电离层和对流层传播延迟是根据Klobuchar和STANAG模型定义的,所有其他误差(如多路径、时钟随机噪声、伪距斜率)均被关闭。对于天顶上的GPS和伽利略参考卫星,GNSS信号功率被设置为-50dBm(相当于接收器输入端的-110dBm),所有其他卫星的功率会根据其仰角自动调整。模拟持续时间是无限的,模拟场景的开始和停止时间将通过API进行控制。

脚本概述

创建模拟器场景后,可以评估接收机的TTFF性能。可以使用功能强大的虹科Safran Skydel API来实现相同的结果,而无需手动执行此操作。这个案例中使用的是Python API,除此之外,Skydel也附带C++C#以及Labview的API。以下Python命令作为示例提供,在实际使用中需要适应配置,尤其是控制接收机的功能。

首先,从虹科Safran Skydel 库中导入远程函数:

import skydelsdx from skydelsdx.commands import Open from skydelsdx.commands import Stop from skydelsdx.commands import Start from skydelsdx.commands import SetInterferenceChirp

创建Skydel远程模拟器的实例并连接到它:

sim = skydelsdx.RemoteSimulator(True) sim.connect()

然后循环之前创建的 Skydel 场景,这里有5个不同的场景:

TTFFlist = [] for scnNumber in range(1, totalScnNumber + 1):

在循环中,在Skydel模拟器上打开第一个场景:

sim.call(Open(“yourScenarioPath {0}.sdx”.format(totalScnNumber), True))

在这个案例中,激活了以L1为中心的线性调频干扰,对于某些测试,其带宽1MHz,扫描时间为100μs,J/S功率比为24dB。干扰可能已直接添加到此场景中,但为了保持启用或禁用它的灵活性,可以使用远程命令添加干扰:

sim.call(SetInterferenceChirp(0, 0, 1.57542e+9, 24, 1e+6, 0.0001, True, "{8d18b359-1b21-44a6-b882-7b84e7dbadb4}"))

使用在计算所需TTFF启动量之间的函数来启动和停止Skydel场景。例如,这里对每个场景使用了40个启动:

  • 对于所选星座
  • 在定义的类型(冷、热或热条件)下

sim.start() TTFFlist = TTFFlist + TTFFStarts(runNumberForEachScn, GNSSconstellation, TTFFtype) sim.stop()

TTFFstart功能连接到u-blox接收机,设置星座模式,并通过内存擦除重新启动接收机。在启动时间异常的情况下(即如果由于干扰功率高于规格而找不到GNSS信号),则为每种启动类型定义超时,然后函数在暖启动和热启动条件下等待900秒,以从导航消息中检索所有数据:

def TTFFStarts(runNumberForEachScn, GNSSconstellation, TTFFtype): u-blox = connectReceiver() setReceiverMode(ublox, GNSSconstellation) coldStart(ublox) if TTFFtype == TTFFtypes.cold: timeout = 90 time.sleep(900) elif TTFFtype == TTFFtypes.warm: timeout = 90 time.sleep(900) elif TTFFtype == TTFFtypes.hot: timeout = 15 sim.start() TTFFlist = TTFFlist + TTFFStarts(runNumberForEachScn, GNSSconstellation, TTFFtype) sim.stop()

然后,迭代所需的启动次数。在所选模式重新启动接收机之前,等待一段时间,以避免每次启动之间会出现的常见问题。然后,该函数等待接收机的修复并计算 TTFF。此功能将取决于对TTFF的定义(即位置计算中使用的卫星数量、PDOP条件或规范中的其他标准)以及接收机的能力。在这里使用u-blox接收机自动计算第一个2D修复的时间。 TTFFlist = [] for nb in range(1, runNumberForEachScn + 1): if TTFFtype == TTFFtypes.cold: time.sleep(random.uniform(0,30)) coldStart(ublox) elif TTFFtype == TTFFtypes.hot: time.sleep(random.random()) hotStart(ublox) TTFF = waitForFix(ublox, timeout) TTFFlist = TTFFlist + [TTFF] disconnectReceiver(ublox) return TTFFlist

TTFFlist包含200个启动中每个启动的TTFF值(即40个场景中每个场景的5个启动)。使用Python pickler保存此列表,以便后续使用其它的工具进行分析。在本文中使用了Pyplot,它为图形数据分析提供了强大的开源库。

测试结果

下图提供了u-blox接收机在无论有无干扰的情况下在GPS C/A、Galileo E1和混合模式下冷启动时的性能,在每种情况下,TTFF都以平均值和95个百分位值的形式提供。本文的目的不是详细分析u-blox接收机的性能,但在纯GPS模式下TTFF的特定分布也是非常有趣的,由于GPS C/A导航消息的特殊结构,其值集中在30秒左右。仅使用GPS的TTFF性能也优于仅使用伽利略,因为GPS星历数据分组在导航消息的开头,而它们分散在伽利略导航消息中。

wKgZomTHIruAOsuGAAERtrwDsiQ614.pngTTFF性能–冷启动条件–GPS模式

wKgZomTHIryAYYWsAAE1nGfjlX0691.pngTTFF性能–冷启动条件–Galileo 模式

wKgZomTHIruAOsuGAAERtrwDsiQ614.pngTTFF性能–冷启动条件–GPS/伽利略模式

最后,可以看到混合模式并没有提高整体性能,因为在每种情况下,都必须解码至少一个星座的星历表。当干扰被激活时,可以看到对性能的影响,在这种情况下,几次采集时间超过35秒时,GPS信号似乎比伽利略信号受到干扰的影响略大。整体性能下降在一定程度上可以通过信号采集期间更多的漏检来解释,但主要是由于导航消息解码中的位丢失或错误。(注:星历解码中缺少一个位可能意味着需要等待下一个星历周期)。

同样的分析可以在热启动条件或其他卫星采集模式下进行。

总结

wKgaomTHIryATr7TAAfyYWlYsR4437.png

本文解释了如何使用虹科Safran Skydel GNSS模拟器评估TTFF(GNSS接收机与性能相关的关键功能)。本文通过一个简单的例子突出了Skydel远程API的优势,它使用户能够非常轻松的执行测试,而其他模拟器可能需要自定义工具或费力的手动测试程序。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 射频
    +关注

    关注

    106

    文章

    5787

    浏览量

    170945
  • 通信
    +关注

    关注

    18

    文章

    6218

    浏览量

    138184
  • 卫星通信
    +关注

    关注

    12

    文章

    774

    浏览量

    39465
  • 无线通信
    +关注

    关注

    58

    文章

    4773

    浏览量

    145411
  • GNSS
    +关注

    关注

    9

    文章

    893

    浏览量

    49576
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何实现3秒定位GNSS模组实战指南大公开

    传统定位耗时过长?GNSS模组让3秒极速定位成为现实。本文为你提供实战指南,详解操作步骤与技术要点,助你轻松达成目标。在紧急救援、智能交通等场景中,3秒
    的头像 发表于 08-08 17:10 ?314次阅读
    如何实现3秒<b class='flag-5'>定位</b>?<b class='flag-5'>GNSS</b>模组实战指南大公开

    GNSS模组实战指南:3秒精准定位全揭秘!

    星历、时间等辅助数据,可大幅缩短GPS首次定位时间。 ? 本文将以Air780EGH核心板为例,带你了解AGPS功能及其基本使用方法,可根据实际需求灵活扩展应用。 一、GPS/AGPS
    的头像 发表于 08-04 16:13 ?90次阅读
    <b class='flag-5'>GNSS</b>模组实战指南:3秒精准<b class='flag-5'>定位</b>全揭秘!

    GNSS 模块选频关键:u-blox、Sony 芯片推荐频率与 TCXO 配置指南

    GNSS模块频率选型实战:如何用高精度TCXO降低TTFF? 在各类智能终端、车载设备与物联网系统中,GNSS模块已经成为关键部件。但你是否知道,影响模块首次
    发表于 07-28 12:34

    如何快速优化GNSS定位?调试方法深度指南

    优化GNSS定位效率需掌握科学调试方法。本文将以Air8000核心板为例,分享定位调试从原理到实践,提供系统化解决方案,让您的设备实现稳定、精准、快速
    的头像 发表于 06-19 18:26 ?278次阅读
    如何快速优化<b class='flag-5'>GNSS</b><b class='flag-5'>定位</b>?调试方法深度指南

    9160 gps 定位需要多长时间呢?

    nRF9160 在 GNSS(GPS)联网获取定位时,所需时间主要取决于“首次定位时间”(Tim
    发表于 05-27 23:02

    基于 Wi-Fi 的定位服务

    UTC Google maps URL: https://maps.google.com/?q=59.919015,10.688577 使用 A-GPS 提供基于 GNSS定位服务 样本中的原始函数
    发表于 04-17 15:16

    德思特携GNSS高精度定位测试技术亮相粤港科创盛会

    近日,虹科姐妹公司德思特携自主研发的GNSS高精度定位测试技术亮相香港“粤港创新与科技合作推介活动”,与行业专家共探国产替代新机遇,展现“中国智造”在全球产业链中的技术实力与市场潜力。
    的头像 发表于 04-17 11:45 ?493次阅读

    BK1661 单频多模 低功耗定位芯片

    ) - 水平定位精度: 1.5 m CEP - 地速精度: 0.1 m/s CEP - 冷启动首次定位时间: 28 s - AGPS首次
    发表于 03-10 09:18

    GNSS模拟器用于消费电子、导航芯片与定位终端测试

    在消费电子、导航芯片与定位终端快速发展的今天,精准的定位性能测试已成为产品竞争力的关键。GNSS模拟器作为行业领先的测试工具,能够模拟复杂多
    的头像 发表于 02-19 15:36 ?556次阅读
    <b class='flag-5'>GNSS</b>模拟器用于消费电子、导航芯片与<b class='flag-5'>定位</b>终端<b class='flag-5'>测试</b>

    PNT、GNSS与GPS:卫星定位导航技术的清晰区分

    PNT、GNSS、GPS均是卫星定位和导航相关领域中的常见缩写词,他们经常会被用到,且在很多情况下会被等同使用或替换使用。我们会把定位导航功能测试叫做PNT性能
    的头像 发表于 01-13 15:42 ?1273次阅读
    PNT、<b class='flag-5'>GNSS</b>与GPS:卫星<b class='flag-5'>定位</b>导航技术的清晰区分

    物联网系统中如何增强GNSS的信号_GNSS二级放大电路研发测试方案

    01 物联网行业中存在问题 GPS 产品在研发阶段,为优化GNSS产品定位性能,增加射频二级放大电路,需要对产品进行射频测试以及外场实际测试,保证达到提升
    的头像 发表于 09-30 18:25 ?1407次阅读
    物联网系统中如何增强<b class='flag-5'>GNSS</b>的信号_<b class='flag-5'>GNSS</b>二级放大电路研发<b class='flag-5'>测试</b>方案

    物联网产品的GNSS功能的研发测试方案

    不同的环境条件下,如城市峡谷、山区、森林等,对 GNSS 信号的接收和处理能力进行评估。同时,还需测试在多种运动状态下,如静止、低速行驶、高速移动等,GNSS 定位的准确性和稳定性。
    的头像 发表于 09-29 11:08 ?1438次阅读
    物联网产品的<b class='flag-5'>GNSS</b>功能的研发<b class='flag-5'>测试</b>方案

    一文看懂 | GNSS时间同步技术的发展史

    物体、人或动物,其正确运行有赖于精准的GNSS时间同步。 在这些应用中,往往被忽视的时间变量被看得甚至比定位信息还要重要。精确的时间测量对
    发表于 09-18 15:43 ?1017次阅读

    时间服务器与GNSS模拟器实现区域内可靠的室内定位

    一、方案介绍 GNSS是当前最常用、覆盖最广泛、效率最高的定位导航技术,几乎各个领域都依赖它。然而,在室内或地下,GNSS信号通常非常弱甚至不可用。德思特采用时间服务器与
    的头像 发表于 09-12 10:14 ?684次阅读
    <b class='flag-5'>时间</b>服务器与<b class='flag-5'>GNSS</b>模拟器实现区域内可靠的室内<b class='flag-5'>定位</b>