Sommario:

Modulo di controllo dell'interruttore dell'alimentatore ATX Raspberry Pi: 3 passaggi
Modulo di controllo dell'interruttore dell'alimentatore ATX Raspberry Pi: 3 passaggi

Video: Modulo di controllo dell'interruttore dell'alimentatore ATX Raspberry Pi: 3 passaggi

Video: Modulo di controllo dell'interruttore dell'alimentatore ATX Raspberry Pi: 3 passaggi
Video: PierAisa 284: Alimentatore lineare 12V 60 ampere, primo collaudo 2024, Dicembre
Anonim
Modulo di controllo interruttore alimentatore Raspberry Pi ATX
Modulo di controllo interruttore alimentatore Raspberry Pi ATX

In un sistema composto da un RaspberryPi alimentato da un alimentatore ATX, l'obiettivo di questo circuito è quello di consentire l'accensione o lo spegnimento del sistema con un solo pulsante.

Questo tutorial è stato sviluppato da siteelec.org.

Passaggio 1: presentazione funzionale

Presentazione funzionale
Presentazione funzionale

Di seguito sono dettagliate le fasi di funzionamento del circuito.

Si prega di fare riferimento allo schema allegato e al diagramma di simulazione:

X: 2s / div, Y: 0.5v / divATX_PS-ON (giallo) (misura)PWR_SW (reg) (simulazione)RPI_GPIO (blu) (misura)RPI_UART0-TXD (verde) (simulazione)

Accensione

Questo circuito agisce sul pin dell'alimentatore ATX ATX_PS-ON ATX per attivarne l'accensione o lo spegnimento. Per impostazione predefinita, questo pin è impostato su 5V, il che significa che l'alimentatore è fermo. Per accendere l'alimentatore, il circuito deve impostare ATX_PS-ON a terra. Quando il pulsante è attivato, il transistor Q2 imposta ATX_PS-ON a terra, il che attiva l'accensione dell'alimentatore e l'avvio del RaspberryPi.

Sistema in funzione

All'avvio, il RaspberryPi imposta il suo pin RPI_UART0-TXD su 3,3 V, agendo sul transistor Q1 che mantiene attivo l'alimentatore mantenendo ATX_PS-ON a terra. Tuttavia, potrebbe essere necessario del tempo prima che RPI_UART0-TXD passi a 3,3 V (2,6 secondi su RaspberryPi 3). Il sottocircuito RC sulla base Q2 è progettato per mantenere la saturazione del transistor abbastanza tempo. Il condensatore C1 assorbe le variazioni di tensione sul pin RPI_UART0-TXD, utile se si utilizza l'UART RaspberryPi perché mantiene attivo il sistema.

Arresto del sistema

Una nuova pressione sul pulsante viene rilevata dal software sul RaspberryPi leggendo un pin GPIO di input, quindi è possibile eseguire lo spegnimento del sistema. Una volta arrestato il RaspberryPi, il suo PCB rimane alimentato ma il pin RPI_UART0-TXD va a terra, Q1 viene quindi interrotto e l'alimentatore si ferma.

Passaggio 2: impostazioni RaspberryPi

Pin RPI_UART0-TXD impostato su 3,3 V durante l'esecuzione

Tramite un client SSH, accedi al tuo RaspberryPi.

Innanzitutto, configura il RaspberryPi per impostare RPI_UART0-TXD su 3,3 V durante l'esecuzione, per mantenere attivo l'alimentatore. Per fare ciò, modifica /boot/config.txt e aggiungi alla fine:

enable_uart=1

Arresto RaspberryPi attivato da GPIO

Per consentire al pulsante di attivare l'arresto del RaspberryPi, il circuito deve essere collegato a un GPIO.

Scarica lo script rpi_shutdown.py allegato.

Puoi modificarlo per cambiare i seguenti valori:

  • HOLD_TIME: tempo di tenere premuto il pulsante per attivare lo spegnimento (questo valore è distorto da C2 che mantiene il livello per un po' dopo il rilascio del pulsante)
  • PIN_NB: numero GPIO da utilizzare

Copia lo script in /usr/local/bin e rendilo eseguibile:

sudo chmod +x /usr/local/bin/rpi_shutdown.py

Installa le sue dipendenze, come gpiozero:

sudo apt-get -y install python3-gpiozero python3-pkg-resources

Abilitalo all'avvio del sistema:

sudo crontab -e

aggiungere quanto segue nel file di apertura:

@reboot /usr/local/bin/rpi_shutdown.py &

Questo script è stato scritto secondo la seguente documentazione:

Riavvia correttamente il tuo RaspberryPi:

sudo reboot

Ora puoi collegare il circuito al RaspberryPi e all'alimentatore e testare quanto segue:

  • l'alimentatore è mantenuto attivo come previsto dal pin RPI_UART0-TXD RaspberryPi
  • premendo il pulsante si attiva l'arresto del RaspberryPi, che arresta l'alimentatore

Passaggio 3: risorse aggiuntive

Risorse correlate possono essere trovate da siteelec.org:

  • Tutorial in inglese che include un progetto FreeCad aggiornato e un ambiente di simulazione
  • Tutorial francese con progetto FreeCad aggiornato e ambiente di simulazione
  • Tutorial francese per l'inizio della simulazione di FreeCad, basato su un metodo di foglio di simulazione separato

Consigliato: