BAB II
DASAR TEORI
2.1 Sistem Monitoring
Monitoring adalah rangakaian proses visual dalam melihat tampilan variabel pada alat ukur yang sedang terbaca nilainya. Sama halnya dengan akuisisi data, sistem monitoring data dapat digunakan dengan mengukur dan mencatat sinyal yang pada dasarnya diperoleh dengan dua cara, yaitu:
1. Sinyal yang terkirim langsung dalam besaran fisis seperti pembacaan tegangan ataupun arus.
2. Sinyal yang berasal dari transducer yang kemudian dikonversikan menjadi besaran digital.
Berikut pada gambar 2.1 merupakan blok diagram sistem monitoring.
Gambar 2.1 Elemen Sistem monitoring Sumber : W. Bolton, Engineering Instrumentation Control
2.1.1 Tranduser/ Sensor
Transduser adalah sensor atau elemen perasa yang menghasilkan sinyal yang berhubungan dengan sejumlah input/ variable objek yang diukur. Transducer merupakan komponen alat ukur yang mampu mengubah besaran fisika tertentu menjadi besaran lain (listrik).
Sensor Processor Signal
Display Record Transmit Input True value of variable Output Measure value of variable
Tabel 2.1. berikut memperlihatkan karakteristik dari beberapa jenis sensor suhu yang ada.
Tabel 2.1. Karakteristik sensor temperature
Thermocouple RTD Thermistor IC Sensor
V T R T R T V, I T A d van tag es - self powered - simple - rugged - inexpensive - wide variety - wide temperature range - most stable - most accurate - more linear than
termocouple - high output - fast - two-wire ohms measurement - most linear - highest output - inexpensive D isad van tag es - non linear - low voltage - reference required - least stable - least sensitive - expensive - power supply required - small ΔR - low absolute resistance - self heating - non linear - limited temperature range - fragile - power supply required - self heating - T < 200o C - power supply required - slow - self heating - limited configuration
2.1.1.1 LM35
LM 35 merupakan sensor temperatur yang paling banyak digunakan untuk praktek, karena memiliki linearitas yang bagus. LM 35 tidak membutuhkan kalibrasi eksternal yang menyediakan akurasi ±1/4 °C pada temperatur ruangan.
Selain itu, LM 35 memiliki parameter bahwa setiap kenaikan 1°C tegangan keluarannya naik sebesar 10mV dengan batas maksimal keluaran sensor adalah 1,5V pada suhu 150°C.
2.1.1.2 Termokopel
Termokopel yang berasal dari thermo electric couple adalah alat pengukur temperatur berdasarkan prinsip dasar termoelektrik dimana perubahan temperatur mengakibatkan terjadinya gaya gerak listrik (ggl) dalam rangkaiannya. Termokopel dibangun oleh dua buah logam yang memiliki koefisien Seeback berbeda. Koefisien tersebut mengisyaratkan bahwa setiap logam jika dipanaskan akan menghasilkan potensial listrik tertentu. Perbedaan potensial tersebut memungkinkan terjadinya arus listrik. Termokopel yang digunakan pada tugas akhir ini adalah termokopel tipe K.
Gambar 2.2 Thermocouple tipe K
Untuk material termokopel tipe K yaitu Chromel (Ni-Cr alloy) serta alumel (Ni-Al alloy) dan sering digunakan untuk tujuan umum. Memiliki harga yang lebih murah. Tersedia untuk rentang suhu −200 °C hingga +1200 °C.
2.1.2 Signal Conditioning/ Signal Processor
Signal Conditioning adalah alat untuk mengubah sinyal dari tranduser agar dapat terbaca oleh display. Tugas pengkondisi sinyal yang sering dilakukan adalah penguatan (amplification). Misalnya sinyal-sinyal lemah yang berasal dari termokopel, sebaiknya dikuatkan untuk meningkatkan resolusi pengukuran.
2.1.3 Display
Display berfungsi untuk menampilkan sinyal yang masuk secara kontinyu agar nilai atau variabel dapat terbaca.
Display dapat dibagi menjadi 2 jenis, yaitu:
Display Analog
Display analog adalah alat peraga visual seperti bergeraknya pointer yang menyatakan besarnya variabel yang terukur. Biasanya penggunaan display analog terbatas pada ketelitian pembacaan posisi pointer pada skala pembacaan.
Display Digital
Display digital adalah alat peraga visual yang nilai besarannya ditunjukan dalam bentuk seri digit pada layer atau kertas yang dicetak.
Selain melalui display (visual display unit), sinyal/ nilai dari variabel yang terukur dapat pula dicatat melalui perekam (recorder) baik itu dengan paper chart ataupun SD card.
2.1.4 Perekam data
Perekam data merupakan alat berukuran kecil yang dapat dihubungkan dengan sejumlah sensor, yang dapat menyuplik sinyal sensor, mengubah sinyal tersebut dari bentuk analog ke dalam bentuk digital, melakukan olah sinyal digital berdasarkan kemauan pengguna, menyimpan data pada waktu yang telah ditentukan atau tergantung perintah eksternal serta mengirim data ke perangkat lain. Secara umum, perekam data sederhana terdiri dari mikrokontroler, sensor, dan media penyimpanan. Mikrokontroler merupakan bagian dari perekam data yang mengatur komunikasi antar perangkat. Sensor berfungsi untuk mengubah besaran fisik manjadi besaran elektronik. Media penyimpanan berfungsi untuk menyimpan data.
2.1.5 Media penyimpanan
Media penyimpanan dalam perekam data berbasis mikrokontroler berupa media penyimpanan digital. Secure Digital Card (SD card) merupakan salah satu media penyimpanan yang banyak digunakan. Saat ini media penyimpanan ini digunakan pada berbagai macam perangkat, seperti kamera digital, telepon genggam, Personal Digital Assistance (PDA), dsb. Kapasitas yang dimiliki mulai dari 8MB hingga 2GB untuk generasi awal dan 4GB hingga 32GB pada generasi akhir yang disebut SDHC card. Pengembangan lebih lanjut dari media penyimpanan ini menghasilkan dimensi yang lebih kecil dan kompak seiring dengan perkembangan jaman yang berupa Mini SD dan Micro SD.
Gambar 2.3 SD Card dengan Adapter
2.2 Mikrokontroler
Mikrokontroler merupakan sebuah processor yang digunakan untuk kepentingan kontrol. Mikrokontroler adalah alat yang mengerjakan instruksi – instruksi yang diberikan kepadanya. Artinya, bagian terpenting dan utama dari suatu sistem terkomputerisasi adalah program itu sendiri yang dibuat oleh seorang programmer. Program ini menginstruksikan komputer untuk melakukan tugas yang lebih kompleks yang diinginkan oleh programmer. 2.3 Arduino
Arduino dikatakan sebagai sebuah platform dari physical computing yang bersifat open source. Arduino tidak hanya sekedar sebuah alat pengembangan, tetapi ia adalah kombinasi dari hardware, bahasa pemrograman dan Intergrated Development Environment (IDE) yang canggih. IDE adalah sebuah software yang sangat berperan untuk menulis program, meng-compile menjadi kode biner dan meng-upload kedalam memori mikrokontroler. Mikrokotroler itu sendiri adalah chips (IC) yang bisa diprogram menggunakan komputer. Tujuan menanamkan program pada mikrokontroler adalah agar rangkaian elektronik dapat membaca input, memproses input dan kemudian mengendalikan input sehingga menghasilkan sinyal output sesuai yang diinginkan.
2.3.1 Arduino Uno
Arduino uno adalah salahsatu produk arduino yang memiliki fitur mikrokontroller yang berbasis ATmega328. Arduino uno memiliki 14 pin input/ output yang mana 6 pin dapat digunakan sebagai output PWM, 6 analog input, crystal osilator 16 MHz, koneksi USB, jack power, kepala ICSP, dan tombol reset.
Adapun kelebihan-kelebihan yang dimiliki papan Arduino, yaitu:
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 menggunakannya.
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.
Papan arduino Uno dapat diberikan power melalui koneksi USB atau power supply. Power supply dapat menggunakan adaptor DC atau baterai. Adaptor dapat dikoneksikan dengan mencolok jack adaptor pada koneksi port input supply. Board arduino dapat dioperasikan menggunakan supply dari luar sebesar 6 - 20 volt. Jika supply kurang dari 7V, kadangkala pin 5V akan menyuplai kurang dari 5 volt dan board bisa menjadi tidak stabil. Jika menggunakan lebih dari 12 V, tegangan di regulator bisa menjadi sangat panas dan menyebabkan kerusakan pada board. Sehingga untuk menjaga tingkat kestabilan daya kerja daripada papan Arduino Uno tersebut maka penulis menggunakan daya sebesar 9 VDC.
Gambar 2.4 Arduino Uno R3 Sumber : famosastudio.com
Berikut adalah bagian-bagian papan arduino uno:
Gambar 2.5 Bagian-bagian pada papan arduino uno Sumber: buku kupas tuntas arduino
14 pin Input/ Output digital (0-13)
Berfungsi sebagai input atau output dapat diatur oleh program.
USB
Berfungsi untuk memuat program dari komputer kedalam papan serta dapat pula digunakan untuk komunikasi serial antara papan dan komputer.
Q1 - Kristal (Quartz Crystal Oscillator)
Jika sebuah mikrokontroler dianggap sebagai sebuah otak, maka kristal adalah jantungnya karena komponen ini menghasilkan detak-detak yang dikirim kepada mikrokontroler agar melakukan sebuah operasi untuk setiap detaknya.
Tombol Reset S1
Untuk me-reset papan sehingga program akan mulai lagi dari awal, namun tombol reset ini tidak dapat digunakan untuk fungsi menghapus program atau
mengosongkan mikrokontroler.
IC 1 – Mikrokontroler Atmega 328
Komponen utama dari papan Arduino Uno yang didalamnya terdapat CPU, ROM dan RAM.
X1 – Sumber Daya Eksternal
Berfungsi untuk memberikan daya eksternal dengan sumber tegangan 9 – 12V DC.
6 Pin Input Analog 10 bit
Pin ini sangat berguna untuk membaca tegangan yang dihasilkan oleh sensor analog, seperti sensor suhu. Program dapat membaca nilai sebuah pin input antara 0 – 1023, dimana hal itu mewakili nilai tegangan 0 – 5V. 2.3.2 Fitur Mikrokontroler ATMega 328
ATMega 328 adalah mikrokontroler keluaran dari Atmel yang mempunyai arsitektur RISC (Reduce Intruction Set Computer) yang dimana setiap proses eksekusi data lebih cepat daripada arsitektur CISC (Completed Instruction Set Computer).
Mikrokontroler ini memiliki beberapa fitur antara lain:
130 macam instruksi yang hampir semuanya dieksekusi dalam
satu siklus clock.
32 x 8-bit register serba guna.
Clock 16 MHz.
32 KB Flash memory dan pada arduino memiliki
bootloader yang menggunakan 2 KB dari flash memori sebagai bootloader.
Memiliki EEPROM (Electrically Erasable
Programmable Read Only Memory) sebesar 1KB sebagai tempat penyimpanan data semi permanen karena EEPROM tetap dapat menyimpan data meskipun catu daya dimatikan.
Memiliki SRAM (Static Random Access Memory) sebesar 2KB.
Memiliki pin I/O digital sebanyak 14 pin, 6 diantaranya dapat digunakan sebagai fungsi PWM (Pulse Width Modulation) output.
Master / Slave SPI Serial interface.
Adapun konfigurasi pin yang dimiliki oleh mikrokontroler ATMega 328 adalah sebagai berikut:
Gambar 2.6 Konfigurasi pin ATMega 328
Sumber: Http://www.thesis.binus.ac.id/doc/Bab2/210-2-00444- SK%20bab%202.pdf
2.4 Software Arduino
Papan Arduino akan bekerja sesuai intruksi pemrograman yang dimasukkan oleh programmer. Software arduino yang digunakan adalah driver dan IDE. IDE Arduino adalah software yang sangat canggih dan ditulis dengan menggunakan java. IDE arduino terdiri dari:
Editor Program
Sebuah window yang memungkinkan pengguna menulis dan meng-edit program dalam bahasa processing (mirip bahasa C).
Compiler
Sebuah modul yang mengubah kode program (bahasa processing) menjadi kode biner. Compiler biasanya digunakan untuk mengecek kesalahan pada program yang dibuat.
Uploader
Sebuah modul yang memuat kode biner dari komputer kedalam memori didalam papan arduino.
Gambar 2.7 Tampilan Sofware Arduino IDE Sumber: arduino cookbook
2.5 Bahasa Program Arduino
Bahasa pemrograman Arduino adalah bahasa Processing yang mirip dengan bahasa C. Tetapi bahasa ini sudah dipermudah menggunakan fungsi-fungsi yang sederhana sehingga pemula pun bisa mempelajarinya dengan cukup mudah. Untuk membuat program Arduino dan meng-upload ke dalam board Arduino, anda membutuhkan software Arduino IDE (Integrated Development Enviroment). (sumber: http://pandianganstar.blogspot.com/2011/03/apa-itu-arduino.html).
2.5.1 Struktur pemrograman 2.5.1.1 Struktur
Struktur dasar yang membangun pemrograman arduino, menggunakan bahasa struktur yang sederhana yaitu terdiri dari dua bagian:
1. Void setup ( ) {
//statement;
}
Dimana setup ( ) bagian untuk inisialisasi yang hanya dijalankan sekali pada awal program. Fungsi setup ( ) hanya dipanggil satu kali ketika program pertama kali dijalankan. Ini digunakan untuk pendefinisian mode pin atau memulai komunikasi serial. Fungsi setup ( ) harus diikutsertakan dalam program walaupun tidak ada statement yang dijalankan. Untuk tanda kurung kurawal digunakan untuk mengawali perintah/ program yang nantinya akan dieksekusi.
2. Void loop ( )
{
//statement;
}
Fungsi loop ( ) digunakan untuk mengeksekusi bagian program yang dijalankan secara berulang-ulang. Sama halnya dengan void setup, kurung kurawal digunakan untuk mengawali dan mengakhiri program yang akan dieksekusi.
2.5.1.2 Tipe data dasar
Tipe data merupakan bagian program yang paling penting karena tipe data akan mempengaruhi setiap instruksi yang akan dilaksanakan oleh komputer. Pemilihan tipe data yang tepat akan membuat proses
operasi data menjadi lebih efisien dan efektif. Tipe data dalam bahasa C berdasarkan jenisnya dapat dibagi menjadi enam kelompok, yang dinamakan tipe data dasar.
Tabel 2.2 Tipe data dasar (sumber: buku beginning arduino programming)
2.5.1.3 Operator
Operator merupakan simbol atau kata yang dapat digunakan dalam program untuk melakukan suatu operasi atau manipulasi. Jenis- jenis operator pada bahasa C sesuai dangan fungsi penggunaannya:
a) Operator penugasan
Operator penugasan adalah suatu operator yang digunakan untuk memasukan nilai pada suatu variable dan dilambangkan dengan”=”.
b) Operator aritmatika
Operator aritmatika adalah suatu operator yang berfungsi untuk melakukan operasi-operasi matematika. Dalam bahasa C operasi aritmatika terbagi menjadi lima bagian diantaranya :
Tabel 2.3 Operator aritmatika
Operator Jenis Operasi Contoh penggunaan
+ Penjumlahan 16 + 13 = 29 - Pengurangan 10 – 7 = 3 * Perkalian 4*6 = 24 / Pembagian 21/3 = 7 % Sisi bagi(modulus) 10%4 = 2 c) Operasi hubungan
Operasi hubungan adalah operator yang digunakan untuk membandingkan dua buah operand. Yang termasuk kedalam operator hubungan diantaranya :
Tabel 2.4 Operasi hubungan
Operator Jenis operasi Contoh penggunaan
== Sama dengan (8==8 =1)
> Lebih besar (8>9 =0)
< Lebih kecil (8<9 =1)
>= Lebih besar sama dengan (8>=7 =0)
<= Lebih kecil sama dengan (7<=8 =1)
!= Tidak sama dengan (8 != 9 = 1)
d) Operator logika
Operator logika adalah operator yang digunakan dalam operasi yang hanya dapat menghasilkan nilai benar (true) atau nilai salah (false) atau operator yang membandingkan.berikut adalah beberapa operator logika:
Tabel 2.5 Operator logika
Operator Jenis operasi Contoh penggunaan
&& AND 1 && 0 = 0
|| OR 1 || 0 = 1
! NOT ! 1 = 0
2.5.1.4 Flow Control
Untuk keperluan penyelesaian kasus, bahasa C menyediakan beberapa control program diantaranya :
1. Statement if
Statement if digunakan untuk pemilihan yang berdasarkan pada satu kasus, dua kasus, atau lebih dari itu. Pada statement yang
lebih dari dua kasus biasanya menggunakan statement if ( ).. Else( ).
2. Statement switch
Statement switch digunakan untuk melakukan pemilihan terhadap ekspresi atau kondisi yang memiliki nilai-nilai konstan. 3. Statement pengulangan
Statement ini digunakan untuk melakukan pengulangan suatu aksi terhadap suatu program. Statement ini terdiri dari struktur for, struktur while, dan struktur do-while.