Forum: Analoge Elektronik und Schaltungstechnik Frequenz in Spannung wandeln


von annn (Gast)


Lesenswert?

Hallo Experten,

Zur Drehzahlbestimmung möchte ich eine Frequenz, eine TTL-Pulskette vom 
Geber, in eine analoge Spannung umwandeln. Bei Nenndrehzahl beträgt die 
Frequenz 30kHz.


Ich verwende im Moment den f/U- Wanlder LM2917 von Texas Instruments. 
Leider ist das gute Stück zu langsam. Denn ich möchte mit meiner Messung 
Umschaltvorgänge (Linkslauf- zu Rechtslauf) messen können. Mit diesem 
Chip eile ich der Drehzahl immer einige ms nach.

Ich weiss dass ich zu langsam bin, weil ich gleichzeitig auch Strom und 
Spannung messe.

Hat jemand von euch eine Idee für ein besseres IC oder für eine 
schnellere Schaltung um eine Pulskette in eine Spannung zu wandeln?


Danke für eure Hilfe
Annn

von Udo S. (urschmitt)


Lesenswert?

annn schrieb:
> Ich weiss dass ich zu langsam bin, weil ich gleichzeitig auch Strom und
> Spannung messe.

Seit wann hängt Strom/Spannung von (einem Motor?) von der Drehzahl ab?

Um was geht es eigentlich hier?
Siehe Netiquette etwas mehr Angaben wären Sinnvoll.
Wie schnell soll sich denn deine Drehzahl ändern können. In 
Millisekunden ändern sich höchstens Drehzahlen von Zahnarztbohrern 
relevant.

von Sandro (Gast)


Lesenswert?

Ich würde das mit einem kleinen µC machen. Wenn man einen µC findet, der 
Input caupture und einen DAC hat kann man das Signal damit relativ 
schnell in eine Spannung umwandeln

von annn (Gast)


Lesenswert?

Hallo,

Ja, da war ich ein wenig zu knapp im Beschreiben. Es handelt sich um 
eine 3-Phasen ASM. Ich weiss, dass ich zu langsam bin, weil ich die 
Wirkleistung mit der Drehzahlvergleichen kann.

Ich logge Strom und Spannung mit einer Messkarte, deshalb kann ich auch 
keinen Mikrocontroller verwenden. Ich möchte am Schluss Strom, Spannung 
und Drehzahl zusammen loggen.


Pardon für die knappe erste Beschreibung.
Annn

von Sandro (Gast)


Lesenswert?

annn schrieb:
> Ich logge Strom und Spannung mit einer Messkarte, deshalb kann ich auch
> keinen Mikrocontroller verwenden.

Wenn du das gemessene Signal mit einem DAC als Spannung ausgiebst kannst 
du sie dann mit einem Analogeigang einer Messkarte einlesen.
Diese Lösung ist sehr schnell, das Ausgangssignal des µC wir einmal pro 
Periode des Messsignals aktualisiert.

von NitroBor (Gast)


Lesenswert?

Einen Frequenz zu spannungskonverter baut man mit einem Monoflop : 
Konstanter Puls. Dann ist die Spannung proportional zur Frequenz.

von Udo S. (urschmitt)


Lesenswert?

annn schrieb:
> s handelt sich um
> eine 3-Phasen ASM. Ich weiss, dass ich zu langsam bin, weil ich die
> Wirkleistung mit der Drehzahlvergleichen kann.

Ja und?
Die Leistungsaufnahme ändert sich schlagartig, die Drehzahl nur langsam, 
weil da ein großes Trägheitsmoment im Wege steht.

Das ist als ob du meinst ein LKW könnte in einer 10tel Sekunde von 0 auf 
80 beschleunigen, nur weil du siehst daß jemand das Gaspedal schnell 
durchdrückt.

von annn (Gast)


Lesenswert?

Hallo NitroBor,
ja genau, und ich glaube nach dem gleichen Prinzip funktioniert mein 
LM2917-Wandler von Ti. Trotzdem ist das Ding nicht schnell genug...

Hallo Udo Schmitt,
ja das ist mir bewusst. Aber, wenn ich die elektrische Wirkleistung und 
die mechanische Leistung anschaue, dann darf die mechanische Leistung ja 
nie höher sein als die elektrische.

