你如何在 ST 中定义定时器的延迟时间?
How do you let define the delay time for a timer in ST?
我正在尝试用 ST 编写一个程序,让用户为 TON 计时器定义 Bakelength 时间(以小时为单位)。
我目前有这个,但是当我编译代码时,程序抛出一个 'illegal constant' 错误。我将如何更改此语法?任何帮助将不胜感激!!!
TON_1(IN:= true,PT:= t#(BakeLength)h);
带T#的注解只是在源代码中定义常量值,如T#100s。
如果 Bakelength 已经是 TIME 类型的变量,你可以只写
TON_1(IN:= true,PT:= BakeLength);
如果 Bakelength 是另一种类型,例如LREAL 您必须将值转换为 TIME 变量。
如果转换为 TIME,数字数据类型总是被解释为毫秒。因此,如果 Bakelength 以小时为单位,则必须乘以 3600000。
TON_1(IN:= true,PT:= LREAL_TO_TIME(Bakelength * 3600000));
我正在尝试用 ST 编写一个程序,让用户为 TON 计时器定义 Bakelength 时间(以小时为单位)。
我目前有这个,但是当我编译代码时,程序抛出一个 'illegal constant' 错误。我将如何更改此语法?任何帮助将不胜感激!!!
TON_1(IN:= true,PT:= t#(BakeLength)h);
带T#的注解只是在源代码中定义常量值,如T#100s。
如果 Bakelength 已经是 TIME 类型的变量,你可以只写
TON_1(IN:= true,PT:= BakeLength);
如果 Bakelength 是另一种类型,例如LREAL 您必须将值转换为 TIME 变量。 如果转换为 TIME,数字数据类型总是被解释为毫秒。因此,如果 Bakelength 以小时为单位,则必须乘以 3600000。
TON_1(IN:= true,PT:= LREAL_TO_TIME(Bakelength * 3600000));