Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Nastavíme server a klienta MQTT na Raspberry Pi pomocou knižníc Mosquitto a paho-mqtt. Načítame tlačidlo a ak je stlačené, prepneme LED na strane Arduino.
Zatiaľ čo v Arduine použijeme knižnicu Adafruit MQTT. Použijeme snímač ako LDR (Môžete použiť akýkoľvek iný snímač), prečítajte si ho a zverejnite hneď, ako sa zmení na Raspberry Pi.
Potrebujeme:
Malinový koláč
NodeMCU
Krok 1: Pridanie knižníc pre Esp8266
Prejdite na „Spravovať knižnice …“pomocou IDE Arduino a vyhľadajte „MQTT“od spoločnosti Adafruit.
Po úspešnej inštalácii pridajte „MQTT_NodeMCU.ino“z nasledujúceho odkazu:
Arduino kód
Vykonajte nasledujúce zmeny nahradením wifi ssid, hesla a IP adresy RPi.
#define WLAN_SSID " #397" #define WLAN_PASS "farmhouse397" #define MQTT_SERVER "192.168.0.108" #define "led_pin" #define "sensor_input"
Odošlite skicu a otvorte Sériový monitor na čísle 115200
Krok 2: Nainštalujte MQTT Sever a klienta na Raspberry Pi
Najprv nainštalujte server Mosquitto pomocou:
sudo apt-get install mosquitto
Nainštalujte klienta Mosquitto pomocou:
sudo apt-get install mosquitto-clients
Inštaláciu môžete overiť pomocou:
systemctl status mosquitto.service
Teraz nainštalujeme paho-MQTT pomocou:
sudo apt-get install python python-pipsudo pip install RPi. GPIO paho-mqtt
Tieto príkazy použite na publikovanie správ-od maliny pi (-hostname) po esp8266-leds (-topic).
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "ON"
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "VYPNUTÉ"
-h ==> názov hostiteľa ==> raspberrypi (pokiaľ ste ho nezmenili)
-t ==> téma
-m ==> správa
Krok 3: Spustite skript Python
MQTT_Pi si môžete stiahnuť z
github.com/anuragvermaa/MQTT_NodeMCU
Ak je všetko v poriadku, mali by ste v termináli vidieť údaje senzorov.
Ukončite stlačením klávesov Ctrl+C.