Hallo,
hoffe jemand kann mir weiterhelfen, da ich sonst an der Accellibrary
verzweifle.
Hardware: 2Stepper, 2 Pololu A4988 Treiber, Arduino Mega
Soll Programmablauf:
-Lichtschranke (FL) gibt ein Signal
-Stepper(F0) soll eine definierte Strecke fahren
-Anschließend soll Stepper(FO) und Stepper(W) solange fahren bis das
Signal(S) kommt
#include <AccelStepper.h>
AccelStepper FO(1, 3, 4);
AccelStepper W(1, 6, 7);
int FPos = 1000;
int FL = A0 ; // FL = Lichtschranke
int S = A3 ; // S = Scanner
int FLVal = 0;
int SVal = 0;
void setup()
{
FO.setSpeed(-50);
//FO.setMaxSpeed(50);
// FO.setAcceleration(10000000);
W.setSpeed(-120);
//W.setMaxSpeed(120);
// W.setAcceleration(10000000);
pinMode(FL, INPUT);
pinMode(S, INPUT);
}
void loop()
{
FLVal = analogRead(FL);
if (FLVal > 200)
{
FO.moveTo(FPos) ;
FO.run();
}
FLVal = analogRead(FL);
if (FLVal >200)
{
FO.runSpeed();
W.runSpeed();
}
}
Ist Programmablauf
- Beide Stepper starten zur gleichen Zeit
- Stepper (FO) bleibt nach erreichen der Schritte einfach stehen,
Stepper(W) läuft wie gewünscht weiter
Hab schon ein paar Varianten versucht, leider nie mit dem gewünschten
Sollablauf.
Kann man den move Befehl irgendwie zurücksetzen?
Danke schon mal fürs lesen
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.