• Tidak ada hasil yang ditemukan

PortD (PD7:0): Berfungsi sebagai bidirectional port I/O sebanyak 8-bit

bit. PC5…0 berfungsi sebagai output yang memiliki

6. PortD (PD7:0): Berfungsi sebagai bidirectional port I/O sebanyak 8-bit

7. AVCC :

Digunakan sebagai pin power supply untuk analog digital converter. Apabila menggunakan ADC, maka AVCC harus dikoneksikan dengan VCC melewati low-pass filter. Apabila tidak menggunakan ADC, AVCC juga harus dikoneksikan dengan VCC.

8. AREF:AREF ialah pin referensi analog untuk Analog Digital

Converter.

9. ADC7:6:ADC7:6 berfungsi sebagai pin input analog menuju

Analog Digital Converter. (Anonim, Analog Device)

35

2.5. Komunikasi Data

2.5.1. I2C

Pada perkembangan teknologi kini, baik didunia industri, otomotif, hingga pendidikan menengah dan tinggi telah menggunakan peralatan yang memiliki teknologi yang tinggi. Salah satunya ialah penggunaan mikrokontroler. Untuk menggunakan mikrokontroler dengan perangkat keras lainnya diperlukan senuah komunikasi data. Salah satu komunikasi data yang bisa digunakan adalah komunikasi I2C dan SPI.

Bus adalah sistem penghantar yang dilengkapi dengan komponen pengendali untuk melayani pertukaran data antara komponen perangkat keras satu dengan komponen perangkat keras lainnya. pada sistem mikrokontroler terdapat bus data, bus alamat, dan beberapa penghantar pengendali. Semakin tinggi frekuensi clock processor, maka semakin lebih cermat pengembang untuk memperhatikan waktu dari seluruh omponen yang terlibat, agar tidak terjadi kesalahan dalam transaksi data. Bus yang sering digunakan adalah bus yang bersfat paralel. Transaksi data dilakukan secara paralel sehingga transaksi data lebih cepat. Akan tetapi disisi lain memiliki biaya yang cukup mahal. Jika sistem relatif tidak membutuhkan transaksi yang cepat, maka penggunaan serial bus menjadi pilihan. Salha satu sistem data bus yang bisa digunakan yaitu I2C (Inter Integrated Circuit). Sistem bus I2C pertama kali diperkenalkan oleh Firma Philips pada tahun 1979.

I2C atau Inter Integrated Circuit adalah standar komunikasi serial dua arah menggunkan dua saluran yang didesain khusus untuk mengirim data.

36 Sistem I2C terdiri dari saluran SCL (Serial Clock) dan SDA (Serial Data) yang membawa informasi data antara I2C dengan pengontrolnya. Piranti yang dihubungkan dengan sistem I2C bus dapat dioperasikan sebagai Master

dam slave. Master adalah piranti yang memulai transfer data pada I2C Bus dengan membentuk sinyal Start, mengakhiri transfer data dengan membentuk sinyal Stop, dan membangkitkan sinyal Clock. Slave adalah piranti yang dialamati master.

Sinyal Start merupakan sinyal untuk memulai semua perintah, yang

didefinisikan sebagai perubahan tegangan SDA dari “1” menjadi “0” pada saat SCL “1”. Sinyal Stop merupakan sinyal untuk mengakhiri semua perintah, didefinisikan sebagai perubahan tegangan dari “0” menjadi “1”

pada saat SCL “1”. Kondisi sinyal Start dan sinyal Stop seperti pada gambar

berikut

Gambar II.9. Kondisi sinyal Start dan Stop

Sinyal dasar yang lain dalam I2C Bus adalah sinyal acknowledge yang disimbolkan ACK. Setelah transfer data oleh master berhasil diterima slave, slave akan menjawabnya dengan mengirim sinyal acknowledge, yaitu dengan

37 bahwa Slave telah menerima 8 bit data dari Master. Kondisi sinyal acknowledge pada gambar berikut.

Gambar II.10. sinyal ACK dan NACK

