西门子博途:SCL生成脉冲TP

科技   2024-11-04 21:51   吉林  


TP:生成脉冲




说明

使用“生成脉冲”指令,可以将参数 Q 置位为预设的一段时间。当参数 IN 的逻辑运算结果 (RLO) 从“0”变为“1”(信号上升沿)时,启动该指令。指令启动时,预设的时间 PT 即开始计时。无论未来输入信号的状态如何变化,都将为持续时间 PT 置位参数 Q。当 PT 正在计时时,在 IN 输入处检测到的新的信号上升沿对 Q 输出处的信号状态没有影响。

可以在参数 ET 中查询当前时间值。该定时器值从 T#0s 开始,在达到持续时间 PT 后结束。达到持续时间 PT 时,且参数 IN 的信号状态为“0”,则复位参数 ET。



IEC 定时器作为系统数据类型为 IEC_<定时器> 的背景数据块(共享 DB)

您可以按如下所示将 IEC 定时器声明为数据块:

<IEC_Timer_DB>.TP();


IEC 定时器作为块接口的局部变量(多重实例)

您可以按如下所示将 IEC 定时器声明为局部变量:

#myLocal_Timer();

更新实例数据中的实际值

“生成脉冲”中的实例数据根据以下规则更新:

  • IN 输入

    “生成脉冲”指令将当前 RLO 与保存在实例数据 IN 参数中上次查询的 RLO 进行比较。如果指令检测到 RLO 从“0”变为“1”,则说明出现了一个信号上升沿并开始进行时间测量。在“生成脉冲”指令处理完毕后,IN 参数的值在实例数据中更新,并作为存储器位用于下次查询。

    请注意,边沿检测将在其他功能写入或初始化 IN 参数的实际值时中断。 

  • PT 输入

    当边沿在 IN 输入处改变时,PT 输入处的值将写入实例数据中的 PT 参数。 

  • Q 和 ET 输出

    Q 和 ET 输出的实际值在以下情况下更新:

    如果输出未互连并且还未被查询,则不更新 Q 和 ET 输出的当前时间值。即使在程序中跳过该指令,也不会对输出进行更新。 

    “生成脉冲”指令的内部参数用以计算 Q 和 ET 的时间值。请注意,时间测量将在其他功能写入或初始化指令的实际值时中断。

    • 当输出 ET 或 Q 互连时,调用该指令。

    • 访问 Q 或 ET。




可以使用板载 CPU 输出,也可以使用可选的信号板输出。
下表列出了输出点编号(假定使用默认输出组态)。
如果更改了输出点编号,则输出点编号将为用户指定的编号。请注意, PWM
仅需要一个输出,而 PTO 的每个通道可选择使用两个输出。
如果脉冲功能不需要输出,则相应的输出可用于其它用途。

这四个脉冲发生器具有默认的 I/O 分配,但是,它们可组态为 CPU 或 SB
上的任意数字量输出。不能将 CPU 上的脉冲发生器分配给 SM 或分布式 I/O。


参数

下表列出了该指令的参数:



参数

声明

数据类型

存储区

说明



S7-1200

S7-1500

IN

Input

BOOL

BOOL

I、Q、M、D、L、P

启动输入

PT

Input

TIME

TIME、LTIME

I、Q、M、D、L、P

脉冲的持续时间。

PT 参数的值必须为正数。

Q

Output

BOOL

BOOL

I、Q、M、D、L、P

在 PT 持续时间内保持置位状态的操作数。

ET

Output

TIME

TIME、LTIME

I、Q、M、D、L、P

当前定时器的值



脉冲时序图

下图显示了“生成脉冲”指令的脉冲时序图:

示例

以下示例说明了该指令的工作原理:


SCL

"TP_DB".TP(IN := "Tag_Start",

PT := "Tag_PresetTime",

Q => "Tag_Status",

ET => "Tag_ElapsedTime");


当“Tag_Start”操作数的信号状态从“0”变为“1”时,PT 参数预设的时间开始计时,且“Tag_Status”操作数置位为“1”。当前时间值存储在“Tag_ElapsedTime”操作数中。



机器人及PLC自动化应用
机器人技术讲解,PLC程序分析讲解,PLC机器人自动化培训. 以工业自动化培训为主.也会有些个人喜爱的军事和休闲.
 最新文章