Управление освещением на Ардуино

Управление освещением на Ардуино

Управление освещением на Arduino в доме ► схема сборки проекта, скетч для управления светильниками в квартире от пульта ДУ и датчиков движения от Ардуино.

Освещение дома на Ардуино сделать довольно просто, однако потребуются серьезные финансовые и временные затраты на прокладку проводов для датчиков и светильников. Представляем проект на Arduino для управления освещением в квартире или доме от пульта ДУ и датчиков движения. Представим схему сборки проекта на Arduino Nano и скетч для управления тремя светильниками от Arduino.

Видео. Освещение дома на Ардуино

Для питания платы и LED ленты используется блок питания на 12 Вольт с выходным напряжением 1 Ампер. При этом общее потребление электроэнергии, если включить все освещение сразу, не превышает 15 Ватт, что сравнимо с одной энергосберегающей лампочкой. Но при этом освещение на Arduino работает в санузле (туалет совмещен с ванной), в прихожей, в коридоре на 2 этаже, в гостиной (зона отдыха и зона кухни).

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

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

Для этого проекта нам потребуется:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • IR приемник Ардуино;
  • пульт ДУ;
  • источник питания DC 12В;
  • светодиодная лента;
  • транзисторы и резисторы;
  • PIR датчики движения;
  • паяльник, термопистолет, провода и изолента.
Схема. Освещение в комнате на Arduino Nano
Схема. Освещение в комнате на Arduino Nano

Для включения LED ленты используются транзисторы 2N2222, заказанные за 60 рублей за штуку на Алиэкспресс. Характеристика 2N2222 транзисторов: макcимальное напряжение коллектор-база — 60 Вольт, макcимальное напряжение коллектор-эмиттер — 30 Вольт, макcимальное напряжение эмиттер-база — 5 В, макcимальный постоянный ток коллектора — 0.8 Ампер, максимальная рассеиваемая мощность — 0,5 Ватт.

В схеме два светильника, подключены через транзистор к Pin7 и Pin8, установлены в коридоре на 1 и 2 этаже, включаются автоматически только в темноте и при срабатывании датчиков движения. Светильник, подключенный к Pin6, установлен в ванной и включается автоматически от Pir датчика движения при любом освещении. Три светильника на Pin10, Pin11 и Pin12 управляются от пульта через ИК приемник.

Скетч. Управление освещением на Ардуино

Скачать скетч для управления освещением целиком можно скачать здесь. Также в программе есть цикл для работы в режиме «имитация присутствия», включаемый с пульта ДУ. Светильники в разных комнатах включаются в разное время, имитируя присутствие хозяев в квартире или в доме. Это пригодится тем, кто хочет дополнительно защитить свое жилье от нежданных гостей в свое отсутствие.

#include  // подключаем библиотеку для IR приемника
IRrecv irrecv(A5); // указываем пин, к которому подключен IR приемник
decode_results results;

    // вводим переменные для циклов while
byte n = 5;
byte m = 5;

    // вводим переменные для счетчиков
unsigned long counttime0;
unsigned long counttime1;
unsigned long counttime2;
unsigned long counttime3;

    // назначаем имена для портов
#define PIR_V   2  // ванная комната
#define PIR_K1  3  // прихожая в доме
#define PIR_K2  4  // коридор на 2 этаже
#define LED_V   6  // ванная комната
#define LED_K1  7  // прихожая в доме
#define LED_K2  8  // коридор на 2 этаже
#define LED_Z   10 // светильник в комнате
#define LED_Z1  11 // светильник в комнате
#define LED_Z2  12 // светильник в комнате
#define FOTO    A0 // датчик освещенности
#define IR      A5 // IR - приемник

void setup()
{
    // запускаем прием инфракрасного сигнала
irrecv.enableIRIn();

    // запускаем серийный монитор порта
Serial.begin(9600);

    // назначаем режим работы портов
pinMode(PIR_V,  INPUT);
pinMode(PIR_K1, INPUT);
pinMode(PIR_K2, INPUT);
pinMode(LED_V,  OUTPUT);
pinMode(LED_K1, OUTPUT);
pinMode(LED_K2, OUTPUT);
pinMode(LED_Z,  OUTPUT);
pinMode(LED_Z1, OUTPUT);
pinMode(LED_Z2, OUTPUT);
pinMode(FOTO, INPUT);
pinMode(IR, INPUT);

    // выключаем светильники
digitalWrite(LED_Z,  LOW);
digitalWrite(LED_V,  LOW);
digitalWrite(LED_K1, LOW);
digitalWrite(LED_K2, LOW);
digitalWrite(LED_Z1, LOW);
digitalWrite(LED_Z2, LOW);
}

При длительном включении 2-х метровой LED ленты, транзисторы греются, поэтому используйте радиаторы для их охлаждения или используйте для управления освещением полевой MOSFET транзистор IRF530. У транзистора максимальное напряжение коллектор-база — 100 В, макcимальный ток коллектора 3 Ампера (при напряжении на затворе 5 В), максимальная рассеиваемая мощность — 88 Ватт.

1 Star2 Stars3 Stars4 Stars5 Stars (23 votes, average: 4,83 out of 5)
Загрузка...

Похожие записи по теме:

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

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