Jump to content

Virtuelle spur - richtung umschalten - ??


Recommended Posts

Zunaechst hier ist eine mini testanlage: 34CFFD86-7C92-48DD-AD31-DEA6D0AF7CB4 als entwurf

Eine spur, zwei kontakte, richtungsumkehr mit grafischer steuerung gemacht. 
Wenn man das fahrzeug rueckwaerts and den kontakt faehrt, funktioniert die umschaltung auf beiden kontakten.
Wenn man vorwaerts ranfaehrt, bleibt das fahrzeug einfach stehen ..

Was ist hier faul ? 

gruss
Gmd

 

 

Link to comment
Share on other sites

Hallo Gmd,

dein Ereignis "Vorne" enthält einen Fehler. Zuerst drehst du die Fahrtrichtung um, und überschreibst diese gleich danach wieder mit einer positiven Geschwindigkeit. Somit fährt das Fahrzeug weiter vorwärts. Entweder du weist eine negative Geschwindigkeit zu oder verwendest das Feld "Relativ zur Fahrtrichtung".

Viele Grüße,

Neo

Link to comment
Share on other sites

Nun, der loader bewegt sich nach vorne und hinten.

Dann habe ich animationen eingebaut und bin dabei das script stueck fuer stueck generisch zu machen. 
Hier ist eine andere testanlage: 18CAA89C-FF0C-42AF-9AD7-E6DC73D82AE5 

Der loader ist wieder das problem. Wenn du rueckwaerts gegen den hinteren kontakt faehrst, started die animation, die eigentlich gemaess code (Lua function) gar nicht starten sollte. Und mit der protokollierung sieht man dass der kontakt mehrfach ausgeloest wird waehrend die animation laeuft. 

Ich bin zu dumm fuer Lua und die testmoeglichkeiten (lack of) nerven mich etwas, wenn man sonst mit visual studio arbeitet. 
Was mache ich falsch ?

Gruss
Gmd

PS: Ich baue mir etliche solcher kleiner diaramas, um verschiedene scripte zu entwickeln und dann verschieden einsetzen zu koennen. Ich hoffe dass meine geduld und erfolg mit Lua wieder besser wird. 

Link to comment
Share on other sites

vor 30 Minuten schrieb HaNNoveraNer:

Ich denke er versteht den "-" nicht.

Das ist korrekt, es handelt sich im Kontext von find um ein Sonderzeichen.

@gmd
Du musst entweder das - escapen (siehe Lua-Doku) oder du rufst find mit den zusätzlichen Parametern "1, true" auf, um eine "plain"-Suche durchzuführen.

Viele Grüße,

Neo

Link to comment
Share on other sites

vor 10 Stunden schrieb gmd:

Was mache ich falsch ?

Hallo Gmd,

unter anderem baust du jedes Mal, wenn du einen beliebigen Kontakt betrittst, die folgenden Funktionen alle neu (und immer wieder identisch):

  • function playFrontAnimation ()
  • function getKontaktPrefix (contact)
  • function setSpeed(vehicle, speed)
  • function processFrontKontakt ()
  • function processSideKontakt ()
  • function processRearKontakt ()
  • function processWaitKontakt ()

Ich sehe darin keinen Sinn. 

Und ich bezweifle auch, dass die deferred calls so, wie du sie eingebaut hast, funktionieren können.
Ein deferred call ruft nach meinem Verständnis das Ereignis erneut auf und nicht die Lua Funktion innerhalb deines Ereignisses (die du obendrein bei jedem Aufruf neu anlegst).

Viele Grüße
Götz

Edited by Goetz
Schreibfehler korrigiert
Link to comment
Share on other sites

 

vor 8 Stunden schrieb Goetz:

Ein deferred call ruft nach meinem Verständnis das Ereignis erneut auf und nicht die Lua Funktion innerhalb deines Ereignisses

totalrecall.thumb.jpg.62949789a7f55ec9c61b7f7f987b2b70.jpg

Edited by Goetz
Schreibfehler korrigiert
Link to comment
Share on other sites

ok, danke guys,

waere ich nie drauf gekommen, fuer mich ist das halt ein string. Bin nicht tief genug in Lua bisher um darauf zu kommen. 
Sehr gut, stueck fuer stuck komme ich dann weiter.
Gruss
Gmd
 

Link to comment
Share on other sites

Goetz, 

das ist nicht das problem. Es ist eine zentrale routine fuer alle kontakte. 
Die animation is absolut korrekt und laeuft auch richtig ab.
Das problem ist/war die ausloesung der animation, weil das find nicht geht, laut Hannoveraner und Neo. 
Was abzuwarten bleibt ist warum der kontakt waehrend der animation ausloest, aber das ist nicht so relevant da an dieser stelle nur eine umschaltung stattfindet. Die animateion entladen kommt erst auf der anderen seite.
In meiner blockdemo verwende ich das gleiche konzept aber ohne den "-";

Ich verteile die kontakte und signale intern. Ich bin am testen mit den schlagworten untergruppen zu bilden, da das ja sehr viel werden kann. Muss einfach mal sehen wann die MBS steuerung in die knie geht, wenn ich das so weitermache. Ich vermute mal, dass das noch niemand so richtig ausprobiert hat, mit solch extremen faellen. 

Ist spannend. 
Danke fuer posts und hilfe alle zusammen. 

Werde die kleinen diaramen mit den scripten veroeffentlichen, wenn sie funktionieren.
Gruss
Gmd

 

Edited by gmd
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
×
×
  • Create New...