zengxy 发表于 2010-10-13 10:01:55

有没有做异步电机控制的?请教几个问题:关于反电动势和电感矩阵

1.有没有人分析过,怎么从物理原理上来解释:为什么dq坐标下电机的电压方程里的反电动势一个是正的,一个是负的?

2.陈伯时 《电力拖动自动控制控制系统——运动控制系统》这本书里的P192-193,P265-270页里有推导dq坐标系下的电机电感矩阵,但是我在Matlab里按这个过程推导出来的结果跟他的并不一样,
    我的结果:
MtxL_dq =

[      3/2*Lms+Lls,                  0,3/2*Lms*cos(thta), -3/2*Lms*sin(thta)]
[                  0,      3/2*Lms+Lls,3/2*Lms*sin(thta),3/2*Lms*cos(thta)]

[ -3/2*Lms*sin(thta),3/2*Lms*cos(thta),                  0,      3/2*Lms+Llr]

书上的结果:

MtxL_dq =

[      3/2*Lms+Lls,                  0,            3/2*Lms,                  0]
[                  0,      3/2*Lms+Lls,                  0,            3/2*Lms]
[            3/2*Lms,                  0,      3/2*Lms+Llr,                  0]
[                  0,            3/2*Lms,                  0,      3/2*Lms+Llr]

如果有谁刚好有推导过的话,能不能帮我纠正一下哪里错了?

以下附上Matlab计算代码:
我用两种方法算了,结果都一样
=================================================================
clc
clear
format rat
%%%%%%%%%%%%%%%%%%%%%%
% stationary frame variables
syms uA uB uC ua ub uc
syms Rs Rr
syms iA iB iC ia ib ic
syms phiA phiB phiC phia phib phic
%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%
%differential operator
syms p

%%%%%%%%%%%%%%%%%

MtxR = eye(6,6);
MtxR = vpa(MtxR);
for i = 1:3
    MtxR(i,i) = Rs;
end

for i = 4:6
    MtxR(i,i) = Rr;
end

u = ;
i = ;
phi = ;

u = MtxR * i + p*phi;

%%%%%%%%%%%%%%%%%%%%
%inductor variable define
syms LAA LAB LAC LBA LBB LBC LCA LCB LCC
syms LAa LAb LAc LBa LBb LBc LCa LCb LCc
syms LaA LaB LaC LbA LbB LbC LcA LcB LcC
syms Laa Lab Lac Lba Lbb Lbc Lca Lcb Lcc

syms Lms Lmr Lls Llr
%Lms = Lmr
%%%%%%%%%%%%%%%%%%%%%%

LAA = Lms +Lls; LBB= Lms +Lls; LCC= Lms +Lls;
Laa = Lms +Llr; Lbb= Lms +Llr; Lcc= Lms +Llr;

%-1/2*Lms = cos(120)*Lms = cos(-120)*Lms
LAB = -1/2*Lms; LBC = -1/2*Lms; LCA = -1/2*Lms;
LBA = -1/2*Lms; LCB = -1/2*Lms; LAC = -1/2*Lms;

Lab = -1/2*Lms; Lbc= -1/2*Lms; Lca = -1/2*Lms;
Lba = -1/2*Lms; Lcb = -1/2*Lms; Lac = -1/2*Lms;

syms thta

LaA = Lms*cos(thta); LbB = Lms*cos(thta); LcC = Lms*cos(thta);
LAa = Lms*cos(thta); LBb = Lms*cos(thta); LCc = Lms*cos(thta);

LAb = Lms*cos(thta+2*pi/3); LBc = Lms*cos(thta+2*pi/3); LCa = Lms*cos(thta+2*pi/3);
LbA = Lms*cos(thta+2*pi/3); LcB = Lms*cos(thta+2*pi/3); LaC = Lms*cos(thta+2*pi/3);

LAc = Lms*cos(thta-2*pi/3); LBa = Lms*cos(thta-2*pi/3); LCb = Lms*cos(thta-2*pi/3);
LcA = Lms*cos(thta-2*pi/3); LaB = Lms*cos(thta-2*pi/3); LbC = Lms*cos(thta-2*pi/3);

MtxL = [LAA LAB LAC LAa LAb LAc;...
             LBA LBB LBC LBa LBb LBc;...
             LCA LCB LCC LCa LCb LCc;...
             LaA LaB LaC Laa Lab Lac;...
             LbA LbB LbC Lba Lbb Lbc;...
             LcA LcB LcC Lca Lcb Lcc];
         
phi = MtxL*i;

C3_2 = sym(sqrt(2/3)*);
C2_3 = C3_2';

MtxL_albt = *MtxL*;
MtxL_albt = simplify(MtxL_albt);

C2s_2r = ;
C2r_2s = ;

MtxL_dq = *MtxL_albt*;
MtxL_dq = simplify(MtxL_dq);
MtxL_dq = expand(MtxL_dq)

C3s_2r = C2s_2r*C3_2;
C2r_3s = C2_3*C2r_2s;

MtxL_dq2 = *MtxL*;
MtxL_dq2 = simplify(MtxL_dq2);
MtxL_dq2 = expand(MtxL_dq2)
页: [1]
查看完整版本: 有没有做异步电机控制的?请教几个问题:关于反电动势和电感矩阵