电磁场仿真-主题016-微波网络分析
第016篇:微波网络分析
摘要
微波网络分析是研究微波电路和系统特性的重要方法,通过将复杂电磁问题抽象为网络参数,大大简化了分析和设计过程。本篇教程系统介绍微波网络的基本理论、各种网络参数(Z、Y、S、ABCD参数)的定义和转换,以及网络分析的基本方法。通过Python实现微波网络的计算和仿真,深入探讨网络参数的提取、级联网络的计算、以及微波电路的设计方法。本教程涵盖散射参数测量、网络分析仪原理、微波电路设计等高级主题,帮助读者全面掌握微波网络分析的理论基础和工程应用。
关键词
微波网络、散射参数、S参数、网络分析仪、阻抗匹配、传输矩阵、微波电路、Python仿真

1. 引言
1.1 微波网络的概念
在微波频段,由于波长与电路尺寸可比拟,传统的集总参数电路理论不再适用。微波网络理论将复杂的电磁场问题转化为网络参数问题,使得微波电路的分析和设计更加简便。
微波网络的特点:
- 多端口结构:输入、输出、耦合端口
- 分布参数效应:需要考虑传输线效应
- 频率依赖性:参数随频率变化
- 能量守恒:无耗网络的功率守恒
1.2 网络参数的重要性
网络参数在微波工程中的应用:
- 器件表征:描述微波器件的电气特性
- 电路设计:级联、匹配、滤波器设计
- 系统分析:级联网络的性能预测
- 测量技术:网络分析仪的基础
1.3 网络参数类型
常用的网络参数:
- 阻抗参数(Z参数):开路阻抗参数
- 导纳参数(Y参数):短路导纳参数
- 散射参数(S参数):入射/反射波参数
- 传输参数(ABCD参数):级联网络参数
- 传输散射参数(T参数):级联S参数
2. 阻抗与导纳参数
2.1 Z参数(阻抗参数)
Z参数定义为开路阻抗参数:
Vi=∑j=1NZijIjV_i = \sum_{j=1}^{N} Z_{ij} I_jVi=j=1∑NZijIj
对于二端口网络:
[V1V2]=[Z11Z12Z21Z22][I1I2]\begin{bmatrix} V_1 \\ V_2 \end{bmatrix} = \begin{bmatrix} Z_{11} & Z_{12} \\ Z_{21} & Z_{22} \end{bmatrix} \begin{bmatrix} I_1 \\ I_2 \end{bmatrix}[V1V2]=[Z11Z21Z12Z22][I1I2]
各参数物理意义:
- Z11=V1/I1∣I2=0Z_{11} = V_1/I_1|_{I_2=0}Z11=V1/I1∣I2=0:输出开路时的输入阻抗
- Z12=V1/I2∣I1=0Z_{12} = V_1/I_2|_{I_1=0}Z12=V1/I2∣I1=0:输入开路时的反向传输阻抗
- Z21=V2/I1∣I2=0Z_{21} = V_2/I_1|_{I_2=0}Z21=V2/I1∣I2=0:输出开路时的正向传输阻抗
- Z22=V2/I2∣I1=0Z_{22} = V_2/I_2|_{I_1=0}Z22=V2/I2∣I1=0:输入开路时的输出阻抗
2.2 Y参数(导纳参数)
Y参数定义为短路导纳参数:
Ii=∑j=1NYijVjI_i = \sum_{j=1}^{N} Y_{ij} V_jIi=j=1∑NYijVj
对于二端口网络:
[I1I2]=[Y11Y12Y21Y22][V1V2]\begin{bmatrix} I_1 \\ I_2 \end{bmatrix} = \begin{bmatrix} Y_{11} & Y_{12} \\ Y_{21} & Y_{22} \end{bmatrix} \begin{bmatrix} V_1 \\ V_2 \end{bmatrix}[I1I2]=[Y11Y21Y12Y22][V1V2]
Y参数与Z参数的关系:
[Y]=[Z]−1[Y] = [Z]^{-1}[Y]=[Z]−1
2.3 Z/Y参数的性质
互易网络:
Zij=Zji,Yij=YjiZ_{ij} = Z_{ji}, \quad Y_{ij} = Y_{ji}Zij=Zji,Yij=Yji
对称网络:
Z11=Z22,Y11=Y22Z_{11} = Z_{22}, \quad Y_{11} = Y_{22}Z11=Z22,Y11=Y22
无耗网络:
Re(Zij)=0,Re(Yij)=0\text{Re}(Z_{ij}) = 0, \quad \text{Re}(Y_{ij}) = 0Re(Zij)=0,Re(Yij)=0
3. 散射参数(S参数)
3.1 S参数的定义
S参数基于入射波和反射波的概念:
bi=∑j=1NSijajb_i = \sum_{j=1}^{N} S_{ij} a_jbi=j=1∑NSijaj
其中aia_iai是入射波,bib_ibi是反射波。
对于二端口网络:
[b1b2]=[S11S12S21S22][a1a2]\begin{bmatrix} b_1 \\ b_2 \end{bmatrix} = \begin{bmatrix} S_{11} & S_{12} \\ S_{21} & S_{22} \end{bmatrix} \begin{bmatrix} a_1 \\ a_2 \end{bmatrix}[b1b2]=[S11S21S12S22][a1a2]
3.2 S参数的物理意义
- S11S_{11}S11:输入反射系数(输出端接匹配负载)
- S22S_{22}S22:输出反射系数(输入端接匹配负载)
- S21S_{21}S21:正向传输系数(增益/衰减)
- S12S_{12}S12:反向传输系数(隔离度)
3.3 S参数与功率
反射功率:
Pref=∣S11∣2PincP_{ref} = |S_{11}|^2 P_{inc}Pref=∣S11∣2Pinc
传输功率:
Ptrans=∣S21∣2PincP_{trans} = |S_{21}|^2 P_{inc}Ptrans=∣S21∣2Pinc
插入损耗:
IL=−20log10∣S21∣ (dB)IL = -20\log_{10}|S_{21}| \text{ (dB)}IL=−20log10∣S21∣ (dB)
回波损耗:
RL=−20log10∣S11∣ (dB)RL = -20\log_{10}|S_{11}| \text{ (dB)}RL=−20log10∣S11∣ (dB)
3.4 S参数的性质
互易网络:
Sij=SjiS_{ij} = S_{ji}Sij=Sji
无耗网络:
[S]H[S]=[I][S]^H [S] = [I][S]H[S]=[I]
即:
∣S11∣2+∣S21∣2=1|S_{11}|^2 + |S_{21}|^2 = 1∣S11∣2+∣S21∣2=1
∣S12∣2+∣S22∣2=1|S_{12}|^2 + |S_{22}|^2 = 1∣S12∣2+∣S22∣2=1
4. 传输参数(ABCD参数)
4.1 ABCD参数定义
ABCD参数用于级联网络分析:
[V1I1]=[ABCD][V2−I2]\begin{bmatrix} V_1 \\ I_1 \end{bmatrix} = \begin{bmatrix} A & B \\ C & D \end{bmatrix} \begin{bmatrix} V_2 \\ -I_2 \end{bmatrix}[V1I1]=[ACBD][V2−I2]
4.2 基本元件的ABCD参数
串联阻抗Z:
[1Z01]\begin{bmatrix} 1 & Z \\ 0 & 1 \end{bmatrix}[10Z1]
并联导纳Y:
[10Y1]\begin{bmatrix} 1 & 0 \\ Y & 1 \end{bmatrix}[1Y01]
传输线:
[cosθjZ0sinθjsinθ/Z0cosθ]\begin{bmatrix} \cos\theta & jZ_0\sin\theta \\ j\sin\theta/Z_0 & \cos\theta \end{bmatrix}[cosθjsinθ/Z0jZ0sinθcosθ]
4.3 级联网络
多个二端口网络级联时,总ABCD矩阵为各矩阵的乘积:
[ABCD]total=[ABCD]1[ABCD]2⋯[ABCD]N[ABCD]_{total} = [ABCD]_1 [ABCD]_2 \cdots [ABCD]_N[ABCD]total=[ABCD]1[ABCD]2⋯[ABCD]N
5. 网络参数转换
5.1 S参数与Z参数转换
[Z]=[Z0]1/2([I]+[S])([I]−[S])−1[Z0]1/2[Z] = [Z_0]^{1/2}([I] + [S])([I] - [S])^{-1}[Z_0]^{1/2}[Z]=[Z0]1/2([I]+[S])([I]−[S])−1[Z0]1/2
[S]=([Z]+[Z0])−1([Z]−[Z0])[S] = ([Z] + [Z_0])^{-1}([Z] - [Z_0])[S]=([Z]+[Z0])−1([Z]−[Z0])
其中[Z0][Z_0][Z0]是参考阻抗矩阵(通常为Z0[I]Z_0[I]Z0[I])。
5.2 S参数与Y参数转换
[Y]=[Z0]−1/2([I]−[S])([I]+[S])−1[Z0]−1/2[Y] = [Z_0]^{-1/2}([I] - [S])([I] + [S])^{-1}[Z_0]^{-1/2}[Y]=[Z0]−1/2([I]−[S])([I]+[S])−1[Z0]−1/2
5.3 S参数与ABCD参数转换
对于二端口网络:
A=(1+S11)(1−S22)+S12S212S21A = \frac{(1+S_{11})(1-S_{22}) + S_{12}S_{21}}{2S_{21}}A=2S21(1+S11)(1−S22)+S12S21
B=Z0(1+S11)(1+S22)−S12S212S21B = Z_0 \frac{(1+S_{11})(1+S_{22}) - S_{12}S_{21}}{2S_{21}}B=Z02S21(1+S11)(1+S22)−S12S21
C=1Z0(1−S11)(1−S22)−S12S212S21C = \frac{1}{Z_0} \frac{(1-S_{11})(1-S_{22}) - S_{12}S_{21}}{2S_{21}}C=Z012S21(1−S11)(1−S22)−S12S21
D=(1−S11)(1+S22)+S12S212S21D = \frac{(1-S_{11})(1+S_{22}) + S_{12}S_{21}}{2S_{21}}D=2S21(1−S11)(1+S22)+S12S21
6. 网络分析仪
6.1 网络分析仪原理
网络分析仪测量S参数的基本原理:
- 信号源:产生测试信号
- 定向耦合器:分离入射波和反射波
- 混频器:下变频到基带
- ADC:数字化
- DSP:计算S参数
6.2 校准技术
SOLT校准(Short-Open-Load-Through):
- 最常用的校准方法
- 使用短路、开路、负载、直通标准件
- 消除系统误差
TRL校准(Through-Reflect-Line):
- 适用于非同轴系统
- 使用直通、反射、传输线标准件
- 精度更高
6.3 误差模型
12项误差模型:
- 方向性误差
- 源匹配误差
- 反射跟踪误差
- 传输跟踪误差
- 负载匹配误差
- 隔离度误差
7. 微波电路设计应用
7.1 阻抗匹配网络
L型匹配网络:
- 两个元件(L或C)
- 适用于窄带匹配
- 设计简单
π型和T型匹配网络:
- 三个元件
- 可实现宽带匹配
- 设计灵活
7.2 滤波器设计
低通滤波器:
- 原型设计:Butterworth、Chebyshev、Elliptic
- 频率变换:低通到高通、带通、带阻
- 实现:集总元件、分布元件
微带滤波器:
- 边缘耦合线滤波器
- 发夹滤波器
- 梳状线滤波器
7.3 功率分配器
Wilkinson功分器:
- 等分或不等分
- 输出端口隔离
- 无耗(理想情况)
T型功分器:
- 简单结构
- 无隔离
- 有耗
8. Python仿真实现
8.1 网络参数计算
import numpy as np
import matplotlib.pyplot as plt
# 定义网络参数转换函数
def s_to_z(S, Z0=50):
"""S参数转Z参数"""
I = np.eye(2)
Z = Z0 * np.linalg.inv(I - S) @ (I + S)
return Z
def z_to_s(Z, Z0=50):
"""Z参数转S参数"""
I = np.eye(2)
S = np.linalg.inv(Z + Z0*I) @ (Z - Z0*I)
return S
def s_to_abcd(S, Z0=50):
"""S参数转ABCD参数"""
S11, S12, S21, S22 = S[0,0], S[0,1], S[1,0], S[1,1]
A = ((1+S11)*(1-S22) + S12*S21) / (2*S21)
B = Z0 * ((1+S11)*(1+S22) - S12*S21) / (2*S21)
C = ((1-S11)*(1-S22) - S12*S21) / (2*S21*Z0)
D = ((1-S11)*(1+S22) + S12*S21) / (2*S21)
return np.array([[A, B], [C, D]])
def abcd_to_s(ABCD, Z0=50):
"""ABCD参数转S参数"""
A, B, C, D = ABCD[0,0], ABCD[0,1], ABCD[1,0], ABCD[1,1]
denom = A + B/Z0 + C*Z0 + D
S11 = (A + B/Z0 - C*Z0 - D) / denom
S12 = 2*(A*D - B*C) / denom
S21 = 2 / denom
S22 = (-A + B/Z0 - C*Z0 + D) / denom
return np.array([[S11, S12], [S21, S22]])
# 示例:计算LC低通滤波器的S参数
f = np.linspace(1e6, 1e9, 1000) # 1 MHz 到 1 GHz
w = 2 * np.pi * f
Z0 = 50
# 滤波器参数
L = 10e-9 # 10 nH
C = 10e-12 # 10 pF
S11_list = []
S21_list = []
for wi in w:
# 串联电感的ABCD矩阵
ZL = 1j * wi * L
ABCD_L = np.array([[1, ZL], [0, 1]])
# 并联电容的ABCD矩阵
YC = 1j * wi * C
ABCD_C = np.array([[1, 0], [YC, 1]])
# 级联:L型低通滤波器(串联L + 并联C)
ABCD_total = ABCD_L @ ABCD_C
# 转换为S参数
S = abcd_to_s(ABCD_total, Z0)
S11_list.append(S[0,0])
S21_list.append(S[1,0])
S11 = np.array(S11_list)
S21 = np.array(S21_list)
# 计算插入损耗和回波损耗
IL = -20 * np.log10(np.abs(S21))
RL = -20 * np.log10(np.abs(S11))
# 截止频率
fc = 1 / (2*np.pi*np.sqrt(L*C))
print(f"LC低通滤波器:")
print(f"电感L: {L*1e9:.1f} nH")
print(f"电容C: {C*1e12:.1f} pF")
print(f"截止频率: {fc/1e6:.1f} MHz")
# 可视化
fig, axes = plt.subplots(1, 2, figsize=(14, 6))
# 子图1:S参数幅度
ax1 = axes[0]
ax1.semilogx(f/1e6, 20*np.log10(np.abs(S21)), 'b-', linewidth=2, label='|S21| (Insertion Loss)')
ax1.semilogx(f/1e6, 20*np.log10(np.abs(S11)), 'r--', linewidth=2, label='|S11| (Return Loss)')
ax1.axvline(x=fc/1e6, color='g', linestyle=':', label=f'Cutoff: {fc/1e6:.0f} MHz')
ax1.set_xlabel('Frequency (MHz)', fontsize=12)
ax1.set_ylabel('Magnitude (dB)', fontsize=12)
ax1.set_title('LC Low-Pass Filter S-Parameters', fontsize=13)
ax1.legend()
ax1.grid(True, alpha=0.3)
ax1.set_xlim(1, 1000)
ax1.set_ylim(-40, 5)
# 子图2:Smith圆图(输入阻抗轨迹)
ax2 = axes[1]
ax2.remove()
ax2 = fig.add_subplot(1, 2, 2, projection='polar')
# 计算输入阻抗
Zin_list = []
for wi in w:
ZL = 1j * wi * L
ZC = 1 / (1j * wi * C)
# 并联C,再串联L
Zin = ZL + 1/(1/Z0 + 1/ZC)
Zin_list.append(Zin)
Zin = np.array(Zin_list)
# 归一化并转换为反射系数
Gamma = (Zin - Z0) / (Zin + Z0)
ax2.plot(np.angle(Gamma), np.abs(Gamma), 'b-', linewidth=2)
ax2.set_title('Input Impedance on Smith Chart', fontsize=13, pad=20)
ax2.set_rticks([0.2, 0.4, 0.6, 0.8, 1.0])
plt.tight_layout()
plt.savefig('microwave_network.png', dpi=150, bbox_inches='tight')
plt.close()
print("微波网络分析仿真完成")
8.2 级联网络分析
import numpy as np
import matplotlib.pyplot as plt
# 定义级联网络分析
def cascade_abcd(ABCD_list):
"""级联多个ABCD矩阵"""
result = ABCD_list[0]
for ABCD in ABCD_list[1:]:
result = result @ ABCD
return result
def transmission_line_abcd(Z0, theta):
"""传输线的ABCD矩阵"""
return np.array([[np.cos(theta), 1j*Z0*np.sin(theta)],
[1j*np.sin(theta)/Z0, np.cos(theta)]])
def shunt_capacitor_abcd(C, w):
"""并联电容的ABCD矩阵"""
Y = 1j * w * C
return np.array([[1, 0], [Y, 1]])
def series_inductor_abcd(L, w):
"""串联电感的ABCD矩阵"""
Z = 1j * w * L
return np.array([[1, Z], [0, 1]])
# 设计一个三阶低通滤波器
f = np.linspace(1e6, 2e9, 1000)
w = 2 * np.pi * f
Z0 = 50
# 元件值(Butterworth原型,截止频率500 MHz)
fc = 500e6
L1 = Z0 / (2*np.pi*fc) * 1 # 第一个电感
C2 = 1 / (2*np.pi*fc*Z0) * 2 # 中间电容
L3 = Z0 / (2*np.pi*fc) * 1 # 第三个电感
S21_cascade = []
S11_cascade = []
for wi in w:
# 构建级联网络
ABCD_L1 = series_inductor_abcd(L1, wi)
ABCD_C2 = shunt_capacitor_abcd(C2, wi)
ABCD_L3 = series_inductor_abcd(L3, wi)
# 级联
ABCD_total = cascade_abcd([ABCD_L1, ABCD_C2, ABCD_L3])
# 转换为S参数
S = abcd_to_s(ABCD_total, Z0)
S21_cascade.append(S[1,0])
S11_cascade.append(S[0,0])
S21_cascade = np.array(S21_cascade)
S11_cascade = np.array(S11_cascade)
# 可视化
fig, ax = plt.subplots(figsize=(10, 6))
ax.semilogx(f/1e6, 20*np.log10(np.abs(S21_cascade)), 'b-', linewidth=2, label='|S21|')
ax.semilogx(f/1e6, 20*np.log10(np.abs(S11_cascade)), 'r--', linewidth=2, label='|S11|')
ax.axvline(x=fc/1e6, color='g', linestyle=':', label=f'Cutoff: {fc/1e6:.0f} MHz')
ax.axhline(y=-3, color='k', linestyle='--', alpha=0.5, label='-3 dB')
ax.set_xlabel('Frequency (MHz)', fontsize=12)
ax.set_ylabel('Magnitude (dB)', fontsize=12)
ax.set_title('3rd-Order Butterworth Low-Pass Filter', fontsize=13)
ax.legend()
ax.grid(True, alpha=0.3)
ax.set_xlim(1, 2000)
ax.set_ylim(-60, 5)
plt.tight_layout()
plt.savefig('cascade_network.png', dpi=150, bbox_inches='tight')
plt.close()
print("级联网络分析完成")
9. 结果分析与讨论
9.1 网络参数选择
不同网络参数的适用场景:
| 参数类型 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| Z参数 | 低频、串联电路 | 物理直观 | 高频难测量 |
| Y参数 | 并联电路分析 | 便于并联计算 | 高频难测量 |
| S参数 | 微波测量 | 易于测量 | 需要参考阻抗 |
| ABCD | 级联网络 | 级联计算简单 | 不适用于并联 |
9.2 测量注意事项
网络分析仪测量要点:
- 正确选择校准方法
- 注意连接器质量
- 考虑电缆损耗
- 避免过载和损坏
- 温度稳定性
9.3 设计优化
微波电路设计优化策略:
- 电磁仿真验证
- 参数扫描分析
- 容差分析
- 优化算法应用
10. 总结与展望
10.1 本教程总结
本教程系统介绍了微波网络分析的理论和应用:
- 网络参数:Z、Y、S、ABCD参数的定义和性质。
- 参数转换:各种网络参数之间的转换关系。
- 网络分析仪:测量原理、校准技术、误差模型。
- 电路设计:阻抗匹配、滤波器、功分器设计。
- Python实现:网络参数计算、级联网络分析。
10.2 进一步学习方向
微波网络分析的进一步研究方向:
- 多端口网络:N端口网络分析
- 非线性网络:大信号S参数、X参数
- 时域网络分析:TDR、眼图分析
- 噪声分析:噪声系数、噪声参数
- 现代测量技术:毫米波、太赫兹测量
微波网络分析是微波工程的核心技术,掌握网络参数理论对于从事射频/微波电路设计、测试和系统集成的工程师至关重要。希望本教程能够帮助读者建立扎实的理论基础,并在实际工程中灵活应用。




AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐




所有评论(0)