Модуль 7 — Двигатели и исполнительные устройства (курс для начинающих)

Цель модуля: освоить управление различными исполнительными устройствами: сервоприводами, коллекторными моторами и драйверами. Вы научитесь использовать ШИМ (PWM) для регулировки скорости, а также подключать двигатели через транзисторы и драйверы.


Теория

Сервоприводы

Сервопривод — это устройство, которое позволяет поворачивать вал на заданный угол (обычно от 0° до 180°). Управление осуществляется с помощью ШИМ-сигнала с фиксированным периодом 20 мс, где длительность импульса определяет угол поворота.

Управление мотором через MOSFET

Для включения/выключения и регулировки скорости коллекторных моторов часто используют n-канальные MOSFET-транзисторы. Они управляются с Arduino через цифровой пин с ШИМ, что позволяет менять скорость вращения.

Двунаправленное управление — драйвер L298N

L298N — популярный драйвер для управления двигателями в обе стороны. Он позволяет управлять двумя коллекторными моторами, а также регулировать скорость через PWM. Драйвер принимает сигналы управления от Arduino и подаёт питание на моторы от внешнего источника.


Практика

Поворот сервопривода по команде

#include <Servo.h>

Servo myservo;

void setup() {
  myservo.attach(9); // Пин для управления
}

void loop() {
  myservo.write(0);   // Поворот на 0°
  delay(1000);
  myservo.write(90);  // Поворот на 90°
  delay(1000);
  myservo.write(180); // Поворот на 180°
  delay(1000);
}

Управление скоростью мотора через PWM (MOSFET)

int motorPin = 5; // Пин с поддержкой PWM

void setup() {
  pinMode(motorPin, OUTPUT);
}

void loop() {
  for (int speed = 0; speed <= 255; speed += 5) {
    analogWrite(motorPin, speed); // Увеличиваем скорость
    delay(50);
  }
  for (int speed = 255; speed >= 0; speed -= 5) {
    analogWrite(motorPin, speed); // Уменьшаем скорость
    delay(50);
  }
}

Двустороннее управление коллекторным двигателем (L298N)

int in1 = 8;
int in2 = 9;
int enA = 5; // Пин с PWM

void setup() {
  pinMode(in1, OUTPUT);
  pinMode(in2, OUTPUT);
  pinMode(enA, OUTPUT);
}

void loop() {
  // Вращение вперед
  digitalWrite(in1, HIGH);
  digitalWrite(in2, LOW);
  analogWrite(enA, 200);
  delay(2000);

  // Стоп
  digitalWrite(in1, LOW);
  digitalWrite(in2, LOW);
  delay(1000);

  // Вращение назад
  digitalWrite(in1, LOW);
  digitalWrite(in2, HIGH);
  analogWrite(enA, 200);
  delay(2000);

  // Стоп
  digitalWrite(in1, LOW);
  digitalWrite(in2, LOW);
  delay(1000);
}

Типичные ошибки

  • Подключение мотора напрямую к пину Arduino — это может сжечь контроллер. Всегда используйте транзисторы или драйверы.
  • Отсутствие диода для защиты от обратного тока мотора.
  • Недостаточное питание сервопривода или мотора — приводит к рывкам и сбоям.

Что дальше

В следующем модуле мы рассмотрим Финальный проект Arduino: идеи и сборка


Контрольные вопросы

  1. Как управлять углом поворота сервопривода?
  2. Зачем нужен MOSFET при управлении мотором?
  3. Какие функции выполняет драйвер L298N?
  4. Как реализовать реверс вращения двигателя?

Авторский курс по Arduino для начинающих. Использование материалов на коммерческих сайтах допускается с указанием источника.

<< Проекты << Все товары >> Статьи, уроки >>

Написать отзыв

Примечание: HTML разметка не поддерживается! Используйте обычный текст.
    Плохо           Хорошо
Циклы 2 — Цикл for

Циклы 2 — Цикл for

Циклы 2 — Цикл for Введение Цикл for — один из самых часто используемых инструментов в A..

Arduino Nano SIM800 SMS команды

Arduino Nano SIM800 SMS команды

Привет, друзья! Мы с каждым разом разбираем все более интересные применения GSM-модуля SIM800. В это..

Мини кнопка SMD 6 x 6 x 5 мм

Мини кнопка SMD 6 x 6 x 5 мм

Миниатюрная кнопка с SMD выводамиРазмеры 6 x 6 x 5 мм..

1.05грн.

Преобразователь уровней 5В на 3В двунаправленный 4-канальный

Преобразователь уровней 5В на 3В двунаправленный 4-канальный

Преобразователь логических уровней с 5 В на 3,3В и обратно.Позволяет преобразовать 4 линии коммуника..

20.09грн.

Модуль i2c для LCD индикаторов

Модуль i2c для LCD индикаторов

Модуль припаивается на LCD-индикатор типа LCD 2004, LCD 1602.Обеспечивает связь жидкокристаллическог..

55.23грн.