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

    PID Controlled Heated Bed

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    5
    11
    499
    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.
    • deckingmanundefined
      deckingman @Corexy
      last edited by

      @Corexy Hi Mate,

      Looks like you are already using PID on the bed because the "B" parameter for H0 (the bed heater) is set to 0. For Bang-Bang you'd use B1.

      Ian
      https://somei3deas.wordpress.com/
      https://www.youtube.com/@deckingman

      Corexyundefined 1 Reply Last reply Reply Quote 0
      • Corexyundefined
        Corexy @deckingman
        last edited by Corexy

        @deckingman said in PID Controlled Heated Bed:

        @Corexy Hi Mate,

        Looks like you are already using PID on the bed because the "B" parameter for H0 (the bed heater) is set to 0. For Bang-Bang you'd use B1.

        True?! Cheers Ian.

        So I'll just run up the PID tuning via M303? I'm wondering how any residual plastic in my nozzle will handle 350 degC? I'll unload the filament at least.

        While I'm waiting for the hot end to cool, I'm running the bed test (M303 H1 S240). But I've left these as is for now, is that correct?

        M307 H0 A144.9 C625.3 D1.0 B0

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

          @Corexy said in PID Controlled Heated Bed:

          While I'm waiting for the hot end to cool, I'm running the bed test (M303 H1 S240). But I've left these as is for now, is that correct?
          M307 H0 A144.9 C625.3 D1.0 B0

          The D1.0 value looks rather low for a bed heater, but not impossible for a silicone heater with the thermistor embedded within it. Is the bed temperature stable, or oscillating?

          The A and C values look reasonable.

          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

          Corexyundefined 1 Reply Last reply Reply Quote 0
          • Corexyundefined
            Corexy @dc42
            last edited by

            @dc42 said in PID Controlled Heated Bed:

            @Corexy said in PID Controlled Heated Bed:

            While I'm waiting for the hot end to cool, I'm running the bed test (M303 H1 S240). But I've left these as is for now, is that correct?
            M307 H0 A144.9 C625.3 D1.0 B0

            The D1.0 value looks rather low for a bed heater, but not impossible for a silicone heater with the thermistor embedded within it. Is the bed temperature stable, or oscillating?

            The A and C values look reasonable.

            It's always been pretty solid to be honest. I've been chasing a bit of Z banding from the start when I built it, but it's starting to look like it might be mechanical.

            I'm running M307 H0 S140 on the bed right now, so my understanding is that I run M307 H0 to see the test results, then M500 to save them in the config.g?

            1 Reply Last reply Reply Quote 0
            • Corexyundefined
              Corexy
              last edited by Corexy

              This is what I got:

              M307 H0
              Heater 0 model: gain 149.3, time constant 841.4, dead time 0.4, max PWM 1.00, calibration voltage 23.6, mode PID, inverted no, frequency default
              Computed PID parameters for setpoint change: P2289.7, I119.068, D704.4
              Computed PID parameters for load change:

              M307 H1
              Heater 1 model: gain 589.7, time constant 308.5, dead time 4.4, max PWM 1.00, calibration voltage 23.9, mode PID, inverted no, frequency default
              Computed PID parameters for setpoint change: P21.0, I0.568, D65.4
              Computed PID parameters for load change: P21.

              It would seem that M500 didn't work?

              M500
              Warning: No M501 command was executed in config.g

              DIY-O-Sphereundefined 1 Reply Last reply Reply Quote 0
              • DIY-O-Sphereundefined
                DIY-O-Sphere @Corexy
                last edited by DIY-O-Sphere

                @Corexy
                The parameters are stored to config-override.g
                But you have to put a M501 at the end of config.g to read them.

                Edit:
                https://duet3d.dozuki.com/Wiki/Gcode#Section_M500_Store_parameters

                (UTC+1)

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

                  Alternatively, copy the new M307 parameters to your M307 command in config.g.

                  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
                  • Corexyundefined
                    Corexy
                    last edited by

                    M307 H0
                    Heater 0 model: gain 149.3, time constant 841.4, dead time 0.4, max PWM 1.00, calibration voltage 23.6, mode PID, inverted no, frequency default Computed PID parameters for setpoint change: P2289.7, I119.068, D704.4 Computed PID parameters for load change:

                    M307 H1
                    Heater 1 model: gain 589.7, time constant 308.5, dead time 4.4, max PWM 1.00, calibration voltage 23.9, mode PID, inverted no, frequency default Computed PID parameters for setpoint change: P21.0, I0.568, D65.4 Computed PID parameters for load change: P21.

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

                      It's easiest to save with M500 and then copy the actual parameter line from there rather than trying to reconstitute it from the text read out, or just add M501 to the end of config.g.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      1 Reply Last reply Reply Quote 0
                      • deckingmanundefined
                        deckingman @Corexy
                        last edited by

                        @Corexy said in PID Controlled Heated Bed:

                        M307 H0
                        Heater 0 model: gain 149.3, time constant 841.4, dead time 0.4, max PWM 1.00, calibration voltage 23.6, mode PID, inverted no, frequency default Computed PID parameters for setpoint change: P2289.7, I119.068, D704.4 Computed PID parameters for load change:

                        M307 H1
                        Heater 1 model: gain 589.7, time constant 308.5, dead time 4.4, max PWM 1.00, calibration voltage 23.9, mode PID, inverted no, frequency default Computed PID parameters for setpoint change: P21.0, I0.568, D65.4 Computed PID parameters for load change: P21.

                        Or............ A=gain, C= time Constant, D=Dead Time and optionally, S = PWM V=voltage. So M307 for heater 1 would be
                        M307 H1 A589.7 C308.5 D4.4 S1.0 V23.9 B0

                        Ian
                        https://somei3deas.wordpress.com/
                        https://www.youtube.com/@deckingman

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