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