对场向控制(FOC)算法中的速度和转矩控制回路进行控制参数整定。Motor Control Blockset™为您提供多种方法来计算从系统或块传递功能的控制环路增益,可用于电机、逆变器和控制器:
使用<年代p一个n class="block">磁场定向控制自动调谐器块。
使用<年代p一个n class="entity">金宝app®控制设计™.
使用模型初始化脚本。
电机控制模块集的磁场定向控制自动调谐块使您能够在实时的磁场定向控制(FOC)应用程序中自动调整PID控制回路。您可以自动调整与下列循环相关联的PID控制器(有关更多细节,请参阅<一个href="//www.tatmou.com/au/help/mcb/ug/how-to-use-field-oriented-control-autotuner.html" class="a">如何使用领域定向控制自动调谐块):
纵轴(
交轴(
速度环
对于块调优的每个循环,<年代p一个n class="block">定向控制自动调谐Block以闭环方式执行自动调谐实验,而不使用与该循环相关的参数模型。块允许您指定块调整控制循环的顺序。当调优实验在一个循环中运行时,该块对其他循环没有影响。有关FOC自动调谐器的更多细节,请参阅<一个href="//www.tatmou.com/au/help/mcb/ref/fieldorientedcontrolautotuner.html" class="a">磁场定向控制自动调谐器和<一个href="//www.tatmou.com/au/help/mcb/gs/tune-pi-controllers-using-foc-autotuner.html" class="a">调谐PI控制器使用领域定向控制自动调谐器.
金宝app仿真软件控制设计使您能够设计和分析在Simulink中建模的控制系统。金宝app您可以自动调整任意的SISO和MIMO控制体系结构,包括PID控制器。可在嵌入式软件中部署PID自整定,实时自动计算PID增益。
你可以找到工作点,并计算出Simulink模型在不同的工作条件下的精确线性化。金宝app<年代p一个n class="entity">金宝app仿真软件控制设计提供工具,使您无需修改模型即可计算基于模拟的频率响应。有关详细信息,请参见<一个href="//www.tatmou.com/au/help/slcontrol/index.html" target="_blank">//www.tatmou.com/help/slcontrol/index.html.
本节解释电机控制模块集示例如何估计实现面向磁场控制所需的控制增益。例如,对于连接到正交编码器的PMSM,以下步骤描述了使用初始化脚本从系统细节中计算控制回路增益值的过程:
打开初始化脚本(
选择<年代trong class="guilabel">建模><年代trong class="guilabel">模型设置><年代trong class="guilabel">模型属性打开模型属性对话框。
在“模型属性”对话框中,导航到<年代trong class="guilabel">回调选项卡><年代trong class="guilabel">InitFcn查找Simulink在运行示例之前打开的脚本文件的名称。金宝app
图中显示了初始化脚本的示例(
使用<年代trong class="guilabel">工作空间编辑控制变量值。例如,更新定子电阻(
与目标模型相关联的模型初始化脚本调用这些函数,并使用必要的变量设置工作空间。
模型初始化脚本 | 由模型初始化脚本调用的函数 | 描述 |
---|---|---|
与目标模型相关联的脚本 |
|
输入的功能是电机类型(例如BLY171D)。 该函数填充名为 它还计算所选电机的永磁体磁通和额定转矩。 您可以通过为新电机添加额外的开关箱来扩展该功能。 该函数还加载结构 |
|
功能输入为逆变器类型(例如BoostXL-DRV8305)。 该函数填充名为 该功能还可以计算所选逆变器的逆变器电阻。 您可以通过为新的逆变器增加一个额外的开关箱来扩展该功能。 |
|
|
该功能的输入是处理器类型(例如,F28379D)和脉宽调制(PWM)开关频率。 该函数填充名为 该功能还计算PWM计数器周期,这是一个参数的ePWM块在目标模型。 您可以通过为新处理器添加额外的开关箱来扩展该功能。 |
|
|
功能的输入是电机和逆变器的参数。 该函数计算永磁同步电动机的基本速度。 类型 |
|
|
功能的输入是电机和逆变器的参数。 该功能设置了电压、电流、速度、扭矩和功率的单位系统的基本值。 该函数填充名为 |
|
|
该功能的输入是电机和逆变器参数、单位系统基值、PWM开关时间周期、控制系统的采样时间和速度控制器的采样时间。 该函数计算比例积分( 该函数填充名为 参见<一个href="//www.tatmou.com/au/help/mcb/gs/estimate-control-gains-from-motor-parameters.html" class="intrnllnk">获得控制器的收益为更多的细节。 |
|
|
功能的输入是电机和逆变器的参数。 该功能根据所选的硬件和电机更新逆变器参数。 |
该表解释了可以更新的每个控制参数的有用变量。
请注意
您可以尝试在Windows的管理员模式下启动MATLAB<年代up>®系统,如果您无法更新与示例模型相关联的模型初始化脚本。
控制参数类别 | 控制参数名称 | MATLAB工作空间变量 |
---|---|---|
电机参数 | 制造商的型号 | pmsm.model |
制造商的序列号 | pmsm.sn |
|
双极 | pmsm.p |
|
定子电阻(欧姆) | 永磁同步电动机。Rs |
|
d轴定子绕组电感(Henry) | 永磁同步电动机。Ld |
|
q轴定子绕组电感(Henry) | 永磁同步电动机。江西 |
|
反电动势常数(V_line(peak)/krpm) | 永磁同步电动机。柯 |
|
电动机惯性(kg.m<年代up>2) | 永磁同步电动机。J |
|
摩擦常数(新墨西哥州) | 永磁同步电动机。F |
|
永磁磁通量(WB) | 永磁同步电动机。FluxPM |
|
证明的 | 永磁同步电动机。T_rated |
|
Nbase | 永磁同步电动机。N_base |
|
电机最大转速用于
|
永磁同步电动机。N_max |
|
愤怒的 | 永磁同步电动机。我_rated |
|
位置解码器 | QEP指数和霍尔位置偏移校正 | 永磁同步电动机。PositionOffset |
正交编码器每转狭缝 | 永磁同步电动机。QEPSlits |
|
逆变器参数 | 制造商的型号 | inverter.model |
制造商的序列号 | inverter.sn |
|
逆变器直流环节电压(V) | 逆变器。V_dc |
|
逆变器最大允许电流(A) | 逆变器。I_trip |
|
mosfet的通态电阻(欧姆) | 逆变器。Rds_on |
|
电流检测用分流电阻(欧姆) | 逆变器。Rshunt |
|
电机所见单相板电阻(欧姆) | 逆变器。R_board |
|
电流传感器(I<年代ub>一个和我<年代ub>b) |
|
|
电流传感器自动校准ADC偏置的最大限制<年代ub>一个和我<年代ub>b) | 逆变器。CtSensOffsetMax |
|
电流传感器自动校准ADC偏置的最小限度<年代ub>一个和我<年代ub>b) | 逆变器。CtSensOffsetMin |
|
启用当前检测adc的自动校准 | 逆变器。ADCOffsetCalibEnable |
|
由SPI配置的ADC增益因子 | 逆变器。ADCGain |
|
逆变器的类型: 1 -有源高启用逆变器 0 -有源低使能逆变器 |
逆变器。EnableLogic |
|
电流检测放大器类型: 1 -非反相放大器 - 1 -反相放大器 |
inverter.invertingAmp |
|
逆变电流传感电路参考电压(V) | 逆变器。我SenseVref |
|
1安培电流(V/A)对应的逆变电流检测电路输出电压 您可以使用分流电阻的数据表值来计算该参数(
|
逆变器。我SenseVoltPerAmp |
|
通过逆变电流检测电路(A)可测量的最大中性点电流峰值 | 逆变器。ISenseMax |
|
处理器 | 制造商的型号 | target.model |
制造商的序列号 | target.sn |
|
CPU频率 | 目标。CPU_frequency |
|
脉宽调制频率 | 目标。PWM_frequency |
|
PWM计数器时期 | 目标。PWM_Counter_Period |
|
ADC参考电压(V) | 目标。ADC_Vref |
|
12位ADC的最大计数输出 | 目标。ADC_MaxCount |
|
串口通信的波特率 | 目标。SCI_baud_rate |
|
单位系统 | 基准电压(V) | PU_System。V_base |
基极电流(A) | PU_System。I_base |
|
基础速度(转速) | PU_System。N_base |
|
基地转矩(Nm) | PU_System。T_base |
|
基础功率(瓦特) | PU_System。P_base |
|
目标设备的数据类型 | 数据类型(定点或浮点)选择 | 数据类型 |
样品时间值 | 变换器开关频率 | PWM_frequency |
PWM开关时间周期 | T_pwm |
|
电流控制器的采样时间 | Ts |
|
速度控制器的采样时间 | Ts_speed |
|
模拟样品时间 | Ts_金宝appsimulink |
|
电机仿真采样时间 | Ts_motor |
|
逆变器的仿真采样时间 | Ts_inverter |
|
控制器参数 | Iq控制器的比例增益 | PI_params。Kp_i |
Iq控制器的积分增益 | PI_params。Ki_i |
|
Id控制器的比例增益 | PI_params。Kp_id |
|
Id控制器的积分增益 | PI_params。Ki_id |
|
速度控制器的比例增益 | PI_params。Kp_speed |
|
速度控制器的积分增益 | PI_params。Ki_speed |
|
磁弱控制器的比例增益 | PI_params。Kp_fwc |
|
弱磁控制器的积分增益 | PI_params。Ki_fwc |
|
传感器延迟参数 | 电流传感器延迟 | 延迟。Current_Sensor |
速度传感器延迟 | 延迟。Speed_Sensor |
|
用于低通速度滤波器的延迟 | 延迟。Speed_Filter |
|
控制器延时参数 | 电流控制回路的阻尼系数(ζ) | 延迟。OM_damping_factor |
速度控制回路的对称优化因子 | 延迟。SO_factor_speed |
请注意
对于预定义的处理器和驱动程序,模型初始化脚本使用默认值。
模型初始化脚本使用以下函数进行计算:
控制参数类别 | 函数 | 功能 |
---|---|---|
电机的基本速度 | mcb_getBaseSpeed |
计算了永磁同步电动机在额定电压和额定负载下的基本速度。 对于细节,类型 |
给定电机和逆变器的电机特性 | mcb_getCharacteristics |
获得电机的这些特性。
对于细节,类型 详细信息请参见章节<一个href="//www.tatmou.com/au/help/mcb/gs/estimate-control-gains-from-motor-parameters.html" class="intrnllnk">获得电机特点. |
控制算法参数 | mcb.internal.SetControllerParameters |
计算这些PI控制器的增益:
详细信息请参见章节<一个href="//www.tatmou.com/au/help/mcb/gs/estimate-control-gains-from-motor-parameters.html" class="intrnllnk">获得控制器的收益. |
对你正在使用的电机和逆变器进行控制分析 | mcb_getControlAnalysis |
对磁场定向电机控制系统中PI控制器的计算增益进行频域分析。 请注意 此功能需要控制系统工具箱™。 对于细节,类型 |
这个函数
当您调用这个函数时(例如,
永磁同步电动机参数结构。
逆变器参数结构。
这些方程描述了函数执行的计算:
通过计算,定义了逆变器电压约束
当前极限圆定义了当前约束,可以考虑为:
在上式中,<年代p一个n class="inlineequation"> 为零对于表面pmms。对于内部pmms,值为<年代p一个n class="inlineequation"> 和<年代p一个n class="inlineequation"> 对应于MTPA。
利用上述关系,我们可以计算出基本速度为:
地点:
为与定子电压频率相对应的电速(弧度/秒)。
为电机的机械基本速度(弧度/秒)。
是
是
是
是
是
是
为定子相绕组电阻(欧姆)。
是永磁体磁链(韦伯)。
是
是
是提供给电机的最大基本线中性电压(峰值)(伏特)。
为提供给逆变器的直流电压(伏特)。
为电机的最大相电流(峰值)(安培)。
为电机极对的个数。
这个函数
该函数返回给定PMSM的这些特性:
扭矩与速度相反
是动力,而不是速度
我<年代ub>dq而不是速度
我<年代ub>峰而不是速度
这个函数
可以使用此命令来调用该函数
PI_params = mcb.internal.SetControllerParameters(永磁同步电动机、逆变器、PU_System T_pwm, Ts, Ts_speed);
该函数返回FOC算法中使用的PI控制器的增益:
纵轴(
交轴(
速度环
场强减弱控制回路
函数接受这些输入:
永磁同步电动机的对象
逆变器对象
聚氨酯系统参数
T_pwm
Ts_control
Ts_speed
函数没有绘制出任何特征。
补偿器的设计依赖于应用于电机控制系统的经典频率响应分析。电流控制器采用模量优化设计,速度控制器采用对称优化设计。
该函数根据输入参数自动计算其他所需参数(例如,延迟、阻尼因子)。
你可以通过指定系统延迟、阻尼因子和对称最佳因子的函数的可选输入来修改默认系统响应:
PI_params = mcb.internal.SetControllerParameters(永磁同步电动机、逆变器、PU_System T_pwm, Ts, Ts_speed,延迟);
阻尼因子(
对称最佳因子(
这个例子解释了如何自定义参数:
%传感器延迟延迟。Current_Sensor = 2 * Ts;<年代p一个n style="color:#228B22">%电流传感器延迟延迟。Speed_Sensor = t;<年代p一个n style="color:#228B22">%速度传感器延迟延迟。Speed_Filter = 20 e - 3;<年代p一个n style="color:#228B22">速度滤波器延迟(LPF) %%控制器的延迟延迟。OM_damping_factor = 1 /√(2);<年代p一个n style="color:#228B22">%电流控制回路阻尼因数延迟。SO_factor_speed = 1.5;<年代p一个n style="color:#228B22">%对称优化因子1 < x < 20%控制器设计PI_params = mcb.internal.SetControllerParameters(永磁同步电动机、逆变器、PU_System T_pwm, Ts, Ts_speed,延迟);
这个函数
请注意
这个功能需要控制系统工具箱。
当您调用这个函数时(例如,
闭环电流控制系统的传递函数
根轨迹
波德图
稳定边际(PM & GM)
阶跃响应
PZ地图
函数绘制了相应的图:
[1]
[2]