GnuRadio-RTL-SDR实现WFM收音机

发布时间 2023-03-25 18:01:58作者: 朱小勇

一.RTL-SDR准备
①、在PDD上购买一个

HF:100K~30Mhz
UV:25MHz~1600MHz
调频广播 : 87~108MHz, WFM(或WBFM)
民用对讲机:136MHz~174MHz;400MHz~470MHz,NFM  
业余超短波电台:50~54MHz,144~148MHz,430~440MHz,NFM
机场塔台通话:118~135.975MHz,AM
收听电视伴音: 56.25 MHz~957.75MHz,FM
长波:300KHz以下
中波广播 :526.5kHz~1606.5kHz ,AM
短波广播:3MHz~30MHz ,AM
短波单边带通信:10MHz以下常用下单边带LSB;10MHz以上常用上单边带USB
②、RTL-SDR架构分析

 此款SDR架构由R820T【射频芯片】+RTL2832U【数字芯片】组成,

数字通过IIC去控制射频的一些参数如增益,信号的连接通过射频线,相关信号处理步骤如下:
射频端:
a、射频天线接收带宽内的所有射频信号;
b、射频信号经过低噪声射频放大器,放大系数数字可控;
c、通过带通滤波器【可抑制镜频的滤波器】
d、对射频信号进行下变频,混频源为VCO,VCO是可编程的【因为我们FM接收时只对某个频点附近的频道感兴趣,所以VCO要根据用户设置的频道进行输出对应的混频源】,由数字通过IIC控制
e、经过下变频后,射频信号已经转为中频信号,通过中频低通滤波器,去除高频杂散
f、为了使中频信号的幅度稳定,通过一个AGC【自动增益控制电路】,动态调整信号幅度,输出3.57MHz的中频模拟信号

数字端:

g、射频端输出的信号为中频模拟信号,3.57MHz

h、中频模拟信号通过抗混叠滤波器

i、通过28.8M的ADC采样【ADC采样是固定的】,将模拟转数字,得到中频数字信号

j、使用NCO与中频数字信号进行正交下变频,NCO本身就有两路输入【频率为3.57MHz】,sin和cos,很方便,得到IQ两路数字信号

 

k、此时的IQ两路数字信号点数非常多,进行重采样【下采样】,插值和抽取【可以控制输出信号采样率,最大2.8MHz】,得到8bits的基带IQ信号

l、将IQ基带信号交织排列【IQIQIQIQ..,也就是复信号】,通过USB输送到PC

IQ数据的存储用IIIIQQQQ更方便;想要实时处理IQ用IQIQIQIQ更方便

二.安装驱动

 需要插上通过USB在电脑上插上SDR;关闭所有杀毒软件;双击打开:
①、打开List All Devices

②、分别选中Bulk-In,Interface(Interface 0)和Bulk-In,Interface(Interface 1)
③、点击安装
④、查看设备管理器是否安装成功

 如图没有感叹号即安装成功
⑤、使用SDR#测试

 
 成功听到声音,成都这边可以使用FM93.5和FM94来测试
三、在GRC中搭建FM

 

1、RTL-SDR Source

安装了驱动,并且插上SDR设备,这里就能自动识别到;

如果报错:Please fix the device permissions, e.g. by installing the udev rules file rtl-sdr.rules

解决:https://www.cnblogs.com/judes/p/17253575.html

这里设置采样率为2M,即数字经过重采样后输出的信号采样率为2M;频率为94M,这里是电台频率;

2、Rational Resampler

进行重采样,因为2M的采样率也需要每秒处理200万个点,这对计算机来说负担很大,这里设置内插倍数为1,抽取倍数为4,所以输出的采样率为2M✖1➗4=500K

3、Low Pass Filter

经过低通滤波器,实现的是一个FIR滤波器,经测试如果没有这个滤波器,噪声比较大

4、WBFM Receive

设置输入的采样率为500K,这与Rational Resampler输出的采样率一致;

内部实现的是一个正交解调:当前采样值乘上上一时刻的采样值的共轭,再通过arctan求取瞬时角度完成解调功能;

这里设置了音频的抽取值为10,故此处输出采样率为500K➗10=50K

5、Rational Resampler

再次重采样,因为是为了匹配最终audio的48K采样率,故需要将50K×48÷50=48K,故内插值为48,抽取值为50;

关于audio的采样率说明:https://www.cnblogs.com/judes/p/17234576.html

6、Audio Sink

采样率为48KHz

7、运行

 

 可以正常听到声音

8、也可以将音频输出到mav文件

格式如下:

 

 参考:https://link.csdn.net/?target=http%3A%2F%2Fsoundfile.sapp.org%2Fdoc%2FWaveFormat%2F