Laporan Akhir 1

 

Modul III COMMUNICATION



1. Hardware [Daftar]

        a. Arduino Uno
 

        b. LED

        c. Button



        



2. Gambar Rangkaian [Daftar]




    Rangkaian terdiri atas 2 arduino, button, dan  led. Percobaan ini menggunakan komunikasi UART yang mana antara Arduino master dan slave dihubungkan dengan pin Tx di pin 1 dan Rx di pin 0, yang mana pin Tx mester akan dihubungkan pada pin Rx slave, dan pin Rx master dihubungkan di pin Tx slave. Kemudian button dihubungkan pada pin 2 yang mana fungsinya sebagai input dari master yang menghasilkan logika high dan low. Selanjutnya led dihubungkan pada pin 12 di slave. Prinsip dari percobaan ini yaitu Ketika button dalam keadaan tertutup maka button akan mengirimkan logika low dan led menyala. Kemudian Ketika button terbuka, button berlogika high dan led padam.

Pada program master akan mendeklarasikan button sebagai input. Jika input dari button berlogika low (0) maka master akan mengirimkan data 1 ke slave, sedangkan jika button berlogika high (1), maka master akan mengirimkan data 2 ke slave.

Selanjutnya pada program slave, led dideklarasikan sebagai output. Kemudian data yang dikirimkan dari master, jika data yang dikirimkan berupa 1, yaitu saat button dalam keadaan low, maka led akan dalam keadaan high (menyala). Jika data dari master berupa angka 2, yaitu saat button dalam keadaan high, maka led akan berada dalam keadaan low (mati).

 

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 [Daftar]


6. Analisa [Daftar]

1.       1.  Analisa bagaimana hasil jika memvariasikan baudrate antar master dan slave terhadap output yang dihasilkan?

Jawab:

Baudrate merupakan kecepatan transmisi antara master dan slave, padas komunikasi UART nilai baudrate harus sama. Ketika kita mengatur baudrate antara master dan slave tidak sama, maka komunikasi tidak dapat berjalan, sehingga rangkaian yang di buat tidak akan berjalan sebagai mana mestinya.


2.       2.  Analisa pengaruh jika kabel pada Rx master ke Tx Slave diputus?

Jawab:

Kabel Rx master Tx slave berfungsi sebagai jalan pengiriman data atau informasi dari slave ke master. Pada percobaan sendiri hanya akan mengirimkan data dari master ke slave, bukan dari slave ke maseter, sehingga Ketika memutus kabel antara Rx master ke Tx slave, rangkaian tetap berjalan sesuai program yang diberikan.


3.       3.  Analisa pengaruh jika kabel pada Tx master ke Rx slave diputus?

Jawab:

Kabel Tx master ke Rx slave berfungsi sebagai jalan pengiriman informasi dari master ke slave. Pada percobaan ini master akan mengirimkan data dari pebacaan button ke slave, sehingga Ketika memutus Tx master Rx slave, maka rangkaian tidak akan berjalan sebagai mana program yang diberikan.


4.       4.  Analisa pengaruh penggunaan input pullup pada program?

Jawab:

Inpul pullup ini berfungsi untuk menghilangkan kondisi floating pada rangkaian. Jadi Ketika kita memberikan instruksi input pullup ini pada button, maka button hanya akan berkondisi high atau low, sementara Ketika pada program diatur hanya menggunakan input saja maka Ketika button dalam keadaan terbuka, kondisi output dari button akan dalam keadaan floating. Meskipun pada percobaan tetap dapat bekerja sesuai program, hal ini dikarenakan di program Ketika input dari button selain 0 akan dikirimkan data 2 ke slave, sehingga percobaan akan berjalan semestinya. Akan tetapi jika program disetting Ketika input dari button berlogika 0 (low) dikirim data 1 dan Ketika berlogika 1 (high) dikirim angka 2, maka Ketika dalam keadaan floating program tidak akan berjalan semestinya.    


7. Link Download [Daftar]

Materi HTML 



Tidak ada komentar:

Posting Komentar

Home