Андрей Смирнов
Время чтения: ~11 мин.
Просмотров: 9

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

Photoelectric-Speed-Sensor-Encoder-Coded-Disc-code-wheel-for-Freescale-Smart-car.jpg

  • Цена: $3.18

Рано или поздно в жизни каждого самоделкина возникает потребность в покупке чего-то такого этакого, что обычно само в голову не придет. Вот и я жил себе спокойно и об энкодерах даже не задумывался. Хотя должен признаться опыт работы с энкодерами имел. Как-то в одной и поделок использовал энкодер из принтера. В данной истории все приключилось внезапно. Ползая по своим хоббийным форумам натолкнулся на конкурс. Сайт (называть не буду, т.к. разговор не о нем) проводил видимо раскрутку посещаемости и плюс один из форумчан проводил раскрутку своих российского производства изделий. И разыгрывался комплект из 3 наборов для самостоятельной сборки сервоконтроллеров. Я зарегистрировался на этом форуме, подал заявку (вместе с 3 или 4-мя всего лишь участниками) и… выиграл. Так я стал обладателем 3-х наборов для сборки сервоконтроллеров. Далее мне потребовались энкодеры. Позволю себе объяснить для читателей не так глубоко погруженных в электронные компоненты, что такое сервоконтроллер, энкодер и с чем все это едят. Есть 2 основных способа управлять точным перемещением в изделиях с ЧПУ (числовое программное управление). Попробую объяснить максимально доступным языком, без сложных схем и терминов. Первый способ это шаговые двигатели. Шаговый двигатель имеет сложное устройство — несколько катушек, притягивающих сердечник в заданных положениях.

Количество положений, в которых может быть зафиксирован сердечник называется шагами, промежуточные положения (регулируются различными промежуточными напряжениями и соответственно магнитными полями) называют микрошагами. Управляет шаговым двигателем драйвер — это плата управления, как правило с микропереключателями шагов и регулировкой тока, протекающего через двигатель. На вход драйвера подаются сигналы: Enable (разрешить работу шагового двигателя), DIR (направление вращения), STEP (количество шагов, на которое двигателю необходимо повернуть вал). И драйвер переводит команды в обороты вала двигателя. Очень простая и надежная конструкция. Из минусов — скорость вращения двигателя ограничена из-за его конструктива, и если двигатель пропустит по той или иной причине шаги, то управляющая программа об этом не узнает. Отсюда и область применения — низко и среднескоростные двигатели в заданной области нагрузок. Например 3Д принтер или хоббийные станки. Второй способ управлять перемещениями — сервомотор. Мотор сам по себе может быть любым, постоянного или переменного тока, без разницы. Единственное условие, его вал должен иметь энкодер. Энкодер — это устройство определения позиции вала в данный момент времени. Об энкодерах мы поговорим подробнее чуть позже. Сервоконтроллер имеет другой принцип работы, в отличии от драйвера шагового двигателя. Сервоконтроллер получает на входе те же самые сигналы Enable, STEP, DIR и подает на двигатель напряжение. Двигатель начинает вращаться в нужном направлении, энкодер возвращает данные о положении вала двигателя. Как нужное положение достигается, вал двигателя в нем фиксируется. Конечно это сильно упрощено, т.к. есть ускорение и торможение двигателя, управление током и напряжением, пропорционально-интегрально-дифференцирующий (ПИД) регулятор в контуре обратной связи,… но мы же договорились в этот раз не сильно лезть в теорию. 598d4e.jpg Какие же плюсы серводвигателей: любая скорость вращения, отсутствие пропуска шагов, бесшумность (шаговый двигатель ощутимо громок в работе из-за своего конструктива). Но цена сервоконтроллеров выше и существенно драйверов шаговых двигателей. Поэтому основная ниша сервоконтроллеров — профессиональное применение. Для своего проекта я выбрал двигатели Динамо Сливен. Эти двигатели широко использовались в советское время в ЭВМ и их было какое-то нереально большое количество. Кажется, что практически любой хоббийщик или имеет такой двигатель или сталкивался с ним. На барахолках их до сих пор перепродают. Это двигатели постоянного тока с фантастическим неубиваемым ресурсом и устойчивостью к любым издевательствам.82279b.jpg В качестве сервоконтроллера я использовал выигранную плату. Она представляет собой развитие open source сервоконтроллера, известного под устойчивым брендом «сервоконтроллер Чена» — по имени китайца, году так в 2004-м, если не ошибаюсь, предложившим данную схему. Теперь уже практически переходим сути обзора — к энкодерам. Выбор энкодера был осуществлен по характеристикам и цене. Какие бывают типы энкодеров. В основном это оптические и магнитные. Магнитные — когда на краях диска закреплены магниты, а возле них находится датчик Холла. Решение дорогое, промышленное, обладает повышенной надежностью. Цена не хоббийная ни разу. Оптические энкодеры. Самое распространенное решение. Есть в каждой мышке. Раньше отвечали за вращение шарика и колесика. Теперь шариков уже нет, а вот колесики остались. Принцип работы прост — прерывание светового пучка проходящим непрозрачным телом. Оптические энкодеры есть 2-х типов: инкрементальные и абсолютные. Инкрементальные делятся на 2 подтипа. Простейшие инкрементальные — такие как изображены на рисунке выше. Они определяют пересечение светового потока и на их основе можно построить, например, тахометр. Недостаток данного энкодера состоит в том, что при помощи него невозможно определить направление вращения диска. Инкрементальные 2-х канальные решают задачу определения направления вращения диска. Для этого используется не один фотодиод, а несколько, обычно 4. Они формируют 2 независимых канала передачи данных, и сравнивая сигналы с этих каналов можно однозначно сделать вывод о направлении вращения диска. Какие же недостатки есть у данного инкрементального энкодера? Недостаток один, но для ряда применений он критичный. При инициализации энкодера мы не знаем в каком положении находится диск. Т.е. мы можем узнать только направление и скорость вращения диска. Для получения полной информации, а именно — начальное положение диска, направление и скорость вращения используются абсолютные энкодеры. Абсолютные энкодеры используют диск со сложной системой кодировки положения. Наиболее распространен код Грея — двоичная кодировка с защитой от ошибок. Я остановил свой выбор на инкрементальном энкодере с контролем направления вращения, т.е. с двумя квадратурными каналами вывода информации. Разрешения в 100 линий на оборот диска мне было за глаза. Поэтому на Алиэкспрессе я нашел энкодеры за разумную цену и с нужными мне характеристиками. Вот фотка 3-х пришедших мне энкодеров. Дошли они недели за 3. У энкодеров 4 вывода, Красный — питание 5В, Черный — земля, Цветные — каналы А и В. Я быстренько выточил втулочку на вал двигателя под крепление диска, ввинтил туда стержень с резьбой. На 3Д принтере распечатал площадку под крепление датчика энкодера Собрал все вместе Подключил сервоконтроллер, и… тут бы был счастливый конец обзору, но нет. Ничего не заработало. Даже близко ничего не заработало. Подключил осциллограф и понял, что никаких квадратурных сигналов на выходе нет, только шумы, наводки и непонятные выплески. Грешил я на все на свете. И на требовательность к позиционированию, и на засветку, и на наводки электромагнитные. И часами аккуратно возюкал датчик в разных положениях, выключал свет и пытался проделать все тоже самое в темное. «Крокодил не ловится, не растет кокос.» Разумеется я перепробовал все 3 энкодера. Везде тоже самое. И тут меня дернуло поразглядывать датчик в микроскоп. То что я увидел повергло меня в изумление. Все 4 сенсора стояли в ряд по радиусу диска, т.е. засвечивались через прорезь диска одновременно. Разумеется ничего не работало. Датчики должны стоять перпендикулярно радиусу диска, и засвечиваться последовательно разными фронтами прорези диска. Я не мог поверить, что это так просто и так глупо. Китайцы поставили датчик с поворотом на 90 градусов. Я спросил на форуме у такого же как я покупателя таких же энкодеров как у него стоит датчик. И у него все было также неправильно и не работало. Почесав в затылке я решил попробовать это дело исправить. Энкодер разобрался легко, при помощи фена расплавил термоклей и достал внутренности. Поднес датчик к диску так чтобы сенсоры был поперек рисок. Конечно датчик корректно не встал, но на осциллографе начал появляться какой-то осмысленный сигнал. Дальше разрезал корпус энкодера сбоку, наростил проводочками расстояние между светодиодом и матрицей сенсоров и засунул все в корпус по-новому. На фото видно, что сенсоры стали перпендикулярно радиусу диска. Собрал, подключил к сервоконтроллеру и… Бинго, все заработало! Мотор встал в режим удержания позиции. Т.е. при попытке проворота вала двигателя, мотор упирается и если его все же провернуть, то возвращается в исходное положение. Ну а дальше двигатель займет свое место на фрезерном станке, но это уже совсем другая история…:-) Как резюме. Энкодер из коробки не работает. К покупке не рекомендую. Но в своей ценовой категории, если он был бы исправным, это хорошее бюджетное решение. Либо если переделка изделия в работающее не пугает, то можно брать и переделывать. У продавца куча положительных отзывов на такой энкодер. Либо это все липа, либо, что вероятнее, брак пошел массово совсем недавно. Я написал продавцу, он пока шлет мне тонну технических описаний и предлагает попробовать еще, и намекает, что это я не разобрался. Буду на него давить. Пусть хоть часть денег вернет. Я столько времени угрохал из-за их заводского разгильдяйства. Всем добра и удовольствия от хобби!

Энкодерная лента (лента растра, энкодер, encoder strip) — полупрозрачная штрихованная лента, расположенная внутри принтера. Специальный датчик растра в картеке считывает эти штрихи, определяя тем самым положение печатающей головки. Очевидно, что при появлении грязи или повреждений на поверхности ленты, позиционирование ПГ сбивается и при печати появляются вертикальные (продольные) полосы. Со временем, штрихи начинают стираться, что также приводит к проблемам в работе устройства.

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

Энкодерный диск (encoder wheel) — штрихованный круг на шестерне, соединённой зубчатой передачей с осью двигателя принтера. Является важным элементом механизма протяжки бумаги и отвечает за положение листа в пространстве. При появлении грязи или повреждений на поверхности диска, принтер начинает перетягивать захваченный лист, из-за чего на отпечатках возникают горизонтальные (поперечные) полосы, на равном удалении друг от друга (соответствуя полному обороту шестерни).

Решение проблем с энкодером

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

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

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

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

Инкрементальный энкодер — от А до Я

Что такое инкрементальный энкодер?

Конструкция инкрементального энкодера

Инкрементальный энкодер (он же пошаговый энкодер) состоит из следующих компонентов: источника света, диска с метками, фототранзисторной сборки и схемы обработки сигнала. Диск пошагового энкодера подразделен на точно позиционированные отметки. Количество отметок определяет количество импульсов за один оборот. К примеру, если диск поделен на 1000 меток, тогда за 250 импульсов вал должен повернуться на 90 градусов.

Fraba_Posital_codescheibe_increment.jpg
Диск с метками оптического инкрементного энкодера

Технология (оптическая и магнитная)

В настоящее время широко распространены две технологии исполнения — оптическая и магнитная. 1. В оптическом энкодере первичным датчиком сигнала является оптический диск (как на картинке выше). Количество черных/прозрачных секторов на диске определяет разрешение оптического инкрементального энкодера, также именуемое как количество меток в обороте. 2. В настоящее время становятся очень популярными магнитные энкодеры. В магнитном энкодере сигнал положения вала формируется датчиком Холла. Данная технология открывает новые возможности, например, программируемое количество импульсов в обороте, причем некоторые производители энкодеров предоставляют такую возможность (программирования) самому Заказчику, что значительно облегчает подбор энкодера для своей конкретной задачи. Так, например, стало простой задачей заменить в оборудовании вышедший из строя энкодер с «экзотическим» числом импульсов в обороте, например, 1234 вместо более привычных 1024. В оптическом энкодере такое разрешение, как упоминалось выше, возможно только при «физическом» наличии нанесенных на диск меток.

Квадратура выхода (выходы А и В)

Для квадратуры выхода энкодера используются два выходных канала, для того чтобы определить — вращается вал по часовой стрелке или против часовой стрелки, основанное на сдвиге фазы 90°±0° , допуск ±45° — приемлемый для спецификации сдвига фазы. Энкодер с единственным выходом (A) более известен как тахометр.

Квадратура сигналов инкрементального датчика угла поворота

Максимальная частота ответа

Указатель нулевой отметки / импульс полного оборота (выход N)

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

Разрешение

— это количество выходных импульсов за вращение вала.

Соединительный вал

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

Используемые источники:

  • https://mysku.ru/blog/aliexpress/40426.html
  • https://mnogochernil.ru/newsroom/encodernaya-lenta-encoderniy-disk/
  • products/princip-raboty-inkrementalnogo-enkodera/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации