PID tuning, using the second and third lines of values



  • After PID tuning at 250°C the Duet return this results:

    Heater 1 model: gain 259.1, time constant 161.4, dead time 0.7, max PWM 1.00, calibration voltage 24.1,
    Computed PID parameters for setpoint change: P163.2, I15.563, D77.8
    Computed PID parameters for load change: P1
    

    The first line are the values that goes into config.g as A, C and D

    I don't understand what is the use for the second and third line

    Computed PID parameters for setpoint change: P163.2, I15.563, D77.8
    Computed PID parameters for load change: P1
    

    Maybe I am missing something as no matter what I am unable to get the temperature to remain stable during extrusion.

    0_1528133548437_1528119348748-temps.jpg

    If the hotend is not extruding then the temperature variation are slightly better but still have some wobble

    0_1528133603882_temp-2.jpg

    This is happening after I installed the silicone sock on the Volcano heater block

    I am trying to increase the D value as described in the wiki but without luck, can the PID values be changed during printing ?



  • Are you using M303 to auto tune followed by an M500 to save the values? You don't need to manually enter the values into config.g

    I would recommend going back to stock values and rerunning the auto tune and saving those values fresh and see if that helps.

    https://duet3d.dozuki.com/Wiki/Tuning_the_heater_temperature_control


  • administrators

    @paboman do you have the wobble when you turn off your heater and the hotend is cooling down?



  • @phaedrux
    Yes, I am using M303 H1 S250
    I dont like to use config override, I want to have all the settings in one place thats why I put all the values in config.g, I will try to redo the PID starting from stock values as you proposed.

    @T3P3Tony
    No wobble during rising or decreasing.
    The wobble is barely visible when no filament is pushed and becomes visible when the extrusion start.

    I am using 1.2mm nozzle, really a lot of plastic is going into the hotend.



  • You could still use m500 to save the values and then just copy them from config-overide just to make sure it's formatted properly.

    It sounds like the filament is acting as a form of liquid cooling. Are you running your part cooling fan while you are doing the tuning? It can help more accurately simulating actual print conditions.



  • Ok but what are the second and third lines returned after the PID tuning complete ?

    Do I need to use them somehow?



  • It is the parameters from the second line that I think you need to use in your M307 line

    so I think you should have

    M307 P163.2 I15.563 D77.8

    I believe the params in the first line are what the firmware uses as it's base starting point taken from the settings that you have supplied in the heater configs previously.

    Hoping that DC may chime in and confirm this as I think your Computed D value is a bit high.

    HTH Doug



  • The wiki says the P, I and D values of the second line is the legacy method and intended for backup....I dont know what backup means in our case.

    Running automatic tuning with M303 H1 S250 gives me a D value too low (0.7) and then the temperature is wobbling a lot.
    Increasing manually the D value to 5 seems to give a reasonable flat temperature curve.

    I will now go ahead with more testing

    @dc42
    For the BED I dont know if I need the B value to be set to 0 if I construct a M307 command instead of M301 as the wiki says:
    The B0 parameter tells the system to use PID (the default on power up is bang-bang for the bed heater).


  • administrators

    @paboman said in PID tuning, using the second and third lines of values:

    Running automatic tuning with M303 H1 S250 gives me a D value too low (0.7) and then the temperature is wobbling a lot.
    Increasing manually the D value to 5 seems to give a reasonable flat temperature curve.

    0.7 is indeed an unusually low value for the dead time; but 5 is unusually high. Did you try intermediate values such as 2 or 3?

    @dc42
    For the BED I dont know if I need the B value to be set to 0 if I construct a M307 command instead of M301 as the wiki says:
    The B0 parameter tells the system to use PID (the default on power up is bang-bang for the bed heater).

    If you run bed heater tuning and construct a M307 command from the results, you should use B0.



  • @dc42

    finally I will stick with a Dead Value of 3.
    no matter how I tune the hotend PID Duet thinks lower values are better, like D 1.9


  • administrators

    @paboman, I have it on my work list to look at alternative ways to measure the dead time.


Locked
 

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