@wombat37
Seems that I had forgotten to update the DWC files in \www.
Layer Chart is now working nicely
Sorry...
Best posts made by Wombat37
-
RE: Layer number always Null
-
RE: Hot-End Thermistor Temperature calibration
Thanks everyone for the quick responses.
I totally agree that using a better quality thermistor is a good way to go. However, there are many more variables that affect the accuracy of temperature control. I just moved this same thermistor between two different boards with the same settings and saw a 20°C difference when measured independently. Something was different with the board, the cabling, the PSU, thermal lag, the firmware, etc., etc. I don't think a bad thermistor caused this.
Jay_s_uk stated that a 3950 thermistor has poor resolution at the top end. With a 12-bit ADC, this equates to about 19 counts/°C at 240°C. With the 104Gt (beta = 4267), it's much worse at about 12 counts/°C and a lower ceiling for the top temperature. So, I don't quite understand your comment about it being worse.
Proper calibration using independent temperature measurements is always a more reliable approach than just typing in expected numbers and then assuming that everything is working correctly. I know it's easy to dismiss stuff as cheap rubbish but unless you make measurements like this, it's difficult to have a basis for such claims.
Also, before you challenge my method of making these measurements, I used an expensive Omega probe thermocouple inside the nozzle which had been calibrated beforehand using melting pure tin metal (231.9°C) and not just ice and steam.
Back to my original question, is there any way of getting access to the raw data values from the ADC in RRF?
I apologize if I'm coming across a bit snarky - it's not intended. I do appreciate your input, I just like to fully understand things before I accept or dismiss them.
-
RE: Hot-End Thermistor Temperature calibration
I don't think it would be fully automatic but more macro-guided.
The macro would ask the user to adjust 3 or 4 temperatures and then do the calculations to determine values for R25 and Beta. I'm still thinking on how to handle the LowOffset and HighOffset settings, my board doesn't automatically calculate these.
Regarding the quality of the B3950 vs B4267 and other higher Beta thermistors, it might not be so much an issue of resolution but of noise and stability (and robustness). Lower resolution but less noise might be a better combination.
-
RE: Hot-End Thermistor Temperature calibration
I seem to be on a roll, now
I've started reviewing the data sheets for expensive "high quality thermistors". Whereas the resistance seems to be stable (<1%) at a given temperature, the absolute resistance can be very variable. The specs seem be all over the place for Selco thermistors as shown in the table below. The Beta values change significantly between 0-50°C and 25-85°C ranges and the R25 value varies by almost 5% in some instances. The R25 variance doesn't affect things too much but the change in Beta certainly does and measurements are going to be way-off once the high temperatures are reached if we use Beta values for low temperatures in the M308 entry. So, in my mind, unless anybody can convince me otherwise, buying an expensive, high quality thermistor does not mitigate the need for proper temperature calibration. If the thermistor Beta and R25 varies between devices, then all the more need for calibration. QED.
-
RE: Hot-End Thermistor Temperature calibration
I seem to be losing this argument
My understanding is that a thermistor can match the performance of a platinum RTD - if it's properly calibrated!
It is the calibration that is the challenge because it's very non-linear and variable.
If we can make this easy then anyone's system currently using a thermistor (which I assume is the vast majority of us) could, without making any hardware modifications, get better temperature control of the hot-end (even with cheap thermistors). This would lead to consistent performance over long periods and and more reliable portage of methods between different systems.
Why wouldn't we want to do this?
-
RE: Hot-End Thermistor Temperature calibration
Your point for an accurate thermometer is well taken but I'm not sure why you would need an oven/bath to do this. Air baths are notorious for thermal gradients (I used to help design and evaluate gas chromatographs). Pushing a well calibrated 1-mm (or smaller) diameter thermocouple probe through the heat-break and into the inside of the nozzle would be my approach.
I have a fourth suggestion:
- Publish thermistor Beta values for the 180-260°C range. I will try to put together some suggestions for these based on manufacturers' published R vs T tables.
This must be much better than using the Beta values published for a 0-25°C range.
Maybe this will be enough to eliminate the need for calibration.
-
RE: Hot-End Thermistor Temperature calibration
I used pure metallic tin last time - which worked well (m.p 231.9°C). I can also look at the boiling points of silicone oil or something like dodecane. Solder probably won't be very pure and as an alloy, its composition may vary. Also, it may not have a sharp melting point like pure substance. However, we're not during purity analysis (melting points can be used as a measure of purity) here so a few degrees error probably won't hurt.
Looks like there is some interest in this topic, so I will keep looking into this. I'll post up an algorithm over the next few days and see what people think of that and get some more ideas.
-
RE: Hot-End Thermistor Temperature calibration
I didn't realize that these solders were eutectic. Most alloys typically melt over a range of temperature.
Regarding tin, it's not too expensive to get reasonable purity - perhaps less than the solder you recommend:
I agree about boiling points being a bit erratic because of superheating. However, many things supercool so care has to be taken to determine melting points as well.
I feel it would be enough to use just one calibration point (in addition to ice or steam) for the digital thermometer for a narrow range of operating temperatures - say, something in the 180 to 260°C range. I don't really care if the temperature below that is accurate - it's never used except to tell me that the hot-end is now cold enough to touch. There's an easy way to find that out anyway. We can still do the cubic coefficient determination by taking more measurements with the thermocouple probe. Solving 3rd-order equations may be a bit challenging for RRF macros, though.
Latest posts made by Wombat37
-
RE: Hot-End Thermistor Temperature calibration
@digid I don't measure the thermistor resistances explicitly, rather, I back-calculate what they are from the displayed temperatures and the current T, B and C entries in the M308 g-code statement. This requires solving the roots of cubic equations (complex numbers are not nice). Then I have to solve some 3-term simultaneous equations to get the new Steinhart Hart coefficients for entry into the M308 statement. It's not very straightforward - however, the software is easy to use
I'll get the white paper and software to you shortly.
-
RE: Hot-End Thermistor Temperature calibration
@wombat37 Following on from my last posting, I have now completed my tests and believe that I now have a quick, easy, cheap, reliable and accurate method of calibrating hot end thermistor temperature control (with all three Steinhart Hart coefficients) that should work with any printer without any disassembly or modification or even the need for a thermometer.
With a cheap unbranded thermistor I believe that I can achieve accuracy within 1°C across the full working range.
I'm currently in the process of writing up a white-paper on this. If anyone is interested in beta-testing this method, let me know.
-
RE: Hot-End Thermistor Temperature calibration
@mendenmh I had a great idea that came to me overnight and maybe this is what you had in mind all along. Solder and tin can come in reels of wire. This wire could be pushed directly into the hot end. If the temperature of the hot end was (very) slowly increased, there would come a point at which the metal would melt and the wire could be extruded. This would be at the melting point of the wire and so the temperature of the hot-end would now be known - at the exact location it's needed. Hopefully because the alloy is eutectic this measurement will be very precise and repeatable. I'm also thinking that, unlike filament, the molten metal will have low viscosity and will quickly drip out of the nozzle.
I've been hung up on how to calibrate and use thermocouple probes etc. to make temperature measurements but this extrusion approach would eliminate all that crap and provide a very direct, cheap and simple means of performing a single point temperature calibration without needing any additional equipment and would work for any type of temperature sensor on any printer.
Of course, all depends on the details.
I'm thinking of something along the lines of:
- Cut a short length of solder wire of suitable diameter - say 100mm x 1.5mm
- Heat up the hot end
- Remove any filament from the hot-end and perhaps fit a new nozzle
- Set the hot-end temperature to about 20°C below the melting point of the solder
- Push one end of the solder wire into the hot-end through the heat-break
- Attach a weight to the other end to assert a sustained force on the wire
- Run a macro to increase the hot-end temperature at a slow rate - say 1°C/min
- Look for molten solder emerging from the nozzle and note the temperature reading when it does.
- Use the read temperature and the known melting point of the solder to make a correction to the hot-end temperature calibration
- Catch the liquid metal in a suitable dish or tray
- If we could find other solder/metals/alloys that melt at different temperatures we could as you say, determine the cubic coefficient, C, for a thermistor
- If we wanted to automate this, we could locate an electrode immediately beneath the nozzle to detect the presence of molten metal at that point and feed that event back into the running macro.
Some questions:
- Will the rosin in the solder affect the result?
- Will the solder corrode/dissolve the metal in the nozzle and affect the result and/or destroy the nozzle? What type of nozzle would be best? Brass, copper, steel, stainless steel, titanium - they all seem to be available.
- Will solder be left in the nozzle after the test making it useless for later work with filament? Could it be removed by a wash of filament? Perhaps we would need a dedicated nozzle for these temperature tests.
- What diameter nozzle orifice would be best? 1mm?
I may try out some quick tests as a sort of proof of concept exercise. But this looks like a good way to go and thank you for your input that led to this.
-
RE: Hot-End Thermistor Temperature calibration
I didn't realize that these solders were eutectic. Most alloys typically melt over a range of temperature.
Regarding tin, it's not too expensive to get reasonable purity - perhaps less than the solder you recommend:
I agree about boiling points being a bit erratic because of superheating. However, many things supercool so care has to be taken to determine melting points as well.
I feel it would be enough to use just one calibration point (in addition to ice or steam) for the digital thermometer for a narrow range of operating temperatures - say, something in the 180 to 260°C range. I don't really care if the temperature below that is accurate - it's never used except to tell me that the hot-end is now cold enough to touch. There's an easy way to find that out anyway. We can still do the cubic coefficient determination by taking more measurements with the thermocouple probe. Solving 3rd-order equations may be a bit challenging for RRF macros, though.
-
RE: Hot-End Thermistor Temperature calibration
I used pure metallic tin last time - which worked well (m.p 231.9°C). I can also look at the boiling points of silicone oil or something like dodecane. Solder probably won't be very pure and as an alloy, its composition may vary. Also, it may not have a sharp melting point like pure substance. However, we're not during purity analysis (melting points can be used as a measure of purity) here so a few degrees error probably won't hurt.
Looks like there is some interest in this topic, so I will keep looking into this. I'll post up an algorithm over the next few days and see what people think of that and get some more ideas.
-
RE: Hot-End Thermistor Temperature calibration
OK, everyone, thanks for the input - it was an interesting discussion.
I still feel strongly that to enter thermistor performance specifications based on 25°C operation is a bad idea when you want to control temperatures at 200°C and above. This was not meant to be a discussion about thermistors versus RTDs but how to get better performance when using thermistors.
My control board doesn't support the direct connection of an RTD so I would need to spend ~$20 on an amplifier/SPI interface, another ~$20 on the PT100 or PT1000 and then I would have to make modifications to my control board (like remove serial resistor). It's just not worth the cost or effort (or risk)! Even then, I would still need to calibrate it. If it was easy to connect an RTD, I wouldn't have started this posting.
The point on the nozzle temperature being different from the thermistor temperature is well taken which is why I'm calibrating temperature based on measurements from inside the nozzle itself.
Guess, I'll make my own arrangements to calibrate my system and it looks like there's no interest in me sharing these results or solutions.
Good to know.
Thanks again.
-
RE: Hot-End Thermistor Temperature calibration
Your point for an accurate thermometer is well taken but I'm not sure why you would need an oven/bath to do this. Air baths are notorious for thermal gradients (I used to help design and evaluate gas chromatographs). Pushing a well calibrated 1-mm (or smaller) diameter thermocouple probe through the heat-break and into the inside of the nozzle would be my approach.
I have a fourth suggestion:
- Publish thermistor Beta values for the 180-260°C range. I will try to put together some suggestions for these based on manufacturers' published R vs T tables.
This must be much better than using the Beta values published for a 0-25°C range.
Maybe this will be enough to eliminate the need for calibration.
-
RE: Hot-End Thermistor Temperature calibration
I seem to be losing this argument
My understanding is that a thermistor can match the performance of a platinum RTD - if it's properly calibrated!
It is the calibration that is the challenge because it's very non-linear and variable.
If we can make this easy then anyone's system currently using a thermistor (which I assume is the vast majority of us) could, without making any hardware modifications, get better temperature control of the hot-end (even with cheap thermistors). This would lead to consistent performance over long periods and and more reliable portage of methods between different systems.
Why wouldn't we want to do this?
-
RE: Hot-End Thermistor Temperature calibration
I seem to be on a roll, now
I've started reviewing the data sheets for expensive "high quality thermistors". Whereas the resistance seems to be stable (<1%) at a given temperature, the absolute resistance can be very variable. The specs seem be all over the place for Selco thermistors as shown in the table below. The Beta values change significantly between 0-50°C and 25-85°C ranges and the R25 value varies by almost 5% in some instances. The R25 variance doesn't affect things too much but the change in Beta certainly does and measurements are going to be way-off once the high temperatures are reached if we use Beta values for low temperatures in the M308 entry. So, in my mind, unless anybody can convince me otherwise, buying an expensive, high quality thermistor does not mitigate the need for proper temperature calibration. If the thermistor Beta and R25 varies between devices, then all the more need for calibration. QED.
-
RE: Hot-End Thermistor Temperature calibration
I don't think it would be fully automatic but more macro-guided.
The macro would ask the user to adjust 3 or 4 temperatures and then do the calculations to determine values for R25 and Beta. I'm still thinking on how to handle the LowOffset and HighOffset settings, my board doesn't automatically calculate these.
Regarding the quality of the B3950 vs B4267 and other higher Beta thermistors, it might not be so much an issue of resolution but of noise and stability (and robustness). Lower resolution but less noise might be a better combination.