Jump to content

Timba

Mitglieder
  • Gesamte Inhalte

    1091
  • Benutzer seit

  • Letzter Besuch

Beiträge erstellt von Timba

  1. vor 2 Minuten schrieb Goetz:

    könntest du einmal zu Beginn als Konstante ablegen, statt es bei jedem Aufruf neu zu berechnen.

    Da hast zu einerseits völlig recht, aber andererseits bewahre ich mir Flexibilität. Die 3536 ist die Länge der Bremsstrecke von auslösendem GK bis zum Haltepunkt vorm Signal. Bei einer Konstante wäre ich dann an diese Länge gebunden, oder müsste mir für jede andere Länge eine neue Konstante anlegen. Dann kann ich sie auch gleich berechnen lassen. Weil sooooo lange braucht die Kiste dafür ja nicht. ;)

    Die 2.25504 ist hingegen tatsächlich eine feste Größe. Aber ob ich die eine Zahl nun als Konstante ablege oder so verwende, wird nichts beschleunigen. Allenfalls würde es für Zweitnutzer übersichtlicher und verständlicher, das ja.

    vor 16 Minuten schrieb Goetz:

    Und ich habe in deiner A Formel aufgeräumt. Wenn du erst eine Wurzel ziehst und dann das Ergebnis wieder quadrierst, machst du unnötig viele Rechenschritte.

    Möglich, und ich will deine arithmetischen Kenntnisse auch gar nicht in Frage stellen, aber wenn ich deine Vorschläge umsetze bekomme ich andere Ergebnisse.

    Meine Formel

    local A = (vehicle.currentSpeed/math.sqrt(2.25504*3563))^2

    liefert mir bei Speed 150 völlig korrekt 2,8 als Verzögerungswert.

    Nach deinem Vorschlag

    Faktor1 = 2.25504
    Faktor2 = 3536
    decel_Faktor = Faktor1 / Faktor2

    bekomme ich als decel_Faktor erstmal 0,000637738 - wenn ich den Wert in deinen Vorschlag

    local A = vehicle.currentSpeed^2 / decel_Faktor

    einbaue und wiederum mit Speed 150 rechnen lasse, liefert mir diese Formel 35280970,63 statt 2,8. Das ist schlicht falsch. Lieber mache ich einen Rechenschritt mehr.

  2. vor 2 Stunden schrieb ralf3:

    und zweiteres sei ein relationales Datenbanksystem, das zwar über Befehle angesprochen werden kann aber nicht wirklich als Programmiersprache gilt.

    Erlaube mir eine kleine Korrektur, @ralf3. SQL ist die Abkürzung für "Structured Query Language" und wie wir wissen, wird "Language" mit "Sprache" übersetzt. SQL bezeichnet somit nicht das Datenbanksystem, sondern die Sprache, mit der Datenbanksysteme dieser Art bearbeitet werden können. Das mag dir eventuell als Erbsenzählerei vorkommen, aber so ist es nun mal richtig. Absolut korrekt ist hingegen die Aussage, dass es keine Programmiersprache ist, sondern es ist "nur" eine Datenbanksprache.

  3. Hallo @Goetz,

    vielen Dank für die Anregung. Inzwischen habe ich mich bereits für die Version entschieden, das Lock erst nach Ausführungsverzögerung des Bremsens anzufordern. Das erschien mir in dem Moment einfacher und weniger aufwendig zu realisieren und nachdem ich es gestern Abend noch eingefügt und getestet habe, gefällt es mir gut und funktioniert tadellos. Der Code dazu sieht dann so aus:

    if not deferredCall then
    
      if vehicle.currentSpeed > 150 then
          local A = (vehicle.currentSpeed/math.sqrt(2.25504*3563))^2
          vehicle.deceleration = A
          vehicle.targetSpeed = 0
          $("LockAnfordern"):invoke(vehicle)
      else
          local T = (3563 * 0.087 - ((vehicle.currentSpeed / 3.6) / 2.8)^2 * 2.8 * 0.5) / (vehicle.currentSpeed / 3.6)
          defer(T, "Verzögerung")
      end
    
    elseif deferredCall == "Verzögerung" then
      vehicle.targetSpeed = 0
      $("LockAnfordern"):invoke(vehicle)
    end

     

  4. vor 15 Minuten schrieb BahnLand:

    Was ist dann Hochdeutsch oder Schriftdeutsch für mich?

    Für einen Schwaben ist Hochdeutsch die erste Fremdsprache. :D Sofern er sie überhaupt jemals erlernt. :D;)

    Ups ... ich hoffe, Schwaben haben Humor. :o

  5.  

    vor 1 Stunde schrieb fzonk:

    Als kleine Anregung, auf meiner Anlage wo Züge mit bis zu 240 km/h unterwegs sind habe ich auch zwangsläufig mir was einfallen lassen müssen dass dies mit dem Bremsen bei unterschiedlichen Geschwindigkeiten gut aussieht. Dazu bremse ich die Züge aber nicht auf null sondern auf 40km/h ab. So habe alle Züge an einen gewissen Punkt alle dieselbe Geschwindigkeit, dieser Punkt ist kurz vor dem Signal und erst da wird geprüft ob das Signal offen oder geschlossen ist und der Zug wird dementsprechend gestoppt oder fährt weiter.

    Ja, diese Variante habe ich in V4 mangels anderer Möglichkeiten ebenfalls genutzt. Allerdings, wenn dann ein Zug mit sagen wir mal nur 90 ankommt, fährt der dann eine ziemliche Strecke gleichförmig mit 40, bevor er dann endgültig hält. Meinem Empfinden nach sieht das auch nicht schön aus. Ich hätte eben gerne eine gleichmäßige Bremse von Anfang bis Ende. Darum habe ich ja für mich den Aufwand betrieben und dieses o.a. Konstrukt entwickelt.

    vor 1 Stunde schrieb Andy:

    Wenn bei mir ein Zug lösfährt, werden alle Weichen und Signale geschaltet, bis zu einem Haltsignal.

    Die Strecke zwischen zwei Bahnhöfen ist sehr lang. Nach deinem System müsste ich im Abfahrbahnhof bereits Einfahrt und Gleis im Zielbahnhof reservieren. Das wäre dann ziemlich lange blockiert. Die Strecke hat je ein Gleis in jede Richtung und so spricht doch nichts dagegen, dass der Zug sich schon auf den Weg macht ohne zu wissen, ob und wann im Zielbahnhof das Haltegleis verfügbar ist. Dafür habe ich mich eingehend mit BahnLands Tutorial über den Lockmechanismus beschäftigt. Das werde ich damit auch hinbekommen. Nur meine etwas "verrückte" Art zu bremsen muss dabei noch gezähmt werden. Aber auch das werde ich lösen. Entweder mit Timer (s.o.) oder indem ich das Lock erst nach Einleitung des Bremsvorgangs anfordere. MBS würde ja auch nur halb so viel Spaß machen wenn jede Lösung sofort auf dem Tisch läge, nicht wahr? ;)

  6. Hallo @fzonk und @BahnLand,

    es handelt sich in diesem Fall um das Einfahrsignal zum Bahnhof, das standardmäßig geschlossen ist. Ab Anforderung des Bahnhofslocks hat der Zug mindestens 7,45 s Zeit, das Lock zu erhalten. Geschieht das in der Zeit, würde das Signal öffnen und der Bremskontakt wäre wirkungslos. Bekommt er das Lock erst nachdem er schon steht, wäre es auch kein Problem, dann fährt er halt wieder an. Das Problem ergibt sich nur, wenn der Zug in der relativ kurzen Zeitspanne von Bremskontakt bis Bremsbeginn das Lock erhält und dadurch das Einfahrsignal geöffnet würde.

  7. vor 16 Minuten schrieb BahnLand:

    Dann bist Du auf der sicheren Seite.

    Bin ich doch nie! :D;)

    Aber im Ernst:

    vor 16 Minuten schrieb BahnLand:

    führe den Bremsbefehl nur unter der Bedingung aus, dass das Signal geschlossen ist.

    Geht nicht so einfach, weil dann mein schönes ausgeklügeltes Konzept im Eimer ist. Es sieht jedenfalls bis jetzt cool aus, solange das Signal nicht zwischendurch öffnet. Die Möglichkeit habe ich zu spät bedacht, was mir aber auch nichts geholfen hätte.

    Als Kompromiss sehe ich jetzt nur die Möglichkeit, statt einem deferredCall die Verzögerung durch einen Timer hervorzurufen, weil den kann man ja abbrechen. Oder?

  8. Hallo,

    vielleicht weiß jemand die Antwort auf meine Frage und erspart mir den Aufwand für eine Versuchsanordnung.

    Ausgangslage: Der Bremskontakt vor einem Signal ist so justiert, dass ein Zug bei 150 kmh exakt davor zum Stehen kommt. Bei höheren Geschwindigekeiten wird der Verzögerungswert erhöht und bei niedrigeren Geschwindigkeiten wird der Zeitpunkt des Bremsbeginns verzögert, sodass in beiden Fällen ebenfalls der Zug exakt vorm Signal steht.

    Wenn nach dem Auslösen des Bremskontakts das Signal öffnet, wird der Zug auf die gewünschte Geschwindigkeit beschleunigt.

    Bei Geschwindigkeiten >=150 sehe ich kein Problem, Bremsen wurde eingeleitet und durch den neuen Befehl revidiert. Was passiert aber, wenn der Zug langsamer ankommt? Der Befehl, Aufschub errechnen ist ausgeführt und der Wert übernommen worden, der Bremsvorgang befindet sich quasi in der Warteschleife, wurde also noch nicht begonnen, in dem Moment kommt der Befehl "beschleunigen". Wird dann der Bremsbefehl ignoriert/überschrieben, oder wird der Zug gleich nachdem er versuchte, zu beschleunigen, direkt wieder abgebremst? Und wenn zweiteres der Fall sein sollte (was ich befürchte), kann man den Bremsbefehl programmtechnisch canceln?

  9. vor 43 Minuten schrieb Eric Danvers:

    English also has such things e.g. "kinda" instead of "kind of"

    Or "gotta". That wasn't what I was referring to. These examples are common knowledge. I rather thought of something like this sentence from the book "The Wake" by Paul Kingsnorth:

    "when i woc in the mergen all was blaec though the night had gan and all wolde be blaec after and for all time."

  10. Eric, "abba" or "oda" and some other words used by Tom is the result when someone writes a word exactly the way he (or she) pronounces it. I have seen it in English books, too, and I'm sure you wouldn't have any problem with that. However, as a non-native speaker of the language it is sometimes hard to make sense of it. On top of that any software trying to translate it will be hopelessly lost.

  11. Am 4.9.2019 um 13:46 schrieb Eric Danvers:

    I have used many ideas from other members of the forum

    Hi Eric,

    it is surprising to me that you were able to take advantage of the many ideas obviously written in German, although you do not speak German. Are you one of the rare cases where people can translate in only one direction? Just curious.

    Regards Timba

  12. vor 10 Stunden schrieb streit_ross:

    Ein Schlagwort als Schalterersatz wäre daher beinahe Gotteslästerung:).

    Unter einem Schlagwort zusammengefasste Schalter sind nichts anderes als die 100 Lampen in einer großen Halle, die mit einem einzigen Schalter geschaltet werden, also auch nur ein Schalter. Das gab's auch vor 100 Jahren schon.

  13. vor 16 Stunden schrieb ralf3:

    Ein Solarpanel als Grundkörper, sprich flacher Quader wäre ja auch schnell erstellt.

    Auch richtig. Das kann sogar ein blutiger Anfänger wie ich.

    beispiel.thumb.jpg.25685c5e005b75b75c66d1292a4d5a99.jpg

  14. vor 1 Stunde schrieb ralf3:

    so ein Schotterwerk braucht halt etwas mehr Strom.

    Stichwort: Strom. Wieso ist eigentlich noch keiner der Modellbauer auf die Idee gekommen, ein Solarpanel anzubieten. (Oder gibt's das doch schon??) So könnte MBS doch auch seinen Beitrag zum Klimaschutz leisten. :D:D;)

  15. Sorry, @streit_ross, wusste ich nicht. Ich habe noch nie nach Plugins gesucht, brauche ja keine. Deswegen schrieb ich ja auch nur, wo ich anfangen würde zu suchen. Da hätte ich mir schön einen Wolf gesucht, wenn ich was gebraucht hätte. :D Aber prima, so bin ich auch wieder ein Stück schlauer. Vielleicht brauch ich's mal später.

×
×
  • Neu erstellen...