GNU Radio 实数与复数信号分析

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

本文利用GNU Radio来分析复数信号,理解什么是复数信号,并介绍为什么要引入复数信号来分析信号处理过程。

目录

一、实验原理

二、实验内容

1、实数和复数余弦信号

2、Hilbert变换

3、实数信号与复数信号区别对比

三、联系方式


一、实验原理

IQ信号与IQ调制有关,IQ调制也称为正交调制,其调制原理图如下所示:

二、实验内容

1、实数和复数余弦信号

搭建以下GRC程序,运行程序并查看结果。所有模块的数据类型Type都设置为Float,图中所有模块的输入输出都显示为橙色

上图显示,我们得到了一个频率为1K,幅度为1的余弦实信号。

接下来,我们将上述GRC程序中的所有模块的数据类型都修改为Complex后如下图所示,所有模块的输入输出都显示为蓝色

运行程序得到如下结果,其中蓝色线和绿色线的相位相差了90度,一个为I路,一个为Q路。

2、Hilbert变换

以上是用余弦信号作为信号源,接下来我们分析一下用方波的情况以及用方波进行Hilbert变换的情况,按照下图搭建方波的程序。注意Signal Source、Throttle、第一个WX GUI Scope Sink和Hilbert的输入数据类型都是Float。第二个WX GUI Scope Sink的数据类型是Complex。

其中Hilert模块的参数设置如下图所示。

原始的实数Float方波的时域波形如下图所示。

原始实数Float方波经过Hilbert变换之后所得到的波形为下图中的绿线波形所示。

为了查看方波的复数信号,我们搭建如下的GRC程序,通过查看结果与上述Hilbert变换结果对比发现,GRC的复数信号并不能正确显示出一个复数方波信号的Q分量,要想得到真正的Q分量,则需要用Hilbert模块才行。

3、实数信号与复数信号区别对比

接下来我们通过以下的两个余弦信号相乘的例子再看一下实数信号与复数信号的区别。按照下图搭建GRC程序。所有模块的数据类型都设置为Float。第一个余弦信号的频率是10KHz,第二个余弦信号的频率是1KHz,根据三角函数公式可知,二者相乘之后得到的信号的频率为9K和11KHz,我们利用三个WX GUI FFT Sink来分别查看10K余弦实信号,1KHz余弦实信号和9K/11K乘积实信号的频谱。

第一个10KHz信号的频谱如下图的Tab1所示:

第二个1KHz信号的频谱如下图的Tab2所示:

10K和1K信号相乘得到的结果信号的频谱如下图的Tab3所示,这也就验证了10K和1K信号相乘得到的结果信号的频率是9K和11K。

当我们将上述GRC程序的所有模块数据类型都修改为Complex复数时,如下图所示。

此时的10K余弦复数信号频谱图如下:

1K的余弦复数信号频谱图如下:

而10K*1K余弦复数信号的频谱图如下所示,我们发现此时只有11KHz信号频谱,并不像实数信号中的那样还存在一个9KHz信号频谱。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值