永磁同步电机控制算法--基于 SVM 的无磁链环 DTC

news2024/11/14 2:15:25

永磁同步电机无磁链环 DTC 通过控制定子磁链交轴分量来直接控制转矩,不再要求控制磁链幅值恒定,省去了传统 DTC 中的磁链环,不仅转矩响应更快,有效抑制了转矩脉动,而且提高了电机功率因数。但无磁链环 DTC 方案仍采用传统 DTC方案中的 Bang-Bang 控制策略,保留了 Bang-Bang 控制精度不高的缺点,此外,其定子磁链限幅策略要求在两套电压矢量选择表之间频繁切换,而两套电压矢量选择表的扇区分别依据转子和定子磁链位置划分,在运行过程中要同时对两个磁链的位置进行检测,系统复杂性相比传统 DTC 更高,存在改善的空间。

一、原理介绍

永磁同步电机相量图

dq轴定子磁链电流模型公式为

定子磁链幅值为

转矩表达式

由转矩表达式可求得转矩角

由上个文章可知,隐极式正弦波永磁同步电动机的转矩只与定子磁链的交轴分量有关,转矩变化则由定子电压直轴分量控制。在无磁链环DTC中,在负载转矩不变时,电机定子磁链的交轴分量也不变。而由dq轴定子磁链电流模型公式可知,定子磁链的交轴分量只与定子电流交轴分量有关,所以在相同转矩要求下,定子电流交轴分量也是不变的。这样一来定子磁链幅值就只与定子电流直轴分量有关了,在 DTC 系统正常运行时,定子磁链幅值与定子电流直轴分量成正比。

基础部分铺垫完成,接下来介绍如何推导出合适的参考电压矢量。

在直接转矩控制与空间矢量调制的结合过程中,求出一个合适的参考电压矢量是最关键的一环,在无磁链环永磁同步电机 DTC 中,这个参考矢量需要满足几个要求:

1) 能精确地补偿转矩误差,使转能准确跟踪给定值。因为无磁链环 DTC 相比传统 DTC 的优点就在于能更准确地控制转矩,因此转矩控制精度是设计参考矢量时首

先要考虑的问题。

2) 确保电机安全运行,定子磁链的幅值要限制在额定值之内。

3)应尽量减小定子磁链幅值与无功励磁电流,提高电机的功率因数。

传统的 SVM-DTC 中定子磁链幅值是恒定的,只需计算出满足转矩要求需要的转矩角变化量即可求出参考电压矢量,无磁链环 DTC 并不要求保持磁链幅值恒定,之前的方法并不适用。在无磁链环 DTC 理论中,转矩的变化由所施加电压矢量的交轴分量决定,从优先满足转矩要求的角度来说,参考电压矢量的交轴分量可以直接确定。

电压矢量直轴分量的作用则是控制磁链幅值,当交轴分量作用导致磁链幅值超出额定值时,直轴分量要作用在相反方向上,把定子磁链控制在额定值内。

综上所述,参考电压矢量为

结合空间矢量调制的 PMSM 无磁链环 DTC 系统框图如图所示, 转速误差经过 PI 控制器得到给定转矩,转矩误差经过限幅之后得到单周期内期望转矩变化量,根据参考电压矢量公式即可求出参考电压矢量,最终由空间矢量调制模块合成目标电压矢量作用于逆变器实现对电机的控制。

基于空间矢量调制的 PMSM 无磁链环 DTC 结构框图

二、仿真模型

在MATLAB/simulink(软件版本为2024A)里面验证所提算法。采用和实验中一致的控制周期1e-4,电机部分计算周期为5e-7。仿真模型如下所示:

2.1给定转速与实际转速

转速稳定,并准确跟踪给定转速值

2.2实际电磁转矩

转矩明显平滑度更好,并且响应速度较快

2.3给定定子磁链与实际定子磁链

磁链基本控制在了限制值附近。

总结:与传统无磁链环 DTC 方法相比,基于空间矢量调制的无磁链环直接转矩控制方法定子磁链幅值自适应变化效果更好,磁链幅值进一步降低,提高了电机的功率因数,并且在保持 DTC 动态响应快有点的同时,有效降低了转矩脉动。

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

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

相关文章

探索4D毫米波雷达和摄像头在自动驾驶中的潜力

随着自动驾驶技术的快速发展,关于各种传感器的必要性,尤其是LiDAR(激光雷达)与毫米波雷达结合摄像头的作用,激发了激烈的讨论。在这篇博客中,我们将探讨4D毫米波雷达和摄像头的组合是否可能成为自动驾驶车辆…

python爬虫网页解析模块及测试案例详解

xpath模块 xpath模块基本使用方法 测试网页 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"/><title>Title</title> </head> <body><ul><li id"l1" class"c1&q…

R语言安装devtools包失败过程总结

R语言安装devtools包时&#xff0c;遇到usethis包总是安装失败&#xff0c;现总结如下方法&#xff0c;亲测可有效 一、usethis包及cli包安装问题 首先&#xff0c;Install.packages("usethis")出现如下错误&#xff0c;定位到是这个cli包出现问题 载入需要的程辑包…

GESP CCF C++ 四级认证真题 2024年6月

第 1 题 下列代码中&#xff0c;输出结果是&#xff08; &#xff09; A. 12 24 24 12 B. 24 12 12 24 C. 12 12 24 24 D. 24 24 12 12 第 2 题 下面函数不能正常执行的是&#xff08;&#xff09; A. B. C. D. 第 3 题 下面程序…

博客前端项目学习day01

这里写自定义目录标题 登录创建项目配置环境变量&#xff0c;方便使用登录页面验证码登陆表单 在VScode上写前端&#xff0c;采用vue3。 登录 创建项目 检查node版本 node -v 创建一个新的项目 npm init vitelatest blog-front-admin 中间会弹出询问是否要安装包&#xff0c…

OZON夏季热卖产品有哪些,OZON夏季热卖新品

OZON平台在夏季的热卖产品种类繁多&#xff0c;涵盖了多个领域&#xff0c;主要包括但不限于以下几个方面&#xff0c;接下来看看OZON夏季热卖产品有哪些&#xff0c;OZON夏季热卖新品&#xff01;Top1 运动套装 Костюм спортивный Victorias Secret 商品id…

AI绘画Stable Diffusion 自制素材工具: layerdiffusion插件—透明背景生成工具

大家好&#xff0c;我是设计师阿威 今天给大家分享一款AI绘画的神级插件—LayerDiffusion。 Layerdiffusion是一个用于stable-diffusion-webui 的透明背景生成&#xff08;不是生成图再工具扣图&#xff0c;是直接生成透明背景透明图像&#xff09;插件扩展&#xff0c;它可以…

SpringBoot整合Java Mail实现发送邮件

SpringBoot整合Java Mail实现发送邮件 实现 引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency>发送邮件配置 这里使用qq邮箱发送邮件&#xff0c;需要…

TensorBoard ,PIL 和 OpenCV 在深度学习中的应用

重要工具介绍 TensorBoard&#xff1a; 是一个TensorFlow提供的强大工具&#xff0c;用于可视化和理解深度学习模型的训练过程和结果。下面我将介绍TensorBoard的相关知识和使用方法。 TensorBoard 简介 TensorBoard是TensorFlow提供的一个可视化工具&#xff0c;用于&#x…

visual studio开发C++项目遇到的坑

文章目录 1.安装的时候&#xff0c;顺手安装了C模板&#xff0c;导致新建项目执行出问题2.生成的exe&#xff0c;打开闪退问题3.项目里宏的路径不对&#xff0c;导致后面编译没有输出4. vs编译ui&#xff0c;warning跳过&#xff0c;未成功5.vs编译.h&#xff0c;warning跳过&a…

python自动化之用flask校验接口token(把token作为参数)

