Jump to content

Old Grey

Mitglieder
  • Gesamte Inhalte

    129
  • Benutzer seit

  • Letzter Besuch

Beiträge erstellt von Old Grey

  1. Ich habe das Problem jetzt wie folgt gelöst:

    Ich habe zwei benutzerdefinierte Ereignisse angelegt. Das Erste führt den Befehl table.insert aus und das Zweite den Befehl table.remove mit Übergabe an die Indexvariable aus.

    Jetzt muß ich nur noch an den Übergabeparametern feilen um diese beiden Ereignisse global nutzen zu können.

    Gruß Old Grey

  2. Ich glaube wir reden aneinander vorbei. Ich habe für jeden Bahnhof verschiedene Listen in den alle Objekte der Gleise, für jede mögliche Fahrstraße die Weichen mit Stellung, Gleisbelegung usw.

    Bisher läuft für jedes Gleis ein Timer ab, mit dem die Indexvariable mit der Gleisnummer belegt wird. Ggf. gibt es noch eine Variable für die Ausfahrt. Anschließend wird das Ereignis Fahrstraße schalten aktiviert und alle kollidierenden Fahrstraßen blockiert.

    Läuft nun ein Gleistimer ab und die Fahrstraße ist blockiert wird der Gleistimer solange neu gestartet bis die Fahrstraße geschaltet werden kann. Das ist für mich kein sauberer Programmierstil, da m.E. eine ziemliche Resourcenverschwendung. Ich habe bisher knapp 100 Bahnhofsgleise in mehreren Bahnhöfen.

    Ich möchte wirklich nur bei Ablauf des Gleistimers die Gleisnummer in die Abfahrtabelle schreiben und wenn die Fahrstraßenschaltung wieder freigegeben ist den ersten Wert auslesen und anschließend löschen.

  3. Hallo Goetz,

    ich stelle mir die Sache viel einfacher vor. Ich brauche nur eine Liste mit Zahlen (Gleisnummer) für die Reihenfolge. Alle anderen Werte und Objekte sind in gesonderten Listen gespeichert. Die Gleisnummer ist der Index mit dem ich dann auf die entprechenden Objekt (Fahrstraße schalten, Abfahrt usw.) zugreifen kann.

    Gruß Old Grey

  4. Hallo Thomas,

    ich würde lieber die elegante Variante wählen. Ich bin in einem Phyton Tutorial auf die Listen und deren Verwendung gestoßen. Da brauche ich dann nur die Länge der Liste abfragen und solange die größer 0 ist, arbeite ich die Liste von oben nach unten ab. Unten werden die neuen Anfragen einfach angehängt.

    Bis jetzt muß ich die Gleistimer solange neu starten, bis die Ausfahrt frei ist. Wenn ich Pech habe fährt dann der falsche Zug zuerst. Das würde mit der Liste einfacher und besser gehen. Die Theorie ist mir klar. Doch die Umsetzung mit der graphischen EV bekomme ich nicht hin. Wenn ich mit meinem Python Kurs fertig bin, kann ich das dann vermutlich mit LUA umsetzen. Aber ich will nicht zwei Sachen auf einmal machen.

    Autßerdem würde mich die Umsetzung mit der graphischen EV interessieren.

    Gruß Old Grey

  5. Hallo Leute,

    kann mir denn niemand bezüglich der Listen in der EV einen Rat geben? Ich habe schon das ganze Forum und alle möglichen Videos auf Youtube durchgesehen und nichts passendes gefunden.

    Ich bin der Meinung, daß im Forum jemand geschrieben hat, er würde die Bahnhofsausfahrten über eine Liste steuern. Leider finde ich den Beitrag nicht mehr. Die Suchfunktion war auch keine Hilfe.

    Gruß Old Grey

  6. Hallo,

    bei der Arbeit mit Listen im MBS habe ich ein paar Probleme.

    Wenn in eine Listenvariable anlege und dieser dann Einträge hinzufüge, werde diese automatisch aufsteigend nummieriert. Wenn ich einen Eintrag lösche, wird neu durchnummeriert. Soweit so klar.

    Nun würde ich mir gerne für die Abfahrten aus dem Bahnhof mit einer Liste arbeiten. Die Anfragen sollten dabei natürlich hinten angefügt werden und erledigte Abfahrten oben gelöscht werden. Leider bekomme ich das mit der EV nicht hin. Ich muß für einen neuen Eintrag zwingend einen Index angeben. Den nächsten Eintrag könnte ich natürlich über eine Wiederholung mit einer Zählervariable ermitteln, das wäre aber zusätzlicher Aufwand.

    Problematischer ist es aber mit dem Löschen des obersten Eintrags. Dann hat der erste Eintrag den Index 2 und nicht wie erwartet die 1. Ich gebe zu mit etwas Programmieraufwand lassen sich die Einträge mit einer Wiederholung nach oben schieben. Aber das ist ja nicht Sinn des Typs Liste.

    Bei einem Test hatte mein Index folgende Werte: 0, 1, 2, 4, 5. Die Wiederholung erfaßte aber nur die Werte mit dem Index 1 und 2. Nachdem ich den Index 0 in 3 umbenannt habe, lief die Wiederholung über alle 5 Einträge.

    Wo steckt hier mein Denkfehler????

    _______________

    Nächstes Problem:

    Ich kann in der EV für den Index einer Liste auch einen String (z.B. Lok) eingeben. Mutiert die Liste dann zur Tabelle ? Bei einem Test in der EV konnte ich den Wert aus dem Index "Lok" an eine Variable übergeben. In der Wiederholung wurde dieser Eintrag ingnoriert. Alle vorigen (1-6) wurden verarbeitet.

    Gruß Old Grey

  7. Hallo Goetz,

    ich möchte die Anlage erst einmal mit der EV zum laufen bringen ehe ich an Lua herantaste. So kann ich mir das grundlegende Verständnis für die Funktionsweise der Steuerung erarbeiten. Danach werde ich die Steuerung mit Sicherheit mittels Lua verfeinern. Aber an die Tatsache, daß Variablen nicht mehr fest deklariert werden können muß ich mich noch gewöhnen.

    Gruß Old Grey

  8. Hallo,

    beim Erreichen des Bremskontaktes auf dem Haltegleis schaltet sich der Antrieb einer Lok über die EV ab. Jetzt möchte ich eine bestimmte Zeit vor der Abfahrt den Antrieb der Lok (wechselnd) wieder einschalten. Ich finde aber in der EV keine Möglichkeit dazu. Ich kann nur eine bestimmte Lok auswählen. Ich weiß jedoch nicht welche Lok zum Ereigniszeitpunkt auf dem Gleis stehen wird.

    Ich weiß, daß ich den Antrieb beim Einstellen der Geschwindigkeit mit Einschalten kann, jedoch muß eine Dampflok vor der Abfahrt erst einmal vorgeheizt werden. Ich könnte natürlich die Geschwindigkeit erst auf 1 km/h mit Einschalten des Antriebs stellen und im nächsten Befehl die Geschwindigkeit wieder auf 0 setzen und den Antrieb eingeschaltet lassen. Ich finde diese Lösung nur wenig elegant.

    Gruß Old Grey

  9. Hallo,

    ich habe für meine Züge eine Variable Zug (Liste) angelegt. Diese enthält unter anderem eine weitere Liste mit Wegpunkte. Der Wert bestimmt die auszuwählende Fahrstraße (z.B. Bahnhof). Ein weiterer Wert (zug.5) enthält den Zähler für den Index der Wegpunkte.

    Die Variable Zug sieht zur Zeit so aus:

    variable.JPG.34e92c818edf7f9025decdd2264d2cb6.JPG

    Der Gleiskontakt der die Fahrstraße anfordern soll enthält die Variable Ziel. Normalerweise würde ich den Wert wie folgt zuweisen:

        iZiel = aZug(2,aZug(5))   { iZiel = Integer, aZug = Array(x,y) }

    Ich habe jetzt schon 30 Minunten erfolglos versucht dies mit der EV hinzubekommen.

    Ich könnte einen guten Rat gebrauchen.

    Gruß Old Grey

  10. vor 3 Minuten schrieb Goetz:

    Du musst bitte zwei Faktoren einbeziehen. Die Geschwindigkeit und die Bremskraft.

    Je höher die Bremskraft, desto höher darf auch die Geschwindigkeit bei der Annäherung sein.

    Wenn die Bremskraft auf 27,8 steht, dann kannst du auch einen 300 km/h schnellen Zug auf dem Kontakt stoppen. Aber 310 km/h wären zu schnell.

    Hallo Goetz,

    ich habe die Bremskraft auf 2,5 eingestellt um eine halbwegs realistische Darstellung zu haben. In der Realität bremst der ICE auch nicht mit fast 3 g. Ich bin noch auf der Suche nach den realen Bremswerte der verschiedenen Zuggattungen.

    Ich hatte gehofft, die Verwendung mit unterschiedlichen Bremswerten zu vereinfachen. Jetzt muß ich mir eine neue Variante einfallen lassen. Ich liebe die Herausforderung.

    Gruß Old  Grey

  11. Hallo Neo,

    Du hattest bestimmt irgendwo einen Hinweis darauf, den ich aber nicht gelesen habe. Im Vertrauen aud die Kontakt habe ich schon alle Vorkontakte gelöscht. Muß ich jetzt wohl neu anlegen. So ist das Leben.

    Gruß Old Grey

  12. @streit_ross:

    ich kenne mich ziemlich gut mit PC's aus. Ich gehöre zu der Generation, die ihre Rechner noch selbst zusammengebaut habe. Leider finde ich nicht für jedes Problem eine Lösung. Ich muß nur den finden, der die Lösung schon kennt.

    Beide Karten funktionieren laut Systemsteuerung einwandfrei. Da die Radeon beim Remotezugriff mitarbeitet und im nativen Zugriff die Arbeit verweigert, tippe ich im Moment auf ein Problem mit dem Display Treiber. Aber damit werde ich mich frühestens morgen nach der Arbeit beschäftigen. Jetzt ist Schicht im Schacht.

    @Thomas1962:

    Es gibt keine falsche Graphikkarte. Beide müssen für ein optimales Ergebnis zusammenarbeiten.

    Gruß Old Grey

  13. vor 3 Stunden schrieb Goetz:

    Ich glaube, dass dir Intel Treiber nicht weiterhelfen, wenn es um die Radeon Grafikkarte (im einen) und die NVidia Grafikkarte (im anderen Notebook) geht.

    Aber du gibst zu wenig über deine Modelle und ihre genaue Bestückung preis, um dir wirklich weiterzuhelfen. 

    Hallo Goetz,

    bei dem Notebook mit der Radeon Grafikkarte handelt es sich um ein Toshiba Satellite P50t-B-10T.

    CPU: i7-4710HQ

    GPU0: Intel HD Graphics 4600 - Treiber Intel 20.19.15.5070 vom 27.12.2018

    GPU1: AMD Radeon R9 M200X Series - Software AMD Adrenalin 20.9.1

    Auf das andere Notebook kann ich erst wieder in 10 Tagen zugreifen.

    Das Problem ist, das mir der Menupunkt umschaltbare Grafiken in der AMD-Software nicht angezeigt wird. In dem Hilfedokument von AMD findet sich folgender Passus:

      Hinweis! Die Funktion „Umschaltbare Grafiken“ kann ggf. nicht verwendet werden, wenn der Grafiktreiber für eine der GPUs fehlt oder nicht installiert ist.

    Update:

    Es wird immer verrückter. Wenn ich per Remote-App vom iMac auf das NB zugreife, arbeitete die Radeon Karte mit. Wenn ich wieder direkt auf dem NB arbeite, geht wieder nur die Intel-Karte.

    Ich hoffe Du kannst mir weiterhelfen.

    Gruß Old Grey

  14. vor einer Stunde schrieb Andy:

    Hallo streit_ross,
    Windows fährt soviele Updates, wo es sich auch um Treiber kümmert. Das Problem war früher schlimmer.

    old-grey, findet sich hier wirklich nix?

    Gruß
      Andy

    Hallo Andy,

    dort finden sich keine Treiber für Notebooks. Der Bereich wurde ausgelagert und es werden keine Treiber mehr aktualisiert und die orignalen Intel-Treiber lassen sich nicht installieren.

    Gruß Old Grey

  15. Hallo,

    leider hat der Tipp von Dad3353 auch nicht weitergeholfen.

    Das Problem ist vermutlich das das Umschalten der Grafikkarten mit der AMD Software nur funktioniert, wenn für die andere Grafikkarte die Originaltreiber installiert sind. Beim mir ist es allerdings der Windowstreiber.

    Die Treiber von Intel kann ich nicht installieren, da ich die Fehlermeldung erhalte, der Computerhersteller habe etwas geändert und ich soll dessen Treiber installieren. Dummerweise handelt es sich um ein 6 Jahre altes Notebook von Toshiba und die haben die Produktion eingestellt und liefern natürlich keine Treiber mehr.

    Gruß Old Grey 

  16. Hallo Streit_ross,

    dummerweise sieht die aktuelle Software mal wieder ganz anders aus als in der Beschreibung. Aber ich bin auf der Suche.

    Ich gehe mal davon aus, daß ich bei meinem anderen Notebook mit einer Nvidia Karte ebenfalls das manuell einstellen muß.

    Bei der Version V5 hat die Intel Graphic immer fps-Raten um die 60 gebracht. Bei V6 bin ich nur noch bei ca. 35 fps.

    Gruß Old Grey

     

  17. Hallo Neo,

    nach mehrmaligen Versuchen hat es endlich funktioniert. Ich benutze Firefox mit dem Plugin noScript. Die MBS-Seite ist zwar als vertrauenswürdig für Scripte freigegeben, aber anscheinend hat das beim Shop nicht funktioniert. Nachdem ich den temporär freigegeben habe hat es endlich funktioniert.

    Ich habe aber noch eine Frage zu einem anderen Thema. Warum nutzt MBS nur die Intelgraphik und nicht die zusätzliche AMD Radeon. Diese ist wesentlich leistungsfähiger. Kann ich die Auswahl der Karte durch einen Kommandozeilenparameter beeinflussen? In den Einstellungen habe ich dazu nichts gefunden.

    Gruß Old Grey

  18. Hallo Neo,

    ich habe nur die Versionen 5.1.0.0 Prof und 6.0.3.0 Test installiert. Wenn ich in der geöffneten V6 (mit Benutzernamen angemeldet) auf Upgrade klicke lande ich erst einmal auf diesem Fenster:

    lizenz.JPG.f05bd6334595f245bee5ce3b657f06e1.JPG

     

    Anschließend kommt der Kaufbildschirm (V5 und V6 im Bundle für 39,90). Dort klicke ich auf  jetzt Kaufen und dann erscheint wie erwartet folgendes Bild:

    kauf2.thumb.JPG.bfb2d2051fc2fa2faadbd8fadcfc2ac4.JPG

    Wenn ich jetzt auf kaufen klicke, dann erscheint wieder der Hinweis auf die veraltete Version. Ich habe definitiv keine Version vor 5.1 installiert.

    Gruß Old Grey

     

     

  19. Hallo,

    ich wollte die frisch heruntergeladene Testversion V6 (6.0.3.0) aus dem Programm auf Professional upgraden um mit meiner Anlage nahtlos weiterzumachen und bin letzlich hier gelandet:

    kauf.JPG.c3d458ce8d1cca97520d2d7ea7e2779c.JPG

    Meine installierte Version V5 ist 5.1.0.0 Prof. und um sicherzugehen (im Downloadportal sieht man leider nicht die Versionsnummer) habe ich mir die aktuelle Version neu heruntergeladen und nochmal installiert. Hat leider auch nicht funktioniert, da ich schon die aktuellste Version hatte.

    Wie kann ich das Problem umgehen? Ich würde meine Anlage lieber gleich mit V6 weiterbauen, da die neuen Funktionen die Programmierung erheblich vereinfachen werden.

    Gruß

    Old Grey

  20. Am 4.10.2020 um 17:26 schrieb Neo:

    Hallo,

    nicht schade, sondern Glückspilz :). Alle Käufer von V5, die das Studio direkt im Programm kaufen, erhalten seit Mitte September V6 kostenlos. Also einfach die neue Testversion herunterladen und los geht's.

    Viele Grüße,

    Neo

    Hallo Neo,

    ich habe vergeblich die Testversion V6 gesucht. Wo finde ich sie genau?

    Gruß

    Old Grey

×
×
  • Neu erstellen...