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

Умная розетка 120В на Arduino с часами реального времени

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

Макетная плата (breadboard)×1
Arduino UNO×1
USB-кабель A-B×1
Перемычки×1
RTC DS3231M (±5 ppm, I²C)×1
Релейный модуль (1 канал)×1
Сетевой шнур (вилка-розетка)×1
LED-лампа (нагрузка)×1

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

О проекте

Это умная розетка — именно то, что звучит. Применяется к любому устройству с вилкой ДЛЯ 120В ТОЛЬКО! (В основном для ламп с малым током). Розетка управляется одноканальным реле. Используется RTC (часы реального времени) для определения времени и, основываясь на 24-часовом формате, включает или выключает нагрузку в заданное время (предопределённое время включения и выключения). Важно: у розетки есть шнур с вилкой, который должен вставляться в сетевую розетку!

Библиотека RTC: rinkydinkelectronics.com

Важная информация о безопасности — ОБЯЗАТЕЛЬНО ПРОЧИТАЙТЕ!

  1. Используйте заземлённый шнур и прерывайте фазный провод
    На фото видно: используется 3-контактная вилка. Фазный (чёрный) провод от сети подключён к общему контакту реле. Нормально разомкнутый (NO) выход реле идёт на латунный винт розетки. Нейтраль (белый) — на серебристый винт, заземление (зелёный) — на зелёный винт.
  2. Используйте релейный модуль, а не голое реле
    Применён одноканальный модуль от Elegoo (аналог Keyes SR1y). В него входят: диод обратного хода (flyback) на управляющем входе, транзистор для управления катушкой, ограничивающий резистор. Реле рассчитано до 10А — ограничьте нагрузку или поставьте предохранитель в разрыв фазы. Желательно модуль с оптопарой для дополнительной гальванической развязки Arduino.
  3. Физическое разделение
    Монтируйте релейный модуль в пластиковом корпусе вдали от высоковольтных проводов. Паяльная сторона модуля должна смотреть к пластику, чтобы низковольтная проводка не контактировала с высоковольтной при ударах/вибрации.
Умная розетка 120В на Arduino с часами реального времени

Внутренняя проводка (ваша должна выглядеть так).

Умная розетка 120В на Arduino с часами реального времени

Крупный план релейного модуля.

Код

#include 
int Relay = 4;
DS3231 rtc(SDA, SCL);
Time t;
const int OnHour = 7;
const int OnMin = 15;
const int OffHour = 7;
const int OffMin = 20;

void setup() {
  Serial.begin(115200);
  rtc.begin();
  pinMode(Relay, OUTPUT);
  digitalWrite(Relay, LOW);
  // rtc.setTime(21,10,00); // раскомментируйте для установки времени/даты
  // rtc.setDate(26,6,2018);
}

void loop() {
  t = rtc.getTime();
  Serial.print(t.hour);
  Serial.print(" hour(s), ");
  Serial.print(t.min);
  Serial.print(" minute(s)");
  Serial.println(" ");
  delay(1000);
  
  if (t.hour == OnHour && t.min == OnMin) {
    digitalWrite(Relay, HIGH);
    Serial.println("LIGHT ON");
  } else if (t.hour == OffHour && t.min == OffMin) {
    digitalWrite(Relay, LOW);
    Serial.println("LIGHT OFF");
  }
}

Корпус и печатная плата

Корпус для размещения розетки, реле и электроники (3D-печать или другой способ).

Умная розетка 120В на Arduino с часами реального времени

Схемы

Умная розетка 120В на Arduino с часами реального времени

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

  1. TinyML-детектор языка на Arduino Nano 33 BLE Sense с Edge Impulse
  2. Создание игры в реальном времени на Arduino Nano с гироскопом MPU-6050 и OLED-дисплеем
  3. Цифровые кости на Arduino: генератор случайных чисел с LCD-дисплеем и кнопкой
  4. Создание рулетки на 37 светодиодов с Arduino Nano
  5. Мини-аркада на ATtiny85: Snake — ручная OLED-консоль своими руками
  6. Портативный дальномер на Arduino Nano: HC-SR04, питание 18650, 3D-корпус
  7. Сборка аудиореактивной настольной лампы на Arduino Nano
  8. Автономный робот-следопыт с распознаванием лиц на Arduino Nano и OpenCV
  9. Медное гальваническое покрытие: умная система на Arduino UNO
  10. NeoPixel Matrix Pong на Arduino Nano: неоновая игра Pong на матрице 15×10