Questa pagina l'ho scritta molto tempo fa e contiene materiale obsoleto
L'uso è sconsigliato e non posso più fornire alcun supporto
Questa scheda è una semplice piattaforma pensata per sperimentare soluzioni hardware e software di controllo della velocità per motori in corrente continua. I microcontrollori usati possono essere i Microchip PIC16 (il componente effettivamente utilizzato) oppure i più veloci PIC18, comunque nel contenitore DIP a venti piedini.
Questo circuito presenta le seguenti caratteristiche:
Pur essendo un circuito pensato per "fare esperimenti" è possibile un suo uso "in produzione", per esempio per controllare il movimento di un piccolo robot a due ruote.
A fondo pagina potete scaricare lo schema elettrico, il PCB ed il software di test e valutazione.
Osservando lo schema del circuito si nota immediatamente che si tratta di due circuiti praticamente identici, affiancati tra loro ma sostanzialmente indipendenti. Il motivo di questa scelta deriva dal fatto che spesso tali circuiti sono utilizzati per pilotare una coppia di motori. Occorre notare che l'unico componente effettivamente costoso è il ponte ad H che può controllare un solo motore; i PIC sono invece economici e la possibilità teorica di usarne uno solo per due motori è sembrata poco attraente per la maggiore difficoltà nello scrivere il codice. Il circuito permette comunque di sperimentare soluzioni con un solo PIC per i due motori, semplicemente non montando il secondo processore e sfruttando la possibilità di realizzare collegamenti "volanti". Analogamente, se non serve usare il secondo motore, è ovviamente inutile la presenza del secondo ponte.
Il circuito di potenza è costituito da un ponte ad H integrato LDM18200 di produzione National Semiconductor, capace di pilotare carichi fino a 50V, 3A (6 ampere di picco). I fogli tecnici sono disponibili nella pagina della documentazione tecnica. Il componente è acquistabile da molti fornitori on-line di componenti elettronici, purtroppo a prezzi non esattamente economici.
Il circuito integrato deve essere opportunamente raffreddato: è sufficiente un dissipatore anche non enorme, come quello visibile nella fotografia. E' comunque presente un circuito di spegnimento automatico nel caso di raggiungimento di temperature eccessive.
Il ponte è pilotato da un segnale PWM di tipo locked anti-phase generato dal PIC; un solo segnale digitale codifica sia il verso di rotazione del motore sia la velocità:
La frequenza dell'onda quadra è praticamente irrilevante e deve essere compresa indicativamente tra 5 e 30 kHz. Se inferiore a 20kHz ha come effetto negativo un fischio piuttosto fastidioso emesso dal motore.
L'onda quadra è generata dal PIC che provvede a modificare il DC in funzione di parametri calcolati dal software e/o ricevuti attraverso un bus I2C presente sulla scheda.
Il collegamento tra PIC e LDM18200 è effettuata attraverso un optoisolatore ad alta velocità in modo da garantire (entro certi limiti...) l'isolamento elettrico tra le elevate tensioni di pilotaggio del motore ed i circuiti logici, precauzione quanto mai necessaria se intendete comandare i PIC con un PC. Il componente indicato può essere sostituito da altri, ne esistono diversi con la stessa piedinatura, purché sia garantita una velocità minima di funzionamento di almeno 10-15 MHz.
Questo circuito è stato pensato per lo sviluppo ed il collaudo del software del PIC: per questo sono previsti due connettori per collegare il programmatore PICkit2 direttamente al circuito stampato. Ovviamente se si dispone di un emulatore tali connessioni sono inutili. L'alimentazione del PIC è trasportata attraverso lo stesso connettore usato dal bus I2C oppure proviene dal PICkit2 ed è completamente indipendente da quella dei motori. Si consigliano 3,6V.
Nel file scaricabile a fondo pagina è presente:
C1, C2, C4, C5 | 10N | Condensatori plastici o ceramici non polarizzati |
C3, C7 | 1U | Condensatori plastici o ceramici non polarizzati |
C6 | 220-470uF | Condensatore elettrolitico, 50V o più (100 V se Vs > 35V). Vedi nota |
C8 | 50U | Condensatore elettrolitico, 16V o più |
C9, C11, C12 | 100N | Condensatori plastici o ceramici non polarizzati |
C10 | 220U | Condensatore elettrolitico, 50V o più (100 V se Vs > 35V) |
D1 | 4V7 | Diodo zener 1/2 W, 4,7 V |
ISO1 | HCPL2630 | Optoisolatore doppio ad alta velocità ( > 10 Mbit/s) |
J1, J2 | Connettori per motori | |
J3 | Connettore per l'alimentazione di potenza ( 12V < Vs < 50V) | |
J4 | Connettore per il bus I2C (inclusa l'alimentazione dei PIC) | |
J5, J6 | PICKIT2 | Connettori per PICkit2 |
R1, R2 | 2K2 | Resistore 1/4 W |
R3, R4 | 390 | Resistore 1/4 W |
R5 | 1K | Resistore 1/2 W (1 W se Vs > 15V) |
R6, R7 | 1K | Resistore 1/4 W |
U1, U2 | LMD18200 | Ponte ad H integrati |
U3, U4 | PIC16F690 | Sostituibile con un PIC18F14 o forse anche con altri PIC a 20 pin |
Y1, Y2 | 20MHZ | Quarzo (opzionali, può essere usato l'oscillatore interno al PIC) |
C13, C14, C15, C16 | 22P | Condensatori ceramici (opzionali, può essere usato l'oscillatore interno al PIC) |
Per realizzare questo circuito è necessario disporre dei seguenti file o documenti:
PicBrush2 - Versione 1.0 - Marzo 2010
Copyright © 2010, Vincenzo Villa
La licenza d'uso da leggere ed accettare prima di utilizzare il prodotto
Tutti i nomi di prodotti e ditte sono proprietà dei legittimi proprietari.
Questo documento è disponibile nella sua forma integrale sul sito https://www.vincenzov.net.