Laporan Akhir 2 Modul 2




1. Jurnal
[Kembali]
Kondisi :
Jika suhu yang terukur besar sama dengan 30 derajat celcius, maka akan tertampil teks pada LCD "Kondisi Panas". Apabila tidak, akan tertampil teks pada LCD "Kondisi Normal".

2. Alat dan Bahan [Kembali]
2.1 Arduino

Arduino merupakan sebuah perangkat elektronik yang bersifat open source dan sering digunakan untuk merancang dan membuat perangkat elektronik serta software yang mudah untuk digunakan. Arduino ini dirancang sedemikian rupa untuk mempermudah penggunaan perangkat elektronik di berbagai bidang.

Arduino ini memiliki beberapa komponen penting di dalamnya, seperti pin, mikrokontroler, dan konektor yang nanti akan dibahas lebih dalam selanjutnya. Selain itu, Arduino juga sudah menggunakan bahasa pemrograman Arduino Language yang sedikit mirip dengan bahasa pemrograman C++. 

A. Bagian-bagian arduino uno:

1. Power USB
Digunakan untuk menghubungkan PapanArduino dengan komputer lewat koneksi USB
2. Power jack
Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.
3. Crystal Oscillator
Kristal ini digunakan sebagai layaknya detak jantung pada Arduino.  Jumlah cetak    menunjukkan 16000 atau 16000 kHz, atau 16 MHz.
4. Reset
Digunakan untuk mengulang program Arduino dari awal atau Reset.
5. Digital Pins I / O
Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan nilai logika ( 0 atau 1 ). Pin berlabel " ~ " adalah pin-pin PWM ( Pulse Width Modulation ) yang dapat digunakan untuk menghasilkan PWM.
6. Analog Pins
Papan Arduino UNO memiliki 6 pin analog A0 sampai A5. Digunakan untuk membaca sinyal atau sensor analog seperti sensor jarak, suhu dsb, dan mengubahnya menjadi nilai digital.
7. LED Power Indicator
Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik.
Bagian-Bagian Pendukung
1. RAM
RAM (Random Access Memory) adalah tempat penyimpanan sementara pada komputer yang isinya dapat diakses dalam waktu yang tetap, tidak memperdulikan letak data tersebut dalam memori atau acak. Secara umum ada 2 jenis RAM yaitu SRAM (Static Random Acces Memory) dan DRAM (Dynamic Random Acces Memory).
2. ROM

ROM (Read-only Memory) adalah perangkat keras pada computer yang dapat menyimpan data secara permanen tanpa harus memperhatikan adanya sumber listrik. ROM terdiri dari Mask ROM, PROM, EPROM, EEPROM. 

2.2 Breadboard

Breadboard merupakan sebuah board atau papan yang berfungsi untuk merancang sebuah rangkaian elektronik sederhana. Breadboard tersebut nantinya akan dilakukan prototipe atau uji coba tanpa harus melakukan solder.

Umumnya breadboard terbuat dari bahan plastik yang juga sudah terdapat berbagai lubang. Lubang tersebut sudah diatur sebelumnya sehingga membentuk pola yang didasarkan pada pola jaringan di dalamnya. Selain itu, breadboard yang bisa ditemukan di pasaran umumnya dibagi menjadi 3 ukuran. Pertama dinamakan sebagai mini breadboard, kedua disebut medium breadboard, dan yang terakhir dinamakan sebagai large breadboard.
2.3 Jumper


Kabel jumper adalah kabel elektrik yang memiliki pin konektor di setiap ujungnya dan memungkinkanmu untuk menghubungkan dua komponen yang melibatkan Arduino tanpa memerlukan solder. Intinya kegunaan kabel jumper ini adalah sebagai konduktor listrik untuk menyambungkan rangkaian listrik. Biasanya kabel jamper digunakan pada breadboard atau alat prototyping lainnya agar lebih mudah untuk mengutak-atik rangkaian.

