如何在STEP 7 V5.x中使用循环中断实现信号发生器(矩形, 锯齿形, 三角形, 正弦信号)?

n

描述
CPU的循环中断提供了让程序以固定周期工作的简便方法。该功能非常有用,犹其用于信号发生器或自调节过程。
这里给出的例子包括生成矩形、锯齿形、三角形和正弦信号的程序块。信号序列的定义由振幅、偏移、时间长度构成。n

功能描述

如何在STEP 7 V5.x中使用循环中断实现信号发生器(矩形, 锯齿形, 三角形, 正弦信号)?
图. 01n

该块在 OB 35 中调用,每周期计算矩形、锯齿形、三角形和正弦信号的值。n

对于信号序形,需要计算的功能值的数量由设定的时间周期除以OB35的执行周期得到。
例如,时间周期设定为10s,OB35的调用间隔是100ms,那么完成整个周期可以得到100个信号值。n

FB 71 在OB35中周期性调用。 配置的调用时间间隔由系统变量”#OB35_EXC_FREQ” 传到 FB 71 的输入 “OBCycle” . 输入变量 “Period”处的周期时间用于计算一个周期(正弦信号)或半个周期(矩形、锯齿形和三用形信号)需要的函数值的数量。n

生成矩形或锯齿形信号时,在每半个周期后将计数器重启动。对于三角形信号,使用一个增减计数器。
n

输入参数 类型 描述
Reset BOOL 当为“TRUE”时,所有输出值都被设置为“0”。
当为“FALSE”时,计算出的信号序列值。
Amplitude REAL 最大振幅值
Offset REAL 偏移量会加在输出信号上
Period REAL 输出信号的周期长度,以“ms”为单位
OBcycle DINT OB 35的执行时间间隔,以“ms”为单位
输出参数 类型 描述
VAL_Rectangle REAL “矩形”信号输出值
VAL_Sawtooth REAL “锯齿形”信号输出值
VAL_Triangle REAL “三角形”信号输出值”Triangle”
VAL_Sinus REAL “正弦”信号输出值
N_count DINT 一个周期内的函数值的循环计数器的数值

表 1: FB 71接口描述

下面所附的下载包是带有函数块FB 71的STEP 7项目。该函数块是用SCL语言编写的,可 以用作LAD/FBD/STL程序中的一个库功能块。只能使用S7-SCL来修改源代码。

说明:
S7-SCL是STEP 7的一个选件包,包含在STEP 7专业版中。

如何在STEP 7 V5.x中使用循环中断实现信号发生器(矩形, 锯齿形, 三角形, 正弦信号)? STEP7_SignalGenerator.zip ( 369 KB )

将“SignalGenerator.exe“文件复制到一个单独目录,用 SIMATIC Manager 解压缩,然后可以在STEP7中打开解压后的项目并处理。

创建环境
本FAQ中的下载项目由 STEP 7 V5.5+SP2 和 S7-SCL V5.3+SP6创建。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc329692.html

(1)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日
下一篇 2021年4月12日

相关推荐

发表回复

登录后才能评论