本示例演示了如何为5G毫米波系统设计匹配的39 GHz 16端口无源网络。每个端口独立设计匹配网络,生成的每个匹配网络用于两个1端口终端之间的功能。
计算贴片天线阵在39ghz时的s -参数。加载sparams_patchArray。
垫文件。的s_params_circ_array
函数从支持文件中获取金宝appdesignmultiport.mlx。
Fcenter = 39 e9;负载(“sparams_patchArray.mat”Sparam_array = s_params_circ_array;显示(patchArray)视图(90 [0])
确定中心频率对应的指标。
频率= Sparam_array.Frequencies;fIndex = find(freq == Fcenter);
为每个对应端口独立生成匹配网络,负载Q为20,并将拓扑配置为“Pi”。这个q因子与贴片天线阵列的一半功率带宽一致,约为2ghz。
定义网络中端口的数量并指定终端阻抗。
numport = s_params_circ_array.NumPorts;ZT型= 50;loadedQ = 20;拓扑=“π”;为I = 1: numport%反射系数/他们gam_array = s_params_circ_array.Parameters(我,我,fIndex);%负载阻抗Zout = gamma2z (gam_array);%匹配网络生成match_net (i) = matchingnetwork (“SourceImpedance”ZT型,...“LoadImpedance”Zout,“CenterFrequency”Fcenter,...“LoadedQ”loadedQ,“组件”、拓扑);结束
所述源连接于位于所述匹配网络电路左侧的组件,所述负载连接于所述匹配网络电路右侧的组件。对于生成的匹配网络,源端以ZT(50欧姆)终止,负载阻抗为Zout给出的第i端口处的阻抗。
选择16个拓扑matchingnetwork
对象。要获得可用电路的概览,请参阅circuitDescriptions
函数。
本例中使用的是“分流C系列l -分流C”拓扑。如果这种拓扑在您的网络中不可用,请使用最佳可用的匹配网络电路。
selectedCircuits = repmat(电路,1 numport);numport cIndex = 0 (1);
查看生成的电路列表。
为c = circuitDescriptions(match_net(i));%进行文本搜索以选择具有并联C系列l -并联C拓扑的电路指数= strcmp (c.component1Type,“C分流”) &...比较字符串(c.component2Type“L”系列) &...比较字符串(c.component3Type“C分流”);如果任何(索引)% ShuntC-SeriesL-ShuntC拓扑cIndex(i) = find(Index, 1,“第一”);selectedCircuits (i) = match_net (i) .Circuit (cIndex(我));其他的%最佳可用的匹配网络selectedCircuits (i) = match_net (i) .Circuit (1);结束selectedCircuits(我)。Name =“N”+我;结束
要查看选定的匹配网络电路的性能,请使用rfplot
.例如,要绘制具有分流器C系列l -分流器C拓扑类型的电路的第一个匹配网络的性能,此命令。
rfplot (match_net(1)、频率、cIndex (1));
为16端口网络创建一个电路对象和一个n端口对象。
电路=电路(“patchArray”);array_net = nport (Sparam_array);
在本例中,电路节点数显示为17,因为节点1到16将用于添加匹配的网络。
cktnodes = (1 + numport): (numport + numport);
将n端口对象添加到电路对象中。
add(电路、cktnodes array_net);
查看16端口网络的父节点。
disp (array_net)
nport: N-port element NetworkData: [1×1 parameters] Name: 'Sparams' NumPorts: 16 Terminals: {1×32 cell} ParentNodes: [17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 0 0 0 0 0 0 0 0 0 0 0 0] ParentPath: 'patchArray'
给出了具有16端口n端口的电路对象的示例。
初始化端口。
港口=细胞(1、numport);
将每个匹配的网络电路添加到相应的端口上。同时生成相应匹配网络电路的端口号。
为add(ckt, [i, 0, i+numport, 0], selectedCircuits(i),...{“p1 +”,“p1 - - - - - -”,“p2 +”,“p2 - - - - - -”});端口{i} = [i, 0];结束% ports = arrayfun(@(x) [x 0],1:10,'UniformOutput',false);
使用setports
函数定义每个电路的端口。
setports(电路、港口{:});
给出了带有n端口的电路对象和匹配的网络电路的示例。
生成和绘制无源16端口匹配网络的s -参数。
Sparam =参数(ckt, freq);
在匹配之前绘制16端口网络的频率响应。
图;rfplot (s_params_circ_array);传说从
绘制匹配后的16端口网络的频率响应曲线。
图;rfplot (Sparam);传说从