旋转编码器的一般应用
现在的工控行业中,编码器的应用越来越广泛,故在此讲述一下旋转编码器的一般应用,欢迎大家踊跃提意见,如有疑问也欢迎大家与我联系。
l 旋转编码器的一般介绍
其主要有两种,一种是增量型,另一种是绝对型。增量型的特征是只有在旋转期间会输出对应旋转角度脉冲,停止是不会输出。它是利用计数来测量旋转的方式;价格比较便宜。绝对型的的特征是不论是否旋转,可以将对应旋转角度进行平行输出的类型,不需要计数器可确认旋转位置;它还有不受机械的晃动或震动以及开关等电器干扰的功能,价格贵。在选择使用时,可参考以下几点。包括成本、分辨率、外形尺寸、轴负荷及机械寿命、输出频率、环境、轴旋转力矩、输出回路等等。
l 应用举例
它一般应用在对机器的动作控制。我那一个实例详细说明一下。我刚刚改造一台机器,机器在运行过程中先要对工件进行处理,然后加工。它以前是用光电开关做的,机器的电路就比较复杂,而且成本增加,维护调校麻烦。于是我就对机器的电路进行改造,主要是用一个编码器来代替以前的光电开关。此套系统由OMRON的PLC与编码器组成。下面是PLC程序。
1. I/O 及数据
检测是否有工件开关:00007 变频器零速输出:00008
处理工序1:开(DM100) 关(DM101) 10100
处理工序2:开(DM102) 关(DM103) 10101
处理工序3:开(DM104) 关(DM105) 10102
加工工序1:开(DM106) 关(DM107) 10103
加工工序2:开(DM108) 关(DM109) 10104
加工工序3:开(DM110) 关(DM111) 10105
2. PLC程序
Name="Initialize"
[STATEMENTLIST]
LD 253.13 //On
OUT TR0
OUT 252.00 //Encoder software reset
TIM 000 #0100 //System initialize delay
AND 253.15 //PLC First scan on
INI 000 002 DM0000 //Control Encoder mode
LD TR0
AND TIM000
PRV 000 000 DM0000 //Encoder PV read
DIV DM0000 #0004 DM0002 //1440 Change 360
BCMP DM0002 DM0100 HR01 //Block compare for operation
Name="Shift"
[STATEMENTLIST]
LD 000.07 //Part on
LD HR01.08 //Shift degree
LD 253.14 //Off
SFT HR60 HR62 // the rightmost word of the shift register
Name="Treat 1"
[STATEMENTLIST]
LD TIM000
AND HR60.08 //Shift to action 1 operate position
AND NOT 00008 //Inverter zero speed output
AND HR01.00 //Degree of action 1
OUT 101.00 //Output Treat 1
Name=" Treat 2"
[STATEMENTLIST]
LD TIM000
AND HR60.10 //Shift to action 2 operate position
AND NOT 00008
AND HR01.01 //Degree of action 2
OUT 101.01 //Output Treat 2
Name=" Treat 3"
[STATEMENTLIST]
LD TIM000
AND HR60.15 //Shift to action 3 operate position
AND NOT 00008
AND HR01.02 //Degree of action 3
OUT 101.02 //Output Treat 3
Name="Process 1"
[STATEMENTLIST]
LD TIM000
AND HR62.03 //Shift to Print 1 operate position
AND NOT 00008
AND HR01.03 //Degree of print 1
OUT 101.03 //Output Process 1
Name=" Process 2"
[STATEMENTLIST]
LD TIM000
AND HR62.05 //Shift to Print 2 operate position
AND NOT 00008
AND HR01.04 //Degree of print 2
OUT 101.04 //Output Process 2
Name=" Process 3"
[STATEMENTLIST]
LD TIM000
AND HR62.08 //Shift to Print 3 operate position
AND NOT 00008
AND HR01.04 //Degree of print 3
OUT 101.04 //Output Process 3