循环 SINAUT 程序

时间:2021-08-02点击次数:99

循环 SINAUT 程序

简介

用户程序 (OB1) 中 TD7 块的结构说明如下。

每个 OB1 循环中都必须运行 TD7 块。请严格遵守块的调用顺序,除非另有说明。

程序中其它用户特定的部分可链接到 OB1 中 TD7 块之前或之后,或 TD7 块中(如果可行)。

可通过在较低级别 FC 中调用 SINAUT 特定部分,在 OB1 中对其进行构造。

所有数据点典型值均为 FB。调用 FB 时必须*背景数据块。该背景数据块的编号与数据点对象的对象编号相同。

OB1 中 TD7 块的结构

循环 OB1

BasicTask

必须始终在开始时调用相应 FC BasicTask。它处理始终需要的基本 SINAUT 任务。

可选 SINAUT 基本功能

调用 FC BasicTask 之后,可根据需要调用以下可选块 (FC):

ListGenerator

为接收的目标地址不完整的帧创建地址列表。

TimeTask

提供日时钟。

如有必要,请在后续程序执行中调用其它可选 FC,例如:

Trigger

调度启动用户程序和数据帧

PartnerStatus

显示伙伴的状态

PartnerMonitor

用户特定的显示和控制扩展选件。

PulseCounter

计数脉冲采集

PathStatus

显示到伙伴的连接路径的状态

注意:
由于以下两个块是通过内部接口激活的,因此不可显式调用。

TestCopy

TestcopyDB

数据点典型值

在后续程序执行过程中,调用发送和接收数据的数据点典型值。各个典型值的顺序不重要。

要调用的典型值数量和所需类型取决于要发送和接收的数据的数量和类型。

注意:
这些 FB 的实例 DB 是使用通信伙伴的伙伴对象编号引用的。

站的 TD7 程序示例

循环 OB1

BasicTask

必须始终在循环程序开始时调用相应的 FC BasicTask。

一般来说,接收数据后即可对其进行进一步处理。

FC 仅有一个参数,即“UserFC”。通常可以* 0。如果需要对接收的数据进行用户特定的处理,请在此*包含该处理程序的 FC 编号。

也可以通过此接口按时间顺序将接收的数据复制到归档存储器。

TimeTask

您可以选择在 FC BasicTask 之后立即调用 FC TimeTask。该 FC 无参数,如果您需要日时钟,FC TimeTask TimeTask 必须包含在内。这支持给数据帧加时间戳。

但是,您也可以使用日时钟在*时间点适时启动程序组件,或者调度数据帧传输。之后则需要下文介绍的 FC 触发器。

对于要使用的 FC Time 任务,必须向 CPU 提供本地 TIM 模块的时间。请在组态中进行*。

Trigger

FC 触发器可作为随附选件。当 FC 达到时间点或设定的时间间隔时,FC 会将其输出设置为一个 OB1 循环的持续时间。

如果需要多个时间或不同时间间隔,可多次插入 FC。使用 FC 时要求必须先在 OB1 程序中调用 FC TimeTask(参见上文),并且 CPU 时间必须已经设置过一次。

PartnerStatus

FC PartnerStatus 可作为随附选件。FC 可显示较多 8 个通信伙伴的可访问性。

ListGenerator

用于 S7-300 CPU 的 ListGenerator300

用于 S7-400 CPU 的 ListGenerator400

用于 S7-1500 CPU 的 ListGenerator1500

FC 可以作为选件安装。如果站接收到不含目标地址或目标地址不完整的帧,则需要 FC。如果伙伴中数据点典型值完全或部分省略了目标地址的组态,则会发生这种情况。(“PartnerNo”和“PartnerObjectNo”未*,因此会传输至所有已知目标用户。)

PulseCounter

PathStatus

PartnerMonitor

必要时

数据点典型值

在用于 SINAUT 基本任务的 FC 之后,调用发送和接收数据的数据点典型值。各个典型值的顺序不重要。要调用的典型值数量和所需类型取决于要发送和接收的数据的数量和类型。

以下通常适用于站:

发送以下内容:

- 二进制信息,例如状态信息与报警

- 模拟值

- 计数值

接收到以下内容:

- 命令

- 设定值、限制、参数

Bin04B_S

用于采集和传送二进制信息,如消息、报警等的一个或多个 FB。

Ana04W_S

用于采集和传送模拟值的一个或多个 FB

Cnt01D_S / Cnt04D_S

用于采集和传送计数值的一个或多个 FB

使用 FB 的要求是 FC PulseCounter 包含在循环中断 OB 中,例如,OB35。该 FC 负责在后台计数脉冲的时间驱动采集。

Cmd01B_R

用于接收与输出命令的一个或多个 FB。

Set01W_R /
Par12D_R

用于接收与输出设定值、限制或参数的一个或多个 FB。

Dat12D_S /
Dat256D_S

用于采集和传送具有任意内容的 12 数据双字的一个或多个 FB。

没有针对这些典型值的数据特定的处理及更改控制。用户程序用于此。可选择激活更改控制,位更改将触发传送。

主站和节点站的 TD7 程序

原则上,对于站来说,主站和节点站的 TD7 程序看起来是一样的。相应的接收典型值在主站中用作站的发送典型值。

在节点站中,会根据传输方向使用发送典型值和相应的接收典型值。

在主站中,根据站构造 OB1 程序可行,换言之,所有数据典型值属于在一个 FC 中调用的相同站。当 FC 编号与站用户编号相同时,将提供较佳总览。


http://shtxjd.cn.b2b168.com

上一篇:冗余 备用

产品推荐