Как подключить сервопривод без контроллера

Самодельный сервопривод

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

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

Сервопривод получает на вход значение управляющего параметра. Например, угол поворота.

Блок управления сравнивает это значение со значением на своём датчике.

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

Наиболее распространены сервоприводы, которые удерживают заданный угол, и сервоприводы, поддерживающие заданную скорость вращения.

Сервопривод состоит из следующих компонентов: Мотор-редуктор, силовой драйвер, энкодер, зажим для энкодера, микроконтроллер.

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

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

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

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

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

В качестве мотор-редуктора в нашем самодельном серве используется обычный мотор от электростеклоподъёмников. Опробованы и российские и китайские модели. Подходят все, имеющие стандартное крепление. Этот редуктор дешевый и дает огромный момент.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Хотя скорее подходят все имеющие возможность всверлиться в выходную ось вращения для установки энкодера.

Драйвер был трижды полностью переработан. В первой версии сервопривода использовался драйвер на Н-мосте биполярных транзисторов (кт827 и кт825).

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Микроконтроллер представляет собой электронную начинку от маломощных китайских микросервоприводов. Если просто — берем самую дешевую серву и выдираем оттуда мелкую плату. Это и есть мозги и контролер нашей сервы.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Аналог данной системы подобного размера у нас создать пока не получилось. Электроника питается от 5в. и выдает ШИМ сигнал того же уровня. ШИМ идет на драйвер. Микроконтроллер относительно надежен, дешев и точен, что позволяет использовать именно такой вариант, а не разрабатывать свой с нуля.Можно сделать и с нуля, но пайка смд деталей это такое дело.

Выходы этого контролера, те что шли на мотор, надо подключить к входам H моста. А выходу моста уже к мотор-редуктору.

Источник

Управляем сервоприводами из OpenWRT без Arduino

Краткий пост о том как можно избежать лишних элементов в системе с сервоприводами и использовать железо по максимуму

Предыстория

Заинтересовавшихся приглашаю под кат

Те кто уже давно знаком с темой и хочет перейти сразу к сути — смело проматывайте до раздела «Пошаговая инструкция«.

Начнем с начала

Чтобы суть этой заметки была понятна всем, стоит сперва обратить внимание на составляющие сервопривода.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Электродвигатель, редуктор, потенциометр и контроллер. Все гениальное просто, не правда ли?

Для управления сервоприводом используется широтно-импульсная модуляция или ШИМ. Ничего сложного, это просто сигнал в виде импульсов прямоугольной формы. основными параметрами является ширина импульса и ширина «паузы». «Пауза», а лучше называть ее правильно — период, задает частоту сигнала. Скажем, если у нас ширина периода равна 100 мс, то частота будет равна 10 Гц. Посчитать очень просто: переводим миллисекунды в секунды и делим единицу на это число. Соответственно, 100мс = 0,1с и если 1 разделить на 0,1 то получим 10. Можете проверить на калькуляторе.

Ширина импульса задает угол поворота сервопривода, а в случае с моторами летательного аппарата задает скорость и направление вращения.
Схематично это выглядит примерно так:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

А на осциллографе вот так:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Теперь поговорим о том как сервопривод воспринимает такой сигнал. И уже тихонько подкрадывается дьявол с деталями.
Дело в том что контроллер может быть цифровой или аналоговый.
Если совсем по-простому, то разница в том что аналоговый контроллер подает или не подает напряжение только в момент импульса. Выставив интервал импульса 40, 120 или, скажем, 240 мс можно заметить как сервопривод начнет «дергаться» при работе. Все потому что внутри стоит микросхема и частота работы всего сервопривода равна частоте внешнего сигнала. Стандартные 20 мс это 50 Гц, 40 мс это 25 Гц, и по аналогии. Соответственно, 50 или 25 раз в секунду на двигатель подается (или не подается) напряжение. Снизив частоту можно существенно уменьшить крутящий момент и добиться более медленной работы механизма, правда ценой уже описанного «дергания».
Цифровые контроллеры, как правило, представляют из себя небольшой микропроцессор с обвязкой. Ключевое отличие от аналоговой микросхемы в том что внутренняя частота работы постоянна. Вы можете сколько угодно снижать частоту управляющего сигнала, это будет влиять только на время реакции, но крутящий момент будет постоянным. Хотя, выдавая изменение положения через длинные промежутки и небольшими порциями, можно добиться медленной скорости вращения. Тут уже зависит от конкретного сервопривода и его параметров.

Как генерировать сигнал?

Для этого обычно применяют какой-нибудь микроконтроллер, особенную любовь питают к платформе Arduino. Там все просто. Используется готовая библиотека, скармливаем нужной функции параметры сигнала и получаем на заданном GPIO нужной ширины импульсы.
Но что делать если нет возможности использовать микроконтроллер, сопряженный с основным устройством, а мощности самого контроллера для решения задач, ну, никак не хватает? Остается искать альтернативные варианты. И таких есть у меня!
Как уже стало понятным из заголовка, будет использоваться операционная система OpenWrt. Которая по сути своей является полноценным дистрибутивом на ядре Linux. А это дает широкие возможности и гибкость настройки. OpenWrt и ее производные активно используются в различных системах «умный дом», но об этом в другой статье. Как же генерировать ШИМ (или на буржуйском PWM) сигнал? Оказывается, не многим сложнее чем на Arduino. Для этого необходимо задействовать все те же GPIO, а вместо библиотеки модуль ядра под названием PWM-GPIO-Custom. Последняя стабильная версия OpenWrt где он работает — 12.09, но чтобы это понять я потратил около недели, пытаясь заставить работать на текущем Trunk. Не знаю по какой причине, но в официальном репозитории пакета с этим модулем нет и придется собирать его самостоятельно, но это не так сложно. Ниже я напишу как.

Пошаговая инструкция

Итак, для начала нам необходимо загрузить сборочный инструментарий OpenWrt. Хотя, если совсем честно, то начать нужно с уcтановки Linux, но я надеюсь что многие из вас этот пункт уже выполнили.
Итак, вы создали папку для инструментария, перешли в нее
Выполнить загрузку исходников можно командой
git clone git://git.openwrt.org/12.09/openwrt.git
У вас же присутствует терминал в нижней части окна, правда?
Жаль, это очень удобно.

После загрузки нужно перейти в папку openwrt и скачать пакеты командой
git clone git://git.openwrt.org/12.09/packages.git

Теперь у нас есть все исходные коды пакетов. Хотя постойте… А как же pwm-gpio-custom? Его нет.
Не отчаивайтесь, вот он
Нужно просто распаковать содержимое в openwrt/package и все будет хорошо.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Находим PWM Support:
Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Активируем пункт PWM emulation using GPIO. Выбирать пробелом. Нужно чтобы везде стояли звездочки, это важно:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

После этого нужно немного переконфигурировать ядро. Ищем соответствующий пункт:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Ставим звездочку на пункте High Resolution Timer Support, выставляем значение Timer frequency на 1000HZ, а в параметре Premption Model выбираем Low-Latency Desktop:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Необходимо наверняка знать аппаратную платформу своего роутера. Но еще важнее указать ее в конфигурации. У меня это Atheros ar71xx:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера
Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Необходимая настройка ядра завершена. Теперь как только вы нажмете финальный Exit система спросит вас о том стоит ли сохранять изменения, на что нужно ответить утвердительно.

Затем в меню Kernel Modules:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Выбрать Other modules:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

И поставить звездочку на пункте kmod-pwm-gpio-custom:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Остается откинуться на спинку кресла и что-нибудь посмотреть, можно попить чаю/кофе, процесс сборки не быстрый.
Как только сборка закончится, можно переходить в папку bin. В ней будет папка с вашей платформой и образы. Прошиться можно в полном соответствии со стандартной инструкцией. Как только завершится процесс прошивки, можно смело заходить через telnet. Необходимо будет еще дополнительно закачать пакет kmod-pwm-gpio-custom на само устройство. Это можно сделать через SCP, либо через wget, или же установить openssh-sftp-server и воспользоваться FileZilla.

Загружать сам пакет лучше в директорию /tmp, так как ПЗУ не резиновая, а данная директория физически располагается в оперативной памяти, которой обычно от 32 до 64 Mb. После закачки пакет необходимо установить командой opkg install /tmp/kmod-pwm-gpio-custom_xxx.ipk. Можно сильно не заморачиваться с названием пакета, автодополнение по TAB прекрасно работает.

Генерация ШИМ сигнала

После установки пакета можно переходить к непосредственному управлению GPIO и генерации ШИМ сигнала.
Для этого необходимо активировать модуль ядра. Сделать это можно командой insmod pwm-gpio-custom bus0=0,23 bus1=1,20
Это просто пример того как оно может быть. busX задает номер шины, которой можно управлять через символьное устройство под этим самым номером в /sys/сlass/pwm У нас их появится два: gpio_pwm.0:0 и gpio_pwm.1:0. Манипулировать параметрами ШИМ можно просто записывая соответствующие переменные в файлы. Да, чуть не забыл, все значения задаются в наносекундах. Поехали:

echo 10000000 > /sys/class/pwm/gpio_pwm.0\:0/period_ns Задает период. В данном случае это 100 Гц.
echo 8500000 > /sys/class/pwm/gpio_pwm.0\:0/duty_ns Задает скважность.
Да, некоторые выводы инвертированы по умолчанию и необходимо задать время «пустоты» внутри периода. Если же значением High для GPIO явдяется 1, то нужно задать echo 1500000 > /sys/class/pwm/gpio_pwm.0\:0/duty_ns Будет указываться время самого импульса.
Проверить можно опытным путем. Возможно я найду или кто-то подскажет способ сделать это более красиво =)
Теперь осталось только активировать подачу сигнала.
echo 1 > /sys/class/pwm/gpio_pwm.0\:0/run И мы получаем на осциллографе что-то вроде этого
Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Если подключить к выводу PWM кабель сервопривода — он встанет ровно в центральное положение. Разумеется, питание тоже нужно подключить.

Заключение

Таким способом можно добиться генерации сигнала на частоте 200 Гц, а это означает что время реакции для одного привода снизится до 5 мс. Для открывания-закрывания замка, может, и не критично, а вот для летательных аппаратов будет весьма актуально. Надеюсь что я обзаведусь в ближайшее время мотором и контроллером, либо добрый читатель из города Екатеринбург согласится одолжить мне такой для экспериментов и появится вторая статья.
Спасибо что дочитали до конца. На закуску позвольте представить вам немного видео.

Демонатрация работы. Два канала, настроенные на крайнее правое и крайнее левое положение.

Видеодемонстрация ШИМ сигнала.

Хочу выразить огромную благодарность автору модуля Claudio Mignanti, который ответил по почте и разъяснил необходимые вопросы.

Схема сервопривода и управляющих сигналов были взяты на wiki.amperka.ru.

Если у вас есть какие-то дополнения или пожелания — пишите в комментариях.

UPD: a5b интересуется что за устройство было использовано. Ну, это никакой не секрет. Плата — китайский аналог EL-M150. Процессор внутри — Atheros AR9331.
Он используется очень широко в таких распространенных роутерах как mr3020 или wr703n.
Выглядит плата следующим образом.
Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Источник

Сервоприводы: общее руководство

Познакомимся поближе с сервоприводами. Рассмотрим их разновидности, предназначение, подсказки по подключению и управлению.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Список сервоприводов

МодельФорм-факторСигнал управленияОбратная связьНазначениеВнутренний интерфейсДиапазон вращения
Feetech FS90 / ДокументацияМикроPDMНетУдержание углаАналоговый0–180°
Feetech FS90R / ДокументацияМикроPDMНетПостоянное вращениеАналоговый360°
Feetech FT90B / ДокументацияМикроPDMНетУдержание углаЦифровой0–180°
Feetech FT90R / ДокументацияМикроPDMНетПостоянное вращениеЦифровой360°
Feetech FS0403-FB / ДокументацияМикроPDMДаУдержание углаАналоговый0–180°
Feetech FS90-FB / ДокументацияМикроPDMДаУдержание углаАналоговый0–180°
Feetech FS5103RСтандартPDMНетПостоянное вращениеАналоговый360°
Feetech FS5106BСтандартPDMНетУдержание углаАналоговый0–180°
Feetech FS5109MСтандартPDMНетУдержание углаАналоговый0–180°
Feetech FS5113RСтандартPDMНетПостоянное вращениеАналоговый360°
Feetech FB5317M-360 / ДокументацияСтандартPDMДаПостоянное вращениеЦифровой360°
Feetech FB5118M / ДокументацияСтандартPDMДаУдержание углаЦифровой0–300°
Feetech FT6335M / ДокументацияСтандартPDMНетУдержание углаЦифровой0–360°

Что такое сервопривод?

Сервопривод — это мотор, вал которого может встать в заданное положение в градусах или поддерживать заданную скорость вращения.

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

Характеристики сервопривода

Крутящий момент

Крутящий момент представляет собой произведение силы на длину рычага. Другими словами, показывает насколько тяжёлый груз сервопривод способен удержать в покое на рычаге заданной длины.

Например, если крутящий момент равен 5 кг·см, означает что сервопривод удержит в горизонтальном положении рычаг длиной 1 см с подвешенным весом на свободном конце 5 кг. Что равносильно, удержать рычаг длиной 5 см с подвешенным весом на свободном конце 1 кг.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Скорость поворота

Скорость сервопривода — это время, которое требуется выходному валу повернуться на 60°. Характеристика 0,1 с/60° означает, что сервопривод поворачивается на 60° за 0,1 с. Из неё можно вычислить скорость в оборотах в минуту, но так сложилось, что при описании сервоприводов чаще всего используют именно интервал времени за 60°.

Форм-фактор

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

Форм-факторВесРазмеры
Микро9–25 г22×15×25 мм
Стандартный40–80 г40×20×37 мм
Большой50–90 г49×25×40 мм

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Внутренний интерфейс

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

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

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

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

Цифровые сервоприводы решают проблемы, связанные с низкой частотой сигналов, но вместе с тем становятся сложнее в производстве, а потому – дороже. Кроме того они потребляют больше энергии, чем аналоговые.

Материалы шестерней редуктора

Шестерни редуктора могут быть пластиковые и металлические.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Пластиковый шестерни редуктора изготавливается из силикона или нейлона. Пластиковые шестерни слабо подвержены износу, имеют малый вес и довольно дешевы. Это делает их довольно популярными в любительских проектах, где не предполагаются большие нагрузки на механизм.

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

Однако металлические шестерни быстро изнашиваются, так что придётся менять их практически каждый сезон.

Коллекторные и бесколлекторные моторы

Существует три типа моторов для сервоприводов:

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

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

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

Виды сервоприводов

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

Сервоприводы PDM с удержанием угла

Сервоприводы с интерфейсом PDM (PWM), которые преобразуют управляющие сигналы в установку и удержания заданного угла.

Сервоприводы PDM постоянного вращения

Сервоприводы с интерфейсом PDM (PWM), которые преобразуют управляющие сигналы в скорость вращения вала в любом направлении без ограничений по углу поворота.

Сервоприводы SCS

Сервоприводы с интерфейсом SCS, которые преобразуют управляющие сигналы в установку и удержания заданного угла.

Сервоприводы STS

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

Источник

Сервопривод — что это? Как сделать и подключить сервопривод своими руками?

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

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

Устройство

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

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Как собрать модель?

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

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

Обратная связь от сервопривода или «забиваем гвозди»

Всем хабраконструкторам, привет!
Пришла мне как-то в голову дурацкая мысль: собрать девайс, который бы молотком забивал гвозди. Просто ради демонстрации работы сервопривода. Алгоритм простой: даём команду на поднятие молотка, ждём пока он поднимется, отпускаем молоток; и так пока гвоздь не будет забит. Но как узнать, что молоток поднялся и что гвоздь забит, не пользуясь дополнительными датчиками? Спросить у «глупого» сервопривода! Как именно это сделать — об этом и пойдёт речь в статье.

Что такое сервопривод? Наверное, все знают, но на всякий случай: это привод, который в отличие от мотора постоянного тока не просто крутится пока подаётся напряжение, а стремится повернуться к заданному углу и удержаться в этом положении. Угол устанавливается с помощью ШИМ (PWM)-сигнала. Сервопривод стремится к определённому положению, а следовательно должен знать своё собственное. Перед началом сборки я был уверен, что запросить текущий угол будет проще простого и это возможно «из коробки». Не тут то было. Но обо всём по порядку.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Пилим и скручиваем:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Приступаем к написанию прошивки для Arduino… Довольно быстро становится понятно, что установить определённый угол для сервы — не проблема. В частности, это позволяет сделать стандартная библиотека Servo, которая из заданного в градусах угла формирует соответствующий PWM-сигнал. А вот с чтением — проблема: функции для этого нет.

Быстро погуглив проблему, нашёл кучу сообщений на форумах, где на этот вопрос авторитетно отвечали: «Это не возможно! Сервоприводы — это write-only устройства». Меня это привело в замешательство, я интуитивно чувствовал, что достать эти данные как-то просто можно.

Матчасть

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

То есть, у нас есть потенциометр, по сигналу с которого можно определить текущий угол. Осталось только разобрать сервопривод и подключиться в нужном месте. Разбираем:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

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

Вот как припаян потенциометр на сервоприводах от DFRobot:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Нам нужен сигнал с бегунка, который меняется в зависимости от угла поворота от минимального до максимального напряжения. Берём мультиметр, вращаем шпиндель и смотрим: каким углам какой сигнал соответствует. Для моей сервы углу в 0° соответствует напряжение 0.43 В, а максимальному углу поворота в 180° соответствует напряжение 2.56 В.

Аккуратно припаиваем новый сигнальный провод.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Подключаем его к аналоговому входу A5 на Arduino. Закрываем крышку. Пишем программу:

Включаем, пробуем, работает!

Что делать с полученным опытом — вариантов много: можно сделать контроллер вроде того, что используется на кораблях для установки тяги (полный вперёд / полный назад); можно использовать серву с обратной связью как элемент автономного рулевого управления какой-нибудь машины; можно много всего. Да прибудет со всеми нами фантазия!

Модель для отопления

Сервопривод для отопления в наше время является очень востребованным. Отличаются данные устройства высоким параметром предельной частоты. Двигатели чаще всего в моделях используются асинхронного типа. При этом мощность их находится на уровне 2 кВт. Для передачи вращательного момента на вал используются малые шестерни. На сегодняшний день наиболее распространенным принято считать сервопривод для отопления с аналоговыми потенциометрами.

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

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Устройство с клапаном

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

Модель для печки

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

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

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Управления серводвигателем. Описание контроллера

Основой схемы является микросхема 74HC00 (IC1) представляющая собой 4 логических элемента И-НЕ. На элементах IC1A и IC1B создан генератор, на выходе которого образуются импульсы с частотой 50 Гц. Эти импульсы активируют RS-триггер, состоящий из логических элементов IC1C и IC1D.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера
С каждым импульсом идущим с генератора выход IC1D устанавливается в «0» и конденсатор С2 разряжается через резистор R2 и потенциометр P1. Если напряжение на конденсаторе С2 снижается до определенного уровня, то RC-цепь переводит элемент в противоположное состояние. Таким образом, мы на выходе получаем прямоугольные импульсы с периодом 20 мс. Ширина импульсов устанавливается потенциометром P1.

Устройство для регулировки заслонки

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

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

Модель с краном

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

На сегодняшний день многие производители отдают предпочтение модификации РР20. Непосредственно контроллеры устанавливаются поворотного типа. Подключение сервопривода к сети осуществляется при помощи конвертера. На рынке в наше время представлены как нелинейные, так и линейные его типы.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Примеры работы с Arduino

Схема подключения

Многие сервоприводы могут быть подключены к Arduino непосредственно. Для этого от них идёт шлейф из трёх проводов:

Для подключения к Arduino будет удобно воспользоваться платой-расширителем портов, такой как Troyka Shield. Хотя с несколькими дополнительными проводами можно подключить серву и через breadboard или непосредственно к контактам Arduino.

Ограничение по питанию

Обычный хобби-сервопривод во время работы потребляет более 100 мА. При этом Arduino способно выдавать до 500 мА. Поэтому, если вам в проекте необходимо использовать мощный сервопривод, есть смысл задуматься о выделении его в контур с дополнительным питанием.

Рассмотрим на примере подключения 12V сервопривода:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Ограничение по количеству подключаемых сервоприводов

На большинстве плат Arduino библиотека Servo поддерживает управление не более 12 сервоприводами, на Arduino Mega это число вырастает до значения 48. При этом есть небольшой побочный эффект использования этой библиотеки: если вы работаете не с Arduino Mega, то становится невозможным использовать функцию analogWrite() на 9 и 10 контактах независимо от того, подключены сервоприводы к этим контактам или нет. На Arduino Mega можно подключить до 12 сервоприводов без нарушения функционирования ШИМ/PWM, при использовании большего количества сервоприводов мы не сможем использовать analogWrite() на 11 и 12 контактах.

Пример использования библиотеки Servo

По аналогии подключим 2 сервопривода

Библиотека Servo не совместима с библиотекой VirtualWire для работы с приёмником и передатчиком на 433 МГц.

Альтернативная библиотека Servo2

Библиотеки для управления сервоприводами (Servo) и для работы с приёмниками / передатчиками на 433 МГц VirtualWire используют одно и то же прерывание. Это означает, что их нельзя использовать в одном проекте одновременно. Существует альтернативная библиотека для управления сервомоторами — Servo2.

Все методы библиотеки Servo2 совпадают с методами Servo.

Пример использования библиотеки Servo

Синхронные модификации

Синхронный сервопривод — что это? На самом деле указанное устройство используется для регулировки станков. При этом в вентиляционных системах они также являются востребованным. Датчики у моделей устанавливаются, как правило, проворного типа. В данном случае мощность двигателя может варьироваться от 1 до 3 кВт. Отдельного внимания в устройствах заслуживает конвертер. Устанавливается он, как правило, на два контакта. Однако имеются и другие модификации.

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

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

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

Недавно я сделал руку-робота, а сейчас я решил добавить к нему захватывающее устройство, работающее на мини сервоприводе. Я решил сделать два варианта, чтобы посмотреть, как он будет лучше работать с прямой или круглой шестеренкой. Мне понравился больше вариант с круглой шестерней, так как его изготовление заняло всего 2 часа, и зазор между шестернями был совсем небольшим.

Сначала я вырезал детали на фрезерном станке:

Я собрал детали с помощью шурупов 2×10 мм.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

А вот как мини-сервопривод присоединяется к захватывающему устройству:

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Как работает захватывающее устройство с сервоприводом:

И вот теперь, когда все собрано и механическая часть тоже практически готова, мне осталось только доделать электронную часть работы! Я выбрал Arduino для контроля моего робота, и сделал схему (она справа) для соединения Arduino с сервоприводом.

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Схема на самом деле очень проста, она просто дает сигналы на Arduino и обратно. Существует также разъем для инфракрасного приемника и некоторые разъемы для источника питания и 4-х подключений к остальным (неиспользованным) контактам Arduino. Таким образом, можно подключить еще один выключатель или датчик.

А вот как рука-манипулятор двигается:

Асинхронные сервоприводы

Асинхронный сервопривод — что это? В действительности указанное устройство предназначено исключительно для оборудования, которое блок питания имеет на 15 В. В этом случае мощность прибора, как правило, не превышает 2 кВт. Нагрузку максимум потенциометр в моделях способен выдерживать на уровне 23 А. Для передачи крутящего момента от мотора используются не большого диаметра выходные валы. При этом рычаг двигается за счет шестерни.

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

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Управление сервоприводом. Интерфейс управляющих сигналов

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

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

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

Чаще всего в хобби-сервах импульсы производятся с частотой 50 Гц. Это значит, что импульс испускается и принимается раз в 20 мс. Обычно при этом длительность импульса в 1520 мкс означает, что сервопривод должен занять среднее положение. Увеличение или уменьшение длины импульса заставит сервопривод повернуться по часовой или против часовой стрелки соответственно. При этом существуют верхняя и нижняя границы длительности импульса. В библиотеке для Arduino по умолчанию выставлены следующие значения длин импульса: 544 мкс — для 0° и 2400 мкс — для 180°.

Обратите внимание, что на вашем конкретном устройстве заводские настройки могут оказаться отличными от стандартных. Некоторые сервоприводы используют ширину импульса 760 мкс

Среднее положение при этом соответствует 760 мкс, аналогично тому, как в обычных сервоприводах среднему положению соответствует 1520 мкс.

Также стоит отметить, что это всего лишь общепринятые длины. Даже в рамках одной и той же модели сервопривода может существовать погрешность, допускаемая при производстве, которая приводит к тому, что рабочий диапазон длин импульсов немного отличается. Для точной работы каждый конкретный сервопривод должен быть откалиброван: путём экспериментов необходимо подобрать корректный диапазон, характерный именно для него.

На что ещё стоит обратить внимание, так это на путаницу в терминологии. Часто способ управления сервоприводами называют PWM/ШИМ (Pulse Width Modulation) или PPM (Pulse Position Modulation)

