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.
b. Buzzer
Buzzer
adalah sebuah komponen elektronika yang dapat mengubah sinyal listrik menjadi
getaran suara. Buzzer
dapat bekerja dengan baik dalam menghasilkan frekuensi kisaran 1-5 KHz hingga
100 KHz untuk aplikasi ultrasound. Tegangan operasional buzzer yang umumnya
berkisar 3-12 V. Cara
Kerja Buzzer yaitu egangan
listrik
yang mengalir ke buzzer akan menyebabkan gerakan mekanis, gerakan tersebut akan
diubah menjadi suara atau bunyi yang dapat didengar oleh manusia.
c. Push Button
Push
Button adalah saklar yang berupa tombol dan berfungsi sebagai pemutus atau
penyambung arus listrik dari sumber arus ke beban listrik. Push button memiliki
kontak NC (normally close) dan NO (normally open). Prinsip kerja push button adalah pemutus dan
penyambung aliran listrik. Namun dalam hal ini, ia tak bersifat mengunci. Jadi
ia akan kembali ke posisi semua saat selesai ditekan. Saat push button ditekan,
ia menjadi bernilai HIGH dan akan menghantarkan arus listrik. Sedangkan apabila
dilepas, maka ia bernilai LOW dan memutus arus listrik.
Pada percobaan modul 3, terdapat beberapa komponen yang digunakan, yaitu 2 buah arduino uno, satu buah button, dan satu buah buzzer. Arduino uno pertama berfungsi sebagai master dan arduino kedua sebagai slave. Pin transmitter pada master dihubungkan ke receiver slave sedangkan pin transmitter slave dihubungkan ke receiver master. Pin 2 digital master dihubungkan ke button dan pin 12 slave dihubungkan ke buzzer, tapi terlebih dahulu operating voltage diturunkan menjadi 2V, lalu kemudian di hubungkan ke ground. Push button berfungsi sebagai input pullup dari master, artinya apabila push button ditekan maka akan berlogika low (0) dan apabila diangkat maka akan berlogika high (1) Arduino Master akan menerima input dari push button. Kemudian Arduino Master akan mentransfer data ke Arduino Slave. Pada Arduino Slave, akan di periksa apakah ada perintah dari Arduino Master. Jika ada, maka buzzer akan hidup atau menyala, begitu juga sebaliknya.
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);
//Button
ditekan
if (nilai
== 0)
{
Serial.print("1");
}
else
{
Serial.print("2");
}
delay(200);
}
Slave:
#define buzzer 12
//Deklarasi
pin 12 untuk Buzzer
void
setup()
//Semua kode
dalam fungsi ini dieksekusi sekali
{
pinMode(buzzer, OUTPUT);
//Deklarasi Buzzer 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(buzzer, HIGH); //Buzzer
menyala
}
else
{
digitalWrite(buzzer, LOW); //Buzzer
mati
}
}
}
6. Kondisi [kembali]
Percobaan 1 Kondisi 10: Ganti LED menjadi buzzer
Analisa
1. Jelaskan pengaruh dari nilai boud rate pada listing program, apa yang terjadi jika nilai boud rate antara master dan slave berbeda?
Boud
rate merupakan rating kecepatan transfer data dengan satuan bit per detik atau
bir per seconds (bps).
Pada listing program percobaan 1 ini, nilai baud ratenya adalah 9600, itu
artinya kemampuan pengiriman data adalah 9600 bit dalam satu detik. Pengaruh boud
rate pada listing program adalah untuk menentukan kecepatan transfer data
melalui komunkasi serial dengan satuan bit per detik. Semakin besar nilai suatu
boud rate maka kecepatan transfer data juga semakin cepat sehingga semakin banyak
data yang dikirimkan dalam 1 detik.
Jika
nilai boud rate pada master dan slave berbeda, maka pengiriman data dari
arduino master ke slave tidak dapat dilakukan, sehingga tidak ada suara yang
dikeluarkan oleh buzzer. Hal ini terjadi karena fungsi dari boud rate itu
sediri adalah menentukan kecepatan pengiriman data. Jadi agar data itu terkirim
maka harus ada sinkronisasi antara kedua arduino, yaitu memastikan kedua
perangkat berkomunikasi dengan konfigurasi yang sama yang diatur oleh kecepatan
boud rate. Nilai boud rate yang di atur harus sama antara
pengirim dan penerima.
2. Jelaskan rangkaian UART yang digunakan untuk percobaan 1 menggunakan jenis komunikasi simplex, half duplex atau full duplex?
Rangkaian
UART yang digunakan pada percobaan 1 menggunakan jenis komunikasi simplex. Komunikasi simplex merupakan
komunikasi yang tidak terjadi pengiriman data dari slave ke master atau tidak
ada feedback. Pada komunikasi ini sinyal-sinyal dikirim hanya satu arah saja
dalam waktu yang bersamaan. Karena melalui satu arah saja, komunikasi ini tidak
terjadi secara interaktif, informasi hanya disampaikan melalui satu titik saja.
Pada rangkaian terlihat hanya terjadi pengiriman data dari master ke slave
tanpa adanya pengiriman kembali dari slave ke master. Jadi komunikasi pada
rangkaian ini tidak interaktif karena informasi hanya dari satu arah saja. Hal ini dapat dilihat pada program
adruino yang digunakan, dimana pada saat master menerima input dari push button,
maka data tersebut akan dikirimkan ke slave, lalu slave mengolah data tersebut
dimana jika data yang diterima adalah 1 maka slave akan menghidupkan buzzer, dan jika data yang diterima bukan 1
maka buzzer akan tetap mati. Lalu pada saat jalur master Rx dan slave Tx diputuskan,
rangkaian pada percobaan tetap berjalan, hal ini menandakan bahwa master tidak
menerima data dari slave.
File Rangkaian
Video Simulasi Rangkaian
Listing Program Master
Listing Program Slave
Flowchart
Library Arduino UNO
Datasheet Arduino UNO
HTML
Tidak ada komentar:
Posting Komentar