Tugas Pendahuluan M3 1(Percobaan 1 Kondisi 1)





1. Kondisi
[Kembali]
Kondisi yang kelompok kami dapatkan pada percobaan kali ini adalah kondisi 1 yakni:
"Buatlah kondisi awal LED mati, lalu hidup berkedip dengan delay 500m"

2. Gambar rangkaian simulasi [Kembali]
Gambar rangkaian simulasi adalah sebagai berikut

Gambar rangkaian simulasi saat pada keadaan "OFF"

Gambar 1. Rangkaian ketika OFF

Gambar rangkaian simulasi pada saat keadaan "ON"

Gambar 2. Rangkaian ketika ON

3. Video simulasi [Kembali]
Video penjelasan rangkaian simulasi dapat dilihat dibawah ini:



4. Prinsip kerja Rangkaian [Kembali]
a). Prinsip kerja rangkaian 
Tujuan dari dilakukannya percobaan ini adalah untuk menggunakan protokol komunikasi UART untuk berkomuniasi antar sesama arduino, Rangkaian diatas merupakan implementasi sederhana dari pengujian pengiriman data menggunakan protokol komunikasi ini. Pertama tentukan terlebih dahulu device manakah yang akan dijadikan master atau slave, kemudian hubungkan kabel - kabel yang sudah ditentukan. Untuk komunikasi UART sendiri menggunkaan dua buah kabel, yakni:
TX (Transceiver) --> Pada arduino terletak pada pin D1
RX(Receiver)      --> Pada arduino terletak pada pin D0

Pin TX dihubungkan dengan pin RX dan begitu juga sebaliknya, pada rangkaian diatas terdapat sebuah push button yang akan dijadikan input trigger untuk device masternya yang akan dihubungkan ke pin digital D2. Sementara pada bagian slavenya terdapat sebuah LED yang dihubungkan ke pin digital D12

b). Alur kodingan

CODINGAN MASTER
/*
 * Nama       : Muhammad Rizieq RIzaldi
 * NIM        : 2010952031
 * KLP        : 3
 * Percobaan  : 1 Kondisi 1 : Buatlah kondisi awal LED mati, lalu hidup berkedip
 *              dengan delay 500ms
*/

//MASTER
const int button = 2;

void setup() {
  // put your setup code here, to run once:
  pinMode(button, INPUT_PULLUP);
  Serial.begin(9600);

}

void loop() {
  // put your main code here, to run repeatedly:
  int nilai = digitalRead(button);

  //apabila ditekan
  if (nilai ==0)
  {
    Serial.print("1");
  }

  else
  {
    Serial.print("2");
  }
}

CODINGAN SLAVE
//SLAVE

const int led = 12;


void setup() {
  // put your setup code here, to run once:
  pinMode(led, OUTPUT);
  Serial.begin(9600);
  
}

void loop() 
{
  // put your main code here, to run repeatedly:

  if(Serial.available()> 0)
  {
    int data = Serial.read();
    if (data=='1')// jika data yang dikirimkan berlogika 1
    {
      digitalWrite(led, HIGH);
      delay(500);
      digitalWrite(led, LOW);
      delay(500);
    }

    else
    {
      digitalWrite(led, LOW);
    }

  }

}

Penjelasan codingan master
Sebelum masuk kedalam void setup terlebih dahulu dilakukan deklarasi pin yang akan digunakan di device master, pada rangkaian ini akan digunakan sebuah push button yang dihubungkan langsung ke pin digital 2. 

Kemudian masuk kedalam void setup(). Pada fungsi ini diiniasiasikan setiap pin yang akan digunakan pada arduino, yang pertama adalah menginisiasikan pin untuk push button dengan mode INPUT_PULLUP. Mode ini hampir mirip dengan mode INPUT, yang membedakannya hanyalah terletak pada metode konfigurasinya, dikarenakan push button akan berada pada kondisi floating, maka digunakan sebuah pull up resistor untuk menjadikan kondisi default dari pin button tersebut menjadi HIGH. Kemudian menginiasikan serial monitor dengan menggunakan fungsi Serial.begin dengan baud rate sebesar 9600.

Lalu masuk ke bagian inti dari program (atau void loop). Pada bagian ini cukup sederhana. Yang pertama adalah menjadikan hasil pembacaan dari push button sebagai variabel (contoh disini adalah nilai). Kemudian berdasarkan nilai pembacaan tersebut terdapat dua buah kondisi, apabila nilai pembacaan 0 (push button ditekan), maka kirim data serial dengan nilai 1, apabila nilai selain 0, maka kirim data serial dengan nilai 2.

Penjelasan codingan slave
Sebelum masuk kedalam void setup terlebih dahulu dilakukan deklarasi pin yang akan digunakan di device slave, pada rangkaian ini akan digunakan sebuah output LED yang akan terhubung lansung ke pin digital D12.

Kemudian masuk kedalam void setup untuk menginisiasikan pin - pin yang akan digunakan, yang pertama adalah pin LED yang diset dengan mode output, lalu untuk menggunakan mode serial, diiniasiasikan serial monitor dengan baud rate sebesar 9600.

Lalu masuk ke dalam bagian void loop. yang pertama adalah perintah if Serial.available > 0. Ini menyatakan bahwa apabila terdapat data serial yang besar dari > 0. Lalu dibaca data yang dikirim melalui variabel data, kemudian dibuat suatu kondisi, yakni: Apabila data yang dibaca bernilai 1, maka kedipkan LED dengan delay sebesar 500ms. Jika tidak maka biarkan LED tetap mati.

5. Link download [Kembali]

Tidak ada komentar:

Posting Komentar

Mata kuliah Elektronika Kelas A  Semester Genap Th.2021   DISUSUN OLEH :   MUHAMMAD RIZIEQ RIZALDI   2010952031     DO...