Questa scheda, di solito viene utilizzata sulle schede di controllo CNC o stampanti 3D è una breakout board di supporto per il driver DRV8825 della Texas Instruments.
Può essere montato per esempio su uno CNC SHIELD V3 per A4988/ DRV8825 Controller.
Il driver è compatibile con il modello A4988, per le sue caratteristiche vedere l’articolo Stepper motor driver A4988 – Esempio applicativo
Si tratta di uno circuito per il controllo motori passo-passo oppure con il termine inglese Stepper Motor Driver, capace di controllare appunto un motore passo-passo bipolare; può fornire fino a 1.5A per fase senza necessità di dissipatori, mentre se è dotato di dissipatore può raggiungere i 2.2A per bobina
La scheda deve essere alimentata con una tensione operativa compresa nel range 8.2V~45V.
Fornisce una limitazione di corrente selezionabile, protezione contro sovracorrente e surriscaldamento ed inoltre fornisce 6 risoluzioni di microstepping da sfruttare nel controllo dei motori passo-passo.
Di seguito si riporta lo schema tipico di collegamento e di controllo di una scheda DRV8825.
Indice
Schema della scheda DRV8825
Sotto è riportato lo schema applicativo minimo dell’integrato DRV8825 presente nel datasheet.
Dove trovare il modulo
Il driver DRV8825 può essere acquistato presso :
- Il sito Homotix, codice HMT8825
- Il sito di Futura elettronica codice 8218-DRV8825.
Schema tipico di applicazione
Sotto è riportato invece lo schema minimo di applicazione dello Stepper motor driver DRV8825
Caratteristiche della scheda
- interfaccia di controllo di velocità e posizione di facile utilizzo;
- 6 differenti risoluzioni per gli step: full-step, half-step, 1/4-step, 1/8-step, 1/16-step e 1/32-step;
- la presenza di un trimmer o sulla scheda permette di controllare e settare la massima corrente in output;
- intelligent chopping control che seleziona automaticamente la corretta modalità di decadimento della corrente (mixed decay o slow decay);
- over-temperature thermal shutdown;
- under-voltage lockout;
- crossover-current protection;
- massima tensione applicabile alla scheda – 45 V;
- regolatore di tensione sulla scheda permette di interfacciarsi direttamente con sistemi a 3.3V e 5V;
- PCB multistrato a 4 livelli per maggiori capacità dissipative;
Foto del modulo
Compatibilità del modulo
La scheda stepper motor driver tipo DRV8825 è compatibile pin to pin con la scheda basata sul motor driver A4988
Installazione dissipatore di calore
Per permettere al chip di trasferire il massimo valore di corrente è necessario istallare sul chip stesso una piccola aletta dissipatrice in alluminio.
L’istallazione è molto semplice in quanto è sufficiente togliere la carta protettiva presente sul biadesivo e applicare l’aletta sul corpo dell’integrato facendo una leggera pressione.
Taratura del driver
Come abbiamo visto sulla scheda è presente un trimmer che serve per la taratura del valore di VREF degli stepper driver, valore che varia a seconda del motore a cui è collegato.
Se si utilizzano degli stepper tipo Nema 17 che si trovano per esempio nelle stampanti, questi lavorano con correnti di 1, 75 A, in questo caso ne calcoleremo il 70% che risulta essere di circa 1,2 A .
Per la taratura saranno necessari un multimetro e un cacciavite di piccole dimensioni possibilmente ceramico per evitare di creare un cortocircuito che distruggerebbe il driver.

Multimetro digitale

Cacciavite di taratura
Regolazione amperometrica diretta
Questa prima modalità consiste nel collegarsi, ad elettronica disalimentata, con il multimetro in serie alle bobine dei motore in modo da misurare il valore della corrente passante, e per fare ciò il multimetro deve essere messo nella modalità amperometrica con lo shunt, per esempio sul valore di 10A.
Provvederemo quindi a regolare la corrente ruotando il trimmer dei driver, a motore fermo, fino a quando muovendosi non assorba la corrente di 1,2 A, una volta tarati si potrà rimuovere il multimetro, sempre ad elettronica disalimentata.
Regolazione indiretta tramite il VREF
Utilizzando questo metodo dovremmo collegare il tester in serie ma calcoleremo il VREF che ci permetterà di regolare il driver per fargli erogare la corrente che vogliamo.
I driver DRV8825 riescono ad erogare un massimo 2,5A ma è consigliabile ridurre il valore a quello di 2.2A per evitare surriscaldamenti anche se è montato il dissipatore.
Per cui se vogliamo far lavorare i nostri motori a 1,2A, calcoleremo il valore VREF con la formula
VREF = Corrente/2 = 1.2/2 = 0.6 V
Quindi con il multimetro impostato in corrente continua, si misurerà ad elettronica alimentata ma con motore fermo, la tensione tra il centro del trimmer ed il terminale GND, successivamente ruoteremo il trimmer fino ad ottenere la tensione calcolata. A questo punto il driver risulterà tarato.
Attenzione che l’operazione non sarà facile, in quanto piccole variazioni del trimmer porteranno a grandi variazioni della tensione per cui si dovrà procedere con piccolissimi variazioni.
Filmato illustrativo
Riporto sotto un interessante filmato che mostra come effettuare la taratura dei driver e altre importanti informazioni sui driver.
Il filmato fa riferimento al driver A4988, ma come abbiamo visto i due modelli sono simili-
Programma di esempio
Per il test del modulo DRV8825, lo si inserirà per esempio su una CNC shield, a sua volta montata su una scheda Arduino UNO originale o clone, e si collegherà un motore passo passo..
Occorre poi collegare alla morsettiera di alimentazione motore, una fonte in grado di fornire una tensione minima di 12V-2A.
Lo sketch farà compiere al motore un determinato numero di passi, seguiti da una pausa.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
#define EN 8 //Direction pin #define X_DIR 5 #define Y_DIR 6 #define Z_DIR 7 //Step pin #define X_STP 2 #define Y_STP 3 #define Z_STP 4 int steps = 50; // Passi da effettuare void setup() { // Impostazione di pin pinMode(X_DIR, OUTPUT); pinMode(X_STP, OUTPUT); pinMode(Y_DIR, OUTPUT); pinMode(Y_STP, OUTPUT); pinMode(Z_DIR, OUTPUT); pinMode(Z_STP, OUTPUT); pinMode(EN, OUTPUT); digitalWrite(EN, LOW); } void loop() { for (int i = 0; i < steps; i++) { digitalWrite(Y_DIR, HIGH); // rotazione oraria digitalWrite(Y_STP, HIGH); delay(1); digitalWrite(Y_STP, LOW); delay(1); } delay (2000); } |
Scheda per utilizzo del Stepper motor driver DRV8825
E’ possibile utilizzare il modulo utilizzando la Board per driver A4988 e DRV8825.
Vedere descrizione e programmi di esempio nell’articolo Board per driver A4988-DRV8825