¿Qué es una resistencia push-up/pull-up? [duplicar]

AS La pregunta Una pregunta sobre las resistencias pull up responde solo una parte de mi pregunta , como ya se mencionó en "EDITAR" , hecha poco después de que se hiciera esta pregunta y las respuestas aquí (a continuación) son muy detalladas, en contexto y fáciles de entender. Definitivamente no es un duplicado; marcado como duplicado para 2-3 puntos


Estoy leyendo un libro sobre Arduino y simplemente no entiendo el concepto de resistencia push-up, a continuación se incluye una cita del libro:

el circuito

¿Por qué necesitamos la resistencia R1? R1 garantiza que el pin 7 de la entrada digital de Arduino esté conectado a un voltaje constante de +5V siempre que no se presione el botón pulsador. Si se presiona el botón, la señal en el pin 7 cae a tierra (GND), al mismo tiempo que la alimentación de +5V del Arduino se conecta a GND, evitamos un cortocircuito al limitar la corriente que puede fluir de +5V a GND con una resistencia (1 - 10 KΩ). Además, si no hubiera ninguna conexión desde el pin 7 a +5 V, el pin de entrada estaría "flotando" siempre que no se presione el botón. Esto significa que no está conectado ni a GND ni a +5V, captando ruido electrostático que conduce a una falsa activación de la entrada.

Otro libro lo llamó la resistencia pull-up de Arduino porque atrae la corriente hacia 5V , lo que me confunde aún más: ¿cómo puede una resistencia aumentar el voltaje, no debería caer el voltaje?

Editar : gracias a @Golaž por señalar material útil en Una pregunta sobre las resistencias pull up , en los comentarios (esta edición se insertó el 30 de marzo a las ~6) .

Entonces, ¿qué es todo este concepto? ¿Y qué término push-up/pull-up es correcto?

Además, con referencia a ese circuito anterior:

  1. ¿Qué es el pin flotante ?
  2. ¿Cómo evita R1 un cortocircuito ? ¿Por qué cuenta como cortocircuito y no como circuito cerrado? Después de todo, GND es un fregadero.
  3. ¿Es un problema serio de cortocircuito a solo 5V?

ya he leido:

Pero todavía no lo termino de entender.

¿Puedes ampliar el número 2? no entiendo tu pregunta
Consulte también electronics.stackexchange.com/a/23647/4512 para ver una discusión sobre cómo decidir el valor de la resistencia pullup.
Estoy seguro de que debe haber una pregunta canónica de preguntas frecuentes sobre esto en alguna parte. Si no, entonces tal vez deberíamos crear uno :)
"Push-up" describe un ejercicio para los músculos de la parte superior del cuerpo. Nunca he oído hablar de una resistencia "push-up". Además, dicho término tendría tanto sentido como tratar de empujar algo con una cuerda de goma. Se puede tirar con una cuerda de goma (hacia arriba o hacia abajo), pero no empujar.
@NickAlexeev sí, 52-60 "Push-up"s es parte de mi rutina: P

Respuestas (4)

"Pull-up" se usa con más frecuencia en el diseño de circuitos que "push-up". Pero me imagino que cualquiera te entendería de cualquier manera.

La resistencia pull-up no aumenta el voltaje. Simplemente conecta el suministro de 5V que ya existe al pin de entrada digital del Arduino. Los pines de entrada digital están diseñados para tener una resistencia interna muy alta, por lo que muy poca corriente fluirá hacia el pin. Si fluye muy poca corriente a través de una resistencia, el voltaje en cualquier lado de la resistencia será aproximadamente el mismo. Entonces R1 tendrá aproximadamente 5V en ambos lados. Eso significa, lo más importante, que el voltaje en el pin de entrada será de 5 V cuando no se presione el interruptor.

Nota: Las flechas representan el flujo de corriente.

esquemático

simular este circuito : esquema creado con CircuitLab

Cada vez que Arduino mide el estado del pin de entrada digital, solo puede elegir una de dos opciones: alto o bajo. Algún dispositivo externo debe estar conectado a ese pin (en su caso, un interruptor) para aplicar un voltaje alto o bajo.

Pero, ¿y si no hay nada conectado al pin? Es posible que tenga la tentación de decir que debería leerse como un voltaje bajo. Desafortunadamente, eso no es correcto. Llamamos a esta condición "flotante". El pin no está siendo impulsado activamente hacia arriba o hacia abajo por un dispositivo externo, por lo que simplemente está flotando en un estado desconocido. Esto es peligroso porque el Arduino aún debe elegir alto o bajo cuando mide el pin. No puede elegir "ninguno" como opción. ¿Cuál elegirá? Quién sabe. De hecho, el pin de metal físico en sí mismo actuará como una pequeña antena y puede verse afectado por cualquier campo electrostático cercano. El simple hecho de mover la mano cerca del chip puede hacer que cambie de estado esporádicamente. Moraleja de la historia: NUNCA deje una entrada digital flotando.

