1、数据准备 以一台2kW无刷直流电机为例,效率试验和加载试验获得的数据如下图,为常见的xls格式(即Excel表格),加载试验的数据主要用于绘制电机的机械特性。
2、数倌栗受绽据导入 将试验数据导入MATLAB,并生成转速向量、转矩向量和效率向量。注意,三个向量的长度必须一致。这里我们用到xlsread函数。【参考指令】speed_load=xlsread('location.xls','sheet1','A2:A14'); %导入加载试验转速数据torque_load=xlsread('location.xls','sheet1','B2:B14'); %导入加载试验转矩数据speed_eff=xlsread('location.xls','sheet2','A2:A1492'); %导入效率试验转速数据torque_eff=xlsread('location.xls','sheet2','B2:B1492'); %导入效率试验转矩数据efficiency_eff=xlsread('location.xls','sheet2','C2:C1492'); %导入效率试验效率数据 解释:“location”为加载试验数据的保存路径;“sheet1”为数据所在的页;“A2:A14”为转速数据所在的单元格;句尾分号可加可不加,若不加,MATLAB将在指令窗口中输出各向量的全部值,方便检查。
3、设置效率曲线数值向量【参考指令】value_eff=[70, 75, 80,81, 84,90]; 解释:value_eff向量用于设置效率MAP图中各曲线的标定数值,作为contour函数的调用参数。向量值和长度根据实际电机设置,向量维数越高,MAP曲线越密。
4、拟合机械特性曲线【参考指令】t1=polyfit(speed_load, torque_load,1) 解释:polyfit函数用于拟合转速和转矩的关系。直流无刷电机的机械特性是一条直线,所以维数设为“1”,具体用法参见MATLAB的Help文档。输入该指令后按“Enter”键,得到两个参数-0.0782和90.1554,即可得到电机的机械特性函数Tor=-0.0782*spd+90.1554。
5、编写机械特性函数 新建一个M文件,建立机械特性函数【参考指令】function Tor=T(spd)Tor=-0.0782*spd+90.1554;end 并保存在MATLAB的文档路径中,一般为“C:\Users\用户名\Documents\MATLAB”。这时,MATLAB的Current Directory中就会出现一个新的M文件“T”,供MATLAB调用。
6、绘制机械特性曲线【参考指令】%根据实际测量数据,设醅呓择锗置拟合的机械特性曲线的范围spd_high=1124:5:1153; %设置高转速范围spd_low=0:5多唉捋胝:697; %设置低转速范围figure%绘制低转速机械特性Tor=T(spd_low);plot(spd_low,Tor,'r--','linewidth',3);hold on%绘制高转速机械特性Tor=T(spd_high);plot(spd_high,Tor,'r--','linewidth',3);hold on%绘制试验机械特性plot(speed_load,torque_load,'r--','linewidth',3);hold on得到下图的机械特性曲线
7、绘制效率MAP 这里用到contour函数,具体参拈络焓瘅见Help文档。【参考指令】[SPEED,TORQUE]=meshgrid(0:10:1200,0:1:100); %标定坐标范围EFFICIENCY=griddata(speed_eff,torque_eff,efficiency_eff,SPEED,TORQUE,'v4'); %插值[c,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff); %MAP图
8、标定效率数值【参考指令】clabel(c,h,value_eff);
9、【设定坐标、标题等】 可用指令设置,也可以在figure的insert菜单中直接设置。
10、其他 电机效率MAP图通常只要求机械特性以下的部分,这个可以截图到各种图片处理软件进行处理,最后得出的电机效率MAP图见下图。