Одновременное управление моторами
- Войдите на сайт для отправки комментариев
Пнд, 30/06/2014 - 02:06
Ребята, объясните если кто знает как реализовать одновременное управление шаговыми моторами. Суть в том, что пока вращается один мотор нужно запустить второй. У меня загвоздка в том, что пока первый мотор своё не отработает второй не включается.
Кусок кода:
void loop() { move_motor_1(way_to, spee); move_motor_2(way_to, spee); delay(5000); } //поворот мотора №1 на один шаг вперёд/назад void move_motor_1(int way_to1, int spee1) { for(int i = 0; i<=350; i++) //350 шагов { digitalWrite(way1, way_to1); //направление туда/сюда digitalWrite(motor1, HIGH); digitalWrite(motor1, LOW); delay(spee1); } }
Все дело в этом delay(spee1);
Почитайте, что-нибудь про конечные цифровые автоматы.
Пока написал с помощью простых математических действий, на большее ума не хватает :)
Мигаем светодиодом без delay()
leshak, спасибо! Отличный вариант!