So I was looking at my temperture graph and I noticed that my hot

So I was looking at my temperture graph and I noticed that my hot bed reduces it load as it gets closer to the expected temp as seen in the picture. It takes a very long time for my bed to heat up like 30 mins. going from 107 to 110 takes around 10 mins. I was wondering if this had something to do with my Kp, Ki, and Kd setting in marlin. Or if you can think of anything else. I do have isolation underneath the heat plate and I put some paper on the top to slow the heat loss. I also have a 30a atx power supply. The bed is 8in x 8in so not very large.

As it gets hotter, its resistance increases (reducing its power to heat) and its environmental heat loss increases (making it require more power to maintain temperature). Insulation would help with the second issue, but most platform heaters are barely able to reach the temperatures needed for printing ABS.

O really I didnt know that most heaters barely could reach the temp :). The resistance thing makes since I didnt think of that.

You can run a quick test by setting the bed temp to 105 and see if it still has a slow approach for the last few degrees. If it is quicker then it is the limit of your heater but if it is similar then look at your PID settings.

ill have to do that and see it will have to wait tell the weekend though. Should I do more of a difference like 90C which would be a easier temp for the bed to reach but might still show the slowing of heating as it reaches that temp

@Whosa_whatsis the graphs look like the PID loop’s output tapers off as the temperature rises, with it sitting at about 70% for the last 10 minutes before it gets to the target temp. Normally the I part should take care of this.
@Chad_Nuxoll did you use just any Kp… values or did you (auto) tune them? http://youtu.be/APzJfYAgFkQ

There’s an easy enough way to test that. If you short your heater to GND instead of going through the FET, you can see how fast it will heat without the controller doing it’s thing. Obviously, this is to be done carefully. You may be able to do a similar test more safely by re-configuring your firmware to use bang-bang mode instead.

@Whosa_whatsis You can do it in pure Gcode without requiring reconfiguration of firmware. You can make the PID act like bang bang by using a large KP. Send an M304 and record the values, then ‘M304 P255 I0 D0’ will set the PID to turn the heater on full below setpoint-1C, and completely off above the setpoint.

Not knowing the M304 PID values, I’d think you should send a M304 D0 to shut off the measurement noise jitter, and maybe increase the kI term 20-50%. Doubling kI should halve the integration time constant, and make the system more responsive to the errors.

If I send it these codes everything goes back to normal after I restart the machine right. Like I wont have to set my PID settings back. I haven’t sent alot of M-codes so just checking

Yes, stuff will go back to normal after power-on, or even after a M501.

You would need to do a “M500” to store the current set of configuration values into the EEPROM if you wanted to change things across power-on. See http://reprap.org/wiki/G-code#Proposed_EEPROM_configuration_codes for the M500 (save to EEPROM), M501 (restore from EEPROM), M502 (reset to compiled defaults), M503 (Print current configuration)

See also http://reprap.org/wiki/G-code#M304:Set_PID_parameters-_Bed and http://reprap.org/wiki/G-code#M301:Set_PID_parameters-_Hot_End

Also, if you have tried M303 to autotune, but haven’t done an M304 and M500 you wouldn’t have been using the autotune values, and wouldn’t have saved them across a power cycle–you’d still be using the default as-compiled values.