Sunteți pe pagina 1din 7

1.

TITULO
TOTALIZADOR CON SENSOR ULTRASONICO
2. OBJETIVO
Realizar un dispositivo que haga un conteo automtico de objetos de
diferente tamao en una lnea de produccin (faja transportadora) a travs
de un sensor ultrasnico.
3. PROCESO EMPLEADO
4. ANTECEDENTES

Tutorial: sensor ultrasonidos HC-SR04


El sensor de ultrasonidos se enmarca dentro de los sensores para medir distancias o
superar obstculos, entre otras posibles funciones.
En este caso vamos a utilizarlo para la medicin de distancias. Esto lo consigue
enviando un ultrasonido (inaudible para el odo humano por su alta frecuencia) a
travs de uno de la pareja de cilindros que compone el sensor (un transductor) y
espera a que dicho sonido rebote sobre un objeto y vuelva, retorno captado por el otro
cilindro.
Este sensor en concreto tiene un rango de distancias sensible entre 3cm y 3m con una
precisin de 3mm.

Qu recibimos en el sensor?
El tiempo que transcurre entre el envo y la recepcin del ultrasonido.
Cmo vamos a traducir dicho tiempo en distancia?
Aprovechando que la velocidad de dicho ultrasonido en el aire es de valor 340 m/s, o
0,034 cm/microseg (ya que trabajaremos con centmetros y microsegundos). Para

calcular la distancia, recordaremos que v=d/t (definicin de velocidad: distancia


recorrida en un determinado tiempo).
De la frmula anterior despejamos d, obteniendo d=vt, siendo v la constante
anteriormente citada y t el valor devuelto por el sensor a la placa Arduino.
Tambin habr que dividir el resultado entre 2 dado que el tiempo recibido es el tiempo
de ida y vuelta.
Material
Sensor ultrasonidos HC-SR04
Placa Arduino UNO
Cables
Cable USB
Protoboard
Conexiones

El sensor consta de 4 pines: "VCC" conectado a la salida de 5V de la placa, "Trig"


conectado al pin digital de la placa encargado de enviar el pulso ultrasnico, "Echo" al
pin de entrada digital que recibir el eco de dicho pulso y "GND" a tierra.
Programa
long distancia;
long tiempo;

void setup(){
Serial.begin(9600);
pinMode(9, OUTPUT); /*activacin del pin 9 como salida: para el
pulso ultrasnico*/
pinMode(8, INPUT); /*activacin del pin 8 como entrada: tiempo del
rebote del ultrasonido*/
}
void loop(){
digitalWrite(9,LOW); /* Por cuestin de estabilizacin del sensor*/
delayMicroseconds(5);
digitalWrite(9, HIGH); /* envo del pulso ultrasnico*/
delayMicroseconds(10);
tiempo=pulseIn(8, HIGH); /* Funcin para medir la longitud del pulso
entrante. Mide el tiempo que transcurrido entre el envo
del pulso ultrasnico y cuando el sensor recibe el rebote, es decir:
desde que el pin 12 empieza a recibir el rebote, HIGH, hasta que
deja de hacerlo, LOW, la longitud del pulso entrante*/
distancia= int(0.017*tiempo); /*frmula para calcular la distancia
obteniendo un valor entero*/
/*Monitorizacin en centmetros por el monitor serial*/
Serial.println("Distancia ");
Serial.println(distancia);
Serial.println(" cm");
delay(1000);
}

MOTIVACION

COMPONENTES CIRCUITO DE PRUEBA


1 LCD 160 2A
1 Sensor Ultrasnico HC SR04
1 ARDUINO UNO R3
1 Potencimetro 10 k
1 Res 10-30
CABLES CONECTORES

(VARIOS)

ALAMBRE CONDUCTOR AWG 24 (VARIOS)


COMPONENTES CIRCUITO FINAL
1 C ATMEGA 328
1 OSCILADOR 16 MHz

1 INTEGRADO 7805
2 CAPACITORES 18-22 Pf
2 CAPACITORES 10F
1 RES 10K
1PULSADOR N/A
1 BATERIA 9 V
1 ZOCALO PARA C
MATERIALES
PASTA DE SOLDAR
PISTOLA DE SOLDAR
ESTAO
CABLES
PLACA PCB (GALLETA)

LINEAS DE PROGRAMA
#include <LiquidCrystal.h>
LiquidCrystal lcd(9,8,7,6,5,4);
#define Pecho 10
#define Ptrig 2
long duracion, distancia;
int CAJA=0;
int cajaB=0;
void setup() {
lcd.begin(16,2);
lcd.setCursor(4,0);
lcd.print("PROYECTO ");
lcd.setCursor(2,1);
lcd.print("ELECTRONICO");
delay(3000);
lcd.clear();
pinMode(Pecho, INPUT);
pinMode(Ptrig, OUTPUT);
pinMode(13, 1);
}

void loop() {
digitalWrite(Ptrig, LOW);
delayMicroseconds(2);
digitalWrite(Ptrig, HIGH);
delayMicroseconds(10);
digitalWrite(Ptrig, LOW);
duracion = pulseIn(Pecho, HIGH);
distancia = (duracion/2) / 29;
lcd.setCursor(0,0);
lcd.print("CAJA B=");
lcd.setCursor(0,1);
lcd.print("caja S=");
if(distancia <= 50 && distancia >= 20){
cajaB++;
lcd.setCursor(8,1);
lcd.print(cajaB);
}
if (distancia <= 19 && distancia >= 1){
CAJA++;
lcd.setCursor(8,0);
lcd.print(CAJA);
}
delay(200);
}
DIAGRAMA DE CONECCION

MEDICIN DE DISTANCIA POR ULTRASONIDO CON EL HC-SR04


El HC-SR04 es modulo sensor de distancia por ultrasonido que trae 4 terminales, dos
de alimentacin y dos para envo y recepcin.
Uno de los terminales se llama trigger o disparador, es el encargado de indicarle al dispositivo
que enve la seal ultrasnica este terminal por lo menos debe estar 10 microsegundos en alto
para que enve una seal ultrasnica.
El otro terminal se llama echo o terminal de deteccin de eco, este terminal se coloca en alto
cuando se hace el envo de la seal ultrasnica, y se coloca en bajo cuando hace recepcin por
medio de eco o rebote de esta sobre un objeto.
Para determinar la distancia recorrida en centmetros, se cuenta el tiempo que trascurre desde
que se coloca en alto el terminal de eco y este regresa a bajo, se puede contar
cada 58 microsegundos para obtener una relacin en centmetros.
Calculo De La Velocidad Del Sonido
En este ejemplo se trabajara con la velocidad a 20 grados centgrados que es V=343 m/s.
Se aplica el siguiente procedimiento para hallar el tiempo en microsegundos equivalente a
un centmetro.

Pasamos la velocidad a centmetros por segundo, esto da V=34300 cm/s

Calculamos el tiempo con la ecuacin distancia = velocidad/tiempo, despejamos tiempo


y tenemos la ecuacin t=d/v, reemplazando por los valores t=1cm/(34300cm/s) luego t =
0,000029155s

Como la seal va y vuelve hace el doble de la distancia que se desea medir, por lo
tanto tomara el doble de tiempo, as que mediremos el doble de tiempo
luego=0,000058309s, finalmente pasamos este valor a microsegundos t=58,309us que para
efecto prctico lo aproximaremos a t=58us en el programa.

Tener en cuenta que la velocidad del sonido es mayor cuando aumenta la temperatura,
aproximadamente 0.6m/s por cada grado centgrado.

IMAGEN

DISEO EN PROTEUS

S-ar putea să vă placă și