Mostrando entradas con la etiqueta sensores. Mostrar todas las entradas
Mostrando entradas con la etiqueta sensores. Mostrar todas las entradas

martes, 16 de junio de 2020

Medidor de distancias de seguridad

Hola a todos y a todas, Hoy os voy a enseñar a hacer un aparato que nos ayudará a guardar las distancias durante el periodo del COVID-19 para poder combatirlo. Para ello, voy a hacer uso de algunos de los proyectos que he hecho recientemente. Consiste en un aparato que mide la distancia entre personas, detectando un aparato incorporado en las mascarillas. Este dispositivo tiene un sensor de distancia ultrasónico, tres LEDs (verde, amarillo, rojo) que nos indicarán cómo de cerca estamos y un medidor que haremos con un servomotor. Todo esto además de una placa arduino, una placa de pruebas, resistencias de 330 omnios y cables.

Este aparato estaría posicionado en la mascarilla, y detecta a la distancia a la que están otros dispositivos iguales. La distancia de seguridad mínima son dos metros, si se está a esa distancia, una luz verde de nuestro dispositivo estará encendida y el indicador marcará un "Ok" o "Distancia Correcta" nosotros podremos ver el brillo del LED y otras personas podrán ver nuestro indicador. Si estamos a poco más de 2 metros de distancia, se encenderá un LED amarillo y la aguja del indicador cambiará y nos advertirá que debemos tener cuidado, pues es probable que nos acerquemos demasiado a alguien. Si se detecta a otra persona a menos de 2 metros, un LED rojo se encenderá y en el indicador podremos ver señalado un mensaje cómo "Demasiado cerca" o "Distancia mínima sobrepasada".
Gracias a este dispositivo, reduciremos el número de contagios.


El montaje de este proyecto es ligeramente más complicado que los anteriores, pues es la combinación de varios trabajos.





El código de bloques también es algo largo, pero no demasiado complejo.






Para la programación por bloques, sólo tenemos que hacer lo mismo que hicimos a la hora de hacer un sensor de ultrasonidos pero, añadiendo la orden que hace que el servomotor se mueva en las diferentes situaciones. 
Sensor de ultrasonidos: https://tecnoesocity.blogspot.com/2020/04/practica-304-sensor-de-ultrasonidos.html



Para que veáis cómo funciona, aquí os dejo un vídeo.





Y este es el final de la presentación de este proyecto, espero que os haya gustado y, cómo aún no tenemos este dispositivo, debéis cuidar vosotros las distancias.

¡Hasta pronto!

martes, 28 de abril de 2020

Practica 3.05 Sensor de inclinación

Hola a todos y a todas, hoy voy a enseñaros cómo funciona un sensor de inclinación.

Este sensor permite detectar si hay un cambio en la posición de un objeto. Normalmente un sólo sensor no me permite hacer muchas cosas, pero si combino varios sensores de inclinación puedo detectar con detalle la inclinación de un objeto e incluso medir ángulos.

Este tipo de sensores funciona con unas pequeñas bolas metálicas en su interior o una pequeña gota de mercurio, que al moverse en función de la inclinación, abre o o cierra el contacto.

Voy ha hacer un proyecto en Tinkercad utilizando dos de estos sensores, uno de ellos representa la inclinación hacia la izquierda y otro hacia la derecha. Al inclinarse hacia la izquierda, se enciende un LED verde, y hacia la derecha uno rojo. Se puede regular la inclinación de los sensores desde Tinkercad. Si cada uno de los sensores apunta hacia un lado diferente, no se enciende ningún LED.


Para empezar, he dispuesto los componentes de esta manera:




Estos son los bloques de código:



Primero, he creado dos variables; izquierda y derecha, a las que he asignado el valor de los pines 4 y 2.
Como solo puede estar inclinado hacia la izquierda o hacia la derecha, y en Tinkercad existe la opción de apuntar los dos sensores hacia lados diferentes, he tenido que ordenar que, cuando apuntan hacia lados diferentes (las variables obtienen el mismo valor), se apaguen los LEDs.
Si eso no ocurre, llegamos a la parte en la que solo hay derecha o izquierda. Si el sensor correspondiente a derecha se inclina, deja de emitir señal, y, gracias a la forma en la que he programado esta parte, se enciende el LED rojo, si no, no se enciende. 
Para la parte de izquierda, la programación es prácticamente la misma.


Este es el código de programación:



int izquierda = 0;

int derecha = 0;

void setup()
{
  pinMode(4, INPUT);
  pinMode(2, INPUT);
  pinMode(12, OUTPUT);
  pinMode(13, OUTPUT);
}

