Home - Progetti - Appunti - Avvertenze - Contatti


Controllo Scalare di un motore AC a induzione

Attenzione

Questo progetto ha parti ad alta tensione che possono provocare danni gravi a cose o persone, anche causare morte. L'autore non garantisce che il materiale contenuto in queste pagine sia corretto, funzionante o aggiornato, e non si assume alcuna responsabilità riguardo a come può essere utilizzato o interpretato. L' uso di ogni contenuto avviene interamente a proprio rischio e pericolo. Questo progetto non è adatto a principianti. Se non siete consapevoli di quello che state facendo e dei rischi che correte lasciate perdere

Obiettivo

Obiettivo di questa esperienza è realizzare un circuito in grado di variare la velocità in un motore a induzione in corrente alternata [1], senza significativa perdita di coppia. Il tipo di motore da controllare è un asincrono monofase o trifase, da mezzo cavallo o meno di potenza. Il controllo è in anello aperto, con tecnica  a rapporto costante tra tensione frequenza. 

Motivo

Di fatto dispongo di alcuni motori asincroni monofase a 230V recuperati da vecchie lavatrici. Questi motori hanno un grosso condensatore per l'avviamento e dispongono solo di due velocità fisse di rotazione. L'intento è quello di cercare di utilizzare questi motori in applicazioni dove è conveniente disporre di velocità di rotazione variabili con continuità, entro certi limiti [2].

Va precisato che, anche se di seguito faccio specifico riferimento ad un particolare tipo di motore, in linea di principio il driver di potenza può essere utilizzato anche per controllare anche altri tipi di motori, trifasi asincroni e non solo.

Primo prototipo

La foto a fianco mostra il banco di lavoro durante i primi test. Al centro della foto c'è un motore asincrono monofase recuperato da una vecchia lavabiancheria. Si nota la morsettiera rossa dalla quale ho derivato i collegamenti per la velocità 'centrifuga' e 'lavaggio'. In alto a sinistra si vede il grosso condensatore che era inserito in serie all'avvolgimento di start e che ora non è più utilizzato. Sull'albero del motore è montato un disco abrasivo del diametro di 12 cm e una massa di circa 400 grammi. A lato del disco ho incollato una piccola striscia di carta stagnola. Questa striscia serve per riflettere il raggio infrarosso emesso dal sensore contagiri, montato sopra il blocchetto di plastica verde. Il contagiri con display LCD è visibile sotto il motore, in basso a sinistra. Nell'angolo in basso a destra è visibile il circuito di controllo del motore. E' composto da diversi moduli collegati tra di loro e montati sopra una base di compensato. Si riconosce il filtro antidisturbo composto da condensatori al poliestere blu e da una induttanza compensata nera. Sopra al filtro c'è il modulo rettificatore composto da un ponte a diodi e dalla serie di due condensatori elettrolitici da 200V ciascuno, recuperati da un alimentatore ATX da PC. Sullo stesso modulo c'è poi una semplice circuito con relè per limitare la corrente di spunto all'inserimento della spina, e delle resistenze per aumentare la velocità di scarica dei condensatori allo spegnimento. Si vede poi il modulo driver con i sei IGBT in linea e gli integrati driver. Più in basso ci sono due schede, montate a castello: quella inferiore è un alimentatore che fornisce tre tensioni continue, due stabilizzate a 5V e 15V che servono alla logica di  controllo ed ai MOS driver, ed una tensione 24V non regolata che serve per attivare il relè sul modulo rettificatore. La scheda sopra all'alimentatore è quella col microcontrollore. Vicino a questo ci sono alcuni LED per segnalare lo stato di funzionamento o la presenza di anomalie. Sulla sinistra del castello di circuiti c'è il pomello del potenziometro che determina il riferimento di velocità. Notare che la carcassa metallica del motore è collegata a terra.

Scarica il video dimostrativo (1.37 MB; AVI)

Nel breve filmato faccio vedere che, agendo sulla manopola, il motore si porta in rotazione seguendo una rampa di accelerazione. Prima aumento progressivamente la velocità di rotazione sino alla nominale (circa 2850 g/m a vuoto). Poi giro la manopola fino al massimo portando il motore oltre la velocità nominale, alimentatolo alla frequenza di 62Hz. Quindi riduco la velocità evidenziando una rampa di discesa più ripida rispetto quella di salita. Con il motore che gira lentamente provo a limare un piccolo pezzo di ferro per dare l'idea della coppia disponibile. A bassa rotazione la coppia è decisamente inferiore rispetto le velocità prossime alla nominale ma comunque più che sufficiente  per piccole applicazioni.

Schema a blocchi

All'inizio per chiarire le idee è stato necessario documentarsi a dovere sull'argomento. Dato che si tratta di tecnologia consolidata da tempo, non è stato difficile trovare informazioni teoriche a riguardo.

Per partite con qualcosa di pratico, il metodo migliore è  stato fare riferimento a un progetto simile. In rete ci sono pochissimi progetti realizzabili con strumenti amatoriali. Ho quindi concentrato l'attenzione sulla nota applicativa AN889 [2] della Microchip. La nota applicativa è semplice e mette a disposizione schemi elettrici di una demo board. Il progetto presentato in questa pagina prende spunto in larga misura dal documento ufficiale, a partire dallo schema blocchi:

