基于直线一阶倒立摆的控制(一)——倒立摆建模

一、基于小车模型 被控对象的数学建模

参考如下情景假设构建倒立摆系统:在无外力作用时,倒立摆安装在小车上不能保持垂直状态而左右倾斜,为此需要给小车在水平方向上施加适当的作用力。为简化问题,一般忽略摆杆质量、伺服电动机惯性,以及摆轴、轮轴与接触面之间的摩擦力和风力,假设其位移可测。控制目标是为保持倒立摆垂直且使小车可停留在任意给定但可变更的位置上

在进行系统建模时相关变量及含义分别如下表所示:

我们可以观测的状态量为:,分别为小车位移,旋转角度,小车速度,旋转速度,控制量为小车水平方向上受力:F。假设此处

这里做一个替换,因为建模的时候,我选择了旋转坐标系,所以我的Z坐标为纵向坐标。小车的质心位置:,小车的速度:,对于小车而言,z 方向不做运动,所以小车的速度 为一个常量 0。

对于倒立摆部分,当前的模型假设无摆杆自身重力影响,重物的质心位置:

​​​​​​​ ​​​​​​​

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

摆杆的位置是在车的顶部,所以高度为需要加上一半的车高,但如果为中心或者高度够小,就可以直接省略。倒立摆的重物速度:

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

二、动力学分析

为了建立动力学方程,用到拉格朗日法来推导系统的运动方程。拉格朗日法通过定义系统的动能T与势能V来获得方程。拉格朗日量 = 系统动能 T - 系统势能 V。

2.1 动能

小车的动能有两部分:

(1)小车的动能:

(2)摆杆的动能:具有两个方向的动能

· 摆杆沿着小车的运动方向移动 x :

· 摆杆的重力方向 z: ​​​​​​​ ​​​​​​​ ​​​​​​​

· 得到系统总动能 T :

2.2 势能

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

2.3 拉格朗日方程

结合得到:

小车在 x 方向上有F的力,但是旋转关节不受任何控制,得到

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

省略求导过程(可以用别的工具算),得到:

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

其实这里问题最多的就是符号问题,前面的过程得到的位置不同,这里的符号也会不同。

先假设 q趋近为0,那么得到 sin(q) = 0, cos(q)=1,得到局部线性化的模型:

这个系统是连续非时变系统,所以只有得到一个最优解就可以直接代入。得到矩阵如下:

​​​​​​​ ​​​​​​​

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

相关推荐
JINX的诅咒1 天前
CORDIC算法:三角函数的硬件加速革命——从数学原理到FPGA实现的超高效计算方案
算法·数学建模·fpga开发·架构·信号处理·硬件加速器
2501_906801201 天前
BY组态-低代码web可视化组件
前端·物联网·低代码·数学建模·前端框架
2501_906801481 天前
BY组态-低代码web可视化组件
前端·物联网·低代码·数学建模·编辑器·web
电科_银尘2 天前
【Matlab】-- 基于MATLAB的美赛常用多种算法
算法·数学建模·matlab
烟锁池塘柳03 天前
【数学建模】动态规划算法(Dynamic Programming,简称DP)详解与应用
算法·数学建模·动态规划
HR Zhou4 天前
群体智能优化算法-大猩猩部落优化算法(Gorilla Troops Optimizer, GTO,含Matlab源代码)
算法·机器学习·数学建模·matlab·群体智能优化
烟锁池塘柳05 天前
【数学建模】(启发式算法)遗传算法:自然选择的计算模型
算法·数学建模·启发式算法
2501_906800765 天前
低代码配置式组态软件-BY组态
前端·后端·物联网·低代码·数学建模·web
烟锁池塘柳05 天前
【数学建模】(智能优化算法)元胞自动机在数学建模中的应用
算法·数学建模
人大博士的交易之路5 天前
龙虎榜——20250328
大数据·人工智能·数学建模·数据挖掘·程序员创富·涨停回马枪