•  Modul III: LA 1 Percobaan 1



    1.      Kondisi [Kembali]

    Komunikasi UART, menghidupkan arduino pada arduino slave saat button ardino master ditekan 

    2.      Hardware [Kembali]

      a.       Push button

    b.      LED

    c.       Arduino

    3.      Rangkaian[Kembali]

    4.      Prinsip kerja [Kembali]

    Pada komunikasi UART antar 2 arduino ini, digunakan LED yang terhubung dengan push button sebagai outputnya. Dimana push button terhubung dengan pin 2 arduino master. Saat button ditekan maka LED akan menyala. Pin Tx dan Rx masing-masing arduino terhubung. Arduino master akan mengirimkan data berupa angka yang menajdi perintah untuk menghidupkan atau mematikan push button.

    Pada program masternya, digunakan fungsi INPUT_PULLUP untuk pin mode button dan fungsi if yang berarti saat button ditekan akan memberikan nilai 1 dan 2 jika kondisi lainnya.

    Pada program slave, fungsi void loop() akan bekerja dengan variabel data yang dikirimkan oleh arduino master tadi, dimana saat button ditekan maka akan bernilai 1 sehingga LED akan menyala.

    Master:

     //------------------------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: 

    //------------------------SLAVE----------------------------------//

    //SLAVE

    #define LED 12 //Deklarasi pin 12 untuk LED

    void setup()    //Semua kode dalam fungsi ini dieksekusi sekali
    {
      pinMode(LED, OUTPUT); //Deklarasi 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
         {
             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 percobaan[Kembali]

    6.      Analisa [Kembali]

    a.     Analisa mengapa hasil jika memvariasikan baudrate antar master dan slave terhadap input yang diberikan!

    Jawab:

    Pada komunikasi antar 2 arduino, baudrate menentukan kecepatan pengiriman data. Saat memvariasikan nilai baudrate, semakin tinggi nilai baudrate maka kecepatan pengirian data juga akan semakin tinggi. Pada percobaan, digunakan variasi baudrate 9600 dan 115200, saat baudrate diatur dengan nilai 115200, maka LED hidup lebih cept dibandingkan saat baudrate bernilai 9600.

    b.      Analisa pengaruh jika kabel pada Rx master ke Tx slave putus!

    Jawab:

    Pada komunikasi UART percobaan 1 diatur untuk komunikasi dari master ke slave. Jika yang diputus adalah kabel Tx ke Rx dari slave ke master maka tidak akan terjadi perubahan dan komunikasi antar arduino masih berjalan dengan ditandai hidupnya LED.

    c.       Analisa pengaruh jika kabel pada Tx master ke Rx slave diputus!

    Jawab:

    Dikarenakan komunikasi pada percobaan 1 diatur dari master ke slave, make saat kabel Tx ke Rx dari master ke slave diputus, LED tidak akan menyala. Artinya, tdak terjadi komunikasi antara 2 arduino tersebut.

    d.      Analisa pengaruh input pullup pada program!

    Jawab:

    Input pullup biasanya digunakan untuk push button. Input pullup pada program akan membuat nilai tegangan normal mengalir ke output sat push button ditekan. Saat push button tidak ditekan, maka output tidak akan mendapat nilai tegangan karena tegangan mengalir ke ground. Syntax input pullup pada program digunakan untuk mendeteksi tegangan level digital (0V dan 5V) yang masuk ke salah satu pin digital arduino. Tegangan 0V dilogikakan 0 (LOW) dan tegangan 5V dilogikakan 1 (HIGH).

    7.      Link download [Kembali]

    Download HTML [download]

    Download video percobaan [download]

    Download listing program salve [download]

    Download listing program master [download]

    Download datasheet arduino uno [download]

    Download datasheet LED [download]

    Download datasheet push button [download]

    Tidak ada komentar:

    Posting Komentar

    BAHAN PRESENTASI UNTUK MATA KULIAH ELEKTRONIKA 2020/2021     Oleh : Rahma Azira Ichsan 2010953021   Dosen Pengempu: Dr. Da...