m基于MATLAB的FM调制收音机仿真实现

简介: m基于MATLAB的FM调制收音机仿真实现

1.算法概述
那么FM调制端的基本原理图如下所示:

1.png

FM解调

FM解调的基本原理框图为:

2.png

   在不考虑频偏的情况下,FM解调运算就相当于FM调制的逆运算,任务的第一步比较简单,所以这里关于FM解调的原理就不在叙述。

   对该系统进行系统仿真,在仿真之前,要将系统做进一步的模块化从而有利于仿真分析。

2.仿真效果预览
matlab2013b

3.jpeg

上图是系统的发送信号,第二章图是通过FM调制以后的信号。系统发送出去的就是这个信号。

4.jpeg

这是系统接收到的信号,我们可以看到,接收到的信号在初始有一个抖动的过程,这个就是PLL的锁定过程,通过这个锁定过程,系统就可以得到正确的解调信号,上图第三章图是PLL的相位输出,通过一开始的抖动,相位误差就锁定在0附近,这说明相位已经锁定了。此后的解调信号都是正确的。

以上是一个正弦信号做为发送信号,下面我们用一个方波来作为发送信号检测系统。

5.jpeg
6.jpeg

当发送发波的时候也可以锁定,但是在波形的边沿会产生误差信号。

7.jpeg

3.核心MATLAB代码预览

Fs = 40000;                        % 采样频率
Ts = 1/Fs;                         % 采样周期
 
 
%注意,这里不同的频域,不同改变的太夸张,否则系统也无法正常工作。46000~54000
 
%5000~15000,25000~35000,45000~55000,65000~75000,85000~95000,105000~115000..
%.......................
k=input('请输入你要的电台序号:0,1,2,3,4,5,6,7,8,9\n\n\n');
 
 
fc1= k*20000+8000+4000*rand(1)                     %发送载波频率
 
fc2 =k*20000+10000                                 %接收载波频率
 
 
t = [0:Ts:(N*Ts)- Ts];             
start_point = 1;
end_point = 1000; %查看仿真的持续时间周期
 
%锁相环的初始化                                              
 
 
 
TestFreq = 500;                                                %FM调制频率
msg = 0.5*square(2*pi*TestFreq*t);                             %要发送的信号
[fmmsg, phase] = fm_modulation(msg, fc1, Fs, 1.0, 0.05, 0);     %调用FM调制函数进行调制
 
%以上就是FM的调制过程
%=============================================================
%=============================================================
%一下是PLL-FM解调过程
[pd_out,lfsum,lf_out,vco_phase,vco_out] = pll_function(fmmsg,Fs,2.0,1.0,1.0,fc2,50000,1.0);
 
 
 
figure(1);
subplot(3,1,1);
plot(fmmsg(start_point:end_point));
title('10K的载波对500HZ的信号进行调制');
grid;
subplot(3,1,2);
plot(lf_out(start_point:end_point));
title('PLL的环路滤波输出信号');
grid;
 
