Comment automatiser votre porte de garage avec IFTTT et Raspberry Pi

Comment automatiser votre porte de garage avec IFTTT et Raspberry Pi / DIY

Les gadgets intelligents pour la maison sont cool mais peuvent coûter cher. Avec un Raspberry Pi et un composant ou deux, il est facile et peu coûteux de connecter des périphériques existants à Internet.

Rendre votre porte de garage accessible à Internet est une excellente introduction pour apprendre à contrôler le monde réel avec un Pi. Et soyons honnêtes, ceux qui ne veulent pas se sentir un peu comme Batman et avoir leur garage ouvert tout seul quand ils entrent dans l'allée?

Ce dont vous aurez besoin

Pour automatiser votre porte de garage, vous aurez besoin de:

  • Un moteur de porte de garage pouvant supporter une gâchette externe.
  • Un Raspberry Pi (tout modèle) connecté à Internet. Ce tutoriel suppose que votre Pi utilise le système d’exploitation Raspbian (si ce n’est pas le cas, consultez notre article sur l’installation de Raspbian sur votre Raspberry Pi. Comment installer un système d’exploitation sur votre Raspberry Pi. Comment installer un système d’exploitation sur votre Raspberry Pi. Voici comment procéder. pour obtenir un nouveau système d’exploitation installé et opérationnel sur votre Pi - et comment cloner votre configuration idéale pour une récupération après sinistre rapide..
  • Une carte d'extension de relais, qui peut trouver trouver sur Amazon.
  • Une alimentation 2A pour le Raspberry Pi. Un modèle moins bien noté peut avoir des difficultés à piloter la carte de relais ainsi que la carte Pi..
  • Quatre câbles de liaison (plus un pour chaque porte supplémentaire que vous souhaitez contrôler).
  • Suffisamment de câble à deux conducteurs pour passer entre le moteur Pi et le moteur de la porte du garage. Le fil de haut-parleur bon marché est idéal, mais un câble téléphonique ou Ethernet peut aussi fonctionner.

Une fois que vous avez rassemblé ces composants, il est temps de commencer.

Comment fonctionne cette porte de garage automatisée

La plupart des moteurs de porte de garage peuvent être déclenchés pour s'ouvrir ou se fermer via une entrée externe. Les fabricants incluent ces entrées pour que les installateurs puissent connecter un simple bouton poussoir quelque part dans la maison pour ouvrir ou fermer la porte sans utiliser la télécommande normale. Lorsqu'un bouton de déclenchement est enfoncé et relâché, il ferme momentanément un circuit qui indique au moteur de démarrer ou d'arrêter.

Vous allez utiliser un relais à la place d'un bouton externe. Fermer brièvement le relais ferme le circuit, exactement comme si un bouton de déclenchement avait été enfoncé. Un script Python exécuté sur le Raspberry Pi vous permettra de contrôler le relais, et donc la porte, depuis votre réseau domestique..

Étape 1: Connectez le Raspberry Pi au relais

Vous établissez au moins quatre connexions entre votre Raspberry Pi et la carte relais. Si vous utilisez un Pi Zero, vous devrez soit souder directement les connexions, soit souder un en-tête GPIO au Pi et utiliser des câbles de liaison pour les connexions. Cette dernière option est recommandée car si vous souhaitez un jour déconnecter la carte de relais et utiliser le Raspberry Pi pour autre chose, vous n'avez pas besoin de dissoudre vos connexions. Le plus grand modèle Pis possède déjà des broches d’entête pour la connexion de câbles de démarrage enfichables.

Si vous débutez dans l’utilisation de GPIO, veillez à lire notre article Tout ce que vous devez savoir sur le Raspberry Pi GPIO Pins Tout ce que vous devez savoir sur le Raspberry Pi GPIO Pins Tout ce que vous devez savoir sur le Raspberry Pi GPIO Le Raspberry Pi est un petit ordinateur fantastique, mais que font exactement les broches GPIO (General Purpose Input / Output)? En bref, ils ouvrent tout un monde de bricolage et d’inventions électroniques de bricolage. Lire la suite .

Avant de tout brancher, vérifiez si votre carte relais dispose d’un cavalier reliant les broches VCC et JD-VCC. Si c'est le cas, supprimez-le, car vous devrez alimenter VCC et JD-VCC séparément..

Tout étant éteint, connectez la carte relais à votre Pi comme suit:

  • Commencez par connecter la broche 2 Pi (rail 5V) au JD-VCC de la carte de relais.
  • Connectez la broche 1 ou 17 de Pi (rail 3,3 V) à VCC sur la carte de relais.
  • Connectez la broche 6 de Pi (GND) à GND sur la carte de relais.
  • Enfin, connectez Pi Pin 7 (GPIO 4) à IN1 sur la carte de relais. C'est la connexion qui commute le relais.

Si vous avez plus d'une porte de garage ou si vous souhaitez ajouter un contrôle pour les portails électriques, vous devez ajouter des connexions supplémentaires entre IN2, IN3, etc. sur la carte de relais et d'autres broches d'entrée / sortie GPIO libres sur l'interface Pi..

Étape 2: Installez les dépendances sur le Raspberry Pi

Raspbian est livré avec Python pré-installé, mais vous devrez ajouter la bibliothèque GPIO. Tapez ce qui suit dans la fenêtre du terminal sur votre Pi:

sudo apt-get mise à jour sudo apt-get -y installer python-rpi.gpio

Créez maintenant un nouveau dossier dans votre répertoire personnel, dans lequel placer le script Python permettant de contrôler les relais:

mkdir ~ / garagedoor cd ~ / garagedoor

Enfin, téléchargez bottle, un framework léger qui créera un simple serveur Web sur votre Pi:

wget https://bottlepy.org/bottle.py

Étape 3: Créer le script de contrôle

Voici un script Python très simple pour contrôler la carte de relais via HTTP:

# Script Python Pour contrôler la porte du garage # Les bibliothèques de chargement importent RPi.GPIO en tant que temps d'importation GPIO à partir de la route d'importation des bouteilles, exécutez, modèle # Configurez les broches GPIO GPIO.setmode (GPIO.BOARD) GPIO.setup (7, GPIO.OUT) GPIO.setup (11, GPIO.OUT) GPIO.output (7, True) GPIO.output (11, True) # Gestion des demandes http à l'adresse racine @route ('/') def index (): return 'Go away ' # Gérer les demandes http à / garagedoor @route ('/ garagedoor /: doornum') depuis garagedoor (doornum = 0): if doornum == '0': retourne 'Aucun numéro de porte spécifié' elif doornum == '1': GPIO .output (7, False) time.sleep (.8) GPIO.output (7, True) return 'Le numéro de porte 1 a été mis en cycle.' elif doornum == '2': GPIO.output (11, False) time.sleep (.8) GPIO.output (11, True) renvoie 'Le numéro de porte 2 a subi un cycle' (hôte = '0.0.0.0', port = 1234) 

Sur votre Raspberry Pi, créez un nouveau fichier Python avec nano:

nano door.py

Copiez et collez le script ci-dessus dans le document vide. Quitter et sauvegarder avec CTRL + X, puis Y, et Entrer confirmer.

Maintenant, testez le script en l'exécutant:

python door.py

Si tout fonctionne, vous verrez un message comme celui-ci:

Si vous recevez des messages d'erreur, vérifiez que tout est bien collé dans le fichier et qu'aucun autre serveur Web tel qu'Apache ne s'exécute sur le même port (cela interfère avec le serveur créé par le script)..

En supposant qu’il n’y ait aucune erreur, accédez à un navigateur Web situé sur un autre ordinateur du même réseau. Dans la barre d’adresse, tapez l’adresse IP de votre Pi, suivie de deux points et de 1234. Par exemple, si l’adresse IP de votre Raspberry Pi était 11.22.33.44, vous tapez 11.22.33.44:1234 dans votre navigateur.

Si tout fonctionne, vous verrez un message vous demandant de partir!

Maintenant, ajoutez / garagedoor / 1 après l'adresse IP et le numéro de port, comme ceci: 11.22.33.44:1234/garagedoor/1

Frappé Entrer, et vous devriez entendre le premier relais de la carte cliquer deux fois lorsqu'il se ferme et s'ouvre à nouveau. Si vous changez le 1 en 2 et rechargez la page, vous entendrez le deuxième cycle de relais.

Étape 4: Connectez le relais au moteur de la porte

Reportez-vous au manuel du moteur de votre porte de garage pour savoir où un contrôleur externe peut être connecté. Branchez-y le câble à deux conducteurs et connectez l'autre extrémité du câble aux bornes à vis de la carte relais..

Il y a trois terminaux par relais. Utilisez la paire normalement ouverte, comme indiqué sur l'image..

Testez à nouveau tout depuis le navigateur Web (vous pouvez simplement actualiser la page). Si tout se passe bien, le relais cliquera une ou deux fois et votre porte de garage devrait commencer à s'ouvrir..

Étape 5: Configurez le script pour charger automatiquement

Si votre Raspberry Pi redémarre pour une raison quelconque, telle qu'une panne de courant, votre script Python cessera de s'exécuter. Pour le charger au démarrage, ajoutez la ligne suivante à votre /etc/sc.local fichier (si vous êtes connecté à votre Pi en tant qu’utilisateur différent, modifiez Pi à votre nom d'utilisateur):

nohup python /home/pi/garagedoor/door.py & 

Faites ceci en utilisant votre éditeur de texte habituel, en sauvegardant le fichier quand vous avez fini.

Considérations de sécurité à garder à l'esprit

Cet exemple de script Python est dépourvu de sécurité. Toute personne pouvant accéder à votre Raspberry Pi via son adresse IP pourra ouvrir et fermer votre porte de garage. Il est tentant de penser que, même si personne ne sait que votre script est là, personne ne le trouvera, mais la sécurité à travers l'obscurité a été maintes fois montrée comme une mauvaise idée..

Un système d'authentification complet dépasse le cadre de ce tutoriel, mais une solution simple en matière de sécurité consiste à ne pas rendre votre Pi accessible en dehors de votre réseau domestique..

Voici d'autres astuces pour sécuriser votre Raspberry Pi Sécuriser votre Raspberry Pi: des mots de passe aux pare-feu Sécuriser votre Raspberry Pi: des mots de passe aux pare-feu N'importe qui peut utiliser Google pour trouver le nom d'utilisateur et le mot de passe par défaut de votre Raspberry Pi. Ne donnez pas cette chance aux intrus! Lire la suite .

Contrôler votre porte de garage avec IFTTT ou Siri

Si vous choisissez de rendre votre Pi accessible à partir d'Internet ouvert, vous pouvez contrôler votre porte de garage à partir de services tels que If This Then That (IFTTT). Par exemple, vous pouvez combiner les services Alexa et Webhooks IFTTT pour ouvrir votre porte de garage lorsque vous dites une phrase de déclenchement à un Amazon Echo..

Si vous conduisez une voiture avec un service connecté IFTTT, vous pouvez créer un applet pour ouvrir la portière lorsque votre voiture approche de votre propriété, à la manière de Batman..

Veut en savoir plus? Consultez notre guide téléchargeable sur l'utilisation d'IFTTT en tant que professionnel. Guide ultime IFTTT: utilisez l'outil le plus puissant du Web, comme un pro. Guide ultime IFTTT: utilisez l'outil le plus puissant du Web, comme un pro. service Web pour que vos applications et vos appareils fonctionnent ensemble. Vous ne savez pas comment construire votre applet? Suivez avec ce guide. Lire la suite .

Un raccourci Siri est un autre moyen de déclencher votre porte de garage nouvellement connectée à Internet. En mettant un simple raccourci dans vos widgets, vous pouvez oublier de porter des clés agaçantes et ouvrir votre garage d'un coup et taper sur votre iPhone..

Au-delà du garage: plus de projets DIY Smart Home

Les cartes relais peuvent changer de tension secteur et peuvent donc contrôler la plupart des appareils ménagers. Ce projet peut servir de base à l’ajout intelligent de presque tout ce qui est alimenté. Les machines à café, l'éclairage, les climatiseurs sont tous prêts à être automatisés avec un Raspberry Pi et certains relais.

N'oubliez pas de consulter ces projets de domotique intelligente. 9 projets de domotique DIY intelligents pour un budget minime. 9 projets de domotique Smart DIY pour un budget restreint. La domotique n'est pas bon marché. Mais peut construire une maison intelligente avec un budget restreint! Ces neuf exemples vous montrent comment. Lire plus pour plus d'idées.

.