Код для поиска

Система удаленного оповещения о двери на расстоянии 13 миль (21 км) с LoRa – вне сети! (Heltec WiFi LoRa 32 V3)

Этот урок является частью: Введение в WiFi LoRa

Система удаленного оповещения о двери на расстоянии 13 миль (21 км) с LoRa – вне сети! (Heltec WiFi LoRa 32 V3)

Представьте себе мониторингстатус входной двери, садовых ворот или дверей сараясверху до13 миль (20 км)без использования Wi-Fi или SIM-карт. В этом учебном пособии вы узнаете, как создать безопасную беспроводную систему оповещения о двери, используяHeltec WiFi LoRa 32 V3модули. Эта система используетAES-зашифрованная LoRa-коммуникацияотправлять предупреждения, когда дверь открыта или закрыта, и работает полностью автономно.

Обзор проекта

Этот проект использует две платы LoRa32:

  • Передатчик (TX)Об détecte l'état открывания/закрывания двери с помощью магнитного переключателя и отправляет зашифрованные уведомления.

  • Приемник (RX)Расшифровывает сообщение, отображает статус на OLED и управляет цифровым выводом для внешних триггеров (например, зуммер, светодиод).

Это надежное и маломощное решение идеально подходит для удаленного мониторинга таких объектов, как фермы, мастерские и наружные ворота.

Необходимая библиотека

Этот проект используетRobojax_HeltecLoRa32библиотека. Библиотека и все кодовые файлы включены ниже этой статьи.

Установите библиотеку ZIP с помощью Arduino IDE перед загрузкой скетчей.

Установка плат Heltec ESP32

Добавьте этот путь в настройки вашей Arduino IDE, как показано в видео:https://resource.heltec.cn/download/package_heltec_esp32_index.json

Инструкции по подключению

Проводка передатчика:

  • Магнитный переключатель (или кнопка) подключен кGPIO0

  • OLED-дисплей подключен через стандартные выводы I2C (SDA/SCL)

Проводка приемника:

  • GPIO4 становится высоким, когда дверь ОТКРЫТА, и низким, когда ЗАКРЫТА.

  • Подключите GPIO4 к светодиоду, зуммеру или внешнему входу для действия.

ðŸ"· Подпись к изображениюСхема подключения, показывающая, как передатчик определяет состояние двери через магнитный переключатель на GPIO0, а приемник активирует сигнализацию на GPIO4.

Разбиение кода TX

Эскиз передатчика (Door_Alarm_TX.ino) считает состояние GPIO0, чтобы определить, открыта ли дверь или закрыта.

  • Когда магнитный переключатель открыт (дверь открыта), он отправляет строку"ON"

  • Когда дверь закрыта, она посылает"OFF"

  • OLED-экран показывает "ОТКРЫТО" или "ЗАКРЫТО" соответственно.

Шифрование осуществляется с помощью:

robojaxDevice.setSecurityKey("hyhT676#h~_876s");
robojaxDevice.sendSecureMessage("ON");

Разбор кода RX

Эскиз приемникаDoor_Alarm_RX.ino) прослушивает защищенные сообщения и отображает результат на OLED-дисплее:

String message = robojaxDevice.receiveSecureMessage();

Тогда он активирует GPIO4:

if (message == "ON") {
  digitalWrite(4, HIGH);
  oledDisplay.println("Door is OPEN");
} else {
  digitalWrite(4, LOW);
  oledDisplay.println("Door is CLOSED");
}

Эта настройка обеспечивает обавизуальный и цифровой выводдля состояния двери.

Глава Индекс

  1. [00:00] Введение и примеры использования

  2. [00:06] Возможности диапазона LoRa

  3. [00:10] Концепция датчика двери

  4. [00:20] Используемая проводка и компоненты

  5. [00:40] Установка библиотеки Robojax

  6. [01:00] Объяснение кода TX

  7. [01:20] Код рецепта и триггер оповещения

  8. [01:40] Демонстрация в реальном времени


Этот проект является отличной отправной точкой дляобеспечить безопасность IoT с помощью LoRa, идеально подходит для тех, кто нуждается в надежном мониторинге дверей или ворот на больших расстояниях. Необходимый код и библиотека доступны ниже этой статьи. Смотрите полное видео, чтобы собрать и протестировать вашу систему!

Нет кода.

Common Course Files

Ресурсы и ссылки

Файлы📁

Другие файлы