本读书笔记分成两部分,书籍原句摘抄和知识整理,本章感悟。
设计一个实际的传动系统时,需要弄清如下问题:
1)需要一,二或四象限运行吗?
2)系统内环或外环需要转矩,速度或位置控制吗?
3)是单电动机或多电动机传动吗?
4)速度控制的范围是多少?是否有零速和弱磁要求?
5)稳速准确度和响应时间如何?
6)对负载转矩和参数变化的鲁棒性要求如何?
7)采用速度传感器还是无速度传感器控制?
8)前端变流器的类型是什么?
9)效率,成本,可靠性及可维护性的考虑。
10)供电电源,谐波和功率因数方面的考虑。
8.1 基于小信号模型的异步电动机控制
一般的调速框图如下,它由一个带有分层控制环的变流器-电动机系统组成。
电压和频率是控制输入,其输出为速度,电磁转矩,定子电流,转子磁链。
由于异步电机的动态模型是一个五阶系统。系统具有多变量,非线性,强耦合等特点,且本质上是离散的。
在稳态工作点施加小信号扰动,忽略项并去掉稳态项以线性化,可得到小信号下线性状态空间方程:
在上面的式中,考虑电机仅由定子绕组供电,且定子电压定向在交轴上。因此输入量只有。
8.3.1 电压源型逆变器的控制
8.3.1.1 开环电压/频率(V/F)控制
变频传动的节能效果
带转差率调节的速度控制
带有转矩和磁链控制的速度控制
电流源型的逆变器控制
带速度和磁链调节的电流源型逆变器传动系统
电流源型GTO晶闸管PWM逆变器传动系统的V/F控制
以上的标量控制比较容易实现,但电机存在耦合效应(转矩和磁链均是电压,电流,频率的函数)导致系统响应缓慢,
且因为系统是五阶的,标量控制容易失稳。
采用矢量控制能解决以上问题,使控制异步电机像他励直流电机那样控制。
8.4.1 与直流传动类比
异步电机的空间矢量以频率同步旋转。
8.4.2等效电路和向量图
单位矢量保证了电流与磁链矢量的方向一致以及与它们呈垂直关系。
8.4.4直接或反馈矢量控制
矢量控制的特点:
1. 系统频率不像标量控制那样被直接控制。
3. 理想情况下控制不会影响磁链,瞬间响应快。但是实际中由于变流器的延迟,信号处理的准确度和参数的变化等因素会影响磁链。
4.采用矢量控制可直接实现四象限控制。
在低频(包括零速度)情况下,基于电压模型信号估计不能被采用,因为:
1. 低频时,电压信号和非常小。另外,直流偏移量导致在积分器输出端出现累计,从而结果不准确。
2. 电阻,电感等参数变化使信号估计的准确度降低。
在低速区域,采用速度和电流信号能更容易估计转子磁链分量。
常用Blaschke方程
如下图:
8.4.6 间接或前馈矢量控制
除了单位矢量信号是以前馈的方式产生外,间接矢量控制和直接矢量控制本质是相同的。
间接矢量控制在工业上应用比较流行。
间接矢量控制向量图如下
with with (对于解耦控制,期望有和已使得转子的合成磁链在轴上,
下图为带开环磁链控制的间接矢量控制图
下图中添加了用来估算反电动势的框图
下图是理想异步机的矢量控制系统的传递函数框图
间接矢量控制中的转差增益调节
1. 连续在线整定-基于全阶动态电机模型的卡尔曼滤波(EKF)
2.模型参考自适应控制(MRAC)
8.4.7 电网侧PWM整流器的矢量控制
8.4.8 定子磁链定向的矢量控制
采用气隙磁链或定子磁链定向实现矢量控制,要增加消除耦合效应的解耦补偿环节。在定子磁链定向的直接矢量控制中,其磁链矢量的估算准确度只受定子电阻()变化的影响。
上面的公式表明定子磁链是直轴电流和交轴电流的函数,即彼此存在耦合现象。解决此问题采用前馈解耦的方法
解耦器的公式:
下图是定子磁链定向矢量控制传动系统
8.4.9 电流源型逆变器的矢量控制
8.4.10 周波变流器传动系统的矢量控制
8.5 无传感器矢量控制
无传感器矢量控制实质上就是无速度传感器的矢量控制。
8.5.1 转速估算方法
1. 转速频率计算法;
式中
缺点:精确高效的计算比较困难,此外在低速下合成信号和时,还存在定子电压的纯积分问题。
2. 基于状态方程的直接综合法;
缺点:该方法受电机参数影响很大,这将导致转速估计准确度不高。
3. 模型参考自适应系统(MRAS)
电机的参数是变化的,估算的准确度不高。
4. 速度自适应磁链观测器(Luenberger 观测器)法;
5. 扩展卡尔曼滤波器(EKF)法;
EKF实质上是一种全阶随机观测器,它通过使用含有噪声的信号对非线性动态系统进行实时递推最优状态估计。
步骤
6. 齿谐波法;
7. 在凸极转子上注入辅助信号的方法。
8.5.2 无速度信号的直接矢量控制
8.5.2.1 可编程的级联低通滤波器(PCLPF)定子磁链估计
原理:采用若干个小的时间常数的级联低通滤波器取代单个积分器,则直流偏移量会大大减弱。
8.6 直接转矩和磁链控制(DTC)
DTC是标量控制,原理是通过查表的方法以选择合适的空间电压矢量,从而实现传动系统转矩和磁链的直接控制。
8.6.1
基于定子和转子磁链的转矩表达式
8.6.2 DTC的控制策略
DTC属于滞环控制
DTC控制的特点:
1. 无反馈电流控制;
2. 没有采用传统的PWM算法;
3.不存在矢量变换;
4.反馈信号的处理与基于定子磁链定向的矢量控制类似;
5.滞环控制会产生磁链和转矩脉动,并且开关频率不是常数(类似滞环电流控制)。
8.7 自适应控制
1. 自调节控制:
控制器可以采用以下控制律:PI控制,PID控制,滞环控制,基于极点配置的控制,或是基于零极点对消法的设计的控制。
对于快速系统,要在线地完成复杂的自适应算法比较困难。
2. 模型参考自适应控制(MRAC)
在MRAC中被控对象的响应跟随参考模型的响应,与被控对象的参数变化和负载扰动无关。被称为鲁棒系统。
3. 滑膜或变结构控制
SMC实际上是一个变结构控制系统(VSS),它通过改变控制系统的结构使系统稳定并具有鲁棒性。
下图是一个简单的无阻尼线性系统,其中被控对象的增益K是变化的。容易看出无论在正反馈或者在负反馈模式下系统都不稳定。但是,通过正反馈和负反馈模式进行来回切换,不仅使系统稳定,还能使系统响应与参数K变化无关。
负反馈的函数是或者
通解并合并得下式。
负反馈的相平面公式是
如图
同理正反馈的相平面如下:
滑膜系统运行的情况可被理解成上两个图叠加
双曲渐近线的方程:
异步电机滑膜控制器的参考设计标准:
包括:多段滑膜线控制,包括加速段,恒速段和减速段。
下图是矢量控制系统的直流等效框图,其中转速调节器采用了滑膜控制算法。
目的是希望系统的响应不受被控对象参数参数变化的影响,这些参数包括转矩增益K,转动惯量J,摩擦阻尼系数B和负载转矩扰动。
若系统输入一个位置阶跃,可以得到下列方程:
实际上有三个控制回路。主回路接收位置误差信号,并通过增益为和的开关控制产生输出.
次级控制回路以导数作为输入,产生输出信号。
该回路的输入信号是由转速信号直接得到的。
另外一个辅助回路,常数A用来消除因摩擦力和负载转矩产生的稳态误差。
系统总的输入为
传动系统的滑膜轨迹如下;
4. 专家系统
5. 模糊控制
6. 神经网络控制
8.8 传动系统的自整定
步骤:
1. 输入电机的铭牌参数:
额定电压,额定电流,额定频率,极对数。
2.测量定子电阻:
2-1 利用100%直流定子电流建立控制环。
2-2 选择逆变器某电压矢量和适当的PWM调制系数,以建立额定定子的电流,并记录该值.
2-3 重复上一步,调节PWM占空比为,使定子电流达到50%额定值,并记录该值
2-4 计算.
3. 测量定子的瞬态参数
在定子绕组上施加一个电压矢量,作用时间(微秒级),则电流响应是线性的。
定子的电感L为:
//\frac{V_s\Delta&space;t}{\Delta\overline{I}_s}
V_s =RI_s+L\frac{\mathrm{d} i_s}{\mathrm{d} t}
通过测量不同时刻t1和t2时的,求解上式可以确定R和L,多次试验后计算其平均值。
4.调节电流回路
4-1 依次调节下图中的和回路。
4-2 对于回路如上图。
5 测量转子时间常数
先建立回路,再输入一个几秒的直流电流脉冲以产生转子磁链,如下图,在t1时刻断开逆变器输出电路使电机开路,测量定子侧的感应电压。
6. 调节基于电流模型的磁链矢量估计
7. 调节磁链控制电路
8.测量机械惯量J和摩擦系数B
我的感受:
1. 研读过这章后,其实感觉作者应该是自动化的专家,电机只是被控对象(被定义成非线性系统控制)。然后应用各种自动控制的理论,对电机分析和控制。主要说明方式也是方块图。没有自动控制理论的基础的小伙伴要恶补了。
2.异步电机的矢量控制主要在于其(转子和定子)磁场定位。一般是由转子位置计算出转子磁场位置的(因为有转差率所以两个位置是不一样的)。
下面代码是英飞凌的DEMO中估算出磁化电流,转子磁链,电角度(单位矢量单位)。估算时用了间接矢量控制中转子磁链。而则用PI调节输出。程序里对于的变量imr。转差率直接由公式计算出来(和一样);
Ifx_MotorModelAcimF32_Data *p = &model->params;
cfloat32 idq = model->foc.idq;
/* Magnetizing current estimator ---------------------------------------------------*/
float32 dimr = (idq.real - model->est.imr.uk) / p->tr;
float32 imr = Ifx_IntegralF32_step(&model->est.imr, dimr);
/* Estimated flux ------------------------------------------------------------------*/
model->est.fluxR = imr * p->lm;
/* Slip speed ----------------------------------------------------------------------*/
#ifdef ACIMVEC_SLIP_INPUT
if (model->base.mode != Emotor_Mode_currentControl)
{
model->est.elSpeed.slip = (idq.imag / ((imr * p->tr) + EPS));
}
else
{
model->est.elSpeed.slip = model->slip;
}
#else
model->est.elSpeed.slip = (idq.imag / ((imr * p->tr) + EPS));
#endif
/* Stator flux speed ---------------------------------------------------------------*/
{
float32 elSpeedS;
elSpeedS = model->electricalSpeed + model->est.elSpeed.slip;
elSpeedS = __saturatef(elSpeedS, -model->est.elSpeed.statorMax, model->est.elSpeed.statorMax);
model->est.elSpeed.stator = elSpeedS;
/* DQ frame angle --------------------------------------------------------------*/
Ifx_AngleGenF32_step(&model->est.elAngle, elSpeedS);
return (Ifx_Lut_FxpAngle)Ifx_AngleGenF32_getValue(&model->est.elAngle);
}
电机的控制在应用级实现性很简洁精美了,但是它的原理推导有种云里雾里的感觉。