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

    Heater Overshoot

    Scheduled Pinned Locked Moved
    General Discussion
    3
    12
    529
    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.
    • p8blrundefined
      p8blr
      last edited by p8blr

      Hello, I built another printer with essentially the same parts as my other printers, and I've been having a lot of trouble tuning the PIDs. On my other printers the autotuning worked perfectly, but now I keep getting overshooting errors. I thought at first it might be because I was running 3.4.2rc3+, but after rolling back to 3.4.1, I'm still having the same issues.

      Duet 3 6HC
      (2) Toolboards 1LC V1.2
      BMG-X2-M Extruder
      (1) Mosquito Hotend
      (1) Mosquito Mangum Hotend
      Slice Engineering 300C Thermistors
      Slice Engineering 50W Heater Cartridges
      24V 15A Power Supply

      I get this issue on both hotends, but this is an example:
      Heater 1 fault: exceeded allowed temperature excursion: target 240.0°C actual 256.5°C

      I'm running M303 S240 T0 (or T1) to tune.

      Also, I'll add that when I try to PID tune the bed (M303 H0 S80) I get the error: "Warning: heater behavior was not consistent during tuning. Auto tuning heater 0 completed after 3 idle and 25 tuning cycles in 4673 seconds. This heater needs the following M307 command: M307 H0 R0.252 K0.107:0.000 D2.30 E1.35 S1.00 B0."

      My config file is attached here:
      config.g

      jay_s_ukundefined 1 Reply Last reply Reply Quote 0
      • jay_s_ukundefined
        jay_s_uk @p8blr
        last edited by

        @p8blr what thermistors are you using?

        Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

        p8blrundefined 1 Reply Last reply Reply Quote 0
        • p8blrundefined
          p8blr @jay_s_uk
          last edited by p8blr

          @jay_s_uk Oops, I forgot to mention that. I edited my original post, but it's these in the 300C version:
          https://www.sliceengineering.com/products/thermistor-high-temperature

          jay_s_ukundefined 1 Reply Last reply Reply Quote 1
          • jay_s_ukundefined
            jay_s_uk @p8blr
            last edited by

            @p8blr

            ; Configuration file for Duet 3 MB 6HC (firmware version 3.3)
            ; executed by the firmware on start-up
            ;
            ; generated by RepRapFirmware Configuration Tool v3.3.12 on Tue Aug 30 2022 09:58:31 GMT-0500 (Central Daylight Time)
            
            ; General preferences
            M575 P1 S1 B57600                                            ; enable support for PanelDue
            G90                                                          ; send absolute coordinates...
            M83                                                          ; ...but relative extruder moves
            M550 P"TXTADDMN01"                                           ; set printer name
            M669 K1                                                      ; select CoreXY mode
            
            ; Wait a moment for the CAN expansion boards to start
            G4 S2
            
            ; Network
            M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP
            M586 P0 S1 ; enable HTTP
            M586 P1 S0 ; disable FTP
            M586 P2 S0 ; disable Telnet
            
            ; Drives
            M569 P0.0 S1                                                 ; physical drive 0.0 goes forwards (Z)
            M569 P0.1 S1                                                 ; physical drive 0.1 goes forwards (R motor)
            M569 P0.2 S1                                                 ; physical drive 0.2 goes forwards (L motor)
            M569 P21.0 S1                                                ; physical drive 21.0 goes forwards
            M569 P22.0 S0                                                ; physical drive 22.0 goes forwards
            M584 X0.1 Y0.2 Z0.0 E21.0:22.0                               ; set drive mapping
            M350 X16 Y16 Z16 E16:16 I1                                   ; configure microstepping with interpolation
            M92 X80.00 Y80.00 Z1600.00 E434.6:434.6                          ; set steps per mm
            M566 X600.00 Y600.00 Z60.00 E120.00:120.00                   ; set maximum instantaneous speed changes (mm/min)
            M203 X18000.00 Y18000.00 Z600.00 E1500.00:1500.00            ; set maximum speeds (mm/min)
            M201 X3000.00 Y3000.00 Z100.00 E1000.00:1000.00              ; set accelerations (mm/s^2)
            M906 X1200 Y1200 Z1200 E500:500 I30                          ; set motor currents (mA) and motor idle factor in per cent
            M84 S30                                                      ; Set idle timeout
            
            ; Axis Limits
            M208 X-15 Y0 Z0 S1                                             ; set axis minima
            M208 X240 Y290 Z300 S0                                       ; set axis maxima
            
            ; Endstops
            M574 X1 S1 P"21.io0.in"                                     ; configure switch-type (e.g. microswitch) endstop for low end on X via pin 21.io0.in
            M574 Y1 S1 P"io3.in"                                         ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io3.in
            M574 Z1 S2                                                   ; configure Z-probe endstop for low end on Z
            
            ; Z-Probe
            M950 S0 C"22.io0.out"                                       ; create servo pin 0 for BLTouch
            M558 P9 C"22.io0.in" H2 F1000:200 T12000              ; set Z probe type to bltouch and the dive height + speeds
            G31 P500 X7.5 Y-22.6 Z4                                    ; set Z probe trigger value, offset and trigger height
            
            ; Heaters
            M308 S0 P"temp0" Y"thermistor" T100000 B4725 C7.06e-8        ; configure sensor 0 as thermistor on pin temp0 bed
            M950 H0 C"out0" T0                                           ; create bed heater output on out0 and map it to sensor 0
            M307 H0 R0.257 K0.222:0.000 D2.30 E1.35 S1.00 B0             ; disable bang-bang mode for the bed heater and set PWM limit
            M140 H0                                                      ; map heated bed to heater 0
            M143 H0 S100                                                 ; set temperature limit for heater 0 to 100C
            M308 S1 P"21.temp0" Y"thermistor" T100000 B4680 C6.455513e-8 ; configure sensor 1 as thermistor on pin 21.temp0
            M950 H1 C"21.out0" T1                                       ; create nozzle heater output on 21.out0 and map it to sensor 1
            M307 H1 R5.256 K0.444:0.226 D12.00 E1.35 S1.00 B0 V24.4     ; disable bang-bang mode for heater  and set PWM limit
            M143 H1 S320                                                 ; set temperature limit for heater 1 to 300C
            M308 S2 P"22.temp0" Y"thermistor" T100000 B4680 C6.455513e-8 ; configure sensor 2 as thermistor on pin 22.temp0
            M950 H2 C"22.out0" T2                                       ; create nozzle heater output on 22.out0 and map it to sensor 2
            M307 H2 R5.302 K0.379:0.097 D9.58 E1.35 S1.00 B0 V23.7        ; disable bang-bang mode for heater  and set PWM limit
            M143 H2 S320                                                 ; set temperature limit for heater 2 to 300C
            
            ; 3 point bed leveling
            ; front left (0,0)
            ; back middle (75,120)
            ; front right (150,0)
            ; thread pitch 0.7mm
            M671 X-8.1:247.5:122.5 Y267.4:267.4:0 P0.7
            
            ; Fans
            M950 F0 C"22.out2" Q500                                     ; create fan 0 on pin 22.out2 and set its frequency
            M106 P0 S255 X127  H1:2 C"Heatsink Fan"                         ; set fan 0 value. Thermostatic control is turned on was T45 H1:2
            M950 F1 C"22.out1" Q500                                     ; create fan 1 on pin 22.out1 and set its frequency
            M106 P1 S0 H-1 C"Part Cooling Fan"                                          ; set fan 1 value. Thermostatic control is turned off
            
            ; Tools
            M563 P0 S"Left 0.4mm" D0 H1 F0:1                             ; define tool 0
            G10 P0 X0 Y0 Z0                                              ; set tool 0 axis offsets
            G10 P0 R0 S0                                                 ; set initial tool 0 active and standby temperatures to 0C
            M563 P1 S"Right 1.2mm" D1 H2 F0:1                            ; define tool 1
            G10 P1 X15 Y0 Z0                                             ; set tool 1 axis offsets
            G10 P1 R0 S0                                                 ; set initial tool 1 active and standby temperatures to 0C
            
            ; Custom settings are not defined
            
            M280 P0 S90 ;Retract Probe
            

            Config in easier to read format

            Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

            jay_s_ukundefined 1 Reply Last reply Reply Quote 0
            • jay_s_ukundefined
              jay_s_uk @jay_s_uk
              last edited by

              @p8blr said in Heater Overshoot:

              M308 S1 P"21.temp0" Y"thermistor" T100000 B4680 C6.455513e-8

              How did you arrive at these settings for the thermistor?

              Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

              p8blrundefined 1 Reply Last reply Reply Quote 0
              • p8blrundefined
                p8blr @jay_s_uk
                last edited by

                @jay_s_uk Scroll about halfway down on this page to the Duet/ReprapFirmware section for the 300C Thermistor:
                https://support.sliceengineering.com/portal/en/kb/articles/how-do-i-update-my-firmware-to-be-compatible-with-the-high-temperature-thermistor#300C_High_Temperature_Thermistor

                T1 = 25 R1 = 100000
                T2 = 85 R2 = 9094
                T3 = 300 R3 = 82.78

                Then using https://configtool.reprapfirmware.org/Heaters and a custom configuration using those values, gives this:

                from config tool.PNG

                jay_s_ukundefined 1 Reply Last reply Reply Quote 0
                • jay_s_ukundefined
                  jay_s_uk @p8blr
                  last edited by

                  @p8blr hmmm i see.
                  You could try without the 3rd pair. So setting the 2nd value to 240 degrees (210.4), you would get
                  M308 S1 P"21.temp0" Y"thermistor" T100000 B4386

                  Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

                  p8blrundefined 1 Reply Last reply Reply Quote 0
                  • p8blrundefined
                    p8blr @jay_s_uk
                    last edited by

                    @jay_s_uk I tried commenting that out and still got this error:

                    Heater 1 fault: exceeded allowed temperature excursion: target 240.0°C actual 257.5°C

                    jay_s_ukundefined deckingmanundefined 2 Replies Last reply Reply Quote 1
                    • jay_s_ukundefined
                      jay_s_uk @p8blr
                      last edited by

                      @p8blr not much else I can suggest then. Could be that thermistor is difficult to read due to how low the resistance goes when it gets warm.

                      Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

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

                        @p8blr Does it tune OK? Is the heater cartridge over powered - i.e. might it be a 12V cartridge on a 24V system?

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

                        p8blrundefined 1 Reply Last reply Reply Quote 1
                        • p8blrundefined
                          p8blr @deckingman
                          last edited by

                          @deckingman OMG that's got to be it! I feel so stupid... I totally forgot that I changed from a 12V to 24V PSU... Thanks so much!

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

                            @p8blr said in Heater Overshoot:

                            @deckingman OMG that's got to be it! I feel so stupid... I totally forgot that I changed from a 12V to 24V PSU... Thanks so much!

                            Don' feel stupid - to err is human so we all make mistakes from time to time. Your 50W 12V heater will actually be 200W when you feed it 24V so that'll explain why it overshoots - I bet it reaches temperature pretty quickly though 🙂

                            Don't be tempted to try and tame it by reducing the PWM value. Whilst 25% PWM would mean that it's on for 25% of the time and off for 75%, it'll still be getting full power when it's on and if a Mosfet failed "On", things will get very hot, very quickly.

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

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