Ми всі знаємо про Arduino. Це одна з найпопулярніших плат мікроконтролера з відкритим кодом, яка надзвичайно корисна для виконання саморобних проектів. Цей 3-смуговий контролер світлофора на базі Arduino - простий проект саморобної роботи Arduino, корисний для розуміння роботи світлофорів, які ми бачимо навколо. Ми розглянули більш просту версію світлофорів у цій схемі світлофора. Ось продемонстрували це для трьох сторін або способів. А тепер давайте займемося проектом…
Необхідні компоненти:
- 3 * червоні світлодіодні ліхтарі
- 3 * зелені світлодіодні ліхтарі
- 3 * жовті світлодіодні ліхтарі
- Резистори 3 * 220 Ом
- Макет
- Роз'єми від чоловіка до чоловіка
- Arduino Uno з кабелем Ide
Пояснення схеми:
Принципова схема для проекту Arduino Lightfor Controller подана нижче:
Це досить просто, і його можна легко побудувати на хлібній дошці, як це пояснюється нижче.
- Підключіть світлодіоди в такому порядку, як червоний, зелений та жовтий на макетній дошці.
- Помістіть загальну мінусову клему світлодіодів і послідовно підключіть резистор 220 Ом.
- Відповідно підключіть дроти роз'ємів.
- Підключіть інший кінець дроту до Arduino Uno в послідовних штифтах (2,3,4… 10)
- Увімкніть макет, використовуючи шпильку Arduino 5v та GND.
Програма та робоче пояснення:
Код цього проекту управління світлофорами Arduino простий і легко зрозумілий. Тут ми продемонстрували світлофори для дороги з трьома шляхами, і код світиться світлодіодами з усіх трьох сторін у певній послідовності, в якій працює фактичний світлофор. Мовляв, одночасно на будь-якій із двох сторін буде два червоних сигнали, а на решті - одне зелене світло. І жовте світло також буде світитися щоразу по 1 секунді, між переходом від червоного до зеленого, означає, що спочатку червоне світло світиться протягом 5 секунд, потім жовте світло світиться протягом 1 секунди, а потім, нарешті, увімкнеться зелене світло.
Спочатку в програмі ми оголосили штифти (2,3… 10) як вихід у настройці void () для 9 світлодіодів (по три на кожній стороні, тобто вперед, вправо та вліво).
void setup () {// налаштування вихідних штифтів pinMode (2, OUTPUT); pinMode (3, ВИХІД); pinMode (4, ВИХІД); pinMode (5, ВИХІД); pinMode (6, ВИХІД); pinMode (7, ВИХІД); pinMode (8, ВИХІД); pinMode (9, ВИХІД); pinMode (10, ВИХІД); }
Потім у функції void loop () ми написали код для включення та вимкнення світлофора в послідовності, як зазначено вище.
void loop () {digitalWrite (2,1); // дозволяє 1-й набір сигналів digitalWrite (7,1); digitalWrite (10,1); digitalWrite (4,0); digitalWrite (3,0); digitalWrite (6,0); digitalWrite (8,0); digitalWrite (9,0); digitalWrite (5,0); затримка (5000);………………
Цей процес добре продемонстровано у відео нижче. Спочатку відкрита сторона вгору / вперед (зелена), а інші дві сторони (тобто ліва сторона та права сторона) залишаються закритими червоним сигналом із затримкою на 5 секунд. Потім жовте світло вмикається з правого боку на 1 сек, а потім зелене світло, залишаючи інші дві сторони (тобто догори і ліву сторону червоними) закритими червоним світлом та затримкою на 5 секунд. Потім жовтий на лівій стороні світиться протягом 1 секунди, а потім зелений, залишаючи догори, а права сторона червоною з затримкою 5 секунд. Цей процес зациклено у функції void loop () для безперервного процесу. Тут ми можемо змінити затримки, для яких червоне, жовте та зелене світло залишаються ввімкненими та вимкненими.
Повний Arduino код і відео для цього проекту Arduino Traffic Light наводяться нижче.