Quinta parte del tutorial di Marco Gottardo sui PIC. In questo capitolo effettuiamo il primo collegamento delle interfacce di potenza e pilotiamo il motore D.C. direttamente collegato alla scheda. Disponibile il link del video dimostrativo online su youtube.

Let's GO PIC !!!

utilizziamo il ponte H.


In questo quinto episodio del corso online Let's GO PIC, useremo una delle parti hardware che maggiormente distingue la piattaforma Micro-GT PIC versatile IDE da tutte le altre disponibili in commercio, ovvero le interfacce di potenza in grado di pilotare direttamente gli attuatori a bordo macchina.

La funzione del ponte H integrato e il suo hardware.

Nella scheda Micro-GT sono integrati due tipi di interfaccia di potenza, una specifica per i motori DC con indotto a spazzole collettore e magnete permanente (si veda il mio tutorial edito su grix sui motori in continua) ovvero un ponte H, e uno specifico per i motori stepper di cui approfondiremo in un successivo tutorial costituito dal famoso integrato L298.

Vengono presentati un paio di esempi sulla funzionalita'.  Per essere sintetici alcune spiegazioni sono chiarite rinviando il lettore a un video pubblicato su youtube.

E' dovuto l'importantissimo avviso che il ponte in questione non e' protetto (per scelta logica costruttiva) dai comandi conflittuanti di marcia avanti e marcia indietro contemporanei, quindi e' fondamentale impedire, via software, il loro avvento.

Le azioni di test dei software vanno quindi testate con ponte disabilitato, ovvero con l'alimentazione di potenza esterna spenta e verificando l'effetto del programma sui led del PORTB in cui RB0 e RB1 non devono mai risultare simultaneamente attivi.

Un chiarimento su questa questione lo possiamo trovare nel filmato dimostrativo caricato su youtube e accessibile all'indirizzo:

http://www.youtube.com/watch?v=_IJvDYvfCVA

Passiamo alla descrizione hardware circuitale con una rapida analisi dello schema sottoriportato.

 

Lo schema si compone di due parti:

La sezione driver ha lo scopo di adattare i livelli TTL di comando ai valori più idonei, tra i 12 volt e i 24 volt. Questo trucchetto rende più stabile la saturazione degli elementi attivi, in modo particolare dei due posti in alto, che si troverebbere a dover essere pilotati con un segnale in base troppo basso rispetto alla caduta causata dall'indotto del  motore che si viene a provare in emettitore. Benché non sia propio questo il motivo percui spesso queste configurazioni vengono realizzate con due NPN e due PNP, questa soluzione gestisce in parte il problema della bassa tensione di comando.

I due amplificatori operazionali, collegati in catena aperta, operano da comparatori, eseguono quindi una impostazione dell'uscita a valori prossimi (a meno delle cadute interne pari a circa 1,4 volt) alla tensione di alimentazione presente ai morsetti X7-1 (positiva) e X7-2 (massa) corrispondente ai dati di targa del motore. I darlington Q9 e Q11 sono quindi in grado di saturare.

Affinché il circuito presenti una buona stabilità è bene che le tensioni di riferimento presenti ai morsetti invertenti (pin 2 e pin 6), siano stabili e possibilmente indipendenti dalla tensione di alimentazione del motore. A tal scopo, è importante eseguire una piccola variazione circuitale, rispetto allo schema sovrastante, che non richiede una variazione topologica (modifica di piste), ma solo del componente installato.

Sostituiamo le resistenze R77 e R78 con due zener di un valore intermedio rispetto alla tensione TTL della logica di comando, ad esempio 2,7V.

Con questa piccola modifica l'ingresso invertente dei due comparatori è fissato alla tensione di zener, e quindi l'uscita in mancanza di comando è forzata bassa.

Nella foto notiamo i due zener, di colore azzurro, posti proprio davanti all'amplificatore operazionale.

