Jump to content

PID Autotune


jumpmobile

Recommended Posts

Posted · PID Autotune

Firstly, I apologize for bumping a mildly old thread, but since I was having the same issue, and this was the one of the first threads I ran across after a Google search I figured I might throw in some advice.

I just ran the auto-tune function on my E3D hot end. After a little bit of piddling, I found that I could get it to run without over shooting the temperature range by pre-heating the hot end to 200. The G-Code needed should be M104 S200 in Marlin. From what I've read, others might have issues trying to run the auto-tune on a heated bed without pre-heating the bed.

Anywho, my results were:

Classic PID

Kp: 9.12

Ki: 0.41

Kd: 50.98

PID Autotune finished! Put the last Kp, Ki and Kd constants from above into Configuration.h

Hope I helped!

 

  • Link to post
    Share on other sites

    • 2 months later...
    Posted · PID Autotune

    sitinthehall, did you have the same autotune fail issue?

     

    Firstly, I apologize for bumping a mildly old thread, but since I was having the same issue, and this was the one of the first threads I ran across after a Google search I figured I might throw in some advice.

    I just ran the auto-tune function on my E3D hot end. After a little bit of piddling, I found that I could get it to run without over shooting the temperature range by pre-heating the hot end to 200. The G-Code needed should be M104 S200 in Marlin. From what I've read, others might have issues trying to run the auto-tune on a heated bed without pre-heating the bed.

    Anywho, my results were:

    Classic PID

    Kp: 9.12

    Ki: 0.41

    Kd: 50.98

    PID Autotune finished! Put the last Kp, Ki and Kd constants from above into Configuration.h

    Hope I helped!

     

  • Link to post
    Share on other sites

    • 5 months later...

    Hi,im italian,im have make my first ultimaker1,im thin i have same your problem,for me is my first 3d printer...

    when im power on my 3d printer,im make home,after preheat pla,it is set at 210c but the temperature,in first time ,after select preheat pla,on display appare for example 16/210 after few second(2) change at 16/0 im reselect preheat and it appare 17/210 after 4 select of preheat pla,it not change and fixed temperature real/210,the temperature go up but it make up and down from 190 to 245 ,for 30minuts....not appare heating done but only heating... if im press on print from sd a,d select my file,after more and more time,the bed go down,the percentual of print increast from 0 to 100 but the head not move,when the % is 100% the head go out of homing and remake the homing,but not print nothing...

    im think is a problem of pid.....

    is possible for you help me ??

    im attached here parts of my marlin where is the temperature setting....

    #define PIDTEMP

    #define BANG_MAX 255 // limits current to nozzle while in bang-bang mode; 255=full current

    #define PID_MAX 255 // limits current to nozzle while PID is active (see PID_FUNCTIONAL_RANGE below); 255=full current

    #ifdef PIDTEMP

    //#define PID_DEBUG // Sends debug data to the serial port.

    //#define PID_OPENLOOP 1 // Puts PID in open loop. M104/M140 sets the output power from 0 to PID_MAX

    #define PID_FUNCTIONAL_RANGE 10 // If the temperature difference between the target temperature and the actual temperature

    // is more then PID_FUNCTIONAL_RANGE then the PID will be shut off and the heater will be set to min/max.

    #define PID_INTEGRAL_DRIVE_MAX 255 //limit for the integral term

    #define K1 0.95 //smoothing factor within the PID

    #define PID_dT ((OVERSAMPLENR * 8.0)/(F_CPU / 64.0 / 256.0)) //sampling period of the temperature routine

    // If you are using a pre-configured hotend then you can use one of the value sets by uncommenting it

    // Ultimaker

    // #define DEFAULT_Kp 22.2

    // #define DEFAULT_Ki 1.08

    // #define DEFAULT_Kd 114

    // MakerGear

    #define DEFAULT_Kp 7.0

    #define DEFAULT_Ki 0.1

    #define DEFAULT_Kd 12

    // Mendel Parts V9 on 12V

    // #define DEFAULT_Kp 63.0

    // #define DEFAULT_Ki 2.25

    // #define DEFAULT_Kd 440

    #endif // PIDTEMP

    // Bed Temperature Control

    // Select PID or bang-bang with PIDTEMPBED. If bang-bang, BED_LIMIT_SWITCHING will enable hysteresis

    //

    // Uncomment this to enable PID on the bed. It uses the same frequency PWM as the extruder.

    // If your PID_dT above is the default, and correct for your hardware/configuration, that means 7.689Hz,

    // which is fine for driving a square wave into a resistive load and does not significantly impact you FET heating.

    // This also works fine on a Fotek SSR-10DA Solid State Relay into a 250W heater.

    // If your configuration is significantly different than this and you don't understand the issues involved, you probably

    // shouldn't use bed PID until someone else verifies your hardware works.

    // If this is enabled, find your own PID constants below.

    //#define PIDTEMPBED

    //

    //#define BED_LIMIT_SWITCHING

    // This sets the max power delivered to the bed, and replaces the HEATER_BED_DUTY_CYCLE_DIVIDER option.

    // all forms of bed control obey this (PID, bang-bang, bang-bang with hysteresis)

    // setting this to anything other than 255 enables a form of PWM to the bed just like HEATER_BED_DUTY_CYCLE_DIVIDER did,

    // so you shouldn't use it unless you are OK with PWM on your bed. (see the comment on enabling PIDTEMPBED)

    #define MAX_BED_POWER 0 // limits duty cycle to bed; 255=full current

    #ifdef PIDTEMPBED

    //120v 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)

    //from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10)

    #define DEFAULT_bedKp 10.00

    #define DEFAULT_bedKi .023

    #define DEFAULT_bedKd 305.4

    //120v 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)

    //from pidautotune

    // #define DEFAULT_bedKp 97.1

    // #define DEFAULT_bedKi 1.41

    // #define DEFAULT_bedKd 1675.16

    // FIND YOUR OWN: "M303 E-1 C8 S90" to run autotune on the bed at 90 degreesC for 8 cycles.

    #endif // PIDTEMPBED

    //this prevents dangerous Extruder moves, i.e. if the temperature is under the limit

    //can be software-disabled for whatever purposes by

    #define PREVENT_DANGEROUS_EXTRUDE

    //if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately.

    #define PREVENT_LENGTHY_EXTRUDE

    #define EXTRUDE_MINTEMP 170

    #define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.

     

     

  • Link to post
    Share on other sites

    in this video is possible look my 3d printer when work,this is the first item printed,but im not undestand how is possible if it not work,im save in my pc the firmware f i ave used in this video,but now it not run,if i change firmware,the problem not change...how is possible ??

    whem im change one setting on firmware,im save it with a new name,for have in all moment the possibility for select the firmware if run...

     

     

  • Link to post
    Share on other sites

    Teocreo - your english is very confusing and hard to understand. Plese write the post in Italian and check carefully for spelling and then use translate.google.com to convert to english. As long as your grammar and spelling is perfect, google does okay.

    I don't understand the firmware questions but I think I understand that your temperature is very unstable.

    How many watts is your nozzle heater? Where did you get the heater? If you don't know how many watts, then how many ohms?

    And you are using 19V supply?

     

  • Link to post
    Share on other sites

    Also did you try this marlin builder? Look at the Configuration.h file it creates and compare it to your file:

    http://marlinbuilder.robotfuzz.com/

     

  • Link to post
    Share on other sites

    :grin:

    my isn't english....

    the nozzle heater is 24v 40W

    im not know the esistence of marlin builder...is possible for you help me to make one firmware for my 3d printer....im want undestad it..

    im know only that:

    step {78.7402,78.7402,1828.5714,81.5286}

    i not have heat bed,im use AD595

    the measurements of machine is x177 y186 z 172

    the heater is 24v 40w but at home i have another 30W

    im use the power supply same pc,120W 19V 6.3A

    the electronic board,driver and arduino im buy this auction on ebay

    151256292420

     

    im not know more of my 3d printer,im download the file and cut with my diy laser cut,after im assembly all parts and make all connections.

     

    PLEASE help me to undestand where is the problem,why now not work..

    thanks and very sorry for my bed english.....

     

  • Link to post
    Share on other sites

    Does someone out there know the wattage of the UM Original nozzle heater?

     

  • Link to post
    Share on other sites

    im not know...

     

  • Link to post
    Share on other sites

    The source file on Github says 40W.

     

  • Link to post
    Share on other sites

    40 watts. Okay. So I would start with this one:

     


    // Ultimaker
    #define DEFAULT_Kp 22.2
    #define DEFAULT_Ki 1.08
    #define DEFAULT_Kd 114

    Are you building marlin yourself okay? If not use marlinBuilder mentioned above and choose these values:

    A

     

  • Link to post
    Share on other sites

    hi,im test these 2 possibility,without changements of my problem..

    #define DEFAULT_Kp 22.2

    #define DEFAULT_Ki 1.08

    #define DEFAULT_Kd 114

    #define DEFAULT_Kp 7.0

    #define DEFAULT_Ki 0.1

    #define DEFAULT_Kd 12

    im think if 40W is biggest for my heather,or settings are not ok.

     

  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • UltiMaker Cura 5.7 stable released
        Cura 5.7 is here and it brings a handy new workflow improvement when using Thingiverse and Cura together, as well as additional capabilities for Method series printers, and a powerful way of sharing print settings using new printer-agnostic project files! Read on to find out about all of these improvements and more. 
         
          • Like
        • 18 replies
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
         
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
    ×
    ×
    • Create New...