如何在Cauer网络中绘制传递函数

时间:2017-09-05 11:21:15

标签: octave transfer-function

下图显示了一个Cauer网络,它是一个连续的分数网络。

Cauer Network

我已经构建了第三个Octrder传递函数3rd Octave:

function uebertragung=G(R1,Tau1,R2,Tau2,R3,Tau3)
s= tf("s");
C1= Tau1/R1;
C2= Tau2/R2;
C3= Tau3/R3;
# --- Uebertragungsfunktion 3.Ordnung --- #

uebertragung= 1/((s*R1*C1)^3+5*(s*R2*C2)^2+6*s*R3*C3+1);

endfunction

R1R2R3C1C2C3是我的特征曲线所依赖的6个参数。

我需要将这些参数放入tranfser函数,得到一个结果并从数据中绘制特征曲线。

特性曲线显示热阻抗与时间的关系。与igbt数据表中的这两条曲线一样。

Characteristic Curve

我的问题是我不知道如何正确处理传输功能。我需要数据来绘制特征曲线,但我不知道如何从传递函数中生成它们。

欢迎任何提示。我是否必须进行拉普拉斯变换?

如果您需要进一步的信息,请问我,我会尝试提供所有信息。

1 个答案:

答案 0 :(得分:0)

从数据表中,他们用于瞬态热阻抗图的公式是福斯特链阶跃函数响应:

Z(t) = sum (R_i * (1-exp(-t/tau_i))) = sum (R_i * (1-exp(-t/(R_i*C_i)))) 

我通过图表验证了表中的R和C的阶段将产生您与该函数共享的图。

用于产生s域(拉普拉斯域)阻抗函数(Z)的阶跃函数响应的方法是采用传递函数和1 / s的乘积的拉普拉斯逆变换(拉普拉斯域形式的a)恒定值阶跃函数)。使用福斯特模型阻抗函数:

Z(s) = sum (R_i/(1+R_i*C_i*s))

将产生上述等式。

使用Octave中的传递函数,您可以使用控制包函数step来计算瞬态响应,而不是自己执行逆拉普拉斯变换。因此,一旦有Z(s)step(Z)就会生成或绘制瞬态响应。有关详细信息,请参阅help step。然后,您可以调整绘图(切换到对数刻度,设置轴限制等),使其看起来像一个规格表图。

现在,您希望使用Cauer网络模型执行相同的操作。重要的是要意识到两个模型的R和C不一样。福斯特网络是一个解耦模型,每个主要的复合极点都按布局隔离,但R和C实际上是真实封装中物理热阻和电容的卷积。相反,Cauer模型具有与物理封装层匹配的R和C,并且s域传递函数中的极点将是多层的复杂乘积。

因此,无论您获得Cauer模型的R和C,您都不能只使用它们在Foster模型参数表中的相同值。它们可以从物理层和材料属性计算,但是,假设您有这些信息。一旦有了有用的值,从Z(s)到瞬态阻抗函数的过程对于任一网络都是相同的,它们应该产生相同的结果。

作为一个例子,以下程序应该在Octave和Matlab中工作,使用Foster Z(s)模型作为起点,从规格表数据绘制热阻抗曲线。对于Cauer模型,只需使用不同的Z(s)函数。

(请注意,Octave在step函数中存在一些问题,即将t = 0条目插入到时间序列输出中,即使未指定它们,也会在尝试绘制日志时导致一些错误因此,这个例子放在= 0节点然后忽略它。想解释一下这条线似乎并不令人困惑。)

s = tf('s')
R1 = 8.5e-3; R2 = 2e-3;
tau1 = 151e-3; tau2 = 5.84e-3;
C1 = tau1/R1; C2 = tau2/R2;
input_imped = R1/(1+R1*C1*s)+R2/(1+R2*C2*s)
times = linspace(0, 10, 100000);
[Zvals,output_times] = step(input_imped, times);
loglog(output_times(2:end), Zvals(2:end));
xlim([.001 10]); ylim([0.0001, .1]);
grid;
xlabel('t [s]');
ylabel('Z_t_h_(_j_-_c_) [K/W] IGBT');
text(1,0.013 ,'Z_t_h_(_j_-_c_) IGBT');

Plot of thermal impedance produced with Octave 4.2.1 and Control package 3.0.0