Anda di halaman 1dari 27

MODUL PRAKTIKUM MIKROKONTROLER ARDUINO

Oleh : Andrian Wijayono, S.Tr.T.


E-mail: andrianwijayono@windowslive.com

Intisari
Pada modul praktikum ini akan dijelaskan teori serta mengenai penggunaan
mikrokontroller arduino. Beberapa listing program dan contoh aplikasi
diterangkan pada bab ini, seperti pada aplikasi sensor dan aktuator (baik digital
maupun analog).

PENDAHULUAN
Penggunaan peralatan otomatisasi di industri tekstil merupakan hal yang telah lama
diketahui. Tujuan penggunaan perangkat otomatisasi tersebut adalah agar dapat
meningkatkan efektifitas dan efesiensi di bagian produksi. Pada era digital dan
komputer saat ini, mikrokontroler merupakan salah satu perangkat yang dapat
digunakan untuk memenuhi kebutuhan tersebut. Sebelum dikenalnya perangkat
tersebut, otomatisasi pada mesin-mesin tekstil cenderung banyak yang menggunakan
prinsip mekanis, seperti contohnya prinsip otomatisasi pakan putus pada mesin tenun
dengan menggunakan garpu peraba, namun tentunya sistem tersebut memiliki
banyak sekali kekurangan. Sehingga penerapan perangkat mikrokontroler merupakan
salah satu solusi pada masalah tersebut, dengan cara mengaplikasikan perangkat
fotosensor dengan sebuah mikrokontroler, maka peralatan mekanis tersebut dapat
dibuat pada mekanisme dan ukuran yang lebih sederhana.

TUJUAN
1. Mempelajari dasar cara mengaplikasikan perangkat mikrokontroler Arduino
Uno pada sebuah sensor push button serta aktuator LED.
2. Mempelajari dasar cara untuk merangkai suatu rangkaian listrik pada sebuah
rangkaian mikrokontroler.

1
DASAR TEORI
1. Pengenalan Umum Platform Papan Arduino
1.1 Platform Arduino

