Minggu, 04 April 2021

Board Arduino

 

A. Uraian Materi

1. Pengantar  Arduino

Arduino adalah salah satu mikrokontroller keturunan AVR dari ATMEL. Chip mikrokontroller AVR yang biasa diguanakan adalah dari keluarga IC ATMEGA. Mikrokontroller sendiri adalah sebuah sistem yang fungsional dalam sebuah chip. Di dalamnya sudah ada prosessor, memory dan input output. Dengan kata lain mikrokontroller adalah sebuah komputer mini. Karena ukurannya yang kecil mikrokontroller sangat efektif dan efisien untuk digunakan sebagai pengendali rangkaian-rangkaian elektronika. Misalnya sebagai pengendali LED, membuat MP3 Player, mengolah data sensor, pengendali motor, alarm serta yang saat ini sedang marak adalah pembuatan robot. Dalam pembuatan robot mikrokontroler berperan sebagai otaknya.
Arduino lahir dari tesis Hernando Barragan di institute Ivrea. Kemudian Massimo Banzi dan David Cuartielles mengembangkannya pada tahun 2005 dan diberi nama Arduin of Ivrea. Nama tersebut kemudian diganti menjadi Arduino yang artinya teman yang berani dalam bahasa Italia. Tujuan awal pembuatan Arduino sangat mulia yaitu untuk menyediakan perangkat yang mudah dan murah untuk siswa dalam membuat desain perangkat/peralatan. Tim pengembangan Arduino saat ini adalah Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, David Mellis, dan Nicholas Zambetti.

2. Kelebihan dan kekurangan Arduino 

Arduino banyak dipilih dibanding mikrokontroller jenis lain tidak lain karena beberapa kelebihan yang dimilikinya, yaitu :

a. Hardware dan Software Open Source

Artinya kita dapat membuat tiruan atau clone arduino, baik secara hardware maupun software, yang kompatibel dengan board aslinya tanpa harus membeli board yang asli. Tidak perlu takut dianggap melakukan pembajakan.

b. Tidak memerlukan chip programmer

Arduino sudah dilengkapi dengan bootloader yang bertugas menangani proses upload program dari PC ke Chip. Sehingga program yang sudah dibuat dapat langsung di upload tanpa menambahkan chip programmer.

c. Koneksi via USB

Sambungan kabel dari board Arduino ke kompoter menggunakan port USB. Saat ini kebanyakan komputer mempunyai port USB sebagai media transfer data.

d. Fitur Chip cukup lengkap.

Board arduino kompatible dengan chip ATMEGA dengan varian yang luas serta tersedia fitur yang cukup lengkap, meliputi fungsi PWM, komunikasi serial, ADC, timer, interupt, SPI serta I2C.

e. Ukuran kecil dan mudah di bawa

Board Arduino berukuran kecil dan ringan sehingga mudah di bawa kemana-mana bersama laptop atau dimasukkan dalam saku.

f.  Bahasa pemrograman lebih mudah

Bahasa pemrograman yang digunakan menggunakan bahasa C/C++ yang termasuk dalam golongan bahasa aras menengah. Sintaks serta kode programnya seperti bahasa yang dipakai manusia dalam komunikasi sehingga mudah dipelajari.

g. Tersedia library gratis

Tersedia library bila board arduino ditambahi modul tambahan, seperti sensor, actuator, lcd, OpAmp. Karena open source, library tersebut dapat diunduh secara gratis.

h. Pengembangan aplikasi lebih mudah

Untuk pengembangan aplikasi elektronika sesuai kebutuhan lebih mudah karena ada banyak modul yang tersedia. Serta didukung oleh library yang bisa diunduh secara gratis.

Disamping kelebihan yang disampaikan di atas , Arduino juga memiliki kelemahan diantaranya :

a. Kode hex relatif lebih besar.

b. Sering terjadi kesalahan fuse bit pada saat membuat bootloader

c. Harus memodifikasi program lama, atau setting hardware mengikuti library yang ada karena pada arduino penggunaan pin harus “Disiplin”

d.  Stoage Flash berkurang , karena dipakai untuk bootloader


3. Bagian-Bagian Board Arduino


Gambar 1.  Bagian-Bagian Board Arduino

Fungsi masing-masing bagian Board Arduino adalah sebagai berikut :

No Nama                              Deskripsi

1. Port USB                             Gerbang komunikasi antara PC dan board arduino

2. Tombol Reset                     Jika ditekan, program akan dieksekusi mulai dari awal

3. Regulator Tegangan       Mengatur catu daya mikrokontroler

4. Lubang Jack DC             Sebagai tempat untuk menghubungkan adaptor

5. Mikrokontroler Utama             Atmega328P. Menyimpan dan Mengeksekusi program

6. Translator USB to Serial         Atmega16AU. Sebagai USB to Serial Converter.    

                                                     Menerjemahkan data yang keluar/masuk lewat port 

                                                     USB

7. Pin Digital I/O              Kumpulan pin yang dapat diatur fungsinya agar dapat 

     (DIGITAL 0-13)                      membaca input atau menghasilkan output sinyal digital

8. Pin Analog Input                    Kumpulan pin yang dapat diatur fungsinya agar dapat 

     (ANALOG IN A0-A5)              membaca input sinyal analog

9. Pin Output Power Regulator  Kumpulan pin yang terdiri atas input dan output dari   

    (POWER)                                blok power supply board arduino

4. Jenis-Jenis  Board Arduino

Arduino lahir dan berkembang, kemudian muncul dengan berbagai jenis, yaitu :

a. Arduino Uno

Jenis yang ini adalah yang paling banyak digunakan. Terutama untuk pemula sangat disarankan untuk menggunakan Arduino Uno. Dan banyak sekali referensi yang membahas Arduino Uno. Versi yang terakhir adalah Arduino Uno R3 (Revisi 3), menggunakan ATMEGA328 sebagai Microcontrollernya, memiliki 14 pin I/O digital dan 6 pin input analog. Untuk pemograman cukup menggunakan koneksi USB type A to To type B. Sama seperti yang digunakan pada USB printer.

 

Gambar 2. Arduino Uno

b. Arduino Due. 

Berbeda dengan saudaranya, Arduino Due tidak menggunakan ATMEGA, melainkan dengan chip yang lebih tinggi ARM Cortex CPU. Memiliki 54 I/O pin digital dan 12 pin input analog. Untuk pemogramannya menggunakan Micro USB, terdapat pada beberapa handphone.

 

Gambar 3. Arduino Due


c. Arduino Mega. 

Mirip dengan Arduino Uno, sama-sama menggunakan USB type A to B untuk pemogramannya. Tetapi Arduino Mega, menggunakan Chip yang lebih tinggi ATMEGA2560. Dan tentu saja untuk Pin I/O Digital dan pin input Analognya lebih banyak dari Uno.

 

Gambar 4. Arduino Mega


d. Arduino Leonardo. 

Bisa dibilang Leonardo adalah saudara kembar dari Uno. Dari mulai jumlah pin I/O digital dan pin input Analognya sama. Hanya pada Leonardo menggunakan Micro USB untuk pemogramannya.

 

Gambar 5. Arduino Leonardo


e. Arduino Fio.

Bentuknya lebih unik, terutama untuk socketnya. Walau jumlah pin I/O digital dan input analognya sama dengan uno dan leonardo, tapi Fio memiliki Socket XBee. XBee membuat Fio dapat dipakai untuk keperluan projek yang berhubungan dengan wireless.

 


Gambar 6. Arduino Fio


f. Arduino Lilypad. 

Bentuknya yang melingkar membuat Lilypad dapat dipakai untuk membuat projek unik. Seperti membuat amor iron man misalkan. Hanya versi lamanya menggunakan ATMEGA168, tapi masih cukup untuk membuat satu projek keren. Dengan 14 pin I/O digital, dan 6 pin input analognya.

 

Gambar 7. Arduino Lilypad


g. Arduino Nano. 

Sepertinya namanya, Nano yang berukulan kecil dan sangat sederhana ini, menyimpan banyak fasilitas. Sudah dilengkapi dengan FTDI untuk pemograman lewat Micro USB. 14 Pin I/O Digital, dan 8 Pin input Analog (lebih banyak dari Uno). Dan ada yang menggunakan ATMEGA168, atau ATMEGA328.

 

Gambar 8. Arduino Nano


h. Arduino Mini. 

Fasilitasnya sama dengan yang dimiliki Nano. Hanya tidak dilengkapi dengan Micro USB untuk pemograman. Dan ukurannya hanya 30 mm x 18 mm saja.

 

Gambar 9. Arduino Mini


i. Arduino Micro. 

Ukurannya lebih panjang dari Nano dan Mini. Karena memang fasilitasnya lebih banyak yaitu; memiliki 20 pin I/O digital dan 12 pin input analog.

 


Gambar 10. Arduino Micro

j. Arduino Ethernet. 

Ini arduino yang sudah dilengkapi dengan fasilitas ethernet. Membuat Arduino kamu dapat berhubungan melalui jaringan LAN pada komputer. Untuk fasilitas pada Pin I/O Digital dan Input Analognya sama dengan Uno.

 

Gambar 11. Arduino Ethernet


k. Arduino Esplora. 

Rekomendasi bagi kamu yang mau membuat gadget seperti Smartphone, karena sudah dilengkapi dengan Joystick, button, dan sebagainya. Kamu hanya perlu tambahkan LCD, untuk lebih mempercantik Esplora.

 

Gambar 12. Arduino Esplora


l. Arduino Robot. 

Ini adalah paket komplit dari Arduino yang sudah berbentuk robot. Sudah dilengkapi dengan LCD, Speaker, Roda, Sensor Infrared, dan semua yang kamu butuhkan untuk robot sudah ada pada Arduino ini.


5. Prosesor Board Arduino

Prosesor yang digunakan pada board Arduino adalah prosesor dari keluarga Atmel AVR. Sebagai contoh prosesor yang ditanam pada board Arduino Uno adalah IC ATMEGA 328P.  Mikrokontroler AVR memiliki arsitektur RISC (Reduce Instruction Set Computing) delapan bit, dimana semua instruksinya dikemas dalam kode 16 bit dan sebagian besar instruksinya dieksekusi dalam 1 siklus  clock. RISC (Reduce Instruction Set Computer) atau komputasi set instruksi yang disederhanakan merupakan sebuah arsitektur komputer atau arsitektur komputasi modern dengan instruksi-instruksi dan jenis eksekusi yang paling sederhana.

RISC mempunyai karakteristik :

1.  One cycle execution time. 

Prosessor    RISC mempunyai CPI (clock per instruction) atau waktu per instruksi untuk setiap putaran. Hal ini dimaksud untuk mengoptimalkan setiap instruksi pada CPU.

2. Pipelining

Pipelining adalah sebuah teknik yang memungkinkan dapat melakukan eksekusi secara simultan. sehingga proses instruksi lebih     efiisien

3. Large number of registers

Jumlah register yang sangat banyak. RISC di Desain dimaksudkan untuk dapat menampung jumlah register yang sangat banyak untuk mengantisipasi agar tidak terjadi interaksi yang berlebih dengan memory.

Secara umum, AVR dapat dikelompokkan dalam 4 kelas, yaitu:

1. Keluarga TinyAVR

2. Keluarga AT90Sxx

3. Keluarga  AT86RFxx

4. Keluarga  ATMega


6. Fungsi pin pada board Arduino

Board Arduimo 14 pin digital dan 6 pin analog pada Arduino dapat digunakan sebagai input dan output, yaitu menggunakan fungsi pinMode(), digitalWrite(), dan digitalRead(). Setiap pin beroperasi pada tegangan 5V. Arus maksimum pada setiap pin ini adalah 40mA dan memiliki resistor pull-up internal. Disamping itu ada beberapa pin yang khusus yaitu:

a. Analog: A0 sampai A6.

 Digunakan untuk membaca input analog dengan resolusi 10 bit atau dengan nilai antara 0 – 1023. Misalnya digunakan untuk membaca tegangan pada sensor, potensiometer, dan sebagai nya.

b. Serial: 0 (RX) dan 1 (TX). 

Digunakan untuk menerima dan mengirimkan serial data dalam bentuk TTL. Pin-pin tersambung dengan chip FTDI USB to TTL.

c. Interupsi ekternal: 2 dan 3. 

Pin-pin ini dapat dikonfigurasikan untuk memicu (trigger) interupsi pada keadaan low, rising/falling, atau change. Lihat penjelasan di fungsi attachInterrupt() untuk lebih jelas nya.

d. PWM: 3, 5, 6, 9, 10, dan 11. 

Menyediakan output PWM 8-bit yang dapat dioperasikan dengan fungsi analogWrite().

e. SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). 

Pin-pin ini mendukung komunikasi SPI.

f. LED: 13. 

Disediakan LED yang terpasang ke pin digital 13.

g. I2C: 4 (SDA) dan 5 (SCL). 

Mendukung komunikasi I2C (TWI – Two Wire Interface) yang bisa dioperasikan menggunakan library Wire library.

h. Pin tambahan

• AREF: Tegangan untuk input analog. Digunakan oleh fungsi analogReference().

• Reset: Apabila pin ini diberi keadaan LOW, maka akan mereset mikrokontroler. Biasanya digunakan      untuk menambahkan tombol reset pada shield agar memudahkan menekan tombol reset yang tertutup    oleh shield.


B. Latihan Soal

1. Pin anolog A0-A5 adalah pin khusus yang terdapat pada board Arduino. 

    Kegunaan dari pin tersebut adalah...

    a. Membaca input analog dari sensor

    b. Menerima serial data dalam bentuk TTL.

    c. Memicu (trigger) interupsi

    d. Mendukung komunikasi SPI

    e. Mengirimkan serial data dalam bentuk TTL

2. Board Arduino yang dibuat dengan tujuan agar dapat terhubung dengan jaringan LAN 

    melalui  komputer adalah...

    a. Arduino Esplora

    b. Arduino Ethernet

    c. Arduino Lilypad

    d. Arduino Fio

    e. Arduino Leonardo

3. Bagian board  Arduino yang  berfungsi untuk menyimpan dan mengeksekusi 

    kode program  ditunjukkan oleh nomor... 

    a. 3

    b. 5

    c. 6

    d. 7

    e. 9

4. Berikut ini beberapa kelebihan dari Arduino, KECUALI...

    a.  Hardware dan Software Open Source

    b.  Koneksi via USB 

    c. Memerlukan chip programmer

    d. Ukuran kecil dan mudah di bawa

    e. Bahasa pemrograman lebih mudah

5. Prosesor yang ditanam pada board Arduino adalah...

    a. IC ATMEGA 324P

    b. IC ATMEGA 325P

    c. IC ATMEGA 326P

    d. IC ATMEGA 327P

    e. IC ATMEGA 328P


C. Jawaban Latihan Soal.

1. A

2. B

3. B

4. C

5. E


Tidak ada komentar:

Posting Komentar

Postingan Populer