Disini
akan dibahas mengenai bagaimana cara membuat alat yang bisa digunakan untuk
menghitung putaran, baik itu putaran roda maupun yang sejenisnya, device yang
digunakan untuk mengukur putaran menggunakan rotary encoder, rotary encoder
dapat menghasilkan pulsa 1 dan 0 yang digunakan untuk mengetahui apakah putaran
itu CW (putar kanan) atau CCW (putar kiri), tidak hanya itu rotary encoder
dapat menghitung putaran suatu roda dengan cara menghitung tiap pulsa yang
dihasilkan, misal satu putaran penuh rotary encoder menghasilkan 12 pulsa maka
jika pulsa sudah mencapai 12 akan terhitung satu putaran, begitu seterusnya, Secara garis besar alat ini akan menghitung tiap
satu putaran dan kelipatannya, misal jika diputar CW maka putaran akan
bertambah 1 tiap 12 pulsa, kemudian jika diputar CCW maka sebaliknya, akan
berkurang 1 tiap 12 pulsa, itu yang bisa diperoleh dari device rotary encoder.
Skema Rotary Encoder
Program
Bascom AVR
$regfile =
"m16def.dat"
$crystal =
12000000
Config Lcdpin
= Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2
Config Lcdpin
= Pin , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5
Config Lcd =
16 * 2
Cha Alias
Pind.2
Chb Alias
Pind.3
Config Cha =
Input
Config Chb =
Input
Config Pind.6
= Output
Config Int0 =
Falling
Const
Debouncetime = 1
Dim Wtime As
Byte
Dim Encounter
As Integer
Set Chb
On Int0
Getencoder
Cls
Wtime = 100
Encounter = 0
Enable Interrupts
Enable Int0
Do
Set Portd.6
Waitms Wtime
Upperline
Lcd "encounter: " ; Encounter ;
" "
Reset Portd.6
Waitms Wtime
Loop
Getencoder:
Waitms Debouncetime
If Cha = 0 Then
If Chb = 0 Then Incr Encounter Else Decr
Encounter
End If
Gifr = 64
Return
End
VIDEO HASILNYA
No comments:
Post a Comment