Jump to content
CC.SDL

Aufbau einer ersten Anlage mit Hang zur Weiterentwicklung

Recommended Posts

Hallo Claudia

Nicht nur einfacher von der Bedienung in V5 auch viele extra Einträge fallen weg , ich hatte auch den Fehler gemacht mit den Vergleich von V4 und V5 EV .

Durch gute Beispiele von den User kam ich auch ganz schnell weg mit den vergleichen . Auch manche Denkweise vom alten ist überflüssig geworden .

Götz ( Goetz ) hat sehr gute Beispiele hervorgebracht , die für mich auch ganz neu waren . 

Verbesserungen pur !

Viele Grüße

H:xnS

Share this post


Link to post
Share on other sites

@Goetz wo bist du denn?:D

Habt ihr einen Link zu Goetz Ausführungen?

Nein, vergleichen mache ich nicht. Dadurch das die Tutorialanlagen schon älter sind und die EV der V4 und V3 entsprechen bin ich auf diese Kriterien gestoßen.Zwischenzeitlich lade ich die genannten Anlagen nur in die V4. Ich wollte gleich mit der V5 anfangen und gebe mir Zeit zu probieren und zu fragen wenn ich nicht weiterkomme. Ich muss grundsätzlich das arbeiten mit der EV erlernen. Ein komplexes Thema.

Share this post


Link to post
Share on other sites

Na dann fang einfach mal an, vielleicht ganz klein .....ein oval, eine lok ....ein schalter, ein signal

Bringe die lok dazu los zu fahren.....mit dem schalter.....mit dem signal......vorwaerts .......rueckwaerts

Das sollte gelingen ....und dabei kommen bestimmt iden fuer andere variationen.....(bzw du siehst was in anderen demos und moechtest es auch einbauen...)

Und wie gesagt.....seziere bereits imumlauf befindliche demos ....bau sie etwas um

Cheers

Tom

Share this post


Link to post
Share on other sites

Hallo Claudia,

das von @streit_ross hier angeführte Beispiel ist nur eine mögliche Anwendung für das Deaktivieren von Ereignisdefinitionen.  Ich möchte hier noch zwei weitere Beispiele anführen:

  1. Stelle Dir ein Bahnhofsgleis mit einem Ausfahrsignal vor. Wenn das SIgnal geschlossen ist, soll ein sich nähernder Zug zunächst beim Einfahren in ein Bremsgleis verlangsamt und dann bei der Einfahrt in ein Haltegleis angehalten werden. Ist das Signal aber bereits offen, wenn sich der Zug nähert, sollen weder das Brems-Ereignis noch das Anhalte-Ereignis wirksam werden. Man wird also die beiden Ereignisdefinitionen beim Öffnen des Signals deaktivieren und beim Schließen wieder aktivieren. 
     
  2. In einem Bahnhof stehen mehrere Züge, deren Gleise hinter dem Bahnhof in dieselbe Strecke einmünden. Wenn die Strecke bereits durch einen Zug belegt ist, dürfen die Züge im Bahnhof nicht ausfahren. Wird die Strecke nun als "Frei" gemeldet (z.B. über das Setzen einer Belegungsvariable (Lock-Variable)), müssen sich die gegenseitig konkurrierend auf die Ausfahrt wartenden Züge um diese "bewerben" (nur einer darf den Zuschlag bekommen, sonst würde es zu einer Kollision kommen).

    Wenn nun ein im Bahnhof stehender Zug überhaupt nicht ausfahen möchte (weil er noch den Ein- und Ausstieg der Fahrgäste abwartet), darf er auf das Frei-werden der Strecke hinter dem Bahnhof nicht reagieren. Dies kann man auch hier dadurch verhindern, dass für diesen Zug (genauer für dieses Bahnhofsgleis) die Ereignisdefinition(en) für die Bewerbung um die Ausfahrt deaktiviert wird/werden. Erst wenn die geplante Haltezeit des Zuges im Bahnhof abgelaufen ist, darf für diesen die Bewerbung um die Ausfahrt wieder aktiviert werden.

Es gibt nun mehrere Möglichkeiten, die Ausführung aller Aktionen einer Ereignisdefinition im Falle einer möglichen Auslösung zu verhindern. Eine davon ist die hier beschriebene Ereignis- oder Ereignisgruppen-Deaktivierung (in V5 heißen die Ereignisgruppen "Ereignismodule"). Eine andere Möglichkeit besteht darin, anstelle der Deaktivierung am Anfang der Ereignisdefinition (bei Ereignisgruppen/modulen am Anfang jeder enthaltenen Ereignisdefinition) eine Bedingung zu formulieren, und die Ausführung der nachfolgenden Aktionsfolge von der Erfüllung dieser Bedingung abhängig zu machen. Bei den beiden obigen Beispielen sähe das dann so aus:

  1. Bei den Ereignissen "Zug betritt Bremsgleis" und "Zug betritt Haltegleis" am Anfang abfragen, ob das Signal geschlossen ist. Nur wenn diese Bedingung erfüllt ist, die Geschewindigkeitsreduzierung oder das Anhalten durchführen.
     
  2. Wenn das Ereignis "Strecke ist frei" für das betrachtete Bahnofsgleis "abgefangen" wird, zuerst die Bedingung abfragen, ob der dort stehende Zug wirklich "ausfahrbereit" ist. Nur dann mit der mit anderen Zügen konkurrierenden Bewerbung um die Ausfahrt fortfahren.

Die Realisieung der Abläufe mit vorangestellter Bedingung hat gegenüber der Deaktivierung den Vorteil, dass in der Ereignisdefinition selbst der Grund hinterlegt ist, warum die nachfolgende Aktionsfolge durchlaufen werden darf oder nicht. Bei deaktivierten Ereignissen oder Ereignismodulen sieht man diesen Grund an dieser Stelle in der Ereignisverwaltung nicht. Man muss hier die Stellen erst finden, wo die Aktivierung oder Deaktivierung stattfindet, um deren Grund zu erfahren.

Andererseits gibt es sicher auch Anlässe, wo eine Deaktivierung möglicherweise geeigneter erscheint als die Bedingungsabfrage. Man stelle sich vor, dass das Anhalten und Durchfahren von Zügen in einem Bahnhof vollständig automatisiert über die Ereignissteuerung vonstatten geht. Nun möchte aber der Spieler eingreifen und von Hand einige Rangiervorgänge durchführen. Um dies tun zu können, ohne dass es mit der Ereignissteuerung zu Konflikten kommt, muss er zunächst die Einfahr-Möglichkeiten in den Bahnhof unterbinden (die Einfahr-Signale alle schließen, und dann sämtliche Aktionen unterbinden, die im Bahnhof durch beispielsweise die Ereignisse "Zug betritt/verlässt Gleis" ausgelöst werden. Wenn nämlich die von Hand gesteuerte Rangierlok diese Ereignisse alle auslösen und deren AKtionen anstoßen würde, käme die Ereignissteuerung völlig durcheinander.

In diesem Fall ist zu überlegen, ob die Deaktivierung eines kompletten Ereignismoduls, welches die ganze Bahnhofssteuerung enthält, nicht die geeignetere Lösung ist gegenüber der Variante, in allen betroffenen einzelnen Ereignisdefinitionen die Bedingung einzubauen, ob sich der Bahnhof momenten im Automatik- oder Handbetriebs-Modus befindet.

Diese Überlegungen sind übrigens völlig unabhängig davon, ob Du Dich mit der  V4 oder V5 des Modellbahn-Studios beschäftigst.

Viele Grüße
BahnLand

Share this post


Link to post
Share on other sites

Hallo BahnLand,

also wenn ich deine Ausführungen für den ersten Moment verstehe (nach meiner Vorstellung), dann ist das Aktivieren/Deaktivieren auf kleinen Anlagen eigentlich nicht notwendig, wenn ich keine komplexen Abläufe wie rangieren oder verladen einbaue oder auch dann nicht, wenn genug Ausweichmöglichketen vorhanden sind.

Share this post


Link to post
Share on other sites
vor 45 Minuten schrieb CC.SDL:

Habt ihr einen Link zu Goetz Ausführungen?

Klick einfach aufs Profilbild eines Users, Claudia.
Dann siehst du eine Auflistung all seiner Beiträge hier. 

Und mit einem Klick auf den blau hervorgehobenen Namen im Posting klappt es auch.

Nachtrag:
Auf meinem Profilbild siehst du auch, wo ich gerade bin. Ich hocke auf dem Fußboden und spiele :D

Edited by Goetz
Nachtrag

Share this post


Link to post
Share on other sites

Hallo Claudia,

vor 10 Minuten schrieb CC.SDL:

dann ist das Aktivieren/Deaktivieren auf kleinen Anlagen eigentlich nicht notwendig

richtig.

Du findest die Aktiverung/Deaktivierung von Ereignissen vor allem in solchen Anlagen noch gehäuft vor, die bereits in sehr alten Versionen des Modellbahn-Studios bzw. sogar noch unter dem alten 3D-Eisenbahnplaner (dem Vorläufer des Modellbahn-Studios) entstanden sind. Da waren nämlich Bedingungen noch nicht so freizügig einsetzbar.

Viele Grüße
BahnLand

Share this post


Link to post
Share on other sites

@Goetz, ich kann ja dann lange suchen wo du bist, ich kann nicht über den Haufen meiner virtuellen Bücherkiste schauen. Während du schon spielst, baue und bastle und verwerfe, fange neu an usw.

Das alles nur weil mein Bleistift runtergefallen ist. Spaß beiseite, ich bin am probieren mit Variablen, Werte als Zahl, Text usw. Frage, wenn ich wählen kann welchen Wert ich nehme, ob Zahl, Boolescher Wert, Eigenschaft...egal welche Art ich wähle, a) warum so viele Möglichkeiten, wenn b) doch das Ergebnis wohl gleich sein muss, besser gesagt die Aktion die dabei raus kommt muss doch den gleichen Wert haben? Oder denke ich da komplett falsch?

