阵列天线方向图MATLAB仿真:从阵因子理论到切比雪夫低旁瓣综合

发布时间:2026/9/18 17:43:31
阵列天线方向图MATLAB仿真:从阵因子理论到切比雪夫低旁瓣综合 简介面向阵列天线方向图学习与仿真的文档压缩包适合电子信息、通信工程等专业学生及天线设计初学者阅读。文档系统讲解阵列天线波束形成原理与方向图函数推导重点介绍方向图相乘原理在多元天线阵中的应用并在此基础上给出三组MATLAB示例程序分别控制阵列个数n、波长lamda、阵元间距d变化绘制方向图曲线并对比分析变化规律。包体仅1个doc文件97KB内容紧凑便于打印或导入笔记软件文中的源程序与仿真图配合讲解可直接按步骤运行复现帮助读者理解参数对主瓣、副瓣和收敛性的影响。资源已有344人学习下载对于正在完成阵列天线课程设计或准备相关实验报告的人群具有较强参考价值。1. 阵列天线方向图比 S 参数更值得先看的那条曲线做天线的人刚接触阵列时往往习惯先看 S11、看驻波觉得匹配好了天线就通了。但阵列天线和单天线最大的不同在于它的辐射特性不再由单元独自决定而是由单元之间的干涉共同决定——同一个阵列换一组馈电幅度和相位主瓣指向、波束宽度、旁瓣电平会发生剧烈变化而 S11 几乎纹丝不动。方向图才是阵列天线的指纹。这就是为什么阵列天线方向图及其 MATLAB 仿真这个题目几乎所有微波工程课程都会作为大作业或毕业设计出现它要求你从阵因子理论出发自己写代码把方向图综合、波束扫描、低旁瓣加权这套流程跑通。这篇博文就按理论 - 代码 - 综合 - 验证的顺序把方向图计算和 MATLAB 仿真的完整套路拆开讲。无论是准备课程报告还是工作中需要快速评估一个阵列方案本文给出的脚本和参数表都能直接改着用。2. 方向图乘积定理阵列方向图仿真的理论地基2.1 阵因子与单元因子的拆分阵列天线方向图仿真里最核心的公式只有一个——方向图乘积定理。它的表述非常简洁一个阵列的远场方向图等于单元方向图Element Pattern和阵因子Array Factor的乘积。这个定理成立的前提是单元间互耦可以忽略或者互耦效应已经折算进单元方向图里。工程上做初步综合时通常直接把单元方向图简化成 cos 函数形式比如一个沿 z 轴放置的贴片天线单元方向图近似为% 单元方向图: 假设沿 z 轴放置的贴片, 用 cos(theta)^q 近似 theta linspace(-pi/2, pi/2, 181); % 半空间角度 q 1; % 贴片阶数, q越大波束越窄 element_pattern cos(theta).^q;这段代码里linspace(-pi/2, pi/2, 181)把角度从 -90 度到 90 度均匀切了 180 份q控制单元波束的窄宽。实际工作中q 的取值可以通过全波仿真提取比如用 HFSS 仿真单个贴片天线后把远场方向图导出来再拟合出 q 值。这里先不展开继续看阵因子。阵因子是阵列仿真里真正要动手算的部分。对于 N 个各向同性单元组成的线阵阵因子的通用形式为% 均匀线阵阵因子 N 8; % 阵元数 d 0.5; % 阵元间距, 单位: 波长 alpha 0; % 单元间相位差, 单位: 弧度 theta linspace(-pi/2, pi/2, 181); AF zeros(size(theta)); for k 1:N AF AF exp(1j * k * (2*pi*d*sin(theta) - alpha)); end AF abs(AF); AF AF / max(AF); % 归一化这段代码的循环写法比较容易理解每个阵元的相位贡献是k * (2*pi*d*sin(theta) - alpha)其中2*pi*d*sin(theta)是空间相位延迟alpha是馈电相位。N 个阵元依次叠加最后取模、归一化。将单元方向图和阵因子相乘得到的乘积方向图才是阵列的真实响应。乘积定理的工程意义在于它把阵列设计拆成了两个相对独立的环节——先确定单元再确定阵因子。单元不好换但阵因子完全由 N、d、alpha 这三个参数控制仿真时可以非常自由地调节。2.2 从公式到 MATLAB 代码的三个参数对应关系很多人在这一步犯的错误是只算阵因子把单元方向图当作 1 来处理。对全向单元如偶极子垂直于纸面摆放时H 面方向图确实是全向的这样做没问题但工程上大多数微带贴片、喇叭天线都不是全向的。正确做法是把乘积定理写进代码% 方向图乘积定理的MATLAB实现 P_total element_pattern .* AF_normalized; % 逐元素相乘 P_total_dB 20*log10(P_total eps); % 转dB, 加eps防止log(0)这里有个细节值得注意AF归一化和element_pattern归一化必须各自独自完成再相乘。如果先乘后归一化会把两者的相对关系搞混。20*log10(P_total eps)里的eps是 MATLAB 内置的极小值用来避免取对数时出现 -Inf。在代码里阵元数 N、阵元间距 d、单元间相位差 alpha 是三个直接可见的调优参数。N 增加主瓣变窄、增益升高d 增大主瓣同样变窄但旁瓣也会升高甚至会引入栅瓣alpha 改变主瓣方向发生偏转。理解了这三个参数的独立作用后面做波束扫描和低旁瓣综合时就不容易绕晕。参数主瓣宽度旁瓣电平栅瓣风险典型取值N阵元数增大则变窄基本不变无8~32d间距/λ增大则变窄升高d ≥ 1 时可能0.4~0.7alpha相位差不变基本不变扫描角过大时出现-π ~ π表格里的数字是理论结论。实际仿真中d 超过 0.7 个波长后旁瓣会明显抬高d 接近 1 个波长时栅瓣就会进入可见空间这些都是可以在 MATLAB 脚本里几秒钟验证的事。3. 均匀线阵方向图的 MATLAB 完整实现3.1 一个可直接使用的方向图仿真函数把上一章的思路整理成一个可复用的函数是工程习惯。下面这个函数接受 N、d、alpha、角度范围作为输入输出极坐标方向图和直角坐标方向图function [theta, AF_dB] array_pattern(N, d, alpha, scan_theta) % 均匀线阵方向图仿真 % 输入: % N - 阵元数量 % d - 阵元间距 (波长倍数) % alpha - 馈电相位差 (弧度) % scan_theta - 角度扫描范围, 如 [-90, 90] (度) % 输出: % theta - 角度向量 (度) % AF_dB - 归一化阵因子 (dB) theta_deg linspace(scan_theta(1), scan_theta(2), 1000); theta theta_deg * pi / 180; % 转弧度 AF zeros(1, length(theta)); for k 0:N-1 AF AF exp(1j * k * (2*pi*d*sin(theta) - alpha)); end AF abs(AF); AF_dB 20*log10(AF/max(AF) 1e-6); % 极坐标方向图 figure; polarplot(theta, AF_dB 30); % 30是为了让负dB值可见 title(极坐标方向图); % 直角坐标方向图 figure; plot(theta_deg, AF_dB, LineWidth, 1.5); grid on; xlabel(角度 (度)); ylabel(归一化幅度 (dB)); title(直角坐标方向图); axis([scan_theta(1), scan_theta(2), -40, 0]); end这个函数里有两个值得留意的设计一是角度采样点取了 1000 个保证主瓣和旁瓣的细节不会因为采样不足而丢失二是AF_dB 30的偏移量因为 dB 值都是负数直接画极坐标图会把零点附近的曲线全部挤在圆心加一个偏移量之后-30dB 以下的旁瓣能看得更清楚。调用方式非常直接theta, AF_dB] array_pattern(8, 0.5, 0, [-90 90]);这里 N8、d0.5λ、alpha0得到的是一个侧射阵broadside array方向图主瓣指向 0 度第一旁瓣约 -13.3dB符合均匀线阵的理论值。你可以试着把 N 改大比如改成 16第一旁瓣的电平仍然是 -13.3dB 左右但主瓣宽度会显著变窄——这正好呼应了上一章表格里N 增大则主瓣变窄旁瓣电平基本不变的结论。3.2 波束扫描仿真alpha 与指向角的关系改变相位差 alpha 可以让主瓣偏离侧射方向这就是相控阵波束扫描的原理。这里的关键公式是主瓣峰值出现在sin(theta_0) alpha / (2*pi*d)处因此 alpha 的换算关系是% 从期望指向角反算alpha theta_0 30; % 期望波束指向 (度) d 0.5; % 间距为半波长 alpha 2*pi*d*sind(theta_0); % 反算单元间相位差 % 调用上面定义的函数 theta, AF_dB] array_pattern(8, d, alpha, [-90 90]);仿真出来会看到主瓣峰值正好出现在 30 度位置。但伴随而来的是波束扫描后主瓣宽度会略微展宽第一旁瓣会变得不对称一侧升高、一侧降低。这是因为阵列投影口径随扫描角增大而减小等效于口径尺寸变小。当 d0.5λ 时最大扫描角约 90 度也就是端射方向。如果 d0.4λ最大扫描角会变小超过之后主瓣会发生畸变。实际工程中d 通常取 0.5λ 到 0.6λ这样既能保证扫描范围又不至于让栅瓣出现。再多说一句如果 alpha 超过理论计算值扫描角对应的 sin 值会超过 1方向图上主瓣消失变成一堆杂散的瓣这是仿真发散的一种常见表现——但这不是求解器发散是你给的参数越界了。3.3 栅瓣的产生条件与可视化验证栅瓣是阵列天线仿真里最先遇到的坑。它的出现条件可以用一个不等式判断% 栅瓣判断: d/lambda 1/(1sin(theta_0)) 时出现栅瓣 d 1.0; % 改成1个波长间距 theta_0 0; % 侧射情况 criteria 1 / (1 sind(theta_0)); fprintf(临界间距: %.2f lambda, 当前间距: %.2f lambda\n, criteria, d); if d criteria disp(出现栅瓣, 需要减小阵元间距); end把这段代码放到上一节的函数环境里跑一遍d1.0λ 时方向图上除了 0 度主瓣还会在 ±90 度方向出现两个等高的栅瓣。栅瓣的物理含义是在这些方向上各个阵元的辐射在远场同相叠加和主瓣方向一样形成干涉极大值。栅瓣的工程危害很大主瓣能接收信号栅瓣同样能接收而且接收方向你不知道相当于雷达或通信系统的方向图出现了幽灵耳朵。这就是为什么相控阵天线设计里间距 d 被反复强调不能超过半波长——半波长是避免栅瓣的最保险选择d 取 0.5λ 时理论上扫描到 ±90 度也不会出现栅瓣。4. 从线阵到平面阵矩形面阵方向图的二维仿真4.1 可分离激励下的二维阵因子线阵只能控制一个维度的波束通信基站、雷达多数时候需要的是二维扫描这就必须上平面阵。最常见的平面阵是矩形栅格排布行方向 M 个单元、列方向 N 个单元。当每行的激励幅度分布和每列的激励幅度分布互相独立时学术上叫可分离分布整个面阵的阵因子可以写成两个线阵因子的乘积% 矩形面阵方向图仿真 M 8; % x方向阵元数 N 6; % y方向阵元数 dx 0.5; % x方向间距 (λ) dy 0.5; % y方向间距 (λ) % 定义二维角度扫描面 theta linspace(0, pi, 91); % 俯仰角 0~180度 phi linspace(0, 2*pi, 181); % 方位角 0~360度 [THETA, PHI] meshgrid(theta, phi); % 生成波数向量 kx 2*pi*dx*sin(THETA).*cos(PHI); ky 2*pi*dy*sin(THETA).*sin(PHI); AF_x zeros(size(THETA)); AF_y zeros(size(THETA)); for m 0:M-1 AF_x AF_x exp(1j * m * kx); end for n 0:N-1 AF_y AF_y exp(1j * n * ky); end AF_2D abs(AF_x .* AF_y); % 面阵阵因子 线阵因子乘积 AF_2D AF_2D / max(AF_2D(:));这段代码里的meshgrid是维度扩展的核心theta有 91 个采样点phi有 181 个采样点meshgrid把它们扩展成两个二维矩阵THETA和PHI这样sin(THETA).*cos(PHI)就能一次性计算出所有方位角、俯仰角组合下的波数分量。AF_x和AF_y的循环结构跟前面的均匀线阵一致区别在于这里用的是kx和ky——二维空间里阵列因子在 x 方向的相位延迟取决于sin(theta)*cos(phi)在 y 方向取决于sin(theta)*sin(phi)两者的乘积就是整个面阵的响应。4.2 用 mesh 和 surf 画三维方向图二维阵因子算完之后画图是一个容易被忽略的步骤。如果直接把 91x181 的矩阵画出来方向图的形状会非常不直观。常用的做法是把幅度转成 dB 后在球坐标系里绘制% 将线极化分量转换为直角坐标 AF_dB_2D 20*log10(AF_2D 1e-6); AF_dB_2D max(AF_dB_2D, -40); % 限制动态范围, 避免噪底干扰视图 % 球坐标转直角坐标 X AF_2D .* sin(THETA) .* cos(PHI); Y AF_2D .* sin(THETA) .* sin(PHI); Z AF_2D .* cos(THETA); figure; surf(X, Y, Z, AF_dB_2D, EdgeColor, none); axis equal; colormap(jet); colorbar; xlabel(X); ylabel(Y); zlabel(Z); title(矩形面阵三维方向图);这段代码的要点在X AF_2D .* sin(THETA) .* cos(PHI)——这里的AF_2D用的是线性值而不是 dB 值因为 surf 的坐标必须反映真实的半径距离用 dB 值会把主瓣压扁成一根针。而surf的第四个参数用AF_dB_2D来控制颜色这样既能看清方向图的形状又能通过色标分辨旁瓣电平。4.3 激励分布不可分离时的通用算法可分离分布是特例工程上很多阵列的激励分布是不可分离的比如圆形阵列、共形阵列或者为了特定旁瓣形状做了二维联合优化的阵列。这种时候上面那种先算两个线阵因子再相乘的捷径走不通需要回到最基本的概念把每个单元单独放进去求和。% 不可分离激励的通用面阵方向图算法 P zeros(size(THETA)); for p 0:M-1 for q 0:N-1 % I(p1, q1)是激励幅度, 可以来自任意加权表 amp I(p1, q1); phase (p * kx q * ky); P P amp .* exp(1j * phase); end end这个双重循环的复杂度是 O(MN点数)对 8x6 的阵列来说完全没问题但如果你要评估 32x32 的阵列建议预计算相位矩阵来消除内层循环。工程上的经验是先用可分离算法快速扫参数确定可行的设计区间再用通用算法做最终验证既快又准。5. 低旁瓣综合切比雪夫加权的 MATLAB 实现5.1 均匀加权方向图哪里不够好均匀线阵的旁瓣电平固定在 -13.3dB这个值在许多场景下不满足指标。基站天线要求第一旁瓣低于 -20dB雷达天线往往要 -30dB 以下否则旁瓣进来的干扰会直接影响测角和探测性能。压低旁瓣的做法是对阵元激励幅度进行加权——让中间阵元幅度大、边缘阵元幅度小。这就是低旁瓣综合的基本思路。MATLAB 中做切比雪夫加权最方便的工具是内置函数chebwin但它需要谢昆诺夫变换做前置计算直接把切比雪夫多项式映射到阵因子方向。对 N 元线阵调用方式如下% 切比雪夫加权: 设计目标旁瓣电平 -30dB N 10; % 阵元数 SLL_dB -30; % 目标旁瓣电平 w chebwin(N, -SLL_dB); % chebwin要求输入正数, 取负注意chebwin的第二个参数要求传入旁瓣电平的绝对值正数也就是-SLL_dB。算出来的w是一个 N 维向量每个分量就是对应阵元的激励幅度。用这个加权系数替代均匀加权就能得到等旁瓣的方向图特性。5.2 加权方向图与均匀方向图对比仿真有了一组加权系数下一步就是把它带进方向图计算公式。可以复用第 3 节的array_pattern函数逻辑稍作改动支持自定义权重% 对比均匀加权与切比雪夫加权的方向图 N 10; d 0.5; theta linspace(-pi/2, pi/2, 1000); % 均匀加权 w_uniform ones(1, N); AF_uniform zeros(size(theta)); for k 1:N AF_uniform AF_uniform w_uniform(k) * exp(1j * k * (2*pi*d*sin(theta))); end % 切比雪夫加权 SLL_dB -30; w_cheb chebwin(N, -SLL_dB); AF_cheb zeros(size(theta)); for k 1:N AF_cheb AF_cheb w_cheb(k) * exp(1j * k * (2*pi*d*sin(theta))); end % 归一化并转dB AF_uniform_dB 20*log10(abs(AF_uniform)/max(abs(AF_uniform)) 1e-6); AF_cheb_dB 20*log10(abs(AF_cheb)/max(abs(AF_cheb)) 1e-6); % 对比绘图 figure; plot(theta*180/pi, AF_uniform_dB, r-, LineWidth, 1.5); hold on; plot(theta*180/pi, AF_cheb_dB, b--, LineWidth, 1.5); grid on; legend(均匀加权, 切比雪夫 -30dB); xlabel(角度 (度)); ylabel(归一化幅度 (dB)); axis([-90 90 -50 0]);跑完这段代码你会看到两个关键变化切比雪夫加权的第一旁瓣从 -13.3dB 压到了约 -30dB所有旁瓣基本等高形成等旁瓣特征但主瓣宽度从约 10 度展宽到了约 14 度。这就是低旁瓣的代价——旁瓣压低多少 dB主瓣就要展宽相应的比例。这个 trade-off 在工程上叫口径效率损失。均匀分布口径效率最高波束最窄切比雪夫加权把一部分能量分配给旁瓣抑制主瓣方向上的增益就会下降。下表总结了不同旁瓣目标下的实测仿真结果权重类型第一旁瓣电平主瓣宽度 (-3dB)增益损失均匀-13.3 dB10.2°0 dB切比雪夫 -25dB-25 dB11.5°~0.5 dB切比雪夫 -30dB-30 dB12.8°~0.8 dB切比雪夫 -40dB-40 dB15.1°~1.5 dB表中数据由 N10、d0.5λ 的线阵仿真得出。可以看出旁瓣要求每提高 10dB主瓣大概展宽 2~3 度、增益损失 0.5dB 上下。这个规律在设计中可以直接用来做初步预算。5.3 切比雪夫综合的边界条件切比雪夫综合并非万能的。当阵元数 N 比较少比如 N5且旁瓣要求很高比如 -40dB时切比雪夫综合的幅度分布会出现边缘阵元幅度过小甚至接近于零的情况。这会导致两个问题一是边缘阵元的激励幅度太小实际馈电网络很难实现这么精确的幅度比二是阵列的容差性能变差——激励误差稍微大一点方向图就偏离设计值。工程上的经验法则是阵列的口径越大N 越多切比雪夫加权越容易实现。N8 时做 -30dB 旁瓣还可以接受N16 时做 -35dB 也不难但 N4 要 -40dB 就会让边缘阵元幅度比中间阵元低 20dB 以上这已经接近功分器的加工极限了。遇到这类情况替代方案是泰勒加权。泰勒加权只在靠近主瓣的几个旁瓣内保持近似等电平远离主瓣的旁瓣逐渐衰减这样既能压低近区旁瓣又不会像切比雪夫那样把所有的旁瓣都压平综合出来的幅度分布更温和、工程上更容易实现。MATLAB 里没有直接的泰勒加权内置函数需要自己写十行左右的代码或者从天线工具包中调用taylorwin。6. 方向图仿真的验证技巧与常见发散原因排查6.1 仿真发散先查参数越界而非算法错误很多人看到方向图乱了就怀疑代码写错了实际上 90% 的异常都出在参数越界上。最典型的是alpha越界当你设定的扫描角对应的sin(theta)大于 1 时方向图的主瓣会消失取而代之的是一堆均匀散落的杂瓣每个瓣的高度基本相同看起来就像是仿真发散。判定方法很简单——检查2*pi*d*sind(theta_0)的绝对值是否大于2*pi*d如果大于说明实际扫描角超出了可见空间范围。把期望扫描角限制在[-90, 90]且间距不超过 0.5λ这类问题就基本不会出现。另一种发散其实是角度采样不足。第 3 节函数里用了 1000 个采样点如果你偷懒用了 100 个点波束指向角在 30 度时主瓣峰值处可能只有 2 个采样点画出来的方向图会呈现明显锯齿状。验证方法很粗暴把采样点从 100 改成 1000如果方向图形状明显变化说明是采样问题不是物理模型的体积变化。对窄波束N 大要尤其注意波束越窄、主瓣需要越高的角度分辨率。6.2 用理论值校验仿真结果方向图仿真脚本完成之后第一件事不应该是去调参数而是验证正确性。最有效的验证是检查两类理论值第一旁瓣电平和主瓣零点位置。均匀线阵的第一旁瓣电平固定是 -13.3dB不管 N 等于多少这个值不变。主瓣的零点位置由sin(theta) n*lambda/(N*d)给出。写一个断言式检查% 验证第一旁瓣电平是否接近理论值 AF_dB_sorted sort(AF_dB, descend); measured_sll AF_dB_sorted(2); % 第二大的dB值是第一旁瓣 theoretical_sll -13.3; fprintf(实测第一旁瓣: %.2f dB, 理论值: %.2f dB\n, measured_sll, theoretical_sll); if abs(measured_sll - theoretical_sll) 0.5 disp(旁瓣电平验证通过); else disp(旁瓣电平异常, 检查N、d参数); end这短短几行代码就是仿真结果验证里最值钱的部分。结构复杂的代码可能出错但有了这些理论锚点错误会立刻暴露。更严格的做法是把主瓣零点位置和理论公式也做一次对比两者如果误差超过一个采样间隔就要检查是否归一化出了问题。6.3 方向图数据导出与全波仿真对照MATLAB 仿真的阵因子基于理想点源忽略了单元互耦、边缘截断、地板衍射等效应。实际产品设计时方向图要用 HFSS、CST 做全波仿真。最常见的工作流是MATLAB 先把方向图综合的激励幅度和相位算出来导出一份表格然后把这个表格作为全波仿真的馈源条件代入最后把两者的方向图叠在一起对比。% 导出切比雪夫加权系数到CSV文件 w chebwin(10, 30); csvwrite(cheb_weights.csv, w);全波仿真的结果和 MATLAB 理想计算之间会存在系统性差异第一旁瓣电平会比理想值高 1~2dB零点会被填充波束指向可能偏移 1 度以内。这些差异主要是互耦导致单元方向图畸变造成的。如果差异过大优先检查阵列边缘单元的方向图和中心单元差多少——边缘单元由于截断效应方向图会向阵列内部倾斜这是全波仿真中仿真发散类问题最常见的根源之一。认识了这个边界你就能更准确地判断 MATLAB 理想仿真的适用范围它适合方案论证和参数扫描不适合直接作为最终设计的天线指标依据。本文还有配套的精品资源点击获取

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询