Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Îmi place să păstrez pisici de companie. După o zi de muncă intensă, pisica mă poate relaxa când ajung acasă. După antrenamente dure, această pisică are un obicei bun de a mânca regulat în „restaurant” în fiecare zi. Dar recent trebuie să călătoresc câteva zile și nimeni nu are grijă de pisică acasă, așa că vreau să folosesc MQTT pentru alimentarea cu telecomandă. Dacă pisica mănâncă, acest lucru îmi poate aminti și mă poate liniști
MQTT
MQTT este un protocol de transfer / abonare a mesajelor bazat pe client-server. Protocolul MQTT este ușor, simplu, deschis și ușor de implementat, iar aceste caracteristici îl fac aplicabil pe scară largă.
Publicați și abonați-vă
Protocolul MQTT definește două tipuri de entități din rețea: un broker de mesaje și unii clienți. Agentul este un server care primește toate mesajele de la client și apoi direcționează aceste mesaje către clientul țintă relevant. Clientul este orice lucru care poate interacționa cu agentul pentru a trimite și primi mesaje. Clientul poate fi un senzor IoT la fața locului sau o aplicație care procesează date IoT într-un centru de date.
Pasul 1: consumabile
Hardware:
MakePython ESP32
MakePython ESP32 este o placă ESP32 cu un display SSD1306 OLED integrat.
servo motor
HC-SR04
Software:
uPyCraft IDE
Faceți clic pentru a descărca uPyCraft IDE pentru Windows
Pasul 2: Cablare
MakePython ESP32 - Servo
- 3V3 - VCC (linia roșie)
- GND - GND (linie maro)
- IO14 - Semnal (linie portocalie)
MakePython ESP32 - HC-SR04
- 3V3 - VCC
- IO13 - Trig
- IO12 - Ecou
- GND - GND
Pasul 3: Cod
Descărcați și rulați codul furnizat aici.
Efectuați următoarele modificări la fișierul main.py, apoi salvați și rulați.
Modificați SSID și PSW pentru a conecta WiFi
SSID = 'Makerfabs' #REPLACE_WITH_YOUR_SSID
PSW = '20160704' #REPLACE_WITH_YOUR_PASSWORD
Modificați adresa IP a brokerului dvs. MQTT și determinați subiectele pentru publicare și abonament
mqtt_server = '39.106.151.85 '#REPLACE_WITH_YOUR_MQTT_BROKER_IP
topic_sub = b'feed 'topic_pub = b'state'
Conectați-vă și abonați-vă la subiecte
def connect_and_subscribe ():
global client_id, mqtt_server, topic_sub client = MQTTClient (client_id, mqtt_server) client.set_callback (sub_cb) client.connect () client.subscribe (topic_sub) print ('Conectat la% s broker MQTT, abonat la% s topic'% (mqtt_ser, topic_sub)) return client
publică mesaje
client = connect_and_subscribe ()
client.publish (topic_pub, msg)
Pasul 4: Setări MQTT
Puteți descărca și instala clientul MQTT aici, permițându-vă să efectuați telecomanda de pe telefonul mobil sau computer.
- Deschideți și faceți clic pentru a crea client MQTT
- Introduceți feedul de nume
- Protocol selectați mqtt / tcp
- Intrare gazdă: 39.106.151.85:1883
- Faceți clic pe Salvați
Pasul 5: publicați și abonați-vă
După conectare, subiect pentru a publica intrare: feed. Intrare încărcare utilă: activată, apoi faceți clic pe publicare
Servomotorul se rotește și începe să se alimenteze.
Subiect pentru a vă abona la starea de intrare, apoi faceți clic pe abonare
Când pisica este lângă alimentator să mănânce, subiectul abonamentului primește: pisica mănâncă …, pisica primește după plecare: Pisica a plecat.
Chiar dacă lăsați pisica acasă, nu trebuie să vă faceți griji că îi va fi foame.