rancang bangun modul pembelajaran sensor …

86
RANCANG BANGUN MODUL PEMBELAJARAN SENSOR PENGUKUR KECEPATAN DAN KELEMBAPAN UDARA DENGAN RASPBERRY PI 4 DAN NOTIFIKASI TELEGRAM LAPORAN SKRIPSI Muhammad Akbar 4816050252 KONSENTRASI KEAMANAN SISTEM INFORMASI PROGRAM STUDI TEKNIK MULTIMEDIA DAN JARINGAN JURUSAN TEKNIK INFORMATIKA DAN KOMPUTER POLITEKNIK NEGERI JAKARTA DEPOK 2020

Upload: others

Post on 09-Nov-2021

16 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

RANCANG BANGUN MODUL PEMBELAJARAN

SENSOR PENGUKUR KECEPATAN DAN

KELEMBAPAN UDARA DENGAN RASPBERRY PI 4

DAN NOTIFIKASI TELEGRAM

LAPORAN SKRIPSI

Muhammad Akbar 4816050252

KONSENTRASI KEAMANAN SISTEM INFORMASI

PROGRAM STUDI TEKNIK MULTIMEDIA DAN

JARINGAN

JURUSAN TEKNIK INFORMATIKA DAN

KOMPUTER

POLITEKNIK NEGERI JAKARTA

DEPOK

2020

Page 2: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

RANCANG BANGUN MODUL PEMBELAJARAN

SENSOR PENGUKUR KECEPATAN DAN

KELEMBAPAN UDARA DENGAN RASPBERRY PI 4

DAN NOTIFIKASI TELEGRAM

LAPORAN SKRIPSI

Dibuat untuk Melengkapi Syarat-Syarat yang Diperlukan untuk

Memperoleh Diploma Empat Politeknik

Muhammad Akbar

4816050252

KONSENTRASI KEAMANAN SISTEM INFORMASI

PROGRAM STUDI TEKNIK MULTIMEDIA DAN JARINGAN

JURUSAN TEKNIK INFORMATIKA DAN KOMPUTER

POLITEKNIK NEGERI JAKARTA

DEPOK

2020

Page 3: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

i

HALAMAN PERNYATAAN ORISINALITAS

Page 4: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

ii

LEMBAR PENGESAHAN

Page 5: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

iii

HALAMAN PERNYATAAN PERSETUJUAN PUBLIKASI SKRIPSI

UNTUK KEPENTINGAN AKADEMIS

Page 6: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

iv

KATA PENGANTAR

Alhamdulillah. Puji syukur saya panjatkan kepada Allah SWT, karena atas berkat

dan rahmat-Nya, penulis dapat menyelesaikan laporan skripsi ini. Penulisan laporan

Skripsi ini dilakukan dalam rangka memenuhi salah satu syarat untuk mencapai

gelar Sarjana Terapan Politeknik. Penulis menyadari bahwa, tanpa bantuan dan

bimbingan dari berbagai pihak, dari masa perkuliahan sampai pada penyusunan

laporan Skripsi, sangatlah sulit bagi penulis untuk menyelesaikan laporan Skripsi

ini. Oleh karena itu, penulis mengucapkan terima kasih kepada:

1. Kedua Orang Tua dan keluarga besar Penulis yang telah memberikan

dukungan baik moril dan materi serta doa yang tiada henti-hentinya kepada

penulis

2. Bapak Drs. Abdul Aziz, M.MSI Selaku Dosen Pembimbing yang telah

meluangkan waktu untuk memberikan arahan selama penyusunan skripsi

3. Hanjas Agung Nugroho yang telah membantu Penulis dalam pembuatan alat

skripsi dan penulisan laporan Skripsi.

4. Seluruh teman-teman seangkatan, terutama kelas CCIT 8 SEC Angkatan

2016 yang selalu mengisi hari-hari menjadi sangat menyenangkan.

Akhir kata, penulis mengharapkan skripsi ini dapat memberikan manfaat. Penulis

pun berharap semoga skripsi ini dapat bermanfaat dan semoga Allah SWT memberi

lindungan bagi kita semua.

Depok, Juni 2020

Muhammad Akbar

Page 7: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

v

RANCANG BANGUN MODUL PEMBELAJARAN SENSOR PENGUKUR

KECEPATAN DAN KELEMBAPAN UDARA DENGAN RASPBERRY PI 4

DAN NOTIFIKASI TELEGRAM

Abstrak

Selama ini mahasiswa mengetahui macam-macam jenis sensor hanya sebatas materi saja

dan belum bisa mengaplikasikan dalam bentuk sebuah alat yang kongkret atau dalam teknologi tepat guna. Maka dari itu pada penelitian ini muncul sebuah ide tentang

membuat sebuah Modul Pembelajaran Rancang Bangun Sensor pengukur Kelembapan

dan Kecepatan Udara dengan Raspberry Pi 4 dan notifikasi Telegram yang dapat menyampaikan informasi secara kongkrit dan real time dengan teknologi notifikasi pesan

instan berbasis public Cloud Telegram dan Telegram bot berbentuk modul, sebagai alat

pembelajaran pada mata kuliah yang terkait. Rancang bangun sensor ini dapat mengukur

Kelembapan dan Suhu dengan SHT31-D dan Anemometer sebagai pengukur Kecepatan udara. Dari hasil percobaan pada penelitian ini mendapatkan nilai root square mean error

(RMSE) sebesar 1.73 untuk sensor suhu dan 6.87 untuk sensor kelembapan yang telah diuji

dan dibandingkan dengan teknologi ramalan cuaca milik Google yang berbasis Kecerdasan Buatan dan fungsi sistem berjalan dengan baik. Hal ini dibuktikan dari 11

butir skenario pengujian , semua fungsi berhasil diterima

Kata kunci:Anemometer, bot ,Cloud , Google Weather, SHT31-D, Telegram

Page 8: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

vi

DAFTAR ISI

HALAMAN PERNYATAAN ORISINALITAS ................................................ i

LEMBAR PENGESAHAN ................................................................................ ii

HALAMAN PERNYATAAN ........................................................................... iii

KATA PENGANTAR ....................................................................................... iv

ABSTRAK .......................................................................................................... v

DAFTAR ISI ..................................................................................................... vi

DAFTAR GAMBAR ......................................................................................... ix

DAFTAR TABEL ............................................................................................. xi

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

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

1.2 Perumusan Masalah ............................................................................ 2

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

1.4 Tujuan dan Manfaat ............................................................................ 2

1.4.1 Tujuan ........................................................................................... 2

1.4.2 Manfaat ......................................................................................... 3

1.5 Metode Penyelesaian Masalah ............................................................. 3

BAB II ................................................................................................................ 5

2.1 Penelitian Sebelumnya ............................................................................. 5

2.2 Cuaca ........................................................................................................ 5

2.3 Suhu Udara ............................................................................................... 6

2.4 Kelembapan Udara................................................................................... 6

2.5 Raspberry Pi 4 .......................................................................................... 6

2.5.1 Tabel Spesifikasi Raspberry Pi 4 ....................................................... 7

2.6 Arduino Atmega 2560 ............................................................................... 8

Page 9: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

vii

2.6.1 Tabel Spesifikasi Arduino Atmega 2560 ........................................... 9

2.7 Sensor Kecepatan Udara .......................................................................... 9

2.8 Sensor Kelembapan SHT31-D ............................................................... 10

2.9 I2C ........................................................................................................... 12

2.10 Python ................................................................................................... 13

2.11 Telegram ............................................................................................... 14

2.12 Sistem Operasi Rasbian ........................................................................ 14

2.13 Cloud Computing ................................................................................. 15

BAB III ............................................................................................................. 16

3.1 Perancangan Alat ................................................................................... 16

3.1.1 Rangkaian Rancang Bangun Secara Umum ................................... 16

3.1.2 Diagram Rancang Bangun ............................................................... 17

3.1.3 Proses Fase Input ............................................................................. 18

3.1.4 Proses Fase Proses ............................................................................ 19

3.1.5 Proses Fase Output .......................................................................... 20

3.1.6 Skema Sensor Kecepatan Udara ..................................................... 22

3.1.7 Skema Sensor Kelembapan ............................................................. 25

3.2 Realisasi Alat/Program ........................................................................... 27

3.2.1 Konfigurasi Raspberry Pi 4 ............................................................. 27

3.3.2 Instalasi Sistem Operasi Raspbian .................................................. 28

3.2.3 Konfigurasi IP Statis ........................................................................ 30

3.2.4 Konfigurasi Remote Access SSH ..................................................... 32

3.3.5 Konfigurasi Remote Access VNC Server ........................................ 36

3.2.6 Perbandingan Remote Access .......................................................... 37

3.2.7 Instalasi Arduino IDE ...................................................................... 38

3.3.8 Mekanisme Keamanan Telegram .................................................... 40

Page 10: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

viii

3.3.9 Mekanisme Tampilan Bot Telegram ............................................... 41

3.3.10 Pembuatan Modul Lembar Kerja/Panduan ................................. 42

BAB IV ............................................................................................................. 44

4.1 Pengujian ........................................................................................... 44

4.2 Deskripsi Pengujian ........................................................................... 44

4.3 Prosedur Pengujian ........................................................................... 45

4.4 Data Hasil Pengujian ......................................................................... 46

4.5 Analisa Data / Evaluasi ...................................................................... 55

BAB V ............................................................................................................... 58

5.1 Kesimpulan ........................................................................................ 58

5.2 Saran .................................................................................................. 58

DAFTAR PUSTAKA ....................................................................................... 59

DAFTAR RIWAYAT HIDUP PENULIS ....................................................... 62

Page 11: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

ix

DAFTAR GAMBAR

Gambar 1.1 Metode Waterfall .............................................................................. 3

Gambar 2.1 Raspberry PI 4 .................................................................................. 7

Gambar 2.2 Arduino Atmega 2560....................................................................... 8

Gambar 2.3 Sensor Anemometer ........................................................................ 10

Gambar 2.4 Sensor SHT31-D............................................................................. 11

Gambar 2.5 Diagram Arsitekur SHT31-D .......................................................... 11

Gambar 2.6 Mekanisme I2C .............................................................................. 12

Gambar 3.1 Rangkaian sistem secara umum....................................................... 16

Gambar 3.2 Diagram Blok Rancang Bangun ...................................................... 17

Gambar 3.3 Mekanisme Fase Proses .................................................................. 20

Gambar 3.4 Diagram Telegram API ................................................................... 21

Gambar 3.5 Mekanisme Fase Output.................................................................. 21

Gambar 3.6 Rangakaian Sensor Anemometer .................................................... 22

Gambar 3.7 Rumus RPM I ................................................................................. 23

Gambar 3.8 Rumus nilai interval ........................................................................ 23

Gambar 3.9 Rumus Total RPM .......................................................................... 24

Gambar 3.10 Rumus Kecepatan Angin............................................................... 24

Gambar 3.11 Rangkaian Sensor SHT31-D ......................................................... 25

Gambar 3.12 Rumus Nilai Kelembapan ............................................................. 26

Gambar 3.13 Rumus Nilai Celcius & Kelvin ...................................................... 26

Gambar 3.14 Rangkaian Parsial Rancang Bangun .............................................. 27

Gambar 3.15 Website Instalasi OS Raspbian ..................................................... 28

Gambar 3.16 Instalasi OS ke SD Card ................................................................ 29

Gambar 3.17 Tampilan Dekstop Raspbian ......................................................... 30

Gambar 3.18 Perintah akses file IP ..................................................................... 31

Gambar 3.19 Tampilan Konfigurasi Wireless Statis ........................................... 31

Gambar 3.20 Perintah Konfigurasi Menu Raspbian ............................................ 33

Gambar 3.21 Tampilan Menu Options ............................................................... 33

Gambar 3.22 Konfirmasi SSH ............................................................................ 34

Gambar 3.23 Perintah Cek Port .......................................................................... 34

Gambar 3.24 Daftar Port Aktif ........................................................................... 35

Gambar 3.25 Tampilan Interface PuTTY ........................................................... 35

Page 12: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

x

Gambar 3.26 Tampilan CLI SSH PuTTY ........................................................... 36

Gambar 3.27 Perintah Instalasi RDP .................................................................. 36

Gambar 3.28 Tampilan Remote Dekstop ............................................................ 37

Gambar 3.29 Tampilan Dekstop Raspbian Via VNC .......................................... 37

Gambar 3.30 Perintah Menampilkan Spesifikasi ................................................ 38

Gambar 3.31 Website Arduino IDE ................................................................... 39

Gambar 3.32 Perintah pindah direktori ............................................................... 39

Gambar 3.33 Alur Mekanisme Keamanan Chat .................................................. 40

Gambar 3.34 Tampilan Interface Telegram Bot .................................................. 42

Gambar 3.35 Tampilan Web Lembar Kerja ........................................................ 43

Gambar 4.1 Flowchart Pengujian ....................................................................... 45

Gambar 4.2 Grafik Sensor SHT31-D (Suhu) ...................................................... 47

Gambar 4.3 Grafik Sensor SHT31-D(Kelembapan)............................................ 48

Gambar 4.4 Grafik Sensor Anemometer (Kecepatan Udara)............................... 49

Gambar 4.5 Hasil Pengujian Fase Input.............................................................. 49

Gambar 4.6 Hasil Pengujian Fase Proses ............................................................ 50

Gambar 4.7 Hasil Pengujian Fase Output ........................................................... 51

Gambar 4.8 Grafik Korelasi Hubungan Suhu dan Kelembapan Udara ................ 55

Gambar 4.9 Grafik Perbandingan Suhu .............................................................. 55

Gambar 4.10 Grafik Perbandingan Kelembapan Udara ...................................... 56

Page 13: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

xi

DAFTAR TABEL

Tabel 2.1 Spesifikasi Raspberry PI 4 .................................................................... 7

Tabel 2.2 Tabel Spesifikasi Arduino Atmega ....................................................... 9

Tabel 3.1 Variabel pada fase Input ..................................................................... 18

Tabel 3.2 Perbandingan Remote Access ............................................................. 37

Tabel 3.3 Daftar Fungsi Program ....................................................................... 41

