Table des matières:

Ouvre-porte de garage Raspberry Pi : 5 étapes
Ouvre-porte de garage Raspberry Pi : 5 étapes

Vidéo: Ouvre-porte de garage Raspberry Pi : 5 étapes

Vidéo: Ouvre-porte de garage Raspberry Pi : 5 étapes
Vidéo: HAADE - Domotiser sa porte de garage pour 5 euros 2024, Novembre
Anonim
Ouvre-porte de garage Raspberry Pi
Ouvre-porte de garage Raspberry Pi

Notre clavier de 15 ans qui nous permet d'ouvrir la porte du garage est en train de mourir lentement, avec plusieurs boutons qui s'enregistrent à peine, ce qui rend difficile pour nos adolescents (ou dog sitter) d'entrer dans la maison lorsqu'ils oublient leur clé.

Au lieu de le remplacer et de sauter à travers les cerceaux de la reprogrammation, j'ai décidé d'aller un peu plus dans la haute technologie et de le remplacer par quelque chose qui ne nécessitait que l'accès à notre wifi et un téléphone à utiliser.

J'ai utilisé un Pi Zero Wireless et un relais à 2 canaux que j'avais laissés d'un autre projet, ce qui me permet de contrôler à la fois la porte et les lumières intégrées à l'ouvre-porte de garage. Parce que j'avais une vieille caméra USB de rechange qui traînait autour de la poussière, je l'ai utilisée à la place d'une PiCam, mais ce n'était que par commodité. Cela fonctionnerait très bien avec n'importe quelle caméra prise en charge - il n'y a rien de spécial à propos de la mienne, juste que Raspbian la prend en charge.

