Orodha ya maudhui:

ESP-SASA Jotoridi ya Nyumbani Esp8266 Raspberry Pi MQTT: 4 Hatua
ESP-SASA Jotoridi ya Nyumbani Esp8266 Raspberry Pi MQTT: 4 Hatua

Video: ESP-SASA Jotoridi ya Nyumbani Esp8266 Raspberry Pi MQTT: 4 Hatua

Video: ESP-SASA Jotoridi ya Nyumbani Esp8266 Raspberry Pi MQTT: 4 Hatua
Video: сцп сосать 2024, Novemba
Anonim
ESP-SASA Jotoridi ya Nyumbani Esp8266 Raspberry Pi MQTT
ESP-SASA Jotoridi ya Nyumbani Esp8266 Raspberry Pi MQTT

Katika hii Inayoweza kufundishwa ninakuonyesha jinsi nilivyotumia ESP-SASA katika mitambo yangu ya nyumbani. Katika mpango unaweza kuona mtiririko wa mawasiliano

Ninakuonyesha:

  • jinsi mtumaji anavyofanya kazi
  • jinsi mpokeaji anavyofanya kazi
  • jinsi mawasiliano ya serial na Raspberry Pi inavyofanya kazi

Sionyeshi jinsi MQTT na mitambo yangu ya nyumbani hufanya kazi, unaweza kupata maagizo mengine mazuri kwa hiyo.

Mikopo: Hii inayoweza kufundishwa iliongozwa na:

Video # 172 na Andreas Spiess

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

Hatua ya 1: Kuhifadhi nakala kupitia Via WiFi na MQTT

Kuhifadhi nakala kupitia Via WiFi na MQTT
Kuhifadhi nakala kupitia Via WiFi na MQTT

Niligundua kuwa ESP-SASA ni haraka sana na inaaminika kabisa, lakini wakati mwingine inashindwa. Katika programu yangu niliongeza nakala rudufu kupitia uunganisho wa kawaida wa WiFi na MQTT.

Hatua ya 2: Kijijini / mtumaji

Kijijini / mtumaji
Kijijini / mtumaji
Kijijini / mtumaji
Kijijini / mtumaji
Kijijini / mtumaji
Kijijini / mtumaji
Kijijini / mtumaji
Kijijini / mtumaji

Katika mpango wa kwanza unaona jinsi programu ya mtumaji inavyofanya kazi:

  1. Esp8266 huanza kutoka nguvu juu au kutoka upya
  2. ESP-SASA imeanzishwa
  3. Moduli hutuma ESP-SASA kwa muda uliowekwa
  4. Moduli huangalia ikiwa ujumbe wa ESP-SASA ulipokelewa na mpokeaji katika kazi ya kurudi-nyuma.

    1. Ikiwa ujumbe wa ESP-SASA ulipokelewa, moduli huenda katika usingizi mzito wa nguvu ndogo
    2. Ikiwa ujumbe wa ESP-SASA haukupokelewa, moduli huanza unganisho la WiFi na unganisho la MQTT kama unganisho la kuhifadhi nakala.

Mpango wa mtumaji uko katika Github yangu (Master_sender.ino). Programu hizo hutuma mada na ujumbe wa kiotomatiki wa nyumbani wa MQTT katika ujumbe mmoja wa pamoja wa ESP-SASA, pamoja na ishara ya '&' kwa mgawanyiko rahisi kwa mpokeaji.

Nilifanya mbali / watumaji wawili tofauti:

Sender 1: Esp8266 iko kwenye usingizi mzito na imeamilishwa na kuweka upya. Kilichoongozwa kwenye kitufe kinawaka na hupunguza wakati moduli imekamilika. Ikiwa voltage ya betri iko chini, mwangaza unaongozwa. Ikiwa ESP-SASA ilishindwa, blinks zilizoongozwa kabla ya kubadilika kwa unganisho la WiFi / MQTT. Esp8266 inaendeshwa kutoka kwa betri ya LiPo na mdhibiti wa voltage ya HT7333 hadi 3.3V

