Ik probeer een NodeMCU (ESP8266) aan te sporen om een PWM signaal naar een setje Noctua PWM fans te sturen om zo de snelheid van de fans te regelen.
De voeding van de fans is onafhankelijk van de de NodeMCU, ik heb alleen direct een GPIO pin van de NodeMCU op het PWM signaal van de fan aangesloten.
Vanwege de interne pull up van het signaal in de fan en de NodeMCU, zou ik verwachten dat dit zonder transistor of pull up / pull down weerstanden zou moeten kunnen. Maar ik ben geen electronica expert, vandaar hier mijn vraag.
Code die ik momenteel gebruik:
Wat ik zou verwachten is dat de fan (aangesloten op D1), nu om de 5 seconden op halve snelheid gaat draaien (512 is de helft van de standaard 1023 als max PWM), en de helft van de tijd uit staat (actief 0 op het PWM signaal).
Wat er gebeurt: helemaal niets, de fan blijft op volle snelheid draaien.
Het PWM signaal van de fan zelf werkt wel, als ik deze 'kortsluit' met zijn eigen ground (actief naar nul trek), gaat de fan netjes uit.
Als de PWM frequentie niet hoog genoeg zou zijn om de fan goed aan te sturen, zou ik op zijn minst verwachten dat de 'actief uit' stand zou functioneren, maar ook dat werkt niet.
Wie snapt wat er hier gebeurt?
De voeding van de fans is onafhankelijk van de de NodeMCU, ik heb alleen direct een GPIO pin van de NodeMCU op het PWM signaal van de fan aangesloten.
Vanwege de interne pull up van het signaal in de fan en de NodeMCU, zou ik verwachten dat dit zonder transistor of pull up / pull down weerstanden zou moeten kunnen. Maar ik ben geen electronica expert, vandaar hier mijn vraag.
Code die ik momenteel gebruik:
C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| include <Arduino.h> #define PWM_FAN1 D1 void setup() { analogWriteFreq(25000); pinMode(PWM_FAN1, OUTPUT); // D1 pin as output. } void loop() { analogWrite(PWM_FAN1, 0); delay(5000); analogWrite(PWM_FAN1, 512); delay(5000); } |
Wat ik zou verwachten is dat de fan (aangesloten op D1), nu om de 5 seconden op halve snelheid gaat draaien (512 is de helft van de standaard 1023 als max PWM), en de helft van de tijd uit staat (actief 0 op het PWM signaal).
Wat er gebeurt: helemaal niets, de fan blijft op volle snelheid draaien.
Het PWM signaal van de fan zelf werkt wel, als ik deze 'kortsluit' met zijn eigen ground (actief naar nul trek), gaat de fan netjes uit.
Als de PWM frequentie niet hoog genoeg zou zijn om de fan goed aan te sturen, zou ik op zijn minst verwachten dat de 'actief uit' stand zou functioneren, maar ook dat werkt niet.
Wie snapt wat er hier gebeurt?
Even niets...