ITIS “F.GIORDANI” Caserta
A.S. 2016/17
classe 3D informatica
indirizzo di studio: Informatica e Telecomunicazione – articolazione Informatica
Materia: Informatica
Programmatore: Alessandro Bonomo
Sistema Operativo: Windows 10
Compilatore:  Arduino
Linguaggio: Arduino

Obiettivo didattico: passaggio di parametri a funzioni e procedure

Obiettivo dell’ esercitazione:  far accelerare lo stepper motor al variare del segnale analogico in input dal potenziometro

Elenco attrezzature e materiali:

  1. scheda arduino
  2. potenziometro
  3. stepper motor
  4. driver L298N
  5. cavi di collegamento
  6. breadboard
  7. cavo usb per collegare arduino con il pc

materialestep

Codice pseudolinguaggio/flowchart:

includo libreria stepper
dichiaro costante StepPerRivoluzioni=200
-inizializzo la libreria stepper e gli passo come parametri i pin
utilizzati e il numero di step per rivoluzioni
fai una sola volta { }
fai sempre
{
leggo valore analogico su A0 e lo metto nella variabile sensor reading
-effettuo la mappatura del valore analogico da 0 a 100 e assegno il valore
alla variabile motorSpeed
se la velocita’ del motore e’ > 0 allora
{
imposta velocita’ (motorSpeed)
aspetta finche’ il motore finisca di muoversi
}
}

Codice Arduino:

#include <Stepper.h>
const int stepsPerRevolution = 200; // cambia per incrementare il numero di passi per rivoluzione
// inizializzo la libreria stepper da pin 8 a 11
Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);
void setup() {}
void loop()
{
// leggo valore analogico da potenziometro
int sensorReading = analogRead(A0);
// map it to a range from 0 to 100:
int motorSpeed = map(sensorReading, 0, 1023, 0, 100);
if (motorSpeed > 0)
{
// step da 1/100 rivoluzioni:
myStepper.setSpeed(motorSpeed);
myStepper.step(stepsPerRevolution / 100);
}
}

Schema collegamenti elettronici:

stepperimg

Descrizione top-down dei passi realizzativi:

  1. Realizzare il circuito
  2. Scrivere il codice arduino
  3. Collegare la scheda arduino al pc tramite il cavo usb
  4. Caricare il programma cliccando sul pulsante “carica” dell‘ambiente software arduino

Test finale:
Osservare l’ incremento della velocita’ del motore a step girando il potenziometro.

steptest