日志档案

发表于 2008-1-11 14:51:46

0

标签: 无标签

一个画磁滞回线的matlab程序

这两天刚刚写的一个matlab程序,画了一个磁滞回线的电流波形。嘿嘿。。。

%磁滞回线
%
采用三次样条插值画磁滞回线
%通过磁滞回线画磁通为正弦时磁化电流波形
clear;                                                         %
清除workspace中变量
H_data=[ 0.005  0.026  0.050  0.065  0.078  0.096  0.126 0.164  0.270  0.460...
    0.529  0.471  0.341  0.203  0.074  0.000  -0.028 -0.049 -0.063 -0.077...
    -0.093 -0.124 -0.162 -0.270 -0.460 -0.530 -0.469 -0.338 -0.200 -0.070];
B_data=[ -0.174 -0.152 -0.123 -0.089 -0.051 -0.003 0.092 0.177 0.253 0.297...
    0.308  0.298  0.279  0.252  0.217  0.182  0.157  0.126  0.092 0.055...
    0.000 -0.087 -0.174 -0.249 -0.293 -0.303 -0.294 -0.274 -0.247 -0.212];
H=H_data;B=B_data;                                           %
磁滞回线的数据
H=H.*1e4;B=B.*5;    
subplot(2,2,1);
Bx=-pi/2:0.01:3*pi/2;
Bsin=1.5*sin(Bx);                                                  %
计算正弦值,扩大1.5倍适应磁滞曲线
plot(Bx,Bsin);                                                        %画磁场密度正弦曲线
grid on;
xlim([-pi/2,3*pi/2]);                                               %
限定X轴显示范围
xlabel('wt');                                                            %X轴标号
ylabel('磁场密度B(T)');                                          %Y轴标号
subplot(2,2,2);
hold on                                                                %
保持图形
plot(H,B,'ro');                                                         %画磁滞回线
B1=B(7:11);H1=H(7:11);                                       %
1象限数据B>0数据
B2=B(11:20);H2=H(11:20);                                   %2象限数据B>0数据
B3=B(21:26);H3=H(21:26);                                   %3象限数据B>0数据
B4=[B(26:30),B(1:6)];H4=[H(26:30),H(1:6)];            %4象限数据B>0数据
                                           
BB1=[B1,B4];HH1=[H1,H4];                                %
磁滞回线的下分支
XI1=-6290:10:6290;                                            
YI1=interp1(HH1,BB1,XI1,'spline');                         %
3次样条插值计算
plot(XI1,YI1);                                                       %画插值后回线下分支
BB2=[B2,B3];HH2=[H2,H3];                                %磁滞回线的上分支
XI2=-5290:10:5290;
YI2=interp1(HH2,BB2,XI2,'spline');                         %
3次样条插值计算
plot(XI2,YI2);                                                       %画插值后回线上分支
grid on;
xlabel('
磁化强度H(A/M)');                                     %X轴标号
ylabel('磁场密度B(T)');                                       %Y轴标号
M_X=1.39;                                 %
XI1=sin((-M_X:0.01:M_X)./M_X.*pi./2).*M_X;      %
磁通正弦变化
YI1=interp1(BB1,HH1,XI1,'spline');                        %3次样条插值计算
subplot(2,2,4);
hold on;
len_X=length(XI1);                                               %
计算先前波形的横坐标长度
X1=(1:len_X);
X1=X1/len_X*pi;
plot(X1,YI1);                                                %
画电流波形
XI2=sin((-M_X:1:M_X)./M_X.*pi./2).*M_X;
YI2=interp1(BB1,HH1,XI1,'spline');                         %
3次样条插值计算
X2=(1:len_X)+len_X-1;
X2=X2/len_X*pi;                                                 %
平移到先前波形的右侧
plot(X2,-YI2);                                                       %画电流波形
grid on;
xlim([0,2*pi]);                                                        %
限定X轴显示范围
xlabel('wt');                                                            %X轴标号
ylabel('磁化电流I(安匝)');                                       %Y轴标号



系统分类: 资源共享   |   用户分类: 无分类   |   来源: 无分类   |   【推荐给朋友】

    阅读(264)    回复(3)  

投一票您将和博主都有获奖机会!

  • TIAnalog

    2008-1-11 15:10:48

    磁滞回线一般都是在变压器设计中考虑的问题,涉及到有关的磁材料,这个结果还是相当不错的

  • miongshao.xue

    2008-1-11 19:18:47

    程序我拷贝下来了,感觉很不错。

  • mcpdsp

    2008-2-23 14:46:57

    程序主要想展示一下由于磁滞所引起的电流波形畸变。谢谢大家捧场~~