Efecto del botón de inicio de PC desde el punto de vista eléctrico

Básicamente, lo que quiero hacer es conectar uno de los pines digitales de una Raspberry PI conectada a la red a (uno de) los conectores del botón de encendido de la PC, de modo que cuando emita un comando en la red, la Raspberry recibirlo y enviar una señal de encendido a la PC.

¿Alguien puede darme más información sobre el procedimiento de señalización de encendido/apagado en una PC (hardware habilitado)?

Supongo que es algo así como que el botón permite o deshabilita la conexión al disipador o fuente durante un período de tiempo (al menos para el apagado, la cantidad de tiempo parece ser relevante). Necesito saber también el voltaje de la fuente, por supuesto.

Creo que el botón en su posición normal permitirá el flujo de 5V (alto) y lo interrumpirá cuando se presione el botón, 0V (bajo).

Mi multímetro está actualmente roto.

Es posible que esté persiguiendo un problema XY aquí. La mayoría de los adaptadores Ethernet modernos para PC admiten la escucha de un "paquete mágico" que se envía a la computadora para activarla. Esta función generalmente se puede habilitar en BIOS/UEFI. Hacer que Raspberry Pi envíe un paquete de este tipo a la NIC de la PC en lugar de conectarse eléctricamente al interruptor de alimentación podría ser una solución más fácil, más flexible, más confiable y más estandarizada para su problema.

Respuestas (2)

En una PC con fuente de alimentación ATX, un riel de 5V (corriente baja) siempre está encendido, incluso si la PC está apagada. Esto se llama riel de espera de 5V.

El botón de encendido (en el conector del panel frontal) es una entrada lógica que va al IC del controlador del panel frontal (ACPI). Este IC del panel frontal está en el riel de espera de 5 V, por lo que siempre detecta el botón de encendido.

Una vez que se detecta el nivel lógico adecuado en el botón de encendido, ACPI engancha el pin de la fuente de alimentación ATX "PWR ON" a tierra y todos los demás rieles de alimentación en la fuente de alimentación se encienden. Una vez que todos los rieles de alimentación están estables, se afirma "PWR GOOD" y la placa base comienza a usar la energía de los rieles.

lógica pwr btn Conector ATX

Como se puede ver en la imagen de abajo, el botón de encendido es una señal baja activa. Cuando el pin del botón de encendido se lleva al potencial de tierra, se afirma.

ingrese la descripción de la imagen aquí

Finalmente, puede conectar su Raspberry Pi al conector del panel frontal de la placa base de esta manera:conexión mb

Lectura adicional:
1. El IC de administración de energía simplifica la implementación de ACPI
2. Especificaciones de ACPI

Si solo menciona una configuración de colector abierto o circuito de drenaje abierto en paralelo al interruptor, creo que eso cubrirá todo lo que el OP necesita para funcionar.
@rawbrawb No estoy seguro si la entrada es drenaje abierto o colector abierto. Estoy seguro de que se puede encontrar en la hoja de datos de super IO.
Solo digo que tiene todas las partes en su lugar y bien documentadas, solo ahora necesita mostrarles cómo conectarlo usando un transistor (o algo más) conectado a un pin OP para activar la operación, generalmente un OC o configuración OD.

Conecte la salida de señal del R-pi a un transistor NPN conectado así:

ingrese la descripción de la imagen aquí

En este circuito, R1 limita la corriente de la salida R-pi a un nivel seguro. R2 se usa para garantizar que el transistor NPN permanezca completamente apagado cuando el R-pi se puede desconectar o apagar. El R-pi GND necesita interconectarse con el circuito GND y el PC GND. Conecte el pin de salida PWRBTN a la misma conexión en la placa base donde se conecta el botón de encendido del panel frontal. (También puede conectarse en el panel frontal si le resulta más conveniente).

El arnés del panel frontal a menudo tiene un par de cables (uno negro y otro rojo o de otro color) que se conectan a un conector de 2 pines que luego se conecta a la placa base. La conexión negra debe ir a GND y el cable de color a la señal PWRBTN de la placa base. Tenga cuidado de verificar con cuidado porque alguien puede haber instalado el conector de dos pines del panel frontal de manera invertida, lo que aún funcionaría para un interruptor mecánico pero no funcionará correctamente para este circuito que es sensible a la polaridad.

Para operar este circuito, el R-pi normalmente mantendría su salida GPIO en estado BAJO. Luego lo establecería en ALTO durante 0,5 a 1,2 segundos para operar la solicitud de encendido a la PC. Si la PC ya estaba ENCENDIDA, una pulsación breve de la misma duración iniciará un apagado de la PC si el sistema operativo está configurado para aceptar una solicitud de apagado. Es probable que las configuraciones disponibles incluyan PowerOff, Hibernate y Sleep. También es posible forzar el estado de APAGADO haciendo que el R-pi afirme el ALTO en el GPIO de un período de 5 a 6 segundos. Este último modo invoca un modo dentro del conjunto de chips de la PC llamado PWRBTN Override que fuerza al sistema a un estado de apagado de una manera poco elegante.

(Tenga en cuenta que forzar el apagado del sistema usando el modo de anulación puede causar la pérdida de datos si los programas tienen archivos abiertos con datos almacenados en la memoria sin estar cerrados. El apagado correcto con una pulsación breve del botón de encendido generalmente hará que el sistema operativo publique diálogos de advertencia de que hay programas con archivos abiertos todavía activos).

He sugerido un rango de 0,5 a 1,2 segundos para la pulsación breve del botón de encendido para garantizar que la lógica de la placa base detecte y registre la solicitud del botón de encendido. Ciertamente, es posible que un pulso más corto sea efectivo, pero tenga en cuenta que los circuitos de la placa base a menudo contienen circuitos R/C en las líneas del interruptor y el conjunto de chips de la PC también contiene un circuito antirrebote del interruptor. Lo que esto significa es que es poco probable que funcione un pulso de 1 ms del R-pi. Un pulso de 100 ms puede funcionar la mayor parte del tiempo, pero ciertamente depende del diseño de la placa base. El rango más largo que sugiero siempre debería funcionar a menos que la placa base esté rota o el circuito esté mal conectado.