Paso 8: El PIC y el sensor de ultrasonidos
La HC-SR04 tiene cuatro pins:
GND - Masa común Este pin se conecta a los pines de tierra del esquema
VCC - alimentación Este pin debe estar atado a la línea de alimentación de nuestro circuito, que - en mi caso es proporcionada por un regulador de 5V baja deserción.
El regulador tendrá algo de calor, como la batería es un 9V cuadrada en forma de uno. Esto significa una caída de 4V, así que tenemos que asegurarnos de que no dibujar demasiada corriente a través de él. Yo no he utilizado un disipador de calor para proteger, los procesadores y el MAX7219, y el resto de los componentes no debe llegar a 200mA en consumo de corriente. Ya que los LEDs son multiplexados, el LED de corriente se tiene en cuenta sólo una vez.
TRIG - pasador del gatillo
El usuario tiene que proporcionar un microsegundo de tiempo impulso en este pin, entonces espere a que el eco llegar en la clavija de echo. Tenga en cuenta, que el eco es alto en las primeras decenas de milisegundos, asegúrese de que usted espere hacia fuera en la inicialización.
Este pin es afirmado, se inicia un temporizador, cuenta se detiene cuando se detecta el pulso eco. Desde el número en el registro de contador sabemos que el tiempo necesario para que el sonido volver de un eventual obstáculo. Sabemos que la velocidad del sonido - podemos calcular la distancia!
Eco - pin eco Este pin se utiliza para detectar las ondas de sonido reflejadas. Que conectado a un pin que tiene capacidad de interrupción en cambio. Un flanco ascendente detiene el contador mencionado anteriormente y guarda en una variable, que es procesada poco después. Para obtener más información acerca de IOC, Compruebe la hoja de datos del procesador.
Una foto de mi sensor, parte inferior.
Parte superior del sensor con el transmisor a la izquierda y el receptor de la derecha. De la sincronizaciónLa sincronización de los impulsos se muestra en la hoja de datos de este módulo. Como se mencionó antes, debe esperar a que la iniciales ~ 100 ms, luego dar microsegundo 10 pulsos de disparo en el pasador de TRIG. Darle tal impulso se traduce en una explosión de 8 ciclo desde el transmisor, el 'speaker'. Entonces, tenemos que esperar para que un eco por venir. El eco es captado por el receptor y transformado en un impulso de longitud variable sobre el pin eco. La duración de este impulso de eco es directamente proporcional con la distancia hasta el obstáculo. La hoja de datos da una fórmula simple para calcular esto:
distancia [cm] = t medido [microsegundos] / 58
devolverá la distancia en centímetros. Sólo divido por 5.8, por lo que consigue devuelve la distancia en milímetros. Voy a utilizar cuatro dígitos, que es lo mejor para esta gama y la resolución.
Echemos un vistazo a esto con un ojo más rápido, mi analizador lógico:
¿Cómo podemos medir longitud de pulso usando un procesador? Con interrupciones externas. Utilizaré un flanco ascendente IOC para iniciar un temporizador y un flanco descendente para detenerlo. Los datos del registro nos dice que el tiempo transcurrido entre los dos bordes. Tenemos que, podemos calcular la distancia, según lo indique la hoja de datos.
Hay un temporizador en el fondo, cuando se detecta un flanco ascendente empieza para arriba. Un flanco descendente activará su parada, estamos utilizando el valor de los registros de contador de tiempo para averiguar el tiempo transcurrido entre los dos bordes. Con otras palabras: estamos usando un timer como un contador. La variable PulseLength se actualiza en la rutina de servicio de interrupción.
WASTE_10_US(); es una macro que escribí, consta de suficientes instrucciones "nop" para un tiempo total de 10 microsegundos.
Ajuste el sensor en la caja
Lucky me, HC-SR04 cabe perfectamente en la parte superior de mi recinto. Perforar dos orificios, que amplió hasta, los apilados hasta que fui capaz de empujar las 'hablantes' por los agujeros. Porque estaba apretada sobre el espacio en esa zona, tuve que soldar el oscilador de la parte superior a la parte inferior. El inútil jefe del pin cuatro pin también fue librado de.
Cuando esta alimentación junto con mi consejo principal, experimenté algo que me parece que debo mencionar aquí. El siguiente paso es sobre los reguladores de salida baja.