【TinyMPC】比PID更丝滑的控制算法&卡内基梅隆大学
moboyou 2025-05-14 14:25 2 浏览
MPC控制算法,全称Model Predictive Control(模型预测控制),是一种基于系统动态模型的控制技术。它的工作原理是通过数学模型预测系统的未来行为,并基于这些预测结果来优化系统的控制输入,从而实现期望的输出。
MPC控制算法的核心在于其预测模型,这个模型可以根据系统的当前状态信息预测未来的系统状态。预测模型的形式并不固定,可以是状态空间方程、传递函数、阶跃响应模型、脉冲响应模型、模糊模型等,具体形式取决于被控对象和需要预测的状态。
TinyMPC 是一款专为凸模型预测控制量身定制的开源求解器,可以较小的内存占用提供高速计算。TinyMPC 在 C++ 中实现,具有最小的依赖性,特别适用于资源受限平台上的嵌入式控制和机器人应用程序。TinyMPC 可以处理状态和输入边界以及二阶锥约束。Python、Julia 和 MATLAB 接口可用于帮助为嵌入式系统生成代码。
机器人演示
TinyMPC 有助于弥合计算密集型凸模型预测控制与资源受限的处理平台之间的差距。将 TinyMPC 集成到计算能力不足的机器人中,使它们能够执行敏捷操作并表现出安全行为。
动态避障
TinyMPC 的运行速度足够快,可以在每个时间步长重新线性化约束,从而使其能够对移动的障碍物进行推理。在左边,在摇杆末端为中心的虚拟球体在每个时间步长被线性化为一组新的超平面约束。该算法还可以处理任意数量的任意线性约束。例如,在右侧,它在停留在 yz 平面时避开了摇杆的末端。
极致姿态恢复
TinyMPC 可以从极端的初始条件下恢复。在此示例中,将其与 Crazyflie 2.1 的三个stock controllers进行了比较。只有 TinyMPC 能够推断出控制极限,从而实现干净利落的恢复操作。
图 8 跟踪
我们比较了相同的库存控制器,以完成不可行的快速 8 字形跟踪任务(只有在无人机更强大的情况下才能完成单个 8 字形的时间)。TinyMPC 和 PID 能够保持直立,但 TinyMPC 的轨迹更接近 8 字形。
微控制器基准测试
在微控制器基准测试中,TinyMPC 在速度和内存占用方面优于最先进的求解器。我们求解随机生成的基于 QP 的 MPC 问题,并将迭代时间和内存占用与 OSQP 进行比较。TinyMPC 在 OSQP 上的最大加速是 OSQP 的 8 倍,内存要少得多。
TinyMPC 现在也能够处理圆锥约束!在(b)中,我们将TinyMPC与两个现有的具有嵌入式支持的圆锥求解器(SCS和ECOS)对火箭软着陆问题进行了基准测试。TinyMPC 在 SCS 上实现了 13 倍的平均速度提升,在 ECOS 上实现了 137 倍的平均速度提升。
实时控制要求求解器在严格的时间窗口内返回解决方案。在火箭软着陆问题上比较了TinyMPC与SCS和ECOS的轨迹跟踪性能,同时人为地改变了每个求解的可用时间量。在所有控制持续时间内,TinyMPC 的违反约束更少,跟踪误差也低于 SCS 和 ECOS。
算法贡献者:
代码获取地址:
GitHub - TinyMPC/TinyMPC: Model-predictive control for microcontrollers
相关推荐
- 声学EI要完稿?十步速写法
-
【推荐会议】国际声学与振动会议(ICAV)会议号:CFP23112A截稿时间:2025年4月20日召开时间/地点:2025年8月15-17日·新加坡论文集上线:会后3个月提交EiComp...
- 结构力学!EI会议图表规范秘籍
-
推荐会议:国际结构与材料工程进展大会(ISME2026)会议编号:EI#73521截稿时间:2026年3月10日召开时间/地点:2026年8月15-17日·德国柏林论文集上线:会后4...
- 傅里叶级数物理意义的直观理解:利用傅里叶级数逼近方波信号
-
上篇文章将向大家介绍频谱的概念,对傅里叶级数、傅里叶积分、傅里叶变换进行了数学的推导,并解释了它们各自的物理意义。推导过程见我的上一篇文章:频谱分析——频谱概念(傅里叶变换、级数、积分及物理意义)如下...
- 通过对航空发动机整机振动进行分析,有何控制方法?
-
前言针对航空发动机整机振动问题的复杂性和多样性,以整机振动的振源分析为出发点,总结国内外关于转子系统故障、气流激振、轴承故障、齿轮故障和结构局部共振等引起的整机振动的研究情况。结合航空发动机整机结构动...
- MATLIB中使用PCA
-
主成分分析PCA(PrincipalComponentsAnalysis),奇异值分解SVD(Singularvaluedecomposition)是两种常用的降维方法降维致力于解决三类问题:降维...
- 数据处理|软件:让科研更简单2
-
书接上回,继续介绍免费的数据处理软件。eGPS一款热图绘制专用软件,热图就是用颜色代表数字,让数据呈现更直观,对比更明显。优点:小巧方便,基本功能齐全,包括数据转换、聚类分析、颜色调整等等缺点:常见的...
- 电力系统常用的通讯协议及其在Speedgoat系统中的实现
-
在电力系统中,IEC61850协议、DNP3协议、ModbusTCP广泛应用于远程终端设备(RTU)、智能电子设备(IED)交互以及监控和数据采集(SCADA)系统。一、IEC61850协议IE...
- 电子工程师的常用仿真软件
-
不知道从事电子行业的工程师,有没有使用模拟仿真工具,仿真软件网上又有很多,初学者,可能只知道Multisim和Proteus。一般Multisim适合在学习模拟电路和电路分析原理课程时使用,便于理解电...
- 技术论文|异结构混沌系统的组合同步控制及电路实现
-
欢迎引用[1]李贤丽,马赛,樊争先,王壮,马文峥,于婷婷.异结构混沌系统的组合同步控制及电路实现[J].自动化与仪器仪表,2022,No.276(10):80-84.DOI:10.14016/j.cn...
- 现场︱某110KV主变事故过程仿真分析
-
三峡电力职业学院、河南省电力公司洛阳供电公司的研究人员李莉、任幼逢、徐金雄、王磊,在2016年第6期《电气技术》杂志上撰文,针对某110KV变电站主变差动保护跳闸事故,结合事故相关检测数据,通过MAT...
- 光伏发电系统篇:单级式并网系统实时仿真
-
在全球积极推动清洁能源转型的大背景下,光伏发电作为重要的可再生能源利用方式,得到了广泛关注和迅猛发展。目前常用的光伏并网及光伏电站主要拓扑结构有单级式和双级式。相较于传统的多级式系统,单级式光伏发电并...
- 光伏发电系统篇:三电平并网逆变器实时仿真
-
一、三电平并网逆变器在能源转型加速的当下,分布式能源接入电网需求大增。三电平并网逆变器凭借低谐波、高功率密度等优势,有效提升电能转换效率,于新能源并网发电中担当关键角色。常见的三电平电路拓扑结构包括二...
- 自制3.5KW大功率逆变器,很简单,看过这个电路原理就懂了
-
前言拿下8000元奖金的项目,是什么水平?本项目经过联合湖南科技大学光伏逆变以及电力电子研究生团队共同探讨方案。项目成本:1200元,获得奖金:8000元!参加赛事:立创开源硬件平台_星火计划·外包赛...
- 圈内分享:电容式加速度计接口电路非线性建模与仿真设计
-
摘要:非线性是Sigma-Delta(ΣΔ)加速度计系统的关键指标之一。基于一个五阶ΣΔ加速度计结构,分析了其主要的非线性模块,在MATLAB中建立了整体结构的行为级模型,并利用根轨迹法进行了稳...
- 基于Matlab/Simulink建立一种Thevenin/RC电池模块仿真模型
-
本文以锂电池数学模型为基础,在Matlab/Simulink的仿真系统中,建立了一种Thevenin/RC电池模块仿真模型,通过实际工况试验,测试精度在允许误差范围内,为电池SOC/SOH研究提供了极...
- 一周热门
- 最近发表
- 标签列表
-
- curseforge官网网址 (16)
- 外键约束 oracle (36)
- oracle的row number (32)
- 唯一索引 oracle (34)
- oracle in 表变量 (28)
- oracle导出dmp导出 (28)
- oracle 数据导出导入 (16)
- oracle两个表 (20)
- oracle 数据库 使用 (12)
- 启动oracle的监听服务 (13)
- oracle 数据库 字符集 (20)
- powerdesigner oracle (13)
- oracle修改端口 (15)
- 左连接 oracle (15)
- oracle 标准版 (13)
- oracle 转义字符 (14)
- asp 连接 oracle (12)
- oracle安装补丁 (19)
- matlab三维图 (12)
- matlab归一化 (16)
- matlab求解方程 (13)
- matlab坐标轴刻度设置 (12)
- matlab脚本 (14)
- matlab多项式拟合 (13)
- matlab阶跃函数 (14)