How to pid test using 2 thermistors on the heated bed?
-
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)
-
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
-
@alex-cr Thanks man!
-
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 -
@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