01 · Especificación
Qué debe hacer
Medir 0–50 °C con salida 0–2,6 V apta para ADC de 5 V, y prender buzzer + LED sobre 35 °C apagando bajo 33 °C (banda 2 °C). Alimentación: 2×9 V + 7805 para el puente. Cada bloque ya se diseñó en su tema: acá se integran.
- ¿Qué bloques y en qué orden?
- ¿Qué valores lleva cada uno?
- ¿Cómo se calibran los umbrales?
- ¿En qué orden se prueba?
02 · Diagrama
Seis bloques, dos salidas
| Bloque | Valores | Tema |
|---|---|---|
| Puente NTC 10k | Fijas 10k, excitación 5 V (7805) | 13 |
| INA ×2 | AD620, Rg 47k (≈ 2,05) | 25 |
| Pasa-bajos 1 Hz | 150k + 1 µF | 23, 26 |
| Adaptación ADC | Restador ×0,5 + ref −2,5 V | 19 |
| Schmitt 33/35 °C | Ra 10k, Rf 150k, Vref −1,15 V | 20 |
| Driver | 2N2222 + buzzer 5 V + LED + flyback* | 29 |
*Flyback si hay relé; con buzzer piezo + LED no hace falta bobina, pero el transistor sí.
03 · Umbrales
−0,86 / −1,06 V = 33 / 35 °C
La cadena da −0,857 V a 33 °C y −1,059 V a 35 °C. El Schmitt (Ra 10k a Vref −1,15 V, Rf 150k a la salida) conmuta en −0,859 V subiendo y −1,047 V bajando: ON a ≈ 35 °C, OFF a ≈ 33 °C. Vref sale de −9 V con 10k/68k (−1,15 V) + preset para ajuste fino.
Salida ADC
2,60 → 0,07 V
Restador (Vtemp+2,5)/2: 0 °C → 2,60 V, 25 °C → 1,25 V, 50 °C → 0,07 V. Todo dentro de 0–5 V.
Alarma
ON 35 / OFF 33
Banda 2 °C ≈ 0,2 V eléctricos: 10× el ruido típico. Sin repiqueteo garantizado.
04 · BOM
Lista de compras
| Ítem | Detalle |
|---|---|
| NTC 10k + R 10k ×3 | Puente (B = 3950 el NTC) |
| AD620 + Rg 47k | INA ×2,05 |
| LM324 | Restador + Schmitt + buffers ref (sobra 1) |
| R: 10k ×6, 20k ×2, 150k, 68k, 1k | Divisores, Rf, LED |
| C: 100 nF ×3, 1 µF, 2200 µF | Desacople, filtro, fuente |
| 2N2222 + buzzer 5 V + LED | Alarma sonora y visual |
| 7805 + 2×9 V + protoboard | Puente regulado, rieles ±9 V |
Consumo ≈ 10 mA por riel: una alcalina de 500 mAh dura ~50 h. Para instalación fija, fuente de 9 V + 7905 opcional (las refs derivan con la batería: recalibrar).
05 · Proyecto en código
Gemelo digital
Modelo completo: temperatura → Vtemp → Vadc, con alarma simulada subiendo y bajando.
Python en tu navegador. Barrete 30–40 °C y mirá dónde prende y dónde apaga.
import math
def vtemp(t_c, g=2.0):
rx = 10000 * math.exp(3950 * (1 / (t_c + 273.15) - 1 / 298.15))
return g * (5 * rx / (10000 + rx) - 2.5)
def estacion(t_c):
vt = vtemp(t_c)
vadc = (vt + 2.5) / 2
print(f"{t_c:>3.0f}C Vtemp={vt:+.2f}V Vadc={vadc:.2f}V")
return vt, vadc
for t in (0, 25, 33, 35, 37, 50):
estacion(t)
33 °C → −0,86 V; 35 °C → −1,06 V; Vadc siempre entre 0,07 y 2,60 V. ¿Vadc a 37 °C?
Alarma con memoria
def alarma(vt, estado, vth_on=-1.047, vth_off=-0.859):
if vt < vth_on:
estado = True
elif vt > vth_off:
estado = False
return estado
e = False
for t in (30, 33, 35, 37, 35, 33, 31):
e = alarma(vtemp(t), e)
print(f"{t}C -> {'ALARMA' if e else 'ok'}")
06 · Analogía programador
Deploy por etapas
- 1Bloques = microservicios.
Cada uno con contrato (rango, impedancia): la integración falla en las interfaces, no adentro.
- 2Gemelo digital = staging.
El modelo predice cada nodo: medir y comparar es el test de integración.
- 3Presets = feature flags.
Ajuste fino sin resoldar: Vref con preset absorbe tolerancias de todo lo anterior.
07 · Exploración
Laboratorio: fijar la alarma
Elegí ON y OFF en °C: el laboratorio calcula los umbrales eléctricos y valida la banda (≥ 0,5 °C, dentro de 0–50 °C).
Calibrador de alarma
ON 35 °C · OFF 33 °C
ON 35 °C (−1,06 V), OFF 33 °C (−0,86 V): banda 2 °C.
Preguntas para explorar
- Poné ON 40 y OFF 39. ¿Banda eléctrica? ¿Por qué es mala idea?
- ¿Qué pasa si ON < OFF? ¿Tiene sentido físico?
- Con banda 0,2 V y ruido 50 mV: ¿margen? ¿Y con 300 mV de interferencia?
Ver respuestas sugeridas
- ≈ 0,09 V (40 °C → −1,54 V; 39 °C ≈ −1,44 V): 1 °C de banda invita al repiqueteo con cualquier ruido.
- No: la alarma prendería al enfriar. El laboratorio lo marca inválido: ON debe superar a OFF.
- 4× de margen ✓; con 300 mV el ruido supera la banda: primero silenciar (T27–28), después alarmar.
08 · Comprensión
Confusiones frecuentes
«Anda a la primera»
Los proyectos andan por etapas: puente, INA, filtro, adaptación, Schmitt, driver. Probar todo junto es debuggear todo junto.
«Sin presets, a cálculo puro»
Tolerancias 5 % mueven los umbrales °C enteros: Vref con preset no es trampa, es ingeniería.
«Buzzer al op-amp»
El buzzer pide decenas de mA con picos: transistor siempre. El Schmitt decide, no alimenta.
«Calibrar = un punto»
Un punto fija offset, dos fijan pendiente: 0 °C (hielo) y 37 °C (cuerpo) o dos baños conocidos. Verificar en el medio.
09 · Práctica guiada
Ejercicios de integración
Ejercicio 1: alarma a 40 °C
Querés ON a 40 °C con OFF a 38 °C. Calculá Vth con vtemp() y rediseñá Vref (Ra 10k, Rf 150k). ¿Vref?
Ver solución razonada
−1,54/−1,35 V: centro −1,44 V → Vref ≈ −1,67 V (divisor −9 V: 10k/47k da −1,58, ajustar con preset).
Ejercicio 2: ADC de 10 bits
Vadc 0,07–2,60 V a ADC 5 V/10 bits. ¿Cuentas por °C (promedio)? ¿Resolución suficiente para 0,5 °C?
Ver solución
≈ 10 cuentas/°C (2,53 V/50 °C = 51 mV/°C ≈ 10,4 cuentas): 0,5 °C ≈ 5 cuentas ✓ sobrado. El ruido manda, no el ADC.
Ejercicio 3: puesta en marcha
Orden de pruebas con multímetro: rieles → puente → INA → filtro → Vadc → umbrales → driver sin carga → carga. ¿Qué valor esperás en cada nodo a 25 °C?
Ver solución
±9, +5; 2,50/2,50; 0,00; 0,00; 1,25; sin conmutar; driver abierto. Si un nodo miente, el problema está antes, no después.
10 · Síntesis
Ideas para recordar
- Seis bloques, dos salidas: ADC 0,07–2,60 V + alarma 35/33 °C.
- Umbrales −1,06/−0,86 V con Vref −1,15 V (10k/68k + preset).
- Integrar por etapas con valores esperados por nodo.
- Presets + 2 puntos de calibración absorben tolerancias.
- Banda eléctrica ≥ 4× el ruido medido.
Proyecto completo. Solo falta mirar atrás y adelante: en el último tema, cierre y puente al curso 5.