SCRIPT DAN RANGKAIAN RTC (REAL TIME CLOCK), MMC DAN APLIKASINYA PADA GREENHOUSE
MEMBUAT RANGKAIAN RTC (REAL
TIME CLOCK), MMC DAN APLIKASINYA PADA GREENHOUSE
Terima kasih.
A.
Real Time Clock
RTC merupakan komponen yang diperlukan untuk
memberikan informasi mengenai waktu. Waktu disini dapat berupa detik, menit,
hari, bulan dan tahun. RTC dilengkapi
dengan baterai, yang umumnya orang-orang menyebutkannya sebagai baterai
"CMOS"
Script
#include
<LiquidCrystal.h> // mengambil library lcd
#include
<DHT.h> // mengambil library lcd
#include
<Wire.h> // mengambil library lcd
#include
<RTClib.h> // mengambil library lcd
#include
<SD.h> // mengambil library lcd
#include
<SPI.h> // mengambil library lcd
LiquidCrystal
lcd(2, 3, 4, 5, 6, 7); //penampilan LCD dan tentang penggunaan pin LCD
DHT
dht;
RTC_DS1307
RTC; //tipe RTC
yang digunakan
const
int chipSelect = 10; // membuat varibel chipSelect yang di set ke-pin 10
File
dataFile;
int
lampu = 2;
int
ulangan= 60; // membuat varibel ulangan bernilai 60
int
jeda = 10000; // membuat varibel jeda bernilai 10000
#define
mati HIGH
#define
hidup LOW
void
setup() {
Serial.begin(9600); // digunakan untuk
komunikasi Serial dengan komputer
lcd.begin(16,2); //ukuran LCD yang
digunakan(KOLOM,BARIS)
lcd.setCursor(3,0); //posisi yang akan
ditampilkan pada LCD
lcd.print("PRAKTIKUM"); //menampilkan kata
"PRAKTIKUM" pada LCD
lcd.setCursor(5,1); //posisi yang akan
ditampilkan pada LCD
lcd.print(" RTC"); //menampilkan kata
"RTC" pada LCD
delay(5000); //waktu tunggu
lcd.clear(); //hapus layar LCD
lcd.setCursor(0,0); //posisi yang akan
ditampilkan pada LCD
lcd.print("TEKNIK PERTANIAN"); //menampilkan kata
"TEKNIK PERTANIAN"
pada LCD
lcd.setCursor(6,1); //posisi yang akan
ditampilkan pada LCD
lcd.print("UNILA"); //menampilkan kata
"UNILA" pada LCD
delay(5000); //waktu tunggu
lcd.clear(); //hapus layar LCD
lcd.setCursor(3,1); //posisi yang akan
ditampilkan pada LCD
lcd.print("SUHU: "); //menampilkan kata
"SUHU : " pada LCD
dht.setup(3);
Wire.begin();
RTC.begin();
if (!RTC.isrunning()) {
RTC.adjust(DateTime(__DATE__, __TIME__));
}
pinMode(SS, OUTPUT); //membuat SS
sebagai output
digitalWrite(10, HIGH);
SD.begin(chipSelect);
dataFile = SD.open("datalog.txt",
FILE_WRITE);
if (dataFile) {
dataFile.print("Tanggal");
dataFile.print("\t");
dataFile.print("Waktu");
dataFile.print("\t");
dataFile.print("Suhu");
dataFile.print("\t");
dataFile.println();
}
pinMode(lampu,OUTPUT); //membuat OUTPUT
sebagai output
digitalWrite(lampu,mati);
}
void
waktu(){
DateTime now = RTC.now();
lcd.print(now.day(),DEC); //menampilkan hari
pada LCD
lcd.print("/"); //menampilkan "/" pada LCD
lcd.print(now.month(),DEC); //menampilkan bulan
pada LCD
lcd.print("/");
lcd.print(now.year(),DEC); //menampilkan tahun
pada LCD
lcd.print(" ");
lcd.print(now.hour(),DEC); //menampilkan jam
pada LCD
lcd.print(":");
lcd.print(now.minute(),DEC); //menampilkan menit
pada LCD
lcd.print(" ");
}
void
loop() {
for (int t=0; t<ulangan; t++){
lcd.setCursor(0,0);
waktu();
float temp = dht.getTemperature();
float temp1 = round(temp);
lcd.setCursor(9,1);
lcd.print(temp,0);
lcd.print((char)223);
lcd.print("C");
lcd.print(" ");
delay(jeda);
//logika
if
if(temp1
>36 ){
digitalWrite(lampu,mati);
}
if(temp1 <=36){
digitalWrite(lampu,hidup
}
}
float temp = dht.getTemperature();
DateTime now = RTC.now();
dataFile.print(now.day(),DEC);
dataFile.print("/");
dataFile.print(now.month(),DEC);
dataFile.print("/");
dataFile.print(now.year(),DEC);
dataFile.print("\t");
dataFile.print(now.hour(),DEC);
dataFile.print(":");
dataFile.print(now.minute(),DEC);
dataFile.print(":");
dataFile.print(now.second(),DEC);
dataFile.print("\t");
dataFile.print(temp,0);
dataFile.print("");
dataFile.println();
dataFile.flush();
}
B.
MMC
Multimedia Card (MMC) merupakan
kartu memori standar, bentuknya lebih besar dari memory stick dan dapat
digunakan pada slot SD Card. Sebuah SD Card tidak dapat langsung terhubung
dengan arduino dengan menggunakan kaki-kakinya begitu saja. Untuk menghubungkan
dengan arduino maka SD Card harus dalam mode SPI (dapat menggunakan adapter).
SPI mode yatiu serial pheriperal interface yang nantinya akan dihubungkan
sesuai dengan pin arduino.
Skema Rangkaian
Script Program
#include
<LiquidCrystal.h> //pengambilan library
#include
<SD.h> //pengambilan library
//pembuatan
objek
LiquidCrystal
lcd(2, 3, 4, 5, 6, 7);
const
int chipSelect = 53; //pin SS
File
dataFile;
int
ulangan= 3; // membuat
varibel ulangan yang di set ke-pin 3
int
jeda = 1000; // membuat
varibel jeda yang bernilai 1 detik
void
setup() {
Serial.begin(9600); // digunakan untuk
komunikasi Serial dengan komputer
lcd.begin(20,4); //ukuran LCD yang
digunakan
lcd.setCursor(3,1); //posisi yang akan ditampilkan pada LCD
lcd.print("Praktikum MMC"); //menampilkan kata
"Praktikum MMC" pada LCD
lcd.setCursor(4,2); //posisi yang akan ditampilkan pada LCD
lcd.print("DATA LOGGER"); //menampilkan kata "Praktikum MMC" pada LCD
delay(3000);
//waktu tunggu 3 detik
lcd.clear();
//hapus layar LCD
pinMode(SS, OUTPUT); //membuat SS sebagai
output
digitalWrite(10, HIGH);
SD.begin(chipSelect);
dataFile = SD.open("datalog.txt",
FILE_WRITE);
if (dataFile) {
//----------------------------------Program membuka dan menulis nama file di MMC
dataFile.print("PRAKTIKUM MMC");
dataFile.print("\t");
dataFile.println();
//--------------------------------
}
}
void
loop() {
for (int t=0; t<ulangan; t++){
lcd.setCursor(3,3); //posisi yang akan ditampilkan pada LCD
lcd.print ("data Disimpan");
delay(jeda); //waktu tunggu
lcd.setCursor(3,3); //posisi yang akan ditampilkan pada LCD
lcd.print("Sukses MMC");
delay(jeda); //waktu tunggu
lcd.clear(); //hapus layar LCD
}
dataFile.print("Praktikum MMC berhasil
Disimpan");
dataFile.print("\t"); //Untuk membuat spasi
dataFile.print(jeda);
dataFile.println();
dataFile.flush();
}
C.
Analisis Greenhouse
Tanggal
|
Waktu
|
sensor 1
|
sensor 2
|
sensor 3
|
Rerata
|
Nilai setting point atas
|
1/13/2017
|
19:57:17
|
25
|
26
|
26
|
25.7
|
36
|
1/13/2017
|
20:07:39
|
26
|
26
|
26
|
26.0
|
36
|
1/13/2017
|
20:18:01
|
25
|
26
|
26
|
25.7
|
36
|
1/13/2017
|
20:28:24
|
25
|
26
|
25
|
25.3
|
36
|
1/13/2017
|
20:38:47
|
25
|
25
|
25
|
25.0
|
36
|
1/13/2017
|
20:49:09
|
25
|
26
|
26
|
25.7
|
36
|
1/13/2017
|
20:59:32
|
25
|
25
|
25
|
25.0
|
36
|
1/13/2017
|
21:09:54
|
25
|
25
|
25
|
25.0
|
36
|
1/13/2017
|
21:20:17
|
25
|
25
|
25
|
25.0
|
36
|
1/13/2017
|
21:30:40
|
25
|
25
|
25
|
25.0
|
36
|
1/13/2017
|
21:41:02
|
25
|
25
|
25
|
25.0
|
36
|
1/13/2017
|
21:51:25
|
25
|
25
|
25
|
25.0
|
36
|
1/13/2017
|
22:01:47
|
24
|
25
|
25
|
24.7
|
36
|
1/13/2017
|
22:12:09
|
24
|
25
|
24
|
24.3
|
36
|
1/13/2017
|
22:22:32
|
24
|
25
|
24
|
24.3
|
36
|
1/13/2017
|
22:32:55
|
24
|
24
|
24
|
24.0
|
36
|
1/13/2017
|
22:43:17
|
24
|
24
|
24
|
24.0
|
36
|
1/13/2017
|
22:53:40
|
24
|
25
|
25
|
24.7
|
36
|
1/13/2017
|
23:04:02
|
24
|
25
|
25
|
24.7
|
36
|
1/13/2017
|
23:14:24
|
24
|
25
|
25
|
24.7
|
36
|
1/13/2017
|
23:24:47
|
24
|
25
|
25
|
24.7
|
36
|
1/13/2017
|
23:35:09
|
24
|
25
|
25
|
24.7
|
36
|
1/13/2017
|
23:45:32
|
25
|
25
|
25
|
25.0
|
36
|
1/13/2017
|
23:55:55
|
25
|
25
|
25
|
25.0
|
36
|
1/14/2017
|
0:06:17
|
25
|
25
|
25
|
25.0
|
36
|
1/14/2017
|
0:16:39
|
25
|
25
|
25
|
25.0
|
36
|
1/14/2017
|
0:27:02
|
25
|
25
|
25
|
25.0
|
36
|
1/14/2017
|
0:37:24
|
25
|
25
|
25
|
25.0
|
36
|
1/14/2017
|
0:47:46
|
25
|
25
|
25
|
25.0
|
36
|
1/14/2017
|
0:58:09
|
25
|
25
|
25
|
25.0
|
36
|
1/14/2017
|
1:08:31
|
25
|
25
|
25
|
25.0
|
36
|
1/14/2017
|
1:18:53
|
25
|
26
|
26
|
25.7
|
36
|
1/14/2017
|
1:29:15
|
25
|
26
|
26
|
25.7
|
36
|
1/14/2017
|
1:39:38
|
25
|
26
|
26
|
25.7
|
36
|
1/14/2017
|
1:50:00
|
25
|
26
|
26
|
25.7
|
36
|
1/14/2017
|
2:00:22
|
26
|
26
|
26
|
26.0
|
36
|
1/14/2017
|
2:10:44
|
26
|
26
|
26
|
26.0
|
36
|
1/14/2017
|
2:21:06
|
26
|
26
|
26
|
26.0
|
36
|
1/14/2017
|
2:31:28
|
26
|
26
|
26
|
26.0
|
36
|
1/14/2017
|
2:41:50
|
26
|
27
|
27
|
26.7
|
36
|
1/14/2017
|
2:52:13
|
27
|
27
|
27
|
27.0
|
36
|
1/14/2017
|
3:02:35
|
27
|
27
|
27
|
27.0
|
36
|
1/14/2017
|
3:12:57
|
27
|
27
|
27
|
27.0
|
36
|
1/14/2017
|
3:23:19
|
27
|
28
|
28
|
27.7
|
36
|
1/14/2017
|
3:33:41
|
28
|
28
|
28
|
28.0
|
36
|
1/14/2017
|
3:44:03
|
28
|
28
|
28
|
28.0
|
36
|
1/14/2017
|
3:54:26
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
4:04:48
|
30
|
29
|
30
|
29.7
|
36
|
1/14/2017
|
4:15:10
|
31
|
31
|
31
|
31.0
|
36
|
1/14/2017
|
4:25:32
|
32
|
32
|
31
|
31.7
|
36
|
1/14/2017
|
4:35:55
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
4:46:17
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
4:56:39
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
5:08:02
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
5:18:24
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
5:28:46
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
5:38:08
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
5:48:48
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
5:58:10
|
28
|
28
|
28
|
28.0
|
36
|
1/14/2017
|
6:08:02
|
30
|
30
|
30
|
30.0
|
36
|
1/14/2017
|
6:18:24
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
6:28:46
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
6:38:08
|
27
|
27
|
27
|
27.0
|
36
|
1/14/2017
|
6:48:48
|
29
|
29
|
29
|
29.0
|
36
|
1/14/2017
|
6:58:10
|
29
|
30
|
29
|
29.3
|
36
|
1/14/2017
|
7:08:02
|
30
|
30
|
30
|
30.0
|
36
|
1/14/2017
|
7:18:24
|
31
|
31
|
31
|
31.0
|
36
|
1/14/2017
|
7:28:46
|
32
|
33
|
32
|
32.3
|
36
|
1/14/2017
|
7:38:08
|
33
|
33
|
33
|
33.0
|
36
|
1/14/2017
|
7:48:48
|
32
|
32
|
32
|
32.0
|
36
|
1/14/2017
|
7:58:10
|
33
|
33
|
33
|
33.0
|
36
|
1/14/2017
|
8:08:02
|
32
|
32
|
32
|
32.0
|
36
|
1/14/2017
|
8:18:24
|
35
|
35
|
35
|
35.0
|
36
|
1/14/2017
|
8:28:46
|
37
|
37
|
37
|
37.0
|
36
|
1/14/2017
|
8:38:08
|
38
|
38
|
39
|
38.3
|
36
|
1/14/2017
|
8:48:48
|
37
|
37
|
37
|
37.0
|
36
|
1/14/2017
|
8:58:10
|
36
|
36
|
36
|
36.0
|
36
|
1/14/2017
|
9:08:02
|
35
|
35
|
35
|
35.0
|
36
|
1/14/2017
|
9:18:24
|
36
|
37
|
36
|
36.3
|
36
|
1/14/2017
|
9:28:46
|
35
|
35
|
35
|
35.0
|
36
|
1/14/2017
|
9:38:08
|
36
|
37
|
36
|
36.3
|
36
|
1/14/2017
|
9:48:48
|
38
|
38
|
38
|
38.0
|
36
|
1/14/2017
|
9:58:10
|
37
|
37
|
37
|
37.0
|
36
|
1/14/2017
|
10:08:02
|
37
|
37
|
37
|
37.0
|
36
|
1/14/2017
|
10:18:24
|
35
|
35
|
35
|
35.0
|
36
|
1/14/2017
|
10:28:46
|
35
|
35
|
35
|
35.0
|
36
|
1/14/2017
|
10:38:08
|
35
|
36
|
35
|
35.3
|
36
|
1/14/2017
|
10:48:48
|
36
|
36
|
36
|
36.0
|
36
|
1/14/2017
|
10:58:10
|
37
|
37
|
37
|
37.0
|
36
|
Nilai
regresinya adalah 0,816
utuk
mengkailbrasinya dapat menggunakan pendekatan rumus y = 0.149x + 22.08
Dari
grafik diatas dapat diketahui bahwa alat mulai stabil pada jam 8:18:24
Komentar
Posting Komentar