BAB 2 LANDASAN TEORI

advertisement
BAB 2
LANDASAN TEORI
Secara umum alat akuisisi data terbagi atas dua bagian, yaitu perangkat keras
(hardware) dan perangkat lunak (software). Perangkat keras dipergunakan untuk
mendeteksi data yang masuk oleh sensor, lalu data tersebut diproses oleh
mikrokontroler sebagai unit pengolah data untuk dapat ditampilkan komputer
(personal computer) yang telah terinstal perangkat lunak akuisisi data.
Perangkat lunak ditujukan untuk mengontrol, menganalisis dan menampilkan
data yang masuk melalui alat akuisisi yang dibuat agar sesuai dengan tahapan yang
diinginkan. Dengan memahami cara kerja perangkat keras dari alat dan sistem
pemrograman perangkat lunak tersebut selanjutnya baru dapat digunakan untuk
mendukung bekerjanya alat ini. Salah satu tujuan dibuatnya alat ini ialah sebagai
alternatif modul akuisisi data dengan biaya yang lebih murah. Walau kualitas data
yang diolah juga tetap menjadi pertimbangan utama.
Gambar 2.1 Diagram alur sistem akuisisi data berbasis komputer
5
2.1 Sensor
Sensor adalah komponen yang bertugas untuk mengubah besaran fisis
(parameter fisis) menjadi besaran elektris (sinyal-sinyal elektrik). Yang termasuk
dalam kelompok sensor adalah LM35 sebagai sensor suhu, Light Dependent Resistor
(LDR) sebagai sensor cahaya dan potensiometer sebagai alternatif dari sensor posisi.
2.1.1 Sensor Suhu LM35
Sensor suhu adalah komponen untuk mendeteksi atau mengukur suhu pada
suatu ruangan atau sistem tertentu yang kemudian diubah keluarannya menjadi
besaran listrik. Sensor suhu LM35 berfungsi untuk mengubah besaran fisis yang
berupa suhu menjadi besaran elektrik tegangan.
Gambar 2.2. Bentuk fisik sensor LM35
LM 35 merupakan sensor temperatur yang paling banyak digunakan dalam proyek
atau alat elektronika, khususnya dalam lingkungan akademisi. Sebab selain harganya
murah, nilai linearitasnya pun cukup baik. Tegangan outputnya sebanding dengan
temperatur dalam derajat Celsius (˚C). Sensor ini memiliki parameter bahwa setiap
6
kenaikan 1 ˚C tegangan keluarannya naik sebesar 10 miliVolt (mV) dengan batas
maksimal keluaran sensor adalah 1,5 Volt pada suhu 150 ˚C.
Sehingga jika ditentukan pengkonversi analog ke digital (Analog to Digital
Converter (ADC)) akan mencapai skala penuh (full scale) pada saat suhu 100 ˚C
maka nilai keluarannya ialah (10mV/˚C x 100 ˚C) = 1 Volt. Dan jika dilakukan
pengukuran secara langsung pada suhu ruang, keluaran LM35 bernilai 0,3 VDC atau
300 miliVolt DC.
Sensor suhu LM35 memiliki kelebihan-kelebihan sebagai berikut:
•
Dikalibrasi langsung dalam Celsius
•
Memiliki faktor skala linier +10.0 mV/˚C
•
Memiliki ketepatan 0,5 C pada suhu 25 ˚C
•
Jangkauan maksimal suhu antara -55 C hingga 150 ˚C
•
Cocok untuk aplikasi jarak jauh (remote)
•
Harga cukup murah
•
Bekerja pada tegangan catu daya 4 sampai 30 Volt DC
•
Memiliki arus kurang dari 60uAmp ˚C
•
Pemanasan sendiri (self-heating) yang lambat (±0,08 diudara diam)
•
Memiliki linearitas yang tinggi dengan nilai ketidaklinearan hanya ±¼ ˚C
•
Memiliki impedansi keluaran yang kecil yaitu 0,1 watt untuk beban 1mAmp
Sensor suhu tipe LM35 merupakan sensor temperatur yang akurat dengan tegangan
keluarannnya linier dalam satuan Celsius. Jadi LM35 memiliki kelebihan yang tidak
7
dimiliki sensor suhu lain bila dibandingkan dengan sensor temperatur linier dalam
satuan Kelvin. Karena LM35 tidak memerlukan pembanding dengan konstanta
tegangan yang besar keluarannya untuk mendapatkan nilai dalam satuan celcius yang
tepat.
LM35 memiliki impedansi keluaran yang rendah, keluaran yang linear, dan
sifat ketepatan dalam pengujian membuat interface untuk membaca atau mengontrol
sirkuit lebih mudah. Pin Vcc dari LM35 dihubungkan ke power, pin GND
dihubungkan ke Ground dan pin Vout yang menghasilkan tegangan analog hasil
pengindera suhu dihubungkan ke pin Analog Input (Ain).
2.1.2 Sensor Cahaya
Sensor cahaya adalah sensor yang berfungsi mengubah besaran cahaya
menjadi intensitas listrik. Dengan kata lain, besarnya cahaya yang masuk ke dalam
area sensor tersebut akan diubah menjadi listrik sehingga nilainya dapat diukur. Ada
berbagai macam jenis sensor cahaya dan fungsinya, dan salah satunya adalah Light
Dependent Resistor (LDR).
Light Dependent Resistor atau yang biasa disebut LDR adalah jenis resistor
yang nilainya berubah seiring intensitas cahaya yang diterima oleh komponen
tersebut. Biasa digunakan sebagai detektor cahaya atau pengukur besaran konversi
cahaya. Light Dependent Resistor, terdiri atas sebuah cakram semikonduktor yang
mempunyai dua buah elektroda pada permukaannya. Pada saat gelap atau cahaya
redup, bahan dari cakram tersebut menghasilkan elektron bebas dengan jumlah yang
relatif kecil. Sehingga hanya ada sedikit elektron untuk mengangkut muatan elektrik.
8
Artinya pada saat cahaya redup LDR menjadi konduktor yang buruk, atau bisa
disebut juga LDR memiliki resistansi yang besar pada saat gelap atau cahaya redup.
Pada saat cahaya terang, ada lebih banyak elektron yang lepas dari atom
bahan semikonduktor tersebut. Sehingga akan ada lebih banyak elektron untuk
mengangkut muatan elektrik. Artinya pada saat cahaya terang LDR menjadi
konduktor yang baik, atau bisa disebut juga LDR memiliki resistansi yang kecil pada
saat cahaya terang.
LDR mempunyai karakteristik yang dapat dilihat pada Gambar 2.3 yaitu
apabila intensitas cahaya makin besar, maka tahanan LDR kecil, sebaliknya apabila
LDR tidak terkena cahaya atau dalam kondisi gelap maka tahanannya akan menjadi
besar bisa mencapai beberapa MΩ. Tetapi apabila seberkas cahaya jatuh mengenai
permukaan LDR maka nilai tahanannya akan turun sebanding dengan intensitasnya.
Gambar 2.3 Kurva karakteristik Light Dependent Resistor (LDR)
9
Pada sisi bagian atas LDR terdapat suatu garis atau jalur melengkung yang
menyerupai bentuk kurva. Jalur tersebut terbuat dari bahan cadmium sulphida yang
sangat sensitif terhadap pengaruh dari cahaya. Jalur cadmium sulphida yang terdapat
pada LDR dapat dilihat pada Gambar 2.4
Gambar 2.4 Bentuk fisik Light Dependent Resistor (LDR)
Jalur cadmium sulphida dibuat melengkung menyerupai kurva agar jalur
tersebut dapat dibuat panjang dalam ruang (area) yang sempit. Cadmium sulphida
(CdS) merupakan bahan semikonduktor yang memiliki celah energi antara elektron
konduksi dan elektron valensi. Ketika cahaya mengenai cadmium sulphida, maka
energi proton dari cahaya akan diserap sehingga terjadi perpindahan dari band valensi
ke band konduksi. Akibat perpindahan electron tersebut mengakibatkan hambatan
dari cadmium sulphida berkurang dengan hubungan kebalikan dari intensitas cahaya
yang mengenai LDR.
10
Resistansi LDR akan berubah seiring dengan perubahan intensitas cahaya
yang mengenainya atau yang ada di sekitarnya. Dalam keadaan gelap resistansi LDR
sekitar 10MΩ dan dalam keadaan terang sebesar 1KΩ atau kurang. LDR terbuat dari
bahan semikonduktor seperti kadmium sulfida. Dengan bahan ini energi dari cahaya
yang jatuh menyebabkan lebih banyak muatan yang dilepas atau arus listrik
meningkat. Artinya resistansi bahan telah mengalami penurunan.
Namun perlu juga diingat bahwa respon dari rangkaian transistor akan sangat
bergantung pada nilai LDR yang digunakan. Lebih tinggi nilai tahanannya akan lebih
cepat respon rangkaian. Akan lebih mudah mengatur respon rangkaian bila
menggunakan Op-Amp sebagai penguat atau saklar pada rangkaian LDR. Untuk itu
dapat digunakan berbagai jenis Op-Amp yang tersedia. Kalau tersedia jenis CMOS
atau yang lain tidak akan mempengaruhi penampilan LDR pada rangkaian. Hal ini
bergantung pada aplikasi rangkaian yang akan kita rakit. Apakah keluaran Op-Amp
akan tinggi saat LDR tidak mendapat cahaya atau keluaran Op-Amp akan mencapai
tegangan supply pada saat LDR mendapat cahaya. Dengan sifat LDR yang demikian,
maka LDR (Light Dependent Resistor) biasa digunakan sebagai sensor cahaya.
2.1.3 Potensiometer
Potensiometer merupakan komponen dasar elektronika yang termasuk
kategori resistor variable. Resistor variable ialah resistor yang nilai hambatannya
dapat diubah-ubah atau tidak tetap. Resistor variable nilai hambatannya dapat diubahubah dengan memutar poros yang telah tersedia. Potensiometer merupakan bagian
dari sebuah resistor. Namun, bila dilihat dari bentuk fisiknya potensiometer tidak
11
memiliki gelang warna untuk menentukan nilai tahanannya, melainkan oleh putaran
atau pergeseran.
Gambar 2.5. Bentuk fisik Potensiometer
Nilai dari potensiometer ini bisa berubah sesuai perputaran ataupun
pergeseran. Range yang dihasilkan oleh potensiometer bervariasi, jika tertera nilai
100 KΩ, maka range resistansi dimulai dari tahanan 0 Ω sampai 100 KΩ.
Potensiometer biasa digunakan sebagai komponen pengatur suara, sebagai alternatif
sensor posisi, maupun pengendali masukan dan keluaran sebuah operasi elektronik.
2.2 Arduino
Bila didefinisikan secara sederhana Arduino adalah papan rangkaian
elektronika yang memiliki komponen utama berupa chip mikrokontroler jenis AVR
dari ATMEL, yang disertai beberapa pin atau terminal penghubung. Arduino
merupakan salah satu hasil inovasi di bidang elektronika yang telah membuat
12
perubahan besar dalam dunia mikrokontroler sehingga seseorang yang awam
sekalipun bisa membuat proyek-proyek elektronika dengan relatif mudah dan cepat.
Sebagaimana jenis mikrokontroler yang lain, Arduino dapat diprogram menggunakan
komputer sesuai kebutuhan. Chip pada Arduino sudah dilengkapi dengan bootloader
yang akan menangani proses upload dari komputer. Bootloader adalah program
inisiasi yang ukurannya kecil, dijalankan oleh CPU saat daya dihidupkan. Setelah
bootloader selesai dijalankan, berikutnya program di dalam RAM akan dieksekusi.
Dengan adanya bootloader ini maka tidak lagi diperlukan chip programmer tambahan
kecuali untuk menanamkan bootloader pada chip yang masih blank (kosong).
Gambar 2.6. Bentuk fisik Arduino Uno
Dalam buku ”Getting Started with Arduino”, Arduino dituliskan sebagai sebuah
platform komputansi fisik (Physical Computing) yang open source pada board input
output sederhana. Namun perlu dipahami bahwa kata “platform” yang dimaksud
13
adalah sebuah pilihan kata yang mengandung arti bahwa Arduino tidak hanya sekedar
sebuah alat pengembangan, tetapi juga kombinasi dari perangkat keras (hardware),
bahasa pemrograman (software) dan Integrated Development Environment (IDE)
yang dapat mendeteksi dan merespon situasi dan kondisi yang ada didunia nyata.
IDE yang dimaksud adalah sebuah software yang sangat berperan untuk
menulis program, meng-compile menjadi kode biner dan meng-upload ke dalam
memori mikrokontroler. Arduino berevolusi menjadi sebuah platform yang dapat
menjadi pilihan dan acuan bagi banyak praktisi di bidang elektronika. Sehingga
diharapkan dimasa yang akan datang akan tercipta suatu inovasi-inovasi teknologi
cangggih yang menggunakan Arduino sebagai dasar pengendalinya.
Kelebihan Arduino dari platform hardware mikrokontroler lainnya adalah
sebagai berikut:
1. Arduino merupakan hardware dan software multi-platform, yang dapat
dijalankan di berbagai sistem operasi, seperti Windows, Macintosh dan
Linux. Bahkan Arduino juga memiliki kompabilitas dengan sistem operasi
mobile terpopuler seperti Android.
2. IDE Arduino dibuat berdasarkan pada IDE Processing yang sederhana
sehingga mudah dipelajari dan digunakan.
3. Pemprograman Arduino menggunakan kabel yang terhubung dengan port
USB bukan serial biasa ataupun paralel. Fitur ini berguna karena banyak
komputer sekarang ini yang tidak memiliki port serial atau paralel.
14
4. Arduino adalah hardware dan software open source sehingga siapapun
dapat mendownload software dan membuat aplikasi rangkaian Arduino
sendiri tanpa harus membayar lisensi ke pembuat Arduino.
5. Biaya hardware Arduino yang relatif murah dan terjangkau cukup
menguntungkan bagi kalangan akademisi (mahasiswa) dan penghobi
elektronika.
6. Arduino dikembangkan dalam lingkungan akademisi hingga skala
industri. Sehingga siapapun dapat mudah mempelajari, memodifikasi, dan
bahkan mengkomersialisai produk elektronika buatannya yang merupakan
turunan Arduino.
7. Arduino memiliki begitu banyak pengguna dan komunitas di internet yang
dapat membantu bagi siapapun yang mengalami kesulitan dalam
penggunaannya.
Dari kelebihan-kelebihan tersebut dapat diperoleh kesimpulan bahwa Arduino
lebih dari sekedar papan rangkaian elektronika biasa.
2.2.1
Perangkat keras (hardware) Arduino Uno
Seperti yang telah dijelaskan sebelumnya, Arduino merupakan papan
rangkaian elektronika yang terdiri dari chip mikrokontroler sebagai unit pemproses
data dan beberapa komponen lain yang saling terkoneksi dalam satu papan rangkaian.
Namun, Arduino memiliki beragam jenis dan tipe dengan spesifikasi yang berbedabeda pula. Dan Arduino Uno adalah salah satu dari sekian banyak tipe Arduino yang
15
ada. Perangkat keras papan rangkaian (board) Arduino Uno seri R3 yang digunakan
dalam alat akuisisi data ini memiliki spesifikasi data teknis sebagai berikut:
•
Chip mikrokontroler : ATMEGA328
•
Tegangan Operasi : 5 VDC
•
Tegangan Input (eksternal) : 7 - 12 VDC
•
Pin digital I/O : 14 (6 diantaranya pin PWM)
•
Pin Analog input : 6
•
Arus DC per pin I/O : 40 mA
•
Arus DC untuk pin 3.3 V : 150 mA
•
Flash Memory : 32 KB dengan 0.5KB digunakan untuk bootloader
•
SRAM : 2 KB
•
EEPROM : 1 KB
•
Kecepatan Pewaktuan : 16 Mhz
Namun, selain spesifikasi teknis yang disebutkan diatas, pada papan rangkaian
Arduino Uno juga terdapat beberapa pin atau terminal yang digunakan untuk
berhubungan dan berkomunikasi dengan peralatan elektronika lain. Masing-masing
pin atau terminal tersebut pun memiliki fungsi dan tugas tersendiri.
Berikut ini adalah nama pin-pin atau terminal yang disertai penjelasan dari tiap
bagian terminal atau pin Arduino Uno seri R3 yang digunakan:
1. Soket USB (Universal Serial Board)
16
Soket USB adalah soket atau terminal yang ada pada Arduino untuk menghubungkan
dan mentransmisikan data dari Arduino ke komputer, laptop atau perangkat
elektronika lain, dan sebaliknya. Selain sebagai port komunikasi serial, soket USB
juga berfungsi untuk memberikan power ke Arduino. Sehingga tanpa rangkaian
power supply tambahan (eksternal) sekalipun, Arduino masih tetap dapat memperoleh
tenaga listrik dari soket USB.
2. Pin digital Input/Output
Pin digital Input/Output atau digital pin adalah serangkaian pin-pin yang berguna
untuk menghubungkan Arduino dengan komponen atau rangkaian digital. Misalnya
saja jika ingin membuat LED berkedip, LED tersebut bisa dipasang pada salah satu
pin I/O digital dan ground. Komponen lain yang menghasilkan output digital ataupun
menerima input digital bisa juga dapat disambungkan ke pin-pin ini.
3. Input analog
Input analog atau analog pin adalah serangkaian pin-pin yang berfungsi untuk
menerima sinyal ataupun data dari komponen atau rangkaian analog. Misalnya dari
potensiometer, sensor suhu (LM35), sensor cahaya (LDR), dan lain sebagainya.
4. Catudaya
Pin catu daya adalah pin yang berfungsi untuk memberikan tegangan pada komponen
atau rangkaian yang dihubungkan dengan Arduino. Pada bagian catu daya ini terdapat
juga pin Vin dan Reset. Vin digunakan untuk memberikan tegangan langsung kepada
Arduino tanpa melalui tegangan USB atau adaptor. Reset adalah pin untuk
memberikan sinyal reset melaui tombol atau rangkaian eksternal.
5. Adaptor
17
Soket baterai atau adaptor digunakan untuk menyuplai Arduino dengan tegangan dari
baterai atau adaptor 9V pada saat Arduino sedang tidak disambungkan ke komputer.
Jika Arduino sedang disambungkan ke komputer melalui USB, Arduino mendapatkan
suplai tegangan dari USB,sehingga tidak lagi diperlukan tambahan power dari luar
(eksternal) seperti memasang baterai atau adaptor saat memprogram Arduino.
Gambar 2.7. Keterangan pin-pin pada Arduino Uno
Arduino Uno memiliki kaki input-output (I/O) digital sebanyak 14 kaki, yaitu dikaki
D0 sampai D13, dan memiliki 6 kaki I/O analog, yaitu dikaki A0 sampai A5. Khusus
untuk kaki-kaki I/O digital, setiap kakinya bisa dijadikan sebagai input atau output.
Namun untuk kaki I/O analog, hanya bisa dijadikan sebagai input saja.
Sebagai input analog, keenam kaki ini memiliki tambahan rangkaian Analog to
Digital Converter (ADC) didalamnya, dengan resolusi ADC sebesar 10 bit. Resolusi
18
10 bit berarti untuk tegangan masukan 0-5 VDC nilai digital yang dihasilkan
memiliki jangkauan nilai dari 0-1023. Arduino tidak memiliki kaki output analog.
Untuk menghasilkan sinyal analog, dapat menggunakan sebuah sinyal Pulse Width
Modulation (PWM), yaitu sebuah cara untuk menghasilkan sinyal analog dari sinyal
digital, dengan cara mengatur lebar pulsa sinyal digital pada frekuensi yang tinggi.
Sehingga rata-rata tegangannya menghasilkan nilai yang bervariasi antara 0-5 VDC,
untuk nilai PWM antara 0-255. Karena dibuat dari sinyal digital, maka kaki output
analog PWM ini berada dikaki I/O digital yang jumlahnya sebanyak 6 kaki, yaitu
kaki D3, D5, D6, D9, D10, dan D11.
Ada 2 buah kaki I/O Arduino yang dikhususkan untuk komunikasi dengan komputer,
yaitu kaki D0 dan kaki D1. Kaki D0 digunakan untuk menerima data atau Rx
(Receive), sedangkan kaki D1 digunakan untuk mengirimkan data atau Tx
(Transmit). Komunikasi dilakukan secara serial dan kecepatan komunikasi harus
diatur baik disisi Arduino maupun disisi komputer.
2.2.2 Perangkat Lunak (software) Arduino
Integrated Development Environment (IDE) Arduino adalah software yang
sangat canggih dan ditulis dengan menggunakan bahasa pemprograman Java. Seperti
disebutkan sebelumnya, IDE Arduino adalah sebuah software yang sangat berperan
untuk menulis program, meng-compile menjadi kode biner dan meng-upload ke
dalam memori mikrokontroller. Toolbar atau pilihan menu yang ada pada IDE
Arduino terdiri dari:
19
•
Editor program, yaitu sebuah window yang memungkinkan penggunanya
menulis dan mengedit program dalam bahasa processing.
•
Compiler, yaitu sebuah modul yang mengubah kode program (bahasa
processing) menjadi kode biner. Sebab, sebuah mikrokontroler tidak akan bisa
memahami bahasa processing. Yang bisa dipahami oleh mikrokontroler
adalah kode biner. Itulah sebabnya compiler diperlukan dalam hal ini.
•
Uploader, yaitu sebuah modul yang memuat kode biner dari komputer ke
dalam memori di dalam papan Arduino.
20
Gambar 2.8. Tampilan IDE Arduino
Suatu kumpulan kode program Arduino yang akan digunakan dalam proses eksekusi
kode-kode program disebut dengan sketch. Sehingga kata “sketch” digunakan secara
bergantian dengan “kode program” dimana keduanya dapat diasumsikan memiliki
arti yang sama.
21
Berikut ini merupakan langkah-langkah penggunaan IDE Arduino:
1. Hubungkan Arduino dengan port USB komputer melalui kabel USB.
2. Jalankan software IDE Arduino dengan mengklik 2x ikon Ardunio.
3. Buat program atau buka program yang telah ada melalui menu File > Open di
jendela Editor Arduino.
4. Tekan tombol Verify. Apabila tidak terdapat kesalahan pada sketch, maka
sketch tersebut akan dikompilasi untuk menghasilkan kode mesin. Proses
kompilasi ini selesai ketika muncul tulisan ”Done Compiling” di bawah
jendela Editor.
5. Setelah kode mesin dihasilkan, langkah berikutnya adalah meng-upload kode
mesintersebut ke board Arduino. Namun sebelum menekan tombol Upload,
pastikan 2 hal ini sudah benar. Yang pertama adalah tipe board Arduino dan
kedua adalah saluran port serial yang digunakan. Kedua hal ini dapat diatur
dengan membuka menu Tools, dan pilih Board untuk mengatur tipe
boardnya, dan pilih Serial Port untuk mengatur saluran port COM yang
digunakan pada komputer. Bila pilihan serial port-nya tidak bisa digunakan,
maka kemungkinan penyebabnya karena kabel USB Arduino belum
dikoneksikan atau driver Arduino belum terinstal dengan benar.
6. Setelah itu, tekan tombol Upload. Selanjutnya proses pengiriman kode mesin
ke board Arduino akan berlangsung. Proses upload ini selesai ketika muncul
tulisan ”Done Uploading” dibagian bawah jendela Editor Arduino.
7. Terakhir, simpan program dengan menekan tombol Save.
22
2.3
Laboratory Virtual Instrumentation Engineering Workbench (LabVIEW)
Dalam sebuah sistem akuisisi data modern, umumnya terdapat suatu
perangkat lunak (software) yang digunakan untuk memproses atau mengolah data.
Suatu perangkat lunak yang apabila dipadukan secara baik dan benar dengan
perangkat keras elektronika dapat mengubah komputer menjadi suatu sistem
pemproses, penganalisa, dan penampil data terpadu yang biasa disebut sistem akuisisi
data atau DAQ System (Data Acquisition System). Oleh karena itu pemilihan
perangkat lunak yang akan digunakan pada alat akuisisi data sangat penting.
Apabila ditinjau dari bahasa pemprograman yang digunakannya, perangkat lunak
akuisisi data dapat dibagi menjadi dua macam :
1. Perangkat lunak tingkat penggerak (driver-level)
Perangkat lunak tingkat penggerak menyederhanakan program akuisisi data
dengan cara menangani secara langsung sistem pemprograman pada tingkat
rendah (low-level programming) agar dapat memberikan berbagai fungsifungsi tingkat tinggi (high-level functions) yang dapat dipanggil dalam bahasa
pemprograman yang digunakan. Umumnya perangkat lunak (software) ini
menggunakan bahasa pemprograman berbasis teks. Contoh perangkat lunak
ini antara lain bahasa assembler.
2. Perangkat lunak tingkat aplikasi (application-level)
Perangkat lunak tingkat aplikasi adalah perangkat lunak akuisisi data yang
langsung dapat digunakan sebagai aplikasi dalam pengontrolan ataupun
perolehan data. Perangkat lunak atau software-software yang termasuk ke
23
dalam kategori ini seperti LabVIEW, Visual Basic, Microsoft Visual C++,
dan lain-lain. Keunggulan perangkat lunak tingkat aplikasi adalah lebih
mudah memahami (visualisasi) hasil programnya.
Dan dari sekian banyak perangkat lunak yang dapat digunakan untuk proses
akuisisi data, LabVIEW merupakan salah satu yang terbaik. Sebab, LabVIEW
merupakan perangkat lunak yang mudah digunakan karena telah disediakan berbagai
macam tool untuk berbagai jenis instrumen. LabVIEW (Laboratory Virtual
Instrument Engineering Workbench) adalah bahasa pemrograman berbentuk grafik
(graphical), teks (text) dan ikon (icon) yang dapat membuat suatu visualisasi
instrumen secara virtual untuk akusisi data, analisis sinyal, dan pengontrolan
instrumen. Sehingga bila dibandingkan dengan bahasa pemprogramman lain yang
pada umumnya lebih sering menggunakan perintah-perintah berdasarkan teks saja,
LabVIEW lebih menarik karena informasi yang diperoleh oleh perangkat keras alat
akuisisi data lebih mudah dipahami.
Software ini pertama kali dikembangkan oleh perusahaan National
Instruments (NI) pada tahun 1986. Beberapa kelebihan LabVIEW dibandingkan
dengan bahasa pemprograman lainnya adalah sebagai berikut:
1. Bahasa pemprograman LabVIEW jelas dan mudah dipahami, karena
berbentuk grafis, dengan instruksi berbentuk ikon-ikon, yang dihubungkan
dengan garis atau kawat (wire) untuk menunjukan aliran data, mirip seperti
flowchart.
24
2. Pembuatan programnya mudah, yaitu hanya dengan men-drag and drop ikon
yang telah tersedia di palet (kotak instruksi), dan menghubungkannya dengan
garis atau kawat (wire) ke ikon yang lainnya. Kawat ini memiliki fungsi yang
sama seperti variabel dalm bahasa pemprograman teks. Dengan cara ini,
LabVIEW menyederhanakan cara pemprograman, karena kawat hanya akan
terhubung dengan benar apabila tipe datanya sesuai. Sehingga hal ini dapat
menghilangkan kebutuhan manajemen memori dan deklarasi tipe data dar
setiap variabel seperti dalam bahasa pemprograman teks. Selain itu, pada
LabVIEW juga tidak perlu mengingat nama-nama instruksi karena semua
ditampilkan pada palet. Jadi, yang diperlukan hanya men-drag and drop pada
kategori yang telah disediakan ataupun dengan menggunakan fasilitas bantuan
tombol Search untuk menemukannya.
3. Karena mudah dipahami dan dibuat, maka hal tersebut dapat mempersingkat
waktu pembuatan program. Begitu pula untuk perbaikan programnya, karena
dibuat dalam bentuk grafis yang interaktif, maka perbaikannya menjadi lebih
cepat dan efisien.
4. Dari tahun 1986 sampai sekarang, LabVIEW telah memiliki integrasi dengan
ribuan hardware dan ratusan pustaka komponen elektronika (library) yang
siap digunakan untuk aplikasi di bidang instrumentasi, pengolahan sinyal,
analisis dan visualisasi data hingga terkoneksi ke internet.
5. LabVIEW telah terbukti di dunia industri sebagai software yang handal,
powerful, dan fleksibel. Selain itu juga dapat diintegrasikan dari software lain
seperti MATLAB, SPICE, Simulink, SolidWorks dan Lego Mindstorms.
25
6. Dengan mempelajari LabVIEW, dapat menjembatani dunia pendidikan atau
akademisi dengan dunia industri. Sebab jika software yang digunakan sama,
maka transisi dan transfer teknologi dari dunia pendidikan atau akademisi ke
industri menjadi lebih mudah.
7. LabVIEW didesain sebagai sebuah bahasa pemprograman yang mampu
menangani beberapa instruksi sekaligus dalam waktu bersamaan. Hal ini
sangat sulit dilakukan dalam bahasa pemprograman teks, karena umumnya
bahasa pemprograman teks mengeksekusi instruksinya secara berurutan baris
per baris atau satu demi satu. Dengan LabVIEW, penggunanya dapat
membuat aplikasi eksekusi paralel secara mudah dengan menempatkan
beberapa struktur loop secara terpisah dalam block diagram.
8. Sifat modular LabVIEW memungkinkan penggunanya untuk membuat
program yang kompleks dan rumit menjadi sederhana, yaitu dengan cara
membuat subprogram, atau dilingkungan LabVIEW biasa disebut subVI. Dan
subVI-subVI tersebut dapat digabungkan menjadi subVI lain hingga pada
hierarki tak terbatas.
9. Adanya komunitas LabVIEW dan dukungan dari pihak National Instruments
(NI) yang begitu besar untuk dunia pendidikan atau akademisi menjadi
semakin mudah untuk memahami dan saling berbagi dalam mengerjakan
suatu proyek-proyek elektronika.
26
Gambar 2.9. Tampilan awal software LabVIEW 2011
Pada LabVIEW ada 2 macam bentuk tampilan yaitu Block Diagram dan
Front Panel. Hubungan diantara kedua hal tersebut adalah setiap ikon control dan
indicator di front panel memiliki terminal yang saling berhubungan di block diagram.
Dengan kata lain, antara block diagram dan front panel telah saling terhubung satu
sama lain. Pada saat sebuah program di LabVIEW berjalan, nilai dari control
mengalir di block diagram, dan hasilnya menuju ke indicator.
27
Dalam pengkoneksian antara LabVIEW dengan device lain diluar komputer
digunakan sebuah driver untuk pengkoneksian tersebut.
Karena seperti bahasa
pemprograman lain, saat akan melakukan pengkoneksian antara komputer dengan
device lain diperlukan proses penginisialisasian perangkat keras yang digunakan.
Dan dikarenakan pada alat akuisisi data yang digunakan merupakan
komunikasi serial maka ada beberapa parameter penting yang harus diinisialisasi
dalam sistem akuisisi data menggunakan komunikasi serial, diantaranya:
•
I/O resource name,
•
baudrate,
•
data bits,
•
parity,
•
stop bits,
•
flow control,
•
delay before read.
Semua penginisialisasian ini bertujuan agar antara software dengan hardware
yang digunakan dapat sinkron atau cocok dalam melakukan pengiriman dan
penerimaan data tanpa harus ada kesalahan yang mengakibatkan data yang dibaca
atau dikirim tersebut mengalami kesalahan (error). Dan untuk alat akuisisi data yang
berbasis LabVIEW memilih menggunakan sistem komunikasi serial, umumnya akan
memiliki bentuk pemprogramman pada driver atau inisialisasi alat sebagai berikut :
28
Gambar 2.10. Tampilan program serial LabVIEW dalam block diagram
Gambar 2.11. Tampilan program serial LabVIEW dalam front panel
29
Setelah pengkoneksian antara alat akuisisi data yang dibuat dengan komputer atau
laptop dapat terkoneksikan dengan baik, data yang masuk ke LabVIEW akan diolah
hingga dapat menjadi sebuah tampilan atau visualisasi grafis agar dapat mendeteksi
tingkat pengukuran suatu parameter fisis seperti suhu, cahaya, dan lain sebagainya
tergantung yang diinginkan oleh penggunanya.
30
Download