Как колесо прокрутки Logitech обнаруживает движение?

9479
Steve Hanov

Я просто заменил колесо прокрутки в мышке, на одну минуту ремонта. Но теперь я видел то, что нельзя не заметить.

Колеса прокрутки Logitech, очевидно, функционируют с использованием магии .

Он свободно опирается на три кнопки, которые обнаруживают нажатия левой, правой и прямой вниз. Но само колесо электрически не связано ни с чем вообще. Это пластик, опирающийся на пружину.

Как мышь узнает, когда я прокручиваю? И почему это было затронуто пылью и грязью?

Редактировать: и как он определяет направление прокрутки?

Как колесо прокрутки Logitech обнаруживает движение?

81
Я не знаю, если это то же самое для этой мыши, но в прошлом, это был лазер, который светит через колесо, и внутри колеса были искры (или, как ни крути, у него есть открытые области и области которые закрыты). Если лазер был перехвачен, он мог чувствовать, что он был прокручен и в каком направлении. LPChip 6 лет назад 0
[Смотрите здесь] (http://www.explainthatstuff.com/computermouse.html). Каждая настройка мыши отличается, но на основании того факта, что картинка, которую вы разместили, показывает четкое крепление на колесе, подразумевает, что в игре находится оптический кодировщик. JakeGould 6 лет назад 2
Это может вас удивить, но старая шариковая мышь (а не современная лазерная мышь) работает точно так же, за исключением того, что она имеет 2 колеса - для направлений X и Y. Если вам удастся найти и открыть один, вы увидите, что мяч не привязан ни к чему. Вот изображение: https://38.media.tumblr.com/7d0bb30a71fba01f9c191fc48ca457f5/tumblr_inline_mlrx4d0kts1qz4rgp.jpg dr01 6 лет назад 5
Ответы охватывают способ, которым это фактически сделано; другой возможностью было бы использовать [датчик эффекта Холла] (https://en.wikipedia.org/wiki/Hall_effect_sensor), который в основном подсчитывает электрические импульсы, генерируемые магнитом в колесе, проходящем по катушке. Они часто используются в электроинструментах, автомобильных двигателях и других быстро вращающихся предметах. David Richerby 6 лет назад 2

3 ответа на вопрос

100
Kitet

Диод (вероятно, инфракрасный) и приемник, по одному с обеих сторон колеса, припаяны прямо к зеленой печатной плате. Колесо ПРОВЕРЕНО, и, поворачивая его, вы прерываете свет, идущий от диода к датчику. Там нет магии.

О, и пыль, находящаяся там, может навсегда заблокировать датчик от любого света, идущего от диода, поэтому у него нет возможности регистрировать прерывания, поэтому колесо, кажется, не работает.

местоположение передатчика и приемника света, не знаю, какой

теперь вам просто нужно объяснить, как он определяет направление прокрутки Sampo Sarrala 6 лет назад 19
* Два * рецептора, разнесенные на 1,5 спицы друг от друга, так что их схемы прерывания не совпадают по фазе друг с другом. Технический термин для этого - «квадратурный кодировщик», если вы хотите, чтобы Google это. Объединение этих двух сигналов включения / выключения дает 4 уникальных «символа», которые появляются в определенном порядке для одного направления и в обратном порядке для противоположного направления. AaronD 6 лет назад 115
У меня было больше проблем со смазкой, попадающей в спицы. ratchet freak 6 лет назад 1
Если вы упускаете старые добрые времена чистки мышиных шариков, чистка этих спиц, когда прокрутка становится скользкой, является хорошей заменой. Doug Kavendek 6 лет назад 8
Как указано, этот ответ неверен, поскольку в нем конкретно говорится, что существует особая пара оптических компонентов, хотя на самом деле, как указывает AaronD, требуются два. Редактировать, чтобы исправить это было бы просто, но в качестве * фактического * изменения только Китет должен сделать это. Chris Stratton 6 лет назад 10
@ChrisStratton Это довольно незначительная болтовня. Квадратурный энкодер, несомненно, продается как единый интегрированный компонент. [Example1] (http://www.robotshop.com/ca/en/lynxmotion-quadrature-motor-encoder-v2-cable.html), [Example2] (http://www.robotshop.com/ca/en /cytron-simple-rotary-encoder-kit.html) Mike Ounsworth 6 лет назад 3
@MikeOunsworth - это может быть один пакет, но это не единственный диод и рецептор, ложно заявленные в этой публикации. Нет никаких доказательств того, что автор ответа даже понимает, что здесь задействована квадратура, и ** здесь нет никаких заявлений о том, как различать направления **. Chris Stratton 6 лет назад 3
Что говорит о том, что Стиву не нужно было заменять целое колесо, просто выбросить пыль. Isaac Rabinovitch 6 лет назад 0
40
Alex C

Чтобы ответить на ваше редактирование и расширить превосходный комментарий AAronD, направление определяется микроконтроллером по последовательности кодов, когда колесо поворачивается.

Например, два диода при вращении колеса, скажем, против часовой стрелки, будут преобразованы в следующую последовательность:

 A B 0 0  0 1  1 1  1 0  

Для направления по часовой стрелке входы будут смещены в противоположном направлении.

Отличная графическая иллюстрация также доступна здесь: http://www.creative-robotics.com/quadrature-intro

5
Vedant

Я провел некоторое исследование и выяснил, что существует много типов колес прокрутки. Это не просто Logitech, но почти все производители мышей используют колесо прокрутки этого типа. Одно из них - оптическое колесо прокрутки. Это использует свет, падающий на фотодиод через щели в металлическом или стеклянном диске. Рефлексивные версии также существуют. Это одна из самых распространенных технологий. Оптические энкодеры очень чувствительны к пыли.

Диск оптического энкодера изготовлен из стекла или пластика с прозрачными и непрозрачными участками. Матрица источника света и фотодетектора считывает оптическую схему, которая определяется положением диска в любой момент времени. Код Грея часто используется. Этот код может быть считан управляющим устройством, таким как микропроцессор или микроконтроллер, для определения угла вала.

Абсолютный аналоговый тип создает уникальный двойной аналоговый код, который можно перевести в абсолютный угол вала

Logitec не использует код Грея, он использует простую квадратурную модуляцию. Это дает только угловую скорость, а не положение. Mark 6 лет назад 0
@Mark - quadrature * - это * 2-битный серый код, но да, учитывая, что вокруг колеса всего два бита и много циклов, вы правы, что он дает только инкрементальный результат, а не угол, как заявлено. Chris Stratton 6 лет назад 0
@ Марк спасибо, я изучу вопрос и расстрою ответ. еще раз спасибо Vedant 6 лет назад 0

Похожие вопросы