Перейти к содержанию

LED лента Ардуино подключение, управление

Светодиодная лента Ардуино подключение, управление

Управление светодиодной лентой от Ардуино с питанием 12 Вольт или 5 Вольт можно осуществлять с помощью модуля электромагнитного (твердотельного) реле или mosfet транзистора. При использовании магнитного реле невозможно будет включать LED ленту плавно. Рассмотрим в этой статье, как подключить светодиодную led ленту к плате Ардуино и управлять ею для создания красивого декоративного освещения в комнате.

Необходимые компоненты:

  • Arduino Uno / Arduino Nano / Arduino Mega
  • LED лента 12 / 5 Вольт
  • источник питания 12 / 5 Вольт
  • mosfet транзистор / модуль реле
  • датчик движения
  • макетная плата
  • коннекторы

Дополнительные материалы на эту тему:

  1. Подключение адресной LED ленты к Ардуино
  2. Подключение мосфет транзистора к Ардуино
  3. Управление светильником от датчика HC-SR04

Представленные в этом обзоре схемы и программы подходят для управления и подключения rgb ленты к Ардуино. Смотрите также на нашем сайте руководство по управлению адресной ленты ws2812b от микроконтроллера Arduino Uno. При выборе транзистора обратите внимание на его характеристики — максимальный ток и напряжение, который способен выдержать mosfet транзистор для включения светодиодной ленты.

Как подключить светодиодную ленту к Ардуино

Как подключить светодиодную ленту к Ардуино

На схеме мы представили первый вариант подключения светодиодной ленты к Arduino: через транзистор или мосфет модуль. Транзистор позволяет плавно включать светодиодную LED ленту и регулировать яркость света с помощью PWM сигнала от микроконтроллера. Можно использовать в схеме 5 и 12 вольтовую RGB светодиодную ленту. Соберите схему, чтобы запрограммировать светодиодную ленту от Ардуино.

Скетч управления LED лентой через транзистор


#define LED 10

void setup() {
  pinMode(LED, OUTPUT);
}

void loop() {
  // плавное включение led ленты
  for(int i=0; i<=255; i++) {
    analogWrite(LED, i);
    delay(5);
  }

  // плавное выключение led ленты
  for(int i=255; i>=0; i--) {
    analogWrite(LED, i);
    delay(5);
  }
}

Подключение светодиодной ленты к Ардуино через реле

Скетч управления LED лентой через реле Ардуино

Минус при использовании электромагнитного реле заключается в «щелканье» контактов при включении и выключении реле и невозможности плавного включения LED ленты. Поэтому лучше использовать твердотельное реле или мосфет транзистор с подходящими характеристиками. Представленные в этом обзоре схемы и программы для управления LED лентой от Arduino, подойдут также для 5 Вольтовой светодиодной ленты.

Скетч управления LED лентой через реле Ардуино

#define LED 10

void setup() {
  pinMode(LED, OUTPUT);
}

void loop() {
  digitalWrite(LED, HIGH);
  delay(1000);
 
  digitalWrite(LED, LOW);
  delay(1000);
}

Скетч управления LED лентой с датчиком движения

Скетч управления LED лентой с датчиком движения

В следующем примере использован датчик движения для автоматического включения led ленты. Светодиодная лента выключается не сразу. В цикле while включается счетчик и через 10 секунд после того, как PIR датчик перестал видеть движение, освещение выключается. Соберите схему с электромагнитным или твердотельным реле, как показано на рисунке выше и загрузите следующую программу в микроконтроллер Arduino.

unsigned long counttime;
byte w = 1;

#define LED 10
#define PIR 2

void setup() {
  pinMode(LED, OUTPUT);
  pinMode(PIR, INPUT);
}

void loop() {
  // если движение есть - включаем led ленту
  if(digitalRead(PIR) == HIGH) { digitalWrite(LED, HIGH); w = 0; }

  // если нет движения - запускаем счетчик и цикл while
  if(digitalRead(PIR) == LOW) { counttime = millis(); w = 1; }

  while (w == 1) {
    // если нет движения в течении 10 сек - выключаем ленту
    if(millis() - counttime > 10000) { digitalWrite(LED, LOW); w = 0; }
 
    // если движение есть - включаем свет и выходим из while
    if(digitalRead(PIR) == HIGH) { digitalWrite(LED, HIGH); w = 0; }
 
    delay(100);
  }
 
  delay(100);
}

Заключение. В выражении if (millis() - counttime < 10000) можно поставить любое значение в миллисекундах, после которого светодиодная LED лента начнет плавно выключаться. Функция задержки delay(100) может повлиять на скорость реакции датчика движения, но позволяет разгрузить процессор микроконтроллера от частого опроса pir датчика, эта команда может быть удалена из программы при необходимости.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

newzaym
➜