Sabtu, 30 September 2023

Apa itu Arduino Uno ??

Arduino Uno


Nama : Sabrina Ranti Sonia
NIM : 202131024
Mata Kuliah : Mikroprosesor (B)
Dosen Pengampu : Max T. A. Cipta Widiyanto, S.Kom.,M.Kom


Pengertian Arduino Uno ?

Arduino merupakan pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri. 

Hardware Arduino diprogram menggunakan bahasa pemrograman C/C++, yang sudah disederhanakan dan dimodifikasi. Arduino mengikuti pola pemrograman Wiring(syntax dan library). Sementara untuk editor pemrograman nya (IDE - Intergrated Development Enviroment) dikembangkan dari Processing.

Dikembangkan oleh sebuah team yang beranggotakan orang-orang dari berbagai belahan dunia.anggota inti dari tim ini:
  1. Massimo Banzi Milano, Italy
  2. David Cuartielles Malmoe, Sweden 
  3. Tom Igoe New York, US
  4. Gianluca Martino Torino, Italy 
  5. David A. Mellis Boston, MA, USA
Software Arduino dapat dijalankan pada sistem operasi Windows, Macintosh OSX. dan Linux. Banyak sistem mikrokontroler lain hanya bisa dijalankan di Windows.

Konfigurasi hardware arduino dibagi:
  • Block regulator 5 volt dan 3.3V
  • Block minimum sistem standar mikrokontroler
  • Block pin (analog, digital dan power)
  • Block fidi untuk komunikasi dengan computer

Jenis - jenis Arduino


1. Arduino USB






2. Arduino Serial 

Menggunakan RS323 sebagai antarmuka pemograman dan komunikasi komputer
















3. Arduino Mega














4. Arduino Fio











Digunakan untuk nirkabel


5. Arduino Lylipad


















6. Arduino BT













Mengandung modul bluetooth untuk komunikasi nirkabel


7. Arduino Nano dan Arduino Mini


















Papan berbentuk kompak dan digunakan bersama breadboard. Contoh: § Arduino Nano 3.0, Arduino Nano 2.x § Arduino Mini 04, Arduino Mini 03, Arduino Stamp 02. Arduino Uno adalah generasi yang terakhir setelah Duemilanove dan dari sisi harganya sedikit lebih mahal karena memiliki spesifikasi yang lebih tinggi (microcontroller: Atmega328 dan flash memory: 32 KB). Komponen utama di dalam papan Arduino adalah sebuah microcontroller 8 bit dengan merk ATmega yang dibuat oleh perusahaan Atmel Corporation. Berbagai papan Arduino menggunakan tipe ATmega yang berbeda-beda tergantung dari spesifikasinya, sebagai contoh Arduino Uno menggunakan ATmega328 sedangkan Arduino Mega 2560 yang lebih canggih menggunakan ATmega2560. Untuk memberikan gambaran mengenai apa saja yang terdapat di dalam sebuah microcontroller, pada gambar berikut ini diperlihatkan contoh diagram blok sederhana dari microcontroller ATmega328 (dipakai pada Arduino Uno)


Blok-blok di atas dijelaskan sebagai berikut:
  • Universal Asynchronous Receiver/Transmitter (UART) adalah antar muka
  • Micro Arduino 11 yang digunakan untuk komunikasi serial seperti pada RS- 232, RS-422 dan RS-485.
  • 2KB RAM pada memory kerja bersifat volatile (hilang saat daya dimatikan), digunakan oleh variable-variabel di dalam program.
  • 32KB RAM flash memory bersifat non-volatile, digunakan untuk menyimpan program yang dimuat dari komputer. Selain program, flash memory juga menyimpan bootloader.Bootloader adalah program inisiasi yang ukurannya kecil, dijalankan oleh CPU saat daya dihidupkan. Setelah bootloader selesai dijalankan, berikutnya program di dalam RAM akan dieksekusi.
  • IKB EEPROM bersifat non-volatile, digunakan untuk menyimpan data yang tidak boleh hilang saat daya dimatikan. Tidak digunakan pada papan Arduino. Central Processing Unit (CPU), bagian dari microcontroller untuk menjalankan setiap instruksi dari program. 
  • Port input/output, pin-pin untuk menerima data (input) digital atau analog. dan mengeluarkan data (output) digital atau analog.

Bagian - bagian Arduino


Keterangan:

  • 14 Pin Input/Output Digital (0-13)
Berfungsi sebagai input atau output, dapat diatur oleh program. Khusus untuk 6 buah pin 3, 5, 6, 9, 10 dan 11, dapat juga berfungsi sebagai pin analog output dimana tegangan output nya dapat diatur. Nilai sebuah pin output analog dapat deprogram antara 0-255, dimana hal itu mewakili nilai tegangan 0-5V.

  • USB
Berfungsi untuk:
  • Memuat program dari komputer ke dalam papan
  • Komunikasi serial antara papan dan computer
  • Memberi daya listrik kepada papan 
  • Sambungan SVI

Sambungan atau jumper untuk memilih sumber daya papan, apakah dari sumber eksternal atau menggunakan USB. Sambungan ini tidak diperlukan lagi pada papan Arduino versi terakhir karena pemilihan sumber daya eksternal atau USB dilakukan secara otomatis.

  • QI-Kristal (Quartz Crystal Oscillator)
Jika microcontroller dianggap sebagai sebuah otak, maka kristal adalah jantungnya karena komponen ini menghasilkan detak-detak yang dikirim kepada microcontroller agar melakukan sebuah operasi untuk setiap detak-nya. Kristal ini dipilih yang berdetak 16 juta kali per detik (16MHz).

  • Tombol Reset S1
Untuk me-reset papan sehingga program akan mulai lagi dari awal. Perhatikan bahwa tombol reset ini bukan untuk menghapus program atau mengosongkan microcontroller.

  • In-Circuit Serial Programming (ICSP)
Port ICSP memungkinkan pengguna untuk memprogram microcontroller secara langsung, tanpa melalui bootloader. Umumnya pengguna Arduino tidak melakukan ini sehingga ICSP tidak terlalu dipakai walaupun disediakan.

  • IC1-Microcontroller Atmega
Komponen utama dari papan Arduino, di dalamnya terdapat CPU, ROM dan RAM.

  • XI-Sumber Daya Eksternal
Jika hendak disuplai dengan sumber daya eksternal, papan Arduino dapat diberikan tegangan DC antara 9-12V.

  • 6 Pin Input Analog (0-5)
Pin ini sangat berguna untuk membaca tegangan yang dihasilkan oleh sensor analog, seperti sensor suhu. Program dapat membaca nilai sebuah pin input antara 0-1023, dimana hal itu mewakili nilai tegangan 0-5V. Tanpa melakukan konfigurasi apapun, begitu sebuah papan Arduino dikeluarkan dari kotak pembungkusnya ia dapat langsung disambungkan ke sebuah komputer melalui kabel USB. Selain berfungsi sebagai penghubung untuk pertukaran data, kabel USB ini juga akan mengalirkan arus DC 5 Volt kepada papan Arduino sehingga praktis tidak diperlukan sumber daya dari luar. Saat mendapat suplai daya, lampu LED indikator daya pada papan Arduino akan menyala menandakan bahwa ia


Pada papan Arduino Uno terdapat sebuah LED kecil yang terhubung ke pin digital no 13. LED ini dapat digunakan sebagai output saat seorang pengguna membuat sebuah program dan ia membutuhkan sebuah penanda dari jalannya program tersebut. Ini adalah cara yang praktis saat pengguna melakukan uji coba. Umumnya microcontroller pada papan Arduino telah memuat sebuah program kecil yang akan menyalakan LED tersebut berkedip-kedip dalam jeda satu detik.


SOFTWARE ARDUINO

Sehubungan dengan pembahasan untuk saat ini software Arduino yang akan digunakan adalah driver dan IDE, walaupun masih ada beberapa software lain yang sangat berguna selama pengembangan Arduino. IDE Arduino adalah software yang sangat canggih ditulis dengan menggunakan Java. 

IDE Arduino terdiri dari:
  • Editor program, sebuah window yang memungkinkan pengguna menulis dan mengedit program dalam bahasa Processing. 
  • Compiler, sebuah modul yang mengubah kode program (bahasa Processing) menjadi kode biner. Bagaimanapun sebuah microcontroller tidak akan bisa memahami bahasa Processing. Yang bisa dipahami oleh microcontroller adalah kode biner. Itulah sebabnya compiler diperlukan dalam hal ini. 
  • Uploader, sebuah modul yang memuat kode biner dari Jomputer ke dalam memory di dalam papan Arduino.
Berikut ini adalah contoh tampilan IDE Arduino :


Fitur-fitur Ardunio

Catu Daya

  • VIN. Tegangan masukan untuk board Arduino apabila tidak sedang menggunakan USB. Misalnya dari adaptor. Anda juga dapat menyuplai tegangan Arduino pada jack DC yang tersedia.
  • 5V. Tegangan yang diregulasi. Ini bisa berasal dari tegangan masukan di pin VIN atau juga dari USB.
  • 3V3. Tegangan sebesar 3.3 volt yang dihasilkan dari chip FTDI (USB to TTL). Jumlah arus maksimum pada pin ini adalah 50 mA.
Input dan Output

Setiap 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 SV. Arus maksimum pada setiap pin ini adalah 40mA dan memiliki resistor pull-up internal. Disamping itu ada beberapa pin yang khusus yaitu:

  • 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.
  • 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.
  • 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.
  • PWM: 3, 5, 6, 9, 10, dan 11. Menyediakan output PWM 8-bit yang dapat dioperasikan dengan fungsi analogWrite().
  • SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pin-pin ini mendukung komunikasi SPI.
  • LED: 13. Disediakan LED yang terpasang ke pin digital 13.
  • 12C: 4 (SDA) dan 5 (SCL). Mendukung komunikasi 12C (TWI - Two Wire Interface) yang bisa dioperasikan menggunakan library Wire library.
Pin tambahan
  • REF: 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.

Kelebihan Arduino

  • Open Source
Hardware maupun software Arduino adalah open source. Artinya kita bisa membuat tiruan atau clone atau board yang kompatibel dengan board Arduino tanpa harus membeli board asli buatan Italy. Kalaupun kita membuat board yang persis dengan desain asli, kita tidak akan dianggap membajak (asalkan Chip pada Arduino sudah dilengkapi dengan bootloader yang akan menangani
  • Tidak Menggunakan Chip Programer
proses upload dari komputer. Dengan adanya bootloader ini kita tidak memerlukan chip programmer lagi, kecuali untuk menanamkan bootloader pada chip yang masih blank.
  • Koneksi USB
Sambungan dari komputer ke board Arduino menggunakan USB, bukan serial atau parallel port. Sehingga akan mudah menghubungkan Arduino ke PC atau laptop yang tidak memiliki serial/parallel port.
  • Fasilitas Chip Yang Cukup Lengkap
Arduino menggunakan chip AVR ATmega 168/328 yang memiliki fasilitas PWM, komunikasi serial, ADC, timer, interupt, SPI dan 12C. Sehingga Arduino bisa digabungkan bersama modul atau alat lain dengan protokol yang berbeda-beda.
  • Ukuran Kecil Dan Mudah Dibawa 
Ukuran board Arduino cukup kecil, mudah di bawah kemana-mana bersama laptop atau dimasukan ke dalam saku,
  • Bahasa Pemrograman Relatif Mudah
Walaupun bahasa pemrograman Arduino adalah bahasa C/C++, tetapi dengan penambahan library dan fungsi-fungsi standar membuat pemrograman Arduino lebih mudah dipelajari dan lebih manusiawi. Contoh, untuk mengirimkan nilai HIGH pada pin 10 pada Arduino, cukup menggunakan fungsi digitalWrite(10, HIGH); Sedangkan kalau menggunakan bahasa C aslinya adalah PORTB|(1<<2);
  • Tersedia Library Gratis
Tersedia library yang sangat banyak untuk menghubungkan Arduino dengan macam-macam sensor, aktuator maupun modul komunikasi. Misalnya library untuk mouse, keyboard, servo, GPS, dsb. Berhubung Arduino adalah opensource, maka library-library ini juga open source dan dapat di download gratis di website Arduino.
  • Pengembangan Aplikasi Lebih Mudah
Dengan bahasa yang lebih mudah dan adanya library dasar yang lengkap, maka mengembangkan aplikasi elektronik relatif lebih mudah. Contoh, kalau kita ingin membuat sensor suhu. Cukup membeli sebuah IC sensor suhu (misalnya LM35) dan menyambungkan ke Arduino. Kalau suhu tersebut ingin ditampilkan pada LCD, tinggal membeli sebuah LCD dan menambahkan library LCD pada program yang sama, dan seterusnya.

Kelemahan Arduino

  • Kode hex relatif lebih besar
  • Sering terjadi kesalahan fuse bit pada saat membuat bootloader
  • Harus memodifikasi program lama, karena pada arduino penggunaan pin harus "Disiplin"
  • Stoage Flash berkurang, karena dipakai untuk bootloader

Kesimpulan 

Arduino merupakan pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Arduino dikatakan sebagai sebuah platform dari physical computing yang bersifat open source. Pertama-tama perlu dipahami bahwa kata "platform" di sini adalah sebuah pilihan kata yang tepat. Arduino tidak hanya sekedar sebuah alat pengembangan, tetapi ia adalah kombinasi dari hardware, bahasa pemrograman dan Integrated Development Environment (IDE) yang canggih. IDE adalah sebuah software yang sangat berperan untuk menulis program, meng-compile menjadi kode biner dan meng-upload ke dalam memory microcontroller.


Tidak ada komentar:

Posting Komentar

Sejarah Perkembangan Mikroprosesor dari Awal Sampai Sekarang

Nama : Sabrina Ranti Sonia NIM : 202131024 Mata Kuliah : Mikroprosesor (B) Kehadiran Processor Intel merupakan tonggak awal dari kesuksesan ...