Durante alcune prove e collaudi alcuni TL082 hanno dato dei malfunzionamenti, evidenziando una scarsa attitudine degli ingresso a JFet al funzionamento come comparatori, difatti questi integrati sono più idonei in applicazioni audio. Sostituiamoli con un più comune, economico, efficiente, moderno LM358. La manovra sarà semplice dato che tutte le Micro-GT distribuite montano queto integrato su zoccolo e la piedinatura è coincidente.

In fase di progettazione ho trascurato una questione operativa, ovvero la necessità di segnalare la direzione di marcia in presenza di segnale di comando e in mancanza di alimentazione di potenza ai morsetti X7 1 e 2, infatti i due led si trovano all'uscita dei comparatori invece che all'ingresso.  Sconsiglio di eseguire inutili modifiche al circuito perché tale segnali luminosi li ritroviamo duplicati nella fila di LED rossi centrali abbinati al PORTB del processore di riferimento della Micro-GT .  

Durante il normale funzionamento, ovvero se avete eseguito corretamente la programmazione, le due spie luminose assolvono perfettamente la loro funzione.

Analizziamo lo stadio di potenza che è rappresentato dalla nota configurazione a ponte H. La prima cosa che si nota è che per questioni grafiche (libreria standard di Eagle), gli switch (termine con cui a volte ci si riferisce sia ai transistor BJT o Darlington che Moasfet quando usati in commutazione) sono disegnati come normali BJT. Riporto qui sotto la corretta simbologia, corrispondente alla configurazione interna dei due BJT che compongono il Darlington. 

Come è chiaro dallo schema interno questo particolare transistor pur componendosi di due elementi si presenta esternamente con i medesimi terminali di uno singolo che continuano a chiamarsi Base, Collettore, Emettitore.

Ne ha vantaggio il guadagno complessivo di corrente che diventa l prodotto delle due hfe.

Si ottiene in questo modo un transistor che pur essendo per applicazioni di potenza è sufficientemente morbido in base da poter essere pilotato fino alla saturazione con pochi milliampere.

Nello specifico caso del TIP122, scelto per essere impiegato nel ponte integrato della Micro-GT la saturazione avviene con circa 10 mA.

Questo darlington si può definire un piccolo gioiello tecnologico, ha un elevato guadagno che lo rende pilotabile con corrente di base piuttosto basse e una corrente di collettore stazionaria in collettore di 5A e impulsiva fino a 8A, dati presi dal databook.

il funzionamento alla fine non si discosta da quello di un normale BJT, quindi esistono le tre zone canoniche di lavoro ed ovviamente non dimentichiamoci della normale rete di polarizzazione, che può essere ridotta a una unica resistenza di base che limita la corrente Ib al valore massimo utile per una corretta saturazione.

 

Vi ricordo che la Micro-GT è una tavoletta sperimentale, quindi, benché predisposta per "andare in campo" si sconsiglia di utilizzarla collegata al bordo macchina ma di sviluppare il software per le prove al banco, e nel limite del dimensionamento anche usando il motore reale.

Generalmente, durante le prove al banco, il rotore viene tenuto libero, ovvero privo di coppia resistente, garantendo un funzionamento freddo degli elementi in commutazione. Per questa ragione non è stato montato alcun dissipatore ai darlington. Evitate di montarli per non mettere in corto circuito il ponte H come si intuisce dall'analisi dello schema.

 

Sbroglio Eagle della sezione ponte H della Micro-GT PIC

Come si vede dall'immagine, i diodi posti in parallelo ad ogni elemento di commutazione sono piuttosto robusti, in effetti data la natura sperimentale della Micro-GT in molti casi possono essere omessi, specie quando il comando di marcia è dato in maniera continua e non inpulsiva come avviene nel controllo combinato del senso di marcia e della velocità.

In caso di difficoltà di reperimento dei diodi schottky GI851, che risultano essere un po datati, si può ripiegare in qualunque modello di diodo costruito con la stessa tecnologia "schottky" in grado di sopportare una corrente di almeno 2 ampere.

Citando wikipedia, il diodo Schottky è costituito da una giunzione metallo-semiconduttore invece che da una giunzione a seminconduttore e ha una zona di svuotamento nulla. Le sue principali caratteristiche sono:

 Nell'insieme del layout della Micro-GT il ponte H si trova nella posizione indicata con il rettangolo rosa.

posizione nel layout dell'H bridge.

Il dip switch S24 a due vie ha lo scopo di isolare il ponte H dal bus dati del microcontrollore. Come possiamo facilmente verificare con lo schema alla mano, scaricabile dai precedenti episodi di "Let's go pic", i comandi avanti e indietro sono connessi ai pin 33 e 34 del processore di riferimento 16F877A, che corrispondono ai segnali RB0 e RB1 del PORTB.

I circuiti a ponte hanno lo scopo di creare e di dare la possibilità di sbilanciare a comando due punti equipotenziali in un circuito.

Considerati i morsetti del motore come i punti equipotenziali in questione, attraverso l'indotto del motore non fluisce corrente fino a che non avviene uno sbilancamento sia verso il ramo di destra che verso il ramo di sinistra consentendo un flusso di cariche "invertibile" nel ramo centrale. E' così possibile usare questa configurazione per invertire la marcia del motore D.C. ivi cablato.

Detto questo si intuisce che i 4 elementi attivi saranno pilotati secondo le diagonali, e che è assolutamente vietato pilotare i "totem" pena la distruzione della gamba del ponte.

Per impedire tale evento è opportuno inserire degli interblocchi sia hardware (non presenti in questa realizzazione) che software.

Operativamente:

 

 Dal punto di vista software si può procedere come segue:

if ((!avanti)&&(!indietro)){  //gestisce la condizione di fermo motore

    PORTB=0b00000000;

}

if ((avanti) && (!indietro)){ //motore in marcia avanti se non sta andando indietro

    PORTB=0b00000001;

}

