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

作者介绍

一、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部署环境下实现单一场景与多场景的仿真。

2.1使用一个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同时通信。

2.2使用多个USRP

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

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

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

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

三、软件部署

3.1固件安装

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”映像。

3.2软件配置

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

Skydel 支持以下 Microsoft Windows 版本:

● Windows 10 家庭版/专业版

● Windows 11 家庭版/专业版

3.3BIOS设置

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

● 禁用Intel SpeedStep;

● 禁用Intel Turbo Boost。

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

3.4windows系统设置

① 电源计划

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

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

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

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

② 注册表项:FastSendDatagramThreshold

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

●在HKEY_LOCAL_MACHINE\System\CurrentControlSet \Services\AFD\Parameters\下添加或修改DWORD注册表项 FastSendDatagramThreshold;

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

● 重新启动PC使之生效。

③ 通知

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

3.5Nvidia GPU驱动程序

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

3.6网卡设置

① 驱动程序

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

② 巨帧数据包

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

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

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

③ 静态 IP 地址

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

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

● IP地址:192.168.40.1

● 子网掩码:255.255.255.0

3.7硬件连接

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

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

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

b.  拔出塑料把手如图

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

3.8启动Skydel

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

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

警告:

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1534508.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

玩机搞机-----如何简单的使用ADB指令来卸载和冻结系统应用 无需root权限 详细操作图示教程

同类博文: 玩机搞机---卸载内置软件 无root权限卸载不需要的软件 安全卸载_无需root卸载彻底内置软件-CSDN博客 在很多时候我们需要卸载一些系统级的app。但如果直接手机端进行卸载的话。是无法正常卸载的。其实我们可以通过有些成品工具或者完全靠ADB指令来进行卸…

一种简单的过某宝验证码的方式(仅做学习使用)

开篇 今天介绍一种简单的过某宝验证码的方式,用的是自动化,这样对不会js逆向的小白非常友好,只需要用到selenium框架就能轻松过某宝验证码,即模拟人的操作对滑块进行滑动。 但是首先还是需要训练验证码和标题 训练前&#xff1a…

Apisix离线安装

上传离线包 #ll apisix-3.2.2-0.el7.x86_64.rpm apisix-base-1.21.4.1.8-0.el7.x86_64.rpm apisix-dashboard-3.0.1-0.el7.x86_64.rpm cyrus-sasl-2.1.26-24.el7_9.x86_64.rpm cyrus-sasl-devel-2.1.26-24.el7_9.x86_64.rpm cyrus-sasl-gssapi-2.1.26-24.el7_9.x86_64.rpm cyr…

K8s利用etcd定时备份集群结合钉钉机器人通知

如何通过脚本的方式进行K8s集群的备份 查看K8s中master节点中etcd集群的状态 kubectl get pods -n kube-system | grep etcd由于使用的etcd服务是K8s搭建时自身携带的,并不是独立搭建的etcd集群信息。使用 K8s 搭建集群时,etcd 是 Kubernetes 集成的一个重要组件因此需要查…

多线程面试题-28问

