Normally the printer is coming with already stored some calibration information.
One of them is the Proportional Integral Derivative (PID) controller for the temperature of the hot end and the bed.
It is necessary to execute the PID in case sensors are changed or just to be sure everything is OK.
To perform the PID usually a program need to be installed to a computer and then connect the computer via USB to the printer.
The program is called Pronteface and exist for all platforms, however there is another way that doesn't need to install or connect anything else, since it uses OctoPrint.
Below the procedures to run PID for both hot end and bed of the printer.
CAUTION !
Both procedures can take quite some time to be executed due to the thermal inertia !!
Hotend - PID tuning with OctoPrint
- Turn on the printer
- Heat the hotend to 200
- Unload any present filament
- Cool off the hotend
- Go on OctoPrint
- Go on terminal
- in the entry box digit : M303 S200 C10 then hit enter
- Wait to receive the message :
Recv: PID Autotune finished! Put the last Kp, Ki and Kd constants from below into Configuration.h - The next 3 lines contains temperature settings :
Recv: #define DEFAULT_Kp 24.54
Recv: #define DEFAULT_Ki 1.95
Recv: #define DEFAULT_Kd 77.22
Recv: ok - The 3 value need to be saved in the firmware, to do so : M301 Pxx.xx Ixx.xx Dxx.xx
where P stands for the Kp, I stands for Ki and D stands for Kd.
Thus in the example : M301 P24.54 I1.95 D77.22 - After that force the values to be written in Eeprom with : M500
- PID procedure completed
Bed - PID tuning with Octoprint
- Turn on the printer
- Verify the bed is at normal temperature
- Go on OctoPrint
- Go on terminal
- in the entry box digit : M303 E-1 S50 C10 then hit enter
- Wait to receive the message :
Recv: PID Autotune finished! Put the last Kp, Ki and Kd constants from below into Configuration.h - The next 3 lines contains temperature settings :
Recv: #define DEFAULT_Kp 24.54
Recv: #define DEFAULT_Ki 1.95
Recv: #define DEFAULT_Kd 77.22
Recv: ok - The 3 value need to be saved in the firmware, to do so : M304 Pxx.xx Ixx.xx Dxx.xx
where P stands for the Kp, I stands for Ki and D stands for Kd.
Thus in the example : M304 P24.54 I1.95 D77.22 - After that force the values to be written in Eeprom with : M500
- PID procedure completed
Resources
- Pronteface - Program to control the 3D Printer
- All3Dp - Tutorial on M/G codes
- Youtube - How to PID tuning
- Blog - Marlin M codes
- Blog - Easy Ender 3 Hot End PID
- Wikipedia - PID Controller
- Blog - Hotend and Heatbed PID tuning
No comments:
Post a Comment