155
TUGAS AKHIR SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM BERBASIS RASPBERRY PI Diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik pada Program Studi Teknik Elektro Fakultas Sains dan Teknologi Universitas Sanata Dharma disusun oleh: ELISABET YUSTIA TRISNANI NIM : 145114023 PROGRAM STUDI TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2018 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

TUGAS AKHIR

SISTEM MONITOR JARAK JAUH

PADA KUMBUNG JAMUR TIRAM

BERBASIS RASPBERRY PI

Diajukan untuk memenuhi salah satu syarat

memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro

Fakultas Sains dan Teknologi Universitas Sanata Dharma

disusun oleh:

ELISABET YUSTIA TRISNANI

NIM : 145114023

PROGRAM STUDI TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2018

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 2: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

FINAL PROJECT

OYSTER MUSHROOM’S GREENHOUSE

REMOTE MONITORING SYSTEM

BASED ON RASPBERRY PI

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

ELISABET YUSTIA TRISNANI

NIM : 145114023

DEPARTEMENT OF ELECTRICAL ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2018

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 3: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

Pembimbing

LEMBAR PERSETUJUAI\I

TUGAS AKHIR

SISTEM MONITOR JARAK JAUH

PADA KUMBUNG JAMUR TIRAM

BERBASIS RASPBERRY PI

111

,@s* *S

RA!,!. l;,;S Yl_i-" \lr$lo'

(OYSTERMUSHR ,S GREENHOUSE

SYSTEM

Martanto, S.T., M.T. Tanggal: B0klober 2ol8

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 4: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

Kefua

Sekretaris

Anggota

LEMBAR PENGESAHAN

TUGAS AKHIR

SISTEM MOI{ITOR JARAK JAUHPADA KUMBUNG JAMUR TIRAM

BERBASIS RASPBBRRY PI(OYSTER MUSHROOM' S GREENHOUSE

REMOTE MONITORING SYSTEMBASED ON RASPBERRY PI)

disusun oleh :

ELISABET \TUSTIA TRISNANI

NIM z 145114423

Telah dipertahankan didepan tim pengujipada tanggal 3 Oktober 2018

dan dinyatakan mernenuhi syarat

Susunan Tim Penguji

Nama Lengkap

Ir. Th. Prima Ari Setiyani, M"T.

Martanto, S.T., M.T.

Petrus Setyo Prabowo, S.T., M.T.

Yogyakarta,{ Oktober 20 1 8

Fakultas Sains dan Teknologi

niversitas Sanata Dharma

ed^-&-,udi Mungkasi, S.Si., M.Math.Sc., Ph.D.

1V

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 5: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya

atau bagian karya orillg lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka

sebagaimana layaknya karya ilmiah.

Yogyakarta, 8 Oktober 2018

A n 0-'/Vmb-v/f-

Elisabet Yustia Trisnani

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 6: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

vi

HALAMAN PERSEMBAHAN

(Reckless Love) (Songwriters: Caleb Culver / Cory Asbury / Ran Jackson)

Before I spoke a word, You were singing over me

You have been so, so good to me

Before I took a breath, You breathed Your life in me

You have been so, so kind to me

When I was Your foe, still Your love fought for me

You have been so, so good to me

When I felt no worth, You paid it all for me

You have been so, so kind to me

There's no shadow You won't light up

Mountain You won't climb up

Coming after me

There's no wall You won't kick down

Lie You won't tear down

Coming after me

Oh, the overwhelming, never-ending, reckless love of God

Oh, it chases me down, fights 'til I'm found, leaves the ninety-nine

I couldn't earn it, and I don't deserve it, still, You give Yourself away

Oh, the overwhelming, never-ending, reckless love of God

I would love to present this final project to:

My Mom and Dad

My sisters, Sintikhe and Ruth

My Other Half

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 7: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

LEMBAR PER}TYATAAN PARSETUJUAN PUBLIKASI KARYA ILMIAH

UNTUK KEPENTINGAN AKADAMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma:

NaMa : ELISABET YUSTIA TRISNANI

Nomor Mahasiswa : 145n4A23

Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas

Sanata Dharma karya ilmiah saya yang berjudul :

SISTBM MONITOR JARAK JAUH

PADA KUMBUNG JAMUR TIRAM

BERBASIS RASPBERRY PI

beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada

Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk

media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas,

dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis tanpa

perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap

mencantumkan nama saya sebagai penulis.

Demikian pemyataan ini yang saya buat dengan sebenamya.

Yogyakarta 8 Oktober 2018

Elisabet Yustia Trisnani

vll

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 8: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

viii

INTISARI

Dalam sektor pertanian masih banyak petani jamur yang melakukan pembudidayaan

secara manual. Faktor lingkungan yang mempengaruhi pertumbuhan jamur tiram

diantaranya adalah suhu dan kelembaban. Terdapat penelitian yang menjaga suhu dan

kelembaban pada kumbung jamur tiram menggunakan Zelio Smart Relay. Zelio ini

mengontrol keluaran aktuator secara otomatis berdasar suhu dan kelembaban yang terjadi,

namun sistem kendali dalam penelitian tersebut masih bersifat lokal. Oleh karena itu pada

penelitian ini dibuat sistem yang dapat melakukan setting, monitoring dan logging secara

jarak jauh.

Sistem jarak jauh yang dibuat adalah pengembangan dari metode sistem kendali lokal

Zelio tersebut. Pengembangan ini adalah berbasis Raspberry Pi 3 melalui GUI. Sistem

memiliki empat menu yaitu menu utama, setting, monitoring dan logging. Menu utama untuk

membuka submenu. Dalam menu setting, terdapat pengaturan nilai setpoint suhu dan

kelembaban, kondisi on/off aktuator, pembacaan setpoint sistem lokal, dan tombol enable.

Menu monitoring akan menampilkan nilai suhu dan kelembaban, serta status aktuator

sekarang berdasar pada interval waktu. Dalam menu logging, terdapat pilihan interval

logging data, penyimpanan data secara otomatis dalam format csv, fasilitas untuk membuka

file csv, dan menampilkan plot dalam bentuk grafik.

Sistem jarak jauh ini telah berhasil diimplementasikan dan diuji. Komunikasi

pertukaran data secara jarak jauh antara Raspberry Pi dan Zelio menggunakan jaringan LAN

atau TCP/IP berhasil dilakukan. Dari pengujian, sistem berhasil menjalankan fitur dalam

menu setting yaitu dapat mengatur nilai setpoint suhu dan kelembaban, mengatur kondisi

on/off aktuator, menampilkan setpoint sistem lokal dan mengatur kondisi on/off tombol

enable dari GUI. Dimenu monitoring, sistem dapat menampilkan nilai suhu dan kelembaban,

serta status aktuator sekarang berdasar pada interval waktu 5, 10 dan 15 detik. Dimenu

logging, data berhasil disimpan dalam format csv berdasar pada interval logging 5, 15 dan

20 data. Penamaan file otomatis berdasar tanggal berhasil dilakukan, file csv berhasil dibuka,

dan berhasil menampilkan plot dalam grafik.

Kata Kunci: Setting, Monitoring, Logging, GUI, Raspberry Pi

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 9: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

ix

ABSTRACT

In the agricultural sector there are still many mushroom farmers who do manual

cultivation. Environmental factors that influence the growth of oyster mushrooms include

temperature and humidity. There is a research that maintain the temperature and humidity in

oyster mushrooms’ greenhouse based on Zelio Smart Relay. This Zelio automatically

controls the actuator output based on the temperature and humidity that occurred at that time,

but the control system in that research is still a local system. Therefore, this research created

a system that can do remote setting, monitoring and logging.

The remote system created was the development of Zelio's local control system

method. This development is based on Raspberry Pi 3 through a user-friendly GUI. The

system has four menus, namely the main menu, setting, monitoring and logging. The

function of main menu is to open the submenus. In the setting menu, there are some setting

that can be done, those are set point temperature and humidity setting, on/off actuator

condition setting, enable button setting so that the system can be set from the local/GUI, and

also local system set point reading. The monitoring menu will display temperature and

humidity values, as well as current actuator status based on time interval. In the logging

menu, data can be stored automatically in csv format based on interval logging data, there is

also a facility to open csv files, and to display plot in graphic.

This remote system has been successfully implemented and tested. Communication of

remote data exchange between Raspberry Pi and Zelio using LAN or TCP / IP networks was

successfully carried out. From the testing, the system managed to run the features in the

setting menu which is able to set the temperature and humidity set point values, set the on/off

condition of the actuator, display the local system set point and set the on/off condition of

the enable button in the GUI. In the monitoring menu, the system can display current

temperature and humidity values, and current actuator status based on 5, 10 and 15 seconds

time intervals. In the logging menu, the data were successfully saved in csv format based on

5, 15 and 20 data logging intervals. Automatic file naming based on date was successfully

done, the csv file was successfully opened, and data was successfully displayed in graphical

plot.

Keywords: Setting, Monitoring, Logging, GUI, Raspberry Pi

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 10: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

KATAPENGANTAR

Puji syukur kepada Allah Tri Tunggal Maha Kudus atas segala anugerah, kemurahan

dan kekuatan yang telah diberikan kepada penulis, sehingga penulis bisa menyelesaikan

laporan Tugas Akhir ini dengan baik.

Dalam penulisan Tugas Akhir ini, penulis mendapatkan bantuan, bimbingan, dan

motivasi dari berbagai pihak. Oleh karena itu, penulis ingin mengucapkan terima kasih

kepada:

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

Fakultas Sains dan Teknologi Universitas Sanata Dharma.

2. Marlanto, S.T, M.T selaku dosen pembimbing yang telah memberikan dorongan,

saran, kritik, ide, dan arahan dalam penyusunan laporan Tugas Akhir ini.

3. Seluruh dosen dan laboran Teknik Elektro yang telah membantu penulis dalam

menyelesaikan laporan Tugas Akhfu ini.

4. Teman-teman mahasiswa Teknik Elekho, khususnya angkatan 2014 atas canda

taw4 kebersamaan dan persahabatan selama menjalani studi.

Penulis menyadari bahwa laporan Tugas Akhir ini masih memiliki kekurangan. Oleh

karena itu, penulis menerima saran dan kritik yang membangun agar laporan ini menjadi

lebih baik. Semoga penelitian ini dapat dikembangkan dan bermanfaat bagi orang lain.

Yogyakarta, 8 Oklober 2018

Penulis,

Elisabet Yustia Trisnani

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 11: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

xi

DAFTAR ISI

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

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

Halaman Persetujuan ............................................................................................................ iii

Halaman Pengesahan ............................................................................................................ iv

Pernyataan Keaslian Karya .................................................................................................... v

Halaman Persembahan ......................................................................................................... vi

Lembar Pernyataan Persetujuan Publikasi ........................................................................... vi

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

Abstrak ................................................................................................................................. ix

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

Daftar Isi ............................................................................................................................... xi

Daftar Gambar .................................................................................................................... xiv

Daftar Tabel ...................................................................................................................... xviii

BAB I PENDAHULUAN ..................................................................................................... 1

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

1.2.Tujuan dan Manfaat ..................................................................................................... 2

1.3.Batasan Masalah .......................................................................................................... 3

1.4.Metodologi Penelitian .................................................................................................. 3

BAB II DASAR TEORI ........................................................................................................ 6

2.1. Jamur Tiram ................................................................................................................ 6

2.1.1. Klasifikasi Jamur Tiram ....................................................................................... 6

2.1.2. Syarat Tumbuh Kembang Jamur Tiram ............................................................... 7

2.2. Raspberry Pi ................................................................................................................ 7

2.2.1. Arsitekture Hardware Raspberry Pi ..................................................................... 7

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 12: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

xii

2.2.2. Sistem Operasi di Raspberry ................................................................................ 9

2.2.3. Pemrograman Raspberry Pi 3............................................................................... 9

2.2.4. GUI Raspberry Pi 3 .............................................................................................. 9

2.3. Zelio Smart Relay ..................................................................................................... 10

2.3.1 Function Logic Diagram ..................................................................................... 11

2.3.2. Input/Output Data Words Exchange .................................................................. 15

2.3.3. Modbus TCP/IP .................................................................................................. 16

2.4. Network Switch ........................................................................................................ 17

2.5. Kabel HDMI to VGA ............................................................................................... 18

2.6. Monitor ..................................................................................................................... 18

2.7. Keyboard ................................................................................................................... 19

2.8. Mouse ........................................................................................................................ 19

2.9 Persamaan Perhitungan Rata-Rata ............................................................................. 20

BAB III RANCANGAN PENELITIAN ............................................................................. 21

3.1. Model Sistem ............................................................................................................ 22

3.2. Kebutuhan Perangkat ................................................................................................ 22

3.2.1. Kebutuhan Perangkat Keras ............................................................................... 23

3.2.2. Kebutuhan Perangkat Lunak .............................................................................. 23

3.3. Perancangan Perangkat Keras ................................................................................... 24

3.4. Perancangan Perangkat Lunak .................................................................................. 24

3.4.1. Perancangan Data Antarmuka ............................................................................ 24

3.4.2. Perancangan GUI Tkinter .................................................................................. 30

3.4.3. Perancangan Menu Utama ................................................................................. 30

3.4.4. Perancangan Menu Setting ................................................................................. 33

3.4.5. Perancangan Menu Monitoring .......................................................................... 37

3.4.6. Perancangan Menu Loging ................................................................................ 41

BAB IV HASIL DAN PEMBAHASAN ............................................................................. 44

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 13: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

xiii

4.1. Implementasi Sistem ................................................................................................ 44

4.1.1. Perubahan Sensor ............................................................................................... 44

4.1.2. Implementasi Plant Sistem ................................................................................. 45

4.1.3. Implementasi GUI Tkinter ................................................................................. 46

4.2. Pengujian dan Analisis Data Sistem ......................................................................... 49

4.2.1. Pengujian dan Analisis Menu Utama ................................................................. 49

4.2.2. Pengujian dan Analisis Menu Setting ................................................................ 50

4.2.3. Pengujian dan Analisis Menu Monitoring ......................................................... 64

4.2.4. Pengujian dan Analisis Menu Logging .............................................................. 70

4.3. Pembahasan Perangkat Lunak .................................................................................. 82

4.3.1. Pembahasan Program di Zelio Soft .................................................................... 82

4.3.2. Pembahasan Rancangan IP Address .................................................................. 84

4.3.3. Pembahasan pyModbus TCP ............................................................................. 86

4.3.4. Pembahasan Program Perangkat Lunak ............................................................. 87

BAB V KESIMPULAN .................................................................................................... 105

5.1. Kesimpulan ............................................................................................................. 105

5.2. Saran ....................................................................................................................... 106

DAFTAR PUSTAKA ........................................................................................................ 107

LAMPIRAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 14: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

xiv

DAFTAR GAMBAR

Halaman

Gambar 1.1 Diagram Perancangan Sistem ........................................................................... 4

Gambar 2.1 Bentuk Fisik Jamur Tiram ................................................................................. 6

Gambar 2.2 Raspberry Pi 3 ................................................................................................... 8

Gambar 2.3 GPIO Raspberry Pi 3 ......................................................................................... 8

Gambar 2.4 Logo Python ...................................................................................................... 9

Gambar 2.5 Zelio Smart Relay ............................................................................................ 10

Gambar 2.6 Tipe Discrete Input .......................................................................................... 11

Gambar 2.7 Tipe Analog Input ............................................................................................ 12

Gambar 2.8 Tipe Input Integer ............................................................................................ 12

Gambar 2.9 Tipe Output Integer ........................................................................................ 12

Gambar 2.10 Discrete Output ............................................................................................. 12

Gambar 2.11 Logic Functions ............................................................................................. 13

Gambar 2.12 Word to Bit Conversion ................................................................................. 13

Gambar 2.13 Bit to Word Conversion ................................................................................. 14

Gambar 2.14 Multiplexing .................................................................................................. 14

Gambar 2.15 Up/Down Counter .......................................................................................... 14

Gambar 2.16 Window Edit .................................................................................................. 15

Gambar 2.17 Input/Output Extension Modul Komunikasi Zelio ........................................ 16

Gambar 2.18 Modul Modbus TCP Zelio ............................................................................. 17

Gambar 2.19 Network Switch dan Pengiriman data ........................................................... 17

Gambar 2.20 Kabel HDMI to VGA .................................................................................... 18

Gambar 2.21 Monitor .......................................................................................................... 18

Gambar 2.22 Keyboard........................................................................................................ 19

Gambar 2.23 Mouse ............................................................................................................ 19

Gambar 3.1 Plant Sistem Monitoring Kumbung Jamur ..................................................... 21

Gambar 3.2 Model Sistem Monitor dan Kontrol Kumbung Jamur Tiram .......................... 22

Gambar 3.3 Diagram Data Read Antarmuka ...................................................................... 28

Gambar 3.4 Diagram Data Write Antarmuka ..................................................................... 29

Gambar 3.5 Fitur Tkinter GUI ............................................................................................ 30

Gambar 3.6 Halaman Menu Utama .................................................................................... 31

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 15: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

xv

Gambar 3.7 Diagram Alir Utama ............................................................................................ 32

Gambar 3.8 Halaman Menu Setting ................................................................................... 33

Gambar 3.9 Subrutin Proses Setpoint Suhu Dan Kelembaban ........................................... 35

Gambar 3.10 Subrutin Proses Pembacaan Setpoint Suhu Dan Kelembaban ..................... 35

Gambar 3.11 Subrutin Proses Set Aktuator ......................................................................... 36

Gambar 3.12 Subrutin Proses Pengaturan Tombol Enable ................................................ 37

Gambar 3.13 Halaman Menu Monitor ............................................................................... 38

Gambar 3.14 Subrutin Proses Monitor Suhu ...................................................................... 39

Gambar 3.15 Subrutin Proses Monitor Kelembaban ........................................................... 39

Gambar 3.16 Subrutin Proses Status Aktuator ................................................................... 40

Gambar 3.17 Subrutin Proses Interval Monitor Data ......................................................... 41

Gambar 3.18 Halaman Menu Logging ............................................................................... 42

Gambar 3.19 Subrutin Proses Data Logging ....................................................................... 43

Gambar 4.1 Potensiometer ................................................................................................. 44

Gambar 4.2 Plant Sistem .................................................................................................... 45

Gambar 4.3 Menu Utama ................................................................................................... 47

Gambar 4.4 Menu Setting ................................................................................................... 47

Gambar 4.5 Menu Monitor ................................................................................................. 48

Gambar 4.6 Menu Logging ................................................................................................ 48

Gambar 4.7 LED Tombol Enable ....................................................................................... 64

Gambar 4.8 LED dan Tombol ............................................................................................ 64

Gambar 4.9 Interval Waktu 5 detik ................................................................................... 67

Gambar 4.10 Interval Waktu 10 detik ................................................................................ 68

Gambar 4.11 Interval Waktu 15 detik ................................................................................ 69

Gambar 4.12 Pemilihan Interval Waktu ............................................................................. 70

Gambar 4.13 Penyimpanan Nama File Otomatis ............................................................... 71

Gambar 4.14 Interval 5 Data 5 Detik ................................................................................. 72

Gambar 4.15 Interval 15 Data 5 Detik .............................................................................. 72

Gambar 4.16 Interval 20 Data 5 Detik .............................................................................. 73

Gambar 4.17 Interval 5 Data 10 Detik .............................................................................. 73

Gambar 4.18 Interval 5 Data 15 Detik .............................................................................. 74

Gambar 4.19 Interval 15 Data 10 Detik ............................................................................ 75

Gambar 4.20 Interval 15 Data 15 Detik ............................................................................ 75

Gambar 4.21 Interval 20 Data 10 Detik ............................................................................. 76

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 16: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

xvi

Gambar 4.22 Interval 20 Data 15 Detik 10 ........................................................................ 76

Gambar 4.23 Perubahan Pemilihan Data Turun .................................................................. 77

Gambar 4.24 Dialog Window Open File ........................................................................... 78

Gambar 4.25 Open File CSV .............................................................................................. 79

Gambar 4.26 Dialog Window Tampilkan Plot ................................................................... 79

Gambar 4.27 Tampilan Plot Dalam Grafik ........................................................................ 80

Gambar 4.28 Tampilan Hasil Entry Data Plot .................................................................... 81

Gambar 4.29 Tampilan Hasil Tombol Kanan Plot ............................................................ 81

Gambar 4.30 Tampilan Hasil Tombol Kiri Plot ................................................................. 82

Gambar 4.31 Program Sistem Jarak Jauh di Zelio .............................................................. 83

Gambar 4.32 Program Sistem Lokal di Zelio ..................................................................... 83

Gambar 4.34 Konfigurasi IP Address Raspberry Pi ........................................................... 85

Gambar 4.35 IP Address Statis Raspberry Pi ..................................................................... 85

Gambar 4.36 Konfigurasi IP Address di Zelio ................................................................... 85

Gambar 4.37 Init Pemrograman Modbus TCP ................................................................... 86

Gambar 4.38 Pemanggilan Modul Modbus TCP ............................................................... 86

Gambar 4.39 Pemanggilan Modul Program ....................................................................... 87

Gambar 4.40 Pemanggilan Fungsi Untuk Frame ................................................................ 87

Gambar 4.41 Pemanggilan Fungsi Setpoint Suhu .............................................................. 88

Gambar 4.42 Pemanggilan Fungsi Setpoint Kelembaban .................................................. 89

Gambar 4.43 Pemanggilan Fungsi Tombol Enable ............................................................ 89

Gambar 4.44 Pemanggilan Fungsi Set Pemanas ................................................................ 90

Gambar 4.45 Pemanggilan Fungsi Set Pompa ................................................................... 90

Gambar 4.46 Pemanggilan Fungsi Kondisi On/Off Aktuator ............................................ 91

Gambar 4.47 Init Variable Monitoring ............................................................................... 91

Gambar 4.48 Pemanggilan Fungsi Pemilihan Interval Waktu ........................................... 92

Gambar 4.49 Pemangilan Fungsi Menampilkan File ......................................................... 92

Gambar 4.50 Pemanggilan Fungsi Menampilkan Plot ....................................................... 93

Gambar 4.51 Pemanggilan Fungsi Nilai Plot ..................................................................... 93

Gambar 4.52 Pemanggilan Fungsi Plot Kanan dan Kiri .................................................... 93

Gambar 4.53 Init Variable Logging ................................................................................... 94

Gambar 4.54 Pemanggilan Fungsi Interval Logging .......................................................... 94

Gambar 4.55 Init Waktu ..................................................................................................... 95

Gambar 4.56 Program Penyimpanan Berdasar Tanggal .................................................... 95

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 17: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

xvii

Gambar 4.57 Program Pembacaan Setpoint Suhu dan Kelembaban Lokal ....................... 96

Gambar 4.58 Program Interval Waktu Nilai Suhu dan Kelembaban ................................. 96

Gambar 4.59 Program Interval Waktu Status Aktuator ..................................................... 97

Gambar 4.60 Program Interval Logging dan Perhitungan Rataan ..................................... 98

Gambar 4.61 Program Penyimpanan Data ......................................................................... 98

Gambar 4.62 Tampilan GUI Menu Utama ......................................................................... 99

Gambar 4.63 Program GUI Menu Utama ........................................................................... 99

Gambar 4.64 Tampilan GUI Setting ................................................................................. 100

Gambar 4.65 Program GUI Menu Setting ........................................................................ 101

Gambar 4.66 Program Button Menu Setting .................................................................... 101

Gambar 4.67 Tampilan GUI Menu Monitoring ............................................................... 102

Gambar 4.68 Program GUI Menu Monitoring ................................................................. 102

Gambar 4.69 Program Radiobutton Monitoring ............................................................... 103

Gambar 4.70 Tampilan GUI Menu Logging .................................................................... 103

Gambar 4.71 Tampilan Window Plot ............................................................................... 104

Gambar 4.72 Program GUI Menu Logging ..................................................................... 104

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 18: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

xviii

DAFTAR TABEL

Halaman

Tabel 2.1 Tabel model Raspberry Pi .................................................................................... 7

Tabel 2.2 Input/Output Zelio dan Modbus Register ........................................................... 16

Tabel 3.1 Tabel Read/Write Data Antarmuka ..................................................................... 25

Tabel 3.2 Modbus Register Input ....................................................................................... 25

Tabel 3.3 Perancangan Write Data Register 18 ................................................................... 25

Tabel 3.4 Tabel 3.4 Modbus Register Output ..................................................................... 26

Tabel 3.5 Tabel 3.5 Perancangan Write Data Register 16................................................... 26

Tabel 3.6 Perancangan Write Data Register 17 .................................................................. 27

Tabel 4.1 Keterangan Plant Sistem ..................................................................................... 45

Tabel 4.2 Hasil Pengujian Menu Utama ............................................................................. 49

Tabel 4.3 Data Pengujian Setpoint Suhu ................................................................................ 50

Tabel 4.4 Hasil Pengujian Setpoint Suhu ........................................................................... 51

Tabel 4.5 Pengujian Setpoint Kelembaban ......................................................................... 52

Tabel 4.6 Hasil Uji Setpoint Kelembaban .......................................................................... 53

Tabel 4.7 Data Pengujian Pembacaan Setpoint Suhu ........................................................ 55

Tabel 4.8 Hasil Uji Pembacaan Setpoint Suhu dan Kelembaban ....................................... 55

Tabel 4.9 Data Pengujian Pembacaan Setpoint Kelembaban ............................................. 56

Tabel 4.10 Set Pemanas Kondisi Awal On ........................................................................ 57

Tabel 4.11 Set Pemanas Kondisi Awal Off ........................................................................ 57

Tabel 4.12 Hasil Uji Set Pemanas Kondisi Awal 1 ............................................................. 58

Tabel 4.13 Hasil Uji Set Pemanas Kondisi Awal 0 ............................................................ 58

Tabel 4.14 Set Pompa Kondisi On ..................................................................................... 60

Tabel 4.15 Set Pompa Kondisi Off ..................................................................................... 61

Tabel 4.16 Hasil Uji Set Pompa Kondisi Awal 1 ............................................................... 61

Tabel 4.17 Hasil Uji Set Pompa Kondisi Awal 0 ............................................................... 61

Tabel 4.18 Pengujian Bagian Tombol Enable .................................................................... 63

Tabel 4.19 Perancangan FBD .............................................................................................. 65

Tabel 4.20 Hasil Uji Monitoring ........................................................................................ 65

Tabel 4.21 Hasil Uji Monitoring di GUI ............................................................................ 66

Tabel 4.22 Data 29-08-2018.csv ........................................................................................ 71

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 19: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

1

BAB I

PENDAHULUAN

1.1. Latar Belakang

Teknologi turut berperan penting dalam perkembangan peradaban manusia.

Teknologi adalah keseluruhan sarana untuk menyediakan barang-barang yang diperlukan

bagi kelangsungan dan kenyamanan hidup manusia [1]. Manusia menciptakan dan

mengembangkan teknologi untuk membuat kehidupan manusia menjadi lebih baik.

Dengan kehadiran teknologi yang semakin modern, manusia bisa bertukar informasi

dalam hitungan detik. Bandingkan dengan media yang diperlukan untuk bertukar informasi

seperti surat, yang bisa memakan waktu berhari-hari, bahkan berminggu-minggu untuk

bisa diterima. Hal ini menunjukkan bahwa semakin berkembang teknologi, maka hidup

manusia semakin mendapat kemudahan.

Dengan semakin tingginya laju mobilitas manusia, maka perlu diimbangi dengan

teknologi yang bisa mengiringinya. Teknologi jarak jauh menjadi salah satu jawabannya,

yaitu teknologi yang memungkinkan manusia untuk selalu terhubung dengan yang lainnya,

kapanpun dan dimanapun berada. Teknologi jarak jauh ini telah diterapkan dalam berbagai

bidang, yaitu baik dalam bidang pertahanan, keamanan, ekonomi, industri, maupun

pertanian.

Dalam bidang pertanian secara khususnya, teknologi ini telah dipakai untuk

memonitor dan mengontrol irigasi, pengendalian proses manufaktur pupuk, serta

pengendalian dan pemantauan sistem dalam manufaktur tepung [2]. Bidang pertanian

menghasilkan produk-produk yang menjadi konsumsi utama manusia, contohnya padi,

kedelai, gandum, jamur. Secara khusus untuk produk jamur, peminatan masyarakat

terhadap produk pertanian ini meningkat dari tahun ketahun. Banyaknya orang yang telah

terjun ke dalam dunia budidaya jamur ternyata tetap belum bisa mengimbangi permintaan

pasar yang tinggi terhadap produk jamur. Hal ini dikarenakan masih banyak petani jamur

yang melakukan pembudidayaan jamur dengan pemeliharaan secara manual [3].

Dalam pembudidayaan jamur, khususnya pada jamur tiram, pemeliharaannya

memerlukan perlakukan yang khusus. Ada beberapa faktor lingkungan yang

mempengaruhi tumbuh kembang jamur tiram, diantaranya adalah suhu dan kelembaban.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 20: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

2

Pemeliharaan yang tidak maksimal terhadap jamur tiram akan menyebabkan jamur tiram

tidak bertumbuh dan berkembang dengan maksimal, dan hal ini dapat mengakibatkan

turunnya kualitas dan kuantitas produksi jamur. Pemeliharaan dengan cara manual adalah

kurang efektif, karena petani harus sering mengecek kondisi suhu dan kelembaban,

kemudian melakukan penanganan manual terhadap kondisi yang terjadi tersebut, yaitu

menghidupkan aktuator secara manual. Hal ini tentu saja akan membuang waktu, dan

tenaga.

Pada penelitian sebelumnya, telah ada penelitian yang menjaga suhu dan kelembaban

pada kumbung jamur tiram menggunakan Zelio Smart Relay. Zelio ini kemudian akan

mengontrol keluaran aktuator secara otomatis berdasarkan suhu dan kelembaban yang

terjadi [4]. Namun sistem kendali dalam penelitian tersebut masih bersifat lokal, yaitu

belum bisa dimonitor dan diatur dari jarak jauh. Sistem lokal ini masih menggunakan

tombol-tombol yang harus ditekan dari jarak dekat, dan belum memiliki tampilan yang

user friendly untuk mengetahui kondisi-kondisi yang sedang terjadi dalam kumbung jamur

tiram.

Raspberry Pi adalah suatu teknologi berukuran mini yang memiliki fungsi utama

sebagai komputer, namun juga bisa dipakai sebagai mikrokontroler. Didalam Raspberry Pi

ini terdapat layanan-layanan untuk membuat program berbasis grafis, termasuk didalamnya

pembuatan Graphical User Interface (GUI). GUI ini kemudian dapat dipakai oleh user

untuk mengoperasikan sistem dari jarak jauh.

Dari permasalahan diatas, maka dirancanglah pengembangan dari metode sistem

kendali lokal Zelio tersebut. Pengembangan ini adalah sebuah sistem berbasis Raspberry Pi

3 yang dapat memonitor dan termasuk didalamnya dapat melakukan pengaturan terhadap

nilai setpoint suhu dan kelembaban serta aktuator dalam kumbung jamur tiram dan dapat

melakukan logging. Dengan adanya sistem monitor ini, suhu dan kelembaban serta

aktuator dapat dimonitor dan diseting dan dilogging dari jarak jauh.

1.2. Tujuan dan Manfaat

Tujuan dari penelitian ini adalah menciptakan alat untuk memonitor sistem secara

jarak jauh pada kumbung jamur tiram dengan menggunakan Raspberry Pi 3. Manfaat yang

ingin dicapai dari penelitian ini yaitu:

1. Memudahkan petani jamur tiram untuk memonitor kondisi suhu, kelembaban dan

status aktuator pada kumbung jamur tiram.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 21: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

3

2. Memudahkan petani jamur untuk melakukan pengaturan terhadap nilai setpoint suhu

dan kelembaban, serta aktuator pada kumbung jamur tiram

3. Memudahkan petani jamur untuk melakukan logging data dan melihat data dalam plot

grafik.

4. Mengembangkan penelitian tentang sistem monitor pada kumbung jamur tiram yang

sudah ada.

1.3. Batasan Masalah

Pembatasan masalah perlu dilakukan agar tugas akhir ini tetap mengarah pada tujuan,

dan menghindari kompleksnya permasalahan-permasalahan lain yang muncul. Batasan

masalah tersebut adalah sebagai berikut:

1. Sistem kendali lokal kumbung jamur yang digunakan memiliki jangkauan pengukuran

batas atas dan batas bawah suhu 00C - 400C dan kelembaban 0% - 100% [4].

2. Prototipe kumbung jamur akan menggunakan prototipe yang sudah ada.

3. Menggunakan Zelio Smart Relay untuk mengendalikan sistem lokal kumbung jamur

4. Menggunakan Modbus TCP/IP sebagai protokol komunikasi antara Raspberry Pi

dengan Zelio.

5. Perancangan GUI untuk memonitor dan melakukan penyetingan adalah berbasis

Raspberry Pi 3.

6. Monitoring akan mencakup pemantauan terhadap nilai suhu, nilai kelembaban dan

status aktuator.

7. Penyetingan akan mencakup pengaturan nilai suhu batas atas (ba) dan batas bawah (bb)

pada suhu dan kelembaban, pengaturan perintah on/off aktuator dari GUI, pembacaan

ba dan bb sistem lokal Zelio, serta pengaturan on/off tombol enable dari GUI.

8. Logging data dapat disimpan dalam bentuk file dan dapat ditampilkan dalam bentuk

plot grafik

1.4. Metodologi Penelitian

Pengerjaan tugas akhir ini terbagi menjadi beberapa tahap sebagai berikut:

1. Studi Literatur

Studi literatur dilakukan untuk mencari dan mengumpulkan bahan-bahan referensi

sebagai acuan dalam melakukan penelitian. Referensi yang dikumpulkan adalah

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 22: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

4

mengenai pemrograman menggunakan Raspberry Pi 3, Modbus TCP, GUI dan Zelio

Smart Relay, perangkat komputer, serta tentang kumbung jamur tiram.

2. Perancangan Sistem

Perancangan sistem dilakukan untuk mencari bentuk model yang optimal sesuai

dengan batasan masalah agar konsep yang dibuat menjadi semakin jelas.

Gambar 1.1 Diagram Perancangan Sistem

Diagram yang berada didalam kotak putus-putus adalah diagram dari sistem kendali

lokal kumbung jamur berbasis Zelio Smart Relay, sedangkan diagram yang berada di

Raspberry PI

Mouse

Keyboard Monitor

Kabel HDMI

Network Switch

Modul Modbus TCP

ZELIO

Smart Relay

Pompa Air

Pemanas

Sensor Suhu

Sensor Kelembaban

Sistem Kendali Lokal

Sistem Monitor Jarak Jauh

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 23: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

5

kotak biru adalah pengembangannya sistemnya, yaitu sistem monitor jarak jauh

berbasis Raspberry Pi 3 pada kumbung jamur tiram, yang dapat memonitor dan

melakukan beberapa pengaturan secara jarak jauh.

Perancangan sistem ini meliputi perancangan perangkat lunak dan perangkat keras.

Pada perancangan perangkat ini, akan dilakukan perancangan terhadap kebutuhan

perangkat yang mendukung sistem yang akan dibuat.

3. Implementasi

Pada tahap ini, akan dilakukan implementasi terhadap rancangan-rancangan yang

dibuat, baik itu rancangan perangkat lunak maupun rancangan hardware. Rancangan-

rancangan ini akan diintegrasikan untuk membentuk sistem secara keseluruhan.

4. Uji Coba dan Pengambilan Data

Setelah tahap implementasi, kemudian akan dilakukan proses uji coba dan

pengambilan data. Pengujian ini akan dilakukan pada proses pengiriman data dan

penerimaan data dari Raspberry Pi 3 dan Zelio Smart Relay. Pengujian proses

monitoring dapat dilakukan dengan membaca data yang dikirimkan dari Zelio ke

Raspberry Pi yang akan ditampilkan di GUI Raspberry Pi. Pada logging data, akan

dilihat visualisasi data yang disimpan dan ditampilkan dalam bentuk file dan plot di

Raspberry Pi.

Pada pengujian proses seting/pengaturan dapat dilakukan dengan mengirim suatu

perintah dari GUI Raspberry Pi 3 ke Zelio, kemudian dilihat kesesuaian data yang

dikirimkan dengan data yang diterima. Selanjutnya, dilakukan pengambilan data

sebagai suatu acuan keberhasilan dari sistem yang telah dibuat.

5. Analisa Data dan Pengambilan Kesimpulan

Data-data yang didapatkan dari pengujian sistem kemudian akan dianalisis sebagai

acuan dan pembanding untuk melihat seberapa besar error pada sistem yang dibuat.

Hasil analisis ini akan digunakan untuk menulis kesimpulan akhir dari sistem yang

telah dibuat.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 24: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

6

BAB II

DASAR TEORI

2.1. Jamur Tiram

Jamur tiram (Pleurotus ostreatus) adalah jamur pangan dari kelompok Basidiomycota

dan termasuk kelas Homobasidiomycetes dengan ciri-ciri umum tubuh buah berwarna putih

hingga krem dan tudungnya berbentuk setengah lingkaran mirip cangkang tiram dengan

bagian tengah agak cekung [5]. Bagian tudung dari jamur tersebut berubah warna dari hitam,

abu-abu, coklat, hingga putih, dengan permukaan yang hampir licin, diameter 5-20 cm yang

bertepi tudung mulus sedikit berlekuk. Selain itu, jamur tiram juga memiliki spora (bibitnya)

berbentuk batang serta miselia berwarna putih yang bisa tumbuh dengan cepat [6]. Gambar

2.1 menunjukkan bentuk fisik dari Jamur Tiram.

Gambar 2.1 Bentuk Fisik Jamur Tiram [6]

2.1.1 Klasifikasi Jamur Tiram

Klasifikasi dari jamur tiram adalah sebagai berikut [7]:

1. Kingdom: Fungi

2. Filum: Basidiomycota

3. Kelas: Homobasidiomycetes

4. Ordo: Agaricales

5. Family: Tricholomatacea

6. Genus: Pleurotus

7. Spesies: P. ostreatus

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 25: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

7

2.1.2 Syarat Tumbuh Kembang Jamur Tiram

Pertumbuhan Jamur Tiram dipengaruhi oleh beberapa faktor. Syarat lingkungan

untuk pertumbuhan dan perkembangan yang dibutuhkan oleh jamur tiram antara lain air,

suhu, kelembaban, cahaya, serta tingkat keasaman. Secara khusus untuk suhu dan

kelembaban, agar pertumbuhan jamur menjadi optimal maka diperlukan suhu ruangan dalam

kumbung 22 - 28°C dan kelembaban sebesar 60-80% pada saat inkubasi. Sedangkan suhu

pada pembentukan tubuh buah sampai panen berkisar antara 16-22 °C dengan kelembaban

80-90%. Apabila kelembaban kurang, maka substrat tanaman akan mengering [5].

2.2 Raspberry Pi 3

Raspberry Pi adalah komputer papan tunggal yang berukuran kecil. The Raspberry Pi

is a credit-card-sized computer that plugs into your TV and a keyboard. It is a capable little

computer which can be used in electronics projects, and for many of the things that your

desktop PC does, like spreadsheets, word processing, browsing the internet, and playing

games. It also plays high-definition video [9].

Model-model dari Raspberry Pi diperlihatkan pada tabel 2.1.

Tabel 2.1 Tabel model Raspberry Pi [9]

2.2.1 Arsitektur Hardware Raspberry Pi 3

Raspberry Pi 3 Model B yang akan digunakan dalam penelitian ini akan menggunakan

SOC BCM2837. SOC/System On Chip adalah metode menempatkan seluruh perangkat-

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 26: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

8

perangkat elektronik untuk menjalankan sebuah komputer dalam satu single chip. Gambar

2.2 memperlihatkan mengenai bentuk fisik Raspberry Pi 3.

Didalam chip BCM2837 terdapat Quad-core Arm Cortex-A53 CPU yang memiliki

kecepatan 1.2Ghz dan RAM sebesar 1GB. Raspberry Pi 3 Model B memiliki empat port

USB, port Ethernet dan telah mendukung Bluetooth/wireless LAN.

GPU/Graphics Porcessing Unit adalah hardware yang menangani masalah grafis.

GPU dari Raspberry Pi 3 telah memiliki kemampuan grafis yang tinggi. GPU ini mampu

memutar video dengan format blue-ray.

Gambar 2.2 Raspberry Pi 3 [10]

Gambar 2.3 GPIO Raspberry Pi 3 [11]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 27: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

9

Gambar 2.3 menunjukkan GPIO Raspberry Pi 3. GPIO/General Purpose Input Output

adalah pin-pin yang dapat diprogram untuk melakukan berbagai tugas. Misalnya jika

Raspberry digunakan sebagai mikrokontroler untuk menyalakan LED, maka LED ini akan

dihubungkan ke pin GPIO tersebut. Raspberry Pi 3 memiliki 40 buah pin GPIO.

2.2.2 Sistem Operasi di Raspberry

Sistem Operasi (OS) yang bisa digunakan di Raspberry Pi 3 antara lain adalah

Windows 10 IoT Core, RISC OS Pi, Raspbian OS. Raspbian OS ini adalah sistem operasi

resmi dari Raspberry Pi Foundation. OS ini berbasis Debian Linux dan dioptimisasi khusus

untuk hardware Raspberry Pi [12]. Didalam Raspbian OS terdapat software yang sudah

diinstal seperti Python, Java, Sratch, dan telah mendukung GUI.

2.2.3 Pemrograman Raspberry Pi 3

Raspberry Pi memiliki beberapa bahasa pemrograman, diantaranya adalah bahasa

C/C++, Python, Java, Scratch, dan Ruby. Pemrograman Raspberry Pi yang digunakan dalam

penelitian ini adalah Python. Python adalah bahasa pemrograman tingkat tinggi dengan

semantic dinamis yang berorientasi pada obyek. Python juga adalah bahasa pemrograman

interpreter multiguna [13]. Gambar 2.4 memperlihatkan logo Python.

Gambar 2.4 Logo Python [13]

2.2.4 GUI Raspberry Pi 3

GUI adalah singkatan dari Graphical User Interface. GUI adalah antarmuka pada

sistem operasi yang menggunakan menu grafis atau tampilan dengan maksud memudahkan

pengguna (user) dalam menggunakan/mengoperasikan sistem operasi tersebut [14]. Dengan

GUI, user dapat berinteraksi dengan menggunakan text boxes, check boxes, buttons, dan

widget user interface lainnya. Beberapa GUI yang bisa digunakan di Raspberry Pi adalah

easyGUI, Wxphyton, Qt, dan Tkinter. Tkinter adalah GUI standar dari python interface.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 28: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

10

2.3 Zelio Smart Relay

Smart relay menggantikan logika dan pengerjaan sirkuit kontrol relay yang merupakan

instalasi langsung pada aplikasi sistem otomasi sederhana. Dengan smart relay rangkaian

kontrol cukup dibuat secara software [15]. Zelio adalah Smart Relay yang dibuat oleh

Schneider Telemecanique.

Zelio Smart Relay memiliki dua model yaitu model Compact dan model Modular.

Model ini diperlihatkan pada gambar 2.5 (a) model dengan display atau Modular dan (b)

model tanpa display atau Compact. Pada model Modular, jika diperlukan dapat ditambahkan

modul I/O tambahan (expansion I/O modules), baik I/O diskrit maupun I/O analog. Salah

satu modul yang dapat ditambahkan adalah modul komunikasi Modbus.

Gambar 2.5 Zelio Smart Relay

Keterangan :

1. Dua lubang dudukan pengikat.

2. Dua terminal power suplay.

3. Koneksi terminal input.

4. Layar display LCD untuk mengontrol dan memonitor.

5. Slot untuk koneksi interface ke PC.

6. Enam tombol untuk memrogram dan memasukan parameter.

7. Koneksi terminal output.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 29: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

11

Pemrograman pada Zelio Smart Relay dapat dilakukan dengan dua cara, yaitu

menggunakan programming console (disediakan layar dan tombol program yang terintegrasi

pada perangkat Zelio) atau menggunakan bantuan PC (personal computer) [15].

2.3.1 Function Logic Diagram

Pembuatan dan pernacangan program di Zelio Smart Relay dapat dilakukan dengan

dua cara, yaitu melalui Ladder Diagram (LD) atau Function Block Diagram (FBD). Berikut

adalah beberapa fitur dalam pemrograman FBD [16]:

1. Discrete Input

Tipe discrete input ini dapat dipilih dari window Parameters. Discrete input

mengenali kondisi input 1 untuk on dan 0 untuk off. Gambar 2.6 menunjukkan tipe

Discrete Input di FBD.

Gambar 2.6 Tipe Discrete Input [16]

2. Analog Input dan Integer Input

Tegangan input analog (0 sampai 10V) dikonversikan kedalam nilai digital integer

dengan 8 bit analog/digital konverter. Nilai outputnya adalah 0 sampai 255. Tipe

Analog Input di FBD diperlihatkan dalam gambar 2.7.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 30: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

12

Gambar 2.8 memperlihatkan tipe Input Integer di FBD. Input Integer memiliki

nilai (16 bit) antara -32768 and +32767.

Gambar 2.7 Tipe Analog Input [16]

Gambar 2.8 Tipe Input Integer [16]

3. Discrete Output dan Integer Output

Gambar 2.9 memperlihatkan tipe ouput Integer di FBD. Input Integer memiliki

nilai (16 bit) antara -32768 and +32767.

Gambar 2.9 Tipe Output Integer

Gambar 2.10 Discrete Output

Gambar 2.10 menunjukkan mengenai discrete output. Output yang dihasilkan dari

tipe discrete ini adalah kondisi 1 dan 0.

4. Logic Functions

Dalam FBD terdapat beberapa fungsi logic yang dapat diakses di window Logic.

Gambar 2.11 menunjukkan Logic Functions di FBD.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 31: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

13

Gambar 2.11 Logic Functions [16]

5. Word to Bit dan Bit to Word Conversion

Word to Bit Conversion dapat memecah input tipe integer (16 bit) menjadi output

tipe 16 bit. Gambar 2.12 memperlihatkan mengenai Word to Bit Conversion di

FBD.

Gambar 2.12 Word to Bit Conversion [16]

Bit to Word Conversion seperti yang ditunjukkan dalam gambar 2.13 memiliki

fungsi untuk menghasilkan output bertipe integer (16 bit) dari input tipe 16 bit.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 32: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

14

Gambar 2.13 Bit to Word Conversion [16]

6. Multiplexing (MUX)

Multiplexing ditunjukkan dalam Gambar 2.14. Multiplexing memiliki satu

selektor dan dua saluran input dengan satu output. Input MUX ini memiliki jenis

tipe data integer.

Gambar 2.14 Multiplexing [16]

7. Up/Down Counter

Up/Down Counter dapat melakukan penghitungan naik maupun turun. Pada preset

forcing, jika diisi dengan kondisi 1 maka nilai input counter yang berlaku adalah

yang tersedia dari preset value. Gambar 2.15 memperlihatkan mengenai Up/Down

Counter.

Gambar 2.15 Up/Down Counter [16]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 33: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

15

8. FBD Program Edit Window

Gambar 2.16 memperlihatkan tentang Program Edit Window di FBD.

Gambar 2.16 Window Edit [16]

2.3.2 Inputs/Outputs Data Words Exchange

Zelio Smart Relay memiliki empat buah register yang dapat digunakan untuk mode

write/read dan empat buah register untuk mode read. Register write/read ini dimulai dari

register enam belas sampai sembilan belas, sedangkan register read dimulai dari register dua

puluh sampai dua puluh tiga. Register yang dapat digunakan untuk write/read ini berfungsi

sebagai input yang berada pada J1XT1 sampai J4XT1, sedangkan Register read-only yang

berfungsi sebagai output berada pada O1XT1 sampai O4XT1. Input dan Output ini dapat

diakses jika menggunakan mode extension dengan modul komunikasi. Tabel 2.2

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 34: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

16

menunjukkan alamat input/output dan Modbus Register Zelio. Gambar 2.17 menunjukkan

input/output ekstensi dari Modul Komunikasi Ethernet Zelio.

Tabel 2.2 Input/Output Zelio dan Modbus Register [17]

Request Modbus Modbus Registers Input/Output Zelio

Read/Write 4 words

(16bits) Zelio

Word 16 J1XT1

Word 17 J2XT1

Word 18 J3XT1

Word 19 J4XT1

Read 4 words (16 bits)

Zelio

Word 20 O1XT1

Word 21 O2XT1

Word 22 O3XT1

Word 23 O4XT1

Gambar 2.17 Input/Output Extension Modul Komunikasi Zelio [17]

2.3.3 Modbus TCP/IP

Modbus memungkinkan adanya komunikasi dua-jalur antar perangkat yang terhubung

ke jaringan yang sama, misalnya suatu sistem yang mengukur suhu dan kelembaban dan

mengkomunikasikan hasilnya ke komputer (HMI) [18]. Modbus TCP/IP atau Modbus TCP

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 35: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

17

hanya bisa digunakan untuk komunikasi melalui jaringan TCP/IP atau umumnya dikenal

dengan jaringan LAN.

Zelio Modular Smart Relay terhubung dengan jaringan ethernet melalui modul

komunikasi server ethernet. Modul komunikasi dengan tipe SR3NET01BD ini

memungkinkan komunikasi terjadi pada jaringan ethernet dibawah protokol modbus TCP.

Modul Modbus TCP Zelio ditunjukkan dalam gambar 2.18

Gambar 2.18 Modul Modbus TCP Zelio [19]

2.4 Network Switch

Network Switch adalah sebuah perangkat jaringan pada komputer yang

menghubungkan perangkat pada sebuah jaringan komputer dengan menggunakan

pertukaran paket untuk menerima, memproses dan meneruskan data ke perangkat yang

dituju [20].

Switch berfungsi untuk mengirimkan data ke lokasi yang dituju. Switch memiliki

beberapa port yang digunakan untuk menguhubungkan computer, diantaranya yaitu 8 port,

16 port, atau 24 port. Gambar 2.19 menunjukkan mengenai Network Switch dan pengiriman

datanya.

Gambar 2.19 Network Switch Dan Pengiriman Data [20]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 36: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

18

2.5 Kabel HDMI to VGA

Kabel VGA adalah kabel yang berfungi sebagai konektor yang membawa sinyal video

analog hasil pengolahan data komputer ke monitor. Sedangkan kabel HDMI adalah kabel

konektor yang sering digunkan pada HDTV, Apple TV, dan komputer [21].

Kabel Konverter adalah salah satu kabel yang berfungsi untuk menghubungkan input

dan output pada port yang berbeda. Tidak semua perangkat komputer mendukung atau

memiliki jenis port yang sama. Oleh karena itu, dalam hal ini diperlukan kabel konverter

HDMI to VGA. Kabel konverter tersebut ditunjukkan dalam gambar 2.20.

Gambar 2.20 Kabel HDMI to VGA [21]

2.6 Monitor

Fungsi dari Monitor adalah untuk menampilkan video dan informasi grafis yang

dihasilkan dari komputer melalui alat yang disebut kartu grafis ( VGA Card ). Bentuk fisik

dari monitor hampir sama dengan televisi. Gambar 2.21 menunjukan bentuk fisik dari

Monitor.

Gambar 2.21 Monitor [22]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 37: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

19

2.7 Keyboard

Keyboard dapat diartikan sebagai salah satu perangkat input komputer yang berisi

susunan huruf, angka, dan fungsi kontrol yang lain. Meskipun bukan satu-satunya perangkat

input pada komputer, peran keyboard sangatlah penting, karena sebagian perintah yang

berupa teks dan komando lain yang dimasukkan ke dalam sistem komputer adalah melalui

keyboard [23]. Gambar 2.22 menunjukkan bentuk fisik dari Keyboard.

Gambar 2.22 Keyboard [23]

2.8 Mouse

Mouse adalah perangkat keras yang dihubungkan dengan komputer yang fungsinya

sebagai penggerak kursor yang memberikan sebuah perintah pada sistem komputer. Gambar

2.23 menunjukkan bentuk fisik dari Mouse.

Gambar 2.23 Mouse [24]

Mouse adalah salah satu hardware komputer yang menerima input berupa gerakan,

tekanan tombol (click), dan penggulungan (scroll) yang dapat digunakan untuk memilih teks,

ikon, file, dan folder [24].

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 38: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

20

2.9 Persamaan Perhitungan Rata-Rata

𝑅𝑎𝑡𝑎𝑎𝑛 = 𝑋1+𝑋2+𝑋3+⋯+𝑋𝑛

𝑛 [25] (2.1)

Rumus yang ditampilkan pada persamaan 2.1 diatas adalah rumus untuk menghitung

rata-rata suatu variable. Nilai n adalah berdasar pada banyaknya data. Nilai rataan adalah

penjumlahan total semua nilai dari X1 sampai Xn yang dibagi dengan n.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 39: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

21

BAB III

RANCANGAN PENELITIAN

Secara umum, plant dari sistem monitoring kumbung jamur tiram ditunjukkan dalam

gambar dibawah ini. Gambar 3.1 menunjukkan Plant Sistem Monitoring Kumbung Jamur

secara keseluruhan. Plant dalam kotak biru adalah sistem kendali lokal berbasis Zelio Smart

Relay, sedangkan Plant dalam kotak merah adalah sistem monitor jarak jauh berbasis

Raspberry Pi.

Gambar 3.1 Plant Sistem Monitoring Kumbung Jamur

Sistem Kendali Lokal

Sistem Monitor Jarak Jauh

[Zelio Smart Relay dan

Modul Komunikasi] [Kumbung Jamur Tiram]

[Network Switch]

[Mouse]

[Keyboard] [Monitor]

[Kabel HDMI to VGA]

[Raspberry Pi 3]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 40: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

22

3.1. Model Sistem

Secara umum model dari sistem monitoring kumbung jamur tiram ditunjukkan dalam

gambar blok dibawah ini.

Gambar 3.2 Model Sistem Monitor dan Kontrol Kumbung Jamur Tiram

Model sistem pada gambar 3.2 adalah mengenai sistem kumbung jamur lokal dan

sistem monitor jarak jauh. Pada sistem kumbung jamur lokal yang telah dibuat ini, sistem

sepenuhnya dikendalikan oleh Zelio Smart Relay. User dapat mengubah nilai setpoint untuk

suhu dan kelembaban dengan menggunakan beberapa tombol push button yang disediakan,

1. Sensor Suhu

2. Sensor Kelembaban

3. Tombol Pilih

4. Tombol Naik

5. Tombol Turun

6. Tombol Enable

1. Setting ba/bb suhu

2. Setting ba/bb

kelembaban

3. Pengaturan on/off

Aktuator melalui

GUI

4. Pengaturan tombol

enable melalui GUI

5. Menampilkan ba/bb

sistem lokal

-Kumbung Jamur

Tiram

1. Pompa Air (Sprayer)

2. Pemanas (kompor

listrik)

1. Menampilkan

nilai suhu

2. Menampilkan

nilai kelembaban

3. Menampilkan

status aktuator

1. Penyimpanan

data

2. Menampilkan

plot dalam

bentuk grafik

Raspberry Pi 3

User GUI

Input Output

Monitor Menu Seting Logging

Network Switch

Modul Modbus TCP

Zelio Smart Relay

Sistem Kendali Lokal

Sistem Monitor Jarak Jauh

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 41: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

23

seperti tombol pilih, tombol naik, tombol turun dan tombol enable. Tombol pilih digunakan

untuk memilih pengaturan jenis setpoint yaitu suhu atau kelembaban, dan memilih

pengaturan setpoint batas atas dan batas bawah yang akan digunakan. Tombol naik dan turun

digunakan untuk menaikkan dan menurunkan nilai setpoint. Sedangkan tombol enable

digunakan untuk mengaktifkan kerja dari tombol-tombol pengaturan yang telah disebutkan

sebelumnya. Jika tombol enable tidak aktif, maka tombol-tombol lain tidak akan berkerja.

Keluaran yang dikendalikan dari sistem lokal ini adalah berupa pemanas dan pompa air.

Pada sistem jarak jauh, sistemnya akan berbasis Raspberry Pi 3. Untuk dapat

melakukan monitoring jarak jauh pada sistem lokal, maka Zelio akan dihubungkan ke

Raspberry Pi 3 dengan modbus TCP. Fungsi dari Raspberry Pi 3 disini adalah sebagai

komputer yang menyediakan perangkat lunak untuk membuat sistem monitor jarak jauh,

yang akan ditampilkan oleh GUI. User kemudian dapat melakukan pengawasan,

penyetingan variable-variable, dan logging dari GUI seperti yang ditunjukkan dalam model

sistem pada gambar 3.2

3.2. Kebutuhan Perangkat

Pada penelitian ini dibutuhkan beberapa perangkat yang untuk mendukung pembuatan

sistem. Perangkat-perangkat tersebut berbentuk perangkat keras dan perangkat lunak.

3.2.1. Kebutuhan Perangkat Keras

Perangkat keras yang dibutuhkan dalam penelitian ini yaitu:

1. Monitor

2. Raspberry Pi 3

3. Zelio Smart Relay

4. Modul Modbus TCP

5. Network Switch

6. Keyboard

7. Mouse

8. Kabel HDMI to VGA

3.2.2. Kebutuhan Perangkat Lunak

Perangkat lunak ini diperlukan untuk menuliskan program. Perangkat lunak tersebut

yaitu:

1. Python sebagai bahasa pemrograman di Raspberry Pi 3

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 42: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

24

2. Tkinter untuk merancang GUI

3.3. Perancangan Perangkat Keras

Pada perancangan perangkat keras ini, Raspberry Pi 3 akan dihubungkan ke monitor

untuk menampilkan GUI dengan kabel HDMI to VGA. Port Ethernet dari Raspberry Pi 3

akan dihubungkan ke Switch. Modul Modbus TCP dari Zelio Smart Relay juga akan

dihubungkan ke Network Switch untuk komunikasi antara Raspberry Pi 3 dan Zelio.

Keyboard dan Mouse akan dihubungkan ke Raspberry Pi 3. Perancangan perangkat keras ini

dapat dilihat dalam gambar 3.1 dikotak merah.

3.4. Perancangan Perangkat Lunak

3.4.1. Perancangan Data Antarmuka

IP (Internet Protocol) address adalah alamat yang digunakan untuk menghubungkan

satu perangkat ke perangkat lainnya. Dalam hal ini, IP address diperlukan untuk

menghubungkan Raspberry ke Zelio. Pada komunikasi melalui protokol TCP/IP ini, IP yang

akan digunakan adalah IP statis. IP statis ini bersifat tetap atau tidak berubah-ubah. Pada

Zelio dan Raspberry, IP statis ini akan dikonfigurasi dan ditetapkan secara manual.

Konfigurasi jaringan network statis ini meliputi pengaturan terhadap IP address dan Subnet

mask address. Perancangan IP address untuk Zelio adalah pada alamat 192.168.1.10, dengan

subnet mask pada alamat 255.255.255.0, sedangkan pada Raspberry Pi, alamat IP akan

dirancang pada alamat 192.168.1.20, dengan subnet mask pada alamat 255.255.255.0.

Switch kemudian akan dengan mudah mengenali IP address yang bersifat tetap tersebut.

Dalam mode Function Block Diagram di Zelio, modul Modbus TCP menggunakan

tipe SR3NET01 dengan input extension dari J1XT1 sampai J4XT1, dan output extension

dari O1XT1 sampai O4XT1. Setiap input atau output extension ini adalah dalam bentuk 16

bit Modbus word. Modbus TCP register untuk input J1XT1 adalah dari register 16 sampai

register 19, register ini akan digunakan untuk menulis data, sedangkan register untuk O1XT1

sampai O4XT1 adalah dari register 20 sampai register 23, register ini akan digunakan untuk

membaca data. Variable-variable yang akan dimonitor dan diseting akan ditentukan terlebih

dahulu alamat registernya. Tabel 3.1 menunjukkan data antarmuka yang akan di tulis/write

dan baca/read.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 43: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

25

Tabel 3.1 Tabel Read/Write Data Antarmuka

Nama Variable WRITE READ

Nilai suhu Nilai batas atas suhu Nilai suhu yang baru

Nilai batas bawah suhu Nilai batas atas suhu sistem lokal

Nilai bb suhu sistem lokal

Nilai Kelembaban Nilai batas atas kelembaban Nilai kelembaban yang baru

Nilai batas bawah

kelembaban

Nilai ba kelembaban sistem lokal

Nilai bb kelembaban sistem lokal

Aktuator Perintah on/off pemanas Status pemanas

Perintah on/off pompa Status pompa

Data logging Interval Logging Data Data log ditampilkan

Tabel 3.2 Modbus Register Input

Tabel 3.3 Perancangan Write Data Register 18

Fungsi Register Input

Selektor 16 J1XT1

Data, Forcing Aktuator 17 J2XT1

Pulsa untuk preset 18 J3XT1

Set Aktuator 19 J4XT1

Write Command

Pulsa Ba suhu 01

Pulsa Bb suhu 02

Pulsa Ba kelembaban 04

Pulsa Bb kelembaban 08

Mux Selektor 16

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 44: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

26

Tabel 3.4 Modbus Register Output

Tabel 3.5 Perancangan Write Data Register 16

Fungsi Register Output

Read suhu 20 O1XT1

Read Ba suhu sistem lokal

Read Bb kelembaban sistem lokal

Read kelembaban 21 O2XT1

Read Ba kelembaban sistem lokal

Read bb suhu sistem lokal

Read pemanas 22 O3XT1

Read pompa 23 O4XT1

Write Command

Kembali Ke Kondisi Semula 00

Ba suhu 01

Bb suhu 02

Ba kelembaban 04

Bb kelembaban 08

Tombol enable on 64

Mux Selektor 128

Tombol enable off 256

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 45: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

27

Tabel 3.6 Perancangan Write Data Register 17

Tabel 3.2 menunjukkan tabel Modbus register input. Register 16 akan digunakan

sebagai selektor perintah (command). Tabel 3.5 menunjukkan perancangan perintah write

data, dan alamat command tersebut akan dimasukkan kedalam register 16. Tabel 3.6

menunjukkan bahwa Register 17 akan digunakan untuk memasukkan data yaitu nilai

setpoint suhu dan kelembaban, dan input selektor mux set akutator. Tabel 3.3 menunjukkan

bahwa Register 18 akan digunakan sebagai pulsa preset, yaitu untuk memasukkan data ke

register counter, agar data dapat dieksekusi, serta sebagai mux selektor. Tabel 3.4

menunjukkan tabel Modbus register output. Register 20 sampai 23 akan digunakan untuk

membaca data-data.

Gambar 3.4 menunjukan diagram data antarmuka. Register 16 akan dihubungkan ke

Word Bit Conversion, bit 01 sampai bit 08 digunakan untuk seting setpoint ba dan bb suhu

dan kelembaban. Bit 64 akan digunakan untuk memberi kondisi on pada tombol enable

sehingga sistem dapat diatur dari kendali lokal dan GUI, bit 256 akan digunakan untuk

memberi kondisi off pada tombol enable sehingga sistem hanya bisa diatur dari GUI. Bit ini

akan dihubungkan ke Set Reset Switching. Bit 128 akan digunakan untuk input selektor mux

untuk membaca nilai suhu, kelembaban serta setpoint dari sistem lokal.

Register 18 akan dihubungkan ke Word Bit Conversion, bit 01 sampai bit 08

digunakan sebagai pulsa untuk mengeksekusi input data setpoint suhu dan kelembaban,

kemudian output ini akan masuk ke gerbang AND. Bit 16 akan digunakan untuk input mux

Write Command

Input Data 00

Input Data 01

Input Data 02

Input Data 04

Input Data 08

Input Data 64

Set Pemanas 128

Set Pompa 256

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 46: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

28

selektor untuk membaca nilai suhu, kelembaban serta ba dan bb suhu dan kelembaban dari

sistem lokal. Tabel 3.3 menunjukkan perintah write data untuk register 18. Output dari bit

01 sampai 04 dari Register 16 dan Output bit 01 sampai 08 dari Register 18 akan

dihubungkan ke preset forcing pada up/down counter.

Register 17 akan dihubungkan ke Word Bit Conversion, bit 01 sampai 64 sebagai input

data akan dihubungkan ke preset value pada up/down counter. Bit 128 dan 256 akan

digunakan untuk input mux selektor pada aktuator. Register 19 akan dihubungkan ke Word

Bit Conversion, bit 01 akan digunakan untuk set aktuator pemanas dan bit 02 untuk pompa

dari GUI. Output bit 01 dan 02 kemudian akan dihubungkan ke Bit Word Conversion.

Output dari Bit Word Conversion lalu akan dihubungkan ke MUX chanel B. Jika selektor

tidak aktif atau kondisi 0, maka chanel A akan aktif, sedangkan jika selektor dalam kondisi

1, maka chanel B akan aktif. Untuk mengembalikan pengaturan set aktuator ke keadaan

semula, maka register 16 akan diisi 0.

Gambar 3.3 menunjukkan mengenai diagram data read antarmuka. Nilai suhu sekarang,

nilai ba suhu dan nilai bb kelembaban akan dibaca dalam register 20. Nilai kelembaban

sekarang, nilai ba kelembaban dan nilai bb suhu akan dibaca dalam register 21. Nilai

pemanas yang berasal dari output MUX akan dibaca pada register 22. Nilai pompa yang

berasal dari output MUX akan dibaca pada register 23.

Gambar 3.3 Diagram Data Read Antarmuka

20

Register

21

Register

22

Register

23

Register

Nilai Suhu Sekarang

Nilai ba suhu sistem lokal

Nilai bb kelembaban sistem

lokal

Nilai Kelembaban Sekarang

Nilai ba kelembaban sistem lokal

Nilai bb suhu sistem lokal

Output MUX

Pemanas

Output MUX pompa

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 47: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

29

Gambar 3.4 Diagram Write Data Antarmuka

-Selection -Chanel A -Chanel B

Bit01- Bit02- Bit03- Bit04- Bit07- Bit08- Bit09-

-Preset forcing -Preset value

-Selection -Chanel A -Chanel B

Up/Down Counter

Word Bit Conversion

Bit01- Bit02- Bit03- Bit04- Bit05-

Word Bit Conversion

16

Register

17

Register

18

Register

19

Register

-Preset forcing -Preset value

-Preset forcing -Preset value

-Preset forcing -Preset value

-Pemanas -Nilai Suhu

-NIlai ba suhu

-Nilai bb kel

-Pompa air -Nilai Kel -Nilai ba

kel -Nilai bb

suhu

Ba suhu

Bb suhu

Ba Kelembaban

Bb Kelembaban

Lokal (……)

Bit01- Bit02-

MUX

Lokal

Lokal

Word Bit Conversion

-Bit01

Bit Word Conversion

-Bit01

Bit01- Bit02- Bit03- Bit04- Bit05- Bit06- Bit07- Bit08-

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 48: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

30

3.4.2. Perancangan GUI Tkinter

Pada penelitian ini, akan dibuat suatu user interface menggunakan Tkinter. User

Interface ini akan terdiri dari tiga menu utama, yaitu menu setting, untuk memudahkan user

ketika melakukan pengaturan, menu monitoring ketika akan melakukan pemantauan, dan

menu logging untuk melihat data-data dan grafik.

Pada perancangan ini, menu-menu utama dan menu-menu sub akan dirancang dari

pemrograman Tkinter. Perancangan ini meliputi perancangan terhadap widget seperti frame,

label, entry, menu bars, font, colour, size, button, dan layout menu. Gambar 3.5

menunjukkan fitur-fitur menu yang akan dibuat pada user interface Tkinter

Gambar 3.5 Fitur Tkinter GUI

3.4.3. Perancangan Menu Utama

Pada halaman menu utama ini, terdapat label judul sistem, dan tiga tombol virtual yang

mewakili masing-masing fitur yang terdapat pada GUI Tkinter. Menu-menu utama tersebut

yaitu menu setting, menu monitor dan menu logging.

Untuk melakukan akses terhadap menu setting, maka user dapat menekan tombol

virtual menu setting dihalaman GUI, dan kemudian user akan dialihkan ke halaman menu

setting. Demikian juga jika user ingin mengakses menu monitor dan menu logging, maka

GUI

TKINTER SETTING

LOGGING

Suhu

Kelembaban

Aktuator

Open Data Plot

Kelembaban

Aktuator

Tombol

Enable

Suhu MONITORING

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 49: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

31

user dapat menekan tombol menu monitor dan logging, dan user akan diarahkan ke halaman

menu monitor dan menu logging. Gambar 3.6 menunjukkan halaman menu utama yang

tersedia pada user interface.

Gambar 3.6 Halaman Menu Utama

Gambar 3.7 menunjukkan diagram alir utama program. Dari diagram ini dapat dilihat

bahwa dalam alir menu utama, user akan melakukan pemilihan terhadap menu sub. Jika

pilihan menu sesuai yang diinginkan maka akan mengalir ke subrutin proses masing-masing

menu sub.

SETTING

MONITORING

LOGGING

MENU UTAMA

JUDUL

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 50: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

32

Gambar 3.7 Diagram Alir Utama

Mulai

Selesai

Menu utama

Baca perintah user

Menu

Monitoring Menu

Setting

Menu

Logging

g

Subrutin

proses monitoring

Subrutin

proses setting

Subrutin

proses logging

Tidak

Tidak Tidak

Ya Ya Ya

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 51: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

33

3.4.4. Perancangan Menu Setting

Menu setting ini dirancang agar user dapat mengatur variable-variable kondisi yang

terpasang di kumbung jamur. Dalam menu setting ini, terdapat menu pengaturan set point

suhu, set point kelembaban, dan memaksakan kondisi on-off pada aktuator yaitu pompa air

dan pemanas. Gambar 3.8 menunjukkan perancangan Halaman Menu Setting.

Gambar 3.8 Halaman Menu Setting

SETTING

MONITORING

LOGGING

MENU UTAMA

JUDUL

MENU SETTING

SUHU (0 - 40C)

Set BA Set BB ok

Set BA Set BB ok

KELEMBABAN (0 – 100%)

Set Pompa

on off Set Pemanas

on off

on off Tombol Enable

16C/22C 22C/28C

60 /80% 80/90 %

BACK

LOKAL

BA SUHU BB SUHU

BA KEL BB KEL

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 52: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

34

Langkah-langkah untuk melakukan pengaturan melalui GUI adalah sebagai berikut.

Pertama-tama user menekan tombol menu setting pada halaman menu utama, kemudian user

akan diarahkan pada halaman menu setting. Di halaman menu setting ini, jika user ingin

mengubah nilai setpoint suhu dan kelembaban, maka user dapat memasukan nilai batas atas

dan batas bawah suhu dan kelembaban seperti yang sudah dicantumkan di GUI. Dalam masa

inkubasi jamur, user dapat memasukan nilai batas atas suhu 22 dan nilai batas bawah 28,

serta nilai batas atas kelembaban 60 dan nilai batas bawah 80, sedangkan pada masa

pembentukan tubuh jamur, user dapat memasukkan nilai batas atas suhu 16 dan nilai batas

bawah 22, serta nilai batas atas kelembaban 80 dan nilai batas bawah 90. Setelah itu user

menekan tombol ok untuk mengirimkan data tersebut ke Zelio.

Untuk memberikan perintah pemaksaan on/off dari GUI untuk pompa air atau

pemanas, user dapat menekan tombol virtual set pemanas dan set pompa serta tombol on

atau off pada user interface. Ketika user menekan set pemanas maka, data aktuator yang

terjadi pada saat itu akan dikirimkan dan akan dibaca dalam kondisi on/off. Jika kondisi

aktuator off pada saat itu, maka tombol virtual off akan berwarna biru, sehingga user

mengetahui bahwa tombol yang aktif adalah tombol virtual on, tombol on ini akan berwarna

hijau, demikian sebaliknya.

Untuk melakukan prioritas pengaturan sistem, maka user dapat menekan tombol on/off

disebelah label tombol enable. Secara default, prioritas pengaturan adalah dari GUI. Jika

user menekan tombol on, maka prioritas pengaturan adalah dari GUI dan kendali lokal.

Sebagai contoh user memasukan nilai ba dan bb suhu dan kelembaban dari tombol panel

kendali lokal, maka di halaman menu setting bagian lokal, nilai ba dan bb suhu dan

kelembaban akan berubah sesuai dengan nilai yang dimasukan dari tombol panel kendali

lokal. Untuk mengembalikan prioritas pengaturan ke GUI, maka user dapat menekan tombol

virtual off. Untuk kembali ke menu utama, maka user dapat menekan tombol back pada user

interface.

Gambar 3.9 dan gambar 3.10 menunjukkan subrutin proses setpoint suhu dan

kelembaban serta proses pembacaan set point suhu dan kelembaban dari menu setting.

Proses alir dari setpoint ini adalah memasukkan nilai batas atas dan batas bawah kelembaban.

Input nilai setpoint suhu dan kelembaban ini adalah dari register 17. Data akan dikirim atau

dieksekusi oleh register 18. Data nilai setpoint ini kemudian akan dibaca dan diproses di

Zelio. Pembacaan nilai setpoint suhu dan kelembaban sistem loka diambil dari register 20

dan 21.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 53: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

35

Gambar 3.9 Subrutin proses setpoint suhu dan kelembaban

Gambar 3.10 Subrutin proses pembacaan setpoint suhu dan kelembaban

Meminta nilai batas atas

dan batas bawah suhu dan

kelembaban

Kirimkan data ba dan

bb

Masukan nilai batas atas

dan batas bawah suhu dan

kelembaban

Kirimkan data ba dan

bb

Mulai

Kembali

Mulai

Kembali

Data nilai ba dan bb dibaca

Data nilai ba dan bb dibaca

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 54: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

36

Gambar 3.11 Subrutin proses set aktuator

Gambar 3.11 menunjukkan subrutin proses set pompa dan set pemanas dari menu

setting. Proses alir dari set aktuator ini adalah memasukkan kondisi aktuator yang diinginkan

yaitu on/off. Masukan kondisi aktuator adalah dari Register 19 bit 01 untuk pemanas dan bit

02 untuk pompa, kemudian data akan dikirim ke Zelio.

Gambar 3.12 menunjukkan subrutin proses pengaturan tombol enable. Proses alir

adalah memasukkan kondisi tombol enable yang diinginkan. Masukan kondisi tombol

enable ini adalah dari register 16 bit 07.

Masukan kondisi

Aktuator

Kirimkan data

Mulai

Kembali

Data kondisi aktuator dibaca

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 55: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

37

Gambar 3.12 Subrutin Proses Pengaturan Tombol Enable

3.4.5. Perancangan Menu Monitoring

Menu monitoring ini dirancang agar user dapat melakukan pemantauan atau

pengawasan pada sistem lokal kumbung jamur. Melalui menu ini, user dapat melihat nilai

suhu dan kelembaban serta status dari pemanas dan pompa air. Gambar 3.13 menunjukkan

Halaman Menu Monitoring yang akan dibuat.

Langkah untuk melakukan monitoring adalah sebagai berikut. Pada halaman menu

utama, user menekan tombol menu monitor, kemudian user akan diarahkan ke halaman

menu monitor. Pada halaman menu monitor ini, user dapat melihat nilai suhu dan nilai

kelembaban yang terjadi pada beberapa interval waktu yaitu 5 detik, 10 detik atau 15 detik.

Untuk status pompa dan pemanas, user dapat melihat indikator warna pada status, dan

di interface akan menampilkan lampu indikator warna untuk memberitahu user mengenai

Masukan kondisi tombol

enable

Kirimkan data

Mulai

Kembali

Data kondisi tombol enable dibaca

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 56: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

38

status akuator dalam keadaan on atau off. Untuk kembali ke menu utama, maka user dapat

menekan tombol back pada user interface.

Gambar 3.13 Halaman Menu Monitor

MENU MONITORING

Nilai Suhu

Status Pompa

Status Pemanas

Nilai Kelembaban

5 detik

10 detik

15 detik

SETTING

LOGGING

MENU UTAMA

JUDUL

MONITORING

BACK

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 57: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

39

Gambar 3.14 Subrutin proses monitor suhu

Gambar 3.15 Subrutin proses monitor kelembaban

Gambar 3.14 dan gambar 3.15 menunjukkan mengenai diagram alir subrutin proses

monitor suhu dan kelembaban. Data yang dikirimkan dari Zelio akan dibaca di register 20

untuk suhu dan register 21 untuk kelembaban, data kemudian akan ditampilkan dalam

halaman menu monitor.

Mulai

Kembali

Read data nilai kelembaban

Tampilkan data nilai kelembaban

Mulai

Kembali

Read data nilai suhu

Tampilkan data nilai suhu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 58: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

40

Gambar 3.16 Subrutin proses status Aktuator

Gambar 3.16 menunjukkan mengenai diagram alir subrutin proses status aktuator dari

halaman menu monitor. Dalam diagram alir ini, terdapat pembacaan terhadap data aktuator.

Data aktuator dibaca di register 22 untuk pemanas dan 23 untuk pompa. Jika kondisi aktuator

bernilai 1 maka kondisi yang akan ditampilkan adalah indikator ON, sebaliknya jika kondisi

0, maka kondisi aktuator yang akan ditampilkan adalah indikator OFF.

Gambar 3.17 menunjukkan diagram alir subrutin proses interval monitoring data. Data

diakses dari register 20 sampai register 23 dan kemudian membaca perintah user yaitu lama

interval monitor data yang ingin dilihat dan mengirim data yang sudah diakses kemudian

data akan ditampilkan di GUI.

Nilai 1 Tidak

Ya

Mulai

Kembali

Tampilkan kondisi ON

Tampilkan kondisi OFF

Read Data Aktuator

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 59: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

41

Gambar 3.17 Subrutin proses interval monitor data

3.4.6. Perancangan Menu Logging

Menu Logging ini dirancang agar user dapat mengetahui perubahan nilai suhu dan

kelembaban dan status aktuator yang terjadi pada pada rentang data yang ditentukan oleh

user, dan user juga dapat melihat perubahan yang terjadi dalam bentuk grafik agar

memudahkan untuk melakukan pembacaan.

Gambar 3.18 menunjukkan halaman menu logging yang akan dibuat. Langkah untuk

melakukan logging adalah pada halaman menu utama, user menekan tombol menu logging,

kemudian user akan diarahkan ke halaman menu logging. Di halaman menu logging ini, user

dapat memasukan interval logging data yaitu 10 data, 15 data dan 20 data.

Jika user ingin melihat data, maka user dapat menekan tombol open file. Jika user

ingin melihat tampilan dalam bentuk grafik, maka user dapat menekan tombol virtual

tampilkan plot dan memilih file yang akan ditampilkan.

Kirim data yang

dimonitoring

Akses data yang

dimonitoring

Baca perintah user

Mulai

Kembali

Tampilkan data di GUI

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 60: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

42

Gambar 3.18 Halaman Menu Logging

Data akan disimpan dalam format csv (comma separated values) yaitu format tabel.

Data ini akan disimpan per interval logging data yang dirata-rata. Sebagai contoh interval

logging yang dipilih adalah 10 data, dan interval waktu yang dipilih adalah 5 detik (lihat

gambar 3.12 pada Halaman Menu Monitoring), maka tiap 5 detik, data akan dikumpulkan

hingga berjumlah 10 data, kemudian 10 data tersebut akan dirata-rata, dan waktu akan

bergantung pada selesainya proses pengumpulan 10 data yang dirata-rata. Data ini akan

disimpan perhari dengan format yyyymmdd.csv

SETTING

LOGGING

MENU UTAMA

JUDUL

MENU LOGGING

Tampilkan Plot

Interval Logging Data

10 data

15 data

20 data

Open File

MONITORING

BACK

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 61: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

43

Gambar 3.19 Subrutin Proses Data Logging

Gambar 3.19 menunjukkan subrutin proses data logging dari halaman menu logging.

Dalam proses alir ini, user memasukkan interval data logging yang diinginkan. Data akan

diakses dari register 20 sampai register 23. Data kemudian akan dikirimkan dan akan

disimpan. Setelah data disimpan, user dapan membuka file dalam format csv atau

menampilkan plot.

Masukan interval logging

data

Kirimkan data interval

logging

Akses data suhu dan

kelembaban

Mulai

Kembali

Tampilkan plot

Open file

Simpan Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 62: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

44

BAB IV

HASIL DAN PEMBAHASAN

Bab ini berisi mengenai implementasi sistem, pengujian dan analisis data sistem

terhadap menu utama, menu setting, monitoring dan logging, serta pembahasan perangkat

lunak yang meliputi pembahasan pyModbus TCP, program di Zelio Soft, implementasi

alamat IP, program di python dan pembahasan program GUI Tkinter.

4.1. Implementasi Sistem

4.1.1. Perubahan Sensor

Rangkaian sensor suhu dan kelembaban pada sistem lokal yang telah dibuat kurang

dapat bekerja dengan baik, sehingga hal ini akan berdampak pada pengambilan data. Oleh

karena itu pada penelitian ini, sensor suhu dan kelembaban diganti menggunakan dua

potensiometer. Kedua potensiometer ini berfungsi untuk memberikan nilai suhu dan

kelembaban yang terjadi pada saat sekarang. Dengan adanya potensiometer ini, pengujian

suhu dan kelembaban dapat dilakukan dari skala terendah sampai pada skala tertinggi, yaitu

nilai 0 sampai 40 untuk suhu, dan nilai 0 sampai 100 untuk kelembaban. Hal lainnya adalah

untuk melihat sensitifitas perubahan nilai suhu dan kelembaban dimenu monitor sesuai

dengan waktu yang telah ditentukan. DC Power Supply 10V diperlukan untuk tegangan

masukan potensiometer, dengan tegangan 0V dikonversikan kedalam nilai digital integer 0

untuk mewakili 0oC dan 0%, serta 10V dikonversikan kedalam nilai digital integer 255 untuk

mewakili 40oC dan 100%. Gambar 4.1 menunjukkan implementasi dua potensiometer

sebagai masukan suhu dan kelembaban sekarang.

Gambar 4.1 Potensiometer

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 63: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

45

4.1.2. Implementasi Plant Sistem

Implementasi dari sistem monitor jarak jauh pada kumbung jamur tiram berbasis

Raspberry Pi ini dapat dilihat dari gambar 4.2

Gambar 4.2 Plant Sistem

Tabel 4.1 Keterangan Plant Sistem

No Keterangan

1 Monitor

2 Keyboard

3 Mouse

4 Kabel HDMI to VGA

5 Raspberry Pi 3

6 Network Switch

7 Zelio Smart Relay dan Modul Komunikasi

8 Tombol Push Button

9 Potensiometer Suhu dan Kelembaban

10 DC Power Supply

11 LED 3mm

12 Kabel LAN

13 Kumbung

14 Pemanas

15 Pompa

Tabel 4.1 menunjukkan keterangan gambar pada perangkat keras sistem monitor jarak

jauh dan kendali lokal. Pada sistem kendali lokal, dua potensiometer dan tombol-tombol

push button dihubungkan ke pin input Zelio Smart Relay. Potensiometer ini menerima

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 64: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

46

tegangan dari Power Supply 10V. Tombol-tombol push button tersebut adalah tombol pilih

yang berfungsi untuk memilih jenis pengaturan setpoint suhu dan kelembaban, tombol up

dan down untuk menaikkan dan menurunkan nilai setpoint, serta tombol enable yang

berfungsi untuk mengaktifkan kerja dari semua tombol push button. LED adalah sebagai

indikator dari tombol enable, dan jenis pengaturan setpoint yang dipilih, yaitu batas atas (ba)

dan batas bawah (bb) suhu, serta batas atas dan bawah kelembaban. Kelima LED ini

dihubungkan ke pin output Zelio. Keluaran yang dikendalikan dari sistem lokal adalah

berupa pemanas dan pompa air. Pemanas dan pompa air ini dihubungkan ke pin output Zelio.

Pada sistem monitor jarak jauh, Keyboard, Mouse, kabel LAN dan kabel HDMI to

VGA dihubungkan ke Raspberry Pi. Keyboard berfungsi untuk mengetik nilai-nilai setpoint,

Mouse berfungsi untuk menggerakan kursor dan melakukan pemilihan di window menu.

Kabel HDMI to VGA juga dihubungkan ke monitor, kabel ini membuat grafis tertampil di

layar monitor. Raspberry Pi berkomunikasi dengan Zelio dengan modul komunikasi

Ethernet. Hal ini dilakukan dengan cara menghubungkan kabel LAN dari Raspberry Pi ke

Network Switch, dan juga menghubungkan kabel LAN dari Modul Komunikasi Zelio ke

Network Switch.

4.1.3. Implementasi GUI Tkinter

Hasil implementasi dari perancangan GUI Tkinter dapat dilihat pada gambar 4.3

sampai gambar 4.6. Gambar 4.3 menunjukkan implementasi untuk menu utama. Dalam

menu utama ini, user dapat masuk ke subbab menu setting, menu monitor, dan menu logging

dengan menekan masing-masing tombol subbab menu. User kemudian akan diarahkan ke

window subbab menu yang telah dipilih tersebut.

Gambar 4.4 memperlihatkan implementasi untuk menu setting dilayar monitor. Dalam

menu setting ini, user dapat memasukkan nilai setpoint ba dan bb suhu dengan jangkauan 0-

40oC, serta batas atas dan batas bawah kelembaban dengan jangkauan 0-100% pada kolom

entry, setelah itu user menekan tombol ok. Dibawah nilai setpoint suhu dan kelembaban

terdapat tulisan nilai setpoint default, yaitu 16C/22C dibawah set bb suhu, dan 22C/28C

dibawah set ba suhu, serta 60/80% dibawah set bb kelembaban dan 80/90% dibawah set ba

kelembaban. Hal ini mengacu pada BAB II subbab 2.1.2 mengenai suhu dan kelembaban

untuk tumbuh kembang jamur, yaitu secara khusus untuk suhu dan kelembaban, agar

pertumbuhan jamur menjadi optimal maka diperlukan suhu ruangan dalam kumbung 22 -

28°C dan kelembaban sebesar 60-80% pada saat inkubasi. Sedangkan suhu pada

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 65: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

47

pembentukan tubuh buah sampai panen berkisar antara 16-22 °C dengan kelembaban 80-

90%. Untuk melakukan pemaksaan kondisi on atau off pada aktuator, user dapat menekan

tombol set pemanas dan set pompa. Untuk melihat nilai setpoint suhu dan kelembaban sistem

lokal, user dapat melihatnya dibagian lokal. Untuk tombol enable, jika user menekan tombol

on, maka sistem dapat diatur dari GUI dan lokal, namun juka user menekan tombol off, maka

sistem hanya bisa diatur dari GUI. Tombol back berfungsi untuk mengembalikan window

ke menu utama.

Gambar 4.3 Menu Utama

Gambar 4.4 Menu Setting

Implementasi dari menu monitor dapat dilihat di gambar 4.5. Dalam menu ini, terdapat

entry yang menampilkan nilai suhu dan kelembaban yang terjadi pada saat sekarang. Status

aktuator ditampilkan dalam kanvas warna merah atau hijau. Terdapat tombol pilihan waktu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 66: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

48

5 detik, 10 detik, dan 15 detik untuk menampilkan nilai suhu dan kelembaban, serta status

aktuator sesuai dengan lama waktu monitoring yang dikehendaki. Tombol back adalah untuk

kembali ke menu utama.

Gambar 4.5 Menu Monitor

Gambar 4.6 menunjukkan implementasi rancangan menu logging. Dalam menu

logging, terdapat interval logging data yaitu 5 data, 15 data, dan 20 data. Tombol open file

akan membawa user ke window dialog untuk memilih file yang ingin dibuka. Tombol plot

juga akan membawa user ke window dialog untuk memilih file csv yang ingin ditampilkan

dalam plot. Tombol go to plot adalah untuk membawa user ke window plot.

Gambar 4.6 Menu Logging

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 67: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

49

4.2. Pengujian dan Analisis Data Sistem

Pengujian dan analisis terhadap sistem monitor jarak jauh ini dibagi menjadi empat,

yaitu pengujian dan analisis terhadap menu utama, menu setting, menu monitor, dan menu

logging.

4.2.1. Pengujian dan Analisis Menu Utama

Pada menu utama, pengujian dilakukan dengan menekan tombol submenu. Ketika

menekan tombol menu setting, maka window menu setting yang terbuka. Ketika menekan

tombol menu monitor, maka window menu monitor yang terbuka. Ketika menekan tombol

tombol menu logging, maka window menu logging yang terbuka. Jika tombol back ditekan

pada masing-masing submenu, maka window akan kembali ke window menu utama.

Mengacu pada tabel 4.2, maka hasil pada menu utama sudah sesuai dengan yang dirancang

sebelumnya.

Tabel 4.2 Hasil Pengujian Menu Utama

Menu Utama Submenu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 68: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

50

4.2.2. Pengujian dan Analisis Data Menu Setting

Pengujian pada menu setting dilakukan dengan menguji entry ba dan bb suhu dan

kelembaban, tombol set pemanas, tombol set pompa, tombol on dan off, entry ba dan bb

suhu dan kelembaan sistem lokal serta menguji tombol on dan off untuk enable.

Tabel 4.3 Data Pengujian Setpoint Suhu

No Pengujian Data

GUI

Hasil

Pengujian Data

Zelio

Keterangan

BB BA BB BA

1 0 1 0 1 Nilai Terkirim

2 5 10 5 10 Nilai Terkirim

3 15 20 15 20 Nilai Terkirim

4 16 22 16 22 Nilai Terkirim

5 17 23 17 23 Nilai Terkirim

6 19 24 19 24 Nilai Terkirim

7 20 25 20 25 Nilai Terkirim

8 21 26 21 26 Nilai Terkirim

9 22 28 22 28 Nilai Terkirim

10 23 29 23 29 Nilai Terkirim

11 24 30 24 30 Nilai Terkirim

12 25 31 25 31 Nilai Terkirim

13 26 32 26 32 Nilai Terkirim

14 27 33 27 33 Nilai Terkirim

15 28 34 28 34 Nilai Terkirim

16 29 35 29 35 Nilai Terkirim

17 30 36 30 36 Nilai Terkirim

18 39 40 39 40 Nilai Terkirim

19 20 15 22 28 Warning: Error Value

20 22 16 22 28 Warning: Error Value

21 24 42 22 28 Warning: Error Value

22 28 22 22 28 Warning: Error Value

23 15 15 22 28 Warning: Error Value

24 16 16 22 28 Warning: Error Value

25 0 0 22 28 Warning: Error Value

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 69: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

51

Tabel 4.4 Hasil Pengujian Setpoint Suhu

No Pengujian Nilai SetPoint Suhu GUI Hasil Data Uji Zelio

1

2

3

4

5

Tabel 4.3 adalah pengujian data terhadap menu setting pada bagian entry batas atas

dan batas bawah suhu. Sesuai dengan jangkauan pengukuran suhu yaitu 0o sampai 40oC,

maka nilai-nilai pada nomor 1 sampai 18 yang digunakan dalam data uji ini adalah untuk

menguji kemampuan mengirim dari 0 sampai 40.

Pengujian data dilakukan dengan memasukan nilai setpoint di GUI yaitu memasukan

nilai ba ke entry ba dan nilai bb ke entry bb suhu, kemudian tombol ok ditekan. Nilai-nilai

yang telah dimasukan tersebut berhasil dikirimkan ke Zelio. Hasil ini dapat dilihat pada tabel

4.4. Nomor 1 pada tabel ini menunjukkan kondisi ketika entry belum diberi masukan, dan di

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 70: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

52

Zelio nilai setpoint suhu juga masih 0. Di Zelio tersebut, Tb (Temperature bawah)

meunjukkan bb suhu, Ta (Temperature atas) menunjukkan ba suhu, Hb (Humidity bawah)

menunjukkan bb kelembaban, Ha (Humidity atas) menunjukkan ba kelembaban. Nomor 2

menunjukkan ketika nilai ba dan bb dimasukan kedalam entry GUI, yaitu sebagai contoh

nilai bb adalah 22, dan nilai ba adalah 28. Dalam Zelio dapat dilihat bahwa nilai Tb dan Ta

sudah berubah menjadi Tb adalah 22 dan Ta adalah 28. Hal ini menujukkan bawah nilai yang

dimasukan dalam entry GUI tersebut berhasil dikirim ke Zelio.

Data yang dihasilkan pada tabel 4.3, nomor 19 sampai 25 menunjukkan adanya

warning, hal ini karena adanya pembatasan pada nilai ba dan bb suhu, yaitu pada

pemrograman nilai ba harus lebih kecil dari nilai 41 dan harus lebih besar dari bb. Jadi ketika

nilai ba lebih kecil atau ba sama dengan bb atau ba lebih besar dari nilai 40, akan ada dialog

warning yang menunjukan nilai yang dimasukan error (warning: error value). Hal ini berarti

nilai yang telah dimasukan tersebut tidak akan dikirim ke Zelio dan nilai ba dan bb akan

tetap sama seperti nilai yang berhasil dikirim sebelumnya. Pengujian ini dapat dilihat dalam

tabel 4.4 nomor 3 dan 5. Pada nomor 3, ketika nilai 20 dimasukan ke entry bb, dan nilai 15

dimasukan ke entry ba suhu, maka dialog warning akan muncul. Pada nomor 4, ketika nilai

15 dimasukan ke entry bb dan nilai 15 dimasukan ke entry ba, maka dialog warning juga

akan muncul. Pada nomor 5, ketika nilai 24 dimasukan ke entry bb, dan nilai 42 dimasukan

ke entry ba, maka dialog warning akan muncul. Pada Zelio, nilai yang dimasukan tersebut

tidak akan dikirim, dan nilai Tb dan Ta akan tetap sama seperti nilai sebelumnya yaitu Tb

dengan nilai 22 dan Ta dengan nilai 28.

Tabel 4.5 Pengujian Setpoint Kelembaban

No Pengujian Data

GUI

Hasil

Pengujian Data

Zelio

Keterangan

BB BA BB BA

1 0 1 0 1 Nilai Terkirim

2 15 25 15 25 Nilai Terkirim

3 30 40 30 40 Nilai Terkirim

4 35 45 35 45 Nilai Terkirim

5 40 50 40 50 Nilai Terkirim

6 45 55 45 55 Nilai Terkirim

7 50 60 50 60 Nilai Terkirim

8 55 70 55 70 Nilai Terkirim

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 71: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

53

Tabel 4.5 (Lanjutan) Pengujian Setpoint Kelembaban

No Pengujian Data

GUI

Hasil

Pengujian Data

Zelio

Keterangan

BB BA BB BA

9 60 80 60 80 Nilai Terkirim

10 65 82 65 82 Nilai Terkirim

11 70 83 70 83 Nilai Terkirim

12 75 87 75 87 Nilai Terkirim

13 80 90 80 90 Nilai Terkirim

14 85 92 85 92 Nilai Terkirim

15 90 94 90 94 Nilai Terkirim

16 92 96 92 96 Nilai Terkirim

17 95 98 95 98 Nilai Terkirim

18 99 100 99 100 Nilai Terkirim

19 40 30 60 80 Warning: Error Value

20 70 50 60 80 Warning: Error Value

21 80 60 60 80 Warning: Error Value

22 92 102 60 80 Warning: Error Value

23 60 60 60 80 Warning: Error Value

24 30 30 60 80 Warning: Error Value

25 0 0 60 80 Warning: Error Value

Tabel 4.6 Hasil Uji Setpoint Kelembaban

No Pengujian Nilai

SetPoint Kelembaban GUI

Hasil Data Uji Zelio

1

2

3

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 72: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

54

Tabel 4.6 (Lanjutan) Hasil Uji Setpoint Kelembaban

No Pengujian Nilai

SetPoint Kelembaban GUI

Hasil Data Uji Zelio

4

5

Tabel 4.5 adalah pengujian data terhadap menu setting pada bagian entry batas atas

dan batas bawah kelembaban. Sesuai dengan jangkauan pengukuran suhu yaitu 0% sampai

100%, maka nilai-nilai pada nomor 1 sampai 18 yang digunakan dalam data uji ini adalah

untuk menguji kemampuan mengirim dari 0 sampai 100.

Pengujian data dilakukan dengan memasukan nilai setpoint di GUI yaitu memasukan

nilai ba ke entry ba dan nilai bb ke entry bb kelembaban, kemudian tombol ok ditekan. Nilai-

nilai yang telah dimasukan tersebut berhasil dikirimkan ke Zelio. Hasil ini dapat dilihat pada

tabel 4.6. Nomor 1 pada tabel ini menunjukkan kondisi ketika entry belum diberi masukan,

dan di Zelio nilai setpoint suhu juga masih 0. Nomor 2 menunjukkan ketika nilai ba dan bb

dimasukan kedalam entry GUI, yaitu sebagai contoh nilai bb adalah 60, dan nilai ba adalah

80. Dalam Zelio dapat dilihat bahwa nilai Tb dan Ta sudah berubah menjadi Tb adalah 60

dan Ta adalah 80. Hal ini menujukkan bawah nilai yang dimasukan dalam entry GUI tersebut

berhasil dikirim ke Zelio.

Data yang dihasilkan pada tabel 4.5, nomor 19 sampai 25 menunjukkan adanya

warning, hal ini karena adanya pembatasan pada nilai ba dan bb kelembaban, yaitu pada

pemrograman nilai ba harus lebih kecil dari nilai 101 dan harus lebih besar dari bb. Jadi

ketika nilai ba lebih kecil atau ba sama dengan bb atau ba lebih besar dari nilai 100, akan

ada dialog warning yang menunjukan nilai yang dimasukan error (warning: error value).

Hal ini berarti nilai yang telah dimasukan tersebut tidak akan dikirim ke Zelio dan nilai ba

dan bb akan tetap sama seperti nilai yang berhasil dikirim sebelumnya. Pengujian ini dapat

dilihat dalam tabel 4.6 nomor 3 dan 5. Pada nomor 3, ketika nilai 40 dimasukan ke entry bb,

dan nilai 30 dimasukan ke entry ba kelembaban, maka dialog warning akan muncul. Pada

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 73: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

55

nomor 4, ketika nilai 60 dimasukan ke entry bb dan nilai 60 dimasukan ke entry ba, maka

dialog warning juga akan muncul. Pada nomor 5, ketika nilai 92 dimasukan ke entry bb dan

nilai 102 dimasukan ke entry ba, maka dialog warning juga akan muncul. Pada Zelio, nilai

yang dimasukan tersebut tidak akan dikirim, dan nilai Tb dan Ta akan tetap sama seperti

nilai sebelumnya yaitu Tb dengan nilai 60 dan Ta dengan nilai 80.

Tabel 4.7 Data Pengujian Pembacaan Setpoint Suhu

No Pengujian Data

Sistem Lokal

Zelio

Hasil Pengujian

GUI

Keterangan

BB BA BB BA

1 23 29 23 29 Nilai Terkirim

2 28 35 28 35 Nilai Terkirim

3 30 37 30 37 Nilai Terkirim

4 16 22 16 22 Nilai Terkirim

5 19 25 19 25 Nilai Terkirim

6 21 27 21 27 Nilai Terkirim

7 23 29 23 29 Nilai Terkirim

8 25 30 25 30 Nilai Terkirim

9 24 29 24 29 Nilai Terkirim

10 21 31 21 31 Nilai Terkirim

11 20 32 20 32 Nilai Terkirim

12 23 33 23 33 Nilai Terkirim

13 24 34 24 34 Nilai Terkirim

14 25 35 25 35 Nilai Terkirim

15 19 32 19 32 Nilai Terkirim

Tabel 4.8 Hasil Uji Pembacaan Setpoint Suhu dan Kelembaban

No Pengujian

Pembacaan Nilai

SetPoint Suhu dan

Kelembaban GUI

Hasil Data Uji GUI

1

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 74: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

56

Tabel 4.8 (Lanjutan) Hasil Uji Pembacaan Setpoint Suhu dan Kelembaban

No Pengujian

Pembacaan Nilai

SetPoint Suhu dan

Kelembaban GUI

Hasil Data Uji GUI

2

3

4

Tabel 4.9 Data Pengujian Pembacaan Setpoint Kelembaban

No Pengujian Data

Sistem Lokal

Zelio

Hasil Pengujian

GUI

Keterangan

BB BA BB BA

1 63 83 63 83 Nilai Terkirim

2 68 88 68 88 Nilai Terkirim

3 70 90 70 90 Nilai Terkirim

4 80 90 80 90 Nilai Terkirim

5 77 87 77 87 Nilai Terkirim

6 75 85 75 85 Nilai Terkirim

7 78 84 78 84 Nilai Terkirim

8 74 83 74 83 Nilai Terkirim

9 71 82 71 82 Nilai Terkirim

10 67 81 67 81 Nilai Terkirim

11 66 80 66 80 Nilai Terkirim

12 67 84 67 84 Nilai Terkirim

13 68 85 68 85 Nilai Terkirim

14 69 86 69 86 Nilai Terkirim

15 60 84 60 84 Nilai Terkirim

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 75: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

57

Tabel 4.7 dan tabel 4.8 adalah pengujian data terhadap menu setting pada bagian

pembacaan nilai batas atas dan batas bawah suhu dan kelembaban sistem lokal. Pengujian

data dilakukan dengan memasukan nilai setpoint dari sistem lokal Zelio. Nilai-nilai yang

telah dimasukan tersebut berhasil dikirimkan ke GUI. Hasil ini dapat dilihat pada tabel 4.8.

Nomor 1 pada tabel 4.8 ini menunjukkan nilai ba dan bb suhu dan kelembaban yang diatur

dari sistem lokal Zelio. Di Zelio tersebut, Tb bernilai 16, Ta bernilai 22, Hb bernilai 80, dan

Ha bernilai 90. Nilai yang dibaca di GUI juga menunjukkan nilai yang sama, yaitu bb suhu

bernilai 16, ba suhu bernilai 22, bb kelembaban bernilai 80 dan ba kelembaban berniali 90.

Hal ini menujukkan bawah nilai yang dimasukan dari sistem lokal Zelio berhasil dikirim dan

dibaca di GUI.

Tabel 4.10 Set Pemanas Kondisi Awal On

Tombol

Set

Pemanas

Kondisi Keadaan

Pemanas

Indikator

Tombol On Tombol Off

0 Awal 1 Relief/Biru Relief/Biru

1 Awal 1 Sunken/Hijau Relief/Biru

1 Tombol

Off

0 Relief/Biru Sunken/Hijau

1 Tombol

On

1 Sunken/Hijau Relief/Biru

Keterangan:

= Relief/Biru = Sunken/Hijau

Tabel 4.11 Set Pemanas Kondisi Awal Off

Tombol

Set

Pemanas

Kondisi Keadaan

Pemanas

Indikator

Tombol On Tombol Off

0 Awal 0 Relief/Biru Relief/Biru

1 Awal 0 Relief/Biru Sunken/Hijau

1 Tombol

On

1 Sunken/Hijau Relief/Biru

1 Tombol

Off

0 Relief/Biru Sunken/Hijau

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 76: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

58

Tabel 4.12 Hasil Uji Set Pemanas Kondisi Awal 1

No Pengujian Tombol Set

Pemanas

Hasil Uji Zelio

1 Kondisi Awal Pemanas: 1

2

3

4

Tabel 4.13 Hasil Uji Set Pemanas Kondisi Awal 0

No Pengujian Tombol Set

Pemanas

Hasil Uji Zelio

1

Kondisi Awal Pemanas: 0

2

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 77: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

59

Tabel 4.13 (Lanjutan) Hasil Uji Set Pemanas Kondisi Awal 0

No Pengujian Tombol Set

Pemanas

Hasil Uji Zelio

3

4

Tabel 4.10 memperlihatkan mengenai set pemanas dalam keadaan awal pemanas

adalah on atau kondisi 1. Pengujian set pemanas dilakukan terhadap tombol set pemanas,

dan tombol on dan off, dengan kondisi Tb bernilai 22, Ta bernilai 28, Hb bernilai 60 dan Ha

bernilai 80, nilai suhu sekarang adalah 17 dan nilai kelembaban sekarang adalah 76. Nilai

suhu sekarang adalah kurang dari nilai setpoint, sedangkan nilai kelembaban berada diantara

nilai setpoint, hal ini membuat kondisi aktuator pemanas bernilai 1 atau on.

Ketika tombol set pemanas tidak ditekan atau kondisi 0, maka tombol on dan off tidak

akan bisa mengirimkan perintah ke Zelio. Hasil ini dapat dilihat pada tabel 4.12, nomor 1.

Di GUI, indikator dari tombol on dan off adalah relief atau berwarna biru, ini menandakan

bahwa ketika tombol ini ditekan, tidak akan ada aksi yang terjadi. Hasil di Zelio adalah tetap

sama seperti sebelumnya, yaitu kondisi pemanas (Hetr) adalah 1.

Ketika tombol set pemanas ditekan, maka tombol on dan off dapat beroperasi. Kondisi

awal pemanas adalah 1, maka tombol on menjadi sunken atau berwana hijau, sedangkan

tombol off tetap relief atau berwarna biru. Hasil ini dapat dilihat di tabel 4.12, nomor 2.

Ketika kondisi pemanas awal 1 atau on ini dipaksa menjadi 0 atau off, maka tombol off

ditekan atau diberi kondisi 1. Tombol off kemudian berubah menjadi berwarna hijau atau

menjadi sunken, sedangkan tombol on akan menjadi relief/berwarna biru karena kondisi 0.

Hasil uji ini dapat dilihat pada nomor 2 dan 3. Hetr atau pemanas di Zelio nilainya dari

kondisi awal 1 berhasil dipaksa menjadi kondisi 0. Ketika kondisi pemanas awal 1, dan

tombol on ditekan, maka kondisi pemanas akan tetap bernilai 1. Hal ini dapat dilihat pada

nomor 2 dan nomor 4, yaitu kondisi Hetr tetap bernilai 1. Hasil data uji tabel 4.12 ini

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 78: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

60

menunjukkan bahwa rancangan indikator tombol relief/sunken dan perintah pemaksaan

aktuator pemanas berhasil dilakukan.

Tabel 4.11 memperlihatkan mengenai set pemanas dalam keadaan awal pemanas

adalah off atau kondisi 0. Pengujian set pemanas ini dengan kondisi Tb bernilai 22, dan Ta

bernilai 28, dan Hb bernilai 60 dan Ha bernilai 80, nilai suhu sekarang adalah 25 dan nilai

kelembaban sekarang adalah 75. Nilai suhu sekarang dan nilai kelembaban sekarang berada

diantara nilai setpoint, hal ini membuat kondisi aktuator pemanas bernilai 0 atau off.

Ketika tombol set pemanas tidak ditekan atau kondisi 0, maka tombol on dan off tidak

akan bisa mengirimkan perintah ke Zelio. Hasil ini dapat dilihat pada tabel 4.13, nomor 1.

Di GUI, indikator dari tombol on dan off adalah relief atau berwarna biru, ini menandakan

bahwa ketika tombol ini ditekan, tidak akan ada aksi yang terjadi. Hasil di Zelio adalah tetap

sama seperti sebelumnya, yaitu kondisi pemanas (Hetr) adalah 0.

Ketika tombol set pemanas ditekan, maka tombol on dan off dapat beroperasi. Kondisi

awal pemanas adalah 0, maka tombol off menjadi sunken atau berwana hijau, sedangkan

tombol on tetap relief atau berwarna biru. Hasil ini dapat dilihat di tabel 4.13, nomor 2.

Ketika kondisi pemanas awal 0 atau off ini dipaksa menjadi 1 atau on, maka tombol on

ditekan atau diberi kondisi 1. Tombol on kemudian berubah menjadi warna hijau atau

menjadi sunken, sedangkan tombol off akan menjadi relief/berwarna biru karena kondisi 0.

Hasil uji ini dapat dilihat pada nomor 2 dan 3. Hetr atau pemanas di Zelio nilainya dari

kondisi awal 0 berhasil dipaksa menjadi kondisi 1. Ketika kondisi pemanas awal 0, dan

tombol off ditekan, maka kondisi pemanas akan tetap bernilai 0. Hal ini dapat dilihat pada

nomor 2 dan nomor 4, yaitu kondisi Hetr tetap bernilai 0. Hasil data uji tabel 4.13 ini

menunjukkan bahwa rancangan indikator tombol relief/sunken dan perintah pemaksaan

aktuator pemanas berhasil dilakukan.

Tabel 4.14 Set Pompa Kondisi On

Tombol Set

Pompa

Kondisi Keadaan

Pompa

Indikator

Tombol

On

Tombol

Off

0 Awal 1 Relief Relief

1 Awal 1 Sunken Relief

1 Tombol Off 0 Relief Sunken

1 Tombol On 1 Sunken Relief

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 79: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

61

Tabel 4.15 Set Pompa Kondisi Off

Tombol Set

Pompa

Kondisi Keadaan

Pompa

Indikator

Tombol

On

Tombol

Off

0 Awal 0 Relief Relief

1 Awal 0 Relief Sunken

1 Tombol On 1 Sunken Relief

1 Tombol Off 0 Relief Sunken

Tabel 4.16 Hasil Uji Set Pompa Kondisi Awal 1

No Tombol Set Pompa Hasil Uji Zelio

1

Kondisi Awal Pompa: 1

2

3

4

Tabel 4.17 Hasil Uji Set Pompa Kondisi Awal 0

No Tombol Set Pompa Hasil Uji Zelio

1 Kondisi Awal Pompa: 0

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 80: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

62

Tabel 4.17 (Lanjutan) Hasil Uji Set Pompa Kondisi Awal 0

No Tombol Set Pompa Hasil Uji Zelio

2

3

4

Tabel 4.14 memperlihatkan mengenai set pompa dalam keadaan awal pompa adalah

on atau kondisi 1. Pengujian set pemanas dilakukan terhadap tombol set pemanas, dan

tombol on dan off, dengan kondisi Tb bernilai 22, dan Ta bernilai 28, dan Hb bernilai 60 dan

Ha bernilai 80, nilai suhu sekarang adalah 24 dan nilai kelembaban sekarang adalah 58. Nilai

suhu sekarang adalah berada diantara nilai setpoint, sedangkan nilai kelembaban sekarang

adalah kurang dari nilai setpoint, hal ini membuat kondisi aktuator pompa bernilai 1 atau on.

Ketika tombol set pompa tidak ditekan atau kondisi 0, maka tombol on dan off tidak

akan bisa mengirimkan perintah ke Zelio. Hasil ini dapat dilihat pada tabel 4.16, nomor 1.

Di GUI, indikator dari tombol on dan off adalah relief atau berwarna biru, ini menandakan

bahwa ketika tombol ini ditekan, tidak akan ada aksi yang terjadi. Hasil di Zelio adalah tetap

sama seperti sebelumnya, yaitu kondisi pompa (Pomp) adalah 1.

Ketika tombol set pompa ditekan, maka tombol on dan off dapat beroperasi. Kondisi

awal pemanas adalah 1, maka tombol on menjadi sunken atau berwana hijau, sedangkan

tombol off tetap relief atau berwarna biru. Hasil ini dapat dilihat di tabel 4.16, nomor 2.

Ketika kondisi pemanas awal 1 atau on ini dipaksa menjadi 0 atau off, maka tombol off

ditekan atau diberi kondisi 1. Tombol off kemudian berubah berwarna hijau atau menjadi

sunken, sedangkan tombol on akan menjadi relief/berwarna biru karena kondisi 0. Hasil uji

ini dapat dilihat pada nomor 2 dan 3. Pomp atau pompa di Zelio nilainya dari kondisi awal

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 81: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

63

1 berhasil dipaksa menjadi kondisi 0. Ketika kondisi pemanas awal 1, dan tombol on ditekan,

maka kondisi pemanas akan tetap bernilai 1. Hal ini dapat dilihat pada nomor 2 dan nomor

4, yaitu kondisi Pomp tetap bernilai 1. Hasil data uji tabel 4.16 ini menunjukkan bahwa

rancangan indikator tombol relief/sunken dan perintah pemaksaan aktuator pompa berhasil

dilakukan.

Tabel 4.15 memperlihatkan mengenai set pompa dalam keadaan awal pompa adalah

off atau kondisi 0. Pengujian set pompa ini dengan kondisi Tb bernilai 22, dan Ta bernilai

28, dan Hb bernilai 60 dan Ha bernilai 80, nilai suhu sekarang adalah 25 dan nilai

kelembaban sekarang adalah 75. Nilai suhu sekarang dan nilai kelembaban sekarang berada

diantara nilai setpoint, hal ini membuat kondisi aktuator pompa bernilai 0 atau off.

Ketika tombol set pompa tidak ditekan atau kondisi 0, maka tombol on dan off tidak

akan bisa mengirimkan perintah ke Zelio. Hasil ini dapat dilihat pada tabel 4.17, nomor 1.

Di GUI, indikator dari tombol on dan off adalah relief atau berwarna biru, ini menandakan

bahwa ketika tombol ini ditekan, tidak akan ada aksi yang terjadi. Hasil di Zelio adalah tetap

sama seperti sebelumnya, yaitu kondisi pompa (Pomp) adalah 0.

Ketika tombol set pompa ditekan, maka tombol on dan off dapat beroperasi. Kondisi

awal pemanas adalah 0, maka tombol off menjadi sunken atau berwana hijau, sedangkan

tombol on tetap relief atau berwarna biru. Hasil ini dapat dilihat di tabel 4.17, nomor 2.

Ketika kondisi pompa awal 0 atau off ini dipaksa menjadi 1 atau on, maka tombol on ditekan

atau diberi kondisi 1. Tombol on kemudian berubah menjadi warna hijau atau menjadi

sunken, sedangkan tombol off akan menjadi relief/berwarna biru karena kondisi 0. Hasil uji

ini dapat dilihat pada nomor 2 dan 3. Pomp di Zelio nilainya dari kondisi awal 0 berhasil

dipaksa menjadi kondisi 1. Ketika kondisi pompa awal 0, dan tombol off ditekan, maka

kondisi pemanas akan tetap bernilai 0. Hal ini dapat dilihat pada nomor 2 dan nomor 4, yaitu

kondisi Pomp tetap bernilai 0. Hasil data uji tabel 4.17 ini menunjukkan bahwa rancangan

indikator tombol relief/sunken dan perintah pemaksaan aktuator pompa berhasil dilakukan.

Tabel 4.18 Pengujian Bagian Tombol Enable

Tombol

On

Tombol

Off

Lokal GUI

0 1 0 1

1 0 1 1

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 82: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

64

Gambar 4.7 LED Tombol Enable

Gambar 4.8 LED dan Tombol

Pengujian pada bagian tombol enable ditunjukkan pada tabel 4.18. Jika tombol on di

GUI tidak ditekan, maka sistem monitor jarak jauh hanya bisa diatur dari GUI saja. Hal ini

ditunjukkan pada gambar 4.7, meskipun push button enable ditekan dengan indikator led

menyala, namun ketika push button yang lain ditekan, tetap tidak bisa dioperasikan dari

lokal. Jika tombol on di GUI ditekan, maka sistem bisa diatur dari GUI dan dari lokal. Hal

ini ditunjukkan pada gambar 4.8, tombol enable ditekan terlebih dahulu, dan led enable

menyala, kemudian push button yang lain dapat dioperasikan. Dapat dilihat pada contoh

gambar 4.8, ketika push button pilih ditekan, maka indicator led pilih dapat menyala, dan

ketika tombol up ditekan, maka indicator led up menyala. Hasil ini sesuai dengan yang telah

dirancangankan sebelumnya.

4.2.3. Pengujian dan Analisis Data Menu Monitoring

Pengujian pada menu monitoring meliputi pengujian terhadap tiga kondisi high,

normal dan low pada suhu dan kelembaban serta status aktuator yang dihasilkan berdasar

setpoint tertentu, pengujian tampilan data-data di menu monitoring, serta pengujian terhadap

interval waktu.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 83: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

65

Tabel 4.19 Perancangan FBD [4]

Suhu Kelembaban Status Aktuator

High Normal Low High Normal Low Pemanas Pompa

1 0 0 1 0 0 0 0

1 0 0 0 1 0 0 1

1 0 0 0 0 1 0 1

0 1 0 1 0 0 1 0

0 1 0 0 1 0 0 0

0 1 0 0 0 1 0 1

0 0 1 1 0 0 1 0

0 0 1 0 1 0 1 0

0 0 1 0 0 1 1 1

Tabel 4.20 Hasil Uji Monitoring

Suhu Kelembaban Status Aktuator

H N L H N L Pemanas Pompa

30 0 0 94 0 0 0 0

31 0 0 0 65 0 0 1

38 0 0 0 0 50 0 1

0 23 0 87 0 0 1 0

0 24 0 0 70 0 0 0

0 25 0 0 0 52 0 1

0 0 20 90 0 0 1 0

0 0 18 0 72 0 1 0

0 0 16 0 0 49 1 1

Keterangan:

*kondisi 0: warna merah

*kondisi 1: warna hijau

Tabel 4.19 adalah tabel perancangan kondisi suhu dan kelembaban, serta status

aktuator sesuai dengan suhu dan kelembaban yang terjadi tersebut. Pada suhu dan

kelembaban, nilai high adalah jika suhu dan kelembaban sekarang lebih besar dari nilai

setpoint yang telah ditentukan, nilai normal jika suhu dan kelembaban berada diantara nilai

setpoint, dan nilai low jika suhu dan kelembaban sekarang kurang dari nilai setpoint yang

telah ditentukan.

Tabel 4.20 berisi hasil uji atau hasil implementasi dari tabel 4.19 dengan nilai setpoint

suhu yaitu bb bernilai 22, dan ba bernilai 28, serta nilai setpoint kelembaban yaitu bb bernilai

60 dan ba bernilai 80. Berdasarkan tabel 4.20 ini, maka hasil implementasi adalah sesuai

dengan yang dirancang seperti pada tabel 4.19

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 84: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

66

Tabel 4.21 memperlihatkan hasil uji pertukaran data yang terjadi dari Zelio ke GUI

Raspberry Pi. Dalam monitoring ini, dapat dilihat pada nomor 1 bahwa di Zelio nilai suhu

sekarang adalah 25, kelembaban sekarang 74, status pemanas adalah 0, dan status pompa

adalah 0. Data dari Zelio ini dikirimkan ke GUI dan di menu monitoring tersebut tertampil

nilai suhu adalah 25, nilai kelembaban adalah 74, status pemanas adalah berwarna merah

atau kondisi 0, dan status pompa adalah berwarna merah atau kondisi 0. Tabel 4.21, nomor

2 dan 4 juga telah menunjukkan kesesuaian antara data-data yang dikirim dari Zelio ke GUI

Raspberry Pi. Melalui tabel 4.21 dapat dilihat bahwa pengiriman data dari Zelio ke

Raspberry GUI telah berhasil dilakukan.

Tabel 4.21 Hasil Uji Monitoring di GUI

No Data Dari Zelio Hasil Data Tampil Di GUI

1

2

3

4

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 85: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

67

Gambar 4.9 Interval Waktu 5 detik

Pengujian selanjutnya adalah pada interval waktu monitoring yaitu 5 detik, 10 detik

dan 15 detik. Data-data dari Zelio yang dikirimkan akan tertampil di GUI sesuai dengan

interval waktu yang telah dipilih tersebut. Gambar 4.9 menunjukkan data yang tertampil

setiap 5 detik, gambar 4.10 menunjukkan data yang tertampil setiap 10 detik, dan gambar

4.11 menunjukkan data yang tertampil setiap 15 detik. Dari gambar-gambar tersebut dapat

dilihat bahwa meskipun nilai suhu dan kelembaban serta status aktuator berubah-ubah,

namun data-data yang akan tertampil adalah data yang berada tepat pada interval waktu

tersebut. Jika yang diambil adalah interval waktu 5 detik, dan data pada detik 1 adalah

suhu=25, kelembaban=95, status pemanas=1, status pompa=0, lalu pada detik ke-4 ada

perubahan data, yaitu suhu=23, kelembaban=95, status pemanas=1, dan status pompa=0,

kemudian pada detik ke-5 terdapat perubahan data lagi, yaitu suhu=20, kelembaban=95,

status pemanas=1, dan status pompa=0, maka data yang tertampil adalah data pada detik ke-

5 tersebut (entry dd=5), yaitu suhu=20, kelembaban=95, status pemanas=1, dan status

pompa=0. Demikian juga pada interval waktu 10 detik dan 15 detik, data tertampil adalah

data yang tepat pada interval waktu tersebut. Hasil ini menunjukkan bahwa interval data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 86: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

68

telah sesuai dengan yang dirancangkan sebelumnya, yaitu data hanya akan tertampil sesuai

dengan waktu yang telah dipilih tersebut.

Gambar 4.10 Interval Waktu 10 detik

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 87: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

69

Gambar 4.11 Interval Waktu 15 detik

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 88: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

70

Gambar 4.12 Pemilihan Interval Waktu

Gambar 4.12 menunjukkan hal yang terjadi jika interval waktu dipilih dari nilai waktu

yang besar ke nilai yang kecil, sebagai contoh pilihan awal interval waktu adalah 10 detik,

kemudian diganti menjadi interval waktu 5 detik. Dapat dilihat digambar bahwa perhitungan

detik dihentikan pada detik ke-8 atau tidak akan dilanjutkan sampai detik ke-10, karena jika

terus dilanjutkan sampai detik ke-10 atau tidak dihentikan, maka perhitungan detik akan

berlanjut dan tidak bisa reset ke detik pertama kembali, sehingga dalam kasus ini, data

monitoring yang tertampil adalah data pada detik ke-8. Setelah itu perhitungan reset kembali

ke interval waktu 5 detik. Hal ini telah sesuai dengan yang dirancangkan dalam program.

4.2.4. Pengujian dan Analisis Data Menu Logging

Pengujian dalam menu logging ini meliputi pengujian terhadap penyimpanan data

sesuai dengan interval waktu logging, membuka dan menampilkan file, penyimpanan

otomatis nama file sesuai dengan tanggal, serta membuka dan menampilkan plot. Data-data

yang dilogging ini berdasarkan pada nilai bb suhu yaitu 22, ba suhu yaitu 28, bb kelembaban

yaitu 60 dan ba kelembaban yaitu 80.

Gambar 4.13 menunjukkan bahwa penyimpanan otomatis nama file sesuai dengan

tanggal berhasil dilakukan. Data-data yang dihasilkan dapat dilihat dalam lampiran 1, data-

data-data ini adalah hasil dari kombinasi interval waktu 5 detik, 10 detik dan 15 detik dengan

interval logging data 5 data, 15 data dan 20 data. Total data yang disimpan tersebut adalah

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 89: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

71

2545 data. Data-data ini diambil selama 27 jam dari tanggal 10-08-2018 jam 13:48:46

sampai tanggal 11-08-2018 jam 17:11:38, dapat dilihat bahwa setelah jam 24.00 tanggal 10-

08-2018, data-data masuk dalam file baru dengan nama file 11-08-2018 berhasil disimpan.

Ukuran maksimum file csv yang disimpan adalah 68kb dengan interval 5 detik dan 5 data,

dengan total data dalam 24 jam yaitu 3456 data. Kapasitas memory Raspberry Pi yang

digunakan yaitu 32GB, dengan sisa kapasitas 16.7GB setelah memory yang lain digunakan

untuk sistem. Dengan sisa kapasistas 16.7GB ini, maka kemampuan untuk menyimpan file

csv 68kb adalah sejumlah 245588 file. Dari hal tersebut, jika 1 file disimpan perhari, maka

Raspberry Pi disimpulkan memiliki kapasitas menyimpan file csv hingga 672 tahun.

Gambar 4.13 Penyimpanan Nama File Otomatis

Tabel 4.22 Data 29-08-2018.csv

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 90: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

72

Gambar 4.14 Interval 5 Data 5 Detik

Pengujian ini dilakukan terhadap interval logging data dengan pilihan 5 data dan

interval waktu 5 detik. Gambar 4.14 menunjukkan bahwa dalam setiap 5 detik, data berhasil

dikumpulkan hingga berjumlah 5 data, kemudian 5 data tersebut dirata-rata, dan waktu

selesai proses pengumpulan 5 data yang dirata-rata tersebut adalah 14:47:08. Mengacu pada

persamaan 2.9 pada Bab II, maka hasil rata-rata suhu=36, rata kelembaban=96, rata

pemanas=0, dan rata pompa=0. Sesuai perancangan pada tabel 4.19, yaitu ketika nilai suhu

adalah high dan nilai kelembaban adalah high, maka status pemanas adalah 0, dan status

pompa adalah 0. Hal ini berarti hasil telah sesuai dengan yang dirancangkan. Data-data ini

berhasil dilogging atau disimpan dalam file berformat csv. Hasil logging data ini dapat

dilihat dalam tabel 4.22

Gambar 4.15 Interval 15 Data 5 Detik

Pengujian ini dilakukan terhadap interval logging data dengan pilihan 15 data dan

interval waktu 5 detik. Gambar 4.15 menunjukkan bahwa dalam setiap 5 detik, data berhasil

dikumpulkan hingga berjumlah 15 data, kemudian 15 data tersebut dirata-rata, dan waktu

selesai proses pengumpulan 15 data yang dirata-rata tersebut adalah 14:50:28. Mengacu

pada persamaan 2.9 pada Bab II, maka hasil rata-rata suhu=26.53333, rata

kelembaban=48.8, rata pemanas=0, dan rata pompa=1. Hasil logging data ini dapat dilihat

dalam tabel 4.22. Dalam tabel tersebut, rata suhu adalah 27, dan rata kelembaban adalah 49,

hal ini karena dalam pemrograman dibuat adanya pembulatan. Jika nilai lebih atau sama

dengan 0.5, maka nilai akan mengalami pembulatan keatas menjadi 1, namun jika nilai

kurang dari 0.5 maka nilai akan mengalami pembualatan kebawah menjadi 0, sehingga rata

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 91: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

73

suhu=26.53333 menjadi 27 dan rata kelembaban=48.8 menjadi 49. Sesuai perancangan pada

tabel 4.19, yaitu ketika nilai suhu adalah normal dan nilai kelembaban adalah low, maka

status pemanas adalah 0, dan status pompa adalah 1. Hal ini berarti hasil telah sesuai dengan

yang dirancangkan. Data-data ini berhasil dilogging atau disimpan dalam file berformat csv.

Gambar 4.16 Interval 20 Data 5 Detik

Pengujian ini dilakukan terhadap interval logging data dengan pilihan 20 data dan

interval waktu 5 detik. Gambar 4.16 menunjukkan bahwa dalam setiap 5 detik, data berhasil

dikumpulkan hingga berjumlah 20 data, kemudian 20 data tersebut dirata-rata, dan waktu

selesai proses pengumpulan 20 data yang dirata-rata tersebut adalah 14:52:13. Mengacu

pada persamaan 2.9 pada Bab II, maka hasil rata-rata suhu=24.3, rata kelembaban=69.8, rata

pemanas=0, dan rata pompa=0. Hasil logging data ini dapat dilihat dalam tabel 4.22. Dalam

tabel tersebut, rata suhu adalah 24, dan rata kelembaban adalah 70, hal ini karena dalam

pemrograman dibuat adanya pembulatan. Jika nilai lebih atau sama dengan 0.5, maka nilai

akan mengalami pembulatan keatas menjadi 1, namun jika nilai kurang dari 0.5 maka nilai

akan mengalami pembualatan kebawah menjadi 0, sehingga rata suhu=24.3 menjadi 24 dan

rata kelembaban=69.8 menjadi 70. Sesuai perancangan pada tabel 4.19, yaitu ketika nilai

suhu adalah normal dan nilai kelembaban adalah normal, maka status pemanas adalah 0, dan

status pompa adalah 0. Hal ini berarti hasil telah sesuai dengan yang dirancangkan. Data-

data ini berhasil dilogging atau disimpan dalam file berformat csv.

Gambar 4.17 Interval 5 Data 10 Detik

Pengujian ini dilakukan terhadap interval logging data dengan pilihan 5 data dan

interval waktu 10 detik. Gambar 4.17 menunjukkan bahwa dalam setiap 10 detik, data

berhasil dikumpulkan hingga berjumlah 5 data, kemudian 5 data tersebut akan dirata-rata,

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 92: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

74

dan waktu selesai proses pengumpulan 5 data yang dirata-rata tersebut adalah 14:47:58.

Mengacu pada persamaan 2.9 pada Bab II, maka hasil rata-rata suhu=38, rata

kelembaban=73.8, rata pemanas=0, dan rata pompa=0.8. Hasil logging data ini dapat dilihat

dalam tabel 4.22. Dalam tabel tersebut, rata kelembaban memiliki nilai 74 dan rata pompa=1,

hal ini karena dalam pemrograman dibuat adanya pembulatan. Jika nilai lebih atau sama

dengan 0.5, maka nilai akan mengalami pembulatan keatas menjadi 1, namun jika nilai

kurang dari 0.5 maka nilai akan mengalami pembualatan kebawah menjadi 0, sehingga rata

kelembaban=73.8 menjadi 74, dan rata pompa=0.8 menjadi 1. Sesuai perancangan pada

tabel 4.19, yaitu ketika nilai suhu adalah high dan nilai kelembaban adalah normal, maka

status pemanas adalah 0, dan status pompa adalah 1. Hal ini berarti hasil telah sesuai dengan

yang dirancangkan. Data-data ini berhasil dilogging atau disimpan dalam file berformat csv.

Gambar 4.18 Interval 5 Data 15 Detik

Pengujian ini dilakukan terhadap interval logging data dengan pilihan 5 data dan

interval waktu 15 detik. Gambar 4.18 menunjukkan bahwa dalam setiap 15 detik, data

berhasil dikumpulkan hingga berjumlah 5 data, kemudian 5 data tersebut akan dirata-rata,

dan waktu selesai proses pengumpulan 5 data yang dirata-rata tersebut adalah 14:49:13.

Mengacu pada persamaan 2.9 pada Bab II, maka hasil rata-rata suhu=31, rata

kelembaban=47.4, rata pemanas=0, dan rata pompa=1. Hasil logging data ini dapat dilihat

dalam tabel 4.22. Dalam tabel tersebut, rata kelembaban memiliki nilai 47, hal ini karena

dalam pemrograman dibuat adanya pembulatan. Jika nilai lebih atau sama dengan 0.5, maka

nilai akan mengalami pembulatan keatas menjadi 1, namun jika nilai kurang dari 0.5 maka

nilai akan mengalami pembualatan kebawah menjadi 0, sehingga rata kelembaban 47.4

menjadi 47. Sesuai perancangan pada tabel 4.19, yaitu ketika nilai suhu adalah high dan nilai

kelembaban adalah low, maka status pemanas adalah 0, dan status pompa adalah 1. Hal ini

berarti hasil telah sesuai dengan yang dirancangkan. Data-data ini berhasil dilogging atau

disimpan dalam file berformat csv.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 93: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

75

Gambar 4.19 Interval 15 Data 10 Detik

Pengujian ini dilakukan terhadap interval logging data dengan pilihan 15 data dan

interval waktu 10 detik. Gambar 4.19 menunjukkan bahwa dalam setiap 10 detik, data

berhasil dikumpulkan hingga berjumlah 15 data, kemudian 15 data tersebut akan dirata-rata,

dan waktu selesai proses pengumpulan 15 data yang dirata-rata tersebut adalah 14:54:43.

Mengacu pada persamaan 2.9 pada Bab II, maka hasil rata-rata suhu=24.8, rata

kelembaban=94, rata pemanas=0.93333, dan rata pompa=0. Hasil logging data ini dapat

dilihat dalam tabel 4.22. Dalam tabel tersebut, rata suhu=25 dan rata pemanas=1, hal ini

karena dalam pemrograman dibuat adanya pembulatan. Jika nilai lebih atau sama dengan

0.5, maka nilai akan mengalami pembulatan keatas menjadi 1, namun jika nilai kurang dari

0.5 maka nilai akan mengalami pembualatan kebawah menjadi 0, sehingga rata suhu=24.8

menjadi 25, dan rata pemanas=0.93333 menjadi 1. Sesuai perancangan pada tabel 4.19, yaitu

ketika nilai suhu adalah low dan nilai kelembaban adalah high, maka status pemanas adalah

1, dan status pompa adalah 0. Hal ini berarti hasil telah sesuai dengan yang dirancangkan.

Data-data ini berhasil dilogging atau disimpan dalam file berformat csv.

Gambar 4.20 Interval 15 Data 15 Detik

Pengujian ini dilakukan terhadap interval logging data dengan pilihan 15 data dan

interval waktu 15 detik. Gambar 4.20 menunjukkan bahwa dalam setiap 15 detik, data

berhasil dikumpulkan hingga berjumlah 15 data, kemudian 15 data tersebut akan dirata-rata,

dan waktu selesai proses pengumpulan 15 data yang dirata-rata tersebut adalah 15:01:49.

Mengacu pada persamaan 2.9 pada Bab II, maka hasil rata-rata suhu=17.06, rata

kelembaban=69, rata pemanas=1, dan rata pompa=0. Hasil logging data ini dapat dilihat

dalam tabel 4.22. Dalam tabel tersebut, rata suhu adalah 17, hal ini karena dalam

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 94: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

76

pemrograman dibuat adanya pembulatan. Jika nilai lebih atau sama dengan 0.5, maka nilai

akan mengalami pembulatan keatas menjadi 1, namun jika nilai kurang dari 0.5 maka nilai

akan mengalami pembualatan kebawah menjadi 0, sehingga rata suhu=17.06 menjadi 17.

Sesuai perancangan pada tabel 4.19, yaitu ketika nilai suhu adalah high dan nilai kelembaban

adalah normal, maka status pemanas adalah 1, dan status pompa adalah 0. Hal ini berarti

hasil telah sesuai dengan yang dirancangkan. Data-data ini berhasil dilogging atau disimpan

dalam file berformat csv.

Gambar 4.21 Interval 20 Data 10 Detik

Pengujian ini dilakukan terhadap interval logging data dengan pilihan 20 data dan

interval waktu 10 detik. Gambar 4.21 menunjukkan bahwa dalam setiap 10 detik, data

berhasil dikumpulkan hingga berjumlah 20 data, kemudian 20 data tersebut akan dirata-rata,

dan waktu selesai proses pengumpulan 20 data yang dirata-rata tersebut adalah 14:58:04.

Mengacu pada persamaan 2.9 pada Bab II, maka hasil rata-rata suhu=17.05, rata

kelembaban=91, rata pemanas=1, dan rata pompa=0. Hasil logging data ini dapat dilihat

dalam tabel 4.22. Dalam tabel tersebut, rata suhu=17, hal ini karena dalam pemrograman

dibuat adanya pembulatan. Jika nilai lebih atau sama dengan 0.5, maka nilai akan mengalami

pembulatan keatas menjadi 1, namun jika nilai kurang dari 0.5 maka nilai akan mengalami

pembualatan kebawah menjadi 0, sehingga rata suhu=17.05 menjadi 17. Sesuai perancangan

pada tabel 4.19, yaitu ketika nilai suhu adalah low dan nilai kelembaban adalah high, maka

status pemanas adalah 1, dan status pompa adalah 0. Hal ini berarti hasil telah sesuai dengan

yang dirancangkan. Data-data ini berhasil dilogging atau disimpan dalam file berformat csv.

Gambar 4.22 Interval 20 Data 15 Detik 10

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 95: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

77

Pengujian ini dilakukan terhadap interval logging data dengan pilihan 20 data dan

interval waktu 15 detik. Gambar 4.22 menunjukkan bahwa dalam setiap 15 detik, data

berhasil dikumpulkan hingga berjumlah 20 data, kemudian 20 data tersebut akan dirata-rata,

dan waktu selesai proses pengumpulan 20 data yang dirata-rata tersebut adalah 15:06:48.

Mengacu pada persamaan 2.9 pada Bab II, maka hasil rata-rata suhu=17.1, rata

kelembaban=53.95, rata pemanas=1, dan rata pompa=1. Hasil logging data ini dapat dilihat

dalam tabel 4.22. Dalam tabel tersebut, rata suhu adalah 17 dan rata kelembaban adalah 54,

hal ini karena dalam pemrograman dibuat adanya pembulatan. Jika nilai lebih atau sama

dengan 0.5, maka nilai akan mengalami pembulatan keatas menjadi 1, namun jika nilai

kurang dari 0.5 maka nilai akan mengalami pembualatan kebawah menjadi 0, sehingga rata

suhu=17.1 menjadi 17, rata kelembaban=53.95 menjadi 54. Sesuai perancangan pada tabel

4.19, yaitu ketika nilai suhu adalah low dan nilai kelembaban adalah low, maka status

pemanas adalah 1, dan status pompa adalah 1. Hal ini berarti hasil telah sesuai dengan yang

dirancangkan. Data-data ini berhasil dilogging atau disimpan dalam file berformat csv.

Gambar 4.22 Perubahan Pemilihan Data Naik

Ketika terjadi perubahan pemilihan interval data naik ataupun turun, maka data yang

telah terkumpul sebelumnya akan direset dan kembali mengumpulkan dari awal. Gambar

4.22 menunjukkan mengenai perubahan pilihan data dari 5 data ke 15 data. Pengumpulan

data direset pada data ke-2, kemudian mulai lagi mengumpulkan dari data ke-1 untuk 15

data. Gambar 4.23 menunjukkan mengenai perubahan pilihan data dari 20 data ke 5 data.

Pengumpulan data direset pada data ke-9, kemudian mulai mengumpulkan lagi dari data ke-

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 96: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

78

1 untuk 5 data. Hal ini telah sesuai dengan yang dirancang sebelumnya, yaitu membuat

logging waktu bergantung pada selesainya pengumpulan data dan yang dirata-rata, namun

hal ini juga menjadi kekurangan sistem. Kekurangan ini adalah karena sistem belum bisa

menyimpan dan melakukan rata-rata nilai yang telah dikumpulkan sebelum perubahan

pemilihan interval data.

Gambar 4.23 Perubahan Pemilihan Data Turun

Gambar 4.24 Dialog Window Open File

Gambar 4.24 menunjukkan mengenai dialog window open file. Dalam window open

file ini, user dapat memilih file csv yang ingin dibuka. Gambar 4.25 adalah tampilan dari file

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 97: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

79

csv yang telah dibuka. File csv ini ditampilkan dalam bentuk text. Hasil ini telah sesuai yang

diharapkan, yaitu open file berhasil membuka file csv.

Gambar 4.25 Open File CSV

Gambar 4.26 Dialog Window Tampilkan Plot

Ketika dialog window plot atau dialog window open file dibuka, sistem akan

freeze/berhenti sesaat untuk interupsi karena program dialog berada pada root yang berbeda,

setelah file dipilih dan terbuka, sistem akan running kembali. Dialog Window Plot

ditunjukkan dalam gambar 4.26. Dalam window plot ini, user dapat memilih file csv yang

ingin ditampilkan plotnya. Plot akan ditampilkan melalui tombol Go to Plot, kemudian user

akan diarahkan ke window plot. Plot tidak bisa langsung ditampilkan setelah memilih file

yang akan ditampilkan plotnya, namun tombol Go to Plot perlu ditekan untuk diarahkan ke

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 98: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

80

window plot. Hal ini karena semua windows menu dibuat dalam bentuk multiframe, dan

menu logging ada dalam frame 3, sehingga window plot tidak bisa diletakkan di plot 3,

namun diletakkan di frame baru yaitu frame 4. Hasil dari tampilan plot ini dapat dilihat dalam

gambar 4.27.

Gambar 4.27 Tampilan Plot Dalam Grafik

Tampilan plot pada gambar 4.27 ini adalah tampilan dari file 2018-08-10.csv, dapat

dilihat bahwa file csv telah berhasil ditampilkan plotnya dalam bentuk grafik, akan tetapi

karena data terlalu banyak atau berjumlah 1246 data maka plot tidak dapat dibaca dengan

baik dan jelas. Oleh karena itu, pada window plot dibuat penambahan tombol dan fungsi

agar plot dapat dibaca dengan baik. Penambahan ini ditunjukan oleh gambar 4.28.

Penambahan pada tampilan plot ini berupa entry untuk memasukan jumlah data yang

ingin ditampilkan, tombol ok untuk mengeksekusi nilai entry tersebut, serta tombol kanan

untuk memindahkan data tampilan plot kekanan dan tombol kiri untuk memindahkan data

tampilan plot kekiri. Dapat dilihat pada gambar 4.28 ini, nilai entry yang dimasukan adalah

20, oleh karena itu plot yang ditampilkan adalah dari data 1 sampai data 20. Implementasi

ini telah sesuai dengan yang rancangan penambahan.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 99: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

81

Gambar 4.28 Tampilan Hasil Entry Data Plot

Gambar 4.29 Tampilan Hasil Tombol Kanan Plot

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 100: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

82

Gambar 4.30 Tampilan Hasil Tombol Kiri Plot

Pergeseran data kekanan dan kiri adalah 10 data, hal ini adalah sesuai dengan

pemrograman di python, dapat dilihat di gambar 4.52. Gambar 4.29 menunjukkan mengenai

hasil dari implementasi tombol kanan. Plot yang ditampilkan adalah dari data 1 sampai data

20, ketika tombol kanan ditekan, maka plot yang ditampilkan adalah berasal dari data 11

sampai 30. Hasil ini telah sesuai dengan yang diharapkan.

Gambar 4.30 menunjukkan mengenai hasil dari implementasi tombol kiri. Plot yang

ditampilkan sebelumya adalah dari data 11 sampai 30, maka ketika tombol kiri ditekan, plot

yang ditampilkan adalah dari data 1 sampai 20. Hasil ini telah sesuai dengan yang

diharapkan.

4.3. Pembahasan Perangkat Lunak

4.3.1. Pembahasan Program di Zelio Soft

Diagram data write dan read antarmuka diimplementasikan kedalam program Zelio

Soft. Gambar 4.31 dan 4.32 menunjukkan hasil pemrograman diagram data antarmuka

tersebut.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 101: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

83

Gambar 4.31 Program Sistem Jarak Jauh di Zelio

Gambar 4.32 Program Sistem Lokal di Zelio [4]

Gambar 4.31 dan gambar 4.32 menunjukkan bahwa register 16 digunakan untuk

selektor data, register 17 untuk input nilai data dan input selektor mux set aktuator, register

18 untuk pulsa preset dan input mux selektor, serta register 19 untuk set aktuator. Register

16 tersebut dihubungkan ke Word Bit Conversion sehingga nilai integer bisa dipecah

kedalam bit-bit integer. Bit 01 dipakai untuk selektor batas atas suhu, bit 02 untuk selektor

batas bawah suhu, bit 03 untuk batas atas kelembaban, bit 04 untuk batas bawah kelembaban,

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 102: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

84

bit 07 untuk mengaktifkan tombol enable, bit 08 sebagai input selektor mux untuk membaca

nilai suhu dan kelembaban serta ba dan bb suhu dan kelembaban. Bit 09 untuk

menonaktifkan tombol enable. Jika bit 07 ini aktif atau kondisi 1, maka sistem dapat diatur

dari kendali lokal dan dari GUI, namun jika bit 09 bernilai 1, maka sistem hanya bisa diatur

dari GUI.

Register 18 dihubungkan ke Word Bit Conversion, kemudian bit 01 sampai bit 04 dari

Register 18 dan bit 05 serta bit 06 dari Register 16 dihubungkan ke gerbang AND. Keluaran

dari gerbang AND digunakan untuk memberikan pulsa preset bernilai 1 pada batas atas dan

batas bawah suhu, serta batas atas dan batas bawah kelembaban. Bit 05 digunakan sebagai

input selektor mux untuk membaca nilai suhu dan kelembaban serta ba dan bb suhu dan

kelembaban

Bit 01 sampai bit 07 dari Register 17 dihubungkan ke preset value pada up/down

counter seperti pada gambar 4.31 untuk memberi masukan nilai data setpoint berupa batas

atas suhu dan kelembaban, dan batas bawah suhu dan kelembaban. Preset value akan aktif

jika nilai pulsa preset pada register 18 aktif atau saat kondisi 1. Bit 08 untuk selektor MUX

pemanas, bit 09 untuk selektor MUX pompa.

Register 19 dihubungkan ke Bit Word Conversion, bit 01 digunakan untuk input

channel B MUX pemanas, bit 02 digunakan untuk input channel B MUX pompa. Channel

A pada MUX pemanas dan pompa dihubungkan ke output aktuator lokal. Jika selektor MUX

aktuator bernilai 1, maka channel B menjadi aktif, sebaliknya jika bernilai 0, maka channel

A menjadi aktif, dan output MUX bergantung pada kondisi channel yang aktif.

Register 20 digunakan untuk ouput dari suhu, nilai ba suhu dan nilai bb kelembaban,

register 21 digunakan untuk output dari kelembaban, ba kelembaban dan bb suhu. Output

dari MUX pemanas dihubungkan ke output integer register 22, dan output MUX pompa

dihubungkan ke output integer register 23.

4.3.2. Pembahasan Konfigurasi IP Address

IP yang digunakan dalam penelitian ini adalah IP statis. Konfigurasi IP ini dilakukan

terhadap Zelio dan Raspberry Pi. Pada Raspberry Pi, IP dapat dikonfigurasi dari

file:/etc/dhcpcd.conf. Gambar 4.34 menunjukkan konfigurasi alamat IP statis di Raspberry

Pi.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 103: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

85

Gambar 4.34 Konfigurasi IP Address di Raspberry Pi

Gambar 4.35 IP Address Statis Raspberry Pi

Gambar 4.35 menunjukkan hasil dari konfigurasi IP address statis pada Raspberry Pi.

Hasil ini dapat dilihat dengan membuka LXTerminal Raspberry Pi dengan mengetikan

perintah ifconfig. Serangkaian informasi akan muncul di halaman terminal tersebut,

termasuk didalamnya IP Raspberry yang telah berubah ke statis menjadi alamat

192.168.1.20 dengan network ID 192.168.1.0 dan host ID 0.0.0.20, dan subnet mask default

dari jaringan kelas C adalah 255.255.255.0. Hal ini telah sesuai dengan perancangan IP statis

terhadap Raspberry Pi.

Gambar 4.36 Konfigurasi IP Address di Zelio

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 104: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

86

Pada Zelio, pengaturan IP address dilakukan pada halaman Program Konfigurasi di

aplikasi Zelio Soft. Hal ini dapat dilihat digambar 4.36. IP address yang dipilih adalah jenis

static address, kemudian IP address yang dimasukan adalah 192.168.1.10 dan subnetwork

masknya adalah 255.255.255.0. Hal ini telah sesuai dengan perancangan IP statis terhadap

Zelio. Zelio dan Raspberry Pi memiliki network ID dan subnet mask yang sama, yang berarti

kedua perangkat ini berada dalam satu jaringan yang sama.

4.3.3. Pembahasan pyModbusTCP

Pertukaran data antara Raspberry Pi dan Zelio dapat terjadi dengan menggunakan

Modbus TCP. Gambar 4.37 dan gambar 4.38 menunjukkan listing init pemrograman

Modbus TCP atau dalam python disebut pyModbusTCP.

Gambar 4.37 Init Pemrograman Modbus TCP

Gambar 4.38 Pemanggilan Modul Modbus TCP

ModbusClient dipanggil dari paket library modul pyModbusTCP. ModbusClient ini adalah

perangkat yang bertindak sebagai client, dalam hal ini adalah Zelio. Initialisasi dari

ModbusClient dilakukan dengan fungsi host/port return None if error, atau fungsi yang

mengembalikan nilai none jika tidak sesuai dengan host/port yang telah ditentukan. IP

address Zelio yang sudah ditetapkan kemudian dimasukkan dalam syntax fungsi tersebut,

yaitu 192.168.1.10, dan port default untuk ModbusTCP yaitu 502. Gambar 4.37

menunjukkan pemrograman untuk membuat sambungan dari TCP tetap terbuka, yaitu

dengan menambahkan kode auto_open=True.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 105: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

87

4.3.4. Pembahasan Program Perangkat Lunak

4.3.4.1. Pembahasan Implementasi Program di Python

Pemrograman dalam python ini terdiri dari pemanggilan modul, inisialisasi variable,

definisi fungsi, dan pemanggilan fungsi.

Gambar 4.39 Pemanggilan Modul Program

Gambar 4.39 memperlihatkan mengenai listing pemanggilan modul atau import

package pemrograman dalam python. Modul yang dipanggil adalah modul Tkinter,

tkMessageBox, tkFont, numpy, tkFileDialog, csv, datetime, dateutil, dan matplotlib. Modul

Tkinter dipanggil untuk pemrograman GUI. Modul tkMessageBox adalah modul yang

digunakan untuk pemrograman beberapa pesan, contohnya pesan peringatan. Modul tkFont

adalah pemanggilan untuk jenis huruf, besar huruf, dan ketebalan huruf. Modul numpy

adalah library yang didalamnya terdapat fungsi matematika untuk melakukan perhitungan.

Modul tkFileDialog adalah package library untuk menampilkan dialog window dalam suatu

window. Modul csv adalah modul yang dipakai untuk melakukan penyimpanan data dan

pembacaan data ke dalam suatu file yang bertipe csv. Modul datetime adalah modul yang

menampilkan waktu berupa tanggal, hari, jam, menit, dan detik. Modul dateutil adalah untuk

pemanggilan ekstensi dari modul datetime standard, dalam hal ini berkaitan dengan parser

yaitu untuk mengurai suatu format untuk mempresentasikan waktu. Modul matplotlib adalah

modul untuk melakukan pemrograman terhadap plot, didalamnya terdapat pembuatan label

nama terhadap garis x dan y, navigasi toolbar, dan menampilkan plot dalam suatu canvas.

Gambar 4.40 Pemanggilan Fungsi Untuk Frame

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 106: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

88

Pemanggilan fungsi terhadap frame dapat dilihat pada gambar 4.40. Dalam syntax ini,

frame dibuat menjadi multiframe, yaitu frame: f0, f1, f2, f3, f4. Jika f0 dipanggil, maka

windows yang tertampil adalah frame 0 (f0), jika f1 dipanggil, maka yang akan tertampil

adalah frame windows f1.

Gambar 4.41 Pemanggilan Fungsi Setpoint Suhu

Program yang ditampilkan dalam gambar 4.41 adalah pemanggilan fungsi untuk

memasukan nilai ba dan bb suhu serta mengeksekusinya untuk kemudian diteruskan ke

Zelio. Dalam penulisan program, dibuat batas pemasukan nilai ba dan bb, yaitu ba harus

lebih besar dari bb, jika aturan ini dilanggar maka warning nilai error akan muncul di

window. Register (16, 1) digunakan untuk setting ba suhu, sedangkan register (16, 2)

digunakan untuk setting bb suhu. Register (17, write_value) digunakan untuk input data ba

suhu dan bb suhu. Register (18, 1) dan register (18, 2) digunakan sebagai pulsa untuk

mengeksekusi data yang telah dimasukan.

Listing program dalam gambar 4.42 adalah pemanggilan fungsi untuk memasukkan

nilai ba dan bb kelembaban ke dalam entry. Setelah nilai disimpan, maka akan dieksekusi

dan perintah akan diteruskan ke Zelio. Dalam penulisan program, dibuat batas pemasukan

nilai ba dan bb, yaitu ba harus lebih besar dari bb, jika aturan ini dilanggar maka warning

nilai error akan muncul di window. Register (16, 4) digunakan untuk setting ba kelembaban,

sedangkan register (16, 8) digunakan untuk setting bb kelembaban. Register (17,

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 107: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

89

write_value) digunakan untuk input data setpoint kelembaban. Register (18, 4) dan register

(18, 8) digunakan sebagai pulsa untuk mengeksekusi data yang telah dimasukan.

Gambar 4.42 Pemanggilan Fungsi Setpoint Kelembaban

Gambar 4.43 Pemanggilan Fungsi Tombol Enable

Gambar 4.43 menunjukkan listing program pemanggilan fungsi untuk pengaturan

tombol enable. Fungsi def toena digunakan untuk mengatifkan tombol enable, sedangkan

def toenof digunakan untuk menonaktifkan tombol enable. Register (16, 64) digunakan untuk

memberikan kondisi 1 pada tombol on. Register (16, 256) digunakan untuk memberi kondisi

1 pada tombol off.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 108: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

90

Gambar 4.44 Pemanggilan Fungsi Set Pemanas

Gambar 4.45 Pemanggilan Fungsi Set Pompa

Pemrograman yang ditunjukkan dalam gambar 4.44 adalah pemanggilan fungsi untuk

pengaturan tombol set pemanas. Fungsi def toheat adalah untuk meminta status data

pemanas pada saat sekarang (register (22, 1)), untuk mengaktifkan dan menonaktifkan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 109: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

91

tombol on dan off, dan mengembalikan status pemanas ke kondisi lokal awal. Demikian juga

pada gambar 4.45, fungsi def topomp adalah untuk meminta status data pompa pada saat

sekarang (register (23, 1)), untuk mengaktifkan dan menonaktifkan tombol on dan off, serta

mengembalika status pompa ke kondisi lokal awal.

Gambar 4.46 Pemanggilan Fungsi Kondisi On/Off Aktuator

Fungsi perintah def toonoff dan def toonoff2 seperti yang diperlihatkan pada gambar

4.46 digunakan untuk tombol on dan off pemaksaan aktuator. Fungsi def toonoff adalah

untuk pengaturan tombol on dan off pemanas. Register (17, 128) dan register (19, 1)

digunakan untuk memberikan kondisi 1 pada tombol on pemanas, sedangkan fungsi def

toonoff2 adalah untuk mengatur tombol on dan off pompa. Register (17, 256) dan register

(19, 2) digunakan untuk memberikan kondisi 1 pada tombol on pompa.

Gambar 4.47 Init Variable Monitoring

Gambar 4.47 menunjukkan mengenai bagian dari listing program menu monitoring.

Serangkaian program diatas adalah inisialisasi variable yang digunakan dalam menu

monitoring. Tipe data yang digunakan dalam variable ini adalah tipe data int.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 110: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

92

Gambar 4.48 Pemanggilan Fungsi Pemilihan Interval Waktu

Gambar 4.48 menunjukkan mengenai fungsi pemanggilan perintah seleksi interval

waktu pada menu monitoring. Nilai interval waktu default untuk monitoring adalah 5 detik,

hal ini bisa dilihat pada nilai nib yang telah diinisialisasi terlebih dahulu, yaitu nib=5.

Gambar 4.49 Pemangilan Fungsi Menampilkan File

Gambar 4.49 menunjukkan pemanggilan fungsi untuk membuka file csv. Dalam

pemrograman ini file csv akan dibuka dalam bentuk text dengan panjang window text adalah

40 dan lebar window text adalah 60.

Gambar 4.50 menunjukkan pemanggilan fungsi untuk membuka plot. Didalamnya

terdapat fungsi canvas, untuk menampilkan plot dalam kanvas. Kanvas ini berada dalam

frame 4 (master = f4). Demikian juga terdapat toolbar navigasi yang berada dalam frame 4.

Toolbar ini digunakan untuk mengetahui nilai dari titik yang ditunjukkan oleh kursor.

Gambar 4.51 sampai 4.52 adalah mengenai penambahan fungsi di tampilan plot.

Gambar 4.51 menunjukkan penambahan fitur entry dan tombol ok. Nilai data ke-1 telah

diinisialisasi terlebih dahulu, yaitu u=1. Nilai entry dimasukkan dalam variable v. Nilai data

yang akan ditampilkan yaitu dari data u sampai data v.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 111: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

93

Gambar 4.50 Pemanggilan Fungsi Menampilkan Plot

Gambar 4.51 Pemanggilan Fungsi Nilai Plot

Gambar 4.52 Pemanggilan Fungsi Plot Kanan dan Kiri

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 112: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

94

Gambar 4.52 menujukkan pemanggilan fungsi tombol kanan (def addka). Nilai

pergeseran kekanan adalah 10 (u=u+10, v=v+10), sehingga ketika tombol kanan ini ditekan,

data plot yang ditampilkan akan bergeser 10 data kekanan. Gambar 4.52 menujukkan

pemanggilan fungsi tombol kiri (def addki). Nilai pergeseran kekanan adalah 10 (u=u-10,

v=v-10), sehingga ketika tombol kiri ini ditekan, data plot yang ditampilkan akan bergeser

10 data kekiri. Pemanggilan fungsi def remove_plot digunakan untuk menutup kanvas plot

yang telah dibuka.

Gambar 4.53 Init Variable Logging

Gambar 4.54 Pemanggilan Fungsi Interval Logging

Gambar 4.53 menujukkan mengenai bagian dari listing program menu logging.

Program tersebut adalah untuk inisialiasi variable yang digunakan dalam menu logging.

Variable la memiliki tipe data list, variable ini digunakan untuk menyimpan data dari suhu

sekarang. Variabel la2 digunakan untuk menyimpan data dari kelembaban sekarang.

Variabel la3 digunakan untuk menyimpan data dari status pemanas, dan variabel la4

digunakan untuk menyimpan data dari status pompa. Fungsi for in range digunakan sebagai

jangkauan penyimpanan data ke dalam list, yaitu hingga 20 data.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 113: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

95

Gambar 4.54 adalah mengenai pemanggilan fungsi seleksi interval data logging. Nilai

interval logging default adalah 5 data, hal ini dilihat dari nilai dat yang telah diinisialisasi

terlebih dahulu, yaitu dat=5.

Gambar 4.55 Init Waktu

Gambar 4.55 menunjukkan mengenai inisialisasi waktu yang digunakan sebagai waktu

pembanding dengan waktu dalam program While True. Gambar 4.56 sampai 4.61 adalah

program dalam syntax While True. Gambar 4.56 menujukkan mengenai pemrograman

penyimpanan nama file secara otomatis berdasarkan tanggal. Variabel waktu yang

digunakan untuk pembanding tersebut tea dan teb. Dalam background process, waktu tea

dan teb akan terus melakukan perbandingan. Jika suatu saat hasilnya berbeda, maka file

secara otomatis akan tersimpan berdasarkan waktu teb. Fungsi f.write disini adalah untuk

memberikan header pada file berformat csv. Header tersebut adalah Time, Suhu,

Kelembaban, Pemanas, Pompa.

Gambar 4.56 Program Penyimpanan Berdasar Tanggal

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 114: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

96

Gambar 4.57 Program Pembacaan Setpoint Suhu dan Kelembaban Lokal

Gambar 4.57 menunjukkan mengenai program pembacaan setpoint suhu dan

kelembaban sistem lokal. Register (16, 512), register (18, 16), register (20, 1) serta register

(21,1) digunakan untuk membaca dan menampilkan ba suhu dan ba kelembaban sistem

lokal. Register (16, 128), register (18, 16), register (20, 1) serta register (21,1) digunakan

untuk membaca dan menampilkan bb kelembaban dan bb suhu sistem lokal.

Gambar 4.58 Program Interval Waktu Nilai Suhu dan Kelembaban

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 115: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

97

Gambar 4.59 Program Interval Waktu Status Aktuator

Gambar 4.58 menunjukkan mengenai listing pemrograman interval waktu pada menu

monitoring. Variabel dd digunakan untuk melakukan perhitungan detik. Kode dd>=nib

adalah untuk mengecek nilai dd lebih besar atau sama dengan nilai nib. Jika kondisi ini

terpenuhi maka perhitungan akan kembali dari 0, (dd = 0). Data-data akan ditampilkan

sesuai dengan nilai nib. Register (20, 1) adalah untuk menampilkan nilai suhu sekarang, nilai

ini akan ditampilkan dalam entry suhu (ent5.insert, ki). Register (21, 1) adalah untuk

menampilkan nilai kelembaban sekarang, nilai ini akan ditampilkan dalam entry kelembaban

(ent6.insert, kele3).

Gambar 4.59 menunjukkan listing program untuk menampilkan status aktuator dalam

menu monitoring. Register (22, 1) digunakan untuk menampilkan nilai status pemanas, nilai

ini akan ditampilkan dalam kanvas, dengan syarat jika kondisi pemanas bernilai 1, maka

warna pada kanvas adalah hijau, sebaliknya jika kondisi bernilai 0, maka warna pada kanvas

adalah merah. Register (23, 1) digunakan untuk menampilkan nilai status pompa, nilai ini

juga akan ditampilkan dalam kanvas, dengan syarat jika pompa bernilai 1, maka warna pada

kanvas adalah hijau, sebaliknya jika kondisi pompa bernilai 0, maka warna pada kanvas

adalah merah.

Gambar 4.60 menunjukkan mengenai listing pemrograman interval data pada menu

logging. Variabel s1 digunakan untuk melakukan perhitungan data. Kode s1>=dat adalah

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 116: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

98

untuk mengecek nilai s1 lebih besar atau sama dengan nilai dat. Jika kondisi ini terpenuhi

maka perhitungan data akan kembali dari 0, (s1 = 0). Dalam perograman ini, terdapat juga

penulisan kode untuk mengitung rata-rata dari data yang telah dikumpulkan berdasar

pemilihan interval data logging. Perhitungan jumlah ini menggunakan fingsi sum, kemudian

hasil dari sum ini dibagi dengan dat. Kode round digunakan untuk membulatkan bilangan

pecahan. Jika nilai bilangan pecahan lebih dari atau sama dengan 0.5, maka bilangan

dibulatkan keatas menjadi 1. Jika nilai bilangan kurang dari 0.5, maka bilangan dibulatkan

kebawah menjadi 0. Gambar 4.61 adalah listing program untuk menyimpan data-data time,

suhu, kelembaban, pemanas dan pompa.

Gambar 4.60 Program Interval Logging dan Perhitungan Rataan

Gambar 4.61 Program Penyimpanan Data

4.3.4.2. Pembahasan Implementasi GUI Menu Utama

Gambar 4.62 menunjukkan mengenai tampilan GUI menu utama. Listing

pemrograman untuk menu utama dapat dilihat pada gambar 4.63. Ukuran dari window ini

adalah 860 x 610. Tulisan menu utama adalah dalam label (Lab1) dengan ukuran font=45.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 117: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

99

Dalam window ini terdapat button dan label. Label menu utama ditulis dengan

font=Fixedays, Bold.

Tulisan setting (but1), monitoring (but2) dan logging (but3) adalah button dengan

ukuran font=35. Menu utama ini memiliki background warna #E1DCDC, dan berada pada

frame 0 (f0).

Gambar 4.62 Tampilan GUI Menu Utama

Gambar 4.63 Program GUI Menu Utama

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 118: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

100

4.3.4.3. Pembahasan Implementasi GUI Menu Setting

Gambar 4.64 menunjukkan hasil implementasi GUI pada menu setting, dengan

background berwarna ungu. Menu setting ini berada pada frame 1 (f1). Label yang berada

dalam menu setting ini meliputi label menu setting, label suhu (Label1), set bb (Label2,

Label5), set ba (Label3, Label 6), label kelembaban (Label4), label 16C/22C (Label2a), label

22C/28C (Label2b), label 60/80% (Label5a), label 80/90% (Label5b), dan label tombol

enable (Label7). Label-label ditulis menggunakan font=Courier, Bold, dengan warna ungu.

Listing program untuk menuliskan label ini dapat dilihat di gambar 4.65

Gambar 4.64 Tampilan GUI Setting

Button yang ada dalam menu setting ini meliputi tombol ok (ok1, ok2), tombol

pemanas (spem), tombol on (on1, on2, on3) dan off (off1, off2, off3), serta tombol pompa

(spom). Tombol-tombol ini ditulis dengan font=Courier, Bold, dengan warna biru. Terdapat

empat entry dalam menu setting, ent1 digunakan untuk entry bb suhu, ent2 digunakan untuk

entry ba suhu, ent3 digunakan untuk entry bb kelembaban, dan ent4 digunakan untuk entry

ba kelembaban. Listing program untuk penulisan button dapat dilihat pada gambar 4.66.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 119: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

101

Gambar 4.65 Program GUI Menu Setting

Gambar 4.66 Program Button Menu Setting

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 120: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

102

4.3.4.4. Pembahasan Implementasi GUI Menu Monitoring

Gambar 4.67 adalah implementasi dari GUI menu monitoring dengan background

berwarna biru. Menu monitoring ini berada pada frame 2 (f2). Dalam menu ini, terdapat

label, entry, radiohead dan kanvas. Label ini meliputi label menu monitoring, label nilai suhu

(Label8), nilai kelembaban (Label9), status pemanas (Label10) dan status pompa (Label11).

Label ini ditulis dengan font=Courier, Bold, warna merah. Listing program label dapat

dilihat pada gambar 4.68

Gambar 4.67 Tampilan GUI Menu Monitoring

Gambar 4.68 Program GUI Menu Monitoring

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 121: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

103

Gambar 4.69 Program Radiobutton Monitoring

Entry dalam menu monitoring meliputi entry nilai suhu sekarang (ent5) dan entry nilai

kelembaban sekarang (ent6). Kanvas meliputi kanvas status pemanas (cir3) dan pompa

(cir4). Radiobutton tombol berisi multiple-choice. Pilihan-pilihan ini adalah 5 detik (R1), 10

detik (R2) dan 15 detik (R3). Tulisan radiohead ini ditulis dalam font=Courier, Bold, warna

ungu. Listing Program Radiobutton dapat dilihat digambar 4.69

4.3.4.5. Pembahasan Implementasi GUI Menu Logging

Gambar 4.70 adalah implementasi dari GUI menu logging dengan background

berwarna pink. Menu logging ini berada pada frame 3 (f3). Dalam menu ini, terdapat label,

button, dan radiohead. Label ini meliputi label menu logging dan label interval logging data.

Label ini ditulis dengan font=Courier, Bold, warna merah dan ungu. Radiobutton berisi

multiple-choice. Pilihan-pilihan ini adalah 5 data (R4), 15 data (R5) dan 20 data (R6). Button

meliputi tombol open file (opfi), back, tampilkan plot (taplo), dan go to plot. Tulisan

radiohead ini ditulis dalam font=Courier, Bold, warna ungu. Listing program dapat dilihat

pada gambar 4.72

Gambar 4.70 Tampilan GUI Menu Logging

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 122: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

104

Gambar 4.71 menunjukkan tampilan dari window plot yang merupakan penambahan

dari rancangan sebelumnya. Window ini berada di frame 4 (f4) dan memiliki background

berwarna cyan, didalamnya terdapat label, button, dan entry. Button yang ada dalam window

ini adalah tombol ok (but16), back, tombol kanan (but17) dan kiri (but18). Entry untuk

memasukkan nilai batas plot data (ent17), serta label plot (Label13) yang ditulis dalam

font=Courier, Bold, berwarna merah. Listing program ini dapat dilihat pada gambar 4.72

Gambar 4.71 Tampilan Window Plot

Gambar 4.72 Program GUI Menu Logging

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 123: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

105

BAB V

KESIMPULAN

5.1. Kesimpulan

Kesimpulan yang dapat diambil dari implementasi dan pengujian sistem monitoring

jarak jauh pada kumbung jamur tiram berbasis raspberry pi yaitu:

1. Program aplikasi GUI berhasil diimplementasikan untuk mengoperasikan sistem

jarak jauh, sistem berhasil membuka window submenu setting, monitoring dan

logging pada menu utama serta mengembalikan window submenu ke menu utama.

2. Komunikasi pertukaran data secara jarak jauh antara Raspberry Pi dan Zelio

menggunakan jaringan LAN atau TCP/IP berhasil dilakukan.

3. Program pada Raspberry Pi berhasil melakukan pengiriman data nilai batas atas

dan batas bawah suhu dan kelembaban, pengaturan on/off aktuator, dan pengaturan

tombol enable ke Zelio.

4. Program pada Zelio berhasil mengirimkan data nilai suhu dan kelembaban

sekarang, nilai batas atas dan batas bawah suhu dan kelembaban dari sistem lokal,

serta status pemanas dan pompa ke Raspberry Pi yang ditampilkan di GUI menu

setting dan monitoring.

5. Pada menu monitoring, implementasi untuk menampilkan nilai suhu dan

kelembaban serta status pemanas dan pompa berdasar pada interval waktu 5, 10,

dan 15 detik berhasil dilakukan

6. Pada menu logging, data berhasil disimpan dalam format csv sesuai dengan

interval logging data 5, 15 atau 20 data, file csv tersebut berhasil dibuka, dan

implementasi penamaan file secara otomatis sesuai dengan tanggal berhasil

dilakukan.

7. Pada menu logging, plot berhasil ditampilkan dalam bentuk grafik sesuai dengan

file csv yang dipilih untuk ditampilkan plotnya.

8. Sistem ini memiliki kekurangan yaitu pada perubahan pemilihan interval logging

data dari pilihan besar ke pilihan kecil atau sebaliknya, data yang telah

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 124: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

106

dikumpulkan sebelum perubahan interval akan direset kembali yang menyebabkan

data yang telah dikumpulkan tersebut tidak akan disimpan.

5.2. Saran

Penelitian ini masih memiliki kekurangan. Untuk mengatasi kekurangan tersebut,

diperlukan adanya saran untuk keperluan pengembangan penelitian selanjutnya. Berikut

adalah beberapa saran dari penelitian ini:

1. Pada menu logging, penyimpan data sesuai interval logging data dapat

dikembangkan agar saat perubahan pilihan interval data dari pilihan besar ke

pilihan kecil atau sebaliknya, data tetap bisa tersimpan secara utuh saat transisi

tersebut.

2. Penelitian dapat dikembangkan untuk monitoring jarak jauh pada pemeliharaan

tanaman lain.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 125: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

107

DAFTAR PUSTAKA

[1] KBBI. 2018. Teknologi. (https://kbbi.web.id/teknologi, diakses 03 November 2017)

[2] Scientific, Campbell. 2018. Irrigation and Canal Control.

(https://www.campbellsci.com.au/canal-control, diakses 03 November 2017)

[3] Kabarnusa. 2017. Petani Jamur Tiram di Buleleng Kewalahan Penuhi Pesanan.

(http://www.kabarnusa.com/2017/11/petani-jamur-tiram-di-buleleng.html, diakses

03 November 2017).

[4] Nursyah, Riskian. 2018. Sistem Kendali Suhu Dan Kelembaban Pada Kumbung

Jamur Berbasis Zelio Smart Relay, Yogyakarta: Universitas Sanata Dharma.

[5] Hebat, Petani. 2014. Klasifikasi Dan Morfologi Tanaman Jamur Tiram.

(https://www.petanihebat.com/2014/01/klasifikasi-dan-morfologi-tanaman-

jamur.html, diakses 03 November 2017).

[6] Alam, Jendela. 2018. Jamur Tiram, (http://www.jendela-alam.com/jamur-

tiram.html, diakses 26 November 2017).

[7] Krisnakai. 2017. Klasifikasi Dan Morfologi Jamur Tiram.

(https://bukuteori.com/tag/klasifikasi-jamur-tiram/, diakses 26 November 2017).

[8] Raharjo, Budi., Susilawati. 2010. Budidaya Tiram yang Ramah Lingkungan, [pdf].

Sumatra Selatan

[9] Raspberry. 2018. What Is A Raspberry Pi. ( https://www.raspberrypi.org/help/faqs/

Raspberry Pi Foundation, diakses 8 November 2017)

[10] Company, Farnell. 2018. Raspberry Pi 3 Starter Kit.

(https://www.element14.com/community/docs/DOC-83153/l/raspberry-pi-3-starter-

kit, diakses 9 November 2017).

[11] Mobilefish. 2017. Raspberry Pi 3 Model B With Pin Diagram.

(https://www.mobilefish.com/developer/lorawan/lorawan_quickguide_build_lora_g

ateway.html, diakses 9 November 2017)

[12] CBS. 2018. Top Raspberry Pi operating systems.

(http://www.zdnet.com/pictures/top-raspberry-pi-operating-systems/, diakses 9

November 2017).

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 126: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

108

[13] Python, Belajar. 2017. Pengertian Python. (https://www.belajarpython.com/,

diakses 10 November 2017).

[14] Tunggal, Anto. 2018. Pengertian Sistem Operasi Berbasis GUI (Graphical User

Interface).( http://www.antotunggal.com/2016/12/pengertian-sistem-operasi-

berbasis-gui-graphical-user-interface.html, diakses 10 November 2017).

[15] Riadi, Muchlisin. 2012. Zelio Smart Relay.

(https://www.kajianpustaka.com/2012/10/zelio-smart-relay.html, diakses 11

November 2017).

[16] Electric, Schneider. 2018. Zelio Soft. (https://www.schneider-

electric.co.uk/en/product-range/542-zelio-soft/, diakses 11 November 2017)

[17] Telemecanique .2006. Zelio Logic - Communication Extension ,[ppt].

(http://www.electrocentr.com.ua/files/documentation/SE/plc/zelio/guide/ZelioLogic

_Modbus_Ethernet_Extensions_2006_en.ppt, diakses 28 November 2017).

[18] Sulistiono, Ari. 2011. Latar Belakang, Alur Data, Aplikasi & Keterbatasan

Protocol Modbus. (http://www.arisulistiono.com/2011/04/latar-belakang-alur-data-

aplikasi.html#.WqUbWueYO00, diakses pada 29 November 2017)

[19] Electric, Schneider. 2017.Communication SR3NET01BD. (https://www.schneider-

electric.com/en/product/SR3NET01BD/ethernet-communication-interface---for-

sr3-24v-dc-smart-relay/, diakses 04 Desember 2017) .

[20] Zakaria, Muhammad. 2018. Pengertian Switch dan Fungsi Switch.

(https://www.nesabamedia.com/pengertian-switch-dan-fungsi-switch/, diakses 05

Desember 2017).

[21] Wijaya, Eka. 2018. Fungsi Kabel HDMI to VGA.

(http://www.patartambunan.com/fungsi-kabel-vga-kabel-hdmi-dan-dvi-pada-

komputer/, diakses 04 Desember 2017).

[22] Definisi, Pengertian. 2018. Pengertian Monitor dan Jenis-jenisnya.

(http://pengertiandefinisi.com/pengertian-monitor-dan-jenis-jenisnya/, diakses 04

Desember 2017).

[23] Media, Nesaba. 2018. Pengertian dan Fungsi Keyboard.

(https://www.nesabamedia.com/pengertian-dan-fungsi-keyboard/, diakses 03

Desember 2017).

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 127: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

109

[24] Media, Nesaba. 2018. Pengertian Mouse Beserta Fungsi dan Jenis-jenis Mouse.

(https://www.nesabamedia.com/pengertian-mouse-dan-fungsi-mouse-beserta-jenis-

jenisnya/, diakses 03 Desember 2017).

[25] Pendidikan, Materi, 2018. Rumus Ukuran Pemusataan Data Mean, Median dan

Modus Serta Contoh Soalnya. https://www.materipendidikan.info/2018/04/rumus-

ukuran-pemusatandata-mean-median.html, diakses 10 September 2018).

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 128: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 1 -

LAMPIRAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 129: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 2 -

LAMPIRAN 1

FILE 2018-08-10.CSV

No

Time

BB

Suhu

BA

Suhu

BB

Kel

BA

Kel Suhu

Kelembaban

Pemanas

Pompa

1 13:48:46 22 28 60 80 24 76 0 0

2 13:49:11 22 28 60 80 24 63 0 1

3 13:49:35 22 28 60 80 24 54 0 1

4 13:50:01 22 28 60 80 24 56 0 1

5 13:50:26 22 28 60 80 18 65 1 0

6 13:50:51 22 28 60 80 18 65 1 0

7 13:51:15 22 28 60 80 18 65 1 0

8 13:51:40 22 28 60 80 18 65 1 0

9 13:52:06 22 28 60 80 18 65 1 0

10 13:52:30 22 28 60 80 18 65 1 0

11 13:52:56 22 28 60 80 18 65 1 0

12 13:53:20 22 28 60 80 18 65 1 0

13 13:53:46 22 28 60 80 18 65 1 0

14 13:54:11 22 28 60 80 18 65 1 0

15 13:54:36 22 28 60 80 18 65 1 0

16 13:55:01 22 28 60 80 18 65 1 0

17 13:55:26 22 28 60 80 18 65 1 0

18 13:55:51 22 28 60 80 18 65 1 0

19 13:56:16 22 28 60 80 18 65 1 0

20 13:56:41 22 28 60 80 18 63 1 0

21 13:57:26 22 28 60 80 18 51 1 1

22 13:58:16 22 28 60 80 18 50 1 1

23 13:59:06 22 28 60 80 18 50 1 1

24 13:59:56 22 28 60 80 26 69 0 0

25 14:04:55 22 28 60 80 25 68 0 0

26 14:09:56 22 28 60 80 25 68 0 0

27 14:14:56 22 28 60 80 25 68 0 0

28 14:19:56 22 28 60 80 25 68 0 0

29 14:24:56 22 28 60 80 25 51 0 1

30 14:30:37 22 28 60 80 25 49 0 1

31 14:33:07 22 28 60 80 25 49 0 1

32 14:35:38 22 28 60 80 25 49 0 1

33 14:38:08 22 28 60 80 25 49 0 1

34 14:40:37 22 28 60 80 25 49 0 1

35 14:43:08 22 28 60 80 25 49 0 1

36 14:45:38 22 28 60 80 25 49 0 1

37 14:48:08 22 28 60 80 25 49 0 1

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 130: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 3 -

38 14:50:38 22 28 60 80 25 66 0 0

39 14:53:08 22 28 60 80 25 75 0 0

40 14:55:38 22 28 60 80 25 75 0 0

41 14:58:07 22 28 60 80 25 75 0 0

42 15:00:38 22 28 60 80 25 75 0 0

43 15:03:08 22 28 60 80 25 75 0 0

44 15:05:38 22 28 60 80 25 75 0 0

45 15:08:08 22 28 60 80 25 75 0 0

46 15:10:37 22 28 60 80 25 75 0 0

47 15:13:07 22 28 60 80 25 75 0 0

48 15:15:37 22 28 60 80 25 75 0 0

49 15:18:08 22 28 60 80 25 75 0 0

50 15:20:33 22 28 60 80 24 70 0 0

51 15:21:48 22 28 60 80 18 50 1 1

52 15:23:03 22 28 60 80 18 50 1 1

53 15:24:18 22 28 60 80 18 50 1 1

54 15:25:32 22 28 60 80 18 50 1 1

55 15:26:48 22 28 60 80 18 50 1 1

56 15:28:02 22 28 60 80 18 50 1 1

57 15:29:18 22 28 60 80 18 50 1 1

58 15:30:33 22 28 60 80 18 50 1 1

59 15:31:48 22 28 60 80 18 50 1 1

60 15:33:03 22 28 60 80 18 50 1 1

61 15:34:18 22 28 60 80 18 50 1 1

62 15:35:33 22 28 60 80 18 50 1 1

63 15:36:48 22 28 60 80 18 50 1 1

64 15:38:03 22 28 60 80 18 50 1 1

65 15:39:18 22 28 60 80 18 50 1 1

66 15:40:33 22 28 60 80 18 50 1 1

67 15:41:48 22 28 60 80 18 50 1 1

68 15:43:02 22 28 60 80 18 50 1 1

69 15:44:18 22 28 60 80 18 50 1 1

70 15:45:33 22 28 60 80 18 50 1 1

71 15:46:48 22 28 60 80 18 50 1 1

72 15:48:03 22 28 60 80 18 50 1 1

73 15:49:17 22 28 60 80 18 50 1 1

74 15:50:33 22 28 60 80 18 50 1 1

75 15:51:43 22 28 60 80 18 50 1 1

76 15:52:08 22 28 60 80 18 66 1 0

77 15:52:32 22 28 60 80 18 66 1 0

78 15:52:58 22 28 60 80 18 66 1 0

79 15:53:23 22 28 60 80 18 66 1 0

80 15:53:48 22 28 60 80 18 66 1 0

81 15:54:12 22 28 60 80 18 66 1 0

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 131: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 4 -

82 15:54:38 22 28 60 80 18 66 1 0

83 15:55:03 22 28 60 80 18 66 1 0

84 15:55:27 22 28 60 80 18 66 1 0

85 15:55:53 22 28 60 80 18 66 1 0

86 15:56:18 22 28 60 80 18 66 1 0

87 15:56:43 22 28 60 80 18 66 1 0

88 15:57:08 22 28 60 80 18 66 1 0

89 15:57:33 22 28 60 80 18 66 1 0

90 15:57:58 22 28 60 80 18 66 1 0

…. …. … … … … … … … …

1246 23:59:38 22 28 60 80 24 67 0 0

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 132: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 5 -

LAMPIRAN 2

FILE 2018-08-11.CSV

No Time

BB

Suhu

BA

Suhu

BB

Kel

BA

Kel Suhu

Kelembaban

Pemanas

Pompa

1247 0:00:03 22 28 60 80 24 67 0 0

1248 0:00:28 22 28 60 80 24 67 0 0

1249 0:00:53 22 28 60 80 24 67 0 0

1250 0:01:18 22 28 60 80 24 67 0 0

1251 0:01:43 22 28 60 80 24 67 0 0

1252 0:02:08 22 28 60 80 24 67 0 0

1253 0:02:33 22 28 60 80 24 67 0 0

1254 0:02:58 22 28 60 80 24 67 0 0

1255 0:03:23 22 28 60 80 24 67 0 0

1256 0:03:48 22 28 60 80 24 67 0 0

1257 0:04:13 22 28 60 80 24 67 0 0

1258 0:04:38 22 28 60 80 24 67 0 0

1259 0:05:03 22 28 60 80 24 67 0 0

1260 0:05:28 22 28 60 80 24 67 0 0

1261 0:05:53 22 28 60 80 24 67 0 0

1262 0:06:18 22 28 60 80 24 67 0 0

1263 0:06:43 22 28 60 80 24 67 0 0

1264 0:07:08 22 28 60 80 24 67 0 0

1265 0:07:33 22 28 60 80 24 67 0 0

1266 0:07:58 22 28 60 80 24 67 0 0

1267 0:08:23 22 28 60 80 24 67 0 0

1268 0:08:48 22 28 60 80 24 67 0 0

1269 0:09:12 22 28 60 80 24 67 0 0

1270 0:09:38 22 28 60 80 24 67 0 0

1271 0:10:02 22 28 60 80 24 67 0 0

1272 0:10:27 22 28 60 80 24 67 0 0

1273 0:10:52 22 28 60 80 24 67 0 0

1274 0:11:18 22 28 60 80 24 67 0 0

1275 0:11:43 22 28 60 80 24 67 0 0

1276 0:12:08 22 28 60 80 24 67 0 0

1277 0:12:33 22 28 60 80 24 67 0 0

1278 0:12:58 22 28 60 80 24 67 0 0

1279 0:13:23 22 28 60 80 24 67 0 0

1280 0:13:47 22 28 60 80 24 67 0 0

1281 0:14:12 22 28 60 80 24 67 0 0

1282 0:14:38 22 28 60 80 24 67 0 0

1283 0:15:03 22 28 60 80 24 67 0 0

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 133: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 6 -

1284 0:15:28 22 28 60 80 24 67 0 0

1285 0:15:53 22 28 60 80 24 67 0 0

1286 0:16:18 22 28 60 80 24 67 0 0

1287 0:16:43 22 28 60 80 24 67 0 0

1288 0:17:08 22 28 60 80 24 67 0 0

1289 0:17:33 22 28 60 80 24 67 0 0

1290 0:17:58 22 28 60 80 24 67 0 0

1291 0:18:23 22 28 60 80 24 67 0 0

1292 0:18:48 22 28 60 80 24 67 0 0

1293 0:19:13 22 28 60 80 24 67 0 0

1294 0:19:38 22 28 60 80 24 67 0 0

1295 0:20:03 22 28 60 80 24 67 0 0

1296 0:20:28 22 28 60 80 24 67 0 0

1297 0:20:52 22 28 60 80 24 67 0 0

1298 0:21:17 22 28 60 80 24 67 0 0

1299 0:21:43 22 28 60 80 24 67 0 0

1300 0:22:07 22 28 60 80 24 67 0 0

1301 0:22:33 22 28 60 80 24 67 0 0

1302 0:22:58 22 28 60 80 24 67 0 0

1303 0:23:23 22 28 60 80 24 67 0 0

1304 0:23:47 22 28 60 80 24 67 0 0

1305 0:24:13 22 28 60 80 24 67 0 0

1306 0:24:38 22 28 60 80 24 67 0 0

1307 0:25:03 22 28 60 80 24 67 0 0

1308 0:25:28 22 28 60 80 24 67 0 0

1309 0:25:53 22 28 60 80 24 67 0 0

1310 0:26:18 22 28 60 80 24 67 0 0

1311 0:26:43 22 28 60 80 24 67 0 0

1312 0:27:08 22 28 60 80 24 67 0 0

1313 0:27:33 22 28 60 80 24 67 0 0

1314 0:27:58 22 28 60 80 24 67 0 0

1315 0:28:23 22 28 60 80 24 67 0 0

1316 0:28:47 22 28 60 80 24 67 0 0

1317 0:29:13 22 28 60 80 24 67 0 0

1318 0:29:38 22 28 60 80 24 67 0 0

1319 0:30:03 22 28 60 80 24 67 0 0

1320 0:30:28 22 28 60 80 24 67 0 0

1321 0:30:52 22 28 60 80 24 67 0 0

1322 0:31:18 22 28 60 80 24 67 0 0

1323 0:31:43 22 28 60 80 24 67 0 0

1324 0:32:08 22 28 60 80 24 67 0 0

1325 0:32:33 22 28 60 80 24 67 0 0

1326 0:32:58 22 28 60 80 24 67 0 0

1327 0:33:23 22 28 60 80 24 67 0 0

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 134: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 7 -

1328 0:33:48 22 28 60 80 24 67 0 0

1329 0:34:13 22 28 60 80 24 67 0 0

1330 0:34:37 22 28 60 80 24 67 0 0

1331 0:35:02 22 28 60 80 24 67 0 0

1332 0:35:28 22 28 60 80 24 67 0 0

1333 0:35:53 22 28 60 80 24 67 0 0

1334 0:36:18 22 28 60 80 24 67 0 0

1335 0:36:42 22 28 60 80 24 67 0 0

… … … … … … … … … …

2545 17:11:38 22 28 60 80 25 74 0 0

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 135: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 8 -

LAMPIRAN 3

Listing Program Python

##################################################################

from pyModbusTCP.client import ModbusClient

from Tkinter import*

from tkMessageBox import*

import tkMessageBox

import tkFont

import numpy as np

import matplotlib.pyplot as plt

from tkFileDialog import askopenfilename

import tkFileDialog

import csv

import Tkinter, Tkconstants, tkFileDialog

from datetime import datetime

from dateutil import parser

import matplotlib

matplotlib.use('TkAgg')

from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg

#################################################################

#################### Multiframe ###################################

def raise_frame(frame):

frame.tkraise()

root = Tk()

root.geometry('850x610')

root.title('SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM')

zel = ModbusClient()

server_host="192.168.1.10"

server_port=502

zel.host(server_host)

zel.port(server_port)

if not zel.host("192.168.1.10"):

print("host error")

if not zel.port(502):

print("port error")

zel= ModbusClient (host = "192.168.1.10", auto_open=True)

f0 = Frame(root, bg='#E1DCDC',width=850, height=610) #UTAMA

f1 = Frame(root, bg='purple',width=850, height=610) #SETTING

f2 = Frame(root, bg='blue',width=850, height=610) #MONITORING

f3 = Frame(root, bg='pink',width=850, height=610) #LOGGING

f4 = Frame(root, bg='cyan',width=850, height=610) #PLOT SHOW

for frame in (f0, f1, f2, f3, f4):

frame.grid(row=1, column=0, padx=10, pady=2, sticky=W+E+N+S)

Lab1=Label(f0, text='MENU UTAMA',font=("Fixedsys", 45, "bold"),fg= "RED",

relief=FLAT)

Lab1.grid(row=0, column=2, padx=20, pady=35)

but1=Button(f0, text='SETTING',font=("Fixedsys", 35, "bold"),fg='brown',

bg="pink",highlightbackground="red",

relief=GROOVE, command=lambda:raise_frame(f1))

but1.grid(row=2, column=2, padx=20, pady=15)

but2=Button(f0, text='MONITORING',font=("Fixedsys", 35, "bold"),fg='brown',

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 136: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 9 -

bg="light green",highlightbackground="red",

relief=GROOVE,command=lambda:raise_frame(f2))

but2.grid(row=3, column=2,padx=20, pady=15)

but3=Button(f0, text='LOGGING',font=("Fixedsys", 35, "bold"),fg='brown',

bg="light blue",highlightbackground="red",

relief=GROOVE,command=lambda:raise_frame(f3))

but3.grid(row=4, column=2, padx=20, pady=15)

but4=Canvas(f0, width= 120, height=50, bg='#E1DCDC',highlightbackground="#E1DCDC")

but4.grid(row=5, column=1, padx=20, pady=20)

but5=Canvas(f0, width= 120, height=50, bg='#E1DCDC',highlightbackground="#E1DCDC")

but5.grid(row=5, column=3, padx=20, pady=20)

Label(f1, text='MENU SETTING' ,font=("Fixedsys", 20, "bold"),fg= "RED",

relief=FLAT).grid(row=0, column=2,sticky=W+E+N+S)

##Button(f1, text='Go to Monitoring', font=("Fixedsys", 8), command=lambda:raise_frame(f2)).grid(row=0, column=0,

sticky='nw')

##Button(f1, text='Go to Logging', font=("Fixedsys", 8), command=lambda:raise_frame(f3)).grid(row=0, column=1,

sticky='nw')

Button(f1, text='BACK',font=("Courier", 14, "bold"), fg='BROWN',highlightbackground="ORANGE",

command=lambda:raise_frame(f0)).grid(row=12, column=5)

but5d=Canvas(f1, width= 80, height=40, bg='purple',highlightbackground="purple")

but5d.grid(row=10, column=0, padx=20, pady=20)

Label(f2, text='MENU MONITORING',font=("Fixedsys", 20, "bold"),fg= "RED",

relief=FLAT).grid(row=0, column=2, sticky=W+E+N+S)

##Button(f2, text='Go to Logging', command=lambda:raise_frame(f3)).grid(row=0, column=0, sticky='nw')

##Button(f2, text='Go to Setting', command=lambda:raise_frame(f1)).grid(row=0, column=1, sticky='nw')

Button(f2, text='BACK', font=("Courier", 14, "bold"), fg='BROWN',highlightbackground="ORANGE",

command=lambda:raise_frame(f0)).grid(row=10, column=6)

but5c=Canvas(f2, width= 50, height=40, bg='blue',highlightbackground="blue")

but5c.grid(row=10, column=0, padx=20, pady=20)

Label(f3, text='MENU LOGGING',font=("Fixedsys", 20, "bold"),fg= "RED",

relief=FLAT).grid(row=0, column=2, sticky=W+E+N+S)

##Button(f3, text='Go to Monitoring', command=lambda:raise_frame(f2)).grid(row=0, column=0, sticky='nw')

##Button(f3, text='Go to Setting', command=lambda:raise_frame(f1)).grid(row=0, column=1, sticky='nw')

Button(f3, text='BACK', font=("Courier", 14, "bold"), fg='BROWN',highlightbackground="ORANGE",

command=lambda:raise_frame(f0)).grid(row=11, column=6, pady=1)

Button(f3, text='Go to Plot', command=lambda:raise_frame(f4)).grid(row=10, column=2)

but5b=Canvas(f3, width= 180, height=50, bg='pink',highlightbackground="pink")

but5b.grid(row=11, column=0, padx=20, pady=1)

Label(f4, text='PLOT',font=("Fixedsys", 20, "bold"),fg= "RED",

relief=FLAT).grid(row=0, column=1, sticky=W+E+N+S)

##Button(f4, text='Go to Monitoring', command=lambda:raise_frame(f2)).grid(row=0, column=0, sticky='nw')

##Button(f4, text='Go to Logging', command=lambda:raise_frame(f3)).grid(row=0, column=1, sticky='nw')

Button(f4, text='BACK', font=("Courier", 14, "bold"), fg='BROWN',highlightbackground="ORANGE",

command=lambda:raise_frame(f0)).grid(row=7, column=6, pady=1)

but5b=Canvas(f4, width= 50, height=50, bg='cyan',highlightbackground="cyan")

but5b.grid(row=8, column=0, padx=20, pady=1)

raise_frame(f1)

##############################################################################

############################### MENU SETTING##########################

################ def setting

sett= False

x=False #on/off

akt=False

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 137: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 10 -

sett2= False

x2=False #on/off

akt2=False

def took1():

if zel.open():

global bb, ba

#suhubb

write_value1 = ent1.get() #('value to write: ')

write_value2 = int(write_value1)

#suhuba

write_value3=ent2.get() #('value to write: ')

write_value4=int(write_value3)

#warning value limit

bb=write_value2

ba=write_value4

print 'bb', bb

print 'ba', ba

if 41 > ba > bb:

regs_list_1 = zel.write_single_register(16, 2)

regs_list_2 = zel.write_single_register(17, write_value2)

regs_list_3 = zel.write_single_register(18, 2)

regs_list_4 = zel.write_single_register(16, 1)

regs_list_5 = zel.write_single_register(17, write_value4)

regs_list_6 = zel.write_single_register(18, 1)

regs_list_3c = zel.write_single_register(18, 0)

else:

regs_list_3 = zel.write_single_register(18, 0)

tkMessageBox.showwarning("Warning", "Error Value")

zel.close()

def took2():

if zel.open():

global bb2, ba2

#kelbb

write_value1 = ent3.get() #('value from entry3')

write_value2 = int(write_value1)

#kelba

write_value3 = ent4.get() #('value from entry4')

write_value4 = int(write_value3)

#warning value limit

bb2=write_value2

ba2=write_value4

print 'bb2', bb2

print 'ba2', ba2

if 101> ba2 > bb2:

regs_list_1 = zel.write_single_register(16, 8)

regs_list_2 = zel.write_single_register(17, write_value2)

regs_list_3 = zel.write_single_register(18, 8)

regs_list_4 = zel.write_single_register(16, 4)

regs_list_5 = zel.write_single_register(17, write_value4)

regs_list_6 = zel.write_single_register(18, 4)

regs_list_3c = zel.write_single_register(18, 0)

print 'jalan'

else:

regs_list_3 = zel.write_single_register(18, 0)

tkMessageBox.showwarning("Warning", "Error Value")

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 138: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 11 -

print 'error value'

zel.close()

def toena():

if zel.open():

#setenable

regs_list_1 = zel.write_single_register(16, 64)

print "enable on", regs_list_1

## toen=zel.read_holding_registers(16, 1)

on3.configure(relief=SUNKEN, fg='green')

root.update()

zel.close()

def toenof():

if zel.open():

#setenable

regs_list_1 = zel.write_single_register(16, 256)

print "enable off", regs_list_1

on3.configure(relief=RAISED, fg='blue')

root.update()

zel.close()

def toheat(): #tombol heat

global sett

sett=not(sett)

if zel.open():

regs1 = zel.read_holding_registers(22, 1) #read status heater

print "heater", regs1

b=regs1

if b==[1]:

print 'but heaton'

#print 'hidup'

#cir1.create_oval(8, 8, 40, 40, width=0, fill='green')

on1.configure(relief=SUNKEN, fg='green')

else:

print 'but heatof'

#print 'mati'

#cir1.create_oval(8, 8, 40, 40, width=0, fill='red')

off1.configure(relief=SUNKEN, fg='green')

if sett:

spem.configure(relief=SUNKEN, fg='green')

else:

spem.configure(relief=RAISED, fg='blue')

on1.configure(relief=RAISED, fg='blue')

off1.configure(relief=RAISED, fg='blue')

regs_list_1 = zel.write_single_register(17, 0) #back to akt local, so it will read ch.A

regs1 = zel.read_holding_registers(23, 1)

if regs1==[1]: #supaya set pemanas independen

regs_list_1 = zel.write_single_register(17, 256)

regs_list_1 = zel.write_single_register(19, 2)

else:

regs_list_1 = zel.write_single_register(17, 0)

root.update()

zel.close()

def toonoff(x):

global akt

if zel.open():

if sett:

if x: #ON

regs_list_1 = zel.write_single_register(17, 128)

regs_list_1 = zel.write_single_register(19, 1)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 139: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 12 -

akt = True

d=regs_list_1

if d==True:

print 'satu'

#cir1.create_oval(8, 8, 40, 40, width=0, fill='green')

on1.configure(relief=SUNKEN, fg='green')

off1.configure(relief=RAISED, fg='blue')

regs2=zel.read_holding_registers(23,1) #forgot: untuk kalo reg 23 gui akt aktif

f=regs2

if f==[1]:

if sett2:

print 'dua'

#cir2.create_oval(8, 8, 40, 40, width=0, fill='green') #cross color

on2.configure(relief=SUNKEN, fg='green')

off2.configure(relief=RAISED, fg='blue')

else:

print 'tiga'

on2.configure(relief=RAISED, fg='blue')

off2.configure(relief=RAISED, fg='blue')

else:

if sett2:

print 'empat'

#cir2.create_oval(8, 8, 40, 40, width=0, fill='red')

on2.configure(relief=RAISED, fg='blue')

off2.configure(relief=SUNKEN, fg='green')

else:

print 'lima'

on2.configure(relief=RAISED, fg='blue')

off2.configure(relief=RAISED, fg='blue')

else: #off

akt = False

regs_list_1 = zel.write_single_register(17,128)

regs_list_1 = zel.write_single_register(19, 0)

e=regs_list_1

if e==True:

print 'mati'

print 'lapan'

#cir1.create_oval(8, 8, 40, 40, width=0, fill='red')

off1.configure(relief=SUNKEN, fg='green')

on1.configure(relief=RAISED, fg='blue')

regs3=zel.read_holding_registers(23,1)

p=regs3

print 'p', p

if p==[1]:

if sett2:

print 'sembilan'

#cir2.create_oval(8, 8, 40, 40, width=0, fill='green') #cross color

on2.configure(relief=SUNKEN, fg='green')

off2.configure(relief=RAISED, fg='blue')

else:

print 'sepuluh'

on2.configure(relief=RAISED, fg='blue')

off2.configure(relief=RAISED, fg='blue')

else:

if sett2:

#cir2.create_oval(8, 8, 40, 40, width=0, fill='red')

print 'sebelas'

off2.configure(relief=SUNKEN, fg='green')

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 140: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 13 -

on2.configure(relief=RAISED, fg='blue')

else:

print 'duabelas'

on2.configure(relief=RAISED, fg='blue')

off2.configure(relief=RAISED, fg='blue')

root.update()

zel.close()

def topomp():

global sett2

sett2=not(sett2)

if zel.open():

regs1 = zel.read_holding_registers(23, 1)

b=regs1

if b==[1]:

print 'but pomon'

print 'hidup'

#cir2.create_oval(8, 8, 40, 40, width=0, fill='green')

on2.configure(relief=SUNKEN, fg='green')

else:

print 'but pomof'

print 'mati'

off2.configure(relief=SUNKEN, fg='green')

if sett2:

spom.configure(relief=SUNKEN, fg='green')

else:

spom.configure(relief=RAISED, fg='blue')

regs_list_1 = zel.write_single_register(17, 0)

on2.configure(relief=RAISED, fg='blue')

off2.configure(relief=RAISED, fg='blue')

regs1 = zel.read_holding_registers(22, 1)

if regs1==[1]: #supaya set pemanas independen

regs_list_1 = zel.write_single_register(17,128)

regs_list_1 = zel.write_single_register(19, 1)

else:

regs_list_1 = zel.write_single_register(17, 0)

root.update()

zel.close()

def toonoff2(x2):

global akt2

if zel.open():

if sett2:

if x2:

regs_list_1 = zel.write_single_register(17,256)

regs_list_1 = zel.write_single_register(19, 2)

akt2 = True

d=regs_list_1

if d==True:

print 'one'

print 'hidup'

#cir2.create_oval(8, 8, 40, 40, width=0, fill='green')

on2.configure(relief=SUNKEN, fg='green')

off2.configure(relief=RAISED, fg='blue')

regs2=zel.read_holding_registers(22,1)

e=regs2

if e==[1]:

#print 'e true'

if sett:

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 141: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 14 -

print 'two'

#cir1.create_oval(8, 8, 40, 40, width=0, fill='green') #cross color

on1.configure(relief=SUNKEN, fg='green')

off1.configure(relief=RAISED, fg='blue')

else:

print 'three'

# cir1.create_oval(8, 8, 40, 40, width=0, fill="purple")

on1.configure(relief=RAISED, fg='blue')

off1.configure(relief=RAISED, fg='blue')

else:

if sett:

print 'four'

#cir1.create_oval(8, 8, 40, 40, width=0, fill='red')

#print 'e false'

off1.configure(relief=SUNKEN, fg='green')

on1.configure(relief=RAISED, fg='blue')

else:

print 'five'

on1.configure(relief=RAISED, fg='blue')

off1.configure(relief=RAISED, fg='blue')

else: #untuk off

akt2 = False

regs_list_1 = zel.write_single_register(17,256)

regs_list_1 = zel.write_single_register(19, 0)

ee=regs_list_1

if ee==True:

print 'seven'

print 'mati'

#cir2.create_oval(8, 8, 40, 40, width=0, fill='red')

off2.configure(relief=SUNKEN, fg='green')

on2.configure(relief=RAISED, fg='blue')

regs2=zel.read_holding_registers(22,1)

n=regs2

if n==[1]:

if sett:

print 'eight'

#cir1.create_oval(8, 8, 40, 40, width=0, fill='green') #cross color

on1.configure(relief=SUNKEN, fg='green')

off1.configure(relief=RAISED, fg='blue')

else:

print 'nine'

on1.configure(relief=RAISED, fg='blue')

off1.configure(relief=RAISED, fg='blue')

else:

if sett:

print 'ten'

#cir1.create_oval(8, 8, 40, 40, width=0, fill='red')

off1.configure(relief=SUNKEN, fg='green')

on1.configure(relief=RAISED, fg='blue')

else:

print 'eleven'

on1.configure(relief=RAISED, fg='blue')

off1.configure(relief=RAISED, fg='blue')

root.update()

zel.close()

#################################################

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 142: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 15 -

#LABELS

Label1 = Label(f1, text="SUHU (0-40C)",

font=("Courier", 16, "bold"), fg= "PURPLE", relief=FLAT)

Label1.grid(row=1, column=2, padx=2, pady=10)

Label2 = Label(f1, text="SET BB",

font=("Courier", 14, "bold"), fg= "PURPLE", relief=FLAT)

Label2.grid(row=2, column=0, padx=2, pady=1)

Label2a = Label(f1, text="16C/22C",

font=("Courier", 8, "bold"), fg= "PURPLE", relief=FLAT)

Label2a.grid(row=3, column=1, padx=1, pady=1)

Label2b = Label(f1, text="22C/28C",

font=("Courier", 8, "bold"), fg= "PURPLE", relief=FLAT)

Label2b.grid(row=3, column=4, padx=1, pady=1)

Label3 = Label(f1,text="SET BA",

font=("Courier", 14, "bold"), fg= "PURPLE", relief=FLAT)

Label3.grid(row=2, column=3, padx=2, pady=1)

Label4 = Label(f1,text="KELEMBABAN (0-100%)",

font=("Courier", 16, "bold"), fg= "PURPLE", relief=FLAT)

Label4.grid(row=4, column=2, padx=2, pady=15)

Label5 = Label(f1,text="SET BB",

font=("Courier", 14, "bold"), fg= "PURPLE", relief=FLAT)

Label5.grid(row=5, column=0, padx=2, pady=1)

Label5a = Label(f1,text="60/80%",

font=("Courier", 9, "bold"), fg= "PURPLE", relief=FLAT)

Label5a.grid(row=6, column=1, padx=1, pady=1)

Label5b = Label(f1,text="80/90%",

font=("Courier", 9, "bold"), fg= "PURPLE", relief=FLAT)

Label5b.grid(row=6, column=4, padx=1, pady=1)

Label6 = Label(f1,text="SET BA",

font=("Courier", 14, "bold"), fg= "PURPLE", relief=FLAT)

Label6.grid(row=5, column=3, padx=2, pady=1)

Label7 = Label(f1,text="TOMBOL ENABLE",

font=("Courier", 16, "bold"), fg= "PURPLE", relief=FLAT)

Label7.grid(row=9, column=1, padx=2, pady=4)

#labellokal

Label2c = Label(f1, text="LOKAL",

font=("Courier", 14, "bold"), fg= "PURPLE", relief=FLAT)

Label2c.grid(row=10, column=2, padx=2, pady=1)

Label2a = Label(f1, text="BB Suhu",

font=("Courier", 14, "bold"), fg= "PURPLE", relief=FLAT)

Label2a.grid(row=11, column=0, padx=2, pady=1)

Label3a = Label(f1,text="BA Suhu",

font=("Courier", 14, "bold"), fg= "PURPLE", relief=FLAT)

Label3a.grid(row=11, column=2, padx=2, pady=1)

#labellokal

Label2b = Label(f1, text="BB Kel",

font=("Courier", 14, "bold"), fg= "PURPLE", relief=FLAT)

Label2b.grid(row=12, column=0, padx=2, pady=1)

Label3b = Label(f1,text="BA Kel",

font=("Courier", 14, "bold"), fg= "PURPLE", relief=FLAT)

Label3b.grid(row=12, column=2, padx=2, pady=1)

#ENTRY

#entry suhu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 143: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 16 -

ent1=Entry(f1,width=6, bd=3)

ent1.grid(row=2, column=1, padx=2, pady=2)

ent2=Entry(f1,width=6, bd=3)

ent2.grid(row=2, column=4, padx=2, pady=2)

#entry kelemaban

ent3=Entry(f1,width=6, bd=3)

ent3.grid(row=5, column=1, padx=2, pady=2)

ent4=Entry(f1,width=6, bd=3)

ent4.grid(row=5, column=4, padx=2, pady=2)

#ALL BUTTONS

#OK OK

ok1= Button(f1,font=("Courier", 12, "bold"), relief=GROOVE,

text="OK", fg="blue",highlightbackground="BROWN",

command=took1)

ok1.grid(row=2, column=5, padx=2, pady=2)

ok2= Button(f1,font=("Courier", 12, "bold"), relief=GROOVE,

text="OK", fg="blue",highlightbackground="BROWN"

,command=took2)

ok2.grid(row=5, column=5, padx=2, pady=2)

#SET PEMANAS ON OFF

spem= Button(f1,font=("Courier", 15, "bold"), relief=GROOVE,

text="SET PEMANAS", fg="blue",

highlightbackground="ORANGE", command=toheat)

spem.grid(row=7, column=1, padx=5, pady=15)

on1= Button(f1,font=("Courier", 14, "bold"), relief=GROOVE,

text="ON", fg="blue",

highlightbackground="ORANGE", command=lambda:toonoff(True))

on1.grid(row=7, column=2, padx=5, pady=10)

off1= Button(f1,font=("Courier", 14, "bold"), relief=GROOVE,

text="OFF", fg="blue",

highlightbackground="ORANGE", command=lambda:toonoff(False))

off1.grid(row=7, column=3, padx=5, pady=10)

#SET POMPA ON OFF

spom= Button(f1,font=("Courier", 15, "bold"), relief=GROOVE,

text="SET POMPA", fg="blue",

highlightbackground="ORANGE", command=topomp)

spom.grid(row=8, column=1, padx=5, pady=10)

on2= Button(f1,font=("Courier", 14, "bold"), relief=GROOVE,

text="ON", fg="blue",

highlightbackground="ORANGE", command=lambda:toonoff2(True))

on2.grid(row=8, column=2, padx=5, pady=10)

off2= Button(f1,font=("Courier", 14, "bold"), relief=GROOVE,

text="OFF", fg="blue",highlightbackground="ORANGE"

,command=lambda:toonoff2(False))

off2.grid(row=8, column=3, padx=5, pady=10)

#ON OFF ENABLE

on3= Button(f1,font=("Courier", 14, "bold"), relief=GROOVE,

text="ON", fg="blue",

highlightbackground="ORANGE", command=toena)

on3.grid(row=9, column=2, padx=20, pady=15)

off3= Button(f1,font=("Courier", 14, "bold"), relief=GROOVE,

text="OFF", fg="blue",

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 144: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 17 -

highlightbackground="ORANGE", command=toenof)

off3.grid(row=9, column=3, padx=20, pady=15)

##request babb lokal

#suhu

ent7a=Entry(f1,width=6, bd=3)

ent7a.grid(row=11, column=1, padx=2, pady=1)

ent8a=Entry(f1,width=6, bd=3)

ent8a.grid(row=11, column=3, padx=2, pady=1)

#kel

ent9a=Entry(f1,width=6, bd=3)

ent9a.grid(row=12, column=1, padx=2, pady=1)

ent11a=Entry(f1,width=6, bd=3)

ent11a.grid(row=12, column=3, padx=2, pady=1)

###############################################################################

###############################################################################

ra="0"

selection=""

nib=5

la=[]

la2=[]

la3=[]

la4=[]

for i in range(20):

la.append(0)

la2.append(0)

la3.append(0)

la4.append(0)

def sel():

global selection, ra, nib

selection = "You selected " + str(var.get()) +' seconds'

label12.config(text = selection)

#print selection

ra=(var.get())

nib=float(ra)

#LABELS

Label8 = Label(f2, text="NILAI SUHU",

font=("Courier", 18, "bold"), fg= "RED", relief=FLAT)

Label8.grid(row=1, column=1, padx=10, pady=20)

Label9 = Label(f2, text="NILAI KELEMBABAN",

font=("Courier", 18, "bold"), fg= "RED", relief=FLAT)

Label9.grid(row=2, column=1, padx=10, pady=20)

Label10 = Label(f2,text="STATUS PEMANAS",

font=("Courier", 18, "bold"), fg= "RED", relief=FLAT)

Label10.grid(row=3, column=1, padx=10, pady=20)

Label11 = Label(f2,text="STATUS POMPA",

font=("Courier", 18, "bold"), fg= "RED", relief=FLAT)

Label11.grid(row=4, column=1, padx=10, pady=20)

#ENTRY

#entry suhu

ent5=Entry(f2,width=15, bd=4)

ent5.grid(row=1, column=2, padx=20, pady=10)

#entry kelemaban

ent6=Entry(f2,width=15, bd=4)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 145: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 18 -

ent6.grid(row=2, column=2, padx=20, pady=10)

#CIRCLE canvas

cir3 = Canvas(f2, width=50, height=50, bg="blue")

cir3.grid(row=3, column=2, padx=20, pady=10)

cir4 = Canvas(f2, width=50, height=50, bg="blue")

cir4.grid(row=4, column=2, padx=20, pady=10)

var = IntVar()

var.set(nib)

R1 = Radiobutton(f2, text="5 detik", variable=var, value=5,

relief=GROOVE, command=sel,

font=("Courier", 18, "bold"), fg= "PURPLE")

R1.grid(row=5, column=1, padx=10, pady=4)

R2 = Radiobutton(f2,text="10 detik", variable=var, value=10,

relief=GROOVE, command=sel,

font=("Courier", 18, "bold"), fg= "PURPLE")

R2.grid(row=6, column=1, padx=10, pady=4)

R3 = Radiobutton(f2, text="15 detik", variable=var, value=15,

relief=GROOVE, command=sel,

font=("Courier", 18, "bold"), fg= "PURPLE")

R3.grid(row=7, column=1, padx=10, pady=4)

label12 = Label(f2)

label12.grid(row=8, column=1, padx=10, pady=4)

#########################################################################################3

################################# MENU LOGGING######################################

def tofile():

root2 = Tk()

root2.fileName = tkFileDialog.askopenfilename(initialdir = "/home/pi",title = "Select file",

filetypes = (("csv files", "*.csv"),

("txt files","*.txt"),

("all files","*.*")))

print(root2.fileName) # prints filename

# onto terminal

root2.title(root2.fileName) # put filename into

# title bar

text1 = open(root2.fileName).read()

#print(text1)

T = Text(root2, height=40, width=85)

T.grid() # pack that textbox into

# the root window

T.insert(END,text1) #insert all the text up to

# just after the last char

# in: text1

root2.update()

root.update()

def toplot():

root1 = Tk()

root1.fileName = tkFileDialog.askopenfilename(initialdir = "/home/pi",title = "Select file",

filetypes = (("csv files", "*.csv"),("txt files","*.txt"),

("all files","*.*")))

global plo

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 146: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 19 -

plo=root1.fileName

from csv import reader

with open(plo, 'r') as f:

data = list(reader(f))

x = [parser.parse(i[0]) for i in data[1::]] #time

y1= [i[1] for i in data[1::]] #bb suhu

y2= [i[2] for i in data[1::]] #ba suhu

y3= [i[3] for i in data[1::]] #bb kel

y4= [i[4] for i in data[1::]] #ba kel

y5= [i[5] for i in data[1::]] #suhu

y6= [i[6] for i in data[1::]] #kelembaban

y7= [i[7] for i in data[1::]] #pemanas

y8= [i[8] for i in data[1::]] #pompa

fig, ax = plt.subplots()

ax.plot(x, y1, 'o-', label='bb suhu', color='orange')

ax.plot(x, y2, 'o-', label='ba suhu', color='orange')

ax.plot(x, y3, 'o-', label='bb kel', color='brown')

ax.plot(x, y4, 'o-', label='ba kel', color='brown')

ax.plot(x, y5, '.-', label='Suhu', color='blue')

ax.plot(x, y6, '.-', label='Kelembaban', color='purple')

ax.plot(x, y7, '.-', label='Pemanas', color='green')

ax.plot(x, y8, '.-', label='Pompa', color='red')

ax.set_title('Logging System')

legend = ax.legend(loc='upper center', shadow=True, fontsize='x-small')

legend.get_frame().set_facecolor('pink')

plt.tight_layout() #supaya fit tight

plt.rcParams.update({'figure.max_open_warning': 0})

canvas = FigureCanvasTkAgg(fig, master=f4)

canvas.show()

canvas.get_tk_widget().grid(row=3, column=1, columnspan=4)

canvas._tkcanvas.grid()

############### TOOLBAR ###############

toolbarFrame = Frame(master=f4)

toolbarFrame.grid(row=4,column=2)

toolbar = NavigationToolbar2TkAgg(canvas, toolbarFrame)

root1.update()

root.update()

def tookplot():

global v, v1, v2, u

v1=ent17.get()

v2=int(v1)

v=v2

u=1

from csv import reader

with open(plo, 'r') as f:

data = list(reader(f))

x = [parser.parse(i[0]) for i in data[u:v]] #time

y1= [i[1] for i in data[u:v]] #bb suhu

y2= [i[2] for i in data[u:v]] #ba suhu

y3= [i[3] for i in data[u:v]] #bb kel

y4= [i[4] for i in data[u:v]] #ba kel

y5= [i[5] for i in data[u:v]] #suhu

y6= [i[6] for i in data[u:v]] #kelembaban

y7= [i[7] for i in data[u:v]] #pemanas

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 147: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 20 -

y8= [i[8] for i in data[u:v]] #pompa

fig, ax = plt.subplots()

ax.plot(x, y1, 'o-', label='bb suhu', color='orange')

ax.plot(x, y2, 'o-', label='ba suhu', color='orange')

ax.plot(x, y3, 'o-', label='bb kel', color='brown')

ax.plot(x, y4, 'o-', label='ba kel', color='brown')

ax.plot(x, y5, '.-', label='Suhu', color='blue')

ax.plot(x, y6, '.-', label='Kelembaban', color='purple')

ax.plot(x, y7, '.-', label='Pemanas', color='green')

ax.plot(x, y8, '.-', label='Pompa', color='red')

ax.set_title('Logging System')

legend = ax.legend(loc='upper center', shadow=True, fontsize='x-small')

legend.get_frame().set_facecolor('pink')

plt.tight_layout() #supaya fit tight

canvas = FigureCanvasTkAgg(fig, master=f4)

canvas.show()

canvas.get_tk_widget().grid(row=3, column=1, columnspan=4)

canvas._tkcanvas.grid()

toolbarFrame = Frame(master=f4)

toolbarFrame.grid(row=4,column=2)

toolbar = NavigationToolbar2TkAgg(canvas, toolbarFrame)

f4.bind_all('<Button-1>', lambda event: remove_plot(canvas))

def remove_plot(canvas):

canvas.get_tk_widget().destroy()

def addka():

for i in range (1):

global v, u

u=u+10

v=v+10

print 'kanan u', u

print 'kanan v', v

from csv import reader

with open(plo, 'r') as f:

data = list(reader(f))

x = [parser.parse(i[0]) for i in data[u:v]] #time

y1= [i[1] for i in data[u:v]] #bb suhu

y2= [i[2] for i in data[u:v]] #ba suhu

y3= [i[3] for i in data[u:v]] #bb kel

y4= [i[4] for i in data[u:v]] #ba kel

y5= [i[5] for i in data[u:v]] #suhu

y6= [i[6] for i in data[u:v]] #kelembaban

y7= [i[7] for i in data[u:v]] #pemanas

y8= [i[8] for i in data[u:v]] #pompa

fig, ax = plt.subplots()

ax.plot(x, y1, 'o-', label='bb suhu', color='orange')

ax.plot(x, y2, 'o-', label='ba suhu', color='orange')

ax.plot(x, y3, 'o-', label='bb kel', color='brown')

ax.plot(x, y4, 'o-', label='ba kel', color='brown')

ax.plot(x, y5, '.-', label='Suhu', color='blue')

ax.plot(x, y6, '.-', label='Kelembaban', color='purple')

ax.plot(x, y7, '.-', label='Pemanas', color='green')

ax.plot(x, y8, '.-', label='Pompa', color='red')

ax.set_title('Logging System')

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 148: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 21 -

legend = ax.legend(loc='upper center', shadow=True, fontsize='x-small')

legend.get_frame().set_facecolor('pink')

plt.tight_layout() #supaya fit tight

canvas = FigureCanvasTkAgg(fig, master=f4)

canvas.show()

canvas.get_tk_widget().grid(row=3, column=1, columnspan=4)

canvas._tkcanvas.grid()

toolbarFrame = Frame(master=f4)

toolbarFrame.grid(row=4,column=2)

toolbar = NavigationToolbar2TkAgg(canvas, toolbarFrame)

f4.bind_all('<Button-1>', lambda event: remove_plot(canvas))

def remove_plot(canvas):

canvas.get_tk_widget().destroy()

def addki():

for i in range (1):

global v, u

u=u-10

v=v-10

print 'kiri u', u

print 'kiri v', v

from csv import reader

with open(plo, 'r') as f:

data = list(reader(f))

x = [parser.parse(i[0]) for i in data[u:v]] #time

y1= [i[1] for i in data[u:v]] #bb suhu

y2= [i[2] for i in data[u:v]] #ba suhu

y3= [i[3] for i in data[u:v]] #bb kel

y4= [i[4] for i in data[u:v]] #ba kel

y5= [i[5] for i in data[u:v]] #suhu

y6= [i[6] for i in data[u:v]] #kelembaban

y7= [i[7] for i in data[u:v]] #pemanas

y8= [i[8] for i in data[u:v]] #pompa

fig, ax = plt.subplots()

ax.plot(x, y1, 'o-', label='bb suhu', color='orange')

ax.plot(x, y2, 'o-', label='ba suhu', color='orange')

ax.plot(x, y3, 'o-', label='bb kel', color='brown')

ax.plot(x, y4, 'o-', label='ba kel', color='brown')

ax.plot(x, y5, '.-', label='Suhu', color='blue')

ax.plot(x, y6, '.-', label='Kelembaban', color='purple')

ax.plot(x, y7, '.-', label='Pemanas', color='green')

ax.plot(x, y8, '.-', label='Pompa', color='red')

ax.set_title('Logging System')

legend = ax.legend(loc='upper center', shadow=True, fontsize='x-small')

legend.get_frame().set_facecolor('pink')

plt.tight_layout() #supaya fit tight

canvas = FigureCanvasTkAgg(fig, master=f4)

canvas.show()

canvas.get_tk_widget().grid(row=3, column=1, columnspan=4)

canvas._tkcanvas.grid()

toolbarFrame = Frame(master=f4)

toolbarFrame.grid(row=4,column=2)

toolbar = NavigationToolbar2TkAgg(canvas, toolbarFrame)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 149: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 22 -

f4.bind_all('<Button-1>', lambda event: remove_plot(canvas))

def remove_plot(canvas):

canvas.get_tk_widget().destroy()

#LABELS

Label13 = Label(f3, text="INTERVAL LOGGING DATA",

font=("Courier", 20, "bold"), fg= "PURPLE", relief=FLAT)

Label13.grid(row=1, column=2, padx=10, pady=20)

global dat

dat=5

#RADIOBUTTON

def sel2():

global selection, aa3, dat, la, la2, la3, la4

selection = "You selected : " + str(var1.get()) + " datas"

label14.config(text = selection)

#print selection

aa3=(var1.get())

dat=float(aa3)

#print a

return dat

var1 = IntVar()

var1.set(dat)

R4 = Radiobutton(f3, text="5 data", variable=var1, value=5,

relief=GROOVE, command=sel2,

font=("Courier", 18, "bold"), fg= "PURPLE")

R4.grid(row=2, column=2, padx=10, pady=4)

R5 = Radiobutton(f3,text="15 data", variable=var1,value=15,

relief=GROOVE, command=sel2,

font=("Courier", 18, "bold"), fg= "PURPLE")

R5.grid(row=3, column=2, padx=10, pady=4)

R6 = Radiobutton(f3, text="20 data", variable=var1,value=20,

relief=GROOVE, command=sel2,

font=("Courier", 18, "bold"), fg= "PURPLE")

R6.grid(row=4, column=2, padx=10, pady=4)

label14 = Label(f3)

label14.grid(row=5, column=2, padx=10, pady=4)

#open file

opfi = Button(f3, text='OPEN FILE', font=("Courier", 20, "bold"),

relief=RAISED,fg="blue",

command=tofile, highlightbackground="ORANGE")

opfi.grid(row=6, column=2, padx=20, pady=15)

#tampilkan plot

taplo = Button(f3, text='TAMPILKAN PLOT', font=("Courier", 20, "bold"),

relief=RAISED, fg="blue",

command=toplot, highlightbackground="ORANGE")

taplo.grid(row=7, column=2, padx=20, pady=1)

#accesories f4

ent17=Entry(f4,width=5, bd=3)

ent17.grid(row=6, column=2, padx=2, pady=1)

but16=Button(f4, text="OK", bg='orange', command=tookplot)

but16.grid(row=7, column=2,padx=2, pady=1)

but17=Button(f4, text="<---", bg='green', command=addki)

but17.grid(row=7, column=1,padx=2, pady=1)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 150: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 23 -

but18=Button(f4, text="--->", bg='green', command=addka)

but18.grid(row=7, column=3,padx=2, pady=1)

##############################################################

###################################################################

#datetime.now().strftime('%Y:%m:%d')

#datetime.now().strftime('%D')

#wa.date() untuk menampilkan tanggal saja

#wa.day untuk hari

tim=datetime.now().strftime('%H:%M:%S')

wa=datetime.now()

tea=wa.date()

sec=wa.second

dd=0

s1=0

f=open(str(tea) +".csv" , "a")

f.write(str('Time'))

f.write(', ')

f.write(str('BB Suhu'))

f.write(', ')

f.write(str('BA Suhu'))

f.write(', ')

f.write(str('BB Kel'))

f.write(', ')

f.write(str('BA Kel'))

f.write(', ')

f.write(str('Suhu'))

f.write(', ')

f.write(str('Kelembaban'))

f.write(', ')

f.write(str('Pemanas'))

f.write(', ')

f.write(str('Pompa'))

f.write("\r\n")

root.update()

f.flush()

f.close()

cb=0

bb=0

ba=0

bb2=0

ba2=0

while True:

if zel.is_open():

ti=datetime.now().strftime('%H:%M:%S')

air=datetime.now()

ca=air.second

teb=air.date() #newest date

bba=dat

if tea!=teb:

f=open(str(teb) +".csv" , "a")

f.write(str('Time'))

f.write(', ')

f.write(str('BB Suhu'))

f.write(', ')

f.write(str('BA Suhu'))

f.write(', ')

f.write(str('BB Kel'))

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 151: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 24 -

f.write(', ')

f.write(str('BA Kel'))

f.write(', ')

f.write(str('Suhu'))

f.write(', ')

f.write(str('Kelembaban'))

f.write(', ')

f.write(str('Pemanas'))

f.write(', ')

f.write(str('Pompa'))

f.write("\r\n")

f.flush()

f.close()

tea=teb

f=open(str(tea) + ".csv" , "a") #bukan di dalam if karena ntr tidak bs write

if sec!=ca:

dd=dd+1

cb= cb+1

print 'cb', cb

regsa = zel.write_single_register(16, 512) #it's not (16, 0) because will disturb the ba bb suhu

regsb= zel.write_single_register(18, 16)

regsc= zel.read_holding_registers(20,1)

regsc= zel.read_holding_registers(20,1) #nilai hold

regsc1=regsc[0]

ba=regsc1

ent8a.insert(0, regsc1)

ent8a.delete(0, END) #refresh data

ent8a.insert(0, regsc1)

#to show bb local value

regsd = zel.write_single_register(16, 128)

regse= zel.write_single_register(18, 16)

regsf= zel.read_holding_registers(21,1)

regsf= zel.read_holding_registers(21,1)

regsf1=regsf[0]

bb=regsf1

ent7a.insert(0, regsf1)

ent7a.delete(0, END)

ent7a.insert(0, regsf1)

regsa = zel.write_single_register(16, 512) #it's not (17, 0) because will disturb the ba bb kel

regsb= zel.write_single_register(18, 16)

regsc= zel.read_holding_registers(21,1)

regsc= zel.read_holding_registers(21,1)

regsc2=regsc[0]

ba2=regsc2

ent11a.insert(0, regsc2)

ent11a.delete(0, END)

ent11a.insert(0, regsc2)

#to show bb local value

regsd = zel.write_single_register(16, 128)

regse= zel.write_single_register(18, 16)

regsf= zel.read_holding_registers(20,1)

regsf= zel.read_holding_registers(20,1)

regsf2=regsf[0]

bb2=regsf2

ent9a.insert(0, regsf2)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 152: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 25 -

ent9a.delete(0, END)

ent9a.insert(0, regsf2)

root.update()

if dd>=nib:

dd=0

#temperature monitoring

temt=zel.write_single_register(16, 512)

temt2=zel.write_single_register(18, 64)

tempt=zel.read_holding_registers(20,1)#suhu now

tempt=zel.read_holding_registers(20,1)

gi=tempt[0]

ki=float(gi)

ent5.insert(0, ki)

print "temp=", ki

ent5.delete(0, END)

ent5.insert(0, ki)

ent5.update()

#humidity monit

humid=zel.write_single_register(16,512)

humid2=zel.write_single_register(18,64)

humi=zel.read_holding_registers(21,1)#kel now

humi=zel.read_holding_registers(21,1)

kele=humi[0]

kele3=float(kele)

ent6.insert(0, kele3)

print "kel=", kele3

ent6.delete(0, END)

ent6.insert(0, kele3)

ent6.update()

#status pemanas

regs1 = zel.read_holding_registers(22, 1) #heat

ri=regs1[0]

ni=float(ri)

print "heater", ni

if ni==1:

# print 'hidup'

cir3.create_oval(8, 8, 40, 40, width=0, fill='green')

else:

#print 'mati'

cir3.create_oval(8, 8, 40, 40, width=0, fill='red')

cir3.update()

#status pompa

regs2 = zel.read_holding_registers(23, 1) #pomp

ri2=regs2[0]

ni2=float(ri2)

print "pompa", ni2

if ni2==1:

# print 'hidup'

cir4.create_oval(8, 8, 40, 40, width=0, fill='green')

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 153: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 26 -

else:

#print 'mati'

cir4.create_oval(8, 8, 40, 40, width=0, fill='red')

cir4.update()

root.update()

la[s1]=ki

la2[s1]=kele3

la3[s1]=ni

la4[s1]=ni2

s1=s1+1

print 'Collect Data', s1

print 'List Suhu', la

print 'List Kel', la2

print 'List Heater', la3

print 'List Pomp', la4

if s1>=dat:

suma=sum(la)

avg1=round(suma / dat)

qi=int(avg1)

sumb=sum(la2)

avg2=round(sumb / dat)

qi2=int(avg2)

sumc=sum(la3)

avg3=round(sumc / dat)

qi3=int(avg3)

sumd=sum(la4)

avg4=round(sumd / dat)

qi4=int(avg4)

print 'time', ti

print 'sum:',suma,' avg:',qi

print 'sum2:',sumb,' avg2:',qi2

print 'sum3:',sumc,' avg3:',qi3

print 'sum4:',sumd,' avg4:',qi4

print 'bb suhu', bb

print 'ba suhu', ba

print 'bb kel', bb2

print 'ba kel', ba2

s1=0

f.write(str(ti))

f.write(', ')

f.write(str(bb))

f.write(', ')

f.write(str(ba))

f.write(', ')

f.write(str(bb2))

f.write(', ')

f.write(str(ba2))

f.write(', ')

f.write(str(qi))

f.write(', ')

f.write(str(qi2))

f.write(', ')

f.write(str(qi3))

f.write(', ')

f.write(str(qi4))

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 154: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

L- 27 -

f.write("\r\n")

root.update()

f.flush()

f.close()

sec=ca

root.update()

bbb=dat

if bba <> bbb:

s1=0

for i in range (20):

la[i]=0

la2[i]=0

la3[i]=0

la4[i]=0

else:

zel.open()

root.update()

root.mainloop()

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 155: SISTEM MONITOR JARAK JAUH PADA KUMBUNG JAMUR TIRAM

Sistem Lokal dan Jarak Jauh

8099

lo,I

8100

lo..LL*tun

8101

!o+LLJHum

8097

Ho,IL+nat8137

IooL*rcatrB l40ilor

lou-J

8080

FoniLLlpm

B094

loe

olXTJ

pompa

$hu02xT'l

kelmbqban

03XT.1

Pemans

04xT1

J1XT1

XT1

J3XT1

J4Xl1

ipggqqiasram

L-28-

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI