Étape 2: Programmer votre Arduino
Vous voudrez télécharger notre croquis avant tout de l’électronique faisant, nous pouvons les tester comme nous allons. Le code est joint ci-dessous et commentaires tout au long d’a. Vous devez avoir votre Arduino logiciels/pilotes installés pour cette étape !1) Télécharger le fichier joint ci-dessous
2) Connectez votre Arduino à l’entrée USB de votre ordinateur.
3) ouvrir le fichier dans un Arduino Sketch (ou si cela donne vous troubler, modifiez le fichier en .txt et copiez/collez le code dans une esquisse de vide) et il compile/vérifier
4) transférez-le sur votre Arduino !
Dans les étapes à venir, je vais vous donner des conseils de dépannage comportant des parties spécifiques du code (certains paramètres devront être tordu pour chaque système). Pour tous ceux intéressés par les détails du code, j’ai inclus un résumé ci-dessous. L’esquisse est bien commenté tout au long, mais c’est un fichier assez important et un peu maladroit d’interpréter à la fois (n’hésitez pas à faire cela plus élégante et n’oubliez pas de partager n’importe quel succès dans les commentaires!).
Lignes 4-33 : définit les épingles Arduino, constantes et variables, nous allons utiliser dans le code.
-Vous voudrez probablement modifier celles-ci à votre porte/système. Je vous guiderai à travers ce
Lignes 35-47 (setup): définit la broche modes et ouvrir la série suivi
Lignes 49-84, (boucle): définit le comportement du circuit dans l’attente d’entendre (voir) un coup (flash)
-C’est où nous avons mis en place la fonctionnalité fond/moyenne, qui continuellement échantillonne les données et étalonne des valeurs seuils en conséquence. Si un signal lumineux ou sonore est inscrit au-dessus de la valeur de seuil, puis il exécute « listenToSecretKnock »
Lignes 86-161 (listenToSecretKnock): enregistre les coups enregistrés par le micro
-Enregistre le temps entre les coups (longueur de retard) dans un tableau et envoie les données à validateKnock. Partie de cette section est dédiée à diriger les indicateurs LED, cligner des yeux le long dans le temps avec les coups enregistrés. Si le verrou est vérifié, la porte se verrouiller ou déverrouiller la porte lorsqu’elle dépend de la "doorState" (qui indique si notre dernière verrouillé ou déverrouillé).
163-238 (listenToSecretPhotoKnock) les lignes : enregistrements, le voyant clignote enregistrés par la photodiode
-Essentiellement les mêmes que les lignes 86-161, mais maintenant avec la photodiode/paramètres du signal. Il s’agit d’un bon endroit pour commencer si vous cherchez à simplifier le code un peu plus, puisqu’il reprend beaucoup de ce qui est utilisé plus tôt (sur ma todo list)
Lignes 239-255 (triggerDoorUnlock): le moteur s’allume pour déverrouiller la porte
-Comprendre le présent article est lié à connaître le comportement d’un pont en h, qui dicte la direction de la tension dans le moteur. Vous pouvez regarder vers le haut de la feuille de speck pour votre puce pour mieux comprendre (c’était celui que j’ai utilisé : http://html.alldatasheet.com/html-pdf/28616/TI/SN754410NE/24/1/SN754410NE.html)
Lignes 257-272 (triggerDoorLock): va le moteur en sens inverse pour verrouiller la porte
-Cette section aussi reprend certains codes et peut-être bénéficier d’un peu de nettoyage.
Lignes de 274-349 (validateKnock): vérifie si l’enchaînement est un match à la clé.
-Cela normalise chaque coup à la plus longue pause et compare les intervalles relatifs entre les coups. Cela signifie que vous pouvez faire le même modèle, lent ou rapide, et il devrait toujours déclencher le moteur.