Hallo, ich möchte mir preislich günstige Motorsteuerung für Schrittmotoren (2phasen, bipolar) basteln, die ein vernünftiges Microstepping umsetzt. Vorweg: Ich habe zuvor noch nicht praktisch mit Schrittmotoren gearbeitet, aber einiges an theoretischem Wissen angelesen. Ich hätte eine Idee, wie ich da etwas zusammenfummeln könnte. Bevor ich jetzt aber Bauteile einkaufe und damit gleich im Anschluss noch die teuren Schrittmotoren abfackle, wollte ich hier mal nachfragen, ob das so funktionieren kann... und zwar: Ich wollte als Schrittmotortreiber den L6219 verwenden und den über einen µC ansteuern (Hauptaufgabe). Ja, der L6219 soll (laut einem anderen Thread) nicht so gut für Microstepping geeignet sein, aber ich hab da eine Idee, die an der Vorgabe des Datenblatts vorbei geht. Das hier ist die Schaltung des Datenblatts: http://circuits.datasheetdir.com/391/L6219-circuits.jpg Wenn ich das richtig verstanden habe, muss man für "optimale" Mikroschrittelung die Stromstärke in den 2 Windungen so steuern, dass diese einer Sinus- bzw. Cosinus-Funktion mit entsprechender Frequenz folgen. Laut Datenblatt soll man dafür die Eingänge I01-I11 und Ph1/2 verwenden, was ich für zu "grob" empfinde, da man pro Windung nur jeweils Fließrichtung und 0, 33%, 66% und 100% (2 bit + sign bit) Stromstärke einstellen kann. Die Frage ist, wie schnell und sauber der IC hier auf Wechsel der I01-I11 Eingänge reagiert und ob man hier sinnvoll mit Pulsweitenmodulation arbeiten kann. Meine Überlegung ist, ob man stattdessen die I01-I11 auf HIGH lässt (100% der max. Stromstärke nutzen) und dann die max. Stromstärke über Pulsweitenmodulation an den Referenz-Spannungs-Eingängen moduliert. Die Stromrichtung würde über Ph1 und Ph2 hin und her geschalten. Damit spart man sich auch 2 IO-Pins... Vereinfacht würde das so aussehen: f = Schritt-Frequenz [in Hz] t = Zeit [in s] a = sin(f*2*PI*t); b = cos(f*2*PI*t); Vref1 = abs(a); Ph1 = a > 0 ? 1 : 0; Vref2 = abs(b); Ph2 = b > 0 ? 1 : 0; Die Pulsweitenmodulation muss natürlich ausreichend schnell sein (Mikroschrittzahl * Vollschritte pro Sekunde). Wahrscheinlich ist es sinnvoll die Eingangsspannung für Vref1 und Vref2 noch etwas mit einem Kondensator zu glätten... aber vom Prinzip her sollte doch der Motor-Treiber-IC dann die Stromstärke entsprechend regeln, oder? Meine Fragen: 1. Was haltet ihr davon? Hat das Chancen? 2. Die Angabe im Datenblatt vom Schrittmotor für den maximalen Phasenstrom (z.B. 0.4A pro Phase) ist doch die Dauerstrombelastung, richtig? Dabei spielt doch die thermische Belastung die Hauptrolle, welche laut meinen Infos quadratisch mit der Stromstärke steigt. Das hieße, dass ich die Stromstärke eigentlich auch kurzzeitig höher jagen kann, solange ich durchschnittliche thermische Belastung (im Zeitraum von Millisekunden) entsprechend unter dem Equivalent der Dauerlastgrenze (hier 0.4A) halte. Das entspräche bei einer Sinuskurve einer Amplitude von ca. 141% Dauerlast bzw. ~0.565A; Entsprechend wäre das erzeugte Drehmoment 41% höher (weil linearer Zusammenhang von Stromstärke und Drehmoment). Ist das soweit richtig? Danke fürs Lesen und für deine Meinung/Kritik... Grüße Stefan
Erstens muss der Motor fuer Mikroschritt gebaut sein. Denn wenn das Rastmoment zu hoch ist, ist nichts. Es ist unwahrscheinlich, dass das Drehmoment am oberen ende der Spezifikation linear zum Strom ist
Zwei von Drei schrieb: > Erstens muss der Motor fuer Mikroschritt gebaut sein. Denn wenn das > Rastmoment zu hoch ist, ist nichts. Ich hatte an diesen Motor gedacht: http://www.pollin.de/shop/downloads/D310453D.PDF Wenn ich das richtig sehe: Rastmoment: 2.2 N.cm Haltemoment: 38 N.cm Drehmoment im Halbschrittbetrieb mit niedriger Drehzahl etwa 22 N.cm. Wäre so ein Schrittmotor geeignet? Und: Es geht mir weniger um genauere Positionierung, sondern gleichmäßigeres Drehmoment und Laufruhe. > Es ist unwahrscheinlich, dass das > Drehmoment am oberen ende der Spezifikation linear zum Strom ist Gibt's für sowas typische Kennlinien? Prinzipiell sollte da doch aber ein direkter physikalischer Zusammenhang (Lorentzkraft oder sowas) bestehen. Zumindest bei niedrigen Drehzahlen. Aber natürlich sieht das bei höheren Drehzahlen anders aus (war das mit Ende der Spezifikation gemeint?), weil dann Reibungsverluste mit quadratisch oder gar kubisch in die Energie-Umwandlungs-Gleichung eingehen. Die maximale Drehzahl wird natürlich nicht 41% höher, aber das wirkende Drehmoment bei gleicher Drehzahl sollte bei höherer Stromstärke höher werden. Es sei denn Windungen fangen an sich arg zu erwärmen und der Widerstand der Windungen steigt, was dann zu einer verstärkten Umwandlung von Energie in Wärme führen würde... Wenn aber das Limit 41% höher liegt, sind wir zumindest mal erst bei ~70% der möglichen Leistung. D.h. eine merkliche Leistungssteigerung ist sicher drin... Hätte ich das dann so richtig verstanden, oder gibts da noch andere Effekte, die mir entgangen sind?
Warum nimmst du nicht gleich eine SM-Treiber, der Mikroschrittbetrieb vernünftig macht und den Phasenübersetzer gleich mit drin hat, z.B. den A3967
Michael A. schrieb: > Warum nimmst du nicht gleich eine SM-Treiber, der Mikroschrittbetrieb > vernünftig macht und den Phasenübersetzer gleich mit drin hat, z.B. den > A3967 Da gibt's mehrere Gründe: 1. Beschaffbarkeit: Ich finde die ICs nur bei ebay und dort. Und mit Ort: "China" oder "Hong Kong". Das bedeutet ~2 Wochen Lieferzeit (nix für Ungeduldige und bei Problemen mit der Ware keine Chance); Zudem soll die Schaltung auch später nochmal aufgebaut werden. Wer weiß, wie lange der überhaupt noch verfügbar ist. Ansonsten kommt ab irgend nem Preis auch Zoll hinzu. Bis 20 EUR glaub noch nicht... 2. Es handelt sich um einen SOIC, den ich schlecht auf nen Steckbrett drauf bekomme, um vorab zu testen. Zudem halte ich es für heikel (bei meinen Lötfähigkeiten) so ein Bauteil selbst auf eine Platine zu löten. Klar ich muss irgendwann mal damit anfangen, auch SOICs zu löten, aber ich glaub dann sollt ich erst einmal einen nehmen der nicht gleich 24 pins hat, um auch nen Erfolgserlebnis zu haben. Da konntest Du natürlich nicht ahnen... is aber ein wichtiger Grund für mich. Ich versuch erstmal bei DIP zu bleiben, da kann ich notfalls auch nen Sockelt verlöten und dann den IC reinstopfen. 3. Preis: Als fertiges Board gabs für ~13 EUR (ebay/China). Was eher zu teuer ist; Die aktuelle Schaltung wären Bauteile für 3,18 EUR + Platine (d.h. IC + Bauteile drumherum); Ich brauch davon am Ende 3 Stück, wären also knapp 30 EUR mehr. Würd ich die Arbeitszeit mitrechnen, wäre das billiger, aber ich denke ich will den Preisunterschied nutzen (=kleine Motivation), um es selbst zusammen zu basteln und etwas Erfahrung zu sammeln. Eine Alternative wäre dann auch mit L297/L298 zu arbeiten. Dann ist man beim gleichen Preis (~8 EUR nur für die 2 ICs, glaub ich).
Stefan K. schrieb: > 1. Beschaffbarkeit: Ich finde die ICs nur bei ebay und dort. Und mit > Ort: "China" oder "Hong Kong". Das bedeutet ~2 Wochen Lieferzeit (nix > für Ungeduldige und bei Problemen mit der Ware keine Chance); Zudem soll > die Schaltung auch später nochmal aufgebaut werden. Wer weiß, wie lange > der überhaupt noch verfügbar ist. Ansonsten kommt ab irgend nem Preis > auch Zoll hinzu. Bis 20 EUR glaub noch nicht... Den A3967 gibt's bei jedem vernünftigen Distributor: Digikey, Farnell, RS-Components - nur um mal drei zu nennen. Zoll und 20 EUR ist ein Märchen - das sollte man wissen, nicht glauben. Was bei Auslandsbestellungen über Grenzwert (ca.20Eur) dazu kommt, ist die EUSt. von 19% (entsprechend im Inland der MwSt.). Für Digikey gibt es hier im Marktforum oft Sammelbestellungen, so dass man nur Inlandsporto für einen Brief mit den Bauteilen hat. Stefan K. schrieb: > 2. Es handelt sich um einen SOIC Zur Not gibt's da Adapter, um auf DIL zu kommen. Aber die Beschaltung ist so elementar, dass du auch gleich auf eine Platine gehen kannst. Beispiele gibt's im Netz und das Löten ist bei dem wirklich gut hinzukriegen. Gut Flußmittel dazu und einmal mit der breiten Lötspitze langsam rüber jede Pinreihe rüberziehen. Stefan K. schrieb: > 3. Preis: Als fertiges Board gabs für ~13 EUR (ebay/China). > ... aber ich denke ich will den Preisunterschied nutzen (=kleine > Motivation), um es selbst zusammen zu basteln und etwas Erfahrung zu > sammeln. Die Analogsteuerung der Referenz für jeden einzelnen Motorschritt ist schon Extraaufwand. Funktionieren wird das IMHO schon, aber ob das lohnt. Viel Erfolg
> Den A3967 gibt's bei jedem vernünftigen Distributor: > Digikey, Farnell, RS-Components - nur um mal drei zu nennen. Ah, da hatte ich nicht geschaut... Farnell hat den für 3,39 Einzelstückpreis (bei 10+ 2,49 EUR). Da sind wir wieder bei Preisen und > Zoll und 20 EUR ist ein Märchen Die Grenze steht offiziell irgendwo beim deutschen Zoll auf der Webseite. Ab irgend nem Wert kommt halt noch irgend ne Bearbeitungs-Gebühr hinzu (glaub 150 EUR). Und unter irgend nem Wert (meiner Erinnerung nach eben 20 EUR deklarierter Wert). Aber die sind telefonisch für Rückfragen absolut nicht erreichbar. Ich hatte mich damals mal versucht wg. nem Ersatzteil schlau zu machen (neues LCD für nen Notebook). Die Infos, um die genauen Gebühren im Voraus zu kennen sind aber auf jeden Fall nicht auf der Webseite zu finden oder total unverständlich. Aber zum Glück komme ich ja hier drum herum. > Zur Not gibt's da Adapter, um auf DIL zu kommen. [...] Gut Flußmittel > dazu und einmal mit der breiten Lötspitze > langsam rüber jede Pinreihe rüberziehen. Gut zu wissen, dass es dafür Adapter gibt (ohne löten, nur klemmen?). Dann wär' ich von der Beschränkung schon mal weg... und mit dem Löten könnt ich ja dann mal probieren. > Die Analogsteuerung der Referenz für jeden einzelnen Motorschritt ist > schon Extraaufwand. Funktionieren wird das IMHO schon, aber ob das > lohnt. Also Software schreiben kann ich... daran würde es nicht scheitern. Denke aber, dass die Herausforderung SOIC dann erst einmal ausreichen wird. > Viel Erfolg Danke... und vielen Dank für die Hinweise! Ne Alternative die ich noch überlegt / grad angefangen habe, war die Schaltung selbst zu entwerfen... d.h. H-Brücke aus NMOS/PMOS-Bausteinen (am besten CMOS für geringe Verlustleistung; Stückpreis < 20 cent), dazu nen Comparator (Operationsverstärker) an einen in Reihe zur Last geschaltenen kleinen Widerstand (Strommessung). Das Ganze je ein mal pro Motorwindung... dazu käme nen NAND-Gatter um die Stromrichtung über nur einen IO-Pin umschalten zu können. Das ganze hätte den Vorteil, dass man notfalls die H-Brücke anders dimensionieren könnte, um höhere Ströme zu erlauben. ABER: Ich denke, das werde ich aber mal angehen, wenn obige Lösung funktioniert hat... Wäre aber glaub nen gutes Übungs-/Lern-Projekt. Die Schaltung würde ich vorher in SPICE simulieren. Da keine extravaganten ICs dabei sind, gibt's da auch keine Probleme... Ich mach mich dann mal an die Arbeit (Beschaltung genauer anschauen & Co)...
Stefan K. schrieb: > ... dazu käme nen NAND-Gatter um die Stromrichtung über nur einen IO-Pin > umschalten zu können. Außerdem mußt du dafür sorgen, dass die FETs einer Halbbrücke mit Zeitversatz umgeschaltet werden. Sonst sind sie kurzfristig beide leitend und schließen die Versorgungsspannung kurz, was kein guter Stil ist und wofür die FETs insbesondere oft nicht ausgelegt sind. Insbesondere ist die Überraschung groß, wenn man die Schaltung dann mal an einem kräftigen Netzteil oder einem niederohmigen Akku betreibt ;-)
Michael A. schrieb: > Außerdem mußt du dafür sorgen, dass die FETs einer Halbbrücke mit > Zeitversatz umgeschaltet werden. Das ist richtig. Hab ich der Einfachheit halber mal "unterschlagen". Spontan würd' ich das über ne leichte Modifikation der Schaltspannung eines FETs jedes Päärchens lösen. Wahrscheinlich reicht nen Widerstand... dann schalten sie Zeitversetzt. Müsste man in der Simulation dann schauen... sieht man dort ja reicht zuverlässig, was da vom Timing her passiert. Sich das mit dem Oszilloskop (welches ich nicht besitze, aber wahrscheinlich aus bissl Kabeln und meiner Soundkarte im Notebook basteln könnte; Limit: 192kHz Auflösung) anzuschauen, wäre da schon schwieriger. Insbesondere, da die Sampling-Rate möglicherweise zu grob ist (1 Sample pro 5,2 µs), um die Effekte zu sehen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.