Thermocouple is powerful temperature sensor. In this case, using thermocouple type K and MAX6675 can read temperature in range 0ºC to 1024ºC, this sensos also waterproof. So it’s okay if you want place this sensor in water for measure water temperature. Beside that, thermocouple has tons of module that you can get easily, not like RTD which usually we have to make signal conditioning by ourselves. Sometimes it is really annoying.
And, let’s get dirty!
First wire your max6675 to arduino. In this example I use arduino UNO.
Pin SCK -> 6
Pin CS -> 5
Pin SO -> 4
Pin VCC-> 5V
Pin GND -> GND
Gambar koneksi
Double check your wiring, make sure everythings is connected correctly.
Now, it’s time to code.
Before we start code, to make our life easier we can use a library. As example we can use a library from adafruit. You can download here.
After you download the library, copy the folder to your arduino directory/library. It is usually in C:\program files (x86)\arduino\library. If your arduino software is running when copying the library. Make sure you restart the software after add the library to let arduino recognized new library.
Hmmm now it’s real time to code. Haha
You can use code below, or you can find this code at library example.
#include "max6675.h" int thermoDO = 4; int thermoCS = 5; int thermoCLK = 6; MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO); int vccPin = 3; int gndPin = 2; void setup() { Serial.begin(9600); // use Arduino pins pinMode(vccPin, OUTPUT); digitalWrite(vccPin, HIGH); pinMode(gndPin, OUTPUT); digitalWrite(gndPin, LOW); Serial.println("MAX6675 test"); // wait for MAX chip to stabilize delay(500); } void loop() { // basic readout test, just print the current temp Serial.print("C = "); Serial.println(thermocouple.readCelsius()); Serial.print("F = "); Serial.println(thermocouple.readFahrenheit()); delay(1000); }
The result :
Gambar contoh hasil