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

data.nodescript.turnouts.turnout_doublecoil_onecontrol_MTB_switchpair.nodescript Maven / Gradle / Ivy

## -----------------------------------------------
## Dieses Script definiert ein Accessory, welches 2 Macros zum Schalten von Weichen-Doppelspulenantrieben startet.
## Die Macros steuern 2 Powerausgänge an, welche einen MTB-Antrieb wie einen Doppelspulenantrieb schalten.
## Der Antrieb arbeitet mit Endabschaltung. Es erfolgt eine Prüfung der Stellung des Antriebes (!!!!!), nicht der Weichenzunge.
## Sowohl die Makros als auch die ports müssen aufeinanderfolgend sein.
## Neben den Porteigendschaften werden auch für die erforderlichen CV's die richtigen Werte eingestellt.
## Mit den Variblen $CVoffset und $CVs_perPort wird als erste CV des ports 00 389 festgelegt. Ausserdem werden je port 3 CV's 
## angenommen.
##
## history: 2017-05-26 D.T. erste Version
##          2020-07-11 A.Kuhtz, Anpassung auf Schaltpaar-Ausgang
##
## -----------------------------------------------

## only for OneControl because of the CV offset for the power ports
##require(vid="13", pid="117,140,141,142,122,143,144,145")
##requireVersion(min=3.0.0)

## -------------- 1. Select Target
##application(text:de="Weichenantrieb (MTB-Antrieb) an OneControl mit Schaltpaar-Ausgang FW 3.x", text:en="Turnout (MTB-drive) at OneControl with switchpair port FW 3.x", text:nl="Wisselaandrijving dmv MTB wisselmotor op de OneControlwith switchpair port FW 3.x")
##instruction(text:de="Konfiguration eines MTB-Weichenantriebes an der OneControl 
Es werden alle Porteigenschaften eingestellt.", text:en="Configuration of a MTB-Turnout at the OneControl") ## ##input($accessoryName:string, text:de="Bezeichnung der Weiche: ", text:en="Name of the turnout: ", default="W") ##input($my_accessory:accessory, text:de="Nummer des zu erzeugenden Accessory", text:en="Number of the Accessory", default=0) ##input($macroStraight:macro, text:de="Nummer des ersten Macros (Abzweig)", text:en="Number of the first macro (branch)", default=0) ##input($switchPairPort0:switchpair, text:de="Nummer des Schaltpaar-Ausgangs", text:en="Number of the switchpair output", default=0) ##input($prevent_replace_labels:boolean, text:de="Keine Namen für Accessory, Makros, Ports ersetzen", text:en="Prevent replace labels for accessory, macro and ports", default=false) #set($Integer = 0) #set($version_major = 0) #set($version_sub = 0) #set($version_run = 0) #set($version_string="${node_firmware_version}") #set($version_array = $version_string.split("\.")) #if($version_array.size() == 3) #set($version_major = $Integer.parseInt($version_array[0])) #set($version_sub = $Integer.parseInt($version_array[1])) #set($version_run = $Integer.parseInt($version_array[2])) #end #if ($version_major < 3) #if ($user_lang == "de") $exceptionThrower.throwUserDefined("Minimale unterstützte Firmware-Version ist 3.x") #else $exceptionThrower.throwUserDefined("Minimum supported firmware version is 3.x") #end #end ## -- prepare some variables -- #set($macroBranch = $macroStraight + 1) ## configure ports ## make sure the port is a switchpair port assert port number=${switchPairPort0} ptype=switchpair ## configure ticks and load type config port ptype=switchpair ticks=100 loadtype=0 number=${switchPairPort0} ## -- prepare names of ports -- ####################################### ## Setzt label, wenn ${prevent_replace_labels} NICHT true #if (!${prevent_replace_labels}) ## ## Set label of ports set switchpair ${switchPairPort0} name="W_${accessoryName}" ## Set label of macros set macro ${macroStraight} name="W_${accessoryName}_gerade" set macro ${macroBranch} name="W_${accessoryName}_abzweig" ## Set label of accessory set accessory ${my_accessory} name="W_${accessoryName}" set aspect 0 accessory=${my_accessory} name="W_${accessoryName}_gerade" set aspect 1 accessory=${my_accessory} name="W_${accessoryName}_abzweig" #end ####################################### ## Macro Weiche gerade ## select macro ${macroStraight} ## macro repeats once config macro repeat=1 slowdown=1 ## stop the other macro add step ptype=macro action=stop number=${macroBranch} ## add the steps to switch the ports add step ptype=switchpair action=on number=${switchPairPort0} add step ptype=delay delay=10 ## Macro Weiche abzweig ## select macro ${macroBranch} ## macro repeats once config macro repeat=1 slowdown=1 ## stop the other macro add step ptype=macro action=stop number=${macroStraight} add step ptype=switchpair action=off number=${switchPairPort0} add step ptype=delay delay=10 ## Define Accessory select accessory ${my_accessory} config accessory startup none add aspect 0 macronumber=${macroStraight} add aspect 1 macronumber=${macroBranch}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy