Anda di halaman 1dari 13

LAPORAN HARIAN PRAKTIKUM DIGITAL &

MIKROKONTROLER
Disusun untuk memenuhi mata kuliah Praktik Digital & Mikrokontroler

MUHAMMAD IQBAL ZHALIFUNNAS


2220441040
KELAS 1AED

TEKNIK OTOMASI MANUFAKTUR DAN MEKATRONIKA


POLITEKNIK MANUFAKTUR BANDUNG
Jl. Kanayakan no. 21, DAGO 40235, Tromol Pos 851 BANDUNG 40008 INDONESIA
Phone : 62 022 2500241 Fax : 62 022 2502649 Homepage : http ://www.polman-bandung.ac.id

2021
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler

1 PRAKTIKUM 1
OUTPUT DIGITAL

1.1 Praktikum output Digital


1.1.1 Hasil

Setelah sketch program berhasil dicompile dan dijalankan di arduino, maka LED
yang terhubung pada pin digital 11, 12, dan 13 arduino akan menyala dengan mode aktif
high karena anoda pada LED terhubung ke arduino yang sudah diatur pada program
untuk pin 11, 12, dan 13 diset digitalOutput dan katodanya terhubung ke ground.
1.1.2 Analisa
Pada praktikum ini, mahasiswa dituntut untuk memahami penggunaan digital
output arduino. Pin digital ini hanya bisa menghasilkan hasil output dalam dua keadaan
yaitu LOW (0) dan HIGH(1). Program arduino harus bisa menyalakan 3 buah led yang
terhubung pada pin digital output arduino dalam mode aktif high. Setelah praktikum
dilakukan, hasil yang ditunjukkan pada simulasi proteus sesuai dengan yang diinginkan
karena memang program yang dibuat sudah benar dan tiak terdapat error. Selain itu,
sambungan yang dirangkainya pun sudah benar untuk mode aktif high yaitu katoda LED
dicommon pada ground.
1.1.3 Kesimpulan
Mikrokontroler arduino mampu mengatur output dalam bentuk digital yaitu output
yang dihasilkan memiliki dua keadaan yaitu LOW dan HIGH. Pada sketch arduino,
fungsi digital output ini dapat dijalankan dengan perintah [digitalWrite(var/pin,
HIGH/LOW);] pada void loop dengan mengatur pinMode pada void setup dan
mendeklarasikan pin terlebih dahulu.
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler
1.2 Studi Kasus
1.2.1 Hasil

Pada simulasi proteus, ketiga LED yang terhubung pada pin 11, 12, dan 13
arduino dapat menyala pada mode aktif low. Pada simulasi terangkai seperti gambar di
atas. Masing-masing pin terhubung dengan LED yang berbeda warnanya, pin 13
terhubung dengan LED hijau, pin 12 dengan LED biru, dan pin 11 dengan LED merah.
Setiap led yang terhubung ke pin arduino, dirangkai seri dengan resistor 220 ohm agar
LED tidak menerima arus berlebih yang dapat merusak LED. Ketiga LED tersambung
secara common anoda, yaitu anoda dihubungkan dalam satu terminal positif (power)
dan masing-masing katoda dihubungkan ke pin arduino dalam mode aktif low. Sehingga
nyala tidaknya LED dapat diatur pada program dengan keadaan jika perintah yang
diberikan LOW maka LED nyala dan sebaliknya jika HIGH maka LED tidak menyala.
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler
1.2.2 Analisa
Praktikum sebelumnya dilaksanakan untuk dapat memahami cara menghidupkan
LED dengan mode aktif high. LED memiliki dua kaki yaitu anoda dan katoda yang
keduanya harus terhubung pada sumber yang tepat agar LED dapat menyala. Anoda
harus terhubung pada sumber positif (HIGH) dan katoda harus terhubung pada sumber
negatif (LOW), jika tidak maka LED tidak akan menyala.
Pada praktikum ini, LED harus bisa menyala dengan mode aktif low dimana kaki
anoda LED dicommon ke sumber positif dan masing-masing katoda dari ketiga LED
terhubung ke arduino. Nyala tidaknya LED tergantung perintah yang ditulis pada
program arduino melalui fungsi digitalWrite.

//Deklarasi variabel untuk pin


const int led_red = 11;
const int led_blue = 12;
const int led_green = 13;

Sebelum menulis program inti, perlu untuk mendeklarasikan pin mana saja yang
digunakan dan menentukan variabel untuk mewakili pin pada penulisan program
selanjutnya. Hal ini dilakukan untuk memudahkan dalam menulis dan memahami
program yang dibuat. Dalam program terdeklarasi bahwa penamaan tiap-tiap pin
menunjukkan sambungan dengan masing-masing LED yang berbeda warnanya.
void setup()
{
//Set pin
pinMode(led_red, OUTPUT);
pinMode(led_blue, OUTPUT);
pinMode(led_green, OUTPUT);
}

Pada arduino terdapat sub program void setup untuk mengatur fungsional pin
yang digunakan. Pin-pin tersebut dapat diatur sebagai input atau output pada arduino.
Pada program, semua pin yang digunakan diatur sebagai output.
void loop()
{
//mengatur output
digitalWrite(led_red, LOW);
digitalWrite(led_blue, LOW);
digitalWrite(led_green, LOW);
}
Output digital dari pin digital arduino dapat diatur HIGH atau LOW. Pada
program, semua output diatur LOW karena memang menggunakan moe aktif low untuk
menyalakan LED.

1.2.3 Kesimpulan
Dalam penggunaan output digital arduino, programmer dapat menggunakan
fungsi digitalWrite dengan keadaan output yang dihasilkan LOW atau HIGH sesuai cara
kerja sistem yang diinginkan. Output digital LOW dapat digunakan untuk mengontrol
komponen yang membutuhkan sumber tegangan lebih besar dari tegangan yang bisa
dihasilkan arduino yaitu 5 volt.
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler
2 PRAKTIKUM 2
INPUT & OUTPUT DIGITAL

2.1 Percobaan 1
2.1.1 Hasil

Setelah sketch program berhasil dicompile dan dijalankan di arduino, LED biru
dalam keadaan mati. Ketika push button ditekan, LED biru menjadi menyala. Arduino
membaca inputan dari push button untuk memberikan keputusan nilai output pin LED.
Jika push button ditekan maka arduino membaca HIGH dan menghasilkan output HIGH
(LED menyala) pula begitu pula pada saat LOW (push button tidak ditekan) maka output
juga LOW (LED mati).
2.1.2 Analisa
Push button dapat digunakan dalam pengontrolan sebagai input yang dapat
berubah dalam dua keadaan yaitu LOW dan HIGH. Status LOW dan HIGH yang
dihasilkan oleh push button tidak hanya tentang ditekan atau tidaknya push button,
namun juga sumber yang terhubung dengan push button tersebut.
const int led = 13;
const int input = 5;

Perintah di atas adalah pendeklarasian pin yang akan digunakan dimana pin 13
dihubungkan dengan LED dan diberi nama variabel ‘led’ sedangkan pin 5 dihubungkan
dengan push button dan diberi nama variabel ‘input’.
void setup()
{
pinMode(led, OUTPUT);
pinMode(input, INPUT);
}
Pin yang terhubung dengan led diatur sebagai output dan yang terhubung
dengan push button sebagai input.
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler

void loop()
{
int val = digitalRead(input); //baca input pushbutton
if (val == HIGH)
{
digitalWrite(led, HIGH); //LED ON
}
else
{
digitalWrite(led, LOW); //LED OFF
}
}

Pada void loop terdapat pendeklarasian variabel ‘val’ untuk menyimpan data
masukan push button. Jika masukan bernilai HIGH, maka LED yang dirangkai dengan
mode aktif high akan menyala. Namun, jika masukan tidak bernilai HIGH (dalam artian
LOW), maka LED tidak menyala.

2.1.3 Kesimpulan
Push button merupakan komponen dasar masukan digitsl yang banyak
digunakan dalam alat berbasis mikrokontroler. Untuk membaca masukan digital pada
arduino, dapat dilakukan dengan menulis perintah [digitalRead(variabel/pin);].

2.2 Percobaan 2
2.2.1 Hasil

Setelah sketch program berhasil dicompile dan dijalankan di arduino, keempat


LED awalnya dalam keadaan off. Ketika PB pin 5 ditekan, LED pada pin 13 menyala,
lalu PB pin 4 ditekan, LED pada pin 12 menyala, dan begitu seterusnya hingga PB pin 2
dan LED pin 10. Masing-masing push button mengontrol nyala tidaknya LED sesuai
dengan alamat pin yang diatur pada program arduino.
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler
2.2.2 Analisa
Pengontrolan output berdasarkan input pada arduino tidak hanya dapat dilakukan
pada satu input dan satu output saja, melainkan dapat melebihi itu tergantung
banyaknya pin arduino, kombinasi, dan komponen pendukung lainnya yang digunakan.
Pada percobaan kedua ini, terdapat empat buah push button dan LED. Masing-
masing LED dikontrol oleh push button dengan mode aktif high. Dengan menggunakan
array, maka penulisan program untuk percobaan ini dapat dipersingkat agar tidak terlalu
panjang.
unsigned int inputPin[] = {2,3,4,5}; //nama aray
unsigned int ledPin[] = {10,11,12,13};

Perintah diatas untuk mendeklarasikan pin dengan nama “nama variabel +


nomor pin” yang nantinya dapat dipanggil menggunakan perintah tertentu seperti for.
void setup()
{
for(int i = 0; i < 4; i++)
{
pinMode(ledPin[i], OUTPUT);
pinMode(inputPin[i], INPUT);
}
}

Semua pin diatur dengan metode aray, pin-pin yang tersambung dengan push
button diatur sebagai input dan yang tersambung dengan LED diatur sebagai output.
void loop()
{
for(int i = 0; i < 4; i++)
{
int val = digitalRead(inputPin[i]); //baca input pushbutton
if (val == HIGH)
{
digitalWrite(ledPin[i], HIGH); //LED ON
}
else
{
digitalWrite(ledPin[i], LOW); //LED OFF
}
}
}

Cara kerja array adalah menyimpan variabel dengan memiliki indeks tertentu
yang dapat digunakan sebagai alamat. Pada program di atas, semua indeks dari 0
sampai 3 dipanggil satu persatu. Pada pembacaan input dari push button nomor pin
pada indeks 0 maka hasilnya kan berpengaruh pada output LED dengan nomor pin
pada indeks 0.

2.2.3 Kesimpulan
Array dapat digunakan agar program yang ditulis lebih singkat dan nyaman untuk
dibaca. Dalam pengontrolan input output, pengalamatan input dan pengaruhnya pada
output dapat ditulis dengan metode array.
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler
2.3 Studi Kasus No 1
2.3.1 Hasil

- ON
Setelah sketch program berhasil dicompile dan dijalankan di arduino, pada pada
awalnya lampu AC dalam keadaan mati. Ketika pushbutton yang terhubung ke pin 4
arduino ditekan, lampu AC menjadi menyala.

- OFF
Adapun jika push button yang terhubung ke pin 5 arduino ditekan, maka lampu
AC akan mati. Dalam hal ini, sistem mempunyai dua inputan untuk mengontrol nyala-
matinya LED yang masing-masingnya berfungsi untuk menyalakan dan mematikan LED.

Cara kerja rangkaian ini adalah ketika arduino menerima inputan dari push button
yang dirangkai secara aktif low, arduino akan memproses untuk membuat keputusan
berdasarkan dua inputan yang masing-masingnya menghasilkan output yang bereda
yaitu nyala dan matinya LED pada pin 12. Output arduino tidak akan bisa menyalakan
lampu yang bertenaga AC. Maka, digunakanlah sebuah relay untuk mengontrol on-off
saklar yang ter hubung dengan lampu dan sumber AC. Output HIGH dari arduino akan
membias transistor, sehingga transistor menguatkan sinyal dari arduino untuk
menghidupkan relay.
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler

2.3.2 Analisa
Pada studi kasus ini pengontrolan lampu AC bergantung pada inputan push
button yang bersumber DC. Melalui arduino dan relay push button dapat digunakan
untuk mengatur nyala-matinya lampu AC.
const int pb_on = 4;
const int pb_off = 5;
const int lampu = 12;

Pendeklarasian variabel sesuai sambungan pada rangkaian yaitu pin 4 dan pin 5
dihubungkan ke dua push button yang aktif LOW. Adapun pin 12 dihubungkan dengan
rangkaian pendukung untuk menyala-matikan lampu AC.
void setup()
{pinMode(pb_on, INPUT);
pinMode(pb_off, INPUT);
pinMode(lampu, OUTPUT); }

Sesuai dengan fungsi yang diinginkan, pin yang dihubungkan dengan push
button yaitu pin 4 dan 5 diatur sebagai input. Sedangkan pin yang dihubungkan menuju
lampu diatur sebagai output.
void loop()
{int n = digitalRead(pb_on);
int f = digitalRead(pb_off);

if(n == HIGH)
{digitalWrite(lampu, HIGH);}

else if(f == HIGH)


{digitalWrite(lampu, LOW);}}

Pendeklarasian variabel f dan n sebagai alamat penyimpanan data pembacaan


push button. Jika push button pada pin 4 ditekan, maka lampu AC akan menyala,
kemudian jika push button pin 5 ditekan, maka lampu AC akan mati.
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler
2.3.3 Kesimpulan
Arduino yang bersumberkan arus listrik DC sebesar 5 Volt dapat digunakan
untuk mengontrol komponen atau alat-alat listrik AC dengan bantuan komponen
tambahan yaitu relay. Relay memiliki kontak yang dapat digerakkan oleh coil yang
menghasilkan energi elektromagnetik ketika arus listrik DC mengalirinya. Sehingga,
arduino tidak hanya dapat mengontrol output komponen DC saja yang kurang dipakai di
masyarakat karena tenaganya yang kurang kuat, melainkan juga dapat mengontrol
komponen bertenaga AC dengan bantuan relay ini.

2.4 Studi Kasus No 2


2.4.1 Hasil

Setelah sketch program berhasil dicompile dan dijalankan di arduino, pada


awalnya kedua LED dalam keaadaan mati. Ketika saklar A ditekan, tidak akan terjadi
apa-apa namun ketika saklar B ditekan, maka LED 1 akan menyala, ini merupakan
syarat agar LED 1 menyala. Adapun LED 2 akan menyala jika salah satu dari saklar C
dan D atau keduanya ditekan. Namun, belum berhasil dibuat sebuah program yang
menyalakan LED hanya apabila syarat terpenuhi dan mematikan LED jika syarat sudah
tidak terpenuhi lagi. Pada program ini, hanya dapat sekali pembacaan sampai LED
menyala, lalu LED akan menyala bagaimana pun keadaan inputnya.
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler

2.4.2 Analisa
Pada cara kerja rangkaian diketahui syarat-syarat agar kedua LED dapat
menyala yaitu saklar A dan B harus aktif untuk menghidupkan LED 1 dan salah satu
atau keduanya dari saklar C dan D harus aktif untuk menghidupkan LED 2. Dalam hal
ini, LED 1 menggunakan prinsip AND dan LED 2 menggunakan prinsip OR.

2.4.3 Kesimpulan
Operasi gerbang logika dapat menjadi dasar dalam pemrograman. Gerbang
logika AND akan beroutput 1 (True) jika semua input 1 (terpenuhi syaratnya). Adapun
OR akan beroutput 1 (True) jika salah satu ataupun kedua input 1 (terpenuhi syaratnya)
Penggunaan operator gerbang logika dapat menjadi alternatif pemecahan masalah
pemrograman.
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler
2.5 Studi ala.Kasus No 3
2.5.1 Hasil

Penekanan ke-1

Penekanan ke-2
Digital & Mikrokontroler
1
Laporan Harian Praktek Mikrokontroler
2.5.2 Analisa
2.5.3 Kesimpulan
Rangkaian dengan program arduino untuk mengendalikan nyala-mati LED
merupakan ide sistem yang sederhana namun dapat memperingkas kegiatan untuk
mengatur nyala-mati suatu benda elektronik.

Anda mungkin juga menyukai