8路AM信号信道化软件无线电发射机仿真系统
项目介绍
本项目是一个基于MATLAB环境开发的软件无线电(SDR)发射机仿真系统。项目专注于实现高效的数字信道化处理,利用多相滤波架构(Polyphase Filterbank)将8路独立的低速AM(调幅)基带信号合成至一个宽带的高速数据流中。
该系统通过仿真演示了数字上变频(DUC)的核心流程,特别展示了如何利用多速率信号处理技术(IFFT + 多相滤波 + 换向器)来代替传统的单路混频滤波结构,从而显著降低运算量并实现精准的频分复用(FDM)。
功能特性
- 多通道并行处理:支持8路独立信号的同时输入与处理。
- 高效多相滤波架构:采用多相分解技术,将高阶原型滤波器分解为多个并行低速处理的子滤波器。
- IFFT调制搬移:利用离散傅里叶逆变换实现各子信道在频域的快速定位与搬移。
- AM信号仿真:内置多频点AM基带信号生成器,用于验证不同信道的信号完整性。
- 可视化分析:提供时域波形图和频域响应图,直观展示输入信号、合成信号及滤波器特性。
系统要求
- 运行环境:MATLAB R2016a 及以上版本(需包含 Signal Processing Toolbox)。
- 硬件要求:标准PC即可,无特殊计算资源需求。
使用方法
- 打开MATLAB软件,定位到项目所在目录。
- 直接运行主脚本(main.m)。
- 程序将自动执行信号生成、滤波器设计、信道化处理及绘图。
- 运行结束后,会弹出一个综合图形窗口,展示仿真结果。
详细功能实现与算法逻辑
本项目的主程序脚本完整地模拟了信道化发射机的全链路过程,具体实现逻辑如下:
1. 系统参数定义
程序首先定义了系统的基础时钟与架构参数。设定插值因子(通道数)M为8。基带采样率设定为25KHz,经8倍插值后,输出的宽带采样率为200KHz。仿真时长设定为0.5秒。
2. AM基带信号生成
系统模拟生成8路并行的AM信号包络。
- 频率分配:为了在输出端区分各信道,分配了从500Hz到5000Hz不等的调制频率。
- 信号模型:采用 $1 + m_a cos(2pi f t)$ 的公式生成实数基带信号。这里模拟的是AM信号的包络部分(即直流分量加调制讯号),作为数字上变频模块的输入。
- 数据结构:生成的数据存储为一个 $8 times N$ 的矩阵,每一行代表一个信道的数据流。
3. 原型低通滤波器设计
这是保证信道间隔离度的关键步骤。
- 参数计算:每个多相分支依然设定了16个抽头(Taps),使得总滤波器阶数为 $8 times 16 - 1$。
- 设计方法:使用 Kaiser窗函数 设计FIR低通滤波器。
- 截止频率:归一化截止频率设定为 $1/M$,对应于基带采样率的奈奎斯特频率,确保插值后的镜像频谱能被有效滤除。
4. 多相滤波器分解 (Polyphase Decomposition)
程序实现将单一的高阶原型滤波器分解为一组并行的多相分量。
- 分解逻辑:按照第一类多相分解规则,将原型滤波器系数 $h(n)$ 进行抽取。
- 矩阵化:生成一个 $8 times 16$ 的系数矩阵,矩阵的第 $k$ 行对应第 $k$ 个多相分量滤波器。
5. 信道化合成处理 (核心算法)
这是代码中最核心的信号处理部分,采用了
IFFT-Polyphase-Commutator 的经典结构:
- IFFT预处理:对输入信号矩阵的每一列(即每个时间点的跨通道数据)执行8点离散傅里叶逆变换(IFFT)。此步骤将输入信号变换到对应的子频带位置,并乘以因子8以补偿IFFT带来的幅度缩放。
- 多相滤波:经过IFFT变换后的数据,每一行分别送入对应的多相分量滤波器进行卷积处理。程序利用
filter 函数并维护滤波器状态 zi,模拟实际硬件中的流式处理。 - 并串转换 (Commutator):利用
reshape 函数实现换向器功能。将8路并行的滤波输出数据按列读取并重排为一维向量。这一步在时域上实现了插值操作,将数据率提升了8倍,最终输出宽带合成信号。
6. 结果可视化
程序最后通过绘图模块展示系统性能:
- 输入信号图:选取第1、4、8通道展示原始基带波形。
- 输出信号图:展示合成后的宽带信号局部时域波形,验证信号的连续性。
- 滤波器响应图:绘制原型滤波器的幅频响应,验证其低通特性和阻带衰减性能。
- 多相分量响应图:在一个坐标系中叠加绘制不同多相分支的频率响应(代码末端逻辑),展示各分支滤波器的特性差异。
关键算法与函数分析
fir1 & kaiser:用于设计具有良好旁瓣抑制特性的有限脉冲响应(FIR)滤波器,确保信道间串扰最小化。ifft:核心运算单元,相较于直接使用多个振荡器进行混频,IFFT极大地降低了运算复杂度,一次性完成了所有信道的频域搬移准备。filter:实现了时域离散卷积,仿真了FPGA或DSP中的FIR处理单元。reshape:巧妙地实现了“并转串”操作。在多速率信号处理中,这对应于多路选择开关在不同支路间快速切换,从而实现采样率的提升。