电机滑模控制 LuGre摩擦模型

Simulation for A Sliding Mode Controller

Abstract: In this paper we first briefly introduce sliding mode controllers. Then we mainly study a sliding mode controller which has appeared in the literature. A simulation of the sliding mode controller is conducted in Matlab 6.5 environment, a corresponding PID controller also is done for comparsion.

1 Introduction

Variable structure control (VSC) with sliding mode control was first proposed and elaborated in the early 1950’s in the Soviet Union by Emelyanov and several coresearchers[2]. In their pioneer works, the plant considered was a linear second-order system modeled in phase variable form. Since then, VSC has developed into a general design method being examined for a

wide spectrum of system types including nonlinear systems, multi-input/multi-output systems, discrete-time models, large-scale and infinite-dimensional systems, and stochastic systems. In addition, the objectives of VSC has been greatly extended from stabilization to other control

functions. The most distinguished feature of VSC is its ability to result in very robust control systems; in many cases invariant control systems result. Loosely speaking, the term “invariant” means that the system is completely insensitive to parametric uncertainty and external disturbances. Today, research and development continue to apply VSC to a wide variety of engineering systems.

The main idea at the basis of SMC techniques is that of designing a sliding surface to which the controlled system trajectories must belong. On the sliding manifold the behaviour of the system is the expected one. In order to obtain the control aim a control must be designed with an authority sufficient to dominate the uncertainties and the disturbances acting on the system. The control

promptly reacts to any deviation, however small, from the prescribed behaviour steering the system back to the sliding manifold. An advantage of this approach is that the sliding behaviour is insensitive to model uncertainties and disturbances which do not steer the system outside from the chosen manifold.

In this paper, We mainly studied one sliding mode controller for position and speed control of flight simulator servo system with large friction which was proposed by Liu Jin kun and Er Lian jie in 2003[1]. Then we simulated the sliding mode controller and a PID controller (for comparision) in Matlab 6.5 environment.

2 Sliding Mode Controller design for position and speed control of flight simulator servo system with large friction[1]

This part can refer to [1].

Reference

[1] Liu Jin kun and Er Lian jie, “Sliding Mode Controller Design for Position and Speed Control of Flight Simulator Servo System with Large Friction”, Journal of System Engineering and Electronics, Vol. 14, No. 3, pp. 59-62, 2003

[2] John Y. Hung, Weibing Gao, and James C. Hung, “Variable Structure Control: A Survey”, IEEE Transactions on Industrial Electronics, Vol. 40, No. 1, February, 1993

[3] Liu Jin Kun, “Matlab Simulation for Sliding Mode Control”, BeiJing, Publishing House for TsingHua University, 2005

