Ошибка в управлении сервоприводом

Ephirion
Offline
Зарегистрирован: 22.10.2016

Используется arduino nano v3.0, питание от аккумулятора на 7.4 В. Нужна чтобы сервопривод переодически отклонялся то влево то вправо от исходной точки. При использовании этого кода:
#include <Servo.h>

Servo myservo; 

int pos = 0;   

void setup() {
  myservo.attach(9);
}

void loop() {
  for (pos = 0; pos <= 180; pos += 1) {
    // in steps of 1 degree
    myservo.write(pos);            
    delay(15);                      
  }
  for (pos = 180; pos >= 0; pos -= 1) {
    myservo.write(pos);             
    delay(15);                      
  }
}
Или аналогичных, результат следующий:
Где-то 1.5 секунды привод вращается в одну сторону, потом следует короткая пауза, после чего продолжает вращатся в том-же направлении. После 4-5 циклов привод перестает вращатся вообще или продолжает вращатся безостановочно. При этом иногда привод вращается около 0.25 секунды, после чего продолжает вращатся как и раньше. При подобных зависанияз мигает красный светодиот обозначенный как L.
Данная проблемма возникла сразу на двух платах. Помогите новичку разобраться в чем проблемма.

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016

1 ошибка сервопривод это не мотор. Он не может вращатся то в одну сторону то в другую. Максимум он поворачивается от 0 до 180 градусов и все.

Ephirion
Offline
Зарегистрирован: 22.10.2016

Извиняюсь, мой косяк. Используется все-таки мотор.

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016

Тогда #include <Servo.h> нафиг.

Мотором ардуина управляет через половину драйвера шагового двигателя. Надо 2 пина (Motor_plus_pin) и (Motor_minus_pin) 

ПС:http://arduino-diy.com/arduino-drayver-shagovogo-dvigatelya-i-dvigatelya-postoyannogo-toka-L298N

Ephirion
Offline
Зарегистрирован: 22.10.2016

Не совсем понял, как использовать эти пины, можете объяснить подробнее?

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

Если у Вас мотор, не следует подключать его как сервопривод.