Sensor Optik Sebagai Saklar Otomatis Dalam Pengisian Sampel Gula Kedalam Box Dengan Menggunakan Mikrokontroller AT89S52

(1)

SENSOR OPTIK SEBAGAI SAKLAR OTOMATIS DALAM

PENGISIAN SAMPEL GULA KEDALAM BOX DENGAN

MENGGUNAKAN MIKROKONTROLLER AT89S52

TUGAS AKHIR

KHAIRUL ARIO UJANG 052408091

PROGRAM STUDI DIPLOMA III FISIKA INSTRUMENTASI DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

MEDAN 2008


(2)

SENSOR OPTIK SEBAGAI SAKLAR OTOMATIS DALAM

PENGISIAN SAMPEL GULA KEDALAM BOX DENGAN

MENGGUNAKAN MIKROKONTROLLER AT89S52

TUGAS AKHIR

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh Ahli Madya

KHAIRUL ARIO UJANG 052408091

PROGRAM STUDI DIPLOMA III FISIKA INSTRUMENTASI DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

MEDAN 2008


(3)

PERNYATAAN

SENSOR OPTIK SEBAGAI SAKLAR OTOMATIS DALAM

PENGISIAN SAMPEL GULA KEDALAM BOX DENGAN

MENGGUNAKAN MIKROKONTROLLER AT89S52

TUGAS AKHIR

Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing - masing disebutkan sumbernya.

Medan, Juli 2008

Khairul Ario Ujang 052408091


(4)

PERSETUJUAN

Judul : SENSOR OPTIK SEBAGAI SAKLAR OTOMATIS DALAM

PENGISIAN GULA KEDALAM BOX DENGAN

MENGGUNAKAN MIKROKONTROLLER AT89S52

Nama : KHAIRUL ARIO UJANG

Nomor Induk Mahasiswa : 052408091 Program Studi : DIPLOMA III FISIKA INSTRUMENTASI

Departemen : FISIKA

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA (FMIPA USU)

Diluluskan di Medan, Juli 2008

Diketahui

Ketua Program Studi Instrumentasi Pembimbing

(Drs.Syahrul Humaidi,M.Sc) (Drs.M.Firdaus,MSi) NIP : 132 050 870 NIP : 131 273 463


(5)

PENGHARGAAN

Puji syukur penulis panjatkan kepada ALLAH SWT yang Maha Pemurah dan Maha Penyayang,dengan limpah karunia-Nya kertas kajian ini berhasil di selesaikan dalam waktu yang telah di tetapkan.

Dalam kesempatan ini, penulis ingin mengucapkan terima kasih yang sebesar-besarnya kepada : Bapak Dr.Eddy Marlianto.M.Sc, selaku Dekan FMIPA USU dan Bapak DR.Marhaposan Situmorang selaku Ketua Departemen Fisika FMIPA USU dan Bapak Drs.Syahrul Humaidi.M.Sc, Selaku Ketua Program Studi D3 Fisika Instrumentasi FMIPA USU dan Bapak Drs.M Firdaus,Msi, selaku Dosen Pembimbing Tugas Akhir dan Seluruh Dosen dan pegawai pada Program Studi D3 Fisika Instrumentasi FMIPA USU dan Kepada kedua Orang Tua yang kami cintai yang senantiasa memberikan dukungan baik moril maupun materil dan selalu mendo’akan kami dalam pelaksanaan Tugas Akhir ini sehingga dapat terlaksana dengan baik dan Kepada seluruh teman-teman mahasiswa Fisika Instrumentasi dan teman-teman mahasiswa di UKMI Al-Falak FMIPA USU atas dukungannya kepada penulis dalam menyelesaikan Laporan Praktek Proyek ini.

Penulis sadar dalam Tugas Akhir ini masih banyak terdapat kekurangan yang sudah seharusnya dapat diperbaiki dimasa yang akan datang. Untuk itu penulis sangat mengharapkan kritik dan saran yang bersifat membangun demi perbaikan Tugas Akhir ini agar dapat disempurnakan menjadi Tugas Akhir yang lebih sempurna,aplikatif dan berguna dimasa yang akan datang.


(6)

ABSTRAK

Dalam kajian ini bertujuan untuk mengenal lebih dalam tentang sensor optik dan kegunaannya sebagai saklar otomatis, dalam hal ini sensor optik tidak bekerja secara otomatis jika tidak ada rangkaian untuk pengendalinya yang biasa di sebut mikrokontroller, mikrokontroller yang digunakan adalah AT89S52 karena mikro ini di dukung memory yang cukup besar dan cara kerjanya yang sangat cepat, metode yang yang digunakan penelitian sensor optik sebagai saklar dalam pengisian gula kedalam box dengan menggunakan mikrokontroller AT89S52, penerapan alat sensor ini sangat luas kegunaanya khususnya di dunia industri.


(7)

DAFTAR ISI

LEMBAR PERSETUJUAN ... i

PERYATAAN ... iii

PENGHARGAAN ... iv

ABSTRAK ... v

DAFTAR ISI ... vi

DAFTAR GAMBAR ... viii

DAFTAR TABEL ... ix

BAB I. PENDAHULUAN ... 1

1.1. Latar Belakang Masalah ... 1

1.2. Rumusan Masalah ... 2

1.3. Tujuan Penulisan ... 3

1.4. Batasan Masalah ... 3

1.5. Sistematika Penulisan ... 4

BAB II. LANDASAN TEORI ... 6

2.1.Mikrokontroler AT89S52 ... 6

2.1.1. Gambaran Umum ... 6

2.1.2. Karakteristik Mikrokontroler AT89S52 ... 8

2.1.3. Fungsi pin-pin pada mikrokontroler AT89S52 ... 9

2.1.4. Register Pada Mikrokontroler AT89S52 ... 12

2.2.Perangkat Lunak ... 16

2.2.1. Bahasa Assembly MCS-51 ... 16

2.2.2. Software 8051 Editor,Assembler,Simulator (IDE) ... 21

2.2.3. Software Downloader ... 22

2.3.PhotoDioda ... 23

2.3.1 Mode Oprasi ... 23


(8)

BAB III. PERANCANGAN ALAT DAN CARA KERJA RANGKAIAN .. 26

3.1 Diagram Blok ... 26

3.2 Diagram Rangkaian ... 28

3.3 Keterangan Diagram rangkaian ... 28

3.3.1 Power Suppplay (PSA) ... 28

3.3.2 Rangkaian Mikrokontroler AT89S51 ... 29

3.3.3 Rangkaian Driver Motor Stepper ... 31

3.3.4 Rangkaian Sensor ... 32

3.4 Flowchart Pengisian Gula dengan menggunakan sensor optik sebagai saklar otomatis dan motor stepper sebagai penggerak konveyor dengan menggunakan mikrokontroller AT89S52 ... 34

3.5 Program dan keterangan ... 36

BAB IV. PENGUJIAN ALAT DAN PROGRAM ... 50

4.1 Pengujian Rangkaian Power Supplay (PSA) ... 50

4.2 Pengujian Rangkaian Mikrokontroller AT89S52 ... 50

4.3 Rangkaian Pemancar Infra Merah ... 53

BAB IV. KESIMPULAN DAN SARAN ... 55

5.1 Kesimpulan ... 55

5.2 Saran ... 56

DAFTAR PUSTAKA LAMPIRAN


(9)

DAFTAR GAMBAR

Halaman

Gambar 2.1 : Konfigurasi pin (kaki) pada mikrokontroler AT89S52 9

Gambar 2.2 : 8051 Editor,Assembler,Simulator(IDE) 21

Gambar 2.3 : ISP-Flash Programer 22

Gambar 2.4 : Photodioda dan Simbolnya 24

Gambar 2.5 : Simbol Dan Rangkaian Dasar sebuah Infra merah 25

Gambar 3.1 : Diagram Blok 26

Gambar 3.2 : Diagram Rangkaian 28


(10)

DAFTAR TABEL

Halaman Tabel 2.1 : Kapasitas memori mikrokontroler seri AT89XX 7


(11)

ABSTRAK

Dalam kajian ini bertujuan untuk mengenal lebih dalam tentang sensor optik dan kegunaannya sebagai saklar otomatis, dalam hal ini sensor optik tidak bekerja secara otomatis jika tidak ada rangkaian untuk pengendalinya yang biasa di sebut mikrokontroller, mikrokontroller yang digunakan adalah AT89S52 karena mikro ini di dukung memory yang cukup besar dan cara kerjanya yang sangat cepat, metode yang yang digunakan penelitian sensor optik sebagai saklar dalam pengisian gula kedalam box dengan menggunakan mikrokontroller AT89S52, penerapan alat sensor ini sangat luas kegunaanya khususnya di dunia industri.


(12)

BAB 1

PENDAHULUAN

1.1. Latar Belakang Masalah

Dewasa ini, manusia sudah tak bisa lagi di pisahkan dari peralatan elektronik yaitu komputer mulai dari tugas kantor, kuliah semua di kerjakan dalam komputer .Padahal komputer juga bisa di gunakan untuk mengendalikan peralatan-peralatan elektronik.

Dimana computer untuk mengendalikan suatu peralatan-peralatan elektronik harus bisa stanbay (siap) dalam waktu kerja yang lama, Kita ketahui komputer tidak mampu untuk bekerja dalam waktu yang lama, Maka digunakananlah suatu prosesor kecil atau yang biasa di sebut mikrocontroller adalah sistem komputer yang ringkas, dapat menggantikan fungsi komputer dalam pengendalian kerja dan disain yang jauh lebih ringkas dari pada komputer. Dengan ukurannya yang kecil.

Mikrokontroler dapat digunakan untuk membuat sensor infra merah dan photo dioda bisa di kendalikan sesuai fungsinya sebagai saklar otomatis, Mikrokontroler yang gunakan adalah AT89S52 sebagai otak dari suatu embedded system, sebuah sistem komputer terpadu.


(13)

AT89S52 adalah chip mikrokontroler produksi Atmel Inc. merupakan keluarga dari MCS-51 rancangan Intel. AT89S52 mempunyai fitur dasar yang cukup lengkap untuk suatu pemrosesan input-output. Bahasa pemrograman yang digunakan AT89S52 hampir tidak berbeda jauh dengan instruksi set pada mikroprosesor Intel yang sudah dipelajari pada perkuliahan.

Pada Tugas Akhir ini dibangun sebuah pengisian gula kedalam box dengan manfaatkan infra merah dan photo dioda sebagai saklar otomatis apabila ada benda atau box yang menghalanginya.

1.2. Rumusan Masalah

• Pemancar yang digunakan adalah infra merah dan penerimanya adalah potodioda, sehingga jarak yang dekat sudah bisa berfungsi sebagai saklar otomatis .

• Sensor hanya mengetahui bahwa ada box di depannya, jika box menghalangi sensor.

• Pengisian gula di dalam box hanya dilengkapi dengan sensor infra merah dan photo dioda tidak dilengkapi dengan sensor jarak saat box akan tiba saat pengisian gula ke box.


(14)

1.3 Tujuan Penulisan

Tujuan dilakukan penulisan Tugas Akhir ini adalah sebagai berikut :

1. Studi awal dalam pembuatan pengisian gula ke dalam box dimana infrah merah sebagai pemancar dan photo dioda sebagai saklar otomatis

2. Memanfaatkan mikrokontroler AT89S52 sebagai tempat pemrosesan data (otak) dari sebuah pengisian kedalam box.

3. Studi awal tentang sistem kecerdasan pembuatan alat pengisian gula ke dalam box.

1.4 Batasan Masalah

Penulisan tugas akhir ini dibatasi pada:

1. Studi cara kerja rangkaian yang meliputi diagram blok dan menguraikan secara umum fungsi dari masing-masing komponen utama dalam blok tersebut

2. Sensor menggunakan infra merah dan photo dioda.Digunakan satu buah sensor yang satu akan ditempatkan di sebelah kiri sisi pengisian gula Mikrokontroler yang digunakan yaitu AT89S52, jadi hanya mikrokontroler ini yang akan diuaraikan cara kerjanya dan cara pemrogramannya


(15)

1.5 Sistematika Penulisan

Untuk mempermudah pembahasan dan pemahaman maka penulis membuat sistematika pembahasan bagaimana sebenarnya prinsip kerja dari pengisian gula ke dalam box dimana infrah merah sebagai pemancar dan photo dioda sebagai saklar otomatis, maka penulis menulis Tugas Akhir ini sebagai berikut:

BAB I. PENDAHULUAN

Dalam bab ini berisikan mengenai latar belakang, tujuan penulisan, batasan masalah, serta sistematika penulisan.

BAB II. LANDASAN TEORI

Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan dan cara kerja dari rangkaian Teori pendukung itu antara lain tentang mikrokontroler AT89S52 (hardware dan software), bahasa program yang digunakan, serta cara kerja dari pemancar infra merah, cara kerja potodioda dan rangkaian penerimanya.

BAB III. ANALISA RANGKAIAN DAN KERJA SISTEM

Analisa rangkaian dan sistem kerja, dalam bab ini dibahas tentang sistem kerja per-blok diagram dan sistem kerja keseluruhan.


(16)

BAB IV. KESIMPULAN DAN SARAN

Bab ini merupakan penutup yang meliputi tentang kesimpulan dari pembahasan yang dilakukan dari tugas akhir ini serta saran apakah rangkaian ini dapat dibuat lebih efisien dan dikembangkan perakitannya pada suatu metode lain yang mempunyai sistem kerja yang sama.


(17)

BAB 2

LANDASAN TEORI

2.1 Mikrokontroler AT89S52

2.1.1 Gambaran umum

Mikrokontroler AT89S52 adalah mikrokomputer CMOS 8 bit yang memiliki 8 KB Programmable and Erasable Read Only Memory (PEROM). Mikrokontroler berteknologi memori non-volatile (tidak kehilangan data bila kehilangan daya listrik). Set instruksi dan kaki keluaran AT89S52 sesuai dengan standar industri 80C51 dan 80C52. Atmel AT89S52 adalah mikrokontroler yang sangat bagus dan fleksibel dengan harga

yang relatif murah untuk banyak aplikasi sistem kendali berkerapatan tinggi dari Atmel

ini sangat kompatibel dengan mikrokontroler MCS-51 misalnya mikrokontroler AT80S52 yang terkenal dan banyak digunakan dan telah menjadi standar industri baik dalam jumlah pin IC maupun set instruksinya.

Sebagai perbandingan kapasitas memori, tabel 2.1 berikut ini akan menampilkan memori dari mikrokontroler seri AT89XX


(18)

Tabel 2.1 Kapasitas Memori Mikrokontroler seri AT89XX

(Agfianto Eko Putra, "BELAJAR MIKROKONTROLER AT89C51/52/55", Penerbit Gava Media, Edisi pertama, Yogyakarta, 2002)

Mikrokontroler AT89S52 memiliki fasilitas-fasilitas pendukung yang membuatnya menjadi mikrokontroler yang sangat banyak digunakan dalam berbagai aplikasi. Fasilitas-fasilitas yang dimiliki oleh mikrokontroler AT89S52 adalah :

