GNURADIO中USRP组件的介绍

 

GNURADIO中USRP组件的介绍

1,搜索组件USRP,可以看到SOURCE 和SINK组件。

 

  1. 我们放置source和sink,之后数据段口链接起来。

 

  1. 双击USRP_SOURCE看设置:

 

这里我们看到有很多参数可以设置,这些参数都是传递给UHD的。一个一个看:

OUTPUT TYPE : 输出类型,COMPLEX 是复数的意思,实际包含实部和虚部。

 

 

我们一般选的是COMPLEX FLAOT32。

 STREAM CHANNELS不填写默认是通道A等效于[1],如果要用两通道就要写入[1,2].我试验过只写[2],就不能正常运行。

DEVICE ADDRESS:如果接了多个USRP可以在这里写进去参数,指定某一台运行。USB的设备是指定SERIAL_NO=171772,这样类似;如果是用光口或者以太网链接的网络版的USRP可以指定IP_ADDRESS=192.168.1.122.

CLOCK SOURCE:这是设置时钟的,其中EXTERNAL 是设置为外接10M时钟输入,O/B GPSDO表示接内置的GPSDO模块。

NUM BOARDS和NUMBER CHANNELS,其中NUM BOARDS 我们这边始终设置为1,B210用双路的话NUM CHANNELS就可以选择2,这样两路接收。

因为这些参数都是传递给UHD,所以可以可以关注一下NUM BOARDS的含义。

SAMPLE RATES是一个很重要指标,就是基带的采样率,这里设置了一个参数sample_rate,是个全局变量,可以在和别的模块一起共享定义在外部全局的变量。

这个标签里面还有其他的选项,是别的USRP外设支持的性能,咱们B210不支持,所以可以看看,琢磨下什么意思,以后需要再说。

ADVANCED这个标签如下我们实际没有用过。

 

------------

 

RF OPTIONS标签这里内容比较重要,CENTER FREQ是射频中心频率,AGC是自动增益调节,根据信号强弱自动调整信号的放大倍数。

GAIN TYPE 可以选绝对数值ABSOLUTE,此时GAIN VALUE就是实际的增益倍数(应该是0-90)。

GAIN TYPE 可以选绝对数值NOMALIZED,此时GAIN VALUE就是取值范围[0,1]。其中0最小,1最大。

ANTENNA:天线可以是RX1,RX2,或者TX/RX(这是一个复用的口,对应一个SMA接口,可以做发射也可以做接收)。

BANDWIDTH是带通滤波器的带宽,默认为0,实际就是最大。其他非0数值就是实际带宽设置。这个数值一般不用。

 

 

 

FE CORRECTIONS 标签 这个实际没有用到,但是在UHD里面有对应处理。暂时可以先忽略。

 

DOCUMENT 标签栏如下没啥说的,可以学习学习。

 

这里复制出来这些内容,不多但是需要读明白:

Wiki Page for this Block: https://wiki.gnuradio.org/index.php/UHD:_USRP_Source

The UHD USRP Source Block:

Device Address:

The device address is a delimited string used to locate UHD devices on your system.     If left blank, the first UHD device found will be used.     Use the device address to specify a specific device or list of devices.

USRP1 Example: serial=12345678

USRP2 Example: addr=192.168.10.2

USRP2 Example: addr0=192.168.10.2, addr1=192.168.10.3

Out Type:

This parameter controls the data type of the stream in gnuradio.

Wire Format:

This parameter controls the form of the data over the bus/network.     Complex bytes may be used to trade off precision for bandwidth.     Not all formats are supported on all devices.

Stream Args:

Optional arguments to be passed in the UHD streamer object.     Streamer args is a list of key/value pairs; usage is determined by the implementation.

Ex: the scalar key affects the scaling between 16 and 8 bit integers in sc8 wire format.

Num Motherboards:

Selects the number of USRP motherboards in this device configuration.

Reference Source:

Where the motherboard should sync its time and clock references.

If source and sink blocks reference the same device,

it is only necessary to set the reference source on one of the blocks.

Subdevice specification:

Each motherboard should have its own subdevice specification     and all subdevice specifications should be the same length.     Select the subdevice or subdevices for each channel using a markup string.     The markup string consists of a list of dboard_slot:subdev_name pairs (one pair per channel).     If left blank, the UHD will try to select the first subdevice on your system.     See the application notes for further details.

Single channel example: :AB

Dual channel example: :A :B

Num Channels:

Selects the total number of channels in this multi-USRP configuration.

Ex: 4 motherboards with 2 channels per board = 8 channels total

Sample rate:

The sample rate is the number of samples per second input by this  block.     The UHD device driver will try its best to match the requested sample rate.     If the requested rate is not possible, the UHD block will print an error at runtime.

Center frequency:

The center frequency is the overall frequency of the RF chain.     For greater control of how the UHD tunes elements in the RF chain,     pass a tune_request object rather than a simple target frequency.

Tuning with an LO offset example: uhd.tune_request(freq, lo_off)

Tuning without DSP: uhd.tune_request(target_freq, dsp_freq=0,     dsp_freq_policy=uhd.tune_request.POLICY_MANUAL)

Antenna:

For subdevices with only one antenna, this may be left blank.     Otherwise, the user should specify one of the possible antenna choices.     See the daughterboard application notes for the possible antenna choices.

Bandwidth:

To use the default bandwidth filter setting, this should be zero.     Only certain subdevices have configurable bandwidth filters.     See the daughterboard application notes for possible configurations.

Length tag key (Sink only):

When a nonempty string is given, the USRP sink will look for length tags     to determine transmit burst lengths.

See the UHD manual for more detailed documentation:

http://uhd.ettus.com

4,我们看USRP_SINK也有同样的标签和内容,含义也都一样,只是要注意SOURE是接收,SINK的发射。(接收机收到数据是后续处理的源泉,发送模块发送了之前模块生成的数据,之后再无数据,实际就是吸收sink了)。

这里注意source和sink的RF CENTER FREQUENCE可以设置不一样,因为收发芯片AD9361有独立的射频频率生成器。但是两者额SAMPLE RATE必须一样,因为他们都是通过一套通讯接口传输基带信号。这些我在介绍AD9361芯片方面会做介绍。

  • 5
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: GNU Radio是一个开源的软件无线电平台,可以用于设计和实现各种无线通信系统。USRP(Universal Software Radio Peripheral)则是GNU Radio的硬件平台,是一系列开源的软件定义无线电设备。 对于GNu Radio和USRP的入门教程,以下是一些建议。 首先,你可以了解GNU Radio的基本概念和工作原理。可以通过阅读官方文档、教程、书籍等来获取这些基础知识。 其次,你可以学习如何使用GNU Radio进行无线通信系统的设计和仿真。可以通过参考一些案例研究和示例代码,了解如何使用GNU Radio进行信号处理、调制解调、多址技术等。 然后,你可以开始学习如何使用USRP设备。首先了解USRP的硬件结构和特性,然后学习如何配置和连接USRP设备。可以通过官方文档和教程来学习如何使用USRP设备进行无线信号的接收和发射。 最后,你可以尝试使用GNU Radio和USRP来实现一些简单的无线通信系统。可以尝试使用GNu Radio和USRP进行无线数据传输、频谱分析、调频广播接收等实验。 总的来说,学习GNU Radio和USRP需要一定的无线通信和信号处理的基础知识,同时也需要一些实践经验。通过阅读官方文档、教程等,同时结合实际操作和实验,你将能够逐渐掌握GNU Radio和USRP的使用。 ### 回答2: GNURadioUSRP是软件定义无线电开发的两个重要工具。GNURadio是一个开源的软件开发工具包,用于搭建软件定义无线电系统。而USRP(Universal Software Radio Peripheral)是一款通用的软件无线电外设,可以用于接收和发送无线电信号。 要学习GNURadioUSRP,首先需要了解软件定义无线电的基本原理和概念。可以通过阅读有关软件定义无线电的入门资料,了解它是如何工作的,以及它的应用领域和优势。 其次,可以通过学习GNURadio的使用方法来入门。可以查阅GNURadio的官方文档或教程,学习如何安装和配置GNURadio,以及如何使用它来搭建无线电系统。可以尝试一些基本的示例项目,如接收和解调FM广播信号。 接下来,可以学习USRP的使用方法。可以查阅USRP的官方文档或教程,学习如何连接和配置USRP设备。可以尝试使用USRP接收和发送无线电信号,如接收和解码数字电视信号。 在学习过程,可以逐步深入了解GNURadioUSRP的高级功能和应用。可以学习如何使用GNURadioUSRP进行信号处理和调试,如频谱分析和信号录制。可以学习如何使用GNURadioUSRP进行通信系统的仿真和测试。 另外,可以加入相关的软件定义无线电社区或论坛,与其他开发者交流和分享经验。这样可以获取更多关于GNURadioUSRP的学习资源和实践经验。 总结来说,学习GNURadioUSRP需要一定的理论基础和实践经验。通过学习官方文档和教程,参与社区交流,不断实践和探索,可以逐步掌握GNURadioUSRP的使用方法和技巧,从而深入了解和应用软件定义无线电技术。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值