基于MATLAB/GUI的内置式永磁同步电动机MTPA离线计算系统*

2020-06-21 08:17刘海斌张海强包西平詹凯良
机电工程技术 2020年5期
关键词:内置式曲线拟合同步电机

刘海斌,张海强,王 毅,包西平,詹凯良

(徐州工业职业技术学院,江苏徐州 221005)

0 引言

内置式永磁同步电机以其高效率、高功率密度、低噪声、高转矩电流比、强鲁棒性等优点[1],在电动汽车领域得到了广泛应用[2]。根据IPMSM交/直轴电感不相等的特性,为了充分利用IPMSM的磁阻转矩,在恒转矩区常采用最大转矩电流比(Maximum Torque Per Ampere,MTPA)的控制策略,即利用最小的定子电流获得最大的电磁转矩输出,并且提高母线电压利用率。

为实现新能源汽车内置式永磁同步电机(IPMSM)在低速区的最优控制[3-4],相同电流幅值下能够出更大的扭矩即MTPA控制,如图1所示。实际台架标定可以寻找到全扭矩范围内的最优id/iq,并由此产生由扭矩指令生成的id/iqMAP电流表,但其需要很长的标定周期,严重影响新产品的开发周期;若能够离线计算出在低转速范围内不同扭矩指令下对应的最优id/iq,这些id/iq的点集便组成了一张电流MAP表,大大缩短了开发周期,并且实际扭矩Te精度也能满足控制需求。

图1 电机最优控制曲线图

基于上述要求,本文设计了基于MATLAB 2017/GUI的离线计算的id/iq—MAP表,使电机能够实现四象限安全可靠的运行且同时能够满足具体的技术输出需求[5],如扭矩精度、最大功率输出、最大扭矩输出、电机效率、电压利用率等。系统平台特点:扭矩精度满足设定需求;缩短IPMSM新电机的标定周期;该算法能够适用所有IPMSM。

1 系统平台架构与界面设计

1.1 系统平台架构

内置式永磁同步电机(IPMSM)最大转矩电流比离线计算电流分配表控制算法包含3个子系统[6]。如图2所示。

图2 系统程序结构

(1)曲线拟合模块。根据电机仿真参数拟合出电感参数Ld/Lq、永磁体磁链ψf随电流变化的规律。

(2)MTPA计算模块。根据最大转矩电流比原理,在全转矩范围内,且扭矩步长为1 N·m,寻找出一张最优的id/iq电流MAP表。

(3)数据处理模块。将吻合算法需求的id/iq写入.CSV文件并保存起来,以MTPA-id/iq.CSV格式输出。最终将.CSV格式的文件转化为.C的文件输出。

1.2 系统界面

根据系统架构,所设计的系统软件界面如图3所示。界面由标题、曲线拟合类型选择列表、数据处理按钮等操作按钮组成。

图3 主界面

曲线拟合类型选择列表用于选择拟合曲线的类型。“首先运行”按钮用于对拟合出来的数据进行读取;“数据处理”该按钮用于将id/iq数据写入.CSV文件。各控制按钮详细的使用说明可以点击“用户指导手册”按钮进行参考,点击“退出系统”按钮则退出并关闭系统的运行[7-8]。

2 系统功能模块设计

根据图1与图2所示的子系统组成模块结构、系统平台界面,采用MATLAB2017/GUI进行各系统模块的界面操作设计,通过编写GUI回调函数来对操作进行响应。用户通过控制按钮进行系统的设计。下面介绍几个关键控制模块。

2.1 打开数据文件

“打开数据文件”按钮选择需要加载的.CSV文件,该文件主要是电机仿真参数;若用户没有选择任何文件,则系统会出现如图4所示的提示界面。

图4 错误提示

加载.CSV文件与出错报警部分关键代码如下:

[filename, pathname]= uiputfile ({′*.csv′,′CSV files′},′) ;

if isequal(filename,0) ||isequal(pathname,0)

return;

else

fpath=fullfile(pathname, filename);

end

function edit56_Callback (hObject, eventdata, handles)

function edit56_Create Fcn (hObject, eventdata, handles)

if ispc&&isequal(get(hObject,′Background Color′),get(0,′default Uicontrol Background Color′)) set(hObject,′Background Color′,′white′) ;

end

2.2 曲线拟合类型选择

选择“曲线拟合类型选择”下拉菜单,可以选择Ld曲线拟合、Lq曲线拟合、永磁磁链拟合。点击“d轴电感Ld曲线拟合”选项,则进行d轴电感随电流变化的拟合工作。若选定一组电机的设计参数,已通过Open File文件打开了,则拟合的效果如图5所示,由图可知Ld与id/iq呈非线性变化,符合客观规律。

图5 Ld与id-iq的关系曲线

点击“q轴电感Lq曲线拟合”选项,则进行q轴电感随电流变化的拟合工作,若选定一组电机的设计参数,已通过Open File文件打开了,则拟合的效果如图6所示,由图中可知Lq与id/iq呈非线性变化,符合内在式永磁同步电机交直轴电流客观规律。

