Problema Mosfet e AnalogWrite

Ciao a tutti.
ho un modulo mosfet (tinkerkit t010020) collegato ad un uscita pwm di arduino. Se al mosfet (con ingresso 12V) collego un led o altri elementi che non assorbono più di pochi mA, non ho problemi.
Il guaio è quando collego una scaldiglia da 50W (alimentata a 12V).
Ho dei picchi di tensione come nella foto allegata.
La cosa che non capisco è che questi picchi non si verificano con AnalogWrite(0) o AnalogWrite(255), ma per tutti i valori da 1 a 254. Questo mi limita nell’usare il mosfet solo come interruttore e di rinunciare al PWM.
In rete ho trovato soluzioni con filtri o diodi di flyback, ma non sono riuscito a limitare il problema. A qualcuno è mai capitato?

porziocatone: Il guaio è quando collego una scaldiglia da 50W (alimentata a 12V). Ho dei picchi di tensione come nella foto allegata.

Premesso che l'IRF520 è un mos che richiede 10 V sul Gate per andare in saturazione, con solo i 5V di Arduino il canale va in conduzione solo parzialmente, c'è da vedere che tipo di carico è la tua scaldiglia, se è un carico induttivo è normale che in PWM trovi delle extratensioni, che vanno spente se non vuoi distruggere il mos. Tocca pure vedere come hai fatto la misura perché dall'immagine che hai postato si capisce ben poco. Sul modulino oltre al mos c'è un IC, che sigla ha ? Dalle immagini reperibili in rete non si riesce a leggere e non ho trovato nemmeno uno schema del modulo.

L' integrato sul modulo Tinkerkit é un operazionale che pilota il LED si stato.

Il grafico mi sembra piú una bella oscillazione smorzata. Che scaldiglia é?

Ciao Uwe

Astro ha ragione: con una tensione di gate di 5V, la corrente che scorre nel IRF520 al massimo vale 2A.

La tua scaldiglia da 50W richiede almeno 4A @12V.

Perché non usi un IRLZ44 che è un logic level da 50A?

La scaldiglia è semplicemente una resistenza tipo questa http://www.heatfor.it/index.asp?m=3&s=3&l=it

il modulo mosfet che ho è inserito in un tinkerkit fatto apposta per arduino.

Quindi non è possibile eliminare/limitare quei picchi con filtri o altro?

porziocatone: il modulo mosfet che ho è inserito in un tinkerkit fatto apposta per arduino.

Fatto da qualcuno che di elettronica ne sa ben poco visto che quel MOS non si può usare direttamente con Arduino in quanto la tensione per la saturazione del Gate è nettamente maggiore di quella fornita da un GPIO di Arduino.

Quindi non è possibile eliminare/limitare quei picchi con filtri o altro?

Quella misura che hai fatto mi lascia molti dubbi per quel poco che si vede, sei sicuro di averla fatta come si deve ?

porziocatone: La scaldiglia è semplicemente una resistenza tipo questa http://www.heatfor.it/index.asp?m=3&s=3&l=it

il modulo mosfet che ho è inserito in un tinkerkit fatto apposta per arduino.

Quindi non è possibile eliminare/limitare quei picchi con filtri o altro?

Usa il mosfet indicato da cyberhs. Il modulo non ha un logic level MOSFET. Ciao Uwe

Ok proverò con l’IRLZ44. Ma posso collegarlo direttamente ad arduino?
tipo questo esempio (http://electronics.stackexchange.com/questions/85323/control-12v-circuit-from-a-raspberry-pi).

Allego un’altra immagine degli spike (non prendete in considerazione la scala che è sballata, ho solo fatto uno zoom di quello che succede).

Ho provato come suggerito con il IRLZ44 e le cose sembrano andare meglio.
Ora quando do come comando ad arduino “analogWrite(11, 125)” il risultato è come in allegato.

I picchi non arrivano più oltre i 30 V come in precedenza, ma necessitano comunque di una “limata”.
Come potrei procedere? diodo flyback? condenstori? filtri?

Lo schema del circuito che sto usando è come quello in allegato.

FET_12VLED.jpg

Quei riscaldatori sono carichi quasi puramente resistivi, quindi i picchi non dovrebbero dipendere dal carico ... potrebbero essere disturbi ... potresti mettere uno zener da 15V 1W in parallelo al tutto, tanto per stare sicuro, oppure anche solo in parallelo al mosfet, anodo a massa e catodo al carico (in teoria non dovrebbe neppure servire, dato che l'IRLZ44 ha gia all'interno un diodo di protezione, lo metti solo se vuoi per forza aumentare la protezione rispetto a quella interna) ... ma con quei valori di picchi, non me ne preoccuperei ... controlla solo che non ci siano picchi simili anche sull'alimentazione della logica, li si che potrebbero dare fastidio ...

Etemenanki: Quei riscaldatori sono carichi quasi puramente resistivi, quindi i picchi non dovrebbero dipendere dal carico ... potrebbero essere disturbi ....

Ancora non ha risposto alla domanda "come è fatta quella misura", ovvero molto probabilmente non ci sono quei picchi e sono dovuti ad un errato modo di misura. Un carico resistivo non può elevare la tensione, è possibile solo con un carico induttivo o capacitivo, inoltre i picchi sarebbero con polarità invertita visto che durante la scarica il flusso della corrente è al contrario.

Infatti ero perplesso anch'io per quel motivo ... mi viene quasi da pensare che sia collegato con un lungo filo attorcigliato (che in parte e' induttivo), ma sarebbe al limite, altre possibilita' non me ne vengono in mente ...

La misura l’ho presa tra 0 e la 12V dell’alimentatore (un vecchio alimentatore per PC), con oscilloscopio digitale (Pico). La scaldiglia ha solo 40cm di cavo, non attorcigliato.
In effetti non mi preoccupano i picchi che do al riscaldatore, ma il mio problema era ottenere una 12V più che possibile stabile per alimentare poi, attraverso un convertitore cc a 5V, la logica di arduino, per evitare di cuocerlo.
In ingresso al convertitore cc ora ho messo un condensatore da 22uF in parallelo: ottengo una 12V abbastanza stabile (immagine allegata).

In uscita dal convertitore cc (un Traco TSR 1-2450) ho una tensione un po’ sporca (altra immagine), e varia di circa 100mV quandoi alimento/spengo la scaldiglia. Come posso fare per avere una 5V più stabile?

Grazie mille a tutti per le indicazioni.

porziocatone: In uscita dal convertitore cc (un Traco TSR 1-2450) ho una tensione un po' sporca (altra immagine), e varia di circa 100mV quandoi alimento/spengo la scaldiglia. Come posso fare per avere una 5V più stabile?

Quel OUT è tipico dei regolatori switching, il solo modo per eliminarlo è usare un buon filtro CLC (configurazione pi greco) oppure usare uno switching da 6.5V seguito da un LDO per i 5V, la seconda soluzione è un must negli schemi fatti come si deve dove la pulizia delle tensioni è un fattore critico.

Ok, dopo parecchio tempo mi sono rimesso al lavoro. Ho fatto come detto da astrobeed, con switching da 6.5V seguito da LDO per i 5V. Con il tester misuro 4,98V. Bene...

Quando eseguo AnalogWrite(255), quindi si attiva la scaldiglia (12Vcc) tramite il relativo mosfet consigliato nei post precedenti, mi sapettavo di notare un leggero calo di tensione sulla 5V... E invece leggo 5,36V :o Conseguentemente i sensori ti temperatura che ho collegato agli ingressi analogici fanno un salto di alcuni mV, e falsano la lettura. Appena eseguo AnalogWrite(0), tutto torna nella norma. Le prove le ho fatte sia con un alimentatore esterno da 12V sia con una batteria.

Che LDO stai usando? con cosa leggi i 5,36V? Ciao Uwe

Sto usando un multimetro digitale della fluke

LDO: LM2937ET-5.0

fossi in te farei due cose:

1) isolerei il tutto con un optoisolatore...la tensione puoi prelevarla dai 50v , limitarla con resistenza e uno zener da 15v 1/2w e la mandi al collettore del "4N35" ...l'emettitore lo mandi al gate. inserisci anche una resistenza da 10-50k tra gate e source.

2) diodo in antiparallelo sul carico

ciao bruno

Purtroppo non posso usare questa soluzione avendo il vincolo della tensione di alimentazione a 12Vcc

porziocatone: Quando eseguo AnalogWrite(255), quindi si attiva la scaldiglia (12Vcc) tramite il relativo mosfet consigliato nei post precedenti, mi sapettavo di notare un leggero calo di tensione sulla 5V... E invece leggo 5,36V :o Conseguentemente i sensori ti temperatura che ho collegato agli ingressi analogici fanno un salto di alcuni mV, e falsano la lettura.

scusa ma se la scaldiglia è alimentata separatamente, per quale motivo ti aspetti un calo nei 5V?

cmq se non posti lo schema di tutto il circuito, non si capisce molto. Tira giu uno schema anche a matita di tutti i pezzi e i collegamenti tra di essi. fai pure una foto. sei puoi eh...

ciao vagus