01 · Punto de partida
Pasar de medir a decidir
Los temas anteriores amplificaban: la salida era una versión escalada de la entrada. Pero muchas veces no hace falta el valor, solo una decisión: ¿hace frío o no?, ¿el tanque está vacío?, ¿se hizo de noche?, ¿la batería bajó de cierto nivel? Un comparador responde esa pregunta con un solo bit analógico: la salida está arriba o abajo, según la entrada esté sobre o bajo un umbral.
Una escena típica. Un sensor de luz enciende una lámpara cuando oscurece. Al atardecer la luz baja despacio, y justo cerca del umbral el ruido de la señal (el parpadeo de la red, una sombra que pasa) la hace subir y bajar unos milivoltios. Con un comparador simple, la lámpara se enciende y apaga decenas de veces en pocos segundos: el relé tabletea y el foco parpadea. Con histéresis hay un umbral para encender y otro, más abajo, para apagar: la lámpara se enciende una sola vez.
Para un programador es un if (x > umbral) con el mismo problema que tiene en software cualquier lectura ruidosa de un ADC: sin una banda muerta, el estado oscila. La histéresis es el equivalente en hardware de guardar el estado anterior y exigir un cambio claro para modificarlo.
- ¿Cómo se cablea el comparador más simple y qué tensiones entrega?
- ¿Qué es el repiqueteo y por qué aparece justo en el umbral?
- ¿Cómo la realimentación positiva crea dos umbrales y cómo se calculan?
- ¿Cuánta histéresis hace falta, y qué resistores la fijan?
- ¿Qué hay que cuidar al conectar la salida a un microcontrolador?
02 · Comparador
El comparador sin lazo
Un operacional sin realimentación (Tema 14) tiene una ganancia de unas 105: una diferencia de apenas 50 µV entre las patas ya lo lleva a un extremo. Se comporta como un comparador: si V+ > V−, la salida va al riel alto; si V+ < V−, al riel bajo. La señal en la pata − y la referencia en la pata + dan una salida invertida (Vin alto → salida baja); intercambiando las patas, no invertida.
| Alimentación | Nivel BAJO | Nivel ALTO | Comentario |
|---|---|---|---|
| 5 V simple | ≈ 0,05 V | ≈ 3,5 V (VCC − 1,5 V) | No llega a 5 V: no es lógica de 5 V |
| ±9 V | ≈ −7,5 V | ≈ +7,5 V | Excursión de 15 V |
Son los mismos rieles del Tema 14. Tres límites que conviene tener presentes desde ya: la salida del LM358 no llega al riel de alimentación; es lenta para esto (el slew rate de 0,3 V/µs hace que recorrer 3 V lleve unos 10 µs); y sus entradas solo admiten tensiones hasta VCC − 1,5 V (3,5 V con 5 V). Para decisiones rápidas existen comparadores dedicados (sección 07).
03 · Repiqueteo
El borde es una zona de guerra
Imaginá una señal que pasa despacio por el umbral de 2,5 V con 100 mV de ruido (±100 mV, 200 mV pico a pico). Cuando la señal limpia está lejos del umbral, el ruido no alcanza para cruzarlo. Pero en la franja de ±100 mV alrededor de 2,5 V, cada pico de ruido cruza la línea, y la salida conmuta. Mientras la señal avanza lentamente por esa franja, el comparador conmuta decenas de veces en lugar de una: el repiqueteo (chatter).
Sin histéresis
Un umbral: 2,50 V
Una rampa lenta de 2,30 a 2,70 V con ±100 mV de ruido produce unas 55 conmutaciones (simulación de la sección 09). Relés que tabletean, LED que parpadean, contadores que suman de más.
Con histéresis
Dos umbrales, banda > ruido
Con una banda de 314 mV (mayor que los 200 mV de ruido pico a pico) la misma rampa produce una conmutación. Para volver a conmutar, la señal tiene que cruzar la banda entera.
El repiqueteo no solo viene del ruido de la señal. También lo provoca el propio circuito: cuando la salida conmuta, la corriente en la alimentación o el acople capacitivo entre la salida y la entrada puede mover un poco la entrada y volver a disparar el comparador. Con una señal lenta, un comparador rápido puede incluso oscilar al cruzar el umbral. La histéresis cura ambas causas.
04 · Disparador de Schmitt
Realimentación positiva: el disparador de Schmitt
El truco es devolver una fracción de la salida a la pata + (realimentación positiva, Tema 15): el umbral deja de ser fijo y pasa a depender del estado de la salida. En el circuito inversor, la señal Vin va a la pata −. La pata + queda conectada a la referencia Vref a través de R1, y a la salida a través de Rf.
- 1El nodo + es un divisor.
Entre Vref (por R1) y Vout (por Rf): V+ = Vref + (Vout − Vref)·R1/(R1 + Rf).
- 2Con la salida en ALTO, el umbral sube.
V+ = Vref + β·(VALTO − Vref): para que la salida baje, Vin tiene que superar ese valor, el umbral superior.
- 3Con la salida en BAJO, el umbral baja.
V+ = Vref + β·(VBAJO − Vref): para que la salida vuelva a subir, Vin tiene que caer por debajo de ese valor, el umbral inferior.
Con el LM358 de 5 V (VALTO = 3,5 V, VBAJO = 0,05 V), Vref = 2,5 V y R1 = Rf = 10 kΩ (β = 0,5), los umbrales son 3,00 V (con la salida en ALTO) y 1,275 V (con la salida en BAJO): una banda de 1,725 V. Notá que no está centrada en Vref, porque los niveles de salida no son simétricos respecto de 2,5 V (la salida sube 1,0 V por encima y baja 2,45 V por debajo). Si querés una banda centrada, Vref debe ser el punto medio entre los niveles de salida: (3,5 + 0,05)/2 = 1,78 V.
- Subiendo
- Con la salida en ALTO, no pasa nada hasta que Vin cruza el umbral superior. Ahí la salida cae a BAJO y el umbral baja al inferior: la salida «se recuerda» y no vuelve por pequeños retrocesos.
- Bajando
- Con la salida en BAJO, el umbral es el inferior. Recién al cruzarlo hacia abajo, la salida sube y el umbral vuelve al superior.
- Zona de memoria
- Entre los dos umbrales el estado depende de la historia: no de la entrada actual. Es un bit de memoria: el comparador con histéresis es un flip-flop con entrada analógica.
- Realimentación positiva
- Acelera el cambio: apenas la salida empieza a moverse, mueve el umbral en el mismo sentido y termina de conmutar de golpe. Por eso los flancos de salida son rápidos aunque la entrada sea lenta.
05 · Variante
La versión no inversora
Si necesitás que una entrada alta dé una salida alta, se intercambian los papeles: Vref va a la pata −, y la señal entra por R1 a la pata +, que además recibe la realimentación Rf desde la salida. La conmutación ocurre cuando el nodo + cruza Vref; de ahí se despeja Vin:
| Esquema | R1 | Rf | Umbral inferior | Umbral superior | Histéresis |
|---|---|---|---|---|---|
| Inversor | 10 kΩ | 10 kΩ | 1,275 V | 3,000 V | 1,725 V |
| Inversor | 10 kΩ | 100 kΩ | 2,277 V | 2,591 V | 314 mV |
| Inversor | 10 kΩ | 330 kΩ | 2,428 V | 2,529 V | 101 mV |
| No inversor | 10 kΩ | 100 kΩ | 2,400 V | 2,745 V | 345 mV |
| No inversor | 10 kΩ | 330 kΩ | 2,470 V | 2,574 V | 105 mV |
Una diferencia práctica entre los dos: en el inversor la señal ve la pata − (impedancia de entrada altísima), mientras que en el no inversor la señal alimenta a R1 y a Rf hacia la salida: carga a la fuente con R1 (Tema 10). Además, en el no inversor el umbral depende de los niveles de salida (que en un LM358 cambian con la carga y la temperatura), y en el inversor también, pero atenuados por β.
06 · Diseño
Diseñar la histéresis
Elegir los resistores es un problema de tres pasos: cuánta histéresis, qué relación de resistores y qué valores concretos.
- 1Medí el ruido pico a pico de la entrada.
Con el osciloscopio (Tema 8) o con el ADC (Tema 6). Una señal con ±100 mV de ruido tiene 200 mV pico a pico.
- 2Elegí una histéresis mayor que ese valor, con margen.
Una buena regla es 1,5 a 2 veces el ruido pico a pico, pero no más: la banda come sensibilidad (con 1,7 V de banda no detectás cambios de 0,5 V). Para 200 mV de ruido, entre 300 y 400 mV.
- 3Calculá β (o R1/Rf) y elegí resistores de la serie.
Inversor: β = histéresis / (VALTO − VBAJO) y Rf = R1·(1/β − 1). Con R1 = 10 kΩ para 300 mV: β = 0,087 → Rf ≈ 105 kΩ → 100 kΩ (E12, da 314 mV).
Algunas decisiones prácticas:
- R1 y Rf grandes: mantienen baja la corriente que la salida entrega al divisor (con 10 kΩ y 100 kΩ circulan unas decenas de microamperios). Pero R1 en paralelo con Rf no debería superar unos 100 kΩ, para que la corriente de polarización de 45 nA del LM358 no corra los umbrales (45 nA × 100 kΩ = 4,5 mV).
- Vref firme: la referencia alimenta un resistor de R1; si es un divisor de impedancia alta, hay que tenerlo en cuenta (se suma a R1) o poner un seguidor (el segundo operacional del LM358, Tema 18).
- La tolerancia: con resistores de 1 %, β varía como 2 %: los umbrales se corren unos pocos milivoltios en una banda de 314 mV, y la histéresis (que es una diferencia) queda dentro del 2 % de su valor. No es el parámetro crítico.
07 · En el mundo real
Comparadores reales e interfaz con el micro
El LM358 sirve para aprender y para decisiones lentas. Para hacerlo bien existen los comparadores dedicados, como el LM393 (dos comparadores en un DIP-8 con la misma distribución de patas que el LM358). Se diferencian en tres cosas:
Operacional (LM358)
Salida «de rail a rail impuesto»
Salida push-pull de 0,05 a VCC − 1,5 V. Lento (≈ 10 µs para recorrer 3 V). Se recupera mal de la saturación profunda. Pensado para realimentación negativa.
Comparador dedicado (LM393)
Colector abierto
La salida es un transistor que baja a masa; necesita un resistor de pull-up (por ejemplo, 10 kΩ) a la tensión lógica que quieras. Respuesta típica de ≈ 1 µs. Pensado para saturar.
Con el LM393, el resistor de pull-up ofrece una ventaja: la salida sube hasta la tensión a la que lo conectes (3,3 V o 5 V), de modo que se adapta directamente al microcontrolador. Cuidado con la realimentación positiva: la salida de colector abierto sube a través del pull-up, así que ese resistor entra en el divisor de histéresis (el nivel ALTO queda en la tensión del pull-up, y el divisor de Rf conviene que sea mucho mayor que el pull-up para no deformarlo).
Conectar la salida a un microcontrolador
- Micro de 5 V (por ejemplo, ATmega): el nivel ALTO de 3,5 V del LM358 suele superar el umbral de entrada alto (≈ 0,6·VCC = 3,0 V), pero con poco margen. Un pull-up o un comparador con colector abierto es más seguro.
- Micro de 3,3 V: 3,5 V excede la alimentación del micro y puede dañarlo por las protecciones de entrada. Hay que limitar: un divisor o, mejor, un LM393 con pull-up a 3,3 V.
- Interrupciones: un comparador con histéresis da flancos limpios, aptos para disparar una interrupción sin necesidad de debounce por software.
Y una observación de programador: hacer lo mismo por software (leer el ADC y comparar con dos umbrales) es perfectamente válido, y es lo que conviene si el micro ya está despierto leyendo. El comparador analógico con histéresis se justifica cuando hace falta una respuesta rápida, cuando no hay micro o está dormido (el comparador despierta al micro con un flanco), o cuando se quiere ahorrar el ADC.
08 · Simuladores
Dos experimentos: el repiqueteo y el lazo de histéresis
El primero hace pasar una rampa lenta con ruido por un comparador, con y sin histéresis, y cuenta las conmutaciones. El segundo dibuja la curva de transferencia del disparador de Schmitt (inversor o no inversor) y te deja recorrerla con la entrada para ver cómo el estado depende de la historia.
Cazar el repiqueteo
umbral = V_ref + β·(V_out − V_ref)
Recorrido guiado (8 minutos)
- 1Pestaña ①, «Sin histéresis».
La entrada es una rampa de 2,30 a 2,70 V con ±100 mV de ruido. El umbral es único (2,50 V) y la salida conmuta decenas de veces (los puntos rojos se amontonan en la franja de ±100 mV). Es el repiqueteo.
- 2Pasá a «Poca (101 mV)».
Rf = 330 kΩ: la banda es de 101 mV, menor que los 200 mV de ruido pico a pico. Hay menos conmutaciones, pero siguen. El margen es negativo: una histéresis menor que el ruido no alcanza.
- 3Pasá a «Justa (314 mV)».
Rf = 100 kΩ: la banda supera el ruido pico a pico y el comparador conmuta una sola vez. El margen es positivo (+114 mV).
- 4Pasá a «Mucha (1,7 V)».
Rf = 10 kΩ: cero conmutaciones. La rampa de 2,3 a 2,7 V nunca llega al umbral superior de 3,0 V, así que la salida no cambia jamás. Tanta histéresis hizo sordo al comparador.
- 5Pasá a «Mucho ruido».
Ruido de ±300 mV (600 mV pico a pico) con la banda de 314 mV: vuelve el repiqueteo. La histéresis debe crecer con el ruido, o hay que filtrar la entrada (Tema 23).
- 6Pestaña ②, «Inversor 10k / 10k».
Los umbrales son 1,275 y 3,000 V. Con Vin = 1,00 V la salida está en ALTO. Subí Vin a 2,5 V: sigue en ALTO, aunque ya pasaste por Vref. Recién al cruzar 3,000 V cae a BAJO.
- 7Bajá Vin desde 4 V.
La salida sigue en BAJO al pasar 3,0 y 2,5 V. Solo vuelve a ALTO cuando Vin cae por debajo de 1,275 V. Entre 1,275 y 3,000 V el estado depende de por dónde llegaste: la memoria.
- 8Cambiá a «No inversor 10k / 100k».
El lazo se invierte: con Vin bajo la salida está en BAJO, y sube al superar 2,745 V; vuelve a bajar al caer de 2,400 V. La histéresis es de 345 mV. Es el mismo lazo, recorrido en sentido contrario.
Preguntas para pensar
- En el simulador ①, con ruido de ±50 mV, ¿qué histéresis mínima alcanza?
- ¿Por qué los umbrales del inversor de 10k/10k no están centrados en 2,5 V?
- ¿Cuándo preferís el esquema no inversor sobre el inversor?
Ver respuestas sugeridas
- El ruido pico a pico es 100 mV: con Rf = 330 kΩ (101 mV) apenas iguala el ruido; con 100 kΩ (314 mV) hay margen cómodo. Con 1 MΩ (34 mV) no alcanza.
- Porque la salida no es simétrica respecto de Vref: sube 1,0 V por encima de 2,5 V (hasta 3,5 V) y baja 2,45 V por debajo (hasta 0,05 V). El umbral superior se desplaza β × 1,0 V y el inferior β × 2,45 V, en sentido contrario.
- Cuando necesitás que la salida siga el sentido de la entrada (entrada alta → salida alta) y la fuente puede entregar la corriente de R1 + Rf. El inversor es preferible cuando la fuente es débil (la entrada es la pata − de impedancia alta) y la inversión no importa o se corrige después.
09 · En código
Decidir en Python
Cuatro herramientas: los umbrales de los dos esquemas, la máquina de estados del Schmitt con el conteo de conmutaciones, el cálculo de Rf para una histéresis dada y la misma histéresis hecha por software sobre un ADC.
Python en tu navegador. Los bloques son editables: cambiá los valores y presioná «Ejecutar Python». La primera vez tarda unos segundos en cargar. Ejecutalos en orden.
Paso 1: los umbrales
ALTO, BAJO = 3.5, 0.05 # LM358 con 5 V simples y sin carga
def umbrales_inversor(r1, rf, vref=2.5, alto=ALTO, bajo=BAJO):
# entrada a la pata -, Vref -> R1 -> pata +, salida -> Rf -> pata +
beta = r1 / (r1 + rf)
return vref + beta * (bajo - vref), vref + beta * (alto - vref) # (baja, sube)
def umbrales_no_inversor(r1, rf, vref=2.5, alto=ALTO, bajo=BAJO):
# Vin -> R1 -> pata +, salida -> Rf -> pata +, Vref en la pata -
k = r1 / rf
return vref * (1 + k) - alto * k, vref * (1 + k) - bajo * k # (baja, sube)
for nombre, f in (("inversor", umbrales_inversor), ("no inversor", umbrales_no_inversor)):
for r1, rf in ((10e3, 10e3), (10e3, 330e3), (10e3, 100e3)):
lo, hi = f(r1, rf)
print(f"{nombre:12s} R1={r1/1e3:g}k Rf={rf/1e3:g}k: umbrales {lo:.3f} / {hi:.3f} V, histéresis {(hi-lo)*1000:.0f} mV, centro {(hi+lo)/2:.3f} V")
Es la tabla de la sección 05. Con 10k/10k el inversor da 1,275 / 3,000 V (banda de 1,725 V, centrada en 2,14 V y no en 2,5 V). El no inversor con 10k/10k da 1,5 / 4,95 V: un umbral superior casi igual a la alimentación, poco práctico.
Paso 2: la máquina de estados y el conteo de conmutaciones
import random
def comparar(vin, estado, lo, hi, invierte=True):
if invierte: # Vin alto -> salida BAJA
if vin > hi: return BAJO
if vin < lo: return ALTO
else:
if vin > hi: return ALTO
if vin < lo: return BAJO
return estado # entre los umbrales: se queda como estaba
def flancos(sec, lo, hi, invierte=True):
e, n = ALTO if invierte else BAJO, 0
for v in sec:
nuevo = comparar(v, e, lo, hi, invierte)
n += nuevo != e
e = nuevo
return n
random.seed(7)
deriva = [2.30 + 0.4 * i / 399 for i in range(400)]
ruido = [random.uniform(-0.1, 0.1) for _ in deriva]
sec = [a + b for a, b in zip(deriva, ruido)]
print("rampa lenta 2,30 -> 2,70 V con ruido de ±100 mV:")
print(" un solo umbral en 2,50 V:", flancos(sec, 2.5, 2.5))
for rf in (1e6, 330e3, 100e3, 10e3):
lo, hi = umbrales_inversor(10e3, rf)
print(f" Rf={rf/1e3:g}k: histéresis {(hi-lo)*1000:.0f} mV -> flancos {flancos(sec, lo, hi)}")
Un solo umbral: 55 conmutaciones. Con 34 mV de banda: 39; con 101 mV: 11; con 314 mV (mayor que los 200 mV de ruido pico a pico): una; con 1,7 V: ninguna (la rampa de 0,4 V nunca alcanza el umbral superior de 3,0 V). El código es el mismo comparar() de siempre: una máquina de dos estados con memoria.
Paso 3: elegir Rf para una histéresis dada
E12 = [10, 12, 15, 18, 22, 27, 33, 39, 47, 56, 68, 82]
def elegir_rf(histeresis, r1=10e3, alto=ALTO, bajo=BAJO):
beta = histeresis / (alto - bajo)
ideal = r1 * (1 / beta - 1)
candidatos = [v * 10 ** d for d in range(0, 6) for v in E12]
rf = min(candidatos, key=lambda v: abs(v - ideal))
lo, hi = umbrales_inversor(r1, rf)
print(f"Histéresis pedida {histeresis * 1000:4.0f} mV: Rf ideal {ideal / 1e3:6.1f}k -> {rf / 1e3:6.0f}k, umbrales {lo:.3f} / {hi:.3f} V, histéresis real {(hi - lo) * 1000:.0f} mV")
return rf
for h in (0.1, 0.2, 0.3, 0.5):
elegir_rf(h)
Para 200 mV la fórmula pide 162 kΩ y la E12 entrega 150 kΩ (216 mV) o 180 kΩ (182 mV). Si el ruido es de 150 mV pico a pico, el de 216 mV deja un margen de 1,4×.
Paso 4: la misma histéresis en software
LSB = 5.0 / 1024 # ADC de 10 bits y 5 V (Tema 6): 4,88 mV por paso
def a_cuentas(volt):
return round(volt / LSB)
lo, hi = umbrales_inversor(10e3, 330e3)
print(f"Umbrales {lo:.3f} / {hi:.3f} V -> cuentas {a_cuentas(lo)} / {a_cuentas(hi)} (banda de {a_cuentas(hi) - a_cuentas(lo)} cuentas)")
# el mismo código de comparación, pero sobre enteros del ADC
muestras = [int(v / LSB) for v in sec]
encendido, cambios = False, 0
for m in muestras:
if not encendido and m > a_cuentas(hi):
encendido, cambios = True, cambios + 1
elif encendido and m < a_cuentas(lo):
encendido, cambios = False, cambios + 1
print("Cambios de estado en software con la banda de 101 mV:", cambios)
Los umbrales caen en las cuentas 497 y 518: una banda de solo 21 pasos del ADC. Con el mismo ruido que antes, el resultado es el mismo que con el Schmitt analógico (11 cambios con esa banda): la lógica es idéntica y hay que dimensionarla igual, midiendo el ruido.
10 · Analogía de programador
Debounce, banda muerta y un bit de memoria
| En software | En el comparador |
|---|---|
if (x > umbral) | El comparador sin lazo |
| Un contador que suma de más por lecturas ruidosas | El repiqueteo: decenas de flancos donde había uno |
| Un debounce de pulsador por tiempo (ignorar 20 ms) | La histéresis: ignora ruido por amplitud en lugar de por tiempo |
| Un termostato que enciende a 19 °C y apaga a 21 °C | Los dos umbrales del Schmitt; el relé no tabletea |
| Una variable de estado que sobrevive entre llamadas | La salida que «recuerda» y mueve el umbral |
| Un flip-flop o latch de 1 bit | El disparador de Schmitt: bit de memoria con entrada analógica |
Una máquina de estados con transiciones guardadas (if estado == ALTO and x > hi) | El umbral que depende del estado de la salida |
| Un parámetro de «sensibilidad» que no debe ser ni muy bajo ni muy alto | El ancho de la histéresis: mayor que el ruido, menor que el cambio que querés detectar |
La octava fila resume el diseño: demasiada poca banda deja pasar el ruido; demasiada banda pierde señal. Y la quinta explica por qué esto es otra cosa que «hacerlo más lento»: la histéresis no demora el cambio, lo vuelve condicional a una variación suficiente.
11 · Comprensión
Confusiones frecuentes
«La salida del comparador es lógica de 5 V»
Con un LM358 de 5 V sube a unos 3,5 V y baja a 0,05 V. Para un micro de 5 V es marginal; para uno de 3,3 V es peligrosa. Con un comparador de colector abierto y un pull-up a la tensión lógica, el nivel es el que vos elegís.
«La histéresis es un retardo»
No: el comparador conmuta tan rápido como siempre cuando la entrada cruza el umbral. Lo que cambia es cuál umbral debe cruzar, según el estado actual. Y los flancos de salida son más rápidos, no más lentos, por la realimentación positiva.
«Mientras más histéresis, mejor»
Una banda excesiva vuelve sordo al circuito: con 1,7 V de banda no detectás un cambio de 0,5 V. Hay que medir el ruido y elegir una banda de 1,5 a 2 veces el ruido pico a pico.
«Los umbrales están centrados en Vref»
Solo si la salida es simétrica respecto de Vref. Con un LM358 de 5 V (0,05 / 3,5 V) y Vref = 2,5 V, la banda de 10k/10k se centra en 2,14 V. Se calcula siempre con los niveles de salida reales.
«Un operacional común sirve igual que un comparador»
Funciona, pero es lento (≈ 10 µs por 3 V), se demora en salir de la saturación y tiene una salida que no es un nivel lógico limpio. Para decidir rápido o con niveles definidos, un LM393 (con su pull-up) es la herramienta correcta.
«Con un comparador analógico ya no necesito debounce en el software»
Con histéresis suficiente, las conmutaciones de ruido desaparecen. Pero un pulsador mecánico rebota con picos de milisegundos y de amplitud completa: ahí la histéresis no ayuda y se necesita un filtro RC o el debounce temporal.
12 · Práctica guiada
Ejercicios de decisión
Ejercicio 1: umbrales a mano
Un Schmitt inversor tiene Vref = 2,5 V, R1 = 10 kΩ, Rf = 47 kΩ, y una salida de 0,05 / 3,5 V. Calculá los dos umbrales, la histéresis y el centro de la banda.
Ver solución razonada
β = 10/(10 + 47) = 0,1754. Umbral superior: 2,5 + 0,1754 × (3,5 − 2,5) = 2,675 V. Inferior: 2,5 + 0,1754 × (0,05 − 2,5) = 2,5 − 0,430 = 2,070 V. Histéresis: 0,1754 × 3,45 = 605 mV. Centro: (2,675 + 2,070)/2 = 2,37 V, por debajo de Vref por la asimetría de la salida.
Ejercicio 2: dimensionar para un ruido medido
Una señal tiene 120 mV de ruido pico a pico. Con R1 = 10 kΩ y los niveles de salida de 0,05 / 3,5 V, ¿qué Rf de la serie E12 elegís para tener 1,5 a 2 veces el ruido como histéresis? Verificá con el resultado.
Ver solución razonada
Objetivo: 180 a 240 mV. Para 200 mV: β = 0,2/3,45 = 0,058; Rf = 10k × (1/0,058 − 1) ≈ 162 kΩ. En la E12: 150 kΩ (β = 0,0625, histéresis 216 mV, umbrales 2,347 / 2,562 V, relación 1,8× el ruido) o 180 kΩ (182 mV, 1,5×). Cualquiera de las dos sirve; 150 kΩ da más margen.
Ejercicio 3: conectar a un micro de 3,3 V
Un comparador LM358 alimentado con 5 V entrega 3,5 V en ALTO. Querés leerlo con un microcontrolador de 3,3 V. ¿Qué problema hay y cómo lo resolvés?
Ver solución razonada
3,5 V supera la alimentación del micro (3,3 V + 0,3 V es el máximo absoluto típico de una entrada): puede activar los diodos de protección y dañarlo con el tiempo. Soluciones: (a) un divisor 10k/22k reduce 3,5 V a 2,4 V (aún por encima del umbral alto de ≈ 2,0 V del micro), (b) usar un LM393 con pull-up de 10 kΩ a 3,3 V, que sube al nivel exacto, o (c) un seguidor/transistor. La (b) es la más limpia. No alimentes el LM358 con 3,3 V: su salida llegaría solo a 1,8 V (VCC − 1,5 V).
Ejercicio 4: el esquema no inversor
Un Schmitt no inversor tiene Vref = 2,5 V, R1 = 10 kΩ y Rf = 1 MΩ. Calculá los umbrales y la histéresis. ¿Sirve para una señal con 100 mV de ruido?
Ver solución razonada
k = R1/Rf = 0,01. Umbral inferior (salida en ALTO, la entrada debe bajar de): 2,5 × 1,01 − 3,5 × 0,01 = 2,525 − 0,035 = 2,490 V. Superior (salida en BAJO): 2,525 − 0,05 × 0,01 = 2,5245 V. Histéresis: 0,01 × 3,45 = 34,5 mV. Con 100 mV de ruido no sirve: la banda es menor que el ruido pico a pico (200 mV). Hay que bajar Rf a unos 100 kΩ (345 mV).
Ejercicio 5: diagnosticar fallas
En un Schmitt inversor de R1 = 10 kΩ y Rf = 100 kΩ con Vref = 2,5 V: (a) Rf se abre; (b) R1 se abre; (c) por un error de cableado, Rf va a la pata − en lugar de la pata +.
Ver solución razonada
(a) Sin Rf desaparece la realimentación: es un comparador simple con un solo umbral de 2,5 V, y vuelve el repiqueteo. (b) Sin R1, la pata + queda unida solo a la salida: V+ = Vout. El circuito se traba (como un latch): solo conmuta si Vin supera 3,5 V o baja de 0,05 V, es decir, prácticamente nunca. (c) Con Rf a la pata − la realimentación es negativa: se vuelve un amplificador con la pata + fija en 2,5 V y la salida deja de ser digital, con una ganancia que depende del lazo; ya no hay comparador.
13 · Síntesis
Ideas para recordar
- Comparador = operacional sin realimentación negativa: la salida va a un riel (LM358 de 5 V: 0,05 / 3,5 V; no es lógica de 5 V).
- Con ruido y una señal lenta, un solo umbral produce repiqueteo: decenas de conmutaciones donde hay una sola transición real.
- El Schmitt inversor: umbral = Vref + β·(Vsalida − Vref), β = R1/(R1 + Rf); histéresis = β·(VALTO − VBAJO).
- El no inversor: umbral = Vref·(1 + R1/Rf) − Vsalida·R1/Rf; histéresis = (R1/Rf)·(VALTO − VBAJO).
- La banda debe ser de 1,5 a 2 veces el ruido pico a pico, y no más: demasiada vuelve sordo al circuito. Medí el ruido antes de elegir Rf.
- Los umbrales dependen de los niveles reales de salida y no suelen estar centrados en Vref.
- Para decidir rápido o con niveles lógicos definidos: LM393 con pull-up a la tensión lógica. Cuidado con los 3,5 V del LM358 sobre un micro de 3,3 V.
- La histéresis es el equivalente en hardware del estado guardado en software: una máquina de dos estados con memoria.
¿Listo para el Tema 21?
Podés avanzar si sos capaz de responder esto sin mirar:
- Explicar por qué un comparador sin histéresis repiquetea con ruido.
- Calcular los dos umbrales de un Schmitt inversor a partir de R1, Rf, Vref y los niveles de salida.
- Elegir Rf para una histéresis mayor que el ruido medido.
- Explicar por qué los umbrales no están centrados en Vref.
- Decir cuándo conviene un LM393 y cómo se conecta a un micro de 3,3 V.
- Predecir qué pasa si se abre Rf o R1.
Con esto se cierra el bloque del operacional (Temas 14 a 20). Pero todo lo que vimos supuso un operacional ideal: ahora toca ver dónde deja de serlo. En el próximo tema, los límites reales del operacional.