Dampf abschalten

!!! Please ensure, that your contribution or question is placed into the relevant section !!!
Questions about rolling stock, for example, do not belong in "Questions about the Forum". Following is perhaps the right area where your question will be better looked after:
General questions to EEP , Splines, rolling stock, Structures in EEP, landscape elements, Signalling system and controlling, designers, Europe-wide EEP meetings , Gossip
Your cooperation to keep the forum clear is appreciated.
  • Hallo zusammen,

    das mit dem Steuerkreis ist eine Lösung die jede in einem KP aufgeführte Lok dampflos schaltet.

    Wenn aber nun diese Lok wieder in Fahrt geht...

    ...dann fährt sie ohne Dampf weiter.

    Mit einer kleinen Lua Steuerung ginge das realistischer.


    Dieses kleine Script ist dafür zuständig, dass alle in der Zugliste eingetragenen Züge ständig überwacht werden.

    Steht eine Lok länger als 20 Sekunden wird der Dampf ausgeschaltet. Die Wartezeit kann man ändern indem man in der Zeile

    if I % 100 == 1 then  

    die 100 durch einen anderen Wert ersetzt (5 / Sekunde).

    In der Zugliste können jederzeit beliebig viele Züge eingetragen werden.

    Weitere Züge wie im Beispiel durch ein Komma getrennt eingeben...

    Zugliste = {"#DB 93 737", "#Personenzug1"}


    Das ursprüngliche Script im Lua Editor kann einfach durch das obige Script ersetzt werden.


    Viel Spaß

    Dieter


    Nachtrag:
    Unser lieber Götz hat mich auf einen kleinen Schönheitsfehler hingewiesen. Dafür erst mal danke.

    Da in der Funktion nach jeweils 20 Sekunden alle Züge geprüft werden kann es passieren, dass eine Lok, die gerade erst zum stehen gekommen ist auch den Dampf abschaltet :ay_1:

    Schalten und walten ist mein Hobby, aber nur in EEP ;) 
    __________________________________________
    EEP alle ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,HomeNos11 DEV...
    Intel I7 4790k 4x 4Ghz,16 GB RAM, NVidia GTX 970 4GB, Direct x V11, Windows 7 64 Bit,
    Laptop Medion Erazer, 8GB RAM, GT 850 von Nvidia, Windows 10 Home 64bit

    The post was edited 2 times, last by DH1: Korrektur des Quellcodes, Danke Ingo ().

  • Hallo,


    Dieter, ich glaube, mit LUA wäre die richtige Lösung. Werde das mal ausprobieren obwohl ich mit LUA überhaupt keine Erfahrung habe. Ich habe erstmalig letzte Woche das Script für die Anzeige der Signal - ID`s. von Christian kopiert und das hat auf Anhieb funktioniert - Das macht Mut. Kopiere mir das Anti - Dampfscript mal in den LUA - Editor, ändere die entsprechenden Eintragungen und sehe was passiert. Wenn`s nicht klappt mache ich morgen einen neuen Thread für LUA auf. :bj_1:


    Danke an alle die geholfen haben :be_1:

    Gruß von der sonnigen Algarve.................Horst :bm_1:



    Laptop: MSI mit Windows 10 Pro, 64 bit
    CPU: Intel Core, i7-CPU 4 x 2,6 GHz (Turbo 3,5 GHz)
    RAM: 16 GB
    Grafikkarte: nVidia GeForce GTX 970M, 6 GB RAM
    SSD: Samsung SSD 840 PRO mit 1 TB
    Display: 17,3 Zoll, FullHD, 1920 x 1080
    EEP: Version 14.1 Expert mit allen Patches & Plugin`s

    Zusatztools: Modellexplorer, Modellkatalog, Tauschmanager, Hugo, Bulkinstaller, Textur- und Modellmultiplier.

  • Hallo in die Runde,

    habe mit einem Schalter + Lua Dampf an und abgeschaltet -


    function EEPMain()

    EEPRegisterSignal(69)

    return 0

    end

    function EEPOnSignal_69(status)

    if status==1 then

    EEPSetTrainSmoke("#DR_03_2202_4_schmutz_RG2;001",true)

    EEPSetTrainSmoke("#DR_52_4503;001",true)

    EEPSetTrainSmoke("#DR_01_118",true)

    elseif status==2 then

    EEPSetTrainSmoke("#DR_03_2202_4_schmutz_RG2;001",false)

    EEPSetTrainSmoke("#DR_52_4503;001",false)

    EEPSetTrainSmoke("#DR_01_118",false)

    end

    return 0

    end


    funktioniert - an Verbesserungen wie immer interessiert.

    VG

    Seppl

    Win 10

    intel(R) core(TM) i7-7700 CPU @

    3.60GHZ RAM 16,0 GB NVIDIA Geforce GTX 1060 3GB


    EEP6 - Home-Nostruktor 5 - EEP 13.2 Plug-Ins 1, 2 - EEP 14.0 Patch 4.1 - Modell-Konverter - Modell-Katalog - HUGO - Home-Nostruktor 14 - Modell-Explorer (eine große Hilfe!)


    Anti-Aging ............... gibt es für mich nur noch in Kombination mit EEP !!! :an_1:

  • Ich habe erstmalig letzte Woche das Script für die Anzeige der Signal - ID`s. von Christian kopiert und das hat auf Anhieb funktioniert

    Hallo Horst,

    schön, dass Du Mut beweist aber Vorsicht!

    Wenn Du in deinem Lua-Editor schon etwas anderes wie z.B. das Script von Christian kopiert hast, dann kannst Du nicht das vollständige Script nehmen.
    Das geht davon aus, dass es alleinige "Rechte" hat.

    Also entweder die Zeilen von Christian nachträglich wieder einfügen oder von meinem oben gezeigten nur die Sachen zu deinem Script hinzufügen.

    Das wären dann die Zeilen 6 und 7, die oberhalb der EEP-Main stehen sollten und

    die Zeilen 12 - 22 welche in der EEP-Main stehen müssen.

    Am Besten fügst Du diese Zeilen direkt vor der Zeile return 1 in deinem Script ein.

    Ansonsten einfach melden.


    Gruß

    Dieter

    Schalten und walten ist mein Hobby, aber nur in EEP ;) 
    __________________________________________
    EEP alle ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,HomeNos11 DEV...
    Intel I7 4790k 4x 4Ghz,16 GB RAM, NVidia GTX 970 4GB, Direct x V11, Windows 7 64 Bit,
    Laptop Medion Erazer, 8GB RAM, GT 850 von Nvidia, Windows 10 Home 64bit

  • Seppl

    hallo,

    schön dass Du dir auch Gedanken machst.

    Aber

    function EEPMain()

    EEPRegisterSignal(69)

    return 0

    end

    warum registrierst Du das Signal in der EEPMain?

    Ganz am Anfang des Scripts wäre es besser aufgehoben.

    Alles was in der EEPMain() steht wird 5x / Sekunde aufgerufen.


    Dann würde ich in der

    die Zugliste in einem Table zusammenfassen.

    so brauchst Du nur einen zusätzlichen Zugnamen dort einfügen und keine neue Zeile je Zug einfügen.


    Gruß

    Dieter


    PS

    Wenn Du ein Script einstellst nutze doch bitte die Möglichkeit </> oben in der Leiste um Quellcode formatiert einzugeben. Das liest sich dann einfacher

    Schalten und walten ist mein Hobby, aber nur in EEP ;) 
    __________________________________________
    EEP alle ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,HomeNos11 DEV...
    Intel I7 4790k 4x 4Ghz,16 GB RAM, NVidia GTX 970 4GB, Direct x V11, Windows 7 64 Bit,
    Laptop Medion Erazer, 8GB RAM, GT 850 von Nvidia, Windows 10 Home 64bit

  • Hallo Dieter,


    Danke, ich freue mich immer, wenn ich noch etwas lernen kann, nur wenn es dann keine Entwicklungen mehr gibt - wird's schlimm!

    VG

    Seppl


    PS. bin glücklicher Verwalter von 244 Modellen von euch:aa_1: (laut meines EEP Model-Explorer)

    Win 10

    intel(R) core(TM) i7-7700 CPU @

    3.60GHZ RAM 16,0 GB NVIDIA Geforce GTX 1060 3GB


    EEP6 - Home-Nostruktor 5 - EEP 13.2 Plug-Ins 1, 2 - EEP 14.0 Patch 4.1 - Modell-Konverter - Modell-Katalog - HUGO - Home-Nostruktor 14 - Modell-Explorer (eine große Hilfe!)


    Anti-Aging ............... gibt es für mich nur noch in Kombination mit EEP !!! :an_1:

  • DH1

    Alles was in der EEPMain() steht wird 5x / Sekunde aufgerufen.

    Hallo Dieter,


    das stimmt nur wenn er "return 1" benutzt.

    Mit "return 0" wird die EEP Main nur einmal ausgeführt.


    Gruß Karl Heinz

    EEP 14.1 Expert, PlugIn1

    EEP 13.2 Expert, Patch1, PlugIn 1 und 2

    PlanEx 3.1

    Hugo 3.4.2


    Notebook Dell Inspiron 7720

    Intel Core(TM) i7 - 3630QM CPU 2,4/3,8 GHz; 8 GB RAM, nVidia GeForce GT 650 M
    Windows 10 Home - 64 Bit, Version 1709, Betriebssystembuild 16299.402
    Virenscanner McAfee LiveSafe

  • Mit "return 0" wird die EEP Main nur einmal ausgeführt.

    Das stimmt Karl Heinz...

    aber wenn Lua an EEP eine 0 zurück gibt wird nicht mehr weiter zwischen Lua und EEP kommuniziert. Daher sollte man die EEPMain() immer mit einem return 1 abschließen.

    Funktionen, die nicht mit anderen Teilen des Scripts kommunizieren müssen beende ich ohne jedes return nur mit einem simplen end. :ae_1:

    Gruß

    Dieter

    Schalten und walten ist mein Hobby, aber nur in EEP ;) 
    __________________________________________
    EEP alle ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,HomeNos11 DEV...
    Intel I7 4790k 4x 4Ghz,16 GB RAM, NVidia GTX 970 4GB, Direct x V11, Windows 7 64 Bit,
    Laptop Medion Erazer, 8GB RAM, GT 850 von Nvidia, Windows 10 Home 64bit

  • DH1

    Daher sollte man die EEPMain() immer mit einem return 1 abschließen.

    Das ist der bessere Weg.

    Habe auch schon mal lange gesucht, warum mein Script nicht mehr funktioniert hat, bis ich dann entdeckt habe, dass ich "return 0" benutzt habe.


    Bei Seppls Script wäre es schon besser, wenn der Befehl "EEPRegisterSignal(69)"

    nicht in die EEP Main eingebunden wäre.

    So wird der Befehl auch nur einmal aufgerufen.

    EEP 14.1 Expert, PlugIn1

    EEP 13.2 Expert, Patch1, PlugIn 1 und 2

    PlanEx 3.1

    Hugo 3.4.2


    Notebook Dell Inspiron 7720

    Intel Core(TM) i7 - 3630QM CPU 2,4/3,8 GHz; 8 GB RAM, nVidia GeForce GT 650 M
    Windows 10 Home - 64 Bit, Version 1709, Betriebssystembuild 16299.402
    Virenscanner McAfee LiveSafe

  • Bei Seppls Script wäre es schon besser, wenn der Befehl "EEPRegisterSignal(69)"

    nicht in die EEP Main eingebunden wäre.

    So wird der Befehl auch nur einmal aufgerufen.

    Hallo :)


    richtig, das gehört da (eigentlich) nicht hin. Ihr habt aber schon gesehen, dass Seppl in seinem Skript return 0 stehen hat? Ich habe es nicht ausprobiert, frage mich aber, ob das Skript (d.h. die function EEPOnSignal) dann überhaupt funktioniert?


    Gruß Ingo

    Win 7x64 Professional SP1, Intel Core i5-3570, 16GB RAM, nVIDIA GeForce GT630, 2GB, 1920x1200 auf 26" TFT

    Windows Firewall und Defender (MSE)

    EEP6 Patch 1; EEP8.3 Expert; EEP9 Expert Patch 1; EEP10.2 Expert Patch 3 Plugin 1; EEP11.3 Patch 1; EEP12.1 Expert Patch 1; EEP13.2 Patch 2 Plugins 1,2; EEP14.1 Expert Patch 1 Plugin 1

  • ob das Skript (d.h. die function EEPOnSignal) dann überhaupt funktioniert?

    Hi,

    so wie Seppl schreibt funktioniert es :au_1:


    Gruß

    Dieter

    Schalten und walten ist mein Hobby, aber nur in EEP ;) 
    __________________________________________
    EEP alle ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,HomeNos11 DEV...
    Intel I7 4790k 4x 4Ghz,16 GB RAM, NVidia GTX 970 4GB, Direct x V11, Windows 7 64 Bit,
    Laptop Medion Erazer, 8GB RAM, GT 850 von Nvidia, Windows 10 Home 64bit

  • Hallo,

    da ich Host für das abgewöhnen des Rauchens der Loks ein externes Script geschrieben habe, welches er inzwischen erfolgreich eingebunden hat möchte ich Euch das nicht vorenthalten.

    Rauchkontrolle.zip

    Dieses kleine Script muss bitte in den Ordner EEP<eure Version>\Lua entpackt werden.

    in Zeile 4 müsst Ihr bitte die von Euch gewünschten Züge der Reihe nach eintragen. Ich habe 2 Beispielzüge eingetragen, die Ihr aber überschreiben könnt.

    Wichtig ist:

    Zugname immer zwischen "" und jeweils ein Komma zwischen den einzelnen Namen.

    Zugliste = {"#DB 93 737" , "#DR 78-254"}

    In Zeile 15 kann die Verzögerungszeit nach dem Anhalten des Zugs bis zum Abschalten des Dampfs verändert werden.

    Vorgegeben ist da der Wert 100, welcher 20 Sekunden entspricht.

    Zur Bearbeitung empfehle ich Notepad++, welches als Freeware erhältlich ist.

    Bitte beachtet, dass nach jeder Änderung das Script gespeichert werden muss und in EEP im Lua-Editor die Schaltfläche Script neu laden angeklickt werden muss um die Änderungen zu übernehmen.

    Im Lua Script der Anlage muss nun die Einbindung des Scripts vorgenommen werden.

    Dazu bitte ziemlich oben, aber nicht in der EEPMain() die Zeile

    require("\\Rauchkontrolle")

    einfügen und innerhalb der EEPMain() die Zeile

    dampfen()

    eintragen.

    Nun das Script neu laden und der Dampf bei den in der Liste eingetragenen Züge wird nach jeweils 20 Sekunden abgeschaltet (Voreinstellung).

    Sobald die Züge wieder anfahren, oder wenn Sie die eingestellte Verzögerungszeit nicht erreichen bleibt der Dampf eingeschaltet.


    Viel Spaß damit


    Gruß

    Dieter

    Schalten und walten ist mein Hobby, aber nur in EEP ;) 
    __________________________________________
    EEP alle ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,HomeNos11 DEV...
    Intel I7 4790k 4x 4Ghz,16 GB RAM, NVidia GTX 970 4GB, Direct x V11, Windows 7 64 Bit,
    Laptop Medion Erazer, 8GB RAM, GT 850 von Nvidia, Windows 10 Home 64bit

  • Edit: Ich hatte mir nur den alten Stand angeschaut, siehe unten.


    Nur damit es nicht zu Verwirrungen kommt:

    In Zeile 15 kann die Verzögerungszeit nach dem Anhalten des Zugs bis zum Abschalten des Dampfs verändert werden.

    Vorgegeben ist da der Wert 100, welcher 20 Sekunden entspricht.


    Der Dampf wird nicht 20 Sekunden nach dem Anhalten ausgeschaltet. Sondern alle 20 Sekunden wird geprüft, ob der Zug mittlerweile steht. Dabei kann es auch sein, dass der Zug erst eine Sekunde vorher angehalten hat.


    Viele Grüße

    Benny

  • Der Dampf wird nicht 20 Sekunden nach dem Anhalten ausgeschaltet. Sondern alle 20 Sekunden wird geprüft, ob der Zug mittlerweile steht. Dabei kann es auch sein, dass der Zug erst eine Sekunde vorher angehalten hat.

    Hallo Benny,
    da bist Du sicher dem Quellcode weiter oben aufgesessen. Da hatte ich das auch drunter geschrieben, dass es nicht die 20 Sekunden sind...
    In der externen Version, die ich in Teilen hier noch mal zeige...

    ... wird die Funktion dampfen() in der EEPMain() 5x/sek aufgerufen.

    Ab Zeile 13 wird geprüft ob der / die Züge aus der Liste stehen (Fahrt == 0).

    Wenn ja wird der zugehörige Zähler erhöht und wenn der größer 100 ist wird der Dampf ausgeschaltet.


    Gruß

    Dieter

    Schalten und walten ist mein Hobby, aber nur in EEP ;) 
    __________________________________________
    EEP alle ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,HomeNos11 DEV...
    Intel I7 4790k 4x 4Ghz,16 GB RAM, NVidia GTX 970 4GB, Direct x V11, Windows 7 64 Bit,
    Laptop Medion Erazer, 8GB RAM, GT 850 von Nvidia, Windows 10 Home 64bit

  • Hallo Dieter,

    da bist Du sicher dem Quellcode weiter oben aufgesessen.

    um ehrlich zu sein, habe ich mir den neuen Code gar nicht angeschaut, weil ich davon ausgegangen bin, dass sich zum alten Code nichts geändert hat (zumindest die Beschreibung klang ähnlich). :ay_1:


    Nichts für ungut, hiermit ziehe ich meinen obigen Beitrag zurück und behaupte das Gegenteil :ba_1:


    Viele Grüße

    Benny