Kazalo:
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
Strežnik in odjemalca MQTT bomo namestili na Raspberry Pi z uporabo knjižnic Mosquitto in paho-mqtt. Prebrali bomo gumb in če ga pritisnemo, bomo preklopili LED na strani Arduino.
Medtem ko bomo na Arduinu uporabljali knjižnico Adafruit MQTT. Uporabili bomo senzor, kot je LDR (lahko uporabite kateri koli drug senzor), ga prebrali in objavili takoj, ko se spremeni v Raspberry Pi.
Potrebujemo:
Malina Pi
NodeMCU
1. korak: Dodajanje knjižnic za Esp8266
Pojdite na "Upravljanje knjižnic …" z uporabo Arduino IDE in poiščite "MQTT" podjetja Adafruit.
Po uspešni namestitvi dodajte "MQTT_NodeMCU.ino" s te povezave:
Koda Arduino
Naredite naslednje spremembe, tako da zamenjate wifi ssid, geslo in naslov IP RPi.
#define WLAN_SSID " #397" #define WLAN_PASS "farmhouse397" #define MQTT_SERVER "192.168.0.108" #define "led_pin" #define "sensor_input"
Naložite skico in odprite serijski monitor na 115200
Korak: Namestite MQTT Sever in odjemalca na Raspberry Pi
Najprej namestite strežnik Mosquitto z:
sudo apt-get install mosquitto
Namestite odjemalca Mosquitto Client z:
sudo apt-get install mosquitto-clients
Namestitev lahko potrdite z:
systemctl status mosquitto.service
Zdaj bomo namestili paho-MQTT z uporabo:
sudo apt-get install python python-pipsudo pip install RPi. GPIO paho-mqtt
Uporabite te ukaze za objavo sporočil od maline pi (ime -hosta) do esp8266-leds (-topija).
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "ON"
mosquitto_pub -h raspberrypi -t "/leds/esp8266" -m "OFF"
-h ==> ime gostitelja ==> raspberrypi (razen če ste ga spremenili)
-t ==> tema
-m ==> sporočilo
3. korak: Zaženite skript Python
MQTT_Pi lahko prenesete iz
github.com/anuragvermaa/MQTT_NodeMCU
Če je vse v redu, bi morali videti podatke senzorja v terminalu.
Za izhod pritisnite Ctrl+C.