ARDUINO M2 CLASE 1

Sensor de Ultrasonido


En este proyecto se usa el sensor de ultrasonido HC-SR0, el cual nos brinda la informacion de la distancia de un objeto que se encuentra al frente del sensor. Así mismo, usamos un LED que cuando se apaga nos indica que el objeto esta fuera del rango.

Hardware Requerido


  • Tarjerta Arduino
  • Sensor de ultrasonido
  • Resistencia (220 ohm)
  • LED

Circuito


El HC-SR04 sensor ultrasónico es un sensor de proximidad / distancia muy asequible que se ha utilizado principalmente para evitar objeto endiversos proyectos de robóticaEn esencia, le da a sus ojos Arduino / conciencia espacial y puede impedir que el robot se estrelle o se caiga de una mesa. También se ha utilizado en aplicaciones de torreta, sensores de nivel de agua, e incluso como un sensor de aparcamientoEste sencilloproyecto utilizará el sensor HC-SR04 con un Arduino y el Serial Monitor para ver la distancia obtenida.
Como funciona el sensor de ultrasonido?
Funciona igual que un pequeño radar. Emite un pulso de sonido a una frecuencia tan alta que es imperceptible para el oído humano y cronometra el tiempo que el sonido tarda en llegar a un obstáculo, rebotar y volver al sensor. Como la velocidad de propagación del sonido en el aire es un dato conocido (343.2 m/s) , solo se aplica la formula (e = v * t) y calculamos la distancia recorrida por el sonido.
Si por ejemplo, tenemos un objeto a 10 centímetros, a una velocidad de 34300 centímetros por segundo, obtendremos un tiempo de T=10/34300=2.92*10^-4 segundos. Éste será el tiempo que la señal tardará en llegar a un objeto situado a 10 centímetros, pero, la señal tiene que volver al receptor, por lo que se empleará el doble de tiempo. Necesitamos un tiempo de ida, que rebote, y que vuelva, tardando lo mismo que a la ida. Debido a esto, tendremos que dividir la fórmula anterior por 2. Así, tendremos en cuenta el tiempo de ida y el tiempo de vuelta.

Esquemático


Código: 



int echoPin=7; // Pin Echo
int trigPin=8;//    Pin Trigger
int LEDPin=13; // Pin LED

int maximo_rango = 450; //cm
int minimo_rango = 2; //  cm
long duracion, distancia;

void setup() {
 Serial.begin (9600);
 pinMode(trigPin, OUTPUT);
 pinMode(echoPin, INPUT);
 pinMode(LEDPin, OUTPUT);
}

void loop() {

distancia=obtener_distancia();

// verifico que el obstáculo se encuentre dentro del rango
// en este caso la precisión del sensor es 2 a 450 cm 

 if (distancia >= maximo_rango || distancia <= minimo_rango) 
{
   Serial.println("-1");
   digitalWrite(LEDPin, LOW);
 }
 else {
  Serial.println(distancia);
   digitalWrite(LEDPin, HIGH);
 }
 
 delay(50);
}

/*
Un pulso ultrasónico se  transmite y se refleja en un objeto, el sensor 
recibe el pulso y lo convierte en una señal eléctrica. El siguiente pulso
podrá ser transmitido cuando el eco desaparezca. Si un pulso de anchura 10 µs
es mandado al pin de trigger (en nuestro caso el pin digital número 8), 
el ultrasonido enviará ocho señales y detectará el eco desde el pin de ECHO 
(en nuestro caso será el pin digital 7). La medida de la distancia es proporcional
al ancho de pulso del eco, el cual puede ser calculado por fórmula.
*/

long obtener_distancia(void)
{
  digitalWrite(trigPin, LOW);
 delayMicroseconds(2);

 digitalWrite(trigPin, HIGH);
 delayMicroseconds(10);
 
 digitalWrite(trigPin, LOW);
 duracion = pulseIn(echoPin, HIGH);
 
 distancia = duracion/58.2;
return(distancia);

}




SENSOR DE SONIDO CON ARDUINO

Sensor de sonido con Arduino

Objetivos:
  • Conocer el manejo del sensor de sonido (micrófono)

Hardware Requerido


  • Tarjerta Arduino
  • Sensor de sonido
  • Resistencia (220 ohm)
  • LED

Descripción de lo que hace el montaje

El montaje es un sencillo sensor de sonido a la placa Arduino.
Mediante este sensor, si en un momento determinado se escucha un sonido, este montaje lo detecta. Se puede seleccionar la sensibilidad del sensor, para en función del volumen del sonido sea recogido o no.
El sensor empleado en este tutorial tiene un LED verde incorporado que te indica cuando percibe un sonido y cuando no. Si está encendido significa que está recibiendo sonido, si está apagado lo contrario.

Descripción del montaje

Se conecta la placa Arduino UNO a una fuente de alimentación, en este caso se conecta al ordenador.



Seguidamente se debe de conectar el sensor de sonido a la placa Arduino, vemos que hay 3 pines macho en el sensor: Vcc, GND y OUT. Vcc es el pin que se debe de conectar a la fuente de tensión (5V), GND es la toma a tierra y por último OUT es el pin de salida al que queremos conectar el sensor (en este caso se ha conectado a A0). Cabe destacar que este sensor recoge datos analógicos, por lo que debe de conectarse a los pines hembra de la parte analógica, no en la digital (cosa fácilmente confundible, pues se puede pensar que simplemente recoge sonido (1) o no recoge sonido (0), pero no es así).
Por último se debe de calibrar la sensibilidad del sensor (aquí la respuesta a porqué recoge datos analógicos y no digitales), para ello en la parte delantera se ve un regulador que mediante un tornillo de punta de estrella puede calibrarse al gusto.

Código: 


int LED = 10 ; 
int sensor = 2 ;
bool estado = false ;

void setup()
{
  pinMode( LED, OUTPUT) ;
  Serial.begin(9600);
  //pinMode( sensor , INPUT_PULLUP) ;
  digitalWrite(LED , LOW) ; // Apagamos el LED al empezar
}

void loop()
{
  int  valor =  analogRead(A0) ; //leemos el estado del sensor
  Serial.println(valor);
  if ( valor > 350 || valor<230 ) //Si está activada la salida D0
  {
    estado = ! estado ;                       // cambiamos el estado del LED
    digitalWrite(LED, estado) ;            // escribimos el nuevo valor
    delay (1000);
  }
}


Si lo que se pretende es hacer cosas distintas dependiendo de los decibelios del sonido, no será muy muy complicado. La utilidad de este sensor es saltar o detectar la superación de un determinado umbral, esta umbral de sonido podremos variarlo con el potenciómetro que trae el sensor.
IMPORTANTE: El sensor con que he estado haciendo pruebas yo, funciona al revés de todos los que he visto hasta ahora. Lee en el pin output un valor 1023 si no detecta sonido y va bajando dicho valor en la medida que el volumen del sonido aumenta. Solo tendremos que cambiar el operador de comparación > por un menor <.

0 comentarios:

Copyright © 2013 JCTECNOLOGIAS and Blogger Themes.