Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
MQTT poslužitelj i klijent ćemo postaviti na Raspberry Pi pomoću biblioteka Mosquitto i paho-mqtt. Pročitat ćemo gumb, a ako je pritisnut, uključit ćemo / isključiti LED na Arduino strani.
Dok ćemo na Arduinu koristiti Adafruit MQTT biblioteku. Koristit ćemo senzor poput LDR -a (možete koristiti bilo koji drugi senzor), pročitati ga i objaviti čim se promijeni u Raspberry Pi.
Trebamo:
Malina Pi
NodeMCU
Korak 1: Dodavanje knjižnica za Esp8266
Idite na "Upravljanje knjižnicama …" koristeći svoj Arduino IDE i potražite "MQTT" by Adafruit.
Nakon uspješne instalacije, dodajte "MQTT_NodeMCU.ino" sa sljedeće veze:
Arduino kod
Napravite sljedeće promjene zamjenom wifi ssid -a, lozinke i RPi IP adrese.
#define WLAN_SSID " #397" #define WLAN_PASS "farmhouse397" #define MQTT_SERVER "192.168.0.108" #define "led_pin" #define "sensor_input"
Prenesite skicu i otvorite Serijski monitor na 115200
Korak 2: Instalirajte MQTT Sever i klijenta na Raspberry Pi
Prvo instalirajte Mosquitto poslužitelj koristeći:
sudo apt-get install mosquitto
Instalirajte Mosquitto Client pomoću:
sudo apt-get install mosquitto-clients
Instalaciju možete potvrditi pomoću:
systemctl status mosquitto.usluga
Sada ćemo instalirati paho-MQTT koristeći:
sudo apt-get install python python-pipsudo pip install RPi. GPIO paho-mqtt
Pomoću ovih naredbi objavite -poruke od maline pi (-naziv) do esp8266-leds (-topic).
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "ON"
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "OFF"
-h ==> naziv hosta ==> raspberrypi (osim ako ste ga promijenili)
-t ==> tema
-m ==> poruka
Korak 3: Pokrenite Python Script
MQTT_Pi možete preuzeti s
github.com/anuragvermaa/MQTT_NodeMCU
Ako je sve u redu, trebali biste moći vidjeti podatke senzora u terminalu.
Pritisnite Ctrl+C za izlaz.