Dilansir dari web resmi Arduino (https://www.arduino.cc/en/guide/introduction),


Arduino adalah platform elektronik open source yang didasarkan pada perangkat
keras dan perangkat lunak yang mudah digunakan. Papan Arduino dapat membaca
input menjadi output.

Selama bertahun-tahun Arduino telah menjadi otak ribuan proyek, mulai dari objek
sehari-hari sampai instrumen ilmiah yang rumit. Komunitas para perakit, pelajar,
seniman, programmer banyak yang menggunakan platform open source ini, kontribusi
mereka telah menambahkan sejumlah pengetahuan yang dapat diakses yang dapat
membantu para pemula dan ahli.

Arduino lahir di Ivrea Interaction Design Institute sebagai alat sebagai alat yang
digunakan untuk prototyping cepat. Arduino ditujukan untuk siswa tanpa latar
belakang dalam bidang elektronika dan pemrograman. Semua papan Arduino benar-
benar open source, memberdayakan pengguna untuk membangunnya secara mandiri
dan akhirnya menyesuaikannya dengan kebutuhan khusus mereka. Software Arduino
juga bersifat open-source, dan berkembang melalui kontribusi pengguna di seluruh
dunia.

1.2 Jenis-Jenis Papan Arduino

Dilansir dari web resmi Arduino (https://www.arduino.cc/en/Main/Products), terdapat


banyak jenis dari papan Arduino yang tersedia, jenis-jenis papan Arduino tersebut
memiliki kemampuannya masing-masing. Berbagai jenis arduino tersebut dapat dilihat
pada Gambar-1. Khusus jenis Arduino Uno merupakan salah satu versi platform yang
pertama dirilis oleh Arduino. Arduino Nano dan Arduino Mini dapat digunakan untuk
kebutuhan pembuatan prototype dengan ukuran kecil yang tak membutuhkan banyak
I/O. Arduino Mega dan Arduino Mega ADK dapat digunakan untuk pembuatan
prototype yang memiliki kebutuhan I/O yang lebih banyak.

2
Sumber: https://www.arduino.cc/en/Main/Products, diakses 23 April 2017.
Gambar-1 Jenis-jenis papan Arduino

3
1.3 Keunggulan Papan Arduino

Terdapat beberapa keunggulan yang dimiliki oleh platform mikrokontroler Arduino,


diantaranya adalah:

1. Murah, papan Arduino relatif murah dibanding platform mikrokontroler lainnya.


2. Cross-platform, Arduino Software (Integrated Development Environment)
berjalan pada sistem operasi Windows, Macintosh OSX, dan Linux.
Kebanyakan sistem mikrokontroler terbatas pada Windows.
3. Lingkungan pemrograman yang sederhana dan jelas, Arduino Software
(Integrated Development Environment) mudah digunakan untuk pemula,
namun cukup fleksibel bagi pengguna tingkat lanjut untuk memanfaatkannya
juga.
4. Memiliki perangkat lunak yang bersifat open source dan extensible, Software
Arduino diterbitkan sebagai tool open source, sehingga bahasa sintaks dapat
diperluas melalui library C ++.
5. Memiliki perangkat keras yang bersifat open source dan extensible, papan
Arduino diterbitkan dengan lisensi Creative Commons, jadi perancang circuit
berpengalaman dapat membuat versi modul mereka sendiri, memperluasnya
serta memperbaikinya sesuai dengan kebutuhan.

1.4 Software Arduino (Integrated Development Environment)

Integrated Development Environment (IDE) adalah program komputer yang memiliki


beberapa fasilitas yang diperlukan dalam pembangunan perangkat lunak, sebagai
contohnya adalah Software Arduino. Secara garis besar, Software Arduino memiliki
fasilitas sebagai berikut:

- Editor, yaitu fasilitas untuk menuliskan kode sumber dari perangkat lunak.
- Compiler, yaitu fasilitas untuk mengecek sintaks dari source code, kemudian
mengubahnya dalam bentuk binary sesuai dengan bahasa mesin.
- Upload, yaitu fasilitas untuk mengirimkan binary pada papan Arduino.

Software Arduino tersebut memiliki kompabilitas untuk sistem operasi Windows 32 bit,
Windows 64 bit, Mac OS X dan Linux ARM. Gambar-2 merupakan tampilan

4
antarmuka Software Arduino yang digunakan sebagai IDE dalam pemrograman
papan Arduino.

Sumber: Alan G. Smith. Introduction to Arduino: A piece of cake!. ISBN-13: 978-1463698348.


Gambar-2 Tampilan antarmuka perangkat lunak IDE Arduino

Pada Gambar 2.26 menunjukan bagian-bagian dari antarmuka Arduino. Fungsi dari
masing-masing bagian antarmuka tersebut adalah sebagai berikut:

- Compile, berfungsi untuk mengecek sintaks dari source code, kemudian


mengubahnya dalam bentuk binary sesuai dengan bahasa mesin.
- Stop, berfungsi untuk menghentikan proses kompilasi.
- Create new sketch, berfungsi membuka jendela baru untuk membuat sketsa
baru.

5
- Open Existing Sketch, berfungsi untuk memuat sketsa dari source code
Software Arduino yang ada di komputer.
- Save Sketch, berfungsi untuk menyimpan perubahan pada sketsa yang
sedang Anda kerjakan.
- Upload to Board, berfungsi untuk mengkompilasi source code dan
mengunggahnya pada papan Arduino.
- Serial monitor, berfungsi untuk menampilkan hasil serial monitoring pada
variabel tertentu yang diamati.
- Tombol Tab, digunakan untuk memuat beberapa file dalam sketsa yang
sedang dibuat dengan prinsip class. Fitur ini digunakan untuk pemrograman
yang sudah lebih berkembang.
- Sketch Editor, berfungsi untuk menulis atau mengedit source code.
- Text Console, berfungsi untuk menunjukkan hal yang sedang dilakukan IDE,
kemudian digunakan pula untuk menampilkan pesan error apabila terdapat
kesalahan pada source code program.
- Line Number, berfungsi untuk menunjukkan nomor baris aktif pada kursor.

Untuk mengunggah data program pada papan Arduino, komputer harus dalam
keadaan terhubung dengan perangkat papan Arduino melalui port USB-B pada papan
Arduino (dapat dilihat pada Gambar-3).

Port USB-B
Jack USB-B

Sumber: https://learn.sparkfun.com/tutorials/redboard-vs-uno/usb-connectors-and-drivers,
diakses tanggal 23 April 2017.
Gambar-3 Konektor USB-B dan port USB-B papan Arduino Uno R3

6
2. Data Spesifikasi Papan Arduino R3

Arduino / Genuino Uno adalah papan mikrokontroler berbasis ATmega328P. Papan


ini memiliki 14 pin input / output digital (yang 6 dapat digunakan sebagai output PWM),
6 input analog, kristal kuarsa 16 MHz, koneksi USB, power input, header ICSP dan
tombol reset. Perangkat ini memiliki fitur untuk mendukung mikrokontroler. Cukup
hubungkan ke komputer dengan kabel USB atau nyalakan dengan adaptor AC-to-DC
atau baterai untuk menggunakannya. "Uno" berasal dari bahasa Italia dan dipilih untuk
menandai perilisan Arduino Software (IDE) 1.0. Uno board dan versi 1.0 dari Arduino
Software (IDE) adalah versi referensi Arduino, kemudian berevolusi menjadi versi
yang lebih baru. Papan Uno adalah versi pertama dari rangkaian papan Arduino USB,
dan model referensi untuk platform Arduino. Detail spesifikasi papan Arduino Uno
dapat dilihat pada Tabel-1.

Tabel-1 Spesifikasi papan Arduino Uno R3

Sumber: https://www.arduino.cc/en/Main/ArduinoBoardUno, diakses tanggal 23 April


2017

7
Pengenalan bagian-bagian papan diperlukan oleh pengguna papan Arduino,
sehingga dapat menggunakan platform papan Arduino secara baik dan benar.
Bagian-bagian pada papan Arduino Uno R3 dapat dilihat pada Gambar-4

Sumber: https://www.arduino.cc/en/Main/ArduinoBoardUno, diakses tanggal 23 April


2017.
Gambar-4 Bagian-bagian papan Arduino Uno R3

Pin bernomor 0 sampai 13 dapat digunakan sebagai 14 pin input / output digital (yang
6 dapat digunakan sebagai output PWM). Pin A0 sampai A5 dapat digunakan sebagai
6 input dan output analog. Terdapat 3 buah pin ground serta pin 5v dan pin 3.3v
sebagai sumber tegangan. Terdapat tiga sumber tegangan untuk menghidupkan
perangkat papan Arduino, antara lain dapat menggunakan USB-B port, power jack
2.1mm x 5.5 mm, atau Vin pin. Terdapat sebuah reset button yang dapat digunakan
untuk me-reset program yang telah diunggah pada papan Arduino.

8
3. Pemrograman Papan Arduino Uno R3

Papan Arduino Uno dapat diprogram dengan Arduino Software (Aplikasi IDE Arduino).
ATmega328 di Arduino Uno diprogram ulang dengan bootloader yang memungkinkan
untuk mengunggah kode baru ke dalamnya tanpa menggunakan pemrogram
perangkat keras eksternal (dengan komunikasi menggunakan protokol STK500).
Selain itu, dapat dilakukan pemrograman pada Atmega328 tanpa melewati bootloader
dan memprogram mikrokontroler melalui header ICSP (In-Circuit Serial Programming)
menggunakan Arduino ISP.

Untuk memprogram papan Arduino melalui bootloader, papan Arduino dihubungkan


dengan komputer melalui kabel penghubung USB Type B. Setelah itu dapat dilakukan
proses pemrograman melalui Integrated Development Environment.

4. I/O Digital dan I/O Analog Arduino Uno R3

4.1 Input Analog

Sinyal analog menjelaskan variabel fisik yang bervariasi terus menerus yang
berhubungan dengan variabel lain. Contoh dari sinyal analog yaitu peningkatan
intensitas cahaya LED yang arus yang didalamnya juga meningkat, arus melalui
resistor seperti yang divariasikan tegangannya, atau suhu di kamar yang berjalan
sering dengan berjalannya waktu.

Sinyal analog dapat mengambil nilai-nilai yang tak terbatas. Pembacaan sinyal analog
dilakukan dengan cara sampling dengan cara mengubah sinyal analog tersebut
menjadi sinyal digital melalui pin khusus yaitu pin Analog to Digital Conversion (ADC).

Perangkat Arduino Uno R3 memiliki 6 buah pin analog yang dapat digunakan sebagai
Analog to Digital Conversion (ADC). Pin analog ADC tersebut berfungsi sebagai
mengubah sinyal analog yang masuk menjadi nilai digital sehingga mudah diolah dan
dapat diukur. Pin analog dapat mengenali sinyal pada rentang nilai voltase tersebut
(normal 0 – 5 Vdc) yang dibandingkan dengan nilai tegangan refrensinya. Hal ini
sangat berguna ketika kita hendak mengukur nilai dari suatu sensor yang terpasang
serta menggunakan nilai masukan tersebut untuk keperluan lain. Fungsi yang kita
gunakan untuk membaca nilai analog pada Arduino adalah analogRead([nomorPin]).

9
4.2 Output Analog

Pada output analog Arduino tidak dapat dihasilkan secara langsung, tetapi harus
melewati proses pengubahan output dari digital menjadi analog yang memerlukan
fungsi komponen Digital to Analog Converter. Pada Arduino Uno R3 terdapat 6 buah
pin Pulse Width Modulation (PWM) yang dapat digunakan sebagai fitur Digital to
Analog Converter. Apabila sebuah arduino yang dihubungkan dengan LED dan ingin
mengendalikan intensitas cahayanya, fitur ini dapat digunakan. Analog output pada
Arduino mengirimkan sinyal analog dengan intensitas yang ditentukan sesuai
kebutuhan. PWM memanipulasi keluaran digital sedemikian rupa sehingga
menghasilkan sinyal analog. Arduino mengeset output digital ke HIGH dan LOW
bergantian dengan rentang waktu tertentu untuk setiap nilai keluarannya. Durasi
waktu untuk nilai HIGH disebut pulse width atau panjang pulsa. Variasi nilai output
analog didapatkan dari perubahan panjang pulsa yang diberikan pada satu periode
waktu dan dilakukan berulang-ulang.

4.3 Input Digital

Pin digital dan pin analog pada Arduino Uno R3 dapat digunakan sebagai pin input
digital. Digital berarti sinyal yang akan dikirimkan/diterima berupa nilai 1 atau 0, kondisi
on atau off, kondisi HIGH atau LOW, ataupun ada atau tidak ada sinyal. Berbeda
dengan sinyal analog yang nilainya bersifat kontinyu. Contoh dari input digital yaitu
penggunaan sensor PIR dimana output dari sensor tersebut berupa nilai 1 jika
terdeteksi adanya benda bergerak dan nilai 0 jika tidak terdeteksi adanya benda.

4.4 Output Digital

Pada output digital sebenarnya hampir sama dengan input digital dikarenakan pada
prinsipnya sama, hal yang dikirimkan yaitu nilai 1 atau nilai 0. Yang membedakan
hanya pada penggunaan fungsi pada saat pemogramannya, kapan saat diset sebagai
input maupun output. Sintaks pemrograman untuk deklarasinya yaitu: >> pinMode
([pin yang digunakan], [INPUT or OUTPUT]};

10
5. Dasar Aktuator Digital

// Made in Physics Lab Politeknik STTT Bandung


const int PIN13 = 13;// arduino berada pada port 13

void setup () {
pinMode (PIN13, OUTPUT);
}
void loop () {
digitalWrite (PIN13, HIGH);//pada pin 13 lampu led akan menyala
delay (1000); // waktu nyala adalah 1000ms atau 1 s

digitalWrite (PIN13, LOW);


delay (1000);// lampu led akan padam selama 1 s
}

6. Dasar Sensor Digital

int pushButton = A2;

// the setup routine runs once when you press reset:


void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(9600);
// make the pushbutton's pin an input:
pinMode(pushButton, INPUT);
}

// the loop routine runs over and over again forever:


void loop() {
// read the input pin:
int buttonState = digitalRead(pushButton);

11
// print out the state of the button:
Serial.println("Besar Nilai adalah: ");
Serial.println(buttonState);
delay(1); // delay in between reads for stability
}

7. Dasar Aktuator Analog

int led = 9; // the pin that the LED is attached to


int brightness = 0; // how bright the LED is
int fadeAmount = 5; // how many points to fade the LED by

// the setup routine runs once when you press reset:


void setup() {
// declare pin 9 to be an output:
pinMode(led, OUTPUT);
}

// the loop routine runs over and over again forever:


void loop() {
// set the brightness of pin 9:
analogWrite(led, brightness);
// change the brightness for next time through the loop:
brightness = brightness + fadeAmount;
// reverse the direction of the fading at the ends of the fade:
if (brightness == 0 || brightness == 255) {
fadeAmount = -fadeAmount ;
}
// wait for 30 milliseconds to see the dimming effect
delay(30);
}

12
8. Dasar Sensor Analog

int sensor = A0;


void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(9600);
}

// the loop routine runs over and over again forever:


void loop() {
// read the input on analog pin A0:
int sensorValue = analogRead(sensor);
// Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
float voltage = sensorValue * (5.0 / 1023.0);
// print out the value you read:
Serial.println(voltage);
}

9. Rangkaian Kombinasi

const int buttonPin = 2; // the number of the pushbutton pin


const int ledPin = 13; // the number of the LED pin

// variables will change:


int buttonState = 0; // variable for reading the pushbutton status

void setup() {
// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT);

13
}

void loop(){
// read the state of the pushbutton value:
int buttonState = digitalRead(buttonPin);

// check if the pushbutton is pressed.


// if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
digitalWrite(ledPin, HIGH);
}
else {
// turn LED off:
digitalWrite(ledPin, LOW);
}
}

Gambar-5 Rangkaian Push Button

14
METODA EKSPERIMEN

Alat dan Bahan

1. Papan Arduino Uno R3


2. 1 Buah push button
3. 1 Buah lampu LED
4. 1 Buah Project Board
5. Kabel konektor / kabel jumper
6. Resistor

Cara Kerja

1. Papan Arduino Uno R3 dihubungkan pada sebuah komputer yang telah


terpasang perangkat lunak Arduino Software
2. Listing program (lihat bagian butir 9 Rangkaian Kombinasi) dimasukan pada
program software arduino dan di-upload serta di-compile.
3. Arduino, push button, LED dirangkai pada sebuah project board (rangkaian
dapat dilihat pada Gambar-5)
4. Dicatat hasil kinerja rangkaian yang telah dilakukan
5. Diulangi percobaan tersebut, namun dengan menggunakan dua buah led yang
terpasang secara parallel.
6. Dicatat hasil percobaan tersebut.

TUGAS

1. Jelaskan setiap fungsi dari sintaks pada listing program yang anda gunakan!
2. Gambarkan bagaimana wiring diagram rangkaian yang telah anda kerjakan!
Beserta foto!

15
Lampiran

Strukur Pemrograman Arduino Uno R3

Structure
1. Structure

Struktur dasar dari bahasa pemrograman arduino adalah sederhana yang hanya tediri
dari dua bagian, yaitu :
void setup( )
{
// Statement;
}
void loop( )
}
// Statement;
}
Bagian setup( ) berfungsi untuk inisialisasi yang hanya dijalankan sekali di awal
program, sedangkan bagian loop( ) befungsi untuk mengeksekusi bagian program
yang akan dijalankan berulang-ulang untuk selamanya.

2. Setup( )

Fungsi setup( ) hanya dipanggil satu kali ketika program pertama kali dijalankan. Ini
digunakan untuk pendefinisian mode pin atau memulai komunikasi serial. Fungsi
setup( ) harus disertakan dalam program walaupun tidak ada statement yang
dijalankan. Berikut ini adalah contoh dari bagian setup( ):
void setup( )
{
pinMode(13, OUTPUT); //mengatur ‘pin’ 13 sebagai output
}

3. Loop
Setelah melakukan fungsi setup( ), maka secara langsung akan melakukan fungsi
loop( ) secara beruntunan dan melakukan instruksi-instruksi yang ada dalam fungsi
loop( ).

16
Berikut ini adakah contoh cara melakukan fungsi loop:
void loop( )
{
digitalWrite(13, HIGH); // nyalakan ‘pin’ 13
delay(1000); // pause selama 1 detik
digitalWrite(13, HIGH); // matikan ‘pin’ 13
delay(1000); // pause selama 1 detik
digitalWrite(14, HIGH); // nyalakan ‘pin’ 14
delay(1000); // pause selama 1 detik
digitalWrite(14, HIGH); // matikan ‘pin’ 14
delay(1000); // pause selama 1 detik
}

4. Function
Function (fungsi) adalah blok pemrograman yang mempunyai nama dan mempunyai
statement yang akan dieksekusi ketika function dipanggil. Berikut ini adalah cara
pendeklarasian function:
type functionName(parameters)
{
// Statement;
}
Contoh dari pendeklarasian function adalah sebagai berikut:
Int delayVal( )
{
Int v; // membuat variable ‘v’ bertipe integer
v = analogRead(pot); // baca harga potentiometer
v /= 4; // konversi 0-1023 ke 0-255
return v; // return nilai v
Pada contoh tersebut, fungsi tersebut memiliki nilai balik int (integer), karena jika tidak
menghendaki adanya nilai balik maka type function harus void.

17
5. { } Curly Braces
Curly braces mendefinisikan awal dan akhir dari sebuah blok fungsi. Apabila
programmer lupa memberikan tanda curly braces ketika memprogram, maka ketika
di-compile akan terdapat laporan error.

6. ; Semicolon
Semicolon harus diberikan pada setiap statement program yang kita buat ini
merupakan pembatas setiap statement program yang dibuat.

7. /*:*/ Block comment


Semua statement yang ditulis dalam block comments tidak akan dieksekusi dan tidak
akan di-compile sehingga tidak mempengaruhi besar progam yang dibuat untuk
dimasukan kedalam papan Arduino.

8. // Line comment
Semua statement yang ditulis dalam line comments tidak akan dieksekusi dan tidak
akan di-compile sehingga tidak mempengaruhi besar progam yang dibuat untuk
dimasukan kedalam papan Arduino. Line comment berfungsi untuk memberikan
komentar perbaris.

Variable
1. Variable
Variable adalah sebuah penyimpanan nilai yang dapat digunakan dalam program.
Variable dapat diubah sesuai dengan instruksi yang dibuat. Ketika mendeklarasikan
variable harus disertakan type variable serta nilai awal variable. Berikut ini adalah cara
mendeklarasikan variable:
Type variableName = 0;

18
Berikut ini adalah contoh cara untuk mendeklarasikan variable:
Int inputVariable = 0; // mendefinisikan sebuah variable bernama
inputVariable dengan nilai awal 0.
InputVariable = analogRead(2); // menyimpan nilai yang ada di analog
pin 2 ke inputVariable.

2. Variable scope
Sebuah variable dapat dideklarasikan pada awal program sebelum void setup( ),
secara local di dalam sebuah function, sehingga terkadang di dalam sebuah block
statement terdapat pengulangan. Sebuah variable global hanya satu dan dapat
digunakan pada semua block function dan statement di dalam program. Variable
global dideklarasikan pada awal program sebelum function setup( ). Sebuah variable
local dideklarasikan di setiap block function atau di setiap block statement
pengulangan dan hanya dapat digunakan pada block yang bersangkutan saja. Berikut
ini adalah contoh dari penerapan variable scope:
Void setup( )
{
// no setup needed
}

Void loop( )
{
For (int i=0; i<20;) // ‘i’ hanya dapat digunakan dalam pengulangan saja
{
I++;
}
Float f; // ‘f’ sebagai variable local
}

19
Data byte
1. Byte
Tipe byte dapat menyimpan 8-bit nilai angka bilangan asli tanpa koma. Byte memiliki
range 0 – 255. Berikut ini adalah contoh dari data type byte:
Byte biteVariable = 180; // mendeklarasikan ‘biteVariable’ sebagai type byte.
2. Integer
Integer adalah tipe data yang utama untuk menyimpan nilai bilangan bulat tanpa
koma. Penyimpanan integer sebesar 16-bit dengan range 32.767 sampai 32.768.
Berikut ini adalah contoh dari data type integer:
Int integerVariable = 1600; // mendeklarasikan ‘integerVariable’ sebagai type
integer.

3. Long
Merupakan perluasan untuk type data integer, penyimpanan long integer sebesar 32-
bit dengan range 2.147.483.647 sampai -2.147.483.648. Berikut ini adalah contoh dari
data type long:
long longVariable = 500000; // mendeklarasikan ‘longVariable’ sebagai type
long.

4. Float
Float adalah tipe data yang dapat menampung nilai desimal. Float merupakan
penyimpanan yang lebih besar dari integer dan dapat menyimpan sebesar 32-bit
dengan range 3.4028235E+38 sampai -3.4028235E+38. Berikut ini
adalah contoh dari data type float:
float floatVariable = 3,14; // mendeklarasikan ‘floatVariable’ sebagai type
float.

5. Array
Array adalah kumpulan nilai yang dapat di akses dengan index number, nilai yang
terdapat dalam array dapat dipanggil dengan cara menuliskan nama array dan index
number. Array dengan index 0 merupakan nilai pertama dari array. Array perlu

20
dideklarasikan dan kalau perlu diberi nilai sebelum digunakan. Penggunaan array
dideklarasikan dengan cara sebagai berikut:
Int arraysName[] = {nilai0, nilai1, nilai2 R}
Berikut ini adalah contoh penggunaan array:
Int arraySaya[] = {2,4,6,8,10}
x = arraySaya[5]; // x sekarang sama dengan 10

Operator Arithmetic
1. Arithmetic
Operator aritmatik terdiri dari penjumlahan, pengurangan, pengkalian, dan
pembagian. Berikut ini adalah contoh dari penggunaan arithmetic:
y = y + 3;
x = x - 8;
i = i * 5;
r = r / 9;
Dalam menggunakan operan aritmatik harus hati-hati dalam menentukan tipe data
yang digunakan jangan sampai terjadi overflow range data.

2. Compound Assignment
Compound assignments merupakan kombinasi dari aritmatic dengan sebuah variable.
Compound assignments biasanya dipakai pada pengulangan. Berikut ini adalah
contoh penggunaan compound assignments:
x ++; // sama seperti x = x + 1 atau menaikan nilai x sebesar 1
x --; // sama seperti x = x - 1 atau mengurangi nilai x sebesar 1
x += y; // sama seperti x = x + y
x -= y; // sama seperti x = x – y
x *= y; // sama seperti x = x * y
x /= y; // sama seperti x = x / y

21
3. Comparison
Statement comparison digunakan untuk membadingkan dua variable dan apabila
terpenuhi akan bernilai 1 atau true. Statement ini banyak digunakan dalam operator
bersyarat. Berikut ini adalah contoh penggunaan comparison:
x == y; // x sama dengan y
x != y; // x tidak sama dengan y
x < y; // x leboh kecil dari y
x > y; // x lebih besar dari y
x <= y; // x lebih kecil dari sama dengan y
x >= y; // x lebih besar dari sama dengan y

4. Logic Operator
Operator logical digunakan untuk membandingkan 2 expresi dan mengembalikan
nilai balik benar atau salah tergantung dari operator yang digunakan. Terdapat 3

operator logical AND, OR, dan NOT, yang biasanya digunakan pada if statement.
Berikut ini adalah contoh penggunaan operator logical:
- Logical AND
If (x > 0 && x < 5); // bernilai benar apabila kedua operator pembanding
terpenuhi.

- Logical OR
If (x > 0 || y > 0); // bernilai benar apabila salah satu dari operator pembanding
terpenuhi.
- Logical NOT
If (!x > 0 ); // benilai benar apabila ekspresi operator salah.

22
Constanta
Arduino mempunyai beberapa variable yang sudah di kenal yang kita sebut konstanta.
Ini membuat memprogram lebih mudah untuk di baca. Konstanta di kelasifikasi
berdasarkan group, diantaranya:

1. True/False
Merupakan konstanta Boolean yang mendifinisikan logic level. False mendifinisikan 0
dan True mendifinisikan 1. Berikut ini merupakan contoh dari penggunaan konstanta
Boolean:
If ( b == TRUE );
{
//doSomething
}

2. High/Low
Konstanta ini mendefinisikan aktifitas pin HIGH atau LOW dan digunakan ketika
membaca dan menulis ke digital pin. HIGH di definisikan sebagai 1, sedangkan LOW
sebagai 0. Berikut ini adalah contoh penggunaan konstanta High/Low:
digitalWrite( 13, HIGH );

3. Input/Output
Konstanta ini digunakan dengan fungsi pinMode() untuk mendefinisikan mode pin
digital, sebagai input atau output. Berikut ini adalah contoh penggunaan konstanta
Input/Output:
pinMode( 13, OUTPUT );

Flow Control
1. If
If Operator berfungsi untuk menguji sebuah kondisi seperti nilai analog sudah berada
di bawah nilai yang kita kehendaki atau belum, apabila terpenuhi maka akan
mengeksekusi baris program yang ada dalam brackets kalau tidak terpenuhi maka

23
akan mengabaikan baris program yang ada dalam brackets. Berikut ini adalah contoh
penggunaan flow control if:
If (someVariable ?? value)
{
//DoSomething;
}

2. If:Else
Operator ifRelse mengtest sebuah kondisi apabila tidak sesuai dengan kondisi yang
pertama maka akan mengeksekusi baris program yang ada di else. Berikut ini adalah
contoh penggunaan flow control if dan else:
If ( inputPin == HIGH )
{
//Laksanakan rencana A;
}
Else
{
//Laksanakan rencana B;
}

3. For
Operator for digunakan dalam blok pengulangan tertutup. Berikut ini adalah contoh
penggunaan flow control for:
For ( initialization; condition; expression )
{
//doSomethig;
}

4. While
Operator while akan terus mengulang baris perintah yang ada dalam bracket sampai
ekspresi sebagai kondisi pengulangan benilai salah. Berikut ini adalah contoh
penggunaan flow control while:

24
While ( someVariable ?? value )
{
//doSomething;
}

5. Do:While
Sama halnya dengan while( ) hanya saja pada operator DoRwhile tidak melakukan
pengecekan pada awal tapi di akhir, sehingga otomatis akan melakukan satu kali baris
perintah walaupun pada awalnya sudah terpenuhi. Berikut ini adalah contoh
penggunaan flow control do dan while:
Do
{
//doSomething;
}
While ( someVariable ?? value );

Digital I/O
Input / Output Digital pada breadboard arduino ada 14, pengalamatnya 0 - 13, ada
saat tertentu I/O 0 dan 1 tidak bisa di gunakan karena di pakai untuk komunikasi serial,
sehingga harus hati-hati dalam pengalokasian I/O.

1. Pin Mode
Digunakan dalam void setup() untuk mengkonfigurasi pin apakah sebagai Input atau
Output. Arduino digital pins secara default di konfigurasi sebagai input, sehingga untuk
merubahnya harus menggunakan operator pinMode(pin, mode). Berikut ini adalah
contoh penggunaan pin mode:
pinMode (pin, OUTPUT); // mengset pin sebagai output
digitalWrite(pin, HIGH); // pin sebagai source voltage

25
2. Digital Read
membaca nilai dari pin yang kita kehendaki dengan hasil HIGH atau LOW. Berikut ini
adalah contoh penggunaan digital read:
Value = digitalRead(pin); // mengset ‘value’ sama dengan pin

3. Digital Write
Digunakan untuk mengset pin digital. Arduino mempunyai 14 Pin digital, yaitu pin 0 –
13. Berikut ini adalah contoh penggunaan digital write:
digitalWrite ( pin, HIGH ); // set pin to HIGH

Analog I/O
Input / Ouput analog pada breadboard arduino ada 6, yakni pengalamatnya 0 – 5.

1. Analog Read
Membaca nilai pin analog yang memiliki resolusi 10-bit. Fungsi ini hanya dapat bekerja
pada analog pin (0-5). Hasil dari pembacaan berupa nilai integer dengan range 0
sampai 1023. Berikut ini adalah contoh penggunaan analog read:
Value = analogRead(pin); // mengset ‘value’ sama dengan nilai analog pin

2. Analog Write
Analog write berfungsi untuk mengirimkan nilai analog pada pin analog. Berikut ini
adalah contoh penggunaan analog write:
analogWrite(pin, value); // menulis ke pin analog

Time
1. Delay
Menghentikan program untuk sesaat sesuai dengan yang di kehendaki, satuanya
dalam millisecond. Berikut ini adalah contoh penggunaan delay:
Delay(1000); // menunggu selama satu detik.

26
2. Millis
Mengembalikan nilai dalam millisecond dihitung sejak arduino board menyala.
Penapungnya harus long integer. Berikut ini adalah contoh penggunaan millis:
Value = millis(); // set ‘value’ equal to millis()
Math

1. Min (x, y)

Membadingkan 2 variable dan akan mengembalikan nilai yang paling kecil. Berikut ini
adalah contoh penggunaan min:
value = min(value, 100); // set ‘value’ sebagai nilai yang paling kecil dari kedua
nilai

2. Max (x, y)

Max merupakan kebalikan dari min. Berikut ini adalah contoh penggunaan max:
value = max(value, 100); //set ‘value’ sebagai nilai yang paling besar dari kedua
nilai

Serial

1. Serial.begin (rate)

Statement ini digunakan untuk mengaktifkan komunikasi serial dan mengatur


baudrate. Berikut ini adalah contoh penggunaan serial begin:
void setup()
{
Serial.begin(9600); //open serial port and set baudrate 9600 bps

2. Serial Printing (data)

Statement ini digunakan untuk mengirimkan data ke serial port. Berikut ini adalah
contoh penggunaan serial printing:
Serial.println(100); // mengirimkan 100

27

Anda mungkin juga menyukai