Jump to content

fzonk

Mitglieder
  • Gesamte Inhalte

    570
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von fzonk

  1. Da die nächsten Beispiele noch etwas dauern werden, ich brauche da etwas mehr Vorbereitungszeit, wenn es Interesse gibt wie die Steuerung der Uhr aufgebaut ist kann ich dies als Zwischenthema gern mit einschieben. Mein Gedanke ist als nächstes eine Musteranlage mit euch zu bauen. Bei dieser würde ich einige automatische Abläufe (selbständige Gleiszuordnung durch die EV und automatisches Starten der Züge bei freier Strecke) einbauen, bei dieser die Variablen zur Überwachung dienen. Ich hatte eine solche Anlage schon einmal im Forum vorgestellt. So ähnlich würde ich noch einmal eine Anlage Bauen, diesmal aber Schritt für Schritt mit euch gemeinsam und würde versuchen jeden einzelnen Schritt zu erklären. Damit ihr die Steuerung vielleicht auf eure Anlagen übertragen könnt. Ich habe die Anlage noch mal mit angehangen. Sie ist ein „geschlossenes System“, soll heißen alles funktioniert vollautomatisch und man kann nicht ohne weiteres etwas ändern, aber dazu später mehr. Einfach nur mal anschauen, nicht wundern, sie ist auf vierfache Geschwindigkeit gestellt, einfach damit man schneller die Züge fahren sieht. Gruß Frank Beispielanlage.mbp
  2. Hallo an Alle, da es noch etwas dauert bis ich die nächsten Anlagen und Beschreibungen fertig habe und vorstelle habe ich jetzt erst mal ein kleines „Spielzeug“ für euch. Es passt ganz gut in das Thema Variablen, da es genau damit gesteuert wird. Ja es ist eine Stoppuhr, mit dieser könnt ihr die Zeit messen wie lang ihr jeden Tag an euren Anlagen baut oder auch gesamt für eine Anlage braucht. Sie funktioniert aber nur mit der Geschwindigkeit, wie ihr das MBS laufen lasst. Wenn ihr auf „Pause“ geht bleibt die Uhr auch stehen, wenn ihr auf „vierfache Geschwindigkeit“ geht läuft die Uhr dementsprechend schneller. Die Funktion ist glaube ich selbst erklärend, mit dem grünen Schalter könnt ihr die Uhr starten oder stoppen. Mit dem roten Schalter wird die Uhr wieder auf 0:00:00:00 gesetzt. Viel Spaß damit… Gruß Frank Stoppuhr.mbp
  3. Hallo @metallix das was ich hier erlkäre wird auch weiterhin Bestand haben, so wie es schon in V3 war, in V4 ist und in V5 sein wird. Den Teil, der sich ändern wird werde ich auch nicht mehr hier mit aufnehmen. Gruß Frank
  4. Hallo @streit_ross die Frage ist nicht ganz einfach zu beantworten. Zum Thema Objektvariablen und der Tipparbeit hast du ja schon selber beantwortet, aber dieses Thema will ich ja auch vorerst außen vor lassen. Wenn du bei Anlagen automatische und nicht lineare Abläufe haben willst wirst du nur schwer an Variablen vorbeikommen, bei den bis jetzt vorgestellten Beispielanlagen dienen die Variablen als Überwachungssystem. Als Beispiel nehme ich mal dein gemeinschaftliches Projekt mit Andy. Dort wurde die Steuerung über die Gleisharfe realisiert, die die Abläufe überwachen und steuern. Durch Nutzung von Variablen (nicht Objektvariablen) hätte man die Steuerung einfache, zuverlässiger und schneller realisieren können. Dazu will ich bei einem der nächsten Themen näher darauf eingehen. Gruß Frank
  5. @BahnLand dies ist ein guter Hinweis, ich werde dies noch nachträglich einfügen @schlagerfuzzi1 ja auch dies geht jetzt schon mit Variablen, dies fällt aber in den Bereich Objektvariablen, welchen ich eigentlich erst einmal außen vor lassen will, da es genau bei diesem Thema mit V5 einschlägige Veränderungen (Verbesserungen) geben wird. Daher gedulde dich bitte noch etwas. Gruß Frank
  6. Vielen Dank für die gefällt mir, das spornt an weiter zu machen @BahnLand Vielen Dank für die Ergänzung, da habe selbst ich gleich noch was gelernt Und schon geht es gleich weiter mit dem Thema Variablen. Wie zum Abschluss des ersten Themas erwähnt kann man mit Variablen auch Gleisabschnitte überwachen. Ausgangspunkt ist wieder die Anlage „Variablen 1-1“, wo ein Fahrzeug ein Gleis betritt und dies in einer Variable erfasst wird. Bei der Anlage „Variablen 1-3“ ist nun das Ziel auch zu erfassen dass wenn ein Fahrzeug ein bestimmtes Gleis (Abschnitt) verlässt die Variable wieder zurückgesetzt (freigegeben) wird. Dazu habe ich den EV Eintrag „Variable plus 1“ einfach umgedreht. Den neuen Eintrag habe ich „Variable minus 1“ genannt. Ich möchte nun wenn ein Fahrzeug das Gleis 07 (rot eingefärbt) verlässt bei der Variable der Wert 1 wieder abgezogen wird. Dabei besteht der Eintrag wie folgt: Ereignis: Zug/Fahrzeug verlässt ein Gleis/eine Straße Fahrzeug: [alle Fahrzeuge] Gleis/Straße: 07 Bedingungen: Keine Einträge an dieser Stelle Aktion: Variable setzen Name: Test1 Wert: -1 (minus Eins) Damit wird mir immer der Wert 1 in der Variable wiedergegeben, wenn sich ein Fahrzeug auf dem Gleis 06 und/oder 07 befindet. Bis an diese Stelle hätte man auch statt einer Variable eine Leuchte/Signal nutzen können, die mit der entsprechenden Farbe mir signalisiert ob die Gleise belegt oder frei sind. Was eine Leuchte/Signal nicht kann ist die Anzahl der Fahrzeuge wiedergeben. Dazu habe ich die Anlage „Variablen 1-4“ erstellt. Die Steuerung ist identisch mit der Anlage „Variablen 1-3“ ich habe nur den Kreis auseinander gezogen und mit geraden Gleisen aufgefüllt. Des Weiteren habe ich noch mehr Fahrzeuge auf die Anlage gestellt. Nun gibt mir die Variable immer die Anzahl der Fahrzeuge wieder, die sich ab betreten Gleis 06 (gelb) bis zum Verlassen von Gleis 07 (rot) in dem Bereich befinden. Warum es von Interesse sein kann eine genaue Anzahl zu wissen wird in einem zukünftigen Thema Bestandteil sein, was nun aber erst mal dauern wird… Gruß Frank Variablen 1-3.mbp Variablen 1-4.mbp
  7. Hallo an alle Interessierten, es kam das Thema auf, dass man doch etwas detaillierter auf das Thema Variablen eingehen könnte. Daher habe ich mir ein paar Gedanken gemacht, wie man dieses Thema aufbauen könnte. Es gibt hier im Forum schon sehr viele Themen wo es immer wieder um Variablen geht und was man mit ihnen anstellen könnte. Auch in der WIKI gibt es einen Abschnitt der sich damit beschäftigt. Ebenso gibt es von @wopitir sehr schöne Videos bei youtube. Jedoch gibt es einige die mit dem Thema Variablen auf Kriegsfuß stehen. Daher versuche ich das ganze Thema in mehreren Schritten aufzubauen, so dass hoffentlich besser zu verstehen ist für was man Variablen nutzen kann. Ich werde vorerst nicht auf Objektvariablen eingehen, da es mit dem MBS V5 in diesem Bereich viele Änderungen geben wird. Daher würde ich mich erst einmal auf die Globalen Variablen beschränken und ein paar Möglichkeiten aufzeigen für was man sie nutzen kann. Anfangen würde ich damit: Was ist eine Variable? Die Kurzfassung, es handelt sich um eine veränderliche Größe. Zugegeben damit kann man noch nicht viel anfangen, ich persönlich sehe die Variablen als eine Art „Zwischenablage“, in der man Informationen ablegen kann und diese bei Bedarf abrufen kann. Damit erst einmal genug Theorie. Ich möchte euch an ganz einfachen Beispielen aufzeigen was man damit machen kann. Ihr werdet in den nachfolgenden Anlagen in der Ereignisverwaltung (EV) immer einen Ordner „Variablen als Text anzeigen“ finden, alle darin befindlichen Einträge sind zur besseren Visualisierung, oder anders gesagt diese Befehle übertagen die Variablenwerte in ein Beschriftungsfeld auf der Anlage. Dabei ist wahrscheinlich auch schon interessant wie dies funktioniert, dazu weiter unten gleich mehr. Damit gleich zu der ersten angehangen Anlage (Variablen1-1). In dieser Anlage seht ihr die Möglichkeit dass man eine Variable zählen lassen kann. Doch zuerst zu dem Aufbau. Ich habe einen einfachen Kreis aus 12 Gleisen erstellt, damit ihr alles besser nachvollziehen könnt habe ich die Gleise alle durchnummeriert (01-12). Nun möchte ich dass ein Fahrzeug endlos im Kreis fährt und dabei die Runden gezählt werden. Dazu habe ich in der EV als erstes eine Variable erstellt die die Rundenzahlen speichert. Dazu einfach die EV öffnen, unten rechts auf „Aktive Countdowns und Variablen“ gehen, hier seht ihr immer auf der linken Seite alle Countdowns die gerade laufen und auf der rechten Seite habt ihr die Variablenübersicht. Um eine Variable anzulegen einfach auf „Neue Variable hinzufügen“ klicken. Bei Name könnt ihr einen beliebigen eintragen, idealer weiße ohne Leerzeichen und Sonderzeichen (dazu später mehr), in meinem Beispiel habe ich die Variable „Test1“ genannt. Dazu muss immer ein Wert mit vorgegeben werden, für den Anfang empfehle ich den Wert 0. Jetzt habt ihr schon mal eine Variable erstellt, diese kann aber noch nichts und macht auch nichts. Um im weiteren Verlauf zu sehen welchen Wert die Variable hat (man könnte auch immer in der EV nachschauen) lassen wir uns die Variable in einen Beschriftungsfeld anzeigen. Dazu einfach aus dem Onlinekatalog bei Zusätzlich, Beschriftung, das Beschriftungsfeld auf die Anlage ziehen. Um den Wert der Variable, in dem Beschriftungsfeld, wieder zu geben habe ich den weiter oben erwähnten Ordner „Variablen als Text anzeigen“ erstellt. In diesem findet ihr das Ereignis „Test1“. Dabei ist folgendes zu Beachten: Ereignis: Variable wird gesetzt Name: Test1 (oder euren gewählten Namen aus der Liste aussuchen) Wert: >-1 (größer minus Eins (damit werden alle positiven Werte der Variable in dem Beschriftungsfeld wiedergegeben, wenn ihr später auch negative Werte erwartet müsste die Vorgabe dementsprechend angepasst werden)) Bedingungen: An dieser Stelle gibt es keinen Eintrag Aktionen: Beschriftung setzen Beschriftung: Beschriftung Text: $Test1 (das Dollarzeichen stellt den Bezug zu der Variable her, an der Stelle ist es wichtig das der Name der Variable keine Sonderzeichen oder Leerzeichen hat, da sonst die Wiedergabe nicht funktioniert) Bis an diese Stelle kann und macht die Variable immer noch nichts, daher wird es nun Zeit. Ich möchte dass immer wenn das Fahrzeug Gleis 06 (in der Anlage das gelbe Gleis) betritt eine Runde als abgeschlossen zählt und die Rundenzahl in der Variable „Test1“ gespeichert wird. Dazu habe ich den EV Eintrag „Variable plus 1“ erstellt. Ereignis: Zug/Fahrzeug betritt ein Gleis/ eine Straße Fahrzeug: [alle Fahrzeuge] (in diesem Beispiel gibt es nur ein Fahrzeug, ihr könntet auch das Fahrzeug aus der Liste suchen oder später nur ein bestimmtes Fahrzeug definieren) Gleis: 06 Bedingung: An dieser Stelle gibt es keinen Eintrag Aktion: Variable setzen Name: Test1 (oder euer gewählter Name) Wert: +1 (plus Eins (das Plus ist wichtig!) Damit wäre das erste Beispiel auch schon fertig. Wie ihr daran seht kann man Variablen einfach Rechnen lassen. Das Ganze funktioniert mit addieren (+) und subtrahieren (-) ebenso mit multiplizieren (*) und dividieren (/). Wozu man dies einsetzen könnte seht ihr in der zweiten angehangen Anlage (Variablen1-2). Nach dem in der ersten Anlage die Runden gezählt werden möchte ich in der zweiten einen möglichen Nutzen davon beschreiben. Sie ist eine Erweiterung der ersten Anlage und hat nur zwei weitere Einträge in der EV bekommen und einen Kippschalter um das Fahrzeug wieder zu starten. Ich möchte nun dass das Fahrzeug immer nur 5 Runden fährt und wenn diese Rundenzahl erreicht wird auf Gleis 07 (rot gefärbt) gestoppt wird. Dazu habe ich den EV Eintrag „Überprüfen der Rundenzahl und Fahrzeug stoppen“ erstellt. Ereignis: Zug/Fahrzeug betritt ein Gleis/ eine Straße Fahrzeug: [alle Fahrzeuge] (in diesem Beispiel gibt es nur ein Fahrzeug, ihr könntet auch das Fahrzeug aus der Liste suchen oder später nur ein bestimmtes Fahrzeug definieren) Gleis: 07 Bedingung: Variable besitzt den Wert Name: Test1 Wert: 5 (ihr könnt an der Stelle jede beliebige Rundenzahl eintragen) Aktion: Fahrzeuggeschwindigkeit setzen Fahrzeug: [Auslöser 1: Fahrzeug] (nur das Fahrzeug, dass das Gleis 07 betritt bekommt die nachfolgende Geschwindigkeit alle anderen möglichen Fahrzeuge auf der Anlage werden nicht angesprochen, man könnte auch ein bestimmtes Fahrzeug definieren) Gleis/Straße: [alle Gleise/Straßen] (auch an der Stelle könnte man ein bestimmtes Gleis definieren) Geschwindigkeit: 0 Schalter betätigen Schalter: Kippschalter Position: Aus In dem zweiten hinzugefügten EV Eintrag „Fahrzeug starten und Variable auf 0 setzten“ möchte ich die Variable wieder zurück auf 0 setzen, damit die Rundenzählung von vorne beginnen kann und das Fahrzeug erneut starten. Dazu habe ich folgenden Eintrag erstellt: Ereignis: Schalter wird betätigt Schalter: Kippschalter Position: An Bedingungen: An dieser Stelle gibt es keinen Eintrag Aktion: Variable wird gesetzt Name: Test1 Wert: 0 Fahrzeuggeschwindigkeit setzen Fahrzeug: Bahnmeisterei-Draisine Klv 11/12 (oder das Fahrzeug was ihr starten wollt) Gleis: [alle Gleise/Straßen] Geschwindigkeit: 50 (oder eine andere beliebige Geschwindigkeit) Ich denke dies sollte für den Anfang reichen. Nun könnt ihr die beiden Beispiele erst einmal studieren und euch vielleicht an eigenen Anlagen probieren, wo ihr dies einsetzen könnt. Ich hoffe es ist erst einmal ein guter Einstig in das Thema. In weiteren Beispielen würde ich euch dann zeigen wie ihr Gleisabschnitte mit Variablen überwachen lassen könnt und warum dies für eine Steuerung von Anlagen interessant sein könnte. Bitte teilt mir eure Anmerkungen und Kritik mit oder wenn ihr dazu Fragen habt scheut euch nicht diese zu stellen. Gruß Frank Variablen 1-1.mbp Variablen 1-2.mbp
  8. Hallo Hans Ich bin bis vor zwei Jahren die Strecke, die du gerade baust, nahezu täglich mit dem Auto gefahren und da die vier angezeigten Linien nur 3 gemeinsame Haltestellen haben war es nicht so schwer Du hast ja nun schon den Bahnhof mit seinem Gleisvorfeld gebaut, des Weiteren hast du auch schon die Straßenbahnhaltestelle vor dem Bahnhof vorgestellt. Ist es dein Ziel ganz Leipzig nachzubauen? Wäre ein sehr interessantes Projekt, zumal es da bahntechnisch noch einige interessante Stellen gibt, zum Beispiel der Bayrische Bahnhof (Historisch betrachtet) oder auch die Anbindung an den Flughafen mit dem DHL Luftfrachtkreuz und die vorliegenden Güterumschlagplätze. Gruß Frank
  9. Und dabei hatte ich es umgehend geändert Man sollte vielleicht doch nicht über das Handy schreiben, das will immer andere Wörter Gruß Frank
  10. Hallo @Neo danke für deine Antwort. Dann würde ich das Thema Trigger erst einmal außen vor lassen. Man kann mit den Varablen ja auch ganz andere Dinge anstellen. Gruß Frank
  11. Hallo an Alle, @wopitir ich kenne leider nicht alle Videos, vielleicht magst du ja ein paar Links hier einstellen. Soweit ich aus @Neo seinen Andeutungen herausgelesen habe wird die EV ähnlich wie bisher bleiben, nur weiter ausgebaut und ergänzt, daher sehe ich auch jetzt schon einen Sinn mit dem Thema bei ganz klein anzufangen und dann Schritt für Schritt auszubauen, bis V5 dann da ist, dann könnte man bestimmt auch an das jetzige anknüpfen. @Curt84328 auch dies Variablen würde ich mit einfließen lassen, aber dies ist einige Schritte weiter, daher wirst du dich etwas gedulden müssen. Gruß Frank
  12. Hallo Hans, wir befinden uns auf der Jahnallee, in Stadtauswärtiger Richtung. Die Haltestelle ist Waldstraße (Arena) Gruß Frank
  13. Hallo @schlagerfuzzi1 und alle anderen Intarsierten, Grundlegend ist es (mir) möglich einige Beispiele und Erklärungen zu erstellen und ich werde dies auch gern machen. Aber zuerst möchte ich darauf hinweisen dass Variablen keine Allheilmittel sind, auch Variablen benötigen definierte Ereignisse um Aktionen zu erfüllen. Das abschreckende und zugleich schöne an Variablen ist dass sie vielseitig einsetzbar sind. Ich werde versuchen das Thema ganz klein anzufangen und würde dabei darum bitten, dass sobald etwas nicht nachvollziehbar ist mir dies zu schreiben, denn es kann sein dass ich in einer Erklärung etwas überspringe oder zu kompliziert erkläre. Es wird aber immer etwas dauern bis ich ein Thema erstelle, da ich auch noch „nebenbei“ bis zu 60 Stunden pro Woche arbeiten gehe. An der Stelle will ich auch allen Mut zusprechen, ich selbst habe mit Programmierung nichts zu tun, alles was ich im MBS erstell habe ich mir hier angeeignet und gelernt. Vieles einfach nur durch lesen im Forum und weil ich mir Steuerungen von anderen, sehr viel von @BahnLand, angeschaut habe, diese „zerlegt“ habe und dann in eigenen Versuchen nachgebaut habe. Ich würde mich freuen wenn sich auch andere an diesem Thema beteiligen und Erklärungen erstellen. Ihr werdet in kürze das erste Thema und Beispiel von mir zu lesen bekommen, aber wie schon erwähnt muss ich immer etwas Zeit dazu finden. Gruß Frank
  14. Hallo an Alle, wäre es da nicht sinnvoller Anzeigetafeln mit einem schwarzen Hintergrund zu erstellen und dann einfache Beschriftungsfelder daran andocken (oder auch manuell hinschieben) zu lassen. Dann könnte jeder sein beliebiges Ziel anzeigen lassen. Soweit ich es sehe können in den Modellen immer nur vordefinierte Animationen eingebaut werden, was für die meisten nicht unbedingt die gewünschten Ziele anzeigt. Die Tauschtextur wäre zwar auch eine Möglichkeit, aber an der Stelle scheitern schon viele (so wie ich) die sich nicht mit den Modellbauprogrammen oder ähnlicher Software auskennen. @h.w.stein-info Du scheinst dich ja förmlich in meine Heimatstadt verliebt zu haben, ich kenne sogar die Haltestelle. Gruß Frank
  15. Hallo Tec, hier noch mal ein kleines Beispiel. Ich hatte vorhin einen wesentlichen Teil vergessen, macht sich halt doch besser wenn man vorm Rechner sitzt und nicht von unterwegs schreibt. Bei dem Beispiel sollen die farbigen Gleise deine Fahrstrecke sein. Beim betreten des gelben Gleises wird die Variable auf 1 gesetzt, beim Verlassen des roten Gleises wird sie wieder auf 0 gesetzt (die ersten beiden Befehle in der EV). Nun zu der Lampe. Die Programmierung in der EV habe ich wie folgt angelegt, damit es funktioniert. Ereignis Variable wird gesetzt Name: Test1 (oder deinen jeweiligen Namen) Wert: >-1 (größer minus Eins, ist wichtig, damit die nachfolgenden Aktionen bei jeder Änderung reagieren) Bedingungen Variable besitzt den Wert Name: Test1 (oder deinen jeweiligen Namen) Wert: 0 (damit unterscheidet die EV nachfolgend ob der Wert richtig oder falsch ist) Aktionen Aktionen für Bedingungen sind erfüllt Schalter betätigen Schalter: Lampe Rot ▀ Grün (oder deinen jeweiligen Namen) Position: An Aktionen für Bedingungen sind NICHT erfüllt Schalter betätigen Schalter: Lampe Rot ▀ Grün (oder deinen jeweiligen Namen) Position: Aus Dies müsstest du für jede Variable machen, die du überwachen willst, einfachster Weg: diesen Eintrag immer wieder Kopieren und nur die Namen austauschen. Ich hoffe dies hilft dir weiter. Gruß Frank Lampe schalten.mbp
  16. Vielleicht stellst du die vorherige Anlage hier ins Forum, dann können alle auf Fehlersuche gehen. Damit kann dir besser geholfen werden, als wenn alle darauf los raten. Gruß Frank
  17. Auch dies geht, bist du vertraut mit Objektvariablen und Trigger-Funktion? Dann brauchst du nur 4 Befehle in der EV für alle Varablen und die dazugehörigen Lampen. Noch einfacher geht es du lässt dir den Variablenwert wiedergeben als Text. Beispiel kann ich dir gern nachliefern, wenn ich wieder daheim an meinem Rechner bin (in ca. 1 Stunde) Gruß Frank
  18. Hallo Tec, probier doch mal in der EV: Variable wird gesetzt Name: Name Wert: 0 wenn erfüllt Signal schaltet Name: =Name deiner Lampe Positio: grün wenn nicht erfüllt gleiches wie vorheriges nur mit rot hoffe es hilft dir weiter Gruß Frank
  19. Hallo Easy, ich würde mich Neo und fmkberlin anschließen, so könnte auch jeder Nutzer selber entscheiden ob er die Fähre für Autos oder Züge nutzen will. Je nach dem kann man dann die separaten Gleise in der Höhe anpassen und so sichtbar oder unsichtbar machen. Gruß Frank
  20. Hallo @Andy Da hast du eine richtig schöne Beschreibung zusammengestellt. In einer etwas einfacheren Form hatte ich auch schon mal eine Musteranlage samt Beschreibung bei „Anleitungen und Tutorials“ vorgestellt. Auch ich arbeite sehr gern mit Schaltern und Signalen, in denen die Abfrage durch einen Countdown hinterlegt ist. Damals habe ich das Ganze noch ohne Objektvariablen bewerkstelligt, inzwischen läuft auch bei mir fast alles nur noch über Objektvariablen. Gruß Frank
  21. Hallo Kutscher, an der Stelle wird es schwierig. So wie ich deine EV gesehen habe bist du noch am lernen und wirst dich wahrscheinlich noch nicht an Variablen getrauen. Bei der Form, wie du programmierst, ist es am besten du schreibst die Befehle für jeden Bus einzeln. Da ich gerade nicht an meinem PC bin kann ich dir frühestens heute Nacht Alternative Wege aufzeigen. Ich würde vorschlagen Probier dich erst mal weiter und stell heute Abend noch mal die aktuelle Anlage hier herein. Ich würde mir dann die EV noch mal anschauen und dir weitere Tipps geben. Gruß Frank
  22. Hallo Kutscher Andy liegt schon vollkommen richtig, nur etwas zu kurz formuliert von ihm Es gibt gleich mehrere Probleme bei der Steuerung. Zum einen Hast du das Ereignis „Stopp 5“. Dieses schließt alle Fahrzeuge ein, die Straße „stop 5“ betreten. Das wiederum bedeutet auch wenn der Bus dies betritt fängt der Countdown zur Weiterfahrt für den Bus an (fährt nach 3 Sekunden mit offenen Türen los). Um dies zu vermeiden kannst du bei dem Ereignis „stop 5“ einfach bei Bedingungen „Fahrzeug steht auf Gleis/Straße“ hinzufügen, bei Fahrzeug den entsprechenden Bus und bei Gleis/Straße „stop 5“ eintragen, zusätzlich bei Negieren ein Häkchen setzten. Damit gilt dieses Ereignis nicht mehr für den entsprechenden Bus, aber für alle anderen Fahrzeuge. Das zweite Problem ist „nur“ eine Kleinigkeit. Die Ereignisse „stop 5 1“, „stop 5“ und „stop 55“ sind an sich soweit in Ordnung, nur solltest du, wie Andy auch richtig erwähnt hat, bei Animation starten, bei Startposition das Start in Aktuell ändern. Beim Öffnen der Türen fällt der „Fehler“ nicht auf, da die Animation ja auch von der „Startposition“ beginnt. Beim Schließen wiederum beginnt die Animation am Endpunkt, wenn da noch Start steht siehst du daher keine Animation, da diese direkt zum geschlossenen Punkt springt. Viel Spaß weiterhin mit deiner Anlage und dem Programmieren der Ereignisse. Wenn du weitere Fragen hast bist du hier gut aufgehoben Gruß Frank
  23. Hallo Hans und alle andren Interessierten an dem Thema, vielen Dank für die „Gefällt mir“ und wenn du/ihr weitere Fragen habt helfe ich gern weiter und/oder baue das Thema gern noch weiter aus. Schritt für Schritt. Ich habe es auch nicht von jetzt auf gleich begriffen und konnte sofort alles (und kann auch noch immer nicht alles), ich habe mich auch immer mit kleinen Schritten weiter in dieses Thema vorgetastet. Für den Anfang sollte das obige Beispiel gut als Einstig geeignet sein. Gruß Frank
  24. Hallo Hans @h.w.stein-info Zu deiner Frage, die Antwort lautet Ja und Nein. Ja man kann eine bestimmte Stellung definieren, aber genau darin liegt das Problem wenn man mit Objektvariablen und Trigger arbeitet. Die Trigger-Funktion ist nicht nur für ein Ereignis, sondern ein Allgemeingültiges (Dazu weiter unten mehr). Auf meiner Anlage möchte ich ja nicht dass die Weiche nur auf eine Position schaltet, sondern auf die individuell gewünschte Stellung. Je nach dem welchen Weg der Zug abfahren soll. Leider kann ich nicht in den Objektvariablen die Stellung hinterlegen und diese auslesen lassen. Das ist mehr oder weniger Absicht. Die Schalter stellen in dem Beispiel nur ein Ereignisauslöser dar, in einer fertigen Anlage gibt es diese Schalter nicht mehr sondern werden durch andere Auslöser ersetzt die dann beispielsweise „Zug betritt Gleis“, „Variable wird gesetzt“ oder auch „Countdown läuft ab“ sind. Um ein besseres Verständnis für diese „Bauweise“ zu bekommen habe ich das Beispiel vom Anfang etwas verkleinert und nur den Part mit dem Zug und der Geschwindigkeit übrig gelassen. Vielleicht versuchst du dich erst einmal daran (für den Fall das ich jetzt zu weit zurück gehe entschuldige bitte). Bei diesem Beispiel gibt es in der EV nur einen Befehl. Ereignis: Schalter wird betätigt Schalter: $_Trigger1._Name Position: Jede Position Bedingung: Variable besitzt den Wert Name: $_Trigger1.Gleis Wert: (kein Eintrag) Negieren: Häkchen setzen Aktion: Fahrzeuggeschwindigkeit setzen Fahrzeug: [alle Fahrzeuge] Gleis/Straße: $_Trigger1.Gleis Geschwindigkeit: $_Trigger1.Speed Dieser Eintrag in der EV ist nun für alle Schalter gültig, die die Objektvariable „Gleis“ beinhalten und sorgt dafür dass der Zug auf dem entsprechenden Gleis die gewünschte Geschwindigkeit bekommt. Das Gleis und die Geschwindigkeit wird nicht mehr in der EV als einzelner Befehl (Eintrag) hinterlegt, was sehr viele Eintragungen in der EV bedeuten würde, sondern werden nun in Objekten (in diesem Beispiel der Schalter) hinterlegt und es gibt nur noch den einen Befehl. Dies macht meiner Meinung nach die EV übersichtlicher. Bei dem Beispiel habe ich zu besseren Darstellung die zusammengehörigen Schalten und Gleise mit derselben Farbe eingefärbt. Die Objektvariablen sind in dem jeweiligen Schalter hinterlegt. Klick einfach einen Schalter an und öffne dann das Objektvariablenfenster (die drei Striche neben dem Verknüpfungs- und Sichtbarkeitssymbol). Dort kannst du sehen welches Gleis (sind Nummeriert) mit welcher Geschwindigkeit angesprochen werden soll, wenn der Schalter betätigt wird. Du kannst gern die Geschwindigkeiten (Speed) in den Schaltern ändern und beim nächsten Doppelklick wird diese an die Lok weiter gegeben. Du kannst auch gern noch mehr Gleise und Schalter auf die Anlage setzten. Dabei ist „nur“ zu beachten das jedes Gleis und jeder Schalter einen einzigartigen Namen haben muss (Namen müssen geändert werden). Wenn du nun einem Schalter ein Gleis zuordnen willst einfach das Objektvariablenfenster des Schalters öffnen und in diesem die zwei Variablen „Gleis“ und „Speed“ anlegen. 1. Anzulegende Variable: Name: Gleis Wert: (Name/Nummer des Gleises was du ansprechen willst) 2. Anzulegende Variable: Name: Speed Wert: (gewünschte Geschwindigkeit) In der EV musst du gar nichts machen, da der vorhandene Befehl die Ereignisse mit verarbeitet. An der Stelle höre ich erst einmal auf, probier dich erst einmal daran. Wenn du möchtest kann ich gern das ganze Thema noch weiter erläutern und was zu beachten ist wenn man nicht mehr mit den Schaltern, sondern mit „Zug betritt Gleis“ oder ähnlichen Ereignissen arbeiten möchtest. Das Thema mit den Weichen würde ich dann ganz weit hinten anstellen, da dies mit der aktuellen Version nur eingeschränkt nutzbar ist. Viel Spaß beim studieren und probieren Gruß Frank Arbeiten mit Objektvariablen Teil 1.mbp
  25. Hallo @Andy ich habe bis jetzt für die Anlage „erst“ zwei Schattenbahnhöfe komplett fertig (incl. Steuerung), diese beiden verwalten die über 100 Züge. Bei der Abfrage der belegten Gleise und Züge habe ich nur eine 1 sekündige Abfrage hinterlegt. Allein diese Steuerung braucht schon so viel Performance das bereits ein ruckeln bei genauen betrachten zu erkennen ist. Des Weiteren habe ich den ersten großen Bahnhof (10 Gleise, beidseitig befahrbar) fertig und sitze an der Steuerung, die Weichenstraße mit 12 Weichen ist die längste „am Stück“ Strecke. Die Objektvariablensteuerung schien mir dabei die einfachste Lösung, aber wie bereits im ersten post beschrieben leider aktuell nicht in einem Befehl umsetzbar. Ich habe da noch andere Ideen zur Steuerung, jedoch bedeuten diese mehr EV Einträge und Zeitaufwand. Na mal sehen wohin mich das Ganze führt. Wahrscheinlich werde ich an der Anlage noch einige Monate sitzen (bisher sind es bereits 3) bis ich sie fertig bekomme. Gruß Frank
×
×
  • Neu erstellen...