Controllo di una forza elettromagnetica con Arduino


11

Questa domanda precedente Il controllo di un elettromagnete con Arduino riguarda solo il controllo binario (ON o OFF). Da parte mia devo scegliere la forza del campo magnetico.

È un elettromagnete fatto in casa, sono riuscito ad alimentarlo con 12V DC + una resistenza da 5ohm che fornisce circa 2Amps. Il campo magnetico risultante è abbastanza grande. Il resistore si surriscalda, ma questo è sopportabile.

Ora voglio modulare l'intensità tra 0 e 2 ampere dalla lettura di alcuni sensori, quindi sto pensando di usare un Arduino.

Posso usare PWM sapendo che il carico induttivo è significativo? La scelta della frequenza del PWM è critica? Avrò problemi con le correnti Eddy nel soft core? (Non posso usare il nucleo laminato).

Quindi la mia domanda è: PWM è davvero una buona scelta? Se sì, dovrei mantenere la resistenza da 5ohm? Come posso calibrare la mia frequenza PWM + alfa? Se no, cosa potrei fare invece? Quale circuito?

Grazie


La PWM viene abitualmente utilizzata per il controllo continuo dell'intensità dei carichi elettromagnetici, quindi sì funzionerà. Le tue preoccupazioni saranno il meccanismo che usi per commutare l'elevata corrente necessaria per l'elettromagnete (molte domande su questo sito indirizzano quello), il flyback induttivo (usa un diodo in polarizzazione inversa attraverso la bobina) e (forse) assicurando che la tua frequenza PWM sia non è un'armonica di qualunque frequenza di risonanza naturale abbia la bobina.
Anindo Ghosh,

Anche i motori DC sono induttori. Forse uno scudo motore sarebbe una soluzione conveniente?
Phil Frost,

Se hai un oscilloscopio, puoi facilmente vedere se l'induttore si satura. In tal caso, dovresti considerare una frequenza PWM più alta. Se la frequenza aumenta abbastanza, la corrente attraverso l'induttore raggiungerà il suo massimo / minimo solo con un ciclo di lavoro del 100/0 percento.
jippie,

@jippie: questo non capisco. Se questo è> 50%, durante ciascun ciclo, il tempo di "salita" è più lungo di "tempo di discesa", quindi la corrente termina un po 'più in alto rispetto a dove è iniziata. Quindi perché non si satura dopo molti cicli? (Ho osservato che non lo è, ma posso capire perché)
replicato2

Risposte:


6

PWM è una buona scelta e ricorda che la bobina ha bisogno di un diodo collegato inverso attraverso di essa per evitare che i back-emf dall'induttore a circuito aperto danneggino le cose. Dovrai anche usare un transistor di potenza di qualche tipo per interfacciarti tra arduino e bobina - l'arduino non fornisce abbastanza "unità" per arrivare ovunque vicino a 2A. Ecco un diagramma che mostra un transistor da un MCU ma ha un motore invece di una bobina. Questo non importa - l'importante è che mostri il diodo e un metodo per guidare la bobina: -

inserisci qui la descrizione dell'immagine

Mostra anche + 5V ma questo può essere + 12V. Cose a cui prestare attenzione: -

1) Il diodo deve essere valutato con una corrente che supera la corrente massima attraverso la bobina.

2) La bobina ha ancora bisogno del resistore in serie in caso di cortocircuiti ma, forse, si riduce a qualcosa come 1 ohm quando si è più felici con le operazioni.

3) Il transistor deve essere classificato per commutare la corrente, quindi probabilmente sceglierne uno che possa gestire facilmente almeno 3A.

4) La tensione nominale sul transistor deve essere solo di 20 V o superiore

5) Potrebbe essere necessario che il resistore in serie con base sia di 100 ohm - provare per iniziare. Da una linea IO 3V3 100 ohm significherà una corrente di base di circa 30 mA e se l'HFE del transistor è buono quando si commutano carichi di potenza (100+) dovrebbe essere OK, tuttavia, potrebbe essere meglio usare un FET per questo e lì sono molte tra cui scegliere.

Quindi prova a emettere un impulso di mark-space 50:50 (un'onda quadra) e cambiare la frequenza e vedere come sono le perdite del core con frequenze progressivamente più alte. Avrei pensato che 1kHz sia un buon punto di partenza e si spera che tu sia soddisfatto di 10kHz.


Grazie per la tua risposta completa. Ho funzionato con il PWM arduino predefinito 500Hz e un MOSFET IRF520 (diventa caldo, quindi ne proverò uno migliore) + diodo flyback + accoppiatore ottico. Ma non riesco ancora a capire perché la corrente non si accumuli progressivamente (dopo molti cicli) quando il rapporto PWM è> 50% poiché in ciascun ciclo il tempo di "salita" è più lungo di "tempo di discesa" e la corrente dovrebbe finire un po 'più in alto rispetto a dove è iniziata!
replicato2

ok, penso di averlo capito grazie ad alcune simulazioni circuitlab.com/circuit/73nx5a/ferropwm .
replicato2 il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.