void loop()
{
  derecha = digitalRead(4);
  izquierda = digitalRead(2);
  if (izquierda == derecha) {
    digitalWrite(12, LOW);
    digitalWrite(13, LOW);
  } else {
    if (derecha == 0) {
      digitalWrite(12, HIGH);
    } else {
      digitalWrite(12, LOW);
    }
    if (izquierda == 0) {
      digitalWrite(13, HIGH);
    } else {
      digitalWrite(13, LOW);
    }
  }
  delay(10); // Delay a little bit to improve simulation performance

}




Para finalizar, aquí os dejo un vídeo para que veáis cómo funciona:





Y esto ha sido todo por hoy, ¡un saludo y hasta la próxima!😁

martes, 21 de abril de 2020

Practica 3.04 Sensor de ultrasonidos

Hola a todos y a todas, bienvenidos a mi blog, hoy vamos a hacer un sensor de proximidad.

Para ello vamos a usar un sensor de ultrasonidos, que es un dispositivo para medir distancias. Su funcionamiento se base en el envío de un pulso de alta frecuencia, que el ser humano no es capaz de oír. Este pulso rebota en los objetos cercanos y es reflejado hacia el sensor, que dispone de un micrófono adecuado para esa frecuencia.

Hay tres niveles de proximidad, cada uno indicado con un LED.

La conexión del circuito es esta:






Los bloques de programación son estos:



Primero, he anclado una variable a los valores que recibe el sensor de ultrasonidos. Luego, he programado el aviso de alta proximidad, que se manifiesta al encenderse un LED rojo, para hacer esto, he ordenado que si los valores de la variable son menores que 50 (cm) se ejecute la acción (que se encienda el LED). Después, he hecho lo mismo con los otros dos LEDS, de aviso medio (naranja), y bajo (amarillo), ordenando que se encienda si el valor de la variable está entre dos números. Como resultado, si un objeto está a menos de 50 cm, se enciende el rojo, si está entre 50 y 100 cm, el naranja, y si está entre 100 y 150 cm, el amarillo.

Este es el código de programación del proyecto:


int distancia = 0;

long readUltrasonicDistance(int triggerPin, int echoPin)
{
  pinMode(triggerPin, OUTPUT);  // Clear the trigger
  digitalWrite(triggerPin, LOW);
  delayMicroseconds(2);
  // Sets the trigger pin to HIGH state for 10 microseconds
  digitalWrite(triggerPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(triggerPin, LOW);
  pinMode(echoPin, INPUT);
  // Reads the echo pin, and returns the sound wave travel time in microseconds
  return pulseIn(echoPin, HIGH);
}

void setup()
{
  pinMode(4, OUTPUT);
  pinMode(7, OUTPUT);
  pinMode(12, OUTPUT);
}

void loop()
{
  distancia = 0.01723 * readUltrasonicDistance(3, 2);
  if (distancia < 50) {
    digitalWrite(4, HIGH);
  } else {
    digitalWrite(4, LOW);
  }
  if (distancia > 50 && distancia < 100) {
    digitalWrite(7, HIGH);
  } else {
    digitalWrite(7, LOW);
  }
  if (distancia > 100 && distancia < 150) {
    digitalWrite(12, HIGH);
  } else {
    digitalWrite(12, LOW);
  }
  delay(10); // Delay a little bit to improve simulation performance
}



Aquí os dejo un vídeo para que veais cómo funciona:





En la situación actual, este proyecto sería muy útil para prevenir el acercamiento excesivo entre personas y evitar el contagio del virus que actualmente asola nuestra sociedad.


¡¡Esto ha sido todo por hoy y nos vemos en la siguiente entrada!!

lunes, 30 de marzo de 2020

Práctica 3.03.1 (sensor de movimiento)

Hola a todos y a todas, hoy voy a enseñaros como hacer un sencillo detector de movimiento.
Voy a hacerlo enfocado a una alarma de seguridad, con un LED a modo de aviso.

He utilizado una placa Arduino, un sensor PIR (sensor infrarrojo pasivo) un LED y una resistencia, además de algunos cables.
todo esto lo he colocado así:



En la programación de bloques, se lee la información del PIR, si el sensor detecta algo, el LED parpadea.




Para que veáis cómo funciona, aqui hay un vídeo:



Esto ha sido todo por hoy, un saludo y hasta pronto.

lunes, 2 de marzo de 2020

Sensor infrarrojo.1 (práctica)

Hola a todos y a todas, en la práctica de hoy vamos a hacer un sensor, que al detectar una superficie oscura, un LED se encienda, y que al detectar una superficie clara,el LED se apague.



Como ya sabréis, un sensor infrarrojo emite una onda de luz que está por debajo del rojo, y, por lo tanto, no es visible por el ojo humano.

Tiene tres conexiones:
OUT: pin digital
GND: toma de tierra
Vcc :energía: 5V

La onda que emite su parte "emisora" rebota en una superficie y le vuelve a llegar a la parte "receptora", cuanto mas clara y lisa sea la superficie, mejor llega de vuelta.

Estos son los elementos necesarios que se conectan a la placa de Arduino UNO.

-LED
-Sensor infrarrojo




Para empezar, he creado una variable a la que he llamado "A".



Posteriormente, en "Instrucciones iniciales (Setup)" he colocado el código "Serial.begin(9600); " que ya expliqué anteriormente para que sirve.

En la sección de " Bucle principal (Loop) ", he declarado la variable el valor que reciva el sebsor infrarrojo (0-1). Tras el bloque de  "Serial.println(A);" , he ordenado que si el valor de la variable es 0 (el sensor está sobre una superficie negra), se encienda el LED. Si por el contrario, el sensor está sobre una superficie clara, el valor que recivirá dicho sensor será igual a 1. De este modo el LED estará apagado.


 Para terminar, aquí os dejo el código de este programa.


/***   Included libraries  ***/




/***   Global variables and function definition  ***/
const int sensor_infrarrojos = 7;
const int led = 13;

/*
LMP_16
*/
float A = 0;



/***   Setup  ***/
void setup() {
    pinMode(sensor_infrarrojos, INPUT);
    pinMode(led, OUTPUT);

    Serial.begin(9600);

}


/***   Loop  ***/
void loop() {
    A = digitalRead(sensor_infrarrojos);
    Serial.println(A);

    if (A == 0) {
        digitalWrite(led, HIGH);
    } else {
        digitalWrite(led, LOW);
    }
}


Muchas gracias, y adiós. 😁

martes, 4 de febrero de 2020

Breve introducción a los sensores de arduino

Los sensores son aparatos que se utilizan para detectar diferentes cosas.
Estos son algunos ejemplos:

Sensor de luz:
Detecta cambios de luminosidad y cantidad de luz.
Ejemplos de uso:
Estos componentes eléctricos se pueden usar como activador de las farolas de la calle; el LDR está recibiendo luz durante el día, pero, por la noche (o cuando se nuble) deja de recibir luz y disminuyen los omnios, lo que hace que se encienda la bombilla.

Sensor de presión de fuerza:
sirve para detectar una fuerza aplicada en la membrana. Básicamente, al detectar una flexión en la membrana el sensor cambia su resistencia interna.


Ejemplos de uso:
Estos sensores se pueden usar en básculas y otros aparatos cuya función sea medir la masa.


Sensor de movimiento:
Un detector de movimiento, o sensor de presencia, es un dispositivo electrónico equipado de sensores que responden a un movimiento físico.
Ejemplos de uso:
Estos sensores son usados en mecanismos de seguridad o en circuitos cerrados de televisión. Yo personalmente tengo la idea de usar un sensor de movimiento para que me salude cuando entre en mi habitación.

Sensor de metano:
Un detector de gas es un aparato que detecta la presencia de gas en el aire y que, a una determinada concentración, emite una señal.

Ejemplos de uso:
Se pueden usar en minas para detectar tipos de gases peligrosos. También se puede hacer un detector de flatulencias, eso es algo muy curioso.

Muchas gracias y hasta pronto.

domingo, 1 de diciembre de 2019

Sensor de luz V2 (prototipo)

Hoy voy a  intentar programar un sensor de luz que varíe progresivamente la luminosidad del led dependiendo de la luz que reciba el LDR.






Primero, he creado una variable a la que he llamado "luminos"


Luego, he hecho que la variable sea el valor del LDR.
Después, he declarado que mi variable sea el valor del LDR, multiplicado por 255 (salida analógica) y ese resultado dividido entre 1024 (entrada analógica).

Con esto, he mapeado el rango de valores, aunque también podemos usar este bloque, que lo hace directamente:




Para terminar, he mandado al pin 11 (donde esta conectado el led) la información de la variable "luminos" que es el valor resultado de la operación matemática anteriormente realizada.


Este es el final de la programación del prototipo numero uno del la segunda versión del sensor de luz, espero que os haya gustado.

Sensor de luz V1

Hoy os voy a enseñar a programar un sensor de luz con Bitbloq, de manera muy rapida y sencilla.

Primero, creamos una variable a la que llamamos LUZ




Luego, en el "bucle" hacemos que loque lea esa variable sea la información del LDR y ponemos un bloque de "esperar".
Después de esto, declaramos que si la variable luz es mayor que 500, el led se apagará.
Y, con otro bloque, decimos que si esto no ocurre, que se encienda el led.


Por último, añadimos unos códigos, que son los bloques verdes, para poder ver los valores que mide el LDR.




Estos bloques son la interpretación del código del arduino.



Bueno, ya estaría terminado nuestro sensor de luz, espero que os haya gustado, hasta la próxima.