С сервоприводом с непрерывным вращением я могу контролировать направление и скорость сервопривода, но мне также нужно контролировать положение. Я знаю, что это невозможно напрямую из-за отсутствия управления обратной связью в непрерывном сервоприводе, но я нашел несколько советов о добавлении энкодера, чтобы вы могли контролировать положение.
Можно ли добавить энкодер к непрерывному сервоприводу для управления его положением, и если да, то как?
Кроме того, могу ли я добавить что-то, чтобы блокировать движение сервопривода, как на картинке ниже, или это будет иметь такой эффект остановки и повредить сервопривод?
Да, энкодер можно добавить к любому двигателю, включая сервопривод, модифицированный для непрерывного вращения и используемый для управления положением.
Однако это немного противоречит здравому смыслу, поскольку внутренняя схема сервопривода уже обеспечивает управление положением, используя встроенный потенциометр в качестве датчика поворота. Отключение этого механизма позиционирования, а затем добавление внешнего датчика определения положения или энкодера для достижения того же результата кажется ненужным.
Как бы то ни было, обычный метод получения такого управления положением с помощью поворотного энкодера включает в себя привязку энкодера к валу двигателя, а затем ввод закодированных значений в микроконтроллер с использованием алгоритма PID в микроконтроллере, управляемого как Функция этой информации о положении для управления напряжением и полярностью двигателя для остановки двигателя в желаемом положении.
Проще говоря, если положение сервопривода, обнаруженное с помощью поворотного энкодера, находится по часовой стрелке до желаемого положения, алгоритм ПИД-регулятора будет вращать двигатель против часовой стрелки до тех пор, пока два положения не станут идентичными. И наоборот, для обнаруженного положения против часовой стрелки до желаемого положения. Если какой-либо внешний крутящий момент впоследствии сдвигает вал из исходного положения, энкодер передает свежие угловые данные в ПИД-код, который затем применяет описанную выше логику.
Что касается добавления механического стопора к серводвигателю, то в целом это допустимый подход — двигатель будет потреблять ток останова, который выше нормального рабочего тока. Однако вам необходимо проверить техническое описание соответствующего двигателя, чтобы проверить, как долго он может выдерживать ток останова. Не все моторы могут справиться с постоянным глохнуть.
Решение в таком случае может быть одним из следующих:
Единственные сервоприводы, которым «не хватает» движения или определения положения, — это дешевые сервоприводы для хобби. Это наихудший вид для любой надежной системы. Они не только считывают обратную связь только по частичной дуге (не 360 градусов), но и вообще не возвращают никакой обратной связи командиру.
Вы можете купить сервоприводы более высокого качества с датчиками реального положения, датчиками реального тока, ПИД-контроллерами для управления движением, последовательной связью RS-485 в обе стороны и многим другим. Эти сервоприводы могут «идти в точку» или «вращаться со скоростью» или делать любое другое движение, которое вы хотите.
Например, я помещаю этого парня в свой текущий проект:
http://support.robotis.com/en/product/dynamixel/mx_series/mx-64.htm
Это все еще сервопривод в стиле «хобби», но вполне способный и пока настоящий.
Джимми Клютер
Дэйв Твид
Аниндо Гош
Джимми Клютер
Дэйв Твид