сервоприводы без delay
- Войдите на сайт для отправки комментариев
Пнд, 21/09/2015 - 23:54
Уважаемые форумчане, подскажите ,пожалуйста, как реализовать данный код без delay , но в нем еще и параллельно светодиод должен мигать . Здесь приведена только часть кода. Просто далее все однотипно: поворачивается вторая серва, потом опять первая и т.д. С параллельным вращением нескольких приводов видел много примеров. С последовательным вроде все проще, но не получается чего-то.
// Подключаем библиотеку для управления сервоприводами
#include<Servo.h>
// создаем объект для управления сервами
Servo my_servo1;
Servo my_servo2;
// переменная для хранения положения сервы
int pos = 0;
void setup() {
// присоединяем сервоприводы, подключенные к 10 и 11 пинам к объекту servo
my_servo1.attach(10);
my_servo2.attach(11);
}
void loop() {
// вращаем первую серву
for(pos=90; pos <= 180; pos += 1) {
my_servo1.write(pos); // перемещаем серву в положение, заданное в pos
delay(15); // ждем 15мс, чтобы серва переместилась в требуемое положение
}
// вращаем серву в обратную сторону
for(pos=180; pos >= 90; pos -= 1) {
my_servo1.write(pos);
delay(15);
}
delay(1000); // пауза 1 секунда
// вращаем вторую серву
for(pos=90; pos >= 0; pos -= 1) {
my_servo2.write(pos); // перемещаем серву в положение, заданное в pos
delay(15); // ждем 15мс, чтобы серва переместилась в требуемое положение
}
// вращаем серву в обратную сторону
for(pos=0; pos <= 90; pos += 1) {
my_servo2.write(pos);
delay(15);
}
delay(1000); // пауза 1 секунда
}
На каждое устройство заводишь свою переменную состояния. Если устройства однотипные, вместо нескольких простых переменных используешь массив.
Уважаемые форумчане, подскажите ,пожалуйста, как реализовать данный код без delay , но в нем еще и параллельно светодиод должен мигать . Здесь приведена только часть кода. Просто далее все однотипно: поворачивается вторая серва, потом опять первая и т.д. С параллельным вращением нескольких приводов видел много примеров. С последовательным вроде все проще, но не получается чего-то.
Ловите ссылку http://www.youtube.com/watch?v=2gIYKek6xGY
Обсуждалось здесь http://arduino.ru/forum/programmirovanie/kak-takoe-vozmozhno
Здесь мои эксперименты https://www.youtube.com/watch?v=3xrvS7vsnwo
Ой! Видео не то выложил. Вам надо последовательно, а тут все параллельно. Сначала написал, потом заметил.