Motor shield arduino
Motor shield arduino on line
piedinatura dello scudo motore arduino
Raccomando vivamente di dare un’occhiata anche ai codici di esempio per la libreria AccelStepper alla fine di questo tutorial. Questa libreria è abbastanza facile da usare e può migliorare notevolmente le prestazioni del vostro hardware.
Dopo ogni esempio, suddivido il codice in sezioni più piccole e spiego come funziona. Non dovreste avere problemi a modificare il codice in base alle vostre esigenze, ma se avete domande, lasciate un commento qui sotto.
In questo tutorial ho usato un motore passo-passo bipolare con 4 fili. Cercate di trovare un motore passo-passo che possa funzionare a 5-12 V e che non superi il limite di corrente di 2 A. Questo di Adafruit funziona benissimo a 12 V e non assorbe troppa corrente (350 mA).
La Arduino Motor Shield Rev3 è costruita intorno al driver L298 dual full-bridge, realizzato da STMicroelectronics. Con la shield si possono pilotare motori DC, un motore passo-passo, relè e solenoidi. Viene fornito con due canali separati, chiamati A e B, che è possibile utilizzare per guidare 2 motori DC, o 1 motore passo-passo quando combinato.
Una cosa che è molto importante da ricordare è che il L298 è un driver a tensione costante. Questo significa che l’assorbimento di corrente dipende dal rapporto tra l’induttanza e la resistenza (L/R) del motore che si collega ad esso.
feedback
}Codice Spiegazione:Lo sketch inizia includendo la libreria AFMotor.h. La seconda linea AF_DCMotor motor(motorPort#); crea un oggetto della libreria. Qui è necessario dichiarare il numero della porta del motore a cui il motore è collegato. Per la porta M1 scrivi 1, per M2 scrivi 2 e così via.Se vuoi collegare più motori allo scudo, crea un oggetto separato per ogni motore. Per esempio, il seguente frammento di codice crea due oggetti AFmotor.AF_DCMotor motor1(1);
Spiegazione del codice: Lo sketch inizia includendo la libreria AFMotor.h. La seconda linea AF_Stepper motor(48, 2); crea un oggetto della libreria. Nella sezione setup e loop del codice chiamiamo semplicemente le due funzioni sottostanti per controllare la velocità e la direzione di rotazione di un motore.Driving Servo Motors with L293D ShieldDriving the servos with L293D shield is as easy as pie. Lo scudo motore in realtà rompe Arduino 16bit PWM uscita perni #9 & #10 al bordo dello scudo con due 3-pin intestazioni.Power per i servi viene dal regolatore 5V a bordo di Arduino, quindi non è necessario collegare nulla al terminale EXT_PWR.Wiring Servo motore a L293D Motor Shield & ArduinoCome stiamo usando i perni PWM a bordo, lo schizzo utilizza IDE costruito
codice dello scudo motore arduino
Motore DC spazzolato. È possibile pilotare due motori DC spazzolati collegando i due fili di ciascuno nei terminali a vite (+) e (-) per ogni canale A e B. In questo modo è possibile controllare la sua direzione impostando ALTO o BASSO i pin DIR A e DIR B, è possibile controllare la velocità variando i valori del duty cycle PWM A e PWM B. I pin Brake A e Brake B, se impostati in ALTO, freneranno efficacemente i motori DC piuttosto che lasciarli rallentare tagliando l’alimentazione. Si può misurare la corrente che passa attraverso il motore DC leggendo i pin SNS0 e SNS1. Su ogni canale ci sarà una tensione proporzionale alla corrente misurata, che può essere letta come un normale ingresso analogico, attraverso la funzione analogRead() sull’ingresso analogico A0 e A1. Per comodità è calibrata a 3,3V quando il canale sta erogando la sua massima corrente possibile, cioè 2A.
La lunghezza e la larghezza massime del PCB Motor Shield sono rispettivamente 2,7 e 2,1 pollici. Quattro fori per le viti permettono di fissare la scheda a una superficie o a un case. Notate che la distanza tra i pin digitali 7 e 8 è di 160 mil (0.16″), non un multiplo pari della distanza di 100 mil degli altri pin.