Мигання світлодіодом
Вступ
Світлодіоди (світлові діоди або LED з англійської - Light Emitting Diode) – це пристрої, які випромінюють світло, коли на них подається електричний струм. Вони відрізняються від традиційних лампочок розжарювання тим, що не потребують горіння та випромінюють світло завдяки явищу електролюмінесценції у напівпровідниковому матеріалі
До основних переваг світлодіодів відносять ефективність у використанні електроенергії, довгий термін служби, широкий спектр кольорів та компактний розмір. Вони широко використовуються в освітленні, електроніці, телекомунікаціях, електроніці автомобілів та інших галузях. Навіть кімната, в якій Ви зараз знаходитесь точно має якийсь пристрій зі світлодіодом, наприклад світлодіодна лампочка
Цікаві факти про світлодіоди
Історія світлодіодів налічує понад половину століття. Перші світлодіоди, які були винайдені в 1962 році, випромінювали тільки червоне світло. З тих пір технологія розвинулася і тепер світлодіоди можуть випромінювати широкий спектр кольорів, включаючи білий. З розвитком технології та матеріалознавства, світлодіоди стали більш яскравими, ефективними та різноманітними за кольорами. У другій половині 20-го століття та на початку 21-го світлодіоди отримали широке застосування у великій кількості галузей, таких як освітлення, електроніка, телекомунікації та інші завдяки своїм перевагам
Світлодіоди вирізняються високою ефективністю, оскільки вони перетворюють спожиту електроенергію більше на світло, ніж на тепло, як це буває у випадку традиційних лампочок розжарювання.
Це робить LED ефективними в плані споживання енергії, оскільки менше електроенергії втрачається на теплові втрати.
Крім того, здатність світлодіодів до миттєвого увімкнення та вимкнення без втрати якості чи терміну служби також допомагає зменшити енергоспоживання та підвищити загальну ефективність освітлення
Світлодіоди (LED) широко використовуються в дронах для різноманітних цілей. Їх можна вбудовувати в корпус для підсвічування, щоб забезпечити видимість у темний час доби.
Також LED використовують для індикації різних станів дрона, таких як рівень заряду акумулятора, GPS-сигнал, або сигнали в разі неполадок.
Це дозволяє пілотам миттєво отримувати інформацію про стан дрона під час польоту, що є важливим для безпеки та ефективного використання
Світлодіоди використовуються в телевізорах і смартфонах для створення яскравих та високоякісних дисплеїв.
Технологія LED LCD (рідко-кристалічний дисплей) в телевізорах використовує світлодіоди як джерело підсвічування, що дозволяє отримати чітке та яскраве зображення. LED мають великий термін служби порівняно з іншими джерелами світла. Вони можуть працювати до 50 000 годин або більше, що значно перевершує традиційні лампи
Наш Дрон також має світлодіоди (дивись картинку вище). Кожен має назву, яка означає ім’я піна Дрона, до якого цей світлодіод підключений. Пін – це вивід центрального мікроконтролера нашого Дрона. По цих же іменах пінів ми і будемо звертатися до світлодіодів. Далі ми навчимось писати програму, яка буде керувати цими світлодіодами - вмикати і вимикати. Вмикати і вимикати світлодіоди звучить як не дуже цікаве заняття, але це дуже важлива функція дронів, особливо вночі – щоб дрон можна було розрізнити в нічному небі (дивись відео вище)
Якщо Ви чи вчитель раніше не налаштовували середовище розробки Ардуїно на цьому комп’ютері, то перейдіть на Початок для налаштування. Коли виконано, повертайтесь сюди і продовжуйте урок далі
Написання першої програми
Для початку напишемо найпростішу програму для Дрона, яка увімкне перший світлодіод, підключений до піна PA5
1void setup() {
2 pinMode(PA5, OUTPUT);
3}
4
5void loop() {
6 digitalWrite(PA5, 1);
7}
1void setup() { //Функція 'setup' починає виконуватися першою при запуску Дрона
2 pinMode(PA5, OUTPUT); //Функція pinMode встановлює пін PA5 в режим роботи на вихід (OUTPUT)
3}
4
5void loop() { //Функція 'loop' виконується циклічно і безкінечно одразу після 'setup'
6 digitalWrite(PA5, 1); //Увімкнення PA5 світлодіоду
7}
Якщо відчуваєте складність в розумінні написаної вище програми, то спробуйте перемкнутися на вкладку з коментарями – , де пояснюється кожна стрічка. Також нижче є розділ з перекладом англійських слів, які використовуються в програмі. При написанні програм використовують саме англійську мову. На щастя достатньо самого базового шкільного рівня англійської для навчання програмуванню
Запустіть програму Ардуїно на вашому комп’ютері. Ардуїно це основне місце роботи, де ми будемо створювати програми для Дрона. Скопіюйте написану вище програму в Ардуїно ось так:
Для того, щоб завантажити Вашу нову програму на Дрон потрібно спочатку перевести його в режим програмування. В цьому режимі Дрон перестає виконувати попередньо записану в нього програму (якщо така була) і починає чекати поки в нього запишуть нову програму. Режим програмування активується наступними кроками:
- Підключіть Дрон до комп’ютера за допомогою кабелю USB Type-C
- Одночасно зажміть кнопки BT + R на Дроні
- Відпустіть спочатку кнопку R, а через 2 секунди і BT
Якщо на Дроні засвітилися 2 крайні праві світлодіоди, то режим програмування активувався. Буває, що він не завжди активується з першої спроби, тому спробуйте ще раз, починаючи з 1-го пункту. - Нажміть кнопку (Завантажити) в програмі Ардуїно на комп’ютері
Якщо все вдалось, то Дрон увімкне крайній лівий світлодіод PA5. Вітаю, Ви написали свою першу програму для Дрона
Якщо виникли будь-які проблеми і програма не завантажилась чи не запустилася, то перейдіть в розділ Вирішення проблем за допомогою
Самостійна робота №1
Погляньте на решту світлодіодів Дрона, оберіть який Вам більше подобається і спробуйте модифікувати програму таким чином, щоб тепер увімкнути саме його (наприклад PA7 чи PB0). Коли програма готова, знову переведіть Дрон в режим програмування і завантажте Вашу нову програму слідуючи уже знайомій інструкції вище.
Миготіння світлодіоду
Тепер давайте ускладнимо задачу і будемо ще й вимикати світлодіод. Послідовне вмикання і вимикання світлодіоду призводить до ефекту миготіння. Миготіння світлодіоду відбувається тоді, коли світлодіод вмикається і вимикається з певним інтервалом, наприклад 1 секунда (1000 мілісекунд)
1void setup() {
2 pinMode(PA5, OUTPUT);
3}
4
5void loop() {
6 digitalWrite(PA5, 1);
7 delay(1000);
8
9 digitalWrite(PA5, 0);
10 delay(1000);
11}
1void setup() { //Функція 'setup' aвтоматично запускається першою при увімкненні Дрона
2 pinMode(PA5, OUTPUT); //Функція pinMode встановлює пін PA5 в режим роботи на вихід (OUTPUT)
3}
4
5void loop() { //Циклічна функція 'loop' запускається одразу після функції 'setup'
6 digitalWrite(PA5, 1); //Увімкнення PA5 світлодіоду
7 delay(1000); //Павза 1 секунда (тобто 1000 мілісекунд)
8
9 digitalWrite(PA5, 0); //Вимкнення PA5 світлодіоду
10 delay(1000); //Павза 1 секунда (тобто 1000 мілісекунд)
11}
Завантажте програму на Дрон за вже знайомою інструкцією вище.
A ось так виглядає блок-схема програми, яка візуально більш зрозуміло пояснює, що робить програма:
flowchart LR k("Налаштування\n(setup)"):::step --> l a(LED вкл) --> b(Чекаємо\n1 секунду) b --> c(LED викл) c --> d(Чекаємо\n1 секунду) d --> a l:::loop subgraph l["Виконуємо циклічно (loop)"] direction LR a:::step b:::step c:::step d:::step classDef step fill:#f96,color:black,stroke:#f96; classDef loop fill:#5490ff,color:black; linkStyle default fill:none,stroke-width:2px,stroke:white,text-color:red end
Самостійна робота №2
Модифікуйте попередню програму так, щоб тепер миготів будь-який інший світлодіод, який Ви оберете на Дроні.
Змініть швидкість мигання світлодіоду. Для цього в стрічках 7 і 10 попередньої програми змініть павзи. Наприклад, спробуйте виставити будь-яке інше число окрім 1000 мілісекунд. Почніть з 500 і перебирайте числа більші або менші: 100, 300, 600, 2000 і так далі. Також спробуйте поставити в стрічках 7 і 10 не однакові павзи і поспостерігайте як тепер мигає світлодіод.