Creisen, yo habia encontrado esta macro, a ver si te sirve esto, aunque solo sea de orientacion.
El fichero es de la rutina del cargador de scott
------------------------------------------------------
Sub Main()
NumSlots=8 'numero maximo del cargador
OldTurretPos=(GetOEMDRO(805))
OldToolSlot=Abs(GetOEMDRO(805)/45)
NextTool = GetSelectedTool() 'lee el numero de herramienta a cargar
NextToolSlot = (NextTool-1)*360/NumSlots '
If OldToolSlot = NextToolSlot Then 'Si el numero de herramienta a cargar es la misma que hay cargada sale y continual el codigo
SetCurrentTool(NextTool)
Exit Sub
End If
If NextTool>8 Or NextTool<1 Then 'comprueba que la herramienta este dentro del maximo del cargador
Message("La herramienta esta fuera de rango") ' si esta fuera muestra el mensaje y sale de la rutina
Exit Sub
End If
MoveDis = (NextToolSlot-OldTurretPos)
If Abs(MoveDis) >180 Then 'define si gira el cargador a derecha o a izquierda
If MoveDis < 0 Then 'segun este mas cerca en un sentido o en el otro
MoveDis = 360 + MoveDis
Else
MoveDis = MoveDis - 360
End If
End If
ActivateSignal(OUTPUT3) 'Activa bit de salida para posicionar cargador en zona de cogida
Code "G4 P0.5" 'PAUSA
While IsMoving ()
Wend
Code "G00 G91 C" & MoveDis `'Gira cargador a posicion, utiliza el eje C
While IsMoving ()
Wend
DeActivateSignal(OUTPUT3) 'Desactiva bit de salida para retirar cargador
SetCurrentTool(NextTool)
Code "G90"
End Sub
------------------------------------------------------------------
El fichero tienes que guardarlo como M6start.m1s en la carpeta de macros
Saludos. :wave: