Jump to content

Parkplatzsuche


dbahr
 Share

Recommended Posts

Hallo miteinander!
Im Anhang eine Testanlage mit dem Ziel, den ersten freien Parkplatz zu finden. Die Parkplätze 1 bis 5 haben je eine Boolsche Variable "Frei".
In einer Wiederholung frage ich ab, welcher Parkplatz in der Liste "Parkplätze" des Kontaktes "Zufahrt Parkplatz" frei wäre. Irgendwie funktioniert das nicht so - ein Denkfehler
von mir liegt vermutlich vor. Bitte um einen Tipp, wie es richtig sein sollte.
Danke im Voraus und liebe Grüße
Detlef

Parkplatzsuche.mbp

Link to comment
Share on other sites

Hallo @dbahr,

du musst die Schleife auch verlassen, wenn du einen freien Parkplatz gefunden hast. 

Dein Programm prüft alle freien Plätze, aber sucht trotzdem weiter.  

327929616_Screenshot2022-10-14182944.thumb.jpg.d86170a9a9d40fea9ae5ddd34edbf29f.jpg

Ein möglicher Lösungsvorschlag: 

Ein kleiner Eintrag im Skript.

Screenshot 2022-10-14 183153.jpg612924441_Screenshot2022-10-14183222.jpg.2dfdfed0344d684b8e0b577daee312e3.jpg

Mit "return" die Schleife verlassen, wenn ein "freier Parkplatz vorhanden ist.

80880061_Screenshot2022-10-14183133.thumb.jpg.a78060c04010470d556288ff703c5430.jpg

Dann findet der Wagen auch den ersten freien Parkplatz.

Viele Grüße, 

Hawkeye

Edited by Hawkeye
Link to comment
Share on other sites

Hallo @dbahr,

schönes Beispiel! Ich habe noch einen kleinen Verbesserungsvorschlag. Wenn mehrere Fahrzeuge direkt hintereinander auf der Straße in Richtung der Parkplätze fahren, dann werden mehreren Fahrzeugen dasselbe Ziel für die Parklücke zugewiesen. Entsprechend kommt es zu einer Blockade wie auf dem hier gezeigten Bild.
432468600_BlockadebeiParkplatzsuche.thumb.jpg.815a3bfcac2939f8827f63082d269d2c.jpg

Es wird sowohl dem ersten Fahrzeug (Pajero) als auch dem zweiten Fahrzeug (SUV 2) derselbe Parkplatz als Ziel (Parkplatz 4) zugewiesen!

Das Problem liegt in der zeitlichen Reihenfolge, wann du den Parkplatz als belegt (Variable: frei = false) deklarierst. Momentan gilt der Parkplatzt erst dann belegt, wenn das Fahrzeug den Gleiskontakt mit dem Schlagwort Parkplatz betritt. In der Zwischenzeit betritt ein weiteres Fahrzeug jedoch den Gleiskontakt "Zufahrt Parkplatz" und der Parkplatz 4 wird irrtümlicherweise als frei deklariert, obwohl das erste Fahrzeug kurzerhand diese Position ansteuert und bald erreichen wird. 

218155852_ParkplatzsucheLsungsvorschlag1.jpg.93ed1ea6517504137e8e6740b1d5236e.jpg

Die Lösung des zeitlichen Problems besteht darin, dass du die Parkposition direkt als belegt deklarierst, nachdem dem Fahrzeug das Ziel zugewiesen wurde. Damit kannst du dir das zweite Ereignis "Kontakt Parkplatz wird betreten" sparen.

Viele Grüße
Tim

Link to comment
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
 Share

×
×
  • Create New...