⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smdef1.m

📁 关于电机的.m程序
💻 M
字号:
%SMdef1.m     SYNCHRONOUS MACHINE PARAMETERS AND OPERATING POINT
clear,clc,close all
disp(date)
% ------------------------  DATA  --------------------------------------------
%                      Machine parameters (pu) :
        Ra=.018;Ld=1.15;Lq=.75;Lal=0.15; Rth=0 ; Lth=0 ;Ra=Ra+Rth;Lal=Lal+Lth;
        Rf=0.001; Lfl=0.2; Rkd=0.02; Lkdl=0.11; Rkq=0.04; Lkql=0.15;
               Hi=4.0; freq0=60.0;wo=2*pi*freq0 ;bet=0 ;
%                      Loading conditions:
               V=1.0 ; I=1.25 ; pf=0.80 ; 
% ----------------------------------------------------------------------------
               disp('     MACHINE PARAMETERS in per unit:            ')
disp('   Ra         Ld        Lq         Lal  ')
disp([Ra Ld Lq Lal])
disp('    Rf        Lfl       Rkd       Lkdl        Rkq       Lkql       H ')
param1=[Rf Lfl Rkd Lkdl Rkq Lkql Hi]; 
disp(param1)
%
disp('     V         I      power factor   ')   
param2=[V I pf];
disp(param2)
                    thetapf=acos(pf);
%  --------------------- MODE OF OPERATION  (motor convention) --------------
%              theta=thetapf    <=== under-excited motor (lagging pf).
%              theta=-thetapf   <=== over-excited motor  (leading pf).
%              theta=thetapf-pi <=== over-excited  generator (lagging pf).
%              theta=-thetapf+pi<=== under-excited  generator (leading pf).
s1='Under-excited motor'; s2='Over-excited motor';          
s3='Over-excited generator'; s4='Under-excited generator';
k=menu('Choose operating mode:',s1,s2,s3,s4,'CLOSE');
k=num2str(k);
  switch k
      case '1',
                  theta=thetapf;    mode=s1;
      case '2',
                  theta=-thetapf;   mode=s2;
      case '3',
                  theta=thetapf-pi; mode=s3;
      case '4',
         theta=-thetapf+pi;mode=s4;
      case '5', close all,clc,break;   
           end
      %        Steady-state calculation of operating point:                  
    j=sqrt(-1);
    Lmd=Ld-Lal;Lmq=Lq-Lal ;
    Eq1=V-(Ra+j*Lq)*I*exp(-j*theta);
    delta0=-angle(Eq1);
    Eq=abs(Eq1);
    Ia=I*exp(j*(pi/2+delta0-theta));
    Vt=V*exp(j*(pi/2+delta0))      ;
        id0=real(Ia) ; iq0=imag(Ia)  ;
        vd0=real(Vt) ; vq0=imag(Vt)  ;
    Ef0=vq0-Ra*iq0-Ld*id0; if0=Ef0/Lmd;
    Te0=Eq*iq0;
disp(' Operating point  (motor conventions)  :                ')
disp('   vd0       vq0        id0       iq0        if0       Te0 ')
disp([vd0 vq0 id0 iq0 if0 Te0]) 
disp('   delta0     theta0                      ')
disp([delta0*180/pi theta*180/pi])
figure(1)
axis([-2.5 2.5 -2.5 2.5])
axis square
x1=[0 vd0 0 0]  ; y1=[0 vq0 0 Ef0]; x3=[vd0-.1 id0-.1 -.1 if0+.1];
x2=[0 id0 0 if0]; y2=[0 iq0 0 0]  ; y3=[vq0+.1 iq0+.1 Ef0+.1 -.1];
phasor=['Vt' 
        'Ia' 
        'Ef'
        'If'];
figure(1)     
plot(x1,y1,'b'),hold on,grid,
plot(x2,y2,'r'),
plot(vd0,vq0,'ob',id0,iq0,'or',0,Ef0,'wo',if0,0,'*g',0,0,'ok'),
title(' PHASORS  along d-q axes'),
text(x3,y3,phasor),text(-2.3,-2.3,mode),hold off,pause(4);
close
(1)
%                 PARAMS     
   R=[Ra Rf Rkd Rkq]
   L=[Lal+Lmd    0     Lmd     Lmd       0
          0    Lal+Lmq   0       0       Lmq
         Lmd       0      Lmd+Lfl Lmd      0
         Lmd       0      Lmd    Lmd+Lkdl  0
         0       Lmq      0       0        Lmq+Lkql]

%     Initial conditions:
           phid=Ld*id0+Lmd*if0   ;  phiq=Lq*iq0 ;
           phif=(Lmd+Lfl)*if0+Lmd*id0;
           phikd=Lmd*(id0+if0)   ; phikq=Lmq*iq0;
           n=1.0 ;   Tl=Te0      ; vf0=Rf*if0   ;
           ic=[phid phiq phif phikd phikq n delta0]'
          

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -