Похожие презентации:
Лекция 4
1.
ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВЛЕКЦИЯ 04
ОСНОВЫ УПРАВЛЕНИЯ СВЕТОМ
RGB-светодиод
Теория, подключение и программирование
Как управлять цветом и яркостью с помощью микроконтроллера
МИКРОКОНТРОЛЛЕРЫ
ПРАКТИЧЕСКИЙ КУРС
2.
01·
ВВЕДЕНИЕ
02 / 09
Что такое RGB-светодиод?
RGB-светодиод — это один корпус, внутри которого находятся три кристалла: красный (R), зелёный (G) и
синий (B). Управляя яркостью каждого, можно получить практически любой цвет видимого спектра.
Красный (R)
Зелёный (G)
Синий (B)
Длина волны
≈ 620–630 нм
Наименьший
прямое напряжение
Длина волны
≈ 520–530 нм
Среднее
прямое напряжение
Длина волны
≈ 460–470 нм
Наибольшее
прямое напряжение
RGB-СВЕТОДИОД
ЧТО ЭТО ТАКОЕ
3.
02·
КОНСТРУКЦИЯ
03 / 09
Два основных типа RGB-светодиодов
Общий катод
Общий анод
(Common Cathode)
(Common Anode)
• Все катоды соединены вместе
• Общий вывод подключается к GND
• Аноды управляются HIGH-сигналом
• Логика: 1 = светодиод горит
• Все аноды соединены вместе
• Общий вывод подключается к VCC
• Катоды управляются LOW-сигналом
• Логика: 0 = светодиод горит
Самый удобный вариант для
начинающих и большинства МК.
Требует инвертированной логики
в программе (HIGH выключает).
RGB-СВЕТОДИОД
ТИПЫ ПОДКЛЮЧЕНИЯ
4.
03·
СХЕМОТЕХНИКА
04 / 09
Подключение к микроконтроллеру
01
02
03
04
Токоограничивающие резисторы
Обязательно! Обычно 220–330 Ом на каждый канал. Без них светодиод и порт МК могут выйти из строя.
Три независимых вывода
Каждый цвет подключается к отдельному GPIO-пину, способному работать в режиме ШИМ (PWM).
Общий вывод
Для общего катода — на GND. Для общего анода — на VCC (обычно 3.3 В или 5 В).
Ток порта
Большинство МК выдают 20–40 мА на пин. Для ярких светодиодов лучше использовать транзисторы.
RGB-СВЕТОДИОД
ПОДКЛЮЧЕНИЕ
5.
04·
УПРАВЛЕНИЕ ЯРКОСТЬЮ
05 / 09
Широтно-импульсная модуляция
Микроконтроллер не умеет выдавать аналоговое напряжение напрямую.
Яркостью управляют с помощью ШИМ — быстрого включения и выключения сигнала.
25%
50%
100%
Низкая яркость
Средняя яркость
Максимальная
Сигнал HIGH
только 1/4 времени
Сигнал HIGH
половину периода
Сигнал постоянно
в состоянии HIGH
RGB-СВЕТОДИОД
ШИМ (PWM)
6.
05·
ЦВЕТОВАЯ МОДЕЛЬ
06 / 09
Аддитивное смешивание цветов
При аддитивном смешивании цвета складываются. Чем больше интенсивность каждого канала — тем ближе результат к
белому.
Красный
Зелёный
Синий
Жёлтый
R:255 G:0 B:0
R:0 G:255 B:0
R:0 G:0 B:255
R:255 G:255 B:0
Пурпурный
Голубой
Белый
Чёрный
R:255 G:0 B:255
R:0 G:255 B:255
R:255 G:255 B:255
R:0 G:0 B:0
RGB-СВЕТОДИОД
СМЕШИВАНИЕ ЦВЕТОВ
7.
06·
ПРАКТИКА
07 / 09
Пример на Arduino (общий катод)
// Пины для RGB (должны поддерживать PWM)
const int RED_PIN
= 9;
const int GREEN_PIN = 10;
const int BLUE_PIN = 11;
void setup() {
pinMode(RED_PIN, OUTPUT);
pinMode(GREEN_PIN, OUTPUT);
pinMode(BLUE_PIN, OUTPUT);
}
void setColor(int r, int g, int b) {
analogWrite(RED_PIN, r);
// 0–255
analogWrite(GREEN_PIN, g);
analogWrite(BLUE_PIN, b);
}
// Пример: плавный переход к фиолетовому
setColor(180, 0, 255);
RGB-СВЕТОДИОД
ПРИМЕР КОДА
8.
07·
РЕКОМЕНДАЦИИ
08 / 09
На что обратить внимание
Частота ШИМ
Слишком низкая частота (< 100 Гц) даёт заметное мерцание.
Используйте аппаратный PWM на частотах 500–1000 Гц и выше.
Гамма-коррекция
Человеческий глаз воспринимает яркость нелинейно. Для
плавных переходов применяйте гамма-коррекцию (обычно γ ≈
2.2).
RGB-СВЕТОДИОД
Калибровка яркости
Красный, зелёный и синий кристаллы имеют разную
эффективность. Для «чистого» белого часто нужно снижать
яркость зелёного.
Внешние драйверы
Для мощных RGB-лент и светодиодов используйте MOSFET или
специализированные драйверы (WS2812, TLC5940 и т.д.).
ПРАКТИЧЕСКИЕ СОВЕТЫ
9.
08·
ИТОГИ
09 / 09
Ключевые выводы
1
RGB-светодиод содержит три независимых кристалла в одном корпусе
2
Всегда используйте токоограничивающие резисторы
3
Управление яркостью и цветом осуществляется через ШИМ
4
Выбирайте пины с аппаратной поддержкой PWM
5
Учитывайте разницу в эффективности каналов и применяйте гамма-коррекцию
6
Для мощных светодиодов и лент применяйте внешние драйверы
RGB-СВЕТОДИОД
ЗАКЛЮЧЕНИЕ
Электроника