Search Code

DIY қашықтықтан басқару реле жобасы: 13 миль Wi-Fi/ SIM-сіз Heltec LoRa 32 модулі

Бұл сабақтың бөлігі: Introduction to WiFi LoRa

DIY қашықтықтан басқару реле жобасы: 13 миль Wi-Fi/ SIM-сіз Heltec LoRa 32 модулі

Heltec WiFi LoRa 32 арқылы ұзақ қашықтыққа LoRa қашықтан басқару пульті

15 мильден немесе 21 шақырымнан астам қашықтықтан желдеткішті, шамды, су сорғысын немесе күзет дабылын SIM картасыз және ешқандай ақы төлемей басқара алатыныңызды елестетіп көріңіз. Бұл LoRa (Long Range) технологиясының арқасында мүмкін, және осы нұсқаулықта біз мұндай жүйені қалай құру керектігін нақты көрсетеміз. Біз қуатты 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-дегі бейнеде егжей-тегжейлі көрсетілгендей, реле мен дыбыстық сигналға арналған сымдарды жалғау нұсқаулары берілген.

Релені жалғау

Реле электрмен басқарылатын ажыратқыш ретінде жұмыс істейді, бұл жоғары қуатты жүктемені басқаруға мүмкіндік береді.

  • Реленің сигнал пині Heltec LoRa модулінің 4-пиніне қосылады.
  • Реленің жер пині модульдегі GND пиніне қосылады.
  • Маңызды: Реленің VCC (қуат) пині сыртқы 5В қуат көзінен қоректендірілуі керек. Модульдің 3.3В шығысы реленің ток тұтынуын сенімді түрде қамтамасыз ете алмайды.
  • Сыртқы қуат көзінің жерін Heltec модулінің жеріне қосу арқылы ортақ жерді жасау керек. Бұл тізбектің жұмыс істеуі үшін өте маңызды.
Helte_Wifi_LoRA 32

Транзистормен дыбыстық сигналды жалғау

Қарапайым дыбыстық дабыл үшін дыбыстық сигналды қолдануға болады. Микроконтроллер пинінен тым көп ток тұтынуды болдырмау үшін оны басқару үшін 2N2222 NPN транзисторын қолданамыз.

  • Модульдің 4-пинін 1кОм резисторға қосыңыз. Резистордың екінші ұшы транзистордың базасына (ортаңғы пин) қосылады.
  • Транзистордың эмиттері (сол жақ пин, жазық жағы сізге қараған кезде) GND-ге қосылады.
  • Транзистордың коллекторы (оң жақ пин) дыбыстық сигналдың теріс (-) терминалына қосылады.
  • Дыбыстық сигналдың оң (+) терминалы Heltec модуліндегі 3.3В пиніне қосылады.
Helte_Wifi_LoRA 32 with buzzer

Arduino IDE және кітапхананы орнату

Кодты жүктеу алдында Arduino IDE-ді Heltec платаларымен жұмыс істеуге конфигурациялау керек. Бұл процесс бейнеде 14:37-ден басталады.

  1. ESP32 платаларын орнату: Arduino IDE ішінде Boards Manager бөліміне өтіп, ESP32 іздеңіз. Espressif Systems пакетін орнатыңыз.
  2. Heltec Board URL қосу: File > Preferences бөліміне өтіңіз. "Additional Boards Manager URLs" өрісіне Heltec ESP32 сериясының JSON сілтемесін қосыңыз. Бұл сілтеме мақаланың төменгі жағындағы ресурстар бетінде беріледі.
  3. Heltec ESP32 платаларын орнату: Boards Manager бөліміне қайта оралып, Heltec ESP32 іздеп, пакетті орнатыңыз.
  4. Қажетті кітапханаларды орнату: Library Manager бөліміне өтіп, келесілерді орнатыңыз:
    • Heltec ESP32 dev boards
    • Adafruit GFX Library (және оның тәуелділіктері үшін "Install All" түймесін басыңыз)
  5. Robojax кітапханасын орнату: Ресурстар бетінен арнайы Robojax Heltec LoRa 32 zip кітапханасын жүктеп алыңыз. Arduino IDE ішінде Sketch > Include Library > Add .ZIP Library бөліміне өтіп, жүктеп алған файлды таңдаңыз.
  6. Платаны таңдау: Соңында, Tools > Board бөліміне өтіп, Heltec WiFi LoRa 32 (V3) платасын таңдаңыз.

Код параметрлерінің түсіндірмесі

Бұл жоба үшін бізде үш түрлі код нұсқасы бар: біреуі қарапайым қосу/өшіру таратқышы үшін, біреуі тоггл таратқышы үшін, және біреуі қабылдағыш үшін. Кітапхана күрделі бөліктерді өзі басқарады, сондықтан әр файлдың жоғарғы жағындағы бірнеше параметрді ғана реттеу қажет. Код түсіндірмесі бейненің 19:00 минутынан басталады.

Таратқыш (TX) - Қарапайым Қосу/Өшіру Код Параметрлері

Бұл код түймені басып тұрған кезде ғана релені қосады.

// OLED экранында көрсетілетін мәтін
const char *displayTexttitle = "Relay:";
const char *displayTextTX = "(TX)";
const char *displayTextRelayON = "ON";
const char *displayTextRelayOFF = "OFF";

// Қауіпсіздік кілті және жиілік (ҚАБЫЛДАҒЫШПЕН СӘЙКЕС КЕЛУІ КЕРЕК)
const char *userKey = "6tfDs$wEq3!";
#define RF_FREQUENCY 915555000 

// Тарату қуаты (2-21, жоғары болса күштірек)
#define TX_OUTPUT_POWER 14 

Таратқыш (TX) - Тоггл Код Параметрлері

Бұл код әр түйме басқан сайын реленің күйін ауыстырады (қосудан өшіруге немесе өшіруден қосуға).

// Serial monitor арқылы қателерді тексеру үшін true, қалыпты пайдалану үшін false
bool debug = true; 
// Кірістірілген пайдаланушы түймесінің пині 0
#define PUSH_BUTTON_PIN 0  

// OLED экранында көрсетілетін мәтін
const char *displayTextTitle = "Relay:";
const char *displayTextTX = "(TX)";
const char *displayTextRelayToggleON = "TOG-ON";
const char *displayTextRelayToggleOFF = "TOG-OFF";

// Қауіпсіздік кілті және жиілік (ҚАБЫЛДАҒЫШПЕН СӘЙКЕС КЕЛУІ КЕРЕК)
const char *userKey = "6tfDs$wEq3!"; 
#define RF_FREQUENCY 915555000 

// Тарату қуаты (2-21)
#define TX_OUTPUT_POWER 2 

Қабылдағыш (RX) Код Параметрлері

Бұл жалғыз қабылдағыш коды қарапайым және тоггл таратқыштарының екеуімен де жұмыс істейді.

// Реленің сигнал кірісіне қосылған пин
#define RELAY_CONTROL_PIN 4

// OLED экранында көрсетілетін мәтін
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"; 

// Қауіпсіздік кілті және жиілік (ТАРАТҚЫШПЕН СӘЙКЕС КЕЛУІ КЕРЕК)
const char *userKey = "6tfDs$wEq3!";
#define RF_FREQUENCY 915555000 

Маңыздысы, userKey және 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 миль қашықтық сынағы
Код жоқ.

Ресурстар мен сілтемелер

Файлдар📁

Arduino кітапханалары (zip)

Басқа файлдар