2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
ATX güç kaynağı ünitesinden güç alan bir RaspberryPi'den oluşan bir sistemde, bu devrenin amacı, sistemin tek bir buton ile açılmasını veya kapatılmasını sağlamaktır.
Bu eğitim sitelec.org tarafından geliştirilmiştir.
Adım 1: Fonksiyonel Sunum
Aşağıda devre çalıştırma adımları ayrıntılı olarak verilmiştir.
Lütfen ekteki şematik ve simülasyon şemasına bakın:
X: 2s / div, Y: 0,5v / divATX_PS-ON (sarı) (ölçü)PWR_SW (reg) (simülasyon)RPI_GPIO (mavi) (ölçü)RPI_UART0-TXD (yeşil) (simülasyon)
Açık
Bu devre, gücünü açmak veya kapatmak için ATX_PS-ON ATX PSU pinine etki eder. Varsayılan olarak, bu pin 5V'a ayarlanmıştır, bu da PSU'nun durdurulduğu anlamına gelir. PSU'yu açmak için devrenin ATX_PS-ON'u toprağa ayarlaması gerekir. Basma düğmesi etkinleştirildiğinde, Q2 transistörü ATX_PS-ON'u zemine ayarlar, bu da PSU'nun açılmasını ve RaspberryPi'nin başlatılmasını tetikler.
Sistem çalışıyor
Başlangıçta, RaspberryPi, RPI_UART0-TXD pinini 3.3V'a ayarlayarak, ATX_PS-ON'u yerde tutarak PSU'yu aktif tutan Q1 transistörüne etki eder. Ancak, RPI_UART0-TXD'nin 3.3V'a (RaspberryPi 3'te 2.6 saniye) geçmesi biraz zaman alabilir. Q2 bazındaki RC alt devresi, transistör doygunluğunu yeterli süreyi korumak için tasarlanmıştır. C1 kondansatörü, RPI_UART0-TXD pinindeki voltaj değişimlerini emer; bu, sistemi aktif tuttuğu için RaspberryPi UART kullanılıyorsa faydalıdır.
sistem kapatma
RaspberryPi üzerindeki yazılım tarafından bir giriş GPIO pini okunarak basma düğmesine yeni bir basış algılanır, ardından sistem kapatılabilir. RaspberryPi durdurulduğunda, PCB'sine güç verilir ancak RPI_UART0-TXD pimi yere düşer, ardından Q1 kesilir ve PSU durur.
2. Adım: RaspberryPi Ayarları
Çalışırken RPI_UART0-TXD pini 3.3V'a ayarlandı
Bir SSH istemcisi aracılığıyla RaspberryPi'nizde oturum açın.
İlk olarak, PSU'yu aktif tutmak için RaspberryPi'yi RPI_UART0-TXD'yi çalışırken 3.3V'a ayarlayacak şekilde yapılandırın. Bunu yapmak için /boot/config.txt dosyasını düzenleyin ve sonuna ekleyin:
etkinleştirme_uart=1
GPIO tarafından tetiklenen RaspberryPi durdurma
Basma düğmesinin RaspberryPi kapatmasını tetiklemesine izin vermek için devrenin bir GPIO'ya bağlanması gerekir.
Ekli rpi_shutdown.py betiğini indirin.
Aşağıdaki değerleri değiştirmek için düzenleyebilirsiniz:
- HOLD_TIME: kapatmayı tetiklemek için düğmeyi basılı tutma zamanı (bu değer, düğme bırakıldıktan sonra seviyeyi bir süre koruyan C2 tarafından bozulur)
- PIN_NB: Kullanılacak GPIO numarası
Komut dosyasını /usr/local/bin dizinine kopyalayın ve yürütülebilir hale getirin:
sudo chmod +x /usr/local/bin/rpi_shutdown.py
Gpiozero gibi bağımlılıklarını kurun:
sudo apt-get -y python3-gpiozero python3-pkg-kaynaklarını kurun
Sistem başlangıcında etkinleştirin:
sudo crontab -e
açılış dosyasına şunu ekleyin:
@reboot /usr/local/bin/rpi_shutdown.py &
Bu komut dosyası aşağıdaki belgelere göre yazılmıştır:
RaspberryPi'nizi düzgün bir şekilde yeniden başlatın:
sudo yeniden başlatma
Şimdi devreyi RaspberryPi'ye ve PSU'ya bağlayabilir ve aşağıdakileri test edebilirsiniz:
- PSU, RPI_UART0-TXD RaspberryPi pini tarafından beklendiği gibi aktif tutulur
- düğmeye basmak, PSU'yu durduran RaspberryPi kapanmasını tetikler
3. Adım: Ek Kaynaklar
İlgili kaynaklar sitelec.org'dan bulunabilir:
- Güncel FreeCad projesini ve simülasyon ortamını içeren İngilizce eğitimi
- Güncel FreeCad projesini ve simülasyon ortamını içeren Fransızca eğitimi
- Ayrı bir simülasyon sayfası yöntemine dayalı Fransızca FreeCad simülasyon başlatma öğreticisi