Search Code

13 миль (21 км) қашықтықтан құрылғыны қосу – WiFi LoRa 32 бар ең үздік офф-грид LoRa жобасы!

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

13 миль (21 км) қашықтықтан құрылғыны қосу – WiFi LoRa 32 бар ең үздік офф-грид LoRa жобасы!

Алыстағы коттеджіңізде су сорғысын қосу, бірнеше шақырым жерден қақпаны ашу немесе шеберханадағы жылытқышты іске қосу мүмкіндігін елестетіп көріңіз—мұның бәрі Wi-Fi қосылымынсыз, ұялы байланыс жоспарынсыз немесе ай сайынғы төлемдерсіз. Бұл LoRa (Long Range) технологиясының күші. Бұл жобада біз Heltec Wi-Fi LoRa 32 модулін пайдаланып, қауіпсіз, желіден тыс қашықтан басқару жүйесін жасаймыз. Біз 13 миль (21 км) арақашықтыққа таңғаларлық қашықтыққа қауіпсіз сигнал жіберетін таратқышты жасаймыз, ол қабылдағышқа жетіп, сіз таңдаған кез келген құрылғыны басқару үшін релені іске қосады.   Бұл нұсқаулық сізді аппараттық құралдарды берік корпуста жинаудан бастап, кодты жүктеуге және нақты жағдайда қашықтық сынағын өткізуге дейінгі барлық процесті кезең-кезеңімен түсіндіреді. Бұл жай зертханалық тәжірибе емес; бұл әртүрлі қолдану аймақтарына арналған практикалық шешім. Қашықтағы ауыл шаруашылығы: Суару сорғыларын немесе жылыжай желдеткіштерін бір орталықтан қосыңыз. Мүлікке кіру: Жақындаған кезде гараж есігін немесе қашықтағы қақпаны ашып-жабыңыз. Желіден тыс автоматтандыру: Коттеджде, қайықта немесе автокүймеде жарықтандыруды, жылытқыштарды немесе басқа тұрмыстық құрылғыларды басқарыңыз. Қауіпсіздік жүйелері: Қашықтағы қауіпсіздік дабылын немесе бейнебақылау жүйесін іске қосыңыз немесе өшіріңіз. Жабайы табиғатты бақылау: Қашықтықтан камералық тұзақты немесе зиянсыз тойтару құрылғысын іске қосыңыз. Бұл жобаның негізгі бөлігі - Heltec Wi-Fi LoRa 32 V3 модулі, оны біз нағыз портативтілік үшін 3000 мАч батареясы бар кәсіби Meshnology N32 корпусына орналастырамыз. Біз реле мен дыбыстық сигнал құрылғысына арналған сымдарды зерттеп, маңызды код конфигурациясын түсіндіріп, басқа LoRa құрылғыларына кедергі келтірмейтін қауіпсіз байланысты қалай орнату керектігін көрсетеміз. Нәтиже - дәстүрлі Wi-Fi немесе Bluetooth шешімдері мүмкін емес қашықтықтарда толығымен тегін жұмыс істейтін, өзін-өзі қамтамасыз ететін, қуатты қашықтан басқару қосқышы. Аппараттық құралдар мен компоненттер Бұл жобаны жасау үшін сізге келесі компоненттер қажет болады. Негізгі элементтер жиі Meshnology компаниясының жинағында қолжетімді, бұл құрастыру процесін жеңілдетеді. 2x Heltec Wi-Fi LoRa 32 V3 модульдері: Кіріктірілген LoRa, Wi-Fi және Bluetooth бар негізгі микроконтроллер. (бейнеде 00:23) 2x Meshnology N32 корпустары: Heltec модуліне және үлкен батареяға арналған берік, кәсіби қоршау. (бейнеде 02:00) 2x 3000 мАч 3.7В LiPo батареялары: Желіден тыс жұмыс үшін ұзаққа созылатын, портативті қуат береді. (бейнеде 02:14) 1x Реле модулі: Жоғары қуатты жүктемені (мысалы, қозғалтқыш, шам немесе сорғы) ауыстыру үшін 5В реле модулі. 1x Дыбыстық сигнал құрылғысы (Қосымша): Аудио кері байланыс үшін 5В белсенді дыбыстық сигнал құрылғысы, 2N2222 транзисторымен басқарылады. 1x 2N2222 транзисторы (Қосымша): Дыбыстық сигнал құрылғысын қауіпсіз басқару үшін қолданылатын NPN транзисторы. 1x 1кОм резистор (Қосымша): Транзистордың базасы үшін ток шектейтін резистор. 2x Жоғары күшейту антенналары: Тарату қашықтығын және қабылдағыш сезімталдығын барынша арттыру үшін. (бейнеде 04:35) Әртүрлі сымдар мен қосқыштар: Қажетті қосылымдарды жасау үшін. Heltec ESP32 платаларын орнату Бейнеде көрсетілгендей, осы жолды Arduino IDE баптауларына қосыңыз:https://resource.heltec.cn/download/package_heltec_esp32_index.json Қажетті кітапхана

