Modul 3 Percobaan 1



 

1. Tujuan [kembali]

1.  Memahami tujuan penggunaan UART
2.  Mengaplikasikan dan menjelaskan penggunaan UART dan LED
3.  Memahami prinsip kerja komunikasi UART

2. Komponen [kembali]

A. Arduino 

 

Arduino adalah pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri. Saat ini Arduino sangat populer di seluruh dunia. Banyak pemula yang belajar mengenal robotika dan elektronika lewat Arduino karena mudah dipelajari. Tapi tidak hanya pemula, para hobbyist atau profesional pun ikut senang mengembangkan aplikasi elektronik menggunakan Arduino. Bahasa yang dipakai dalam Arduino bukan assembler yang relatif sulit, tetapi bahasa C yang disederhanakan dengan bantuan pustaka-pustaka (libraries) Arduino.

Input/output digital atau digital pin adalah pin pin untuk menghubungkan arduino dengan komponen atau rangkaian digital. contohnya , jika ingin membuat LED berkedip, LED tersebut bisa dipasang pada salah satu pin input atau output digital dan ground. komponen lain yang menghasilkan output digital atau menerima input digital bisa disambungkan ke pin pin ini. Input analog atau analog pin adalah pin pin yang berfungsi untuk menerima sinyal dari komponen atau rangkaian analog. contohnya , potensiometer, sensor suhu, sensor cahaya, dll.

B. 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.

C. LED

Dioda cahaya adalah suatu semikonduktor yang memancarkan cahaya monokromatik yang tidak koheren ketika diberi tegangan maju. Gejala ini termasuk bentuk elektroluminesensi. Warna yang dihasilkan bergantung pada bahan semikonduktor yang dipakai, dan bisa juga ultraviolet dekat atau inframerah dekat.

D. Push Button

 

Push Button adalah saklar tekan yang berfungsi sebagai pemutus atau penyambung arus listrik dari sumber arus ke beban listrik. Suatu sistem saklar tekan push button terdiri dari saklar tekan start, stop reset dan saklar tekan untuk emergency. Push button memiliki kontak NC (normally close) dan NO (normally open).

3. Rangkaian Simulasi [kembali]


Pada rangkaian terdapat 2 buah Arduino (Master dan Slave), button, LED, dan ground. Untuk menjalankan
rangkaian maka dibuat program Arduino untuk Master dan Slave. Untuk Master, button yang terhubung pada pin
2 Master dideklarasikan sebagai input_pullup dimana jika pullup maka menerima logika LOW (bernilai 0).
Kemudian baud rate sebesar 9600. Kedua hal tersebut dieksekusi sekali void setup(). Kemudian, fungsi void
loop() yang dieksekusi berulang. Nilai yang didapatkan dari Button akan dibaca, jika bernilai 0, maka Master
mengirm data “1”. Jika selain nilai 0, Master mengirim data “2”. Terakhir delay selama 20 ms.

Untuk Slave, dengan fungsi void setup (), LED yang terhubung ke pin 12 Slave dideklarasikan sebagai output dan
baud rate dibuat sebesar 9600. Kemudian fungsi void loop(), jika data telah diterima dan terbaca oleh Slave. Jika
data “1” diterima, maka LED menyala, sedangkan jika data selain “1” maka LED mati.

Setelah program Arduino untuk Master dan Slave dibuat, lalu dipasang pada Arduino pada rangkaian. Ketika
rangkaian dijalankan, ketika button pullup, maka berlogika HIGH dan data dikirimkan selain “1” dan LED mati.
Sedangkan ketika button pulldown (ditekan), maka berlogika LOW dan data “1” dikirimkan dan LED hidup.

4. Flowchart [kembali]




5. Listing Program [kembali]

 //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 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(34500);           //Set baud rate 34500
}

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
    }

  }
}

6. Video Rangkaian  [kembali]



7. Analisa [kembali]

1. Apa pengaruh baud rate terhadap rangkaian, bandingkan hasilnya jika baud rate diganti menjadi 100 baud/s
Analisa:
baud rate berfungsi untuk mengindikasikan seberapa cepat data dikirim melalui komunikasi serial. Baud rate biasanya diberi satuan bit per second(bps). Jika digunakan baud rate berbeda dengan master dan slave maka komunikasinya tidak berjalan, sehingga untuk menjalankan rangkaian digunakan baud rate yang sama.

2. Bandingkan respon rangkaian jika indikator outputnya adalah LED dengan Buzzer
Analisa:
Untuk membandingkan respon rangkaian dilihat dari output yang digunakan yang dimana jika menggunakan lampu LED maka akan menyala lampunya tetapi jika buzzer maka akan mengeluarkan suara (berbunyi). Ini juga tergantung listing program yang digunakan untuk memasukkan kode LED atau Buzzer. Setelah itu akan menampilkan respon waktu pada arduino Master dan Slave dan menampilkan Parameter.

8. Link Download [kembali]

    HTML klik disini
    Rangkaian Simulasi klik disini
    Video Rangkaian klik disini
    Listing Program Master klik disini
    Listing Program Slave klik disini
    Flowchart klik disini
    Library Arduino klik disini
    Datasheet arduino klik  disini
    Datasheet Potensiometer klik disini
    Datasheet LED klik disini

Tidak ada komentar:

Posting Komentar

BAHAN PRESENTASI UNTUK MATAKULIAH SISTEM DIGITAL 2021 OLEH: Achmad Ridwan 1910951023 Dosen Pengampu: Darwison, M....