-
-
Notifications
You must be signed in to change notification settings - Fork 19.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Temperature table for DyzeDesign thermistor #2915
Conversation
Thats crap.
This is a lookup table where we later interpolate in. When the sign of the slope changes we have a problem. For a given adc-value we can read two temperatures. To avoid problems they have done some more tricks. DyzeDesign@feacb36 |
Is there an easy change to this PR that I could make to move this forward? I'm not sure I understand the problem entirely. |
Would I be able to remove the line you pointed out at the expense of some accuracy at temperatures around 20-25 degrees? I don't think this needs to be very accurate at temperatures this low. |
Would you consider doing something like this?
I don't think anyone needs lower temperatures for a 3d printer. |
Or with other words. |
No problem, thanks for taking the time to explain! |
A simple test for there branch. |
Sorry if I'm a bit late to the discussion, As for the safety measures, here's the problem and our solution. Normal thermistor can't read values above 300 degrees Celsius, so we had to pick something else, as we wanted our hotends to print high temperature materials. Since these thermistors can't get proper readings below 40ish degrees Celsius, the print would systematically fail because of a mintemp error before it could heat anything. We decided to allow for a "heating" delay to compensate for that (which sounded like a better alternative than simply turning off safety measures). We did a couple of tests where we disconnected or removed the thermistor from our hotend and the heater would still turn off after a few seconds. |
To review temperature.cpp more easily, you can add |
How about connecting a resistor (~50k) in parallel to the thermistor (at a ~constant temperature place). |
@AnHardt I've made tests with the firmware proposed by DyzeDesign with the 500°C thermistor. Tests 8, 10, 12 and 14 aren't considered since the thermistor table and the mintemp are configured to work as intended. TEST 7 - Hotend's thermistor disconnected before startup No error is shown. Temperature shown is 20°C, 1°C below the mintemp error. Since the conditions «is preheating» and «target temperature > 0» is not met, the min_temp error is not shown as it would normally be. TEST 9 - Hotend's thermistor disconnected after heating begins AND before (preheating time) seconds elapsed Heater is still ON up to the end of the preheating time. TEST 11 - Hotend's thermistor disconnected after heating begins AND after (preheating time) seconds elapsed Min_temp error, heater is disabled. TEST 13 - Hotend's thermistor disconnected after target temperature reached. Min_temp error, heater is disabled. Regarding the 500°C, it is true that the readings aren't great at room temperature, but the precision is better at high temperature. Dyze design has prepared a resolution comparison chart for this sensor. http://dyzedesign.com/wp-content/uploads/2015/10/thermistor_table.jpg I hope it helped! |
Sadly, adding a resistance either in parallel or in series will lower the resolution. The only way to improve the low temperature reading is actively with a op-amp or any equivalent IC. I had the same thinking while testing this thermistor ;) |
@woodencase01 |
@KiteLab |
@woodencase01 , @EiNSTeiN- |
ADSEM Si-N-DO35-455 B=6,600 T25=4.5M (http://www.adsem.com/downloads/AdsemSiHiTempThermistors.pdf) gives a pretty close curve to yours. With 1M parallel to the sensor i calculated: Edit:Messed up a digit in R25 used 45M |
OK, i messed it up. |
The R25 is actually about 4.5MΩ. Calculating with 0Ω, 1KΩ, 500KΩ and 1MΩ, I get the maximum resolution at 210°C to respectively 5.7, 5.67, 5.70 and 5.70. The 1KΩ resistance lowered the ADC value at 20°C, which should be good, but there is actually the same ADC difference with all other alternative, which doesn't improve readings at low temperature. |
This is the temperature table for https://dyzedesign.liki.com/assembly-of-high-temperature-thermistor-500-c
I kept the thermistor number 66 which is the same they use in their fork.
@AnHardt for review
FYI @JeanSebastienCarrier-Dyze