模拟变速电机控制

交流电机的变速控制利用强制换流电子开关,如IGBT、MOSFET和GTO。如今,由脉宽调制(PWM)电压源型变换器(VSC)供电的异步电机正逐渐取代直流电机和晶闸管桥式电路。通过PWM并结合现代控制技术,如磁场定向控制或直接转矩控制,您可以在速度和转矩控制方面获得与直流电机相同的灵活性。本教程展示了如何构建一个控制异步电机的简单开环交流驱动系统。Simscape™ Electrical™ Specialized Power Systems 包含预构建的模型,使您能够模拟电力驱动系统,而无需自行构建这些复杂系统。有关更多信息,请参阅 Electric Drives Models。

Simscape > Electrical > Specialized Power Systems > Electrical Machines 库包含四种最常用的三相电机:简化型和完整型同步电机、异步电机以及永磁同步电机。每台电机都可用于发电机或电动机模式。结合线性和非线性元件,如变压器、线路、负载、断路器等,它们可用于模拟电网中的机电暂态过程。它们也可以与电力电子器件结合来模拟驱动系统。

Simscape > Electrical > Specialized Power Systems > Power Electronics 库包含允许您模拟二极管、晶闸管、GTO晶闸管、MOSFET和IGBT器件的模块。您可以将多个模块互连以构建三相桥式电路。例如,一个IGBT逆变桥需要六个IGBT和六个反并联二极管。

为了便于桥式电路的实现,Universal Bridge 模块会自动为您执行这些互连操作。

构建和模拟PWM电机驱动

按照以下步骤构建一个PWM控制电机的模型。

电路图

组装和配置模型

  1. 在命令行输入 power_new 以打开一个新模型。将模型保存为 power_PWMmotor
  2. Simscape > Electrical > Specialized Power Systems > Power Electronics 库中添加一个 Universal Bridge 模块。
  3. 在 Universal Bridge 模块的 参数 设置中,将 Power Electronic device 参数设置为 IGBT /Diodes
  4. Simscape > Electrical > Specialized Power Systems > Electrical Machines 库中添加一个 Asynchronous Machine SI Units 模块。
  5. 按如下方式设置 Asynchronous Machine SI Units 模块的参数。
设置参数
ConfigurationRotor typeSquirrel-cage
ParametersNominal power, voltage (line-line), and frequency [ Pn(VA), Vn(Vrms), fn(Hz) ][3*746 220 60]
Stator resistance and inductance [ Rs(ohm) Lls(H) ][1.115 0.005974]
Rotor resistance and inductance [ Rr’(ohm) Llr’(H) ][1.083 0.005974]
Mutual inductance Lm (H)0.2037
Inertia, friction factor, pole pairs [ J(kg.m^2) F(N.m.s) p() ][0.02 0.005752 2]
[slip, th(deg), ia,ib,ic(A), pha, phb, phc(deg)][1 0 0 0 0 0 0 0]

将额定功率设置为 3*746 VA,额定线电压 Vn 设置为 220 Vrms,实现了一台 3 马力、60 Hz、两对极的电机。因此,额定转速略低于同步转速 1800 rpm,即 wsw_sws = 188.5 rad/s。

Rotor type 参数设置为 Squirrel-cage,会隐藏输出端口 abc,因为在正常电机运行中,这三个转子端子通常被短接在一起。

  1. 访问 Asynchronous Machine 模块的内部信号:

    a. 从 Simulink > Signal Routing 库中添加一个 Bus Selector 模块。

    b. 将电机模块的测量输出端口 m 连接到 Bus Selector 模块的输入端口。

    c. 双击 Bus Selector 模块以打开其 模块参数 对话框。

    d. 移除预选的信号。在 Selected elements 下,Shift 选择 signal1 和 signal2。然后,点击 移除按钮

    e. 在 Elements in the bus 下,Ctrl 选择感兴趣的信号:

    i. **Stator measurements** > **Stator current is_a (A)**
    
    ii. **Mechanical** > **Rotor speed (wm)**
    
    iii. **Electromagnetic torque Te (N*m)**
    

    然后,根据对话框的布局,点击 选择元素按钮(垂直布局)选择元素按钮(水平布局)

加载和驱动电机

实现电机负载的转矩-速度特性。假设为二次转矩-速度特性(风机或泵类负载),转矩 TTT 与速度 ω 的平方成正比。

T=k×ω2T = k × ω^2T=k×ω2

电机的额定转矩为

Tn=3×746188.5=11.87NmT_n = \frac{3 × 746}{188.5} = 11.87 N mTn=188.53×746=11.87Nm

