Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Сборка RGB-микшера цветов на Arduino — пошаговое руководство

Компоненты и материалы

Arduino UNO × 1
Потенциометр (3 шт.) × 3
Плата для макетирования (Breadboard) × 1
RGB-светодиод (или RGB-модуль) × 1
Резистор 330 Ом (3 шт.) × 3
Перемыжки Male-Male (~15 шт.) × 1

Программное обеспечение

О проекте

Arduino Color Mixer

Это руководство достаточно простое и требует базовых знаний Arduino и электроники. Если вы не знакомы с Arduino, я дам ссылки для помощи.

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

Также мы освоим аналоговые входы/выходы Arduino (I/O) — чтение и запись аналоговых напряжений на пинах.

Компоненты (подробно)

Поехали!

Идея микшера: Arduino выдаёт на пинах RGB-светодиода напряжение, пропорциональное входному напряжению от потенциометров на аналоговых входах.

Подключение потенциометров

Потенциометр работает как делитель напряжения, где Vout — пин Arduino.

Суть: он преобразует регулируемую часть напряжения (меняется вращением) в сигнал на аналоговый вход Arduino (Vout).

Подключите внешние контакты потенциометра к 5V и GND (порядок не важен), а средний — к аналоговому входу. Питание 5V и GND берутся с Arduino.

Я использую оранжевый провод для 5V (вместо красного), чтобы легче отличать линии питания и сигналы.

Повторите для 3-х потенциометров — по одному на каждый цвет. Для порядка подключу: Красный → A0, Зелёный → A1, Синий → A2.

Подключение RGB-светодиода

RGB-светодиод содержит 3 кристалла (R, G, B) в одном корпусе. Их свет смешивается на сетчатке, создавая восприятие единого цвета.

PWM на каждом пине даёт 256 значений. Итого: 256 × 256 × 256 = 16 777 216 цветов (почти 17 млн).

Подключение аналогично обычному светодиоду, но повторяется 3 раза. Каждый анод через резистор 330 Ом к PWM-пину, общий катод — к GND.

Не забудьте резисторы 330 Ом! Я сжёг красный кристалл, забыв резистор — току достаточно для сгорания за мгновения.

Теперь схема готова. Код очень прост и прямолинеен.

Программирование

Код выполняет простые действия последовательно.

В setup():

В loop():

Полный код приведён ниже.

Код (RGBLedPot.ino)

/* Controls RGB LED using potentiometers for each color
   Name: RGBLedPot.ino
   Created: 17/2/16 9:47:03 AM
   Author: Ahmed Hamdy
   GNUPL 3.0+ */

int inRGB[] = { A0, A1, A2 };      // Аналоговые входы для потенциометров
int outRGB[] = { 9, 10, 11 };      // PWM-выходы для RGB-светодиода
int tempValue = 0;
const int inMinVal = 0, inMaxVal = 1023;

void setup() {
  for (int i = 0; i < 3; i++) {
    pinMode(inRGB[i], INPUT);
    pinMode(outRGB[i], OUTPUT);
  }
}

void loop() {
  for (int i = 0; i < 3; i++) {
    tempValue = analogRead(inRGB[i]);
    tempValue = map(tempValue, inMinVal, inMaxVal, 0, 255);
    analogWrite(outRGB[i], tempValue);
  }
}

Теперь у вас есть генератор 17 млн цветов! Поздравляю!

Схемы

Схема подключения прилагается.

Производственный процесс

  1. Цифровые кости на Arduino: генератор случайных чисел с LCD-дисплеем и кнопкой
  2. Строим Iron Man на Arduino: компоненты, сенсоры и пошаговый гайд
  3. Find Me: Умный поисковик вещей на Arduino и Bluetooth
  4. Сборка функционального 3D-печатного манипулятора на Arduino: пошаговое руководство
  5. DIY-контроллер увлажнителя на Arduino с реле: безопасная работа с высоким напряжением
  6. Arduino RGB-микшер цветов: Простой проект для начинающих
  7. NeoPixel Matrix Pong на Arduino Nano: неоновая игра Pong на матрице 15×10
  8. Своё рулевое управление (джойстик) для игр на Arduino
  9. FM-радиоприемник на Arduino и модуле TEA5767
  10. Arduino 101: Пedometer с датчиком DHT11 и LCD-дисплеем