Indholdsfortegnelse:
- Trin 1: Introduktion + forbrugsvarer
- Trin 2: Opsætning af Raspberry Pi
- Trin 3: Opsætning af Sonoff Esp8266 -enheden til MQTT
- Trin 4: Styr din Sonoff From Web
Video: Sådan bruges MQTT med Raspberry Pi og ESP8266/sonoff: 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Hej alle!
I dag vil jeg vise dig, hvordan du konfigurerer en hindbær pi og ESP8266 baseret sonoff wifi relay switch til at styre dine husholdningsapparater fra hvor som helst i verden.
Ved slutningen af denne instruks, hvis du nøje har fulgt min instruktion, vil du være i stand til at styre ethvert af dine husholdningsapparater fra Raspberry Pi's terminal eller ved hjælp af python -skal.
Så gør dig klar til at lave din egen MQTT- og Rpi -baserede Sonoff Wifi Device -controller!
Inden jeg starter denne instruktive vil jeg gerne nævne nogle meget vigtige ting,
- Sonoff wifi -relæafbryderen leveres med sin egen firmware til kontrol. Når du omprogrammerer det, slettes original firmware permanent. Så sørg for det.
- Sonoff wifi relæafbryderen er direkte drevet via 230V vekselstrøm, så hvis du ikke er ekspert i håndtering af sådanne høje spændinger, skal du tage hjælp af dine forældre eller ekspertperson.
- Sonoff wifi-relæafbryderen er simpelthen baseret på esp8266-01 wifi-chipsæt, som er en 3.3V-chip, hvis du ved et uheld anvender 5V til dens +V-pin, beskadiger du den helt sikkert.
- Her for denne instruerbare, har jeg overvejet, at du har din hindbær pi alle opsætninger og wifi aktiveret med IP-adresse til at køre myg- og MQTT-kommandoerne i Terminal
** Hvis du er klar med alle de ovenstående 4 trin, er du klar til at gå !!
Trin 1: Introduktion + forbrugsvarer
Hej gutter! i dag skal vi bygge et meget interessant projekt. Her i dette projekt skal vi styre vores hjemmeapparater såsom AC -lampe ved hjælp af MQTT -mægler.
Bemærk: Dette er et IOT -projekt, derfor kan du styre din vekselstrømsenhed fra hvor som helst i verden
MQTT (Massage Que Telemetry Transport) er en simpel nyttelastoverførselsprotokol, der bruges i en række webprojekter. Facebook messenger gør også brug af MQTT Protocol. nok af introduktion lader starte med Project.
Hvad har vi brug for til dette projekt?
1) Aktiv Wifi -forbindelse (helst router)
2) Raspberry Pi3 -model, som har wifi aktiveret på den.
3) Sonoff Wifi IOT switch med 10A 220V
4) Nogle forbindelsesledninger
5) Jumperkabler
6) CP2102 USB til TTL -konverter
- Bemærk: For dette projekt skal du have hindbær pi alt opsat med enten skærmtastaturforbindelse eller i hovedløs tilstand med din bærbare computer (VNC -forbindelse)
- Hvis du ikke har raspberry pi, der er konfigureret med skærm eller hovedløs tilstand, skal du følge min anden vejledning i, hvordan du tilslutter hindbær pi i hovedløs tilstand.
Trin 2: Opsætning af Raspberry Pi
I dette trin opretter vi vores hindbærpi til projektet.
i denne vejledning bruger vi sonoff ESP8266 som klient og hindbær pi som mygmægler.
-
åbn din hindbær pi terminal og skriv
- sudo apt-get opdatering
- sudo apt-get upgrade Når din hindbær Pi er opdateret med den nyeste firmware, er du god til at gå med ethvert projekt på din pi
-
Skriv nu følgende kommandoer for at installere Mosquitto
- wget
- sudo apt-key tilføj mosquitto-repo.gpg.key
- cd /etc/apt/sources.list.d/
- sudo wget
- sudo -i
- apt-get opdatering
- apt-get installere myg
- apt-get installer myg-klienter
- Når du har fulgt alle ovenstående instruktioner, har du din maskine klar med mygmægler opsat, og du er klar til det næste trin.
- Igen i din terminal skriver du følgende kommandoer:
-
- sudo pip installer paho-mqtt
- sudo pip3 installer paho-mqtt
-
For nu at kontrollere, om din mygklient er installeret med succes eller ikke åbner python2 eller python3 shell, og skriv følgende kommando
- import paho.mqtt.client
- dette skal ikke returnere noget. hvis en linje eller fejl returneres, skal du kontrollere ovenstående trin igen og følge trinene omhyggeligt igen.
- Nu er din Raspberry Pi Part næsten færdig, og du er god til at gå efter Sonoff og Arduino del nu
Trin 3: Opsætning af Sonoff Esp8266 -enheden til MQTT
Nu i dette trin vil vi konfigurere vores klientenhed, som er Sonoff.
sonoff er en wifi-hjemmeautomatiseringsenhed, der leveres med forudinstalleret firmware til wifi-baseret hjemmeautomatisering og android/ios-applikation til at styre apparaterne via wifi.
Nu er her et simpelt hack til at omprogrammere det på den måde, vi ønsker. når du omprogrammerer med Arduino ide, mister du den originale firmware, der er forudinstalleret på sonoff.
- Først skal du åbne din sonoff -enhed omhyggeligt og passe på pinouterne vist på billedet FARE: sonoff -enheden fungerer på 220V direkte vekselstrøm, du skal først tilslutte den, før du åbner eller programmerer.
- Se nu nedenstående billede for dets pinout, på undersiden af printet er der en esp8266-chip, som du finder ligner dit esp8266-01-modul.
- Åbn nu Arduino IDE og tilføj de nødvendige Zip -biblioteker. PUBSUB_klientbibliotek
-
Du skal også have esp8266 -kortet tilføjet til din Arduino -ide. følg ikke trinene, hvis det ikke allerede er tilføjet
- Åbn din Arduino IDE og klik på "File -> Preferences".
- "https://arduino.esp8266.com/stable/package_esp8266com_index.json"
- I "Aditional Boards Manager URLs" tilføj dette link ovenfor og klik på "OK"
- Gå til "Værktøjer -> Board -> Boards Manager", skriv "ESP8266" og installer det.
- Gå igen til "Værktøjer -> Board" og vælg "Generisk ESP8266 -modul".
- Nu har du med succes tilføjet brættet til din Arduino IDE.
- Nu skal du lodde et hunstik til sonoff -enheden som vist på et billede.
-
Tag nu USB til TTL CP2102 eller FTDI -kortet og lav følgende forbindelse i henhold til billedet vist ovenfor.
- RX af FTDI til TX af Sonoff
- TX af FTDI til RX af Sonoff
- GND for FTDI til GND for Sonoff
- 3,3V FTDI til 3,3V Sonoff
- BEMÆRK: Sørg for, at du ikke forsyner sonoff -kortet med 5V. det er 3,3V -kompatibelt, hvis din tilslutter 5V til dens strømnål, kan du brænde din sonoff -enhed. derfor bedre bruge 3.3v forsyning af FTDI board kun.
- lav nu forbindelsen som vist på et billede.
- En du er færdig med ovenstående trin. tilslut din FTDI/USB til TTL -kortet til bærbar/pc og åbn Arduino IDE.
- Kopier koden.
11. Vælg nu den korrekte COM -port i menuen Værktøjer, og vælg enheden som en generisk ESP8266 -enhed. Nu skal du trykke på upload -knappen. Det vil tage omkring et minut eller mindre at uploade koden til esp8266 -chippen på sonoff -enheden.
12. Nu er du klar med sonoff og Arduino programmering. og nu skal du se LED'en på sonoff -kortet blinke // som vi har skrevet 5 gange blinkende i starten.
13. Du er god til at gå til det næste trin.
Trin 4: Styr din Sonoff From Web
Nu er dette det sidste trin i vores projekt.
- åbn nu din VNC remote desktop -forbindelse til hindbær pi ved at indtaste IP -adressen til din Pi
- åbn nu terminalen og begynd at skrive følgende kommandoer
- her led er emne og "0" er nyttelast
- ændre IP -adressen i kommando med din Rpi IP -adresse
- Og i stedet for "0" skal du skrive "1", som tænder dit relæ på sonoff wifi -kontakten.
mosquitto_pub -h 192.168.0.104 -t led -m "0"
Ovenstående instruktion vil slukke dit relæ.
myg_pub -h 192.168.0.104 -t led -m "1"
Denne instruktion tænder dit relæ.
Nu er du færdig med at kontrollere din sonoff fra Rpi -terminalen.
du kan kontrollere ved at forbinde sonoff wifi -switch til et andet wifi -netværk og hindbær pi til en anden wifi -forbindelse. Du bør være i stand til at styre relæet fra hvor som helst i verden.
Nu endnu længere vil du teste ON/OFF for din sonoff automatisk, jeg har skrevet et lille python script
som sender "1" først, og efter 6 sekunder sender det "0", og denne proces gentages i en loop.
import paho.mqtt.publicere som publiceringsimporttid
Selvom det er sandt:
print ("Sender 1 …") publish.single ("ledStatus", "1", hostname = "Din mægler -IP") time.sleep (6) print ("Sender 0 …") publish.single ("ledStatus", "0", hostname = "Din mægler -IP") time.sleep (3)
Ovenstående kode tænder og slukker simpelthen relæet på sonoff wifi relæafbryderen.
glem ikke at udskifte din RaspberryPis IP -adresse i ovenstående python -kode. kør nu dette script ved at klikke på option run modul, og du skulle se på skallen
sender "1"..
sender "0"..
sender "1".. sådan noget.
Det er det for denne Instructable. vi ses næste gang med en ny.
Farvel!!!!
og glem ikke at følge og dele dette instruerbare og prøve det på egen hånd!
enhver tvivl indlæg i kommentarfeltet er velkommen!
Anbefalede:
Sådan bruges MQTT med Raspberry Pi og ESP8266: 8 trin (med billeder)
Sådan bruges MQTT Med Raspberry Pi og ESP8266: I denne instruktionsbog vil jeg forklare, hvad MQTT -protokollen er, og hvordan den bruges til at kommunikere mellem enheder. Så, som en praktisk demonstration, skal jeg vise dig, hvordan du opsætter en simpel to klientsystem, hvor et ESP8266 -modul sender et besked
Sådan bruges RPLIDAR 360 ° laserscanner med Arduino: 3 trin (med billeder)
Sådan bruges RPLIDAR 360 ° laserscanner med Arduino: Jeg er en stor fan af at bygge sumobotter, og jeg er altid på udkig efter nye interessante sensorer og materialer, der skal bruges til at bygge en bedre, hurtigere og smartere robot. Jeg fandt ud af om RPLIDAR A1, som du kan få for $ 99 på DFROBOT.com. Jeg sagde, at jeg ikke var
Sådan bruges DMX512 / RDM med Raspberry Pi: 6 trin (med billeder)
Sådan bruges DMX512 / RDM med Raspberry Pi: Raspberry Pi kan bruges til belysningskontroller via DMX512 -bus. I DMX512 bruges bussystemer RS-485 som det fysiske lag. Vores RS422 / RS485 Serial HAT er en fuldt galvanisk isoleret seriel kommunikationshue designet til brug med Raspberry Pi
Sådan bruges Si4703 FM -radiokortet med RDS - Arduino -vejledning: 5 trin (med billeder)
Sådan bruges Si4703 FM -radiokort med RDS - Arduino -vejledning: Dette er et evalueringskort til Silicon Laboratories Si4703 FM -tunerchip. Udover at være en simpel FM -radio, er Si4703 også i stand til at registrere og behandle både Radio Data Service (RDS) og Radio Broadcast Data Service (RBDS) oplysninger. T
Sådan bruges FC-37 regnsensoren med en Arduino: 4 trin (med billeder)
Sådan bruges FC-37 regnsensoren med en Arduino: Hej! I min første instruerbare vil jeg vise dig, hvordan du bruger FC-37 regnsensoren med en arduino. Jeg bruger en arduino nano, men andre versioner fungerer fint