Прежде всего мне хотелось бы извиниться перед читателями, ожидающими продолжения статьи "Многозадачность во встроенном приложении", если таковые имеются (постоянно растущий счетчик прочтений свидетельствует о наличии читательского интереса к ней, хотя отсутствие отзывов все же вносит легкую ноту сомнения в этом). Дело в том, что эта и предшествующие ей статьи были замечены, и я получил приглашение поучаствовать
в некотором достаточно интересном для меня стартапе, относящемся к автоматизации промышленного оборудования для малого бизнеса. Естественно, я не мог упустить шанс попробовать новые для меня технологии в реальном деле. Продолжение статьи обязательно увидит свет в недалеком будущем, причем теперь будет возможность постепенно смещать акцент от заведомо вымышленных задач в сторону вполне реальных.
В основу настоящей статьи легли материалы из отчета, выполненного автором в ходе предварительных исследований по вышеупомянутому проекту. Выдержка из него, относящаяся к измерению угла поворота вала при помощи энкодера, представлена на суд читателей.
При автоматизации производственных процессов часто приходится решать задачу точного прямолинейного механического перемещения различных узлов автоматизируемой установки (рабочего инструмента станка, координатного стола и т. п.). Одна из простейших реализаций привода для линейного перемещения состоит из вала с нарезанной на нем точной резьбой и гайки, перемещающейся при вращении вала. Если шаг резьбы достаточно равномерный, а люфт гайки невелик, то координата гайки однозначно определяется углом поворота вала
относительно некоторого начального положения.
В качестве датчика угла поворота вала можно использовать прибор, называемый угловым энкодером.
2. Устройство и принцип работы
Теоретически принцип работы углового энкодера чрезвычайно прост. Прибор включает жестко закрепленный на валу диск с делениями, каждое из которых однозначно определяет некоторый диапазон положений вала, и устройство для считывания этих делений.
2.1. Способы считывания делений диска
Считывание делений диска может производиться различными способами: механическими контактами (которые размыкаются лепестками на диске), оптическими датчиками (в этом случае диск состоит из чередующихся прозрачных и непрозрачных областей, если считывание производится на просвет, либо отражающих и неотражающих областей, если считывание производится в отраженном свете), магнитными датчиками (например, Холла), электромагнитными и т. п.
Механические контакты подвержены износу (и вследствие этого недолговечны), а в изношенном состоянии еще и склонны к дребезгу, поэтому их применение возможно лишь для некритичных приложений (типа регулировки громкости в музыкальном центре или выбора режима микроволновой печи). Применение их в качестве датчика координаты для станка отпадает.
Магнитные и электромагнитные датчики лишены этих недостатков (во всяком случае, механический износ им не грозит). Однако их изготовление своими руками при приемлемом разрешении довольно проблематично (по крайней мере, мне неизвестны практичные конструкции таких датчиков).
Наиболее пригодными для самостоятельного изготовления при приемлемом качестве представляются оптические энкодеры (этот тезис я намерен в ближайшее время проверить на практике). Впрочем, дальнейшее изложение в равной степени относится к любым способам считывания, разве что при механическом ожидается существенный дребезг контактов.