Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
anleitungen:effekte_mll [2025/04/24 18:41] – [ESP32 Erweiterung] petervt11 | anleitungen:effekte_mll [2025/06/21 22:28] (aktuell) – [LED-Werte als Variable] raily74 | ||
---|---|---|---|
Zeile 515: | Zeile 515: | ||
{{bilder: | {{bilder: | ||
+ | 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# | ||
=== 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 771: | Zeile 772: | ||
Eine monostabile Kippstufe, auch monostabiler Multivibrator, | Eine monostabile Kippstufe, auch monostabiler Multivibrator, | ||
Man unterscheidet zwischen nachtriggerbaren (auch: retriggerbar) und nicht nachtriggerbaren Monoflops. Nachtriggerbar bedeutet, dass ein während des Zeitablaufes eintreffendes Triggersignal die interne Zeit jeweils erneut startet und der aktive Schaltzustand dementsprechend zeitlich verlängert wird. Bei einem nicht nachtriggerbaren Monoflop hat ein Triggersignal während der aktiven Phase keine Wirkung. | Man unterscheidet zwischen nachtriggerbaren (auch: retriggerbar) und nicht nachtriggerbaren Monoflops. Nachtriggerbar bedeutet, dass ein während des Zeitablaufes eintreffendes Triggersignal die interne Zeit jeweils erneut startet und der aktive Schaltzustand dementsprechend zeitlich verlängert wird. Bei einem nicht nachtriggerbaren Monoflop hat ein Triggersignal während der aktiven Phase keine Wirkung. | ||
- | /==== Mono-Flop ==== | + | / |
+ | ==== Mono-Flop ==== | ||
{{: | {{: | ||
Ein Mono Flop ist eine Funktion welche den Ausgang für eine bestimmte Zeit aktiviert, wenn am Eingang ein Wechsel von Null nach Eins (Positive Flanke) erkannt wurde. Die Zeitdauer wird mit jeder weiteren Flanke verlängert, | Ein Mono Flop ist eine Funktion welche den Ausgang für eine bestimmte Zeit aktiviert, wenn am Eingang ein Wechsel von Null nach Eins (Positive Flanke) erkannt wurde. Die Zeitdauer wird mit jeder weiteren Flanke verlängert, | ||
- | <WRAP round tip 60%> | + | <WRAP round tip 100%> |
Das Mono-Flop eignet sich beispielsweise zur Ansteuerung von Entkupplern. Dabei spielt es keine Rolle, ob diese mit Magnetspulen oder mit Servo betrieben werden. Mit einer freien DCC-Adresse wird das Mono-Flop aktiviert, welches wiederum den Ausgang für das Servo oder ein Relais für die eingestellte Zeit aktiviert. Der Entkuppler geht nach der voreingestellten Zeit wieder nach unten.\\ | Das Mono-Flop eignet sich beispielsweise zur Ansteuerung von Entkupplern. Dabei spielt es keine Rolle, ob diese mit Magnetspulen oder mit Servo betrieben werden. Mit einer freien DCC-Adresse wird das Mono-Flop aktiviert, welches wiederum den Ausgang für das Servo oder ein Relais für die eingestellte Zeit aktiviert. Der Entkuppler geht nach der voreingestellten Zeit wieder nach unten.\\ | ||
Ein weiteres Beispiel könnte ein Rauchgenerator sein. Um zu vermeiden, dass dieser " | Ein weiteres Beispiel könnte ein Rauchgenerator sein. Um zu vermeiden, dass dieser " | ||
Zeile 810: | Zeile 812: | ||
====== Taster ====== | ====== Taster ====== | ||
- | <WRAP center round tip 80%> | + | <WRAP center round tip 100%> |
Der Bereich für die Taster wurde ausgelagert, | Der Bereich für die Taster wurde ausgelagert, | ||
Die Seite ist ab sofort hier zu finden: [[anleitungen: | Die Seite ist ab sofort hier zu finden: [[anleitungen: | ||
Zeile 825: | 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 " | ||
+ | ==== 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: | ||
+ | **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 ' | ||
+ | |||
+ | Virtuelle Pins eignen sich perfekt für die Funktion [[effekte_mll# | ||
+ | |||
+ | Im Prinzip kann man jeden LED-Kanal, den man nicht benötigt, als " | ||
+ | |||
+ | 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/ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | 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.\\ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | 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 " | ||
+ | |||
+ | 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 861: | Zeile 902: | ||
Damit wird im Programm-Manager folgendes eingetragen: | Damit wird im Programm-Manager folgendes eingetragen: | ||
- | '' | + | |
- | #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 | ||
+ | |||
+ | {{: | ||
+ | |||
+ | **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' | ||
+ | {{: | ||
+ | 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_UI | ||
+ | #define OLED_TYP 2 | ||
+ | #endif | ||
+ | \\ | ||
+ | \\ | ||
+ | Des weiteren kann auch die **MobaLedLib-Uhrzeit** angezeigt werden. Voraussetzung ist allerdings die Zeile " | ||
+ | Mit dem Eintrag | ||
+ | UI_MLLTIME 1 | ||
+ | Das kann dann so im Excelblatt stehen: | ||
+ | # | ||
+ | #define USE_ESP32_EXTENSIONS | ||
+ | #define USE_UI | ||
+ | #define UI_MLLTime 1 | ||
+ | | ||
+ | |||
+ | Das ergibt dann die Anzeige: | ||
+ | {{: | ||
+ | \\ | ||
+ | \\ | ||
+ | Für Nutzer des **Fotowiderstandes (LDR)** gibt es die Möglichkeit, | ||
+ | |||
+ | UI_MLLTime 2 | ||
+ | oder | ||
+ | UI_MLLTime 3 | ||
+ | |||
+ | Bei " | ||
+ | {{: | ||
+ | |||
+ | Bei " | ||
+ | {{: | ||
+ | \\ | ||
+ | Die angezeigten Werte sind wie die LDR-Werte, die über die serielle Schnittstelle ausgegeben werden. " | ||
+ | \\ | ||
+ | \\ | ||
+ | **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. | ||
+ | |||
+ | |||
+ | |||