Z offset changes with temperature?

Discussion in 'Tool heads & ToolChanger' started by jschall, Aug 7, 2020.

  1. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
    I got roughly these values:
    PLA at 230C: offset -4.8
    PC at 285C: offset -4.55

    Why does it change so much? Let's say the aluminum heatbreak is 30mm long and 55C hotter... it should expand by 2.4e-5 * 55 * 30 ~= 0.04mm, not 0.25mm. Brass doesn't expand as much, titanium doesn't expand as much, did my Z homing with the the bed already heated (145C). Not enough to add up to .25mm.

    Maybe the switch is really temperature sensitive and was sitting above the 145C bed for too long?
     
  2. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
    After further experimentation, I think the switch is in fact changing offset with temperature.

    I homed the Z axis with everything hot, then moved the Z axis down and the Y axis forward to cool the switch for a while. Probed Z and it was off. Probed Z again a few seconds later and it was less off, did it again and it was less off, and so on. Eventually it zeroed.

    I think this switch is a problem.
     
  3. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
  4. Paul Arden

    Paul Arden Well-Known Member

    Joined:
    Aug 28, 2019
    Messages:
    182
    Likes Received:
    59
    You mean 145F/60C for the bed right? So the offsets are calculated with the same bed temperature?
     
  5. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
    No, I mean 145C.
     
  6. Paul Arden

    Paul Arden Well-Known Member

    Joined:
    Aug 28, 2019
    Messages:
    182
    Likes Received:
    59
    Any particular reason you are running it that hot? For PLA that would be very odd and prints would be almost melt on the bed, for PC maybe you’d go to 120C at the outside but 145C seems pretty excessive. I assume you are using the supplied glass bed then. Even though the glass will probably stay flat the aluminium underneath is certainly going to deflect enough to change the offsets, though it sounds like you are probing with the same bed temperature always.
     
  7. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
    The high bed temp helps keep the PC from warping, as I don't have an enclosure yet.

    It also sticks amazingly well. I used to run 115C on my Prusa, but this really makes all the difference.
     
  8. Paul Arden

    Paul Arden Well-Known Member

    Joined:
    Aug 28, 2019
    Messages:
    182
    Likes Received:
    59
    But surely you’re not using that temperature for PLA are you? In which cased you’d have a different in bed temperature between those two in addition to the nozzle temperature and that will definitely affect the measured offset.
     
    Michael Pearson likes this.
  9. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
    I am doing the calibration at temperature in both cases.

    Variations in the bed are controlled for. The only variables left are:
    1. Dimensional changes in the hot end
    2. Dimensional changes in the tool head
    3. Repeatability errors in the switch at different temperatures

    I regard 1 and 2 as highly unlikely, based on my understanding of the physics involved.

    I think I have confirmed 3 with the test where I noted the offset to be changing as the switch heated up. When I get my fancy overpriced switch, we can confirm.
     
  10. 1013D

    1013D Active Member

    Joined:
    Jan 17, 2020
    Messages:
    33
    Likes Received:
    6
    can't you leave the bed way low while it heats up, so it does not heat up the switch....sure it will get some heat as it probes the bed, but not much time for that.

    Also, how much time are you delaying for the heat to soak into the bed and stabilize. the bed temp sensor is attached to the heater, and it takes some time for the bed to heat up to the temperature that the sensor says. (a minute or so I would guess, depending on bed material)
     
  11. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
    Left the bed hot for quite a while at the bottom, then moved it up and the offset started rapidly changing.

    Will install the overkill switch at some point (being lazy and it is a bit of a pain to integrate well), then rerun the test. If it solves my problem then maybe a cheaper option can be found.
     
  12. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
    Ok, installed the Metrol switch.

    It worked. I followed the same procedure as before - lowered the bed, moved the toolhead to the front, waited for the bed to heat up, probed the bed, and kept probing the bed over a few minutes. It stayed consistent.

    That said, the bed itself of course changes with temperature. It'd be cool if you could do a mesh calibration at 2 different temperatures and then have it linearly interpolate between them, plus have a temperature coefficient for the Z offset (there is kind of one, but only applied at probing time - intended for probes that have exactly the problem I just solved with the Metrol switch)
     
  13. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
    Maybe it'd be possible to use daemon.g to set the Z babystepping based on the current bed temperature? I've haven't done anything programmatic in a duet config yet.
     
  14. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    526
    Likes Received:
    221
    You can also set the Z probe trigger height to be a function of the bed temperature, in the M558 command.
     
    #14 dc42, Aug 24, 2020
    Last edited: Aug 25, 2020
  15. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
     
  16. jschall

    jschall Member

    Joined:
    Jul 10, 2020
    Messages:
    22
    Likes Received:
    2
    If I probe the bed after it is hot with the Metrol switch, I should get a perfect first layer every time.

    I've been being lazy and babystepping.

    It'd be nice to solve the mechanical issue causing this... It is possible the bed screws are too tight, but if the screws are loose then the bed can move around. Really it needs appropriate (very very stiff) heat-resistant (silicone?) rubber isolator standoff things.
     

Share This Page