使用“ramp”功能块,可以定义一个时间间隔内的上升和下降斜坡。
描述
在自动化领域,使用斜坡函数处理设定值是非常常见的。附件中的step7(tia portal)库包含如下功能块:
"ramp": 斜坡函数发生器的fb块
"ramp_db": fb "ramp"的背景db
"contrdb": 用于激活fb "ramp"的全局db
"cyclic interrupt": 设定了时间片的循环中断ob,在其中调用fb"ramp"
图1. 给出了在循环中断ob中调用的fb"ramp"以及功能块对应形参的实参(全局db的变量)参数设定
图 1
通过参数“setpoint”输入所需的设定值(比如通过hmi) 并在输出“out”管脚得到当前的设定值。如下表格给出了fb“ramp”的输入输出参数。
参数 数据类型 输入参数 initfb bool 初始化, 定义所需的设定值 setpoint real 未经斜坡处理设定值 rate real 斜坡函数变化率 单位:设置值单位/秒 输出参数 out real 处理后的斜坡函数设定值举例说明fb"ramp"的使用
初始设定值为10。此后在接下来的10s内数值增加到60。图2所示上升的斜坡为设定值从10增加到60之间的变化率。
图. 2
在循环中断ob30中调用fb"ramp",ob30循环时间设置为0.1s。如果斜率设置为1/s,则上升斜坡将持续50s(设定值从10增加至60)。为了将此时间缩短为10s,斜率必须设置为5/s。
1. 初始化设定值为10。形参按如下赋值:
initfb = true
setpoint = 10
rate = 5
2. 设定值改为60。设定形参为如下值:
initfb = false
setpoint = 60
rate = 5
上升斜坡的持续时间此时为10s(图.2中绿线)