CNC Interfaceplatine oder Arduino, was meint Ihr

perfekt, dann hatte ich da keinen Denkfehler :-).
Danke.

Jetzt bin ich an dem Punkt an dem es mit dem Code los geht.

Mein erster Test war erfolgreich :slight_smile:

/* 
 Schritmotoren Steuerung 
 
 Treiber:   SK8060 bis 6A
 Steuerung: Takt und Richtung
 Motor:     Schrittmotoren 8,7 Nm 6 A
 Mikrocontroller: Arduino Mega 2560
 Datum:     22.09.2017
 
 PUL = Takt fuer den Motor 
 DIR = Drehrichtung; HIGH = im Uhrzeigersinn, LOW = Gegen den Uhrzeigersinn
 ENA = Treiber; ON = LOW, Off = HIGH (! Achtung Motor hat kein Haltemoment !) 

Nebenrechnung: 
   1 Schritt  = 1,8 Deg
 200 Schritte = 1 Umdrehung 
 Der Treiber macht jedoch 1/2 Schritte daher 
 400 Schritte = 1 Umdrehung
*/

int PUL_Y = 51; 
int DIR_Y = 52;
int ENA_Y = 53;
int i; 

void setup() {

  // Digitalen Pin = Ausgang
  pinMode(PUL_Y, OUTPUT); 
  pinMode(DIR_Y, OUTPUT);
  pinMode(ENA_Y, OUTPUT);

  digitalWrite(DIR_Y, LOW);
} // void setup() 

void loop() {

  for (i = 0; i < 400; i++) {
   digitalWrite(PUL_Y, HIGH);
   delay(1);
   digitalWrite(PUL_Y, LOW);
  } 
   delay(1000); // 1 Sekunde  
} // void loop()

Der Code macht immer eine volle Drehung (400 Schritte) und dann 1 Sekunde pause, das im Loop.

Jetzt stellt sich die Frage wie kann ich die Geschwindigkeit richtig regeln? woher wies ich welche Zeit schon vergangen ist und ich den Nächsten schritt machen muss.
Denn ein Schritt ist ja nur dann gemacht, wenn ich von LOW zu HIGH und wider zu LOW gelaufen bin.

Ich dachte das ich das schon mal gemacht habe, doch scheinbar war das ein Motor mit Gehirn :frowning: denn hat man die Anzahl der schritte und die zeit gesagt und den Rest hat er dann gemacht, das Programm kann ich also nicht verwenden.

Im den Weiten des Netzes habe ich eine Stepper LIB gefunden, doch die arbeitet pro Motor mit mehrerer Pins :frowning: wenn ich das richtig verstanden habe, ich habe pro Motor 1 Pin für den Takt, daher glaube ich das das nicht die Richtige LIB für mich ist.

Daher meine Frage an euch, wie berechne ich das richtig, so das ich die Drehzahlen richtig einstellen kann?

Gruß Mücke

Motor_001.gif
Motor_001.gif