Breaking News

Wednesday 24 February 2016

(ARDUINO PROJECT) Membuat Termometer dengan Arduino dan Sensor Suhu Termocouple Max6675 serta sensor suhu LM35

Sebelum posting ini saya pernah menulis tentang project termometer dengan LM35 saja dan Max6675 saja. Kali ini saya menggabungkan kedua project tersebut untuk membandingkan kedua jenis IC sensor suhu tersebut.
Termometer adalah alat pengukur suhu. Untuk membuat termometer dibutuh sensor suhu, yang nantinya akan dikendalikan oleh Arduino.
Sensor suhu yang kita gunakan yaitu Max6675 dan LM35. Perbedaan antara kedua sensor ini yaitu:
No.
Perbedaan
LM35
MAX6675
1.
Jangkauan suhu
0-100 °C
0-1000 °C
2.
Cara kerja input
Analog
Digital
3.
Sensor
Sistem elektronika
Menggunakan termocouple
4.
Sensitivitas
Rendah
Tinggi

Max6675 cocok digunakan pada tungku pembakaran yang memiliki suhu di atas 100 °C.

Kebutuhan software dan hardware:
  1. Library LiquidCrystal.h untuk LCD dan MAX6675.h untuk sensor Max6675 di https://github.com/adafruit/Adafruit_LiquidCrystal dan https://github.com/adafruit/MAX6675-library
  2. Arduino Uno
  3. LCD
  4. Sensor suhu LM35
  5. Sensor suhu MAX6675 dan termocouple

  6. Kabel jumper male-male




Kode:

//Inisialisasi Library untuk LCD
#include <LiquidCrystal.h>
//Inisialisasi Library untuk MAX6675
#include <MAX6675.h>
int LED1 = 9;             // Status LED Pin
int CS = 10;             // CS pin on MAX6675
int SO = 12;              // SO pin of MAX6675
int SCK0 = 11;             // SCK pin of MAX6675
int units = 1;            // Units to readout temp (0 = raw, 1 = ˚C, 2 = ˚F)
float adc, suhu, temperature;  // Temperature output variable

// Inisialisasi Pin Mode untuk LCD
LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
// Inisialisasi Pin Mode untuk MAX6675
MAX6675 temp(CS,SO,SCK0,units);
/*Menampilkan Pesan Pembuka pada LCD */
void setup() {
  Serial.begin(9600);
  lcd.begin(16, 2);
  lcd.print("MONITORING SUHU");
  lcd.setCursor(0, 1);
  lcd.print("2 CH DG ARDUINO");
  delay(2000);
  lcd.clear();

 /*Menampilkan Nama Sensor pada LCD*/
  lcd.print("Sensor 1:");
  lcd.setCursor(0,1);
  lcd.print("Sensor 2:");
  pinMode(LED1, OUTPUT);
}
void loop()
{
  // Membaca temperatur dari sensor MAX6675
  temperature = temp.read_temp();
  // Membaca temperatur dari sensor LM35
  adc = analogRead(0);   //inisiasi pembacaan dari pin analog
  suhu=adc*(5.0*100.0/1024.0) ;
  /*Resolusi ADC(Analog to Digital Converter) adalah 10 bit, artinya
  nilai terkecilnya 0(tegangan masukan 0 volt) dan terbesar 1024 (tegangan masukan 5 volt)
  1 bit = 5V/1024 = 4,89mV */
  delay(500);
  lcd.setCursor(9,0);
  lcd.print(suhu); //output suhu LM35
  lcd.print(char(0xDF));
  lcd.print("C ");

  lcd.setCursor(9,1);
  lcd.print(temperature); //output suhu MAX6675
  lcd.print(char(0xDF));
  lcd.print("C ");
  delay(500);    
}

No comments:

Post a Comment

Designed By