Anda di halaman 1dari 113

MAKALAH

ARDUINO
 
 

Oleh:

Nama: UMAROH ALVY HASANAH


NIM: 15.23.55201.009
 

 
 

TEKNIK INFORMATIKA
UNIVERSITAS DARUL ‘ULUM JOMBANG
2016
KATA PENGANTAR
Puji syukur kehadirat Allah SWT atas segala hidayah dan rahmat-Nya, saya dapat menyelesaikan makalah
yang berjudul Arduino . Dengan terselesaikannya Makalah ini, saya ingin menyampaikan terima kasih
kepada:

1. Allah SWT yang telah memberi Rahmat hidayah-Nya,


2. Bapak Citra Kusuma,S.ST selaku Pendidik Mata Kuliah Microprocessor
Dalam menyusun Makalah ini saya berusaha secara semaksimal  mungkin, tetapi saya menyadari bahwa
Makalah ini jauh dari kesempurnaan, namun hal tersebut tidak menutup kemungkinan adanya kelebihan
dan kekurangan, untuk itu kritik dan saran yang membangun sangat saya harapkan untuk perbaikan. Saya
berharap Makalah ini akan memberi manfaat bagi pembaca dan generasi baru.

Jombang, 27 September 2016

Penulis

                                                                                                  UMAROH ALVY HASANAH


 

 
DAFTAR ISI
Lembar Judul (cover/sampul depan) ……………………………………………..
Kata Pengantar ………………………………………………………………………….      i
Daftar Isi ……………………………………………………………………………………     ii
BAB I PENDAHULUAN
1.1 Latar Belakang …………………………………………………………………     1

1.2 Rumusan Masalah …………………………………………………………….     2

1.3 Tujuan dan Manfaat ………………………………………………………….     2

BAB II PEMBAHASAN
2.1 Pengertian arduino…………………………………………………………….    3

2.2 Jenis – jenis arduino…………………………………………………………..    7

2.3 Bagian – bagian arduino …………………………………………………….    12

2.5 Software arduino ………………………………………………………………    10

2.5 Fitur – fitur arduino …………………………………………………………..    10

2.6 Kelebihan Arduino ……………………………………………………………    11

2.7 Kelemahan Arduino ………………………………………………………….    13

BAB III PENUTUP


Simpulan ………………………………………………………………………………    14

Saran ……………………………………………………………………………………    14

DAFTAR PUSTAKA……………………………………………………………………    15
 

 
BAB I
PENDAHULUAN
 

 Latar belakang
Pengendali mikro (bahasa Inggris: microcontroller) adalah sistem mikroprosesor lengkap yang terkandung
di dalam sebuah chip. Mikrokontroler berbeda dari mikroprosesor serba guna yang digunakan dalam
sebuah PC, karena di dalam sebuah mikrokontroler umumnya juga telah berisi komponen pendukung
sistem minimal mikroprosesor, yakni memori dan antarmuka I/O, sedangkan di dalam mikroprosesor
umumnya hanya berisi CPU saja.

Berbeda dengan CPU serba-guna, mikrokontroler tidak selalu memerlukan memori eksternal, sehingga
mikrokontroler dapat dibuat lebih murah dalam kemasan yang lebih kecil dengan jumlah pin yang lebih
sedikit.

Sebuah chip mikrokontroler umumnya memiliki fitur:

 central processing unit – mulai dari prosesor 4-bit yang sederhana hingga prosesor kinerja tinggi
64-bit.
 input/output antarmuka jaringan seperti port serial (UART)
 antarmuka komunikasi serial lain seperti I²C, Serial Peripheral Interface and Controller Area
Network untuk sambungan sistem
 periferal seperti timer dan watchdog
 RAM untuk penyimpanan data
 ROM, EPROM, EEPROM atau Flash memory untuk menyimpan program komputer
 pembangkit clock – biasanya berupa resonator rangkaian RC
 pengubah analog-ke-digital
sistem minimal (system minimum) adalah sebuah rangkaian mikrokontroler yang sudah dapat digunakan
untuk menjalankan sebuah aplikasi. Sebuah IC mikrokontroler tidakakan berarti bila hanya berdiri sendiri.
Pada dasarnya sebuah sistem minimal mikrokontroler  memiliki prinsip yang sama.

Untuk membuat sistem minimal paling tidak dibutuhkan sistem clock dan reset, walaupun pada beberapa
mikrokontroler sudah menyediakan sistem clock internal, sehingga tanpa rangkaian eksternal pun
mikrokontroler sudah beroperasi.

ATMega328 adalah mikrokontroller keluaran dari atmel yang mempunyai arsitektur RISC (Reduce
Instruction Set Computer) yang dimana setiap proses eksekusi data lebih cepat dari pada arsitektur CISC
(Completed Instruction Set Computer).

Mikrokontroller ini memiliki beberapa fitur antara lain :

 130 macam instruksi yang hampir semuanya dieksekusi dalam satu siklus clock.
 32 x 8-bit register serba guna.
 Kecepatan mencapai 16 MIPS dengan clock 16 MHz.
 32 KB Flash memory dan pada arduino memiliki bootloader yang menggunakan 2 KB dari flash
memori sebagai bootloader.
 Memiliki EEPROM (Electrically Erasable Programmable Read Only Memory) sebesar 1KB
sebagai tempat penyimpanan data semi permanent karena EEPROM tetap dapat menyimpan data
meskipun catu daya dimatikan.
 Memiliki SRAM (Static Random Access Memory) sebesar 2KB.
 Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM (Pulse Width Modulation) output.
 Master / Slave SPI Serial interface.
Mikrokontroller ATmega 328 memiliki arsitektur Harvard, yaitu memisahkan memori untuk kode program
dan memori untuk data sehingga dapat memaksimalkan kerja dan parallelism.

Apakah arduino? Arduino adalah merupakan sebuah board minimum system mikrokontroler yang bersifat
open source. Didalam rangkaian board arduino terdapat mikrokontroler AVR seri ATMega 328 yang
merupakan produk dari Atmel..

1.2 Rumusan Masalah


 Pengertian dan sejarah Ardunio ?
 Bagaimana Fitur yang ada di Arduino ?
 Cara menggunakan Arduino
 Apa Kelebihan dan kekurangan dari Arduino ?
 Pengaplikasiaan Arduino
1.3 Tujuan dan Manfaat
Adapun tujuan dari pembuatan makalah ini yaitu untuk menambah pengetahuan dan memahami apa itu
ardunio. Manfaat pembuatan makalah ini yaitu pembaca dapat mengetahui tentang pengertian dan sejarah
ardunio, fitur ardunio, dan kelebihan ardunio serta pengaplikasiaannya .

 
BAB II
PEMBAHASAN
 
2. 1 Pengertian Arduino
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:

Massimo Banzi Milano, Italy (kanan depan-tanpa kacamata)

David Cuartielles Malmoe, Sweden (tengah)

Tom Igoe New York, US (kanan belakang)

Gianluca Martino Torino, Italy (kiri depan)

David A. Mellis Boston, MA, USA (kiri belakang)

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 ftdi untuk komunikasi dengan komputer

2.2 Jenis – jenis Ardunio


Jenis Jenis Arduino

2.2.1 Arduino Uno

Arduino adalah jenis  yang paling banyak digunakan. Terutama untuk pemula sangat disarankan untuk menggunakan Arduino

Uno karena 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.


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.
 1KB 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.

SPESIFIKASI
Arduino Uno
Microcontroller ATmega328P
Operating Voltage           5V
Input Voltage (recommended) 7-12V
Input Voltage (limit)       6-20V
Digital I/O Pins   14 (of which 6 provide PWM output)
PWM Digital I/O Pins 6
Analog Input Pins             6
DC Current per I/O Pin   20 mA
DC Current for 3.3V Pin 50 mA
Flash Memory   32 KB (ATmega328P)
SRAM    2 KB (ATmega328P)
EEPROM              1 KB (ATmega328P)
Clock Speed       16 MHz
LED_BUILTIN 13
Length 68.6 mm
Width 53.4 mm
Weight 25 g
2.2.2 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

SPESIFIKASI
Arduino Due
Microcontroller AT91SAM3X8E
Operating Voltage 3.3V
Input Voltage (recommended) 7-12V
Input Voltage (limits) 6-16V
Digital I/O Pins 54 (of which 12 provide PWM output)
Analog Input Pins 12
Analog Output Pins 2 (DAC)
Total DC Output Current on all I/O lines 130 mA
DC Current for 3.3V Pin 800 mA
DC Current for 5V Pin 800 mA
Flash Memory 512 KB all available for the user applications
SRAM 96 KB (two banks: 64KB and 32KB)
Clock Speed 84 MHz
Length 101.52 mm
Width 53.3 mm
Weight 36 g

2.2.3 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.

SPESIFIKASI
Arduino Mega
Microcontroller ATmega2560
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limit) 6-20V
Digital I/O Pins 54 (of which 15 provide PWM output)
Analog Input Pins 16
DC Current per I/O Pin 20 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 256 KB of which 8 KB used by bootloader
SRAM 8 KB
EEPROM 4 KB
Clock Speed 16 MHz
LED_BUILTIN 13
Length 101.52 mm
Width 53.3 mm
Weight 37 g

    2.2.4   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.

SPESIFIKASI
Arduino Leonardo
Processor 802.3 10/100 Mbit/s
Microcontroller ATmega32u4
Architecture AVR
Operating Voltage 5V
Flash memory 32 KB of which 4 KB used by bootloader
SRAM 2.5Kb
Clock Speed 16 MHz
Analog I/O Pins 12
EEPROM 1 KB
DC Current per I/O Pins 40 mA on I/O Pins; 1A on 3.3 V Pin only when
powered via external power supply
Input Voltage 7-12 V
Digital I/O Pins 36-57 V
Reserved Pins 4 used for SD card select; 10 used for W5500 select
Digital I/O Pins 20
PWM Output 7
Power Consumption 82 mA
PCB Size 53.34 x 68.58 mm
Card Reader Micro SD card, with active voltage translators
Weight 28g

     2.2.5  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.

SPESIFIKASI
Arduino Nano
Microcontroller ATmega328
Architecture AVR
Operating Voltage 5V
Flash Memory 32 KB of which 2 KB used by bootloader
SRAM 2 KB
Clock Speed 16 MHz
Analog I/O Pins 8
EEPROM 1 KB
DC Current per I/O Pins 40 mA (I/O Pins)
Input Voltage 7-12 V
Digital I/O Pins 22
PWM Output 6
Power Consumption 19 mA
PCB Size 18 x 45 mm
Weight 7g
Product Code A000005

     2.2.6  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.

SPESIFIKASI
Arduino Mini
Microcontroller ATmega328
Operating Voltage 5V
Input Voltage 7-9 V
Digital I/O Pins 14 (of which 6 provide PWM output)
Analog Input Pins 8 (of which 4 are broken out onto pins)
DC Current per I/O Pin 40 mA
Flash Memory 32 KB (of which 2 KB used by bootloader)
SRAM 2 KB
EEPROM 1 KB
Clock Speed 16 MHz
Length 30 mm
Width 18 mm

      2.2.7   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 12Pin analog.

SPESIFIKASI
Arduino Micro
Microcontroller ATmega32U4
Operating Voltage           5V
Input Voltage (recommended)  7-12V
Input Voltage (limit)       6-20V
Digital I/O Pins   20
PWM Channels 7
Analog Input Channels  12
DC Current per I/O Pin   20 mA
DC Current for 3.3V Pin 50 mA
Flash Memory   32 KB (ATmega32U4)
SRAM    2.5 KB (ATmega32U4)
EEPROM              1 KB (ATmega32U4)
Clock Speed       16 MHz
LED_BUILTIN      13
Length 48 mm
Width    18 mm

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

sama dengan Arduino yang lainnya.

SPESIFIKASI
Arduino Ethernet
Microcontroller ATmega328
Operating Voltage           5V
Input Voltage Plug (recommended) 7-12V
Input Voltage Plug (limits)            20V 6-
Input Voltage PoE (limits)             36-57V
Digital I/O Pins   ) 14 (of which 4 provide PWM output
Arduino Pins reserved:  10 to 13 used for SPI
4 used for SD card
2 W5100 interrupt (when bridged)
Analog Input Pins             6
DC Current per I/O Pin   40 mA
DC Current for 3.3V Pin 50 mA
Flash Memoryer 32 KB (ATmega328) of which 0.5 KB used by bootload
SRAM    2 KB (ATmega328)
EEPROM              1 KB (ATmega328)
Clock 16 Mhz
Length 68.6 mm
Width 53.3 mm
Weight 28 g

2.2.9 Arduino Fio

 
Digunakan untuk nirkabel

2.2.10 Arduino Lylipad


2.2.11 Ardunio BT

 
Mengandung modul bluetooth untuk komunikasi nirkabel

2.3 Bagian – bagian Ardunio

 
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 SV1
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.

 Q1 – 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.

 IC 1 – Microcontroller Atmega
Komponen utama dari papan Arduino, di dalamnya terdapat CPU, ROM dan RAM.

 X1 – 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 siap bekerja.
 
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.

2.4 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
 
2.5 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
5V. 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.
 I2C: 4 (SDA) dan 5 (SCL). Mendukung komunikasi I2C (TWI – Two Wire Interface) yang bisa
dioperasikan menggunakan library Wire library.
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.

2.6 Cara menggunakan Arduino dengan windows


Berikut ini adalah cara menggunakan Arduino dengan windows yang dapat kita coba
sendiri di rumah:
1. Memiliki Arduino dan kabel USB
Ini disarankan untuk menggunakan Arduino Uno, Arduino Duemilanove, Nano atau
Diecimila. Dan yang anda butuhkan disini adalah kabel USB standar (A – B) dan kabel
printer USB.
2. Download Software Arduino
Ini juga disarankan untuk memiliki versi terbaru dari mendownload Arduino. Setelah ini
selesai, memastikan untuk tidak pernah mengubah struktur folder. Apabila ingin
membukanya, bisa mengklik sebanyak dua kali pada folder.
3. Menghidupkan atau menggunakan aplikasi arduino
Ini dapat dilakukan dengan mengkilk sebanyak dua kali pada aplikasi arduino.
4. Buka contoh Blink

Buka contoh program LED Blink seperti File, Examples, Basics Blink.
5. Pilih board
Dengan memilih pada bagian menu tools, ini akan menghasilkan pilihan arduino sesuai apa
yang dibutuhkan.
6. Pilih serial port
Anda dapat memilih bagian yang akan digunakan sesuai kebutuhan pada menu tools tersebut.
Penggunaan Arduino biasanya dengan menggunakan POT3 dan juga bisa menggunakan
POT1 dan POT2.
7. Upload program
Untuk langkah selajutnya, bisa mengklik tombol “Upload” tunggu sebentar dan ini akan
memberikan tanda LED TX dan RX berkelap-kelip. Apabila langkah ini berhasil, akan
mendapatkan pesan.
2.7 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

 Tidak Menggunakan Chip Programer


Chip pada Arduino sudah dilengkapi dengan bootloader yang akan menangani 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 I2C. 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.

2.8 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
 

2.9 Pengaplikasian Arduino


Aplikasi dari penggunaan arduino sebenarnya sangat banyak sekali,namun pada kesempatan
ini saya hanya memberikan salah satu contoh penerapan arduino yaitu pada robot line folower
digital.
Skema Lengkap Line follower Digital IC Komparator
Pada skema lengkap robot line follower didesain dengan posisi sensor di atas permukaan putih. Dua buah sistem sensor di pasang
pada pin Analog Input A0 dan A1, sedangkan sistem actuator motor DC dipasang pada Port 9 dan 6 untuk motor kiri, PORT 5 dan 3 untuk
motor kanan. Prinsip kerja robot line follower berikut adalah saat sistem sensor berada di atas permukaan putih, akan ada pantulan cahaya
dari LED yang akan mengenai sensor cahaya LDR sehingga resistansi sensor LDR berkurang sehingga arus bergerak melalui LDR. Kondisi
tersebut menyebabkan arus output sensor menuju IC komparator LM 393 menjadi minimum, oleh IC LM 393, arus di non-inverting
sehingga output menuju pin Arduino menjadi LOW (0). Sebaliknya, saat sistem sensor berada di atas garis hitam, tidak akan ada pantulan
cahaya dari LED yang akan mengenai sensor cahaya LDR sehingga resistansi sensor LDR sangat besar sehingga arus tidak akan melalui
LDR. Kondisi tersebut menyebabkan arus output sensor menuju IC komparator LM 393 menjadi maksimum, oleh IC LM 393, arus di non-
inverting sehingga output menuju pin Arduino menjadi HIGH (1). Oleh Arduino data logika pin tersebut kemudian diolah untuk
mengerakan motor, motor akan bergerak jika kedua pin motor tersebut memiliki beda polaritas. Selengkapnya mengenai logika gerak robot
dapat dilihat pada Tabel 1 dan 2.

Tabel 21Kondisi Gerak Motor dan pengaruh Sensor

Kondisi A0 = 0 A0 =1
A1 = 0 Maju Belok Kiri
A1 = 1 Belok Kanan Mundur
Tabel 2 Kondisi Gerak Motor dan Kondisi Logika Tiap Pin Motor

Kondisi PORT 9 PORT 6 PORT 5 PORT 3


Maju LOW HIGH LOW HIGH
Belok Kiri HIGH LOW LOW HIGH
Belok Kanan LOW HIGH HIGH LOW
Mundur HIGH LOW HIGH LOW

 Gambar 1 Desain simulasi Proteus robot line follower digital

Gambar 1 adalah desain lengkap robot line follower digital dengan dua sensor cahaya dan komparator menggunakan board Arduino Uno.
Sensor cahaya dihubungkan pada PORT Analog Input A0 dan A1 board Arduino, sedangkan input motor driver IC L293D terhubung
dengan PORT yaitu 9, 6, 5, dan 3 Board Arduino.

Membuat Program Robot Line Follower Digital Menggunakan IDE Arduino

1    Susun rangkaian robot line follower digital menggunakan dua buah sensor seperti gambar berikut:

Gambar 2 Desain Fritzing rangkaian robot line follower digital

1. Hubungkan Arduino ke komputer dengan kabel USB.   


2. Buka software Arduino, dan ketik program berikut:
//ROBOT LINE FOLLOWER DIGITAL
//DILENGKAPI LCD DAN KOMUNIKASI SERIAL

#include
LiquidCrystal lcd(13,12,11,10,8,7);
int kiriA = 9;
int kiriB = 6;
int kananA = 5;
int kananB = 3;

void setup()
{
  lcd.begin(16,2);
  Serial.begin(9600);
  pinMode(kiriA,OUTPUT);
  pinMode(kiriB,OUTPUT);
  pinMode(kananA,OUTPUT);
  pinMode(kananB,OUTPUT);
  pinMode(A0,INPUT);
  pinMode(A1,INPUT);

void loop()
{
  int kiri = digitalRead(A0);
  int kanan = digitalRead(A1);

 //HIGH=hitam, LOW=putih

  if ((kiri==HIGH)&&(kanan==LOW))
  {
    digitalWrite(kiriA,HIGH);
    digitalWrite(kiriB,LOW);
    digitalWrite(kananA,LOW);
    digitalWrite(kananB,HIGH);

    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("i=hitam a=putih");
    lcd.setCursor(0,1);
    lcd.print("BELOK KIRI");

    //Serial Program
    Serial.println("Sensor Kiri Hitam & Sensor Kanan Putih");
    Serial.println("BELOK KIRI");
  }
  else if ((kiri==LOW)&&(kanan==HIGH))
  {
    digitalWrite(kiriA,LOW);
    digitalWrite(kiriB,HIGH);
    digitalWrite(kananA,HIGH);
    digitalWrite(kananB,LOW);
    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("i=putih a=hitam");
    lcd.setCursor(0,1);
    lcd.print("BELOK KANAN");

    //Serial Program
    Serial.println("Sensor Kiri Putih & Sensor Kanan Hitam");
    Serial.println("BELOK KANAN");
  }
  else if ((kiri==HIGH)&&(kanan==HIGH))
  {
    digitalWrite(kiriA,HIGH);
    digitalWrite(kiriB,LOW);
    digitalWrite(kananA,HIGH);
    digitalWrite(kananB,LOW);
    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("i=hitam a=hitam");
    lcd.setCursor(0,1);
    lcd.print("MUNDUR");

    //Serial Program
    Serial.println("Sensor Kiri Hitam & Sensor Kanan Hitam");
    Serial.println("MUNDUR");
  }

  else
  {
    digitalWrite(kiriA,LOW);
    digitalWrite(kiriB,HIGH);
    digitalWrite(kananA,LOW);
    digitalWrite(kananB,HIGH);
    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("i=putih a=putih");
    lcd.setCursor(0,1);
    lcd.print("MAJU");

    //Serial Program
    Serial.println("Sensor Kiri Putih & Sensor Kanan Putih");
    Serial.println("MAJU");
  }

3. Pilih Board dan Serial PORT yang digunakan di menu Tools. 


4. Tekan tombol Verify dipojok kiri toolbar. Setelah muncul pesan “Done Compiling”, selanjutnya tekan tombol Upload yang ada di kanan
tombol Verifysampai muncul pesan “Done Uploading”

.
Gambar 3 Output program robot line follower menggunakan Arduino Uno

Saat kedua sensor berada dipermukaan putih maka robot akan bergerak maju, jika sensor kiri berada diatas garis hitam sedangkan sensor
kanan di permukaan putih maka robot akan berbelok ke kiri, begitupula saat jika sensor kanan berada diatas garis hitam sedangkan sensor
kiri di permukaan putih maka robot akan berbelok ke kanan, sehingga robot akan senantiasa berada menelusuri garis hitam.

Bentuk Robot Line Follower Digital Berbasis Sensor Cahaya


Gambar 4 Bentuk jadi robot line follower menggunakan Mikrokontroler Arduino

 
BAB III
PENUTUP
3.1 Simpulan
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.

3.2 Saran
Pada dasarnya penulisan makalah ini jauh dari sempurna, banyak kekurangan baik yang disengaja ataupun
tidak. Maka dibutuhkan saran untuk meminimize kesalahan tentunya bagi penulis. Perkembangan
teknologi mikrokontroler yang sangat pesat mengharuskan kita memilih Sistem minimum yang tepat guna
menunjang fleksibilas kita dalam menyikapi perkembangan ini. Sistem minimum Arduino yang bersifat
open source dapat digunakan siapa saja dan dapat dikembangkan seperti keinginan kita sendiri tanpa harus
ada tekanan legalitas ataupun lisensi dari perusahaan pemegang lisensi tersebut. Dan semua kembali kita
sendiri mau memakai sistem minimum yang seperti apa.

 
DAFTAR PUSTAKA
 http://id.wikipedia.org/wiki/Pengendali_mikro
 Feri, PENGENALAN ARDUINO.pdf
 http://www.arduino.web.id/2012/03/tentang-arduino.html
 http://panduan.anekarobot.com/apa-dan-mengapa-arduino.html
 http://imarhu.wordpress.com/2012/04/09/apa-sih-arduino/
 

 
Arduino
Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Loncat ke navigasiLoncat ke pencarian

Arduino Software
Contoh program

Pengembang Arduino Software

Rilis stabil 0022 / 24 Desember 2010; 8 tahun lalu

github.com/arduino/Arduino
Repositori

Bahasa pemrograman Java

Sistem operasi Cross-platform

Jenis Integrated development environment

Lisensi LGPL atau GPL

Situs web arduino.cc/en/

Arduino dibandingkan dengan tangan manusia


Arduino adalah pengendali mikro single-board yang bersifat sumber terbuka, diturunkan
dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai
bidang. Perangkat kerasnya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa
pemrograman sendiri.
Arduino juga merupakan senarai perangkat keras terbuka yang ditujukan kepada siapa saja
yang ingin membuat purwarupa peralatan elektronik interaktif berdasarkan hardware dan
software yang fleksibel dan mudah digunakan. Mikrokontroler diprogram menggunakan bahasa
pemrograman arduino yang memiliki kemiripan syntaxdengan bahasa pemrograman C. Karena
sifatnya yang terbuka maka siapa saja dapat mengunduh skema hardware arduino dan
membangunnya.
Arduino menggunakan keluarga mikrokontroler ATMega yang dirilis oleh Atmel sebagai basis,
namun ada individu/perusahaan yang membuat clone arduino dengan menggunakan
mikrokontroler lain dan tetap kompatibel dengan arduino pada level hardware. Untuk fleksibilitas,
program dimasukkan melalui bootloader meskipun ada opsi untuk mem-bypass bootloader dan
menggunakan pengunduh untuk memprogram mikrokontroler secara langsung melalui port ISP.

Daftar isi

 1Sejarah Singkat
 2Jenis-Jenis Arduino
 3Contoh program
 4Arduino-compatible boards
 5Bacaan lanjutan
 6Pranala luar

Sejarah Singkat[sunting | sunting sumber]


Semuanya berawal dari sebuah thesis yang dibuat oleh Hernando Barragan, di
Institute Ivrea, Italia pada tahun 2005, dikembangkan oleh Massimo Banzi dan David Cuartielles
dan diberi nama Arduin of Ivrea. Lalu diganti nama menjadi Arduino yang dalam bahasa Italia
berarti teman yang berani.
Tujuan awal dibuat Arduino adalah untuk membuat perangkat mudah dan murah, dari perangkat
yang ada saat itu. Dan perangkat tersebut ditujukan untuk para siswa yang akan membuat
perangkat desain dan interaksi.

Saat ini tim pengembangnya adalah Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca
Martino, David Mellis, dan Nicholas Zambetti. Mereka mengupayakan 4 hal dalam Arduino ini,
yaitu:

1. Harga terjangkau
2. Dapat dijalankan diberbagai sistem operasi, Windows, Linux, Mac, dan sebagainya.
3. Sederhana, dengan bahasa pemograman yang mudah bisa dipelajari orang awam,
bukan untuk orang teknik saja.
4. Open Source, hardware maupun software.
Sifat Arduino yang Open Source, membuat Arduino berkembang sangat cepat. Sehingga banyak
lahir perangkat-perangkat sejenis Arduino. Seperti DFRDuino atau Freeduino, sedangkan untuk
lokal ada CipaDuino yang dibuat oleh SKIR70, lalu ada MurmerDuino yang dibuat oleh Robot
Unyil, ada lagi AViShaDuino yang salah satu pembuatnya adalah Admin Kelas Robot.
Sampai saat ini pihak resmi, sudah membuat berbagai jenis-jenis Arduino. Mulai dari yang paling
mudah dicari dan paling banyak digunakan, yaitu Arduino Uno. Hingga Arduino yang sudah
menggunakan ARM Cortex, berbentuk Mini PC. Hingga saat ini sudah ada ratusan ribu Arduino
yang digunakan digunakan di dunia sejak tahun 2011. Arduino juga sudah dipakai oleh
perusahaan-perusahaan besar, contohnya Google menggunakan Arduino untuk Accessory
Development Kit, NASA memakai Arduino untuk prototypin, ada lagi Large Hadron Colider
memakai Arduino dalam beberapa hal untuk pengumpulan data.
Banyak yang bertanya Arduino ini sebenarnya menggunakan bahasa pemprograman apa?
Arduino sebenarnya menggunakan bahasa C, yang sudah disederhanakan. Sehingga orang
awam pun bisa menjadi seniman digital, bisa mempelajari Arduino dengan mudahnya.

Jenis-Jenis Arduino[sunting | sunting sumber]


Seperti Microcontroller yang banyak jenisnya, Arduino lahir dan berkembang, kemudian muncul
dengan berbagai jenis. Diantaranya adalah:
a. Arduino Uno
Jenis yang ini adalah yang paling banyak digunakan. Terutama untuk pemula sangat disarankan
untuk menggunakan Arduino Uno. 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 pemprograman
cukup menggunakan koneksi USB type A to To type B. Sama seperti yang digunakan pada USB
printer.
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
pemprogramannya menggunakan Micro USB, terdapat pada beberapa handphone.
c. Arduino Mega
Mirip dengan Arduino Uno, sama-sama menggunakan USB type A to B untuk
pemprogramannya. 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.
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
pemprogramannya.
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.
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.
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.
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.
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.
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.
k. Arduino Esplora
Rekomendasi bagi kamu yang mau membuat gadget sepeti Smartphone, karena sudah
dilengkapi dengan Joystick, button, dan sebagainya. Kamu hanya perlu tambahkan LCD, untuk
lebih mempercantik 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.

Contoh program[sunting | sunting sumber]

int LED_PIN = 13;

void setup () {
pinMode (LED_PIN, OUTPUT); // enable pin 13 for digital output
}

void loop () {
digitalWrite (LED_PIN, HIGH); // turn on the LED
delay (1000); // wait one second (1000 milliseconds)
digitalWrite (LED_PIN, LOW); // turn off the LED
delay (1000); // wait one second
}

Arduino-compatible boards[sunting | sunting sumber]


Karena rancangan hardware dan software Arduino bersifat open-source, produsen lain bebas
untuk menirunya, misalnya:

 Freeduino
 Cosmo Black Star
 Freeduino MaxSerial
 Zigduino

Bacaan lanjutan[sunting | sunting sumber]


 Getting Started with Arduino; Massimo Banzi, Michael Shiloh; 262 pages; 2014; ISBN 1-
4493-6333-4.
 Make: Sensors; Tero Karvinen, Kimmo Karvinen, Ville Valtokari; 400 pages;
2014; ISBN 978-1-4493-6810-4.
 Arduino For Dummies; John Nussey; 446 pages; 2013; ISBN 978-1118446379.
 Programming Arduino Next Steps: Going Further with Sketches; Simon Monk;
2013; ISBN 978-0071830256.
 Exploring Arduino: Tools and Techniques for Engineering Wizardry; Jeremy Blum; 384
pages; 2013; ISBN 978-1118549360.
 Arduino Workshop: A Hands-On Introduction with 65 Projects; John Boxall; 392 pages;
2013; ISBN 978-1593274481.
 Beginning C for Arduino: Learn C Programming for the Arduino and Compatible
Microcontrollers; Jack Purdum; 280 pages; 2012; ISBN 978-1430247760.
 Programming Arduino: Getting Started With Sketches; Monk Simon; 162 pages;
2011; ISBN 978-0071784221.
 Arduino: A Quick Start Guide; Maik Schmidt; Pragmatic Bookshelf; 276 pages;
2011; ISBN 978-1-934356-66-1.
 Make: Electronics (Learning by Discovery); Charles Platt; 352 pages; 2009; ISBN 978-
0596153748.

Mengenal Arduino : Pengertian, Sejarah, Kelebihan dan Jenis-


Jenisnya
 Selasa, 07 Agustus 2018  Arduino, Mikrokontroller, Sejarah
Pengertian Arduino dan jenis -  jenisnya – Arduino adalah terobosan baru dalam dunia mikrokontroller. Saat ini sudah banyak

project elektronika dan robot 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.

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 :

     1.       Harga yang  terjangkau

     2.       Dapat dijalankan diberbagai sistem operasi, Windows, Linux, Max, dan sebagainya.

     3.       Sederhana dalam segi Software maupun Hardware sehingga mudah dipelajari bahkan oleh orang         awam

     4.       Open Source, hardware maupun software.

Kelebihan Arduino

Arduino memiliki berbagai kelebihan dibandingkan dengan mikrokontroller lain.  Sesuai dengan 4 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.

Dari segi hardware sendiri Arduino memiliki Keistimewaan Diantaranya :

Soket USB

Soket 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 analog

Input /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 Daya

Catu 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 Fisik

Ukuran 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


1. Arduino Uno

Arduino adalah jenis  yang paling banyak digunakan. Terutama untuk pemula sangat disarankan untuk menggunakan Arduino

Uno karena 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.

SPESIFIKASI
Arduino Uno
Microcontroller ATmega328P
Operating Voltage           5V
Input Voltage (recommended) 7-12V
Input Voltage (limit)       6-20V
Digital I/O Pins   14 (of which 6 provide PWM output)
PWM Digital I/O Pins 6
Analog Input Pins             6
DC Current per I/O Pin   20 mA
DC Current for 3.3V Pin 50 mA
Flash Memory   32 KB (ATmega328P)
SRAM    2 KB (ATmega328P)
EEPROM              1 KB (ATmega328P)
Clock Speed       16 MHz
LED_BUILTIN 13
Length 68.6 mm
Width 53.4 mm
Weight 25 g

2. 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

SPESIFIKASI
Arduino Due
Microcontroller AT91SAM3X8E
Operating Voltage 3.3V
Input Voltage (recommended) 7-12V
Input Voltage (limits) 6-16V
Digital I/O Pins 54 (of which 12 provide PWM output)
Analog Input Pins 12
Analog Output Pins 2 (DAC)
Total DC Output Current on all I/O lines 130 mA
DC Current for 3.3V Pin 800 mA
DC Current for 5V Pin 800 mA
Flash Memory 512 KB all available for the user applications
SRAM 96 KB (two banks: 64KB and 32KB)
Clock Speed 84 MHz
Length 101.52 mm
Width 53.3 mm
Weight 36 g

3. 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.

SPESIFIKASI
Arduino Mega
Microcontroller ATmega2560
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limit) 6-20V
Digital I/O Pins 54 (of which 15 provide PWM output)
Analog Input Pins 16
DC Current per I/O Pin 20 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 256 KB of which 8 KB used by bootloader
SRAM 8 KB
EEPROM 4 KB
Clock Speed 16 MHz
LED_BUILTIN 13
Length 101.52 mm
Width 53.3 mm
Weight 37 g

      5.   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.

SPESIFIKASI
Arduino Leonardo
Processor 802.3 10/100 Mbit/s
Microcontroller ATmega32u4
Architecture AVR
Operating Voltage 5V
Flash memory 32 KB of which 4 KB used by bootloader
SRAM 2.5Kb
Clock Speed 16 MHz
Analog I/O Pins 12
EEPROM 1 KB
DC Current per I/O Pins 40 mA on I/O Pins; 1A on 3.3 V Pin only when
powered via external power supply
Input Voltage 7-12 V
Digital I/O Pins 36-57 V
Reserved Pins 4 used for SD card select; 10 used for W5500 select
Digital I/O Pins 20
PWM Output 7
Power Consumption 82 mA
PCB Size 53.34 x 68.58 mm
Card Reader Micro SD card, with active voltage translators
Weight 28g

      6.  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.

SPESIFIKASI
Arduino Nano
Microcontroller ATmega328
Architecture AVR
Operating Voltage 5V
Flash Memory 32 KB of which 2 KB used by bootloader
SRAM 2 KB
Clock Speed 16 MHz
Analog I/O Pins 8
EEPROM 1 KB
DC Current per I/O Pins 40 mA (I/O Pins)
Input Voltage 7-12 V
Digital I/O Pins 22
PWM Output 6
Power Consumption 19 mA
PCB Size 18 x 45 mm
Weight 7g
Product Code A000005

      7.  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.

SPESIFIKASI
Arduino Mini
Microcontroller ATmega328
Operating Voltage 5V
Input Voltage 7-9 V
Digital I/O Pins 14 (of which 6 provide PWM output)
Analog Input Pins 8 (of which 4 are broken out onto pins)
DC Current per I/O Pin 40 mA
Flash Memory 32 KB (of which 2 KB used by bootloader)
SRAM 2 KB
EEPROM 1 KB
Clock Speed 16 MHz
Length 30 mm
Width 18 mm
      8.   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 12Pin analog.

SPESIFIKASI
Arduino Micro
Microcontroller ATmega32U4
Operating Voltage           5V
Input Voltage (recommended)  7-12V
Input Voltage (limit)       6-20V
Digital I/O Pins   20
PWM Channels 7
Analog Input Channels  12
DC Current per I/O Pin   20 mA
DC Current for 3.3V Pin 50 mA
Flash Memory   32 KB (ATmega32U4)
SRAM    2.5 KB (ATmega32U4)
EEPROM              1 KB (ATmega32U4)
Clock Speed       16 MHz
LED_BUILTIN      13
Length 48 mm
Width    18 mm

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

sama dengan Arduino yang lainnya.

SPESIFIKASI
Arduino Ethernet
Microcontroller ATmega328
Operating Voltage           5V
Input Voltage Plug (recommended) 7-12V
Input Voltage Plug (limits)            20V 6-
Input Voltage PoE (limits)             36-57V
Digital I/O Pins   ) 14 (of which 4 provide PWM output
Arduino Pins reserved:  10 to 13 used for SPI
4 used for SD card
2 W5100 interrupt (when bridged)
Analog Input Pins             6
DC Current per I/O Pin   40 mA
DC Current for 3.3V Pin 50 mA
Flash Memoryer 32 KB (ATmega328) of which 0.5 KB used by bootload
SRAM    2 KB (ATmega328)
EEPROM              1 KB (ATmega328)
Clock 16 Mhz
Length 68.6 mm
Width 53.3 mm
Weight 28 g

 
 

 
Advertisements
Sejarah Perkembangan Platform Open Source Arduino
Bismillah
Salam dari admin Creative Project. Segala Artikel yang mimin tampilkan disini adalah
semata-mata untuk berbagi, semoga bermanfaat bagi kita semua. Mohon maaf apabila
terdapat kesalahan yang ada pada blog ini dikarenakan kurangnya ilmu dari admin blog.
Mohon dimaklumi bagi para pembaca, karena tak ada gading yang tak retak.

Kali ini admin blog ingin berbagi sedikit pengetahuan tentang Arduino. Banyak yang sudah
tahu perangkat yang satu ini tapi mungkin banyak juga yang belum mengetahui sejarah
perkembangan Arduino dari awal pengembangan sampai dengan saat ini. Dengan alasan
inilah admin blog membuat artikel ini. Semoga bermanfaat dan selamat membaca.

Mikrokontroler dan Mikroprosesor


Sebelum membahas sejarah tentang Arduino ada baiknya kita memahami terlebih dahulu apa yang dimaksud
dengan mikrokontroler dan mikroprosesor. Apakah Mikrokontroler Itu? Mikrokontroler adalah
sebuah komputer kecil di dalam sebuahintegrated circuit(IC) yang berisi sebuah inti prosesor, memori, dan
perangkat input/output yang dapat di program. Sebagai alat pemrosesan, mikrokontroler dapat digunakan
untuk mengambil keputusan, melakukan hal-hal yang bersifat berulang, dan dapat berinteraksi dengan piranti-
piranti luar, seperti sensor ultrasonik untuk mengukur jarak terhadap suatu objek, penerima GPS untuk
memperolah data posisi kebumian dari setelit, dan interaksi dengan perangkat lainnya. Mikrokontroler juga
biasa disingkat dengan MCU atau uC. Perusahaan yang terkenal sebagai pembuat mikrokontroler antara lain
adalah Atmel, Cypress Semiconductor, Microchip, dan Silicon Laboratories. Contoh nama-nama mikrokontroler
untuk masing-masing vendor adalah berikut ini :

Nama Vendor Nama Mikrokontroler


Atmel AVR (8 bit), AVR 32 (32 bit), AT91SAM
(32 bit)
Cypress Semiconductor M8C Core
MicroChip Technology PIC
Silicon Laboratories 8051
Tentunya masih terdapat vendor lainnya yang tidak admin tuliskan disini.

Mikrokontroler didesain untuk aplikasi tertanam (embedded applications),  aplikasi dengan tugas-tugas


tertentu (specific tasks) dengan tujuan tertentu yang dikerjakan secara berulang-ulang, sangat berbeda
dengan mikroprosesor yang digunakan pada aplikasi yang memiliki tujuan yang umum. Lalu apa itu
mikroprosesor? Mikroprosesor adalah prosesor komputer yang menggabungkan fungsi central processing
unit (CPU) pada satu sirkuit terpadu (IC). Sebuah mikroprosesor dirancang untuk melakukan
operasiaritmatika dan logika. Contohnya adalah melakukan operasi menambah, mengurangi,
dan membandingkan. Operasi ini adalah hasil dari satu set instruksi yang merupakan bagian dari
desain mikroprosesor. Contoh mikroprosesor adalah Intel Pentium 1,2,3,4, core 2 duo, i3, i5 dan lain-lain.
Seorang desainer sistem harus menambahkan sendiri perangkat luar yang dibutuhkan agar sebuah sistem dapat
dibangun seperti ROM, RAM, memori, perangkat input output dan perangkat
lainnya. Aplikasi mikroprosesor meliputi DesktopPC, Laptop dan mungkin masih terdapat aplikasi lain yang
belum admin ketahui. Untuk membedakan antara mikrokontroler dan mikroprosesor cukup mudah, perhatikan
tabel dibawah ini : 

Mikrokontroler Mikroprosesor

Terdapat CPU, ROM, RAM perangkat input Hanya terdapat CPU saja, perangkat seperti
output dalam satu chip ROM, RAM dan lainnya perlu ditambahkan
sebagai perangkat luar
Saat ini yang admin ketahui kecepatan Kecepatan diatas 1GHz
mikrokontroler masih dalam satuan MHz
Harga lebih murah Harga lebih mahal
Penanganan lebih mudah Penanganan lebih sulit
Dapat berdiri sendiri Perlu penambahan perangkat luar agar
suatu sistem dapat dibangun

Untuk melihat penjelasan lebih jauh mengenai mikrokontroler dan mikroprosesor silahkan buka link sumber
diakhir postingan ini. 

Lalu bagaimana dengan Arduino?


Arduino adalah sebuah open-source prototyping platform yang didasarkan pada easy-to-use hardware and
software. Secara perangkat keras Arduino adalah jenis suatu papan (board) yang berisi mikrokontroler atau
dapat disebut sebagai sebuah papan mikrokontroler. Didalam board  ini sudah termasuk pin sebagai masukan
dan keluaran baik yang bersifat digital maupun analog. Arduino berlandaskan open source pada perangkat
keras - Open Source HardWare (OSHW) dan perangkat lunak - Free and Open Source Software (F/OSS atau
FOSS). Arduino memiliki harga yang cukup terjangkau dengan fasilitas yang ditawarkan. Atau jika ingin
membuat sendiri board Arduino berikut dengan source code-nya maka skematik dan firmware-nya tersedia
secara gratis dan bebas di internet. Dengan Arduino kita dapat menghubungkan berbagai jenis sensor untuk
membuat sebuah proyek yang sederhana sampai yang cukup kompleks. Saat ini Arduino sangat popular di
lingkungan penggemar / hobi elektronika sebagai perangkat pengendali berbagai proyek termasuk robotik.
Arduino telah memiliki komunitas serta forum yang luas di internet untuk membantu para pemula untuk
belajar atau sekedar untuk mebagikan source code yang anda buat kepada semua pengguna Arduino di seluruh
dunia.

Sejarah Nama Arduino


Semuanya berawal di Ivrea, itally. Nama Arduino mungkin terdengar cukup berbeda dengan perangkat
elektronik yang pernah ada selama ini, seperti LED (led emitting diode), atau resistor atau transistor bahkan
mikrokontroler seperti AVR atau PIC atau yang lainnya. Pemilihan nama Arduino ini ternyata memiliki kaitan
yang erat dengan sejarah perkembangannya. Salah satu pengembang inti Arduino adalah bernama Massimo
Banzi yang juga merupakan pemberi nama dari Arduino tersebut. Ivrea merupakan sebuah kota di Italia Utara
dan cukup terkenal dengan sejarah kerajaannya serta seorang raja yang pernah memerintah di negara bagian
tersebut. Pada tahun 1002 Masehi, seorang raja bernama Arduin memerintah di negara tersebut. Yang 2 tahun
kemudian keberadaannya digantikan oleh  raja Henry II dari jerman. Di kota Ivrea terdapat sebuah bar dengan
nama “‘Bar Di Re Arduino” atau yang berarti ”Bar Raja Arduino” yang diambil dari nama raja “Arduin” dengan
maksud untuk mengenang beliau. Bar ini kemudian merupakan tempat yang sering dikunjungi oleh Massimo
Banzi dan beberapa rekannya untuk bertemu, yang kemudian nama Arduino ia berikan ke perangkat yang ia
kembangkan sebagai rasa hormatnya kepada tempat ini. 

Tim Inti Pengembang Arduino


Sebelum membahas sejarah bagaimana Arduino dikembangkan dan digunakan, berikut ini merupakan anggota
inti dari tim pengembang Arduino, yakni antara lain : Massimo Banzi (kanan depan-tanpa kacamata), David
Cuartielles (tengah), Tom Igoe (kanan belakang), Gianluca Martino (kiri depan), dan David Mellis (kiri
belakang).

Banzi merupakan seorang arsitek perangkat lunak yang direkrut oleh Interactive Design Institute
Ivrea (IDII) sebagai profesor dalam rangka untuk mempromosikan cara-cara baru dalam melakukan desain
interaktif atau dengan kata lain komputasi fisik. Meskipun ia memiliki ide yang baik namun memiliki waktu
yang sangat terbatas ditambah lagi dengan anggaran yang terus berkurang. Seperti rekan-rekannya yang lain ia
pun harus bergantung dengan BASIC Stamp, sebuah mikrokontroler yang dikembangkan oleh Parallax (sebuah
perusahaan yang berada di California) untuk mengerjakan proyek-proyek miliknya. Sebagian mungkin pernah
mendengar perusahaan Parallax dengan produknya seperti servo atau servo controller. Para Insinyur saat itu
mungkin telah menggunakan BASIC Stamp hampir dalam kurung waktu satu dekade. BASIC Stamp di program
dengan bahasa pemrogrman basic. Secara fisik BASIC Stamp merupakan sebuah papan sirkuit yang dikemas
secara rapi dengan beberapa kelangkapan seperti power supply,microcontroller, memory, dan port
input/output yang dapat digunakan untuk  antarmuka ke perangkat luar.

Namun BASIC Stamp memiliki dua masalah menurut Massimo Banzi. Yang pertama BASIC Stamp ternyata untuk
beberapa proyek mahasiswanya tidak memiliki daya komputasi yang cukup. Serta masalah yang kedua adalah
BASIC Stamp besutan Parallax ini memiliki harga yang terlalu mahal. Faktanya harga sebuah BASIC Stamp
dengan peralatan dasar adalah US $100, tentunya ini merupakan harga yang sangat tinggi. Selain itu BASIC
Stamp tidak men-support cross platform, yang mana sebagian besar desainer di IDII kala itu menggunakan
operating system macintosh. Sementara itu sebuah konsep “friendly programming language” yang bernama
“processing” berhasil dikembangkan oleh teman Banzi yakni Casey Reas di MIT. Processing berkembang dengan
pesat dan mendapatkan popularitas yang sangat baik. Seorang amatir bahkan dapat membuat visualisasi data
yang kompleks dengan tampilan yang baik dan menarik. Hal ini merupakan terobosan besar dalam kemudahan
penggunaan bagi sebuah Integrated Development Environment (IDE). Banzi sangat menyukai konsep ini dan
berharap untuk membuat software serupa untuk memprogram mikrokontroler dengan sebuah tampilan grafis
pada sebuah layar. 

Kontribusi dari  Hernando Barragan


Salah satu mahasiswa Banzi, Hernando Barragan mengambil langkah awal dalam arah untuk menciptakan
perangkat lunak yang mirip dengan processing. Dia mengembangkan sebuah platform prototype yang dikenal
dengan nama “wiring”. Platform Wiring mencakup sebuah IDE sebagai perangkat lunak untuk memprogram
yang didalamnya sudah terdapat library functions untuk memudahkan pemrograman mikrokontroler dan
sebuah papan sirkuit yang siap digunakan dengan menggunakan mikrokontroler Atmega 128 sebagai
pemrosesnya. Platform prototype ini merupakan thesis dari Hernando Barragan dengan pembimbingnya
Massimo Banzi dan Casey Reas pada tahun 2004 dengan judul “Arduino–La rivoluzione dell’open hardware”
(“Arduino – The Revolution of Open Hardware”).  Konsep dari proyek ini ternyata menjanjikan sebuah
keberhasilan bahkan sampai dengan saat ini. Namun Banzi ternyata memiliki mimpi yang lebih besar. Ia
berharap untuk membuat sebuah platform yang lebih murah, sederhana dan lebih mudah digunakan. 

The First Prototype Board


Pada tahun 2005, Massimo Banzi bersama dengan David Mellis (mahasiswa IDII pada saat itu) dan David
Cuartielles, menambahkan dukungan mikrokontroler ATmega 8 untuk Wiring. Namun mereka tidak
melanjutkan pengembangan Wiringmelainkan mereka menyalin kode sumber Wiring dan mulai
mengembangkannya sebagai proyek yang terpisah, yang kemudian disebut Arduino.

Open Source Model – A Big Decision

Banzi dan rekan-rekannya sangat percaya dengan kekuatan dari open source. Mereka pikir
akan lebih baik untuk membuka platform tersebut agar dapat diakses orang sebanyak-
banyaknya sehinga pengembangan platform dapat dilakukan secara cepat. Faktor lain yang
menentukan keputusan Banzi untuk membuka platformnya secara open source adalah bahwa
setelah beroperasi hampir selama 5 tahun, IDII tidak memiliki dana yang cukup lagi untuk
mendukung proyek ini bahkan terancam untuk menghentikan pendanaan. Semua anggota
fakultas takut proyek ini tidak dapat bertahan atau bahkan akan digelapkan. Sehingga Banzi
membuat keputusan besar dengan menjadikan platform ini sebagai open source.

HOW Banzi And Team Managed To Create Arduino And


Make It Available For Public

Cukup jelas bahwa untuk model open source biasa digunakan untuk pengembangan perangkat lunak dan tidak
pernah untuk pengembangan perangkat keras. Agar dapat  mengembangkan perangkat keras secara open
source mereka berusaha menemukan solusi lisensi yang cocok yang bisa berlaku untuk papan sirkuit tersebut.
Setelah melakukan sedikit investigasi, Banzi dan tim melihat seluruh hal dari sudut yang berbeda dan
memutuskan untuk menggunakan lisensi dari Creative Commons, sebuah kelompok non-profit yang biasanya
digunakan untuk karya-karya budaya seperti karya tulis dan musik. Menurut Banzi perangkat keras ini
merupakan bagian dari budaya sehingga harus dibagikan kepada orang lain.  "You
could think of
hardware as piece of culture you want to share with other people," Banzi says.
Tahap berikutnya yang mereka lakukan adalah membuat papan sirkuitnya. Tim berusaha memperbaiki
spesifikasi dari papan sirkuit dan kemudian memutuskan untuk menjualnya dengan harga US $30. "It
had to
be the equivalent of going out to dinner at a pizza place," Banzi says.  Banzi merasa
bahwa Arduino harus terjangkau bagi semua kalangan. Namun mereka juga ingin membuatnya terlihat benar-
benar unik, dengan konsep sesuatu yang akan menonjol dan juga terlihat keren. Sementara untuk papan sirkuit
yang sejenisnya berwarna hijau, mereka malah membuatnya dengan warna biru. Sementara beberapa
produsen mengurangi jumlah pin input dan output dari sirkuit mereka, tim Arduino malah menambahkan
banyak pin input dan output untuk papan sirkuit mereka. Sebagai keunikan lainnya mereka menambahkan
sebuah peta kecil Italia di belakang papan Arduino. Berikut perkataan Banzi terkait desain unik dari Arduino ini
: "Alot of the design choices are weird for a real engineer, but I’m not a real
engineer, so I did it in a silly way!".  Gianluca Martino, salah satu Engineer di tim merasa bahwa
pendekatan nontradisional untuk desain papan sirkuit merupakan ide yang cukup cemerlang. Dia berpikir
bahwa produk tersebut dibuat sebagai hasil dari cara berpikir baru tentang elektronika, tidak dengan cara
rekayasa di mana anda harus menghitung elektroda, tetapi menggunakan pendekatan “Do It Your Self” atau
DIY, kemudahan dalam membuat sebuah proyek elektronika.

Produk yang dibuat oleh tim Arduino mengusung konsep papan sirkuit dengan komponen-komponen yang
mudah ditemukan serta murah seperti Atmega 328 sehingga memudahkan seseorang jika ingin membuat papan
sirkuit miliknya sendiri. Selain itu konsep lain yang diterapkan oleh tim adalah konsep “plug and play”. Papan
sirkuit Arduino dihubungkan dengan PC dengan menggunakan jalur port USB. Seperti yang diketahui port USB
sendiri merupakan sebuah terobosan antar muka komputer dengan perangkat luar dengan mengusung
konsep plug and play. Jika pada komputer terdahulu terdapat port parallel atau port serial maka kini keduanya
telah tergantikan fungsinya dengan port USB ini. Sebelumnya sebuah perangkat yang dihubungkan dengan
komputer melalui port serial maupun parallel akan membutuhkan restart komputer terlebih dahulu agar
perangkat terdeteksi di operating system, hal ini tentunya tidak praktis. Tim pengembang Arduino memiliki
konsep yang sama agar perangkat papan sirkuitnya dapat dicopot dan dihubungkan ke komputer  dengan cepat
dan dapat dengan segera diprogram.

Berikut ini merupakan filosofi Arduino yang diungkapkan oleh David Cuartielles (seorang enginerr
telekomunikasi di tim Arduino)  “if you wants
to learn electronics, you should be able to
learn as you go from day one, instead of starting bylearning Algebra, and
Arduino is ideal to learn electronics from day one”. Tim Arduino kemudian melakukan
pengujian berdasarkan filosofi tersebut. Mereka membagikan 300 PCB polos kepada mahasiswa di IDII dengan
sebuah instruksi sederhana : carilah instruksi cara perakitan yang tersedia secara online, buat papan sirkuit
tersebut dan kemudian buatlah sebuah proyek dengan papan sirkuit tersebut. Salah satu proyek yang berhasil
dibuat saat itu adalah sebuah jam dengan kemampuan alarm-nya. Dengan segera banyak orang yang ingin
mengetahui tentang papan sirkut ini dan ingin memilikinya. Pembeli pertama datang dari teman Banzi yang
memesan satu unit Arduino kepadanya. Kata Arduino kemudian dengan cepat menyebar secara online - tanpa
pemasaran atau periklanan, mengambil alih dunia DIY secara cepat seperti sebuah badai.

Tom Igoe, seorang profesor komputasi fisik di Universitas New York sangat terkesan dengan keterjangkauan
dan konsep yang luar biasa dari Arduino. Saat itu Tom Igoe mengajarkan kursus kepada mahasiswa non-teknis
tentang penggunaan Basic Stamp, namun setelah melihat Arduino ternyata ia sangat tertarik dengan konsep
dari Arduino ini. Kemudahan penggunaan Arduino dengan konsep DIY bagi pemula yang bahkan tidak
mengetahui tentang elektronika dan pemrograman, serta harga Arduino yang murah menjadi kunci
ketertarikan Igoe terhadap Arduino.

Arduino benar-benar merupakan sebuah terobosan. Tentunya keberhasilan Arduino tak lepas dari platform
prototyping “wiring” dan “prosessing” yang mendahuluinya. Sebelum adanya Arduino, pemrograman
mikrokontroler merupakan sesuatu yang sulit. Dengan Arduino, seseorang yang tidak mengenal dunia
elektronika bahkan dapat mengakses ke dunia hardware yang sebelumnya sulit untuk ditembus. Dengan
Arduino seorang pemula tidak perlu belajar dengan sangat keras untuk membangun sebuah proyek yang benar-
benar dapat bekerja. Ini merupakan sebuah gerakan yang luar biasa mengingat berbagai perangkat yang telah
ada dengan rahasianya bagaikan sebuah kotak hitam dengan paten yang dimiliki oleh pihak pengembangnya.
Bagi Banzi hal ini merupakan sebuah dampak penting dari Arduino. "Fifty
years ago, to write
software you needed people in white aprons who knew everything about
vacuum tubes. Now, even my mom can program, We’ve enabled a lot of people
to create products themselves."
Sebagai bahan untuk pengembangan Arduino, tim juga berusaha untuk mengintegrasikan Arduino ke dalam
sistem pendidikan, dari sekolah menengah atas sampai perguruan tinggi. Beberapa universitas termasuk
Carnegie Mellon dan Stanford sudah menggunakan Arduino. David Mellis (salah satu tim inti Arduino)
mengundang 8 sampai 10 orang ke laboratorium MIT, di mana mereka diberi tugas untuk menyelesaikan sebuah
proyek selama sehari. Hal ini merupakan penelitiannya dengan cara memberikan pelatihan kepada mahasiswa
dan orang awam untuk mempelajari bidang elektonika. Proyek-proyek tersebut antara lain membuat  speaker
Ipod, radio FM, dan mouse komputer dengan menggunakan beberapa komponen yang sama dengan yang
digunakan pada Arduino. Seperti komponen resistor, kapasitor dan lain-lain. Bagi tim menyebarkan dasar-dasar
Arduino merupakan sebagian saja dari tantangan yang sebenarnya. Tim juga harus menjamin ketersediaan
papan sirkuit Arduino. Apalagi untuk saat ini Arduino telah memiliki jenis papan sirkut yang baru yang menjadi
keluarga Arduino board. Selain desain aslinya yakni Arduino Uno, terdapat model baru dengan fasilitas yang
lebih banyak yakni Arduino Mega, atau jenis Arduino Nano dengan ukuran papan sirkuit yang lebih kecil, serta
papan sirkuit Arduino LilyPad, dan yang baru-baru ini dirilis, yakni papan Net-enabledatau disebut dengan
Arduino Ethernet.

Arduino ternyata telah menciptakan sendiri industri rumahan dengan kategori DIY. Ada lebih dari 200
distributor produk Arduino di seluruh dunia, termasuk perusahaan besar seperti SparkFun Electronics. Bahkan
kabarnya seorang pria di Portugal berhenti dari pekerjaannya di perusahaan telepon untuk menjual produk
Arduino dari rumahnya. Gianluca Martino, salah satu anggota tim inti yang mengawasi produksi dan distribusi,
mengatakan bahwa mereka sedang bekerja keras untuk mencapai pasar negara berkembang seperti China,
India, dan Amerika Selatan. Menurutnya sekitar 80 persen dari pengguna Arduino dibagi antara Amerika Serikat
dan Eropa, dan sisanya tersebar di seluruh dunia.

Jaminan mutu yang baik merupakan sebuah tantangan yang besar ketika berbicara tentang penanganan
produksi dari ribuan unit board Arduino. Tim Arduino memproduksi sekitar 100 sampai 3000 board Arduino
dalam waktu satu hari. Tim menggunakan “custom system” untuk mengujicoba pin input / output pada setiap
papan sirkuit agar terjamin kulitasnya. Tim juga memberikan jaminan penggantian board Arduino yang tidak
dapat bekerja dengan semestinya. Menurut Gianluca Martino, dengan sistem yang diterapkan saat ini tingkat
kegagalan produksi dari Arduino berada dibawah 1persen, sehingga jaminan kualitas board Arduino yang
dipasarkan dapat tetap terjaga.

Saat ini tim Arduino telah memiliki penghasilan yang cukup untuk membayar para karyawannya serta siap
untuk membiayai pendanaan guna pengembangan papan Arduino dengan fasilitas yang baru dan tentunya yang
lebih baik. Pada bulan september, pada sebuah acara “maker fair” tim Arduino memperkenalkan varian baru
dari Arduino board dengan chip prosesor ARM 32 bit. Hal ini merupakan komitmen dari tim Arduino untuk
memberikan varian Arduino board dengan komputasi yang lebih tinggi. Salah satu proyek yang pernah dibuat
adalah kit printer 3D dengan menggunakan Arduino 8-bit, tentunya dengan kekuatan prosesor ARM 32-bit ini
diharapkan dapat mengerjakan tugas-tugas yang lebih rumit lagi.

Arduino kembali mendapatkan support yang luar biasa ketika google meliris  sebuah papan pengembang
berbasiskan Arduino yang support untuk sistem Android. Google Android ADK (Accessory Development Kit),
adalah platform yang memungkinkan ponsel Android berinteraksi dengan motor, sensor, dan perangkat
lainnya. Anda dapat membangun sebuah aplikasi Android menggunakan kamera ponsel, sensor gerak, layar
sentuh, dan konektivitas internet untuk mengontrol sebuah robot atau sebuah sistem. Dengan adanya hal ini
tentunya  proyek yang dapat dibangun dengan perangkat Arduino menjadi lebih luas lagi.

Tantangan demi tantangan terus berdatangan bagi tim Arduino, salah satunya untuk mengakomodasikan hal
berbeda yang orang inginkan namun tetap dapat dilakukan dengan platform  ini, namun tetap memberikan
kemudahan kepada pengguna terutama bagi seorang pemula. Sementara itu di lain hal para fans Arduino
berdatangan ke “Bar Di Re Arduino” di Ivrea untuk sekedar melihat-lihat bar ini atau untuk minum-minum.
Kenyatannya para pekerja bar bahkan tidak mengetahui bahwa yang membawa mereka kesana adalah platform
Arduino yang sekarang menjadi perbincangan di seluruh dunia.

Sekian yang bisa admin jabarkan tentang sejarah perkembangan Arduino

10 PROJECT SEDERHANA DARI


ARDUINO UNO
Apa artinya bagi Anda membuat sebuah  proyek Arduino UNO murah?

Sebuah proyek yang bernilai Rp.500.000?

Rp.700.000?

Rp.1.000.000?

Nah, mungkin 10 dari 10 pembaca memiliki pendapat yang berbeda tentang apa artinya sebuah proyek
murah dengan menggunakan mikrokontroler Arduino UNO . Meski begitu, saya mencoba untuk mencari dan
mengeksplorasi ide untuk  membuat banyak proyek yang dibangun dengan komponen murah meriah, bagian-
bagian yang bisa dengan mudah diganti, dan hal-hal yang dapat ditemukan di hampir setiap ruangan
para pembuat atau hacker dibelahan dunia manapun.

Jika Anda tidak memiliki UNO Arduino, Anda harus menghabiskan uang sekitar (Rp. 270.000) di toko
arduino dikota anda. hanya untuk membeli satu. Ini akan mengubah sedikit daftar belanja dan harga
akhir proyek anda tentunya.

Dengan semua rincian tersebut, saya , saya mengansumsikan bahwa untuk mebuat proyek Arduino UNO itu
tidak lebih dari 1 juta.

Apa artinya bagi Anda ide yang terbaik?

Saya tidak memiliki teori ilmiah untuk menjelaskan dan mendefinisikan apa artinya ide yang terbaik.
Anda dapat menggunakan papan pengembangan dan membangun sesuatu yang terinspirasi oleh ide Anda.
Selain itu, Anda dapat memeriksa ide lain dan menjadi terinspirasi oleh pengalaman orang-orang
disekitar kita yang paham akan hal tersebut.

Di Internet , banyak  proyek Arduino dan komunitas besar hacker dan pembuat. Pada laman pencarian ,
Anda akan dapat membaca bagaimana seorang hacker mencoba untuk meng-hack mobil mainan, Anda juga
dapat membaca seseorang  yang mubuat alat dengan  menggunakan motor listrik dari printer. Apa yang
didapat dari mereka adalah sumber inspirasi yang sangat baik dan bermanfaat.

01. A simple bipedal humanoid robot

Begitu sederhana untuk membangun sebuah robot berjalan?


Yah, aku bisa mengatakan sangat sederhana. Anda dapat membangun sebuah robot berjalan menggunakan
empat servos mikro, papan UNO, papan tempat memotong roti mini bagian kardus, kabel, lem …, dll

Robot  sederhana ini bisa menari dan berjalan di sekitar hambatan.

02. SMS alarm system with Arduino


Menggunakan Arduino, perisai GSM, beberapa sensor, resistor, dan banyak kabel, Anda dapat membangun
sebuah sistem alarm mampu lengan atau melucuti pintu / jendela melalui pesan SMS.

Proyek ini mencakup smartphone Android dan aplikasi Android dengan tombol untuk mempersenjatai dan
melucuti sistem.

03. Arduino buggy

Ini adalah tiga robot beroda diprogram untuk melakukan angka dari 8 dalam mode maju dan mundur.
Chassis dibangun dari karton dan lollipop tongkat. Komponen paling mahal adalah pengendali motor,
motor listrik, dan servos 9g mikro.

04. Remote controlled car using Arduino and T.V. remote


Proyek ini adalah robot mobil empat roda yang dikendalikan remote vi remote TV. Proyek ini meliputi
samping Arduino UNO dua motor DC, IR penerima, driver L293D bermotor IC, baterai, kabel, chassis
sederhana, dan roda.

05. Sorting Machine

Proyek ini menunjukkan betapa sederhananya adalah untuk membangun mesin cerdas dengan mikrokontroler
Arduino. Mesin sortasi ini dirancang untuk memisahkan permen berwarna dengan warna.

Tanpa biaya UNO Arduino, komponen yang diperlukan untuk membangun mesin ini memiliki total biaya di
bawah (RP.1.300.000). Selain itu, ada beberapa bagian yang dicetak.

Mesin sortasi dapat menangani hingga 500 gram permen berwarna dengan kecepatan 80 lembar per menit.

06. Arduino Woodie


Ini adalah mobil yang sederhana seluruhnya dibangun dari kayu lapis dan nirkabel dikontrol melalui
Arduino. Proyek ini mencakup dua rantai untuk menggerakkan roda, baterai, motor listrik, Arduino
bermotor perisai, dan beberapa komponen lainnya.

07. Robot “Cheaper”

Robot beroda murah ini direkayasa dengan sensor IR untuk mengukur jarak antara robot dan objek. Dua
servomotors yang melekat pada roda dan mendorong robot.
Bahkan proyek tampaknya kompleks, Anda dapat memiliki banyak menyenangkan dan dibangun dengan biaya
kurang dari 1 jutaan.

08. Self Balancing Robot


Dengan biaya di bawah satu jutan, Anda dapat membangun robot roda dua ini mampu menjaga tubuh dalam
keseimbangan.
Daripada kabel, sekrup, bagian akrilik, robot termasuk papan Arduino UNO dan sensor MPU6050 untuk
mengontrol keseimbangan.

Robot dikendalikan dengan smartphone Android melalui modul Bluetooth melekat robot.

09. Drawbot

Dengan sasis kayu, perisai bermotor, roda dua kecil, baterai dan kabel Anda dapat membangun Picasso
mekanik besok.

Robot sederhana ini telah terpasang pena menggambar pada lengan yang bergerak kiri dan kanan untuk
menggambar bentuk.

10. Push Rollbot

Dengan hanya satu servomotor, sensor kemiringan dan Arduino UNO, Anda dapat membangun sebuah robot
bergulir yang dapat mendorong sendiri ke depan.

11. How to build a robotic arm


Proyek ini menunjukkan Anda bagaimana membangun sebuah lengan robot yang harganya kurang dari satu
jutaan.

Perancang menggunakan enam servomotors, bagian polikarbonat Lexan, dan sensor ultrasonik yang
dipasang di depan lengan. Sensor ultrasonik membantu lengan bereaksi terhadap gerakan lingkungan.

Anda dapat membuat proyek yang lebih kompleks dengan melampirkan gripper untuk memahami objek.

12. Autonomous Race Car

Proyek ini menunjukkan Anda cara hack mainan mobil dan mengubahnya menjadi sebuah mobil balap
otonom. Yang Anda butuhkan adalah sebuah Arduino UNO, sensor ultrasonik, dan driver motor.

Driver program mikrokontroler dalam empat mode yang berbeda. Salah satu modus memimpin mobil dengan
kecepatan penuh, modus kedua melambat mobil ketika sebuah objek terdeteksi, modus ketiga menghindari
rintangan, dan mode stop keempat dan membalikkan mobil mainan.

semoga bermanfaat .

Mari berbagi :

Struktur Dasar Program Arduino


| mikroavr.com
by Jimmi Sitepu
 
 September 24, 2018
 
in program Arduino
 0

44
SHARES

2k
VIEWS
Share on FacebookShare on Twitter

Pemrograman Arduino
Struktur program Arduino adalah dasar yang harus di pegang kuat sebelum membuat project Arduino dengan

tingkat yang jauh lebih kompleks. Mahir strukur dasar ini akan membuat kita semakin mudah bagaimana cara

memprogram yang baik. Karena tingkat lanjut dari program dasar Arduino adalah OOP ( object-oriented

Programming),Sebuah program yang akan tersusun Rapi dan lebih ringkas,yah saya masih belajar ini, insyallah

akan di jadikan jadi bahan tutorial lanjutan di sini.

Pahami lah coding arduino tiap baris nya, bukan hanya copy paste dan edit

Struktur dasar program Arduino setidak nya terdiri dari 3 Bagian, ini sudah di bahas juga secara singkat di

link belajar arduino ini, tiga bagian ini adalah sebagai berikut,

1. Global Variable

2. Setup

3. Loop

Bahagian ini akan kita bahas satu satu di sini, yuk kita lihat dan langsung di praktikan dengan modul belajar

arduino nya yah? biar gak bosen dan selaras dengan apa yang kita maksud kan.

Global Variable
Global Variable ini berlaku juda di program jenis lain ya, sebuah variable ( akan kita bahas di sub tema variable

program arduino di artikel selanjut nya )yang akan di kenal di semua fungsi fungsi nanti nya. Struktur dasar sebagai

berikut, yuk kita lihat

//global variable di sini

const byte led = 13;

void setup() {

  //inisialisasi program, hanya di akses sekali

  pinMode(led, OUTPUT);

void loop() {

  // akan di akses terus menerus

  digitalWrite(led, HIGH); 

  delay(1000);                      

  digitalWrite(led, LOW);   

  delay(1000);                     

Program di bawah adalah sebuah deklarasi global, yang mana di semua fungsi akan di kenali.

const byte led = 13;

Untuk membuktikan nya, kita coba buat program seperti di bawah ini,

//global variable di sini


const byte led = 13;

void setup() {

  //inisialisasi program, hanya di akses sekali

  pinMode(led, OUTPUT);

void loop() {

  // akan di akses terus menerus

  led_nyala();

void led_nyala(){

  digitalWrite(led, HIGH); 

  delay(1000);                      

  digitalWrite(led, LOW);   

  delay(1000);                     

Sekarang coba ketikan program di atas, kemudian compile, pasti tidak error ( seharus nya ). Pada program di

atas ada sebuah fungsi, namanya adalah

void led_nyala()

Sebuah fungsi dengan nama void led_nyala(), yang kemudian berisi program di bawah ini
?

void led_nyala(){

  digitalWrite(led, HIGH); 

  delay(1000);                      

  digitalWrite(led, LOW);   

  delay(1000);                     

Nah, program di atas tidak akan error di program karena variable led pada fungsi void led_nyala(); sudah di

declarasi,

sekarang coba hapus program di bawah ini, di program utama

const byte led = 13;

kemudian compile, lihat error nya.


was-not-declare

nah led pada fungsi led_menyala tidak akan di kenali, karena dia belum di deklarasi, tapi yuk coba kita buat

program berikut, agar lebih jelas lagi tentang struktur dasar program ini

Local Variable
Lokal Variable pada program C/C++. Perbedaan dasar dari global variable adalah, lokal variable ini hanya di kenal

pada fungsi nya saja, tapi pada fungsi lain tidak di kenal. Coba kita buat program seperti di bawah ini.

//global variable di sini

const byte led = 13;

void setup() {

  //inisialisasi program, hanya di akses sekali

  pinMode(led, OUTPUT);

void loop() {

  // akan di akses terus menerus

  led_nyala();

void led_nyala(){

  int waktu = 1000;

  digitalWrite(led, HIGH); 

  delay(waktu);                      

  digitalWrite(led, LOW);   

  delay(waktu);                     

}
coba perhatikan program di atas, ada sebuah variable lokal dengan nama waktu dengan tipe data integer ( tipe

data akan kita bahas di artikel lanjutan). Waktu ini hanya akan di kenal di fungsi void led_nyala() saja. Coba

kompile kemudian check, seharus nya tidak error.

Ada satu hal yang unik di Global variable dan Lokal Variable ini, mungkin master master bisa tahu, Tipe data

waktu bisa saja kita letakan di Global variable, tapi mungkin ada perbedaan esekusi waktu mau pun jumlah

memory.

Jadi fungsi dari global variable adalah sebuah variable yang akan kita akses berulang ulang di semua fungsi yang

akan kita buat. sementara lokal variable adalah yang sangat jarang di akses, bahkan dia mungkin adalah varible

pembantu pada fungsi itu.

Coba buat program berikut, dan akan error jika di compile

//global variable di sini

const byte led = 13;

void setup() {

  //inisialisasi program, hanya di akses sekali

  pinMode(led, OUTPUT);

void loop() {

  // akan di akses terus menerus

  led_nyala();

void led_nyala(){
  int waktu = 1000;

  digitalWrite(led, HIGH); 

  delay(waktu);                      

  digitalWrite(led, LOW);   

  delay(waktu);                     

void led_nyala2(){

  digitalWrite(led, HIGH); 

  delay(waktu);                      

  digitalWrite(led, LOW);   

  delay(waktu);                     

Ketika di compile maka akan ada error pada fungsi led_nyala2(); hal ini terjadi karena variable waktu tidak di

kenal, variable waktu hanya di kenal pada fungsi led_nyala.

Rubah Ke Global Variable


Nah sampai saat ini harus nya teman-teman sudah paham. Yuk kita coba rubah waktu menjadi global variable.

Program nya ada di bawah ini

//global variable di sini

const byte led = 13;

const int waktu = 1000; // ini globla variable

void setup() {

  //inisialisasi program, hanya di akses sekali

  pinMode(led, OUTPUT);
}

void loop() {

  // akan di akses terus menerus

  led_nyala();

  led_nyala2();

void led_nyala(){

  digitalWrite(led, HIGH); 

  delay(waktu);                      

  digitalWrite(led, LOW);   

  delay(waktu);                     

void led_nyala2(){

  digitalWrite(led, HIGH); 

  delay(waktu);                      

  digitalWrite(led, LOW);   

  delay(waktu);                     

nah variable waktu telah kita angkat ke posisi global variable, ketika di compile maka tidak akan error lagi,

walaupun waktu tidak kita deklarasi pada fungsi led_nyala() dan led_nyala2().

Semoga sudah paham yah, heheh, setup

Void Setup()
Init Register
Void setup pada program Arduino adalah sebuah tempat atau fungsi untuk men deklarasi fungsi fungsi

mikrokontroller pada Arduino. Chip mikrokontroller nya memiliki register yang mem fungsikan apakah PIN di

gunakan sebagai input, atau sebagai output, apakah di gunakan komunikasi Serial, dan lain lain.

Jika teman-teman pernah menggunakan software pemrogram mikrokontroller seperti Atmel Studio, Codevision

AVR, Bascom, maka teman-teman akan lihat jelas bagaimana cara deklarasi fungsi register setiap fungsi dari

fitur yang di bawa setiap jenis mikrokontroller sendiri.

Saya yakin teman-teman mikro yang langsung terjun ke dunia Arduino tanpa mendahului belajar dengan

menggunakan program seperti di atas, maka hal ini akan menjadi tabu. Seperti anak anak jaman Sekarang yang

bingung apa itu permain engklek, patok lele, main karet dan lain lain. hahah betul lho

Sebagai Contoh, jika di Arduino kita cukup menggunakan perintah di bawah ini untuk setting pin apakah sebagain

input atau output

void setup() {

  // initialize digital pin LED_BUILTIN as an output.

  pinMode(2, OUTPUT);

  pinMode(3, INPUT);

  Serial.begin(9600);

Nah, di atas pin 2 akan di gunakan sebagai sebagaioutput,kemudian pin 3 akan di gunakan sebagaiinput.Berbeda

jika menggunakan codevision AVR ( kebetulan penulis latar belakang nya Codevision AVR ). Maka program nya

akan seperti berikut,

#include <mega328p.h>

void main(void)
{

DDRD.2 = 1;  // SET OUPUT

PORTD.2 = 0; // SET O

DDRD.3 = 0;  // SET INPUT

PORTD.3 = 1; // SET PULLUP

// USART initialization

// Communication Parameters: 8 Data, 1 Stop, No Parity

// USART Receiver: On

// USART Transmitter: On

// USART0 Mode: Asynchronous

// USART Baud Rate: 9600

UCSR0A=(0<<RXC0) | (0<<TXC0) | (0<<UDRE0) | (0<<FE0) | (0<<DOR0) |


(0<<UPE0) | (0<<U2X0) | (0<<MPCM0);

UCSR0B=(0<<RXCIE0) | (0<<TXCIE0) | (0<<UDRIE0) | (1<<RXEN0) | (1<<TXEN0) |


(0<<UCSZ02) | (0<<RXB80) | (0<<TXB80);

UCSR0C=(0<<UMSEL01) | (0<<UMSEL00) | (0<<UPM01) | (0<<UPM00) | (0<<USBS0) |


(1<<UCSZ01) | (1<<UCSZ00) | (0<<UCPOL0);

UBRR0H=0x00;

UBRR0L=0x67;

while (1)

      {

      // Place your code here


 

      }

Tampak aneh kan? nah Jadi di Arduino, kita tidak lagi di pusingkan dengan register-register mikrokontroller yang

perlu di inisialisasi, karena fungsi init nya sudah di buat dalam sebuah library.

Master Mikrokontroller angkatan Lama sangat familiar dengan register-register


mikrokontroller, migrasi ke Arduino akan memudah kan dia untuk coding
Arduino, karena di Arduino juga bisa di init atau di olah register-register ini.

Yah begitu lah. but I am not master, lazy to check register in datasheet, LOL, heheh

Hanya di Akses Sekali


Void setup ini sifat nya hanya di akses sekali saja. Dia tidak akan di akses ber ulang ulang. Jika power on, maka

dia di akses. Karena sifat nya yang di akses sekali saja, maka bisa kita gunakan untuk keperluan tertentu.

Sebagai Contoh, saya gunakan dia sebagai pemanggil eeprom external. Jadi begitu on, akan load EEPROM

external, kemudian nilai-nilai nya kita simpan ke variable dalam Arduino.

Penggunaan setup ini layak nya booting bios awal sebuah sistem operasi, di sana semua fungsi awal akan di

akses di sini. Tergantung dari kreativitas programmer nya menggunakan fungsi setup ini.

void Loop()
Sesuai dengan namanya, Loop, berputar tanpa henti. looping forever, sebuah program akan di akses terus

menerus, sebuah siklus tanpa akhir. Nah ini penting, karena memang nanti nya kita ingin system ini berjalan tiada

henti, hari, minggu, bulan, bahkan puluhan tahun bekerja tanpa henti.

Untuk itu ada fungsi loop. Semua program yang akan di olah bekerja secara terus menerus akan di olah di fungsi

loop. Program akan di jalankan dari atas sampai ke bawah, kemudian kembali lagi ke atas. hal ini terjadi dalam

Kondisi normal. Kecuali jika kita gunakan fungsi interupsi pada Arduino. Interupsi ini akan di tunda untuk di

proses dan program mendadak menjalan kan program pada fungsi interrupt. Interrupt ini akan kita bahas di

kesempatan mendatang.

Untuk lebih jelas nya, yuk kita lihat coding di bawah ini, pastikan coding ini di ketik, bukan copy paste kemudian

buka serial monitor Arduino teman-teman nanti nya.


 

void setup() {

  Serial.begin(9600);

void loop() {

  Serial.println("baris satu");

  delay(1000);

  Serial.println("baris dua");

  delay(1000);

  Serial.println("baris tiga");

  delay(1000);

  Serial.println("baris empat");

  delay(1000);

  Serial.println("baris lima");

  delay(1000);

  Serial.println("baris enam");

  delay(1000);

  Serial.println("baris tujuh");

  delay(1000);

  Serial.println("baris delapan");

  delay(1000);
  Serial.println("baris sembilan");

  delay(1000);

  Serial.println("baris sepuluh");

  delay(1000);     

Coba upload program program di atas ke Arduino, dan buka serial monitor, pastikan baut rate di serial monitor

sesuai dengan nilai di bawah ini,

Serial.begin(9600);

Nilai baudrate yang berbeda antara program dengan di serial monitor akan
menyebabkan pembacaan error pada serial monitor, pastikan sama

Nah Sekarang buka serial monitor nya, check apakah yang terjadi? Maka akan tampil karakter di serial monitor

dengan karakter,

baris satu, kemudian tunda 1000ms, kemudian baris dua, kemudian tunda 1000ms, kemudian Seterus nya

sampai muncul tulisan baris sepuluh. Setelah baris sepuluh muncul maka akan kembali berulang, serial monitor

akan menampilkan baris satu, kemudian tunda 1000ms dan seturus nya. Kejadian ini akan berulang terus

menerus sampai selama nya, sampaipower supply dari Arduino off.

Selesai sudah pelajaran Struktur program Arduino kita bahas. Semoga bermanfaat,

Saran saya adalah coba ketik berulang-ulang dengan penuh kesabaran program di atas. maka
coding demi coding akan lengkep di memory kita. Semakin di ulang akan semkain di ingat.
Jangan terbaru- buru ingin membuat sesuatu yang besar, tapi mulai lah dari yang kecil.

Memulai Menggunakan Arduino dengan Windows


JUNE 01, 2011   ZERFANI YULIAS   82 COMMENTS
Posting ini disadur dari “Getting Started w/ Arduino on Windows”
Dokumen ini akan menjelaskan bagaimana caranya menghubungkan board Arduino dengan komputer dan meng-upload
program (sketch) pertama anda.
1. Dapatkan board Arduino dan kabel USB
Pada tutorial ini, kami mengasumsikan anda menggunakan sebuah Arduino Uno, Arduino Duemilanove, Nano atau Diecimila.

Anda juga membutuhkan sebuah kabel USB standar (A – B), sama dengan kabel yang anda gunakan untuk printer USB.

Anda bisa
mendapatkan board Arduino Uno di Famosa Studio.
2. Download Software Arduino
Dapatkan versi terakhir dari halaman download Arduino.
Setelah download selesai, ekstrak file yang telah di-download tadi. Pastikan anda tidak merubah struktur folder. Klik dua kali
pada folder untuk membukanya. Terdapat beberapa file dan sub-folder di dalamnya.

3. Hubungkan Board
Arduino Uno, Mega, Deumilanove dan Arduino Nano akan menarik sumber daya dari port USB atau power supply eksternal.

Hubungkan board Arduino dengan komputer menggunakan kabel USB. LED berwarna hijau (berlabel PWR) akan hidup.
4. Instalasi Drivers
Instalasi driver untuk Arduino Uno dengan Windows 7, Vista atau XP:
 Hubungkan board anda dan tunggu Windows untuk memulai proses instalasi driver. Setelah beberapa saat,
proses ini akan gagal, walaupun sudah melakukan yang terbaik.
 Klik pada Start Menu dan buka Control Panel
 Di dalam Control Panel, masuk ke menu System and Security. Kemudian klik pada System. Setelah tampilan
System muncul, buka Device Manager.
 Lihat pada bagian Ports (COM & LPT). Anda akan melihat sebuah port terbuka dengan nama “Arduino Uno
(COMxx)”
 Klik kanan pada port “Arduino Uno (COMxx)” dan pilih opsi “Update Driver Software”.
 Kemudian, pilih opsi “Browse my computer for Driver software”.
 Terakhir, masuk dan pilih file driver Uno, dengan nama “ArduinoUNO.inf”, terletak di dalam folder “Drivers” pada
Software Arduino yang telah di-download tadi.
 Windows akan meneruskan instalasi driver.
Instalasi driver untuk Arduino Duemilanove, Nano atau Diecimila dengan Windows 7, Vista dan XP:
Ketika anda menghubungkan board, Windows seharusnya memulai proses instalasi driver (ini apabila anda belum pernah
menggunakan komputer tersebut dengan board Arduino sebelumnya).

Pada Windows Vista, driver akan otomatis di-download dan diinstalasi.

Pada Windows XP, wizard Add New Hardware akan muncul:

 Ketika ditanya Can Windows connect to Windows Update to search for software? pilih No, not this time. Klik
next.
 Pilih Install from a list or specific location (Advanced) dan klik next.
 Pastikan bahwa Search for the best driver in these location dicentang; Seach removable media jangan
dicentang; Include this location in the search dicentang dan masuk ke direktori drivers/FTDI USB Drivers pada folder
software Arduino. (Versi terakhir dari driver ini dapat ditemukan pada situs FTDI). Klik next.
 Wizard akan mencari driver dan kemudian memberitahu bahwa sebuah “USB Serial Converter” telah ditemukan.
Klik finish.
 Wizard hardware baru akan muncul kembali. Ulangi langkah yang sama seperti sebelumnya dengan pilihan yang
sama dan lokasi folder yang sama. Kali ini sebuah ” USB Port Serial” akan ditemukan.
Anda dapat memastikan apakah driver sudah ter-install dengan membuka Windows Device Manager (di tab Hardware pada
Control Panel – System). Cari “USB Serial Port” pada bagian Ports, itulah board Arduino.

5. Jalankan Aplikasi Arduino


Klik dua kali pada aplikasi Arduino (arduino.exe).

6. Buka contoh Blink


Buka contoh program LED Blink: File > Examples > 1.Basics > Blink.
7. Pilih board anda
Anda perlu memilih opsi pada menu Tools > Board yang sesuai dengan board Arduino yang dipakai.
8. Pilih serial port anda
Pilih port serial yang digunakan oleh board Arduino anda pada menu Tools > Serial Port. Biasanya ini adalah COM3 atau yang
lebih tinggi (COM1 dan COM2 biasanya sudah direservasi untuk serial port hardware). Untuk mencari tahu, anda dapat
melepaskan koneksi ke board Arduino dan buka kembali menu tadi; pilihan yang menghilang harusnya adalah board Arduino
anda. Koneksikan kembali board-nya dan pilih serial port yang sesuai.
9. Upload program
Nah, sekarang hanya tinggal klik tombol “Upload” pada software. Tunggu beberapa saat – anda dapat melihat led TX dan RX
pada board berkelap-kelip. Bila upload berhasil akan ada pesan “Done uploading.” yang muncul pada status bar.
APA ITU ARDUINO, INI DIA ARTI SERTA CARA
MENGGUNAKANNYA
 INFO
FEBRUARY 28, 2018BANG ANIL  9447  0



Dalam dunia komputer, pernahkah anda mendengar yang namanya Arduino? Mungkin ini terdengar asing. Apabila anda sering mendengarnya,
lantas apa yang anda ketahui? Bagi orang awam ini terdengar membingungkan, akan tetapi ini mengandung nilai-nilai pengetahuan yang baik
untuk kita ketahui sesuai dengan penjelasannya seperti yang berikut ini.

MENGENAL APA ITU ARDUINO


Apa yang dimaksudkan dengan Arduino? Arti dari Arduino disini adalah sebuah rangkaian elektronik yang memiliki suatu komponen utama chip
mikrokontroler. Mikrokontroler yang disebutkan disini adalah sebagai sebuah chip atau IC yang dapat diprogram melalui komputer.

Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip
mikrokontroler dengan jenis AVR dari perusahaan Atmel. Tujuan dari adanya mikrokontroler untuk membaca input dengan memprosesnya hingga
menimbulkan Output.

Dari adanya Mikrokontroler, ini dapat ditemukan pada berbagai alat seperti handphone, MP3 player, DVD, televisi, AC dan masih banyak lagi.
Selain itu, Mikrokontroler juga berguna sebagai pengendali robot baik mainan atau dari industri. Disini juga menyebutkan bahwa komponen
utama Arduino adalah mikrokontroler.
Selain dari pengertian diatas, ada juga pengertian lain yang menyatakan bahwa Arduino merupakan pengendali tunggal yang disebut sebagai
mikro board dengan sifat terbuka atau open source. Alat ini dirancang dengan tujuan untuk memudahkan penggunaan berbagai macam alat
elektronik yang salah-satunya adalah komputer. Dalam penggunaannya, arduino memiliki prosesor Atmel AVR serta program bahasa tersendiri.

Dari penjelasan yang telah disebutkan di atas, Arduino juga meyimpan sejarah yang akan diungkapkan dibawah ini.

Sekitar tahun 2005, penciptaan Arduino berasal dari teori oleh Hernando Barragan di Italia. Dari adanya teori tersebut, kemudian ini
dikembangkan oleh Massimo Banzi dan David Cuartielles yang menamainya sebagai Arduin of Ivrea. Kemudian, alat tersebut berganti nama yang
diambil dari bahasa Italia menjadi Arduino.

Berdasarkan dari sifat yang dimilikinya, perkembangan Arduino sangat cepat. Dari perkembangan tersebut, banyak penciptaan sejenis Arduino
seperti DFRDuino atau Freeduino, CipaDuino, MurmerDuino dan AViShaDuino.

Seiring waktu, ada berbagai macam jenis penciptaan Arduino dari yang mudah dicari dan yang paling banyak digunakan yang salah-satunya
seperti Arduino Uno. Berdasarkan penggunaannya, telah tercatat bahwa tahun 2011 telah ada ratusan ribu Arduino digunakan. Dari lahirnya alat
tersebut, banyak perusahaan besar yang menggunakan alat tersebut seperti Google, NASA dan juga Large Hadron Colider.

Seperti yang telah disebutkan diatas, dimana program bahasa yang digunakan Arduino memiliki bahasa tersendiri yang sebenarnya diketahui
menggunakan bahasa C. Dari adanya bahasa yang telah disederhanakan tersebut, bagi orang awam ini akan menjadi sangat mudah digunakan.

JENIS-JENIS ARDUINO
Dari banyaknya penggunaan alat tersebut, ada berbagai macam jenis arduino yang juga siap digunakan. Jenis arduino yang akan disebutkan
adalah sebagai berikut.

 Arduino Uno

Ini adalah salah-satu jenis arduino yang dikatakan sangat banyak digunakan. Bagi yang belum pernah atau yang pertama kali, disarankan untuk
menggunakan jenis dari arduino ini. Ini juga memiliki versi Arduino Uno R3 dengan menggunakan ATMEGA328 dengan 14 pin I/O dan 6 pin input.

 Arduino due

Tidak seperti arduino uno yang menggunakan ATMEGA. Arduino due merupakan yang sebaliknya atau tidak menggunakan ATMEGA. Tetapi ini
menggunakan chip ARM Cortex CPU. Dari jenis arduino due tersebut, dikatakan memiliki 54 I/O pin digital dan 12 pin input.

 Arduino mega

Jenis dari arduino ini dikatakan memiliki kemiripan dengan Arduino Uno yang menggunakan USB type A to B. Tetapi bedanya disini adalah
dimana Arduino Mega menggunakan Chip ATMEGA2560. Begitu juga memiliki Pin I/O Digital serta lebih banyak pin input daripada Uno.

 Arduino leonardo

Ini adalah jenis arduino yang sama persis dengan arduino uno. Mengapa demikian? Karena sama-sama mempunyai jumlah pin I/O digital dan pin
input. Bedanya dari leonardo adalah penggunaan Micro USB.

 Arduino fio

Sedikit lain dari pada yang lain, karena bentuknya yang terbilang unik terutama pada socketnya. Arduino fio dikatakan memiliki pin I/O digital dan
input yang sama dengan uno dan leonardo, akan tetapi fio mempunyai Socket XBee. Fio yang menggunakan XBee dikatakan bisa dipakai untuk
keperluan yang berhubungan dengan wireless.
 Arduino lilypad

Dengan bentuknya yang bulat atau melingkar, dimana lilypad dapat digunakan dalam pembuatan projek unik. Walaupun dikatakan masih
menggunakan ATMEGA168, tetapi dikatakan cukup dalam membuat sebuah pekerjaan keren. Alat tersebut dikatakan memiliki 14 pin I/O digital
dan 6 pin input.

 Arduino Nano

Sebanding dengan namanya, karena ini tampil dalam ukurannya yang kecil. Walaupun dikatakan sangat sederhana, akan tetapi bisa menyimpan
banyak fasilitas. Selain itu, alat tersebut juga disertai dengan FTDI dan 14 Pin I/O Digital serta 8 Pin input. Begitu juga alat yang kecil ini bisa
menggunakan ATMEGA168 atau ATMEGA328.

 Arduino mini

Ini memiliki fasilitas yang sama dengan nano. Akan tetapi, alat tersebut tidak disertai oleh Micro USB dan dengan ukurannya yang hanya
mencapai 30 mm x 18 mm.

 Arduino micro

Mikro memiliki ukuran yang lebih panjang jika dibandingkan dengan nano dan mini. Mengapa? Ini dikarenakan besarnya fasilitas seperti 20 pin
I/O digital dan 12 pin input.

 Arduino ethernet

Jenis dari Arduino ini dikatakan menggunakan fasilitas ethernet. Dari adanya fasilitas tersebut, dapat terhubung dengan jaringan LAN pada
komputer. Ini juga memiliki kesamaan dengan Uno dari Pin I/O Digital dan Inputnya.

 Arduino Esplora

Ini adalah salah-satu jenis arduino yang dilengkapi dengan adanya Joystick dan button. Ini dapat digunakan dari gadget seperti Smartphone.

 Arduino robot

Jenis arduino dengan bentuk robot ini merupakan yang paling lengkap dari arduino. Ini dikarenakan memiliki LCD, spaker, roda, sensor infrared
dan yang lainnya seperti apa yang dibutuhkan untuk robot.

BAGIAN-BAGIAN ARDUINO
Dari jenis arduino yang disebutkan dan telah dijelaskan diatas, ada juga berbagai macam bagian arduino. Lalu, apa sajakah bagiannya? Ikuti saja
yang ada dibawah ini.

A. Port USB (1) dan Power Jack (2)


Bagian arduino yang disebutkan disini berfungsi sebagai pemasok daya komputer. Tidak hanya itu, ini juga bisa mengupload kode ke Arduino. Ini
menggunakan USB type B type A. Selain itu, daya dapat disuplay dari baterai berkekuatan 9 volt dan juga bisa menggunakan power jack dengan
menghubungkan soket listrik. Arduino dikatakan memiliki batas penggunaan yang disarankan 7 hingga 12 volt.

B. Chip Utama atau Mikrokontroler (3)

Chip yang dimaksudkan disini adalah bagian dari Arduino. Ini biasanya menggunakan chip ATmega dari ATMEL. Dari adanya jenis arduino,
penggunaan chip juga dapat berbeda.

C. LED indikator daya (4)

Apabila arduino beroperasi, LED akan memberikan tanda ON.

D. LED indikator transfer data (5)

LED memiliki 2 jenis seperti TX (transmit) dan RX (receive). Kedua jenis LED tersebut akan memberikan tanda berkedip sebagai pemberitahu
bahwa telah terjadinya pengiriman atau masuknya data.

E. Pin sumber daya (6)

Pin yang disebutkan disini adalah dapat menghubungkan pad perangkat lain. Walaupun memiliki jumlah yang berbeda, akan tetapi memiliki 3
kelompok yang utama seperti sumber daya, analog dan juga digital.

F. Pin analog (7)

Dikatakan semua pin analog memiliki sifat input yang berguna sebagai penerima sinyal. Setelah sinyal diterima oleh arduino, disarankan untuk
mengubah ke digital sebelum melakukan proses selanjutnya.

G. Pin Digital (8)

Arduino Uno dikatakan sebagai perangkal digital memiliki 14 pin yang berguna sebagai input dan output. Contoh dari input adalah sensor gerak
dan output ke lampu LED.

H. Tombol reset (9)

Sesuai degan namanya, apabila tombol tersebut ditekan, maka akan terjadi pengulangan program. Ini dikatakan dapat dilakukan apabila ada
terjadinya suatu kesalahan.

I. Regulator tegangan (10)

Fungsi dari regulator tegangan adalah untuk memberikan aliran tegangan untuk menghilangkan gangguan dan menahan atau menyingkirkan
tegangan yang berlebih.

KELEBIHAN DAN KEKURANGAN ARDUINO


Dari adanya bagian arduino, disini akan dijelaskan beberapa kelebihan dan kekurangan arduino yang harus diketahui oleh penggunanya.

Kelebihan

 Bagian pertama dari kelebihan arduino yang akan diberitahukan disini adalah bahwa arduino tidak lagi
memerlukan adanya chip. Ini dikarenakan didalamnya sudah memiliki yang namanya bootloader yang dapat
memberitahukan program dari komputer.
 Kelebihan dari arduino yang kedua adalah adanya penggunaan USB sehingga komputer yang tidak
memiliki port serial/RS323 juga dapat menggunakannya.
 Arduino yang dikatakan memiliki bahasa tersendiri dikatakan akan sangat mudah digunakan karena
kelengkapannya.
 Yang terakhir adalah memiliki alat yang siap pakai dan dapat disambungkan pada board Arduino seperti
GPS, Ethernet, SD card dan lain sebagainya.

Kekurangan
 Memiliki kode hex dan ini sering ditemukan lebih besar.
 Tidak dapat terhindar dari kesalahan fuse bit saat membuat bootloader.
 Jika program tersebut dikatakan sudah lama, ini harus dimodifikasi karena penggunaannya yang tidak
sesuai aturan.
 Storage Flash akan berkurang, karena dipakai untuk bootloader.

CARA MENGGUNAKANNYA ARDUINO DENGAN WINDOWS


Berdasarkan dari kelebihan dan kekurangannya, disini kami akan memberikan cara bagaimana untuk menggunakan Arduino pada komputer. Yuk
temukan jawabannya disini.

1. Memiliki Arduino dan kabel USB

Ini disarankan untuk menggunakan Arduino Uno, Arduino Duemilanove, Nano atau Diecimila. Dan yang anda butuhkan disini adalah kabel USB
standar (A – B) dan kabel printer USB.

2. Download Software Arduino

Ini juga disarankan untuk memiliki versi terbaru dari mendownload Arduino. Setelah ini selesai, memastikan untuk tidak pernah mengubah
struktur folder. Apabila ingin membukanya, bisa mengklik sebanyak dua kali pada folder.

3. Menghidupkan atau menggunakan aplikasi arduino

Ini dapat dilakukan dengan mengkilk sebanyak dua kali pada aplikasi arduino.

4. Buka contoh Blink

Buka contoh program LED Blink seperti File, Examples, Basics Blink.

5. Pilih board
Dengan memilih pada bagian menu tools, ini akan menghasilkan pilihan arduino sesuai apa yang dibutuhkan.

6. Pilih serial port

Anda dapat memilih bagian yang akan digunakan sesuai kebutuhan pada menu tools tersebut. Penggunaan Arduino biasanya dengan
menggunakan POT3 dan juga bisa menggunakan POT1 dan POT2.

7. Upload program

Untuk langkah selajutnya, bisa mengklik tombol “Upload” tunggu sebentar dan ini akan memberikan tanda LED TX dan RX berkelap-kelip. Apabila
langkah ini berhasil, akan mendapatkan pesan.

PENYEBAB DAN SOLUSI TIDAK BISA MENGUPLOAD PROGRAM ARDUINO


Tidak semua orang bisa mengupload arduino. Bagi anda yang gagal melakukannya, biasanya akan memberi tanda peringatan warna merah.
Tetapi anda jangan khawatir karena disini ada solusinya. Ingin tau apa solusi dan penyebabnya? Baca saja penjelasannya yang ada di bawah ini.

 Penyebab yang pertama adalah menggunakan program dengan versi portable. Solusinya disini adalah
untuk mencoba mendownload kembali program arduino dengan menggunakan pada versi yang diinstal.
 Penyebab yang kedua disini adalah serial monitor yang terbuka. Ini merupakan langkah yang mudah
apabila serial monitor terbuka hanya tinggal menutup kembali serial monitornya dan mengulang lagi untuk
mengupl
Belajar Program Arduino untuk Pemula Lengkap Beserta Fungsinya
 06/07/2019  4802  Belajar Arduino Tutorial Arduino Panduan Arduino Jenis-jenis Arduino jual arduino megajual arduino mega clone harga arduino
mega clone Keyword Vol arduino ide online update arduino ide arduino ide windows 7download arduino ide terbaru  arduino ide arduino project arduino
tutorial programming harga arduino harga arduino mega clone Keyword Volarduino ide online update arduino ide arduino ide windows 7 download arduino
ide terbaru arduino ide arduino projectarduino tutorial programming  harga arduino tutorial arduino pdf tutorial arduino lengkap

Belajar Program Arduino untuk Pemula Lengkap Beserta


Fungsinya

Di Era millenial sekarang ini teknologi makin berkembang, termasuk Teknologi program yaitu Arduino, maka dari artikel ini akan
menjelaskan Belajar Program Arduino untuk Pemula Lengkap Beserta Fungsinya yang akan memiliki tujuan untuk menjelaskan Apa itu
Arduino tertutama pada programnya kepada pemula , karena ada banyak sekali pengertian tentang Arduino dan jenis Arduino juga ada banyak
sekali , Namuan Kita tidak akan membahasa semua jenis-jenis Arduino satu persatu , saya akan menjelaskan dasar-dasar nya saja, Belajar
Program Arduino untuk Pemula sangat penting untekuk kita miliki ilmunya karena Arduino sudah menjadi andalan bagi para pakar Teknologi
didunia. oke mari kita mulai membahas Pengertian Arduino di bawah ada beberapa saja Pengertian tentang Arduino salah satunya saya ambil
dari Wikipedia .

Apa itu Arduino?


Arduino adalah pengendali mikro single-board yang bersifat sumber terbuka, diturunkan dari Wiring platform, dirancang untuk memudahkan
penggunaan elektronik dalam berbagai bidang. Perangkat kerasnya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa
pemrograman sendiri.
Arduino juga merupakan senarai perangkat keras terbuka yang ditujukan kepada siapa saja yang ingin membuat purwarupa peralatan elektronik
interaktif berdasarkan hardware dan software yang fleksibel dan mudah digunakan. Mikrokontroler diprogram menggunakan bahasa
pemrograman arduino yang memiliki kemiripan syntax dengan bahasa pemrograman C. Karena sifatnya yang terbuka maka siapa saja dapat
mengunduh skema hardware arduino dan membangunnya.
Arduino menggunakan keluarga mikrokontroler ATMega yang dirilis oleh Atmel sebagai basis, namun ada individu/perusahaan yang membuat
clone arduino dengan menggunakan mikrokontroler lain dan tetap kompatibel dengan arduino pada level hardware. Untuk fleksibilitas, program
dimasukkan melalui bootloader meskipun ada opsi untuk mem-bypass bootloader dan menggunakan pengunduh untuk memprogram
mikrokontroler secara langsung melalui port ISP.
Platform Arduino telah menjadi sangat populer di kalangan orang-orang yang baru memulai dengan elektronik, dan untuk alasan yang baik. Tidak
seperti kebanyakan papan sirkuit yang dapat diprogram sebelumnya, Arduino tidak memerlukan perangkat keras terpisah (disebut programmer)
untuk memuat kode baru ke papan - Anda cukup menggunakan kabel USB. Selain itu, Arduino IDE menggunakan versi yang disederhanakan
dari C ++, membuatnya lebih mudah untuk belajar memprogram. Akhirnya, Arduino memberikan faktor bentuk standar yang memecah fungsi
mikrokontroler menjadi paket yang lebih mudah diakses.

Arduino Uno adalah salah satu papan yang lebih sering digunakan Arduino dan pilihan yang bagus untuk pemula. Kami akan berbicara tentang
apa yang ada di dalamnya dan apa yang dapat dilakukan nanti dalam tutorial.

Percaya atau tidak, 10 baris kode itu adalah yang Anda perlukan untuk mengedipkan LED on-board pada Arduino Anda. Kode ini mungkin tidak
masuk akal saat ini, tetapi, setelah membaca tutorial ini dan banyak lagi tutorial Arduino yang menunggu Anda di situs kami, kami akan
mempercepat Anda dalam waktu singkat!
Arduino adalah alat yang hebat untuk orang-orang dari semua tingkat keahlian. Namun, Anda akan memiliki waktu yang jauh lebih baik belajar
bersama Arduino Anda jika Anda memahami beberapa dasar elektronik dasar sebelumnya. Kami menyarankan Anda memiliki setidaknya
pemahaman yang layak tentang konsep-konsep ini sebelum Anda terjun ke dunia Arduino.

Apa Fungsinya?
Perangkat keras dan perangkat lunak Arduino dirancang untuk seniman, perancang, penggemar, peretas, pemula, dan siapa pun yang tertarik
untuk membuat objek atau lingkungan interaktif. Arduino dapat berinteraksi dengan tombol, LED, motor, speaker, unit GPS, kamera, internet, dan
bahkan ponsel pintar atau TV Anda! Fleksibilitas ini dikombinasikan dengan fakta bahwa perangkat lunak Arduino gratis, papan perangkat
kerasnya cukup murah, dan perangkat lunak maupun perangkat kerasnya mudah dipelajari telah menyebabkan komunitas besar pengguna yang
telah berkontribusi kode dan mengeluarkan instruksi untuk berbagai macam Proyek berbasis Arduino.
Kelebihan
Murah – Papan (perangkat keras) Arduino biasanya dijual relatif murah (antara 125ribu hingga 400ribuan rupiah saja)
dibandingkan dengan platform mikrokontroler pro lainnya. Jika ingin lebih murah lagi, tentu bisa dibuat sendiri dan itu sangat
mungkin sekali karena semua sumber daya untuk membuat sendiri Arduino tersedia lengkap di website Arduino bahkan di
website-website komunitas Arduino lainnya. Tidak hanya cocok untuk Windows, namun juga cocok bekerja di Linux.
Sederhana dan mudah pemrogramannya – Perlu diketahui bahwa lingkungan pemrograman di Arduino mudah digunakan
untuk pemula, dan cukup fleksibel bagi mereka yang sudah tingkat lanjut. Untuk guru/dosen, Arduino berbasis pada lingkungan
pemrograman Processing, sehingga jika mahasiswa atau murid-murid terbiasa menggunakan Processing tentu saja akan
mudah menggunakan Arduino.
Perangkat lunaknya Open Source – Perangkat lunak Arduino IDE dipublikasikan sebagai Open Source, tersedia bagi para pemrogram
berpengalaman untuk pengembangan lebih lanjut. Bahasanya bisa dikembangkan lebih lanjut melalui pustaka-pustaka C++ yang beihrbasis
pada Bahasa C untuk AVR.

Perangkat kerasnya Open Source – Perangkat keras Arduino berbasis mikrokontroler ATMEGA8, ATMEGA168,
ATMEGA328 dan ATMEGA1280 (yang terbaru ATMEGA2560). Dengan demikian siapa saja bisa membuatnya (dan kemudian
bisa menjualnya) perangkat keras Arduino ini, apalagi bootloader tersedia langsung dari perangkat lunak Arduino IDE-nya.
Bisa juga menggunakan breadoard untuk membuat perangkat Arduino beserta periferal-periferal lain yang dibutuhkan.
Jika tertarik untuk membelinya Klik disini.

Mempelajari Papan Arduino Untuk Pemula

Setelah sekian banyaknya Pembahasan Pengertian Dasar Program Arduino untuk Pemula yang di jelaskan di atas sekarang kita akan membaas
ke bentuk komponen Arduino, coba perhatikan gambar pada Arduino di atas, Arduino memiliki banyak papan (Arduino), Mempelajari lebih dalam
Program Arduino untuk Pemula pasti membuat anda bingung dengan banyaknya papan Arduino tersebut, saya sarankan menggunakan papan
Arduino uno yang sudah familiar, tipe Arduino ini merupakan tipe yang sangat compact memiliki port I/0 (Input/Output) baik jenis analog maupun
digital.

Apa yang ada di papan Arduino?


Ada banyak jenis papan Arduino (dijelaskan di halaman berikutnya) yang dapat digunakan untuk tujuan yang berbeda. Beberapa papan terlihat
sedikit berbeda dari yang di bawah ini, tetapi sebagian besar Arduino memiliki mayoritas komponen yang sama:

Power (USB / Barrel Jack)


Setiap papan Arduino membutuhkan cara untuk terhubung ke sumber daya. Arduino UNO dapat diaktifkan dari kabel USB yang berasal dari
komputer Anda atau catu daya dinding (seperti ini) yang diakhiri dengan jack barel. Pada gambar di atas koneksi USB berlabel (1) dan jack laras
diberi label (2).

CATATAN:

JANGAN gunakan catu daya yang lebih besar dari 20 Volt karena Anda akan mengalahkan (dan karenanya menghancurkan)
Arduino Anda. Tegangan yang disarankan untuk sebagian besar model Arduino adalah antara 6 dan 12 Volt.

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


Pin pada Arduino Anda adalah tempat di mana Anda menghubungkan kabel untuk membangun sirkuit (mungkin bersamaan
dengan papan tempat memotong roti dan beberapa kawat. Mereka biasanya memiliki 'header' plastik hitam yang
memungkinkan Anda untuk hanya memasukkan kabel tepat ke papan. Arduino memiliki beberapa jenis pin, yang masing-
masing dilabeli di papan dan digunakan untuk fungsi yang berbeda.
GND (3): Singkatan dari 'Ground'. Ada beberapa pin GND di Arduino, yang salah satunya dapat digunakan untuk
menghubungkan ke sirkuit Anda.
5V (4) & 3.3V (5): Seperti yang Anda duga, pin 5V memasok daya 5 volt, dan pin 3,3V memasok daya 3,3 volt. Sebagian besar
komponen sederhana yang digunakan dengan Arduino berjalan dengan gembira dari 5 atau 3,3 volt.
Digital (7): Di seberang pin analog adalah pin digital (0 hingga 13 pada UNO). Pin ini dapat digunakan untuk input digital
(seperti memberi tahu jika tombol ditekan) dan output digital (seperti menyalakan daya LED).
PWM (8): Anda mungkin telah memperhatikan tilde (~) di sebelah beberapa pin digital (3, 5, 6, 9, 10, dan 11 pada UNO). Pin ini
bertindak sebagai pin digital normal, tetapi juga dapat digunakan untuk sesuatu yang disebut Pulse-Width Modulation (PWM).
Kami memiliki tutorial tentang PWM, tetapi untuk saat ini, anggap pin ini mampu mensimulasikan output analog (seperti
memudarkan LED masuk dan keluar).
AREF (9): Singkatan dari Referensi Analog. Sebagian besar waktu Anda dapat meninggalkan pin ini sendirian. Kadang-kadang
digunakan untuk mengatur tegangan referensi eksternal (antara 0 dan 5 Volts) sebagai batas atas untuk pin input analog.
Tombol Atur ulang

Sama seperti Nintendo asli, Arduino memiliki tombol reset (10). Menekannya untuk sementara akan menghubungkan pin reset
ke ground dan me-restart kode yang dimuat pada Arduino. Ini bisa sangat berguna jika kode Anda tidak berulang, tetapi Anda
ingin mengujinya berulang kali. Berbeda dengan Nintendo yang asli, meniup Arduino biasanya tidak memperbaiki masalah.
Indikator Daya LED

Tepat di bawah dan di sebelah kanan kata "UNO" di papan sirkuit Anda, ada LED kecil di sebelah kata 'ON' (11). LED ini akan
menyala setiap kali Anda mencolokkan Arduino ke sumber listrik. Jika lampu ini tidak menyala, ada kemungkinan besar ada
sesuatu yang salah. Saatnya memeriksa ulang sirkuit Anda!

LED TX RX

TX adalah kependekan dari pengiriman, RX adalah kependekan dari penerimaan. Tanda-tanda ini muncul sedikit di elektronik
untuk menunjukkan pin yang bertanggung jawab untuk komunikasi serial. Dalam kasus kami, ada dua tempat di Arduino UNO
di mana TX dan RX muncul - sekali dengan pin digital 0 dan 1, dan kedua kalinya di sebelah TX dan LED indikator RX (12).
LED ini akan memberi kita beberapa indikasi visual yang bagus setiap kali Arduino kami menerima atau mentransmisikan data
(seperti ketika kami memuat program baru ke papan tulis).
IC utama

Benda hitam dengan semua kaki logam adalah IC, atau Integrated Circuit (13). Anggap saja sebagai otak Arduino kita. IC
utama pada Arduino sedikit berbeda dari jenis papan ke jenis papan, tetapi biasanya dari garis ATmega IC dari perusahaan
ATMEL. Ini bisa menjadi penting, karena Anda mungkin perlu mengetahui jenis IC (bersama dengan jenis papan Anda)
sebelum memuat program baru dari perangkat lunak Arduino. Informasi ini biasanya dapat ditemukan secara tertulis di sisi atas
IC. Jika Anda ingin tahu lebih banyak tentang perbedaan antara berbagai IC, membaca lembar data seringkali merupakan ide
yang bagus.
Regulator tegangan

Regulator tegangan (14) sebenarnya bukan sesuatu yang Anda dapat (atau harus) berinteraksi dengan Arduino. Tetapi
berpotensi bermanfaat untuk mengetahui bahwa itu ada dan untuk apa itu. Regulator tegangan melakukan apa yang
dikatakannya - ia mengontrol jumlah tegangan yang dibiarkan masuk ke papan Arduino. Anggap saja sebagai semacam
penjaga gerbang; itu akan mengubah tegangan ekstra yang dapat membahayakan sirkuit. Tentu saja, ia memiliki batasnya,
jadi jangan menghubungkan Arduino Anda dengan apa pun yang lebih besar dari 20 volt.

Kami juga Menyediakan : Kumpulan Arduino Terbaik 

Bagaimana apakah kalian mulai memahami Dasar Program Arduino atau malah kalian bingung, jangan khawatir coba anda
baca ulang lagi Pengertian Dasar Program Arduino untuk Pemula yang sudah jelaskan di atas dengan teliti, karena di bawah
ini ada tips atau clue untuk mempelajari lebih dalam Dasar Program Arduino untuk Pemula , ada tigas tips berikut langkah-
langkahnya :

1. Pelajari Mikrokontroller yang ada di papan Arduino, Karena ada banyak tipe mikrokontroller yang di gunakan Arduino,
cobalah pelajari tipe ATMEGA328 , dan pelajari bagian-bagian bagaimana mikrokontroller tersebut bekerja , masih bingung
bentuk ATMEGA328 ?? coba anda buka disini.

2. Pelajari lebih dalam Papan Arduino Seperti yang sudah saya jelaskan diatas, Belajar Dasar Program Arduino untuk
pemula tidak cukup di jenis-jenis Arduino saja, papan (board) juga harus kalian pelajari lebih mendetail, coba pelajar
memorinya konfigurasi pin I/O baik digital maupun analog, coba perhatikan gambar di bawah yang merupakan diagram
Arduino
3. Pelajari software Arduino , terutama cara memprogram arduino dalam bahasa C, mengupload program, dan pelajari
bagian-bagian aplikasi Arduino IDE (Integrated development Environment) atau Skecth , Aplikasi tersebut akan memudahkan
semua hal yang berhubungan dengan software arduino , aplikasi tersebut dapat anda download disitus webnya , 
Robot Line Follower Digital Menggunakan Arduino (Simple
Robot Line Tracking Arduino)
 Posted on 2/06/2016 11:23:00 PM     by profesorbolabot   

Skema Lengkap Line follower Digital IC Komparator

Pada skema lengkap robot line follower didesain dengan posisi sensor di atas permukaan putih. Dua buah sistem sensor di pasang pada
pin Analog Input A0 dan A1, sedangkan sistem actuator motor DC dipasang pada Port 9 dan 6 untuk motor kiri, PORT 5 dan 3 untuk motor
kanan. Prinsip kerja robot line follower berikut adalah saat sistem sensor berada di atas permukaan putih, akan ada pantulan cahaya dari
LED yang akan mengenai sensor cahaya LDR sehingga resistansi sensor LDR berkurang sehingga arus bergerak melalui LDR. Kondisi
tersebut menyebabkan arus output sensor menuju IC komparator LM 393 menjadi minimum, oleh IC LM 393, arus di non-inverting
sehingga output menuju pin Arduino menjadi LOW (0). Sebaliknya, saat sistem sensor berada di atas garis hitam, tidak akan ada pantulan
cahaya dari LED yang akan mengenai sensor cahaya LDR sehingga resistansi sensor LDR sangat besar sehingga arus tidak akan melalui
LDR. Kondisi tersebut menyebabkan arus output sensor menuju IC komparator LM 393 menjadi maksimum, oleh IC LM 393, arus di non-
inverting sehingga output menuju pin Arduino menjadi HIGH (1). Oleh Arduino data logika pin tersebut kemudian diolah untuk
mengerakan motor, motor akan bergerak jika kedua pin motor tersebut memiliki beda polaritas. Selengkapnya mengenai logika gerak robot
dapat dilihat pada Tabel 1 dan 2.

Tabel 21Kondisi Gerak Motor dan pengaruh Sensor

Kondisi A0 = 0 A0 =1
A1 = 0 Maju Belok Kiri
A1 = 1 Belok Kanan Mundur

Tabel 2 Kondisi Gerak Motor dan Kondisi Logika Tiap Pin Motor

Kondisi PORT 9 PORT 6 PORT 5 PORT 3


Maju LOW HIGH LOW HIGH
Belok Kiri HIGH LOW LOW HIGH
Belok Kanan LOW HIGH HIGH LOW
Mundur HIGH LOW HIGH LOW

 Gambar 1 Desain simulasi Proteus robot line follower digital

Gambar 1 adalah desain lengkap robot line follower digital dengan dua sensor cahaya dan komparator menggunakan board Arduino Uno.
Sensor cahaya dihubungkan pada PORT Analog Input A0 dan A1 board Arduino, sedangkan input motor driver IC L293D terhubung
dengan PORT yaitu 9, 6, 5, dan 3 Board Arduino.

Membuat Program Robot Line Follower Digital Menggunakan IDE Arduino


1    Susun rangkaian robot line follower digital menggunakan dua buah sensor seperti gambar berikut:

Gambar 2 Desain Fritzing rangkaian robot line follower digital

1. Hubungkan Arduino ke komputer dengan kabel USB.   


2. Buka software Arduino, dan ketik program berikut:

//ROBOT LINE FOLLOWER DIGITAL


//DILENGKAPI LCD DAN KOMUNIKASI SERIAL

#include
LiquidCrystal lcd(13,12,11,10,8,7);
int kiriA = 9;
int kiriB = 6;
int kananA = 5;
int kananB = 3;

void setup()
{
  lcd.begin(16,2);
  Serial.begin(9600);
  pinMode(kiriA,OUTPUT);
  pinMode(kiriB,OUTPUT);
  pinMode(kananA,OUTPUT);
  pinMode(kananB,OUTPUT);
  pinMode(A0,INPUT);
  pinMode(A1,INPUT);

void loop()
{
  int kiri = digitalRead(A0);
  int kanan = digitalRead(A1);

 //HIGH=hitam, LOW=putih

  if ((kiri==HIGH)&&(kanan==LOW))
  {
    digitalWrite(kiriA,HIGH);
    digitalWrite(kiriB,LOW);
    digitalWrite(kananA,LOW);
    digitalWrite(kananB,HIGH);

    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("i=hitam a=putih");
    lcd.setCursor(0,1);
    lcd.print("BELOK KIRI");

    //Serial Program
    Serial.println("Sensor Kiri Hitam & Sensor Kanan Putih");
    Serial.println("BELOK KIRI");
  }
  else if ((kiri==LOW)&&(kanan==HIGH))
  {
    digitalWrite(kiriA,LOW);
    digitalWrite(kiriB,HIGH);
    digitalWrite(kananA,HIGH);
    digitalWrite(kananB,LOW);
    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("i=putih a=hitam");
    lcd.setCursor(0,1);
    lcd.print("BELOK KANAN");

    //Serial Program
    Serial.println("Sensor Kiri Putih & Sensor Kanan Hitam");
    Serial.println("BELOK KANAN");
  }
  else if ((kiri==HIGH)&&(kanan==HIGH))
  {
    digitalWrite(kiriA,HIGH);
    digitalWrite(kiriB,LOW);
    digitalWrite(kananA,HIGH);
    digitalWrite(kananB,LOW);
    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("i=hitam a=hitam");
    lcd.setCursor(0,1);
    lcd.print("MUNDUR");

    //Serial Program
    Serial.println("Sensor Kiri Hitam & Sensor Kanan Hitam");
    Serial.println("MUNDUR");
  }

  else
  {
    digitalWrite(kiriA,LOW);
    digitalWrite(kiriB,HIGH);
    digitalWrite(kananA,LOW);
    digitalWrite(kananB,HIGH);
    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("i=putih a=putih");
    lcd.setCursor(0,1);
    lcd.print("MAJU");

    //Serial Program
    Serial.println("Sensor Kiri Putih & Sensor Kanan Putih");
    Serial.println("MAJU");
  }

3. Pilih Board dan Serial PORT yang digunakan di menu Tools. 


4. Tekan tombol Verify dipojok kiri toolbar. Setelah muncul pesan “Done Compiling”, selanjutnya tekan tombol Upload yang ada di kanan
tombol Verifysampai muncul pesan “Done Uploading”
.
Gambar 3 Output program robot line follower menggunakan Arduino Uno

Saat kedua sensor berada dipermukaan putih maka robot akan bergerak maju, jika sensor kiri berada diatas garis hitam sedangkan sensor
kanan di permukaan putih maka robot akan berbelok ke kiri, begitupula saat jika sensor kanan berada diatas garis hitam sedangkan sensor
kiri di permukaan putih maka robot akan berbelok ke kanan, sehingga robot akan senantiasa berada menelusuri garis hitam.

Bentuk Robot Line Follower Digital Berbasis Sensor Cahaya

Gambar 4 Bentuk jadi robot line follower menggunakan Mikrokontroler Arduino


Share: 

Robot Penghindar Halangan Sensor Ultrasonic PING))) Versi AT


Mega 16 dan AT Mega 8
 Posted on 3/17/2013 05:17:00 AM     by profesorbolabot   

Kelelawar hewan nocturnal, yang berkeliaran di malam hari...meski berada dikegelapan,


kelelawar dapat terbang bebas tanpa menabrak penghalang didepannya,, kelelawar dapat
menghindari penghalang didepannya karena kelelawar dapat mengeluarkan gelombang ultrasonic,
yang jika ada penghalang maka gelombang tersebut akan dipantulkan kembali dan diterima oleh
telinga kelelawar yang lebar, sehingga kelelawar dapat menghindar secara spontan ketika
didepannya ada penghalang.

Gambar 1. Prinsip kerja pengukuran jarak benda

Karakteristik Sensor Ultrasonic PING Paralax

Ultrasonik, sebutan untuk jenis suara diatas batas suara yang bisa didengar manusia. Seperti
diketahui, telinga manusia hanya bisa mendengar suara dengan frekuensi 20 Hz sampai 20KHz.
Lebih dari itu hanya beberapa jenis binatang yang mampu mendengarnya, seperti kelelawar dan
lumba-lumba. Lumba-lumba bahkan memanfaatkan ultrasonik untuk mengindera benda-benda di laut.
Dengan cara mengirimkan sebuah suara dan mengitung lamanya pantulan suara tersebut maka dapat
diketahui jarak kapal selam dengan benda tersebut. Mula-mula suara dibunyikan, kemudian
dihitung lama waktu sampai terdengar suara pantulan. Jarak dapat dihitung dengan mengalikan
kecepatan suara dengan waktu pantulan. Kemudian hasilnya dibagi 2. Misalnya lama waktu
pantulan adalah 1 detik, maka jaraknya adalah (344,424m/detik x 1 detik)/2 = 172m.

Ping))) Ultrasonic Range Finder, adalah modul pengukur jarak dengan ultrasonic buatan Paralax
Inc. yang didesain khusus untuk teknologi robotika. Dengan ukurannya yang cukup kecil (2,1cm x
4,5cm), sensor seharga 350 ribu rupiah ini dapat mengukur jarak antara 3 cm sampai 300 cm.
Keluaran dari Ping))) berupa pulsa yang lebarnya merepresentasikan jarak. Lebar pulsanya
bervariasi dari 115 uS sampai 18,5 mS.

Gambar 2. Sensor ultrasonic PING))) Paralax

Pada dasanya, Ping))) terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker
ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi
suara sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya. Pada modul
Ping))) terdapat 3 pin yang digunakan untuk jalur power supply (+5V), ground dan signal. Pin
signal dapat langsung dihubungkan dengan mikrokontroler tanpa tambahan komponen apapun.

Ping))) mendeteksi objek dengan cara mengirimkan suara ultrasonik dan kemudian “mendengarkan”
pantulan suara tersebut. Ping))) hanya akan mengirimkan suara ultrasonik ketika ada pulsa
trigger dari mikrokontroler (Pulsa high selama 5uS). Suara ultrasonik dengan frekuensi sebesar
40KHz akan dipancarkan selama 200uS. Suara ini akan merambat di udara dengan kecepatan
344.424m/detik (atau 1cm setiap 29.034uS), mengenai objek untuk kemudian terpantul kembali ke
Ping))). Selama menunggu pantulan, Ping))) akan menghasilkan sebuah pulsa. Pulsa ini akan
berhenti (low) ketika suara pantulan terdeteksi oleh Ping))). Oleh karena itulah lebar pulsa
tersebut dapat merepresentasikan jarak antara Ping))) dengan objek.