Sender 2: Esp8266 imezimwa na inaendeshwa kwa kubonyeza kitufe. Kawaida unganisho la ESP-SASA hufanywa baada ya kitufe cha 'kubofya'. Esp8266 inaendeshwa moja kwa moja kutoka kwa betri ya LiPo. Sijui ikiwa esp8266 inaharibiwa na voltage ya juu ya betri iliyojaa (hadi 4.2 V) wakati inatumiwa kwa ms 100 tu. Ni juu zaidi basi vielelezo (3.0 - 3.6V).

Kumbuka: ikiwa nguvu ya betri iko chini, ESP-SASA inashindwa.

Hatua ya 3: Mpokeaji - Vifaa (esp8266 na Raspberry Pi)

Mpokeaji - Vifaa (esp8266 na Raspberry Pi)
Mpokeaji - Vifaa (esp8266 na Raspberry Pi)
Mpokeaji - Vifaa (esp8266 na Raspberry Pi)
Mpokeaji - Vifaa (esp8266 na Raspberry Pi)
Mpokeaji - Vifaa (esp8266 na Raspberry Pi)
Mpokeaji - Vifaa (esp8266 na Raspberry Pi)

Utoaji wa mpokeaji umegawanyika katika sehemu mbili:

  1. Vifaa
  2. Programu

Vifaa

Kupokea esp-01 imeunganishwa na Raspberry yangu Pi Zero ambayo inaendesha mfumo wangu wa kiotomatiki wa nyumbani (Openhab2) na Node Red.

Katika skimu, unganisho rahisi linaonyeshwa:

  • RX ya esp-01 hadi TX ya RasPi
  • TX ya esp-01 hadi RX ya RasPi
  • GND kwa GND
  • Esp-01 VCC inaendeshwa na pini ya 3.3V ya Raspi
  • Kwenye esp-01 zote RST na CH_PD vimevutwa juu.

Nilitengeneza kiunganishi cha kiolesura ili kuipandisha kwa urahisi

Katika picha moja unaweza kuona miunganisho yangu ya waya na Raspberry yangu Pi 3 (ambayo ina pinout sawa, lakini nilitumia pini nyingine 3.3V kuungana na CH_PD).

Esp-01 ilipangiliwa kama inavyoonyeshwa kwenye nyingine inayoweza kufundishwa (angalia hatua ya 3).

Hatua ya 4: Mpokeaji - Programu (Serial, Node Red, MQTT)

Mpokeaji - Programu (Serial, Node Red, MQTT)
Mpokeaji - Programu (Serial, Node Red, MQTT)
Mpokeaji - Programu (Serial, Node Red, MQTT)
Mpokeaji - Programu (Serial, Node Red, MQTT)
Mpokeaji - Programu (Serial, Node Red, MQTT)
Mpokeaji - Programu (Serial, Node Red, MQTT)

Programu juu ya esp8266

Mpango wa mpokeaji wa esp-01 uko kwenye Github yangu (Master_sender.ino). Programu ni rahisi sana, inachapisha tu ujumbe uliopokelewa wa ESP-SASA kwenye bandari ya Serial kwa Raspberry Pi.

Bandari ya serial

Kwenye Raspberry Pi, lazima uamilishe Port Port (kwenye raspbian, fanya 'sudo raspi-config') kwa mawasiliano ya kawaida ya serial.

Jina la bandari ya serial ni:

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

Unaweza kuangalia bandari ya serial kwa kuendesha 'dmesg | grep tty 'au' ls / dev '

Node Nyekundu

Katika Node Red, chagua Node ya kuingiza serial na usanidi bandari ya serial (angalia picha zilizoambatishwa). Kumbuka baudrate ya unganisho la serial, hii lazima ilingane na baudrate kama ilivyowekwa kwenye esp8266.

Pato la node ya serial hubadilishwa na node ya kazi ambayo hugawanya ujumbe kwenye ishara ya '&' na kuweka msg.topic na msg.payload. Pato la kazi linaongozwa kwenye node ya pq ya mqtt ambayo hutuma ujumbe kwa seva ya MQTT. Kumbuka uwanja wa mada wa node ya mqtt hauna chochote, kwa sababu mada imewekwa kwenye ujumbe.

Ilipendekeza: