tugas akhir sistem telemetri akuisisi data greenhouse · kata kunci : greenhouse , matlab, ......

122
i TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE MENGGUNAKAN XBee Pro S2B Diajukan untuk memenuhi salah satu syarat Memperoleh gelar Sarjana Teknik pada Program Studi Teknik Elektro Jurusan Teknik Elektro Fakultas Sains dan Teknologi Universitas Sanata Dharma Disusun oleh : RAYENDRA EGA SATRIA NIM : 125114007 JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2016 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Upload: lyngoc

Post on 22-Jul-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

i

TUGAS AKHIR

SISTEM TELEMETRI AKUISISI DATA GREENHOUSE

MENGGUNAKAN XBee Pro S2B

Diajukan untuk memenuhi salah satu syarat

Memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro

Jurusan Teknik Elektro

Fakultas Sains dan Teknologi Universitas Sanata Dharma

Disusun oleh :

RAYENDRA EGA SATRIA

NIM : 125114007

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2016

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 2: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

ii

FINAL PROJECT

GREENHOUSE DATA ACQUISITION TELEMETRY SYSTEM

USING XBee Pro S2B

In a partial fulfilment of the requirements

For the degree of Sarjana Teknik

Department of Electrical Engineering

Faculty of Science and Technology, Sanata Dharma University

RAYENDRA EGA SATRIA

NIM :125114007

DEPARTMENT OF ELECTRICAL ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2016

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 3: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 4: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 5: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

MOTTO :

Ini hidupku, aku penentu kesuksesan hidupku,

is my decision and my action , or nothing at all

Skripsi ini kupersembahkan untuk…..

Yesus Kristus Juru Slamat & Pembimbingku yang Setia

Bapak, Ibu dan Adikku

Kekasihku yang Memberikan Semangat

Sahabat dan Teman-teman Seperjuangan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 6: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 7: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 8: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

viii

INTISARI

Faktor yang sangat penting dalam membuat sebuah greenhouse adalah dimana

pengguna harus mengetahui kondisi yang ada di dalam greenhouse tersebut .Greenhouse

yang ada saat ini tidak bisa dimonitor secara otomatis, sehingga untuk mengetahui kondisi

greenhouse harus melihat secara langsung dan data yang diperoleh tidak dapat direkam

atau disimpan secara otomatis. Oleh karena itu sistem yang secara otomatis dapat

memantau dan menyimpan semua data dalam greenhouse pada computer dibuat.

Sistem ini menggunakan modul pengiriman XBee Pro S2B untuk mengirimkan

data secara wireless dari sistem kontrol ke komputer untuk ditampilkan di interface

software matlab agar pengguna mudah dalam melihat. Sistem akan mengirim data setiap

10 detik, setelah itu data akan disimpan secara otomatis berdasarkan tanggal pengiriman.

Modul XBee Pro S2B untuk sistem telemetri monitoring kondisi greenhouse

berhasil dibuat dan sudah diuji dengan jarak maksimal 115 meter untuk pengiriman paket

data. Data yang dimonitor adalah waktu, tanggal, suhu, kelembaban udara, kelembaban

tanah, status control, pompa air, humidifier dan air cooler.

Kata kunci : Greenhouse, Matlab, XBee Pro S2B.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 9: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

ix

ABSTRACT

A very important factor in making a greenhouse is that user must know the

conditions which exist in the greenhouse. The current greenhouse can’t be monitored automatically, so to find out the condition of the greenhouse the user should directly

monitor it and the data obtained could not be recorded or stored automatically. Since the

data obtained could not be recorded or stored automatically, therefore a system that could

automatically monitor and save all data in the greenhouse on the computer was created.

This system uses shipping module XBee Pro S2B to send the wireless data from the

control system to the computer. After that, the data will be displayed in the matlab software

interface so the user can easily see the data. The system will transmit data every 10

seconds. After that, the data will be saved automatically based on delivery date.

XBee Pro S2B module for telemetry system monitoring the condition of the

greenhouse was successfully created and had already tested with the maximum distance of

115 meters for data packet delivery. Monitored data is the time, date, temperature, air

humidity, soil moisture, status control, water pump, humidifier and air cooler.

Keywords : Greenhouse, Matlab, XBee Pro S2B.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 10: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

x

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus atas segala rahmat-

Nya. Berkat Kasih dan KaruniaNya selama menjalani proses pembuatan tugas akhir ini,

penulis dapat menyelesaikan tugas akhir dengan judul “Sistem Telemetri Akuisisi Data

Greenhouse Menggunakan Xbee Pro S2B”.

Tugas akhir ini disusun untuk memenuhi salah satu syarat memperoleh gelar

Sarjana Teknik (S.T) bagi mahasiswa program S-1 Jurusan Teknik Elektro Universitas

Sanata Dharma Yogyakarta. Selama proses penyusunan proposal ini, penulis banyak

mendapat bantuan dan dukungan dari berbagai pihak, untuk itu penulis mengucapkan

terimakasih kepada:

1. Bapak Petrus Setyo Prabowo, S.T., M.T., selaku Ketua Program Studi Teknik Elektro

Universitas Sanata Dharma Yogyakarta.

2. Bapak Dr. Ir. M. Linggo Sumarno, M.T., selaku Dosen Pembimbing tugas akhir yang

telah banyak meluangkan waktu untuk memberikan bimbingan.

3. Bapak Martanto, M.T., dan Bapak Joko Untoro, S.Si., M.T., yang telah memberikan

saran dan kritik dalam menyelesaikan penulisan tugas akhir.

4. Seluruh dosen Teknik Elektro yang telah memberikan ilmu yang bermanfaat kepada

penulis selama kuliah.

5. Bapak, ibu dan adikku yang telah memberikan perhatian dan dukungan.

6. Rosana Indriastuti yang telah memberikan semangat untuk segera menyelesaikan

penulisan tugas akhir ini.

7. Seluruh teman-teman prodi Teknik Elektro angkatan 2012 atas kerjasama dan

kebersamaannya selama menjalani studi.

8. Kawan-kawan penggembira dan penyemangat kos 21 yang memberikan dukungan.

9. Semua pihak yang tidak bisa penulis sebutkan satu per satu atas bantuan, bimbingan,

kritik dan saran.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 11: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 12: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

xii

DAFTAR ISI

Halaman Sampul(Bahasa Indonesia) ......................................................................... i

Halaman Sampul(Bahasa Inggris) ............................................................................. ii

Lembar Persetujuan ................................................................................................... iii

Lembar Pengesahan ................................................................................................... iv

Halaman Persembahan .............................................................................................. v

Lembar Pernyataan Keaslian Karya .......................................................................... vi

Lembar Pernyataan Persetujuan Publikasi Karya Ilmiah .......................................... vii

Intisari ........................................................................................................................ viii

Abstract ...................................................................................................................... ix

Kata Pengantar ........................................................................................................... x

Daftar Isi .................................................................................................................... xii

Daftar Gambar ........................................................................................................... xv

Daftar Tabel ............................................................................................................... xvii

BAB I PENDAHULUAN

1.1 Latar Belakang ......................................................................................... 1

1.2 Tujuan dan Manfaat ................................................................................ 1

1.3 Batasan Masalah ..................................................................................... 2

1.4 Metodologi Penelitian ............................................................................. 2

BAB II DASAR TEORI

2.1 Sistem Telemetri ...................................................................................... 4

2.2 Sistem Akuisisi Data ............................................................................... 4

2.3 Greenhouse .............................................................................................. 4

2.3.1 Tanaman Hias Ruangan .................................................................. 5

2.3.2 Suhu Udara ..................................................................................... 6

2.3.3 Kelembaban Udara ......................................................................... 6

2.3.4 Kelembaban Tanah ......................................................................... 6

2.4 XBee Pro S2B .......................................................................................... 7

2.4.1 Fitur-fitur XBee Pro S2B ................................................................ 7

2.4.2 Spesifikasi XBee Pro S2B .............................................................. 7

2.4.3 Konfigurasi Pin ............................................................................... 8

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 13: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

xiii

2.4.4 XBee Usb Adapter dan Software X-CTU ....................................... 9

2.4.5 XBee Shield .................................................................................... 10

2.4.6 Komunikasi Serial .......................................................................... 10

2.4.7 PAN ID ........................................................................................... 11

2.4.8 API .................................................................................................. 12

2.4.9 IDLE Mode ..................................................................................... 12

2.5 Topologi Point to Point ........................................................................... 13

2.6 Software MATLAB ................................................................................. 13

2.6.1 Sistem MATLAB ........................................................................... 14

2.6.2 Karakteristik MATLAB ................................................................. 15

2.6.3Karkteristik Lingkungan Kerja MATLAB ...................................... 16

2.7 LCD ......................................................................................................... 18

2.8 Mikrokontroller Arduino Mega ............................................................... 19

2.9 Software Arduino ..................................................................................... 20

BAB III RANCANGAN PENELITIAN

3.1 Arsitektur Sistem ..................................................................................... 22

3.2 Perancangan Subsistem Software ............................................................ 23

3.2.1 Diagram Alir Program Utama ........................................................ 25

3.2.2 Diagram Alir Subrutin Pengiriman Data ........................................ 25

3.2.3 Diagram Alir Pengiriman dan Penerimaan Paket Data .................. 28

3.2.4 Diagram Alir Subrutin Penerima Data ........................................... 29

3.2.5 Format Paket Data .......................................................................... 30

3.2.6 Format Penyimpanan File ............................................................... 30

3.3 Perancangan Subsistem Hardware .......................................................... 33

3.3.1 Setting Konfigurasi XBee PRO S2B .............................................. 33

3.3.2 LCD ................................................................................................ 35

3.3.3 Desain Greenhouse ......................................................................... 37

BAB IV HASIL DAN PEMBAHASAN

4.1 Bentuk Fisik Box Kontrol Pengiriman Data dan Sistem Elektronik ....... 39

4.1.1 Bentuk Fisik Box ............................................................................ 39

4.1.2 Sistem Elektronik ........................................................................... 41

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 14: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

xiv

4.2 Pengujian Hardware ................................................................................ 42

4.2.1 Pengujian Komunikasi XBee Pro S2B ........................................... 42

4.2.2 Pengujian Timer dan Pengiriman Paket Data ................................. 46

4.2.3 Pengujian Timer dan Penerima Paket Data .................................... 47

4.2.4 Pengujian Interface ......................................................................... 49

4.2.5 Pengujian Database ........................................................................ 50

4.3 Pembahasan Perangkat Lunak ................................................................. 52

4.3.1 Program utama ................................................................................ 52

4.3.2 Subrutim Pengiriman Paket Data ................................................... 52

4.3.3 Subrutin Pengiriman Data Waktu dan Tanggal .............................. 52

4.3.4 Subrutin Pengiriman Status Pengendali ......................................... 53

4.3.5 Subrutin Pengiriman Data Sensor................................................... 53

4.3.6 Subrutin Penerima Paket Data ........................................................ 53

4.3.7 Paket Data ....................................................................................... 54

4.3.8 Penyimpanan Data .......................................................................... 54

BAB V KESIMPULAN

5.1 Kesimpulan .............................................................................................. 57

5.2 Saran ........................................................................................................ 57

DAFTAR PUSTAKA ................................................................................... ............. 58

LAMPIRAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 15: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

xv

DAFTAR GAMBAR

Halaman

Gambar 1.1 Diagram Blok Perancangan ................................................................. 3

Gambar 2.1 Modul XBee Pro S2B .......................................................................... 7

Gambar 2.2 Konfigurasi pin XBee Pro S2B............................................................ 8

Gambar 2.3 XBee usb adapter dan kabel mini usb .................................................. 9

Gambar 3.4 Tampilan software X_CTU ................................................................. 10

Gambar 2.5 XBee Shield ......................................................................................... 10

Gambar 2.6 Sistem data UART ............................................................................... 11

Gambar 2.7 Paket data UART ditransmisikan melalui module XBee .................... 11

Gambar 2.8 Software Matlab ................................................................................... 13

Gambar 2.9 LCD Display ........................................................................................ 18

Gambar 2.10 Arduino Mega ...................................................................................... 20

Gambar 2.11 IDE Arduino ........................................................................................ 20

Gambar 3.1 Blok Diagram Seluruh Sistem ............................................................. 22

Gambar 3.2 Blok Diagram Sistem Penelitian .......................................................... 22

Gambar 3.3 Tampilan GUI ...................................................................................... 24

Gambar 3.4 Tampilan Grafik GUI .......................................................................... 25

Gambar 3.5 Diagram Alir Program Utama ............................................................. 26

Gambar 3.6 Diagram Alir Subrutin Pengiriman Data ............................................. 27

Gambar 3.7 Diagram Alir Pengiriman dan Penerimaan Paket Data ....................... 28

Gambar 3.8 Diagram Alir Subrutin Penerima Data ................................................ 29

Gambar 3.9 Diagram Alir Penyimpanan Data ......................................................... 31

Gambar 3.10 Menampilkan Data ............................................................................... 32

Gambar 3.11 Menghitung Memori Data ................................................................... 32

Gambar 3.12 Penampil Grafik dengan Data yang Hilang ......................................... 33

Gambar 3.13 Hasil Test Komunikasi XBee Pertama ................................................ 34

Gambar 3.14 Nomor Versi dan PAN ID ................................................................... 34

Gambar 3.15 Nomor PAN ID dan Serial Number ..................................................... 34

Gambar 3.16 Test Modem XBee kedua ..................................................................... 34

Gambar 3.17 Versi Router dan Serial Number .......................................................... 35

Gambar 3.18 Router DH dan DL............................................................................... 35

Gambar 3.19 cek Seluruh konfigurasi XBee ............................................................. 35

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 16: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

xvi

Gambar 3.20 Test XBee Pertama .............................................................................. 35

Gambar 3.21 Rangkaian LCD Display ...................................................................... 36

Gambar 3.22 Design prototype smart greenhouse .................................................... 37

Gambar 3.23 Greenhouse Tampak Depan ................................................................ 38

Gambar 3.24 Greenhouse Tampak Atas .................................................................... 38

Gambar 3.25 Greenhouse Tampak Samping ............................................................. 38

Gambar 4.1 Bentuk Fisik Box Tampak Depan ........................................................ 40

Gambar 4.2 Bentuk Fisik Box Tampak Atas ........................................................... 40

Gambar 4.3 Bentuk Fisik Box Tampak Samping .................................................... 40

Gambar 4.4 Bentuk Fisik Box Tampak Bawah ....................................................... 41

Gambar 4.5 XBee dan Shield XBee ........................................................................ 41

Gambar 4.6 LCD ..................................................................................................... 42

Gambar 4.7 XBee dan Usb Adapter ........................................................................ 42

Gambar 4.8 XBee Menerima Data .......................................................................... 44

Gambar 4.9 XBee Berkomunikasi Tanpa Data ....................................................... 44

Gambar 4.10 Penerima Data Error ............................................................................ 45

Gambar 4.11 Program Pembacaan Paket Data .......................................................... 48

Gambar 4.12 Program Menampilkan Data Dalam Tabel .......................................... 48

Gambar 4.13 Program Simpan Data Tabel ke Excel ................................................. 49

Gambar 4.14 Pengujian Interface .............................................................................. 50

Gambar 4.15 Hasil Data Excel yang Tersimpan ....................................................... 51

Gambar 4.16 Penampil Data Saat Pengambilan Paket Data ..................................... 51

Gambar 4.17 Penampil Data Saat Tidak Ada Pengambilan Paket Data ................... 51

Gambar 4.18 Menampilkan Data ............................................................................... 55

Gambar 4.19 Menghitung Memori Data ................................................................... 56

Gambar 4.20 Penyimpanan Hasil Data ...................................................................... 56

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 17: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

xvii

DAFTAR TABEL

Halaman

Tabel 2.1 Spesifikasi XBee Pro S2B ......................................................................... 7

Tabel 2.2 LCD Display .............................................................................................. 19

Tabel 2.3 Keterangan Tombol Pada Tampilan IDE Arduino .................................... 20

Tabel 3.1 Format Paket Data ..................................................................................... 30

Tabel 3.2 Tampilan Data di LCD .............................................................................. 36

Tabel 4.1 Komunikasi Data Tanpa Error ................................................................... 44

Tabel 4.2 Komunikasi Data Error.............................................................................. 45

Tabel 4.3 Tampilan Tanggal Error ............................................................................ 45

Tabel 4.4 Data Jarak pengambilan Paket Data .......................................................... 46

Tabel 4.5 Serial Monitor Pengiriman Paket Data ...................................................... 47

Tabel 4.6 Paket Data yang Diterima .......................................................................... 48

Tabel 4.7 Timer Saat Tombol Kontrol Box Ditekan ................................................. 49

Tabel 4.8 Perubahan Format Paket Data ................................................................... 54

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 18: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Tanaman memberikan udara yang sehat, sebab mengambil CO2 (gas asam arang)

yang dikeluarkan dari proses pernafasan untuk diubah menjadi O2 (zat asam) yang akan

manusia dan binatang hirup kembali dalam proses pernafasan[1]. Maka diperlukan sebuah

tempat dan alat yang digunakan untuk membuat bagaimana tanaman yang kita tanam dapat

hidup secara maksimal yakni greenhouse dan sistem monitoring. Alat ini terdapat dua

bagian, yaitu bagian pertama terdiri dari sistem kontrol yaitu greenhouse, sensor,

pengendali kondisi greenhouse, bagian kedua terdiri dari sistem telemetri akuisisi data.

Pada sistem ini, penulis lebih berkonsentrasi pada bagian kedua yakni sistem

telemetri akuisisi data. Terdapat banyak peneliti yang membuat sistem monitoring

greenhouse, salah satunya yang sudah dilakukan oleh M. Syahrul Munir dalam penelitian

yang berjudul “Rancangan Smart Greenhouse Dengan Teknologi Mobile Untuk Efisiensi

Tenaga, Biaya Dan Waktu Dalam Pengelolaan Tanaman”. Dalam penelitiannya semua

proses pemantauan oleh sensor diolah pada mikrokontroller kemudian data akan disimpan

pada database server. Sistem pemantauan dan pengendalian sistem dapat dilakukan secara

online dengan teknologi mobile berbasis web[2].

Menggunakan konsep yang sama tetapi berbeda metode yang digunakan, penulis

mengubah metode pengiriman paket data menggunakan modul XBee Pro S2B yang

dilakukan secara offline dan tidak harus terpaku dengan internet, jadi memudahkan bagi

pengguna yang daerahnya tidak terjangkau oleh internet. Sistem ini akan memonitoring

kondisi greenhouse seperti suhu, kelembaban udara, kelembaban tanah dan kontrol status.

Sistem ini juga dihubungkan dengan pengendali kondisi greenhouse seperti kipas,

evaporator fan, pompa air agar pengguna dapat memantau kondisi greenhouse melalui PC.

Sistem ini menggunakan modul XBee Pro S2B sebagai transmitter dan receiver. Sistem ini

dapat memonitoring kondisi greenhouse tanpa harus melihat dari dekat dan menciptakan

kondisi tanaman yang baik.

1.2 Tujuan dan Manfaat

Tujuan penelitian ini adalah menghasilkan suatu sistem yang dapat mengirim dan

menerima data sensor dan kontrol status pada greenhouse secara otomatis dari sistem

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 19: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

2

kontrol ke PC dengan wireless modul XBee Pro S2B. Manfaat dari penelitian ini adalah

mempermudah pekerjaan manusia dalam monitoring kondisi greenhouse.

1.3 Batasan masalah

Tugas akhir ini bertujuan menghindari terlalu kompleksnya masalah yang muncul,

maka perlu adanya batasan-batasan masalah yang sesuai dengan judul tugas akhir ini.

Adapun batasan masalah adalah :

a. Terdapat 1 buah greenhouse.

b. Jarak maksimal antara kontrol unit dengan PC adalah 500 meter.

c. Ada 4 parameter yang diakuisisi yaitu suhu, kelembaban udara, kelembaban tanah,

kontrol status.

d. Data yang diterima dari hasil pengukuran bagian kontrol unit.

e. Interface dengan MATLAB R2012b.

f. Terdapat tabel dan grafik pada tampilan interface.

g. XBee Pro S2B sebagai sistem komunikasi.

h. Mikrokontroller dengan Arduino Mega 2560 rev 3.

1.4 Metodologi Penelitian

Berdasarkan pada tujuan yang ingin dicapai metode-metode yang digunakan dalm

penyusunan tugas akhir ini adalah :

a. Studi literatur, yaitu pengumpulan bahan-bahan referensi berupa buku, jurnal, artikel,

internet yang berkaitan dengan permasalahan yang dibahas dalam tugas akhir ini.

b. Dokumenter, yaitu mendapatkan sumber informasi berdasarkan data atau arsip yang

telah ada sehingga dapat membantu penulis dalam mengerjakan tugas akhir ini.

c. Eksperimen, yaitu langsung melakukan praktek maupun pengujian terhadap hasil

pembuatan alat dalam pembuatan tugas akhir ini.

d. Perancangan subsistem hardware. Tahap ini bertujuan untuk mencari model yang

optimal dari sistem yang akan dibuat dengan mempertimbangkan dari berbagai faktor-

faktor dan kebutuhan yang telah ditentukan.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 20: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

3

LCD

ARDUINO

MEGA

SHIELD &

XBee

USB

ADAPTER &

XBee

LAPTOP

Gambar 1.1 Diagram Blok Perancangan

e. Pembuatan subsistem hardware berdasarkan gambar 1.1, rangkaian akan bekerja dengan

baik jika data dari Arduino Mega dapat diterima dan ditampilkan pada interface laptop

dengan menggunakan XBee Pro S2B.

f. Proses pengambilan data dilakukan dengan mengirimkan data dari Arduino Mega ke

laptop dan dapat ditampilkan untuk dimonitoring.

g. Analisi data dilakukan dengan mendeteksi kestabilan sistem yang sedang berjalan

(misal: menjaga kestabilan suhu pada greenhouse). Penyimpulan hasil percobaan dapat

dilakukan dengan menghitung prosentase error yang terjadi pada kesamaan data yang

dikirim dan yang diterima.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 21: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

4

BAB II

DASAR TEORI

2.1 Sistem Telemetri

Telemetri adalah penggunaan telekomunikasi untuk merekam dan mengirimkan

sinyal pegukuran secara otomatis dari suatu alat ukur yang berada pada jarak jauh.

Selanjutnya informasi hasil pengukuran dikirimkan dengan berbagai cara menuju user [3].

Sistem telemetri bertujuan mengambil suatu data dari tempat yang lokasinya jauh

dan mengirimkannya ke stasiun pusat untuk diolah. Penggunaan sistem telemetri banyak

dijumpai dalam kehidupan sehari-hari seperti pemantauan cuaca, tracking satelit,

monitoring kendaraan, monitoring proses industri [4].

2.2 Sistem Akuisisi Data

Sistem akusisi data atau biasa dikenal Data Acquisition Sistem (DAS) merupakan

sistem instrumentasi elektronik terdiri dari sejumlah elemen yang secara bersama-sama

bertujuan melakukan pengukuran, menyimpan, dan mengolah hasil pengukuran. Secara

aktual DAS berupa interface antara lingkungan analog dengan lingkungan digital.

Lingkungan analog meliputi transduser dan pengondisi sinyal dengan segala

kelengkapannya, sedangkan lingkungan digital meliputi analog to digital converter

(ADC), selanjutnya pemrosesan digital dilakukan oleh mikroprosesor atau sistem berbasis

mikroprosesor. Komputer yang digunakan untuk sistem akuisisi data dapat mempengaruhi

kecepatan akuisisi data. Tipe-tipe transfer data yang tersedia pada komputer yang

bersangkutan mempengaruhi kinerja dari sistem akuisisi data secara

keseluruhan [5].

2.3 Greenhouse

Greenhouse atau rumah tanaman pada dasarnya digunakan untuk

mengembangbiakan suatu tumbuhan baik untuk tujuan riset maupun intensifikasi

pertanian. Greenhouse sendiri biasanya dilengkapi dengan sistem pengatur temperatur dan

kelembaban udara, sehingga besarnya suhu, kelembaban udara di dalam rumah kaca

tersebut dapat sesuai dengan habitat tanaman tersebut [6].

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 22: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

5

2.1.1 Tanaman hias ruangan

Tanaman hias yang akan ditempatkan dalam ruangan berasal dari alam terbuka dan

mempunyai sifat pembawaan yang berbeda-beda, tergantung jenisnya. Beberapa jenis

mempunyai sifat pembawaan mampu hidup dalam ruangan yang minim cahaya, udara

segar bahkan pada kelembaban relatif yang kurang. Jenis-jenis inilah sebetulnya yang

disebut tanaman hias untuk ruangan meski dalam kondisi lingkungan yang minimum [1].

Jenis-jenisnya antara lain :

a. Ruangan teduh dan sejuk

1) Jenis-jenis paku.

2) Maranta.

3) Philodendron.

b. Ruangan terang tapi tidak ada matahari

1) Monstera.

2) Scindapsus.

3) Zebrina.

c. Ruangan agak kesinaran matahari langsung kalau siang

1) Chlorophytum.

2) Cordyline.

3) Ficus decora.

4) Peperomia.

5) Sanseviera.

d. Ruangan bercahaya langsung dekat jendela

1) Coleus.

2) Ficus benjamina.

3) Kalanchoe.

e. Ruangan kering dan terang

1) Aechmea.

2) Agave.

3) Ficus decora.

4) Sanseviera.

5) Vriesia.

6) Jenis-jenis kaktus.

7) Jenis-jenis sukulen.[7]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 23: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

6

2.1.2 Suhu udara

Suhu udara di permukaan tanah berfluktuasi dan cenderung menurun seiring

dengan bertambahnya umur tanaman, karena tanaman bertambah tinggi dan jumlah serta

luas daun makin besar, sehingga radiasi yang menuju permukaan tanah terhambat atau

terhalang oleh covering dan menyebabkan evaporasi tanah terhambat [8]. Suhu maksimum

dan minimum yang mendukung pertumbuhan tanaman biasanya berkisar 5o - 35oC. Suhu

dimana pertumbuhan optimum berlangsung berbeda-beda sesuai tahap perkembangan.

Rata-rata temperatur yang diperlukan adalah 18,3 – 21,2oC, bahkan pada cuaca yang

sangat panas dengan temperatur rata-rata mencapai 27,0 oC tanaman masih tumbuh dengan

baik. Cuaca yang dingin sekitar 12,0 – 15,0oC juga membantu tanaman yang baru dipindah

atau dipotkan untuk menyesuaikan diri [1].

2.1.3 Kelembaban udara

Kelembaban udara merupakan kandungan uap air di udara yang dinyatakan sebagai

kelembaban mutlak, kelembaban nisbi (relatif) maupun defisit tekanan udara. Kandungan

uap air di udara di daerah tropik biasanya lebih besar dari pada di daerah iklim sedang.

Variasi musiman sangat kecil dan kelembaban relatif selalu diatas 80%. Kandungan uap air

udara yang sangat besar dan variasi suhu harian yang besar menyebabkan pembentukan

embun menjadi suatu yang umum bagi daerah tropik. Evaporasi embun sedikit

mengawetkan lengas tanah / kelembaban tanah, tetapi pengaruh embun yang lebih besar

adalah menciptakan kondisi yang cocok bagi perkembangan berbagai penyakit tumbuhan

[8].

2.1.4 Kelembaban tanah

Faktor kelembaban media tanam sangat mempengaruhi pertumbuhan dan

perkembangan tanaman. Kelembaban media tanam dapat dijaga dengan melakukan

penyiraman secara teratur dan pengaturan cahaya dengan menempatkankan di daerah yang

cukup ternaungi. Terjaganya kelembaban tanah, maka media tanam dapat menjamin

pertumbuhan sistem perakaran tanaman dan proses penyerapan air dan hara. Hal ini

disebabkan media menjadi porous sehingga udara dalam media cukup bersih dan seimbang

dengan keadaan airnya serta O2 tersedia dengan cukup [9].

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 24: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

7

2.4 XBee Pro S2B

Modul XBee Pro S2B dirancang untuk beroperasi dalam protokol ZigBee dan

rendah daya untuk jaringan sensor nirkabel. Modul memerlukan minimal daya dan

menyediakan pengiriman data yang handal antar perangkat jarak jauh. Modul beroperasi

dalam ISM band frekuensi 2,4 GHz menggunakan wire antena [10]. Modul XBee Pro S2B

dapat dilihat pada gambar 2.1.

Gambar 2.1 Modul XBee Pro S2B

2.4.1 Fitur-Fitur XBee Pro S2B

Terdapat beberapa fitur-fitur yang dapat mendukung kinerja XBee Pro S2B,

diantaranya :

a. Catu daya : 2.8V - 3.4V DC

b. I/O Interface : 3.3V CMOS UART, SPI, I2C, PWM, DIO, ADC.

c. Metode konfigurasi : API atau perintah AT, lokal atau melalui udara.

d. Frekuensi : 2,4 GHz.

e. Serial data : 1200 bps – 1 Mbps.

f. ADC Input : 10-bit.

g. Digital I/O : 10.

h. Pilihan antena : PCB Embedded Antenna, Wire Whip, U.FL, RPSMA.

i. Modulasi : QPSK, DSSS.

j. Jangkauan : 100 m indoor atau 3200 m outdoor (LOS).[10]

2.4.2 Spesifikasi XBee Pro S2B

Tabel 2.1 Spesifikasi XBee Pro S2B

Spesifikasi XBee-PRO (S2B)

Performa

Indoor / dalam ruangan Hingga 300 ft. (90 m)

Outdoor / luar ruangan Hingga 2 mil (3200 m)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 25: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

8

Tabel 2.1 (Lanjutan) Spesifikasi XBee Pro S2B

Spesifikasi XBee-PRO (S2B)

Performa

Transmit Power Output 63mW (+18 dBm)

RF Data Rate 250,000 bps

Data Throughput Hingga 35000 bps

Serial Interface Data Rate 1200 bps - 1 Mbps

Sensitivitas Receiver -102 dBm

Kebutuhan Daya

Tegangan Input 2.7 - 3.6 V

Arus ( transmit, output daya maksimum) 205mA hingga 220 mA

Arus (Receive) 47 mA hingga 62 mA

Arus yang ada (Receiver off) 15mA

Umum

Operasi Frekuensi Band ISM 2.4 GHz

Ukuran 0.960 x 1.297 (2.438cm x 3.294cm)

Suhu Operasional -40 sampai 85º C

Pilihan Antena Integrated Whip Antenna, Embedded PCB Antenna, RPSMA atau U.FL Connector

Jaringan dan Keamanan

Didukung Jaringan Topologi Point-to-point, Point-to-multipoint, Peer-

to-peer, and Mesh

Jumlah Saluran 15 Saluran

Saluran 11 to 25

Pilihan Alamat PAN ID dan alamat, Cluster IDs dan Endpoints

2.4.3 Konfigurasi Pin

Pin-pin di sini berguna untuk mengetahui pin mana saja yang digunakan dalam

sistem yang dibuat seperti pada gambar 2.2.

Gambar 2.2 Konfigurasi pin XBee Pro S2B

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 26: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

9

2.4.4 XBee Usb Adapter dan Software X-CTU

XBee usb adapter merupakan alat untuk menghubungkan modul Xbee ke komputer

dengan kabel mini usb dan selanjutnya dikonfigurasi menggunakan software X-CTU.

Software X-CTU merupakan software yang digunakan untuk mengkonfigurasi Xbee agar

dapat berkomunikasi dengan Xbee lainya. Parameter yang harus diatur adalah PAN ID

(Personal Area Network). PAN ID adalah parameter yang mengatur radio mana saja yang

dapat berkomunikasi, agar dapat berkomunikasi PAN ID dalam satu jaringan harus sama.

XBee dapat berkomunikasi point to point dan point to multipoint (broadcast) tetapi dalam

sistem ini komunikasi XBee secara simplex atau satu arah, jadi satu XBee mengirim dan

satunya hanya menerima data. XBee usb adapter dan kabel mini usb dapat dilihat pada

gambar 2.3 dan tampilan X_CTU pada gambar 2.4. Adaptor juga bisa mendukung

antarmuka XBee, spesifikasinya :

a. Output daya 3.3V dan 5V ganda.

b. 3.3V dan 5V IO kompatibel.

c. USB 2.0 protokol.

d. Modus BitBang.

e. Mudah terhubung ke PC via kabel mini USB.

f. Xbee pengaturan perangkat lunak pendukung X-CTU [10].

Gambar 2.3 XBee usb adapter dan kabel mini usb

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 27: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

10

Gambar 2.4 Tampilan software X_CTU

2.4.5 XBee Shield

Xbee shield merupakan board yang dapat menghubungkan board arduino

berkomunikasi secara nirkabel atau wireless menggunakan modul Xbee atau Zigbee seperti

yang terlihat pada gambar 2.5 [10].

Gambar 2.5 XBee Shield

2.4.6 Komunikasi Serial

Modul antarmuka XBee untuk perangkat host melalui port serial

asynchronous. Melalui port serial, modul dapat berkomunikasi dengan logika dan tegangan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 28: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

11

kompatibel UART atau melalui penerjemah ke perangkat serial ( misalnya: melalui modul

RS-232 atau USB interface ) seperti gambar 2.6.

Gambar 2.6 Sistem data UART

Data memasuki UART modul melalui DIN (pin 3) sebagai sinyal serial

asynchronous. Sinyal harus siaga tinggi ketika tidak ada data yang sedang dikirim. Setiap

byte data yang terdiri dari start bit (rendah), 8 bit data (bit paling signifikan pertama) dan

stop bit (tinggi) [10]. Seperti yang terlihat pada gambar 2.7.

Gambar 2.7 Paket data UART ditransmisikan melalui module XBee

2.4.7 PAN ID

Jaringan ZigBee disebut jaringan area pribadi atau PANS. Setiap jaringan

didefinisikan dengan PAN yang unik identifier (PAN ID). Identifier ini umum di semua

perangkat dari jaringan yang sama. Perangkat ZigBee yang baik dikonfigurasikan dengan

ID PAN untuk bergabung atau mereka dapat menemuan jaringan di dekatnya dan pilih ID

PAN untuk bergabung. ZigBee mendukung 64-bit dan PAN ID 16-bit. Kedua ID PAN

digunakan untuk secara unik mengidentifikasi jaringan. Perangkat pada jaringan ZigBee

yang sama harus berbagi sama 64-bit dan 16-bit ID PAN. Jika beberapa jaringan ZigBee

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 29: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

12

beroperasi dalam jangkauan satu sama lain, masing-masing harus memiliki ID PAN yang

unik [10].

2.4.8 API

Operasi API adalah sebuah alternatif untuk operasi transparan. Ketika dalam mode

API semua data masuk dan keluar modul yang terkandung didalam akan mendefinisikan

operasi atau peristiwa dalam modul.

Mengirimkan data (diterima melalui pin DIN (pin 3)) meliputi:

a. RF Transmit data

b. Perintah AT

Menerima data (dikirim pin DOUT (pin 2)) meliputi:

a. RF menerima data

b. Respon perintah

c. Pemberitahuan seperti ulang, asosiasi, memisahkan, dll.

API menyediakan sarana alternatif konfigurasi modul dan routing data pada lapisan

aplikasi host. Aplikasi host dapat mengirim frame ke modul yang berisi alamat dan muatan

informasi, bukan menggunakan modus perintah untuk memodifikasi alamat. Modul akan

mengirimkan data ke aplikasi mengandung paket status serta sumber dan informasi dari

paket data yang diterima.

Pilihan operasi API memfasilitasi banyak operasi seperti :

a. Mengirimkan data ke beberapa tujuan.

b. Menerima keberhasilan / kegagalan status setiap paket data ditransmisikan.

c. Mengidentifikasi alamat sumber dari setiap paket yang diterima [10].

2.4.9 IDLE Mode

Kondisi tidak menerima atau mengirimkan data, modul RF dalam Idle Mode /

mode siaga. Ketika data serial yang diterima dan siap dipaketkan, modul RF akan keluar

Idle Mode dan mencoba untuk mengirimkan data. Alamat tujuan menentukan data yang

akan diterima. Sebelum transmisi data, modul memastikan bahwa alamat jaringan 16-bit

dan rute ke node tujuan telah ditetapkan. Jika tujuan 16-bit alamat jaringan tidak diketahui,

alamat jaringan penemuan akan berlangsung. Jika rute tidak diketahui, penemuan rute akan

berlangsung untuk tujuan membangun rute ke node tujuan. Jika modul dengan alamat

jaringan yang cocok tidak ditemukan, paket tersebut akan dibuang. Data akan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 30: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

13

ditransmisikan sekali rute didirikan. Jika penemuan rute gagal untuk membangun rute,

paket akan dibuang. Jika paket data yang valid diterima, data akan ditransfer [10].

2.5 Topologi Point to Point

Topologi point to point adalah topologi yang membangun hubungan langsung

antara dua node jaringan. Jaringan sensor nirkabel atau WSN ini menggunakan topologi

point to point. Jenis node dan parameter yang harus dikonfigurasi agar dua Xbee dapat

berkomunikasi secara point to point adalah salah satu node harus menjadi coordinator dan

lainnya menjadi router atau end device. Klik “Read” dan “Always Update Firmware” pada

tab modem configuration dalam software X-CTU untuk dapat membaca modul Xbee, pada

bagian function set diatur menjadi Zigbee Coordinator AT, selanjutnya parameter pada

node coordinator yang harus diatur adalah parameter PAN ID, PAN ID dalam satu

jaringan (antara dua Xbee) harus sama agar dapat berkomunikasi. Jika jenis node dan

parameter sudah diatur, setelah itu klik “Write” untuk menyimpan konfigurasi yang telah

diatur ke dalam Xbee [10].

2.6 Software Matlab

Gambar 2.8 Software Matlab

Matlab atau (Matrix Laboratory) yaitu software untuk menganalisis dan

mengkomputasi data numerik. Matlab merupakan suatu bahasa pemrograman matematika

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 31: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

14

lanjutan yang dibentuk dengan dasar pemikiran yang menggunakan sifat dan bentuk

matriks seperti pada gambar 2.8.

Matlab dikembangkan oleh The Mathwork Inc yang hadir dengan fungsi dan

karakteristik yang berbeda dengan bahasa pemrograman lain yang sudah ada lebih dahulu

seperti Delphi, Basic maupun C++.

Matlab dikembangkan dengan menggunakan bahasa C++ dan assembler,

(utamanya untuk fungsi-fungsi dasar matlab). Matlab telah berkembang menjadi

sebuah environment pemrograman yang canggih yang berisi fungsi-fungsi built-in untuk

melakukan tugas pengolahan sinyal, aljabar linier, dan kalkulasi matematis lainnya. Matlab

menyediakan berbagai fungsi untuk menampilkan data, baik dalam bentuk dua dimensi

maupun dalam bentuk tiga dimensi [11].

2.6.1 Sistem MATLAB

a. Development Environment.

Kumpulan semua alat-alat dan fasiltas untuk membantu menggunakan fungsi

dan file matlab. Bagian ini memuat desktop, Command window, command history,

editor and debugger, dan browser untuk melihat help, workspace, files.

b. The Matlab Mathematical Function Library.

Bagian ini adalah algoritma komputasi, mulai dari fungsi sederhana seperti

sum, sine, cosine sampai fungsi lebih rumit seperti, invers matriks, nilai eigen,

fungsi Bessel dan fast Fourier transform.

c. The Matlab language.

Bahasa matriks/array level tinggi dengan control flow, fungsi, struktur data,

input/output, dan fitur objek programming lainnya.

d. Graphics.

Matlab mempunyai fasilitas menampilkan vector dan matriks sebagai grafik.

Fasilitas ini mencakup visualisasi data dua / tiga dimensi, pemrosesan citra (image),

animasi, dan grafik animasi.

e. The MATLAB Application Program Interface (API).

Paket ini memungkinkan menulis bahasa C dan Fortran yang berinteraksi

dengan matlab. API memuat fasilitas untuk pemanggilan kode-kode dari matlab

(dynamic linking), seperti mesin penghitung, membaca dan menulis mat-files.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 32: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

15

Matlab merupakan sistem interaktif yang mempunyai basis data array dan tidak

membutuhkan dimensi. Ini memungkinkan kita dapat menyelesaikan banyak masalah

komputasiteknis, khususnya yang berkaitan dengan formulasi matrik dan vector. Tidak

hanya itu, matlab juga mampu melakukan komputasi simbolik yang biasa dilakukan oleh

maple.

Matlab memiliki ratusan fungsi yang dapat digunakan sebagai problem solver

mulai dari simpel sampai masalah-masalah yang kompleks. Sebagai contoh di lngkungan

perguruan tinggi dan industri:

Lingkungan perguruan tinggi, misalnya perguruan tinggi teknik. matlab merupakan

perangkat standar untuk memperkenalkan dan mengembangkan penyajian materi

matematika, rekayasa dan keilmuan.

Di industri, matlab merupakan perangkat pilihan untuk penelitian dengan

produktifitas yang tinggi, pengembangan dan analisanya. Kegunaan matlab secara umum

adalah sebagai berikut:

a. Matematika dan komputasi

b. Perkembangan algoritma

c. Pemodelan, simulasi, dan pembuatan prototype

d. Analisa data, eksplorasi dan visualisasi

e. Pembuatan aplikasi, termasuk pembuatan antaramuka grafis [11].

2.6.2 Karakteristik MATLAB

a. Bahasa pemrogramannya didasarkan pada matriks (baris dan kolom).

b. Lambat (dibandingkan dengan Fortran atau C) karena bahasanya langsung

diartikan.

c. Automatic memory management, misalnya kita tidak harus

mendeklarasikan arrays terlebih dahulu.

d. Tersusun rapi.

e. Waktu pengembangannya lebih cepat dibandingkan dengan Fortran atau C.

f. Dapat diubah ke bahasa C lewat matlab Compiler.

g. Tersedia banyak toolbox untuk aplikasi-aplikasi khusus.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 33: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

16

Beberapa kelebihan program aplikasi matlab jika kita bandingkan dengan program

lain seperti Fortran, dan Basic adalah :

a. Mudah dalam memanipulasi struktur matriks dan perhitungan berbagai operasi matriks

yang meliputi penjumlahan, pengurangan, perkalian, invers dan fungsi matriks

lainnya.

b. Menyediakan fasilitas untuk memplot struktur gambar (fasilitas grafik tiga dimensi

yang sangat memadai).

c. Script program yang dapat diubah sesuai dengan keinginan.

d. Jumlah routine-routine powerful yang berlimpah yang terus berkembang.

e. Kemampuan interface (misal dengan bahasa C, word dan mathematica).

f. Matlab dilengkapi dengan toolbox, simulink, stateflow dan sebagainya, serta mulai

melimpahnya source code di internet yang dibuat dalam matlab, ( contoh toolbox

misalnya : signal processing, control system, neural networks dan sebagainya) [11].

2.6.3 Karakteristik Lingkungan Kerja MATLAB

Secara umum lingkungan kerja matlab terdiri dari tiga bagian yang penting dalam

menjalankan yaitu:

a. Command Windows

Windows ini muncul pertama kali ketika menjalankan program matlab. Command

windows digunakan untuk menjalankan perintah-perintah matlab, memanggil tool matlab

seperti editor, fasilitas help, model simulink dan lain-lain. Ciri dari windows ini adanya

prompt (tanda lebih besar) yang menyatakan matlab siap menerima perintah. Perintah

