Thermistor

From RepRap
Revision as of 15:14, 28 July 2010 by Johnnyr (talk | contribs) (added table for ultimachine thermistor)
Jump to: navigation, search

Thermistors

RepRap Thermistors

Each thermistor has a variety of special values such as Beta and Rz value. A variety of thermistors you may encounter when building a RepRap are listed below, along with the appropriate information. These tables were calculated using this Python script.

EPCOS 100K Thermistor (B57540G0104F000)

  • Rz: 348394
// Thermistor lookup table for RepRap Temperature Sensor Boards (http://make.rrrf.org/ts)
// Made with createTemperatureLookup.py (http://svn.reprap.org/trunk/reprap/firmware/Arduino/utilities/createTemperatureLookup.py)
// ./createTemperatureLookup.py --r0=100000 --t0=25 --r1=0 --r2=4700 --beta=4066 --max-adc=1023
// r0: 100000
// t0: 25
// r1: 0
// r2: 4700
// beta: 4066
// max adc: 1023
#define NUMTEMPS 20
short temptable[NUMTEMPS][2] = {
   {1, 841},
   {54, 255},
   {107, 209},
   {160, 184},
   {213, 166},
   {266, 153},
   {319, 142},
   {372, 132},
   {425, 124},
   {478, 116},
   {531, 108},
   {584, 101},
   {637, 93},
   {690, 86},
   {743, 78},
   {796, 70},
   {849, 61},
   {902, 50},
   {955, 34},
   {1008, 3}
};


RRRF 100K Thermistor

  • Rz: 337254
// Thermistor lookup table for RepRap Temperature Sensor Boards (http://make.rrrf.org/ts)
// Made with createTemperatureLookup.py (http://svn.reprap.org/trunk/reprap/firmware/Arduino/utilities/createTemperatureLookup.py)
// ./createTemperatureLookup.py --r0=100000 --t0=25 --r1=0 --r2=4700 --beta=3960 --max-adc=1023
// r0: 100000
// t0: 25
// r1: 0
// r2: 4700
// beta: 3960
// max adc: 1023
#define NUMTEMPS 20
short temptable[NUMTEMPS][2] = {
   {1, 929},
   {54, 266},
   {107, 217},
   {160, 190},
   {213, 172},
   {266, 158},
   {319, 146},
   {372, 136},
   {425, 127},
   {478, 119},
   {531, 111},
   {584, 103},
   {637, 96},
   {690, 88},
   {743, 80},
   {796, 71},
   {849, 62},
   {902, 50},
   {955, 34},
   {1008, 2}
};


RRRF 10K Thermistor

  • Rz: 29000
// Thermistor lookup table for RepRap Temperature Sensor Boards (http://make.rrrf.org/ts)
// Made with createTemperatureLookup.py (http://svn.reprap.org/trunk/reprap/firmware/Arduino/utilities/createTemperatureLookup.py)
// ./createTemperatureLookup.py --r0=10000 --t0=25 --r1=680 --r2=1600 --beta=3964 --max-adc=305
// r0: 10000
// t0: 25
// r1: 680
// r2: 1600
// beta: 3964
// max adc: 305
#define NUMTEMPS 19
short temptable[NUMTEMPS][2] = {
   {1, 601},
   {17, 260},
   {33, 213},
   {49, 187},
   {65, 170},
   {81, 156},
   {97, 144},
   {113, 134},
   {129, 125},
   {145, 117},
   {161, 109},
   {177, 101},
   {193, 94},
   {209, 86},
   {225, 78},
   {241, 69},
   {257, 59},
   {273, 46},
   {289, 28}
};



RS 10K Thermistor

Cache-R4840127-01.jpg
  • Beta: 3480
  • Rz: 29000
// Thermistor lookup table for RepRap Temperature Sensor Boards (http://make.rrrf.org/ts)
// Made with createTemperatureLookup.py (http://svn.reprap.org/trunk/reprap/firmware/Arduino/utilities/createTemperatureLookup.py)
// ./createTemperatureLookup.py --r0=10000 --t0=25 --r1=680 --r2=1600 --beta=3480 --max-adc=315
// r0: 10000
// t0: 25
// r1: 680
// r2: 1600
// beta: 3480
// max adc: 315
#define NUMTEMPS 20
short temptable[NUMTEMPS][2] = {
   {1, 922},
   {17, 327},
   {33, 260},
   {49, 225},
   {65, 202},
   {81, 184},
   {97, 169},
   {113, 156},
   {129, 145},
   {145, 134},
   {161, 125},
   {177, 115},
   {193, 106},
   {209, 96},
   {225, 87},
   {241, 76},
   {257, 64},
   {273, 50},
   {289, 29},
   {305, -45}
};

EPCOS 100K Thermistor (B57560G1104F)

UltiMachine Thermistor

// Made with createTemperatureLookup.py (http://svn.reprap.org/trunk/reprap/firm
ware/Arduino/utilities/createTemperatureLookup.py)
// ./createTemperatureLookup.py --r0=100000 --t0=25 --r1=0 --r2=4700 --beta=4092
 --max-adc=1023
// r0: 100000
// t0: 25
// r1: 0
// r2: 4700
// beta: 4092
// max adc: 1023
#define NUMTEMPS 20
short temptable[NUMTEMPS][2] = {
   {1, 821},
   {54, 252},
   {107, 207},
   {160, 182},
   {213, 165},
   {266, 152},
   {319, 141},
   {372, 131},
   {425, 123},
   {478, 115},
   {531, 107},
   {584, 100},
   {637, 93},
   {690, 86},
   {743, 78},
   {796, 70},
   {849, 60},
   {902, 49},
   {955, 34},
   {1008, 3}
};


Thermistor Calculations

If you are using a non-standard thermistor, or you simply want more information on how they work, check these pages out. Do bear in mind that the PIC will not correctly calculate temperature if the resistance drops below 1K, so if yours does, stick a small resistance in series with the thermistor to ensure that the overall resistance remains above 1K.

Calculating Thermistor Beta / Rz Values

This is how you calculate the Beta and Rz values for a thermistor. You'll need this valuable if you plan on using a non-standard thermistor for sure. The page contains a javascript calculator to make things easy.

Read more here

Calculating PIC Temperatures

The PIC uses a capacitor and charges it through the thermistor. It sends the temperature back to the host as a timer reading. This page describes how it is calculated and how to choose the right capacitor.

Read more here