本文介绍了用于对 PLC 进行编程的编程语言梯形图逻辑,并展示了其功能的示例。
梯形图,更好地称为梯形逻辑,是一种用于对 PLC(可编程逻辑控制器)进行编程的编程语言。本文将简要介绍什么是梯形逻辑,并通过一些示例说明其功能。
可编程逻辑控制器或 PLC 是用于执行控制功能的数字计算机,通常用于工业应用。在可用于对 PLC 进行编程的各种语言中,梯形图逻辑是一种直接模仿机电继电器系统的语言。
它使用在代表系统电源的两个垂直条之间布置的长梯级。沿着梯级是触点和线圈,仿照机械继电器上的触点和线圈建模。触点充当输入,通常代表开关或按钮;线圈表现为输出,例如灯或电机。
不过,输出不一定是物理的,可以代表 PLC 内存中的单个位。然后可以稍后在代码中将该位用作另一个输入。触点串联表示 AND 逻辑,并联表示使用 OR 逻辑。与真正的继电器一样,有常开触点和常闭触点。
梯形图逻辑示例
我们来看一个梯形图逻辑编程的例子:
图 1.一个简单的梯形图逻辑程序
这个梯形图逻辑程序有三个梯级长。程序由 CPU 从左到右、从上到下“扫描”或运行。横跨整个梯级的符号实际上是图形说明。这些指令的名称是:
XIC(检查是否关闭)
XIO(检查是否打开)
OTE(输出激励)。
梯级
查看梯级,注意前两个输入 I:1/1 和 I:1/2。符号是 XIC,I 表示这是一个输入。该指令表示在其中一个离散输入卡上找到的物理输入。
图 2.个梯级代表在其中一个离散输入卡上找到的物理输入。
I:1 表示此输入卡已放置在插槽 1 中,与处理器直接相邻。/1 表示感兴趣的位。输入卡有多个通道,如果指令指定/1,则指令访问通道 1。
第二个输入代表同一张卡上的通道 2。如果关闭,则 XIC 指令真正意味着 true。也就是说,如果它代表的输入设备关闭,则该指令将为真。如果指令为真,则以绿色突出显示。使输出通电的方法是是否可以从左轨追踪到右轨的真实指令路径。因此,梯级 1 上的输出将为真,因为存在真指令路径 I:1/1 和 I:1/2。这实际上是一个 AND 操作。
本例中的输出 B:0/1 实际上是存储在 PLC 内存中的内部位。这就是为什么将“输出”标记为 B 而不是 O 的原因。当需要记录特定状态或一组输入而不实际打开物理输出时,这些内部位非常有用。
二阶
在第二个梯级上,我们有一个标记为 I:1/3 的第三个输入,我们的内部位现在用于输入指令而不是输出。
图 3.第二个梯级代表与输入指令一起使用的第三个输入。
这两个输入并联放置,代表一个或条件。O:2/1 是一条输出指令,表示插槽 2 中物理离散输出卡上的通道 1。可以通过将 B:0/1 替换为梯级一的两个输入来在没有内部位的情况下重写第二个梯级。因此,如果 I:1/3 为真,或者如果 I:1/1 和 I:1/2 都为真,则输出 O:2/1 将为真。这是所有梯形图逻辑程序的基本结构。
第三梯级
第三个梯级引入了 XIO 指令。如果打开,将 XIO 指令描述为真。
图 4.第三个梯级引入了 XIO 指令。
只有当连接到它的输入打开时,XIO 才会为真。对于内部位,如果内部位关闭,则此指令为真。因此,因为 I:1/1 和 I:1/2 都闭合,表示这些输入的 XIO 指令为假。表示 I:1/3 的 XIO 为真,因为它表示的输入设备是打开的。如果没有从左到右的真实指令路径,则第三梯级 O:2/2 上的输出将关闭。
PLC系统指令
上面讨论的指令是 PLC 系统中基本的指令,但它们只占整个指令集的一小部分。大多数 PLC 包括定时器、计数器、锁存和逻辑指令。
图 5 显示了作者为 Allen-Bradley PLC 编写的稍微复杂的电平控制程序。
图 5. 电平控制程序
对于初学者,您可能会注意到输入 I:1/0。令人困惑的是,Allen-Bradley 将任何卡通道上的个通道命名为 0。这类似于数组索引从零开始的方式。
该程序使用连接到水箱的两个液位开关来启动两个泵,这两个泵必须一个接一个地开始运行,而不是同时运行。请注意,相同的两个 XIC 输入同时控制泵 A 和 B。但是,内部位与 XIC 一起用于控制泵 A,与 XIO 一起用于控制泵 B。如果梯级 0000 为真,则使用锁存指令锁存泵 A 。
如果梯级 0001 为真,则泵 B 被锁定。一旦锁存指令变为真,输出将保持打开状态,直到激活互补的解锁指令。一个梯级使用性指令和 XOR 指令控制泵切换。
单次触发在激活时对单个程序扫描保持正确,而 XOR 的行为与往常一样。这是使用单个输入切换位的简单方法。