-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: Suche nach Stepper-Library

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    18.03.2013
    Beiträge
    235

    Suche nach Stepper-Library

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hallo,

    nachdem ich nun einige Zeit mit 2 Stepper-Libraries experimentiert habe, nämlich "Stepper" der in den Arduino Beispielen vorhanden ist, und "CustomStepper".

    Nachteile der Ersten:
    - stoppt den Programmablauf in der Zeit, in der der Motor laufen soll. Ok kann man insbesondere bei Motoren mit integriertem Getriebe kurz halten.
    - es ist zwar ein Quasi-Gleichzeitbetrieb von 2 oder mehreren Motoren möglich, aber nur immer mit einer, der kleinsten Speed.
    - Strom wird bei Stillstand nicht abgeschaltet. Mag für ein Haltemoment manchmal nötig sein.

    Nachteile der Zweiten:
    - hohe Empfindlichkeit bei Zeitproblemen (kein delay, nicht zu schnelle Ausgabe mit Serial.print). Ich weiß, delay sollte man auch nicht verwenden!!
    - beeinflusst offensichtlich auch andere Timer

    Das ist sicher kein vollständiges Bild der beiden Libraries.

    Nun 2 Fragen:
    - gibt es für den Stepper doch eine Möglichkeit des gleichzeitigen Betriebs von 2 oder mehr Motoren mit unterschiedlichen Speeds?

    - Gibt es eine andere Library für einen Stepperantrieb, die diese Nachteile nicht hat und bei der man evtl. einen Drehwinkel vorgeben kann?

    Gruß
    fredyxx

  2. #2
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.970
    Hallo!

    Zitat Zitat von fredyxx Beitrag anzeigen
    - gibt es für den Stepper doch eine Möglichkeit des gleichzeitigen Betriebs von 2 oder mehr Motoren mit unterschiedlichen Speeds?
    ja, wenn jeder Motor eigenen Controller hat.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    18.03.2013
    Beiträge
    235
    Zitat Zitat von PICture Beitrag anzeigen
    Hallo!

    ja, wenn jeder Motor eigenen Controller hat.
    Meinst du das damit oder die Hardware?

    Code:
    #include <Stepper.h>
    
    const int stepsPerRevolution = 2048;  // mit 2048 macht der 28BYJ-48 genau eine Umdrehung.
    // for your motor
    
    // initialize the Stepper library on pins 22 through 28:
    Stepper myStepper(stepsPerRevolution, 22, 26, 24, 28);
    Stepper Stepper2(stepsPerRevolution, 32, 36, 34, 38);
    Das habe ich ja versucht und die o.g. Einschränkungen festgestellt.

    Gruß fredyxx

  4. #4
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.970
    Ich meine beides. Das kann für jeden Motor gleich aber ganz unabhängig voneinander sein.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  5. #5
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    18.03.2013
    Beiträge
    235
    Mit diesem Code laufen die Motore quasi gleichzeitig, aber beide mit derselben langsamen Geschwindigkeit.

    Code:
    #include <Stepper.h>
    
    const int stepsPerRevolution = 2048;  // mit 2048 macht der 28BYJ-48 genau eine Umdrehung.
    
    // initialize the Stepper library on pins 22 through 28:
    Stepper myStepper(stepsPerRevolution, 22, 26, 24, 28);  // keine saubere Reihenfolge, aber läuft nur so !
    Stepper Stepper2(stepsPerRevolution, 32, 36, 34, 38);
    
    void setup() {
      Serial.begin(250000);
      while (!Serial);
    
      myStepper.setSpeed(16);
      Stepper2.setSpeed(6);
    }
    
    void loop() {
    
    
        myStepper.step(1);     // während der läuft, stoppt der Programmablauf an dieser Stelle
                                       // mit step(1) läuft der Motor fast kontnuierlich
      
    
        Stepper2.step(1);         // während der läuft, stoppt der Programmablauf an dieser Stelle
                                        // mit step(1) läuft der Motor fast kontnuierlich
     
     unsigned long millialt =micros();
    
        Serial.print("Zeit = ");                   // die Programmlaufzeit bei diesem Programm ist ca. 80 us
        Serial.println(micros() - millialt);
     
    
    }   // ***************ENDE loop
    Gruß
    fredyxx

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    49
    Beiträge
    2.442
    Bei der Marlin Firmware für 3D-Drucker funktioniert es.
    Da dort die Motordrehzahlen für X, Y, Z und den Filamentvorschub spätestens bei Kreisbahnen, aktivem Bead leveling und Filamentdurchmesser abhängigem Vorschub ständig variieren und sich zueinander andern wärend sie kontinuierlich laufen.

    Allerdings dürfte es nicht ganz einfach sein da soweit einzusteigen um deren Stepper Steuerung für was eigenes zu extrahieren.
    Beim Ramps 1.4 macht das Marlin mit bis zu 5 Steppern.
    beim RAPS128 mit bis zu 6 Steppern. ( Korrektur: hier ist eigentlich das RADDS1.5 für den Due gemeint auf dem die RAPS128 als Treiber sitzen)
    Geändert von i_make_it (01.06.2016 um 08:24 Uhr)

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    18.03.2013
    Beiträge
    235
    Hallo,
    ich sehe das Problem ja auch nicht bei den Motoren, wenn jeder Motor einen eigenen Treber hat, sondern darin, das mit der Arduino Software zu realisieren.

    Gruß
    fredyxx

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    49
    Beiträge
    2.442
    Marlin läuft auf Arduino (ist eine .ino).
    Ramps1.4 ist ein Shield für einen Mega.

    Oben hatte ich mich vertan.
    RAPS128 ist der Motortreiber der beim RADDS Board benutzt wird (das meinte ich eigentlich) was wiederum ein Shield für einen Due ist.

  9. #9
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.970
    Zitat Zitat von fredyxx Beitrag anzeigen
    ... ich sehe das Problem ja auch nicht bei den Motoren, wenn jeder Motor einen eigenen Treber hat, sondern darin, das mit der Arduino Software zu realisieren.
    Ich sehe kein Problem, wenn jeder Motor auch eigenen kleinen Controller (z.B. AVR Tiny) hat, der von Arduino erhaltene Parameter passend für den eigenen Treiber verarbeitet.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  10. #10
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    18.03.2013
    Beiträge
    235
    Zitat Zitat von PICture Beitrag anzeigen
    Ich sehe kein Problem, wenn jeder Motor auch eigenen kleinen Controller (z.B. AVR Tiny) hat, der von Arduino erhaltene Parameter passend für den eigenen Treiber verarbeitet.
    Irgendwie verstehe ich das nicht.

    Soll die Hardware dann so aussehen?

    Arduino MEGA >> ATTINY 13A-PU >> Driver ULN2003 >> Stepper 28BYJ-48

    Der ATTINY bekommt vom MEGA z.B Umdrehungen, Geschwindigkeit und Richtung. Rest erledigt der ATTINY ?

    Dann habe ich natürlich weiter Fragen.

    Wie kommunizieren MEGA und ATTINY ?
    Wie bekommt der ATTINY ein Programm?

    Gruß
    fredyxx

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Eagle Suche SMD LED Library
    Von tucow im Forum Konstruktion/CAD/Sketchup und Platinenlayout Eagle & Fritzing u.a.
    Antworten: 1
    Letzter Beitrag: 05.10.2014, 13:50
  2. Suche Datenblatt für Stepper KP42JM2-501
    Von Stefan0985 im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 0
    Letzter Beitrag: 22.01.2010, 15:06
  3. Suche ein Board +Display +Treiber fuer zwei Stepper
    Von S3bast1an im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 1
    Letzter Beitrag: 04.04.2008, 22:17
  4. Suche Stepper!
    Von Mc_Loyd im Forum Motoren
    Antworten: 6
    Letzter Beitrag: 14.03.2006, 22:31
  5. Suche Anschlussdaten zu Stepper
    Von robo_wolf im Forum Motoren
    Antworten: 11
    Letzter Beitrag: 16.02.2006, 22:54

Berechtigungen

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