Bed heating problem
-
Hi there everyone!
I have some heating problems with my duet wifi.
I made the calibration for the bed 3 times using m303 and then send the M500 (and yes, i do have m501 in config.g).
I still have the error that says: Heater 0 fault: temperature rising too slowly: expected 0.73°C/sec measured 0.14°C/sec
If enyone could help me would be awesome
This is my firmware:FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 3.4.6 ELECTRONICS: Duet WiFi 1.02 or later FIRMWARE_DATE: 2023-07-21 14:08:28
This is my config. override.g:
; config-override.g file generated in response to M500 at 2023-12-18 14:18 ; This is a system-generated file - do not edit ; Delta parameters M665 L407.800:407.800:407.800:340.000 R228.600 H445.000 B200.0 X0.000 Y0.000 Z0.000 M666 X0.000 Y0.000 Z0.000 A0.00 B0.00 ; Heater model parameters M307 H0 R0.884 K1.403:0.000 D1.23 E1.35 S1.00 B0 M307 H1 R3.885 K0.320:0.000 D7.16 E1.35 S0.50 B0 V24.0 ; Workplace coordinates G10 L2 P1 X0.00 Y0.00 Z0.00 U0.00 G10 L2 P2 X0.00 Y0.00 Z0.00 U0.00 G10 L2 P3 X0.00 Y0.00 Z0.00 U0.00 G10 L2 P4 X0.00 Y0.00 Z0.00 U0.00 G10 L2 P5 X0.00 Y0.00 Z0.00 U0.00 G10 L2 P6 X0.00 Y0.00 Z0.00 U0.00 G10 L2 P7 X0.00 Y0.00 Z0.00 U0.00 G10 L2 P8 X0.00 Y0.00 Z0.00 U0.00 G10 L2 P9 X0.00 Y0.00 Z0.00 U0.00
And this is my config.g:
; Configuration file for Duet WiFi (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2.1.8 on Thu Feb 27 2020 08:16:33 GMT+0100 (hora estándar de Europa central) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Muxar 3.1" ; set printer name M584 X0 Y1 Z2 U4 E3 F5 ; set drive mapping M665 R228.6 L407.8:407.8:407.8:340 B200 H445 ; Set delta radius, diagonal rod length, printable radius and homed height M669 X0 Y0 ;esto especifica el ofset de la salida del extrusor referente al centro de la mesa M666 X0 Y0 Z0 F0 ; put your endstop adjustments here, or let auto calibration find them M575 P1 B57600 S1 ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0 S1 ; physical drive 0 goes forwards M569 P1 S1 ; physical drive 1 goes forwards M569 P2 S1 ; physical drive 2 goes forwards M569 P3 S0 M569 P4 S0 ; physical drive 3 goes backwards M350 X16 Y16 Z16 U16 E16 I1 ; Configure microstepping with interpolation M92 X80 Y80 Z80 U400 E415 ; Set steps per mm M566 X1200.00 Y1200.00 Z1200.00 U1200 E1200.00 ; set maximum instantaneous speed changes (mm/min) M203 X12000.00 Y12000.00 Z12000.00 U12000.00 E12000.00 ; set maximum speeds (mm/min) M201 X2000.00 Y2000.00 Z2000.00 U2000.00 E2000.00 ; set accelerations (mm/s^2) M906 X1200 Y1200 Z1200 U1200 E1200 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 S1 Z-2 ; set minimum Z M208 S0 U1000 ; Endstops M574 X2 S1 P"xstop" ; configure active-high endstop for high end on X via pin xstop M574 Y2 S1 P"ystop" ; configure active-high endstop for high end on Y via pin ystop M574 Z2 S1 P"zstop" ; configure Z-probe endstop for low end on Z M574 U2 S1 P"e0stop" M574 F2 S1 P"filamentstop" ; Z-Probe M558 P8 C"E1stop" H5 F1200 T6000 ; set Z probe type to effector and the dive height + speeds G31 P500 X0 Y0 Z-0.26 ; set Z probe trigger value, offset and trigger height/cuanto mas negativo mas separado de la mesa M557 R175 S80 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M307 H0 A215.5 C661.6 D5.8 S1.00 V24.0 B1 ;M307 H0 R0.905 K2.126:0.000 D1.06 E1.35 S1.00 B0 ; enable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M308 S1 P"e0temp" Y"thermistor" T100000 B4725 ; configure sensor 1 as thermistor on pin e0temp M950 H1 C"e0heat" T1 ;create nozzle heater output on e0heat and map it to sensor 1 M143 H1 S250 ; set temperature limit for heater 1 to 280C M307 H1 R3.841 K0.319:0.000 D7.07 E1.35 S0.50 B0 V23.9;disable bang-bang mode for heater and set PWM limitM307 H1 A346.2 C140 D5.3 B0 S0.8 V23.8 M570 H0 P15 T1 ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 D0 H1 F0 ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C ; Custom settings M591 D0 P1 C"exp.e2stop" S1 ; filament monitor connected to E2 endstop ; Miscellaneous M501 ; load saved parameters from non-volatile memory
-
-
Can you give some details about the bed heater and thermistor? What does your temperature graph look like?
-
@Phaedrux
Hi there, the graphic looks constant. it takes time to heat up but can reach 80 with no problem.
sometimes it says response too long, see console, and in the console says to do the m500 thing.
The printer was heating up well until i uploaded the last firmware, so i don´t think will have to do with the thermistor.
thanks -
Have you tried re-tuning your heater since updating?
What firmware were you running previously?
Can you send M98 P"config.g" in the gcode console tab and report any errors? -
Hi there, i don´t know the firmware i had before but has to be 2 years old more or less.
The heating problem started when changing the firmware. and i re tunned it several times with no success.
the reason i changed the firmware is because i wannted to implement imput shaping .
M98 says no P or R parameter.
i´m adding the graph when sending M303 H0 S60
as you can see takes time but there is no any cut on the signal, but i had this message this time:Warning: heater behaviour was not consistent during tuning
Auto tuning heater 0 completed after 3 idle and 25 tuning cycles in 1224 seconds. This heater needs the following M307 command:
M307 H0 R0.886 K1.473:0.000 D1.13 E1.35 S1.00 B0
Send M500 to save this command in config-override.g -
The bed runs on 24v and is 300mm in diameter
-
@ander said in Bed heating problem:
I still have the error that says: Heater 0 fault: temperature rising too slowly: expected 0.73°C/sec measured 0.14°C/sec
At what point in the heat up phase does this error arrive?
Your heater seems very underpowered and it's detecting the slower than expected heating rate as a potential case of thermistor being disconnected.
Are you starting the tuning cycle from a cold state?
-
@ander said in Bed heating problem:
M98 says no P or R parameter.
You need to send the full command
M98 P"config.g"
-
The error takes place a few seconds after activating the bed, either from cold start or a bit warm.
the tuning cicle it has been in cold always.
I just sent the m98 command and this is what it says:M98 P"config.g"
HTTP is enabled on port 80
FTP is disabled
TELNET is disabled
Endstop configuration:
X: high end switch connected to pin xstop
Y: high end switch connected to pin ystop
Z: high end switch connected to pin zstop
U: high end switch connected to pin e0stopWarning: Heater 0 predicted maximum temperature at full power is 240°C
Warning: Heater 1 predicted maximum temperature at full power is 656°C
Warning: Heater 1 predicted maximum temperature at full power is 660°CBy the way U axys is the 4th axys of my delta printer
-
@ander Can you describe the bed setup, please? eg bed size, heater type, location of thermistor, thickness of aluminium/glass parts, print surface used etc. I'm guessing it's an aluminium bed, 6 or 8mm thick, with a mains-powered silicone heater with the thermistor in the middle?
You need to start the bed tuning from completely cold. Your graph shows an initial fast bit of heating; I suspect there was some heat in the bed still, so the 'dead time' (D parameter) measurement may be wrong, and the heating rate (R parameter) was measured incorrectly.
From your graph, it looks like the long section is from around 30C to 60C, and takes 6 minutes (360 seconds). From this we can calculate the R parameter:
Rnnn Heating rate in degC/sec at full power when the heater temperature is close to ambient
R = 30 / 360 = 0.083. Yours is currently set to 0.886, so RRF is expecting it to heat up twice as fast as it really does!
Looking at the section where the temperature is oscillating during tuning, I've added lines for every 5 seconds:
It looks like it's taking about 12 seconds to drop 5C, and around 20 seconds to heat back up 5C. The heating back up seems a bit variable, which is why RRF may be giving the 'Warning: heater behaviour was not consistent during tuning' error during tuning.
The K parameter is the rate of cooling in degC/sec when the heater is turned off and the temperature is falling through 100C above ambient temperature. The K parameter is calculated as:
K = ( temperature change / time in seconds ) / (( heater temperature - ambient temperature ) / 100 )^E parameterSo K = (5 / 12) / (( 60 - 20 ) /100 )^1.35 = 1.435 (which is very similar to what the tuning had set)
Also, because your bed has some thermal mass (large aluminium bed, maybe?) the heating time once at temperature is a bit faster: R = 5 / 20 = 0.25
Lastly, 'Dead time', the D parameter.
Measuring the dead time (M307 D parameter)
Turn the heater on from cold and time how long it takes for an obvious change to the temperature. For a hot end this would be a change of a couple of degrees before it increases more rapidly. For a heated bed or chamber this could be a consistent 0.1C increase above the cold temperature. The D parameter will generally be a couple of seconds on a hot end, but longer (eg 10 seconds) on a bed and potentially much longer on a chamber.
Because you started the tune with the bed still warm, this is hard to determine. As it seems to be a large bed with some thermal mass, but with a fairly powerful heater, I'd think a dead time of 5 seconds would be fine.
So, update your M307 as follows:
M307 H0 R0.083 K1.473:0.000 D5 E1.35 S1.00 B0
Then try tuning the bed again, from completely cold this time, and see if the suggested settings come out close to this.
Finally, is the bed insulated at all? Because it loses heat very quickly. My bed takes nearly 2 minutes to cool down 5C during tuning!
Ian
-
@droftarts
Thanks for the help
The tunning has been from cold, you can see that the blue line matches the red line in the beggining .
I tried the m307 you suggested and it did not work either.
the heating element is this style 400mm in diameter and works at 24v.
this heating element is attached to an aluminum plate 450mm in diameter and 4mm thickness.
Under the heating element is a material that covers all made out of trespa.
The output of the duet is attached to an SSR and then goes to the bed.
on top of the aluminum is a magnetic bed but the sensor goes all in one with the heating element as shown in the picture.
The weird thing is this problem started when updating to the latest firmware. before this was working fine.
I dissasembled the bed to check some things but everything is as it was before. -
@ander said in Bed heating problem:
I tried the m307 you suggested and it did not work either.
What error did you get? Did you put it in config.g? Because it will have been overridden by the one in config-override.g, as you have M501 in config.g. Send it in the console, then send
M500
to save it in config-override.g. SendM307 H0
to check what parameters are being used.Ian
-
@droftarts
I put the M307 in both( config.g and override)
as wasn´t working fine i made the tunning back again, and send M500 again:
Auto tuning heater 0 completed after 3 idle and 5 tuning cycles in 1133 seconds. This heater needs the following M307 command:
M307 H0 R0.950 K1.299:0.000 D1.36 E1.35 S1.00 B0
Send M500 to save this command in config-override.g
and still doesn´t work
The error i saw was the same as always:
Heater 0 fault: temperature rising too slowly: expected 0.47°C/sec measured 0.10°C/sec
by the way, when switching of and on again the console in the screen says Error: bad model parameters.
Doesn´t say anything in the DWC console but it does in the machine screen (i dunno if could be related)
This is the tunning picture, this time i made it until 80 degrees
-
@ander this behaviour occurs when the temperature sensor is coupled more closely to the heater than to the bed. You can tell this is the case because when you turn the heater on, the rate of temperature rise drops sharply after a short time.
After that initial fast heating, the temperature increases by roughly 5C per minute as far as I can tell from your graph. So the true R value is about 5/60 degC/sec or about 0.083 as has been suggested already.
Likewise the true cooling rate will be much lower than auto tuning measures. To estimate it, we'll need to see the cool down graph after tuning completes.
You could avoid this issue by using a temperature sensor attached to the bed instead of to the heater.
-
@dc42
Hi there, i´ll try to do those changes and try, and maybe try with another sensor too.
that will be next year maybe. i´ll keep you informed with the results.
thanks -
@dc42
Hi there!
I´m back with my Delta printer. i changed the bed and isolated a bit better, the sensor now is in between the heater and the bed, then i put an isolating foil, and underneath there is a really strong composite material.
I made some tunning procceses back and i couldn´t fix it.
The weird thing is that everything started when i updated the firmware. the one before was 2-3 years old and it wasn´t having any issues with the same bed system.
i also tried to change the sensor but the result was exactly the same
config(6).g
config-override(2).g
i´ll add some pics to see how is built.
-
@ander said in Bed heating problem:
Warning: heater behaviour was not consistent during tuning
Are you still getting this error? After you save the results are you able to heat the bed and maintain a temperature?
-
@Phaedrux
After i made all the changes to the bed, and making calibration several times, i´m still in the same spot.
If i try to heat it up, the error pops out.
And yes, i put m500 after doing the calibration process -
@ander said in Bed heating problem:
If i try to heat it up, the error pops out.
At what point in the heating process does it give the error, immediately or near the set temp? What does the graph look like at that time?
-
The goal was 70 and failed at almost 60