if ((indietro) && (!avanti)){ //motore marcia indietro se non sta andando avanti

   PORTB=0b00000010;

Affinché il compilatore possa riconoscere le variabili "avanti" e "indietro" è necessario eseguire gli opportuni alias tramite in costrutto #define come spiegato nelle precedenti edizioni del tutorial Let's go pic. 
 
Il problema dei pulsanti.
Benché si tratti di una questione piuttosto semplice è bene chiarire una volta per tutte come acquisire i pulsanti in dotazione alla Micro-GT ovvero come in generale acquisire i pulsanti con una generica demoboard che usi il pic di riferimento che ricordo essere il 16F877A.
Questo microcontrollore sovrappone al PORT A diverse funzionalità a volte conflittuanti tra loro, ad esempio RA0/AN0 o lo si usa come ingresso analogico o lo si usa come ingresso digitale.
Sempre al PORT A è abbinata la funzione di comparazione analogica.
Spesso, i possessori della Micro-GT mi contattano dicendo che "la pulsantiera non funziona", ma la soluzione sta nel software.
Sfortunatamente il simulatore Realpic trascura questa evenienza e accetta i comandi digitali al PORT A anche senza eseguire il settaggio software che sto per spiegare.
Questo è male perché il neofita vedendolo funzionare in maniera simulata non si pone altre domande e lo infila nel PIC aspettandosi lo stesso effetto.
Perderà un sacco di tempo per capire che non verrano acquisiti i pulsanti al PORT A fino a che non si disabilita gli ingressi analogici e i comparatori tramite i comandi:
 
    ADCON1=0b00000111;// DISABILITA GLI INGRESSI ANALOGICI
    CMCON=0b00000111; //DISABILITA I COMPARATORI
 
Il mio stile di programmazione prevede che i settaggi vengano eseguiti in un modulo esterno rappresentato da un file header, ovvero un .h, allo scopo di mantenere più pulito e leggibile il software.
All'interno di questo header verrà implementata una funzione che solitamente chiamo settaggi o setting, di tipo void, ovvero che non restituisce alcun tipo. Tale funzione dovrà essere richiamata per prima all'interno della void main, ovvero nel main program.
 
#define PIC_CLK 20000000 // quarzo a 20MHz
 
void settaggi(){
    ADCON1=0b00000111;// DISABILITA GLI INGRESSI ANALOGICI
    CMCON=0b00000111; //DISABILITA I COMPARATORI
    TRISA=0xFF; 
    TRISB=0;
    PORTB=0b00000000;
    TRISC=0;
    TRISD=0;
    TRISE=0;
}
 
La terza riga all'nterno della funzione settaggi commuta tutto il port A in input.
 
Dal sottostante link puoi scaricare il modulo settaggi.h
setting.zip
 
Colleghiamo il motore.
Vediamo una prima piccola applicazione completa.  Procuriamoci un motore D.C. con indotto a spazzole e collettore, con eccitazione a magnete permanente. Usiamo ad esempio un motore per alzacristalli.
Tipicamente hanno dati di targa simili ai seguenti:
 
Tensione alle spazzole: 12V
corrente nominale: 0,8 A    (alla Vn con asse libero)
corrente di spunto: 1,5A
corrente massima: 4A
 
 
 
Il ponte H a cui è collegato il motore della foto è circuitalmente uguale a quello integrato nella Micro-GT a meno degli operazionali usati come comparatori allo scopo di interfacciare meglio le tensioni di comando TTL alle tensioni di alimentazione del motore.  Le due morsettiere sono però ben diverse dato che gli ingressi di questo ponte indipendente sono costituiti dai fili verde e azzurro mentre nella Micro-GT i medesimi fili sono internamenti collegati al PORT B tramite il dip SV29.
I due fili rossi che vediamo fuoriuscire dal motore saranno collegati ai morsetti X6-1 e X6-2 della Micro-GT mentre i 12 volt della potenza esterna vanno collegati,  +Vcc a X7-1  e la massa a X7-2. Questa è poi internamente collegata in comune con la massa della logica. Per fare le prove al banco questa soluzione è accettabile anche se non esiste separazione galvanica in questo conduttore.
Il ponte H della foto, nato per interfacciamenti a 24V con il PLC pecca di mancanza dei diodi di ricircolo che possono comunque essere inseriti avvitandoli nella morsettiera come visibile nella foto sottostante:
 
I due fili azzurri che vediamo uscire dal terzo e quinto morsetto, e lasciati liberi, sono i segnali di comando. Nel caso si volesse interfacciare questo piccolo PCB alla vostra demoboard, ricordatevi di portare la tensione di comando a +12V interponendo adli ingressi un comparatore con operazionale e degli opportuni bjt di segnale che lavorano in zona saturazione e interdizione.
La presenza ei diodi di ricircolo permetterà al sistema di essere pilotato con la tecnice del PWM facilmente eseguibile con le uscite digitale del PIC, e quindi i avere a disposizione ilcontrollo della velocità del motore senza perdite di coppia.
Approfondimenti in merito li trovate nelle mie precedenti pubblicazioni su www.grix.it  nel tutorial macchine elettriche in continua, oppure in copia sul sito dell'amico Guido Ottaviani all'indirizzo:
 
  http://www.guiott.com/Tutorial/CorsoMacchineCC/CorsoMacchineCC.html
 
Dispongo a magazzino di alcuni esemplari del ponte H che vedete nella foto, percui a chi servisse lo posso spedire in cambio del rimborso spese di costruzione e spedizione.
 
Per quanto riguarda il collegamento del motore al ponte H integrato nella Micro-GT atteniamoci a questa semplice schema di collehamento.
 
L'alimentazione Vcc sarà ovviamente dipendente dai dati di targa del motore utilizzato. Sarà possibile collegare un motore che al massimo assorba 8A impulsivi (nei transitori e nel pilotaggio PWM) e 5A continuii, con tensioni tipiche degli attuatori in continua per picolle e medie applicazioni, 12V, 24V o anche oltre, ma non superiamo i 100V perché questi sono i limiti, di tensione e corrente imposti dai TIP122 montati nella Micro-GT. I diodi di ricircolo sono necessari solo quando si usi il motore con la tecnica del PWM. Il collegamento reale del motore lo potete vedere in uno dei filmati caricati su youtube di cui ho messo il link su questo tutorial.
 
 
 
 Piccole prove con il controllo PWM.
Il controllo a modulazione dell'ampiezza dell'impulso, come sapete o come avete potuto modo di leggere sul link al tutorial di cui sopra, permette una variazione verso il basso (in calare) del numero di cori del rotore senza significativa perdita di coppia.
In questi primi esempi non useremo il generatore di PWM interno del PIC, ma ci creeremo l'onda parzializzata manualmente sfruttando ancora le delay. Ovviamente il primo obbiettivo di una programmazione di questo tipo è la didattica.
 
Esempio 1:
Generazione di un'onda parzializzata fissa.
 
Benché gli attuatori in contina, anche quelli di "piccola stazza" non siano tutti uguali, si possono usare delle tecniche di pilotaggio abbastanza comuni per tutti. La tecnica della modulazione dell'ampiezza dell'impulso permette uno scostamento della velocità dai valori di targa, forniti con alimentazione ai valori nominali di potenza e tensione.
Un buon compromesso potrebbe essere quello di creare una oscillazione di frequenza attorno ai 10Khz, (spesso 12Khz) il cui valore non è però identico per tutti i motori.
Questa non è la sede per approfondire l'argomento, dato che stiamo presentando un tutorial di programmazione e di utilizzo della scheda Micro-GT, ma gli interessati hanno già avuto nelle precedenti pubblicazioni materiale più approfondito.
La teoria che ora ci interessa si limita ai concetti:

Creiamoci via software una oscillazione parzializzata a un terzo (duty cycle pari a 1/3, ovvero la parte attiva dell'onda rettangolare rispetto alla parte in cui il segnale è basso), usando per il momento le funzioni Delay.

Questo è possibile perché nel primo esempio non siamo interessati a una regolazione della velocità, ma solo a una impostazione ridotta a un valore tarato, senza subire una significativa perdita di coppia motrice all'asse.

Consideriamo il classico programma di lampeggio del led costitito dai due comandi ON e OFF del pin intervallati con i due richiami della delay.    Se questi due ritardi sono uguali si ottiene un'onda quadrata, ma se sono diversi degenera in un'onda rettangolare.

Per ottenere un'onda quadrata a 12Khz bisogna eseguire i seguenti semplici calcoli. Otteniamo il periodo da:

T=1/(12000)  [s]

svolgendo il calcolo si ottiene  T=8,3^(-5)      ovvero  T=0,000083 sec  pari a  83 us (micro secondi).

Suddividiamo questo valore in un terzo e due terzi come richiesto dalle specifiche del problema.

Possiamo quindi impostare le nostre enhanced delay con i tempi:

Per i colleghi "programmatori di PLC" dotiamo il nostro piccolo programma di un comandi autoritenuti.

La logica funzionale, o ladder, è ben nota ed è quella nell'immagine:

                               

L'autoritenuta è un comando con memoria di un evento impulsivo che genericamente può trovare "appoggio" su un a variabile interna del sistema di controllo.  L'evento viene "dimenticato" agendo su un comando detto di sgancio dell'autoritenuta.

Agli albori dell'automazione implementata con PLC il primo problema che si riscontrava era la scelta dello stato del contato di sgancio in funzione del cablaggio in campo. Questo ha sempre causato frequenti errori. Già vent'anni or sono scrissi una dispensa in cui fornivo quella che avevo chiamato "la regola di Gottardo".

Un contatto che nel funzionale è delegato allo sgancio di un'autoritenuta viene acquisito nel software al contrario di come è cablato in campo . 

 La riga di programmazione C16 diventa quindi:

if ((start || on)) && (!stop)) { on = 1; }

Segue il codice sorgente del primo esempio. 

 
/**************************************************
 *            corso ZIP 16/02/2011                 *
 *     imposta PWM con duty cycle fisso    *
 *             G-tronic Robotic                       *
 *************************************************/
#include <pic.h>
#include "delay.h"
#include "setting.h"
#define start RA0
#define stop RA1
__CONFIG (HS & WDTDIS & PWRTDIS & BORDIS & LVPDIS & DUNPROT & WRTEN & DEBUGDIS & UNPROTECT);
void main(){
char on=0; 
 settaggi();
 while(1){
    if ((stop==1)){
     on=0;
     PORTB=0b00000000;
    }
    if ((start||on)&&(!stop)){
     on=1;
 }
 
 if (on==1){  
  PORTB=0b00000001;
  DelayUs(27);
  PORTB=0b00000000;
  DelayUs(56);
    }
 }
}
 
PWM_fisso.zip
 
Un'immagine relativa alla simulazione è sottoriportata, ma è possibile facilmente collegare un motore reale al ponte H della Micro-GT, in questo caso però assicuriamoci di avere montato i diodi di ricircolo. La frequenza infatti è fissata a 12Khz, un valore che può essere fastidioso alle giunzioni a causa delle extracorrenti dei carichi induttivi.
 
 
 
Esempio 2:
Comando del motore a tre velocità avanti e tre indietro.
Poniamoci l'obbiettivo di impostare tre diverse velocità, fisse e ben distinte ad 1/3, 2/3 e circa 3/3 dei dati di targa dell'attuatore usato. Il comando sia eseguibile sia in marcia avanti che in marcia indietro.
Vengono quindi distinti 6 diversi possibili stati 3 di marcia avanti e 3 di marcia indietro selezionabili tramite la pressione di 6 pulsanti.
 
 /****************************************************
 *            www.grix.it 17/02/2011                                *
 *    imposta 3 velocità PWM del motore DC          *
 *             G-tronic Robotic                                           *
 ***************************************************/

#include <pic.h>
#include <stdlib.h>
#include "delay.h"
#include "setting.h"
#define av1_3 RA0
#define av2_3 RA1
#define av3_3 RA2
#define ind1_3 RA3
#define ind2_3 RA4
#define ind3_3 RA5

__CONFIG (HS & WDTDIS & PWRTDIS & BORDIS & LVPDIS & DUNPROT & WRTEN & DEBUGDIS & UNPROTECT);
void main(){
 settaggi();
    while(1){
       if ((av1_3==0)&&(av2_3==0)&&(av3_3==0)&&(ind1_3==0)&&(ind2_3==0)&&(ind3_3==0)){
          PORTB=0b00000000; //se non si preme alcun pulsante si forza a zero le uscite
       }

       if ((av1_3==1)&&(ind1_3==0)&&(ind2_3==0)&&(ind3_3==0)){
         PORTB=0b00000001;
         DelayMs(2);
         PORTB=0b00000000;
         DelayMs(4);
      }
     
      if ((av2_3==1)&&(ind1_3==0)&&(ind2_3==0)&&(ind3_3==0)){
         PORTB=0b00000001;
         DelayMs(4);
         PORTB=0b00000000;
         DelayMs(2);
      }
 
      if ((av3_3==1)&&(ind1_3==0)&&(ind2_3==0)&&(ind3_3==0)){
         PORTB=0b00000001;
         DelayMs(5);
         PORTB=0b00000000;
         DelayMs(1);
      }
 
      if ((ind1_3==1)&&(av1_3==0)&&(av2_3==0)&&(av3_3==0)){
         PORTB=0b00000010;
         DelayMs(2);
         PORTB=0b00000000;
         DelayMs(4);
       }
 
      if ((ind2_3==1)&&(av1_3==0)&&(av2_3==0)&&(av3_3==0)){
         PORTB=0b00000010;
         DelayMs(4);
         PORTB=0b00000000;
         DelayMs(2);
      }
 
         if ((ind3_3==1)&&(av1_3==0)&&(av2_3==0)&&(av3_3==0)){
           PORTB=0b00000010;
           DelayMs(5);
           PORTB=0b00000000;
           DelayMs(1);
          }
     }
}
 
 Creiamo un nuovo progetto, come spiegato nel primo episodio di Let's GO pic, e chiamiamo le cartelle e il work space 3speed.  Eseguiamo una compilazione per ottenere il file 3speed.hex (che puoi scaricare da qua, ma prima provate ad ottenerlo da soli), ed attiviamo il simulatore Realpic simulator.
Si imposti l'ambiente visuale come visibile in figura:
 
 
L'ambiente, dopo la configurazione deve contenere una prima colonna di pulsanti corrispondenti alle tre velocità disponibili in marcia avanti abbinate ai tasti ( oppure all'interfaccia a PC, si veda il video su youtube di cui il link ad inizio pagina),
 
RA0 -> avanti a 1/3, 
RA1 -> avanti a 2/3, 
RA2 -> avanti a 3/3.  
 
invece nella seconda colonna gestisce le tre velocità in marcia indietro, quindi:
 
RA3 -> indietro 1/3
RA4 -> indietro 2/3
RA5 -> indietro 3/3
 
Ricordiamoci di configurare i tasti virtuali come in figura:
 
 
Cioè con azione di lancio di tensione e non ti caduta, ovvero normalmente aperto, cosa sconsigliata nelle "tastiere" da acquisire con i microprocessori, ma visto la forma fortemente didattica del tutorial diviene accettabile. In effetti per fare le cose fatte bene si necessita di un antirimbalzo e e di una logica negata che migliora l'immunità dai falsi comandi e disturbi. 
 
Nell'oscilloscopio virtuale possiamo vedere l'azione delle tre forme d'onda nell'uscita abbinata alla marcia avanti e nell'uscita abbinata alla marcia indietro.
 
   
comandi di marcia avanti con impostazioni delle tre velocità 1/2, 2/3 e circa 3/3.
 
 
     
comandi di marcia indietro con impostazioni delle tre velocità 1/2, 2/3 e circa 3/3.
 
 
Come già detto il l'interfacciamento può avvenire usando il "direct access" della Micro-GT a cui colleare una porta parallela di un PC, e a tal fine potrete scaricare l'interfaccia phyton di Fabio Giovanelli (lo vede nel video), oppure usando la tastiera integrata ricordando, schemi alla mano, di configurare i pulsanti con le resistenze  in pulldown, ovvero con l'azione normal zero e pressed uno.
 
 
 
Una spiegazione guidata in video del programma di controllo a 3 velocità lo possiamo vedere su youtube all'indirizzo:
http://www.youtube.com/watch?v=DEkqCSuTGYk
 
Una modifica eseguita al volo è spiegata in questo secondo piccolo video:
http://www.youtube.com/watch?v=M8k8-sEZRto
 
Chi non avesse tempo per ricostruire il sorgente può scaricare tutto dal prossimo link.  Creiamo una cartella all'interno di "documenti" chiamata "Pic-project", qui creiamo la cartella "3speed".
Scompattiamo in questa cartella il file che scarichiamo e creiamo il progetto come guidati nel primo episodio di "Let's GO PIC!!!".
 
3speed(1).zip 
 
Eseguiamo il test con il Realpic simulator.
qui abbiamo un link alternativo se il primo avesse qualche problema di funzionamento, in cui viene spiegato il software.
http://www.youtube.com/watch?v=DEkqCSuTGYk&feature=BF&list=ULY60Zbi4gutk&index=5
.
 
Ecco altri filmati disponibili in youtube relativi alle lezioni con la Micro-GT, questo è relativo all'utilizzo del display a sette segmenti e alla visualizzazione del numero del pulsante premuto.
 
http://www.youtube.com/watch?v=KPNLsg2lvwk&feature=BF&list=ULY60Zbi4gutk&index=8
 
Nel prossimo filmato spiego come usare il display sette segmenti a quattro digit con la tecnica del multiplexing.
 
http://www.youtube.com/watch?v=sDw8F8q2J5Y&feature=BF&list=ULY60Zbi4gutk&index=7
 
Il terzo esercizio in merito al controllo PWM sarà argomento del prossimo episodio di "Let's GO PIC" in cui spiegeremo i convertitori ADC,  e quindi i segnali analogici.
Verrà presentato un esempio in cui la velocità dell'attuattore regolata dal PWM dipenderà dalla posizione di un cursore analogico (trimmer lineare) o in mancanza da un classico potenziometro.
In una variante posizioneremo un servo da modellismo in funzione del segnale analogico.
 
 
 
 Auguro a tutti buon divertimento

pace salute e serenità

Marco Gottardo as Ad.noctis 

Licenza Creative Commons
This opera is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 Italy License.

 
Appendice di fine pagine.

I diodi di ricircolo.

I diodi veloci sono usati in combinazione con GTO, IGCT e IGBTs nella conversione da corrente continua in alternata (DC in AC). Ogni elemento in commutazione rapida (GTO, IGCT or IGBT) necessita un diodo complementare (per esempio diodo a ruota libera o di "freewheeling" per potenza reattiva) per permettere l'uso del sistema di conversione DC-AC nel caso di un carico induttivo.

