Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
Mes nustatysime MQTT serverį ir klientą „Raspberry Pi“naudodami „Mosquitto“ir „paho-mqtt“bibliotekas. Mes perskaitysime mygtuką ir, jei jis bus paspaustas, perjungsime šviesos diodą „Arduino“pusėje.
Kadangi „Arduino“naudosime „Adafruit MQTT“biblioteką. Mes naudosime tokį jutiklį kaip LDR (galite naudoti bet kurį kitą jutiklį), perskaitykite jį ir paskelbsime, kai tik jis pasikeis į „Raspberry Pi“.
Mums reikia:
Raspberry Pi
NodeMCU
1 veiksmas: bibliotekų pridėjimas „Esp8266“
Eikite į „Tvarkyti bibliotekas…“naudodami „Arduino IDE“ir ieškokite „Adafruit“„MQTT“.
Sėkmingai įdiegę, pridėkite „MQTT_NodeMCU.ino“iš šios nuorodos:
Arduino kodas
Atlikite šiuos pakeitimus, pakeisdami „wifi ssid“, slaptažodį ir RPi IP adresą.
#define WLAN_SSID " #397" #define WLAN_PASS "troba397" #define MQTT_SERVER "192.168.0.108" #define "led_pin" #define "sensor_input"
Įkelkite eskizą ir atidarykite „Serial Monitor“adresu 115200
2 veiksmas: įdiekite „MQTT Sever and Client“į „Raspberry Pi“
Pirmiausia įdiekite „Mosquitto“serverį naudodami:
sudo apt-get install mosquitto
Įdiekite „Mosquitto Client“naudodami:
sudo apt-get install mosquitto-customers
Galite patvirtinti diegimą naudodami:
systemctl status mosquitto.paslauga
Dabar įdiegsime „paho-MQTT“naudodami:
sudo apt-get install python python-pipsudo pip įdiegti RPi. GPIO paho-mqtt
Naudokite šias komandas, kad paskelbtumėte žinutes nuo aviečių pi (-hostname) iki esp8266-leds (-opic).
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "ON"
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "OFF"
-h ==> pagrindinio kompiuterio vardas ==> raspberrypi (nebent jį pakeitėte)
-t ==> tema
-m ==> pranešimas
3 veiksmas: paleiskite „Python“scenarijų
MQTT_Pi galite atsisiųsti iš
github.com/anuragvermaa/MQTT_NodeMCU
Jei viskas gerai, turėtumėte matyti jutiklio duomenis terminale.
Norėdami išeiti, paspauskite Ctrl+C.