Winkelencoder, spezielle Auswertung gesucht

M

Michael Koch

Guest
Hallo,

ich suche ein Messgerät um das Signal von einem
Winkelencoder auszuwerten. Der Encoder liefert ein
Quadratur-Signal (zwei TTL Signale).
Der Encoder dreht sich mit (fast) konstanter
Geschwindigkeit, aber gegenüber einem Bezugssystem mit
gleichmässiger Winkelgeschwindigkeit eilt der Drehwinkel
manchmal etwas vor oder nach.
Diese Phasenverschiebung möchte ich als Diagramm über der
Zeit darstellen. Die mittlere Drehgechwindigkeit ist genau
bekannt.

Mit einem "Time Interval Analyzer", z.B. HP5371A, kann man
zumindest schon mal die Frequenz über der Zeit darstellen.
Davon müsste man dann aber noch die mittlere Frequenz
subtrahieren und dann integrieren, um die Phasenverschiebung
zu erhalten.

Gibt es so ein Messgerät fertig zu kaufen, oder ist
Selbstbau angesagt?

Michael
 
Michael Koch wrote:

Mit einem "Time Interval Analyzer", z.B. HP5371A, kann man
zumindest schon mal die Frequenz über der Zeit darstellen.
Davon müsste man dann aber noch die mittlere Frequenz
subtrahieren und dann integrieren, um die Phasenverschiebung
zu erhalten.

Gibt es so ein Messgerät fertig zu kaufen, oder ist
Selbstbau angesagt?
Gibt es einen Grund, warum Du ein Standalone-Meßgerät benötigst?
Ansonsten sollte sich das mit einem PC (gerne auch älter), ein paar
Zeilen Code und Standard-Tools (z.B. Gnuplot) recht einfach machen
lassen.

Gruß,
Michael
 
Hallo

Gibt es einen Grund, warum Du ein Standalone-Meßgerät benötigst?
ich vergass zu erwähnen dass ich die Phasenverschiebung wenn
möglich in Echtzeit sehen möchte, und nicht erst dann wenn
die Aufzeichnung abgeschlossen ist (das kann einige Minuten
dauern).

Ansonsten sollte sich das mit einem PC (gerne auch älter), ein paar
Zeilen Code und Standard-Tools (z.B. Gnuplot) recht einfach machen
lassen.
"Gnuplot" sagt mir (noch) nichts, danach muss ich mal
suchen. Über welche Schnittstelle kommen die Daten in den PC
rein?

Michael
 
On Tue, 01 Jul 2003 07:58:06 +0100, Michael Koch
<astro.electronic@t-online.de> wrote:
Gibt es so ein Messgerät fertig zu kaufen, oder ist
Selbstbau angesagt?
Für das Labor:
Gute Oszis mit "Analogrechner" a'la LeCroy kann man so
programmieren, dass die das auswerten. Die Jitter Messung
ist davon nicht soweit weg.
Wahrscheinlich könnte man auch einen guten Universalzähler
wie den HP53131/2 dazu bringen, das auszumessen, eine
Phasenmessung beherscht das Teil. Allerdings sollte man
ein Referenzsignal vorliegen haben (Generator).

Für Stückzahlen:
Die TI DSP's, die als Motor Controller gedacht sind haben
sowohl Hardware für Quadratur Encoder wie auch diverse
Capture/Compare Units aller Art on Board, inkl. A/D, der zu
einem geeigneten Zeitpunkt synchron *per Hardware* getriggert
wird und dann z.B. auch noch U/I misst.
Der TMS320LF2407 kostet ca. $10 und liefert die Daten dann
per integrierter serieller Schnittstelle, CAN oder SPI frei Haus.
Nur die Entwicklung ist dann eben *deutlich* aufwendiger.

Gruß Oliver

--
Oliver Bartels + Erding, Germany + obartels@bartels.de
http://www.bartels.de + Phone: +49-8122-9729-0 Fax: -10
 
Michael Koch wrote:

Gibt es einen Grund, warum Du ein Standalone-Meßgerät benötigst?

ich vergass zu erwähnen dass ich die Phasenverschiebung wenn
möglich in Echtzeit sehen möchte, und nicht erst dann wenn
die Aufzeichnung abgeschlossen ist (das kann einige Minuten
dauern).
Dann ist Gnuplot nicht so optimal. Trotzdem würde ich die PC-Methode in
Betracht ziehen: Encoder-Ausgänge an zwei Eingänge des Parallelports
hängen und entweder unter DOS oder unter Linux mit eigenem Treiber
auswerten. Linux würde ich bevorzugen, wenn nebenbei noch grafische
Auswertungen o.ä. gemacht werden sollen.

Gruß,
Michael
 
Hallo Oliver,

Gute Oszis mit "Analogrechner" a'la LeCroy kann man so
programmieren, dass die das auswerten. Die Jitter Messung
ist davon nicht soweit weg.
Wahrscheinlich könnte man auch einen guten Universalzähler
wie den HP53131/2 dazu bringen, das auszumessen, eine
Phasenmessung beherscht das Teil. Allerdings sollte man
ein Referenzsignal vorliegen haben (Generator).
Referenzsignal per Generator wäre kein Problem.

Aber das funktioniert nur, solange die Phasenverschiebung
kleiner als +-180 Grad ist. Diese Voraussetzung trifft in
meinem konkreten Fall leider nicht zu.
Und der Zähler hat vermutlich keinen analogen Ausgang um den
Phasenwinkel über längere Zeit aufzuzeichen.

Der TMS320LF2407 kostet ca. $10 und liefert die Daten dann
per integrierter serieller Schnittstelle, CAN oder SPI frei Haus.
Nur die Entwicklung ist dann eben *deutlich* aufwendiger.
Zu aufwendig :-( dann wäre es einfacher es auf einem
Mikrocontroller zu programmieren. Die Frequenz vom Encoder
ist nicht gross ( <10 Hz).

Gruss
Michael
 
On Tue, 01 Jul 2003 07:58:06 +0100, Michael Koch
<astro.electronic@t-online.de> wrote:

Hallo,

ich suche ein Messgerät um das Signal von einem
Winkelencoder auszuwerten. Der Encoder liefert ein
Quadratur-Signal (zwei TTL Signale).
Der Encoder dreht sich mit (fast) konstanter
Geschwindigkeit, aber gegenüber einem Bezugssystem mit
gleichmässiger Winkelgeschwindigkeit eilt der Drehwinkel
manchmal etwas vor oder nach.
Diese Phasenverschiebung möchte ich als Diagramm über der
Zeit darstellen. Die mittlere Drehgechwindigkeit ist genau
bekannt.

Mit einem "Time Interval Analyzer", z.B. HP5371A, kann man
zumindest schon mal die Frequenz über der Zeit darstellen.
Davon müsste man dann aber noch die mittlere Frequenz
subtrahieren und dann integrieren, um die Phasenverschiebung
zu erhalten.

Gibt es so ein Messgerät fertig zu kaufen, oder ist
Selbstbau angesagt?

Michael
Wie wäre folgendes:
Ein Signal des Quadratur-Signals (Drehrichtung ist ja konstant) und
das Ref-Signal integrieren. Beide Signale mit einem Oszi im
Differenzmode über den Schirm rollen lassen.. Mit einem Speicheroszi
lassen sich die Werte auch in den PC übertragen.

Ist natürlich analog. Ansonsten einen Microcontroller mit 2
Zählereingängen und die Differenz per RS232 an den PC.
Mit der Demoversion von z.B. http://www.iocomp.com/ dann in
Pseudo-Echtzeit darstellen.

Tschö
Dirk
 
Hallo Dirk,

Ein Signal des Quadratur-Signals (Drehrichtung ist ja konstant) und
das Ref-Signal integrieren.
Das verstehe ich noch nicht. Wie soll ich mir das
"Integrieren" bei einer Impulsfolge vorstellen?

Michael
 
On Tue, 01 Jul 2003 13:51:31 +0100, Michael Koch
<astro.electronic@t-online.de> wrote:

Hallo Dirk,

Ein Signal des Quadratur-Signals (Drehrichtung ist ja konstant) und
das Ref-Signal integrieren.

Das verstehe ich noch nicht. Wie soll ich mir das
"Integrieren" bei einer Impulsfolge vorstellen?

Michael
Du schriebst von einem Winkelencoder. Die üblichen, von denen ich
jetzt ausgegangen bin, haben 2 Ausgangsleitungen, bei der z.B. die 2
Leitung die gleichen Impulse wie die 1. Leitung nur um + oder -90°
Phasenverschoben (je nach Drehrichtung) abgeben. Die Kodierung ist
also ein Maß für die Drehrichtung und die Frequenz ein Maß für die
Geschwindigkeit.
Da Du geschrieben hast, das die Geschwindigkeit relativ konstant ist,
bin ich davon ausgegangen, dass sich die Drehrichtung nicht ändert.
Du brauchst also keine 2 Leitungen, weil Du die Drehrichtung nicht
änderst, sondern nur eine Leitung, die Dir auch die
Geschwindigkeitsinformation liefert.

Wenn Du dieses Signal nun integrierst (im einfachsten Fall 2
Widerstände, Kondensator, Diode (weil Tastverhältnis=const)) erhälst
Du eine analoge Spannung als Maß der Geschwindigkeit.

Subtrahierst Du im Oszi (Differenzmessung) das genau so integrierte
Referenzsignal erhälst Du als Ergebnis die Abweichung, die Du über den
Bildschirm rollen lassen und somit in Echtzeit sehen kannst..

Das ganze ist aber nicht überagend genau (dafür einfach), weshalb ich
die Controller-Lösung noch vorgeschlagen habe.

Tschö
Dirk
 
Hallo Dirk,

Du schriebst von einem Winkelencoder. Die üblichen, von denen ich
jetzt ausgegangen bin, haben 2 Ausgangsleitungen, bei der z.B. die 2
Leitung die gleichen Impulse wie die 1. Leitung nur um + oder -90°
Phasenverschoben (je nach Drehrichtung) abgeben. Die Kodierung ist
also ein Maß für die Drehrichtung und die Frequenz ein Maß für die
Geschwindigkeit.
Da Du geschrieben hast, das die Geschwindigkeit relativ konstant ist,
bin ich davon ausgegangen, dass sich die Drehrichtung nicht ändert.
Du brauchst also keine 2 Leitungen, weil Du die Drehrichtung nicht
änderst, sondern nur eine Leitung, die Dir auch die
Geschwindigkeitsinformation liefert.
Soweit ist alles korrekt.

Wenn Du dieses Signal nun integrierst (im einfachsten Fall 2
Widerstände, Kondensator, Diode (weil Tastverhältnis=const)) erhälst
Du eine analoge Spannung als Maß der Geschwindigkeit.
Das verstehe ich nicht. Wie soll die Schaltung aussehen?

Subtrahierst Du im Oszi (Differenzmessung) das genau so integrierte
Referenzsignal erhälst Du als Ergebnis die Abweichung, die Du über den
Bildschirm rollen lassen und somit in Echtzeit sehen kannst..
Ich möchte aber nicht die Geschwindigkeits-Differenz sehen
sondern die Winkel-Differenz.

Das ganze ist aber nicht überagend genau (dafür einfach), weshalb ich
die Controller-Lösung noch vorgeschlagen habe.
Genau, so mache ich das jetzt :)

Gruss
Michael

******************************************************
ASTRO ELECTRONIC Dipl.-Ing. Michael Koch
http://www.astro-electronic.de
Raabestr. 43 D-37412 Herzberg Germany
Tel. +49 (0)5521 854265 Fax +49 (0)5521 854266
******************************************************
 
Michael Koch wrote:

Wenn Du dieses Signal nun integrierst (im einfachsten Fall 2
Widerstände, Kondensator, Diode (weil Tastverhältnis=const)) erhälst
Du eine analoge Spannung als Maß der Geschwindigkeit.

Das verstehe ich nicht. Wie soll die Schaltung aussehen?
Einfach etwas, das bei jedem Impuls ein wenig aufgeladen und dann über
einen Widerstand langsam wieder entladen wird. Aber du willst das ja gar
nicht haben, wie im weiteren Text klar wird.

Subtrahierst Du im Oszi (Differenzmessung) das genau so integrierte
Referenzsignal erhälst Du als Ergebnis die Abweichung, die Du über den
Bildschirm rollen lassen und somit in Echtzeit sehen kannst..

Ich möchte aber nicht die Geschwindigkeits-Differenz sehen
sondern die Winkel-Differenz.
Dann mußt du eben die Impulse zählen und umrechnen, das ist doch
naheliegend, wenn für einen bestimmten Drehwinkel eine bestimmte Anzahl
Impulse ausgegeben wird, findest du nicht? Magst du mir die encoder
geben? Ich hätte bestimmt eine Verwendung für so etwas. :)

Das ganze ist aber nicht überagend genau (dafür einfach), weshalb ich
die Controller-Lösung noch vorgeschlagen habe.

Genau, so mache ich das jetzt :)
Das würde ich annehmen, aber warum dieser Smiley?

Gruss
Michael

******************************************************
ASTRO ELECTRONIC Dipl.-Ing. Michael Koch
http://www.astro-electronic.de
Raabestr. 43 D-37412 Herzberg Germany
Tel. +49 (0)5521 854265 Fax +49 (0)5521 854266
******************************************************
Der bist du? Jetzt verstehe ich gar nichts mehr! Du bist Dipl.Ing? Hast
die FS2-Steureung gebaut, bietest Winkelencoder an etc.? Du müßtest dich
doch im Gegensatz zu mir bestens mit der ganzen Materie auskennen?
Tiefpaß, Hochpaß, Integratorschaltungen gehören doch außerdem zum
Grundstudium. Ich hätte vermutet, du setzt dich ein paar Tage hin und
schreibst eine neue Software für deine Steuerung, die die Encodersignale
inklusive Drehrichtung mal eben ausweret und für eine Goto-Steuerung
berücksichtigt?

Gruß Lars
 
Nimm eine FPGA Karte mit USB Schnittstelle.
Dann kannst du die Anzahl der Systemtakte zwischen
aufeinanderfolgenden Drehgebersignalen zählen und zum
PC übertragen. Mit ein paar Zeilen C-code ist die
"Echtzeit" Anzeige dann realisierbar.
Allerdings müsstest du dir auch "VHDL" draufschaffen
falls du keinen Bekannten hast, der die die Zähler
in VHDL hinschreiben kann.

- Manfred Kraus

Sorry, kanns mir nicht verkneifen:
P.S. FPGA Karten gibts z.B. bei mir :)
www.fpga-karten.de


"Michael Koch" <astro.electronic@t-online.de> schrieb im Newsbeitrag
news:3F0183D3.4001713E@t-online.de...
Hallo Dirk,

Ein Signal des Quadratur-Signals (Drehrichtung ist ja konstant) und
das Ref-Signal integrieren.

Das verstehe ich noch nicht. Wie soll ich mir das
"Integrieren" bei einer Impulsfolge vorstellen?

Michael
 
Hallo Lars,

Ich hätte vermutet, du setzt dich ein paar Tage hin und
schreibst eine neue Software für deine Steuerung, die die Encodersignale
inklusive Drehrichtung mal eben ausweret und für eine Goto-Steuerung
berücksichtigt?
technisch gesehen ist es natürlich gar kein Problem diese
Messung auf einem Mikrocontroller zu programmieren. Ist aber
ein paar Tage Arbeit. Und bevor man das macht, fragt man
besser erst mal nach ob es nicht schon ein fertiges
Messgerät dafür gibt.
Das scheint aber nicht der Fall zu sein, also wird jetzt
selber programmiert.

Gruss
Michael
 

Welcome to EDABoard.com

Sponsor

Back
Top