Aber genau das passiert mir hier wenn ich eine Drehrichtungsumkehr 
vornehme. Und ich glaube das kommt so heraus, weil meine Drehzahlmessung 
zu langsam ist.

Vielen Dank für eure Hilfe.
Annn

von Udo S. (urschmitt)


Lesenswert?

Und wie ermittelst du die mechanische Leistung.

von Nay (Gast)


Lesenswert?

annn schrieb:
> Aber, wenn ich die elektrische Wirkleistung und
> die mechanische Leistung anschaue, dann darf die mechanische Leistung ja
> nie höher sein als die elektrische.

Wiederlegung: Wenn die Maschine schlagartig elektrisch getrennt wird, 
dann läuft sie noch etwas nach (Trägheit). Also mechanische Leistung 
ohne elektrische Lesitung.

von annn (Gast)


Lesenswert?

Hallo Udo,

das ist genau der wunde Punkt... Die mechanische Leistung bestimme ich 
mit der Drehzahl. Das Massenträgheitsmoment meiner Maschine ist bekannt.

Also ganz simpel: pmech = M * Omega

mit

M = Massenträgheitsmoment * d/dt(Omega)

von annn (Gast)


Lesenswert?

Hallo Nay,

ja da hast du recht, aber ich trenne meine Maschine hier nie vom Netz, 
ich nehme lediglich eine Drehrichtungsumkehr vor.

Die Maschine befindet sich so nie im Generatorbetrieb.

Ich bin ziemlich sicher, dass meine Schaltung ganz einfach zu langsam 
ist. Deshalb bin ich auf der Suche nach einem anderen IC, oder einem 
anderen Messprinzip um eine Frequenz in eine analoge Spannung zu 
wandeln.

Annn

von Amateur (Gast)


Lesenswert?

>Die Maschine befindet sich so nie im Generatorbetrieb.

Darauf würde ich nicht wetten.

Du treibst Deinen Motor an und steckst somit Energie rein.
Wenn Du nun stoppen und/oder die Drehrichtung ändern willst brauchst Du 
eine Bremse um ohne den Generatorbetrieb zum Stillstand zu kommen. 
Andernfalls erzeugt Dein Motor, zusammen mit der Last bzw. angekoppelten 
Masse Energie. Das geschieht auch beim ganz normalen "Auslaufen". Auch 
mit einer Bremse wird, dann natürlich kürzer und weniger, Energie 
erzeugt.

von Amateur (Gast)


Lesenswert?

Um noch mal auf den LM2917 zurückzukommen.
Ich kann mir einfach nicht vorstellen, dass der, bezogen auf 
massegekoppelte Frequenzänderungen, zu langsam ist.

Kann es sein, dass die aktuelle Beschaltung ungünstig gewählt wurde?
Die Reaktionszeit hängt sehr stark von der Beschaltung ab. Also ev. zu 
großzügig gewählte Ladekondensatoren und/oder Entladewiderstände?

von annn (Gast)


Lesenswert?

Hallo, Amateur

auch an dich ein Dankeschön. Ja bleiben wir beim LM2917... du hast recht 
mit dem Motorgeneratorbetrieb... ich glaube ich muss da nochmal über die 
Bücher...

Aber die Beschaltung vom LM2917 habe ich richtig ausgelegt. Ein Problem 
das ich sowieso mit diesem Bauteil habe, ist der grosse Frequenzbereich 
den ich abdecken muss. Deshalbe gefällt mir die Lösung von Sandro 
eigentlich sehr gut.

Die Vorgänge sind tatsächlich sehr schnell. Die Umschaltung von 
Nenndrehzahl Linkslauf nach Nenndrehzahl Rechtslauf dauert ca. eine 
Sekunde.

Annn

von annn (Gast)


Angehängte Dateien:

Lesenswert?

Hallo nochmal,

noch zur Vollständigkeit, hier noch ein Plot der die mechanische und die 
elektrische Leistung  beim Hochfahren von 0 bis in den Leerlauf zeigt 
Die rote Kurve beschreibt die mechanische Leistung. Die blaue Kurve 
beschreibt die elektrische Leistung. Beide Kurven in Funktion der Zeit.

