Hallo verehrtes Forum, laut dem Abtasttheorem reicht es ja aus, wenn die Sampelrate doppelt so hoch ist wie der höchste Frequenzanteil des Signals. Außerdem steht bei Wikipedia, dass man Audiofiles mit 44 kHz abtastet. Der hörbare Bereich umfasst bekanntlich den Frequenzbereich zwischen 20 Hz bis 20 kHz. Wäre es also vertretbar, wenn ich den hörbaren Frequenzbereich auch mit 44 kHz sample oder ist bei einen ATmega8 davon abzuraten. Ich weiß, dass der eine empfohlene Abtastrate von 15 kSPS hat. Gibt es aber vlt. noch einen anderen Grund, warum ich nicht mit 44 kHz sampeln sollte? Anscheinend spricht nichts (außer eben die 15 kSPS) dagegen. Ich hätte aber gerne noch eure Meinung gewusst. Grüße Berus P.S.: ich weiß, dass es auch schon andere Chips mit besseren Konditionen gibt.
Die sinnvolle Abtastrate hängt ganz von der Anwendung und den Qualitätsansprüchen ab. Für Sprachverständlichkeit reicht z.B. ein kleinerer Frequenzbereich (wird beim Telefon so gemacht). Neben der möglichen Abtastrate des ADCs muss du auch beachten, dass du die reinkommenden Daten schnell genug verarbeitet und gespeichert bekommst, was einen AVR schon gut auslasten kann.
danke für die prägnante und informative Antwort. Außerdem frage ich mich gerade woher ich die Größe der Aussteuerungsgrenze für ATmegas finden kann. Ich habe im DB unter Full Scale gesucht. Aber ich habe leider nichts gefunden. Wo finde ich den diese Angabe. Hab Dank Uwe!
:
Bearbeitet durch User
Claude Juncker schrieb: > danke für die prägnante und informative Antwort. Kennst du oder jmd. > anderer eine Formel mit der ich die Menge in Bit/s in Abhängigkeit von > den Samples ausrechnen kann? Ich glaube nämlich, dass das mein nächstes > Problem sein könnte. Nicht nur könnte. Selbst wenn du dich mit 8 Bit Samples zufrieden gibst, bedeuten 44kHz nun mal, dass du 44-tausend Samples pro Sekunde kriegst. Über den Daumen also 44kByte. Der Mega8 hat aber nur 1 kByte SRAM. d.h. du kannst gerade mal 1/44 Sekunde aufzeichnen, dann ist das SRAM voll. Also wohin damit, wenn du die Samples nicht gleich online verwurschtelst?
Oh man... Das ist ein echtes Trauerspiel...kaum glaube ich endlich ein funktionierendes Konzept zu haben, taucht schon wieder ein neues Problem auf. Das ist doch einfach frustrierend. Karl Heinz Buchegger schrieb: > Selbst wenn du dich mit 8 Bit Samples zufrieden gibst, bedeuten 44kHz > nun mal, dass du 44-tausend Samples pro Sekunde kriegst. Über den Daumen > also 44kByte. Könnten wir das mal zusammen nachrechnen? 44kHz * 8 Bit = 352 kBit/s Hast du dich da nicht vertippt oder ist meine Rechnung falsch. Karl Heinz Buchegger schrieb: > er Mega8 hat aber nur 1 kByte SRAM. d.h. du kannst gerade > mal 1/44 Sekunde aufzeichnen, dann ist das SRAM voll. > Also wohin damit, wenn du die Samples nicht gleich online > verwurschtelst? Kann der PC, wenn er an den uC angeschlossen ist, nicht den uC hinsichtlich des SRAM unterstützen?
Claude Juncker schrieb: > Oh man... > > Das ist ein echtes Trauerspiel...kaum glaube ich endlich ein > funktionierendes Konzept zu haben Konzept - wofür? > Karl Heinz Buchegger schrieb: >> Selbst wenn du dich mit 8 Bit Samples zufrieden gibst, bedeuten 44kHz >> nun mal, dass du 44-tausend Samples pro Sekunde kriegst. Über den Daumen >> also 44kByte. > > Könnten wir das mal zusammen nachrechnen? 44kHz * 8 Bit = 352 kBit/s Byte, byte. In Byte stecken die 8 Bit schon drinnen. Deine Rechnung ist zwar grundsätzlich richtig, aber was interessieren dich die kBit/s? So eine Welle ist ja nicht nur 0 und voll aufgedreht, sondern da gibt es Zwischenwerte. Darum sampelt man ja auch mit einer gewissen Bitzahl, damit man die Amplitude auch auflösen kann. Die kleinste Einheit ist ein Byte und das muss irgendwo hin geschaufelt werden. >> er Mega8 hat aber nur 1 kByte SRAM. d.h. du kannst gerade >> mal 1/44 Sekunde aufzeichnen, dann ist das SRAM voll. >> Also wohin damit, wenn du die Samples nicht gleich online >> verwurschtelst? > > Kann der PC, wenn er an den uC angeschlossen ist, nicht den uC > hinsichtlich des SRAM unterstützen? Wenn du die Datenmenge in der Zeit zum PC rübergeschaufelt kriegst, dann schon. Und wehe Windows legt ein Päuschen ein um den Hauptspeicher aufzuräumen.
:
Bearbeitet durch User
Karl Heinz Buchegger schrieb: > Byte, byte. In Byte stecken die 8 Bit schon drinnen. Ach ja, stimmt ja. Da habe ich wohl vorhin geschlafen. Karl Heinz Buchegger schrieb: > Konzept - wofür? Schalldruckmesser. Karl Heinz Buchegger schrieb: > Wenn du die Datenmenge in der Zeit zum PC rübergeschaufelt kriegst, dann > schon. Ich habe so einen Mikrocontroller mit USB Anschluss im Auge. Dafür gibt es eine bereitgestellte Software, die mit Hilfe von UART eine virtuelle COM Schnittstelle generiert. Natürlich kommt dazu noch ein Terminalprogramm. Reicht das zum Rüberschaufeln der Datenmenge aus? Kannst du mir auf die Schnelle sagen wofür UBRR steht. Ich finde über Google keine Antwort. Ich frage nur, weil ich gerade im DB des Atmega8 rumstöbere. Du kannst dir dazu ja den Anhang ansehen. Ich dachte mir, dass ich vlt. den Oszillator mit 16MHz schwingen lasse, damit ich so auf 0,5 MBit/s komme (U2X=0, U2X=1). Dies müssten ja für 44 kByte reichen. Was sagst du dazu?
:
Bearbeitet durch User
UBRR ist der Wert, den du in das entsprechende Register eintragen musst, damit dein UART mit der gewünschten Baudrate läuft. Beispiel: Wenn du deinen µC mit einem 18,432 MHz Quarz betreibst, eine Baudrate von 28,8k haben möchtest, dann musst du den Wert 39 bzw. 79 in das entsprechende Register schreiben. Grüße
Claude Juncker schrieb: > Ich habe so einen Mikrocontroller mit USB Anschluss im Auge. > [...] > Ich frage nur, weil ich gerade im DB des Atmega8 rumstöbere Du wiederspricht Dir grade selber. Der Atmega8 hat kein USB, und Software USB/VUSB kannst Du für den Anwendungsfall vergessen. Schau lieber in das Datenblatt des USB-µC. Dort könnten für ADC usw. andere Werte drin stehen.
@Jim Meba: danke für den gut gemeinten Hinweis. Inwiefern widerspreche ich mir selbst? Aber das Datenblatt des USB-uC ist sehr bescheiden. Hier der Link dazu. Und hier der Link mit Bild zum USB-uC. http://shop.in-circuit.de/products/-C-Module/AVR-AVR32-Xmega-UC3/39/ICmega8-USB Und hier noch ein Link zum DB. http://shop.in-circuit.de/data/datasheet/ICmega8-USB_(deutsch).pdf Und hier noch ein zweites DB mit mehr Infos.(aussagekräftiger) http://shop.in-circuit.de/data/datasheet/CP2102.pdf Demnach ist eine Baudrate von 500000 möglich (siehe Seite 12). Warum sollte die USB-SW nicht funktionieren? Danke für den Hinweis zum Ansehen des zweiten DB. Bisher habe ich es übersehen. Das sieht doch gut aus oder nicht?
:
Bearbeitet durch User
HI
>Demnach ist eine Baudrate von 500000 möglich (siehe Seite 12).
Aber nicht mit einem mit 8MHz getakteten ATMega8. Da ist bei 76800Bd
Ende der Fahnenstange.
MfG Spess
Also müsste ich einen exteren Ouarz an den Atmega 8 anschließen. Dann müsste es doch gehen oder nicht? FG Berus
Claude Juncker schrieb: > Also müsste ich einen exteren Ouarz an den Atmega 8 anschließen. Dann > müsste es doch gehen oder nicht? Kapitel "Electrical Characteristics" Abschnitt "External Clock Drive" Dort kannst du lesen, was maximal mit einem externen Quarz möglich ist!
Hi >Also müsste ich einen exteren Ouarz an den Atmega 8 anschließen. Dann >müsste es doch gehen oder nicht? Auf dem Board ist ein externer Quarz. Und mehr als 16 MHz kann der ATMega8 nicht. Und damit schaffst auch gerade mal die 153600Bd, also ca. 15KByte/s. Such dir zumindest einen passenden ATXMega. MfG Spess
Hi. Wie bereits gesagt wurde, beeinflusst die Abtastrate und die Bitrate die Qualität des Signals. Um für dein Projekt entscheiden zu können, welche Raten notwendig sind, kannst du das Signal erstmal mit dem PC aufnehmen. In den Aufnahmeprogrammen kann man in der Regel die Raten einstellen. Dadurch erhälst du ein Gefühl, welche Raten du brauchst.
Claude Juncker schrieb: > Karl Heinz Buchegger schrieb: >> Konzept - wofür? > > Schalldruckmesser. Wozu muss man für einen Schalldruckmesser mit 44kHz A/D Werte an den PC schicken? Dazu reicht ein gleitender Maximalwert, den man alle 10 mS oder alle s aktualisiert. Wie sillst du mit 8 oder auch 10 Bit einen Dynamikumfang von 0dB (2* 10^-5pa) - 130dB (ca. 50pa) abbilden? Ich glaube dein Konzept hat noch mehr Probleme! In deinem PC hast du ein Mikrofon Eingang, der PC kann da mit 44kHz und 16 Bit sampeln. Nur so als Erinnerung.
:
Bearbeitet durch User
Hallo Der: Mir schleicht da etwas im Kopf herum. Habe ich dich richtig verstanden, dass ich z.B.: mit dem "Visual Analyser" einfach das Geräusch messen kann und dabei kann ablesen, welche Baudrate für die Übertragung von Nöten ist? FG Berus
@ Udo Schmitt: Warum meinst du, dass ich ein Dynamikumfang von 0 bis -130 dB brauche? Was meinst du außerdem mit gleitender Maximalwert? Soll das ein Mittelwert sein?
:
Bearbeitet durch User
Hallo, die Baudrate wird bestimmt durch Abtastrate x Wortbreite + Overhead. Die Abtastrate legt die Maximalfrequenz fest, die Wortbreite den Dynamikumfang. Den Frequenzbereich, indem sich für deine Zwecke sinnvolle Informationen tummeln, kannst du mit VA eingrenzen, wobei hier bei 20KHz leider Schluss ist. Noch mal. Nichts gegen deinen Enthusiasmus, für die AD Umsetzung und Signalverarbeitung einen AVR zu nehmen. Es gibt sinnvollere Lösungen, die in deinen anderen Freds schon genannt sind.
Mal angenommen, diese Punkte wären alle geklärt. Nur mal angenommen, du hättest jetzt die ADC-Messwerte für 1 Sekunde vorliegen und damit einen Haufen (meinetwegen auch 44-tausend) Samples, welche mit ihrem Zahlenwert die jeweils am Mikrofon gemessene Spannung repräsentieren. Wie geht es dann eigentlich deiner Meinung nach weiter? Was machst du mit diesen Messwerten? (Mein Bauch meldet sich nämlich wieder mal zu Wort. Und er meint, das wäre wieder mal so ein Projekt nach dem Muster "Ich will zwar, aber eigentlich kann ich nicht. Also geh ich so vor, wie sich die kleine Anna das Universum eben so vorstellt. Irgendwie wird der liebe Gott das schon richten.)
:
Bearbeitet durch User
Claude Juncker schrieb: > Was meinst du außerdem mit gleitender Maximalwert? Soll das ein > Mittelwert sein? Wie berechnest du denn den Schallpegel aus deinen 44000 Messwerten pro Sekunde auf dem PC? Karl Heinz Buchegger schrieb: > Irgendwie wird der liebe Gott das schon richten.) Genau :-)
An alle die von Audio Sachen mehr verstehen wie ich. Wie ist das eigentlich? Sind die Schalldruckmessungen eigentlich einfach nur Amplitudenmessungen Spitze-zu-Spitze der ungefilterten Welle oder werden die in spezifischen Frequenzen durchgeführt?
Nach Wikipedia und meinen wenigen Kenntnissen ist der Schalldruck einfach mal ein Druck, hier der Wechselanteil des Luftdrucks. Wie jetzt das Mikro Druckänderungen unterschiedlicher Frequenz in elektrische Wechselspannungspegel umsetzt ist eine andere Frage und muss dann in der Software korrigiert werden. Schalldruckpegel ist ein Verhältnis zu einem Referenzpegel det für 0dB auf 2*10^-5pa festgelegt ist. dBa ist ein mit einem Korrekturfaktor an das Hörvermögen des Menschen angepasster Pegel. Was ich jetzt auch nicht weiss ist wie jetzt die Summation/Integration (Mittelung oder Maximalwert?) über ein Frequenzbereich erfolgt. Auch noch interessant. Die Schallleistung nimmt quadratisch mit dem Abstand zur Quelle ab. Der Druck nur linear.
:
Bearbeitet durch User
@ alle: AudioHeinz schrieb: > Es gibt sinnvollere Lösungen, > die in deinen anderen Freds schon genannt sind. Ja, stimmt. hier empfohlene Varianten zum Schalldruckmessen: A.)Ich sehe es auch ein, dass das Anschließen eines Mikrofons an die Soundkarte des Rechners zum Messen des Pegels am einfachsten und mit den kleinsten Aufwand zu realisieren ist. Wenn ich das allerdings täte, dann wäre meine jetzt schon lange "Entwicklung" dieser Idee umsonst gewesen. Ich habe zwar viel gelernt, konnte mich in die Thematik einarbeiten, aber im Endeffekt wäre ich irgendwie gescheitert. Das Messen mit einem Mikrofon ist vermutlich am sinnvollsten, aber ich will es nicht in Betracht ziehen. B.) Jobst M. hat mir auch den PCM2900 empfohlen. Den würde ich sehr gerne statt des uC einsetzen. Allerdings hat es an seiner unteren Grenzfrequenz gehapert. Die liegt nämlich nur bei ca. 1kHz. Außerdem habe ich gelesen, dass digitale Filter die Anforderungen des analogen Filters stark herabsetzen können. Oft habe ich gelesen, dass der Aufwand der Filterung vom analogen ins digitale verschoben wird. Das schien mir aber nicht logisch und ich konnte es auch nicht nachvollziehen. Schließlich wollte ich keinen PCM2900 nehmen, weil wie schon erwähnt die fgu zu klein ist. C.)Microkontroller Ich sehe in meinem Fall keinen anderen Weg wie ich das Schalldruckmessen anders realisieren sollte ohne "vergeblich" viel gearbeitet zu haben. @ Audioheinz: AudioHeinz schrieb: > die Baudrate wird bestimmt durch > Abtastrate x Wortbreite + Overhead. > Die Abtastrate legt die Maximalfrequenz fest, die Wortbreite den > Dynamikumfang. danke für deinen wie immer hilfreichen Beitrag. Karl Heinz Buchegger schrieb: > Nur mal angenommen, du hättest jetzt die ADC-Messwerte für 1 Sekunde > vorliegen und damit einen Haufen (meinetwegen auch 44-tausend) Samples, > welche mit ihrem Zahlenwert die jeweils am Mikrofon gemessene Spannung > repräsentieren. > Wie geht es dann eigentlich deiner Meinung nach weiter? > Was machst du mit diesen Messwerten? Ich würde daraus Durchschnittswerte ermitteln. Welche Art von Durchschnittswert weiß ich noch nicht. Ich glaube nicht, dass das ein Problem darstellen sollte zu seiner Zeit darüber nachzudenken. Da würde sich schon was finden. Vlt. 1 repräsentativer Wert für 1000 Samples. Die Messwerte würde ich dann in dB umrechnen. und wenn außerdem hätte ich ja auch die Grundlage mit Hilfe der unzähligen Samples den Signalverlauf nachzubilden. Das letztere muss aber nicht unbedingt sein. Karl Heinz Buchegger schrieb: > die kleine Anna ist eine Visionärin :-p Aber.... aber ich gebe euch Recht. Wenn ich den Signalverlauf nicht wiedergeben wollte, dann würden ja wirklich 20Hz als Samplerate ausreichen. Ich glaube, dass wäre ein Kompromiss auf den ich mich einlassen könnte. So kann ich nämlich beide Varianten ausprobieren - den PCM und den uC. Ihr bringt mich auf Ideen... Danke!
Ich habe außerdem noch ein Frage dazu. Und hier der Link mit Bild zum USB-uC. http://shop.in-circuit.de/products/-C-Module/AVR-A... Und hier noch ein Link zum DB. http://shop.in-circuit.de/data/datasheet/ICmega8-U... Und hier noch ein zweites DB mit mehr Infos.(aussagekräftiger) http://shop.in-circuit.de/data/datasheet/CP2102.pdf Wenn ich so ein Board habe. D.h. Atmega8 mit USB Anschluss, UART, virtueller COM mit Treiber. Wieso ist es so schwer das gleich mit einem weiterentwickelten ATmega8 wie z.B. ATXMega zu finden? In einem anderen Thread hat man mir gesagt, dass ich für einen ATXMega dafür eine Firmware schreiben müsste. Das sei aber eine große Hürde und für einen fortgeschrittenen Anfänger wie mich zu schwer. Ist der Stand der Technik einfach noch nicht so weit? Gibt es da niemanden der so eine Firmware herstellt und anbietet? Das wäre ja nicht nur für mich nützlich.
Claude Juncker schrieb: > A.)Ich sehe es auch ein, dass das Anschließen eines Mikrofons an die > Soundkarte des Rechners zum Messen des Pegels am einfachsten und mit den > kleinsten Aufwand zu realisieren ist. > > Wenn ich das allerdings täte, dann wäre meine jetzt schon lange > "Entwicklung" dieser Idee umsonst gewesen. Ich habe zwar viel gelernt, > konnte mich in die Thematik einarbeiten, aber im Endeffekt wäre ich > irgendwie gescheitert. Das Messen mit einem Mikrofon ist vermutlich am > sinnvollsten, aber ich will es nicht in Betracht ziehen. Was heißt 'das Messen mit einem Mikrofon' wäre am sinnvollsten? Letzten Endes musst du ja auch an den ADC eines Mega8 ein Mikrofon (und wahrscheinlich einen Vorverstärker) anschliessen. Der ADC misst ja nicht von alleine irgendwie die Schallwellen. > Außerdem habe ich gelesen, dass digitale Filter die Anforderungen des > analogen Filters stark herabsetzen können. Oft habe ich gelesen, dass > der Aufwand der Filterung vom analogen ins digitale verschoben wird. Du scheinst viel gelesen zu haben aber über keinerlei praktischer Erfahrung zu verfügen. Darf ich vorschlagen erst mal ein Poti an einen ADC anzuschliessen und damit ein wenig zu experimentieren. Dann tauscht du das Poti gegen einen LDR (in einem Spannungsteiler aus) und erst dann beschöäftigst du dich damit, mal ein Mikrofon samt Vorverstärker an den ADC anzukabeln? > C.)Microkontroller > Ich sehe in meinem Fall keinen anderen Weg wie ich das Schalldruckmessen > anders realisieren sollte ohne "vergeblich" viel gearbeitet zu haben. Ein Schalldruckmesser ist auch nichts anderes als eine kalibrierte 'Lichtorgel', die den Sound per Mikrofon aufnimmt. Je lauter, desto heller. Nur dass 'desto heller' hier eben in einen Zahlenwert überführt wird und das ganze dann nicht irgendwie funktioniert, sondern auf vergleichbare Werte kalibriert wird. Jede billige Heim-Diso-Lichtanlage mit Mikrofon ist so gesehen ein Schalldruckmessgerät.
:
Bearbeitet durch User
> Ist der Stand der Technik einfach noch nicht so weit? Gibt es da > niemanden der so eine Firmware herstellt und anbietet? Das wäre > ja nicht nur für mich nützlich. Irgendwie hab ich den Eindruck, du hast eine völlig verquerte Sicht der Welt. Nein. Die Computer in Star Trek sind nicht Realität! Das ist Science Fiction!. Man kann nicht zu einem Computer sagen "Schilde um 20% modulieren und auf semistachastisches Hypermuster einstellen. Such dir die Parameter selbst". Das funktioniert nicht. Heute noch nicht. Und bis es soweit ist, lernt man eben die Dinge. Aber man beginnt beim Lernen mit den Grundlagen. Millionen haben das vor dir gemacht, Millionen machen das gerade und Millionen werden das auch in der näheren Zukunft machen.
Claude Juncker schrieb: >> Was machst du mit diesen Messwerten? > > Ich würde daraus Durchschnittswerte ermitteln. Und also 0 erhalten. Warum das so ist darfst du dir selbst überlegen, willst ja schliesslich mehr dazulernen :-)
Karl Heinz Buchegger schrieb: > Was heißt 'das Messen mit einem Mikrofon' wäre am sinnvollsten? > Letzten Endes musst du ja auch an den ADC eines Mega8 ein Mikrofon (und > wahrscheinlich einen Vorverstärker) anschliessen das ist auch mir klar. Ich meinte das Messen des SPL mit einem Mikrofon, welches an die Soundkarte eines PC angeschlossen ist. Karl Heinz Buchegger schrieb: > Du scheinst viel gelesen zu haben aber über keinerlei praktischer > Erfahrung zu verfügen. Das stimmt ganz. Du hättest den Vergleich mit der Diskokugel nicht bringen müssen, denn wie ein Mikrofon von Prinzip her funktioniert, weiß auch ich. Ich meine, dass ich dir und sehr vielen hier im Forum hinsichtlich elektronischer Belange das Wasser nicht reichen kann, das ist mir klar. Das heißt aber nicht, dass ich nicht das kleine ein Mal eins der Elektrotechnik kenne. Karl Heinz Buchegger schrieb: > Irgendwie hab ich den Eindruck, du hast eine völlig verquerte Sicht der > Welt. Das hätte nicht sein müssen, allerdings war der Vergleich mit Star Trek doch eindeutig und lustig. Also gehe ich davon aus, dass der Stand der Technik noch nicht so weit ist. Das ist doch in Ordnung. Karl Heinz Buchegger schrieb: > Und bis es soweit ist, lernt man eben die Dinge. Aber man beginnt beim > Lernen mit den Grundlagen. Nichts gegen dein wohlgemeinten Ratschlag. Aber irgendwann sollte man auch über den Tellerrand der Grundlagen sehen. Ich bin zwar kein Spezi, aber die wesentlichen Grundlagen traue ich mir einigermaßen zu. Ok du meinst wahrscheinlich die Grundlagen der Praxis...Da hast du wohl Recht. Danke dir.
Claude Juncker schrieb: > Nichts gegen dein wohlgemeinten Ratschlag. Aber irgendwann sollte man > auch über den Tellerrand der Grundlagen sehen. Ja sicher, irgendwann, und zwar idealerweise dann wenn man nicht mehr völlig ahnungslos ist. Das Beispiel mit der Lichtorgel war nicht um die Funktion des Mikrofons zu erklären sondern um die Funktion einer Schallpegelmessung zu erklären. Solange du nicht versuchst zu verstehen was man dir hier sagen will und du auch keine Grundlagen lernen willst, wird der Tellerrand unerreichbar hoch bleiben.
:
Bearbeitet durch User
Auch wenn ich das Gefühl nicht los werde, dass ihr mich zum Narren halten wollt. Ich gehe trotzdem auf eure Fragen ein. Karl Heinz Buchegger schrieb: > Sind die Schalldruckmessungen eigentlich einfach > nur Amplitudenmessungen Spitze-zu-Spitze der ungefilterten Welle oder > werden die in spezifischen Frequenzen durchgeführt? Willst du jetzt auf die mechanische Welle mit ihrem Schalldruck eingehen oder eher auf die umgewandelte elektrische Größe Spannung, die proportional zum Schalldruck ist. Es gibt Hoch- und Tiefpässe mit unterschiedlicher Ordnung/Steilheit und unterschiedlicher Bauweise. Welche Spanungswerte Udo Schmitt schrieb: > Schalldruckpegel ist ein Verhältnis zu einem Referenzpegel det für 0dB > auf 2*10^-5pa festgelegt ist. Dafür würde ich L= 20 lg Ueff/U0 nehmen. Dadurch hätte ich den Pegel und davon kann ich den Schalldruck herleiten. Hier ein Link. http://www.sengpielaudio.com/Rechner-FaktorVerhaeltnisPegelDezibel.htm Was ich jetzt auch nicht weiss ist wie jetzt die Summation/Integration (Mittelung oder Maximalwert?) über ein Frequenzbereich erfolgt. Gut das du das anspricht, weil das weiß ich noch nicht. Ich meine aber gehört zu haben, dass man hier den Effektivwert als Repräsentant nimmt. Bis hierher Berus
Claude Juncker schrieb: > Auch wenn ich das Gefühl nicht los werde, dass ihr mich zum Narren > halten wollt. Ich gehe trotzdem auf eure Fragen ein. > > Karl Heinz Buchegger schrieb: >> Sind die Schalldruckmessungen eigentlich einfach >> nur Amplitudenmessungen Spitze-zu-Spitze der ungefilterten Welle oder >> werden die in spezifischen Frequenzen durchgeführt? > > Willst du jetzt auf die mechanische Welle mit ihrem Schalldruck eingehen > oder eher auf die umgewandelte elektrische Größe Spannung, die > proportional zum Schalldruck ist. Das ist letzten Endes völlig egal. Denn wie du schon sagst, das eine ist proportional zum anderen. Anmerkung: Dieser 'Schalldruck' ist aber nicht das, was du als Schalldruck kennst, und was dB Messer anzeigen. Dieser Schalldruck ist die Druckwelle, die als Schall bekannt ist und die laufend unterschiedliche Werte hat. > Es gibt Hoch- und Tiefpässe mit unterschiedlicher Ordnung/Steilheit und > unterschiedlicher Bauweise. Schon. Aber was haben die jetzt mit dem Schalldruck zu tun? > Welche Spanungswerte Na, die, die du vom ADC kriegst! Ich hör jetzt auf. Entweder bin ich völlig daneben oder du. Im Zweifelsfall geh ich davon aus, dass ich daneben bin und einfach nicht verstehe wovon zum Kuckuck du eigentlich die ganze Zeit redest. IMHO hat fast nichts von dem, was du da zum Besten gibst auch nur entfernt irgendwas mit Schalldruck bzw. dessen Ermittlung aus einer vom Mikrofon aufgezeichneten Schallwelle zu tun. Ich habe fast das Gefühl, du denkst, du würdest vom Mikrofon schon genau diesen Messwert kriegen. Daher auch die Aussage mit dem Mittelwert.
:
Bearbeitet durch User
Ja, das ist in Ordnung. Ich weiß nicht ob das absichtlich war, aber im Grunde hast du mich darauf hingewiesen, dass ich noch herausfinden sollte, wie ich den gemessenen Spannungswert in eine adäquate Größe des Schalldrucks oder in dB richtig darstelle. Das war auf jeden Fall konstruktiv von dir.
Karl Heinz Buchegger schrieb: > Entweder bin ich völlig daneben oder du. Dann sind wir schon 2 Ossi, viel Erfolg.
Claude Juncker schrieb: > sollte, wie ich den gemessenen Spannungswert in eine adäquate Größe des > Schalldrucks oder in dB richtig darstelle. Es gibt nicht 'den gemessenen Spannungswert'. Wenn die Opernsängerin den Kammerton 'a' trällert, dann durchlaufen die Messwerte 440 mal in der Sekunde alle Werte von (hausnummer) -253 bis +253. OK, Im Rechner dann eher von 259 bis 765, aber das ist jetzt ein Nebenschauplatz. Die Messwerte sind die Samples der sich laufend verändernden Druckkurve die eine Schallwelle ausmacht und das was wir hören, wenn wir einen Ton hören. Der Schalldruck in dB ist eher die Hüllkurve, die man sich über dem ganzen Gebilde liegend vorstellen muss. Die kriegst du aber nicht vom Mikrofon. Die musst du aus den Messwerten errechnen.
Claude Juncker schrieb: > Also gehe ich davon aus, dass der Stand der Technik noch nicht so weit > ist. Das ist doch in Ordnung. Hmm... Nach meinem Verständnis hat der Stand der Technik nicht unbedingt etwas damit zu tun, ob eine Firmware für einen speziellen µC und eine spezielle Aufgabenstellung kostenlos frei für Jedermann im Internet verfügbar ist - demnach wäre ja z. B. Windows auch nicht Stand der Technik. Ob eine solche Software geschrieben werden kann, steht auf einem anderen Blatt - im Grunde spricht ja nichts dagegen... Davon abgesehen: Ohne Dir zu nahe treten zu wollen, aber an den theoretischen Grundlagen scheint es noch deutlich zu mangeln. Hier zwei Links zum Einstieg: Ich vermute, Du willst das hier messen: http://de.wikipedia.org/wiki/Schalldruckpegel Dann gibt es hier: http://de.wikipedia.org/wiki/Schallpegelmesser#Exponentiell_mittelnder_Schallpegelmesser schon einmal eine grobe Funktionsbeschreibung - das ist es, was Du nachbauen willst. Mit anderen Worten, Du musst diese Funktionalität nun nachbauen. Dazu brichst Du diese Funktionsblöcke iterativ immer weiter herunter, bis Du Deine Anforderungen an das System definiert hast, und legst erst danach die z. B. Hardwarekomponenten (µC) fest. Das ist dann ein ingenieursmäßiges, systematisches Vorgehen - und das einzige, das Dich zum Ziel führen wird. Sich erst aus dem Bauch heraus einen beliebigen Mikrocontroller zu schnappen, ohne den Umfang des Projekts (Codegröße, Rechenleistung, Speichertiefe etc.) überhaupt bewertet zu haben, und dann zu versuchen, darauf eine bestimmte Funktionalität zu implementieren, kann eigentlich nur schief gehen. Sorry, aber das ist einfach so. Tipp: Es gibt mit Sicherheit ein Freeware-PC-Programm, dass den Schalldruckpegel berechnen kann; evtl. kann z. B. Audacity sowas. Besorge Dir ein PC-Mikrofon und spiele doch zunächst mal ein wenig am PC herum, um überhaupt ein Gefühl dafür zu kriegen, was Du da vor hast bzw. bauen willst.
Für Schalldruckpegelmessungen braucht man keinen µC. Da reicht es, das Signal gleichzurichten, etwas zu glätten und zur Anzeige zu bringen. Vorher linarisieren oder logarithmieren, alles mit ein paar OVs möglich, Filter inklusive. Nur so richtig weiß ich auch noch nicht, worum es eigentlich geht, was das ganze denn Messen und wie anzeigen soll.
Claude Juncker schrieb: > B.) > Jobst M. hat mir auch den PCM2900 empfohlen. Den würde ich sehr gerne > statt des uC einsetzen. Allerdings hat es an seiner unteren > Grenzfrequenz gehapert. Die liegt nämlich nur bei ca. 1kHz. Du bist echt ein Heini. Da habe ich Dich im letzten Deiner 5 ...6? Threads zu diesem Thema schon darauf hingewiesen, dass Du den Leuten gleich beschreiben sollst, worum es geht. Jetzt legst Du hier wieder los und lässt die Leute im Regen stehen. Woher hast Du die (falsche) Information, dass der PCM 2902 erst bei 1kHz beginnt? Der ist für Audio, natürlich kann der auch unterhalb von 1kHz arbeiten. Ich bin mittlerweile felsenfest davon überzeugt, dass Du ein Troll bist ... Ciao Jobst
Karl Heinz schrieb: > Ich habe fast das Gefühl, du denkst, du würdest vom Mikrofon schon genau > diesen Messwert kriegen. Daher auch die Aussage mit dem Mittelwert. Falsch gedacht: hier noch Mal den Link, der bestätigt, dass ich schon immer vorhatte den Messwert aus der gemessen Spannung zu errechnen. Claude Juncker schrieb: > davon kann ich den Schalldruck herleiten. Hier ein Link. > http://www.sengpielaudio.com/Rechner-FaktorVerhaeltnisPegelDezibel.htm Udo Schmitt schrieb: > Ossi, viel Erfolg. Sehr hilfreich! Meinst du damit, dass ich aus den neuen Bundesländern komme oder was genau wolltest du eigentlich damit sagen? Patrick schrieb: > Nach meinem Verständnis hat der Stand der Technik nicht unbedingt > etwas damit zu tun, ob eine Firmware für einen speziellen µC und eine > spezielle Aufgabenstellung kostenlos frei für Jedermann im Internet > verfügbar ist - demnach wäre ja z. B. Windows auch nicht Stand der > Technik. Da hast du Recht. Da habe ich mich unglücklich ausgedrückt. Patrick schrieb: > Davon abgesehen: Ohne Dir zu nahe treten zu wollen, aber an den > theoretischen Grundlagen scheint es noch deutlich zu mangeln. > Hier zwei Links zum Einstieg:... Danke für die Hilfe und auch für die nachfolgende Kritik. Du bist dabei sachlich und professionell geblieben. Dagegen habe ich überhaupt nichts. Patrick schrieb: > Sich erst aus dem Bauch heraus einen beliebigen Mikrocontroller zu > schnappen, ohne den Umfang des Projekts (Codegröße, Rechenleistung, > Speichertiefe etc.) überhaupt bewertet zu haben Du hast Recht. Aber kann man denn überhaupt im Vorfeld sagen wie Umfangreich das Projekt letztlich tatsächlich wird? Ich habe mich zum Code zum Wandeln der ADC-Werte unter anderem auch hier im Forum eingearbeitet. Der scheint mir überschaubar zu sein. Ich habe mich nicht zuerst für einen uC entschieden und danach mich gefragt, ob er für mein Zweck geeignet war - im Gegenteil. Am Anfang des Threads ging es ja darum, wie hoch meine Abtastrate sein soll. Ich wollte den ADC des uC mit 44kHz samplen, war mir aber nicht ganz sicher, ob das richtig ist. Dass das zwar geht aber nichts bringt, hat man mir dann auch schnell gesagt. Schließlich reicht einfach der ATmega8 nicht aus: spess53 schrieb: > Auf dem Board ist ein externer Quarz. Und mehr als 16 MHz kann der > ATMega8 nicht. Und damit schaffst auch gerade mal die 153600Bd, also ca. > 15KByte/s. Ich kann also mit 44kHz samplen, aber der Atmega8 ist nicht in der Lage diese gesamten Daten in einer Sekunde an den PC weiterzuleiten. Deshalb hat man mir in diesem Thread oder in einem anderen Thread empfohlen den einen bestimmten ATXMega zu gönnen. Also habe ich danach gesucht. Allerdings wollte ich den mit USB Anschluss so wie bei dem uC-Borad mit dem implementierten ATmega8, da ich die Daten auf dem PC anzeigen lassen möchte. Dann habe ich zwar einen mit USB-Anschluss gefunden. Ich hätte dafür aber eine Firmware zur Datenübertragung an den PC gebraucht. Diese müsste ich mir nach allem, was ich gehört habe, selber schreiben. Das traue ich mir aber nicht zu. Also habe ich mich wieder von der Idee mit dem ATXmega verabschiedet. Ich war also zurück beim dem Miniboard mit USB-Atmega8. Der ermöglicht es mir die Daten an den PC "ohne weiteres" zu benutzen. Dann wurde ich durch diesen Thread inspiriert. Ich sagte mir, dass ich doch keine Samplerate von 44kHz und somit auch keinen ATXMeha brauche, weil ich doch nicht den analogen Signalverlauf digitalisiert rekonstruieren will. Patrick schrieb: > Besorge Dir ein PC-Mikrofon und spiele doch zunächst mal ein wenig am PC > herum, Das habe ich auch schon gemacht. Ich will also nur die Lautstärke in dB messen ohne genau zu wissen, welche Frequenzen genau gemessen wurden. AudioHeinz schrieb: > Nur so richtig weiß ich auch noch nicht, worum es eigentlich geht, was > das ganze denn Messen und wie anzeigen soll. Die Signalspannung soll mit Hilfe eines Mikros gemessen werden. Dieses Mikro ist an den ADC vom Atmega8 mit USB-Anschluss angeschlossen. Für den ADC des ATmega8 schreibe ich einen Code in C mit Hilfe von Atmelstudio. Wie das genau funktioniert habe ich dank der Tutorials und Beiträgen und hilfsbereiten Member hier erfahren. Dieser Code soll auf den uC übertragen werden. Dieses Miniboard mit Atmeg8 und dem USB Anschluss erlaubt es mir über UART die digitalisierte Spannung an den Rechner zu übertragen. Auschnitt aus Datenblatt: "Die Software des ATmega8 zum ¨Ubertragen von Daten per USB ist identisch mit der f¨ur eine Kommunikation via RS232, da vom Treiber fur den CP2102 eine virtuelleCOM-Schnittstelle zum PC eingerichtet wird. Detailierte Informationen sind den Datenblatter des ATmega8 und des CP2102 zu entnehmen. Windows-Treiber f¨ur den PC ist im Internet unter http://www.ic-board.de/ oder Silicon Laboratories erh¨altlich." Außerdem installiere ich noch zum Empfangen der Daten ein Terminalprogramm auf dem PC. Die Berechnung des Schalldruckpegels aus den Spannungswerten wollte ich noch in den C-Code implementieren. Im Endeffekt will ich den Schalldruckpegel oder den Schalldruck im Windows Editor ausgeben lassen. AudioHeinz schrieb: > Für Schalldruckpegelmessungen braucht man keinen µC. Da reicht es, das > Signal gleichzurichten, etwas zu glätten und zur Anzeige zu bringen. > Vorher linarisieren oder logarithmieren, alles mit ein paar OVs möglich, > Filter inklusive. Du hast wohl Recht. Das will ich aber nicht, obwohl es scheinbar weniger Aufwand bedeutet als durch das Konzept wie oben beschrieben. Jobst M. schrieb: > Jetzt legst Du hier wieder los > und lässt die Leute im Regen stehen. Naja...das ist nicht ganz richtig. Zum beantworten meiner Frage war es ursprünglich nicht nötig das Konzept in diesem Thread zu beschreiben. Ich habe es jetzt aber trotzdem gemacht, weil ich die meisten Leute hier schätze. Diese Personen werden aber nicht herablassend, persönlich oder stiften Unruhe an. Ich lasse meinen Unmut an dieser Stelle heraus: Ich danke auf jeden Fall all jenen, die den Zweck dieses Forum aufrecht erhalten - zu helfen und sich miteinander auszutauschen. Zum anderen kommt es mir so vor, als würden sich wenige Member hier in der Unkenntnis des anderen baden. Muss das sein? Ich habe ja nichts gegen einen Witz auf meine kosten, aber man sollte die Grenzen des respektvollen Umgangs nicht überschreiten. Ich werde hier im Gegensatz zu manchen hier nicht persönlich. Es ist auch anmaßend zu meinen, der andere sei absolut ungebildet auf dem Gebiet der Elektrotechnik und alles was dazu gehört. Woher will irgendjemand hier beurteilen können, wie viel ich zu bestimmten Sachverhalten weiß. Sicher ist meine Unwissenheit bzgl. gewissen Sachen offensichtlich. Ist daran irgendetwas schlimm? Muss man deshalb unsachlich werden oder sich echauffieren. Wenn ich zu dumm bin, warum kommuniziert man mit mir? Wäre es in diesem Fall nicht besser mich einfach zu ignorieren? Als nächstes empfinde ich es unangenehm wie überheblich manche Leute sich gegenüber mir zeigen. Man unterstellt mir Sachen, die fernab von jeglicher Realität sind. Man sagt mir, dass ich die Beiträge nicht gründlich lesen würde. Das unseriöse dabei ist, das es auch diejenigen sind, die meiner Wahrnehmung zufolge meine Beiträge nur überfliegen. Trotz allem Freundliche Grüße Berus Nachtrag: Ich hoffe, dass sich in Bezug zu meinem letzten Abschnitt nur diejenigen angesprochen fühlen, die ich meine.
:
Bearbeitet durch User
Hi >Ich kann also mit 44kHz samplen, aber der Atmega8 ist nicht in der Lage >diese gesamten Daten in einer Sekunde an den PC weiterzuleiten. Kannst du. Aber der Bereich mit der maximalen Genauigkeit hört bei etwa 15ks auf. Darüber wird es schlechter. >Das traue ich mir aber nicht zu. Also habe ich mich wieder von der Idee mit >dem ATXmega verabschiedet. Ich war also zurück beim dem Miniboard mit >USB-Atmega8. Der ermöglicht es mir die Daten an den PC "ohne weiteres" >zu benutzen. Aber nicht mit der von dir angestrebten Abtastrate. Du willst unbedingt ein Auto bauen, das die Leistung von einem Ferrari hat aber willst aber nur einen Trabi-Motor benutzen. Wenn du nicht programmieren kannst oder willst musst du nach analogen Lösungen suchen. Solche Teile gab es schon lange vor Erfindung des µCs. MfG Spess
Gestern wurde doch hier auch schon diskutiert. Ich habe jetzt nicht alle Freds gelesen, nur so überflogen, aber ein paar Sachen sind mir aufgefallen: Der Mittelwert von einen ADC-Wandlungen wird wahrscheinlich irgendwo in der Nähe NULL sein, da es sich um ein Wechselsignal handelt und höchstwahrscheinlich mittelwertfrei ist. (Falls es anders ist, könnte das der Offset von deinem Vorverstärker oder AD-Wandler sein!) Ich bin mir nicht sicher, aber um den Schalldruck zu ermitteln braucht man den Effektivwert, also den quadratischen Mittelwert. Den kann man zwar aufwändig mit einem uC aus den vielen Samples berechnen, aber man könnte auch das Signal gleichrichten und glätten. Das entspricht ja quasi der Effektivwertbildung. Den Wert kann man direkt anzeigen. Dazu reicht sogar ein analoges Anzeigeinstrument für Spannung. Man muss nur die Skala anpassen! Wenn es denn sein muss, kann man diesen gleichgerichteten und geglätteten Wert auch AD-wandeln und auf einem tollen hintergrundbeleuchteten Display ausgeben oder den Wert zum PC schicken und in einem tollen Fenster anzeigen lassen!
@ Walter: das weiß ich jetzt gerade nicht. Ich habe die Vormessung des Schalldruckpegels der zu untersuchenden Schallquelle geraden nicht zur Hand. Ich wollte euch mal fragen, ob ich den Sachverhalt Dynamikumfang überhaupt richtig verstanden haben. Im allgemeinen ist doch der Dynamikumfang des ADC ein Maß für die Wandlungsgenauigkeit des ADC. Der Dynamikumfang ist ein anderes Wort für den Störabstand SNR. Er berechnet sich aus 20 log Ueff1/Ueff2. Dabei soll Ueff1 gleich der maximal messbaren Eingangsspannung/Signalspannung sein und Ueff2 gleich minimalen Eingangsspannung sein. Ich habe gelesen, dass Ueff2 mit dem Grundrauschen gleichgesetzt werden kann. Das Grundrauschen des Mikros ist mir unbekannt. Deshalb möchte ich eine Rechnung zum SNR anhand des Input Offsets eines OPV hier anbringen. Der ausgewählte Offset des OPV soll 0.15 mV betragen. Dabei liegt der Verstärkungsfaktor bei 150. Also 150 * 0.150 mV = 22.5 mV. Das müsste doch das verstärkte Grundrauschen sein, dass beim ADC ankommt. Also hätte ich ein Ueff2 von 22.5 mV. Ueff1 könnte ich tatsächlich fast ganz an 2,56 V heranbringen. Somit müsste doch SNR 20 log (2560/22.5)= 41 dB sein. Das kleinste messbare Schallereignis wäre hierbei aber nicht das Grundrauschen mit 22,5mV , sondern das LSB mit 2.56 V / 7 Bit = 36.57. Der ADC an sich würde doch für 22.5 mV keinen Digitalwert ausgeben bzw den Digitalwert für Null. Muss ich nicht also 20 log (2560/36.57) = 36 dB rechnen. FRAGE A) Ist eine von beiden Rechnungen richtig oder habe ich da jetzt Sachen miteinander verwechselt? FRAGE B) Kann es sein das Dynamikumfang manchmal zweideutig verwendet wird? AudioHeinz schrieb: > Für Schalldruckpegelmessungen braucht man keinen µC. Da reicht es, das > Signal gleichzurichten, etwas zu glätten und zur Anzeige zu bringen. > Vorher linarisieren oder logarithmieren, alles mit ein paar OVs möglich, > Filter inklusive. kaplic schrieb: > Effektivwert, also den quadratischen Mittelwert. Den kann man > zwar aufwändig mit einem uC aus den vielen Samples berechnen, aber man > könnte auch das Signal gleichrichten und glätten. Das entspricht ja > quasi der Effektivwertbildung. spess53 schrieb: > Wenn du nicht programmieren kannst oder willst musst du nach analogen > Lösungen suchen. Solche Teile gab es schon lange vor Erfindung des µCs. Ihr drei seid also alle einer Meinung. Das werde ich mir bald näher ansehen. kaplic schrieb: > Den Wert kann man direkt anzeigen. Dazu > reicht sogar ein analoges Anzeigeinstrument für Spannung. Man muss nur > die Skala anpassen! Damit könnte ich doch "nur" den momentanen Wert sehen ohne ihn zu erfassen. Es ist mir wichtig, dass ich den aufzeichnen kann. > Wenn es denn sein muss, kann man diesen gleichgerichteten und > geglätteten Wert auch AD-wandeln und auf einem tollen > hintergrundbeleuchteten Display ausgeben oder den Wert zum PC schicken > und in einem tollen Fenster anzeigen lassen! Das würde ich aus dem heutigen Standpunkt aus zu urteilen vermutlich machen. Das wäre natürlich mit Genauigkeitsverlusten verbunden, aber ich würde gerne diese Werte auf dem PC festhalten. Deshalb möchte ich auch kein separates Display bzw. nur den PC als Display. Also ich habe noch Mal gestern meine Situation überdacht. spess53 schrieb: > Aber nicht mit der von dir angestrebten Abtastrate. Du willst unbedingt > ein Auto bauen, das die Leistung von einem Ferrari hat aber willst aber > nur einen Trabi-Motor benutzen. Ja stimmt. Ich wollte echt zu viel von dem ADC des Atmega. Deshalb hier mal mögliche Varianten für den Bau des Autos. Möglichkeit 1 ) Ich nehme den das Miniboard mit dem ATmega8 und verzichte darauf, dass ich das Signal digitalisiert rekonstruiere. Das erlaubt mir das Herabsetzten der Abtastrate und somit sollte auch der ATmega8 kein Problem mehr bei der Datenübertragung haben. Trotzdem weiß ich ja im Überblick, welche Frequenzen im groben gemessen werden - die liegen nämlich in der Bandbreite des analogen Filters. Jemand hat aber richtig bemerkt, so meine ich jedenfalls, dass der Dynamikumfang zu wünschen übrig ließe. Was aber auch nur dann stimmt, wenn ich die Bedeutung des Dynamikumfangs auch kapiert habe. Möglichkeit 2) Ich versuche mir einen ATXMega mit RS232 zu besorgen. Somit müsste ich weder auf die Rekonstruktion des analogen Signals verzichten (32 Mhz) und eine bessere Auflösung und somit auch Genauigkeit wäre gewährleistet. Die Daten würde ich eben mit über RS232 an den Rechner schicken. FRAGE C)Ich bin mir nicht ganz sicher, aber ist das Übertragen der Daten mit RS232 vergleichsweise einfach umzusetzten bzw. müsste ich dafür noch etwas ähnlich schweres machen wie das Schreiben einer Firmware mit C? Möglichkeit 3) Analoge Lösung zum Berechnen der Spannung wie von euch vorgeschlagen. Allerdings sehe ich mich gezwungen den uC anzubauen, weil ich sonst nicht wüsste wie ich die Werte sonst auf den PC übertragen soll. Gerade liebaügle ich mit den letzten 2 Möglichketiten. Danke für eure letzten Beiträge. Bis Morgen und gute Nacht Berus
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.