Guten Tag, Ich wollte ein wenig Hilfe haben bezüglich Schalldruckmessung. Ich wollte ein Schallsensor bauen, mit ein Messbereich von 130-150db in 0,2db schritten. Zu messende Frequenz wäre zwischen 30-60Hz. Grundlage warum ich es brauch ist mein Hobby dB Drag. Die dort verwendeten Messgeräte kosten ca.700 Euro und nennen sich Termlab. Die haben aber ein weit größeren Messbereich und sind ziemlich genau. Die dort verwendeten Drucksensoren sind MPXS4100A. Ich hab ein FPN-07PG zur Verfügung. Wollte mit ein OP das Ausgangssignal verstärken und zum ATtiny26 schicken. Nun kommen 2 Probleme auf: 1. Ich weiß nicht genau wieviel kPA/mV der Sensor rausgibt, da ich das Datenblatt nicht genau verstehe: http://pdf1.alldatasheet.com/datasheet-pdf/view/203306/FUJIKURA/FPN-07PG.html 2. Also die Sinuswelle einlesen sollte mit dem Attiny kein Problem sein, aber den Wert logarithmisch von kpa in db umzurechnen ist für mich ein Problem. Kann mir jemand helfen, oder Tipps geben? MfG Christian
Zu 1): Da der FPN-07PG einen Messbereich von ±48,26 kPa hat, würde ich das Datenblatt so verstehen, daß als Ausgangsspannung der Brücke die angegebene "Full Scale Span Voltage" von irgendwas zw. 40 und 130mV bei rauskommt. Meiner Einschätzung nach unterliegt dieses Teil damit einer recht großen Fertigungstoleranz - aber das nur als Randbemerkung. In Relation zum MPXS4100A, der mit 54 mV/kPa angegeben ist, würde ich für den FPN-07PG irgendwas im Bereich von 0,414... mV/kPa bis 1,346... mV/kPa errechnen. Sein "Full Scale" Messbereich geht ja von -48,26 kPa bis +48,26 kPa, was einen "Full Scale"-Bereich von 96,52 kPa ergeben würde. Damit ist der MPXS4100A um bis zu etwa 100-fach empfindlicher als der von Dir angedachte FPN-07PG! Wenn man jetzt noch hochrechnet, welche Meßspannung sich bei den z.B. 150dB ergeben würde, so steht Dein Sensor denkbar schlecht da. MPXS4100A => 54 mV/kPa * 0,63 kPa = 34,02 mV FPN-07PG => 0,414 mV/kPa * 0,63 kPa = 0,26...mV Bedenke also, daß Du mit Pegeln im µV-Bereich arbeitest, wo Rauschen schon eine große Rolle spielt. Mein Tip: Beiß lieber in den sauren Apfel und nimm 'nen gescheiten, und vor allem empfindlichen, Sensor - auch wenn der um einiges teurer ist. Zu 2): Die Angabe "dB" ist eine Relation von zwei Werten. Die Dezibel, die man in der Audio-Technik bei Lautsprechern verwendet, legen als (Luft-)Referenzwert 20 µPa fest. In andern Medien, wie z.B. Wasser nimmt man einen anderen Wert (1 µPa). Wenn Du mal nach http://de.wikipedia.org/wiki/Schalldruck gehen würdest, und nach (fast) ganz unten scrollst, kommst Du zu einer (Schalldruck-)Tabelle. Nehmen wir mal das Düsenflugzeug auf 30m Entfernung, das einen Schalldruck p von 630 Pa erzeugt. Setzen wir diese Werte in die (Dir hoffentlich bekannte) Gleichung ein: 20 * LOG (630Pa / 20µPa) = 149,966...dB Das stimmt ganz auffallend mit dem Wert in der Spalte des Schalldruckpegels Lp überein.
Vermutlich wäre da ein Elektret Mikrophon besser. Die gehen auch in dem Frequenzbereich den Du suchst. Das mit den logarithmieren ist eigentlich ganz einfach. 1. Du bildest den RMS-Wert, beispielsweise in dem Du die Werte quadrierst und dann tiefpassfilterst. Ein Filter 1. Ordnung sollte reichen. 2. Du nimmst einige der Werte (Schritt 1 führst Du ja für jeden Abtastwert durch) und machst damit folgenden Algorithmus: l:=0; while (msb(wert)=0) DO BEGIN inc(l); wert:=wert SHL; END; An dieser Stelle ist nun wert ganz nach links geschoben, und in l steht drin, wie weit das war. Somit hast Du schon mal ganz grob den Logarithmus. Willst Du den noch genauer haben, so schau Dir mal den Rest in wert an, und wie der zu verrechnen ist. Eine einfache quadratische Annäherung ist schon sehr genau.
Danke erstmal für die Tipps! Mit dem Mikrofon hab ich auch schon überlegt, Sollen allerdings nicht so gut bei über 140db sein, Da nehmen alle Hersteller die ich kenn Drucksensoren für. Und die Hersteller haben sich da bestimmt was bei gedacht. Ich hab mir jetzt ein Durcksensor bestellt: MPXHZ6115A6U http://www.datasheetcatalog.com/datasheets_pdf/M/P/X/H/MPXHZ6115A6U.shtml Der hat eine höhere Auflösung und hat nicht so eine große Fertigungstoleranz. Laut Datenblatt gibt er mir nur positive Spannungen. Könnte man so am µC anschließen und berechnen. Bei dem ADC Eingang(10bit) wären die Schritte im unterem Bereich so um die 6db, erst im höheren Bereich wirds genauer. Deswegen wollte ich 1,4V oder gegebenenfalls 0,7V als Referenzspannung nehmen, Leider ist der Nullpunkt vom Sensor ca. bei 4V (Durch dem Luftdruck). Einfach einmalig mit ein OP Offset verschieben funktioniert warscheinlich nicht, da der Luftdruck schwankt. Hat jemand eine Idee, oder hab ich ein gedanklichen Fehler?
Ahh, Du brauchst einen Hochpass. Den setzt Du dann einfach auf weniger als die tiefste Frequenz die Du messen möchtest und Du bekommst Dein Signal.
Christian Berger schrieb: > Ahh, Du brauchst einen Hochpass. Den setzt Du dann einfach auf weniger > als die tiefste Frequenz die Du messen möchtest und Du bekommst Dein > Signal. So hat sich einiges getan. Der Sensor ist mit den Hochpass und Multimeter ca. +-1db genau. Leider ist durch Hochpass frequenzabhängig. und wenn die Trennfrequenz zu weit unten ist, ist es auch noch träge. Mein Multimeter ist nicht sehr genau, sowieso nicht in µV Bereich. Das Signal was ich bekomm ist bei ca. 4V Offset und ist ein Sinus von 0-20mV, je nach dem, wie laut es ist. Passend dazu hab ich eine Tabelle, die, wo ich mV in dB nachschauen kann. Wollte am liebsten, das es in Echtzeit angezeigt wird, mit Attiny26 einlesen und auf LCD anzeigen. Hab ich kein Ansatz, wie ich am besten das mV Signal zum µC bekomm, ohne frequenzabhängigen Hochpass. Und einmalig die 4V Offset rauskompensieren geht nicht, da der relative Luftdruck schwankt. Also ist wohl nichts anderes als Hochpass+Verstärker möglich, oder?
Bei dem Preis würde ich nicht basteln: http://www.reichelt.de/?;ACTION=3;LA=444;GROUP=D132;GROUPID=4028;ARTICLE=42330;START=0;SORT=artnr;OFFSET=16;SID=15YIYfvawQAQ8AAGAFEoodfbd75fd407c50a2781a769a89e01e2b
Hab ich auch schon nach gesucht, aber die messen nicht linear sondern nach einer bestimmten Kennlinie (A oder C). Es gibt absolute Schallmesser (SPL), aber die gibts erst ab 700€ aufwärts. Und mein zu messender Bereich sollte zwischen 120 - 155dB liegen, weit über dem von Reichelt. Mein Sensor läuft ja, aber es kommt eine Mischspannung raus. 3,6-4,4V DC Anteil und 1-50mV AC Anteil Ich will nur den DC Anteil rausbekommen so das ich den AC Anteil von 20-80Hz mit ein µC auswerten kann. Einmalig Offset einstellen geht nicht, da der DC Anteil im Tagesverlauf schwankt. Ohne Hochpass ist es wohl nicht möglich das zu messen, oder?
Hallo Christian, jetzt muß ich doch mal genauer lesen, was Du da vorhast. Ein Schalldruckpegel von 155dB dürfte in der Nähe dessen sein, bei dem der "Lautsprecher" Vakuum zieht. 20 * log_10(p/2E-5Pa) = 155 dB <=> p = 2E-5 Pa * 10^(155/20) = 1124 Pa Wenn ich richtig gerechnet habe, ist der Umgebungsdruck (1013 Hekto-Pascal) noch etwa 100x größer als die akustische Druckschwankung. Trotzdem ist das schon sehr laut. > Hab ich auch schon nach gesucht, aber die messen nicht linear sondern > nach einer bestimmten Kennlinie (A oder C). Es gibt absolute > Schallmesser (SPL), aber die gibts erst ab 700€ aufwärts. Wenn Du bandbegrenzt mißt, sollte Dich das nicht sonderlich stören. Die A- und C-Kennlinien sind keine Geheimnisse. > Und mein zu messender Bereich sollte zwischen 120 - 155dB liegen, weit > über dem von Reichelt. Ok, das ist ein Grund. > Mein Sensor läuft ja, aber es kommt eine Mischspannung raus. > > 3,6-4,4V DC Anteil und 1-50mV AC Anteil > Ich will nur den DC Anteil rausbekommen so das ich den AC Anteil von > 20-80Hz mit ein µC auswerten kann. > > Einmalig Offset einstellen geht nicht, da der DC Anteil im Tagesverlauf > schwankt. > > Ohne Hochpass ist es wohl nicht möglich das zu messen, oder? Vielleicht wäre es sinnvoll zu untersuchen, weshalb der Gleichanteil so schwankt. Wenn der Sensor auf Gleichdrücke reagiert, kann das sogar akustische Gründe haben (Stichwort: Langevinscher" Schallstrahlungsdruck). (Bei hohen Wechseldrücken, wie sie bei Dir vorliegen, verhält sich die Luft stark nichtlinear. Die lineare Akustik geht schließlich von der Linearisierung der Adiabatengleichung pv^(kappa)=konstant aus, also einer Gleichung, die von sich aus kein bißchen linear ist. Das Resultat ist, daß ein Lautsprecher dann im Bereich maximaler Amplitude ständig Luft von sich weg drückt; der Kolben drückt gewissermaßen mehr Luft weg, als er später "zurücksaugt".) Wenn die starken Schwankungen nicht auf einen Meß- oder Konstruktionsfehler zurückgehen, müßtest Du irgendwas Hochpaßähnliches bauen. Ich würde wahrscheinlich eine analoge Variante bevorzugen, die ungefähr folgendermaßen aussieht: - Sensorspannung puffern (OPV mit Verstärkung 1) und das Signal auf zwei Pfade senden 1.) über einem Tiefpaß (Zeitkonstante von >10s). Dieser Tiefpaß liefert den aktuell gültigen Gleichanteil. 2.) Signal unverändert lassen Anschließend würde ich beide Signale 1.) und 2.) mit einem OPV-Subtrahierer oder einem Differenzverstärker (Elektrometerverstärker, z. B. INA114 und folgende - je nachdem, was am besten paßt) verstärken. Wenn Du diese Operation im µC realisisest, ist es am besten, wenn Du den Mittelwert über ein sehr langes Signal (Vorsicht: evtl. Probleme mit Speicher im Atiny) oder besser noch über ein Vielfaches der Periodendauer des Signals bestimmst. Gruß, Michael
Erstmal danke für den Beitrag, Also der Gleichstromanteil schwankt so, da der Athmosphärendruck schwankt. Also je nach Wetterlage, vermute ich mal. Desswegen kann ich den "Offset" nicht einmalig wegjustieren, weil wie du schon sagtest der Luftdruck 100x so hoch ist, und nicht konstant bleibt. Momentan läuft es so: Sensor --- Hochpass --- AC Spannungsmesser (mit 100µV Auflösung) Und es ist im Vergleich zum 700€ Termlab Messgerät "nur" 1dB daneben. Dann fang ich mal an, wie du beschreiben, zu Basteln, und mal sehen, wie genau es wird. PS: Das der Lautsprecher Vakuum zieht, hab ich noch nicht bemerkt, aber ist auch eine Membranfläche von 1400cm². Dennoch ist ein Starker Windzug im mein Auto, so das leichte Sachen im Auto durch die gegend schwirren. Natürlich Sitz ich dann nicht im Auto.
Mir stellt sich gerade die Frage, welchen Einfluß der Helmholtzresonator des Sensors hat? Ist der überhaupt schnell genug? den DC-Anteil kann man doch per AC-Kopplung mit C entfernen! Dann gleichrichten und zum ADC
Ja Sensor ist schnell genug, auf ein Oszilloskop lässt sich sogar das Clipping von meiner Endstufe nachweisen, was mich schon sehr erstaunt hat, das man Clipping einer Endsufe an der Luftschwankung sehen kann. Helmholtzresonation ist minimal --> großes, kurzes Loch im Gehäuse --> hohe Fequenz. Ich rechne die Frequenz trotzdem mal aus, nicht das ich mir irre. Kondensator und AC Übertragung hat immer eine Verfälschung mit sich, die ich vermeiden will, und bei einer Spannung von 50mV ist das Gleichrichten auch nicht so einfach. aber ich probier morgen mal das mit den OPV aus, wenn das klappt ist das Problem schon erledigt. Aber danke, wenn ich noch ein extra Gehäuse um den Sensor bau muss ich wegen Resonation aufpassen, hab daran auch garnicht gedacht.
Hallo Christian, >Also der Gleichstromanteil schwankt so, da der Athmosphärendruck >schwankt. Ok. > Kondensator und AC Übertragung hat immer eine Verfälschung mit sich, die > ich vermeiden will, und bei einer Spannung von 50mV ist das > Gleichrichten auch nicht so einfach. Hmm. Mein Vorschlag ist auch ein Hochpaß, sogar ein relativ umständlicher. Ich hatte beim Schreiben die (falsche) Vorstellung im Kopf, daß man die Grenzfrequenz bei dem von mir vorgeschlagenen Weg mit kleineren Kondensatoren auskommen kann. Wahrscheinlich kommen Deine Probleme daher, daß Du die Grenzfrequenz nicht niedrig genug gewählt hast und die Filterordnung zu gering ist. Hochpaßfilter höherer Ordnung ----------------------------- Eine Idee wäre daher, daß Du den Hochpaßfilter mit einem Filter 4. Ordnung statt wie ich vermute 1. Ordnung (RC-Glied) zu realisieren. Eine Möglichkeit besteht in einer OPAMP-Schaltung (zwei hintereinandergeschaltete Hochpaßfilter. Sehr bequem dürfte es sein, wenn Du einen sogenannten Switched-Capacitor-Filter verwendest: http://para.maxim-ic.com/en/search.mvp?fam=filt&275=Universal&tree=filters IIR-Filter im µC ----------------- Was Du im µC relativ gut realisieren kannst, ist ein IIR-Hochpaßfilter (IIR = Infinite Impulse Response); dann brauchst Du trotz hoher Mittelungszeit nicht den ganzen Speicher vollzuschreiben. In der allereinfachsten Form führst Du nach der Aufnahme jedes Abtastwertes einen Befehl der Art: mittelwert = 0.9999*mittelwert + 0.0001*abtastwert druckwert = abtastwert - mittelwert Dabei kommt dann sowas wie ein gleitender Mittelwert heraus; die Vorfaktoren kannst Du natürlich auch ändern. Ganz ohne analogen Hochpaß wird es aber trotzdem kaum gehen, da Du vor dem Abtasten sicher den Gleichanteil von 4V zumindest näherungsweise weghaben willst, damit Du das Wechselsignal verstärken kannst und die Bits des AD-Wandlers maximal auszunutzt. > aber ich probier morgen mal das mit den OPV aus, wenn das klappt ist das > Problem schon erledigt. Leider wahrscheinlich nicht. Gruß, Michael
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.