因此,常数 kkk 应为

k=Tnω2=11.87188.52=3.34×10−4k = \frac{T_n}{ω^2} = \frac{11.87}{188.5^2} = 3.34 × 10^{-4}k=ω2Tn=188.5211.87=3.34×104

  1. Simulink > User-Defined Functions 库中添加一个 Interpreted MATLAB Function 模块。双击该函数模块,并输入作为速度函数的转矩表达式:3.34e-4*u^2
  2. 将函数模块的输出连接到电机模块的转矩输入端口 Tm
  3. Simscape > Electrical > Specialized Power Systems > Sources 库中添加一个 DC Voltage Source 模块。在该模块的 参数 设置中,为 Amplitude (V) 参数指定 400。
  4. 将 Voltage Measurement 模块的名称更改为 VAB。
  5. Simscape > Electrical > Specialized Power Systems > Passives 库中添加一个 Ground 模块。按照 power_PWMmotor 模型图中的所示连接电源元件和电压传感器模块。

使用脉冲发生器控制逆变桥

要控制逆变桥,请使用一个脉冲发生器。

  1. Simscape > Electrical > Specialized Power Systems > Power Electronics > Power Electronics Control 库中添加一个 PWM Generator (2-Level) 模块。您可以将变换器配置为开环运行,三个PWM调制信号在内部生成。将 P 输出连接到 Universal Bridge 模块的脉冲输入。
  2. 打开 PWM Generator (2-Level) 模块对话框,并按如下方式设置参数。
参数
Generator typeThree-phase bridge (6 pulses)
Mode of operationUnsynchronized
Frequency18*60Hz (1080 Hz)
Initial Phase0 degrees
Minimum and maximum values[-1,1]
Sampling techniqueNatural
Internal generation of reference signalselected
Modulation index0.9
Reference signal frequency60 Hz
Reference signal phase0 degrees
Sample time10e-6 s
  1. 该模块已被离散化,使得脉冲在指定时间步长的整数倍处变化。10 µs 的时间步长对应于 1080 Hz 开关周期的 +/- 0.54%。

生成PWM脉冲的一种常用方法是比较要合成的输出电压(本例中为60 Hz)与开关频率(本例中为1080 Hz)下的三角波。线电压有效值输出是直流输入电压和调制指数 mmm 的函数,由以下公式给出:

VLLrms=m2×32Vdc=m×0.612×VDCV_{LL rms} = \frac{m}{2} × \frac{\sqrt{3}}{\sqrt{2}} Vdc = m × 0.612 × V_{DC}VLLrms=2m×23Vdc=m×0.612×VDC

因此,400 V 的直流电压和 0.90 的调制系数可产生 220 Vrms 的输出线电压,这正是异步电机的额定电压。

显示信号并测量基波电压和电流

  1. 您现在添加模块来测量斩波 Vab 电压和 A 相电流中包含的基波分量(60 Hz)。从 Simscape > Electrical > Specialized Power Systems > Sensors and Measurements 库向您的模型添加一个 Fourier 模块。

打开 Fourier 模块对话框,检查参数是否设置如下:

参数
Fundamental frequency60 Hz
Harmonic n1
Initial input[0 0]
Sample time10e-6 s

将此模块连接到 Vab 电压传感器的输出。

  1. 复制 Fourier 模块。为了测量 A 相电流,将此模块连接到 Bus selector 模块的 Stator current is_a 输出。
  2. 将这些信号流式传输到 Simulation Data Inspector:Asynchronous Machine 模块测量输出的 Te、ias 和 w 信号,以及 VAB 电压。

使用连续积分算法模拟PWM电机驱动

将停止时间设置为 1 秒并开始模拟。打开 Simulation Data Inspector 并查看信号。

电机启动并在 0.5 秒后达到其稳态速度 181 rad/s(1728 rpm)。启动时,60 Hz 电流的幅值达到 90 A 峰值(64 A 有效值),而其稳态值为 10.5 A(7.4 A 有效值)。正如预期的那样,斩波波形中包含的 60 Hz 电压幅值保持在

220×2=311V220 × \sqrt{2} = 311 V220×2=311V

同时注意启动时电磁转矩的强烈振荡。如果您放大稳态时的转矩,应该会观察到一个噪声信号,其平均值为 11.9 N.m,对应于额定速度下的负载转矩。

如果您放大三个电机电流,可以看到所有谐波(1080 Hz 开关频率的倍数)都被定子电感滤除,因此 60 Hz 分量占主导地位。

PWM电机驱动;全压启动电机的模拟结果

模拟结果

使用万用表模块

