BAB II LANDASAN TEORI
2.1. Arduino Arduino didefinisikan sebagai sebuah platform elektronik yang open source, berbasis pada software dan hardware yang fleksibel dan mudah digunakan, yang ditujukan untuk seniman, desainer, hobbies dan setiap orang yang tertarik dalam membuat objek atau lingkungan yang interaktif (Artanto, 2012:1) [6]. 2.1.1. Pengenalan Arduino sebagai sebuah platform komputasi fisik (Physical Computing) yang open source pada board input ouput sederhana, yang dimaksud dengan platform komputasi fisik disini adalah sebuah sistem fisik hyang interaktif dengan penggunaan software dan hardware yang dapat mendeteksi dan merespons situasi dan kondisi. Menurut Artanto (2012:2) [6], kelebihan arduino dari platform hardware mikrokontroler lain adalah: 1. IDE Arduino merupakan multiplatform, yang dapat dijalankan di berbagai sistem operasi, seperti Windows, Macintosh dan Linux.
7
http://digilib.mercubuana.ac.id/
8
2. IDE Arduino dibuat berdasarkan pada IDE Processing, yang sederhana sehingga mudah digunakan. 3. Pemrograman arduino menggunakan kabel yang terhubung dengan port USB, bukan port serial. Fitur ini berguna karena banyak komputer yang sekarang ini tidak memiliki port serial. 4. Arduino adalah hardware dan software open source pembaca bisa mendownload software dan gambar rangkaian arduino tanpa harus membayar ke pembuat arduino. 5. Biaya hardware cukup murah, sehingga tidak terlalu menakutkan untuk membuat kesalahan. 6. Proyek arduino ini dikembangkan dalam lingkungan pendidikan sehingga bagi pemula akan lebih cepat dan mudah mempelajarinya. 7. Memiliki begitu banyak pengguna dan komunitas di internet dapat membantu setiap kesulitan yang dihadapi.
2.1.2. Sejarah Arduino Proyek Arduino dimulai pertama kali di Ovre, Italy pada tahun 2005. Tujuan proyek ini awalnya untuk membuat peralatan control interaktif dan modul pembelajaran bagi siswa yang lebih murah dibandingkan dengan prototype yang lain. Pada tahun 2010 telah terjual dari 120 unit Arduino. Arduino yang berbasis open source melibatkan tim pengembang. Pendiri arduino itu Massimo Banzi dan David Cuartielles, awalnya mereka memberi nama proyek itu dengan sebutan arduino dari ivrea tetapi seturut perkembangan zaman nama proyek itu diubah menjadi Arduino.
http://digilib.mercubuana.ac.id/
9
Arduino dikembangkan dari thesis hernando Barragan di desain interaksi institute Ivrea. Arduino dapat menerima masukan dari berbagai macam sensor dan juga dapat mengontrol lampu, motor dan aktuator lainnya. Mikrokontroler pada board arduino di program dengan menggunkan bahasa pemrograman arduino (based on wiring) dan IDE arduino (based on processing). Proyek arduino dapat berjalan sendiri atau juga bisa berkomunikasi dengan software yang berjalan pada komputer.
2.1.3. Hardware Papan Arduino merupakan papan mikrokontroler yang berukuran kecil atau dapat diartikan juga dengan suatu rangkaian berukuran kecil yang didalamnya terdapat komputer berbentuk suatu chip yang kecil. Pada Gambar 2.1. dapat dilihat sebuah papan Arduino dengan beberapa bagian komponen didalamnya.
Gambar 2.1.
Hardware Arduino Uno
http://arduino.cc/en/uploads/Main/ArduinoUnoBack.jpg
http://digilib.mercubuana.ac.id/
10
Pada hardware arduino terdiri dari 20 pin yang meliputi: a. 14 pin IO Digital (pin 0–13) Sejumlah pin digital dengan nomor 0–13 yang dapat dijadikan input atau output yang diatur dengan cara membuat program IDE. b. 6 pin Input Analog (pin A0–A5) Sejumlah pin analog bernomor A0–A5 yang dapat digunakan untuk membaca nilai input yang memiliki nilai analog dan mengubahnya ke dalam angka antara 0 dan 1023. c. 6 pin Output Analog (pin 3, 5, 6, 9, 10 dan 11) Sejumlah pin yang sebenarnya merupakan pin digital tetapi sejumlah pin tersebut dapat diprogram kembali menjadi pin output analog dengan cara membuat programnya pada IDE. Papan Arduino Uno dapat mengambil daya dari USB port pada komputer dengan menggunakan USB charger atau dapat pula mengambil daya dengan menggunakan suatu AC adapter dengan tegangan 9 volt. Jika tidak terdapat power supply yang melalui AC adapter, maka papan Arduino akan mengambil daya dari USB port. Tetapi apabila diberikan daya melalui AC adapter secara bersamaan dengan USB port maka papan Arduino akan mengambil daya melalui AC adapter secara otomatis.
2.1.4. Software Arduino Software arduino yang digunakan adalah driver dan IDE, walaupun masih ada beberapa software lain yang sangat berguna selama pengembangan arduino.
http://digilib.mercubuana.ac.id/
11
IDE atau Integrated Development Environment suatu program khusus untuk suatu komputer agar dapat membuat suatu rancangan atau sketsa program untuk papan Arduino. IDE arduino merupakan software yang sangat canggih ditulis dengan menggunakan java. IDE arduino terdiri dari: 1.
Editor Program Sebuah window yang memungkinkan pengguna menulis dan mengedit program dalam bahasa processing
2.
Compiler Sebuah modul yang mengubah kode program menjadi kode biner bagaimanapun sebuah mikrokontroler tidak akan bisa memahami bahasa processing.
3.
Uploader Sebuah modul yang memuat kode biner dari komputer ke dalam memory di dalam papan arduino Dalam bahasa pemrograman arduino ada tiga bagian utama yaitu struktur,
variabel dan fungsi (Artanto, 2012:27) [6]: 1. Struktur Program Arduino a. Kerangka Program Kerangka program arduino sangat sederhana, yaitu terdiri atas dua blok. Blok pertama adalah void setup ( ) dan blok kedua adalah void loop ( ). 1). Blok Void setup ( ) Berisi kode program yang hanya dijalankan sekali sesaat setelah arduino dihidupkan atau di-reset. Merupakan bagian persiapan atau instalasi program.
http://digilib.mercubuana.ac.id/
12
2). Blok void loop ( ) Berisi kode program yang akan dijalankan terus menerus. Merupakan tempat untuk program utama. b. Sintaks Program Baik blok void setup loop ( ) maupun blok function harus diberi tanda kurung kurawal buka “{“ sebagai tanda awal program di blok itu dan kurung kurawal tutup “}” sebagai tanda akhir program. 2. Variabel Sebuah program secara garis besar dapat didefinisikan sebagai instruksi untuk memindahkan angka dengan cara yang cerdas dengan menggunakan sebuah varibel. 3. Fungsi Pada bagian ini meliputi fungsi input output digital, input output analog, advanced I/O, fungsi waktu, fungsi matematika serta fungsi komunikasi. Pada proses Uploader dimana pada proses ini mengubah bahasa pemrograman yang nantinya dicompile oleh avr-gcc (avr-gcc compiler) yang hasilnya akan disimpan kedalam papan arduino. Avr-gcc compiler merupakan suatu bagian penting untuk software bersifat open source. Dengan adanya avr-gcc compiler, maka akan membuat bahasa pemrogaman dapat dimengerti oleh mikrokontroler. Proses terakhir ini sangat penting, karena dengan adanya proses ini maka akan membuat proses pemrogaman mikrokontroler menjadi sangat mudah. Berikut ini merupakan gambaran siklus yang terjadi dalam melakukan pemrogaman Arduino:
http://digilib.mercubuana.ac.id/
13
1.
Koneksikan papan Arduino dengan komputer melalui USB port.
2.
Tuliskan sketsa rancangan suatu program yang akan dimasukkan ke dalam papan Arduino.
3.
Upload sketsa program ke dalam papan Arduino melalui kabel USB dan kemudian tunggu beberapa saat untuk melakukan restart pada papan Arduino.
4.
Papan Arduino akan mengeksekusi rancangan sketsa program yang telah dibuat dan di-upload ke papan Arduino.
2.1.5. Melakukan Penginstalan Arduino Ke Komputer Untuk melakukan pemrogaman pada papan Arduino, disarankan untuk men-download IDE Arduino terlebih dahulu yang dapat diperoleh dari situs: www.arduino.cc/en/Main/Software. Dan kemudian pilih versi yang tepat untuk sistem operasi komputer yang digunakan. Setelah melakukan download, lakukanlah proses uncompress dengan cara melakukan double-click pada file tersebut. Proses ini secara otomatis akan membuat suatu folder yang bernama arduino-[version], contohnya seperti arduino-0012. Setelah melakukan penginstalan IDE Arduino pada komputer, tahap selanjutnya adalah harus melakukan penginstalan untuk driver. Fungsi utama penginstalan driver ini adalah agar komputer dapat melakukan komunikasi dengan papan Arduino melalui USB port.
http://digilib.mercubuana.ac.id/
14
2.1.6. Melakukan Penginstalan Driver Untuk Windows Koneksikan papan Arduino dengan komputer dan ketika Found New Hardware Wizard pada layar muncul, Windows secara otomatis akan mencoba menemukan terlebih dahulu driver tersebut pada halaman Windows Update. Windows XP akan meminta untuk memeriksa Windows Update, dan jika tidak ingin menggunakan Windows Update pilih menu “No,not at this time” dan tekan tombol Next. Dan pada layar selanjutnya, pilih menu “Install from a list or specific location” dan tekan tombol Next. Periksa layar berjudul “Include this location in the search” dan tekan tombol Browse. Kemudian pilih folder dimana Arduino sudah terinstal dan pilih folder Drivers\FTDIUSB Drivers untuk menetukan lokasinya dan tekan tombol OK dan Next pada layar tesebut. Windows Vista akan berusaha menemukan driver tersebut pada Windows Update, dan jika terjadi kegagalan dalam melakukan pencarian driver, maka lakukan pencarian secara manual pada folder Drivers\FTDIUSB Drivers. Proses pencarian driver secara manual memiliki dua prosedur yang harus dilewati, yang pertama komputer harus menginstal driver low-level terlebih dahulu dan yang kedua adalah menginstal bagian kode yang membuat papan Arduino terlihat seperti suatu serial port untuk komputer. Apabila driver telah terinstal, maka Arduino IDE dapat diaktifkan dan papan Arduino dapat digunakan pada komputer. Untuk tahap selanjutnya adalah harus selalu mengingat serial port komputer yang telah ditandai untuk papan Arduino.
http://digilib.mercubuana.ac.id/
15
2.1.7. Identifikasi Port Pada Windows Pada Windows, proses untuk melakukan identifikasi port sedikit lebih rumit dibandingkan dengan Machintosh. Pertama, buka layar Device Manager dengan cara memilih menu Start, lakukan right-clicking pada Computer (Vista) atau My Computer (XP), dan pilih Properties. Pada Windows XP, pilih Hardware dan kemudian pilih Device Manager. Sedangkan untuk Windows Vista, pilih Device Manager yang telah ada didalam daftar pada sebelah kiri layar. Cari Arduino device yang berada dibawah daftar “Port (COM & LPT)”. Arduino akan muncul sebagai suatu USB serial port dan akan memiliki suatu nama seperti COM3, hal ini dapat dilihat pada Gambar 2.3.
Gambar 2.2 Tampilan Device Manager Windows untuk menampilkan port
http://digilib.mercubuana.ac.id/
16
2.1.8. Melakukan Pengujian Pada Papan Arduino Kita ambil contoh kasus yang sederhana yaitu mengalami kegagalan pada saat melakukan percobaan “mengedipkan LED”. Mari cari tahu apa yang harus dilakukan. Sebelum menyalahkan percobaan yang dibuat, kita harus memastikan beberapa komponen sudah berada di dalam urutan yang benar. Sama halnya dengan seorang pilot suatu maskapai penerbangan yang menggunakan beberapa daftar pemeriksaan sebelum melakukan penerbangan, untuk memastikan bahwa pesawat dalam kondisi yang baik. Koneksikan papan Arduino ke USB port yang ada pada komputer dengan menggunakan kabel USB.
1. Pastikan komputer dalam kondisis menyala (mungkin kedengarannya konyol tapi hal ini pernah terjadi). Jika lampu PWR yang berwarna hijau pada papan Arduino menyala, berarti menandakan papan Arduino telah disuplai daya oleh komputer. Jika LED terlihat sangat redup, berarti ada suatu kesalahan dengan daya yang disuplai: coba ganti kabel USB dan lakukan pemeriksaan antara USB port pada komputer dan konektor USB pada papan Arduino. Jika masih mengalami kegagalan, ganti USB port yang lainnya pada komputer tersebut atau gunakan komputer yang lain. 2. Jika Arduino yang digunakan merupakan produk baru, lampu LED yang berwarna kuning akan mulai berkedip dengan pola menyala sedikit gugup. Pengujian ini merupakan pengujian yang dilakukan di pabrik untuk menguji papan Arduino.
http://digilib.mercubuana.ac.id/
17
3. Jika menggunakan power supply eksternal dan menggunakan jenis Arduino yang lama seperti Extreme, NG, atau Diecimila, pastikan bahwa power supply tersambung dengan benar dan jumper yang ditandai dengan SV1 menghubungkan dua pin yang terdekat dengan konektor power supply eksternal.
2.1.9. Melakukan Pengujian Rangkaian Pada Papan Percobaan Sekarang koneksikan papan Arduino dengan papan percobaan breadboard dengan memasang jumper dari 5 V. Kemudian untuk ground atau GND dikoneksikan ke rel positif dan negative yang berada pada papan percobaan breadboard. Jika LED PWR yang berwarna hijau tidak menyala, segera lepaskan semua kabel. Hal tersebut menandakan bahwa terdapat kesalahan besar dan terjadi hubung singkat (short circuit) pada rangkaian. Pada saat terjadinya hubung singkat, papan Arduino menarik terlalu banyak arus dan daya akan terputus untuk melindungi komputer. Jika terjadi short circuit, maka kita harus memulainya kembali dari proses penyederhanaan dan pembagian (simplification and segmentation). Setelah itu, yang harus dilakukan adalah memeriksa setiap sensor yang digunakan pada percobaan tersebut dan untuk memudahkan sebaiknya setiap pemeriksaan menggunakan satu sensor saja.
2.1.10. Masalah Dengan IDE Pada beberapa kasus terutama pada Windows, mungkin memiliki masalah yang berhubungan dengan penggunaan IDE Arduino.
http://digilib.mercubuana.ac.id/
18
Jika terdapat kesalahan saat membuka Arduino, gunakan metode alternatif dengan cara membuka file run.bat. Biasanya pemakai Windows juga sering mendapatkan masalah jika sistem operasi memberikan nomor COM10 atau yang benomor lebih untuk papan Arduino. Untuk mengatasi masalah ini, kita dapat menentukan nomor yang lebih rendah untuk Arduino dengan cara sebagai berikut: 1.
Buka layar Device Manager pada Windows dengan membuka menu Start. Lakukan klik kanan (right-click) pada layar komputer untuk Vista atau My Computer dan pilih menu Properties untuk XP. Kemudian pilih menu Device Manager.
2.
Cari serial device di dalam daftar “Ports (COM & LPT)”. Dan pilih serial device bernomor COM9 atau bernomor lebih rendah yang tidak digunakan dengan cara pilih menu Properties (right-click). Kemudian pada tab Port Setting, pilih menu Advanced dan lakukan pengaturan nomor pada COM10 atau yang bernomor lebih besar.
3.
Lakukan hal yang sama pada serial terminal USB yang digunakan untuk mengoperasikan Arduino. Jika beberapa saran tersebut masih tidak dapat membantu, atau jika
mengalami permasalahan yang belum dijelaskan pada laporan ini, untuk troubleshooting Arduino yang lebih lengkap dapat dilihat dari halaman situs: www.arduino.cc/en/Guide/Troubleshooting.
http://digilib.mercubuana.ac.id/
19
2.1.11. Troubleshooting Arduino Dalam membuat suatu eksperimen atau percobaan dengan Arduino, memungkinkan sekali terjadinya kegagalan dalam melakukan pengoperasiannya. Sedangkan kita dituntut harus dapat memperbaiki kegagalan yang terjadi agar Arduino dapat beroperasi dengan benar. Troubleshooting dan debugging merupakan seni yang sudah ada dari dulu. Dan agar didapatkan suatu hasil yang diinginkan oleh kita, maka kita harus memenuhi peraturan yang dimiliknya terlebih dahulu. Semakin sering kita menggunakan komponen elektronik dan Arduino dalam membuat suatu percobaan, maka kita akan semakin banyak belajar dan semakin banyak mendapatkan pengalaman. Oleh karena itu, jangan putus asa dengan permasalahan yang akan muncul dalam melakukan suatu percobaan karena semuanya akan menjadi lebih mudah apabila sudah dihadapi. Seperti semua percobaan Arduino yang telah dibuat, jika terdapat kesalahan baik yang berasal dari hardware maupun software maka disana kemungkinan akan ada lebih dari satu hal yang perlu dicari penyebab dari kesalahan tersebut. Ketika mencari suatu bug atau akar dari suatu masalah yang muncul seharusnya kita mengoperasikan Arduino meliputi tiga langkah berikut: 1. Pemahaman (understanding) Mencoba untuk memahami sebanyak mungkin bagaimana cara kerja dari setiap bagian komponen yang digunakan dan bagaimana bagian dari komponen tersebut telah memberikan pengaruh terhadap percobaan yang dibuat.
http://digilib.mercubuana.ac.id/
20
2. Penyederhanaan dan pembagian (simplification and segmentation) Orang Romawi kuno mengatakan devide et impera: divide and rule, atau dalam bahasa Indonesia berarti pembagi dan peraturan. Oleh karena itu, untuk membuat percobaan Arduino cobalah lakukan perincian (break down) terhadap percobaan ke dalam setiap komponennya dengan pemahaman yang kita miliki dan memperhitungkan dimana tanggung jawab dari setiap komponen tersebut. 3. Pemisahan dan kepastian (exclusion and certainty) Ketika melakukan investigasi, melakukan pengujian secara terpisah pada setiap komponen sangat dibutuhkan untuk memastikan bahwa setiap komponen bekerja dengan benar. Dengan melakukan tahap ini akan membangun rasa keyakinan pada diri kita sendiri terhadap bagian percobaan mana yang bekerja dengan benar maupun yang tidak. Debugging adalah istilah yang telah digunakan software komputer untuk menggambarkan suatu proses tidak bekerja dengan benar. Konon dikatakan bahwa istilah tersebut dipakai untuk pertama kalinya oleh Garce Hopper pada sekitar tahun 1940-an. Dimana pada waktu itu, komputer yang sebagian besarnya merupakan peralatan elektromekanis, ada yang berhenti beroperasi karena ada serangga yang terjebak di dalam sistem mekaniknya. Tetapi pada saat ini, bug bukan berbentuk fisik lagi, melainkan suatu virtual yang tidak dapat dilihat. Oleh karena itu, terkadang dibutuhkannya suatu proses indentifikasi yang panjang dan membosankan dalam menemukan bug.
http://digilib.mercubuana.ac.id/
21
2.2. LabVIEW
(Laboratory
Virtual
Instrumentation
Engineering
Workbench) LABVIEW kepanjangan dari “Laboratory Virtual Instruments Engineering Workbench”merupakan perangkat lunak komputer untuk pemrosesan dan penampilan data dalah hal akuisisi data, kendali instrumentasi, serta otomasi industri. Bahasa pemograman yang digunakan di dalam LABVIEW adalah G-Code, yang adalah sebuah bahasa pemograman berupa aliran data. Pelaksanaannya ditentukan oleh struktur diagram blok yang berbeda yang dihubungkan oleh programmer dengan menggambar jalur / wire. Teknik pemograman pada labview pada dasarnya sama dengan pemogramam perangkat lunak lainnya seperti halnya pengulangan / looping, percabangan / branch, dan lain-lain. Berikut beberapa piranti dasar yang umum digunakan pada LABVIEW :
Merupakan wujud grafik untuk kendali dan indikator data bertipe boolean yaitu hanya dua keadaan benar dan salah. Boolean data masukan berupa push button, slide switch, button, LED, dll. Merupakan kontol dan indikator data betipe numeric atau bilangan yang artinya data merupakan variabel angka .Numeric dapat berupa Numeric control, knob, dial, slider, dll.
http://digilib.mercubuana.ac.id/
22
Merupakan bentuk grafik untuk komunikasi antara LabVIEW dan Microcontroller Arduino, dalam palet Arduino terdapat fungsi Init Arduino, Set Digital Pin Mode, Digital Write Pin, Digital Read Pin, PWM Write Pin, Digital Read Port, Close Arduino, dll. Init dan Close merupakan fungsi untuk menginisialisasi com port dan jenis Arduino yang dipakai. “Local Variable” berfungsi untuk memanggil masukan atau keluaran data yang telah ada sebelumnya pada program tersebut. “Global Variable” mempunyai fungsi yang sama dengan Local Variabel, bedanya Global variable membuat data masukan yang baru, namun cariabel tersebut belum ada di program yang digunakan. Pada penggunaanya global variabel membentuk sub program yang berada diluar program. Merupakan wujud grafik dari suatu bentuk pengulangan dimana akan terus terjadi pengulangan selama belum mendapat intruksi untuk berhenti / biasa dikenal dengan istilah while loop. Merupakan wujud grafik dari suatu bentuk pengulangan dimana akan terus terjadi pengulangan sebanyak yang diinginkan / biasa dikenal dengan istilah for loop. Merupakan wujud grafik dari suatu bentuk percabangan bernama
“case
structure”
dimana
http://digilib.mercubuana.ac.id/
akan
melakukan
23
percabangan sesuai dengan statement yang akan diberikan. Dalam
pemograman
pseudo
berwujud
“IF”.
Apabila
digambarkan dengan bagan alur / flow chart diwakilkan dengan bentuk “belah ketupat” atau juga dengan keputusan. Merupakan wujud grafik untuk mengeksekusi program lebih dari satu secara sekuensial, Framesdalam “Flat sequence” mengeksekusi program dari kanan ke kiri. Data bergerak setelah frame sebelumnya telah tereksekusi, oleh karena itu masukan dari suatu frame sangat bergantung dari frame sebelumnya. Sama dengan Flat sequence, “Stacked Sequence” berfungsi untuk mengeksekusi secara berurutan, bedanya flat sequence bergeser ke kanan, sedangkan stacked sequence mengeksekusi pada tempat yang sama tapi dengan frame yang berbeda. Array terdiri dari elemen dan dimensi. Elemen adalah kumpulan yang yang membentuk array, sedangkan dimensi adalah panjang , atau lebar data dari array. Array dapat berbentuk satu dimensi atau dua dimensi, untuk satu dimensi array hanya mempunyai panjang dari kiri ke kanan, atau dari atas kebawah, sedangkan dua dimensi array mempunyai dimensi panjang dikali lebar elemen. Array dapat berupa boolean, string, gelombang, ataupun cluster.
http://digilib.mercubuana.ac.id/
24
Merupakan wujud grafik untuk memanipulasi data array seperti index array, build array,array size, array max and min, delete from array, dll. Merupakan wujud grafik dari pencacah waktu bernama “wait until next ms multiple”. Dapat menggunakan piranti ini untuk sinkronisasi
aktivitas
yang
sedang
terjadi
di
dalam
pengulangan. Merupakan wujud grafik dari pecacah waktu bernama “tick count” yang akan terus mencacah dengan satuan waktu millisecond (ms). Merupakan wujud grafik untuk perhitungan aritmatika dasar, penjumlahan, pengurangan, perkalian, pembagian, dll. Merupakan wujud grafik dari gerbang-gerbang logika seperti and, or, nor, nand, ex nor, ex nand, not, dll.
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).
http://digilib.mercubuana.ac.id/
25
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 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
http://digilib.mercubuana.ac.id/
26
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
dipahami,
LabVIEW
jelas
dan
mudah
karena berbentuk grafis, dengan instruksi berbentuk
ikon-ikon, yang dihubungkan dengan garis atau kawat (wire) untuk menunjukan aliran data, mirip seperti flowchart. 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
http://digilib.mercubuana.ac.id/
27
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 integrasidengan 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 Mindstorm.
6. Dengan mempelajari
LabVIEW, dapat menjembatani dunia
pendidikan atau akademisi dengan dunia industri. Sebab jika
http://digilib.mercubuana.ac.id/
28
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
membuat
satu. aplikasi
Dengan
LabVIEW,
eksekusi
paralel
penggunanya
secara
mudah
dapat 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. Pada gambar 2.3 dapat dilihat tampilan awal software LabVIEW :
http://digilib.mercubuana.ac.id/
29
Gambar 2.3. 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. Dalam pengkoneksian antara LabVIEW
dengan device lain diluar
komputer digunakan sebuah driver untuk pengkoneksian tersebut. Karena seperti
http://digilib.mercubuana.ac.id/
30
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 sebagaimana pada gambar berikut :
http://digilib.mercubuana.ac.id/
31
Gambar 2.4. Tampilan program serial LabVIEW dalam block diagram
Gambar 2.5. Tampilan program serial LabVIEW dalam front panel 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.
http://digilib.mercubuana.ac.id/
32
2.3. Power Supply Pengertian Power Supply adalah sebagai alat atau perangkat keras yang mampu menyuplai tenaga atau tegangan listrik secara langsung dari sumber tegangan listrik ke tegangan listrik yang lainnya. Range tegangan yang dimilikinya bisa berupa tegangan AC (misal : 120/240 Vac) maupun tegangan DC (misal : 24 V DC). Disini Power Supply digunakan sebagai penyedia daya untuk Arduino,
motor stepper dan sensor infrared photodiode. Dapat dilihat pada
gambar 2.6 :
Gambar 2.6 Power Supply
2.4. Comparator LM339 Comparator adalah sebuah rangkaian yang dapat membandingkan besarnya tegangan input. Comparator tegangan biasanya menggunakan op-amp sebagai piranti utama dalam rangkaian.
http://digilib.mercubuana.ac.id/
33
Ada dua jenis comparator tegangan, yaitu comparator tegangan sederhana, dan comparator tegangan dengan histerisis. Untuk comparator sederhana dapat dilihat pada Gambar 2.7. Comparator yang digunakan adalah jenis LM339. Gambar pinout IC LM339 bisa dilihat pada Gambar 2.8
Gambar 2.7 Comparator sederhana
Gambar 2.8 Pin connection LM339
http://digilib.mercubuana.ac.id/
34
2.5
Motor DC Motor DC adalah motor listrik yang bergerak pada arus lisrik direct current
(DC) atau listrik-arus-searah. Secara garis besar, jenis motor DC dapat dibagi menjadi dua: 1. Motor DC bersikat 2. Motor DC tanpa sikat Persamaan dari kedua jenis motor DC tersebut adalah memiliki dua bagian utama
:
Rotor yaitu
bagian
yang
berputar,
dan stator
yang
diam.
Sedangkan perbedaan-nya adalah, pada jenis motor DC bersikat rotor-nya bersifat elektro-magnetik dan bagian stator-nya bersifat magnet-alami, sedangkan pada motor DC tanpa sikat hal tersebut berkebalikan.
Gambar 2.9 Bagian-bagian pada motor DC (http://depokinstruments.com.2012) [13]
Gambar 2.10 Kaidah tangan kanan Lorentz (http://depokinstruments.com.2012) [13]
http://digilib.mercubuana.ac.id/
35
Gambar 2.11 Ilustrasi kaidah tangan kanan pada motor DC bersikat (http://depokinstruments.com.2012) [13]
Beda potensial (tegangan) antara dua terminal akan mengalirkan arus listrik dari positif (+) ke negatif (-) melalui terminal – sikat (brush) – lilitan (windings) tembaga seperti terlihat pada Gambar 3, arus listrik diilustrasikan oleh arah panah merah (I). Kemudian mengikuti kaidah tangan kanan, karena ada arus listrik yang mengalir pada lilitan dalam medan-magnet-tetap, maka akan dihasilkan gaya Lorentz seperti pada Gambar 3 yang d. Proses inilah yang secara terus menerus berlangsung pada motor dc yang menyebabkannya berputar selama ada beda potensial pada terminal-nya. Semakin besar beda potensial pada kedua terminalnya, maka akan semakin besar arus listrik yang mengalir pada lilitan, dengan demikian semakin besar pula gaya Lorentz yang dihasilkan dan motor pun akan berputar semakin cepat. 2.6
Pulse Width Modulation (PWM) Pulse Width Modulation (PWM) secara umum adalah sebuah cara untuk
memanipulasi lebar sinyal yang dinyatakan dengan pulsa dalam suatu perioda, untuk mendapatkan tegangan rata-rata yang berbeda. Beberapa Contoh aplikasi
http://digilib.mercubuana.ac.id/
36
PWM adalah pemodulasian data untuk telekomunikasi, pengendalian daya atau tegangan yang masuk ke beban, regulator tegangan, audio effect dan penguatan, serta aplikasi-aplikasi lainnya. 2.6.1
Pengertian PWM (Pulse Width Modulation)
Gambar 2.12 Sinyal PWM (Prayogo, Yudito. 2012) [10] PWM (Pulse width Modulation) sendiri terbagi menjadi 2 jenis, yaitu : 1. Analog Pembangkitan sinyal PWM yang paling sederhana adalah dengan cara membandingkan sinyal gigi gergaji sebagai tegangan pembawa dengan tegangan referensi menggunakan rangkaian op-amp comparator.
[Persamaan 2.1]
2. Digital Pada metode digital setiap perubahan PWM dipengaruhi oleh resolusi dari PWM itu sendiri. Misalkan PWM digital 8 bit berarti PWM tersebut memiliki resolusi 28= 256, maksudnya nilai keluaran PWM inimemiliki 256 variasi, variasinya
http://digilib.mercubuana.ac.id/
37
mulai dari 0 – 255 yang mewakili duty cycle 0 – 100% dari keluaran PWM tersebut. 2.6.2 Konsep Dasar PWM Sinyal PWM pada umumnya memiliki amplitudo dan frekuensi dasar yang tetap, namun memiliki lebar pulsa yang bervariasi. Lebar Pulsa PWM berbanding lurus dengan amplitudo sinyal asli yang belum termodulasi. Artinya, Sinyal PWM memiliki frekuensi gelombang yang tetap namun duty cycle bervariasi(antara 0% hingga 100%). Pulse Width Modulation (PWM) merupakan salah satu teknik untuk mendapatkan signal analog dari sebuah piranti digital. Sebenarnya sinyal PWM dapat dibangkitkan dengan banyak cara, dapat menggunakan metode analog dengan menggunakan rankaian op-amp atau dengan menggunakan metode digital. Dengan metode analog setiap perubahan PWM-nya sangat halus, sedangkan menggunakan metode digital setiap perubahan PWM dipengaruhi oleh resolusi dari PWM itu sendiri. Resolusi adalah jumlah variasi perubahan nilai dalam PWM tersebut. Misalkan suatu PWM memiliki resolusi 8 bit berarti PWM ini memiliki variasi perubahan nilai sebanyak 28 = 256 variasi mulai dari 0 – 255 perubahan nilai yang mewakili duty cycle 0 – 100% dari keluaran PWM tersebut.
http://digilib.mercubuana.ac.id/
38
Gambar 2.13 Duty Cycle dan Resolusi PWM (Prayogo, Yudito. 2012) [10] 2.6.3
Perhitungan Duty Cycle PWM Dengan cara mengatur lebar pulsa “on” dan “off” dalam satu perioda
gelombang melalui pemberian besar sinyal referensi output dari suatu PWM akan didapat duty cycle yang diinginkan. Duty cycle dari PWM dapat dinyatakan sebagai : [Persamaan 2.2]
Duty cycle 100% berarti sinyal tegangan pengatur motor dilewatkan seluruhnya. Jika tegangan catu 100V, maka motor akan mendapat tegangan 100V. pada duty cycle 50%, tegangan pada motor hanya akan diberikan 50% dari total tegangan yang ada, begitu seterusnya. Dapat dilihat pada gambar berikut :
http://digilib.mercubuana.ac.id/
39
Gambar 2.14 Lebar Pulsa Duty Cycle (Prayogo, Yudito. 2012) [10] Perhitungan Pengontrolan tegangan output motor dengan metode PWM cukup sederhana.
Gambar 2.15 Perhitungan Duty Cycle (Prayogo, Yudito. 2012) Dengan menghitung duty cycle yang diberikan, akan didapat tegangan output yang dihasilkan. Sesuai dengan rumus yang telah dijelaskan pada gambar. [Persamaan 2.3]
Average voltage merupakan tegangan output pada motor yang dikendali oleh sinyal PWM. a adalah nilai duty cycle saat kondisi sinyal “on”. b adalah nilai duty cycle saat kondisi sinyal “off”. V full adalah tegangan maximum pada motor. Dengan menggunakan rumus diatas, maka akan didapatkan tegangan output sesuai dengan sinyal kendali PWM yang dibangkitkan.
http://digilib.mercubuana.ac.id/
40
2.7. Driver Motor DC Driver motor merupakan suatu rangkaian khusus yang memiliki fungsi untuk mengatur arah ataupun kecepatan pada motor DC. Perlunya rangkaian driver motor ini dikarenakan pada umumnya suatu motor DC membutuhkan arus lebih dari 250mA untuk beberapa IC contohnya NE555, ATMEGA 16 dan IC seri 74 tidak bisa memberikan arus lebih dari nilai tersebut. Jika motor langsung dihubungkan ke IC, maka hal ini akan menyebabkan kerusakan pada IC tersebut. Driver motor yang digunakan pada perancangan robot micromouse yaitu IC tipe L298N. IC L298N adalah IC yang didesain khusus sebagai driver motor DC dan dapat dikendalikan dengan rangkaian TTL maupun mikrokontroler. Motor DC yang dikontrol dengan driver IC L298N dapat dihubungkan ke ground maupun ke sumber tegangan positif karena di dalam driver L298N 20ontro driver yang digunakan adalah totem pool. Dalam 1 unit chip IC L298N terdirsi dari 4 buah driver motor DC yang berdiri sendiri-sendiri dengan kemampuan mengalirkan arus 1 Ampere tiap drivernya. Sehingga dapat digunakan untuk membuat driver H-bridge untuk 2 buah motor DC. Gambar 2.16 berikut menunjukan Konstruksi pin driver motor L298N.
http://digilib.mercubuana.ac.id/
41
Gambar 2.16 IC L298N Fungsi Pin Driver Motor L298N antara lain : 1. Pin EN (Enable, EN1.2, EN3.4) berfungsi untuk mengijinkan driver menerima perintah untuk menggerakan motor DC. 2. Pin Input (IN1, IN2, IN3, IN4) adalah pin input sinyal kendali motor DC. 3. Pin Output (OUT1, OUT2, OUT3, OUT4) adalah jalur output masing- masing driver yang dihubungkan ke motor DC. 4. Pin VCC (VCC1, VCC2) adalah jalur input tegangan sumber driver motor DC, dimana VCC1 adalah jalur input sumber tegangan rangkaian kontrol dirver dan VCC2 adalah jalur input sumber tegangan untuk motor DC yang dikendalikan. 5. Pin GND adalah jalur yang harus dihubungkan ke ground, pin GND ini ada 4 buah yang berdekatan dan dapat dihubungkan ke sebuah pendingin kecil.. Pengaruh logic in1 dan logic in2 terhadap kondisi motor dijelaskan pada table 2.1.
http://digilib.mercubuana.ac.id/
42
Tabel 2.1 Arah putaran motor IN1
IN2
Kondisi Motor
0
0
fast motor stop
0
1
putar searah jarum jam
1
0
putar berlawanan arah jarum jam
1
1
fast motor stop
Jika diinginkan motor berputar searah jarum jam, maka pin mikrokontroler PD6 (IN1) diberi logika low dan PD7 (IN2) diberi logika high. Sedangkan EN1 dihubungkan dengan output PWM mikrokontroler (PD4). (I putu Giovanni Elizer,
2014.
Merancang
Driver
Motor
DC.
(http://www.geyosoft.com
/2014/merancang-driver-motordc)
2.8. Driver Motor Stepper Driver motor stepper yang digunakan untuk menghubungkan motor stepper dengan LabVIEW menggunakan driver Pololu A4988. Pada Gambar 2.17. dapat dilihat penampakan hardware driver pololu A4988.
Gambar 2.17 Pololu A4988
http://digilib.mercubuana.ac.id/
43
Driver Pololu A4988 merupakan driver motor microstepping yang lengkap untuk mpengoperasiannya. Dirancang untuk operasi motor stepper bipolar di penuh, setengah, empat, delapan, ataupun di step mode keenam belas. Sehingga driver A4988 cocok untuk diaplikasian di mikroprosesor yang kompleks ekalipun. 2.9. Sensor Infra Red (infra merah) Cahaya inframerah merupakan cahaya yang tidak tampak. Jika dilihat dengan spektroskop cahaya maka radiasi cahaya inframerah akan terlihat pada spektrum elektromagnet dengan panjang gelombang di atas panjang gelombang cahaya merah. Radiasi inframerah memiliki panjang gelombang antara 700 nm sampai 1 mm dan berada pada spektrum berwarna merah. Dengan panjang gelombang ini maka cahaya inframerah tidak akan terlihat oleh mata namun radiasi panas yang ditimbulkannya masih dapat dirasakan/dideteksi. Pada dasarnya komponen yang menghasilkan panas juga menghasilkan radiasi inframerah termasuk tubuh manusia maupun tubuh binatang. Cahaya inframerah, walaupun mempunyai panjang gelombang yang sangat panjang tetap tidak dapat menembus bahan-bahan yang tidak dapat melewatkan cahaya yang nampak sehingga cahaya inframerah tetap mempunyai karakteristik seperti halnya cahaya yang nampak oleh mata. Sensor Infra Merah terdiri atas 2 buah komponen yaitu InfraLed sebagai penghasil cahaya inframerah dan Photo dioda sebagai penerima cahaya inframerah. Bentuk dari InfraLed sama seperti bentuk LED biasa tetapi apabila diberi tegangan tidak terlihat adanya pancaran cahaya seperti yang dihasilkan oleh LED biasa. Pancaran cahaya dari InfraLed hanya dapat terlihat jika menggunakan Kamera saja. Bentuk dari Photo Dioda sama seperti bentuk LED biasa tetapi
http://digilib.mercubuana.ac.id/
44
apabila diberi tegangan tidak akan dapat memancarkan cahaya. Dibawah ini tampilan fisik dan simbol Photo Dioda :
Gambar 2.18 Bentuk fisik Infraled (kiri) dan Photodioda (kanan)
Gambar 2.19 Simbol dari Infraled (kiri) dan Photodioda (kanan)
Lambang Infraled mirip seperti Lambang dari LED biasa hanya saja terdapat lingkaran yang melingkari Lambang Diodanya yang berada di tengah. Tanda Panah diatas menandakan bahwa InfraLed dapat memancarkan cahaya juga. Lambang Photodioda sama dengan Lambang InfraLed tetapi Tanda panahnya bukan keluar, melainkan masuk yang menandakan bahwa Photo Dioda bersifat menerima cahaya. Photo Dioda dipasang terbalik yaitu kaki Anoda dipasang ke Ground & kaki Katoda diberi tegangan melalui Resistor 4,7kΩ. Kaki
http://digilib.mercubuana.ac.id/
45
Katoda tersebut yang dapat digunakan sebagai Output ke Mikrokontroller. Sehingga dapat dikatakan sensor inframerah dalam kasus ini digunakan sebagai mata untuk mendeteksi jika pintu berangkas terbuka.
2.10. Motor Stepper Motor stepper adalah alat yang mengubah pulsa listrik yang diberikan menjadi gerakan motor discret (berlainan) yang disebut step (langkah). Satu putaran motor memerlukan 360 derajat dengan jumlah langkah yang tertentu perderjatnya. Ukuran kerja dari motor stepper biasanya diberikan dalam jumlah langkah per- putaran per-detik. Motor stepper mempunyai kecepatan dan torsi yang rendah namun memiliki kontrol gerakan posisi yang cermat, hal ini dikarenakan motor stepper memiliki
beberpa segment kutub
kumparan.
Motor ini sering kita gunakan untuk menggerakan lengan robot, gerak linier plotter. Gambar dari motor stepper terlihat pada Gambar 2.20
Gambar 2.20 Motor Stepper
http://digilib.mercubuana.ac.id/
46
Pada dasarnya ada dua jenis motor stepper
yaitu bipolar dan unipolar,
sebuah motor stepper berputar 1 step apabila terjadi perubahan arus pada koilkoilnya, mengubah pole-pole magnetik disekitar pole-pole stator. Perbedaan utama antara bipolar dan unipolar 1. Bipolar: a.
Arus pada koil dapat berbolak-balik untuk mengubah arah putaran
motor. b.
Lilitan motor hanya satu dan dialiri arus dengan arah bolak-balik.
2. Unipolar: a.
Arus mengalir satu arah, dan perubahan arah motor tergantung dari
lilitan (koil) yang dialiri arus. b.
Lilitan terpisah dalam dua bagian dan masing-masing bagiannya
hanya dilewati arus dalam satu arah saja. Kelemahan jenis bipolar adalah bahwa rangkaian drivernya lebih kompleks, karena harus dapat menglirkan arus dalam dua arah melalui koil yang sama. Sedangkan jenis unipolar, selain motor stepper tersebut lebih mudah diperoleh di pasaran juga memerlukan rangkaian driver yang lebih sederhana. Proses
pengendalian
motor
stepper
unipolar
dilakukan
dengan
menghubungkan kutub-kutub motor ke ground secara begantian. Kutub motor yang berhubungan dengan bersangkutan.
Maka
ground
akan
mengaktifkan
koil
yang
dengan mengaktifkan urutan yang tepat, motor stepper
dapat bergerak secara full stepping maupun half stepping baik searah maupun
http://digilib.mercubuana.ac.id/
47
berlawanan dengan jarum jam. Jika motor stepper bergerak 1.8 derajat atau step pada mode full stepping , maka pada mode half stepping motor dapat digerakkan sebesar 0.9 derajat atau step. Pengaturan kutub-kutub motor dan proses gerak motor stepper dapat dipahami melalui contoh Tabel 2.2, Tabel 2.3 dan Tabel 2.4. Tabel 2.2 Mode Full Step Motor Stepper K Fasa
A
B u C
D
t
s
u 1
ON
ON OFF b
OFF
K u t u b OFF ON ON
2
3
OFF
OFF
Prose
ON
OFF
ON
http://digilib.mercubuana.ac.id/
48
4
ON
OFF
OFF
ON
Tabel 2.3 Mode Full Step Motor Stepper Kutub Fasa
A
B
C
D
1
ON
OFF
OFF
OFF
2
OFF
ON
OFF
OFF
3
OFF
OFF
ON
OFF
http://digilib.mercubuana.ac.id/
Proses
49
4
OFF
OFF
OFF
ON
Tabel 2.4 Mode Half Step Motor Stepper Kutub Fasa
A
B
C
D
1
ON
OFF
OFF
OFF
2
ON
ON
OFF
OFF
http://digilib.mercubuana.ac.id/
Proses
50
3
OFF
ON
OFF
OFF
4
OFF
ON
ON
OFF
5
OFF
OFF
ON
OFF
6
OFF
OFF
ON
ON
http://digilib.mercubuana.ac.id/
51
7
OFF
OFF
OFF
ON
8
OFF
OFF
ON
OFF
2.11. Barcode Scanner Barcode scanner adalah alat yang digunakan untuk membaca kode barcode. Sistem kerja barcode scanner hampir sama dengan inputan pada
keyboard
tinggal menghubungkan barcode ke PS2 connector
kemudian komputer sudah menganggap barcode scanner tersebut adalah keyboard tanpa adanya instalasi dr iver. Perbedaan barcode scanner dengan keyboard adalah barcode scanner membaca sebuah kode barcode kemudian memasukkan kode tersebut ke dalam komputer dengan menambahkan karakter enter. Cara kerjanya yaitu dengan mengibaskan cahaya infra merah terhadap barcode yang tertera pada produk tersebut. Sedangkan
cara
penggunaannya
dipegang
langsung
kemudian
dengan menekan tombol on-off secara manual, barcode scanner juga dapat
http://digilib.mercubuana.ac.id/
52
digunakan secara otomatis (autoscan), yaitu dengan meletakkan barcode scanner di atas stand (dudukan barcode
scanner),
kemudian
barcode
scanner diatur ke mode auto scan. Apabila kode barcode didekatkan pada barcode scanner maka barcode scanner akan secara otomatis membaca. Ada dua sistem koneksi alat pembaca barcode terhadap pengolahan data barcode pada komputer, yaitu sistem keyboard wedge dan sistem output RS232. Kedua sistem ini menerjemahkan hasil pembacaan barcode sebagai masukan (input) dari keyboard. Biasanya menggunakan port serial pada komputer. Sebagai perantara keduanya, yaitu software wedge yang akan mengalamatkan bacaan barcode ke software pengolah databarcode tersebut.
Gambar 2.21 Barcode scanner
http://digilib.mercubuana.ac.id/