Étape 8: Le PIC et le capteur ultrasonique
Le HC-SR04 a quatre épingles :
GND - constant Cette broche se connecte aux broches au sol du schéma
VCC - rail d’alimentation Cette broche doit être liée à la ligne d’alimentation de notre circuit, qui - dans mon cas est fournie par un régulateur 5V de décrochage basse.
L’organisme de réglementation aura un peu de chaleur, car la batterie est un carré de 9V en forme un. Cela signifie une baisse de 4V, donc nous avons besoin pour s’assurer que nous n’exiger trop de courant à travers elle. Je n’ai pas utilisé un dissipateur thermique à protéger, les processeurs et le MAX7219, et le reste des composants ne devraient pas atteindre 200mA consommation actuelle. Puisque le LED-s sont multiplexées, la LED actuelle est prise en compte qu’une seule fois.
TRIG - l’ergot
L’utilisateur doit fournir une microseconde longue impulse sur cette broche, puis d’attendre l’écho arriver sur la broche de l’écho. Notez que l’écho est élevé dans les premières dizaines de millisecondes, assurez-vous que vous attendez que lors de l’initialisation.
Cette broche est affirmée, une minuterie est démarrée, comptage s’arrête quand le pouls de l’écho est détecté. Depuis le numéro dans le registre de compteur, nous savons le temps nécessaire pour le son de se remettre d’un éventuel obstacle. Nous savons la vitesse du son : on peut calculer la distance !
ECHO - goupille de l’écho Cette broche est utilisée pour détecter les ondes sonores réfléchies. J’ai branché sur une broche qui a une capacité d’interruption-sur-change. Un front montant s’arrête le compteur mentionné précédemment et l’enregistre dans une variable, qui est traitée peu après. Pour plus d’infos sur IOC, consultez la fiche technique du processeur.
Une photo de mon capteur, face inférieure.
Dessus du capteur, avec sur la gauche, l’émetteur et le récepteur sur la droite. CalendrierLe calendrier des impulsions est indiqué dans la fiche technique de ce module. Comme mentionné précédemment, vous devrez patienter dehors la premières ~ 100 ms, puis donner 10 microsecondes impulsions de gâchette sur la broche TRIG. Ce qui donne une telle impulsion se traduit par une rafale de 8 cycle venant de l’émetteur « speaker ». Ensuite, il faut attendre pour un écho à venir. L’écho est capturé par le récepteur et transformé en une impulsion de longueur variable sur l’axe de l’ECHO. La longueur de cette pulsion d’écho est directement proportionnelle à la distance de l’obstacle. La fiche technique donne une formule simple pour calculer ceci :
distance [cm] = t mesuré [microsecondes] / 58
Ceci renverra la distance en centimètres. J’ai seulement diviser par 5.8, donc la distance est retournée en millimètres. Je vais utiliser quatre chiffres, c’est le meilleur pour cette plage et de la résolution.
Nous allons jeter un oeil à cela d’un œil plus rapide, mon analyseur logique :
Comment peut-on mesurer la durée d’impulsion à l’aide d’un processeur ? Avec les interruptions externes. Je vais utiliser un front montant IOC pour lancer une horloge et un front descendant de le pour arrêter. Les données du Registre nous disent que le temps qui passait entre les deux bords. Nous avons, nous pouvons calculer la distance, en suivant les instructions de la feuille de données.
Il y a une minuterie dans le fond, lorsqu’il détecte un front montant, qu'il démarre. Un front descendant va déclencher son arrêt, nous utilisons la valeur dans les registres de la minuterie pour savoir le temps écoulé entre les deux bords. Avec d’autres mots : nous utilisons une minuterie comme un compteur. La variable PulseLength est mis à jour dans la routine d’interruption du service.
WASTE_10_US() ; est une macro que j’ai écrit, il se compose d’instructions d’assemblage assez « nop » de gaspiller un temps total de 10 microsecondes.
Mise en place du capteur à l’intérieur de l’enceinte
Lucky me, le HC-SR04 parfaitement s’insère dans la partie supérieure de mon boîtier. J’ai foré deux trous, que s’est creusé à leur place, eux empilés jusqu'à ce que j’ai pu pousser les « intervenants » dans les trous. Parce que j’ai été serré sur l’espace dans ce domaine, j’ai eu à souder l’oscillateur du haut du côté de la face inférieure. L’inutile réglette à broches quatre broche était également débarrassé de.
Lorsque vous alimentez cette place ainsi que ma carte mère, j’ai vécu quelque chose je pense que je devrais mentionner ici. L’étape suivante consiste à faibles abandon régulateurs.