Мазмұны:

ESP-NOW үй автоматтандыруы Esp8266 Raspberry Pi MQTT: 4 қадам
ESP-NOW үй автоматтандыруы Esp8266 Raspberry Pi MQTT: 4 қадам

Бейне: ESP-NOW үй автоматтандыруы Esp8266 Raspberry Pi MQTT: 4 қадам

Бейне: ESP-NOW үй автоматтандыруы Esp8266 Raspberry Pi MQTT: 4 қадам
Бейне: Как запрограммировать модуль реле Wi-Fi ESP8266 ESP-01 2024, Қараша
Anonim
ESP-NOW үй автоматтандыруы Esp8266 Raspberry Pi MQTT
ESP-NOW үй автоматтандыруы Esp8266 Raspberry Pi MQTT

Бұл нұсқаулықта мен сізге үйде автоматтандыруда ESP-NOW қалай қолданғанымды көрсетемін. Схемада байланыс ағындарын көруге болады

Мен сізге көрсетемін:

  • жіберуші қалай жұмыс істейді
  • қабылдағыш қалай жұмыс істейді
  • Raspberry Pi -мен сериялық байланыс қалай жұмыс істейді

Мен MQTT мен үйдегі автоматтандыру қалай жұмыс жасайтынын көрсетпеймін, сіз бұл үшін басқа жақсы нұсқауларды таба аласыз.

Несие: Бұл нұсқаулық шабыттандырылды:

#172 бейнебаяны Андреас Шпис

www.esploradores.com/practica-6-conexion-es…

1-қадам: WiFi және MQTT арқылы сақтық көшірме жасау

WiFi және MQTT арқылы сақтық көшірме жасау
WiFi және MQTT арқылы сақтық көшірме жасау

Мен ESP-NOW өте жылдам және сенімді екенін білдім, бірақ кейде сәтсіздікке ұшырайды. Менің бағдарламамда қалыпты WiFi мен MQTT қосылымы арқылы резервтік көшірме қостым.

2 -қадам: Қашықтан/жіберуші

Қашықтан/жіберуші
Қашықтан/жіберуші
Қашықтан/жіберуші
Қашықтан/жіберуші
Қашықтан/жіберуші
Қашықтан/жіберуші
Қашықтан/жіберуші
Қашықтан/жіберуші

Бірінші схемада сіз жіберушінің бағдарламасы қалай жұмыс істейтінін көресіз:

  1. Esp8266 қуатты қосудан немесе қалпына келтіруден басталады
  2. ESP-NOW инициализацияланған
  3. Модуль ESP-NOW-ды белгілі бір уақытқа жібереді
  4. Модуль ESP-NOW хабарын ресивер кері шақыру функциясында алғанын тексереді.

    1. Егер ESP-NOW хабарламасы қабылданса, модуль төмен қуатты терең ұйқыда болады
    2. Егер ESP-NOW хабары алынбаса, модуль WiFi қосылымын және резервтік байланыс ретінде MQTT қосылымын бастайды.

Жіберушіге арналған бағдарлама менің Github -да (Master_sender.ino) орналасқан. Бағдарламалар MQTT үй автоматтандыруға арналған тақырыпты да, хабарды да қабылдағышқа оңай бөліну үшін '&' белгісінде біріктірілген бір ESP-NOW хабарламасында жібереді.

Мен екі түрлі қашықтан басқару/жіберушілер жасадым:

Жіберуші 1: esp8266 қатты ұйқыда және оны қалпына келтіру арқылы іске қосылады. Түймешегі светодиод жанып тұрады және модуль аяқталғанда күңгірттенеді. Егер батареяның кернеуі төмен болса, светодиод жыпылықтайды. Егер ESP-NOW сәтсіз болса, WiFi/MQTT қосылымдарына ауыспас бұрын светодиод жыпылықтайды. Esp8266 HT7333 кернеу реттегіші бар LiPo батареясынан 3,3 В дейін қуатталады

2 -жіберуші: esp8266 өшірулі және түймені басу арқылы қуат алады. Әдетте ESP-NOW байланысы батырманы басқаннан кейін жасалады. Esp8266 тікелей LiPo батареясынан жұмыс істейді. Бірнеше 100 мс қосылғанда, esp8266 толық зарядталған батареяның жоғары кернеуінен (4,2 В дейін) зақымдалатынын білмеймін. Ол техникалық сипаттамалардан жоғары (3.0 - 3.6V).

Ескертпе: егер батарея қуаты аз болса, ESP-NOW істен шығады.

3 -қадам: Қабылдағыш - аппараттық құрал (esp8266 және Raspberry Pi)

Қабылдағыш - аппараттық құрал (esp8266 және Raspberry Pi)
Қабылдағыш - аппараттық құрал (esp8266 және Raspberry Pi)
Қабылдағыш - аппараттық құрал (esp8266 және Raspberry Pi)
Қабылдағыш - аппараттық құрал (esp8266 және Raspberry Pi)
Қабылдағыш - аппараттық құрал (esp8266 және Raspberry Pi)
Қабылдағыш - аппараттық құрал (esp8266 және Raspberry Pi)

Қабылдағыштың түсуі екіге бөлінеді:

  1. Аппараттық құрал
  2. Бағдарламалық қамтамасыз ету

Аппараттық құрал

Қабылдау esp-01 үйдегі автоматтандыру жүйесін (Openhab2) және Node Red басқаратын Raspberry Pi Zero-ға қосылған.

Схемада қарапайым қосылыстар көрсетілген:

  • RasPi-ден TX-ке дейінгі esp-01 RX
  • RasPi-ден RX-ке esp-01 TX
  • GND - GND
  • Esp-01 VCC Raspi-дің 3.3В істікшесімен жұмыс істейді
  • Esp-01-де RST және CH_PD екеуі де жоғары тартылады.

Мен оны оңай орнату үшін интерфейс қосқышы жасадым

Бір суретте сіз менің Raspberry Pi 3 -ке сымды қосылымдарымды көре аласыз (оларда дәл осындай түйісу бар, бірақ мен CH_PD -ге қосылу үшін басқа 3.3В істікшені қолдандым).

Esp-01 менің басқа нұсқаулықта көрсетілгендей бағдарламаланған (3-қадамды қараңыз).

4 -қадам: Қабылдағыш - бағдарламалық қамтамасыз ету (сериялық, қызыл түйін, MQTT)

Қабылдағыш - бағдарламалық қамтамасыз ету (сериялық, қызыл түйін, MQTT)
Қабылдағыш - бағдарламалық қамтамасыз ету (сериялық, қызыл түйін, MQTT)
Қабылдағыш - бағдарламалық қамтамасыз ету (сериялық, қызыл түйін, MQTT)
Қабылдағыш - бағдарламалық қамтамасыз ету (сериялық, қызыл түйін, MQTT)
Қабылдағыш - бағдарламалық қамтамасыз ету (сериялық, қызыл түйін, MQTT)
Қабылдағыш - бағдарламалық қамтамасыз ету (сериялық, қызыл түйін, MQTT)

Esp8266 бойынша бағдарлама

Esp-01 қабылдағышқа арналған бағдарлама менің Github-да (Master_sender.ino) орналасқан. Бағдарлама өте қарапайым, ол тек ESP-NOW хабарламасын сериялық портта Raspberry Pi-ге басып шығарады.

Сериялық порт

Raspberry Pi-де қалыпты сериялық байланыс үшін сериялық портты қосу қажет (raspbian тілінде 'sudo raspi-config' орындау керек).

Сериялық порттың атауы:

  • Raspberry Pi Zero: /dev /ttyAMA0
  • Raspberry Pi 3: /dev /ttyS0

Сериялық портты 'dmesg | іске қосу арқылы тексеруге болады grep tty 'немесе' ls /dev '

Қызыл түйін

Қызыл түйінде Node сериялық кірісін таңдаңыз және сериялық портты орнатыңыз (қоса берілген суреттерді қараңыз). Сериялық қосылымның жылдамдығына назар аударыңыз, бұл esp8266 бағдарламасында бағдарламаланған жылдамдыққа сәйкес келуі керек.

Сериялық түйіннің шығысы хабарды '&' белгісіне бөлетін және msg.topic және msg.payload жүктейтін функционалды түйін арқылы өзгертіледі. Функцияның шығысы MQTT серверіне хабарлама жіберетін mqtt шығыс түйініне бағытталады. Mqtt түйінінің тақырып өрісі бос екенін ескеріңіз, себебі тақырып хабарламада орнатылған.

Ұсынылған: