Duet3D Logo

    Duet3D

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Documentation
    • Order

    Solved Large Bed Heater Tuning Tips

    Tuning and tweaking
    4
    5
    166
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • bitskrieg
      bitskrieg last edited by

      Hello,

      I've got a 1000mmx1400mm aluminum bed in an enclosed chamber with a 4400 watt heater on a Duet 2 WiFi running RRF 3.4.0.

      I've noticed that when running autotune (M303 H0 S100), the first few measurement cycles take significantly longer to oscillate between 95 and 100 when compared to later cycles (which can take advantage of a 20C increase in chamber temperature, just based on how long the heater has been active) which are much shorter. As a result, when the tuning completes, it warns me that heater performance has been inconsistent and provides the new tuning values. When I apply those tuning values and run a print from a cold bed, it always throws a heater fault, presumably because those tuning values are favoring the later heating cycles during the autotune, which are taking advantage of much warmer ambient temperatures when compared to the beginning of the cycle, and thus the firmware is expecting it to act as if ambient is 20C warmer than it actually is.

      My question is this - what is the technically correct way to account for this during the tuning process? I have had some success just leaving all of the doors on the enclosure open to allow the heat to dissipate during tuning, but it seems like there should be a more elegant solution.

      Any tips are appreciated,

      TIA!

      engikeneer 1 Reply Last reply Reply Quote 0
      • Topic has been marked as a question  bitskrieg bitskrieg 
      • feeshfeud
        feeshfeud last edited by

        The first thing I would try is to leave the chamber open, with a small fan if necessary to provide some ambient airflow. Don't cool the bed here, but try and keep the ambient temperature constant. This should give you a tune appropriate for door-open or first warmup. You'll then want to assess if you have any excess oscillation issues once everything is warm - if everything is tight enough (for me, within 1C or so would probably be fine, but it's your machine). You can try manually tweaking the parameters from here, or even try averaging 'open door' with 'closed door' parameters if performance isn't to spec.

        Slightly more elegantly, but with a more involved integration, adding a prerun macro in the printing process to switch from 'warm-up' tune to 'steady-state' tune should be possible. You'd need to work out the cleanest way to integrate this into your slicing/printing workflow.

        Then the kludgy option is to create a 'warm-up macro' for the first bed turn-on where temperature is ramped up slowly enough (e.g. 5C increments) that the heater fault doesn't occur.

        An even kludgier option would be to reduce the max PWM of your heater. I'd wager you could get that bed up to temp with ~25-40% of 4400W. (Measuring your steady state wattage would give you a real number). This would obviously be slower to warm up, but might mitigate things like chamber temperature (which will now have time to equilibrate).

        dc42 1 Reply Last reply Reply Quote 0
        • engikeneer
          engikeneer @bitskrieg last edited by

          @bitskrieg you can set the max numer of tuning cycles (default 25 cycles) and the temperature difference (default 5C) for a tune. Maybe try playing with those to see if you get something more reasonable? I'm thinking do max 5-10 cycles so it stays cooler.

          You could then do another one from a higher ambient temperature (and specify that in the tuning command) to see the difference.

          You can also widen the heater fault tolerances in M143 for the bed to help account for the different response for different abient temperatures. Though obviously widening these too much will reduce the safety of the system somewhat.

          Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
          i3 clone with a bunch of mods

          1 Reply Last reply Reply Quote 1
          • dc42
            dc42 administrators @feeshfeud last edited by dc42

            @feeshfeud you could tune once to get the chamber warmed, then ignore that result and tune again immediately specifying the actual chamber temperature in the A parameter of the M303 command.

            Alternatively, if you have a chamber heater then preheat the chamber to the temperature you typically use, then run bed heater tuning, again specifying the chamber temperature in the A parameter.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            1 Reply Last reply Reply Quote 1
            • bitskrieg
              bitskrieg last edited by

              Hi all - I took bits of all your responses and ended up making a tuning macro that brings the chamber temperature to my normal printing temperature first and then runs the autotune. When actually printing, I've adjusted my gcode to bring the chamber to temperature first (in serial) before heating the bed, rather than in parallel as I did previously. Overall print time has gone up a bit, but a single heatup in the morning and then leaving it like that all day isn't too bad.

              Thank you!

              1 Reply Last reply Reply Quote 1
              • Topic has been marked as solved  bitskrieg bitskrieg 
              • First post
                Last post
              Unless otherwise noted, all forum content is licensed under CC-BY-SA