From: Ian Jackson Date: Sat, 28 Jul 2012 19:56:43 +0000 (+0000) Subject: get temp tables from "RepRapPro-Huxley-July-2012" ie c33ed4dcb852815f16f0ebb7dd9433e4... X-Git-Tag: iwj-success-2012-07-29~5 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=0b3d4364b7b52efda6fb492f91aca92da70c6d19;p=marlin.git get temp tables from "RepRapPro-Huxley-July-2012" ie c33ed4dcb852815f16f0ebb7dd9433e4d7d78590 --- diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 6cff329..8d2e710 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -310,148 +310,267 @@ const short temptable_7[][2] PROGMEM = { {1005*OVERSAMPLENR, 5} }; #endif - -#if (THERMISTORHEATER_0 == 51) || (THERMISTORHEATER_1 == 51) || (THERMISTORHEATER_2 == 51) || (THERMISTORBED == 51) -// 100k EPCOS (WITH 1kohm RESISTOR FOR PULLUP, R9 ON SANGUINOLOLU! NOT FOR 4.7kohm PULLUP! THIS IS NOT NORMAL!) -// Verified by linagee. -// Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance -// Advantage: Twice the resolution and better linearity from 150C to 200C -const short temptable_51[][2] PROGMEM = { - {1*OVERSAMPLENR, 350}, - {190*OVERSAMPLENR, 250}, //top rating 250C - {203*OVERSAMPLENR, 245}, - {217*OVERSAMPLENR, 240}, - {232*OVERSAMPLENR, 235}, - {248*OVERSAMPLENR, 230}, - {265*OVERSAMPLENR, 225}, - {283*OVERSAMPLENR, 220}, - {302*OVERSAMPLENR, 215}, - {322*OVERSAMPLENR, 210}, - {344*OVERSAMPLENR, 205}, - {366*OVERSAMPLENR, 200}, - {390*OVERSAMPLENR, 195}, - {415*OVERSAMPLENR, 190}, - {440*OVERSAMPLENR, 185}, - {467*OVERSAMPLENR, 180}, - {494*OVERSAMPLENR, 175}, - {522*OVERSAMPLENR, 170}, - {551*OVERSAMPLENR, 165}, - {580*OVERSAMPLENR, 160}, - {609*OVERSAMPLENR, 155}, - {638*OVERSAMPLENR, 150}, - {666*OVERSAMPLENR, 145}, - {695*OVERSAMPLENR, 140}, - {722*OVERSAMPLENR, 135}, - {749*OVERSAMPLENR, 130}, - {775*OVERSAMPLENR, 125}, - {800*OVERSAMPLENR, 120}, - {823*OVERSAMPLENR, 115}, - {845*OVERSAMPLENR, 110}, - {865*OVERSAMPLENR, 105}, - {884*OVERSAMPLENR, 100}, - {901*OVERSAMPLENR, 95}, - {917*OVERSAMPLENR, 90}, - {932*OVERSAMPLENR, 85}, - {944*OVERSAMPLENR, 80}, - {956*OVERSAMPLENR, 75}, - {966*OVERSAMPLENR, 70}, - {975*OVERSAMPLENR, 65}, - {982*OVERSAMPLENR, 60}, - {989*OVERSAMPLENR, 55}, - {995*OVERSAMPLENR, 50}, - {1000*OVERSAMPLENR, 45}, - {1004*OVERSAMPLENR, 40}, - {1007*OVERSAMPLENR, 35}, - {1010*OVERSAMPLENR, 30}, - {1013*OVERSAMPLENR, 25}, - {1015*OVERSAMPLENR, 20}, - {1017*OVERSAMPLENR, 15}, - {1018*OVERSAMPLENR, 10}, - {1019*OVERSAMPLENR, 5}, - {1020*OVERSAMPLENR, 0}, - {1021*OVERSAMPLENR, -5} +// +#if (THERMISTORHEATER_0 == 100) || (THERMISTORHEATER_1 == 100) || (THERMISTORHEATER_2 == 100) || (THERMISTORBED == 100) // 100k DO-35 NTC +const short temptable_100[][2] PROGMEM = { + {1*OVERSAMPLENR, 929}, + {36*OVERSAMPLENR, 299}, + {71*OVERSAMPLENR, 246}, + {106*OVERSAMPLENR, 217}, + {141*OVERSAMPLENR, 198}, + {176*OVERSAMPLENR, 184}, + {211*OVERSAMPLENR, 173}, + {246*OVERSAMPLENR, 163}, + {281*OVERSAMPLENR, 154}, + {316*OVERSAMPLENR, 147}, + {351*OVERSAMPLENR, 140}, + {386*OVERSAMPLENR, 134}, + {421*OVERSAMPLENR, 128}, + {456*OVERSAMPLENR, 122}, + {491*OVERSAMPLENR, 117}, + {526*OVERSAMPLENR, 112}, + {561*OVERSAMPLENR, 107}, + {596*OVERSAMPLENR, 102}, + {631*OVERSAMPLENR, 97}, + {666*OVERSAMPLENR, 91}, + {701*OVERSAMPLENR, 86}, + {736*OVERSAMPLENR, 81}, + {771*OVERSAMPLENR, 76}, + {806*OVERSAMPLENR, 70}, + {841*OVERSAMPLENR, 63}, + {876*OVERSAMPLENR, 56}, + {911*OVERSAMPLENR, 48}, + {946*OVERSAMPLENR, 38}, + {981*OVERSAMPLENR, 23}, + {1005*OVERSAMPLENR, 5}, + {1016*OVERSAMPLENR, 0} +}; +#endif +#if (THERMISTORHEATER_0 == 101) || (THERMISTORHEATER_1 == 101) || (THERMISTORHEATER_2 == 101) || (THERMISTORBED == 101) // 100k Honeywell 135-104LAG-J01 +const short temptable_101[][2] PROGMEM = { + {1*OVERSAMPLENR, 704}, + {54*OVERSAMPLENR, 216}, + {107*OVERSAMPLENR, 175}, + {160*OVERSAMPLENR, 152}, + {213*OVERSAMPLENR, 137}, + {266*OVERSAMPLENR, 125}, + {319*OVERSAMPLENR, 115}, + {372*OVERSAMPLENR, 106}, + {425*OVERSAMPLENR, 99}, + {478*OVERSAMPLENR, 91}, + {531*OVERSAMPLENR, 85}, + {584*OVERSAMPLENR, 78}, + {637*OVERSAMPLENR, 71}, + {690*OVERSAMPLENR, 65}, + {743*OVERSAMPLENR, 58}, + {796*OVERSAMPLENR, 50}, + {849*OVERSAMPLENR, 42}, + {902*OVERSAMPLENR, 31}, + {955*OVERSAMPLENR, 17}, + {1008*OVERSAMPLENR, 0} +}; +#endif +#if (THERMISTORHEATER_0 == 102) || (THERMISTORHEATER_1 == 102) || (THERMISTORHEATER_2 == 102) || (THERMISTORBED == 102) // EPCOS G57540 +const short temptable_102[][2] PROGMEM = { +{15*OVERSAMPLENR,286}, +{16*OVERSAMPLENR,282}, +{17*OVERSAMPLENR,278}, +{18*OVERSAMPLENR,274}, +{19*OVERSAMPLENR,270}, +{20*OVERSAMPLENR,266}, +{21*OVERSAMPLENR,262}, +{22*OVERSAMPLENR,258}, +{23*OVERSAMPLENR,254}, +{25*OVERSAMPLENR,250}, +{27*OVERSAMPLENR,246}, +{28*OVERSAMPLENR,242}, +{31*OVERSAMPLENR,238}, +{33*OVERSAMPLENR,234}, +{35*OVERSAMPLENR,230}, +{38*OVERSAMPLENR,226}, +{41*OVERSAMPLENR,222}, +{44*OVERSAMPLENR,218}, +{48*OVERSAMPLENR,214}, +{52*OVERSAMPLENR,210}, +{56*OVERSAMPLENR,206}, +{61*OVERSAMPLENR,202}, +{66*OVERSAMPLENR,198}, +{71*OVERSAMPLENR,194}, +{78*OVERSAMPLENR,190}, +{84*OVERSAMPLENR,186}, +{92*OVERSAMPLENR,182}, +{100*OVERSAMPLENR,178}, +{109*OVERSAMPLENR,174}, +{120*OVERSAMPLENR,170}, +{131*OVERSAMPLENR,166}, +{143*OVERSAMPLENR,162}, +{156*OVERSAMPLENR,158}, +{171*OVERSAMPLENR,154}, +{187*OVERSAMPLENR,150}, +{205*OVERSAMPLENR,146}, +{224*OVERSAMPLENR,142}, +{224*OVERSAMPLENR,160}, +{245*OVERSAMPLENR,155}, +{268*OVERSAMPLENR,150}, +{293*OVERSAMPLENR,145}, +{320*OVERSAMPLENR,140}, +{348*OVERSAMPLENR,135}, +{379*OVERSAMPLENR,130}, +{411*OVERSAMPLENR,125}, +{480*OVERSAMPLENR,115}, +{553*OVERSAMPLENR,105}, +{628*OVERSAMPLENR,95}, +{702*OVERSAMPLENR,85}, +{770*OVERSAMPLENR,75}, +{830*OVERSAMPLENR,65}, +{881*OVERSAMPLENR,55}, +{922*OVERSAMPLENR,45}, +{954*OVERSAMPLENR,35}, +{977*OVERSAMPLENR,25}, +{993*OVERSAMPLENR,15}, +{999*OVERSAMPLENR,10}, +{1008*OVERSAMPLENR,0}, +}; +#endif +#if (THERMISTORHEATER_0 == 103) || (THERMISTORHEATER_1 == 103) || (THERMISTORHEATER_2 == 103) || (THERMISTORBED == 103) // EPCOS G57540 +const short temptable_103[][2] PROGMEM = { + {1*OVERSAMPLENR, 628}, + {187*OVERSAMPLENR, 156}, + {218*OVERSAMPLENR, 148}, + {249*OVERSAMPLENR, 141}, + {280*OVERSAMPLENR, 135}, + {311*OVERSAMPLENR, 129}, + {342*OVERSAMPLENR, 124}, + {373*OVERSAMPLENR, 120}, + {404*OVERSAMPLENR, 115}, + {435*OVERSAMPLENR, 111}, + {466*OVERSAMPLENR, 107}, + {497*OVERSAMPLENR, 103}, + {528*OVERSAMPLENR, 99}, + {559*OVERSAMPLENR, 96}, + {590*OVERSAMPLENR, 92}, + {621*OVERSAMPLENR, 88}, + {652*OVERSAMPLENR, 84}, + {683*OVERSAMPLENR, 81}, + {714*OVERSAMPLENR, 77}, + {745*OVERSAMPLENR, 73}, + {776*OVERSAMPLENR, 68}, + {807*OVERSAMPLENR, 64}, + {838*OVERSAMPLENR, 59}, + {869*OVERSAMPLENR, 54}, + {900*OVERSAMPLENR, 48}, + {931*OVERSAMPLENR, 40}, + {962*OVERSAMPLENR, 31}, + {993*OVERSAMPLENR, 17}, + {1008*OVERSAMPLENR,0} +}; +#endif +#if (THERMISTORHEATER_0 == 104) || (THERMISTORHEATER_1 == 104) || (THERMISTORHEATER_2 == 104) || (THERMISTORBED == 104) // EPCOS G57540G103F - r2=4k7 +const short temptable_104[][2] PROGMEM = { + {1*OVERSAMPLENR, 599}, + {54*OVERSAMPLENR, 160}, + {107*OVERSAMPLENR, 123}, + {160*OVERSAMPLENR, 103}, + {213*OVERSAMPLENR, 90}, + {266*OVERSAMPLENR, 79}, + {319*OVERSAMPLENR, 70}, + {372*OVERSAMPLENR, 62}, + {425*OVERSAMPLENR, 55}, + {478*OVERSAMPLENR, 49}, + {531*OVERSAMPLENR, 43}, + {584*OVERSAMPLENR, 37}, + {637*OVERSAMPLENR, 31}, + {690*OVERSAMPLENR, 25}, + {743*OVERSAMPLENR, 19}, + {796*OVERSAMPLENR, 12}, + {849*OVERSAMPLENR, 5}, + {902*OVERSAMPLENR, -3}, + {955*OVERSAMPLENR, -16}, + {1008*OVERSAMPLENR, -42} +}; +#endif +#if (THERMISTORHEATER_0 == 105) || (THERMISTORHEATER_1 == 105) || (THERMISTORHEATER_2 == 105) || (THERMISTORBED == 105) // EPCOS G57540G103F - r2=10k +const short temptable_105[][2] PROGMEM = { + {1*OVERSAMPLENR, 460}, + {54*OVERSAMPLENR, 123}, + {107*OVERSAMPLENR, 92}, + {160*OVERSAMPLENR, 75}, + {213*OVERSAMPLENR, 63}, + {266*OVERSAMPLENR, 54}, + {319*OVERSAMPLENR, 46}, + {372*OVERSAMPLENR, 40}, + {425*OVERSAMPLENR, 34}, + {478*OVERSAMPLENR, 28}, + {531*OVERSAMPLENR, 23}, + {584*OVERSAMPLENR, 17}, + {637*OVERSAMPLENR, 12}, + {690*OVERSAMPLENR, 7}, + {743*OVERSAMPLENR, 2}, + {796*OVERSAMPLENR, -3}, + {849*OVERSAMPLENR, -10}, + {902*OVERSAMPLENR, -18}, + {955*OVERSAMPLENR, -29}, + {1008*OVERSAMPLENR, -53} }; #endif -#if (THERMISTORHEATER_0 == 52) || (THERMISTORHEATER_1 == 52) || (THERMISTORHEATER_2 == 52) || (THERMISTORBED == 52) -// 200k ATC Semitec 204GT-2 (WITH 1kohm RESISTOR FOR PULLUP, R9 ON SANGUINOLOLU! NOT FOR 4.7kohm PULLUP! THIS IS NOT NORMAL!) -// Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf -// Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance -// Advantage: More resolution and better linearity from 150C to 200C -const short temptable_52[][2] PROGMEM = { - {1*OVERSAMPLENR, 500}, - {125*OVERSAMPLENR, 300}, //top rating 300C - {142*OVERSAMPLENR, 290}, - {162*OVERSAMPLENR, 280}, - {185*OVERSAMPLENR, 270}, - {211*OVERSAMPLENR, 260}, - {240*OVERSAMPLENR, 250}, - {274*OVERSAMPLENR, 240}, - {312*OVERSAMPLENR, 230}, - {355*OVERSAMPLENR, 220}, - {401*OVERSAMPLENR, 210}, - {452*OVERSAMPLENR, 200}, - {506*OVERSAMPLENR, 190}, - {563*OVERSAMPLENR, 180}, - {620*OVERSAMPLENR, 170}, - {677*OVERSAMPLENR, 160}, - {732*OVERSAMPLENR, 150}, - {783*OVERSAMPLENR, 140}, - {830*OVERSAMPLENR, 130}, - {871*OVERSAMPLENR, 120}, - {906*OVERSAMPLENR, 110}, - {935*OVERSAMPLENR, 100}, - {958*OVERSAMPLENR, 90}, - {976*OVERSAMPLENR, 80}, - {990*OVERSAMPLENR, 70}, - {1000*OVERSAMPLENR, 60}, - {1008*OVERSAMPLENR, 50}, - {1013*OVERSAMPLENR, 40}, - {1017*OVERSAMPLENR, 30}, - {1019*OVERSAMPLENR, 20}, - {1021*OVERSAMPLENR, 10}, - {1022*OVERSAMPLENR, 0} +#if (THERMISTORHEATER_0 == 110) || (THERMISTORHEATER_1 == 110) || (THERMISTORHEATER_2 == 110) || (THERMISTORBED == 110) // RS thermistor 198-961 +const short temptable_110[][2] PROGMEM = { + {1*OVERSAMPLENR, 704}, + {15*OVERSAMPLENR, 280}, + {21*OVERSAMPLENR, 266}, + {41*OVERSAMPLENR, 234}, + {61*OVERSAMPLENR, 208}, + {81*OVERSAMPLENR, 191}, + {101*OVERSAMPLENR, 178}, + {121*OVERSAMPLENR, 168}, + {141*OVERSAMPLENR, 159}, + {161*OVERSAMPLENR, 152}, + {181*OVERSAMPLENR, 146}, + {221*OVERSAMPLENR, 135}, + {261*OVERSAMPLENR, 126}, + {301*OVERSAMPLENR, 118}, + {341*OVERSAMPLENR, 111}, + {381*OVERSAMPLENR, 105}, + {421*OVERSAMPLENR, 99}, + {461*OVERSAMPLENR, 94}, + {501*OVERSAMPLENR, 88}, + {541*OVERSAMPLENR, 83}, + {581*OVERSAMPLENR, 78}, + {621*OVERSAMPLENR, 73}, + {661*OVERSAMPLENR, 68}, + {741*OVERSAMPLENR, 58}, + {781*OVERSAMPLENR, 52}, + {821*OVERSAMPLENR, 46}, + {861*OVERSAMPLENR, 40}, + {901*OVERSAMPLENR, 32}, + {981*OVERSAMPLENR, 7}, + {1008*OVERSAMPLENR, 0} }; #endif -#if (THERMISTORHEATER_0 == 55) || (THERMISTORHEATER_1 == 55) || (THERMISTORHEATER_2 == 55) || (THERMISTORBED == 55) -// 100k ATC Semitec 104GT-2 (Used on ParCan) (WITH 1kohm RESISTOR FOR PULLUP, R9 ON SANGUINOLOLU! NOT FOR 4.7kohm PULLUP! THIS IS NOT NORMAL!) -// Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf -// Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance -// Advantage: More resolution and better linearity from 150C to 200C -const short temptable_52[][2] PROGMEM = { - {1*OVERSAMPLENR, 500}, - {76*OVERSAMPLENR, 300}, - {87*OVERSAMPLENR, 290}, - {100*OVERSAMPLENR, 280}, - {114*OVERSAMPLENR, 270}, - {131*OVERSAMPLENR, 260}, - {152*OVERSAMPLENR, 250}, - {175*OVERSAMPLENR, 240}, - {202*OVERSAMPLENR, 230}, - {234*OVERSAMPLENR, 220}, - {271*OVERSAMPLENR, 210}, - {312*OVERSAMPLENR, 200}, - {359*OVERSAMPLENR, 190}, - {411*OVERSAMPLENR, 180}, - {467*OVERSAMPLENR, 170}, - {527*OVERSAMPLENR, 160}, - {590*OVERSAMPLENR, 150}, - {652*OVERSAMPLENR, 140}, - {713*OVERSAMPLENR, 130}, - {770*OVERSAMPLENR, 120}, - {822*OVERSAMPLENR, 110}, - {867*OVERSAMPLENR, 100}, - {905*OVERSAMPLENR, 90}, - {936*OVERSAMPLENR, 80}, - {961*OVERSAMPLENR, 70}, - {979*OVERSAMPLENR, 60}, - {993*OVERSAMPLENR, 50}, - {1003*OVERSAMPLENR, 40}, - {1010*OVERSAMPLENR, 30}, - {1015*OVERSAMPLENR, 20}, - {1018*OVERSAMPLENR, 10}, - {1020*OVERSAMPLENR, 0} +#if (THERMISTORHEATER_0 == 111) || (THERMISTORHEATER_1 == 111) || (THERMISTORHEATER_2 == 111) || (THERMISTORBED == 111) //100k EPCOS +const short temptable_111[][2] PROGMEM = { + {1*OVERSAMPLENR, 704}, + {54*OVERSAMPLENR, 216}, + {107*OVERSAMPLENR, 175}, + {160*OVERSAMPLENR, 152}, + {213*OVERSAMPLENR, 137}, + {266*OVERSAMPLENR, 125}, + {319*OVERSAMPLENR, 115}, + {372*OVERSAMPLENR, 106}, + {425*OVERSAMPLENR, 99}, + {478*OVERSAMPLENR, 91}, + {531*OVERSAMPLENR, 85}, + {584*OVERSAMPLENR, 78}, + {637*OVERSAMPLENR, 71}, + {690*OVERSAMPLENR, 65}, + {743*OVERSAMPLENR, 58}, + {796*OVERSAMPLENR, 50}, + {849*OVERSAMPLENR, 42}, + {902*OVERSAMPLENR, 31}, + {955*OVERSAMPLENR, 17}, + {1008*OVERSAMPLENR, 0} }; #endif