Kategori
IoT

Arduino

Arduino adalah terobosan baru dalam dunia microcontroller. Saat ini sudah banyak project Electronics & Robotics yang berbasis Arduino. Hal ini terjadi karena Arduino memiliki banyak sekali kemudahan dan mempunyai fleksibilitas yang tinggi baik dari segi software maupun hardwarenya.

Arduino adalah Mikrokontroller single-board yang bersifat open-source, diturunkan dari Wiring platform, mempunyai fleksibilitas yang tinggi baik dari segi software maupun hardware  untuk memudahkan Rancang bangun elektronik dalam berbagai bidang.

Arduino menggunakan IC ATMega sebagai IC program dan softwarenya memiliki bahasa pemrograman sendiri yang sering disebut bahasa processing. Bahasa ini sangat mirip dengan bahasa C, namun penulisannya mendekati bahasa manusia. 

Arduino menjadi Platform mikrokontroller paling populer di dunia saat ini. Kemudahan mempelajari dan mengaplikasikan arduino menjadikannya pilihan bagi pemula maupun mastah robotika dan elektronika. Selain Arduino, ada pula beberapa jenis Mikrokontroller alternatif yang memiliki spesifikasi mumpuni, bahkan melebihi arduino, misalnya saja STM Bluephill.

Sejarah Arduino

Dilihat dari sejarahnya, Arduino semula hanyalah karya Thesis seorang mahasiswa kebangsaan Kolombia bernama Hernando Barragan di universitas Ivrea di Italia. Judul  thesis tersebut adalah “Arduino-La rivoluzione dell’open hardware” (“Arduino – Revolusi Open Hardware”). 

Pada tahun 2005, Thesis Tersebut dikembangkan Oleh Massimo Banzi dan David Cuartielles dan diberi nama Arduino yang dalam bahasa italia berarti “teman yang berani”.
Pada awalnya tujuan dikembangkannya arduino oleh mereka adalah membuat sebuah perangkat mikrokontroller yang murah, fleksibel, dan mudah dipelajari siapa saja bahkan orang yang awam sekalipun.
Saat ini tim pengembang Arduino adalah Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, David Mellis, dan Nicholas Zambetti. Mereka mengupayakan 4 hal dalam Arduino ini,  yaitu :

  • Harga yang  terjangkau
  • Dapat dijalankan diberbagai sistem operasi, Windows, Linux, Max, dan sebagainya.
  • Sederhana dalam segi Software maupun Hardware sehingga mudah dipelajari bahkan oleh orang  awam
  • Open Source, hardware maupun software.

Kelebihan Arduino

Arduino memiliki berbagai kelebihan dibandingkan dengan mikrokontroller lain.  Sesuai dengan empat hal yang diupayakan pengembang arduino maka Arduino memiliki kelebihan yaitu :

  1. Murah – 1 Board Arduino biasanya dijual relatif murah (antara 100 ribu hingga 400 ribu rupiah saja). Sekarang arduino juga banyak tersedia versi kloningan (tiruan) dengan harga yang lebih murah dari versi Originalnya yang merupakan pabrikan Italia .
  2. Sederhana dan mudah pemrogramannya –  Bahassa pemograman Arduino sangat Fleksibel karena hamper mendekati bahasa manusia. Tentunya sangat mudah memahami algoritma Program bagi pemula maupun tingkat lanjut.  
  3. Software Open Source – Perangkat lunak Arduino IDE berbasis Open Source, dan dan dapat dikembangkan pemrograman lebih lanjut. Bahasanya bisa dikembangkan lebih lanjut melalui pustaka-pustaka C++ yang berbasis pada Bahasa C untuk AVR.
  4. Hardware Open Source – Perangkat keras Arduino berbasis mikrokontroler ATMega8, ATMega168, ATMega328 dan ATMega1280 dan ATMega 2650. Dengan demikian sangat mudah membuat dan menjual board Arduino. Bootloader Arduino juga tersedia langsung dari perangkat lunak Arduino IDE.

Kelebihan Arduino dari sisi hardware

  • Soket USBSoket USB adalah soket kabel USB yang disambungkan kekomputer atau laptop. Yang berfungsi untuk mengirimkan program ke arduino dan juga sebagai port komunikasi serial. Jadi tidak diperlukan lagi Downloader Eksternal untuk mendownload Program ke IC Arduino.
  • Input/output digital dan input analogInput /Output Digital dalam Arduino Fungsinya adalah membaca atau mengirim data berupa data Analog maupun Digital dari Rangkaian TErintegrasi dengan Arduino. Biasanya Pin Input/ Output Analog dan Digital berada pada barisan terpisah.
  • Catu DayaCatu daya pada Arduino bisa menggunakan Socket USB dan terdapat pula Socket DC 12V untuk tipe tertentu. Di dalam Board Arduino sudah tersedia IC regulator Untuk menstabilkan dan menyuplay tegangan ke modul Arduino.  Ukuran FisikUkuran Fisik untuk Satu Board arduino reltif kecil karena dibangun menggunakan komponen SMD (surface mounted Device) yaitu komponen yang sangat kecil , biasanya terdapat pada board hp dan motherboard  sehingga sangat ringkas dan Tahan terhadap berbagai situasi.

