应用笔记 UHD提供的示例 Ettus Research

9 篇文章 1 订阅

简介

本文将提供UHD代码示例UHD 是由Ettus Research研发的一款驱动器,能和所有的USRP™ 软件定义无线电兼容, UHD可在多个操作系统中(包括Linux, Windows and MacOS)进行开发。由驱动器提供的抽象概念,在USRP产品之间有很大的可移植性。UHD提供应用程序界面,可访问不同的USRP功能,包括同步、样品流和装置。目前,UHD用于不同的开发环境中,包括软件无线电、虚拟仪器、模型以及其他定制结构。

示例程序是由UHD提供,以便进行一个或者多个USRP基础功能测试。想更好地了解不同的UHD应用程序特性的用户,我们为您提供了示例程序源代码。

定位UHD示例

传统Linux装置中,UHD路径是/usr/local/share/uhd/.Windows 安装一般将UHD安装在C:/Program Files(x86)/UHD,示例参见:

(base UHD directory)/share/uhd/examples

在Linux中修改采样程序

任意采样程序都可以修改和重新编辑。这种方式对于了解如何用UHD 应用程序进行互动是种很简单的方式。改变了UHD 示例应用程序的源码后,重新编纂用:

Make

为了将修改过的应用程序复制到UHD 安装位置上,请输入

sudo make install

如果您按照Windows多余创建指示可在此查找:

http://files.ettus.com/uhd_docs/manual/html/build.html#build-instructions-windows

 

命令行引数

UHD提供的所有的示例应用程序使用一个或者多个命令行引数安装程序或者进行测试。

有一点可以确定那些可以用于应用程序,输入”——帮助”作为参数。例如,输入:

./tx_waveforms –help

会产生以下输出:

UHD  TX波形允许选项:

--help帮助信息

--args arg 单个UHD 设备地址args

--spb arg (=0) 每缓冲区的样品, 缺省值为 0

-rate参数输出样本

--freq arg 射频中心频率 in Hz

--ampl arg (=0.300000012) 波形的振幅[0 to 0.7]

--gain arg 获得射频链

--ant arg 子板天线选择

--subdev arg 子板子装置规格

--bw arg 子板IF 过滤带宽in Hz

--wave-type arg (=CONST) 波形类型(CONST, SQUARE, RAMP, SINE)

--wave-freq arg (=0) 波形频率 in Hz

-ref arg (=internal) 波形类型(内部, 外部, 多输入多输出)

一般来说,提供的大部分参数是可选择的并且有指定的默认值。在有的情况下,必须提供值。在这种情况下,程序显示错误,检查确保所有要求的区域都有相关联的命令行参数。

在一个示例中,用户想用一个400 MHz的射频中心频率,传输100 kHz的正弦波音调,基带振幅为0.5, TX / RX天线。命令行将是:

 

./tx_waveforms --wave-freq 100e3 --wave-type SINE --freq 400e6--ampl 0.5 --ant TX/RX


 

 

 

一般描述

类型

示例

解释

速率

用于为传输接收机电缆设置主机采样率

4e6

多相串行-并行-串行存贮器

样本数量

处理/传输/接收样本的数量

100e3

 

秒数

时间运行测试,或推迟流的开始

 

5

 

参数

地址参数esp. "-args addr=192.168.10.2")

地址为=192.168.10.2

 

频率

中心频率

 

400e6

 

天线

天线选择(例如 "TX/RX", "RX2")

 

TX/RX

 

振幅

基带幅度(最小= 0.0,最大=1.0)

 

0.5

 

宽带

用赫兹表示子板宽带设置

 

60e6

 

参考

参考时钟选择

 

外部

 

增益

子板rx /tx增益范围依据分贝

 

25

 

子装置

子装置规格

 

A:AB

 

表1——常见的命令行参数

 

UHD提供示例应用

 

通过提供UHD帮助新用户调查整个示例应用程序。下表描述了每个应用及其传输、接收的功能,下表描述了每个应用程序的功能,以及是否能和多个USRP设备共用。






 

示例文档名

多个USRP支持

Tx/Rx

描述

标准速率

Tx/Rx

用于测试f PC + USRP.整个性能,将发送帧,溢出,框架等报告数量

rx时间样本

Rx

解释如何使用UHD时间,在特定的时间进行采样

Tx波形

Tx

传输多种信号类型(正弦波、面积、斜波、常数)

潜伏期试验

Tx/Rx

尝试接收样本,然后传输相同的样本,报告下溢、错误和确认)Rtt参数。当多数的数据包得到确认后,Rtt参数很好的反映了接口延迟。

测试pps输入

n/a

用1 PPS 信号测试USRP(s)报告测试通过与否

测试-d板-

n/a

子板扫频及增益范围,确保调至所有建议频率和增益

测试-定时-命令

n/a

多个USRPs之间为锁相环对齐测试定时命令功能

Tx-突发传送

Tx

解释如何使用多数据指定时间传输样本

运输锤

n/a

Rx/tx测试不同的错误的传输层

Rx-多样本

Rx

陈述如何从多个通道上接收对齐数据

Rx—样本入文档

Rx

