Неодновременное управление несколькими шаговыми двигателями
Я хочу управлять несколькими шаговыми двигателями один за другим и с разными скоростями/направлениями. Я использую драйвер ULN2003, а шаговый двигатель имеет 5 катушек.
Мой текущий код для управления одним двигателем:
#include <Stepper.h>
const int stepsPerRevolution = 500; // изменить это, чтобы соответствовать количеству шагов за оборот
// для вашего мотора
// инициализируем библиотеку шаговых двигателей на контактах с 8 по 11:
Stepper myStepper(stepsPerRevolution, 8, 10, 9, 11);
void setup() {
// устанавливаем скорость 60 об/мин:
myStepper.setSpeed(50);
// инициализируем последовательный порт:
Serial.begin(9600);
}
void loop() {
// делаем один оборот в одном направлении:
Serial.println("clockwise");
myStepper.step(stepsPerRevolution);
// делаем один оборот в другом направлении:
Serial.println("counterclockwise");
myStepper.step(-stepsPerRevolution);
}
Как бы я определил каждый шаговый двигатель по-разному?
Извините, если я неправильно задал вопрос. Со временем постараюсь уточнить.
@12944qwerty, 👍0
Обсуждение1 ответ
▲ 1
Нравится @chris! предложено, вы можете включить две переменные Stepper. Таким образом, в строке, где вы инициализировали переменную, вместо этого вы могли бы указать:
Stepper steppermotor1(stepsPerRevolution, 8, 10, 9, 11);
Stepper steppermotor2(stepsPerRevolution, 4, 5, 6, 7);
а затем продолжите с кодом скорости, вращения и т. д. для каждого двигателя.
,
@Danush
только что понял, что вы получили свой ответ после прочтения комментариев. Не беспокойся в таком случае. Спасибо :), @Danush
Смотрите также:
- Шаговый двигатель не работает с платой A4988
- Шаговый двигатель работает медленно при чтении с датчика MPU 6050
- Справка по библиотеке AccelStepper - Одновременное управление двигателем
- Как позволить шаговому двигателю вращаться постоянно?
- Двигатель не вращается плавно (даже на высокой скорости)
- Как правильно использовать микрошаговый драйвер с шаговым двигателем более низкого напряжения
- arduino 28BYJ-48 stepper только жужжит, не вращается
- Шаговый двигатель не изменяет направления движения!
Как насчет нескольких переменных типа Stepper, каждая из которых представляет один шаговый двигатель? Вы понимаете, как работает приведенный выше код?, @chrisl
@chrisl Да, я понимаю, как работает код. Я просто хочу знать, как управлять двумя разными шаговыми двигателями. Например, выше у нас есть шаговый двигатель, определяемый как myStepper... О, мне просто нужно заменить «myStepper» на «Stepper2»? Верно??, @12944qwerty
Точно. Каждая переменная шагового двигателя управляет одним двигателем. Это должно сработать., @chrisl
просто примечание: это «объект Stepper», а не переменная Stepper, @jsotola