Wieso erscheint der Hinweis erledigt? Was war da bitte falsch?
Hi,
ich möchte sehr viele Schrittmotoren seriell (evtl. später paralell) ansteuern. Ich benötige eure Hilfe zuerst im Konzept, ob hier meine Vision umsetzbar ist oder alternative Vorschläge.
Die Motoren werde ich bei Pollin günstig erwerben. (Bipolarer 4-phasen Schrittmotor mit 7,5° Schrittwinkel, Betriebsspannung max. 10 V, Strangwiderstand 65 Ω)
Nun kann ich entweder mit einen Treiber und eine Art "Multiplexer"(Schalter) arbeiten, einen Treiber finden der 600 Motoren bedienen kann oder 600 Treiber kaufen.
Aufbau: Ein PC soll mir die Schrittmotorposition (ca. 5 feste Postitionen) und die Adresse des betreffenden Motors (z.B. A1) ausgeben. Über ein Arduinoboard werden die Daten in Adresse und Takte der Motoren gewandelt. Der µC bedient nun einen Treiber und den Multiplexer. Der Treiberausgang geht nun ebenfalls zum Multiplexer. Anschließend wird Motor A1 in Position gefahren, der Schrittmotor benötigt im Ruhezustand kein Haltemoment und der nächste Schrittmotor A2 ist an der Reihe.
Ist die Schaltervariante umsetzbar und die günstigste?
Kann ich die Leistung vom Treiberausgang über den Umschalter laufen lassen?
Welche Bauteile benötige ich für den Umschalter?
Nun bin ich gespannt
Wieso erscheint der Hinweis erledigt? Was war da bitte falsch?
also helfen kann ich dir leider nicht, mich würde nur interessieren für was man 600 Schrittmotoren braucht ?
Ich kenne keinen Multiplexer der min. 200mA schalten kann.
Bei 600 brauchst du schon einen 10bit Adressbus. Alleine das Adressen dekodieren ist schon ein riesen Aufwand.
Eine Möglichkeit wären zu jedem Motor ein Relais mit vier Arbeitskontakte. Über die schaltest du den Motortreiber durch.
Woher weißt du auf welcher Position die Motoren stehen, du solltest dir darüber auch Gedanken machen.
Ich würde das in Gruppen machen. Jede Gruppe bekommt einen µC. Also z.B. 5 Motoren => 1 µC. Dadurch brauchst du nur noch einen Bus für die Übertragung. Je nach Distanz würde ich I2C/SPI für kurze Distanzen oder CAN/RS485 eventuell auch Ethernet für längere Distanzen nehmen. Eventuell würde auch Funk funktionieren (z.B. mit den RFM01, 02 bzw 12 Modulen bei Pollin). Es gibt auch Motortreiber die SPI und Ähnliche Busse unterstützen (z.B. TMC 26x Serie von Trinamics => SPI bzw Schritt/Richtungssignal).
Wenn du Gruppen von Motoren bildest könntest du einen HauptµC einsetzen der die Positionen an der einzelnen Motoren an den Gruppencontroller sendet. Die Positionierung übernimmt dann der Gruppencontroller.
MfG Hannes
600 Motoren sind wirklich eine Menge. Da wirst du mit Aufbau, Verdrahtung und Test eine Menge Arbeit haben. Umschaltung hinter dem Treiber (per Relais oder Multiplexer) funktioniert nur, wenn du den Treiber vorher komplett abschalten kannst. Und auch dann ist das nicht ohne, weil du zusätzliche Induktivität und Kapazität an den Ausgang des Treibers hängst. Ich würde jedem Motor einen Treiber spendieren. Wenn du was günstiges nimmst (z.B. A3979), ist das kaum teurer als ein Relais.
Der Vorschlag von Hannes ist schon nicht schlecht, allerdings würde ich pro uC eher 8 oder 16 Motoren bzw. Motortreiber ansteuern und versuchen, dass alles auf eine Platine zu bekommen. Dann musst du immernoch 38 bzw. 75 Platinen aufbauen (und uCs flashen).
Falls das ein kommerzielles Projekt ist und du Hilfe brauchst, melde dich bei Bedarf per Mail...
Mit freundlichen Grüßen
Thorsten Ostermann
Wenn man einen RS485 Bus macht wäre das auch einfach zu realisieren.
Ein Tiny2313, MAX485 und zwei L293B mit Platine und Hühnerfutter werden auf etwa €8.- kommen. Das für zwei Motoren.
Dazu kommt dann noch die Stromversorgung und der Arduino als Master. Für Elektronik und Stromversorgung also etwa €2000.- .
Dann noch die Kosten für die Motoren, Verkabelung und was sonst noch anfällt.
Ich kann mit nicht vorstellen das das ein Projekt für den Dachboden ist, aber sicher machbar.
So wie Thorsten (Ostermann) geschrieben würden auch mehrere Schrittmotoren funktionieren. Je nachdem wie gut der Controller programmiert ist und wieviele Schrittmotoren dieser schafft (abhängig von Takt, Hardware,...).
MfG Hannes
Lesezeichen