Forum: Mikrocontroller und Digitale Elektronik Filterung bei Drehzahlmessung


von Drehzahlmessung (Gast)


Lesenswert?

Hallo Forum,

mit einem Hallsensor wird an einem Zahnrad die Drehzahl eines 
Verbrennungsmotors gemessen.
Hierbei wird offenbar die Zeit zwischen zwei gleichen Zahnflanken 
gemessen.
Ich erhalte vom Sensor einen zeitproportionalen Zahlenwert.

Nun stimmt dieser Wert so lange, bis der sensorintegrierte Zähler beim 
Start oder beim auslaufen des Motors überläuft (bzw. mehrfach 
überläuft).

Die Folge ist, beim Abschalten, dreht der Motor langsam aus, die 
angezeigte Drehzahl fällt entsprechend der Motordrehzahl, bis dann der 
Zähler überläuft und Drehzahlwerte welcher einer hohen Drehzahl 
entsprechen liefert.
Auch diese Werte fallen wieder, bis es zum zweifachen Zählerüberlauf 
kommt und die falschen Werte nochmals falscher werden.

Wie kann man die Drehzahlkurve an im Bereich der langsamen Drehzahl 
online richtig approximieren, um eine bessere Drehzahlanzeige zu 
ermöglichen.

Gleitende Mittelwerte oder PTn-Glieder führen nicht zum Ziel, da ja ab 
dem Punkt alle folgenden Werte falsch und viel dynamischer als die 
wirkliche Drehzahl sind.

Meine Notlösung wäre lineare Regression und Extrapolation der letzten 
glaubwürdigen Steigung, jedoch wird die Wahrheit wohl eher eine 
e-Funktion ähneln.

Welche Möglichkeiten fallen Euch ein?

Gruß dz

von Helmut L. (helmi1)


Lesenswert?

Drehzahlmessung schrieb:
> Auch diese Werte fallen wieder, bis es zum zweifachen Zählerüberlauf
> kommt und die falschen Werte nochmals falscher werden.

Du must den Überlauf in deiner Software abfangen. Wenn man die Drehzahl 
durch eine Periodendauermessung messen möchte muss man bei einer 
bestimmten unteren Drehzahl sagen: Jetzt ist Schluss Welle steht. Ist 
halt so bei Periodendauermessung. Sonst wartest du bis in alle Ewigkeit 
ob der Motor sich noch dreht.

von Karl H. (kbuchegg)


Lesenswert?

Drehzahlmessung schrieb:

> Die Folge ist, beim Abschalten, dreht der Motor langsam aus, die
> angezeigte Drehzahl fällt entsprechend der Motordrehzahl, bis dann der
> Zähler überläuft und Drehzahlwerte welcher einer hohen Drehzahl
> entsprechen liefert.

Du weißt aber, dass das physikalisch nicht möglich ist.
Wenn du daher diesen gewaltigen Sprung drinnen hast, weißt du, dass der 
Sensor einen Überlauf hatte.
Entweder berücksichtigst du diesen Überlauf oder du zeigst einen "Error 
- Messwert nicht erfassbar" an.


Wobei: Den Motor auslaufen lassen ist ja noch einfach.
Unangenehmer ist, dass somit zu deinem Sensor mehrere Drehzahlen zum 
selben Messwert gehören. Und die kannst du nicht einfach unterscheiden. 
D.h. beim Hochfahren der Motoren weißt du nicht, ob das Messergebnis 
jetzt der realen Drehzahl entspricht oder einem Vielfachen davon. Da 
bleibt dir nichts anderes übrig als anzunehmen, dass der Motor im von 
Sensor korrekt erfassbaren Bereich läuft, wenn sich die Drehzahl 
stabilisiert hat.

: Bearbeitet durch User
von c-hater (Gast)


Lesenswert?

Drehzahlmessung schrieb:

> Wie kann man die Drehzahlkurve an im Bereich der langsamen Drehzahl
> online richtig approximieren, um eine bessere Drehzahlanzeige zu
> ermöglichen.

Durch Detektierung der sich ergebenden Sprünge natürlich und auf der 
Sprungdetektion beruhender variabler Interpretation der Sensorwerte.

Quasi ein "Sensor-Automatikgetriebe".

Möglich ist das, allerdings wäre der Aufwand viel geringer und das 
Ergebnis viel zuverlässiger, wenn du dir statt dessen einfach Zugang zum 
Rohsignal des Sensors verschaffst und einen eigenen Zähler (mit 
ausreichendem Zählumfang) verwendest.

von Drehzahlmessung (Gast)


Lesenswert?

Karl Heinz Buchegger schrieb:
> Du weißt aber, dass das physikalisch nicht möglich ist.

ja, natürlich weiß ich das. Da ich den Sprung nach oben später begrenze,
kann ich auch genau auf diesen begrenzten Wert prüfen und habe den 
Zeitpunkt, ab welchem Wert nur noch Unsinn ankommt.

Und genau das ist der Punkt, an dem ich mogeln will und den Rest 
approximiert anzeigen will.

Meine Hilfsmittel wären die Mathematik, meinetwegen Approximationen aus 
Offline-Trendauswertungen aus Excel, sogar Werte für Reibungskomponente 
und Massenträgheitsmoment ließen sich ermitteln.

...nur wie?

von Karl H. (kbuchegg)


Lesenswert?

Drehzahlmessung schrieb:

> Meine Hilfsmittel wären die Mathematik, meinetwegen Approximationen aus
> Offline-Trendauswertungen aus Excel, sogar Werte für Reibungskomponente
> und Massenträgheitsmoment ließen sich ermitteln.
>
> ...nur wie?

Gar nicht.

Der Sprung markiert den Overflow.
Entweder du rechnest den Overflow dann selber ein, oder du verweigerst 
die Auskunft mangels nicht vom Sensor erfassbarer Werte.

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.