基于Adalm-Pluto SDR的FM收音机_硬禾学堂FunPack第五期
硬禾学堂FunPack第五期任务一。拓展Adalm – Pluto 的频段,替换天线,完成常见的FM收音机的功能。要求 1、实现从87 ~ 108M频段的调频广播的解调。2、设计上位机界面,通过上位机可以实现调频功能。
标签
网络与通信
小熊哞哞哞
更新2021-02-20
2814

任务内容

      FM播放器

任务描述 

      拓展Adalm – Pluto 的频段,替换天线,完成常见的FM收音机的功能

题目要求

      1、实现从87 ~ 108M频段的调频广播的解调。

      2、设计上位机界面,通过上位机可以实现调频功能。

功能实现

  • 安装好Pluto SDR驱动后,使用Putty连接串口,修改配置使其支持70MHz – 6 GHz频段,覆盖调频电台的频段。
  • 购买常用SMA-J接口的FM拉杆天线,替换套件中的天线。
  • 调频广播的解调通过Simulink来实现。Simulink是Matlab提供的一个软件包,用于对动态系统进行建模与仿真。对于通信系统的模拟与仿真,Simulink也是一个强大好用的工具,包含了通信系统仿真常用的模块库。
  • 在Simulink中建立基于Pluto SDR的仿真, 需要提前添加Communications Toolbox Support Package for ADALM-PLUTO Radio这个工具包。FM收音机结构模型如下图所示,包含主要三个模块:Adalm-Pluto Receiver信号源模块,FM广播解调模块,和扬声器模块。信号源模块通过外部输入选择中心频率;FM解调模块实现对SDR输出信号的解调;最后通过扬声器模块将解调后的声音信号通过电脑音频输出播放出来。

FsXiDTs_sihU0Xw6aTJ9htS260Hj

  • Matlab包含的App Designer工具可以为上述Simulink模型设计一个简单的上位机。 App Designer是Matlab中一个使用非常简便但功能强大的工具,可以用来创建用户图形界面。
  • 首先,用App Designer工具的设计器添加图形界面的组件,设置组件对象属性,定义回调函数。上位机界面设计如下图所示:包含一个Open按钮,用于打开FM收音机的Simulink模型并运行模型;StopSim按钮用于结束模拟;Close按钮用于关闭App。 界面中还包含一个85 – 110 的滑块和一个数值输入窗口。中心频率的输入可以通过这两种方式实现,从而实现FM收音机的选台功能。

Fn4LzhZDM3vXlPRB3ebvuuYO6D7f

其次,在App Designer的代码视图如下图所示,其中灰色的部分是系统自动生成的框架。我们需要做的只是在组件对象相应的函数空白处写入函数内容即可。例如,在下图中的function PickChannel(app,event)是滑块移动后这一动作的回调函数。19行的命令是停止Simulink模型的运行,目前在模型运行过程中无法改变中心频率的赋值。20行是将滑块的值赋予变量value。21行将变量value的值赋予频道显示组件。22行将value的值先转变为字符串格式,后赋予模型中对应的中心频率模块。23行和24行是更新Simulink模型并重新启动。这样便实现了使用滑块移动来选频的操作。

Fhy2_ZDbz4HG3FQj03xvp78YNcIL

下图中的functionOpenButtonPushed(app, event)是Open按钮按下的函数。29行是打开对应的Simulink模型。30,31和32行中,initalfreq变量是模型中的中心频率,将其值取出后赋予滑块和频道显示。33行是开始运行模型。这样就实现了打开收音机的操作。

FtGkgRip-fdS6pO09NmRUWVtccSr

类似的,我们可以很方便地写出剩余的界面组件所对应的动作函数,从而实现收音机的基本功能。在目前app版本中,由于每次更改中心频率后需要先停止模拟,给中心频率赋值,之后再启动模拟。因此,在选台操作时会有几秒的延迟。更多的关于App Designer的内容有很多开放的课程资源平台可供进一步学习。

心得体会

       本人从事硬件相关工作,是射频电路爱好者,从未接触过SDR、Matlab 和Simulink工具。这次的活动打开了新世界的大门,使我了解了Pluto SDR这个强大的射频实验平台,也从头学习了Matlab、Simulink、以及App Designer相关的知识。我除了FM收音机这个任务之外,也利用App Designer做了一个简易的频谱分析仪,受益匪浅。相信在未来,Pluto和matlab、simulink的组合能给我射频课程的学习实验带来更多的乐趣。

      希望未来的活动能更多介绍一些这些“非主流”的板卡,拓展大家的认识。也希望能安排一些通讯相关的板卡,相信会非常有趣。

附件下载
SdrFM.slx
基于Pluto SDR的FM收音机Simulink模型
SdrFM_app.mlapp
Matlab App Designer设计的FM收音机上位机
团队介绍
评论
0 / 100
查看更多
目录
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2023 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号