三相 PI 电路数学模型

考虑正负零序的、对称情况的三相pi电路的电磁暂态模型

下图是一个典型的三相PI电路,两端节点分别用K,M表示,接地点G,RLC分别有自感、互感。

三相PI电路
三相PI电路

在工程线路里,一般测量正序、零序是电力系统标准(IEEE、IEC)的方式。所以需要构造基于正序、零序的模型架构。(仅从仿真/数值计算角度,构造abc矩阵是比较直观的,但是工程上很多参数其实不能直接显式获得,所以建模的时候也需要考虑实际工程情况。)

正负零序到abc的转换

先不考虑C支路,对于三相对称RL支路,有:

vabc=Rabciabc+Labcdiabcdt \mathbf{v}_{abc}=\mathbf{R}_{abc}\mathbf{i}_{abc}+\mathbf{L}_{abc}\frac{d\mathbf{i}_{abc}}{dt}

取s /m = self / mutual(自感,互感),则对称线路意味着:

Rabc=[RsRmRmRmRsRmRmRmRs]Labc=[LsLmLmLmLsLmLmLmLs] \begin{gathered}\mathbf{R}_{abc}=\quad\begin{bmatrix}R_s&R_m&R_m\\R_m&R_s&R_m\\R_m&R_m&R_s\end{bmatrix}\\\mathbf{L}_{abc}=\quad\begin{bmatrix}L_s&L_m&L_m\\L_m&L_s&L_m\\L_m&L_m&L_s\end{bmatrix}\end{gathered}

接下来构造正负序变换:

  • 正序(1):A相领先B相120度,B相领先C相120度,C相领先A相120度。
  • 负序(2):A相落后B相120度,B相落后C相120度,C相落后A相120度。
  • 零序(0):A、B、C三相相位相同,哪一相也不领先,也不落后。

对正负零序不熟悉的可以参考 正序、负序、零序详解

那么从数学角度,我们需要构造一组基底向量(类似park/clark变换),三序正交,相互独立,投影为0,假设旋转因子aa:

a=ej120°=cosθ+jsinθ=12+j32 a=e^{j120°}=cos\theta+jsin\theta=-\frac{1}{2}+j\frac{\sqrt{3}}{2}

aa相乘即在极坐标下逆时针旋转120°。那么,根据正负零序的定义,我们可以构造转换矩阵:

S=[1111a2a1aa2],S1=13[1111aa21a2a]xabc=Sx012x012=S1xabcx012=[x0x1x2]\begin{gathered}\mathbf{S}=\begin{bmatrix}1&1&1\\1&a^{2}&a\\1&a&a^{2}\end{bmatrix},\mathbf{S}^{-1}=\frac{1}{3}*\begin{bmatrix}1&1&1\\1&a&a^{2}\\1&a^{2}&a\end{bmatrix} \\\mathbf{x}_{abc}=\mathbf{S}*\mathbf{x}_{012} \\\mathbf{x}_{012}=\mathbf{S}^{-1}*\mathbf{x}_{abc} \\\mathbf{x}_{012}=\begin{bmatrix}x_{0}\\x_{1}\\x_{2}\end{bmatrix}\end{gathered}

这里注意,x\mathbf{x}代表向量,因此必须是VV, II,不要误解为RLGCRLGC。 注意这里aa天然满足a3=11+a+a2=0\begin{aligned}&a^3=1\\&1+a+a^2=0\end{aligned}, 这个在后边展开S\mathbf{S}S1\mathbf{S^{-1}}很有用,而不需要代入三角函数展开计算。

接下来对(1)(1)进行变换:

Sv012=RabcSi012+LabcSdi012dtv012=S1RabcSi012+S1LabcSdi012dt\begin{gathered}\mathbf{S}*\mathbf{v}_{012}=\mathbf{R}_{abc}*\mathbf{S}*\mathbf{i}_{012}+\mathbf{L}_{abc}*\mathbf{S}*\frac{d\mathbf{i}_{012}}{dt}\\\mathbf{v}_{012}=\mathbf{S}^{-1}*\mathbf{R}_{abc}*\mathbf{S}*\mathbf{i}_{012}+\mathbf{S}^{-1}*\mathbf{L}_{abc}*\mathbf{S}*\frac{d\mathbf{i}_{012}}{dt}\end{gathered}

于是可以得到标量RLGCRLGC的正负零序形式(和向量x\mathbf{x}的形式已经有点不一样了):

RLGC012=S1RLGCabcSRLGCabc=SRLGC012S1\begin{gathered}\mathbf{RLGC}_{012}=\mathbf{S}^{-1}*\mathbf{RLGC}_{abc}*\mathbf{S}\\\mathbf{RLGC}_{abc}=\mathbf{S}*\mathbf{RLGC}_{012}*\mathbf{S}^{-1}\end{gathered}

到这里理论上已经结束了,但是从数值计算角度,我们需要知道s/m和零负正序的关系,需要进一步化简,这里以G\mathbf{G}为例,先算SG\mathbf{S}*\mathbf{G}

SG012=[1111a2a1aa2][G0000G1000G1]=[G0G1G1G0a2G1aG1G0aG1a2G1]\mathbf{S}*\mathbf{G}_{012}=\begin{bmatrix}1&1&1\\1&a^2&a\\1&a&a^2\end{bmatrix}\begin{bmatrix}G_0&0&0\\0&G_1&0\\0&0&G_1\end{bmatrix}=\begin{bmatrix}G_0&G_1&G_1\\G_0&a^2G_1&aG_1\\G_0&aG_1&a^2G_1\end{bmatrix}

这里因为是对称的,所以负序就是正序,G1=G2G_1=G_2。 再算SGS1\mathbf{S}*\mathbf{G}*\mathbf{S}^{-1}S\mathbf{S}第一列13[1,1,1]T\frac{1}{3}[1,1,1]^{T}:

Gs=13(G01+G11+G11)=13(G0+2G1)G_s=\frac{1}{3}(G_0\cdot1+G_1\cdot1+G_1\cdot1)=\frac{1}{3}(G_0+2G_1)

这里终于得到了自导纳和正负零序的关系,可以看到是非常简洁的,接下来是互导纳, 取S\mathbf{S}第二列13[1,a,a2]T\frac{1}{3}[1,a,a^2]^T

Gm=13(G01+G1a+G1a2)=13(G0+G1(a+a2))G_m=\frac{1}{3}(G_0\cdot1+G_1\cdot a+G_1\cdot a^2)=\frac{1}{3}(G_0+G_1(a+a^2))

显然a+a2=1a+a^2=-1,所以得到互导纳的形式:

Gm=13(G0G1)G_{m}=\frac{1}{3}(G_{0}-G_{1})

RLGCRLGC都是满足上述形式,因此在工程上测量得到的正负零序阻抗,可以转换成我们需要的RLGC012RLGC_{012},再通过上述推导得到abc三相的导纳矩阵,即可通过节点电压求解。

数学模型推导

单看一端,这里有两个支路,一个是RLRL支路,一个是CC shunt支路,接下来先开始对RLRL支路列举节点电压方程:

IKM(t)=GRL(VK(t)VM(t))+Ihistory(t)\mathbf{I}_{KM}(t)=\mathbf{G}_{RL}*(\mathbf{V}_{K}(t)-\mathbf{V}_{M}(t))+\mathbf{I}_{\mathrm{history}}(t)IKM(t)=[Ia,KM(t)Ib,KM(t)Ic,KM(t)],VK(t)=[Va,K(t)Vb,K(t)Vc,K(t)],VM(t)=[Va,M(t)Vb,M(t)Vc,M(t)],Ihistory(t)=[Ia,h(t)Ib,h(t)Ic,h(t)]\mathbf{I}_{KM}(t)=\begin{bmatrix}I_{a,KM}(t)\\I_{b,KM}(t)\\I_{c,KM}(t)\end{bmatrix},\mathbf{V}_K(t)=\begin{bmatrix}V_{a,K}(t)\\V_{b,K}(t)\\V_{c,K}(t)\end{bmatrix},\mathbf{V}_M(t)=\begin{bmatrix}V_{a,M}(t)\\V_{b,M}(t)\\V_{c,M}(t)\end{bmatrix},\mathbf{I}_{\mathrm{history}}(t)=\begin{bmatrix}I_{a,h}(t)\\I_{b,h}(t)\\I_{c,h}(t)\end{bmatrix}

展开成abc标量形式:

Ia,KM(t)=Gs(Va,K(t)Va,M(t))+Gm(Vb,K(t)Vb,M(t))+Gm(Vc,K(t)Vc,M(t))+Ia,h(t)Ib,KM(t)=Gm(Va,K(t)Va,M(t))+Gs(Vb,K(t)Vb,M(t))+Gm(Vc,K(t)Vc,M(t))+Ib,h(t)Ic,KM(t)=Gm(Va,K(t)Va,M(t))+Gm(Vb,K(t)Vb,M(t))+Gs(Vc,K(t)Vc,M(t))+Ic,h(t)\begin{gathered}I_{a,KM}(t)=G_s\left(V_{a,K}(t)-V_{a,M}(t)\right)+G_m\left(V_{b,K}(t)-V_{b,M}(t)\right)+G_m\left(V_{c,K}(t)-V_{c,M}(t)\right)+I_{a,h}(t)\\I_{b,KM}(t)=G_m\left(V_{a,K}(t)-V_{a,M}(t)\right)+G_s\left(V_{b,K}(t)-V_{b,M}(t)\right)+G_m\left(V_{c,K}(t)-V_{c,M}(t)\right)+I_{b,h}(t)\\I_{c,KM}(t)=G_m\left(V_{a,K}(t)-V_{a,M}(t)\right)+G_m\left(V_{b,K}(t)-V_{b,M}(t)\right)+G_s\left(V_{c,K}(t)-V_{c,M}(t)\right)+I_{c,h}(t)\end{gathered}

再利用Dommel算法求解即可,其实就是RL支路,没有特殊的地方,多了一步零负序转换和自导纳、互导纳而已。 对于CC shunt支路,也很容易得到:

IKG(t)=GCVK(t)+Ihistory(t)\mathbf{I}_{KG}(t)=\mathbf{G}_{C}*\mathbf{V}_{K}(t)+\mathbf{I}_{\mathrm{history}}(t)IMG(t)=GCVM(t)+Ihistory(t)\mathbf{I}_{MG}(t)=\mathbf{G}_{C}*\mathbf{V}_{M}(t)+\mathbf{I}_{\mathrm{history}}(t)

注意这里的CC,一般的π\pi电路两端各取一半,所以计算的时候使用C2\frac{C}{2}。计算完毕后,最后汇总两个支路的注入历史电流即可:

IinjK(t)=IhistoryKM(t)+IhistoryKG(t)I_{\mathrm{inj}}^{K}(t)=I_{history}^{KM}(t)+I_{history}^{KG}(t)IinjM(t)=IhistoryKM(t)+IhistoryMG(t)I_{\mathrm{inj}}^{M}(t)=-I_{history}^{KM}(t)+I_{history}^{MG}(t)

.

Buy me a coffee~
RLC侠 支付宝支付宝
RLC侠 微信微信