tersebut dapat berupa fungsi-fungsi bawaan (toolbox) matlab itu sendiri.

1) Workspace : menampilkan semua variable yang pernah kita buat meliputi variable

ukuran, jumlah byte, dan class

2) Command History : menampilkan perintah-perintah yang telah kita ketikkan pada

Command Window.

b. Editor Window

Window ini merupakan tool yang disediakan oleh matlab yang berfungsi sebagai

editor script matlab (listing perintah-perintah yang harus dilakukan oleh matlab). Ada dua

cara untuk membuka editor ini, yaitu Klik : File, lalu New dan kemudian M-File.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 34: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

17

Secara formal suatu script merupakan suatu file eksternal yang berisi tulisan

perintah matlab. Tetapi script tersebut bukan merupakan suatu fungsi. Ketika menjalankan

suatu script, perintah di dalamnya dieksekusi seperti ketika dimasukkan langsung

pada matlab melalui keyboard.

Penulisan barisan ekspresi dalam matlab command window dilakukan pada baris

perbaris dan untuk menyimpan barisan perintah serta hasil outputnya dengan menggunkan

command diary. Hal ini tidak efisien dikarenakan barisan yang telah tersimpan di diary

tidak dapat diload-kan kembali, seandaianya telah keluar dari matlab. Jika dilakukan

banyak sekali perulangan barisan perintah yang sama, misalkan dilakukan pengolahan data

dan perhitungan yang sama dengan melibatkan data atau fungsi yang berbeda. Cara

membentuk dan menjalankan M-File:

1) Klik menu File, pilih New dan klik M-File

2) Pada editor teks, tulis argumen atau perintah

3) Simpan dengan cara klik File, pilih Save As dan beri nama dengan ekstensi .m

4) Pastikan file yang akan dijalankan berada pada direktori aktif

5) Misalkan file graf1.m berada di C:\MATLAB, maka lakukan perintah cd

6) >> cd c:\matlab

7) Kemudian jalankan file graf1.m dengan cara

8) >> graf1

Fungsi M-File harus mengikuti beberapa aturan. Fungsi M-file juga mempunyai

sejumlah sifat penting. Aturan-aturan dan sifat-sifat tersebut meliputi :

1) Nama fungsi dan nama file harus identik. Contohnya flipud disimpan dalam file yang

bernama flipud.m

2) Pertama kali matlab mengeksekusi suatu fungsi M-file, matlab membuka file fungsi

tersebut dan mengkompilasi perintah-perintah di dalamnya menjadi suatu representasi

internal dalam memori yang mempercepat eksekusi untuk semua pemanggilan

berikutnya.

3) Baris komentar sampai dengan baris bukan komentar yang pertama adalah teks help

yang ditampilkan. Jika meminta bantuan, misalnya >>help flipud yang menampilkan 9

baris komentar pertama dari contoh di atas. Baris komentar yang paling atas disebut

baris H1 yakni baris yang dicari oleh perintah lookfor.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 35: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

18

4) Setiap fungsi memiliki ruang kerjanya sendiri yang berbeda dengan ruang kerja

matlab. Satu-satunya hubungan antara ruang kerja matlab dengan variabel-variabel

dalam fungsi adalah variabel-variabel input dan output fungsi.

5) Jumlah dari argument input dan output yang digunakan jika suatu fungsi dipanggil

hanya ada dalam fungsi tersebut.

6) Fungsi dapat berbagi variabel dengan fungsi lain, ruang kerja matlab dan pemanggilan

untuk dirinya sendiri jika variabelnya dideklarasikan sebagai variabel global.

7) Fungsi M-file berhenti dieksekusi dan kembali ke prompt jika telah mencapai akhir

dari M-file atau jika menemui perintah return. Perintah return merupakan cara

sederhana untuk menghentikan fungsi sebelum mencapai akhir file. Fungsi M-file

dapat memuat lebih dari sebuah fungsi

c. Figure Windows

Windows ini merupakan hasil visualisasi dari script Matlab. Matlab memberikan

kemudahan bagi programmer untuk mengedit windows ini sekaligus memberikan program

khusus untuk itu, sehingga selain berfungsi sebagai visualisasi output yang berupa grafik

juga sekaligus menjadi media input yang interaktif.

d. Simulink windows

Windows ini digunakan untuk mensimulasikan sistem kendali berdasarkan blok

diagram yang telah diketahui. Untuk mengoperasikannya ketik “simulink” pada command

windows [11].

2.7 LCD

LCD (liquid cell display) merupakan salah satu komponen elektronika yang

berfungsi untuk menampilkan data berupa karakter, huruf, angka [12]. Pada penerapanya

LCD akan menampilkan status pengiriman data dari greenhouse. Seperti pada gambar 2.9.

Gambar 2.9 LCD Display

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 36: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

19

LCD tipe ini memiliki 2 baris dimana masing-masing baris memuat 16 karakter.

Selain sangat mudah dioperasikan, kebutuhan daya LCD ini sangat rendah [12]. Sementara

untuk konfigurasi pin dapat dilihat pada tabel 2.2 berikut.

Tabel 2.2 LCD Display

No Nama Fungsi

1 Vss 0V (GND)

2 Vcc 5V

3 VLC LCD Contrast Voltage

4 RS Register Select; H: Data Input; L: Instruction Input

5 RD H: Read; L: Write

6 EN Enable Signal

7 D0 Data Bus

8 D1 Data Bus

9 D2 Data Bus

10 D3 Data Bus

11 D4 Data Bus

12 D5 Data Bus

13 D6 Data Bus

14 D7 Data Bus

15 V+BL Positif backlight voltage (4-4,2V; 50-200mA)

16 V–BL Negative backlight voltage (0V; GND)

2.8 Mikrokontroller Arduino Mega

Mega 2560 adalah papan mikrokontroler berdasarkan ATmega2560. Mikro ini

memiliki 54 digital pin input / output (yang 15 dapat digunakan sebagai output PWM), 16

analog input, 4 UART (hardware port serial), osilator kristal 16 MHz, koneksi USB, jack

listrik, header ICSP, dan tombol reset. Berisi semua yang diperlukan untuk mendukung

mikrokontroler, hanya terhubung ke komputer dengan kabel USB atau dengan adaptor AC-

DC atau baterai untuk suplay [13]. Arduino mega dapat dilihat seperti gambar 2.10. Untuk

lebih jelasnya dapat dilihat di lampiran 9 sampai 13.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 37: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

20

Gambar 2.10 Arduino Mega

2.9 Software Arduino

Pemrograman arduino dikenal dengan Integrated Development Evironment ( IDE ).

Lingkungan pemrograman yang digunakan untuk menulis baris program dan

mengunggahnya ke dalam board arduino dibuat lebih mudah dan dapat berjalan pada

beberapa sistem operasi seperti windows, macintosh dan linux [13]. Dengan tampilan awal

seperti gambar 2.11.

Gambar 2.11 IDE Arduino

Tabel 2.3 Keterangan Tombol Pada Tampilan IDE Arduino

No Tombol Nama Fungsi

1

Verify

Menguji kesalahan dalam program atau sketch apabila sketch sudah benar, maka sketch tersebut akan dikompilasi. Kompilasi adalah proses mengubah kode program ke dalam kode mesin.

2

Upload

Mengirimkan kode mesin hasil kompilasi ke board arduino

3

New Membuat sketch baru

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 38: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

21

Tabel 2.3 (Lanjutan) Keterangan Tombol Pada Tampilan IDE Arduino

No Tombol Nama Fungsi

4

Open

Membuka sketch yang sudah ada

5

Save

Menyimpan sketch

IDE arduino pada tabel 2.3 membutuhkan beberapa pengaturan yang digunakan

untuk mendeteksi board arduino yang sudah dihubungkan ke komputer. Beberapa

pengaturan tersebut adalah mengatur jenis board yang digunakan sesuai dengan board

yang terpasang dan mengatur jenis komunikasi data melalui perintah serial port. Kedua

pengaturan tersebut dapat ditemukan pada pull menu tools [13].

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 39: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

22

BAB III

RANCANGAN PENELITIAN

3.1 Arsitektur Sistem

Perancangan sistem telemetri akuisisi data greenhouse menggunakan XBee Pro S2B

dibagi menjadi dua bagian utama, yaitu:

a. Perancangan software yang terdiri dari pemograman pc / interface, pemrograman mikro /

arduino mega, penyetingan konfigurasi XBee Pro S2B.

b. Perancangan hardware yang terdiri dari perancangan LCD.

Gambar 3.1 Blok Diagram Seluruh Sistem

Gambar 3.2 Blok Diagram Sistem Penelitian

Peneliti dalam sistem ini membuat sistem dengan bagian blok warna merah yaitu

pengirim dan penerima data dengan modul XBee Pro S2B kemudian ditampilkan di PC

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 40: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

23

seperti pada gambar 3.1. Berikut merupakan keterangan cara kerja sistem yang ditunjukkan

gambar 3.2 :

a. XBee Pro S2B merupakan transmitter wireless yang bekerja pada frekuensi 2,4 GHz. Alat

ini mempunyai 2 fungsi yaitu pengirim data dari hasil sensor melalui arduino mega ke PC

dan penerima data di PC secara wireless.

b. LCD sebagai penampil status bahwa data sedang dikirim.

c. Arduino mega berfungsi sebagai media perantara untuk mentransmisikan data yang masuk

ke PC yang dipancarkan oleh XBee Pro S2B.

d. Shield Xbee berfungsi komunikasi antara arduino mega dengan XBee.

e. Usb adapter berfungsi untuk berkomunikasi antara PC dengan XBee menggunakan port

USB.

f. Untuk mendapatkan data dari control unit. Data dari control unit yang disimpan dalam

database arduino mega akan dikirimkan ke PC melalui XBee Pro S2B. Setelah data di

terima di PC, data tersebut dipisahkan untuk setiap format datanya kemudian ditampilkan

dalam bentuk tabel dan grafik.

3.2 Perancangan Subsistem Software

Perancangan subsistem software yang pertama harus dibuat adalah membuat diagram

alur sistemnya terlebih dahulu yang nantinya dalam pembuatan program dapat terencana

dengan baik dan sesuai.utuk mendukung perancangan software, di sini dibuat rancangan

tampilan GUI / interface seperti gambar 3.3 dengan software matlab sebagai sistem

monitoring kondisi greenhouse yang secara otomatis data akan masuk dan tertampil secara

realtime, kemudian data yang telah masuk akan tertampil dalam bentuk tabel dan grafik yang

nantinya data juga akan tersimpan di dalam database yakni disimpan dengan format tanggal

pengiriman.mat agar memudahkan dalam pencarian data yang sebelumnya sudah tersimpan.

Saat data yang baru masuk maka nantinya user atau pengguna juga dapat mencari atau

melihat-lihat file-file yang sebelumnya tersimpan jika dibutuhkan. Model format

penyimpanan data sesuai dengan format karakter pada tabel interface.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 41: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

24

Gambar 3.3 Tampilan GUI

Bagian data masuk adalah data yang sesuai dengan data yang baru saja dikirim dari

transmitter untuk mengecek atau melihat apakah data yang masuk dan diterima sesuai. Untuk

tampilan pada tabel nantinya data akan tertampil sesuai dengan nomor paket pengiriman

yakni akan terus bergeser ke atas atau data yang baru akan tertampil pada tabel paling bawah

dan jika ingin melihat data yang sudah lama dengan cara scroll atau geser ke atas secara

manual.

Grafik yang ada nantinya akan terus tertampil dengan 10 data terakhir yang diterima

hingga hari berganti agar memudahkan dalam pembacaan grafik setiap harinya serta nantinya

pengguna juga dapat melihat data pada jam dan tanggal berapa saja. Keterangan grafik pada

sumbu x adalah waktu pengiriman dan sumbu y adalah data sensor yang masuk seperti

gambar 3.4. Serta nantinya dapat melihat nilai minimum, maximum dan average pada setiap

data sensor yang dikirim per harinya. Jika ingin melihat grafik pada data yang diinginkan,

contoh melihat data pada jam 2 sampai jam 6 pagi dua minggu yang lalu, ya tinggal cari file

pada tanggal tersebut dan yang di plot atau dibuat grafiknya ambil pada jam 2 sampai jam 6

pagi saja dan nantinya akan tertampil grafik sesuai dengan apa yang diinginkan.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 42: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

25

Gambar 3.4 Tampilan Grafik GUI

3.2.1 Diagram Alir Program Utama

Perancangan sistem yang akan dijalankan dengan inisialisasi port pada mikro arduino

mega kemudian mengaktifkan TX / transmitter, setelah itu tanggal dan waktu pengiriman

harus diketahui. Setelah semua data terkumpul maka data siap dikirim dan diterima dengan

bantuan modul XBee Pro S2B secara wireless yang kemudian akan ditampilkan datanya di

dalam interface PC dan dapat dimonitoring pada jarak jauh. Diagram alir dapat dilihat pada

gambar 3.5 dimana bagian dengan warna biru merupakan sistem pengiriman data dan bagian

dengan warna merah merupakan sistem penerima data.

3.2.2 Diagram Alir Subrutin Pengiriman Data

Sistem pada perancangan pengiriman data ini dengan inisialisasi port mikro arduino

mega kemudian transmitter diaktifkan lalu atur tanggal dan waktu pengiriman kemudian

semua data yang akan dikirim akan dilihat apakah data tersebut termasuk data waktu dan

tanggal, sensor, kontrol status, suhu, kelembaban udara, kelembaban tanah. Setelah data

tersebut sudah sesuai maka siap dikirim di dalam bentuk paket yang sebelumnya data tersebut

sudah terdapat karakter tersendiri untuk membedakan antara data yang satu dengan yang

lainnya seperti pada gambar 3.6. Subrutin setiap pengiriman data dapat dilihat di lampiran

gambar L1 sampai L6 dengan mengirimkan data setiap satu menit sekali karena

menyesuaikan dengan pengambilan data pada sensor.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 43: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

26

Inisialisasi

Port Mikro

Aktifkan TX

Mulai

Subrutin Pengiriman

Data

Subrutin Penerima

Data

Tampilkan Data Dalam

Tabel dan Grafik

Selesai

Baca Waktu

dan Tanggal

Gambar 3.5 Diagram Alir Program Utama

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 44: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

27

Mulai

Atur Waktu

Pengiriman

Data

Inisialisasi

Port Mikro

Aktifkan TX

Data TanggalSubrutin Pengiriman

Data TanggalUlang

Data Kontrol StatusSubrutin Pengiriman

Data Kontrol StatusUlang

Data SuhuSubrutin Pengiriman

Data SuhuUlang

Data Kelembaban

Udara

Data Kelembaban

Tanah

Subrutin Pengiriman

Data Kelembaban

Tanah

Subrutin Pengiriman

Data Kelembaban

Udara

Ulang

Ulang

Kirim Paket DataSubrutin Pengiriman

Paket Data

Selesai

YAYA

YA

YA

YA

YA

YA

YA

YA

YA

YA

TIDAK

TIDAK

TIDAK

TIDAK

TIDAK

TIDAK

TIDAK

TIDAK

TIDAK

TIDAK

TIDAK

Data WaktuSubrutin Pengiriman

Data WaktuUlang

YA

YA

TIDAK

Gambar 3.6 Diagram Alir Subrutin Pengiriman Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 45: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

28

3.2.3 Diagram Alir Pengiriman dan Penerimaan Paket Data

Sistem pengiriman dan penerimaan paket data ini dengan mengambil serta

mengirimkan satu paket data yang sudah siap kirim kemudian transmitter diaktifkan

kemudian paket data dikirim dan pada XBee penerima receiver diaktifkan supaya dapat

menerima paket data yang sudah dikirim. Setelah itu data akan diterima dan ditampilkan

dalam interface PC seperti pada gambar 3.7.

Mulai

Ambil 1

Paket Data

Aktifkan TX

Kirim Paket

Data

Aktifkan RX

Data Masuk ?

Ambil Paket

Data

Tampilkan

Dalam Bentuk

Tabel dan grafik

Selesai

YA

TIDAK

Gambar 3.7 Diagram Alir Pengiriman dan Penerimaan Paket Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 46: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

29

3.2.4 Diagram Alir Subrutin Penerima Data

Sistem pada perancangan ini menerima setiap satu menit sekali dengan

menginisialisasi port pada PC kemudian transmitter diaktifkan agar dapat berkomunikasi dan

data bisa diterima. Setelah data masuk akan dicek terlebih dahulu apakah format sesuai, jika

ya maka data siap ditampilkan. Dengan diagram alir seperti pada gambar 3.8.

Mulai

Inisialisasi

Port PC

Aktifkan

RX

Data Masuk ?

Ambil dan

Periksa

Data

Format Data

sesuai ?

Tampilkan Data Ke

Tabel dan Grafik

Selesai

YA

TIDAK

YA

TIDAK

Gambar 3.8 Diagram Alir Subrutin Penerima Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 47: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

30

3.2.5 Format Paket Data

Jumlah karakter dalam paket data sebanyak 44 karakter, terdiri dari nomor

pengiriman, waktu, tanggal, status sistem kontrol dan data 3 sensor ( suhu, kelembaban udara,

kelembaban tanah) yang diawali dengan karakter ”@” dan diakhiri dengan karakter “$”.

Format data tersebut disesuaikan dengan kebutuhan , berikut format data di dalam paket data :

@HH:MM#YYYY-mm-DD#KxEyPz#S11.1#U22.2#T33.3$

Dari format data yang sudah ada, HH:MM adalah jam dan menit, YYYY-mm-DD

adalah tanggal bulan tahun pengiriman, KxEyPz adalah keterangan apakah sistem kendalinya

dalan kondisi on atau off yakni terdapat kipas, evaporator fan dan pompa air, S11.1 adalah

data suhu dengan tanda titik (.) sebagai pemisah angka desimal, U22.2 adalah data

kelembaban udara dengan tanda titik (.) sebagai pemisal angka desimal, T33.3 adalah data

kelembaban tanah dengan tanda titik (.) sebagai pemisah angka desimal untuk memudahkan

dalam pembacaan, tanda pagar (#) sebagai pemisah tiap data. Dari format paket data tersebut

dijelaskan jumlah karakter dalam tabel tabel 3.1.

Tabel 3.1 Format Paket Data

Waktu Tanggal Kontrol Status

Suhu (oC)

Kelembaban Udara (%)

Kelembaban Tanah (%)

Jumlah Karakter

5 10 6 5 5 5

3.2.6 Format Penyimpanan File

Perancangan ini supaya dapat memudahkan pengguna dalam menyimpan data, maka

file yang disimpan diberi nama sesuai dengan tanggal kapan data tersebut diterima / dikirim

dengan format nama.mat, contoh 20160210.mat berarti file tersebut data pada tahun 2016

bulan Februari tanggal 10. Data tersebuat tersimpan secara otomatis setelah semua data dalam

1 hari sudah diterima semua karena pengiriman data setiap 1 menit sekali, jadi dalam 1 hari

terdapat 1440 data yang harus dikirim dan diterima. Penyimpanan setiap hari atau per hari dan

sebagai keterangan rancangan sistem kerja GUI seperti yang diperjelas pada gambar 3.9. Pada

database nantinya dalam 1 folder akan dapat menyimpan data dalam satu minggu dengan

jumlah data 10080 dan untuk 4 bulan dalam satu siklus tanam yakni 10080 x 16 minggu

adalah 161.280 data dengan catatan bahwa software matlab menyala terus menerus, di sini

sebenarnya berapapun banyak datanya tidak masalah karena masuk ke dalam memori laptop

dan juga memori setiap data sangat kecil, untuk satu karakter jika dalam satu hari hanya

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 48: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

31

11520 bytes, sementara dalam paket data terdapat 44 karakter, berarti dalam satu hari hanya

menyimpan data 11520 kb x 44 karakter yakni 506880 b atau 506,88 kb dan dalam satu

minggu 506,88 x 7 jadi 3548,16 kb atau 3,54816 Mb. Jika dalam satu siklus tanam 4 bulan,

maka 3,54816 Mb x 16 minggu yakni 56,77056 Mb seperti yang diperjelas pada gambar 3.10

dan 3.11.

START

Apakah Paket

Data Sesuai ?

Ulang

SELESAI

Tidak

Ya

Ya

Ya

Tidak

Tampilkan Data

Dalam Bentuk Grafik

Terima

Data

Paket

Tampilkan Data

Dalam Kolom Data

Terbaru dan

Kedalam Tabel

Simpan Data

Paket Dalam

Bentuk M.File

Gambar 3.9 Diagram Alir Penyimpanan Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 49: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

32

Gambar 3.10 Menampilkan Data

Gambar 3.11 Menghitung Memori Data

Jika nantinya software Matlab dimatikan berarti datanya tidak tersimpan dan jika

ingin menamilkan grafik pada data sebelum dan sesudah dimatikan hanya dengan plot data

yang nantinya diinginkan meskipun berbeda data seperti pada gambar 3.12.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 50: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

33

Gambar 3.12 Penampil Grafik dengan Data yang Hilang

3.3 Perancangan Subsistem Hardware

Perancangan subsistem hardware dibuat untuk mendukung dalam pembuatan sistem

ini, perancangan yang akan dibuat adalah setting XBee, perancangan LCD sebagai penampil

data yang akan dikirim serta desain greenhouse yang akan digunakan.

3.3.1 Setting Konfigurasi XBee Pro S2B

Saat akan melakukan setting konfigurasi XBee dengan software X_CTU pilih port

mana yang akan diseting kemudian pilih baud rate dan test, jika berhasil maka akan muncul

kotak seperti gambar 3.13. Setting konfigurasi dengan memilih type modem yang harus

terkonfigurasi dengan internet, lalu set coordinator AT dengan membuat PAN ID dengan

angka yang unik, cek nomor PAN ID dan nomor versi pada XBee seperti pada gambar 3.14

serta cek serial number seperti pada gambar 3.15.

Setting XBee yang ke dua dengan cara yang sama seperti pada setting XBee yang

pertama dengan hasil test modem seperti pada gambar 3.16 tapi setelah memilih type modem

lalu set router AT, cek versi router dan serial number seperti pada gambar 3.17 serta cek

router DH dan DL seperti gambar 3.18. Isi DH dan DL dengan nomor SH dan SL dan cek

seluruh konfigurasi XBee yang kedua seperti pada gambar 3.19.

Setelah selesai pada XBee kedua lalu setting lagi XBee yang pertama dengan hasil test

sepert pada gambar 3.20, kemudian cek konfigurasinya seperti dan ganti DH dan DL dengan

SH dan SL router XBee yang kedua, cek lagi konfigurasinya seperti, jika sudah semua selesai

XBee dapat digunakan untuk berkomunikasi.

22.5

23

23.5

24

24.5

25

25.5

0 5 10 15

oC

Paket Data

Suhu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 51: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

34

Gambar 3.13 Hasil Test Komunikasi XBee Pertama

Gambar 3.14 Nomor Versi dan PAN ID Gambar 3.15 Nomor PAN ID dan Serial

Number

Gambar 3.16 Test Modem XBee kedua

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 52: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

35

Gambar 3.17 Versi Router dan Serial Number Gambar 3.18 Router DH dan DL

Gambar 3.19 cek Seluruh konfigurasi XBee Gambar 3.20 Test XBee Pertama

3.3.2 LCD

Perancangan elektronika greenhouse ini LCD yang digunakan pada LCD character

16x2 berfungsi sebagai penampil keterangan paket pengiriman data. Berdasarkan datasheet

tegangan kontras (pin Vo) maksimum LCD ini adalah 5 volt, nantinya akan digunakan

Variabel resistor sebesar 10 kohm yang akan digunakan untuk membatasi tegangan pada pin

ini. Tujuannya mengatur kontras pada LCD tersebut. Rangkaian LCD character 16x2

ditunjukkan pada gambar 3.21.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 53: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

36

Gambar 3.21 Rangkaian LCD Display

Pada Tabel 3.2 merupakan rancangan tampilan data pada LCD dengan keterangan

warna biru merupakan status kontrol dengan Kx adalah kipas, Ey adalah evaporator fan, Pz

adalah pompa air, warna merah merupakan data suhu dengan satu angka desimal di belakang

koma, warna hijau merupakan data kelembaban udara dengan satu angka desimal di belakang

koma, warna kuning merupakan data kelembaban tanah dengan satu angka desimal dibelang

koma dan warna ungu merupakan jumlah paket data yang dikirim atau nomor pengiriman

paket data yang nantinya paket akan reset setiap hari maka butuh 4 karakter yakni 1 jam = 60

menit, maka 60 x 24 jam = 1440 paket data. Tanda pagar di LCD merupakan pemisah antar

bagian data agar mudah dalam pembacaan dan tanda titik sebagai tanda koma untuk angka

desimal.

Tabel 3.2 Tampilan Data di LCD

K x E y P z # S 1 1 . 1 # U 2 2

. 2 # T 3 3 . 3 # P 4 4 4 4

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 54: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

37

3.3.3 Design Greenhouse

Perancangan ini merupankan design smart greenhouse yang dibuat berupa gambar 3

dimensi yang nantinya akan menjadi panduan untuk membuat alat yang sebenarnya. Pada

gambar 3.20 ditunjukan design untuk greenhouse tersebut dengan ukuran panjang x lebar x

tinggi adalah 70 cm x 60 cm x 80 cm. Greenhouse nantinya akan terbuat dari alumunium

dan kaca. Pada greenhouse akan terdapat kipas, evaporator fan dan sistem pengairan yang

akan diletakkan di dalam greenhouse.

Pompa air akan diletakkan diluar greenhouse yang ditunjukkan pada gambar 3.22.

seperti yang terlihat pada gambar 3.23 merupakan gambaran greenhouse dari depan dan

gambar 3.24 merupakan gambaran greenhouse dari atas serta gambar 3.25 merupakan

gambaran greenhouse tampak dari samping. Dalam meletakkan pusat kontrolnya, juga

terdapat kotak di depan greenhouse seperti pada gambar 3.23. Kotak ini nantinya digunakan

untuk meletakkan mikrokontroler ,LCD , LED dan tombol sebagai pusat kontrol. User

nantinya akan melihat status greenhouse pada kotak ini. Pada greenhouse ini juga akan

terdapat 4 roda agar mudah untuk dipindahkan. Kedua sensor, SHT 11 akan diletakkan diatas

selang irigasi , sementara YL-69 akan ditanam ditanah yang ada pada greenhouse.

Gambar 3.22 Design Prototype Smart Greenhouse

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 55: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

38

Gambar 3.23 Tampak Depan Gambar 3.24 Tampak Atas

Gambar 3.25 Tampak Samping

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 56: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

39

BAB IV

HASIL DAN PEMBAHASAN

Bab ini berisikan gambar fisik hardware yang dibuat, sistem elektronik, pengujian

hardware yang meliputi pengujian komunikasi XBee, pengujian timer dan pengiriman

paket data, pengujian timer dan penerima paket data, pengujian interface, pengujian

database. Pembahasan perangkat lunak yang meliputi program utama, subrutin pengiriman

paket data, subrutin pengiriman data waktu dan tanggal, subrutin pengiriman status

pengendali, subrutin pengiriman data sensor, subrutin penerima paket data, penyimpanan

data. Hasil pengujian berupa data-data yang diperoleh dapat memperlihatkan bahwa

hardware dan software yang dirancang telah bekerja dengan baik atau tidak. Berdasarkan

data-data tersebut dapat dilakukan analisis terhadap proses kerja alat yang kemudian dapat

digunakan untuk menarik kesimpulan akhir.

4.1 Bentuk Fisik Box Kontrol Pengiriman Data dan Sistem Elektronik

Fisik box dan sistem elektronik merupakan komponen pendukung karena dari

kontrol box data diambil dan dikirimkan ke interface.

4.1.1 Bentuk Fisik Box

Bentuk fisik box yang digunakan untuk menempatkan rangkaian elektronik, box

dirancang agar mempermudah dalam penempatan rangkaian elektronik pendukung sistem

yang akan dijalankan. Gambar fisik box dapat dilihat seperti pada gambar 4.1 yang

merupakan bentuk fisik box tampak depan dengan adanya LCD dan tombol push botton

untuk melihat data serta pada bagian kiri terdapat lampu indikator status dari ketiga sensor,

gambar 4.2 merupakan bentuk fisik box tampak atas dengan adanya antena dari modul

XBee Pro S2B sebagai modul pengiriman paket data, gambar 4.3 merupakan bentuk fisik

box tampak samping dengan adanya input dan sumber tegangan mikrokontroler arduino

serta input sensor, gambar 4.4 merupakan bentuk fisik box tampak bawah dengan adanya

stop kontak dari relay untuk mengatur pompa air, air cooler sebagai pengganti kipas dan

humidifier sebagai pengganti evaporator fan yang mengontrol kodisi greenhouse agar

sesuai dengan apa yang diinginkan dan tergantung dari data keluaran sensor.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 57: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

40

Gambar 4.1 Bentuk Fisik Box Tampak Depan

Gambar 4.2 Bentuk Fisik Box Tampak Atas

Gambar 4.3 Bentuk Fisik Box Tampak Samping

Antena_XBee

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 58: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

41

Gambar 4.4 Bentuk Fisik Box Tampak Bawah

4.1.2 Sistem Elektronik

Sistem elektronik yang terdapat pada kontrol box yakni XBee, Shield XBee sebagai

modul komunikasi transmitter paket data seperti terlihat pada gambar 4.5 dan LCD untuk

menampilkan data yang terkirim, status input sensor atau data sensor, status output sensor

atau status kontrol semua data seperti terlihat seperti pada gambar 4.6. Selama pengujian

semua hardware yang digunakan aman dan berfungsi dengan baik sesuai rancangan, LCD

yang digunakan diganti dari ukuran 16 x 2 dengan 16 x 4 agar tampilan data dapat terlihat

dengan mudah atau memudahkan pengguna dalam pembacaan data. Hardware yang

terpasang pada laptop yakni XBee dan usb adapter juga berfungsi dengan baik yang

berguna sebagai modul komunikasi receiver paket data seperti pada gambar 4.7.

Gambar 4.5 XBee dan Shield XBee

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 59: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

42

Gambar 4.6 LCD

Gambar 4.7 XBee dan Usb adapter

4.2 Pengujian Hardware

Pengujian hardware bertujuan supaya hardware yang digunakan benar-benar layak

pakai dalam jangka panjang dan berfungsi dengan baik. Pengujian yang dilakukan meliputi

pengujian komunikasi XBee Pro S2B, pengujian timer dan pengiriman paket data,

pengujian timer dan penerima paket data, pengujian interface, pengujian database.

4.2.1 Pengujian Komunikasi XBee Pro S2B

Pengujian komunikasi pada modul XBee Pro S2B bertujuan supaya modul

komunikasi ini dapat berfungsi dengan baik. Dalam pengujian dapat dilihat secara

langsung modul ini berkerja atau tidak dengan melihat pada usb adapter yang terpasang

pada XBee sebagai receiver, led pada usb adapter akan bernyala merah jika ada data yang

diterima/masuk seperti yang terlihat pada gambar 4.8, jika tidak ada data yang masuk dan

XBee tersebut sedang berkomunikasi maka hanya led warna biru yang berkedip seperti

yang terlihat pada gambar 4.9.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 60: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

43

Pada pengujian komunikasi yang dilakukan di kondisi outdoor dengan tempat

pengambiilan data di area dalam kampus 3 Sanata Dharma, Paingan, Yogyakarta. Kontrol

box sebagai media untuk mengirimkan ditempatkan di dekat gazebo kolam ikan

dikarenakan mengambil titik tengah yang nantinya pengujian dapat dilakukan di area

sudut-sudut gedung kampus. Untuk setiap pengujian pengiriman paket data, data yang

diterima / diambil selama 5 menit setiap titik pengambilan data dengan timer pada program

receiver untuk menyamakan lamanya pengambilan data dan menghitung berapa nantinya

data yang dapat diterima dan error selama 5 menit tersebut.

Hasil pengujian yang dilakukan, antara transmitter dan receiver dapat

berkomunikasi dengan baik dan lancar hingga jarak 115 meter seperti pada tabel 4.1 dan

pengujian pada jarak 120 meter data yang diterima tidak maksimal, yakni terdapat 2 data

yang tidak masuk yakni pada jam 14:10:39 kemudian jam 14:10:59 jam 14:11:09

kemudian jam 14:11:29, dari data waktu yang masuk ada paket data yang terlewatkan atau

tidak diterima yaitu jam 14:10:49 dan 14:11:19 yang disebabkan karena jarak yang terlalu

jauh untuk dijangkau dan adanya tembok-tembok penghalang yang memungkinkan kurang

maksimalnya pengiriman paket data seperti pada tabel 4.2. Jika jarak pengambilan data

lebih dekat dari 115 meter dan banyak penghalang maka data yang diterima juga tidak

akan maksimal serta karakter pada paket data yang dikirimkan juga akan error seperti pada

pengambilan data pada jarak yang jauh dan tidak terjangkau. Di dalam pengujian ini

contoh data yang error seperti pada tabel 4.3, karakter pada data tanggal tepatnya pada

tahun dimana tanggal pengiriman data angka 2 pada tahun 2016 hilang jadi data yang

diterima karakternya menjadi 016 tetapi data yang lain tetap benar. Pada tampilan interface

sebenarnya angka 2 tersebut sudah diterima dan ditampilkan tetapi tidak bersamaan dengan

data yang lainnya maka data tersebut tidak tersimpan di excel seperti pada gambar 4.10 di

tampilan data tunggal atau data update yang baru diterima. Hasil pengujian jarak yang

dilakukan dalam pengambilan data untuk membuktikan jarak maksimal komunikasi modul

XBee terlihat seperti pada tabel 4.4.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 61: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

44

Gambar 4.8 XBee Menerima Data

Gambar 4.9 XBee Berkomunikasi Tanpa Data

Tabel 4.1. Komunikasi Data Tanpa Error

Waktu Tanggal Suhu Kel. Udara Kel. Tanah Air

Cooler Humidifier Pompa

Air

12:44:31 2016-06-29 32,23 86,19 5,00 1 0 0

12:44:41 2016-06-29 32,25 86,27 5,00 1 0 0

12:44:51 2016-06-29 32,28 85,53 5,00 1 0 0

12:45:01 2016-06-29 32,23 86,68 5,00 1 0 0

12:45:11 2016-06-29 32,30 86,72 5,00 1 0 0

12:45:21 2016-06-29 32,31 86,12 5,00 1 0 0

12:45:31 2016-06-29 32,20 86,43 5,00 1 0 0

12:45:41 2016-06-29 32,32 86,38 5,00 1 0 0

12:45:51 2016-06-29 32,29 86,02 5,00 1 0 0

12:46:01 2016-06-29 32,32 86,44 5,00 1 0 0

12:46:11 2016-06-29 32,31 86,31 5,00 1 0 0

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 62: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

45

Tabel 4.2. Komunikasi Data Error

Waktu Tanggal Suhu Kel. Udara Kel. Tanah Air

Cooler Humidifier Pompa

Air

14:10:09 2016-06-29 32,55 84,17 5,00 1 0 0

14:10:19 2016-06-29 32,52 83,85 5,00 1 0 0

14:10:29 2016-06-29 32,49 84,85 5,00 1 0 0

14:10:39 2016-06-29 32,57 84,26 5,00 1 0 0

14:10:59 2016-06-29 32,50 84,98 5,00 1 0 0

14:11:09 2016-06-29 32,55 84,18 5,00 1 0 0

14:11:29 2016-06-29 32,48 85,32 5,00 1 0 0

Tabel 4.3 Tampilan Tanggal Error

Waktu Tanggal Suhu Kel. Udara Kel. Tanah Air

Cooler Humidifier Pompa

Air

14:03:29 016-06-29 32,54 84,00 5,00 1 0 0

14:03:39 016-06-29 32,51 84,93 5,00 1 0 0

14:04:19 016-06-29 32,50 84,43 5,00 1 0 0

14:04:39 2016-06-29 32,48 85,25 5,00 1 0 0

14:04:49 016-06-29 32,51 84,22 5,00 1 0 0

Gambar 4.10 Penerimaan Data Error

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 63: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

46

Tabel 4.4. Data Jarak Pengambilan Paket Data

Jarak (m) Status

10 m Sukses

20 m Sukses

30 m Sukses

40 m Sukses

50 m Sukses

60 m Sukses

70 m Sukses

80 m Sukses

90 m Sukses

100 m Sukses

110 m Sukses

115 m Sukses

120 m Error

130 m Error

4.2.2 Pengujian Timer dan Pengiriman Paket Data

Pengujian timer dan pengiriman data ini dapat dilihat di serial monitor software

Arduino yakni melihat waktu pengiriman, jika sesuai dengan yang diinginkan (10 detik)

maka timer pada mikrokontroler bekerja dengan baik. Penggunaan timer dalam pengiriman

paket data untuk mempermudah sistem dalam pengiriman paket data yang bekerja di luar

sistem utama pada program mikrokontroller, perubahan pengiriman paket data dari yang

sebelumnya setiap 1 menit menjadi 10 detik dikarenakan untuk mendapatkan hasil yang

lebih signifikan yang sebelumnya di dalam pengujian alat pompa air yang bekerja sangat

cepat dalam penyiraman tanah, maka perubahan pengiriman paket data ini dirubah agar

pengguna dapat dengan jelas mengetahui kapan pompa bekerja pada set poin yang sudah

ditentukan

Setelah dilakukan pengujian hasilnya timer bekerja dengan baik seperti pada tabel

4.5. Pengujian pengambilan data ini selama 5 menit dengan format data yang benar sesuai

jumlah karakter pada rancangan yang ada yakni tanggal#waktu#status air cooler#status

humidifier#status pompa air#data sensor suhu#data sensor kelembaban udara#data sensor

kelembaban tanah. Paket data yang dikirimkan nantinya akan dilihat sebagai perbandingan

dalam pengujian data yang masuk ke interface untuk membuktikan bahwa data yang

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 64: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

47

dikirim dan diterima sama sesuai dengan format datanya. Untuk melihat program

lengkapnya dapat dilihat di lampiran 13 sampai lampiran 25.

Tabel 4.5. Serial Monitor Pengiriman Paket Data No Serial Monitor

01

02

03

04

05

06

07

08

09

10

2016-06-30#15:51:07#1#1#1#33.68#76.08#0.00

2016-06-30#15:51:17#1#1#1#33.88#76.31#0.00

2016-06-30#15:51:27#1#1#1#33.89#76.32#0.00

2016-06-30#15:51:37#1#1#1#33.88#76.37#0.00

2016-06-30#15:51:47#1#1#1#33.85#76.43#0.00

2016-06-30#15:51:57#1#1#1#33.89#76.51#0.00

2016-06-30#15:52:07#1#1#1#33.86#76.43#0.00

2016-06-30#15:52:17#1#1#1#33.83#76.42#0.00

2016-06-30#15:52:27#1#1#1#33.85#76.45#0.00

2016-06-30#15:52:37#1#1#1#33.83#76.45#0.00

4.2.3 Pengujian Timer dan Penerima Paket Data

Pengujian timer dan penerima paket data ini berfungsi mengetahui supaya data

yang dikirim dapat diterima semua dengan lancar. Penambahan timer pada program

software penerima data ini hanya untuk mempermudah dalam pengambilan data dengan

timer 5 menit, jadi setelah tombol start untuk mengaktifkan sistem dalam pengambilan

data maka selama 5 menit sistem akan berjalan dan secara otomatis sistem akan mati atau

berhenti melakukan pengambilan / menerima data. Tetapi jika tidak ada timer yang

digunakan di dalam pengambilan sampel data selama 5 menit tersebut maka pengambilan

data akan berlangsung secara terus menerus dengan penyimpanan data secara otomatis di

excel dan penamaan file sesuai dengan tanggal pengambilan data. Untuk memberhentikan

sistem pengambilan data, pengguna dapat menekan tombol stop pada interface.

Pada pengujian yang berlangsung dapat dilihat secara langsung data dapat diterima

dengan benar dan lancar sesuai dengan paket data yang dikirimkan seperti yang terlihat

pada tabel 4.6. Untuk melihat perbandingan data yang diterima dengan yang dikirim dapat

mencocokan dengan tabel 4.5. Data ini hasil penyimpanan di excel dan terlihat perbedaan

pada urutan datanya yakni waktu, tanggal, data sensor suhu, data sensor kelembaban udara,

data sensor kelembaban tanah, status kontrol air cooler, status kontrol humidifier, status

control pompa air. Perbedaan urutan ini dikarenakan pada program matlab sebagai

penerima data setelah paket data terbaca sesuai dengan yang dikirim kemudian dipisahkan

menjadi data tunggal seperti pada gambar 4.11 yang kemudian ditampilkan ke tabel

dengan format tersebut seperti pada gambar 4.12 dan untuk disimpan di excel seperti pada

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 65: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

48

gambar 4.13, untuk program lengkapnya dapat dilihat di lampiran 25 sampai lampiran 46.

Ada juga pengujian dengan hasil yang didapat timernya ada kesalahan yakni bertambah 1

sampai 2 detik yang dikarenakan pada tombol di kontrol box ditekan untuk melihat data

yang ada pada LCD, tombol yang ada akan membuat delay di dalam program

mikrokontroller tersebut. Pada timer hitungan untuk setiap timer adalah 0,5 ms, sehingga

agar looping berjalan selama 10 detik maka nilai timernya adalah 20 karena 20 x 0,5 = 10

detik, sedangkan waktu yang dibutuhkan untuk void loop saat mengambil data adalah 1

detik jadi nilai void loop dibuat 18 agar nilai timer menjadi 10 detik. Saat timer

menghitung dari 1 sampai 9 dan tombol pada kontrol box ditekan saat detik ke 5 maka

akan delay selama 2 detik menjadi detik ke 7 dan tidak akan mengganggu timer, sedangkan

jika timer pada detik ke 8 dan 9 kemudian tombol ditekan maka timer akan menjadi 10 dan

11 detik. Maka dari itu delay pada tombol dibuat 2 detik untuk memperkecil penambahan

waktu dan pengguna juga dapat melihat tampilan pada lcd dengan jelas. Jadi penambahan

waktu yang terjadi pada pengiriman paket data yakni 1 sampai 2 detik. Contoh hasil

pengujian dengan timer saat tombol pada kontrol box ditekan seperti pada tabel 4.7.

Tabel 4.6. Paket Data yang Diterima

Waktu Tanggal Suhu Kel. Udara Kel. Tanah Air

Cooler Humidifier Pompa

Air

15:51:07 2016-06-30 33,68 76,08 0,00 1 1 1

15:51:17 2016-06-30 33,88 76,31 0,00 1 1 1

15:51:27 2016-06-30 33,89 76,32 0,00 1 1 1

15:51:37 2016-06-30 33,88 76,37 0,00 1 1 1

15:51:47 2016-06-30 33,85 76,43 0,00 1 1 1

15:51:57 2016-06-30 33,89 76,51 0,00 1 1 1

15:52:07 2016-06-30 33,86 76,43 0,00 1 1 1

15:52:17 2016-06-30 33,83 76,42 0,00 1 1 1

15:52:27 2016-06-30 33,85 76,45 0,00 1 1 1

15:52:37 2016-06-30 33,83 76,45 0,00 1 1 1

Gambar 4.11. Program Pembacaan Paket Data

Gambar 4.12. Program Menampilkan Data Dalam Tabel

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 66: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

49

Gambar 4.13. Program Simpan Data Tabel ke Excel

Tabel 4.7. Timer Saat Tombol Kontrol Box Ditekan

Waktu Tanggal Suhu Kel. Udara Kel. Tanah

Air

Cooler Humidifier

Pompa

Air

11:41:16 2016-06-29 29,89 87,58 6,00 1 0 0

11:41:27 2016-06-29 29,94 87,75 6,00 1 0 0

11:41:37 2016-06-29 30,04 88,16 6,00 1 0 0

11:41:47 2016-06-29 30,11 88,11 6,00 1 0 0

11:41:58 2016-06-29 30,24 88,27 6,00 1 0 0

11:42:09 2016-06-29 30,13 87,69 6,00 1 0 0

11:42:19 2016-06-29 29,92 87,19 6,00 1 0 0

4.2.4 Pengujian Interface

Pada pengujian interface ini dapat dilihat dari sistem dapat berjalan sesuai dengan

rancangan, yakni menampilkan data yang dikirim. Pada tampilan interface ini dilakukan

perubahan dengan adanya penambahan tampilan animasi data sensor suhu, sensor

kelembaban udara, sensor kelembaban tanah yang baru saja masuk dan penampil data yang

diinginkan oleh pengguna jika ingin melihat data lama atau data yang tersimpan

sebelumnya pada saat sistem pengambilan data berjalan ataupun tidak, jadi pengguna tidak

perlu melihat data yang tersimpan di excel. Pembacaan data yang akan ditampilkan dengan

memilih file tanggal yang akan ditampilkan kemudian mengetik secara manual waktu yang

akan ditampilkan dan memilih data sensor apa yang akan ditampilkan. Data yang

ditampilkan maksimal 20 data agar pengguna dapat dengan mudah melihat datanya, jika

data yang ditampilkan tidak dibatasi maka pembacaan data terlalu susah dikarenakan

tampilan grafik yang tidak besar.

Setelah dilakukan pengujian hasilnya sistem dapat berjalan dengan baik dan sesuai

dengan rancangan, interface ini dapat menerima data, menyimpan dan menampilkan data

tunggal, data dalam table, grafik dan animasi agar memudahkan dalam pembacaan untuk

setiap data yang masuk dan terupdate , perhitungan nilai max, min, rata-rata secara

otomatis, penampil data yang sebelumnya sudah tersimpan jika pengguna ingin melihat.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 67: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

50

Hasil pengujian seperti pada gambar 4.14. Di dalam tampilan grafik adanya perubahan

yakni bentuk grafik dirubah dari grafik garis jadi grafik kolom atau diagram batang untuk

memperjelas perubahan data yang terjadi serta jika ada data yang tidak masuk maka pada

grafik dengan waktu tersebut akan kosong.

Gambar 4.14. Pengujian Interface

4.2.5 Pengujian database

Pengujian database dapat dilihat dari hasil data yang masuk dapat disimpan di

dalam excel secara otomatis, setelah dilakukan pengujian hasilnya seluruh data yang

masuk dan tertampil pada interface dapat tersimpan secara otomatis dengan penamaan file

sesuai tanggal pengambilan paket data seperti yang terlihat pada gambar 4.15, jika sudah

berganti hari dalam pengambilan paket data maka secara otomatis sistem akan membuat

file baru untuk data pada tanggal yang berbeda. Penamaan file penyimpanan paket data ini

sesuai jam dan tanggal di laptop yang digunakan dalam pengambilan paket data. Untuk

pengujian penampil data pada saat sistem pengambilan data sedang berjalan dapat dilihat

pada gambar 4.16 dan untuk penampil data saat sistem tidak berjalan dapat dilihat pada

gambar 4.17.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 68: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

51

Gambar 4.15. Hasil Data Excel yang Tersimpan

Gambar 4.16. Penampil Data Saat Pengambilan Paket Data

Gambar 4.17. Penampil Data Saat Tidak Ada Pengambilan Paket Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 69: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

52

4.3 Pembahasan Perangkat Lunak

Program yang dibuat dalam perancangan ini mengacu pada diagram alir bab

sebelumnya. Program sudah berfungsi seperti yang diharapkan dengan adanya perubahan

sedikit untuk memaksimalkan sistem yang akan dijalankan. Berikut merupakan penjelasan

lengkap dari program yang dibuat.

4.3.1 Program Utama

Program utama berisikan alur perintah utama yang selanjutnya akan memanggil

subrutin-subrutin lainnya. Perintah yang ada pada program utama akan menginisialisasi

fitur-fitur yang digunakan, selanjutnya program akan secara terus menerus memanggil satu

persatu subrutin. Subrutin yang nantinya dipanggil yakni subrutin pengiriman paket data

yang terdapat pada mikrokontroler dan penerima serta penyimpanan paket data pada

software matlab.

4.3.2 Subrutin Pengiriman Paket Data

Subrutin pengiriman paket data yang sebelumnya di dalam perancangan setiap 1

menit diubah dan berjalan setiap 10 detik sekali sesuai dengan timer yang dijalankan.

Pengubahan timer pengiriman dikarenakan perubahan hasil data sensor kelembaban udara

dan kelembaban tanah sangat cepat berubah untuk mencapai set poin, jadi jika pengiriman

paket data terlalu lama maka status kontrol perubahan tidak terlalu terlihat perubahannya.

Data yang dikirimkan tersebut adalah data terakhir yang terdeteksi oleh sensor serta status

terakhir sistem pengendalinya, jadi data yang dikirim secara otomatis update dan di dalam

proses pengiriman paket data sudah dipisahkan dengan tanda pagar (#) untuk setiap

datanya agar nantinya untuk penerima dapat mudah memisahkan data-datanya. Pengiriman

data akan berhenti jika sistem dalam kondisi off atau mati. Pengujian yang dilakukan

berjalan dengan baik sesuai dengan rancangan.

4.3.3 Subrutin Pengiriman Data Waktu dan Tanggal

Subrutin pengiriman data waktu dan tanggal ini adalah data dari sistem RTC (Real

Time Clock) mikrokontroler yang berjalan terus menerus, jika ada perintah untuk

mengirimkan data maka waktu dan tanggal pada saat pengirimanlah yang nantinya akan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 70: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

53

dikirimkan sebagai paket data. Dari pengujian pengiriman paket data yang dilakukan

bahwa sistem ini dapat berjalan dengan baik.

4.3.4 Subrutin Pengiriman Status Pengendali

Subrutin pengiriman status pengendali ( air cooler, humidifier, pompa air ) ini akan

mengirimkan data terakir alat apakah sedang dalam kondisi on ( 1 ) atau off ( 0 ). Dalam

pengujian sistem ini bekerja sesuai dengan kondisi pada greenhouse untuk membuat

suasananya seperta yang diinginkan, jadi pengguna nantinya juga dapat melihat apakah

data sensor dengan sistem kontrolnya dapat bekerja atau tidak dengan melihat pada

interface pengguna dengan mengetahui batas atas dan bawah set poin sistem

pengendalinya.

4.3.5 Subrutin Pengiriman Data Sensor

Subrutin pengiriman data sensor (data suhu, data kelembaban udara, data

kelembaban tanah) ini akan mengirimkan data setiap 10 detik sekali, data yang dikirimkan

adalah data terakir yang terdeteksi sensor saat sistem akan melakukan pengiriman. Jadi

data yang dikirim akan terus update sesuai dengan waktu pengiriman. Pengujian yang

dilkakukan bahwa pengiriman data sensor berjalan dengan baik.

4.3.6 Subrutin Penerima Paket Data

Subrutin penerima paket data terdapat pada software matlab yang bekerja dengan

mendeteksi data yang masuk setiap 0,25 detik sesuai dengan timer yang dijalankan. Sistem

penerima ini akan bekerja secara otomatis memisahkan data satu per satu yang sebelumnya

paket data akan menjadi data tunggal dengan memisahkan data yang ditandai dengan tanda

pagar (#). Sistem akan bekerja jika user / pengguna menekan tombol start dan untuk

memberhentikan atau mematikan sistem user hanya menekan tombol stop pada gui

software matlab tersebut yang terletak pada pojok kanan atas di bawah tombol start.

Pengujian yang dilakukan di dalam penerimaan paket data ini berjalan dengan baik yakni

paket data dapat diterima dengan utuh dengan syarat jarak tidak terlalu jauh dan

penghalang tidak terlalu banyak dikarenakan dapat mengganggu kelancaran di dalam

penerimaan paket data. Semua paket data dapat ditampilkan di dalam interface sesuai

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 71: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

54

dengan perancangan yang ada dengan penambahan tampilan penampil data yang

sebelumnya tersimpan dan animasi perubahan data sensor.

4.3.7 Paket Data

Jumlah karakter dalam paket data yang sebelumnya dalam perancangan sebanyak

44 karakter dengan format @HH:MM#YYYY-mm-DD#KxEyPz#S11.1#U22.2#T33.3$

diubah menjadi lebih sedikit yakni 40 karakter dengan format YYYY-mm-

DD#HH:MM#A#B#C#SS.SS#UU.UU#T.TT. Perubahan format ini untuk mempermudah

di dalam memisahkan setiap data.

Dari format data yang sudah ada, YYYY-mm-DD adalah tanggal bulan tahun

pengiriman, HH:MM adalah jam dan menit, A#B#C# adalah keterangan apakah sistem

kendalinya dalan kondisi on atau off yakni terdapat Air cooler, humidifier dan pompa air,

SS.SS adalah data suhu dengan tanda titik (.) sebagai pemisah angka desimal, UU.UU

adalah data kelembaban udara dengan tanda titik (.) sebagai pemisal angka desimal, T.TT

adalah data kelembaban tanah dengan tanda titik (.) sebagai pemisah angka desimal untuk

memudahkan dalam pembacaan, tanda pagar (#) sebagai pemisah tiap data. Dari format

paket data tersebut dijelaskan jumlah karakter dalam tabel tabel 4.8.

Tabel 4.8 Perubahan Format Paket Data

Waktu Tanggal Kontrol Status

Suhu (oC)

Kelembaban Udara (%)

Kelembaban Tanah (level)

Jumlah Karakter

5 10 3 5 5 4

4.3.8 Penyimpanan Data

Pada sistem penyimpanan data di software matlab bekerja secara otomatis dan akan

menyimpan data setiap hari dengan nama file sesuai dengan tanggal pengambilan data.

Data yang tersimpan yang sebelumnya di dalam perancangan berbentuk .mat diubah dan

disimpan ke excel dengan format date.xls agar pengguna dapat mudah dalam pembacaan.

contoh 10-mei-2016.xls berarti file tersebut data pada tahun 2016 bulan Mei tanggal 10.

Data tersebuat tersimpan secara otomatis setelah data pertama pada tanggal tersebut

diterima dan disimpan dalam 1 hari karena pengiriman data setiap 10 detik sekali, jadi

dalam 1 hari terdapat 8640 data yang harus dikirim dan diterima. Dengan penyimpanan

setiap hari atau per hari dan sebagai keterangan rancangan sistem kerja GUI. Pada database

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 72: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

55

nantinya dalam 1 folder akan dapat menyimpan data dalam satu minggu dengan jumlah

data 60480 dan untuk 4 bulan dalam satu siklus tanam yakni 60480 x 16 minggu adalah

976.680 data dengan catatan bahwa software Matlab menyala terus menerus, di sini

sebenarnya berapapun banyak datanya tidak masalah karena masuk ke dalam memori

laptop dan juga memori setiap data sangat kecil, untuk satu karakter jika dalam satu hari

hanya 69120 bytes, sementara dalam paket data terdapat 32 karakter, berarti dalam satu

hari hanya menyimpan data 69120 b x 32 karakter yakni 2211840 b atau 2,211 Mb dan

dalam satu minggu 2,211 Mb x 7 jadi 15,477 Mb. Jika dalam satu siklus tanam 4 bulan,

maka 15,477 Mb x 16 minggu yakni 247,632 Mb seperti yang diperjelas pada gambar 4.18

dan 4.19.Data tersebut disimpan dalam file D yang tersimpan satu folder dengan program.

Hasil akan terlihat seperti pada gambar 4.20.

Data yang tersimpan inilah nantinya akan dipakai sebagai penampil data yang

sebelumnya tersimpan untuk ditampilkan di interface agar pengguna tidak perlu membuka

data excel, dengan catatan bahwa pengambilan data pada pengisian data jam harus sesuai

dan data yang ditampilkan adalah data hasil pembacaan sensor. Pengujian yang dilakukan

dapat berhasil dan berjalan dengan lancar.

Gambar 4.18 Menampilkan Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 73: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

56

Gambar 4.19 Menghitung Memori Data

Gambar 4.20 Penyimpanan Hasil Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 74: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

57

BAB V

KESIMPULAN DAN SARAN

4.4 Kesimpulan

Dari hasil pengujian dan pengambilan data pada sistem telemetri akuisisi data

greenhouse dengan menggunakan XBee Pro S2B, didapatkan kesimpulan sebagai berikut:

a. Sistem interface pada software matlab berjalan sesuai perancangan dengan data

yang dimonotoring adalah waktu, tanggal, suhu, kelembaban udara,

kelembaban tanah, status control pompa air, humidifier dan air cooler.

b. Penggunaan modul XBee Pro S2B untuk berkomunikasi dengan baik pada jarak

maksimum 115 meter di luar ruangan tanpa penghalang.

c. Semakin banyak penghalang tempat berkomunikasinya modul XBee maka data

yang dikirimkan tidak maksimal.

d. Jika pengiriman data gagal atau tidak menemukan receiver maka data tidak

akan dikirimkan lagi atau dibuang sesuai dengan IDLE mode yang terdapat

pada modul.

4.5 Saran

Saran-saran dari pengembangan sistem telemetri ini adalah:

a. Mengatasi error yang didapat agar jarak jangkauan pengiriman data semakin

jauh dan maksimal.

b. Dapat digunakan lebih dari satu greenhouse.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 75: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

58

DAFTAR PUSTAKA

[1] Kirana, Intan., 1983. Tanaman Hias Ruangan. Yogyakarta: Kanisius.

[2] Syahrul, M., 2010. Rancangan Smart Greenhouse Dengan Teknologi Mobile Untuk

Efisiensi Tenaga, Biaya Dan Waktu Dalam Pengelolaan Tanaman. Jawa Timur:

Fakultas Teknologi Industri Universitas Pembangunan Nasional.

[3] Sayood, F., 2003. Lossless Compression Handbook. New York: Academic Press.

[4] Carden, F., Jedlicka, R. dan Henry, R., 2002. Telemetry Systems Engineering.

London: ArtechHouse.

[5] Setiawan Rachmad., 2008. Teknik Akuisisi Data. Yogyakarta: Graha Ilmu.

[6] Yahya, Sofian., 2011. Desain Otomatisasi Sistem Pengendalian Temperatur dan

Kelembaban Greenhouse. Bandung: Kelompok Bidang Keahlian Pengendalian

Daya & Mesin Listrik, Departemen Teknik Elekto, Politeknik Negeri Bandung.

[7] Soeseno, Slamet., 1989. Pemeliharaan Tanaman Hias Ruangan. Jakarta: PT

Gramedia.

[8] Handoko., 1995. Klimatologi Dasar. Jakarta: Pustaka Jaya.

[9] Meiningsasi, Dyan., 2006. Pengaruh Jenis Media Terhadap Pertumbuhan Begonia

Imperialis dan Begoia “Bethlehem Star”. Bali: Balai Konservasi Tumbuhan Kebun

Raya Eka Karya Bali, Lembaga Ilmu Pengetahuan Indonesia.

[10] 2015. [Online]

Available at:

http://www.adafruit.com/datasheets/XBee%20ZB%20User%20Manual.pdf.

[Accessed 20 November 2015]

[11] 2015.[Online]

Available at: http://www.mathworks.com.

[Accessed 15 Desember 2015]

[12] 2015.[Online]

Available at: http://www.engineersgarage.com/electronic-components/16x2-lcd

module-datasheet.

[Accessed 14 Desember 2015]

[13] 2015.[Online]

Available at: https://www.arduino.cc/en/Main/ArduinoBoardMega2560.

[Accessed 28 November 2015]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 76: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

LAMPIRAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 77: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L1

LAMPIRAN

Diagram Alir Subrutin Pengiriman Data

START

Inisialisasi

Apakah

Karakter = “W”

Ulang

SELESAI

Tidak

Ya

Ya

Tidak

Data

Waktu =

W,data,#

Terima

Data

Paket

Gambar L.1 Diagram Alir Subrutin Pengiriman Data Waktu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 78: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L2

START

Inisialisasi

Apakah

Karakter = “T”

Ulang

SELESAI

Tidak

Ya

Ya

Tidak

Data

Tanggal =

T,data,#

Terima

Data

Paket

Gambar L.2 Diagram Alir Subrutin Pengiriman Data Tanggal

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 79: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L3

START

Inisialisasi

Apakah

Karakter = “K”

Ulang

SELESAI

Tidak

Ya

Ya

Ya

Tidak

Data

Kontrol

Status =

Ax,By,Cz,#

Tampilkan Data

Kontrol Status Di

LCD

Terima

Data

Paket

Gambar L.3 Diagram Alir Subrutin Pengiriman Data Kontrol Status

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 80: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L4

START

Inisialisasi

Apakah

Karakter = “S”

Ulang

SELESAI

Tidak

Ya

Ya

Ya

Tidak

Data

Suhu =

S,data,#

Tampilkan Data

Suhu Di LCD

Terima

Data

Paket

Gambar L.4 Diagram Alir Subrutin Pengiriman Data Suhu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 81: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L5

START

Inisialisasi

Apakah

Karakter = “U”

Ulang

SELESAI

Tidak

Ya

Ya

Ya

Tidak

Data

Kelembaban

Udara=

U,data,#

Tampilkan Data

Kelembaban Udara

Di LCD

Terima

Data

Paket

Gambar L.5 Diagram Alir Subrutin Pengiriman Data Kelembaban Udara

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 82: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L6

START

Inisialisasi

Apakah

Karakter = “T”

Ulang

SELESAI

Tidak

Ya

Ya

Ya

Tidak

Data

Kelembaban

Tanah=

T,data,#

Tampilkan Data

Kelembaban Tanah

Di LCD

Terima

Data

Paket

Gambar L.6 Diagram Alir Subrutin Pengiriman Data Kelembaban Tanah

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 83: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L7

Prosedur Pengiriman Data Dengan XBee Pro S2B

Ketika data serial yang diterima dan siap dipaketkan, modul RF akan keluar Idle

Mode dan upaya untuk mengirimkan data. Alamat tujuan menentukan rute akan menerima

data. Sebelum transmisi data, modul memastikan bahwa alamat jaringan 16-bit dan rute ke

tujuan telah ditetapkan. Jika tujuan 16-bit alamat jaringan tidak diketahui, alamat jaringan

penemuan akan berlangsung. Jika rute adalah tidak diketahui, penemuan rute akan

berlangsung untuk tujuan membangun rute ke node tujuan. Jika sebuah modul dengan

alamat jaringan yang cocok tidak ditemukan, paket tersebut akan dibuang. Data akan

ditransmisikan sekali rute didirikan. Jika penemuan rute gagal untuk membangun rute,

paket akan dibuang. seperti pada alur pada gambar di bawah ini.[10]

IDLE

Mode

Network Discovered ?

Network Known ? Transmit Data

Finished

Transmission

16 bit network

Address Discovered ?

16 bit network

Address Known ?

Network

Discovery

16 bit network

Address

Discovery

Data Discanded

New

Transmision

No

YesYes

Yes

Yes

No

NoNo

Gambar L.7 Gambar Mode Pengiriman Data [10]

Bila data yang ditransmisikan dari satu node ke node yang lain, pengakuan jaringan

ditransmisikan kembali melintasi jaringan didirikan untuk node sumber. Paket pengakuan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 84: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L8

ini menunjukkan ke node sumber yang paket data telah diterima oleh node tujuan. Jika

pengakuan jaringan tidak diterima, node sumber akan mengirimkan kembali data. Hal ini

dimungkinkan dalam keadaan langka untuk tujuan untuk menerima paket data, tetapi untuk

sumber untuk tidak menerima pengakuan jaringan. Dalam hal ini, sumber akan

memancarkan kembali data, yang dapat menyebabkan tujuan untuk menerima paket data

yang sama beberapa kali. Modul XBee tidak menyaring duplikat paket.[10]

Prosedur Penerimaan Data Dengan XBee Pro S2B

Setelah dari sleep mode, perangkat end mengirimkan permintaan pendapat

masternya untuk menentukan apakah memiliki data buffer. Dalam pin sleep mode,

pendapat perangkat akhir setiap 100ms. Dalam sleep mode, perangkat akhir hanya akan

polling sekali sebelum kembali ke sleep mode kecuali sleep time (ST) dimulai (serial atau

RF data yang diterima). Jika sleep time dimulai, perangkat end akan terus polling setiap

100ms sampai sleep mode berakhir [10]. Data yang sudah diterima dan dikirim kemudian

akan dilihat hasilnya apakah datanya sesuai atau tidak dapat dihitung errornya dengan

rumus, yakni : % error = [ nil i e − nil i e en ny ]nil i e � %

Tabel L.1 Spesifikasi Arduino Mega [13]

Mikrokontroler ATmega2560

Tegangan Operasi 5V

Input Voltage (disarankan) 7-12V

Input Voltage (limit) 6-20V

Pin Digital I/O 54 (yang 15 pin digunakan sebagai output PWM)

Pins Input Analog 16

Arus DC per pin I/O 20 mA

Arus DC untuk pin 3.3V 50 mA

Flash Memory 256 KB (8 KB digunakan untuk bootloader)

SRAM 8 KB

EEPROM 4 KB

Clock Speed 16 MHz

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 85: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L9

Konfigurasi Pin Arduino Mega

Gambar L.6 Konfigurasi Pin Arduino Mega [13]

Masing-masing dari 54 digital pin pada arduino mega dapat digunakan sebagai

input atau output, menggunakan fungsi pin mode() , digital write() , dan digital read().

arduino mega beroperasi pada tegangan 5 volt. Setiap pin dapat memberikan atau

menerima arus maksimum 40 mA dan memiliki resistor pull-up internal (yang terputus

secara default) sebesar 20-50 k Ohm. Selain itu, beberapa pin memiliki fungsi khusus,

antara lain:

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 86: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L10

a. Serial : 0 (RX) dan 1 (TX); Serial 1 : 19 (RX) dan 18 (TX); Serial 2 : 17 (RX)

dan 16 (TX); Serial 3 : 15 (RX) dan 14 (TX). Digunakan untuk menerima

(RX) dan mengirimkan (TX) data serial TTL. Pins 0 dan 1 juga terhubung ke

pin chip ATmega16U2 Serial USB-to-TTL.Eksternal Interupsi : Pin 2

(interrupt 0), pin 3 (interrupt 1), pin 18

b. (interrupt 5), pin 19 (interrupt 4), pin 20 (interrupt 3), dan pin 21 (interrupt

2). Pin ini dapat dikonfigurasi untuk memicu sebuah interupsi pada nilai yang

rendah, meningkat atau menurun, atau perubah nilai.

c. SPI : Pin 50 (MISO), pin 51 (MOSI), pin 52 (SCK), pin 53 (SS). Pin ini

mendukung komunikasi SPI menggunakan perpustakaan SPI. Pin SPI juga

terhubung dengan header ICSP, yang secara fisik kompatibel dengan arduino

uno, arduino duemilanove dan arduino diecimila.

d. LED : Pin 13. Tersedia secara built-in pada papan arduino ATmega2560. LED

terhubung ke pin digital 13. Ketika pin diset bernilai high, maka LED menyala

(ON), dan ketika pin diset bernilai low, maka LED padam (off).

e. TWI : Pin 20 (SDA) dan pin 21 (SCL). Yang mendukung komunikasi TWI

menggunakan perpustakaan wire. Perhatikan bahwa pin ini tidak di lokasi yang

sama dengan pin TWI pada arduino duemilanove atau arduino diecimila.

Arduino Mega2560 memiliki 16 pin sebagai analog input, yang masing-masing

menyediakan resolusi 10 bit (yaitu 1024 nilai yang berbeda). Secara default pin ini dapat

diukur/diatur dari mulai ground sampai dengan 5 volt, juga memungkinkan untuk

mengubah titik jangkauan tertinggi atau terendah mereka menggunakan pin AREF dan

fungsi analog Reference().

Ada beberapa pin lainnya yang tersedia, antara lain:

a. AREF : Referensi tegangan untuk input analog. Digunakan dengan fungsi

analog Reference().

b. RESET : Jalur low ini digunakan untuk me-reset (menghidupkan ulang)

mikrokontroler. Jalur ini biasanya digunakan untuk menambahkan tombol reset

pada shield yang menghalangi papan utama arduino.[13]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 87: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L11

Sumber Daya / Power Arduino Mega

Arduino mega dapat diaktifkan melalui koneksi USB atau dengan catu daya

eksternal. Sumber daya dipilih secara otomatis. Sumber daya eksternal (non-USB) dapat

berasal baik dari adaptor AC-DC atau baterai. Adaptor dapat dihubungkan dengan

mencolokkan steker 2,1 mm yang bagian tengahnya terminal positif ke ke jack sumber

tegangan pada papan. Jika tegangan berasal dari baterai dapat langsung dihubungkan

melalui header pin gnd dan pin vin dari konektor power.

Papan arduino ATmega2560 dapat beroperasi dengan pasokan daya eksternal 6 volt

sampai 20 volt. Jika diberi tegangan kurang dari 7 volt, maka, pin 5 volt mungkin akan

menghasilkan tegangan kurang dari 5 volt dan ini akan membuat papan menjadi tidak

stabil. Jika sumber tegangan menggunakan lebih dari 12 volt, regulator tegangan akan

mengalami panas berlebihan dan bisa merusak papan. Rentang sumber tegangan yang

dianjurkan adalah 7 volt sampai 12 volt.

Pin tegangan yang tersedia pada papan arduino adalah sebagai berikut:

a. VIN : Adalah input tegangan untuk papan arduino ketika menggunakan sumber

daya eksternal (sebagai ‘saingan’ tegangan 5 volt dari koneksi USB atau sumber

daya ter-regulator lainnya). Anda dapat memberikan tegangan melalui pin ini,

atau jika memasok tegangan untuk papan melalui jack power, kita bisa

mengakses/mengambil tegangan melalui pin ini.

b. 5V : Sebuah pin yang mengeluarkan tegangan ter-regulator 5 volt, dari pin ini

tegangan sudah diatur (ter-regulator) dari regulator yang tersedia (built-in) pada

papan. Arduino dapat diaktifkan dengan sumber daya baik berasal dari jack power

DC (7-12 volt), konektor USB (5 volt), atau pin VIN pada board (7-12 volt).

Memberikan tegangan melalui pin 5 volt atau 3.3 volt secara langsung tanpa

melewati regulator dapat merusak papan arduino.

c. 3V3 : Sebuah pin yang menghasilkan tegangan 3,3 volt. Tegangan ini dihasilkan

oleh regulator yang terdapat pada papan (on-board). Arus maksimum yang

dihasilkan adalah 50 mA.

d. GND : Pin ground atau massa.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 88: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L12

e. IOREF : Pin ini pada papan arduino berfungsi untuk memberikan referensi

tegangan yang beroperasi pada mikrokontroler. Sebuah perisai (shield)

dikonfigurasi dengan benar untuk dapat membaca pin tegangan IOREF dan

memilih sumber daya yang tepat atau mengaktifkan penerjemah tegangan (voltage

translator) pada output untuk bekerja pada tegangan 5 volt atau 3,3 volt.[13]

Komunikasi Pada Arduino Mega

Arduino Mega2560 memiliki sejumlah fasilitas untuk berkomunikasi dengan

komputer, dengan arduino lain, atau dengan mikrokontroler lainnya. Arduino ATmega328

menyediakan 4 hardware komunikasi serial UART TTL (5 Volt). Sebuah chip

ATmega16U2 (ATmega8U2 pada papan revisi 1 dan revisi 2) yang terdapat pada papan

digunakan sebagai media komunikasi serial melalui USB dan muncul sebagai COM Port

Virtual (pada Device komputer) untuk berkomunikasi dengan perangkat lunak pada

komputer, untuk sistem operasi windows masih tetap memerlukan file inf, tetapi untuk

sistem operasi OS X dan Linux akan mengenali papan sebagai port COM secara otomatis.

Perangkat lunak arduino termasuk didalamnya serial monitor memungkinkan data tekstual

sederhana dikirim ke dan dari papan arduino. LED RX dan TX yang tersedia pada papan

akan berkedip ketika data sedang dikirim atau diterima melalui chip USB-to-serial yang

terhubung melalui USB komputer (tetapi tidak untuk komunikasi serial seperti pada pin 0

dan 1).

Sebuah perpustakaan Software Serial memungkinkan untuk komunikasi serial pada

salah satu pin digital Mega2560. ATmega2560 juga mendukung komunikasi TWI dan SPI.

Perangkat lunak arduino termasuk perpustakaan wire digunakan untuk menyederhanakan

penggunaan bus TWI. Untuk komunikasi SPI, menggunakan perpustakaan SPI.[13]

Memori Arduino Mega

ATmega 2560 memiliki 256 KB dari memori flash untuk menyimpan kode (yang 8

KB digunakan untuk bootloader), 8 KB dari SRAM dan 4 KB EEPROM (yang dapat

dibaca dan ditulis dengan perpustakaan EEPROM).[13]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 89: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L13

Pemrograman Arduino Mega

Arduino mega dapat diprogram dengan software arduino. ATmega2560 pada

Arduino mega sudah tersedia preburned dengan bootloader yang memungkinkan untuk

meng-upload kode baru tanpa menggunakan programmer hardware eksternal. Hal ini

karena komunikasi yang terjadi menggunakan protokol asli STK500. Juga dapat melewati

(bypass) bootloader dan program mikrokontroler melalui pin header ICSP (In-Circuit

Serial Programming).

Chip ATmega16U2 (atau 8U2 pada board Rev. 1 dan Rev. 2) source code firmware

tersedia pada repositori arduino. ATmega16U2/8U2 dapat dimuat dengan bootloader

DFU, yang dapat diaktifkan melalui:

a. Pada papan Revisi 1 : Menghubungkan jumper solder di bagian belakang

papan dan kemudian akan me-reset 8U2.

b. Pada papan Revisi 2 : Ada resistor yang menghubungkan jalur HWB

8U2/16U2 ke ground, sehingga lebih mudah untuk dimasukkan ke dalam mode

DFU.

Kemudian anda dapat menggunakan Atmel FLIP software (sistem operasi

Windows) atau DFU programmer (sistem operasi Mac OS X dan Linux) untuk memuat

firmware baru atau dapat menggunakan pin header ISP dengan programmer eksternal

(overwrite DFU bootloader).[13]

Listing Program Mikrokontroller Arduino

1. //PROGRAM GREEN HOUSE

2. #include <Wire.h>

3. #include <SD.h>

4. #include <SPI.h>

5. #include "RTClib.h"

6. #include <SHT1x.h>

7. #include <LiquidCrystal.h>

8. #include <avr/io.h>

9. #include <avr/interrupt.h>

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 90: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L14

10. volatile int count = 0;

11. int a = 0;

12. int timer1_counter;

13. File myFile;

14. RTC_DS1307 rtc;

15. LiquidCrystal lcd(12, 11, 7, 6, 5, 4);

16. #define dataPin 9

17. #define clockPin 10

18. SHT1x sht1x(dataPin, clockPin);

19. float soil;

20. float temp_c;

21. float humidity;

22. int Si;

23. int So;

24. int Dt;

25. int kondisi = 0;

26. int buttonstate = 0;

27. int cooler = 0;

28. int humid = 0;

29. int pompa = 0;

30. int s;

31. String waktu[3];

32. String tanggal[2];

33. char pwaktu[3][3];

34. char ptanggal[2][3];

35. int tahun;

36. void setup () {

37. Serial.begin(9600);

38. lcd.begin(16, 4);

39. lcd.setCursor (0, 0);

40. lcd.print("Starting Up");

41. delay (1000);

42. noInterrupts(); // disable all interrupts

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 91: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L15

43. TCCR1A = 0;

44. TCCR1B = 0;

45.

46. // Set timer1_counter to the correct value for our interrupt interval

47. //timer1_counter = 64911; // preload timer 65536-16MHz/256/100Hz

48. //timer1_counter = 64286; // preload timer 65536-16MHz/256/50Hz

49. timer1_counter = 34286; // preload timer 65536-16MHz/256/2Hz

50.

51. TCNT1 = timer1_counter; // preload timer

52. TCCR1B |= (1 << CS12); // 256 prescaler

53. TIMSK1 |= (1 << TOIE1); // enable timer overflow interrupt

54. interrupts(); // enable all interrupts

55. pinMode(A0, INPUT); //input analaog sensor kelembapan

56. pinMode(41, INPUT); //Button Start/Stop

57. pinMode(42, INPUT); //Data Yang terkirim

58. pinMode(43, INPUT); //Button output sensor

59. pinMode(44, INPUT); //Button Output Kendali

60. pinMode(22, OUTPUT); //kendali suhu

61. pinMode(23, OUTPUT); //kendali kelembapan udara

62. pinMode(24, OUTPUT); //kendali kelembapan tanah

63. pinMode(25, OUTPUT); //LED output Dingin

64. pinMode(26, OUTPUT); //LED output Normal

65. pinMode(27, OUTPUT); //LED output Panas

66. pinMode(29, OUTPUT); //LED output Kering (udara)

67. pinMode(30, OUTPUT); //LED output Lembab (udara)

68. pinMode(31, OUTPUT); //LED output Basah (udara)

69. pinMode(32, OUTPUT); //LED output Kering (tanah)

70. pinMode(33, OUTPUT); //LED output Lembab (tanah)

71. pinMode(34, OUTPUT); //LED output Basah (tanah)1

72. #ifdef AVR

73. Wire.begin();

74. #else

75. Wire1.begin(); // Shield I2C pins connect to alt I2C bus on Arduino Due

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 92: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L16

76. #endif

77. rtc.begin();

78.

79. if (! rtc.isrunning()) {

80. lcd.setCursor (0, 0);

81. lcd.print("RTC GAGAL");

82. // following line sets the RTC to the date & time this sketch was compiled

83. rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));

84. // This line sets the RTC with an explicit date & time, for example to set

85. // January 21, 2014 at 3am you would call:

86. // rtc.adjust(DateTime(2016, 3, 11, 21, 52, 30));

87. }

88. // pinMode(analogin, INPUT);

89. // Serial.print(" inisialisasi SD..");

90. while (!SD.begin(53)) {

91. lcd.setCursor (0, 0);

92. lcd.print("SD Card Error");

93. }

94. lcd.setCursor (0, 0);

95. lcd.print("SD Card Ready");

96. delay (1000);

97. lcd.clear();

98. }

99. ISR(TIMER1_OVF_vect)

100. {

101. TCNT1 = timer1_counter;

102. count++;

103. if (count == 18) //detik

104. {

105. a = 1;

106. count = 0;

107. }

108. }

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 93: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L17

109.

110. void loop () {

111. unsigned long ji, mi;

112.

113. buttonstate = digitalRead(41); // Tombol Start /Stop

114. DateTime now = rtc.now();

115. waktu[0] = String(now.second());

116. waktu[1] = String(now.minute());

117. waktu[2] = String(now.hour());

118. tanggal[0] = String(now.month());

119. tanggal[1] = String(now.day());

120. tahun = now.year();

121.

122. for (int i = 0; i < 3; i++) {

123. waktu[i].trim();

124. waktu[i].toCharArray (pwaktu[i], waktu[i].length() + 1);

125. if (waktu[i].length() == 1)

126. { for (int j = 1; j >= 0; j--)

127. { pwaktu[i][j] = pwaktu[i][j - 1];

128. }

129. pwaktu[i][0] = '0';

130. pwaktu[i][2] = '\0';

131. }

132. }

133. for (int i = 0; i < 2; i++) {

134. tanggal[i].trim();

135. tanggal[i].toCharArray (ptanggal[i], tanggal[i].length() + 1);

136. if (tanggal[i].length() == 1)

137. { for (int j = 1; j >= 0; j--)

138. { ptanggal[i][j] = ptanggal[i][j - 1];

139. }

140. ptanggal[i][0] = '0';

141. ptanggal[i][2] = '\0';

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 94: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L18

142. }

143. }

144.

145. if (buttonstate == LOW) {

146. lcd.setCursor (5, 0);

147. lcd.print( "Sistem ");

148. lcd.setCursor (0, 1);

149. lcd.print( "Smart Greenhouse");

150. lcd.setCursor (0, 3);

151. lcd.print( pwaktu[2]);

152. lcd.print(":");

153. lcd.print( pwaktu[1]);

154.

155. if (a == 1) {

156. ji = millis();

157. temp_c = sht1x.readTemperatureC(); // pembacaan sensor suhu

158. humidity = sht1x.readHumidity(); // pembacaan sensor kelembapan udara

159. s = analogRead(A0); //pembacaan sensor tanah

160. soil = map (s, 0, 1023, 10, 0);

161. // KENDALI SUHU

162. { if (temp_c < 29) {

163. digitalWrite(25, HIGH);

164. digitalWrite(26, LOW);

165. digitalWrite(27, LOW);

166. digitalWrite(22, LOW);

167. }

168. if ((temp_c < 33) && (temp_c > 29)) {

169. digitalWrite(25, LOW);

170. digitalWrite(26, HIGH);

171. digitalWrite(27, LOW);

172. }

173. if (temp_c > 33) {

174. digitalWrite(25, LOW);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 95: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L19

175. digitalWrite(26, LOW);

176. digitalWrite(27, HIGH);

177. digitalWrite(22, HIGH);

178. //Serial.print(33);

179. //Serial.print(",");

180. }

181. }

182. // KENDALI KELEMBAPAN UDARA

183. { if (humidity < 80) {

184. digitalWrite(29, HIGH);

185. digitalWrite(30, LOW);

186. digitalWrite(31, LOW);

187. digitalWrite(23, HIGH);

188. }

189. if ((humidity < 90) && (humidity > 80)) {

190. digitalWrite(29, LOW);

191. digitalWrite(30, HIGH);

192. digitalWrite(31, LOW);

193. }

194. if (humidity > 90) {

195. digitalWrite(29, LOW);

196. digitalWrite(30, LOW);

197. digitalWrite(31, HIGH);

198. digitalWrite(23, LOW);

199. }

200. }

201. // KENDALI KELEMBAPAN TANAH

202. { if (soil < 2) {

203. digitalWrite(32, HIGH);

204. digitalWrite(33, LOW);

205. digitalWrite(34, LOW);

206. digitalWrite(24, HIGH);

207. }

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 96: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L20

208. if ((soil < 4) && (soil > 2)) {

209. digitalWrite(32, LOW);

210. digitalWrite(33, HIGH);

211. digitalWrite(34, LOW);

212. }

213. if (soil > 4) {

214. digitalWrite(32, LOW);

215. digitalWrite(33, LOW);

216. digitalWrite(34, HIGH);

217. digitalWrite(24, LOW);

218. }

219. }

220.

221. //Status output

222. cooler = digitalRead(22);

223. humid = digitalRead(23);

224. pompa = digitalRead(24);

225. Serial.println(ji);

226. while ((millis() - ji) < 1400) {

227. }

228.

229. // Pengiriman ke sistem interface

230. Serial.print(tahun, DEC);

231. Serial.print('-');

232. Serial.print(ptanggal[0]);

233. Serial.print('-');

234. Serial.print(ptanggal[1]);

235. Serial.print('#');

236. Serial.print(pwaktu[2]);

237. Serial.print(':');

238. Serial.print(pwaktu[1]);

239. Serial.print(':');

240. Serial.print(pwaktu[0]);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 97: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L21

241. Serial.print('#');

242. Serial.print(cooler);

243. Serial.print('#');

244. Serial.print(humid);

245. Serial.print('#');

246. Serial.print(pompa);

247. Serial.print('#');

248. Serial.print(temp_c, 2);

249. Serial.print('#');

250. Serial.print(humidity, 2);

251. Serial.print('#');

252. Serial.print(soil);

253.

254. //Simpan Data microSD

255. File myFile = SD.open("Sdtes4.txt", FILE_WRITE);

256. if (myFile)//bila ada maka akan dibuka, dan ditutup filenya

257. {

258. myFile.print(now.year());

259. myFile.print('/');

260. myFile.print(now.month(), DEC);

261. myFile.print('/');

262. myFile.print(now.day(), DEC);

263. myFile.print(',');

264. myFile.print(now.hour(), DEC);

265. myFile.print(':');

266. myFile.print(now.minute(), DEC);

267. myFile.print(':');

268. myFile.print(now.second(), DEC);

269. myFile.print(',');

270. myFile.print(temp_c, 2);

271. myFile.print(",");

272. myFile.print(humidity, 2);

273. myFile.print(",");

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 98: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L22

274. myFile.print(soil);

275. myFile.print(",");

276. myFile.print(cooler);

277. myFile.print(",");

278. myFile.print(humid);

279. myFile.print(",");

280. myFile.println(pompa);

281. myFile.close();

282. }

283. count = 0;

284. a = 0;

285. }

286. //Serial.print("waktu"); Serial.print(" "); Serial.println(mi -ji); //ngetes range

waktu ambil data

287. }

288. else {

289. lcd.begin (16, 4);

290. lcd.setCursor (2, 1);

291. lcd.print ("Tekan Tombol");

292. lcd.setCursor (5, 2);

293. lcd.print ("Start");

294. delay (1000);

295. lcd.clear();

296. digitalWrite(22, LOW);

297. digitalWrite(23, LOW);

298. digitalWrite(24, LOW);

299. digitalWrite(25, LOW);

300. digitalWrite(26, LOW);

301. digitalWrite(27, LOW);

302. digitalWrite(29, LOW);

303. digitalWrite(30, LOW);

304. digitalWrite(31, LOW);

305. digitalWrite(32, LOW);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 99: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L23

306. digitalWrite(36, LOW);

307. digitalWrite(27, LOW);

308. }

309. Dt = digitalRead(42); // Button Output

310. if (Dt == LOW && buttonstate == LOW) {

311. lcd.clear();

312. lcd.setCursor (0, 0);

313. lcd.print(tahun, DEC);

314. lcd.print('-');

315. lcd.print(ptanggal[0]);

316. lcd.print('-');

317. lcd.print(ptanggal[1]);

318. lcd.print('#');

319. lcd.print(pwaktu[2]);

320. lcd.print(':');

321. lcd.print(pwaktu[1]);

322. lcd.setCursor (0, 1);

323. lcd.print(':');

324. lcd.print(pwaktu[0]);

325. lcd.print('#');

326. lcd.print(cooler);

327. lcd.print('#');

328. lcd.print(humid);

329. lcd.print('#');

330. lcd.print(pompa);

331. lcd.print('#');

332. lcd.print(temp_c, 2);

333. lcd.print('#');

334. lcd.setCursor (0, 2);

335. lcd.print(humidity, 2);

336. lcd.print('#');

337. lcd.print(soil, 2);

338. delay(2000);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 100: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L24

339. lcd.clear();

340. }

341. So = digitalRead(44); // Button Output

342. if (So == LOW && buttonstate == LOW) {

343. lcd.clear();

344. lcd.setCursor (0, 0);

345. lcd.print ("1=Nyala , 0=Mati");

346. lcd.setCursor (0, 1);

347. lcd.print ("Air Cooler :");

348. lcd.print (cooler);

349. lcd.setCursor (0, 2);

350. lcd.print ("Humidifier :");

351. lcd.print (humid);

352. lcd.setCursor (0, 3);

353. lcd.print ("Pompa Air :");

354. lcd.print (pompa);

355. kondisi = 0;

356. delay(2000);

357. lcd.clear();

358. }

359. Si = digitalRead(43); //Button Input

360. if (Si == LOW && buttonstate == LOW) {

361. lcd.clear();

362. lcd.setCursor (0, 0);

363. lcd.print("Suhu :");

364. lcd.print(temp_c, 2);

365. lcd.print("C ");

366. lcd.setCursor (0, 1);

367. lcd.print("Kel Udara:");

368. lcd.print(humidity, 2);

369. lcd.print("% ");

370. lcd.setCursor (0, 2);

371. lcd.print("Kel Tanah:");

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 101: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L25

372. lcd.print(soil, 2);

373. delay(2000);

374. lcd.clear();

375. }

376. }

Listing Program Interface Software Matlab

1. %.................................................................. 2. % Tugas Akhir 3. % Sistem Telemetri Akuisisi Data Greenhouse Menggunakan XBee Pro S2B 4. % Oleh 5. % Rayendra Ega Satria 6. % Nim : 125114007 7. % Teknik Elektro Fakultas Sains dan Teknologi 8. % Universitas Sanata Dharma Yogyakarta 9. % 2016 10. %............................................................ 11. function varargout = EGA_TA(varargin) 12. % EGA_TA MATLAB code for EGA_TA.fig 13. % EGA_TA, by itself, creates a new EGA_TA or raises the

existing 14. % singleton*. 15. % 16. % H = EGA_TA returns the handle to a new EGA_TA or the

handle to 17. % the existing singleton*. 18. % 19. % EGA_TA('CALLBACK',hObject,eventData,handles,...) calls

the local 20. % function named CALLBACK in EGA_TA.M with the given

input arguments. 21. % 22. % EGA_TA('Property','Value',...) creates a new EGA_TA or

raises the 23. % existing singleton*. Starting from the left, property

value pairs are 24. % applied to the GUI before EGA_TA_OpeningFcn gets

called. An 25. % unrecognized property name or invalid value makes

property application 26. % stop. All inputs are passed to EGA_TA_OpeningFcn via

varargin. 27. % 28. % *See GUI Options on GUIDE's Tools menu. Choose "GUI

allows only one 29. % instance to run (singleton)". 30. % 31. % See also: GUIDE, GUIDATA, GUIHANDLES

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 102: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L26

32. 33. % Edit the above text to modify the response to help EGA_TA 34. 35. % Last Modified by GUIDE v2.5 17-Jun-2016 09:22:12 36. 37. % Begin initialization code - DO NOT EDIT 38. gui_Singleton = 1; 39. gui_State = struct('gui_Name', mfilename, ... 40. 'gui_Singleton', gui_Singleton, ... 41. 'gui_OpeningFcn', @EGA_TA_OpeningFcn, ... 42. 'gui_OutputFcn', @EGA_TA_OutputFcn, ... 43. 'gui_LayoutFcn', [] , ... 44. 'gui_Callback', []); 45. if nargin && ischar(varargin{1}) 46. gui_State.gui_Callback = str2func(varargin{1}); 47. end 48. 49. 50. if nargout 51. [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); 52. else 53. gui_mainfcn(gui_State, varargin{:}); 54. end 55. % End initialization code - DO NOT EDIT 56. 57. 58. % --- Executes just before EGA_TA is made visible. 59. function EGA_TA_OpeningFcn(hObject, eventdata, handles, varargin) 60. % This function has no output args, see OutputFcn. 61. % hObject handle to figure 62. % eventdata reserved - to be defined in a future version of MATLAB 63. % handles structure with handles and user data (see GUIDATA) 64. % varargin command line arguments to EGA_TA (see VARARGIN) 65. 66. % Choose default command line output for EGA_TA 67. 68. handles.output = hObject; 69. 70. % Update handles structure 71. guidata(hObject, handles); 72. 73. % UIWAIT makes EGA_TA wait for user response (see UIRESUME) 74. % uiwait(handles.figure1); 75. 76. delete(instrfindall); % reset port COM yang dipakai 77. s = serial('COM3','BaudRate', 9600); 78. set(s,'Terminator','LF'); 79. set(s,'Timeout',0.2); 80. fopen(s); % buka komunikasi serial

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 103: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L27

81. 82. handles.s = s; 83. handles.timer = timer('Period',0.25, ... 84. 'StartDelay',1, ... % 1 detik 85. 'TasksToExecute',inf, ... 86. 'ExecutionMode','fixedSpacing', ... 87. 'TimerFcn',{@timerCallback,hObject}); 88. handles.a = timer('Period',1, ... 89. 'StartDelay',300, ... % 300 detik / 5 menit 90. 'TasksToExecute',inf, ... 91. 'ExecutionMode','fixedSpacing', ... 92. 'TimerFcn',{@timerCallbacka,hObject}); 93. disp('Connected.') 94. guidata(hObject, handles); 95. 96. global ugrafik %Perhitungan jumlah grafik 97. global barisn %Perhitungan jumlah update grafik 98. ugrafik = 0; 99. barisn = 0; 100. 101. % --- Outputs from this function are returned to the command line. 102. function varargout = EGA_TA_OutputFcn(hObject, eventdata, handles) 103. % varargout cell array for returning output args (see VARARGOUT); 104. % hObject handle to figure 105. % eventdata reserved - to be defined in a future version of MATLAB 106. % handles structure with handles and user data (see GUIDATA) 107. 108. % Get default command line output from handles structure 109. varargout{1} = handles.output; 110. 111. 112. function waktu_Callback(hObject, eventdata, handles) 113. % hObject handle to waktu (see GCBO) 114. % eventdata reserved - to be defined in a future version of MATLAB 115. % handles structure with handles and user data (see GUIDATA) 116. 117. % Hints: get(hObject,'String') returns contents of waktu as text 118. % str2double(get(hObject,'String')) returns contents of

waktu as a double 119. 120. 121. % --- Executes during object creation, after setting all

properties. 122. function waktu_CreateFcn(hObject, eventdata, handles) 123. % hObject handle to waktu (see GCBO) 124. % eventdata reserved - to be defined in a future version of MATLAB 125. % handles empty - handles not created until after all CreateFcns

called 126. 127. % Hint: edit controls usually have a white background on Windows. 128. % See ISPC and COMPUTER.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 104: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L28

129. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

130. set(hObject,'BackgroundColor','white'); 131. end 132. 133. 134. 135. function tanggal_Callback(hObject, eventdata, handles) 136. % hObject handle to tanggal (see GCBO) 137. % eventdata reserved - to be defined in a future version of MATLAB 138. % handles structure with handles and user data (see GUIDATA) 139. 140. % Hints: get(hObject,'String') returns contents of tanggal as text 141. % str2double(get(hObject,'String')) returns contents of

tanggal as a double 142. 143. 144. % --- Executes during object creation, after setting all

properties. 145. function tanggal_CreateFcn(hObject, eventdata, handles) 146. % hObject handle to tanggal (see GCBO) 147. % eventdata reserved - to be defined in a future version of MATLAB 148. % handles empty - handles not created until after all CreateFcns

called 149. 150. % Hint: edit controls usually have a white background on Windows. 151. % See ISPC and COMPUTER. 152. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 153. set(hObject,'BackgroundColor','white'); 154. end 155. 156. 157. function air_cooler_Callback(hObject, eventdata, handles) 158. % hObject handle to air_cooler (see GCBO) 159. % eventdata reserved - to be defined in a future version of MATLAB 160. % handles structure with handles and user data (see GUIDATA) 161. 162. % Hints: get(hObject,'String') returns contents of air_cooler as

text 163. % str2double(get(hObject,'String')) returns contents of

air_cooler as a double 164. 165. 166. % --- Executes during object creation, after setting all

properties. 167. function air_cooler_CreateFcn(hObject, eventdata, handles) 168. % hObject handle to air_cooler (see GCBO) 169. % eventdata reserved - to be defined in a future version of MATLAB 170. % handles empty - handles not created until after all CreateFcns

called

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 105: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L29

171. 172. % Hint: edit controls usually have a white background on Windows. 173. % See ISPC and COMPUTER. 174. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 175. set(hObject,'BackgroundColor','white'); 176. end 177. 178. 179. function humidifier_Callback(hObject, eventdata, handles) 180. % hObject handle to humidifier (see GCBO) 181. % eventdata reserved - to be defined in a future version of MATLAB 182. % handles structure with handles and user data (see GUIDATA) 183. 184. % Hints: get(hObject,'String') returns contents of humidifier as

text 185. % str2double(get(hObject,'String')) returns contents of

humidifier as a double 186. 187. 188. % --- Executes during object creation, after setting all

properties. 189. function humidifier_CreateFcn(hObject, eventdata, handles) 190. % hObject handle to humidifier (see GCBO) 191. % eventdata reserved - to be defined in a future version of MATLAB 192. % handles empty - handles not created until after all CreateFcns

called 193. 194. % Hint: edit controls usually have a white background on Windows. 195. % See ISPC and COMPUTER. 196. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 197. set(hObject,'BackgroundColor','white'); 198. end 199. 200. 201. function pompa_air_Callback(hObject, eventdata, handles) 202. % hObject handle to pompa_air (see GCBO) 203. % eventdata reserved - to be defined in a future version of MATLAB 204. % handles structure with handles and user data (see GUIDATA) 205. 206. % Hints: get(hObject,'String') returns contents of pompa_air as

text 207. % str2double(get(hObject,'String')) returns contents of

pompa_air as a double 208. 209. 210. % --- Executes during object creation, after setting all

properties. 211. function pompa_air_CreateFcn(hObject, eventdata, handles) 212. % hObject handle to pompa_air (see GCBO) 213. % eventdata reserved - to be defined in a future version of MATLAB

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 106: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L30

214. % handles empty - handles not created until after all CreateFcns called

215. 216. % Hint: edit controls usually have a white background on Windows. 217. % See ISPC and COMPUTER. 218. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 219. set(hObject,'BackgroundColor','white'); 220. end 221. 222. 223. function suhu_Callback(hObject, eventdata, handles) 224. % hObject handle to suhu (see GCBO) 225. % eventdata reserved - to be defined in a future version of MATLAB 226. % handles structure with handles and user data (see GUIDATA) 227. 228. % Hints: get(hObject,'String') returns contents of suhu as text 229. % str2double(get(hObject,'String')) returns contents of suhu

as a double 230. 231. 232. % --- Executes during object creation, after setting all

properties. 233. function suhu_CreateFcn(hObject, eventdata, handles) 234. % hObject handle to suhu (see GCBO) 235. % eventdata reserved - to be defined in a future version of MATLAB 236. % handles empty - handles not created until after all CreateFcns

called 237. 238. % Hint: edit controls usually have a white background on Windows. 239. % See ISPC and COMPUTER. 240. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 241. set(hObject,'BackgroundColor','white'); 242. end 243. 244. 245. function kel_udara_Callback(hObject, eventdata, handles) 246. % hObject handle to kel_udara (see GCBO) 247. % eventdata reserved - to be defined in a future version of MATLAB 248. % handles structure with handles and user data (see GUIDATA) 249. 250. % Hints: get(hObject,'String') returns contents of kel_udara as

text 251. % str2double(get(hObject,'String')) returns contents of

kel_udara as a double 252. 253. 254. % --- Executes during object creation, after setting all

properties. 255. function kel_udara_CreateFcn(hObject, eventdata, handles) 256. % hObject handle to kel_udara (see GCBO)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 107: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L31

257. % eventdata reserved - to be defined in a future version of MATLAB 258. % handles empty - handles not created until after all CreateFcns

called 259. 260. % Hint: edit controls usually have a white background on Windows. 261. % See ISPC and COMPUTER. 262. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 263. set(hObject,'BackgroundColor','white'); 264. end 265. 266. 267. function kel_tanah_Callback(hObject, eventdata, handles) 268. % hObject handle to kel_tanah (see GCBO) 269. % eventdata reserved - to be defined in a future version of MATLAB 270. % handles structure with handles and user data (see GUIDATA) 271. 272. % Hints: get(hObject,'String') returns contents of kel_tanah as

text 273. % str2double(get(hObject,'String')) returns contents of

kel_tanah as a double 274. 275. 276. % --- Executes during object creation, after setting all

properties. 277. function kel_tanah_CreateFcn(hObject, eventdata, handles) 278. % hObject handle to kel_tanah (see GCBO) 279. % eventdata reserved - to be defined in a future version of MATLAB 280. % handles empty - handles not created until after all CreateFcns

called 281. 282. % Hint: edit controls usually have a white background on Windows. 283. % See ISPC and COMPUTER. 284. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 285. set(hObject,'BackgroundColor','white'); 286. end 287. 288. 289. function jumlah_data_Callback(hObject, eventdata, handles) 290. % hObject handle to jumlah_data (see GCBO) 291. % eventdata reserved - to be defined in a future version of MATLAB 292. % handles structure with handles and user data (see GUIDATA) 293. 294. % Hints: get(hObject,'String') returns contents of jumlah_data as

text 295. % str2double(get(hObject,'String')) returns contents of

jumlah_data as a double 296. 297. 298. % --- Executes during object creation, after setting all

properties.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 108: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L32

299. function jumlah_data_CreateFcn(hObject, eventdata, handles) 300. % hObject handle to jumlah_data (see GCBO) 301. % eventdata reserved - to be defined in a future version of MATLAB 302. % handles empty - handles not created until after all CreateFcns

called 303. 304. % Hint: edit controls usually have a white background on Windows. 305. % See ISPC and COMPUTER. 306. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 307. set(hObject,'BackgroundColor','white'); 308. end 309. 310. 311. function max_suhu_Callback(hObject, eventdata, handles) 312. % hObject handle to max_suhu (see GCBO) 313. % eventdata reserved - to be defined in a future version of MATLAB 314. % handles structure with handles and user data (see GUIDATA) 315. 316. % Hints: get(hObject,'String') returns contents of max_suhu as text 317. % str2double(get(hObject,'String')) returns contents of

max_suhu as a double 318. 319. 320. % --- Executes during object creation, after setting all

properties. 321. function max_suhu_CreateFcn(hObject, eventdata, handles) 322. % hObject handle to max_suhu (see GCBO) 323. % eventdata reserved - to be defined in a future version of MATLAB 324. % handles empty - handles not created until after all CreateFcns

called 325. % Hint: edit controls usually have a white background on Windows. 326. % See ISPC and COMPUTER. 327. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 328. set(hObject,'BackgroundColor','white'); 329. end 330. 331. 332. function min_suhu_Callback(hObject, eventdata, handles) 333. % hObject handle to min_suhu (see GCBO) 334. % eventdata reserved - to be defined in a future version of MATLAB 335. % handles structure with handles and user data (see GUIDATA) 336. 337. % Hints: get(hObject,'String') returns contents of min_suhu as text 338. % str2double(get(hObject,'String')) returns contents of

min_suhu as a double 339. 340. 341. % --- Executes during object creation, after setting all

properties. 342. function min_suhu_CreateFcn(hObject, eventdata, handles)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 109: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L33

343. % hObject handle to min_suhu (see GCBO) 344. % eventdata reserved - to be defined in a future version of MATLAB 345. % handles empty - handles not created until after all CreateFcns

called 346. 347. % Hint: edit controls usually have a white background on Windows. 348. % See ISPC and COMPUTER. 349. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 350. set(hObject,'BackgroundColor','white'); 351. end 352. 353. 354. function mean_suhu_Callback(hObject, eventdata, handles) 355. % hObject handle to mean_suhu (see GCBO) 356. % eventdata reserved - to be defined in a future version of MATLAB 357. % handles structure with handles and user data (see GUIDATA) 358. 359. % Hints: get(hObject,'String') returns contents of mean_suhu as

text 360. % str2double(get(hObject,'String')) returns contents of

mean_suhu as a double 361. 362. 363. % --- Executes during object creation, after setting all

properties. 364. function mean_suhu_CreateFcn(hObject, eventdata, handles) 365. % hObject handle to mean_suhu (see GCBO) 366. % eventdata reserved - to be defined in a future version of MATLAB 367. % handles empty - handles not created until after all CreateFcns

called 368. 369. % Hint: edit controls usually have a white background on Windows. 370. % See ISPC and COMPUTER. 371. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 372. set(hObject,'BackgroundColor','white'); 373. end 374. 375. 376. function max_kudara_Callback(hObject, eventdata, handles) 377. % hObject handle to max_kudara (see GCBO) 378. % eventdata reserved - to be defined in a future version of MATLAB 379. % handles structure with handles and user data (see GUIDATA) 380. 381. % Hints: get(hObject,'String') returns contents of max_kudara as

text 382. % str2double(get(hObject,'String')) returns contents of

max_kudara as a double 383. 384. 385. % --- Executes during object creation, after setting all

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 110: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L34

properties. 386. function max_kudara_CreateFcn(hObject, eventdata, handles) 387. % hObject handle to max_kudara (see GCBO) 388. % eventdata reserved - to be defined in a future version of MATLAB 389. % handles empty - handles not created until after all CreateFcns

called 390. 391. % Hint: edit controls usually have a white background on Windows. 392. % See ISPC and COMPUTER. 393. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 394. set(hObject,'BackgroundColor','white'); 395. end 396. 397. 398. function min_kudara_Callback(hObject, eventdata, handles) 399. % hObject handle to min_kudara (see GCBO) 400. % eventdata reserved - to be defined in a future version of MATLAB 401. % handles structure with handles and user data (see GUIDATA) 402. 403. % Hints: get(hObject,'String') returns contents of min_kudara as

text 404. % str2double(get(hObject,'String')) returns contents of

min_kudara as a double 405. 406. 407. % --- Executes during object creation, after setting all

properties. 408. function min_kudara_CreateFcn(hObject, eventdata, handles) 409. % hObject handle to min_kudara (see GCBO) 410. % eventdata reserved - to be defined in a future version of MATLAB 411. % handles empty - handles not created until after all CreateFcns

called 412. 413. % Hint: edit controls usually have a white background on Windows. 414. % See ISPC and COMPUTER. 415. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 416. set(hObject,'BackgroundColor','white'); 417. end 418. 419. 420. function mean_kudara_Callback(hObject, eventdata, handles) 421. % hObject handle to mean_kudara (see GCBO) 422. % eventdata reserved - to be defined in a future version of MATLAB 423. % handles structure with handles and user data (see GUIDATA) 424. 425. % Hints: get(hObject,'String') returns contents of mean_kudara as

text 426. % str2double(get(hObject,'String')) returns contents of

mean_kudara as a double

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 111: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L35

427. 428. 429. % --- Executes during object creation, after setting all

properties. 430. function mean_kudara_CreateFcn(hObject, eventdata, handles) 431. % hObject handle to mean_kudara (see GCBO) 432. % eventdata reserved - to be defined in a future version of MATLAB 433. % handles empty - handles not created until after all CreateFcns

called 434. 435. % Hint: edit controls usually have a white background on Windows. 436. % See ISPC and COMPUTER. 437. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 438. set(hObject,'BackgroundColor','white'); 439. end 440. 441. 442. function max_ktanah_Callback(hObject, eventdata, handles) 443. % hObject handle to max_ktanah (see GCBO) 444. % eventdata reserved - to be defined in a future version of MATLAB 445. % handles structure with handles and user data (see GUIDATA) 446. 447. % Hints: get(hObject,'String') returns contents of max_ktanah as

text 448. % str2double(get(hObject,'String')) returns contents of

max_ktanah as a double 449. 450. 451. % --- Executes during object creation, after setting all

properties. 452. function max_ktanah_CreateFcn(hObject, eventdata, handles) 453. % hObject handle to max_ktanah (see GCBO) 454. % eventdata reserved - to be defined in a future version of MATLAB 455. % handles empty - handles not created until after all CreateFcns

called 456. 457. % Hint: edit controls usually have a white background on Windows. 458. % See ISPC and COMPUTER. 459. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 460. set(hObject,'BackgroundColor','white'); 461. end 462. 463. 464. function min_ktanah_Callback(hObject, eventdata, handles) 465. % hObject handle to min_ktanah (see GCBO) 466. % eventdata reserved - to be defined in a future version of MATLAB 467. % handles structure with handles and user data (see GUIDATA) 468. 469. % Hints: get(hObject,'String') returns contents of min_ktanah as

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 112: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L36

text 470. % str2double(get(hObject,'String')) returns contents of

min_ktanah as a double 471. 472. 473. % --- Executes during object creation, after setting all

properties. 474. function min_ktanah_CreateFcn(hObject, eventdata, handles) 475. % hObject handle to min_ktanah (see GCBO) 476. % eventdata reserved - to be defined in a future version of MATLAB 477. % handles empty - handles not created until after all CreateFcns

called 478. 479. % Hint: edit controls usually have a white background on Windows. 480. % See ISPC and COMPUTER. 481. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 482. set(hObject,'BackgroundColor','white'); 483. end 484. 485. 486. function mean_ktanah_Callback(hObject, eventdata, handles) 487. % hObject handle to mean_ktanah (see GCBO) 488. % eventdata reserved - to be defined in a future version of MATLAB 489. % handles structure with handles and user data (see GUIDATA) 490. 491. % Hints: get(hObject,'String') returns contents of mean_ktanah as

text 492. % str2double(get(hObject,'String')) returns contents of

mean_ktanah as a double 493. 494. 495. % --- Executes during object creation, after setting all

properties. 496. function mean_ktanah_CreateFcn(hObject, eventdata, handles) 497. % hObject handle to mean_ktanah (see GCBO) 498. % eventdata reserved - to be defined in a future version of MATLAB 499. % handles empty - handles not created until after all CreateFcns

called 500. 501. % Hint: edit controls usually have a white background on Windows. 502. % See ISPC and COMPUTER. 503. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 504. set(hObject,'BackgroundColor','white'); 505. end 506. 507. 508. % ----------------------------------------------------------------- 509. function activex4_Click(hObject, eventdata, handles) 510. % hObject handle to activex4 (see GCBO) 511. % eventdata structure with parameters passed to COM event listener

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 113: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L37

512. % handles structure with handles and user data (see GUIDATA) 513. 514. 515. % ----------------------------------------------------------------- 516. function activex4_Slide(hObject, eventdata, handles) 517. % hObject handle to activex4 (see GCBO) 518. % eventdata structure with parameters passed to COM event listener 519. % handles structure with handles and user data (see GUIDATA) 520. 521. 522. % ----------------------------------------------------------------- 523. function activex4_Change(hObject, eventdata, handles) 524. % hObject handle to activex4 (see GCBO) 525. % eventdata structure with parameters passed to COM event listener 526. % handles structure with handles and user data (see GUIDATA) 527. 528. 529. % --- Executes during object creation, after setting all

properties. 530. function axes10_CreateFcn(hObject, eventdata, handles) 531. % hObject handle to axes10 (see GCBO) 532. % eventdata reserved - to be defined in a future version of MATLAB 533. % handles empty - handles not created until after all CreateFcns

called 534. 535. % Hint: place code in OpeningFcn to populate axes10 536. 537. 538. % --- Executes when entered data in editable cell(s) in uitable1. 539. function uitable1_CellEditCallback(hObject, eventdata, handles) 540. % hObject handle to uitable1 (see GCBO) 541. % eventdata structure with the following fields (see

MATLAB.UI.CONTROL.TABLE) 542. % Indices: row and column indices of the cell(s) edited 543. % PreviousData: previous data for the cell(s) edited 544. % EditData: string(s) entered by the user 545. % NewData: EditData or its converted form set on the Data

property. Empty if Data was not changed 546. % Error: error string when failed to convert EditData to

appropriate value for Data 547. % handles structure with handles and user data (see GUIDATA) 548. 549. 550. % --- Executes during object creation, after setting all

properties. 551. function uitable1_CreateFcn(hObject, eventdata, handles) 552. % hObject handle to uitable1 (see GCBO) 553. % eventdata reserved - to be defined in a future version of MATLAB 554. % handles empty - handles not created until after all CreateFcns

called 555. 556.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 114: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L38

557. % --- Executes on button press in pushbutton3. 558. function pushbutton3_Callback(hObject, eventdata, handles) 559. % hObject handle to pushbutton3 (see GCBO) 560. % eventdata reserved - to be defined in a future version of MATLAB 561. % handles structure with handles and user data (see GUIDATA) 562. 563. 564. % --- Executes during object creation, after setting all

properties. 565. function suhu_grafik_CreateFcn(hObject, eventdata, handles) 566. % hObject handle to suhu_grafik (see GCBO) 567. % eventdata reserved - to be defined in a future version of MATLAB 568. % handles empty - handles not created until after all CreateFcns

called 569. 570. % Hint: place code in OpeningFcn to populate suhu_grafik 571. 572. 573. % --- Executes during object creation, after setting all

properties. 574. function ktanah_grafik_CreateFcn(hObject, eventdata, handles) 575. % hObject handle to ktanah_grafik (see GCBO) 576. % eventdata reserved - to be defined in a future version of MATLAB 577. % handles empty - handles not created until after all CreateFcns

called 578. 579. % Hint: place code in OpeningFcn to populate ktanah_grafik 580. 581. 582. % --- Executes on selection change in menu_date. 583. function menu_date_Callback(hObject, eventdata, handles) 584. % hObject handle to menu_date (see GCBO) 585. % eventdata reserved - to be defined in a future version of MATLAB 586. % handles structure with handles and user data (see GUIDATA) 587. 588. % Hints: contents = cellstr(get(hObject,'String')) returns

menu_date contents as cell array 589. % contents{get(hObject,'Value')} returns selected item from

menu_date 590. 591. 592. % --- Executes during object creation, after setting all

properties. 593. function menu_date_CreateFcn(hObject, eventdata, handles) 594. % hObject handle to menu_date (see GCBO) 595. % eventdata reserved - to be defined in a future version of MATLAB 596. % handles empty - handles not created until after all CreateFcns

called 597. 598. 599. % guidata(hObject,handles); 600.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 115: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L39

601. % Hint: popupmenu controls usually have a white background on Windows.

602. % See ISPC and COMPUTER. 603. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 604. set(hObject,'BackgroundColor','white'); 605. end 606. 607. 608. % --- Executes during object creation, after setting all

properties. 609. function namatanggal_CreateFcn(hObject, eventdata, handles) 610. % hObject handle to namatanggal (see GCBO) 611. % eventdata reserved - to be defined in a future version of MATLAB 612. % handles empty - handles not created until after all CreateFcns

called 613. 614. % Hint: popupmenu controls usually have a white background on

Windows. 615. % See ISPC and COMPUTER. 616. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 617. set(hObject,'BackgroundColor','white'); 618. end 619. 620. 621. function datawaktu1_Callback(hObject, eventdata, handles) 622. % hObject handle to datawaktu1 (see GCBO) 623. % eventdata reserved - to be defined in a future version of MATLAB 624. % handles structure with handles and user data (see GUIDATA) 625. 626. % Hints: get(hObject,'String') returns contents of datawaktu1 as

text 627. % str2double(get(hObject,'String')) returns contents of

datawaktu1 as a double 628. 629. 630. % --- Executes during object creation, after setting all

properties. 631. function datawaktu1_CreateFcn(hObject, eventdata, handles) 632. % hObject handle to datawaktu1 (see GCBO) 633. % eventdata reserved - to be defined in a future version of MATLAB 634. % handles empty - handles not created until after all CreateFcns

called 635. 636. % Hint: edit controls usually have a white background on Windows. 637. % See ISPC and COMPUTER. 638. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 639. set(hObject,'BackgroundColor','white'); 640. end 641.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 116: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L40

642. 643. function datawaktu2_Callback(hObject, eventdata, handles) 644. % hObject handle to datawaktu2 (see GCBO) 645. % eventdata reserved - to be defined in a future version of MATLAB 646. % handles structure with handles and user data (see GUIDATA) 647. 648. % Hints: get(hObject,'String') returns contents of datawaktu2 as

text 649. % str2double(get(hObject,'String')) returns contents of

datawaktu2 as a double 650. 651. 652. % --- Executes during object creation, after setting all

properties. 653. function datawaktu2_CreateFcn(hObject, eventdata, handles) 654. % hObject handle to datawaktu2 (see GCBO) 655. % eventdata reserved - to be defined in a future version of MATLAB 656. % handles empty - handles not created until after all CreateFcns

called 657. 658. % Hint: edit controls usually have a white background on Windows. 659. % See ISPC and COMPUTER. 660. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 661. set(hObject,'BackgroundColor','white'); 662. end 663. 664. 665. % --- Executes on button press in ok. 666. function ok_Callback(hObject, eventdata, handles) 667. % hObject handle to ok (see GCBO) 668. % eventdata reserved - to be defined in a future version of MATLAB 669. % handles structure with handles and user data (see GUIDATA) 670. 671. 672. % --- Executes on selection change in pilihandata. 673. function pilihandata_Callback(hObject, eventdata, handles) 674. % hObject handle to pilihandata (see GCBO) 675. % eventdata reserved - to be defined in a future version of MATLAB 676. % handles structure with handles and user data (see GUIDATA) 677. 678. % Hints: contents = cellstr(get(hObject,'String')) returns

pilihandata contents as cell array 679. % contents{get(hObject,'Value')} returns selected item from

pilihandata 680. 681. 682. % --- Executes during object creation, after setting all

properties. 683. function pilihandata_CreateFcn(hObject, eventdata, handles) 684. % hObject handle to pilihandata (see GCBO) 685. % eventdata reserved - to be defined in a future version of MATLAB

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 117: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L41

686. % handles empty - handles not created until after all CreateFcns called

687. 688. % Hint: popupmenu controls usually have a white background on

Windows. 689. % See ISPC and COMPUTER. 690. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) 691. set(hObject,'BackgroundColor','white'); 692. end 693. 694. 695. % --- Executes on button press in mulai. 696. function mulai_Callback(hObject, eventdata, handles) 697. % hObject handle to mulai (see GCBO) 698. % eventdata reserved - to be defined in a future version of MATLAB 699. % handles structure with handles and user data (see GUIDATA) 700. handles = guidata(hObject); 701. 702. start(handles.timer); %start timer 703. start(handles.a); %timer 5 menit 704. set(handles.uitable1, 'Data',[]); %mengosongkan tabel 705. set(handles.uitable1, 'Data',

cell(size(get(handles.uitable1,'Data')))); %menampilkan nomor urut data yang masuk 706. 707. 708. function timerCallback(~,~,hObject) 709. 710. global ugrafik %Perhitungan jumlah grafik 711. global barisn %Perhitungan jumlah update grafik 712. 713. 714. handles = guidata(hObject); 715. 716. if isfield(handles,'s') 717. try 718. readasync(handles.s); 719. n = handles.s.BytesAvailable; 720. if n > 0 721. warning('off','MATLAB:serial:fscanf:unsuccessfulRead'); 722. idn = fscanf(handles.s); 723. C = textscan(idn,'%s%s%d%d%d%f%f%f','Delimiter','#'); 724. [Tanggal, Waktu, Air_cooler, Humidifier, Pompa_air,

Suhu, Kel_udara, Kel_tanah] = deal(C{:}); 725. 726. dsuhu=sprintf('%.2f',Suhu); %menetapkan data suhu dengan 2 angka

dibelakang koma(,) 727. dkel_udara=sprintf('%.2f',Kel_udara); %menetapkan data

kel.udara dengan 2 angka di belakang koma(,) 728. dkel_tanah=sprintf('%.2f',Kel_tanah); %menetapkan data

kel.tanah dengan 2 angka di belakang koma(,)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 118: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L42

729. 730. set(handles.waktu,'String',Waktu); %menampilkan data

waktu ke tampilan data masukan tunggal 731. set(handles.tanggal,'String',Tanggal); %menampilkan data

tanggal ke tampilan data masukan tunggal 732. set(handles.air_cooler,'String',Air_cooler); %menampilkan data

air cooler ke tampilan data masukan tunggal 733. set(handles.humidifier,'String',Humidifier); %menampilkan data

humidifier ke tampilan data masukan tunggal 734. set(handles.pompa_air,'String',Pompa_air); %menampilkan data

pompa air ke tampilan data masukan tunggal 735. set(handles.suhu,'String',dsuhu); %menampilkan data

suhu ke tampilan data masukan tunggal 736. set(handles.kel_udara,'String',dkel_udara); %menampilkan data

kel.udara ke tampilan data masukan tunggal 737. set(handles.kel_tanah,'String',dkel_tanah); %menampilkan data

kel.tanah ke tampilan data masukan tunggal 738. set(handles.activex4,'Value',Suhu); %menampilkan data

suhu ke tampilan animasi 739. set(handles.activex7,'NeedleValue',Kel_udara); %menampilkan data

kel.udara ke tampilan animasi 740. set(handles.activex9,'NeedleValue',Kel_tanah); %menampilkan data

kel.tanah ke tampilan animasi 741. 742. 743. %Tabel : 744. d = [Waktu Tanggal dsuhu dkel_udara dkel_tanah Air_cooler

Humidifier Pompa_air]; % 745. data=get(handles.uitable1,'data'); 746. data(end+1,:)=d; %menampilkan data berikutnya pada tabel 747. set(handles.uitable1,'data',data); %menampilkan data dalam tabel 748. 749. %Save data ke excel 750. data_TA=date; %data_TA akan sesuai dengan tanggal saat ini 751. xlswrite(data_TA,data,'sheet1')%simpan data tabel GUI MATLAB ke

excel 752. 753. %membaca dan mengambil data dari excel 754. data_TA=date; 755. namafile=[data_TA '.xls']; 756. hasil=xlsread(namafile); 757. 758. %Menampilkan pada grafik 759. datanum = str2double(get(handles.uitable1,'Data')); 760. datastr = get(handles.uitable1,'Data'); 761. ugrafik = ugrafik + 1; 762. if (ugrafik < 10) 763. %Nilai sumbu Y saat dibawah 10 764. awaktu = datastr(:,1); 765. asuhu = datanum(:,3); 766. akeludara = datanum(:,4); 767. akeltanah = datanum(:,5); 768.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 119: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L43

769. if (ugrafik >= 1) 770. %batas.a & batas.b x axis saat dibawah 10 771. nbatawaktu = datastr(1,1); 772. batawaktu = datenum(datestr(nbatawaktu,

'HH:MM:SS'),'HH:MM:SS'); 773. nbatbwaktu = datastr(end,1); 774. batbwaktu =

datenum(datestr(nbatbwaktu,'HH:MM:SS'),'HH:MM:SS'); 775. handles.suhu_grafik.XLim = [batawaktu batbwaktu]; 776. handles.kudara_grafik.XLim = [batawaktu batbwaktu] 777. handles.ktanah_grafik.XLim = [batawaktu batbwaktu]; 778. end 779. else 780. barisn = barisn + 1; 781. %Nilai sumbu Y saat diatas 10 782. awaktu = datastr(barisn:1:end,1); 783. asuhu = datanum(barisn:1:end,3); 784. akeludara = datanum(barisn:1:end,4); 785. akeltanah = datanum(barisn:1:end,5); 786. 787. % Tetapakan ba & bb x axis saat diatas 10 788. %Batas atas 789. nbatawaktu = datastr(barisn,1); 790. batawaktu = datenum(datestr(nbatawaktu, 'HH:MM:SS'),'HH:MM:SS'); 791. 792. %Batas bawah 793. nbatbwaktu = datastr(end,1); 794. batbwaktu = datenum(datestr(nbatbwaktu, 'HH:MM:SS'),'HH:MM:SS'); 795. handles.suhu_grafik.XLim = [batawaktu batbwaktu]; 796. handles.kudara_grafik.XLim = [batawaktu batbwaktu]; 797. handles.ktanah_grafik.XLim = [batawaktu batbwaktu]; 798. end 799. swaktu = datenum(datestr(awaktu, 'HH:MM:SS'),'HH:MM:SS') 800. 801. %menampilkan 10 data suhu terakhir dalam grafik 802. hold(handles.suhu_grafik, 'on'); 803. stem(handles.suhu_grafik, swaktu, asuhu,'-ko'); 804. datetick(handles.suhu_grafik, 'x', 'HH:MM','keeplimits'); 805. 806. %menampilkan 10 data kel.udara terakhir dalam grafik 807. hold(handles.kudara_grafik, 'on'); 808. stem(handles.kudara_grafik, swaktu, akeludara,'-ko'); 809. datetick(handles.kudara_grafik, 'x', 'HH:MM','keeplimits'); 810. 811. % menampilkan 10 data kel.tanah terakhir dalam grafik 812. hold(handles.ktanah_grafik, 'on'); 813. stem(handles.ktanah_grafik, swaktu, akeltanah,'-ko'); 814. datetick(handles.ktanah_grafik, 'x', 'HH:MM','keeplimits'); 815. 816. %menghitung nilai data suhu max, min dan mean dari seluruh data

yang masuk ke excel 817. suhu_max = max(hasil(:,3)); %max suhu dari kolom 1 pada excel

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 120: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L44

818. suhu_min = min(hasil(:,3)); %min suhu dari kolom 1 pada excel 819. size_suhu=size(hasil(:,3),1); %menghitung jumlah data suhu dari

kolom 1 pada excel 820. suhu_rata = sum(hasil(:,3))/size_suhu; %mean suhu dari kolom 1

pada excel 821. suhu_rerata=sprintf('%.2f',suhu_rata); %mean suhu dengan 2 angka

dibelakang koma(,) 822. 823. %menampilkan nilai data suhu max, min dan mean dari seluruh data

yang masuk ke excel 824. set(handles.max_suhu,'String',suhu_max); 825. set(handles.min_suhu,'String',suhu_min); 826. set(handles.mean_suhu,'String',suhu_rerata); 827. 828. %menghitung nilai data kel.udara max, min dan mean dari seluruh

data yang masuk ke excel 829. kudara_max = max(hasil(:,4)); 830. kudara_min = min(hasil(:,4)); 831. size_kudara=size(hasil(:,4),1); 832. kudara_rata = sum(hasil(:,4))/size_kudara; 833. kudara_rerata=sprintf('%.2f',kudara_rata); 834. 835. %menampilkan nilai data kel.udara max, min dan mean dari seluruh

data yang masuk ke excel 836. set(handles.max_kudara,'String',kudara_max); 837. set(handles.min_kudara,'String',kudara_min); 838. set(handles.mean_kudara,'String',kudara_rerata); 839. 840. %menghitung nilai data kel.tanah max, min dan mean dari seluruh

data yang masuk ke excel 841. ktan_max = max(hasil(:,5)); 842. ktanah_max=sprintf('%.2f',ktan_max); 843. ktan_min = min(hasil(:,5)); 844. ktanah_min=sprintf('%.2f',ktan_min); 845. size_ktanah=size(hasil(:,5),1); 846. ktanah_rata = sum(hasil(:,5))/size_ktanah; 847. ktanah_rerata=sprintf('%.2f',ktanah_rata); 848. 849. %menampilkan nilai data kel.tanah max, min dan mean dari seluruh

data yang masuk ke excel 850. set(handles.max_ktanah,'String',ktanah_max); 851. set(handles.min_ktanah,'String',ktanah_min); 852. set(handles.mean_ktanah,'String',ktanah_rerata); 853. set(handles.jumlah_data,'String',size_ktanah); %menghitung

dan menampilkan jumlah data yang masuk selama 1 hari 854. 855. End 856. catch 857. end 858. End 859. 860. function timerCallbacka(~,~,hObject)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 121: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L45

861. 862. handles = guidata(hObject); 863. stop(handles.a); 864. stop(handles.timer); 865. msgbox('selesai'); 866. 867. % --- Executes on button press in selesai. 868. function selesai_Callback(hObject, eventdata, handles) 869. % hObject handle to selesai (see GCBO) 870. % eventdata reserved - to be defined in a future version of MATLAB 871. % handles structure with handles and user data (see GUIDATA) 872. 873. %stop timer dan stop program gui 874. handles = guidata(hObject); 875. stop(handles.timer); 876. s=handles.s; 877. fclose(s) 878. 879. 880. % --- Executes on button press in pushbutton6. 881. function pushbutton6_Callback(hObject, eventdata, handles) 882. % hObject handle to pushbutton6 (see GCBO) 883. % eventdata reserved - to be defined in a future version of MATLAB 884. % handles structure with handles and user data (see GUIDATA) 885. 886. % Mencari file data excel 887. [filename, pathname] = uigetfile('*.xls','Select your file'); 888. [file] = xlsread([pathname filename]) 889. handles.gui.file=file; 890. fwaktu=(file(:,1)); 891. filewaktu = datestr(fwaktu,'HH:MM:SS') 892. handles.gui.filewaktu=filewaktu; 893. guidata(hObject,handles); 894. 895. 896. function [cari_waktu] = waktuindex(waktu,filewaktu) 897. %UNTITLED Summary of this function goes here 898. % Detailed explanation goes here 899. 900. cari_waktu=1 901. [B] = size(filewaktu,1); 902. for i=1:B; 903. if strcmp(filewaktu(i,:),waktu); 904. cari_waktu=i; 905. end 906. End 907. 908. % --- Executes on button press in pushbutton7. 909. function pushbutton7_Callback(hObject, eventdata, handles) 910. % hObject handle to pushbutton7 (see GCBO) 911. % eventdata reserved - to be defined in a future version of MATLAB

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 122: TUGAS AKHIR SISTEM TELEMETRI AKUISISI DATA GREENHOUSE · Kata kunci : Greenhouse , Matlab, ... Gambar 2.10 Arduino Mega ... Gambar 3.3 Tampilan GUI

L46

912. % handles structure with handles and user data (see GUIDATA) 913. 914. % Cari waktu 1 915. filewaktu=handles.gui.filewaktu; 916. filewaktu=num2str (filewaktu); 917. waktu1=get(handles.datawaktu1,'String'); 918. cari_waktu1 = waktuindex(waktu1,filewaktu) 919. handles.gui.cari_waktu1=cari_waktu1; 920. 921. % Cari waktu 2 922. waktu2=get(handles.datawaktu2,'String'); 923. cari_waktu2 = waktuindex(waktu2,filewaktu) 924. handles.gui.cari_waktu2=cari_waktu2; 925. 926. % POP-UP menu 927. file=handles.gui.file; 928. filewaktu=handles.gui.filewaktu; 929. cari_waktu1=handles.gui.cari_waktu1; 930. cari_waktu2=handles.gui.cari_waktu2; 931. contents = get(handles.pilihandata,'String'); 932. pilihandatavalue = contents{get(handles.pilihandata,'Value')} 933. switch pilihandatavalue 934. case 'Suhu' 935. ds_suhu=(file(cari_waktu1:cari_waktu2,3)) 936. stem(handles.axes6,ds_suhu,'-ko'); 937. axis(handles.axes6,[0 20 0 50]); 938. 939. case 'Kel.Udara' 940. ds_keludara=(file(cari_waktu1:cari_waktu2,4)) 941. stem(handles.axes6,ds_keludara,'-ko'); 942. axis(handles.axes6,[0 20 0 100]); 943. 944. Otherwise 945. ds_keltanah=(file(cari_waktu1:cari_waktu2,5)) 946. stem(handles.axes6,ds_keltanah,'-ko'); 947. axis(handles.axes6,[0 20 0 10]); 948. end

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI