How to determine when in Reversed/Repeated Path using GrpFeature CNC Reverse

I have just enabled CNC Reverse in my project and it is working great for axis moves. It no longer gets hung up on timers. However due to the way it handles MFunctions and variables set in the gcode i have to make some changes. For the moment the plan is to auto reset all MFunctions that are triggered when in Reversed/Repeated Path.

The only way to go in reverse is setting the override to a negative number, so i can use the check if override < 0 to auto reset my MFunctions. But when i cant figure out how to tell if im in the repeated path or back to running the cnc program like normal.

Here is an example of an MFunction I’m having problems with. Its a basic function that just turns off an output. However i always write which output to turn off directly in the gcode. During normal operation this is fine. When reversing i have the check that auto resets it, but i have no way of knowing if im running CNC like normal or if i am in the Repeated Path. In the repeated path it wont write the variable again so i will get hung up on this mfunction.

Hello,

i have never used inverse Path movement, so i am not an Expert on this.

If i need any information of the AxesGroup i always have a look to the “Monitoring Elements”-Feature
But in this case i don’t think there is this information.

You can try to check the “Path Position” i think this datapoint is also available on the MpCncFlex.Info.Path.CurrentPathPosition. This Value counts up from 0 to the End of the Program. If you store the Value when you switch to reverse you can then later wait to reach this value again. But i currently don’t know if the value goes reverse too. But i think it should do so. Can you please have a check?

Greetings
Michael

1 Like

Hi @J.Bruick , have you found final solution for your question? can you update us?

I was able to use Path Position as you mentioned to determine if i was in the repeated path. When you run in reverse the current Path Position will count down as much as you reverse.

I will say while this does work I’m worried about a timing issue as the back end CNC process data faster than my fastest cyclic where i added this logic. There really should be an item in MpCncFlex that says if i am running path normally, in reverse, or if it is a repeated path.

1 Like

Hello Thanks for the Feedback.

I can forward this use case to the Product-Manager of CNC. But there is no gurantee that this will be implemented.
If you want to stay track of a Product Improvement Request you have to handle it via local Sales.

Greetings
Michael

ok I tag this topic as a support ticket. So must be handled using official support channel.

1 Like

Last note @michael.bertsch from my side: the use case for reverse movement is
jog pendant, so I’m not 100% sure the possible limitation reported by JB is relevant on that case.

Ciao
Valerio