Простейший контроллер сервопривода
Сервомоторы имеют много применений в различных областях, начиная с робототехники и заканчивая фотографией и т.д. Эти маленькие двигатели могут устанавливать свой вал в любое положение по команде и удерживать это положение. Большинство сервомоторов могут совершать движение в диапазоне 210 ° и к счастью ими легко управлять при помощи простого устройства вроде представленного здесь. Используя только 555 таймер и несколько внешних компонентов, эта схема позволяет управлять приводом регулируя скорость его вращения в соответствии с положением потенциометра.
Схема
Детали
Резистор 820 Ом, 0,25 Вт
Резистор 68 кОм, 0,25 Вт
Резистор 10 кОм, 0,25 Вт
Резистор 1 кОм, 0,25 Вт
Потенциометр с линейной характеристикой 1 кОм
Электролитический конденсатор 1 мкФ, 16 В
2N2222 или другой маломощный транзистор
Макетная плата, провода, ручка для R1, 8-пиновая сокетка для микросхемы
Замечания
- R1 устанавливает максимальную мощность сервопривода.
- Соедините выводы сервопривода как показано на схеме. Для большинства сервоприводов Futaba красный провод – мощность, черный – земля и белый – управление.
Перевод: Piyavka, по заказу РадиоЛоцман
Источник
Управление сервоприводом SG90 без микроконтроллера
Попался под руку популярный недорогой сервопривод SG90. И задумалось управлять им, но без микроконтроллера. В этой статье я изложу ход мыслей разработчика при реализации одного из вариантов решения.
Кому интересно, прошу под кат.
Надо управлять сервоприводом, но без микроконтроллера.
Знания
Всем известно, что опыт и знания помогают творить и находить решения. На страницах Гиктаймса немало примеров использования сервопривода с применением контроллеров. В них подробно рассказано про систему управления сервоприводом. Примем этот опыт других разработчиков за знания необходимые нам для решения задачи. Сервопривод SG90 управляется ШИМ сигналом, параметры которого определяют положение ротора. Период ШИМ около 20 мС, длительность сигнала управления от 500 до 2100 мкС.
Задача
Идея и знания порождают задачу, которую необходимо решить. Сформулируем задачу для воплощения идеи. Это что-то вроде Технического Задания. Кажется, все просто, надо взять генератор импульсов с изменяемой скважностью, подключить питание к сервоприводу, а с генератора подать управляющий сигнал. Особо отметим, что в требованиях есть изменения скважности — то есть должны быть органы управления или пользовательский интерфейс.
Реализация
Вот тут и начинаются муки творчества: что взять и где взять? Можно найти готовый лабораторный импульсный генератор, например Г5-54 с ручками, кнопками, выставить нужные параметры, подключить генератор к сервоприводу. Однако это громоздко и не все могут позволить себе такую роскошь. Поэтому разработчики, опираясь на свой опыт и знания, пытаются совместить желание (идею-задачу) и возможности (материальные и творческие) для реализации задачи. Материальные возможности — это та “жаба”“А сколько и чего я хочу потратить на реализацию идеи?” Творческие возможности — это, “посмотрю-ка я, что у меня уже есть”. Это не обязательно какие-то материальные ценности, а опыт и знания предыдущих разработок, которые можно приспособить под реализацию. Также не лишним будет поискать (погуглить), что кто-то уже реализовывал что-то подобное. Для сокращения вариантов решения необходимо самому добавлять дополнительные требования, ограничивающие фантазии реализации. Например, добавим к требованиям еще одно условие, пусть это будет материальное ограничение, реализация должна быть недорогой.
Поиск альтернатив
Воспользовавшись интернетом, поищем варианты, которые предлагает СЕТЬ. Зададим в поиске: “генератор прямоугольных импульсов с переменной скважностью”. Получим очень много вариантов, как с применением интегральных таймеров NE555 (отечественный аналог КР1006ВИ1), так и на логических микросхемах. Из всего разнообразия я выбрал вариант генератора на инверторе с триггером Шмитта на входе. Во-первых, он самый простой, во-вторых, требует минимум деталей и самое интересное использует единственный логический элемент из шести, если, например, использовать микросхему 74HC14.
Схема такого генератора выглядит так:
Немного теории
Теория гласит, что частота такого генератора равна f = 1/T = 1/(0.8*R*C). Для получения требуемой частоты требуется выбрать номинал одного из элементов, задающих частоту. Так как логический элемент выполнен по технологии КМОП, то имеет большое входное сопротивление, поэтому можно применять элементы задающие небольшие рабочие токи. Выберем емкость С1 из ряда распространенных номиналов, например 0.47 мкФ. Тогда для получения требуемой частоты (50Гц) резистор должен быть приблизительно 53 кОм, но такого резистора в стандартном ряду нет, поэтому выберем 51 кОм.
На выходе такого генератора формируется сигнал близкий к меандру, поэтому нам необходимо скорректировать схему таким образом, чтобы она удовлетворяла требованиям задания. Для получения регулируемой длительности импульса на выходе необходимо изменить режим перезарядки конденсатора от высокого уровня на выходе, а именно, сократить время перезарядки. Для этого добавим в схему еще два элемента: диод и переменный резистор. Подойдет любой маломощный импульсный диод.
Тогда схема примет следующий вид:
Казалось бы: все, задача решена, но в крайних положениях переменного резистора поведение сервопривода нестабильно. Это связано с тем, что значение длительности импульсов, в крайних положениях переменного резистора, не соответствует требуемым. Лично мне также не по душе применение переменного резистора, поэтому я хочу изменить интерфейс управления, добавив новую “хотелку” в техническое задание, например чтобы скважность менялась в зависимости от освещенности. Для этого есть простое и недорогое решение: применить в качестве регулирующего элемента фоторезистор GL55xx (используют в проектах Arduino), изменение сопротивления которого лежит в широком диапазоне.
Далее начинается самое интересное. Расчетных формул для получения значений сопротивлений обеспечивающих требуемые длительности импульсов нет, поэтому на уровне интуиции (опытным путем, с помощью переменного резистора) определяем значения сопротивления, при которых устанавливаются требуемые значения длительностей импульсов. Затем изменяем схему так, чтобы при изменении сопротивления фоторезистора общее сопротивление изменялось, устанавливая требуемые значения длительностей импульсов.
Итоговая схема принимает следующий вид:
Пояснения к итоговой схеме
Конденсатор С1 номиналом 0.47 мкФ, определяет время перезаряда. Резистор R1 номиналом 51 кОм задает основную частоту повторения импульсов в районе 50 Гц. Комбинация резисторов R2-R4 в сумме будет изменяться в диапазоне от 2.5 кОм до 24 кОм в зависимости от освещенности. Вместе с диодом D1 эти резисторы будут влиять на время перезаряда конденсатора С1 при действии положительного импульса на выходе логического элемента, тем самым определять его длительность.
Результат
Подключив данный генератор к входу управления сервопривода получим возможность управлять им, изменяя освещенность фоторезистора. На видео можно посмотреть, что из этого получилось:
На этом казалось бы все, но могу предложить развитие данной разработки. Так как мы использовали всего один из шести логических элементов входящих в корпус микросхемы, то можно собрать еще пять генераторов и подключить их к другим сервоприводам. Подключив к исполнительным рычагам сервоприводов заслонки, которые будут перекрывать световой поток у фоторезисторов, управляющих другими сервоприводами, можно получить забавное поведение сервоприводов, но этот эксперимент предлагаю провести самостоятельно.
Источник
Сервопривод. Жизнь после смерти.
Вместо эпиграфа…
В жизни многих из нас бывают моменты, когда та или иная вещь приходит в негодность и приходится ее выбрасывать. В практике моделизма, в частности, такой «вещью» нередко оказывается сервопривод – либо коллекторный мотор лишится щеток, а то и вовсе сгорит, либо шестерни останутся без зубов. Контроллер же гораздо реже отправляется в «места вечнозеленых пастбищ, богатые дичью» (с)индейцы Кентукки.
Перечень терминов и сокращений.
РУ – радиоуправление – совокупность аппаратных и программных средств для управления моделями по радиоканалу
СП – сервопривод
РРМ – сигнал управления (Pulse Position Modulation). В статье упоминается с числом, которое обозначает часть диапазона регулирования управляющего органа аппаратуры РУ (например, ход стика или поворота «крутилки» от минимума до максимума), например 30%РРМ = 30% диапазона регулирования от начала диапазона. Для удобства «привязки к ручкам».
ДП – датчик положения
ТОЧКА НЕЙТРАЛИ – такое положение ДП, при котором на выходе контроллера отсутствует напряжение
ШИМ – широтно-импульсная модуляция
ИМС – интегральная микросхема
Очень краткий экскурс в теорию.
СП, как известно, представляет собой электродвигатель (рассматриваем традиционные электрические СП, используемые моделистами) и редуктор. Электродвигателем управляет контроллер СП в соответствии с заданием, выданным с аппаратуры РУ в %РРМ. Конструктивно электродвигатель, редуктор и контроллер находятся в одном корпусе.
Источником управляющего сигнала, как правило, является приемник аппаратуры РУ или специальное устройство – сервотестер.
В недорогих СП (к слову, которые использует в своих моделях подавляюще число моделистов) применяется коллекторный электродвигатель постоянного тока. Вот об этих СП и пойдет речь.
Подготовка.
Итак, в Вашем СП больше нет редуктора или электродвигателя, но остался контроллер? Отлично, попробуем найти применение контроллеру. В качестве примера будет рассматриваться контроллер сервопривода SG90, аналогичного 4 X TowerPro SG90 Mini Gear Micro Servo 9g
Товар http://www.parkflyer.ru/product/1566363/
цена на который колеблется от 65 до 300 рублей у разных продавцов.
Чтобы извлечь контроллер из корпуса сервопривода необходимо вывернуть четыре винта с нижней стороны корпуса (1), снять крышки редуктора (2) и контроллера (3).
Удалить шестерни, отпаять и удалить электродвигатель, не повреждая контроллер и ДП, в качестве которого применяется переменный резистор сопротивлением 5 кОм.
Конструктивно ДП впаян в плату контроллера таким образом, что их разделяет внутренний конструктивный элемент корпуса СП — два выступа по бокам и просто так эти элементы удалить из корпуса не удастся (во всяком случае в СП, имеющейся у меня модификации так и было).
Для удаления из корпуса сервопривода ДП и контроллера необходимо зафиксировать неподвижно шток ДП, например, зажать его в тиски. Далее, слегка «натягивая» корпус СП в сторону контроллера и одновременно прогревая паяльником места пайки контактов ДП на плате контроллера, выпаять ДП из платы и вынуть его из корпуса СП (останется в тисках). Только после этого можно будет достать из корпуса СП сам контроллер. При этом, сохранение целостности ДП не является приоритетной задачей, ибо в своем изначальном качестве он уже не нужен и для дальнейших творческих изысканий может быть заменен любым переменным или подстроечным резистором того же или близкого номинала. В случае если не удастся подобрать постоянный резистор сопротивлением из стандартного ряда, можно «подогнать» ближайший номинал, постепенно счищая «наждачкой» графитовый слой и замеряя получившееся сопротивление. Можно также оставить переменный резистор, заменив его на «многооборотный» прецизионный. Ближайший в ряду российский номинал – 5.1 кОм. Либо использовать триммер канала на пульте РУ.
Контроллер выполнен в виде печатной платы размером около 10х15мм с впаянными в нее радиокомпонентами.
Он имеет один вход управления для сигнала РРМ и два выхода (назовем их «А» и «В»). Выходы являются инверсными по отношению друг к другу в виду того, что СП по сути является реверсивным. Сигнал на обоих выходах – ШИМ. Нагрузочная способность выходов контроллера позволяет подключать к ним микроэлектродвигатель напрямую, что и сделано производителем. На самом деле, ИМС, применяемая в контроллере этого СП, имеет больше двух выходов, но в статье будет рассматриваться применение именно выходов, к которым производитель СП подключил микроэлектродвигатель.
Малый размер платы и удобное расположение контактных «пятачков» и отверстий для внешних связей дает возможность припаять к плате «ножки» и использовать ее как единый радиокомпонент на Вашей печатной плате.
Ну вот, контроллер и ДП (если испортили ДП при пайке, то любой переменный или подстроечный резистор того же или близкого номинала) у нас на столе. Что дальше?
Припаиваем ДП к контроллеру. Для этого лучше использовать соединительные проводники, а не устанавливать ДП непосредственно на плату. С помощью ДП впоследствии можно установить точку нейтрали по отношению к %РРМ, исходя из решаемой задачи, как это сделать – см. ниже.
Чтобы избежать дрейфа точки нейтрали из-за невысокого качества переменного резистора, после окончательной настройки этого параметра рекомендую заменить переменный резистор на два постоянных резистора, сопротивление которых равно сопротивлению каждого плеча ДП соответственно.
Контроллер необходимо дополнить силовыми ключами. Тип элементов и схемотехника силовых ключей могут быть различны и ограничиваются решаемыми задачами, размерами, весом и… навыками Исполнителя. Применение внешних силовых ключей позволяет создавать регуляторы и коммутаторы с нагрузочной способностью в десятки и сотни ампер. Так же, теоретически, нет ограничений по напряжению питания ведомых устройств.
ПРИМЕЧАНИЕ: Для всех творческих изысканий в качестве источника управляющего РРМ-сигнала используется сервотестер, аналогичный этим:
Удобно выставлять нейтраль одним нажатием кнопки на сервотестере, но я не уверен, что это именно нейтраль – навряд ли китайцы калибруют сервотестеры ))).
В части визуализации положения управляющих органов при том или ином %РРМ, на мой взгляд, лучше использовать для настройки реальную аппаратуру РУ.
Указанные на схемах номиналы и типы элементов приведены для примера (использовались в испытаниях) и могут быть заменены на другие, исходя из целей и задач.
Вопросы размеров и веса конечных устройств в статье не рассматриваются.
Варианты использования контроллера.
1. Реверсивный регулятор оборотов двигателя постоянного тока.
Настройка.
Устанавливаем с помощью ДП точку нейтрали контроллера в 50%РРМ, для чего устанавливаем регулятор сервотестера в середину диапазона регулирования (в случае использования реальной аппаратуры РУ – управляющий орган (стик, «крутилка» и т.п.) соответствующего канала). При этом подключенный к регулятору двигатель может произвольно вращаться.
Вращая ось ДП добиваемся полной остановки двигателя. При наличии вольтметра – контролируем отсутствие напряжения на выходе регулятора.
Отключаем питание регулятора, отпаиваем ДП от платы контроллера, замеряем сопротивление каждого плеча. Впаиваем на место ДП в плату контроллера постоянные резисторы с сопротивлением, равным сопротивлению каждого плеча ДП соответственно.
При необходимости поменяйте местами выходы контроллера либо полярность подключения крайних выводов ДП на плате контроллера.
Данный регулятор работает с электродвигателями постоянного тока, которые при смене полярности питающего напряжения изменяют направление вращения якоря.
Соотношение диапазона регулирования %РРМ и диапазона регулирования регулятора:
Как видно из диаграммы, диапазон регулирования контроллера СП составляет 50% от диапазона %РРМ в каждую сторону.
2. Нереверсивный регулятор оборотов двигателя постоянного тока.
Настройка.
Устанавливаем с помощью ДП точку нейтрали контроллера в 0%РРМ, для чего устанавливаем регулятор сервотестера в начало диапазона регулирования (в случае использования реальной аппаратуры РУ – управляющий орган (стик, «крутилка» и т.п.) соответствующего канала). При этом подключенный к регулятору двигатель может произвольно вращаться.
Вращая ось ДП добиваемся полной остановки двигателя. При наличии вольтметра – контролируем отсутствие напряжения на выходе регулятора.
Отключаем питание регулятора, отпаиваем ДП от платы контроллера, замеряем сопротивление каждого плеча. Впаиваем на место ДП в плату контроллера постоянные резисторы с сопротивлением, равным сопротивлению каждого плеча ДП соответственно.
Соотношение диапазона регулирования %РРМ и диапазона регулирования:
Отмечу, что, так как диапазон регулирования контроллера СП составляет 50% от диапазона %РРМ в каждую сторону, регулирование оборотов будет возможно от 0%РРМ до 50%РММ. При 50%РРМ обороты двигателя достигнут максимальных и далее расти не будут (см. диаграмму).
При необходимости поменяйте местами выходы контроллера либо полярность подключения крайних выводов ДП на плате контроллера.
3. Регулятор яркости фар/фонарей и т.п.
Вариант 2 (инверсное регулирование яркости).
Настройка.
Описание настройки не привожу – она аналогична регуляторам для электродвигателя (см. выше) с той лишь разницей, что к выходу подключены лампочки накаливания, а не электродвигатель.
Вы можете самостоятельно попробовать установку точки нейтрали в разных точках диапазона регулирования с тем, чтобы выбрать оптимальную для Вашей задачи.
При необходимости поменяйте местами выходы контроллера либо полярность подключения крайних выводов ДП на плате контроллера.
Как показали эксперименты у отдельных регуляторов (из двух проявилось у одного) в крайних точках лампочки слегка мерцают, что обусловлено наличием импульсов ШИМ, следующих с низкой частотой. Мерцание можно устранить, включив электролитический конденсатор емкостью 4.7-10мкф 16В между затвором и истоком ключевого транзистора (см. вариант коммутатора ниже), однако это приводит к нагреву транзистора при больших токах и необходимости установки его на радиатор (во время испытаний ток через транзистор был около 2А) вследствие перехода в другой режим работы. Так же несколько сужается диапазон регулирования.
4. Коммутатор
Коммутатор может найти применение, например, в качестве дистанционного выключателя световых приборов модели. Так же его можно использовать в аппаратных миксах с другими каналами, например, когда, скажем, при 25% газа нужно включить/отключить фары.
Смещая точку нейтрали можно задавать различное значение %РРМ, при котором коммутатор изменит свое состояние.
Настройка.
Устанавливаем регулятор сервотестера в 25% (цифра для примера) от начала диапазона регулирования (в случае использования реальной аппаратуры РУ – управляющий орган (стик, «крутилка» и т.п.) соответствующего канала). При этом состояние коммутатора может быть произвольным.
Вращая ось ДП добиваемся отключения реле, а затем вращением ДП в обратную сторону добиваемся включения реле. Если реле отключено, то вращаем ДП до момента включения реле. Это и будет порог срабатывания на уровне 25%РРМ.
Отключаем питание коммутатора, отпаиваем ДП от платы контроллера, замеряем сопротивление каждого плеча. Впаиваем на место ДП в плату контроллера постоянные резисторы с сопротивлением, равным сопротивлению каждого плеча ДП соответственно.
Ключ управления реле и само реле выбираются, исходя из целей и задач.
При необходимости поменяйте местами выходы контроллера либо полярность подключения крайних выводов ДП на плате контроллера.
Печатная плата не разрабатывалась, так как сама плата требует наличие места и объема. Обычно практикую навесной монтаж в термоусадке с формой конечного изделия под конкретное место в корпусе. Прочность монтажа приемлемая.
Возможный вариант компоновки одного из регуляторов может быть таким (просто пример):
Для тех, кто не очень знаком с электроникой привожу фото соединений компонетов простого регулятора яркости лампочки накаливания (питание контроллера СП от сервотестера/приемника; красный (+) и черный (-) провода на фото, уходящие вправо — силовое питание 12В).
Используется транзистор NDP7050. У других транзисторов расположение выводов может быть другим, просто найдите в Сети даташит (datasheet) на имеющийся у Вас транзистор — там обычно все расписано/разрисовано, например http://pdf1.alldatasheet.com/datasheet-pdf/view/54154/FAIRCHILD/NDP7050.html
Ориентироваться можно на обозначения выводов G, D, S, сопоставляя их с приведенным на фото.
Электронщики же должны сами знать как-где-что искать ))))
Источник