-
        

Ergebnis 1 bis 5 von 5

Thema: Was fehlt hier? (Schrittmotorsteuerung)

  1. #1

    Frage Was fehlt hier? (Schrittmotorsteuerung)

    Anzeige

    Moin Moin
    Ich bin Filme Macher und neu auf dem Gebiet
    ich möchte eine Kamera für eine Zeitrafferaufnahme mit einem Schrittmotor so langsam wie möglich drehen
    ich habe mir diesen hier gekauft http://www.ebay.de/itm/2in1-DC-5V-St...item3ccf1584a9
    und dazu ein adruino uno
    ich möchte ihn mit dem unten angegebenen Programmcode steuern, wenn ich ihn anschalte beginnt er auch zu vibrieren dreht sich aber, egal was ich eingebe nicht! weiß jemand was fehlt? oder gibt es irgendjemanden der den code vervollständigen kann?
    der Code stammt von
    http://www.geeetech.com/wiki/index.p...rd_for_Arduino

    Viele Grüße und schon mal vielen dank

    Marc


    int Pin0 = 10;
    int Pin1 = 11;
    int Pin2 = 12;
    int Pin3 = 13;
    int _step = 0;
    boolean dir = true;// gre
    void setup()
    {
    pinMode(Pin0, OUTPUT);
    pinMode(Pin1, OUTPUT);
    pinMode(Pin2, OUTPUT);
    pinMode(Pin3, OUTPUT);
    }
    void loop()
    {
    switch(_step){
    case 0:
    digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, HIGH);
    break;
    case 1:
    digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, HIGH);
    digitalWrite(Pin3, HIGH);
    break;
    case 2:
    digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, HIGH);
    digitalWrite(Pin3, LOW);
    break;
    case 3:
    digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, HIGH);
    digitalWrite(Pin2, HIGH);
    digitalWrite(Pin3, LOW);
    break;
    case 4:
    digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, HIGH);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, LOW);
    break;
    case 5:
    digitalWrite(Pin0, HIGH);
    digitalWrite(Pin1, HIGH);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, LOW);
    break;
    case 6:
    digitalWrite(Pin0, HIGH);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, LOW);
    break;
    case 7:
    digitalWrite(Pin0, HIGH);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, HIGH);
    break;
    default:
    digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, LOW);
    break;
    }
    if(dir){
    _step++;
    }else{
    _step--;
    }
    if(_step>7){
    _step=0;
    }
    if(_step<0){
    _step=7;
    }
    delay(1);
    }

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Geistesblitz
    Registriert seit
    16.03.2011
    Ort
    Dresden
    Alter
    30
    Beiträge
    1.937
    Hast du die Pins denn auch in der richtigen Reihenfolge angeschlossen? Wenn da ein paar Pins vertauscht sind, dann kann da auch nichts sinnvolles herauskommen. Wie genau du die einstecken musst, das musst du aber selber herausfinden.

  3. #3
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485
    Bist du sicher, dass du nur rund 1ms warten solltest? Dann müsstest du in 7ms eine Umdrehung gemacht haben -> 142 U/s => ~8500 U/min
    Ich denke nicht, dass das deine gewünschte Drehzahl ist

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Geistesblitz
    Registriert seit
    16.03.2011
    Ort
    Dresden
    Alter
    30
    Beiträge
    1.937
    Stimmt nicht ganz, dann macht er in 8ms eine elektrische Umdrehung, also 4 Vollschritte. Bei 64 Schritten pro Umdrehung wäre das also 128ms für eine Umdrehung, womit man dann eine Drehzahl von ~469 U/min erhält (bzw. 7,3 U/min hinter dem Getriebe). Sollte also eigentlich im Rahmen liegen. Ich frag mich nur, warum die Schaltfolge für den Schrittmotortreiber vom µC generiert werden soll, denn für diese Aufgabe gibts doch auch schon fertige ICs (zB. den L297). Aber wenn der µC nicht so viel anderes machen braucht ist es durchaus gerechtfertigt, sich das Geld so für ein zusätzliches Bauteil zu sparen.

  5. #5
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485
    Ok, dann hab ich das falsch verstaden...

Ähnliche Themen

  1. C-Compiler, Warning fehlt ?
    Von Siro im Forum C - Programmierung (GCC u.a.)
    Antworten: 5
    Letzter Beitrag: 21.07.2011, 16:06
  2. Was hier so noch fehlt...
    Von nitro32 im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 3
    Letzter Beitrag: 09.09.2008, 09:10
  3. Widerstand fehlt!
    Von Matthias15 im Forum Elektronik
    Antworten: 4
    Letzter Beitrag: 12.07.2008, 00:41
  4. Widerstand fehlt - -_-
    Von Neo van Matix im Forum Asuro
    Antworten: 6
    Letzter Beitrag: 11.12.2007, 02:00
  5. ATMEGA64L fehlt Firmware
    Von ähM_Key im Forum AVR Hardwarethemen
    Antworten: 0
    Letzter Beitrag: 28.06.2005, 16:25

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •