什么是Clark变换?
Clark变换将三相系统(在 abc 坐标系中)的时域分量转换为正交静止坐标系 (αβ) 中的两个分量。
利用基变换来实现三相坐标系(abc)到两相正交坐标系(αβ)
已知三相坐标系的相位依次相差120°且αβ为正交坐标系。 将α轴与a轴重叠,将向量a沿着原点O的方向延长做一条辅助线,∠boe和∠coe等于60°。
计算向量b和向量c到α轴的投影长度:
$$ be = \sin(∠boe) = \sin(60°) = \frac{\sqrt{3}}{2} \\ ce = -\sin(∠coe) = -\sin(60°) = -\frac{\sqrt{3}}{2} $$因为向量c在α轴的下方所以投影为负
计算向量b和向量c到β轴的投影长度:
$$ bg = -\cos(∠boe) = -\cos(60°) = -\frac{1}{2} \\ ch = -\cos(∠coe) = -\cos(60°) = -\frac{1}{2} $$因为向量b和向量c在β轴的左侧所以投影为负
组合出基变换矩阵
根据上面的投影可以得到a,b,c三个向量的坐标:向量 $a=[1, 0]$,向量$b=[-\frac{1}{2},\frac{\sqrt{3}}{2}] $,向量 $c=[-\frac{1}{2},-\frac{\sqrt{3}}{2}] $
所以基变换矩阵为:
$$ A = \left[ \begin{matrix} 1 & -\frac{1}{2} & -\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2}& -\frac{\sqrt{3}}{2} \end{matrix} \right] $$坐标转换公式为:
$$ \left[ \begin{matrix} i\alpha \\ i\beta \end{matrix} \right] = \left[ \begin{matrix} 1 & -\frac{1}{2} & -\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2}& -\frac{\sqrt{3}}{2} \end{matrix} \right] \left[ \begin{matrix} ia \\ ib \\ ic \end{matrix} \right] $$$$ i\alpha = ia - \frac{1}{2}ib - \frac{1}{2}ic \\ i\beta = \frac{\sqrt{3}}{2}ib - \frac{\sqrt{3}}{2}ic $$基尔霍夫电流定律:
所有进入某个节点的电流的总和等于所有离开这个节点的电流的总和。假设进入某节点的电流为正值,离开这个节点的电流为负值,则所有设计这个节点的电流的代数和等于零。
$ \sum_{k=1}^{n}(ik)=0 $
所以:ia + ib + ic = 0,ic = -(ia+ib)
使用ia和ib将公式中的ic消除后的公式:
$$ i\alpha = ia - \frac{1}{2}ib + \frac{1}{2}(ia+ib)\\ = ia - \frac{1}{2}ib + \frac{1}{2}ia+\frac{1}{2}ib\\ =\frac{3}{2}ia $$$$ i\beta = \frac{\sqrt{3}}{2}ib + \frac{\sqrt{3}}{2}(ia+ib)\\ = \frac{\sqrt{3}}{2}(ia+2\times ib) $$等幅值变换
因为:$i\alpha = \frac{3}{2}ia$,所以需要在基变换后乘以$\frac{2}{3}$使得$i\alpha = ia$,$i\beta = \frac{\sqrt{3}}{3}(ia+2\times ib) $
对应的基变换矩阵为:
$$ \left[ \begin{matrix} i\alpha \\ i\beta \end{matrix} \right] =\frac{2}{3} \left[ \begin{matrix} 1 & -\frac{1}{2} & -\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2}& -\frac{\sqrt{3}}{2} \end{matrix} \right] \left[ \begin{matrix} ia \\ ib \\ ic \end{matrix} \right] $$测试
为标准三相电压Ua、Ub、Uc在空间上互差120°,Vm为相电压峰值, $\theta$为电角度:
$$ Ua = Vm\times \cos(\theta)\\ Ub = Vm\times \cos(\theta+\frac{2\pi}{3})\\ Uc = Vm\times \cos(\theta-\frac{2\pi}{3}) $$导入包:
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
三相逆变输出的三相电压波形:
plt.figure(figsize=(10, 3))
def U(m, e):
return (m * np.cos(e), m * np.cos(e + 2 * np.pi / 3), m * np.cos(e - 2 * np.pi / 3))
e = np.arange(0, 20, 0.1)
m = 1
(a, b, c) = U(m, e)
plt.plot(e, a, label="a")
plt.plot(e, b, label="b")
plt.plot(e, c, label="c")
plt.xlabel="x"
plt.ylabel="y"
plt.title('')
plt.legend()
plt.show()
经过Clark变换后的波形:
plt.figure(figsize=(10, 3))
def U(m, e):
return (m * np.cos(e), m * np.cos(e + 2 * np.pi / 3), m * np.cos(e - 2 * np.pi / 3))
def A(a, b, c):
return (2/3)*(np.mat([[1, -1/2, -1/2], [0, np.sqrt(3)/2, -np.sqrt(3)/2]]) * np.mat([a, b, c]))
e = np.arange(0, 20, 0.1)
m = 1
(a, b, c) = U(m, e)
d = A(a,b,c)
plt.plot(e, d[0].tolist()[0], label="alpha")
plt.plot(e, d[1].tolist()[0], label="beta")
plt.xlabel="x"
plt.ylabel="y"
plt.title('Clark')
plt.legend()
plt.show()
如果将Clark变换中的系数$\frac{2}{3}$去掉后会发现幅值和三相逆变输出的三相电压波形是不一样的,幅度多了1.5倍: