Teknik-Teknik
Penyesuaian
Penyesuaian Sensor
Sensor
Workshop Teknologi Sensor & Aktuator
Untuk Kontes Robot Indonesia
2009
riyanto@eepis-its.edu
Materi
1.
2.
3.
4.
5.
6.
7.
8.
Teknik-Teknik Penyesuaian
Sensor
Jumlah sensor 6 buah
Ada dua sensor berada di dalam garis
Teknik-Teknik Penyesuaian
Sensor
Bila robot bergerak agak kekiri
Satu sensor terkena garis
Teknik-Teknik Penyesuaian
Sensor
Bila robot bergerak agak kekanan
Satu sensor terkena garis
Teknik-Teknik Penyesuaian
Sensor
Bila robot berada pada percabangan
Semua sensor terkena garis
Kalibrasi Sensor
Letakkan sensor pada garis
Putar variabel resistor sehingga
indikator lampu menyala
Matikan indikator lampu dengan
memutar sebaliknya sedikit
Nyalakan indikator dengan memutar
sebaliknya sedikit
Pengamanan Sensor
Terhadap Lingkungan
Menerangkan lampu led
Menggunakan led warna
merah
Membungkus sensor
Jarak sensor terhadap
lantai
Teknik Lanjutan
Saat robot mulai berjalan motor berjalan pelan
sensor diusahakan pada posisi tengah
Saat posisi sensor ditengah motor dipercepat
perlahan-lahan sampai kecepatan tinggi
Bila robot hendak berhenti motor berjalan pelan
kemudian di rem
Bila robot hendak belok maka sensor pada posisi
percabangan, gerakkan ke depan hingga posisi
setengah ukuran robot putar robot sambil sensor
mendeteksi ada garis
Bila semua sensor lepas dari garis yang dilakukan
adalah mencatat kondidi terakhir sensor yang
terbaca
CodeVisionAVR
Jalankan software CodeVisionAVR
CodeVisionAVR
Buatlah project baru.
Pilih File New.
Pilih project lalu tekan tombol OK.
CodeVisionAVR
Kemudian muncul
dialog apakah akan
menggunakan
CodeWizardAVR
untuk
mempermudah
merancang
kerangka program.
Pilih YES.
CodeVisionAVR
CodeVisionAVR
Kemudian pilih File Generate, Save and
Exit.
CodeVisionAVR
Simpan pada direktori d:\workshop.
Beri nama source file, nama project
file, dan nama codewizard project file
anda.
CodeVisionAVR
PORTD.4=0;PORTD.5=0;PORTD.6=0;
delay_ms(1000);
PORTD.4=1;PORTD.5=1;PORTD.6=1;
delay_ms(1000);
};
}
CodeVisionAVR
Sebelum melakukan kompilasi, lakukan seting
berikut untuk pertama kali saja.
Pilih Project Configure.
Pastikan pada tab C Compiler nama chip dan clock
telah sesuai dengan IC yang terpasang pada board.
Dan pada tab After Make pilih Program the Chip.
Lalu tekan tombol OK.
Pilih Settings Programmer, pilih Kanda System
STK200+/300 untuk AVR Chip Programmer Type.
Lalu tekan tombol OK.
CodeVisionAVR
Secara bertahap anda dapat melakukan
check syntax, compile, dan make.
Atau langsung pilih Project Make. Bila tidak
ada error maka akan muncul kotak dialog
informasi.
Siapkan board, nyalakan suplay
tegangannya, hubungkan kabel download
dari PC ke board.
Kemudian tekan tombol Program.
CodeVisionAVR
Bila tidak ada kesalahan maka
ketiga LED akan menyala satu detik.
Kemudian ketiga LED akan mati satu
detik.
Demikian seterusnya.
Program PWM
Menyalakan lampu berdasarkan nilai pwm
Program PWM
unsigned char x,pwm;
// Timer 0 overflow interrupt service routine
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Place your code here
x++;
if(x>=pwm)PORTD.4=1;
else
PORTD.4=0;
}
.
PORTD.4=1;PORTD.5=1;PORTD.6=1;
while (1)
{
// Place your code here
pwm=200;
};
}
while (1)
{
// Place your code here
PORTD.4=1;PORTD.5=1;PORTD.6=1;
sensor=PINB>>2;
switch(sensor) {
case 0://00000000
PORTD.4=1;PORTD.5=1;PORTD.6=1;break;
case 1://00000001
PORTD.4=0;PORTD.5=1;PORTD.6=1;break;
case 2://00000010
PORTD.4=1;PORTD.5=0;PORTD.6=1;break;
case 4://00000100
PORTD.4=0;PORTD.5=0;PORTD.6=1;break;
case 8://00001000
PORTD.4=1;PORTD.5=1;PORTD.6=0;break;
case 16://00010000
PORTD.4=0;PORTD.5=1;PORTD.6=0;break;
case 32://00100000
PORTD.4=1;PORTD.5=0;PORTD.6=0;break;
case 63://00111111
PORTD.4=0;PORTD.5=0;PORTD.6=0;break;
}
};
}
PB2-PB7 Sensor
PB0-PB1 Push Button
PD0-PD1 Motor Kiri
PD2-PD3 Motor Kanan
PD4-PD6 Led
Baca sensor
Bila sensor aktif semua berarti percabangan
Motor jalan lurus
Loop dan baca sensor sensor sehingga
kondisi sensor ada yang tidak aktif
Hitung jumlah percabangan
Program
Bagaimana membuat
program multi strategi
Buat program menjadi fungsi misal
strategi_1() dan strategi_2()
Baca tombol push button (PB) bila PB
1 ditekan maka fungsi strategi_1()
jalan, bila PB 2 ditekan maka fungsi
strategi_2() jalan
Strategi_1()
Strategi_2()