Stepper mit processing ansteuern

Hallo!

Ich habe ein Problem mit dem Ansteuern eines Steppers von Processing aus. Ich sitze bereits ewig dran und finde den Fehler einfach nicht. Jetzt hoffe ich, dass mir hier jemand weiterhelfen kann.

Ich nutze:
Arduino uno, Pololu stepper driver und einen 4V, 1,2A Pololu-Schrittmotor

Wenn ich jetzt folgenden Code Auf den uno lade läuft alles wie es soll:

void setup() {
// setzen der Digitalpins 1 und 2 als Ausgang.
pinMode(0, OUTPUT);    // Standby (High = Motor an)
pinMode(1, OUTPUT);    // Drehrichtung (High = Drehrichtung rechts)
pinMode(2, OUTPUT);    // Step
digitalWrite(0, HIGH);
}


void loop() {
  
digitalWrite(1, HIGH);  // Drehrichtung links

digitalWrite(2, HIGH); // +1 Step
delay(1); // warte eine tausenstel Sekunde
digitalWrite(2, LOW); // +1 Step
delay(1); // warte eine tausenstel Sekunde

}

Mein Problem tritt erst auf wenn ich genau das Selbe von Processing aus versuche. Dazu habe ich "Standard-Firmata" auf den Chip geladen und folgendes in Processing geschrieben:

import processing.serial.*;
import cc.arduino.*;

Arduino arduino;
int step = 2;
int direction= 1;
int standby= 0;

void setup()
{
//println(Arduino.list());
arduino = new Arduino(this, Arduino.list()[0], 57600);
arduino.pinMode(step, Arduino.OUTPUT);
arduino.pinMode(direction, Arduino.OUTPUT);
arduino.pinMode(standby, Arduino.OUTPUT);
arduino.digitalWrite(standby, Arduino.HIGH);
}

void draw()
{
arduino.digitalWrite(direction, Arduino.LOW);
arduino.digitalWrite(step, Arduino.HIGH);
delay(100);
arduino.digitalWrite(step, Arduino.LOW);
delay(100);
}

Was jetzt passiert verstehe ich einfach nicht. Der Stepper bewegt sich immer abwechselnd einen schritt vor und dann wieder einen zurück.
Ich denke mal, dass da ein ganz simpler Denkfehler hinter steckt.
Kann mir jemand helfen?

Vielen Dank schoneinmal im Voraus!

Du benutzt die Pins für die serielle Schnittstelle auch für die Ansteuerung des Motortreibers. Das kann so nicht funktionieren. Die PINs des Arduino 0 und 1 darfst Du nicht verwenden; verwende andere PINs.
Grüße Uwe

Klasse! So einfach kanns sein. Vielen Dank! Da hätte ich mir noch nen Wolf gesucht. Schon funktionierts :slight_smile:

hallo
ich möchte 6 steppers ansteuern und dachte das es mit arduino mega funktionieren würde.. allerdings bräuchte ich die digitale Pins (für 4 motoren) und die PWM (für 2 Motoren). Wenn das nicht geht kann ich eventuell auch 2 Arduino mega gleichzeitig oder 6 Arduino uno anschliessen??
Danke

Warum machst du nicht einen neuen Thread auf.

Dein Problem passt absolut nicht in dieses uralt-Thema.

Und beschreibe mal was du für Hardware einsetzt, damit wir dir Antworten können.