Cuprins:

Ventilator de răcire automat pentru Pi: 4 pași (cu imagini)
Ventilator de răcire automat pentru Pi: 4 pași (cu imagini)

Video: Ventilator de răcire automat pentru Pi: 4 pași (cu imagini)

Video: Ventilator de răcire automat pentru Pi: 4 pași (cu imagini)
Video: BTT - Manta M4P - Automated Controller fan for stepper cooling 2024, Noiembrie
Anonim
Ventilator de răcire automat pentru Pi
Ventilator de răcire automat pentru Pi

Descriere Un design simplu pentru a controla un mini ventilator de 5V cu python, fără a fi nevoie de o placă de măsurare, tranzistoare etc. Tot ce aveți nevoie sunt câteva cabluri și un releu cu 1 canal. Am avut un releu cu 2 canale pe care îl recomand, deoarece este aproape același preț, plus veți obține un controler suplimentar. Un script care se execută la fiecare oră va verifica temperatura pi-ului și va porni / opri un ventilator până la atingerea temperaturii dorite.

Introducere Din moment ce vara a venit, pi-ul meu secundar funcționează puțin prea tare pentru gustul meu, așa că am vrut să-l răcoresc puțin din când în când. Bineînțeles, aș putea avea un ventilator care să sufle 24/7, dar a) care ar necesita o placă de calcul și câteva rezistențe, etc. lumea este mai distractivă:) și c) e cu adevărat ieftină … tot ce ai nevoie sunt niște cabluri și releu.

Bucurați-vă și simțiți-vă liber să comentați!

Pasul 1: Materiale necesare

Materiale necesare
Materiale necesare
Materiale necesare
Materiale necesare
Materiale necesare
Materiale necesare
Materiale necesare
Materiale necesare

- crontab / python instalat pe pi- Un pi de zmeură cu carcasă - mini ventilator 5v (link) - releu cu 2 canale (link) - Cuplu de cabluri feminin la feminin (link). Am avut doar 1, așa că am folosit un vechi cablu audio DVD pentru PC și acel cablu f2f suplimentar pentru pinul controlerului de releu.

Notă: Gaura de deasupra carcasei mele cu zmeură era puțin mai mică decât de obicei, așa că a trebuit să folosesc un burghiu pentru a o face puțin mai largă. Poate ar trebui să obțineți o carcasă cu un ventilator de 5v deja atașat la ea, dacă nu sunteți sigur de dimensiunea acesteia pe carcasa dvs.

Pasul 2: Circuitul - Ansamblu

Circuitul - Ansamblu
Circuitul - Ansamblu
Circuitul - Ansamblu
Circuitul - Ansamblu
Circuitul - Ansamblu
Circuitul - Ansamblu
Circuitul - Ansamblu
Circuitul - Ansamblu

După cum puteți vedea din imaginea de mai sus, folosesc pinii 2, 6, 12, care sunt la fel pentru orice tip de pi zmeură pe care l-ați putea avea, deci nu trebuie să vă faceți griji cu privire la faptul că folosesc un Pi Modelul B rev2.

Conectați cablurile în același mod în care o fac. - 5v (pin2) merge la VCC - GND (pin6) la GND - GPIO18 (pin2) merge la IN1 Asigurați-vă că jumperul releului dvs. este setat la: JD-VCC VCC.

Acum la releu … Configurarea mea este un pic ciudată, știu. Nu am vrut să folosesc o sursă de alimentare externă pentru a porni ventilatorul, așa că l-am atașat cam la pi. Va trebui să faceți o mică tăiere atât a cablului de 5v, cât și a cablului GND care vine de la pi pentru a atașa cablurile ventilatorului în același mod în care o fac. Puteți folosi un fier de lipit și niște bandă, așa cum am făcut-o. Nu cred că există un motiv de îngrijorare cu privire la blocarea pi-ului dvs., deoarece doar cablul de masă este conectat direct la pi. Dacă vedeți cu atenție imaginea, comutatorul releului este conectat la cablul de alimentare, ceea ce înseamnă că atunci când ventilatorul este oprit, conexiunea directă cu pi este „deschisă”, de asemenea. Deci, orice curent electric pe care ventilatorul l-ar putea produce atunci când se stinge, nu va avea nicio modalitate de a reveni la pi. Am vrut să văd lumina roșie atunci când ventilatorul este pornit, așa că știu când pi-ul se răcește. Dacă doriți, ați putea folosi celelalte porți pentru a se întâmpla invers. Dar probabil că ar trebui să inversați comenzile GPIO în scriptul python (în funcțiile fanON fan OFF afișate în pasul următor) pentru a-l face să funcționeze … Veți vedea la ce mă refer când ajungem la el.

Pasul 3: Scriptul

Scriptul
Scriptul
Scriptul
Scriptul

Acum nu vă speriați despre scripturi … Săptămâna trecută nu știam python și totuși am reușit să scriu acest script citind și testând diferite exemple. Știu alte limbaje de programare, deși nu vă faceți griji, nu vă voi arunca piul. mult, este practic nou.

Instrucțiuni

1) Descărcați atașamentul sau pur și simplu copiați-l / lipiți-l de pe pastebin aici și denumiți-l fan.py

2) Plasați scriptul fan.py în / home / pi / folder

3) Executați: sudo chmod + x /home/pi/fan.py și sudo chown pi: pi /home/pi/fan.py

4) Presupunând că aveți instalat crontab pe pi executați: crontab -e

5) În partea de jos copiați / lipiți: 5 * * * * sudo python /home/pi/fan.py și salvați fișierul. (Ctrl + X și Y)

Acest crontab va executa scriptul la fiecare 1h5m. Scriptul va funcționa și ca un script independent … ceea ce înseamnă că, în afară de acțiunea automată crontab, puteți porni / opri manual ventilatorul. Faceți acest lucru folosind astfel de parametri:

  • sudo python /home/pi/fan.py pe sau
  • sudo python /home/pi/fan.py off

De asemenea, am scris o funcție failsafe în cazul în care apăsați Ctrl + C în timp ce scriptul rulează. Dacă faceți acest lucru, ventilatorul se va opri înainte ca scriptul să iasă.

Deci, cum funcționează acest lucru?

În fiecare oră scriptul execută și verifică temperatura pi. Dacă temperatura este peste o valoare X, ventilatorul se va porni și va rămâne aprins până se va răci până la valoarea Y. Când o va face, scriptul va ieși. Dacă, dintr-un anumit motiv, nu atinge niciodată acea temperatură scăzută și trece o oră, data viitoare când se execută scriptul, va „vedea” că ventilatorul este încă pornit și al doilea script se va opri… deci folosiți valori de temperatură realiste dacă doriți ca ventilatorul să de fapt, porniți / dezactivați. Dacă nu, setați doar câteva valori ridicole (cum ar fi Y = 0 grade Celsius), astfel încât ventilatorul să rămână mereu pornit.) Dacă pi-ul dvs. funcționează între aceste 2 valori (X, Y), înseamnă că funcționează la temperaturi „acceptate”, astfel încât scriptul va ieși doar atunci când verifică temperatura în fiecare oră.

Explicarea unor valori

În partea de sus a scriptului există câteva variabile globale. Există variabilele pe care trebuie să le schimbați.

# Identificați care pin controlează releul FAN_PIN = 18 # caseta galbenă ex: GPIO18 # Verificarea temperaturii. Porniți ventilatorul dacă temp> 49C FAN_START = 49 # Verificarea temperaturii. Închideți sub 28C FAN_END = 28

Este destul de evident ce să faci aici. Dacă ați folosit GPIO18 așa cum am făcut-o, atunci lăsați 18 aici, altfel schimbați valoarea respectivă la gpio pe care l-ați folosit. FAN_START și FAN_END sunt temperaturile ridicate / scăzute pe care doriți să le utilizați. Puteți chiar pune numerele plutitoare acolo, dacă doriți, cum ar fi 49.2

Notă:

Îți amintești modul în care mi-am configurat releul? Dacă vedeți funcțiile fanON și fanOFF, veți observa că setez ieșirea gpio la False pentru a porni ventilatorul și True pentru a-l opri. Dacă ați ales o altă configurație de poartă pe releu, probabil că va trebui să inversați aceste valori.

Pasul 4: Note finale

Note finale
Note finale

Îmi cer scuze pentru instrucțiunile detaliate. Am vrut să acoper toate tipurile de utilizatori. Probabil că există o modalitate mai bună de a face toate acestea, dar am făcut tot ce am putut cu materialele în mână și cu noobness-ul meu în circuit și python.

Un mic cod bonus

Dacă doriți o modalitate rapidă de a verifica temperatura pi-ului dvs., creați un fișier numit temp în folderul / usr / local / bin și apoi copiați lipiți acest script în interiorul:

pastebin.com/rUYqGjV5

executați: chmod + x / usr / local / bin / temp pentru ao face executabil.

Apoi, tastați temp din oricare dosar doriți să vedeți temperatura pi.

Recomandat: