(D)ABSD 绝对值凸轮顺控 本指令产生一组相对与计数值变化的输出波形。
源操作元件:第一源元件KnX KnY KnM KnS T C D
第二源元件 C
注意:KnX KnY KnM KnS时一组八个位元件
目标元件:Y M S
目标元件个数n:K H n≤64
格式: 如下例对应于旋转台旋转一周期间M0---M3的ON/OFF状态变化是受控的。
LD X0
ABSD D300 C0 M0 K4
LD C0
ANDI X0
RST C0
LD X1 转轴上的编码器给PLC的计数器提供的角度位置脉冲
OUT C0 K360
X0:指令执行条件
D300:第一源元件的起始编号。1、并根据K值决定默认连续指定数量等于两倍的K值(本题为2*4=8个。)。
2、以起始编号元件开始每两个为一对,用MOV指令写入数据。其中偶数元件存开通点数据,奇数元件存关断点数据,与C0内的数据比较去对应控制从目标元件起始元件M的关断状态(本题为D300D301→M0、D302D303→M1、D304D305→M3、D306D307→M3)当计数器C0内数据达到某一个M对应的D内的数据的开通点数据是M就置位保持,当再达到关断点数据时就断开。
C0: 计数器 记录角度位置脉冲数
M0:输出起始目标元件及编号。 由“n”值决定输出数目。(M0、M1、M2、M3)
由对应的第一源元件对的数据与C0内的数据比较决定ON/OFF。当计数器内数据达到某一个M对应的D内的数据的开通点数据是M就置位保持,当再达到关断点数据时就断开。
K4:1、指定ABSD指令控制的目标元件的数量K4即(M3、M2、M1、M0)。
2、指定第一源元件D的对数,K4即4对(D307D306、D305D304、D303D302、D301D300),每对中偶数元件存开通数据,奇数元件存关断数据。
本题先用MOV指令将表一所示的数据写入D300—D307,开通点数据存入偶数元件,将关断点数据存入奇数元件。
表一:
开通点 关断点 输出
D300=40 D301=140 M0
D302=100 D303=200 M1
D304=160 D305=60 M2
D306=240 D307=280 M3
对应M:
当计数器:C0=D300=40时M0置位,C0=D301=140时M0复位。
C0=D302=100时M1置位,C0=D303=200时M1复位。
C0=D304=160时M2置位,C0=61时M2复位。!
C0=D306=240时M3置位,C0=D307=280时M3复位。
!注意:当开通点大于关断点时,ABSD指令一执行对应的M就接通,当计数到关断点的下一数时M才关断,如上虽关断点为60,但D304>D305,所以当C0=61时M才动作
注意:(1)本指令只能用一次。
(2)输出点的数目由“n”值决定。
(3)若X0关断,则输出的状态保持不变。
(4)若第一源元件内有为0的D数据对,则对应的M永不动作。若只有开通点为0,则当指令执行时对应的M就置位,到关断点M就复位。若只有关断点为0,则正常运行与!一致