从零开始之了解电机及其控制(11)实现空间矢量调制

广泛地说,空间矢量调制只是将电压矢量以及磁场矢量在空间中调制到任意角度,通常同时最大限度地利用整个电压范围。

其他空间矢量调制模式确实存在,并且根据您最关心的内容,它们可能值得研究。

如何实际执行这种所谓的交替反向序列 PWM,以及更普遍的真正空间矢量调制模式。

我们首先要回顾一下在六块换向期间如何执行电压调制。回想一下,PWM 周期可以分为两个阶段。强制阶段,其中电流由所施加的电压主动驱动,

而非强制阶段,则不是。                                             

强制阶段所花费的 PWM 周期的百分比称为占空比。在强制阶段,当执行块换向时,当我们将电机旋转一圈时,我们总是有 H 桥的一个桥臂 PWM 到高电压,而另一个桥臂正好 PWM 到地。

因此,在 PWM 周期的强制阶段,我们根据转子角度使用这六种可能的 H 桥配置之一。为了简化我对 H 桥的描述,并使其在视觉上更加令人愉悦,

其中每个圆圈描绘一个 MOSFET,并用黄色表示正在连接。此外,我将显示每个产生的电压矢量。

我们在非强制阶段使用的配置因我们的切换方案而异。例如,如果我们进行硬开关,这六个活动配置中的每一个都对应于相同的、完全断开的 H 桥。如果我们使用软切换,这六个活动配置分别对应于三个非强制配置之一。

而且,如果我们使用免费切换,这六种主动配置对应于三种不同的非强制配置之一。就像我们之前的换相方案一样,通过空间矢量调制,我们的 PWM 周期将分为强制阶段和非强制阶段。

然而,与块换向不同的是,我们的电机相位之一始终保持浮动,既不连接到高电平也不连接到地。

在空间矢量调制期间,我们始终希望所有三个相位都连接到高压或接地。

因此,我们将使用六种配置,而不是在块换向的强制阶段使用的配置,其中涉及连接所有三相以驱动电流。我将把这些电压配置描述为电压配置 1、2、3、4、5 和 6。

显然,就像块换向、电压配置一样,这六种配置中的每一种都指向一个独特且谨慎的角度。

因此,为了产生随转子连续转动的电压矢量,我们将进一步将 Pw-impyret 的受迫相位细分为 T1 和 T2。

在 T1 期间,我们将应用产生场矢量的电压配置,该矢量在顺时针方向上最接近我们所需的矢量。

在 T2 期间,我们将应用电压配置,该电压配置会产生一个最接近逆时针方向所需矢量的矢量。

T1 相对于 T2 的持续时间将由所需的向量确定或相对于由两个选定的电压配置生成的矢量的方向。

 

在执行空间矢量调制时 Pw-impyret 的非强制阶段,我们将使用两种“零”电压配置中的至少一种,其中涉及所有三相都连接到高电平,或者所有三相都连接到高电平连接到低电压。我们将这两种配置称为电压配置零和电压配置七。

如之前说的,任何相连接的电压的绝对大小并不重要。驱动电流的是电压差。在配置零和配置七中,电机两端的电压差为零,因此电流不受强制,这意味着它就像电机引线全部焊接在一起一样自由流动。本质上,我们获得了与互补切换的非强制阶段相同的结果,只是使用所有三个阶段而不是仅两个阶段。

但是我们什么时候使用配置 0,什么时候使用配置 7?那么,这个问题的答案取决于您选择的空间矢量调制模式。例如,如果您试图最小化开关损耗,“null_v0”模式通常被认为是最佳选择,它在整个非强制阶段始终使用配置零。

我们在上一集介绍的交替反向序列具有较少的谐波失真,它使用两者均匀地分割其非受迫相位。但在我们结束这个话题并为您提供发送到 MOSFET 的 PWM 方程之前,我们还需要讨论一件事。脉宽调制对齐。

PWM 信号可以通过三种不同的方式进行配置:前沿调制或左对齐调制,其中周期的前沿被保留为高相位的开始,信号的后沿被调制以在 0 到 100 之间调整 % 占空比。

后沿或右对齐 PWM,其中周期结束被保留为周期结束高相位,改变左上升沿的位置以在 0 和 100% 占空比之间调整,

最后,脉冲中心或中心对齐 PWM,其中保留 PWM 周期的中心作为高相位的中心。上升沿和下降沿的位置都是变化的,并且一致地在 0 和 100% 占空比之间进行调整。

一般来说,在广泛讨论 PWM 信号时,除非另有说明,否则左对齐 PWM 是默认假设。

然而,对于空间矢量调制模式,我们的 PWM 信号通常需要中心对齐。现在,我们终于了解了所有背景信息,以便我们可以描述如何将空间矢量调制信号发送到 H 桥。

因此,我们需要做的第一件事是将 PWM 设置配置为中心对齐。

接下来,我们需要计算所需的矢量方向和占空比。方向通常由您的转子位置决定,但也可能受到任何想要说场信标的影响。您的占空比命令将是当前控制器的输出。您可以计算您想要在每个力配置以及零向量中花费的时间。

T1 将等于 PWM 周期(以秒为单位)乘以占空比乘以 60 的符号减去角度 alpha。该 alpha 值是您想要的向量超出您将花费 T1 的向量的距离。可以通过找到所需矢量角除以 60 的余数来轻松计算。

然后,T2 将再次等于 PWM 周期(以秒为单位)乘以占空比乘以 alpha 符号。最后,T0(您将在零向量中花费的时间)等于总周期 T(以秒为单位)减去 T1 和 T2。

现在,虽然我们一直在谈论的这些电压配置至少在我看来对我们了解正在发生的事情很有帮助。微处理器要求您根据每个相位写入高电平或接地的时间长度来指定 PWM 周期。因此,为了将这些配置周期转换为发送到 H 桥的实际 PWM 信号,我们将使用以下分段函数。

这里有两件事值得注意。如果您希望矢量严格指向转子 Q 轴方向,您可以根据霍尔扇区来考虑这些方程,其中每组方程对应于不同的扇区。其次,非常重要的是,其他资源可能会以与我不同的方式定义他们称为零的角度,或者他们将哪个hall扇区称为零。这将导致他们的方程相对于我的方程发生相移。我的角度约定并不比其他人的更正确或更不正确,但重要的是,无论您选择哪种约定,都必须与其保持一致。

但是如果您的转子中有多个极对,则您将需要更高分辨率的角度测量,因为我们讨论的所有角度都是磁角,而不是机械角。

这是如何优化控制无刷 PMDC 电机的基础知识。

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

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

相关文章

java进阶-Netty

Netty 在此非常感谢尚硅谷学院以及韩顺平老师在B站公开课 Netty视频教程 Netty demo代码文件 I/O 说NIO之前先说一下BIO(Blocking IO),如何理解这个Blocking呢?客户端监听(Listen)时,Accept是阻塞的&…

XML文件反序列化读取

原始XML文件 <?xml version"1.0" encoding"utf-8" ?> <School headmaster"王校长"><Grade grade"12" teacher"张老师"><Student name"小米" age"18"/><Student name&quo…

freertos的任务调度器的启动函数分析(根据源码使用)

volatile uint8_t * const pucFirstUserPriorityRegister ( uint8_t * ) ( portNVIC_IP_REGISTERS_OFFSET_16 portFIRST_USER_INTERRUPT_NUMBER ); 通过宏pucFirstUserPriorityRegister0xE000E400&#xff08;根据宏名字&#xff0c;这是NVIC寄存器地址&#xff09; 查手册…

服务器补丁管理软件

随着漏洞的不断上升&#xff0c;服务器修补是增强企业网络安全的典型特征。作为业务关键型机器&#xff0c;计划服务器维护的停机时间无疑是一件麻烦事。但是&#xff0c;借助高效的服务器补丁管理软件&#xff08;如 Patch Manager Plus&#xff09;&#xff0c;管理员可以利用…

一朵华为云,如何做好百模千态?

点击关注 文丨刘雨琦、郝鑫 2005年华为提出网络时代的“All IP”&#xff0c;2011年提出数字化时代的“All Cloud”&#xff0c;2023年提出智能时代的“All Intelligence”。 截至目前&#xff0c;华为的战略升级经历了三个阶段。 步入智能化&#xff0c;需要迎接的困难依然…

AIGC快速入门体验之虚拟对象

AIGC快速入门体验之虚拟对象 一、什么是AIGC二、AIGC应用场景2.1 代码生成2.2 图片生成2.3 对象生成 三、AIGC虚拟对象3.1 AIGC完全免费工具3.2 快速获取对象3.3 给对象取名3.4 为对象写首诗3.5 和对象聊聊天 一、什么是AIGC AIGC是生成式人工智能&#xff08;Artificial Intel…

28 drf-Vue个人向总结-1

文章目录 前后端分离开发展示项目项补充知识开发问题浏览器解决跨域问题 drf 小tips设置资源root目录使用自定义的user表设置资源路径media数据库补充删除表中数据单页面与多页面模式过滤多层自关联后端提交的数据到底是什么jwt token登录设置普通的 token 原理使用流程解析 jw…

使用代理后pip install 出现ssl错误

window直接设置代理 httphttp://127.0.0.1:7890;httpshttp://127.0.0.1

8月最新修正版风车IM即时聊天通讯源码+搭建教程

8月最新修正版风车IM即时聊天通讯源码搭建教程。风车 IM没啥好说的很多人在找,IM的天花板了,知道的在找的都知道它的价值,开版好像就要29999,后端加密已解,可自己再加密,可反编译出后端项目源码,已增加启动后端需要google auth双重验证,pc端 web端 wap端 android端 ios端 都有 …

NPDP产品经理认证怎么报名?考试难度大吗?

PMDA&#xff08;Product Development and Management Association&#xff09;是美国产品开发与管理协会&#xff0c;在中国由中国人才交流基金会培训中心举办NPDP&#xff08;New Product Development Professional&#xff09;考试&#xff0c;该考试是产品经理国际资格认证…

吉利微型纯电,5 万元的快乐

熊猫骑士作为一款主打下层市场的迷你车型&#xff0c;吉利熊猫骑士剑指宝骏悦也&#xff0c;五菱宏光 MINI 等热门选手。 9 月 15 日&#xff0c;吉利熊猫骑士正式上市&#xff0c;售价为 5.39 万&#xff0c;限时优享价 4 .99 万元。价格和配置上对这个级别定位的战略车型有一…

【AIPOD案例操作教程】斜流风扇轮毂优化

AIPOD是由天洑软件自主研发的一款通用的智能优化设计软件&#xff0c;致力于解决能耗更少、成本更低、重量更轻、散热更好、速度更快等目标的工程设计寻优问题。针对工业设计领域的自动化程度低、数值模拟计算成本高等痛点&#xff0c;基于人工智能技术、自研先进的智能代理学习…

SEO方案尝试--Nuxtjs项目基础配置

Nuxtjs 最新版 Nuxt3 项目配置 安装nuxtjs 最新版 Nuxt3 参考官网安装安装插件安装ElementPlus页面怎么跳转&#xff0c;路由怎么实现404页面该怎么配置配置 网页的title 安装nuxtjs 最新版 Nuxt3 参考官网安装 安装插件 安装ElementPlus 安装 Element Plus 和图标库 # 首先&…

TikTok的伦理挑战:虚拟世界与现实世界的交汇

在数字时代&#xff0c;社交媒体平台已经不再只是一个信息传播的工具&#xff0c;它已经深刻地改变了我们的社交行为、价值观和伦理观。 而在这一领域的佼佼者之一&#xff0c;TikTok&#xff0c;正面临着伦理挑战&#xff0c;这是虚拟世界与现实世界交汇的产物。 本文将深入…

从技能需求到就业前景,了解前端和后端开发的优缺点和个人选择

文章目录 每日一句正能量一、引言前端开发后端开发 二、两者的对比分析三、技能转换和跨领域工作四&#xff1a;介绍全栈开发后记 每日一句正能量 命运决定的不是你的人生&#xff0c;能决定你人生的只有自己。 一、引言 前端和后端是Web开发中两个不可或缺的领域。前端开发主…

软考高级之系统架构师之计算机基础

概述 今天是9月28日&#xff0c;距离软考高级只剩37天&#xff0c;加油&#xff01; 概念 三种周期&#xff1a; Clock Cycle&#xff1a;时钟周期&#xff0c;CPU主频&#xff0c;又称为时钟频率&#xff0c;时钟周期是时钟频率的倒数Instruction Cycle&#xff1a;指令周…

idea中maven项目打包成jar,报错没有主清单属性解决方法

使用idea自带的打包可能会出现一下问题 在pom.xml中引入下面的依赖&#xff0c;即可解决 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><executions&…

【算法】排序——插入排序及希尔排序

目录 前言 一、排序的概念及其应用 1.1排序的概念 1.2排序的应用 1.3常见的排序算法 二、插入排序的实现 基于插入排序的优化——希尔排序&#xff08;缩小增量排序 个人主页 代码仓库 C语言专栏 初阶数据结构专栏 Linux专栏 LeetCode刷题 算法专栏 前言 这…

七、装饰者模式

这里写自定义目录标题 1、项目需求2、解决方案13、解决方案24、装饰者模式定义5、装饰者模式原理6、装饰者模式解决上述需求7、装饰者模式在jdk应用的源码分析 1、项目需求 2、解决方案1 3、解决方案2 可以控制类的数量&#xff0c;不至于造成很多的类在增加或者删除调料种类…

力扣-349.两个数组的交集

Idea 使用两个哈希集合&#xff0c;其中一个用来存储第一个数组&#xff0c;第二个来存储两个数组的交集&#xff0c;因为集合自带去重功能&#xff0c;因此最后用数组来接收就好了 AC Code class Solution { public:vector<int> intersection(vector<int>& n…