Модуль 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 размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре
Стійка нейлонова М3 12мм + 6мм

Стійка нейлонова М3 12мм + 6мм

Стійка для кріплення усіляких електронних модулів до корпусу пристроюВисота стійки 12 ммДовжина зовн..

5.18грн.

Шилд акумулятора для WeMos D1

Шилд акумулятора для WeMos D1

Шилд для живлення мікроконтролера WeMos D1 від літієвого акумулятора. Дозволяє заряджати а..

74.42грн.

Перетворювач RS232 у TTL

Перетворювач RS232 у TTL

Перетворювач RS232 в TTL – модуль для підключення пристроїв із роз’ємом DB9 до аматорських контролер..

59.56грн.

Arduino Nano 3.0 не розпаяна

Arduino Nano 3.0 не розпаяна

Мініатюрна плата контролера з лінійки Aduino на базі мікропроцесора ATMEGA328P-AUГребінки виводів не..

207.75грн.

Arduino UNO як осцилограф

Arduino UNO як осцилограф

Контролери Arduino можна використовувати як найпростіший осцилограф, для спостерігання за швидко-змі..