New heater tuning algorithm
-
@TLAS said in New heater tuning algorithm:
Is there any chance to implement more of a plugin approach for the auto-tune algorithm? This algorithm change has been one of my biggest fears in upgrading, although I've been somewhat forced into it to use the web control plugins.
I won't go into the details, but my printer is quite different than traditional printers (for example, I don't use any part cooling fans in my current design). The previous algorithm worked fairly well for me, and after seeing the comments in this post, I'm really afraid of upgrading and may end up manually defining the parameters for a few of my heaters.
I'll report back with the results of using the new algorithm (hopefully this week), but there are so many different heater designs out there that using an option that lets users custom-develop their own versions may be a good opportunity for future growth.
I would like it also if the new algorithem could be just a new Bx within M307, as was "bang-bang" in the past as B1, B0="simple" PID, and now e.g. B2 as "feed-forward" PID.
Another option would be to put within M307 in the place of B0 the new "feed-forward"PID and "replace" the "old" PID to e.g. a new B2-option... (so that new users use by default B0 for heater1 and only the those who need really, swap back as an individual decision to B2 for whatever reason)?
+1 from me
But if I recall correctly dc42 (altough that was way before RC2 of RRF3.2) had some issue with code getting too much/too big and therfor would of course have liked to get rid of the "old" PID -> Please correct if it is wrong what I write here, these are only some vague memories from several weeks ago long before RC2...
-
What is the limit to the PID values that are available?
I have a very fast heater and would like to use the integrated PID tuning, but unfortunately it heats too quickly (3 seconds to target temp), until now I have only gotten errors. "not heating at expected rate"... -
@Deltasquare are you sure of your temperature readings? 20-200°C in 3 seconds is really fast. Is this a SpaceX motor at launch?
-
Hi
i have updated my Duet wifi to newest RRF 3.2 what i must change to use the new heater tuning algorithm ?
thats my actual settings for heater:
; 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 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"e0temp" Y"thermistor" T100000 B4725 C7.06e-8; 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 S280 ; set temperature limit for heater 1 to 300C M307 H1 B0 S1.00
and how i can tune the bed and thermistor ?
thanks a lot
-
@lui2004 You tune it as normal using M303
https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M303_Run_heater_tuning
-
@MikeS
I am 100% sure.
However it's not quite up there with the Marlin engine in sophistication.... but close. -
This post is deleted! -
@dc42 now that 3.2 has been out for some time, would it be possible to get a better description of what the new M307 parameters do? the documentation is very vague and (https://duet3d.dozuki.com/Wiki/Tuning_the_heater_temperature_control#Section_Manual_adjustments_to_the_heater_model_parameters) still refers to the deprecated parameter A (gain). Specifically, heater rate has no units on it. Would it be possible to see a quick diagram of what the heater loop looks like and where all the parameters feed in? I'll need to have one of our controls engineers fix a particularly troublesome heater and it would be good if they had a diagram of what's going on so we can tune on the fly.
-
@lee7670 I have updated the wiki page on heater tuning.
-
@dc42 Thank you, this is very useful!
-
Seeing the subject has been brought up again..
I have just change out my hotend and heater and tried auto tune, always finishes but seems to have errors and gives me the values for the 307 in config, after entering the new values and i turn on the heater to 210 i always get a heater fault not rising fast enough. but from watching the DWC the temp seems to be going up fast.
So returned and this time no error and a new pid value so i enter that and got the same heater faultIf i put just use the default m307 values with no pid values it heats up fine no errors..
also have a pt100 with the duet pt100 board and it a diet2 wifi
this is with firmware 3.2.2 release
Thanks gary
-
@gorf26 Instead of manually copying the values, can you try using M500 to save them to config-override.g and then compare what you had to what it saved. See if there is a difference. What values are they?
-
@gorf26 what M307 values does it tell you to use when you tune it?
-
M307 H0 B0 A113.8 C611.3 D0.4 V23.0
I have gone ahead and installed 3.3RC3 and that has seemed to fix it, I tuned the hotend again and it tuned with no errors, used the m307 it suggested and when cooled down i heated it to 240c and no fault error now.
Still a little trouble with the bed tuning gives me a waring message every time and a suggested a m307 value
i enter that in the config and it heats up fine.. so guess i won't worry about it to much..Thanks gary
-
@gorf26 said in New heater tuning algorithm:
a waring message every time
The warning is normal. It's telling you how hot it predicts the heater could get in a failure situation.