Welcome! Log In Create A New Profile

Advanced

Duet Controller, a way of calibrating temp readings ?

Posted by Pumlux 
Duet Controller, a way of calibrating temp readings ?
January 25, 2016 06:57PM
Hi all,

I'm looking for a way to calibrate the temp readings of the Duet Controller.
I was not successful with my search so far, may be someone can advice how I can adjust the temp readings shown on the Webinterface.

I bought a chinese temperture meter on Thermocouple basis and checked the display with boiling water. The shown temp was 99.2 ° Celsius, so this point looks pretty good.
I made an excel table to compare the webfrontend shown temperature (I have only tested the print bed yet) and the read out from the top surface of my print bed with the temp meter. (I have an Aluminium printbed of 8 mm thickness)
It shows that the real temp is mostly ~20% below the shown temp in the webinterface (when heating up the print bed) .
When cooling down with the heating shwitched off, the diff between shown and real temp is only ~ 13 %.

Is there a mapping or a knob available, allowing me to correct the shown temp in the webinterface ?


Regards
Pumlux
Re: Duet Controller, a way of calibrating temp readings ?
January 26, 2016 04:14AM
Some suggestions:

1. Check that the bed thermistor is in good contact with your aluminium bed. To check this, take measurements with your thermocouple both with the bed heating up, and also with the bed power off and the bed cooling down. If the error is lower when the bed is cooling down than when passing the same temperature and heating up, that indicates poor thermal contact.

2. Secure the thermocouple to the top of the bed with Kapton tape to ensure good contact, and put thermal insulation on top of it.

3. If the bed temperature reading at about 25C is inaccurate (typically low rather than high), use the H parameter on the M305 P0 command to correct it. You can send new M305 commands from the web interface and see the results immediately. When you have found the right value, update the M305 command in config.g.

4. Check that you have the B value in the M305 P0 command set correctly for the type of bed thermistor you are using. If you use a B value higher than the actual value for your thermistor, that will cause the Duet to under-read at higher temperatures.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Duet Controller, a way of calibrating temp readings ?
January 26, 2016 06:24AM
Hi David,

thanks for the quick reply. I see I have missed to put some additional info into my post.

about 1 ) I use the Thermistor that is build in the Silicone heat pad. So no direct contact to the aluminium print plate at all. I know that is not providing an accurate and fast reading, but I would expect with some delay
a temp reading that is in the near range of the real temp. may be ~ 2-5 % difference (20% is not good). I realize, that I better should have taken the effort of an Thermistor fixed directly into the aluminium bed. I will try some tests with an further Thermistor fixed at the edge of the aluminum bed in the next weeks.

about 2) I had fixed the thermocouple with Kapton tape already, but did not put thermal isolation on top of it.

about 3) I will test this in the evening

about 4) Not sure what the B value is used for, I will read some documentation on the G-Code Wiki page and test with my printer


I haven't test the temps for the hotend yet, it is interssesting what the temp difference will be there, as the Thermistor is plugged directly into the heat block. (no thermal paste or similar used)

I will report results than.

Edited 1 time(s). Last edit at 01/26/2016 08:42PM by Pumlux.
Re: Duet Controller, a way of calibrating temp readings ?
January 26, 2016 01:03PM
I believe the B value for the thermistors used in silicone heater pads is around 3950. That's what I use for my silicone heater in the M305 P0 command. It over-reads a lot because the thermistor is close to the heating element and the silicone causes a large temperature difference between the heating element and the bed. You can see this if you turn off the heater and watch the temperatures cool down, because the thermistor reading and the bed temperature measured with a thermocouple will be much closer. I have got used to selecting higher bed temperatures than I would otherwise do, i.e. 70C for printing PLA or PETG, and 120C for printing ABS.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Duet Controller, a way of calibrating temp readings ?
January 26, 2016 03:04PM
I made a plug with a 100K resistor (measured with DMM to be 100K) and plugged it into the thermistor port. I then tweaked H value to get a reading of 25C and for B I looked it up my thermistor on RepRap and datasheets and took the value from there. I then attached the DMM's temperature probe to the bed using Kapton tape and verified values were similar at printing temps. I did similar process for the extruder. As long as my DMM is reasonable accurate (it's supposed to be) then I figure I'm pretty close.
Re: Duet Controller, a way of calibrating temp readings ?
January 26, 2016 11:05PM
That tips looks pretty good.
I'm still running tests on various parameters.
So far following M-Code delivers good matching results :

M305 P0 T100000 R4700 B5520 H-65 L0
Re: Duet Controller, a way of calibrating temp readings ?
January 27, 2016 05:35PM
Are you using 1.09r or 1.09m?

I had a problem where I had to use unusually large H values when the Z-Probe was set to switch mode, DC42 fixed that up in the R version so I would update to that if you have not already. The B value seems high for the usual thermistors, which one do you have? The common ones I've seen are more like 3950 to 4200.

Quote
Pumlux
That tips looks pretty good.
I'm still running tests on various parameters.
So far following M-Code delivers good matching results :

M305 P0 T100000 R4700 B5520 H-65 L0
Re: Duet Controller, a way of calibrating temp readings ?
January 28, 2016 02:12AM
Hi WZ9V,

I'm using 1.09m
(FIRMWARE_NAME: RepRapFirmware FIRMWARE_VERSION: 1.09m-dc42 ELECTRONICS: Duet 0.85 DATE: 2015-12-08)

From my understanding the H value is for adjusting the reading at 25 ° Celsius and the B value is an adoption parameter variance for higher temperatures from the
mathematical expected temperature.
In my maschine I have a higher discrepancy, because my bed thermistor is not installed in the aluminium bed, but in the silicone heating pad and this is for an accurate readout
an issue.
My thermistor for the heatbed was installed when the silicon pad was made in China, I do not have ana documentation on branding or technical specs, other than 100k Ohm.

The Z-probe is a different topic, as it messures not temperature. I have following command for the z-probe in my config.h file :
G31 P500 Z3.1 ; Set the probe height and threshold
I did not see a H parameter in the G31 command in the G-Code wiki, temp parameter are named differently here, see :

Usage
G31 Pnnn Xnnn Ynnn Znnn Cnnn Snnn
Parameters
Pnnn Trigger value
Xnnn Probe X offset1
Ynnn Probe Y offset1
Znnn Trigger Z height
Cnnn Temperature coefficient2
Snnn Calibration temperature2

I did not play with temp parameter in the G31 command yet, still sorting other parameters in my new printer.

When I have completed my testing with the M305 command, I plan to create a short graph on the temp curves, when this is completed I can show this here.

Edited 1 time(s). Last edit at 01/28/2016 02:14AM by Pumlux.
Re: Duet Controller, a way of calibrating temp readings ?
January 28, 2016 05:06AM
Quote
Pumlux
Hi WZ9V,

I'm using 1.09m
(FIRMWARE_NAME: RepRapFirmware FIRMWARE_VERSION: 1.09m-dc42 ELECTRONICS: Duet 0.85 DATE: 2015-12-08)

From my understanding the H value is for adjusting the reading at 25 ° Celsius and the B value is an adoption parameter variance for higher temperatures from the
mathematical expected temperature.
In my maschine I have a higher discrepancy, because my bed thermistor is not installed in the aluminium bed, but in the silicone heating pad and this is for an accurate readout
an issue.
My thermistor for the heatbed was installed when the silicon pad was made in China, I do not have ana documentation on branding or technical specs, other than 100k Ohm.

The Z-probe is a different topic, as it messures not temperature. I have following command for the z-probe in my config.h file :
G31 P500 Z3.1 ; Set the probe height and threshold
I did not see a H parameter in the G31 command in the G-Code wiki, temp parameter are named differently here, see :

Usage
G31 Pnnn Xnnn Ynnn Znnn Cnnn Snnn
Parameters
Pnnn Trigger value
Xnnn Probe X offset1
Ynnn Probe Y offset1
Znnn Trigger Z height
Cnnn Temperature coefficient2
Snnn Calibration temperature2

I did not play with temp parameter in the G31 command yet, still sorting other parameters in my new printer.

When I have completed my testing with the M305 command, I plan to create a short graph on the temp curves, when this is completed I can show this here.

I have one of those Silicn heaters with the std Chinese thermistor with a B value of 3950. I managed to get a spec sheet from Keenovo for the ones fitted and the B value is quoted as a 25/50 degree points.

I used DC42's spreadsheet calculator and determined that the correct B value at 100 degrees should be 4008 this however still causes a difference due to the heat profile across the whole arrangement and the danger with fudging like that means that yes you get the temp you expect initially but the bed continues to heat up due to the time it takes to stabilise.

I am with DC42 on set the values correctly and adjust the starting temps in your Slicr to suit even adding other temp points so that you can allow for this time effect heating the whole mass of your bed. or alternativly fit another thermistor directly to the Alloy bed

Doug
Sorry, only registered users may post in this forum.

Click here to login