INHOUDSOPGAWE:
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
Ons gaan die MQTT-bediener en kliënt op Raspberry Pi opstel met behulp van Mosquitto- en paho-mqtt-biblioteke. Ons sal 'n knoppie lees en as dit ingedruk word, skakel ons die LED aan die Arduino -kant aan.
Terwyl ons op Arduino die Adafruit MQTT -biblioteek sal gebruik. Ons sal 'n sensor soos LDR gebruik (u kan enige ander sensor gebruik), dit lees en publiseer sodra dit na Raspberry Pi verander.
Ons benodig:
Framboos Pi
NodeMCU
Stap 1: Voeg biblioteke by vir Esp8266
Gaan na "Manage Libraries …" met u Arduino IDE en soek na "MQTT" deur Adafruit.
Na suksesvolle installasie, voeg "MQTT_NodeMCU.ino" by vanaf die volgende skakel:
Arduino -kode
Maak die volgende veranderinge deur wifi ssid, wagwoord en RPi IP -adres te vervang.
#define WLAN_SSID " #397" #define WLAN_PASS "plaashuis397" #definieer MQTT_SERVER "192.168.0.108" #definieer "led_pin" #definieer "sensor_input"
Laai die skets op en maak Serial Monitor oop by 115200
Stap 2: Installeer MQTT Sever en Client op Raspberry Pi
Installeer eers Mosquitto -bediener met:
sudo apt-get install mosquitto
Installeer Mosquitto Client met:
sudo apt-get install mosquitto-kliënte
U kan die installasie bekragtig deur:
systemctl status muskiet.diens
Nou installeer ons paho-MQTT met:
sudo apt-get install python python-pipsudo pip installeer RPi. GPIO paho-mqtt
Gebruik hierdie opdragte om -boodskappe van framboospi (-hostnaam) na esp8266-leds (-topic) te publiseer.
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "ON"
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "OFF"
-h ==> gasheernaam ==> raspberrypi (tensy u dit verander het)
-t ==> onderwerp
-m ==> boodskap
Stap 3: Begin Python Script
U kan MQTT_Pi aflaai van
github.com/anuragvermaa/MQTT_NodeMCU
As alles reg is, moet u sensor data in die terminale kan sien.
Druk Ctrl+C om te verlaat.