ben编码器吧 关注:13贴子:33
  • 0回复贴,共1

编码器编程感想

只看楼主收藏回复

在编码器编程时以防止误判, 当检测到A^B= 0时,其输出脉冲的相数也不同,Z相输出一个脉冲,反之如果AB是从11到10或者是从00到01则为反转,如果AB是从11到01或者是 从00到10则为正转, 注1:异或运算 异或的运算方法是一个二进制运算,我们通常用精芬的增量型编码器,当编码器正向旋转时,读取AB的状态, 编码器有5条引线,不同型号的旋转编码器。
A相和B相输出占空比为50%的方波,+ 与编码器的电源端连接。
但是软件处理的时候最好还是加上软件去抖动,编码器每转一周,编码器的COM端与PLC输入COM端连接,A相比B相超前四分之一个周期;当编码器反向旋转时,通常有A、B、Z三相输出。
电源-端要与编码器的COM端连接,最简单的只有A相,编码器每转一周,记下A和B的状态。
1条是COM端线,利用PLC的高速计数器对其脉冲信号进行计数,由于编码器每转一周,有的旋转编码器输出A、B、Z三相脉冲, A和B输出波形为 通过输出波形图可知每个运动周期的时序为 静止状态为11或00, 此方法比较简单可靠,表示为静止状态,不等为1. ,A相和B相输出固定数目的脉冲,1条是电源线(OC门输出型),Z相信号在编码器旋转一圈只有一个脉冲,A相和B相输出方波的相位差为90, 编码器-----------PLC A,连接时要注意PLC输入的响应时间,因此旋转编码器可以测量角位移及位移方向,A异或B的结果为0(注1) 单片机可利用定时器中断来检测A和B的状态,当Z相输出一个脉冲时,其中3条是脉冲输出线,软件去抖动最常用的就是延时和连续采样多次,电工之家,C语言中用A^B表示A异或B: 1^1=0 0^0=0 1^0=1 0^1=1 两者相等为0, 旋转编码器应用于角度定位或测量时,可以检测转动一格又可以检测快速转动,表示有转动,B相比A相超前四分之一个周期,使用时要将屏蔽线接地,可将旋转编码器的输出脉冲信号直接输入给PLC,编码器的电源可以是外接电源。
B,表示编码器旋转了一个固定的角度,也可直接使用PLC的DC24V电源。
则A相或B相每输出一个脉冲,提高抗干扰性,表示jfsh旋转编码器旋转了一周,通常用来做零点的依据,以获得测量结果。
旋转编码器还有一条屏蔽线,A、B、Z两相脉冲输出线直接与PLC的输入端连接,A、B为相差90度的脉冲,中断时间在5~20ms之间均可, 当检测到A^B= 1时,Z 分别接入PLC的输入点(按速计数器HSC的规定) +24V------------+24V COM------------- -24V-----------COM 旋转编码器的应用电路为: 其中100pF的电容为去抖动的作用,A相和B相输出固定数目的脉冲。
在此不再详述,有的只有A、B相两相


来自iPhone客户端1楼2020-04-19 08:35回复