INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
GShield v5B / Arduino Due / Verwendung ohne G-Code
26.08.2018, 11:33
Beitrag #1
GShield v5B / Arduino Due / Verwendung ohne G-Code
Hallo Leute,

ich habe vor Kurzem ein GShield v5b via Adafruit bestellt. Normalerweise wird dieses zum Einsatz mit Fräsen / 3D Druckern verwendet. Dies lässt sich aber gut mit dem Accelstepper Lib in Verbindung mit einem Due verwenden, ohne dass man Levelshifter verbauen muss, und der Due ist natürlich wesentlich schneller verglichen mit den Megas...

Ich habe nur Fragen zum Einsatz ohne grbl im gefunden, jedoch keine Antworten. Naja, selbst ist der Maker und GI(M)DF Big Grin

Ein abgewandeltes Beispiel von Mechapro lässt das GShield laufen. Anbei ein kleiner, aber lauffähiger Code. Vielleicht hilft dieser jemanden hier weiter.
(Verzeiht mir Aufbau und Formatierung, ich bin jahrelang nicht mehr mit der Arduino IDE unterwegs gewesen ... )

Gruß,

Peter

Code:
#include <AccelStepper.h>
#include <stdint.h>
// thx to Mechapro :)

const uint8_t disablePin = 8;

// pin assignment X-Axis
//const uint8_t stepPin = 2;
//const uint8_t dirPin = 5;

// pin assignment Y-Axis
//const uint8_t stepPin = 3;
//const uint8_t dirPin = 6;

// pin assignment Z-Axis
const uint8_t stepPin = 4;
const uint8_t dirPin = 7;


// actuate stepper motor
void forwardstep() {  
  digitalWrite(dirPin, HIGH);
  digitalWrite(stepPin, LOW);
  delayMicroseconds(1);
  digitalWrite(stepPin, HIGH);
}

void backwardstep() {  
  digitalWrite(dirPin, LOW);
  digitalWrite(stepPin, LOW);
  delayMicroseconds(1);
  digitalWrite(stepPin, HIGH);
}

// setting up the AccelStepper library with custom actuator functions
AccelStepper stepper(forwardstep, backwardstep); // use functions to step

void setup()
{
  // configuring gpio interface...

  pinMode(disablePin, OUTPUT);
  pinMode(stepPin, OUTPUT);
  pinMode(dirPin, OUTPUT);
  
  // activating
  digitalWrite(disablePin, LOW);
  
  // ramp parameters
  stepper.setMaxSpeed(300);
  stepper.setAcceleration(800);
}

int dir = 1;
void loop()
{
    if (stepper.distanceToGo() == 0)
    {
        // Random change to speed, position and acceleration
        // Make sure we dont get 0 speed or accelerations
        delay(10);
        stepper.move(dir * 600);
        dir = dir * -1;
    }
    stepper.run();
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  For-Schleife ohne Begrenzung? Batucada 4 220 26.04.2019 09:54
Letzter Beitrag: Batucada
  [Vorstellung] Serieller Sender ohne 2. MC Tommy56 2 229 13.04.2019 22:03
Letzter Beitrag: Tommy56
  Auslagern von Code aus einer Bibliothek Blende8 6 350 10.04.2019 20:23
Letzter Beitrag: Tommy56
  2 PWM-Signale ohne Überschneidung mephistopheles 8 569 27.03.2019 09:45
Letzter Beitrag: mephistopheles
  Kompass kalibrieren - GY-271/QMC5883L - Beispiel-Code? Arduinero 0 459 29.01.2019 16:57
Letzter Beitrag: Arduinero
  Code für Würfel korrekt? JanGamer11 13 2.644 18.01.2019 16:30
Letzter Beitrag: Arduinero
  IR Code senden mit IRremote BanditBandeh 4 1.253 21.11.2018 18:31
Letzter Beitrag: Smirgel
  Code für Speicher optimieren Sasch600xt 35 3.315 31.08.2018 12:41
Letzter Beitrag: Sasch600xt
  Doppelte Abfrage der Bedingung mit Wartezeit ohne Delay soluman 3 1.046 05.07.2018 20:53
Letzter Beitrag: GuaAck
  Leds dimmen ohne delay jennerlein 9 1.668 20.04.2018 02:04
Letzter Beitrag: Corvus

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste