Welcome! Log In Create A New Profile


PID definitions

Posted by nowhere.elysium 
PID definitions
August 10, 2012 11:34AM
Hi all. I've been playing around with the Huxley for a few days, and I've had some OK prints out of it, but I've noticed that the temperature regulation of the hot end is all over the place. This is causing no end of trouble for me - I've wasted loads of filament because prints have crapped out partway through with MINTEMP errors.

As such, I decided to have a crack at the PID autotune function in Marlin; I've tried a few variations, ranging from just using the M303 command as it is, through to trying several different temperature settings, to see if I can get it to stabilise. No luck, however - it overshoots by up to 20C each time, and causes the autotune function to fail.

First question; is there a way around the overshoot problem? Can I turn off the failure state, in the hope that I can force it to get some kind of meaningful readings? Second question; if I can't do that, what's the procedure for calculating the Ki Kd and Kp values manually? I'm crunching my way through some PID references, but it's pretty heavy going, and I reckon that I'm probably out of my depth a bit.

Any help would be massively appreciated.
Re: PID definitions
August 10, 2012 02:12PM
It might be because the Huxley uses 19V with the same resistor normally used at 12V, so it will heat very fast as power is proportional to voltage squared. I am surprised the resistor survives.

You could try reducing PID_MAX so it never applies full power.

Edited 1 time(s). Last edit at 08/10/2012 02:28PM by nophead.

Re: PID definitions
August 10, 2012 05:21PM
PID_MAX was definitely a help, so thanks nophead - you really are the guy to come to with RepRap questions grinning smiley
I managed to get the PID autotune to kick in by convincing it to start to play *after* it overshot the 150C mark. The results aren't 100% accurate (it goes over temperature by about 10C) but it's a lot more stable as a result. That was using the 'no overshoot' figures given, with 9 samples averaged out. I'll play around with the numbers a bit more, and see where I get with it.

Thanks again for the pointer smiling smiley
Re: PID definitions
August 11, 2012 04:58PM
OK - I've since fiddled some more, and tried setting PID_MAX to 63, in an attempt to slow down the heating process a bit. That's worked, but it hasn't solved the more insidious problem that's plaguing me; I'm getting sudden sharp drops in temperature, and I have no clue as to what to do about it.

I've only got the one fan, and there isn't any kind of speed control for it. There's also no obvious draughts, because I've partially enclosed the area in which the RepRap prints.

My PID settings are:
#define DEFAULT_Kp 7.83
#define DEFAULT_Ki 0.84
#define DEFAULT_Kd 48.56

Re: PID definitions
August 11, 2012 10:46PM
Is your thermistor well insulated from air, and held tight against the hot end? Normally the hot end shouldn't be able to drop temperature that fast.

Help improve the RepRap wiki!
Just click "Edit" in the top-right corner of the page and start typing.
Anyone can edit the wiki!
Re: PID definitions
August 12, 2012 04:40AM
Turns out it was a crap connection. I've sorted it now, so all that remains is to totally stabilise the PID response, and I'll have a happy RepRap.

Nophead, NewPerfection - thank you both for your help smiling smiley
Re: PID definitions
January 29, 2013 11:00AM
A crap connection where?!? Probably on your thermistor?
Sorry, only registered users may post in this forum.

Click here to login