Dalam melakukan transfer data pada I2C Bus, ada beberapa tata cara yang telah ditetapkan yaitu:

1. Transfer data hanya dapat dilakukan ketika Bus tidak dalam keadaan sibuk.

2. Selama proses transfer data, keadaan data pada SDA harus stabil selama SCL dalam keadaan tinggi. Keadaan perubahan “1” atau “0” pada SDA hanya dapat dilakukan selama SCL dalam keadaan

rendah. Jika terjadi perubahan keadaan SDA pada saat SCL dalam keadaan tinggi, maka perubahan itu dianggap sebagai sinyal Start atau sinyal Stop.

38 Berikut ini merupakan definisi-definisi kondisi Bus :

1. Bus not busy

Pada saat ini Bus tdak dalam keadaan sibuk, SCL dan SDA dua-duanya dalam keadaan HIGH

2. Start data transfer

Ditandai dengan perubahan kondisi SDA dari HIGH ke LOW ketika SCL HIGH.

3. Data valid

Data yang dikirim bit demi bit dianggap valid jika setelah START, kondisi SDA tidak berubah selama SCL HIGH, baik SDA HIGH maupun SDA LOW tergantung dari bit yang ingin ditransfer. Setiap siklus HIGH SCL baru menandakan pengirim bit baru. Duty cycle untuk SCL tidak mesti 50%, ttapi frekuensi kemunculannya hanya ada 2 macam, yaitu mode standar 100khz dan fast mode cepat 400kHz. Setelah SCL mengirimkan sinyal HIGH yang kedelapan, arah transfer SDA berubah, sinyal kesembilan pada SDA ini dianggap sebagai acknowledge dari receiver ke transmitter

4. Acknowledge

Setiap receiver wajib mengirimkan sinyal acknowledge atau sinyal balasan setiap selesai pengiriman 1-byte atau 8-bit data. Master harus memberikan ekstra clock pada SCL, yaitu clock kesembilan untuk memberikan kesempatan receiver mengirimkan

39 sinyal acknowledge ke transmitter berupa keadaan LOW pada SDA selama SCL HIGH. Meskipun master berperan sebagai receiver, ia tetap sebagai penentu sinyal STOP. Pada bit-akhir penerimaan byte terakhir, master tidak mengirimkan sinyal acknowledge, SDA dibiarkan HIGH oleh receiver dalam hal ini master, kemudian master mengubah SDA dari LOW menjadi HIGH yang berarti sinyal STOP. (Brian, p. t.thn)

2.6. LabVIEW 2011

LabVIEW ( Laboratory Virtual Instrument Engineering Workbench ) merupakan software yang secara khusus digunakan untuk pemrosesan sistem dan visualisasi dari data sebuah instrumentasi, kendali, begitu pula otomatisasi industry. Pada tahun 1996 perusahaan National Instrument (NI) mulai mengembangkan software ini.

LabVIEW memiliki beberapa kelebihan, diantaranya ialah :

1. Memiliki bahasa pemograman yang mudah dipahami dan mudah dibuat, sehingga menghemat waktu pembuatan. Dikarena memiliki instruksi yang berbentuk ikon-ikon yang berbentuk grafis dengan garis atau kawat sebagai penghubungnya antara ikon satu dengan yang lainnya untuk menunjukan aliran data.

2. LabVIEW telah memiliki integrasi dengan ribuan hardware dan ratusan library yang siap digunakan untuk aplikasi di bidang instrumentasi, pengolahan sinyal, analisis dan visualisasi data serta koneksi ke internet.

40 3. Menjadi jembatan antara dunia pendidikan dengan industry karena memiliki persamaan software sehingga memudahkan untuk transisi dan transfer teknologi antara dunia pendidikan ke industri.

4. Dengan bahasa pemograman yang parallel, LabVIEW mampu manjalankan beberapa instruksi sekaligus dengan waktu yang bersamaan. 5. LabVIEW memiliki sifat modular yang memungkinkan pengguna untuk

membuat program yang kompleks dan rumit menjadi sederhana, yaitu dengan cara membuat subprogram atau di labVIEW disebut subVI. 6. Sebuah software untuk berbagai bidang dengan penggunaan mulai dari

perencanaan pengukuran, prototype, pengujian, hingga implementasi dan pengujiannya.

Dalam pemograman LabVIEW, terdapat beberapa istilah penting yang harus diketahui. Istilah-istilah itu ialah sebagai berikut :

1. VI ( Virtual Instrument )

VI ialah program yang dibuat dengan LabVIEW. 2. SubVI

Sub VI ialah sebuah VI di dalam VI ( seperti subrutin dalam bahasa pemograman teks ) yang berbentuk ikon, dengan input di sebelah kiri ikon dan output di sebelah kanan ikon.

3. Front Panel

Front Panel ialah tampilan dari program dan juga user interface yang berpengaruh dalam suatu Virtual Instruments ( Vis ) karena front panel ini merupakan panel simulasi dari physical instrument. Di dalam front

41 panel terdapat banyak control dan indicator yang dapat digunakan. Kontrol dan indicator juga dapat dikombinasikan dalam front panel untuk pengembangan suatu project Vis. Kontrol digunakan untuk menyalurkan data yang dipersiapkan ke dalam VI, sedangkan indicator berperan untuk menampilkan data pada VI setelah diproses. Pada front panel juga terdapat objek. Objek pada front panel ini merepresentasikan ikon yang ada pada block diagram.

Gambar II.12 Front Panel

4. Block Diagram

Block Diagam ialah tempat pembuatan program. Pembuatan program disini dilakukan dengan cara menempatkan beberapa node dan menghubungkannya.

42 Gambar II.13. Block diagram

5. Node

Node ialah semua objek di jendela block diagram. Node ini memiliki input/output yang melakukan operasi tertentu ketika dijalankan termasuk didalamnya subVI, terminal, struktur dan fungsi.

6. Terminal

Terminal ialah ikon-ikon pada block diagram yang mewakili objek-objek di front panel, objek-objek ini membawa data baik yang masuk ataupun yang keluar program. Contohnya yaitu control dan indicator.

7. Control

Control biasa disebut terminal input ialah semua objek pada front panel yang memasukan data dari pengguna ke program. Contohnya yaitu tombol, saklar, knob dan alat input lainnya.

8. Indicator

Indicator biasa disebut terminal output ialah semua objek pada front panel yang menampilkan data dari program ke pengguna. Indicator berkebalikan dengan control. Contohnya yaitu grafik, LED.

43 9. Struktur

Struktur ialah semua bentuk alur pemograman. Struktur hanya terdapat pada jendela block diagram, berbentuk balok yang dapat diatur luasnya serta hanya bekerja untuk ikon yang berada dalam kotak struktur. Contohnya yaitu while loop, sekuensial, case dan lainnya.

10.Fungsi

Fungsi ialah kode-kode dasar yang telah disediakan untuk membuat subVI. Contohnya yaitu subtract, add.

11.Wire (kawat)

Wire digunakan untuk menghubungkan ikon-ikon, serta menunjukkan aliran data dan tipe data.

12.Pemrograman Dataflow ( aliran data )

Pemrograman Dataflow ialah konsep pemograman yang akan mengeksekusi node pada saat semua inputnya telah tersedia. Ketika node ini telah selesai dieksekusi, maka data akan diteruskan dari output node tersebut ke node berikutnya.

13.Tools Pallete

Tools Palette dapat digunakan untuk merencanakan dan mengoperasikan Vis yang diinginkan. Untuk menampilkan tools pallete, dapat memilih menu view pada lembar front panel ataupun block diagram.

14.Function Palette

Function Palette berfungsi untuk memberikan perintah kerja pada lembar blosk diagram. Pada Function Palette terdapat pilihan tampilan palette,

44 dimana masing-masing pilihan palette juga terdapat sub palette yang diberi anak panah pada bagian atas icon palette tersebut.

Gambar II.14. Function palette

