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

Включите устройство на расстоянии 13 миль (21 км) – Ультимативный проект LoRa вне сети с WiFi LoRa 32!

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

Включите устройство на расстоянии 13 миль (21 км) – Ультимативный проект LoRa вне сети с WiFi LoRa 32!

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

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

Эта система состоит из двух плат LoRa32:

  • Передатчик (TX)Кнопка запускает зашифрованную команду ("ВКЛ" или "ВЫКЛ") по технологии LoRa.

  • Приемник (RX)Слушает и расшифровывает команду, затем управляет модулем реле, подключенным к GPIO4, соответствующим образом.

У вас есть две версии кода передатчика:

  • Простой: Включается при удерживании кнопки, выключается при отпускании.

  • ПереключитьПереключает состояние с каждым нажатием.


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

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

Требуемая библиотека

Вы должны установить Robojax_HeltecLoRa32библиотека. Скачайте ее по ссылке ниже этой статьи.

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

Инструкция по проводке

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

  • Кнопка пользователя подключена кGPIO0

  • Необязательно: OLED-дисплей использует стандартные контакты (SCL/SDA)

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

  • Контрольный контакт реле (или зуммера) подключен кGPIO4

  • 5В релейный модуль, питающийся от 5В и GND платы

Управляйте нагрузкой с помощью LoRa

Схема подключения, показывающая приемник LoRa32 с реле и нагрузкой.

Helte_Wifi_LoRA_ зуммер

Схема подключения с зуммером LoRa32.

Объяснение кода безопасной транзакции

В обоих эскизах TX шифрование включено с использованиемsetSecurityKey()метод из библиотеки Robojax. Например:

const char *userKey = "hyhT676#h~_876s";
robojaxDevice.setSecurityKey(userKey);

ВRelay_Secure_TX_Simple.inoвысокий сигнал на GPIO0 отправляет "ВКлючено", а низкий отправляет "Выключено":

if(digitalRead(0) == HIGH){
  robojaxDevice.sendSecureMessage("ON");
} else {
  robojaxDevice.sendSecureMessage("OFF");
}

ВRelay_Secure_TX_Toggle.inoкаждое нажатие кнопки переключает между ВКЛ и ВЫКЛ:

if(buttonPressed){
  status = !status;
  String message = status ? "ON" : "OFF";
  robojaxDevice.sendSecureMessage(message);
}

Объяснение кода Secure RX

Эскиз приемника использует тот же ключ шифрования и прослушивает защищенные сообщения:

robojaxDevice.setSecurityKey("hyhT676#h~_876s");
String message = robojaxDevice.receiveSecureMessage();

Затем управляет GPIO4 соответствующим образом:

if(message == "ON"){
  digitalWrite(RELAY_CONTROL_PIN, HIGH);
} else if(message == "OFF"){
  digitalWrite(RELAY_CONTROL_PIN, LOW);
}

Дисплей OLED показывает состояние приёма и надпись "RX".

Индекс глав

  1. [00:00] Введение в проект и демонстрация возможностей

  2. Сценарии использования: Вентилятор, Обогреватель, Ворота, Свет

  3. [00:20] Используемое оборудование

  4. [00:40] Обзор проводки

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

  6. TX Код (Простая версия)

  7. [01:40] TX Код (Переключить версию)

  8. [02:00] Объяснение кода RX

  9. [02:20] Живая демонстрация

Этот учебник предлагает надежный и безопасный способ беспроводного управления устройствами на больших расстояниях. Весь код и необходимые библиотеки доступны ниже этой статьи. Посмотрите полное видео, чтобы следовать за процессом!

Изображения

Heltec_WiFi_LoRa_32_V3_N35-1-package
Heltec_WiFi_LoRa_32_V3_N35-1-package
Нет кода.

Common Course Files

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

Файлы📁

Другие файлы