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
Stepper Steuerung mit Taster und Endschalter
25.02.2020, 22:30
Beitrag #1
Stepper Steuerung mit Taster und Endschalter
Hallo Zusammen,

ich möchte gerne eine Schaltung realesieren habe aber von Programmieren nicht all zu viel Ahnung und wüßte nicht so recht wo ich anfangen sollte zu googeln.

Und zwar, ich würde gerne einen Nema 17 Stepper Motor so betreiben das ich per tastendruck einmal Linkslauf sowie einmal rechtslauf schalten kann, dafür habe ich auch schon was gefunden. Zusätzlich möchte ich aber gerne einen Endschalter einbauen, der dafür sorgt das wenn der Motor einen gewissen punkt angefahren hat Stopt und von Diesen Punkt aus genau z.B. 50 Steps weiter dreht.

Idee hinter dem ganzen. Ich habe mir einen Laser Engraver gebaut und möchte den Laser in der Z-Achse höhen verstellen. Um den Laser an das Material an zu passen von der Stärke möchte ich den Laser per Knopfdruck runterfahren bis er den Endschalter auslöst und von den Punkt an z.b. 50 Steps nach oben fährt, das ich für jedes Werkstück den selben Abstand habe. Wäre super lieb von Euch wenn mir jemand die passenden Zeilen in den Code einschreiben könte.






//Stepper-Motor-Steuerung mit A4988 und Taster


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(50);

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(5000); // Geschwindigkeit
digitalWrite(stepperArm, LOW);
delayMicroseconds(5000); // 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


}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
25.02.2020, 22:43
Beitrag #2
RE: Stepper Steuerung mit Taster und Endschalter
Stelle Deinen Sketch bitte in Codetags.
Wie das geht, steht hier.

Zum Verständnis: Er soll vom Endschalter der manuell angefahren wird (=virtueller Nullpunkt) 50 Steps zurück fahren?

NEMA17 sagt nur etwas über die mechanischen Abmessungen aus. Da Du den Motor aber schon fährst, hast Du damit ja keine Probleme.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.02.2020, 09:04
Beitrag #3
RE: Stepper Steuerung mit Taster und Endschalter
Bist du dir sicher, dass du für die Taster analoge Pins verwenden willst ?
Warum keine digitalen ?

Oder sehe ich das evtl. falsch, da der Sketch schlecht lesbar ist ?

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.02.2020, 11:59
Beitrag #4
RE: Stepper Steuerung mit Taster und Endschalter
Hallo Tommy56,

ja so hatte ich mir das vorgestellt. Ich fahre mit den Motor soweit runter bis der endschalter auslöst, sobald er dieses tut soll der Motor z.B. 50 Steps wieder nach oben fahren und dort verweilen. In dem Code ist der Endschalter allerdings noch nicht angegeben und auch noch kein Pin für belegt.

Danke für die Info mit dem Nema17, bin davon ausgegangen dieses hätte was mit der Version des Motors zu tun :-)

@Hotsystems;
Ich habe den Code ledeglich aus dem Internet übernommen, da ich selber erst ganz am Anfang stehe was programmieren mit Arduino angeht. Bin für Vorschläge gerne offen, wenn ich diese denn auch verstehen kann :-D

Ps.: Ich wollte den Code nachträglich in Codetags erstellen, leider kann ich den Beitrag erst nach 6 Wochen wieder bearbeiten :-(

Lieben Gruß
Patrick
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.02.2020, 13:07
Beitrag #5
RE: Stepper Steuerung mit Taster und Endschalter
(26.02.2020 11:59)Milano schrieb:  ....
Ps.: Ich wollte den Code nachträglich in Codetags erstellen, leider kann ich den Beitrag erst nach 6 Wochen wieder bearbeiten :-(

Seit wann das denn, das ist mir neu.

Wenn du es nicht kannst, dann bitte einen Admin darum.
So ist der kaum richtig lesbar.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.02.2020, 13:14
Beitrag #6
RE: Stepper Steuerung mit Taster und Endschalter
hier nochmal der Code in lesbar :-)

Code:
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(50);

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(5000); // Geschwindigkeit
digitalWrite(stepperArm, LOW);
delayMicroseconds(5000); // 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


}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.02.2020, 18:18
Beitrag #7
RE: Stepper Steuerung mit Taster und Endschalter
Du solltest dir erst mal Gedanken darüber machen, ob das mit den Tastern am analogen Eingang so ok ist.
Ich sehe das, so wie du es verwenden willst kritisch, da bei nicht gedrücktem Taster der analoge Eingang offen ist und evtl. nur Müll dabei rauskommt.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.02.2020, 18:49
Beitrag #8
RE: Stepper Steuerung mit Taster und Endschalter
Wie schon weiter oben beschrieben habe ich leider nicht all zu viele Kenntnisse in sachen programmieren und stehe noch am Anfang und war soweit schonmal froh das ich eine Schaltung gefunden habe die bis hierher funktioniert, nur das mir halt die eine Funktion mit dem Endschalter fehlt. Wäre also super lieb wenn einer mir einen code Schnipsel nennen kann wie ich das realesieren könnte.

Grüße
Patrick

Ps.: Bitte keine Zitate mehr mit lern erst mal programmieren, ich denke jeder fängt mal klein an und versucht sich durch zu kämpfen. Ohne jemanden jetzt auf den Schlips zu treten.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
Question Steuerung Lineartisch AnS 21 318 18.09.2020 15:09
Letzter Beitrag: MicroBahner
  Tag Nacht Steuerung Hühnerstall Klappe Raging Ender 10 361 10.09.2020 13:31
Letzter Beitrag: hotsystems
  Super Mario Theme per Taster theo-rist 5 247 26.08.2020 19:15
Letzter Beitrag: hotsystems
  Ramps 1.4 mit #Accel Stepper Steuerung per Serial Monitor Arduino DMX Master 14 794 12.08.2020 15:26
Letzter Beitrag: Arduino DMX Master
  Steuerung KFZ Hebebühne Markus3D 6 1.585 31.07.2020 14:45
Letzter Beitrag: Beatzler
  PWM-Steuerung mit 15 KHz oder höher ingo46 8 973 26.06.2020 14:21
Letzter Beitrag: ingo46
  Arduno + Ethernet-Shield: HTML-Seite mit Taster für einmalige Auslösung RivaDynamite 1 319 22.06.2020 20:50
Letzter Beitrag: Tommy56
  Zwei Richtungen mit einem Taster FoxFactoy 12 872 19.06.2020 13:04
Letzter Beitrag: hotsystems
  Aquarium Steuerung sopolka 8 820 14.06.2020 15:35
Letzter Beitrag: Tommy56
  Steuerung über Infrarot und Bluetooth SimonTau 4 684 20.05.2020 07:37
Letzter Beitrag: Corvus

Gehe zu:


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