Untuk membuka lembar function palette, dilakukan dengan cara mengklik kanan pada lembar kerja block diagram. Selain itu juga terdapat tombol search yang dapat digunakan untuk mencari icon fungsi yang belum diketahui keberadaannya. Caranya dengan mengklik tombol search tersebut dan menuliskan nama icon yang dicari. Kemudian klik double pada nama icon yang dicari, maka akan diketahui letak icon yang dimaksud.

15.Control Palette

Control Palette digunakan untuk menambah kontrol dan indicator pada lembar front panel.Untuk mengeluarkan control palette dilakukan dengan

45 cara klik double pada lembar front panel. Setiap pilihan palette juga terdapat subpalette yang memiliki control dan indicator yang berbeda-beda.

Gambar II.15. Control palette

Pada control palette juga terdapat tombol search yang dapat digunakan untuk mencari icon control yang belum diketahui keberadaannya. Caranya dengan mengklik tombol search tersebut dan menuliskan nama icon yang dicari. Kemudian klik double pada nama icon yang dicari, maka akan diketahui letak icon yang dimaksud. (Artanto, 2012)

46

2.7. Arduino IDE 1.0.5

IDE ( Integrated Development Environment) yang disebut juga lingkungan pemrograman. Arduino memiliki kelebihan yaitu memiliki lingkungan pemrogramannya sendiri yaitu arduino IDE. Penggunaan IDE-nya pun mudah karena kesederhanaan progrmanya, berikut adalah tampilan arduino IDE versi 1.0.5

Gambar II.16. Halaman arduino IDE

Arduino IDE adalah sebuah software compiler untuk pengembangan mikrokontroler Arduino. Arduino IDE dirancang untuk pengguna dengan beberapa keunggulan sehingga mudah untuk dpeajari siapa pun. Bahasa C merupakan bahasa yang dipergunakan untuk membuat program dalam software compiler ini, namun di dalamnya terdapat juga bahasa pemrograman yang

47 dikhususkan bagi arduino IDE yang digunakan tergantung pada versi yang akan digunakan.

Arduino IDE ini juga dilengkapi oleh beberapa fitur-fitur yang lengkap sehingga hal ini akan memudahkan programmer untuk mebuat sebuah program. Fitur – fitur tersebut ialah sebagai berikut :

1. IDE arduino merupakan multiplatform, yang dapat dijalnkan di berbagai sistem operasi, seperti windows, macintosh dan linux

2. IDE arduino dibuat berdasarkan pada IDE processing yang sederhana sehingga mudah digunakan

3. IDE arduino memiliki software gratis sehingga tidak perlu membayar kepada pengembang arduino

4. Memiliki bahasa pemrograman yang mudah untuk digunakan

5. IDE arduino memiliki libraries (contoh program) yang lengkap yang dapat membantu pembuatan bahasa pemrograman.

6. Memiliki forum resmi yang bisa digunakan untuk mendapatkan listing program secara gratis.

7. Terdapat pula serial monitor guna mengetahui hasil program yang telah dibuat

8. Kesalahan yang terdapat dalam program juga akan ditampilkan pada arduino IDE dengan solusi pembenarannya

9. Menyediakan contoh (sample sketch) yang dapat dipelajari guna pengembangan lebih lanjut dalam pemrograman. (Anonim, Arduino)

48 Pada tampilan IDE arduino terdapat enam buah tombol pada toolbar, degan fungsi masing masing sebagai berikut :

Tabel II.3. Tools Pada Arduino

No. Tombol Nama Fungsi

1. Verify Menguji apakah ada kesalahan pada program atau sketch. Apabila sketch sudah benar, maka sketch tersebut akan dikompilasi. Kompilasi adalah proses mengubah kode program ke dalam kode mesin

2 Upload Mengirimkan kode mesin hasil

kompilasi ke board arduino

3 New Membuat sketch yang baru

4 Open Membuka sketch yang sudah ada

5 Save Menyimpan sketch

6 Serial

Monitor

Menampilkan data yang dikirim dan diterima melalui komunikasi serial

49

BAB III

Dokumen terkait