a. Sesuai dengan produk-produk MCS-51.

b. Terdapat memori flash yang terintegrasi dalam sistem. Dapat ditulis ulang

hingga 1000 kali.

c. Beroperasi pada frekuensi 0 sampai 24MHz.

d. Tiga tingkat kunci memori program.

e. Memiliki 256 x 8 bit RAM internal.

Type RAM Flash Memory EEPROM

AT89C51/ AT89S51

8 X 128 byte

4 Kbyte Tidak

AT89C52/ AT89S52

8 X 256 byte

8 Kbyte Tidak

AT89C55 8 X 256 byte 20 Kbyte Tidak

AT89S53 8 X 256 byte 12 Kbyte Tidak


(19)

f. Terdapat 32 jalur masukan/keluaran terprogram.

g. Tiga pewaktu/pencacah 6-bit (untuk AT89S52) & dua pewaktu/pencacah

16-bit (untuk AT89S51)

h. Memiliki 8 sumber interupsi(untuk AT89S52) & 6 sumber instruksi untuk

AT89S51

i. Kanal serial terprogram.

j. Mode daya rendah dan mode daya mati.

2.1.2 Karakteristik mikrokontroler AT89S52

AT89S52 mempunyai memori yang terdiri dari RAM internal dan Special

Function Register. RAM internal pada mikrokontroler AT89S52 memiliki ukuran 256 byte dan beralamatkan 00H-7FH serta dapat di akses menggunakan RAM address register. RAM internal terdiri dari delapan buah register (R0-R7) yang membentuk register banks. Special Function Register yang berjumlah 21 buah berada di alamat


(20)

IC AT89S52 mempunyai pin sebanyak 40 buah yang sesuai dengan mikrokontroler 8031 dan memiliki susunan pin seperti gambar di berikut ini ini :

Gambar 2.1 Konfigurasi pin (kaki) pada mikrokontroler AT89S52

2.1.3 Fungsi Pin-Pin pada mikrokontroler AT89S52

1. Pin 1 sampai pin 8

Pin 1 – 8 adalah port 1 yang merupakan saluran atau bus I/O 8 bit dua arah dengan internal pull-up yang dapat digunakan untuk berbagai keperluan seperti mengendalikan empat input TTL. Port ini juga digunakan sebagai saluran alamat saat pemrograman dan verifikasi


(21)

. 2. Pin 9

Merupakan masukan reset (aktif tinggi). Pulsa transisi dari rendah ke tinggi akan me-reset mikrokontroler ini.

3. Pin 10 sampai pin 17

Pin 10 – pin 17 merupakan saluran atau bus I/O 8 bit dua arah dengan internal

pull-ups yang memiliki fungsi pengganti. Bila fungsi pengganti tidak dipakai maka dapat

digunakan sebagai port paralel 8 bit serbaguna. Selain itu, sebagian port 3 dapat berfungsi sebagai sinyal kontrol saat proses pemrograman dan verifikasi.

4. Pin 18 dan pin 19

Pin-pin ini merupakan jalur masukan ke penguat osilator berpenguat tinggi. Mikrokontroler ini memiliki seluruh rangkaian osilator yang diperlukan pada chip, kecuali rangkaian kristal yang mengendalikan frekuensi osilator. Oleh karena itu, pin 18 dan 19 ini sangat diperlukan untuk dihubungkan dengan kristal. Selain itu XTAL 1 juga dapat digunakan sebagai input untuk inverting osilator amplifier dan input rangkaian internal clock, sedangkan XTAL 2 merupakan output dari inverting


(22)

5. Pin 20

Pin 20 merupakan ground sumber tegangan dan diberi simbol “gnd”. 6. Pin 21 sampai pin 28

Pin-pin ini adalah port 2 yang merupakan saluran atau bus I/O 8 bit dua arah dengan

internal pull-ups. Saat pengambilan data dari program memori eksternal atau selama

pengaksesan data memori eksternal yang menggunakan alamat 16 bit (MOVX@DPTR), port 2 berfungsi sebagai saluran /bus alamat tinggi (A8-A15). Akan tetapi, saat mengakses data memori eksternal yang menggunakan alamat 8 bit (MOVX@DPTR), port 2 mengeluarkan isi P2 pada special function register.

7. Pin 29

Pin 29 merupakan program Store Enable (PSEN) merupakan sinyal pengontrol untuk mengakses program memori eksternal agar masuk ke dalam bus selama proses pemberian/pengambilan instruksi (fetching).

8. Pin 30

Pin 30 sebagai Adress Lacth Enable (ALE)/PROG merupakan penahan alamat memori eksternal (pada port 1) selama mengakses ke memori. Pin ini juga berfungsi sebagai pulsa/sinyal input pemograman (PROG) selama proses pemograman.


(23)

Pin 31 adalah External Access Enable (EA) merupakan sinyal kontrol untuk pembacaan memori program. Apabila diset rendah (L) maka mikrokontroler akan melaksanakan seluruh instruksi dari memori program eksternal, sedangkan jika diset tinggi (H) maka mikrokontroler akan melaksanakan seluruh instruksi dari memori program internal ketika isi program counter kurang dari 4096. Port ini juga berfungsi sebagai tegangan pemograman (Vpp=+12V) selama proses pemograman.

10. Pin 32 sampai pin 39

Pin 32-pin 39 adalah port 0 yang merupakan saluran bus I/O 8 bit open collector, dapat juga digunakan sebagai multipleks bus alamat rendah dan bus data selama adanya akses ke memori program eksternal. Saat proses pemograman dan verifikasi, port 0 digunakan sebagai saluran/bus data. Pull-up eksternal diperlukan selama proses verifikasi.

11. Pin 40

Pin 40 merupakan sumber tegangan positif yang diberi simbol Vcc.

2.1.4 Register pada Mikrokontroler AT89S52

Register adalah penampung data sementara yang terletak dalam CPU. Pada mikrokontroler AT89S52, register-registernya adalah sebagai berikut :


(24)

a. .Register A ( Accumulator)

Accumulator ialah sebuah register 8 bit yang merupakan pusat dari semua operasi accumulator, termasuk dalam operasi aritmatika dan operasi logika.

b. Register B

Register ini memiliki fungsi yang sama dengan register A.

c. Program counter (PC)

Program counter (Pencacah program) merupakan sebuah register 16 bit yang

selalu menunjukkan lokasi memori instruksi yang akan diakses.

d. Data pointer

Data pointer atau DPATR merupakan register 16 bit yang terletak di alamat 82H

untuk DPL dan 83H untuk DPH. Biasanya Data pointer digunakan untuk mengakses data atau source kode yang terletak di memori eksternal.

e. Stack Pointer (SP)

Stack Pointer adalah register 8 bit yang mempunyai fungsi khusus sebagai penu


(25)

Pointer terletak di alamat 81H. Penunjuk penumpukan selalu berkurang dua tiap

kali data didorong masuk kedalam lokasi penumpukan dan selalu bertambah dua tiap kali data ditarik keluar dari lokasi penumpukan.

f. Program Status Word

Program Status Word merupakan register yang berisi beberapa bit status yang

mencerminkan keadaaan mikrokontroler.

g. Bit Carry Flag (CY)

Bit carry merupakan bit ke 8 yang memiliki dua fungsi :

1. Carry akan menunjukkan apakah operasi penjumlahan mengandung carry

(sisa) atau apakah operasi pengurangan mengandung borrow (kurang). Apabila operasi ini mengandung carry, bit ini akan diset agar bernilai satu, sedangkan jika mengandung borrow, bit ini akan di set agar bernilai nol (0).

