all of andyQ

what you get is what you share……….

Bel Cerdas Cermat menggunakan ATMega8

Posted by Andik on May 7, 2008

Key word : Serial to USB interface, ATMega8, Current Loop, Visual Basic

Latar Belakang

Ada suatu perlombaan cerdas cermat (modern mode –> on) yang membutuhkan suatu bel beberapa kriteria, yang pertama harus MURAH!! untuk 10 channel atau kelompok, harus dapat mengeluarkan suara sebagai pertanda bahwa bel telah ditekan tetapi harus dapat diketahui urutan bel ditekan (dari yang pertama menekan hingga yang tidak menekan bel alias tidak bisa menjawab pertanyaan). Dari sini bisa dibayangkan seandainya 10 bel konvensional ditekan dalam waktu yang hampir bersamaan pasti acara cerdas cermat akan berubah layaknya konvoi seperti kalau ada acara kampanye partai, soalnya peserta akan memencet bel selama juri/MC belum menentukan siapa yang pertama kali menekan bel, yang kedua siapa, yang ketiga…dan seterusnya. Untuk itu perlu juga disimpan log siapa saja yang menekan bel. Dalam acara akan ditampilkan beberapa pertanyaan dan skor peserta dalam layar proyektor layaknya acara kuis di TV, untuk itu akan dibuat bel yang terkoneksi dengan PC dan dapat menampilkan nama peserta di layar proyektor.

Desain alat

Alat yang dirancang mempunyai diagram blok seperti berikut:

Diperlukan rangkaian 20mA current loop dengan pertimbangan bahwa jarak antara tombol tekan dengan modul ATMega8 dan PC adalah jauh (kurang lebih 20m). Posisi modul dan PC harus berdekatan karena komunikasi serial RS232 tidak menjangkau lebih jauh dari 15,24 m (50feet). Sengaja tidak digunakan rangkaian 20mA Current Loop pada komunikasi serial RS232 ke PC-nya yang sebenarnya justru lebih hemat, tetapi pada sisi tombol bel ke mikrokontroler dikarenakan alasan posisi peletakan bel pada saat acara yang tidak memungkinkan. Rangkaian 20mA Current Loop yang dirancang dapat mengirimkan data (meskipun datanya hanya ‘0’ dan ‘1’ dengan frekuensi yang sangat rendah) dari bel secara simplex (satu arah) dengan baik tanpa ada noise yang berarti. Rangkaiannya seperti berikut.

Sebagai pemroses data untuk dikirimkan ke PC melalui komunikasi serial digunakan mikrokontroler ATMega8 yang dengan konfigurasi berikut.

Jika PC yang digunakan memiliki port serial maka rangkaian bisa dihubungakan ke PC langsung menggunakan kabel serial, tapi jika tidak ada (seperti laptop) bisa digunakan konverter RS232 to USB Cable untuk menghubungkannya. Format data yang diterima sama dengan format RS232.

Perangkat Lunak

Pada sisi mikrokontroler saya buat menggunakan program BASCOM AVR, penggunaannya sanga mudah apalagi jika sudah mempunyai dasar pemrograman menggunakan Basic. Program ini mempunyai tugas untuk mendeteksi Port Mikrokontroler kemudian mengirimkan data yang diolah melalui secara serial dengan perintah “Print”. Karakter “$” adalah karakter Start dan karakater “@” adalah karakter Stop, sedangkan yang diapit oleh keduannya adalah datanya. Ini dimaksudkan agar program pada PC dapat mengetahui dengan mudah mana data yang sebenarnya dikirim. Program lengkapnya seperti berikut.

$regfile = "m8def.dat"
$crystal = 12000000
$baud = 9600

Config Portc = Input
 Config Portd = Input

Do
 If Pind.4 = 1 Then
 Print "$1@"
 End If
 If Pind.5 = 1 Then
 Print "$2@"
 End If
 If Pind.6 = 1 Then
 Print "$3@"
 End If
 If Pind.7 = 1 Then
 Print "$4@"
 End If
 If Pinc.5 = 1 Then
 Print "$5@"
 End If
 If Pinc.4 = 1 Then
 Print "$a@"
 End If
 If Pinc.3 = 1 Then
 Print "$9@"
 End If
 If Pinc.2 = 1 Then
 Print "$8@"
 End If
 If Pinc.1 = 1 Then
 Print "$7@"
 End If
 If Pinc.0 = 1 Then
 Print "$6@"
 End If
 Waitms 1

Loop

Sedangkan perangkat lunak pada sisi PC dibuat menggunakan Visual Basic 6. Program ini bertugas untuk mengolah data yang dikirimkan mikrokontroler untuk kemudian ditampilkan hasinya ke monitor PC atau layar proyektor. Pada Visual Basic kita dapat menggunakan komponen MSComm untuk interface secara serial dengan perangkat diluar.To Be Continued………:)

Download

Buku panduan

Bel CC V1.1

****** Dapatkan kit Bel Cerdas Cermat murah disini. ******

Artikel terkait:

SL-02 Bel Cerdas Cermat Fastest Push

BelCC 1.1 – Perangkat Lunak Bel Cerdas Cermat

 

 

25 Responses to “Bel Cerdas Cermat menggunakan ATMega8”

  1. pradithya said

    cupu

  2. pradithya said

    tapi keren!!!!!

  3. suhendrik said

    saya tertarik dengan penjelasannya
    juga saya tertarik untuk mempelajari atmega 8535 , bantu saya donk
    bagaimana cara nya menghidupkan led sejumlah 12 buah secara bergantian skenarionya begini dech… :
    1. ketika arus listrik dimasukkan buzzzer berbunyi selama 20 detik.
    2. setelah itu led pertama hidup dan yang lainnya mati .
    3. kemudian selang waktu 5 detik led ke 2 hidup dan led yg lainya mati.
    4. kemudian selang waktu 5 detik led k 3 hidup dan lainnya mati
    5. demikian seterusanya hingga led yang terakhir k 12
    setelah itu
    system akan shut down

    dari masalah dia atas dengan atmega sulit gak ya,,, tolong dong ajarin tahapannya ya…..he..he..he..

    terimakasih

  4. Kalo ngomong masalah tahapannya, sepertinya mas Suhendrik udah melewati salah satu tahapannya, yaitu menyusun algoritmanya (langka-langkah penyelesaian masalah). Ini adalah modal besar diawal yang harus dimiliki seorang programmer. Urutannya udah mas jawab sendiri, langkah selanjutnya adalah menerjemahkannya dalam bahasa pemrograman, dalam hal ini untuk program mikrokontroler. Kalo pake ATMega, justru lebih mudah mas…bisa pake C, atau BASCOM (basic) atau MikroPascal tinggal pilih mana yang mas kuasai…mas tinggal mikir logikanya, mo yg sederhana atau yang rumit (biar ga dibilang cupu..he..he..)…atau untuk lebih jelasnya ditunggu artikel berikutnya OK 🙂

  5. chandramde said

    Halo…
    Saya sudah lama gak main mikrokontroler. Tapi sekarang mau balik lagi. Belajar bareng2 ya…

    Rgds,
    Chandra MDE
    http://telinks.wordpress.com

  6. Wah seneng sekali ada temen belajar…saya juga udah lama ngga main mikrokontroller (baca: belajarnya baru sedikit) 🙂 Thanks mas chandra.

  7. dilta said

    melihat penjelasan singkat system di atas, sy sangat tertarik, kebetulan kita sedang ada proyek cerdas cermat tingkat nasional, bisa kah sy dikontak segera di no. 08121309xxx

    TQ dilta

  8. andy sw said

    haloo bro,
    kita bisa sharing kan???
    saya lebih bisa menggunkan bahasa C, jadi share bahsa basic nya ya??
    makasi…

  9. jusmar ari said

    assalamualaikum
    bisa Ga minta rangkaianx yang lebih jelas lagi tentang bel listrik cerdas cermat seperti yang kita jelaskan diatas.dan alat-alatnya yang digunakan.
    kalo bisa kirim melalui sms dinomor ini (08534150xxxx).

  10. jusmar ari said

    assalamualaikum

    kalo bisa minta prosedur kerja dari bel listrik cerdas cermat seperti yang telah dijelaskan diatas.

  11. Saya sangat tertarik dengan produk jadinya, karena kami akan menggunakannya untuk acara cerdas cermat di SMP Negeri 5 Tanjungpinang Kep. Riau, kalau ada mohon infarmasinya dan berapa harganya…..
    Tolong kami butuh sekali

  12. jonaidi said

    mana lanjutannya bos???

  13. jonaidi said

    boleh minta tutorial cara pembuatan ga???atau misalnya kalo mau pesen alatnya??bisa kirim ke 08573979xxxx

  14. taufik said

    mas mohon bantuanya,..
    minta rangkaian lengkap dan pemrogramanya? sebagai bahan belajar nich.. mohon kirim ke email saya ya mas taufikadi@yahoo.co.id oh ya mas sekalian nanya… kecepatan akses port paralel berapa sekon ya untuk setiap perubahan data pada port paralel misalnya dari 1111 1111 menjadi 1111 1110… maksd saya selisih waktu pembacaanya.. apakah bisa dibaca pada skala mili sekon?

    • MAs Taufik,
      rangkaian sudah saya tampilkan diatas, silakan dinikmati. Kalo paralel port bisa menangani transfer data hingga 50 – 100 Kbyte/s. Jadi tentu saja data yang mas sampaikan (1 byte) dapat dibaca dalam orde milisekon. Bahkan dalam mode EPP (Enhanced Parallel Port) bs sampai 2 MBytes/s. Tapi tentu saja faktor lain juga mempengaruhi seperti kecepatan processor PC, software/program aplikasi yang mas buat juga mempengaruhi.

  15. Mas Andi,
    Saya membutuhkan beberapa perangkat bel cerdas cermat untuk event lomba.
    pada siapa saya mendapatkannya ?
    please inform…

    • Pak Ardy, terima kasih udah mampir ke blog saya. Waduh pak sebenarnya saya belum siap untuk “berdagang” meskipun pengen he..he….Banyak temen-temen yang mau rangkaian saya, tapi pekerjaan saya sekarang masih belum memungkinkan untuk menangani secara serius. Saya tidak tahu kemana saya bisa arahkan bapak, mungkin saya bisa bantu buatkan asalkan konstruksi (spesifikasi) yg diinginkan masih seperti diatas dan ga banyak. Silahkan kirim email ke andyq.electra@gmail.com biar diskusinya lebih nyaman. thanks

  16. rudy said

    mas kalo rangkaian untuk membuat bel cerdas cermat yang biasa ada ga???

  17. aldo_maryz said

    Mas, sya mau tanya dong,

    saya sdah bisa mengirimkan data dari mikrokontroller ke komputer,

    tapi data yang sampai tidak sesuai (malah berupa simbol – simbol)

    kira-kira kesalahan saya ada di mana yah mas,

    saya pkai xtal 12MHz, dengan baud 9600 data tidak keluar, tapi dengan baud 300 atau 110, data muncul namun berupa simbol

    terima kasih yah mas atas balasannya

    • Mas Aldo,
      itu bukan kesalahan, memang mikrokontroler mengirim data ke PC berupa data heksadecimal, namun di PC diterima berupa karakter ASCII, misalnya untuk data 26h akan tampil sebagai karakter “&” ascii, untuk 3Fh = ? ascii, dst…untuk itu mas Aldo musti konversi dulu dari data ASCII ini ke bentuk bilangan Heksadesimal. Hal ini bisa dilakukan di program sisi PC. Saya lampirkan juga tabel konversi ASCII, silakan didownload disini.

  18. Yuli said

    asslm… mas bs mntol, sy butuh artikel lgkp cra bwt bel ini. soalx dpt tgs dr dosen.. n hrus sgra dsetor alatx dgn krja brklompok. sygx 1 klompok hx 2 org (cwe smw). jd sy bngung mw bwt bel crdas crmatx gmna? bs mntol krimkn artikel lgkpx via email sy. mhon infox… syukran

  19. andmh said

    sangat menarik meski saya kesulitan mengikuti. maklum nol dalam hal PLC. jadi yang perlu disiapkan harware & softwarenya apa saja mas? dan dimana bisa mendapatkannya?

Leave a reply to andy sw Cancel reply