数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 6170|回复: 31

[Arduino] 自制旋转编码器,效果较好

[复制链接]
发表于 2020-2-11 18:11:18 | 显示全部楼层
巧了,我前段时间自制了一个直线编码器,不过用的是光电传感器。你这种好像是机械开关。

本帖子中包含更多资源

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

x

打赏

参与人数 1家元 +5 收起 理由
人艰不拆了 + 5

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2020-2-12 10:59:41 | 显示全部楼层
水表君 发表于 2020-2-11 13:04
软件处理,做到不丢步可以用定时器,可以用中断,但是有的程序对时序要求严苛时就不能开中断。所以有的单 ...

不是中断的问题。我就是用了两个中断来采集编码器的脉冲也会丢步。

编码器每跳一格,产生两个脉冲。然后比较这两个脉冲的前后顺序,来判断方向。是这样吗?

你看我12楼自己做的编码器,有时候两个脉冲才触发了一个,就换向运行了,来回多次之后,就会丢步。

我只好在终点位置放了个限位开关,每次归位之后,校正实际位置和软件位置的误差。

打赏

参与人数 1家元 +5 收起 理由
人艰不拆了 + 5

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2020-2-12 13:44:27 | 显示全部楼层
本帖最后由 fryefryefrye 于 2020-2-12 13:49 编辑
水表君 发表于 2020-2-12 13:39
编码器就是判断两个引脚的先后顺序达到左转右转的目的。
你那个编码器我没看出来,好像是红外传感器配合 ...

我自己做的也是这个原理啊。用了两个红外传感器并排放,传感器之间的间距比光栅大了一点。这样光栅每移动一格,一样产生两个先后顺序的脉冲。可以用来判断左右,也可判断格子数量,从而推算出当前位置。

但是我这个有个问题,移动光栅没有任何机械阻尼限制,会存在触发了一个脉冲之后反向运行了,这一个不成对的脉冲,我怎么处理呢?只能丢掉了。

成品的旋转编码器用机械的方法保证了每次必然跳一整格,所以必然会触发两次脉冲。如果有人手贱,非要拧到两格之间,就往回拧,照样有我说的问题。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-6-29 00:23 , Processed in 0.234000 second(s), 10 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表