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

SmartPostBox: умный почтовый ящик на Arduino MKR Fox 1200 и Sigfox

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

Инструменты и сервисы

О проекте

SmartPostBox — это IoT-устройство, которое уведомляет вас по email, когда в почтовый ящик кладут письмо. Лазер направлен на фоторезистор через весь ящик. Когда конверт прерывает луч, сопротивление фоторезистора растёт, напряжение на аналоговом входе падает — Arduino отправляет пакет в сеть Sigfox, которая пересылает уведомление на почту. Устройство автономно работает от батарей месяцев (Sigfox — сверхнизкое потребление).

Принцип работы

  1. Лазер постоянно светит на фоторезистор (норма ~950 на АЦП 10 бит).
  2. Если значение падает ниже 800 (перекрытие лучом) — срабатывает условие.
  3. Arduino открывает Sigfox-пакет, отправляет пробел " " (данные не нужны, само событие — триггер).
  4. Sigfox backend получает пакет → срабатывает Callback → отправляет email на заданный адрес.
  5. Флаг pos предотвращает повторные отправки до извлечения письма (значение возвращается >800).

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

Код (основные фрагменты)


// Глобальные переменные
int lightIntensity;
int pos = 0; // 0 — луч свободен, 1 — письмо обнаружено, ждём извлечения
bool proDebug = false; // true — вывод в Serial для отладки (требует USB)

void setup() {
  if (proDebug) Serial.begin(9600);
  SigFox.begin(); // инициализация модема
  // настройка пинов не требуется: лазер всегда включен, фоторезистор на A1
}

void loop() {
  lightIntensity = analogRead(A1);
  if (proDebug) { Serial.print("Light: "); Serial.println(lightIntensity); }

  if (lightIntensity < 800) { // луч прерван
    if (pos == 0) { // первое срабатывание
      pos = 1;
      sendSigfoxPacket();
    }
  } else { // луч восстановлен — письмо забрали
    pos = 0;
  }
  delay(1000); // опрос раз в секунду
}

void sendSigfoxPacket() {
  SigFox.beginPacket();
  if (proDebug) Serial.println("Parsing Packet");
  SigFox.print(" "); // константный байт
  int ret = SigFox.endPacket(true); // ждём подтверждения
  if (proDebug) { Serial.print("Status: "); Serial.println(ret); }
}

Настройка Sigfox Callback (email)

  1. Войдите в бэкенд Sigfox (backend.sigfox.com).
  2. Device Type → Callbacks → New.
  3. Type: Data Uplink.
  4. Channel: Email.
  5. Recipient: ваш email.
  6. Subject: SmartPostBox (или своё).
  7. Message (тело письма):
Hello There,
This is to let you know that you have received mail in your post box.
Be sure to check it out.
Device {device}, Over and Out.

Переменная {device} подставит ID устройства. Доступны также {time}, {lat}, {lng} и др.

Корпус и монтаж

Корпус нужен, чтобы держать лазер и фоторезистр точно напротив друг друга, и чтобы конверт проходил между ними. Автор сделал из картона: две треугольные стенки, сходящиеся к центру (один луч длиннее из-за размеров лазера). Файлы для 3D-печати не предоставлены — нужно подогнать под свой ящик. Главное: жёсткая фиксация оптики, чтобы вибрации не давали ложных срабатываний.

Особенности и ограничения

Ссылки

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

  1. Синтаксис нетлистов SPICE: именование компонентов, пассивные и активные элементы, определение источников
  2. Интегральные схемы (ИС): компактные мощные чипы, питающие современную электронику
  3. Цифровые кости на Arduino: генератор случайных чисел с LCD-дисплеем и кнопкой
  4. DIY детектор землетрясений на ADXL335 с усилением ОУ OP07
  5. Умные шторы: автоматическое управление светом на Arduino с солнечной энергией
  6. MotionSense: умная система обнаружения проникновения на Arduino и ESP8266
  7. Набор MOSMusic: MOSFET, Arduino и управление светом по музыке
  8. Микроэлектроника: наука о сверхмалых электронных компонентах
  9. Основные компоненты сверлильного станка: подробный обзор
  10. Ключевые компоненты двигателя внутреннего сгорания