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/04/25 04:04] – [Taster] admin_dominikanleitungen:effekte_mll [2025/06/21 22:28] (aktuell) – [LED-Werte als Variable] raily74
Zeile 515: Zeile 515:
 {{bilder:anleitungen:prog_gen:led_to_var_0_mark.png?640|}} {{bilder:anleitungen:prog_gen:led_to_var_0_mark.png?640|}}
  
 +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 ===
 Hier wird ein Variablen-Name angegeben, der im weiteren zur Steuerung z.B. eines Schweißlichtes verwendet wird. Hier wird ein Variablen-Name angegeben, der im weiteren zur Steuerung z.B. eines Schweißlichtes verwendet wird.
Zeile 826: Zeile 827:
 Mit diesem Befehl können die drei Taster LEDs auf der Hauptplatine und die Grüne HB LED angesteuert werden (1 = linke LED, 2 = mittlere LED, 3 = rechte LED, 4 = HB LED zwischen den Nanos.) Es können auch die Arduino Pin Nummern D2, D3..D13, A0..A5) angegeben werden. Das ist vor allem für Testzwecke sinnvoll. Mit diesem Befehl können die drei Taster LEDs auf der Hauptplatine und die Grüne HB LED angesteuert werden (1 = linke LED, 2 = mittlere LED, 3 = rechte LED, 4 = HB LED zwischen den Nanos.) Es können auch die Arduino Pin Nummern D2, D3..D13, A0..A5) angegeben werden. Das ist vor allem für Testzwecke sinnvoll.
 ===== Pinnummern ===== ===== Pinnummern =====
 +==== Pins Schalter Gruppe A definieren ====
 +Definiert die verwendeten Eingangs-Pins für die analogen Schalter (Gruppe A)\\
 +Die Liste enthält einen oder mehrere analoge Pins das Arduinos welche per Komma getrennte sind. Pro Eingangs Pin können 10 analoge Schalter eingelesen werden (Standard: A6)
 +==== Pins Schalter Gruppe B definieren ====
 +Definiert die verwendeten Eingangs-Pins für die Gruppe B (Border)\\
 +Die Gruppe B ist für Taster (oder Schalter) am Anlagenrand (Border) gedacht. Hier wird normalerweise nur ein Eingangs Pin benutzt. (Standard: A2). 
 +Mit einer PushButon_4017 Platine können 10 Taste eingelesen werden. Durch Kaskadierung mehrerer Platinen kann die Anzahl der Eingänge erhöht werden. 
 +==== Pins Schalter Gruppe C definieren ====
 +Definiert die verwendeten Eingangs-Pins für die Gruppe C (Console)\\
 +Mit der Gruppe C können sehr viele Schalter eingelesen werden. 80 Schalter können mit einer PushButton_4017 Platine erfasst werden. Durch Kaskadierung mehrerer Platinen kann die Anzahl der Eingänge erhöht werden. (Standard: 2 10 11 12 A5)
 +==== Pins Schalter Gruppe D definieren ====
 +Definiert die verwendeten Eingangs-Pins für die Gruppe D (Direct) - direkt auf der Hauptplatine\\
 +Auf der Hauptplatine befinden sich 3 Taster. Diese können direkt verwendet werden. Die verwendeten Anschlüsse und einige Weiter sind auch auf den Stecker "KEY_80" gelegt damit externe Schalter angeschlossen werden können. Mit diesem Befehl können die Anzahl der Schalter erweitert werden. (Standard: 7 8 9)
 +==== Pins LED Bus definieren ====
 +Definiert die Ausgangs-Pins zur Ansteuerung der LEDs\\
 +
 +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)\\
 +**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.\\
 +**Virtuelle Pins:** Bei Verwendung des virtueller Pins 'V' erhöht sich die Anzahl der Kanäle um 1.\\
 +
 +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 vorgeben, wann welches Haus angehen soll. 
 +
 +Im Prinzip kann man jeden LED-Kanal, den man nicht benötigt, als "virtuellen Kanal" verwenden. Es 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 865: Zeile 905:
     #define USE_ESP32_EXTENSIONS     #define USE_ESP32_EXTENSIONS
   #endif   #endif
 +
 +Um das Display der Lichtmaschine Pro zu aktivieren ist ein weiterer Eintrag notwendig:
 +  #ifdef ESP32
 +    #define USE_ESP32_EXTENSIONS
 +    #define USE_UI
 +  #endif
 +  
 +{{:bilder:anleitungen:prog_gen:esp32_mll_anzeige_2.jpg?nolink|}} \\
 +
 +**Ab der Software 3.3.2G bzw. 3.4.0 gibt es noch weitere Möglichkeiten.**
 +
 +Je nach verwendeten Display (0,96" oder 1.3" Display) kann es zu Pixelfehlern am rechten Rand des Display's kommen.\\
 +{{:bilder:anleitungen:prog_gen:esp32_mll_anzeige_1a.png?nolink|}} \\
 +Da gibt es einen Parameter, der die Displaygröße einstellt:
 +
 +  OLED_TYP 1    ist das 0,96" Display 
 +  OLED_TYP 2    ist das 1,3" Display und ist der Standard (auch wenn nicht eingetragen)
 +Eingetragen wird\\
 +  #ifdef ESP32
 +    #define USE_ESP32_EXTENSIONS
 +    #define USE_UI
 +    #define OLED_TYP 2
 +  #endif
 +\\
 +\\
 +Des weiteren kann auch die **MobaLedLib-Uhrzeit** angezeigt werden. Voraussetzung ist allerdings die Zeile "Tag/Nacht-Modus aktivieren".
 +Mit dem Eintrag
 +  UI_MLLTIME 1
 +Das kann dann so im Excelblatt stehen:
 +   #ifdef ESP32
 +    #define USE_ESP32_EXTENSIONS
 +    #define USE_UI
 +    #define UI_MLLTime 1
 +  #endif
 +
 +Das ergibt dann die Anzeige:
 +{{:bilder:anleitungen:prog_gen:esp32_mll_time1.jpg?nolink|}} \\
 +\\
 +\\
 +Für Nutzer des **Fotowiderstandes (LDR)** gibt es die Möglichkeit, die Daten anzeigen zu lassen. Hier muss allerdings die Zeile "Fotowiderstand aktivieren" vorhanden sein.
 +
 +  UI_MLLTime 2     
 +oder
 +  UI_MLLTime 3
 + 
 +Bei "MLL_Time 2" gibt es diese Anzeige:
 +{{:bilder:anleitungen:prog_gen:esp32_mll_time2.jpg?nolink|}} \\ 
 + 
 +Bei "MLL_Time 3" gibt es diese Anzeige:
 +{{:bilder:anleitungen:prog_gen:esp32_mll_time3.jpg?nolink|}} \\ 
 +\\
 +Die angezeigten Werte sind wie die LDR-Werte, die über die serielle Schnittstelle ausgegeben werden. "I" ist der Istwert des Sensors (regiert also schnell), "D" ist der "Dumped" Wert, also ein langsam nachfolgender Wert, den die MLL ausrechnet. 
 +\\
 +\\
 +**Wie kann ich das ins Excel-Blatt eintragen?**\\
 +Ich ziehe mir das Eingabefeld in Excel (oben über unseren Buttons) groß (also nach unten) und dann kann man die Werte problemlos eingeben.
 +Oder in einem externen Texteditor eintragen, alles kopieren und in das Excel-Feld einfügen.
 +
 +
 +
 +
  
  
anleitungen/effekte_mll.1745553886.txt.gz · Zuletzt geändert: von admin_dominik