首页 > 范文大全 > 正文

浅谈单圈绝对值编码器在多圈计数中的应用

开篇:润墨网以专业的文秘视角,为您筛选了一篇浅谈单圈绝对值编码器在多圈计数中的应用范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:工业自动控制工程中,有大量的直线位移和角位移需要通过电信号来加以处理,编码器便是实现这一功能的最主要设备。但由于各类型编码器价位差别很大,实际应用中选型不当既容易造成使用不合理,也会造成浪费。本文主要探讨单圈绝对值编码器多圈过程控制中的应用。

关键词:单圈绝对值编码器格雷码 多圈计数

中图分类号:C939文献标识码: A

一.简述

编码器(encoder)是一种将旋转位移转换成一串数字脉冲信号的旋转式传感器,这些脉冲能用来控制角位移,如果编码器与齿轮条或螺旋丝杠结合在一起,也可用于测量直线位移。编码器产生电信号后由数控制置CNC、可编程逻辑控制器PLC、控制系统等来处理。这些传感器主要应用在下列方面:机床、材料加工、电动机反馈系统以及测量和控制设备。

二.编码器分类

按照工作原理编码器一般分为增量型与绝对型,它们存着最大的区别:增量式编码器是将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小。在增量编码器的情况下,位置是从零位标记开始计算的脉冲数量确定的,而绝对型编码器的位置是由输出代码的读数确定的。在一圈里,每个位置的输出代码的读数是唯一的;绝对式编码器的每一个位置对应一个确定的数字码,因此它的示值只与测量的起始和终止位置有关,而与测量的中间过程无关。因此,当电源断开时,绝对型编码器并不与实际的位置分离。如果电源再次接通,那么位置读数仍是当前的,有效的;不像增量编码器那样,必须去寻找零位标记。

绝对型编码器又可分为单圈编码器和多圈编码器。多圈绝对式编码器中,生产厂家运用钟表齿轮机械的原理,当中心码盘旋转时,通过齿轮传动另一组码盘(或多组齿轮,多组码盘),在单圈编码的基础上再增加圈数的编码,以扩大编码器的测量范围,这样的绝对编码器就称为多圈式绝对编码器,它同样是由机械位置确定编码,每个位置编码唯一不重复,而无需记忆。多圈编码器另一个优点是由于测量范围大,实际使用往往富裕较多,这样在安装时不必要费劲找零点,将某一中间位置作为起始点就可以了,而大大简化了安装调试难度。

三.编码规则

绝对值编码器一般采用格雷码编码方式,在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码,另外由于最大数与最小数之间也仅一位数不同,即“首尾相连”,因此又称循环码或反射码。在数字系统中,常要求代码按一定顺序变化。例如,按自然数递增计数,若采用8421码,则数0111变到1000时四位均要变化,而在实际电路中,4位的变化不可能绝对同时发生,则计数中可能出现短暂的其它代码(1100、1111等)。在特定情况下可能导致电路状态错误或输入错误。使用格雷码可以避免这种错误。

格雷码属于可靠性编码,是一种错误最小化的编码方式。因为,虽然自然二进制码可以直接由数/模转换器转换成模拟信号,但在某些情况,例如从十进制的3转换为4时二进制码的每一位都要变,能使数字电路产生很大的尖峰电流脉冲。而格雷码则没有这一缺点,它在相邻位间转换时,只有一位产生变化。它大大地减少了由一个状态到下一个状态时逻辑的混淆。由于这种编码相邻的两个码组之间只有一位不同,因而在用于方向的转角位移量-数字量的转换中,当方向的转角位移量发生微小变化(而可能引起数字量发生变化时,格雷码仅改变一位,这样与其它编码同时改变两位或多位的情况相比更为可靠,即可减少出错的可能性。

格雷码与二进制码的转换:从左边第二位起,将每位与左边一位解码后的值异或,作为该位解码后的值(最左边一位依然不变)。依次异或,直到最低位。依次异或转换后的值(二进制数)就是格雷码转换后二进制码的值。

用公式表示:

(G:格雷码,B:二进制码)

原码:p[n:0];格雷码:c[n:0](n∈N);编码:c=G(p);解码:p=F(c)。

四.实现方法

单圈编码器价格低,在实际应用中使用广泛,但由于其测量范围小,需要在安装时调整零点,以便于在使用过程中不允许编码器旋转跨越零点,即编码器只允许在360度范围内选择,大大降低了其使用范围。但在使用过程中,往往需要编码器转动范围超过一圈,甚至几圈,考虑到成本及使用要求,这就需要对编码器编码进行过圈处理。

以10位单圈绝对型编码器为例,编码范围为0―1023,共1024个编码。传统的做法是以PLC的程序扫描周期(通常为50-100ms)为时间基准,在每一个扫描周期内,将编码器编码X与1023做比较,当X=1023时,便认为此时编码器已过圈,这样就有两个问题:

1.当编码器转动过快时,容易造成编码的丢失,即程序接收不到1023这个码值,从而无法正确判断过圈。

2.当编码器恰恰转动到1023这个码值而停止时,会造成编码器过圈的错误信号。

改进后的编码处理,以可编程逻辑器循环扫描周期为时间基准,即当前周期取一个编码A,然后把A与上一周期的编码B做比较,当B-A>=1时,编码器不过圈;当B-A

L MD 0

T MD 4

L MD 4

L MD 8

-R

T MD12

L MD 4

T MD 8

A(

L MD12

L 1.000000e+000

>R

)

FPM 20.0

JNB _001

L MD16

L 1.000000e+000

-R

T MD16

_001: NOP 0

A(

L MD12

L 1.000000e+000

)

FPM 20.1

JNB _002

L MD16

L 1.000000e+000

+R

T MD16

_002: NOP 0

L MD16

L 1.024000e+003

*R

T MD21

ANOV

SAVE

CLR

A BR

= L0.0

A L0.0

A(

L MD21

L 0.000000e+000

>R

)

JNB _003

L MD21

L MD 4

+R

T MD25

_003: NOP 0

A L0.0

A(

L MD21

L 0.000000e+000

)

JNB _004

L MD21

L MD 4

+R

T MD25

_004: NOP 0

A L0.0

A(

L MD21

L 0.000000e+000

==R

)

JNB _005

L MD21

L MD 4

+R

T MD25

_005: NOP 0

程序中,MD0为编码器转化后的二进制读数,MD4为当前周期读数,MD8为上一周期读数,MD16为圈数计数,MD25为计入圈数累计后的编码器读数。

五.结束语

在实际工业控制过程中,通过PLC编程,将单圈绝对值编码器作为多圈绝对值编码器只用的方法,给需要选用多圈绝对值编码器的设计人员提供了一个新的设计思路。经过在项目中的实际应用效果来看,完全可以代替多圈编码器,从而达到既实现了功能,又节约了成本的效果。

参考文献

[1]殷华文,朱清慧,可编程序控制器及工业控制网络[M]. 西安:西安地图出版社,2001.

[2]廖常初,PLC编程及应用[M].北京:机械工业出版社,2004.

[3]田宇,伺服与运动控制系统设计.北京:人民邮电出版社[第1版] ,2010年5月1日.

[4]廖常初,S7-300/400 PLC应用技术.北京:机械工业出版社[第3版],2012年1月1日.

[5]秦绪平,张万忠.西门子S7系列可编程控制器应用技术.北京:化学工业出版社,2011.