信号处理趣学D11——怎么避免信号调质过程的时候重叠失真?

重叠失真(alisasing)或者混叠失真是在信号调制的时候,载波频率小于原信号最高频率导致的。下面小虎就带大家用MATLAB仿真理解一下。

仿真结果

原始信号如下:
y 1 = s i n ( 200 π t ) y_1=sin(200\pi t) y1=sin(200πt)
调质频率分别是300Hz和50Hz

下面一组图中,从左到右、上到下依次是原始信号1、调幅波1,2、解调波1,2的时域图像。
在这里插入图片描述

  • 可以看到,由于调制频率50Hz比原始信号的频率100Hz小,所以调幅波出现波峰混乱的情况。
  • 解调后,由于重叠失真,导致解调后的波形与原始信号极大偏离
  • 为了避免重叠失真,参考信号采样中的采样定理,载波频率应该比原始信号的频率大。实际使用中,载波频率至少数倍甚至数十倍大于原始信号的最高频率

代码分析

参数设置

采样频率是44100,采样间隔1/44100。调质波为:
y = s i n ( 200 π t ) y=sin(200\pi t) y=sin(200πt)

Fs=44100;
dt=1.0/Fs;
T=1; N=T/dt;
t=[0:N-1]/N;

x1=sin(2*pi*100*t);

调制

% fz=300Hz
subplot(2,2,1)
x2=ammod(x1,300,Fs,0);
plot(t,x2);
axis([0,0.2,-1.2,1.2]);

% fz=50Hz
subplot(2,2,2)
x4=ammod(x1,50,Fs,0);
plot(t,x4);
axis([0,0.2,-1.2,1.2]);

解调

% fz=300Hz
subplot(2,2,3)
x3=amdemod(x2,300,Fs,0);
plot(t,x3);
axis([0,0.2,-1.2,1.2]);

% fz=50Hz
subplot(2,2,4)
x5=amdemod(x4,50,Fs,0);
plot(t,x5);
axis([0,0.2,-1.2,1.2]);

完整代码

Fs=44100;
dt=1.0/Fs;
T=1; N=T/dt;
t=[0:N-1]/N;

x1=sin(2*pi*100*t);

% fz=300Hz
subplot(2,2,1)
x2=ammod(x1,300,Fs,0);
plot(t,x2);
axis([0,0.2,-1.2,1.2]);

subplot(2,2,3)
x3=amdemod(x2,300,Fs,0);
plot(t,x3);
axis([0,0.2,-1.2,1.2]);

% fz=50Hz
subplot(2,2,2)
x4=ammod(x1,50,Fs,0);
plot(t,x4);
axis([0,0.2,-1.2,1.2]);

subplot(2,2,4)
x5=amdemod(x4,50,Fs,0);
plot(t,x5);
axis([0,0.2,-1.2,1.2]);

参考资料

[1] 张春华等,工程测试技术基础(第二版),华中科技大学出版社
[2] 何岭松等,中国大学MOOC——工程测试技术基础

更多

信号处理趣学D0——系列专栏的说明与目录

posted @ 2020-04-28 16:08  狂小虎  阅读(244)  评论(0编辑  收藏  举报