All Downloads are FREE. Search and download functionalities are using the official Maven repository.

data.nodescript.lighteffects.Andreaskreuz.nodescript Maven / Gradle / Ivy

### Dieses Script definiert ein Asseccory, 
### um den Blinkeffekt der Andreaskreuze an einem Bahn?bergang
### anzusteuern.
###
### Optionen:
### - Synchones blinken, oder leicht asynchones blinken ?ber zuf?llige Verz?gung
### - Wenn nur zwei sichtbare Andreaskreuze verwendet werden, kann auf zwei Lightports reduziert werden.
###
### Hardware: Anzahl der Lightport kann im Menu eingegeben werden.
### Software: 1 accessory
###           2 macros, 0 = Aus, 1 = Ein
###
### history: 2017-04-15 A.Tillner, erste Version
###
###
### -------------- 1. Select Target
##application(text:de="Andreaskreuz, mit 2 oder 4 LED", text:en="Railway crossing sign, with 2 or 4 LED's")
##instruction(text:de="Andreaskreuz: 
Lightports = cross_1, cross_2, cross_3, cross_4. Optional nur 1 u. 2
Macros = Alles aus, blinken einschalten", text:en="railway crossing sign:
lightports = cross_1, cross_2, cross_3, cross_4. Optional only 1 and 2
macros = all off, all on", link="http://wiki.fichtelbahn.de/doku.php?id=konfigvorlagen:lichteffekte" ) ### ##input($AccessoryName:string, text:de="Name des Andreaskreuz-Accessories: ", text:en="Name of the crossing sign Accessory: ", default="Blinkanlage-Andreaskreuz") ##input($my_accessory:accessory, text:de="Nummer des zu erzeugenden Accessory: ", text:en="Nummber of the Accessory: ", default=0) ##input($my_macro:macro, text:de="Nummer des ersten Macros (Alles aus): ", text:en="Number of the first macro (all off): ", default=0) ##input($start_led:light, text:de="Nummer des ersten Lightport (cross_1): ", text:en="Number of the first Lightport (cross_1): ", default=0) ##input($asynchron:boolean, text:de="Asynchrones blinken: ", text:en="Asynchronous flashing: ", default=false) ##input($led_count2:boolean, text:de="Nur zwei Andreaskreuze: ", text:en="Only two crossing signs: ", default=false) ##input($prevent_replace_labels:boolean, text:de="Keine Namen fuer Accessory, Makros, Ports ersetzen", text:en="Prevent replace labels for accessory, macro and ports", default=false) #set($led_gap = 1) ### die anderen LED sind an den folgenden Lightports angeschlossen ### ### -------------- 2. set Parameters for Ports #set($WertbeiOff = 0) #set($WertbeiOn = 160) #set($randomdelay = 10) #set($OnTime = 0) #if (${dimm_range} == 8) ### Es handelt sich um einen Knoten mit 8 Bit Dimming #set($DimmzeitOff = 10) #set($DimmzeitOn = 10) #set($DimmzeitOff_Param = "DimmOff=${DimmzeitOff}") #set($DimmzeitOn_Param = "DimmOn=${DimmzeitOn}") #else ### Es handelt sich um einen Knoten mit 16 Bit Dimming #set($DimmzeitOff = 2825) #set($DimmzeitOn = 2825) #set($DimmzeitOff_Param = "DimmOff88=${DimmzeitOff}") #set($DimmzeitOn_Param = "DimmOn88=${DimmzeitOn}") #end ### -------------- 3. execute part of the script #set($macro_off = $my_macro) ### need some additional macros #set($macro_on = $macro_off + 1) ### need some additional macros #set($led_max = ((4 * $led_gap) + $start_led) - 1 ) #if (${led_count2}) #set($led_max = ((2 * $led_gap) + $start_led) - 1 ) #end ######################################### ######################################### ### Define Number of LED ### set LED-Label ### configure port #foreach ( $led_cross in [${start_led}..${led_max}] ) ### Set label of Ports #if (!${prevent_replace_labels}) set light ${led_cross} name="${AccessoryName}_${my_accessory}_${led_cross}" #end ### ### Ports: (set Parameters) config port ptype=light ValueOff=${WertbeiOff} ValueOn=${WertbeiOn} ${DimmzeitOff_Param} ${DimmzeitOn_Param} number=${led_cross} #end ######################################## ######################################## ######################################## ### Setzt label, wenn ${prevent_replace_labels} NICHT true #if (!${prevent_replace_labels}) ### Set label of Macro set macro ${macro_off} name="${AccessoryName}_${my_accessory}_Off" set macro ${macro_on} name="${AccessoryName}_${my_accessory}_On" ### Set label of Accessories set accessory ${my_accessory} name="${AccessoryName}_${my_accessory}" #end ######################################## ################################################/ ### Macro Feuer aus ### select macro ${macro_off} config macro repeat=1 slowdown=1 ### Macro stoppen add step ptype=macro action=stop number=${macro_on} ### nicht benoetigte LED's ausschalten #foreach ( $led_cross in [${start_led}..${led_max}] ) add step ptype=light action=off number=${led_cross} #end ### ### Ende Feuer aus ### ################################################/ ################################################/ ### Macro Feuer an ### select macro ${macro_on} config macro repeat=1 slowdown=1 ### Feuer brennt #foreach ( $led_cross in [${start_led}..${led_max}] ) #if (${asynchron}) add step ptype=randomdelay delay=${randomdelay} #end add step ptype=light action=blinka number=${led_cross} #end ### ### Ende Feuer an ### ################################################/ ### Define Accessory select accessory ${my_accessory} add aspect 0 macronumber=${macro_off} add aspect 1 macronumber=${macro_on}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy