Satura rādītājs:
- 1. darbība. Nepieciešamās detaļas
- 2. darbība: elektriskie savienojumi
- 3. darbība: programma ventilatora ātruma kontrolei
- Solis: palaidiet programmu startēšanas laikā
Video: PWM regulēts ventilators, pamatojoties uz CPU temperatūru Raspberry Pi: 4 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:54
Daudziem Raspberry Pi korpusiem ir neliels 5 V ventilators, lai palīdzētu dzesēt CPU. Tomēr šie ventilatori parasti ir diezgan trokšņaini, un daudzi cilvēki to pievieno 3V3 tapai, lai samazinātu troksni. Šie ventilatori parasti tiek vērtēti ar 200 mA, kas ir diezgan augsts 3V3 regulatoram RPi. Šis projekts iemācīs jums regulēt ventilatora ātrumu, pamatojoties uz CPU temperatūru. Atšķirībā no vairuma apmācību, kas aptver šo tēmu, mēs ne tikai ieslēgsim vai izslēgsim ventilatoru, bet arī kontrolēsim tā ātrumu, kā tas tiek darīts parastajā datorā, izmantojot Python.
1. darbība. Nepieciešamās detaļas
Šim projektam mēs izmantosim tikai dažus komponentus, kas parasti ir iekļauti hobiju elektronikas komplektos, kurus varat atrast vietnē Amazon, piemēram, šo.
- Raspberry Pi, kurā darbojas Raspbian (bet tam vajadzētu strādāt ar citiem izplatītājiem).
- 5 V ventilators (bet 12 V ventilatoru var izmantot ar pielāgotu tranzistoru un 12 V barošanas avotu).
- NPN tranzistors, kas atbalsta vismaz 300 mA, piemēram, 2N2222A.
- 1K rezistors.
- 1 diode.
Pēc izvēles, lai ievietotu sastāvdaļas korpusā (bet vēl nav izdarīts):
- Neliels protoborda gabals sastāvdaļu lodēšanai.
- Liela siltuma saraušanās, lai aizsargātu plāksni.
2. darbība: elektriskie savienojumi
Rezistoru var pievienot jebkurā veidā, taču esiet piesardzīgs attiecībā uz tranzistora un diodes virzienu. Diodes katodam jābūt savienotam ar +5V (sarkanu) vadu, un anodam - GND (melnajam) vadam. Pārbaudiet, vai tranzistora dokumentā nav emitētāja, bāzes un kolektora tapas. Ventilatora zemei jābūt savienotai ar kolektoru, un Rpi zemei jābūt savienotai ar Emitter
Lai kontrolētu ventilatoru, mums jāizmanto tranzistors, kas tiks izmantots atvērtā kolektora konfigurācijā. To darot, mums ir slēdzis, kas savienos vai atvienos zemējuma vadu no ventilatora līdz aveņu pi zemei.
NPN BJT tranzistors vada atkarībā no strāvas, kas plūst tās vārtos. Strāva, kas ļaus plūst no kolektora (C) uz emitētāju (E), ir:
Ic = B * Ib
Ic ir strāva, kas plūst caur kolektoru emitētāju, Ib ir strāva, kas plūst caur pamatni uz emitētāju, un B (beta) ir vērtība atkarībā no katra tranzistora. Mēs aptuvenam B = 100.
Tā kā mūsu ventilators ir novērtēts kā 200 mA, caur tranzistora pamatni mums ir nepieciešami vismaz 2 mA. Spriedze starp pamatni un emitētāju (Vbe) tiek uzskatīta par nemainīgu un Vbe = 0, 7V. Tas nozīmē, ka tad, kad GPIO ir ieslēgts, pie rezistora mums ir 3.3 - 0.7 = 2.6V. Lai caur šo rezistoru būtu 2 mA, mums ir nepieciešams maksimālais rezistors 2,6 / 0,002 = 1300 omi. Mēs izmantojam 1000 omu rezistoru, lai vienkāršotu un saglabātu kļūdas robežu. Mums būs 2,6 mA caur GPIO tapu, kas ir pilnīgi droša.
Tā kā ventilators būtībā ir elektromotors, tas ir induktīvs lādiņš. Tas nozīmē, ka tad, kad tranzistors pārstāj vadīt, ventilatora strāva turpinās plūst, jo induktīvais lādiņš mēģina saglabāt nemainīgu. Tas radītu augstu spriegumu ventilatora zemes tapā un varētu sabojāt tranzistoru. Tieši tāpēc mums paralēli ventilatoram ir nepieciešama diode, kas ļaus strāvai nepārtraukti plūst caur motoru. Šāda veida diodes iestatījumus sauc par spararata diodēm
3. darbība: programma ventilatora ātruma kontrolei
Lai kontrolētu ventilatora ātrumu, mēs izmantojam programmatūras PWM signālu no RPi. GPIO bibliotēkas. PWM signāls ir labi pielāgots elektromotoru darbināšanai, jo to reakcijas laiks ir ļoti augsts, salīdzinot ar PWM frekvenci.
Izmantojiet programmu calib_fan.py, lai atrastu FAN_MIN vērtību, palaižot termināli:
python calib_fan.py
Pārbaudiet vairākas vērtības no 0 līdz 100% (jābūt aptuveni 20%) un noskaidrojiet, kāda ir minimālā vērtība, kas jāieslēdz jūsu ventilatoram.
Koda sākumā varat mainīt temperatūras un ventilatora ātruma atbilstību. TempSteps jābūt tikpat daudz, cik speedSteps vērtībām. Šī ir metode, ko parasti izmanto datoru mātesplatēs, pārvietojot punktus uz 2 asu grafika Temp / Speed.
Solis: palaidiet programmu startēšanas laikā
Lai automātiski palaistu programmu startēšanas laikā, es izveidoju bash skriptu, kurā ievietoju visas programmas, kuras es vēlos palaist, un pēc tam palaižu šo bash skriptu, startējot ar rc.locale
- Izveidojiet direktoriju/home/pi/Scripts/un ievietojiet failu fan_ctrl.py šajā direktorijā.
- Tajā pašā direktorijā izveidojiet failu ar nosaukumu launcher.sh un nokopējiet zemāk esošo skriptu.
- Rediģējiet failu /etc/rc.locale un pievienojiet jaunu rindiņu pirms "exit 0": sudo sh '/home/pi/Scripts/launcher.sh'
launcher.sh skripts:
#!/bin/sh #launcher.sh #dodieties uz mājas direktoriju, pēc tam uz šo direktoriju, pēc tam izpildiet python skriptu, tad atpakaļ homelocalecd/cd/home/pi/Scripts/sudo python3./fan_ctrl.py & cd/
Ja vēlaties to izmantot, piemēram, ar OSMC, jums tas jāsāk kā pakalpojums ar systemd.
- Lejupielādējiet fanctrl.service failu.
- Pārbaudiet ceļu uz savu python failu.
- Ievietojiet fanctrl.service mapē/lib/systemd/system.
- Visbeidzot, iespējojiet pakalpojumu, izmantojot sudo systemctl enable fanctrl.service.
Šī metode ir drošāka, jo programma tiks automātiski restartēta, ja lietotājs vai sistēma to nogalinās.
Ieteicams:
Noskaņas skaļrunis- spēcīgs skaļrunis noskaņas mūzikas atskaņošanai, pamatojoties uz apkārtējās vides temperatūru: 9 soļi
Noskaņas skaļrunis- spēcīgs skaļrunis noskaņojuma atskaņošanai, pamatojoties uz apkārtējās vides temperatūru: Sveiki! Skolas projektam MCT Howest Kortrijk es izveidoju noskaņas skaļruni, kas ir vieda Bluetooth skaļruņu ierīce ar dažādiem sensoriem, LCD un WS2812b iekļauta LED josla. Skaļrunis atskaņo fona mūziku, pamatojoties uz temperatūru, bet var
Mazais saules panelis no 12v līdz 5v regulēts: 3 soļi
Mazs saules panelis no 12v līdz 5v regulēts: Šis ir piemērs ārkārtas USB lādētājam ar saules bateriju. Šajā gadījumā es izmantoju 12V saules bateriju. Es pārveidoju citas sastāvdaļas no vecas datora plates. Tas ir regulēts pie 5V 1A ar šo konstrukciju, lai izmantotu lielāku strāvu LM1084 (5A)
Klēpjdatora dzesēšanas paliktnis DIY - Awesome Life Hacks ar CPU ventilatoru - Radošas idejas - Datora ventilators: 12 soļi (ar attēliem)
Klēpjdatora dzesēšanas paliktnis DIY | Awesome Life Hacks ar CPU ventilatoru | Radošas idejas | Datora ventilators: jums ir jāskatās šis video līdz tā beigām. lai saprastu video
Kompakts regulēts PSU - barošanas bloks: 9 soļi (ar attēliem)
Kompakts regulēts PSU - barošanas bloks: Es jau esmu izgatavojis dažus PSU. Sākumā es vienmēr uzskatīju, ka man ir nepieciešams PSU ar daudziem ampēriem, bet dažu gadu eksperimentēšanas un būvniecības laikā es sapratu, ka man ir vajadzīgs mazs kompakts PSU ar stabilizējošu un labu sprieguma regulēšanu un
Divu spriegumu regulēts barošanas avots: 4 soļi
Divu spriegumu regulējams barošanas avots: Mans draugs, kurš vada elektronisko veikalu, vēlas savā kravas automašīnā instalēt veco cd-rom, lai to izmantotu kā atsevišķu cd atskaņotāju. Viņa problēma bija atrast šim nolūkam piemērotu barošanas avotu. CD-rom tiek izmantoti 2 barošanas avoti, 5 volti, ko izmanto