Инкрементные (квадратурные) и абсолютные энкодеры. Код Грея.


26.11.2012

Датчик угла поворота, также называемый энкодер, предназначен для преобразования угла поворота поворотного механизма (вала) в электрические сигналы. Энкодеры могут быть контактными магнитными, оптическими и др. Мы рассмотрим самые распространенные - оптические. Устройство оптического датчик угла поворота (оборотов) состоит из светоизлучателей (чаще применяются инфракрасные светодиоды), фотоприемников (фототранзисторов), и проходящего между светоизлучателем и светоприемником кодового диска, который имеет прозрачные участки. Рисунок на кодовом диске энкодера называют растр. По количеству тактов (или времени между двумя тактами) определяется положение (скорость вращения).

С помощью одного светодиода и одного фототранзистора можно измерять скорость вращения или перемещение без учета направления вращения. Такой датчик сложно назвать энкодером, так как, при реверсе нет возможности точно определить положение или направление вращения.  Это просто датчик скорости вращения.

Конструктивное исполнение датчиков вращения:

Энкодеры подразделяются на инкрементальные энкодеры (квадратурные энкодеры) и абсолютные энкодеры. Инкрементальные энкодеры, формируют импульсы, по которым принимающее устройство определяет текущее координаты путем подсчета числа импульсов. Для привязки системы отсчета к началу координат инкрементальные датчики перед началом работы должны быть установлены в начальное положение.

Простой инкрементный энкодер позволяет определить направление вращения. Для изготовления модели инкрементного энкодера достаточно два фототранзистора, одного светодиода. Принцип работы следующий. Светодиод постоянно светит сквозь вращающийся диск с отверстиями на принимающие фототранзисторы. Отверстия в диске энкодера сделаны таким образом, чтобы были положения, при которых диск закрывает оба фототранзистора, и открывает оба. При вращении диска энкодера, фототранзисторы открываются и закрываются в определенной последовательности. Именно по последовательности переключений и можно определить направление вращения. Например, если были "засвечены" оба фототранзистора, то при вращении в одну сторону диск закроет сразу один фототранзистор, а при вращении в другую - другой. Зная, какой фототранзистор был закрыт после засветки обеих, определяем направление вращения.

В старых компьютерных мышках, в которых применялся шарик, присутствовали два аналогичных энкодера. В них использовались специальные фототранзисторы "2 в одном":

В нашей конструкции мы используем два отдельных фототранзистора:

Иногда требуется знать положение сразу после включения устройства. Т.е. нет технической возможности вывести устройство в исходное положение и затем по количеству "кликов" оценить положение.

Абсолютный энкодер показывает текущую координату сразу при включении, без необходимости предварительной установки в исходное положение. Простейший пример - датчик направления ветра для метеостанции. При включении станции надо сразу определить направление ветра, т.е. угол поворота. Энкодер имеет элементы излучения (светодиоды) и фотоприемники (фототранзисторы), между ними вращается диск энкодера. В определенном положении засвечиваются те или иные фототранзисторы. По комбинации включенных транзисторов определяем положение вала. Промышленные энкодеры имеют большоее количество разрядов, следовательно, имеют высокую точность. Зачастую имеют несколько дисков, связанных через шестерни. Некоторые энкодеры снабжаются последовательным интерфейсом. Но в основе их работы заложен тот же принцип.

Ниже приведена модель 4 разрядного абсолютного энкодера с кодом Грея. 4 разряда - это 16 секторов - 360/16 = 22,5 градуса приемлемая точность для измерения направления ветра. Если возникают проблемы с габаритами, конструктивно диск можно разделить на части. В приведенном примере так и сделано.

Исходный растр диска:

разбит на два диска:

Между дисками установлена двусторонняя плата со светодиодами, за дисками фототранзисторы. Таким образом были уменьшены габариты.

Внимательный читатель мог заметить, что растр кодового диска абсолютного энкодера не соответствует обычному двоичному коду. В энкодерах применяют специальный код Грея.

Что такое код Грея? Представьте себе некоторое устройство, скажем датчик положения, которое выдает положение в двоичном виде по трем проводам. На выходе могут быть следующие комбинации в двоичном коде:

000 001 010 011 100 101 110 111

Обратите внимание на момент перехода из состояния 001 в состояние 010. Переключаются одновременно два бита. Но, в реальности, одновременно переключение не происходит. В любом случае, один из разрядов переключится раньше в силу различных технических причин. При этом на выходе можем получить ошибочные значения 000 или 011. Френк Грей придумал код, похожий на двоичный (http://ru.wikipedia.org/wiki/Код_Грея), но при переходе к следующему числу изменяется только один бит см. таблицу. В этом случае, в момент переключения, состояние меняет только один вывод (разряд), что исключает появление ошибочных значений. Код Грея применяется во всех промышленных энкодерах.

Двоичный код B(3) Код Грея G(3)
1 000 000
2 001 001
3 010 011
4 011 010
5 100 110
6 101 111
7 110 101
8 111 100

Корисно знати Початківцям
Коментарі:
Додати коментар
Code
* - обов'язкові поля

Архіви