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 [2026/10/13 17:36] – [Vergleichstyp] raily74anleitungen:effekte_mll [2026/10/21 14:16] (aktuell) – [Pins LED Bus definieren] Korrektur petervt11
Zeile 529: Zeile 529:
 Mit dieser Funktion kann die Helligkeit anderer LEDs abgefragt und somit als Schalter genutzt werden. Das macht es beispielsweise möglich, mithilfe des Pattern Configurators einen Ablauf vorzugeben. Besonders interessant ist in dem Zusammenhang die Nutzung eines [[effekte_mll#pins_led_bus_definieren|virtuellen LED Kanals]], um nicht unnötig blinde WS2811 als Referenz zu nutzen.  Mit dieser Funktion kann die Helligkeit anderer LEDs abgefragt und somit als Schalter genutzt werden. Das macht es beispielsweise möglich, mithilfe des Pattern Configurators einen Ablauf vorzugeben. Besonders interessant ist in dem Zusammenhang die Nutzung eines [[effekte_mll#pins_led_bus_definieren|virtuellen LED Kanals]], um nicht unnötig blinde WS2811 als Referenz zu nutzen. 
  
-**Zielvariable:** \\+===Zielvariable:===
 Im Gegensatz zu den Zielvariablen bei der Logic-Verknüpfung o. Ä., muss hier keine Zahl hinter der Variable eingegeben werden. Hier ist man also völlig frei und kann als Variable den spezifischen Namen der gewünschten Funktion eingeben, z. B. "Heissluftballon". Wichtig ist - wie bei allen Variablen, dass der verwendete Name einzigartig ist. Im Gegensatz zu den Zielvariablen bei der Logic-Verknüpfung o. Ä., muss hier keine Zahl hinter der Variable eingegeben werden. Hier ist man also völlig frei und kann als Variable den spezifischen Namen der gewünschten Funktion eingeben, z. B. "Heissluftballon". Wichtig ist - wie bei allen Variablen, dass der verwendete Name einzigartig ist.
  
-**LED Nummer Offset:** \\+===LED Nummer Offset:===
 Das aus dem englischen übersetzte Wort Offset bedeutet hier "Abstand". Als Eselsbrücke kann man sich hier merken, dass der Abstand zu LED 0 der vorangegangenen Funktion abgefragt wird. Wenn beispielsweise ein belebtes Haus mit vier RGB-LEDs programmiert wurde, bei dem der blaue Kanal der letzten LED abgefragt werden soll, so beträgt der Abstand (Offset) 11. Der rote Kanal der ersten LED ist in dem Fall die LED 0. Die erste RGB-LED belegt die Kanäle 0-2, die zweite 3-5, die dritte 6-8 und die vierte 9-11. Das aus dem englischen übersetzte Wort Offset bedeutet hier "Abstand". Als Eselsbrücke kann man sich hier merken, dass der Abstand zu LED 0 der vorangegangenen Funktion abgefragt wird. Wenn beispielsweise ein belebtes Haus mit vier RGB-LEDs programmiert wurde, bei dem der blaue Kanal der letzten LED abgefragt werden soll, so beträgt der Abstand (Offset) 11. Der rote Kanal der ersten LED ist in dem Fall die LED 0. Die erste RGB-LED belegt die Kanäle 0-2, die zweite 3-5, die dritte 6-8 und die vierte 9-11.
  
Zeile 556: Zeile 556:
 Hier stehen gleich mehrere Operatoren zur Verfügung, mit denen man so gut wie jeden Zustand abfragen kann. Hier stehen gleich mehrere Operatoren zur Verfügung, mit denen man so gut wie jeden Zustand abfragen kann.
  
-**Vergleichswert:** \\ +^  Operator  ^  Bedeutung  ^  Beispiel für „wahr“  ^ 
-Der Vergleichswert ist einfach gesagt der Helligkeitwert (0 bis 255) der LED, die durch die Funktion abgefragt werden soll. +| = | Beide Werte müssen gleich sein | LED-Kanal 10, Vergleichswert 10 | 
-=== Zielvariable === +| != | Beide Werte müssen ungleich sein | LED-Kanal 10, Vergleichswert 20 | 
-Hier wird ein Variablen-Name angegeben, der im weiteren zur Steuerung z.B. eines Schweißlichtes verwendet wird.+| < | 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, dies auszudrücken, ist: 
 +|  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 Vergleichstypen gut geeignet.
 +\\
  
- +===Vergleichswert:=== 
-=== Vergleichswert === +Der Vergleichswert ist einfach gesagt der Helligkeitwert (0 bis 255) der LED, die durch die Funktion abgefragt werden soll.
- +
-Hier wird der Wert eingetragen, der mit dem Wert des LED-Kanals verglichen wird.+
  
 ==== Variable für 256 Zustände erstellen ==== ==== Variable für 256 Zustände erstellen ====
Zeile 872: Zeile 887:
  
 Mit der MobaLedLib können mehrere LED Kanäle angesteuert werden. Der erste Kanal wird für die normalen LEDs benutzt. Kanal 2 ist für die Taster gedacht.\\ Mit der MobaLedLib können mehrere LED Kanäle angesteuert werden. Der erste Kanal wird für die normalen LEDs benutzt. Kanal 2 ist für die Taster gedacht.\\
-**Arduino:** Es können bis zu 4 Kanäle benutzt werden. (Standard: 6 A4)\\+**Arduino:** Es können bis zu 4 Kanäle benutzt werden. (Standard: 6 A4) (mit LED-Kanal 2: 6 A4 2)\\
 **ESP32:** Es können bis zu 8 Kanäle benutzt werden. (Standard: 27 32 16 14 18 19 23 0 17)\\ **ESP32:** Es können bis zu 8 Kanäle benutzt werden. (Standard: 27 32 16 14 18 19 23 0 17)\\
  
 **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. Es können auch mehrere virtuellen Kanäle angelegt werden.\\
 Virtuelle Kanäle eignen sich, um versteckte Operationen auszuführen, die man u. A. mit anderen Funktionen abfragen kann.\\  Virtuelle Kanäle eignen sich, um versteckte Operationen auszuführen, die man u. A. mit anderen Funktionen abfragen kann.\\ 
 Eine Anleitung zu diesem Thema gibt es hier: [[anleitungen:prog_gen:virtual|Virtuelle LED-Kanäle]] Eine Anleitung zu diesem Thema gibt es hier: [[anleitungen:prog_gen:virtual|Virtuelle LED-Kanäle]]
 +
 +Beispiele:
 +| Arduino (Standard) | Kanal 0, Kanal 1 (Pushbutton)| Set_LED_OutpPinLst(6 A2) |
 +| Arduino (Standard) | Kanal 0, Kanal 1 (Pushbutton) und virtueller Kanal| Set_LED_OutpPinLst(6 A2 V) |
 +| Arduino (Standard) | Kanal 0, Kanal 1 (Pushbutton) und virtueller Kanal| Set_LED_OutpPinLst(6 A2 V) |
 +| Arduino | Kanal 0, Kanal 1 (Pushbutton), Kanal 2) | Set_LED_OutpPinLst(6 A2 2) |
 +| ESP32 (Standard) | Kanal 0, Kanal 1 (Puhbutton), Kanal 2 - 8 | Set_LED_OutpPinLst(27,32,16,14,18,19,23,0,17) |
 +| ESP32  | Kanal 0, Kanal 1 (Puhbutton), Kanal 2 - 7 | Set_LED_OutpPinLst(27,32,16,14,18,19,23,0) |
 +| Pico (Standard) | Kanal 0 - 5 | Set_LED_OutpPinLst(0,1,2,3,4,5)|
 +| Pico | Kanal 0 - 5 und LED auf Pico | Set_LED_OutpPinLst(0,1,2,3,4,5,16)|
 +
 ===== Tag/Nacht ===== ===== Tag/Nacht =====
 ==== Fotowiderstand aktivieren ==== ==== Fotowiderstand aktivieren ====
anleitungen/effekte_mll.1791912997.txt.gz · Zuletzt geändert: von raily74