(Sorry, falls das eher nach "Analog" gehört, aber irgendwie ist diese Trennung heutzutage ja oft nicht mehr so klar... @Moderator: gerne verschieben dann, aber ich habs bewusst nach Digital gestellt, weil es ja vielleicht ne Lösung in Software gibt.)
Also, ich möchte an einem Line-in-Eingang eines Mixers die aktuelle Lautstärke messen. Nicht punktgenau JETZT, sondern sagen wir mal über einen Zeitraum von 100ms oder 500ms (es kommt nicht so genau darauf an) gemittelt, ohne dass ich da irre viel Rechenzeit des uC verbrauchen oder ein extra PCB dafür malen muss. Mein Knoten im Hirn ist, dass da am Line-in ja was sehr Basslastiges anliegen könnte oder auch was mit sehr vielen Höhen. So eine einfache Konstruktion aus PNP, Widerstand und Kondensator funktioniert also nicht, weil die die Höhen viel zu hoch bewerten und den (jetzt wird es doch digital) A/D-Wandler mit Quatschdaten belästigen würde, außer eben, ich sampele mit 1 kHz oder mehr.
Es geht hier wirklich nicht um eine sehr genaue Erfassung, sondern "über den Daumen", aber wenn die Messung bei einem Orgelkonzert bei 50 Hz Eingangsfrequenz "kaum was", bei 15 kHz aber "alles" ergibt, ist das bisschen doof. Ja, mir ist klar, dass ich das Eingangssignal mit Frequenzweichen teilen und so weiter könnte. Ich suche gerade mehr die Aldi-Lösung, billig, klein vom Platz auf der Platine und einfach nur halbwegs brauchbar. Das gemessene Signal soll bloß auf einem Display einen Pegel grob anzeigen, ein Fehler von sogar 6 dB wäre kein Problem, aber wenns in den Hochtönern laut ist, sollte der Messwert das genauso real darstellen wie grummelnde Bässe.
Und nochmal, wie gesagt, ich stelle kein Mikro vor die Boxen, sondern messe auf dem analogen Line-in im Mixer.
Danke für alle Anregungen und auch für "du Noob, das geht nicht!"-Antworten, aber dann nur, wenn sie auch was zum Lernen drin haben ;-)
Den 200ms Mittelwert der Linespannung nach aktiver Gleichrichtung mit einem RC Glied machen. Wenn man dann noch ein Analoginstrument anklemmt, ist es eine klassische Aussteueranzeige.
Wenn die Ausgangsspannung ein Maß sein soll, wie laut das Signal empfunden wird, hat man früher ein "Ohrkurvenfilter" vorgeschalten, "Geräuschbewertungskurve nach DIN 45405" "A-bewertet"
Also, ich möchte an einem Line-in-Eingang eines Mixers die aktuelle
Lautstärke messen.
Unter "Lautstärke" versteht man im allgemeinen, wie laut man als
Mensch ein Schallerzeugnis empfindet. So etwas wird dann immer
mit der Ohrempfindlichkeitskurve bewertet. Du solltest schon mal
etwas genauer erklären, was Du unter Lautstärke verstehst.
Den 200ms Mittelwert der Linespannung nach aktiver Gleichrichtung mit
einem RC Glied machen. Wenn man dann noch ein Analoginstrument anklemmt,
ist es eine klassische Aussteueranzeige.
Wenn man das richtig machen will, braucht es mehrere Ansätze für die Messperiode, je nach betrachtetem Spektralbereich. Für den RMS z.B. werden ferner oft 300ms verwendet.
So oder so ist das natürlich erst mal der ->Pegel. Welche Lautstärke das dann real ergibt, wird auch noch von den Lautsprechern abhängen.
Danke für alle Anregungen und auch für "du Noob, das geht
nicht!"-Antworten, aber dann nur, wenn sie auch was zum Lernen drin
haben ;-)
Das was du machen willst gibt es schon seit 50Jahren oder mehr. Mein Opa hatte das schon mit einem magischem Augen in seinem Tonband. :-D
Es heisst VU Meter. Sowas geht auch komplett analog mit Zeigerinstrument. War in den 70ern wohl mal cool, in den 80ern uncool und jetzt kommt es langsam wieder. Es geht auch mit speziellen ICs die in den 80ern mal cool waren. LM3914, LM3915, LM3916. Keine Ahnung ob die heute noch gefertigt werden. Du brauchst aber eher was logartyhmisches.
Du koenntest dir z.B bei heise.de einen USB-Stick mit alten Elrads
kaufen wo mindestens ein, wenn nicht sogar mehrere solcher Projekte drin waren. Das hat den Vorteil das du dann nicht nur den Schaltplan bekommst sondern auch eine Erklaerung der Schaltung und die Funktionsweise verstehst.
Theorethisch koennte man heute direkt gleichrichten, etwas filtern und danach in einen Microcontroller. Das Problem ist nur das die Anzeigen logarithmisch sind, also brauchst du eigentlich einen Microcontroller mit 16Bit Eingaengen und die am besten noch schnell. Das ist unschoen.
Ich hab das deshalb so geloest das ich eine externe Logarithmierung klassisch mit OP vorgenommen habe. Die ist nicht perfekt aber erstmal sinnvoll. Ausserdem etwas Filterung. (aliasing!) Dann ab in einen billigen Mikrokontroller (hier STM32F30) des sampelt mit 11-12bit. Dann nochmal etwas Kompression ueber ein Array um auf 6Bit runter zu kommen und dann Ausgabe auf 64Segmenten mit 200Hz Wiederholrate und Peakhold. Sieht SEHR cool aus.
Du kannst auch wieder die Opatechnik machen. Es gibt Thermometerroehren. (EM84???) Die hatten nicht wie die Augen zwei Striche oder Faecher die zugingen sondern einen Balken. Gab es frueher mal billig weil die Opas die nicht fuer ihre alten Radios brauchen konnten. Damit hab ich sowas auch schonmal gemacht. Sieht auch cool aus. Allerdings muss du dann natuerlich eine Roehre heizen und so (Gedaechtnis) 170V herstellen. (Boost Converter)
Aber ich denke so langsam koennten LEDs wieder cool werden. Aber nicht nur 6 oder 10LEDs wie in den 80ern sondern wenigstens 30 oder 60. Bei einer Updaterate >150Hz nimmt unser Auge das dann als analoge Anzeige war und es wird cool.
Ist jedenfalls ein lustiges kleines Projekt fuer lange Winterabende das meine Stereoanlage sehr bereichert! Sinnloss, aber schoen, also Kunst. ;-D
Wenn deine Ansprueche sehr gering sind dann kannst du auch sowas nachbauen wie es in den 80ern in Tapedecks drin war. Es gab da ein paar japanische SpezialICs die das machen konnten. (Sanyo LBxxxx?)
Bei Kleinanzeigen nach einem moeglichst billigen und garantiert defekten Tapedeck schauen das so LED enthaelt. Bei der Elektro-Tanya nach einem Schaltplan suchen. Schauen ob du die ICs noch irgendwo bekommst. (unwahrscheinlich) Dann das Tapedecke fuer 10Euro kaufen und ausschlachten.
Teurere Geraete hatten das eher im VFD integriert und das hat das die Front-MCU mitgemacht.
Es gab sogar (sehr selten) ein SpezialIC das direkt auf SPDIF oder I2S (weiss nicht mehr so genau) sitzen konnte und da ein VU Meter gemacht hat. Ich glaube von Panasonic. Wuerde man heute wohl mit einem billigen chinesischen FPGA machen wenn man Verilog drauf hat.
Dass da so viel Zeug hinter steckt, hatte ich irgendwie schon im Kopf, gerade den Unterschied zwischen db und Sone. Dass das so ausarten würde technisch, habe ich nur heimlich befürchtet...
Um mich mal selbst aus der Schlinge rauszureden, es gibt einen Unterschied zwischen Lautstärke und Lautheit! So... Hilft mir auch nicht so sehr weiter... ^-^ Nochmal zur Anwendung... Ich möchte nur ganz im Groben einen Wert haben, den ich ganz digital auf einem Display anzeigen kann. Es soll kein Show-Effekt sein, muss aber auch nicht auf 2 Stellen hinterm Komma stimmen.
Meine Idee bisher ist, hinter dem NE5532 den Volt-Wert ^^ über einen CD4051 auf den ADC eines ESP32 zu lenken, der ein Display ansteuert, welches daraus einen Balken macht. Das schöne an digitalen Messwerten ist ja, dass man sie mit Software so verbiegen kann, dass es gut aussieht ^-^
Ich möchte nur ganz im Groben einen Wert haben, den ich ganz
digital auf einem Display anzeigen kann.
Deine Ohren arbeiten Logarithmisch. Also musst du schon zumindest
so grob irgendwie logarithmieren. Es muss nicht perfekt sein. Die alte Dioden/Transistorloesung in der Rueckkopplung eins OPs reicht aus.
Meine Idee bisher ist, hinter dem NE5532 den Volt-Wert ^^ über einen
CD4051 auf den ADC eines ESP32 zu lenken, der ein Display ansteuert,
welches daraus einen Balken macht.
Ich weiss zwar nicht was der CD4051 dabei soll, aber im Prinzip hab
ich dir oben sowas aenliches beschrieben. Du darfst auch gerne einen ESP32 nutzen auch wenn der fuer sowas sicher erheblich ueberdimensioniert ist.
Also ja, fang an.
und dafür gibt es logarithmische Detektoren. Einer der bekanntesten ist
der AD8307
Ja klar, kostet bei Reichelt 17.50Euro. Nimmt man wenn es genau sein muss. Aber hier ueberfluessig.
Schau, so hab ich das gemacht. Viel billiger und ausreichend gut. ICh mein die Schaltung hab ich irgendwo (Elrad?) geklaut. Funktioniert hier. Die Diode ist das deshalb drin weil ich da einen Eimer voll hab. Geht auch irgendwas anders.
bei mir sind die immer noch voll cool, Fächer, Band oder
doppelter-Rundfächer.
Ja, sieht nett aus. Aber sind ja nicht ganz billig und haben eine begrenzte Lebensdauer. Da haette ich immer ein schlechtes Gefuehl wenn man so eine Schaltung einfach so an laesst...
Aber sind ja nicht ganz billig und haben eine
begrenzte Lebensdauer.
Stimmt, bei unserem GRundig 4395 aus 1962 habe ich die EM84 etwa Mitte/Ende der 80er Jahre ausgewechselt wegen zu geringer Leuchtkraft, damals kostete sie bei BTB-Elektronik lächerliche etwa 3,50 DM. Heute werden dafür Apothekenpreise verlangt, ist aber auch schon wieder >35 JAhre später.
Heute werden dafür Apothekenpreise verlangt, ist aber auch
schon wieder >35 JAhre später.
Das kann ich auch verstehen. Die Teile werden ja auch nicht
mehr gefertigt und irgendwann muss der NOS mal aufgebraucht sein.
Und ueberleg mal wieviel oder besser wie wenig Betriebsstunden
so ein altes Tonband hatte. Das steht ja immer mal viele Tage
ausgeschaltet rum. Bei mir haengt meine Anzeige aber dauernd
am Verstaerker. Vermutlich brauchte man da einmal im Jahr
ein neues Auge.
Das ist quasi schon die Lösung mit Schleifchen. Aber wow, geht genau in die Richtung, ja, und ob ich da noch nen ATTiny verbaue, tut auch nix mehr zur Sache ^-^
Ich weiss zwar nicht was der CD4051 dabei soll, aber im Prinzip hab
ich dir oben sowas aenliches beschrieben. Du darfst auch gerne einen
ESP32 nutzen auch wenn der fuer sowas sicher erheblich
ueberdimensioniert ist.
Der ESP32 hat 1 ADC (2 minus 1 x WLAN), mein Projekt hat 16 analoge Kanäle. Der CD4051 multiplext das ganze dann.
Was den Logarithmus angeht: Auf einem ESP32 sind das durchaus, ja, ein paar Zeilen Code, aber machbar. Es heißt hier ja "Mikrocontroller", nicht "alles in Hardware wie damals" ;)
Hm, bei mir eine halbe Zeile. Auf dem von mir verwendeten STM32F030 sieht das so aus:
1
constunsignedcharmylog64[1024]=
2
{
3
...
4
}
1
//ADC-Wert auslesen
2
data=readADC();
3
4
//Logarythmieren und an Anzeige schicken
5
ay0438_set_mono64(mylog64[data],BAR_LINE);
Aber klar, ich verwende hier zwei STM32F030. Fuer jeden Kanal einen eigenen. Weil ich bin reich und kann mir das erlauben. Hm.. oder ich war nur faul und wollte einfach nur eine Arbeit doppelt verwenden. :-D
Also ich würde doch meinen, dass nicht der Schall als solches logarithmisch "agiert", sondern nur das Hörempfinden (des Menschen) und damit die Anzeige. Insofern sehe ich die notwendige Auflösung eines AD-Wandlers relativ entspannt.
Vor der logarithmisch skalierten Ausgabe (am Besten per Mikrocontroller) muss man aber mindestens zwei Kennlinien berücksichtigen:
a) die Frequenz-Kennlinie des verwendeten Mikrofons
a) die Frequenz-Kennlinie des menschlichen Gehörs
Wenn es sich um sehr breitbandige Geräusche handelt, kann man "irgendwie" Mittelwerte bilden, je spezieller/reiner der Ton, desto genauer sollte man sich nach der Frequenz-Charakteristik richten.
Man sieht also, wenn man es gut machen will, kann der Aufwand software-seitig recht beachtlich werden.
Sowas geht auch komplett analog mit Zeigerinstrument.
Stimmt !
War in den 70ern wohl mal cool, in den 80ern uncool
Stimmt ! In den 80ern mussten es LEDs sein. Die waren neu und mussten verbaut werden. Und wenn es nur 3-5 Stück waren!
und jetzt kommt es langsam wieder.
Stimmt ! In der Tat!
Der erste Schritt war, dass man die analogen Anzeigen, wie auch beim Auto linearisiert und beschleunigt hat. D.h. die Trägheit des Zeigers wird mit einer vorkompensierenden Ansteuerung überwunden und schnell gemacht. Dabei entsteht sofort die Option der Frequenzauswahl und Ansprechverhaltens. Das war so in den 1990ern bis in die 2000er.
Dann begann man, die Anzeigen digital zu verpacken, d.h. das analoge Instrument wurde auf dem Bildschirm nachgebaut. Das begann mit den schnellen PCs und den günstigeren UCs und Displays ab den 2000ern.
Der neueste Schrei ist, das zu die Mikroanzeigen in den Pulten zu verwenden! Erst waren es auch hier nur virtuelle LED-Balken, dann virtuelle 7-Segment-Anzeigen, damit es schön alt aussah (geglättete Fonts sind ja langweilig) und nun kommen die Zeigerinstrumente rein:
Solidstate baut die z.B. in den Displays der DAW-Controller ein (Bild)
Der Repräsentant, der mir das vor einiger Zeit andrehen wollte, war ganz stolz, dass sie die ersten waren, die sowas in digitaler Form anboten, hatte dann aber Probleme, seine Kinnlade wieder zuzubekommen, als er meine "minimal" größerere (und vor allem genauere) digitale Anzeige auf meinem Monitor sah, welche ich mit einem FPGA realisiere. Die funktioniert ähnlich wie meine FPGA-Uhr , nur agiler, ist parametriebar und sieht echter aus, weil sie mit 120Hz läuft.
Aufgrund der Größe ist bei entsprechendem Zoom auf ein sehr genaues Ablesen möglich, womit ich mich an dem Microdisplay der UF1 etwas schwer tue. Der interne Prozessor hat auch so seine Probleme, das Display schnell genug upzudaten. Da sind eben Limits.
Ich persönlich halte davon wenig. Mit einer LED-Bar-Anzeige hat man regelmäßig immer 2-3 Balken parallel laufen, die MAX, MEAN, und RMS angeben. Das ist dann auch eine musikalisch abmischtechisch verwertbare Information.
funktioniert ähnlich wie meine FPGA-Uhr , nur agiler, ist parametriebar
und sieht echter aus, weil sie mit 120Hz läuft.
Das ist ein wichtiger Punkt. Ich hatte meine Anzeige erst mit 70Hz laufen weil man halt so denkt das dies bei Monitoren auch so war/ist und wohl reichen wird fuers Auge. Weil ich aber am Ende jede Menge Rechenzeit uebrig hatte hab ich es dann auf 200Hz hochgeschraubt. Das sieht dann sofort viel fluessiger und eleganter aus.
Ich persönlich halte davon wenig.
Man muss unterscheiden zwischen, ich brauch was cooles fuer Wohnzimmer und eine ernste Messeinrichtung mit Sinn!
Aber ich verstehe deinen Einwand weil ich Glaser auch ab
und an im Klimaschrank bewunder. :-D
Sieh es mal so, ich hab einfach gemacht und es sieht gut aus,
vielleicht integrieren/mitteln die Fluessigkristalle ja auch schon.
Aber die Segmente werden hier ja direkt angesprochen und nicht
mit so einem Multiplexgehampel. Das wird auch ein Vorteil sein.
Man sieht also, wenn man es gut machen will, kann der Aufwand
software-seitig recht beachtlich werden.
Ja, das ist wahr. Vor Herrn Fourier habe ich mich bisher einigermaßen erfolgreicht gedrückt und mir mit einfachen Integralen geholfen, aber du hast Recht, es hilft nix, und ich muss mich mal auf den Hosenboden setzen.
Man sieht also, wenn man es gut machen will, kann der Aufwand
software-seitig recht beachtlich werden.
Ja, das ist wahr. Vor Herrn Fourier habe ich mich bisher einigermaßen
erfolgreicht gedrückt und mir mit einfachen Integralen geholfen, aber du
hast Recht, es hilft nix, und ich muss mich mal auf den Hosenboden
setzen.
Für's Wohnzimmer genügt diese optisch ansprechende Schaltung aus
einzelnen LEDs:
Also fuer mein Wohnzimmer nicht. Ich wollte auch Peakhold haben wo die oberste LED immer so langsam an den leisen Stellen runtertropft. Ohne geht ja mal gar nicht, das ist dann so 80er. :-p
Showtec Pixel Panel 1024 64 x 16 individuell ansteuerbare RGB-Pixelmatrix. Geht bis 400Hz update Rate. Wäre in DMX zu programmieren. Das hat 250kbps Protokollrate und wäre eine interessante Programmieraufgabe.
Allerdings bin ich da mit einem FPGA-Modul und einem kleinen RGB-Bildschirm billiger.
Nimm einfach einen AD636.
Dann hast Du True RMS sowohl liniar, als auch noch logarithmisch.
Eine Zeitkonstante kannst Du auch noch mit einem Kondensator
bestimmen. Eventuell noch einen Bandpass vorschalten.
hamisch
Hm..bei Mouser gerade 57Euro pro Stueck. Klar, wenn man einen
Goldesel hat eine super Loesung. .-)
... wobei 1g Gold schon reichen würde pro Chip bei den aktuellen Preisen.
Das ist aber das Problem bei diesen Chips: Die sind zu speziell und laufen nicht in ausreichenden Stückzahlen. Die sterben auch immer mehr weg.
Das kriegt man heute mit einem €15,- FPGA billiger hin, einschließlich konfigurierbarer Darstellungen und VGA-Ausgang. Einen ADC der bis 50kHz arbeitet und eine für die Anforderung ausreichende Genauigkeit hat, kann man mit einem Rauschgenerator und einem Dezimator leicht nachbilden:
http://www.96khz.org/oldpages/pldpdmadc.htm
In einen aktuellen Artix7-25 passen geschätzt 40-50 davon rein (ein Dezimatorfrontend /-Speicher für jeden Kanal + 1 zyklische Auswerteeinheit für alle Kanäle). Macht 16 Frequenzen mit je 3 Zeitkonstanten. Die Multiplier fürs TRMS reichen auch voll parallel.