function [sys,x0,str,ts] = ybdj_dq(t,x,u,flag)
% ls=0.0597; lr=0.062; lm=0.056; rs=0.374; rr=0.267; tr=0.232; cgm=0.153;
% J=0.025 ;np=2; rt=0.592;
switch flag,
case 0,%%初始化
[sys,x0,str,ts]=mdlInitializeSizes;
case 1,%% 给定t,x,u 计算连续状态的导数
sys=mdlDerivatives(t,x,u);
case 2, %% 更新离散状态,采样时间,最大时间步长
sys=mdlUpdate(t,x,u);
case 3,%% 给定t,x,u 计算s函数输出
sys=mdlOutputs(t,x,u);
case 4,%% 计算下一个采样时间(只用于变采样时间模块)
sys=mdlGetTimeOfNextVarHit(t,x,u);
case 9,%%终止仿真
sys=mdlTerminate(t,x,u);
otherwise
error(['Unhandled flag = ',num2str(flag)]);
end
%%
function [sys,x0,str,ts]=mdlInitializeSizes
sizes = simsizes; %% simsize是MATLAB S-functions to中使用的一个辅助函数,提供有关s函数的特定信息。
sizes.NumContStates = 4;%%用的静止坐标系模型 状态变量为isa isb ira irb w 一共5个
sizes.NumDiscStates = 0;%%离散状态变量个数,这里为0
sizes.NumOutputs = 5;%%输出量,根据异步电机alfa-beta模型,为4 分别为 电磁转矩 转速 alfa电流 beta电流
sizes.NumInputs = 3;%% 4个 分别为三相电压、负载转矩
sizes.DirFeedthrough = 1;
sizes.NumSampleTimes = 1; % at least one sample time is needed
sys = simsizes(sizes); % 设 置 完 后 赋 给 sys 输 出 %%%%初始化上述结构以符合s函数的规范后,应再次调用simsize,将结构转换为可由Simulink处理的向量。例如:sys = simsize (size);
x0 = [1e-6;0;0;0;]; %状态变量初值
str = [];
ts = [0 0];
%%
function sys=mdlDerivatives(t,x,u)
ls=0.2941; lr=0.2898; lm=0.2838; rs=1.85; rr=2.658;
tr=0.109; cgm=0.055;
J=0.1284 ;np=2; rt=4.3991;
usd=u(1);
usq=u(2);
tl=u(3);
w1=x(4)+lm*x(3)/(tr*x(1));
A=[-1/tr, lm/tr, 0;
lm/(cgm*ls*lr*tr), -rt/(cgm*ls), w1;
-lm*x(4)/(cgm*ls*lr), -w1, -rt/(cgm*ls);];
B=[0, 0;
1/(cgm*ls), 0;
0, 1/(cgm*ls)];
x=[x(1);x(2);x(3)];
U=[usd;usq];%%其中ura、urb等于0。
dx=A*x+B*U;%%异步电机电压方程,变形之后
sys=dx;%%送给sys函数,sys函数在这里是mdlDerivatives这个函数,就是连续变量求导的函数
te=np*lm*x(1)*x(3)/lr;
sys(4)=(te-u(3))*np/J;
%%
function sys=mdlOutputs(t,x,u)
np=2; lm=0.2838; J=0.1284; lr=0.2898; tr=0.109;
te=np*lm*x(1)*x(3)/lr;
w1=x(4)+lm*x(3)/(tr*x(1));
sys=[te;x(4);x(2);x(3);w1];
%%
function sys=mdlUpdate(t,x,u)
sys=[];
function sys=mdlGetTimeOfNextVarHit(t,x,u);
sampleTime = 1;
sys = t+sanpleTime;
%%
function sys=mdlTerminate(t,x,u)
sys = [];
%%
wqioeuacer
- 粉丝: 60
- 资源: 5
最新资源
- (源码)基于OVMS v3的无线控制台系统(WifiConsole).zip
- (源码)基于Arduino和ESP32的IoT计算机开关系统.zip
- (源码)基于Qt框架的PX4飞行控制器固件升级系统.zip
- (源码)基于Spring Boot和Vue的需求管理系统.zip
- 基于深度学习YOLOv5的车牌检测与识别项目源码
- (源码)基于Python的CSGO饰品价格分析与比较系统.zip
- ccs3.3安装补丁SR12-CCS-v3.3-SR-3.3.82.13 2
- (源码)基于Spring Boot框架的攀枝花物流系统.zip
- (源码)基于Spring Boot和Vue的权限管理系统.zip
- (源码)基于Python和HMM的酵母起始密码子预测系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