Jenis Jenis Arduino

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.

Arduino Due

Berbeda dengan Arduino Uno, 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 SmartPhone

Arduino Mega

Arduino Mega 2560 adalah Board pengembangan mikrokontroller yang berbasis Arduino dengan menggunakan chip ATmega2560. Board ini memiliki pin I/O yang cukup banyak, sejumlah 54 buah digital I/O pin (15 pin diantaranya adalah PWM), 16 pin analog input, 4 pin UART (serial port hardware). 

Arduino Mega 2560 dilengkapi dengan sebuah oscillator 16 Mhz, sebuah port USB, power jack DC, ICSP header, dan tombol reset. Tentunya versi Arduino mega lebih memberikan peluang dalam Rancang bangun sistem yang lebih besar.

Arduino Leonardo

Arduino Leonardo adalah mikrokontroler berbasis 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. Cukup dengan menghubungkannya ke komputer melalui kabel USB atau power dihubungkan dengan adaptor AC-DC atau baterai untuk mulai mengaktifkannya.

Arduino Leonardo berbeda dari 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 Nano

Arduino Nano adalah Versi mini dari Arduino uno.Karena bentuknya yang ringkas maka konsekuensinya adalah membuang beberapa komponen penting diantaranya jack DC dan Socket USB tipe B diganti dengan MikroUSB.

Arduino Mini

Versi Arduino mini merupakan versi yang lebih sederhana dari arduino nano. Pada board arduino mini tidak tersedia lagi mikroUSB untuk mendownload program, artinya kita harus menggunakan Downloader Eksternal.

Arduino Micro

Arduino mikro memiliki fisik yang sama dengan Arduino nano namun lebih panjang. Perbedaannya dengan Arduino nano adalah jumlah pin yang lebih banyak, yaitu 20 pin I/O digital dan 12 pin analog.

Arduino Ethernet

Arduino Ethernet memungkinkan koneksi Jaringan LAN antara Board dengan komputer. Arduino Ethernet memiliki fungsi yang sama dengan Arduino yang lainnya.

Arduino adalah sebuah minimum sistem mikrokontroler bersifat open-source yang banyak digunakan untuk membagun sebuah project elektronika. Platform Arduino berisi dua yaitu hardware berupa board dan sebuah software atau IDE (Integrated Development Environment) yang berjalan pada komputer, digunakan untuk menulis dan mengisikan perogram ke board Arduino.

Platform Arduino menjadi sangat populer bagi orang-orang yang ingin memulai belajar elekronika khususnya mikrokontroler, karena dengan memnggunakan Arduino tidak lagi memerlukan hardware tambahan (sering disebut downloader) untuk mengisikan program kedalam board mikrokontroler, tapi hanya perlu kabel USB saja yang disambungkan dari komputer ke board Arduino. Bahasa pemograman yang dituliskan pada Arduino IDE menggunakan bahasa pemograman C++ yang telah disederhanakan, sehingga dapat lebih mudah dimengerti. Sebuah board Arduino didesain dengan standar bentuk board serta posisi dan susunan pin/port sehingga dapat lebih mudah digunakan dan diakses dengan perangkat lain.

Sejatinya Arduino hardware dan software didesain untuk dapat digunakan oleh seniman, desainer, penggiat hobi, hacker, pemula, dan semua orang yang tertarik untuk membuat sebuah objek interaktif. Arduino dapat berinteraksi dengna tombol, LED, motor, speaker, unit GPS, camera, internet, smartphone atau TV dan masih banyak lagi perangkat yang kamu bisa hubungkan dengan Arduino. Arduino sangat fleksibel untuk bisa membuat berbagai project, dimana software Arduino adalah gratis, dan hardware board juga dengan harga yang sangat terjangkau, keduanya baik hardware dan software mudah untuk dipelajari karena sudah terdapat komunitas besar dari pengguna-pengguna Arduino yang sudah berkontribusi contoh program dan instruksi-intruksi untuk membuat berbagai project elektronika yang dibuat menggunakan board Arduino.

Ada apa saja di dalam Arduino?

Terdapat banyak varian jenis board Arduino yang dapat digunakan untuk fungsi yang berbeda-beda. Beberapa board ada yang terlihat sedikit berbeda tidak seperti pada gambar di bawah, tetapi hampir semua komponen utama adalah sama:

Power (USB / Barrel Jack)

Setiap Arduino memiliki jalur yang akan dihubungkan dengan sumber tenaga/tegangan. Arduino UNO dapat diberi tegangan melalui USB (1) dapat berasal dari komputer, power bank atau berasal dari power supply melalui barrel jack (2). Koneksi kabel USB juga berfungsi untuk jalur pemograman ke board Arduino.

Perhatian: Jangan menggunakan power supply yang tegangannya lebih dari 20 Volt, karena dapat merusak board Arduino karena overpower. Tegangan yang dizinkan untuk Arduino adalah 6 – 12 Volt.

Pin (5V, 3.3V, GND, Analog, Digital, PWM, AREF)

Pin pada Arduino adalah tempat dimana untuk menyambungkan kabel anatara pin Arduino dengan perangkat-perangkat input/output (biasanya menghubungkan dengan rangakain project pada breadboard). Pin Arduino biasanya berupa female header sehingga untuk mendapatkan koneksi dari pin Arduino hanya cukup colokan kabel ke dalam lubang pin header tersebut. Terdapat beberapa pin pada Arduino dengan fungsi yang berbeda-beda, masing-masing pin diberi label sesuai nama dan fungsinya pada PCB.

— GND (3): Kependekan dari ‘Ground’. Terdapat beberapa pin ground dan semuanya dapat digunakan.

— 5V (4) & 3.3V (5): 5V pin memberikan supply tegangan 5 volt, dan 3.3V pin memberikan supply tegangan 3.3 volt. Kebanyakan yang digunakan dengan Arduino bekerja pada tegangan 5 atau 3.3 volt.

— Analog (6): Pin yang berada di bawah tulisan ‘Analog In’ (A0 sampai A5 pada Arduino UNO) adalah pin Analog Input. Pin ini dapat membaca sinyal dari sensor analog (seperti sensor suhu) dan mengkonversinya kedalam nilai digital yang dapat kita baca.

— Digital (7): Terletak disisi lain dari analog pin terdapat pin digital (0 sampai 13 pada UNO). Pin ini dapat difungsikan sebagai digital input (seperti memberitahukan apabila button dipencet) dan digital output (seperti menyalakan sebuah LED).

— PWM (8): Kamu bisa melihat simbol (~) pada beberapa pin digital (3, 5, 6, 7, 9, 10, dan 11 pada UNO). Pin ini berfungsi sebagai pin digital biasanya, tapi bisa digunakan untuk Pulse-Width Modulation (PWM), sederhananya pin ini dapat mengeluarkan keluaran tegangan Analog.

— AREF (9): Singkatan dari Analog Reference. Pin ini digunakan untuk mengatur tegangan referensi external (antara 0 dan 5 volt) sebagai batas untuk pin analog input.

Tombol Reset

Seperti komputer pada umumnya, Arduino mempunyai tombol reset (10). Menekan tombol ini akan menghubungkan pin reset dengan ground dan merestart semua kode program yang ada di dalam Arduino. Reset ini akan sangat membantu jika kode tidak berjalan berulang-ulang, tapi kamu ingin menjalankannya beberapa kali.

Power LED Indicator

Tepat di bawah dan di sebelah kanan kata “UNO” di board Arduino, ada LED kecil di samping kata ‘ON’ (11). LED ini harus menyala setiap kali Anda memasukkan Arduino Anda ke sumber tegangan. Jika lampu ini tidak menyala, ada kemungkinan ada sesuatu yang salah.

TX RX LED

TX adalah singkatan dari transmit, RX adalah singkatan dari receive. Kata ini cukup familiar dalam istilah elektronik untuk menunjukkan pin sebagai komunikasi serial. Dalam board Arduino terdapat dua tempat tulisan TX dan RX – pertama pada pin digital 0 dan 1, dan yang kedua di samping indikator LED TX dan RX (12). LED ini akan memberi kita beberapa indikasi visual setiap kali Arduino menerima atau mentransmisikan data (seperti saat kita memasukan program baru ke board Arduino).

IC Utama

Berwarna hitam terdapat banyak kaki logam disampingnya adalah IC, atau Integrated Circuit (13). Anggap saja itu sebagai otaknya Arduino. IC utama pada Arduino UNO berbeda dengan jenis board Arduino lainnya tapi biasanya merupakan IC keluarga ATmega yang diproduksi oleh perusahaan ATMEL. Untuk mengetahui jenis IC yang dipakai bisa ditemukan secara tertulis disisi atas IC. Jika Anda ingin tahu lebih banyak tentang perbedaan antara IC tersebut, dapat dilihat pada datasheet.

Voltage Regulator

Regulator tegangan (14) berfungsi untuk membatasi jumlah tegangan yang masuk ke board Arduino. Anggap saja itu sebagai semacam gatekeeper; ini akan menghilangkan tegangan lebih yang mungkin membahayakan sirkuit. Tentu saja, ini memiliki batas, jadijangan menghubungkan Arduino Anda dengan yang lebih besar dari 20 volt.

Ref : [1][2][3]