Étape 4: Code
Le code pour cela est légèrement différent de la plupart des autres projets Arduino parce qu’il n’y a pas de code dans la boucle. Au lieu de cela, elle opère hors d’interruptions signification code s’exécute seulement après l’entrée d’utilisateur ; dans ce cas, appuyez sur un des boutons. L’Arduino Pro Mini ne peut accepter que des interruptions sur les broches numériques 2 et 3. Une interruption est mises vers le haut afin que lorsque les broches, 2 ou 3 détecte une hausse de tension (tension passe à vif), exécuteront les fonctions attachées à l’interruption.
Un bouton est défini sur mesure et les autres commutateurs entre SI et les unités métriques. Unités SI sont signalées comme des pieds et pouces et unités métriques sont en cm. Le code par défaut des vitesses standards pour la vitesse du son, mais il y a aussi un facteur d’échelle (appelé fudgeFactor) qui peut être ajusté si vous trouvez que les valeurs sont systématiquement biaisées haute ou basse. La vitesse du son peut être influencée par de nombreux facteurs, y compris la température, l’altitude, et humidité donc expérimenter un peu pour voir si vous devez régler la variable fudgeFactor pour obtenir de bons résultats.
Le capteur à ultrasons est très simple et fonctionne en mettant la broche de transmission haute pendant quelques temps (j’utilise 10 millisecondes), puis tirant pulseIn faible et en utilisant sur l’axe de réception. Des impulsions dans le temps en microsecondes entre la fonction appelée et il se déclenche au niveau défini dans la fonction, dans notre cas forte des mesures. Après cela, nous pouvons utiliser ce temps (divisé par 2 pour tenir compte de l’aller-retour) pour calculer la distance.
Si vous n’avez jamais programmé un Arduino Pro Mini avant que vous pouvez chercher à l’étape 4 dans mon détecteur de mouvement avec LED Instructable débutants pour des instructions détaillées. Ce code devrait fonctionner sans modification pour une Arudino Uno ainsi.
J’ai intégré le fichier .ino ici et vous pouvez trouver le code sur ma page de GitHub ici.