Где можно программировать сервомашинки emax
Сообщений: 654
Из: Страна вечнозелёных помидоров, Минск
Модель: Много всякой хрени
Репутация: 3
Сообщений: 3
Из: МОЛОДЕЧНО
Репутация: 0
Сообщений: 654
Из: Страна вечнозелёных помидоров, Минск
Модель: Много всякой хрени
Репутация: 3
Сообщений: 306
Из: Минск
Модель: стелс ,экстра 330, F6 Hellcat,LFG Roland
Репутация: 4
Сообщений: 3
Из: МОЛОДЕЧНО
Репутация: 0
Сообщений: 142
Из: Минск, Малиновка4
Модель: несколько
Репутация: 4
включить передатчик,
полный газ,
подключить питание к приёмнику
ждать 2сек 2бип 6сек 4бип
ждём сигнал соответствующий номеру настройки 1-8
газ выключить
ждем сигнал соответствующий параметру настройки 1-Х
полный газ
после завершения программирования я просто выключаю питание (пока всё работает )
если что подправьте
Эскизы прикрепленных изображений
Управление сервоприводом с помощью микроконтроллеров AVR
Целью этой статьи является обзор того, как работает сервопривод и как управлять им с помощью микроконтроллеров AVR.
Сервопривод нашел широкое применение в радиоуправляемых моделях, робототехнике и автоматике. Он управляется по одному сигнальному проводу с помощью импульсов переменной ширины частота которых равна 50Гц. Основными параметрами этих импульсов являются минимальная ширина, максимальная ширина и частота. Сейчас на рынке представлено огромное количество моделей приводов у которых сигналы управления могут отличаться, но в основном ширина импульса 1 мс соответствует углу поворота в 0 градусов, а ширина в 2 мс соответствует углу в 180 градусов.
Нейтральное положение определяется как положение, в котором сервопривод обладает одинаковым потенциалом вращения в обоих направлениях. Важно отметить, что различные сервоприводы обладают разными ограничениями в своем вращении, но они все имеют нейтральное положение, и это положение всегда находится в районе ширины импульса в 1,5 мс.
Когда сервопривод получает команду на перемещение, он перемещается в это положение и удерживает его. Если внешняя сила действует на сервопривод, когда он удерживает заданное положение, сервопривод будет сопротивляться перемещению из этого положения. Максимальная величина силы, которую может выдерживать сервопривод, характеризует вращающий момент сервопривода. Однако, сервопривод не навсегда удерживает свое положение, импульсы позиционирования должны повторяться, информируя сервопривод о сохранении положения.
Схема подключения сервопривода
Эта схема служит для тестирования сервомашинок в ручном или авто режиме. Здесь я использовал микроконтроллер ATmega328, который тактируется от внутреннего тактового генератора частотой 8МГц. Кнопка S1 «Режим» переключает режимы работы устройства, ручной и авто режим. При нажатии кнопки S2 «Центр» привод перемещается в центральное положение в ручном режиме при этом загорается светодиод D1. Потенциометр R2 предназначен для регулировки угла поворота привода в ручном режиме или скорости движения в авто режиме. Большинство сервомашинок имеет трехпроводное подключение, плюс питания(красный), минус питания(черный или коричневый) и сигнал управления(оранжевый, желтый или белый).
Получить сигнал с изменяемой шириной и частотой 50 Гц(периодом 20мс) достаточно легко, для этого используется 16 битный таймер/счетчик в режиме FastPWM. Частота выходного сигнала в режиме FastPWM вычисляется по формуле:
где fclk — частота микроконтроллера;
N — предделитель таймера;
ICR — предел счета.
В нашем случае f = 8000000/(8*(1 + 20000)) = 50Гц(или 20мс)
Подготовим регистры таймера TCCR1A/B: выход таймера OC1A настроим на сброс при совпадении и установку на вершине счета, выбираем режим FastPWM с пределом счета ICR1, так как частота тактирования контроллера равна 8МГц включим предделитель на 8, чтобы получить частоту таймера 1МГц.
Для генерации ШИМ-сигнала на выходе OC1A используется регистр OCR1A. Ширина импульса сигнала изменяется путем записи определенных значений в регистр OCR1A, например при значении 1500 ширина импульса будет равна 1,5мс.
Как поговорить с микроконтроллером из JS
Зачем нужен микроконтроллер? Например, чтобы устроить дома пивоварню. Если своего пивного заводика мало, то можно и что-то масштабнее: построить квест-комнату, оформить презентацию, интерактивный фонтан, который рисует картину каплями, или выставочный стенд для большой компании. С микроконтроллером можно сделать что угодно — все зависит от фантазии.
Есть заблуждение, что для создания своих железок требуется знать ассемблер, C/C++, уметь управлять памятью и глубоко понимать электричество. Когда-то так и было, но технологии развиваются и сейчас для полноценной реализации своего проекта достаточно только JS!
Ок, JavaScript мы знаем, а как соединить его с железом? Какое вообще бывает железо и что умеет? Как настроить всю систему? В расшифровке доклада Виктор Накорякова на FrontendConf узнаем: как, с помощью одного лишь JS, управлять сервоприводами, как физически объединить систему с PC, и о вариантах коммуникации приложения на JS. Обсудим пакеты serialport и Firmata, serialport с самописной прошивкой на C++, Espruino и программирование контроллера прямо на JS, Raspberry Pi, HTTP в локальной сети и HTTP и MQTT через облако.
Виктор Накоряков (nailxx) — технический директор, сооснователь компании «Амперка». Любит передовые технологии разработки, функциональное программирование и physical computing. «Амперка» производит и продает электронные модули, чтобы непрофессионалы создавали умные устройства своими руками, обучающие наборы и отдельные строительные кубики, которые можно добавлять к своему устройству — моторы, GPS, SMS.
Куда писать JavaScript
В Espruino — автономный микроконтроллер с JavaScript. Платформа Espruino позволяет писать JS прямо в микроконтроллер. Это автономная вещь в себе: подключили к компьютеру, прошили, и дальше работает самостоятельно.
В Raspberry Pi — маленький компьютер с GPIO.
В веб-приложение — на фронтенд или бэкенд.
Работу системы покажу на примере лягушки. Заходите с телефона на toad.amperka.ru — появится нехитрый веб-интерфейс.
Левая колонка управляет левым глазом, правая — правым. Принцип простой — нажал на кнопку, сервомотор крутит глаз.
Видео демонстрации стенда с лягушкой во время доклада.
Как работает лягушка
При открытии toad.amperka.ru, вы получаете статичную веб-страницу со статичным JS, который использует библиотеку MQTT.js. Эта библиотека связывается с брокером MQTT в облаке.
Если знакомы Redis, Publish/Subscribe, RabbitMQ или другие очереди сообщений, то сразу поняли о чем речь. MQTT — это брокер сообщений Machine-to-Machine. Легковесный и простой, чтобы даже слабые железки могли им пользоваться.
Для MQTT требуется брокер на сервере. Но вам даже не нужно его поднимать — арендуйте. За пару долларов в месяц у вас будет свой собственный MQTT-брокер. Бэкенд не нужен.
С другой стороны от брокера MQTT находится контроллер. Существует много разных устройств с этой ролью, например, Wi-Fi Slot. Это контроллер, который умеет соединяться с интернетом.
Он работает на базе популярного чипа ESP8266. К чипу добавлена возможность питания через микро-USB и подключение внешней периферии через тройные контакты для соединения с другими устройствами.
Как программировать железо на JS
Ничего необычного, JS обычный — почти полный ES6. В стандартную библиотеку добавлены некоторые функции и объекты для работы на низком уровне с электрическими сигналами. Например, функции для простого цифрового считывания и записи.
digitalRead — цифровое считывание. Это вопрос контроллеру: «Есть три вольта на пине №4?». Если напряжение есть, он вернет TRUE, если нет — FALSE. Так реализуется считывание простых бинарных датчиков: кнопок, переключателей, герконовых замков и инфракрасных датчиков движения.
digitalWrite — простая цифровая запись. Говорим digitalWrite TRUE — с pin уходит 3V. Говорим digitalWrite FALSE — 0V. С помощью этого простого принципа можно зажечь/погасить светодиодную ленту или запустить ядерную ракету. Мы посылаем слабый сигнал на реле, оно коммутирует большую нагрузку и ракета полетела.
Также есть функции для работы с промежуточными значениями между 0 и 3V:
- analogRead;
- analogWrite;
- setWatch;
- digitalPulse.
Дальше идут объекты для работы с интерфейсами, которые приняты в микроконтроллерном мире. Если в вебе нам понятны и знакомы HTTP, WebSocket, TCP, то для микроконтроллера это:
- Serial — последовательный порт;
- шина I2C;
- шина SPI;
- шина OneWire.
Как пинать сервомотор
Для примера расскажу, как управлять мотором, который стоит в гипножабе. Протокол мотора простой. На контрольный пин подается 0V — нижняя граница. Раз в 20 мкс его нужно пинать, давая стабильную единичку — 3V, а через некоторое время — сбрасывать до 0.
Дальше все повторяется заново. В зависимости от длины единички, получаем разную скорость вращения. При длине импульса в 1500 мкс мотор стоит на месте. При отклонении в ту или иную сторону он крутится по часовой или против часовой стрелки. Величина отклонения влияет на скорость вращения.
Как программировать
Программирование платформы Espruino производится в одноименной среде Espruino IDE. Плата микроконтроллера подсоединяется к компьютеру микро-USB кабелем. Единственное, придется поставить драйвер, что занимает 1,5 минуты. Драйвер ставится для MAC и Windows, а на Linux всё работает из коробки.
Вот пример программы, которая загружается в среду одной кнопкой. Она мигает светодиодом раз в секунду:
Слева в среде находится REPL-интерпретатор. Вводим «1+1». Программа выдаёт ответ «2». Чудо!
Чудо в том, что при нажатии кнопок, цифра «1», знак «+» и следующая единичка ушли по кабелю на контроллер. При нажатии «ENTER», выражение исполнилось внутри микроконтроллера, а не компьютера. Микроконтроллер получил результат «2» и вернул его обратно по кабелю на компьютер. На мониторе высветилось «2».
Кроме развлечений с арифметикой, можно крутить моторы. Понадобится функция «analogWrite», которая посылает квадратную волну. Говорим на какой пин выдавать волну. Например, у меня на плате он подписан как A7. Затем указываем длительность — например, 1300 мкс из 20 000 мкс будем подавать единицу. Также требуется опция, которая задает частоту этого пинания — 50 раз в секунду, это и есть 20 000 мкс.
Перевалим за 1500 — заставим крутиться в другую сторону с большей скоростью.
Или скажем остановиться.
Используя те же функции, можно написать целую программу, которая в зависимости от внешних факторов — нажатия кнопок, показаний сенсоров — выполнит то, что вам хочется.
Библиотеки
- servo.write;
- barometer.init;
- barometer.read;
- barometer.temperature;
- nfc.listen;
- nfc.on(‘tag’, . );
- nfc.readPage;
- nfc.writePage;
- relay.turnOn;
- relay.turnOff;
- gas.calibrate;
- gas.read(‘CO2’);
- telegram.sendMessage.
Код на клиенте
Итак, когда нажимаем одну из кнопок левого или правого столбика в нашей лягушке, на топик toad/eye/left или right отправляется значение, которое мы хотим установить на соответствующий сервопривод.
1300 — это длительность импульса. Откуда берется left и 1300? Я их просто добавил в HTML в виде data-attributes.
В JS мы пишем простой код.
Разберем код по частям. На старте подключаемся к брокеру, который по умолчанию работает на порту 9001: const client = mqtt.connect(`ws://$
При нажатии на любую из кнопок публикуем новый message с payload, который достали из data-attribute: client.publish(`toad/eye/$
Дальше публикуем на топик, который сформировали тоже на основе data-attribute. Это весь наш JS-код в браузере.
Код на плате
Когда стартует Wi-fi Slot, он подписывается на интересующие его топики и принимает данные. Когда они приходят, слот реагирует и заставляет работать моторы.
Код на плате условно разбит на несколько частей. Для начала мы подключаем библиотеки. В частности, это как раз библиотека, которая управляет Servo, чтобы не вспоминать детали. Они находятся в скоупе «amperka».
Каждый может создавать и публиковать свои библиотеки. Мы сделали несколько десятков для наших собственных и других популярных модулей. Все Open Source — заходите, пользуйтесь.
Затем нам понадобятся библиотеки для работы с Wi-Fi и MQTT-брокерами.
Здесь нет ОС, поэтому даже подключение к Wi-Fi — ручная операция. Забота о подключении лежит на вас, но это не так уж сложно. Чтобы подключиться к сети просто вызываем метод «connect», который в случае успеха или неудачи вызовет «callback» и сообщит об итогах операции.
Если все хорошо — подключимся к MQTT-брокеру.
При успешном подключении подпишемся на интересные топики, то есть на все, что начинается с toad/eye.
Когда получаем какое-либо сообщение — разбираемся, куда оно пришло. Это очень похоже на простой разбор URL. В зависимости от топика решаем, на какой глаз будем влиять. Если получили что-то осознанное, то на этот глаз пишем то, что пришло в «payload» в микросекундах.
Вот и вся магия лягушки.
Ограничения Espruino JS
Мы пробежались по платформе Espruino. Крутить глаза лягушкам — не единственная ее опция. Но у платформы есть свои косяки, которые заставляют рассматривать другие варианты.
«Всего» 1–4 Mb RAM. Есть ограничение по оперативной памяти. На код и data одновременно дается всего несколько мегабайт. Может показаться, что в эру, когда оперативка измеряется гигами, это мало. Но для группы небольших устройств этого достаточно. На 2 Mb можно делать шикарные вещи — на фонтан хватит.
Не всё так просто с NPM. Эта проблема относится к Espruino IDE. Если пишем «require», Espruino смотрит в одном месте, в другом, и если не нашла — производит fallback на NPM. В этот момент может тормозить. Espruino не всегда может разобраться со сложными пакетами. Ее мощь в этом смысле гораздо ниже, чем у того же Webpack или Parcel. Это боль, но если вы настроите toolchain самостоятельно, с пониманием того, что происходит внутри железа, то проблемы нет.
Ассортимент железа. Не каждая железка, которая называется платформой для разработки, потянет Espruino. По меркам мира микроконтроллеров, Espruino прожорлива — ей нужно от 500 Kb оперативной памяти. Такую память даст не любая железка. У канонических Arduino Uno или Arduino Nano всего 2 Kb RAM — поэтому там нельзя. Работать с Espruino возможно на железе, которое делаем мы и на официальном железе от Espruino.
Espruino — это компания одного человека, который часто выходит на Kickstarter с новыми продуктами и всегда успешно проводит сбор. Если хотите поддержать платформу — покупайте официально.
Есть третий вариант — взять достаточно мощный, но сторонний devboard. Например, у компании ST, которая производит «Nuclear» и «Discovery». Железо с надписью STM32, скорее всего, потянет Espruino.
Пробежимся по двум альтернативным вариантам. Первый — Raspberry Pi.
Raspberry Pi
Дополнительно есть пины ввода/вывода. Если у вас в распоряжении Raspberry Pi — используйте следующую топологию устройства.
Здесь облако опционально — мобильное устройство может подключаться непосредственно к устройству через hostname, API или систему автоматического определения устройству в сети. У меня дома есть умный телевизор и винчестер для бэкапа. Они доступны со всех других устройств просто потому, что они находятся в том же LAN.
Принцип тот же самый. Ставите устройство на Raspberry Pi в сеть и строите клиент так, что он через HTTP или WebSocket непосредственно соединяется с ним, минуя посредников. Облако для своих целей использует само приложение на Raspberry Pi: протоколирует сенсоры или транслирует прогноз погоды.
Следующая возможная топология с полноценным бэкендом.
В облаке поднимается сервер. Его клиент — то же мобильное приложение, которое держит соединение через HTTP или WebSocket. С другой стороны соединение держится уже через Raspberry Pi, используя HTTP или тот же самый MQTT.
В таком подходе преимущество в полном контроле: валидация, авторизация, отказ клиентам. При этом всемирная доступность — устройство в Москве, а коммуникация с ним доступна из Владивостока.
Ограничения Raspberry Pi
Длинная загрузка. Raspberry Pi — полноценный компьютер и на старт требуется время. В качестве винчестера используется SD-карта. Даже самая быстрая карта все равно проигрывает обычным HDD, не говоря о SSD. По времени загрузка приближается к минуте.
Следующий недостаток — это энергопотребление. В плане энергоэффективности, рассуждайте о Raspberry Pi как о мобильном устройстве. От аккумулятора она протянет недолго — счет идет на часы. Чтобы устройство работало полгода или год, требуется грамотная программа для микроконтроллера и комплект батареек.
Бедный GPIO — general-purpose input/output. Фичи подачи волн, считывание волн, работа с аналоговыми сигналами у Raspberry Pi гораздо слабее, чем у микроконтроллеров, для которых это основная задача. Например, из коробки на Raspberry Pi не удастся управлять сервоприводом в аппаратном режиме.
Ограничение условно, потому что его можно обойти расширением. Например, железкой Troyka Cap, которая берет все низкоуровневое управление работы с сигналами на себя. Raspberry Pi общается с ней с помощью высокоуровневого пакета. Отдает команды покрутить сервопривод и он работает. С помощью таких плат расширения можно подключать все, что угодно.
Arduino
Можно взять обычную Arduino, которая всем надоела. Но JavaScript придется перенести куда-нибудь, что может крутить Node JS — старый компьютер или та же Raspberry Pi.
Соединяем старый ненужный компьютер с Arduino через USB-кабель. В Arduino один раз заливаем стандартную прошивку Firmata. Она превращает Arduino в зомби, который выполняет указания мастера — старого компьютера. Мастер говорит передать на такой-то пин такой-то сигнал, и Arduino передает.
Для коммуникации используются библиотеки с NPM — SerialPort и Firmata с понятным API. Так вы опять в мире JS, пишете высокоуровневую программу, которую отправляете на свой сервер. Работу с сигналами доверяете Arduino, и она ее исполняет.
Не всегда с Firmata получится управлять всем. Она способна обеспечить взаимодействие с тем железом, для которого предназначена: сервоприводы, светодиодные ленты, медиа-контроллеры. Но если возможность считывать вполне конкретный гироскоп или акселерометр не заложена — не подойдет. Тогда придётся на обычную Arduino писать программу на C.
Но это еще не все — если писать на C нет желания, воспользуйтесь Open Source инструментом XOD.io.
Это визуальная среда программирования, где граф, который вы строите, превращается в сишный код, и уже его можно компилировать и заливать. XOD.io позволяет людям, которые слабо знакомы с тонкостями и нюансами микроконтроллерного программирования, быстро создавать простые программы. Если вы выросли из Firmata, но пока не чувствуете сил писать на низком уровне — используйте XOD.io.
Следующая конференция FrontendConf пройдет в октябре. Знаете о JavaScript такое, чего не знает большинство фронтенд-разработчиков, разрабатываете интерфейсы, которыми удобно пользоваться или нашли грааль производительности и готовы рассказать, где он находится, — ждем заявки на доклады.
Интересные доклады в программе, новости конференции, видео и статьи собираем в регулярную рассылку — подписывайтесь.
Что такое сервопривод, как он работает и как им управлять?
Вряд ли сегодня кого-то можно удивить тем количеством электрических приборов, которые окружают человека в повседневной жизни. Многие из которых давно взяли на себя часть человеческого труда и обязанностей. Повсеместная автоматизация процессов охватила самые разнообразные отрасли, начиная автомобилестроением, и заканчивая устройствами в быту. Львиную долю нагрузки относительно автоматического управления параметрами работы умных машин берет на себя сервопривод.
Что такое сервопривод?
Под сервоприводом следует понимать такое устройство, которое обеспечивает возможность управления рабочим органом посредством обратной связи. Само название произошло от латинского servus, что в переводе означает помощник. Изначально сервопривод использовался в качестве вспомогательного оборудования для различных станков, машин и механизмов. Однако с развитием технологий и постоянно растущей необходимостью повышать точность электронных устройств им начали отводить куда более значимую роль.
Устройство и принцип работы
Рис. 1. Устройство сервопривода
Устройство и принцип работы каждого сервопривода может кардинально отличаться от других моделей. Однако в качестве примера мы рассмотрим наиболее актуальные варианты.
Конструктивно он может состоять из:
- Привода – устройства, приводящего в движение рабочий орган. Может выполняться посредством синхронного или асинхронного двигателя, пневмоцилиндра и т.д.
- Передаточный механизм – система шестеренчатой кривошипной или другой передачи, редуктор.
- Рабочий элемент – управляет перемещением в пространстве, непосредственно вал редуктора, передаточный механизм и т.д.
- Датчик – сигнализирует о достигнутом положении и передает информацию по каналу обратной связи.
- Блок питания – может применяться в случае прямого подключения сервопривода к сети, где требуется преобразование уровня и типа напряжения.
- Блок управления – осуществляет подачу управляющих сигналов на сервомотор для передвижения или корректировки места положения. Для этого применяются микропроцессоры, микроконтроллеры и т.д. К примеру, очень популярна плата Arduino.
Принцип действия заключается в подаче управляющего импульса на асинхронный или синхронный двигатель, который начинает вращаться, пока рабочий орган не окажется в нужной позиции. Как только будет достигнуто установленное положение, на датчике обратной связи появится нужный сигнал, который, перейдя на блок управления, прекратит питание электромеханического устройства. Движение сервопривода прекратится до появления новых электрических сигналов.
Далее начнется новый цикл работы устройства, число команд и последовательность их выполнения определяется заложенной программой.
Сравнение с шаговым двигателем
Рис. 2. Сравнение с сервопривода с шаговым двигателем
Вполне вероятно вы могли слышать, что та же функция часто выполняется шаговыми двигателями, однако между этими двумя устройствами имеется существенное отличие. Шаговый привод действительно осуществляет точное позиционирование объекта за счет четкого числа подаваемых на электрическую машину импульсов, они достаточно тихоходны и не создают лишнего шума. В остальном сервоприводы обладают рядом весомых преимуществ по сравнению с шаговыми электродвигателями:
- Могут использовать для привода любой тип электрической машины – синхронный, асинхронный, электродвигатель постоянного тока и т.д.
- Точность механического привода не зависит от износа деталей, появления люфтов, термических и механических изменений конструктивных элементов.
- Диагностирование неисправностей происходит моментально за счет обратной связи.
- Скорость вращения – любой обычный электродвигатель вращается быстрее шагового привода.
- Экономичность – вращение вала у шаговой электрической машины осуществляется при максимально допустимом напряжении питания, чтобы обеспечить максимальный момент.
Но кроме перечисленных преимуществ есть ряд позиций, по которым сервопривод уступает шаговому двигателю:
- Сложность системы управления и необходимость реализации ее работы – шаговый двигатель контролируется обычным счетчиком числа импульсов.
- Необходимость контролировать как частоту вращения, так и принимать меры для принудительного затормаживания в нужной точке – это приводит к дополнительным затратам энергии, программных и механических ресурсов.
- Обязательно используется дополнительный измерительный блок, контролирующий положение рабочего органа.
- Сервопривод обладает значительно большей стоимостью, поэтому применение шагового двигателя обходится дешевле.
Назначение
Рис. 3. Область применения
Сервопривод используется в самых различных направлениях науки и техники, где электрический привод, помимо функции вращения каких-либо элементов, должен выполнить и точное позиционирование. На практике они повсеместно используются в ЧПУ станках, автоматических задвижках, электронных клапанах, заводских станках с программным управлением, робототехнике.
В бытовых системах сервомоторы устанавливаются в системах отопления для регулировки подачи теплоносителя, топлива, управления нагревательным элементом, контроля переключения между центральными и автономными системами энергетических ресурсов и т.д. В автомобилях их используют для отпирания, запирания багажника, электронных блокировок.
Разновидности
За счет многолетнего развития сервоприводов сегодня можно встретить самые различные виды устройства. Поэтому мы рассмотрим наиболее распространенные критерии разделения.
По типу привода:
- асинхронные сервоприводы – получаются дешевле, чем с синхронным электродвигателем, могут обеспечить точность даже при низких оборотах выходного вала;
- синхронные – более дорогой вариант, но быстрее разгоняется, что повышает скорость выполнения операций;
- линейные – не используют классических электрических моторов, но способны развивать большое ускорение.
По принципу действия выделяют:
- электромеханический сервопривод – движение обеспечивается электрической машиной и шестеренчатым редуктором;
- гидромеханический серводвигатель – движение осуществляется при помощи поршневого цилиндра, обладают значительно большей скоростью перемещения;
По материалу передаточного механизма:
- полимерные – износоустойчивые и легкие, но плохо переносят большие механические нагрузки;
- металлические – наиболее тяжелый вариант, относительно быстро изнашиваются, но могут выдерживать любые нагрузки;
- карбоновые – имеют средние характеристики по прочности и износоустойчивости, в сравнении с двумя предыдущими, но имеют более высокую стоимость.
По типу вала двигателя:
- с монолитным ротором – тяжелые сервоприводы, создают вибрацию при вращении;
- с полым ротором – самые легкие модели, быстро реагируют на команды и набирают обороты, их легче контролировать;
- с бесколлекторным ротором – не имеют подвижных контактов, которые создают дополнительное сопротивление вращению, наиболее дорогой вариант.
Технические характеристики
При выборе конкретной модели сервопривода необходимо руководствоваться основными техническими параметрами, которые изготовитель указывает в паспорте устройства.
Наиболее значимыми характеристиками сервомотора являются:
- Усилие на валу серводвигателя – определяет механический момент и способность перемещать определенный вес, создавать усилие при резке, фрезеровке и т.д.
- Скорость вращения – показывает, сколько поворотов вала может совершить устройство за единицу времени.
- Величина питающего напряжения – чаще всего электроснабжение сервопривода выполняется постоянным током, хотя встречаются модели и с переменным током выходного напряжения. Подключение питания к сервоприводу осуществляется тремя проводами: питающим, управляющим и общим.
- Угол вращения сервопривода – поворот выходного элемента, как правило, выпускается на 180° и 360°.
- Скорость поворота – подразделяется на сервоприводы с постоянным вращением и с переменной частотой.
Способы управления
Рис. 7. Способ управления сервоприводом
По способу управления могут быть аналоговые или цифровые сервоприводы, первый из них подает сигналы с разной частотой, которая задается специальной микросхемой, контролирующей работу устройства. Цифровые сервоприводы, в свою очередь, отличаются наличием процессора, который принимает команды и реализует их в качестве различных режимов работы на приводе.
Их практическое отличие заключается в наличии мертвых зон у аналоговых способов, цифровые лишены этого недостатка, к тому же они быстрее реагируют на изменения и обладают большей точностью. Однако цифровой способ управления имеет большую себестоимость и на свою работу он расходует больше электроэнергии.
На рисунке 8 приведен пример управления сервоприводом с помощью подаваемых импульсов:
Рис. 8. Схема управления сервоприводом
Как видите на рисунке, сигнал поступает к генератору опорных импульсов (ГОП), подключенному к потенциометру. Далее сигнал поступает на компаратор (К), сравнивающий величины на выходе схемы и поступающие от датчика на рабочем органе. После этого прибор управления мостом (УМ) открывает нужную пару транзисторов моста для вращения вала мотора (М) по часовой или против часовой стрелки, также может задавать усилие за счет полного или частичного открытия перехода.