Jump to content
PLC Forum


Sign in to follow this  
rob123

microprocessori, carichi induttivi e impulsi elettromagnetici e motori passo passo

Recommended Posts

rob123

Salve a tutti, andando per ordine vorrei usare un microprocessore per controllare dei motori elettrici e delle bobine da auto. Ecco perchè nel titolo ho incluso impulsi elettromagnetici. Questo microprocessore dovrà ancheleggere alcuni sensori, tipo encoder, sensori di temperatura, di pressione, ecc.

Pensavo di usare un Atmega perchè ne ho tanti e tra Arduino e AVR Studio mi trovo bene come programmazione. Mi chiedo solo se siano abbastanza veloci o se serva qualcosa di piu vivace.

Qualcuno arrivato a questo punto penserà che voglia fare una centralina da auto, ebbene chi pensasse una cosa del genere non si sbaglierebbe di molto, infatti è per un cogeneratore.

Ho trovato proprio su questo forum un bellissimo schema di un doppio ponte H. Lo schema è molto chiaro e non ho domande sul funzionamento, piuttosto ne ho sui limiti. Ad esempio mi piacerebbe sapere quale potrebbe essere la massima frequenza a cui potrebbe lavorare oppure la massima corrente gestibile a 15 volt.

Altra cosa, come pilotare le bobine? ho trovato dei mosfet fatti apposta es. il BU931 e tanti schemi dov viene usato un mosfet della serie IRF tipo il 640. Penso che il modo migliore sia usare questi componenti sulla falsa riga dell IRF nel doppio ponte h precedentemente nominato, mantenendo sempre gli optoisolatori.Ditemi se sbaglio.

Ultima cosa, potrebbe essere che le scintille nel distributore disturbino il microprocessore o che i fili dei sensori facciano da antenna?

Domani caricherò uno schema.

 

 

 

Edited by rob123

Share this post


Link to post
Share on other sites

Livio Orsini

Ultima cosa, potrebbe essere che le scintille nel distributore disturbino il microprocessore o che i fili dei sensori facciano da antenna?

 

Questa considerala una certezza. Se non fai le opportune schermature e metti in atto tutte le misure per bloccare i disturbi fuori dalla scheda del processore, questi eseguirà il programma ......a modo di disturbi.

Penso, per esperienza diretta, che questa sia la parte più difficile del lavoro.

Per le altre domande aspettiamo di vedere il circuito per comprendere meglio le tue esigenze.

Share this post


Link to post
Share on other sites
rob123

Ringrazio per la risposta. Ho provato ieri ed anche oggi a caricarli ma non riesco a produrre un immagine decente che pesi meno di 300Kb. Qui però leggo che ho un limite massimo di 40Kb. Dove sta il trucco?

E pensare che ho sempre visto quelli che non riescono a caricare le foto sui forum come dei gran imbranati... Oggi è il mio turno.

Comunque intanto posso cominciare con un po' d'informazioni sulle bobine d'accensione:

Corrente primaria 6–20 A - Tempo di carica 1,5–4,0 ms -Resistenza avvolgimento primario 0,3–0,6 Ohm. Questi dati sono presi da questo documento Beru - tutto sulle bobine d'sccensione

Le bobine degli iniettori invece possono andare da 0,5 a 17 Ohm. ( Non manca la virgola.) Come dato è un po' vago, posso dire però che al momento ne ho di due tipi e precisamente sono da 3 e da 14 Ohm.

Non ho fatto un singolo schema comprensivo di tutto ma ho disegnato separatamente le varie parti. Anche perchè non è da escludere che non decida di separare l'iniezione dall'accensione e usare due microprocessori separati. Qui i primi due schemi, accensione e iniezione visibilmente scopiazzati da questa an su mosfet e bobine    e dallo schema trovato su questo forum di cui parlavo nel messaggio precedente e chiamato FIRING PONTE.

L'unica cosa che devo dire dei due miei  schemini è che 1 e 2 saranno collegati direttamente al microprocessore. nel primo non c'è l'optoisolatore che invece è presente nel secondo. Sarebbe il caso di metterlo anche nel primo o toglierlo anche dal secondo? Li ho disegnati uno con e l'altro senza proprio per fare questa domanda. Il led invece non ci vuole, ho dimentcato di toglierlo.

 

BU931  questo è il datasheet di un componente dedicato alle accensioni elettroniche ed è il candidato numero uno sia per il primo che per il secondo schemino.

Bisogna notare che mentre nel primo si ha (stando a quanto scritto da Beru) max 4 millisecondi di scarica nel secondo schemino il mosfet potrebbe anche stare in conduzione per il 90% del tempo.

 

 

Share this post


Link to post
Share on other sites
Livio Orsini

ho un limite massimo di 40Kb. Dove sta il trucco?

Caruuca l'immagine nella sezione "download" e poi usa il comando in basso a dx della finestra di editing.

 

Share this post


Link to post
Share on other sites
rob123

Perdonatemi il ritardo, non mi sono dimenticato di aver aperto questa discussione... ecco lo schema.

Prima di andare a vedere nel dettaglio le varie parti vorrei parlare di disturbi, che, mi sembra d'aver capito siano la parte più indigesta.

Non penso che i sensori possano dare problemi di disturbi, credo che solo le circuiterie dell'accensione e dell'iniezione possano disturbare. A riguardo mi piacerebbe sapere se potrebbe essere d'aiuto alloggiare questi pilotaggi in un contenitore separato. Potrei dividere in due la centralina per allontanare le fonti di disturbo dal microprocessore.

sarebbero i pilotaggi di tre accensioni e sei iniettori. Si potrebbe anche mettere un trasformatore e usare gli optoisolatori per dare il segnale ma bisogna ricordarsi che in ogni caso il secondario della bobina d'accensione è a massa con la candela.

Nello schema Batt sta per batteria, +12 e +5 hanno comunque la massa in comune con batt.

A sta per ingresso analogico D sono gli ingressi e le uscite digitali. L'optoisolatore sul pilotaggio iniettore l'ho disegnato per discuterne, so bene che collegato così non isola niente perche  il negativo in comune. E lo stesso vale per il contatto generico.

SCHEMA_BOB_E_INJ_2.jpg

Edited by rob123

Share this post


Link to post
Share on other sites
Livio Orsini

Non penso che i sensori possano dare problemi di disturbi,

Credi male. Non sono i sensori, ma i loro collegamenti che raccolgono i disturbi e li introducono. per questo motivo si usano separazioni come bus di campo isolato per connettere i sensori. Così minimizzi i fili e separi, anche con un opportuno layout del cs, il campo dalla CPU.

Il filtro sull'alimentazione, sulla carta sembra, essere corretto; molto però dipenderà dal layout costruttivo.

Share this post


Link to post
Share on other sites
rob123

Il bus di campo l'avevo in mente per quello che non deve essere letto in tempo reale,  o meglio, non so quanto sia veloce il bus che utilizza i canali dedicati nei processori atmel tipo atmega328p o 2560 o ATSAM3X8E (Accetto eventuali consigli per alternative ) 

Farò una prova di velocità per scoprirlo, ma il sensore giri mi sento di doverlo collegare direttamente al processore centrale. Forse è una paranoia inutile, ma di solito scrivo programmi dove si usa il secondo come unità di misura, qui  invece si parla di millesimi.

Per il discorso distrubi non aiuterebbe usare un cavo schermato per ogni sensore?
 

Share this post


Link to post
Share on other sites
Livio Orsini

Farò una prova di velocità per scoprirlo,....

Non c'è bisogno te lo dice i datasheet del processore.

Sui PIC ad esempio, I2C va anche a 400 kHz tranquillamente (2.5 µs).

Il cavo schermato aiuta, sempre che sia usato a regola d'arte, però non risolve.

Share this post


Link to post
Share on other sites
rob123

Ok, io di solito uso I2C per far comunicare delle schede a max 20 centrmetri di distanza. Ma se mettessi un microprocessore su ogni sensore sarebbero sparsi in giro per il motore. A questo punto avrei risolto il problema del disturbo del segnale e avrei sicurament delle letture piu precise. Ma  per fare arrivare l'informazione al processore centrale se uso il bus I2C non rischio di avere lo stesso problema di disturbi raccolti dai fili?

 

 

Share this post


Link to post
Share on other sites
Livio Orsini

Devi distinguere i disturbi raccolti dai fili che rimangono sui fili, da quell che entrano nei controlli.

Se separi galvanicamente i fili, è meno facile che i disturbi rientrino nei controlli.

Non voglio scoraggiarti, ma la progettazione di sistemi di controllo auotonici non è ne semplice ne facile, non tanto per la realizzazione degli algoritmi di controllo, che son piuttosto delicati, ma soprattutto perchè devono essere altamente affidabili in condizioni ambientali, comprendendo anche le condizioni EMI, veramente diffcili.

Share this post


Link to post
Share on other sites
rob123

Per gli algoritmi ho fatto delle prove al banco e penso di essere riuscito a scrivere un programma abbastanza corto e leggero. Simulando i sensori su breadboard e facendo girare l'encoder con un motore elettrico funziona tutto, o sembra che lo faccia. C'è una specie di cane da guardia che mi avverte attraverso la porta seriale se per caso il programma si inceppa. Per ora ho provato senza bus di campo, ma usando il bus potrei decentralizzare i calcoli e probabilmente riuscirei ad avere tempi migliori sul processore principale. L'unico sensore che non ho potuto simulare è il sensore ossigeno e ovviamente non  ci sono i finali degli iniettori e delle accensioni. Però ho controllato i tempi e sono esattamente quelli che devono essere.

Quello che mi preoccupa sono i disturbi, anche perchè il mio livello in elettronica analogica è da scuola elementare. Di norma non ho a che fare con segnali analogici e se ci sono disturbi risolvo sempre con un optoisolatore. Soprattutto di solito si parla di secondi o di minuti mentre qui un millisecondo fa difetto.

Adesso provo a rifare lo schema e se passa il controllo lo stampo.

Edited by rob123

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...