资源简介
使用simulink和matlab一起搭建的非线性自抗扰控制器,按照韩京清老师《自抗扰控制技术》中264页的第一个扰动函数来搭建的,系统也是那一页的系统。对大家了解自抗扰技术,熟悉simulink都有一定帮助。

代码片段和文件信息
function [sysx0strts]=ctrl(txuflagrh1cb)
switch flag
case 0
[sysx0strts] = mdlInitializeSizes(tux); % 初始化
case 3
sys = mdlOutputs(txurh1cb); % 输出量的计算
case { 1249 }
sys = []; % 未使用的flag值
otherwise
error([‘Unhandled flag = ‘num2str(flag)]); % 处理错误
end;
%==============================================================
% 当flag为0时进行整个系统的初始化
%==============================================================
function [sysx0strts] = mdlInitializeSizes(tux)
% 首先调用simsizes函数得出系统规模参数sizes 并根据离散系统的实际
% 情况设置sizes变量
sizes = simsizes;
sizes.NumContStates = 0; % 连续状态数为0
sizes.NumDiscStates = 0; % 离散状态数为0
sizes.NumOutputs = 1; % 输出路数为1
sizes.NumInputs = 5; % 输入路数为5
sizes.DirFeedthrough = 1;% 输入在输出中直接显示出来,注意不能将其设置为0
sizes.NumSampleTimes = 1;
sys = simsizes(sizes);
x0 = []; % 设置初始状态为零状态
str = []; % 将str变量设置为空字符串
ts = [-1 0]; % 采样周期: [period offset]
%==============================================================
% 在主函数flag=3时,计算系统的输出变量
%==============================================================
function sys = mdlOutputs(txurh1cb)
e1 = u(1)-u(3); %位置误差
e2 = u(2)-u(4); %速度误差
u0 = - fhan(e1c*e2rh1);
% sys=u0;
sys=u0-u(5)/b;
function f = fhan(e1e2rh1)
d = r * h1^2;
a0 = h1 * e2;
y = e1 + a0;
a1 = sqrt((d + 8*abs(y)) * d);
a2 = a0 + sign(y) * (a1 - d)/2;
a = (a0 + y) * (sign(y + d) - sign(y - d)) / 2 + a2 * (1 - (sign(y + d) - sign(y - d)) / 2);
f = -r *(a / d) * (sign(a + d) - sign(a - d)) / 2 - r * sign(a) * ( 1 - (sign(a + d) - sign(a - d)) / 2);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1714 2018-11-06 20:07 ADRC_P264FIRST\ctrl.m
文件 196136 2018-12-10 13:04 ADRC_P264FIRST\Disturb.mat
文件 1792 2018-11-06 20:22 ADRC_P264FIRST\eso3.m
文件 196136 2018-12-10 13:04 ADRC_P264FIRST\estDisturb.mat
文件 513 2018-11-06 22:22 ADRC_P264FIRST\main.m
文件 24528 2018-12-10 13:05 ADRC_P264FIRST\p264Fsystem.slx
文件 23092 2018-11-06 18:17 ADRC_P264FIRST\p264Fsystem.slx.r2014b
文件 11 2018-11-07 20:32 ADRC_P264FIRST\startup.m
文件 1615 2018-11-06 19:59 ADRC_P264FIRST\td.m
目录 0 2018-12-10 13:05 ADRC_P264FIRST
----------- --------- ---------- ----- ----
445537 10
相关资源
- 基于MATLAB的线性控制系统分析与设计
- 基于气动力的导弹姿态控制(附MATL
- Matlab实现混沌系统的控制
-
基于Simuli
nk的电动助力转向控制策略 - 基于MATLAB的液压伺服控制系统分析与
- MATLAB控制工程工具箱技术手册
- 二连杆系统独立PD控制和PD+重力补偿控
- 自抗扰控制ADRC的MATLAB仿真+书籍资料
- 基于模型预测控制的车辆轨迹跟踪问
- 自动控制原理课程设计2019.rar
- 基于matlabGUI的小车倒立摆pid控制
-
simuli
nk三电平背靠背变流器控制永磁 - 单连杆系统独立PD控制和PD+重力补偿控
- 机械臂SEA柔顺控制matlab仿真
- 小车倒立摆系统的控制及GUI动画演示
- 论文研究-电加热模糊PID控制及仿真研
- 无人驾驶车辆模型预测控制Matlab代码
- 分布式预测控制程序
- 无人驾驶车辆模型预测直线轨迹跟踪
- 复合非线性反馈积分滑模控制器的设
- 优化的基于不定频滞环的SVPWM控制si
- dSPACE RCP系统控制开发套件培训
- Spacecraft Control Toolbox.zip
- 模糊控制及其MATLAB应用
- 基于卡尔曼滤波的PID控制
- 王立新Matlab模糊系统与模糊控制教程
-
基于SIMUli
nk的汽车发动机怠速模糊神 -
simuli
nk控制系统的设计方法-ch05a.p - 基于下垂法的直流微电网新型控制策
- 永磁同步电机的模糊PI控制.rar
评论
共有 条评论