文档详情

基于-MATLAB6的磁化曲线拟合.doc

发布:2025-05-24约6.4千字共6页下载文档
文本预览下载声明

基于MATLAB6.5的磁化曲线拟合

问题的提出。

在进行感应电机磁路计算时,需要根据定转子齿部和轭部磁通密度确定相应的磁场强度。数据手册中磁通密度和磁场强度是以数据表的形式给出的。因此,在确定磁场强度时就有必要进行查询。

采用直接查表然后进行带入运算在进行手算程序时对精度要求不是很高的情况下尚可满足要求。但是在进行计算机电机程序设计时,通过查询数表操作来完成运算时却显得很不方便。最关键的是直接查询数表有相当大的局限性。对与哪些没有落在数表内点上的数据,往往要进行局部线性化的近似处理,这就给程序设计带来了一定的麻烦。

因此,是否可以通过找到一个与一系列离散数据高度拟合的连续曲线来通过代入任意一个磁通密度值确定磁场强度?

二、问题分析。

本问题中涉及到的铁磁物质型号为D23,在《电机设计·机械工业出版社》一书附录5中对应有磁通密度和磁场强度数据150组。

将这150组数据描点后必有一条曲线与这150组数据高度拟合。考虑到傅里叶级数定义任何周期函数都可以用正弦函数和余弦函数构成的无穷级数来表示,若对一个非周期函数进行周期延拓后便可适用于傅里叶级数分解。

由此,可以假设任取一个经周期延拓的非周期函数曲线上的一段,可以表示成正弦函数和余弦函数级数的和的形式。

因此,借助于MATLAB6.5,可以选用三角函数sinx,cosx,sin2x,cos2x,…sin(mx),cos(mx)为基底函数,进行最小二乘法拟合。

MATLAB6.5中命令

x=lsqcurvefit(fun,x0,xdata,ydata)

[x,resnorm]=lsqcurvefit(fun,x0,xdata,ydata)

的功能是根据给定的数据(xdata,ydata),按函数文件fun给定的函数,以x0为初值作最小二乘拟合,返回函数fun中的系数向量x和残差的平方和范数resnorm。

根据以上分析,函数文件fun中的函数可定义为

f=A1sinx+A2cosx+A3sin2x+A4cos2x+A5sin3x+A6cos3x+…

三、问题解决。

根据以上分析,编写m文件,对磁化曲线进行拟合,源程序如下所示。

源程序段1:定义拟合函数文件,保存名为hanshu.m

functionf=hanshu(a,B)

f=a(1);

fori=1:1:30

f=f+a(2*i+1)*cos(B.*(i))+a(2*i)*sin(B.*(i));

end

源程序段2:磁化曲线拟合函数,保存名为magnetization_curve_fit.m

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

%%%%%%%%%%中小型三相感应电动机电磁计算程序

%%%%%%%%%电机设计作业——磁路计算;

%%%%%%姓名:孙鹏学号班级

%%%%已知数据:输出功率PN=13KW,电压U1=380V(Δ-Δ接法),相数m1=3,频率f=50Hz,极数2p=6,同步转速n1=1000r/min,效率η=0.875,功率因数cosφ=0.83;

clc

clear

B=0.40:0.01:1.89;

H=[1.38,1.40,1.42,1.44,1.46,1.48,1.50,1.52,1.54,1.56,...

1.58,1.60,1.62,1.64,1.66,1.69,1.71,1.74,1.76,1.78,...

1.81,1.84,1.86,1.89,1.91,1.94,1.97,2.00,2.03,2.06,...

2.10,2.13,2.16,2.20,2.24,2.28,2.30,2.36,2.40,2.45,...

2.50,2.55,2.60,2.65,2.70,2.76,2.81,2.87,2.93,2.99,...

3.06,3.13,3.19,3.26,3.33,3.41,3.49,3.57,3.65,3.74,...

3.93,3.92,4.01,4.11,4.22,4.33,4.44,4.56,4.67,4.80,...

4.93,5.07,5.21,5.36,5.52,5.68,5.84,6.00,6.16,6.33,...

6.52,6.72,6.94,7.16,7.38,7.62,7.86,8.10,8.36,8.62,...

8.90,9.20,9.50,9.80,10.1,10.5,10.9,11.3,11.7,12.1,...

12.6,13.1,13.

显示全部
相似文档