%%%%  Model.m %%%%function dx=Model(t,x)global A alfa J Ce R Km Ku a1 Fm Fc M kv c ep k delta
persistent aa
c=5.0;
ep=30.6;
k=30;
a1=1.0; % Effect on the shape of friction curve
Fm=20;
Fc=15;
kv=2.0;
F=J*x(3);
if t==0aa=0;
enddF=J*aa;
if abs(x(2))<=alfaif F>FmFf=Fm;dFf=0;elseif F<-FmFf=-Fm;dFf=0;elseFf=F;dFf=dF;end
endif x(2)>alfaFf=Fc+(Fm-Fc)*exp(-a1*x(2))+kv*x(2);dFf=(Fm-Fc)*exp(-a1*x(2))*(-a1*x(3))+kv*x(3);
elseif x(2)<-alfaFf=-Fc-(Fm-Fc)*exp(a1*x(2))+kv*x(2);dFf=-(Fm-Fc)*exp(a1*x(2))*(a1*x(3))+kv*x(3);
endif x(2)>alfaFf=Fc+(Fm-Fc)*exp(-a1*x(2))+kv*x(2);dFf=(Fm-Fc)*exp(-a1*x(2))*(-a1*x(3))+kv*x(3);
elseif x(2)<-alfaFf=-Fc-(Fm-Fc)*exp(a1*x(2))+kv*x(2);dFf=-(Fm-Fc)*exp(a1*x(2))*(a1*x(3))+kv*x(3);
endA=1.0;F=1.0;
r=A*sin(2*pi*F*t);
dr=A*2*pi*F*cos(2*pi*F*t);
ddr=-A*(2*pi*F)^2*sin(2*pi*F*t);
e=r-x(1);
de=dr-x(2);
dde=ddr-x(3);
s=c*e+de;
M=2;
if M==1u=200*(r-x(1))+40*(dr-x(2)); % PID
elseif M==2delta=0.0003;kk=1/delta;if s>deltasats=1;elseif abs(s)<=delta % Saturated functionsats=kk*s;elseif s<-deltasats=-1;endslaw=-ep*sats-k*s;u=J*R/(Ku*Km)*(c*de+ddr+ep*sats+k*s+Km*Ce/(J*R)*x(2)+Ff/J);
end
du=200*de+40*dde;
dx=zeros(3,1);
dx(1)=x(2);
dx(2)=-Km*Ce/(J*R)*x(2)+Ku*Km*u/(J*R)-Ff/J;
dx(3)=-Km*Ce/(J*R)*x(3)+Ku*Km*du/(J*R)-dFf/J;
aa=dx(3);
% %%   sim_smc.m   %%%%%%%%%
clear all;
close all;
global A alfa J Ce R Km Ku a1 Fm Fc M kv c ep k delta
% Servo system Parameters
J=0.6;Ce=1.2;Km=6;
Ku=11;R=7.77;
alfa=0.01;
T=3.0;
ts=0.001; % Sampling time
TimeSet=[0:ts:T];
[t,x]=ode45('Model',TimeSet,[0,0,0],[],[]);
x1=x(:,1);
x2=x(:,2);
x3=x(:,3);A=1.0;F=1.0;
r=A*sin(2*pi*F*t);
dr=A*2*pi*F*cos(2*pi*F*t);
ddr=-A*(2*pi*F)^2*sin(2*pi*F*t);
e=r-x1;
de=dr-x2;
s=c*e+de;
F=J*x3;
for i=1:1:T/ts+1time(i)=(i-1)*ts;if abs(x2(i))<=alfaif F(i)>FmFf(i)=Fm;elseif F(i)<-FmFf(i)=-Fm;elseFf(i)=F(i);endendif x2(i)>alfaFf(i)=Fc+(Fm-Fc)*exp(-a1*x2(i))+kv*x2(i);elseif x2(i)<-alfaFf(i)=-Fc-(Fm-Fc)*exp(a1*x2(i))+kv*x2(i);end
endif M==1u=200*(r-x(1))+40*(dr-x(2)); % PID
elseif M==2for i=1:1:T/ts+1kk=1/delta;if s(i)>deltasats(i)=1;elseif abs(s(i))<=delta % Saturated functionsats(i)=kk*s(i);elseif s(i)<-deltasats(i)=-1;endslaw(i)=-ep*sats(i)-k*s(i);u(i)=J*R/(Ku*Km)*(c*de(i)+ddr(i)+ep*sats(i)+k*s(i)+Km*Ce/(J*R)*x2(i)+Ff(i)/J);end
endfigure(1);
plot(t,r,'r',t,x(:,1),'b');
xlabel('time(s)');ylabel('position tracking');
figure(2);
plot(t,dr,'r',t,x(:,2),'b');
xlabel('time(s)');ylabel('speed tracking');
figure(3)
plot(t,e,'r');
xlabel('time(s)');ylabel('error');
figure(4);
plot(x(:,2),Ff,'r');
xlabel('speed');ylabel('Friction');
figure(5);
plot(t,s,'r');
xlabel('time(s)');ylabel('s');
figure(6);
plot(time,u,'r');
xlabel('time(s)');ylabel('u');
figure(7);
plot(r-x(:,1),dr-x(:,2),'r',r-x(:,1),-c*(r-x(:,1)),'b');
xlabel('e');ylabel('de');

