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

Проект DIY удаленного реле: 13 миль без Wi-Fi/без SIM-модуля Heltec LoRa 32

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

Проект DIY удаленного реле: 13 миль без Wi-Fi/без SIM-модуля Heltec LoRa 32

Дистанционное управление LoRa с дальностью действия с Heltec WiFi LoRa 32

Представьте, что вы сможете управлять вентилятором, светом, водяным насосом или охранной сигнализацией на расстоянии более 15 миль или 21 километра, не нуждаясь в SIM-карте и не оплачивая никаких сборов. Это возможно благодаря технологии LoRa (долгое Хранение), и в этом руководстве мы покажем вам, как построить такую систему. Мы будем использовать мощныйHeltec WiFi LoRa 32 модульудобно расположенный внутри прочногоКорпус Meshnology N35в который входит аккумулятор емкостью 3000 мАч для длительной работы.

Этот проект продемонстрирует, как настроить передатчик и приемник для управления нагрузкой двумя различными способами: простой функцией включения/выключения и функцией переключения. Мы рассмотрим сборку оборудования, проводку, настройки кода и покажем вам тест на реальном диапазоне.


Компоненты и оборудование

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

  • Heltec WiFi LoRa 32 V3:Это универсальный микроконтроллер, который оснащен встроенным чипом LoRa для связи, а также возможностями Wi-Fi и Bluetooth. Он полностью программируемый, как Arduino, что позволяет нам считывать входные данные и управлять выходами.
  • Meshnology N35 Корпус и аккумулятор:Это прочный корпус, специально разработанный для модуля Heltec. При покупке в комплекте он включает батарею на 3000 мАч, которая необходима для длительной передачи и приема, особенно в удаленных местах.
  • Антенна с высоким коэффициентом усиления:Для достижения наилучшего возможного радиуса действия мы используем антенну с высоким коэффициентом усиления, которая значительно улучшает силу сигнала по сравнению со стандартной антенной.
  • Реле или звоночек:Для приемника вы можете подключить реле для управления высокомощными переменными или постоянными устройствами, такими как вентиляторы и светильники, или простой зуммер для сигнализационных приложений.

Сборка оборудования

Сборка устройства — это простой процесс, как показано в видео, начиная примерно с05:56Комплект N35 включает модуль Heltec, аккумулятор на 3000 мАч, корпус, антенну с удлинительным кабелем и штыревые разъемы.

Основные шаги включают установку кнопок в корпус, провод питания батареи, подключение антенны к модулю, размещение модуля внутри и подключение батареи. Затем просто закройте корпус и закрепите крепление антенны снаружи. Стоит отметить, что ранняя версия корпуса требовала небольшой модификации для установки крепления антенны, но компания Meshnology уже исправила эту проблему в новых партиях.


Проводка для нагрузки приемника

На стороне приемника вы подключите свое выходное устройство. Ниже приведены инструкции по подключению как реле, так и зуммера, как подробно показано в видео на11:17.

Подключение реле

Реле действует как электрически управляемый переключатель, позволяя вам управлять нагрузкой высокой мощности.

  • Сигнальный контакт реле подключается кпин 4модуля Heltec LoRa.
  • Земляной контакт реле соединяется сGNDштырь на модуле.
  • Важно:Пин VCC (питания) реле должен быть питанием отвнешний источник питания 5ВВыход 3.3В модуля не может надежно справляться с током, потребляемым реле.
  • Вы должны создать аобщая основаподключив землю внешнего источника питания к земле модуля Heltec. Это критично для работы схемы.
Helte_Wifi_LoRA 32

Подключение зуммера с транзистором

Для простого звукового сигнала вы можете использовать зуммер. Чтобы избежать чрезмерного потребления тока от вывода микроконтроллера, мы используем NPN транзистор 2N2222 для его управления.

  • Соединитьпин 4модуля к резистору 1 кОм. Другой конец резистора соединяется сбаза(средний контакт) транзистора.
  • Транзистораэмиттер(левый штифт, с плоской стороной к вам) соединяется сГНД.
  • Транзистораколлектор(правый штырь) соединяется снегативный (-)терминал зуммера.
  • Theположительный (+)терминал сигнального устройства подключается к3.3Впин на модуле Heltec.
Helte_Wifi_LoRA 32 с зуммером

Настройка Arduino IDE и библиотеки

Прежде чем загрузить код, вам необходимо настроить Arduino IDE для работы с платами Heltec. Процесс начинается с14:37в видео.

  1. Установите платы ESP32:В Arduino IDE зайдите в Менеджер плат и выполните поиск поESP32Установите пакет от компании Espressif Systems.
  2. Добавьте URL-адрес платы Heltec:Перейдите в Файл > Настройки. В разделе "Дополнительные URL-адреса менеджера плат" добавьте ссылку JSON для серии Heltec ESP32. Эта ссылка будет предоставлена на странице ресурсов под статьей.
  3. Установите платы Heltec ESP32:Вернитесь к менеджеру досок, поищитеHeltec ESP32, и установите пакет.
  4. Установите необходимые библиотеки:Перейдите в Менеджер библиотек и установите следующее:
    • Heltec ESP32 dev boards
    • Adafruit GFX Library(и нажмите "Установить все" для его зависимостей)
  5. Установите библиотеку Robojax:Скачайте пользовательскийRobojax Heltec LoRa 32скачайте zip-библиотеку с страницы ресурсов. В среде Arduino IDE перейдите в меню Sketch > Include Library > Add .ZIP Library и выберите загруженный вами файл.
  6. Выберите доску:Наконец, перейдите в Инструменты > Доска и выберитеHeltec WiFi LoRa 32 (V3).

Настройки кода объяснены

У нас есть три различных кода для этого проекта: один для простого передатчика включения/выключения, один для переключающего передатчика и один для приемника. Библиотека обрабатывает сложные части, поэтому вам нужно только настроить несколько параметров в начале каждого файла. Объяснение кода начинается с19:00в видео.

Передатчик (TX) - Настройки простого кода Включение/Выключение

Этот код включает реле только во время удерживания кнопки.

// Text to display on the OLED screen
const char *displayTexttitle = "Relay:";
const char *displayTextTX = "(TX)";
const char *displayTextRelayON = "ON";
const char *displayTextRelayOFF = "OFF";

// Security key and frequency (MUST MATCH RECEIVER)
const char *userKey = "6tfDs$wEq3!";
#define RF_FREQUENCY 915555000 

// Transmission power (2-21, higher is stronger)
#define TX_OUTPUT_POWER 14 

Передатчик (TX) - Переключить настройки кода

Этот код переключает состояние реле (с включенного на выключенное или с выключенного на включенное) с каждым нажатием кнопки.

// Set to true for serial monitor debugging, false for normal use
bool debug = true; 
// The built-in user button pin is 0
#define PUSH_BUTTON_PIN 0  

// Text to display on the OLED screen
const char *displayTextTitle = "Relay:";
const char *displayTextTX = "(TX)";
const char *displayTextRelayToggleON = "TOG-ON";
const char *displayTextRelayToggleOFF = "TOG-OFF";

// Security key and frequency (MUST MATCH RECEIVER)
const char *userKey = "6tfDs$wEq3!"; 
#define RF_FREQUENCY 915555000 

// Transmission power (2-21)
#define TX_OUTPUT_POWER 2 

Настройки кода приемника (RX)

Этот код одного приемника работает как с простыми, так и с переключающими передатчиками.

// The pin connected to the relay's signal input
#define RELAY_CONTROL_PIN 4

// Text to display on the OLED screen
const char *displayTextTitle = "Relay:"; 
const char *displayTextTX = "(RX)"; 
const char *displayTextRelayON = "ON"; 
const char *displayTextRelayOFF = "OFF"; 
const char *displayTextRelayToggleON = "TOG-ON"; 
const char *displayTextRelayToggleOFF = "TOG-OFF"; 

// Security key and frequency (MUST MATCH TRANSMITTER)
const char *userKey = "6tfDs$wEq3!";
#define RF_FREQUENCY 915555000 

Ключевым образом, theuserKeyиRF_FREQUENCYдолжны быть идентичны как на передатчике, так и на приемнике, чтобы они могли общаться.


Демонстрация и тест на расстояние 13 миль

Система работает безупречно в лабораторной среде, при этом реле или зуммер приемника мгновенно реагируют на нажатия кнопок на передатчике. Но истинная сила LoRa заключается в ее диапазоне.

Был проведен тест на дальность, как видно из25:03вперед. Передатчик был настроен на уровень мощности 20, оснащён высокоусилительной антенной и установлен на штативе примерно на 10 метров выше уровня воды на берегу озера для обеспечения чистой видимости. Приёмник затем был перенесён на другую сторону озера.

Результат оказался удивительным успехом. Стабильный сигнал был принят на расстоянии13,04 миль, или 20,98 километровЭто демонстрирует, что с правильной настройкой вы можете надежно управлять устройствами на больших расстояниях, что делает это идеальным для таких приложений, как удаленный мониторинг сельского хозяйства, управление воротами или система охранной сигнализации дальнего действия.


Временные метки видео

  • 00:00- Введение в управление дальнего радиуса
  • 02:42Что такое LoRa?
  • 03:20- Обзор компонентов (Heltec, корпус N35)
  • 05:56- Распаковка и сборка оборудования
  • 11:17- Объяснение проводки: Реле и зуммер
  • 14:37- Настройка Arduino IDE и библиотеки
  • 19:00- Объяснение настроек кода (TX и RX)
  • 25:03- Демонстрация и тест на дальность 13 миль
Нет кода.

Common Course Files

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

Файлы📁

Другие файлы