Rebote de interruptor de botón pulsador para entradas de PLC y microcontroladores

Rebote de interruptor de botón pulsador para entradas de PLC y microcontroladores

Fecha: 29-sep-2026

El rebote del interruptor de botón pulsador previene que una sola pulsación o liberación mecánica se interprete como varias transiciones eléctricas rápidas. Los contactos dentro de un interruptor físico pueden hacer y romper brevemente mientras se estabilizan; un controlador rápido puede registrar esos cambios como múltiples eventos de entrada. Un PLC, microcontrolador o circuito lógico externo puede filtrar la entrada, pero el método y el tiempo adecuados dependen del interruptor, hardware de entrada, ruta de señal y respuesta requerida. No existe un tiempo de rebote universal que sea seguro para cada botón o máquina.

Comience diferenciando el rebote de contacto de ruido eléctrico, terminales sueltos, un bloque de contacto dañado o una aplicación que lee la entrada repetidamente. Mida u observe la señal en la entrada relevante, verifique las opciones de filtro incorporadas en el controlador y pruebe tanto el comportamiento de pulsación como de liberación. El ejemplo de botón pulsador GQ22-L-11E/S de ONPOW muestra un formulario de botón de panel; confirme el bloque de contacto exacto, cableado y requisitos de control para el modelo que solicite. La versión más amplia de botones pulsadores incluye otras interfaces de operador.

Cómo se ve el rebote de contacto en una entrada del controlador

Un botón mecánico no siempre transiciona de abierto a cerrado en un borde perfectamente limpio. Cuando los contactos se encuentran, pequeños rebotes mecánicos pueden causar una corta serie de cambios de estado antes de que el contacto se estabilice. Una entrada digital puede ver varias transiciones aunque el operador haya pulsado el botón una sola vez. El rebote de contacto puede ocurrir tanto en la pulsación como en la liberación, y diferentes interruptores o muestras del mismo producto pueden comportarse de manera diferente.

La respuesta de la entrada también importa. Algunos controladores muestrean lentamente o incluyen un filtro de entrada; otros usan interrupciones o lógica de entrada de alta velocidad que puede reaccionar a transiciones cortas. Una señal que es inofensiva para una entrada de estado muestreada lentamente puede ser un problema para un contador, rutina desencadenada por borde o cola de eventos. La breve aplicación de Texas Instruments’ sobre rebote de interruptores describe cómo los interruptores físicos pueden crear disparos falsos en entradas lógicas y por qué un filtro puede ayudar. Su ejemplo de componentes no es una especificación para un interruptor ONPOW o un módulo PLC.

Botón pulsador de anillo azul ONPOW en una placa de prueba interior junto a una sonda de osciloscopio
Mida solo en un punto de prueba seguro y adecuado de bajo voltaje y compare la entrada en bruto con el estado del controlador.

Confirme que el rebote sea la falla real

Antes de añadir un retardo, verifique qué está haciendo el sistema. Observe el estado de la entrada digital en bruto, la lógica de detección de bordes del programa y la acción de salida. Si una sola pulsación crea múltiples transiciones en la entrada, puede estar involucrado el rebote de contacto o ruido eléctrico. Si la entrada en bruto es estable pero la máquina responde más de una vez, el problema puede estar en la lógica del software, la programación de tareas o en una ruta de comandos repetida.

Otros síntomas pueden parecerse a un rebote:

  • Interferencia eléctrica: cambiar cargas, largas conexiones paralelas, mala protección o un problema de puesta a tierra pueden perturbar la entrada. Un filtro puede ocultar un síntoma sin corregir la causa en el cableado.
  • Contactos sueltos o desgastados: comportamiento intermitente que cambia al tocar o vibrar el panel puede indicar una falla en un terminal, conector o interruptor.
  • Referencia de entrada incorrecta: una desajuste entre fuente y sumidero, falta de común o una resistencia de pull-up inadecuada puede dejar la entrada flotando o invertida.
  • Lógica de la aplicación: código que cuenta cada escaneo con la entrada en alto puede registrar una pulsación larga varias veces incluso cuando la transición eléctrica es limpia.

Utilice un osciloscopio o un instrumento lógico adecuado en un punto de señal de bajo voltaje seguro y accesible cuando el diseño lo permita. Compare el comportamiento en bruto del contacto/entrada con el estado interpretado por el controlador. Nunca conecte una sonda a tierra a un circuito desconocido o referenciado a la red eléctrica; utilice equipos de medición aislados con la clasificación adecuada y personal cualificado cuando sea necesario.

Elija un método de rebote que se ajuste a la entrada

El rebote puede realizarse en software, mediante un filtro de entrada del PLC o en hardware. Estos métodos tienen diferentes compromisos. Un filtro de firmware puede ser fácil de ajustar, mientras que un filtro de hardware puede actuar antes de una interrupción o escaneo del controlador. Es posible que el filtro de entrada del PLC ya forme parte del módulo. El método elegido debe preservar pulsaciones cortas pero válidas y cumplir con el tiempo de respuesta que requiere la máquina.

Método Dónde ocurre el filtrado Útil cuando Verificación antes de usar
Estabilización del estado en software El código de la aplicación acepta un estado después de que permanece sin cambios durante un intervalo definido Un programa del controlador puede tolerar el tiempo de respuesta adicional Prueba de pulsación y liberación, temporización de tareas, pulsaciones cortas y eventos repetidos
Filtro de entrada del PLC/módulo El hardware de entrada o los filtros de configuración filtran las transiciones antes de que el programa las lea Una entrada PLC proporciona un filtro documentado y configurable Utilice el manual exacto del módulo; confirme cómo afectan las configuraciones del filtro a la respuesta y a las entradas rápidas
Lógica RC más disparador Schmitt La forma de borde analógico y la histéresis condicionan la señal antes de la lógica digital Un filtro de hardware es apropiado y se comprenden las tolerancias de los componentes Verifique los umbrales de entrada, comportamiento de subida/bajada, fuga y ancho mínimo de pulso
Interfaz dedicada o función con clasificación de seguridad Un módulo diseñado maneja la condición de entrada La aplicación requiere una interfaz calificada o una arquitectura con clasificación de seguridad Utilice las instrucciones exactas del dispositivo y valide la función completa de la máquina

Para un método simple de software, un controlador puede registrar un estado candidato y aceptarlo solo después de que las muestras repetidas permanezcan consistentes durante el intervalo configurado. Luego, una rutina de cambio de estado puede crear un evento en lugar de reaccionar a cada escaneo mientras el botón permanezca presionado. El umbral debe medirse y validarse; copiar un retraso fijo de un ejemplo de Arduino u otra máquina puede hacer que un control industrial se sienta lento o pase por alto un comando corto.

Para un filtro RC de hardware, la resistencia y el condensador dan forma al flanco, y una entrada con disparador de Schmitt proporciona histéresis. La nota de aplicación de TI muestra uno de estos enfoques y analiza la selección de una constante de tiempo para el comportamiento de conmutación relevante. Los valores que se muestran allí se aplican a ese circuito y familia lógica, no a la entrada de todos los controladores. La de Microchip nota sobre retardo/antirrebote AN1450 demuestra una implementación lógica específica del dispositivo. Utilice esas fuentes para comprender los métodos y, a continuación, compruebe los umbrales de entrada reales y los límites de los componentes para su diseño.

Configure el filtro según el comportamiento medido y la respuesta requerida

No elija un tiempo de antirrebote solo porque sea un número común en un foro. Establezca la pulsación legítima más corta que el operador o proceso deba detectar, luego mida el comportamiento de los contactos en interruptores representativos y condiciones de prueba. Incluya tanto la apertura como el cierre, ya que el rebote puede diferir entre el flanco de pulsación y el de liberación. Seleccione un filtro que rechace los transitorios observados y que al mismo tiempo reconozca un comando breve válido.

Las pruebas deben abarcar más de un único interruptor nuevo. Considere varias muestras, la temperatura de funcionamiento, el montaje, la vibración, la longitud del cable, el cableado de entrada y el intervalo de muestreo o escaneo del controlador según corresponda. Un filtro que funciona en el banco de pruebas puede comportarse de manera diferente una vez que se conectan el mazo de cables, el módulo y la máquina reales. Mantenga el ajuste elegido en la documentación eléctrica o de software para poder revisarlo durante el mantenimiento.

Para el recuento de eventos o el funcionamiento rápido, compruebe si el antirrebote crea una latencia inaceptable o suprime pulsos reales. Un comando de inicio operado por humanos y un codificador de alta velocidad no son la misma fuente de señal. Utilice la entrada de alta velocidad del controlador o una interfaz diseñada específicamente cuando la tasa de eventos requerida supere la ruta de entrada ordinaria. Si el rebote persiste después de un filtrado razonable, inspeccione el interruptor físico y el cableado en lugar de aumentar el retardo indefinidamente.

Vista frontal de un botón pulsador de anillo azul ONPOW en una placa de prueba de metal junto a una placa lógica aislada
El interruptor, el hardware de entrada y la lógica de la aplicación son partes separadas de una prueba completa de antirrebote.

Ponga en marcha el botón y el controlador juntos

El interruptor del panel, el bloque de contactos, el cableado, el módulo de entrada y el programa forman una única interfaz. Confirme la disposición de los contactos NA/NC en la documentación exacta del producto y, a continuación, compruebe cómo se asigna ese contacto al tipo de entrada eléctrica del controlador. Para obtener contexto sobre las etiquetas de los contactos y el cableado, consulte la guía de instalación y cableado de pulsadores y artículo sobre el cableado de pulsadores de 4 pines. existente. Ni una foto frontal ni un anillo de color establecen el mapa de terminales para un operador ensamblado.

Durante la puesta en marcha, registre las transiciones de entrada sin procesar, los estados de entrada filtrados y los comandos resultantes para una pulsación y una liberación. Pruebe una pulsación corta deliberada, una pulsación larga, pulsaciones repetidas rápidas a la frecuencia requerida y la recuperación después de un ciclo de energía si procede. Confirme que la máquina ejecuta cada comando válido una sola vez y que no se pierde ningún comando. Pida a un operador que utilice el control instalado en su posición real y compruebe que la respuesta sigue siendo clara y oportuna.

No añada un retardo de software de uso general a una parada de emergencia, un enclavamiento de protección u otra función de seguridad. Los controles relacionados con la seguridad requieren una arquitectura con clasificación de seguridad adecuada y una validación frente a la evaluación de riesgos de la máquina y los requisitos aplicables. La norma IEC 60204-1 cubre los equipos eléctricos de las máquinas, pero un ajuste antirrebote por sí solo no hace que un circuito sea seguro. Siga el diseño aprobado por el fabricante de la máquina y el proceso de ingeniería de seguridad cualificado.

Errores frecuentes en el rebote de señal

Filtrar sin observar la entrada. Primero determine si las múltiples transiciones están presentes eléctricamente o son introducidas por la lógica del programa.

Usar un retardo fijo grande en todas partes. Una ventana larga puede hacer que un control parezca poco receptivo o que se pierdan pulsaciones breves válidas. Utilice el comportamiento medido y la temporización de eventos requerida.

Filtrar únicamente el flanco de pulsación. El rebote de liberación también puede crear eventos adicionales. Pruebe ambas direcciones y verifique el método elegido por el controlador.

Usar un condensador sin verificar la entrada. Bordes lentos, fuga, umbrales de entrada y histéresis pueden cambiar la forma en que un controlador lee la señal. Siga la documentación del componente y del módulo.

Tratar un contacto defectuoso como un problema de software. Un terminal suelto, bloque de contactos dañado, contaminación o interferencias pueden requerir una reparación física, no más filtrado.

Rebote de un circuito de seguridad con código ordinario. Un temporizador de uso general no es una función con clasificación de seguridad. Utilice el dispositivo de seguridad diseñado y la arquitectura validada.

Video educativo

Este breve tutorial muestra cómo hacer debounce por software para un botón pulsador de microcontrolador. Es útil para entender la idea básica de “una pulsación física, un evento lógico”, pero su controlador y temporización son solo ejemplos. No especifican una configuración para un PLC o un botón pulsador ONPOW.

Tutorial de Arduino #15: Cómo hacer debounce a un botón pulsador por Robotica DIY

Ver el ejemplo de debounce del botón pulsador del microcontrolador.

Preguntas frecuentes

¿Necesita cada interruptor de botón pulsador debounce?

No. La necesidad depende del interruptor, el módulo de entrada, la lógica de la aplicación y los requisitos de respuesta. Compruebe la señal de entrada sin procesar y la documentación del módulo antes de añadir un filtro.

¿Puede ocurrir rebote de contacto cuando se suelta el botón?

Sí. El comportamiento de pulsar y soltar puede diferir, por lo que se deben validar ambos bordes y asegurarse de que el método de software o hardware elegido maneje el evento que la máquina necesita.

¿Qué tiempo de rebote debo usar para una entrada PLC?

No existe un valor universal. Utilice el rango de filtrado documentado del módulo, mida el comportamiento representativo del interruptor y confirme que el retraso resultante no oculte un comando válido de corta duración.

¿Siempre mejora el rebote un condensador RC más grande?

No. Una constante de tiempo mayor puede ralentizar la respuesta, afectar los umbrales lógicos y suprimir eventos válidos. Verifique las tolerancias del resistor/condensador, la fuga de entrada, la histéresis y los requisitos de borde especificados por el controlador.

¿Debe aplicarse la eliminación de rebotes a una parada de emergencia en el código habitual de un PLC?

Ninguna configuración de debounce de propósito general debe sustituirse por un diseño de seguridad validado. Utilice los dispositivos con clasificación de seguridad y la arquitectura del controlador definidos por la evaluación de riesgos de la máquina.

Referencias

Formulario de contacto