用Simulink实现永磁同步电动机的场向控制,第2部分:桌面仿真
Melda Ulusoy, MathWorks
在本视频中,我们将演示如何使用电机控制块集和产品中包含的参考示例作为设计和实现表面贴装和内部永磁同步电机(PMSM)的面向场控制算法的起点。我们将专注于桌面模拟作为一种测试和验证算法设计的方法。然后,您可以重用相同的模型来生成和部署嵌入式代码。
在这个视频中,我们将看到如何使用电机控制模块来实现我们在这里看到的无刷PMSM电机的定向控制。该模型是电机控制模块的参考应用之一。它配置了变量,以便我们可以使用这个模型来模拟和生成代码。这本质上让我们可以使用相同的模型来模拟我们针对逆变器和电机模型的面向场的控制算法,并生成代码来编程微控制器。此外,该模型已建立使用三种不同的方法来建模逆变器。在第一个选项中,我们使用来自电机控制块集的平均值逆变器块进行低保真仿真。我们可以使用的另一种选择是Simscape electric来模拟逆变器中的理想开关。选择第三个选项让我们使用Simscape Electrical来建模多级转换器。
让我们快速浏览一下模型中不同的子系统。在串行接收中,我们从主机模型获得通过串行端口发送的数据。该数据决定所需的电机速度,以及PWM占空比是否将是非零,以允许电机旋转。在速度控制子系统中,我们有一个控制转子速度的piccontroller。它输出Iq参考。Id参考设置为零,因为我们实现了面向场的表面贴装PMSM控制。在电流控制子系统中,我们获取传感器读数并实现面向场的控制以及PWM写入驱动器。我们来看看这个子系统下有什么。这里,我们正在处理电流,位置和速度的测量。在这个子系统中,我们使用电机控制块集提供的块将正交编码器读数转换为位置和速度。
在控制系统子系统中,我们使用Clarke, Park, Inverse Park和空间矢量发生器和pico控制器实现了面向场的控制算法,用于Id和Iq循环。我们还使用了正弦和余弦查找块,它有效地实现了在微控制器上部署的查找。这里,我们有用于在微控制器上写入PWM的驱动程序块。注意,这些块来自C2000处理器的嵌入式编码器支持包。
最后,为了验证我们的算法和仿真,我们建立了逆变器和电机工厂模型。前面提到的三种变体为我们提供了建模电机和逆变器的不同选项。这是电机控制块集的平均值实现。这里我们使用平均逆变器和表面贴装PMSM块。让我们再看一下Simscape Electrical的实现。在逆变器子系统中,这次我们将研究实现理想开关的第二个变体。在这里,我们使用Simscape electric的PMSM块以及从PWM中获取开关脉冲的转换器。块对话框让我们选择交换设备。在这里,我们使用理想开关,但其他选项可用,如使用IGBT或mosfet进行高保真建模。最后,在这里的第三个选项中,我们对多级转换器进行建模。
现在我们讨论了模型,让我们模拟它并查看一些结果。为此,我们按下运行键。正在对模型进行编译和仿真。结果现已公布。在我们查看它们之前,让我们使用来自Motor Control Blockset的低保真工厂模型运行仿真,其中我们使用平均值逆变器。现在我们可以打开数据检查器并查看模拟结果。
让我们比较一下速度,Iq, a相电压和a相电流所看到的电机和空间矢量调制信号这两次运行。在第一个图中,我们看到红色的速度参考,在两次运行之间没有变化。黄色和蓝色的速度反馈信号在两次运行之间看起来非常接近。下一个图显示了智商参考和智商反馈。我们看到切换对智商反馈的影响用黄色表示。在图3和图4中,我们分别看到电机看到的a相电压和a相电流。下面是这些信号的近距离观察。黄色的信号向我们展示了我们使用Simscape Electrical建模和模拟的逆变器的开关效果。最后,这些是我们用空间矢量调制得到的具有特征形状的众所周知的占空比调制信号。当我们放大时,我们看到两次运行之间的结果看起来非常相似。 Note that you can log any signal of interest in your model and run more simulations to check the performance of your controller by running different test cases. Once you're satisfied with the performance, you can move on to implementing your algorithm on嵌入式单片机。视频到此结束。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。