Përmbajtje:
- Hapi 1: Çfarë është MQTT dhe si funksionon
- Hapi 2: Raspberry Pi
- Hapi 3: Si të konfiguroni adresën statike të IP
- Hapi 4: NodeMCU
- Hapi 5: Shkrimi Python
- Hapi 6: Lidhjet dhe Diagrami i Qarkut
- Hapi 7: Rezultati
Video: Raspberry Pi Duke folur me ESP8266 Duke përdorur MQTT: 8 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:27
Në këtë projekt, unë do të shpjegoj se çfarë është protokolli MQTT dhe si përdoret për të komunikuar midis pajisjeve. Pastaj, si një demonstrim praktik, unë do të demonstroj se si të vendosni një sistem klienti dhe ndërmjetësi, ku një modul ESP8266 si dhe RPi flasin njëri -tjetrit ose dërgoni mesazh kur shtypet një buton.
Materiali i kërkuar
1. Mjedër Pi 3
2. NodeMCU
3. LED
4. Butoni
5. Rezistenca (10k, 475 ohm)
Hapi 1: Çfarë është MQTT dhe si funksionon
MQTT
MQTT është një protokoll i transferimit të të dhënave makinë-në-makinë (M2M). MQTT u krijua me qëllim të mbledhjes së të dhënave nga shumë pajisje dhe më pas transportimin e atyre të dhënave në infrastrukturën e TI -së. Weightshtë i lehtë, dhe për këtë arsye ideal për monitorimin në distancë, veçanërisht në lidhjet M2M që kërkojnë një gjurmë të vogël të kodit ose ku gjerësia e brezit të rrjetit është e kufizuar.
Si funksionon MQTT
MQTT është një protokoll publikimi/abonimi që lejon pajisjet e skajit të rrjetit të publikojnë tek një ndërmjetës. Klientët lidhen me këtë ndërmjetës, i cili më pas ndërmjetëson komunikimin midis dy pajisjeve. Çdo pajisje mund të regjistrohet ose regjistrohet në tema të veçanta. Kur një klient tjetër publikon një mesazh në një temë të regjistruar, ndërmjetësi e përcjell mesazhin tek çdo klient që është regjistruar.
MQTT është dydrejtimësh dhe mban ndërgjegjësimin e sesionit shtetëror. Nëse një pajisje e skajit të rrjetit humbet lidhshmërinë, të gjithë klientët e regjistruar do të njoftohen me veçorinë "Vullneti dhe Testamenti i Fundit" i serverit MQTT në mënyrë që çdo klient i autorizuar në sistem të mund të publikojë një vlerë të re përsëri në skajin e pajisja e rrjetit, duke ruajtur lidhjen dydrejtimëshe.
Projekti është i ndarë në 3 pjesë
Së pari, ne krijojmë server MQTT në RPi dhe instalojmë disa biblioteka.
Së dyti, ne do të instalojmë biblioteka në Arduino IDE që NodeMCU të punojë me MQTT, të ngarkojmë kodin dhe të kontrollojmë nëse serveri po punon apo jo.
Së fundi, ne krijojmë një skript në Rpi, ngarkojmë kodin e kërkuar në NodeMCU dhe ekzekutojmë skriptin python për të kontrolluar led -at nga ana e serverit dhe klientit. Këtu, serveri është RPi dhe klienti është NodeMCU.
Hapi 2: Raspberry Pi
1. Për të instaluar serverin dhe klientin më të fundit MQTT në RPi, për të përdorur depon e re, së pari duhet të importoni çelësin e nënshkrimit të paketës së depove.
wget https://repo.mosquitto.org/debian/mosquitto-repo.gpg.keysudo apt-key shtoni mushkonja-repo.gpg.key
2. Bëni depon në dispozicion të apt.
cd /etc/apt/sources.list.d/
3. Në varësi të versionit të Debian që po përdorni.
sudo wget https://repo.mosquitto.org/debian/mosquitto-wheezy.listsudo wget
sudo wget
përditësim sudo apt-get
4. Instaloni serverin Mosquitto duke përdorur komandën.
sudo apt-get install mushkonja
Nëse po merrni gabime në instalimin e Mosquitto si kjo.
#################################################################
Pakot e mëposhtme kanë varësi të paplotësuara: mushkonja: Varet: libssl1.0.0 (> = 1.0.1) por nuk është e instalueshme Varet: libwebsockets3 (> = 1.2) por nuk është e instalueshme E: Në pamundësi për të korrigjuar problemet, ju jeni mbajtur të prishur paketa.
#################################################################
Pastaj përdorni këtë komandë për të rregulluar çështjet.
sudo apt-instalim i prishur me fiks
5. Pas instalimit të serverit MQTT, instaloni klientin duke përdorur komandën
sudo apt-get install mushkonja-klientë
Ju mund të kontrolloni shërbimet duke përdorur komandën.
statusi systemctl mushkonja.shërbim
Siç është instaluar serveri dhe klienti ynë MQTT. Tani, ne mund ta kontrollojmë atë duke u regjistruar dhe publikuar. Për t'u abonuar dhe publikuar mund të kontrolloni komandat ose të vizitoni faqen e internetit siç jepet më poshtë.
Mushkonja Nën
Mosquitto Pub
Për të instaluar bibliotekën paho-mqtt përdorni komandën më poshtë.
sudo pip instaloni paho-mqtt
Paho
Hapi 3: Si të konfiguroni adresën statike të IP
Shkoni te drejtoria cd /etc dhe hapni skedarin dhcpcd.conf duke përdorur çdo redaktues. Në fund, shkruani këto katër rreshta.
ndërfaqe eth0 statike ip_address = 192.168.1.100 // ip që dëshironi të përdorni
ndërfaqja wlan0
adresa adresa statike = 192.168.1.68
ruterat statikë = 192.168.1.1 // porta juaj e paracaktuar
domain_static server_name_servers = 192.168.1.1
Pas kësaj ruani atë dhe rindizni pi -në tuaj.
Hapi 4: NodeMCU
Instaloni bibliotekat e kërkuara në Arduino IDE për NodeMCU
1. Shkoni te Sketch ==> Përfshi bibliotekën ==> Menaxhoni bibliotekat.
2. Kërkoni për mqtt dhe instaloni bibliotekën nga Adafruit ose mund të instaloni ndonjë bibliotekë.
3. Varet nga biblioteka sleepydog kështu që ne kemi nevojë edhe për këtë bibliotekë.
Programi është dhënë më lart, vetëm për të kontrolluar nëse funksionon apo jo. Këtu nuk kam krijuar asnjë shkrim në RPi. Ne thjesht po përdorim komanda për t'u abonuar dhe publikuar. Ne do të krijojmë shkrime për kontroll më vonë.
mosquitto_pub -h raspberrypi -t "/leds/pi" -m "ON"
mosquitto_pub -h raspberrypi -t "/leds/pi" -m "OFF"
mosquitto_pub -h raspberrypi -t "/leds/pi" -m "TOGGLE"
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "ON"
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "OFF"
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "TOGGLE"
-h ==> emri i hostit-t ==> tema
-m ==> mesazh
Pas kontrollimit të programit Mqtt_check ngarkoni programin e plotë në NodeMCU
Hapi 5: Shkrimi Python
Siç e diskutova më lart ne kemi nevojë për shkrim python për kontrollin e led -ve duke përdorur butona. Pra, ne do të krijojmë skript. Skenari është dhënë më lart.
Kur ekzekutoni skriptin, skripti juaj duhet të duket si në figurë, nëse kodi i rezultatit nuk është zero atëherë ai është një gabim që mund të kontrolloni gabimin në faqen e internetit paho.
Hapi 6: Lidhjet dhe Diagrami i Qarkut
Ndërfaqja e butonit, LED me NodeMCU
NodeMCU ===> ButtonGnd ===> Gnd
3.3V ===> PIN1
GPIO4 (D2) ===> PIN2
NodeMCU ===> LED
Gnd ===> Katodë (-ve)
GPIO5 (D1) ===> Anodë (+ve)
Ndërfaqja e butonit, LED me RPi
RPi ===> ButtonGnd ===> PIN1
GPIO 23 ===> PIN2
RPi ===> LED
Gnd ==> Katodë (-ve)
GPIO 24 ===> Anodë (+ve)
Hapi 7: Rezultati
Sigurohuni që skenari juaj po funksionon, përndryshe nuk do të jetë në gjendje të kontrollojë led duke përdorur butona.
Recommended:
DIY -- Si të bëni një robot merimangë i cili mund të kontrollohet duke përdorur smartphone duke përdorur Arduino Uno: 6 hapa
DIY || Si të bëni një robot merimangë i cili mund të kontrollohet duke përdorur smartphone duke përdorur Arduino Uno: Ndërsa bëni një robot merimangë, mund të mësoni shumë gjëra për robotikën. Ashtu si bërja e robotëve është edhe argëtuese, edhe sfiduese. Në këtë video ne do t'ju tregojmë se si të bëni një robot Spider, të cilin mund ta përdorim duke përdorur smartphone -in tonë (Androi
Monitorimi i përshpejtimit duke përdorur Raspberry Pi dhe AIS328DQTR duke përdorur Python: 6 hapa
Monitorimi i përshpejtimit duke përdorur Raspberry Pi dhe AIS328DQTR Duke përdorur Python: Përshpejtimi është i kufizuar, mendoj sipas disa ligjeve të Fizikës.- Terry Riley Një cheetah përdor përshpejtim të mahnitshëm dhe ndryshime të shpejta në shpejtësi kur ndiqni. Krijesa më e shpejtë në breg, herë pas here, përdor ritmin e saj të lartë për të kapur prenë.
Konvertuesi i tekstit në të folur Arduino duke përdorur LM386 - Duke folur për Projektin Arduino - Biblioteka Talkie Arduino: 5 hapa
Konvertuesi i tekstit në të folur Arduino duke përdorur LM386 | Duke folur për Projektin Arduino | Biblioteka Talkie Arduino: Përshëndetje djema, në shumë prej projekteve ne kërkojmë që arduino të flasë diçka si ora e folur ose të tregojë disa të dhëna në këtë udhëzues ne do ta shndërrojmë tekstin në të folur duke përdorur Arduino
Duke folur për Arduino - Luajtja e një MP3 me Arduino pa asnjë modul - Luajtja e skedarit Mp3 nga Arduino duke përdorur PCM: 6 hapa
Duke folur për Arduino | Luajtja e një MP3 me Arduino pa asnjë modul | Luajtja e skedarit Mp3 nga Arduino duke përdorur PCM: Në këtë udhëzues do të mësojmë se si të luajmë një skedar mp3 me arduino pa përdorur ndonjë modul audio, këtu do të përdorim bibliotekën PCM për Arduino e cila luan 16 bit PCM me frekuencë 8kHZ, kështu që le ta bëjmë këtë
Raspberry Pi Duke folur për lexuesin e barkodit: 12 hapa
Raspberry Pi Talking Barcode Reader: Fig.1 Skaneri i barkodit nga DX.comOverviewUpdate: Një video e shkurtër video është në dispozicion https://youtu.be/b905MLfGTcMM Nëna ime nuk është në gjendje të lexojë më etiketa në artikujt ushqimor, kështu që unë shkova duke kërkuar zgjidhje. Pasi panë atë lexues të kodit bar për të verbërit