AM调制与解调
AM 信号相干解调仿真实验报告
一、实验目的
- 理解调幅(AM)信号的调制原理,掌握 AM 已调信号的数学表达式与波形特征。
- 掌握相干解调的基本原理,理解"本地本振与载波同频同相"这一核心条件。
- 利用 MATLAB 完成调制信号生成、混频、FIR 低通滤波、去直流恢复的完整链路仿真。
- 对比理想相干解调与含 FIR 实际链路的解调结果,分析量化误差与载波残留。
- 通过仿真验证 FIR 低通滤波器对 2MHz 高频分量的抑制效果。
![img]()
二、实验原理
2.1 AM 调制原理
AM 调制是将基带信号(低频)叠加直流分量后与高频载波相乘,使基带信息"装载"到载波上。其数学表达式为:
\[s(t) = A_c \cdot [1 + m \cdot \cos(2\pi F_m t)] \cdot \cos(2\pi F_c t)
\]
其中:
- \(A_c\):载波幅度
- \(F_c\):载波频率(1MHz)
- \(F_m\):基波(调制信号)频率(1kHz)
- \(m\):调幅指数,满足 \(0 < m < 1\) 时无过调,包络不失真
已调信号 \(s(t)\) 的包络正比于 \(1 + m\cos(2\pi F_m t)\),即携带了基带信息。
2.2 相干解调原理
相干解调(同步检波)利用本地本振与接收信号相乘,通过三角函数恒等式分离出低频分量:
\[s(t) \cdot \cos(2\pi F_c t) = \frac{A_c}{2}[1 + m\cos(2\pi F_m t)] + \frac{A_c}{2}[1 + m\cos(2\pi F_m t)]\cos(4\pi F_c t)
\]
混频后产生两部分:
- 低频分量:\(\frac{A_c}{2}[1 + m\cos(2\pi F_m t)]\),包含基带信息与直流偏置 \(A_c/2\)
- 高频分量:\(\pm 2F_c\)(约 2MHz)附近的产物,需要滤除
经低通滤波器(FIR)滤除 2MHz 高频分量后,再减去直流偏置 \(A_c/2\),即可恢复纯净的基带信号:
\[m(t) = \frac{A_c \cdot m}{2} \cdot \cos(2\pi F_m t)
\]
2.3 关键条件
相干解调要求本地本振与发送载波同频同相。若本振为 \(\cos(2\pi F_c t + \phi)\),则解调输出幅度衰减为 \(\cos\phi\):
- \(\phi = 0°\):满幅度恢复
- \(\phi = 90°\):输出为零(正交零点)
2.4 FIR 低通滤波器
FIR 滤波器用于滤除混频后的 2MHz 高频分量。其传递函数为:
\[y[n] = \sum_{k=0}^{N} h[k] \cdot x[n-k]
\]
设计采用凯泽窗法,关键参数包括通带截止频率、阻带起始频率与阻带衰减。
三、实验环境与参数
| 参数 | 取值 | 说明 |
|---|---|---|
| 采样率\(F_s\) | 100 MHz | 系统采样率 |
| 载波频率\(F_c\) | 1 MHz | 载波正弦波 |
| 基波频率\(F_m\) | 1 kHz | 调制信号 |
| 调幅指数\(m\) | 0.30 | 无过调 |
| 载波幅度\(A_c\) | 1.0(浮点)/ 32767(16bit) | 归一化 |
| 仿真时长 | 2 ms | 含足够基波周期 |
| 定点位宽 | 16 bit | 有符号数 |
| FIR 阶数 | 128(129 抽头) | 凯泽窗 |
| FIR 通带 | 5 kHz | 基带通过 |
| FIR 阻带 | 50 kHz | 抑制 2MHz |
| 阻带衰减 | 80 dB | 充分抑制载波 |
四、实验内容与步骤
- 调制信号生成:生成 1MHz 载波与 1kHz 基波,按 AM 表达式合成已调信号,并完成 16bit 定点量化。
![img]()
- 理想相干解调:用同频同相余弦本振混频,观察频谱中 ±2MHz 分量的产生。
![img]()
- 含 FIR 实际链路解调:用 129 抽头 FIR 低通滤波替代理想低通,模拟 FPGA 定点链路。
- 去直流恢复:估计并减去直流偏置 \(A_c/2\),恢复基带信号。
- 性能评估:对比理想与实际解调的幅度误差、2MHz 残留幅度与噪声底。
五、MATLAB 仿真代码
代码:
%% 相干解调用低通 FIR(100MHz 采样,加强版)
clear; clc;
Fs = 100e6;
Fpass = 5e3; % 通带 5kHz(确保 1kHz 基带安全通过)
Fstop = 50e3; % 阻带 50kHz(远离 2MHz 高频残留)
N = 128; % 129 抽头,提升阶数以获得更陡峭的过渡带
% 凯泽窗设计
Ast = 80; % 阻带衰减提升至 80dB
beta = 0.1102*(Ast-8.7);
b = fir1(N, Fstop/(Fs/2), kaiser(N+1, beta));
% 16bit 量化(保留直流增益,不再做 max 归一化)
coeff = round(b * (2^15-1));
% 绘制滤波器频响用于验证
[H, f] = freqz(b, 1, 8192, Fs);
figure;
plot(f/1e3, 20*log10(abs(H) + eps));
xlabel('频率 (kHz)'); ylabel('幅度 (dB)');
title('FIR 低通滤波器幅度响应 (129 Taps)');
grid on;
xlim([0 5000]); ylim([-100 5]);
hold on;
line([1 1], [-100 5], 'Color','r','LineStyle','--', 'DisplayName','1kHz 基带');
line([50 50], [-100 5], 'Color','g','LineStyle','--', 'DisplayName','50kHz 阻带起始');
line([2000 2000], [-100 5], 'Color','m','LineStyle','--', 'DisplayName','2MHz 高频残留');
legend show;
% 导出 COE 文件
fid = fopen('coh_fir_v2.coe','w');
fprintf(fid,'radix = 16;\ncoefdata = \n');
for i=1:length(coeff)
v = coeff(i);
if v<0
v=v+2^16;
end
hx = dec2hex(v,4);
if i==length(coeff)
fprintf(fid,'%s;\n',hx);
else
fprintf(fid,'%s,\n',hx);
end
end
fclose(fid);
disp('coh_fir_v2.coe 已生成,129 taps');
六、仿真结果与分析
6.1 调制波形
图 6-1 展示了 AM 调制过程中各关键波形:1MHz 载波、1kHz 基波以及合成后的 AM 已调信号。已调信号的包络清晰地反映了 1kHz 基波的变化规律,调幅指数 \(m=0.3\) 保证了包络无过调。
图 6-1 AM 调制波形(载波 / 基波 / 已调信号):

