PID Tuning



  • Hello

    I made PID tuning to my Bed Heater adn result is below.

    M307 H0
    Heater 0 model: gain 357.9, time constant 296.8, dead time 2.6, max PWM 1.00, mode: PID
    Computed PID parameters for setpoint change: P56.2, I0.189, D103.6
    Computed PID parameters for load change: P56.2, I5.737, D103.6
    13:36:26M307
    13:36:00Warning: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 382C.
    Auto tune heater 0 completed in 328 sec
    Use M307 H0 to see the result, or M500 to save the result in config-override.g
    13:31:27Auto tune phase 3, peak temperature was 72.2
    13:31:20Auto tune phase 2, heater off
    13:30:37Auto tune phase 1, heater on
    13:30:31M303 H0 S70
    Auto tuning heater 0 using target temperature 70.0C and PWM 1.00 - do not leave printer unattended

    so i created M307 H0 A357.9 C296.8 D2.6 S0.8 B0 this to adjust bed heater but where do i import it or what i have to do with this code???

    my config file is below

    ; Heaters
    M143 S260 ; Set maximum heater temperature to 260C
    M305 P0 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heater 0
    M305 P1 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heater 1



  • That would go in the config.g file as your Bed setting for the heater… here is mine.

    Hope it helps..

    ;Bed
    M143 H0 S120                        ; Set the maximum bed temperature in c-default is 110c
    M305 P0 T100000 B3974 C0 R4700      ; Bed thermistor
    M307 H0 A203.7 C745.2 D2.6  B0	    ;Set bed to use PID mode
    
    


  • so i just add the code i created after pid tuning and add the heater section. So how can i do another pid tuning to check if all ok after i insert pid test result şn config file?



  • I have a single hot end and a bed heater. I ran a tuning for each using an M303 H0 S120 (bed) and an M303 H1 S285 (hot end E3D). I then added the following to my config file.

    ; Thermistors and heaters --------------------------------
    ;Bed
    M143 H0 S120                        ; Set the maximum bed temperature in c-default is 110c
    M305 P0 T100000 B3974 C0 R4700      ; Bed thermistor
    M307 H0 A203.7 C745.2 D2.6  B0	    ;Set bed to use PID mode
    
    ;E3D
    M143 H1 S285                        	    ; Set the max temp of the hot-end in c-default is 280c
    M305 P1 T100000 B4725 C7.060000e-8 R4700	; E3D thermistor
    M307 H1 A324.6 C134.8 D3.7  B0				;Set E3D to use PID mode
    
    

    I believe if you run an M303 H1 or M303 H0 it will show you last tuning information.

    The wiki has good info. in it… https://www.duet3d.com/wiki/Tuning_the_heater_temperature_control

    VB,



  • i read wiki page about tuning but i didnt understand well i think.
    now my config file for heaters as below.

    after i added tuning result in the config file i made another tuning and it still give me heating risk because it can reach for example 500 degree. is that normal or something wrong??

    ; Heaters
    M143 S260 ; Set maximum heater temperature to 260C
    M143 H0 S100
    M305 P0 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heater 0
    M305 P1 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heater 1
    M307 H0 A239.2 C409.6 D2.4 B0 S0.8
    M307 H1 A812.9 C253.0 D4.5 B0 S0.4



  • Something is indeed very wrong. Your M307 for heater 1 shows a gain of 812.9 but with a PWM value of 0.4. I know that on my machine, an 80Watt heater running at 1.0 PWM will give a gain of 645 so on that basis, it would indicate that your hot end heater is about 200 Watt whereas a normal cartridge heater would be in the order of 30 to 40 Watt.

    A few thoughts come to mind but I need a little more information.

    What values did you use when you tuned the heater? It should something like M303 H1 S240
    What voltage are you running the Duet on?
    Are you able to measure the resistance of the hot end heater cartridge? If so, what is the value?



  • i am runnning duet 24v. my hot end cartridge is 40 w. i was running the test with M303 H1 S220.
    i dont know how to measure resistance of the hot end cartridge.


  • administrators

    Do you have a multimeter?



  • yes


  • administrators

    So disconnect the hot end heater from the terminal block on the Duet, set your multimeter to read ohms, and use it to measure the resistance between the two wires.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.