Sistem monitoring lampu lalu lintas (hardware + aplikasi) berbasis ARDUINO & JAVA

Posted: December 11, 2011 in Belajar Bahasa Pemrograman, Belajar Java
Tags: , , , , , , , , , , , , , , , , ,

Belum genap 1 bulan belajar, sudah dapat tugas yang lumayan berat walaupun itu tidak ditentukan. Tugas itu berupa “Sistem Monitoring Lampu Lalu Lintas” yang menggunakan hardware berbasis arduino dan aplikasi yang dibuat dengan bahasa pemrograman JAVA. waktu pengerjaan tidak lama, hanya sekitar 2 minggu.

Butuh perjuangan yang besar saat menyelesaikan tugas tersebut, mulai dari penyusunan proposal, berburu komponen, proses perancangan, penyolderan, uji coba sampai pengerjaan laporan.

Sistem ini menggunakan standar komunikasi RS232 untuk komunikasi data dari hardware ke aplikasi. karena saat pengerjaan aplikasi sistem ini menggunakan laptop, maka digunakan sebuah konverter usb to serial.

Photobucket

                     Kontroller akan mengatur nyala lampu (LED) sehingga menyerupai lampu lalu lintas yang ada di persimpangan. Karena keterbatasan pin I/O yang ada, maka dimanfaatkanlah sistem demultiplekser atau sering disingkat dengan istilah demux. Demux merupakan suatu perangkat yang dapat mengontrol banyak output melalui 1 jalur input/data. Sedangkan untuk pembacaan data ADC dimanfaatkan sistem multiplexer yang disebut mux. Mux ini memiliki cara kerja yang terbalik dengan demux. Mux dan Demux memiliki beberapa selektor, yang mana tiap kondisi selektor tersebut akan menghubungkan jalur input ke beberapa output (demux) atau sebaliknya dari beberapa input ke 1 jalur output (mux).

pada perancangan sistem ini digunakan ic cmos 4051 yang digunakan sebagai perangkat mux/demux. dibawah ini adalah pin mapping ic 4051.

ic4051

Selain mengontrol, kontroller akan membaca kondisi dari led yang menyala. Saat pembacaan ini, dimanfaatkan fitur ADC yang ada pada kontroller.  Berikut ini adalah cara pengambilan data adc

Photobucket

untuk skematik, karena rangkaian dibuat di PCB matriks, maka belum ada file skematiknya, baru berupa desain di fritzing. Ini gambaran skematiknya (maaf kalau berantakan :) )

rangkaian

karena kontroller merupakan board arduino handmade, dan sudah jadi maka waktu pembuatan rangkaian tidak membutuhkan waktu yang terlalu lama.

Setelah pembuatan hardware selesai, maka pekerjaan selanjutnya yaitu membuat aplikasi. Aplikasi dibuat dengan menggunakan bahasa JAVA yang memanfaatkan NetBeans.  Aplikasi ini membutuhkan library RxTx untuk komunikasi serial dengan hardware. Bagi temen-temen yang belum tau cara nambahin RxTx Lib, bisa dilihat disini.

setelah download library RxTx nya, silahkan ikuti langkah instalasi nya dipostingan saya sebelumnya disini.

untuk yang mau download RxTx Libnya, silahkan ambil disini.

Berikut ini adalah tampilan dari aplikasi :

tampilan

untuk memulai koneksi antara hardware dan aplikasi, maka hardware harus sudah terkoneksi dahulu dengan laptop/komputer dengan menggunakan kabel serial DB9(komputer) atau konverter serial to usb (laptop);

Photobucket

Setelah user menekan tombol “Search Port” maka aplikasi akan langsung mencari port mana yang sedang aktif. setelah itu daftar port tersebut ditampilkan dalam sebuah list. setelah memilih port mana yang akan digunakan, untuk mengkoneksikan hardware dan aplikasi user harus menekan tombol “Connect”.

Aplikasi akan memulai menerima data dari hardware jika telah terkoneksi. Data-data yang diterima tersebut nantinya akan melalui tahap pemilihan dan pemecahan data, hal ini dilakukan agar mempermudah logika yang digunakan untuk mengatur tampilan sehingga terlihat sama dengan kondisi led yang di kontrol oleh kontroller.
berikut ini adalah tampilan aplikasi jika tidak ada terdeteksi error/ tidak ada lampu yang rusak.

Photobucket

kalau ada lampu yang rusak :

Photobucket

program aplikasi dan hardware (arduino) dapat di download disini

untuk tutorial penggunaan aplikasi dapat di download disini

jika ingin memahami aplikasi kirim dan terima data serial sederhana, dapat anda lihat postingan saya sebelumnya disini

semoga bermanfaat…. :)

About these ads
Comments
  1. topfirst says:

    keren bangiitt…

  2. Maman says:

    Mas, blh di postingin cara membuat aplikasi GUI kreasi sendiri dari java untuk memasukkan nomor telp ke arduino untuk sms gateway menggunakan modem. Terima kasih sebelumnya.

  3. afanpunyablog says:

    mas bisa kasih contoh simpel untuk kirim data ke serial port?

  4. [...] salah satu contoh program kompleks nya dapat anda lihat disini. [...]

  5. tatok says:

    mas bro, saya awam programing java, tetapi setelah menyimak blog anda, saya sangat tertarik memuali belajar, ada saran tutorial unutk pemula awam seperti saya?

    • rifqithokz says:

      awam tentang java tapi belum tentu awam tentang pemrograman kan mas? :)
      java hampir sama dengan pemrograman lainnya, hanya saja lebih kental konsep OOP nya, :)

  6. Abidin says:

    Bang ada yang versi c# nya tah… ?

  7. fikri says:

    Mas, nanya dong saat download program ada folder kontrol traffic light v1 dengan format pde itu fungsi nya apa ya kalau cuma program monitoring traffic light nya yang dipake?

Terimakasih telah singgah di blog ini. Silahkan berikan komentar, saya membutuhkan kritik, saran serta masukan yang membangun guna perbaikan tulisan pada blog ini kedepannya.

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s