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

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

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

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

我们可以观测的状态量为:,分别为小车位移,旋转角度,小车速度,旋转速度,控制量为小车水平方向上受力: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,得到局部线性化的模型:

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

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

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

相关推荐
民乐团扒谱机1 天前
【微实验】数模美赛备赛:多目标优化求解实战(MATLAB实现,以流水车间调度为例)
开发语言·数学建模·matlab·甘特图·遗传算法·多目标优化·优化模型
88号技师1 天前
2026年1月一区SCI-最优或最劣优化器Farthest better or nearest worse optimizer-附Matlab免费代码
开发语言·数学建模·matlab·启发式算法·优化算法
88号技师1 天前
2025年11月一区SCI-电磁波传播优化算法Electromagnetic wave propagation algorithm-附Matlab免费代码
开发语言·算法·数学建模·matlab·优化算法
3Bronze1Pyramid2 天前
【微分方程——传染病模型(一)】
数学建模
qianbo_insist5 天前
基于APAP算法的图像和视频拼接
算法·数学建模·图像拼接
万行6 天前
机器学习&第三章
人工智能·python·机器学习·数学建模·概率论
打点计时器6 天前
初见波动方程和贝塞尔函数
数学建模·信号处理
民乐团扒谱机6 天前
【微实验】基于MATLAB的一维条材下料优化问题求解
数学建模·matlab·线性规划·最优化模型·整数线性规划
湘-枫叶情缘7 天前
重生1995:我的数学模型能暴击-第二集: 设备报废危机?一张纸预测未来 !
科技·数学建模·产品运营
Heorine7 天前
数学建模 绘图 图表 可视化(6)
python·数学建模·数据可视化