编码器与PLC连接
台达的EH系列PLC有一组高速计数器输入,X0、X1、X2、X3,
用C251两相两输入X1=A、X2=B,
C252时X0=A、X1=B、X2=R
C253时X0=A、X1=B、X2=R、X3=S
A=A相,B=B相,R=复位,S=启动
接好线后直接写计数器程序就行,
X10为复位,X11为启动。(X0、X1接好编码器后不用管,程序中不需要再写这两个元件)
K5就是设定值,如果需要动态设定就用寄存器D--来代替,在触摸屏建立D--进行修改或在PLC加一个程序改D--值就可以。
如果你要用实际转速、距离、圈数等来设定,就要用运算程序来改变D值。
例如机械转一圈时C251数值为100,你要设定转20圈就驱动Y0输出。那么就加一个运算程序:
LD M1000 “系统运行指令”
MUL K100 D200 D210 “乘法运算”
LDP X12 “上调按扭”
INC D200 “寄存器加1指令”
LDP X13 “下调按扭”
DEC D200 “寄存器减1指令”
D200就是你设定的圈数,D210代替上面的K5(高速计数器C251的设定值),X12外部按扭每按一次上调一圈设定,X13外部按扭每按一次下调一圈设定。
我用的是ES系列的,AB两相接X0,X1,方向如何确定呢,我刚才接PLC试了下,正转反转,计数器数值都是向上递增,能不能让编码器正转,计数增加,反转,计数减少。
看你用什么计数器。如C251,方向控制由M1251控制。
其他类似。
2022-05-15 广告
至于多少圈,可以计数Z路的信号,一圈一次。也可以记录AB其中的一个,计数除以脉冲数就是圈数。比如你用了100脉冲的,计数器计数500的时候就是五圈。而且这样还可以正转+1翻转-1 的方式计数