基于MATLAB的平衡小车控制系统建模仿真
创作时间:
作者:
@小白创作中心
基于MATLAB的平衡小车控制系统建模仿真
引用
CSDN
1.
https://blog.csdn.net/weixin_43030192/article/details/138347896
基于单片机STM32的两轮平衡小车,需要理解并编程各种IO、定时器、通讯等模块,这些虽然琐碎但都是基础。然而,核心在于如何处理数据并控制相关对象,这需要深入理解控制算法。本文将结合自动控制原理的学习,通过MATLAB来模拟平衡车可用的控制算法,以便于进行各种参数调整。
一、模型
整个系统源于实验室里的平衡小车,小车带有奥比中光的深度摄像头和树莓派,但这里只关注平衡控制部分。在MATLAB建模时,去掉了摄像头和树莓派部分,仅保留了平衡小车的基本结构。以下是简化后的模型:
建模步骤
模型简化:平衡小车的分析可以近似倒立摆,为简化起见,将小车分为车身和底盘两部分,忽略轮子的质量。
MATLAB建模注意事项:在建模时一定要注意转角和力的正方向,否则在后续PID控制中可能会出现负数的比例系数,甚至导致LQR算法失效。
具体建模步骤
- 创建Simulink模型(SLX文件)。
- 添加世界坐标系3个模块。
- 由于没有方向环,增加一个平移轴以限定平衡车的平动,以及一个转动轴用于车身的摆动。通过
Brick Solid
模块(矩形块,包括三个平板、电池块和轮轴)和Cylindrical Solid
模块(两个电机,轮子也可以用这个模块)搭建底盘和车身。Rigid Transform
模块用于坐标变换,方便模型搭建的朝向,但这个坐标变换只针对模型搭建,与计算无关。 - 为了美观和添加地面摩擦因素,可以添加一个模拟地面的
Brick Solid
模块和Spatial Contact Force
模块。
基本的模块图如下:
车身部分:
在搭建MATLAB模型时,可以通过Ctrl+D
键或点击运行按钮到仿真环境查看环境搭建情况,也可以检查所建轴的坐标系是否正确等。如下图:
这样就在MATLAB里面搭建好了仿真环境。
注意事项
- F 和转角的正方向非常重要,平移轴的施加力方向(一般是Z)应该朝右,转动轴的Z轴方向应该是里朝外,保证转角逆时针为正向。这一点很重要,之前就是因为MATLAB建模时这两个方向不对,导致浪费了很多时间排查错误。
通过以上步骤,可以在MATLAB中搭建好平衡小车的仿真模型,为后续的控制算法设计和参数调整提供基础。
注:本文作者提供了MATLAB 2023a版本的模型下载链接,但由于技术原因,此处无法直接提供下载链接。建议读者自行搜索相关资源或参考上述步骤进行模型搭建。
热门推荐
如何把握尾盘股票的购买时机?这种购买时机的选择依据是什么?
外资为何青睐银行股?
明朝一两银子购买力如何 换做现在是多少钱
如何在初中物理科学探究中培养学生提出问题的能力
治疗急性髓细胞性白血病的标准方案是
漫威蜘蛛侠2游戏评测:在虚拟曼哈顿中体验超级英雄的双重生活
农村自建房二层设计平面图及效果图大全,款款实用,总有你想要的
REITs怎么在证券账户购买?一文详解购买流程、运作模式与投资优势
冬季天干嘴唇裂,教你6道菜,补充水分,去干润燥,温润过冬
八字丙火最怕身弱怎么化解
劳动合同法关于辞职的规定有哪些
STM32对射式红外传感器配置详解
5G与4G的区别
结构方程模型入门指南:定义、操作步骤与结果解读
送花的礼仪和禁忌
商贷转公积金贷款的额度和贷款期限怎么计算
数据分析师吃香吗
直播中如何回答观众提问
全球工业的“灵魂角色”,铜凭什么这么牛?
航海技术专业就业前景分析
薄荷叶怎么晒干可以保存
火影~三代目火影猿飞日斩
欺骗餐对减肥有什么作用?欺骗餐应该怎么吃?
狗咬伤后接种狂犬疫苗的最佳时间及注意事项
高情商的人,是怎么拒绝别人的
老年高血压患者晚上进行有氧运动比早上进行运动更好
基于IGZO半导体纳米网格的可穿戴实时人体呼吸监测
颈源性头痛是什么病?
一直在煮的关东煮能放心吃吗?汤可以喝吗?
如何提升研学旅游品质?重在做好“游”与“学”的平衡