Hallo,
ich habe mal einen VU Meter für meinen Audio-Ausgang am Notebook
gebastelt mit einem LM3916.
Nun möchte ich damit gern meine Scheinwerfer steuern über einen
Atmega16. Ich hatte mir so etwas vorgestellt:
LM3916 -> Atmega16 -> Relais schalten -> Scheinwerfer 230V
Wenn der LM3916 der LM3916 bspw. ein Audiosignal von +1dB erkennt, dann
soll er Scheinwerfer 1 einschalten, bei +2db Scheinwefrer 2 ect. wie
auch immer das dann geschaltet wird. Zudem möchte ich mit dem Atmega
noch ein paar andere Sachen machen, weshalb ich die Relais nicht direkt
an dem LM3916 anschließen will.
Meine Frage: Wie realisiert man das am besten?
1) Die Ausgänge des LM3916 über einen Transistor auf >3,5V bringen und
an die Eingänge des Atmega?
2) Die Ausgänge des LM3916 an die ADCs des Atmega und beim Feststellen
einer Spannung Relais schalten?
3) Auf LM3916 verzichten und Audio-Signal direkt an einen ADC des
Atmega16? geht das überhaupt? Ich müsste ich sicher noch einen
Verstärker vor bauen etc. Außerdem ist ja die Lautstärke des
Audiosignals nicht unbedingt auch mehr Spannung oder?
Danke für eure Tipps.
Thomas Bauer schrieb:> Das heißt einfach einen Optokoppler zwischen? Und das bei jedem Ausgang?
Das wäre eine einfache Lösung. Auch Solid-State-Relais (SSR) haben LEDs,
und die SSRs können Scheinwerfer direkt ansteuern.
Wieso bitte Irrsin?
Ich möchte die Scheinwerfer nicht direkt über ein SSR anschließen. Der
Atmega soll auf Basis der Lautstärke noch andere Steuerungsaufgaben
übernehmen außer meine Scheinwerfer einzuschalten.
Deshalb muss der LM3916 auch an den Atmega angeschlossen werden über
Optokoppler oder wie auch immer sofern es nicht möglich ist, die
Lautstärke mit dem Atmega direkt zu messen.
LM3916 -> SSR -> Scheinwefer klappt nicht
LM3916 -> ??? -> Atmega -> Scheinwerfer/LCD/Motor etc..
Ich habe gehofft hier von euer Erfahrung auf diesem Gebiet profitieren
zu können. Ideen, die ich auf Basis meines Wissens entwickelt habe,
stehen im ersten Post. Wenn es einfachere/bessere/sinnvollere
Alternativen gibt, dann teilt Sie doch bitte mit. Wie soll ich mich
sonst in meinen Fähigkeiten auf diesem Gebiet weiterentwickeln können?
Man kann sich nicht alles autodidaktisch aneignen -> Erfahrung bspw.
nicht. Kann mir deshalb bitte jemand helfen?
Alles gut, Irrsinn bezog auf das Ganze. Angefangen von dem verrückt
anmutenden Projekt, von dem du ja nur einen wagen Teil erzählst. Oft
hilft es wenn die Gefragten in etwa erahnen können was es am Ende
überhaupt werden soll. Manchmal tun sich dann Wege auf, an die Du im
Moment gar nicht denkst und diese auch in deiner Liste der Alternativen
haben kannst. Dann ist da noch deine Herangehensweise und
Ausdrucksweise, so wie deine Vorkenntnisse. Die mich spontan auf
„Irrsinn“ gebracht haben.
Zurück zum Thema. Was immer Du nun vorhast und was immer genau die
Schaltung macht und wie sie aussieht in der Du den 3916 verbaut hast.
Eines sollte Dir klar sein. Der LM3916 ist lediglich ein aus mehreren
Komperatoren bestehende DotBar Treiber. Er misst keine Lautstärke. Er
wandelt eine Spannung in ein Digitales Signal um, das dann deine DotBar
„steuert“. Wenn dein Audioausgang direkt am 3916 anliegt misst Du
irgendetwas, aber keine Lautstärke. Was aus so einem Audioausgang
herauskommt ist eine wilde Frequenzmischung. Es ist nicht
auszuschließen, das es sich in irgend einer Weise auch vielleicht
proportional zur empfundenen Lautstärke verhält.
Wenn Du also nicht nur eine DotBar betreiben willst, sondern eh eine
menge anderer Dinge wie Motoren steuern etc. erledigen willst und eine
Digitale Verarbeitung auf einem µC dies bewerkstelligen kann und soll
macht es keinen Sinn den Umweg über den 3916 zu gehen. Da nimm den ADC.
Zwischen diesen und deinem Audioausgang gehört dann aber ein Filter. Im
Zweifel ein Tiefpass und am besten ein aktiver. Der hätte eigentlich
auch vor den 3916 gehört. Dann hast Du im µC einen digitalen Wert, der
proportional zum Mittelwert deiner Lautstärke ist. Mit dem kannst Du
dann machen was Du willst, wenn Du es denn kannst.
Etwas mehr Hintergrund zum Projekt:
Ich möchte gern sofern mein Notebook einen Song abspielt diesen in Sound
in einen Atmega schicken um daraufhin zwei dinge zu tun:
- Je nach Lautstärke unterschiedliche Scheinwerfer ein/aus schalten (was
so wie ich das verstanden habe auch mit LM3916 und SSR geht)
- Sofern ein Song abgespielt wird soll sich meine Spiegelkugel drehen +
Scheinwerfer da drauf an sein (momentan manuell über Tastendruck an/aus
geschaltet -> soll aber automatisch mit Sound an/aus gehen)
Das ist der Plan. Ich scheitere leider am Sound-Einlese-Problem. Ich
hatte das bereits mal über ADC versucht, aber höhere Lautsärke ist ja
nicht gleich mehr Spannung und umgekehrt. Daher macht das eigentlich
keinen Sinn ohne eine Vorverarbeitung. Der LM ist zwar nur ein VU Meter
aber er reagiert sofern ich laut und leise drehe. Also gar nicht so
schlecht. Daher dachte ich, den LM3916 zu verwenden.
Wie kann ich also den Pegel mit Atmega am ADC messen?
Audiosignal -> Aktiver Tiefpass mit OP-Amp -> ADC
Aber ich sehe an deinen Fragen, DU bist absoluter Anfänger auf beiden
Gebieten (Analogtechnik und µC) ich empfehle Dir mal zwei
Anfänger-Bücher. Lies die, von vorne bis Hinten und dann könnte das was
geben.
AVR Hardware und Programmierung in der Praxis, Florian Schäfer
Elektronik-Gar nicht Schwer Experimente mit Operationsverstärkern, Kurt
Dietrich. (Hier sind alle Bände gut)
Und mein Geheimtipp, wenn das alles neu ist für dich, fange mit Arduino
an. Die kannst Du Später ohne die Arduino spezifische IDE Programmieren.
Der Vorteil ist, das Du am Anfang sehr schnell Erfolgserlebnisse hast
und keine Probleme mit der µC HW haben wirst. Hier ist das Buch von Eric
Bartmann "Die elektronische Welt mit Arduino entdecken" einfach Spitze.
Thomas Bauer schrieb:> (was so wie ich das verstanden habe auch mit LM3916 und SSR geht)
Nein, das hast du falsch verstanden. Ein LM3916 alleine kann keine
Lautstärke bestimmen. Für eine VU-Meter Funktion muss ein
Spitzenwertgleichrichter und ein Filter davor.
Wenn ich ehrlich bin habe ich aber noch nicht kapiert, wie der ADC
Lautstärke messen soll. Ich dachte bisher, dass Lautstärke nicht =
Spanung ist. Der ADC misst aber ja Spannung.
Nur weil ich die Frequenz filtere (also oben und oben abschneide),
ändert sich doch daran nichts.
Thomas Bauer schrieb:> Wenn ich ehrlich bin habe ich aber noch nicht kapiert, wie der ADC> Lautstärke messen soll.
Genauso, wie der LM3916. Gegenüber dem LM3916 kann man bei ausreichend
schneller Abtastung die Spitzenwertbestimmung und das TP-Filter in den
µC verlagern.
Thomas Bauer schrieb:> Ich dachte bisher, dass Lautstärke nicht = Spanung ist. Der ADC misst> aber ja Spannung.
Doch. Je höher die Amplitude, desto höher die Lautstärke.
Thomas Bauer schrieb:> Wenn ich ehrlich bin habe ich aber noch nicht kapiert, wie der ADC> Lautstärke messen soll. Ich dachte bisher, dass Lautstärke nicht => Spanung ist. Der ADC misst aber ja Spannung.>> Nur weil ich die Frequenz filtere (also oben und oben abschneide),> ändert sich doch daran nichts.
Du hast zu wenig Grundwissen und ich denke es hat keiner hier Lust für
dich ein Lehrbuch zu schreiben meine Wenigkeit eingeschlossen. Es gibt
zwei Möglichkeiten. Entweder Du kaufst Dir Bücher und liest und
verstehst die, oder Du wählst den Weg und sammelst stück für stück
Informationen aus dem Internet, das meiste ist misst und experimentierst
sehr lange. Wenn Du gut ausgestattest bist mit Messgeräten ein
Oszilloskop ist Pflicht bei dem Thema kommst Du vielleicht auch ans
Ziel.
Grundsätzlich zur Lautstärke in einfachen Worten für Nichtfachleute:
Diese ist >>objektiv<< gesehen der mittlere Schalldruck. Wird der
Schalldruck durch einen elektrischen Lautsprecher erzeugt so ist dieser
proportional zur Auslenkung der Membrane des Lautsprechers respektive
der Geschwindigkeit dieser Auslenkung. Diese ist wiederum abhängig von
der Amplitude des den Lautsprecher ansteuernden elektrischen Signales
und der Geschwindigkeit der Änderung dies Signales. Einfach gesagt die
Spannung und die Zeit in der diese erreicht wird.
Subjektive Wahrnehmung von Lautstärke hängt teils vom Schalldruck ab
jedoch auch von der Frequenz und der Konstitution der Ohren des
hörenden. So kann der selbe Schalldruck bei verschiedenen Frequenzen von
einem Hörer unterschiedlich laut wahrgenommen werden. So werden
besonders bei älteren Menschen höre Frequenzen trotz des selben
Schalldruckes weniger laut wahrgenommen. Dies ist eine andere Baustelle.
Obwohl es gegen meine Grundsätze ist habe ich gerade einmal kurz mein
iPhone für dich am Oszilloskop angeschlossen. Was du dort siehst (gelb)
ist ein Stück von Shakira wie es aus dem Telefon kommt. Eine wilde
Mischung aus unterschiedlichen Amplituden und Frequenzen. Dies könnte
man sicher ohne großartige weitere Filterung auf den ADC geben. Je nach
dem wie und wie schnell du dann abtastest und in der Software
auswertest bekommst du zwischen jeder Abfrage im schlimmsten Fall völlig
unterschiedliche Werte die nichts mehr mit der subjektiven oder
objektiven Lautstärke zu tun haben. Und zwar weil du dann vielleicht
einmal auf der Spitze einer sehr großen Amplitude abfragst und beim
anderen mal irgendwo in einem Wellental. So kann man es natürlich auch
machen, wenn man dann in der Lage ist entsprechende Software Filter
anzuwenden und die Signale in einer gewünschten Art und Weise zu
glätten. Ich behaupte an dieser Stelle aber einmal das kannst du nicht.
Wenn man das Ganze durch einen aktiven Tiefpass laufen lässt bekommt man
eine geglättete Spannung (blau) die in etwa je nach Dimensionierung des
Filters dem Mittelwert der Amplituden entspricht und ist in gewisser
Weise proportional zur objektiven oder subjektiven Lautstärke der Musik
ist. Signal kann dann auf den ADC gegeben werden und in der Software
einfach ausgewertet und weiterverarbeitet werden.
Thomas H. schrieb:> Wenn man das Ganze durch einen aktiven Tiefpass laufen lässt bekommt man> eine geglättete Spannung (blau) die in etwa je nach Dimensionierung des> Filters dem Mittelwert der Amplituden entspricht und ist in gewisser> Weise proportional zur objektiven oder subjektiven Lautstärke der Musik> ist.
Der Mittelwert einer reinen Wechselspannung ist 0 und genau das kommt
aus einem Tiefpass - egal ob passiv oder aktiv - raus, wenn das Signal
nicht irgendwo begrenzt wird. Damit kann man nichts anfangen. Ohne
Gleichrichter vor dem Tiefpass ist das irgendetwas, aber nicht die für
ein richtiges VU-Meter erforderliche, zeitlich gefilterte
Signalamplitude. Und natürlich darf man, wenn man von Signalen spricht,
die Begriffe Momentanwert und Amplitude nicht in einen Topf schmeißen.
Letzteres ergibt sich aus der Hüllkurve.
Alles theoretisch vollkommen richtig. Ich habe es stark vereinfacht und
auch darauf hingewiesen. Weil ich wie geschrieben kein Lehrbuch
schreiben werde und weil er die "ganze Wahrheit" weder versteht, noch
umsetzen können wird. Wenn er die entsprechenden hinweise befolgt und
Bücher liest oder funktionierende Beispiele die er ja schon gefunden hat
nachbaut hat er seine Gleichrichtung auch ohne das jemand hier ein Buch
schreibt.
Vielen Dank.
Hab mir bei Amazon eines der vorgeschlagenen Bücher bestellt. Ein Oszi
ist ziemlich teuer. Da muss ich erst mal schauen.
Bis das Buch da ist experimentier ich schon mal ein wenig. Wirklich
vielen Dank für die Erklärungen - hilft mir sehr.