Skydel如何使用USRP完成GNSS信号仿真

电子说

1.3w人已加入

描述

作者介绍

模拟器

一、Skydel与NI USRP

软件定义架构(Software Defined Architecture)是一种新型的架构模式,它是一种基于软件的架构,通过软件来定义系统的功能,从而提高系统的运行效率和能量效率。软件定义架构可以将硬件资源抽象化,从而使得应用程序可以更好地利用硬件资源,提高系统的性能和可靠性。

Skydel GNSS仿真引擎是创新型的软件定义GNSS模拟仿真引擎,它利用PC的GPU的计算能力并借助Nvidia GPU极快的数学计算能力处理星座、频率与轨迹信息,并生成IQ信号,使用SDR进行IQ信号的处理与RF信号的输出兼具两全其美的优势:顶级GNSS模拟器获得的高端性能,以及使用其GNSS软件架构的硬件所带来的规模经济性和灵活性。

NI(National Instruments,美国国家仪器公司)是一家总部位于美国的跨国公司,成立于1976年,专注于测试、测量和自动化领域的产品和服务,是测试测量行业的世界级龙头企业。

NI的核心产品之一USRP(Universal Software Radio Peripheral,通用软件无线电外设)系列,是一套开源的软件定义无线电(SDR)设备。USRP允许研究人员、工程师和爱好者通过软件编程来定义和重新定义无线电的通信协议,而无需更改硬件。这使得USRP非常适合于无线通信研究、原型设计、教育和业余无线电活动。

模拟器

Ettus Research是USRP(Universal Software Radio Peripheral)产品的原始开发商,这是一家专注于软件定义无线电(SDR)技术的公司。2010年,Ettus Research被National Instruments(NI)收购。这次收购使得NI能够扩大其在无线通信和软件定义无线电领域的影响力。

模拟器

Skydel允许用户使用NI USRP294xR/295xR系列以及同级别的Ettus Reserch的X300/X310/N310系列进行GNSS信号的仿真模拟,为各个行业的技术工程师带来直观、高效的GNSS仿真与测试方法。

模拟器

二、硬件部署

Skydel可以在NI USRP-294xR/USRP-295xR部署环境下实现单一场景与多场景的仿真。

模拟器

使用一个USRP

在使用一个USRP的情况下,允许仿真单个场景,实现单频双频GNSS信号输出。

模拟器

使用USRP时,需要Skydel所在的计算机具有10GbE网卡,并使用10 GbE SFP光缆与SDR端口1连接,推荐的万兆网卡有:

● Intel X710-BM2

● Intel E810XXV-AM2

● Intel XXV710-AM2

● Intel E81oXXV-DA2

● Intel XXV710-DA2

注意:一个 Skydel 实例只能与一个USRP通信,两个Skydel实例无法与一个USRP同时通信。

使用多个USRP

在使用一个USRP的情况下,允许仿真复数个场景,实现单频双频GNSS信号输出或反正一个场景,实现三频GNSS信号输出。

模拟器模拟器

与之前相同,使用USRP时,需要Skydel所在的计算机具有10GbE网卡,并使用10 GbE SFP光缆与SDR端口1连接。

为了执行准确的GNSS模拟,SDR需要精确的参考时钟,每个 SDR都需要共享相同的10MHz参考时钟并具有共同的每秒脉冲 (PPS) 信号才能同步。

需要注意的是,USRP本身具有80dB的增益,因此在使用线缆连接GNSS接收机时,一定要使用足够的衰减与隔直器以确保两端设备的安全使用。

模拟器

三、软件部署

-固件安装

Skydel要正常使用,需要为USRP安装非常特定版本的FPGA映像,在首次将Skydel用于您的设备之前,您必须将此特定映像刻录到您的设备中。我们提供了简单可用的UHD驱动包(windows/Linux),直接安装应用即可,详细的固件安装方法请查阅Skydel使用手册。

为什么Safran Skydel需要这个特定版本呢?——GNSS信号模拟有一个非常重要的要求:RF信号传输绝不能中断。缺少单个 I/Q样本会将误差引入载波相位,从而使整个模拟对于GNSS 接收器测试来说太不精确。为了实现不间断的RF信号,SDR 必须具有I/Q样本缓冲区。缓冲区必须足够大,以减轻软件和SDR之间I/Q样本传输的中断。为了确保I/Q样本流稳定,这个特殊的FPGA映像使用板载DDR RAM作为流缓冲区;这种 FPGA映像称为“HG”映像。

-软件配置

本文将会介绍在WINDOW环境下如何快速实现NI USRP的部署并使用Skydel进行GNSS仿真,Ubuntu下的部署请咨询我们的相关技术工程师。

Skydel 支持以下 Microsoft Windows 版本:

● Windows 10 家庭版/专业版

● Windows 11 家庭版/专业版

-BIOS设置

我们强烈建议您在BIOS中修改以下设置:

● 禁用Intel SpeedStep;

● 禁用Intel Turbo Boost。

需要禁用这些设置才能强制CPU始终以相同频率运行。否则,当CPU频率变化时,可能会导致计算机与SDR之间的通信链接不稳定。这反过来可能会导致GNSS信号传输中断。

-windows系统设置

① 电源计划

● 打开控制面板、电源选项,然后单击“选择电源计划”。

● 选择“高性能”电源计划。

● 点击“更改计划设置”,将所有时间设置为“从不”。

模拟器

说明:在GNSS模拟期间始终保持显示器打开。Windows能够检测显示器是打开还是关闭,当显示器关闭时,Windows可能会降低GPU的性能,从而导致模拟错误(例如,流缓冲区不足)。

② 注册表项:FastSendDatagramThreshold

仅在使用Ettus或NI SDR时需要设置。使用regedit工具打开Windows注册表:

●在HKEY_LOCAL_MACHINESystemCurrentControlSet ServicesAFDParameters下添加或修改DWORD注册表项 FastSendDatagramThreshold;

● 确保该值为9000(十进制);

● 重新启动PC使之生效。

模拟器

③ 通知

GNSS 模拟期间,强烈建议关闭所有 Windows 通知以避免中断。为此,请打开通知与操作,然后禁用通知。

模拟器

-Nvidia GPU驱动程序

安装的Nvidia显卡驱动程序必须支持CUDA Runtime API 11.8.0或更高版本。确保您的计算机使用的是最新的WHQL认证的Nvidia GPU驱动程序(520.06或更高版本)。您可以在 Nvidia网站下载最新版本。

-网卡设置

① 驱动程序

仅在使用Ettus或NI SDR时需要设置,从英特尔网站下载并安装最新版本。

② 巨帧数据包

打开控制面板、网络和共享中心,然后更改适配器设置。右键单击连接到 SDR 的适配器并选择属性。单击配置,然后在高级选项卡中查找“巨帧数据包”:

模拟器

● 启用巨帧数据包,并将大小设置为最大值。

模拟器

● 在高级选项中,将传输缓冲区设置为最大值 (16384)

模拟器

③ 静态 IP 地址

打开控制面板、网络和共享中心、更改适配器设置。右键单击连接到 SDR 的适配器并选择属性。双击 Internet 协议版本 4 (TCP/IPv4):

● 选择单选按钮“使用以下 IP 地址”;

● IP地址:192.168.40.1

● 子网掩码:255.255.255.0

模拟器

四、硬件连接

1. 软件配置完成后,关闭计算机,NI USRP连接电源

2. 黄色光纤连接到两台设备,听到“咔哒”一声就说明连接好了。如果需要拔出,拉住光纤头的塑料手柄平行拔除即可。

a. USRP插“1”端口,PC插入对应设置静态IP为“192.168.40.1”的SFP端口。

模拟器

b. 拔出塑料把手如图

模拟器

3. 连接好之后,在命令行输入“ping 192.168.40.2”。如果没有ping通,尝试检查硬件后重启电脑。

五、启动Skydel

至此,您可以正常打开Skydel,并选择对应的SDR开始您的仿真。

模拟器

打开Skydel,如果需要直接使用,可打开例程“usrp-testing.sdx”(usrp-testing.sdx),即可进行Skydel GUI的测试,如需要API控制,也需要打开Skydel。

警告:

一定要加隔直器单元,否则反向电流会打坏USRP!

一定要加衰减器,否则过大功率会损坏待测件!

审核编辑 黄宇

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分