Tabel 4.1 Rencana Pengujian ............................................................................. 46

Tabel 4.2 Pengujian fase input ........................................................................... 52

Tabel 4.3 Pengujian fase process ........................................................................ 53

Tabel 4.4 Pengujian fase output ......................................................................... 54

Tabel 4.5 Nilai Root Mean Square Error ............................................................ 57

Page 14: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Sejak tahun 2010 aktivitas masyarakat di kehidupan pada zaman ini tidak bisa

terlepas dari kebutuhan Teknologi Informasi. Peranannya berdampak pada

kebutuhan manusia yang tak dapat dipungkiri lagi, mulai dari sektor komunikasi,

bisnis, pendidikan, dan lain-lain. Melihat pesatnya kemajuan di bidang teknologi

informasi dan era revolusi 4.0 saat ini yang fokus pada teknologi konetivitas

internet,real time data dan otomatisasi, besar kemungkinan akan banyak inovasi

dari berbagai aspek Teknologi Informasi pada era ini . Terkadang fase ini juga

sering disebut sebagai era Industrial Internet of Things (IIoT) (Boyes, 2018).

Jurusan Teknik Informatika dan Komputer adalah salah satu dari tujuh jurusan yang

tersedia di Politeknik Negeri Jakarta. Saat ini Jurusan Teknik Informatika dan

Komputer memiliki tiga program studi, yaitu Teknik Informatika (TI), Teknik

Komputer dan Jaringan (TMJ) dan Teknik Multimedia dan Desain (TMD). Untuk

dapat memahami secara esensial bidang Internet of Things (IoT), Sistem Embedded

dan Mikrokontroler. Dibutuhkan sebuah modul dan panduan teknis dari segi

perangkat keras dan lunak untuk pembelajaran, membuat mahasiswa TIK dapat

interaktif, dalam perkuliahan yang bersinggungan dengan materi yang terkait.

Berdasarkan permasalahan tersebut, tujuan skripsi ini adalah membuat salah satu

Instrumen rancang bangun untuk modul pembelajaran yang di lengkapi sensor

kelembapan dan kecepatan udara yang terpasang di Mikrokontroler Arduino dan

sistem notifikasi informasi berbasis teknologi Cloud Telegram sebagai gateway

atau penghubung (Interface) komunikasi antara Aplikasi Pesan Telegram dengan

Raspberry Pi 4 Sebagai on-premise Server yang terhubung dengan Mikrokontroler

yang terpasang Sensor Kelembapan dan Kecepatan Udara .

Adanya rancang bangun modul sensor ini. dapat meningkatkan dan menunjang

pemahaman mahasiswa bagaimana prinsip cara kerja sensor, sistem dan

komunikasi data antar perangkat , dalam mengambil data cuaca secara real-time

Page 15: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

2

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

melalui sensor kecepatan dan kelembapan udara dan mampu untuk menyebarkan

informasi berbasis notifikasi pesan instan.

1.2 Perumusan Masalah

Perumusan Masalah dalam skripsi ini adalah:

a. Bagaimana mendapatkan data informasi tentang kondisi cuaca di suatu

tempat secara otentik dan real-time?

b. Bagaimana rancangan bangun modul pembelajaran sensor pengukur

kelembapan dan kecepatan udara yang akan dibuat?

c. Bagaimana cara mahasiswa dapat mengetahui dan mengerti cara kerja

sensor dan sistem dari rancang bangun ini?

1.3 Batasan Masalah

Batasan masalah dalam proposal skripsi ini adalah:

a. Perancangan Modul Pembelajaran sensor pengukur cuaca ini

menggunakan Arduino Mega dan Raspberry PI 4

b. Lokasi pengujian alat untuk mendapatkan sampel data cuaca dilakukan

pada lingkungan kampus Politeknik Negeri Jakarta

c. Modul Sensor diimplementasikan pada aplikasi pesan Telegram melalui

layanan bot Telegram

d. Implementasi sistem dilakukan di localhost

1.4 Tujuan dan Manfaat

Berdasarkan perumusan masalah diatas maka didapatkan tujuan dan manfaat dari

pembuatan rancang bangun ini, yaitu:

1.4.1 Tujuan

Tujuan dari pembuatan Tugas Akhir ini, yaitu:

1. Merancang dan membangun Sensor Kelembapan dan Kecepatan Udara

berbasis Notifikasi Telegram

2. Mendapatkan data Cuaca dari sensor secara Real Time dan Otentik

Page 16: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

3

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

3. Menganalisa dan membandingkan data hasil rancang bangun dengan

Google Weather untuk megetahui seberapa baik kinerja Sensor dari rancang

bangun pada skripsi ini.

1.4.2 Manfaat

Adapun manfaat dari penelitian ini adalah mempermudah Mahasiswa TIK

terutama Mahasiswa Prodi TMJ dalam pembelajaran dasar, Sistem

Embedded Sehingga mengetahui cara kerja sensor dan sistem dalam

mendapatkan, memproses, mengirimkan, dan menampilkan data pada

Sistem yang Terintegrasi satu sama lain.

1.5 Metode Penyelesaian Masalah

Gambar 1. 1 Metode Waterfall

Penelitian ini dilakukan dengan metode Waterfall dan sebagai berikut:

1. Perencanaan Sistem

Perencanaan Sistem dilakukan dengan mencari data atau informasi

terkait masalah yang dijadikan topik penelitian melalui studi litelatur

dari buku-buku dan jurnal penelitian yang berhubungan dengan topik

penelitian sehingga menjadi sebuah gambaran untuk pondasi rancang

bangun.

2. Analisa Kebutuhan Sistem

Analisa kebutuhan sistem memiliki tujuan untuk mampu memenuhi

kebutuhan sistem sebagai solusi, mulai dari alur program,komponen,

teknologi dan diagram. Dalam memecahkan masalah yang muncul pada

proses rancang bangun.

Page 17: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

4

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

3. Penulisan kode program

Melakukan Penulisan kode program dengan perencanaan dan analisa

kebutuhan yang telah dibuat sebelum nya. Mulai dari penulisan kode di

bagian perangkat keras hingga perangkat lunak dan program

eksekusinya.

4. Verifikasi Sistem

Melakukan verifikasi sistem dengan cara melakukan pengujian

kemampuan dan efektivitas pada input, process dan output pada sistem

rancang bangun, untuk dijadikan feedback ke depannya. Hasil verifikasi

sistem digunakan untuk analisa kekurangan dan kelemahan sistem.

5. Pemeliharaan Sistem

Pada tahap ini Sistem sudah dapat dioperasikan serta dilakukan

pemeliharaan dari sisi hardware dan software. Pemeliharaan sistem

dilakukan untuk meningkatkan kualitas Sistem agar bekerja dengan baik

sesuai dengan harapan.

Page 18: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

5

BAB II

TINJAUAN PUSTAKA

2.1 Penelitian Sebelumnya

Aldi Agustian dari Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas

Indonesia membuat sebuah Rancang Bangun Stasiun Cuaca Berbasis

Mikrokontroler sebagai Penelitiannya. AVR 8535 digunakan sebagai

Mikrokontroler dan Sensor SHT11 sebagai alat untuk pengukur Kelembapan udara.

Dari hasil penelitian didapatkan sistem rancang bangun bersifat pasif. Dalam lain

kata, hanya melakukan pemantauan dan mengirim hasil data keadaan cuaca jika ada

permintaan dari pengguna tanpa adanya sebuah Sistem berbasis Teknologi

Informasi (Agustian, 2010)

Penelitan serupa yang bertema rancang bangun miniatur stasiun cuaca dibuat oleh

Saqiraz (Saqiraz, 2018) dari Universitas Hassanudin pada tahun 2018. Esensi dari

penelitian milik Saqiraz adalah untuk mempermudah dalam menentukan kondisi

cuaca pada wilayah tertentu. Sensor DHT11 digunakan untuk mengukur

kelembapan dan suhu udara yang tersedia pada sensor. Serta menggunakan

rancangan sensor anemometer buatan rumah untuk mengukur kecepatan angin.

Namun, rancang bangun tersebut tidak memiliki fitur data realtime yang tersedia

dan platform aplikasi berbasis pesan instan untuk notifikasinya. Karena itu, belum

ada implementasi teknologi cloud untuk penerapan segi IoT.

Pada tahun 2019, Ghufron dan kawan-kawan dari Magister Teknik Informatika

Universitas Ahmad Dahlan telah menerapkan teknologi IoT berbasis Telegram

sebagai notifikasinya dan membutuhkan sebuah teknologi database untuk

menyimpan data yang digunakan jika terjadi masalah pada perangkat sensor

(Gufron, 2019)

2.2 Cuaca

Cuaca adalah keadaan udara pada saat tertentu dan di wilayah tertentu yang relatif

sempit (tidak luas) dan pada jangka waktu yang singkat, atau definisi cuaca ialah

keadaan udara harian pada suatu tempat tertentu dan meliputi wilayah yang sempit,

keadaan cuaca memiliki kecenderungan dapat berubah setiap harinya. Pengertian

cuaca yang lainnya yaitu suatu keadaan rata-rata udara sehari-hari disuatu tempat

Page 19: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

6

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

tertentu dan meliputi wilayah yang sempit dalam jangka waktu yang singkat.

Keadaan dari cuaca mudah berubah – ubah, karena disebabkan oleh tekanan udara,

suhu, angin, kelembaban udara, dan juga curah hujan. (Miftahuddin, 2016)

2.3 Suhu Udara

Suhu dapat didefinisikan secara Mikroskopik bahwa semakin tinggi kecepatan

molekul di udara maka semakin tinggi suhu yang ada. Suhu bisa dibilang sebagai

derajat panas atau dingin yang diukur berdasarkan skala tertentu menggunakan

Thermometer. Pada Umumnya satuan suhu yang biasa digunakan adalah derajat

Celcius (C). Namun, beberapa negara seperti Inggris menggunakan Fahrenheit (F)

sebagai satuan pengukur suhu. (Sandy, 2017)

Pada umumnya daerah yang paling panas adalah daerah khatulistiwa, karena

sepanjang tahun daerah khatulistiwa mendapatkan radiasi matahari. Indonesia bisa

dikatakan negara panas karena terletak di garis khatulistiwa dan mendapatkan

intensitas cahaya yang lebih banyak dari negara - negara yang diatas dan dibawah

garis lintang. (Sujannah & Munir, 2019)

2.4 Kelembapan Udara

Kelembapan adalah konsentrasi banyaknya uap air yang terkandung dalam massa

udara yang dinyatakan dalam sebuah nilai persen. Terdapat 3 Jenis kelembapan

yaitu mutlak (Absolut), spesifik dan relatif. Umumnya kelembapan dapat diukur

menggunakan alat bantu seperti Higrometer atau Psikrometer yang berbasis digital

maupun analog. Setiap belahan bumi termasuk di Indonesia memiliki tingkat

kelembapan yang berbeda-beda. Banyak variabel yang tidak tetap bisa

mempengaruhi kelembapan di berbagai wilayah seperti daerah Deli Serdang pada

tahun 2011 hingga 2014 yang dimana demam berdarah dapat mempengaruhi

kelembapan udara. (Batubara, 2017)

2.5 Raspberry Pi 4

Raspberry PI 4 merupakan mini komputer yang berukuran sebesar kartu kredit dan

produk terbaru yang dirilis. Pada tahun 2019 Menurut Raspbian Foundation

perusahaan pembuat Raspberry PI 4 yang berbasis di Inggris. Raspberry PI 4

menawarkan pertambahan kecepatan processor, performa multimedia dan

konektivitas jaringan dibandingkan generasi sebelumnya. Hanya perbedaan daya

Page 20: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

7

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

konsumsi yang tidak sama untuk penggunaan-nya.BCM2711 adalah chip processor

yang digunakan pada Raspberry PI 4. Arsitektur BCM2711 merupakan peningkatan

dari model Raspberry Pi sebelumnya yang memiliki desain CPU quad-core

BCM2837 namun, menggunakan teknologi ARM A72 yang kuat dan memiliki fiur

GPU yang diperbarui dari versi sebelumya dengan proses input dan output jauh

lebih cepat, karena pengembangkan PCIe. Memiliki EEPROM berkecepatan 512

kilobyte terpasang di SPI yang berfungsi untuk mengurangi kompleksitas prosedur

bootup pada versi Raspberry sebelumnya. Selain itu, diketahui biasanya Raspberry

hanya bisa mengoperasikan sistem operasi berbasis Linux. Namun, Sejak 2013

Pihak Raspberry menyatakan bahwa telah bekerjasama dengan Microsoft perihal

untuk bisa menghadirkan Windows 10 di perangkat Raspberry Pi 2 hingga

perangkat Raspberry terbaru dan berlisensi gratis untuk khusus Sistem Operasi

Windows Raspbian (Trading, 2018)

Gambar 2. 1 Raspberry PI 4

2.5.1 Tabel Spesifikasi Raspberry Pi 4

Table 2.1 merupakan spesifikasi Raspberry Pi 4 yang digunakan pada skripsi ini:

Tabel 2. 1 Spesifikasi Raspberry PI 4

Spesifikasi Raspberry Pi 4 B

CPU 1.5-GHz,Quad-Core Broadcom

BCM2711B0 (Cortex A-72)

RAM 2 GB DDR4

GPU 500 MHz VideoCore VI

Page 21: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

8

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Video Out Dual micro HDMI ports

Max resolution 4K 60 Hz + 1080p or 2x 4K 30

Hz

USB Ports 2x USB 3.0 / 2x USB 2.0

Power 3A, 5V

Charging Port USB Type-C

Wireless 802.11ac (2.4 / 5 GHz),

Bluetooth 5.0

2.6 Arduino Atmega 2560

Arduino Mega2560 adalah papan mikrokontroler berbasiskan Atmega2560

(datasheet Atmega2560). Arduino Mega2560 memiliki 54 pin digital input/output,

dimana 15 pin dapat digunakan sebagai output PWM, 16 pin sebagai input analog,

dan 4 pin sebagai UART (port serial hardware), 16 MHz kristal osilator, koneksi

USB (Universal Serial Bus), jack power, header ICSP, dan tombol reset. Semua ini

diperlukan untuk mendukung Mikrokontroler, cukup dengan menghubungkannya

ke komputer melalui kabel USB atau kabel power dengan adaptor AC-DC atau

baterai untuk mulai mengaktifkannya. Arduino Mega2560 kompatibel dengan

sebagian besar shield yang dirancang untuk Arduino Duemilanove atau Arduino

Diecimila. Arduino Mega2560 adalah versi terbaru yang menggantikan versi

Arduino Mega. (Majid, 2016 )

Gambar 2. 2 Arduino Atmega 2560

Page 22: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

9

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

2.6.1 Tabel Spesifikasi Arduino Atmega 2560

Table 2.2 merupakan Spesifikasi Arduino Atmega 2560 yang digunakan pada

skripsi ini:

Tabel 2. 2 Tabel Spesifikasi Arduino Atmega

Mikrokonroler Arduino Mega

Operating Voltage 5V

Input Voltage 7-20V

Digital I/O Pins 54

Analog Input Pins 16

DC Current per I/O Pin 40 mA

DC Current for 3.3V Pin 50 mA

Flash Memory 256 KB

SRAM 8 KBS

EEPROM 4 KB

Clock Speed 16 Mhz

2.7 Sensor Kecepatan Udara

Sensor kecepatan udara biasa disebut anemomter. Anemometer adalah alat

pengukur kecepatan udara yang banyak digunakan pada bidang meteorologi dan

geofisika seperti pada BMKG. Selain mengukur kecepatan angin, anemometer juga

dapat mengukur tekanan angin. Angin bisa terjadi karena perubahan tekanan udara.

Pola tekanan udara di seluruh bumi disebabkan oleh pola angin permukaan

horizontal, Karena udara bergerak dari daerah bertekanan tinggi ke daerah

bertekanan rendah, seandainya bumi tidak berputar, angin akan bergerak dalam

jalur lurus, tetapi karena bumi berputar, angin berbelok arah. Angin bergerak secara

spiral meninggalkan daerah bertekanan tinggi dan berputar - putar masuk ke daerah

bertekanan rendah sehingga dibelahan bumi utara angin membelok ke kanan dan

dibelahan bumi selatan membelok ke kiri, ini disebut efek coriolis. (Thoriq Azwar,

2013)

Anemometer mangkok adalah salah satu jenis anemometer rotasi. Cup anemometer

(anemometer mangkok) adalah alat yang digunakan untuk mengukur laju angin

Page 23: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

10

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

dimana sensor laju anginnya terdiri dari 3 cup yang saling dihubungkan oleh lengan

yang ditempelkan pada shaft penggerak. Semua cup menghadap ke satu arah

melingkar sehingga bila angin bertiup maka motor berputar pada arah tetap.

Perputaran sistem cup dihubungkan secara mekanik atau elektronik dengan suatu

alat yang dinamakan generator sinyal, untuk keperluan pencatatan. Gambar 2.3

merupakan gambar anemometer tipe Cup. (Wicaksono, 2016)

Gambar 2. 3 Sensor Anemometer

2.8 Sensor Kelembapan SHT31-D

SHT-31D adalah sensor suhu dan kelembapan digital kelas premium dari vendor

Sensirion. SHT31-D ini telah dilengkapi dengan komunikasi I2C sehingga tidak

memerlukan banyak kabel dan bisa menggunakan banyak sensor dalam satu

mikrokontroler atau pembaca. Sensor ini dapat bekerja pada tengangan 2.4V hingga

5.5V yang artinya sangat sesuai untuk Arduino, NodeMCU hingga ke Raspberry

Pi. Sensor ini juga memiliki ketahanan kelas industri dan punya ketelitian dan

akurasi yang sangat tinggi dan berlaku untuk penggunaan riil setiap digunakan.

Breakout board. Sensor ini juga sangat kecil, tidak lebih dari 1 cm sehingga mudah

ditempatkan dimanapun hingga ke area tersembunyi.

Page 24: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

11

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 2. 4 Sensor SHT31-D

Gambar 2. 5 Diagram Arsitekur SHT31-D

Gambar 2.5 merupakan Diagram fungsi block perangkat keras sensor SHT31-D.

Sinyal sensor kelembapan dan suhu di kalibrasi, linearisasi dan kompensasi oleh

pabrik pembuat yang bergantung dengan suplai voltage yang terhubung dengan

sensor. Sensor akan berjalan dengan kinerja terbaik ketika dioperasikan dalam

kisaran suhu dan kelembaban normal yang disarankan yaitu 5 - 60 ° Derajat Celcius

(C) dan 20 - 80% RH Kelembapan Relatif (RH) untuk masing – masing satuan .

Paparan jangka panjang untuk kondisi di luar kisaran normal, terutama pada

kelembaban tinggi, dapat sementara mengimbangi sinyal RH (mis. + 3% RH setelah

60 jam pada > 80% RH) (Adafruit, 2020)

Page 25: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

12

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

2.9 I2C

I2C merupakan akronim dari Inter Intergreted Circuit. I2C adalah sebuah

komunikasi yang memungkinkan beberapa perangkat (devices) seperti sensor,

Mikrokontroler, RTC (real time clock) dan EEPROM saling terintergrasi satu sama

lain. Komunikasi I2C bersifat synchronous dalam arti kata, komunikasi akan

berakhir jika salah satu perangkat yang berperan sebagai Master atau Slave tidak

aktif. Master adalah istilah untuk yang memiliki hak untuk mengkontrol perangkat

memiliki status sebagai Slave (Hanabusa, 2007). Sementara, Slave merupakan node

yang menerima clock untuk diteruskan menuju Master yang telah dialamatkan, baik

Master Atau Slave dapat menerima data dengan baik pada Komunikasi I2C.

I2C hanya memiliki 2 sinyal yaitu SCL (Serial Clock) dan SDA (Serial Data).

Kedua nya adalah bi-direktoral dan membutuhkan resistor penarik. SCL digunakan

sebagai penunjuk waktu. SDA digunakan untuk alamat perangkat dan data. Jalur

data tidak dapat berubah ketika jalur clock berada dalam kondisi high. I2C

Menggunakan open-drain dan open-collector dengan buffer input pada baris yang

sama dan bisa membuat satu baris data untuk digunakan aliran data dua arah

(Valdez & Becker, 2015)

Gambar 2.6 menunjukkan contoh sistem I2C menggunakan dua perangkat Master

dan Slave. Bus I2C tidak memiliki kemampuan untuk mengenali peran perangkat

melalui sinyal, tetapi dengan cara mengirimkan byte data. Oleh karena itu, setiap

perangkat yang di dukung oleh I2C harus memiliki alamat unik sebelum digunakan

pada Bus I2C. Protokol ini dapat menampung hingga 127 perangkat yang dapat

dihubungkan.

Gambar 2. 6 Mekanisme I2C

Page 26: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

13

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Prosedur umum Master untuk mengakses perangkat Slave adalah sebagai berikut:

1. Master Mengirim data menuju Slave

Master mengirimkan kondisi True boolean dan mendapatkan

alamat Slave

Master mengirimkan data menuju Slave

Master menghentikan proses pengiriman data dengan

mengirimkan kondisi false boolean Slave

2. Slave Mengirim data menuju Master

Master mengirimkan kondisi True boolean dan mendapatkan

alamat Slave

Master mengirimkan request register untuk dibaca oleh slave

Master menerima data dari Slave

Master menghentikan proses pengiriman data dengan

mengirimkan kondisi false boolean Slave

2.10 Python

Python adalah salah satu bahasa pemrograman tingkat tinggi yang bersifat

Interpreter, object-oriented, open source dan fungsional hampir semua platform

sistem operasi seperti Linux, MacOS dan Windows dapat menjalankan Python

sebagai bahasa pemrograman. Salah satu daya tarik dari Python adalah mudah di

pelajari untuk pemula karena tidak memiliki kompleksitas dan aturan ketat syntax

yang tinggi seperti Java, C++, Pascal,C dan C#. (Widodo, 2017)

Python dikembangkan oleh Guido van Rossum Phun 1990-an di CWI, Amsterdam

sebagai kelanjutan dari bahasa pemrograman ABC. Versi terakhir yang dikeluarkan

CWI adalah 1.2. Tahun 1995, Guido pindah ke CNRI sambil terus melanjutkan

pengembangan Python. Versi terakhir yang dikeluarkan adalah 1.6. Tahun 2000,

Guido dan para pengembang inti Python pindah ke BeOpen.com yang merupakan

sebuah perusahaan komersial dan membentuk BeOpen PythonLabs. Python 2.0

dikeluarkan oleh BeOpen. Setelah mengeluarkan Python 2.0, Guido dan beberapa

anggota tim PythonLabs pindah ke DigitalCreations. Saat ini, pengembangan

Python terus dilakukan oleh banyak Komunitas yang di bentuk oleh Guido sendiri

dan Python Software Foundation. Python Software Foundation adalah sebuah

Page 27: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

14

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

organisasi non-profit yang dibentuk sebagai pemegang hak cipta intelektual Python

sejak versi 2.1 untuk mencegah Python dimiliki oleh perusahaan komersial. Saat ini

distribusi Python sudah mencapai versi 2.7.13 dan versi 3.6.0 (Guttag, 2019)

2.11 Telegram

Aplikasi telegram dibuat oleh dua bersaudara, Nikolai dan Pavel Durov. Keduanya

saling berbagi tugas, Nikolai Durov fokus pada pengembangan aplikasi dengan

menciptakan protokol MTProto yang menjadi core sistem bagi telegram. Sementara

Pavel bertanggung jawab dalam hal pendanaan dan infrastruktur melalui pendanaan

Digital Fortress. (Afrizal, 2019)

Telegram memulai debutnya pada 14 Agustus 2013 ke perangkat iOS. Kemudian

ke Android pada tanggal 20 Oktober 2013, yang artinya, telegram baru berumur

kurang lebih tiga tahun. Namun prestasi Telegram tak bisa dibilang buruk, justru

cenderung memukau. Di bulan Oktober 2013 atau di tahun pertamanya, Telegram

sudah mengantongi 100.000 pengguna aktif harian. Angka ini melonjak tajam

menjadi 15 juta pada bulan Maret 2014 atau kurang dari enam bulan kemudian.

Setiap bulannya, pengguna aktif telegram menyentuh angka 35 juta dan terus

meningkat ke angka 50 juta pada bulan Desember 2014. Setahun kemudian,

pengguna aktif telegram menyentuh angka 60 juta per bulan dan merangkak cepat

ke angka 100 juta pada bulan Februari 2016. Peningkatan super cepat ini tak lain

menandakan bahwa pengguna menerima dengan baik apa yang dihadirkan oleh

telegram. (Telegram, 2015)

2.12 Sistem Operasi Rasbian

Raspbian adalah sistem operasi bebas berbasis debian yang dioptimalkan untuk

perangkat keras Raspberry Pi. Sebuah sistem operasi adalah seperangkat program

dasar dan utilitas yang membuat Raspberry Pi bekerja dengan baik. Namun,

Raspbian menyediakan lebih dari sistem operasi murni, dengan lebih dari 35.000

paket, dapat dengan mudah menginstal paket pada Raspberry Pi. Pembangunan

awal dengan lebih dari 35.000 paket Raspbian dioptimalkan untuk kinerja terbaik

Raspberry Pi, selesai pada Juni 2012. Namun, Raspbian masih dalam

pengembangan aktif dengan penekanan pada peningkatan stabilitas dan kinerja

Page 28: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

15

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

supaya dapat menggunakan banyak paket debian sebanyak mungkin. (Harrington,

2015)

2.13 Cloud Computing

Cloud Computing adalah paradigma dimana informasi disimpan secara permanen

di server yang terhubung dan bergantung dengan internet. Cloud Computing

memiliki cara menyimpan data sesaat di komputer pemakai (client) termasuk juga

di dalamnya yaitu desktop, komputer tablet, notebook, smartphone, handheld,

sensor - sensor, monitor dan lain-lain. Oleh sebab itu, teknologi ini dapat menghebat

biaya dalam segi perangkat keras atau Hardware dan Software (Hewitt, 2008)

Cloud Computing adalah suatu konsep umum yang mencakup SaaS, Web 2.0, dan

tren teknologi terbaru lain yang dikenal luas, dengan tema umum berupa

ketergantungan terhadap internet untuk memberikan kebutuhan komputasi

pengguna. Contohnya, Google Apps menyediakan aplikasi bisnis umum secara

daring yang diakses melalui suatu dengan perangkat lunak dan data yang tersimpan

di Server.

Page 29: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

16

BAB III

PERENCANAAN DAN REALISASI ATAU RANCANG BANGUN

3.1 Perancangan Alat

3.1.1 Rangkaian Rancang Bangun Secara Umum

Gambar 3. 1 Rangkaian sistem secara umum

Skema pada gambar 3.1 diatas. Client melakukan request sesuai parameter ke

Server Telegram melalui aplikasi Telegram yang terpasang di masing - masing

platform pada client punya. Protokol jaringan yang digunakan komunikasi antara

Server Telegram dengan client adalah HTTPS melalui Internet, karena protokol

tersebut memiliki kemampuan untuk mengenkripsi pesan yang dikirim oleh client

menuju Server Cloud telegram dan sebaliknya. Sementara itu, data request milik

client tersimpan di cloud milik telegram untuk dikirim ke Raspberry Pi 4 yang

segera dapat di proses.

Raspberry Pi 4 berperan sebagai Local Server yang berfungsi memproses data yang

di dapatkan dari sensor yang terhubung dengan Mikrokontroler untuk memproses

hasil data dari Mikrokontroler menjadi sebuah informasi dan di teruskan ke client

yang sesuai dengan parameter yang ada. Raspberry Pi 4 menggunakan API

telegram yang berfungsi sebagai perantara antara Server Telegram dengan

Raspberry itu sendiri, dimana API telegram memiliki fitur bot yang dapat

melakukan otomasi pengiriman dan penerimaan pesan dari Server Telegram dan

meneruskan nya menjadi sebuah response ke client.

Page 30: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

17

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Arduino Mega berperan sebagai Mikrokontroler yang berfungsi sebagai pembaca

sensor serta mampu untuk mengendalikan sensor - sensor yang terhubung dengan

perangkat ini.

3.1.2 Diagram Rancang Bangun

Gambar 3. 2 Diagram Blok Rancang Bangun

Diagram pada gambar 3.2 memiliki 3 fase yaitu input, proses, dan output. Pada fase

input sensor mengirimkan sinyal analog yang memiliki nilai dari 0-255. Nilai sinyal

analog bergantung dengan kuat arus yang terdapat pada sensor yang di dapatkan

dari hasil pembagian muatan listrik (voltase) dengan hambatan listrik dengan satuan

Ohm. Nilai analog berbanding lurus dengan kuat arus semakin besar nilai analog

semakin tinggi kuat arus yang dimiliki dan nilai analog akan dikirim menuju

mikrokontroler untuk di teruskan di fase proses.

Fase proses merupakan fase mengelolahan nilai dari sensor menjadi sebuah data.

Ketika Arduino Mega pin analog yang terhubung dengan sensor, Arduino

mengubah nilai analog tersebut menjadi tipe data yang berujuan untuk bisa dibaca

oleh perangkat yang berbasis komputer. Pada skripsi ini penulis mengubah sinyal

analog menjadi tipe data float karena, sinyal analog memiliki nilai desimal dan tipe

data float dapat menampung nilai desimal. Arduino mengirim data float ke

raspberry untuk diubah menjadi informasi.

Fase output merupakan tahap akhir, Raspberry mengirimkan data sebagai

paramater untuk diteruskan ke Cloud telegram dan aplikasi client Telegram. HTTP

merupakan protokol yang digunakan sebagai komunikasi antara raspberry dengan

cloud telegram sehingga Raspberry hanya memasukan parameter berupa data

Page 31: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

18

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

sensor menuju cloud telegram menggunakan url yang pihak telegram telah

meyediakan. Dari sisi aplikasi client Telegram cukup dengan memanggil url yang

sudah tersedia dari Telegram untuk melakukan proses pengiriman data.

3.1.3 Proses Fase Input

Pada Proses Fase Input, bahasa pemgroraman C digunakan sebagai bahasa untuk

menulis program pembaca sensor Anemometer dan Kelembapan pada Arduino.

Dibutuhkan koneksi antara Komputer dengan Arduino untuk dapat memasukan

baris kode program ke Arduino dengan kondisi Aktif, jika Arduino tidak aktif dan

koneksi antara komputer terputus, maka proses input nilai sensor tidak akan

berjalan. Oleh sebab itu, pentingnya melakukan pemeriksaan sebelum penulisan

program untuk melihat apakah Arduino sudah menyala dan terhubung dengan

komputer. Komunikasi antara Arduino dengan Raspberry menggunakan kabel

USB.

Lalu, Arduino akan membaca sensor yang tersedia. Sensor - sensor yang terhubung

dengan Arduino apakah tersedia atau tidak. Jika tersedia, maka sensor akan

mengirimkan data bernilai voltase untuk diterima oleh Arduino. Namun, jika sensor

tidak tersedia Arduino akan melakukan permintaan dengan kondisi Arduino itu

sendiri masih dalam mode menyala. Data sensor yang di terima Arduino adalah

voltase, dimana fungsi Arduino tersebut akan mengubah nilai data sensor menjadi

sebuah data yang dapat di proses.

Pada table x merupakan variable yang digunakan untuk disimpan dalam mengambil

data dari sensor untuk di proses ke fase proses terdapat 4 variable yaitu wind untuk

representasi kecepatan udara, degree sebagai representasi suhu, dan humadity

sebagai kelembapan. Semua variabel tersebut bertipe data Float64

Tabel 3. 1 Variabel pada fase Input

NAMA VARIABEL TIPE DATA

WIND (KECEPATAN UDARA) Float 64

HUMADITY Float 64

DEGREE Float 64

Page 32: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

19

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Untuk dapat mempermudah di tahap fase proses setiap endpoint dari data diberi

regular expression (regex) bertipe tanda pagar ‘#’ digunakan sebagai tanda batasan

dari nilai sensor agar dapat mempermudah proses pengolahan data di fase proses

3.1.4 Proses Fase Proses

Pengeolahan data menjadi informasi dilakukan pada fase proses. Tahap ini

dilaksanakan pada Raspberry Pi 4 yang merupakan server lokal yang berfungsi

menampung nilai dari fase input Arduino Mega.protokol komunikasi serial USB

digunakan dalam pertukaran data antara Arduino (fase input) menuju Raspberry Pi

4 (Fase output) yang dimana Arduino akan terhubung dengan port USB milik

Raspberry PI 4 dengan kabel USB.

Bahasa pemrograman Python dengan versi 3.7 digunakan pada fase proses, untuk

membuat komunikasi Serial antara Arduino dengan Raspberry PI 4. Pustaka third

- party python yang digunakan adalah Pyserial versi 1.3.1, dimana pustaka ini,

bertujuan untuk pembuatan komunikasi serial yang dimana PySerial memiliki fitur

dan fungsi yang tidak ada pada Python.

Dalam laporan skripsi ini nama port yang digunakan dalam komunikasi arduino

dan raspberry adalah '/dev/ttyUSB0'. Nama port tersebut adalah nama port standar

milik sistem operasi Linux. Memiliki Threshold baurate sebesar 9600 data yang

dikirim oleh sensor menuju ke Raspberry dilakukan setiap 10 detik sekali. Ketika

data telah dikirim dan diterima oleh Raspberry. Seperti pada proses input pada 3.1.3

terdapat sebuah regex dari data yang dikirimkan. Peran regex sendiri pada fase ini

berfungsi sebagai batasan nilai yang ada.

Raspberry membaca data yang diterima dari fase input sebagai tipe data array.

Namun, raspberry yang merupakan sebuah komputer tidak bisa identifikasi batas

atau celah nilai sensor yang ada. Oleh sebab itu regex digunakan untuk dapat

melakukan parse data yang didapatkan. Seperti contoh pada gambar 3.3 di bawah

ini

Page 33: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

20

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 3. 3 Mekanisme Fase Proses

Pada gambar 3.3 tanda “#” digunakan sebagai pembatas untuk variable nilai dari

sensor. Setiap variable sensor yang ada telah diubah menjadi array berukuran tiga

dan disesuaikan dengan indeks yang ada. penulis membuat sebuah sub sistem untuk

menyimpan data array ke csv untuk dapat di simpan sementara. Setelah data

berhasil diubah menjadi array. Raspberry dapat melakukan pengiriman informasi

menuju telegram cloud yang dilakukan pada fase output.

3.1.5 Proses Fase Output

Proses output masih dilakukan pada raspberry pi 4 target yang dilakukan pada

proses output ini adalah Server lokal mampu berkomunikasi dengan public cloud

milik telegram dan mampu pengirimkan informasi cuaca yang didapatkan dari fase

input.

Penulis menggunakan pustaka python yang dikembangkan oleh pihak komunitas

telegram sendiri yaitu adalah python – telegram - bot. Fungsi pustaka ini sebagai

wrapper dan interface dari keseluruhan yang dimiliki oleh telegram bot API, atau

sebagai penyederhanaan berbagai metode http dan fungsi - fungsi yang terlalu

kompleks.

Page 34: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

21

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 3. 4 Diagram Telegram API

Gambar 3.4 merupakan arsitektur sistem yang digunakan pada fase output rancang

bangun ini. Ketika berkomunikasi dengan cloud telegram terdapat dua metode yang

bisa dilakukan yaitu webook dan http methods.

Method Rest API sudah terdapat di telegram bot API . Namun, pengunaan telegram

bot API ini murni menggunakan request dan response url yang memerlukan

beberapa aturan - aturan yang harus dipenuhi untuk membuat sebuah komunikasi

antara server lokal dengan cloud telegram dan cloud telegram menuju aplikasi

telegram yang terinstall di berbagai platform yang dimiliki oleh client.

Gambar 3. 5 Mekanisme Fase Output

Kelebihan dari telegram cloud adalah dapat mampu menampung banyak pesan

request dengan jumlah banyak dalam waktu bersamaan. Sehingga, server lokal

tidak akan overload atau terpenuhi oleh request yang banyak. Dari segi keamanan

Page 35: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

22

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

data, telegram cloud memiliki protokol tersendiri dalam mengamankan data dari

pengguna mereka, yaitu dengan cara mengacak urutan data yang tersimpan atau

dari pertukaran data dan menjadikannya ukuran yang lebih kecil dari sebelumnya.

Sehingga ketika terjadi aksi perentasan, data yang dicuri tidak utuh

3.1.6 Skema Sensor Kecepatan Udara

Gambar 3. 6 Rangakaian Sensor Anemometer

Sensor anemomter memiliki 3 pin output yaitu VCC, GND dan Digital. Pin VCC

mengeluarkan output 5V dan pin GND bermuatan 0V output. Sifat sensor

anemometer ini adalah sensor berbasis digital yang dimana terdapat pin digital yang

sudah terpasang. Pada gambar 3.6 adalah skema rangakaian sensor anemometer dan

Mikrokontroler. Jalur pin VCC dan GND dihubungkan menuju pin 5V dan GND

pada Arduino. Dibutuhkan hambatan sebesar 10 ribu ohm pada jalur hubung antara

pin digital dengan pin 2 digital milik Arduino dengan resistor yang bernilai tersebut,

untuk memberitahu jika arus yang digunakan oleh pin digital pada sensor

Anemometer selalu terbuka.

Output dari pin digtal beralih rendah ketika medan magnet pada sensor VCC

melebihi ambang titik operasi (BOP). Pada titik ini, tegangan output adalah VOUT

(SAT). Ketika medan magnet dikurangi hingga di bawah ambang titik pelepasan

(BRP), output perangkat menjadi tinggi. Perbedaan dalam operasi magnetik dan

titik rilis disebut histeresis (Bhys) perangkat. Histeresis internal ini memungkinkan

Page 36: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

23

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

pergantian output yang bersih, bahkan dengan adanya getaran mekanis eksternal

dan kebisingan listrik.

Data pengukuran selalu dikirim dengan format 16 bit. Pengukuran sensor memiliki

interval setiap sepuluh detik. Berarti, sensor akan mengirim data menuju arduino

setiap 10 detik pada jalur pin digital dan terhubung dengan daya listrik bermuatan

5V.

Untuk menghitung kecepatan angin pada suatu tempat dibutuhkan nilai RPM untuk

dapat menghitung kecepatan angin. Pertama, diketahui sensor memiliki 18 celah

yang berfungsi sebagai penyaring kecepatan rotasi dari sensor ketika terkena angin

pada suatu tempat yang bernotasi variable s. dan notasi p merupakan nilai dari

periode interval yang memiliki satuan milisecond. Pada gambar 3.7 merupakan

rumus untuk menghitung dari RPM anemometer

𝑛𝑖𝑙𝑎𝑖 𝑅𝑜𝑡𝑎𝑠𝑖 (𝑟𝑝𝑚) =

𝑛𝑠 . 60

𝑝1000

Gambar 3. 7 Rumus RPM I

Variable s memiliki konstanta bernilai 18 yang merupakan jumlah dari banyak

celah pada sensor anemometer. Variable n pada gambar 3.8 merupakan jumlah

periode sensor setiap interval per sepuluh detik semisal n1 adalah 10 detik pertama

pada interval bernilai 1. Kemudian n2 adalah 10 detik kedua pada interval yang

bernilai 2. Dapat dirumuskan untuk mendapatkan nilai setiap interval adalah

𝑛𝑖= 𝑛𝑖−1+1

Gambar 3. 8 Rumus nilai interval

Sebagai contoh ketika untuk mencari nilai n5 diketahui nilai n4 adalah 3 dan berarti

nilai dari n5 adalah 4. Karena sensor anemometer memiliki kondisi loop dapat

dirumuskan nilai RPM pada gambar 3.9

Page 37: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

24

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

𝑛𝑖𝑙𝑎𝑖 𝑅𝑜𝑡𝑎𝑠𝑖 (𝑅𝑃𝑀) = ∑

𝑛𝑠 . 60

𝑝1000𝑛 ≠0

Gambar 3. 9 Rumus Total RPM

Gambar 3.9 Rumus RPM I. Pada gambar 3.9 nilai RPM di dapatkan dari periode n

terbaru dan dimasukan kedalam variable untuk menghitung nilai kecepatan udara.

Untuk menghitung kecepatan udara, asumsikan nilai RPM sudah didapatkan. Lalu,

pada gambar 3.10 adalah rumus untuk menghitung kecepatan angin per detik yang

dimana pi bernilai 3,14 dan r adalah panjang celah cakram sensor dengan luar cup

atau bias disebut r adalah jari - jari dari lingkaran. rpm merupakan variable untuk

kecepatan rotasi dari cakram sensor.

𝑛𝑖𝑙𝑎𝑖 𝐾𝑒𝑐𝑒𝑝𝑎𝑡𝑎𝑛 𝐴𝑛𝑔𝑖𝑛 (𝑤𝑖𝑛𝑑) =

2 ∗ 𝑝𝑖 ∗ 𝑟 ∗ 𝑟𝑝𝑚60

1000

Gambar 3. 10 Rumus Kecepatan Angin

Page 38: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

25

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

3.1.7 Skema Sensor Kelembapan

Gambar 3. 11 Rangkaian Sensor SHT31-D

Gambar 3.11 adalah rangkaian khusus untuk sensor SHT31-D yang berperan

sebagai sensor kelembapan. Terdapat 4 pin pada sensor yaitu VCC, GND, SCL dan

SDA. Pin VCC adalah pin voltage milik SHT31-D yang memiliki output 5V dan

pin GND merupakan pin yang memiliki output 0V, sementara itu pin SCL dan SDA

adalah pin berbasis digital yang berfitur komunikasi I2C berfungsi sebagai

transmiter sinyal bermuatan nilai kelembapan dari sensor.

Arduino Mega memiliki aturan pin SCL dan SDA, berbeda dengan versi arduino

lainnya seperti Uno, Nano dan Leonardo. Pin 20 dan 21 berstandar sebagai pin