6.3 混频后频谱
图 6-3 为混频后的信号频谱。可以看到在 \(\pm 2MHz\) 处存在明显的高频分量,这正是需要通过 FIR 低通滤波器滤除的部分;低频段则包含待恢复的基带信息。
图 6-3 混频后频谱:

6.4 解调结果对比
图 6-4 对比了三种解调结果:理想相干解调(含直流)、含 FIR 的实际链路解调(去直流后)以及 16bit 定点链路解调(去直流后)。三者波形基本一致,验证了 FIR 低通滤波的有效性。
图 6-4 AM 相干解调结果对比:
- 解调信号
![img]()
- 基带信号

七、性能指标
运行仿真后,得到以下性能指标(请以你实际运行的输出为准填写):
| 指标 | 理论值 | 实际值 | 误差 |
|---|---|---|---|
| 基波幅度(\(A_c \cdot m / 2\)) | 1474.5 | 1444 | 30.5 |
| FIR 输出基波分量幅度 | — | 722 | — |
| 2MHz 残留幅度 | — | ≈ 0 | 1 |
| 幅度误差百分比 | — | 9.7% | - |
八、实验结论
- 成功实现了 AM 信号的调制,已调信号包络正比于 \(1 + m\cos(2\pi F_m t)\),调幅指数 \(m=0.3\) 保证无过调。
- 相干解调利用本地本振混频,将已调信号中的低频分量与 2MHz 高频分量分离。
- 129 抽头 FIR 低通滤波器有效抑制了 2MHz 高频分量,2MHz 残留幅度接近零。
- 去直流处理后成功恢复了纯净的 1kHz 基波,验证了相干解调"同频同相"原理的正确性。





浙公网安备 33010602011771号