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.
- Kabel Jumper Male to Male
- Kabel Jumper Male to Female
Biasanya kabel ini digunakan untuk menghubungkan komponen elektronika selain arduino ke breadboard
- Kabel Jumper Female to Female
- Memiliki sensitivitas suhu, dengan faktor skala linier antara tegangan dan suhu 10 mVolt/ºC, sehingga dapat dikalibrasi langsung dalam celcius.
- Memiliki ketepatan atau akurasi kalibrasi yaitu 0,5ºC pada suhu 25 ºC.
- Memiliki jangkauan maksimal operasi suhu antara -55 ºC sampai +150 ºC.
- Bekerja pada tegangan 4 sampai 30 volt.
- Memiliki arus rendah yaitu kurang dari 60 µA.
- Memiliki pemanasan sendiri yang rendah (low-heating) yaitu kurang dari 0,1 ºC pada udara diam.
- Memiliki impedansi keluaran yang rendah yaitu 0,1 W untuk beban 1 mA.
- Memiliki ketidaklinieran hanya sekitar ± ¼ ºC.
- Tegangan output sensor suhu IC LM35 dapat diformulasikan sebagai berikut :
Vout LM35 = Temperature º x 10 mV
2.6 LCDLiquid 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 16. Kaki-kaki yang Terdapat pada 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.// 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 bytemax kapasitas ADC (1-1024). Selanjutnya, terdapat lcd.clear(); untuk menghapus layar LCD. Kemudian, terdapatjuga 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 percabanganif(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 memprintteks "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 100mssebelum perulangan selanjutnya.
// 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 bytemax kapasitas ADC (1-1024). Selanjutnya, terdapat lcd.clear(); untuk menghapus layar LCD. Kemudian, terdapatjuga 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 percabanganif(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 memprintteks "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 100mssebelum 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.
- Download File HTML klik disini
- Download Listing Program Arduino klik disini
- Download Video Simulasi klik disini
- Download Datasheet BreadBoard klik disini
- Download Datasheet Arduino Uno klik disini
- Download Datasheet LM35 klik disini
- Download Datasheet LCD klik disini
- Download Library Arduino UNO klik disini
No comments:
Post a Comment