thermistortables.h 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409
  1. #ifndef THERMISTORTABLES_H_
  2. #define THERMISTORTABLES_H_
  3. #if (THERMISTORHEATER == 1) || (THERMISTORBED == 1) //100k bed thermistor
  4. #define NUMTEMPS_1 61
  5. const short temptable_1[NUMTEMPS_1][2] = {
  6. { 23 , 300 },
  7. { 25 , 295 },
  8. { 27 , 290 },
  9. { 28 , 285 },
  10. { 31 , 280 },
  11. { 33 , 275 },
  12. { 35 , 270 },
  13. { 38 , 265 },
  14. { 41 , 260 },
  15. { 44 , 255 },
  16. { 48 , 250 },
  17. { 52 , 245 },
  18. { 56 , 240 },
  19. { 61 , 235 },
  20. { 66 , 230 },
  21. { 71 , 225 },
  22. { 78 , 220 },
  23. { 84 , 215 },
  24. { 92 , 210 },
  25. { 100 , 205 },
  26. { 109 , 200 },
  27. { 120 , 195 },
  28. { 131 , 190 },
  29. { 143 , 185 },
  30. { 156 , 180 },
  31. { 171 , 175 },
  32. { 187 , 170 },
  33. { 205 , 165 },
  34. { 224 , 160 },
  35. { 245 , 155 },
  36. { 268 , 150 },
  37. { 293 , 145 },
  38. { 320 , 140 },
  39. { 348 , 135 },
  40. { 379 , 130 },
  41. { 411 , 125 },
  42. { 445 , 120 },
  43. { 480 , 115 },
  44. { 516 , 110 },
  45. { 553 , 105 },
  46. { 591 , 100 },
  47. { 628 , 95 },
  48. { 665 , 90 },
  49. { 702 , 85 },
  50. { 737 , 80 },
  51. { 770 , 75 },
  52. { 801 , 70 },
  53. { 830 , 65 },
  54. { 857 , 60 },
  55. { 881 , 55 },
  56. { 903 , 50 },
  57. { 922 , 45 },
  58. { 939 , 40 },
  59. { 954 , 35 },
  60. { 966 , 30 },
  61. { 977 , 25 },
  62. { 985 , 20 },
  63. { 993 , 15 },
  64. { 999 , 10 },
  65. { 1004 , 5 },
  66. { 1008 , 0 } //safety
  67. };
  68. #endif
  69. #if (THERMISTORHEATER == 2) || (THERMISTORBED == 2) //200k bed thermistor verified by arcol
  70. #define NUMTEMPS_2 64
  71. const short temptable_2[NUMTEMPS_2][2] = {
  72. { 16, 315},
  73. { 17, 310},
  74. { 18, 305},
  75. { 19, 300},
  76. { 20, 295},
  77. { 21, 290},
  78. { 22, 285},
  79. { 23, 280},
  80. { 24, 275},
  81. { 25, 270},
  82. { 29, 265},
  83. { 30, 260},
  84. { 35, 255},
  85. { 40, 250},
  86. { 45, 245},
  87. { 50, 240},
  88. { 55, 235},
  89. { 60, 230},
  90. { 65, 225},
  91. { 70, 220},
  92. { 90, 215},
  93. { 95, 210},
  94. { 103, 205},
  95. { 105, 200},
  96. { 115, 195},
  97. { 130, 190},
  98. { 150, 185},
  99. { 167, 180},
  100. { 190, 175},
  101. { 200, 170},
  102. { 230, 165},
  103. { 250, 160},
  104. { 270, 155},
  105. { 300, 150},
  106. { 330, 145},
  107. { 360, 140},
  108. { 380, 135},
  109. { 408, 130},
  110. { 450, 125},
  111. { 500, 120},
  112. { 530, 115},
  113. { 550, 110},
  114. { 570, 105},
  115. { 595, 100},
  116. { 615, 95},
  117. { 640, 90},
  118. { 665, 85},
  119. { 700, 80},
  120. { 740, 75},
  121. { 780, 70},
  122. { 810, 65},
  123. { 840, 60},
  124. { 880, 55},
  125. { 920, 50},
  126. { 960, 45},
  127. { 980, 40},
  128. { 990, 35},
  129. {1000, 30},
  130. {1005, 25},
  131. {1006, 20},
  132. {1009, 15},
  133. {1010, 10},
  134. {1020, 5},
  135. {1023, 0} //safety
  136. };
  137. #endif
  138. #if (THERMISTORHEATER == 3) || (THERMISTORBED == 3) //mendel-parts
  139. #define NUMTEMPS_3 28
  140. const short temptable_3[NUMTEMPS_3][2] = {
  141. {1,864},
  142. {21,300},
  143. {25,290},
  144. {29,280},
  145. {33,270},
  146. {39,260},
  147. {46,250},
  148. {54,240},
  149. {64,230},
  150. {75,220},
  151. {90,210},
  152. {107,200},
  153. {128,190},
  154. {154,180},
  155. {184,170},
  156. {221,160},
  157. {265,150},
  158. {316,140},
  159. {375,130},
  160. {441,120},
  161. {513,110},
  162. {588,100},
  163. {734,80},
  164. {856,60},
  165. {938,40},
  166. {986,20},
  167. {1008,0},
  168. {1018,-20}
  169. };
  170. #endif
  171. #if (THERMISTORHEATER == 4) || (THERMISTORBED == 4) //10k thermistor
  172. #define NUMTEMPS_4 20
  173. const short temptable_4[NUMTEMPS_4][2] = {
  174. {1, 430},
  175. {54, 137},
  176. {107, 107},
  177. {160, 91},
  178. {213, 80},
  179. {266, 71},
  180. {319, 64},
  181. {372, 57},
  182. {425, 51},
  183. {478, 46},
  184. {531, 41},
  185. {584, 35},
  186. {637, 30},
  187. {690, 25},
  188. {743, 20},
  189. {796, 14},
  190. {849, 7},
  191. {902, 0},
  192. {955, -11},
  193. {1008, -35}
  194. };
  195. #endif
  196. #if (THERMISTORHEATER == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2)
  197. #define NUMTEMPS_5 61
  198. const short temptable_5[NUMTEMPS_5][2] = {
  199. {1, 713},
  200. {18, 316},
  201. {35, 266},
  202. {52, 239},
  203. {69, 221},
  204. {86, 208},
  205. {103, 197},
  206. {120, 188},
  207. {137, 181},
  208. {154, 174},
  209. {171, 169},
  210. {188, 163},
  211. {205, 159},
  212. {222, 154},
  213. {239, 150},
  214. {256, 147},
  215. {273, 143},
  216. {290, 140},
  217. {307, 136},
  218. {324, 133},
  219. {341, 130},
  220. {358, 128},
  221. {375, 125},
  222. {392, 122},
  223. {409, 120},
  224. {426, 117},
  225. {443, 115},
  226. {460, 112},
  227. {477, 110},
  228. {494, 108},
  229. {511, 106},
  230. {528, 103},
  231. {545, 101},
  232. {562, 99},
  233. {579, 97},
  234. {596, 95},
  235. {613, 92},
  236. {630, 90},
  237. {647, 88},
  238. {664, 86},
  239. {681, 84},
  240. {698, 81},
  241. {715, 79},
  242. {732, 77},
  243. {749, 75},
  244. {766, 72},
  245. {783, 70},
  246. {800, 67},
  247. {817, 64},
  248. {834, 61},
  249. {851, 58},
  250. {868, 55},
  251. {885, 52},
  252. {902, 48},
  253. {919, 44},
  254. {936, 40},
  255. {953, 34},
  256. {970, 28},
  257. {987, 20},
  258. {1004, 8},
  259. {1021, 0}
  260. };
  261. #endif
  262. #if (THERMISTORHEATER == 6) || (THERMISTORBED == 6) //100K Thermistor (B57540G0104F000)(Mixshop)
  263. #define NUMTEMPS_6 36
  264. const short temptable_6[NUMTEMPS_6][2] = {
  265. {1, 841},
  266. {54, 255},
  267. {107, 209},
  268. {160, 184},
  269. {213, 166},
  270. {266, 153},
  271. {319, 142},
  272. {372, 132},
  273. {425, 124},
  274. {478, 116},
  275. {531, 108},
  276. {584, 101},
  277. {637, 93},
  278. {690, 86},
  279. {743, 78},
  280. {796, 70},
  281. {849, 61},
  282. {902, 50},
  283. {955, 34},
  284. {1008, 3}
  285. };
  286. #endif
  287. #if (THERMISTORHEATER == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01(Mixshop)
  288. #define NUMTEMPS_7 54
  289. const short temptable_7[NUMTEMPS_7][2] = {
  290. {46, 270},
  291. {50, 265},
  292. {54, 260},
  293. {58, 255},
  294. {62, 250},
  295. {67, 245},
  296. {72, 240},
  297. {79, 235},
  298. {85, 230},
  299. {91, 225},
  300. {99, 220},
  301. {107, 215},
  302. {116, 210},
  303. {126, 205},
  304. {136, 200},
  305. {149, 195},
  306. {160, 190},
  307. {175, 185},
  308. {191, 180},
  309. {209, 175},
  310. {224, 170},
  311. {246, 165},
  312. {267, 160},
  313. {293, 155},
  314. {316, 150},
  315. {340, 145},
  316. {364, 140},
  317. {396, 135},
  318. {425, 130},
  319. {460, 125},
  320. {489, 120},
  321. {526, 115},
  322. {558, 110},
  323. {591, 105},
  324. {628, 100},
  325. {660, 95},
  326. {696, 90},
  327. {733, 85},
  328. {761, 80},
  329. {794, 75},
  330. {819, 70},
  331. {847, 65},
  332. {870, 60},
  333. {892, 55},
  334. {911, 50},
  335. {929, 45},
  336. {944, 40},
  337. {959, 35},
  338. {971, 30},
  339. {981, 25},
  340. {989, 20},
  341. {994, 15},
  342. {1001, 10},
  343. {1005, 5}
  344. };
  345. #endif
  346. #if THERMISTORHEATER == 1
  347. #define NUMTEMPS NUMTEMPS_1
  348. #define temptable temptable_1
  349. #elif THERMISTORHEATER == 2
  350. #define NUMTEMPS NUMTEMPS_2
  351. #define temptable temptable_2
  352. #elif THERMISTORHEATER == 3
  353. #define NUMTEMPS NUMTEMPS_3
  354. #define temptable temptable_3
  355. #elif THERMISTORHEATER == 4
  356. #define NUMTEMPS NUMTEMPS_4
  357. #define temptable temptable_4
  358. #elif THERMISTORHEATER == 5
  359. #define NUMTEMPS NUMTEMPS_5
  360. #define temptable temptable_5
  361. #elif THERMISTORHEATER == 6
  362. #define NUMTEMPS NUMTEMPS_6
  363. #define temptable temptable_6
  364. #elif THERMISTORHEATER == 7
  365. #define NUMTEMPS NUMTEMPS_7
  366. #define temptable temptable_7
  367. #elif defined HEATER_USES_THERMISTOR
  368. #error No heater thermistor table specified
  369. #endif
  370. #if THERMISTORBED == 1
  371. #define BNUMTEMPS NUMTEMPS_1
  372. #define bedtemptable temptable_1
  373. #elif THERMISTORBED == 2
  374. #define BNUMTEMPS NUMTEMPS_2
  375. #define bedtemptable temptable_2
  376. #elif THERMISTORBED == 3
  377. #define BNUMTEMPS NUMTEMPS_3
  378. #define bedtemptable temptable_3
  379. #elif THERMISTORBED == 4
  380. #define BNUMTEMPS NUMTEMPS_4
  381. #define bedtemptable temptable_4
  382. #elif THERMISTORBED == 5
  383. #define BNUMTEMPS NUMTEMPS_5
  384. #define bedtemptable temptable_5
  385. #elif THERMISTORBED == 6
  386. #define BNUMTEMPS NUMTEMPS_6
  387. #define bedtemptable temptable_6
  388. #elif THERMISTORBED == 7
  389. #define BNUMTEMPS NUMTEMPS_7
  390. #define bedtemptable temptable_7
  391. #elif defined BED_USES_THERMISTOR
  392. #error No bed thermistor table specified
  393. #endif
  394. #endif //THERMISTORTABLES_H_