Mengenal Arduino Uno R3

Assalamualaikum wr wb... happy weekend sahabat jupriadi's Blog, sudah lama ini admin tidak prnah corat coret di blog ini,. karna pada akhir-akhir ini admin lagi penasaran-penasarannya untuk mempelajari lebih jauh lagi tentang arduino maka pada ksmpatan kali ini penulis akan berbagi kepada pengunjung sepintas tentang Arduino,.

Arduino Uno R3 adalah papan pengembangan (development board) mikrokontroler yang berbasis chip ATmega328P. Disebut sebagai papan pengembangan karena board ini memang berfungsi sebagai arena prototyping sirkuit mikrokontroller. Dengan menggunakan papan pengembangan, anda akan lebih mudah merangkai rangkaian elektronika mikrokontroller dibanding jika anda memulai merakit ATMega328 dari awal di breadboard.

Arduino Uno memiliki 14 digital pin input / output (atau biasa ditulis I/O, dimana 6 pin diantaranya dapat
digunakan sebagai output PWM), 6 pin input analog, menggunakan crystal 16 MHz, koneksi USB, jack listrik, header ICSP dan tombol reset. Hal tersebut adalah semua yang diperlukan untuk mendukung sebuah rangkaian mikrokontroler. Cukup dengan menghubungkannya ke komputer dengan kabel USB atau diberi power dengan adaptor AC-DC atau baterai, anda sudah dapat bermain-main dengan Arduino UNO anda tanpa khawatir akan melakukan sesuatu yang salah. Kemungkinan paling buruk hanyalah kerusakan pada chip ATMega328, yang bisa anda ganti sendiri dengan mudah dan dengan harga yang relatif murah.
Kata " Uno " berasal dari bahasa Italia yang berarti "satu", dan dipilih untuk menandai peluncuran Software Arduino (IDE) versi 1.0. Arduino. Sejak awal peluncuran hingga sekarang, Uno telah berkembang menjadi versi Revisi 3 atau biasa ditulis REV 3 atau R3. Software Arduino IDE, yang bisa diinstall di Windows maupun Mac dan Linux, berfungsi sebagai software yang membantu anda memasukkan (upload) program ke chip ATMega328 dengan mudah.

Spesifikasi

Chip mikrokontroller ATmega328P
Tegangan operasi 5V
Tegangan input (yang direkomendasikan, via jack DC) 7V - 12V
Tegangan input (limit, via jack DC) 6V - 20V
Digital I/O pin 14 buah, 6 diantaranya menyediakan PWM
Analog Input pin 6 buah
Arus DC per pin I/O 20 mA
Arus DC pin 3.3V 50 mA
Memori Flash 32 KB, 0.5 KB telah digunakan untuk bootloader
SRAM 2 KB
EEPROM 1 KB
Clock speed 16 Mhz
Dimensi 68.6 mm x 53.4 mm
Berat 25 g

Open Source Hardware

Arduino Uno adalah hardware open source (OSH - Open Source Hardware). Dengan demikian anda dan siapapun diberi kebebasan untuk dapat membuat sendiri Arduino anda.


Pemrograman

Pemrograman board Arduino dilakukan dengan menggunakan Arduino Software (IDE) yang bisa anda dapatkan gratis disini. Chip ATmega328 yang terdapat pada Arduino Uno R3 telah diisi program awal yang sering disebut bootloader. Bootloader tersebut yang bertugas untuk memudahkan anda melakukan pemrograman lebih sederhana menggunakan Arduino Software, tanpa harus menggunakan tambahan hardware lain. Cukup hubungkan Arduino dengan kabel USB ke PC atau Mac/Linux anda, jalankan software Arduino Software (IDE), dan anda sudah bisa mulai memrogram chip ATmega328. Lebih mudah lagi, di dalam Arduino Software sudah diberikan banyak contoh program yang memanjakan anda dalam belajar mikrokontroller
Untuk pengguna mikrokontroller yang sudah lebih mahir, anda dapat tidak menggunakan bootloader dan melakukan pemrograman langsung via header ICSP (In Circuit Serial Programming) dengan menggunakan Arduino ISP
Arduino Uno R3 telah dilengkapi dengan chip ATmega16U2 yang telah diprogram sebagai konverter USB to Serial. Firmware ATmega16U2 di load oleh DFU bootloader, dan untuk merubahnya anda dapat menggunakan software Atmel Flip (Windows) atau DFU programmer (Mac OSX dan Linux), atau menggunakan header ISP dengan menggunakan hardware external programmer.

