1. Koneksikan papan Arduino dengan komputer melalui USB port
2.3.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. 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.
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.
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
15
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. Masalah dengan IDE, pada beberapa kasus terutama pada Windows, mungkin memiliki masalah yang berhubungan dengan penggunaan IDE Arduino. 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.
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:
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. kita miliki dan memperhitungkan dimana tanggung jawab dari setiap komponen tersebut.
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.
17
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.
2.4 Mikrokontroler
Mikrokontroler merupakan suatu IC yang di dalamnya berisi CPU, ROM, RAM, dan I/O. Dengan adanya CPU tersebut maka mikrokontroler dapat melakukan proses berfikir berdasarkan program yang telah diberikan kepadanya. Mikrokontroler banyak terdapat pada peralatan elektronik yang serba otomatis, mesin fax, dan peralatan elektronik lainnya. Mikrokontroler dapat disebut pula sebagai komputer yang berukuran kecil yang berdaya rendah sehingga sebuah baterai dapat memberikan daya. Mikrokontroler terdiri dari beberapa bagian seperti yang terlihat pada gambar di bawah ini :
Gambar 2.3 Bagian Mikrokontroler
Pada Gambar 2.3 di atas tampak suatu mikrokontroler standar yang tersusun atas komponen-komponen sebagai berikut :
A. Central Processing Unit (CPU)
CPU merupakan bagian utama dalam suatu mikrokontroler. CPU pada mikrokontroler ada yang berukuran 8 bit ada pula yang berukuran 16 bit. CPU ini akan membaca program yang tersimpan di dalam ROM dan melaksanakannya.
B. Read Only Memory (ROM)
ROM merupakan suatu memori (alat untuk mengingat) yang sifatnya hanya dibaca saja. Dengan demikian ROM tidak dapat ditulisi. Dalam dunia mikrokontroler ROM digunakan untuk menyimpan program bagi mikrokontroler tersebut. Program tersimpan dalm format biner (‗0‘ atau ‗1‘). Susunan bilangan biner tersebut bila telah terbaca oleh mikrokontroler akan memiliki arti tersendiri.
C. Random Acces Memory (RAM)
Berbeda dengan ROM, RAM adalah jenis memori selain dapat dibaca juga dapat ditulis berulang kali. Tentunya dalam pemakaian mikrokontroler ada semacam data yang bisa berubah pada saat mikrokontroler tersebut bekerja. Perubahan data tersebut tentunya juga akan tersimpan ke dalam memori. Isi pada RAM akan hilang jika catu daya listrik hilang.
D. Input / Output (I/O)
Untuk berkomunikasi dengan dunia luar, maka mikrokontroler menggunakan terminal I/O (port I/O), yang digunakan untuk masukan atau keluaran.
E. Komponen lainnya
Beberapa mikrokontroler memiliki timer/counter, ADC (Analog to Digital Converter), dan komponen lainnya. Pemilihan komponen tambahan yang sesuai dengan tugas mikrokontroler akan sangat membantu perancangan sehingga dapat mempertahankan ukuran yang kecil. Apabila komponen komponen tersebut belum ada pada suatu mikrokontroler, umumnya komponen tersebut masih dapat ditambahkan pada sistem mikrokontroler melalui port-portnya.
2.5. Bahasa C
Bahasa C adalah bahasa pemrograman yang dapat dikatakan berada antara bahasa tingkat rendah (bahasa yang berorientasi pada mesin) dan bahasa tingkat tinggi (bahasa yang berorientasi pada manusia). Seperti yang diketahui, bahasa tingkat tinggi
19
mempunyai kompatibilitas antara platform. Karena itu, amat mudah untuk membuat program pada berbagai mesin. Berbeda halnya dengan menggunakan bahasa mesin, sebab setiap perintahnya sangat bergantung pada jenis mesin. Pembuat bahasa C adalah Brian W. Kernighan dan Dennis M. Ritchie pada tahun 1972. C adalah bahasa pemrograman terstruktur, yang membagi program dalam bentuk blok. Tujuannya untuk memudahkan dalam pembuatan dan pengembangan program. Program yang ditulis dengan bahasa C mudah sekali dipindahkan dari satu jenis program ke bahasa program lain. Hal ini karena adanya standarisasi bahasa C yaitu berupa standar ANSI (American National Standar Institut) yang dijadikan acuan oleh para pembuat kompiler.jenis mesin.
Pembuat bahasa C adalah Brian W. Kernighan dan Dennis M. Ritchie pada tahun 1972.
C adalah bahasa pemrograman terstruktur, yang membagi program dalam bentuk blok.
Tujuannya untuk memudahkan dalam pembuatan dan pengembangan program. Program
- Bahasa C tersedia hampir di semua jenis computer.
- Kode bahasa C sifatnya adalah portable dan fleksibel untuk semua jenis
Penempatan ini hanya menegaskan bahwa c bukan bahasa pemrograman yang berorientasi pada mesin. yang merupakan ciri bahasa tingkat rendah. melainkan berorientasi pada obyek tetapi dapat dinterprestasikan oleh mesin dengan cepat. secepat bahasa mesin. inilah salah satu kelebihan c yaitu memiliki kemudahan dalam menyusun
programnya semudah bahasa tingkat tinggi namun dalam mengesekusi program secepat bahasa tingkat rendah.
Kekurangan Bahasa C:
- Banyaknya operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai.
- Bagi pemula pada umumnya akan kesulitan menggunakan pointer.
2.6. LCD (Liquid Crystal Display)
Liquid Crystal Display (LCD) adalah komponen yang dapat menampilkan tulisan. LCD ( Liquid Crystal Display ) merupakan salah satu perangkat penampil yang sekarang ini mulai banyak digunakan. Penampil LCD mulai dirasakan menggantikan fungsi dari CRT (Cathode Ray Tube), yang sudah berpuluh-puluh tahun digunakan manusia sebagai penampil gambar/text baik monokrom (hitam dan putih), maupun yang berwarna. Teknologi LCD memberikan keuntungan dibandingkan dengan teknologi CRT, karena pada dasarnya CRT adalah tabung triode yang digunakan sebelum transistor ditemukan. Beberapa keuntugan LCD dibandingkan dengan CRT adalah konsumsi daya yang relative kecil, lebih ringan, tampilan yang lebih bagus, dan ketika berlama-lama di depan monitor, monitor CRT lebih cepat memberikan kejenuhan pada mata dibandingkan dengan LCD. Salah satu jenisnya memiliki dua baris dengan setiap baris terdiri atas enam belas karakter. LCD seperti itu biasa disebut LCD 16x2.
Gambar 2.4 LCD 16x2
21
LCD memanfaatkan silicon atau gallium dalam bentuk Kristal cair sebagai pemendar cahaya. Pada layar LCD, setiap matrik adalah susunan dua dimensi piksel yang dibagi dalam baris dan kolom. Dengan demikian, setiap pertemuan yang merupakan lempengan kaca bagian belakang dengan sisi dalam yang ditutupi oleh lapisan elektroda transparan. Dalam keadaan normal, cairan yang digunakan memiliki warna cerah. Daerah-daer ah tertentu pada cairan akan berubah warnanya menjadi hitam ketika tegangan diterapkan antara bidang latar dan pola elektroda yang terdapat pada sisi dalam lempeng kaca bagian depan. LCD memiliki 16 pin dengan fungsi pin
Keunggulan LCD adalah hanya menarik arus yang kecil (beberapa micro ampere), sehingga alat atau sistem menjadi portable karena dapat menggunakan catu daya yang kecil. Keunggulan lainnya adalah tampilan yang diperlihatkan dapat dibaca dengan mudah di bawah terang sinar matahari. Di bawah sinar cahaya yang remang-remang dalam kondisi gelap, sebuah lampu (berupa LED) harus dipasang dibelakang layar tampilan. LCD yang digunakan adalah jenis LCD yang menampilkan data dengan 2 baris tampilan pada display. Keuntungan dari LCD ini adalah :
1. Dapat menampilkan karakter ASCII, sehingga dapat memudahkan untuk membuat program tampilan.
2. Mudah dihubungkan dengan port I/O karena hanya menggunakan 8 bit data dan 3 bit control.
3. Ukuran modul yang proporsional.
4. Daya yang digunakan relative sangat kecil.
Untuk lebih jelasnya berikut adalah tabel konfigurasi LCD 2x16 yang ditunjukkan pada gambar dibawah ini.
Gambar 2.5 Konfigurasi Pin LCD
Operasi dasar pada LCD terdiri dari empat, yaitu instruksi mengakses proses internal, instruksi menulis data, instruksi membaca kondisi sibuk, dan instruksi membaca data. ROM pembangkit sebanyak 192 tipe karakter, tiap karakter dengan huruf 5x7 dot matrik. Kapasitas pembangkit RAM 8 tipe karakter (membaca program), maksimum pembacaan 80x8 bit tampilan data. Perintah utama LCD adalah Display Clear, Cursor Home, Display ON/OFF, Display Character Blink, Cursor Sihft, dan Display Shift. Tabel 2.2 menunjukkan operasi dasar LCD .
23
Tabel 2.2 Operasi Dasar LCD RS RW Operasi
0 0 Input Instruksi ke LCD
0 1 Membaca Status Flag (DB7) dan alamat counter (DB0 ke DB6)
1 0 Menulis Data 1 1 Membaca Data
Tabel 2.3 Konfigurasi Pin LCD
Pin No. Keterangan Konfigurasi Hubung 1 GND Ground
2 VCC Tegangan +5VDC 3 VEE Ground
4 RS Kendali RS 5 RW Ground
6 E Kendali E/Enable 7 D0 Bit 0
8 D1 Bit 1 9 D2 Bit 2 10 D3 Bit 3 11 D4 Bit 4 12 D5 Bit 5 13 D6 Bit 6 14 D7 Bit 7
15 A Anoda (+5VDC) 16 K Katoda (Ground)
Lapisan film yang berisi Kristal cair diletakkan di antara dua kempeng kaca yang telah ditanami elektroda logam transparan. Saat tegangan dicatukan pada beberapa pasang elektroda, molekul-molekul Kristal cair akan menyusun diri agar cahaya yang mengenainya akan dipantulkan atau diserap. Dari hasil pemantulan atau penyerapan cahaya tersebut akan terbentuk pola huruf, angka, atau gambar sesuai yang di aktifkan.
LCD membutuhkan tegangan dan daya yang kecil sehingga sangat popular untuk aplikasi pada kalkulator, arloji digital, dan instrument elektronika, lain seperti Global Positioning System (GPS), baragraph display dan multimeter digital. LCD umumnya dikemas dalam bentuk Dual In Line Package (DIP) dan mempunyai kemampuan untuk menampilkan beberapa kolom dan baris dalam satu panel. Untuk membentuk pola, baik karakter maupun gambar pada kolom dan baris secara bersamaan digunakan metode Screening.
Metode screening adalah mengaktifkan daerah pertolongan suatu kolom dan suatu baris secara bergantian dan cepat sehingga seolah-olah aktif semua. Penggunaan metode ini dimaksudkan untuk menghemat jalur yang digunakan untuk mengaktifkan panel LCD. Saat ini telah dikembangkan berbagai jenis LCD, mulai jenis LCD biasa, Passive Matrix LCD (PWLCD), hingga Thin-Film Transistor Active Matrix (IFT-AMLCD). Kemampuan LCD juga telah ditingkatkan dari yang monokrom hingga yang mampu menampilkan ribuan warna tersebut selain untuk loader ketika mem-program, bisa juga difungsikan sebagai port komunikasi serial.
Arduino menyediakan 20 pin I/O, yang terdiri dari 6 pin input analog dan 14 pin digital input/output. Untuk 6 pin analog sendiri bisa juga difungsikan sebagai output digital jika diperlukan output digital tambahan selain 14 pin yang sudah tersedia. Untuk mengubah pin analog menjadi digital cukup mengubah konfigurasi pin pada program.
Dalam board kita bisa lihat pin digital diberi keterangan 0-13, jadi untuk menggunakan pin analog menjadi output digital, pin analog yang pada keterangan board 0-5 kita ubah menjadi pin 14-19. Dengan kata lain pin analog 0-5 berfungsi juga sebagi pin output digital 14-16.Sifat open source arduino juga banyak memberikan keuntungan tersendiri untuk kita dalam menggunakan board ini, karena dengan sifat open source komponen yang kita pakai tidak hanya tergantung pada satu merek, namun
25
memungkinkan kita bisa memakai semua komponen yang ada dipasaran. Bahasa pemrograman arduino merupakan bahasa C yang sudah disederhanakan syntax bahasa pemrogramannya sehingga mempermudah kita dalam mempelajari dan mendalami mikrokontroller.