TUGAS AKHIR
ELISA SIMATUPANG
052408089
Diluluskan di
Medan, Juli 2008
Diketahui oleh
Departemen Fisika FMIPA USU Pembimbing
Ketua Program Studi
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
ELISA SIMATUPANG
052408089
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa yang telah
memberikan anugerah-Nya sehingga penulisan Tugas Akhir ini dapat diselesaikan
dalam waktu yang telah ditentukan.
Ucapan terima kasih saya sampaikan kepada Bapak Dr. Marhaposan
Situmorang selaku Dosen Pembimbing pada penyelesaian tugas akhir ini yang telah
memberikan panduan dan penuh kepercayaan kepada saya untuk menyempurnakan
tugas akhir ini. Panduan ringkas, padat dan profesional telah diberikan kepada saya
agar dapat menyelesaikan tugas akhir ini. Ucapan terima kasih juga ditujukan kepada
ketua dan sektetaris program studi Bapak Drs. Syahrul Humaidi, Msc dan Ibu Dra.
Justinon,Msi., Dekan dan Pembantu Dekan Fakultas Matematika dan Ilmu
Pengetahuan Alam Universitas Sumatera Utara, semua dosen pada Departemen Fisika
FMIPA USU, dan kawan-kawan stambuk 2005 atas segala bantuan dan motivasinya
sehingga penulis dapat menyelesaikan Tugas Akhir ini dengan baik. Terimakasih juga
saya ucapkan teristimewa kepada Ibunda tercinta M. br Pasaribu, abang dan adek
penulis yang telah banyak memberikan bantuan, dukungan, dan doa sehingga penulis
dapat menyelesaikan Tugas Akhir ini. Semoga Tuhan memberkati.
Pada perancangan alat simulasi jembatan angkat otomatis ini terdapat 10 blok
rangkaian utama. Sensor yang digunakan adalah 2 buah photodioda dan pemancar
inframerah. Sensor 1 berfungsi untuk mendeteksi kapal yang akan melewati jembatan.
Sensor 2 berfungsi untuk memberitahukan kepada mikorokontroller bahwa kapal telah
melewati jembatan. Output dari sensor akan dikuatkan kembali oleh penguat sinyal
sebelum masuk ke mikrokontroller. Hasil penguatan sensor yang telah diolah oleh
penguat sinyal inilah yang akan di kirimkan oleh mikrokontroller.
Mikrokontroller AT89S51 yang merupakan otak dari keseluruhan system
berfungsi untuk mengolah semua data yang masuk. Driver motor stepper berfungsi
untuk mengendalikan motor stepper. Motor steper digunakan untuk mengangkat
jembatan dan menutup palang jalan. Alarm berfungsi untuk memberitahukan bahwa
kapal sedang melewati jembatan. Pada perancangan program simulasi jembatan
angkat berbasis mikrokontroller AT9S51 ini, Program ditulis atau dibuat dengan
menggunakan bahasa assembler.
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
Daftar Isi vi
Daftar gambar viii
Daftar tabel ix
Bab 1 Pendahuluan 1
1.1 Latar Belakang Masalah 1
1.2 Rumusan Masalah 2
1.3 Tujuan Penulisan 3
1.4 Sistematika Penulisan 4
Daftar Pustaka 53
Pada perancangan alat simulasi jembatan angkat otomatis ini terdapat 10 blok
rangkaian utama. Sensor yang digunakan adalah 2 buah photodioda dan pemancar
inframerah. Sensor 1 berfungsi untuk mendeteksi kapal yang akan melewati jembatan.
Sensor 2 berfungsi untuk memberitahukan kepada mikorokontroller bahwa kapal telah
melewati jembatan. Output dari sensor akan dikuatkan kembali oleh penguat sinyal
sebelum masuk ke mikrokontroller. Hasil penguatan sensor yang telah diolah oleh
penguat sinyal inilah yang akan di kirimkan oleh mikrokontroller.
Mikrokontroller AT89S51 yang merupakan otak dari keseluruhan system
berfungsi untuk mengolah semua data yang masuk. Driver motor stepper berfungsi
untuk mengendalikan motor stepper. Motor steper digunakan untuk mengangkat
jembatan dan menutup palang jalan. Alarm berfungsi untuk memberitahukan bahwa
kapal sedang melewati jembatan. Pada perancangan program simulasi jembatan
angkat berbasis mikrokontroller AT9S51 ini, Program ditulis atau dibuat dengan
menggunakan bahasa assembler.
PENDAHULUAN
Kebutuhan manusia terhadap peralatan yang cerdas dan dapat bekerja secara otomatis
semakin meningkat. Selain sistem kerjanya yang teliti juga peralatan ini tidak perlu
dipantau setiap saat sebab peralatan otomatis dapat melakukan pekerjaannya sendiri
yang manual, maka satu peralatan harus dikendalikan oleh satu orang, ini sangatlah
tidak efisien. Berbeda dengan peralatan otomatis, dimana satu orang dapat
sedikit untuk memantau peralatan tersebut, apakah bekerja dengan benar atau tidak.
Sebagai contoh, Salah satu peralatan otomatis yang sudah mulai banyak
digunakan adalah pintu otomatis. Pintu otomatis ini banyak digunakan di plaza-plaza,
mal-mal dan pusat-pusat perbelanjaan lainnya. Pintu otomatis tersebut akan terbuka
jika ada orang yang akan masuk/keluar dari pintu tersebut, dan pintu akan menutup
sendiri secara otomatis, jika dalam beberapa menit tidak ada orang yang akan
Dengan demikian dengan menerapkan prinsip kerja dari pintu otomatis di atas kita
juga dapat membuat sebuah jembatan yang dapat membuka dan menutup secara
terbuka secara otomatis apabila ada kapal yang lewat dibawahnya hal ini dilakukan
Berdasarkan uraian yang terdapat dalam latar belakang di atas, maka dalam tugas
akhir ini akan dibuat sebuah simulasi jembatan angkat yang dapat membuka dan
menutup sendiri secara otomatis. Jika ada kapal yang akan lewat melaui jembatan
tersebut maka jembatan akan membuka secara otomatis dan akan menutup kembali
Pada alat ini akan digunakan sebuah mikrokontroler AT89S51, sebuah motor,
dua buah sensor gerak dan rangkaian penguat sinyal. Mikrokontroler AT89S51
sebagai otak dari system yang berfungsi menerima sinyal dari sensor gerak dan
adalah motor stepper yang dapat diatur perputarannya (dapat berputar kekanan/kekiri)
menutup palang jalan. Sensor gerak yang akan digunakan adalah dua buah pemancar
ada kapal yang melintas di depannya, maka pancaran sinar infra merah ke photodioda
akan terputus. pancaran dari sinar infra merah yang diterima oleh potodioda akan di
olah oleh rangkaian penguat sinyal sehingga menghasilkan sinyal high (1) atau dan
jika pancaran infra merah terputus maka penguat sinyal akan menghasilkan sinyal low
(0) dan kemudian sinyal ini akan dikirimkan ke mikrokontroler. Sinyal sinyal yng
dikirimkan oleh penguat sinyal inilah yang digunakan untuk mendeteksi keberadaan
Adapun tujuan penulisan tugas akhir ini adalah membuat sebuah simulasi jembatan
otomatis yang dapat membuka dan menutup sendiri secara otomatis, jika ada kapal
yang akan melewati jembatan tersebut dan akan menutup sendiri secara otomatis jika
1. Studi cara kerja rangkaian yang meliputi diagram blok dan menguraikan
tersebut
buah sensor gerak yang satu akan ditempatkan di sebelah kanan sisi
jembatan dan yang satunya lagi akan ditempatkan di kiri sisi jembatan
BAB 1. PENDAHULUAN
Dalam bab ini berisikan mengenai latar belakang, tujuan penulisan, batasan
Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang digunakan
untuk pembahasan dan cara kerja dari rangkaian Teori pendukung itu antara lain
digunakan, serta cara kerja dari pemancar infra merah, cara kerja potodioda dan
rangkaian penerimanya.
pembahasan yang dilakukan dari tugas akhir ini serta saran apakah
yang sama.
LANDASAN TEORI
hadir memenuhi kebutuhan pasar (market need) dan teknologi baru. Sebagai teknologi
baru, yaitu teknologi semikonduktor dengan kandungan transistor yang lebih banyak
namun hanya membutuhkan ruang kecil serta dapat diproduksi secara massal (dalam
Sebagai kebutuhan pasar, mikrokontroler hadir untuk memenuhi selera industri dan
para konsumen akan kebutuhan dan keinginan alat-alat bantu dan mainan yang lebih
canggih.
penggunaan mikrokontroler adalah aplikasi mesin tiket dalam arena permainan yang
saat ini terkenal di Indonesia. Jika kita sudah selesai bermain, maka akan diberikan
suatu nilai, nilai inilah yang menentukan berapa jumlah tiket yang bisa diperoleh dan
jika dikumpulkan dapat ditukar dengan berbagai macam hadiah. Sistem tiket ini
bersangkutan.
Selain system tiket, kita juga dapat menjumpai aplikasi mikrokontroler dalam
bidang pengukuran jarak jauh atau yang dikenal dengan system telemetri. Misalnya
pengukuran disuatu tempat yang membahayakan manusia, maka akan lebih nyaman
jika dipasang suatu system pengukuran yang bisa mengirimkan data lewat pemancar
dan diterima oleh stasiun pengamatan dari jarak yang cukup aman dari sumbernya.
Sistem pengukuran jarak jauh ini jelas membutuhkan suatu system akuisisi data
sekaligus system pengiriman data secara serial (melalui pemancar), yang semuanya itu
program aplikasi (misalnya pengolah kata, pengolah angka dan lain sebagainya),
mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan
lainnya terletak pada perbandingan RAM-nya dan ROM. Pada system computer
disimpan dalam ruang RAM yang relative besar, sedangkan rutin-rutin antarmuka
perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada
control disimpan dalam ROM (bisa Masked ROM atau Flash PEROM) yang
kristal serta catu daya 5 Volt. Kapasitor 10 mikro-Farad dan resistor 1 Kilo Ohm
dipakai untuk membentuk rangkaian reset. Dengan adanya rangkaian reset ini
AT89S51 otomatis direset begitu rangkaian menerima catu daya. Kristal dengan
mikrokontroler.
Read Only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan
Random Access Memori (RAM) isinya akan sirna begitu IC kehilangan catu
daya, dipakai untuk menyimpan data pada saat progam bekerja. RAM yang dipakai
Ada berbagai jenis ROM. Untuk mikrokontroler dengan progam yang sudah
baku dan diproduksi secara masal, progam diisikan ke dalam ROM pada saat IC
mengunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang
Violet Eraseable Progamble ROM) yang kemudian dinilai mahal dan ditinggalkan
Jenis memori yang dipakai untuk Memori Program AT89S51 adalah Flash
Memori Data yang disediakan dalam chip AT89S51 sebesar 128 byte,
meskipun hanya kecil saja tapi untuk banyak keperluan memori kapasitas itu sudah
cukup.
yang biasa dipakai untuk komunikasi data secara seri. Jalur untuk komunikasi data
seri (RXD dan TXD) diletakan berhimpitan dengan P1.0 dan P1.1 di kaki nomor 2 dan
3, sehingga kalau sarana input/ouput yang bekerja menurut fungsi waktu. Clock
penggerak untaian pencacah ini bisa berasal dari oscillator kristal atau clock yang
diumpan dari luar lewat T0 dan T1. T0 dan T1 berhimpitan dengan P3.4 dan P3.5,
sehingga P3.4 dan P3.5 tidak bisa dipakai untuk jalur input/ouput parelel kalau T0 dan
T1 dipakai.
adalah sinyal interupsi yang diumpankan ke kaki INT0 dan INT1. Kedua kaki ini
berhimpitan dengan P3.2 dan P3.3 sehingga tidak bisa dipakai sebagai jalur
input/output parelel kalau INT0 dan INT1 dipakai untuk menerima sinyal interupsi.
Port1 dan 2, UART, Timer 0,Timer 1 dan sarana lainnya merupakan register
yang secara fisik merupakan RAM khusus, yang ditempatkan di Special Functoin
Regeister (SFR).
Sekumpulan SFR atau Special Function Register yang terdapat pada Mikrokontroler
Atmel Keluarga 51 ditunjukan pada tabel 2.1, pada bagian sisi kiri dan kanan
Tidak semua alamat pada SFR digunakan, alamat-alamat yang tidak digunakan
yang tidak terpakai tersebut akan menghasilkan data acak dan penulisannya tidak
non-aktif dari bit-bit baru ini akan selalu O dan nilai aktifnya adalah 1 . Berikut
F8 FF
F0 B F7
E8 EF
E0 ACC E7
D8 DF
D0 PSW D7
C8 (T2CON) (T2MOD) (RCAP2L) (RCAP2H) (TL2) (TH2) CF
C0 C7
B8 IP BF
B0 P3 B7
A8 IE AF
A0 P2 A7
98 SCON SBUF 9F
90 P1 97
88 TCON TMOD TLO TL1 THO TH1 8F
80 PO SP DPL DPH PCON 87
Tabel 2.1. Peta Register Fungsi Khusus SFR (Special Function Register)
Tanda ( ) untuk SFR yang dijumpai di keluarga 51 dengan 3 Timer
Akumulator
ACC atau akumulator yang menempati lokasi E 0h digunakan sebagai register untuk
A (bukan ACC).
Register B
instruksi lain dapat diperlakukan sebagai register scratch pad ( papan coret-coret ).
Register SP atau Stack Pointer (lokasi 8 0h) merupakan register dengan panjang 8-bit,
digunakan dalam proses simpan menggunakan instruksi PUSH dan CALL. Walau
Stack bisa menempati lokasi dimana saja dalam RAM, register SP akan selalu
diinisialisasi ke 07h setelah adanya reset, hal ini menyebabkan stack berawal di lokasi
08h.
Data Pointer
Register Data Pointer atau DPTR mengandung DPTR untuk byte tinggi (DPH) dan
byte rendah (DPL) yang masing-masing berada dilokasi 83h dan 82h, bersama-sama
sebagai register 16-bit atau ditulis dari/ke port, untuk masing-masing Port 0,Port 1,
SBUF atau Serial Data Buffer (lokasi 99h) sebenarnya terdiri dari dua register yang
terpisah, yaitu register penyangga pengirim (transmit buffer) dan penyangga penerima
(receive buffer). Pada saat data disalin ke SBUF, maka data sesungguhnya dikirim ke
penyangga pengirim dan sekaligus mengawali transmisi data serial. Sedangkan pada
saat data disalin dari SBUF, maka sebenarnya data tersebut berasal dari penyangga
penerima.
Pasangan register (TH0, TL0) dilokasi 8Ch dan 8Ah,(TH1, TL1) dilokasi 8Dh dan
8Bh serta (TH2, TL2) dilokasi CDh dan CCH merupakan register-register pencacah
Capture Register
Pasangan register (RCAP2H, RCAP21) yang menempati lokasi CBh dan CAh
merupakan register capture untuk mode Timer 2 capture. Pada mode ini, sebagai
tanggapan terjadinya suatu transisi sinyal di kaki (pin) T2EX (pada AT89C52/55),
TH2 dan TL2 disalin masing-masing ke RCAP2H dan RCAP2L. Timer 2 juga
Control Register
Register-register IP, IE, TMOD, TCON, T2CON, T2MOD, SCON dan PCON berisi
bit-bit control dan status untuk system interupsi, pencacah/pewaktu dan port serial.
32 jalur I/O
Suplai tegangan
Ground
Port 0 dapat berfungsi sebagai I/O biasa, low order multiplex address/data ataupun
penerima kode byte pada saat flash progamming Pada fungsi sebagai I/O biasa port ini
dapat memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai
multiplex address/data, por ini akan mempunyai internal pull up. Pada saat flash
progamming diperlukan eksternal pull up, terutama pada saat verifikasi program.
Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat mengakses
memori secara 16 bit. Pada saat mengakses memori 8 bit, port ini akan mengeluarkan
isi dari P2 special function register. Port ini mempunyai internal pull up dan berfungsi
sebagai input dengan memberikan logika 1. Sebagai output, port ini dapat
Port 3 merupakan 8 bit port I/O dua arah dengan internal pullup. Port 3 juga
RST (pin 9)
Address latch Enable adalah pulsa output untuk me-latch byte bawah dari alamat
selama mengakses memori eksternal. Selain itu, sebagai pulsa input progam (PROG)
EA (pin 31)
Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan
menjalankan progam yang ada pada memori eksternal setelah sistem direset. Jika
kondisi high, pin ini akan berfungsi untuk menjalankan progam yang ada pada
memori internal. Pada saat flash progamming, pin ini akan mendapat tegangan 12
Volt.
apabila dikehendaki jumlah putaran yang tepat atau di perlukan sebagian dari putaran
motor. Suatu contoh dapat di jumpai pada disk drive, untuk proses pembacaan
tempat yang tepat di atas jalur atau track pada cakram, untuk head tersebut di
industri atau untuk jenis motor langkah kecil dapat di gunakan dalam perancangan
suatu alat mekatronik atau robot. Motor langkah berukuran besar digunakan,
pengeboran, dalam hal ini di lakukan oleh sebuah robot yang memerlukan ketepatan
(stepper). A
B
C
U D
kumparan stator dialiri arus sedemikian rupa, maka akan timbul medan magnet dan
rotor akan berputar mengikuti medan magnet tersebut. Setiap pengalihan arus ke
sudut tertentu, biasanya informasi besar sudut putar tertulis pada badan motor langkah
motor.Jika pengalihan arus di tentukan, maka rotor akan berhenti pada posisi terakhir.
Jika kecepatan pengalihan tidak terlalu tinggi, maka slip akan dapat dihindari.
Sehingga tidak di perlukan umpan balik (feedback) pada pengendalian motor langkah.
Motor langkah yang akan di gunakan memiliki 4 fase (pole atau kutub),
Pada saat yang sama ,untuk tiap motor langkah, tidak boleh ada 2 (dua)
masukan atau lebih yang mengandung pulsa sama dengan 1 (high), atau dengan kata
lain, pada suatu saat hanya sebuah masukan yang bernilai 1 (satu) sedangkan lainnya
bernilai 0 (nol).
Pengertian : piranti semikonduktor dengan struktur p-n atau p-i-n untuk mendeteksi
lapisan intrinsik antara lapisan n dan p. Piranti yang memiliki lapisan intrinsik disebut
p-i-n atai PIN potodioda. Cahaya diserap di daerah penyambungan atau daerah
Mode operasi
tenaga cahaya ini sedikit tidak linier, dan range perubahannya sangat kecil.
revers (tegangan balik) dari sebuah dioda (yaitu tegangan pada arah tersebut
pada dioda tidak akan menhantarkan tanpa terkena cahaya) dan pengukuran
menghasilkan arus poto ( hal ini juga bagus untuk mengaplikasikan tegangan
mendekati nol). Ketergantungan arus poto pada kekuatan cahaya dapat sangat
linier .
1. Silikon (Si) : arus lemah saat gelap, kecepatan tinggi, sensitivitas yang bagus
antara 400 nm sampai 1000 nm ( terbaik antara 800 sampai 900 nm).
3. Indium Gallium Arsenida (InGaAs): mahal, arus kecil saat gelap, kecepatan
tinggi sensitivitas baik pada jarak 800 sampai 1700nm (terbaik antara 1300
sampai 1600nm)
LED adalah dioda yang menghasilkan cahaya saat diberi energi listrik. Dalam bias
maju sambungan p-n terdapat rekombinasi antara elektron bebas dan lubang (hole).
Energi ini tidak seluruhnya diubah kedalam bentuk energi cahaya atau photon
terhadap suatu bahan disebut dengan sifat elektroluminesensi. Material lain misalnya
Galium Arsenida Pospat (GaAsP) atau Galium Pospat (GaP): photon energi cahaya
dipancarkan untuk menghasilkan cahaya tampak. Jenis lain dari LED digunakan untuk
menghasilkan energi tidak tampak seperti yang dipancarkan oleh pemancar laser atau
inframerah.
VCC VCC
5V 5V
330 330
Pemancar inframerah adalah dioda solid state yang terbuat dari bahan Galium
Arsenida (GaAs) yang mampu memancarkan fluks cahaya ketika dioda ini dibias
maju. Bila diberi bias maju elektron dari daerah-n akan menutup lubang elektron yang
ada didaerah-p. Selama proses rekombinasi ini, energi dipancar keluar dari permukaan
p dan n dalam bentuk photon. Photon-photon yang dihasilkan ini ada yang diserap lagi
adalah bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi pada
bahasa ini hanya ada 51 instruksi. Dari 51 instruksi, yang sering digunakan orang
1. Instruksi MOV
Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register
MOV R0,#20h
MOV 20h,#80h
...........
............
MOV R0,20h
Perintah di atas berarti : isikan nilai yang terdapat pada alamat 20
alamat.
MOV R0,#80h
Loop: ...........
............
DJNZ R0,Loop
............
R0 -1, jika belum 0 lompat ke loop, jika R0 = 0 maka program akan
3. Instruksi ACALL
.............
ACALL TUNDA
.............
TUNDA:
.................
4. Instruksi RET
ACALL TUNDA
.............
TUNDA:
.................
RET
Loop:
.................
..............
JMP Loop
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
Loop:
JB P1.0,Loop
.................
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
Loop:
JNB P1.0,Loop
.................
Loop:
................
CJNE R0,#20h,Loop
................
sebuah editor, yaitu 8051 Editor, Assembler, Simulator (IDE). Tampilannya seperti di
bawah ini.
(di-compile). Pada saat di-assemble akan tampil pesan peringatan dan kesalahan. Jika
masih ada kesalahan atau peringatan, itu berarti ada kesalahan dalam penulisan
perintah atau ada nama subrutin yang sama, sehingga harus diperbaiki terlebih dahulu
Software 8051IDE ini berfungsi untuk merubah program yang kita tuliskan ke
dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat peng-compile-an.
software ISP- Flash Programmer 3.0a yang dapat didownload dari internet.
file heksadesimal dari hasil kompilasi 8051IDE, kemudian klik Write untuk
Pengujian pada bagian rangkaian power supplay ini dapat dilakukan dengan mengukur
tegangan keluaran dari rangkaian ini dengan menggunakan voltmeter digital. Dari
hasil pengujian diperoleh tegangan keluaran sebesar + 5,1 volt.dan +12,2 volt
Mikrokontroler AT89S51 dapat bekerja pada tegangan 4,0 sampai dengan 5,5 volt,
sehingga tegangan 5,1 volt ini cukup untuk mensupplay tegangan ke mikrokontroler
AT89S51. Dengan demikian rangkaian ini sudah dapat bekerja dengan baik.
berikut:
Loop:
Setb P0.0
Acall tunda
Clr P0.0
Acall tunda
Sjmp Loop
selama ± 0,13 detik kemudian mematikannya selama ± 0,13 detik secara terus
menerus. Perintah Setb P0.0 akan menjadikan P0.0 berlogika high yang menyebabkan
LED menyala. Acall tunda akan menyebabkan LED ini hidup selama beberapa saat.
Perintah Clr P0.0 akan menjadikan P0.0 berlogika low yang menyebabkan LED akan
mati. Perintah Acall tunda akan menyebabkan LED ini mati selama beberapa saat.
Perintah Sjmp Loop akan menjadikan program tersebut berulang, sehingga akan
12
membutuhkan waktu = 1 mikrodetik.
12 MHz
DJNZ 2 2x1 d =2 d
RET 1 1x1 d =1 d
mov r7,#255 2
djnz r7,loop3 2
djnz r2,loop8 2
ret 1
Jadi waktu yang dibutuhkan untuk mengerjakan program di atas adalah 130.059 detik
mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian
Rangkaian driver motor stepper ini terdiri dari empat masukan dan empat keluaran,
motor stepper jika diberi sinyal high (1) secara bergantian pada ke-4 masukannya.
Rangkaian ini terdiri dari 4 buah transistor NPN TIP 122. Masing-masing
transistor dihubungkan ke P0.0, P0.1, P0.2 dan P0.3 pada mikrokontroler AT89S51.
Basis dari masing-masing transistor diberi tahanan 1 Kohm untuk membatasi arus
yang masuk ke basis pada transistor. Kolektor dihubungkan dengan kumparan yang
mendapat tegangan 5 volt, maka transistor akan aktip. Hal ini akan menyebabkan
dari ground. Hal ini menyebabkan arus akan mengalir dari sumber tegangan 12 volt ke
kumparan, sehingga kumparan akan menghasilkan medan magnet. Medan magnet ini
akan menarik logam yang ada pada motor, sehingga motor mengarah pada kumparan
Jika kemudian P0.0 di beri logika low (0), yang berarti transistor tidak aktip
dan tidak ada arus yang mengair pada kumparan, sehingga tidak ada medan magnet
pada kumparan. Dan disisi lain P0.1 diberi logika high (1), sehingga kumparan yang
terhubung ke P0.1 akan menghasilkan medan magnet. Maka motor akan beralih
kearah kumparan yang terhubung ke P0.1 tersebut. Seterusnya jika logika high
diberikan secara bergantian pada input dari driver motor stepper, maka motor stepper
akan berputar sesuai dengan arah logika high (1) yang diberikan pada inputnya.
Untuk memutar dengan arah yang berlawanan dengan arah yang sebelumnya,
maka logika high (1) pada input driver motor stepper harus diberikan secara
1 1 00000000 00000000
0 1 10000000 00000000
01000000 00000000
00100000 00000000
00010000 00000000
00001000 00000000
00000100 00000000
00000010 00000000
00000001 00000000
1 0 00000000 00000001
00000000 00000010
00000000 00000100
00000000 00001000
00000000 00010000
00000000 00100000
00000000 01000000
00000000 10000000
Program yang diberikan pada driver motor stepper untuk memutar motor stepper
mov a,#11h
putar:
mov P0,a
acall tunda
Rl a
jmp putar
program akan memasuki rutin buka pintu. Nilai a diisikan ke port 0, sehingga
sekarang nilai port 0 adalah 11h. ini berarti P0.0 dan P0.4 mendapatkan logika high
sedangkan yang lainnya mendapatkan logika low, seperti table di bawah ini,
ini akan memutar nilai yang ada pada accumulator (a), seperti tampak pada table di
bawah ini,
a 0 0 0 1 0 0 0 1
Rl
a 0 0 1 0 0 0 1 0
Dst..................
Nilai pada accumulator (a) yang awalnya 11h, setelah mendapat perintah Rl a,
maka nilai pada accumulator (a) akan merubah menjadi 22h. Kemudian program akan
melihat apakah kondisi sensor buka pintu dalam keadaan high (1) atau low (0). Jika
high (1), Nilai yang ada pada accumulator (a), akan kembali diisikan ke port 0, maka
nilai di port 0 akan berubah menjadi 22h, ini berarti P0.1 dan P0.5 mendapatkan
logika high sedangkan yang lainnya mendapatkan logika low, seperti table di bawah
ini,
Sebelumnya telah dibahas bahwa P0.0, P0.1, P0.2, dan P0.3 dihubungkan ke masukan
driver motor stepper, dengan program di atas maka P0.0, P0.1, P0.2, dan P0.3 akan
mendapatkan nilai high (1) secara bergantian. Hal ini menyebabkan motor stepper
akan berputar membuka pintu.Hal yang sama juga berlaku ketika motor berputar
kaearah sebaliknya, perbedaannya hanya pada perintah rotate. Jika pada perintah
berlawanan arah jarum jam digunakan rotate left ( Rl ), maka pada perintah searah
jarum jam digunakan perintah rotate right ( Rr). Perputaran perintah Rr diperlihatkan
a 1 0 0 0 1 0 0 0
Rr
a 0 1 0 0 0 1 0 0
Dst...................
potodioda dan infra merah secara berhadapan. Ketika diletakkan secara berhadapan,
maka pancaran sinar infra merah akan mengenai potodioda, sehingga menyebabkan
LED indikator pada rangkaian penerima akan menyala, dan tegangan output rangkaian
sebesar 0,2 volt. Namun ketika antara infra merah dan potodioda diberi suatu
penghalang, yang menyebabkan pancaran infra merah tidak mengenai potodioda, hal
sensor, maka mikrokontroler harus diprogram untuk untuk dapat mengecek sinyal apa
yang dikirimkan oleh sensor. Jika sinyal yang dikirimkan adalah sinyal high (1),
berarti tidak ada kapal yang lewat, namun jika sinyal yang dikirimkan adalah sinyal
low, maka ini berarti ada kapal yang lewat. Program untuk mendeteksi pengiriman
Cek_sensor_masuk:
Clr P3.7
. . . . . . . .
Cek_sensor_keluar:
Setb P3.7
. . . . . . . .
Kemudian program akan dilanjutkan dengan rutin cek sensor masuk. Pada rutin ini
program akan melihat kondisi P1.3 yang dihubungkan ke sensor ring kanan, dengan
menggunakan perintah JnB (jump if not bit), jika kondisi P1.3 bit (high), yang berarti
tidak ada orang yang masuk ke dalam ruangan, maka program akan lompat ke rutin
cek sensor keluar. Namun jika kondisi P1.3 notbit (low), maka program akan
melanjutkan ke rutin Clr P3.7. Perintah ini akan menyebabkan LED yang terhubung
ke P3.7 mati. Jika rangkaian telah berjalan sesuai dengan program yang diberikan,
5.1. Kesimpulan
AT89S51, dua buah motor, dua buah sensor gerak dan rangkaian penguat
sinyal.
2. Pada simulasi jembatan angkat otomatis ini, pemancar infra merah yang
lebih kuat sehingga fungsi fotodioda sebagai penerima akan menjadi lebih
baik.
5.2. Saran
1. Sangat diharapkan jika alat ini dibuat dan dimanfaatkan serta disosialisasikan
akan akan datang agar alat ini dapat lebih ditingkatkan lagi.
2. Pemancar infra merah yang digunakan harus dimodulasi dahulu agar pancaran