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

永磁同步电机预测模型控制(MPC)

永磁同步电机预测模型控制(MPC)

文章目录

  • 前言
  • 1、模型预测控制
    • 1.1 连续控制集模型预测控制(CCS-MPC)
    • 1.2 有限控制集模型预测控制(FCS-MPC)
    • 1.3 模型预测控制的优缺点
  • 2、永磁同步电机模型预测控制
    • 2.1 预测模型
    • 2.2 价值函数
    • 2.3 滚动优化
    • 2.4 控制延迟补偿
  • 3、永磁同步电机模型预测控制仿真
  • 参考

前言

预测控制理论是上世纪七十年代在工业生产中发展起来的一种控制理论。在面对多变量、非线性的控制系统时,工程师们发现:在工业生产实践中很难对控制系统建立精确地数学模型;在系统自身以及周围环境的干扰影响下,控制系统的鲁棒性变得尤为重要;同时工业控制策略需要与先进的计算机技术相结合,提升其控制性能,并保证其实时性、经济性。于是,具有优良控制效果的预测控制算法应运而生。
预测控制的本质是对系统未来的状态变量的预测。首先建立控制系统的数学模型,以固定采样间隔采集系统当前时刻的状态变量,对系统未来时刻状态变量预测输出。根据系统要求不同提前设定价值函数,对预测输出进行选择,选择符合系统要求的最优控制量,从而使系统性能达到最优。但是预测控制的基础是系统的数学模型,当系统数学模型发生变化时,预测控制的最优控制量随即发生相应的变化。因此,预测控制算法的使用高度依赖系统数学模型,且对外部干扰以及系统参数变化十分敏感,同时对计算量有着一定的要求。因此,预测控制在具体应用时,需搭配具有一定计算能力的数字芯片处理器。 预测控制分类如下图所示。四种预测控制实现过程不同,但都是以提高系统性能为最终目的。
在这里插入图片描述

1、模型预测控制

模型预测控制包含连续控制集模型预测控制(Continuous control set model predictive control,CCS-MPC)和有限控制集模型预测控制(Finite control set model predictive control,FCS-MPC)两种。

1.1 连续控制集模型预测控制(CCS-MPC)

在这里插入图片描述

1.2 有限控制集模型预测控制(FCS-MPC)

在这里插入图片描述

1.3 模型预测控制的优缺点

在这里插入图片描述

2、永磁同步电机模型预测控制

在这里插入图片描述

2.1 预测模型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2 价值函数

在这里插入图片描述

2.3 滚动优化

在这里插入图片描述
在这里插入图片描述

2.4 控制延迟补偿

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、永磁同步电机模型预测控制仿真

在这里插入图片描述
模型下载地址:永磁同步电机电流环模型预测控制(MPC)simulink仿真模型
电机参数:

Vdc=24;
Rs=0.6;
Ld=1.4e-3;
Lq=1.4e-3;
flux=0.034182;
J=1.1e-5;
B=1e-3;
pole=1;
fx=0.02;

其中MPC模块如下:
在这里插入图片描述

function [sa, sb, sc] = fcn(id_ref, iq_ref, id, iq, theta, we, Vdc, R, Ld, Lq, phif, Ts)% 开始定义常数U1 = Vdc / 3;U2 = -Vdc / 3;U3 = 2 * Vdc / 3;U4 = -2 * Vdc / 3;% 定义换相矩阵sw,表示8个可能的状态sw = [0, 0, 0;1, 0, 0;1, 1, 0;0, 1, 0;0, 1, 1;0, 0, 1;1, 0, 1;1, 1, 1];% 定义电压矩阵UwUw = [0, 0, 0;U3, U2, U2;U1, U1, U4;U2, U3, U2;U4, U1, U1;U2, U2, U3;U1, U4, U1;0, 0, 0];% 初始化误差数组err = zeros(8, 1);% 循环遍历每个状态,计算误差for i = 1:size(Uw, 1)% 提取当前状态的电压值Va = Uw(i, 1); % a相电压Vb = Uw(i, 2); % b相电压% Clark 变换(转换到αβ坐标系)alpha = Va;beta = (1/sqrt(3)) * (Va + 2 * Vb);% Park 变换(转换到dq坐标系)Vd = alpha * cos(theta) + beta * sin(theta);  % d轴电压Vq = -alpha * sin(theta) + beta * cos(theta); % q轴电压% 电流动态方程did = Ts / Ld * (-R * id + Lq * we * iq + Vd); diq = Ts / Lq * (-R * iq - Ld * we * id + Vq - phif * we); % 计算下一个时刻的电流id_next = did + id;iq_next = diq + iq;% 计算当前状态的误差(与参考值的距离平方)err(i) = (id_next - id_ref)^2 + (iq_next - iq_ref)^2;end% 找到误差最小的状态索引[~, I] = min(err);  % 找到最小误差的索引% 返回对应的开关状态sa = sw(I, 1);sb = sw(I, 2);sc = sw(I, 3);
end

