Senin, 28 Oktober 2019

Percobaan 3 Modul 3

Laporan Akhir I (Percobaan 1)






1. Hardware [kembali]

2. Rangkaian percobaan [kembali]

    3. Flow Chart[kembali]
        
    4. 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(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 Praktikum[kembali]

    6. Prinsip kerja[kembali]
    pada percobaan ini, komunikasi yang dilakukan adalah UART  rangkaian berupa dua buah arduino yang dihubungkan dengan pin komunikasi 1 dan 2. salah satu arudino menjadi master dan arduino lainnya menjadi slave. coding arduino dimasukkan pada masing masing arduino. Boundrate kedua arduino harus sama. Untuk menandakan bahwa komunikasi berjalankan pada rangkaian ditambahkan LED, agar LED tidak mengalami kerusakan ditambahkan hambatan berupa resistor. 
       
    7. Analisa[kembali]
    ·         Metode Universal Asynchronous Receiver Transmitter (UART)
    Kelebihan: kecepatan transfer data lebih cepat karena data dikirim secara paralel. Hal ini mengakibatkan waktu yang dibutuhkan untuk transfer data semakin singkat.
    Kekurangan: perngiriman dilakukan secara acak. Perangkat harus mempunyai kecepatan penerimaan dan pengiriman data yang sama.
    ·         Serial Peripheral Interface (SPI)
    Kelebihan: mengirimkan data secara urut. Kemungkanan data tertukar dan error semakin kecil.
    Kekurangan: pengiriman data lebih lambat dikarenakan data dikirim satu per satu.
    ·         Inter Integrated Circuit (I2C)
    Kelebihan:kecepatan transfer data dapat diatur
    8. Link Download[kembali] 
    Video download
    Html  Download

    Percobaan 1 Modul 3




    1. Hardware [kembali]

    2. Rangkaian percobaan [kembali]

      3. Flow Chart[kembali]
          
      4. 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(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 Praktikum[kembali]

      6. Prinsip kerja[kembali]
      pada percobaan ini, komunikasi yang dilakukan adalah UART  rangkaian berupa dua buah arduino yang dihubungkan dengan pin komunikasi 1 dan 2. salah satu arudino menjadi master dan arduino lainnya menjadi slave. coding arduino dimasukkan pada masing masing arduino. Boundrate kedua arduino harus sama. Untuk menandakan bahwa komunikasi berjalankan pada rangkaian ditambahkan LED, agar LED tidak mengalami kerusakan ditambahkan hambatan berupa resistor. 
         
      7. Analisa[kembali]
      ·         Metode Universal Asynchronous Receiver Transmitter (UART)
      Kelebihan: kecepatan transfer data lebih cepat karena data dikirim secara paralel. Hal ini mengakibatkan waktu yang dibutuhkan untuk transfer data semakin singkat.
      Kekurangan: perngiriman dilakukan secara acak. Perangkat harus mempunyai kecepatan penerimaan dan pengiriman data yang sama.
      ·         Serial Peripheral Interface (SPI)
      Kelebihan: mengirimkan data secara urut. Kemungkanan data tertukar dan error semakin kecil.
      Kekurangan: pengiriman data lebih lambat dikarenakan data dikirim satu per satu.
      ·         Inter Integrated Circuit (I2C)
      Kelebihan:kecepatan transfer data dapat diatur
      8. Link Download[kembali] 
      Video download
      Html  Download

      Minggu, 27 Oktober 2019

      Incremental dan Absolute Encoder Posisi dan Aplikasinya

      1. Tujuan [KEMBALI}

      •     Mengetahui pengertian rotary encoder, incremental dan absolute encoder
      •     Mengetahui prinsip kerja rotary encoder
      •     Membuat rangkaian encoder posisi menggunakan adc

      2. Alat dan Bahan [KEMBALI}

      • logic state
      • motor
      • IC L298d
      • power
      • ground

      3. Dasar Teori [KEMBALI}

      a. Pengertian encoder
          Rotary encoder adalah divais elektromekanik yang dapat memonitor gerakan dan posisi. Rotary encoder umumnya menggunakan sensor optik untuk menghasilkan serial pulsa yang dapat diartikan menjadi gerakan, posisi, dan arah. Sehingga posisi sudut suatu poros benda berputar dapat diolah menjadi informasi berupa kode digital oleh rotary encoder untuk diteruskan oleh rangkaian kendali. Rotary encoder umumnya digunakan pada pengendalian robot, motor drive, dsb.

                                        
                                              Gambar 1. Blok penyusun rotary encoder


      Terdapat dua jenis optical rotary encoder, yaitu :
      1.        Incremental Encoder
      2.        Absolute Encoder


      Incremental Encoder

      Incremental encoder dapat digunakan untuk mengukur posisi sudut dari sebuah shaft yang berotasi. Incremental encoder menggunakan sebuah piringan dengan beberapa lubang berupa garis. Piringan ini diletakkan diantara sebuah LED dan photosensor (photodiode, phototransistor). Berikut struktur incremental encoder :



      Cahaya dari LED akan melewati piringan melalui lubang-lubang piringan, yang kemudian akan diterima oleh photosensor. Karena adanya lubang ini, maka sinyal yang terdeteksi photodiode akan berupa pulsa. Dari pulsa inilah nantinya dapat diketahui seberapa jauh dan cepat shaft berputar. Untuk menentukan arah putaran shaft, biasanya digunakan dua buah LED dan fotodioda sebagai penghasil pulsanya, sehingga terdapat dua channel dengan posisi LED dan fotodioda seperti gambar :



      Saat channel A mendahului channel B, maka dapat diketahui shaft berputar searah jarum jam, dan sebaliknya jika channel B mendahului channel A, maka shaft berputar berlawanan jarum jam.
      Pada gambar diatas terdapat sinyal Marker, sinyal Marker ini biasa disebut index signal. Sinyal ini berfungsi untuk menentukan posisi nol dengan cara memberikan pulsa tunggal setiap satu revolusi.
      Resolusi dari incremental encoder dapat lebih baik dengan cara menambah jumlah lubang pada piringan. Jumlah lubang ini sama dengan jumlah dari pulsa per satu revolusi. Sebagai contoh, jika sebuah incremental encoder memiliki 1000 lubang, dan telah berputar sebanyak 180 derajat, maka pulsa yang dihasilkan sebanyak 500  pulsa.
      Kelemahan incremental encoder adalah saat supply dimatikan, maka pembacaan posisi shaft akan ter reset.
      Contoh aplikasi incremental encoder : Inkjet Printer

      Absolute Encoder
      Berbeda dengan incremental encoder, absolute encoder dapat mendeteksi posisi absolut dari shaft walaupun supply dimatikan.

      Prinsip kerja absolute encoder sama seperti incremental encoder, hanya saja pada piringannya, absolute encoder menggunakan cincin-cincin yang terkode secara biner atau kode gray. Setiap lapisan cincin harus diberi sebuah LED dan photosensor untuk dapat menghasilkan pulsa. Ini menyebabkan biaya absolute encoder lebih mahal dibandingkan incremental encoder.

      b. Prinsip Kerja 


      menggunakan IC L293D adalah Pin EN1 adalah pin untuk mengenablekan motor 1 (ON / OFF) biasanya Pin EN1 dihubungkan dengan PWM untuk mengontrol kecepatan motor. Sementara untuk EN2 fungsinya sama dengan EN1 bedanya EN2 untuk mengontrol motor DC 2. Jika IN1 diberi logik 1 dan IN2 diberi logik 0, maka motor A akan berputar kebalikan arah jarum jam. Dan sebaliknya jika IN1 diberi logik 0 dan IN2 diberi logik 1, maka motor A akan berputar searah jarum jam. Jika memberi logik 1 atau 0 pada IN1 dan IN2 bersamaan, Motor A akan berhenti (Pengereman Secara Cepat).  Begitu juga dengan motor B. Sementara untuk mengatur kecepatan motor adalah dengan mengatur input dari enable 1 (pin1) dan enable 2 (pin9) menggunakan PWM (Pulse Width Modulation).

      Sementara untuk mengontrol arah putar motor saya tamplikan dalam table seperti berikut:


      c. Datasheet




      • Input dan Output, terdapat 4 input dan 4 output. pada pin input akan mengatur dan mengontrol pin output masing-masing, yaitu Input 1 akan menggontrol Output 1 dan seterusnya. Pin input akan dihubungkan dengan kontroller, seperti mikrokontroller ATmega misalnya, yang berfungsi untuk memberikan sinyal untuk mengontrol IC L293d tersebut. Sinyal yang diberi berupa logika 1 (high) atau 0 (low). Ketika pin input mendapatkan logika 1 (high) maka ouptunya akan aktif dan sebaliknya jika diberi logika 0 (low) maka output akan nonaktif atau mati (kalau logika saya disini nilai 1 akan dihubungkan dengan input daya pada VCC2, sedangkan saat diberi nilai 0 maka terhubung pada GND). Motor akan berputar jika pada kedua output (misal ouput 1 dan ouput 2) memiliki sinyal yan berbeda, jika masing-masing menerima logika 1 dan 0 atau 0 dan 1 maka motor DC dapat bergerak, namun jika memiliki nilai logika yang sama yaitu 0 dan 0 atau 1 dan 1 maka motor DC akan berhenti atau tidak berputar.
      • Pin Enable, terdapat dua pin Enable yang berada pada pin ke 1 dan 9 yang berguna untuk mengkaktifkan fungsi input dan output. Pada Enable 1 akan mengontrol input dan output 1 dan 2, sedangkan pada Enable 2 akan mengontrol Input dan output 3 dan 4. Bagaimana cara kerja pin Enable? apa pengaruhnya dengan input dan output? Jadi, jika saya logikakan pin Enable ini memberi jalan untuk masing-masing input dan output untuk aktif atau tidak, cukup memberi tegangan sebesar 4,5v-5,5v pada pin ini maka output dan input yang dikontrolnya dapat digunakan, maka jika tidak diberikan tegangan pada pin Enable maka input dan outputnya tidak bisa bekerja.
      • VCC 1 dan VCC 2, memiliki peran yang berbeda, dimana VCC 1 akan digunakan untuk memberi power atau tegangan listrik pada IC L293D agar bisa bekerja dan sedangkan VCC 2 berfungsi untuk memberi arus untuk motor DC yang ingin digunakan atau di kontrol. IC tersebut dapat bekerja pada tegangan sekitar 4,4v-5,5v DC agar bekerja maksimal. jadi maksimal suplay daya untuk VCC1 hanya sebesar 4,4v-5,5v DC saja. Untuk VCC 2 kita bisa menyuplay daya sebesar 3v-16v (tegangan tersebut sudah saya coba, untuk lebih dari 16v saya sendiri belum pernah coba)
      • Pin GND (Ground) adalah jalu yang harus dihubungkan ke ground, pin GND ini ada 4 buah yang berdekatan dan dapat dihubungkan ke sebuah pendingin kecil.

      Grafik respon sensor encoder

      4. Rangkaian Simulasi [KEMBALI}

        a. .Rangkaian Encoder menggunakan ADC



      Prinsip kerja :

      Apabila Pin En diberi logika high maka rangkaian akan aktif. untuk mengatur gerakan motor, Jika IN1 diberi logik 1 dan IN2 diberi logik 0, maka motor A akan berputar kebalikan arah jarum jam. Dan sebaliknya jika IN1 diberi logik 0 dan IN2 diberi logik 1, maka motor A akan berputar searah jarum jam. Jika memberi logik 1 atau 0 pada IN1 dan IN2 bersamaan, Motor A akan berhenti (Pengereman Secara Cepat).  Begitu juga dengan motor B. Sementara untuk mengatur kecepatan motor adalah dengan mengatur input dari enable 1 (pin1) dan enable 2 (pin9) menggunakan PWM (Pulse Width Modulation).

      5. Video [KEMBALI}


      6. Link Download [KEMBALI}