Jump to content

Empfohlene Beiträge

Geschrieben

Hallo,

auf die gefahr hin ,dass ich daneben liege mit diesem vorschlag aber ich verstehe nicht warum die identifikation beim wagen/schlagwort/kontakt  liegen muss. 
Kontakt  oder was auch immer traegt waggon name in eine tabelle mit ladungskennzeichnung.. dann kannst du ueberall auch ohne kontakt oder event
in der tabelle nachschauen was ein wagen geladen hat oder alle wagen mit einer bestimmten ladung .. usw ... 
Wenn du eine generelle list von waggons pflegst, die nur bestimmte ladung aufnehmen, kannst du noch viel flexiblere steuerungen bauen und am eingang einer verarbeitung (beladung) feststellen ob der waggon ueberhaupt geeignet ist usw.
Gruss
gmd 

Geschrieben
vor 18 Minuten schrieb bigrala:

Vielleicht wäre es ein Gedanke für Neo für die Zukunft, dass man einfach jedem Wagen, der einen GK betritt, auch im Verbund, eine Variable zuweisen und auslesen kann.

Das kann man schon jetzt - sowohl zuweisen wie auch auslesen. Das Zuweisen hat Wolfgang @prinz oben beschrieben.

Geschrieben
vor 4 Minuten schrieb Phrontistes:

Das kann man schon jetzt - sowohl zuweisen wie auch auslesen. Das Zuweisen hat Wolfgang @prinz oben beschrieben.

Ja sicher, habe ich soweit auch verstanden.
Mein Gedanke ging dahin, dass man die Wagen auch generell einzeln ansprechen kann, nicht nur im Verbund.
Bei Personenzügen hat ein Zug z.B. 2 von 10 Wagen als Kurswagen, die in irgendeinem Bhf abgekoppelt und an einen anderen Zug angekoppelt werden sollen.
Wenn ich einem kompletten Verbund eine Zielkennung gebe, dann würden die Kurswagen ebenfalls überschrieben  oder umgekehrt.

Geschrieben (bearbeitet)

Hallo @bigrala

vor 37 Minuten schrieb bigrala:

dass man einfach jedem Wagen, der einen GK betritt, auch im Verbund, eine Variable zuweisen und auslesen kann

scheitert zumindest bislang daran, dass ein Zug nicht Waggon für Waggon über einen Kontakt fährt. Für den Kontakt besteht der ganze Zug nur aus drei Punkten. Spitze, Mitte und Schluss. Was sich zwischen diesen drei Punkten alles befindet, kann der Kontakt nicht "sehen". Das siehst nur du als Beobachter. Das Programm selbst arbeitet anders, als es sich dem User optisch darstellt.

Dein Gedanke ist nicht neu. Und nachvollziehbar ist er auch. Aber er passt leider nicht ins bisherige System. 

Viele Grüße
Götz

P.S.: Du kannst jedem Waggon im Zug eine eigene Variable geben. Und du kannst sie auch alle einzeln auslesen.
Denn der ganze Zug steht dir als Liste zur Verfügung.
Du kannst nur nicht den Kontakt nutzen, um die Waggons einzeln anzusprechen. 

Bearbeitet von Goetz
Geschrieben
vor 7 Minuten schrieb gmd:

ich verstehe nicht warum

Weil die meisten hier nicht in der Lage sind, auf Deinem Niveau abstrakt zu denken und weil sie nicht die Vorerfahrungen haben, mit der Schnittstelle umzugehen.

Geschrieben (bearbeitet)
vor 23 Minuten schrieb bigrala:

Wenn ich einem kompletten Verbund eine Zielkennung gebe, dann würden die Kurswagen ebenfalls überschrieben  oder umgekehrt.

Jetzt beißt sich Deine Logik in den Schwanz. Du musst den Kurswagen - und nur diesen - gezielt einmalig das Schlagwort "Kurswagen" o.ä. geben und dann ist gut. Wenn Du nicht weißt, wer Kurswagen ist und wer nicht, dann würde es Dir auch nichts nutzen, Wagen im Verbund einzeln ansprechen zu können.

Und beim Auslesen kann man die Position(en) des (der) Kurswagen durchaus auch jetzt schon finden, allerdings nur mit Lua.

Nachtrag um genau zu sein: Finden kann man die Wagen sogar ohne Lua. Nur kann man die Positionen ohne Hilfsvariable nicht auswerten (z.B. in eine Liste schreiben).

Bearbeitet von Phrontistes
Nachtrag
Geschrieben

Vielleicht zum Thema noch einmal ein Beispiel:

Ziel ist es, alle Waggons eines Zuges zu bearbeiten (z.B. Variable setzen / lesen). Die EV-Funktion "Für alle Fahrzeuge in einem Zug/Fahrzeugverbund" liefern eine geordnete Liste aller Waggons. Das erste Element ist immer das erste Fahrzeug, das einen Gleiskontakt betritt (Lok oder letzter Waggon, wenn Zugverbund geschoben wird). Damit sollte man eigentlich verschiedene Probleme lösen.

Versuchsaufbau:

Mein Testzug besteht aus einer Lok und vier Waggons. Sobald das erste Element des Zugverbundes den Gleiskontakt rechts betritt, soll eine Liste im Protokoll ausgegeben werden.

Waggonkennzeichnen4.jpg.24f964162395c7af44136b1dc661e4a6.jpg

Zuerst wird die Text-Variable der Lok ausgegeben werden. Darin ist zur Verdeutlichung die Situation beschrieben. Dann wird für jedes Element der Liste die lfd. Nummer, der Fahrzeugname und in eckigen Klammern dessen Ausrichtung im Zug ausgegeben.

print (vehicle.variables["Text"])
local t, t2 = layout:getVehicleGroup(vehicle)
for i, Wdh in ipairs(t) do
  local Ori = t2[i]
  print (i .. "->" .. Wdh.name .. "[" .. Ori .. "]")
end          

Dies ergibt folgendes Protokoll (Sorry, beim letzten Durchlauf war die Lok in der Mitte o.O. Vergessen die Textvariable zu ändern):

Waggonkennzeichnen3.thumb.jpg.657a2feb96d8438f7110a89416f9e0a6.jpg

Schließt man bei der Wiederholung die Lok aus (nur ohne Antrieb), stehen die Waggons in der Reihenfolge, wie sie über den Gleiskontakt laufen.

Viele Grüße,
    Wolfgang

 

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen.

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...