[控制理论]-空间矢量、Clarke变换与Park变换

空间矢量、Clarke变换与Park变换

1.空间矢量

电机控制中,若使用三相系统中所推导的电机模型,很难发展出转矩与磁场解耦的控制法则;使用空间矢量这一手段较容易获得此效果。

使用空间向量的前提条件是物理量需满足三相平衡条件:
f a ( t ) + f b ( t ) + f c ( t ) = 0 f_{a}(t)+f_{b}(t)+f_{c}(t)=0 fa(t)+fb(t)+fc(t)=0
若满足该条件,则空间矢量定义如下:
F a b c = 2 3 [ f a ( t ) + a f b ( t ) + a 2 f c ( t ) ] F_{abc}=\frac{2}{3}[f_{a}(t)+af_{b}(t)+a^{2}f_{c}(t)] Fabc=32[fa(t)+afb(t)+a2fc(t)]
其中:
a = e j 2 π 3 a = e^{j\frac{2\pi}{3}} a=ej32π
图像如下所示(若逆时针顺序为a->b->c为正相序,反之为负相序):

在这里插入图片描述

实际中是先有的物理现象后有的该公式;其中公式中的2/3系数主要是为了保证相乘后的方程峰值为单自由度峰值(幅值不变原则)。

使用matalb绘制电机三相电压:

t = linspace(0, 0.05, 100);
va = 220*1.414*sin(2*pi*50*t);
vb = 220*1.414*sin(2*pi*50*t-2*pi/3);
vc = 220*1.414*sin(2*pi*50*t-4*pi/3);
plot(t, va, t, vb, t, vc, 'LineWidth', 2);
legend('Va','Vb','Vc')

在这里插入图片描述

将Va、Vb、Vc带入到空间矢量公式中,使用matlab绘制图形:

t = linspace(0, 0.02, 100);
va = 220*1.414*sin(2*pi*50*t);
vb = 220*1.414*sin(2*pi*50*t+2*pi/3);
vc = 220*1.414*sin(2*pi*50*t-2*pi/3);
vabc = 2/3*(va + exp(1j*2*pi/3)*vb + exp(1j*4*pi/3)*vc);
polarplot(vabc);
hold on
t1 = 0.5*(1/50);
va1 = 220*1.414*sin(2*pi*50*t1);
vb1 = 220*1.414*sin(2*pi*50*t1+2*pi/3);
vc1 = 220*1.414*sin(2*pi*50*t1-2*pi/3);
vabc1 = 2/3*(va1 + exp(1j*2*pi/3)*vb1 + exp(1j*4*pi/3)*vc1);
polarplot(vabc1,'-o');
legend('Vabc','starting point','LineWidth',2)

可绘制如下图所示图像,其中,起始点为-90°,Vabc为黄色线,幅值约为311,方向为逆时针。

在这里插入图片描述

matlab中使用了polar函数,基本用法为:

polarplot(theta, rho)
% theta:极角,通常以弧度表示;rho:极径;

示例:

theta = 2*pi*rand(1,100); % 随机生成极角数组
rho = rand(1,100); % 随机生成对应的极径数组
polarplot(theta, rho, 'o'); % 绘制散点图

2.Clarke变换

所有的坐标变换都可以认为是在不同的坐标轴投影。

分别在a自由度作为α轴,垂直90°作为β轴。

在这里插入图片描述

已知空间矢量定义如下:
F a b c = 2 3 [ f a ( t ) + a f b ( t ) + a 2 f c ( t ) ] F_{abc}=\frac{2}{3}[f_{a}(t)+af_{b}(t)+a^{2}f_{c}(t)] Fabc=32[fa(t)+afb(t)+a2fc(t)]
分别做α轴、β轴投影:
f α = R e [ 2 3 [ f a ( t ) + a f b ( t ) + a 2 f c ( t ) ] f_{α}=Re[\frac{2}{3}[f_{a}(t)+af_{b}(t)+a^{2}f_{c}(t)] fα=Re[32[fa(t)+afb(t)+a2fc(t)]

f β = I m [ 2 3 [ f a ( t ) + a f b ( t ) + a 2 f c ( t ) ] f_{β}=Im[\frac{2}{3}[f_{a}(t)+af_{b}(t)+a^{2}f_{c}(t)] fβ=Im[32[fa(t)+afb(t)+a2fc(t)]

根据几何关系,化简得:

在这里插入图片描述

除非三相不平衡,否则V0保持为0;根据矩阵运算,可得Clarke反变换为;转化为3x3矩阵主要是可推导反Clarke转换。

Clarke反变换如下所示:
在这里插入图片描述

使用matlab实现Clarke变换与反变换:

t = linspace(0, 0.02, 100);

% 初始波形
va = 220*1.414*sin(2*pi*50*t);
vb = 220*1.414*sin(2*pi*50*t-2*pi/3);
vc = 220*1.414*sin(2*pi*50*t-4*pi/3);

% Clarke变换
v_alpha = 2/3*(1*va - 0.5*vb - 0.5*vc);
v_beta = 2/3*(sqrt(3)/2*vb - sqrt(3)/2*vc);
v_zero = 2/3*(0.5*va + 0.5*vb + 0.5*vc);

% Clarke反变换
va1 = v_alpha + v_zero;
vb1 = -0.5*v_alpha + sqrt(3)/2*v_beta + v_zero;
vc1 = -0.5*v_alpha - sqrt(3)/2*v_beta + v_zero;

subplot(3,1,1);
plot(t, va, t, vb, t, vc, 'LineWidth', 2);
legend('va', 'vb', 'vc');
title('Original abc');
subplot(3,1,2);
plot(t, v_alpha, t, v_beta, 'LineWidth', 2);
legend('v_\alpha', 'v_\beta');
title('\alpha\beta');
subplot(3,1,3);
plot(t, va1, t, vb1, t, vc1, 'LineWidth', 2);
legend('va', 'vb', 'vc');
title('abc-\alpha\beta-abc');

在这里插入图片描述

观察图像易得:

  • α分量与β分量依然为周期信号,且周期与初始单自由度信号周期相同;
  • 空间矢量从-90°开始,与α分量从0开始(垂直)、β分量从负极限值开始相吻合;

3.Park变换

为什么进行Park变换?

  • 经过Clarke变换后还是正弦波,不好处理;

什么是Park变换?

  • 在Clarke变换的基础上,使α轴、β轴沿相同角速度旋转,此时,原有α轴叫d轴,β轴叫q轴。

Park变换图像表示如下:

在这里插入图片描述

根据几何关系可推得:

在这里插入图片描述

可得反变换为:

在这里插入图片描述

通过matlab绘制图像:

在这里插入图片描述

如何理解dq轴数据?

  • 矢量起始在-90°开始,开始时,与d轴垂直,所以d轴数据为0,q轴相反,所以q轴为负极限;
  • 开始旋转后,合成矢量与dq轴以相同角速度旋转,所以保持初始数值不变;

4.总结

通过矢量合成,可将多自由度的物理量转换为一合成量,便于分析;

对于正弦波信号来说,通过矢量合成后的物理量仍然为正弦波,不易分析,通过clarke、park变换后,成功设计一个旋转的坐标系,此时可将正弦物理量转换为两个直流信号,便于后续问题分析。

  • 10
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值