本文内容、开发板及配件仅限用于学校或科研院所开展科研实验!
本文介绍LimeSDR gr-limesdr自带的example中的FM宽带广播发射与接收的GRC程序。
调频、宽带调频WBFM和窄带调频NBFM的相关基础知识网上有很多,可以参见下边的链接:
什么是FM(调频)? - 新闻-FMUSER FM / TV广播一站式供应商
本文基于gr-limesdr自带的example中WBFM程序,实现了纯仿真程序(WBFM_tx_rx_sim.grc)和用limesdr发射和接收的程序(FM_tx_rx.grc)。
一、纯仿真WBFM发射与接收
框图中下半部分为发射部分,上半部分为接收部分为接收部分。原始的声音信号通过WBFM Transmit模块转换为WBFM信号,再通过重采样器(Rational Resampler)调整采样率。信号经过信道模型后到接收部分。通过低通滤波器滤除一部分噪声以后,再通过重采样器(Rational Resampler)调整采样率,与第一个重采样器相比,可以看到它们的插值数(Interpolation)和抽值数(Decimation)正好相反。最后再经过WBFM Receive将WBFM信号还原为音频信号,经过放大器(Multiply Const)后由Audio Sink处理播放出声音。
这里解释一下程序中的采样率相关的变化。
发射端:从wav File Source模块输出的信号是piano.wav文件的采样率(这里是48KHz),经过WBFM Transmit模块作用(Quadrature Rate 480kHz)之后输出信号的采样率变为了480kHz,经过Rational Resampler重采样模块作用(Interpolation内插乘以200,Decimation抽取除以48)后变成480k*200/48=2MHz,经过Channel Model(这里噪声功率为0,可以认为是AWGN信道Y=H*x)。经过这个信道采样率不变。
接收端:经过低通滤波器Low Pass Filter之后采样率不变还是2MHz,经过接收端的Rational Resampler重采样模块(通过对比发现,这里的重采样模块中的内插和抽取系数与发射端的正好相反,Interpolation内插乘以48,Decimation抽取除以200)后变成2MHz*48/200=480KHz,然后经过WBFM Receive模块作用(Audio Decimation抽取除以10)后变成48KHz,最后信号由Audio Sink模块经过扬声器发出声音。
二、LimeSDR WBFM发射与接收
基于仿真实验的的框图,我们对其进行修改,将模拟信道改成Limesdr模块,搭建FM宽带广播的GNU Radio Companion(GRC)框图程序(WBFM_tx_rx.grc)。我们可以基于原来的框图(WBFM_tx_rx_sim.grc),将原来的信道模型删除,分别修改为Limesdr的Source和Sink模块。