Сіз Robojax_HeltecLoRa32 кітапханасын орнатуыңыз керек. Оны осы мақаланың астындағы сілтемеден жүктеп алыңыз.

Кез келген кодты жүктемес бұрын, осы ZIP кітапханасын Arduino IDE арқылы орнатыңыз.

Сым қосу нұсқаулығы

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

Таратқыш: Таратқыш Heltec модуліндегі кірістірілген пайдаланушы түймесін пайдаланады. Басқару сигналы үшін сыртқы сым қажет емес. Құрылғыны қосу алдында антеннаның жалғанғанына көз жеткізіңіз.

Қабылдағыш: Қабылдағыштың GPIO 4 істікшесі реле немесе дыбыстық сигналды басқару үшін қолданылады. Сым қосу төменде көрсетілген. Реле ESP32-ден оқшауланғанын ескеріңіз, сондықтан реленің жүктеме тізбегі үшін бөлек қуат көзі қажет болады.

Реле қосылымы:

  • Heltec модулінің 3.3V істікшесін реле модулінің VCC істікшесіне қосыңыз (немесе тұрақты 5V қажет болса, күшейткіш түрлендіргіштің оң кірісіне).
  • Heltec модулінің GND істікшесін реле модулінің GND істікшесіне қосыңыз.
  • Heltec модулінің GPIO 4 істікшесін реле модулінің IN (сигнал) істікшесіне қосыңыз. (бейнеде 14:54)

Дыбыстық сигнал қосылымы (транзистормен): ESP32-нің GPIO істікшелері дыбыстық сигналды тікелей басқару үшін жеткілікті ток бере алмайды. Транзистор микроконтроллерді қорғау үшін қосқыш ретінде әрекет етеді. (бейнеде 16:47)

  • 3.3V істікшесін дыбыстық сигналдың оң (+) терминалына қосыңыз.
  • Дыбыстық сигналдың теріс (-) терминалын 2N2222 транзисторының коллекторына қосыңыз.
  • Транзистордың эмиттерін GND істікшесіне қосыңыз.
  • Транзистордың базасын 1kΩ резистордың бір ұшына қосыңыз.
  • Резистордың екінші ұшын GPIO 4 істікшесіне қосыңыз.
Heltec_Wifi_LoRA_32_wiring_uzzer
Heltec_Wifi_LoRA_32_wiring_uzzer
641_Heltec_Wifi_LoRA_Rotary_Encoder_wiring
641_Heltec_Wifi_LoRA_Rotary_Encoder_wiring
617_WiFi_LoRa32_Relay_wiring_boost
617_WiFi_LoRa32_Relay_wiring_boost

Кодты түсіндіру

Бұл жобаның коды Robojax Heltec LoRa 32 кітапханасында берілген. Arduino IDE-ге осы кітапхананы және қажетті платаны қолдау пакеттерін орнату қажет. Орнату процесі бейнеде егжей-тегжейлі көрсетілген. Кітапханалар орнатылғаннан кейін мысал эскиздерін ашуға болады: таратқыш үшін Relay_Secure_TX_Sample және қабылдағыш үшін Relay_Secure_RX. (бейнеде 26:12)

Таратқыш пен қабылдағыш кодтарының жоғарғы жағында дұрыс байланысты қамтамасыз ету үшін орнатуыңыз керек бірнеше пайдаланушы конфигурациялайтын айнымалылар бар. Бұл айнымалылар жобаны сіздің нақты қондырғыңыз үшін жұмыс істеуінің кілті болып табылады.

// ПАЙДАЛАНУШЫ КОНФИГУРАЦИЯЛАНАТЫН АЙНЫМАЛЫЛАР // ============================ bool debug = false; // Serial Monitor шығысын қосу үшін true мәнін орнатыңыз // Таратқыш параметрлері const int userPin = 0; // Пайдаланушы түймесі үшін GPIO пині String relayOnText = "Реле ҚОСУЛЫ"; // Дисплейде көрсетілетін мәтін String relayOffText = "Реле ӨШІРУЛІ"; // Дисплейде көрсетілетін мәтін // Қабылдағыш параметрлері const int relayPin = 4; // Релеге немесе транзисторға қосылған GPIO пині int relayOnDuration = 3000; // "Sample" коды үшін реленің қосулы тұру уақыты (миллисекунд) // Қауіпсіздік параметрлері (ЕКІ ҚҰРЫЛҒЫДА ДА БІРДЕЙ БОЛУЫ КЕРЕК) String securityKey = "your_secret_key"; // Қауіпсіз байланыс үшін ортақ құпия сөз String secret = "your_secret"; // Қосымша қауіпсіздік үшін тағы бір құпия // LoRa параметрлері (ЕКІ ҚҰРЫЛҒЫДА ДА БІРДЕЙ БОЛУЫ КЕРЕК) #define LORA_FREQUENCY 915.0 // МГц жиілігі (мысалы, Еуропа үшін 868.0, АҚШ үшін 915.0) int power = 20; // Тарату қуаты дБм (2-ден 20-ға дейін) // ============================

