на главную
Карта сайта
English version
Вы читаете:

Принцип работы абсолютного энкодера - RadioRadar

Научно-технические
19 лет назад

Принцип работы абсолютного энкодера

28

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

Кодовый диск абсолютного энкодера

Рис. 1. Кодовый диск абсолютного энкодера

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

   Двоичный код

   Двоичный код - это широкораспространенный код, который может обрабатываться непосредственно микропроцессором и является основным кодом для обработки цифровых сигналов. Двоичный код состоит только из 0 и 1.

   Построение ДК осуществляется по следующему принципу:

   Таким образом выглядит в данном случае число 10 в двоичном коде.

   Наибольшее число, которое может быть выражено двоичным кодом, зависит от количества используемых разрядов, т.е. от количества битов в комбинации, выражающей число. Например, для выражения числовых значений от 0 до 7 достаточно иметь 3-разрядный или 3-битовый код:

числовое значениедвоичный код
0000
1001
2010
3011
4100
5101
6110
7111

   Отсюда видно, что для числа больше 7 при 3-разрядном коде уже нет кодовых комбинаций из 0 и 1. Переходя от чисел к физическим величинам сформулируем вышеприведенное утверждение в более общем виде: наибольшее количество значений m какой-либо величины (угла поворота, напряжения, тока и др.), которое может быть выражено двоичным кодом, зависит от числа используемых разрядов n как m =2 n . Если n =3, как в рассмотренном примере, то получим 8 значений, включая ведущий 0. Двоичный код является многошаговым кодом. Это означает, что при переходе с одного положения (значения) в другое могут изменяться несколько бит одновременно. Например, число 3 в двоичном коде = 011. Число же 4 в двоичном коде = 100. Соответственно, при переходе от 3 к 4 меняют свое состояние на противоположное все 3 бита одновременно. Считывание такого кода с кодового диска привело бы к тому, что из-за неизбежных отклонений (толеранцев) при производстве кодового диска изменение информации от каждой из дорожек в отдельности никогда не произойдет одновременно. Это, в свою очередь, привело бы к тому, что при переходе от одного числа к другому кратковременно будет выдана неверная информация. Так при вышеупомянутом переходе от числа 3 к числу 4 очень вероятна кратковременная выдача числа 7, когда, например, старший бит во время перехода поменял свое значение немного раньше чем остальные. Таким образом, использование обычного двоичного кода может привести к большим погрешностям, так как две соседние кодовые комбинации могут отличаться друг от друга не в одном, а в нескольких разрядах. Чтобы избежать этого применяется так называемый одношаговый код, например, так называемый Грей-код.

   Код Грея

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

   Таким образом, Грей-код является так называемым одношаговым кодом, т.к. при переходе от одного числа к другому всегда меняется лишь какой-то один бит. Погрешность при считывании информации с механического кодового диска при переходе от одного числа к другому приведет лишь к тому, что переход от одного положения к другом будет лишь несколько смещен по времени, однако выдача совершенно неверного значения углового положения при переходе от одного положения к другому полностью исключается. Преимуществом Грей-кода является также его способность зеркального отображения информации. Так, инвертируя старший бит можно простым образом менять направление счета и, таким образом, подбирать к фактическому (физическому) направлению вращения оси. Изменение направления счета может легко изменяться, управляя так называемым входом " Complement ". Выдаваемое значение может быть возврастающим или спадающим при одном и том же физическом направлении вращения оси.

   Поскольку информация, выраженная в Грей-коде, имеет чисто кодированный характер не несущей реальной числовой информации, должен он перед дальнейшей обработкой сперва преобразован в стандартный бинарный код. Осуществляется это при помощи преобразователя кода (декодера Грей-Бинар), который к счастью легко реализируется с помощью цепи из логических элементов «исключающее или» ( XOR ) как программным, так и аппаратным способом (см. схему ниже).

   Из таблицы видно, что при переходе от одного числа к другому (соседнему) лишь один бит информации меняет свое состояние, если число представлено кодом Грея, в то время, как в двоичном коде могут поменять свое состояние несколько бит одновременно. Код Грея - выход, следовательно, он никогда не имеет ошибку чтения и применяется во многих абсолютных энкодерах.

Десятичный кодДвоичный кодКод Грея
23    22    21    20
0
1
2
3
0     0     0     0
0     0     0     1
0     0     1     0
0     0     1     1
0     0     0     0
0     0     0     1
0     0     1     1
0     0     1     0
4
5
6
7
0     1     0     0
0     1     0     1
0     1     1     0
0     1     1     1
0     1     1     0
0     1     1     1
0     1     0     1
0     1     0     0
8
9
10
11
1     0     0     0
1     0     0     1
1     0     1     0
1     0     1     1
1     1     0     0
1     1     0     1
1     1     1     1
1     1     1     0
12
13
14
15
1     1     0     0
1     1     0     1
1     1     1     0
1     1     1     1
1     0     1     0
1     0     1     1
1     0     0     1
1     0     0     0

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

   Используйте такую схему для преобразования Кода Грея в двоичный код.

хема для преобразования Кода Грея в двоичный код

Рис. 2. Схема для преобразования Кода Грея в двоичный код

   Примечание:
*Код Грея может логически преобразовываться в двоичный код когда терминал Vin подключается к 0 V.
**Инвертор
***Исключающее или

   Gray-Excess-Code

   Обычный одношаговый Грей-код подходит для разрешений, которые могут быть представлены в виде числа возведенного в степень 2. В случаях, где надо реализовать другие разрешения из обычного Грей-кода, вырезается и используется средний его участок. Таким образом, сохраняется «одношаговость» кода. Однако числовой диапазон начинается не с нуля, а смещяется на определенное значение. При обработке информации от генерируемого сигнала отнимается половина разницы между первоначальным и редуцированным разрешением. Такие разрешения как, например, 360° для выражения угла часто реализируются этим методом. Так 9-ти битный Грей-код равный 512 шагов, урезанный с обеих сторон на 76 шагов будет равен 360°.

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

   Однооборотный энкодер

   Однооборотными ( Single - Turn ) датчиками называются датчики, которые выдают абсолютное значения в пределах одного оборота, т.е. в радиусе 360°. После одного оборота код является полностью пройденым и начинается опять с его начального значения. Эти датчики служат, преимущественно, для измерения угла поворота и применяются, например, в антенных системах, эксцентричных коленчатых пресах и т.д.

Устройство однооборотного энкодера

Рис. 1. Устройство однооборотного энкодера

   Многооборотный энкодер

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

Устройство многооборотного энкодера

Рис. 2. Устройство многооборотного энкодера

 

Мнения читателей
  • RUSlan/23.05.2009 - 17:48

    Огромное спасибо очень выручили!!!

  • Kit_Kat/23.05.2009 - 11:28

    Спасибо!!!!

  • Serg/22.05.2009 - 20:36

    картинки воткнул в диплом)

  • monushka/12.03.2009 - 08:18

    Спасибо! Очень полезная информация! ))

  • Mailaara/10.02.2009 - 14:04

    Большое спасибо автору. всё чётко и понятно, пригодилось=)

  • Sniper/22.05.2008 - 12:40

    Спасибо, пригодилось! Все четко и понятно!

  • Vad/16.07.2007 - 21:53

    Подскажите где найти схему преобразования двоичного кода в код Грея.

  • Smerti/18.03.2007 - 13:28

    Даже нет слов. Респект! Коротко и по делу - побольше таких авторов.