基于西门子PLC的S曲线的实现与应用

2021-03-23 03:49
电气传动 2021年6期
关键词:积分器惯量圆弧

(天津电气科学研究院有限公司,天津 300180)

在变频器驱动电机来拖动被控对象的应用中,变频器中的速度给定通常需要经过给定积分器后再使用。这样在速度发生阶跃变化时,可以减小电机对拖动设备的瞬时冲击、延长设备的使用寿命。

近年来,随着可编程控制器(PLC)运算速率的提升,在用PLC控制变频器拖动被控对象时,工程人员逐渐开始将给定积分器的功能放在PLC中实现。这样既可以提高控制编程的灵活性,也可以降低传动装置的运算负担。

本文以西门子S7-1500 PLC为例,介绍给定积分器的实现方法。由于阶跃速度给定经过给定积分器后的输出曲线为S型曲线,下文将给定积分器简称为S曲线积分器。

1 S曲线的实现

1.1 数学表达式

S曲线加减速过程示意图如图1所示[1]。

图1 S曲线加减速过程示意图Fig.1 Schematic for the acceleration and deceleration process of S-shaped curve

由图1可知,S曲线分为起始圆弧段(t0—t1或t4—t5)、匀加速段(t1—t2或t5—t6)和终止圆弧段(t2—t3或t6—t7)。其中起始圆弧和终止圆弧段为变加速过程;匀加速段为恒加速过程。S曲线减速过程与加速过程类似,下面只描述加速过程的表达式。

加速度a(t)表达式如下:

式中:J为加速度的变化率;A为匀加速段的加速度。

速度v(t)表达式如下:

PLC为离散控制器,需要将连续方程式(2)、式(3)转化为差分方程后使用。式(3)的微分形式为dv(t)=a(t)dt,离散化得到下式:

设置TA为PLC扫描周期,则有:

同理公式(1)离散化结果如下:

1.2 S曲线程序块引脚规划

为方便程序的移植,这里采用SCL语言编写S曲线程序块。程序块需在固定周期中断任务中调用。扫描周期TA通过输入引脚手动输入或采用系统RUNTIME块处理得到。

图2为S曲线程序块结构图。图2中,采用工程技术人员习惯使用的加减速时间和圆弧时间作为描述S曲线运行过程的输入引脚。其中TU为加速时间TU输入引脚,TD为减速时间TD输入引脚,TRU为加速时的圆弧时间TRU输入引脚,TRD为减速时的圆弧时间TRD输入引脚,NRM为速度标幺值NRM输入引脚,LU和LL分别为速度输出的上限值LU和下限值LL输入引脚。

图2 S曲线程序块结构图Fig.2 Structure for the program block of S-shaped curve

根据工程应用需要,S曲线程序块有几种模式可选择,按优先级从高到低的顺序依次为EN⁃ABLE,S,CF,CU,CD模式。其中ENABLE=1为程序块使能;S=1为将速度输出YV置为输入速度XV;CF=1为输出YV对设定XV积分;CU=1为输出YV对LU积分;CD=1为输出YV对LL积分。

输出引脚主要有速度输出YV、加速度输出YA、最小停车距离L、运行距离YP及程序块故障输出QF输出引脚。

1.3 S曲线编程实现

S曲线程序块编程步骤如下:

1)判断输入参数的合法性。

2)根据 TU,TD,TRU,TRD的输入值计算加速度和加速度的斜率。当TU=0或TD=0时,加速过程或减速过程完全为圆弧过程,即文献[2]中的五段S曲线,加速度曲线为三角形;当TRU=0或TRD=0时,为匀加速或匀减速过程,即文献[3]中梯形速度曲线,加速度曲线为矩形。

3)根据模式输出,选择积分速度输入。

4)根据速度和加速度方向,选择A和J,伪代码如表1所示。

表1 加速度选择伪代码Tab.1 Pseudocode of accelerated speed selection

5)加速度限幅:加速度上限值Aup=A,加速度下限值Adn=-A。

6)判断终止圆弧拐点:速度变化过程中,实时计算起始圆弧速度累计变化量dVJ=|A|·A/(2J)。以YV-XV=dVJ作为终止圆弧的起点,可以确保起始圆弧与终止圆弧对称。计算过程伪代码如表2所示。

表2 圆弧拐点判断伪代码Tab.2 Pseudocode of arc inflection point judgment

7)按照式(6),每个扫描周期对加速度进行更新。加速度到达限幅时,停止更新。

8)按照式(5),每个扫描周期对速度更新。速度到达限幅时,停止更新。

9)计算并输出加速度:

YA=dv/dt=(YV-YV_old)/TA

式中:YV_old为上周期的YV输出。

10)计算最短停车距离L和运行距离YP。

在S7-1500 PLC中完成S曲线程序块的编写,封装的程序块如图2所示。在PLC中以5 ms扫描周期调用程序块,采用ibaPAD软件进行曲线记录,采样周期为10 ms。

程序块S曲线阶跃输入响应曲线如图3所示,其中V1_OUT为速度输出曲线,YA1为加速度曲线。

图3 S曲线阶跃输入响应Fig.3 Step input response of S-shaped curve

2 S曲线的应用

2.1 动态惯量补偿

用电机拖动如张力辊、卷取机等刚体做旋转运动时,在加、减速过程中,为确保被控对象对速度给定的跟随性能,需要按下式对旋转的控制对象进行惯量补偿:

式中:M为需要补偿的转矩,N·m;I为转动惯量,kg·m2,可以根据实际拖动对象的形状和材质直接积分计算得到;aω为角加速度,rad/s2;av为线加速度,m/s2;r为转动半径,m;ω为角速度,rad/s;v为线速度,m/s。

实际工程项目中,通常按照实际生产工艺要求对拖动对象进行加、减速运动测试,再根据实测转矩的百分数折算惯量补偿值。

图4为现场某张力辊从45 m/min加速到190 m/min的速度、电机额定转矩百分比曲线。其中转矩曲线中位置①和位置③分别为低速和高速时的摩擦转矩,位置②和位置①的差值为需要补偿的加速转矩Mnor。

图4 速度、转矩曲线Fig.4 Curves of the speed and torque

生产运行过程中按照下式进行动态惯量补偿:

式中:YAnor为惯量测量时的加速度;YA为生产时S曲线程序块输出的实际加速度;Me为电机额定转矩。

在惯量测量时,应进行多点多次测量,取平均值应用。

2.2 S曲线串联

S曲线的串联广泛应用于工程项目中。例如在连续带钢处理线中,出口段速度给定为工艺段S曲线输出速度叠加冲、放套速度,出口段速度相当于两级S曲线串联。这里,采用两个S7-1500 PLC进行试验。PLC1中运行S1曲线,PLC2中运行两个加减速参数相同的曲线S2和S12。同时给S1和S2阶跃速度输入,将S1输出速度V1_OUT通过以太网通信传输给PLC2,作为S12曲线的速度输入。下面讨论不同斜率S曲线的输出响应特性。

TU1<TU2串联曲线如图5所示。高斜率S1曲线串联低斜率S12曲线,即加速时间TU1<TU2时,串联后的输出响应与单独调用S2曲线的效果一致。由图5可知,S1曲线的加速时间TU1=5 s,圆弧时间TRU1=1 s,S2和S12曲线的加速时间TU2=10 s,圆弧时间TRU2=1 s。串联后S12的速度输出曲线V12_OUT与S2输出曲线V2_OUT重合,串联后S12的加速度YA12与S2的加速度YA2相等。

图5 TU1< TU2串联曲线Fig.5 Series connection curves with TU1<TU2

低斜率S1曲线串联高斜率S12曲线时,即加速时间TU1>TU2时。由于S12的速度和加速度受到S1的加速度限制,S12始终处于变加速过程。串联后的速度输出曲线V12_OUT跟随低加速度S1曲线的速度输出,但加速度YA12与S1,S12曲线的加速度变化率 J1,J2的大小有关。J2相对 J1越大时,S12的圆弧时间越短,S12的输出速度曲线V12_OUT对S2的输出曲线V2_OUT跟随性越好,但加速度YA12以YA2为基准线波动越明显。

图6为J1<J2时积分器串联的响应曲线,其中TU1=10 s,TRU1=1 s,TU2=5 s,TRU2=0.1 s。当 J2相对 J1越小时,S12的圆弧时间越长,V12_OUT滞后V2_OUT越多,但YA12曲线相对平滑。图7为J1>J2时积分器串联的响应曲线,其中TU1=10 s,TRU1=1 s ,TU2=5 s,TRU2=1 s。由于圆弧时间越短,加减速过程对设备的瞬时冲击越大,工程应用中应根据设备的承受能力选择合适的J1,J2值以满足生产工艺要求。

图6 J1<J2串联曲线Fig.6 Series connection curves with J1<J2

图7 J1>J2串联曲线Fig.7 Series connection curves with J1>J2

2.3 定位停车

工程项目中,经常需要准确定位停车。这就需要知道S曲线从当前速度按照给定斜率降到零速需要运行的距离L。程序块按照下式计算停车距离:

当NRM单位为m/s时,输出L单位为m;当NRM单位为m/min时,输出L除以60后单位为m。

L为按照S曲线斜率至少需要预留的停车距离。多级S曲线串联应用时,取最长单级S曲线的停车距离L做定位控制。定位时从L+dL的位置开始启动定位停车程序,dL为停车余量。给定速度V按下式计算:

式中:V0为降速前的初始速度;Lact为停车程序启动后运行的距离,可由程序块输出YP处理得到;k为比例调节系数,用于根据生产工艺要求做变比例调节。

3 结论

文中S曲线程序块以加速时间和圆弧时间作为输入参数,符合工程应用习惯。程序块输出实时加速度值和最短停车距离,方便使用者根据工艺要求进行惯量补偿和定位停车控制。此外,程序块以SCL编程实现,可以方便地移植到其它支持SCL语言的PLC中,也可以编译成STL语言后,移植到支持STL的PLC中。目前,该S曲线程序块已在多款PLC中用于平整机、轧机、连续退火等生产线的速度、张力控制,并取得良好的效果,具有较好的参考和实用价值。

猜你喜欢
积分器惯量圆弧
并网模式下虚拟同步发电机的虚拟惯量控制策略
浅析圆弧段高大模板支撑体系设计与应用
外圆弧面铣削刀具
一种基于模拟惯量偏差的电惯量控制算法
低阶可约惯量任意符号模式矩阵的刻画
六圆弧齿廓螺旋齿轮及其啮合特性
Rogowski线圈数字积分器的直流误差消除方法研究
三阶不可约零-非零模式中的几乎惯量任意模式
基于单二阶广义积分器的三相数字锁相环设计
等截面圆弧无铰板拱技术状况评价