Hallo, ich steh grad etwas aufm Schlauch. Ich habe ein Tachosignal, welches mir 256 Impulse / Umdrehung ausgibt. Diese Impulse zähle ich, in einem Fenster von 204,8ms. Welchen maximalen Messfehler habe ich damit? Ich komm einfach nicht drauf wie man es berechnen kann. Drehzahlauswertung und sowas funktioniert bereits, geht jetzt nur um dem Messfehler. Der Drehzahlbereich ist von 1-1500 Umdrehungen pro Minute. Danke, Ingo
Ingo L. schrieb: > Hallo, > > ich steh grad etwas aufm Schlauch. Ich habe ein Tachosignal, welches mir > 256 Impulse / Umdrehung ausgibt. Diese Impulse zähle ich, in einem > Fenster von 204,8ms. Welchen maximalen Messfehler habe ich damit? Ich > komm einfach nicht drauf wie man es berechnen kann. Drehzahlauswertung > und sowas funktioniert bereits, geht jetzt nur um dem Messfehler. Angenommen du beginnst dein Zeitfenster exakt mit der steigenden Flanke des ersten Pulses. Dann ist es recht unwahrscheinlich, dass dein letzter Puls im Zeitfenster auch exakt mit dem Zeitfenster endet. D.h. dein Problem ist, dass in das Zeitintervall sehr wahrscheinlich keine ganze Zahl an Pulsen fällt. Jetzt kannst du dir ja mal überlegen, wie sich die Situationen am Anfang bzw. Ende des Zeitintervalls ergeben. Je nachdem wie sich die Zeiten ausgehen, müsstest du zb 183.4 Pulse pro Zeitintervall zählen. Das geht natürlich nicht, denn du kannst ja nur ganze Pulse zählen. Du wirst vielleicht einmal 183 Pulse zählen, einmal 184 oder auch nur 182, je nachdem wie gerade der Puls liegt, wenn sich das Zeitfenster öffnet, bzw. wenn sich das Zeitfenster schliesst. Je nach tatsächlich gezählten Pulsen im Zeitfenster kriegst du aber rechnerisch eine andere Drehzahl. Die andere Fehlerquelle ist natürlich das Zeitfenster selbst. Wie genau kannst du denn die 204.8ms erzeugen? Wie kommst du auf diese 208.4ms? Ich schätze mal, dass du die von einem Quarz abgeleitet hast. Auch wenn auf einem Quarz 8Mhz draufsteht, so hat der nicht exakt 8000000.00000 Schwingungen in der Sekunde. Dementsprechend hast du auch nicht exakt 204.8ms. Allerdings wird dieser Fehler recht klein sein, denn Quarze haben keine sehr große Abweichung von der Sollfrequenz. Der Fehler, den du durch die nicht ganzzahligen Verhältnisse der Pulsanzahl zur Länge des Zeitfensters hast, wird wesentlich größer sein und überwiegen.
Karl Heinz hat die die beiden Fehler schon genannt. Interessant in dem Zusammenhang ist wie du deine Frequenz überhaupt misst. Wenn man wie du eine Torzeit definiert und da die Impulse zählt, dann wird deine Auflösung und auch die Genauigkeit umso höher, je mehr Impuls pro Torzeit vorhanden sind. Um also die Genauigkeit und die Auflösung zu erhöhen muss entweder deine Pulsfrequenz höher sein oder deine Torzeit länger. Für langsame Impulse gibt es aber noch eine andere Möglichkeit zu messen. Du misst die Dauer eines Impulses, indem du anfängst eine feste und bekannte Frequenz zu zählen sobald du z.B. die positive Flanke des Impulses erkennst und stoppst den Zählvorgang bei der nächsten positiven Flanke. Bei einer Frequenz von 1MHz und einer Impulsdauer von 1ms hast du hier schon eine Auflösung von 1000, und (ohne die Ungenauigkeit deiner Messfrequenz zu berücksichtigen) eine Genauigkeit von +- 1/1000 = +-0,1%. Hier ist es genau umgekehrt, je kürzer die Impulse werden desto ungenauer wird die Messmethode.
Ingo L. schrieb: > Der Drehzahlbereich ist von 1-1500 Umdrehungen pro Minute. Wie Udo gerade schon geschrieben hat, verwendet man dafür eine reziproke Messung. Diese ist ganz einfach. Beitrag "einfache Drehzahlmessung mit ATmega88" Beitrag "Frequenz, Drehzahl, 4x7-Segment LED, Multiplex-Betrieb" Beitrag "Frequenz / Drehzahl, 4-stell. 7-Segm.-LCD, ATtiny45" Beitrag "4-Kanal Drehzahlmessung mit ATmega88" Um nur ein paar Beispiele zu zeigen ;-)
Das ist ein schönes Beispiel um den Timer besser kennenzulernen und programmieren zu üben. Man kann einen Frequenzzähler programmieren, der beide Methoden kann. Im einfachen Fall schaltet man die per Schalter um. Im nächsten Schritt kann das Programm so erweitern, daß es anhand einer ersten Messung entscheidet, welche die bessere Methode ist und dynamisch die bessere Methode wählt, indem man eine Schwelle definiert bei der beide Methoden die gleiche (Un)genauigkeit haben. Dann kann man von Messung zu Messung immer die bessere Methode für die nächste Messung entscheiden. Stichwort für die 2. Methode wäre "Input Capture Mode".
Ingo L. schrieb: > Hallo, > > ich steh grad etwas aufm Schlauch. Ich habe ein Tachosignal, welches mir > 256 Impulse / Umdrehung ausgibt. Diese Impulse zähle ich, in einem > Fenster von 204,8ms. Welchen maximalen Messfehler habe ich damit? Ich > komm einfach nicht drauf wie man es berechnen kann. Drehzahlauswertung > und sowas funktioniert bereits, geht jetzt nur um dem Messfehler. > > Der Drehzahlbereich ist von 1-1500 Umdrehungen pro Minute. > > > Danke, > Ingo Nehmen wir mal die Mindestdrehzahl: Eine Umdrehung pro Minute == Eine Umdrehung pro 60s == Eine Umdrehung pro 60000ms 256 Impulse == 60000ms 1 Impuls == 234,375ms Dein Zeitfenster: 204,8ms Ich würde das nicht als Meßfehler, sondern als komplett ungeeignet bezeichnen.
Erstmal danke für die Infos. Bis jetzt habe ich auch immer den Impu-Capture für sowas genommen, ich wollte hier aber explizit die Puls-Zähl-Methode nehmen. Norbert schrieb: > Ich würde das nicht als Meßfehler, sondern als komplett ungeeignet > bezeichnen. Für diesen Fall zähle ich die Torzeiten indem sich nichts tut, bis sich wieder etwas am Zählerstand getan hat. Wenn sich nach n Torzeiten nichts getan hat, definiere ich die Drehzahl zu null. Karl Heinz schrieb: > Wie genau > kannst du denn die 204.8ms erzeugen? Wie kommst du auf diese 208.4ms? Die leite ich aus einem Quarz ab, der natürlich auch seine Fehler hat, die ich aber vernachlässige. Die 204,8ms leite ich aus meinen Systemtakt x 2048 ab, mein Systemtakt beträgt demnach 10kHz... Udo Schmitt schrieb: > Im einfachen Fall schaltet man die per Schalter um. Ja, ich denke das wäre die Methode der Wahl. Kommt für mich aber nicht in Frage, da ich die Maschinendrehzahl sowieso nur in ganzen Umdrehungen/min anzeige und ein Autorange nicht benötigt wird. Für mich geht es allein um den zu erwartenden Messfehler bei einer beliebigen Drehzahl z.B. 1500 U/min. So wie ich das sehe liegt er bei 1 Timerincrement. Was sich dann tatsächlich als eine U/min manifestiert. Die Torzeit zu erhöhen bringt natürlich Besserung, macht aber das ganze langsamer, besonders wenn man noch über z.B. 8 Werte gleitend mittelt, dann wird es recht träge. Ingo
Ingo L. schrieb: > Diese Impulse zähle ich, in einem Fenster von 204,8ms. Welchen > maximalen Messfehler habe ich damit? > ... > Der Drehzahlbereich ist von 1-1500 Umdrehungen pro Minute. Dein Messfehler hängt von der Drehzahl ab und kann, bezogen auf die tatsächliche Drehzahl, 100% betragen. Bezogen auf den Anzeigewert kann dein Fehler unendlich groß werden. Probiers mal mit einem reziproken Zähler, wie er z.B. im Artikel Frequenzzählermodul beschrieben ist.
Mike A. schrieb: > Probiers mal mit einem reziproken Zähler, wie er z.B. im Artikel > Frequenzzählermodul beschrieben ist. Es funktioniert alles, es geht nur um den Messfehler bei 1500 U/min. Es ist mehr oder weniger nur eine theoretische Problemstellung, nämlich die, wie berechne ich den Messfehler bei Drehzahl n. Danke, Ingo
Ingo L. schrieb: > Die leite ich aus einem Quarz ab, der natürlich auch seine Fehler hat, > die ich aber vernachlässige. Die 204,8ms leite ich aus meinen Systemtakt > x 2048 ab, mein Systemtakt beträgt demnach 10kHz... ???
Ingo L. schrieb: > Es funktioniert alles, es geht nur um den Messfehler bei 1500 U/min. > Es ist mehr oder weniger nur eine theoretische Problemstellung, nämlich > die, wie berechne ich den Messfehler bei Drehzahl n. Dann rechne einfach aus, wie viele Pulse minimal bzw. maximal in dein Torzeit fallen (je nach Phasenlage). Statistisch musst du dir dann überlegen, wie deine Fehlerangabe genau normiert sein soll. Da du dabei keine Normalverteilung hast, greifen dir dort üblichen Maße wie 1-Sigma, 2-Sigma ... (je nach Signifikanz) natürlich nur bedingt.
Ingo L. schrieb: > Es ist mehr oder weniger nur eine theoretische Problemstellung, nämlich > die, wie berechne ich den Messfehler bei Drehzahl n. In grober Näherung: n + unendlich Sag Deinem Lehrer, er soll sinnvolle Fragen stellen.
Ingo L. schrieb: > es geht nur um den Messfehler bei 1500 U/min m.n. schrieb: > In grober Näherung: n + unendlich Schwarzmaler ...
Mike A. schrieb: >> In grober Näherung: n + unendlich > > Schwarzmaler ... Nein, er hat nur die Hälfte gelesen. Sonst wüsste er das es bei 1500 U/min nicht n + unendlich sondern n = 1 ist. Inzwischen konnte ich mir die Frage selber beantworten. Danke
Hier nochmal eine allgemeine Berechnungsgrundlage: Np = 1/Ttor * 60 A = Np / Nist Np = nötige Impulszahl pro Umdrehung für U/min Auflösung Nist = tatsächliche Impulszahl pro Umdrehung A = tatsächliche Auflösung
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.