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

    How to pid test using 2 thermistors on the heated bed?

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    2
    5
    283
    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.
    • RodrigoRMaraujoundefined
      RodrigoRMaraujo
      last edited by RodrigoRMaraujo

      I just installed a second sensor on the edge of my 350x350x8mm table to have better control, to start prints only when the temperature of the entire table has stabilized. I use a 750W 220V fysect silicone pad.
      I made this configuration in config.g but I'm not having success with the pid test, as it always passes 126C in the pad's thermistor and this is dangerous, it could burn the pad.
      What should I do? Do I have to fix something or test differently? My attempts used "M303 H0 S110" in RRF3.3 (duet wifi + duex5).
      Can anyone help me with this?
      Grateful.

      M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 A"Bed Pad"   ; configure sensor 0 as thermistor on pin bedtemp (pad sensor)
      M308 S2 P"e1temp" Y"thermistor" T100000 B3950 A"Bed Plate"  ; configure sensor 2 as thermistor on pin e1temp (plate sensor)
      M950 H0 C"bedheat" T2 Q10                                   ; create bed heater output on out0 and map it to sensor 2 (plate sensor). Set PWM frequency to 10Hz
      M140 P0 H0                                                  ; Mark heater H0 as bed heater (for DWC)
      M143 H0 P1 T0 A2 S115 C0                                    ; Regulate (A2) bed heater (H0) to have pad sensor (T0) below 115°C. Use Heater monitor 1 for it
      M143 H0 P2 T0 A1 S115 C0                                    ; Shut off (A1) bed heater (H0) if pad sensor (T0) exceeds 120°C. Use Heater monitor 2 for it
      M143 H0 S120                                                ; Set bed heater max temperature to 120°C, use implict monitor 0 which is implicitly configured for heater fault
      

      @alex-cr Thank you friend. I will compare the commands and apply. I will bring the result. (I had to write here because the forum was giving an error to write answers, I don't know why)

      Alex.crundefined RodrigoRMaraujoundefined 2 Replies Last reply Reply Quote 0
      • Alex.crundefined
        Alex.cr @RodrigoRMaraujo
        last edited by Alex.cr

        @rodrigormaraujo

        Here is my code for doing exactly what you are looking for.

        Maybe you need an M307 command to disable bang bang, and I believe the order for M143 commands has some dependencies but your code looks very close.

        
        ; Heaters
        ;bed heater - dual sensor config 
        ;hex stud thermistor: https://www.amazon.com/gp/product/B07Q5MKSLS/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1
        M308 S0 P"0.temp0" Y"thermistor" T100000 B3950 C0.0 A"Build Plate Temp" ; configure sensor 0 as thermistor on pin temp0 
        ;Built in Keenovo sensor
        M308 S1 P"0.temp1" Y"thermistor" T100000 B4725 C7.06e-8 A"Bed Heater Temp" ; configure sensor 0 as thermistor on pin temp1
        M950 H0 C"0.out0" T0 Q60                                ; create bed heater output on out0 and map it to sensor 0
        M307 H0 B0 S1.0                                   ; disable bang-bang mode for the bed heater and set PWM limit
        ;M307 H0 R0.450 C420.1 D1.06 S1.00 
        M307 H0 R0.153 C1735.5 D31.48 S1.00 
        M140 H0                                            ; map heated bed to heater 0
        M143 H0 S120                                       ; set temperature limit for build plate to 120C
        M143 H0 T1 P1 S125 A2                             ; Monitor heater thermistor, if temp goes above 125C temporarily turn off
        M143 H0 T1 P2 S132 A3                             ; Monitor heater thermistor, if temp goes above 132C cut "atx" supply
        
        

        Voron2.4/Duet3 SBC+6HC+3HC+1LC+1HCL(x2) - Delta/Duet2 Wifi - CubePro/Duet2 Wifi+Duex5 - Laser/Duet3 Mini5+ - Cel Robox - U̶p̶3̶0̶0̶+/D̶u̶e̶t̶3̶ ̶6̶H̶C̶+̶LC1̶ - F̶T̶-̶5̶/̶D̶u̶e̶t̶2̶ ̶W̶i̶f̶i̶ - S̶o̶l̶i̶d̶o̶o̶d̶l̶e̶

        RodrigoRMaraujoundefined 2 Replies Last reply Reply Quote 1
        • RodrigoRMaraujoundefined
          RodrigoRMaraujo @Alex.cr
          last edited by

          @alex-cr Thanks man!

          1 Reply Last reply Reply Quote 0
          • RodrigoRMaraujoundefined
            RodrigoRMaraujo @RodrigoRMaraujo
            last edited by

            After a long time testing, I got error. After a long time testing, I got error. Almost 1 hour of pid testing.

            08/09/2021 23:25:27 Warning: Auto tune of heater 0 failed due to bad curve fit (R=0.076, 1/C=-0.0145:-0.0145, D=39.1)
            08/09/2021 22:55:12 Auto tune starting phase 4, tuning with fan off
            08/09/2021 22:29:01 Auto tune starting phase 3, heating system settling
            08/09/2021 22:27:05 M303 H0 S100 P0.5 A98
            Auto tune starting phase 2, heating up
            Auto tuning heater 0 using target temperature 100.0°C and PWM 0.50 - do not leave printer unattended

            1 Reply Last reply Reply Quote 0
            • RodrigoRMaraujoundefined
              RodrigoRMaraujo @Alex.cr
              last edited by

              @alex-cr I made some modifications for myself but your script served as the basis. It worked great, thanks!

              ;Bed edge sensor
              M308 S0 P"e1temp" Y"thermistor" T100000 B3950 C0.0 A"Sensor borda" ; configure sensor 0 as thermistor on pin temp0 
              ;Sensor on silicone pad
              M308 S2 P"bed_temp" Y"thermistor" T100000 B3950 C0.0 A"Sensor PAD" ; configure sensor 0 as thermistor on pin temp1
              M950 H0 C"bed_heat" T0 Q60                                ; create bed heater output on out0 and map it to sensor 0
              M307 H0 B0 S0.6                                   ; disable bang-bang mode for the bed heater and set PWM limit
              M140 P0 H0                                            ; map heated bed to heater 0
              M143 H0 S120                                       ; set temperature limit for build plate to 120C
              M143 H0 T2 P1 S120 A2                             ; Monitor heater thermistor, if temp goes above 125C temporarily turn off
              M143 H0 T2 P2 S126 A3                             ; Monitor heater thermistor, if temp goes above 126C cut "atx" supply
              M307 H0 B0 R0.144 C1979.0 D43.36 S0.60 V24.0      ; pid test 09/09/2021
              
              1 Reply Last reply Reply Quote 0
              • First post
                Last post
              Unless otherwise noted, all forum content is licensed under CC-BY-SA