Это не так, и использование этих способов может даже повредить привод. Корректный термин — PDM (Pulse Duration Modulation). В нём крайне важна длина импульсов и не так важна частота их появления. 50 Гц — это норма, но сервопривод будет работать корректно и при 40, и при 60 Гц. Единственное, что нужно при этом иметь в виду — это то, что при сильном уменьшении частоты он может работать рывками и на пониженной мощности, а при сильном завышении частоты (например, 100 Гц) может перегреться и выйти из строя.

Сервоприводные модификации линейного движения

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

В противном случае блоки питания не выдерживают предельного напряжения. В качестве приводов в данной ситуации применяются редукторные коробки. Для передачи крутящего момента от двигателя используются шестерни. Да сегодняшний день на рынке представлено множество модификаций с выходным валом. В данном случае регулировать скорость оборотов можно при помощи котроллера. Также следует помнить, что в устройствах имеются специальные платы. Устанавливаются они с маркировкой Р20. Смена режима в данном случае производится за счет контроллера. Роторные модификации сервоприводов в наше время встречаются довольно редко. Используются они чаще всего для управления станками.

Дополнительные возможности

Управление сервоприводами на Ардуино очень простое и мы можем использовать еще несколько интересных фишек.

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

Ардуино имеет встроенную функцию servo.write(градусы), которая упрощает управление сервомоторами. Однако не все сервоприводы соблюдают одинаковые тайминги для всех позиций. Обычно 1 миллисекунда означает 0 градусов, 1,5 миллисекунды – 90 градусов, и, конечно, 2 миллисекунды означают 180 градусов. Некоторые сервоприводы имеют меньший или больший диапазон.

Для лучшего контроля мы можем использовать функцию servo.writeMicroseconds(микросекунды), которая в качестве параметра принимает точное количество микросекунд. Помните, 1 миллисекунда равна 1000 мкс.

Несколько сервоприводов

Чтобы использовать более одного сервопривода в Ардуино нам нужно объявить несколько серво-объектов, прикрепить разные контакты к каждому из них и обратиться к каждому индивидуально. Итак, нам нужно объявить объекты – столько сколько нам нужно:

Затем нам нужно прикрепить каждый объект к сервомотору. Помните, что каждый сервопривод использует отдельный пин:

В конце концов, мы должны обращаться к каждому объекту индивидуально:

Подключение. Земля сервоприводов идёт на GND Arduino, питание на 5В или VIN (в зависимости от входа). И, в конце концов, каждый привод должен быть подключен к отдельному цифровому выводу.

Вопреки распространенному мнению, сервоприводами не нужно управлять через пины PWM – любой цифровой пин подойдет и будет работать.

Управление мышью

Чтобы управлять серво с помощью мыши, вот простой код:

Вам не обязательно использовать этот код, вы также можете отправлять команды на плату arduino с серийного монитора Arduino IDE. Позиция сервопривода от 0 до 180 – это команды 0 и 180 сек соответственно.

В основном этот код берет позицию mouseX (от 0 до 720) и делит на 4, чтобы получить угол для сервопривода (0-180). Наконец, значение выводится на последовательный порт с префиксом ‘s’.

Примечание: «s» на самом деле должен быть суффиксом, но поскольку это повторяется, это не имеет значения для результата.

Не забудьте сначала проверить с помощью println(Serial.list ()) COM-порт, который следует использовать.

Сервоприводы с непрерывным вращением

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

Например, функция Servo1.write(0) заставит сервомотор вращаться против часовой стрелки на полной скорости. Функция Servo1.write(90) остановит двигатель, а Servo1.write(180) будет вращать вал по часовой стрелке на полной скорости.

Таким сервоприводам нашли несколько применений, но нужно понимать, что они достаточно медленные. Один из вариантов – микроволновая печь, когда есть необходимость в двигателе для вращения продуктов питания. Но будьте осторожны, микроволны – опасное дело!

Маленький сервопривод SG90. Размеры: 22.6 x 21.8 x 11.4 мм. Вполне подойдет для использования в радиоуправляемых моделях. Имеет три вывода: Плюс, Минус и Сигнал. Вращение ротора осуществляется на 180 градусов. Обеспечиваемый момент вращения при 4,8 В около 1,98 кг*см. Скорость вращения — 60 градусов за 0,14 сек. Рабочее напряжение от 3,5 до 7,2 Вольт. Подключение сервопривода SG90.

Обозначение проводов сервопривода SG90: Красный — Плюс питания Коричневый — Минус питания GND Желтый — Сигнал

Программа для Ардуино:

#include /подключение библиотеки для работы с сервоприводом Servo myservo;

void setup() void loop() Читайте также: Как соединить провода без пайки: лучшие способы и их особенности + монтажные рекомендации

for (int p=179; p>=1; p—) / медленно возвращаемся к нулю >

Видео работы SG90

В данной статье рассматриваются сервоприводы: их устройство, предназначение, подсказки по подключению и управлению, разновидности сервоприводов и их сравнение. Давайте приступим и начнём с того, что же такое сервопривод.

Устройства для промышленных роботов

Для промышленных роботов сервопривод — что это? В действительности указанное устройство является многофункциональным котроллером. В данном случае платы используются серии РР30. За счет этого у пользователя открывается возможность регулировать параметр предельной частоты. В среднем он колеблется в районе 25 Гц. Работают устройства данного типа от блоков питания на 15 В.

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

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Библиотека Servo

Можно генерировать управляющие импульсы самостоятельно, но это настолько распространённая задача, что для её упрощения существует стандартная библиотека Servo

Сервопривод постоянного вращения можно управлять с помощью библиотек Servo или Servo2. Отличие заключается в том, что функция Servo.write(angle)

задаёт не угол, а скорость вращения привода.

Библиотека Servo позволяет осуществлять программное управление сервоприводами. Управление осуществляется следующими функциями:

В библиотеке Servo для Arduino по умолчанию выставлены следующие значения длин импульса: 544 мкс — для 0° и 2400 мкс — для 180°.

Пример подключения двух сервоприводов.

не совместима с библиотекой
VirtualWire
для работы с приёмником и передатчиком на 433 МГц, так как они используют одно и то же прерывание. Это означает, что их нельзя использовать в одном проекте одновременно. Существует альтернативная библиотека для управления сервомоторами — Servo2. Все методы библиотеки Servo2 совпадают с методами Servo.

При работе с сервоприводами на 360 градусов функции работают по другому.

Функция ArduinoСервопривод 180°Сервопривод 360°
Servo.write(0)Крайне левое положениеПолный ход в одном направлении
Servo.write(90)Среднее положениеОстановка сервопривода
Servo.write(180)Крайне правое положениеПолный ход в обратном направлении

Сервоприводные модели для полиграфических станков

Для полиграфических станков модели необходимы с синхронными типами моторов. Мощность их обязана достигать 2 кВт. Параметр предельной частоты приветствуется на уровне 30 Гц. На сегодняшний день большинство производителей выпускают сервоприводы с аналоговыми потенциометрами. Также следует отметить, что редукторные коробки, как правило, используются плоские. Все это необходимо для того, чтобы устройство было компактным.

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

Устройства для швейных машин

Сервоприводы данного типа отличаются от прочих устройств своей компактностью. Двигатели у таких моделей чаще всего можно встретить асинхронного типа. От сети с напряжением 220 В они работают без каких-либо проблем. Регулятор в данном случае используется поворотного типа. Максимум параметр предельной мощности достигает 1.2 кВт. Пороговая частота в этой ситуации едва доходит до отметки 20 Гц. Потенциометры используются только аналогового типа.

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

Как подключить сервопривод без контроллера. Смотреть фото Как подключить сервопривод без контроллера. Смотреть картинку Как подключить сервопривод без контроллера. Картинка про Как подключить сервопривод без контроллера. Фото Как подключить сервопривод без контроллера

Сервоприводные модификации для упаковочных станков

Модель данного типа чаще всего работает от движения пневмоцилиндров. При этом блоки питания часто используются на 12 В. В данном случае системы защиты устанавливаются довольно часто. Конвертеры можно встретить на два и три контакта. Статорные коробки устанавливаются различной конфигурации. В некоторых случаях датчики обратной связи в сервоприводах заменяются энкодерами. Роторные коробки на предельное напряжение должны быть рассчитаны в районе 12 В. Резистивные механизмы в устройствах встречаются довольно редко.

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *