Ciao a tutti, in questo articolo vi mostrerò come creare un progetto che ci permetta di controllare un motore passo passo o step motor con un potenziometro.
La scheda utilizzata è la seguente: http://www.ti.com/tool/msp-exp430g2
Invece il software usato per la programmazione è: http://energia.nu/
I componenti che ci servono sono:
– MSP430G2553
– Step Motor + Driver
– Potenziometro (10K)
– Breadboard
– Fili per i collegamenti
– Un PC con Energia e le librerie di Arduino installate + Cavo Mini USB
I collegamenti da eseguire sono:
Invece lo sketch da caricare sulla board è:
[c]
#include <Stepper.h>
#define STEPSREV 4096
#define COIL1 14
#define COIL2 12
#define COIL3 13
#define COIL4 11
#define POT A5
#define ENER RED_LED
#define TIMEOUT 3000
Stepper myStepper(STEPSREV, COIL1, COIL2, COIL3, COIL4);
int PotVal;
int LastPotVal= 0 ;
int pos = 0;
unsigned long stamp = 0;
void setup()
{
myStepper.setSpeed(4);
pinMode(ENER, OUTPUT);
}
void loop(){
PotVal = analogRead(POT);
PotVal= map(PotVal,0,1023,0,2047);
PotVal= PotVal * 0.1 + LastPotVal * 0.9 ;
LastPotVal= PotVal;
if(abs(PotVal – pos)> 4){
if((PotVal – pos)> 0){
digitalWrite(ENER, HIGH);
myStepper.step(1);
pos++;
}
if((PotVal – pos)< 0){
digitalWrite(ENER, HIGH);
myStepper.step(-1);
pos–;
}
stamp = millis();
}
else {
if((millis() – stamp) > TIMEOUT){
digitalWrite(COIL1, LOW);
digitalWrite(COIL2, LOW);
digitalWrite(COIL3, LOW);
digitalWrite(COIL4, LOW);
digitalWrite(ENER, LOW);
}
}
}
[/c]