Contrairement à d'autres projets similaires, j'ai essayé de rester aussi simple que possible, en utilisant des progiciels "standard" qui sont assez faciles à installer et à exécuter si vous suivez les instructions. Cette photo montre mon installation finale (pas jolie du tout, mais c'est mon garage), y compris le Pi, le module relais et la webcam USB pointée vers la porte. Il n'y a aucune raison particulière d'utiliser le Pi Zero - n'importe quel Pi ferait l'affaire, tant que vous pouvez le connecter à votre réseau interne, et le wifi rend cela facile.

Étape 1: connexion au panneau de commande existant

Connexion au panneau de commande existant
Connexion au panneau de commande existant

Premièrement, LE VTRE PEUT ÊTRE DIFFÉRENT! Le mien a une seule paire de fils allant de l'ouvre-porte de garage au panneau de commande sur le mur. Puisqu'il n'y a que deux fils, qui semblaient avoir environ 18 volts lors des tests, j'étais un peu confus au début quant à la façon dont exactement cette chose peut contrôler plusieurs fonctions. JE PENSE que chaque bouton momentané complète simplement le circuit, mais avec différents niveaux de résistance. Ensuite, l'unité principale peut lire cette résistance via différentes chutes de tension et effectuer l'action correcte. Cependant, rien de tout cela n'a d'importance, à moins que vous n'essayiez de remplacer complètement l'unité de contrôle par le Pi. Je ne sais pas pourquoi vous voudriez faire cela, car c'est bien d'avoir toujours l'unité physique en place.

AAAAAnnnyway, tout ce que vous avez à faire est de reproduire les différentes pressions de bouton en connectant les commutateurs momentanés du PCB à votre module de relais. C'était la seule soudure que j'avais à faire, et les pastilles sur le PCB étaient assez grosses, donc c'était assez simple. Laissez ces fils assez longs pour le moment, car il est beaucoup plus facile de raccourcir un fil que de l'allonger plus tard, à moins que vous n'ayez un tendeur de fil ACME, mais ceux-ci sont assez rares.

Étape 2: Câblage de la carte relais

Câblage de la carte relais
Câblage de la carte relais
Câblage de la carte relais
Câblage de la carte relais

Pas grand chose à dire ici, il suffit de tout connecter comme sur les photos. Sur le module à 2 relais Sainsmart, les broches JC-VCC et VCC doivent être reliées ensemble, à moins que vous ne vouliez utiliser une alimentation complètement séparée pour elles, mais pour cette utilisation, c'est bien excessif. Connectez GND à une broche Pi GND, VCC à une broche 5v et IN1 et IN2 aux broches GPIO que vous souhaitez utiliser. Puisque vous allez simplement les utiliser comme bascules HAUT/BAS, peu importe lesquelles.

Étape 3: Installation du logiciel

Installation du logiciel
Installation du logiciel

C'est probablement l'étape qui prend le plus de temps, car vous allez regarder les choses se télécharger et s'installer pendant un certain temps. Regardez youtube ou quelque chose pendant que certains de ces éléments sont installés.

Je ne vais pas expliquer comment installer Raspbian. Si vous ne savez pas encore comment faire cela, allez peut-être d'abord chercher sur Google des tutoriels de type "hello world". Dans tous les cas, il est probablement préférable d'utiliser une nouvelle installation de Raspbian Lite. Il n'y a pas besoin d'interface graphique pour ce projet, et c'est juste une surcharge supplémentaire. raspberrypi.org peut vous guider tout au long de ce processus.

Activez SSH et (si vous le souhaitez) configurez une IP statique pour votre Pi (encore une fois, il existe plusieurs tutoriels sur la façon de le faire, écrits par de meilleurs auteurs que moi) ou encore mieux, configurez votre routeur/serveur DHCP pour attribuer une IP statique à votre Pi.

Si vous voulez un service vidéo agréable, facile à installer et à utiliser, installez MotionEye. C'est probablement exagéré, mais c'est l'une des installations qui "fonctionne" à chaque fois, et elle possède une interface Web agréable et facile à utiliser. Vérifiez le ici:

github.com/ccrisan/motioneye/wiki/Install-… Suivez ces instructions en utilisant sudo avant chaque commande, et vous aurez une belle configuration de streamer vidéo. Il n'est pas exactement nécessaire d'avoir un flux vidéo si tout ce qui vous intéresse est d'ouvrir votre porte quand vous pouvez le voir, mais c'est bien d'avoir des commentaires.

Une fois Motioneye installé, visitez https://YourIPAddress:8765 et connectez-vous avec le nom d'utilisateur "admin" et un mot de passe vide. Vous aurez probablement besoin d'ajouter une caméra, qui devrait, encore une fois, « juste fonctionner » et au-delà de la portée de ces instructions.

Pendant que vous êtes connecté en tant qu'administrateur, cliquez sur le bouton "Paramètres avancés", puis définissez vos options vidéo. la porte était ouverte ou non, et vous n'avez pas besoin de lire les numéros de boîte aux lettres de l'autre côté de la rue.

Sous la zone de paramètres "Video Streaming", cliquez sur le lien "Streaming URL" et notez l'adresse qu'il vous présente. Vous en aurez besoin plus tard si vous envisagez de configurer l'interface de la même manière que moi.

Il existe plusieurs façons de contrôler vos broches GPIO. Pour ce projet, j'ai utilisé WiringPi, pour l'installer, suivez les instructions sur le site:

wiringpi.com/download-and-install/

Ou exécutez simplement les commandes suivantes sur votre Pi:

wget https://lion.drogon.net/wiringpi-2.50-1.debsudo dpkg -i câblagepi-2.50-1.deb gpio -v gpio readall

Cela devrait vous donner une liste de ce qui se passe avec vos broches GPIO.

Si vous utilisez les broches 4 et 17 (dans le schéma de numérotation BCM), vous pouvez tester vos connexions avec les commandes suivantes. Notez que le réglage de la broche LOW activera les relais si vous utilisez ce module Sainsmart. Le vôtre peut être différent, et vous devrez vous y adapter. Lors de l'exécution de ces commandes, vous devriez entendre les relais s'enclencher et la ou les LED devraient s'allumer.

gpio -g mode 17 sortie

gpio -g écriture 17 0 gpio -g écriture 1 1 gpio -g mode 4 sorties gpio -g écriture 4 0 gpio -g écriture 4 1

OK, maintenant nous pouvons passer à la création de l'interface utilisateur.

Étape 4: Création de l'interface

Faire l'interface
Faire l'interface

J'ai utilisé Apache et PHP. Agréable et simple, rien d'extraordinaire. Encore une fois, cela a été mieux expliqué ailleurs, alors suivez simplement les instructions trouvées ici:

www.raspberrypi.org/documentation/remote-a…

La "racine" de votre serveur Web, par défaut, se trouve à /var/www/html/ avec un index.html par défaut qui vous donne des informations sur votre serveur Web. Vous allez remplacer cet index.html, vous pouvez donc le supprimer ou le renommer en quelque chose d'autre comme index.copy. J'ai également fait de l'utilisateur "pi" le propriétaire du répertoire html, juste pour être paresseux au sujet des autorisations. Enfin, j'ai créé un répertoire pour stocker mes images, il y en a deux. Un qui est juste un retour stupide qu'un bouton a été enfoncé, et un autre qui peut être utilisé pour une icône sur l'écran d'accueil d'un téléphone.

pi@porte de garage:~ $ cd /var/www/html/

pi@garagedoor:/var/www/html $ sudo chown pi.pi@garagedoor:/var/www/html $ mv index.html index.copy pi@garagedoor:/var/www/html $ mkdir images

Il existe un nombre infini de façons de créer un site Web, mais j'ai choisi de le garder aussi simple et facile que possible en fonction de mes compétences. Par conséquent, PHP, puisque je le sais. Si vous êtes un gourou de Python ou un autre langage de script, n'hésitez pas à l'utiliser.

J'ai créé une page index.html "conteneur" qui a en fait deux iframes qui font tout le travail. L'un des iframes contient les boutons/liens qui déclenchent réellement les relais via GPIO, et un autre iframe qui affiche la vidéo. Il contient également des liens vers une image-p.webp

L'iframe index.html contenant les boutons a le fichier button.html comme contenu. (drôle de comment ça marche, hein ?) Les deux liens dans button.html mènent à action.php avec une valeur de variable GET unique. En fonction de la valeur passée, action.php déclenchera soit la porte, soit le bouton d'éclairage. Vous pouvez obtenir le code HTML et PHP sur mon github:

Placez tout le code HTML et PHP dans le répertoire racine (/var/www/html/), mettez à jour le code si nécessaire avec le nom de l'image que vous utilisez peut-être pour la confirmation en appuyant sur un bouton et l'adresse de votre flux vidéo. Tu te souviens quand je t'ai dit que tu en aurais besoin, à l'étape précédente ?

Étape 5: Essayez-le

OK, maintenant que tout est câblé et installé, tout fonctionne parfaitement du premier coup, n'est-ce pas ? Doux!

Conseillé: