Quadratic programming implementations of model predictive control on arduino for BLDC speed control

A. S. Rohman, Hanif F. Prasetyo
{"title":"Quadratic programming implementations of model predictive control on arduino for BLDC speed control","authors":"A. S. Rohman, Hanif F. Prasetyo","doi":"10.1109/ICSENGT.2017.8123448","DOIUrl":null,"url":null,"abstract":"Many physical process systems have performance limitation regardless the input. This limitation usually occurs in the form of input saturation of actuator as the constraint of the system. To overcome this problem, Model Predictive Control (MPC) may be used due to its capability to compute optimal control signal in the presence of input saturation. The optimal control signal is obtained by solving a quadratic programming (QP) problem with variables' constraints at each time instants. QP problem with lower and upper constraint is known to be equivalent to an algebraic loop involving diagonal upper and lower saturation. Hence, QP can be iteratively computed until its solution converges. A slow computation of QP, however, limits its applications for fast systems with simple digital processor. Therefore, in order to be able to be implemented in real-time embedded applications, a fast algorithm of QP solver is in need. In this paper, a comparison study of two QP implementation, i.e. Projected Gauss Seidel (PGS) and so called Algorithm-2, using Arduino Mega 2560 is presented. In this case, MPC with QP solver using both algorithms is implemented to control the speed of lightly loaded BLDC motor. Before implementation, system modeling, controller designing, and simulation are undertaken. The performance of both iterative algorithms are then compared in terms of average computation time in the simulation and implementation. It can be observed from the results that Algorithm-2 gives a bit faster computation than PGS under same conditions.","PeriodicalId":350572,"journal":{"name":"2017 7th IEEE International Conference on System Engineering and Technology (ICSET)","volume":"41 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 7th IEEE International Conference on System Engineering and Technology (ICSET)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICSENGT.2017.8123448","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Many physical process systems have performance limitation regardless the input. This limitation usually occurs in the form of input saturation of actuator as the constraint of the system. To overcome this problem, Model Predictive Control (MPC) may be used due to its capability to compute optimal control signal in the presence of input saturation. The optimal control signal is obtained by solving a quadratic programming (QP) problem with variables' constraints at each time instants. QP problem with lower and upper constraint is known to be equivalent to an algebraic loop involving diagonal upper and lower saturation. Hence, QP can be iteratively computed until its solution converges. A slow computation of QP, however, limits its applications for fast systems with simple digital processor. Therefore, in order to be able to be implemented in real-time embedded applications, a fast algorithm of QP solver is in need. In this paper, a comparison study of two QP implementation, i.e. Projected Gauss Seidel (PGS) and so called Algorithm-2, using Arduino Mega 2560 is presented. In this case, MPC with QP solver using both algorithms is implemented to control the speed of lightly loaded BLDC motor. Before implementation, system modeling, controller designing, and simulation are undertaken. The performance of both iterative algorithms are then compared in terms of average computation time in the simulation and implementation. It can be observed from the results that Algorithm-2 gives a bit faster computation than PGS under same conditions.
模型预测控制在arduino上的二次规划实现
无论输入是什么,许多物理进程系统都有性能限制。这种限制通常以执行器输入饱和的形式出现,作为系统的约束。为了克服这个问题,模型预测控制(MPC)可以在输入饱和的情况下计算出最优的控制信号。通过求解具有变量约束的二次规划(QP)问题,得到各时刻的最优控制信号。已知具有上下约束的QP问题等价于一个包含对角上下饱和的代数环。因此,QP可以迭代计算,直到其解收敛为止。然而,由于QP的计算速度较慢,限制了它在具有简单数字处理器的快速系统中的应用。因此,为了能够在实时嵌入式应用中实现,需要一种快速的QP求解算法。本文对使用Arduino Mega 2560的两种QP实现,即投影高斯塞德尔(PGS)和所谓的Algorithm-2进行了比较研究。在这种情况下,实现MPC与QP求解器同时使用这两种算法来控制轻载无刷直流电机的速度。在实现之前,进行了系统建模、控制器设计和仿真。然后比较了两种迭代算法在仿真和实现中的平均计算时间。从结果可以看出,在相同条件下,算法-2的计算速度比PGS略快。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信