Open Creo2005 opened 1 year ago
Hi,
I made modifications, added functions and improvements such as button debounce, I also explain how to modify the NTC reading table, code available at:
How can I configure these parameters in the firmware? Thanks.
Hey, did you end up getting 150-250 on the W1209?
Hi,
I haven't tested these special NTCs yet, the common NTCs usually have a reference table up to 125°C.
I didn't find any datasheet of these special NTC to see their table. But we can infer some data from the NTC formula, which must be the same as a common NTC.
I only found ads for some NTC with this temperature range:
Thermistor temperature measurement is stable. The temperature measurement of the upgraded HT-NTC100K can be up to 350 degrees, can effectively replace the K-type thermocouple. It helps much to solve the issues of strict requirements of K-type thermocouple wiring, and the line is long which is susceptible to get external interference and result in temperature fluctuation that can affect the printing quality.
Using an NTC calculator in conjunction with a resistive divider calculator, we can obtain the voltage value that the analog input of the microcontroller should read.
The problem is that at high temperatures, NTC offers a smaller resistance differential for each degree of temperature increase.
For example using a 20k resistor for R1:
245°C: 0.155V 246°C: 0.152V 247°C: 0.150V 248ºC: 0.148V 249°C: 0.146V 250°C: 0.144V
As the STM8 ADC is 10 bits, we have a reading of 0.004882813V for each bit.
245°C: 0.155V / 0.004882813V = 31.743996749 --> ADC = 31 246°C: 0.152V / 0.004882813V = 31.129596812 --> ADC = 31 247°C: 0.150V / 0.004882813V = 30.719996854 --> ADC = 30 248°C: 0.148V / 0.004882813V = 30.310396896 --> ADC = 30 249°C: 0.146V / 0.004882813V = 29.900796938 --> ADC = 29 250°C: 0.144V / 0.004882813V = 29.491196980 --> ADC = 29
Therefore, using the ADC of the STM8 (W1209), it may work with some oscillation for temperature readings as high as 250°C, and there is no longer enough resolution to get the reading of every degree.
Perhaps it would be more interesting to use a microcontroller with a 12-bit ADC (STM32).
How can I configure these parameters in the firmware? Thanks.