I have two issues currently in regards to the hot end.
First: When I have a print running, if I bump the temp up (ie. from 210 to 215) I get a heater fault error that the temp has risen faster than 0.7C/second. It doesn't overshoot the temp, and I ran the PID auto-tune per the manual and tuned to 220C.
Second: When the fans kick on I see a fairly large drop in temp at the hotend (5-10 degrees). I have tried ramping the fans 25% at a time, but still see a decent drop. Is there any way to remedy this?
Heater issues
Re: Heater issues
i had a similar issue which i just addressed by changing dead time....
some change when the fans kick in is ok
some change when the fans kick in is ok
Re: Heater issues
Would you mind giving more information to the changes you made regarding dead time....?wepollock wrote:i had a similar issue which i just addressed by changing dead time....
some change when the fans kick in is ok
Re: Heater issues
---Sorry I was on my Ipad,, I am "Mr. Magoo with that contraption" and with software in general.
Dead time is a guess on my part, based on a similar problem that I had. My problem was not heating fast enough with the introduction of a new hot end and different brand of thermistor.
1) I would find out what my PID parameters are by doing M307 H1
Duet will then report back to you what those PID parameters are
I would suggest you look at a parameter called "dead time"
(anyway be interested in what the report said).
2) What is dead time - https://www.repetier.com/dead-time-control/
From what I can gleam (and I am new to deadtime) is that you set a temperature, current is pumped into the hot end "resistor" (according to the PID parameters), a delay occurs between the time the current gets pumped (really PWM?) into the hot end and the hot end actually heats up. The relationship in time aka lag between putting current in, and getting the desired heat out consistently is what is being tuned. Also at issue is reading the temperature correctly.
If the dead time looks reasonable then it is prob not your issue and concern.
I found a good deadtime setting by doing
M307 H1 Dxx command +/-xx (a few times until my temperatures were stabilized.)
(not being an engineer, there are some other questions I have on this topic. EG the "B" parameter on M305 - and why is the B quite different between Seemecnc and E3d -- they are using different thermistors "NTC Thermistor Beta NTC Thermistors are non-linear resistors that alter their resistance characteristics with temperature. Simply put, as temperature increases the thermistor’s resistance decreases. The manner in which the resistance of a thermistor decreases is related to a constant known in the thermistor industry as beta (β). Beta is measured in degrees Kelvin (K) and is computed based on the formulation given below.
----------From Duet.
Setting the model parameters manually
Model parameters can be changed and reported using the M307 command. Examples:
M307 H1 A350 C139 D5.5 B0 ; set model parameters for heater 1 and use PID mode
M307 H1 ; report model parameters for heater 1, and whether the model is being used
The H parameter specifies the heater.
The A parameter is the model gain, which is the ultimate temperature rise divided by the PWM fraction. For example, a gain of 350 means that at a constant 50% PWM, the temperature would eventually reach ambient temperature plus 350 * 0.5 degC.
The D parameter is the dead time, which is the delay between a change in PWM and an appreciable effect on the rate of temperature change.
The C parameter is the model time constant. This may be thought of as the time taken for the temperature rise to reach 63.2% of its ultimate value after the heater is switched on from cold at constant PWM, less the dead time.
You can limit the PWM by adding a suitable S parameter, for example S0.8 will limit the PWM to 80%.
To use bang-bang mode instead of PID, change B0 to B1. In bang-bang mode, the S parameter is still used to limit the PWM when the heater is turned on.
Measuring the gain
If necessary, use M301 to set some PID parameters that let you achieve a steady temperature. You can set the I term to zero if it helps - this means you won't reach the temperature you set, but that doesn't matter.
Set the heater to a temperature you typically use and wait until the temperature is stable. It doesn't matter if it is still creeping up slowly, but it must not be oscillating.
Send M573 P# (where # is the heater number) to report the average PWM.
The gain is: (actual_heater_temperature - ambient_temperature)/average_pwm.
Dead time is a guess on my part, based on a similar problem that I had. My problem was not heating fast enough with the introduction of a new hot end and different brand of thermistor.
1) I would find out what my PID parameters are by doing M307 H1
Duet will then report back to you what those PID parameters are
I would suggest you look at a parameter called "dead time"
(anyway be interested in what the report said).
2) What is dead time - https://www.repetier.com/dead-time-control/
From what I can gleam (and I am new to deadtime) is that you set a temperature, current is pumped into the hot end "resistor" (according to the PID parameters), a delay occurs between the time the current gets pumped (really PWM?) into the hot end and the hot end actually heats up. The relationship in time aka lag between putting current in, and getting the desired heat out consistently is what is being tuned. Also at issue is reading the temperature correctly.
If the dead time looks reasonable then it is prob not your issue and concern.
I found a good deadtime setting by doing
M307 H1 Dxx command +/-xx (a few times until my temperatures were stabilized.)
(not being an engineer, there are some other questions I have on this topic. EG the "B" parameter on M305 - and why is the B quite different between Seemecnc and E3d -- they are using different thermistors "NTC Thermistor Beta NTC Thermistors are non-linear resistors that alter their resistance characteristics with temperature. Simply put, as temperature increases the thermistor’s resistance decreases. The manner in which the resistance of a thermistor decreases is related to a constant known in the thermistor industry as beta (β). Beta is measured in degrees Kelvin (K) and is computed based on the formulation given below.
----------From Duet.
Setting the model parameters manually
Model parameters can be changed and reported using the M307 command. Examples:
M307 H1 A350 C139 D5.5 B0 ; set model parameters for heater 1 and use PID mode
M307 H1 ; report model parameters for heater 1, and whether the model is being used
The H parameter specifies the heater.
The A parameter is the model gain, which is the ultimate temperature rise divided by the PWM fraction. For example, a gain of 350 means that at a constant 50% PWM, the temperature would eventually reach ambient temperature plus 350 * 0.5 degC.
The D parameter is the dead time, which is the delay between a change in PWM and an appreciable effect on the rate of temperature change.
The C parameter is the model time constant. This may be thought of as the time taken for the temperature rise to reach 63.2% of its ultimate value after the heater is switched on from cold at constant PWM, less the dead time.
You can limit the PWM by adding a suitable S parameter, for example S0.8 will limit the PWM to 80%.
To use bang-bang mode instead of PID, change B0 to B1. In bang-bang mode, the S parameter is still used to limit the PWM when the heater is turned on.
Measuring the gain
If necessary, use M301 to set some PID parameters that let you achieve a steady temperature. You can set the I term to zero if it helps - this means you won't reach the temperature you set, but that doesn't matter.
Set the heater to a temperature you typically use and wait until the temperature is stable. It doesn't matter if it is still creeping up slowly, but it must not be oscillating.
Send M573 P# (where # is the heater number) to report the average PWM.
The gain is: (actual_heater_temperature - ambient_temperature)/average_pwm.
Re: Heater issues
DC (the "really really really big brain") behind Duet suggested I run an M303.
http://forum.seemecnc.com/viewtopic.php ... 85#p108485
PS.. its fricken awesome to have access to guys like DC, Hackney, JJ, Steve and Gene.
http://forum.seemecnc.com/viewtopic.php ... 85#p108485
PS.. its fricken awesome to have access to guys like DC, Hackney, JJ, Steve and Gene.
Re: Heater issues
You do an
M303 Heater 1 Temp 210
M303 H1 S210
Followed by an
M303
Write the parameters down
Then check config.g and config-override.g
Under M307 command you should see the parameters you wrote down.
M303 Heater 1 Temp 210
M303 H1 S210
Followed by an
M303
Write the parameters down
Then check config.g and config-override.g
Under M307 command you should see the parameters you wrote down.
Re: Heater issues
I'm having the same issues with my fans. With mine the fans are higher than the heater block. I'm going to rebuild my hot end next week. I might add some spacers to lower the fans and see what else might be going on.
Re: Heater issues
(just a tweak to the above)wepollock wrote:You do an
M303 Heater 1 Temp 210
M303 H1 S210
Followed by an
M303
Write the parameters down
Then check config.g and config-override.g
Under M307 command you should see the parameters you wrote down.
Tack an M501 to the bottom of your config.g file so that it will load config-override.g on startup. It may already be there.
Then, instead of the M303, you can issue an M500 which will write the changes to config-override.g. Why write it down if you don't have to?

g.
Delta Power!
Defeat the Cartesian Agenda!
http://www.f15sim.com - 80-0007, The only one of its kind.
http://geneb.simpits.org - Technical and Simulator Projects
Defeat the Cartesian Agenda!
http://www.f15sim.com - 80-0007, The only one of its kind.
http://geneb.simpits.org - Technical and Simulator Projects
Re: Heater issues
thanks.. if forgot to mention that important point.