Jenis jenis kabel jumper yang paling umum adalah sebagai berikut:
    • Kabel Jumper Male to Male
      Kabel Jumper Male to Male

      Jenis yang pertama adalah kabel jumper male male. Kabel jumper male to male adalah adalah jenis yang sangat yang sangat cocok untuk kamu yang mau membuat rangkaian elektronik di breadboard.

    • Kabel Jumper Male to Female
      Kabel Jumper Male to Female

      Kabel jumper male female memiliki ujung konektor yang berbeda pada tiap ujungnya, yaitu male dan female.

      Biasanya kabel ini digunakan untuk menghubungkan komponen elektronika selain arduino  ke breadboard
    • Kabel Jumper Female to Female

      Kabel Jumper Female to Female
      Jenis kabel jumper yang terakhir adalah kabel female to female. Kabel ini sangat cocok untuk menghubungkan antar komponen yang memiliki  header male
    2.4 Kabel USB Arduino

    Kabel Data Mini USB ini biasa digunakan sebagai kabel untuk transfer data antar dua perangkat dan sebagai kabel untuk pemrograman Arduino yang memiliki soket Mini USB seperti Arduino uno standar.

     
    2.5 LM35

    Sensor suhu IC LM 35 merupkan chip IC produksi Natioanal Semiconductor yang berfungsi untuk mengetahui temperature suatu objek atau ruangan dalam bentuk besaran elektrik, atau dapat juga di definisikan sebagai komponen elektronika yang berfungsi untuk mengubah perubahan temperature yang diterima dalam perubahan besaran elektrik. Sensor suhu IC LM35 dapat mengubah perubahan temperature menjadi perubahan tegangan pada bagian outputnya. Sensor suhu IC LM35 membutuhkan sumber tegangan DC +5 volt dan konsumsi arus DC sebesar 60 µA dalam beroperasi. Bentuk fisik sensor suhu LM 35 merupakan chip IC dengan kemasan yang berfariasi, pada umumnya kemasan sensor suhu LM35 adalah kemasan TO-92 seperti terlihat pada gambar dibawah.  



    Dari gambar diatas dapat diketahui bahwa sensor suhu IC LM35 pada dasarnya memiliki 3 pin yang berfungsi sebagai sumber supply tegangan DC +5 volt, sebagai pin output hasil penginderaan dalam bentuk perubahan tegangan DC pada Vout dan pin untuk Ground.
     
        Karakteristik Sensor suhu IC LM35 adalah : 
    1.  Memiliki sensitivitas suhu, dengan faktor skala linier antara tegangan dan suhu 10 mVolt/ºC, sehingga dapat dikalibrasi langsung dalam celcius.
    2.   Memiliki ketepatan atau akurasi kalibrasi yaitu 0,5ºC pada suhu 25 ºC.
    3.  Memiliki jangkauan maksimal operasi suhu antara -55 ºC sampai +150 ºC. 
    4.  Bekerja pada tegangan 4 sampai 30 volt. 
    5. Memiliki arus rendah yaitu kurang dari 60 µA.
    6. Memiliki pemanasan sendiri yang rendah (low-heating) yaitu kurang dari 0,1 ºC pada udara diam. 
    7.  Memiliki impedansi keluaran yang rendah yaitu 0,1 W untuk beban 1 mA. 
    8. Memiliki ketidaklinieran hanya sekitar ± ¼ ºC. 
    9. Tegangan output sensor suhu IC LM35 dapat diformulasikan sebagai berikut :

     Vout LM35 = Temperature º x 10 mV


    2.6 LCD
    Liquid Crystal Display (LCD) adalah sebuah peralatan elektronik yang berfungsi untukmenampilkan output sebuah sistem dengan cara membentuk suatu citra atau gambaran pada sebuah layar. Secara garis besar komponen penyusun LCD terdiri dari kristal cair (liquid crystal) yang diapit oleh 2 buah elektroda transparan dan 2 buah filter polarisasi (polarizing filter). Struktur LCD dapat dilihat pada gambar berikut.
    Gambar 14. Struktur LCD

    Keterangan:

    1. Film dengan polarizing filter vertical untuk memolarisasi cahaya yang masuk.

    2. Glass substrate yang berisi kolom-kolom elektroda Indium tin oxide (ITO).

    3. Twisted nematic liquid crystal (kristal cair dengan susunan terpilin).

    4. Glass substrate yang berisi baris-baris elektroda Indium tin oxide (ITO).

    5. Film dengan polarizing filter horizontal untuk memolarisasi cahaya yang masuk.

    6. Reflektor cahaya untuk memantulkan cahaya yang masuk LCD kembali ke mata pengamat.

    Sebuah citra dibentuk dengan mengombinasikan kondisi nyala dan mati dari pixel-pixel yang menyusun layar sebuah LCD. Pada umumnya LCD yang dijual di pasaran sudah memiliki integrated circuit tersendiri sehingga para pemakai dapat mengontrol tampilan LCD dengan mudah dengan menggunakan mikrokontroler untuk mengirimkan data melalui pin-pin input yang sudah tersedia.
    Module circuit dari LCD dan kaki-kakinya dapat dilihat melalui gambar berikut.

    Gambar 15. TEXT LCD Module Circuit
     
      
    Gambar 16. Kaki-kaki yang Terdapat pada LCD

    2.7 Arduino IDE

    Arduino IDE adalah software yang digunakan untuk membuat sketch pemrogaman atau dengan kata lain arduino IDE sebagai media untuk pemrogaman pada board yang ingin diprogram. Arduino IDE ini berguna untuk mengedit, membuat, meng-upload ke board yang ditentukan, dan meng-coding program tertentu. Arduino IDE dibuat dari bahasa pemrogaman JAVA, yang dilengkapi dengan library C/C++(wiring), yang membuat operasi input/output lebih mudah.

    2.8 Laptop


    Laptop adalah perangkat keras dimana pada praktikum ini akan digunakan untuk tempat kita akan melisting program dan mengupload serta mencompile dari software arduino ide

    3. Rangkaian Simulasi [Kembali]


    4. Prinsip Kerja Rangkaian [Kembali]
    Pada percobaan 2, kita akan menggunakan alat dan bahan seperti Arduino uno, breadboard, sensor suhu LM35, kabel USB, kabel jumper, LCD 16x2, Laptop, dan Sofware Arduino IDE. 

    Pertama, kita menghubungkan Pin dari sensor suhu LM35, dimana pin VCC dihubungkan ke hole positif (+) pada breadboard, pin GND dihubungkan ke hole negatif (-) pada breadboard, pin OUT dihubungkan ke A0 pada Arduino. Selanjutnya, kita juga akan menghubungkan pin dari LCD, dimana pin VSS, pin RW (Read/Write) , pin K (katoda) dihubungkan ke hole negatif (-) pada breadboard. Selanjutnya kita menghubungkan pin A (Anoda) & pin VDD ke hole positif (+) pada breadboard. Selanjutnya kita menghubungkan pin RS (Register Select) ke pin 2 pada Arduino, pin E (Enable) ke pin 3 pada Arduino, dan terakhir pin D4, D5, D6, dan D7 dihubungkan ke pin 4,5,6,7 secara berurutan. Setelah merangkai LCD & LM35 selanjutnya kita akan menghubungkan hole negatif (-) pada breadboard ke pin GND pada Arduino & hole positif (+) pada breadboard ke pin VCC (5 V) pada Arduino. Setelah semua terpasang kita akan membuat listing program terlebih dahulu menggunakan sofware Arduino IDE yang terinstal di laptop dengan listing programnya & penjelasannya di bawah ini :

    // include the library code:
    #include <LiquidCrystal.h>
    #define LM35 A0
    LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
    int nilaiSuhu;
    
    
    void setup() {
      pinMode(A0,INPUT);
      lcd.begin(16, 2);
      
    }
    
    void loop() {
    nilaiSuhu = ((5 * analogRead(LM35) * 100.00) / 1024);   
      lcd.clear(); 
      lcd.setCursor(0, 0);                      
      lcd.print("LM35 Sensor Suhu"); 
      lcd.setCursor(0, 1);                      
      lcd.print(nilaiSuhu);                                                   
      if(suhu>=30)
      {
      lcd.setCursor(3, 1);
      lcd.print("Kondisi Panas");
      }
      else
      {
      lcd.setCursor(3, 1);
      lcd.print("Kondisi Normal");
      }
      delay(100);
      
    }
    PENJELASAN PROGRAM :
    #include <LiquidCrystal.h> Pada program ini digunakan untuk mendeklarasikan library dari LCD. Selanjutnya, 
    kita akan mendeklarasikan pin A0 yang terhubung ke kaki OUT sensor suhu LM35 dengan cara #define LM35 A0. 
    Setelah itu, kita akan mendeklarasikan pin arduino uno yang akan digunakan ke LCD, dimana pin yang digunakan
    PIN 2-7. Dimana pin 2 terhubung ke kaki RS, pin 3 terhubung ke kaki E(Enable), pin 4 terhubung ke kaki D4, 
    pin 5 terhubung ke kaki D5, pin 6 terhubung ke kaki D6, dan pin 7 terhubung ke kaki D7 dengan cara 
    LiquidCrystal lcd(2, 3, 4, 5, 6, 7);.Setelah itu, kita akan menggunakan tipe data integer untuk variabel nilaiSuhu
    untuk hasil pembacaan nanti. Selanjutnya, kita akan menggunakan fungsi void setup() dimana semua kode didalam fungsi ini
    akan dieksekusi sekali. Didalam fungsi ini, terdapat pinMode(A0,INPUT); untuk mendeklarasikan bahwa pin A0 
    digunakan sebagai INPUT. Selain itu, terdapat juga lcd.begin(16, 2); untuk menunjukkan dimensi LCD yang digunakan
    adalah ukuran 16x2. Selanjutnya, kita juga menggunakan fungsi void loop() dimana semua kode didalam fungsi ini
    akan dieksekusi secara berulang. Didalam fungsi ini, terdapat nilaiSuhu = ((5 * analogRead(LM35) * 100.00) / 1024); untuk
    menentukan nilai suhu yang terukur dimana variabelnya adalah nilaiSuhu, 5 adalah Vmax dari arduino, 
    analogRead(LM35) untuk membaca suhu yang terbaca pada LM35, 100.00 konversi derajat suhu ke V dan 1024 ada rentang byte 
    max kapasitas ADC (1-1024). Selanjutnya, terdapat lcd.clear(); untuk menghapus layar LCD. Kemudian, terdapat
    juga lcd.setCursor(0, 0); untuk menentukan posisi kursor saat awal penulisan, dimana saat baris 1 & kolom 1. Selanjutnya, 
    terdapat lcd.print("LM35 Sensor Suhu"); untuk memerintah teks "LM35 Sensor Suhu" pada LCD. Selanjutnya, 
    terdapat lcd.setCursor(0, 1); untuk menentukan posisi kursor kolom 2 & baris 1saat awal penulisan. Selanjutnya, 
    terdapat lcd.print(nilaiSuhu); untuk memprint hasil nilaiSuhu yang terbaca ke layar LCD. Selanjutnya terdapat percabangan
    if(suhu>=30) kondisi ketika suhu besar sama dengan 30 derajat celcius. Selanjutnya didalamnya terdapat lcd.setCursor(3, 1);
    untuk menentukan posisi kursor kolom ke-4 & baris ke-2. Selain itu terdapat lcd.print("Kondisi Panas"); untuk memprint
    teks "Kondisi Panas" pada layar LCD. Selanjutnya terdapat else untuk suhu selain kondisi if, dimana didalamnya
    terdapat lcd.setCursor(3, 1); untuk menentukan posisi kursor kolom ke-4 & baris ke-2. Selain itu terdapat lcd.print("Kondisi Normal"); 
    untuk memprint teks "Kondisi Dingin" pada layar LCD. Terakhir terdapat delay(100); untuk memberi jeda selama 100ms
    sebelum perulangan selanjutnya. 

    Setelah listing program dibuat maka kita sebelum menguploadnya, kita hubungkan menggunakan kabel USB dari Arduino ke Laptop . Setelah itu kita upload dan dapat terlihat bahwa pada percobaan 2 ketika dilakukan saat praktikum tertampil pada baris pertama "LM35 Sensor Suhu" dan pada baris kedua tertampil suhu 30 derajat celcius dan teks "Kondisi Panas" yang menandakan bahwa suhu saat percobaan 30 derajat celcius dan kondisi panas. 

    5. Video Rangkaian [Kembali]



    6. Analisa [Kembali]

    1. Tuliskan dan jelaskan sintaks program yang digunakan untuk menampilkan suhu beserta kondisinya! Analisalah penggunannya? Contoh : Kita menginginkan pada suhu 28 derajat celcius, yang nantinya muncul adalah kondisi normal. Jadi, tuliskan sintaks dan jelaskan programnya!

    Jawab:

    Disini saya sebagai praktikan menginginkan agar suhu ≥29 derajat celcius maka akan tertampil "kondisi panas", sehingga sintaksnya :
    // include the library code:
    #include <LiquidCrystal.h>
    #define LM35 A0
    LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
    int nilaiSuhu;
    
    
    void setup() {
      pinMode(A0,INPUT);
      lcd.begin(16, 2);
      
    }
    
    void loop() {
    nilaiSuhu = ((5 * analogRead(LM35) * 100.00) / 1024);   
      lcd.clear(); 
      lcd.setCursor(0, 0);                      
      lcd.print("LM35 Sensor Suhu"); 
      lcd.setCursor(0, 1);                      
      lcd.print(nilaiSuhu);                                                   
      if(suhu>=29)
      {
      lcd.setCursor(3, 1);
      lcd.print("Kondisi Panas");
      }
      else
      {
      lcd.setCursor(3, 1);
      lcd.print("Kondisi Normal");
      }
      delay(100);
      
    }
    PENJELASAN PROGRAM :
    #include <LiquidCrystal.h> Pada program ini digunakan untuk mendeklarasikan library dari LCD. Selanjutnya, 
    kita akan mendeklarasikan pin A0 yang terhubung ke kaki OUT sensor suhu LM35 dengan cara #define LM35 A0. 
    Setelah itu, kita akan mendeklarasikan pin arduino uno yang akan digunakan ke LCD, dimana pin yang digunakan
    PIN 2-7. Dimana pin 2 terhubung ke kaki RS, pin 3 terhubung ke kaki E(Enable), pin 4 terhubung ke kaki D4, 
    pin 5 terhubung ke kaki D5, pin 6 terhubung ke kaki D6, dan pin 7 terhubung ke kaki D7 dengan cara 
    LiquidCrystal lcd(2, 3, 4, 5, 6, 7);.Setelah itu, kita akan menggunakan tipe data integer untuk variabel nilaiSuhu
    untuk hasil pembacaan nanti. Selanjutnya, kita akan menggunakan fungsi void setup() dimana semua kode didalam fungsi ini
    akan dieksekusi sekali. Didalam fungsi ini, terdapat pinMode(A0,INPUT); untuk mendeklarasikan bahwa pin A0 
    digunakan sebagai INPUT. Selain itu, terdapat juga lcd.begin(16, 2); untuk menunjukkan dimensi LCD yang digunakan
    adalah ukuran 16x2. Selanjutnya, kita juga menggunakan fungsi void loop() dimana semua kode didalam fungsi ini
    akan dieksekusi secara berulang. Didalam fungsi ini, terdapat nilaiSuhu = ((5 * analogRead(LM35) * 100.00) / 1024); untuk
    menentukan nilai suhu yang terukur dimana variabelnya adalah nilaiSuhu, 5 adalah Vmax dari arduino, 
    analogRead(LM35) untuk membaca suhu yang terbaca pada LM35, 100.00 konversi derajat suhu ke V dan 1024 ada rentang byte 
    max kapasitas ADC (1-1024). Selanjutnya, terdapat lcd.clear(); untuk menghapus layar LCD. Kemudian, terdapat
    juga lcd.setCursor(0, 0); untuk menentukan posisi kursor saat awal penulisan, dimana saat baris 1 & kolom 1. Selanjutnya, 
    terdapat lcd.print("LM35 Sensor Suhu"); untuk memerintah teks "LM35 Sensor Suhu" pada LCD. Selanjutnya, 
    terdapat lcd.setCursor(0, 1); untuk menentukan posisi kursor kolom 2 & baris 1saat awal penulisan. Selanjutnya, 
    terdapat lcd.print(nilaiSuhu); untuk memprint hasil nilaiSuhu yang terbaca ke layar LCD. Selanjutnya terdapat percabangan
    if(suhu>=29) kondisi ketika suhu besar sama dengan 29 derajat celcius. Selanjutnya didalamnya terdapat lcd.setCursor(3, 1);
    untuk menentukan posisi kursor kolom ke-4 & baris ke-2. Selain itu terdapat lcd.print("Kondisi Panas"); untuk memprint
    teks "Kondisi Panas" pada layar LCD. Selanjutnya terdapat else untuk suhu selain kondisi if, dimana didalamnya
    terdapat lcd.setCursor(3, 1); untuk menentukan posisi kursor kolom ke-4 & baris ke-2. Selain itu terdapat lcd.print("Kondisi Normal"); 
    untuk memprint teks "Kondisi Normal" pada layar LCD. Terakhir terdapat delay(100); untuk memberi jeda selama 100ms
    sebelum perulangan selanjutnya. 

    2. Jika pada percobaan ini kita ingin menggunakan Potensiometer, ke pin manakah output 
    potensiometer itu dihubungkan pada LCD? Kenapa harus kita hubungkan ke pin tersebut? 
    Apa fungsi pin tersebut?

    Jawab :

    Jika ingin menggunakan Potensiometer, maka kita akan menghubungkan ke LCD pada kaki
    V0 atau VEE. Kenapa harus dihubungkan ke V0 atau VEE karena pin VEE pada LCD digunakan
    untuk mengatur kontras teks yang ditampilkan. Seperti yang kita ketahui fungsi PWM selain
    mengatur kecepatan motor, juga digunakan untuk mengatur kontras teks yang ditampilkan
    Dimana, ketika semakin besar nilai potensiometernya (Duty Cyclenya makin besar) maka akan
    semakin terang atau cerah teks yang ditampilkan pada LCD. begitupun sebaliknya ketika semakin kecil
    nilai potensiometernya (Duty Cyclenya makin kecil) maka akan semakin redup kontras teks yang ditampilkan pada LCD.

    7. Link Download [Kembali]

    No comments:

    Post a Comment