永磁同步电机模型预测控制——模型预测研究现状

永磁同步电机 (PMSM) 模型预测控制 (MPC) 研究现状

永磁同步电机 (PMSM) 控制系统是一个强耦合的非线性系统,传统的磁场定向控制 (FOC) 和直接转矩控制 (DTC) 在一些高性能特殊应用场合下难以满足控制需求。为了应对这些挑战,研究人员在 FOC 和 DTC 的基础上提出了多种先进控制策略,并应用于高性能 PMSM 驱动系统,例如:

  • 滑膜控制
  • 自抗扰控制
  • 自适应控制
  • 模糊控制
  • 模型预测控制 (Model Predictive Control, MPC)

⚙️

永磁同步电机控制策略

模型预测控制 (MPC) 概述

模型预测控制 (MPC) 是一种基于最优控制理论的先进控制技术。其核心思想是利用系统模型来预测控制变量的未来变化,并根据预先设定的最优准则选择最优的操作。

通过精心设计的最优准则,MPC 可以灵活控制多个重要参数,如电机转矩脉动、开关频率、功率损耗和最大输出电流等,从而实现多目标控制。

交流电机 MPC 的基本原理是,基于逆变器和电机的离散模型以及电机当前状态,预测电机未来时刻的状态。然后,通过预先设计的评价指标与预测值进行比较,选择最优的电压矢量作用于电机。

MPC 通过考虑未来状态来选择最优电压矢量,具有以下优点:

  • 动态响应快速
  • 在线优化能力强
  • 结构简单
  • 易于添加约束

然而,早期由于微处理器运算性能的限制,MPC 的发展受到阻碍。近 15 年,随着芯片制造业的飞速发展,MPC 逐渐成为研究热点。

MPC 的分类

根据控制目标的不同,MPC 可以细分为:

  1. 模型预测电流控制 (MPCC): 以电流为控制目标,构建电流代价函数来选择最优电压矢量。
  2. 模型预测转矩控制 (MPTC): 代价函数由转矩和磁链构成。由于两者量纲不同,需要设计合适的权重系数。目前,该权重系数的确定没有成熟的理论指导,通常需要通过大量实验总结经验,设计过程较为复杂。实际应用中,通常根据控制性能要求和实验条件选择合适的权重。

📊

基于不同控制目标的 MPC 分类

单矢量 MPC 的局限性

在 PMSM 驱动系统中,逆变器产生基本电压矢量作为电机的直接控制对象。传统的 MPC 通过枚举的方式,将每个基本电压矢量代入 PMSM 的预测模型,得到所需的预测变量(电流、转矩),计算代价函数以评估每个基本电压矢量的效果,并选择最优电压矢量施加于电机。

由于两电平逆变器所产生的基本电压矢量是有限的(2 个零矢量和 6 个非零矢量),每个控制周期只有一个基本电压矢量施加于电机,因此这种方法也被称为单矢量模型预测控制 (Single Vector MPC)。单矢量 MPC 在每个控制周期只应用最优基本电压矢量,导致所选最优电压矢量与期望参考电压之间存在跟踪误差,这会影响 PMSM 的稳态控制性能。

提高控制频率是改善稳态性能的有效方法,可以减小控制间隔,提高控制精度。然而,这种方法对数字处理器的性能要求较高,且不利于复杂控制算法的实现。

多矢量 MPC

为了克服单矢量 MPC 的局限性,研究人员提出多矢量 MPC 方案,增加每个控制周期内施加于电机的基本电压矢量数量。根据在一个控制周期内应用的矢量数量,多矢量 MPC 可以分为:

  1. 双矢量 MPC (DV-MPC): 每个控制周期向电机施加两个基本电压矢量,两个矢量的持续时间之和为整个控制周期的时间。相比于单矢量 MPC,DV-MPC 在电压矢量选择和作用时间分配上更灵活。通过选择最优的电压矢量组合,并计算它们各自的作用时间,可以得到更准确的输出电压矢量。该方法可以减小期望参考电压向量与输出电压向量之间的误差,减小电流和转矩脉动,提高系统的稳态性能。
  2. 三矢量 MPC: 使用两个有效矢量和一个零矢量合成最终的输出电压,能够准确跟踪调制范围内的参考电压,因此电流和转矩脉动明显小于单矢量 MPC 和双矢量 MPC,稳态性能最优。

🎛️

单步 MPC 与多步 MPC 的电压矢量应用对比

多步 MPC

