一起玩转GNU Radio:gr-qtgui

本文内容、开发板及配件仅限用于学校或科研院所开展科研实验!

本文介绍GNU Radio源码的gr-qtgui相关实例及模块。

目录

一、gui_sink

1、Signal Source模块

2、Noise Source模块

3、QT GUI Sink模块

4、Add模块

二、Number_Sink

1、Signal Source模块

2、QT GUI Number Sink模块

三、联系方式


一、gui_sink

GRC文件为《gnuradio-3.9.1.0/gr-qtgui/examples/gui_sink.grc》。该流图的功能是实现信号时域、频域、瀑布图和星座图的仿真展示。

1、Signal Source模块

Signal Source - GNU Radioicon-default.png?t=N7T8https://wiki.gnuradio.org/index.php/Signal_Source

该模块是信号源模块,用于生成常数、正弦波、余弦波、方波、三角波和锯齿波的信号,支持complex、float、int、short和byte类型输出类型。

模块参数解释如下:

Sample Rate,采样率。

Waveform,可选项包括[Constant常数,Sine正弦波,Cosine余弦波,Square方波,Triangle三角波,Saw Tooth锯齿波]。

对于带有变量的选项,应使用以下取值:常数=100,正弦=101,余弦=102,方波=103,三角形=104,锯齿=105。

Frequency,信号的频率。

Amplitude:输出幅度(默认值为1)。

Offset:从零开始偏移(默认值为0)。

Initial Phase:默认值为0(弧度)。

2、Noise Source模块

Noise Source - GNU Radioicon-default.png?t=N7T8https://wiki.gnuradio.org/index.php/Noise_Source

该模块是噪声源模块,是通过使用高斯或均匀分布来生成“噪声”信号,支持complex、float、int或short类型的数据输出。

模块参数解释如下:

Noise Type,随机分布类型,支持高斯分布、均匀分布、拉普拉斯分布和冲激分布。

Amplitude,噪声信号振幅,表示一维噪声的标准差,如果噪声源是复数噪声源,则该参数需分配为实部和虚部。

Seed,随机噪声生成器的种子,对于均匀分布和高斯分布,该种子取值应该是一个负数。

3、QT GUI Sink模块

QT GUI Sink - GNU Radioicon-default.png?t=N7T8https://wiki.gnuradio.org/index.php/QT_GUI_Sink

该模块是QT GUI Frequency Sink、QT GUI Waterfall Sink、QT GUI Time Sink和QT GUI Constellation Sink模块的组合,即可用该模块实现信号时域、频域、瀑布图和星座图的可视化。模块参数解释如下。

Type,模块输入数据类型,支持complex和float类型。

Name,可视化界面的标题。

FFT Size,FFT长度。

Window Type,窗口类型,支持Blackman-harris、Hamming、Hann、Blackman、Rectangular、Kaiser类型。

Center Frequency (Hz),中心频率值。

Bandwidth (Hz),带宽,取值为采样率,即流图的采样率会影响Sink模块可视化界面的宽度。

Update Rate,数据更新速率。

Show RF Freq,可视化界面上是否勾选显示射频频率。

Plot Frequency、Plot Waterfall、Plot Time、Plot Const,是否显示频域、瀑布图、时域和常数。

GUI Hint,模块坐标定位及大小参数设置。

Show Msg Ports,是否显示消息端口选项。 

4、Add模块

Add - GNU Radioicon-default.png?t=N7T8https://wiki.gnuradio.org/index.php/Add

该模块实现逻辑加运算,输出值为输入值的和,即output[n] = sum( x_0[n], x_1[n], ..., x_m[n])

模块参数解释如下:

IO type,输入输出数据类型,支持complex、float、int和short。

Num Inputs,数据数据源个数。

Vec Length,向量长度,一般取值为1。

二、Number_Sink

GRC文件为《gnuradio-3.9.1.0/gr-qtgui/examples/Number_Sink.grc》。该流图的功能是实现信号数值的可视化展示。

1、Signal Source模块

Signal Source - GNU Radioicon-default.png?t=N7T8https://wiki.gnuradio.org/index.php/Signal_Source

该模块是信号源模块,用于生成常数、正弦波、余弦波、方波、三角波和锯齿波的信号,支持complex、float、int、short和byte类型输出类型。

模块参数解释如下:

Sample Rate,采样率。

Waveform,可选项包括[Constant常数,Sine正弦波,Cosine余弦波,Square方波,Triangle三角波,Saw Tooth锯齿波]。

对于带有变量的选项,应使用以下取值:常数=100,正弦=101,余弦=102,方波=103,三角形=104,锯齿=105。

Frequency,信号的频率。

Amplitude:输出幅度(默认值为1)。

Offset:从零开始偏移(默认值为0)。

Initial Phase:默认值为0(弧度)。

2、QT GUI Number Sink模块

QT GUI Number Sink - GNU Radioicon-default.png?t=N7T8https://wiki.gnuradio.org/index.php/QT_GUI_Number_Sink

该模块实现在简单的文本框GUI中以数字形式或者可选的条形图显示数据流的功能。该模块显示的数值可以是输入数据的平均值。在这种情况下,所有接收到的数值均应为平均值。如果不是平均值,则基于该模块的更新时间对输入数据流中的数值进行采样。由于目前在具体实现中的缺陷,该模块无法接收整数型输入数据。如果输入数据为整数型,则该模块将其视为浮点型。该模块支持char,short和float,并通过将构造函数的itemsize设置为这三个值(分别为sizeof_char,sizeof_short和sizeof_float)之一来正确转换它们,并将整数输入数据流通过Int To Float模块实现数据转换。 

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值