Hallo,
Ich kann mir Folgendes nicht erklären:
StepType = StepM2
Motor mit 200 Schritten/Umdrehung
Enstufe macht 1/10 Mikroschritt
Das Codefragment
StepStartFreq:= 150;
StepEndFreq:= 600;
StepAccValue:= 1000;
loop
Stepcount:=2000;
StepDestCW;
repeat until StepMode = StepStop;
mDelay(1000);
Stepcount:= 2000;
StepDestCCW;
repeat until StepMode = StepStop;
mDelay(1000);
endloop;
sollte doch nun immer genau eine Umdrehung hin- und herfahren.
Aber es ist genau nur eine halbe Umdrehung in jeder Richtung.
Und der Motor hat definitiv 200 Schritte, die Endstufe definitiv 1/10 Mikroschritt.
Schrittverluste aufgrund eines vielleicht exotischer Timinganforderung der Endstufe an die Pulslängen kann man ausschließen, denn es ist wirklich genau eine halbe Umdrehung.
Großes Fragezeichen meinerseits. Was mache ich falsch?
Viele Grüße
Rolf
Ich kann mir Folgendes nicht erklären:
StepType = StepM2
Motor mit 200 Schritten/Umdrehung
Enstufe macht 1/10 Mikroschritt
Das Codefragment
Code
StepStartFreq:= 150;
StepEndFreq:= 600;
StepAccValue:= 1000;
loop
Stepcount:=2000;
StepDestCW;
repeat until StepMode = StepStop;
mDelay(1000);
Stepcount:= 2000;
StepDestCCW;
repeat until StepMode = StepStop;
mDelay(1000);
endloop;
sollte doch nun immer genau eine Umdrehung hin- und herfahren.
Aber es ist genau nur eine halbe Umdrehung in jeder Richtung.
Und der Motor hat definitiv 200 Schritte, die Endstufe definitiv 1/10 Mikroschritt.
Schrittverluste aufgrund eines vielleicht exotischer Timinganforderung der Endstufe an die Pulslängen kann man ausschließen, denn es ist wirklich genau eine halbe Umdrehung.
Großes Fragezeichen meinerseits. Was mache ich falsch?
Viele Grüße
Rolf