Міне, осы параметрлердің әрқайсысы не істейді:

  • debug: true мәніне орнатылғанда, код Arduino IDE Serial Monitor-ге егжей-тегжейлі ақпаратты басып шығарады. Бұл ақаулықтарды жою үшін пайдалы, бірақ қуатты үнемдеу үшін қалыпты жұмыс кезінде false мәніне орнатылуы керек.
  • userPin (Таратқыш): Бұл сигнал жіберу үшін басатын түймеге қосылған GPIO пинін анықтайды. Әдепкі мән 0, бұл Heltec модуліндегі кірістірілген пайдаланушы түймесі.
  • relayPin (Қабылдағыш): Бұл релеңізді немесе транзисторыңызды басқару үшін сигнал шығаратын GPIO пині. Әдепкі мән 4. Егер релеңізді басқа пинге қоссаңыз, бұл мәнді өзгертуіңіз керек.
  • relayOnDuration (Қабылдағыш): Бұл "Sample" кодында қолданылады. Ол сигнал қабылданғаннан кейін реленің қосулы тұру ұзақтығын анықтайды. Мысалы, оны 1000 мәніне орнату релені 1 секунд қосулы ұстайды. Бұл есік ашу сияқты "қысқа мерзімді" әрекет үшін пайдалы. "Toggle" мысал коды мұны елемейді және әр басу сайын күйді ауыстырады.
  • securityKey және secret: Бұлар LoRa байланысы үшін парольдеріңіз. Олар таратқышта да, қабылдағышта да дәл бірдей болуы керек. Бұл рұқсатсыз пайдаланушылардың құрылғыларыңызды басқаруына жол бермейді. (бейнеде 27:19)
  • LORA_FREQUENCY: Бұл радио жиілік диапазонын орнатады. Ол екі құрылғыда да бірдей және сіздің еліңізде заңды болуы керек (мысалы, Еуропада 868 МГц, Солтүстік Америкада 915 МГц). (бейнеде 27:36)
  • power: Бұл тарату қуатын дБм-де орнатады. 2 мәні сынақ үшін төмен қуат, ал 20 ең ұзақ қашықтық үшін максималды мән. (бейнеде 27:43)

Таратқыш кодының үш негізгі түрі бар: Sample, Toggle және Momentary. "Sample" коды релені белгіленген уақытқа қосады. "Toggle" коды әр түйме басу сайын реленің күйін (қосулы/өшірулі) ауыстырады. "Momentary" коды релені тек түйме басылып тұрған кезде қосады. Қолданбаңызға ең қолайлысын таңдаңыз.

Тірі Жоба және Демонстрация

Бейнеде автор жобаны екі кезеңде көрсетеді. Біріншіден, зертханалық сынақ жүйенің моторды басқаратын реле және транзистормен жұмыс істейтін дыбыстық сигналмен жұмыс істейтінін көрсетеді. Реле мен дыбыстық сигнал таратқыш тақтасынан сәтті қосылып-өшіріледі, бұл негізгі функционалдық пен қауіпсіз байланыс сілтемесін дәлелдейді.

Екінші, әсерлі кезең — нақты әлемдегі қашықтық сынағы. Таратқыш көл жағасындағы штативке қойылды, ал қабылдағыш түзу көрініспен 13.04 миль (20.98 км) қашықтықтағы нүктеге апарылды. Бейнеде қабылдағыштың алыс жерден таратылатын кернеу мәнін көрсететіні және 21 км қашықтықта деректерді сәтті қабылдайтыны көрсетілген. Бұл жобаның ешқандай инфрақұрылымсыз, тегін, үлкен қашықтықтарда құрылғыларды басқару мүмкіндігін растайды.

Тараулар

  • [00:00] Off-Grid LoRa басқаруына кіріспе
  • [01:01] Жобаға шолу және серияға кіріспе
  • [01:57] Құрылғыны қаптамадан шығару және тексеру
  • [04:56] Heltec модулі мен антеннаны түсіну
  • [07:57] Meshnology N32 корпусын құрастыру
  • [13:56] Реле мен дыбыстық сигнал тізбектерін қосу
  • [19:41] Соңғы құрастыру және корпусты өзгерту
  • [21:51] Қажетті бағдарламалық қамтамасыз ету мен кітапханаларды орнату
  • [26:12] Таратқыш кодын конфигурациялау
  • [28:46] Қабылдағыш кодын конфигурациялау
  • [30:02] Тірі демонстрация: Реле мен дыбыстық сигналды басқару
  • [33:06] Нақты әлемдегі 13 миль қашықтық сынағы және қорытынды

Суреттер

617_WiFi_LoRa32_Relay_wiring_boost
617_WiFi_LoRa32_Relay_wiring_boost
641_Heltec_Wifi_LoRA_Rotary_Encoder_wiring
641_Heltec_Wifi_LoRA_Rotary_Encoder_wiring
Heltec_Wifi_LoRA_32_wiring_uzzer
Heltec_Wifi_LoRA_32_wiring_uzzer
Heltec_WiFi_LoRa_32_V3_N35-1-package
Heltec_WiFi_LoRa_32_V3_N35-1-package
Код жоқ.

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

Файлдар📁

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