1、查询Java有哪些线程? public class MultiThread {public static void main(String[] args) {// 获取 Java 线程管理 MXBeanThreadMXBean threadMXBean ManagementFactory.getThreadMXBean();// 不需要获取同步的 monitor 和 synchronizer 信息,仅获…

朗迪锋亮相2024年中国国际服务贸易交易会

9月12日至14日,2024中国国际服务贸易交易会(以下简称“服贸会”)在国家会议中心和首钢园区成功举办。本届服贸会由商务部和北京市人民政府共同主办,继续秉承“全球服务 互惠共享”的宗旨,与参展企业一同聚焦“共享智慧…

开源项目低代码表单FormCreate中通过接口加载远程数据选项

在开源项目低代码表单 FormCreate 中,fetch 属性提供了强大的功能,允许从远程 API 加载数据并将其应用到表单组件中。通过灵活的配置,fetch 可以在多种场景下发挥作用,从简单的选项加载到复杂的动态数据处理。 源码地址: Github …

再次进阶 舞台王者 第八季完美童模全球赛代言人【刘诗乐】赛场秀场超燃合集!

7月20-23日,2024第八季完美童模全球总决赛在青岛圆满落幕。在盛大的颁奖典礼上,一位才能出众的少女——刘诗乐迎来了她舞台生涯的璀璨时刻。 代言人——刘诗乐,以璀璨童星之姿,优雅地踏上完美童模盛宴的绚丽舞台,作为开…

WebGL系列教程八(GLSL着色器基础语法)

目录 1 前言2 基本原则3 基本数据类型4 顶点着色器和片元着色器4.1 声明4.2 初始化项目4.3 赋值 5 结构体5.1 声明5.2 赋值 6 函数6.1 基本结构6.2 自定义函数6.3 常用内置函数 7 精度8 其他9 总结 1 前言 通过前七讲,我们已经见过了WebGL中的部分基础语法&#xff…

性能诊断的方法(三):异常信息诊断方法

关于性能诊断的方法,我们可以按照“问题现象—直接原因—问题根源”这样一个思路去归纳。我们先从问题的现象去入手,包括时间的分析、资源的分析和异常信息的分析。接下来再去分析产生问题现象的直接原因是什么,这里我们归纳了自上而下的资源…

胤娲科技:一场前所未有的运维革命

嘿,朋友们,你们有没有想过,如果电信网络里突然来了位“超级大脑”,我们的生活会是啥样? 以前啊,网络一有点小情绪,运维小哥就得像侦探一样,层层抽丝剥茧找问题。但现在,大…

无需基础轻松学!三步到位,教你亲手构建个性化AI大模型!

众所周知,我们已经有很多免费的大模型工具可以用,比如: 文心一言:https://yiyan.baidu.com/ 通义千问:https://tongyi.aliyun.com/qianwen/ kimi:https://kimi.moonshot.cn/ 以及众多手机APP&#xff1…

CAPL_构建基于UDS的刷写学习—01 Hex文件的解析

前言: 打算写一个系列:CAPL_构建基于UDS的刷写学习,大致写一下写作的思路 1:本文是第1篇首先讲解基础。首先搞清楚,各种不同文件(常见的S19,hex,bin,以及汽车行业主机厂自己的各种文件CBF(奇瑞特有),VBF&…

FTP传输太不靠谱了,怎么去找替代FTP软件呢?

在当今这个数据驱动的时代,企业对于文件传输的需求日益增长,而传统的FTP协议由于其在安全性、传输效率、管理便利性等方面的局限性,已经无法满足现代企业的需求。因此,寻找一种可靠的FTP替代方案成为了企业亟待解决的问题。 FTP的…

HRSC2016绘制Ground Truth

利用DOTA的脚本绘制HRSC数据集的真实框,首先将HRSC的标注文件转换为DOTA格式,然后利用DOTA的脚本绘制目标框 新建文件 进入到HRSC2016的Test目录,新建两个文件夹: mkdir DOTA_labels DOTA_labels_drawed新建3个py文件 dota_ut…

【TabBar嵌套Navigation案例-cell重用 Objective-C语言】

一、我们来说这个cell重用(重复使用)的问题啊 1.我们这个比分直播推送页面, 这个里边呢,现在这个cell,涉及到两个样式,上面呢,是Default的,下面呢,是Value1的,然后,我们在这个里边啊,我们每一组就一个cell啊,然后呢,我把这个组,多给它复制几份儿,现在是三个组…

Linux-Makefile的编写、以及编写第一个Linux程序:进度条(模拟方便下载的同时,更新图形化界面)

目录 一、Linux项目自动化构建工具-make/Makefile ​编辑 背景: makefile小技巧: 二、Linux第一个小程序-进度条 先导: 1.如何利用/r,fflush(stdout)来实现我们想要的效果; 2.写一个倒计时: 进度条…

恭喜!龙蜥社区2024年中三大奖项评选名单新鲜出炉

近日,在 2024 龙蜥操作系统大会上,龙蜥社区公布了 2024 年中三大奖项评选名单——“最佳合作伙伴奖”“最佳用户案例奖”“最佳应用实践奖(个人)”,并邀请清华大学计算机系教授、龙蜥社区高级顾问史元春,海…

地市专利申请及授权数据集合(2000-2023年)xlsx+dta格式

包括发明专利、实用新型、外观专利的申请和授权等。专利作为衡量一个地区科技创新能力和水平的重要指标,不仅反映了地方企业在技术研发、产品创新方面的活跃程度,也是推动产业升级、促进经济高质量发展的关键力量 一、数据介绍 数据名称:地…

ImportError: DLL load failed while importing _ssl: 找不到指定的模块的解决方法

ImportError: DLL load failed while importing _ssl: 找不到指定的模块的解决方法 现象解决办法 现象 在命令行中,可以正常导入_ssl模块,如下: Python 3.9.0 (default, Nov 15 2020, 08:30:55) [MSC v.1916 64 bit (AMD64)] :: Anaconda, …