Просмотр исходного кода

更新simulink模型

Signed-off-by: huhui <huhui@sharkgulf.com>
huhui 3 лет назад
Родитель
Сommit
7c36cb7da1

BIN
Simulink/FEM_PMSM.slx


BIN
Simulink/FEM_PMSM.slxc


BIN
Simulink/FOC_FEM_PMSM.slx


BIN
Simulink/FOC_FEM_PMSM.slx.original


BIN
Simulink/FOC_FEM_PMSM.slxc


BIN
Simulink/FOC_FEM_PMSM_sfun.mexw64


BIN
Simulink/FOC_smo.slx


+ 15 - 10
Simulink/Motor_A1_dq_t_data.m

@@ -22,25 +22,30 @@ f_speed_ctrl        = 500;                          % [Hz] Speed/torque Controll
 Ts_Spd_ctl          = 1/f_speed_ctrl;
 Ts_Spd_ctl          = 1/f_speed_ctrl;
 PWM_Cnt             = 6000;
 PWM_Cnt             = 6000;
 PWM_Half_Cnt        = PWM_Cnt/2;
 PWM_Half_Cnt        = PWM_Cnt/2;
-
+DeatTime = 0;
+DT_PWM_CNT = PWM_Cnt/(Ts_ctrl)*DeatTime;
 Torque_Mode = 1;
 Torque_Mode = 1;
 Speed_Mode = 2;
 Speed_Mode = 2;
 Ctrl_Mode = Torque_Mode;
 Ctrl_Mode = Torque_Mode;
 %Simulink provider Motor parameters
 %Simulink provider Motor parameters
-n_polePairs  = 5;        % [-] Number of motor pole pairs
+n_polePairs  = 4;        % [-] Number of motor pole pairs
 PM           = 0.01688;   % Permanent magnet flux linkage, 
 PM           = 0.01688;   % Permanent magnet flux linkage, 
-Ld           = 0.625e-4;%0.45e-4;%0.07e-3;% d-axis inductance, 
-Lq           = 0.625e-4;%0.178e-3; % q-axis inductance,
-Rs           = 0.011;   % Stator resistance,
+Ld           = 0.7e-4;%0.07e-3;% d-axis inductance, 
+Lq           = 0.178e-3; % q-axis inductance,
+Rs           = 0.015;   % Stator resistance,
 J            = 0.03945; % Moment of inertia,
 J            = 0.03945; % Moment of inertia,
-bandwith     = 1600*2*pi;
+bandwith     = 800*2*pi;
 i_Udc        = 96;      % DCbus max voltage
 i_Udc        = 96;      % DCbus max voltage
-
+Rload = 1e6;
 %Current=xlsread('E:\works\项目\MC100\电机仿真数据\PhiD-I230405.xlsx','Sheet1','B2:N2');
 %Current=xlsread('E:\works\项目\MC100\电机仿真数据\PhiD-I230405.xlsx','Sheet1','B2:N2');
 %FluxD = xlsread('E:\works\项目\MC100\电机仿真数据\PhiD-I230405.xlsx','Sheet1','B4:N40');
 %FluxD = xlsread('E:\works\项目\MC100\电机仿真数据\PhiD-I230405.xlsx','Sheet1','B4:N40');
 %FluxQ = xlsread('E:\works\项目\MC100\电机仿真数据\PhiQ-I230405.xlsx','Sheet1','B4:N40');
 %FluxQ = xlsread('E:\works\项目\MC100\电机仿真数据\PhiQ-I230405.xlsx','Sheet1','B4:N40');
 %Torque = xlsread('E:\works\项目\MC100\电机仿真数据\T-I230405.xlsx','Sheet1','B4:N40');
 %Torque = xlsread('E:\works\项目\MC100\电机仿真数据\T-I230405.xlsx','Sheet1','B4:N40');
 
 
+% FluxD = xlsread('E:\works\项目\MC100\电机仿真数据\5N-phiD-Current.xlsx','Sheet1','B4:N40');
+% FluxQ = xlsread('E:\works\项目\MC100\电机仿真数据\5N-phiQ-Current.xlsx','Sheet1','B4:N40');
+% Torque = xlsread('E:\works\项目\MC100\电机仿真数据\5N-Torque-Current.xlsx','Sheet1','B4:N40');
+
 %% Define operating point and flux linkage table breakpoints
 %% Define operating point and flux linkage table breakpoints
 PointsPerCycle = 36;    % Number of angle data points
 PointsPerCycle = 36;    % Number of angle data points
 Shaft_Speed = 3500;     % Nominal shaft speed (RPM)
 Shaft_Speed = 3500;     % Nominal shaft speed (RPM)
@@ -55,7 +60,7 @@ nAngle = length(angleVec);
 fluxDmat = zeros(nMag,nGamma,nAngle);
 fluxDmat = zeros(nMag,nGamma,nAngle);
 fluxQmat = zeros(nMag,nGamma,nAngle);
 fluxQmat = zeros(nMag,nGamma,nAngle);
 torqueMat = zeros(nMag,nGamma,nAngle);
 torqueMat = zeros(nMag,nGamma,nAngle);
-%for i = 1:nMag
+% for i = 1:nMag
 %    for j = 1:nGamma
 %    for j = 1:nGamma
 %        for m = 1:nAngle
 %        for m = 1:nAngle
 %            fluxDmat(i,j,m)    = FluxD(j, i);
 %            fluxDmat(i,j,m)    = FluxD(j, i);
@@ -63,8 +68,8 @@ torqueMat = zeros(nMag,nGamma,nAngle);
 %            torqueMat(i,j,m)   = Torque(j, i);
 %            torqueMat(i,j,m)   = Torque(j, i);
 %        end
 %        end
 %    end
 %    end
-%end
-load A1_motor_flux_data
+% end
+load A1_N5_motor_flux_data
 %% Extract flux linkdage data from Motor-CAD
 %% Extract flux linkdage data from Motor-CAD
 % nMag = length(magVec);
 % nMag = length(magVec);
 % nGamma = length(gammaVec);
 % nGamma = length(gammaVec);