用到的库&#xff1a;flask 实现效果: 写一个接口&#xff0c;需要token正确才能登录 代码&#xff1a; # 导包 from flask import Flask,request,jsonify,json # 创建一个服务 appFlask(__name__) # post请求&#xff0c;路径&#xff1a;/query app.route(/query, met…

spring boot(学习笔记第十三课)

spring boot(学习笔记第十三课) Spring Security的logout&#xff0c;传统后端开发模式和前后端分离模式的不同&#xff0c;invalidateHttpSession不好用&#xff0c;bug&#xff1f; 学习内容&#xff1a; 传统后端开发模式 vs 前后端分离模式Spring Security的logout功能 1.…

WPF学习(4) -- 数据模板

一、DataTemplate 在WPF&#xff08;Windows Presentation Foundation&#xff09;中&#xff0c;DataTemplate 用于定义数据的可视化呈现方式。它允许你自定义如何展示数据对象&#xff0c;从而实现更灵活和丰富的用户界面。DataTemplate 通常用于控件&#xff08;如ListBox、…

pytorch中一些最基本函数和类

1.Tensor操作 Tensor是PyTorch中最基本的数据结构&#xff0c;类似于NumPy的数组&#xff0c;但可以在GPU上运行加速计算。 示例&#xff1a;创建和操作Tensor import torch# 创建一个零填充的Tensor x torch.zeros(3, 3) print(x)# 加法操作 y torch.ones(3, 3) z x y pr…

C++进阶(while循环——函数应用)

知识点代码框架总结 输入n组数据 &#xff0c;对n组数据里面的每一组进行处理&#xff08;输出、求和 、运算、其他&#xff09; int n;//几组数据cin >> n;//2while(n--){//对每组数据进行处理}看到下面的样例&#xff0c;肌肉型反映出上面的框架//2// 1 2 3// 4 5 6若…

Golang | Leetcode Golang题解之第233题数字1的个数

题目&#xff1a; 题解&#xff1a; func countDigitOne(n int) (ans int) {// mulk 表示 10^k// 在下面的代码中&#xff0c;可以发现 k 并没有被直接使用到&#xff08;都是使用 10^k&#xff09;// 但为了让代码看起来更加直观&#xff0c;这里保留了 kfor k, mulk : 0, 1;…

二叉搜索树大冒险:寻找-插入-删除

OK&#xff0c;看我们题目就可知道啦&#xff0c;今天要分享学习的一种数据结构就是二叉搜索树。 内容题目也说了三个大概的&#xff0c;分别是寻找、插入、删除。 讲这个之前呢&#xff0c;那么就先讲讲这个二叉搜索树是何方神圣呢&#xff1f; 二叉搜索树&#xff1a; 又…

移动端 火星坐标体系、百度坐标体系和全球坐标体系,该如何选择?

项目场景&#xff1a; 在梳理项目代码时&#xff0c;看到代码中的WGS-84&#xff0c;忽然想起有次面试问我这个问题&#xff0c;今天就好好的梳理下这个问题。 问题描述 移动端获取定位一般用什么编码&#xff1f;为什么要用这个&#xff1f; 原因分析&#xff1a; 解决方案&…

J025_斗地主游戏案例开发(简版)

一、需求描述 完成斗地主游戏的案例开发。 业务&#xff1a;总共有54张牌&#xff1b; 点数&#xff1a;3、4、5、6、7、8、9、10、J、Q、K、A、2 花色&#xff1a;黑桃、红桃、方片、梅花 大小王&#xff1a;大王、小王 点数分别要组合4种花色&#xff0c;大小王各一张。…

LeetCode --- 134双周赛

题目 3206. 交替组 I 3207. 与敌人战斗后的最大分数 3208. 交替组 II 3209. 子数组按位与值为 K 的数目 一、交替组 I & II 题目中问环形数组中交替组的长度为3的子数组个数&#xff0c;主要的问题在于它是环形的&#xff0c;我们要考虑首尾相接的情况&#xff0c;如何…