尧图精选

MATLAB调幅广播系统仿真:调制、解调与超外差接收设计

🕒 发布时间:2026/9/18 12:34:16 📁 来源:尧图网络
简介一份面向通信与电子信息类专业学生的MATLAB课程设计文档围绕“调幅广播系统的仿真设计”给出完整任务书与实现方案。文档基于MATLAB/Simulink平台覆盖调幅广播系统建模、接收滤波器设计、加性高斯噪声信道仿真、包络检波与相干解调对比以及通过脚本程序分析输出信噪比与输入信噪比关系等内容既适用于初学者理解通信系统仿真流程也可作为课程设计报告的写作参考。资源为1个DOC文档压缩包大小155KB文档结构完整包含引言、设计目的、任务要求、仿真参数设置、模型搭建步骤、波形结果、脚本程序及总结体会等模块方便直接查阅与二次修改。目前已有860人学习下载适合正在完成MATLAB/Simulink通信类课程设计或需要快速搭建调幅广播仿真模型的学生使用。1. 把“调幅广播系统的仿真设计”做成课程设计最先要定的不是代码很多学生拿到“matlab课程设计——调幅广播系统的仿真设计”这类题目第一反应是去找现成的.m文件但课程设计真正给分的点在于你能不能把一套调幅广播系统的发射、信道、接收链路讲清楚并用仿真数据证明参数选得合理。调幅广播的数学形式很简单一个乘法器加一个加法器就能写出表达式但工程细节并不少调制深度设多少会过调、载波怎么加、接收端用包络检波还是相干解调、低通滤波器阶数和截止频率怎么选、加噪时信噪比如何折算成噪声幅度。把这些指标先写在纸上再动手写 MATLAB 代码整个仿真设计的结构和课程设计报告的子标题就都清晰了。这篇围绕普通调幅AM广播的建模步骤展开能直接照着把发射端到接收端的仿真代码跑通也方便你往报告里填参数表和结论。2. 发射端用 MATLAB 建立调幅广播调制模型与频谱验证2.1 普通调幅AM信号的数学形式和调制深度 m 的选择调幅广播系统的发射端核心是普通调幅调制表达式为s(t) Ac * (1 m * x_norm(t)) * cos(2 * pi * fc * t)其中 Ac 是载波幅度fc 是载波频率x_norm(t) 是归一化到 [-1, 1] 的基带音频信号m 是调制深度。调制深度 m 是仿真设计里第一个必须明确的参数它决定了包络能否无失真还原m 小于等于 1 时包络始终为正接收端可以用包络检波直接恢复m 大于 1 时1 m * x_norm(t) 会出现负值包络过零翻转普通包络检波输出严重失真这在实际广播发射和课程设计里都算故障状态。常见做法是取 m 0.3 到 0.8 之间。m 太小边带功率低解调后信噪比差m 太大容易进入过调区也考验发射机的线性度。课程设计通常希望同时展示正常与过调的对比所以可以把 m 设成可调变量基带用标准的 1 kHz 正弦或一段语音。载波频率的选择要考虑仿真采样率载波频率一般取采样率的 1/5 到 1/10留出足够的频谱空间给上下边带和滤波过渡带。2.2 最小可运行代码生成音频源、调制、观察包络和频谱下面是一段可以直接放进脚本文件运行的最小发射端仿真。基带源用 1 kHz 正弦载波 20 kHz采样率 100 kHzfs 100e3; % 采样率 100 kHz t 0:1/fs:0.05; % 50 ms 时长 fm 1e3; % 基带音频频率 1 kHz fc 20e3; % 载波频率 20 kHz x sin(2*pi*fm*t); % 基带信号 x_norm x / max(abs(x)); % 归一化到 [-1, 1] m 0.6; % 调制深度 Ac 1; % 载波幅度 s Ac * (1 m * x_norm) .* cos(2*pi*fc*t); % 普通调幅 % 调制指数验证直接观察包络是否始终为正 env_theory Ac * (1 m * x_norm); if min(1 m * x_norm) 0 disp(警告出现过调制请减小 m); end % 频谱观察 N length(s); f (-N/2:N/2-1) * fs / N; S fftshift(fft(s) / N); plot(f, 20*log10(abs(S) 1e-10)); xlabel(频率 Hz); ylabel(幅度 dB); title(调幅广播信号频谱); xlim([0 30e3]); grid on;这段代码先生成归一化基带再用调制深度 m 完成加法与乘法最后做 FFT 观察频谱。频谱上的三条谱线或三簇谱峰分别对应载波 fc、上边带 fcfm 和下边带 fc-fm这是判断调制是否正确的第一依据。如果看到频谱在载波处没有谱线说明代码把 DSB-SC 当成普通调幅写了这一点在报告里容易写错。2.3 检查过调制与载波泄漏的方法过调制检查不能只看时域波形。因为归一化后 x_norm 的峰值恰好是 1只要 m 1 就一定出现过调制更稳妥的判断方式是直接检查1 m * x_norm的最小值是否小于 0并把它作为一条断言写进脚本。实际课程设计里基带换成语音后峰值随内容变化包络最低点不会刚好是1 - m所以还要画出包络曲线做目检。载波泄漏的问题则发生在滤波端如果用高通或带通滤波器分离载波滤波器相位非线性会造成载波与边带相对延迟解调出的包络会有频率失真。发射端仿真一般不专门做滤波但设计报告里应当说明“广播发射机在调制后级联带通滤波器抑制带外辐射”这一环节并用一段 butter 带通仿真验证载波被保留、边带未衰减。3. 信道与接收端加性噪声、低通滤波与包络检波的联合仿真3.1 接收端仿真链路拆成加噪、滤波、检波三块的原因调幅广播系统仿真里接收端仿真不能只写一句abs(hilbert(rx))。包络检波的前提是信号通过信道后仍然保持正包络而信道噪声叠加后会让包络出现小幅度毛刺直接做希尔伯特变换得到的瞬时幅度就会带噪。常见的可靠做法是把接收端拆成三步先加高斯白噪声再用带通滤波器限制噪声带宽最后做包络检波和低通滤波。带通滤波器放在检波前相当于超外差接收机里的中频滤波器它决定了进入检波器的噪声功率直接影响解调后的信噪比。3.2 randn 加噪时信噪比怎么折算成噪声幅度MATLAB 里用randn生成的噪声默认方差为 1。要让接收信号达到指定信噪比需要先算信号功率再反推噪声标准差。实信号平均功率P_signal mean(s.^2)噪声方差P_noise P_signal / 10^(snr_dB/10)这一步经常被写成10^(snr_dB/20)从而导致幅度差一倍。注意实信号和复信号的信噪比折算不同实带通信号的有效带宽是两侧边带之和直接用mean(s.^2)计算的总功率对应总信噪比不要在代码里额外乘以 2。下面是加噪与接收端处理的最小实现snr_dB 20; % 接收端信噪比 20 dB P_signal mean(s.^2); % 信号平均功率 noise_std sqrt(P_signal / 10^(snr_dB/10)); % 噪声标准差 noise noise_std * randn(size(s)); % 白噪声 rx s noise; % 接收信号 % 中频带通滤波中心频率 fc带宽 6 kHz fc_norm fc / (fs/2); % 归一化中心频率 bw_norm 6e3 / (fs/2); % 归一化带宽 [b, a] butter(4, [fc_norm-bw_norm/2, fc_normbw_norm/2], bandpass); rx_f filtfilt(b, a, rx); % 零相位滤波避免群延迟 % 包络检波用解析信号取模 env abs(hilbert(rx_f)); % 隔直与低通滤波恢复基带 env_ac env - mean(env); % 隔直去掉直流分量 [b_lp, a_lp] butter(4, 5e3/(fs/2), low); y filtfilt(b_lp, a_lp, env_ac); % 低通恢复基带filtfilt做了双向滤波保证零相位偏移避免群延迟导致解调后的基带波形和原始信号对不齐如果用filter波形会整体滞后课程设计里对比原始信号和恢复信号时容易误判为失真。低通截止频率取 5 kHz对应调幅广播的音频带宽边带信号落在 19–21 kHz经包络检波后搬移到基带5 kHz 低通能完整保留 1 kHz 正弦成分。3.3 低通滤波器参数对照表与实物换算设计文档里建议给一张滤波器参数表评审时一眼能看出你理解带宽和截止频率的关系。下表可以直接用于报告中滤波器位置类型阶数通带/截止频率作用发射端带通Butterworth bandpass4 阶中心 20 kHz带宽 6 kHz抑制载波外带外辐射接收端中频带通Butterworth bandpass4 阶中心 20 kHz带宽 6 kHz限制进入检波器的噪声检波后低通Butterworth lowpass4 阶截止 5 kHz恢复基带音频滤除高频分量滤波器设计遵循“带宽覆盖两边带、过渡带不要压到边带边缘”的原则。把 6 kHz 带宽的原因写清楚基带最大频率 1 kHz边带从 fc±1 kHz 向外扩展6 kHz 带宽留出 2 kHz 过渡带余量。如果基带换成实际语音4 kHz 带宽带宽要放宽到 10 kHz否则边带衰减会引起明显失真。3.4 解调失真怎么看包络目检和信噪比指标接收端仿真的输出不能只画一条曲线说“解调成功”。至少要有四个验证点包络是否与Ac * (1 m * x_norm)形状一致、隔直后的恢复波形频率是否为 1 kHz、FFT 频谱在 1 kHz 处是否出现单根谱线、信噪比是否随输入 snr_dB 单调变化。信噪比折算公式用snr_out 10 * log10(mean(y.^2) / mean((y - x_norm(1:length(y))).^2))注意比对前要把原始基带按滤波延迟对齐。这个指标在 20 dB 输入信噪比下通常能恢复到 15–18 dB低于 10 dB 时包络检波会出现门限效应。4. 从基带到中频调幅广播超外差接收机的仿真架构与参数权衡4.1 为什么课程设计必须写镜像抑制和中频选择上面的仿真把带通滤波器中心直接设在载波 20 kHz等价于在零中频接收。但实际调幅广播系统全链路采用超外差结构本振频率flo fc fif混频后把射频信号搬移到中频fif。镜像频率是fc 2*fif它经过混频后也会落在同一中频上必须用前端滤波抑制。课程设计里只做包络检波链路而不提镜像问题容易被评审问住。常见做法是选一个较低的中频获得较好选择性或选高中频获得较好镜像抑制两者由中频滤波器的 Q 值限制。仿真设计里建议把三个频率写清楚射频 fc、本振 flo、镜像 fc 2*fif并在设计文档里放一张频谱搬移图。4.2 用频带搬移的方式仿真超外差链路超外差链路的 MATLAB 仿真不需要真的建模混频器非线性只要在频域上做搬移即可。下面这段代码展示射频信号经本振混频后得到中频信号再复用第 3 章的滤波与检波链路fif 10e3; % 中频 10 kHz flo fc fif; % 本振频率 30 kHz mix_out rx .* cos(2*pi*flo*t); % 乘法混频 % 镜像频率计算 f_image fc 2*fif; % 40 kHz fprintf(镜像频率 %.1f kHz\n, f_image/1e3); % 中频带通滤波 [b_if, a_if] butter(4, [9e3/(fs/2), 11e3/(fs/2)], bandpass); if_sig filtfilt(b_if, a_if, mix_out); % 包络检波 env_if abs(hilbert(if_sig)); y_if filtfilt(b_lp, a_lp, env_if - mean(env_if));混频器输出包含和频fcflo与差频flo-fc这里取差频 10 kHz 作为中频。混频后的信号幅度是原信号的一半因为余弦乘积展开后两个分量各占一半幅度设计报告里应说明这一点的好处它解释了为什么混频后需要加一个自动增益控制AGC否则弱信号在中频级的增益会不够。仿真中直接忽略幅度系数也不会影响包络形状但会影响信噪比绝对值严谨一点在混频后乘 2 再滤波。4.3 设计文档中的系统参数表到这里可以整理一份完整的调幅广播系统参数表作为课程设计的核心指标汇总参数数值说明载波频率 fc20 kHz仿真频率可按广播频段等比例缩放基带音频带宽5 kHz调幅广播标准音频带宽基带信号频率1 kHz测试用单音信号调制深度 m0.6保证包络检波不出现门限效应中频频率 fif10 kHz差频搬移后的信号中心频率镜像频率40 kHz需要前端滤波抑制接收端输入信噪比0–30 dB扫参观察解调输出变化镜像频率 40 kHz 在本振 30 kHz、中频 10 kHz 的结构下正好是射频 20 kHz 关于本振的对称点代码里用fc 2*fif算出来报告里应写一句“前端带通滤波器必须衰减镜像频段”。更强的做法是补一张输出信噪比随输入信噪比变化的曲线并在同一坐标系里画理想线性关系两者差距即为包络检波的门限损失。5. 课程设计报告验证技巧用同一组 FFT 数据回答三个问题5.1 一组 FFT 同时回答调制、滤波、解调三个问题写报告时别把每个模块的频谱都单独画一遍时间紧且看不出关联。常见做法是只对发射端信号、中频滤波后信号、检波后信号各算一次 FFT三幅图放在同一行同一频率轴。发射端频谱能回答“调制是否正确”中频滤波后频谱能回答“镜像与噪声是否被抑制”检波后频谱能回答“基带是否被恢复”。注意检波后频谱的横轴范围改成 0–6 kHz直接用同一个xlim会把基带谱线压成一条细线反而丢分。这个技巧在写调幅广播系统仿真设计文档时很顶用评审扫一眼图表就能看出你做了链路验证。5.2 验证清单和可复现检查项交付前按下面六条自查缺一条就往报告补一段说明调制深度越界时代码是否显式提示过调制而不是静默通过低通滤波器是否用了filtfilt报告中是否注明避免群延迟信噪比折算的公式是10^(snr_dB/10)而不是/20是否画了镜像频率的标注线而不是只写“存在镜像干扰”包络检波输出是否做了隔直处理未隔直的波形会有直流偏移基带对比时是否做了延迟对齐直接用plot(t, y-x_norm)会显示虚假误差5.3 截图与数值格式上的小技巧最后落一个具体技巧在脚本里写exportgraphics(gcf, fig01.png, Resolution, 200)统一导出图片MATLAB 2019b 之后都支持避免课程设计报告里贴低分辨率截图被追问“看不到边带”。每张图固定把线宽设为 1.5、字号 11保证打印成黑白文档后曲线仍然可区分。报告里引用数值时统一写成“输入信噪比 20 dB 时解调输出信噪比 16.8 dB包络波形无明显失真”这种带条件和带结论的句式评分时比只放图不放结论更容易拿分。本文还有配套的精品资源点击获取
上一篇/下一篇内容由系统自动关联 返回资讯列表 →