Cuprins:
- Pasul 1: Piese necesare
- Pasul 2: Conexiuni electrice
- Pasul 3: Program pentru a controla viteza ventilatorului
- Pasul 4: Rulați programul la pornire
Video: Ventilator reglementat PWM pe baza temperaturii procesorului pentru Raspberry Pi: 4 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
Multe carcase pentru Raspberry Pi vin cu un mic ventilator de 5V pentru a ajuta la răcirea procesorului. Cu toate acestea, aceste ventilatoare sunt de obicei destul de zgomotoase și mulți oameni îl conectează la pinul 3V3 pentru a reduce zgomotul. Aceste ventilatoare sunt de obicei evaluate pentru 200mA, ceea ce este destul de ridicat pentru regulatorul 3V3 de pe RPi. Acest proiect vă va învăța cum să reglați viteza ventilatorului în funcție de temperatura procesorului. Spre deosebire de majoritatea tutorialelor care acoperă acest subiect, nu vom activa sau dezactiva doar ventilatorul, ci îi vom controla viteza așa cum se face pe computerul principal, folosind Python.
Pasul 1: Piese necesare
Pentru acest proiect, vom folosi doar câteva componente care sunt de obicei incluse în kiturile electronice pentru pasionați pe care le puteți găsi pe Amazon, ca acesta.
- Raspberry Pi rulează Raspbian (dar ar trebui să funcționeze cu alte distribuții).
- Ventilator de 5V (dar un ventilator de 12V ar putea fi utilizat cu un tranzistor adaptat și o sursă de alimentare de 12V).
- Tranzistor NPN care suportă cel puțin 300mA, ca un 2N2222A.
- Rezistor 1K.
- 1 diodă.
Opțional, pentru a pune componentele în carcasă (dar încă nu a fost realizat):
- O mică bucată de protecție, pentru a lipi componentele.
- Termocontractor mare, pentru a proteja placa.
Pasul 2: Conexiuni electrice
Rezistorul poate fi conectat în ambele sensuri, dar aveți grijă la direcția tranzistorului și a diodei. Catodul diodei trebuie conectat la firul + 5V (roșu), iar anodul trebuie conectat la firul GND (negru). Verificați documentul tranzistorului pentru emițător, bază și colector. Masa ventilatorului trebuie să fie conectată la colector, iar masa Rpi trebuie să fie conectată la emițător
Pentru a controla ventilatorul, trebuie să folosim un tranzistor care va fi utilizat în configurația colectorului deschis. Făcând acest lucru, avem un comutator care va conecta sau deconecta firul de masă de la ventilator la solul de zmeură pi.
Un tranzistor NPN BJT conduce în funcție de curentul care curge în poarta sa. Curentul care va fi permis să curgă din colector (C) către emițător (E) este:
Ic = B * Ib
Ic este curentul care curge prin colector emițătorul, Ib este curentul care curge prin bază către emițător, iar B (beta) este o valoare în funcție de fiecare tranzistor. Aproximăm B = 100.
Deoarece ventilatorul nostru este evaluat la 200mA, avem nevoie de cel puțin 2mA prin baza tranzistorului. Tensiunea dintre bază și emițător (Vbe) este considerată constantă și Vbe = 0, 7V. Aceasta înseamnă că atunci când GPIO este pornit, avem rezistență de 3,3 - 0,7 = 2,6 V. Pentru a avea 2mA prin acel rezistor, avem nevoie de un rezistor de, maxim, 2,6 / 0,002 = 1300 ohm. Folosim un rezistor de 1000 ohm pentru a simplifica și a păstra o marjă de eroare. Vom avea 2,6 mA prin pinul GPIO, care este complet sigur.
Deoarece un ventilator este practic un motor electric, este o încărcare inductivă. Aceasta înseamnă că atunci când tranzistorul încetează să conducă, curentul din ventilator va continua să curgă pe măsură ce o sarcină inductivă încearcă să mențină curentul constant. Acest lucru ar duce la o tensiune ridicată pe pinul de la sol al ventilatorului și ar putea deteriora tranzistorul. De aceea avem nevoie de o diodă în paralel cu ventilatorul care să facă curentul să curgă constant prin motor. Acest tip de configurare a diodei se numește diodă Flywheel
Pasul 3: Program pentru a controla viteza ventilatorului
Pentru a controla viteza ventilatorului, folosim un semnal software PWM din biblioteca RPi. GPIO. Un semnal PWM este bine adaptat pentru acționarea motoarelor electrice, deoarece timpul lor de reacție este foarte mare în comparație cu frecvența PWM.
Utilizați programul calib_fan.py pentru a găsi valoarea FAN_MIN rulând în terminal:
python calib_fan.py
Verificați mai multe valori cuprinse între 0 și 100% (ar trebui să fie în jur de 20%) și vedeți care este valoarea minimă pentru a porni ventilatorul.
Puteți modifica corespondența dintre temperatură și viteza ventilatorului la începutul codului. Trebuie să existe la fel de multe tempSteps ca valori speedSteps. Aceasta este metoda care este utilizată în general pe plăcile de bază ale PC-ului, deplasând punctele pe un grafic Temp / Speed pe 2 axe.
Pasul 4: Rulați programul la pornire
Pentru a rula automat programul la pornire, am realizat un script bash în care am pus toate programele pe care vreau să le lansez și apoi lansez acest script bash la pornire cu rc.locale
- Creați un director / home / pi / Scripturi / și plasați fișierul fan_ctrl.py în acel director.
- În același director, creați un fișier numit launcher.sh și copiați scriptul de mai jos.
- Editați fișierul /etc/rc.locale și adăugați o nouă linie înainte de „exit 0”: sudo sh '/home/pi/Scripts/launcher.sh'
script launcher.sh:
#! / bin / sh # launcher.sh # navigați la directorul de acasă, apoi la acest director, apoi executați scriptul Python, apoi înapoi homelocalecd / cd / home / pi / Scripts / sudo python3./fan_ctrl.py & cd /
Dacă doriți să-l utilizați, de exemplu, cu OSMC, trebuie să îl porniți ca serviciu cu systemd.
- Descărcați fișierul fanctrl.service.
- Verificați calea către fișierul dvs. python.
- Plasați fanctrl.service în / lib / systemd / system.
- În cele din urmă, activați serviciul cu sudo systemctl activați fanctrl.service.
Această metodă este mai sigură, deoarece programul va fi repornit automat dacă este ucis de utilizator sau de sistem.
Recomandat:
Mood Speaker - un difuzor puternic pentru ca muzica Mood să fie redată pe baza temperaturii ambiante: 9 pași
Mood Speaker - un difuzor puternic pentru ca muzica Mood să fie redată pe baza temperaturii ambiante: Hei, acolo! Pentru proiectul meu școlar de la MCT Howest Kortrijk, am realizat un difuzor Mood, acesta este un dispozitiv inteligent pentru difuzoare Bluetooth cu diferiți senzori, un LCD și WS2812b Ledstrip inclus. Difuzorul redă muzică de fundal pe baza temperaturii, dar poate
Conducta ventilatorului de admisie a procesorului de 3 USD: 7 pași (cu imagini)
Conducta ventilatorului de admisie a procesorului de 3 dolari: Dacă aveți un canal de admisie direct din partea laterală a carcasei computerului în ventilatorul CPU, vă puteți oferi o răcire mult mai bună decât orice altă opțiune de răcire (aer). În loc să folosească aerul preluat dintr-un port frontal, care are timp să se încălzească din altă componentă
Pad de răcire pentru laptop DIY - Hacks-uri minunate de viață cu ventilator CPU - Idei creative - Ventilator computer: 12 pași (cu imagini)
Pad de răcire pentru laptop DIY | Hacks-uri minunate de viață cu ventilator CPU | Idei creative | Fan computer: trebuie să urmăriți acest videoclip până la sfârșitul acestuia. pentru înțelegerea videoclipului
Tester cu LED reglementat curent: 4 pași (cu imagini)
Tester LED regulat curent: Mulți oameni presupun că toate LED-urile pot fi alimentate cu o sursă de alimentare constantă de 3V. De fapt, LED-urile au o relație neliniară curent-tensiune. Curentul crește exponențial odată cu tensiunea furnizată. Există, de asemenea, concepția greșită că toate LED-urile de
Ventilator de răcire a procesorului AMD pe o placă grafică PowerColor ATI Radeon X1650 .: 8 pași
Ventilator de răcire a procesorului AMD pe o placă grafică PowerColor ATI Radeon X1650 .: Am această placă grafică PowerColor ATI Radeon X1650 care încă funcționează. Dar principala problemă este că ventilatorul de răcire nu este suficient și se blochează întotdeauna. Am găsit un vechi ventilator de răcire pentru un procesor AMD Athlon 64 și l-am folosit în schimb