Hallo allerseits,
ich habe mich seit kurzem mit Servoreglern beschäftigt und will mir
selbst einen Servoregler bauen.
Mit Servo meine ich nicht einen Modellbauservo sondern einen
leistungsstarken
DC motor für einen CNC Maschiene.
Ein Servoregler ist z.B. der UHU
http://benezan-electronics.de/manuals/UHU-Installation.pdf welcher auch
hier im Forum schon diskutiert wurde.
Solche Servomotoren haben an der Achse einen optischen Inkrementalgeber
montiert (z.B. den HEDS-5540), welcher die genaue Bewegung der
Motorachse erfasst. Diese inkrementalgeber haben eine Auflösung von >
400 Pulsen pro Umdrehung.
Damit komme ich auch schon zu meiner Frage:
Warum haben diese Inkrementalgeber eine solch feine Auflösung?
Kann man mit einem DC-Bürstenmotor und Servoregelung eine 10tel Drehung
der Motorachse erreichen, oder ist die Rasterung des Motors eine
natürliche Grenze für die Winkelauflösung?
Vielen Dank,
Markus
> ich habe mich seit kurzem mit Servoreglern beschäftigt und will mir> selbst einen Servoregler bauen.
Das ist schoen fuer dich, dann kannst du ja richtig was lernen. :-)
> Diese inkrementalgeber haben eine Auflösung von > 400 Pulsen> pro Umdrehung.
Nein, diese Inkrementalgeber haben die Aufloesung die du gerne haettest
oder kaufst. Ich hab auch schon Motore mit 16Strichen eingesetzt.
> Warum haben diese Inkrementalgeber eine solch feine Auflösung?
Weil du berechnet hast was du brauchst und dann dir sowas kaufst.
Und genau da liegt das Problem. Du musst zuerst mal ausrechnen
weil Leistung dein Motor so braucht und wie schnell er
laufen muss. Dann kuckst du welche Aufloesung du brauchst.
Dann waehlst du dir einen Motor aus der deinen Wuenschen nahe
kommt. Dann rechnest du mit den Motordaten zurueck ob das damit
geht. Danach rechnest du die maximale Abtastfrequenz am Encoder
aus und pruefst ob dein Controller das kann.
> Kann man mit einem DC-Bürstenmotor und Servoregelung eine 10tel Drehung> der Motorachse erreichen, oder ist die Rasterung des Motors eine> natürliche Grenze für die Winkelauflösung?
Grundsaetzlich kannst du so genau werden. In der Praxis wird die
Genauigkeit eher vom Spiel im Getriebe abhaengen.
Olaf
Der Doc schrieb:> Warum haben diese Inkrementalgeber eine solch feine Auflösung?> Kann man mit einem DC-Bürstenmotor und Servoregelung eine 10tel Drehung> der Motorachse erreichen, ...
Mit hochwertigen Servomotoren und Regelung erreicht man problemlos
Positioniergenauigkeiten im Miligrad-Bereich. Die erreichbare
Genauigkeit hängt von der Regelung und der Messgenauigkeit ab. Für
genaue Regelungen werden meistens Sinus-Geber eingesetzt, mit z.B. 2048
Strichen pro Umdrehung.
Diese liefern ein analoges, sinusförmiges Signal, durch genaue Messung
mit A/D-Wandlern kann man eine Sinus-Periode auf ca. 4000 Punkte
Auflösen.
Damit liegt die Mess-Auflösung bei 1/8192000 Umdrehungen, also ca. 0,5 *
10^-6 Umdrehungen entspricht ca. 0,2 m°. Die Genauigkeit ist natürlich
nicht ganz so gut, mit einem präzisen mechanischen Aufbau und ggf.
Kalibration erreicht man so 3-5 m° (10 - 20 Winkelsekunden).
> ... oder ist die Rasterung des Motors eine natürliche Grenze für die> Winkelauflösung?
Was meinst du mit Rasterung? Ein Servo-Motor (DC oder Synchron) hat
keine Rasterung.
Hast Du wirklich einen DC Motor oder einen Brushless DC. Letzteres ist
die Regel bei CNC Maschinen bzw. Schrittmotoren bei Lowcost.
Wenns was richtiges werden soll ist Standart
Brushless DC mit Resolver (Rotorlagegeber)
Linear Massstab als Istwert Erfassung.
Wenn Du einen Brushless hast gibt es Rastung im Drehmoment wenn er block
kommutiert wird. Wenn sinus kommutiert ist eine Rastung
vernachlässigbar.
Beim UHU-Projekt werden tatsächlich bürstenbehaftete Motoren verwendet,
also echte DC-Motoren. Da macht auch ein hochwertiger optischer Geber
mit analogen sin/cos-Signalen und nachgeschalteter Interpolation keinen
Sinn. Ein paar hundert Inkremente/U reichen da locker.
Eine hohe Geberauflösung ist übrigens nicht nur für die Positionierung
wichtig, sondern auch für die Drehzahlregelung. Je schneller der Regler
ist, um so höher muss die Geberauflösung sein, um die Geschwindigkeit
noch brauchbar auflösen zu können. Besonders gut sieht man das bei
Direktantrieben, egal ob Linear- oder Torquemotor. Wenn der Geber eine
zu niedrige Auflösung hat, steigt das Stromrauschen, die
Antriebsgeräusche und die Erwärmung des Antriebs deutlich an. Für den
Hobbyisten ist das aber i.A. nicht relevant.
Mit freundlichen Grüßen
Thorsten Ostermann
Vielen dank für die vielen Antworten.
In der Tat will ich einen gewöhnlichen Bürstenmotor mit hohem Drehmoment
verwenden (ca. 1 Nm) und disen dann mit optischen encoder versehen. Der
Motor hat keine spürbare rasterun und dreht bei 40 Volt mit ca. 2500
Upm. Wenn das ganze funktioniert, ist das ganze um den Faktor 5 bis 10
günstiger als ein Industrieservo. Das war auch die Idee des UHU Reglers.
Der Hinweis auf die Dynamik und Stabilität der Regelschleife ist sehr
hilfreich. Gibt es eine Faustregel oder Formel welche Auflosung man für
den Encoder man wählt, oder einfach wie Olaf vorgeschlagen hat, das
größte wählen was der Regler noch abkann?
Markus
Hallo,
dank dem Tip von Thorsten hab ich bezüglich der Auflösung der Geber ein
Dokument im Internet gefunden, welches auf die Thematik eingeht.
Die Auflösund des Inkrementalgebers beinflusst die Drehzahlgenauigkeit
(für Geber mit kleiner Auflösung leidet die Drehzahlstabilität in einem
gewissen Drehzahlbereich) und das Stromrauschen (wie von Thorsten schon
erwähnt).
Für alle die interessiert sind:
http://www.heidenhain.de/de_DE/php/dokumentation-und-information/dokumentation/prospekte/popup/media/media/file/view/file-0232/file.pdf
Vielen Dank und viele Gruesse,
Markus
Hallo,
bei einem modernen Antriebskonzept wird der Inkrementalgeber zugleich
für die Positionsbestimmung verwendet - muss man auf 1µ positionieren,
so muss der Geber eben eine Auflösung von 1µ erlauben. Für die
Drehzahlregelung (bzw. Geschwindigkeitsregelung) reicht das in jedem
Fall.
Gruss Reinhard
Hallo Reinhard!
> bei einem modernen Antriebskonzept wird der Inkrementalgeber zugleich> für die Positionsbestimmung verwendet - muss man auf 1µ positionieren,> so muss der Geber eben eine Auflösung von 1µ erlauben. Für die> Drehzahlregelung (bzw. Geschwindigkeitsregelung) reicht das in jedem> Fall.
Nein, eben nicht. Das ist eine gängige, aber falsche Annahnme. Lies doch
bitte nochmal genau, was ich geschrieben habe. Das Dokument von
Heidenhain geht da weiter ins Detail, wenn meine Erklärungen nicht
ausreichen sollten.
Mit freundlichen Grüßen
Thorsten Ostermann
Thorsten Ostermann schrieb:> Nein, eben nicht. Das ist eine gängige, aber falsche Annahnme.
Da verwechselst du was. Wahrscheinlich ist dir einfach nicht klar, eine
wie hohe Auflösung für eine Positionierung auf 1µ nötig ist. In dem
Dokument steht nichts, was meiner Behauptung widerspricht, im Gegenteil,
die geringe Stromänderung bei optischen Encodern wird sogar ausdrücklich
erwähnt. Niemand kann so verrückt sein, einen Resolver für eine
µ-Positionierung zu verwenden, daher habe ich das nicht ausdrücklich
erwähnt, was ich hiermit für dich nachhole.
Man könnte aber auch einfach rechnen, wenn man denn könnte: ein Schritt
von 1µ bei einer Verfahrgeschwindigkeit von 1m/s, was für eine
Werkzeugmaschine völlig realistisch ist, ergibt eine Zählrate von 1 MHz!
Willst du ernsthaft behaupten, das sei zuwenig für die Regelung?
Gruss Reinhard
Reinhard Kern schrieb:> Man könnte aber auch einfach rechnen, wenn man denn könnte: ein Schritt> von 1µ bei einer Verfahrgeschwindigkeit von 1m/s, was für eine> Werkzeugmaschine völlig realistisch ist, ergibt eine Zählrate von 1 MHz!> Willst du ernsthaft behaupten, das sei zuwenig für die Regelung?
Thorsten meinte wahrscheinlich, das bei einer gewünschten Auflösung von
1µ ein hochauflösender Geber am Motor völlig sinnlos ist, egal wie
hochauflösend. Stell dir nur mal vor, du fährst deine Achsen mit 1m/s
mehrmals hin und her. Dabei erwärmt sich die Kugelspindel nur um 1°C.
Kannst ja mal ausrechnen, welche Längenänderung, und damit
Ungenauigkeit, sich nur daraus ergibt. Von einer Änderung der
Raumtemperatur ganz zu schweigen. Deswegen baut man bei modernen
Maschinen direkt an den Achsen Glasmaßstäbe an, welche dann das
Positionssignal für die Steuerung liefern. Der Geber am Motor ist dann
eigentlich nur noch für die Kommutierung zuständig.
Gruß, Steffen
Steffen N. schrieb:> Deswegen baut man bei modernen> Maschinen direkt an den Achsen Glasmaßstäbe an, welche dann das> Positionssignal für die Steuerung liefern.
Davon gehe ich ja aus, bzw. davon dass jemand weiss wie man µ-Auflösung
realisiert. Aber das Signal eben dieser Massstäbe kann/sollte man auch
zur Geschwindigkeitsregelung verwenden, ein zusätzlicher Winkel-Encoder
ist überflüssig.
1 µ ist auch so schon wenig genug, da muss man sich Getriebespiel und
Umsetzung durch Kugelumlaufspindel usw. nicht auch noch aufhalsen. Ich
habe lange Jahre Messmaschinen gebaut, da ändert sich die
Positionsanzeige schon wenn man an einer Seite mit dem Daumen auf das
Maschinenbett drückt, selbst bei mehr als 5cm Granit. Unendlich steifes
Material gibt es halt nicht.
Ein Grund für mehrere Encoder könnte allerdings darin bestehen, dass man
sich ein fertiges Motormodul kauft mit bereits fest eingebauter
Geschwindigkeitsregelung, aber das ist eher eine kaufmännische als eine
technische Frage. Dann muss man sich aber auch mit der Frage genügender
Auflösung nicht selbst befassen.
Gruss Reinhard
Ich habe nie von einer gewünschten Auflösung von 1µm gesprochen,
geschweige denn davon, dass ich (ausschließlich) einen Resolver für eine
solche Aufgabenstellung einsetzen wollte!
Meine Aussage war kurz zusammengefasst: Selbst wenn für die
Positionierung eine relativ niedrige Geberauflösung ausreichend
erscheint, kann diese für die Drehzahlregelung deutlich zu gering sein.
Mit freundlichen Grüßen
Thorsten Ostermann