Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
anleitungen:spezial:sound_servoplatine [2024/09/24 13:37] – [Sound Servoplatine] gerald_bock | anleitungen:spezial:sound_servoplatine [2024/09/29 19:37] (aktuell) – gerald_bock | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Sound Servoplatine ====== | ====== Sound Servoplatine ====== | ||
- | + | \\ | |
- | **<color # | + | |
Über die Servo-Platine 510 können drei Soundmodule angesteuert werden. | Über die Servo-Platine 510 können drei Soundmodule angesteuert werden. | ||
- | Es können | + | \\ |
- | + | Es werden dabei JQ6500 Module oder MP3-TF16-p/ | |
- | + | \\ | |
- | ====== ATTiny 85 ====== | + | Die drei Module können auch parallel je einen Sound abspielen. |
+ | \\ | ||
+ | \\ | ||
+ | Das JQ6500 hat dabei den Vorteil das es bereits 2 MByte Speicher enthält, was für etliche Soundprojekte ausreichend sein dürfte. | ||
+ | \\ | ||
+ | Das MP3-TF-16p nutzt hingegen eine MicroSD-Karte mit bis zu 32 GByte und vereinfacht durch die mögliche Ordnerstruktur die Verwaltung der Sounddaten. | ||
+ | \\ | ||
+ | \\ | ||
+ | ====== Vorbereitung Hardware ====== | ||
+ | ===== ATTiny 85 ===== | ||
+ | Als Servoplatine eignet sich jede 510DE-Platine, | ||
+ | \\ | ||
+ | Die Lötjumper für den Servobetrieb SERVO, SERVO1, SERVO2, SERVO3 müssen geschlossen werden. | ||
+ | \\ | ||
Zunächst muss der ATTiny für die Servoplatine programmiert werden. | Zunächst muss der ATTiny für die Servoplatine programmiert werden. | ||
- | + | Die Anleitung dazu [[anleitungen: | |
- | Die Anleitung dazu [[anleitungen: | + | |
Im Pattern-Configurator unter spezielle Module **Servo-MP3** auswählen. | Im Pattern-Configurator unter spezielle Module **Servo-MP3** auswählen. | ||
{{: | {{: | ||
- | |||
- | |||
Das folgende Bild zeigt die Pins am Ausgang der Servo-Platine. Der SIG-J1 - Pin ist mit dem Eingang des ersten Soundmodules zu verbinden, entsprechend J2 mit Modul 2 und J3 mit Modul3. | Das folgende Bild zeigt die Pins am Ausgang der Servo-Platine. Der SIG-J1 - Pin ist mit dem Eingang des ersten Soundmodules zu verbinden, entsprechend J2 mit Modul 2 und J3 mit Modul3. | ||
{{: | {{: | ||
+ | \\ | ||
+ | \\ | ||
+ | ===== JQ6500 und MP3-TF16-p/ | ||
+ | \\ | ||
+ | {{: | ||
+ | \\ | ||
+ | \\ | ||
+ | ==== Verdrahtung ==== | ||
- | + | Die drei Ausgänge | |
- | ====== JQ6500 und MP3-TF16-p/ | + | \\ |
- | + | Die Versorgungsspannung sollte über eine Verteilerplatine mit angeschlossener stabiler Spannungsversorgung erfolgen, da die Leistung an der Hauptplatine zur Versorgung der Sound-Module nicht ausreicht. | |
- | {{: | + | \\ |
- | + | Die 470µF | |
- | {{ : | + | \\ |
- | + | Eine separate 5V Spannungsversorgung ist ebenfalls möglich. | |
- | + | ||
- | + | ||
- | + | ||
- | ====== Schaltung ====== | + | |
- | + | ||
- | + | ||
- | Die drei Ausgänge der Servo-Platine werden nun über je einen 1 kOhm Widerstand mit den Eingängen der Sound-Module verbunden. | + | |
- | Die Versorgungsspannung sollte über eine Verteilerplatine mit angeschlossener stabiler Spannungsversorgung erfolgen, da die Leistung an der Hauptplatine zur Versorgung der Sound-Module nicht ausreicht. Die 470uF Elektrolytkondensatoren dienen als Puffer für die recht hohen Einschaltströme der Soundmodule. | + | |
- | Eine separate 5V Spannungsversorgung ist ebenfalls möglich. | + | |
- | + | ||
{{ : | {{ : | ||
+ | Als weitere Möglichkeit bietet sich der Umbau einer unbestückten 501de_Soundplatine (MP3-TF-16p) an: | ||
+ | |{{: | ||
+ | |<color # | ||
+ | |R6 Widerstand 1Ohm |1x3 <color # | ||
+ | |Keramikkondensator 100nf|< | ||
+ | |C6 Elko 470µF|1x2 Lautsprecher | | | ||
+ | \\ | ||
+ | ===== SD Karte ===== | ||
+ | Die Verzeichnisstruktur der Sounddateien auf der SD-Karte ist relativ starr vorgeschrieben. Es können Sounddateien (wahlweise im mp3- oder wav-Format) in folgende Verzeichnisse der SD-Karte abgelegt werden: | ||
+ | * Wurzelverzeichnis (Dateinamen 4-stellig 0001.mp3 etc.) | ||
+ | * Verzeichnis ADVERT (Dateinamen 4-stellig) | ||
+ | * Verzeichnis mp3 (Dateinamen 4-stellig) | ||
+ | * Verzeichnisse 01 bis 32 – (Dateinamen 3-Stellig 001.mp3 etc.) | ||
+ | Es werden nur die ersten Zeichen der Dateinamen ausgewertet. Der tatsächliche Dateiname kann länger sein. Damit sind Dateinamen der Art | ||
+ | 0023Yesterday.mp3 | ||
+ | möglich. Dieser Dateiname wird vom Soundmodul als „0023.mp3“ behandelt. Das erleichtert den Umgang mit den Sounddateien deutlich und sollte ausgiebig genutzt werden. | ||
+ | \\ | ||
+ | \\ | ||
+ | \\ | ||
====== Programm-Generator ====== | ====== Programm-Generator ====== | ||
Zeile 49: | Zeile 72: | ||
{{ : | {{ : | ||
+ | \\ | ||
+ | \\ | ||
+ | Nach einer **Neuprogrammierung** des ATTiny sind die Ausgänge wie folgt vorbelegt: | ||
+ | |||
+ | SERVO1 JQ6500 PIN 5 des ATTiny PB0(MOSI) | ||
+ | SERVO2 MP3-TF-16p PIN 6 des ATTiny PB1(MISO) | ||
+ | SERVO3 JQ6500 PIN 7 des ATTiny PB2(SCK/ | ||
+ | |||
+ | Möchte man andere Modultypen anschließen, | ||
+ | \\ | ||
+ | Der ATTiny merkt sich diese Einstellung, | ||
+ | \\ | ||
+ | Eine Änderung ist nur dann notwendig, wenn die angeschlossenen Modul-Typen verändert werden. | ||
+ | \\ | ||
+ | Die Einstellungen werden im Beispiel mit den Tastern SwitchD1-D3 auf der Hauptplatine programmiert: | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | neu - SERVO1 J1 = MP3-TF-16p Modul | ||
+ | neu - SERVO2 J2 = JQ6500 Modul | ||
+ | neu - SERVO3 J3 = MP3-TF-16p Modul | ||
+ | \\ | ||
+ | \\ | ||
+ | \\ | ||
+ | |||
+ | ---- | ||
Beispiel der Soundsteuerung mit den Befehlen: | Beispiel der Soundsteuerung mit den Befehlen: | ||
Zeile 78: | Zeile 127: | ||
**Anmerkungen: | **Anmerkungen: | ||
* In der Macroauswahl wird der Hinweis „Sendet einen Befehl an ein MP3-TF-16p-Soundmodul welches über SERVO3 an einer Servoplatine angeschlossen ist“ gegeben. Das trifft so nicht zu, da die Befehle an alle drei Ausgänge gesendet werden können und auch für beide Modultypen gelten. Einschränkungen gibt es natürlich beim JQ 6500, da nur fünf Tracks gespeichert werden können. | * In der Macroauswahl wird der Hinweis „Sendet einen Befehl an ein MP3-TF-16p-Soundmodul welches über SERVO3 an einer Servoplatine angeschlossen ist“ gegeben. Das trifft so nicht zu, da die Befehle an alle drei Ausgänge gesendet werden können und auch für beide Modultypen gelten. Einschränkungen gibt es natürlich beim JQ 6500, da nur fünf Tracks gespeichert werden können. | ||
- | * Alle Befehle an diese ATTiny Soundplatine müssen über __eine__ LED Adresse laufen, im Beispiel LED 1. Sollte es (ungewollt) eine Verschiebung geben mit dem Befehl "next LED -1" wieder auf die LED Adresse der Sound-Platine zurück gehen. | + | * Alle Befehle an diese ATTiny Soundplatine müssen über __eine__ LED Adresse laufen, im Beispiel LED 1. Sollte es (ungewollt) eine Verschiebung geben mit dem Befehl "next LED -1" wieder auf die LED Adresse der Sound-Platine zurück gehen. |
* Über den [[anleitungen: | * Über den [[anleitungen: | ||
- | ====== Steuerung über DCC/ | + | ===== Steuerung über DCC/ |
- | {{: | ||
- | Vor jedem Sound-Befehl muss das Modul ausgewählt werden auf dem sich die Sound-Datei befindet. So können Sound-Dateien in unterschiedlicher Reihenfolge von den drei Modulen abgespielt werden. Die Logik stellt sicher, dass zunächst über den ATTiny das Modul ausgewählt wird, der Befehl umgesetzt werden kann und dann, mit zeitlichem Verzug, der Track ausgewählt oder eine andere Funktion des Moduls aufgerufen wird. | + | {{ : |
- | ====== Beispiel: ====== | + | Vor jedem Sound-Befehl kann das Modul ausgewählt werden auf dem sich die Sound-Datei befindet. So können Sound-Dateien in unterschiedlicher Reihenfolge von den drei Modulen abgespielt werden. Die Logik stellt sicher, dass zunächst über den ATTiny das Modul ausgewählt wird, der Befehl umgesetzt werden kann und dann, mit zeitlichem Verzug, der Track ausgewählt oder eine andere Funktion des Moduls aufgerufen wird. |
+ | \\ | ||
+ | \\ | ||
+ | **Anmerkung: | ||
+ | \\ | ||
+ | \\ | ||
+ | Mit den Befehlen <Titel # aus Hauptverzeichnis abspielen> | ||
+ | \\ | ||
+ | <Titel # aus mp3 abspielen> | ||
+ | \\ | ||
+ | Leider funktioniert das mit dem Modul JQ6500 nicht zuverlässig. Hier sollte trotzdem eine Vorauswahl mittels Monoflops (wie im Beispiel) getroffen werden. | ||
+ | ===== Beispiele: ===== | ||