2021-04-12 电机滑模控制 LuGre摩擦模型相关推荐

  1. 开关磁阻电机滑模控制仿真,电流斩波控制,直接转矩控制

    开关磁阻电机滑模控制仿真,电流斩波控制,直接转矩控制 编号:36100655392967935踩你Aj怎么了

  2. VSC/SMC(十四)——全局快速Terminal滑模控制(含程序模型)

    目录 1. 收敛时间分析 2.高阶全局Terminal滑模控制器设计与分析 3.高阶全局Terminal滑模鲁棒控制器设计与分析 3.1 总结 4. 仿真分析 4.1 二级非线性系统 4.2 S函数编 ...

  3. VSC/SMC(十三)——快速和非奇异Terminal滑模控制(含程序模型)

    目录 前言 1.Terminal滑模控制 1.1 传统Terminal滑模 1.2非奇异Terminal滑模 1.3 非奇异快速Terminal滑模 2.传统Terminal滑模 2.1 控制器设计 ...

  4. VSC/SMC(八)——基于慢时变干扰观测器的滑模控制(含程序模型)

    目录 前言 1.案例分析系统 2.设计观测器 2.1观测器系统 2.2稳定分析 3.控制器设计 3.1滑模面 3.2 趋近律 3.3 稳定性分析 4.MATLAB/Simulink仿真 4.1s函数编 ...

  5. VSC/SMC(一)——基于趋近律的滑模控制(含程序模型)

    目录 1.几种典型的趋近律 1.1等速趋近律 1.2指数趋近律 1.3幂次趋近律 1.4一般趋近律 2.控制器设计 2.1被控对象 2.2选取滑膜面 2.3定义跟踪误差 2.4计算控制律 3.Simu ...

  6. VSC/SMC(七)——基于高增益观测器的滑模控制(含程序模型)

    目录 前言 1.系统 2.观测器设计 3.控制器设计 4.MATLAB/Simulink仿真 4.1s函数编写被控对象 4.2Simulink模型 5结果分析 5.1出图结果 5.2结论 5.3调参 ...

  7. SMC/VSC(九)——控制器容错自适应滑模控制(含程序模型)

    目录 前言 1.二阶系统 2.控制器设计 3.仿真分析 3.1S函数编写被控对象 3.2Simulink建模 3.3结果分析 3.4结论 4.相轨迹绘制 4.1Scope模块导出设置 4.2模型导出数 ...

  8. 基于扩张观测器(LESO)的滑模控制

    目录 前言 1 二阶系统LESO观测器设计 2.基于LESO的滑模控制器设计 ​​​​3. 仿真分析(普通高增益项) 3.1仿真模型 3.2仿真结果 3.3 总结 4. 仿真分析(优化后的高增益项) ...

  9. 滑模控制二阶系统实例(5mins理解入门,附带MATLAB实现)

    问题 设想一个在一维空间的物块,在其上施加一个力f,物块会运动: 显然这是一个二阶系统,选取状态变量 x 1 x_1 x1​为位移, x 2 x_2 x2​为速度,则有: x 1 ˙ = x 2 x ...

最新文章

  1. ACM 1740 A New Stone Game http://acm.pku.cn/JudgeOnline/problem?id=1740
  2. 尺度不变特征变换匹配算法详解 Scale Invariant Feature Transform(SIFT)
  3. Hazelcast集群服务(2)
  4. Datical为数据库添加持续交付能力
  5. GDB调试器使用手册
  6. python编写数学公式大全_python - 用python编写数学公式 - 堆栈内存溢出
  7. VOC数据集图片标注工具labelImg简介、安装、使用方法详细攻略(windows) PyQt4、PyQt5
  8. 如何将CSDN的博客同步到网易号平台上去
  9. Maven搭建springMvc+myBatis完整项目
  10. 用matlab设计滤波器实验报告,数字信号出来实验报告--matlab滤波器设计
  11. 趋势科技修复已遭利用的 Apex Central 0day
  12. oracle数据库sql查询,oracle数据库中常用经典SQL查询
  13. RAR与ZIP区别,哪个比较好用!
  14. 使用Labwindows开发DAQmx
  15. c语言程序设计读书心得,高质量的c语言编程读后感
  16. 实验室的温湿度要求及其控制措施的详细讲解
  17. 操作系统:文件共享的实现方法
  18. 教你三分钟上手阿里云OOS上传操作
  19. seed lab 2020 packet sniffing and spoofing lab
  20. 印象笔记mac版 同步问题_Typora和印象笔记的完美同步及备份

热门文章

  1. linux 下Eclipse的安装
  2. Matlab实现线性回归和逻辑回归: Linear Regression Logistic Regression
  3. 影子卫士和影子系统哪个好用_门店管理营销系统哪个好用,营销系统排名
  4. JS数据类型与分支结构
  5. Python pandas dataframe 分组聚合时,分组组名并入列的方法
  6. 使用org.apache.jasper.JspC编译jsp文件--转载
  7. 在 Java 中高效使用锁的技巧--转载
  8. 【开发工具】SCALA
  9. 首份《顶级数据团队建设全景报告》重磅发布: 逾半数据团队称人才储备不足
  10. 大数据变现四种途径,如何把海量数据变成现金?