Hier ist eindeutig, dass die Messung nicht stimmt. Beim Hochfahren darf 
die mech. Leistung offensichtlich nie höher werden als die elektrische.

Bei ca. 3s befindet sich die Maschine im Leerlauf.

Annn

von Amateur (Gast)


Lesenswert?

Nun wenn es nur um die Frequenz-Spannungswandlung geht, könnte, das 
nötige Know-how vorausgesetzt, ein µP das Problem lösen.

Ein Sechs- bzw. Achtfüßer kost' fast nix und kann Dir sogar zwei 
Messmethoden kombinieren.
Bei hohen Drehzahlen werden die Impulse pro Zeiteinheit erfasst, bei 
geringen die Pulsabstände.

Bitte bedenke aber: Hier wird sehr schnell mit einem: "Nimm doch einfach 
einen XY-µP" geantwortet. Das gilt aber nur für die Leute, die sich 
damit auskennen. Dann ist es wirklich ein Klacks.
Ist das ganze neu für Dich, so kommt das volle Programm bestehend aus 
Elektronik (Beschaltung), Strukturanalyse (wie ist so ein µP aufgebaut 
bzw. Strukturiert) und die Programmierung auf Dich zu. Also nix, was man 
so zwischen Frühstück und Mittag erledigt.

von annn (Gast)


Lesenswert?

Hallo Amateur,

Danke für deine Antwort. Ganz neu sind Microcontroller nicht für mich. 
Ich habe mir gedacht, ich löse das Problem mit einem simplen AtMega16.
Ich lese die Pulse mit einem externen Interrupt ein, und kreiere so ein 
PWM Signal. Mit einem AtMega16 komme ich so sogar ohne ADC aus, die 
Pulse von meinem Geber sind wunderschöne TTL- Pulse...

Ich hoffe das wird mein Problem lösen.
Annn

von Udo S. (urschmitt)


Lesenswert?

annn schrieb:
> Die Vorgänge sind tatsächlich sehr schnell. Die Umschaltung von
> Nenndrehzahl Linkslauf nach Nenndrehzahl Rechtslauf dauert ca. eine
> Sekunde.

Was für eine ASM ist das? Eine mit 100mW???

Oder überlastest du die mit Faktor 10 und sie hat gar nichts 
anzutreiben?

Wenn die Kästchen im Diagramm Sekunden sind, dann ist die Verzögerung um 
0,2s am Anfang wirklich seltsam.

Aber eins verstehe ich nicht. Du hast offensichtlich Encoder Signale, 
die du in ein analoges Spannung/Drehzahl umwandelst. Gleichzeitig 
rechnest du aber, was auf einen µC oder so hindeutet.
Warum zum Geier verarbeitest du dann die digitalen Drehzahlsignale nicht 
gleich digital?

von Udo S. (urschmitt)


Lesenswert?

annn schrieb:
> Ich habe mir gedacht, ich löse das Problem mit einem simplen AtMega16.
> Ich lese die Pulse mit einem externen Interrupt ein, und kreiere so ein
> PWM Signal.

Stichwort "Input Capture".
Und danach machst du keine PWM sondern verarbeitest dein digitales 
Signal auch digital weiter. Warum bitte das analog wandeln und dann 
wieder mit einem A/D digital. Du hast es doch schon digital!

von Udo S. (urschmitt)


Lesenswert?

Amateur schrieb:
> Bei hohen Drehzahlen werden die Impulse pro Zeiteinheit erfasst, bei
> geringen die Pulsabstände.

Eine ASM hat keine so hohen Drehzahlen, daß die Impulsdauermessung nicht 
die bessere Version wäre.
Bedenke er will das Ergebnis ms schnell.
Ein µC mit 10MHz zählt da schon auf 10000, so genau braucht er es gar 
nicht.

von annn (Gast)


Lesenswert?

Hallo Udo,

Nein, es handelt sich um eine 3kW-Maschine. Aber die Drehrichtungsumkehr 
läuft von im Leerlauf ab. Deshalb die schnellen Vorgänge.

Ich lese die Strom und Spannungswerte von Messwandlern auf eine 
Messkarte ein. Bei Nenndrehzahl liefert mir der Geber eine Pulskette von 
30kHz.