El único trabajo de la resistencia pull-up es evitar que el pin flote cuando no se presiona el interruptor.

Una vez que se presiona el interruptor, el suministro de 5 V tiene un camino a tierra a través de la resistencia pull-up y el interruptor cerrado. Pero la resistencia limitará la corriente a una cantidad razonable, lo que evita un corto a tierra. Usando la Ley de Ohm, el voltaje en la parte inferior de la resistencia ahora estará muy cerca de 0V. Dado que ahí es donde se conecta el pin de entrada digital, el Arduino leerá un voltaje bajo. Ahora el firmware programado en el Arduino puede leer con seguridad el estado del pin de entrada digital y determinar cuándo se presiona el botón.

esquemático

simular este circuito

Entonces, ¿por qué no conectamos el suministro de 5V directamente al pin de entrada digital y renunciamos a la resistencia pull-up? Como indicó en su pregunta, eso hará que el suministro de 5V haga un cortocircuito a tierra cuando se presione el interruptor. Según el tamaño de la fuente de alimentación, podría provocar un flujo de corriente masivo a través del interruptor. Podría dañar la fuente de alimentación y posiblemente derretir el botón. Como mínimo, la fuente de alimentación se apagará o apagará y la salida de la fuente se reducirá a casi cero. Si la fuente de alimentación tiene inteligencia, simplemente se apagará. Entonces, sí, un corto a tierra es un problema grave con "solo 5V".

esquemático

simular este circuito

¡Ay de ti un almuerzo/cena! :D

El término correcto es tirar hacia arriba. Nunca he oído hablar de push up, pero supongo que significa lo mismo.

  1. Un pin flotante es aquel que no tiene voltaje asociado. Un trozo de cable que no está conectado a nada está flotando.

  2. Vea abajo.

  3. Este es complicado. Depende del contexto. Y por el aspecto de su pregunta, un cortocircuito puede significar que un voltaje está en cortocircuito a tierra. Esto es malo. Muy mal. No hagas esto. Incluso 1V en cortocircuito a tierra es malo sin una resistencia.

Puede pensar en una fuente de voltaje como un voltaje fijo con corriente variable. Lo que significa que el suministro proporcionará tanta corriente como sea necesario para mantener esos 5V.

El problema con los voltajes de cortocircuito a tierra es que el suministro quiere dar algo de voltaje (con respecto a tierra). Pero la salida de voltaje es 0V (porque está conectada a tierra). Entonces, ¿qué hace la fuente de alimentación para llegar a su nivel de voltaje? Aumenta la corriente. Luego, la corriente aumenta, pero el voltaje sigue siendo 0, por lo que sigue aumentando y aumentando. Otros circuitos no podrán manejar esto, y se calientan y explotan. Las trazas de PCB o los cables que está utilizando no pueden manejar esto, por lo que se calientan, se incendian o simplemente se abren.

¿Cómo solucionas este problema? Agregue algo intermedio para controlar la corriente a un valor seguro. Agregue una resistencia (que es la respuesta al n. ° 2).

Al agregar una resistencia, el suministro no tiene que dar una corriente infinita (o prácticamente, cuál es su límite) porque la resistencia dice "¡Oye! ¡Disminuye la velocidad!".

Creo que tus párrafos sueltos respondieron al #2.
@efox29 gracias por la excelente respuesta, desearía poder aceptar 2 respuestas :)

Dado que otros han abordado la resistencia pullup, solo resaltaré los peligros de solo 5v.

Hace un tiempo raspé una vieja computadora solar y mantuve la fuente de alimentación por un tiempo. Tenía salida de 5v. Accidentalmente lo acorté. Los más de 100 amperios que fluyen a través del arco corto devoraron el punto de contacto en aproximadamente 1/8 de pulgada antes de que los fusibles se derritieran.

¿Entonces qué pasó? Era una gran fuente de alimentación nominal de más de 100 amperios a 5v durante el funcionamiento normal. A medida que la resistencia caía, la corriente aumentaba hasta que comenzó la corrosión por arco del contacto de cobre y excedió la clasificación de corriente de la fuente de alimentación por un margen lo suficientemente grande como para fallar. recuerda que si i = v r y v = 5 después límite r 0 5 r = Afortunadamente, existen otros límites en la corriente.

La respuesta más simple a la pregunta anterior es "se agrega una resistencia pull up solo para mantener el pin en un estado particular en lugar de estar en un estado flotante". Esto se debe a que cuando el pin está flotando, la deriva marginal en el voltaje de alta impedancia puede considerarlo en un estado particular (ya sea alto o bajo). Por lo tanto, siempre preferí tener una resistencia pull-up para dichos pines.