如何设计电机控制器使用Simscape电气,第3部分:建模换向逻辑
Melda Ulusoy, MathWorks
在本视频中,您将学习如何建模换向逻辑,并使用Simscape electric™构建反馈控制环来控制无刷直流电动机的速度。
下载本视频中使用的模型.
看看这个视频了解更多关于无刷直流电动机控制的整定PID增益和这段Tech Talk视频了解无刷直流电动机速度控制算法的不同组成部分,如换向逻辑、传感器和三相逆变器的工作原理。
在之前的视频中,我们建模了一个三相逆变器,将直流电源转换为三相电流来控制无刷直流电动机。三相逆变器的输入是一个开关模式,它控制电机相对的开和关状态。在之前的视频中,我们使用静态开关模式给a相和C相通电,观察到转子与定子磁场以30度对齐。在这个视频中,我们将在这个模型中加入换向逻辑来动态地改变转子连续旋转的开关模式。
正如我们在第二个Tech Talk视频中讨论的,我们需要一个霍尔效应传感器来确定转子在哪个扇区。然后,换向逻辑使用当前扇区来选择相应的交换模式。让我们从霍尔效应传感器的建模开始。在实践中,霍尔效应传感器感知每个相位周围的磁场,以确定当前扇形。然而,为了模拟目的,我们将假设我们知道角转子位置,从我们将计算扇区。霍尔效应传感器模型的逻辑应该如下:如果转子在0到60度之间,那么它意味着转子在第一个扇区,所以我们应该输出1。同样,在我们完成转子的完全旋转之前,还有五种情况。
让我们保持这个表,并尝试在Simulink中建模相同的逻辑。万博1manbetx角位置始终在0到360度之间,这意味着在转子每一次完全旋转后,我们应该重置为0度。我们可以通过使用Math function块中可用的余数函数来实现这一点。我们将输入和常数值360到这个块上,然后将返回除以360度的余数。我们还将在这里插入一个增益块,并输入极对的数量p,在我们的例子中p是1,并且已经在MATLAB工作空间中定义了。这样我们就用电度来表示转子的位置。现在我们准备好处理这个逻辑了。
对于每一种情况,我们都需要检查两个条件。要实现第一个检查,我们添加一个常量块,将其设置为0。然后,我们获取一个关系运算符块,并选择我们想要用于与0比较的正确运算符。类似地,我们对第二个条件进行建模。当这两个条件都满足时,我们希望将扇区设置为1。我们可以通过使用一个与门和一个代表扇区号的增益来做到这一点。注意,逻辑运算符输出一个布尔值,我们需要将其转换为与增益相同的数据类型。我们可以使用数据类型转换块来实现这一点,该块接受布尔值并将其转换为它从增益块继承的数据类型。
根据这个逻辑,当两个条件都满足时,AND操作符将返回1,扇区将被设置为1。如果其中一个或两个条件都不满足,输出将为0,因为这将意味着转子在另一个扇区。
为了实现其余的条件,我们可以简单地复制并粘贴这部分,然后调整如图所示的值。现在,所得值的和将给出扇区号。注意,每次只有一个输出是正的,其余的都是0。让我们选择这个部分,并创建一个子系统,我们称之为传感器。
现在我们已经完成了扇区的计算,我们可以用它来建模交换逻辑。正如我们在第二个Tech Talk视频中讨论的那样,换向逻辑基本上就像一个包含所有可能的开关模式的表,并以正确的顺序输出它们,以便基于扇区信息正确地旋转转子。
这是第一个转换模式。让我们断开它,并添加我们在图片中看到的其余切换模式。为了根据扇区选择图案,我们将使用开关。为此,我们使用Multiport Switch块。我们需要6个输入,连接到我们刚刚创建的切换模式。第一个输入是通过告诉它选择什么图案来控制这个开关,所以这里我们需要连接扇区。让我们选择所有这些,并创建一个子系统,我们可以称之为“换易逻辑”。这样我们就在电机周围闭合了一个环,这让我们能够根据霍尔效应传感器确定的扇区为连续旋转提供正确的相位。
我们现在要记录切换模式和" Theta "我们将使用与上一个视频相同的脚本,它使用记录信号来动画模拟结果。我们首先运行模拟,然后在命令行中输入脚本的名称来调用脚本。我们看到一切都按照预期运行。这意味着我们正确地计算扇区,并基于换易逻辑选择正确的开关模式。现在我们在控制我们的马达,但只有一个恒定的速度,就像这里看到的。因为电源电压是恒定的。为了能够以不同的速度运行电机,我们需要一个反馈控制器,将调整三相逆变器的电源电压。为了建立这个控制回路,我们首先需要计算期望速度和测量速度之间的误差,然后将其输入控制器来调整电压水平。我们测量传感器块下的速度。 Let’s first output the measured speed with an Outport block. We will compare it to a desired speed which we can model using a repeating sequence changing gradually from 0 to 900 RPMs. We insert a Sum block to compute the error between desired and measured speeds which we then input into a PID controller. For speed control, we choose to use a discrete PI-controller. As I tuned the gains before and already know what values work well for my system, I’ll just enter them here. Next, we add a unit delay to prevent any algebraic loop that may occur in this model. Now, we need to feed the voltage computed by the controller into the three-phase inverter. So, we remove the current voltage source and replace it with an ideal voltage source which provides the commanded voltage regardless of the current passing through it.
接下来,我们将记录不同的信号,以便在模拟系统后能够查看它们。现在,我们可以运行模型,看看期望和测量的速度,以及控制器计算的电压。我们看到三相逆变器的电压被控制器调节,测量的速度成功地跟踪所需的速度。注意电压和电机转速是如何成比例变化的。
总之,在这个视频中,我们向您展示了如何建模换向逻辑,以及如何用反馈控制器控制电机速度。在该模型中,我们使用理想电压源来调节电压水平。但实际上,电源电压是固定的,我们需要使用一种叫做PWM或脉宽调制的技术来调整它。下次,我们将讨论PWM和实现PWM控制的不同架构。
下载代码及文件
相关产品s manbetx 845
了解更多
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。