- Back to Home »
- Interface Komputer »
- Kontrol Lampu Jalan
Posted by : Unknown
Rabu, 29 April 2015
Download Disini
Nih ada penjelasan singkatnya telusuri lebih lanjut ya..
Pemanfaatan port USB (Universal Serial Bus) pada
komputer saat ini telah berkembang luas seiring perkembangan teknologi
perangkat keras I/O computer seperti printer, scanner dan memory disk.
Selain itu peralatan elektronika seperti telepon genggam, kamera
digital, proyektor digital dan perangkat keras berbasis mikrokontroler
juga telah memanfaatkan port USB untuk berkomunikasi data secara serial dengan komputer. Saat ini, USB telah menjadi salah satu standar interkoneksi antara komputer dengan peralatan eksternal.
Begitu populernya USB saat ini hingga mendorong
untuk menciptakan suatu alat yang menggunakan antarmuka USB. Alat itu
adalah pengendali lampu melalui antarmuka USB berbasis Mikrokontroler AVR AT90S2313.
Seperti apa alat tersebut? Pada kasus ini telah dicoba untuk merancang dan membuat antarmuka USB dengan memanfaatkan firmware
yang diimplementasikan kedalam mikrokontroler AVR AT90S2313. Keuntungan
dari cara ini adalah selain harganya yang lebih murah, alat-alat yang
dibutuhkan mudah didapat di Indonesia.
Alasan memilih mikrokontroler tipe AT90S2313
ini adalah karena pada kecepatanya, AT90S2313-10PI mempunyai kecepatan
10 MHz, tetapi dalam alat ini dapat dilakukan overclocking dengan
menggunakan kristal pembangkit clock sebesar 12MHz, kecepatan ini
memenuhi kriteria dari antarmuka USB dengan mode low-speed (1,5 Mbps).
Diagram pengendali lampu melalui antarmuka USB
Pada gambar di atas terdapat beberapa device (perangkat) yang bekerja
sehingga lampu akhirnya dapat dikendalikan sesuai keinginan.
Adapun fungsi dari masing-masing alat perangkat tersebut:
- Mikrokontroler berfungsi untuk men-dekode data yang diterima dari USB dan mengirimkan data dari mikrokontroler melalui USB.
- Komputer digunakan untuk menampilkan program pengendali lampu yang bertujuan untuk mempermudah pengguna dalam mengontrol lampu baik mematikan lampu atau menyalakannya sesuai dengan perintah.
- Remote televise digunakan untuk mengendalikan lampu secara remote.
- Driver berfungsi untuk mengenali peralatan USB yang telah terpasang terhadap lingkungan system operasi Windows.
Pengguna atau user memasukan parameter input ke komputer berupa suatu
perintah. Perintah tersebut diubah kebentuk tertentu yang dapat
dilewatkan melalui antarmuka USB ke mikrokontroler. Data tersebut dibaca
oleh mikrokontroler berupa IC AT90S2313 yang sebelumnya telah
terprogram sebuah firmwire yang sesuai dengan karakteristik USB.
Program firmware ini mengubah karakteristik dari parameter
input (dari komputer) menjadi bentuk tertentu yang diteruskan ke port 8
bit I/O dari mikrokontroler yang telah ditentukan, dan selanjutnya akan
menentukan tindakan atau pengendalian apa yang akan dilakukan terhadap
lampu.
Selain pengendalian melalui komputer, pengguna juga dapat mengendalikan nyala lampu melalui fasilitas remote.
Remote yang digunakan berupa remote televisi yang dapat dibeli di
toko-toko elektronik. Pengguna menekan tombol tertentu dari remote,
kemudian sinyal diterima oleh receiver yang kemudian diteruskan ke
mikrokontroler dan diterjemahkan kedalam suatu bilangan biner yang unik.
Setelah mikrokontroler menerjemahkan sinyal dari tombol remote,
kemudian diteruskan ke komputer yang tentunya sinyal tersebut sudah
diterjemahkan kedalam bentuk tertentu agar dapat dibaca melalui
antarmuka USB. Host (komputer) membaca kode tersebut dan kemudian
menentukan jenis tindakan atau pengendalian apa yang akan dilakukan, dan
kemudian dikembalikan ke mikrokontroler untuk melakukan tindakan atau
pengendalian yang telah ditentukan.
Perangkat Keras
Rangkaian yang dibutuhkan dalam membuat pengendali lampu melalui antarmuka USB sangat sederhana. Adapun bagian utamanya adalah antarmuka USB, mikrokontroler dan sensor infra merah (sensor infra merah TSOP1738 yang berfungsi untuk menerima infra merah dari remote TV). Dapat digambarkan sebagai berikut:
Skema diagram pengendali Lampu
Catu daya yang digunakan sebagai sumber tegangan
pada rangkaian USB diperoleh dari host (komputer), karena pada antarmuka
USB setiap host mampu menyediakan tegangan sebesar 5 volt dengan arus
maksimum 500mA. Arus sebesar itu sudah lebih dari cukup untuk mencatu
alat ini, sehingga catu daya dibutuhkan hanya untuk mendrive relay
pengendali lampu.
Bagian kabel D- pada antarmuka USB dihubungkan ke pin PB0
mikrokontroler dan PB1 pada kabel D+. Alat ini hanya mendukung mode
kecepatan rendah (low speed) yaitu pada kabel D- di terminalkan sebuah
resistor pull-up 1,5 k? (untuk full Speed, resistor pull-up terhubung ke
D+) yang terdapat pada setiap peralatan USB.
Pada mikrokontroler dipasang kristal pembangkit frekuensi sebesar
12MHz, hal ini dilakukan untuk mengimbangi kecepatan dari USB mode
kecepatan rendah (low speed) yaitu 1,5 Mbps.
Kapasitor disini berfungsi sebagai filter dari tegangan. Pada
penerima infra merah, digunakan sensor infra merah TSOP1738 yang
berfungsi untuk menerima infra merah dari remote TV. Pin VS adalah
sumber tegangan 5 volt, VO adalah pin keluaran dari sensor yang
terhubung ke PB2 dan PD2 (T0) pada mikrokontroler, sedangkan GND adalah
pin ground. Pada pin VS ke GND dipasang sebuah kapasitor yang berfungsi
untuk mencegah interferensi antara sinyal dari infra merah dan sinyal
dari USB komputer. Pin PB4, PB5, Pb6 dan PB7 pada mikrokontroler
digunakan untuk keluaran yang terhubung ke relay dan digunakan untuk
mengendalikan lampu.
Pada bagian pengendali lampu digunakan relay yang berfungsi untuk
menyalakan atau mematikan lampu yang dikontrol dengan memberikan
tegangan dan arus tertentu pada koilnya.
Perangkat Lunak
Perangkat lunak yang digunakan dalam perancangan alat ini adalah bahasa Assembler AVR sebagai firmware, driver untuk Windows dan bahasa Delphi
untuk program pengendali dari pengguna. Perangkat lunak program utama
adalah perangkat lunak yang berfungsi untuk mengatur pembacaan input
dari komputer dan juga input dari remote. Pemrogram dilakukan
menggunakan bahasa Assembler yang di-download kedalam mikrokontroler
bersamaan dengan program firmware.
Firmware dipakai untuk mengatur pengiriman dan penerimaan data antara USB dan alat. Program pengendali diimplementasikan menggunakan bahasa pemrograman Delphi 7.
Program dibagi menjadi 2 bagian :
- program pengendali lampu melalui komputer dan
- program pengendali lampu melalui penekanan remote.
Program pengendali
Untuk pengujian dari alat ini, dapat dilakukan
dengan dua cara yaitu pengujian keseluruhan melalui komputer dan
pengujian melalui remote. Adapun perintah-perintah yang dilaksanankan
dalam pengujian melalui komputer adalah sebagi berikut:
- Menyalakan lampu secara bergantian.
Percobaan dilakukan dengan cara memberi tanda cek pada pilihan lampu yang ingin dinyalakan. Jika “Lampu1” di beri tanda cek, maka lampu 1 akan dinyalakan, dan apabila dan apabila tanda cek dihilangkan maka lampu 1 akan mati, begitu juga dengan lampu 2, 3 dan 4.
Dari percobaan ini tidak ditemui kendala yang berarti, artinya program dan rangkaian berjalan dengan baik ketika dieksekusi. - Menyalakan lampu berjalan.
Percobaan ini dilakukan dengan cara menekan tombol “Start” padatampilan program dan kemudian lampu akan berjalan secara bergantian terus-menerus sampai tombol “Stop” di tekan, maka lampu akan berhenti.
Pengujian ini berjalan dengan baik walaupun perintah dilakukan selama 3 jam.
Pengujian melalui remote dilakukan dengan cara
menekan tombol-tombol remote yang sudah ditentukan yang akan
menghasilkan keluaran nyala lampu yang berbeda-beda. Tabel di bawah
adalah table dari tombol-tombol remote dengan macam fungsinya.
| Tombol remote | Kode Remote | Fungsi |
| Tombol 1 | 128 | Untuk menyalakan dan mematikan lampu 1 |
| Tombol 2 | 129 | Untuk menyalakan dan mematikan lampu 2 |
| Tombol 3 | 130 | Untuk menyalakan dan mematikan lampu 3 |
| Tombol 4 | 131 | Untuk menyalakan dan mematikan lampu 4 |
| Tombol “Power” | 149 | Untuk menyalakan dan mematikan semua lampu |
| Tombol “Mute” | 148 | Untuk menyalakan dan mematikan lampu berjalan |
| Tombol “Program” | 144(+), 145(-) | Untuk menyalakan dan mematikan lampu secara bergantian sesuai jumlah penekanan tombol |
| Tombol “Volume” | 146(+), 147(-) | Untuk menyalakan secara “volume” |