Mündəricat:
- Addım 1: Elektron dövrə
- Addım 2: Python Kodu
- Addım 3: Boot Prosedurundan sonra Skriptin avtomatik olaraq necə işə salınması
Video: Raspberry Pi üçün söndürmə düyməsi: 3 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:42
Raspberry Pi, müxtəlif IoT/robot/ağıllı ev/… layihə tətbiqləri yaratmağa imkan verən çox faydalı bir hesablama platformasıdır. Normal bir kompüterlə müqayisədə sahib olmadığı bir şey, bağlama gücünü kəsmə düyməsidir. Elə isə özümüz necə yarada bilərik? Yaxşı, gəlin birlikdə edək!
Bu dərs üçün aşağıdakılara ehtiyacınız olacaq:
- 1 Raspberry Pi artıq qurulmuş və istifadəyə hazırdır
- 1 çörək taxtası və ya elektron dövrə yaratmağa imkan verəcək bir şey
- 1 düymə
- 2 keçid teli
Heç vaxt Raspberry Pi istifadə etməmisinizsə, onu necə konfiqurasiya etmək üçün nə edəcəyimi öyrənmək üçün təlimatımı oxuya bilərsiniz:
www.instructables.com/How-to-Setup-a-Raspberry-Pi-and-Start-Using-It/
Addım 1: Elektron dövrə
Burada çox mürəkkəb bir şey yoxdur, bu olduqca sadə bir sxemdir. Yuxarıdakı 2 şəkil dövrə quruluşunu izah edir. Düymə girişi üçün istədiyiniz GPIO pinindən istifadə edə bilərsiniz, bunu əks etdirmək üçün kodu yeniləməyinizə əmin olmalısınız.
Bunun necə işləyəcəyini tez bir şəkildə izah edək:
- QIRMIZI tel, basma düyməsinin bir ucuna 3.3V çəkir.
- Qara kabel, düymənin digər ucunu giriş olaraq istifadə ediləcək Pi GPIO -ya bağlayır.
- Varsayılan olaraq düymə açıqdır, buna görə heç bir gərginlik keçmir. Belə ki, düymə basılmadıqda QARA kabel 0V -də olur. Bu, Pi GPIO girişinin məntiqi vəziyyətinin 0 olduğu deməkdir.
- düyməyə basıldıqda, gərginlik oradan keçəcək və QARA kabel 3.3V -a bağlanacaq. Daha sonra Raspberry Pi, girişində 1 məntiqi vəziyyətinə uyğun olaraq 3.3V gərginlik görəcək.
Addım 2: Python Kodu
İndi dövrə istifadəyə hazırdır, onu işlədən kodu yazmalıyıq və burada PyCharm mühitində Python istifadə edirəm. Düyməni Raspberry Pi-ni yalnız 3 saniyədən çox basıldıqda söndürmək üçün konfiqurasiya etdim. Bunu etməyimin səbəbi, təsadüfən basılması çox asandır və təsadüfən Pi -ni bağlamaq istəmirsiniz.
Yuxarıdakı çap ekranı PyCharm mühitimdəndir və kod aşağıdakı kimidir (başqa bir layihəyə bağlı olan, lakin burada tələb olunmayan 26 -cı sətirdə kiçik bir fərqlə):
# Bu, müəyyən edilmiş düyməni basıb saxladığınız zaman Raspberry Pi -ni söndürmək üçün bir koddur # Xarici modul RPi. GPIO -nu GPIOimport zamanı import # OS Raspberry Pi pin və dəyişənlərin tərifi və hold_time = 3 # Poweroffbutton_poweroff = 1 # Push düyməsinə basıb saxlayın Raspberry PiGPIO.setwarnings (Yanlış) GPIO.setmode (GPIO. BCM) # Broadcom pin nömrələndirmə sxemiGPIO.setup (button_poweroff, GPIO. IN, pull_up_down = GPIO. PUD_DOWN) # Dəqiq olaraq giriş olaraq təyin edilmiş düymə: GPIO.wait_for_edge (button_poweroff, GPIO. RISING) start = time.time () time.sleep (0.2) # GPIO.input (button_poweroff) == 1: time.sleep (0.01) length = time.time () - uzunluq varsa başla > hold_time: os.system ("sudo poweroff")
Düyməni fərqli bir GPIO -ya bağlamısınızsa, ilk şey, yuxarıdakı çap ekranında 11 -ci sətri müvafiq GPIO girişi ilə yeniləməkdir:
button_poweroff = GPIO_X # Dövrünüzdə istifadə olunan düzgün GPIO ilə yeniləyin
Ayrıca, hold_time dəyişəni, Pi -nin bağlanmasına səbəb olan gözləmə müddətini dəyişdirməyə imkan verir.
Addım 3: Boot Prosedurundan sonra Skriptin avtomatik olaraq necə işə salınması
Kod hazır olduqdan sonra onu icra etməliyik. Ancaq bu skriptin Pi açılışında hər dəfə avtomatik olaraq icra olunmasını təmin edə bilsək rahat olardı, buna görə də hər dəfə skriptin işləməsi üçün düymə bizsiz işləyəcəkdi. Bunun bir çox yolu var. Pi -nin / etc / qovluğunda yerləşən rc.local faylına bura bir sətir əlavə etdim. Yükləmə ardıcıllığının bir hissəsi olaraq icra olunur.
Bir əmr satırını açmalı və aşağıdakı əmrləri yazmalısınız (yuxarıdakı 1 -ci ekran):
cd /
cd və s. sudo nano rc.local
İlk əmr sizi /home /pi qovluğunuzdan kök olana aparacaq.
İkinci əmr sizi / etc / qovluğuna aparacaq.
Nəhayət, üçüncüsü, rc.local faylını dəyişdirmək üçün lazım olan tam redaktə hüquqlarına malik super istifadəçi olaraq açacaq.
Dosyada bir dəfə, sonuna bir sətir əlavə etməlisiniz, ancaq 0 ifadəsindən çıxmazdan əvvəl (yuxarıdakı 2 -ci ekran):
# Skript başlatmaq üçün bu xətti rc.local faylına əlavə edin
sudo python /home/pi/Documents/shutdown_with_hold.py &
Burada diqqət etməli olduğunuz bir neçə şey var:
- faylınızın adı: yuxarıdakı sətirdə, faylın shutdown_with_hold.py olduğunu düşünürəm. Ancaq istədiyiniz hər şey ola bilər, sadəcə adını öz adınızla yeniləyin.
- faylınızı harada saxladığınız: yuxarıdakı sətirdə/home/pi/Documents qovluğunda saxlanıldığını düşünürəm. Ancaq yenə də hər yerdə ola bilər. Faylınızın mütləq yolunu bura qoyduğunuzdan əmin olmalısınız.
- sonundakı "&" işarəsi: bu vacibdir və bu əmrin arxa planda işləməsinə imkan verir
Və bu qədər! Beləliklə, indi Pi hər dəfə AÇIQ olanda skript icra olunacaq və onu söndürmək üçün düyməni 3 saniyədən çox basmalı olacaqsınız.
Tövsiyə:
Mobil Tam Şarj Avtomatik Söndürmə: 20 addım
Mobile Full Charge Autooff: Tam doldurulduqda cib telefonu avtomatik olaraq kəsilir. Gecə buraxsanız belə batareyanın ömrü ilə əlaqədar narahat olmayın. Mobil telefonlar batareyalarla işləyir. Batareyaların istifadəsi əlverişli olsa da, onların istifadəsi də bəzi tədbirlərə ehtiyac duyur. Bir ana
Velosiped üçün gecikmiş söndürmə vaxtı: 5 addım
Velosiped üçün gecikmiş söndürmə vaxtı: problem: velosipedimə fərqli qurğular əlavə etdim. Problem ondadır ki, ya birbaşa batareyaya bağlıdırlar, ya da sızma cərəyanı çəkirlər, ya da əsas keçiddən sonra velosipedimi söndürdüyüm zaman mövcud deyil
PLC Təhlükəsizliyi üçün Simsiz Təhlükəsizlik Düyməsi: 6 Adım (Şəkillərlə birlikdə)
PLC Təhlükəsizliyi üçün Simsiz Təhlükəsizlik Düyməsi: Bu layihə, təhlükəli istehsal müəssisələri üçün əlavə bir təhlükəsizlik təbəqəsi yaratmaq üçün IoT və (sonda) robot texnikasından istifadə konsepsiyamın sübutudur. Bu düymə siqnalın idarə edilməsi də daxil olmaqla birdən çox prosesi başlamaq və ya dayandırmaq üçün istifadə edilə bilər
Kerbal Space Proqramı üçün Fiziki Hazırlama Düyməsi ilə Kosmik Lansmanınızı Təkmilləşdirin: 6 Addım
Kerbal Space Proqramı üçün Fiziki Hazırlıq Düyməsi ilə Kosmik Lansmanınızı Təkmilləşdirin: Bu yaxınlarda Kerbal Space Proqramının demo versiyasını aldım. Kerbal Kosmik Proqramı, raketləri dizayn etməyə və buraxmağa, onları uzaqdakı peyklərə və planetlərə yönəltməyə imkan verən bir simulyator oyunudur. Hələ də Aya müvəffəqiyyətlə enməyə çalışıram (o
ESC üçün Xarici Güc Düyməsi: 3 Adım (Şəkillərlə)
Bir ESC -ə Xarici Güc Düyməsi: Mən elektrik skeytbordu qururam və bütün elektroniklərimi eyni korpusa yerləşdirə bilmək üçün ESC -ə xarici açar əlavə etməliyəm. Parça siyahısı: -Pushbutton-teller-shrinktube (isteğe bağlı) -hotglue (isteğe bağlı) -ESC (banggood: https://goo.gl/4n8kzB)