Проблема с сервоприводом

OOM
Offline
Зарегистрирован: 07.01.2017

Подскажите в чем может быть причина.

Имеется два сервопривода S3003 установленных на поворотной платформе.

Один привод (нижний) вращает платформу по горизонтали

Второй привод (верхний) поворачивает камеру по вертикали

Поворот серв осуществляется потенциометрами

Питание серв отдельно от блока питания 12В через понижающий модуль питания до 5В

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

Мне нужно, чтобы сервы стали в нужное положе

#include <Servo.h>
Servo myservo;
Servo myservo1;
int potpin = 0; // analog pin 0 pot
int potpin1 = 1; // analog pin 1 pot
int val;
int val1;

void setup() {
  Serial.begin(9600);
  myservo.attach(9); 
  myservo1.attach(10); 
 }

void loop() {

  val = analogRead(potpin);
  val = map(val, 0, 1023, 0, 180);
  myservo.write(val); // выводим ротор сервы в положение в соответствии с полученным масштабированным значением
  //delay(15); // ждем, пока серва обеспечит заданное положение

  val1 = analogRead(potpin1);
  val1 = map(val1, 0, 1023, 0, 180);
  myservo1.write(val1); // выводим ротор сервы в положение в соответствии с полу// servo için 15 milisaniye bakınız detay için datashite bknz.
 delay(15); // ждем, пока серва обеспечит заданное положение
 
  Serial.print(val);
  Serial.print("\t");
  Serial.print(val1);
  Serial.println("\t");

}

ние и были зафиксированы. 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

OOM пишет:

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

Напомнило бессмертного Попандопуло из Одессы: "один заедает, второй, как сумасшедший, подпрыгивает, а третий, гад, у своих пуляет… А седьмой я по секрету от пана атамана выменял вот на эти штанишки"

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

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

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

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

Т.е. полностью избавиться от гудения/дрожения можно единственным способом - подавать на них однократный сигнал вместь постоянного повторения сигнала "удержания", но, как следствие, они при этом не будут фиксироваться в заданном положении.

Еще можно заменить сервы на шаговые двигатели - они как раз удерживаются в заданном положении без рывков.

Обдумайте, чего Вы хотите с учетом несовершенства Мира, в котором мы живем.

vvadim
Offline
Зарегистрирован: 23.05.2012

andriano пишет:

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

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

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

Т.е. полностью избавиться от гудения/дрожения можно единственным способом - подавать на них однократный сигнал вместь постоянного повторения сигнала "удержания", но, как следствие, они при этом не будут фиксироваться в заданном положении.

Еще можно заменить сервы на шаговые двигатели - они как раз удерживаются в заданном положении без рывков.

Обдумайте, чего Вы хотите с учетом несовершенства Мира, в котором мы живем.

вот именно сервы прекрасно фиксируют положение при детаче  из-за наличия редуктора
а прокрутить можно что угодно, лишь бы силушка богатырская была)))