PC-Lüfter-Steuerung (PWM)

  • Hallo liebe Raspberry-Community,

    vorab, ich bin was Elektrotechnik angeht noch ein absoluter Anfänger und taste mich eher noch langsam ran.

    Daher entschuldigt mich, wenn ich noch nicht alles verstehe.

    Ich möchte, um es kurz zu fassen, einen 12 Volt PC-Lüfter steuern und kontrollieren können.

    Dazu habe ich mir einen Lüfter von Artic geholt. (Model: F12 PWM)

    Da ich die volle Leistung brauche, versorge ich den Lüfter über einen externen 12 Volt Netzteil, was auch ziemlich gut funktioniert.

    Die PWM-Steuerung mache ich über den Raspberry-PI, nämlich über den GPIO 18 (PIN 12).

    Auch das funktioniert soweit ganz gut.

    Jedoch habe ich große Probleme mit dem Tacho-Signal des Lüfters.

    Wenn ich alles so anschließe (habe ich aus einem anderem Forum), wie im unteren Bild, dann kriege ich sehr komische Werte.

    Hier der Code, wie ich das alles abrufe:

    Ich kriege bei einer PWM von 100 % einen Wert von 2200 RPM, obwohl im Datenblatt des Lüfters, nur ein RPM von maximal 1400 möglich ist.

    Sobald ich dann die PWM verändere, steigt auch die RPM zahl, was ich nicht so ganz verstehen kann. Ich kriege dann Werte wie 3700 oder 3200.

    Auch bei einem PWM von 1 kriege ich zum Beispiel den Wert 1000 obwohl es bei ca. 500 liegen müsste.

    Kann mir das eventuell einer Erklären ?

    Vielen Dank schonmal.

  • 16 Bit
    Word, Short/short, Integer, modern: int16_t bzw. uint16_t
    signed −32.768 - 32.767
    unsigned 0 - 65.535

    32 Bit
    DWord/Double Word, int, long (Windows auf 16/32/64-Bit Systemen; Unix/Linux/C99 auf 16/32-Bit Systemen), modern: int32_t bzw. uint32_t
    signed −2.147.483.648 - 2.147.483.647
    unsigned 0 - 4.294.967.295

    Hier ist INT signed

    1. // Anzahl der Tacho-Signale
    2. int tacho_counter = 0;

    Hier ist INT unsigned:

    printf("%d\n",zaehler/2 * 60); //durch 2 da pro Umdrehung 2 Impulse gegeben werden

    ....meine ich (mein C ist schon > 20 Jahre her)


    Servus !

    RTFM = Read The Factory Manual, oder so

  • Ich habe diesbezüglich mal nur den Zählerwert (zaehler) ausgeben lassen und mir das selber ausgerechnet.

    Die Werte stimmen soweit.

    Es scheint mir so, als würde er die Impulse aus dem PWM nehmen, weil umso kleiner der PWM umso mehr Impulse hat er ja.

    Aber wieso ist das so? Ich dachte im Lüfter gibt es einen Sensor der die Umdrehungen misst?

    Vielleicht ist auch nur der Sensor kaputt? Ich werde es nochmal mit einem anderen Lüfter ausprobieren.

    Grüße

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!