Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Heavy Aluminum bed too slow for autotune.

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    4
    21
    1.0k
    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.
    • tjhintonundefined
      tjhinton
      last edited by tjhinton

      I've got an Objet 3D printer that I'm repurposing for FFF. I can't autotune the bed heater because the thermal mass of the bed is too high to respond fast enough for M303. I get "auto tune cancelled because temperature is not increasing" or "auto tune cancelled because temperature is not falling". Realistically, I can expect the bed to heat around .1C/s when it's really going. It does not heat this quick until it's been on for about 5 minutes. It is even slower to cool. Is there a way for me to get around this? Is there a way to make M303 more tolerant on rise/fall rate?

      I've tried a gain as low as 60, a C value as high as 10000, and a D of 99; for example:
      M307 H0 A60 C10000 D99 B1

      More on the printer:
      For the build plate, the objet has a 120V 600W silicone heater pad sandwiched between a total of ~20lbs of Aluminum. I have my Duet 3 controlling a 120V SSR to power the bed. A single thermistor is located at the edge of the bed and is screwed into it. The design of this bed was to hit temp slowly and maintain it - it takes 40 min for the bed to passively cool down from 60C without a fan on it. It's also thick enough that it maintains a pretty even temperature across the surface. If you're not familiar with the machine - it's an XY extruder gantry with a bed traveling in the Z.

      1 Reply Last reply Reply Quote 0
      • jens55undefined
        jens55
        last edited by

        You are W A Y W A Y W A Y under powered. Just as an example, I am using 1200 Watts and I might have maybe 2 kg worth of build plate.
        While slow and steady may win the race, it will cause you nothing but grief in this situation. There are a couple of things that will catch you right away - generally, the first layer is put down with extra bed temperature. In your case you have zero control over the bed temperature as shutting off the heater will not drop the temperature in a reasonable amount of time. Also, you will find that the heater has insufficient power to overcome temperature losses from the environment. It will increase in temperature (slowly) until losses equalize the gains but you might find yourself in a situation where the heater never shuts off because it can never reach set temperature.
        Yes you might be able to bypass the safeties but what you have is not workable!

        Phaedruxundefined tjhintonundefined 2 Replies Last reply Reply Quote 0
        • Phaedruxundefined
          Phaedrux Moderator
          last edited by

          dead time of 99 seconds is likely still much too low for the bed heater. For the initial tuning, you can artificially increase the dead time substantially to get it to tune successfully. Once it's tuned once it will have an accurate model of the heater and you'll get a true D value.

          so try D999 or more

          https://duet3d.dozuki.com/Wiki/Tuning_the_heater_temperature_control#main

          Z-Bot CoreXY Build | Thingiverse Profile

          1 Reply Last reply Reply Quote 0
          • Phaedruxundefined
            Phaedrux Moderator @jens55
            last edited by

            @jens55 said in Heavy Aluminum bed too slow for autotune.:

            you will find that the heater has insufficient power to overcome temperature losses from the environment.

            I think the objet is enclosed so environmental losses might not be an issue.

            And higher temps for the initial layer may not be necessary for the same reason.

            It's definitely a slow heater for that amount of mass, but if time isn't at a premium then that's not an issue, and it might also be intrinsically more safe since it can't get to dangerous temps in a fault condition.

            Z-Bot CoreXY Build | Thingiverse Profile

            jens55undefined 1 Reply Last reply Reply Quote 0
            • jens55undefined
              jens55 @Phaedrux
              last edited by

              @Phaedrux , I don't share your optimism unless he is not printing plastic.
              Mind you, when I first read the post I thought he had said 300W but on re-reading it was 600. If the printer is enclosed and is actively heated then dissipation isn't as much of an issue, you are right. I myself depend on the extra heat of the first layer in order to stick the bead to the glass surface. There is a fine balance (in my case) between sticking and not sticking. This is often seen within 5 degrees. With the first layer not able to cool, I suspect that there will be artifacts that rear their ugly head.
              I suppose it might work (definitely try with a longer dead time) but this just raises all manner of red flags in my mind. YMMV

              tjhinton I am curious - what's the size of the plate and what is thickness ?

              tjhintonundefined 1 Reply Last reply Reply Quote 0
              • tjhintonundefined
                tjhinton @jens55
                last edited by

                @jens55

                "You are W A Y W A Y W A Y under powered. Just as an example, I am using 1200 Watts and I might have maybe 2 kg worth of build plate. While slow and steady may win the race, it will cause you nothing but grief in this situation."

                I appreciate your position on this. Unfortunately, it's not really something I can change - this printer is built like a tank, and it's much easier to just make this bed work for my needs. And this machine was designed with plenty of environmental control in mind - it doesn't drop temp when you put a fan on the bed. I don't need more than 60C, and I'm not actually doing much FFF, but I would like the ability to warm the bed to at least 60C with the Duet's firmware.

                "There are a couple of things that will catch you right away - generally, the first layer is put down with extra bed temperature. In your case you have zero control over the bed temperature as shutting off the heater will not drop the temperature in a reasonable amount of time."

                My understanding is that tuning catches this, assuming you do it right and set up the tune in an appropriately controlled situation - such as in an enclosed print volume.

                "Also, you will find that the heater has insufficient power to overcome temperature losses from the environment. It will increase in temperature (slowly) until losses equalize the gains but you might find yourself in a situation where the heater never shuts off because it can never reach set temperature.
                Yes you might be able to bypass the safeties but what you have is not workable!"

                The build volume is enclosed. Even without the enclosed build volume, I've been printing PLA without issue, but I have to manually override the heating commands to get the bed up to temp - I would like to have the firmware take control for me, as it is designed to do. Thermal losses do not hamper this machine like you might be thinking - I don't entirely know if I'm missing something or not, but the bed is VERY stable with a cooling fan - much moreso than the other 5 machines I have.

                jens55undefined 1 Reply Last reply Reply Quote 0
                • NitroFreakundefined
                  NitroFreak
                  last edited by

                  Wait, isn´t the Objet a Polyjet machine that prints with resin?
                  Can you share a picture?

                  tjhintonundefined 2 Replies Last reply Reply Quote 0
                  • tjhintonundefined
                    tjhinton @jens55
                    last edited by

                    @jens55

                    The build plate is 330 x 340 x 35mm. Basically solid. Top plate is a milled/ground slab of aluminum with a pocket on its bottom for the heater. The bottom half is the "lifter" plate (also aluminum) and is fixed to 3 leadscrews.

                    1 Reply Last reply Reply Quote 0
                    • Phaedruxundefined
                      Phaedrux Moderator
                      last edited by

                      @Phaedrux said in Heavy Aluminum bed too slow for autotune.:

                      https://duet3d.dozuki.com/Wiki/Tuning_the_heater_temperature_control#main

                      Maybe you missed my post?

                      If auto tuning fails with a message that the temperature is not rising fast enough, this indicates that either you are using too low a P value in the M303 command, or the dead time in the existing model is much too low for your heater. You can increase the dead time using the M307 command. For example, sending M307 H0 D30 will increase the dead time to 30 seconds. The actual dead time will be known after a successful auto tuning.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      tjhintonundefined 1 Reply Last reply Reply Quote 0
                      • tjhintonundefined
                        tjhinton @NitroFreak
                        last edited by

                        @NitroFreak

                        It is. I've removed the polyjet head from a broken objet and put ... lol ... a prusa i3 mk3s extruder I had lying around on it.

                        1 Reply Last reply Reply Quote 0
                        • tjhintonundefined
                          tjhinton @Phaedrux
                          last edited by

                          @Phaedrux

                          Is that supposed to say D value or P value?

                          I've set my D value to 600 and had no luck.

                          Phaedruxundefined 1 Reply Last reply Reply Quote 0
                          • Phaedruxundefined
                            Phaedrux Moderator @tjhinton
                            last edited by

                            @tjhinton You may need to use an extreme value for D for the initial tuning. 99999. Once it tunes successfully once you'll have the actual D value.

                            And yes, it looks like there is a typo in that section. P=D. I'll fix that, thanks.

                            Z-Bot CoreXY Build | Thingiverse Profile

                            Phaedruxundefined tjhintonundefined 2 Replies Last reply Reply Quote 0
                            • Phaedruxundefined
                              Phaedrux Moderator @Phaedrux
                              last edited by

                              @Phaedrux said in Heavy Aluminum bed too slow for autotune.:

                              And yes, it looks like there is a typo in that section. P=D. I'll fix that, thanks.

                              Actually, no. That's not a typo. The P value is the PWM value. And it's saying that having a reduced PWM value can also cause that error message to occur.

                              Z-Bot CoreXY Build | Thingiverse Profile

                              tjhintonundefined 1 Reply Last reply Reply Quote 0
                              • tjhintonundefined
                                tjhinton @Phaedrux
                                last edited by

                                @Phaedrux

                                Even with an extreme D value, I get "auto tune cancelled because temperature is not falling"

                                This is because the bed heater turns off, but heat is still diffusing outward toward that peripheral thermistor. There's a delay before the temp starts to drop appreciably.

                                1 Reply Last reply Reply Quote 0
                                • tjhintonundefined
                                  tjhinton @Phaedrux
                                  last edited by

                                  @Phaedrux

                                  For reference, I'm at P1, or 100% PWM. and it's an SSR, so I wouldn't want to PWM it fast anyway for M303, right?

                                  Phaedruxundefined 1 Reply Last reply Reply Quote 0
                                  • tjhintonundefined
                                    tjhinton @NitroFreak
                                    last edited by

                                    @NitroFreak

                                    Image of the machine.
                                    objetFFF.jpeg

                                    1 Reply Last reply Reply Quote 0
                                    • Phaedruxundefined
                                      Phaedrux Moderator @tjhinton
                                      last edited by

                                      @tjhinton Well there's two parts to that. There is the PWM duty cycle and the PWM frequency. 100% duty cycle is what you should be using (and sounds like you are.) Frequency is 10hz by default I believe, which should be perfectly fine for an SSR.

                                      Is there any way to move/add a thermistor to be in closer contact to the heating pad rather than just at the edge of the plate? Having a tighter feedback loop would probably solve your problem.

                                      Z-Bot CoreXY Build | Thingiverse Profile

                                      tjhintonundefined 1 Reply Last reply Reply Quote 0
                                      • jens55undefined
                                        jens55 @tjhinton
                                        last edited by

                                        @tjhinton said in Heavy Aluminum bed too slow for autotune.:

                                        "There are a couple of things that will catch you right away - generally, the first layer is put down with extra bed temperature. In your case you have zero control over the bed temperature as shutting off the heater will not drop the temperature in a reasonable amount of time."
                                        My understanding is that tuning catches this, assuming you do it right and set up the tune in an appropriately controlled situation - such as in an enclosed print volume.

                                        No, tuning assumes that the heater has some real control, that the bed cools when you remove power and that it heats when you apply power. What you have is a giant hunk of aluminum that does what it wants and only takes slight hints from the heater.

                                        If you are not doing FFF then all my comments do not apply !

                                        1 Reply Last reply Reply Quote 0
                                        • tjhintonundefined
                                          tjhinton @Phaedrux
                                          last edited by

                                          @Phaedrux

                                          I could do that. And I've thought that it would fix my issue. It's not simple to do. But it would mean the edge temp of the bed isn't correct, and it's not addressing the underlying problem - I can't use a bed that's lagging. That should be possible, right? All beds lag to some extent. I'm just outside the tolerance of M303 as is.

                                          1 Reply Last reply Reply Quote 0
                                          • Phaedruxundefined
                                            Phaedrux Moderator
                                            last edited by

                                            Yes you would be trading one problem for another, but the new problem can be worked around more easily.

                                            Personally, I think the heater control loop should be as tight as possible to the heat source. That allows for best control of the actual heater. In order to compensate for the lag time of heat saturation of the large plate you can simply add a wait time. The amount of time needed can be measured and should stay constant. That could be handled with a simple G4 dwell command in your startup gcode or preheat macro.

                                            With RRF3 and the ability to use conditional gcode and sensor pins, you could use both thermistors in tandem and control the heater pad with one, and then wait to start the print when the plate is at the right temp.

                                            Z-Bot CoreXY Build | Thingiverse Profile

                                            tjhintonundefined 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA