电机控制系列文章

感应(异步)电机磁场定向控制MATLAB/Simulink建模
感应(异步)电机磁场定向控制速度环PI控制参数设计


目录

  • 电机控制系列文章
  • 前言
  • 一、并联型PI与串联型PI
  • 二、被控对象模型
  • 三、电流环闭环传递函数
  • 四、电流环PI参数设计
  • 五、计算延时、PWM采样延时、滤波器的影响
    • 1、计算延时
    • 2、PWM采样延时
    • 3、滤波器
    • 4、三者结合
    • 5、影响
  • 总结

前言

大家在做感应(异步)电机磁场定向控制(FOC)的时候,是否还在疑惑PI参数怎么给,还在用PI参数整定口诀一点一点去试,或者按书籍论文的计算公式搞出来不对?那你的电机控制理论需要进一步深入了,如果按照书籍论文的计算公式算出来不能用,你可以来这里看看你的MATLAB/Simulink建模有没有问题:
感应(异步)电机磁场定向控制MATLAB/Simulink建模。
如果是不知道PI参数怎么给,我来指导你设计合适的PI参数。
事实上TI(德州仪器)早就把这些东西工程化了,《InstaSPIN-FOC™ and InstaSPIN-MOTION™ User’s Guide》里有详细的指导,本人也是从其中窥得PI参数设计大法。如果你看过这个文档,没关系,也可以看看我写的,其中也有我个人的理解。
本文首先介绍电流环的PI参数设计。


一、并联型PI与串联型PI

下图是并联型PI:

下图是串联型PI:

我们搞控制的,一般都接触的是并联型PI吧。可是TI在InstaSPIN-FOC™里推崇用串联型PI。TI说,并联型PI,KiK_{\text i}Ki​负责低频增益,KpK_{\text p}Kp​负责高频增益。把并联型PI传递函数的s换成ω较小时,第二项起主要作用。ω较大时,第一项起主要作用。这里也可以这样理解,调KiK_{\text i}Ki​不就是调静差吗,静差不就是低频吗,调KpK_{\text p}Kp​不就是调响应快慢吗,响应快慢不就是高频吗。
Gparallel_PI(jω)=Kp+KijωG_{\text{parallel\_PI}}(j\omega) = K_{\text p} + \frac {K_{\text i}} {j\omega} Gparallel_PI​(jω)=Kp​+jωKi​​

串联型PI里,KpseriesK_{\text p}^{\text{series}}Kpseries​负责全频域增益,而KiseriesK_{\text i}^{\text{series}}Kiseries​只负责零点位置。
Gseries_PI(jω)=Kpseries(1+Kiseriesjω)G_{\text{series\_PI}}(j\omega) = K_{\text p}^{\text{series}} (1+ \frac {K_{\text i}^{\text{series}}} {j\omega}) Gseries_PI​(jω)=Kpseries​(1+jωKiseries​​)

说到这里,用哪一种并不重要,只是串联型PI在接下来的分析中比较方便,如果你习惯用并联型PI,就把系数转换一下。你用并联型PI去设计参数也是没有问题的。
但是,这里我有一个想法,之前习惯用并联型PI去调控制,一般是一个不动调另一个。借助串联型PI,调并联型PI的思路可以是这样,调整KpK_{\text p}Kp​和KiK_{\text i}Ki​的比例,使响应曲线形态比较好(比如一阶系统的阶跃响应),然后同时等比例增大或减小KpK_{\text p}Kp​和KiK_{\text i}Ki​,调整响应快慢。


二、被控对象模型

电流环输出电压控制电机,电机输出电流反馈回电流环。从定子侧看,电流环对应的电机模型可简化为

R为电阻(对感应电机q轴,不是定子电阻),L为电感(对感应电机,既不是漏感也不是自感),ωKE\omega K_{\text E}ωKE​为反电动势,反电动势主要由电机转速、磁链影响,而相较于电机电流,电机转速、磁链变化较慢,可认为是直流量,因此电机定子小信号模型传递函数为
Gmotor(s)=I(s)V(s)=1R1+LRsG_{\text{motor}}(s) = \frac {I(s)} {V(s)} = \frac {\frac 1 R} {1+{\frac L R} s} Gmotor​(s)=V(s)I(s)​=1+RL​sR1​​
对应感应电机电压方程,如下式,简化模型中的L是σLs\sigma L_{\text s}σLs​,d轴中R是RsR_{\text s}Rs​,q轴中R是Rs+Lm2Lr2RrR_{\text s} + \frac {L_{\text m}^2} {L_{\text r}^2}R_{\text r}Rs​+Lr2​Lm2​​Rr​,TI文件中说是Rs+RrR_{\text s} + R_{\text r}Rs​+Rr​,应该是LmL_{\text m}Lm​与LrL_{\text r}Lr​很接近。后面的分析中仍然用RL来表示。
{usd=Rsisd+σLsdisddt−ωsσLsisq+LmLrdψrddtusq=(Rs+Lm2Lr2Rr)isq+σLsdisqdt+ωsσLsisd+ωrLmLrψrd\begin{cases} u_{\text {sd}} = R_{\text s}i_{\text {sd}} + \sigma L_{\text s}\frac {di_{\text {sd}}} {dt} - \omega_{\text {s}}\sigma L_{\text s}i_{\text {sq}} + \frac {L_{\text m}} {L_{\text r}}\frac {d\psi_{\text {rd}}} {dt} \\ u_{\text {sq}} = (R_{\text s} + \frac {L_{\text m}^2} {L_{\text r}^2}R_{\text r})i_{\text {sq}} + \sigma L_{\text s}\frac {di_{\text {sq}}} {dt} + \omega_{\text {s}}\sigma L_{\text s}i_{\text {sd}} + \omega_{\text {r}}\frac {L_{\text m}} {L_{\text r}}\psi_{\text {rd}} \end{cases} {usd​=Rs​isd​+σLs​dtdisd​​−ωs​σLs​isq​+Lr​Lm​​dtdψrd​​usq​=(Rs​+Lr2​Lm2​​Rr​)isq​+σLs​dtdisq​​+ωs​σLs​isd​+ωr​Lr​Lm​​ψrd​​


三、电流环闭环传递函数

还是用电机简化模型的传递函数,暂不考虑电流滤波器、计算延时、PWM采样延时,电流环闭环传递函数表示为下式
Gcurr_cl(s)=KpseriesKiseries(1+sKiseries)s×1R1+LRs1+KpseriesKiseries(1+sKiseries)s×1R1+LRsG_{\text{curr\_cl}}(s) = \frac {\frac {K_{\text p}^{\text{series}} K_{\text i}^{\text{series}} (1+\frac s {K_{\text i}^{\text{series}}})} s \times \frac {\frac 1 R} {1+{\frac L R} s}} {1+\frac {K_{\text p}^{\text{series}} K_{\text i}^{\text{series}} (1 + \frac s {K_{\text i}^{\text{series}}})} s \times \frac {\frac 1 R} {1+{\frac L R} s}} Gcurr_cl​(s)=1+sKpseries​Kiseries​(1+Kiseries​s​)​×1+RL​sR1​​sKpseries​Kiseries​(1+Kiseries​s​)​×1+RL​sR1​​​
整理一下
Gcurr_cl(s)=1+sKiseriesLKpseriesKiseriess2+(RKpseriesKiseries+1Kiseries)s+1G_{\text{curr\_cl}}(s) = \frac {1+\frac s {K_{\text i}^{\text{series}}}} {\frac L {K_{\text p}^{\text{series}} K_{\text i}^{\text{series}}}s^2 + (\frac R {K_{\text p}^{\text{series}} K_{\text i}^{\text{series}}}+\frac 1 {K_{\text i}^{\text{series}}})s + 1} Gcurr_cl​(s)=Kpseries​Kiseries​L​s2+(Kpseries​Kiseries​R​+Kiseries​1​)s+11+Kiseries​s​​
可以看出这是一个二阶系统,分子上有一个零点,分母有两个极点,最好零极对消,只剩一个极点,就变成了一个一阶系统。为什么要变为一阶系统呢?很多地方都要提降阶,降阶使系统变得更简单,更方便分析性能,更容易设计控制系统。一阶系统没有超调,只用调整一个参数就可以改变阶跃响应时间。
一阶系统的单位阶跃响应如下图所示


四、电流环PI参数设计

为了零极对消,分母应该做如下因式分解,
Gcurr_cl(s)=1+sKiseries(1+RKpseriesKiseriess)(1+sKiseries)G_{\text{curr\_cl}}(s) = \frac {1+\frac s {K_{\text i}^{\text{series}}}} {(1+\frac R {K_{\text p}^{\text{series}} K_{\text i}^{\text{series}}}s) (1+\frac s {K_{\text i}^{\text{series}}})} Gcurr_cl​(s)=(1+Kpseries​Kiseries​R​s)(1+Kiseries​s​)1+Kiseries​s​​
这个式子可以零极对消,但和之前的式子相比,有个问题,分母s2s^2s2的系数不一样,那就令他们一样,
LKpseriesKiseries=RKpseries(Kiseries)2\frac L {K_{\text p}^{\text{series}} K_{\text i}^{\text{series}}} = \frac R {K_{\text p}^{\text{series}} (K_{\text i}^{\text{series}})^2} Kpseries​Kiseries​L​=Kpseries​(Kiseries​)2R​
解得
Kiseries=RLK_{\text i}^{\text{series}} = \frac R L Kiseries​=LR​
将该结果代入闭环传函,得
Gcurr_cl(s)=1LKpseriess+1G_{\text{curr\_cl}}(s) = \frac 1 {\frac L {K_{\text p}^{\text{series}}}s+1} Gcurr_cl​(s)=Kpseries​L​s+11​
这下就很简单了,将KpseriesK_{\text p}^{\text{series}}Kpseries​设计为
Kpseries=L×ωbK_{\text p}^{\text{series}} = L \times \omega_{\text b} Kpseries​=L×ωb​
传函变为
Gcurr_cl(s)=1sωb+1G_{\text{curr\_cl}}(s) = \frac 1 {\frac s {\omega_{\text b}}+1} Gcurr_cl​(s)=ωb​s​+11​
ωb\omega_{\text b}ωb​为一阶系统的带宽。这意味着我们可以自由设计电流环的带宽了!也就是像之前说的,我们可以调节电流环的阶跃响应时间,而且没有超调!


五、计算延时、PWM采样延时、滤波器的影响

本文的关键来了,前面所述均是在理想情况下的推算,实际上在一个电机控制系统里,DSP计算需要时间,不可避免地就引入了计算延时。PWM采样也会产生延时。而滤波器对dq电流也有延时作用。下面分别来分析。

1、计算延时

计算延时的关键在于计算出来的调制波什么时候送到PWM的比较模块。举个例子,一个DSP电机控制系统,在PWM载波波峰处触发PWM中断开始AD采样、控制计算,PWM模块配置为波峰处将调制波载入比较器,那么这个时候只能在下个波峰到来时载入此时计算出来的调制波。从PWM中断开始算起,到下一个载波波峰到来就是一个开关周期,即因为计算延迟了一个开关周期。
延迟环节的传递函数为e−Tse^{-Ts}e−Ts,一般将它等效为一个一阶惯性环节1Ts+1\frac 1 {Ts+1}Ts+11​。以延迟200us为例,二者波特图如下所示,蓝色为延迟环节,红色为一阶惯性环节,在低频段,二者非常接近,所以这种近似是可以的。

2、PWM采样延时

一般的DSP电机控制系统,都是规则采样,也就是对调制波周期采样。比如在载波波峰处将调制波载入比较器,那么只有在波峰处才进行了更新,其他时间都是保持更新后的值,表现为一个零阶保持器。举个例子,如下是开关频率5kHz的PWM规则采样,在载波波峰处将调制波载入比较器,蓝色为原始调制波,红色是经零阶保持的实际调制波,是一个阶梯波,而它的基波幅值与原始调制波一样,但时间上延迟了半个开关周期,如紫色虚线所示。

零阶保持器的传递函数为1−e−TsTs\frac {1-e^{-Ts}} {Ts}Ts1−e−Ts​,T为采样周期,基波则延迟了0.5T,由前面所述的延迟环节等效关系,零阶保持器可等效为10.5Ts+1\frac 1 {0.5Ts+1}0.5Ts+11​的一阶惯性环节。下图为二者波特图对比,蓝色为零阶保持器,红色为一阶惯性环节,可以看到,二者在低频非常接近,因此这种等效也是可以的。

结合计算延时和PWM采样延时,传递函数为1(Ts+1)(0.5Ts+1)=10.5T2s2+1.5Ts+1\frac 1 {(Ts+1)(0.5Ts+1)} = \frac 1 {0.5T^2s^2+1.5Ts+1}(Ts+1)(0.5Ts+1)1​=0.5T2s2+1.5Ts+11​,忽略高阶项,传递函数变为11.5Ts+1\frac 1 {1.5Ts+1}1.5Ts+11​,这就是很多书里面出现1.5的原因。忽略高阶项在控制里面很常见,比如非线性系统的线性化,很多都是忽略高阶项。

3、滤波器

很多电机控制系统里,对dq电流做了低通滤波,常见的就是一阶、二阶低通滤波。
一阶低通滤波的传递函数为1Ts+1\frac 1 {Ts+1}Ts+11​,可以直接当成一个延迟环节。
二阶低通滤波的传递函数为ωn2s2+2ζωns+ωn2=11ωn2s2+2ζωns+1\frac {\omega_{\text n}^2} {s^2+2\zeta\omega_{\text n}s+\omega_{\text n}^2} = \frac 1 {\frac 1 {\omega_{\text n}^2}s^2+\frac {2\zeta} {\omega_{\text n}}s+1}s2+2ζωn​s+ωn2​ωn2​​=ωn2​1​s2+ωn​2ζ​s+11​,大胆一点,干掉高阶项,也变成一个延迟环节12ζωns+1\frac 1 {\frac {2\zeta} {\omega_{\text n}}s+1}ωn​2ζ​s+11​。

4、三者结合

至此,我们把控制延时、PWM采样延时、滤波器都等效为一阶惯性环节,三者再结合一下,传递函数变为1(Td_cal+Td_pwm+Td_filter)s+1\frac 1 {(T_{\text {d\_cal}}+T_{\text {d\_pwm}}+T_{\text {d\_filter}})s+1}(Td_cal​+Td_pwm​+Td_filter​)s+11​。如果开关频率为5kHz,一阶低通滤波器截至频率选为2kHz,那么Td_calT_{\text {d\_cal}}Td_cal​为200us,Td_pwmT_{\text {d\_pwm}}Td_pwm​为100us,Td_filterT_{\text {d\_filter}}Td_filter​为80us,数量级相近。

5、影响

一个时间常数为100us的一阶惯性环节波特图如下所示,如果电流环开环穿越频率为1000rad/s,那么从图上可知,一阶惯性环节造成-6°的相移,也即相位裕度减小6°,这对于控制来说影响不大。如果电流环开环穿越频率为转折频率10000rad/s,相位裕度减小45°,这个影响就大了。
开环的穿越频率与闭环的带宽频率比较接近,因此,在设计电流环闭环带宽时,带宽频率应小于一阶惯性环节的转折频率。小多少要看你对系统的要求,太小响应会变慢,大了系统会变得敏感,因此要根据具体性能要求来决定。


总结

本文介绍了感应(异步)电机磁场定向控制电流环PI控制参数设计,主要内容从《InstaSPIN-FOC™ and InstaSPIN-MOTION™ User’s Guide》中提取,同时包含我个人的理解,以期这篇文章能帮助大家设计电流环PI参数。


如果懒得搭模型,可以来这里下载
感应(异步)电机间接磁场定向控制MATLAB/Simulink仿真模型

感应(异步)电机磁场定向控制电流环PI控制参数设计相关推荐

  1. 永磁同步电机(PMSM)磁场定向控制(FOC)电流环PI调节器参数整定

    文章目录 前言 一.调节器的工程设计方法 二.电流环PI调节器的参数整定 2.1.电流环的结构框图 2.2.典型I型系统 2.3.电流环PI参数整定计算公式 三.电流环PI调节器设计实例 3.1.永磁 ...

  2. 永磁同步电机(PMSM)磁场定向控制(FOC)转速环PI调节器参数整定

    文章目录 前言 一.调节器的工程设计方法 二.转速环PI调节器的参数整定 2.1.转速环的结构框图 2.2.典型II型系统 2.3.转速环PI参数整定计算公式 三.转速环PI调节器设计实例 3.1.永 ...

  3. 永磁同步电机矢量控制基础补充(四)——如何设定电流环PI调节器和转速环PI调节器的限幅值

    注: 1:此为永磁同步控制系列文章之一,应大家的要求,关于永磁同步矢量控制的系列文章已经在主页置顶,大家可以直接去主页里面查阅,希望能给大家带来帮助,谢谢. 2:矢量控制的六篇文章后.弱磁.MTPA. ...

  4. 电机标幺化、PI标幺化、锁相环PLL标幺化 详解电机模型相关标幺化处理 电流环PI控制器的标幺化处理

    电机标幺化.PI标幺化.锁相环PLL标幺化 详解电机模型相关标幺化处理 电流环PI控制器的标幺化处理 观测器中PLL锁相环的标幺化处理 采样时间处理 这是文档,不是代码,文档中的代码均为引用举例子的 ...

  5. Simulink电机控制代码生成-----关于PI控制器参数整定的一点总结

    目录 PI控制器的参数整定方法 方法一: 方法二: 方法对比 总结 看过很多论文,对PI参数的整定方法五花八门,还有PI参数整定的口诀,所谓口诀就是试凑法.除了试凑法,本文提供另外两种方法来整定PI参 ...

  6. 伺服驱动器的 三环控制 电流环 速度环 位置环

    运动伺服一般都是三环控制系统,从内到外依次是电流环速度环位置环. 1.电流环:电流环的输入是速度环PID调节后的那个输出,我们称为"电流环给定"吧,然后呢就是电流环的这个给定和&q ...

  7. 永磁同步电机矢量控制电流环参数整定方法----Matlab controlSystemDesigner的使用

    目录 1.永磁同步电机的传递函数 2.补偿器设计 3.PI参数生成 4.系统运行仿真 5.总结 1.永磁同步电机的传递函数 参考电机参数: inverter.PWM_frequency = 10000 ...

  8. 电机控制电流环设计笔记

    参考: b站:豪底狄:<PID调节器>第一部分:电流环设计 InstaSPIN-FOC™ 和 InstaSPIN-MOTION™用户指南 阅读TI的文档,把陈博的视频又看了一遍,自己整理抄 ...

  9. echarts里面的参数解释_SPMSM控制:传统PI速度环参数的整定

    大家好,我是尤斯提安娜·冯·阿斯特莱亚的公主骑士Dantemiwa(划掉). 上次的文章讲了传统PI电流环为什么要按给定最佳准则整定,以及如何按照带宽整定PI电流环的参数. https://zhuan ...

  10. foc学习笔记3——电流环

    foc学习笔记3--电流环 电流环的作用 ​ 前文不断强调,进行磁场定向控制需要控制的是电流而非电压,只是因为我们没有办法直接去控制电流才暂时退而求其次地去控制电压 .虽然电压控制的效果也还不错,但由 ...

最新文章

  1. Websphere MQ 开发实例
  2. 【控制】《复杂运动体系统的分布式协同控制与优化》-方浩老师-第10章-基于模型预测控制的人机协同控制
  3. 千年服务器角色信息在哪个文件,千年服务端文件详解
  4. Decommissioning a Domain Controller 降域控
  5. HTFS.Software.v7.3-ISO 1DVD(传热模拟,最新完全解密版)
  6. 你想象中的实习是什么样的?
  7. mysql解锁_mysql 解锁
  8. AutoMapper搬运工之自定义类型转换
  9. 腾讯技术峰会:从模型部署到算法应用,云计算时代下的人工智能
  10. 最近为A公司提炼的经营理念之合作理念
  11. 《UNIX环境高级编程》笔记--read函数,write函数,lseek函数
  12. Android开发的前景到底怎么样?
  13. linux pycharm 汉化包安装教程
  14. 手机app的性能测试工具——GT、、Emmagee
  15. 12张图读懂模电、数电必备的电路基础知识
  16. 工业机器人pallet指令_工业机器人编程指令详解简介,目录书摘
  17. cd linux 镜像,解开 CDLinux 的iso映像文件
  18. [人工智能-深度学习-23]:卷积神经网络CNN - 卷积核的本质是多维输入的神经元
  19. 查看漏洞库平台有哪些?
  20. 【自动化】手把手教你一个1秒钟归纳整理海量文件的python小技巧

热门文章

  1. 基于Ribbon界面的MFC应用程序
  2. java窗口连接_JAVA简单的注册窗口(连接数据库)
  3. 计算机并行配置,windows10无法启动应用程序提示并行配置不正确解决方法
  4. 02 文本检测(一)-CTPN
  5. java中将zip文件解压到指定目录下
  6. ET代理_切换ip软件网络功能。
  7. Pycharm中Python包的下载与使用
  8. 当下热门的报表统计系统排行榜
  9. GMSK调制 MATLAB代码
  10. vue省市区联动插件---distpicker