Tartalomjegyzék:
- 1. lépés: Szükséges alkatrészek
- 2. lépés: Elektromos csatlakozások
- 3. lépés: Program a ventilátor sebességének szabályozására
- Lépés: Futtassa a programot indításkor
Videó: PWM szabályozott ventilátor a CPU hőmérséklete alapján a Raspberry Pi esetében: 4 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
A Raspberry Pi sok esetben egy kis 5 V -os ventilátorral rendelkezik, hogy segítse a CPU hűtését. Ezek a ventilátorok azonban általában elég zajosak, és sokan a 3V3 -as csatlakozóra dugják, hogy csökkentsék a zajt. Ezek a ventilátorok rendszerint 200mA névleges teljesítményűek, ami elég magas a 3V3 szabályozóhoz az RPi -n. Ez a projekt megtanítja, hogyan lehet szabályozni a ventilátor sebességét a CPU hőmérséklete alapján. A legtöbb, ezzel a témával foglalkozó oktatóanyaggal ellentétben nem csak be- vagy kikapcsoljuk a ventilátort, hanem szabályozni fogjuk annak sebességét, mint a hagyományos PC -n, Python használatával.
1. lépés: Szükséges alkatrészek
Ehhez a projekthez csak néhány olyan összetevőt fogunk használni, amelyek általában megtalálhatók a hobbisoknak szánt elektronikai készletekben, amelyeket az Amazon -on talál, például ezt.
- Raspberry Pi, amelyen Raspbian fut (de más terjesztőkkel is működnie kell).
- 5 V -os ventilátor (de 12 V -os ventilátor használható adaptált tranzisztorral és 12 V -os tápegységgel).
- NPN tranzisztor, amely legalább 300 mA -t támogat, mint a 2N2222A.
- 1K ellenállás.
- 1 dióda.
Opcionális, ha az alkatrészeket a tokba helyezi (de még nincs kész):
- Egy kis darab protoboard, az alkatrészek forrasztásához.
- Nagy hőzsugorodás, a lemez védelme érdekében.
2. lépés: Elektromos csatlakozások
Az ellenállás bármelyik módon csatlakoztatható, de ügyeljen a tranzisztor és a dióda irányára. A dióda katódját a +5 V (piros) vezetékhez, az anódot pedig a GND (fekete) vezetékhez kell csatlakoztatni. Ellenőrizze a tranzisztoros dokkolóban az Emitter, Base és Collector csapokat. A ventilátor földjét csatlakoztatni kell a kollektorhoz, az Rpi földjét pedig az Emitterhez
A ventilátor vezérléséhez tranzisztorokat kell használnunk, amelyeket a nyitott kollektorkonfigurációban használunk. Ezzel van egy kapcsolónk, amely összekapcsolja vagy leválasztja a földelővezetéket a ventilátorról a málna pi földjére.
Az NPN BJT tranzisztor a kapujában áramló áramtól függően vezet. Az áram, amely a kollektorból (C) az emitterbe (E) áramolhat:
Ic = B * Ib
Ic az áram, amely áthalad a kollektoron, az emitter, Ib az áram, amely a bázison keresztül áramlik az emitterre, és B (béta) az egyes tranzisztoroktól függő érték. Hozzávetőlegesen B = 100.
Mivel ventilátorunk névleges teljesítménye 200 mA, a tranzisztor bázisán keresztül legalább 2 mA -re van szükségünk. Az alap és az emitter (Vbe) közötti feszültséget állandónak tekintjük, és Vbe = 0, 7V. Ez azt jelenti, hogy amikor a GPIO be van kapcsolva, akkor 3,3 - 0,7 = 2,6 V van az ellenálláson. Ahhoz, hogy az ellenálláson 2 mA legyen, szükségünk van egy maximum 2,6 / 0,002 = 1300 ohm ellenállásra. 1000 ohmos ellenállást használunk az egyszerűsítés és a hibahatár megőrzése érdekében. 2,6 mA lesz a GPIO tűn keresztül, ami teljesen biztonságos.
Mivel a ventilátor alapvetően elektromos motor, induktív töltés. Ez azt jelenti, hogy amikor a tranzisztor leáll, akkor a ventilátorban lévő áram tovább folyik, miközben az induktív töltés megpróbálja állandóan tartani az áramot. Ez nagy feszültséget eredményezne a ventilátor földelőcsapján, és károsíthatja a tranzisztorokat. Ezért szükségünk van a ventilátorral párhuzamosan egy diódára, amely állandó áramlást biztosít a motoron. Ezt a típusú dióda -beállítást lendkerék -diódának nevezik
3. lépés: Program a ventilátor sebességének szabályozására
A ventilátor sebességének szabályozásához az RPi. GPIO könyvtárból származó szoftver PWM jelet használunk. A PWM jel jól alkalmazkodik az elektromos motorok meghajtásához, mivel reakcióidejük nagyon magas a PWM frekvenciához képest.
A calib_fan.py program segítségével keresse meg a FAN_MIN értéket a terminálon futva:
python calib_fan.py
Ellenőrizze több értéket 0 és 100% között (20% körül kell lennie), és nézze meg, hogy mennyi minimális értéket kell bekapcsolnia a ventilátornak.
A kód elején megváltoztathatja a hőmérséklet és a ventilátor fordulatszámának megfelelését. Annyi tempSteps -nek kell lennie, mint a speedSteps értékeknek. Ez az a módszer, amelyet általában használnak a PC alaplapokon, a Temp / Speed 2 tengelyes grafikonon mozgó pontokat.
Lépés: Futtassa a programot indításkor
A program indításkor történő automatikus futtatásához létrehoztam egy bash szkriptet, ahová az összes indítani kívánt programot betettem, majd indításkor elindítom ezt a bash szkriptet az rc.locale segítségével
- Hozzon létre egy könyvtárat/home/pi/Scripts/, és helyezze a fan_ctrl.py fájlt ebbe a könyvtárba.
- Ugyanebben a könyvtárban hozzon létre egy launcher.sh nevű fájlt, és másolja az alábbi szkriptet.
- Szerkessze az /etc/rc.locale fájlt, és adjon hozzá egy új sort a "exit 0" elé: sudo sh '/home/pi/Scripts/launcher.sh'
launcher.sh szkript:
#!/bin/sh #launcher.sh #navigáljon a saját könyvtárba, majd ebbe a könyvtárba, majd futtassa a python szkriptet, majd vissza a homelocalecd/cd/home/pi/Scripts/sudo python3./fan_ctrl.py & cd/
Ha például OSMC -vel szeretné használni, akkor el kell indítania szolgáltatásként a systemd -vel.
- Töltse le a fanctrl.service fájlt.
- Ellenőrizze a python fájl elérési útját.
- Helyezze a fanctrl.service fájlt a/lib/systemd/system mappába.
- Végül engedélyezze a szolgáltatást a sudo systemctl enable fanctrl.service segítségével.
Ez a módszer biztonságosabb, mivel a program automatikusan újraindul, ha a felhasználó vagy a rendszer megöli.
Ajánlott:
Arduino kijelző hőmérséklete a TM1637 LED kijelzőn: 7 lépés
Arduino kijelző hőmérséklete a TM1637 LED kijelzőn: Ebben az oktatóanyagban megtanuljuk, hogyan kell megjeleníteni a hőmérsékletet a TM1637 LED kijelző és a DHT11 érzékelő és a Visuino segítségével. Nézze meg a videót
Az akkumulátor fogyasztásának csökkentése a Digispark ATtiny85 esetében: 7 lépés
Az akkumulátor energiafogyasztásának csökkentése a Digispark ATtiny85 esetében: vagy: Arduino futtatása 2032 -es érmecellával 2 évig. A Digispark Arduino tábla használata Arduino program segítségével a dobozból 20 mA -t vesz fel 5 volton. 5 voltos tápegységgel 2000 mAh, csak 4 napig működik
Hőmérséklet -szabályozott ventilátor!: 4 lépés
Hőmérséklet -szabályozott ventilátor!: Egy olyan trópusi országban él, mint Szingapúr, frusztráló, hogy egész nap izzad, és közben a tanulásra vagy az ilyen fülledt környezetben végzett munkára kell összpontosítania. Annak érdekében, hogy a levegő áramoljon, és lehűtse magát, kitaláltam a hőmérséklet ötletét
Az IoT Made Easy: Távoli időjárási adatok rögzítése: UV és a levegő hőmérséklete és páratartalma: 7 lépés
Az IoT Made Easy: Távoli időjárási adatok rögzítése: UV és a levegő hőmérséklete és páratartalma: Ezen az oktatóanyagon távoli adatokat rögzítünk UV (ultraibolya sugárzás), léghőmérséklet és páratartalom formájában. Ezek az adatok nagyon fontosak lesznek, és felhasználásra kerülnek egy jövőbeni komplett meteorológiai állomáson. A blokkdiagram megmutatja, hogy mit fogunk kapni a végén
A kijelző hőmérséklete a P10 LED kijelzőmodulon az Arduino használatával: 3 lépés (képekkel)
Kijelző hőmérséklet a P10 LED kijelzőmodulon Arduino használatával: Az előző oktatóanyagban elmondtuk, hogyan kell szöveget megjeleníteni a Dot Matrix LED kijelző P10 modulon az Arduino és a DMD csatlakozó segítségével, amelyet itt ellenőrizhet. Ebben az oktatóanyagban egy egyszerű projekt bemutatót adunk a P10 modul megjelenítő eszközként való felhasználásával