Tal vez pueda interesarte proyectos en arduino, pic, robótica, telecomunicaciones, suscribete en http://www.youtube.com/user/carlosvolt?sub_confirmation=1 mucho videos con código fuentes completos y diagramas
La alarma de alta temperatura con sensor sin contacto TS01 es un sistema diseñado para detectar y alertar sobre condiciones de temperatura peligrosas en entornos diversos. Este sistema utiliza el sensor TS01, el cual es capaz de medir la temperatura sin necesidad de contacto físico con el objeto o ambiente que se desea monitorear.
El sensor TS01 emplea tecnología de infrarrojos para capturar la radiación térmica emitida por el objeto y convertirla en una medición precisa de la temperatura. Esto permite una detección sin contacto, lo que resulta especialmente útil en situaciones donde la interacción directa con el objeto es impracticable o no deseada.
Cuando el sensor TS01 detecta que la temperatura ha alcanzado o superado un umbral predefinido, activa una alarma sonora o visual para alertar a los usuarios sobre la situación de alta temperatura. Esto permite una respuesta rápida y eficiente ante posibles riesgos de sobrecalentamiento, protegiendo así la integridad de equipos, instalaciones y, en algunos casos, la seguridad de las personas.
La alarma de alta temperatura con el sensor sin contacto TS01 se utiliza en una amplia gama de aplicaciones, como monitoreo de temperatura en sistemas electrónicos, control de procesos industriales, prevención de incendios, protección de equipos sensibles al calor y mucho más. Su diseño compacto y fácil integración lo convierten en una solución versátil y confiable para garantizar un monitoreo efectivo de la temperatura en diversos entornos.
Componentes Electrónicos
Arduino Nano
El Arduino Nano es una placa pequeña, completa y compatible con la placa de pruebas basada en el ATmega328 (Arduino Nano 3.x). Tiene más o menos la misma funcionalidad del Arduino Duemilanove, pero en un paquete diferente. Solo carece de un conector de alimentación de CC y funciona con un cable USB Mini-B en lugar de uno estándar
Microcontrolador | ATmega328 |
Arquitectura | AVR |
Tensión de funcionamiento | 5 V |
Memoria flash | 32 KB de los cuales 2 KB utiliza el gestor de arranque |
SRAM | 2 KB |
Velocidad de reloj | 16 MHz |
Pines analógicos IN | 8 |
EEPROM | 1 KB |
Corriente CC por pines de E / S | 40 mA (pines de E / S) |
Voltaje de entrada | 7-12 V |
Pines de E / S digitales | 22 (6 de los cuales son PWM) |
Salida PWM | 6 |
El consumo de energía | 19 mA |
Tamaño de PCB | 18 x 45 mm |
Peso | 7 g |
Diagrama de pines
Zócalo para arduino nano
Display oled sh1106
Se trata de un módulo de pantalla OLED monocromática DE 128×64 puntos con interface I2C .Que presenta varias ventajas en comparación con pantallas LCD, y podemos destacar su alto brillo, un muy buen contraste, un ángulo de visión más amplio, y bajo consumo de energía. ES compatible con Arduino Rasberry Pi y microcontroladores PIC entre otros. Trabaja con niveles lógicos de 3.3V a 5V tiene un angulo de visión mayor a los 160 grados. el Tamaño de la pantalla es de 1,3 pulgadas. Se alimenta con un voltaje de 3.3V a 5V Se lo puede usar en aplicaciones como relojes inteligentes, MP3, termómetros, instrumentos, y proyectos varios, etc.
Características
- Interface: I2C(3.3V / 5V logic level)
- Resolution: 128 x 64
- Angle of view: >160 degree
- Display color: Blue
- Display size: 1.3 inch
- Driver IC: SH1106
- Power supply: DC 3.3V~5V
- Operating temperature: -20~70’C
- Application: smart watch, MP3, thermometer, instruments, DIY projects, etc.
PCB
Diagrama electrónico del pcb
Sensor TS01
INTRODUCCIÓN
El sensor de temperatura IR DFRobot TS01 es un sensor térmico sin contacto, que se puede utilizar para medir la intensidad infrarroja del objeto para calcular la temperatura de su superficie sin tocarlo. La compensación de temperatura incorporada para el sensor asegura en gran medida la precisión de la medición de temperatura. El paquete completamente metálico del sensor lo hace capaz de proteger contra impactos, agua, polvo, etc. Con datos de salida estables, este sensor de temperatura puede exhibir un rendimiento de medición mucho mejor que la mayoría de los otros productos similares en el mercado. El producto ha sido calibrado en un amplio rango de temperatura antes de salir de fábrica. Con una temperatura de funcionamiento de -40 ℃ -85 ℃, el sensor se puede utilizar para medir la temperatura de -70 ℃ ~ 380 ℃ mientras proporciona una precisión máxima de 0,5 ° C.
Un filtro óptico (paso de onda larga) que corta el flujo radiante visible e infrarrojo cercano está integrado en el paquete para proporcionar inmunidad al ambiente y a la luz solar. Su campo de visión es tan pequeño como 5 °, lo que significa que para una fuente de calor de 10 cm de diámetro exterior, la distancia máxima de medición del sensor puede alcanzar hasta 116 cm.
CARACTERÍSTICAS
- Medición de temperatura sin contacto
- Rango de temperatura de funcionamiento de grado industrial
- Salida de voltaje analógica
- Embalaje de metal
ESPECIFICACIÓN
- Voltaje de suministro: 5,0 ~ 24 V CC
- Corriente de funcionamiento: 20 mA
- Salida de señal: voltaje analógico 0 ~ 3 V
- Temperatura de funcionamiento: -40 ℃ ~ 85 ℃
- Temperatura de medición: -70 ℃ ~ 380 ℃
- Precisión: ± 0.5 ℃ ~ ± 4 ℃
- Campo de visión: 5 °
- Grado de defensa: IP65
- Diámetro de la sonda: 15,4 mm / 0,61 ”
- Longitud de la sonda: 78 mm / 3,07 “
- Longitud del cable: 1,5 m / 59,06 “
- Tipo de interfaz: DuPont 3Pin + DuPont 1Pin
Diagrama de gradiente de precisión de medición
- El campo de visión (FOV) del sensor es de 5 °. La dimensión del objetivo y las propiedades ópticas del sensor de temperatura IR decidieron la distancia máxima entre el objetivo y la sonda. El campo de visión del sensor se muestra a continuación.
- El diagrama de gradiente de la precisión de medición del sensor se muestra a continuación (To es la temperatura medida; Ta es la temperatura del entorno en el que se ubica el sensor). Tenga en cuenta que el error de temperatura solo se aplica a una determinada condición isotérmica, y solo es válido cuando el objeto detectado está llenando completamente el campo de visión del sensor.
Código Fuente
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
#include <U8g2lib.h> U8G2_SH1106_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE); float i; int buzzer_pin4 = 4;//Pin 4 para el buzzer int alarma = 50;//Seteo de alarma por alta temperatura void setup() { Serial.begin(9600);//Velocidad del monitor serie pinMode(buzzer_pin4, OUTPUT);//Pin 4 como salida u8g2.begin(); //Inicializamos el display } void loop() { // Leemos el promedio de la entrada analógica 3 unsigned int pinA3=pinA3_promedio(200);//Llamamos a la función para promediar 200 datos del pin analógico 3 i=((double)pinA3*450/614.4-70);//Calculo para convertir los datos a grados centígrados Serial.print(i);//Imprimimos esos datos en el terminal serial Serial.println("\u2103");//Imprimimos el simbolo de grados delay(100); //Comprobamos si la temperatura es mayor o igual a 50 grados haemos sonar el buzzer if(i >=alarma){ digitalWrite(buzzer_pin4, HIGH); delay(40); digitalWrite(buzzer_pin4, LOW); delay(20); } oled();//Función para mostrar los datos obtenidos en el display } //Función para promediar los valares obtenidos en el pin analógico A3 int pinA3_promedio(double n) { long sumatoria=0; for(int i=0;i<n;i++) { sumatoria=sumatoria+analogRead(A3); } return(sumatoria/n); } //Función para mostrar datos en el display oled void oled(){ u8g2.clearBuffer(); // Borra el contenido anterior del buffer de pantalla u8g2.setFont(u8g2_font_ncenB10_tr); // Selecciona una fuente grande u8g2.setCursor(0, 20); // Establece la posición de la posición del texto u8g2.print("Temp: ");//Se muestra Temp: en el display u8g2.print(i);//Se muestra el valor de temperatura obtenido u8g2.print("^C");//Se muestra ^C en el display u8g2.setCursor(0, 40); // Establece la posición de la posición del texto u8g2.print("Alar: ");//Se muestra Alart: en el display u8g2.print(alarma);//Se muestra el valor al cual el buzzer va a empezar a sonar u8g2.print("^C");//Se muestra ^C en el display //Si la tempetura es mayor o igual a 50 grados se muestra en el display Alerta!!! if(i >= alarma){ u8g2.setCursor(0, 60); // Establece la posición de la posición del texto u8g2.print("Alerta!!!");//Se muestra Alerta!!! en el display } u8g2.sendBuffer(); // Envia el contenido del buffer a la pantalla } |
PROYECTO RECOMENDADO