Way to purposefully cause stepper to vibrate?



  • While searching for alternative Z-Probe ideas (if it ain't broke, fix it some more), I stumbled across this hackaday article: https://hackaday.com/2016/07/18/sonic-3d-printer-auto-bed-leveling-makes-swoosh/ which details using a teensy in conjunction with a piezo sensor to detect a change in vibrations when the nozzle touches the bed (using a the stepper to produce vibrations).

    In the article the author uses an extra board in between the control board and stepper driver to cause these vibrations. I was wondering if there's a way to do this in Duet firmware? I was thinking maybe a conditional loop with repeating microsteps in opposite directions, but suspect there may be a more elegant way to do it.

    To summarize, my idea is: mount piezo on extruder/x-carriage, cause stepper to vibrate, measure frequency difference when not touching bed and touching bed, then use that data with a teensy to send the Duet 2 a high/low signal to indicate when the nozzle has contacted the bed.



  • @copperbricks

    what about turning it upside down?

    put a mobile phone vibration motor on the hotend and measure the vibration there.
    that way you would not need to change the z motion.
    once the nozzle touches the bed, the vibration should change.



  • Ah I think I may have been a little unclear - I have an E3D Hemera, so my plan was to cause the Hemera stepper to vibrate, which would fulfill a similar function to a phone vibration motor attached to the hotend. That is a good idea though, it'd be easy to connect one to a fan header and I'm sure they are comparable in weight to a bltouch. I'll definitely keep it in mind if I can't figure out a way for the hemera stepper to vibrate.



  • Are you sure the cooling fans on the extruder doesn't already provide enough vibration to pick up on a piezo? I can definitely hear a change in acoustics when the nozzle touches the bed, and I suspect this would make a perfectly useful way to probe, especially if you made a filter (software or hardware) on the piezo that was tuned near the peaked of the the vibration spectrum from the fan.


Log in to reply