Benutzer-Werkzeuge

Webseiten-Werkzeuge


anleitungen:effekte_mll

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
anleitungen:effekte_mll [2025/11/25 17:34] – [Letzte Zustände speichern] petervt11anleitungen:effekte_mll [2026/05/08 10:46] (aktuell) – [Logische Verknüpfung] raily74
Zeile 158: Zeile 158:
 RGB LED welche als Funktionsindikator in wechselnden Regenbogenfarben blinkt. Minimale und maximale Helligkeit kann angegeben werden. Ansonsten verhält sich der Effekt gleich wie der [[anleitungen:effekte_mll#rgb_heartbeat|RGB_Heartbeat]] RGB LED welche als Funktionsindikator in wechselnden Regenbogenfarben blinkt. Minimale und maximale Helligkeit kann angegeben werden. Ansonsten verhält sich der Effekt gleich wie der [[anleitungen:effekte_mll#rgb_heartbeat|RGB_Heartbeat]]
  
 +==== MobaLedLib Farbring ====
 +{{:bilder:anleitungen:prog_gen:effects:mllring.jpg?nolink|}} **RGB_Ring**
 +
 +Ring mit 12 RGB LED, welche das MobaLedLib Logo auf dem Hauptplatinengehäuse eindrucksvoll animieren.
 +Die Helligkeit sowie die Geschwindigkeit können angegeben werden.
 +
 +Bei der LichtMaschine Pro wird der MobaLedLib-Farbring standardmäßig an Kanal 7 betrieben, dieser ist im Macro voreingestellt.
 +
 +{{:bilder:anleitungen:prog_gen:effects:rgb_ring-macro.png?480|}}
 ==== Leuchtfeuer ==== ==== Leuchtfeuer ====
 {{:bilder:anleitungen:prog_gen:effects:Lighthouse.jpg?nolink|}} **Leuchtfeuer** {{:bilder:anleitungen:prog_gen:effects:Lighthouse.jpg?nolink|}} **Leuchtfeuer**
Zeile 498: Zeile 507:
 Mit der Logic Funktion können mehrere Eingangsvariablen zu einer Ausgangsvariable verknüpft werden. So können logische Verknüpfungen umgesetzt werden. Mit der Logic Funktion werden mehrere Eingangsvariablen über "NOT", "AND" und "OR" verknüpft und in die Ausgangsvariable geschrieben. Die logischen Verknüpfungen müssen als Disjunktive Normalform geschrieben werden. Bei dieser Darstellung werden Gruppen von "AND" Verknüpfungen mit "OR" kombiniert. Das kann z.B. so aussehen: \\  Mit der Logic Funktion können mehrere Eingangsvariablen zu einer Ausgangsvariable verknüpft werden. So können logische Verknüpfungen umgesetzt werden. Mit der Logic Funktion werden mehrere Eingangsvariablen über "NOT", "AND" und "OR" verknüpft und in die Ausgangsvariable geschrieben. Die logischen Verknüpfungen müssen als Disjunktive Normalform geschrieben werden. Bei dieser Darstellung werden Gruppen von "AND" Verknüpfungen mit "OR" kombiniert. Das kann z.B. so aussehen: \\ 
 A AND B OR A AND NOT C OR D \\  A AND B OR A AND NOT C OR D \\ 
-Als Beispiel dafür soll eine Led entweder über einen Taster auf der Hauptplatine oder über eine DCC Adresse geschaltet werden. Dazu benötigt man zunächst die Logic Funktion. Wenn man diese aufruft, erscheint dieses Fenster: \\ +Als Beispiel dafür soll eine LED entweder zusammen mit einer anderen LED über eine vergebene Variable (z. B. über den Befehl LED-to-Var) oder über eine eigene DCC Adresse geschaltet werden. Dazu benötigt man zunächst die Logic Funktion. Wenn man diese aufruft, erscheint dieses Fenster: \\ 
 {{:bilder:anleitungen:prog_gen:logic_example_1.png?400|}}\\ {{:bilder:anleitungen:prog_gen:logic_example_1.png?400|}}\\
-Im Feld Zielvariable trägt man einen beliebigen Variablennamen ein. In diesem Beispiel wird der Name "Input1" verwendet. Darunter wird nun die logische Verknüpfung von zwei Variablen eingetragenDa hier die Led über eine DCC Adresse (hier die Adresse 1) oder einen Taster geschaltet werden soll, wird "1 OR SwitchD1eingetragen. Es wäre aber zum Beispiel auch denkbar, dort "1 AND SwitchD1" einzutragen. Dann müssten die DCC Adresse und der Taster gleichzeitig eingeschaltet werdenum die Led zum Leuchten zu bringen. \\ +\\ 
 +Im Feld Zielvariable trägt man einen beliebigen Variablennamen ein. In diesem Beispiel wird der Name "schalter" verwendet. Dieser wird mit der darunter eigegebenen logischen Verknüpfung aktiviert\\ 
 +#InCh fragt die DCC-Adresse, den Schalter oder die Variable ab, die unter "Adresse oder Nameim Programm Generator für die "Logische Verknüpfungangegeben wurde, in unserem Beispiel die DCC-Adresse 12. \\ 
 +Die Variable "abfragen" ist mit einer LED-to-Var-Funktion verknüpft und wird aktivwenn die dort definierte Bedingung eintritt, in unserem Beispiel die rote LED.\\
 \\  \\ 
-Nun muss noch die Led eingetragen werden. Dazu kann z.B. die Const Funktion verwendet werden. In der Spalte Adresse wird dann die zuvor definierte Zielvariable ("Input1") eingetragen. \\ +Mit der Variable "schalter" kann nun eine beliebige Funktion geschaltet werden. In unserem Beispiel wird ein Blinker immer zusammen mit der roten LED aktiviert oder separat über die DCC-Adresse 12. \\ 
 {{:bilder:anleitungen:prog_gen:logic_example_2.png|}} {{:bilder:anleitungen:prog_gen:logic_example_2.png|}}
 ==== LED-Werte kopieren ==== ==== LED-Werte kopieren ====
Zeile 821: Zeile 833:
 {{:bilder:anleitungen:prog_gen:effects:Storage.jpg?nolink|}} **Enable_Store_Status**\\ {{:bilder:anleitungen:prog_gen:effects:Storage.jpg?nolink|}} **Enable_Store_Status**\\
  
-Durch die Funktion Enable_Store_Status wird der letzte Status von Variablen gespeichert. Dadurch zeigen beim erneuten Einschalten der Anlage z.B. Signale immer noch das gleiche Signalbild. Die Funktion bezieht sich immer auf **alle <del>nachfolgenden</del>** Zeilen. Es reicht also, wenn die Funktion einmal am Anfang der Konfiguration eingefügt wird. +Durch die Funktion Enable_Store_Status wird der letzte Status von Variablen gespeichert. Dadurch zeigen beim erneuten Einschalten der Anlage z.B. Signale immer noch das gleiche Signalbild. Die Funktion bezieht sich immer auf **alle** <del>nachfolgenden</del> Zeilen. Es reicht also, wenn die Funktion einmal am Anfang der Konfiguration eingefügt wird. 
 Es werden aber nur bestimmte Variablen / Funktionen gespeichert: Es werden aber nur bestimmte Variablen / Funktionen gespeichert:
   - DCC An/Aus (nicht DCC rot oder DCC grün!)   - DCC An/Aus (nicht DCC rot oder DCC grün!)
Zeile 828: Zeile 840:
   - Charlieplexing   - Charlieplexing
   - Relaiskontakte für Herzpolarisierung   - Relaiskontakte für Herzpolarisierung
 +  - und ggf. noch andere...
 +
 Nicht gespeichert werden Servostellungen oder Servopositionen. Nicht gespeichert werden Servostellungen oder Servopositionen.
  
-Um das Speichern eines einzelnen Elements zu verhindern (ohne die ganze Funktion auf zugeben) wird für diese Funktion in der Spalte "Startwert" eine "0" eingetragen.+Um das Speichern eines einzelnen Elements zu verhindern (ohne die ganze Funktion auf zugeben) wird für diese Funktion in der Spalte "Startwert" eine "0" eingetragen. \\
 {{:bilder:anleitungen:prog_gen:enable_store_status_beispiel.png?600|}} {{:bilder:anleitungen:prog_gen:enable_store_status_beispiel.png?600|}}
  
Zeile 860: Zeile 874:
 **DMX:** Bei Verwendung von DMX erhöht sich die Anzahl der Kanäle um 1.\\ **DMX:** Bei Verwendung von DMX erhöht sich die Anzahl der Kanäle um 1.\\
 **Virtuelle Pins:** Bei Verwendung des virtueller Pins 'V' erhöht sich die Anzahl der Kanäle um 1.\\ **Virtuelle Pins:** Bei Verwendung des virtueller Pins 'V' erhöht sich die Anzahl der Kanäle um 1.\\
- +Virtuelle Kanäle eignen sich, um versteckte Operationen auszuführendie man uA. mit anderen Funktionen abfragen kann.\\  
-Virtuelle Pins eignen sich perfekt für die Funktion [[effekte_mll#led-werte_als_variable|LED-Werte als Variable]]. Mit dieser Funktion kann man die Zustände anderer LEDs abfragen und bei bestimmten Zuständen Aktionen auslösen. So kann man beispielsweise mit dem Pattern Configurator vorgebenwann welches Haus angehen soll.  +Eine Anleitung zu diesem Thema gibt es hier[[anleitungen:prog_gen:virtual|Virtuelle LED-Kanäle]]
- +
-Im Prinzip kann man jeden LED-Kanalden man nicht benötigt, als "virtuellen Kanal" verwendenEs muss in dem Fall auch keine Hardware an den Kanal angeschlossen werden (WS281X) +
- +
-Für den Fall, dass alle vorhandenen LED-Kanäle verwendet werden sollen, muss man zunächst alle verwendeten oder einfach alle möglichen LED-Kanäle des jeweiligen Arduinos/ESPs definieren und zusätzlich den virtuellen Kanal mit einem V bezeichnen. Die Anzahl der Kanäle erhöht sich dann um 1.\\ +
- +
-{{:bilder:anleitungen:prog_gen:pins-definieren.jpeg?400|}}\\ +
- +
-Das gezeigte Beispiel zeigt die Definition für den Arduino Nano. Hier wurden der LED-Kanal 0 (6), der PushButtonKanal 1 (A4), der LED-Kanal2 (2) und der virtuelle Kanal V extra definiert. Bei den Zahlen in den Klammern handelt es sich um die Anschluss-Pins am Arduino.\\ +
- +
-{{:bilder:anleitungen:prog_gen:virtuell_verwenden.jpeg?400|}} +
- +
-In der Programmierung ist der virtuelle Kanal also Kanal 3.\\ +
-Ablauf: Es wird mit der DCC Adresse 1 die LED auf dem virtuellen Kanal 3 eingeschaltet und sobald der Helligkeitswert größer als 1 ist dann wird die Variable "virtuell" aktiv und die RGB-LED auf dem LED-Kanal 0 beginnt zu leuchten. +
- +
-Für den ESP gilt das Gleiche, hier müssen auch die verwendeten Kanäle plus dem V-Kanal extra definiert werden.+
 ===== Tag/Nacht ===== ===== Tag/Nacht =====
 ==== Fotowiderstand aktivieren ==== ==== Fotowiderstand aktivieren ====
Zeile 908: Zeile 907:
 Mit dem Esp32 können deutlich mehr Leds und Effekte als mit dem normalen Arduino Nano angesteuert werden. Mit dem Esp32 können deutlich mehr Leds und Effekte als mit dem normalen Arduino Nano angesteuert werden.
  
-Um die erweiterten Möglichkeiten zu nutzen muss im Programm-Generator ein Eintrag gemacht werden:+Um die erweiterten Möglichkeiten zu nutzen muss im Programm-Generator ein Eintrag gemacht werden: \\
 {{:bilder:anleitungen:prog_gen:esp32_erweiterung.png?nolink|}} \\ {{:bilder:anleitungen:prog_gen:esp32_erweiterung.png?nolink|}} \\
  
anleitungen/effekte_mll.1764092066.txt.gz · Zuletzt geändert: von petervt11