- · 《汽车实用技术》栏目设[05/29]
- · 《汽车实用技术》收稿方[05/29]
- · 《汽车实用技术》投稿方[05/29]
- · 《汽车实用技术》征稿要[05/29]
- · 《汽车实用技术》刊物宗[05/29]
基于西门子的曲线的实现与应用
作者:网站采编关键词:
摘要:在变频器驱动电机来拖动被控对象的应用中,变频器中的速度给定通常需要经过给定积分器后再使用。这样在速度发生阶跃变化时,可以减小电机对拖动设备的瞬时冲击、延长设备的使
在变频器驱动电机来拖动被控对象的应用中,变频器中的速度给定通常需要经过给定积分器后再使用。这样在速度发生阶跃变化时,可以减小电机对拖动设备的瞬时冲击、延长设备的使用寿命。
近年来,随着可编程控制器(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 selectionAlgorithm 1:1:AU:=NRM/(TU+TRU);//升速时加速度2:RU:=AU/TRU;//升速时加速度的加速度3:AD:=NRM/(TD+TRD);//降速时加速度4:RD:=AD/TRD;//降速时加速度的加速度5:IF(dV>=0)THEN//正向加速or反向减速or匀速6: A:=AU;7: J:=RU;8:ELSE//正向减速or反向加速9: A:=AD;10:J:=RD;11:END_IF;12:Aup:=A;//加速度上限13:Adn:=-1.0*#A;//加速度下限
5)加速度限幅:加速度上限值Aup=A,加速度下限值Adn=-A。
6)判断终止圆弧拐点:速度变化过程中,实时计算起始圆弧速度累计变化量dVJ=|A|·A/(2J)。以YV-XV=dVJ作为终止圆弧的起点,可以确保起始圆弧与终止圆弧对称。计算过程伪代码如表2所示。
表2 圆弧拐点判断伪代码Tab.2 Pseudocode of arc inflection point judgmentAlgorithm 2:1:dVJ=|A|*A/(2J);//起始圆弧速度变化量2:IFe_V<dVJ THEN//圆弧拐点判断3: NEG:=TRUE;4:ELSE 5: NEG :=FALSE;6:END_IF;7:IFe_V=0.0THEN 8: A_INC:=0.0;//匀速9:ELSEIF NEG=FALSE THEN 10: A_INC:=J;//加速度累加11: ELSE 12: A_INC:=-1*J;//加速度累减13:END_IF;
文章来源:《汽车实用技术》 网址: http://www.qcsyjs.cn/qikandaodu/2021/0730/1232.html
上一篇:汽车类专业学生双创能力培养探索与实践
下一篇:论金代诗学的北地特质