图6 Lq与id-iq的关系曲线

点击“永磁体磁链曲线拟合”选项则进行永磁体磁链随电流变化的拟合工作,若选定一组电机的设计参数,已通过Open File文件打开了,则拟合的效果如图7所示。

图7 永磁体磁链曲线拟合

曲线拟合类型选择部分关键代码如下:

list=get(handles.FB,′String′) ;

val1=get(handles.FB,′value′);

selectedval=list{val1};

if(qy==1) trans_ratio=str2num (get(handles.transformer,′String′)) ;

Lr=str2num (get(handles.Lr,′String′));Lf=str2num(get(handles.Lf,′String′)) ;

C=str2num(get(handles.C ,′String′));

RL=str2num(get(handles.RL ,′String′));

Vin=str2num(get(handles.Vin ,′String′));

A=(trans_ratio*Vin)/(Lf*C);

B1=(2* (trans_ratio^2) *Lr*fre/Lf) +1/(RL*C);B2=(2*(trans_ratio^2)*Lr*fre/Lf)*1/(RL*C)+1/(Lf*C);

num=[A];

den=[1,B1,B2];

Gvd=tf(num,den);

%elseif(TFB==1)

elseif(qy==2)

trans_ratio=str2num (get (handles.transformer ,′String′)) ;

Lf=str2num(get(handles.Lf,′String′));

C=str2num(get(handles.C ,′String′));

RL=str2num(get(handles.RL ,′String′));

Vin=str2num(get(handles.Vin ,′String′));

A=(trans_ratio)*Vin;

B1=Lf*C;

B2=Lf/RL;

num=[A];

den=[B1,B2,1];

Gvd=tf(num,den);

end;

elseif(qy==2) trans_ratio=str2num (get(handles.transformer,′String′)) ;

Lf=str2num(get(handles.Lf,′String′));

C=str2num(get(handles.C ,′String′));

RL=str2num(get(handles.RL ,′String′));

Vin=str2num(get(handles.Vin ,′String′));

A=(trans_ratio)*Vin;

B1=Lf*C;

Gvd=tf(num,den);end;

2.3 首先运行

点击“首先运行”按钮就开始对拟合出来的数据进行读取,并进行MTPA算法的运算,在数据读取的过程中会弹出如下对话框,读完之后且MTPA算法部分处理完成之后该对话框自动关闭,如图8所示。

图8 首先运行按钮

首先运行按钮关键代码如下:

function Wp_Callback(hObject, eventdata, handles)

if ispc&&isequal(get(hObject,′Background Color′),get(0,′default Uicontrol Background Color′))

set(hObject,′Background Color′,′white′) ;

if CONNECTED~=1

msgbox(′′) ;

if ispc&&isequal(get(hObject,′Background Color′),

get(0,′default Uicontrol Background Color′))

set(hObject,′Background Color′,′white′) ;

Max Voltage=uint16 (str2num (get (handles.edit1,′String′))); MinVoltage=uint16(str2num(get(handles.edit2,′String′))); Multiply_Cof=uint16(str2num (get(handles.edit3,′String′) ) ); Addition_Cof=uint16(str2num(get(handles.edit4,′String′)));

end

3 系统分析与测试

根据MTPA控制原理,点击“绘制图形”按钮,此时系统软件会绘制整个过程中的图像,并保存起来,以直观的形式呈现出来便于用户进行分析整个过程的可靠性,图9所示为MTPA控制id/iq与转矩关系曲线。iq>0,id<0,内置式永磁同步电机控制系统进入了弱磁工作状态。

图9 MTPA控制id/iq与转矩关系曲线

图10 id与控制转矩关系曲线

图10 所示为不同转速情况下直轴电流id的一簇曲线。id<0,显示内置式永磁同步电动机此时进入了弱磁的工作状态,图10表明直轴电流id数值绝对量越大,控制转矩也越大,与理论分析保持一致。图11所示为基于MTPA的控制策略时最大电流曲线。由图中可以看出,定子总电流变大,也符合内置式永磁同步电动机运行变化规律。

图11 MTPA控制时最大电流曲线

4 结束语

本文通过对永磁同步电机弱磁控制原理的分析,基于MABLAB/GUI自动解算出高效的(id,iq)工作点,并生成电流参考指令表满足MTPA曲线控制,同时减少开发人员的电机标定的工作量。设计的系统已在实际系统中得到了实验验证,电机的输出特性均满足实际的需求,满足产品的升级开发,对永磁同步电机高性能控制系统的设计有一定的指导意义。

猜你喜欢
内置式曲线拟合同步电机
同步电机转子磁极结构
大功率同步电机转子设计
基于田口法的内置式双层永磁体转子结构的设计与优化
内置式永磁同步电机方案对比研究
突然短路与同步电机结构及电力系统的关系
不同阶曲线拟合扰动场对下平流层重力波气候特征影响研究*
基于MATLAB 和1stOpt 的非线性曲线拟合比较
浅谈Lingo 软件求解非线性曲线拟合
曲线拟合的方法
一种内置式电动工具变频器设计