Logitech滚轮如何检测运动?


80

我只是用鼠标替换了滚轮,需要一分钟的维修时间。但是现在我已经看到了一些看不见的东西。

罗技滚轮显然是用魔术来运转的。

它自由地位于三个按钮上,可检测到左,右和笔直按下的情况。但是,轮子本身并未与任何东西电气连接。它是塑料弹簧上的。

滚动时鼠标如何知道?为什么它受到灰尘和黑灰的影响?

编辑:它如何检测到您正在滚动的方向?

在此处输入图片说明


我不知道这对鼠标是否相同,但是在过去,它是激光照射在滚轮上,滚轮内部有火花(或者无论怎么说,它都有开放的区域和已关闭)。如果激光被拦截,则可以感觉到它在哪个方向滚动。
LPChip

2
看这里。每种鼠标的设置都是不同的,但是基于您发布的图片表明方向盘上的安装位置清晰的事实,这意味着在玩光学编码器。
JakeGould

5
这可能会让您感到惊讶,但是旧的球形鼠标(不是现代的激光鼠标)的工作方式完全相同,不同之处在于它有2个轮子-用于X和Y方向。如果您设法找到并打开一个球,您会看到球没有附着在任何东西上。这是一张图片:38.media.tumblr.com/7d0bb30a71fba01f9c191fc48ca457f5/…–
dr01

2
答案涵盖了实际操作的方式;另一种可能性是使用霍尔效应传感器,该传感器基本上可以计算车轮上通过线圈的磁铁中产生的电脉冲。这些通常用于电动工具,汽车发动机和其他快速旋转的事物中。
David Richerby

Answers:


100

车轮的两侧都有一个二极管(可能是红外线)和一个接收器,直接焊接到绿色PCB中。拨动车轮,并转动它会中断从二极管传播到传感器的光。那里没有魔术。

哦,那里的灰尘会永久地阻止传感器接触来自二极管的任何光线,因此它无法记录中断,这就是轮子似乎无法工作的原因。

光发射器和接收器的位置,不知道哪一个


19
现在你只需要解释它是如何检测所滚动的方向
桑普Sarrala

116
间隔为1.5个辐条的两个接收器,使它们的中断方式彼此异相90度。quadrature encoder如果您想用谷歌搜索,请用技术术语来表示。将这两个开/关信号组合在一起,会得到4个独特的“符号”,它们在一个方向上以特定顺序出现,而在相反方向上以相反顺序出现。
亚伦

8
如果您错过了清理鼠标滚珠的美好时光,那么当滚动变得打滑时清理这些辐条是一个很好的替代方法。
Doug Kavendek '17

10
如前所述,这个答案是不正确的,因为它特别指出存在一对光学组件,而实际上正如AaronD所指出的那样,需要两个。编辑修复这将是简单的,但作为实际变化只Kitet应该做到这一点。
克里斯·斯特拉顿

3
@ChrisStratton这是一个很小的错误。正交编码器无疑是作为单个集成组件出售的。Example1Example2
Mike Ounsworth

40

为了回答您的编辑并扩展AAronD的出色评论,转动方向盘时,微控制器通过代码序列感测方向。

例如,两个二极管,当转动车轮时,逆时针旋转将转换为以下顺序:

    A B
    0 0 
    0 1 
    1 1 
    1 0 

对于顺时针方向,输入将在相反方向移动。

此处也提供了出色的图形插图:http : //www.creative-robotics.com/quadrature-intro


5

我进行了一些研究,发现滚轮类型很多。不仅是罗技(Logitech),而且几乎所有鼠标制造商都在使用这种类型的滚轮。它使用通过金属或玻璃圆盘中的缝隙照射到光电二极管上的光。反射版本也存在。这是最常见的技术之一。光学编码器对灰尘非常敏感。

光学编码器的光盘由玻璃或塑料制成,具有透明和不透明的区域。光源和光电检测器阵列可随时读取光盘位置所产生的光学图案。经常使用格雷码。该代码可以由控制设备(例如微处理器或微控制器)读取,以确定轴的角度。

绝对模拟类型产生唯一的双重模拟代码,可以将其转换为轴的绝对角度


Logitec不使用格雷码,它使用简单的正交调制。这仅给出角速度,而不是位置。
标记

@Mark-正交 2位的格雷码,但是是的,考虑到车轮上只有两位和许多周期,您是正确的,它只给出增量结果,而不是所要求的角度。
克里斯·斯特拉顿

@Mark谢谢,我将研究问题并解决问题。再次感谢
Vedant
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.