速度波形:
在这里插入图片描述
相电流波形:
在这里插入图片描述
角度波形:
在这里插入图片描述
力矩波形:
在这里插入图片描述

参考

【1】高丽媛. 永磁同步电机的模型预测控制研究[D].浙江大学,2013.
【2】B站 DR_CAN对MPC通俗简练的系列讲解:
https://www.bilibili.com/video/BV1cL411n7KV/?spm_id_from=333.999.0.0&vd_source=5f570a9f261c43941608688d2d31a4c5
【3】江朝东.永磁同步电机伺服系统的模型预测控制方法研究[D].东南大学,2019.DOI:10.27014/d.cnki.gdnau.2019.002054.
【4】杨佳雨.永磁同步电机的模型预测控制研究[D].华北电力大学,2014.
【5】徐晓明.永磁同步电机电流预测控制策略研究[D].中国矿业大学,2023.DOI:10.27623/d.cnki.gzkyu.2023.002557.
【6】李键.永磁同步电机模型预测电流控制的预测误差分析及抑制研究[D].浙江大学,2019.DOI:10.27461/d.cnki.gzjdx.2019.002146.
【7】刘莹.永磁同步电机模型预测控制策略研究[D].华中科技大学,2018.
【8】周湛清.永磁同步电机系统模型预测控制[D].天津大学,2017.
【9】永磁同步电机模型预测控制(PMSM-MPC)Simulink仿真教程:https://zhuanlan.zhihu.com/p/375286229

相关文章:

永磁同步电机预测模型控制(MPC)

永磁同步电机预测模型控制(MPC) 文章目录 前言1、模型预测控制1.1 连续控制集模型预测控制(CCS-MPC)1.2 有限控制集模型预测控制(FCS-MPC)1.3 模型预测控制的优缺点 2、永磁同步电机模型预测控制2.1 预测模型2.2 价值…...

【JAVA】switch ... case ... 的用法

语法结构: switch(表达式){ case 值1: 表达式和值1匹配时执行的语句 break; case 值2: 表达式和值2匹配时执行的语句 break; …...

基于STM32的热带鱼缸控制系统的设计

文章目录 一、热带鱼缸控制系统1.题目要求2.思路3.电路仿真3.1 未仿真3.2 开始仿真,显示屏显示水温、浑浊度、光照强度等值3.3 当水温低于阈值,开启加热并声光报警3.4 当浑浊度高于阈值,开启自动换水并声光报警3.5 当光照低于阈值&#xff0c…...

Vue项目整合与优化

前几篇文章,我们讲述了 Vue 项目构建的整体流程,从无到有的实现了单页和多页应用的功能配置,但在实现的过程中不乏一些可以整合的功能点及可行性的优化方案,就像大楼造完需要进行最后的项目验收改进一样,有待我们进一步…...

WinForm开发-自定义组件-1. 工具栏: UcompToolStrip

这里写自定义目录标题 1. 工具栏: UcompToolStrip1.1 展示效果1.2 代码UcompToolStrip.csUcompToolStrip.Designer.cs 1. 工具栏: UcompToolStrip 自定义一些Winform组件 1.1 展示效果 1)使用效果 2)控件事件 1.2 代码 设计 编码 UcompToolStrip.…...

法律专业legal case的留学论文写作技巧分析(1)

对于法律专业的留学生而言,案例的分析是写作的重要方面。无论留学的国家是英、美、澳洲还是加拿大,它们都属于case law 的法律体系。一个非常显著的特点便是通过对案例进行分析和提炼,从中总结提炼出principle和rules。case analysis的留学论…...

2025编程技术前沿:探索最新的开发工具与趋势