Share this post


Link to post
Share on other sites
vor 11 Minuten schrieb CC.SDL:

a) warum so viele Möglichkeiten

Der Hauptgrund ist, dass Variablen verschiedenen Typs unterschiedlich viel Speicherplatz benötigen. Und ein Programm muss den Platz für dese Daten reservieren. Dabei geht es nicht nur um die Gesamtmenge an Platz, die zur Verfügung steht. (Davon haben wir alle heute reichlich.) Sondern auch darum, das ich den Ort des nächsten Speicherplatzes nur dann bestimmen kann, wenn ich weiß wo der vorherige endet.

Ein weiterer Grund ist der, dass Daten unterschiedlichen Typs verschieden miteinander verbunden werden. Du kannst beispielsweise Zahlen addieren, wohingegen du Texte aneinander reihst. Und die boolschen Werte true und false kannst du mit "and", "or" und weiteren boolschen Operatoren verknüpfen.

Drum brauchst du für unterschiedliche Zwecke auch unterschiedliche Typen.

 

Booleans nimmst du für an und aus, wahr und falsch. Also für Bedingungen. 

Zahlen nimmst du, wenn du sie mathematisch verändern willst.

Texte nimmst du, wenn du sie irgendwo anzeigen willst. Und dann, wenn du Texte geliefert bekommst. Fahrzeugnamen sind zum Beispiel Texte.

Edited by Goetz

Share this post


Link to post
Share on other sites

 Hi Claudia

In V5 werden nun variablen nach typen unterschieden. Wenn du z b.die zahl "1" eintraegst abba dafuer als typ z. b. text waehlst merkt sich die EV die eins als text und nicht als zahl. Wenn du nun mit dieser variablen lediglich weitere aktionen initialisieren moechtest wird das mit beiden versionen funktionieren (initialieren = ein folgendes Modul wird durch die aktion "variable wird gesetzt ausgeloest" wobei es nicht unbedingt auf den inhalt sondern auf das setzten eines inhaltes ankommt).Versuchst du abba eine text variable mit dem inhalt 1 mathematisch zu bearbeiten oda abzufragen bekommst du eine fehlermeldung und deine anlage pausiert. Umgekehrt kann keine zahl variable mit einem texteintrag zu etwas mathematischem fuehren und die EV quitiert dies bei der ersten anfrage an solch eine variable auch wieder mit fehlermeldung und pause.

Fuer alle diese "zwangspausen" ist ein blick in das ereignisprotokol (EP) der erste schritt. Dort wird die entsprechende stelle in der EV rot angezeigt und kann mit doppelklick aktiviert werden, so das die ursachenfoschung sofort beginnen kann.

Cheers

Tom

Edited by metallix

Share this post


Link to post
Share on other sites
vor 26 Minuten schrieb Goetz:

Texte nimmst du, wenn du sie irgendwo anzeigen willst. Und dann, wenn du Texte geliefert bekommst. Fahrzeugnamen sind zum Beispiel Texte.

 

Hi  Goetz

Wenn du mit fahrzeugnamen etwas ausloesen moechtest sind sie keine texte sondern objekte

Cheers

Tom

Share this post


Link to post
Share on other sites

Ich brauche mal wieder eure Hilfe, BITTE!

Nun stehe ich doch etwas überfordert zu der Umsetzung dieses Beitrages, in dem BahnLand mir die Syncronisation von 2 Zügen zeigt, Seite 8, eine zuvor in den Thread. Es geht nicht so wie ich das umsetze. Die Einfahrt und Freigabe des roten/pinken Bereiches.

Ich habe eine Lockvariable erstellt mit dem Zahlenwert 0. So sieht die EV aus für die Freigabe des Signals für die Diesellok 100 aus von Links in den Sperrbereich, und das wäre die Freigabe nach dem Verlassen des Sperrbereiches. Das 3. wäre die Schaltung für den 2.Zug der von rechts in den Sperrbereich dann soll, wenn die andere (V100) ihn verlassen hat.

ev1.gif

ev2.gif

ev3.gif

Share this post


Link to post
Share on other sites

Ereignis de/aktivieren halte ich wichtig für Betriebsarten. Wenn Du also Automatik und manuellen Betrieb hast und willst, dass 'großflächige' Änderungen sich auswirken.
Du kannst auch die ganze EV in einen Ordner (naja, Modul jetzt) packen und ein Schalterevent außerhalb des Ordners legen, der dieses Modul de/aktiviert. Dann kannst Du testen, ohne dass Du Angst haben mußt, das irgendein Schalterchen beim Editieren gedrückt statt gerückt wird. Oder, am Ende alle Schalter in eine bestimmte Stellung bringen vor der Veröffentlichung, ohne dass die EV reagiert etc. Ganz praktisch!

Gruß
  Andy

p.s.: Hoppla, da ist ja noch ein neues Problem. Lass ich erstmal die Jungs mit den besseren Augen checken. Das wird mir alles zu klein o.O

Edited by Andy

Share this post


Link to post
Share on other sites

Also eines möchte ich mal los werden. Ich fand Modelleisenbahnen schon immer chic. Habe die,die es als Hobby haben nie mitleidig belächelt...ach....nur was für Einsame. Welch Wissen und Können sich dahinter verbergen hätte ich nie so einschätzen können. Nun lässt es sich erahnen.

Share this post


Link to post
Share on other sites
vor 40 Minuten schrieb CC.SDL:

Also eines möchte ich mal los werden. Ich fand Modelleisenbahnen schon immer chic. Habe die,die es als Hobby haben nie mitleidig belächelt...ach....nur was für Einsame. Welch Wissen und Können sich dahinter verbergen hätte ich nie so einschätzen können. Nun lässt es sich erahnen.

Schönen Tag

Hobby für Einsame???

Also ich bau seit Anno Domini 1970,( liest sich doch schön wenn mann sagen kann seit dem vorigen Jahrtausend gg) Alle mein Ex Freundinnen und auch meine meine treue Ehefrau, hatten und haben noch immer daran Anteil, Der Trick dabei war der , das ich ihnen gesagt hab, es gibt zwei Möglichkeiten. Ich sitz im Wirtshaus und spiel Karten oder Billlard, was dich sicher auch nicht interessiert , oder ich bau Modelleisenbahn, da bin ich maximal im Keller und du kannst ja jederzeit zum plauschen runterkommen.

