M47 command


The issue that we have in our machine is that the welding electrode is subject to wear, We should reset the tool (electrode) tip coordinates very often, every 2 parts. We need to reset the X and Y coordinates.
Our plan is to install 3 sensors wired to Input 1, 2 and 3 of the controller and write a sequence of commands using  the M301 … and G28 commands to reset the coordinates to current values to compensate the electrode wear at every execution of the program.
To do this, we need to create a conditional loop.    The question we have is about M47 command.  Is there a way to jump the program to another place than at the start of the program?
For example, to set the Y coordinate, we should place the tip of the tool on front of the Y axis sensor, the move a small amount the Y axis (0,1mm is OK for us), check the sensor, if not active, move another 0,1 until active, etc.


Currently there is only M47 loop, the latest one cannot solve its problem.

This problem is directly used to return to the machine origin command, G28 performs the return to origin operation before each machining, or set the tool setting point

Leave a Comment