Mundarija:
- 1 -qadam: kerakli qismlar
- 2 -qadam: Elektr aloqasi
- 3 -qadam: Fan tezligini boshqarish dasturi
- 4 -qadam: Dasturni ishga tushirishda ishga tushiring
Video: Raspberry Pi uchun CPU haroratiga asoslangan PWM tomonidan boshqariladigan fan: 4 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Raspberry Pi uchun ko'p holatlar protsessorni sovutishga yordam berish uchun 5Vli kichik fan bilan birga keladi. Biroq, bu muxlislar odatda juda shovqinli va ko'p odamlar shovqinni kamaytirish uchun 3V3 piniga ulashadi. Bu fanatlar odatda 200mA uchun baholanadi, bu RPi -dagi 3V3 regulyatori uchun juda yuqori. Bu loyiha sizga fanat tezligini CPU haroratiga qarab tartibga solishni o'rgatadi. Bu mavzuni qamrab oladigan darsliklardan farqli o'laroq, biz fanatni faqat yoqmaymiz, o'chirmaymiz, balki Python yordamida oddiy kompyuterda bo'lgani kabi uning tezligini ham nazorat qilamiz.
1 -qadam: kerakli qismlar
Ushbu loyiha uchun biz, odatda, Amazonda topishingiz mumkin bo'lgan sevimli mashg'ulotlari uchun elektronika to'plamiga kiritilgan bir nechta komponentlardan foydalanamiz.
- Raspberry Pi bilan ishlaydigan Raspberry Pi (lekin boshqa distribyutorlar bilan ishlashi kerak).
- 5V fan (lekin 12V fanni moslashtirilgan tranzistor va 12V quvvat manbai bilan ishlatish mumkin).
- 2N2222A kabi kamida 300mA quvvatlaydigan NPN tranzistor.
- 1K qarshilik.
- 1 diod.
Majburiy emas, komponentlarni korpus ichiga qo'yish (lekin hali bajarilmagan):
- Komponentlarni lehimlash uchun protoboardning kichik bir qismi.
- Kengashni himoya qilish uchun katta issiqlik qisqarishi.
2 -qadam: Elektr aloqasi
Rezistorni har qanday usulda ulash mumkin, lekin tranzistor va diodning yo'nalishiga ehtiyot bo'ling. Diodning katodi +5V (qizil) simga, anod esa GND (qora) simga ulangan bo'lishi kerak. Emitent, tayanch va kollektor pinlari uchun tranzistorli hujjatni tekshiring. Fanning yerini Kollektorga, Rpi -ni esa Emitterga ulash lozim
Ventilyatorni boshqarish uchun biz ochiq kollektor konfiguratsiyasida ishlatiladigan tranzistordan foydalanishimiz kerak. Shunday qilib, bizda fanning tuproqli simini malina pi eriga ulaydigan yoki uzadigan kalit mavjud.
NPN BJT tranzistorlari uning eshigida oqayotgan oqimga qarab o'tkazadi. Kollektordan (C) emitentga (E) o'tishi mumkin bo'lgan oqim:
Ic = B * Ib
Ic - kollektor orqali emitentdan oqadigan oqim, Ib - bazadan emitentga o'tadigan oqim, B (beta) - har bir tranzistorga bog'liq bo'lgan qiymat. Biz B = 100 ga yaqin bo'lamiz.
Bizning fan 200mA deb baholanganligi uchun bizga tranzistor bazasi orqali kamida 2mA kerak. Baza va emitent (Vbe) orasidagi kuchlanish doimiy deb hisoblanadi va Vbe = 0, 7V. Bu shuni anglatadiki, GPIO yoqilganda bizda qarshilikda 3.3 - 0.7 = 2.6V bo'ladi. Ushbu rezistor orqali 2mA bo'lishi uchun bizga maksimal qarshilik 2,6 / 0,002 = 1300 ohm kerak bo'ladi. Xato chegarasini soddalashtirish va saqlash uchun biz 1000 ohmli rezistordan foydalanamiz. Bizda GPIO pin orqali 2,6mA bo'ladi, bu mutlaqo xavfsiz.
Ventilyator asosan elektr dvigateli bo'lgani uchun bu induktiv zaryaddir. Bu shuni anglatadiki, tranzistor o'tkazishni to'xtatganda, fanning oqimi davom etadi, chunki induktiv zaryad tokni doimiy ushlab turishga harakat qiladi. Bu fanning tuproqli pinida yuqori kuchlanishni keltirib chiqaradi va tranzistorga zarar etkazishi mumkin. Shuning uchun bizga fan orqali parallel ravishda diod kerak bo'ladi, u doimiy ravishda dvigatel orqali oqim o'tkazadi. Ushbu turdagi diodlarni o'rnatish volanli diod deb ataladi
3 -qadam: Fan tezligini boshqarish dasturi
Fan tezligini nazorat qilish uchun biz RPi. GPIO kutubxonasidan PWM dasturiy signalidan foydalanamiz. PWM signali elektr motorlarini boshqarishga yaxshi moslashgan, chunki ularning reaksiya vaqti PWM chastotasiga nisbatan juda yuqori.
Terminalda ishlash orqali FAN_MIN qiymatini topish uchun calib_fan.py dasturidan foydalaning:
python calib_fan.py
0 dan 100% gacha bo'lgan bir nechta qiymatlarni tekshiring (taxminan 20% bo'lishi kerak) va muxlisingiz yoqish uchun minimal qiymat qancha ekanligini ko'ring.
Kodning boshida harorat va fan tezligi o'rtasidagi yozishmalarni o'zgartirishingiz mumkin. SpeedSteps qiymatlari kabi juda ko'p tempSteps bo'lishi kerak. Bu odatda kompyuterning anakartlarida, 2 o'qli Temp / Speed tezligida harakatlanadigan nuqtalarda qo'llaniladi.
4 -qadam: Dasturni ishga tushirishda ishga tushiring
Dasturni ishga tushirish paytida avtomatik ravishda ishga tushirish uchun men bosh skriptni yaratdim, u erda men ishga tushirmoqchi bo'lgan barcha dasturlarni qo'ydim va keyin rc.locale yordamida ishga tushirishda bu bosh skriptni ishga tushiraman.
- /Home/pi/Scripts/katalogini yarating va fan_ctrl.py faylini o'sha katalogga joylashtiring.
- Xuddi shu katalogda launcher.sh nomli fayl yarating va quyida skriptdan nusxa oling.
- /Etc/rc.locale faylini tahrirlang va "chiqish 0" oldidan yangi qator qo'shing: sudo sh '/home/pi/Scripts/launcher.sh'
launcher.sh skript:
#!/bin/sh #launcher.sh #uy katalogiga o'ting, keyin bu katalogga o'ting, keyin python skriptini ishga tushiring, so'ngra homelocalecd/cd/home/pi/skriptlar/sudo python3./fan_ctrl.py & cd/
Agar siz uni OSMC bilan ishlatmoqchi bo'lsangiz, uni systemd bilan xizmat sifatida boshlashingiz kerak.
- Fanctrl.service faylini yuklab oling.
- Python faylingiz yo'lini tekshiring.
- Fanctrl.service ni/lib/systemd/system ga joylashtiring.
- Nihoyat, xizmatni sudo systemctl bilan yoqish fanctrl.service.
Bu usul xavfsizroq, chunki foydalanuvchi yoki tizim o'ldirsa, dastur avtomatik ravishda qayta ishga tushiriladi.
Tavsiya:
Arduino bilan ishlaydigan, sensorlar tomonidan boshqariladigan o'chadigan LED yorug'lik chiziqlari: 6 qadam (rasmlar bilan)
Arduino bilan ishlaydigan, yorug'lik sensori boshqariladigan yorug'lik chiroqlari: Men yaqinda oshxonamni yangiladim va yorug'lik shkaflarning ko'rinishini "ko'tarishini" bilardim. Men "Haqiqiy qo'lsizlar" ga bordim, shuning uchun menda ish joyining tagida bo'sh joy bor, shkaf tagida, shkaf tagida va mavjud shkaflarning tepasida
Brauzer tomonidan boshqariladigan Roomba roboti Raspberry Pi Model 3 A+: 6 qadam (rasmlar bilan)
Brauzer tomonidan boshqariladigan Roomba roboti Raspberry Pi Model 3 A+bilan: Umumiy nuqtai Bu ko'rsatma o'lik Roombaga yangi miya (Raspberry Pi), ko'zlar (veb -kamera) va hamma narsani veb -brauzerdan boshqarish usulini berishga qaratiladi. Ketma -ket interfeys orqali boshqarishga imkon beradigan Roomba xakerlari ko'p. Menda yo'q
Raspberry Pi Wifi tomonidan boshqariladigan video oqim robot: 8 qadam (rasmlar bilan)
Raspberry Pi Wifi tomonidan boshqariladigan video oqim robot: kamerasi bo'lgan ajoyib robot yaratish haqida hech o'ylab ko'rganmisiz? Xo'sh, siz to'g'ri joyga keldingiz, men sizga robotni qanday yasashni bosqichma -bosqich ko'rsataman, shu bilan siz tunda video tasmasini boshqarish va ko'rish orqali ruhiy ovlashga borishingiz mumkin
TIVA tomonidan boshqariladigan konveyer kamariga asoslangan rang saralash: 8 qadam
TIVA tomonidan boshqariladigan konveyer tasmasiga asoslangan rang saralash: elektronika sohasida keng ko'lamli dastur mavjud. Har bir ilovaga boshqa sxema va boshqa dasturiy ta'minot, shuningdek, apparat konfiguratsiyasi kerak bo'ladi. Mikrokontroller - bu turli xil ilovalarni ishlatish mumkin bo'lgan chipga o'rnatilgan o'rnatilgan model
ARDUINO YUN tomonidan boshqariladigan ROOMBA STEFANO DALL'OLIO tomonidan Wifi ilovasi orqali: 4 qadam (rasmlar bilan)
AROMINO YUN tomonidan boshqariladigan ROOMBA Wifi ilovasi orqali STEFANO DALL'OLIO: Ushbu qo'llanmada men ARDUINO YUN -ni Roomba -ga Wi -Fi orqali ulash uchun kodni ulashaman. Kod va ilovani to'liq Stefano Dall yaratgan va ishlab chiqqan. Olio.Mening Roomba - bu Roomba 620, lekin siz xuddi shu kodni boshqa Roomb uchun ishlatishingiz mumkin