Autor
|
Thema: Position eines Sensors über sensorID (502 mal gelesen)
|
Kristina999 Mitglied
Beiträge: 4 Registriert: 01.06.2021
|
erstellt am: 07. Jul. 2021 16:50 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ich würde ein Fahrzeug an einem Sensor gerne von Spur A auf Spur B umlagern. Dabei soll das Fahrzeug auf gleicher Höhe umgelagert werden. (z.B.: Position A: 7 --> Position B: 19) Eigentlich müsste es ja reichen, wenn ich folgenden Code nutze: Code: (SensorAktuell : integer; Bug : boolean) is sensorPos:real; do sensorPos := @.Standort.sensorID(sensorAktuell).position; @.umlagern(@.Standort.B, 26-sensorPos);
Das Problem ist, dass ich immer eine Fehlermeldung bekomme: Unbekannter Bezeichner sensorID So wurde es im Buch von Bangsow erklärt: Code: (weg: object;sensorVon:integer;sensorNach:integer):boolean is posVon:real; posNach:real; rueckwaerts:boolean; do posVon:=weg.sensorID(sensorVon).position; PosNach:=weg.sensorID(sensorNach).position; rueckwaerts:=(posVon>posNach); return rueckwaerts; end;
Hat vielleicht jemand eine Idee wo der Fehler liegt oder wie man das anders lösen kann?
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nadin1223 Mitglied Ing.
Beiträge: 938 Registriert: 29.03.2016
|
erstellt am: 07. Jul. 2021 22:50 <-- editieren / zitieren --> Unities abgeben: Nur für Kristina999
Hallo Kristina, Zitat: Das Problem ist, dass ich immer eine Fehlermeldung bekomme: Unbekannter Bezeichner sensorID
ZweispurigerWeg hat zwei Spuren: A und B. Also "@.Standort.B.sensorID(sensorAktuell).position;" vG Nadin ------------------ Die einfachste Art an korrekte Informationen zu gelangen ist, etwas Falsches in ein Forum zu posten und auf die Korrektur zu warten. (Matthew Austern) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kristina999 Mitglied
Beiträge: 4 Registriert: 01.06.2021
|
erstellt am: 08. Jul. 2021 08:30 <-- editieren / zitieren --> Unities abgeben:
Ach natürlich. Danke für den Hinweis Nadin! Ich hätte dann noch eine ergänzende Frage. Und zwar, habe ich festgestellt, dass wenn das Fahrzeug umgelagert werden soll, aber die Position auf Spur B bereits belegt ist, die Umlagerung überhaupt nicht stattfindet. Meine Idee war zu prüfen, ob der gegenüberliegende Spur an der Stelle belegt ist und dann entweder eine Zeitverzögerung einzubauen oder die Zielposition für die Umlagerung zu ändern. Hast du eine Idee wie ich das machen kann oder gibt es eine andere Möglichkeit, mit der ich einstellen kann, dass die Fahrzeuge sich auf überlappen dürfen? [Diese Nachricht wurde von Kristina999 am 08. Jul. 2021 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nadin1223 Mitglied Ing.
Beiträge: 938 Registriert: 29.03.2016
|
erstellt am: 08. Jul. 2021 17:51 <-- editieren / zitieren --> Unities abgeben: Nur für Kristina999
Zitat: Ich hätte dann noch eine ergänzende Frage. Und zwar, habe ich festgestellt, dass wenn das Fahrzeug umgelagert werden soll, aber die Position auf Spur B bereits belegt ist, die Umlagerung überhaupt nicht stattfindet.
Sensoren haben keine Blockierliste. Wenn umlagern false ist, dann existiert nichts was eine nochmalige umlagerung versucht. Der Transporter fährt weiter, weil dieser nicht angehalen ist.. Zitat: Meine Idee war zu prüfen, ob der gegenüberliegende Spur an der Stelle belegt ist und dann entweder eine Zeitverzögerung einzubauen oder die Zielposition für die Umlagerung zu ändern. Hast du eine Idee wie ich das machen kann oder gibt es eine andere Möglichkeit, mit der ich einstellen kann, dass die Fahrzeuge sich auf überlappen dürfen?
Teile den Weg (wo Sensor verbindet halt eine Kante die Wege). Verbinde mit Kante und Flusssteuerung die Wege untereinander. Dann macht es das Umlagern von selbst ------------------ Die einfachste Art an korrekte Informationen zu gelangen ist, etwas Falsches in ein Forum zu posten und auf die Korrektur zu warten. (Matthew Austern) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kristina999 Mitglied
Beiträge: 4 Registriert: 01.06.2021
|
erstellt am: 09. Jul. 2021 13:48 <-- editieren / zitieren --> Unities abgeben:
Zitat: Sensoren haben keine Blockierliste. Wenn umlagern false ist, dann existiert nichts was eine nochmalige umlagerung versucht. Der Transporter fährt weiter, weil dieser nicht angehalen ist..
Das hat mir schon weitergeholfen, danke. Ich habe falls das Umlagern false ist einfach eine Zeitverzögerung von einer Sekunde eingefügt und der Fehler tritt nicht mehr auf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|