Как я могу заставить серводвигатель Parallax правильно перемещать водопроводный кран и предотвращать вибрации?

Я использую Arduino Mega 2560

Я построил конструкцию из пластиковых 3D-элементов, чтобы двигать этот водопроводный кран.:

water_tap

Я использую "Серводвигатель Parallax Inc 140 мА, 4 6 В" для повернуть кран:

серводвигатель

Еще несколько изображений, чтобы показать, как я его установил:

mounted piece_for_thetap another_piece

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

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

Возможные решения:

  • Есть ли способ отключить электропитание, когда мотор уже двигал кран? Или просто остановить двигатель, чтобы продолжить движение?
  • Использование внешнего питания должно решить проблему? Я нашел это руководство, где они использовать эту систему. Каковы будут преимущества этого? Это решит проблему?
  • Используете другой более мощный серводвигатель?
  • А шаговый двигатель?
  • Неисправен ли мой серводвигатель?
  • Нужен ли мне контроллер?

Есть другие предложения?

, 👍0

Обсуждение

У вас должен быть исключительный слух. Я не слышу никакого шума..., @Majenko

@Majenko Разве ты не слышишь? [Здесь](https://youtu.be/vkz76wxOnTA?t=28), почти в конце видео звук чистый, просто прибавьте громкость динамиков. Я мог бы отредактировать звук видео, чтобы сделать его более четким. Звук гудит, как [этот другой](https://www.youtube.com/watch?v=5JUDxCWnWRM), @ChesuCR


1 ответ


Лучший ответ:

2

Когда вы устанавливаете серводвигатель в определенное положение, он постоянно и активно стремится удержаться в этом положении. Обратная связь от внутреннего потенциометра постоянно обрабатывается, и двигатель регулируется, чтобы гарантировать, что он остается в правильном положении. Потенциометры, конечно, не идеальны на 100%, и в сигнале всегда будет определенный уровень «шума», что означает, что мотор всегда будет выполнять очень маленькие регулировки.

Это совершенно нормально.

Простой способ остановить его попытки удержаться именно в одном положении — перестать говорить ему, чтобы он был в этом положении.

  1. .attach() двигатель
  2. Переместите его в нужное место.
  3. Подождите достаточно долго, пока мотор не перейдет в это положение.
  4. .detach() двигатель

Когда вы вызываете servo.detach(), сигнал ШИМ прерывается, и двигатель больше не может сохранять положение, поэтому он просто перестает что-либо делать и переходит в спящий режим.

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

,

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

ElectronSurf в своем ответе предполагает, что я не могу подключить серводвигатель напрямую к Arduino. Я считаю, что могу подключить до 40 мА к каждому контакту, но у меня есть конденсатор 100 мкФ 25 В, чтобы он работал. Как вы думаете, нужно ли мне использовать внешний источник питания, чтобы он работал лучше (или чтобы плата Arduino не сгорела), или результат был бы таким же?, @ChesuCR

Я пробовал, и это сработало!, @ChesuCR