电机的开环控制和闭环控制

news/2024/5/20 14:30:33 标签: 伺服控制, 电机控制, 嵌入式硬件

目录

开环电机控制

闭环电机控制

开环到闭环转换


开环电机控制

        开环控制(也称为标量控制或伏特/赫兹控制)是一种常见的电机控制方法,可用于运行任何交流电机。这是一种简单的方法,不需要来自电机的任何反馈。为了保持定子磁通恒定,我们需要保持电源电压振幅与其频率成比例。

        上图显示的是一个开环控制系统。电源电路包含一个由直流电源供电的 PWM 电压馈电逆变器。该系统不使用任何反馈信号来实现控制。它使用参考转速来确定定子电压的频率。系统计算的电压振幅与额定电压和额定频率之比(通常称为伏特/赫兹比)成正比,因此磁通保持恒定。

其中:

  1. λm 是电机的额定磁通,单位为韦伯。

  2. Vs 是交流电机的定子电压,单位为伏特。

  3. fs 是交流电机定子电压的频率,单位为赫兹。

在开环系统中,交流电机的转速表示为:

其中:

  • Speed(rpm) 是交流电机的机械转速,单位为 rpm。

  • fs 是交流电机定子电压和电流的频率,单位为赫兹。

  • p 是电机的极对数。

        可以使用前面的表达式来确定所需转速的参考电压的频率(对于给定机器)。

使用此频率为逆变器生成 PWM 参考电压。通过保持伏特/赫兹比率计算电压振幅,如下所示:

        使用标幺制表示时,开环控制系统将 Vrated 视为基量,通常对应于 1PU 或 100% 占空比。根据调制方法(正弦 PWM 或空间矢量 PWM),可能需要额外增益(对于正弦 PWM 为 (2/√3))。在低速时,系统需要最小升压电压(额定电压的 15% 或 25%)来克服定子电阻电压降的影响。

        在不考虑动态响应且需要高性价比解决方案的应用中,可以使用开环控制。开环电机控制无法将可能影响电机转速的外部条件纳入考虑范围。因此,控制系统无法自动校正期望的电机转速和实际电机转速之间的偏差。

注意

        标量控制实现不会考虑补偿由于定子电阻和弱磁引起的电压降。

闭环电机控制

        闭环控制会将系统反馈纳入控制考虑范围。电机的闭环控制会考虑电流和位置等电机信号的反馈。控制系统使用反馈信号来调节电压(施加到电机),以将电机响应保持在参考值。

        磁场定向控制 (FOC)(或矢量控制)是电机控制应用中常见的闭环系统。FOC 方法用于实现电机的闭环转矩、转速和位置控制。这种方法还可以在整个转矩和转速范围内提供良好的控制能力。FOC 实现需要将定子电流从静止参考系变换为转子磁通参考系。

        转速控制和转矩控制是 FOC 中常用的控制模式。位置控制模式不太常用。大多数牵引应用使用转矩控制模式,其中电机控制系统遵循参考转矩值。在转速控制模式下,电机控制器遵循参考转速值,并为形成内部子系统的转矩控制生成转矩参考值。而在位置控制模式下,转速控制器形成内部子系统。

        需要电流和转子位置的实时反馈来实现 FOC 算法。您可以使用传感器来测量电流和转子位置。您也可以使用无传感器方法,该方法使用估计的反馈值,而不是基于实际传感器的测量值。

        闭环控制使用实时位置和定子电流反馈来调节转速控制器和电流控制器,并更改逆变器的占空比。这能够确保校正后的三相电压源(用于运行电机)校正电机反馈与预期值的偏差。

开环到闭环转换

        有些应用要求电机使用开环控制来启动。一旦电机在开环控制中达到要求的最低稳定性,控制系统就转换为闭环控制。

        在基于正交编码器的位置感测系统中,电机以开环方式启动,一旦检测到索引脉冲就转换为闭环方式。

        在无传感器的位置控制中,电机以开环基转速的 10% 开始运行。参考开关超出基本转速的 10% 后,控制系统从开环转换为闭环。

        为了确保从开环到闭环的平稳转换,PI 控制器会重置并从与开环输出相同的初始条件开始。


http://www.niftyadmin.cn/n/5266954.html

相关文章

生产环境_Spark处理轨迹中跨越本初子午线的经度列

使用spark处理数据集,解决gis轨迹点在地图上跨本初子午线的问题,这个问题很复杂,先补充一版我写的 import org.apache.spark.{SparkConf, SparkContext} import org.apache.spark.sql.{Row, SparkSession} import org.apache.spark.sql.func…

UE4 去除重复纹理

如果直接连的话,效果如下: 就存在很多重复的纹理,如何解决这个问题呢? 将同一个纹理,用不同的Tilling,将Noise进行Lerp两者之间,为什么要这么做呢?因为用一个做清晰纹理,…

vue中qrcanvas生成二维码并且下载二维码

vue中qrcanvas生成带logo二维码并且下载二维码 1.引入qrcanvas模块 cnpm install --save qrcanvas //parkage.json 中引入 "qrcanvas": "^3.1.2" import { qrcanvas } from qrcanvas2.前端vue页面展示 <el-buttonsize"mini"type"tex…

Spring+Mybatis如何处理大批量sql(for循环+批处理法)

如果只是单纯地将Mapper语句放在循环中&#xff0c;那么会为每次的循环都创建一个事务&#xff0c;导致大批量的sql耗时会很长。 如果我们让在同一个循环中的Mapper语句在一个事务中提交&#xff0c;批处理这些sql&#xff0c;不多次创建事务&#xff0c;那么我们就能极大地改…

[Application] The app delegate must implement the window property if ..... 错误

在xcode中新建ios项目后再真机上运行&#xff0c;会发现手机上一篇漆黑&#xff0c;仔细观察控制台会发现这样的提示&#xff1a; [Application] The app delegate must implement the window property if it wants to use a main storyboard. 大概意思是&#xff1a; app d…

2023年中国算力租赁行业研究报告

第一章 行业概况 1.1 定义 算力租赁是一种新兴的服务模式&#xff0c;旨在为企业和研究机构提供灵活、高效的计算资源。在这个模式中&#xff0c;“算力”指的是对数据的计算能力&#xff0c;包括处理速度、数据存储和网络传输等方面的能力。“租赁”则是指通过将计算能力、存…

Java8 IfPresent 与 forEach 的组合操作

一、需求背景 Java8的Optional接口是我们经常使用的一个接口&#xff0c;尤其是对对象进行判空的时候&#xff0c;需要经常使用到IfPresent()。 但是&#xff0c;如果是对List进行判空、循环的话&#xff0c;就稍显繁杂了&#xff0c;因为几乎每次对List进行操作的时候&a…

线程池ThreadPoolExecutor详解

线程池ThreadPoolExecutor详解 大家好&#xff0c;我是微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01;今天&#xff0c;让我们深入研究Java中线程池的强大工具——ThreadPoolExecutor&#xff0c;解析它的工作原理、配置参数…