1,2)
Pusat Penelitian Tenaga Listrik dan Mekatronik,
Lembaga Ilmu Pengetahuan Indonesia
Komp. LIPI Gd.20, Jl. Cisitu No.21/154D, Bandung 4015
Indonesia
riesdian@ yahoo.com2), ksansan@yahoo.com1)
Abstraksi
Mikrokontroler arduino sangat populer digunakan oleh kalangan mahasiswa maupun oleh para
pengembang karena pengoperasiannya yang mudah, memiliki modul-modul tambahan yang lengkap,
bahasa pemograman yang user friendly, refferensinya banyak, dan semua softwarependukung bersifat
open source. Mikrokontroler Arduino memiliki fitur untuk berkomunikasi dengan komputer pribadi (PC)
melalui komunikasi serial sehingga board arduino dapat dijadikan jembatan antara komputer dan
aktuatornya (Antarmuka). Sistem pengaturan real time pada komputer memerlukan software dan hardware
yang berkesesuaian satu sama lain. Pada tulisan ini software grafic user interface (GUI ) menggunakan
labview. Alasan menggunakan labview dikarenakan memiliki protokol yang langsung dapat menggunakan
board arduino tanpa harus harus sering memprogram board arduino melalui IDE arduino yang dikenal
dengan protokol firmata. Namun ada sedikit kekurangan dari board arduino yakni board hanya memiliki
fasilitas pengalamatan per bit, untuk aktuator yang bersifat on/off tidak terjadi masalah namun ketikan
dibutuhkan keluaran numerik biner maka dibutuhkan pengalamatan per port. Hasil akhir tulisan ini adalah
sebuah desain sistem real time kontroler and monitoring dengan keluaran dua buah port masing-masing
enam bit.
Keywords : Mikrokontroler Arduino, labview, real time kontroler, firmata
1. PENDAHULUAN
Sejak 1990-an, industri komputer berbasis PC, perangkat I / O, perangkat pemantauan, kontrol jaringan
yang terdiri dari sistem otomasi berbasis PC telah berkembang pesat dan menjadi realisasi cara penting
untuk murah otomasi industri. Hampir semua perusahaan besar dibidang industri menghapus pengendali
analog dan digital kemudian beralih untuk membentuk sistem kontrol PC industri. Sebagai PC berbasis
pengendali terbukti dapat diandalkan sebagai peralatan pengoperasian. Sistem kontrol berbasis PC mudah
untuk diinstal dan digunakan, dengan kemampuan diagnostik canggih untuk sistem integrator untuk
memberikan pilihan yang lebih fleksibel, dari perspektif, sistem kontrol PC jangka panjang dan biaya
perawatan yang rendah.
1. Penggunaan yang mudah dari Arduino tidak menuju kepada pembuatan sistem jadi yang asal-
asalan. Namun sebaliknya, dengan kemudahan tersebut pengembangan sistem dapat difokuskan
1
kepada alur kerja sistem yang lebih kompleks. Pengembang sistem tidak lagi perlu dan selalu
direpotkan dengan pengaturan-pengaturan register, fusebit, dll.
2. Hardware Arduino memiliki standar unik yaitu Shield form factor. Dengan standar ini, proses
untuk menghubungkan Arduino dengan modul eksternal (modul sensor, modul GPS, modul
Ethernet, modul I/O, dll.) menjadi jauh lebih mudah ditambah tidak perlu lagi menggunakan
kabel, karena modul-modul eksternal tersebut dapat dihubungkan hanya dengan menumpuknya di
atas modul Arduino.
3. Bahasa pemrograman Arduino mudah. Arduino menggunakan bahasa pemrograman tingkat tinggi
yang sudah mendukung fitur OOP (Object Oriented Programming). OOP ditujukan untuk
mempermudah serta membuat susunan pemrograman menjadi lebih terstruktur.
4. Arduino bersifat open source serta memiliki dukungan yang luar biasa dari komunitas
penggunanya. Karena Arduino bersifat open source, maka modifikasi/hack dapat dilakukan
sewaktu-waktu apabila diperlukan. Komunitas Arduino merupakan wadah kita untuk bertukar
informasi mengenai berbagai macam project Arduino dengan seluruh penggunanya.
Arduino Leonardo adalah papan mikrokontroler berbasis ATmega32u4 (datasheet ATmega32U4).
Arduino Leonardo memiliki 20 digital pin input/output (yang mana 7 pin dapat digunakan sebagai output
PWM dan 12 pin sebagai input analog), 16 MHz kristal osilator, koneksi micro USB, jack power suplai
tegangan, header ICSP, dan tombol reset. Ini semua yang diperlukan untuk mendukung mikrokontroler.
Namun pin tersebut bekerja secara bit atau indipenden terhadap pin yang lain (tidak bekerja secara
Byte/Port). Cukup dengan menghubungkannya ke komputer melalui kabel USB atau power dihubungkan
dengan adaptor AC-DC atau baterai untuk mulai mengaktifkannya.
Leonardo berbeda dari semua papan Arduino yang lainnya karena ATmega32u4 secara terintegrasi
(built-in) telah memiliki komunikasi USB, sehingga tidak lagi membutuhkan prosesor sekunder (tanpa chip
ATmega16U2 sebagai konverter USB-to-serial). Hal ini memungkinkan Arduino Leonardo yang terhubung
ke komputer digunakan sebagai mouse dan keyboard, selain bisa digunakan sebagai virtual (CDC)
serial/COM port.
Arduino diciptakan untuk para pemula bahkan yang tidak memiliki dasar bahasa pemograman sama
sekali karena menggunakan bahasa C++ yang telah dipermudah melalui library. Arduino menggunakan
software processing yang digunakan untuk menulis program kedalam Arduino. Processing sendiri
merupakan penggabungan antara bahasa C++ dan Java. Software Arduino ini dapat di-install di berbagai
operating system (OS) seperti : LINUX, Mac OS, Windows.
2
sebagainya. Pada block diagram, tool palette juga dipakai untuk mengatur dan menghubungkan
ikon.
3. Dalam membuat aplikasi VIs, harus diperhatikan tipe data tiap simbol agar data flow dapat
berjalan semestinya. Tipe data yang tersedia yaitu numerik, boolean dan string. Tipe data dari
sebuah simbol dapat diketahui dari warna node atau warna kabel ketika dihubungkan ke simbol
lainnya. Untuk tipe data numerik ditandai dengan warna oranye (untuk bilangan float) atau biru
(untuk bilangan integer), tipe data Boolean ditandai dengan warna hijau dan tipe data string
ditandai dengan warna merah muda.
LabVIEW banyak digunakan karena memiliki kelebihan. Beberapa kelebihan LabVIEW antara lain
pembuatan program di LabVIEW jelas dan mudah dipahami, karena berbentuk grafis, dengan instruksi
berbentuk ikon-ikon, yang dihubungkan dengan garis untuk menunjukkan aliran data, mirip flowchart,
Pembuatan program yang mudah, yaitu hanya dengan menarik keluar ikon instruksi yang sudah tersedia di
palet (kotak instruksi), dan menghubungkannya dengan garis ke ikon lain. Garis ini sama seperti variabel
pada bahasa pemograman teks. Dengan cara ini, LabVIEW menyederhanakan pembuatan program, karena
garis tersebut hanya akan terhubung apabila tipe datanya sesuai sehingga menghilangkan kebutuhan
manajemen memori dan deklarasi tipe data setiap variabel seperti dalam bahasa pemograman teks. Juga
tidak perlu mengingat nama instruksi, karena semua ditampilkan pada palet, Mempersingkat waktu
pembuatan program karena mudah dipahami dan mudah dibuat, LabVIEW didesain sebagai sebuah bahasa
program paralel (multicore) yang mampu menangani beberapa instruksi sekaligus dalam waktu bersamaan.
Hal ini sangat sulit dilakukan dalam bahasa program teks, karena biasanya bahasa program teks
mengeksekusi instruksinya secara berurutan per baris, satu demi satu. Dengan LabVIEW, pengguna dapat
membuat aplikasi eksekusi paralel ini secara mudahdengan menempatkan beberapa struktur loop secara
terpisah dalam block diagram, sifat modular LabVIEW memungkinkan pengguna untuk membuat program
yang kompleks dan rumit menjadi sederhana, yaitu dengan cara membuat subprogram, atau di LabVIEW
disebut subVI. Ikon-ikon dalam LabVIEW sebenarnya merupakansubVI. Beberapa subVI dapat
digabungkan menjadi sebuah subVI. subVI-subVI gabungan tersebut dapat digabungkan lagi menjadi
sebuah subVI lain, demikian seterusnya dengan tingkat hirerarki yang tidak terbatas.
2. PERANCANNGAN SISTEM
Pembuatan realtime kontrol dan monitoring sebenarnya bukan hal baru didunia elektronik maupun
informatika. Berbagai software dan harware banyak digunakan. Board arduino banyak digunakan pada
sistem kontrol stand alone maupun real time sistem. Pada tulisan ini dirancang sistem realtime kontrol
dengan board arduino sebagai Antarmuka sedangkan tampilan di layar komputer menggunakan software
LABVIEW. Protokol yang digunakan dalam berkomunikasi antara komputer dan arduino menggunakan
LABVIEW dapat menggunakan komunikasi serial biasa maupun firmata.
3
LIFA merupakan solusi dan dibutuhkan dalam sambungan koneksi data antara LabVIEW dengan board
Arduino. Biasanya komunikasi data dilakukan via USB tapi dapat juga dilakukan dengan menggunakan
Xbee atau juga dengan bluetooth.
4
tersebut diolah dan kemudian dikirim ke port i/o pada hardware mikrokontroler. Secara hardware gambaran
besar sisten dapat dilihat pada gambar dibawah ini.
5
Pada gambar 4 angka yang akan dikeluarkan menjadi output pada board Arduino dimasukan dalam form
numeric yang kemudian angka tersebut akan dibagi dua sebanyak enam kali atau kurang. Keluaran dari
fungsi pembagian ada dua yaitu hasil dan sisa. Hasil pembagian akan dibagi dua lagi untuk digit berikutnya
dan sisa pembagian akan dibangingkan apakah hasilnya satu atau nol. Jika sisa pembagian satu maka pin
arduino akan tinggi dan jika sisa pembagian hasilnya nol maka pin arduino akan rendah. Pada gambar 5
front panel dari LabView ketika numeric nol maka semua pin pada keluaran board arduino akan rendah.
Gambar 6 merupakan integrasi pemograman seluruh subsistem di labview, dimana terdapat pin yang
dideklarasi sebagai port. Pin tersebut berjumlah dua belas dan dibagi dua port masing-masing enam pin.
Karena sistem memiliki dua port maka fungsi konversi desimal ke biner juga harus dua buah.
3. KESIMPULAN
- Pemograman komunikasi antara antarmuka antara aktuator dan komputer dapat dilakukan dengan
board arduino sebagai antarmuka dan LabView sebagai GUI pada komputer.
- Protokol firmata lebih memudahkan dalam pemograman dibandingkan dengan protokol LIFA karena
pemograman hanya di sisi LabView sedangkan pemograman board arduino hanya dilakukan satu kali.
- Board arduino memiliki 20 pin yang tidak memiliki fitur pengalamatan port dapat dialamati seolah
olah memiliki dua buah port yang masing-masing memiliki lima pin dengan pemograman dilakukan di
LabView.
- Konversi bilangan desimal ke biner dapat dilakukan di LabView dengan metode matematis hal ini
dilakukan karena LabView tidak memiliki fitur konversi bilangan.
4. SARAN
- Pemograman sebaiknya jangan dilakukan sekaligus seluruh sistem sekali jalan alangkah lebih baik
dilakukan pembagian secara subsistem seperti pemograman komunikasi serial firmata, pemograman
konversi bilangan dan pemograman sisi board arduino
- Software aplikasi LabView merupakan software dengan berbagai jenis fungsi dan plugin maka
terkadang diperlukan instalasi tambahan jika ada beberapa fungsi yang belum berfungsi seperti LIFA,
VISA dan Firmata.
6
5. UCAPAN TERIMA KASIH
Terima kasih kami sampaikan pada penerbit atas kesempatan mempublikasikan hasil penelitian ini. Ucapan
yang sama ingin kami sampaikan pada rekan-rekan dari Transportation Department, Research Centre for
Electrical Power and Mechatronics, Indonesian Institute of Sciences Aam Muharam, Bambang Wahono,
Naili Huda, Arifin Nur, Amin, yanuandri P, Achmad P, Mulia Pratama W. Budi S, yang telah memberikan
bantuan dalam penelitian ini.
6. DAFTAR PUSTAKA
[1]. Muhammad Luthfil, 2014, Sistem Kontrol Industri Berbasis PC (Ch.11-Sistem Kontrol Proses)
[2]. Team Inovative Elektronics,Training Arduino, diakses july 2015
http://learn.innovativeelectronics.com/index.php?pg=learn-ie-arduino
[3]. Banzi, Massimo. 2009. Getting Started With Arduino. Amerika: O’Reilly.
[4]. Munadi, ANALISA FORWARD KINEMATIC PADA SIMULATOR ARM ROBOT 5 DOF
YANG MENGINTEGRASIKAN MIKROKONTROLER ARDUINO-UNO DAN LABVIEW,
Rotasi Jurnal Teknik Mesin, Available online at Website
http://ejournal.undip.ac.id/index.php/rotasi
[5]. Dian Artanto, 2012, Interaksi Arduino dan LabView mengulas mikrokontroler paling populer saat
ini, Penerbit PT Elex Media Komputindo, Jakarta
[6]. LabVIEW, 1998, “Data Acquisition Basics Manual,” National Instruments Corporation, Texas.