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

    Heater Control

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    7
    44
    9.8k
    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.
    • Toddimusundefined
      Toddimus
      last edited by

      I was able to get my E3D V6 heater to auto tune after reducing the max PWM level to 0.3 and setting the max temp to 260 so:
      M303 H1 P0.3 S260 yielded:

      M307 H1
      Heater 1 model: gain 732.3, time constant 176.9, dead time 4.1, max PWM 1.00, in use: yes, mode: PID
      Setpoint change: P10.6, I0.06, D30.2
      Load change: P10.6, I1.30, D30.2

      I also got this message:
      Warning: Heater 1 appears to be over-powered and a fire risk! If left on at full power, its temperature is predicted to reach 752C.
      Auto tune heater 1 with PWM=0.30 completed in 500 sec, maximum temperature reached 228.2C
      Use M307 H1 to see the result

      Sounds scary, but I realize it is a pretty powerful heater. I'm running the 12V E3D cartridge at 15VDC.

      Now, I try to auto tune my bed heater (Rostock Max V2 12V heater, with an aluminum heat spreader from Trick Laser under the stock glass plate). I tried a few settings but none seemed to work.

      The last one I tried was:
      M303 H0 P1.0 S140
      And I got this message about 30 seconds later:
      Auto tune cancelled because temperature is not increasing

      I realize the bed heater is underpowered and has a lot of thermal capacity with the heat spreader. Any way to increase the timeout for temperature increase so I can get it to auto tune?

      EDIT – I think I may have found a solution!! I sent:
      M307 B0 H0 D60
      to set the dead time to 60 seconds. Curiously, it didn't actually show up as received on the DWC interface, like the other commands seem to do... but it set it nonetheless.

      When I ran:
      M307 H0, it seemed to have updated the dead time to 60.

      Tuning the bed heater now....

      1 Reply Last reply Reply Quote 0
      • elmoretundefined
        elmoret
        last edited by

        A 12v/40w heater would produce 62.5w at 15v. I'd predict that to reach around 650C based on my experience, so that model is not too far off from the truth.

        1 Reply Last reply Reply Quote 0
        • dc42undefined
          dc42 administrators
          last edited by

          I have further updated the wiki page on tuning, including replacing "a few minutes" by "between five and ten minutes".

          Aussiephil, if the temperature overshoots the maximum you specified during tuning then you need to do exactly what the message says, i.e. reduce P or increase S in the tuning command. As a very rough guide, a 30W heater run at its rated voltage is good with P=0.5 and the PWM required is inversely proportional to heating power. Your heater is 60W so I would expect a P value of around 0.25 to work. However, if the Dyzend hot end has lower heat loss to the environment than the E3Dv6 has, you may need to further reduce P to 0.2 or even 0.15. Also, if you are running your heater at more than its rated voltage, then you will need to reduce P some more, because heater power goes as the square of the voltage.

          I agree that auto tuning a powerful hot end is not as simple as it should be, and in the longer term I will change the tuning mechanism to use both a heating phase and a cooling phase, so that the PWM used is much less critical. But I don't have time to work through the maths and implement that right now; so I have released 1.15 with the existing tuning mechanism.

          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 0
          • StephenRCundefined
            StephenRC
            last edited by

            Now I'm getting H1 temperature faults. First one: part blower fans cooled the hotend too much while it started printing the second set of a top layer on the printed part, didn't fault on the larger earlier one. To test to see if it was the fans, I turned on them on with the nozzle next to the bed, sure enough the part cooling fans cooled it off enough for it to fault. Temporary fix: removed one of the blowers. They've always dropped the temp, but it always recovered.

            Then it did it again when the temp was dropped 5C after the first layer was done. Printing PETG, first layer 255C, after that 250C. No problems with PLA, which used 198C first layer, 195C after.

            Gone back to 1.14 where it never had this problem.

            Genuine 1.75mm E3DV6 with a 24vdc 40watt heater. Heatblock not insulated. Slic3r 1.30-dev.

            1 Reply Last reply Reply Quote 0
            • dc42undefined
              dc42 administrators
              last edited by

              Stephen, are you running the 1.15 release or one of the release candidates? I increased the allowed temperature variation from 5 to 8C in the later versions.

              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 0
              • Toddimusundefined
                Toddimus
                last edited by

                Quick update…

                Using the 1.15 rc3 firmware, I was able to tune my heated bed after increasing the dead time parameter. I did 4 tuning runs on the hot end and 2 runs on the bed. They gave very consistent results, which I averaged and put into the M307 lines in my config.g file.

                I now have the hot end and bed calibrated and they seem to work really well! Overshoot on the both the bed and hot end is maybe 0.5 deg C max. Once stabilized, they stay very consistent.

                I also updated to the latest release 1.15 and DWC and webserver files.

                Good job dc42 and chrishamm!

                1 Reply Last reply Reply Quote 0
                • StephenRCundefined
                  StephenRC
                  last edited by

                  @dc42:

                  Stephen, are you running the 1.15 release or one of the release candidates? I increased the allowed temperature variation from 5 to 8C in the later versions.

                  It was the 1.15 release. Upgraded it before switching the filament to PETG and the hotend heated up fine for the swap.

                  1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators
                    last edited by

                    @StephenRC:

                    @dc42:

                    Stephen, are you running the 1.15 release or one of the release candidates? I increased the allowed temperature variation from 5 to 8C in the later versions.

                    It was the 1.15 release. Upgraded it before switching the filament to PETG and the hotend heated up fine for the swap.

                    How much temperature drop do the blowers cause then?

                    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 0
                    • dc42undefined
                      dc42 administrators
                      last edited by

                      I have had a couple of reports of heat creep still occurring with the 1.15 release firmware for the wired Duets. I suspect this was being caused by spikes in the temperature sensor reading, so I have built a 1.15a binary to address this possibility. The Duet WiFi binary is here https://dl.dropboxusercontent.com/u/19369680/DuetWiFiFirmware.bin. Also in this version I have further increased the maximum allowed temperature deviation in the steady state before a fault is reported to 10C, which I hope will help with StephenRC's issue when the blower fans are turned on.

                      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 0
                      • StephenRCundefined
                        StephenRC
                        last edited by

                        @dc42:

                        @StephenRC:

                        @dc42:

                        Stephen, are you running the 1.15 release or one of the release candidates? I increased the allowed temperature variation from 5 to 8C in the later versions.

                        It was the 1.15 release. Upgraded it before switching the filament to PETG and the hotend heated up fine for the swap.

                        How much temperature drop do the blowers cause then?

                        Put the second blower back on and ran the tests:
                        Bed heater off.

                        With 1.14 with no M301, set to 250C, Blowers at 100%, nozzle at bed, it dropped to 244.8C and held there +- a few tenths.

                        With 1.15 with M307 H1 A483.6 C120.3 D4.8, Blowers at 100%, nozzle at bed, it dropped to 242.1C, then increased very, very slowly.

                        Did another auto-tune with M303 H1 P0.2 S250 after it cooled down, and got M307 H1 A472.2 C119.1 D4.9, Blowers at 100%, nozzle at bed, it dropped to 242.9C, then increased very, very slowly.

                        Just realized I never mentioned that this is on a Duet 0.8.5.

                        1 Reply Last reply Reply Quote 0
                        • dc42undefined
                          dc42 administrators
                          last edited by

                          Thanks, Stephen, now I know what I am dealing with. Thank you for your patience.

                          I found that even with the 1.15a release, you could still get temperature creep if you have a noisy thermistor channel and were using legacy PID parameters. I've fixed that in release 1.15b, available on github at https://github.com/dc42/RepRapFirmware/tree/dev/Release.

                          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 0
                          • StephenRCundefined
                            StephenRC
                            last edited by

                            I printed that part again with 1.15a. Printing PETG at 250C, when the blowers came on the first time it dropped to 243.7C, it increased a few tenths of a C while printing the first solid top layer layer and it didn't get back to 250C until they turned off. The second time it dropped to 242.7C, and also the temp didn't get back to 250C until they turned off.

                            1 Reply Last reply Reply Quote 0
                            • RCarlyleundefined
                              RCarlyle
                              last edited by

                              Update running 1.15b – pressing the PanelDue reset button fixes it temporarily. When I power cycle, the PanelDue gets stuck on "Starting up" and I have to press the reset button to get it to connect.

                              Found a text error in the gcode console:

                              11:01:20 PM
                              M303
                              Heater 1 tuning succeeded, use M207 H1 to see result

                              On picking P values… would it be possible to auto-tune that too? Turn on the heater at 100% power, wait through the dead time, measure the heat-up curve slope, and ballpark a P value that gives a reasonable slope? Then cool back down and restart. Yeah, that takes considerably longer, but one longer run that works 99% of the time is preferable than needing multiple runs to dial in a good number, particularly on beds where there is more variability than hot ends.

                              1 Reply Last reply Reply Quote 0
                              • RCarlyleundefined
                                RCarlyle
                                last edited by

                                By the way, I REALLY appreciate the "heater appears to be overpowered" warning. It's going to lead to some good conversations and end-user concern. Really emphasizes the need for thermal fuses on high-power beds, for example. Auto-tune says my bed can hit 258C, which would be a pretty big problem since it's on ABS mounts. I do have a thermal fuse on it though.

                                1 Reply Last reply Reply Quote 0
                                • dc42undefined
                                  dc42 administrators
                                  last edited by

                                  @RCarlyle:

                                  Update running 1.15b – pressing the PanelDue reset button fixes it temporarily. When I power cycle, the PanelDue gets stuck on "Starting up" and I have to press the reset button to get it to connect.

                                  Found a text error in the gcode console:

                                  11:01:20 PM
                                  M303
                                  Heater 1 tuning succeeded, use M207 H1 to see result

                                  On picking P values… would it be possible to auto-tune that too? Turn on the heater at 100% power, wait through the dead time, measure the heat-up curve slope, and ballpark a P value that gives a reasonable slope? Then cool back down and restart. Yeah, that takes considerably longer, but one longer run that works 99% of the time is preferable than needing multiple runs to dial in a good number, particularly on beds where there is more variability than hot ends.

                                  In future I plan to use a heating phase, a cooling phase, and then a steady temperature phase. This will be somewhat faster than the approach you suggest. But the maths is more complex and I need to work that out; also I want to resolve any issues with temperature control first.

                                  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 0
                                  • mhackneyundefined
                                    mhackney
                                    last edited by

                                    dc42 1.15c firmware. My first attempts at auto tuning the hot end on a printer that has been running this hotend (E3D v6 with 12V cartridge) for several years without fail.

                                    I started with P0.5 and that overshot (S240) P0.4 and P0.3 the same. Then P0.2 gave this:

                                    M303 H1 P0.2 S240

                                    1:36:48 PMWarning: Heater 1 appears to be over-powered and a fire risk! If left on at full power, its temperature is predicted to reach 882C.
                                    Auto tune heater 1 with PWM=0.20 completed in 824 sec, maximum temperature reached 195.5C
                                    Use M307 H1 to see the result

                                    This is a stock E3D v6 setup with a stock 12V supply putting out 12.45VDC. Any suggestions or explanations appreciated.

                                    cheers,
                                    Michael

                                    My 3D Printing blog: http://www.sublimelayers.com
                                    Coming this summer: "3D Printing Strategies - the art of perfecting your designs and prints"

                                    1 Reply Last reply Reply Quote 0
                                    • dc42undefined
                                      dc42 administrators
                                      last edited by

                                      Those results don't sound right. What M307 parameters did it return? Can you measure the resistance of the heater cartridge? Do you have any thermal insulation on your hot end?

                                      I believe E3D changed the power of the heaters they ship from 40W to 25W some time ago.

                                      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 0
                                      • mhackneyundefined
                                        mhackney
                                        last edited by

                                        This is a 40W cartridge that measures 3.6Ω, no insulation. Unfortunately, I did not check M307.

                                        I just reran it after waiting for it to cool to room temperature as:
                                        M303 H1 P0.25 S250

                                        Temperature increased gradually (I have a screen shot) and then get this message:
                                        Auto tune of heater 1 with P=0.25 S=250.0 cancelled because temperature limit exceeded. Use lower P or higher S in m303 command.

                                        I did an M307 H1:
                                        Heater 1 model: gain 862.3, time constant 296.2, dead time 6.9, max PWM 1.00, in use: yes, mode: PID
                                        Setpoint change: P8.9, I0.03, D42.9
                                        Load change: P8.9, I0.65, D42.9

                                        I'll rerun the P0.2 S240 and do an M307 this time.

                                        My 3D Printing blog: http://www.sublimelayers.com
                                        Coming this summer: "3D Printing Strategies - the art of perfecting your designs and prints"

                                        1 Reply Last reply Reply Quote 0
                                        • dc42undefined
                                          dc42 administrators
                                          last edited by

                                          So that's 43W at 12.45V. Your time constant found by tuning is about double the value I get, which suggests to me that either your hot end is better insulated than mine or your hot end heatsink cooling fan is not very effective. The combination of high heater power and long time constant explains the high gain and hence the warning message.

                                          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 0
                                          • mhackneyundefined
                                            mhackney
                                            last edited by

                                            It's a stock E3D V6 with standard cooling fan and shroud. I've measured the top of the cold zone and it is fine and I never get plugging with PLA. The parameters I use with the M301 are:

                                            M301 H1 P20 I0.27 D100 T1.1 S1 W300 B30

                                            (this is with 1.15-beta3) and worked fine. Hot end heated up quickly and stabilized. I have other printers I can update to the 1.15c firmware but they are Duet .85 controllers. Not sure what to do here with this one though.

                                            I did rerun the P0.2 S240 and got the same overpower warning and this time I dd the M307:

                                            M307 H1
                                            Heater 1 model: gain 884.2, time constant 296.0, dead time 6.8, max PWM 1.00, in use: yes, mode: PID
                                            Setpoint change: P8.7, I0.03, D41.8
                                            Load change: P8.7, I0.64, D41.8

                                            My 3D Printing blog: http://www.sublimelayers.com
                                            Coming this summer: "3D Printing Strategies - the art of perfecting your designs and prints"

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