PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Messung der Schallgeschwindigkeit



George
30.07.2004, 12:22
Hi,

ich möchte die Schallgeschwindigkeit in Luft (oder auch andere) messen.
Dafür habe ich ein Ultraschallsender (400ST) und Empfänger (400SR) von Conrad.
Die Schaltung habe ich von hier übernommen und etwas modifiziert. Mit einem µController soll das ganze gemacht werden. Der Controller ist ein Atmel AT89S8252 mit 24MHz. Der Controller erzeugt die 40kHz Frequenz für den Sender. Das ist zwar die leistungsschwächere Variante, aber es reicht aus. Denn Sender und Empfänger stehen gegenübereinander
in einer Entfernung von 5cm. Wenn die Schallgeschwindigkeit 344 m/s ist, dann muss t=145µs sein. Die Zeit von 145µs kann von dem AT89S8252 gemessen werden. d.h. ich muss nur diese Zeit messen können.
Die Empfängerschalltung habe ich so modifiziert, so dass wenn der Sender nichts abstrahlt, dann ist Empfänger-Schalltungsausgang auf High (--> Controllereingang - Interrupt negative Flanke getriggert).
Wenn der Controller den Sender aktiviert, wird auch einen Timer gestartet (16 Bit mit ca. 32ms Zeit zum Overflow mit eine Auflösung von 0,5 µs). Nach ca. 145µs sollte das Signal beim Empfänger ankommen und detektiert werden.
Wird ein Signal detektiert, dann wird ein Interrupt ausgelöst. In dieser Interruptroutine wird der Timer gestoppt, Timerinhalt gelesen, Sender wird wieder deaktiviert, und alles wird zurückgesetzt. Die Messung kann neu anfangen.

1. PROBLEM: Timerinhalt ist 584, d.h. eine Zeit von 584/2=292µs (das sollte doch ca. 145µs sein).
2. PROBLEM: Dieser Messwert ist zwar bei einer konstanten Entfernung (5cm) konstant. ABER manchmal tauchen andere Werte auf wie (576/2=288µs) und (536/2=268µs).
FRAGE: Warum messe ich die Zeit fast doppelt soviel es sein sollte, und wo kommen die zwei andere Werte her? Strahlt der Sender nicht immer zeitgelich?. Schaltet der Empfänger auch nicht immer zeitgleich? Oder ist es programmierfehler? Oder hängt es davon ab, wie die ansprichzeiten der elektronik Bauteile?


Danke

Goerge

Manf
30.07.2004, 13:22
Wenn so ein Wandler vom Controller angesteuert wird, dann zeigt er ein in etwa identisches Anschwingverhalten. Immer die gleiche Phase. Nach ein paar Schwingungen ist die Aplitude beim Sender angestiegen, es kommt die Laufzeit dazu und der Empänger schwingt auch an.

In irgend einer Periode wird schließlich der Detektionspegel überschritten. Das geschieht zu den ausgewählten Phasenlagen zu denen die Schwingung größer ist als die vorherige, die den Pelgel nicht erreicht hat.
Die ausgewählten Phasenlagen unterscheiden sich um jeweils eine Periodendauer.

Die Schallgeschwindigkeit auf diese Weise zu messen ist ausgesprochen unüblich. (weil auch wenig erfolgreich)

Die höchste Genauigkeit wird man mit einer solchen Anordnung von Wandlern erreichen, wenn man das Empfangssignal verstärkt auf den Sender zurückkoppelt und die Frequenz mißt.
Manfred

tobimc
30.07.2004, 17:58
HI George!

Verbinde doch mal den Senderausgang mit einem Wiederstand
direkt mit dem Empfänger und lies' die Zeit aus. Diese Konstante
(sollte eine sein! Mach mehrere Messungen!) ziehst du
jedes mal von der ermittelten Zeit ab.
Dann soltest du eigentlich auf die Nettolaufzeit des Signals
kommen.
Wenn die Elektronikverzögerung vom Mal zu Mal unterschiedlich ist, solltest du auch einen Eichvorgang programmieren...

Liebe Grüße, Tobi

Manf
31.07.2004, 08:26
Ich wollte den Meßvorgang mit dem anschwingenden Empfänger noch einmal ansprechen weil es vielleicht auch grundsätzlich interessant ist.

Im Bild ist in der hellblauen Kurve die Spannung am Empfänger dargestellt.

Die Schaltschwelle ist das orangene Band. Es ist etwas breit, für alle Streuungen und Störungen im Meßablauf und zur Demonstration.

Die grüne Kurve zeigt nur an, welche Werte schon erreicht wurden, sie hilft zur Berechnung der Häufigkeitsverteilung der Meßwerte über der Zeit. Die Dichte der Meßwerte über der Zeit und damit auch Ihre Wahrscheinlichkeit ist nämlich gerade durch die Steigung der grünen Kurve gegeben. Diese Steigung muß dazu noch mit der Dichte der Schaltschwellenwerte im orangenen Band multipliziert werden, aber die Dichte der Schaltschwellenwerte wurde hier als konstant angenommen.

Die Steigung der günen Kurve innerhalb des Bandes ist in gelb aufgetragen. Hier erkennt man, daß einige Teilbereiche recht wahrscheinlich sind und, daß der Gesamtbereich Lücken hat.

Die grüne Kurve müßte bei einer guten Konfiguration recht steil durch den Schwellertbereich laufen und nicht zwischendurch stehenbleiben.
Manfred

sonic
31.07.2004, 12:16
...durch den Schwellertbereich laufen und nicht zwischendurch stehenbleiben.
Manfred

Ich kann mich noch dunkel daran erinnern das wir in der Schule den Versuch nach Manf's Art durchgeführt haben, aber das war keine Sinusschwingung, sondern immer ein kurzer Knackser. 5cm sind auch extrem kurz, kann man die Strecke nicht größer machen? Dann sind die Zeiten auch nicht so kurz...alternativ könnte man doch auch die Phasenverschiebung messen...

Gruß, Sonic

Manf
31.07.2004, 12:29
Die 5 Schwingungen von 40kHz sind sicher nicht nur ein "Knackser" sondern höchstens ein "Knx". Bei 5cm Strecke hat man so aber leicht einen Fehler von 10%.
Man braucht Meßgenauigkeit aber nicht zu verschenken "wenn man das Empfangssignal verstärkt auf den Sender zurückkoppelt und die Frequenz mißt".

Manfred