Lua-Schaltung von Achsenstellungen

!!! 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.
In the case of pictures that are attached to the article, the source must also be stated. This also applies to your own pictures, which were taken by you. Pictures without source information will be deleted!
  • Moin Ich habe eine Problem mit der Schaltung Rollmaterialien - Achsen setzen:

    Ich Habe in einer LUA-Funktion mehrere Achsen eingefügt zB EEPRollingstockSetAxis( "G-W Runge Smr35-Holzkiste 6m", "Ladung", 1) und EEPRollingstockSetAxis( "G-W Ommstu 45.02 A(v8)", "Ladung Kohle", 0) etc

    und das von mehren Zügen (in einer Fuktion). Kommen die Wagen vom Ablaufberg ist die Zusammenstellung der Wagen eines Zuges anders. Jetzt sollen aber nur die Wagen eines Zuges am Bahnsteig die Türen öffnen und nicht alle in der Funktion eingetragenen Wagen auf der gesamten Anlage. Kann man alle Achsen des neuen Zuges ermitteln - und dann nur diese Türen öffnen? Ich habe versucht mit Achsengruppen setzen das Problem zu lösen - klappt aber überhaupt nicht.


    Liebe Grüße

    Onkelbuh

    CPU: I5 4690, 24GB RAM, Grafik GTX970, Windows 10 EEP 16 Plugin 1,2:aa_1:

  • Jetzt sollen aber nur die Wagen eines Zuges am Bahnsteig die Türen öffnen und nicht alle in der Funktion eingetragenen Wagen auf der gesamten Anlage.

    Hallo :)


    vielleicht verstehe ich auch Deine Frage falsch. Aber ich löse das mit Routen. Oder Du könntest einen Fahrzeugfilter verwenden.


    Gruß Ingo

    Threema - Sicherer und privater Messenger

    Meine Threema-ID

    Warum Threema?


    Win 10x64 Professional, Gigabyte B360M AORUS, Intel Core i7-8700K, 32GB RAM, NVIDIA GeForce GTX 1050 Ti 4GB, Philips 273V7QDAB Full HD

    Windows Firewall und Defender
    EEP 15.1 Expert Patch 2, Plugins: 1

    EEP 16.4 Expert, Plugins: 1,2,3,4


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

    EEP6; EEP8-14; EEP 15.1 Expert Patch 2, Plugins: 1

  • Hallo onkelbuh ,


    ich denke du musst einfach mit

    EEPGetRollingstockItemName()

    die Namen der Fahrzeuge des betreffenden Zuges in eine Tabelle schreiben und dann mit deiner Funktion für die Ladung nur diese Tabelle abarbeiten.


    Gruß Michael

    35098-katalog-banner-jpg

    Hardwarekonfiguration:
    Laptop: Lenovo IdeaPad L340 4*2,4 GHz, 16GB RAM, Win10 64 bit, EEP 6.1/EEP 17.0 Expert DEV

  • Moin Fried

    ...könntest Du mir das mal an einem Beispiel kurz schreiben. Habe mit einer Tabelle noch nicht gearbeitet.

    EEPGetRollingstockItemName() habe ich auch noch nicht verwendet. Habe Deine Vorschlag wohl verstanden - nur die Umsetzung ist mir noch nicht klar.

    ,

    Danke schon mal im Voraus

    Gruß

    Onkelbuh

    CPU: I5 4690, 24GB RAM, Grafik GTX970, Windows 10 EEP 16 Plugin 1,2:aa_1:

  • Hallo,

    kann sein, dass ich jetzt voll daneben liege. Aber ich habe das bei ähnlichen Anwendungsfällen so gelöst, dass ich die verwendeten Achsstellungen jeweils in einer Achsgruppe gespeichert habe. Über Kontaktpunkte steuere ich dann jeweils die Achsgruppe im Modell an.

    Gruß
    Dieter

    -----------------------------------------------------------------------------------

    Sie haben Lua? :ad_1: Ist das ansteckend?

    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, 32 GB RAM, NVidia GTX 1080 ti 11GB, Direct x V11, Windows 10 pro 64 Bit,
    Laptop Medion Erazer, 16GB RAM, 500GB SSD, 2 TB HDD, GT 850 von Nvidia, Windows 10 Home 64bit

  • Moin Dieter

    Ich habe mich zum gleichen Systhem wie Du entschieden. Mit LUA ist mir das zu kopliziert. Würde das gerne mal machen - aber dafür reichen meine LUA-Kenntnisse nicht aus.

    Wenn einer hier im Forum mal Lust hat, das an einem einfachen Beispiel zu schildern - wäre ich sehr dankbar.

    Danke an alle für die Antworten

    Liebe Grüße an alle

    Onkelbuh

    CPU: I5 4690, 24GB RAM, Grafik GTX970, Windows 10 EEP 16 Plugin 1,2:aa_1:

  • Ich habe mich zum gleichen Systhem wie Du entschieden.

    Hallo :)


    ich mache das genauso. Wenn das funktioniert und Du nichts vermisst, wüsste ich nicht, warum Du dafür Lua verwenden müsstest.

    Würde das gerne mal machen - aber dafür reichen meine LUA-Kenntnisse nicht aus.

    Dafür gibt es die Funktion EEPRollingstockSetSlot. Ich habe die zwar noch nie benutzt, gehe aber vom Namen und der Beschreibung her davon aus, dass Du damit auch einzelne Rollmaterialien ansprechen kannst. Über KP funktioniert das ja nur für komplette Zugverbände.


    Gruß Ingo

    Threema - Sicherer und privater Messenger

    Meine Threema-ID

    Warum Threema?


    Win 10x64 Professional, Gigabyte B360M AORUS, Intel Core i7-8700K, 32GB RAM, NVIDIA GeForce GTX 1050 Ti 4GB, Philips 273V7QDAB Full HD

    Windows Firewall und Defender
    EEP 15.1 Expert Patch 2, Plugins: 1

    EEP 16.4 Expert, Plugins: 1,2,3,4


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

    EEP6; EEP8-14; EEP 15.1 Expert Patch 2, Plugins: 1

  • Hallo Schlingo

    ....das wäre eine Herausforderung der ich mich gerne stellen möche. Ich probiere in LUA gerne was aus - um das Systhem zu verstehen.


    Liebe Grüße

    CPU: I5 4690, 24GB RAM, Grafik GTX970, Windows 10 EEP 16 Plugin 1,2:aa_1:

  • dass Du damit auch einzelne Rollmaterialien ansprechen kannst. Über KP funktioniert das ja nur für komplette Zugverbände.

    genau das ist der Vorteil oder auch Nachteil, wie man es nimmt. Wenn ich an einem Bahnsteig alle Türen eines Zugs öffnen möchte und habe die korrekte Stellung bei jedem Waggon in der Achsgruppe 1 abgelegt, dann kann ich über einen KP mit einem Rutsch alle Türen öffnen und nach Ablauf einer bestimmten Zeit (vor Abfahrt des Zugs) :bo_1: dann die nächste Achsgruppe aufrufen und alle Türen gehen wieder zu.

    In Lua und mit der o. g. Anweisung wird eine Achsgruppe bei genau einem Rollmaterial angesprochen.

    Bei der Autoverladung von Icke habe ich das aber z.B. benutzt um die Klappen der Autotransportwagen zu bewegen.

    LUA Source Code
    1. function klappen_hoch(zn)
    2. Anhaenger = EEPGetRollingstockItemsCount(zn) -1 -- Anzahl der Anhänger ermitteln
    3. for dl = 0, Anhaenger do -- in einer Schleife prüfen
    4. if string.sub(EEPGetRollingstockItemName(zn, dl), -- wenn der Suchname gefunden wird
    5. 1,string.len(suchname)) == suchname then
    6. wname = EEPGetRollingstockItemName(zn, dl) -- den kompletten Wagenname lesen
    7. EEPRollingstockSetSlot(wname,2) -- Achsgruppe 2 einstellen
    8. end
    9. end
    10. end

    Natürlich wäre das auch mit einem Fahrzeug-Kontakt gegangen, aber in diesem Fall sollte es mit Lua gemacht werden.

    Auf der Anlage lag also ein Sound-KP und die Funktion klappen_hoch wurde da aufgerufen.

    Gruß
    Dieter

    -----------------------------------------------------------------------------------

    Sie haben Lua? :ad_1: Ist das ansteckend?

    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, 32 GB RAM, NVidia GTX 1080 ti 11GB, Direct x V11, Windows 10 pro 64 Bit,
    Laptop Medion Erazer, 16GB RAM, 500GB SSD, 2 TB HDD, GT 850 von Nvidia, Windows 10 Home 64bit

  • Moin Schlingo

    DeineFunktion bezieht sich nur auf einen Wagen. Wenn ich an allen Güterwagen die Türen 2 aufmachen möchte - muß dann wo Anhaenger steht für jeden Güterwagen die gleiche Funktion schreiben oder geht das auch in einer Funktion? Oder lasse ich es besser mit Achseneinstellungen in Gruppe mit KP - wie gehabt

    Deine Funktion werde ich so für einzelne bestimmte Güterwagen verwenden.

    Danke erstmal für die Antwort.


    Liebe Grüße

    CPU: I5 4690, 24GB RAM, Grafik GTX970, Windows 10 EEP 16 Plugin 1,2:aa_1:

  • Moin Schlingo

    ich glaube, dass Ingo schlingo hier keine Funktion gezeigt hat, es sei denn ich habe das übersehen.
    Wenn onkelbuh aber die Funktion aus meinem Beitrag #9 meint, dann meint er auch

    muß dann wo Anhaenger steht für jeden Güterwagen

    das Anhaenger aus der Zeile 2 bzw. 3?

    Nun das ist eine Variable, die nach Abarbeitung der Zeile 2 die Länge des Zugs enthält.

    In Zeile 3 wird nun die Schleife von 0 bis zu dieser Anzahl abgearbeitet und somit jedes Rollmaterial des Zugs dahingehend überprüft ob der Suchname, in diesem Fall suchname = "Laaeks553" im Name vorkommt.

    Ist dies der Fall wird in der Variable wname der komplette Name des Waggons gespeichert und dann in Zeile 7 die Achsgruppe 2 eingestellt.

    Gruß
    Dieter

    -----------------------------------------------------------------------------------

    Sie haben Lua? :ad_1: Ist das ansteckend?

    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, 32 GB RAM, NVidia GTX 1080 ti 11GB, Direct x V11, Windows 10 pro 64 Bit,
    Laptop Medion Erazer, 16GB RAM, 500GB SSD, 2 TB HDD, GT 850 von Nvidia, Windows 10 Home 64bit

  • ich glaube, dass Ingo schlingo hier keine Funktion gezeigt hat, es sei denn ich habe das übersehen.

    Hallo Dieter :)


    doch, habe ich:

    Dafür gibt es die Funktion EEPRollingstockSetSlot.


    DeineFunktion bezieht sich nur auf einen Wagen. Wenn ich an allen Güterwagen die Türen 2 aufmachen möchte - muß dann wo Anhaenger steht für jeden Güterwagen die gleiche Funktion schreiben oder geht das auch in einer Funktion?

    Siehe dazu die Antwort von DH1 . Für den ganzen Zug müsstest Du mit einer Schleife arbeiten, in der Du die einzelnen im Zugverband enthaltenen RM ausliest. Einfacher geht das natürlich mit einem KP.


    Gruß Ingo

    Threema - Sicherer und privater Messenger

    Meine Threema-ID

    Warum Threema?


    Win 10x64 Professional, Gigabyte B360M AORUS, Intel Core i7-8700K, 32GB RAM, NVIDIA GeForce GTX 1050 Ti 4GB, Philips 273V7QDAB Full HD

    Windows Firewall und Defender
    EEP 15.1 Expert Patch 2, Plugins: 1

    EEP 16.4 Expert, Plugins: 1,2,3,4


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

    EEP6; EEP8-14; EEP 15.1 Expert Patch 2, Plugins: 1

  • Moin

    ich Danke erst mal allen - die sich um mein Problem gekümmert haben.

    Habe nun Zeit - alles erstmal umzusetzen


    Liebe Grüße

    Onkelbuh

    Ps.: ich freue mich immer über eure Antworten

    CPU: I5 4690, 24GB RAM, Grafik GTX970, Windows 10 EEP 16 Plugin 1,2:aa_1:

  • Hallo @Alle ( grins, keinen angesprochen),


    Für die Achsensteuerung (über Achsenspeicherplätze) benutze ich nur Lua, da nicht jedes RM (Rollmaterial) im ZV (Zugverband) immer die gleiche Richtung besitzt, selbst der ZV kann eine andere Richtung haben, welche nicht gleich sichtbar ist.... Aber auch hier ist es wichtig, wie speichere die Achsen am RM?! Ihr müsst nur tiefer denken! EEP verlangt es von Euch, ansonsten funktioniert es nur in einer bestimmten "Zeitachse"! Was will ich damit ausdrücken? .....findet es selber raus...! :ae_1: Man kann natürlich (nicht unbedingt dieses Thema gemeint) "0815 Skripte" hier anbieten, aber diese sind nur für ein oder zwei Fälle nutzbar. Ich schreibe nun mal ungern!:ay_1:

    Grundsätzlich ist der Name vom RM interessant, da er sich nicht ändert, außer EGO macht es selber!:an_1: (Um mich zu schützen, diese Aussage bezieht sich zu EEP16.4.)

    GN (Gute Nacht)

    MfG. Jörg
    Ausstattung: Notebook: i7-6700K, 4[8]x4.0 GHz, 32GB RAM DDR4, NVIDIA GTX 980M 8GB, Windows 10, 64-Bit
    Installiert: EEP16.4 mit Plugin1+2+3

    Zusatzprogramme: ResourcenSwitcher2, Anlagenverbinder für EEP16, EEP-Gleisplan (Frank Buchholz)

  • Für jede Fahrtrichtung die richtige Seite Türen öffnen mache ich auch mit Achsengruppen (Gruppe 1 ist zu, 2 links auf und 3 rechts auf) und LUA:

    Viele Grüße

    Carsten


    EEP16.4 (x64), Modellkatalog, Blender 2.79b, HomeNOS 16

    Windows 10, i7-7700HQ 2,8 GHz 8GB, GTX 1050M 4GB

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

  • Moin Carsten

    ... eine super Info -

    nur kannst Du das an einem Beispiel mal genauer beschreiben?

    Ev mit einem Zugnamen. Gilt diese Funktion immer für einen bestimmten Zug - oder muß ich an jedem Haltepunkt die Funktion neu aufrufen.

    Kann man das ev. auch mit EEPRollingstockSetAxis( "G-W Es 027 4", "Ladung_1", 1) gleich verbinden.

    So das an der richtigen Seite alle Türen geöffnet werden?

    Vielleicht ist meine Frage nicht ganz präzise - habe sehr wenig Ahnung von LUA - beschäftige mich erst seit kurzem damit.


    Liebe Grüße

    CPU: I5 4690, 24GB RAM, Grafik GTX970, Windows 10 EEP 16 Plugin 1,2:aa_1:

  • onkelbuh der Zugname des Zuges wird automatisch ermittelt, sobald Du er einen Kontaktpunkt mit LUA Aufruf überfährt.
    Darin steht bei mir je nach Bahnsteigseite einfach nur links() oder rechts() . Du musst halt für jeden Zug vorher bei allen Fahrzeugen die Achsengruppen #1-#3 korrekt setzen.

    Viele Grüße

    Carsten


    EEP16.4 (x64), Modellkatalog, Blender 2.79b, HomeNOS 16

    Windows 10, i7-7700HQ 2,8 GHz 8GB, GTX 1050M 4GB

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

  • Für jede Fahrtrichtung die richtige Seite Türen öffnen mache ich auch mit Achsengruppen (Gruppe 0 ist zu,

    Es gibt nur 16 Speicherplätze, der erste Speicherplatz fängt mit "1"an!


    Man kann natürlich (nicht unbedingt dieses Thema gemeint) "0815 Skripte" hier anbieten, aber diese sind nur für ein oder zwei Fälle nutzbar. Ich schreibe nun mal ungern!

    ...nun doch in diesem Thema gelandet.


    nur kannst Du das an einem Beispiel mal genauer beschreiben?

    ich Habe in einer LUA-Funktion

    EEPGetRollingstockItemName() habe ich auch noch nicht verwendet. Habe Deine Vorschlag wohl verstanden - nur die Umsetzung ist mir noch nicht klar.

    Meiner Meinung nach, hast Du nix verstanden (nicht böse gemeint). Das fängt mit Lua an......!

    MfG. Jörg
    Ausstattung: Notebook: i7-6700K, 4[8]x4.0 GHz, 32GB RAM DDR4, NVIDIA GTX 980M 8GB, Windows 10, 64-Bit
    Installiert: EEP16.4 mit Plugin1+2+3

    Zusatzprogramme: ResourcenSwitcher2, Anlagenverbinder für EEP16, EEP-Gleisplan (Frank Buchholz)

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

  • Ich danke allen nochmal für die viele Hilfe. Habe ja jetzt mächtig was auszuprobieren.

    Die Nachteule Onkelbuh geht jetzt ins Bett


    Liebe Grüße

    CPU: I5 4690, 24GB RAM, Grafik GTX970, Windows 10 EEP 16 Plugin 1,2:aa_1: