龙空技术网

S7-1500PLC梯形图(LAD)基础指令——S7定时器S_PULSE脉冲定时器

Look自动化 371

前言:

当前咱们对“定时器代码c语言”可能比较着重,你们都想要学习一些“定时器代码c语言”的相关文章。那么小编在网络上汇集了一些有关“定时器代码c语言””的相关知识,希望朋友们能喜欢,你们快快来了解一下吧!

S_PULSE: 分配脉冲定时器参数并启动

说明

当输入 S 的逻辑运算结果 (RLO) 的信号状态从“0”变为“1”(信号上升沿)时,指令“分配脉冲定时器参数并启动”将启动预设的定时器。当输入 S 的信号状态为“1”后,该定时器在经过预设的持续时间 (TV) 后计时结束。如果输入 S 的信号状态在已设定的持续时间计时结束之前变为“0”,则定时器停止。这种情况下,输出 Q 的信号状态为“0”。

持续时间由定时器值和时基构成,且在参数 TV 处设定。该指令启动后,预设的时间值开始递减计数,直至为零。时基表示定时器值更改的时间段。当前定时器值在输出 BI 处以 BI 编码格式输出,在输出 BCD 处以 BCD 编码格式输出。

如果定时器正在计时且输入端 R 的信号状态变为 “1”,则当前时间值和时间基准也将设置为 0。如果定时器未在计时,则输入 R 的信号状态为“1”不会有任何作用。

“分配脉冲定时器参数并启动”指令需要对边沿评估进行前导逻辑运算,可以放在程序段中或程序段的结尾。

每次访问时都会更新指令数据。因此,在循环开始和循环结束时查询数据可能会返回不同的值。

说明

在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。因此,定时器中的值比预期的时基最多短一个时间间隔值。

有关如何构造一个时间单元的示例,请参见“另请参见“L:加载定时器值”。

参数

下表列出了指令“分配脉冲定时器参数并启动”的参数:

参数

声明

数据类型

存储区

说明

<定时器>

InOut/Input

TIMER

T

指令的时间

定时器的数量取决于 CPU。

S

Input

BOOL

I、Q、M、D、L 或常量

启动输入

TV

Input

S5TIME、WORD

I、Q、M、D、L 或常量

预设时间值

R

Input

BOOL

I、Q、M、T、C、D、L、P 或常量

复位输入

BI

Output

WORD

I、Q、M、D、L、P

当前时间值(BI 编码)

BCD

Output

WORD

I、Q、M、D、L、P

当前时间值(BCD 格式)

Q

Output

BOOL

I、Q、M、D、L

定时器的状态

有关有效数据类型的更多信息,请参见“另请参见”。

脉冲时序图

下图显示了指令“分配脉冲定时器参数并启动”的脉冲图:

示例

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

如果操作数“TagIn_1”的信号状态从“0”变为“1”,将启动“Timer_1”定时器。只要操作数“TagIn_1”具有信号状态“1”,定时器便会在等于操作数“TagIn_Number”的定时器值时结束计时。如果在定时器计时结束前操作数“TagIn_1”的信号状态从“1”变为“0”,则定时器“Timer_1”将停止。在这种情况下操作数“TagOut”将被复位为“0”。

只要定时器正在计时且操作数“TagIn_1”的信号状态为“1”,则操作数“TagOut”的信号状态便为“1”。定时器计时结束或复位后,操作数“TagOut”将复位为“0”。

---( SP ): 启动脉冲定时器

说明

逻辑运算结果 (RLO) 中检测到信号从“0”到“1”的变化(信号上升沿)时,“启动脉冲定时器”指令将启动已设定的定时器。只要 RLO 的信号状态为“1”,定时器便会运行指定的一段时间。只要定时器正在运行,对定时器状态是否为“1”的查询将返回信号状态“1”。在该定时器值计时结束前,如果 RLO 中的信号状态从“1”变为“0”,则定时器将停止。在这种情况下,查询定时器状态是否为“1”时会返回信号状态“0”。

持续时间在内部由定时器值和时基构成。指令启动后,预设时间值开始递减计数,直至为零。时基表示定时器值更改的时间段。

在操作数占位符 <操作数 1>(持续时间)中指定倒计时的时间,在指令上方的 <操作数 2> 中指定将要开始的时间。

“启动脉冲定时器”指令需要前导逻辑运算进行边沿评估,且只能放在程序段的右侧。

说明

在时间单元,操作系统通过时基指定的间隔,以一个时间单位缩短时间值,直到该值为“0”。递减操作与用户程序不同步执行。因此,定时器中的值比预期的时基最多短一个时间间隔值。

有关如何构造一个时间单元的示例,请参见“另请参见“L:加载定时器值”。

参数

下表列出了“启动脉冲定时器”指令的参数:

参数

声明

数据类型

存储区

说明

<操作数 1>

Input

S5TIME、WORD

I、Q、M、D、L 或常数

定时器计时结束的持续时间。

<操作数 2>

InOut/Input

TIMER

T

已启动的定时器。

定时器的数量取决于 CPU。

有关有效数据类型的更多信息,请参见“另请参见”。

示例

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

操作数“TagIn_1”的信号状态从“0”变为“1”时,“Timer_1”启动。只要操作数“TagIn_1”的信号状态为“1”,定时器就运行操作数“TagIn_Number”预设的时间值。如果在定时器计时结束前操作数“TagIn_1”的信号状态从“1”变为“0”,则定时器将停止。只要定时器正在运行,输出“TagOut”的信号状态就为“1”。操作数“TagIn_2”的信号状态从“0”变为“1”时会复位定时器,这会使定时器停止并将当前定时器值置位为“0”。

下图为本示例的时序图:

标签: #定时器代码c语言