针对特定的USRP(s) 创建接收流 将所有的样本在数据末端归档

Tx-来自文档的样本

Tx

将传输流流入到USRP(s) 上,在连续模式下的特定文档传输所有的数据

Tx-定时样本

Tx

创建传输流到USRP(s) 上,发送特定数量的样本,而不是传输流末端命令W / ack确认

Rx-

Rx

从一个USRP数据流上接收数据,转入到UDP套接口上

 

表2——UHD示例应用总结

 

其他有帮助的例子——软件无线电

软件无线电,是通过UHD使用的通用框架,同时也为功能性测试提供两个有用的示例程序。安装软件无线电时,执行口令为:uhd_fft.py和uhd_siggen_gui.py。uhd_fft.py带一个FFT, USRP设备和子板的单一接收瀑布图和范围展示图。很多参数可用于配置接收器采样率、频率等。uhd_siggen_gui.py这一应用程序允许用户在特定频率、采样率和增益设置中生成各种输出类型。本程序可通过简单编辑执行:

 

uhd_fft.py

-OR-

uhd_siggen_gui.py

 

配置接收器采样率、频率等。

·         进入命令行接口,更多关于如何应用这个对USRP 设备和子板进行功能性测试的设备和子板将在本文后面部分有所呈现。

USRP功能测试

UHD 和无线电采样应用设备可用于一个或者多个USRP无线电的功能性测试。对于想更好的理解USRP 功能的新用户来说这个很有用。

接收测试-uhd_fft.py

之前在本文中提及的uhd_fft.py用来测试USRP无线电接收功能很有帮助。可用的测试方法框图见表1。在本测试中,子板频率范围内的信号资源操作和正在接受测试的USRP

设备用来产生测试信号。信号资源可以是一个射频信号生成器或者另一个USRP无线电。必须注意保证,不能超过特定子板最大输入规格。所有子板除BasicRX 和LFRX. 之外,级别都是-10dBm 。BasicRX 和LFRX 的输入一定不能超过Vpk

-pk (10dBm). LFRX 提供的单位增益的直流耦合。因此,LFRX输入的电压电平不应该超过3.3V

 

表1.USRP接收测试配置

 

连接适当水平的信号资源后,实时控制可用于设置应用程序的频率、增益和 采样率。

使用 FFT(默认)的观点之后,X轴代表频率,Y轴代表振幅。Y轴代表的是带“计数”的振幅。并且一般情况下,其值和特定的绝对的功率输入无关 。显示中的振幅用于近似比较。一个给定的输入振幅级别会根据频率及每个单元之间相差几分贝。并且接收器子板在模拟链路中提供不同级别的振幅。将对 FFT的振幅结果产生影响。



 

接受测试——-uhd_fft.py-常见错误

在使用此程序过程中,新用户常会犯几个错误。以下几点可以验证:

a.确保输入水平不超过子板最大输入规格

b.核实合适的子装置规格、提供命令行的天线选择。

c.确保所选频率在特定的子板范围内并且合理设置信号生成器。

传输测试——tx波形

“tx_波形”示例应用程序提供一种简单的方式对USRP装置和子板的传输功能操作进行测试。 试验装置框图见表2.可用频谱分析仪进行简单测试。也可以使用另外一个可通过uhd_fft.py.进行访问的 USRP设备。再次重申,如果另外一个USRP 正在使用,强调接收USRP设备的最大输入规格很重要。此设置中应用到由Ettus ResearchLPBK-KIT提供的滞缓链接,如果此信号不滞缓,可能损坏接收中的USRP硬件。

 

表2. 测试USRP 传输能力的装置

 

一旦链接到信号接收频谱分析器,就可以执行tx_波形。一个tx_波形的例子:

./tx_waveforms-freq 1200e6--ampl 0.5--wave-type SINE--wave-freq250e3

--rate 5e6--antTX/RX

该指令将启动tx_波形,射频中心频率为1.2 GHz,基带信号为250 kHz,基带振幅规范到DAC峰值振幅。用0.5的振幅是为了确保正交调制器不被迫压缩。

允许测试几个有用的功能。

  • 单边带抑制和图像排斥和输出功率等参数可以测量。还提供了一种定性方法来判定发挥作用的USRP。

  • 软件无线电还提供了hd_siggen_gui.py, w,功能和图形接口类似。

  • tx波形——一般错误

新用户用tx波形进行试验的时候常出现的一般错误如下:

用另外一个 USRP设备接收波形时如果没有做适当的护理,子板接收器会损坏。

振幅或者增益值设置的过高会导致高互调失真、谐波失真和其他伪迹

振幅参数设置高于1.0,导致无效或者引起数字域内的 削波或者舍入。

结论

本文对软件无线电和UHD提供的示例应用程序做了基本的介绍,这些应用程序可用于实验或者在主机, USRP 设备及子板上的基本信号处理因素的试验和学习。还可以为功能性测试提供一种机制确保 USRP设备准确操作 。由于这些错误很普遍,仍有必要做最后警示:千万不能超过子板允许的最大输入值!

如您有任何疑问或者相对本应用笔记做出反馈,请发邮件至:support@ettus.com。

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值