- Merangkai dan menguji aplikasi output pada mikrokontroller Arduino
- Merangkai dan menguji input pada mikrokontroller Arduino
- Merangkai dan menguji I/O pada mikrokontroller Arduino
A.Arduino
Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan pada prkatikum ini adalah arduino mega yang menggunakan chip AVR ATmega 2560 yang memiliki fasilitas PWM, komunikasi serial, ADC, timer, interupt, SPI dan I2C. Sehingga Arduino bisa digabungkan bersama modul atau alat lain dengan protocol yang berbeda-beda. Bahasa pemograman yang digunakan adalah bahasa C. Tetapi bahasa ini sudah dipermudah menggunakan fungsi-fungsi yang sederhana sehingga lebih mudah dalam memprogramnya. Dalam memprogram arduino, kita bisa menggunakan serial komunikasi agar arduino dapat berhubungan dengan komputer ataupun aplikasi lain.
Beberapa fitur dari Arduino Mega 2560 ini adalah :
Microcontroller | ATmega2560 |
Operating Voltage | 5V |
Input Voltage (recommended) | 7-12V |
Input Voltage (limits) | 6-20V |
Digital I/O Pins | 54 (of which 15 provide PWM output) |
Analog Input Pins | 16 |
DC Current per I/O Pin | 20 mA |
DC Current for 3.3V Pin | 50 mA |
Flash Memory | 256 KB of which 8 KB used by bootloader |
SRAM | 8 KB |
EEPROM | 4 KB |
Clock Speed | 16 MHz |
BAGIAN-BAGIAN DARI ARDUINO MEGA 2560
- · Soket USB
Soket USB adalah soket untuk kabel USB yang disambungkan ke komputer atau laptop.
Berfungsi untuk mengirimkan program ke Arduino dan juga sebagai port komunikasi serial.
· Input / Output Digital
Input/Output Digital atau digital pin adalah pin-pin untuk menghubungkan Arduino dengan
komponen atau rangkaian digital. Pada Arduino Mega terdapat 53 I/O Digital dimana 16
diantaranya dapat dijadikan sebagai output PWM
- · Input Analog
Input Analog atau analog pin adalah pin-pin yang berfungsi untuk menerima sinyal dari komponen atau rangkaian analog. Misalnya dari potensiometer, sensor suhu, sensor cahaya, dsb.
Terdapat 16 input analog pada arduino mega 2560.
- · Pin POWER
Pin-pin catu daya adalah pin yang memberikan tegangan untuk komponen atau rangkaian yang dihubungkan dengan Arduino. Pada bagian catu daya ini terdapat juga pin Vin dan Reset.Vin digunakan untuk memberikan tegangan langsung kepada Arduino tanpa melalui tegangan USB atau adaptor.
- · Tombol RESET
Reset adalah pin untuk memberikan sinyal reset melaui tombol atau rangkaian eksternal.
- · Jack Baterai/Adaptor
Soket baterai atau adaptor digunakan untuk menyuplai Arduino dengan tegangan dari baterai/adaptor 9V pada saat Arduino sedang tidak disambungkan ke komputer. Kalau Arduino sedang disambungkan ke komputer melalui USB, Arduino mendapatkan suplai tegangan dari USB, jadi tidak perlu memasang baterai/adaptor saat memprogram Arduino.
A. LED
LED adalah suaatu semikonduktor yang memancarkan cahaya, LED mempunyai kecenderungan polarisasi. LED mempunyai kutub positif dan negatif (p-n) dan hanya akan menyala bila diberikan arus maju. Ini dikarenakan LED terbuat dari bahan semikonduktor yang hanya akan mengizinkan arus listrik mengalir ke satu arah dan tidak ke arah sebaliknya. Bila LED diberikan arus terbalik, hanya akan ada sedikit arus yang melewati LED. Ini menyebabkan LED tidak akan mengeluarkan emisi cahaya.
B. Liquid Crystal Display (LCD)
Liquid Crystal Display (LCD) adalah sebuah peralatan elektronik yang berfungsi untuk
menampilkan 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).
Gambar Penampang komponen penyusun 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.
Kaki-kaki yang terdapat pada LCD
C. Seven Segment
Layar tujuh segmen ini seringkali digunakan pada jam digital, meteran elektronik, dan perangkat elektronik lainnya yang menampilkan informasi numerik. Layar tujuh segmen ini terdiri dari 7 buah LED yang membentuk angka 8 dan 1 LED untuk titik/DP. Angka yang ditampilkan di seven segmen ini dari 0-9. Cara kerja dari seven segmen disesuaikan dengan LED. LED merupakan komponen diode yang dapat memancarkan cahaya. kondisi dalam keadaan ON jika sisi anode mendapatkan sumber positif dari Vcc dan katode mendapatkan sumber negatif dari ground.
Berdasarkan cara kerjanya, tujuh segmen dibagi menja
D. Resistor
Resistor merupakan komponen penting dan sering dijumpai dalam sirkuit Elektronik. Boleh dikatakan hampir setiap sirkuit Elektronik pasti ada Resistor. Tetapi banyak diantara kita yang bekerja di perusahaan perakitan Elektronik maupun yang menggunakan peralatan Elektronik tersebut tidak mengetahui cara membaca kode warna ataupun kode angka yang ada ditubuh Resistor itu sendiri.
Seperti yang dikatakan sebelumnya, nilai Resistor yang berbentuk Axial adalah diwakili oleh Warna-warna yang terdapat di tubuh (body) Resistor itu sendiri dalam bentuk Gelang. Umumnya terdapat 4 Gelang di tubuh Resistor, tetapi ada juga yang 5 Gelang.
Gelang warna Emas dan Perak biasanya terletak agak jauh dari gelang warna lainnya sebagai tanda gelang terakhir. Gelang Terakhirnya ini juga merupakan nilai toleransi pada nilai Resistor yang bersangkutan.
Tabel dibawah ini adalah warna-warna yang terdapat di Tubuh Resistor :
Cara menghitung nilai resistor 4 gelang
Masukkan angka langsung dari kode warna Gelang ke-1 (pertama)
Masukkan angka langsung dari kode warna Gelang ke-2
Masukkan Jumlah nol dari kode warna Gelang ke-3 atau pangkatkan angka tersebut dengan 10 (10n)
Merupakan Toleransi dari nilai Resistor tersebut
Contoh :
Gelang ke 1 : Coklat = 1
Gelang ke 2 : Hitam = 0
Gelang ke 3 : Hijau = 5 nol dibelakang angka gelang ke-2; atau kalikan 105
Gelang ke 4 : Perak = Toleransi 10%
Maka nilai Resistor tersebut adalah 10 * 105 = 1.000.000 Ohm atau 1 MOhm dengan toleransi 10%.
Perhitungan untuk Resistor dengan 5 Gelang warna :
Cara Menghitung Nilai Resistor 5 Gelang Warna
Masukkan angka langsung dari kode warna Gelang ke-1 (pertama)
Masukkan angka langsung dari kode warna Gelang ke-2
Masukkan angka langsung dari kode warna Gelang ke-3
Masukkan Jumlah nol dari kode warna Gelang ke-4 atau pangkatkan angka tersebut dengan 10 (10n)
Merupakan Toleransi dari nilai Resistor tersebut
Contoh :
Gelang ke 1 : Coklat = 1
Gelang ke 2 : Hitam = 0
Gelang ke 3 : Hijau = 5
Gelang ke 4 : Hijau = 5 nol dibelakang angka gelang ke-2; atau kalikan 105
Gelang ke 5 : Perak = Toleransi 10%
Maka nilai Resistor tersebut adalah 105 * 105 = 10.500.000 Ohm atau 10,5 MOhm dengan toleransi 10%.
Contoh-contoh perhitungan lainnya :
Merah, Merah, Merah, Emas → 22 * 10² = 2.200 Ohm atau 2,2 Kilo Ohm dengan 5% toleransi
Kuning, Ungu, Orange, Perak → 47 * 10³ = 47.000 Ohm atau 47 Kilo Ohm dengan 10% toleransi
Cara menghitung Toleransi :
2.200 Ohm dengan Toleransi 5% =
2200 – 5% = 2.090
2200 + 5% = 2.310
ini artinya nilai Resistor tersebut akan berkisar antara 2.090 Ohm ~ 2.310 Ohm
E. Logic Probe
Probe logika adalah probe uji genggam berbiaya rendah yang digunakan untuk menganalisis dan memecahkan masalah status logis dari rangkaian digital. Ketika banyak sinyal perlu diamati atau direkam secara bersamaan, penganalisis logika digunakan sebagai gantinya.
F. Power Supply
Dalam bahasa Indonesia, Power Supply berarti Sumber Daya. Fungsi dari power supply adalah memberikan daya arus listrik ke berbagai komponen.
Sumber energi listrik yang berasal dari luar masih berbentuk alternating current (AC). Ketika energi listrik masuk ke power supply, maka energi listrik akan dikonversi menjadi bentuk direct current (DC). Daya DC inilah yang kemudian disalurkan ke semua komponen yang ada di dalam chasing komputer agar dapat bekerja.
G. MultimeterMultimeter adalah suatu alat ukur listrik yang digunakan untuk mengukur tiga jenis besaran listrik yaitu arus listrik, tegangan listrik, dan hambatan listrik. Sebutan lain untuk multimeter adalah AVO-meter yang merupakan singkatan dari satuan Ampere, Volt, dan Ohm
1. Siapkan alat dan bahan
2. Rangkailah rangkaian sesuai percobaan
3. Buat listing program sesuai kondisi yang diambil
4. Verifikasi listing program
5. Transfer listing program ke arduino
6. Simulasikan
7. Lihat Hasil keluaran/output
8. Catat hasil/data.
9. Selesai
#include <LiquidCrystal.h> //Deklarasi library LCD
#include <Keypad.h> //Deklarasi library keypad
const byte ROWS = 4; //Deklarasi jumlah baris
const byte COLS = 3; //Deklarasi jumlah kolom
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'}, //Inisialisasi keypad matriks 4x3
{'7','8','9'},
{'*','0','#'}
};
byte rowPins[ROWS] = {10, 9, 8, 7}; //Deklarasi pin yang digunakan untuk baris
byte colPins[COLS] = {13, 12, 11}; //Deklarasi pin yang digunakan untuk kolom
// Inisialisasi library dengan pin yang digunakan
LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup() { //Semua kode dalam fungsi ini akan dieksekusi sekali
// Set baris dan kolom LCD
lcd.begin(20, 4);
lcd.setCursor(1,2);
lcd.setCursor(4,3);
lcd.setCursor(0,0);
}
void loop() { //Semua kode dalam fungsi ini akan dieksekusi berulang
char key = keypad.getKey(); //Membaca keypad
if (key == '1') //Kondisi pilihan jika keypad ditekan
{
//lcd.print(key == 1);//Menampilkan input dari keypad pada LCD
lcd.clear ();
lcd.setCursor (0,0);
lcd.print ("praktikum");
delay (5000);
}
if (key != '1')
{
lcd.clear();
lcd.setCursor (0,0);
delay (100);
}
}
Rangkaian ini terdiri dari 3 komponen utama, yaitu arduino uno, keypad, dan lcd. Arduino uno berfungsi sebagai mikrokontroler yang sangat versatile, dapat diprogram sesuai dengan kebutuhan. Seperti saat percobaan ini, kita menggunakan arduino uno untuk membuat rangkaian keypad yang dapat menampilkan huruf atau angka tertentu dengan menekan keypad yang akan memgerluarkan display yang telah diprogram sebelumnya.
Pada kodisi ini kita akan meprogram bagaimana dengan menekan keypad '1' akan menghasilkan input 'praktikum'.
Terdapat rangkaian arduino yang pada pin 7 terhubung dengan kaki D keypad, pin 8 terhubung dengan kaki C keypad, pin 9 terhubung dengan kaki B keypad, dan pin 10 terhubung dengan kaki A keypad. Selanjutnya pada pin A5 terhubung dengan kaki D7 LCD, pin A4 terhubung dengan kaki D6 LCD, pin A3 terhubung dengan kaki D5, pin A2 terhubung dengan kaki D4 LCD, pin A1 terhubung dengan kaki E LCD, pin A0 terhubung dengan kaki RS, dan kaki RW LCD dihubungkan dengan ground. Prinsip kerja pada rangkaian ini adalah pada program yang dimasukkan ke arduino tersebut. Untuk listring programnya telah terdapat diatas. Program tersebut akan membuat arduino menampilkan tulisan praktikum pada LCD ketika angka 1 pada keypad ditekan.
Ketika ditekan angka 1 pada keypad, muncul tulisan "Praktikum"
1. Kenapa menggunakan pin D4 hingha D7 untuk disambungkan ke Arduino uno?
jawab :
Karena setiap karakter memiliki ASCII Code dengan besar 8 bit. Dengan menggunakan pin data dari D4 sampai D7, kita menggunakan 4 pin berarti data yang diinput adalah sebesar 4 bit dan dilakukan dengan 2 tahap setelah dua kali clock. Data dikirim berupa nibble. Hanya menggukan 4 bit karena data yang dikirimkan memiliki bit rate yang kecil;.
2. Jelaskan apa saja yang berubah dari listing program saat keypad yang digunakan di ubah ke keypad 4X4.
jawab :
Dengan bertambahnya satu kolom, maka keypad dapat memuat 4 karakter baru selain dari pada keypa 4x3. pada bagian const byte COLS = 3; diganti menjadi const byte COLS = 4; hal ini menunjuukan pada keypad 4x4 terdapat 4 kolom. Selain itu bagian array juga disesuaikan dengan bentuk array keypad 4x4. Pada bagian byte colPins[COLS] = {13, 12, 11}; juga ditambah satu pin lagi yang terhubung dengan arduino, menjadi 4 pin.