旋转编码器的编程思路
出处:维库电子市场网 发布于:2017-05-09 14:00:31
我们通常用的是增量型编码器,可将旋转编码器的输出脉冲信号直接输入给PLC,利用PLC的高速计数器对其脉冲信号进行计数,以获得测量结果。不同型号的旋转编码器,其输出脉冲的相数也不同,有的旋转编码器输出A、B、Z三相脉冲,有的只有A、B相两相,简单的只有A相。
编码器有5条引线,其中3条是脉冲输出线,1条是COM端线,1条是电源线(OC门输出型)。编码器的电源可以是外接电源,也可直接使用PLC的DC24V电源。电源“-”端要与编码器的COM端连接,“+ ”与编码器的电源端连接。编码器的COM端与PLC输入COM端连接,A、B、Z两相脉冲输出线直接与PLC的输入端连接,A、B为相差90度的脉冲,Z相信号在编码器旋转一圈只有一个脉冲,通常用来做零点的依据,连接时要注意PLC输入的响应时间。旋转编码器还有一条屏蔽线,使用时要将屏蔽线接地,提高抗干扰性。
编码器-----------PLC
A,B,Z 分别接入PLC的输入点(按速计数器HSC的规定)
+24V------------+24V
COM------------- -24V-----------COM
旋转编码器的应用电路为:
A和B输出波形为
通过输出波形图可知每个运动周期的时序为
静止状态为11或00,A异或B的结果为0(注1)
单片机可利用定时器中断来检测A和B的状态,中断时间在5~20ms之间均可。
当检测到A^B= 0时,表示为静止状态,记下A和B的状态。
当检测到A^B= 1时,表示有转动,读取AB的状态,如果AB是从11到01或者是
从00到10则为正转,反之如果AB是从11到10或者是从00到01则为反转。
此方法比较简单可靠,可以检测转动一格又可以检测快速转动。
注1:异或运算
异或的运算方法是一个二进制运算,C语言中用A^B表示A异或B:
1^1=0
0^0=0
1^0=1
0^1=1
两者相等为0,不等为1.
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- 埃赛力达推出OmniCure风冷式UVC LED系统,助力提升表面固化性能2026/7/7 15:14:05
- 1~26 串电池模拟器产品介绍2026/5/15 15:06:18
- 电磁频谱管控系统由什么组成的呢2025/9/5 17:11:49
- 深入解析:LDO 的 ADJ 引脚串电容到地的用途2025/8/7 15:33:42
- 一文详解AUTOSARMCAL模块2025/7/22 17:09:59









