Модуль 4 — Аналогові сигнали (курс для початківців)

Мета модуля: вивчити роботу з аналоговими входами Arduino (ADC), навчитися використовувати ШІМ (PWM) для керування яскравістю світлодіодів, підключити потенціометр і створити проєкт «Регулятор яскравості».


Аналоговий вхід (ADC)

Аналоговий вхід дозволяє вимірювати напругу в діапазоні від 0 до опорної (зазвичай 5 В або 3,3 В для Arduino). Модуль АЦП (ADC — Analog-to-Digital Converter) перетворює напругу на цифрове значення.

  • На Arduino Uno, Nano, Mega — розрядність 10 біт, що дає значення від 0 до 1023.
  • 0 відповідає 0 В, 1023 — максимально допустимій напрузі (зазвичай 5 В).
  • Приклад: 2,5 В на вході дасть приблизно 512.

Аналогові входи позначені як A0, A1, A2....

ШІМ (PWM)

Широтно-імпульсна модуляція (PWM — Pulse Width Modulation) використовується для керування «середньою» напругою на виході, що дозволяє плавно змінювати яскравість світлодіода або швидкість двигуна.

  • В Arduino функція analogWrite() генерує PWM-сигнал.
  • Значення — від 0 (0% заповнення, завжди LOW) до 255 (100% заповнення, завжди HIGH).
  • На Arduino Uno піни з PWM позначені знаком ~ (3, 5, 6, 9, 10, 11).

Вимірювання напруги з потенціометра

Потенціометр — це змінний резистор, який можна використовувати як дільник напруги. Повертаючи ручку, ми змінюємо напругу на середньому виводі.

Підключення:

  • Один крайній вивід — до +5V.
  • Другий крайній вивід — до GND.
  • Середній вивід — до аналогового входу Arduino (наприклад, A0).

Зміна яскравості світлодіода за допомогою PWM

Якщо підключити світлодіод до піна з підтримкою PWM, можна плавно змінювати його яскравість залежно від значення з потенціометра.


Практика

Підключення потенціометра та керування яскравістю

Схема:

  • Потенціометр: краї → +5V і GND, середній вивід → A0.
  • Світлодіод через резистор 220–330 Ом → пін 9 (PWM) і GND.
const int potPin = A0;
const int ledPin = 9;

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

void loop() {
  int potValue = analogRead(potPin);            // 0..1023
  int pwmValue = map(potValue, 0, 1023, 0, 255); // масштабуємо
  analogWrite(ledPin, pwmValue);
}

Повертаючи ручку потенціометра, ви змінюєте коефіцієнт заповнення PWM, а отже — і яскравість світлодіода.


Проєкт: «Регулятор яскравості»

Завдання: створити пристрій, який дозволяє плавно регулювати яскравість світлодіода.

Що потрібно: Arduino Uno/Nano, потенціометр 10 кОм, світлодіод, резистор 220–330 Ом, макетна плата, дроти.

Схема підключення: така ж, як у прикладі вище.

Код з плавною зміною яскравості

const int potPin = A0;
const int ledPin = 9;

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

void loop() {
  int potValue = analogRead(potPin);
  int pwmValue = map(potValue, 0, 1023, 0, 255);
  analogWrite(ledPin, pwmValue);
  delay(10); // невелика затримка для плавності
}

Типові помилки

  • Підключення світлодіода без резистора — може згоріти.
  • Використання піна без підтримки PWM — яскравість не змінюється.
  • Неправильне підключення потенціометра — значення не змінюються.

Що далі

У наступному модулі ми познайомимося з Модулем 5 — Датчики та модулі: DHT11, LDR і проєкт «Розумна лампа»


Контрольні запитання

  1. Що таке ADC і які значення він повертає на Arduino Uno?
  2. Що таке PWM і для чого він використовується?
  3. Як підключити потенціометр до Arduino?
  4. Як за допомогою потенціометра регулювати яскравість світлодіода?

Авторський курс по Arduino для початківців. Використання матеріалів на комерційних сайтах допускається з вказанням джерела.

<< Проекти << Усі товари >> Статті, уроки >>

Написати відгук

Примітка: HTML размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре
Режим сну SIM800L з Arduino Nano: енергозбереження та пробудження по SMS

Режим сну SIM800L з Arduino Nano: енергозбереження та пробудження по SMS

Режим сну SIM800L та пробудження Arduino Привіт, друзі! Тему цієї статті запропонували підписники..

Термопара K-типу 0...600°C з перетворювачем MAX6675

Термопара K-типу 0...600°C з перетворювачем MAX6675

Термопара хромель-алюмель розрахована на вимірювання температури в діапазоні 0 ... 600 °CДовжин..

165.83грн.

Датчик температури шкаралупи яєць інкубаторний WiFi

Датчик температури шкаралупи яєць інкубаторний WiFi

Пристрій призначений для 4-канального вимірювання та реєстрації температури поверхні шкарлупи 4-х яє..

4900.00грн.

Подвійна шестерня для зубчатого ременю на 20 зубів під вісь 8 мм

Подвійна шестерня для зубчатого ременю на 20 зубів під вісь 8 мм

Подвійна шестерня для передачі обертального моменту з одного валу на інший.Застосовується для розділ..

78.53грн.

Світлодіод ультраяскравий 5мм

Світлодіод ультраяскравий 5мм

Над-яскравий світлодіод діаметром 5 мм Корпус прозорий в світлодіодів різного кольору світіння. Тоб..

5.75грн.