Table des matières:

MQTT basé sur MicroPython ESP32 : 5 étapes
MQTT basé sur MicroPython ESP32 : 5 étapes

Vidéo: MQTT basé sur MicroPython ESP32 : 5 étapes

Vidéo: MQTT basé sur MicroPython ESP32 : 5 étapes
Vidéo: [iot et micropython 05] led ws2812b et mqtt 2024, Novembre
Anonim
MQTT basé sur MicroPython ESP32
MQTT basé sur MicroPython ESP32
MQTT basé sur MicroPython ESP32
MQTT basé sur MicroPython ESP32

J'aime garder des chats de compagnie. Après une journée de travail intense, le chat peut me détendre quand je rentre à la maison. Après un entraînement intensif, ce chat a la bonne habitude de manger régulièrement au "restaurant" tous les jours. Mais récemment, je dois voyager pendant quelques jours et personne ne s'occupe du chat à la maison, je souhaite donc utiliser MQTT pour l'alimentation à distance. Si le chat mange, cela peut me rappeler et me rassurer

MQTT

MQTT est un protocole de transfert de publication/abonnement de messages basé sur client-serveur. Le protocole MQTT est léger, simple, ouvert et facile à mettre en œuvre, et ces fonctionnalités le rendent largement applicable.

Publiez et abonnez-vous

Le protocole MQTT définit deux types d'entités dans le réseau: un courtier de messages et certains clients. L'agent est un serveur qui reçoit tous les messages du client, puis achemine ces messages vers le client cible concerné. Le client est tout ce qui peut interagir avec l'agent pour envoyer et recevoir des messages. Le client peut être un capteur IoT sur site ou une application qui traite les données IoT dans un centre de données.

Étape 1: Fournitures

Fournitures
Fournitures

Matériel:

FairePython ESP32

MakePython ESP32 est une carte ESP32 avec un écran OLED SSD1306 intégré.

servomoteur

HC-SR04

Logiciel:

IDE uPyCraft

Cliquez pour télécharger uPyCraft IDE pour Windows

Étape 2: Câblage

Câblage
Câblage

MakePython ESP32 -- Servomoteur

  • 3V3 -- VCC (ligne rouge)
  • GND -- GND (ligne marron)
  • IO14 -- Signal (ligne orange)

MakePython ESP32 -- HC-SR04

  • 3V3 -- VCC
  • IO13 -- Déclenchement
  • IO12 -- Écho
  • GND -- GND

Étape 3: Coder

Téléchargez et exécutez le code fourni ici.

Apportez les modifications suivantes au fichier main.py, puis enregistrez et exécutez.

Modifier SSID et PSW pour connecter WiFi

SSID='Makerfabs' #REPLACE_WITH_YOUR_SSID

PSW='20160704' #REPLACE_AVEC_VOTRE_MOT DE PASSE

Modifiez l'IP de votre broker MQTT et déterminez les sujets de publication et d'abonnement

mqtt_server = '39.106.151.85' #REPLACE_WITH_YOUR_MQTT_BROKER_IP

topic_sub = b'feed' topic_pub = b'state'

Connectez-vous et abonnez-vous aux sujets

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('Connecté à %s MQTT broker, abonné à %s topic' % (mqtt_server, topic_sub)) client de retour

publier des messages

client = connect_and_subscribe()

client.publish(topic_pub, msg)

Étape 4: Paramètres MQTT

Paramètres MQTT
Paramètres MQTT
Paramètres MQTT
Paramètres MQTT

Vous pouvez télécharger et installer le client MQTT ici, vous permettant d'effectuer un contrôle à distance sur votre téléphone mobile ou votre ordinateur.

  • Ouvrez et cliquez pour créer un client MQTT
  • Nom du flux d'entrée
  • Sélectionnez le protocole mqtt / tcp
  • Entrée hôte: 39.106.151.85: 1883
  • Cliquez sur enregistrer

Étape 5: Publiez et abonnez-vous

Publier et s'abonner
Publier et s'abonner
Publier et s'abonner
Publier et s'abonner

Après connexion, sujet à publier en entrée: flux. Saisie de la charge utile: activez, puis cliquez sur publier

Le servomoteur tourne et commence à alimenter.

Sujet pour s'abonner à l'état d'entrée, puis cliquez sur s'abonner

Lorsque le chat est près de la mangeoire pour manger, le sujet d'abonnement reçoit: le chat mange…, le chat reçoit après son départ: Le chat est parti.

Même si vous laissez le chat à la maison, vous n'avez pas à vous soucier qu'il ait faim.

Conseillé: