Hallo Forum, in aller Kürze: Ich bin dabei mich in etwas erweiterte Themen bei Schrittmotoren einzuarbeiten, hierzu möchte ich eine Steuerung aufbauen, die mir als Entwicklungsplattform dient und mit der ich experimentieren und die Motoren weiter verstehen kann. Ein erstes Problem dem ich mich widmen möchte ist eine lastabhängige Stromregelung. Grundsätzlich verstanden habe ich, dass die Motorwicklungen sinusförmig angesteuert werden. Innerhalb des Sinus gibt es weiterhin eine PWM, über deren DutyCycle der Strom eingestellt werden kann. Um nun die Last des Motors zu detektieren kann man den Strom messen, der durch Motorwicklungen fließt. Dieser hat grundsätzlich die gleiche Form wie die oben erwähnte sinusförmige Spannung, ist aber phasenverschoben. Über die Phasenverschiebung kann auf die Last geschlossen werden, warum das so ist brauchen wir hier nicht zu diskutieren. Nun zur eigentlichen Frage: Wie kann ich sinnvoll den Strom der Motorwicklungen bzw. dessen Nulldurchgänge (?) messen? Grundsätzlich bin ich hier etwas hilflos, was das ausfiltern der PWM und evtl. Störungen angeht, da mich ja zunächst nur der Verlauf des Sinus interessiert. Gibt es hierzu fertige Bauteile (bzw. Stromsensoren), die eine solche Strommessung inkl. evtl. einstellbarer Filterung realisieren? Muss ich die Messung diskret aufbauen (Shuntwiderstand, Filter etc.)? Wie sieht hierzu eine Grundschaltung aus? Weiterhin möchte ich möglichst einfach den Gesamtstromverbrauch des Motors messen. Wie kann ich dies mit möglichst wenig Aufwand realisieren?
Daniel S. schrieb: > Über die Phasenverschiebung kann auf die Last geschlossen > werden, warum das so ist brauchen wir hier nicht zu > diskutieren. Eine falsche Voraussetzung in Form einer Behauptung einbauen und den Gesprächspartnern verbieten, darüber zu diskutieren. Nette Idee. Daniel S. schrieb: > Wie kann ich sinnvoll den Strom der Motorwicklungen bzw. > dessen Nulldurchgänge (?) messen? Die Spannung an den Shunts der Stromregelung abgreifen und weiterverarbeiten? Daniel S. schrieb: > Weiterhin möchte ich möglichst einfach den Gesamtstromverbrauch > des Motors messen. Die ohnehin gemessenen Phasenströme mit einem µC weiter- verarbeiten?
Daniel S. schrieb: > Wie kann ich sinnvoll den Strom der Motorwicklungen bzw. dessen > Nulldurchgänge (?) messen? Grundsätzlich bin ich hier etwas hilflos, was > das ausfiltern der PWM und evtl. Störungen angeht, da mich ja zunächst > nur der Verlauf des Sinus interessiert. Gibt es hierzu fertige Bauteile > (bzw. Stromsensoren), die eine solche Strommessung inkl. evtl. > einstellbarer Filterung realisieren? Für kleine Motoren gibt's ICs die kaum noch externe Bauteile brauchen (die Typen mit "coolStep" können das): http://www.trinamic.com/products/integrated-circuits/stepper-power-driver > Weiterhin möchte ich möglichst einfach den Gesamtstromverbrauch des > Motors messen. Wie kann ich dies mit möglichst wenig Aufwand > realisieren? Direkt am Netzteil reicht ein dicker Widerstand und ein Operationsverstärker mit einer Hand voll Rs und Cs. Man misst zwar den Strom für die Ansteuerung mit, aber den kann man raus rechnen oder sogar ignorieren.
Servus, Google mal nach: Vektorregelung Schrittmotor. > Nun zur eigentlichen Frage: > Wie kann ich sinnvoll den Strom der Motorwicklungen bzw. dessen > Nulldurchgänge (?) messen? Grundsätzlich bin ich hier etwas hilflos, was > das ausfiltern der PWM und evtl. Störungen angeht, da mich ja zunächst > nur der Verlauf des Sinus interessiert. Gibt es hierzu fertige Bauteile > (bzw. Stromsensoren), die eine solche Strommessung inkl. evtl. > einstellbarer Filterung realisieren? Muss ich die Messung diskret > aufbauen (Shuntwiderstand, Filter etc.)? Wie sieht hierzu eine > Grundschaltung aus? z.B. ACS712 kannst du als Sensor nehmen. Einen Encoder auf den Motor brauchst du auch. Sonst brauchst du 2 H-Brücken, 2 DAC Ausgänge, 2 Spulen und 2 Filterkondensatoren als Tiefpass. Trinamic und Nanotec haben diese Technologie im Angebot.
Possetitjel schrieb: >> Über die Phasenverschiebung kann auf die Last geschlossen >> werden, warum das so ist brauchen wir hier nicht zu >> diskutieren. > > Eine falsche Voraussetzung in Form einer Behauptung einbauen > und den Gesprächspartnern verbieten, darüber zu diskutieren. > > Nette Idee. Ich habe niemandem verboten darüber zu diskutieren. Was ist an dieser Voraussetzung falsch?
aSma>> schrieb: > Einen Encoder auf den Motor > brauchst du auch. Okay, der ist vorhanden. Mir ist aber noch nicht genaz klar warum ich diesen zur lastabhängigen Stromregelung brauche!?
Daniel S. schrieb: > Possetitjel schrieb: >>> Über die Phasenverschiebung kann auf die Last geschlossen >>> werden, warum das so ist brauchen wir hier nicht zu >>> diskutieren. >> >> Eine falsche Voraussetzung in Form einer Behauptung einbauen >> und den Gesprächspartnern verbieten, darüber zu diskutieren. >> >> Nette Idee. > > Ich habe niemandem verboten darüber zu diskutieren. Ich habe Deine Floskel "...brauchen wir hier nicht zu diskutieren..." so aufgefasst. "Das ist so. Ende. Aus. Wer widerspricht, ist ein Blödmann", so in der Art. > Was ist an dieser Voraussetzung falsch? Die Phasenverschiebung zwischen Strom und Spannung ist im Prinzip der cos_phi. Mag sein, dass ich einen Fehler mache, aber ich sehe keinen Mechanismus, wie der cos_phi beim Schrittmotor wesentlich von der Last abhängen sollte. Das müsste man diskutieren - aber das hast Du ja oben vorsorglich abgelehnt. Etwas anderes ist natürlich der Polradwinkel; der muss selbstverständlich von der Last abhängen - aber den müsste man halt separat messen.
Daniel S. schrieb: > Okay, der ist vorhanden. Mir ist aber noch nicht genaz klar warum ich > diesen zur lastabhängigen Stromregelung brauche!? Du brauchst ein wenig Theoriewissen. Der Schrittmotor (Hybrid Motor) hat auch die Eigenschaft eines Synchronmotors. Mit den Encoder misst du den Polradwinkel und erhöhst ggf. den Strom!? Bevor du eine lastabhängige Regelung machst, rate ich dir eine lastunabhängige Regelung durchzuführen. Also volle Lotte geben. Außerdem wenn du eine Frage mit Nachdruck stellst, dann währe die Variante besser "?!". Andersherum denke ich du wärst ein Rhethoriker.
aSma>> schrieb: > Der Schrittmotor (Hybrid Motor) hat auch die Eigenschaft > eines Synchronmotors. Mit den Encoder misst du den > Polradwinkel und erhöhst ggf. den Strom!? Ja - aber das ist technisch nicht dasselbe wie die Vektorregelung beim Asynchron-Motor, die ja tatsächlich mit Motorströmen und -spannungen auskommt, also keinen zusätzlichen Sensor braucht. Sensorlose feldorientierte Regelung beim Synchronmotor geht auch, aber da kenne ich die Einzelheiten nicht.
Possetitjel schrieb: > Ich habe Deine Floskel "...brauchen wir hier nicht zu > diskutieren..." so aufgefasst. "Das ist so. Ende. Aus. > Wer widerspricht, ist ein Blödmann", so in der Art. > >> Was ist an dieser Voraussetzung falsch? > > Die Phasenverschiebung zwischen Strom und Spannung ist im > Prinzip der cos_phi. > > Mag sein, dass ich einen Fehler mache, aber ich sehe keinen > Mechanismus, wie der cos_phi beim Schrittmotor wesentlich > von der Last abhängen sollte. > Das müsste man diskutieren - aber das hast Du ja oben > vorsorglich abgelehnt. Habe ich wie gesagt nicht abgelehnt. Damit, dass wir das nicht diskutieren brauchen meinte ich, dass ich davon ausgehe, dass dies eine allgemein bekannte Tatsache ist, bei der ich davon ausgehe, dass sie stimmt. Falls das nicht so ist belehre mich bitte eines besseren! Mein Wissen stammt von hier (so ungefähr ab dem zum Bild 3 passenden Text): http://www.elektroniknet.de/automation/sonstiges/artikel/56/ > Etwas anderes ist natürlich der Polradwinkel; der muss > selbstverständlich von der Last abhängen - aber den müsste > man halt separat messen. Alles möglich und das mache ich auch bereits. Bevor ich aber hier etwas sinnvoll messe und reagieren kann hat der Motor bereits Schritte übersprungen, erst dann kann ich die Geschwindigkeit durch erhöhen der PWM (Drehmoment) nachregeln (Tue ich bereits, läuft auch). Mit der obigen Methode möchte ich schon eine erhöhte Last feststellen bevor Schritte übersprungen werden. aSma>> schrieb: > Du brauchst ein wenig Theoriewissen. Der Schrittmotor (Hybrid Motor) hat > auch die Eigenschaft eines Synchronmotors. Mit den Encoder misst du den > Polradwinkel und erhöhst ggf. den Strom!? Bereits implementiert und funktioniert! s.o. > > Bevor du eine lastabhängige Regelung machst, rate ich dir eine > lastunabhängige Regelung durchzuführen. Also volle Lotte geben. Wo ist bei "volle Lotte" (meint das PWM auf 100%?) noch eine Regelung? Possetitjel schrieb: > Ja - aber das ist technisch nicht dasselbe wie die > Vektorregelung beim Asynchron-Motor, die ja tatsächlich > mit Motorströmen und -spannungen auskommt, also keinen > zusätzlichen Sensor braucht. Jetzt sind wir auf einer "Wellenlänge" :-) Wie, wenn nicht durch ausmessen der Phasenverschiebung funktioniert die Vektorregelung denn nun? > Sensorlose feldorientierte Regelung beim Synchronmotor > geht auch, aber da kenne ich die Einzelheiten nicht. Habe ich mich bereits ein wenig mit der Theorie beschäftigt, das ist für mich aber der übernächste Schritt.
Daniel S. schrieb: >> Das müsste man diskutieren - aber das hast Du ja oben >> vorsorglich abgelehnt. > > Habe ich wie gesagt nicht abgelehnt. Damit, dass wir das > nicht diskutieren brauchen meinte ich, dass ich davon > ausgehe, dass dies eine allgemein bekannte Tatsache ist, Okay, dann habe ich Dich missverstanden. Entschuldigung. > bei der ich davon ausgehe, dass sie stimmt. Jein ... siehe unten. > Falls das nicht so ist belehre mich bitte eines besseren! > Mein Wissen stammt von hier (so ungefähr ab dem zum Bild 3 > passenden > Text): > http://www.elektroniknet.de/automation/sonstiges/artikel/56/ Danke für die Quelle. -- Ich habe den Artikel nur überflogen und bin der Meinung, dass dieser Artikel sachliche Fehler enthält. Ich möchte mich jetzt aber nicht ohne Vorbereitung aus dem Fenster lehnen und schlage vor, dass wir dieses Seitenthema bei Bedarf getrennt diskutieren. >> Etwas anderes ist natürlich der Polradwinkel; der muss >> selbstverständlich von der Last abhängen - aber den müsste >> man halt separat messen. > > Alles möglich und das mache ich auch bereits. Bevor ich aber > hier etwas sinnvoll messe und reagieren kann hat der Motor > bereits Schritte übersprungen, erst dann kann ich die > Geschwindigkeit durch erhöhen der PWM (Drehmoment) nachregeln > (Tue ich bereits, läuft auch). Nur dass ich Dich richtig verstehe: Du hast bereis einen Encoder, mit dem Du (erfolgreich) die Ist-Position bestimmen und somit Schrittverlust feststellen kannst? > Mit der obigen Methode möchte ich schon eine erhöhte Last > feststellen bevor Schritte übersprungen werden. Das heißt, Du möchtest einen zu großen Polradwinkel bereits feststellen, bevor der Motor "übergeschnappt" ist. > Possetitjel schrieb: >> Ja - aber das ist technisch nicht dasselbe wie die >> Vektorregelung beim Asynchron-Motor, die ja tatsächlich >> mit Motorströmen und -spannungen auskommt, also keinen >> zusätzlichen Sensor braucht. > > Jetzt sind wir auf einer "Wellenlänge" :-) > Wie, wenn nicht durch ausmessen der Phasenverschiebung > funktioniert die Vektorregelung denn nun? Gegenfrage: Von welchem Typ rotierender elektrischer Maschinen sprechen wir? Die Vektorregelung beim Asynchronmotor kommt ohne zusätzlichen Sensor aus und funktioniert tatsächlich durch Ausmessen der Phasenverschiebung (=cos_phi). Wenn wir mal von sinusförmigem Strom- und Spannungsverlauf ausgehen, dann kann der Umrichter anhand der Amplitude und der Phasenlage des Stromes (relativ zur Spannung) Blind- und Wirkleistungsaufnahme des Motors unterscheiden und so auf den Betriebszustand des Motors (d.h. seine Belastung) rückschließen. Was Dich aber (soweit ich verstanden habe) im Moment inter- essiert, ist die "Vektorregelung" von speziellen Synchron- maschinen, nämlich von stark genuteten Synchronmotoren mit hoher Polpaarzahl (=Schrittmotoren). Warum man das Prinzip der Vektorregelung, wie sie beim Asynchronmotor arbeitet, nicht einfach auf die Synchron- maschine übertragen kann, das weiss ich nicht; das müsste ich mir mal anlesen. Der oben zitierte Artikel beschreib jedenfalls einen anderen Effekt: Durch die starke Nutung ist der magnetische Widerstand des Schrittmotors im Verlaufe eines Vollschrittes (=360° elektrisch) nicht konstant. Anders formuliert: Die Induktivität der Motorwicklungen hängt von der genauen Stellung des Läufers ab. Wenn man also - das ist die Schlüsselidee - den Schrittmotor mit genau sinusförmigen Spannungen beaufschlagt, dann sind die Wicklungsströme NICHT genau sinusförmig! Es entsteht aufgrund der schwankenden Induktivität eine Art Verzerrungs- blindleistung, und DIESE kann man messen. Mit einer einfachen Messung der Phasenverschiebung ist es nicht getan. >> Sensorlose feldorientierte Regelung beim Synchronmotor >> geht auch, aber da kenne ich die Einzelheiten nicht. > > Habe ich mich bereits ein wenig mit der Theorie beschäftigt, > das ist für mich aber der übernächste Schritt. Ist vielleicht eine ungünstige Reihenfolge. Als Kernpunkt sehe ich die Frage: Warum funktioniert die einfache Vektorregelung über den cos_phi, wie man sie beim Asynchronmotor verwendet, beim Synchronmotor nicht? Ganz offensichtlich ist das ja so, denn sowohl die sensorlose feldorientierte Regelung beim BLDC als auch StallGuard beim Schrittmotor funktionieren nach meinem Verständnis anders.
Possetitjel schrieb: > Danke für die Quelle. -- Ich habe den Artikel nur überflogen > und bin der Meinung, dass dieser Artikel sachliche Fehler > enthält. Ich möchte mich jetzt aber nicht ohne Vorbereitung > aus dem Fenster lehnen und schlage vor, dass wir dieses > Seitenthema bei Bedarf getrennt diskutieren. Gut, ich komme evtl. darauf zurück. Ich hatte aufgrund der Referenzen des Autors des Artikels einfach ein großes Vertrauen in die sachliche Richtigkeit. Wir werden sehen... > Nur dass ich Dich richtig verstehe: Du hast bereis einen Encoder, > mit dem Du (erfolgreich) die Ist-Position bestimmen und somit > Schrittverlust feststellen kannst? korrekt. Ausserdem habe ich bereits einen Regler implementiert, der dden PWM-Dutycycle (und damit das Drehmoment) in diesem Fall erhöht um die Drehzahl wieder auszugleichen bzw. das "Überschnappen" zu vermeiden. Funktioniert soweit. >> Mit der obigen Methode möchte ich schon eine erhöhte Last >> feststellen bevor Schritte übersprungen werden. > > Das heißt, Du möchtest einen zu großen Polradwinkel bereits > feststellen, bevor der Motor "übergeschnappt" ist. Wenn du mit Polradwinkel die Abweichung der Rotorposition (aufgrund der Belastung) von der Position im unbelasteten Zustand (evtl. Sollzustand) meinst: korrekt! Letzteren Sollzustand möchte ich ja dann mit mehr Strom (aus PWM-Dutycycle) und somit mehr Kraft bzw. Drehmoment wiederherstellen. >> Possetitjel schrieb: >>> Ja - aber das ist technisch nicht dasselbe wie die >>> Vektorregelung beim Asynchron-Motor, die ja tatsächlich >>> mit Motorströmen und -spannungen auskommt, also keinen >>> zusätzlichen Sensor braucht. >> >> Jetzt sind wir auf einer "Wellenlänge" :-) >> Wie, wenn nicht durch ausmessen der Phasenverschiebung >> funktioniert die Vektorregelung denn nun? > > Gegenfrage: Von welchem Typ rotierender elektrischer Maschinen > sprechen wir? bipolarer (2 Phasen) Hybrid-Schrittmotor > Die Vektorregelung beim Asynchronmotor kommt ohne zusätzlichen > Sensor aus und funktioniert tatsächlich durch Ausmessen der > Phasenverschiebung (=cos_phi). ... > Wenn man also - das ist die Schlüsselidee - den Schrittmotor > mit genau sinusförmigen Spannungen beaufschlagt, dann sind > die Wicklungsströme NICHT genau sinusförmig! Es entsteht > aufgrund der schwankenden Induktivität eine Art Verzerrungs- > blindleistung, und DIESE kann man messen. Mit einer einfachen > Messung der Phasenverschiebung ist es nicht getan. Gut, das würde ich mich gerne anschauen, dazu muss ich irgendwie sinnvoll den Strom messen und dazu mindestens die PWM rausfiltern um einen halbwegs "sauberen" Sinus (oder eben das von dir beschriebene verformte Sinussignal) zu bekommen und diesen abzutasten. Das ist genau nun meine Eingangsfrage: Wie messe ich sinnvoll diesen Strom? Gibt es bereits Bauteile die das -out of the box- können? Ist es mit einem einfachen Tiefpass getan? > Als Kernpunkt sehe ich die Frage: Warum funktioniert die > einfache Vektorregelung über den cos_phi, wie man sie beim > Asynchronmotor verwendet, beim Synchronmotor nicht? Ganz > offensichtlich ist das ja so, denn sowohl die sensorlose > feldorientierte Regelung beim BLDC als auch StallGuard > beim Schrittmotor funktionieren nach meinem Verständnis > anders. ... dazu suche ich jetzt mal nach Literatur.
:
Bearbeitet durch User
Daniel S. schrieb: > Wie, wenn nicht durch ausmessen der Phasenverschiebung funktioniert die > Vektorregelung denn nun? Du misst einfach die Polradspannung. Wenn du das geschaft hast, dann sag bescheid. Daniel S. schrieb: >> Bevor du eine lastabhängige Regelung machst, rate ich dir eine >> lastunabhängige Regelung durchzuführen. Also volle Lotte geben. > > Wo ist bei "volle Lotte" (meint das PWM auf 100%?) noch eine Regelung? Ja, ein lastunabhängige Positionsregelung. So jetzt kommen wir endlich deinen Problem über was man jetzt diskutieren kann: Wann bekommst du die Schrittverluste? -Bei der Beschleunigung? Bau eine Beschleunigungs Rampe rein. -Ist eventuell deine Regelung zu langsam? Wie schnell tastest du ab? Was du machen willst ist, einen Schrittmotor die Eigenschaft eines Gleichstrommotors zu verpassen ohne dessen Nachteil: kaum Drehmoment bei niedrigen Drezahl. Dann müssest du auch deinen Schrittmotor eine Drehzahlkonstante... Possetitjel schrieb: > Gegenfrage: Von welchem Typ rotierender elektrischer Maschinen > sprechen wir? Steht in der Überschrift: Schrittmotor!
Daniel S. schrieb: >> Wenn man also - das ist die Schlüsselidee - den Schrittmotor >> mit genau sinusförmigen Spannungen beaufschlagt, dann sind >> die Wicklungsströme NICHT genau sinusförmig! Es entsteht >> aufgrund der schwankenden Induktivität eine Art Verzerrungs- >> blindleistung, und DIESE kann man messen. Mit einer einfachen >> Messung der Phasenverschiebung ist es nicht getan. > > Gut, das würde ich mich gerne anschauen, dazu muss ich > irgendwie sinnvoll den Strom messen Hmm. Ich glaube, ich bin Dir in die Falle gegangen: Falls Du eine Stromchopper-Enstufe verwendest, kannst Du diesen Strom natürlich NICHT messen! Der Strom wird ja konstantgehalten! Du müsstest die Spannungen an den Wicklungen messen und das umrechnen. > und dazu mindestens die PWM rausfiltern um einen halbwegs > "sauberen" Sinus (oder eben das von dir beschriebene > verformte Sinussignal) zu bekommen und diesen abzutasten. Ja. > Das ist genau nun meine Eingangsfrage: Wie messe ich sinnvoll > diesen Strom? Spannung. Der Strom wird ja i.d.R. geregelt, ist also nahezu konstant. Die Spannung ist es, die schwankt. > Gibt es bereits Bauteile die das -out of the box- können? Nein. Du wirst Instrumentation Amplifier und AD-Wandler brauchen. Wahrscheinlich auch Schutzbeschaltung gegen Überspannung. > Ist es mit einem einfachen Tiefpass getan? Nein, sicher nicht. Ich denke, es wird notwendig sein, die Spannungsmessung mit dem PWM/Stromchoppertakt zu synchronisieren, um immer an derselben Stelle im Zyklus zu messen. Das ist ja der übliche Trick sowohl bei Gleichspannungsmotoren also auch bei BLDC; da würde ich mich mal belesen, wie das dort gemacht wird. Vielleicht finden sich auch Hinweise, wie das StallGuard-Zeug funktioniert. Die kochen ja auch nur mit Wasser... * Übrigens noch eine Ergänzung bzw. Korrktur: Ich bin inzwischen unsicher geworden, denn es könnte sein, dass sich die positions- abhängige Induktivität der Motorwicklungen im Endeffekt doch einfach in einer Phasenverschiebung zwischen Strom und Spannung niederschlägt. Dann wäre zwar die Ursache ganz anders als beim DSAM, aber die Wirkung ähnlich. - Da muss ich aber nochmal drüber schlafen.
aSma>> schrieb: > Possetitjel schrieb: >> Gegenfrage: Von welchem Typ rotierender elektrischer >> Maschinen sprechen wir? > > Steht in der Überschrift: Schrittmotor! Nein. Den Begriff "Vektorregelung", der hier gebraucht wurde, kenne ich AUSSCHLIESZLICH von Drehstrom-Asynchronmotoren. Die sensorlose Bestimmung des Polradwinkels beim Schrittmotor ist dann doch eine etwas andere Baustelle. Es hat seinen Grund, warum ich begriffliche Klarheit haben möchte.
aSma>> schrieb: > Daniel S. schrieb: >> Wie, wenn nicht durch ausmessen der Phasenverschiebung funktioniert die >> Vektorregelung denn nun? > > Du misst einfach die Polradspannung. Wenn du das geschaft hast, dann sag > bescheid. > > Daniel S. schrieb: >>> Bevor du eine lastabhängige Regelung machst, rate ich dir eine >>> lastunabhängige Regelung durchzuführen. Also volle Lotte geben. >> >> Wo ist bei "volle Lotte" (meint das PWM auf 100%?) noch eine Regelung? > > Ja, ein lastunabhängige Positionsregelung. Das ist dann irgendwann der letzte Schritt, der auf allen anderen aufbaut. Um diesen zu realisieren muss ich zunächst den Strom regeln und danach die Drehzahl. Damit kann ich dann eine Position anfahren, die dann von mir aus auch noch geregelt wird. Positionsregelung mit vollem Drehmoment ist kein Thema, habe ich bereits implementiert, läuft, ist nur nicht mein Ziel. > So jetzt kommen wir endlich deinen Problem über was man jetzt > diskutieren kann: Wann bekommst du die Schrittverluste? > -Bei der Beschleunigung? Bau eine Beschleunigungs Rampe rein. > -Ist eventuell deine Regelung zu langsam? Wie schnell tastest du ab? Die Schrittverluste provoziere ich gezielt um meine Regelung zu testen, die evtl. bei zu hoher Last auch den Motor abschalten soll und einen Fehler anzeigt. Nochmal: Ich baue hier eine Entwicklungsplattform, mit der ich zunächst die Eigenschaften verschiedener Motortypen (aktuell den genannten Schrittmotor) verstehen und Demonstrieren möchte. Ich habe NICHT das Problem, dass mein Motor "nicht richtig" läuft und ich nur eine simple Motoransteuerung "ans laufen" bringen möchte. > Was du machen willst ist, einen Schrittmotor die Eigenschaft eines > Gleichstrommotors zu verpassen ohne dessen Nachteil: kaum Drehmoment bei > niedrigen Drezahl. Dann müssest du auch deinen Schrittmotor eine > Drehzahlkonstante... fast richtig. Ich möchte meinen Schrittmotor wie einen Servomotor betreiben. Durchaus üblich, siehe o.g. Hersteller diverser Motortreiber-IC's
Possetitjel schrieb: > Daniel S. schrieb: > >>> Wenn man also - das ist die Schlüsselidee - den Schrittmotor >>> mit genau sinusförmigen Spannungen beaufschlagt, dann sind >>> die Wicklungsströme NICHT genau sinusförmig! Es entsteht >>> aufgrund der schwankenden Induktivität eine Art Verzerrungs- >>> blindleistung, und DIESE kann man messen. Mit einer einfachen >>> Messung der Phasenverschiebung ist es nicht getan. >> >> Gut, das würde ich mich gerne anschauen, dazu muss ich >> irgendwie sinnvoll den Strom messen > > Hmm. Ich glaube, ich bin Dir in die Falle gegangen: > Falls Du eine Stromchopper-Enstufe verwendest, kannst Du > diesen Strom natürlich NICHT messen! Der Strom wird ja > konstantgehalten! Nein! Ich verwende KEINEN fertigen Motortreiber-IC, sondern eine PWM, mit der ich zwei H-Brücken ansteuere, welche wiederum im richtigen "Takt" die Motorwicklungen "durchschalten" oder "ansteuern" (mir fehlt das richtige Wort). Im Prinzip baue ich mehr oder weniger einen solchen Motortreiber-IC diskret auf. Und genau die o.g. Regelung des Stromes möchte ich realisieren. Diese ist später die Stellgröße für meinen Drehzahlregler. > Du müsstest die Spannungen an den Wicklungen messen > und das umrechnen. Wie man Ströme misst ist mir klar, wie gesagt geht es mehr um die Filterung, so dass ich den "Sinus" ohne PWM messen kann, da dieser ggf. die Informationen enthält die für meine Regelung wichtig sind. >> Das ist genau nun meine Eingangsfrage: Wie messe ich sinnvoll >> diesen Strom? > > Spannung. > Der Strom wird ja i.d.R. geregelt, ist also nahezu konstant. > Die Spannung ist es, die schwankt. s.o. > >> Gibt es bereits Bauteile die das -out of the box- können? > > Nein. > Du wirst Instrumentation Amplifier und AD-Wandler brauchen. > Wahrscheinlich auch Schutzbeschaltung gegen Überspannung. Klar. >> Ist es mit einem einfachen Tiefpass getan? > > Nein, sicher nicht. > Ich denke, es wird notwendig sein, die Spannungsmessung mit > dem PWM/Stromchoppertakt zu synchronisieren, um immer an > derselben Stelle im Zyklus zu messen. Das ist evtl. ein guter Ansatz. Da ich die PWM selbst generiere könnte ich immer dann messen, wenn diese gerade "angeschaltet" ist. Selbiges wollte ich mit dem Tiefpass umgehen. > > Das ist ja der übliche Trick sowohl bei Gleichspannungsmotoren > also auch bei BLDC; da würde ich mich mal belesen, wie das dort > gemacht wird. > Vielleicht finden sich auch Hinweise, wie das StallGuard-Zeug > funktioniert. Die kochen ja auch nur mit Wasser... > Gut, ich suche mal in diese Richtung. > Übrigens noch eine Ergänzung bzw. Korrktur: Ich bin inzwischen > unsicher geworden, denn es könnte sein, dass sich die positions- > abhängige Induktivität der Motorwicklungen im Endeffekt doch > einfach in einer Phasenverschiebung zwischen Strom und Spannung > niederschlägt. > Dann wäre zwar die Ursache ganz anders als beim DSAM, aber die > Wirkung ähnlich. - Da muss ich aber nochmal drüber schlafen. Gut, ich habe mir inzwischen mal einen Hallsensor zum Messen des Stromes bestellt und werde mir die Phasenverschiebung von Strom und Spannung morgen einmal bei unterschiedlichen Lastfällen anschauen. Mit Oszilloskop ist die PWM ja auch erstmal egal, diese wird dann wieder wichtig, wenn ich diese sinnvoll mit einem µC verarbeiten möchte.
Possetitjel schrieb: > aSma>> schrieb: > >> Possetitjel schrieb: >>> Gegenfrage: Von welchem Typ rotierender elektrischer >>> Maschinen sprechen wir? >> >> Steht in der Überschrift: Schrittmotor! > > Nein. > > Den Begriff "Vektorregelung", der hier gebraucht wurde, kenne > ich AUSSCHLIESZLICH von Drehstrom-Asynchronmotoren. ... wird aber in der Literatur häufig mit der sog. "Feldorientierten Regelung" der genannten Schrittmotoren gleichgesetzt. > Die sensorlose Bestimmung des Polradwinkels beim Schrittmotor > ist dann doch eine etwas andere Baustelle. Genau. Das wird später mal ein Thema. Solange: Mit Sensor (in meinem Fall der Stromsensor mit evtl. Filterung, wonach ich eingangs fragte).
:
Bearbeitet durch User
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.