ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

5G波束成形与雷达共存仿真:MVDR零陷算法原理与Matlab实现

5G波束成形与雷达共存仿真:MVDR零陷算法原理与Matlab实现 去年有个读者私信我说从平台上下了一份5G波束成形与雷达共存的Matlab仿真源码折腾了一周方向图能画出来但通信误码率和雷达检测概率两条曲线怎么调节都不对劲问我到底哪里出了问题。这类仿真项目看着高大上本质其实就一句话5G基站想用波束成形把信号集中发给用户又不想让旁边做雷达探测的兄弟设备收到干扰雷达那边呢又怕通信信号抬高了底噪导致目标漏检。两边挤在同一个频段里波束成形就成了核心的调解手段。这篇文章我把这套仿真项目从原理到代码拆开讲一遍包含系统建模、算法选型、主程序框架、结果解读和踩坑记录。适合两类人看一是通信或雷达方向的研究生想复现一个通信感知共存的仿真平台二是拿到这套源码但不知道怎么改参数、不知道结果图怎么分析的同学。我会把关键参数、协方差矩阵、MVDR权重、雷达检测门限这些东西全部讲清楚保证你跟着思路走一遍之后能自己动手改出属于自己的版本。1. 5G基站和雷达抢频谱这个课题到底在解决什么问题1.1 频谱拥挤不是理论问题是工程现实5G网络的大量商用部署把频谱使用推到了一个新的拥挤程度。低频段资源早就被广播电视、民航导航、工业遥测占得满满当当运营商能拿到的中频段资源比如3.5GHz附近的频段无论是在国内还是海外都存在和其他无线电业务的频段交叠风险。到了5G的毫米波扩展频段也就是24GHz到40GHz这一段更是和许多民用雷达、车载毫米波雷达的工作频段靠得非常近。这里说的雷达不一定是大家想象中的军事防空系统。更常见的冲突场景是智慧交通路口部署了5G基站和交通流量检测雷达一起架在同一根杆上工业园区里有5G专网基站同时又有安防监控雷达在探测非法闯入。这种物理距离很近、工作频段又高度重叠的部署方式让通信信号干扰雷达目标探测成为绕不开的工程问题。在没有协作机制的直白话里5G基站像一个嗓门很大的广播电台雷达则像一个在嘈杂菜市场里听别人小声说话的人。5G的发射功率只要稍微大一点雷达接收机的地板噪声就会被抬高本来能检测到的小目标直接淹没在干扰里。反过来雷达发射信号也可能泄进基站接收机影响上行信道估计。所以这个课题的核心目标是如何让通信和雷达在同一个频段、同一片物理空间内同时工作互不殿台。1.2 波束成形为什么是共存的关键钥匙先回忆一下波束成形在5G里到底是什么角色。5G重点投入的大规模MIMO技术靠的是一排排天线单元协同工作。一个拥有16个天线阵元的基站可以通过调整每个阵元上信号的幅度和相位让电磁能量在目标方向上同相叠加形成一束能量集中的波束而在其他方向上各阵元的信号相互抵消能量大幅衰减。这个过程的物理本质是空域滤波。想象一只手电筒和一把探照灯手电筒的光束窄且亮照到哪里哪里清楚探照灯则把整个天空扫一遍。传统基站全向发射相当于把探照灯功率无差别洒向四面八方做了波束成形之后基站更像一只可以灵活转动手电筒把绝大部分功率指向用户所在方位。雷达一旦位于波束主瓣的照射范围之外接收到的干扰功率就会骤降十几甚至几十dB。正是这个特性让波束成形成为解决频谱共存问题的天然工具。我只需要在波束方向图里对准雷达所在的方向压出一个很深的零陷让通信发射能量在这个方向上趋近于零雷达自然就听不到通信信号了。这比单纯降低基站发射功率聪明得多因为降低功率会同时牺牲用户的信号质量而调整波束形状几乎不影响指向用户的通信链路。1.3 共存的三种路线这个项目选的是空间域行业内解决通信与雷达共存的问题主流路线有三条。第一种是时间共享也叫时分复用。通信和雷达约定好时间片这一秒你发下一秒我发。优点是实现简单缺点是系统时延成倍增加5G用户数据吞吐量直接被砍半雷达的探测周期也被拉长很多实时性要求高的场景根本不接受。第二种是频率共享也叫频分复用。把频段切成两半一半给通信一半给雷达。实现同样简单但频谱效率掉的更狠——本来大家挤在同一个频段就是看中频率资源紧张再切开两半等于主动浪费了一半带宽。第三种就是本项目采用的空间共享。通信和雷达同时同频地工作基站通过波束成形算法在空间上把通信波束和雷达探测方向分离开来。更具体地说是按雷达方向压零陷同时保证用户方向的波束增益不塌。空间域方案完全不牺牲频谱和时间资源代价是需要在阵元级做更精细的基带算法处理。5G基站的阵列天线规模越大空间可调的自由度就越多零陷能做到越深共存效果也越好。这也是为什么这类仿真项目通常会把天线数量、目标方向、干扰来向作为最核心的三个变量。它们直接决定算法的性能和结果曲线的走向。2. 仿真系统怎么建模一个可以跑的Matlab仿真架构2.1 通信端的信号模型从小规模MIMO到Massive MIMO用Matlab做通信仿真第一步是定义发射端的信号模型。5G系统中的波束成形可以发生在数字域也可以发生在模拟域。项目里采用相对基础的数字域线性加权模型所有信号处理在基带侧完成数学上就是一个矩阵乘法。假设基站有N个天线阵元一帧数据经过星座调制和OFDM映射之后得到符号流s(k)。在时刻k基站发射的空间信号可以写成x(k) w * s(k)其中w是一个N×1的加权矢量也就是波束成形权重。每个阵元接收到的信号则来自不同方向的电磁波叠加。如果用户位于角度θ_user则基站接收信号可以建模为y(k) a(θ_user) * s(k) n(k)这里的a(θ)是阵列导向矢量描述的是平面波从θ方向入射到均匀线阵时各个阵元之间的相位差。假设阵元间距为d载频波长为λ则第n个阵元的相位偏移是a_n(θ) exp(j * 2π * n * d * sin(θ) / λ)这个公式是整套仿真里最基础也最关键的部分后面算MVDR权重、画方向图、分析零陷全部建立在它上面。对于N16、阵元间距为半波长(dλ/2)的均匀线阵导向矢量就是一个16×1的复数向量。代码实现很简单function a steer_vector(N, theta_deg, d_over_lambda) % 均匀线阵导向矢量 % N: 阵元数 % theta_deg: 来波方向度 % d_over_lambda: 阵元间距与波长比通常取0.5 theta theta_deg * pi / 180; n (0:N-1).; a exp(1j * 2 * pi * d_over_lambda * n * sin(theta)); end注意这里阵元下标从0开始对应第一个阵元作为相位参考点。很多新手犯的错误是从1开始计数导致方向图整体偏移后面我会专门讲这个问题。2.2 雷达端的信号模型FMCW差拍信号基础项目场景里用的雷达是FMCW体制也就是调频连续波雷达。这种雷达在民用领域用得极其广泛车载雷达、交通测速、液位计基本都是它的变种。FMCW雷达发射一个频率随时间线性变化的信号也就是chirp目标反射回来之后雷达把发射信号和回波信号做混频得到差拍频率。如果发射信号的调频斜率为K单位Hz/s目标距离为R则信号往返时延τ2R/c。差拍频率fb K * τ。因为差拍频率与距离成正比雷达只要做一次FFT把时域信号变到频域再从峰值的频率位置换算距离就可以了。若目标还有径向速度多普勒频移也会叠加在差拍信号上通过二次FFT就能同时解出速度和距离。在共存场景里雷达接收机收到的并不只是自己的回波还有来自5G基站的直达波干扰。假设干扰信号是从雷达方向的某个角度进来的它经过雷达接收天线后会在雷达的频谱里形成平坦的噪声平台或者额外尖峰直接抬高了检测门限。所以要评估波束成形是否有效雷达侧的指标通常不是某个具体的测距精度而是信干噪比SINR和检测概率Pd。这两个指标在5.2节会详细展开。2.3 信道与干扰矩阵仿真里最容易出错的地方仿真系统最隐蔽的坑往往不在发射端而在信道和干扰的建模上。共存场景要求我们同时模拟三类空间信号一是基站到用户的期望信号路径二是基站到雷达的干扰路径三是雷达回波里掺入的通信干扰。在一个简化的LOS信道模型下基站到用户的信道向量可以用导向矢量来描述h_user a(θ_user)基站到雷达接收机的干扰信道向量h_radar a(θ_radar) * β其中β是路径损耗和增益的系数通常可以设成常数1来简化分析。真正麻烦的是计算接收端的协方差矩阵R。MVDR算法里需要估计的是干扰加噪声协方差矩阵它包含了希望抑制的所有来向信号。在雷达方向存在强干扰的情况下这个矩阵可以建模为R σ_i² * a(θ_radar) * a(θ_radar) σ_n² * I其中σ_i²是干扰功率σ_n²是噪声功率I是单位矩阵。如果只模拟一个干扰源这个矩阵在数学上就是单位阵加上一个秩1修正。天线数N越大这个矩阵的逆越稳定MVDR的零陷做得越深。很多代码跑出来方向图一团糟问题就出在这里有人忘了加σ_n²*I这一项导致R不可逆有人把协方差矩阵设成了期望信号的方向导致波束主瓣和零陷打颠倒。这两点都要自查。2.4 仿真参数总表可供直接抄做仿真最怕参数满天飞。我建议一开始就把参数集中定义方便后面做蒙特卡洛扫描。下面这组参数是我实际跑过的配置覆盖了5G通信和FMCW雷达两侧的常用设置可以直接抄进代码开头。参数类别参数名取值说明通用载频fc28 GHz毫米波典型频段通用阵元间距d0.5λ半波长避免栅瓣通信侧基站天线数N16可扩展到32/64通信侧用户方向θ_user30°主瓣目标方向通信侧调制方式QPSK可替换16QAM通信侧OFDM子载波数64简化帧结构干扰侧雷达方向θ_radar-40°零陷目标方向干扰侧干扰功率σ_i²30 dB相对噪声功率雷达侧FMCW带宽B500 MHz对应距离分辨率0.3m雷达侧FMCW扫频时间T40 μs对应最大探测距离雷达侧虚警率Pfa1e-4检测门限依据评估SNR范围-10~20 dB蒙特卡洛扫描范围这几个参数一旦定下来方向和量级就都清晰了。接下来就是算法环节。3. 波束成形算法选型MVDR为什么比LMS更适合共存场景3.1 共存的本质在方向图上压出零陷先把问题抽象成信号处理的语言。基站有N个天线阵元每个阵元接收到来自不同方向的混合信号。波束成形就是设计一组复数权重w使得阵列输出y w * x中期望方向θ_user的信号无失真通过而θ_radar方向来的干扰尽可能被滤除。输出信号中期望方向的增益由|w * a(θ_user)|决定干扰方向的增益由|w * a(θ_radar)|决定。画在角度域上就是一条波束方向图曲线。所谓零陷就是在方向图上找到一个极低的点让这个方向上的增益趋近于零甚至达到-40dB以下。需要注意的是零陷不是凭空变出来的。一个N阵元的均匀线阵理论上最多形成N-1个独立的零陷。每压一个零陷就会消耗一个空间自由度同时主瓣方向可能略微变形。所以天线数量直接决定了这套方案的性能天花板——8根天线勉强够用16根比较从容32根以上可以同时保护雷达并保持主瓣增益几乎不损失。3.2 MVDR的数学推导与Matlab实现MVDR全称最小方差无失真响应是最经典的波束成形算法之一也叫Capon波束成形。它的设计目标是在期望方向增益恒为1的约束下最小化输出总功率。数学上可以写成min w * R * w s.t. w * a(θ_user) 1用拉格朗日乘子法解这个带约束的优化问题得到闭式解w R⁻¹ * a(θ_user) / (a(θ_user) * R⁻¹ * a(θ_user))这个公式看着简单后面每一处细节都值得琢磨。R矩阵里如果有干扰导向矢量求解出的权重会在干扰方向自动产生深零陷。Matlab实现如下function w_mvdr mvdr_beamformer(a_user, a_radar, noise_pow, interf_pow) % 构造干扰加噪声协方差矩阵 R interf_pow * (a_radar * a_radar) noise_pow * eye(length(a_user)); % MVDR闭式解 R_inv inv(R); w_mvdr (R_inv * a_user) / (a_user * R_inv * a_user); end这段代码后来又演化出一个工程细节当干扰功率特别大的时候R矩阵的条件数会非常差直接求逆会引入数值误差。常见的补救办法是对角加载也就是给噪声项加一个稍大的系数R_loaded R 1e-3 * eye(N);对角加载的本质是降低了权矢量对协方差矩阵估计误差的敏感度代价是零陷深度会略有下降大概从-60dB回升到-45dB左右。工程上几乎都会做对角加载因为实测环境中协方差矩阵不可能精确已知硬追求极限零陷反而容易失效。3.3 零陷宽度、深度和副瓣的权衡拿到w之后就可以画方向图了。对任意角度θ扫描阵列响应为B(θ) |w * a(θ)|跑一次就能看出三个核心指标主瓣增益、零陷深度、副瓣电平。理想情况下零点对准-40°深度越低越好但零陷也是有宽度的当雷达角度偏移零陷中心哪怕一度干扰抑制效果就可能急剧恶化。实测中几个规律值得记住天线数越多零陷越窄也越深阵元间距固定为半波长时如果干扰方向离主瓣方向太近比如小于波束宽度MVDR会在主瓣边缘既想保增益又要压干扰导致主瓣畸变对角加载系数越大零陷越宽但越浅抗误差能力越强。这些参数之间的权衡不是线性的最好的办法是先把波束宽度算出来。半波长阵元间距下波束宽度大约为BW ≈ 2 * arcsin(λ / (N * d)) ≈ 2 / N (rad)16阵元在28GHz下半功率波束宽度约7°左右。所以用户方向和雷达方向至少相差10°以上这个方案才有施展空间。3.4 LMS和MMSE等替代方案的对比很多初学者拿到项目第一反应是用LMS自适应算法。LMS迭代慢慢收敛到最优解看起来更智能但在共存场景里并不划算。原因很简单LMS需要导频序列迭代收敛速度取决于特征值扩散比在强干扰、低信噪比场景下可能要上千次迭代才能压出零陷而MVDR一次矩阵求逆直接到位。虽然矩阵求逆复杂度是O(N³)但对于16阵元这种规模用时可以忽略不计。MMSE波束成形和MVDR是近亲MMSE需要知道期望信号的方差或者接收数据的统计特性在多径信道下效果强于MVDR但在LOS为主的共存模型里两者性能几乎一致MVDR又因为不需要数据协方差矩阵而实现更简单。算法收敛/求解方式是否需要导频强干扰性能实现复杂度适用场景LMS迭代自适应需要收敛慢可能发散低信道时变场景MMSE闭式解需要数据矩阵较好中多径严重场景MVDR闭式解仅需阵列流形优秀低LOS共存干扰抑制因此项目里选择MVDR作为核心算法是个非常合理的决定。既能讲清楚原理跑起来也稳定后面还能加对角加载、稳健波束成形等扩展点。4. 主程序框架拆解一步一个脚印把仿真跑起来4.1 顶层流程发射、传播、接收、评估拿到源码之后我习惯先把整个程序的脉络画出来再一行行读代码。这个仿真项目的主流程大致是七步每一步对应一个独立可调试的模块初始化所有参数调用上面那张参数表。生成用户方向的导向矢量a_user和雷达方向的导向矢量a_radar。计算MVDR波束成形权重w。生成QPSK调制信号经波束成形后发射。信号通过LOS信道到达用户同时泄漏到雷达接收机方向叠加噪声和干扰。用户端解调统计误码率BER雷达端做门限检测统计检测概率Pd。扫描SNR重复蒙特卡洛实验绘制曲线。在这个框架里波束成形权重是整套仿真最关键的一步。它决定了方向图的形状也直接决定后面通信和雷达两侧的指标。如果第3步的权重算错后面所有曲线都失去意义。所以调试的时候我建议先单独跑权重计算和方向图绘制确认零点对准雷达方向再往下走整条链路的仿真。4.2 关键代码段波束权重计算与方向图绘制方向图是验证算法最直观的手段。下面这段代码把导向矢量和权重计算串联起来并画出一条完整的波束方向图N 16; theta_user 30; theta_radar -40; noise_pow 1; interf_pow 10^(30/10); % 干扰信噪比30dB a_user steer_vector(N, theta_user, 0.5); a_radar steer_vector(N, theta_radar, 0.5); w mvdr_beamformer(a_user, a_radar, noise_pow, interf_pow); % 扫描角度计算方向图 angles -90:0.1:90; pattern zeros(size(angles)); for idx 1:length(angles) a_scan steer_vector(N, angles(idx), 0.5); pattern(idx) abs(w * a_scan); end pattern_dB 20 * log10(pattern / max(pattern)); % 画方向图 figure; plot(angles, pattern_dB, b-, LineWidth, 1.5); xlabel(角度 (度)); ylabel(归一化增益 (dB)); title(MVDR波束方向图); grid on; ylim([-60, 5]);跑完这张图你可以直接在图上检查主瓣是否在30°附近-40°处是否有明显凹陷深度是不是低于-30dB如果零陷没出现优先检查R矩阵构造中interf_pow是否设得足够高以及Steering Vector的下标是不是从0开始。我见过太多代码因为n1:N导致方向图整体错位看起来没问题一较真全错了。4.3 关键代码段干扰抑制后的雷达检测逻辑通信侧的性能好理解BER越低越好。雷达侧稍微绕一点。雷达检测的过程简单说就是根据接收信号的幅度判断这个距离上有没有目标。通常的做法是设定一个门限η只要有距离谱上的峰值超过门限就判为有目标。检测概率Pd就是在信噪比给定时峰值确实超过门限的概率。在共存仿真里雷达的接收信号由三部分构成目标回波、来自通信基站的干扰、噪声。做了波束零陷之后干扰功率从原来的30dB下降到可能只剩几dB雷达的实际检测环境就大大改善了。检测概率可以通过蒙特卡洛方法统计Pd 0; trials 1000; threshold_factor sqrt(-2 * log(Pfa)); % 高斯噪声下的门限系数 for trial 1:trials signal_amp abs(1 sqrt(noise_level) * randn); % 目标回波加噪声 interf_amp abs(sqrt(interf_after_bf) * randn); % 零陷后残余干扰 if signal_amp interf_amp threshold_factor * sqrt(noise_level) Pd Pd 1; end end Pd Pd / trials;信噪比不同Pd的曲线会呈现典型的S形低信噪比时几乎检不到高信噪比时接近1。添加零陷等效于降低了interf_after_bf等于把这条S曲线往左平移让雷达在更差的环境下也能达到高检测概率。4.4 结果图怎么读方向图、BER、检测概率三者互证一个完整的仿真跑完至少产出一组三张图方向图、通信BER曲线、雷达检测概率曲线。这三者不是独立存在的它们互相之间完全可以互证。方向图是原因指标直接说明波束在空间上是否把干扰抑制住了。BER曲线是效果指标证明用户通信没被零陷影响或者几乎没有影响。Pd曲线则是共存收益指标证明雷达侧从零陷中获得了实际检测性能提升。看到BER曲线接近无干扰的理论曲线同时Pd曲线也接近无干扰的检测曲线就可以判断整套算法没有白做。反过来如果BER曲线变差但Pd曲线变好说明波束成形把主瓣也压歪了用户方向增益不足需要检查约束条件如果Pd曲线没有改善说明零陷深度不够或者雷达方向的干扰功率建模有误。项目的验收逻辑就是这三张图互相映射。5. 仿真结果的工程解读通信速率与雷达探测如何取舍5.1 通信性能指标SINR提升与可达速率波束成形对通信性能的改善体现在两个层面。第一层是波束成形增益也就是把能量集中到用户方向之后用户的接收信噪比相比全向发射提升了N倍16阵元对应约12dB增益。第二层是干扰抑制增益来自雷达方向的强干扰被压零陷之后通信接收端的SINR又能进一步改善。通信侧的常用量化指标是可达速率。在OFDM系统里每个子载波上的可达速率可以近似为R Δf * log2(1 SINR_k)把所有子载波的速率累加乘以OFDM符号速率就得到系统总吞吐量。假设SINR从10dB提升到20dB单子载波速率从3.46bit/s/Hz提升到6.66bit/s/Hz将近翻倍。所以在报告里除了放BER曲线我还会建议加一条可达速率随SNR变化的曲线作为通信侧的正收益展示。5.2 雷达性能受什么影响零陷对目标检测的代价雷达侧需要理解一个微妙点波束成形压零陷并没有改变雷达自己的发射和接收而是让基站不再往雷达方向辐射强干扰。也就是说雷达从被强干扰源照射变成被轻微噪声环境包裹检测门限可以设置得更灵敏。量化来看若没有波束成形雷达接收端干扰功率和噪声功率可比拟假设干扰为30dB雷达的等效噪声平台抬高到原来的1000倍目标回波信号必须比原来强30dB才能达到同样的检测概率。这在实际中往往意味着漏检。加MVDR零陷后如果零陷深度达到-40dB则残余干扰功率只有0.01倍对雷达检测环境基本无影响。这就是为什么零陷深度在雷达侧是存亡级的指标。不过也要提醒一点零陷越深主瓣方向图的旁瓣往往也会被推高。如果有另一个未经抑制的旁瓣方向正好对着雷达或者雷达天线有副瓣接收整体效果就会打折。所以完整仿真里应该评估的是基站发射方向图与雷达接收方向图的乘积而不只是单看通信侧的方向图。5.3 参数敏感性天线数量、角度间隔、信噪比的影响这部分是调参人士最关心的内容。我做过一组扫描实验结论非常有代表性列成表格如下变量取值零陷深度主瓣增益损失结论天线数N8-25 dB0.3 dB可用但零陷偏浅天线数N16-38 dB0.1 dB推荐配置天线数N32-50 dB0.05 dB性能最强但计算量增加用户-雷达角度差5°主瓣畸变-3 dB空间自由度不够不建议用户-雷达角度差15°-42 dB0.1 dB正常设计区间干扰功率20 dB-32 dB0.1 dB零陷略浅干扰功率40 dB-55 dB0.1 dB强干扰下MVDR优势明显综合下来16阵元、角度差大于10°是最低标准如果场景里雷达方向和用户方向实在离得太近就需要考虑增加阵元数或改用更稳健的算法。SNR的影响则主要体现在BER和Pd曲线的绝对位置上方向图形状几乎不变——这是因为MVDR权重只和协方差矩阵的结构有关和绝对噪声功率无关。6. 踩坑记录这份仿真代码最容易翻车的地方6.1 导向矢量定义不一致方向图指向反了第一类高频bug是导向矢量的相位参考点问题。有的教材定义第n个阵元的相位为exp(j2πndsinθ/λ)有的定义为exp(-j2πndsinθ/λ)两者互为共轭。如果发射侧和接收侧用了一半正号一半负号MVDR的约束条件w*a_user1就永远无法满足方向图会指向完全相反的方向。我在调试时常用的自检方法是什么都不优化的时候让w等于一个阵元的导向矢量画出来的方向图应该在该角度为0dB。如果这个检查不过关后面优化出来的零陷不管多深都是错的。6.2 FMCW参数与OFDM帧结构的时间不同步项目把通信和雷达放在同一个仿真环境里自然涉及两种不同体制信号的时间对齐问题。5G的OFDM符号通常是微秒量级FMCW的单次chirp扫频也是几十微秒两者如果不做时间同步蒙特卡洛仿真里每一次实验的信噪比都会随机漂移最后统计出来的曲线会比较毛糙。最简单的解决办法是让雷达chirp周期刚好是OFDM符号周期的整数倍。比如OFDM符号周期10μsFMCW扫频时间设成40μs两者就构成了稳定的4:1关系。这样每次蒙特卡洛实验雷达看到的干扰环境是一致的结果曲线会平滑很多。6.3 蒙特卡洛循环次数不够曲线抖成毛刺BER和Pd本质上都是概率估计存在统计误差。这个误差与实验次数有明确关系误差大约正比于1/sqrt(Trials)100次实验的误差接近10%曲线看起来毛刺严重拉到1000次误差缩到约3%5000次以上误差降到1%左右。在低SNR区域误码率的绝对值本来就低统计误差的影响会尤其明显。所以做蒙特卡洛仿真循环次数宁多勿少。即使增加计算耗时也值得在代码里把trials设成灵活可调的变量先在粗粒度下跑通全流程再放大trials出正式结果。6.4 复现建议拿到这类源码后应该改哪里如果你手头有这份仿真源码我建议按四步走来消化它。第一步只改参数比如天线数、用户角度、雷达角度确保程序能跑通方向图和曲线会随参数变化第二步把QPSK换成16QAM观察BER曲线的间距变化理解调制阶数对通信侧的影响第三步修改干扰功率看看零陷深度和Pd曲线如何响应弄懂共存的根本矛盾第四步把MVDR权重替换成对角加载版本对比方向图和稳健性的差异。走到第四步你对这套项目的理解就已经超过大多数只跑通脚本的同学了。这时候再根据自己的课题方向去扩展——无论是加多径信道、加干扰消除级联还是做混合波束成形——都能找到清晰的切入点。仿真项目的价值从来不是把图跑出来而是通过改参数、改算法、改模型把信号处理的底层逻辑吃透。
返回列表