当前位置: 首页 > news >正文

信号调制与解调 matlab仿真

信号调制与解调 matlab仿真

  • 原始信号--频谱为cos(Wt*w)函数,外形如馒头
  • 调制
  • 解调
  • 傅里叶变换
  • 测试FT的频谱是否为锯齿波
  • 理想低通滤波器,截至频率Wm
  • 傅里叶变换
  • 频谱为锯齿波函数的时域信号函数
  • 傅里叶变换
  • 调制频率1
  • 理想低通滤波
  • 调制频率2
  • 理想低通滤波
% 调制定理演示Demo
% 频域三角信号×G(w)门函数,得到锯齿波频谱
%解  [MATLAB程序]
T = 20;     %采样周期
dt = 0.02;  %积分时间, 采样时间
t = -T/2:dt:T/2;

原始信号--频谱为cos(Wt*w)函数,外形如馒头

Wm = 5;             % 截至角频率--与横坐标交点
Wt = pi/(2*Wm);     % cos(Wt*w)
ft = Wm*sinc(Wm*(t+Wt)/pi) + Wm*sinc(Wm*(t-Wt)/pi);
ft = ft / (2*pi);   % 乘以系数Wc = 15;    % 调制信号角频率Wc

调制

ft1 = ft .* cos(Wc*t);   % 使用cos(Wc*t)调制ft

解调

ft2 = ft1 .* cos(Wc*t);   % 使用cos(Wc*t)解调ft

傅里叶变换

W1 = 50;
N = 500;
k = -N:N;
W = k*W1/N;
% f(t)傅里叶变换
F0 = ft*exp(-j*t'*W)*dt;  %求F(t)的傅里叶变换F1(jw)
F0 = abs(F0);
F1 = ft1*exp(-j*t'*W)*dt;  %求F(t)*cos(Wc*t)的傅里叶变换F1(jw)
F1 = abs(F1);
F2 = ft2*exp(-j*t'*W)*dt;  %求f1(t)*cos(Wc*t)*cos(Wc*t)的傅里叶变换F1(jw)
F2 = abs(F2);%%显示波形
subplot(3,1,1)
plot(W, F0, ':', W, F1, W, F2, 'linewidth', 2)
legend('F(t)信号频谱', '用cos(Wc*t)调制后频谱', '用cos(Wc*t)解调后频谱');
xlabel('ω')
ylabel('|F(jω)|')
title('F(t)信号调制解调频谱')

测试FT的频谱是否为锯齿波

T = 20;         % 采样周期
Fs = 100;       % 采样频率
dt = 1/Fs;      % 积分时间, 采样时间
t = -T/2:dt:T/2;

理想低通滤波器,截至频率Wm

Wm = 2*pi*9;    % 理想低通滤波器的截至频率
filter = Wm/pi*sinc(Wm*t/pi);   % Wc/π*Sa(Wc*t) 理想低通滤波函数

傅里叶变换

W1 = 2*pi*100;
N = 500;
k = -N:N;
W = k*W1/N;

频谱为锯齿波函数的时域信号函数

Wc = 2*pi*5;    % 基本频率
W0 = 2*pi*30;   % 频移--移出2个信号ft = Wc/pi.*(sinc(Wc*t/pi).^2);             % 频谱为三角信号的函数
fr1 = Wc/pi.*sinc(Wc*t/pi).*exp(-j*Wc*t);   % 频谱为G(w)门函数(移频)
ft1 = conv2(ft, fr1, 'same')*dt;            % 频域三角信号×G(w)门函数,得到锯齿波频谱
ft1 = ft1.*exp(j*W0*t);fr2 = Wc/pi.*sinc(Wc*t/pi).*exp(j*Wc*t);    % 频谱为G(w)门函数(移频)
ft2 = conv2(ft, fr2, 'same')*dt;            % 频域三角信号×G(w)门函数,得到锯齿波频谱
ft2 = ft2.*exp(-j*W0*t);
ft = ft1 + ft2;

傅里叶变换

F3 = ft*exp(-j*t'*W)*dt;    %求f1(t)的傅里叶变换F1(jw)
F3 = abs(F3);

调制频率1

Fy = 22;    % 调制频率
ft1 = ft.*cos(2*pi*Fy*t);    % 调制信号

理想低通滤波

ft1 = conv2(ft1, filter, 'same')*dt; % 理想低通滤波
F4 = ft1*exp(-j*t'*W)*dt;    %求f1(t)的傅里叶变换F1(jw)
F4 = abs(F4);subplot(3,1,2)
plot(W/(2*pi), F3, ':', W/(2*pi), F4, 'linewidth', 2);
legend('100Hz采样频率频谱', 'cos(2\pi22t)调制后频谱');
xlabel('频率Hz')
​​​​​​​

调制频率2

Fy = 25;    % 调制频率
ft2 = ft.*cos(2*pi*Fy*t);    % 调制信号

理想低通滤波

ft2 = conv2(ft2, filter, 'same')*dt; % 理想低通滤波
F4 = ft2*exp(-j*t'*W)*dt;    %求f1(t)的傅里叶变换F1(jw)
F4 = abs(F4);subplot(3,1,3)
plot(W/(2*pi), F3, ':', W/(2*pi), F4, 'linewidth', 2);
legend('100Hz采样频率频谱', 'cos(2\pi25t)调制后频谱');
xlabel('频率Hz')

http://www.dtcms.com/a/366031.html

相关文章:

  • 异常处理机制与debug
  • 复写零(双指针)
  • 单片机day2
  • 配置时钟分频与倍频
  • 解构复杂财务逆向业务:如何优雅地生成与管理负数单?
  • Python基础(⑥属性装饰器)
  • 你只需输入一句话,MoneyPrinterTurbo直接给你输出一个视频
  • 普通人如何用 AI 提效?5 个低门槛工具 + 3 类场景案例,让 AI 成为日常助手
  • phpstorm 操作git 另外的操作在 我的收藏
  • c#编写的应用程序调用不在同一文件夹下的DLL
  • Java继承
  • c++ zint二维码、条形码开发库
  • c++多线程(1)------创建和管理线程td::thread
  • Python数据分析与处理(二):将数据写回.mat文件的不同方法【超详细】
  • AI+法律:用ERNIE-Bot解析合同条款,识别风险点
  • 进程管理和IPC
  • 常用假设检验方法及 Python 实现
  • 多层环境室内定位系统综述总结
  • 【JavaEE】(22) Spring 事务
  • 苏哒智能会议一体机:让会议管理进入智能时代
  • Java与Vue构建的企业设备资产管理系统,集成后台管理与移动端操作,覆盖设备全生命周期,支持采购、维护、报废等流程,提供完整源码,助力企业高效管控资产
  • 刻意练习实践说明使用手册
  • nginx配置讲解
  • GitLens:VS Code下高效解决代码追溯的Git管理实用插件
  • Spring Boot + Nacos 配置中心示例工程
  • ego(2)---初始轨迹生成后的关键点采样
  • 一文读懂线性回归的灵魂:成本函数 J(w,b) 全解析
  • K8s基于节点软亲和的高 CPU Pod 扩容与优先调度方案
  • 华为OD最新机试真题-二进制差异数-OD统一考试(C卷)
  • 《K8s网络策略与CNI插件交互问题分析:基于真实案例的排查方法》