2. Carry dimanfaatkan sebagai bit ke-8 untuk operasi pergeseran (shift) atau

perputaran.


(26)

Bit ini menunjukkan adanya carry (bawaan) dari bit ketiga menuju bit keempat atau dari empat bit rendah ke empat bit tinggi pada operasi aritmatika. Bit ini jarang digunakan dalam program, tetapi digunakan oleh mikrokontroler secara implisit pada operasi aritmatika bilangan BCD.

i. Bit Flag 0 (F0)

Bit ini menunjukkan apakah hasil operasi bernilai nol atau tidak. Apabila hasil operasi adalah nol (0), bit ini akan diset agar bernilai 1, sedangkan apabila hasil operasinya bukan nol (0) maka bit ini akan di-reset. Bit ini juga digunakan pada perbandingan dua buah data. Jika kedua data bernilai sama maka bit ini akan diset agar bernilai satu, sedangkan jika kedua data itu berbeda maka bit ini akan direset agar bernilai nol (0).

j. Bit Register Select (RS)

RS0 dan RS1 digunakan untuk memilih bank register. Delapan buah register ini merupakan register serbaguna. Lokasinya pada awal 32 byte RAM internal yang memiliki alamat dari 00H sampai 1FH. Register ini dapat diakses melalui simbol


(27)

2.2 PERANGKAT LUNAK

2.2.1 Bahasa Assembly MCS-51

Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S51 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 hanya 10 instruksi. Instruksi –instruksi tersebut antara lain :

1. Instruksi MOV

Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register tertentu. Pengisian nilai dapat secara langsung atau tidak langsung.


(28)

MOV R0,#20h

Perintah di atas berarti : isikan nilai 20 Heksadesimal ke register 0 (R0). Tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah nilai. Contoh pengisian nilai secara tidak langsung

MOV 20h,#80h ...

... MOV R0,20h

Perintah di atas berarti : isikan nilai yang terdapat pada alamat 20 Heksadesimal ke register 0 (R0).

Tanpa tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah alamat.

2. Instruksi DJNZ

Decreament Jump If Not Zero (DJNZ) ini merupakan perintah untuk mengurangi nilai register tertentu dengan 1 dan lompat jika hasil pengurangannya belum nol. Contoh ,


(29)

Loop: ... ...

DJNZ R0,Loop ...

R0 -1, jika belum 0 lompat ke loop, jika R0 = 0 maka program akan meneruskan ke perintah pada baris berikutnya.

3. Instruksi ACALL

Instruksi ini berfungsi untuk memanggil suatu rutin tertentu. Contoh :

...

ACALL TUNDA ...

TUNDA:

...


(30)

Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin pemanggil setelah instruksi ACALL dilaksanakan. Contoh,

ACALL TUNDA ...

TUNDA:

... RET

5. Instruksi JMP (Jump)

Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh,

Loop:

... ... JMP Loop

6. Instruksi JB (Jump if bit)

Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang dimaksud berlogika high (1). Contoh,


(31)

JB P1.0,Loop ...

7. Instruksi JNB (Jump if Not bit)

Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang dimaksud berlogika Low (0). Contoh,

Loop:

JNB P1.0,Loop ...

8. Instruksi CJNZ (Compare Jump If Not Equal)

Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register dengan suatu nilai tertentu. Contoh,

Loop:

...

CJNE R0,#20h,Loop ...

Jika nilai R0 tidak sama dengan 20h, maka program akan lompat ke rutin Loop. Jika nilai R0 sama dengan 20h,maka program akan melanjutkan instruksi selanjutnya..


(32)

9. Instruksi DEC (Decreament)

Instruksi ini merupakan perintah untuk mengurangi nilai register yang dimaksud dengan 1. Contoh,

MOV R0,#20h R0 = 20h ...

DEC R0 R0 = R0 – 1 ...

10. Instruksi INC (Increament)

Instruksi ini merupakan perintah untuk menambahkan nilai register yang dimaksud dengan 1. Contoh,

MOV R0,#20h R0 = 20h ...

INC R0 R0 = R0 + 1 ...

11. Dan lain sebagainya

2.2.2 Software 8051 Editor, Assembler, Simulator (IDE)

Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada sebuah editor, yaitu 8051 Editor, Assembler, Simulator (IDE). Tampilannya seperti di bawah ini.


(33)

Gambar 2.2 8051 Editor, Assembler, Simulator (IDE)

