|
- clear all
- load processed_data % 1和14,2和13机械转速相同
- format long % avg(i,1):Id avg(i,2):Iq avg(i,3):w机械 avg(i,7):Vd avg(i,8):Vq avg(i,10):1/5*T T(i,j):avgi(j,:)的Tw
-
- ro=1/60*4*2*pi;
- avg=[avg1;avg2;avg3;avg4;avg5;avg6;avg7;avg8;avg9;avg10;avg11;avg12;avg13;avg14];
- alpha=0.0036;beta=-0.0014;
- T0=mean(mean(T)); % 绕组平均温度
-
- R0=1.0528;r0=0.2856;B=0.001807087073592;
-
- GMA=atan(abs(avg1(:,1))./avg1(:,2));
- for ii=1:length(GMA)
- gamma=GMA(ii);
- theta=0:2*0.001:2*pi;
- mode=fix(6*(theta+gamma+pi/6)/pi/2);
- angle=theta-mode*pi/3;
- Dd=(2*sin(angle));
- Dq=(2*cos(angle));
- Tmd(ii)=mean(Dd); % DD
- Tmq(ii)=mean(Dq); % DQ
- end
-
- %考虑永磁体温度变化为三次函数,给定 R0,lambda0,T0
- X=[];
- for j=1:14
- Phi=[];Y=[];
- for i=22:21:232
- k=(j-1)*252+i;
- Phi=[Phi;avg(k,3)*ro*r0*beta*(((i-1)*0.05)^3-((i-21-1)*0.05)^3) avg(k,3)*ro*r0*beta*(((i-1)*0.05)^2-((i-21-1)*0.05)^2) avg(k,3)*ro*r0*beta*(((i-1)*0.05)-((i-21-1)*0.05))];
- Y=[Y;avg(k,8)-avg(k-21,8)-alpha*R0*T(j,i)*avg(k,2)+alpha*R0*T(j,i-21)*avg(k-21,2)-R0*(1-alpha*T0)*(avg(k,2)-avg(k-21,2))];
- end
- X(:,j)=(Phi'*Phi)\Phi'*Y;
- end
-
- TT=[]; %永磁体温度的估计值
- for i=1:14
- for j=1:252
- TT(i,j)=X(1,i)*((j-1)*0.05)^3+X(2,i)*((j-1)*0.05)^2+X(3,i)*((j-1)*0.05)+T(i,1);
- end
- end
-
- X11=[];
- for i=1:252
- Phi1=[];Y1=[];
- for j=2:2:13
- k=(j-1)*252+i;
- Phi1=[Phi1;1 0 avg(k,3)*ro 0;0 1 0 avg(k,3)*ro];
- Y1=[Y1;avg(k,7)-alpha*R0*T(j,i)*avg(k,1);avg(k,8)-alpha*R0*T(j,i)*avg(k,2)-avg(k,3)*ro*r0*beta*TT(j,i)];
- end
- X11(:,i)=(Phi1'*Phi1)\Phi1'*Y1;
- end
-
- Phi2=[];Y2=[];
- for i=1:252
- Phi2=[Phi2;-alpha*R0*avg1(i,1) Tmd(1,i);-alpha*R0*avg1(i,2) Tmq(1,i)];
- Y2=[Y2;X11(1,i)-avg1(i,1)*R0;X11(2,i)-avg1(i,2)*R0];
- end
- X2=(Phi2'*Phi2)^-1*Phi2'*Y2; % T0,Vdead
-
- Phi3=[];Y3=[];
- for i=1:252
- Phi3=[Phi3;avg1(i,2) avg1(i,2)*avg1(i,1) avg1(i,2)^2 avg1(i,1)^2*avg1(i,2) avg1(i,2)^3 avg1(i,2)^2*avg1(i,1)];
- Y3=[Y3;-X11(3,i)];
- end
- X3=(Phi3'*Phi3)^-1*Phi3'*Y3; % Lq的参数
-
- Phi4=[];Y4=[];
- for i=1:252
- Phi4=[Phi4;avg1(i,1) avg1(i,1)^2 avg1(i,1)*avg1(i,2) avg1(i,1)^3 avg1(i,2)^2*avg1(i,1) avg1(i,1)^2*avg1(i,2) -beta*r0];
- Y4=[Y4;X11(4,i)-r0];
- end
- X4=(Phi4'*Phi4)^-1*Phi4'*Y4; % Ld的参数以及永磁体初始温度T0'
-
- Te3=[];
- for i=1:14
- lambda=r0*(1+beta*(TT(i,:)-X4(7)));
- Iq=avg((i-1)*252+1:i*252,2);
- Id=avg((i-1)*252+1:i*252,1);
- Ld=[ones(252,1) Id Iq Id.*Id Iq.*Iq Id.*Iq]*X4(1:6,1);
- Lq=[ones(252,1) Id Iq Id.*Id Iq.*Iq Id.*Iq]*X3(:,1);
- Te3=[Te3;1.5*4*(lambda'.*Iq+(Ld-Lq).*Id.*Iq)];
- end
-
- % X1=[];
- % for i=1:252
- % Phi1=[];Y1=[];
- % for j=2:13
- % k=(j-1)*252+i;
- % Phi1=[Phi1;-avg(k,3)*ro 0 1 0 0 0;
- % 0 avg(k,3)*ro 0 1 avg(k,3)*ro*(1+beta*(TT(j,i)-T0)) 0;
- % -6*avg1(i,1) 6*avg1(i,2) 0 0 6*(1+beta*(TT(j,i)-T0))*avg1(i,2) -avg(k,3)*ro];
- % Y1=[Y1;avg(k,7)-R0*(1+alpha*(T(j,i)-T0))*avg1(i,1);avg(k,8)-R0*(1+alpha*(T(j,i)-T0))*avg1(i,2);avg(k,10)*5];
- % end
- % X1(:,i)=(Phi1'*Phi1)^-1*Phi1'*Y1;
- % end
- %
- % mean(X1(6,:))
- %
- % Phi2=[];Y2=[];
- % for i=1:252
- % Phi2=[Phi2;avg1(i,1) 0;0 Tmd(1,i);avg1(i,2) 0;0 Tmq(1,i)];
- % Y2=[Y2;X1(1,i);X1(5,i);X1(2,i);X1(6,i)];
- % end
- % X2=(Phi2'*Phi2)^-1*Phi2'*Y2; % R0,Vdead
- %
- % Phi3=[];Y3=[];
- % for i=1:252
- % Phi3=[Phi3;avg1(i,2) avg1(i,1)*avg1(i,2) avg1(i,2)^2 avg1(i,1)^2*avg1(i,2) avg1(i,2)^3 avg1(i,2)^2*avg1(i,1) 0 0 0 0 0 0 0;
- % 0 0 0 0 0 0 avg1(i,1) avg1(i,1)^2 avg1(i,1)*avg1(i,2) avg1(i,1)^3 avg1(i,1)*avg1(i,2)^2 avg1(i,1)^2*avg1(i,2) 0;
- % 0 0 0 0 0 0 0 0 0 0 0 0 1;
- % 0 0 0 0 0 0 0 0 0 0 0 0 avg1(i,2);
- % -avg1(i,1)*avg1(i,2) -avg1(i,1)^2*avg1(i,2) -avg1(i,1)*avg1(i,2)^2 -avg1(i,1)^3*avg1(i,2) -avg1(i,1)*avg1(i,2)^3 -avg1(i,1)^2*avg1(i,2)^2 avg1(i,1)*avg1(i,2) avg1(i,1)^2*avg1(i,2) avg1(i,1)*avg1(i,2)^2 avg1(i,1)^3*avg1(i,2) avg1(i,1)*avg1(i,2)^3 avg1(i,1)^2*avg1(i,2)^2 0];
- % Y3=[Y3;X1(2,i);X1(5,i);X1(6,i);X1(8,i);X1(9,i)];
- % end
- % X3=(Phi3'*Phi3)^-1*Phi3'*Y3; % Lq,Ld,lambda的参数
- %
- % Te4=[];
- % for i=1:14
- % lambda=X3(13,1)*(1+beta*(TT(i,:)-T0));
- % Iq=avg((i-1)*252+1:i*252,2);
- % Id=avg((i-1)*252+1:i*252,1);
- % Ld=[ones(252,1) Id Iq Id.*Id Iq.*Iq Id.*Iq]*X3(7:12,1);
- % Lq=[ones(252,1) Id Iq Id.*Id Iq.*Iq Id.*Iq]*X3(1:6,1);
- % Te4=[Te4;1.5*4*(lambda'.*Iq+(Ld-Lq).*Id.*Iq)];
- % end
-
- %考虑摩擦转矩
- X11=[];
- for i=1:252
- Phi1=[];Y1=[];
- for j=2:2:13
- k=(j-1)*252+i;
- Phi1=[Phi1;1 0 avg(k,3)*ro 0;0 1 0 avg(k,3)*ro;0 0 6*avg1(i,1) 6*avg1(i,2)];
- Y1=[Y1;avg(k,7)-alpha*R0*T(j,i)*avg(k,1);avg(k,8)-alpha*R0*T(j,i)*avg(k,2)-avg(k,3)*ro*r0*beta*TT(j,i);avg(k,10)*5-6*r0*beta*TT(j,i)*avg1(i,2)+B*avg(k,3)*ro];
- end
- X11(:,i)=(Phi1'*Phi1)\Phi1'*Y1;
- end
-
- Phi2=[];Y2=[];
- for i=1:252
- Phi2=[Phi2;-alpha*R0*avg1(i,1) Tmd(1,i);-alpha*R0*avg1(i,2) Tmq(1,i)];
- Y2=[Y2;X11(1,i)-avg1(i,1)*R0;X11(2,i)-avg1(i,2)*R0];
- end
- X2=(Phi2'*Phi2)^-1*Phi2'*Y2; % T0,Vdead
-
- Phi3=[];Y3=[];
- for i=1:252
- Phi3=[Phi3;avg1(i,2) avg1(i,2)*avg1(i,1) avg1(i,2)^2 avg1(i,1)^2*avg1(i,2) avg1(i,2)^3 avg1(i,2)^2*avg1(i,1)];
- Y3=[Y3;-X11(3,i)];
- end
- X3=(Phi3'*Phi3)^-1*Phi3'*Y3; % Lq的参数
-
- Phi4=[];Y4=[];
- for i=1:252
- Phi4=[Phi4;avg1(i,1) avg1(i,1)^2 avg1(i,1)*avg1(i,2) avg1(i,1)^3 avg1(i,2)^2*avg1(i,1) avg1(i,1)^2*avg1(i,2) -beta*r0];
- Y4=[Y4;X11(4,i)-r0];
- end
- X4=(Phi4'*Phi4)^-1*Phi4'*Y4; % Ld的参数以及永磁体初始温度T0'
-
- Te4=[];
- for i=1:14
- lambda=r0*(1+beta*(TT(i,:)-X4(7)));
- Iq=avg((i-1)*252+1:i*252,2);
- Id=avg((i-1)*252+1:i*252,1);
- Ld=[ones(252,1) Id Iq Id.*Id Iq.*Iq Id.*Iq]*X4(1:6,1);
- Lq=[ones(252,1) Id Iq Id.*Id Iq.*Iq Id.*Iq]*X3(:,1);
- Te4=[Te4;1.5*4*(lambda'.*Iq+(Ld-Lq).*Id.*Iq)];
- end
-
- x=[1:3528];
- plot(x',5*avg(:,10),'r');
- hold on
- plot(x',Te3,'black');
- hold on
- plot(x',Te4,'g');
|