Tischhöhenverstellung mit Arduino

Hallo zusammen, ich bin völliger Neuling was das Thema Arduino und Programmierung angeht und bräuchte einen code/sketch für einen Schrittmotor.

Folgendes ist geplant: Es gibt zwei Taster und einen großen Schrittmotor (mit passender Weiche). Wenn ich einen der Taster drücke sollte der Motor einfach in eine laufen. Sobald ich den Taster nicht mehr drücke soll auch der Motor stoppen. Sobald ich den anderen Taster drücke soll der Motor in die andere Richtung laufen, ebenfalls nur so lange wie ich den Taster drücke.

Wozu das ganze? Ich möchte eine Maschinen eine elektrische Tischhöhenverstellung nachrüsten.

Ich habe bereits einen Code gefunden, welcher eigentlich funktionieren sollte, mit welchem der Motor aber nur zuckt, und sobald man einen Taster drückt nichts mehr passiert:

int dirArm = 3; // D3 am Arduino
int stepperArm = 2; // D2 am Arduino

void setup() {
pinMode(dirArm, OUTPUT);
pinMode(stepperArm, OUTPUT);
Serial.begin(9600);
}


void Arm(boolean dir,int steps){

digitalWrite(dirArm,dir);
delay(2000);

while ( ! analogRead(A0)) // Wenn der Taster gedrückt wird dann drehen.
for(int r=0;r<steps;r++){
  digitalWrite(dirArm, HIGH);  // Dreh - Richtung
 digitalWrite(stepperArm, HIGH);
 delayMicroseconds(6000);  // Geschwindigkeit
 digitalWrite(stepperArm, LOW);
 delayMicroseconds(6000);  // Geschwindigkeit
 

}
while ( ! analogRead(A1)) // Wenn der Taster gedrückt wird dann drehen.
for(int l=0;l<steps;l++){
  digitalWrite(dirArm, LOW);  // Dreh - Richtung
 digitalWrite(stepperArm, HIGH);
 delayMicroseconds(5000);  // Geschwindigkeit
 digitalWrite(stepperArm, LOW);
 delayMicroseconds(5000);  // Geschwindigkeit

}
}
void loop(){

Arm(true,1);  // Dreh - Richtung - HIGH
Arm (false,1);  // Dreh - Richtung - LOW


} [code]

Hätte hierzu noch ein passendes Video: Stepper Steuerung Arduino A4988 Taster - YouTube

Würde mich um Hilfe freuen![/code]

Setze Deinen Code bitte in Codetags (</>-Button oben links im Forumseditor oder [code] davor und [/code] dahinter ohne *).
So ist er auch auf portablen Geräten lesbar. Das kannst Du auch noch nachträglich ändern.

Gruß Tommy

Hi

Meiner Vermutung nach hast Du jetzt beide Spulen vermischt - Du kannst die Drähte den Spulen zuordnen, wenn Du Diese mit dem DMM durch misst.

MfG

Das mit den Code-Tags hat wohl noch nicht geklappt.
Am Anfang und am Ende müssen die unterschiedlich sein.

Das hat jetzt geklappt.

Wie hast du denn den Stepper am Arduino angeschlossen ?

Zeige uns ein Schaltbild, damit wir das auch richtig verstehen.

HotSystems:
Das hat jetzt geklappt.

Wie hast du denn den Stepper am Arduino angeschlossen ?

Zeige uns ein Schaltbild, damit wir das auch richtig verstehen.

Hey, kann den screenshot leider nicht einfügen... gibts eine anderer Möglichkeit es zu zeigen?

HobbyMaschine:
Hey, kann den screenshot leider nicht einfügen... gibts eine anderer Möglichkeit es zu zeigen?

Wieso kannst du das Schaltbild nicht einfügen ?
Geht doch sonst auch.
Lies dir die Beschreibung dazu "How to use this forum" mal durch.

HotSystems:
Wieso kannst du das Schaltbild nicht einfügen ?
Geht doch sonst auch.
Lies dir die Beschreibung dazu "How to use this forum" mal durch.

Habe den Videolink im Beitrag eingefügt... Hoffe so ist es auch verständlich :slight_smile:

HobbyMaschine:
Habe den Videolink im Beitrag eingefügt... Hoffe so ist es auch verständlich :slight_smile:

Wieso Video-Link ?
Der nützt uns nichts.

Wir müssen sehen, wie du das aufgebaut hast. Nicht wie andere das machen.
Da sehen wir nicht deine Fehler.

Z.B. können wir nicht sehen, welchen Treiber du für den Stepper verwendest.
Und warum du einen analogen Pin für einen Taster verwendest.
Alles sehr seltsam.

Bevor du mit dem Schrittmotor irgend was machst, solltest du ihn erstmal überhaupt ans laufen bekommen. Und wenn dir zum Anfang ein Taster zu kompliziert ist, dann eben ohne.

( Oder den Motor erstmal weg legen und "Taster bei Arduino" lernen)

Wenn ich deinen Sketch ansehe, soll der Motor einen Schritt in die eine Richtung machen und dann sofort einen Schritt zurück.
Wenn du da was zucken siehst, ist es doch prima. ? ???

Evtl. wäre für die Aufgabe ein DC-Getriebemotor mit H-Brücke die bessere Lösung?
Stepper sind eigentlich zum Anfahren von Positionen gedacht. Hier geht es ja eher um dreht oder nicht.

Gruß Tommy