• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 测试测量 > 技术文章 > 自定义高斯白噪声功率和带宽

自定义高斯白噪声功率和带宽

录入:edatop.com    点击:

1、目标

在通信、雷达和计量等领域,在仿真、测试和计量过程中,常常需要使用信号源产生高斯白噪声信号,而且,重要的是,准确定义的噪声功率和带宽。

本文目的是产生用户自定义功率和带宽的高斯白噪声,方法是利用矢量信号发生器,实现噪声发生器的功能。

射频噪声发生器的实现方式通常有两种:

一种是基于二极管元件的噪声源,通常用来做噪声系数测试中所需的噪声源。本方法产生的噪声信号带宽很宽(可达18GHz或50GHz),可计量超噪比ENR;缺点是噪声带宽和功率不可控,且噪声功率较低,另外其匹配(驻波)较差。

另一种是基于矢量信号发生器,在基带实现宽带噪声的带宽和功率设定,调制到射频(可达40GHz)发出。本文所使用的方法,是基于R&S矢量信号发生器实现本目标的。根据所选矢量信号发生器,噪声带宽可以最高达到2GHz。

2、实现方法

2.1. 矢量信号发生器内置噪声选件AWGN

矢量信号发生器通常具有内置附加高斯白噪声功能,其输出方式可以选择信号叠加方式或单纯噪声输出方式,设置方法简单。

优点是设置简单快捷,噪声功率准确,与设置值一致;缺点是产生的噪声带宽不准确,远大于带宽设置值。

2.2. 脉冲序列编辑软件R&S SMW-K300

R&S SMW-K300是一个矢量信号模拟软件,主要功能是模拟各种雷达信号以及非标准自定义矢量调制信号,其中一项功能是自定义白噪声。

能定义功率和带宽的噪声信号,功率偏差约1~2dB,带宽是-6dB带宽定义点。

如果用户仅用到SMW-K300的噪声模拟功能,成本较高。

2.3. 免费ARB信号编辑软件R&S ARBtoolbox+

R&S ARBtoolbox+是一款适用于R&S矢量信号源的免费自定义ARB文件编辑软件,功能之一是产生自定义白噪声、粉红噪声和褐色噪声。

能产生自定义功率和带宽的噪声信号;功率设置值准确,带宽是-6dB带宽定义点。

使用方便,但是带宽受限,只有50MHz。

2.4. Matlab自定义噪声信号

Matlab是信号分析的常用工具软件,使用其噪声(随机信号)的函数以及滤波器函数,非常简单地产生自定义噪声信号。R&S官网上下载matlab程序包(rohde-schwarz.com/applications/r-s-matlab-toolkit-for-signal-generators-application-note_56280-15774.html),通过调用程序包中的m文件函数,将自定义噪声信号转换为*.wv文件,或直接上传仪器,从而产生自定义信号。

本方法能够按照用户的意愿和需求,产生标准的噪声信号,灵活方便,而且,从带宽和功率平坦度角度,本方法产生方式最优。

只需要用户有Matlab,无需精通Matlab编程。

3、实现步骤和表现

3.1. 矢量信号发生器内置噪声选件AWGN

自定义高斯白噪声功率和带宽

自定义高斯白噪声功率和带宽

自定义高斯白噪声功率和带宽

3.2. R&S SMW-K300

自定义高斯白噪声功率和带宽

自定义高斯白噪声功率和带宽

3.3. R&S ARBtoolbox+

自定义高斯白噪声功率和带宽

自定义高斯白噪声功率和带宽

自定义高斯白噪声功率和带宽

3.4. Matlab自定义噪声信号

matlab程序包(https://www.rohde-schwarz.com/applications/r-s-matlab-toolkit-for-signal-generators-application-note_56280-15774.html)中,

调取函数文件rs_generate_wave.m及其它m文件:

自定义高斯白噪声功率和带宽

编写噪声发生器函数Function NoiseGen.m代码如下:

________________________________________

function  [Sta]=NoiseGen(BW,fname,InstrCon,addr)
%BW:Bandwidth of noise in Hz;
%fname:ARB file name, string without extention;
%InstrCon: instrument connection or not, 1 - connected ; 0 - not connected
%addr: IP address of instrument
%% General setting
BW_CLK_Ratio=0.8;       %Ratio of bandwidth/clock
CLK = BW/BW_CLK_Ratio;  %clock - sample rate
N=2^20;                 % number of points
%% Generate white noise and filtered
N_sub =wgn(N,1,0,50,1,'complex');
N_White=[N_sub;N_sub;flip(N_sub)];
lpFilt = designfilt('lowpassfir','PassbandFrequency',BW_CLK_Ratio, ...
    'StopbandFrequency',BW_CLK_Ratio+0.01,'PassbandRipple',0.5, ...
    'StopbandAttenuation',70,'DesignMethod','equiripple');
IQdata = filter(lpFilt,N_White);
%% IQ data struct for rs_gernerate_wave.m
IQ.I_data=real(IQdata);
IQ.Q_data=imag(IQdata);
IQ.clock=CLK;
IQ.filename   =strcat(fname,'.wv');
%% Save data and connect signal generator
if(InstrCon==1)
    [status, InstrObj] = rs_connect( 'visa', 'ni', addr );
    if(status==1)
        rs_generate_wave(InstrObj,IQ,1,1);
    else
        rs_generate_wave(0,IQ,0,1);
    end
   
else
    rs_generate_wave(0,IQ,0,1);
end
Sta=1;
return;

________________________________________

运行用户程序:

[Sta]=NoiseGen(50e6,'n1',1,'TCPIP::192.168.0.10::INSTR');
 %噪声功率满量程,由信号源输出电平设置决定;
%50MHz带宽,arb文件名为n1.wv
%IP地址192.168.0.10

自定义高斯白噪声功率和带宽

点击浏览:矢量网络分析仪、频谱仪、示波器,使用操作培训教程

上一篇:"DOCSIS 3.1 的测试挑战及是德科技发射接收测试方案"技术讲座问答精选
下一篇:一种智能终端GPS天线测试方法

微波射频测量操作培训课程详情>>
射频和天线工程师培训课程详情>>

  网站地图