Precision Piezo z probes guide for duet users reference
-
I use digital its simpler but relies more on having the tuning of the piezo sensor system right. For Piezo20 read made units I've done this for you, digital is best. You can still monitor analogue "ripples" as the analogue value will still change in DWC/Paneldue as the probe moves around.
If you've built one, especially if the design is a novel one, analogue gives you another layer of fine tuning which might help to get the most out of a design where the "tuning window" is very narrow.
-
I like this guide..thx but i do have a question. in this section:
M558 P1 I0(or I1) R0.4 F300 X0 Y0 Z0
(analogue mode, NO/NC, delay, speed, not used as axis endstop)shouldn't it be Z1, as the probe is used as an endstop for z axes?
-curtis
-
Depends. I have a corexy with a mechanical z max endstop switch at the bottom of the machine. I home x y and then z to the mech switch. Then I heat the bed to 1st layer temp, then nozzle to 130 then move to be centre, z=10 and do G30. This sets the fine z point.
So in this case I'm not using my probe as z endstop.
-
Can the 3-piezo under-heatbed setup be directly attached to the silicone heater? And wont the heat damage the piezo speakers? The temperature is quite high, up to 140 degrees.
-
@Zerogee
I have the system set up without setting the probe as a Z Endstop and without a mechanical Z Endswitch.My homez and homeall config files jsut contain the following:
G91
G1 Z5 F6000
G90
G1 Y10 X10 F6000
G30
G1 Z2
G1 Y0 X0 F6000
G1 Z0.05In my start gcode I tell the printer to heat the nozzle to 130c then home the axis, then heat the nozzle to the desired temp:
M572 D0 S0.01
M190 S[bed0_temperature];
M109 S130;
G28 ; home axes
M109 S[extruder0_temperature];This works perfectly for me, as the G30 will set the Z to 0 when its triggered.
-
Can the 3-piezo under-heatbed setup be directly attached to the silicone heater? And wont the heat damage the piezo speakers? The temperature is quite high, up to 140 degrees.
No that won't work. The way I do it is make bed mounts which contain the Piezos and attach your bed to the mounts. I've tried using mounts which just support the bed at the sides, and mounts with screws to attach the bed to which are also adjustable. The Piezos can take a little temperature rise but not more than 60 degrees C approximately.
Here's something to you started https://www.thingiverse.com/thing:2461746
-
I think there's something wrong with the link you posted.
-
Nope opens thingiverse to my design for a possible underbed piezo mount.
-
Shows a 404 error for me.
-
-
That's weird when I click it it loads the page I linked to maybe because it's cached on my phone.
Try this https://www.thingiverse.com/DjDemonD/designs
It's about the 4th or 5th one down.
-
I've had no luck getting mine to act as a z endstop and may be confused what I need to do.
On my corexy I have a mechanical z switch and have the piezo on my Titan Aero bracket (my own design, flexes/lights the led easily).
What do I need to do, do away with the switch and just use the piezo for endstop and mesh bed leveling or some combination?
-
Yes no switch need, use the probe for homing.
-
So home x, then home y, move to bed centre and send G30.
That should do it.
The only time this is not going to just work is if the motion required to bring nozzle and bed into contact is triggering the probe. If so lower acceleration and jerk for Z, and make sure you are using the R parameter in M558, such as M558 R0.4 to allow the frame/axis to settle before probing.
Also make sure M558 has X0 Y0 Z1 in it which means probe is used for homing Z. Although probably not necessary, as you can instead change your homez.g and probably your homeall.g file, to have the move to bed centre and G30 commands instead of the G1 S1 xxxx commands you would have been using before.
-
Ah, now I finally figured it out after some confidence from your post. I had it all configured but when I was issuing G30 earlier after already doing it once, I'd get Error: Z probe was not triggered during probing move which means I needed to override the Z position.
-
A bit of interest.
https://www.facebook.com/groups/makerbot/permalink/1442086032575563/Thanks DJ for helping me out so quickly.
Now I just have to implement it into my printing.
-
Hi,
I have a D-BOT coreXY (30x30x30cm), i've purchased the precise piezo last week and it is on its way.
While i'm waiting for it i want to prepare the firmware.
So in Z probe section of config.g i've put the digital code:M558 P5 I0 R0.4 F300 X0 Y0 Z1 ; Digital Z probe, also used for homing the Z axis G31 X0 Y0 Z-0.1 P100 ; Set the probe height
i would like to use the piezo also for the z home in z min so i put "Z1 in M558".
These are my homez.g and homeall.g:
;********************************** ;homeall.g ;homing using a x-MIN, Y-MAX and z-MIN endstops ;********************************** G91 ; relative mode G1 Z4 F400 ; lowers bed 4mm to avoid dragging nozzle over the bed G1 S1 X-340 Y340 F2000 ; move 340/340mm in -X (x endstop is MIN) and +Y(y endstop is MAX) G1 S1 X-340 ; course home X G1 S1 Y340 ; course home Y G1 X4 Y-4 F500 ; move away from the endstops G1 S1 X-10 ; fine home X G1 S1 Y10 ; fine home Y G1 Z4 F200 ; lowers bed 4mm to avoid dragging nozzle over the bed G90 ; back to absolute mode G1 X150 Y150 F4000 ; put head over the centre of the bed, or wherever you want to probe G30 ; probe G91 ; relative mode G1 Z4 F50 ; move slowly 4mm in the +Z direction G90 ; back to absolute mode G30 ; probe
;********************************** ; homez.g ;homing using a z-MIN endstop ;********************************** G91 ; relative mode G1 Z4 F200 ; lowers bed 4mm to avoid dragging nozzle over the bed G90 ; back to absolute mode G1 X150 Y150 F4000 ; put head over the centre of the bed, or wherever you want to probe G30 ; probe G91 ; relative mode G1 Z4 F50 ; move slowly 4mm in the +Z direction G90 ; back to absolute mode G30 ; probe
and in my starting code i put this to perform the bed leveling/compensation:
M561 ; Cancel any existing bed compensation by sending M557 X10:290 Y10:290 S40 ; Define the probing grid G29 ; Probe the bed and save height map to SD ;M190 S[70] ; i don't have a bed heater M109 S130 ; set 130 extruder temp G28 ; home axes
Is this correct or i have to change something?
Any advice and suggestions will be greatly appreciated -
Looks okay to me, but then I'm not so good at just eyeballing it and spotting errors, just use low motor current at first so any crashes just stall the z motor, not do any damage. And tune the piezo carefully, so that a gentle tap up triggers it, and you see the trigger on DWC screen in Z-probe box goes red and says 1000.
The do G30 with nozzle way above the bed, tap up with your finger or a tool, to make sure the firmware registers triggered and reacts to it before trying it on your bed.
Then hit home all and go from there. But I'd say you are well prepared.
-
I don't have a Piezo probe so can't comment on your homez.g but your homeall.g file has errors related to homing Y.
I note that the Y end stop is at Y max so the course homing part is fine but after this:
G1 S1 Y340 ; course home Y
you have this:
G1 X4 Y4 F500 ; move away from the endstops
G1 S1 X-10 ; fine home X
G1 S1 Y-10 ; fine home YIn the first line above you want to move Y away from the end stop but it's already at max (Y=340 from the previous course home) so to move it away from the end stop, you need to move it negative i.e G1 X4 Y-4 F500 (Y minus 4)
Then you have G1 S1 X-10 which is fine but G1 S1 Y-10 is wrong as it'll be moving away from the end stop so it needs to be G1 S1 Y10 (no minus sign).What will happen if you don't correct this is that course homing will work fine, then fine homing of X will work but after that, Y will move slowly away from the end stop (towards you) and keep going for ever (or at least until something nasty happens).
HTH
-
Ok, thank you! I have edited the homeall.g code.
When the piezo arrive i will edit all the code so it can maybe help someone else and use it for a starter point.