在本视频中,您将学习如何建模换向逻辑,并使用Simscape Electrical™建立反馈控制环路来控制无刷直流电机的速度。
下载模型在这个视频中使用.
看看这个视频了解更多关于无刷直流电机控制的PID增益这段Tech Talk视频了解无刷直流调速算法的不同组成部分,如换向逻辑、传感器和三相逆变器的工作原理。
在之前的视频中,我们建模了一个三相逆变器,它将直流电源转换成三相电流来控制无刷直流电机。三相逆变器的输入是一个开关模式,控制电机相对的通断状态。在之前的视频中,我们使用静态开关模式来激活a和C相,并观察到转子与定子磁场在30度对齐。在这个视频中,我们要给这个模型添加换相逻辑来动态地改变转子连续旋转的开关模式。
正如我们在第二个Tech Talk视频中讨论的,我们需要一个霍尔效应传感器来确定转子在哪个扇区。换相逻辑然后使用电流扇区来选择相应的开关模式。让我们从霍尔效应传感器的建模开始。在实践中,霍尔效应传感器通过检测每个相位周围的磁场来确定电流扇区。然而,为了模拟的目的,我们将假设我们知道角转子位置,从那里我们将计算扇区。霍尔效应传感器模型的逻辑应该是这样的:如果转子在0°到60°之间,则表示转子在第一个扇区,所以输出1。同样,还有五种情况,直到我们完成转子的全部旋转。
让我们保留这个表,并尝试在Simulink中建模相同的逻辑。金宝app角位置的theta总是在0和360度之间,这意味着在转子的每一次完全旋转之后,我们应该将theta重置为0度。我们可以使用Math function块中的remainder函数来实现这一点。我们将输入和常数360到这个块,然后返回除以360度的余数。我们还会在这里插入一个增益块并输入极点对的数量p在我们的例子中是1并且已经在MATLAB工作空间中定义了。这样我们就用电角度来表示转子的位置。现在我们准备好处理这个逻辑了。
对于每种情况,我们都需要检查两个条件。为了实现第一个检查,我们添加了一个Constant块,将其设置为0。然后,我们获取一个关系运算符块,并选择合适的运算符来将与0进行比较。同样,我们对第二个条件进行建模。当这两个条件都满足时,我们希望将扇区设置为1。我们可以通过使用一个与门和一个表示扇区数的增益来做到这一点。注意,逻辑运算符输出一个布尔值,我们需要将其转换为与增益相同的数据类型。我们可以使用Data Type Conversion块来实现这一点,该块接受布尔值并将其转换为它从Gain块继承的数据类型。
根据这个逻辑,当两个条件都满足时,AND操作符将返回1,扇区将被设置为1。如果其中一个或两个条件都不满足,输出将是0,因为这将意味着转子是在另一个扇区。
为了实现其余的条件,我们可以简单地复制并粘贴这部分,然后像图片中那样调整值。现在,结果值的总和将给我们扇区编号。注意,每次这些输出中只有一个是正的,其余的都是0。让我们选择这一部分并创建一个子系统,我们将其称为sensor。
现在我们已经完成了扇区的计算,我们可以用它来模拟换向逻辑。正如我们在第二个Tech Talk视频中讨论的,换向逻辑基本上就像一个包含所有可能的开关模式的表格,并根据扇区信息以正确的顺序输出它们,以正确地旋转转子。
这是第一个转换模式。让我们断开这个,并添加我们在图中看到的其余切换模式。为了选择一个基于扇区的模式,我们将使用一个开关。为此,我们使用Multiport Switch块。我们需要六个输入,连接到我们刚创建的开关模式。第一个输入是通过告诉它选择什么模式来控制这个开关,所以这里我们需要连接扇区。让我们选择所有这些,并创建一个子系统,我们称之为“交换逻辑”。这样,我们就可以围绕电机闭合一个回路,让我们根据霍尔效应传感器确定的扇区,为连续旋转提供正确的相位。
现在我们要记录下切换模式和" 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控制的不同架构。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。