Go Down

Topic: Problema frequenze PWM (Read 781 times) previous topic - next topic

ivan64

Dec 01, 2012, 11:43 am Last Edit: Dec 05, 2012, 01:38 am by ivan64 Reason: 1
Devo pilotare 4 ventole da pc in pwm (ventole 3 pin, non pwm), e per ovviare al 'fischio' presente con valori pwm inferiori a 255, ho provato a portare le frequenze pwm a 32khz, non udibili dalle nostre orecchie...

 TCCR1B = 0x01;   // Timer 1: PWM 9 & 10 @ 32 kHz
 TCCR2B = 0x01;   // Timer 2: PWM 3 & 11 @ 32 kHz

Funziona, ventole senza fischio, ma con valori analogWrite tra 70 e 230 circa, le ventole stanno ferme... o almeno, si muovono con piccoli scatti in avanti!
Se diminuisco la frequenza pwm a 8khz (  TCCR1B = 0x02 ) o valori inferiori, il problema non sussiste, ma il fischio persiste....
Elettricamente piloto coi pin del 328 un bc547 che pilota un bd244 (atmega->1k->base bc547  collettore bc547->10k->+12 & 1k->base bd244  emmettitore 547->gnd  emmettitore 244->+12 collettore 244-> ventola).
Ho provato, con frequenza pwm standard o 8khz, a mettere un condensatore in parallelo alla ventola, e funzionicchia, nel senso che il fischio scompare, ma la regolazione non è piu 'lineare', nel senso che gia con analogWrite 30, ho circa la metà della velocità sulle ventole, e tra 100 e 255 la velocità è quella massima o quasi. Oltre questo dovrei adattare un condensatore per ogni ventola, che avendo assorbimenti diversi, hanno pure comportamenti differenti!
Come faccio?!?! Grazie!

tonid

Presumo che il 244 sia un pnp .
Io inizierei a mettere delle resistenze di pull-down sulla base del 547 di un valore di 10K che va ovviamente verso gnd
In questo modo tieni i transistor più stabili....prova così e vedi se trovi miglioramenti.

tuxduino

Io ho fatto qualche esperimento con una ventola brushless (solo 2 fili) e un bd135. Con un condensatore tra i due fili dell'alimentazione il fischio è andato via (100uF).

Qui maggiori informazioni (in inglese) http://arduino.cc/forum/index.php/topic,132300.0.html

ivan64


Presumo che il 244 sia un pnp .
Io inizierei a mettere delle resistenze di pull-down sulla base del 547 di un valore di 10K che va ovviamente verso gnd
In questo modo tieni i transistor più stabili....prova così e vedi se trovi miglioramenti.


Provato, nessuna variazione....

mi sa che dovrò optare per la soluzione con condensatore in parallelo alle ventole, mettendone uno per ogni tipo di ventola.... il fischio si elimina con 4.7uF su una ventola da 60mm 0.07A, e 220uf su una 140mm 0.55A....

ivan64

Sono indeciso se rinunciare o no....
a 32khz, con valori pwm medi, tra 80 e 180, le ventole non funzionano
a 8khz tutto bene, ma fischio ben udibile con valori sotto a 255. La lettura tachimetrica è possibile solo con valori prossimi a 255
Con condensatori elettrolitici in parallelo alle ventole il fischio si elimina, ma oltre a dover dimensionare il condensatore per ogni ventola, è tutt'altro che lineare la velocità al variare del valore pwm... a 30-40 è gia quasi alla velocità massima! Le letture tachimetriche non sono possibili se non a velocità quasi max (pwm >25).

Go Up