Table des matières:

Ouvre-porte de garage IPhone et Arduino : 8 étapes
Ouvre-porte de garage IPhone et Arduino : 8 étapes

Vidéo: Ouvre-porte de garage IPhone et Arduino : 8 étapes

Vidéo: Ouvre-porte de garage IPhone et Arduino : 8 étapes
Vidéo: Piratage des portails electriques : un jeu d'enfant ! 2024, Novembre
Anonim
Ouvre-porte de garage IPhone et Arduino
Ouvre-porte de garage IPhone et Arduino

Je suis souvent beaucoup d'instructables techniques et je suis toujours étonné des choses que les gens proposent. Il y a quelque temps, j'ai trouvé un instructable sur un ouvre-porte de garage wifi que j'ai trouvé vraiment cool et je l'ai ajouté à ma liste de tâches sans fin de projets amusants. Avance rapide jusqu'au présent, et je n'avais toujours pas abordé le projet. Mais j'ai eu un bébé (enfin, ma femme l'a fait, pas moi). Mes beaux-parents ont eu la gentillesse d'offrir des soins de 5 jours chez moi (oui, je suis gâté) mais ils m'avaient supplié de leur donner un cliquet de porte de garage à garder dans leur voiture, plutôt que d'avoir à utiliser le clavier capricieux à l'extérieur du garage. Donc, deux options s'offraient à moi. Prenez les cinq minutes pour reprogrammer leur clicker pour mon garage. Ou, prenez quelques semaines pour enfin travailler sur mon projet d'ouvre-porte de garage. Et donc, bingo-bango, mon instructable est né.

Je suis revenu à la publication d'origine et j'ai aimé de nombreuses fonctionnalités matérielles utilisées par l'auteur, mais le logiciel n'est pas exactement ce que je voulais. La solution que je souhaitais devait donc avoir les caractéristiques suivantes:

  • Pas besoin de mot de passe
  • Ne devrait fonctionner que lorsqu'il est connecté au réseau local de ma maison
  • Application personnalisée sur mon iPhone pour le contrôler
  • Utilisez un Arduino avec un shield Ethernet ou wifi
  • Faites-en la preuve par la loi

Étape 1: ce dont vous avez besoin

De quoi as-tu besoin
De quoi as-tu besoin
De quoi as-tu besoin
De quoi as-tu besoin
De quoi as-tu besoin
De quoi as-tu besoin

"load="lazy" mon code écrit et téléchargé à la fois sur l'Arduino et l'iPhone, il était temps de déboguer. Comme je n'avais pas encore tout connecté à mon garage, je voulais imiter son comportement d'une manière ou d'une autre..

J'ai branché deux LED rouges et deux LED vertes, comme indiqué sur une photo précédente. Un ensemble de vert et de rouge représenterait la porte de gauche et l'ensemble restant pour la porte de droite. Si l'une des portes était fermée, le voyant vert clignoterait sans arrêt. Sinon, si une porte était ouverte, le voyant rouge clignoterait. J'ai choisi l'état initial des portes à fermer (voyants verts clignotants) car lors de la première connexion de l'Arduino à l'ouvre-porte, je vais m'assurer que les portes sont fermées.

Pour voir comment cela fonctionne, vous pouvez regarder la courte vidéo (res de merde -- désolé !) de celui-ci en action. Voila ! Fonctionne jusqu'à présent !

Étape 7: le brancher

Depuis que mon imprimante 3D est en réparation, je n'ai pas encore eu l'occasion d'imprimer un boîtier. L'instructable antérieur sur lequel j'ai basé celui-ci a des fichiers.stl disponibles en téléchargement. (Remarque: si vous prévoyez d'utiliser les fichiers.stl, les unités sont en cm, après correspondance avec l'auteur. J'ai dû redimensionner mes fichiers.stl par un facteur 10 car mon imprimante fonctionne en unités de mm). Je vais devoir modifier le design car j'ai deux portes et j'ai donc besoin de deux relais. Mais comme je suis impatient de tout brancher, j'ai commencé à monter l'électronique sur un morceau de bois qui traînait. Donc, je ne présenterai pas le produit fini absolu dans ce instructable.

Une fois l'électronique montée sur le morceau de bois que j'avais, il était simple de lui trouver une maison temporaire sur le mur. Sur les images, vous pouvez voir un peu de désordre de fils allant du routeur à l'Arduino, de l'Arduino au relais et enfin du relais aux boutons de la porte de garage. Lorsque j'ai enlevé le bouton et dévissé le boîtier du mur, il n'y avait que deux bornes. Ainsi, tout comme l'instructable sur lequel j'ai utilisé le mien, vous pouvez accrocher les fils du relais dans n'importe quel ordre aux bornes du bouton de la porte.

Après cela, toute la configuration a fonctionné comme par magie la première fois ! Désolé de ne pas avoir posté de vidéo. J'ai dû le démonter temporairement avant de pouvoir capturer une vidéo de son fonctionnement, mais je le jure !

Étape 8: Réflexions finales

Après avoir joué un peu avec cela, j'ai remarqué quelques problèmes que je mentionnerai ci-dessous. Ceux-ci sont assez importants, alors veuillez les considérer avant de décider de dupliquer ce projet.

  • Il y avait une latence incohérente entre le fait d'appuyer sur le bouton de l'iPhone et la réponse des portes de garage. Cela pourrait être un bogue de logiciel ou d'implémentation, mais je suis toujours en train de l'explorer.
  • Un gros problème: après avoir chargé l'application sur l'application iPhone, j'ai remarqué qu'après quelques jours, lorsque j'essayais d'ouvrir l'application, elle revenait simplement à l'écran d'accueil. C'était un comportement cohérent. Après m'être un peu creusé la tête, j'ai finalement craqué et j'ai posté la question sur stackoverflow. La réponse d'un collègue semblait être correcte: l'empire maléfique qu'est devenu Apple a décidé que si vous n'êtes pas un développeur, le certificat de confiance que vous obtenez de Xcode pour votre application nouvellement développée n'est valable que pour 1 semaine. Après cela, cela ne fonctionnera pas sur votre iPhone à moins que vous ne le réinstalliez (et que le compte à rebours d'une semaine se réinitialise) ou que vous leur payiez des frais de 99 $ pour un certificat plus long. J'ai trouvé cela complètement décourageant. Presque comme si j'avais perdu mon temps. Mais si vous êtes développeur, ce ne sera pas un problème pour vous.
  • Une pensée qui m'est venue à l'esprit était que si quelqu'un appuie manuellement sur le bouton de la porte de garage, cet événement n'est pas capturé dans le code Arduino. Ainsi, en ce qui concerne l'Arduino, l'état de la porte reste inchangé avant que le bouton ne soit enfoncé. De plus, si quelqu'un se tenait sous la porte alors qu'une autre personne utilisait l'application pour la fermer. Les capteurs de porte forceront la porte à remonter et cet événement n'est pas non plus capturé dans le code Arduino. Inutile de dire que c'est un autre point à comprendre.

Alors merci d'avoir supporté avec moi et encore une fois, je m'excuse pour certains comportements de buggy. S'il vous plaît laissez-moi savoir si vous avez des questions!

Conseillé: