Sto cercando di realizzare un filtro analogico per poter ottenere una tensione stabile a partire da un'uscita PWM di Arduino.
Per chi volesse provare a costruire un filtro RC sull'uscita di Arduino, più o meno come descritto in questo link i risultati sono buoni se impostate i valori di R e C per avere una frequenza di taglio pittosto bassa, io ho provato con circa 10 Hz ed il risultato era buono.
Cercando di fare meglio (e nell'ottica di riuscire poi ad aplicare un guadagno per avere un uscita tra 0 e 10V) ho provato a realizzare un filtro Sallen-Key del secondo ordine. In rete ho trovato questo tool di simulazione così mi sono risparmiato un po' di calcoli:
http://sim.okawa-denshi.jp/en/OPseikiLowkeisan.htm
Fenomenale!
Ho fatto varie prove, cercando di avere una banda passante prima di 100Hz, poi di 50Hz per poi alla fine ridurmi ad una banda di 10 Hz, usando i seguenti parametri:
R1 = 470 k?
R2 = 100 k?
C1 = 100 nF
C2 =56 nF
I risultati sono buoni con duty cycle sopra il 50%, mentre sotto ottengo un fenomeno, che seppur minimo, si prensenta come una sorta sfasamento, con una breve sovraelongazione.
Per intenderci vi allego 2 immagini di ciò che succede:
Se qualcuno ha qualche consiglio da darmi per aiutarmi a capire questo problema gliene sarei grato.
Di elettronica ho giusto un po' di basi, quindi non sono sicuro che la scelta di resistenze e condensatori sia tra le migliori, ma non penso che sia lì il problema.
Sono propenso a credere che tutto sia dovuto al contenuto armonico del duty cycle che si abbassa (anche se dovrebbe essere sempre lo stesso), ma sto già vaneggiando, quindi aspetto qualche contributo prima di tornarci a pensare!