随着技术的飞速发展,编程领域每天都在演化,新的技术、框架和工具层出不穷。本文将聚焦2025年最具潜力和吸引力的编程技术与工具,从前沿语言到最受欢迎的开发框架,带您一起探索软件开发领域的最新趋势。 一、编程语言的新生代之星…...

sqlserver sql转HTMM邮件发送

通过sql的形式,把表内数据通过邮件的形式发送出去 declare title varchar(100) DECLARE stat_date CHAR(10),create_time datetime SET stat_dateCONVERT(char(10),GETDATE(),120) SET create_timeDATEADD(MINUTE,-20,GETDATE()) DECLARE xml NVARCHAR (max) DECLAR…...

GeoTrust True BusinessID Wildcard

GeoTrust由DigiCert 提供支持,是最受信任和尊重的品牌之一,以提供高保证的网站安全而闻名。 GeoTrust True BusinessID通配符证书 – 以低成本保护多个主机名。即使将其用于您的公司主页或电子邮件服务器主机名,保护所有敏感信息也是您的目标…...

R语言的数据结构

R语言的数据结构 R语言是专门为统计计算和数据分析而设计的一种编程语言,因其强大的数据处理能力而受到广泛欢迎。在R中,数据结构是理解和有效使用R语言的基础。本文将详细介绍R语言中的主要数据结构,包括向量、矩阵、数据框、列表、因子等&…...

安装和配置MySQL教程

以下是在不同操作系统下安装和配置MySQL的详细教程: Windows系统 下载MySQL安装包 访问MySQL官方网站(https://dev.mysql.com/downloads/mysql/),根据你的操作系统版本(32位或64位)下载相应的MySQL Commu…...

黑马Java面试教程_P10_设计模式

系列博客目录 文章目录 系列博客目录前言1. 工厂方法模式1.1 概述1.2 简单工厂模式1.2.1 结构1.2.2 实现1.2.3 优缺点 1.3 工厂方法模式1.3.1 概念1.3.2 结构1.3.3 实现1.3.4 优缺点 1.4 抽象工厂模式1.4.1 概念1.4.2 结构1.4.3 实现1.4.4 优缺点1.4.5 使用场景 总结&#xff0…...

043_小驰私房菜_MTK Camera,Hal层将camera型号写到property属性中

【问题背景】 app层需要知道当前设备的摄像头型号,然后做一些差异化处理。底下如何上报这个摄像头型号? 【分析】 在kernel和hal层,都是有地方能获取到当前摄像头的型号,就看在哪里添加方便。获取到摄像头硬件型号后,将其写入到property属性, 然后app就可以通过读取该…...

基础图形化界面的一个图片爬虫期末

下面是爬取界面: 点击即可自动化爬取 以下是完整代码: import tkinter as tk import requests import os #用于文件和目录操作。# 图片爬虫函数 def image_spider(textbox):headers = {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, …...

Outlook2024版如何回到经典Outlook

Outlook2024版如何回到经典Outlook 如果新加入一家公司,拿到的电脑,大概率是最新版的Windows, 一切都是新的。 如果不coding, 使用国产的foxmail大概就可以解决一切问题了。可惜老程序员很多Coding都是基于传统Outlook的,科技公司所有人都是I…...

仿生的群体智能算法总结之二(十种)

群体智能算法是一类通过模拟自然界中的群体行为来解决复杂优化问题的方法。以下是10种常见的群体智能算法,接上文https://blog.csdn.net/lzm12278828/article/details/144933367仿生的群体智能算法总结之一(十种)-CSDN博客https://blog.csdn.net/lzm12278828/article/detail…...

SpringBoot入门之创建一个Hello World项目

文章目录 一、使用传统的方式1、创建一个SpringBoot项目2、配置pom.xml文件3、下载Maven依赖4、创建一个Controller类:com.devops.controller.HelloController5、创建一个引导类:com.devops.HelloApplication6、启动项目8、访问80809、完整项目结构 二、…...

MySQL与标准SQL的区别

我们试图使MySQL Server遵循ANSI SQL标准和ODBC SQL标准,但MySQL Server在某些情况下执行不同的操作: MySQL和标准SQL特权系统之间有一些区别。例如,在MySQL中,删除表时不会自动撤销表的特权。您必须显式发出REVOKE来撤销表的特权…...

docker中使用Dockerfile设置Volume挂载点

关于在docker中如何使用Volume,可以参考文章: docker中使用Volume完成数据共享-CSDN博客 如果想在生成docker镜像的时候设置好挂载点,而不是在运行镜像生成容器时生成。 下面以自建一个tomcat镜像为例,演示如何在生成镜像时设置…...

Samsung手机首次主要采用竞对Micron LPDDR5内存

根据韩国媒体《韩国先驱报》(The Korea Herald)的报道,即将在1月底发布的三星 Galaxy S25 系列智能手机将首次主要使用美光科技(Micron Technology)提供的移动DRAM,而非三星自家的产品。这一消息对于三星的…...

【项目开发】C#环境配置及VScode运行C#教程(学生管理系统)

原创文章,禁止转载。 文章目录 下载.NETVScode配置运行程序下载.NET 官网链接: https://dotnet.microsoft.com/en-us/download选择任意版本下载: 下载完成后,双击运行exe文件,等待安装完成。 在控制台输入: dotnet --version若出现版本信息,说明安装成功: VScode配…...

[241231] CachyOS 2024 年终总结:性能飞跃与社区繁荣 | ScyllaDB 宣布转向开源可用许可证

目录 CachyOS 2024 年终总结:性能飞跃与社区繁荣ScyllaDB 宣布转向开源可用许可证 CachyOS 2024 年终总结:性能飞跃与社区繁荣 CachyOS 2024 年的最后一个版本 (也是第 13 个版本) 已经发布,同时也迎来了辞旧迎新之际。让我们一起回顾 Cachy…...

AI-Talk开发板之超拟人

一、说明 运行duomotai_ap sdk下的LLM_chat例程,实现开发板和超拟人大模型进行语音交互,支持单轮和多轮交互。 二、SDK更新 v2.3.0及以上的SDK版本才支持超拟人,如果当前SDK在v2.3.o以下,需要更新SDK。在SDK目录(duomotai_ap)下…...

Swift Concurrency(并发)学习

Swift 的并发模型是基于 异步任务 和 任务调度 的一套现代化的异步编程工具。以下是相关语法规则总结 1. 异步函数(async)与 await async 用于声明一个异步函数,表示函数可能会执行耗时任务,例如网络请求、文件读写等。在调用异步…...

从0开始的opencv之旅(1)cv::Mat的使用

目录 Mat 存储方法 创建一个指定像素方式的图像。 尽管我们完全可以把cv::Mat当作一个黑盒,但是笔者的建议是仍然要深入理解和学习cv::Mat自身的构造逻辑和存储原理,这样在查找问题,或者是遇到一些奇奇怪怪的图像显示问题的时候能够快速的想…...

Hoverfly 任意文件读取漏洞(CVE-2024-45388)

漏洞简介 Hoverfly 是一个为开发人员和测试人员提供的轻量级服务虚拟化/API模拟/API模拟工具。其 /api/v2/simulation​ 的 POST 处理程序允许用户从用户指定的文件内容中创建新的模拟视图。然而,这一功能可能被攻击者利用来读取 Hoverfly 服务器上的任意文件。尽管…...

详解网络管理

网络管理是指对计算机网络资源、设备和服务的有效配置、监控、管理和优化的过程。它的目的是确保网络的高效、可靠和安全运行。网络管理的关键任务包括网络监控、配置管理、性能管理、安全管理、故障管理和计费管理。下面是详细的讲解: 1. 网络管理的目标 高可用性…...

iOS 11 中的 HEIF 图像格式 - 您需要了解的内容

HEIF,也称为高效图像格式,是iOS 11 之后发布的新图像格式,以能够在不压缩图像质量的情况下以较小尺寸保存照片而闻名。换句话说,HEIF 图像格式可以具有相同或更好的照片质量,同时比 JPEG、PNG、GIF、TIFF 占用更少的设…...

深入AIGC领域:ChatGPT开发者获取OpenAI API Key的实用指南

在AIGC(人工智能生成内容)领域,ChatGPT作为一种强大的自然语言处理工具,正逐渐成为开发者们不可或缺的助手。然而,要充分发挥ChatGPT的潜力,首先需要获取OpenAI的API Key。本文将详细介绍如何获取OpenAI AP…...

软件工程实验-实验2 结构化分析与设计-总体设计和数据库设计

一、实验内容 1. 绘制工资支付系统的功能结构图和数据库 在系统设计阶段,要设计软件体系结构,即是确定软件系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。同时把模块组织成良好的层次系统:顶层模块通过调用它的下层…...