【无视Matlab版本】-PID参数整定-以SCI论文中的直流电机调速器为例,无需搭建Simulink模型,摆脱版本限制,通用性拉满-matlab代码

 引言

PID控制器的普及源于其简单性,可靠性和成本效益,在广泛的工业应用中。然而,PID参数的调整对于实现期望的性能至关重要,对于高阶系统或具有不确定性的系统,传统技术可能无法有效处理这一任务。为了应对传统调优方法带来的挑战,元启发式优化算法被视为一种很有前途的替代方案

本期利用matlab编程构建直流电机PID调速器模型,实现基于优化算法的参数整定,即,找到PID最优的控制参数,比例系数Kp,积分系数Ki和微分系数Kd。好处是:无需构建PID的simulink模型,摆脱matlab版本的限制,可在任意matlab版本上运行,通用性更强,更容易扩展到其他控制器中。提供4种目标函数用以优化的目标函数,可自由切换。

  1. 平方误差积分(integral of squared error,ISE)

  2. 时间乘绝对误差积分(integral of time multiplied absolute error,ITAE)

  3. 时间乘平方误差积分(integral of time multiplied squared error,ITSE)

  4. 绝对误差积分(integral of absolute error,IAE)

直流电机PID调速器来自SCI论文:

(https://doi.org/10.1016/j.jestch.2020.08.011)

中的模型,如图所示: 

您仅需要做的工作是:

  1. 用代码构建PID模型。和其他优化一样,PID参数整定也需要优化四要素:变量上限,下限、维度和目标函数。按照文献,暂以0.001 ≤ Kp, Ki, Kd ≤ 25为例,PID的参数有3个,所以维度为3;目标函数以构建4种:ISE/ITAE/ITSE/IAE。最关键的是利用编程实现PID模型的构建,这种方式可方便灵活扩展到其他控制模型和应用中

  2. 选择适应度函数。这里我们已经将4种适应度函数集成好了,自由切换,只需要输入1-4其中一个整数,就可以选择对应的适应度函数。非常方便,代码改动的工作量只有一个数字的量

  3. 选择喜爱的优化算法和用于对比的优化算法示例代码中选择了利用哈里斯鹰优化算法HHO黑翅鸢算法BKA鲸鱼优化算法WOA优化PID参数,进行简单的对比。优化算法都是独立的以函数编写的m文件,便于管理和调用。当然,公众号也发布了340多种算法都可以使用很多,它们大多都是以函数的形式调用。使用非常方便,代码工作量也仅一行。如果你想使用的算法不是函数的形式,请把它修改成函数形式,方便调用。

  4. 点击运行。你只管点运行,剩下的交给算法。

以ITAE为函数,考虑到优化算法的随机性,采用多次运行后的结果作为最终结果更具说服力,最后结果进行展示,并提供8种统计指标

1.最优值(Best),

2.最差值(Worst),

3.均值(Mean),

4.中位数(Median),

5.标准差(Std),

6. wilcoxon秩和检验(Wilcoxon's rank-sum test) ,

7. wilcoxon符号秩检验(Wilcoxon signed-rank test ) ,

8. Friedman检验(Friedman Test)

另外,还有箱型图(Boxplot)展现数据的分布。

 

Matlab代码下载

微信搜索并关注-优化算法侠,或扫描下方二维码关注,以算法名字搜索历史文章即可下载。

340多种基础的群智能优化算法-matlab

【选择自由,免费下载】超340种基础群智能优化算法-Matlab版(截至2024.03.10)icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486247&idx=1&sn=6bbf4a36099f33e84f49234186bbe16c&chksm=c12be722f65c6e343ee235208912a5357af90925d75e3b5e3e676470180ed1b66996b65cda11&token=25423484&lang=zh_CN#rd

175种群智能优化算法python库

超175+种群智能优化算法Python库!!!icon-default.png?t=N7T8http://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247484577&idx=1&sn=ed0b2e27b73e738c094c7534a63a2cda&chksm=c12be8a4f65c61b2f3d90e2b4d1f480f8d0bb038b6598828ebf2434006e07925f8102af9795f&scene=21#wechat_redirect

求解cec测试函数-matlab

最新最火!cec2022测试函数来了(附Matlab代码)icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247484693&idx=1&sn=ce311acb26bee2894db6fe90776288bd&chksm=c12be910f65c6006af080b1e97ad5514eee06b64d2caeeac2008b8c06fdc3ba379455e9ca709&scene=21#wechat_redirect

解决12工程设计优化问题-matlab

略微出手,工程设计问题(12)(附Matlab代码)icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247485052&idx=1&sn=80e5573c1c005ee5640e44935044ee35&chksm=c12bea79f65c636fc73758b4f4893502bd89cbd1c5d15d7db15e8b5c94eeae40450439d44944&token=681266555&lang=zh_CN#rd

求解11种cec测试函数-python

一网打尽!170+种优化算法求解11种cec测试函数(附Python代码)icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247484745&idx=1&sn=1957f7c9b44c47f171c1cd46054d1679&chksm=c12be94cf65c605a5e0f8404e6c90964ce0743b7c25ff5f98a03dedc77e5eec5b48bf0c0e782&token=681266555&lang=zh_CN#rd

解决12种工程设计优化问题-python

大放送!170+种优化算法解决12种工程设计问题(附python代码)icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247485068&idx=1&sn=c913be0f2445f8b4d3e944569f5e599f&chksm=c12bea89f65c639f1df0f8e6cacffc1fdffa96683d10743094435ee6b0b55573a5bc8eec7eb3&token=681266555&lang=zh_CN#rd

用于改进所有优化算法:21种混沌映射方法-混沌初始化(附matlab代码)

用于改进所有优化算法:21种混沌映射方法-混沌初始化(附matlab代码)21种混沌映射方法-混沌初始化,适用于所有优化算法icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486215&idx=2&sn=58f1a69175b0d6431a4c7cdfa114b84d&chksm=c12be702f65c6e14e6bd1ddc33b9cec74991d93303c325853049b7e4afd09039b13083fa79c5&token=25423484&lang=zh_CN#rd

沙场大点兵:24种信号分解方法(附matlab代码) 

沙场大点兵:24种信号分解方法(附matlab代码)icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486001&idx=1&sn=a87c24cb401017a78a90bd1b1439fcb0&chksm=c12be634f65c6f22368b7229a59ac5ef330b89d710c826dbfd1a1c34a02b1dd7e909c7f40d79&token=25423484&lang=zh_CN#rd

 沙场大点兵:27种一维数据转换成二维图像的方法-matlab代码沙场大点兵:27种一维数据转换成二维图像的方法-matlab代码icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486260&idx=1&sn=81b1970cb89364c0289ccdfb403e5388&chksm=c12be731f65c6e273a85456326b503b7f35d9f035405050932ff1926e0b1bfa8076b1bc2d1f2&token=25423484&lang=zh_CN#rd

  • 23
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值