I want to start a method when a transporter almost reaches his targetposition (1.5 meter before), as I tried: 'waituntil transporter.FrontPos = transporter.TargetPos -1.5meter'. These transporter attributes are not watchable, is there a smart way to kind of define a method that can watch the position of the transporter? Is there a kind of wait function that can do this?
Thanks in advance!
Solved! Go to Solution.
There are several ways :
you can set a track sensor 1.5 m before targetpos.
or calculate the transport time until it reaches the targetpos -1.5 m
to set an according wait statement before you stop the transporter.
Thank you for your reply!
It is difficult to work with sensors because the targetpos can change. I thought about the second option as well but I find it not a satisfying solution.
Is there maybe a way of creating a loop with GetAttributeValue of the transporter? Once this reaches a certain distance, you can trigger a method?
Why not set the target position 1.5 me earlier? And the insert one that lies 1.5 m further down the way?
BTW, the transporters already slow down on time when approaching the target position, if deceleration is activated.
thank you for your reply!
It is a bit diffucult to explain, a transporter has a variable target and a parallel process should start a fixed distance before reaching the target. I find it difficult to explain, I am sorry.
I have fixed it now by updating (each 0.1s) a variable that shows Transporter.frontPos, if this variable reaches the range of the fixed distance to the target, a boolean is set to true which triggers the parallel process to start. It is not a nice way of doing things but for my case it works now.