01 · Punto de partida
El componente más subestimado
“Una llave es una llave” hasta que el táctil de 50 mA quiere conmutar un motor, el botón cuenta triple en el micro o la palanca barata muere al año. Contactos tienen corriente nominal, vida en ciclos y rebote: tres números que deciden cuál comprar.
Este tema completa lo iniciado en el curso 1 (Tema 19): ahora con ratings, rebotes y selección fina.
- ¿Qué tipos existen y para qué?
- ¿Qué significan los amperios impresos?
- ¿Qué son los rebotes y a quién molestan?
- ¿Cuántos años dura un botón?
02 · Tipos
Palancas, botones y fines de carrera
| Tipo | Rating típico | Vida | Uso |
|---|---|---|---|
| Palanca / slide | 3–10 A | 10–50k ciclos | Llave general, potencia leve |
| Pulsador protoboard | 50–100 mA | 100k ciclos | Eventos, avance manual |
| Táctil SMD | 50 mA | 100–500k ciclos | Teclados, paneles |
| DIP switch | 25–100 mA | 1–2k ciclos | Configuración (casi no se toca) |
| Final de carrera | 1–5 A | 1M+ ciclos | Límites mecánicos (curso 8/12) |
Regla de oro: nunca conmutar más del 50 % del rating en continua con carga inductiva. El arco en DC no se apaga solo (a diferencia de AC).
03 · Rebotes
Un clic, muchos contactos
Al cerrar, el contacto vibra 1–20 ms abriendo y cerrando: a ojo es un clic, para un micro a MHz son decenas de pulsaciones. Soluciones: software (ignorar 20–50 ms tras el flanco, curso 5/7), RC (10k + 100 nF ≈ 1 ms + Schmitt, curso 4) o lógica (flip-flop SR con conmutador, curso 6).
Al LED no le importa
Ojo lento
20 ms de repiques son invisibles: el LED parece encender una vez. En este curso, ignorar es válido.
Al micro sí
Cuenta de más
Cada rebote es una interrupción: el contador suma 5–20 por clic. Debounce obligatorio (cursos 5 y 7).
04 · Selección
Árbol en 4 preguntas
- 1¿Qué corriente conmuta?
Por debajo del 50 % del rating en DC. Táctil de 50 mA jamás con relés o motores directos.
- 2¿Mantiene o momentáneo?
Estado → interruptor; evento → pulsador NA (NC para parada segura). No intercambiar roles.
- 3¿Cuántos ciclos vivirá?
Ciclos/día × 365 × años vs. nominal con margen ×2. Botón de uso diario pide 100k+.
- 4¿Ambiente y tacto?
Polvo/humedad (IP), fuerza de actuación y viaje: lo ergonómico también se especifica.
05 · Vida y debounce en código
Años de botón y filtro RC
Convertir ciclos nominales a años de uso real, y dimensionar el RC anti-rebote:
Python en tu navegador. Calculá la vida de tus botones y tu filtro.
def vida_util(ciclos_nominales, usos_por_dia):
dias = ciclos_nominales / usos_por_dia
print(f"{ciclos_nominales} ciclos a {usos_por_dia}/día -> {dias/365:.1f} años")
return dias / 365
def debounce_rc(r_ohm=10000, c_uF=0.1):
# tau como orden del filtrado (regla: 5tau > 20 ms de rebote)
tau_ms = r_ohm * c_uF * 1e-6 * 1000
print(f"RC {r_ohm}/{c_uF}uF: tau={tau_ms:.1f}ms, 5tau={5*tau_ms:.0f}ms",
"OK" if 5 * tau_ms >= 20 else "CHICO: subir R o C")
vida_util(100000, 50)
debounce_rc()
Probá vida_util(10000, 20) (DIP switch como botón): ¿cuánto dura? ¿Por qué no sirve?
Comparador de candidatos
Elegir entre pulsadores por corriente y vida:
def elegir_llave(cands, i_mA, usos_dia):
for c in cands:
ok_i = i_mA <= c["imax_ma"] / 2
anos = c["ciclos"] / usos_dia / 365
print(f"{c['codigo']}: corriente {'OK' if ok_i else 'NO'} | vida {anos:.1f} años")
ok = [c for c in cands if i_mA <= c["imax_ma"] / 2]
print("ELEGIDO:", min(ok, key=lambda c: c["precio"])["codigo"] if ok else "NINGUNO")
return ok
elegir_llave([
{"codigo": "TACTIL", "imax_ma": 50, "ciclos": 200000, "precio": 8},
{"codigo": "PULS-PB", "imax_ma": 100, "ciclos": 100000, "precio": 12},
{"codigo": "PALANCA", "imax_ma": 3000, "ciclos": 30000, "precio": 60},
], 80, 30)
06 · Analogía programador
Eventos con debounce
- 1Rebote = evento duplicado.
Como clicks múltiples por doble handler: se filtran por tiempo (debounce 20 ms), no por fe.
- 2Rating = SLA.
Operar al 50 % es headroom: el contacto vive lo prometido y más.
- 3Vida = MTBF.
Ciclos/día a años: planificar el recambio como se planifica el hardware.
07 · Exploración
Laboratorio: ¿qué llave pide el trabajo?
Elegí el trabajo: el laboratorio recomienda tipo, verifica corriente y vida, y marca la trampa de elegir mal.
Trabajo → llave
I + uso → tipo
Avance manual: pulsador NA de protoboard.
Preguntas para explorar
- ¿Por qué el teclado pide táctiles y no pulsadores de protoboard?
- ¿Qué llave usarías para 3 A y por qué no un táctil?
- ¿Cuándo el debounce pasa de opcional a obligatorio?
Ver respuestas sugeridas
- Perfil bajo, tacto definido y vida 200k+: 16 protoboard no entran ni duran igual. Forma sigue a función.
- Palanca de 3–10 A (al 50 % = 1,5–5 A de uso): el táctil se suelda/funde con 3 A.
- Cuando cuenta un micro (cursos 5/7): con LED a ojo, nunca. El lector define la exigencia.
08 · Comprensión
Confusiones frecuentes
«Todos los botones bancan lo mismo»
50 mA un táctil, 10 A una palanca: factor 200. Leer el rating impreso antes de conmutar cargas.
«Rebote es mito de firmware»
Es física de contactos (1–20 ms medibles con osciloscopio). El firmware lo sufre, no lo inventa.
«NA y NC dan igual»
NA cierra al apretar (normal), NC abre (seguridad). Intercambiarlos invierte la lógica y el fail-safe.
«DIP switch como botón diario»
1000–2000 ciclos: a 200/día muere en meses. Configuración casi fija, no interfaz de usuario.
09 · Práctica guiada
Ejercicios de llaves
Ejercicio 1: vida del avance
Con vida_util(100000, 50): ¿años? ¿Y con 200/día? ¿Alcanza para un juguete?
Ver solución razonada
5,5 años a 50/día; 1,4 a 200/día. Para juguete sobra; para equipo diario justo: pedir 500k+ o palanca.
Ejercicio 2: RC anti-rebote
Diseñá RC con 5τ ≥ 20 ms. Con debounce_rc() probá 10k/100 nF y elegí valores que cumplan. ¿Cuál?
Ver solución
10k×100 nF: τ = 1 ms, 5τ = 5 ms: chico. Con 100k: 5τ = 50 ms ✓ (o 10k + 1 µF). Regla cumplida con margen.
Ejercicio 3: mapear 4 patas
Pulsador de protoboard sin hoja: hallá los pares con continuidad y explicá por qué son 4 patas para 2 contactos.
Ver solución
Pares opuestos conducen siempre (misma chapa); adyacentes solo apretado. 4 patas = 2 pares duplicados para calzar firme, no 4 contactos.
10 · Síntesis
Ideas para recordar
- Rating al 50 % en DC; NA evento, NC seguridad; vida en años con margen.
- Rebote 1–20 ms: ojo con LED, debounce con micro (soft/RC/SR).
- 4 patas = 2 pares duplicados: mapear con continuidad.
- DIP para configurar, táctil para teclados, palanca para potencia leve.
vida_util()+debounce_rc()+elegir_llave()en cada botón.
Llaves con criterio total. Ahora, los que sienten: en el próximo tema, sensores, familias y salidas.