Hallo,
kennt jemand ein Schrittmotortreiber IC (möglichst TSSOP oder ähnlich)
welches bis zu 256 microsteps auflöst, mind. 1A über interne MOSFETs
treibt und über ein parallel Interface (step, direction) angesteuert
werden kann? Ich habe nur die Treiber von Trinamic (TMC260 and
TMC261)gefunden aber die müssen immer noch über SPI konfiguriert werden.
Ich suche eher was einfacheres vergleichbar mit Allegro A3979, nur eben
höherer Microschrittauflösung.
Gruß
Chris
>Ich suche eher was einfacheres vergleichbar mit Allegro A3979,
Da bin ich mir sicher, dass es soetwas nicht geben wird. 256
Mikroschritte passen nicht zu billigen, einfachen Standardanwendungen.
Entwickler schrieb:> 256 Mikroschritte passen nicht zu billigen Standardanwendungen.
Das muß ja auch der Schrittmotor mechanisch erst mal wirklich können.
Es bringt ja nichts, wenn bei einem 1,8° Stepper die ersten 200 Schritte
1° ausmachen und die restlichen 56 dann noch 0,8°... :-o
Schneemann schrieb:> Wozu überhaupt noch Schrittmotoren, wenn mit entsprechenden Sensoren und> Regelung normale DC Motoren dieselbe oder bessere Positionierung> erlauben?
Schau Dir mal die Preise für Industrie Drehgeber an! Außerdem ist die
Ermittlung der Regelparameter (PID) im System nötig.
@Chris:
Ein Schrittmotortreiber mit 256 Schritten ist mir nicht bekannt. Bei der
Auflösung bräuchtest Du wohl eine analoge Stromregelung(kein Chopper)
mit Stromsensor direkt im Motorstromkreis. 64 µSchritte sind eigentlich
schon das Ende der Fahnenstange, einen entsprechenden Motor (z.B.
Scheibenläufer) und diskrete Treiber vorausgesetzt. Mit der üblichen
Spitzenwert Regelung (Ausnahme: L6258EX) in den Schrittmotortreiber IC's
sind mehr als 8-16 µSchritte schon illusorisch, auch wenn die Marketing
Leute was anderes behaupten.
Wenn Du wirklich so eine hohe Auflösung brauchst, und nicht selber so
ein Marketingfuzzi bist, bietet sich ein Getriebe an. Den
Geschwindigkeitsverlust dann durch eine höhere Betriebsspannung
ausgleichen. Wenn es spielfrei sein soll nimm ein Harmonic-Drive
Getriebe. Das wird dann allerdings so Teuer, dass ein Servomotor
billiger kommen würde.
@Daniel
Hallo und danke für die Antwort. Treiber mit 256 Mikroschritten gibt es
durchaus. Kocomotion bietet hier Lösungen (nur leider zu groß) und eben
die zuvor erwähnten IC's von Trinamic. Es geht bei der Auflösung auch
gar nicht um Positioniergenauigkeit bzw. darum immer äquidistante
Schritte zu fahren. Wir haben aber die Erfahrung gemacht, dass Antriebe
mit höherer Schrittauflösung einfach ruhiger und harmonischer laufen.
Getriebe sind natürlich auch eine Lösung, haben aber auch so ihre
Nachteile. Kosten, Platz, Reibungsverluste etc.
Chris schrieb:> Wir haben aber die Erfahrung gemacht, dass Antriebe> mit höherer Schrittauflösung einfach ruhiger und harmonischer laufen.
Erstmal ja, aber auch noch bei mehr als 32 Microschritten?
Bringt das wirklich noch was?
32 kann ich nicht sagen aber wir sind bei einigen Anwendungen 16 auf 256
gegangen und hatten deutliche Verbesserungen in puncto Laufruhe. Ob wir
mit 32 Microschritten ähnliche Ergebnisse gehabt hätten vermag ich nicht
zu beurteilen. Hängt ja auch stark von der Mechanik ab.
Chris schrieb:> Hallo und danke für die Antwort. Treiber mit 256 Mikroschritten gibt es> durchaus. Kocomotion bietet hier Lösungen...
Naja, genau das meinte ich mit dem Marketing. Die Stromvorgabe wird wohl
mit einem 8-Bit DAC gemacht, das macht aber noch lange nicht 256
µSchritte. So gesehen kann man einem TMC246 mit einem 16-Bit DAC
betreiben und hat 65536 µSchritte ;-)
Der unruhige Lauf mit dem ursprünglichen Treiber kann viele Ursachen
haben: schlechter Treiberbaustein, unpassendes Verhältnis Chopper
Frequenz zum Stepper-Takt oder zur Netzteilfrequenz, usw.
Daniel Heydemann schrieb:> Der unruhige Lauf mit dem ursprünglichen Treiber kann viele Ursachen> haben: schlechter Treiberbaustein, unpassendes Verhältnis Chopper> Frequenz zum Stepper-Takt oder zur Netzteilfrequenz, usw.
Ja, da gebe ich dir durchaus Recht. Aber ich bin nur das ausführende
Organ am Ende der Befehlskette, und wenn von oben 256 Microschritte
gewünscht sind, egal ob echt oder pseudo und aller Gegenargumente zum
Trotz, versuche ich das umzusetzen. Ob's letztendlich Sinn macht sei mal
dahin gestellt ;)
Chris schrieb:> Ja, da gebe ich dir durchaus Recht. Aber ich bin nur das ausführende> Organ am Ende der Befehlskette, und wenn von oben 256 Microschritte> gewünscht sind, egal ob echt oder pseudo und aller Gegenargumente zum> Trotz, versuche ich das umzusetzen. Ob's letztendlich Sinn macht sei mal> dahin gestellt ;)
Ach, immer diese Vorgesetzten :-(
Dann bleibt ja nur noch selber einen 8-Bit DAC zu nehmen, und, wenn auch
auf Step & Dir Eingänge bestanden wird, einen kleinen µC dazu zu
spendieren. Statt des DAC's vielleicht PWM von eben diesen kleinen µC
nehmen. Mit klein meine ich die Gehäuseform. Such Dir also den kleinsten
µC aus der Controller-Familie die Du beherrscht, bzw. von den Chefs
erlaubt ist, und schalte ihn vor einen Treiberbaustein, der externe
Stromvorgabe erlaubt. Dann hast Du auch eine größere Wahl bei den
Treibern. Einen IS mit der Auflösung und Step & Dir gibt es definitiv
nicht (Module schon). Viel Erfolg ;-)
Dann ist aber zu überlegen, ob man nicht statt 8 Bit etwas mehr
für den Wandler spendiert.
Die 256 microsteps sollten ja nicht zu 256 linear verteilten
Stufen beim "Gasgeben" führen, sondern in 256 Schritten einen
sin-/cos-Bogen abfahren, wenn ich das richtig im Kopf habe.
Vielleicht war ja auch das der Fehler, daß er bisher rauh lief.
8 bits ? Kaum. Für 256 Mikroschritte braucht man wie Klaus richtig
ermittelt Werte von 0, 0.02454, 0.04906, ... 0.99969, 1,
also eine Auflösung der einzustellenden Phasenstroms von 12 bit.
Man schau sich mal die Stromdiagramme des TB6560 an der 64 Mikroschritte
(also 16 pro 90 Grad) macht.
http://www.toshiba-components.com/motorcontrol/pdfs/TB6560AHQ_AFG_E_2003_20080407.pdf
>Dann ist aber zu überlegen, ob man nicht statt 8 Bit etwas mehr>für den Wandler spendiert.
Aber auch das führt nur zu einer Lösung auf dem Papier.
Bei einer typischen minimalen Einschaltzeit der Stromregelung von 1µs
und einer Taktfrequenz - sagen wir 30kHz - bleibt keine Luft, kleine
Ströme genau einzustellen. Hat der Motor z.B. Spulendaten 2,5V@1A, so
ist bei 24V Betrieb und kleiner Drehzahl der Strom nicht 'klein zu
kriegen'.
Hinzu kommt das Rastmoment der Motors.
Dämpfen kann man die Geräusche mechanisch (elastische Befestigung,
Schwungmasse) oder auch durch eine von der Drehzahl abhängige
Versorgungsspannung des Treibers: kleine Drehzahl -> kleine Spannung.
Entwickler schrieb:> Aber auch das führt nur zu einer Lösung auf dem Papier.
Da gebe ich dir vollkommen recht.
Ich glaube auch nicht, daß 8 oder 12 Bit noch irgendwelche Probleme
lösen.
Aber anhand der Situation braucht man wohl die 256 Schritte, wenn
auch nur auf dem Papier.
Und 256 Schritte mit 8 Bit sind halt schon auf dem Papier falsch :-)
In der Situation muß man sich entschieden, ob man die Vorgabe
offen angeht und für Blödsinn erklärt, oder die Vorgabe
wieder besseren Wissens umsetzt.
Mit den 8 Bit setzt man sie aber nicht um, weil es nicht die 256
Schritte ergibt. Und damit hat man gegen die Vorgabe gehandelt
und macht sich angreifbar.
Klaus hat da absolut Recht, wenn man von Gleich-verteilten Schritten
ausgeht. Deswegen haben die DAC's in den Allegro Teilen auch einen
"Sinus- Gewichteten", non linearen Verlauf. Die Trinamic Teile machen
hingegen mit einem Standard 4 Bit DAC 16 µSchritte. Die sind dann
natürlich nicht mehr "richtig" Verteilt... Aber diese hohe Auflösung
(um den Scheitelpunkt des Sinusgraphen) bekommt man, wie Entwickler
richtig schrieb, mit dieser Art der Stromregelung sowieso nicht hin.
Nachtrag: Sie sind nicht nur nicht "richtig Verteilt", sondern das
Drehmoment bleibt auch nicht gleich.