Setelah program selesai ditulis, kemudian di-save dan kemudian di-Assemble (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 sampai tidak ada pesan kesalahan lagi.

Software 8051IDE ini berfungsi untuk merubah program yang kita tuliskan ke dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat peng-compile-an. Bilangan heksadesimal inilah yang akan dikirimkan ke mikrokontroller.

2.2.3 Software Downloader

Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroller digunakan software ISP- Flash Programmer 3.0a yang dapat didownload dari internet. Tampilannya seperti gambar di bawah ini


(34)

Gambar 2.3 ISP- Flash Programmer

Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil file heksadesimal dari hasil kompilasi 8051IDE, kemudian klik Write untuk mengisikan hasil kompilasi tersebut ke mikrokontroller.

2.3 Photodioda

Pengertian : piranti semikonduktor dengan struktur p-n atau p-i-n untuk mendeteksi cahaya.

Potodioda biasanya digunakan untuk mendeteksi cahaya. Potodioda adalah piranti semikonduktor yang mengandung sambungan p-n, dan biasanya terdapat lapisan intrinsik antara lapisan n dan p. Piranti yang memiliki lapisan intrinsik disebut p-i-n atai PIN


(35)

potodioda. Cahaya diserap di daerah pengambungan atau daerah intrinsik menimbulkan pasangan elektron-hole, kebanyakan pasangan tersebut menghasilkan arus yang berasal dari cahaya.

2.3.1 Mode operasi

Potodioda dapat dioperasikan dalam 2 mode yang berbeda:

1. Mode potovoltaik: seperti solar sel, penyerapan pada potodioda menghasilkan tegangan yang dapat diukur. Bagaimanapun, tegangan yang dihasilkan dari tenaga cahaya ini sedikit tidak linier, dan range perubahannya sangat kecil.

2. mode potokonduktivitas : disini, potodioda diaplikasikan sebagai tegangan 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 .

Karakteristik bahan potodioda:

1. silikon (Si) : arus lemah saat gelap, kecepatan tinggi, sensitivitas yang bagus antara 400 nm sampai 1000 nm ( terbaik antara 800 sampai 900 nm).

2. Germanium (Ge): arus tinggi saat gelap, kecepatan lambat, sensitivitas baik antara 600 nm sampai 1800 nm (terbaik 1400 sampai 1500 nm).


(36)

3. Indium Gallium Arsenida (InGaAs): mahal, arus kecil saat gelap, kecepatan tinggi sensitivitas baik pada jarak 800 sampai 1700nm (terbaik antara 1300 sampai 1600nm).

Gambar Photodioda ditunjukkan pada gambar berikut:

Gambar 2.4 Photodioda

2.4 Dioda Pemancar Cahaya Infra Merah (LED infra Merah)

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 melainkan dalam bentuk panas sebagian.

Proses pemancara cahaya akibat adanya energi listrik yang diberikan terhadap suatu bahan disebut dengan sifat elektroluminesensi. Material lain misalnya Galium Arsenida Pospat (GaAsP) atau Galium Pospat (GaP): photon energi cahaya dipancarkan


(37)

untuk menghasilkan cahaya tampak. Jenis lain dari LED digunakan untuk menghasilkan energi tidak tampak seperti yang dipancarkan oleh pemancar laser atau inframerah.

Gambar 2.5 Simbol dan rangkaian dasar sebuah LED

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 dan ada

yang meninggalkan permukaan dalam betuk radiasi energi. 330฀

VCC 5V


(38)

BAB 3

PERANCANGAN ALAT DAN CARA KERJA RANGKAIAN

3.1 Diagram blok

Mikrokontroller AT89S52 Penguat sinyal

Sensor Driver motor

stepper

Driver motor

stepper Buka/tutup

conveyor

Buka/tutup Driver motor

stepper Power suplay

Pada perancangan alat simulasi pengisian gula secara otomatis ini terdapat 10 blok rangkaian utama. Sensor berfungsi untuk mendeteksi box yang akan melewatinya untuk memberitahukan kepada mikorokontroller bahwa box telah melewati sensor Output


(39)

dari sensor akan dikuatkan kebali oleh penuat sinyal sebelum masuk ke mikrokontroller. Hasil penguatan sensor yang telah di olah oleh penguat sinyal inilah yang akan di kirimkan oleh mikrokontroller.

Mikrokontroller AT89S52 yang merupakan otak dari keseluruhan system berfungsi utnuk mengolah semua data yang masuk. Driver motor stepper berfungsi untuk mengendalikan motor stepper. Motor steper digunakan untuk menggerakan conveyor.dari sensor akan dikuatkan kebali oleh penuat sinyal sebelum masuk ke mikrokontroller. Hasil penguatan sensor yang telah di olah oleh penguat sinyal inilah yang akan di kirimkan oleh mikrokontroller.

Mikrokontroller AT89S52 yang merupakan otak dari keseluruhan system berfungsi utnuk mengolah semua data yang masuk. Driver motor stepper berfungsi untuk mengendalikan motor stepper. Motor steper digunakan untuk menggerakan conveyor.


(40)

3.2 Diagram Rangkaian Vreg LM7805CT IN OUT TIP32C 100ohm 100uF 330ohm 220V 50Hz 0Deg

TS_PQ4_12 2200uF 1uF 1N5392GP 1N5392GP 12 Volt 5 Volt AT89S52

Power suplay (PSA)

Rangkaian photo dioda

Rangkaian mikrokontroler

Driver motor stepper

Driver motor stepper

Driver motor stepper

Rangkaian Infra merah

3.3 Keterangan diagram rangkaian

3.3.1 Power Supplay (PSA)

Rangkaian ini berfungsi untuk mensupplay tegangan ke seluruh rangkaian yang ada. Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12 volt, keluaran 5 volt digunakan untuk mensupplay tegangan ke seluruh rangkaian dan tegangan 12 volt digunakan untuk mensupplay tegangan ke motor stepper


(41)

Trafo CT merupakan trafo stepdown yang berfungsi untuk menurunkan tegangan dari 220 volt AC menjadi 12 volt AC. Kemudian 12 volt AC akan disearahkan dengan menggunakan dua buah dioda, selanjutnya 12 volt DC akan diratakan oleh kapasitor 2200

μF. Regulator tegangan 5 volt (LM7805CT) digunakan agar keluaran yang dihasilkan tetap 5 volt walaupun terjadi perubahan pada tegangan masukannya. LED hanya sebagai indikator apabila PSA dinyalakan. Transistor PNP TIP 32 disini berfungsi untuk mensupplay arus apabila terjadi kekurangan arus pada rangkaian, sehingga regulator tegangan (LM7805CT) tidak akan panas ketika rangkaian butuh arus yang cukup besar. Tegangan 12 volt DC langsung diambil dari keluaran 2 buah dioda penyearah.

3.3.2 Rangkaian Mikrokontroler AT89S52

Rangkaian ini berfungsi sebagai pusat kendali dari seluruh system yang ada. Pada rangkaian mikrokontroler terdapat kaki – kaki yang terhubung ke Psa,Sensor,Motor stepperr adalah sebagai berikut:

Motor Stepper Untuk Menggerakan Conveyor

Bit P0.0 pada kaki no 39 untuk data ke motor stepper Bit P0.1 pada kaki no 38 untuk data ke motor stepper Bit P0.2 pada kaki no 37 untuk data ke motor stepper Bit P0.3 pada kaki no 36 untuk data ke motor stepper


(42)

Bit P0.4 pada kaki no 35 untuk data ke motor stepper Bit P0.5 pada kaki no 34 untuk data ke motor stepper Bit P0.6 pada kaki no 33 untuk data ke motor stepper Bit P0.7 pada kaki no 32 untuk data ke motor stepper

Motor Stepper Untuk Membuka Sekat Bawah Dan Menutup Sekat Bawah Bit P2.4 pada kaki no 28 untuk data ke motor stepper

Bit P2.5 pada kaki no 27 untuk data ke motor stepper Bit P2.6 pada kaki no 26 untuk data ke motor stepper Bit P2.7 pada kaki no 25 untuk data ke motor stepper

Sensor Photo Dioda Sebagai Saklar

Bit P2.2 pada kaki no 23 untuk data ke Sensor

Tegangan Vcc 5 Volt Pada Kaki 40 Negatif Pada Kaki 20


(43)

Untuk mengendalikan perputaran motor stepper dibutuhkan sebuah driver. Driver ini berfungsi untuk memutar motor stepper searah dengan jarum jam atau berlawanan arah dengan jarum jam. Rangkaian driver motor stepper ini terdiri dari empat masukan dan empat keluaran, dimana masing-masing masukan dihubungkan dengan mikrokontroler AT89S51 dan keluarannya dihubungkan ke motor stepper. Rangkaian ini akan bekerja memutar motor stepper jika diberi sinyal high (1) secara bergantian pada ke-4 masukannya.:

Rangkaian ini terdairi 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 10 Kohm untuk membatasi arus yang masuk ke transistor. Kolektor dihubungkan dengan kumparan yang terdapat pada motor stepper, kemudian kumparan dihubungkan dengan sumber tegangan 12 volt.dan emitor dihubungkan ke ground.

Jika P0.0 diberi logika high (1), yang berarti basis pada transistor TIP 122 mendapat tegangan 5 volt, maka transistor akan aktip. Hal ini akan menyebabkan terhubungnya kolektor dengan emitor, sehingga kolektor mendapatkan tegangan 0 volt 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 yang memiliki medan magnet tesebut.


(44)

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 bergantian dengan arah yang berlawanan dengan sebelumnya.

3.3.4 Rangkaian Sensor

Sensor ini berfungsi untuk mengetahui ketika ada box yang melintas . Pada alat ini sensor yang digunakan adalah sebuah pemancar infra merah, sebuah potodioda dan sebuah rangkaian penerima sinyal infra merah.

Pada rangkaian di atas digunakan sebuah LED infra merah yang diserikan dengan sebuah resistor 18 ohm. Resistor ini berfungsi untuk membatasi arus yang masuk ke LED infra merah agar LED infra merah tidak rusak. Resistor yang digunakan adalah 18 ohm


(45)

5

0, 277 277

18

V

i A atau mA

R

= = =

Dengan besarnya arus yang mengalir ke LED infra merah, maka intensitas pancaran infra merah akan semakin kuat, yang menyebabkan jarak pancarannya akan semakin jauh.

Pancaran dari sinar infra merah akan diterima oleh potodioda, kemudian akan diolah oleh rangkaian penerima agar menghasilkan sinyal tertentu, dimana jika potodioda menerima pancaran sinar infra merah maka output dari rangkaian penerima ini akan mengeluarkan logika low (0), namun jika potodioda tidak menerima pancaran sinar infra merah, maka output dari rangkaian penerima akan mengeluarkan logika high (1).

Potodioda memiliki hambatan sekitar 15 s/d 20 Mohm jika tidak terkena sinar infra merah, dan hambatannya akan berubah menjadi sekitar 80 s/d 300 Kohm jika terkena sinar infra merah tergantung dari besarnya intensitas yang mengenainya. Semakin besar intensitasnya, maka hambatannya semakin kecil.

3.4 Flowchart pengisian gula ke dalam box dengan menggunakan sensor optik sebagai saklar otomatis dan motor Stepper sebagai penggerak konveyor dan menggunakan mikrokontroller AT89S52 sebagai pengendali.


(46)

Start

Putar konveyor

Buka Sekat Bawah/tutup sekat bawah

Buka Sekat Atas/tutup sekat atas

Stop Konveyor

Putar Konveyor Box Berada pada Posisi

Yang Benar ?

Tidak

Ya

Flowchart pengisian sampel gula dengan menggunakan sensor photo dioda dan motor stepper sebagai penggerak


(47)

Mulai conveyor berputar dan box di letakan di atas conveyor box kemudian mengenai atau menghalangi sensor kemudian sensor membaca bahwa ada benda yang menghalangi kemudian sinyal atau data di kirim ke mikrokontroler kemudian mikrokontroler mengirim data ke motor stepper untuk berhentikan conveyor,lalu conveyor ke dua membuka sekat atas dan gula masuk kedalam tempat takaran sampai penuh kemudian sekat atas menutup kembali dan mikrokontroler memberikan data lagi kepada motor stepper yang ketiga untuk membuka sekat bawah setelah box penuh kemudian sekat bawah kembali menutup lalu mikrokontroler memberikan data kepada stepper untuk memutar konveyor dan konveyor siap berjalan kembali.


(48)

Program untuk menjalankan sensor photo dioda sebagai saklar dan motor stepper sebagai penggerak conveyor,program yang digunakan adalah program Asembly yang di tulis pada editor 8051 dan mengirim program ke mikrokontroller dengan menggunakan ISP Program.

St11 Bit P0.0

stepper 11 Isi nilai dan hubungkan pada port 0.0 St12 Bit P0.1

stepper 12 Isi nilai dan hubungkan pada port 0.1 St13 Bit P0.2

stepper 13 Isi nilai dan hubungkan pada port 0.2 St14 Bit P0.3

stepper 14 Isi nilai dan hubungkan pada port 0.3 St21 Bit P0.4

stepper 21 Isi nilai dan hubungkan pada port 0.4 St22 Bit P0.5

stepper 22 Isi nilai dan hubungkan pada port 0.5 St23 Bit P0.6

stepper 23 Isi nilai dan hubungkan pada port 0.6 St24 Bit P0.7

stepper 24 Isi nilai dan hubungkan pada port 0.7 St31 Bit P2.4

stepper 31 Isi nilai dan hubungkan pada port 2.4 St32 Bit P2.5

stepper 32 Isi nilai dan hubungkan pada port 2.5

St33 Bit P2.6


(49)

St34 Bit P2.7

stepper 34 Isi nilai dan hubungkan pada port 2.7 sensor Bit P2.0

sensor Isi nilai dan hubungkan pada port 2.5 mov p0,#0

isi nilai 0 keregister 0 (p0) Mov P1,#0

isi nilai 0 keregister 0 (p1) mov P3,#0

isi nilai 0 keregister 0 (p3) clr St31

isi nilai 0 ke sttepeer 31 clr St32

isi nilai 0 ke sttepeer 32 clr St33

isi nilai 0 ke sttepeer 33 clr St34

isi nilai 0 ke sttepeer 34

Utama:


(50)

memanggil untuk mutar roller jnb Sensor,Utama

perintahkan sensor untuk membaca apakah ada benda yang menghalangi Acall Sekat_Atas_Buka

memanggil untuk sekat atas buka acall tunda

memanggil secara rutin untuk sekat atas buka Acall Sekat_Atas_Tutup

memanggil untuk sekat atas tutup acall delay

memanggil untuk melakukan perintah selanjutnya Acall Sekat_Bawah_Buka

memanggil untuk sekat bawah buka acall tunda

memanggil secara rutin untuk sekat bawah buka Acall Sekat_Bawah_Tutup

memanggil untuk sekat bawah tutup

Utama1:


(51)

acall Putar_Roller

memanggil untuk mutar roller jb Sensor,Utama1

perintahkan sensor ke utama 1 acall Putar_Roller_Dikit

memanggil untuk mutar roller dikit sjmp utama

perintah untuk kembali ke utama

Sekat_Bawah_Buka:

mov r0,#40

isi nilai 40 keregister 0 (r0) Loop_Sekat_Bawah_Buka:

setb St34

isi nilai 1 pada stepper 34

Clr St31

Isi nilai 0 pada stepper 31 acall delay

memanggil untuk melakukan perintah selanjutnya setb St33

isi nilai 1 pada stepper 33

Clr St34


(52)

acall delay

memanggil untuk melakukan perintah selanjutnya setb St32

isi nilai 1 pada stepper 32 Clr St33

Isi nilai 0 pada stepper 33 acall delay

memanggil untuk melakukan perintah selanjutnya setb St31

isi nilai 1 pada stepper 31 Clr St32

Isi nilai 0 pada stepper 32 acall delay

memanggil untuk melakukan perintah selanjutnya djnz r0,Loop_Sekat_Bawah_Buka

meneruskan perintah sekat bawah buka clr St31

Isi nilai 0 pada stepper 31 ret

lakukan perintah kembali

Sekat_Bawah_Tutup: mov r0,#40


(53)

isi nilai 40 keregister 0 (r0) Loop_Sekat_Bawah_Tutup:

setb St31

isi nilai 1 pada stepper 31

Clr St34

Isi nilai 0 pada stepper 34 acall delay

memanggil untuk melakukan perintah selanjutnya setb St32

isi nilai 1 pada stepper 32

Clr St31

Isi nilai 0 pada stepper 31 acall delay

memanggil untuk melakukan perintah selanjutnya setb St33

isi nilai 1 pada stepper 33 Clr St32

Isi nilai 0 pada stepper 32 acall delay

memanggil untuk melakukan perintah selanjutnya

setb St34


(54)

Clr St33

Isi nilai 0 pada stepper 33 acall delay

memanggil untuk melakukan perintah selanjutnya djnz r0,Loop_Sekat_Bawah_Buka

meneruskan perintah sekat bawah buka clr St34

Isi nilai 0 pada stepper 34 ret

lakukan perintah kembali

Sekat_Atas_Tutup:

mov r0,#40

isi nilai 40 keregister 0 (r0) Loop_Sekat_Atas_Tutup:

setb St21

isi nilai 1 pada stepper 21

Clr St24

Isi nilai 0 pada stepper 24 acall delay

memanggil untuk melakukan perintah selanjutnya

setb St22


(55)

Clr St21

Isi nilai 0 pada stepper 21 acall delay

memanggil untuk melakukan perintah selanjutnya setb St23

isi nilai 1 pada stepper 23 Clr St22

Isi nilai 0 pada stepper 22 acall delay

memanggil untuk melakukan perintah selanjutnya setb St24

isi nilai 1 pada stepper 24 Clr St23

Isi nilai 0 pada stepper 23 acall delay

memanggil untuk melakukan perintah selanjutnya djnz r0,Loop_Sekat_Bawah_Buka

meneruskan perintah sekat bawah buka clr St24

Isi nilai 0 pada stepper 24

ret


(56)

Sekat_Atas_Buka:

mov r0,#40

isi nilai 40 keregister 0 (r0) Loop_Sekat_Atas_Buka:

setb St24

isi nilai 1 pada stepper 24

Clr St21

Isi nilai 0 pada stepper 21 acall delay

memanggil untuk melakukan perintah selanjutnya setb St23

isi nilai 1 pada stepper 23

Clr St24

Isi nilai 0 pada stepper 24 acall delay

memanggil untuk melakukan perintah selanjutnya setb St22

isi nilai 1 pada stepper 22 Clr St23

Isi nilai 0 pada stepper 23 acall delay


(57)

setb St21

isi nilai 1 pada stepper 21 Clr St22

Isi nilai 0 pada stepper 22 acall delay

memanggil untuk melakukan perintah selanjutnya djnz r0,Loop_Sekat_Atas_Buka

meneruskan perintah sekat Atas buka clr St21

Isi nilai 0 pada stepper 21 ret

lakukan perintah kembali

Putar_Roller:

setb St14

isi nilai 1 pada stepper 14

Clr St11

Isi nilai 0 pada stepper 11 acall delay

memanggil untuk melakukan perintah selanjutnya setb St13

isi nilai 1 pada stepper 13

Clr St14


(58)

acall delay

memanggil untuk melakukan perintah selanjutnya setb St12

isi nilai 1 pada stepper 12 Clr St13

Isi nilai 0 pada stepper 13 acall delay

memanggil untuk melakukan perintah selanjutnya setb St11

isi nilai 1 pada stepper 11 Clr St12

Isi nilai 0 pada stepper 12 acall delay

memanggil untuk melakukan perintah selanjutnya clr St11

Isi nilai 0 pada stepper 11 ret

lakukan perintah kembali Putar_Roller_Dikit:

mov r0,#5

isi nilai 5 keregister 0 (r0) Loop_Putar_Roller_Dikit


(59)

isi nilai 1 pada stepper 14

Clr St11

Isi nilai 0 pada stepper 11 acall delay

memanggil untuk melakukan perintah selanjutnya setb St13

isi nilai 1 pada stepper 13

Clr St14

Isi nilai 0 pada stepper 14 acall delay

memanggil untuk melakukan perintah selanjutnya setb St12

isi nilai 1 pada stepper 12 Clr St13

Isi nilai 0 pada stepper 13 acall delay

memanggil untuk melakukan perintah selanjutnya setb St11

isi nilai 1 pada stepper 11 Clr St12

Isi nilai 0 pada stepper 12 acall delay


(60)

memanggil untuk melakukan perintah selanjutnya djnz r0,Loop_Putar_Roller_Dikit

meneruskan perintah sekat bawah buka clr St11

Isi nilai 0 pada stepper 11 ret

lakukan perintah kembali

delay: selanjutnya

mov r7,#70

isi nilai 70 keregister 7 (r7) dly:

selanjutnya mov r6,#255

isi nilai 255 keregister 6 (r6) djnz r6,$

melanjutkan register 6 (r6),$

djnz r7,dly

melanjutkan register r7, melakukan perintah selanjutnya ret

lakukan perintah kembali Tunda:


(61)

mov r7,#10

isi nilai 10 keregister 7 (r7) tnd:

rutin

mov r6,#255

isi nilai 255 keregister 6 (r6) td:

rutin

mov r5,#255

isi nilai 255 keregister 5 (r5) djnz r5,$

melanjutkan register 5 (r5),$ djnz r6,td

melanjutkan register 6 (r6),rutin djnz r7,tnd

melanjutkan register 7 (r7),rutin ret


(62)

BAB 4

PENGUJIAN RANGKAIAN DAN PROGRAM

4.1 Pengujian Rangkaian Power Supplay (PSA)

Pengujian pada bagian rangkaian power supplay ini dapat dilakukan dengan mengukur tegangan keluaran dari rangkaian ini dengan menggunakan volt meter digital. Dari hasil pengujian diperoleh tegangan keluaran sebesar + 5,1 volt.dan +12,2 volt Tegangan ini dipergunakan untuk mensupplay tegangan ke seluruh rangkaian. Mikrokontroler AT89S52 dapat bekerja pada tegangan 4,0 sampai dengan 5,5 volt, sehingga tegangan 5,1 volt ini cukup untuk mensupplay tegangan ke mikrokontroler AT89S52. Dengan demikian rangkaian ini sudah dapat bekerja dengan baik.

4.2 Pengujian Rangkaian Mikrokontroller AT89S52

Untuk mengetahui apakah rangkaian mikrokontroller AT89S52 telah bekerja dengan baik, maka dilakukan pengujian. Pengujian bagian ini dilakukan dengan memberikan program sederhana pada mikrokontroller AT89S52. Programnya adalah sebagai berikut:


(63)

Loop:

Setb P0.0 Acall tunda Clr P0.0 Acall tunda Sjmp Loop Tunda:

Mov r7,#255 Tnd: Mov r6,#255

Djnz r6,$ Djnz r7,tnd Ret

Program di atas bertujuan untuk menghidupkan LED yang terhubung ke P0.0 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 tampak LED tersebut tampak berkedip.

Lamanya waktu tunda dapat dihitung dengan perhitungan sebagai berikut :

Kristal yang digunakan adalah kristal 12 MHz, sehingga 1 siklus mesin membutuhkan waktu = 12 1


(64)

Mnemonic Siklus Waktu Eksekusi

MOV Rn,#data 2 2 x 1 μd = 2 μd

DJNZ 2 2 x 1 μd = 2 μd

RET 1 1 x 1 μd = 1 μd

Tunda:

mov r7,#255 2 Tnd: mov r6,#255 2

djnz r6,$ 255 x 2 = 510 x 255 = 130.054 = 130.058 = 130.059 μd

djnz r7,loop3 2 djnz r2,loop8 2

ret 1

Jadi waktu yang dibutuhkan untuk mengerjakan program di atas adalah 130.059 μdetik atau 0,130059 detik dan dapat dibulatkan menjadi 0,13 detik.

Jika program tersebut diisikan ke mikrokontroller AT89S52, kemudian mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian minimum mikrokontroller AT89S52 telah bekerja dengan baik.


(65)

4.3 Rangkaian Pemancar Infra Merah

Pengujian pada rangkaian sensor ini dapat dilakukan dengan cara menghubungkan rangkaian ini dengan sumber tegangan 5 volt, kemudian meletakkan 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 (Box), yang menyebabkan pancaran infra merah tidak mengenai potodioda, hal ini menyebabkan LED indikator pada rangkaian penerima tidak menyala dan tegangan output dari rangkaian ini sebesar 4,8 volt.. Rangkaian pemancar infra merah tampak seperti gambar di bawah ini,

Pancaran infra merah

Peneriman photo dioda

330฀ VCC

5V


(66)

Gambar 4.1 Rangkaian Pemancar dan penerima infra merah

Pengujian selanjutnya dilakukan dengan cara menghubungkan rangkaian ini dengan rangkaian mikrokontroler AT89S52, dan memberikan program tertentu pada mikrokontroler AT89S52.Untuk mendeteksi adanya sinyal yang dikirimkan oleh 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 mobil yang lewat, namun jika sinyal yang dikirimkan adalah sinyal low, maka ini berarti ada Box yang lewat. Program untuk mendeteksi pengiriman sinyal dari rangkaian sensor ini adalah,

Sensor Bit P1.3

Cek_Sensor:

Jnb sensor,Cek_Sensor Clr P3.7

. . .

Di awal program dibuat inisialisasi port, dimana rutin ini menunjukkan bahwa sensor dihubungkan ke P1.3. Pada rutin ini program akan melihat kondisi P1.3 yang


(67)

dihubungkan ke sensor, dengan menggunakan perintah JnB (jump if not bit), jika kondisi P1.3 bit (high), yang berarti tidak ada kendaraan yang masuk, maka program akan lompat ke rutin cek sensor. 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, maka rangkaian telah bekerja dengan baik.


(68)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

1. Setelah dilakukan studi dalam pengisian gula kedalam box infrah merah bekerja dengan baik sesuai dengan fungsinya sebagai saklar otomatis.

2. pada mikrokontroller AT89S52 sebagai tempat meroses data mikrokontroller sangat cepat mengirim data, dan AT89S52 didukung memory yang dua kali lipat dari pada mikrokontroller sejenisnya,sehingga tidak ada gangguan untuk mengirim data ke sensor dan ke motor Stepper.

3. Setelah dilakukan sistem kecerdasan alat Alat bekerja dengan baik walaupun dalam mengisi dan mengeluarkan gula ada gula yang curah atau tumpa itu di sebabkan adanya getaran dari pergerakan motor Stepper.


(69)

5.2 Saran

1. Agar sistem atau rangkaian yang digunakan tidak terganggu,sebaiknya alat ini dikemas dalam bentuk yang lebih aman dan terlindung sehingga penggunaanya lebih efektif.

2. Untuk di masa yang akan datang,agar alat ini lebih di tingkatkan dan dikembangkan, seperti penggunaan sensor yang berbeda karena fotodioda sangat mudah terganggu jika ada cahaya di sekelilingnya.

3. Alangkah baiknya jika alat ini dimanfatkan dan sosialisasikan kegunaanya dikalangan mahasiswa, guna mengembangkan teknologi dan inovasi dikalangan mahasiswa.


(70)

DAFTAR PUSTAKA

Robert F. Coughlin, Frederick F. Driscoll, Herman Widodo Soemitro, "PENGUAT

OPERASIONAL DAN RANGKAIAN TERPADU LINEAR", Penerbit Erlangga,

Edisi kedua, 1994.

Agfianto, Belajar Mikrokontroler AT89C51/52/55 teori dan Aplikasi, Edisi Kedua, Penerbit Gava Media, Yogyakarta, 2004.

A.K.jain, Fundamental of Digital Image Procesing, Prentice-Hal Internasional, Inc 1989. Andi,Panduan Praktis Antar Muka dan Pemograman Mikrokontroler AT89C51, Penerbit

PT Elex Media Komputindo,Jakarta 2003.

Cooper, David William, nstrumentasi Elektronik Dan Teknik Pengukuran, Penerbit: Erlangga, Jakarta, 1994.

Malvino, Albert paul, Prinsip-prinsip Elektronika, Jilid 1 dan 2, Edisi pertama, penerbit: Salemba Teknika, Jakarta 2003.

Roger L.Thokem , Elektronika Digital,Edisi Ketiga, penerbit Erlangga, Jakarta, 1995. Smith, C. Kenneth, Rangkaian Mikroelektronik, Jilid 1 Penerbit Erlangga, Jakarta, 1990. Suhata, Aplikasi Mikrokontroler Sebagai Pengendali Peralatan Elektrronik via Line

Telepon, Penerbit PT Elex Media Komputindo, Jakarta 2004.


(71)

Gambar Pengisian gula dengan menggunakan sensor optik sebagai

saklar dan motor Stepper sebagai penggerak conveyor dengan


(1)

Gambar 4.1 Rangkaian Pemancar dan penerima infra merah

Pengujian selanjutnya dilakukan dengan cara menghubungkan rangkaian ini dengan rangkaian mikrokontroler AT89S52, dan memberikan program tertentu pada mikrokontroler AT89S52.Untuk mendeteksi adanya sinyal yang dikirimkan oleh 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 mobil yang lewat, namun jika sinyal yang dikirimkan adalah sinyal low, maka ini berarti ada Box yang lewat. Program untuk mendeteksi pengiriman sinyal dari rangkaian sensor ini adalah,

Sensor Bit P1.3

Cek_Sensor:

Jnb sensor,Cek_Sensor Clr P3.7

. . .

Di awal program dibuat inisialisasi port, dimana rutin ini menunjukkan bahwa sensor dihubungkan ke P1.3. Pada rutin ini program akan melihat kondisi P1.3 yang


(2)

dihubungkan ke sensor, dengan menggunakan perintah JnB (jump if not bit), jika kondisi P1.3 bit (high), yang berarti tidak ada kendaraan yang masuk, maka program akan lompat ke rutin cek sensor. 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, maka rangkaian telah bekerja dengan baik.


(3)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

1. Setelah dilakukan studi dalam pengisian gula kedalam box infrah merah bekerja dengan baik sesuai dengan fungsinya sebagai saklar otomatis.

2. pada mikrokontroller AT89S52 sebagai tempat meroses data mikrokontroller sangat cepat mengirim data, dan AT89S52 didukung memory yang dua kali lipat dari pada mikrokontroller sejenisnya,sehingga tidak ada gangguan untuk mengirim data ke sensor dan ke motor Stepper.

3. Setelah dilakukan sistem kecerdasan alat Alat bekerja dengan baik walaupun dalam mengisi dan mengeluarkan gula ada gula yang curah atau tumpa itu di sebabkan adanya getaran dari pergerakan motor Stepper.


(4)

5.2 Saran

1. Agar sistem atau rangkaian yang digunakan tidak terganggu,sebaiknya alat ini dikemas dalam bentuk yang lebih aman dan terlindung sehingga penggunaanya lebih efektif.

2. Untuk di masa yang akan datang,agar alat ini lebih di tingkatkan dan dikembangkan, seperti penggunaan sensor yang berbeda karena fotodioda sangat mudah terganggu jika ada cahaya di sekelilingnya.

3. Alangkah baiknya jika alat ini dimanfatkan dan sosialisasikan kegunaanya dikalangan mahasiswa, guna mengembangkan teknologi dan inovasi dikalangan mahasiswa.


(5)

DAFTAR PUSTAKA

Robert F. Coughlin, Frederick F. Driscoll, Herman Widodo Soemitro, "PENGUAT OPERASIONAL DAN RANGKAIAN TERPADU LINEAR", Penerbit Erlangga, Edisi kedua, 1994.

Agfianto, Belajar Mikrokontroler AT89C51/52/55 teori dan Aplikasi, Edisi Kedua, Penerbit Gava Media, Yogyakarta, 2004.

A.K.jain, Fundamental of Digital Image Procesing, Prentice-Hal Internasional, Inc 1989. Andi,Panduan Praktis Antar Muka dan Pemograman Mikrokontroler AT89C51, Penerbit

PT Elex Media Komputindo,Jakarta 2003.

Cooper, David William, nstrumentasi Elektronik Dan Teknik Pengukuran, Penerbit: Erlangga, Jakarta, 1994.

Malvino, Albert paul, Prinsip-prinsip Elektronika, Jilid 1 dan 2, Edisi pertama, penerbit: Salemba Teknika, Jakarta 2003.

Roger L.Thokem , Elektronika Digital,Edisi Ketiga, penerbit Erlangga, Jakarta, 1995. Smith, C. Kenneth, Rangkaian Mikroelektronik, Jilid 1 Penerbit Erlangga, Jakarta, 1990. Suhata, Aplikasi Mikrokontroler Sebagai Pengendali Peralatan Elektrronik via Line

Telepon, Penerbit PT Elex Media Komputindo, Jakarta 2004.


(6)

Gambar Pengisian gula dengan menggunakan sensor optik sebagai

saklar dan motor Stepper sebagai penggerak conveyor dengan