Mundarija:
- 1 -qadam: elektron davr
- 2 -qadam: Python kodi
- 3 -qadam: yuklash jarayonidan so'ng skriptni avtomatik ravishda qanday ishga tushirish kerak
Video: Raspberry Pi uchun o'chirish tugmasi: 3 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:22
Raspberry Pi-bu har xil IoT/robototexnika/aqlli uy/… loyihalarini yaratish imkonini beradigan juda foydali hisoblash platformasi. Oddiy kompyuterdan farqli o'laroq, u yo'q-bu o'chirish tugmasi. Xo'sh, qanday qilib biz o'zimiz yaratamiz? Mayli, buni birgalikda qilaylik!
Ushbu darslik uchun sizga quyidagilar kerak bo'ladi:
- 1 Raspberry Pi allaqachon tuzilgan va ishlatishga tayyor
- 1 ta elektron taxta yoki sizga elektron sxemani yaratishga imkon beradigan narsa
- 1 ta tugma
- 2 ta o'tish simlari
Agar siz Raspberry Pi -ni hech qachon ishlatmagan bo'lsangiz, uni qanday sozlash va nima qilish kerakligi haqidagi ko'rsatmalarni ko'rib chiqishingiz mumkin:
www.instructables.com/How-to-Setup-a-Raspberry-Pi-and-Start-Using-It/
1 -qadam: elektron davr
Bu erda hech qanday murakkab narsa yo'q, bu juda oddiy sxema. Yuqoridagi 2 ta rasm sxemani tushuntiradi. Tugmani kiritish uchun siz xohlagan GPIO pinidan foydalanishingiz mumkin, siz buni aks ettirish uchun kodni yangilaganingizga ishonch hosil qilishingiz kerak.
Keling, bu qanday ishlashini tezda tushuntiraylik:
- RED simli tugmachaning bir chetiga 3.3V uzatiladi.
- Qora sim, tugmachaning ikkinchi uchini kirish uchun ishlatiladigan Pi GPIO -ga ulaydi.
- sukut bo'yicha tugma ochiq, shuning uchun u orqali kuchlanish yo'q. Shunday qilib, tugma bosilmaganda Qora sim 0V darajasida bo'ladi. Bu shuni anglatadiki, Pi GPIO kiritishining mantiqiy holati 0 ga teng.
- tugma bosilganda, kuchlanish u orqali o'tadi va Qora kabel 3.3V ga ulanadi. Keyin Raspberry Pi o'z kirishida mantiqiy holat 1 ga mos keladigan 3,3V kuchlanishni ko'radi.
2 -qadam: Python kodi
Endi sxema ishlatishga tayyor, biz uni ishlatadigan kodni yozishimiz kerak va men Python -ni PyCharm muhitida bu erda ishlataman. Men tugmachani Raspberry Pi-ni 3 soniyadan ko'proq bosilganda o'chirish uchun sozladim. Bunday qilishimning sababi shundaki, uni tasodifan bosish juda oson va siz tasodifan Pi -ni o'chirishni xohlamaysiz.
Yuqoridagi bosma ekran mening PyCharm muhitimdan va kod quyidagicha (26 -qatorda kichik farq bilan, u boshqa loyihaga bog'langan, lekin bu erda talab qilinmaydi):
# Bu belgilangan tugmani bosib ushlab turganda Raspberry Pi -ni o'chirish uchun koddir # RPi. GPIO -ni tashqi modul GPIOimport vaqtini import qilish # Raspberry Pi pin va o'zgaruvchilar ta'riflari va hold_time = 3 # Poweroffbutton_poweroff = 1 # tugmasini bosib ushlab turish vaqti Raspberry PiGPIO.setwarnings (False) GPIO.setmode (GPIO. BCM) # Broadcom pin-raqamlash sxemasiGPIO.setup (button_poweroff, GPIO. IN, pull_up_down = GPIO. PUD_DOWN) # Tugma "True" sifatida kiritilgan: 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 () - start uzunlik bo'lsa boshlang > hold_time: os.system ("sudo poweroff")
Agar siz tugmani boshqa GPIO -ga ulagan bo'lsangiz, birinchi narsa, yuqoridagi bosma ekrandagi 11 -qatorni tegishli GPIO kiritish bilan yangilashdir:
button_poweroff = GPIO_X # Tarmoqingizda ishlatilgan to'g'ri GPIO bilan yangilang
Bundan tashqari, hold_time o'zgaruvchisi Pi yopilishiga sabab bo'ladigan kutish vaqtini o'zgartirishga imkon beradi.
3 -qadam: yuklash jarayonidan so'ng skriptni avtomatik ravishda qanday ishga tushirish kerak
Endi bizda kod tayyor, biz uni bajarishimiz kerak. Ammo, agar biz bu skriptni har ishga tushirish paytida avtomatik tarzda bajarishimiz mumkin bo'lardi, shuning uchun tugma har safar skriptni ishga tushirish uchun bizsiz ishlaydi. Buning ko'p usullari bor. Men bu erda sizning Pi -ning / etc / papkasida joylashgan rc.local faylga bitta qator qo'shdim. Bu yuklash ketma -ketligining bir qismi sifatida bajariladi.
Siz buyruq satrini ochishingiz va quyidagi buyruqlarni kiritishingiz kerak (yuqoridagi 1 -bosma ekran):
CD /
CD va boshqalar sudo nano rc.local
Birinchi buyruq sizni /home /pi katalogidan ildiz katalogiga olib boradi, ya'ni.
Ikkinchi buyruq sizni / etc / katalogiga olib boradi.
Nihoyat, uchinchisi rc.local faylini super -foydalanuvchi sifatida ochadi, uni to'liq tahrirlash huquqiga ega, siz faylni o'zgartirishingiz kerak.
Faylga kirgandan so'ng, uning oxiriga satr qo'shishingiz kerak, lekin chiqishidan oldin 0 bayonotidan (yuqoridagi 2 -bosma ekran):
# Skriptni ishga tushirish uchun bu qatorni rc.local faylga qo'shing
sudo python /home/pi/Documents/shutdown_with_hold.py &
Siz diqqat qilishingiz kerak bo'lgan bir nechta narsalar bor, bu erda:
- faylingizning nomi: yuqoridagi satrda, fayl shutdown_with_hold.py deb taxmin qilyapman. Lekin bu xohlagan narsangiz bo'lishi mumkin, faqat ismingizni o'zingizniki bilan yangilang.
- Siz faylni qaerda saqladingiz: yuqoridagi satrda, sizning/home/pi/Documents katalogida saqlangan deb o'ylayman. Ammo yana, hamma joyda bo'lishi mumkin. Siz faqat faylingizning mutlaq yo'lini bu erga qo'yganingizga ishonch hosil qilishingiz kerak.
- oxiridagi "&" belgisi: bu muhim va bu buyruqni fonda ishlashiga imkon beradi
Va bu hammasi! Shunday qilib, hozir sizning skriptingiz har safar ON yoqilganda bajariladi va siz uni o'chirish uchun tugmani 3 soniyadan ko'proq bosishingiz kerak bo'ladi.
Tavsiya:
Microsoft guruhlarining ovozini o'chirish tugmasi: 4 qadam
Microsoft Teams-ning ovozini o'chirish tugmasi: Microsoft Teams-ga qo'ng'iroq paytida o'zingizni ovozini o'chirish/o'chirish uchun oson kirish tugmachasini yarating! Chunki 2020. Ushbu loyihada Microsoft Teams uchun tezkor tugma orqali ovozni o'chirish tugmasi yaratish uchun Adafruit Circuit Playground Express (CPX) va katta tugma ishlatiladi
Batareyani tejash, qo'rg'oshin kislotali avtomobil yoki Lipo batareyasi uchun ATtiny85 bilan zaryadsizlanishdan himoyalanuvchi o'chirish tugmasi: 6 qadam
Batareyani tejash, qo'rg'oshin kislotali avtomobil yoki Lipo batareyasi uchun ATtiny85 bilan zaryadsizlanishdan himoyalanuvchi kalit: Menga mashinalarim va quyosh tizimlarim uchun bir nechta batareya himoyachilari kerak, chunki men tijoratlarini 49 dollarga juda qimmat deb topdim. Ular, shuningdek, 6 mA bilan juda ko'p quvvat sarflaydilar. Men mavzu bo'yicha hech qanday ko'rsatma topa olmadim. Shunday qilib, men o'zim yaratdim, u 2 mA ga teng
UC bilan o'chirilgan o'chirish davri. Bir bosish tugmasi. Bir pin. Diskret komponent: 5 qadam
UC bilan yopiq o'chirish davri. Bir bosish tugmasi. Bir pin. Diskret komponent: Salom hammaga, tarmoqda yoqish/o'chirish sxemasini qidirayotgan edim. Men topgan hamma narsa men qidirganimdek emas edi. Men o'zim bilan gaplashdim, bunga yo'l bor. Bu menga kerak edi.-Yoqish va o'chirish uchun faqat bitta tugma.-Faqat ishlatish kerak
O'chirish va o'chirish sxemasini qanday qilish kerak: 8 qadam
O'chirish va o'chirish sxemasini qanday qilish kerak: Salom do'stim, bugun men LM555 IC yordamida Touch ON va OFF sxemasini qilmoqchiman, biz bir tomondan simlarga tegsak, LED yonadi va biz boshqa simlarga tegsa. yon tomondan LED o'chadi va aksincha
RaspberryPi: LEDni o'chirish va o'chirish: 4 qadam (rasmlar bilan)
RaspberryPi: LEDni o'chirish va o'chirish: Quyidagi bosqichlar LEDlarning ishlashini ko'rsatish uchun tajribalardir. Ular LEDni qanday tezlikda o'chirish va uni qanday o'chirish va o'chirishni ko'rsatadi. Sizga kerak bo'ladi: RaspberryPi (men eski Pi-dan foydalanganman, mening Pi-3 ishlatilgan, lekin har qanday Pi ishlaydi)