Es ist sehr schwer die Frequenz wirklich genau zu messen, zumal meine 
Karte auf einem nicht echtzeitfähigen PC unter Windows läuft. Ich habe 
das Versucht, mit Zählern etc. das Funktioniert bei tiefen Frequenzen 
prima, bei hohen Frequenzen wird der Fehler zu hoch.

Wenn ich die Drehzahl wie die Spannungen und die Ströme als 
Analogssignal logge, bietet das auch den Vorteil, dass ich die Frequenz 
immer bezogen auf die Ströme und Spannungen aufzeichne.

Sonst müsste ich Spannung, Strom, Frequenz mit einem Zeitstempel 
versehen,  und man hätte keine äquidistanten Messpunkte mehr.

Deshalb möchte ich die Frequenz als Analogsignal aufzeichnen.

Annn

von Amateur (Gast)


Lesenswert?

>Eine ASM hat keine so hohen Drehzahlen, daß die Impulsdauermessung nicht
>die bessere Version wäre.

@Udo
Da müsste man den Impulsgeber fragen. Kann aber die Drehzahl in 1 
Sekunde umgeschaltet werden, so scheint es sich um Locker und Leicht zu 
handeln - oft auch schnell.

@annn
Sicher kannst Du einen AtMega16 verwenden - vor allem, wenn Du einen 
über hast. Allerdings langweilt der sich zu Tode und ist riesengroß.
Ein ATTiny mit 8 Füßen reicht vollkommen aus. Soweit mir bekannt haben 
die genügend Ressourcen, sind schnell genug und brauchen kaum Platz.

von Udo S. (urschmitt)


Lesenswert?

Amateur schrieb:
> @Udo
> Da müsste man den Impulsgeber fragen. Kann aber die Drehzahl in 1
> Sekunde umgeschaltet werden, so scheint es sich um Locker und Leicht zu
> handeln - oft auch schnell.

Er hat gesagt 30kHz.
Bei 1ms Dauer:
Impuse zählen 30 +-1 entspricht Fehler von +-3,3%
Zähler laufen lassen mit Vorteiler 1 und 10MHz Takt: 333 Ticks pro 
Impuls, Fehler: QuarzFehler plus ca 0,3%.

von Sandro (Gast)


Lesenswert?

annn schrieb:
> Mit einem AtMega16 komme ich so sogar ohne ADC aus, die
> Pulse von meinem Geber sind wunderschöne TTL- Pulse...

Von einem ADC hab ich nie etwas gesagt, sondern von einem DAC (Digital 
to anlog converter)
Er DAC hätte den Vorteil gegenüber pwm, dass du bei PWM noch einen 
Tiefpass brauchst der dir das Signal eventuell etwas verzögert. Wenn du 
nur wenige bits Auflösung brauchst kannst du dir einen DAC aus einem 
R2R-Netzwerk bauen, wenn du mehr brauchst würde ich einen fertigen IC 
verwenden. Der MCP4911 z.B. hat 10bit, SPI und kommt im 8 Pin gehäuse.

von annn (Gast)


Lesenswert?

Hallo Sandro,

ja da hasst du recht. Denkst du die Variante mit dem DAC ist wirklich 
schneller als die PWM-Methode? Schliesslich braucht der DAC ja auch 
seine Zeit...

Danke
Annn

von Sandro (Gast)


Lesenswert?

Im DB des DACs steht: "Fast Settling Time of 4.5 μ" und ich habe keine 
Ahnung wie lange ein AVR brauch um 2 Byte über SPI an den DAC zu senden.

von Sandro (Gast)


Lesenswert?

Der DAC kann 20MHz SPI, dann wären die Daten also in <1µs im DAC und 
noch 4.5μs settling time mach eine Verzögerung der Ausgabe von 5.5µs + 
noch die Zeit die der µC brauch um die Frequenz aus den Timerwerten 
auszurechnen

von annn (Gast)


Lesenswert?

Ok, aber es diese Lösung ist sicher aufwändiger zu programmieren als die 
PWM-Methode...aber eigentlich auch schöner, da gebe ich dir volkommen 
recht.

von Sandro (Gast)


Lesenswert?

annn schrieb:
> Ok, aber es diese Lösung ist sicher aufwändiger

Ich schätze die Programmierung nicht so aufwändig ein. Man muss ja nur 
das SPI initialisieren und pro Messwert zwei Bytes senden, bei PWM hat 
man auch die Initialisierung und abhängig von der Auflösung ein bis 
zweit Bytes pro Messwert in ein Register zu schreiben.
Die Schaltung könnte ein bisschen aufwendiger werden und wenn du keine 
Referenzspannung anlegen willst gibt es den MCP4811 mit 10bit und 
interner 2.048V Referenz. Beide DACs gibt es falls du das braucht auch 
mit 8bit oder 12bit.

von m.n. (Gast)


Lesenswert?

annn schrieb:
> Hat jemand von euch eine Idee für ein besseres IC oder für eine
> schnellere Schaltung

Ich glaube, alles gelesen zu haben, und weiß immer noch nicht, was 
"schnell" bedeuten soll.

von Kein Name (Gast)


Lesenswert?

Oder erst mal mit einem Speicheroszilloskop und einer Lichtschranke die 
wirkliche Beschleunigungskurfe aufzeichnen. Schauen, wie weit die LM2917 
Messung davon abweicht. Mit dem Scope kannst du dann nachher auch dein 
AVR-Programm testen.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Zur Periodendauermessung (das ist ja gesucht) kann man wie im LM2917 
oder einem anderen Monoflop die Frequenz in eine PWM umwandeln, muss 
dann aber tiefpassfiltern um die PWM-Frequenz wegzubekommen. Das 
verursacht eine Verzögerung.
Die andere ist der klassische Frequenzzähler/Periodendauermesser, der 
liefert sofort nach jeder Schwingung ein Ergebnis, das ein DA-Wandler 
fast verzögerungsfrei ausgibt.

von MaWin (Gast)


Lesenswert?

annn schrieb:
> Ich verwende im Moment den f/U- Wanlder LM2917 von Texas Instruments.
> Leider ist das gute Stück zu langsam.

Alle Chips, die den Impuls in einen Impuls fester Länge verwandeln, und 
dann die Spannung über die Zeit mitteln, sind langsam weil der Filter 
mehrere Perioden auch bei langsamer Drehzahl filtern muss.

Schneller sind prinzipiell Periodendauermessungen, analog kann man das 
mit einem per (nahezu) Konstantstrom aufgeladenen Kondensator machen, 
der bei jeden Impuls (steigende Flanke) in ein Sample&Hold als 
Ausgangssignal übertragen wird und auf 0V zurückgesetzt wird. Da 
schlagen schon leichte Drehzahlfluktuationen von Umdrehung zu Umdrehung 
unmittelnbar auf die Ausgangsspannung durch.

Man kann das natürlich auch per uC machen.

von Amateur (Gast)


Lesenswert?

> Hat jemand von euch eine Idee für ein besseres IC oder für eine
> schnellere Schaltung

Geh mal davon aus, dass die Physik - genauer die Mathematik - hier 
keinen Spielraum lässt.

Je sauberer das Ausgangssignal ist, desto mehr wurde "gelogen". Meist 
via Tiefpass. Gleichzeitig reagiert ein solches System auch nur noch 
entsprechend träge.
Je schneller ein solches System reagiert, desto "rauer" wird das 
Ausgangssignal. Aber meist auch schneller.

Daher habe ich vorgeschlagen, mit ein paar künstlich generierten 
Signalen, z.B. mit einem programmierbaren Tongenerator, die Kombination 
aus Widerstand und Kondensator, am IC, zu "optimieren".

Das optimalste (sorry) Ergebnis wirst Du wohl mit einem µP plus 
D/A-Wandler - kein PWM - erreichen. PWM ist wohl die billigste Lösung, 
aber das dazu nötige Filter kann Dir vieles wieder kaputtmachen.

von annn (Gast)


Lesenswert?

Ok, vielen Dank an alle, ihr habt mir wirklich sehr geholfen.

Ich habe mich nun auch dazu entschlossen die PWM-Variante zu verwerfen 
und einen Microcontroller + D/A -Wandler zu verwenden.

Danke nochmals
Annn

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
Noch kein Account? Hier anmelden.