电压矢量数量的增加虽然可以带来更优异的稳态性能,但也会不可避免地增加计算负担和逆变器的开关频率。多步模型预测能有效地解决稳态控制性能与开关频率之间的矛盾。

可以将 MPC 划分为单步 MPC(传统)和多步 MPC。多步 MPC 是在单步的基础上,通过迭代计算对系统状态进行多次预测。为了获取未来多个预测时刻内的全局最优解(即最优电压矢量),多步预测法能够提高系统稳态性能,降低开关频率。

然而,MPC 通过离散预测模型预测未来状态,此过程涉及复杂的数学计算。因此,多步预测的计算量较大,可能超出控制周期,影响系统控制性能。多步预测方法对硬件处理器的要求很高。

为了解决多步预测计算量大的问题,一些学者提出了解决方法:

  1. 将 MPC 优化转化为整数二次规划问题,结合球面译码算法,减少预测过程的计算量。
  2. 采用移动模块方法,将预测范围以不同的采样间隔分成两部分,从而限制计算成本的同时实现较长的预测范围。
  3. 采用分支定界法对切换序列进行筛选,可以将计算量减少一个数量级。

尽管多步预测具有优越的控制表现,但目前预测层数较多的多步预测方法难以在实际电机驱动中应用。

MPC 的挑战与未来展望

MPC 仍然面临诸多挑战:

  • 权重设计无明确理论指导
  • 计算量简化
  • 开关频率不固定

总而言之,交流电机 MPC 仍处于发展阶段,无论是在学术研究方面还是实际产品化方面,都有很长的路要走。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/892036.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Clisoft SOS设置Server和Project

Clisoft SOS设置Server和Project 一、关于SOS Servers、Clients、Projects和Work Areas 以下三个图是官方文档中介绍的三种情况 图1:带有两个客户端的SOS服务器 图2:使用本地缓存服务器 图3:远程设计团队的缓存服务器 因为SOS软件需要…

调整Python+Pytest+Allure+Yaml+Pymysql框架中需要执行的用例顺序

当pytest框架中有时时候会因为用例的前后关联关系需要调整用例执行顺序时则可以跟进具体的要求调整pytest.ini配置文件中执行用例文件夹的前后顺序 当如果是需要调整某个文件夹中用例的执行顺序时,则跟进具体的文件调整对应testcases中test_*.py文件中的执行顺序

【Dify】Dify自定义模型设置 | 对接DMXAPI使用打折 Openai GPT 或 Claude3.5系列模型方法详解

一、Dify & DMXAPI 1、Dify DIFY(Do It For You)是一种自动化工具或服务,旨在帮助用户简化操作,减少繁琐的手动操作,提升工作效率。通过DIFY,用户能够快速完成任务、获取所需数据,并且可以…

C++编程基础之override关键字

在C中,override关键字用于显式地标识派生类中的成员函数是对基类中虚函数的重写,具有以下重要作用和使用说明: 作用 增强代码可读性:通过使用override关键字,能够清晰地向阅读代码的人表明该函数是有意重写基类中的虚…

Redis数据库笔记—— Hash(哈希)的扩容机制(rehash)

大家好,这里是Good Note,关注 公主号:Goodnote,专栏文章私信限时Free。详细介绍Hash(哈希)的扩容机制(rehash)、源码、以及扩容和缩容过程。 文章目录 Redis 字典(dict)结构源码哈希…

支持向量机算法(一):像讲故事一样讲明白它的原理及实现奥秘

1、支持向量机算法介绍 支持向量机(Support Vector Machine,SVM)是一种基于统计学习理论的模式识别方法, 属于有监督学习模型,主要用于解决数据分类问题。SVM将每个样本数据表示为空间中的点,使不同类别的…

数据结构与算法之二叉树: LeetCode 108. 将有序数组转换为二叉搜索树 (Ts版)

将有序数组转换为二叉搜索树 https://leetcode.cn/problems/convert-sorted-array-to-binary-search-tree/description/ 描述 给你一个整数数组 nums ,其中元素已经按 升序 排列请你将其转换为一棵 平衡 二叉搜索树 示例 1 输入:nums [-10,-3,0,5,9…

【博主推荐】 Microi吾码开源低代码平台,快速建站,提高开发效率

🍬引言 🍬什么是低代码平台? 低代码平台(Low-Code Platform)是一种使开发人员和业务用户可以通过图形化界面和少量的编程来创建应用程序的开发工具。与传统的编程方式相比,低代码平台大大简化了开发过程&a…

理解 Tomcat 架构与自定义实现

前言 Tomcat 是一个轻量级的 Web 容器,被广泛应用于 Java Web 开发中。通过它,我们可以轻松地部署和运行 Web 应用。在本文中,我们将深入分析 Tomcat 的核心架构,同时结合一段代码,手动实现一个简化的 Tomcat 服务&am…

用户界面软件02

基于表单的用户界面 在“基于表单的用户界面”里面,用户开始时选中某个业务处理(模块),然后应用程序就使用一系列的表单来引导用户完成整个处理过程。大型机系统上的大部分用户界面都是这样子的。[Cok97]中有更为详细的讨论。 面…

go如何从入门进阶到高级

针对Go语言的学习,不同阶段应采取不同的学习方式,以达到最佳效果.本文将Go的学习分为入门、实战、进阶三个阶段,下面分别详细介绍 一、社区 Go语言中文网 作为专注于Go语言学习与推广的平台,Go语言中文网为开发者提供了丰富的中…

采用标准化的方式开展设计-研发中运用设计模式

概述 实现规范化、标准化的引导式设计,以业务需求为输入,识别业务特点,并通过引导式设计,找到最适合的设计模式、具体方案,汇总成为应用的设计,拉齐各应用的设计一的致性。 采用标准化的方式开展设计…

Qt之屏幕录制设计(十六)

Qt开发 系列文章 - screencap(十六) 目录 前言 一、实现原理 二、实现方式 1.创建录屏窗口 2.录屏窗口类定义 3.自建容器对象定义 4.用户使用 5.效果演示 总结 前言 利用Qt实现屏幕录制设计,可以通过使用Qt自带的类QScreen、QPixma…

【C语言程序设计——选择结构程序设计】求阶跃函数的值(头歌实践教学平台习题)【合集】

目录😋 任务描述 相关知识 1. 选择结构基本概念 2. 主要语句类型​(if、if-else、switch) 3. 跃迁函数中变量的取值范围 4. 计算阶跃函数的值 编程要求 测试说明 通关代码 测试结果 任务描述 本关任务:输入x的值&#x…

自定义字典转换器用于easyExcel 导入导出

文章目录 引言I 字典转换器、注解、序列化器注解定义自定义字典转换器用于easyExcel 导入导出自定义字典序列化器II 字典存储设计数据库表结构redis缓存引言 需求导入Excel时,根据字典内容或者字段编码转换 导出Excel时,根据字典内容或者字段编码转换 接口响应数据序列化时,…

Mac软件介绍之录屏软件Filmage Screen

软件介绍 Filmage Screen 是一款专业的视频录制和编辑软件,适用于 Mac 系统 可以选择4k 60fps,可以选择录制电脑屏幕,摄像头录制,可以选择区域录制。同时也支持,简单的视频剪辑。 可以同时录制电脑麦克风声音 标准…

RK3588平台开发系列讲解(系统篇)Linux Kconfig的语法

文章目录 一、什么是Kconfig二、config模块三、menuconfig四、menu 和 endmenu五、choice 和 endchoice六、source七、depends on八、default九、help十、逻辑表达式沉淀、分享、成长,让自己和他人都能有所收获!😄 一、什么是Kconfig Kconfig的语法及代码结构非常简单。本博…

.NET 9.0 WebApi 发布到 IIS 详细步骤

微软表示,.NET 9 是迄今为止性能最高的 .NET 版本,对运行时、工作负载和语言方面进行了 1,000 多项与性能相关的改进,并采用了更高效的算法来生成更好的代码。 .NET 9 是 .NET 8 的继任者,特别侧重于云原生应用和性能。 作为标准期…

感知器的那些事

感知器的那些事 历史背景Rosenblatt和Minsky关于感知机的争论弗兰克罗森布拉特简介提出感知器算法Mark I感知机争议与分歧马文明斯基简介单层感知器工作原理训练过程多层感知器工作原理单层感知机 vs 多层感知机感知器模型(Perceptron),是由心理学家Frank Rosenblatt在1957年…

Flutter中的网络请求图片存储为缓存,与定制删除本地缓存

Flutter中的网络请求图片存储为缓存,与定制删除本地缓存 1:封装请求图片函数 2:访问的图片都会转为本地缓存,当相同的请求url,会在本地调用图片 3:本地缓存管理【windows与andriod已经测试】【有页面】【有…