РАЗДЕЛ 2. Разработка проектировочного разноцветного стенда на RGB

2.1. Постановка задания

Теперь для эксперимента будем использовать RGB-светодиоды. Вспомним, что помощью красного (Red), серого (Green), синего (Blue), можно получить любой цвет смешиванием. Светодиод RGB имеет отличия от других тем, так как имеет 3 маленьких кристаллика R, G, B, что синтезируют любой необходимый цвет или его оттенок. А вот, RGB-светодиоды имеют 4 вывода (показано на Рис. 2.1). Можно подключить RGB-светодиод к самой аппаратной части платы Arduino и заставить по цвету радуги переливаться. На рис. 2.2.8 отображается схема подключения RGB-светодиода к плате Arduino.


Рисунок.2.1 – Вывод RGB-светодиода


ПО своей сути, радуга состоит из множеств цветов, а вот 7 цветов были только придуманы потому, что они больше всего устойчивы и определяются восприятием глаза.

В задачи работы входит правильный выбор программного обеспечения и аппаратного для лабораторного стенда на основе эффективных алгоритмов получения и создания соответствующего программного обеспечения для обработки цветов светодиодов на компьютере, подключенном к плате. Для данного проекта нам понадобятся детали, которые присутствуют в наборе «Базовый», а также «Изучаем Arduino»:

– Arduino Uno;

– RGB-светодиод – 2 шт (1 запасной);

– Резисторы 220 Ом – 4 шт;

– Кабель USB;

– Провод «папа-папа» – 8 шт;

– Плата для прототипирования;

– Потенциометр.

2.2. Эскизный проект стенда

Список этих 7 основных цветов радуги с разложением по компонентам R, G и B представлен в Табл. 2.2.1


Таблица 2.2.1 – Основные цвета радуги RGB


– Красный цвет учтём как начальная точка отсчета (255, 0, 0).

– Теперь красной составляющей R нужно уменьшить значение до зеленого цвета (0, 255, 0).

– Далее увеличиваем красной составляющей R до значений цвета фиолетового (255, 0, 255).

– Равномерно уменьшим G (количество зеленовато) аж до значений цвета синего (0, 0, 255).

– Равномерно синей составляющей B нужно увеличить его значение до цвета голубого (0, 255, 255).

– Теперь, понемножку увеличиваем зеленой составляющей G, значение до тех пор, пока не достигается оранжевого значение (255, 125, 0), а поотом цвета желтого (255, 255, 0).

– Дожидаемся недолгой паузы и дальше переходим к шагу 1.


Составляющими частями аппаратной части, которая проектируется на базе платформы Aruduino, являются:

– МК – это микросхема в какой программа эта может получать сигналы с разных датчиков, обращаться до компьютера или другим устройствам через интерфейс, также выводить обработанную информацию через различные устройства индикации, также управлять действующими устройствами.

– Датчики температуры, давления, освещенности, присутствия, ускорения, расстояния до препятствия и т. д.

– Интерфейсы как достаточно специализированные SPI, I2C, CAN, USB, Bluetooth, Ethernet, WiFi, COM-порт и т. д.

МК может работать напрямую с чем-то из данного списка (нужно всего лишь 2 проводочка для соединения МК и кнопки), а для других – нужны дополнительные детали (их нужно подкручивать моторчиком напрямую подкручивать не получится, нужно какие-то другие усилители-драйверов).

Обвязкой называется дополнительные детали, которые необходимы МК для взаимодействия с внешними процессами. Другими словами, обвязкой считают компоненты (электронные, радиодетали) что нужны в данных условиях для работы МК. Есть то, что очень необходимо для запуска МК, а есть то что только добавляет удобства в функционал.


Рисунок 2.2.2 – Платка Arduino


Самые первенцы Arduino подключались к COM-порту (или как называли UART), согласовывая уровни (МК от 0 до +5 В, а у ПК —12В до +12,), потом было ясно то, что USB все -таки удобнее, и решили поставить преобразователь интерфейса.

Дальше, для Arduino обвязка МК, следующая:

– Линейный стабилизатор, который обеспечивает нормально-стабильное питание для самой МК.

– На плату Arduino можно подать напряжение от 7 до 12В (к примеру 79-вольтовый крона, 12в в автотранспорте.) Стабилизатор не нужное напряжение выгрузит, а ровно 5В пойдет на МК.

– USB-UART преобразователь для того, чтобы можно было через МК обращаться к компьютеру по USB. У МК уже есть UART, а вот USB – не имеет.

И так, для реализации данного небольшого проекта нужно.

Узлы, необходимые для подключений:


Рисунок 2.2.3 – 1 RGB светодиод длина 10 мм


Рисунок 2.2.4 – 3 резистора на 270 Ω (фиолетовая, красная и коричневая полоска)


Резистор можно использовать до 1 кОм (сопротивление), но при этом с повышенным сопротивлением светодиоды светятся не так уж ярко.


Рисунок 2.2.5 – 1 Breadboard


Рисунок 2.2.6 – 3 Коннектори


Рисунок 2.2.7 – 1 плата Arduino Uno R3 или аналог


Рисунок 2.2.8 – Схема соединений


На примере будет отправляться полученные данные с переменного резистора в порт через ПК. Чтобы читать и обрабатывать данные из порта платы нужно использовать команду analogRead и номер порта. Далее все будет понятно.

Также к данному интерфейсу можно подключить ещё датчики, к например аналоговый стек, инфракрасный дальномер, датчик температуры, фоторезистор, фотодиод, и т. д.

2.3. Технический проект

2.3.1 Общая структура системы цифровой обработки RGB светодиода

Схема для подключения:

В RGB светодиода есть четыре ножки: по 1 положительному контактику на соотвествующий светодиод и 1 общий контакт, на который подключат все полюсы светодиодов (отрицательные аноды).


Рисунок 2.3.1.1 – Схема RGB-светодиодов


На RGB светодиоде общий анод определяется 2 по длине контакта. Данный контакт подключаем к GND («земля»). Для каждого по отдельности светодиода нужно свой резистор на 270 Ом для предотвращения возможного протекания чересчур больших токов.

Этот резистор устанавливается в цепь между катодом (зеленый, красный, синий) и управляется через пины на плате Arduino.


Рисунок 2.3.1.2 – Схема соединений RGB-светодиодов


Когда используем RGB-светодиодиод (с общим анодом), а не катода общего, то длинный контакт на светодиоде может подклчится к пину +5 V а не к GND.


Рисунок 2.3.1.2 – Внешний вид макета

2.3.2 Связь Arduino з ПК

На рис. 2.3.2.1 показано: вариант отображения контроллера на плате Arduino. Сам контроллер состоит из следующих основных узлов:

– разъем питания на 6—12 вольт;

– микроконтроллер (Atmega32U2 или Atmega1280);

Загрузка...