Hallo!
Ich entwerfe mein erstes Konzept für eine Motoransteuerung, dabei sind
folgende Frage aufgetreten:
Was bedeuten die Parameter ppr (pulses per revolution) und cpr (counts
per revolution) bei Encodern? Gibt es hier einen Unterschied oder ist
das das gleiche?
Ich verwende einen MAXON DC Servomotor (treibt über Riemen eine
Spindel, die dann eine Linearbewegung eines Tisches ausführt) und
benötige eine Auflösung von mindestens 2 µm. Welche Informationen
benötige ich sonst noch dazu bzw. wie kann ich diese Auflösung in die
Parameter cpr bzw. ppr umrechnen, um den passenden Encoder auszuwählen?
Vielen Dank für die Hilfe!
LG
Das ist leider nicht so wirklich "genormt".
Ein Inkremental Encoder gibt ja zwei um 90° versetzt Rechtsignale aus (A
und B).
Eine Signal Periode (bestehende aus je zwei Flanken auf A und B, also
vier Flanken) nennt man i.d.R. einen "Strich".
Ein Encoder mit 5000 Strichen (pro Umdrehung) macht also je 10000
Flanken auf A und B, also 20000 Flanken (pro Umdrehung).
Wieviel µm das nun sind, ergibt sich über die mechanische Kopplung,
jenachdem wie der Encoder an den Tisch angeschlossen ist (z.B. über ein
Rad mit einem gewissen Umfang etc.)
Heinz schrieb:> eibt über Riemen eine> Spindel, die dann eine Linearbewegung eines Tisches ausführt) und> benötige eine Auflösung von mindestens 2 µm. Welche Informationen> benötige ich sonst noch dazu bzw. wie kann ich diese Auflösung in die> Parameter cpr bzw. ppr umrechnen, um den passenden Encoder auszuwählen?
Indem du die lineare Bewegung der Spindel pro Umdrehung kennst. Auch
Spindelsteigung genannt.
ohne Spindelsteigung kann man leider nicht sagen wie viele Inkremente du
für eine Umdrehung haben musst.... Wenn du die hast kannst du dir das
doch schön zurückrechnen:
10 mm Steigung bei 2 µm pro Inkrement -> 5000 Inkremente
Das decken zum Beispiel die Inkrementalgeber von Avago gut ab. Schau
dich da mal um.
Danke für die Informationen!
Ich werde auf alle Fälle gleich mal versuchen, die Spindelsteigung
herauszufinden.
Das mit dem Riemen versteh ich nicht ganz: Mir ist klar, dass der Riemen
elastisch ist und das die Auflösung beeinflussen könnte.
@aGast: Was meinst du damit, wenn der Encoder auf der
Kugelkontrollspindel sitzt? Es ist im aktuellen Konzept tatsächlich so
vorgesehen, dass der Encoder nicht direkt auf dem Motor, sondern auf der
Spindel sitzt. Warum hat die Elastizität des Riemens dann keinen
Einfluss mehr?
VIELEN DANK!
Heinz schrieb:> Kann mir jemand erklären, warum es eine bessere Auflösung bringt, wenn> der Encoder auf der Spindel und nicht direkt am Motor sitzt?>> Danke, lG
stell dir einfach vor, Motor und Spindel sind über ein Gummi verbunden.
Der Motor kann sich also schon viel weiter gedreht haben als die
Spindel. Wenn du die Position vom der Spindel wissen willst, hilft es
also nicht am Motor zu messen.
> sondern auf der Spindel sitzt. Warum hat die Elastizität des Riemens dann >keinen Einfluss mehr?
Für die genaue Position ist es besser, wenn der Drehgeber auf der
Spindel sitzt. Für die Regelung ist es besser, wenn der Drehgeber auf
dem Motor sitzt.
Ein Teufelskreis.
Heinz schrieb:> treibt über Riemen eine> Spindel, die dann eine Linearbewegung eines Tisches ausführt
Warum? Du willst eine Linearbewegung genau messen, warum nimmst du dann
nicht gleich einen Linearmassstab mit 1 oder 2 µ Auflösung? Das
Interface ist das gleiche, und der Referenzpunkt ist auch damit
festgelegt, mit der gleichen Genauigkeit, und die Elastizität des
Riemens ist egal.
In beiden Fällen kannst du die Flanken des Impulses auswerten, daher ist
cpr = 2 * ppr, aber dann weisst du die Richtung nicht. Daher verwendet
man 2 um die halbe Impulslänge versetzte Impulse, damit hat man 4
Flanken und cpr ist 4 * ppr. Voraussetzung der Zähler macht das so,
nennt sich Vierfachauswertung und ist üblich. Nimmst du also einen
Glasmassstab mit einer Periode von 10 µ, so hast du eine Zählerauflösung
von 2,5 µ.
Gruss Reinhard
Matthias Lipinsky schrieb:>> Für die genaue Position ist es besser, wenn der Drehgeber auf der> Spindel sitzt. Für die Regelung ist es besser, wenn der Drehgeber auf> dem Motor sitzt.>> Ein Teufelskreis.
Ich kenne Systeme, die haben beide Drehgeber installiert. Ansonsten hat
man keine Kontrolle, ob z.B. der Riemen gerissen ist oder
durchrutscht...
Vielen Dank für Eure Antworten,
das mit der Elastizität des Riemens und dem Unterschied zwischen Encoder
auf Motor oder Encoder auf Spindel ist mir jetzt klar.
@ Reinhard: das mit dem Linearmaßstab ist aus Platzgründen nicht
möglich...
Wenn ich nun folgenden Encoder (auf der Spindel) verwende:
SCANCON SCH24-500-D: hat 500 ppr
http://www.scancon.dk/specifications/SCH24-specifications.pdf
und eine Spindelsteigung von 2mm habe, dann habe ich eine Auflösung von
2mm/500 = 4µm, richtig?
Sprich: für eine Auflösung von mindestens 2 µm müsste ich den Encoder
mit 1000 ppr nehmen, richtig?
Danke vielmals, seid mir eine große Hilfe!!
Heinz schrieb:> und eine Spindelsteigung von 2mm habe, dann habe ich eine Auflösung von> 2mm/500 = 4µm, richtig?
Lesen sollte man können - ich beschreibe jetzt aber nicht nochmal, was
4fach-Auswertung ist. Wenn du es nicht verstehst, ist es sicherer, eine
möglichst hohe Auflösung zu nehmen, zuviel schadet ja nicht.
Gruss Reinhard
@ Daniel: nein, weiß ich nicht, kannst du mich darüber aufklären?
@all:
Ich hab mir das mit der Auflösung jetzt noch mal überlegt: Wenn ich den
oben beschriebenen Encoder:
http://www.scancon.dk/specifications/SCH24-specifications.pdf
mit 500ppr bei einer Spindelsteigung von 2mm verwende, dann ergibt sich
die Auflösung zu:
2mm/(4*500) = 1µm
Ist das korrekt?
Ich denke, ich versteh jetzt den Unterschied zwischen ppr und cpr: cpr
ist die Anzahl der Flanken und ppr die Anzahl der Pulse (also positive +
negative Flanke)?
Heinz schrieb:> Ich denke, ich versteh jetzt den Unterschied zwischen ppr und cpr: cpr> ist die Anzahl der Flanken und ppr die Anzahl der Pulse (also positive +> negative Flanke)?
Ja. Wobei man einschränkend feststellen muss, dass der Zähler eben auch
alle 4 Flanken zählen muss - das tut jeder professionelle
Positions-Zähler, weil die Flanken ja da sind, nichts extra kosten und
es daher blödsinnig wäre auf die Auflösung zu verzichten. Aber bei
irgendeiner Zählsoftware für einen µController ist das nicht unbedingt
so, da muss man schon drauf achten, dass 4fach vor/rückwärts geht. Da
gibts aber unendlich viel im Internet dazu, und es gibt auch µController
mit eingebautem Interface dafür.
Gruss Reinhard
Hey, vieln Dank!
Die Motoren werden über einen Motion Controller angesteuert, ich werde
abklären, ob diese jede Flanke wie besprochen auswerten können.
Allerdings verwirrt mich jetzt trotzdem noch etwas:
http://www.pwb-encoders.com/products/miniature-encoders/me22
Auf dieser Seite steht:
Auflösung bis zu 360 CPR (Impulse pro Umdrehung)
Wie oben erwähnt, dachte ich, dass cpr count pro umdrehung bedeuten,
warum steht hier impulse? Sind hier mit Impulse wirklich die Flanken
gemeint?
Vielen Dank, lG
Ich mach dieses Konzept zum allerersten mal, könnte BITTE ein Experte
nur ja oder nein schreiben, ob meine oben angeführten Berechnungen nun
richtig oder falsch sind. Wenn sie falsch sind, werde ich mich bemühen,
dies zu korrigieren.
DANKE!
Hallo Heinz,
dass passt so, wenn kein weiteres Getriebe (z.B. Riemenstufe mit i<>1)
dazwischen ist.
Der Hinweis auf die Genauigkeit bezieht sich bei hier (Encoder mit
TTL-Ausgang ohne nachgeschaltete Interpolation) mehr auf die Mechanik.
Im Gegensatz zu einer direkten Messung mit einem linearen Messsystem
misst Du hier die Fehler der Spindel (Steigungsfehler, Längenwachstum
durch Erwärmng usw.) nicht mit. Im µm-Bereich sind das schon kritische
Einflußgrößen. Bezüglich der Genauigkeit der Spindel musst du dich mit
dem Lieferanten in Verbindung setzen. Chinaware würde ich für so ein
Projekt jedenfall nicht einsetzen.
Mit freundlichen Grüßen
Thorsten Ostermann
Lade Dir das Datenblatt dazu, da stehen alle Antworten.
Als Impulse/Umdrehung wird immer nur ein Kanal angegeben. Die Auflösung
bei Rechtecksignalen erhöht sich bei Auswertung aller Flanken um Faktor
4.
Um Dich noch ein wenig weiter zu verwirren: es gibt auch Enkoder, die
Sinussignale liefern und bei entsprechender Auswertung eine deutlich
höhere Auflösung bieten.
Ich sehe gerade, ich bin ja garnicht Thorsten :-(
Hm ,
das bedeutet aber, dass meine Berechnung vom post 21.01. 17:20 so nicht
stimmt.
Angenommen, ich verwende beide Kanäle und es werde von der
Auswerteeinheit alle Flanken ausgewertet, dann müsste die Berechnung
doch so aussehen:
Spindelsteigung = 1mm
cpr = 300
Auflösung = 1mm / (300 * 4) = 0,83 µm
Ist das so korrekt?
Dankesehr, lG
Heinz schrieb:> das bedeutet aber, dass meine Berechnung vom post 21.01. 17:20 so nicht> stimmt.
Doch, bei 1-fach Flankenauswertung.
Heinz schrieb:> Auflösung = 1mm / (300 * 4) = 0,83 µm>> Ist das so korrekt?
Auch, bei 4-fach Flankenauswertung.
:) Danke!
Im Prinzip gibt es ja dann wieder keinen Unterschied zwischen ppr und
cpr... Denn dieser cpr Wert wäre dann das Gleiche wie der ppr Wert vom
anderen Encoder, der angeführt wurde (Scancon).
Aber egal, ich nehme in Zukunft einfach den Wert her, der angegeben ist
(cpr oder ppr) und berücksichtige die Auswertung (einfach, vierfach).
Danke für Eure Hilfe!
Kann mir jemand den oben angesprochenen Unterschied zwischen Auflösung
und Genauigkeit sagen? Auflösung ist mir klar, aber was bedeutet in
diesem Zusammenhang die Genauigkeit?
Hallo Heinz!
Hast Du meinen Beitrag von gestern nicht gelesen? Oder bezieht sich
deine Frage jetzt auf Geber mit nachgeschalteter Interpolation? Da
spielt u.U. auch noch die Genauigkeit der Maßverkörperung
(Strichteilung) eine Rolle.
Mit freundlichen Grüßen
Thorsten Ostermann