组态启动行为 - 静态变量StartMode (S7-1200, S7-1500) 使用 StartMode 变量,可以定义 RampSoak指令在以下情况下的行为。 • 当 RampSoak 指令在 CPU 的工作状态从 STOP 切换到 RUN(重启)后执行。 •开始配置文件执行。 • 执行“加载初始值作为实际值”(仅适用于“所有值”(All values) 选项,不适用于“jinxian设定值”(Only setpoints) 选项)。当配置文件执行的Zui后一点处于活动状态 (CurrentPoint =WorkingData.NumberOfUsedPoints) 时,StopMode 采用下列方式确定 NextPoint 的值如何自动更新: • StopMode <> 4 Zui后一个点处于活动状态时:NextPoint = CurrentPoint =WorkingData.NumberOfUsedPoints。 配置文件执行在Zui后一点之后完成。 • StopMode = 4Zui后一个点处于活动状态时:NextPoint = 1。 配置文件执行在Zui后一点之后重启。 如果配置文件停止或完全运行,则输入/输出参数NextPoint 将自动设置为 1。如果输入/ 输出参数 NextPoint未更改,则下一个配置文件执行从配置文件的第一个点开始。 下图显示了 Next 和 NextPoint 参数如何确定配置文件执行:如果NextPoint 的自动更改随后 被用户输入覆盖,则用 → 标记:可进行 StartMode 变量的以下设置: •StartMode = 0 Output 参数采用 WorkingData.StartValue 的值。 如果在 CPU 重新启动后Enable = TRUE 置位,或者如果 Enable 从 FALSE 更改为 TRUE,则 配置文件执行将从该值开始。下图显示了配置文件执行的开始和 CPU 的重新启动,StartMode = 0:使用此设置,必须在 CPU重新启动后首次调用指令时对配置文件数据进行验证并由 WorkingData 采用。否则,将使用WorkingData.StartValue 的默认值 0.0。 • StartMode = 1 输出参数采用SubstituteOutput 的值。 如果在 CPU 重新启动后 Enable = TRUE 置位,或者如果 Enable 从FALSE 更改为 TRUE,则 配置文件执行将从该值开始。 下图显示了配置文件执行的开始和 CPU 的重新启动,StartMode= 1:• StartMode = 2 Output 参数会保持不变。 如果在 CPU 重新启动后 Enable = TRUE置位,或者如果 Enable 从 FALSE 更改为 TRUE,则 配置文件执行将从 Output 参数不变的值开始。下图显示了配置文件执行的开始和 CPU 的重新启动,StartMode = 2:• StartMode = 3 Output参数采用值 0.0。 如果在 CPU 重新启动后 Enable = TRUE 置位,或者如果 Enable 从 FALSE 更改为TRUE,则 配置文件执行将从该值开始。 下图显示了配置文件执行的开始和 CPU 的重新启动,StartMode = 3:•StartMode = 4 Output 参数会保持不变。 如果在 CPU 重新启动后 Enable = TRUE保持置位并且在重新启动之前激活了配置文件执 行,则配置文件执行将继续。 如果在重新启动 CPU 后 Enable = TRUE置位并且在重新启动之前禁用了配置文件执行,或 者如果启用从 FALSE 到 TRUE 的切换,则配置文件执行将从 Output参数不变的值开始。 下图显示了配置文件执行的开始和 CPU 的重新启动,StartMode = 4:以下内容还适用于StartMode 变量的所有值: • Enable 参数、StartMode 变量以及 UserData 和 WorkingData结构中的配置文件数据不具 有保持性。每当 CPU 的工作状态从 STOP 切换为 RUN 后,这些变量都将通过起始值进行初始化。确保在首次调用 RampSoak 指令时,在 CPU 的工作状态从 STOP 切换到 RUN 后,这些变量具有合适的值以实现所需行为。 • 通过 StartMode 选择的值jinxian于 REAL数据类型的取值范围。只有这样才能在 Output 参 数中输出。• 如果通过 StartMode 选择的值不是有效的 REAL值,则替代输出值将在 Output 参数中输 出。替代输出值通过 ErrorMode 变量组态,并且jinxian于 REAL数据类型的取值范围。如 果激活了配置文件执行,则将从此替代输出值开始。 • 仅当已设置参数 Reset = FALSE且没有错误消息为 ErrorBits ≥ 16#0002_0000 的错误 处于未决状态时,StartMode 变量才会作用于Output 参数。如果设置了 Reset = TRUE 参 数,则 SubstituteOutput 参数值将在 Output参数中输出。如果有错误消息为 ErrorBits ≥ 16#0002_0000 的错误处于未决状态,则在 ErrorMode变量中组态的替代输出值会在 Output 参数中输出。
组态停止行为 - 静态变量StopMode (S7-1200, S7-1500) 使用 StopMode 变量,可以定义 RampSoak指令在以下情况下的行为。 • 配置文件执行完成,因为已到达Zui后一点。 • 通过复位 Enable 停止配置文件执行。 通过StopMode 设置的值用作输出值,直到触发新的操作,例如配置文件执行的开始。可进行 StopMode 变量的以下设置: •StopMode = 0 Output 参数采用 WorkingData.StartValue 的值。 下图显示了具有 5个点的配置文件的执行如何在 StopMode = 0 的条件下结束和停止:• StopMode = 1 Output 参数采用SubstituteOutput 的值。 下图显示了具有 5 个点的配置文件的执行如何在 StopMode = 1的条件下结束和停止:• StopMode = 2 Output 参数采用配置文件执行的Zui后一个有效值。 下图显示了具有 5个点的配置文件的执行如何在 StopMode = 2 的条件下结束和停止:• StopMode = 3 Output 参数采用值0.0。 下图显示了具有 5 个点的配置文件的执行如何在 StopMode = 3 的条件下结束和停止:• StopMode = 4如果配置文件执行在Zui后一点结束,它会自动重新启动并使用 WorkingData.Point[1] 继 续。只要 Enable未复位,就会重复执行配置文件。 如果使用 Enable = FALSE 停止配置文件执行,则 Output参数采用配置文件执行的Zui后一 个有效值。 下图显示了具有 5 个点的配置文件的执行如何在 StopMode = 4的条件下结束和停止:以下内容还适用于 StopMode 变量的所有值: • 通过 StopMode 选择的值jinxian于 REAL数据类型的取值范围。只有这样才能在 Output 参 数中输出。 • 如果通过 StopMode 选择的值不是有效的 REAL值,则替代输出值 将在 Output 参数中输 出被保留。替代输出值通过 ErrorMode 变量组态,并且jinxian于REAL 数据类型的取 值范围。 • 仅当已设置参数 Reset = FALSE 且没有错误消息为 ErrorBits ≥16#0002_0000 的错误 处于未决状态时,StopMode 变量才会作用于 Output 参数。如果设置了 Reset =TRUE 参 数,则 SubstituteOutput 参数值将在 Output 参数中输出。如果有错误消息为 ErrorBits ≥16#0002_0000 的错误处于未决状态,则在 ErrorMode 变量中组态的替代输出值会在 Output参数中输出。测量周期时间 (S7-1200, S7-1500) 自动测量周期时间 要计算输出值,则 RampSoak 需要自上次调用RampSoak 以来经过的时间。 周期时间默认自动测量,并且自第二次调用起在 CycleTime.Value变量中输出。RampSoak 测量每次指令调用的周期时间,可用于非等时同步调用周期,例如 OB1 中。请注意,周期时间自动测量期间的条件性调用指令、有效断点或加载快照作为实际值会延长 周期时间值。如果周期时间测量未返回有效结果,RampSoak 会使用上一个有效的周期时间计算当前输出 值。RampSoak 在ErrorBits 参数中输出错误消息。 通过设置 CycleTime.EnableMeasurement = FALSE变量来禁用周期时间的自动测量时,必须 在 CycleTime.Value 变量中手动输入周期时间。每次调用时,RampSoak都会检查 CycleTime.Value 变量的有效性。 带断点的周期时间的自动测量 当 RampSoak的两次调用之间的断点有效时,周期时间的自动测量会得到两次调用之间经过 的实际时间。当一个断点有效时,CPU 处于 HOLD 工作状态。说明 有效断点会延长 RampSoak 的两次调用之间的时间间隔。 两次调用之间的时间间隔越长,Output参数中输出值的变化就越大。根据经过的时间和组 态的配置文件数据,可以跳过点。如果无需根据带有效断点的实际时间计算输出值,请按照下列步骤操作: • 通过设置变量CycleTime.EnableMeasurement = FALSE 来禁用周期时间的自动测量。 • 在CycleTime.Value 变量中手动输入周期时间。 使能行为 EN/ENO (S7-1200, S7-1500)如果满足下列其中一个条件,则使能输出 ENO 将设为 FALSE。 • 使能输入 EN 设置为 TRUE 并且带有错误消息ErrorBits ≥ 16#0001_0000 的错误处于未决 状态。 • 使能输入 EN 设为 FALSE。在所有其它情况下,使能输出 ENO 均设为 TRUE。