Universal Bridge 模块不是一个传统的子系统,其中所有六个独立的开关都是可访问的。如果您想测量开关电压和电流,必须使用 Multimeter 模块,它可以访问桥臂内部信号:

  1. 打开 Universal Bridge 对话框,将 Measurement 参数设置为 Device currents。
  2. Simscape > Electrical > Specialized Power Systems > Sensors and Measurements 库中添加一个 Multimeter 模块。双击 Multimeter 模块。会出现一个显示六个开关电流的窗口。
  3. 选择连接到 A 相的桥臂的两个电流。它们被标识为
信号
iSw1Universal Bridge
iSw2Universal Bridge
  1. 点击 Close。信号数量(2)显示在 Multimeter 图标中。
  2. 将 Multimeter 模块的信号发送到 Simulation Data Inspector。
  3. 重新开始模拟。前 20 ms 获得的波形如下图所示。

IGBT/二极管开关 1 和 2 中的电流

IGBT电流

正如预期的那样,开关 1 和 2 中的电流是互补的。正电流表示电流流经 IGBT,而负电流表示电流流经反并联二极管。

注意

Multimeter 模块的使用不仅限于 Universal Bridge 模块。Electrical Sources 和 Elements 库中的许多模块都有一个 Measurement 参数,您可以在其中选择电压、电流或可饱和变压器磁通。明智地使用 Multimeter 模块可以减少电路中电流和电压传感器的数量,使其更易于跟踪。

离散化PWM电机驱动

您可能已经注意到,使用变步长积分算法的模拟时间相对较长。根据您的计算机,模拟一秒钟可能需要几十秒。为了缩短模拟时间,您可以离散化电路并以固定的模拟时间步长进行模拟。

Simulation 选项卡中,点击 Model Settings。选择 Solver。在 Solver selection 下,选择 Fixed-stepDiscrete (no continuous states) 选项。打开 powergui 模块,将 Simulation type 设置为 Discrete。将 Sample time 设置为 10e-6 s。电力系统,包括异步电机,现在以 10 µs 的采样时间离散化。

开始模拟。观察到现在模拟比连续系统更快。结果与连续系统相比吻合良好。

使用FFT工具进行谐波分析

两个 Fourier 模块允许在模拟运行时计算电压和电流的基波分量。如果您还想观察谐波分量,则需要为每个谐波使用一个 Fourier 模块。这种方法并不方便。

向您的模型添加一个 Scope 模块,并将其连接到 VAB Voltage Measurement 模块的输出。在 Scope 模块中,将数据作为带时间字段的结构体记录到工作空间。开始模拟。现在使用 powergui 的 FFT 工具来显示电压和电流波形的频谱。

模拟完成后,打开 powergui 并选择 FFT Analysis。将打开一个新窗口。按如下方式设置指定分析信号、时间窗口和频率范围的参数:

参数
NameScopeData
Inputinput 1
Signal number1
Start time0.7 s
Number of cycles2
DisplayFFT window
Fundamental frequency60 Hz
Max frequency5000 Hz
Frequency axisHarmonic order
Display styleBar (relative to Fund or DC)

分析信号显示在上部窗口中。点击 Display。频谱显示在底部窗口中,如下图所示。

电机线电压的FFT分析

FFT分析

Vab 电压的基波分量和总谐波失真(THD)显示在频谱窗口上方。逆变器电压的基波幅值(312 V)与理论值(m=0.9 时为 311 V)吻合良好。

und or DC) |

分析信号显示在上部窗口中。点击 Display。频谱显示在底部窗口中,如下图所示。

电机线电压的FFT分析

[外链图片转存中…(img-z2uylQ9l-1771210685922)]

Vab 电压的基波分量和总谐波失真(THD)显示在频谱窗口上方。逆变器电压的基波幅值(312 V)与理论值(m=0.9 时为 311 V)吻合良好。

谐波以基波分量的百分比显示。正如预期的那样,谐波出现在载波频率的倍数附近(n*18 ± k)。最高谐波(30%)出现在第 16 次谐波(18 - 2)和第 20 次谐波(18 + 2)。

版权标注与来源说明

本文译文对应的原文内容,均来源于 MathWorks 官方网站(https://www.mathworks.com/)及官方帮助中心,原文版权均独家归属 The MathWorks, Inc.(以下简称“MathWorks 公司”)所有。

译文系基于原文进行的非官方翻译,仅为方便个人学习、理解MathWorks相关产品(含MATLAB等)的功能、操作及技术细节而制作,不代表MathWorks公司官方立场,也不构成官方翻译版本。

建议使用者优先查阅官方原文。

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