digital pada arduino mega. Namun, fungsi dari kedua pin tersebut sebagai pin

spesial untuk SCL yang berpasangan dengan pin 21 dan SDA dengan pin 20, yang

sesuai dengan sifat pin SCL dan SDA milik SHT31-D. SCL dan SDA masing -

Page 39: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

26

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

masing terhubung dengan resistor 10k ohm dimana terhubung dengan pin 21 dan

20 arduino mega. Pin VCC dan GND terhubung dengan pin 5V dan GND yang

terdapat jelas pada arduino mega.

Data pengukuran selalu dikirim dengan format 16-bit. Nilai - nilai yang di dapatkan

dari sensor sudah linear dan terkompensasi sesuai dengan temperatur tegangan yang

terhubung antara sensor dan arduino. Untuk mengubah nilai - nilai sensor yang

bersifat mentah menjadi nilai memiliki skala. Ada beberapa rumus yang di perlukan

untuk melakukan kalkulasi nilai seperti pada gambar 3.12 yang digunakan untuk

menghitung nilai kelembapan.

𝑛𝑖𝑙𝑎𝑖 𝑘𝑒𝑙𝑒𝑚𝑏𝑎𝑝𝑎𝑛 (𝑅𝐻) = 100 .𝑆𝑛

216 − 1

Gambar 3. 12 Rumus Nilai Kelembapan

Dimana Sn merupakan nilai output yang dikeluar oleh sensor yang yang memiliki

bersifat desimal. Untuk mengukur suhu udara Celsius dan Kelvin dapat

menggunakan rumus pada gambar 3.13

𝑛𝑖𝑙𝑎𝑖 𝑆𝑢ℎ𝑢 (𝑐𝑒𝑙𝑠𝑖𝑢𝑠) = −45 + 175 .𝑆𝑛

216 − 1

𝑛𝑖𝑙𝑎𝑖 𝑆𝑢ℎ𝑢 (𝑘𝑒𝑙𝑣𝑖𝑛) = −49 + 315 .𝑆𝑛

216 − 1

Gambar 3. 13 Rumus Nilai Celcius & Kelvin

Pada laporan skripsi ini akan mengambil data nilai kelembapan dan suhu dengan

metrik Celsius untuk dapat disajikan informasi pada aplikasi Telegram. Pada aturan

yang dimiliki oleh Sensor. Sensor akan mengirim nilai suhu dan diikuti oleh nilai

kelembapan. Setelah sensor selesai melakukan proses pengukuran. Mikrokontroler

akan mendapatkan nilai dari hasil pengukuran yang sudah dilakukan sebelumnya.

Jika sensor berhenti atau mati maka Mikrokontroler akan mendapatkan nilai dari 2

byte terakhir dari sensor

Page 40: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

27

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 3. 14 Rangkaian Parsial Rancang Bangun

Pada gambar 3.14 adalah contoh rangakaian parsial berbasis Breadboard sensor

yang terhubung dengan arduino secara langsung, dan menggunakan kabel jumper

sebagai interface antara pin SHT31-D dengan arduino.

3.2 Realisasi Alat/Program

3.2.1 Konfigurasi Raspberry Pi 4

Sebelum melakukan rancang bangun sistem. Hal pertama yang dilakukan adalah

melakukan konfigurasi pada Raspberry Pi 4 sebagai core server. Karena, setiap

aktivitas mulai dari pertukaran data, pengolahan data dan pengambilan keputusan

sistem di lakukan di Raspberry Pi 4 bukan di Server Telegram atau Arduino itu

sendiri.

Berikut adalah persyaratan yang dibutuhkan sebelum melakukan konfigurasi dan

instalasi pada Raspberry Pi 4 dan juga digunakan penulis:

1x buah MicroSD 64 GB

1x buah Power Supply Charger Raspberry Pi 4

1x Raspberry Pi 4

Sepasang Mouse dan Keyboard

1x Monitor

Koneksi Internet

Page 41: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

28

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

3.3.2 Instalasi Sistem Operasi Raspbian

Cara instalasi tidak sama dengan cara instalasi sistem operasi pada umumnya,

seperti di pc atau laptop. Karena, Storage yang digunakan pada Raspberry adalah

berupa SD Card. SD Card yang disarankan adalah SD Card class sepuluj yang

memiliki kecepatan menulis minimal 10 Mb/s dan minimal ukuran 8 GB. Untuk

menhindari sebuah crash, corrupt, dan error ketika tahap instalasi.

Kunjungi situs resmi https://www.raspberrypi.org/downloads/raspbian/ untuk

mengunduh file Sistem Operasi Raspberry Pi 4. Pada laporan skripsi ini,

menggunakan OS Rasbian versi Kernel 4.19. Kapasitas folder yang akan di unduh

berukuran sebesar 2 GB dan berformat zip yang jika di extract berukuran 7 GB dan

terdapat opsi metode unduh yaitu Torrent atau Zip. Pada laporan skripsi memberi

rekomendasi untuk melakukan download melalui Torrent dengan justifikasi

kemudahan dalam proses unduh. Dimana ketika Komputer tidak terkoneksi internet

sistem torrent akan melakukan pause hingga terdapat koneksi internet di komputer

yang melakukan download. Jadi, penggunaan torrent untuk mengunduh tidak akan

gagal ketika komputer tidak mendapatkan jaringan internet. Pada gambar 3.2

merupakan screenshoot halaman website.

Gambar 3. 15 Website Instalasi OS Raspbian

Pada gambar 3.15 nomor (1) adalah link situs resmi untuk mengunduh OS. Untuk

laporan skripsi ini penulis menggunakan media torrent untuk unduh. Klik tombol

Page 42: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

29

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

download torrent nomor (3) untuk melakukan proses unduh. Proses download

tergantung dengan koneksi internet masing - masing Komputer. Pada laporan

skripsi ini memakan waktu 1 jam 30 menit dalam tahap instalasi.

Setelah, proses unduh selesai maka langkah selanjutnya melakukan mount/burn ke

MicroSD yang sudah disiapkan sebelumnya. Banyak cara dan aplikasi/program

yang disediakan di dunia maya. Penulis menggunakan aplikasi balenaEtcher untuk

melakukan burn ke MicroSD. Balena sendiri memiliki fitur otomatis format

MicroSD menjadi FAT32 yang dan mampu dibaca oleh Sistem Operasi rasbian

yang berbasis Linux dan Open Source tanpa lisensi. Pada gambar 3.16 adalah

langkah yang dijelaskan untuk melakukan mount ke MicroSD untuk melakukan

instalasi.

Gambar 3. 16 Instalasi OS ke SD Card

Tahap pertama, dijelaskan gambar 3.16 poin (1) untuk memilih folder direktori

dimana letak Raspbian OS yang telah di download. Poin (2) memilih MicroSD yang

terhubung dengan komputer yang terkoneksi dengan adapter MicroSD klik tombol

“Select Target” untuk melakukan proses mount. Proses mount berhasil dan sukses

ketika tombol “flash!” berubah menjadi warna biru yang pada poin (3). Dari hasil

skripsi ini mendapatkan hasil proses mount yang cukup lama yaitu 3 jam

dikarenakan tidak menggunakan adapter MicroSD eksternal. Dan dapat berpotensi

merusak MicroSD pada saat proses mount.

Page 43: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

30

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Aktifkan Raspberry Pi 4 dengan menghubungkan power supply, monitor dan

keyboard untuk melakukan pra konfigurasi. Selanjutnya, masukkan MicroSD yang

telah diunduh ke Raspberry, dan tunggu hingga proses bootup selesai. Gambar 3.17

adalah hasil dari instalasi yang sukses milik penulis dalam laporan skripsi ini.

Gambar 3. 17 Tampilan Dekstop Raspbian

3.2.3 Konfigurasi IP Statis

Dibutuhkan IP (Internet Protocol) statis untuk melakukan koneksi ke Raspbian

melalui jaringan Local Area Network (LAN). Alasan penulis tidak menggunakan

IP dinamis karena, dalam proses remote access akan terjadi kesulitan pada sistem

client untuk mendapatkan IP yang jelas pada raspberry PI 4 maka penggunaan IP

statis ini menjadi sebuah solusi dalam proses rancang bangun sistem pengukur

cuaca.

Pada gambar 3.18 masuk ke command line milik Raspbian lalu mengetik “sudo vi

dhcpd.conf” untuk mengakses file dhcpd, lalu tekan enter pada keyboard untuk

eksekusi perintah. Perintah tersebut berfungsi untuk masuk ke file konfigurasi IP

statis.

Page 44: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

31

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 3. 18 Perintah akses file IP

Selanjutnya, terdapat file kosong, secara default Raspberry memiliki mode dhcp.

Pada laporan Skripsi ini menggunakan mode statis. Tuliskan command untuk

mengubah mode adapter wireless mejadi statis seperti ganbar 3.19

Gambar 3. 19 Tampilan Konfigurasi Wireless Statis

Gambar 3.6 baris pertama yaitu “interface wlan0” yang dimaksud yaitu adalah

nama interface adapter wifi yang ada di Raspberry Pi 4. Pada baris ke-2 yaitu “static

ip_address = 192.168.1.87/24” merupakan nomor ip statis yang beri dan memiliki

subnet mask 255.255.255.0 atau /24 baris ke-3 tertulis“static

Page 45: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

32

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

routers=192.168.1.1”adalah default gateway nomor ip yang terhubung pada

Raspberry ke router LAN dan baris ke-4”static domain_name_servers=192.168.1.1

8.8.8.8 8.8.4.4” adalah nomor DNS (Domain Name Server). Alternatif lain , nomor

IP Google di masukan setelah nomor DNS yaitu “8.8.8.8” dan “8.8.4.4” sebagai

akses konektifitas atau parameter untuk mengetahui Raspberry terhubung dengan

situs Google yang membutuhkan koneksi internet.

Setelah menulis konfigurasi di file dhcpd dibutuhkan proses restart pada Raspberry

yang berfungsi untuk memberitahu ke Sistem bahwa ada sebuah file Registry yang

diubah pada kernel sistem itu sendiri.

3.2.4 Konfigurasi Remote Access SSH

Ada banyak metode untuk mengunakan dan mengakses Raspberry, mulai dari

menggunakannya langsung dengan memasang keyboard, mouse dan monitor ke

Raspberry itu sendiri, untuk mampu digunakan sebagai Personal Computer (PC)

pada umumnya. Hingga menggunakan metode Protokol komunikasi data seperti

SSH dan remote access desktop (RDP) menggunakan VNC Server.

Namun, metode dengan menggunakan Raspberry Pi 4 seperti layaknya komputer

yang digunakan sehari - hari dengan menghubungkan keyboard, mouse dan monitor

untuk melakukan penulisan baris kode program untuk rancang bangun sistem

pengukur cuaca adalah sebuah cara yang tidak efektif.

Pertama, sistem pengukur cuaca membutuhkan sebuah server bersifat portable

yang dapat dipasang, dipindahkan dan diletakan dengan mudah sesuai dengan

kebutuhan. Rasberry adalah pilihan yang dibutuhkan untuk merancang sebuah

Server sistem pengukur cuaca. Jika memasang sebuah perangkat keras eksternal

seperti Mouse, Keyboard dan Monitor pada server Pengukur Cuaca dapat memakan

daya komsumsi yang besar pada Raspberry.

Kedua, Efektifitas dan Ketersedian yang dapat di akses oleh penulis dalam

perancangan Sistem ini dari mana saja tanpa perlu untuk datang langsung ke Server

Sistem Pengukur Cuaca untuk melakukan penulisan program dan testing. Oleh

sebab itu, pada laporan skripsi ini Penulis Metode SSH dan VNC Server sebagai

akses ke Raspberry Pi 4.

Page 46: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

33

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Sebelum nya, dalam melakukan Konfigurasi IP Statis yang dibahas di Point 3.3.3

pada laporan ini. melakukan akses Raspberry Pi 4 dengan perangkat keras eksternal

yang biasa digunakan untuk komputer. Pada Terminal Rasbian ketik perintah “sudo

rasbian-config ” seperti gambar 3.6 untuk mengakses Settings lebih lanjut pada

Sistem Operasi Raspberry. Tekan Enter untuk masuk ke Mode Settings.

Gambar 3. 20 Perintah Konfigurasi Menu Raspbian

Gambar 3.21 Menunjukan Menu Tools Konfigurasi Raspberry Pi 4 Berbasis

Command Line pilih opsi nomor 5 yaitu “interfacing options” untuk melakukan

konfigurasi SSH dan tekan enter. Selain itu banyak Settings yang bisa di gunakan

pada menu tools ini seperti melakukan setting layar Raspberry dan lain lain

Gambar 3. 21 Tampilan Menu Options

Page 47: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

34

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 3. 22 Konfirmasi SSH

Kemudian, terdapat banyak opsi yang di tampilkan. Pilih opsi “P2” untuk

menghidupkan port SSH pada Raspberry Pi 4 dengan menekan tombol enter pada

Keyboard dan akan muncul pilihan “yes”dan “no”. Pilih Yes untuk membuka port

SSH seperti gambar 3.22

Untuk melihat apakah port SSH terbuka bisa dengan mengetik perintah seperti pada

gambar 3.23 dan terdapat banyak port yang terbuka. Gambar 3.24 dijelaskan bahwa

ada beberapa port TCP yang telah dibuka dari hasil konfigurasi sebelumnya.

Gambar 3. 23 Perintah Cek Port

Page 48: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

35

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 3. 24 Daftar Port Aktif

Untuk dapat mengakses Raspberry dari SSH bisa menggunakan aplikasi third -

party yaitu PuTTY yang bisa di unduh pada “www.putty.org /downloads” gambar

3.25 adalah bentuk konfigurasi untuk mengakses Raspberry dengan PuTTY.

Gambar 3. 25 Tampilan Interface PuTTY

Tekan tombol “Open” untuk mengakses Raspberry. Gambar 3.26 adalah dimana

PuTTY berhasil masuk ke port SSH milik Raspberry dan meminta akses seperti

username dan password. Pada laporan skripsi ini username dan password

Raspberry adalah “pi” dan “Raspberry” untuk dapat mudah diingat pada saat

melakukan pengembangan sistem rancang bangun ini, ketika username dan

password sudah dimasukkan dan benar. Gambar 3.26 merupakan interface

command milik Raspberry yang diakses melalui port SSH.

Page 49: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

36

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 3. 26 Tampilan CLI SSH PuTTY

3.3.5 Konfigurasi Remote Access VNC Server

Salah satu cara mengakses GUI pada Raspberry dengan komunikasi RDP via VNC

Server. Selama dan sepanjang melakukan akses ke Raspberry Pi 4 menggunakan

metode ini untuk melakukan penulisan program. Langkah awal yaitu mengetikan

perintah “sudo apt-get install tightvncserver && sudo apt-get install xrdp” untuk

melakukan instalasi paket tight vnc server sebagai interface komunikasi antara

Raspberry dengan remote client dan instalasi xrdp untuk menambahkan paket

protokol remote desktop protokol pada Raspberry pi 4, seperti gambar 3.27

Gambar 3. 27 Perintah Instalasi RDP

Memakan waktu 10 menit untuk melakukan instalasi paket pada Raspberry pi 4.

Setelah instalasi selesai, bisa mengakses secara remote menggunakan aplikasi

native milih windows 10 bernama remote dekstop connection seperti pada gambar

3.28 sebagai contoh dimana username dan password sama dengan milik SSH, dan

gambar 3.29 menunjukkan ketika berhasil akan masuk kedalam GUI milik

Raspberry Pi 4

Page 50: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

37

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 3. 28 Tampilan Remote Dekstop

Gambar 3. 29 Tampilan Dekstop Raspbian Via VNC

3.2.6 Perbandingan Remote Access

Tabel 3. 2 Perbandingan Remote Access

SSH VNC SERVER

Hemat Bandwidth Boros Bandwidth

Memiliki engkripsi

komunikasi

Tidak memiliki engkripsi

komunikasi

Berbasis text Berbasis interface

Kedua metode memiliki fungsi yang berbeda. Jadi, dapat menyesuaikan kebutuhan.

Penulis menggunakan VNC melakukan sebuah penulisan program untuk

Page 51: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

38

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

mikrokontroler arduino dan menggunakan SSH ketika melakukan konfigurasi

secara teknis pada Raspberry atau testing saat mencoba program yang telah

dirancang.

3.2.7 Instalasi Arduino IDE

Dibutuhkan sebuah integrated development environment (IDE) arduino untuk

mengembangkan sebuah program atau aplikasi pada proses realisasi rancang

bangun sistem pengukur cuaca. Pihak arduino sendiri memiliki IDE yang dapat di

unduh secara gratis di situs resmi mereka. IDE mereka kembangkan kaya dengan

fitur - fitur untuk seperti contoh script sensor - sensor analog maupun digital dan

berbagai macam protokol untuk komunikasi antara arduino dengan IDE yang

terinstal pada perangkat

Sebelum melakukan download pada situs resmi Arduino “www.arduino.cc

/en/Main/Software”. Disarankan untuk melihat versi bits sistem operasi yang

dimiliki oleh Raspberry Pi 4. Pada gambar gengan menuliskan perintah “sudo lshw”

untuk menampilkan spesifikasi pada sistem operasi yang berjalan pada Raspberry

Pi 4

Gambar 3. 30 Perintah Menampilkan Spesifikasi

Diketahui seperti yang ada di gambar pada tulisan “width : 32 bits”yang di highlight

warna kuning Raspberry memiliki panjang memori 32 bits processor. Dari

informasi yang ditampilkan dari perintah “lshw” dapat digunakan sebagai

parameter untuk mengunduh versi arduino IDE sesuai dengan panjang bits

processor yang ada. Berikut, kunjungi situs resmi untuk mengunduh IDE sesuai

dengan bits yang diketahui sebelumnya. Gambar 3.31 adalah situs resmi milik

Arduino.

Page 52: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

39

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 3. 31 Website Arduino IDE

Penulis memilih versi linux ARM (32 bits) seperti pada kotak warna hitam gambar,

proses selanjutnya ke tahap unduh yang berdasarkan dengan kecapatan internet

pada perangkat Raspberry. Pada laporan ini proses unduh memakan waktu 20

menit. Setelah proses unduh sukses, format file yang terunduh adalah “tar” yang

dimana harus melalui proses extract.

Ketik perintah “cd Documents” untuk masuk ke direktori dokumen. Dikarenakan

proses extract dan disimpan di folder Documents. Menggunakan perintah command

“cd” berfungsi untuk pindah direktori ke direktori yang dituju. Setelah itu, perintah

“cd [nama direktori arduino IDE]” untuk mengakses folder arduino yang telah di

proses extract sebelumnya, seperti gambar.

Gambar 3. 32 Perintah pindah direktori

1 2

Page 53: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

40

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Pada poin (1) merupakan perintah untuk menuju direktori Documents dan Poin (2)

perintah menuju direktori folder arduino dengan nama versi Arduino IDE yang di

unduh . Saat itu, sistem operasi sedang ada di direktori Arduino IDE untuk

melakukan instalasi “sudo ./install.sh” diperlukan sebagai perintah untuk

mejalankan script bash yang berfungsi untuk melakukan instalasi Arduino IDE.

3.3.8 Mekanisme Keamanan Telegram

Pihak pengembang Telegram memiliki protokol keamanan khusus dalam

komunikasi dan pertukaran data antara client dengan cloud milik telegram yang

disebut MTProto. MTProto di rancang untuk mengamankan akses aplikasi menuju

Server API.

Sebelum sebuah pesan dari client dikirim melalui jaringan menggunakan protokol

Transport menuju server cloud. Hal pertama yang dilakukan adalah melakukan

enkripsi dengan menngunakan identifikasi kunci berbasis 64-bit untuk otentifikasi

pengiriman menuju Server dan 128 bit untuk bagian isi pesan.

Kunci otentifikasi dikombinasikan dengan kunci milik pesan. Hasil dari kombinasi

digunakan sebagai kunci untuk melakukan enkripsi pesan menggunakan algoritma

AES-256 yang berbasis 256 bit. Gambar 3.33 merupakan mekanisme protokol

MTProto.

Gambar 3. 33 Alur Mekanisme Keamanan Chat

Page 54: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

41

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

3.3.9 Mekanisme Tampilan Bot Telegram

Tampilan Bot Telegram merupakan bagian dari akhir pada proses Output. Pada

laporan Skripsi ini, Penulis memberi nama bot Telegram tersebut bernama

“Innako”. Innako adalah bot Telegram yang memberikan informasi cuaca secara

real-time sekitar PNJ, langsung dari Sensor Kelembapan,Suhu dan Kecepatan

Udara. Innako akan Tersedia ketika Raspberry Pi 4 aktif dalam menjalankan

program yang telah di implementasikan menggunakan Python dan Telegram API.

Pada tabel 3.3 merupakan daftar fungsi program yang tersedia pada saat program

untuk Bot Telegram dijalankan.

Tabel 3. 3 Daftar Fungsi Program

No Nama Fungsi Peran Fungsi

1 Start() Menjalankan/Menambah

Bot Telegram ke Kontak

Client

2 Cuaca() Membuka Komunikasi

Port Serial antara Server

dan Mikrokontroler dan

Mengirimkan data

menuju Cloud untuk

ditampilkan di Chat

Pengguna saat Request

terjadi

3 About() Menampilkan Informasi

Pembuat Bot Telegram

4 Main() Berperan untuk

menjalankan program

utama yang termasuk

fungsi no. 1,2 dan 3 pada

Sistem

Page 55: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

42

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Pada saat Client membuka Link Bot Telegram yang beralamat url

“http://t.me/Skripsi_pnj_bot”. Client akan diarahkan menuju interface chat yang

menampilkan menu pembuka, sebelum bot ditambah atau dijalankan Seperti pada

gambar 3.34. Client akan diberi petunjuk sebelum pengunaan bot ini.

Gambar 3. 34 Tampilan Interface Telegram Bot

Gambar 3.34 merupakan tampilan awal ketika pengguna/client ingin berinteraksi

dengan Innako. Pada awal tampilan, bot akan menampilkan keyword untuk yang

dapat di input oleh pengguna pada aplikasi. keyword “/start” berfungsi untuk

mengetahui jika bot telah dijalankan, Dengan menjalankan fungsi start() yang telah

dibuat, dan mengirimkan callback pesan ke pengguna. keyword “/cuaca” berfungsi

untuk melakukan request pada Server lokal melalui gateway Cloud Telegram untuk

melakukan permintaan informasi cuaca. Terakhir, keyword “/about” menampilkan

callback sebuah pesan dibalik pembuat bot ini seperti pada gambar 3.35

3.3.10 Pembuatan Modul Lembar Kerja/Panduan

Untuk Menunjang Aktifitas Perkuliahan Mahasiswa. Pada Laporan Skripsi ini

dibuat sebuah modul lembar kerja dan panduan atau Tutorial dalam menjalankan

Page 56: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

43

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

alat rancang bangun untuk digunakan oleh mahasiswa jurusan TIK . Lembar kerja

dan Panduan bisa diakses pada alamat url “www.innako.xyz” oleh mahasiswa.

Halaman website tersebut menampilkan konten berformat pdf yang dapat di unduh

untuk pedoman dalam mempelajari modul rancang bangun pada skripsi ini.

Tampilan website untuk akses modul lembar kerja seperti gambar 3.35 dan terdapat

sumber atau link tutorial yang mempermudah dalam menunjang pembelajaran

mahasiswa.

Gambar 3. 35 Tampilan Web Lembar Kerja

Page 57: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

44

BAB IV

PEMBAHASAN

4.1 Pengujian

Pengujian merupakan tahapan terpenting dalam membuat suatu rancang

bangun, karena dengan adanya suatu pengujian. Dapat diketahui kinerja dari

suatu alat yang dibuat, apakah dapat beroperasi secara fungsional dan sesuai

sesuai dengan apa yang di targetkan, serta dari hasil pengujian dapat diketahui

kelebihan dan kekurangan dari suatu alat tersebut.

4.2 Deskripsi Pengujian

Pada penelitian ini menggunakan metode pengujian Black Box Testing. Alat

yang akan diujikan dibuat terlebih dahulu didesain dan diprogram sesuai dengan

dasar teori dari studi literatur, saran dari dosen pembimbing berdasarkan

pengalaman dan knowldge. Desain rancang bangun pada penelitian ini dibuat

sederhana mungkin tanpa mempengaruhi secara fungsional pada alat itu sendiri.

Terdapat 3 bagian pengujian yaitu bagian fase tahap Input, Process dan Output.

Pengujian fase tahap input bertujuan untuk mengetahui apakah arduino mega

berhasil mendapatkan data dari sensor kecepatan angin dan kelembapan yang

terhubung langsung dan mengetahui hasil akhir yang dikeluarkan sebelum

dikirim ke Server Raspberry sesuai dengan harapan.

Pengujian fase tahap process bertujuan mengetahui kinerja apakah sesuai

dengan ekspetasi dan pengunaan dari program yang ditulis dengan Python dan

pustaka yang bersangkutan.

Pengujian fase tahap output bertujuan mengetahui kinerja, kecepatan antara

komunikasi server lokal Raspberry dengan aplikasi telegram client melalui

perantara cloud, dan melakukan uji koneksi area jaringan apakah sistem dapat

berjalan atau tidak jika diimplementasikan berbagai variasi wilayah jaringan

komputer dari seluruh pengujian akan menghasilkan data yang akan di analisa

untuk laporan penelitian skripsi ini.

Page 58: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

45

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

4.3 Prosedur Pengujian

Gambar 4. 1 Flowchart Pengujian

Flowchart pada gambar 4.1 merupakan tahap dari prosedur pengujian

rancang bangun pada penelitian ini. Pengujian dilakukan selama satu

minggu mulai dari tanggal 1 Juni 2020 hingga 7 Juni 2020 di kampus PNJ.

Dikarenakan wabah Covid-19 dan aturan protokol kesehatan dari

pemerintah Indonesia. Pengambilan sampel data dan pengujian baru bisa

dilakukan di awal bulan Juni 2020.

Langkah pertama dilakukan saat pengujian alat adalah menghidupkan alat

sesuai dengan Standar Operasi Prosedur (SOP) yang sudah ada. Lalu, ketika

alat sudah dihidupkan, selanjutmya menjalankan Sistem yang sudah ditulis

dan disimpan sebagai program pada pada Raspberry PI 4 jika saat sistem

berjalan secara fungsional dan tidak ada error. Sistem akan menghasilkan

data yang dari hasil pengamatan sensor. Jika tidak, dibutuhkan evaluasi

sistem dengan cara metode Trial and Error jika terjadi masalah.

Page 59: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

46

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Data yang didapatkan akan dianalisa mulai dari di visualisasikan menjadi

char grafik, melihat regresi korelasi variable antara sensor - sensor dan

membandingkan data dengan layanan dari Google Weather.

Tabel 4. 1 Rencana Pengujian

No item uji butir uji

1 Fase input Pengecekan Ketersediaan Sensor SHT31-D

Pengecekan Ketersediaan Sensor Anemomter

Pengecekan Data Suhu dalam Celcius

Pengecekan data Kelembapan dalam bentuk

Presentase

Pengecekan Waktu Delay saat pengiriman data

dari sensor menuju Arduino

Pengecekan regex yang pada output lines

2 Fase Process Pengecekan Komunikasi Serial antara

Arduino Dengan Raspberry

Pengecekan konversi baris regex menjadi

array

pengecekan setiap index variabel array

3 Fase Output Pengecekan perintah keyword"/start"

Pengecekan perintah keyword"/cuaca"

Pengecekan perintah keyword"/about"

pengecekan integritas data yang dikirim

menuju client sesuai dengan data fase

sebelumnya

4.4 Data Hasil Pengujian

1. Hasil Pengamatan Suhu Udara (SHT 31-D)

Pengamatan suhu ini dilakukan ditempat terbuka. Tepatnya, didaerah dekat

perpustakaan baru PNJ dan bengkel praktikum Teknik Sipil dari grafik di

