Non ci metto più le mani...

Gente questi disturbi mi stanno facendo inc*** non poco...
Lo schema è semplice, collegato tutto a dritto, con i fili più corti possibile!
Condensatore da 1 uF dove i cavi del mosfet si incontrano con l alimentazione!
L alimentazione è fatta con un lm7805, condensatore da 100uf a monte tra vin e massa e tra i 5v e massa da 10uF.

Il micro è il 328pu in standalone con boot da 8MHz perché non ci ho messo il quarzo!

Ho provato a usare la libreria pwm.h per aumentare la freq e portarla a 15KHz come l altra volta. Questo metodo mi aveva tolto il fischio al motore e mi aveva tolto anche i disturbi in un progetto passato!

Il mosfet di potenza lo piloto con un bc337 che dovrebbe avere una freq di 200MHz però con l oscilloscopio ho visto che mi taglia le onde quadre e mi esce un dente di sega sul gate del mosfet.

Scusate, troppe parole e pochi schemi! Ora non sono a casa ma dovevo scrivere questo problema perché non mi fa stare bene! Domani butto giù lo schema almeno capite meglio, nel frattempo io mi rattristo!

Calamaro:
Scusate, troppe parole e pochi schemi! Ora non sono a casa ma dovevo scrivere questo problema perché non mi fa stare bene! Domani butto giù lo schema almeno capite meglio, nel frattempo io mi rattristo!

Il video è privato pertanto inaccessibile, senza schema è impossibile darti una risposta.

Perché fare un video anziché uno schema, o magari anche una foto?

330R:
Perché fare un video anziché uno schema, o magari anche una foto?

Magari nel video ci fa vedere il segnale sul DSO, cosa che è sempre utile in questi casi.

Avete perfettamente ragione, sono un pirla.

il video adesso è pubblico e negli attachments ho messo lo schema elettrico.

Se avete bisogno, vado con l’oscilloscopio sui segnali che vanno al monitor oppure sulla VCC.

Mi era successo un’altra volta, con un arduino Mega. Quell’arduino che aveva probabilmente aveva qualche condensatore rotto perchè poi l’ho sostituito e ho visto che questa interferenza con un segnale PWM da 15KHz spariva, o comunque riuscivo meglio a filtrarla. (Su suggerimento del buon MauroTec).

Ora provo a mettere un toroide sul cavo però non capisco una cosa, ma con il boot a 8MHz dell’arduino, la libreria PWM funziona come dovrebbe oppure no? perchè il BJT che mi pilota il Gate del Mosfet mi sega il segnale. Magari è a una frequenza maggiore… BOH non capisco proprio…

Grazie mille ancora e scusate se sono prolisso e poco professionale!

PWM_10A_CONTROLLER.pdf (54.4 KB)

Calamaro:
Ora provo a mettere un toroide sul cavo però non capisco una cosa, ma con il boot a 8MHz dell'arduino, la libreria PWM funziona come dovrebbe oppure no? perchè il BJT che mi pilota il Gate del Mosfet mi sega il segnale. Magari è a una frequenza maggiore... BOH non capisco proprio...

Certo che hai un dente di sega sul gate del mos, ma come pretendi di caricare la capacità parassita del gate con 10k sul Vin ? :slight_smile:
Non hai scritto che mos usi, comunque tutti mospower richiedono correnti istantanee di centinaia di mA per poter aprire il canale rapidamente, il "dente di sega" che vedi altro non è che la curva di carica della capacità parassita del gate attraverso la R da 10k.
Per risolvere o usi un vero driver per mos, ce ne sono tantissimi hai solo l'imbarazzo della scelta, oppure devi usare due transistor, in pratica l'equivalente di 1/2 ponte H, in modo da poter fornire corrente a sufficienza sia per caricare il gate che per scaricarlo.
La soluzione comando diretto da un pin di Arduino, solo per mos logic level, o tramite un singolo transistor va bene solo per applicazioni ON/OFF dove il mos viene commutato occasionalmente, p.e. accensione/spegnimento di una ventola.

Certo che hai un dente di sega sul gate del mos, ma come pretendi di caricare la capacità parassita del gate con 10k sul Vin ?

Infatti la carica avviene con tempo R*C, dove R = 10K e C è la capacità del Gate. In sostanza il problema è legato alla impedenza di uscita del driver che deve più prossima a zero ohm tanto più alta è la frequenza di commutazione.

Pe ri miei gusti mancano tutti i condensatori da 0,1µF vicino alle alimentazioni degli integrati e in entrata e uscita dal 7805. Anche la resistenza pullup del Reset e relativo diodo..
Inoltre mancano i diodi di protezione sulle uscita del L298.

Ciao Uwe

Ahahah so il peggiore…

astrobeed:
Certo che hai un dente di sega sul gate del mos, ma come pretendi di caricare la capacità parassita del gate con 10k sul Vin ? :slight_smile:
Non hai scritto che mos usi, comunque tutti mospower richiedono correnti istantanee di centinaia di mA per poter aprire il canale rapidamente, il “dente di sega” che vedi altro non è che la curva di carica della capacità parassita del gate attraverso la R da 10k.
Per risolvere o usi un vero driver per mos, ce ne sono tantissimi hai solo l’imbarazzo della scelta, oppure devi usare due transistor, in pratica l’equivalente di 1/2 ponte H, in modo da poter fornire corrente a sufficienza sia per caricare il gate che per scaricarlo.
La soluzione comando diretto da un pin di Arduino, solo per mos logic level, o tramite un singolo transistor va bene solo per applicazioni ON/OFF dove il mos viene commutato occasionalmente, p.e. accensione/spegnimento di una ventola.

Come mos uso un 75N15N, 15A mi dovrebbero bastare anche perchè l’alimentatore al massimo ne fornisce 10!
Non ci ripensavo al push pull:

Come driver di mosfet ho il TC4427, ma mi è capitato in passato di usarlo e di avere dei problemi di surriscaldamento. Lui mi da 1.5A in uscita (mi pare) però se lo alimento con 12 volt scalda tantissimo!

MauroTec:
Infatti la carica avviene con tempo R*C, dove R = 10K e C è la capacità del Gate. In sostanza il problema è legato alla impedenza di uscita del driver che deve più prossima a zero ohm tanto più alta è la frequenza di commutazione.

Molto probabilmente farò il push pull che è la soluzione più efficiente anche se devo rimettere mano alla PCB, ma se metto una resistenza da 100Ohm potrebbe funzionare anche in questo modo?

uwefed:
Pe ri miei gusti mancano tutti i condensatori da 0,1µF vicino alle alimentazioni degli integrati e in entrata e uscita dal 7805. Anche la resistenza pullup del Reset e relativo diodo…
Inoltre mancano i diodi di protezione sulle uscita del L298.

Ciao Uwe

L’integrato L298N è in una schedina a parte che ho comprato su ebay ed ha anche i diodi, l’ho messo in quel modo nello schema solo per i collegamenti.

Tanto devo rimettere mano a tutto quindi mi faccio una scorta di condensatori e li piazzo nei punti critici!

Ho rifatto lo schema :wink: così dovrebbe andare, che ne dite?

PWM_10A_CONTROLLER.pdf (56.7 KB)

uwefed:
Anche la resistenza pullup del Reset e relativo diodo…

Non riesco a capire a quale diodo ti riferisci!

per curiosita... ti funziona il circuito con Q3 messo in quel verso???
perche secondo mè è invertio :wink:

p.s. ce sempre l'opzione Drive-Mos gia bello che pronto integrato!!

Si la scheda funziona perchè l'ho disegnato male, ma l'ho montato bene! sono un cialtrone del cad :wink:

ad ogni modo, attento al corss-talking di Q2 e Q3 se per qualche motivo, conducono assieme rischi di friggerli!

di solito li si disatnzia con 2-3 diodi oppure un moltiplicatore di VBE :wink:

in piu… essendo a collettore comune, sul gate del Mosfet avari uan tensione di

VG = VB-06–> 5-.6=4.4V

Se vedi le curve del mosfet, a quella tensione, si è aperto, ma non spalancato! questo può volerdire

1- un corrente inferiore a quella che ti aspett.
2- il mosfet scaldicchia (e fore anche tanto…dipende)

Si con l'oscilloscopio la forma d'onda sul gate è a 5V tanto valeva pilotarlo direttamente con il pin.
Pilotando il gate con 5 volt si scalda parecchio il mosfet perchè deve reggere un carico induttivo da 10A!

Quindi dovrei tornare al vecchio sistema del NPN con una resistenza più bassa, anche se ho paura che si bruci. Regge al massimo 800mA.

La Rds del mosfet è 23mOhm quindi con 10A di carico dovrebbe dissipare una Potenza di 2.3W, se metto un dissipatore in teoria ho risolto, non credi?

Ah comunque con condensatori e frequenza a 15KHz non ho più disturbi sul display!

no non è lostesso.... solo la tensione è la stessa, ma la corrente che pompa il push-pull è mooolto maggiore a quella che Puo fornire arduino.

Ceto che scalda con 10A se non è spalancato come un portone, quel povero mosfet dissipa tutto lui!!(prova almeno ad usare un MOsfet a livello logico)
Con il dissipatore un pò tamponi, ma la vera cusa è che il mosfet NON conduce bene (alta resistenza) e rimane in zona lineare (è coem ci mettessi uan resistenza "x" in serie al motore!)

Calamaro:
...
Quindi dovrei tornare al vecchio sistema del NPN con una resistenza più bassa, anche se ho paura che si bruci. Regge al massimo 800mA.
...

A parte che ci sono i chip che gia fanno da driver ... se proprio volete pilotare il mosfet con la mazza ferrata (transistor :P), esistono anche i darlington, anche se di solito ve li dimenticate :stuck_out_tongue: :smiley:

Esempio dei piu banali, il solito TIP120, 60V, 4A comodi, 1000 di hfe ... :wink:

Etemenanki:
A parte che ci sono i chip che gia fanno da driver ...

ehehe lo avevo gia consigliato alcunii post fa... forse dovevo essere un pò piu incisivo nel farlo :stuck_out_tongue:

Ad ogni modo anche io consilgio l'uso dei drive-mosfet :smiley:

:stuck_out_tongue: :stuck_out_tongue:

Avevo considerato il drive di mosfet, ho il TC4427 ma se lo alimento a 12V si scalda tantissimo. Come posso ovviare a questo problema? Di darlington ne dovrei avere.

In applicazioni industriali viene usato sempre il pushpull, anche se a pilotarlo ci sono dei disaccoppiatori tipo trasformatori, fotoaccoppiatori, magnetoaccoppiatori e via discorrendo. Ma io non ho bisogno di isolare la parte logica perchè non è troppo costosa e se si brucia amen.

I bjt che ho SEMPRE visto nelle schede sono i FMMT618 e 718 e a monte un FAN**** (inteso come integrato, non voglio offendere nessuno).

solo che le schede che ho visto io hanno quasi sempre alimentazioni duali e un monte di ammennicoli vari.