GRAPH 操作(S7-300, S7-400) 定时器操作 (S7-300, S7-400) TP:生成脉冲 (S7-300, S7-400) 说明使用“生成脉冲”指令,可以将输出 Q 设置为预设的一段时间。当参数 IN 的逻辑运算结果 (RLO)从“0”变为“1”(信号上升沿)时,启动该指令。执行该指令需要事先预设一个逻辑运算。该运算可以放置在程序段的中间或者末尾。指令启动时,预设的时间 PT 即开始计时。随 后无论输入信号如何改变,都会将参数 Q设置为时间 PT。如果持续时间 Q 仍在计时,检测到新的信号上升沿,参数 PT 的信号状态也不会受到影响。 可以在参数 ET中查询当前时间值。时间值从 T#0s 开始,达到时间值 PT 时结束。如果达到 时间值 PT,并且参数 IN的信号状态为“0”,则复位 ET 参数。 每次调用“生成脉冲”指令,都必须为其分配一个 IEC 定时器用以存储该指令的数据。可按如下方式声明 IEC 定时器: • 声明类型为 TP 的数据块(例如,“TP_DB”)将该指令插入程序中时,将自动打开“调用选项”(Call options) 对话框。项目树中所创建的 数据块位于“Programresources”文件夹下的“程序块 > 系统块”(Program blocks > System blocks)中。有关本主题的更多信息,请参见“另请参见”。跳转到步 (S7-300, S7-400) 说明 可以通过跳转,从 GRAPH函数块中的任何步开始继续程序执行。 跳转可以插入到主分支或 选择分支的末尾,从而激活顺控程序的循环处理。跳转和跳转目标在顺控程序中用箭头表 示,从而可以为跳转目标指定返回转换条件。选择分支 (S7-300, S7-400) 说明可以使用并行分支编程 OR 分支。这意味着在步后面插入以转换条件开始的分支。 根据Zui先 满足的转换条件,将执行该转换条件所对应的分支。如果满足多个转换条件,则Zui右 边的转换条件的优先级Zui高,将执行该转换条件所对应的分支。 选择分支将以转换条 件结束。在一个顺控程序中,Zui多可以编写 125 个选择分支。
并行分支(S7-300, S7-400) 说明 可以使用并行分支编程 AND 分支。 这意味着可以使用一个转换激活多个步,执行该步中的动作。并行分支始终从一个步开始。 并行分支的后续转换位于主分支上,此时可将各种并行分支连接到主分支上的不同点。 请注意,只有在执行完所有分支之后,使用一个转换的各个分支才会切换到下一步。 在一个顺控程序中,Zui多可以编写 249 个并行分支。关闭分支(S7-300, S7-400) 说明 可以使用“关闭分支”元素关闭并行分支和选择分支,返回父分支。如果不希望使用跳转或顺序结尾结束分支,则可使用该元素关闭分支。 在并行分支中,仅可在步后面插入“关闭分支”。操作系统会在冷启动期间复位“生成脉冲”指令的实例。如果要在暖启动之后初始化该指令 的实例,则在启动 OB 中调用这些实例,其中PT 参数将置位为值“0”。如果“生成脉冲”指 令的实例位于其它块中,则可以通过诸如初始化上级块来复位这些实例。 说明 跳过该指令如果在程序中未调用该指令(如,由于跳过该指令),则 ET 参数将在超出定时器值后立即 返回一个常数值。 说明 更新指令数据只有在调用指令时才更新指令数据。访问输出 Q 或 ET 时,不会更新指令数据。 参数 下表列出了该指令的参数: 参数 声明 数据类型存储区 说明 IN Input BOOL I、Q、M、D、L 启动输入 PT Input TIME I、Q、M、D、 L、P 或常数脉冲的持续时间。 PT 参数的值必须为正数。 Q Output BOOL I、Q、M、D、L 脉冲输出 ET Output TIMEI、Q、M、D、L 当前定时器的值 可以从“???”下拉列表中选择该指令的数据类型。有关有效数据类型的更多信息,请参见“另请参见”。当“Tag_Start”操作数的信号状态从“0”变为“1”时,PT参数预设的时间开始计时,且“Tag_Status”操作数将设置为“1”。当前时间值存储在“Tag_ElapsedTIME”操作数中。TON:接通延时(S7-300, S7-400) 说明 可以使用“接通延时”指令将 Q 输出的设置延时 PT 指定的一段时间。当输入 IN 中的逻辑运算结果 (RLO) 从“0”变为“1”(信号上升沿)时,启动该指令。执行该指令需要事先预设一个逻辑运算。该运算可以放置在程序段的中间或者末尾。指令启动时,预设的时间 PT 即开 始计时。超过时间 PT 时,输出 Q的信号状态为“1”。只要启动输入 IN 仍为“1”,输出 Q 就保 持置位。启动输入的信号状态从“1”变为“0”时,将复位输出Q。在启动输入检测到新的信号 上升沿时,该定时器功能将启动。 可以在 ET 输出上查询当前时间值。时间值从 T#0s开始,达到时间值 PT 时结束。只要 IN 输 入的信号状态变为“0”,就立即复位 ET 输出。每次调用“接通延时”指令,都必须为其分配一个 IEC 定时器用以存储该指令的数据。可按 如下方式声明 IEC 定时器: • 声明类型为TON 的数据块(例如,“TON_DB”) 将该指令插入程序中时,将自动打开“调用选项”(Call options)对话框。项目树中所创建的 数据块位于“Program resources”文件夹下的“程序块 > 系统块”(Programblocks > System blocks) 中。有关本主题的更多信息,请参见“另请参见”。操作系统会在冷启动期间复位“接通延时”指令的实例。如果要在暖启动之后初始化该指令 的实例,则在启动 OB 中调用这些实例,其中 PT参数将置位为值“0”。如果“接通延时”指 令的实例位于其它块中,则可以通过诸如初始化上级块来复位这些实例。 说明 跳过该指令如果在程序中未调用该指令(如,由于跳过该指令),则 ET 输出会在超出定时器值后立即 返回一个常数值。 说明 更新指令数据只有在调用指令时才更新指令数据。访问输出 Q 或 ET 时,不会更新指令数据。下表列出了该指令的参数: 参数 声明 数据类型 存储区说明 IN Input BOOL I、Q、M、D、L 启动输入 PT Input TIME I、Q、M、D、 L、P 或常数接通延时的持续时间 PT 参数的值必须为正数。 Q Output BOOL I、Q、M、D、L 超出时间值 PT 之后要置位 的输出。ET Output TIME I、Q、M、D、L 当前定时器的值 可以从“???”下拉列表中选择该指令的数据类型。有关有效数据类型的更多信息,请参见“另请参见”。当“Tag_Start”操作数的信号状态从“0”变为“1”时,PT参数预设的时间开始计时。超过该时间值时,操作数“Tag_Status”的信号状态将置位为“1”。只要操作数“Tag_Status”的信号状态为“1”,操作数“Tag_Start”就将保持设置为“1”。当前时间值存储在“Tag_ElapsedTime”操作数中。当操作数“Tag_Start”的信号状态从“1”变为“0”时,将复位操作数“Tag_Status”。TOF:关断延时 (S7-300,S7-400) 说明 可以使用“关断延时”指令将 Q 输出的复位延时 PT 中指定的一段时间。当输入 IN 的逻辑 运算结果(RLO) 从“0”变为“1”(信号上升沿)时,将置位 Q 输出。执行该指令需要事先预设一个逻辑运算。该运算可以放置在程序段的中间或者末尾。当输入 IN 的信号状态变回“0”时, 预设的时间 PT 开始计时。只要时间值PT 仍在计时,输出 Q 就保持置位状态。超出时间值 PT 时,将复位输出 Q。如果输入 IN 的信号状态在超出时间值 PT之前变为“1”,则将复位定时器。 输出 Q 的信号状态仍将为“1”。 可以在 ET 输出查询当前的时间值。时间值从 T#0s开始,达到时间值 PT 时结束。当时间 PT 超时后,在输入 IN 变回“1”之前,输出 ET 会保持置位为当前值。如果输入 IN在超出时间值 PT 之前变为“1”,则输出 ET 将复位为值 T#0s。 每次调用“关断延时”指令,都必须为其分配一个 IEC定时器用以存储该指令的数据。可按 如下方式声明 IEC 定时器: • 声明类型为 TOF 的数据块(例如,“TOF_DB”)将该指令插入程序中时,将自动打开“调用选项”(Call options) 对话框。项目树中所创建的 数据块位于“Programresources”文件夹下的“程序块 > 系统块”(Program blocks > System blocks)中。有关本主题的更多信息,请参见“另请参见”。