Lua-Struktur

!!! 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.
  • Glückauf zusammen,


    Da ich kein LUA-Kenner bin, habe ich eine Frage. Ist es sinnvoll oder sogar Voraussetzung Fahrstrasssen in die EEP-Main zu schreiben? In meiner aktuellen Anlage sind z.zt. ca. 220 Fahrstrasseneinträge nur zur Blockstellensicherung eingetragen. Ab und zu kommt es vor, dass ein Zug vor einem Signal stehen bleibt und natürlich alle nachfolgenden Züge blockiert. Ich kann mir vorstellen, dass resourcenschonendere Methoden möglich sind und so Fehler eliminiert werden können.


    Gruß

    Jörg

    AMD FX 8-Core 8350, 4 MHz; Sabertooth 990FX Rev 2.0: WIN10 pro 64; 16GB RAM, Nvidia GeForce GTX 1050Ti, 2xSSD120 GB,1xSSD250GB, Monitor1 27", Monitor2 24" EEP6, ab EEP7 alle Expert Versionen, EEP14 Expert, Modellkatalog, Modell-Explorer.
    Der Mensch kann alles tun was er will, aber er kann nicht alles wollen, was er tut.

  • Hallo Jörg,

    ich bin zwar auch kein LUA-Fachmann, aber ich denke in die Main würde ich fast nichts schreiben.

    Habe keine Erfahrung mit den EEP-eigenen Fahrstraßen. Meine Fahrstraßen durch den Bahnhof schreibe ich selbst in Tabellen, die von meinen entsprechenden Funktionen abgearbeitet werden.

    Aber vielleicht liest ja doch noch einer von den LUA-Experten mit und hat eine fundierte Antwort für Dich.

    Viele Grüße
    Berthold


    Lenovo LegionY720 i7 2,8GHz, 16GB 64bit, NVIDIA GeForce GTX 1060 -

    EEP14.1 Exp (64) P2 U1, PlanEx 3.1, SpDrS60 mit Ergänzungen, Hugo, Modellkatalog, Modellkonverter

  • Hallo joke1


    Hier habe ich dir mal eine Anlage mit einem Skript, dass du als Beispiel nehmen kannst wie sowas funktionieren kann mit nur einer Aufgabe in der EEPMain.

    Da wird durch eine Aufgabe jede Fahrstrasse geschalten und du sparst dir so deinen 220 Einträge in der EEPMain.


    Hier der Link:


    Gruß

    Danny

    Intel Core i7-7700K @ 4,20 GHz * Win 10 Pro - 64 bit * 16 GB RAM DDR4-3000 * AORUS GeForce® GTX 1060 Xtreme Edition 6G 9Gbps * 256 GB SSD * 2 TB HDD * BeQuiet Dark Power Pro 850W * BeQuiet Silent Loop 280x280 Wasserkühlung


    EEP 13 Expert + PlugIn 1 und 2, EEP2.43(wird nicht benutzt)

    Home-Nostruktor 13.0 zu EEP13, EEP-ModellKatalog, Anlagenverbinder 6.0.2

  • Die Funktion EEPMain() ist für alles notwendig, das immer wieder getan werden soll.

    Und nur für solche Aktionen.


    Wenn ich ständig prüfen will, ob ein Weg frei ist, dann muss ich das in der EEPMain() machen. Weil nur diese Funktion selbständig immer wieder ausgeführt wird. (Angestoßen durch EEP, fünfmal je Sekunde.)


    Wenn ich nur bei einem bestimmten Anlass einmal etwas tun will, dann gehört das nicht in die EEPMain().


    Und wenn ich nach einem bestimmten Anlass etwas immer wieder tun will, bis ein zweiter Anlass bedeutet, dass die Aktion erledigt ist, dann muss der erste Anlass eine Variable auf true setzen und der zweite Anlass dieselbe Variable auf false. In die EEPMain() gehört dann eine Prüfung dieser Variablen. Und die Aktion wird ebenfalls in der EEPMain() eingetragen. Und zwar hinter die Prüfung der Variablen:

    Wenn die Bedingung wahr ist, dann mach es.


    Diese logischen Zusammenhänge must du durchschauen, joke1

    Das ist die Grundlage für alles, was du in EEP mit Lua machst.



    Was bedeutet das alles für deine Fahrstraße?

    Einmal schalten reicht nicht. Denn sie könnte besetzt sein und es gäbe anschießend keinen zweiten Versuch.

    Ständig schalten ist auch blöd. Wenn sie geschaltet ist, dann muss man es nicht ständig weiter versuchen.


    Also:

    Zug setzt eine Anforderung auf true.


    In der EEPMain() steht


    LUA Source Code
    1. if Anforderung then
    2. EEPSetSignal( Startsignal , Fahrstrasse )
    3. end

    Und sobald die Fahrstraße gestellt wurde, muss etwas die Anforderung auf false schalten.

    you don't believe we're on the eve of destruction

    - Barry McGuire -

    The post was edited 1 time, last by Goetz ().

  • Hallo Goetz,

    dann liege ich ja, wenn ich dich richtig verstehe, mit meinem Script doch gar nicht ganz falsch


    ANFORDERUNG per KP DAUERÜBERPRÜFUNG OB FS_272 MÖGLICH

    if EEPLoadData(272) then EEPSetSignal(4272,2) end

    abmelden per KP (false)




    Gruß

    Jörg

    AMD FX 8-Core 8350, 4 MHz; Sabertooth 990FX Rev 2.0: WIN10 pro 64; 16GB RAM, Nvidia GeForce GTX 1050Ti, 2xSSD120 GB,1xSSD250GB, Monitor1 27", Monitor2 24" EEP6, ab EEP7 alle Expert Versionen, EEP14 Expert, Modellkatalog, Modell-Explorer.
    Der Mensch kann alles tun was er will, aber er kann nicht alles wollen, was er tut.

  • hier stand ein kapitaler Denkfehler ....

    Samsung Series 9 Laptop / Lenovo Z50 - 70 Laptop
    Intel i5 1.7 Ghz / Intel i7 2.0 Ghz
    4 Gb Speicher / 8 Gb Speicher
    Intel HD Graphics 4000 / NVIDIA Geforce 840M
    Windows 10 64 /Windows 10 64
    EEP15 / EEP14, EEP15
    AnlagenBau / AnlagenLaufLass

    ________________________________________________________________________

    Wer den Schaden hat braucht für den Schrott nicht zu sorgen (Alte Autofahrerregel)

  • dann liege ich ja, [...] mit meinem Script doch gar nicht ganz falsch

    Ja, wenn du Dieters "mal ganz einfach" Prinzip verwendest, dann ist es richtig, dass die Prüfungen und nachfolgenden Schaltbefehle in der EEPMain() stehen. Das hast du genau richtig verstanden.

  • Hallo

    Danke an alle

    Jörg

    AMD FX 8-Core 8350, 4 MHz; Sabertooth 990FX Rev 2.0: WIN10 pro 64; 16GB RAM, Nvidia GeForce GTX 1050Ti, 2xSSD120 GB,1xSSD250GB, Monitor1 27", Monitor2 24" EEP6, ab EEP7 alle Expert Versionen, EEP14 Expert, Modellkatalog, Modell-Explorer.
    Der Mensch kann alles tun was er will, aber er kann nicht alles wollen, was er tut.

  • Funktionieren tut es, aber ist wohl eine Menge schreib oder kopieren und einfügen Arbeit😉

    Intel Core i7-7700K @ 4,20 GHz * Win 10 Pro - 64 bit * 16 GB RAM DDR4-3000 * AORUS GeForce® GTX 1060 Xtreme Edition 6G 9Gbps * 256 GB SSD * 2 TB HDD * BeQuiet Dark Power Pro 850W * BeQuiet Silent Loop 280x280 Wasserkühlung


    EEP 13 Expert + PlugIn 1 und 2, EEP2.43(wird nicht benutzt)

    Home-Nostruktor 13.0 zu EEP13, EEP-ModellKatalog, Anlagenverbinder 6.0.2

  • Da ich kein LUA-Kenner bin

    joke1 ,

    Hallo Jörg,

    da hast du aber tüchtig untertrieben, ich kann dir sagen, dass du das

    Prinzip "mal was ganz Einfaches", sehr gut umgesetzt hast.

    Sogar hast du mit diesem einfachen Vorgehen die Fahrstrassen-Id für deine

    umfangreiche Anlage, größer 1000 gesetzt, alle Achtung.

    Da du das Prinzip so gut verstanden hast, wäre es folgerichtig, wenn du dir

    die weiteren Lehrvidios ansiehst, z. B. "EEP Fahrstrassen 005 und Lua",

    hier werden die FS per Tabelle verwaltet und auch geschaltet.

    Wenn du möchtest, können wir beide ja gemeinsam das Script entsprechend

    umschreiben, etwa so:


    LUA Source Code
    1. a_FS = {[4272] = 272, [4273] = 273, [4274] = 274, ... [535] = FS_535,... }
    2. -- mit dieser Codestraffung bekommst du mehr Übersicht

    Du siehst, Lua ist im grunde recht einfach zu nutzen, man muß nur wollen.


    Gruß Dieter

    1.MSI 17,3" Intel® i7-8750H 16GB SSD + HDD GeForce® GTX 1060 »GV72 8RE-013DE (00179E-013)

    2. PC:Win10/64, i7-7700K, 4.2 GHz, GPU GTX 1070/8 GB, 16 GB RAM(DDR4), SSD 960 Evo 500GB, Ilyama PL2490
    EEP 6.1 - EEP 15 E


    Ich wünsche mir eine freizügige Script-Sprache und eine leistungsfähige Grafik Engine für EEP.
    Ein Leben ohne EEP ist möglich, aber sinnlos, so ganz sicher bin ich mir nicht mehr.

    "mal was ganz Einfaches"

    Parrys YouTube Videos
    https://www.twitch.tv/parry_36/

    The post was edited 1 time, last by Parry36 ().

  • Glückauf zusammen,

    Hallo Dieter, ich komme gern auf dein Angebot zurück und werde ,sobald ich wieder in Deutschland bin, auf dich zu kommen.

    Zwichenzeitlich werde ich mir ich mir deine Videos anschauen.


    Gruß aus GR

    Jörg

    AMD FX 8-Core 8350, 4 MHz; Sabertooth 990FX Rev 2.0: WIN10 pro 64; 16GB RAM, Nvidia GeForce GTX 1050Ti, 2xSSD120 GB,1xSSD250GB, Monitor1 27", Monitor2 24" EEP6, ab EEP7 alle Expert Versionen, EEP14 Expert, Modellkatalog, Modell-Explorer.
    Der Mensch kann alles tun was er will, aber er kann nicht alles wollen, was er tut.