Raspberry Pi 4 Lüfter steuerung?

3 Antworten

Man kann den per PWM (Pulsweitenmodulation) steuern. Das ist über Python realisierbar.

Zuerst das hier durchführen:

cd ~;
sudo apt -y update;
sudo apt -y upgrade;
sudo apt -y install python3-pip;
sudo pip3 install gpiozero;
nano USV/fancontrol.py;

Als Inhalt des Scriptes das hier:

from gpiozero import CPUTemperature, PWMLED
from time import sleep

led = PWMLED(2) # PWM-Pin

startTemp = 55 # Temperatur bei der der Luefter an geht

pTemp = 4 # Proportionalanteil
iTemp = 0.2 # Integralanteil

fanSpeed = 0 # Lueftergeschwindigkeit
sum = 0 # Speichervariable fuer iAnteil

while True: # Regelschleife
         cpu = CPUTemperature() # Auslesen der aktuellen Temperaturwerte
         actTemp = cpu.temperature # Aktuelle Temperatur als float-Variable
         diff = actTemp - startTemp
         sum = sum + diff
         pDiff = diff * pTemp
         iDiff = sum * iTemp
         fanSpeed = pDiff + iDiff + 35
         if fanSpeed > 100:
                 fanSpeed = 100
         elif fanSpeed < 35:
                 fanSpeed = 0

         if sum > 100:
                 sum = 100
         elif sum < -100:
                 sum = -100

         #print(str(actTemp) + " Grad Celsius, " + str(fanSpeed))

         led.value = fanSpeed / 100 # PWM Ausgabe
         sleep(1)

Dann das Script in /etc/rc.local vor dem finalen "exit 0;" einhängen:

### Ansteuerung des Gehaeuseluefters abhaengig von der Prozessor-Temperatur
python3 /home/pi/USV/fancontrol.py &
Woher ich das weiß:Berufserfahrung – Let's have some Raspberry PI almost at breakfast ;-)
iEdik  04.09.2022, 17:23

dazu müsste der Fragesteller dem Lüfter an einem PWM-Fähigen Pin anschliessen. Und direkt sowieso nicht..also mit einer kleinen Transistor-Schaltung..

dann wirds gehen..

0
Traveller5712  04.09.2022, 20:18
@iEdik

Dann schreib' das bitte auch dem Fragesteller und nicht als Kommentar auf meine Antwort.

0

Hallo,

ja kannst du..

erstmal benötigst du eine Transistor-Schaltung wo das PWM-Signal vom Raspi verstärkt wird. DIe steuerbaren GPIO vom raspi selbst haben keine grosse leistung wo man einfach einen lüfter (mit 2-pins) anschliessen könnte.

Im bild wird der Lüfter auch auf 5V direkt-Pins angeschlossen = 100% drehzahl.

ich schlage dir vor: google bilder -> raspberry PWM FAN

schon hast millionen ergebnisse dazu..

dasd Script dazu hat bereits der User Traveller5712 gepostet..

Da dee Lüfter nur zwei Pins hat, wird das mit diesem nicht möglich sein. Steuerbare Lüfter haben drei Pins. 2 für Strom und 1 zur Steuerung. Sorry.

Außer du schaffst es, den Strom Pin mit unterschiedlicher Spannung laufen zu lassen.

NackterGerd  01.09.2022, 22:44

Wieso PWM braucht doch keine 3 Pins

0
iEdik  04.09.2022, 17:28

und wie das möglich ist! mit einem Transistor kannst jeden Lüfter auch ohne integrierter PWM-Steuerung die Drehzahl regeln. Ich hab bei meiner Externen HDD dasselbe gemacht ;)

0