Membuat Tampilan Warna Di CodeBlocks
Baiklah kali ini saya akan shared gimana caranya membuat tampilan hasil program pada Code::Blocks menjadi warna seperti...
Sensor Encoder
Bagaimana cara mengetahui kecepatan pergerakan Robot, posisi Robot dari posisi sebelumnya, menggambarkan pergerakan Robot pd komputer, atau mengatur agar Robot brada pd posisi tertentu. Salah satu jawabannya yaitu dengan sensor Encoder, cara lain menggunakan sensor kompas ato menggnkn prinsip kerja GPS...
This is Software Konversi Bilangan
Bagi Sobat yang mau download software ini silakan klik ini. Dan software ini tidak begitu sulit kok untuk digunakan oleh pemula atau pun siapa pun. ^_^
Selasa, 22 November 2011
Download BASCOM-AVR
Bahasa pemrograma BASIC dikenal di seluruh dunia sebagai bahasa pemrograman handak, cepat, mudah dan tergolong kedalam bahasa pemrograman tingkat tinggi. Bahasa BASIC asalah salah satu bahasa pemrograman yang banyak digunakan untuk aplikasi Mikrokontroller karena kemudahan dan kompatibel terhadap Mikrokontroller jenir AVR dan didukung oleh Compiler software berupa BASCOM-AVR.
Jika sobat ingin mendownloadnya KLIK DISINI
Senin, 21 November 2011
Menghitung kecepatan dalam RPM
Berikut ini adalah langkah terakhir dalam menentukan kecepatan putaran motor DC dalam RPM (Revolutions Per Minute) , dan untuk mengingat kembali, berikut spesifikasinya :
Logika perhitungan RPM
Encoder yang digunakan adalah tipe piringan yang menggunakan lubang atau garis hitam-putih, banyaknya lubang adalah 4 buah lubang maka 1 putaran = 4 lubang.
Kasus 1: Interupsi eksternal mendeteksi 2400 lubang dalam waktu 1 menit yang berarti :
Coding CoViAVR
Pada post sebelumnya, Timer yang digunakan adalah timer 8 bit, lalu interupsi eksternal menggunakan mode falling edge, tampilan data RPM akan ditampilkan ke komputer melalui port serial dengan protokol 9600,8,N,1.
Langkah-langkah :
Selanjutnya silahkan lihat coding berikut :
Oiya.. lupa aktifin kedap-kedip LED-nya..
Silahkan koreksi sendiri ya..
Udah teranjur d upload gambarnya..
CMIIW.. Ok.
Semoga manfaat ;)
- Motor DC satu arah.
- Sensor berupa encoder piringan menggunakan lubang.
- Lubang = logika 0, No lubang = logika 1.
- Banyak lubang 4 buah dengan perbedaan 90 derajat.
- Update nilai RPM setiap 1 detik.
- Interupsi encoder dengan mode Falling Edge / NGT
Logika perhitungan RPM
Encoder yang digunakan adalah tipe piringan yang menggunakan lubang atau garis hitam-putih, banyaknya lubang adalah 4 buah lubang maka 1 putaran = 4 lubang.
Kasus 1: Interupsi eksternal mendeteksi 2400 lubang dalam waktu 1 menit yang berarti :
- 1 menit terdeteksi 2400 lubang (Clock lubang), maka
- 2400 / 4 = 600 putaran atau 600 RPM
- 30 detik = 30/60 = 0,5 menit
- 1800 / 4 = 450 putaran dalam 30 detik, maka
- 450 / 0,5 = 900 RPM
- 200 mS = 200 / 60000 = 0,0033333 menit
- 60/ 4 = 15 putaran dalam 200 mS, maka
- 15 / 0,0033333 = 4500,045 RPM
- 1 S = 1 / 60 = 0,016667 menit
- 100 / 4 = 25 putaran dalam 1 S, maka
- 25 / 0,016667 = 1.499,97 RPM
Coding CoViAVR
Pada post sebelumnya, Timer yang digunakan adalah timer 8 bit, lalu interupsi eksternal menggunakan mode falling edge, tampilan data RPM akan ditampilkan ke komputer melalui port serial dengan protokol 9600,8,N,1.
Langkah-langkah :
- Jalankan program CoViAVR, buat project baru, dan gunakan CodeWizzardAVR.
- Atur komunikasi serial, interupsi Eksternal dan timer 8 bit.
Selanjutnya silahkan lihat coding berikut :
Oiya.. lupa aktifin kedap-kedip LED-nya..
Silahkan koreksi sendiri ya..
Udah teranjur d upload gambarnya..
CMIIW.. Ok.
Semoga manfaat ;)
Sensor Encoder
Bagaimana cara mengetahui kecepatan pergerakan Robot, posisi Robot dari posisi sebelumnya, menggambarkan pergerakan Robot pd komputer, atau mengatur agar Robot brada pd posisi tertentu. Salah satu jawabannya yaitu dengan sensor Encoder, cara lain menggunakan sensor kompas ato menggnkn prinsip kerja GPS.
Salah satu jenis Encoder yaitu berupa sensor inframerah yg terdiri dr pemancar n penerima dlm 1 kemasan, bentuknya biasanya U (liat aj gambarnya). Ada encoder jenis lain yg bisa mengetahui sudut perputaran tp wa g tau jelasnya.
Prinsip kerjanya :
1. pemancar, memancarkan cahaya inframerah pada penerima.
2. Jika cahaya pemancar diterima oleh penerima maka dianggap logika 1 (tergantung rangkaian)
3. Jika cahaya pemancar tidak diterima oleh penerima maka dianggap logika 0.
Untuk mencegah kesalahan pembacaan data sensor encoder, sebaiknya pd program tidak mendeteksi pembacaan logika 1 saja ato logika 0 saja. Jika program mendeteksi logika 0/1 saja maka saat Motor yg terpasang encoder OFF shg posisi encoder selalu 0/1 maka terjadi kesalahan penbacaaan data.
Sebaiknya pd program mendeteksi perubahan dari 1 ke 0 (NGT) ato dari 0 ke 1 (PGT). Klo mikro AVR sudah ada fungsinya di interupsi shg mudah n kesalahan bisa diminimalkan klo d MCS51, hmmm... tau deh.
Salah satu jenis Encoder yaitu berupa sensor inframerah yg terdiri dr pemancar n penerima dlm 1 kemasan, bentuknya biasanya U (liat aj gambarnya). Ada encoder jenis lain yg bisa mengetahui sudut perputaran tp wa g tau jelasnya.
Prinsip kerjanya :
1. pemancar, memancarkan cahaya inframerah pada penerima.
2. Jika cahaya pemancar diterima oleh penerima maka dianggap logika 1 (tergantung rangkaian)
3. Jika cahaya pemancar tidak diterima oleh penerima maka dianggap logika 0.
Untuk mencegah kesalahan pembacaan data sensor encoder, sebaiknya pd program tidak mendeteksi pembacaan logika 1 saja ato logika 0 saja. Jika program mendeteksi logika 0/1 saja maka saat Motor yg terpasang encoder OFF shg posisi encoder selalu 0/1 maka terjadi kesalahan penbacaaan data.
Sebaiknya pd program mendeteksi perubahan dari 1 ke 0 (NGT) ato dari 0 ke 1 (PGT). Klo mikro AVR sudah ada fungsinya di interupsi shg mudah n kesalahan bisa diminimalkan klo d MCS51, hmmm... tau deh.
Jumat, 18 November 2011
INTERRUPT
Interrupt adalah fasilitas mikrokontroller untuk menyela suatu program yang sedang berjalan. Interrupt dapat dianalogikan sebagai hak untuk menyela pada suatu rapat. Dari sekian banyak peserta rapat hanya 21 orang yang diberi hak untuk menyela. Jika terdapat 2 atau lebih orang yang menyela, maka orang dengan prioritas paling tinggi yang diperbolehkan bicara. Pada ATMEGA8535 terdapat 21 fasilitas interrupt dengan prioritas seperti pada tabel berikut.
Tabel 3.1: prioritas interrupt ATMEGA8535
Dalam bab ini peserta akan diperkenalkan dengan fasilitas eksternal interrupt mikrokontroller INT0 dan INT1. Fasilitas ini sangat penting karena menempati urutan kedua dan ketiga setelah RESET. Register register yang perlu disetting untuk menggunakan fasilitas interrupt adalah MCUCR, MCUSR, GICR, dan GIFR.