Kazalo:

Kako uporabljati MQTT z Raspberry Pi in ESP8266/sonoff: 4 koraki
Kako uporabljati MQTT z Raspberry Pi in ESP8266/sonoff: 4 koraki

Video: Kako uporabljati MQTT z Raspberry Pi in ESP8266/sonoff: 4 koraki

Video: Kako uporabljati MQTT z Raspberry Pi in ESP8266/sonoff: 4 koraki
Video: Умное окно - автоматизация проветривания комнаты, интеграция в Home Assistant 2024, Junij
Anonim
Kako uporabljati MQTT z Raspberry Pi in ESP8266/sonoff
Kako uporabljati MQTT z Raspberry Pi in ESP8266/sonoff

Pozdravljeni vsi!

Danes vam bom pokazal, kako konfigurirati relejno stikalo wifi na osnovi maline pi in ESP8266 za nadzor vaših gospodinjskih aparatov od koder koli po svetu.

Do konca tega navodila, če ste natančno upoštevali moja navodila, boste lahko upravljali katero koli domačo napravo iz terminala Raspberry Pi ali z uporabo lupine python.

Zato se pripravite na izdelavo lastnega krmilnika Sonoff Wifi Device na osnovi MQTT in Rpi!

Preden začnem s tem poučevanjem, bi rad omenil nekaj zelo pomembnih stvari,

  1. Stikalo releja sonoff wifi ima svojo krmilno programsko opremo. ko ga znova programirate, se izvirna programska oprema trajno izbriše. Zato se prepričajte o tem.
  2. Stikalo releja sonoff wifi se napaja neposredno prek 230 V izmenične napetosti, zato, če niste strokovnjak za ravnanje s tako visokimi napetostmi, poiščite pomoč svojih staršev ali strokovne osebe.
  3. Stikalo releja wifi sonoff preprosto temelji na naboru čipov wifi esp8266-01, ki je 3,3 V čip, če po nesreči uporabite 5 V na njegov +V pin, ga boste zagotovo poškodovali.
  4. Tukaj za to navodilo sem menil, da imate nastavljeno malino pi in wifi z naslovom IP za izvajanje ukazov mosquitto in MQTT v terminalu

** Če ste pripravljeni na vse zgornje 4 korake, ste pripravljeni !!

1. korak: Uvod + potrebščine

Uvod + potrebščine
Uvod + potrebščine
Uvod + potrebščine
Uvod + potrebščine

Zdravo družba! danes bomo zgradili zelo zanimiv projekt. V tem projektu bomo z uporabo posrednika MQTT nadzirali naše domače naprave, na primer AC svetilko.

Opomba: To je projekt IOT, zato lahko upravljate svojo AC napravo od koder koli po svetu

MQTT (Massage Que Telemetry Transport) je preprost protokol prenosa koristnega tovora, ki se uporablja v resnici spletnih projektov. Facebook Messenger uporablja tudi protokol MQTT. dovolj uvoda, začnimo s projektom.

Kaj potrebujemo za ta projekt?

1) Aktivna povezava Wifi (po možnosti usmerjevalnik)

2) Model Raspberry Pi3, na katerem je omogočen wifi.

3) Stikalo Sonoff Wifi IOT z 10A 220V

4) Nekaj povezovalnih žic

5) Mostični kabli

6) Pretvornik CP2102 USB v TTL

  • Opomba: za ta projekt morate imeti nastavljeno malinovo pi s povezavo monitorja s tipkovnico ali v brezglavnem načinu z vašim prenosnikom (povezava VNC)
  • če nimate nastavljenega malinskega pi z monitorjem ali brezglavim načinom, morate slediti moji drugi vadnici, kako povezati malinov pi v načinu brez glave.

2. korak: Nastavitev Raspberry Pi

Nastavitev Raspberry Pi
Nastavitev Raspberry Pi

V tem koraku bomo za projekt nastavili naš malinov pi.

v tej vadnici uporabljamo sonoff ESP8266 kot odjemalca in malinovo pi kot posrednika proti komarjem.

  1. odprite svoj terminal maline pi in vnesite

    1. sudo apt-get posodobitev
    2. sudo apt-get upgrade Ko je vaš malina Pi posodobljena z najnovejšo vdelano programsko opremo, se lahko lotite katerega koli projekta na svojem pi
  2. Zdaj vnesite naslednje ukaze za namestitev Mosquitto

    1. wget
    2. sudo apt-key add mosquitto-repo.gpg.key
    3. cd /etc/apt/sources.list.d/
    4. sudo wget
    5. sudo -i
    6. apt-get posodobitev
    7. apt-get install mosquitto
    8. apt-get install mosquitto-clients
  3. Ko uspešno sledite vsem zgornjim navodilom, imate stroj pripravljen s posrednikom proti komarjem in pripravljeni ste na naslednji korak.
  4. V svoj terminal znova vnesite naslednje ukaze:
    1. sudo pip namestite paho-mqtt
    2. sudo pip3 namestite paho-mqtt
  5. Zdaj, da preverite, ali je vaš odjemalec komarjev uspešno nameščen ali ne odpre lupine python2 ali python3, in vnesite naslednji ukaz

    1. uvoz paho.mqtt.client
    2. to ne bi smelo nič vrniti. če vrne katero koli vrstico ali napako, ponovno preverite zgornje korake in še enkrat natančno sledite korakom.
  6. Zdaj je vaš del Raspberry Pi že skoraj končan in dobro je, da se lotite dela Sonoff in Arduino

3. korak: Nastavitev naprave Sonoff Esp8266 za MQTT

Nastavitev naprave Sonoff Esp8266 za MQTT
Nastavitev naprave Sonoff Esp8266 za MQTT
Nastavitev naprave Sonoff Esp8266 za MQTT
Nastavitev naprave Sonoff Esp8266 za MQTT
Nastavitev naprave Sonoff Esp8266 za MQTT
Nastavitev naprave Sonoff Esp8266 za MQTT

Zdaj bomo v tem koraku nastavili odjemalsko napravo, ki je Sonoff.

sonoff je naprava za domačo avtomatizacijo wifi, ki ima vnaprej nameščeno vdelano programsko opremo za domačo avtomatizacijo, ki temelji na wifi, in aplikacijo android/ios za nadzor naprav prek wifi.

Zdaj je tukaj preprost kramp, da ga reprogramiramo tako, kot želimo. ko enkrat znova programirate Arduino ide, boste izgubili prvotno vdelano programsko opremo, ki je vnaprej nameščena na sonoff.

  1. najprej previdno odprite napravo sonoff in bodite pozorni na izpiske, prikazane na sliki NEVARNOST: Naprava sonoff deluje na 220 V neposredni izmenični tok, preden jo odprete ali programirate, jo morate izključiti.
  2. Zdaj si oglejte spodnjo sliko za njen pinout, na spodnji strani tiskanega vezja je čip esp8266, ki se vam zdi podoben vašemu modulu esp8266-01.
  3. Zdaj odprite Arduino IDE in dodajte potrebne knjižnice Zip. Knjižnica PUBSUB_client
  4. Prav tako morate v svoj Arduino ide dodati ploščo esp8266. če še ni dodano, sledite korakom

    1. Odprite svoj Arduino IDE in kliknite »Datoteka -> Nastavitve«.
    2. "https://arduino.esp8266.com/stable/package_esp8266com_index.json"
    3. V "URL -ji upravitelja dodatnih kartic" dodajte to zgornjo povezavo in kliknite "V redu"
    4. Pojdite na "Orodja -> Plošča -> Upravitelj plošč", vnesite "ESP8266" in ga namestite.
    5. Ponovno pojdite na "Orodja -> Plošča" in izberite "Splošni modul ESP8266".
    6. Zdaj ste ploščo uspešno dodali v svoj Arduino IDE.
  5. Zdaj morate spajati en ženski konektor na napravo sonoff, kot je prikazano na sliki.
  6. Zdaj vzemite USB na ploščo TTL CP2102 ali FTDI in vzpostavite naslednjo povezavo, kot je prikazano na zgornji sliki.

    1. RX od FTDI do TX od Sonoffa
    2. TX od FTDI do RX od Sonoffa
    3. GND od FTDI do GND od Sonoff
    4. 3.3V FTDI do 3.3V Sonoff
  7. OPOMBA: Poskrbite, da napajalne plošče ne napajate s 5V. združljiv je z 3.3V, če priključite 5V na napajalni pin, lahko napravo sonoff opečete. zato raje uporabite samo napajanje 3,3 V na plošči FTDI.
  8. zdaj vzpostavite povezavo, kot je prikazano na sliki.
  9. Enega ste naredili z zgornjimi koraki. povežite svoj FTDI/USB s ploščo TTL s prenosnikom/računalnikom in odprite Arduino IDE.
  10. Kopirajte kodo.

