BAB II LANDASAN TEORI 2.1.
Sistem Monitoring Sistem monitoring adalah sistem yang sangat diperlukan dalam sebuah
aplikasi. Sistem monitoring disini berperan sebagai pemberi data yang nantinya akan diproses lebih lanjut setelah data terkirim dari sebuah sistem monitoring. Sistem monitoring berasal dari bahasa Inggris yaitu “Monitor System ” yang dalam bahasa Indonesianya adalah sistem pemantauan. Dalam kehidupan sehari hari, sistem pemantauan banyak dilakukan penerapannya dan umumnya dilakukan sebagai bentuk tindakan pencegahan. Sistem monitoring mempunyai dua bentuk konfigurasi data : 1. Konfigurasi data untuk aplikasi monitor itu sendiri 2. Konfigurasi data untuk sistem yang dipantau Aplikasi monitoring membutuhkan informasi path log file dan number of threads untuk menjalankannya. Setelah aplikasi berjalan, perlu untuk diketahui apa yang akan dipantau dan menyimpulkan apa yang telah dipantau. Karena konfigurasi data yang dipantau dibutuhkan di area lain pada sistem, seperti data konfigurasi yang tidak harus dirancang khusus untuk digunakan dalam monitor sistem tetapi harus menjadi model utama dalam sistem umum konfigurasi. Kinerja sistem monitoring memiliki dua aspek : 1. Dampak pada domain sistem atau berdampak pada fungsi domain. Setiap elemen dari sistem pemantauan mencegah fungsi domain utama bekerja dengan tepat. Idealnya pemantauan adalah sebagian kecil dari setiap jejak aplikasi, membutuhkan kesederhanaan. Fungsi pengawasan harus sangat baik untuk memungkinkan perbaikan kinerja aplikasi, pengembangan siklus, tingkat detail, dll 2. Efisiensi monitoring atau kemampuan untuk monitoring. Pemantauan harus efisien, mampu menangani semua tujuan pemantauan pada waktu yang tepat dan dalam periode yang diinginkan.
5
6
2.1.1. Jenis Media Monitoring Sistem monitoring membutuhkan sebuah media pada umumnya. Tingkat kebutuhan media dari sistem monitoring harus disesuaikan dengan kondisi dan kepraktisannya. Orang-orang terus berinovasi dalam pembuatan media agar aplikasi dalam sistem monitoring terpantau dengan baik. Berikut beberapa media sistem monitoring yang sering digunakan : 1. Media sistem monitoring manual. Melalui media sistem monitoring manual, user akan menunjuk operator untuk memantau aplikasi. User akan membuat jadwal dan target agar sistem monitoring bekerja dengan baik. 2. Media sistem monitoring berbasis camera. Media sistem monitoring berbasis camera sering digunakan pada gedung bertingkat, hotel, dan pabrik. Ini biasa disebut Close Circuit Television ( CCTV), Media ini dapat menjangkau dengan semua akses jangkauan target. Kekurangan dari sistem monitoring ini adalah biaya yang mahal. Pada Gambar 2.1 terlihat jenis CCTV.
Gambar 2.1 Jenis Close Circuit Television ( CCTV )
7
3. Media sistem monitoring berbasis web. Para ahli Informasi Teknologi ( IT ) terus mengembangkan sistem monitoring ini. Penggunaan sistem ini membutuhkan sistem komputerisasi dan internet yang programnya dirancang khusus untuk targetnya dalam sebuah aplikasi. Dengan era teknologi open source saat ini, orang-orang dapat membuat sebuah program sistem monitor. Salah satu operasi sistem android ada sebuah program yang membuat sistem monitoring yaitu TeamViewer.
Gambar 2.2 Program TeamViewer
4. Media sistem monitoring berbasis GSM Dasar dari media sistem monitoring ini adalah gelombang radio. Gelombang radio sudah digunakan sejak tahun 1901, dan umumnya digunakan saat perang sebagai media informasi / monitoring. Di era saat ini gelombang radio berkembang menjadi GSM yang digunakan sebagai media komunikasi orangorang melalui handphone.
8
2.2.
Mikrokontroller AVR Atmega328 Mikrokontroler adalah suatu terobosan dalam teknologi mikroprosesor dan
mikrokomputer, perbedaannya mikrokontroler hanya digunakan untuk menangani suatu aplikasi tertentu. Perbedaan mikrokontroler lain terletak pada perbandingan RAM dan ROM. Komputer mempunyai RAM dan ROM yang besar, tetapi pada mikrokontroler sangat terbatas. ROM digunakan oleh mikrokontroller untuk menyimpan program sedangkan RAM untuk menyimpan data sementara. Mikrokontroller terdiri dari ALU (Arithmetic and Logical Unit), CU (Control Unit), PC (Program Counter), SP (Stack Pointer), register-register, sebuah rangkaian pewaktu dan rangkaian penyela (interrupt). Mikrokontroller juga dilengkapi dengan beberapa piranti pendukung lain seperti ROM (Read Only Memory), RAM (Random Access Memory), decoder, port komunikasi input/output serial dan atau paralel dan tambahan khusus seperti interrupt handler dan timer/counter.
Gambar 2.3 Konfigurasi pin ATmega328
9
AVR adalah mikrokontroller CMOS 8-bit buatan Atmel berbasis arsitektur RISC (Reduced Instruction Set Computer). Kebanyakan instruksi dikerjakan pada satu
siklus clock, AVR mempunyai register general-purpose, timer/counter
fleksibel dengan mode copare, interupt internal dan eksternal, serial UART, programmable Watchdog Timer, dan mode power saving. Beberapa diantaranya mempunyai ADC dan PWM internal. AVR juga mempunyai In-System Programmable Flash on-chip yang mengijinkan memori program untuk deprogram ulang dalam system menggunakan hubungan serial SPI. Chip AVR yang digunakan untuk tugas akhir ini adalah ATmega328.
Gambar 2.4 Blok Diagram Mikrokontroller ATmega328
2.3.
Mikrokontroller basis Arduino
2.3.1. Pengertian Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Mikrokontroler itu sendiri adalah chip
10
atau IC (integrated circuit) yang bisa diprogram menggunakan komputer. Tujuan menanamkan program pada mikrokontroler adalah agar rangkaian elektronik dapat membaca input, memproses input tersebut dan kemudian menghasilkan output sesuai yang diinginkan. Jadi mikrokontroler bertugas sebagai ‘otak’ yang mengendalikan
input,
proses
dan
output
sebuah
rangkaian
elektronik.
Mikrokontroler juga dipakai untuk keperluan mengendalikan robot. Baik robot mainan, maupun robot industri. Karena komponen utama Arduino adalah mikrokontroler, maka Arduino pun dapat diprogram menggunakan komputer sesuai kebutuhan kita.
Gambar 2.5 Modul Arduino UNO
Spesifikasi : * Microcontroller ATmega328 * Operating Voltage 5V * Input Voltage (recommended) 7-12V * Input Voltage (limits) 6-20V * Digital I/O Pins 14 (of which 6 provide PWM output) * Analog Input Pins 6 * DC Current per I/O Pin 40 mA * DC Current for 3.3V Pin 50 mA
11
* Flash Memory 32 KB of which 512 byte used by bootloader * SRAM 2 KB * EEPROM 1 KB * Clock Speed 16 MHz
2.3.2. Kelebihan Arduino Apabila dibandingkan dengan mikrokontroler basis yang lain, arduino memiliki beberapa kelebihan diantaranya sebagai berikut : Tidak perlu perangkat chip programmer karena di dalamnya sudah ada bootloader yang akan menangani upload program dari komputer. Sudah memiliki sarana komunikasi USB, sehingga pengguna Laptop yang tidak memiliki port serial/RS323 bisa menggunakan nya. Bahasa pemrograman relatif mudah karena software Arduino dilengkapi dengan kumpulan library yang cukup lengkap. Memiliki modul siap pakai (shield) yang bisa ditancapkan pada board Arduino. Misalnya shield GPS, Ethernet, SD Card, dll.
2.3.3. Open Source Hardware maupun software Arduino adalah open source. Artinya kita bisa membuat tiruan atau clone atau board yang kompatibel dengan board Arduino tanpa harus membeli board asli buatan Italy. Kalaupun kita membuat board yang persis dengan desain asli, kita tidak akan dianggap membajak (asalkan tidak menggunakan trade mark ‘Arduino’). Chip pada Arduino sudah dilengkapi dengan bootloader yang akan menangani proses upload dari komputer. Dengan adanya bootloader ini kita tidak memerlukan chip programmer lagi, kecuali untuk menanamkan bootloader pada chip yang masih blank.
2.3.4. Bahasa Pemograman Bahasa pemrograman Arduino adalah bahasa C/C++. Tetapi bahasa ini sudah dipermudah menggunakan fungsi-fungsi yang sederhana sehingga pemula pun bisa mempelajarinya dengan cukup mudah. Untuk membuat program Arduino
12
dan mengupload ke dalam board Arduino, anda membutuhkan software Arduino IDE (Integrated Development Enviroment) yang bisa di download gratis di http://arduino.cc/en/Main/Software
Compile & Upload ke Arduino Board Serial Monitor Status Area
Gambar 2.6 Arduino Software
Walaupun bahasa pemrograman Arduino adalah bahasa C/C++, tetapi dengan penambahan library dan fungsi-fungsi standar membuat pemrograman Arduino lebih mudah dipelajari dan lebih manusiawi. Misalnya mengirimkan nilai HIGH untuk pin 10 pada Arduino cukup menggunakan perintah dengan fungsi digitalWrite(10, HIGH); Sedangkan kalau menggunakan bahasa C aslinya adalah PORTB |=(1<<2);.
13
2.3.5. Libraly Gratis Tersedia library yang sangat banyak untuk menghubungkan Arduino dengan macam-macam sensor, aktuator maupun modul komunikasi. Misalnya library untuk mouse,keyboard, servo, GPS, dsb. Berhubung Arduino adalah open source, maka library-library ini juga open source dan dapat di download gratis di website Arduino. Komunitas open source yang saling mendukung Software Linux, PHP, MySQL atau WordPress perkembangannya begitu pesat karena merupakan software open source dimana ada komunitas yang saling mendukung pengembangan proyek. Demikian juga dengan Arduino, pengembangan hardware dan software Arduino didukung oleh pencinta elektronika dan pemrograman di seluruh dunia. Contoh, interface USB pada Arduino Uno mengambil dari LUFA project. Library dan contoh-contoh program adalah sumbangan dari beberapa programmer mikrokontroler, seperti Tom Igoe, dsb . 2.3.6. Koneksi USB Sambungan dari komputer ke board Arduino menggunakan USB, bukan serial atau parallel port. Sehingga akan mudah menghubungkan Arduino ke PC atau laptop yang tidak memiliki serial/parallel port. Arduino Uno menggunakan chip AVR ATmega 328 yang memiliki fasilitas PWM, komunikasi serial, ADC, timer, interupt, SPI dan I2C. Sehingga Arduino bisa digabungkan bersama modul atau alat lain dengan protokol yang berbeda-beda.
2.4. Komunikasi data serial Komunikasi data serial merupakan proses pengiriman bit-bit yang tidak dilakukan sekaligus melalui saluran pararel, tetapi setiap bit dikirimkan satu persatu melalui saluran tunggal. Pengiriman data secara serial harus ada sinkronisasi atau penyesuaian antara pengirim dan penerima agar terjadinya ketepatan dan kebenaran data ketika terjadi proses komunikasi antara pengirim dan penerima. Dalam teknik komunikasi serial dikenal istilah format data serial. Format data serial terdiri dari parameter-parameter yang dipakai untuk menentukan
14
bentuk data serial yang akan dikomunikasikan. Berikut beberapa macam format data serial yang dapat digunakan, dimana elemen-elemennya terdiri dari : 1. Kecepatan mobilisasi data per bit (Baud rate)
Laju perpindahan data serial seringkali dinyatakan dalam satuan baud. Laju baud dalam kanal komunikasi merupakan laju tercepat dari perpindahan bit. Kecepatan transmisi (Baud Rate) merupakan suatu hal yang sangat penting dalam komunikasi data seri asynchron, mengingat dalam komunikasi data seri asynchron clock tidak ikut dikirimkan, sehingga harus diusahakan bahwa kecepatan transmisi mengikuti standard yang sudah ada. 2. Jumlah bit data per karakter (data length)
Dalam komunikasi data serial mode asynchronous biasanya berlangsung transmisi data yang dikemas dalam bentuk karakter. Dalam satu karakter diperbolehkan terdiri dari beberapa variasi jumlah bit. Dari sekian variasi yang diperbolehkan diantaranya adalah terdiri dari 7 bit dan 8 bit (panjang data karakternya saja). Kedua variasi ini adalah yang paling sering digunakan dalam komunikasi data serial. 3. Parity yang digunakan
Bit parity adalah bit yang digunakan sebagai alat pemerikasaan kesalahan sederhana dalam proses transmisi data digital. Bit parity ini akan diletakkan setelah susunan bit data. Kemungkinan dari jenis parity ini ada tiga macam, yaitu : parity ganjil, parity genap dan tanpa parity (tidak diikutkan dalam pemeriksaan kesalahan). 4. Jumlah stop bit dan start bit
Pada komunikasi data serial pada mode asynchronous, port serial yang menerima karakter serial harus tahu kapan karakter itu diawali dan kapan karakter itu diakhiri. Dari hal tersebut, maka dalam proses komunikasi data serial juga disertakan bit awal dan bit akhir. Jika tidak ada karakter yang dikirim, maka bit tanda yang selalu bernilai 1 akan dikirim terus-menerus. Bit awal (start bit) yang selalu bernilai 0 (nol) akan menandai awal dari pengiriman suatu karakter. Setelah bit awal, maka selalu diikuti bit data dan bit parity jika ada.
15
Gambar 2.7 Format Data Komunikasi Serial
Salah satu diantara beberapa standar untuk komunikasi serial adalah RS-232. Komunikasi RS-232 dilakukan secara asinkron (asynchronous), yaitu komunikasi serial yang tidak memiliki clock bersama antara pengirim dan penerima, masing-masing dari pengirim maupun penerima memiliki clock sendiri. Yang dikirimkan dari pengirim ke penerima adalah data dengan baud rate tertentu yang ditetapkan sebelum komunikasi berlangsung.
Gambar 2.8 Bentuk Gelombang Komunikasi Serial
Pada gambar 2.8. diatas memperlihatkan bentuk gelombang komunikasi serial dengan 8-bit data, tanpa parity, 1 stop bit. Pada keadaan stanby, jalur RS232 ditandai dengan mark state atau Logika HIGH. Pengiriman data diawali dengan start bit yang berlogika 0 atau LOW, berikutnya data dikirimkan bit demi bit mulai dari LSB (Least Significant Bit) atau bit ke-0. Pengiriman setiap byte diakhiri dengan stop bit yang berlogika HIGH. Untuk kondisi LOW setelah stop bit, ini adalah start bit yang menandakan data berikutnya akan dikirimkan. Jika tidak ada lagi data yang ingin dikirim, maka jalur transmisi ini akan dibiarkan dalam keadaan HIGH.
16
2.5. GSM (Global System for Mobile Phone Communication) GSM (Global System for Mobile Communication) adalah sebuah sistem telekomunikasi terbuka, tidak ada pemilikan (non-proprietary) yang berkembang secara pesat dan konstan. Keunggulan utamanya adalah kemampuannya untuk internasinal roaming. Ini memberikan sebuah sistem yang standart tanpa batasan hubungan pada lebih dari 159 negara. Dengan GSM satelit roaming, pelayanan juga dapat mencapai daerah-daerah yang terpencil. SMS diciptakan sebagai bagian dari standart GSM. Seluruh operator GSM network mempunyai Message Centre, yang bertanggung jawab terhadap pengoperasian atau manajemen dari berita-berita yang ada. Bila seseorang mengirim berita kepada orang lain dengan handphonenya, maka berita ini harus melewati Message Centre dari operator network tersebut, dan MC ini dengan segera dapat menemukan si penerima berita tersebut. MC ini menambah berita tersebut dengan tanggal, waktu dan nomor dari si pengirim. Apabila handphone penerima sedang tidak aktif, maka MC akan menyimpan berita tersebut dan akan segera mengirimnya apabila handphone penerima terhubung.
2.6. SMS (Short Message Service) Layanan SMS sangat populer dan sering dipakai oleh pengguna Hand Phone. SMS menyediakan pengiriman pesan text secara cepat, mudah dan murah. Kini SMS tidak terbatas untuk komunikasi antar manusia pengguna saja, namun juga
bisa
dibuat
otomatis
dikirim/diterima
oleh
peralatan
(komputer,
mikrokontroler, dsb) untuk mencapai suatu tujuan tertentu. Namun untuk melakukannya, kita harus memahami dulu cara kerja SMS itu sendiri. Short Message Service (SMS) adalah protokol layanan pertukaran pesan text singkat (sebanyak 160 karakter per pesan) antar telepon. SMS ini pada awalnya adalah bagian dari standar teknologi seluler GSM, yang kemudian juga tersedia di teknologi CDMA, telepon rumah PSTN, dan lainnya. Jaringan GSM yang terintegerasi dengan layanan SMS memiliki tambahan subsistem, seperti gambar 2.8. dibawah ini :
17
Gambar 2.9 Elemen Pendukung SMS Keterangan : 1. SME (Short Message Entity), merupakan tempat penyimpanan dan pengiriman pesan yang akan dikirimkan ke MS tertentu. 2. SMSC (Short Message Service Center) fungsi untuk menerima pesan dari MSE dan melakukan forwarding kealamat MS yang dituju. 3. SMS-GMSC (Gateway MSC for Short Message Service), yaitu fungsi dari MSC yang mampu menerima pesan dari SC, kemudian mencari informasi ruting ke HLR, selanjutnya mengirim ke VMSC dimana pelanggan tersebut berada. 4. SMS-IWMMSC (Internetworking MSC for Short Message Service), yaitu fungsi dari MSC yang mampu mengirim pesan dari PLMN dan meneruskannya ke SC.
HLR dan VLR ( Home/Visitor Locator register )
merupakan nomor yang teregistrasi dalam MSC. 5. BSS ( Base Service Station ) untuk melayani subscriber. 6. SS7 ( Signalling System 7 ) ialah sistem pensinyalan yang dipakai dalam SMS gateway. 7. Alur pengiriman SMS pada standar teknologi GSM adalah sebagai berikut:
18
Gambar 2.10 Alur Pengiriman SMS Keterangan: 1. BTS - Base Transceiver Station 2. BSC - Base Station Controller 3. MSC - Mobile Switching center 4. SMSC - Short Message Service Center Ketika pengguna mengirim SMS, maka pesan dikirim ke MSC melalui jaringan seluler yang tersedia yang meliputi tower BTS yang sedang meng-handle komunikasi pengguna, lalu ke BSC, kemudian sampai ke MSC. MSC kemudian mem-forward lagi SMS ke SMSC untuk disimpan. SMSC kemudian mengecek (lewat HLR - Home Location Register) untuk mengetahui apakah hand phone tujuan sedang aktif dan dimanakah hand phone tujuan tersebut. Jika Hand Phone sedang tidak aktif maka pesan tetap disimpan di SMSC itu sendiri, menunggu MSC memberitahukan bahwa Hand Phone sudah aktif kembali untuk kemudian SMS dikirim dengan batas maksimum waktu tunggu yaitu validity periode dari pesan SMS itu sendiri. Jika Hand Phone tujuan aktif maka pesan disampaikan MSC lewat jaringan yang sedang meng-handle penerima (BSC dan BTS).
2.7. AT Command AT Command adalah perintah-perintah SMS yang digunakan pada telepon selular seperti pengiriman, pemeriksaan, dan penghapusan SMS. Pada Tugas
19
Akhir ini AT Command yang digunakan adalah AT Command untuk mengirim SMS. AT Command untuk SMS ini sama untuk semua tipe telepon selular.
2.7.1. AT Command untuk Komunikasi Port AT Command sebenarnya hampir sama dengan perintah >(prompt) pada DOS (Disk Operating System). Perintah-perintah yang dimasukkan ke port dimulai dengan kata AT, lalu kemudian diikuti oleh karakter lainnya yang mempunyai fungsi terhadap perintah suatu SMS.
2.7.2. AT Command untuk SMS Beberapa AT Command yang penting dan sering digunakan untuk SMS adalah sebagai berikut: a. AT+CMGS=n Digunakan untuk mengirim SMS. n=jumlah pasangan heksa PDU SMS dimulai setelah nomor SMS-Centre.
b. AT+CMGL=n Digunakan untuk memeriksa SMS. n=0 adalah untuk memeriksa SMS baru di inbox n=l adalah untuk memeriksa SMS lama di inbox n-2 adalah untuk memeriksa SMS unsent di outbox n=3 adalah untuk memeriksa SMS sent di outbox n=4 adalah untuk memeriksa semua SMS c. AT+CMGD=n Digunakan untuk menghapus SMS. n=nomor referensi SMS yang akan dihapus.
2.8.
GSM/GPRS shield
2.8.1. Pengertian Modul IComSat v1.2 merupakan GSM/GPRS shield untuk arduino dan dibuat berdasarkan modul SIM900 Quad-Band GSM/GPRS. Modul ini dikontrol
20
melalui perintah AT Commands (GSM 07.07,07.05 dan SIMCOM enhanced AT Commands), dan kompatibel dengan Arduino / Iteaduino dan Mega.
Gambar 2.11 Modul SIM900 GSM/GPRS shield IComSat v1.2
Spesifikasi :
Quad-Band 850/900/1800/1900MHz
GPRS multi-slot calss 10/8
GPRS mobile station class B
Compliant to GSM phase 2/2+
Class 4 (2W@850/900MHz)
Class 1 (1W@1800/1900MHz)
Control via commands (GSM 07.07, 07.05 and SIMCOM enhanced AT Commands)
.
Short message service
Free serial port selection
All SIM900 pins breakout
RTC supported with Super Cap
Power on/off and reset function supported by Arduino interface
21
Tabel 2.1 Fungsi konektor IComSat v1.2 Interface
GPIOs
UART
IIC&PWM
Pin
Description
1
VDD*
2
GND
3
GPIO1
4
GPIO2
5
GPIO3
6
GPIO4
7
GPIO5
8
GPIO6
9
GPIO7
10
GPIO8
11
GPIO9
12
GPIO10
13
GPIO11
14
GPIO12
15
GND
16
VDD*
1
GND
2
DTR
3
RI
4
DCD
5
CTS
6
RTS
7
TXD
8
RXD
1
GND
2
GND
3
IIC_SCL
22
Debug_Port
4
IIC_SDA
5
PWM2
6
PWM1
7
GND
8
GND
1
GND
2
PERKEY
3
DBG_RXD
4
DBG_TXD
VDD* = 3.0V Note 1 : port level operasi adalah 3.0V
2.8.2. Pemasangan (Installation) UART Multiplexer (For free UART connection setting)
Gunakan jumper untuk menghubungkan pin TXD dan RXD SIM pada arduino D0-D7
Gambar 2.12 UART Multiplexer
Gambar 2.13 merupakan konfigurasi untuk menghubungkan SIM900 dengan ATMega328 pada Arduino
Gambar 2.13 Connect the Arduino Board
Gambar 2.14 merupakan konfigurasi untuk menghubungkan SIM900 dengan FT232RL dan FT232RL dengan PC menggunakan port USB, biasanya digunaka serial software pada PC untuk mengontrol SIM900.
23
Gambar 2.14 Connect the UART Interface as FT232
Gambar 2.15 merupakan konfigurasi untuk menghubungkan pin TXD dan RXD dengan pin yang lain dari D0-D1 menggunakan software-serial library untuk mengontrol modul SIM900.
Gambar 2.15 an example for software-serial connection
2.8.3. Tombol Com (Com Switch) Tombol Com digunakan untuk memilih komunikasi port UART atau port Debug pada modul SIM900 dengan bentuk seperti pada gambar 2.16. dibawah :
Gambar 2.16 Com Switch SIM900