Table des matières:

Comment utiliser MQTT avec le Raspberry Pi et ESP8266/sonoff : 4 étapes
Comment utiliser MQTT avec le Raspberry Pi et ESP8266/sonoff : 4 étapes

Vidéo: Comment utiliser MQTT avec le Raspberry Pi et ESP8266/sonoff : 4 étapes

Vidéo: Comment utiliser MQTT avec le Raspberry Pi et ESP8266/sonoff : 4 étapes
Vidéo: Internet des Objets-Partie 4:Création d'un Dashboard avec Node-RED, MQTT et Raspberry PI 2024, Juillet
Anonim
Comment utiliser MQTT avec le Raspberry Pi et ESP8266/sonoff
Comment utiliser MQTT avec le Raspberry Pi et ESP8266/sonoff

Bonjour à tous!

Aujourd'hui, je vais vous montrer comment configurer un commutateur de relais wifi Sonoff basé sur Raspberry Pi et ESP8266 pour contrôler vos appareils ménagers depuis n'importe où dans le monde.

À la fin de cette instructable, si vous avez suivi attentivement mes instructions, vous pourrez contrôler n'importe lequel de vos appareils ménagers à partir du terminal de Raspberry Pi ou en utilisant un shell python.

Alors préparez-vous à créer votre propre contrôleur de périphérique Wifi Sonoff basé sur MQTT et Rpi !

Avant de commencer cette instructable, je voudrais mentionner quelques choses très importantes,

  1. Le commutateur de relais wifi sonoff est livré avec son propre micrologiciel de contrôle. une fois que vous le reprogrammez, le firmware d'origine est définitivement effacé. Assurez-vous donc de cela.
  2. Le commutateur de relais wifi sonoff est directement alimenté par une tension alternative de 230 V, donc si vous n'êtes pas un expert dans la gestion de ces hautes tensions, demandez l'aide de vos parents ou d'une personne experte.
  3. Le commutateur de relais wifi sonoff est simplement basé sur le chipset wifi esp8266-01 qui est une puce 3.3V, si vous appliquez accidentellement 5V à sa broche +V, vous l'endommagerez à coup sûr.
  4. Ici pour cette instructable, j'ai considéré que vous avez votre raspberry pi tout configuré et wifi activé avec une adresse IP pour exécuter les commandes moustique et MQTT dans le terminal

** Si vous êtes prêt avec toutes les 4 étapes ci-dessus, vous êtes prêt à partir !!

Étape 1: Introduction + Fournitures

Présentation + Fournitures
Présentation + Fournitures
Présentation + Fournitures
Présentation + Fournitures

Bonjour gars! aujourd'hui nous allons construire un projet très intéressant. Ici, dans ce projet, nous allons contrôler nos appareils domestiques tels que la lampe AC à l'aide du courtier MQTT.

Remarque: il s'agit d'un projet IOT, vous pouvez donc contrôler votre appareil AC de n'importe où dans le monde

MQTT (Massage Que Telemetry Transport) est un protocole de transfert de charge utile simple utilisé dans de nombreux projets Web. Facebook Messenger utilise également le protocole MQTT. assez d'introduction, commençons par Project.

De quoi avons-nous besoin pour ce projet ?

1) Connexion Wifi active (routeur de préférence)

2) Modèle Raspberry Pi3 sur lequel le wifi est activé.

3) Interrupteur Sonoff Wifi IOT avec 10A 220V

4) Certains fils de connexion

5) Câbles de démarrage

6) Convertisseur CP2102 USB vers TTL

  • Remarque: pour ce projet, vous devez avoir configuré raspberry pi avec une connexion au clavier du moniteur ou en mode sans tête avec votre ordinateur portable (connexion VNC)
  • Si vous n'avez pas configuré Raspberry Pi avec un moniteur ou un mode sans tête, vous devez suivre mon autre tutoriel sur la façon de connecter Raspberry Pi en mode sans tête.

Étape 2: Configuration du Raspberry Pi

Configuration du Raspberry Pi
Configuration du Raspberry Pi

Dans cette étape, nous allons configurer notre raspberry pi pour le projet.

dans ce tutoriel, nous utilisons sonoff ESP8266 en tant que client et raspberry pi en tant que courtier en moustiques.

  1. ouvrez votre terminal Raspberry Pi et tapez

    1. sudo apt-get mise à jour
    2. sudo apt-get upgrade Une fois que votre raspberry Pi est mis à jour avec le dernier firmware, vous êtes prêt à partir avec n'importe quel projet sur votre pi
  2. Tapez maintenant les commandes suivantes pour installer Mosquitto

    1. wget
    2. sudo apt-key ajouter mosquitto-repo.gpg.key
    3. cd /etc/apt/sources.list.d/
    4. sudo wget
    5. sudo -i
    6. apt-get mise à jour
    7. apt-get installer moustique
    8. apt-get install mosquitto-clients
  3. Une fois que vous avez suivi avec succès toutes les instructions ci-dessus, votre machine est prête avec Mosquitto Broker configuré et vous êtes prêt à passer à l'étape suivante.
  4. Encore une fois dans votre terminal tapez les commandes suivantes:
    1. sudo pip installer paho-mqtt
    2. sudo pip3 installer paho-mqtt
  5. Maintenant, afin de vérifier si votre client mosquitto est installé avec succès ou non, ouvrez le shell python2 ou python3 et tapez la commande suivante

    1. importer paho.mqtt.client
    2. cela ne devrait rien renvoyer. si renvoie une ligne ou une erreur, vérifiez à nouveau les étapes ci-dessus et suivez à nouveau les étapes attentivement.
  6. Maintenant, votre partie Raspberry Pi est presque terminée et vous êtes prêt à opter pour la partie Sonoff et Arduino maintenant

Étape 3: Configuration du périphérique Sonoff Esp8266 pour MQTT

Configuration du périphérique Sonoff Esp8266 pour MQTT
Configuration du périphérique Sonoff Esp8266 pour MQTT
Configuration du périphérique Sonoff Esp8266 pour MQTT
Configuration du périphérique Sonoff Esp8266 pour MQTT
Configuration du périphérique Sonoff Esp8266 pour MQTT
Configuration du périphérique Sonoff Esp8266 pour MQTT

Maintenant, dans cette étape, nous allons configurer notre périphérique client qui est Sonoff.

sonoff est un appareil domotique wifi qui est livré avec un micrologiciel préinstallé pour la domotique basée sur le wifi et une application Android/ios pour contrôler les appareils via le wifi.

Maintenant, voici une astuce simple pour le reprogrammer comme nous le souhaitons. une fois reprogrammé avec Arduino ide vous perdrez le firmware d'origine préinstallé sur sonoff.

  1. tout d'abord, ouvrez soigneusement votre appareil sonoff et recherchez les brochages indiqués dans l'image DANGER: l'appareil sonoff fonctionne sur 220V direct AC vous devez d'abord le débrancher avant d'ouvrir ou de programmer.
  2. Maintenant, voyez l'image ci-dessous pour son brochage, sur la face inférieure du PCB, il y a une puce esp8266 que vous trouvez similaire à votre module esp8266-01.
  3. Ouvrez maintenant l'IDE Arduino et ajoutez les bibliothèques Zip nécessaires. Bibliothèque PUBSUB_client
  4. En outre, vous devez ajouter la carte esp8266 à votre ide Arduino. s'il n'est pas déjà ajouté, suivez les étapes

    1. Ouvrez votre IDE Arduino et cliquez sur "Fichier -> Préférences".
    2. "https://arduino.esp8266.com/stable/package_esp8266com_index.json"
    3. Dans « URL de gestionnaire de cartes supplémentaires », ajoutez ce lien ci-dessus et cliquez sur « OK »
    4. Allez dans "Outils -> Carte -> Gestionnaire de cartes", tapez "ESP8266" et installez-le.
    5. Allez à nouveau dans "Outils -> Carte" et sélectionnez "Module générique ESP8266".
    6. Vous avez maintenant ajouté avec succès la carte à votre IDE Arduino.
  5. Vous devez maintenant souder un connecteur femelle au périphérique sonoff, comme indiqué dans une image.
  6. Prenez maintenant la carte USB vers TTL CP2102 ou FTDI et effectuez la connexion suivante conformément à l'image ci-dessus.

    1. RX de FTDI vers TX de Sonoff
    2. TX de FTDI vers RX de Sonoff
    3. GND de FTDI à GND de Sonoff
    4. 3.3V de FTDI à 3.3V de Sonoff
  7. REMARQUE: Assurez-vous que vous n'alimentez pas la carte sonoff en 5V. il est compatible 3.3V si vous connectez 5V à sa broche d'alimentation, vous pouvez graver votre appareil sonoff. par conséquent, il est préférable d'utiliser uniquement l'alimentation 3,3 v de la carte FTDI.
  8. faites maintenant la connexion comme indiqué dans une image.
  9. Une fois que vous avez terminé avec les étapes ci-dessus. connectez votre carte FTDI/USB à TTL à un ordinateur portable/PC et ouvrez Arduino IDE.
  10. Copiez le code.

11. Sélectionnez maintenant le port COM approprié dans le menu Outils et sélectionnez l'appareil en tant qu'appareil ESP8266 générique. Maintenant, appuyez sur le bouton de téléchargement. Il faudra environ une minute ou moins pour télécharger le code dans la puce esp8266 de l'appareil sonoff.

12. Vous êtes maintenant prêt à programmer sonoff et Arduino. et maintenant vous devriez voir la led sur la carte sonoff clignoter // comme nous l'avons écrit 5 fois clignoter au début.

13. Vous êtes prêt à passer à l'étape suivante.

Étape 4: Contrôlez votre Sonoff à partir du Web

Contrôlez votre Sonoff depuis le Web
Contrôlez votre Sonoff depuis le Web

Maintenant, c'est la dernière étape de notre projet.

  1. ouvrez maintenant votre connexion de bureau à distance VNC de raspberry pi en entrant l'adresse IP de votre Pi
  2. ouvrez maintenant le terminal et commencez à taper les commandes suivantes
  3. ici led est le sujet et "0" est la charge utile
  4. changez l'adresse IP en commande avec votre adresse IP Rpi
  5. Et au lieu de "0" écrivez "1" qui allumera votre relais sur le switch wifi sonoff.

moustique_pub -h 192.168.0.104 -t led -m "0"

L'instruction ci-dessus éteindra votre relais.

mosquitto_pub -h 192.168.0.104 -t led -m "1"

Cette instruction activera votre relais.

Vous avez maintenant terminé de contrôler votre sonoff à partir du terminal Rpi.

vous pouvez vérifier en connectant le commutateur wifi sonoff à un autre réseau wifi et raspberry pi à une autre connexion wifi. Vous devriez pouvoir contrôler le relais de n'importe où dans le monde.

Maintenant encore plus loin vous voulez tester le ON/OFF de votre sonoff automatiquement j'ai écrit un petit script python

qui envoie le "1" en premier et après 6 secondes, il envoie "0" et ce processus se répète en boucle.

importer paho.mqtt.publish en tant qu'heure de publication d'importation

Tant que vrai:

print("Envoi 1…") publish.single("ledStatus", "1", hostname="Votre IP de courtier") time.sleep(6) print("Envoi 0…") publish.single("ledStatus", "0", hostname="Votre courtier IP") time.sleep(3)

Le code ci-dessus active et désactive simplement le relais sur le commutateur de relais wifi sonoff.

n'oubliez pas de remplacer l'adresse IP de votre RaspberryPi dans le code python ci-dessus. exécutez maintenant ce script en cliquant sur l'option exécuter le module et vous devriez voir sur le shell

envoyer "1"..

envoyer "0"..

envoyer "1".. quelque chose comme ça.

C'est tout pour ce Instructable. à la prochaine avec un nouveau.

Au revoir!!!!

et n'oubliez pas de suivre et de partager cette instructable et de l'essayer par vous-même !

tout doute posté dans la section commentaire est le bienvenu !

Conseillé: