光电式绝对值编码器的使用与故障处理方法详解
创作时间:
作者:
@小白创作中心
光电式绝对值编码器的使用与故障处理方法详解
引用
网易
1.
https://m.163.com/dy/article/JE26F24E05569TMB.html
光电式绝对值编码器是一种高精度测量设备,广泛应用于机械位置、角度等参数的测量与控制。本文将系统讲解光电式绝对值编码器的使用方法以及乱码故障的处理方法。
安装
机械安装
机械安装方法比较简单,只需让编码器的轴与相应机构的主转动轴实现同步动作即可,但是编码器属于贵重物品,安装不当可能损坏或数据混乱,所以应请专业的机械安装人员按以下几点要求安装。
- 必须确保编码器的转动轴不来回扭动,如果拧着劲转会损坏编码器,所以要仔细调整同轴度,同时确保机械本身转轴的安装精度。
- 对于只在固定小区域动作的机构(如俯仰、回转机构),编码器最好先于一个减速器连接,减速器须算好速比,确保编码器做单圈运动,可以为编写程序提供好处(后面还会讲到这点)。
- 与编码器轴连接不要采用柔性较大的轴。柔性轴可以保护编码器,但会引起数据丢失。
- 必须保证所有连接紧固牢靠。装好后要将各个螺栓检查一遍,确认无松动。(编码器常见的几种安装形式见下图)
与可编程控制器(PLC)模块的线路连接
比较知名的可编程控制器如ROCKWELL、欧姆龙、安川等都有可与编码器连接的模块,并提供连接线路图。编码器本身也有详细的接线说明书。需要说明的是,编码器与控制器模块的位数应该匹配,编码器有10位的,计数范围0~1023.12位的计数范围0~4095.如选用12位的编码器,而只用了10位就会造成浪费(也可以使用)。
程序编写
因各种控制器所用语言不同,所以首先叙说一下编程思路。
- 定义编码器输入变量,设为ctrl。
- 0位校正,根据工作需要将机构动作至0位,如果要求严格,采用精位仪、水平仪精确定位,然后读出ctrl值,记为a。
- 求中间变量ctr2=ctrl+n*b-a
其中n-编码器转的圈数(后面将详细说明)。
b-编码器单圈计数量,若10位b=1024.
12位b=4096 - 求n值,这是关键一步,以10位编码器为例,方法如下:首先在机构上装—0位校正开关,将开关信号送给PLC,开关接通后(机构在0位),n=0;让机构动作,编码器读数到1023或0时会跳到0或1023.现在我们需一种算法检测到这种数值跳跃,跳一次让n=n+1或n-1.我们可以利用PLC控制器扫描程序段时的前后时间差来检测。
先借助一变量ctr3,ctr1→变量ctr3;
ctrl-ctr3>1000时,n=n-1;
ctrl-ctr3<1000时,n=n+1;
说明:将ctrl传给ctr3.ctr3在时间上比ctrl滞后,所以ctrl始终不等于ctr3.当ctr1从1023跳到0时,ctr3=1023.此时ctrl-ctr3<1000.n=n+1.式子中1000理论上只要是小于1023的数即可,但如取得偏大(如1022),就可能因外部机械上的原因,使检测失灵。
上面曾提到算好减速器的速比有利于编程。因为对于一些只在固定区域段动作的机构(如俯仰、回转等),让编码器只做单圈动作,n始终为0.使程序简化,也降低了乱码故障的发生。 - 根据实际情况在程序中确定输出值,设为outpt=ctr2c
系数c根据实际测量值确定。例如回转机构转到0度时,ctr2=a,将回转机构转到90度,(用精位仪测量),读出ctr2的值,设为d,c=90/(d-a),多测量几组角度,取平均值,这样结果更准确。
(安川公司的可编程控制器编制的编码器程序如下):
程序说明:DW00001=00435为0位时编码器读数,MW05064相当于ctrl,DF00010相当于ctr2.-9.160310E-002=-0.09160310为科学计数法,相当于系数c,DW00015相当于ctr3.DW00016=DW000021024.而DW00002就是n,IBl20A6为0位校正开关送给PLC的信号。MF01310为输出值output。DB000005为脉冲信号,表示DB000000接通一次,DW00002+1.
乱码故障的排除
编码器最常见的故障就是乱码,遇到这种情况应从以下几方面进行分析。
- 机械结构是否连接紧固,尤其注意许多编码器本身自带一套调节速比的齿轮,打开编码器箱体,将这些齿轮紧固好,注意要保持同轴度,以免损坏编码器,紧固完毕后重新进行0位校正。
- 如问题仍存在,打开编码器接线盒,观察数据线对应的信号灯是否有常亮或常灭的,若有这种情况,检查接线并校对,若仍不能解决问题,说明编码器本身有故障,联系厂家修理。
- 检查PLC编码器输入模块是否完好,可以换一块好的试试。
- 程序中n值检测不灵敏,如ctrl-ctr3>1020.式子中1020偏大,不易被检测出来,不妨改为1000试试。但如果取得过小,如200.就可能在任何点都有机会符合条件,造成n连续增加,从而造成乱码。如果ctrl→ctr3语句放在ctrl-ctr3语句的后面,检测就更加灵敏,原因是程序循环逐行扫描方式延长了两条语句间的扫描时差。
- 如果0位校正开关误动作,就会使n值变0.检查机构动作区域内有无引起校正开关误动作的东西,将其去除。
- 机械本身转轴缺润滑油或轴安装精度有问题,导致轴转动不连续,编码器数据出现跳跃,如果正好跳过换圈点,n值本应+1或-1.但实际没有变化,导致出现乱码。
- n值算法有问题。笔者遇到过一种因程序算法问题引起的乱码故障,算法如下:1021=ctrl=1023.if正转,n=n+1;0=ctrl=2.if反转,n=n -1.这种算法似乎想靠机械本身的惯性冲过1021~1023与0~2这段区域,因为ctrl=1022时,如果n=n+1.就会造成瞬列数据突然加大,冲过这段区域后又恢复正常。这种算法还存在一个更大的问题:在1021~1023区域段内,如果程序扫描不止一次,n就不会只加1了。
热门推荐
六种化解婚姻不顺的有效方法 如何改善婚姻不顺的局面
小狐狸的四季治愈时光
让世界遗产“活”起来:中国世界遗产旅游的现状与未来
北京中轴线:七百年古都的脊梁
如何消除恼人黑眼圈?学会5个黑眼圈改善方法,轻松做好眼周保养
卢比替定:小细胞肺癌二线治疗的新选择
Excel表格中出现乱码怎么办?多种实用解决方案帮你轻松应对
Word表格制作入门:从创建到美化全流程详解
3D打印在医疗领域的革新应用与前景展望
求求别买贵了!学会看被子的水洗标,避开大部分雷!
“哪吒打工人心声”引爆社交媒体,《哪吒2》票房再创新高!
战力断崖式下降的明军,在投降清朝后为什么突然变强了?
一年跑30000公里正常么
人类与狗狗三种关系:中英双语解析及深入探讨
恋恋萌可与丘比特:动画里的神话密码
南方人的冬日美味:腊肉炒制秘籍
《哪吒2》中的广德文化元素大揭秘!
无患子种子种植指南:扒皮与否的科学选择
邓丽君和周杰伦:华语乐坛的传承与创新
灵魂伴侣不是等待,而是共同成长
网站用户界面设计的创新与实践探索提升用户体验的关键要素
中国传媒大学:引领北京文化走向世界舞台
武功山周末赏晚霞攻略:金顶观日落,邂逅最美天空
徐霞客打卡地:武功山冬日云海日出
徐霞客眼中的武功山:四季美如画
人到中年,真正的夫妻关系维护,靠的不是爱,是这六样东西
一天排便3次正常吗?
常喝酸奶对身体往往有3大好处,而想要效果更加倍,还需牢记这3点
十大适合老人家喝的牛奶推荐 看望老人买什么牛奶合适
单味降压中药详解