Linguaggio: Arduino
Obiettivo didattico:
Imparare ad utilizzare il circuito integrato “L293D” e interfacciarlo con Arduino.
Obiettivo dell’esercitazione:
Realizzare un robot che esegue un cerchio durante il suo movimento.
Materiale:
- cavi di collegamento
- cavo usb per collegare arduino con il pc
- DC MOTOR x2
- Circuito integrato “L293D”
- Carrello Arduino
- Rack batterie
Foto robot:
Datasheet circuito integrato “L293D”:
Spiegazione datasheet:
Codice Arduino:
const int leftForward = 2;
const int leftBackward = 3;
const int rightForward = 4;
const int rightBackward = 5;
void setup()
{
pinMode(leftForward , OUTPUT);
pinMode(leftBackward , OUTPUT);
pinMode(rightForward , OUTPUT);
pinMode(rightBackward , OUTPUT);
avanti(5000);
indietro(5000);
}
void loop()
{
}
void avanti(int millisec)
{
digitalWrite(leftForward , 1);
digitalWrite(leftBackward , 0);
digitalWrite(rightForward , 1);
digitalWrite(rightBackward , 0);
int tempo=0;
while(millisec-tempo>0)
{
delay(1);
tempo++;
}
digitalWrite(leftForward , 0);
digitalWrite(leftBackward , 0);
digitalWrite(rightForward , 0);
digitalWrite(rightBackward , 0);
}
void indietro(int millisec)
{
digitalWrite(leftForward , 0);
digitalWrite(leftBackward , 1);
digitalWrite(rightForward , 0);
digitalWrite(rightBackward , 1);
int tempo=0;
while(millisec-tempo>0)
{
delay(1);
tempo++;
}
digitalWrite(leftForward , 0);
digitalWrite(leftBackward , 0);
digitalWrite(rightForward , 0);
digitalWrite(rightBackward , 0);
}
void fermo()
{
digitalWrite(leftForward , 0);
digitalWrite(leftBackward , 0);
digitalWrite(rightForward , 0);
digitalWrite(rightBackward , 0);
}
Descrizione top-down dei passi realizzativi:
- Realizzare il circuito
- Scrivere il codice arduino
- Collegare la scheda arduino al pc tramite il cavo usb
- Caricare il programma cliccando sul pulsante “carica” dell‘ambiente software arduino
Test finale:
Osservare come il robot realizza un cerchio durante il suo movimento.
Commenti recenti