Hallo zusammen. An meiner Hifi-Anlage hängen am analogen Audioeingang verschiedene QUellen (TV, Raspi, ...). Ich möchte dass die Anlage automatisch eingeschaltet wird, wenn an einer der QUellen ein Audiosignal für länger als 1 s anliegt und nach 5 min ohne Signal soll der Verstärker wieder ausgeschaltet werden. Realisieren möchte ich das Ganze mit einem Arduino. Geplant ist für jede Quelle einen eigenen ADC-Eingang zu verwenden. Vorgeschaltet mit Buffer und OPV dahinter. Mit einem digitalen Ausgang soll über ein Relais der Verstärker geschaltet werden. Allerdings wird die Erstellung der Wartezeiten von 5 min glaube ich ein Problem. Kann man mit einem Arduino UNO solche langen delay-Zeiten realisieren? Über weitere Verbesserungsvorschläge bin ich offen. Danke im Vorraus
Chris meier schrieb: > Realisieren möchte ich das Ganze mit einem Arduino. Geplant ist für jede > Quelle einen eigenen ADC-Eingang zu verwenden. Vorgeschaltet mit Buffer > und OPV dahinter. Mit einem digitalen Ausgang soll über ein Relais der > Verstärker geschaltet werden. So kompliziert würde ich das gar nicht machen. Es reicht ja mit (hochohmigen) Komparatoren an allen Audioquellen zu detektieren, ob hier ein Signal eine Schwellen-Lautstärke überschreitet. Am Arduino ist dann für jede Quelle nur noch ein normaler Digitalinput nötig. Prinzipiell könnte mann auch noch alle Detektoren per Hardware (z.B. Dioden) ver-odern, und kommt mit einem einzigen Input aus. > Allerdings wird die Erstellung der Wartezeiten von 5 min glaube ich ein > Problem. Kann man mit einem Arduino UNO solche langen delay-Zeiten > realisieren? Ja. Es muss ja nicht auf die Sekunde genau werden. Du kannst z.B. einen Timer-Interrupt alle 1s aufrufen, und dort einen Zähler runterzählen, sobald auf keinem der Eingänge ein Signal anliegt. Wenn der Zähler von 300 auf 0 runtergezählt hat, schaltest du ab. Man könnte das ganze auch komplett diskret aufbauen, dazu benötigt man ein re-triggerbares Monoflop, das bis 5 Minuten "kann". Klassischerweise hat man hierfür z.B. ein 74HC5555 verwendet.
Der Arduino ist völlig überflüssig und ersetzt gerade mal ein retriggerbares Monoflop, da der Rest der Schaltung sowieso in Hardware gebaut werden muss. Dafür muss er dauernd gespeist werden und ich verwette meinen Hameg gegen 100 Spammails für Nagelpilz, das der mehr Strom verbraucht als ein 4538. Joe F. schrieb: > ein 74HC5555 Nachfolger des 555 in TTL kompatibel?
:
Bearbeitet durch User
Matthias S. schrieb: > Joe F. schrieb: >> ein 74HC5555 > > Nachfolger des 555 in TTL kompatibel? Ne. Mit Oszillator und 24-bit Counter. Feines Teil.
Chris meier schrieb: > Kann man mit einem Arduino UNO solche langen delay-Zeiten realisieren? Sicher, aber man macht das nicht mit einem delay, sondern millis zählen. Bloss: Was nützt das Einschalten, er muss auch auf den richtigen Eingang umschalten. Dazu muss er wohl so etwas wie den Fernbedienungseingang des Verstärkers nutzen, und dessen Eigenschaften musst du erst mal rausfinden. Umschalten wenn 2 Quellen gleichzeitig aktiv sind aber abwechselnd leise werden kann dann lustig sein.
Joe F. schrieb: > So kompliziert würde ich das gar nicht machen. > Es reicht ja mit (hochohmigen) Komparatoren an allen Audioquellen zu > detektieren, ob hier ein Signal eine Schwellen-Lautstärke überschreitet. Ja, dann braucht er ja auch nur die dreifache Menge Bauelemente. Sehr elegant! Matthias S. schrieb: > Dafür muss er dauernd gespeist werden und ich verwette meinen Hameg > gegen 100 Spammails für Nagelpilz, das der mehr Strom verbraucht als ein > 4538. Ist doch absolut irrelevant. So ein AVR kann ja einfach nur einmal pro Sekunde aufwachen, kurz ein paar wenige ADC Samples holen und sich dann wieder schlafen legen. Im power-down braucht so ein AVR bei 3V Speisung ganze 5uA, also 15uW. Ich denke damit kann man leben, auch wenn ein 4538 vielleicht noch weniger braucht.
Joe F. schrieb: > Ja. Es muss ja nicht auf die Sekunde genau werden. > Du kannst z.B. einen Timer-Interrupt alle 1s aufrufen, und dort einen > Zähler runterzählen, sobald auf keinem der Eingänge ein Signal anliegt. > Wenn der Zähler von 300 auf 0 runtergezählt hat, schaltest du ab. Ja klar, da hätte ich selber auch draufkommen können :) Guter Hinweis Matthias S. schrieb: > Der Arduino ist völlig überflüssig und ersetzt gerade mal ein > retriggerbares Monoflop, da der Rest der Schaltung sowieso in Hardware > gebaut werden muss. > Dafür muss er dauernd gespeist werden und ich verwette meinen Hameg > gegen 100 Spammails für Nagelpilz, das der mehr Strom verbraucht als ein > 4538. Stromverbrauch ist irrelevant :) MaWin schrieb: > Bloss: Was nützt das Einschalten, er muss auch auf den richtigen Eingang > umschalten. Dazu muss er wohl so etwas wie den Fernbedienungseingang des > Verstärkers nutzen, und dessen Eigenschaften musst du erst mal > rausfinden. zu 80% ist der Eingang des TV aktiv, wenn nötig schalte ich per Hand zw den Quellen um. Das klappt schon.
Guest schrieb: > Ja, dann braucht er ja auch nur die dreifache Menge Bauelemente. Sehr > elegant! Ob Buffer-OPV oder Komparator, diese Entscheidung erhöht die Anzahl der externen Bauteile nicht.
Chris meier schrieb: > Allerdings wird die Erstellung der Wartezeiten von 5 min glaube ich ein > Problem. Nicht glauben, sondern im Manual nachlesen. Der Systemtimer der Arduino-Lib kann von 1ms bis zu 49,7 Tage. Ist aber auch kein Hexenwerk auf einem bare metal AVR einen 1ms Timerinterrupt aufzusetzen und darin eine uint32_t Variable zählen zu lassen.
:
Bearbeitet durch User
Matthias S. schrieb: > Dafür muss er dauernd gespeist werden und ich verwette meinen Hameg > gegen 100 Spammails für Nagelpilz, das der mehr Strom verbraucht als ein > 4538. Nun, dem Printtrafo wird das völlig schnuppe sein. Sein Eigenverbrauch wird deutlich höher sein, als ein AVR im Idle zieht.
Chris meier schrieb: > Allerdings wird die Erstellung der Wartezeiten von 5 min glaube ich ein > Problem. In einer meiner Anwendungen bearbeitet der Arduino sogar mehrere Stunden. Befasse Dich mit den Grundlagen des Arduino: MaWin schrieb: > Sicher, aber man macht das nicht mit einem delay, sondern millis zählen. Peter D. schrieb: > Nicht glauben, sondern im Manual nachlesen. > Der Systemtimer der Arduino-Lib kann von 1ms bis zu 49,7 Tage. Da macht (ms) einen Überlauf. Das ist egal, hier hat es auch nach über einem Jahr Betrieb keinen Absturz gegeben. Guest schrieb: > Im power-down braucht so ein AVR bei 3V Speisung ganze 5uA, Ja, aber dann sitzt er nicht auf einem Arduino-Board mit USB-Interface, Spannungsregler und LED. Ich habe eine Stromsparanwendung, da kam ein A*-ProMini zum Einsatz, dem ich Regler und LED abgelötet habe.
Joe F. schrieb: > Ob Buffer-OPV oder Komparator, diese Entscheidung erhöht die Anzahl der > externen Bauteile nicht. Man kann sich die Buffer-OPVs sparen, indem man einen AVR mit ADC mit Verstärkung *20 benutzt. Z.B. mit dem ATtiny24 kann man so 7 Quellen überwachen.
Irgendwie erschließt sich mir der Sinn nicht. Wenn jemand in der Lage ist, einen Zuspieler in Gang zu setzen, kann er auch den Knopf an der Fernbedienung für die Anlage betätigen. Die muss unter Strom stehen, damit sie angeht. Oder sie muss von einer Schaltung ans Netzt, die unter Spannung steht. Irgendwas muss permanent in Bereitschaft sein. Die Anlage kann das aber besser. Das Allerbeste wäre nach wie vor: Alles an einer Steckdosenleiste.
Es wäre unschön, wenn man erst "Krach" braucht, damit die Anlage an geht. Insofern ist es angenehmer, wenn der Triggerpegel bei -70 .. -60 dbFS liegt. Bei einem gewöhnlichen Audiosignal von -1V ... +1V bedeutet dies, der ADC muss ein Signal außerhalb des Bandes von -1mV ... +1mV detektieren. Eine Verstärkung ist hier sehr angebracht. Für billig und funktionsschwach mit einem Elko beigebogen. Wer was auf sich hält, baut symmetrisch. Z.B. AVR-ADC*20, wobei der Tiny als Vorstufe seine Versorgung von -0.7 ... 4.3V hat.
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.