基于二自由度机械臂/下肢外骨骼动力学模型的控制器(还在编写ing)
针对两自由度的机械臂和下肢进行学习,讲述了控制方法、基于模型的控制器、Lagrange动力学建模等,作为自己学习的记录
目录
一、控制方法
基本需要用到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法动力学建模
高等教育出版社《机器人控制:理论、建模与实现》—赵韩、甄圣超、孙浩、吴其林著
- 求K动能、P势能,L=K-P
- T=d/dt…
- 求M、C、G
- 结合控制方法,得到控制率
- matlab+simulink仿真
四、抗干扰控制方法
注:学习链接: 抗干扰控制深度解析
高增益控制方法
高增益控制方法-高增益
对于最简单的一阶惯性环节,在干扰存在时,这种方法无法消除干扰带来的稳态误差,而且为了使得误差尽可能小,需要取高增益控制率以抑制扰动的影响。t趋于无穷时,偏差e=-d/(a+k),d为干扰,a和k为增益。
高增益控制方法-积分控制
PID的调试经验告诉我们积分项可以消除稳态误差,所以考虑带有积分项的控制率。从公式可以看出,当干扰为常值干扰时,干扰项的导数为零,且A矩阵是Hurwitz的,此时系统渐进稳定,无穷时刻的偏差为零。考虑如果干扰的导数非零,但是其有界的情况,积分控制能消除常值干扰,但是对于变化的干扰稳态误差依然存在。
基于干扰观测器的控制
基本思路是先构造干扰观测器将干扰量测出来,用估计干扰补偿实际干扰,如果模型估计得很准确(很难很难),那么系统将简化成一个不受干扰影响的纯净系统,再在这基础上设计反馈控制器就比较简单了。
基于干扰观测器的补偿控制能施加更精准的控制,从能量输出角度讲它也更加经济。但是这种方法对模型的要求要更高,通常需要花很多工夫在辨识上。如果模型不太准确,有可能干扰的补偿没起到作用,反而还产生了更坏的影响。
基于干扰观测器的控制-DOB
基于干扰观测器的控制-ESO
更多推荐
所有评论(0)