[3.4.0b7+7] Heater overshoot if second K value in M307 is used
-
@owend what hot end are you using?
The E3D v6 hot end places the thermistor on the opposite side of the nozzle to the heater. This gives the most accurate reading, although it does increase the dead time a little. However, some other hot ends place the thermistor between the heater and the nozzle. This configuration will give a less accurate reading, because when the heater needs to produce more power, the thermistor will read higher then the nozzle temperature. For this type of hot end, the thermistor will show a temperature overshoot when the fan is turned on, even when the nozzle temperature actually drops when the fan is turned on.
-
@dc42
It's a genuine E3D V6 hotend, so thermistor is separated from heater by the nozzle.
The initial overshoot is not such a problem (although it is increased since earlier firmware)
The problem is the large increase in temp when short bursts of fan speed changes occur.
This has on several occasions caused a heater fault as it's above the maximum excursion limit. -
This issues persists in V3.4.0RC1
Performed a fresh PID before testing.
If the default fan speed is zero (such as for ABS) and a part of the print gives multiple short bursts of fan for bridging etc, the heater will rise until the maximum excursion limit is reached and the heater goes into fault mode.
If I do the same print but ensure the fan speed never goes below 30%, then the spikes do not happen. (there are small temp changes)
Likewise if I set the second K value to zero it does not error. -
@owend Did you re-run the PID tuning with RC1? Not sure if anything has changed in that or not, but may be worth trying if you didn't?
-
@gloomyandy
Yes I did a new PID for 3.4RC1 before testing.
There was nothing in the notes to say that anything had changed in heating apart from those directed at slow responding beds, but I thought it worth a shot. -
@owend it may be that the position of the head relative to the bed or print affects the nozzle cooling a lot. How far above the bed was the nozzle when you tuned the hot end? I normally tune hot ends with the bed at operating temperature and the nozzle close to the bed.
You can reduce the second K value manually if you need to.
-
@dc42
I normally do the PID tuning at about 5mm from the bed, but the bed was probably cold, so I'll run it again.
I can indeed "solve" the issue by manually adjusting the second K value and don't mind doing so, but this behaviour wasn't evident with earlier versions.
I can't roll back far without breaking a bunch of macros. -
I have the same problem since 3.4.0beta7+7 and 3.4.0RC1.
Whenever the fan speed changes, the algorithm doesn't seem to take it into account. I always print my bridges very slowly and therefore reduce my fan speed slightly during this time, the target temperature is always overridden by approx. 5 Kelvin to the target value, even if the change is very short (e.g. 3mm bridge). -
-
Initial testing suggests that 3.4RC2+2 fixes this issue.
https://forum.duet3d.com/post/274456
I'll mark this as solved.
-
-
-
@owend thanks for confirming.