Non è mia intenzione trattare la teoria sul controllo dei motori a corrente alternata. Non ho la pretesa e le competenze per esporre in modo chiaro e preciso la teoria e le tecniche di controllo. Esiste a riguardo vasta documentazione letteraria [3]. Per comprendere al meglio il lavoro qui presentato, è comunque indispensabile conoscere il principio di funzionamento del motore asincrono e la sua regolazione a V/f costante, mediante inverter trifase.

In fondo alla pagina ho inserito alcuni riferimenti [4] a documenti reperibili in rete che approfondiscono molti "dettagli". Ci sono numerose regole, consigli e accorgimenti che ho cercato di rispettare. Sono aspetti spesso lasciati in secondo piano dalla teoria, che nella pratica possono dare grandi grattacapi. 

In questa sede mi limito solamente a presentare un circuito completo, realizzato con mezzi semplici, che ha dimostrato di funzionare correttamente nelle condizioni specificate.

Ovvio esistono già dispositivi commerciali che fanno tutto questo, molto di più e molto meglio. Chi ha bisogno in fretta di un regolatore e non ha da porsi il problema di come funziona può sicuramente scegliere tra i numerosi prodotti disponibili nel mercato.

Scelte più o meno tecniche

Nella scelta della tipologia di circuito e dei dispositivi da utilizzare ho dovuto tener conto di diversi fattori:

1. Flessibilità

La soluzione da adottare dovrebbe seguire criteri tecnici basati sul tipo di motore da andare a controllare; pur avendo individuato alcuni modelli di motore, sarebbe preferibile una soluzione flessibile, che permetta di gestire anche macchine della stessa tipologia ma con caratteristiche elettriche differenti tra loro. Per questo motivo ho preferito non utilizzare moduli driver integrati, che da un lato avrebbero permesso una semplificazione consistente  del circuito, dall'altro non permettono una scelta mirata dei dispositivi di potenza.

2. Semplificazione

Il circuito dovrà essere abbastanza semplice, in modo da non complicare troppo la sua realizzazione. Questo ha imposto la scelta di rinunciare all'isolamento galvanico mediante optoisolatori, tra parte di potenza e parte di controllo. Anche il numero e la tipologia delle protezioni previste è all'insegna della semplicità. Ho preferito inoltre adottare una soluzione modulare: invece di realizzare un circuito unico, ho cercato per quanto possibile di suddividere lo schema per funzioni. Per disegnare gli schemi e i circuiti stampati ho infatti utilizzato il CAD EAGLE che, con la licenza gratuita no-profit, ha come limiti una pagina di schematico e un circuito stampato di 100X80mm. La soluzione modulare complica un poco la realizzazione pratica perchè poi occorre poi collegare tra loro i vari sub circuiti, ma permette di togliere vincoli al progetto ampliando il campo delle possibili applicazioni.

3. Reperimento del materiale

Nella realizzare un prototipo è da preventivare “qualche problema” durante la fase di sperimentale. All'inizio è inevitabile commettere qualche errore. Il circuito in oggetto prevede la gestione di tensioni e correnti rilevanti. Con elevata energia in gioco i piccoli problemi possono causare grossi danni. Insomma occorre prevedere la possibilità doversi rifornire di componenti andati in guasto. E' quindi fondamentale scegliere una soluzione circuitale con componenti facilmente sostituibili, e allo stesso tempo reperibili in tempi ragionevoli e con costi accettabili. In questa direzione ho scelto di utilizzare circuiti integrati con package DIL. Anche se occupano molto spazio sul circuito stampato, e non consentono di integrare al meglio la lunghezza di certe piste critiche, consentono comunque una buona maneggevolezza e sono di facile sostituzione in caso di guasto.

La scelta tecnica è stata fortemente condizionata da questi aspetti, in particolare dalla reperibilità. In pratica ho scelto di fare riferimento al catalogo del sito www.futurlec.com. Il catalogo è abbastanza ampio. I prezzi sono decisamente inferiori ad altri megastore e le spese di spedizione sono alla portata di tutte le tasche. Alla data attuale il cambio euro-dollaro aiuta a risparmiare un pochino. Altro aspetto importante è che anche Voi che volete replicare l'esperienza, avete la possibilità di approvvigionare il materiale senza dispendio eccessivo di ricerca. Unico neo sono i tempi di consegna molto alti, anche 3-4 settimane. Ma nella pianificazione di questo progetto non ho vicoli di tempo da rispettare. 

Insomma la soluzione adottata è stata scelta più da ragioni di convenienza piuttosto che tecniche.

Componenti

Come integrato driver per i MOSFET ad alta tensione o IGBT ho scelto il dispositivo IR2110. Si tratta di un dispositivo in produzione da diverso tempo che gode di una buona fama riguardo la sua affidabilità, se correttamente utilizzato.

A seconda dei livelli di corrente e del tipo di impiego del circuito, potrebbero andare bene sia dei MOSFET per alta tensione come gli IRF840 ma anche degli IGBT, ad esempio molto diffuso il modello irg4bc20kd. Per quanto riguarda le soluzioni con  dispositivi di potenza, ma non solo, trovate molte informazioni sul sito della International Rectifier e della Fairchild [5]

Per generare tre segnali PWM ho scelto i PIC perchè dispongo già di un programmatore per questa marca. Il modello è quello più piccolo con integrate tre periferiche PWM, il 16F737. Ci sarebbero anche altre soluzioni, preferibili sopratutto perchè più potenti nel calcolo. In particolare il PIC16F737 ha la lacuna, per questa applicazione, di non avere un supporto hardware per le operazioni di moltiplicazione. Questa mancanza è piuttosto grave perchè la medesima funzionalità si trova ad esempio anche su dispositivi più economici di altre marche (un ATMEL ATMega88 per esempio). La mancanza del moltiplicatore rende il dispositivo piuttosto lento nell'elaborazione, ponendo limiti sulla risoluzione della sinusoide e sulla sua frequenza massima. Solo in seguito ho scoperto alcuni modelli Microchip della famiglia 18F più performanti.

La misura della corrente sul ponte trifase è implementata con una resistenza di shunt di basso valore. La resistenza deve essere abbastanza bassa, per non incidere troppo sul rendimento complessivo del circuito. Inoltre dovrebbe essere scelta del tipo non induttivo. La caduta di tensione sulla resistenza viene amplificata mediante un operazionale che dovrà avere una tensione di offset molto minore rispetto la caduta di tensione che si prevede di avere sulla resistenza di shunt. Il segnale viene amplificato e inviato ad un comparatore di tensione per rilevare le condizioni di sovracorrente. L'uscita del comparatore genera un interrupt sul microcontrollore che provvede immediatamente a disabilitare il ponte e staccare l'alimentazione

Per quanto riguarda i valori dei componenti rimango piuttosto sul generico perchè dipendono fortemente dal tipo di motore utilizzato. Dal filtro antidisturbo alla resistenza di shunt e a tutta la catena di amplificazione che segue ci sono componenti il cui valore andrebbe ottimizzato, magari su considerazioni derivate da misure strumentali. Sono tutte prove che non ho fatto.

Sicurezza

Per garantire un minimo di sicurezza è indispensabile disporre di un collegamento di terra efficiente. E' indispensabile collegare a terra il corpo metallico del motore. L'alimentazione del circuito dovrebbe essere fornita da una sorgente 230Vac con a monte un interruttore differenziale in classe C. Tuttavia la normativa esistente non sembra ancora aver fissato le caratteristiche tecniche di questa classe di protezione. Ho provato a cercare in alcuni grossi fornitori di materiale elettrico e, per la linea monofase, sono riuscito a trovare solo un differenziale in classe B. Non è ancora un  prodotto molto richiesto e non è pure molto economico. Ma sulla sicurezza vale sicuramente a pena di investire qualche euro.

Per quanto riguarda il circuito, l'unico punto d'interazione con l'operatore è la manopola in plastica per il riferimento di velocità. La manopola è montata sul perno del potenziometro, anch'esso in plastica. In questo modo esiste una buona garanzia di isolamento tra il circuito e l'utilizzatore. Va sottolineato che adottando questi accorgimenti si riduce il rischio di shock elettrici, ma non lo si elimina.

Nuovo Layout

Dopo aver realizzato il prototipo che si vede nella figura sopra mi sono reso conto che per poterlo utilizzare al meglio è necessario inserirlo in una scatola. Per garantire un buon funzionamento continuativo, era anche indispensabile una piccola ventola. Ho deciso quindi di razionalizzare parte dei circuiti, riducendone l'ingombro. In questo modo è stato possibile inserire tutto quanto dentro il box metallico di un alimentatore ATX da per computer.

Tuttavia dopo aver rifatto i circuiti e averli alloggiati nella scatola metallica non sono mancate alcune brutte sorprese. Il sistema concentrato in uno spazio più piccolo rispetto il prototipo iniziale mi provocava il reset del microcontrollore durante il funzionamento. Il reset causava la disabilitazione del ponte, che riprendeva a funzionare subito dopo con “strappo” del motore che provoca un nuovo reset. Si innescava così una pericolosa altalena. Per evitare questo fenomeno ho fatto in modo che, per avviare il motore, occorre prima portare il potenziometro della velocità zero.  In questo modo se si da alimentazione al sistema e si è dimenticato il potenziometro in una posizione di alta velocità, oppure dovesse avvenire un reset durante il funzionamento, il motore non riparte fino a quando l’operatore non riporta il potenziometro sullo zero.

Rimaneva comunque da risolvere il problema dei reset saltuari.  Ho verificato il percorsi di massa per evitare la formazione di anelli, trovando poco  o nulla da modificare. Ho poi cercato di filtrare meglio gli ingressi e le uscite da e verso il microcontrollore senza ottenere miglioramenti sostanziali.

 Dopo alcune prove sperimentali ho capito che il problema veniva dall’accoppiamento tra la parte di potenza che realizza la conversione AC/DC e lo schedino col microcontrollore. All’inizio infatti utilizzavo un relé comandato da cpu per realizzare il sistema che limita a corrente inrush sui condensatori di filtro sul ponte raddrizzatore. I fili che comandavano il relé lunghi circa 8cm, attraversavano la scatola, e captando i disturbi causavano il malfunzionamento. Ho quindi rivisto il sistema di comando del relé. Ora viene eccitato con breve ritardo da quando si da alimentazione al sistema, mediante un circuito indipendente dalla scheda col microcontrollore.

Dopo aver individuato la causa di questo problema ho preferito inserire anche un diodo di clamping verso VDD, sulla linea VFFW (Voltage Feed Forward) che il microcontrollore utilizza per misurare la tensione di rete raddrizzata VBUS, circa 315Vdc. Questo collegamento mi serve per monitorare la tensione sul bus e disabilitare il ponte qualora la tensione non dovesse essere quella attesa. In applicazioni più avanzate questo ingresso potrebbe essere utilizzato per compensare l’ampiezza della tensione di uscita del ponte di caso di variazioni sulla tensione di rete (tutto da provare).

Gli schemi elettrici e relativi layout per i circuiti stampati li ho raccolti tutti in un archivio unico. Nello stesso file zip ho inserito anche il codice compilato ed il sorgente del firmware. Tutto il materiale è da intendere come provvisorio e soggetto a continui cambiamenti. Ci possono essere piccole differenze tra gli schemi che trovate nell'archivio e le figure in questa pagina. Nel corso dei collaudi ho dovuto correggere piccoli errori. Le correzioni le ho riportate nei documenti che potete scaricare qui sotto:

Scarica i file per realizzare questo progetto

Le schede realizzate sono quattro. Le descrivo brevemente di seguito:

1. Un filtro per la compatibilità elettromagnetica. E' opzionale nel senso che dovrebbe funzionare tutto lo stesso anche se con l'emissione in rete di una quantità di disturbi maggiore. Non ho seguito nessun criterio per dimensionare i componenti, che andrebbero scelti su misura all'applicazione finale. Vale quindi lo schema in linea di principio. Mi raccomando di utilizzare solo condensatori in classe X1 per il collegamento tra fase e neutro, e di classe Y2 per il filtraggio dei disturbi di modo comune verso terra. Solo queste classi di condensatori garantiscono un sufficiente livello di sicurezza, non utilizzarne altri. Un fusibile rapido a monte di tutto è usato come protezione di tutti i componenti che seguono.

2. Raddrizzatore da tensione di rete alternata a tensione continua. E' uno schema classico con ponte a diodi e condensatori di filtro. E' ad alta tensione di lavoro quindi occorre porre molta attenzione all'isolamento. Evitare di toccare il circuito quando questo è connesso alla rete elettrica. Attenzione che quando la tensione di rete è disconnessa, i condensatori rimangono carichi per diverse decine di secondi. Quando viene data tensione al circuito ed i condensatori di filtro sono scarichi, si potrebbe avere una corrente (inrush current) piuttosto elevata, che causa stress elettrici ai componenti, in particolare ai condensatori stessi , riducendone la vita.  E’ stato inserito un sistema di resistenze e relé limita la corrente di carica iniziale sui condensatori quando  viene data alimentazione. Inizialmente il relé era comandato dal microcontrollore. Poi per evitare che disturbi raggiungessero la scheda di controllo 3., il controllo del relé e stato affidato ad un circuito monostabile che prende energia da un alimentatore a caduta di impedenza. Altre resistenze servono per rendere più veloce la scarica dei condensatori allo spegnimento. La scarica dura comunque diverse decine di secondi e in questo intervallo occorre considerare il circuito ancora come in tensione.

3. Driver ad alta tensione. Comprende 6 interruttori elettronici IGBT. Ogni coppia costituisce un half bridge, controllato da un integrato driver. Il driver agevola il controllo del dispositivo IGBT collegato al positivo (high side) della tensione di rete raddrizzata. Gestisce inoltre i tempi di comando agli IGBT inserendo un dead time (fisso) sulle commutazioni. Con un pin di shutdown è possibile disabilitare il relativo ramo di ponte.  Come diodi di ricircolo sono sfruttati quelli interni agli IGBT.

Un amplificatore operazionale amplifica la caduta di tensione sulla resistenza di shunt, determinando la corrente sul carico. Se questa supera un livello prefissato scatta l'uscita di un comparatore. Questo stato è disponibile al connettore di interfaccia alla scheda con la logica di controllo che provvedere a comandare lo shutdown. Un integrato con porte invertenti bufferizza e complementa i segnali PWM ricevuti e li trasmette ai driver MOS.

E’ interessante notare che, almeno in linea di principio e mediante opportuno controllo, questa scheda potrebbe essere utilizzata come driver per comandare, senza troppe pretese, altri tipi di motori, a corrente continua o bushless.

4. L'ultima scheda implementa un alimentatore con uscite DC stabilizzate e non stabilizzate. Il microcontrollore riceve come ingressi dalla scheda 3.  la tensione DC raddrizzata e lo stato di sovracorrente. Il segnale OC (Over Current) risultava piuttosto sporco di rumore. Ho dovuto inserire una rete RC in prossimità del pin di interrupt, per evitare false condizioni di guasto. Sullo schema elettrico e sulla board sono ancora presenti una uscita per  il controllo di un relé e l’ingresso per la lettura di un NTC. Non sono utilizzati. Sulla foto non compaiono alcuni componenti di filtro che ho aggiungo in seguito. Sono comunque indicati nell’archivio di schemi e board che è possibile scaricare.

 

Ripeto che queste foto sono precedenti a piccole modifiche e ritocchi, che sono invece riportati nell’archivio del progetto.

PCB

Il filtro antidisturbo e il rettificatore sono stati realizzati su 1000 fori. Ho preferito non disegnare un circuito stampato perchè ci sono pochi componenti. Inoltre alcuni di questi sono recuperati da vecchie apparecchiature e quindi possono variare per forma e ingombro, rendendo inutile uno sbroglio con misure precise. Ho posto particolare cura allo sbroglio del driver ad alta tensione. Di fatto è la sezione più critica del sistema. L'entità delle grandezze elettriche in gioco unitamente alla velocità con le quali variano, può creare molti problemi. Occorre seguire con scrupolo le indicazioni indicate dai costruttori dei circuiti [4]. Purtroppo non sono riuscito a fare stare tutti i componenti che desideravo sul PCB della scheda driver HV. Sarebbe stato utile un condensatore elettrolitico low ESR vicino la morsettiera di alimentazione, magari accompagnato da una VDR da 385V. Non c'era posto e quindi magari è possibile montarli fuori dal circuito stampato, in prossimità della morsettiera di ingresso. Comunque il driver di potenza penso possa andare bene così, perchè è possibile interfacciarlo agevolmente con altre schede mediante un cavetto flat a 10 poli.

L'alimentatore a bassa tensione e la scheda di controllo con microcontrollore sono realizzati su un'unica basetta. Per motivi di tempo non sono riuscito ad ottimizzare lo sbroglio. Il circuito è realizzato su una basetta con piste incise su un solo lato. Per completarlo sono necessari alcuni ponticelli sul lato componenti, ed anche qualche connessione sul lato rame. Chi avesse voglia di esercitarsi con EAGLE può prendere i file dall'archivio per migliorare i PCB.

Per la connessione tra circuiti controller e driver ho utilizzato un cavo flat a 10 poli con passo 1,27mm terminato con connettori IDT (DIN...). Ho verificato a mie spese che, anche se il cavo è piuttosto corto, può captare disturbi e indurre malfunzionamenti. Ad esempio ho dovuto inserire una rete rete RC in prossimità dell'ingresso di rilevazione della sovra corrente (OC "Over Current") per evitare interrupt intempestivi.

Firmware

Ho messo a disposizione il codice sorgente del microcontrollore. E' scritto in linguaggio C quindi è di facile lettura ed anche portabile con leggere modifiche su altri dispositivi. Non mi dilungo troppo sulla sua descrizione fintanto che non mi avvicino a qualcosa di definitivo. Il sorgente e' comunque ricco di commenti e non si discosta di molto, anzi per niente, ai principi esposti nelle note applicative segnalate. Leggendole bene dovreste capire tutto senza grossi problemi.

Collaudo

Una volta terminato il montaggio del circuito, ho iniziato la fase di collaudo e messa a punto. Per verificare il corretto funzionamento è indispensabile un oscilloscopio, anche modesto. Le misure con l'oscilloscopio le ho eseguite unicamente alimentando il circuito con una tensione continua non stabilizzata  compresa tra 18 e 36Vdc, ottenuta raddrizzando il secondario di un trasformatore 12-0-12. La sorgente ottenuta in questo modo è isolata dalla rete elettrica e permette di eseguire misure senza problemi di sicurezza.

Nota bene:

Non è possibile utilizzare l'oscilloscopio per eseguire misure dirette alimentando il circuito da rete elettrica. Il modulo delle tensioni da misurare potrebbe superare il valore massimo ammissibile dallo strumento e danneggiarlo in modo irreparabile. Servirebbe una sonda ad alta tensione, molto costosa per un hobbista. Altra possibilità potrebbe essere l'ausilio di un trasformatore di isolamento ma non mi sento di raccomandare questa soluzione. Di fatto ho visto che il circuito funziona anche alimentandolo da rete elettrica 230V ma non mi è possibile fornire screen shoot delle forme d'onda, anche se sarebbero parecchio interessanti.

Sui morsetti di uscita ho quindi collegato un carico trifase, dove su ciascun ramo è presente una impedenza ohmico  induttiva. Nel mio caso specifico ho utilizzato quello che mi passava sotto mano, tre resistenze da 100ohm 3W all'ossido metallico e altrettante induttanze da 33mH 0.5A. Le resistenze all'ossido metallico sono da preferire a quelle a cementate o a filo avvolto, per la loro minore induttanza parassita. Con  l'oscilloscopio ho eseguito una misura differenziale mettendo le due sonde, a turno, sui terminali delle resistenze. Ho verificato che sullo schermo compaia qualcosa che possa assomigliare ad una sinusoide variabile in ampiezza e frequenza. Solo dopo aver verificato questo aspetto ho proceduto con l'alimentazione del circuito direttamente dalla tensione dire rete raddrizzata e applicando in uscita un piccolo motore di recupero.

Protezioni

A monte di tutto c'è un fusibile di tipo rapido. Alcune anomalie sono gestite dal microcontrollore: all'avvio, esegue un checkup del sistema verificando che non ci sia condizione di sovracorrente e che la tensione di rete raddrizzata raggiunga un certo livello. In caso ciò non avvenga il circuito va in blocco e non vengono abilitati i ponti di uscita. Per sbloccare il circuito occorre togliere alimentazione, aspettare alcuni secondi e ridare alimentazione. Il blocco si presenta anche se, superato il checkup iniziale, viene rilevata una condizione di tensione di rete insufficiente oppure se il comparatore rileva un segnale corrispondente a condizione di sovracorrente. Le cause di blocco sono segnalate mediante il lampeggio codificato del LED rosso.  Con la scheda in blocco i ponti sono disabilitati.

LED di segnalazione

Sulla basetta dove è montato il microcontrollore è montato un LED per segnalare lo stato di funzionamento dell'intero circuito. Quando è applicata tensione, il LED rimane acceso per un secondo circa. Durante questo intervallo il microcontrollore verifica la presenza di tensione sul bus DC e un'eventuale condizione di sovra corrente. Se il check allo startup è fallito, il LED emette, in modo periodico, un certo numero di brevi impulsi. Il numero di impulsi codifica l'anomalia secondo la tabella riportato sotto. Se  l’accensione del sistema  si è conclusa senza riscontrare anomalie, allora il LED inizia a lampeggiare con periodo di circa 1s. Per mettere in funzione il motore, occorre portare la manopola del setpoint velocità nella posizione di zero. Questo vincolo evita l'attivazione involontaria del motore se viene data alimentazione all'inverter e l'operatore ha dimenticato la manopola su un setpoint non nullo. Inoltre si evita anche un'altra potenziale causa di pericolo: posizionando i cavi di uscita vicino al circuito col microcontrollore, può provocare il suo reset. Questo accade in modo particolare allo spunto di avvio del motore. Se non fosse implementata la tecnica di riportare il potenziometro a zero, si potrebbe innescare una pericolosa ripetizione di avvio del motore-reset della scheda, avvio del motore-reset della scheda ecc. Dopo aver portato la manopola sullo zero, alzare il setpoint di velocità. Il LED inizia allora a lampeggiare rapidamente per manifestare l'attivazione delle uscite. Il motore inizia a girare.

Montaggio

Come detto in precedenza per rendere più semplice l'impiego del circuito ho pensato di farlo stare dentro la scatola ricavata da un alimentatore ATX. La scatola in metallo è stata svuotata del circuito alimentatore, dal quale ho recuperato i due condensatori elettrolitici da 1000uF 200V e l'aletta di raffreddamento. Ho filettato i dadi di supporto del circuito originario per avvitargli dei spezzoni di barra filettata diametro 3mm. Alla base ho messo un rettangolo di plexiglass di 4mm di spessore, per avere una base rigida e isolata.

Le colonne mi hanno permesso di montare i circuiti a castello, sfruttando lo spazio in verticale. Anche se il montaggio non è immediato, la struttura ha una buona robustezza meccanica, più che  sufficiente al trasporto e resistente alle vibrazioni durante l'utilizzo.

 

Nella foto a sinistra compare il contenitore metallico con le viti di supporto. Al centro è illustrato il livello inferiore di montaggio dove trovano posto il circuito raddrizzatore ed il driver di potenza. Infine a destra si vedono al livello superiore il filtro antidisturbo ed il circuito di controllo.

Occorre prestare attenzione per fare in modo che mantenere i cavi di uscita potenza rimangano lontani dalla scheda a microcontrollore.

Mettere a terra la scatola metallica e fare in modo che il collegamento di terra non possa staccarsi.

Utilizzo

Le prime prove le ho condotte con i dispositivi driver montati senza alcuna aletta di raffreddamento. L'inerzia termica è tale che brevi prove possono essere condotte senza significativo aumento della temperatura dei dispositivi. Di fatto per un impiego continuativo è necessario l'utilizzo di un opportuno dissipatore termico. Il dimensionamento dell'aletta dipende dal  tipo e dalle condizioni di utilizzo. Io ho utilizzato un'unica aletta in alluminio, sulla quale sono stati stretti con viti e dado tutti i dispositivi, tutti isolati elettricamente mediante pellicola termoconduttiva e isolatori plastici (vedi come esempio gli articoli cod. 664-250 e 936-649 rispettivamente, sul sito della Farnell alla sezione Thermal Interface). L'impressione che ho avuto è che serve un radiatore di dimensioni ragguardevoli, oppure l'ausilio di una piccola ventola.

Prove seguite

In partenza avevo previsto di impostare una velocità minima di rotazione molto bassa. Mi sono reso conto che non è conveniente esagerare perchè si manifestano evidenti vibrazioni meccaniche. Ho eseguito alcune prove con una pompa per lavatrice del tipo "con spira in corto" e ha funzionato senza problemi. Ho provato poi il motore da lavatrice riportato nelle foto, le cui caratteristiche riporto qui di seguito:

     Industrie a: Zanussi Pordenone Italia

    Motore asincrono monofase servizio continuo isolamento CL. E  Tipo 41194-78

    Condensatore carta 11uF 450VL

    220V 50Hz

    2   poli 2900G1' 450W 2,7A

    12 poli 430 G1' 250W 1,2A

Il motore presenta una morsettiera con 5 poli, molto comune nei motori da lavatrice di qualche tempo fa. E' noto che per ottenere una velocità di rotazione occorre selezionare tre fili della morsettiera. Due fili, corrispondenti all'avvolgimento principale del motore, vanno collegati direttamente alla rete elettrica. Il terzo conduttore, relativo all'avvolgimento di START,  va collegato al condensatore che deriva energia da un conduttore della rete elettrica. Spostando un conduttore del condensatore tra i due fili della rete di alimentazione principale si ottiene l'inversione di rotazione. Cambiando terna di fili è possibile selezionare la seconda delle due velocità:

 

orario                                               antiorario

Veloce

 

 

 

 

 

Lento

All'inizio per discriminare le due terne di fili, ho eseguito delle misure di resistenza sui morsetti. Dai valori misurati ho cercato di identificare gli avvolgimenti che presentavano resistenze paragonabili. Ho quindi individuato alcune possibili soluzioni di collegamento. Con successive prove sperimentali mi sono accertato della loro correttezza, scartando le combinazioni dove il motore ronza senza partire oppure gira ma con rumore e vibrazioni anomale, o se pur girando si scalda rapidamente.

Ho posto l'attenzione sulla combinazione con velocità in centrifuga. Dato che il motore è un carico lineare ho misurato le tensioni AC tra i tre morsetti. Conoscendo il modulo delle tensioni è stato possibile costruire un triangolo di fasori. Col teorema dei (coseni o di Carnot) ho ricavato gli angoli di sfasamento tra i fasori. Infine ho ricostruito i le tre tensioni mediante sintesi di tre segnali sinusoidali all'uscita dell'inverter, di opportuna ampiezza e sfasamento relativo (vedi [2], AN967).  Di fatto ho ottenuto le prime due uscite dell'inverter in opposizione di fase, mentre l'uscita che sostituisce il condensatore è sfasata di circa 75 gradi. Non è stato necessario ridurre  l'ampiezza dell'uscita relativa all'avvolgimento di start.

Ho eseguito delle prove prima utilizzando il circuito a due poli del motore, riuscendo a variare al velocità rotazione indicativamente da 650 G1' a 3500G1' circa. La velocità massima è limitata dall'uscita che arriva ad una frequenza massima di 62 Hz. Ho ritenuto di non andare oltre per non avere problemi con i cuscinetti, che sollecitati oltre le velocità previste in sede di progetto del motore, potrebbero riscaldare. Il limite inferiore alla velocità è dipende dalla riduzione di coppia ammissibile dall'applicazione. Poi andare oltre significherebbe aumentare il numero di interrupt per unità di tempo, aumentando di conseguenza il carico di lavoro del microcontrollore che come detto sopra, non ha prestazioni brillanti.

Il limite inferiore alla velocità è vincolato dalla riduzione di coppia tollerabile dall'applicazione e dal riscaldamento del motore. A basse velocità,  il flusso d'aria della ventola montata sull'asse di rotazione  del motore è notevolmente ridotto, mentre il calore generato non si riduce allo stesso modo. Attualmente la frequenza minima di uscita è fissata in 8 Hz. Questi valori sono tutti parametri di funzionamento non modificabili, se non ricompilando il codice.

In seguito ho provato anche gli avvolgimenti a 12 poli ottenendo un campo di regolazione da meno di un centinaio di giri al minuto fina a 580 G1' circa.

Vista la simmetria degli avvolgimenti è ragionevole aspettarsi che siano stati progettati in quadratura, quindi ho ripetuto le prove descritte sopra imponendo uno sfasamento di 90° sull'avvolgimento ausiliario. Non ho notato differenze rilevanti anche se la coppia dovrebbe avere un'ampiezza maggiore.

Non ho eseguito test di durata o mettendo sotto stress il motore ed il circuito. Ho comunque verificato l'efficacia delle protezioni di sovracorrente nel ponte e sotto tensione dl bus.

Upgrade (da fare)

Lo schema ed il layout della scheda a microcontrollore non sono ottimizzati.  Il risultato ottenuto è frutto di scelte e ripensamenti sulle medesime; si può semplificare il circuito e migliorare il layout in diversi punti. Ho già previsto alcuni miglioramenti pratici. Manca solo il tempo di metterli in ordine e realizzare un nuovo prototipo.

Altra funzione interessante da aggiungere è la possibilità di variare la velocità nelle due direzioni di rotazione. Non è difficile, basta gestire in modo opportuno lo sfasamento delle uscite. Ma il cambio repentino del comando sul verso di rotazione potrebbe provocare anomalie elettriche e/o meccaniche. Dipende dal carico. In questo caso sono da valutare sistemi di protezione.

Un'altra possibilità è inserire un sensore rotazione. Chiudendo  l'anello di controllo in retroazione migliora di molto la precisione sulla regolazione di velocità di rotazione, al variare delle condizioni di carico meccanico sull'albero del motore. 

Altra prova da sperimentare è l'utilizzo della tecnica della terza armonica per aumentare l'ampiezza massima della tensione d'uscita. Interessante anche se meno utile in questo contesto, l'impiego di "Center-Aligned PWM" per ridurre emissioni elettromagnetiche.

Tutte queste prove potrebbero trarre vantaggio con l'utilizzo di dispositivi con integrate periferiche specifiche per il controllo di motori, come il PIC18F1230 o  PIC18F2331.

Escludo la possibilità di utilizzare algoritmi di controllo più evoluti. Servirebbe una conoscenza approfondita delle caratteristiche del motore, rendendo l'utilizzo del progetto molto specifico ad una particolare applicazione. Occorre in questo caso conoscere bene la machina elettrica, le sue caratteristiche elettriche e meccaniche e se ne dovrebbe costruire un modello matematico, da impiegare su un algoritmo piuttosto complesso, con molti calcoli matematici. Insomma sarebbe qualcosa che va oltre una semplice soluzione da hobbista,ci si muoverebbe su un campo adatto a professionisti motivati da ragioni e obiettivi ben precisi.

Riferimenti

Tutti i più importanti fabbricanti di dispositivi elettronici forniscono nei loro cataloghi prodotti adatti al motor control. Insieme ai fogli tecnici dei dispositivi sono sempre forniti documenti riguardanti esempi applicativi e tecniche per il loro miglior utilizzo. Di seguito una breve raccolta di riferimenti impiegati per lo sviluppo di questo progetto. Si possono reperire facilmente in rete con una breve ricerca.

 

[1] - fondamenti del motore asincrono
MICROCHIP APPLICATION NOTE AN887 AC Inducton Motor Fundamentals

[2] - Note applicative di riferimento
MICROCHIP APPLICATION NOTE AN889 VF Control of 3-Phase Induction Motors Using PIC16F7X7 Microcontrollers
MICROCHIP APPLICATION NOTE AN967 Bidirectional VF Control of Single and 3-Phase Induction Motor Using the PIC 16F72
MICROCHIP APPLICATION NOTE AN900 Controlling 3-Phase AC Induction Motors Using the PIC18F4431

[3] - Documentazione sul controllo di potenza
PHILIPS APPLICATION NOTE Power Semiconductor Applications - Chapter 3

[4] - Regole per la progettazione
IRF     DATA SHEET IR2110 High and low side driver
IRF    DESIGN TIPS DT04-4 Using monolithic high voltage gate drivers
IRF    DESIGN TIPS DT92-2A High current buffer for control IC's
IRF    DESIGN TIPS DT97-3 Managing Transients in Control IC Driven Power Stages
IRF    APPLICATION NOTE AN-978 HV Floating MOS-Gate Driver ICs
HARRIS APPLICATION NOTE AN9010 HIP2500 HIGH VOLTAGE HALF-BRIDGE DRIVER IC SEMICONDUCTORS

 

[5] - Approfondimenti dispositivi potenza
FAIRCHILD APPLICATION NOTE AN-9010 MOSFET Basics
FAIRCHILD APPLICATION NOTE AN-9016 IGBT Basic 1
FAIRCHILD APPLICATION NOTE AN-9020 IGBT Basic 2
FAIRCHILD APPLICATION NOTE AN-7500 Understanding Power MOSFETs
IRF APPLICATION NOTE AN-990 Application Characterization of IGBTs
IRF APPLICATION NOTE AN-983 IGBT Characteristics
IRF APPLICATION HANDBOOK apphandbook.pdf
IRF IGBT or MOSFET: Choose Wisely
ADVANCED APPLICATION NOTE APT0201 IGBT Tutorial
POWER APPLICATION NOTE APT0302 Latest Technology PT IGBTs vs. Power MOSFETs TECHNOLOGY
ST APPLICATION NOTES AN1491
ST APPLICATION NOTES AN472 DRIVE CIRCUIT FOR INTEGRATION WITH IGBTS
ST APPLICATION NOTES AN521 AN INTRODUCTION TO IGBTS
RENESAS APPLICATION NOTE REJ05B0288-0110Z Solutions of Three-Phase Motor Control
FREESCALE APPLICATION NOTE AN1590 High Voltage Medium Power Board for Three Phase Motors
FREESCALE APPLICATION NOTE AN1857 A 3-Phace ac Induction Motor Control System
FREESCALE APPLICATION NOTE AN1664    Low Cost 3-Phase AC Motor Control
MICROCHIP APPLICATION NOTE AN894 Motor Control Sensor Feedback circuits

Sul sito www.electroportal.net ci sono articoli introduttivi al funzionamento dei motori asincroni sul loro controllo mediante inverter. Sono semplici e chiari, scritti da persone competenti.

 

Mandatemi altri link se li ritenete utili.


 

 

 

 

 

Home - Progetti - Appunt - Avvertenze - Contatti