-         

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

Thema: (Unter-)Projekt Schrittmotor-Controller

  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.07.2007
    Alter
    53
    Beiträge
    1.080

    (Unter-)Projekt Schrittmotor-Controller

    Anzeige

    Da ich Schrittmotoren u.a. auch für Marvin einsetzen möchte, habe ich ein Controllersystem entwickelt. Rahmenbedingungen für diese Entwicklung waren folgende:

    - Die Stepperansteuerung muss preiswert sein, da viele Controller hergestellt werden müssen.
    - Die Controller müssen leicht sein, da Marvin die Controller im Körper bzw. auf den Beinen zu sitzen hat, also keine schweren Kühlkörper.
    - Die Ansteuerung der Controller darf keinen hohen Traffic auf dem Datenbus hervorrufen
    - Die Controller müssen mit Marvins Datenbus ansprechbar sein
    - Die Controller müssen in Hard und Software identisch sein um die Herstellung und Wartung zu erleichtern
    - Die Controller müssen bis 1A liefern können.
    - Für Mechaniken in denen mehrere Schrittmotoren für eine Bewegung zuständig sind, müssen die Steppermotoren absolut synchron betrieben werden können.
    - Die Controller müssen die Motoren mit variabler Leistung ansteuern können.

    Meine Lösung:
    Ein Interface-Controller zwischen Marvins Bussystem und dem Stepperbus wandelt Marvins Befehle in Steuerbefehle für die einzelnen Schrittmotorcontroller um.
    Die einzelnen Schrittmotor-Einheiten unterscheiden sich nur durch eine Geräteadresse im EEPROM.
    Komplexe Bewegungsabläufe werden vom Interface-Controller nacheinander zu den einzelnen Schrittmotor-Controllern geschickt und in einem Ringbuffer abgelegt. Diese Daten bestehen aus einer Zielposition, der Zeit in der diese Position zu erreichen ist und der Stromstärke für den Schrittmotor in dieser Bewegungsphase.
    Nachdem alle Daten übertragen wurden (was ja nicht auf Marvins Bus sondern getrennt auf dem Stepperbus in hoher Geschwindigkeit erfolgen kann), wird die komplette Befehlssequenz (bis zu 128 Einzelbewegungen je Motor) auf ein Befehl des Interface-Controllers hin ausgeführt.
    Die komplette Schrittmotorsteuerung erfolgt durch eine timergesteuerte ISR, welche in Assembler geschrieben wurde. Die Routine zum Datentransfer zwischen den Modulen sind ebenfalls in Assembler. Der Rest ist Basic (Bascom).
    Die Hardware besteht aus je zwei TEA3718 Treiberstufen und einem Atmega644 da ich von diesen DIL-Atmegas noch einige übrig hatte.
    Den Nachteil des größeren Platzbedarf habe ich dadurch ausgeglichen, das ich einiges an Elektronik unter dem Atmega untergebracht habe.

    http://www.youtube.com/watch?v=nUkDDkwh4Ak

    Gruß MeckPommER

    P.S.: mein Schrittmotor-Geschwindigkeitstest -> http://www.youtube.com/watch?v=YAWUDQny_qM
    Mein Hexapod im Detail auf www.vreal.de

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2004
    Ort
    Aschbach
    Alter
    29
    Beiträge
    223
    Sieht net schlecht aus.

    1A Arbeit. Was haben die Schrittmotoren für eine Stellkraft?


    Gruß,
    Sven

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    15.01.2008
    Ort
    Siegen, Germany, Germany
    Beiträge
    441
    hey sehr cool, endlich mal wieder was neues von meinem Lieblings-Hexa-Projekt.

    Bin auch total begeistert von Schrittmotoren und ich verstehe nicht warum man unbedingt Servos nehmen muss, da die doch viel teurer sind. Ok die Ansteuerung mag einfacher sein aber dennoch mit Schrittmotoren hat man viel mehr Möglichkeiten

    Hab noch ein paar Fragen, verwendest du den Standardaufbau, also 2 TEA3718 pro Endstufe? Wie sieht dann die Ansteuerung vom Controller aus? Laut Datenblatt sehe ich da 6 Eingänge.

    Wie warm werden die TEAs bei Volllast? Mit 1A bist du ja noch nicht am Leistungsmaxima von 1,5A.

    Es gibt die TEAs auch in SO-20 Gehäusen, vielleicht sparen die so noch ein wenig Platz.

    @sven
    Die haben 8Ncm
    liebe Grüße
    Der Daniel
    -
    Meine Projektseite:
    http://projects.weber-itam.de

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.07.2007
    Alter
    53
    Beiträge
    1.080
    @sven04: Die Schrittmotoren haben ca. 22Ncm. Nicht viel, aber für meine Zwecke über Getriebe völlig ausreichend.

    @daniel.weber: wenn man gute Schrittmotore nimmt und bedenkt, was die Elektronik drumherum kostet, sind Schrittmotore nicht wirklich billiger, glaube ich Servos sind halt um einiges einfacher in der Anwendung, da man sich über Anfangspositionen etc. keine Gedanken machen muss.
    Ja, ich nehme den Standardaufbau mit 2 TEA3718. Die Ansteuerung erfolgt per 6 Leitungen auf Logik-Niveau und variablem VRef über PWM von Controller.
    Was das Leistungsmaxima angeht ... da fangen die 3718 wohl schon an zu dampfen Maximallast in meiner Schaltung liegt bei 750mA und dann sind die Regler etwas über handwarm.

    Da ich noch am Experimentieren bin, wollte ich die ICs im DIL-Gehäuse verwenden um sie in IC-Sockeln zu betreiben und ggf. auch in späteren veränderten Schaltungen einsetzen zu können.

    Gruß MeckPommER
    Mein Hexapod im Detail auf www.vreal.de

  5. #5
    Erfahrener Benutzer Roboter Experte Avatar von ikarus_177
    Registriert seit
    31.12.2007
    Ort
    Grein
    Alter
    24
    Beiträge
    601
    Hi

    wirklich toll und sauber aufgebaut, meine Hochachtung!

    Möchtest du alle Servos durch Schrittmotoren ersetzen? Das wäre ja ein ziemlicher Hardwareaufwand, wenn ich mir die 18 Reglerkarten vorstelle. Die brauchen ja dann auch einiges an Platz...

    Welche Spannung benötigen denn die Stepper? Bei den 30V aus dem Speedtest - Video bräuchte man schon eine eigene Versorgung, da wirds mit Akkus alleine etwas eng, oder irre ich mich da?

    Viele Grüße
    ikarus_177

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.07.2007
    Alter
    53
    Beiträge
    1.080
    Nein, es werden nicht alle Schrittmotore ersetzt ... mal gucken, bin ja noch in der Entwicklungsphase
    Mit Akkus ist das kein Problem, es wird ein 8s1p LiPo-Akku werden, und Marvin V4 wird ja auch um einiges größer wegen des Platzbedarfs der Mechanik und Elektronik. Die meisten Treiberplatinen verschwinden dann auch in den Beinen.
    Gruß MeckPommER
    Mein Hexapod im Detail auf www.vreal.de

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    15.01.2008
    Ort
    Siegen, Germany, Germany
    Beiträge
    441
    wie muss so eine Ansteuerung vom Controller aussehen? ist das ein 6Bit Muster oder wie kann man sich das vorstellen?
    Das Datenblatt gibt da nicht wirklich auskunft drüber oder ich bin wieder einmal blind
    Woher hast du die Motoren und was haben die gekostet?

    Fragen über Fragen
    liebe Grüße
    Der Daniel
    -
    Meine Projektseite:
    http://projects.weber-itam.de

  8. #8
    Erfahrener Benutzer Roboter Genie Avatar von Bammel
    Registriert seit
    11.12.2004
    Ort
    Bremen
    Alter
    30
    Beiträge
    1.400
    hi... die idee finde ich genial!!!!

    nur wirst du trotzdem ein poti oder ähnliches mit anbringen um die aktuelle position zu erfassen?
    denn wenn du die haltkraft der Stepper überschreitest kann er sehr schnell schritte verlieren. wäre für deine weiteren berechnungen fatal!

    gruß bammel

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.07.2007
    Alter
    53
    Beiträge
    1.080
    @daniel.weber: je Treiberbaustein sind es 2 Bit für die Stromstärke (I0 und I1 im Datenblatt) und ein Bit für die Stromrichtung. Daraus ergibt sich bei 2 Treibern - wie du schon richtig sagst - ein 6-Bit Muster.

    Die Motoren habe ich von der Bucht für ca. 4 Euro/Stück - sind meilenweit besser und stärker als die von Pollin und dabei auch leichter.

    @Bammel: Es wird kein Poti verbaut sondern eine Reflex-Lichtschranke, die an der Welle die Bewegungen der Achse kontrolliert. Schrittverlust wäre in der Tat fatal.

    Gruß MeckPommER
    Mein Hexapod im Detail auf www.vreal.de

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    02.11.2005
    Beiträge
    1.607
    Sieht sehr hübsch aus Aber doch eine riesen Platine ... Was für Busse verwendest du? ATmega als Gateway? Gefällt mir!

    Schrittmotoren sind zwar Cool, brauchen aber mehr Platz als Servos (oder sind in der größe sehr teuer 9

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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