2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
V sistemu, sestavljenem iz RaspberryPi, ki ga napaja napajalna enota ATX, je cilj tega vezja omogočiti vklop ali izklop sistema z enim samim pritiskom na gumb.
To vadnico je razvilo spletno mesto sitelec.org.
1. korak: Funkcionalna predstavitev
Spodaj so podrobno opisani koraki teka vezja.
Oglejte si priloženo shemo in simulacijski diagram:
X: 2s / div, Y: 0,5v / divATX_PS-ON (rumeno) (merjenje) PWR_SW (reg) (simulacija) RPI_GPIO (modro) (merilo) RPI_UART0-TXD (zeleno) (simulacija)
Vklop
To vezje deluje na vtičnico napajalnika ATX_PS-ON ATX, da sproži vklop ali izklop napajanja. Privzeto je ta pin nastavljen na 5V, kar pomeni, da je napajalnik ustavljen. Za vklop napajalnika mora vezje nastaviti ATX_PS-ON na tla. Ko je pritisnjen gumb, tranzistor Q2 nastavi ATX_PS-ON na tla, kar sproži vklop napajalnika in zagon RaspberryPi.
Sistem teče
Ob zagonu je RaspberryPi svoj pin RPI_UART0-TXD nastavil na 3,3 V, delujoč na tranzistorju Q1, ki ohranja napajanje aktivnega, tako da ATX_PS-ON drži pri tleh. Vendar pa lahko traja nekaj časa, preden RPI_UART0-TXD preide na 3,3 V (2,6 sekunde na RaspberryPi 3). Podkrog RC na osnovi Q2 je zasnovan za vzdrževanje dovolj časa nasičenosti tranzistorja. Kondenzator C1 absorbira spremembe napetosti na zatiču RPI_UART0-TXD, kar je uporabno, če uporabljate RaspberryPi UART, ker ohranja sistem aktiven.
Izklop sistema
Programska oprema na RaspberryPi zazna nov pritisk na potisni gumb, tako da odčita vhodni pin GPIO, nato pa lahko izvedete zaustavitev sistema. Ko se RaspberryPi ustavi, njegovo tiskano vezje ostane pod napajanjem, toda pin RPI_UART0-TXD gre na tla, Q1 se nato odreže in napajalnik se ustavi.
Korak: Nastavitve RaspberryPi
Zatič RPI_UART0-TXD je med delovanjem nastavljeno na 3,3 V
Preko odjemalca SSH se prijavite v svoj RaspberryPi.
Najprej konfigurirajte RaspberryPi tako, da med delovanjem nastavi RPI_UART0-TXD na 3,3 V, da bo napajalnik aktiven. Če želite to narediti, uredite /boot/config.txt in na koncu dodajte:
enable_uart = 1
Zaustavitev RaspberryPi, ki jo sproži GPIO
Če želite pritisniti gumb, da sproži zaustavitev RaspberryPi, mora biti vezje priključeno na GPIO.
Prenesite priloženi skript rpi_shutdown.py.
Lahko ga uredite, da spremenite naslednje vrednosti:
- HOLD_TIME: čas, da držite gumb pritisnjen, da sprožite zaustavitev (to vrednost popači C2, ki ohrani raven še nekaj časa po spustitvi gumba)
- PIN_NB: Številka GPIO, ki jo želite uporabiti
Kopirajte skript v/usr/local/bin in ga izvedite:
sudo chmod +x /usr/local/bin/rpi_shutdown.py
Namestite njegove odvisnosti, na primer gpiozero:
sudo apt-get -y namestite python3-gpiozero python3-pkg-resources
Omogočite ga ob zagonu sistema:
sudo crontab -e
v začetno datoteko dodajte naslednje:
@reboot /usr/local/bin/rpi_shutdown.py &
Ta skript je napisan v skladu z naslednjo dokumentacijo:
Pravilno znova zaženite RaspberryPi:
sudo ponovni zagon
Zdaj lahko vezje priključite na RaspberryPi in na napajalnik in preizkusite naslednje:
- napajalnik ostane aktiven, kot je bilo pričakovano z vtičem RaspberryPi RPI_UART0-TXD
- s pritiskom na gumb se sproži RaspberryPi, ki zaustavi napajanje
3. korak: Dodatni viri
Sorodne vire najdete na spletnem mestu sitelec.org:
- Vadnica angleščine, vključno z najnovejšimi projekti FreeCad in simulacijskim okoljem
- Francoska vadnica, vključno z najnovejšimi projekti FreeCad in simulacijskim okoljem
- Francoska vadnica za začetek simulacije FreeCad, ki temelji na ločeni metodi simulacijskega lista