Wir möchten einen Schrittmotor per Tastendruck einmal in eine Richtung um 180 Grad bewegen und
beim zweiten Tastendruck in die andere Richtung zurück.
Hier der Sketch...
#include <Stepper.h>
int pinPWM_A = 3;
int pinPWM_B = 11;
int pinDir_A = 12;
int pinDir_B = 13;
// Taster Pin
int tasterPin1 = 5;
int tasterPin2 = 6;
// Motorschritte
const int stepsPerRevolution = 400;
Stepper motor(stepsPerRevolution, pinDir_A, pinDir_B);
void setup()
{
motor.setSpeed(100); // Motor Geschwindigkeit
digitalWrite(pinPWM_A, HIGH);
digitalWrite(pinPWM_B, HIGH);
pinMode(tasterPin1, INPUT); //tasterPin1 wird als INPUT definiert
pinMode(tasterPin2, INPUT); //tasterPin2 wird als INPUT definiert
digitalWrite(tasterPin1, HIGH); // Interen Pullupwiderstand aktivieren
digitalWrite(tasterPin2, HIGH); // Interen Pullupwiderstand aktivieren
}
void loop()
{
if (digitalRead(tasterPin1) == LOW)
motor.step(stepsPerRevolution * 1);
delay(20);
if (digitalRead(tasterPin2) == LOW)
motor.step(-stepsPerRevolution * 1);
delay(20);
Soweit Funktioniert das ganze auch.
Wir möchten aber gern das, wenn der Motor bei 180 Grad steht und man den Taster1 ein weiteres mal Drück, nichts passiert.
Jetzt fährt der Motor noch weiter in die selbe Richtung.
Du "verriegelst" ja die beiden Zustände bereits gegenseitig durch FlagNeg und FlagPos...
Allerdings solltest Du den Taster dann nur Abfragen, wenn der gerade aktive Job vorbei ist. Also nicht
während der Motor dreht.
Kann sein, dass die Funktion motor.step() das schon regelt... Probier es einfach mal.
Nein, hab mir letztes Jahr eine kleine Portalfräse gegönnt mit einem 3D Taster.
Diesen hat man nur zum antasten in die Spindel geschraubt aber, die Wiederholgenaugikeit war nicht gegeben... von 0,05-0,8mm war alles dabei:-(
Dann hab ich mir gedacht ich mach einen, an einer festen Position zum einschwenken...
Wenn ich am lepi bin stell ich mal ein Bild ein!
Die Idee ist wirklich nicht schlecht.
Wir haben seit zwei Jahren eine in der Firma
um mal eben Prototypen machen zu können.
Kein fettes Bearbeitungszentrum sondern eher
eine günstigere für den semiprofessionellen Bereich.
Auch hier war der Taster das eigentliche Problem
mit der Wiederholgenauigkeit.
Wenn denn wirklich alle Stricke reißen,
nimm eine Gabellichtschranke als Taster.
Die gibt es mit 50mm Schenkel Abstand das sollte
reichen für eine kleine Portalfräse.
Ich bin nicht mehr auf dem Laufenden,
was die Lichtschranken kosten.
Sie liegen aber im unteren dreistelligen
Bereich.