Berdasarkan Datasheet

Jarak = (Lebar Pulsa/29.034uS)/2 (dalam cm)


Jarak = (Lebar Pulsa x 0.034442)/2 (dalam cm)
Karena 1/29.034 = 0.34442

Berdasarkan Perhitungan Kalibrasi Bolabot Institute

Jarak = Lebar Pulsa * 0.020+0.252(dalam cm)

Nilai tersebut berbeda dengan nilai datasheet, sehingga penulis menyarankan untuk melakukan
kalibrasi ulang jika akan menggunakan sensor ultrasonik PING))) agar lebih teliti.

Desain Robot Penghindar Halangan Sensor ultrasonik

Berikut adalah desain robot BOLABOT TECHNO ROBOTIC INSTITUTE(www.bolabot.com)menggunakan


Proteus:
Gambar 3. Desain robot avoider ultrasonic dengan ATMega 16 dan LCD

Program CV AVR Robot Avoider Ultrasonic

Menggunakan Mikrokontroler ATMega 16 dan LCD 16x2

/*****************************************************
This program was produced by the
CodeWizardAVR V2.05.0 Professional
Automatic Program Generator
© Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com
Project :
Version :
Date    : 13/08/2013
Author  :
Company :
Comments:
Chip type               : ATmega16
Program type            : Application
AVR Core Clock frequency: 12,000000 MHz
Memory model            : Small
External RAM size       : 0
Data Stack size         : 256
*****************************************************/
#include <mega16.h>
// Alphanumeric LCD Module functions
#include <alcd.h>
#include <delay.h>
#include <stdio.h>
#include <stdlib.h>
unsigned int hitung;
float jarak;
unsigned char data[16];
void RF1(void)
{
    unsigned int i=0;
    hitung=0;                                                                                    
    DDRA.0=1;
    PORTA.0=1;
    delay_us(5);
    PORTA.0=0; 
    DDRA.0=0;
    PORTA.0=1;
    while(PINA.0==0){i++; if(i>=10000) break;}
    while(PINA.0==1){hitung++; if(hitung>=10000) break;}
    PORTA.0=0;
    delay_ms(10);
}
// Timer 0 overflow interrupt service routine
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Place your code here
}
// Declare your global variables here
void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0x00;
DDRA=0x00;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0x00;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=Out Func4=Out Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=0 State4=0 State3=T State2=T State1=T State0=T
PORTD=0x00;
DDRD=0x30;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 11,719 kHz
// Mode: Fast PWM top=0x00FF
// OC1A output: Inverted
// OC1B output: Inverted
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0xF1;
TCCR1B=0x0D;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x01;
// USART initialization
// USART disabled
UCSRB=0x00;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;
// ADC initialization
// ADC disabled
ADCSRA=0x00;
// SPI initialization
// SPI disabled
SPCR=0x00;
// TWI initialization
// TWI disabled
TWCR=0x00;
// Alphanumeric LCD initialization
// Connections specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTC Bit 0
// RD - PORTC Bit 1
// EN - PORTC Bit 2
// D4 - PORTC Bit 4
// D5 - PORTC Bit 5
// D6 - PORTC Bit 6
// D7 - PORTC Bit 7
// Characters/line: 16
lcd_init(16);
// Global enable interrupts
#asm("sei")
lcd_gotoxy (2,0) ;
lcd_putsf ("== welcome ==") ;
lcd_gotoxy(2,1);
lcd_putsf("==To Bolabot==");          
delay_ms(1000);
DDRD.2=1;   // OUTPUT MOTOR KIRI
DDRD.3=1;   // OUTPUT MOTOR KIRI
DDRD.6=1;   // OUTPUT MOTOR KANAN
DDRD.7=1;   // OUTPUT MOTOR KANAN
PORTD.2=1;
PORTD.3=1;
PORTD.6=1;
PORTD.7=1;
//kecepatan motor kiri
OCR1A=250;
//kecepatan motor kiri
OCR1B=250;
while (1)
      {
        RF1();
        // Persamaan konversi jarak hasil kalibrasi
        jarak = hitung*0.020+0.252;
        sprintf(data,"%0.001f cm", jarak);
        lcd_clear();
        lcd_gotoxy (0,0) ;
        lcd_putsf ("==JARAK==") ;
        lcd_gotoxy(0,1);
        lcd_puts(data);
        delay_ms(100);
        if (jarak<=20)
        {
        PORTD.2=0;
        PORTD.3=1;
        PORTD.6=0;
        PORTD.7=0;
        delay_ms(1000);
        PORTD.2=1;
        PORTD.3=0;
        PORTD.6=1;
        PORTD.7=0;
        }
        else
        {
        PORTD.2=1;
        PORTD.3=0;
        PORTD.6=1;
        PORTD.7=0;
        }
       
      }
}

Menggunakan Mikrokontroler ATMega 8 tanpa LCD

/*****************************************************
This program was produced by the

CodeWizardAVR V2.05.0 Professional

Automatic Program Generator


© Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com

Project : Robot Avoider Ultrasonic


Version : I
Date    : 2/18/2013
Author  : Mada Sanjaya WS, Ph.D
Company : Bolabot Techno Robotic Institute
Comments: -

Chip type               : ATmega8


Program type            : Application
AVR Core Clock frequency: 12.000000 MHz
Memory model            : Small
External RAM size       : 0
Data Stack size         : 256
*****************************************************/

#include <mega8.h>

#include <delay.h>
#include <stdio.h>
#include <stdlib.h>

unsigned int hitung;


float dutu;

void RF1(void)
{
    unsigned int i=0;
    hitung=0;
    DDRC.5=1;
    PORTC.5=1;
    delay_us(5);
    PORTC.5=0; 
    DDRC.5=0;
    PORTC.5=1;
    while(PINC.5==0){i++; if(i>=10000) break;}
    while(PINC.5==1){hitung++; if(hitung>=10000) break;}
    PORTC.5=0;
    delay_ms(10);
}

interrupt [TIM0_OVF] void timer0_ovf_isr(void)


{
    

// Declare your global variables here

void main(void)
{
// Declare your local variables here

// Input/Output Ports initialization


// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=Out Func1=Out Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=0 State1=0 State0=T
PORTB=0x00;
DDRB=0x06;

// Port C initialization
// Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x00;
DDRD=0x00;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
TCCR0=0x00;
TCNT0=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 11.719 kHz
// Mode: Fast PWM top=0x00FF
// OC1A output: Non-Inv.
// OC1B output: Non-Inv.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0xA1;
TCCR1B=0x0D;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;

// External Interrupt(s) initialization


// INT0: Off
// INT1: Off
MCUCR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization


TIMSK=0x00;

// USART initialization
// USART disabled
UCSRB=0x00;

// Analog Comparator initialization


// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

// ADC initialization
// ADC disabled
ADCSRA=0x00;

// SPI initialization
// SPI disabled
SPCR=0x00;

// TWI initialization
// TWI disabled
TWCR=0x00;
DDRD.5=1; // definisi output ke motor kiri
DDRD.6=1; // definisi output ke motor kiri
DDRD.7=1; // definisi output ke motor kanan
DDRB.0=1; // definisi output ke motor kanan
PORTD.5=1;
PORTD.6=1;
PORTD.7=1;
PORTB.0=1;

while (1)
{
RF1();
dutu = hitung*0.020+0.252; // rumus jarak berdasarkan kalibrasi sensor

if (dutu<=20) //jika jarak terhadap penghalang kurang dari sama dengan 20 cm


{
OCR1A=100;
OCR1B=100;
PORTD.5=0;
PORTD.6=1;
PORTD.7=0;
PORTB.0=0;
delay_ms(1000);
OCR1A=100;
OCR1B=100;
PORTD.5=1;
PORTD.6=0;
PORTD.7=1;
PORTB.0=0;}
else{
OCR1A=100;
OCR1B=100;
PORTD.5=1;
PORTD.6=0;
PORTD.7=1;
PORTB.0=0;}
      }
}

Realisasi Hardware Robot Avoider Ultrasonik PING)))


Berikut adalah video yang telah diunggah di youtube
Program Arduino Blinking LED
 Posted on 2/06/2016 10:48:00 PM     by profesorbolabot   

Langkah untuk membuat blinking LED, telah dibahas sedikit di pembahasan sebelumnya menggunakan satu buah LED. Maka pada bab ini
akan dibahas blinking LED menggunakan lebih dari satu LED. Tahapan pembuatan blinking LED adalah sebagai berikut:

Gambar 1 Desain blinking LED menggunakan Fritzing.

Gambar 2 Simulasi Proteus blinking LED menggunakan Arduino

21. Hubungkan Arduino ke komputer dengan kabel USB.


32. Buka software Arduino, dan ketik program berikut:

//Mendefinisikan pin

int merah = 13;


int kuning = 12;
int hijau = 11;
int biru = 10;

void setup()
// mendefinisikanmode pin sebagai output
{
  pinMode(merah, OUTPUT);
  pinMode(kuning,OUTPUT);
  pinMode(hijau,OUTPUT);
  pinMode(biru,OUTPUT);
}

void loop()
{
  digitalWrite(merah, HIGH); // merah menyala
  digitalWrite(kuning,HIGH); //kuning menyala
  digitalWrite(hijau,LOW); //hijau mati
  digitalWrite(biru,LOW);  //biru mati
  delay(1000); //selama 1 detik
  digitalWrite(merah, LOW); //merah mati
  digitalWrite(kuning,LOW); //kuning mati
  digitalWrite(hijau,HIGH); //hijau menyala
  digitalWrite(biru,HIGH);  //biru menyala
  delay(1000); //selama 1 detik
}

43. Pilih Board dan Serial PORT yang digunakan di menu Tools.


54. Tekan tombol Vverify dipojok kiri toolbar.
65. Setelah muncul pesan “Done Compiling”, selanjutnya tekan tombol Upload yang ada di kanan tombol Verify.
76.Setelah muncul pesan “Done Uploading”, kita dapat menguji program tersebut dengan melihat LED, dimana LED merah dan kuning akan
menyala dan LED hijau dan biru mati selama satu detik, kemudian akan berganti LED merah dan kuning akan mati sedangkan
LED hijau dan biru menyalaselama satu detik, dan seterusnya hingga power dilepas.

Gambar 3. LED menyala secara bergantian.


Pengertian, Kelebihan dan Kekurangan
Arduino dan Raspberry
Diposkan pada 22 Januari 2018
A. ARDUINO
Arduino adalah 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. Saat ini Arduino sangat populer di seluruh dunia. Banyak pemula yang belajar mengenal
robotika dan elektronika lewat Arduino karena mudah dipelajari. Tapi tidak hanya pemula, para
hobbyist atau profesional pun ikut senang mengembangkan aplikasi elektronik menggunakan
Arduino. Bahasa yang dipakai dalam Arduino bukan assembler yang relatif sulit, tetapi bahasa C
yang disederhanakan dengan bantuan pustaka-pustaka (libraries) Arduino. Di bawah ini ada
beberapa kelebihan dan kekurangan Arduino :

KELEBIHAN ARDUINO
l Tidak perlu perangkat chip programmer karena di dalamnya sudah ada bootloader yang akan
menangani upload program dari komputer.

l Sudah memiliki sarana komunikasi USB, sehingga pengguna Laptop yang tidak memiliki port
serial/RS323 bisa menggunakan nya.

l Bahasa pemrograman relatif mudah karena software Arduino dilengkapi dengan kumpulan
library yang cukup lengkap.

l Memiliki modul siap pakai (shield) yang bisa ditancapkan pada board Arduino. Misalnya shield
GPS, Ethernet, SD Card, dll.

KEKURANGAN ARDUINO
l Kode hex relatif lebih besar.

l Sering terjadi kesalahan fuse bit saat membuat bootloader.

l Harus memodifikasi program lama, karena pada penggunaan pin harus “disiplin”.

l Storage Flash berkurang, karena dipakai untuk bootloader.

Raspberry Pi
Raspberry Pi atau Raspi adalah komputer kecil seukuran sebuah kartu kredit, Raspberry Pi
memiliki prosesor, RAM dan port hardware yang khas yang bisa anda temukan pada banyak
komputer. Ini berarti, Anda dapat melakukan banyak hal seperti pada sebuah komputer desktop.
anda dapat melakukan seperti mengedit dokumen, memutar video HD, bermain game, coding
dan banyak lagi.

 Kelebihan Raspberry

 Kelebihan utama Raspberry Pi adalah ia dapat melakukan segala hal yang dapat dilakukan oleh
komputer/laptop dengan sistem operasi Linux. Misalnya, membuat server, membuat program
dengan berbagai macam bahasa, terutama bahasa tingkat tinggi seperti Python. Untuk fungsi
sehari-hari, Raspberry dapat menjalankan sistem operasi berbasis GUI, sehingga dapat
menggunakannya untuk melakukan pekerjaan standard seperti browsing, mendengarkan musik,
nonton film, bermain game, mengetik dll.Untuk penggunaan tingkat lanjut, Raspberry Pi hampir
tidak memiliki batasan. Banyak sekali kemungkinan pengembangan aplikasi yang dapat
dilakukan dengan menggunakan Raspberry Pi.

 Kekurangan Raspberry

 Raspberry Pi dapat membaca sensor digital secara langsung, akan tetapi Raspberry Pi tidak
bisa langsung dihubungkan dengan sensor analog. Raspberry Pi yang menggunakan sistem
operasi dan SD card yang memerlukan prosedur khusus ketika ingin mematikannya. Jadi harus
di-shutdown sebagaimana komputer pada umumnya. Raspberry Pi mungkin akan terdapat
sedikit lebih lambat karena kernel Linux pada sistem operasi Raspberry Pi memiliki fungsi
prioritas proses seperti yang dimiliki oleh semua sistem operasi. Kernel linux harus menangani
banyak proses dengan prioritas yang ditentukan, sehingga proses menggerakkan lengan akan
lebih lambat.

elebihan Dan Kekurangan Arduino

Pada pembahasan-pembahasan sebelumnya (cek disini) dan (cek disini), kita telah


belajar mengenai apa itu mikrokontroler, jenis-jenis mikrokontroler dan mengenal Arduino
dari sisi pengertiannya, sejarahnya, dan siapa saja tim pengembangnya. Arduino saat ini
merupakan salah satu board mikrokontroler yang sangat populer di seluruh dunia. Banyak
pemula yang belajar mengenal robotika dan elektronika lewat Arduino karena mudah
dipelajari. Tapi tidak hanya pemula, para hobbyist atau profesional pun ikut senang
mengembangkan aplikasi elektronik menggunakan Arduino. Bahasa yang dipakai dalam
Arduino bukan assembler yang relatif sulit, tetapi bahasa C yang disederhanakan dengan
bantuan pustaka-pustaka (libraries) Arduino.
Namun apa saja hal-hal menarik yang ditawarkan oleh arduino, berikut penjabaran
tentang arduino yang juga memiliki kelebihan salah satunya yaitu menyederhanakan proses
belajar dengan mikrokontroler, sekaligus menawarkan berbagai macam kelebihan lainnya
antara lain:

         Murah
Papan (perangkat keras) Arduino biasanya dijual relatif murah (antara 125ribu hingga
400ribuan rupiah saja) dibandingkan dengan platform mikrokontroler pro lainnya. Jika ingin
lebih murah lagi, tentu bisa dibuat sendiri dan itu sangat mungkin sekali karena semua
sumber daya untuk membuat sendiri Arduino tersedia lengkap di website Arduino bahkan di
website-website komunitas Arduino lainnya. Tidak hanya cocok untuk Windows, namun juga
cocok bekerja di Linux.
         Pemprograman Sederhana dan Mudah
Perlu diketahui bahwa lingkungan pemrograman di Arduino mudah digunakan untuk pemula,
dan cukup fleksibel bagi mereka yang sudah tingkat lanjut. Untuk guru/dosen, Arduino
berbasis pada lingkungan pemrograman Processing, sehingga jika mahasiswa atau murid-
murid terbiasa menggunakan Processing tentu saja akan mudah menggunakan Arduino.
         Perangkat lunak Open Source
Perangkat lunak Arduino IDE dipublikasikan sebagai Open Source, tersedia bagi para
pemrogram berpengalaman untuk pengembangan lebih lanjut. Bahasanya bisa dikembangkan
lebih lanjut melalui pustaka-pustaka C++ yang berbasis pada Bahasa C untuk AVR.
         Perangkat keras Open Source
Perangkat keras Arduino berbasis mikrokontroler ATMEGA8, ATMEGA168, ATMEGA328
dan ATMEGA1280 (yang terbaru ATMEGA2560). Dengan demikian siapa saja bisa
membuatnya (dan kemudian bisa menjualnya) perangkat keras Arduino ini, apalagi
bootloader tersedia langsung dari perangkat lunak Arduino IDE-nya. Bisa juga menggunakan
breadoard untuk membuat perangkat Arduino beserta periferal-periferal lain yang
dibutuhkan.
         SOKET USB
Sudah memiliki sarana komunikasi USB, Sehingga pengguna laptop yang tidak memiliki port
serial/RS323 bisa menggunakannya. Soket USB adalah soket kabel USB yang disambungkan
kekomputer atau laptop dimana berfungsi untuk mengirimkan program ke arduino dan juga
sebagai port komunikasi serial.
         INPUT/OUTPUT DIGITAL DAN INPUT ANALOG
-    Input/output digital atau digital pin adalah pin-pin untuk menghubungkan arduino dengan
komponen atau rangkaian digital. contohnya, jika ingin membuat LED berkedip, LED
tersebut bisa dipasang pada salah satu pin input atau output digital dan ground. komponen
lain yang menghasilkan output digital atau menerima input digital bisa disambungkan ke pin-
pin ini.
-   Input analog atau analog pin adalah pin-pin yang berfungsi untuk menerima sinyal dari
komponen atau rangkaian analog. contohnya , potensiometer, sensor suhu, sensor cahaya, dll.
         CATU DAYA
Pin catu daya adalah pin yang memberikan tegangan untuk komponen atau rangkaian yang
dihubungkan dengan arduino. Pin bagian catu daya ini adalah pin Vin dan Reset. Vin
digunakan untuk memberikan tegangan langsung kepada arduino tanpa melalui tegangan
pada USB atau adaptor, sedangkan Reset adalah pin untuk memberikan sinyal reset melalui
tombol atau rangkaian eksternal.
         Baterai / Adaptor
Soket baterai atau adaptor digunakan untuk menyuplai arduino dengan tegangan dari
baterai/adaptor 9V pada saat arduino sedang tidak disambungkan kekomputer. Jika arduino
sedang disambungkan kekomputer dengan USB, maka Arduino mendapatkan suplai tegangan
dari USB sehingga tidak perlu memasang baterai/adaptor pada saat memprogram arduino.
         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 open source, maka library-library ini juga open source
dan dapat di download gratis di website Arduino.
         Perangkat Pendukung
Memiliki banyak modul siap pakai (Shield) yang bisa ditancapkan atau disambungkan pada
board arduino. Contohnya shield GPS, Ethernet,dll.
         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.
         Komunitas open source yang saling mendukung
Software Linux, PHP, MySQL atau WordPress perkembangannya begitu pesat karena
merupakan software open source dimana ada komunitas yang saling mendukung
pengembangan proyek. Demikian juga dengan Arduino, pengembangan hardware dan
software Arduino didukung oleh pencinta elektronika dan pemrograman di seluruh dunia.
Contoh, interface USB pada Arduino Uno mengambil dari LUFA project. Library dan
contoh-contoh program adalah sumbangan dari beberapa programmer mikrokontroler, seperti
Tom Igoe, dsb.
Tentunya dibalik sebuah karya yang dianggap baik dan juga memiliki banyak
kelebihan seperti yang telah kita jabarkan diatas, board Arduino juga memiliki beberapa
kekurangan yang perlu diperhatikan agar penggunaan lebih optimal. Adapun beberapa
kekurangan tersebut yaitu:
         Kode hex relatif lebih besar.
         Sering terjadi kesalahan fuse bit saat membuat bootloader.
         Waktu memodifikasi program lebih lama, karena pada penggunaan pin yang banyak harus
“disiplin” dalam menginisialisasinya.
         Storage Flash berkurang, karena dipakai untuk bootloader.
Demikian sedikit penjabaran saya tentang kelebihan dan kekurangan dari Arduino,
jika terdapat materi yang belum dibahas dapat tinggalkan komentar untuk melengkapi materi
dari tulisan ini.
/
Pengetahuan Dasar Pemrograman C untuk
modul Arduino
JUL 18

Posted by pccontrol
Pendahuluan

Arduino adalah sebuah modul microcontroller   dgn  port input dan output   yg diprogram menggunakan bahasa  C Arduino  ( apakah dgn
bahasa C yg lain juga bisa?  ya bisa tapi tdk dibahas disini).  skematiknya disini  dan rangkain schematik dgn eagle disini.
Modul arduino terdiri dari beberapa type yg membedakan hanya fitur fiturnya saja sedangkan dari segi pemrograman sama saja. beberapa
type tsb antara lain : Arduino Uno, Arduino Leonardo, Arduino Due  dll.

Kelebihan Modul Arduino antara lain :

1. Mudah digunakan , cocok sekali untuk pemula.

2. Fungsi Library ( code program tinggal pakai) untuk mengakses hardware sangat banyak.  Hardware hardware tsb antara lain bluetooth,
berbagai macam sensor, GSM board, GPS , dll.

Software yg dibutuhkan 
1.  Compiler / IDE Arduino :  http://arduino.cc/en/Main/Software  (wajib)
2.  Menggambar  board Aplikasi http://fritzing.org/download/  (option)
3.  Simulasi  menggunakan proteus    (option)

Compiler / IDE arduino   digunakan untuk mengkompile bahasa C arduino dan  juga  untuk mengupload  program hasil kompile tsb  (hex
file) ke  modul Arduino.
Untuk instalasi aplikasi Arduino cukup dgn  extraxt file hasil downlod tsb. Untuk membuka aplikasi klik file arduino.exe , untuk lebih
praktis  buatlah  shortcut file arduino.exe di desktop PC anda.
Gambar  Koneksi modul Arduino dgn aplikasi Arduino di PC atau Laptop

Tahapan  Penggunaan Modul Arduino pertama kali


1. Download Aplikasi Arduino  lalu extrak

2. Hubungkan modul Arduino  ke PC dgn kabel USB.

install driver  modul arduino sama spt ketika anda menginstall peralatan dg port USB yg dihubungkan ke port USB PC/laptop, caranya spt
ini http://arduino.cc/en/Guide/UnoDriversWindowsXP

3.   Buka software  aplikasi Arduino  .

Untuk membuka aplikasi  arduino  klik file arduino.exe pada folder hasl extraxt.

4. Pilih type modul  (sesuaikan dgn modul yg kita beli misal : arduino uno) dgn mengklik  Tool->board.

5.  Buka  kode  program C  salah satu  sample ,  lalu compile dng cara klik Sketch->Compile.

6.  Upload program ke modul Arduino.

Gambar Software Aplikasi Arduino

Struktur Dasar  C Arduino


Program C Arduino  minimal terdiri dari dua fungsi yaitu setup() dan loop().  Fungsi setup() dijalankan sekali setiap board  arduino
dihidupkan sedangkan fungsi loop() dijalankan terus menerus selama board arduino hidup.

//setup digunakan untuk inisialisasi variable, mode pin dll

void setup()

statement

void loop()

statement

....

//fungsi fungsi lainya jika ada

fungsi_lainnya()

{
statement

Contoh

1
2 void setup()
{
3 pinMode(8, OUTPUT); // pin 8 sbg output
4 }
5  
6 void loop()
7 {
8 digitalWrite(8, HIGH); // LED on
delay(250);
9 digitalWrite(8, LOW); // LED off
10 delay(1000);
11 }
12
selanjutnya silahkan baca disini   :   Dasar pemrograman Bahasa  C untuk Arduino
REFERENSI
http://arduino.cc
http://arduino.cc/en/Reference/HomePage
http://arduino-for-beginners.blogspot.com/
Advertisements

Anda mungkin juga menyukai