Modul I
General Input dan Output
1. Pendahuluan
[Kembali]
2. Tujuan
[Kembali]
[Kembali]
- Asistensi dilakukan 3x dengan lama pertemuan 20 menit (Rabu, Kamis, Jumat)
- Praktikum dilakukan 1x dengan lama pertemuan 90 menit (Selasa)
- Laporan akhir dikumpulkan pada hari Kamis
- Merangkai dan menguji aplikasi output pada mikrokontroller Arduino
- Merangkai dan menguji input pada mikrokontroller Arduino
- Merangkai dan menguji I/O pada mikrokontroller Arduino
2. Alat dan Bahan
A. Arduino
[Kembali]
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.
B. LED
[Kembali]
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.
C. LCD
[Kembali]
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
D. SEVEN SEGMENT
[Kembali]
Layar 7 segment adalah penampil sederhana untuk menampilkan angka seperti yang di gunakan pada lampu lalu lintas. Layar 7 segment terbentuk dari jejeran led yang membentuk angka 8. Untuk menampilkan digit tertentu pada 7 segment maka dapat dilakukan memberikan logika high atau low pada pin-pin 7 segment
Artikel ini akan membahas tentang pengertian dan cara kerja 7 segment. Untuk artikel tentang cara menyalakan menampilkan angka pada 7 segment silahkan sobat baca pada menampilkan angka pada 7 segment
Cara Kerja 7 Segment
Seperti sobat ketahui angka 8 bisa membentuk semua angka mulai dari 0 sampai 9 bahkan bilangan heksadesimal pun bisa ditampilkan
Untuk menampilkan digit angka maka 7 segment akan menyalakan bagian-bagian tertentu sesuai dengan digit harus ditampilkan. 7 segment terdiri dari 7 bagian jajaran led (segment)
Untuk mempermudah kita dalam mempelajari 7 segment maka kita beri nama bagian-bagian tersebut sebagai A,B,C,D,E,F,G
Cara Kerja 7 Segment secara lengkap
kerja 7 segment secara sederhananya adalah sebagai berikut
Untuk menampilkan angka 0 maka bagian-bagian yang harus dinyalakan adalah A,B,C,D,E,F
Untuk menyalakan 7 segment dapat dilakukan secara langsung dengan memberi logika 1 pada jenis common cathode dan memberi logika 0 pada common anode
Namun jika kita ingin menampilkan data dari input biner maka kita memerlukan decoder biner ke 7 segment
Berikut diagram 7 segment
7 segment terdiri dari 2 macam yaitu 7 segment tipe common anode dan tipe common cathode.
- Untuk 7 segment tipe common anode, kaki anode dari kumpulan led akan di jadikan satu dan dihubungkan dengan vcc sehingga diperlukan tengah negatif untuk menyalakannya. Untuk merubah 7 segment common anode menjadi common cathode ataupun sebaliknya dapat digunakan Gerbang Not
- Sedangkan tipe common cathode, adalah kebalikannya. semua cathode dijadikan satu dan hubungkan ke ground sehingga memerlukan tegangan positif untuk menyalakannya.
- Untuk menampilkan digit 0 maka deretan led yang harus dinyalakan adalah A,B,C,D,E,F
- Untuk menampilkan digit 1 maka deretan led yang harus dinyalakan adalah B,C
- Untuk menampilkan digit 2 maka deretan led yang harus dinyalakan adalah A,B,D,E,G
- Untuk menampilkan digit 3 maka deretan led yang harus dinyalakan adalah A,B,C,D,G
- Untuk menampilkan digit 4 maka deretan led yang harus dinyalakan adalah B,C,F,G
- Untuk menampilkan digit 5 maka deretan led yang harus dinyalakan adalah A,C,D,F,G
- Untuk menampilkan digit 6 maka deretan led yang harus dinyalakan adalah A,C,D,E,F,G
- Untuk menampilkan digit 7 maka deretan led yang harus dinyalakan adalah A,B,C
- Untuk menampilkan digit 8 maka deretan led yang harus dinyalakan adalah A,B,C,D,E,F,G
- Untuk menampilkan digit 9 maka deretan led yang harus dinyalakan adalah A,B,C,D,F,G
- Intinya 7 segment akan menyalakan angka sesuai dengan tabeld7 segment
E. KEYPAD
Keypad merupakan komponen elektronik yang digunakan sebagai masukan, disususun dari beberapa tombol/switch dengan teknik matrix. Berdasarkan penjelasan tersebut, bahwa sebenarnya keypad merupakan tombol-tombol yang dirangkai menjadi sebuah paket dengan teknik menghubungkan satu tombol dengan tombol yang lain dengan teknik matrix. Teknik matrix adalah bisa dikatakan array, memiiki kolom dan baris lebih dari satu. Berikut secara ilusrasi penghubungan tombol-tombol pada keypad.
Gb. 1a. Skematik koneksi tombol pada keypad (3x4)
Gb. 1b. Skematik koneksi tombol pada keypad (4x4)
Gb. 2a. Keypad berbahan carbon elastic/plastik 4x4
|
Gb. 2b Keypad berbahan carbon elastic/plastik 3x4
|
PERANGKAT KERAS KEY PAD
Gb.3a. Keypad berbahan carbon karet
|
Gb.3a. Keypad berbahan carbon karet
|
Penyusun tombol pada keypad dapat dibuat dari bermacam-macam bahan/komponen, seperti switch metal, switch karbon, dan resistif/kapasitif (touch panel). Penggunaan bahan tersebut disesuaikan dengan kebutuhan akan sensifitas, aksi penekanan, dan kebutuhan akan suatu tombol khusus. Bahan switch metal pada keypad digunakan untuk kebutuhan keypad atau tombol-tombol dengan arus yang besar. Keypad dengan bahan carbon dipakai untuk kebutuhan tombol-tombol dengan arus kecil. Biasanya itu digunakan untuk alat-alat digital yang hanya memiliki tegangan 0 dan 5v. Penerapan bahan banyak kita jumpai seperti pada keypad remot tv, remot ac, joy stick, serta masih banyak lainnya.
Sedangkan bahan penyusun keypad yang bersifat resistif/kapasitif digunakan sebagai panel sentuh pada alat-alat elektronik, seperti hp, smart phone, tablet, computer dan masih banyak lainnya. Dengan bahan resistif/kapasitif dalam pembuatan keypad, pada area yang lebih kecil didapatkan resolusi atau tombol yang lebih banyak. Berikut beberapa bentuk dari keypad yang dipakai sebagai sinyal masikan pada mikrokontroller.
Pemrograman keypad dibutuhkan dua arah komunikasi dalam mengambil data-data masukan dari keypad. Secara algoritma peng-akses-an keypad dapat dituliskan seperti berikut:
Kirim data biner pada kolom ke-1 keypad
Ambil data biner (4bit) pada baris keypad
Tunda (us)
...
Kirim data biner pada kolom ke-n keypad
Ambil data biner (4bit) pada baris keypad
Tunda (us)
Pembacaan data masukan dari keypad sesuai dengan algoritma diatas harus didahului dengan pengiriman data kolom. Pengiriman tersebut dimaksudkan sebagai signal yang akan dilewatkan salah satu saklar apabila tombol ditekan/tertutup. Kebanyakan progran mendeteksi signal masukan dari keypad menggunakan sinyal rendah (0/low). Penggunaan instruksi tunda (delay) bisa flexible, apabila ingin mendeteksi masukan dengan cepat maka tunda ditiadakan, selanjutnya sebaliknya.
Guna menterjemahkan symbol/karakter yang akan dilekatkan pada tombol-tombol keypad maka dibutuhkan program tambahan sebagai pengubah dari deteksi sinyal masukan menjadi karakter. Pengubahan ini dapat dilakukan secara langsung ataupun ada anak program yang berfungsi untuk mengubah/menterjemahkannya. Nilai/karakter bisa kita buat sesuai kemauan programmer (tidak ada aturan yang pasti) meliputi karakter huruf (a-Z), angka (0-9) dan symbol (“,+-dst).
Pemasangan keypad dengan mikrokontroller dapat dihubungkan hanya pada salah satu PORT saja, seperti yang digambarkan pada poin “B. Gambar rangkaian hardware” dibawah ini. Secara pengaturan pada codewizard dapat dilakukan dengan langkah seperti yang diilustrasikan sebagai berikut (Misal PORTA).
Gb4. Pengaturan CodeWizard untuk keypad 3x4
Dalam 1 PORT (Misal POTRA) digunakan menjadi dua fungsi, yaitu masukan Bit0 – Bit3 dan keluaran Bit5 – bit7. Masukan akan men-scanning data baris pada keypad yang sedang terjadi, sedangkan keluaran digunakan untuk mengirim data rendah pada kolom. Proses pengerjaanya dilakukan oleh mikrokontroler sangat cepat, sehingga proses scanning tidak akan nampak kelihatan.
Gb. Koneksi saklar pada keypad
No comments:
Post a Comment