TUGAS AKHIR PENGENDALI PUTARAN ARAH RUMAH PADA PEMODELAN RUMAH PINTAR
! " # $ $ %
'
! " #
# $ #
() !" !#$%& '($)$! )$* '+$* $#$ +,# %$! '+$* &!($)-.
- ' $
- ' % ,' % * - ' '- ' ' . '
- /' % # ' ' '- ' ' >' 0' - ' - '
- 1' '
- 2' 3
5 6 ( '
- 7' #
' - 8' , 9' , ( 4, ! 6- :.
;'
<' , , - .
5 '
- =' ( 4 & - % - ) - , 6- '
- ' , ( : > ; 4, - - ? - . 6 ? ' :# ! "'
- /' ( @=/ @=0 '
- 0' , - % * - % - , A- > '
- 1' ( ( ! ,- '
- 2' - B ( C. .
' ()
- , ' 5 - /1 /==8
- 5
>,3, ,) C 3 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' >,3, ,) C 3 4#) !# 6 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' >,3, ,) ! C ,)''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
>,3, ,) ) ,>,)''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' &
>,3, ,) ! %,>,)'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' &
!)5, ,,) . , 3#,) .,!5, '''''''''''''''''''''''''''''''''''''''''''''''''''' &
., , ) ,) ,! ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' &
, ,! # # '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' A
, ,! , %,! ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' A
, ,! ,% 3 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' A
, ,! 3, #!,) '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' A &
#) # ,!# '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' A&
,% !,D ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' A&
%,% #' ) ,> 3 ,) ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' +
#'+ C ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' + #'/ 3 % ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' + #'0 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /#'1 % '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+'2 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
#'7 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
1
#'8 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
1
#'9 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
1 %,% ##' , ,! !# '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 7
/'+ , 9< 2+'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
7 /'+'+ ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 9 /'+'/ ! ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 9 /'+'0 # ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ++/'+'1 #E ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' +1 /'+'2 # $ '''''''''''''''''''''''''''''''''''''''''''''''''''''' +0 /'/ D ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' +7 /'0 D ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' +8 /'1 FFFFFFFFFFFFFFFFFFFF''' +9 /'2 , 4# $ 6 DFFFFFFFFFFFFFFFF +<
%,% ###' !,)D,) ,) ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /+
0'+ . , ! ! ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /+ 0'/ , ! /0/'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /00'0 $ D ''''''''''''''''''''''''''''' /1 0'1 $ ''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /2 0'2 $ '''''''''''''''''''''''''''''''''''''''''''''''''''''' /7 0'2'+ ! '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /7
0'2'/ ! ! '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /8 0'/ $ 3 '''''''''''''''''''''''''''''''''''''''''''''''''''' /9 0'7'+ !
3 ''''''''' /9
0'7'/ D'''''''''''''''''''''''''''''''''''''''''' /< %,% #B' >, #3 ,) %,>, ,) ''''''''''''''''''''''''''''''''''''''''''''''''' 01
1'+ $ ''''''''''''''''''''''''''''''
011'/ D''''''''''''''''''''''''''''''''''''''''''''
071'0 D . , ''''''''''''''''''''''''''''''''''''''''
08%,% B' . # 3,) ,) ,!,) '''''''''''''''''''''''''''''''''''''''''''''''''' 1=
B'+ . ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 1= B'/ ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 1=
, ,! ,.,''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 1+
/ /'+ % , 3 , 9< 2+''''''''''''''''''''''''''''''''''''''''''
7 /'/ , % ! ?''''''''''''''''''''''''''''''''''''''''''''''''''''''
9
- /'0 ! # , 3 , 9< 2+''''''''''''''''''''''''
/'1 3 D %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +8
/'2 % #D 3/<0 '''''''''''''''''''''''''''''''''''''''''' +8
/'7 % '''''''''''''''''''''''''''''''''''''''''''''''''' +<
/'8 # ,G /0/ '''''''''''''''''''''''''''''''''''''''''''''''''''''''' /=
0'+ . , !
! '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /+
0'/ ! . D ''''''''''''''' //
- 0'0 . ,G/0/- D''''''''''''''''''''''''''' /0
0'1 . - 3/<0 - D ''''''''''''''''''' /2
0'2'! '''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /2
0'7 ! '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /7
0'8 ! ! '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' /8
0'9 ,
3 '' /9 0'< D !
% , ''''''''''''''
00
/
/'+ ) () % . ! D )''''''''''''''''''''''''' <
/'+ ) () % . ! D ) '''''''''''''''''''''''' +=
/'/ ! # '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' +/
/'0 # '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' +0
/'1 '''''''''''''''''''''''''''''''''''''''''''''''''''''' +2
/'2 3 , 3/<0 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' +9
0'+ , , ) > ''''''''''''''''''''''''''' 0/
0'/ , - ) % - ) > '''''''' 0/
1'+ '''''''''''''''''''''''''''''''''''''''02 1'/ D '''''''''''''''''''''''''''''''' 07 1'0 D > '''''''''''''''''''''''''''''''''''''''''''
08
,' ''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 3+
%' ! 3 ! '''''''''''''''''''''''''''''''' 3/D' 3 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 30
' '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 31
- $ ' ( ' ' ' , 9< 2+
D ' & ' E - , 9< 2+
'
$ $ '
$ 3/<0 ' > - * ' 0 . ' $($ 0'!1& - -
/ # - * $ & $ * & ' $ * ' # -
$ * ' $ $ ' * $ $ & - * $ $ * * ' , $
- ' A $ $ $ $ 9 1 $
1 $ $ ' ( $ $ E $ - $
4 D6' $ D & # 4 $ # $ 6' $ $ - $ $ - $ $
4 D6 $ * $ ' ,
D * & - $ $ * &
D H & $ D * $
- ' , -
4 6 $
9 $ ' , A * $ 0 . ' 2 3,)#4 $ - $ $ $ -
!"# $ %& ' $() "# $() "#
' * , '
- $ %& $() "#
- ,
- ! ! .
# '
- '
/
- /
' $() "#* ! #
( '
- / " -
/1
01
01 ! " # # $ .
# $() "#
$ % # # , .
# $ ,
- $
& ' ' ' # # #
- ! .
# !
- , / , !
2 ! ( )# # # .
" 2 ,
! ' # 2 ! $() "#
- 2 ! # , +
2
- # . ) +
2
!
" #$ % &
" ' #$
( ) * +
! & & & ,- . *
& & / * & ' & & + & / # 01 &
#2 & &
3 & & & & # 01 # 01 & & &
& & # 01 ' & '
4 * & & ' / & / & & 0' & &
50 6 776
6 (76 6 776 ' & &
& + & 8 & & & 9 : ; & !
9 ; & & & 0 0(* + & - ) & & <
& ==9 ;
- & #
9 ; " & & % & " 7 " & &
- &
- " & & & & & & > & 5
- & ' " & &
5 & " 0 &
5
- 9 ; &
& 9 ; & & ( & & & !" !#* & / ?
& & & / & & +
$ 9' 0;& & , &
' $ 9 < % ; ' 6 9 < > ; '- % , & & & & & 1@A *B' , & 3 & & , & C/
- % & & 6 '6 $ "6* & ' & $ =6
6
- 6 ( & =12 9 ( ;
& ( * / &
< 2 " . & =12 & &
2 1' =12 ( $ D7 =12 > )
- 2 " . & =12 9 ; & &
2 D7%
- =12 % ' =12 ( $ ( '$ =12 + & & &
4 & & * & & / & & & & & & 9 #;
- 6 & % 9 ; " 6 & =12 9 & ; &
8 & 8 & ) ' * & 4 , * &
- & ,
- & 1' 9 &
&
8 & & =12 9 ; & 8 & 8 &
! " " "# & & * < % & * % & ? & &
! & & & /
4 / & # 70 #
+ & 4 & & & / D % >
- # #$ ! 0 & # #$ 7 & 8 & # % > #( & & & "
& &
9 ;* & & & 9$ ;#, # & /
#- & 4 & &
- & & #- & #> # * / &
% #% # & & &
& * & / &
, & # $ %" # # ( ) &
& & / & # , = # = # # - " 4 & &
# # > " 4 & & . ( #A # % " 4 & & , # # " 4 & & . ( #A # " 4 & & ,
& & & & * & & & & & " & / & & &
& & & 2 + / & & & = )
/ & /
&& & %
> & & !
$ %" ( = , = =
" & & -
> " & &
A % " & & , " & & A " & & ,& $ ' C1 & & , 9 & & & / & ;* . /
9 !
& / & / & ")7
- + & *
3 & ?
0A'* & A' 8 & ' &
C . / 9 ; & C % 8 & &
%
- C % &
9 ;*
9 ;* & 9 ; & * & & 0" & =12 1
4 > % C > 9 ;*
- &
- & 9 ; & " " & =12 & * & 0" & =12 1 C>%
C,- 8 & &
- > C > &
9 ;*
9
- ;*
&
9 ; & & & % / 4 $ "
!
1 / & & & "
& & & & && * & / & & C &
- & & C % 8 & &
" 1' & =12 %
1'E C>% 8 & & * + 1'E
C,- 8 & &
1 > / . ( 1 > & < >% F G
G . ( 1 =
9> ; . 8 & + 8 & & < ; + & H
I H/ I*
- %* > %; ) + 9$ ; &
1 ( "( ) ' * + , ) ,
>% ; % , 9 % × − ×
, ; % , 9 % × − × '-& * + '! * +
! >% ; % , 9 % × − ×
, ; % , 9 % × − ×
, .
'= & & & &
- C & & '= '= +
! '= & & & < *
. C & & & J
* & & &
8 K %
- & &
& '= / &* & & 4
& & .
- & & & & & & & &
- & & '= '= ' & / & '= C / " & &
( & / / '=
& '= 9 ; <> J > '= &
'= D6> D & $ '=
! .
) & '= & . * = $% >' . '= 9 ; & $% >' & & & ,
,!
.- @ >, @
* & * /* & &
$ ' = $% >'
= $% >' 4 % '= = - 9 * %* >* -;* - 9 * %* >* -;* % 9 * %; & + & & <
$ & $% >' # % 1 1 % '=
6
6 6 $ $ '
6 6 $ 6 $ 6 $ 6 $
6 6 $ $ $ $ ' $
6 6 $ $ ' & $
& & & & & & & C & & & & " & & & & & & ( 0 2 ( & & 90 ; & & & &
- & & & + .
- & & & & & + &
8 ( &
1 &
- & & 8 (
- & " ( % ,
- " (
" /
- 9 ; 9=1 ; . & & & & * ?
- & & & & & / &8
! . / & & & '"
6 & & & 4 $ = 1 ) & /*3* . .
4 0 %>% @ @ & & /*3* . . A %>% =
- . * % . 4 $C= 1 4 0 %>% .
4 0 %>% 4 $C= 1
% 1 8 & A %>% Diagram kotak dari Pengendali Putaran Arah Rumah pada Pemodelan Rumah Pintar dapat ditunjukkan pada gambar dibawah ini: ! Diagram Kotak Pengendali Putaran Arah Rumah Pada Pemodelan Rumah Pintar PC dalam hal ini berlaku sebagai yang berfungsi untuk
memberikan input dari ( ), memberikan
perintah untuk kemudian diteruskan kepada mikrokontroler untuk kemudian
proses pengendalian dilakukan. Sebaliknya, juga akan menerima tampilan
berhasil atau gagalnya suatu perintah dari PC.Seperti dijelaskan pada dasar teori bahwa antarmuka berfungsi sebagai
perantara/penghubung antara PC dan mikrokontroler. Dalam hal ini juga untuk
22
mengubah level logika antara kedua blok tersebut (PC dan mikrokontroler) dalam
komunikasi serial.! " Gambar Pemodelan Rumah dan Koneksinya ke PC Sensor posisi disini akan memberikan referensi kepada mikrokontroler
tentang arah rumah pada saat ini. Sehingga mikrokontroler dapat menentukan
kearah mana dan pada posisi mana motor harus berputar untuk mendapatkan
posisi yang diinginkan. Setelah berputar, sensor ini juga akan memberikan
informasi kepada mikrokontroler apakah posisi yang diinginkan tercapai. Gambar
pemodelan rumah pintar dan koneksinya dapat dilihat pada gambar 3.2.Setelah mendapatkan perintah, mikrokontroler akan mengendalikan ke
arah mana semestinya motor DC berputar melalui driver motor DC, dalam hal ini
driver yang digunakan adalah L293D. Motor DC secara tidak langsung akan
memberikan umpan balik kepada sensor. Motor DC akan berputar dan
menyebabkan sensor posisi mendeteksi perputaran dari motor DC yang
kemudian akan memberi referensi kepada mikrokontroler.Posisi rumah pada awal pengendalian sudah terlebih dahulu diatur
menghadap arah utara sebagai posisi ,nya. Pengaturan ini dilakukan
23
dengan menggunakan kompas analog. Kompas ini juga digunakan untuk
mendapatkan arah mata angin yang presisi untuk arah rumah yang lain. Untuk
program, pengaturan posisi dilakukan oleh PC." #" " Untuk berhubungan dengan pada , tegangan pada
mikrokontroler harus diubah dahulu dari standar TTL ke standar RS232.
Sebaliknya, pada P juga harus mengubah level tegangannya dari
standar 232 ke standar TTL.Untuk itu digunakan IC MAX232 yang memiliki 2 buah pengubah
tegangan dari standar TTL ke standar RS232 dan 2 buah pengubah tegangan dari
standar RS232 ke standar TTL. Pada IC MAX232 ini perlu ditambahkan
beberapa kapasitor untuk menunjang fungsinya sebagai pengubah level tegangan.
Koneksi dan besarnya kapasitor disesuaikan sesuai dengan .
Koneksi antara MAX232, mikrokontroler, dan PC ditunjukkan pada gambar 3.3. !" # $ !" !" !" !"
! Koneksi MAX232, mikrokontroler, dan PC
24 $
Arus yang dihasilkan oleh mikrokontroler melalui keluaran dari pin,pin
port 0 sebesar maksimal 15 mA, belum mencukupi untuk menggerakkan motor
DC yang membutuhkan arus rata,rata sebesar 185mA. Untuk itu diperlukan suatu
komponen penggerak motor DC yang mampu memenuhi kebutuhan besar arus
yang semestinya dapat menggerakkan motor DC tersebut. Untuk itu digunakan
suatu motor DC motor DC yang digunakan disini adalah IC L293D. IC inimampu menggerakkan suatu motor DC dengan arus keluaran mencapai level
maksimum 1,2 A. dan hanya dengan masukan arus input minimum 0,1 mA untuk
masukan nilai tinggi ( ). Arus ini masih dibawah nilai arus keluaran dari
mikrokontroler. Semua nilai,nilai tersebut terdapat pada masing,
masing komponen.Motor DC akan berputar searah jarum jam apabila sebelumnya masukan
1 ( ) pada mendapat logika tinggi (H) dan masukan 2 ( ) mendapat
masukan berupa logika rendah (L) dari mikrokontroler. Sedangkan untuk putaran
berlawanan jarum jam, terjadi hal yang sebaliknya. mendapat masukan
rendah dan mendapat masukan tinggi. Dari kedua kondisi tersebut, pada driver harus terlebih mendapat masukan tinggi dari mikrokontroler.Koneksi antara mikrokontroler, motor DC, dan motor DC ditunjukkan oleh gambar 3.4.
25
#&
#&
& ! & ! & ! & ' ! ' '%
! % Koneksi Mikrokontroler, L293D, dan Motor DC % $ & & & &
Sensor posisi di sini yang digunakan adalah . Dengan posisi awal (default) dari model rumah pintar tersebut menghadap utara. Sensor mempunyai arus maksimal sampai 1 A. Namun pada perancangan ini
menggunakan arus sebesar 10mA agar arus yang mengalir tidak melebihi batas
arus maksimal dan mampu mampu mengalir pada mikrokontroler.
! ' Rangkaian
Cara kerja dari rangkaian pengaman jendela adalah yang bersifat seperti saklar saat didekatkan pada medan magnet maka dalam kondisi ON sedangkan saat jauh dari efek medan magnet, makadalam kondisi OFF. Dari kondisi ini maka pada pemasangannya
diletakan sesuai dengan arah,arah rumah yang diinginkan (8 arah mataangin), jadi yang digunakan berjumlah 8 buah. Sedangkan magnet
akan ikut berputar sesuai dengan putaran rumah. Dari kondisi tersebut, apabila
26
magnet yang berputar mendekati salah satu dari dari maka arus akan
mengalir melalui tersebut yang kemudian akan memberikan referensi
kepada mikrokontroler tentang posisi sensor yang ON.' $ ( Selain Perancangan koneksi,koneksi mikrokontroler dengan perangkat
yang lain. Juga dijelaskan perancangan mikrokontroler tersebut sendiri.
Mikrokontroler juga membutuhkan adanya osilator dan adanya rangkaian reset
yang digunakan untuk menset kembali mikrokontroler ke keadaan semula.' )& Mikrokontroler mempunyai rangkaian osilator internal ( ) yang merupakan sumber ! bagi CPU. Untuk dapat menggunakan rangkaian osilator dalam chip, ditambahkan 1 buah kristal dan 2 buah kapasitor pada pin XTAL dan pin XTAL2 (pin 18 dan 19)
[1] . Rangkaian ini menggunakan kristal 12 MHz dan 2 buah kapasitor 30 pF sehingga frekuensi detak pada CPU adalah 12 MHz.
() *" *" + + % % +# %#, # , , , , , , , , , , , , , , , ,- , , , , , , , , , ! * Rangkaian Osilator
* )
10 * 10 ( 100 10 * Cara kerja reset ini adalah bila saklar reset ditekan makaaliran arus mengalir dari Vcc melalui resistor 1kD menuju kaki reset:
54 ,
4 ) ) 10 (
10 *
, , , , , , , ,
, , ,- ,
, , , ,
, , , , , , , ,
3 9 =
3
3
10 (
10 * 1 ( ) 5 * 10 *
) 10 /(
10 *
( 100 10 *3 10 * 10 )
6
3
6
3
= − − − −
[1] . Waktu reset tersebut
dihitung dengan rumus T=RC. Waktu reset 100ms dengan C=10uF
maka resistansi: = =27 ' " & Rangkaian ini digunakan untuk mereset mikrokontroler
pada saat catu daya dihidupkan. Keadaan reset pada mikrokontroler
diperoleh apabila pin reset diberi logika tinggi- = " .
!" / /
- ! + Rangkaian Reset
- % % +# %#, # ,
28 $ *
Mikrokontroler dapat bekerja bila dimasukkan instruksi,instruksi yang
diprogramkan. Program dalam perancangan ini terdiri dari bagian program utama
dan program sub rutin penggerak motor DC. Program utama adalah program
rutin yang mencakup seluruh kerja dari program. Mulai dari komunikasi dengan
PC sampai dengan bergeraknya motor DC. Sedangkan sub rutin penggerak
motor DC mencakup pengolahan data dari PC sampai pada keputusan,keputusan
dari mikrokontroler yang harus diambil tentang berputarnya motor DC., ( * .
! - Diagram Alir Utama Perangkat Lunak Pada Mikrokontroler
29 Rutin utama perangkat lunak pada mikrokontroler akan
menginisialisasi fasilitas,fasilitas yang akan digunakan pada
mikrokontroler. Mikrokontroler akan memulai rutin untuk transfer data
secara serial dari komputer ke mikrokontroler. Setelah transfer selesai,
data tersebut akan diolah oleh mikrokontroler yang selanjutnya
digunakan untuk menggerakkan motor DC.Diagram alir rutin utama perangkat lunak pada mikrokontroler ditunjukkan pada gambar 3.8
- " # ! ( Sub rutin penggerak ini diawali dengan inisialisasi
komunikasi serial antara PC dan mikrokontroler. Pada komunikasi serial
ini terlebih dahulu harus diatur dua hal terlebih dahulu. Yaitu
menentukan mode serial yang akan digunakan dan menentukan . Penentuan mode serial dilakukan dengan mengisi register SCON.
Pada perancangan ini mode serial yang digunakan adalah mode 1. yaitu
menggunakan 8 UART dengan yang dapat diatur.Pada mode ini, komunikasi data dilakukan secara 8 bit data
asinkron, yang terdiri dari 10 bit. Yaitu 1 bit start, 8 bit data, dan 1 bit
stop. # pada mode ini dapat diatur dengan menggunakan
1. Port 3.0 pada mikrokontroler berfungsi sebagai RxD, yaitu port untuk
menerima data serial, dan port 3.1 berfungsi sebagai TxD, yaitu port
untuk mengirim data.30 Untuk pengaturan port serial, yakni dengan
mengubah bit SMOD yang terletak pada register PCON menjadi logika
tinggi. Penghitungan dapat dihitung sebagai berikut:1 # _ =
1 _
- _
32 Jika diinginkan 2400bps, 1 harus diatur
1
agar setiap detik. Timer setiap kali TH1
- 2400
32
mencapai nilai limpahan dengan frekuensi sebesar f /1,0592 atau
oscperiode sebesar 11,0592/f . Dari sini akan diperoleh rumus sebagai
osc berikut: 11 . * 0592 ( 2561 )
1 − $%
=
- 2400
32 $% 1 256 244 = − ≅
11 . 0592 32 240 * *
3 Dengan frekuensi osilator sebesar 11,0592*10 Hz, maka TH1 adalah 244 atau 0F4H.
Selanjutnya data yang telah tersimpan di akumulator akan
diambil untuk selanjutnya diolah. Kemudian data yang telah diambil
tersebut akan dibandingkan. Disini data dari PC yang telah tersimpan di
akumulator adalah data berupa nilai heksadesimal yang mewakili arah
mata angin. Sebagai contoh arah utara terwakili oleh nilai 46H. Dan
untuk arah mata angin yang lain dapat dilihat pada tabel 3.1.31 !
Arah Mata Angin dan Nilai Heksadesimalnya
01 0 0 &23&
3403 5(6/'076'38049 0 0 (
38! %0! ( 38! (
6&220 0 (
- 640 0& ( $0 0 0:0 $(
$0 0 ( $0 0 %0! (
Selanjutnya jika sudah terdefinisi data yang masuk, akan
dicek dimanakah letak/posisi dari motor DC atau arah rumah tersebut
menghadap. Pengecekan dilakukan dengan melihat isi dari port 0. Port 0
merupakan port yang digunakan sebagai port masukan dari sensor
posisi. yang memberi masukan on, akan memberikan
masukan berupa logika tinggi (1) kepada mikrokontroler. Sedangkan
yang off akan memberi masukan berupa logika rendah (0).Sehingga dari kedelapan arah mata angin yang ada akan memberikan
input masing,masing yang membentuk data 8 bit pada port 0. Arah mata
angin, nilai binernya, dan nilai heksadesimalnya dapat dilihat pada tabel
3.2.! " Arah mata angin, Nilai Biner, dan Nilai Heksadesimalnya
01 0 0 &23& $3&6 5 ;3 9 (6/'076'3804 0 0 ( 38! %0! (
38! ( 6&220 0 (
- 640 0& ( $0 0 0:0 (
$0 0 ( $0 0 %0! (
32 Setelah didapat posisi rumah pada saat itu, kemudian
motor DC akan digerakkan ke posisi yang diinginkan. Sebelum itu,
diberikan terlebih dahulu perintah untuk mengaktifkan driver motor DC
lewat &nya. Perintah tersebut dilakukan dengan memberi logika
tinggi ( ) pada port P1.2 yang merupakan output mikrokontroler ke
motor DC pada pin . Arah putaran dari motor DCdisesuaikan dengan posisi rumah sebelumnya. Apabila arah putaran
yang diinginkan sesuai dengan arah jarum jam, maka port P1.0 yang
harus di, . Sedangkan arah putaran yang berlawanan dengan jarum
jam, maka port P1.1 yang harus di, .Jika arah putaran motor DC telah terlaksana, maka langkah
selanjutnya adalah mengatur agar motor berhenti pada posisi yang
diinginkan. Caranya adalah dengan mengecek port masukan dari sensor
(port 0), apakah port telah menunjukkan nilai yang diinginkan. Jika
belum, maka motor akan tetap berputar sampai posisi yang diinginkan
tercapai.Diagram alir rutin penggerak motor DC ditunjukkan oleh
gambar 3.11. Pada diagram alir tersebut, hanya mewakili proses pengecekan dan pemutaran motor DC ke arah utara saja. Untuk ke arah
lain, terwakili oleh percabangan ke arah titik,titik (percabangan untuk
data 47H, 48H, 49H, dan seterusnya sampai yang terakhir 4DH) dan
hanya tinggal mengganti isi data dan isi port saja.33
! . Diagram alir Penggerak Motor DC dari penyimpanan di Register
SBUF sampai ke pengambilan data ke Akumulator)
!" # $%& ' (
- $ (
- "
- $ (
'!
! " !" #
" ! ! $ !!# # !
,
- ))./!0 *
- $ (
- 0
-)) *
- ))
! 0 "
- "
1 )
)
'2 !
- &
%& %%& %& %%& ! ' ( #
( " ( $ # "
) "* + + # "
- " # !$#
3 3 $ ( " * " $ ( "
- &!4 0 " "
- $ ( &
- &+'
1
3 3 $ ( 3 * &&! 0 " * ) " *
+ +!+ 0 " " & )
"
3 " &
- 2&4 0 5 + !&' 0
5
'4
6
- &
- &
1
5
5 ) " # ! $ %
7 ) $ ( $ ( !"
1
88
- ' "
9
, * - .
.
. .
. ' . / 1 -
2 /
' % )
3 : , 3 )
1
- 3 $ " &(
1
- 3 +!
7
1 % $
(1
6 )
'
3 ! "* $ 5 5( 6
3
7
- && ! :
- && ! , $ ( , $ ( )
7
3 ) 1 ;
3 )
- ' # 6 ) ,
7 3 )
- 1 ) " * 1 ' ) $ (
- 4 !
! " # $ % &
" & ' ( (
! " # $% &
* ' % ()
" # % +
- ,-.. / %/ 0)( 1
- 1 ,-.. %% / 2 ' -
- ! ,-.. %% / 3 ('4
- 5 ,-.. %% - / ) ,-.. / , / . . %
6
! ! "+ , ! ! - ! ! ! ! ! ! ! ! ! ! ! $ ! $ "+ , - ! ! "+ , ' " ! ! " ! " ! " $ * $ ! " ! ! + ! ! ! "+ , + " ! # ! - ! ! ' % % * '()
- #
& &
- $ % + , - . /
- %
- 5 ;
- <
- )
- )
- ) 58 34 3 9 >
- :
- (
- #
99
9
9 ) 5
? ?
) +:
5
2
58
3
34
3
9
9 >
: % ; 9 9
2 : : % ; 55@ :
2
93
< =: 7 3 9>
5 8 5 9 % 2 3 %
9 :
! "#$ % && ' $( )
$ % 1
2 34 ) % 3 '
2 34 % )
2
5 34 ) % 6+70
8
2 34 %
9 ) $ 5 ; 9 % &&
9 #
2 34 %
9
2 34 %
9 % ; ; %
9 5 9 % 8 % ;'3 5 9 %
9 ' : 5 ;
3
- :$
- $
- #
3 5 >
9
3
34
58
9 <*
9 <*
5
8
34
2 <# <# % ; 5@
58
3 ) <
2
' <
2 #< #< % ; 5@
#$ % ; 9 9
9 9 % , >
3
34
8 9 % > <( % ; 9 9
2
9 #+
2
2
5 ) :
9 ') ' '* ' 58 34 ' 3 ; ; ; ) +
5
8
34 3 ' 5 > ' ) '
58
3 '
2 ' $ ' ' $ % ; 5@ ' <
3
3 ) 9 % ' : % ; 9 9
8
9
9 ) )
5
8
3 5 > '
34
58
58
9 #+
3
2
9 ' (( 58 34 ) 3
9 ((
5
8
3 5 > (*
34
58
3 (
2 ( ( % ; 55@ (
2
9 9 > ( % ; 9 9
3
34
58
9
9 ) :$
5
8
' :+
9 9 > ) (< % ; 9 9
$ % ; 55@ $
5
3
8
3 5 > #'
34
58
3 #
2
2 ' # ) # % ; 55@
9 9 > $# % ; 9 9
34
2
58
9 $:
9 $:
5
8
3 5 > $)
34
58
3 $
- <
- ) 58 34)
- (
- < % ;
- % ;
- 2
- 58
- )
- ' :
- ) : 58 34 ) 3
- # % ;
- 9
- 58
- < % ;
- 9
- 58
- 58
- ''
58
34
3
8
34
3
9 ( % ; #
' # % ; )
2
3
34
3
8 )
9 )
34
58
3
9
8 : % ; $ $ % ; <
2
3 ' '
58
34
3 ) '
8
9
8 '' 58 34) 3 ) '+ % ; '( ' '( % ; '#
2
3 )
58
3
9 ' $ % ; ) <
2
3
) $
58
34
3
9 ) % ; ) ) % ; )
2
3 )'
58
34
3 )) *
8 )* (
9
58
34
9
3
3
34
3
8
9
9
% ;
2
3
58
34
3 '
8
34
34 3 ' ) )
- )
- % ;
- )
- :
- :
- # % ;
- % ;
- 2
- 58
- 58 34 ) 3
- $ % ;
- <
- < % ; :
8 ' ()
2
9 ' (: % ; '' ($ ') ($ % ; '* (<
3
34
58
9 ' ()
3 ' (
58
34
58
3 ' (
2
9 ) :( % ;
3
3 ) $
34
58
3 )) #
8
9
8
3 )* #
34
58
2
3 ) $
8 ) $+ % ; ) $( ) $( % ; )' $#
9
3
34
58
9 ) $'
8 ) $'
34
9 ' :*
3 )
34
58
3 ) *
2
' *
9 )< % ;
3
58
3
3 )(
2
5 )+
) 58 34 ) 3 )*
8
' )
34
8
8 :*
9
3 :
34
58
3 :
2
9
8 ) ++
9
3 ' +'
34
3
9
3
34
58
- :# ' :# % ; ' (
- #
- # 58 34)
- #* % ;
- #: '
- #: % ;
- #$
- #<
- ' < )
- ) <
- 58 34 ) 3
- 9
- 58
- 58
- : % ;
- ( % ;
- % ; :
9 ) )
58
34
3
9
$ $ % ;
<
2
3 58 34 ) 3
8 '
9 '
58
34
3
9 ' + % ; ) (
#
2
3 58 34 ) 3
8
9
58
34
3
9
8
' : % ; ) $
2
8 ' )
2
3 58 34 ) 3
' % ; )
2
3
58
34 3 '
8 < < 58 34 * 3 <)
5 <*
2
3 <:
58
34
3
9 <# % ;
2
9 ( % ; # # % ;
3
'
8
34
3
9 $ % ;
< < % ;
2
3 ' 58 34 ) 3 )
8
9
34
3
3