Валкодер из "мыши


Дмитрий ТЕЛЕШ, г. Минск Белоруссия

Описание конструкции компьютер ной "мыши" и одного из вариантов изготовления из нее валкодера были опубликованы в статье "Валкодер из "мыши" ('Радио1, 2002 г., № 9 с 64) Мыши" с такой конструкцией датчика у нас встречаются редко В моей конструкции валкодера использованы датчик более распространенной "мыши" "Genius' и переменный резистор СПЗ-4.

С переменного резистора надо снять металлическую крышку затем вынуть вал и демонтировать с него

бегунок. Текстолитовые шайбы находя щиеся на валу нам еще пригодятся а бегунок нет После этого зачистим кончик вала (на котором сидел бегунок) надфилем и вставим вал обратно в корпус Далее надо надеть на вал текстолитовье шайбы и припаять к нему две П-образные скобы из медной проволоки диаметром 1 мм так чтобы получи лось 'гнездо" для вала датчика Вал переменного резистора должен иметь ход вдоль собственной оси не более 0 5 мм

Теперь под отовим датчик В большинстве "мышеи" используются один

светодиод и сдвоенный фототранзистор на каждую координату Выпилим часть платы со светодиодом и сдвоен ным фототранзистором и с помощью скоб из луженого медного провода диаметром 0,8...1 мм прикрепим пайкой печатную плату к корпусу переменного резистора Вал датчика вынем из торцевых подшипников укоротим длинную часть до размера выпилен ной платы и вставим в "гнездо" из П-образных скоб на валу переменного резистора Немного изгибая "гнездо", устраняем биения вала датчика

и окончательно фиксируем их взаимное положение клеем.

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

Cxema

Хотелось бы также обратить внимание на узел выделения сигнала направления вращения описанный в указанной выше статье и упрощенно изображенный на рис. 2.

Cxema
Рис.2.

Он обладает одним достоинством — простотой. Недостаток становится понятен если рассмотреть влияние "дребезга" сигнала от датчика 1 При "дребезге" сигнал направления остается неизменным а импульсы "дребезга" беспрепятственно проходят на схему счетаю. Причин "дребезга" может быть несколько вибрация датчика смена направления вращения и др.

Устранить этот недостаток а также увеличить чувствительность валкодеpa (число импульсов на один оборот вала) в четыре раза за счет более полного использования сигналов датчиков можно, анализируя не только текущее, но и предыдущее состояние датчиков. Зависимость направления вращения вал кодера от текущего и предыдущего состояний датчиков дана в таблице. При подключении валкодера непосредственно к микроконтроллеру эта проблема решается небольшим усложнением программы опроса датчиков.

Текущее состояние

Предыдущее состояние

Датчик

Датчик

Датчик

Датчик

Счет

1

2

1

2

0

0

0

0

0

0

0

0

1

+1

0

0

1

0

-1

0

0

1

1

0

0

1

0

0

-1

0

1

0

1

0

0

1

1

0

0

0

1

1

1

+1

1

0

0

0

+1

1

0

0

1

0

1

0

1

0

0

1

0

1

1

-1

1

1

0

0

0

1

1

0

1

-1

1

1

1

0

+1

1

1

1

1

0

Предлагаемый мной узел выделения сигнала и направления счета (рис. 3) аппаратно реализует зависимость, приведенную в таблице, и может применяться с любыми инкрементными датчиками.

Cxema
Рис. 3.

Узел состоит из формирователей на триггерах Шмитта (DD1.1, DD1.2), блоков запоминания предыдущего состояния датчиков на триггерах (DD2.1, DD2.2), выделения сигнала направления (DD3.2, DD3.4), сравнения (DD3.1, DD3.3, DD4.1) и формирователя импульсов счета (DD1.3, DD1.4, DD5.1 —DD5.4).

Устройство работает так. Сигнал с датчиков через формирователи на триггерах Шмитта DD1.1 и DD1.2 поступает на входы триггеров DD2.1 и DD2.2 и схему сравнения. При изменении сигнала на любом из входов на выходе блока сравнения (DD4.1) появляется логическая единица, зтот сигнал запускает одновибратор (DD5.3, DD5.4) формирователя импульса счета. Длительность импульса счета определяется номиналами резистора R3 и конденсатора С1 и должна быть меньше четверти минимальной продолжительности входного импульса:

t = 1/(8*Fmax*n),
где Fmax — максимальная частота вращения вала датчика, с 1;
n — число прорезей в диске датчика. По окончанию импульса счета происходит запись новых значений в триггеры DD2.1 и DD2.2, затем рабочий цикл повторяется.


Радио 7-2006