Funkaktivierung

Serenifly: Es gibt auch Versionen (nicht unbedingt direkte Klone) die Quarze verwenden.

z.B. der Freaduino: http://www.komputer.de/zen/index.php?main_page=product_info&cPath=21&products_id=190

Der Seeduino: http://www.exp-tech.de/Mainboards/Seeeduino-V3-Atmega-328P.html

Oder der Olimexino: http://www.exp-tech.de/Mainboards/Olimexino-328-Arduino-Like-Development-Board.html

Welches der vier genannten ist denn das beste bzw. gibt es unter diesen einen wirklichen qualitativen Unterschied? Wenn nicht werde ich mir wahrscheinlich das letzte holen x)

Noch eine kurze Ergänzung (wenn das irgendwas an dem ganzen Aufbau hier verändern sollte.) Ich verwende hier keine normalen LED-Sachen sondern EL-Schnüre. Bis jetzt ist also auf dem Arduino auch noch ein EL Escudo Dos http://www.exp-tech.de/Mainboards/Sparkfun-EL-Escudo-Dos-COM-10878.html

mit einem 12V Inverter. Hoffe mal, dass das nicht rgendwie in Konflikt mit den genannten Boards oder den XBee's steht.

Reicht es aus wenn ich das Signal vom PC an XBee und Mediaplayer gleichzeitig über einen Macrorecorder ausgebe oder würdet ihr empfehlen es über einen Leonardo zu machen der dann beides ansteuert?

Der Olimexino ist am besten. Da hat man sich wirklich Gedanken beim Design gemacht, einige Fehler ausgebessert und ihn robuster gemacht. Hat auch einen Li-Ionen Laderegler auf dem Board. Entsprechend auch etwas teurer.

Ich habe einen Freaduino Mega (wegen dem Schaltregler) und der funktioniert einwandfrei, aber die Stiftlisten sind etwas krumm verlötet. Insgesamt nicht wirklich schlecht, aber die Verarbeitung könnte besser sein.

Da die einen FTDI Chip statt einem Atmega für die USB Kommunikation haben musst du dafür einen Treiber installieren, aber das ist keine große Sache.

Serenifly: Der Olimexino ist am besten. Da hat man sich wirklich Gedanken beim Design gemacht, einige Fehler ausgebessert und ihn robuster gemacht. Hat auch einen Li-Ionen Laderegler auf dem Board. Entsprechend auch etwas teurer.

Ich habe einen Freaduino Mega (wegen dem Schaltregler) und der funktioniert einwandfrei, aber die Stiftlisten sind etwas krumm verlötet. Insgesamt nicht wirklich schlecht, aber die Verarbeitung könnte besser sein.

Da die einen FTDI Chip statt einem Atmega für die USB Kommunikation haben musst du dafür einen Treiber installieren, aber das ist keine große Sache.

Ok vielen Dank. Dann hol ich mir das nach dem Wochenende mal zusammen mit den XBee's :P

Sonst noch irgendwas was dir spontan einfallen würde worauf ich achten muss? :D

Ich finde den Olimexino auch am Besten konstruiert. Bei einem Quarz musst Du mit ~/- 30 ppm rechnen. Der Temperatureinfluß in dem Bereich in dem Du unterwegs bist ist höchstens +/- 3ppm. --> etwa 1/10s pro Stunde ohne überhaupt etwas einzustellen.

Ich kann die Olimexinos uneingeschränkt empfehlen. Der Temperaturbereich, die zulässige Spannung (9-30V), und er Laderegler für Lithium Ionen Akkus ist genial. Dann braucht man auch keine 9V, sondern die 3,7V des Akkus reichen. Der Olimexino 32u4 ist um einiges billiger, aber wohl auch nicht so robust,wer aber den Spannungsbereich bis 30V und die Temperatur bis 85°C nicht braucht wird mit dem auch glücklich. Ich setze den 32u4 geren für spontane Beleuchtungsgeschichten mit ein paar LEDs und einem Akku ein.

Grüße,

Sven

ELWire: Reicht es aus wenn ich das Signal vom PC an XBee und Mediaplayer gleichzeitig über einen Macrorecorder ausgebe oder würdet ihr empfehlen es über einen Leonardo zu machen der dann beides ansteuert?

Vorsicht: Auf PCs laufen keine Echtzeitbetriebssysteme! Sondern Windows ode Linux oder sowas in der Art. Wenn Du einem PC irgendeinen Input gibst, als Signal über Serial, mit der Tastatur, per Mausklick oder auf andere Art, gibt es keinerlei garantierte Reaktionszeit, innerhalb der der PC auf den Input reagiert!

Sobald bei einer Aktion Festplattenzugriffe auftreten, mit Festplattenzugriffszeiten zwischen nahezu 0 (Daten sind im RAM-Cache oder Festplatte hat die Daten im Cache) bis zu zig Millisekunden, dauert die Reaktion eines PCs zwischen nahezu 0 bis zu zig Millisekunden. Damit dürfte der Start nicht besonders synchron werden.

Ich würde mich vermutlich nicht darauf verlassen wollen, dass ein PC immer in exakt derselben Zeit auf einen Startbefehl reagiert, um das Abspielen der Musik zu starten.

Hattest Du nicht etwas davon geschrieben, dass Du das Musikstück mit einer Pause und einem Metronom-Tick starten könntest?

Ich würde dann eher versuchen, an ein Audiosignal heranzukommen, irgendwo ein Line-Out, Kopfhörer- oder Lautsprecherausgang. Und dann zu Beginn den Spitzenpegel auswerten: Und das Startsignal für den EL-Arduino dann geben, wenn der erste Pegelausschlag am Audioausgang auftritt.

Also ungefähr wie folgt: - Musikstück so geschnitten, dass am Anfang eine Pause und ein Metronomtick als Synchronimpuls auftritt - Der Sync-Arduino ist an das Audiosignal angeschlossen - Zum Auftritt wird am PC ganz normal der Player gestartet und in der anschließenden Pause der Sync-Arduino - Sobald der Sync-Arduino den ersten Pegelausschlag feststellt, sendet er das Startsignal an den EL-Arduino - Der EL-Arduino beginnt nach Empfang des Startsignals mit dem Abspielen der EL-Show

Das hätte den Vorteil, dass Du nicht als zusätzliche Software-Layer noch einen Makrorekorder mit unbekanntem Zeitverhalten einfügen mußt. Und es hätte den Vorteil, dass Du als Sync-Arduino auch keinen Leonardo brauchst, um Tastatur- oder Maussignale an den PC zu übertragen. Das ist nämlich eine so hakelige Angelegenheit, dass Du beim kleinsten Fehler den Leonardo außer Funktion setzt und dann erstmal mit einem Programmer wieder das Programm zurücksetzen müßtest.

Also wenn Du etwas mit einem Leonardo und PC-Tastatur/Maus über USB manipulieren möchtest, würde ich unbedingt die Anschaffung eines ISP-Programmers von Anfang an mit einplanen.

Oder eben auf Leonardo verzichten und über das Audiosignal synchronisieren, wenn es startet. Dann reicht als Sync-Arduino jeder beliebige.

jurs:

Alles klar danke. Ja bis jetzt habe ich es halt einfach so gemacht, dass ich z. B. 3 Ticks von einem 60BPM Metronom (1 Tick pro Sekunde) vor ein Lied geschnitten habe... Danach musste ich halt ein paar mal ausprobieren wie lange der Delay nach dem einschalten des Arduinos ist bis die Sequenz abgespielt wird. Wenn ich genau diese Zeit dann zwischen das Metronom und das eigentliche Lied nochmal dazwischen geschnitten habe, konnte ich das Lied starten, habe dann so genau wies geht immer beim dritten Takt den Resetknopf gedrückt und durch das abgestimmte Delay hatte dann eigentlich jedes mal das ganze recht synchron gestartet...

Wie mache ich das dann, dass der Synch-Arduino auf den Dritten Takt reagiert oder genau da sein Signal abgibt? Wusste gar nicht, dass der Audiosignale vom PC auslesen kann :D

ELWire: Wie mache ich das dann, dass der Synch-Arduino auf den Dritten Takt reagiert oder genau da sein Signal abgibt? Wusste gar nicht, dass der Audiosignale vom PC auslesen kann :D

Der Arduino hat z.B. auf dem UNO sechs Analogeingänge, mit dem er Spannungen von 0V bis 5V messen kann.

Nun ist ein Audiosignal zwar eine Wechselspannung von z.B. +/-2 Volt, aber diese Wechselspannung kannst Du über einen Spannungsteiler und einen Kondensator so mit einem Offset von 2,5V in den Arduino einkoppeln, dass dieser bei Nullpegel eine Spannung von 2,5V mißt, die beim Nullpegel konstant ist und die beim Anliegen eines Pegels im Takt des Audiosignals hoch und runter schwankt.

Ein Arduino hat nun zwar nicht die Fähigkeiten einer Soundkarte, und sowohl von der Auflösung (10 Bit) als auch von der Samplingrate (standardmäßig vielleicht 8000 Samples pro Sekunde) reicht das nicht für ein hochwertiges Audiorecording. Aber es reicht, um ein Audiosignal zu erkennen, wenn eines vorhanden ist. So daß man zum Beispiel "Nullpegel" und "Signal vorhanden" gut auseinander halten kann, wenn der Signalpegel nicht zu gering ist.

Zum Ankoppeln eines Audiosignals an den Arduino benötigst Du zusätzlich folgende Bauteile: - zwei Widerstände zu circa 100 Kilo-Ohm - ein Kondensator ca. 1µF bis 100µF Dazu Audiokabel mit Klinkenstecker, ggf. Breadboard, Krokoklemmen oder Audio-Klinkenbuchse zum Signalabgriff etc. Und natürlich einen Audioausgang wie LineOut oder Kopfhörerausgang, aus dem ein Audiosignal herauskommt.

Hast Du diese Bauteile?

Ein Synchronisieren auf den dritten Metronomtakt dürfte zwar ein wenig aufwändiger sein als auf den allerersten Pegelausschlag zu reagieren, aber das sollte wohl trotzdem mit einer Genauigkeit von besser als 0,01 Sekunden möglich sein, wenn vor und nach den Audioimpulsen ein sauberer Nullpegel vorhanden ist.

jurs: Der Arduino hat z.B. auf dem UNO sechs Analogeingänge, mit dem er Spannungen von 0V bis 5V messen kann.

Nun ist ein Audiosignal zwar eine Wechselspannung von z.B. +/-2 Volt, aber diese Wechselspannung kannst Du über einen Spannungsteiler und einen Kondensator so mit einem Offset von 2,5V in den Arduino einkoppeln, dass dieser bei Nullpegel eine Spannung von 2,5V mißt, die beim Nullpegel konstant ist und die beim Anliegen eines Pegels im Takt des Audiosignals hoch und runter schwankt.

Ein Arduino hat nun zwar nicht die Fähigkeiten einer Soundkarte, und sowohl von der Auflösung (10 Bit) als auch von der Samplingrate (standardmäßig vielleicht 8000 Samples pro Sekunde) reicht das nicht für ein hochwertiges Audiorecording. Aber es reicht, um ein Audiosignal zu erkennen, wenn eines vorhanden ist. So daß man zum Beispiel "Nullpegel" und "Signal vorhanden" gut auseinander halten kann, wenn der Signalpegel nicht zu gering ist.

Zum Ankoppeln eines Audiosignals an den Arduino benötigst Du zusätzlich folgende Bauteile: - zwei Widerstände zu circa 100 Kilo-Ohm - ein Kondensator ca. 1µF bis 100µF Dazu Audiokabel mit Klinkenstecker, ggf. Breadboard, Krokoklemmen oder Audio-Klinkenbuchse zum Signalabgriff etc. Und natürlich einen Audioausgang wie LineOut oder Kopfhörerausgang, aus dem ein Audiosignal herauskommt.

Hast Du diese Bauteile?

Ein Synchronisieren auf den dritten Metronomtakt dürfte zwar ein wenig aufwändiger sein als auf den allerersten Pegelausschlag zu reagieren, aber das sollte wohl trotzdem mit einer Genauigkeit von besser als 0,01 Sekunden möglich sein, wenn vor und nach den Audioimpulsen ein sauberer Nullpegel vorhanden ist.

Äääähm ich glaube, wenn man bis hierhin nur Bahnhof verstanden hat, sollte man es lieber über die Variante mit dem Leonardo machen oder? :D Ich bin leider nicht so das Technikgenie... :P Habe mit dem ganzen Arduinozeug (leider) erst letzte Woche angefangen und ich vermute darüber wird es kein Tutorial geben?

Bin jetzt grade mit dem einprogrammieren von dem kompletten Lied fertig geworden. Es dauert rund 1:55 und bei manueller Aktivierung (eine Hand Mediaplayer starten - andere Hand Resetknopf drücken), läuft es bei Zimmertemperatur mit dem normalen Arduino UNO bis hin zum Ende vollkommen synchron (wobei von 1:26 - 1:33 sogar fünf EL-Schnüre nochmal insgesamt 40 mal an- und ausgeschalten werden). Also soweit bin ich damit jetzt schon echt zufrieden. Das heißt wenn ich das dann noch nächste Woche auf den Olimexino umstelle, sollte ich damit keine Probleme mehr kriegen... Dann muss ich nur noch das mit der automatischen Aktivierung hin bekommen ^_^

ELWire: Äääähm ich glaube, wenn man bis hierhin nur Bahnhof verstanden hat, sollte man es lieber über die Variante mit dem Leonardo machen oder?

Es gibt immer verschiedene Möglichkeiten. Wähle diejenige Möglichkeit, mit der Du am besten klarkommst!

Die Auswertung eines Audisignals auf das Vorhandensein eines Audiopegels ist jedenfalls keine Raketenwissenschaft, erfordert aber als zusätzliche Hardwareschaltung die beiden genannten Widerstände und einen Kondensator zur Ankopplung des Signals an den Arduino.

Ich selbst habe einen Synchronstart für Arduino-Lichtshows bisher jedenfalls noch auf keine Art und Weise realisiert, und müßte da auch ggf. erstmal ausprobieren, was am praktikabelsten ist.