Salve a tutti ho bisogno di aiuto, ho un codice funzionate dove riesco a muovere un motore passo passo , ho due pulsanti per muoverlo a destra e a sinistra e un potenziometro per regolare la velocità, vorrei aggiungere 2 finecorsa in modo che quando gira da una parte tocca il finecorsa e si ferma il motore, e lo stesso sull'altro pulsante, posto il codice se mi aiutate ad aggiungere questi 2 finecorsa al codice vi ringrazio anticipatamente..
Questo è il codice
#include <Stepper.h>
int forward = 2;
int reverse = 3;
Stepper motor(200, 10,11,12,13);
void setup() {
pinMode(forward,INPUT);
pinMode(reverse,INPUT);
Serial.begin(9600);
}
void loop() {
int Speed = analogRead(A0);
int RPM = map(Speed, 0, 1023, 0, 100);
int f = digitalRead(forward);
int r = digitalRead(reverse);
if(f == 1 && r == 0 && RPM > 1){
motor.step(1);
motor.setSpeed(RPM);
delay(.01);
}
if(r == 1 && f== 0 && RPM > 1){
motor.step(-1);
motor.setSpeed(RPM);
delay(.01);
}
delay(5);
Serial.println(RPM);
}
Il codice devi racchiuderlo nei tag code, vedi sezione 7 del regolamento, spiega bene come fare ( pulsante </> ).
Altrimenti parte del codice può essere visualizzata male o mancare perchè interpretato come attributo del testo stesso.
Per favore edita il tuo post e usa il pulsante indicato. Grazie
Grazie del codice ho provato il codice però non funzionano i finecorsa , e come se ci manca qualcosa nel codice, volevo chiedere se quando tocca il finecorsa, premendo il pulsante opposto posso far ritornare il motore e anche il contrario ovviamente...mi aiutate perfavore?
Grazie del codice, siccome ho cambiato driver per lo step motor adesso ho solo l'uscita Dir e Step ,e possibile fare lo stesso codice per questo driver e rimuovere potenziometro ed inserire la variabile dove posso inserire la velocità? Grazie tante in anticipo