Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
playground:playground [2020/11/21 17:38] – nessi | playground:playground [2021/11/22 14:12] – nessi | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== PlayGround ====== | ====== PlayGround ====== | ||
- | Nicht alles was in der MobaLedLib möglich ist, lässt sich auch im Dialogfeld unterbringen. Auch sind die Wünsche der einzelnen Anwender doch sehr unterschiedlich. In diesem Kapitel sollen Abläufe/ | ||
- | Positiver Nebeneffekt, | ||
- | |||
- | - Beispiel einer Discobeleuchtung: | ||
- | |||
- | [[https:// | ||
- | |||
- | Mit einer oder mehreren RGB-LED kann der Discobetrieb sowie das „Arbeitslicht“ bei Partyende dargestellt werden. | ||
- | Für die Discobeleuchtung wird das Flashlight benutzt und bei jeder LED die 3 Kanäle mit verschiedenen Zeiten einzeln angesteuert. | ||
- | Die LED ist doppelt zugewiesen, es ist entweder nur Disco oder Tagesmodus aktiviert. | ||
- | Die Umschaltung wurde über einen einfachen Schalter gelöst, ist aber auch über DCC-Ansteuerung möglich. | ||
- | Damit Ihr das gleiche Ergebnis wie in dem Video bekommt, sind im Prog_Generator folgende Zeilen zu erfassen: | ||
- | |||
- | {{bilder: | ||
- | |||
- | Das Umschalten funktioniert auch ohne DCC. Der Trick ist die erste Zeile. Der Befehl „#define TEST_TOGGLE_BUTTONS“ aktiviert die drei Taster der Hauptplatine zum Simulieren der ersten drei DCC Befehlen. (funktioniert nicht, bei Minimalbelegung der Hauptplatine!) Das geht auch wenn kein zweiter (DCC) Arduino vorhanden ist. | ||
- | |||
- | Die Vorgaben für den Flash-Befehl werden über den Button Dialog in den Prog_Generator gezogen. Pro RGB-LED ist es notwendig drei Zeilen zu generieren (Rot / Grün / Blau). Je nach Größe der Disco können mehrere RGB-LED eingesetzt werden. Die Zeilen mit Flash… C1, C2, C3 sooft kopieren wie RGB-LED´s angesteuert werden sollen | ||
- | Für das Arbeitslicht kann man auf den Dialog „House“ zurückgreifen. Wichtig ist hier, dass der Eingang invertiert wird. | ||
- | Dann ist entweder die Disko oder das normale Licht an. | ||
- | |||
- | {{bilder: | ||
- | |||
- | Dadurch dass die „Minimale und Maximale Anzahl der zufällig aktiven Beleuchtungen“ gleich der Anzahl der LEDs ist werden alle LEDs angeschaltet. Durch die Verwendung der „Individuellen Zeiten“ von 0 werden die Lichter sofort aktiviert. | ||
- | Mit dem Schalter „Eingang invertieren“ ist die Beleuchtung an, wenn die Disco aus ist. Hier wurde als Beispiel der Effekt „Neon_LIGHTL“ verwendet, mit dem mehrere Neonlichter in einem größeren Raum simuliert werden. (Hier können auch andere Effekte ausgewählt werden-einfach mal ausprobieren!) | ||
- | |||
- | Wenn man auch einen „Tag“ Modus haben will bei dem weder Neonlichter noch Disco aktiv ist, dann kann man zwei DCC Adressen vergeben. Das sieht dann so aus: | ||
- | {{bilder: | ||
- | |||
- | Man könnte die Disco noch weiter perfektionieren. Es könnten verschiedene Beleuchtungsvarianten erstellt werden welche zu verschiedenen Musikstücken passen (Langsam, Schnell, …). Man könnte eine Spiegelkugel einbauen und, und, und … | ||
- | |||
- | Tipp für eine Variante: Nutzt statt „Flash“ den Dialog „Blinker“ oder „Blinker-HD“, | ||
- | |||
- | Dieses Beispiel haben Dominik (Moba_Nicki) und Hardi zur Verfügung gestellt. | ||
- | |||
- | |||
- | |||
- | **Beispiel Schweißlicht von Holger** | ||
- | |||
- | Mit diesem Beispiel soll die Erzeugung eines schweißlichtähnlichen Lichteffekts mit einer RGB-LED und das zeitgleiche Abspielen der entsprechenden MP3-Sounddatei gezeigt werden. | ||
- | Der Sound liegt als MP3-Datei mit einer Dauer von ca. 3 Sekunden auf ein JQ6500 Modul vor. Details zum JQ6500 Modul im WIKI-Link. | ||
- | |||
- | Zunächst den Pattern_Configurator öffnen und ein neues Blatt anlegen, die Einstellungen nicht übernehmen und einen Namen nach eigener Wahl vergeben, hier Welding_2. | ||
- | (Bild Neues Blatt) | ||
- | |||
- | In dem neuen Blatt sind im gelb unterlegten Teil die Einstellungen wie im folgenden Bild gezeigt vorzunehmen. | ||
- | |||
- | (Bild Einstellungen) | ||
- | |||
- | Anmerkungen dazu: | ||
- | * Ausgabekanäle 4: 3 x für die RGB-LED, der vierte für die Ansteuerung des Sound-Modules. Beim JQ6500-Modul wird der rote Kanal für den Sound gebraucht, gelb und blau sind herausgeführt und können für LEDs, natürlich auch weiße, genutzt werden. Das wird in diesem Beispiel im ProgGen auch so genutzt. | ||
- | * Bits pro Wert 8: mit der 8 Bit Auflösung lassen sich die 256 Helligkeitsstufen darstellen. Für ein Schweißlicht mit harten Übergängen und wenigen Helligkeitsstufen würde eine geringere Auflösung zur Darstellung völlig ausreichen. Mit 4 Bit ergibt sich nach meiner Einschätzung keine wesentlicher Unterschied im erzeugten LED-Licht. Damit lassen sich ein paar Byte kostbarer Speicher einsparen. Allerdings brauchen wir für die Ansteuerung des Sound-Modules einen exakten Wert, der sich evtl. mit einer geringeren Auflösung nicht erzeugen lässt. | ||
- | * Analoges Überblenden: | ||
- | * Goto Aktivierung: | ||
- | * Grafische Anzeige: eine „1“ schaltet die grafische Anzeige in den Tabellen ein und erzeugt die „GOTO Tabelle“. | ||
- | |||
- | Nun können wir die Tabellen befüllen. | ||
- | |||
- | (Bild Pattern_Conf) | ||
- | |||
- | Die von mir eingetragenen Werte für die Zeiten und die Werte sind nur ein Beispiel und können natürlich nach eigenen Vorstellungen fast beliebig angepasst werden. | ||
- | |||
- | * In der untersten Tabelle für die Werteeingabe muss die Spalte Nr 1 leer bleiben, in der entsprechenden Spalte der Goto-Tabelle tragen wir ein „E“ als „GoEnd-Anweisung“ ein, die Funktion wartet auf ein Ausführungskommando, | ||
- | * In der zweiten Spalte der Goto-Tabelle geben wir ein „S“ als Startspalte ein. Der Einsprung in der Programmausführung erfolgt mit der logischen „1“ = Tastendruck, | ||
- | * In der vierten Spalte der Wertetabelle habe ich den Wert 70 eingegeben, da bei meinem Sound-Modul die entsprechende MP3-Datei über diesen Wert aufgerufen wird. Andere Werte können als Anhalt der folgenden Tabelle entnommen werden. | ||
- | |||
- | |||
- | Anhaltswerte für den **JQ6500** | ||
- | | ||
- | * SOUND 5 37 | ||
- | * SOUND 4 49 | ||
- | * SOUND 3 70 | ||
- | * SOUND 2 134 | ||
- | * SOUND 1 255 | ||
- | |||
- | * Die Dauer von 850 ms habe ich eingestellt, | ||
- | * In der nächsten Spalte habe ich eine Pause von 400 ms eingefügt, da das Sound-Modul gegenüber der LED träge reagiert und etwas Zeit benötigt bis das gewünschte Geräusch zu hören ist. Der Sound wird nur einmal ausgelöst und läuft dann über 3 Sekunden ab. Ein Abbruch wäre nur über den Aufruf eines anderen Sounds bzw. eines „leeren“ Sounds möglich. | ||
- | * In den folgenden Spalten sind Werte für die Ansteuerung der RGB-LED eingetragen. Die Werte können zwischen 0 und 255 liegen, x = Maximalwert. Zunächst ist das Licht etwas bläulich, zum Ende des Schweißvorgangs ist das das rötliche Nachglühen zu sehen. Der Umsetzung eigener Vorstellungen und Wünschen steht hier (fast) nichts im Wege. | ||
- | * Am Ende muss in die Goto-Spalte der Wert „E“ eingegeben werden. | ||
- | * Sound und Licht können leicht über die Verlängerung der Brenndauer der LED synchronisiert werden. Hier muss man etwas experimentieren. | ||
- | Nun können wir die Konfiguration mit einem Klick auf die entsprechende Taste an den Progarmm_Generator schicken. | ||
- | (Bild Prog_Gen_1) | + | **Formsignale mit dem Mini-Stepper bewegen** |
+ | |||
- | Wir wollen jetzt das Programm nicht direkt zum Arduino schicken und auch nicht direkt zurück zum Pattern_Configurator zurückkehren. Also im Text aufgefordert nur eine Zeile im ProgGen anklicken, in die das Muster geschrieben werden soll. Im nächsten Fenster übernehmen wir den vorgegebenen Wert „0“, Standard LEDs. Nach der Bestätigung mit „OK“ sollte das Ergebnis wie in Zeile 47 aussehen: | ||
- | (Bild Pg_Gen_3) | + | Quelle:** MLL Stammtisch Mai 2021** |
- | Nach der Eingabe einer Adresse und Auswahl eines Tasters können wir unser Ergebnis wie gewohnt | + | Tipps zu den Platinen, |
+ | Ab Minute 33 wird die Steuerung des zweibegriffigen Formsignals vorgeführt, | ||
- | (Bild Prog_Gen_4) | + | **Benötigte Teie:** |
- | Mit jedem Aufruf wird die Funktion einmal ausgeführt. | + | * Hauptplatine über USB- Kabel mit PC verbunden |
- | Ich habe die Funktion noch mit der Random-Funktion verknüpft, die über einen Ein/Aus-Befehl aktiviert wird und Schweißlicht und Geräusch in unregelmäßigen Abständen aufruft. | + | * Stromversorgung für Steppermotor |
+ | * Formsignal | ||
+ | * Bestückte Stepperplatine mit einer (550) oder drei Anschlussmöglichkeiten (551) für Stepper-Motoren | ||
+ | ** | ||
+ | Ablauf:** | ||
- | (Bild Prog_Gen_5) | + | Den Pattern-Configurator aufrufen und, wenn bisher noch nicht durchgeführt, |
+ | Das „__Dep Signal4__“ Beispiel aufrufen und über die Schaltfläche **Neues Blatt** | ||
- | In der Random-Funktion habe ich folgende Werte eingegebe: | + | Nun in das Blatt „Formsignal“ wechseln. |
- | (Bild Pro_Gen_5_random) | ||
- | Über die Zielvariable WL1 wird unsere Schweißlichtfunktion aufgerufen. | ||
- | In meinem Beispiel kann über die DCC-Befehle 50 bis 56 weiterhin das JQ6500-Modul wie gewohnt gesteuert werden. Dazu muss über dir NEXT_LED-Funktion der Sprung zur nächsten LED in der Kette rückgängig gemacht werden – NEXT_LED -1! | ||
- | Wie anfangs erwähnt können die beiden verbleibenden Ausgänge auf dem Sound-Modul für LEDs, zum Beispiel Außenbeleuchtung des Lokschuppens, | ||
+ | Für die Steuerung des Steppers brauchen wir zwei Steuerbefehle: | ||
+ | * Stepper ein-/ | ||
+ | * Drehrichtung des Steppers – über den gelben Kanal, Wert 255 eine Drehrichtung, | ||
+ | Der blaue Kanal kann zur Steuerung einer LED verwendet werden, z.B. der Signalbeleuchtung. Diese Funktion nutze ich im Prog-Gen, nicht hier im Pattern-Config. | ||
- | ===== **Installation MobaLedLib aus GitHub** ===== | + | Daher den Wert für die **Ausgabekanäle auf „2“** einstellen. |
+ | In der unteren Tabelle könne die Werte für die anderen Ausgabekanäle gelöscht werden. | ||
+ | Für die anderen Einstellungen sind folgende Werte einzutragen bzw. zu ändern: | ||
- | Hardi hat auf GitHub mehrere Projekte angelegt. Für die MabaLedLib sind in der folgenden Abbildung | + | * Bits pro Wert: „8“ |
+ | * Mode: „PM_SEQUENZ_NO_RESTART“ | ||
+ | * Analoges Überblenden: | ||
+ | * Goto Activierung: | ||
- | (Bild Git_Seite) | + | Bild Prog-Gen einfügen |
- | In „MobaLedLib“ befinden sich die Dateien für die aktuelle Version, in “MobaLedLib_Docu“ die dazu gehörige Dokumentation. | + | Über die Taste **„Programm Generator“** die Daten zum Prog-Gen schicken. |
+ | Im Prog-Gen die Funktion an die gewünschte Stelle einfügen. | ||
- | ==== Herunterladen der aktuellen MobaLedLib-Version: | + | Hier ist ein neues Blatt, DCC Test(2), für Testzwecke angelegt worden. |
- | In „MobaLedLib“ | + | * Zunächst nur die Zeilen |
+ | * Zeile **11** ist der rote Kanal, der den Stepper über „ ROT/GRÜN) ein- bzw. ausschaltet. | ||
+ | * Über Zeile **12** kann die Drehrichtung bestimmt werden. Eingeschaltet (GRÜN) wird der Wert 255 gesendet, ausgeschaltet (ROT) der Wert 0 und damit die entgegengesetzte Drehrichtung. | ||
+ | * Zeile **13** dient zum Schalter der Signalbeleuchtung. Diese Funktion hat keinen Einfluss auf den Stepper und muss nicht genutzt werden. | ||
- | (Bild Git_aktVers) | ||
+ | Nach der Einstellung des Signals können die Zeilen __11 bis 13 deaktiviert__ und die __Zeilen 6, 8, 9 aktiviert__ werden. | ||
- | ==== Herunterladen | + | * Mit der Zeile **6** wird der letzte Zustand gespeichert |
- | + | * Zeile** 8** beinhaltet die vom Pattern-Config erzeugte Funktion. Nach der Eingabe | |
- | Im Unterverzeichnis MobaLedLib_Docu/ | + | * Mit Zeile **9** kann bei Bedarf eine LED, z.B. die Signalbeleuchtung, |
- | + | ||
- | (Bild Git_4Beta2) | + | |
- | + | ||
- | Die Zip-Datei wird in das Downloadverzeichnis heruntergeladen. | + | |
- | + | ||
- | ==== Das weitere Vorgehen | + | |
- | + | ||
- | GitHub versieht beim Herunterladen standardmäßig Dateien | + | |
- | + | ||
- | (Bild Git_master) | + | |
- | + | ||
- | MobaLedLib-Dateien werden im Nutzer-Verzeichnis unter „Dokumente“ Unterverzeichnis „Arduino“ an zwei Stellen gespeichert: | + | |
- | + | ||
- | (Bild GitUVZ-Doku) | + | |
- | + | ||
- | * in dem Verzeichnis „MobaLedLib“. | + | |
- | * und in „libraries“. In diesem Unterverzeichnis | + | |
- | + | ||
- | (Bild Git unzip) | + | |
- | + | ||
- | Der Name des Verzeichnisses muss von „MobaLedLib__-master__“ | + | |
- | + | ||
- | Nun wird wie gewohnt auf der Tastatur die WINDOWS und die „R“ Taste gleichzeitig gedrückt. In den erscheinenden „Ausführen“ Dialog die folgende | + | |
- | + | ||
- | %USERPROFILE%\Documents\Arduino\libraries\MobaLedLib\extras\Prog_Generator_MobaLedLib.xlsm | + | |
- | + | ||
- | Achtung: Die Groß- und Kleinschreibung muss exakt stimmen. | + | |
- | + | ||
- | Der weitere Ablauf entspricht der „Anleitung für den ersten Schnelleinstieg“. | + | |