Meine Frau hatt ein Händchen fürs Häuschen bauen ( Ja sie malt sogar die Türklinken bronze an) Sohnemann wird aktiviert wenns um schwere Elektronik geht ( klar als Telekomunikatonstechniker) und Töchterchen schraubt mit mir die ganzen Holzsachen zusammen, weils ihr Spas macht mit dem Akkuschrauber zu werken gg.

So hab ich immer jemanden dabei um mich, und alle sind glücklich.

MfG Hans

 

Share this post


Link to post
Share on other sites
vor 2 Minuten schrieb pfjoh:

So hab ich immer jemanden dabei um mich, und alle sind glücklich.

Hallo Hans,

ich habe im Bekanntenkreis auch einen Modellaner. Er hat Frau und Kinder, keiner interessiert sich für sein Hobby. So heißt sein Keller "einsamer Modellbauer sucht...." Er ist mitte 70, ich kann ihm zuschauen, mich erfreuen an den makellosen, 100%ig original getreue Nachbildungen. Und er ist voller Freude mir immer alles genau zu zeigen was er selber baut....Ich finde solche Anlagen einfach nur traumhaft....

Share this post


Link to post
Share on other sites

Hallo Claudia,

vor 9 Stunden schrieb CC.SDL:

Ich brauche mal wieder eure Hilfe, BITTE!

anstatt zu versuchen, Deine in diesem Beitrag gezeigten Ereignisdefinitionen zu interpretieren und zu "flicken", habe ich meine aus V4 stammende  "Demo-Anlage Gleisbelegung" (Content-ID 27ACECCD-2A27-48A9-8B2B-A3765FD14C1F im Online-Katalog) für die V5 mt einer neuen Ereignissteuerung ausgestattet:

593797952_Demo-AnlageGleisbelegungV5.thumb.jpg.42e3536fd55a4a8bf7b2fd1e9a2c204e.jpg

Demo-Anlage Glesibelegung V5 mit Content-ID 3041EF03-5EAF-4C01-BD5B-30BBD9BCF741

Ich habe nämlich festgestellt, dass die in V4 hergestellte Anlage in V5 anstandslos läuft, die automatisch umgesetzte Ereignissteuerung jedoch für ein "Nachvollziehen" der realisierten Funktionalität weniger geeignet ist. Die neue Ereignssteuerung nutzt die Möglichkeiten in V5 dagegen voll aus und ist deshalb gegenüber der übernommenen Ereingnissteuerung aus V5 deutlich verschlankt.

Ich hoffe, dass Du an dem neuen Beispiel die Realisierung der Zug-Synchronisation nachvollziehen kannst.

Der eigentliche Lock-Mechanismus für die gegenseitige Synchronisierung der Züge steckt hierbei in der Ereignisdefinition  "Extern veranlasster Abfahrauftrag" im Ereignismodul "Allgemein". Das Objekt "Zielobjekt" identifiziert hierbei jeweils ein Signal, vor dem ein ZUg steht, der mit anderen Zügen um die Zuteilung der Durchfahrt durch die Engstelle konkurriert.

Die Anlage wird mit dem Schalter rechts gestartet und gestoppt. Nach dem Ausschalten schließen die gerade unterwegs befindlichen Züge allerdings noch zu den Signalen auf.

Viele Grüße
BahnLand

Edited by BahnLand

Share this post


Link to post
Share on other sites
vor 6 Stunden schrieb BahnLand:

anstatt zu versuchen

Habe ich noch gestern zum x-ten Mal versucht und es hinbekommen. Danke und guten morgen @BahnLand, ich habe nach 2 Std. Pause endlich die Logik erlangt um das von dir erste Beispiel auf Seite 8 umzusetzen. Vielleicht sollte ich etwas weniger hibbelig sein und lesen was da steht und dazu den Kopf einschalten und einen Atemzug nach dem anderen machen. Deine Mühe war jetzt auch nicht umsonst. Es werden noch ein paar mehr kommen die den gesamten Thread verschlingen werden.

Ehrlich gesagt,ich frage nach ohne Angst als dämlich da zu stehen. Weil ich finde das man sich nichts dabei vergibt. Ich glaube es sitzen viele so wie ich, die sich aber nicht getrauen zu fragen um nicht als dumm da zu stehen und die den Thread auf gleichen Level wie ich nutzen um den MBS zu verstehen bzw. um einfach zu bauen. Ein Blick auf die Forumübersicht unterstreicht das. Irgendwann steht vielleicht ein Link im WIKI,denn das ersetzt @Neo Schreibarbeit.

Sicher kommt bald das nächste "Logikproblem":D und ich schreie "Hilfe"

Einen guten Tag wünscht

Claudia

 

Share this post


Link to post
Share on other sites
vor 3 Stunden schrieb CC.SDL:

Ehrlich gesagt,ich frage nach ohne Angst als dämlich da zu stehen. Weil ich finde das man sich nichts dabei vergibt. Ich glaube es sitzen viele so wie ich, die sich aber nicht getrauen zu fragen um nicht als dumm da zu stehen und die den Thread auf gleichen Level wie ich nutzen um den MBS zu verstehen bzw. um einfach zu bauen. Ein Blick auf die Forumübersicht unterstreicht das. Irgendwann steht vielleicht ein Link im WIKI,denn das ersetzt @Neo Schreibarbeit.

 

Hallo Claudia,

 

ein weiser Mensch sagte mir einmal, es gibt keine dummen Fragen, sondern nur dumme Antworten.

 

Mein Problem ist, und deshalb warte ich sehnsüchtig auf die finale Version von V5, ich muß die Informationen in der Hand haben, also in Papierform (trotz zweier Monitore). Erst dann leuchtet mir so manche Dinge ein.

 

Gruß,

Michael

Share this post


Link to post
Share on other sites
vor 12 Minuten schrieb m.weber:

Mein Problem ist, und deshalb warte ich sehnsüchtig auf die finale Version von V5, ich muß die Informationen in der Hand haben, also in Papierform (trotz zweier Monitore). Erst dann leuchtet mir so manche Dinge ein.

Hallo Michael,

das ist wohl auch eine Weise entscheidung. Obwohl ich weiß das du ein erhebliches Stück weiter bist im Variablen- und EV jonglieren, kann ich sagen, freu dich auf die V5. Was dort schon jetzt zu erleben ist, ist die Tatsache das es sich leichter anfühlt diese EV zu benutzen. Es ist so übersichtlich, schlank und eindeutig. Im gesamten betrachtet läuft der MBS schon jetzt sehr stabil.

Viele Grüße von mir

Share this post


Link to post
Share on other sites
vor 2 Stunden schrieb CC.SDL:

Hallo Michael,

, freu dich auf die V5. Was dort schon jetzt zu erleben ist, ist die Tatsache das es sich leichter anfühlt diese EV zu benutzen. Es ist so übersichtlich, schlank und eindeutig. 

Viele Grüße von mir

Hallo Claudia,

schlank ja, übersichtlich ok, aber eindeutig? Zumindest für mich nicht :)

 

Gruß,

Michael

 

Übe

Share this post


Link to post
Share on other sites

Hallo Micha,

mit eindeutig bezeichne ich für mich die Definitionen im Umgang/Gebrauch mit den Gleistypen,den Variationen innerhalb der jeweiligen Hersteller, die Sortierung und Zuordnung der Objekte, Materialien und die Feinheiten zum Realen oder Original.

Share this post


Link to post
Share on other sites

Hallo,

ich bin so Stück für Stück auf dem Wege " um zu verstehen". Aber frei definierte Aktionen mit/oder ohne Parameter. Frage, wie werden diese Aktionen aufgebaut? Gibt es Bedingungen um dem MBS zu sagen was ich will, sprich braucht er bestimmte Komandos, oder die  Parameter Werte damit es funktioniert? Wie werden beide angewendet? Und wo ist es sinnvoll? Kann man damit Aktionen/Bedingungen verfeinern oder auch ersparen?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×