Proteksi

Development board Arduino Uno R3 telah dilengkapi dengan polyfuse yang dapat direset untuk melindungi port USB komputer/laptop anda dari korsleting atau arus berlebih. Meskipun kebanyakan komputer telah memiliki perlindungan port tersebut didalamnya namun sikring pelindung pada Arduino Uno memberikan lapisan perlindungan tambahan yang membuat anda bisa dengan tenang menghubungkan Arduino ke komputer anda. Jika lebih dari 500mA ditarik pada port USB tersebut, sirkuit proteksi akan secara otomatis memutuskan hubungan, dan akan menyambung kembali ketika batasan aman telah kembali.

Power Supply

Board Arduino Uno dapat ditenagai dengan power yang diperoleh dari koneksi kabel USB, atau via power supply eksternal. Pilihan power yang digunakan akan dilakukan secara otomatis
External power supply dapat diperoleh dari adaptor AC-DC atau bahkan baterai, melalui jack DC yang tersedia, atau menghubungkan langsung GND dan pin Vin yang ada di board. Board dapat beroperasi dengan power dari external power supply yang memiliki tegangan antara 6V hingga 20V. Namun ada beberapa hal yang harus anda perhatikan dalam rentang tegangan ini. Jika diberi tegangan kurang dari 7V, pin 5V tidak akan memberikan nilai murni 5V, yang mungkin akan membuat rangkaian bekerja dengan tidak sempurna. Jika diberi tegangan lebih dari 12V, regulator tegangan bisa over heat yang pada akhirnya bisa merusak pcb. Dengan demikian, tegangan yang di rekomendasikan adalah 7V hingga 12V
Beberapa pin power pada Arduino Uno :
  • GND. Ini adalah ground atau negatif.
  • Vin. Ini adalah pin yang digunakan jika anda ingin memberikan power langsung ke board Arduino dengan rentang tegangan yang disarankan 7V - 12V
  • Pin 5V. Ini adalah pin output dimana pada pin tersebut mengalir tegangan 5V yang telah melalui regulator
  • 3V3. Ini adalah pin output dimana pada pin tersebut disediakan tegangan 3.3V yang telah melalui regulator
  • IOREF. Ini adalah pin yang menyediakan referensi tegangan mikrokontroller. Biasanya digunakan pada board shield untuk memperoleh tegangan yang sesuai, apakah 5V atau 3.3V

Memori

Chip ATmega328 pada Arduino Uno R3 memiliki memori 32 KB, dengan 0.5 KB dari memori tersebut telah digunakan untuk bootloader. Jumlah SRAM 2 KB, dan EEPROM 1 KB, yang dapat di baca-tulis dengan menggunakan EEPROM library saat melakukan pemrograman.


Input dan Output (I/O)

Seperti yang telah disebutkan sebelumnya, Arduino Uno memiliki 14 buah digital pin yang dapat digunakan sebagai input atau output, sengan menggunakan fungsi pinMode(), digitalWrite(), dan digital(Read). Pin-pin tersebut bekerja pada tegangan 5V, dan setiap pin dapat menyediakan atau menerima arus 20mA, dan memiliki tahanan pull-up sekitar 20-50k ohm (secara default dalam posisi disconnect). Nilai maximum adalah 40mA, yang sebisa mungkin dihindari untuk menghindari kerusakan chip mikrokontroller
Beberapa pin memiliki fungsi khusus :
  • Serial, terdiri dari 2 pin : pin 0 (RX) dan pin 1 (TX) yang digunakan untuk menerima (RX) dan mengirim (TX) data serial.
  • External Interrups, yaitu pin 2 dan pin 3. Kedua pin tersebut dapat digunakan untuk mengaktifkan interrups. Gunakan fungsi attachInterrupt()
  • PWM: Pin 3, 5, 6, 9, 10, dan 11 menyediakan output PWM 8-bit dengan menggunakan fungsi analogWrite()
  • SPI : Pin 10 (SS), 11 (MOSI), 12 (MISO), dan 13 (SCK) mendukung komunikasi SPI dengan menggunakan SPI Library
  • LED : Pin 13. Pada pin 13 terhubung built-in led yang dikendalikan oleh digital pin no 13.
  • TWI : Pin A4 (SDA) dan pin A5 (SCL) yang mendukung komunikasi TWI dengan menggunakan Wire Library
Arduino Uno memiliki 6 buah input analog, yang diberi tanda dengan A0, A1, A2, A3, A4, A5. Masing-masing pin analog tersebut memiliki resolusi 10 bits (jadi bisa memiliki 1024 nilai). Secara default, pin-pin tersebut diukur dari ground ke 5V, namun bisa juga menggunakan pin AREF dengan menggunakan fungsi analogReference(). Beberapa in lainnya pada board ini adalah :
  • AREF. Sebagai referensi tegangan untuk input analog.
  • Reset. Hubungkan ke LOW untuk melakukan reset terhadap mikrokontroller. Sama dengan penggunaan tombol reset yang tersedia.


Komunikasi

Arduino Uno R3 memiliki beberapa fasilitas untuk berkomunikasi dengan komputer, berkomunikasi dengan Arduino lainnya, atau dengan mikrokontroller lain nya. Chip Atmega328 menyediakan komunikasi serial UART TTL (5V) yang tersedia di pin 0 (RX) dan pin 1 (TX). Chip ATmega16U2 yang terdapat pada board berfungsi menterjemahkan bentuk komunikasi ini melalui USB dan akan tampil sebagai Virtual Port di komputer. Firmware 16U2 menggunakan driver USB standar sehingga tidak membutuhkan driver tambahan.
Pada Arduino Software (IDE) terdapat monitor serial yang memudahkan data textual untuk dikirim menuju Arduino atau keluar dari Arduino. Led TX dan RX akan menyala berkedip-kedip ketika ada data yang ditransmisikan melalui chip USB to Serial via kabel USB ke komputer. Untuk menggunakan komunikasi serial dari digital pin, gunakan SoftwareSerial library
Chip ATmega328 juga mendukung komunikasi I2C (TWI) dan SPI. Di dalam Arduino Software (IDE) sudah termasuk Wire Library untuk memudahkan anda menggunakan bus I2C. Untuk menggunakan komunikasi SPI, gunakan SPI library.

Reset Otomatis (software)

Biasanya, ketika anda melakukan pemrograman mikrokontroller, anda harus menekan tombol reset sesaat sebelum melakukan upload program. Pada Arduino Uno, hal ini tidak lagi merepotkan anda. Arduino Uno telah dilengkapi dengan auto reset yang dikendalikan oleh software pada komputer yang terkoneksi. Salah satu jalur flow control (DTR) dari ATmega16U pada Arduino Uno R3 terhubung dengan jalur reset pada ATmega328 melalui sebuah kapasitor 100nF. Ketika jalur tersebut diberi nilai LOW, mikrokontroller akan di reset. Dengan demikian proses upload akan jauh lebih mudah dan anda tidak harus menekan tombol reset pada saat yang tepat seperti biasanya.

Pilihan terbaik untuk belajar mikrokontroller

Dengan banyak nya fasilitas yang di tawarkan, proteksi, feature dan kemudahan dari Arduino Uno R3, menjadikan board ini menjadi pilihan terbaik untuk membantu anda memahami dan belajar mikrokontroller. Dukungan tutorial, dokumentasi, contoh rangkaian dan proyek-proyek yang menarik tersedia begitu banyak nya di Internet. Tidak diragukan lagi, jika anda ingin mempelajari bagaimana perkawinan antara Software dan Hardware (disinilah keajaiban mikrokontroller yang menjadikannya sangat menarik), Arduino Uno R3 adalah pilihan terbaik anda.

Comments