Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
anleitungen:effekte_mll [2022/03/20 12:37] – [Belebtes Haus] raily74 | anleitungen:effekte_mll [2025/02/12 07:03] (aktuell) – ↷ Links angepasst, weil Seiten im Wiki verschoben wurden 18.97.9.173 | ||
---|---|---|---|
Zeile 10: | Zeile 10: | ||
<WRAP round tip 60%> | <WRAP round tip 60%> | ||
- | Die in einem belebten Haus verbauten WS2812B RGB-LEDs lassen sich auch als [[anleitungen: | + | Die in einem belebten Haus verbauten WS2812B RGB-LEDs lassen sich auch temporär |
</ | </ | ||
Zeile 111: | Zeile 111: | ||
| SKIP_ROOM | | SKIP_ROOM | ||
- | === Beispiel | + | ==== Belebtes Haus mit individuellen Schaltzeiten ==== |
- | | + | |
+ | {{: | ||
+ | Das belebte Haus wie zuvor beschrieben mit der Möglichkeit abweichende Schaltzeiten anzugeben. Damit ist es auch möglich ein Haus immer " | ||
==== Straßenlaternen ==== | ==== Straßenlaternen ==== | ||
{{: | {{: | ||
Zeile 435: | Zeile 437: | ||
====== Dynamik ====== | ====== Dynamik ====== | ||
===== Servo ===== | ===== Servo ===== | ||
- | Nach erfolgreichem **[[anleitungen/bauanleitungen: | + | Nach erfolgreichem **[[anleitungen:bauanleitungen: |
==== Servo mit 2 Positonen ==== | ==== Servo mit 2 Positonen ==== | ||
{{: | {{: | ||
Zeile 505: | Zeile 507: | ||
{{: | {{: | ||
- | Mit dem „CopyLED()“ Befehl wird die Helligkeit der drei Farben | + | Mit dem „CopyLED()“ Befehl wird die Helligkeit der drei Farben |
- | Wenn zwei RGB LEDs das gleiche zeigen sollen, dann kann man das auch durch die elektrische Verkabelung erreichen. | + | |
+ | Wenn zwei RGB LEDs das gleiche zeigen sollen, dann kann man das auch durch die [[hilfestellungen: | ||
==== LED-Werte als Variable ==== | ==== LED-Werte als Variable ==== | ||
{{: | {{: | ||
- | Mit dieser Funktion können LED Werte welche | + | {{bilder: |
+ | |||
+ | === Zielvariable === | ||
+ | Hier wird ein Variablen-Name angegeben, der im weiteren zur Steuerung | ||
+ | |||
+ | === LED-Nummer Offset === | ||
+ | Dies ist die entschiedenste und problematischste Stelle der Funktion. Die Funktion bezieht sich auf die LED aus der Zeile davor. Ist das eine RGB-LED, so ist hier der Wert 0 dem roten Kanal entsprechend. Der Wert 1 ist der Grün-Kanal und 2 der blaue Kanal. Wie gesagt | ||
+ | |||
+ | {{: | ||
+ | \\ | ||
+ | |||
+ | Es ist aber auch möglich, LED-Zustände von LED’s zu testen, die erst nach der LED_to_Var Zeile kommen. In diesem Fall geht der Offset bei 3 los | ||
+ | ^ LED ^ Kanal ^ Offset | ||
+ | |2|Rot|3| | ||
+ | |2|Grün|4| | ||
+ | |2|Blau|5| | ||
+ | |3|Rot|6| | ||
+ | \\ | ||
+ | usw. bis zu einem Offset von 31, also bis zu 9 RGB-LED’s weit. \\ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | === Vergleichstyp === | ||
+ | Es gibt 6 Vergleichswerte \\ | ||
+ | ^ Operator | ||
+ | | = | Beide Werte müssen gleich sein | LED-Kanal 10, Vergleichswert 10 | | ||
+ | | != | Beide Werte müssen ungleich sein | LED-Kanal 10, Vergleichswert 20 | | ||
+ | | < | LED muss kleiner sein als Vergleich | LED-Kanal 10, Vergleichswert 11 | | ||
+ | | > | LED muss größer sein als Vergleich | LED-Kanal 11, Vergleichswert 10 | | ||
+ | | & | Binärer Vergleich | Siehe unten | | ||
+ | | !& | Binärer Vergleich negiert | Siehe unten | | ||
+ | \\ | ||
+ | Der bitweise AND-Operator (einzelnes kaufmännisches Und &), bearbeitet die Bitpositionen der umgebenden Ausdrücke unabhängig voneinander gemäß dieser Regel: Wenn beide Eingangsbits 1 sind, ist das resultierende Ergebnis 1, andernfalls ist das Ergebnis 0. \\ | ||
+ | Eine andere Möglichkeit, | ||
+ | | 0 0 1 1 | LED-Kanal (3) | | ||
+ | | 0 1 0 1 | Vergleich (5) | | ||
+ | | - - - - - - | | | ||
+ | | 0 0 0 1 | (operand1 & operand2) – Ergebnis ist wahr | | ||
+ | |||
+ | == Beispielcode== | ||
+ | | Led-Kanal | 92 | Binär: 01011100 | | ||
+ | | Led-Kanal | 101 | Binär: 01100101 | | ||
+ | | Led_to_Var; |Ergebnis: | 01000100, oder 68 dezimal und damit wahr. | | ||
+ | \\ | ||
+ | Um die Binär-Vergleiche zu nutzen, sind ausführliche Tests notwendig. Sie eignen sich nicht für eine schnelle Lösung. Hierfür sind die 4 anderen | ||
+ | \\ | ||
+ | === Vergleichswert === | ||
+ | |||
+ | Hier wird der Wert eingetragen, | ||
==== Variable für 256 Zustände erstellen ==== | ==== Variable für 256 Zustände erstellen ==== | ||
{{: | {{: | ||
Zeile 541: | Zeile 593: | ||
INCH_< | INCH_< | ||
Bei Selectix < | Bei Selectix < | ||
+ | |||
+ | === Beispiel des Variablen-Namen (hier DCC) === | ||
+ | * INCH_DCC: | ||
+ | * INCH_DCC_13_RED | ||
+ | * INCH_DCC_13_GREEN | ||
+ | |||
+ | === Beispiel einer Programmierung === | ||
+ | |||
+ | Hier soll ein Andreaskreuz aktiviert werden durch 2 DCC-Adressen: | ||
+ | {{bilder: | ||
+ | Hier werden für die DCC-Adresse 11 und 12 jeweils eine Inputvariable (ICH_DCC_11_ONOFF und INCH_DCC_12_ONOFF) definiert. | ||
+ | Diese werden über eine OR-Verknüpfung verknüpft. | ||
+ | |||
===== Automatisierung ===== | ===== Automatisierung ===== | ||
==== Zeitplan ==== | ==== Zeitplan ==== | ||
Zeile 743: | Zeile 808: | ||
Der Mono Flop wird zurückgesetzt wenn der Reset Eingang 1 ist. | Der Mono Flop wird zurückgesetzt wenn der Reset Eingang 1 ist. | ||
Dieses Monoflop hat zwei Ausgangsvariablen welche abwechselnd aktiv sind. | Dieses Monoflop hat zwei Ausgangsvariablen welche abwechselnd aktiv sind. | ||
- | ===== Taster beleuchtet ===== | ||
- | ==== Taster beleuchtet, 1 Funktion ==== | ||
- | {{: | ||
- | Die "Knopf Druck Aktion" | + | ====== Taster ====== |
- | ==== Taster beleuchtet, 2 Funktionen | + | <WRAP center round tip 80%> |
- | {{: | + | Der Bereich |
- | + | Die Seite ist ab sofort hier zu finden: [[anleitungen: | |
- | Die "Knopf Druck Aktion" | + | </WRAP> |
- | ==== Taster beleuchtet, 3 Funktionen | + | |
- | {{: | + | |
- | + | ||
- | Die "Knopf Druck Aktion" | + | |
- | ==== Taster beleuchtet, 4 Funktionen ==== | + | |
- | {{: | + | |
- | + | ||
- | Die "Knopf Druck Aktion" | + | |
- | ==== Taster beleuchtet, 5 Funktionen ==== | + | |
- | {{: | + | |
- | + | ||
- | Die "Knopf Druck Aktion" | + | |
- | ===== 2 Taster beleuchtet ===== | + | |
- | ===== RGB-Taster beleuchtet ===== | + | |
- | ==== RGB-Taster beleuchtet, 1 Funktion ==== | + | |
- | {{: | + | |
- | + | ||
- | Die "Knopf Druck Aktion" | + | |
- | ==== RGB-Taster beleuchtet, 2 Funktionen ==== | + | |
- | {{: | + | |
- | + | ||
- | Die "Knopf Druck Aktion" | + | |
- | ==== RGB-Taster beleuchtet, 3 Funktionen ==== | + | |
- | {{: | + | |
- | + | ||
- | Die "Knopf Druck Aktion" | + | |
- | ==== RGB-Taster beleuchtet, 4 Funktionen ==== | + | |
- | {{:bilder: | + | |
- | + | ||
- | Die "Knopf Druck Aktion" | + | |
- | ==== RGB-Taster beleuchtet, 5 Funktionen ==== | + | |
- | {{: | + | |
- | + | ||
- | Die "Knopf Druck Aktion" | + | |
- | ===== 2 RGB-Taster beleuchtet ===== | + | |
- | ===== Taster unbeleuchtet ===== | + | |
- | ===== 2 Taster unbeleuchtet ===== | + | |
===== Status-LED ===== | ===== Status-LED ===== | ||
====== Konfiguration ====== | ====== Konfiguration ====== | ||
Zeile 832: | Zeile 857: | ||
{{: | {{: | ||
- | Auf diesem | + | Auf diesem |
+ | |||
+ | <WRAP round info 70%> | ||
+ | Die Auswahl eines DMX Geräts erfolgt neben den optischen Werten auch immer über dessen Datenblatt. Ohne Datenblatt, welches die DMX Kanäle beschreibt, ist das Gerät nutzlos.\\ | ||
+ | Wichtig ist auch, dass die RGB Kanäle möglichst auf drei aufeinanderfolgende DMX Kanäle liegen.\\ | ||
+ | Bitte achtet unbedingt auf den Abstrahlwinkel, | ||
+ | Der Scheinwerfer hat vor jeder RGB LED ein Linsen, die das Licht bündelt und einen geringen Abstrahlwinkler erzeugt. Diese Linsen können zwar entfernt werden, dann wird das Abstrahlverhalten besser, das ist aber etwas Bastelarbeit. | ||
+ | </ | ||
+ | |||
+ | |||
+ | **Einfachstes Beispiel:** Ein [[https:// | ||
+ | |||
+ | Diese Modul hat 12 DMX Kanäle. Die DMX Basisadresse wird über DIP-Schalter eingestellt.\\ | ||
+ | Unter der Annahme dass DMX Adresse 1 eingestellt ist und an die LED Känal jeweils Led-Stripes mit rot/ | ||
+ | DMX Adresse 1-3 rot/ | ||
+ | DMX Adresse 4-6 rot/ | ||
+ | DMX Adresse 7-9 rot/ | ||
+ | DMX Adresse 10-12 rot/ | ||
+ | |||
+ | Im ProgGenerator entspricht das 4 RGB Leds.\\ | ||
+ | Die DMX Adresse errechnet sich aus der Excel Spalte " | ||
+ | |||
+ | DmxKanal = Start-LedNr * 3 \\ | ||
+ | + 1 für rot\\ | ||
+ | + 2 für grün\\ | ||
+ | + 3 für blau\\ | ||
+ | |||
+ | {{: | ||
+ | Mit Zeile 3 wird der ProgGenerator angewiesen, auf Led Kanal 2 das DMX Protokoll auszugeben.\\ | ||
+ | |||
+ | Dieses Beispiel war ja ganz einfach. Etwas aufwändiger wird es mit z.B. diesem Modell: [[https:// | ||
+ | Gemäß[[https:// | ||
+ | {{: | ||
+ | |||
+ | Ganz blöd ist in dem Fall die Kanalanzahl 7, denn dem ProgrammGenerator sind vielfache von drei deutlich lieber. \\ | ||
+ | Wichtig ist hier, dass die RGB Kanäle auf drei hinereinanderfolgenden DMX Adresse liegen.\\ | ||
+ | |||
+ | Wie würde ich es lösen: Der Scheinwerfer bekommt DMX Adresse 3, d.h.\\ | ||
+ | CH1 = DMX Adresse 3: Gesamthelligkeit\\ | ||
+ | CH2 = DMX Adresse 4: Helligkeit rot\\ | ||
+ | CH3 = DMX Adresse 5: Helligkeit grün\\ | ||
+ | CH4 = DMX Adresse 6: Helligkeit blau\\ | ||
+ | CH5 = DMX Adresse 7: Stroboskop\\ | ||
+ | CH6 = DMX Adresse 8: Betriebsmodus\ | ||
+ | CH7 = DMX Adresse 9: Geschwindigkeit\\ | ||
+ | |||
+ | Wir brauchen CH6 Betriebsmodus auf einen Wert von 0-10 = " | ||
+ | |||
+ | In diesem Fall müssen wir die DMX Kanäle CH1, CH5 und CH6 einzeln ansprechen.\\ | ||
+ | Die DMX Adresse errechnet sich aus den Excel Spalten " | ||
+ | Die Formel ist Start-LedNr * 3 + X, wobei X von CX aus Spalte LEDS kommt, bzw. X=1 wenn kein Cx in LEDS Spalte.\\ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | | Zeile 4 | Start-Led 0 (auf Led Kanal 2) und C3 -> 0*3+3 = DMX Adresse 3 | Das Const-Makro hat sowohl für Helligkeit aus wie ein den Wert 255, somit immer 255. | | ||
+ | | Zeile 5 | Start-Led 1, kein Cx -> 1*3+1 = DMX Adresse 4 | Weil RGB LEDs immer drei Kanäle haben, gilt dies somit auch DMX Adresse 5 und 6. | | ||
+ | | Zeile 6 | Start-Led 2 und C1 -> 2*3+1 = DMX Adresse 7 | Das Const-Makro hat sowohl für Helligkeit aus wie ein den Wert 0, somit immer 0. | | ||
+ | | Zeile 7 | Start-Led 2 und C2 -> 2*3+2 = DMX Adresse 8 | Das Const-Makro hat sowohl für Helligkeit aus wie ein den Wert 0, somit immer 0. | | ||
+ | | Zeile 8 | Start-Led 2 und C3 -> 2*3+3 = DMX Adresse 9 | Das Const-Makro hat sowohl für Helligkeit aus wie ein den Wert 0, somit immer 0. | | ||
+ | |||
+ | Damit lässt sich dieses Modell steuern. Das Beispiel kann noch vereinfacht werden, indem die Zeilen 6-8 zusammengefasst werden. \\ | ||
+ | |||
+ | {{: | ||
+ | | Zeile 6 | Start-Led 2 und C1 -> 2*3+1 = DMX Adresse 7 | Das ConstRGB Makro verwendet drei Kanäle, welche sowohl für Helligkeit aus wie ein für alle Werte Wert 0 haben, somit immer alles 0. | | ||
+ | |||
+ | Am schönsten wäre natürlich ein RGB Scheinwerfer ohne jegliche Schnicht-Schnack Funktionen wie Strobe, Fade, Musiksteuerung..., | ||
+ | |||
+ | **Beispiel für Fortgeschrittene: | ||
+ | Dieser [[https:// | ||
+ | Sehen wir uns die Variante 30 Adressen genauer an: \\ | ||
+ | Hier können 4 LED Segment einzeln gesteuert werden, pro Segment werden 7 DMX Kanäle verwendet, vier für die RGBW Helligkeit, zusätzlich noch Kanäle für Master-Helligkeit und Strobe-Effekt. Dann kommt noch ein Channel für Sondereffekte, | ||
+ | |||
+ | Das sieht im Excel dann so aus. Man sieht auch gut die Verschiebung wegen der 7 Channels, Segment 1 startet mit C1-1, Segment 2 mit C2-2, Segment 3 mit C3-3. | ||
+ | Die Master Helligkeit wird hier mit DCC Adresse 1 für alle Segment geschaltet, die RGBW pro Segment jeweils einzeln. \\ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ====== Effekte - Sound ====== | ||
====== Sound Funktionen für das MP3-TF-16P Modul ====== | ====== Sound Funktionen für das MP3-TF-16P Modul ====== | ||
+ | ===== Hauptplatine ===== | ||
+ | |||
+ | Soundsteuerung mit der 8xMP3-Multi-Soundplatine. \\ | ||
+ | {{bilder: | ||
+ | Hierzu muss ein Pin der Hautplatine zur seriellen Ansteuerung eines Sound Moduls sowie den Typ des angeschlossenen Soundmoduls definiert werden. Danach können Sound-Tracks dieses Moduls abgespielt werden. | ||
+ | Die Pin Nummer kann als Zahl, oder als symbolische Konstante angegeben werden. | ||
+ | Beispiel: KEY80_P1 | ||
+ | Der Typ bestimmt das Protokoll, mit dem das Soundmodul gesteuert wird. | ||
+ | Manche MP3-TF Module haben einen Fehler und müssen mit der Variante NO_CRC (keine Prüfsumme) angesprochen werden. Module mit folgenden Sound Chip Nummern wurde bisher als fehlerhaft identifiziert: | ||
+ | Beispiel einer Programmierung im Prog_Generator: | ||
+ | {{bilder: | ||
+ | |||
+ | Bezeichnung Beschreibung | ||
+ | | Soundmodul wählen | ||
+ | | Titel # abspielen | Track # vom angegebenen Modul abspielen (Rootverzeichnis) | | ||
+ | | Zufälligen Titel abspielen | Zufälligen Titel vom angegebenen Modul abspielen (Rootverzeichnis) | | ||
+ | | Wiedergabe | Setzt die Sound Wiedergabe fort | | ||
+ | | Pause | Hält die Sound Wiedergabe an | | ||
+ | | Endloswiedergabe | Stellt den Wiederholmodus ein | | ||
+ | | Lauter | Lautstärke erhöhen | | ||
+ | | Leiser | Lautstärke reduzieren | | ||
+ | | Lautstärke definieren | Lautstärke setzen auf 0 ..100% | | ||
+ | |||
+ | ===== Soundmodul wählen ===== | ||
+ | |||
+ | Einen Pin der Hautplatinen zur seriellen Ansteuerung eines Sound Moduls sowie den Typ des angeschlossenen Soundmoduls definieren. Die Pin Nummer kann als Zahl, oder als symbolische Konstante angegeben werden. | ||
+ | {{bilder: | ||
+ | Beispiel: KEY80_P1\\ | ||
+ | | Soundmodul | ||
+ | | #1 | A1 → B1 | 1 | KEY80_P1 | D2 | | ||
+ | | #2 | A2 → B2 | 2 | KEY80_P2 | D7 | | ||
+ | | #3 | A3 → B3 | 3 | KEY80_P3 | D8 | | ||
+ | | #4 | A4 → B4 | 4 | KEY80_P4 | D9 | | ||
+ | | #5 | A5 → B5 | 5 | KEY80_P5 | D10 | | ||
+ | | #6 | A6 → B6 | 6 | KEY80_P6 | D11 | | ||
+ | | #7 | A7 → B7 | 7 | KEY80_P7 | D12 | | ||
+ | | #8 | A8 → B8 | 12 | KEY80_P12 | A5 | | ||
+ | | n.c. | A9 | 8 | KEY80_P8 | A1 | | ||
+ | | n.c. | B9 | 9 | KEY80_P9 | A2 | | ||
+ | | n.c. | A10 | 10 | KEY80_P10 | A3 | | ||
+ | | n.c. | B10 | 11 | KEY80_P11 | A4 | | ||
+ | |||
+ | Der Typ bestimmt das Protokoll (MP3-TF-16P, | ||
+ | Manche MP3-TF Module haben einen Fehler und müssen mit der Variante NO_CRC (keine Prüfsumme) angesprochen werden. Module mit folgenden Sound Chip Nummern wurde bisher als fehlerhaft identifiziert: | ||
+ | ===== Titel # abspielen ===== | ||
+ | |||
+ | Track # auf einem angegeben Soundkanal starten (Rootverzeichnis). | ||
+ | Sound Kanal 0 – 7 (entspricht Soundmodul 1 – 8) | ||
+ | Tracknummer 1 – 256 | ||
+ | ===== Zufälligen Titel abspielen ===== | ||
+ | |||
+ | |||
+ | Im Makro wird ein Bereich von Track x bis Track y angegeben. Aus diesem Bereich wird ein zufälliger Track abgespielt. | ||
+ | |||
+ | ===== Wiedergabe ===== | ||
+ | Setzt die Sound Wiedergabe fort, nach dem sie mit dem Pause-befehl unterbrochen wurde. | ||
+ | ===== Pause ===== | ||
+ | |||
+ | Hält die Sound Wiedergabe an. | ||
+ | ===== Endloswiedergabe ===== | ||
+ | |||
+ | Stellt den Wiederholmodus ein | ||
+ | LOOP_ALL: | ||
+ | LOOP_FOLDER: | ||
+ | LOOP_ONE: | ||
+ | LOOP_OFF: | ||
+ | ===== Lauter ===== | ||
+ | |||
+ | Lautstärke erhöhen. | ||
+ | ===== Leiser ===== | ||
+ | |||
+ | Lautstärke reduzieren. | ||
+ | ===== Lautstärke definieren ===== | ||
+ | |||
+ | Der angegebene Prozentwert wird je nach Soundmodul in einen passenden Lautstärkenwert umgewandelt, | ||
+ | |||
==== Sound_Prev ==== | ==== Sound_Prev ==== | ||
Die Sound_Prev Funktion spielt die vorherige Sounddatei ab. | Die Sound_Prev Funktion spielt die vorherige Sounddatei ab. | ||
Zeile 915: | Zeile 1094: | ||
==== Sound_JQ6500_BG_Next_of_N_Reset ==== | ==== Sound_JQ6500_BG_Next_of_N_Reset ==== | ||
==== Sound_JQ6500_BG_Next_of_N ==== | ==== Sound_JQ6500_BG_Next_of_N ==== | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
==== Sound_ADKey ==== | ==== Sound_ADKey ==== | ||
==== Sound_JQ6500_ADKey ==== | ==== Sound_JQ6500_ADKey ==== |