gambar 4.2 adalah hasil data rata - rata suhu per hari yang diujikan selama

satu minggu penuh. Dapat dilihat grafik tidak konstan suhu tertinggi terjadi

Page 60: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

47

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

pada tanggal 4 juni dimana suhu mencapai 31 derajat Celcius dan suhu

terendah terjadi pada tanggal 5 Juni. Hal ini disebabkan oleh berbagai hal

salah satunya adalah posisi penempatan dan sensor yang membaca nilai

suhu sesuai dengan tempat dan kondisi yang terjadi seperti di hutan,

pemukiman warga, ruangan atau daerah dataran tinggi. Sehingga sensor

mendapatkan nilai suhu sesuai dengan kondisi tempat pada saat itu.

Gambar 4. 2 Grafik Sensor SHT31-D (Suhu)

2. Hasil Pengamatan Kelembapan Udara (SHT 31-D)

Pengamatan kelembapan ini dilakukan ditempat terbuka. Tepatnya,

didekat perpustakaan baru PNJ dan bengkel praktikum Teknik Sipil dari

grafik di gambar 4.3 adalah hasil data rata - rata kelembapan per hari

yang diujikan selama satu minggu penuh dalam bentuk persen. Karena

sensor SHT-31D memiliki 2 fungsi yaitu mengukur suhu dan

kelembapan udara. Posisi sensor juga bisa mempengaruhi pengukuran

data kelembapan. Faktor yang menyebabkan terjadinya perubahaan

kelembapan adalah lamanya sinar matahari, sudut terbitnya matahari,

banyak sedikit nya awan saat itu dan pengaruh tanah maupun air,

semakin banyak jumlah uap air yang di udara maka kelembapan akan

semakin tinggi. Jika dilihat dari gambar 4.3 kelembapan tertinggi terjadi

pada tanggal 3 Juni 2020 dan terendah pada tanggal 2 Juni 2020.

Page 61: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

48

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 4. 3 Grafik Sensor SHT31-D(Kelembapan)

3. Hasil Pengamatan Kecepatan Angin/Udara (Anemometer)

Pengamatan hasil kecepatan angin dilakukan dibelakang Gedung AA

PNJ. Dapat dilihat pada gambar 4.4 bahwa data mengalami penurunan

di hari ke 7 dan tidak memiliki nilai stabil di setiap harinya. Faktor yang

menyebabkan kecepatan angin meningkat adalah ketinggian tempat,

panjang siang malam, letak lintang. Angin akan bertiup kencang pada

daerah yang memiliki relief permukaan yang rata dan tanpa hambatan.

Karena, adanya pengambilan data kecepatan angin dilakukan dekat

dengan bangunan. Data yang dihasilkan kurang maksimal dan

kemampuan sensor yang tidak memiliki akurasi yang baik disebabkan

kualitas sensor anemometer.

Page 62: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

49

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 4. 4 Grafik Sensor Anemometer (Kecepatan Udara)

4. Hasil Pengamatan Fase Input (Arduino Mega)

Gambar 4. 5 Hasil Pengujian Fase Input

Pengujian fase input dilakukan menggunakan aplikasi serial monitor

milik arduino IDE. Dari data hasil pengujian pada gambar 4.5 bahwa

program berjalan sesuai dengan harapan yang dimana memiliki regex

tanda pagar disetiap sensor. Waktu delay antara sensor dan

Page 63: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

50

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

mikrokontroler selama 10 detik dan seluruh data yang ada di

mikrokontroler memiliki tipe data string. Namun secara prinsip dan

fungsional fase input sudah sesuai harapan dan memenuhi syarat untuk

melakukan fase proses pada raspberry pi 4

5. Hasil Pengamatan Fase Process (Raspberry PI 4)

Gambar 4. 6 Hasil Pengujian Fase Proses

Pengujian fase tahap proses dilakukan di raspberry pi 4 dengan command

line interface dan program eksekusi Python. Pada gambar 4.6 hasil data

processing dikatakan berhasil dengan mengubah sebuah line string dari

proses input menjadi array pada program python dimana menggunakan

delimeter tanda pagar ‘#’. Dapat dilihat Arduino menggunakan 6 % memori

dinamis untuk mengirim data menuju Raspberry pi 4 untuk melalui

Page 64: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

51

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

komunikasi serial. Waktu delay komunikasi serial antara raspberry dengan

arduino selama 1 detik. Oleh karena itu, sensor membutuhkan waktu

sebanyak kurang lebih 11 detik untuk sampai dan diterima oleh lokal server

Raspberry Pi 4.

6. Hasil Pengamatan Fase Output (Telegram bot)

Gambar 4. 7 Hasil Pengujian Fase Output

Pengujian aplikasi telegram dilakukan menggunakan smartphone berbasis

android milik penulis. dari gambar 4.7 bot berhasil mengirimkan informasi

cuaca secara realtime dengan sesuai keadaan kondisi yang di terjadi di PNJ.

Tidak ada masalah delay yang lama antara komunikasi aplikasi client

dengan bot Telegram yang berbasis Teknologi cloud.

Page 65: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

52

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

7. Hasil Pengujian Black box Testing Fase Input

Tabel dibawah ini menunjukan hasil pengujian pada fase input

menggunakan metode pengujian black box. Pengujian dilakukan untuk

melihat, jika fase input berfungsi secara baik dan benar. Jika, pada

kolom Hasil yang didapatkan menunjukan hasil sebaliknya. Dapat

diidentifikasi bahwa skenario pengujian terdapat masalah.

Tabel 4. 2 Pengujian fase input

Deskripsi

Skenario

Pengujian

Hasil yang

diharapkan Hasil yang didapatkan Kesimpulan

Pin SHT31-D

Terhubung

dengan Arduino

Sensor SHT31-D

Terhubung

Arduino

mengeluarkan pesan

serial bahwa Sensor

SHT31-D Terhubung

Valid

Pin Anemomter

Terhubung

dengan Arduino

Sensor Anemometer

Terhubung

Arduino

mengeluarkan pesan

serial bahwa Sensor

Anemometer

Terhubung

Valid

Pengecekan

Nilai Suhu

Output nilai dari

sensor dalam celcius

Arduino menampilkan

suhu dengan

keterangan celcius dan

bertipe data float64

Valid

Pengecekan

Nilai

Kelembapan

Output nilai dari

sensor dalam

persentase

Arduino menampilkan

nilai kelembapan

dalam bentuk float64

Valid

Penggunaan

waktu delay

interval 10 detik

Menampilkan nilai-

nilai sensor setiap 10

detik

Arduino menampilan

nilai dari sensor-

sensor tanpa ada

masalah

Valid

Page 66: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

53

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Pengecekan

regex yang pada

output lines

Setiap baris pada

output terdapat regex

"#" untuk

memisahkan nilai

sensor

Arduino menampilkan

baris berisi data

sensor dengan regex

"#"

Valid

8. Hasil Pengujian Black box Testing Fase Process

Tabel dibawah ini menunjukan hasil pengujian pada fase process

menggunakan metode pengujian black box. Pengujian dilakukan untuk

melihat, jika fase process berfungsi secara baik dan benar. Jika, pada

kolom Hasil yang didapatkan menunjukan hasil sebaliknya. Dapat

diidentifikasi bahwa skenario pengujian terdapat masalah.

Tabel 4. 3 Pengujian fase process

Deskripsi Skenario

Pengujian

Hasil yang

diharapkan

Hasil yang

didapatkan Kesimpulan

Pengecekan

Komunikasi Serial

antara Arduino

Dengan Raspberry

dengan alamat port

USB0

Raspberry sukses

berkomunikasi

dengan Arduino

untuk pertukaran data

Raspberry dapat

berkomunikasi

dengan arduino

melalui alamat port

USB0

Valid

Pengecekan

konversi baris

regex menjadi

array

Raspberry sukses

mengubah

mengidentifikasi

regex menjadi index

array

terdapat 3 index

dari nomor 0-2

ketika berhasil

dikonversi menjadi

array

Valid

pengecekan setiap

index variabel

array

array terisi penuh

sesuai dengan jumlah

regex "#" yang ada

array berhasil terisi

sesuai dengan

masing-masing

index di setiap "#"

Valid

Page 67: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

54

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

9. Hasil Pengujian Black box Testing Fase Output

Tabel dibawah ini menunjukan hasil pengujian pada fase output

menggunakan metode pengujian black box. Pengujian dilakukan untuk

melihat, jika fase output berfungsi secara baik dan benar. Jika, pada

kolom Hasil yang didapatkan menunjukan hasil sebaliknya. Dapat

diidentifikasi bahwa skenario pengujian terdapat masalah.

Tabel 4. 4 Pengujian fase output

Deskripsi

Skenario

Pengujian

Hasil yang

diharapkan Hasil yang didapatkan Kesimpulan

Pengecekan

perintah

keyword

"/start"

client sukses

berkomunikasi

dengan Cloud

Telegram

Client mendapatkan

callback pesan pembuka.

Karena, komunikasi antara

cloud telegram dengan

server raspberry berhasil

Valid

Pengecekan

perintah

keyword

"/cuaca"

Client sukses

mendapatkan

informasi cuaca

Client mendapatkan

callback informasi cuaca.

Disebabkan cloud telegram

meneruskan permintaan

client untuk memerintahkan

raspberry mengirimkan data

hasil

Valid

Pengecekan

perintah

keyword

"/about"

client sukses

mengetahui

informasi si

pembuat bot ini

client mendapatkan callback

pesan tentang siapa pembuat

bot bernama "Innako"

Valid

Page 68: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

55

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

4.5 Analisa Data / Evaluasi

1. Korelasi antara Suhu dengan Kelembapan Udara

Gambar 4. 8 Grafik Korelasi Hubungan Suhu dan Kelembapan Udara

Dari gambar 4.8 dapat di analisa jika suhu udara berbanding terbalik

dengan kelembapan udara. Semakin tinggi suhu udara maka semakin rendah

kelembapan dan sebaliknya, beberapa faktor yang menyebabkan perbandingan

terbalik antara suhu udara dan kelembapan di PNJ adalah kondisi tinggi

rendahnya tanah yang ditempati oleh PNJ. Selain itu, kerapatan udara yang

terjadi bisa menjadi faktor yang menyebabkan fenomena perbandingan korelasi

terbalik ini.

2. Perbandingan Sensor Suhu dengan Google Weather

Gambar 4. 9 Grafik Perbandingan Suhu

Page 69: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

56

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Gambar 4.9 adalah perbandingan antara data hasil uji coba sistem rancang

bangun dengan Google Weather. Google Weather sendiri menggunakan

kombinasi dari berbagai sumber pemberi perkiraan cuaca dan di integerasi

menjadi satu informasi di halaman pencarian milik google untuk dapat diakses.

Selain itu Google Weather didukung dengan Teknologi kecerdasan buatan yang

dapat memprediksi data cuaca dengan akurasi yang tinggi.

Dengan menggunakan pendekatan root mean square error (RMSE) dengan

tujuan untuk melihat apakah hasil perbandingan data suhu yang dikeluarkan

sensor dapat melebihi, kurang atau sama dengan dengan milik Google.

3. Perbandingan Sensor Kelembapan dengan Google Weather

Gambar 4. 10 Grafik Perbandingan Kelembapan Udara

Gambar 4.10 adalah perbandingan kelembapan milik sensor rancang bangun

dengan Google Weather. Serupa dengan perbandingan suhu udara, terjadi titik

yang sama pada hari ke-7 antara data google dengan sensor hasil dari rancangan

bangun

Dengan menggunakan pendekatan root mean square error (RMSE) dengan

tujuan untuk melihat apakah hasil perbandingan data kelembapan yang

dikeluarkan sensor dapat melebihi, kurang atau sama dengan dengan milik

Google

Page 70: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

57

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

4. Evaluasi Sistem Rancang Bangun

Pada tabel 4.1 merupakan hasil evaluasi dari perhitungan RMSE pada kedua

sensor suhu udara dan kelembapan terhadap Google Weather. Tujuan dari

perhitungan ini membandingkan kinerja data hasil rancang bangun sensor

skripsi dengan data hasil training kecerdasan buatan milik Google Weather.

Tabel 4. 5 Nilai Root Mean Square Error

Nama Variable Nilai RMSE

Suhu 1.73205

Kelembapan 6.87646

Dari tabel evaluasi yang diatas dapat di analisa bahwa sistem google weather

yang berbasis kecerdasan buatan mengungguli dalam pengambilan data suhu

sebesar 1.73205 dari rancang bangun untuk penelitian skripsi ini. Sensor Suhu

SHT-31D hampir memiliki kemampuan dalam pengambilan suhu yang cukup

baik, namun tidak sebaik milik Google.

Berbeda dengan kelembapan, nilai RMSE adalah 6.87646 yang bisa di ambil

kesimpulan bahwa kemampuan sensor kelembapan tidak begitu bagus dari

milik Google.

Page 71: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

58

BAB V

PENUTUP

5.1 Kesimpulan

Berdasarkan penelitian yang telah dilakukan, maka dapat ditarik

kesimpulan sebagai berikut:

a. Rancang bangun alat pengukur cuaca dapat bekerja secara

fungsional sesuai prinsip. Dari pengujian black-box yang telah

dilakukan.

b. Data yang dihasilkan oleh setiap sensor ada perubahan di hari yang

berbeda.

c. Pengiriman informasi cuaca dilakukan secara realtime dari

Raspberry menuju Cloud Telegram dan akan ditampilkan melalui

bot Telegram tanpa delay waktu yang lama

d. Berdasarkan Hasil Perbandingan dengan Google Weather. Dapat di

ambil kesimpulan Modul SHT31-D untuk mengukur Suhu, Data

hampir sama baik dengan milik Google Weather

e. Modul Lembar Kerja dan Panduan Rancang Bangun tersedia setiap

saat kapanpun dan dimanapun di website www.innako.xyz untuk

dapat membantu pembelajaran interaktif Mahasiswa

5.2 Saran

Berdasarkan hasil penelitian skripsi ini penulis memberikan saran berikut:

a. Variasi Sensor yang lebih banyak dan lebih baik.

b. Sistem dapat ditambahkan teknologi machine learning berbasis

kecerdasan buatan untuk kebutuhan big data dan data science.

c. Sistem monitoring keadaan fisikal dan logikal untuk sensor,

mikrokontroler, Sistem Server untuk menunjang perawatan dari alat

rancang bangun.

d. Pembuatan public API untuk dapat digunakan dalam

pengembangan aplikasi, analisa data dan rancang bangun

selanjutnya di masa depannya.

Page 72: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

59

DAFTAR PUSTAKA

Adafruit, 2020. Adafruit SHT31-D Temperature & Humidity Sensor Breakout.

[Online].

Afrizal, D. K., 2019. Penggunaan Telegram bot pada Telegram Messenger dengan

metode Webhooks untuk Sistem Peminjaman Infrastruktur di UIN

Maulana Malik Ibrahim. Malang: UIN Maulana Malik Ibrahim.

Agung, G. J., 2015. Tingkat kenyamanan cuaca di Lingkungan kampus Universitas

Indonesia Depok. Depok: Universitas Indonesia.

Agustian, A., 2010. Rancang Bangun Miniatur Stasiun Cuaca Berbasis

Mikrokontroller. Depok: Universitas Indonesia.

Batubara, D. A. A., 2017. Hubungan Kelembaban, Suhu Udara,Curah Hujan dan

Kepadatan Penduduk dengan kejadian demam berdarah Dengue di

Kabupaten Deli Serdang Tahun 2011-2014. Medan: Universitas Sumatra

Utara.

Boyes, H., 2018. The industrial internet of things (IIoT): An analysis framework.

Converty: University of Warwick.

Gufron, Z. M., 2019. Perancangan Sistem Monitoring Hujan Berbasis Arduino

Uno. Seminar Ristek 2019, Volume ISSN: 2527-5321.

Guttag, J., 2019. Introduction to Computation and Programming Using Python,

Second Edition. 2nd ed. s.l.:MIT Press.

Hanabusa, R., 2007. Comparing JTAG, SPI, and I2C. [Online]Available at:

http://www.unife.it/ing/lm.infoauto/sistemi-

elaborazione/dispense/comparing_serial_interfaces_an_01_e.pdf[Accessed

27 April 2020].

Harrington, W., 2015. Learning Raspbian. 1st ed. Birmingham: Packt Publishing.

Hewitt, C., 2008. ORGs for Scalable, Robust, Privacy-Friendly Client Cloud.

IEEE Internet Computing, Volume 12, pp. 96-99.

Lippsmeier, G., 1994. Bangunan Tropis (terjemahan). Jakarta: Erlangga.

Page 73: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

60

Majid, M., 2016 . Implementasi Arduino MEGA 2560 Untuk Kontrol Miniatur

Evalator Barang Otomatis. Semarang: Universitas Negeri Semarang.

Miftahuddin, 2016. Analisis Unsur-unsur Cuaca dan Iklim Melalui Uji. Jurnal

Matematika, Statistika dan Komputasi (JMSK), Volume 13, pp. 26-38.

Prawirowardoyo, 1996. Meterologi. Bandung: ITB.

Sandy, D. A., 2017. Pengaruh Intensitas Cahaya Matahari Terhadap perubahan

Suhu,Kelembapan Udara dan Tekanan Udara. Jember: Universitas Jembar.

Saqiraz, C. N. A., 2018. Rancang Bangun Miniatur Stasiun Cuaca. Makassar:

Universitas Hassanudin.

Sawitar, W., 2012. Jaringan Keastronomian. Bandung: ITB.

Sujannah, H. & Munir, A., 2019. EVALUASI KENYAMANAN TERMAL HANA

CAFE DARUSSALAM,. JURNAL ILMIAH MAHASISWA ARSITEKTUR

DAN PERENCANAAN, III(3), pp. 17-22.

Telegram, 2015. About Telegram. [Online] Available at: https://telegram.org/

[Accessed 22 Febuary 2020].

Thoriq Azwar, A. K., 2013. Anemometer Digital Berbasis Mikrokontroler Atmega-

16. Jurnal Inovasi Fisika Indonesia, Volume 02, pp. 41-45.

Trading, R. P., 2018. Raspberry Pi 4 Computer. [Online] Available at:

https://static.raspberrypi.org/files/product-

briefs/200521+Raspberry+Pi+4+Product+Brief.pdf[Accessed 25 April

2020].

Valdez, J. & Becker, J., 2015. Understanding the I2C. [Online] Available at:

https://www.ti.com/lit/an/slva704/slva704.pdf?ts=1592935681354&ref_url

=https%253A%252F%252Fwww.google.com%252F

[Accessed 4 Mei 2020].

Wicaksono, G., 2016. Rancang Bangun Pengukur Arah dan Kecepatan Angin.

Surabaya: Universitas Airlangga.

Page 74: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

61

Widodo, R., 2017. PENGEMBANGAN WEB API SIAKAD UNIVERSITAS. Bandar

Lampung: Universitas Lampung.

Page 75: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

62

DAFTAR RIWAYAT HIDUP PENULIS

Nama Lengkap Penulis Adalah Muhammad Akbar.

Dilahirkan di Jakarta 14 Desember 1997, merupakan anak

kedua dari ketiga bersaudara dari pasangan Evienaf Putra

dan Monalistari. Penulis berkebangsaan Indonesia dan

beragama Islam. Saat ini Penulis berdomisili di Jakarta

Selatan. Penulis menempuh pendidikan Sekolah Dasar

pada tahun 2004 dan lulus tahun 2010 di SDIT ABATA Jakarta Barat dan kemudian

melanjutkan Pendidikan SMP pada tahun 2010 hingga lulus 2013 di SMP Islam Al-

Azhar 3 Bintaro. Tahun 2013 hingga 2016 penulis bersekolah di SMA KARTIKA

X-1 dengan jurusan IPA.Pada tahun 2016 Penulis melajutkan Pendidikan D-IV di

Politeknik Negeri Jakarta Jurusan Teknik Informatika dan Komputer program studi

Teknik Multimedia Jaringan dengan konsentrasi keamanan Sistem Informasi dan

mengambil Diploma II di CEP-CCIT FTUI di Universitas Indonesia selama 2 tahun

2016-2018.

Page 76: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Lampiran 1 Soruce Code Arduino

Percobaan.ino

// import library

#include <Arduino.h>

#include <Wire.h>

#include "Adafruit_SHT31.h"

#include <OneWire.h>

#include <DallasTemperature.h>

#include "RTClib.h"

// Pin definitions

# define windPin 2 // Receive the data from sensor angin

# define ONE_WIRE_BUS 3 // dallas

# define RainPin 4 // sensor curaah hujan

// Constants definitions

const float pi = 3.14159265; // pi number

const double bucketAmount = 0.053; // Hasil Perhitungan & Kalibrasi nilai

per tip sensor

const long interval = 10000; //ganti 500ms sesuai interval kebutuhan anda

dalam menampilkan data per tip di serial monitor

int period = 1000; // Measurement period (miliseconds)

int delaytime = 10000; // Time between samples (miliseconds)

int radio = 90; // Distance from center windmill to outer cup (mm)

int jml_celah = 18; // jumlah celah sensor

int delayData = 0;

double dailyRain = 0.0;

double hourlyRain = 0.0;

double dailyRain_till_LastHour = 0.0;

Page 77: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

bool bucketPositionA = false;

bool first;

// Variable definitions

unsigned int Sample = 0; // Sample number

unsigned int counter = 0; // B/W counter for sensor

unsigned int RPM = 0; // Revolutions per minute

float speedwind = 0; // Wind speed (m/s)

unsigned long previousMillis = 0;

// configuration default

Adafruit_SHT31 sht31 = Adafruit_SHT31();

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);

RTC_Millis rtc;

void setup()

{

// Set the pins

pinMode(2, INPUT);

digitalWrite(2, HIGH);

pinMode(RainPin, INPUT);

rtc.begin(DateTime(__DATE__, __TIME__));

sensors.begin(); //prosedur pembacaan sensor

// sets the serial port to 9600

Serial.begin(9600);

Page 78: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

while (!Serial)

delay(10); // will pause Zero, Leonardo, etc until serial console opens

//Serial.println("SHT31 test");

if (! sht31.begin(0x44)) { // Set to 0x45 for alternate i2c addr

Serial.println("Couldn't find SHT31");

while (1) delay(1);

}

}

void loop()

{

unsigned long currentMillis = millis();

DateTime now = rtc.now();

if ((bucketPositionA == false) && (digitalRead(RainPin) == LOW)) {

bucketPositionA = true;

dailyRain += bucketAmount;

}

if ((bucketPositionA == true) && (digitalRead(RainPin) == HIGH)) {

bucketPositionA = false;

}

if (now.minute() != 0) first = true;

Page 79: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

if (now.minute() == 0 && first == true) {

hourlyRain = dailyRain - dailyRain_till_LastHour;

dailyRain_till_LastHour = dailyRain;

first = false;

}

if (now.hour() == 0) {

dailyRain = 0.0;

dailyRain_till_LastHour = 0.0; // Jika jam pada RTC pukul 00:00 nilai

pembacaan sensor menjadi 0 kembali

}

if (currentMillis - previousMillis >= interval) {

previousMillis = currentMillis;

//Serial.println("=========== DATA CURAH HUJAN PER-TIP

============");

//Serial.print(now.hour());

//Serial.print(" : ");

//Serial.println(now.minute());

//Serial.println();

//Serial.print("mm/tip=");

windvelocity();

RPMcalc();

WindSpeed();

Serial.print(speedwind);

Serial.print("[m/s]");

Serial.print(("#"));

Page 80: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

readtemp();

sensors.requestTemperatures();

Serial.print(sensors.getTempCByIndex(00));

Serial.print(("#"));

Serial.print(dailyRain * 2.54 * 10, 3);

Serial.println("mm");

//Serial.print("inch/tip=");

//Serial.print(dailyRain, 3);

//Serial.println(" inch");

}

//Serial.println();

//delay(1000);

}

// Measure wind speed

void windvelocity()

{

speedwind = 0;

counter = 0;

attachInterrupt(0, addcount, CHANGE);

unsigned long millis();

long startTime = millis();

while(millis() < startTime + period) {}

detachInterrupt(1);

}

void RPMcalc()

{

RPM=((counter/jml_celah)*60)/(period/1000); // Calculate revolutions per

minute (RPM)

Page 81: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

}

void WindSpeed()

{

speedwind = ((2 * pi * radio * RPM)/60) / 1000; // Calculate wind speed on

m/s

}

void addcount()

{

counter++;

}

void readtemp(){

float t = sht31.readTemperature();

float h = sht31.readHumidity();

if (! isnan(t)) { // check if 'is not a number'

//Serial.print("Temp *C = "); Serial.println(t);

Serial.print(t);

Serial.print(("#"));

} else {

Serial.println("Failed to read temperature");

}

if (! isnan(h)) { // check if 'is not a number'

//Serial.print("Hum. % = "); Serial.println(h);

Page 82: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Serial.print(h);

Serial.print(("#"));

//Serial.print(("#"));

} else {

Serial.println("Failed to read humidity");

}

}

Page 83: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

Lampiran 2 Source Code Python

import serial

import time

import csv

import logging

import sqlite3

from datetime import datetime

from telegram.ext import Updater, CommandHandler, MessageHandler,

Filters

def insert_to_table(wind,temprature,hum,water_temp,rain,date_):

try:

conn = sqlite3.connect('/home/pi/sensor_db')

cursor = conn.cursor()

sql_params = """INSERT INTO cuaca

(wind,temprature,hum,water_temp,rain,date_) VALUES (?,?,?,?,?,?);"""

data_tuple =

(wind,temprature,hum,water_temp,rain,date_)

cursor.execute(sql_params,data_tuple)

conn.commit()

print("Data Success Insert to Table")

cursor.close()

except sqlite3.Error as error:

print("Failed to insert to table", error)

Page 84: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

finally:

if (conn):

conn.close()

print("SQL Connection is closed")

port = '/dev/ttyUSB1'

now = datetime.now()

# Enable logging

logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s -

%(message)s',

level=logging.INFO)

logger = logging.getLogger(__name__)

ser = serial.Serial(port,baudrate = 9600)

def start(update, context):

"""Send a message when the command /start is issued."""

update.message.reply_text('Hi Aku adalah Innako Pemberi Info

Cuaca disekitar UI dan PNJ ketik /cuaca untuk mendapatkan informasi

cuaca ')

Page 85: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

def about(update, context):

"""Send a message when the command /start is issued."""

update.message.reply_text('bot ini dibuat oleh muhammad akbar

untuk tugas skripsi nyaa :D ')

def cuaca(update, context):

port = '/dev/ttyUSB1'

ser = serial.Serial(port,baudrate = 9600,timeout =

None)

arduino_data = ser.readline().decode('ascii')

#print(arduino_data)

#time.sleep(10)

x = arduino_data.split("#")

wind = x[0]

temprature = x[1]

hum = x[2]

suhu_air = x[3]

curah = x[4]

informasi = "Kecepatanan angin saat ini :{0}. Suhu

Udara saat ini :{1} kelembapan {2} suhu air hujan sementara :{3} dan curah

hujan {4}".format(wind,temprature,hum,suhu_air,curah)

update.message.reply_text(informasi)

now = datetime.now()

dt_string = now.strftime("%d-%m-%Y

%H:%M:%S")

insert_to_table(wind,temprature,hum,suhu_air,curah,dt_string)

Page 86: RANCANG BANGUN MODUL PEMBELAJARAN SENSOR …

Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta

def main():

updater =

Updater("1183346127:AAExTFhXcutYUTWpXcEqJWUyGlRF63hcDXs",

use_context=True)

dp = updater.dispatcher

dp.add_handler(CommandHandler("start", start))

dp.add_handler(CommandHandler("cuaca", cuaca))

dp.add_handler(CommandHandler("about", about))

updater.start_polling()

# Run the bot until you press Ctrl-C or the process receives SIGINT,

# SIGTERM or SIGABRT. This should be used most of the time, since

# start_polling() is non-blocking and will stop the bot gracefully.

updater.idle()

if __name__ == '__main__':

main()