mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Arduino Schrittmotor starten und stoppen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Z.B. Max Z. (rey)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe ein Stepper Motor 1PC mit meinem Arduino verbunden und möchte 
das, wenn ich ein Taster drücke, soll der Motor laufen und wenn ich den 
2. Taster drücke soll der Motor in die andere Richtung laufen.
Er dreht sich nur im Uhrzeigersinn aber wenn ich den 2. Taster drücke 
passiert nichts.
Außerdem, wie bestimme ich wie lange er drehen soll?

#include <Stepper.h>
int TasterSlot=7;
int TasterDruck = 0;

int TasterSlot2=6;
int TasterDruck2=0;

const int stepsPerRevolution = 1500;  // change this to fit the number 
of steps per revolution
Stepper myStepper(stepsPerRevolution, 8, 10, 9, 11);// initialize the 
stepper library on pins 8 through 11:

void setup() {
  pinMode(TasterSlot, INPUT);


  myStepper.setSpeed(20); // set the speed at 20 rpm:
  Serial.begin(9600); // initialize the serial port:
}

void loop() {
TasterDruck = digitalRead(TasterSlot);
TasterDruck2=digitalRead(TasterSlot);

if (TasterDruck==HIGH){

  // step one revolution  in one direction:
  Serial.println("clockwise");
  myStepper.step(stepsPerRevolution);
  myStepper.step(5);


}
if(TasterDruck2 == HIGH) {
  Serial.println("counterclockwise");
  myStepper.step(-stepsPerRevolution);
  myStepper.step(5);

  }
}

Autor: Timmo H. (masterfx)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Z.B. Max Z. schrieb:
> TasterDruck2=digitalRead(TasterSlot);

TasterDruck2=digitalRead(TasterSlot2);

Autor: Z.B. Max Z. (rey)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke sehr ... ich fühle mich grade recht dumm :D

Und wie programmiere ich das er nur einen bestimmten Weg drehen soll?

MfG
rey

Autor: Timmo H. (masterfx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Anzahl der Revs speichern die du bereits zurück gelegt hast, und bei 
deuner gewünschten Anzahl stoppen bzw. nicht weitere Befehle ausführen

: Bearbeitet durch User
Autor: Z.B. Max Z. (rey)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Hab mich einbisschen umgeschaut und habe nicht gefunden wie man das so 
richtig macht.
Könntest du mir dabei helfen?

MfG

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.