Probing tool offset in the X-Y plane



  • I am working on a tool changer, I was thinking of probing the tool position by touching the sides of a ring or a cylinder mounted on a piezo sensor. Is there a command for that, and if not, do you have an idea if I can cobble something?
    In 3d printing I can't really use the tool radius because the head is conical.


  • administrators

    Yes the M585 command can do that.



  • Thanks,
    I don't see how to probe a tool whose radius is unknown with M585 can you explain a bit more?

    I would like to touch once on the left of the cylinder, then touch on the right, and deduce the tool center is the average of both values.



  • @nraynaud Are you using a hollow cylinder so you would be touching on the inside instead of the outside of a solid cylinder? If so then I think you want to use M675 instead. It will find the center of 2 touch points along an axis. Just run it in X direction and then the Y direction to find the center of the cylinder.

    I would recommend running it in the X axis again after locating the center in Y.

    See https://duet3d.dozuki.com/Wiki/Gcode#Section_M675_Find_center_of_cavity



  • Thanks, that could work. I'll google to see if someone has done it before, I don't immediately see how M585 works with that.



  • I might need some baby sitting here please. Let's only talk about the X axis.

    Let's say by convention Tool 1 is golden, and its offsets are 0 by convention (I am envisioning a steel ball at the end of a rod). All other tools have their offset defined by difference to tool1.

    I would load tool 1, and go sense the center of the ring with M675 I would need to save this value somewhere.

    I would load tool2, the unknown tool, place it inside the ring by jogging and go probe the ring with M675. The current value on the machine minus the saved value would be tool2 offset (to be set by G10 L1 ?).

    How do I save a position? how can I compute the difference and send it to G10?

    I would be ready to do crazy stuff in javascript if need be.

    Thanks.



  • @nraynaud Once the Duet firmware supports variables and math/logic conditions then you will be able to make the tool offset routine automatic.

    For now you will have to write down the centerline differences from tool 1 to any other tools and then enter those values in with G10 like you discribed.

    I myself am waiting patently for the new condition statements and variables to be implemented. They will make tool offsets a breeze then. But I'm sure dc42 is extremely busy with firmware bugs/updates, and the new Duet3 stuff.

    It's truly amazing how fast the Duet team progresses these boards and firmware. I'm very grateful for all of there hard work.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.