Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Вращающаяся платформа на шаговом двигателе 28BYJ-48 с управлением по Serial

Компоненты и материалы

Шаговый двигатель 28BYJ-481 шт.
Драйвер шагового двигателя X113647 (ULN2003A)1 шт.
Arduino UNO1 шт.
Полиуретановая крепежная втулка Pololu для вала 5 мм1 шт.
Деревянная основа 15x15 см1 шт.
Резиновые подушки 10 мм4 шт.

Инструменты

О проекте

Вращающаяся платформа для фотосъемки, 3D-сканирования или демонстрации изделий. Управляется через Serial Monitor или терминал (Tera Term) простыми командами.

Команды управления

Механическая сборка

  1. Найдите центр деревянной основы (пересечение диагоналей) и просверлите отверстие 6 мм.
  2. Установите втулку двигателя в отверстие, обведите контур карандашом.
  3. Лобзиком вырежьте круг по контуру так, чтобы крепежные отверстия двигателя лежали на дереве.
  4. Установите резиновые подушки (10 мм) для зазора под двигателем.
  5. Крепите вращающуюся плиту к валу через алюминиевую втулку Pololu.

Схема подключения

Драйвер X113647 подключается к Arduino UNO:

motorPin1 (Blue)  -> D4
motorPin2 (Pink)  -> D5
motorPin3 (Yellow)-> D6
motorPin4 (Orange)-> D7
VCC (Red)         -> 5V
GND (Blue)        -> GND
Вращающаяся платформа на шаговом двигателе 28BYJ-48 с управлением по Serial

Код (использует библиотеку AccelStepper)

#include <AccelStepper.h>

#define motorPin1 4
#define motorPin2 5
#define motorPin3 6
#define motorPin4 7
#define STEPS_PER_TURN 2048

int motorSpeed = 500;
int motorAccel = 400;
int myPos = 0;
int LeftTurnUp = 0, RightTurnDown = 0;
int Continuous = 0;
int incomingByte = 0;

AccelStepper stepper(4, motorPin1, motorPin3, motorPin2, motorPin4);

void setup() {
  Serial.begin(9600);
  stepper.setMinPulseWidth(20);
  stepper.setMaxSpeed(motorSpeed);
  stepper.setSpeed(motorSpeed);
  stepper.setAcceleration(motorAccel);
  stepper.setCurrentPosition(stepper.currentPosition());
  stepper.runToPosition();
  Serial.println("Commands: R/r - CW, L/l - CCW, S - stop");
}

void loop() {
  if (Serial.available() > 0) {
    incomingByte = Serial.read();
    // Обработка команд R, L, r, l, S с остановкой и установкой флагов
    // ... (полный код в исходнике)
  }
  // Исполнение движения на основе флагов
  if (Continuous == 1) { /* непрерывное вращение */ }
  if (Continuous == 0) { /* одиночный поворот 360° */ }
  stepper.run();
}

Производственный процесс

  1. Шаговые двигатели: типы, характеристики и практические применения
  2. Интегрированные драйверы упрощают дизайн высокомощных шаговых двигателей
  3. Температурно-управляемый вентилятор: DIY релейная система охлаждения мебели для медиа
  4. Raspoulette: Прототип солнечной автономной системы двери курятника
  5. DIY автономная турель Nerf — умный Nerf-пушка на шаговых двигателях, камере и Arduino
  6. Полнофункциональная библиотека для управления биполярным шаговым двигателем на Arduino
  7. Android-управляемая робот-платформа на Raspberry Pi и Motor Shield
  8. Автоматизированный свайпер для Tinder и Bumble на Arduino UNO и шаговом двигателе
  9. Понимание линейных моторов: от электрической энергии к точному линейному движению
  10. Серводвигатели: принцип работы и значение