I diodi veloci sono ottimizzati per sopportare alte sollecitazioni dinamiche (transizione rapida dallo stato di conduzione allo stato di interdizione). Hanno però, in generale, perdite di conduzione più elevate dei diodi di raddrizzamento. Per ogni famiglia di elementi attivi di commutazione (GTO, IGCT and IGBT), esistono diodi veloci specifici e ottimizzati.

Citando la fonte internet wikipedia:

---------------------------------------------------------------------------------------------------------------------------------------------

Il diodo Schottky è costituito da una giunzione metallo-semiconduttore invece che da una giunzione a semiconduttore e ha una zona di svuotamento nulla. Le sue principali caratteristiche sono:

  • la tensione di soglia a 0,35 V invece di 0,6 V
  • tempi di commutazione brevissimi.

--------------------------------------------------------------------------------------------------------------------------------------------

Riprendo dopo la citazione la mia esposizione dicendo che:

L'intervento dei diodi di ricircolo avviene durante la fase di interdizione in cui i carichi induttivi tenderebbero, per loro natura, a mantenere lo stato di flusso e quindi di corrente sul ramo interdetto, con il conseguente accumulo di cariche tra i morsetti dell'elemento di commutazione (in transistor o il mosfet). TAle accumulo spinge la tensione in maniera impulsiva verso livelli pericolosi per la giunzione stessa.

Creiamo dunque una strada diversa che "ricircoli" le cariche verso il serbatoio più ovvio ovvero il generatore.   

I diodi schottky sono disponibili in varie misure ma tipicamente, nelle applicazioni elettroniche leggere con PWM su attuatori DC di piccola e media stazza (si veda il motore nella foto) vanno bene con correnti massime dai 2 ai 4 ampere. 

       

Ecco il simbolo grafico del diodo schottky.

                        

 

Ecco l'aspetto di alcuni modelli di diodi veloci adatti a funzionare come ricircolo.

      

il seguente è uno dei modelli più usati nelle piccole applicazioni:

BYV26B per applicazioni attorno ai due ampere.

.

Come procurarsi i circuiti stampati o esemplari già montati.
Come noto la piattaforma su cui si basa il corso online "Let's GO PIC" è la Micro-GT PIC versatile I.D.E.

Me ne rimangano a magazzino ancora diversi esemplari, chi fosse interessato ad attrezzarsi ha disponibili le seguenti opzioni.

  • invio del solo PCB
  • invio del solo PCB più i componenti per autocostrire l'oggetto (Kit di montaggio)
  • Invio della Micro-GT modello base che può flaschare i PIC in seriale e simulare 8 ingressi e 8 uscite
  • invio della Micro-GT completamente assemblata e testata.

Ecco le immagini relative a alcune delle varianti:

 Micro-GT (disponibile opzione solo PCB) 

 

Micro-GT (disponibile modello base assemblato parzialmente come in figura)

 

Micro-GT PIC versatile I.D.E. (assemblaggio completo e collaudo).

Chi fosse interessato ad avere uno di questi esemplari mi può contattare alla mia mail personale

ad.noctis@gmail.com

 

Sono disponibili anche alcuni pannelli contenti 10 esemplari del ponte H visibile all'interno del tutorial, anche per questo PCB vale quanto detto sopra.

Ogni pannellino contine 10 esemplari, è possibile chiedere anche porzioni di pannello ma se possibile evitiamo il singolo esemplare.