Termopaar sensori kasutamine max6675 mooduli ja Arduinoga

Erinevalt teistest temperatuurianduritest koosneb termopaar lihtsalt kahest erinevast juhist mis on siirde lõpus omavahel kokku keevitatud. Nende vahel tekib pinge mida mõjutab anduri temperatuur. Mida kõrgem on temperatuur seda suurem pinge on. Seda nimetatakse Seebecki efektiks. Kuna tekkiv pinge on väga väike (0.00005 volti kraadi kohta) siis vajab andur võimendust. Üheks populaarseks võimaluseks on max6675 kiip mis suurema töö meie eest ära teeb.

Installeerime MAX6675 teegi

Max6675 väljundiks on digitaalne info (SPI) mille peab Arduino jaoks arusaadavaks tegema. Selle jaoks tuleb installeerida Max6675 teek Arduino programmi. Arduino teekide otsingust (Sketch -> Include Library -> Manage Libraries) tuleb otsida max6675 ning see installeerida. Käsitsi installeerimiseks võib selle alla tõmmata siit.

Max6675 teegi installeerimine.
Max6675 teegi installeerimine.

Mooduli ühendamine

Näidiskood kasutab mooduliga suhtlemisel Arduino digitaalseid klemme 8, 9 ja 10. Need tuleb ühendada nagu alltoodud tabelis.

MAX6675 moodul Arduino
GND GND
VCC +5V
SCK Digitaalne 10
CS Digitaalne 9
SO Digitaalne 8
Max6675 moodul Arduino UNOga
Max6675 moodul Arduino UNOga

Näidiskood ja tulemus

Arduinole tuleb laadida alljärgnev kood. See ei tee muud kui edastab temperatuuri serial monitori iga möödunud sekundi järel.

#include "max6675.h"

// Ühendused mooduli ja Arduino vahel on järgmised
// SCK => Arduino digitaalne klemm 10 
// CS  => Arduino digitaalne klemm 9
// SO  => Arduino digitaalne klemm 8
MAX6675 thermocouple( 10, 9, 8 );

void setup() {
  Serial.begin( 9600 );
  Serial.println( "MAX6675 test tulemused" );
  delay( 500 );
}

void loop() {
   Serial.print( thermocouple.readCelsius() );
   Serial.print(" C, ");
   Serial.print( thermocouple.readFahrenheit() );
   Serial.println(" F");

   // oota 1 sekund, enne uue info väljastamist
   delay( 1000 );
}

Temperatuuri nägemiseks tuleb avada serial monitor ( Tools -> Serial Monitor ). Kindlasti tasub tähele panna, et jadaühenduse kiirus ( baud rate ) oleks sama mis koodis määratud 9600 läbi meetodi Serial.begin().

Max6675 tulemused serial monitoris
Max6675 tulemused serial monitoris