6.1.2 LD基本信息
6.1.2.1 LD基本元素
- 梯形图LD语言使用元素大致如下图所示:包含电源线、标签、连接元素、调用函数、调用功能块、触点、线圈一些基本元素。具体使用参考LD基础指令
- 梯形图LD语言修改设置,如下图所示:
6.1.2.2 LD触点
-
具体使用参考布尔指令-触点
-
触点是一种元素,他将状态传至其右侧的水平连接
-
标准触点等于该触点状态和左侧水平连接的状态进行布尔AND。当触点左侧图形元素状态为OFF时,不 管触点的状态如何,都不能将其状态传递到触点右侧图形元素,即右侧图形元素的状态为OFF。但取反触点例外。
-
触点不修改关联的布尔变量的值。触点可以是布尔变量,也可以代表一个输入指令,结果是某次运算后的布尔量
-
静态触点可以分为常开触点和常闭触点。在线圈初始失电状态下(关联布尔量=0),常开触点断开,其状态为OFF;而常闭触点闭合,其状态为ON。
-
相关触点符号表格如下:
序号 | 描述 | 操作说明 | 解释说明 |
---|---|---|---|
静态触点 | 静态触点,编程时,右击触点能改变触点的属性 | ||
1 | 常开触点 | 如果关联的布尔变量的状态ON,那么将左边水平线的状态复制到右边水平线。否则,右边水平线的状态是OFF 备注:该触点状态是布尔变量的状态 | 1. 常开触点的激活取决于相关操作数的信号状态。当操作数的信号状态为“1”时,常开触点将关闭,同时输出信号状态置位为输入信号的状态 2.当操作数的信号状态为“0”时,不会激活常开触点,同时该指令输出的信号状态复位为“0”。 |
2 | 常闭触点 | 如果关联的布尔变量的状态OFF,那么将左边水平线的状态复制到右边水平线。否则,右边水平线的状态是OFF 备注:该触点状态是not的状态 | 1.常闭触点的激活取决于相关操作数的信号状态。当操作数的信号状态为“1”时,常闭触点将打开,同时该指令输出的信号状态为“0”。 2.当操作数的信号为“0”时,不会启用常闭触点,同时将该输入的信号状态传输到输出。 |
转换脉冲-检测触点 | |||
3 | 正转换脉冲-检测触点 | yyy 当左边水平线的状态是ON的同时检测到有关变量从OFF到ON的转换时,则从这个元素的一次求值到下一次求值期间组偶便的水平线的状态时ON,在所有其他时间,右边水平线的状态应时OFF 备注:yyy是用于存储布尔变量上移周其的布尔值,该触点状态用变量的状态反馈 | 使用“正脉冲检测触点”指令,可以确定所指定操作数《操作数1》的信号状态是否从“0”变为“1”。该指令将比较《操作数1》的当前信号状态与上一次扫描的信号状态,上一次扫描的信号状态保存在边沿存储位《操作数2》中。如果该指令检测到逻辑运算结果从“0”变为“1”,则说明出现了一个上升沿。 |
4 | 负转换脉冲-检测触点 | yyy 当左边水平线的状态是ON的同时检测到有关变量从OFF到ON的转换时,则从这个元素的一次求值到下一次求值期间组偶便的水平线的状态时ON,在所有其他时间,右边水平线的状态应时OFF 备注:yyy是用于存储布尔变量上移周其的布尔值,该触点状态用变量的状态反馈 | 使用“负脉冲检测触点”指令,可以确定所指定操作数《操作数1》的信号状态是否从“1”变为“0”.该指令将比较《操作数1》的当前信号状态与上次扫描的信号状态,上一次扫描的信号状态保存在边沿存储器位《操作数2》中。如果该指令检测到逻辑运算结果从“1”变为“0”,则说明出现了一个下降沿。 |
5 | 取反触点 | 将左边水平线的状态取反后复制到右边的水平线。 如果左边水平线是ON,右边水平线的状态就是OFF; 如果左边水平线是OFF,右边水平线的状态就是ON; 备注:该触点状态和左边水平线的状态一致。 | 使用“取反”指令,可对逻辑运算结果的信号状态进行取反。如果该指令输入的信号状态为“1”,则指令输出的信号状态为“0”.如果该指令输入的信号状态为“0”,则输出的信号状态为“1”。 |
6.1.2.3 LD线圈
-
具体使用布尔指令-线圈
-
线圈将左边水平线的状态或转换相关函数存储到相关的布尔量中,并将左边水平线的状态不加修改地复制到右边水平线。也就是说线圈关联变量的值,不影响左右的连接状态
-
相关线圈符号表格如下:
序号 | 描述 | 操作说明 | 解释说明 |
---|---|---|---|
Momentarycoils | 瞬时线圈 | ||
1 | 线圈 | 左边水平线的状态被复制给关联的布尔变量和右边水平线。 备注:该线圈状态是布尔变量的状态 | 线圈输入的逻辑运算结果的信号状态为“1”,将指定操作数的信号状态置位为“1”。如果线圈输入的信号状态为“0”,则指定操作数的位降幅为为“0”。 |
2 | 取反线圈 | 左边水平线的状态被复制给右边水平线。左边水平线的状态取反后被复制给关联的布尔变量 备注:该线圈状态是布尔变量的状态 | 可将逻辑运算的结果进行取反,然后将其赋值给指定操作数。线圈输入的逻辑运算结果为“1”时,复位操作数。线圈输入的逻辑运算的结果为“0”时,操作数的信号状态置位为“1”。 |
Latchedcoils | 锁存线圈 | ||
3 | 置位(锁存)线圈 | 当左边水平线处于NO状态时,关联的布尔量被置位为NO状态,并保持该状态直到线圈复位 备注:该线圈状态时布尔变量的状态 | 可将指定操作数的信号状态置位为“1”,仅当线圈输入的逻辑运算结果为“1”时,才执行该指令。如果信号流通过线圈,则指定的操作数置位为“1”.如果线圈输入的结果为“0”(没有信号流过线圈),则指定操作数的信号状态保持不变。 |
4 | 复位(解锁)线圈 | 当左边水平线处于ON状态时,关联的布尔量被复位为OFF状态,并保持该状态直到线圈位置 备注:该线圈状态时布尔变量的状态 | 将指定操作数的信号状态复位为“0”。仅当线圈输入的逻辑运算结果为“1”时,才执行该指令。如果信号流通果线圈,则指定的操作数复位为“0”.如果线圈输入的结果为“0”,则指定操作数的信号状态将保持不变。 |
5 | 正转换脉冲-检测线圈 | YYY 当检测到左边水平线从OFF到ON的转换时,关联的布尔量的状态从这个元素的一次求值到下一次求值期间是ON。左边水平线的状态总是被复制给右边水平线。 备注:YYY是用于存储左边水平线上一周期的布尔值。该线圈状态时脉冲布尔变量的状态 | 可以使用“正转换脉冲”指令在逻辑运算结果从“0”变为“1”时置位指定操作数《操作数1》。该指令将当前结果与保存在边沿存储位中《操作数2》上次查询的结果进行比较。如果该指令检测到结果从“0”变为“1”,则说明出现了一个信号上升沿。 每次执行指令时,都会查询信号上升沿。检测到信号上升沿时,《操作数1》的信号状态将在一个程序周期内保持置位为“1”。在其它任何情况下,操作数的信号状态均为“0”。 |
6 | 负转换脉冲-检测线圈 | YYY 当检测到左边水平线从ON到OFF的转换时,关联的布尔变量的状态从这个元素的一次求值到下一次求值期间是ON。左边水平线的状态总是被复制给右边水平线。 YYY 备注:YYY是用于存储左边水平线上一周期的布尔值。该线圈状态是脉冲布尔变量的状态。 | 可以使用“负转换脉冲”指令在逻辑运算结果从“1”变为“0”时置位指定操作数《操作数1》。该指令将当前结果与保存在边沿存储位中《操作数2》上次查询的结果进行比较。如果该指令检测到结果从“1”变为“0”,则说明出现了一个信号下降沿。 每次执行指令时,都会查询信号下降沿。检测到信号下降沿时,《操作数1》的信号状态将在一个程序周期内保持置位为“1”。在其它任何情况下,操作数的信号状态均为“0”。 |
6.1.2.4 LD编程
访问 | 执行顺序 | 执行规则 |
---|---|---|
应用软件所有支持的数据类型作为操作数可以访问 | 从最上层梯级开始,一个梯级完成,再进行下一个梯级的执行 | 1.梯级间不存再连接 2.每个程序段中只能插入一个跳转指令 |
应用软件所有支持的声明后的实例可以访问 | 1.一个程序段,都有一个顺序编号,同时害可以分配一个标题,注释和跳转标签 2.标题和注释区域的可用性可以通过“选项”,设置,LD编辑器对话框打开或关闭 | 3.每个程序段中只能插入一个跳转标签,且在程序段的开始 4.允许跳转指令跳转到本程序段标签或其他程序段标签 |
-
LD编程窗口
-
编程窗口组成部分(从上到下依次表述):
- Tab页工具栏,可达到快捷的方式进行代码展开,文件的导入导出等操作
- 声明区表格
- 代码区,收藏栏,程序段名称
-
LD编程基础指令请参考基础指令-LD
-
LD编程系统库指令请参考系统库说明
注意
- 禁止能量流从右到左,不能创建可能导致反向能流的分支
- 禁止短路
- 触点除外,可以使用线圈、PU框来终止一个梯级程序的编写
- 不能将常数或常量(例如TRUE或FALSE)分配给各类线圈或脉冲触点下面的存储bit
- 转换脉冲-检测线圈,不能直接安排在梯级的最左侧,因为它们需要事先进行逻辑运算
- 如果一个水平线的元素没有和右母线闭合,本体及程序不完整,编译报错。(跳转和返回默认自带缺省右母线)
- 如果一个PU框的BOOL输入管脚(除了第一根)需要连线,只能连左母线出来的独立梯级。BOOL输出管脚(除了第一根)不能连线。不允许第一根以为的输入引脚直接连左母线。