当前位置: 首页 > news >正文

模型预测专题:强鲁棒性DPCC

0

1 前言

在进行DPCC的学习过程中,于下面链接看到了一篇强鲁棒性算法;感觉挺有意思的,学习一下。

永磁同步电机高性能控制算法(12)——基于预测电流误差补偿的强鲁棒预测控制/参数辨识&有限集预测控制与连续集预测控制的对比_连续集模型预测控制-CSDN博客

2 文章的阅读

这里先看看原文具体讲了什么问题,论文的重点章节是第四节:

所提出的控制算法框图如下所示:

文章的控制基础有一个前提,电阻影响被有条件的忽略,从下面公式可以看出,当控制模式为id =0且载波频率相对较高时,(例如开关频率为10kHz,此时载波周期为100us=0.0001s),此时Ud中电阻参数相关项 T/L*Rs*id中 T在分子上,即使电感在分母上。若电感为mH级别,电感值通常>=1mH = 0.001,T/L项<=0.1。另外若考虑id的波动大小,约为 -0.5 - 0.5为1A波动,以我经常用到的一款电机参数中Rs = 0.958,Ls = 5.25mH计算,此时Rs*id 项约为0.48,将其以上项乘起来  0.0001/0.00525*0.958*0.5 = 0.091。这个数量级对系统的控制相对影响较小。

相对的是Uq中电阻项,此项 T/L*R*iq,这一项则会出现变数;如果按照上述公式中推导的,将 T/L*we提到括号外面,整体评价的就是磁链参数变化与电阻参数变化对这一项的影响。还是以一个典型的电机参数为例,Phif = 0.1827,Rs = 0.958,iq最大值为25.7A,we最大值为628rad/s。

工况1:电机空载运行于额定转速,此时 Phif = 0.1827, iq约为0.5A,此时 Rs*iq/we = 0.958*0.5/628 = 7.6274e-04,这一项基本可以被忽略;

工况2:电机额定载运行于额定转速,iq = 25.7A,此时 Rs*iq/we = 0.958*0.5/628 = 0.0392,这一项还是可以被忽略;

工况3:电机运行于低频区5rpm,空载;此时iq波动幅值为0.5A,有效值接近于0;此时 Rs*iq/we = 0.958*0.5/628 = 0.2395 该项此时无法被忽略(磁链项为0.1827),两者处于一个数量级;

工况4:电机运行于低频区5rpm(we = 2.09rad/s),额定载;iq = 25.7A,此时 Rs*iq/we = 0.958*25.7/2 = 12.31,此时该项占据主导地位;

总的来说,文章忽略的定子电阻在id预测过程中的影响,仍然讨论定子电阻在iq预测过程中的影响。整合公式为:

其中:

这两项很关键,是文章关键处理的内容。

首先针对d轴的控制,设计一个代价函数如下图所示,

文章的关键思想:

原文:Meanwhile, it can be found from (15) that when term1 tends to 0, it indicates that the predictive current is very close to the actual current. When term2 tends to 0, it indicates that Mes is very close to the actual motor parameters. When the above conditions are satisfied at the same time, the most suitable Mes can be obtained.

当 term1 收敛至0时,预测电流接近真实值;当term2 趋近于0时,设计的参数Mes趋近于真实值;当两个都满足,最为合适的 Mes 值则被找到;
 

文章该原理的设计框图如下所示,其输入为 id 实际值 与 预测值之间的差值、ud(k-1)、量化因子Hm。其输出值是最后的 Mes,这个过程中前级都是误差量的计算,也就是校准值的计算。

对其进行计算偏导数,得到数据的梯度:

当梯度为0时,G1收敛到最小值;进一步推导可得:

这本质上是一个辨识过程,将其引入到前一拍;

此时预测电流的表达式为:

进一步的将其替换为所提出的方法:

q轴与此同理,并没有具体的区别;

3 关键原理总结

其关键的原理就在于这个公式以及其偏导数得出的递推方程:

这个方程给出了一种预测误差的补偿方案,这个是怎么想到的呢?作者确实奇思妙想的。这个其实有些像磁链观测器的误差方程,对其求偏导得到了一个梯度方程。求得梯度为0的点得到递推方程,从而计算观测的反电动势从而得到观测角度。观测器辨识的是角度,而这里是对电感参数进行辨识,场景和原理虽然不同,但是思想是一样的。

偏导方程如下所示,偏导方程中包括了观测值本身,包括了观测值的上一拍的值,也包括了电机状态输入,这实际上就是一个高级的状态观测器。只是展开的形状不一样。

4 仿真复现

搭建仿真验证后,结果如下图所示,只是看电感的辨识结果的话,可以看到基本是符合估计值的;目前Hm的设置值为100;

把参数改大后,

http://www.xdnf.cn/news/1078399.html

相关文章:

  • Springboot开发常见注解一览
  • C++ 完美转发(泛型模板函数)
  • CSS外边距合并(塌陷)全解析:原理、场景与解决方案
  • apoc-5.24.0-extended.jar 和 apoc-4.4.0.36-all.jar 啥区别
  • 大数据平台与数据中台:从概念到落地的系统化实践指南
  • Point-LIO代码阅读与解析
  • opencv基础的图像操作
  • 回顾JAVA中的锁机制
  • 2-RuoYi-UI管理平台的启动
  • 少样本学习在计算机视觉中的应用:原理、挑战与最新突破
  • 第8章网络协议-NAT
  • ai之RAG本地知识库--基于OCR和文本解析器的新一代RAG引擎:RAGFlow 认识和源码剖析
  • HTTP 协议深入理解
  • 【51单片机单595点阵8按键调节速度方向花样】2022-6-18
  • 运用逆元优化组合计算#数论
  • monorepo + Turborepo --- 构建仓库结构
  • 创客匠人解构知识付费爆单密码:产品力打造与 IP 变现的深度耦合
  • [转载]数据库锁分布式锁实现接口幂等性
  • 如何将文件从 iPhone 传输到 Android(新指南)
  • BUUCTF在线评测-练习场-WebCTF习题[ZJCTF 2019]NiZhuanSiWei1-flag获取、解析
  • 02-更换证件背景
  • 节点小宝内网穿透实测:告别“无网”烦恼,让你的设备“触手可及”
  • python实现基于资金分布、RSI及布林策略的方案
  • 智慧赋能高压并网:分布式光伏监控系统在5.88MW物流园项目的实践解析
  • [环境配置] 3. 使用 UV管理 Python 环境
  • 416. 分割等和子集
  • docker拉取redis并使用
  • STEP-BACK PROMPTING:退一步:通过抽象在大型语言模型中唤起推理能力
  • MySQL的5.0和8.0版本区别
  • 基于[coze][dify]搭建一个智能体工作流,使用第三方插件抓取热门视频数据,自动存入在线表格