增量式光电编码盘误差讨论

[复制链接]
20211|61
DownCloud 发表于 2011-12-4 23:40 | 显示全部楼层
上下沿中断倍频,lz的方法对于没有上下沿中断的单片机不好用啊。
xhtxzxw 发表于 2011-12-5 01:11 | 显示全部楼层
关键: 上升沿和下降沿都要考虑.
硬件方式:
很多ARM芯片的定时器有编码器模式,仔细分析其工作原理,应该是上升沿和下降沿都计数了,我正在使用的STM32就这样的.计数精确, 与编码器EnDat2接口返回的数据一致.(我使用的编码器有这个接口)

纯软件方式:
如果使用软件方式,计数规则是: A相上升沿B相低或A相下降沿B相高,脉冲计数均增1;A相上升沿B相高或A相下降沿B相低,脉冲计数均减1.这样就不会有问题了,而且脉冲计数值增加了1倍.精度提高了.
DownCloud 发表于 2011-12-5 23:55 | 显示全部楼层
软件四倍频也行。不用中断也可。
ahamao 发表于 2012-3-31 09:07 | 显示全部楼层
是2倍频方法啊 21# 李冬发
ahamao 发表于 2012-3-31 09:09 | 显示全部楼层
你没有电平跳变中断吗? 24# yewuyi
24201096 发表于 2012-4-2 10:18 | 显示全部楼层
新人学习了
zhangli019 发表于 2012-4-2 14:18 | 显示全部楼层
学习下,看看
望断云山 发表于 2012-4-2 17:37 | 显示全部楼层
好像只是在正转和反转之间有0.5的计数的误差,而这个误差貌似不会累积吧
Cortex-M0 发表于 2012-4-3 11:33 | 显示全部楼层
误差是永恒的,但一般使用你感觉不到,其正反转定位误差的大小,等于换向时,电平变换时的微小位置差及时延,分辨率越高的编码器影响越大,一般只能靠合理的结构设计,提高驱动芯片的最大工作频率来改善。
Cortex-M0 发表于 2012-4-3 11:37 | 显示全部楼层
好像只是在正转和反转之间有0.5的计数的误差,而这个误差貌似不会累积吧
望断云山 发表于 2012-4-2 17:37



这是你的硬件设计有问题,一般正转和反转换向时,误差不会大于 1/10。
临海听潮 发表于 2013-8-4 23:08 | 显示全部楼层
正反转时的误差还是没有解决吧?
yangbing2013 发表于 2013-9-26 18:26 | 显示全部楼层
留作记号
景天飞雪 发表于 2015-1-13 11:24 | 显示全部楼层
你好,想请问编码器如何降低计数误差。
利用您所说的,进入中断后,连续读取3次电平值,判断有两个或三个值相同就将该值作为此次的电平值,否则不对本次计数。但是并没有改善
景天飞雪 发表于 2015-1-13 11:27 | 显示全部楼层
添加您好友,但是没有权限给您留言,不知可否加您QQ请教?
景天飞雪 发表于 2015-1-14 18:04 | 显示全部楼层
最近一直在学习,噪声老大了
menfiss 发表于 2015-1-14 18:10 来自手机 | 显示全部楼层
本帖最后由 menfiss 于 2015-1-14 18:13 编辑

理论上不会有累积误差,实际要麻烦点,比如脉冲边缘不稳定,采样速率过低,没有同时对两相采样等。用软件可以检测一下两相的同时变动,代表错误。
如果用中断方式,最好能上升沿下降沿都触发,而且中断处理要及时,避免丢信号。
 楼主| yewuyi 发表于 2015-1-16 08:23 | 显示全部楼层
正反转丢步的问题可通过倍频采样解决,也就是信号采样频率要远高于AB相的信号频率。

复杂电磁环境下干扰信号的问题需要通过多次读数等手段解决。

你首先要确定在实验室环境下,你的设计在多次正反转后是否会丢步?如果有丢步,那一般就是没倍频的问题了吧。
laoxu 发表于 2015-1-16 17:18 | 显示全部楼层
景天飞雪 发表于 2015-1-13 11:24
你好,想请问编码器如何降低计数误差。
利用您所说的,进入中断后,连续读取3次电平值,判断有两个或三个值 ...

A,B相输入,要加施密特电路,否则,极易引入噪声,多次连续读取电平,根本无任何效果~~~
景天飞雪 发表于 2015-1-20 09:57 | 显示全部楼层
如图,噪声比较严重的情况,能否仅用软件处理的方式,滤去噪声准确计数?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
景天飞雪 发表于 2015-1-20 09:59 | 显示全部楼层
还请给位大牛指点,仅用软件处理的方法,去除上图噪声,降低计数误差。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部
0