一、控制方法

基本需要用到matlab/simulink仿真以及一些控制方法的讲解,可以看一下b站的陈诚视频 Matlab进阶讲解

PID

FuzzyPID

注:学习链接: 模糊PID(自适应模糊PID、fuzzy PID)的基本原理及应用举例
注:学习链接: matlab模糊控制工具箱使用和模糊控制pid实例参考

LQR

注:学习链接: LQR控制器-线性二次型调节器

MPC

滑膜控制

反步控制

阻抗控制/导纳控制

二、基于模型(两关节机械臂/两关节下肢)的控制器

S-Function

S-Funnction主要由6个函数组成包括初始化、连续函数微分、离散函数更新、输出函数、计算下次采样时间以及仿真结束。仿真全部使用S-Function的level1就可以实现。

注:S-Function学习链接: S-Function入门及案例详解1-5

滑膜控制器

首先,我们需要了解滑膜控制是什么?大家可以自己多搜索,多浏览,多理解,滑膜控制器需要用到什么知识。
其次,我们寻找一些案例进行学习,先掌握大体流程。由于滑膜控制器是一种基于模型的一种控制方法,所以我们要进行模型的建立,这里就是我们的二关节机械臂(二关节下肢外骨骼)。所以我们可以将其分成两部分来进行学习,控制器(Controller)的设计以及模型(Plant)的建立。
最后,设计完成控制器(Controller)的S-Function函数、模型(Plant)的S-Function函数并通过搭建Simulink模型完成仿真,通过调整参数,实现理想的控制结果。
推荐一个b站UP主DR_CAN,他的最优控制视频都很优异

控制器(Controller)的S-Function函数
PID控制器:Controller_PIDControl.m
反步控制器:Controller_BackSteppingControl.m
滑膜控制器:Controller_SynovialControl.m
导纳控制器:Controller_AdmittanceControl.m
模型(Plant)的S-Function函数
二自由度模型:Plant_TwoConnectingRod.m

注:书籍为刘金琨的《滑模变结构控制MATLAB仿真》
注:案例1链接: 简单的滑模控制程序及Simulink仿真
注:案例2链接: 基于趋近律的滑模鲁棒控制simulink仿真
注:案例3链接: 二关节机械手PD控制simulink仿真

反步控制算法

这个过程完全通过数学运算来规避掉不确定因素,强行使得Lyapunov函数负定或半负定,而整个过程中需要确定的参量仅仅是a1,a2两个而已。
注:案例1链接: 反步控制实例以及Simulink复现,这个案例中使用的是simulink框图进行搭建,但是由于我是使用的动力学方程作为控制模型,所以直接使用S-Function函数进行搭建。但也可以使用框图搭建,只不过MCG三个矩阵同样需要使用状态变量进行表示。
注:案例2链接: 反步法设计非线性控制器,此案例中使用的是matlab程序进行搭建。
注:案例3链接: 基于反步法backstepping的自适应控制简介,笔者认为,该控制算法“自适应”之处在于,即使对扰动无法建模,依然可以通过一些规律来维持系统稳定。
注:案例4链接: 反步控制理论,反步+反步滑模+鲁棒反步滑模+自适应反步滑模

阻抗控制/导纳控制

注:学习链接: 阻抗/导纳控制最强解析
注:学习链接: 导纳控制 admittance control,matlab程序实现
注:学习链接: 彻底搞懂阻抗控制、导纳控制、力位混合控制

三、Lagrange法动力学建模

高等教育出版社《机器人控制:理论、建模与实现》—赵韩、甄圣超、孙浩、吴其林著

  1. 求K动能、P势能,L=K-P
  2. T=d/dt…
  3. 求M、C、G
  4. 结合控制方法,得到控制率
  5. matlab+simulink仿真

四、抗干扰控制方法

注:学习链接: 抗干扰控制深度解析

高增益控制方法

高增益控制方法-高增益

对于最简单的一阶惯性环节,在干扰存在时,这种方法无法消除干扰带来的稳态误差,而且为了使得误差尽可能小,需要取高增益控制率以抑制扰动的影响。t趋于无穷时,偏差e=-d/(a+k),d为干扰,a和k为增益。

高增益控制方法-积分控制

PID的调试经验告诉我们积分项可以消除稳态误差,所以考虑带有积分项的控制率。从公式可以看出,当干扰为常值干扰时,干扰项的导数为零,且A矩阵是Hurwitz的,此时系统渐进稳定,无穷时刻的偏差为零。考虑如果干扰的导数非零,但是其有界的情况,积分控制能消除常值干扰,但是对于变化的干扰稳态误差依然存在。

基于干扰观测器的控制

基本思路是先构造干扰观测器将干扰量测出来,用估计干扰补偿实际干扰,如果模型估计得很准确(很难很难),那么系统将简化成一个不受干扰影响的纯净系统,再在这基础上设计反馈控制器就比较简单了。
基于干扰观测器的补偿控制能施加更精准的控制,从能量输出角度讲它也更加经济。但是这种方法对模型的要求要更高,通常需要花很多工夫在辨识上。如果模型不太准确,有可能干扰的补偿没起到作用,反而还产生了更坏的影响。

基于干扰观测器的控制-DOB

基于干扰观测器的控制-ESO

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