今天給大家介紹如何用MATLAB繪製電機效率MAP圖。所謂效率MAP圖,就是電機(和控制器)在給定轉速和轉矩下的效率分佈。電機(和控制器)的效率是電機轉速和輸出轉矩的二元函式,在三維座標中是一個曲面。當我們用不同值的效率平面(平行於T-n平面的平面)去“切”這個曲面,並將切線投影到T-n平面上,即是電機的效率MAP圖。這與地理上的等高線圖非常相像,所以我們用contour函式來繪製電機效率MAP圖。
工具/原料
試驗資料(xls格式)
MATLAB
方法/步驟
資料準備
以一臺2kW無刷直流電機為例,效率試驗和載入試驗獲得的資料如下圖,為常見的xls格式(即Excel表格),載入試驗的資料主要用於繪製電機的機械特性。
資料匯入
將試驗資料匯入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將在指令視窗中輸出各向量的全部值,方便檢查。
設定效率曲線數值向量
【參考指令】
value_eff=[70, 75, 80,81, 84,90];
解釋:value_eff向量用於設定效率MAP圖中各曲線的標定數值,作為contour函式的呼叫引數。向量值和長度根據實際電機設定,向量維數越高,MAP曲線越密。
擬合機械特性曲線
【參考指令】
t1=polyfit(speed_load, torque_load,1)
解釋:polyfit函式用於擬合轉速和轉矩的關係。直流無刷電機的機械特性是一條直線,所以維數設為“1”,具體用法參見MATLAB的Help文件。輸入該指令後按“Enter”鍵,得到兩個引數-0.0782和90.1554,即可得到電機的機械特性函式Tor=-0.0782*spd+90.1554。
編寫機械特性函式
新建一個M檔案,建立機械特性函式
【參考指令】
function Tor=T(spd)
Tor=-0.0782*spd+90.1554;
end
並儲存在MATLAB的文件路徑中,一般為“C:\Users\使用者名稱\Documents\MATLAB”。這時,MATLAB的Current Directory中就會出現一個新的M檔案“T”,供MATLAB呼叫。
繪製機械特性曲線
【參考指令】
%根據實際測量資料,設定擬合的機械特性曲線的範圍
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
得到下圖的機械特性曲線
繪製效率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圖
標定效率數值
【參考指令】
clabel(c,h,value_eff);
【設定座標、標題等】
可用指令設定,也可以在figure的insert選單中直接設定。
其他
電機效率MAP圖通常只要求機械特性以下的部分,這個可以截圖到各種圖片處理軟體進行處理,最後得出的電機效率MAP圖見下圖。
注意事項
轉速向量、轉矩向量和效率向量的維數必須一致;
理論上同一轉速-轉矩下的效率值是唯一的,若試驗資料出現衝突,最好剔除,否則MATLAB會取效率的平均值;
機械特性函式務必儲存在上述路徑,否則MATLAB不能識別這個自定義函式。