subplot(3,1,3);
plot(pd_out(start_point:end_point));%   fc1>fc2,值<0,
title('PLL相位输出');                %   fc1<fc2,值>0,
%                                       Rfc1=fc2,值-5~5
A01-11
相关文章
|
6天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于yolov4深度学习网络的公共场所人流密度检测系统matlab仿真,带GUI界面
本项目使用 MATLAB 2022a 进行 YOLOv4 算法仿真,实现公共场所人流密度检测。通过卷积神经网络提取图像特征,将图像划分为多个网格进行目标检测和识别,最终计算人流密度。核心程序包括图像和视频读取、处理和显示功能。仿真结果展示了算法的有效性和准确性。
53 31
|
16小时前
|
机器学习/深度学习 算法
基于改进遗传优化的BP神经网络金融序列预测算法matlab仿真
本项目基于改进遗传优化的BP神经网络进行金融序列预测,使用MATLAB2022A实现。通过对比BP神经网络、遗传优化BP神经网络及改进遗传优化BP神经网络,展示了三者的误差和预测曲线差异。核心程序结合遗传算法(GA)与BP神经网络,利用GA优化BP网络的初始权重和阈值,提高预测精度。GA通过选择、交叉、变异操作迭代优化,防止局部收敛,增强模型对金融市场复杂性和不确定性的适应能力。
|
17小时前
|
监控 算法 数据安全/隐私保护
基于扩频解扩+turbo译码的64QAM图传通信系统matlab误码率仿真,扩频参数可设置
该通信系统基于MATLAB 2022a仿真,适用于高要求的图像传输场景(如无人机、视频监控等),采用64QAM调制解调、扩频技术和Turbo译码提高抗干扰能力。发射端包括图像源、64QAM调制器、扩频器等;接收端则有解扩器、64QAM解调器和Turbo译码器等。核心程序实现图像传输的编码、调制、信道传输及解码,确保图像质量和传输可靠性。
25 16
|
6天前
|
算法
基于Adaboost模型的数据预测和分类matlab仿真
AdaBoost(Adaptive Boosting)是一种由Yoav Freund和Robert Schapire于1995年提出的集成学习方法,旨在通过迭代训练多个弱分类器并赋予分类效果好的弱分类器更高权重,最终构建一个强分类器。该方法通过逐步调整样本权重,使算法更关注前一轮中被误分类的样本,从而逐步优化模型。示例代码在MATLAB 2022A版本中运行,展示了随着弱分类器数量增加,分类错误率的变化及测试数据的分类结果。
|
5天前
|
供应链 算法 调度
排队算法的matlab仿真,带GUI界面
该程序使用MATLAB 2022A版本实现排队算法的仿真,并带有GUI界面。程序支持单队列单服务台、单队列多服务台和多队列多服务台三种排队方式。核心函数`func_mms2`通过模拟到达时间和服务时间,计算阻塞率和利用率。排队论研究系统中顾客和服务台的交互行为,广泛应用于通信网络、生产调度和服务行业等领域,旨在优化系统性能,减少等待时间,提高资源利用率。
|
15天前
|
机器学习/深度学习 算法 Python
基于BP神经网络的金融序列预测matlab仿真
本项目基于BP神经网络实现金融序列预测,使用MATLAB2022A版本进行开发与测试。通过构建多层前馈神经网络模型,利用历史金融数据训练模型,实现对未来金融时间序列如股票价格、汇率等的预测,并展示了预测误差及训练曲线。
|
13天前
|
存储 算法
基于HMM隐马尔可夫模型的金融数据预测算法matlab仿真
本项目基于HMM模型实现金融数据预测,包括模型训练与预测两部分。在MATLAB2022A上运行,通过计算状态转移和观测概率预测未来值,并绘制了预测值、真实值及预测误差的对比图。HMM模型适用于金融市场的时间序列分析,能够有效捕捉隐藏状态及其转换规律,为金融预测提供有力工具。
|
13天前
|
机器学习/深度学习 算法 信息无障碍
基于GoogleNet深度学习网络的手语识别算法matlab仿真
本项目展示了基于GoogleNet的深度学习手语识别算法,使用Matlab2022a实现。通过卷积神经网络(CNN)识别手语手势,如&quot;How are you&quot;、&quot;I am fine&quot;、&quot;I love you&quot;等。核心在于Inception模块,通过多尺度处理和1x1卷积减少计算量,提高效率。项目附带完整代码及操作视频。
|
16天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于深度学习网络的宝石类型识别算法matlab仿真
本项目利用GoogLeNet深度学习网络进行宝石类型识别,实验包括收集多类宝石图像数据集并按7:1:2比例划分。使用Matlab2022a实现算法,提供含中文注释的完整代码及操作视频。GoogLeNet通过其独特的Inception模块,结合数据增强、学习率调整和正则化等优化手段,有效提升了宝石识别的准确性和效率。
|
18小时前
|
机器学习/深度学习 人工智能 算法
基于GRNN广义回归网络和MFCC的语音情绪识别matlab仿真,对比SVM和KNN
该语音情绪识别算法基于MATLAB 2022a开发,可识别如悲伤等情绪,置信度高达0.9559。核心程序含中文注释及操作视频。算法采用MFCC特征提取与GRNN广义回归网络,通过预加重、分帧、加窗、FFT、梅尔滤波器组、对数运算和DCT等步骤处理语音信号,实现高效的情绪分类。

热门文章

最新文章