LM35-PCB Sensor de Temperatura en Placa Impresa

[LM35-PCB] LM35-PCB Sensor de Temperatura en Placa Impresa

https://electrofranko.com/web/image/product.template/799/image_1920?unique=cdeadc7

S/ 22.00 22.0 PEN S/ 22.00

S/ 22.00

Not Available For Sale

Esta combinación no existe.

Términos y condiciones
Envío: 2-3 días laborales


Referencia Interna: LM35-PCB

Módulo Sensor de Temperatura Analógico (LM35-PCB)

Transductor térmico lineal calibrado directamente en grados Celsius con acondicionamiento en placa.

El módulo de temperatura analógico LM35-PCB es un dispositivo de medición térmica de precisión que integra el célebre circuito integrado LM35 sobre un circuito impreso optimizado con componentes de desacoplamiento. Su ventaja principal radica en su calibración lineal interna, la cual entrega un factor de escala constante de 10 mV por cada grado Celsius medido. A diferencia de los termistores NTC convencionales, este sensor no requiere ecuaciones de linealización complejas ni cálculos algebraicos logarítmicos en el microcontrolador. Al incluir capacitores de filtrado en el PCB, mitiga el ruido eléctrico de alta frecuencia en la línea de señal, garantizando lecturas estables en sistemas de monitoreo ambiental, incubadoras y proyectos de instrumentación electrónica.

Especificaciones Técnicas

Parámetro Detalle
Tensión de OperaciónDC 4.0 V a 30 V
Consumo de Corriente< 60 µA (Bajísimo auto-calentamiento)
Rango de Medición (PCB)0 °C a +100 °C (Configuración básica)
Factor de Escala Lineal+10.0 mV / °C
Precisión Garantizada±0.5 °C (A una temperatura nominal de 25 °C)
Tipo de Salida de SeñalVoltaje Analógico Volt por Volt
Parámetro Detalle
No-Linealidad Típica±1/4 °C en todo el rango térmico
Efecto de Auto-calentamientoMenor a 0.08 °C en aire estático
Impedancia de Salida0.1 Ω para una carga típica de 1 mA
Componentes en PlacaCapacitor de desacoplamiento y LED piloto
Dimensiones de Tarjeta28 mm x 15 mm x 8 mm
Distribución de PinesVCC (+), GND (-), OUT (Señal analógica)

Diagrama de Conexiones y Mapeo de Pines

Diagrama de Conexión LM35-PCB

Ventajas del Módulo

Relación Lineal Directa: Su salida analógica perfectamente pre-calibrada elimina la necesidad de tablas de consulta (LUT) o procesamiento matemático demandante, reduciendo el tamaño del firmware.

Auto-calentamiento Despreciable: Debido a su consumo de corriente extremadamente bajo (microamperios), el chip no disipa calor significativo, evitando alterar las mediciones del entorno donde está montado.

Diseño Industrial en PCB: Al incorporar condensadores de paso smd directamente sobre las líneas de alimentación y señal, el módulo previene fluctuaciones no deseadas causadas por la conmutación de otros componentes en el bus.

Código Arduino Completo y Optimizado

// Código de Control Avanzado para el Sensor de Temperatura LM35-PCB // Implementa sobremuestreo estadístico, promedio móvil y registro histórico de extremos const int pinAnalogico = A0; // Pin de entrada analógica conectado al terminal OUT del PCB // PARÁMETROS CONFIGURABLES DE MUESTREO (Líneas extendidas adicionadas) const int numeroMuestras = 30; // Cantidad de lecturas consecutivas para el filtrado digital const float voltajeReferencia = 5.0; // Voltaje medido real en el pin VCC de Arduino (ajustar para máxima precisión) unsigned long tiempoAnteriorMuestreo = 0; // Temporizador cíclico para adquisición de datos const unsigned long intervaloMuestreo = 1000; // Intervalo de actualización en milisegundos // VARIABLES HISTÓRICAS Y DE DIAGNÓSTICO (Líneas extendidas adicionadas) float temperaturaMaxima = -100.0; // Registro histórico del pico térmico más alto float temperaturaMinima = 200.0; // Registro histórico de la caída térmica más baja unsigned long conteoCiclosExitosos = 0; // Contador secuencial de lecturas validadas float umbralAlertaAlta = 45.0; // Límite condicional superior para advertencias de software void setup() { Serial.begin(9600); pinMode(pinAnalogico, INPUT); // Declaración explícita del pin analógico como entrada Serial.println("--- Convertidor e Instrumentador Térmico LM35-PCB Inicializado ---"); Serial.println("Estabilizando línea analógica. Transmitiendo telemetría..."); Serial.println("-----------------------------------------------------------------"); } void loop() { unsigned long tiempoActual = millis(); // Ejecución síncrona precisa basada en el intervalo configurado sin detener el procesador if (tiempoActual - tiempoAnteriorMuestreo >= intervaloMuestreo) { tiempoAnteriorMuestreo = tiempoActual; conteoCiclosExitosos++; long acumuladorAnalogico = 0; // ALGORITMO DE SOBREMUESTREO PARA REDUCCIÓN DE RUIDO BLANCO (Líneas extendidas adicionadas) for (int i = 0; i < numeroMuestras; i++) { acumuladorAnalogico += analogRead(pinAnalogico); delayMicroseconds(50); // Pequeño espacio de asentamiento para el ADC de aproximaciones sucesivas } // Cálculo del promedio aritmético de las muestras obtenidas float promedioLectura = (float)acumuladorAnalogico / numeroMuestras; // CONVERSIÓN ELÉCTRICA A UNIDADES FÍSICAS MKS DE GRADOS CELSIUS // 1. Convierte la lectura del ADC (0-1023) a voltaje en milivoltios. // 2. Divide entre el factor de escala del LM35 (10 mV por cada °C) equivalente a multiplicar por 100. float voltajeMilivoltios = (promedioLectura * voltajeReferencia * 1000.0) / 1023.0; float temperaturaCelsius = voltajeMilivoltios / 10.0; // EVALUACIÓN Y ACTUALIZACIÓN DE REGISTROS MÁXIMOS Y MÍNIMOS (Líneas extendidas adicionadas) if (temperaturaCelsius > temperaturaMaxima) { temperaturaMaxima = temperaturaCelsius; } if (temperaturaCelsius < temperaturaMinima) { temperaturaMinima = temperaturaCelsius; } // Salida de datos estructurada hacia el Monitor Serial Serial.print("Muestra No: "); Serial.print(conteoCiclosExitosos); Serial.print(" | ADC Promedio: "); Serial.print(promedioLectura, 2); Serial.print(" | Voltaje: "); Serial.print(voltajeMilivoltios / 1000.0, 3); Serial.print(" V"); Serial.print(" | Temperatura: "); Serial.print(temperaturaCelsius, 2); Serial.println(" °C"); // Impresión del histórico de extremos registrados en la sesión actual Serial.print("-> Registro Record [ Mínima: "); Serial.print(temperaturaMinima, 1); Serial.print(" °C | Máxima: "); Serial.print(temperaturaMaxima, 1); Serial.println(" °C ]"); // DIAGNÓSTICO DE ALERTAS CONDICIONALES EN TIEMPO REAL (Líneas extendidas adicionadas) if (temperaturaCelsius >= umbralAlertaAlta) { Serial.print("[ ADVERTENCIA CRÍTICA ] Temperatura actual excede el límite de seguridad de "); Serial.print(umbralAlertaAlta); Serial.println(" °C. Verifique el disipador o flujo de aire."); } Serial.println("-----------------------------------------------------------------"); } }