11. Zdaj v meniju Orodja izberite ustrezna vrata COM in izberite napravo kot generično napravo ESP8266. Zdaj pritisnite gumb za nalaganje. Nalaganje kode v čip esp8266 naprave sonoff bo trajalo približno minuto ali manj.

12. Zdaj ste pripravljeni na programiranje sonoff in Arduino. in zdaj bi morali videti, da LED dioda na plošči sonoff utripa // kot smo napisali 5 -krat na začetku.

13. Dobro je, da greste na naslednji korak.

4. korak: Upravljajte svoj Sonoff s spleta

Upravljajte svoj Sonoff s spleta
Upravljajte svoj Sonoff s spleta

Zdaj je to zadnji korak našega projekta.

  1. zdaj odprite povezavo z oddaljenim namizjem VNC maline pi tako, da vnesete naslov IP za svoj Pi
  2. zdaj odprite terminal in začnite tipkati naslednje ukaze
  3. tukaj je led tema in "0" je koristna obremenitev
  4. spremenite naslov IP v svojem IP naslovu Rpi
  5. Namesto "0" napišite "1", ki bo vklopil vaš rele na stikalu sonoff wifi.

mosquitto_pub -h 192.168.0.104 -t led -m "0"

Zgornje navodilo izklopi vaš rele.

mosquitto_pub -h 192.168.0.104 -t led -m "1"

To navodilo bo vklopilo vaš rele.

Zdaj ste končali z nadzorom vašega sonoffa s terminala Rpi.

lahko preverite tako, da stikalo sonoff wifi priključite na drugo omrežje wifi in malino pi na drugo povezavo wifi. Morali bi upravljati rele z vsega sveta.

Zdaj, če želite samodejno preizkusiti VKLOP/IZKLOP vašega sonoffa, sem napisal majhen skript python

ki najprej pošlje "1" in po 6 sekundah pošlje "0" in ta postopek se ponovi v zanki.

uvoz paho.mqtt.publish kot objava čas uvoza

Čeprav je res:

print ("Sending 1…") published.single ("ledStatus", "1", hostname = "IP vašega posrednika") time.sleep (6) print ("Sending 0…") published.single ("ledStatus", "0", hostname = "IP vašega posrednika") time.sleep (3)

Zgornja koda preprosto vklopi in izklopi rele na stikalu releja sonoff wifi.

ne pozabite zamenjati naslova IP vašega RaspberryPi v zgornji kodi python. Zdaj zaženite ta skript s klikom na možnost run module in videli boste v lupini

pošiljanje "1"..

pošiljanje "0"..

pošiljanje "1".. nekaj takega.

To je to za ta Instructable. se vidimo naslednjič z novim.

Adijo !!!!

in ne pozabite slediti in deliti tega navodila ter ga preizkusiti sami!

kakršni koli dvomi v komentarju so dobrodošli!

Priporočena: