LAPORAN AKHIR 1

 






1. Kondisi [Kembali]
LED menyala ketika push button ditekan (komunikasi UART)

2. Alat dan Bahan [Kembali]


1. Arduino Uno

Arduino Uno adalah board mikrokontroler berbasis ATmega328 (datasheet). Memiliki 14 pin input dari output digital  dimana 6 pin input tersebut dapat digunakan sebagai output PWM dan 6 pin input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP header, dan tombol reset. Untuk mendukung mikrokontroler agar dapat digunakan, cukup hanya menghubungkan Board Arduino Uno ke komputer dengan menggunakan kabel USB atau listrik dengan AC yang-ke adaptor-DC atau baterai untuk menjalankannya.

2. Push Button

3. Ground

Ground adalah titik kembalinya arus searah atau titik kembalinya sinyal  bolak balik atau titik patokan dari berbagai titik tegangan dan sinyal listrik dalam rangkaian elektronika. 


      5. Project Board


Project board ini berfungsi sebagai tempat untuk merangkai rangkaian pada percobaan praktikum, yang mana pada board ini masing-masing lobangnya ada yng berhubungan secara vertikal dan horizontal.

6. Jumper
Gambar 1. Jumper


Kabel jumper ini berfungsi untuk menghubungkan antar komponen yang akan dibuat rangkaian percobaan praktikumnya.

       7. Kabel USB


Kabel USB arduino ini berfungsi untuk menghubungkan antara arduino dengan laptop yang akan digunakan sebagai tempat program, nantinya program akan di upload atau di transfer ke arduino menggunakan kabel usb ini.

3. Rangkaian Simulasi [Kembali]






4. Prinsip Kerja Rangkaian [Kembali]


Pada percobaan 1 ini  menggunakan 2 buah arduino dimana pada percobaan ini outputnya adalah LED akan hidup apabila button ditekan dan mati jika dilepas. Pada percobaan ini terdapat 2 program yaitu master dan slave, dimana pada program master bagian header nya di isi dengan deklarasi pin 2 untuk menghubungkan button dengan arduino. Untuk bagian set up,  fungsi pinmode() dan serial.begin() dideklarasikan untuk memberikan suatu nilai logika yang berasal dari button ke arduino dan mengatur kecepatan transferdata sebesar 9600 bps. Pada bagian loop, variabel nilai diklarasikan sebagai fungsi digitalread(button) untuk membaca inputan dari button. fungsi if() memberikan kondisi apabila variabel nilai memiliki nilai 0 maka fungsi serial print("1") akan mentranfer angka 1 dari pin Tx ke slave dan jika kondisi tidak terpenuhi, fungsi serial print("2") akan mentranfer angka 2 dari pin Tx ke slave . fungsi delay memberikan jeda 200 ms sebelum lopping dilakukan.
    Selanjutnya untuk program slave. pada parogram slave ini bagian header nya di isi dengan deklarasi pin 12 untuk menghubungkan  LED dengan arduino. Pada bagian set up, fungsi pinmode() dan serial.begin() dideklarasikan untuk memberikan suatu nilai logika pada LED dan mengatur kecepatan penerimaan data sebesar 9600 bps. Pada bagian loop, fungsi if() pertama memberikan kondisi apabila fungsi serial.avaible() bernilai besar dari 0 maka variabel data sebagai serial.read() yang berfungsi untuk membaca transferdata dari master melalui pin Rx akan dideklarasikan dan  fungsi if() kedua dijalankan. Namun jika kondisi tidak terpenuhi, fungsi digitalwrite(led,LOW) akan dijalankan (LED mati). fungsi if () kedua memberikan kondisi apabila variabel data sama dengan 1 maka fungsi digitalWrite(led,High) akan memberikan logika HIGH pada LED (LED hidup).

berikut program untuk praktikum pada percobaan 1:

MASTER
#define button 2 //Deklarasi pin 2 untuk button
void setup() //Semua kode dalam fungsi ini dieksekusi sekali
{
pinMode(button,INPUT_PULLUP);
Serial.begin(9600); //Set baud rate 9600
}
void loop() //Semua kode dalam fungsi ini dieksekusi berulang
{
int nilai = digitalRead(button);
//ditekan
if(nilai == 0)
{
Serial.print("1");
}
else
{
Serial.print("2");
}
delay(200);
}

SLAVE
#define led 12 //Deklarasi pin 12 untuk LED
void setup() //Semua kode dalam fungsi ini dieksekusi sekali
{
pinMode(led,OUTPUT); //Deklarasi LED sebagai output
Serial.begin(9600); //Set baud rate 9600
}
void loop() //Semua program dalam fungsi ini dieksekusi berulang
{
if(Serial.available()>0)
{
int data = Serial.read();
if(data=='1') //Jika data yang dikirimkan berlogika
{
digitalWrite(led,HIGH); //LED menyala
}
else

{
digitalWrite(led,LOW); //LED mati
}
}
}
     
5. Video Simulasi [Kembali]





6. Analisa [Kembali]

1.       Berdasarkan percobaan yang telah dilakukan dengan memvariasikan nilai baudrate pada slave, master dan serial monitor:

Variasi 1:

Master (9600)

Slave (9600)

Serial monitor (9600)

Variasi 2:

Master (115200)

Slave (115200)

Serial monitor (115200)

Variasi 3:

Master (9600)

Slave (115200)

Serial monitor (9600)

Bagaimana output yang dihasilkan? Apakah led disetiap variasi itu hidup atau bagaimana? Jelaskan output yang dihasilkan dari setiap variasi beserta alas an dan penjelasannya dengan lengkap!

JAWAB:

Pada variasi 1 dan 2 output yang dihasilkan adalah LED dapat hidup atau mati (tergantung pada button jika ditekan akan hidup dan jika tidak akan mati). Hal ini disebabkan oleh kecepatan data pada master dan slavenya sama, dimana pada variasi 1 bernilai 9600 dan pada variasi 2 bernilai 115200 sehingga tidak terjadi gangguan ketika master mengirimkan data ke slave. Pada variasi 1 dan 2 ini serial monitornya akan menampilkan data berupa angka yang dikirimkan master ke slave. Dimana saat LED hidup (push button ditekan) akan menampilkan angka 1 dan jika LED mati (push button dilepas) akan menampilkan angka 2.

Selanjutnya untuk variasi 3, LED akan mati (walaupun button ditekan) karena pada kondisi variasi 3 ini kecepatan data master dan slave itu berbeda dimana master 9600 sedangkan slave 115200, sehingga data yang dikirmkan oleh master tidak dapat diterima oleh slave dan LED tidak akan diberikan output apapun oleh slave sehingga LED mati. Pada variasi 3 ini serial monitor yang memiliki kecepatan dibawah dari master dan slave tidak dapat mengikuti transfer data.

 

2.       Apa yang terjadi jika salah satu pin Tx dari slave maupun pin Rx dari master diputus? Apakah LED tetap meyala?

JAWAB:

Pada kondisi ini, LED tetap menyala  (jika button ditekan), hal ini terjadi karena data masih dikirimkan dari master ke slave dimana data di transfer melalui pin Tx master dan diterima oleh pin Rx dari slave. Akan tetapi slave tidak akan dapat mentransfer data ke master karena saluran pengirimnya telah diputus (Tx slave ke Rx master). 

7. Link Download [Kembali]

[Menuju Awal]

Tidak ada komentar:

Posting Komentar

BAHAN PRESENTASI UNTUK MATA KULIAH      KIMIA DAN ELEKTRONIKA   oleh : Hana Sulthanah 2010951013 Dosen Pengampu: Dr. Darwison, M.T. Referens...