• Tidak ada hasil yang ditemukan

Index of /students/paper/skripsi/20404128 BAB empat skripsi

N/A
N/A
Protected

Academic year: 2017

Membagikan "Index of /students/paper/skripsi/20404128 BAB empat skripsi"

Copied!
11
0
0

Teks penuh

(1)

29

Rangkaian ini bekerja berdasarkan dua buah sensor yang di pasang secara berdampingan, dengan memanfaatkan Phototransistor sebagai sensor. Sensor Phototransistor yang berguna untuk mendeteksi orang masuk , kemudian mikrokontroler akan mengendalikan tampilan 7-segment untuk menunjukkan jumlah orang di dalam suatu ruangan dan buzzer untuk indikator atau menandakan adanya orang masuk.

[image:1.612.134.507.317.639.2]
(2)

4.2 Diagram Alir Program

Berikut merupakan program untuk Alat Penghitung Banyaknya Orang yang ada didalam suatu ruangan berdasarkan penjelasan pada diagram alir pada gambar yang ditulis dengan menggunakan bahasa pemrograman assembler:

[image:2.612.144.498.242.653.2]

Diagram Alir Program :

(3)

Prinsip kerja diagram alir program adalah sebagai berikut :

• Program di mulai dengan mengisi TMOD (Timer Mode Register) dengan 01H, TL0 (Timer 0 Low Byte) dengan 0B8H, dan TH0 (Timer 0 High Byte) dengan 8EH, artinya interupsi terjadi setiap 25 ms:

UTAMA: mov TMOD,#01H ; memasukkan nilai 01H ke register TMOD mov TL0,#0B8H ; memasukan nilai 0B8H ke register TL0 mov TH0,#8EH ; memasukan nilai 8EH ke register TH0

• Selanjutnya Interupsi Timer 0 dan Interupsi global diaktifkan, dengan list program :

setb ET0 ; memberikan bit 1 ke pin ET0 ( enable Timer 0 ) setb EA ; memberikan bit 1 ke EA ( aktifkan interupsi )

• Timer 0 dihidupkan , dengan list program :

setb TR0 ; memberikan bit 1 ke TR0 ( aktifkan Timer 0 )

• Register 1 dan 2 di isi dengan 0, list program :

AWAL: mov R1,#0 ; memberikan register 1 dengan nilai awal 0 mov R2,#0 ; memberikan register 2 dengan nilai awal 0 • Data dari akumulator dikirim dan ditampilkan ke Port 0, kemudian discan

secara berulang dari P2.6 ke P2.5, dengan list program : LOOP: mov A,R1 ; memasukan nilai di R1 ke A mov dptr,#ANGK ; menunjuk data pointer ke ANGK movc A,@A+DPTR

mov P0,A ; memasukan nilai a ke P0

(4)

setb P2.7 ; memberikan pin P2.7 (set relay ) mov A,R2 ; memasukan nilai R2 ke dalam A mov dptr,#ANGK ; menunjuk ke data pointer ANGK movc A,@A+DPTR

mov P0,A ; memasukan nilai A ke P0 clr P2.6 ; memberikan bit 0 pada pin P2.6 call delay ; memanggil subroutin delay setb P2.6 ; memberikan bit 0 pada pin P2.6 jmp loop ; kembali ke loop

Prinsip kerja diagram alir program interupsi adalah sebagai berikut : • Program di mulai dengan mengisi TL0 (Timer 0 Low Byte) dengan 0B8H,

dan TH0 (Timer 0 High Byte) dengan 8EH, list program : INTERRUPT :

BACA: mov TL0,#0B8H ; memberikan nilai TL0 dengan nilai 0B8H mov TH0,#8EH ; memberikan nilai TH0 dengan alamt 8EH

• Apabila R4 dan R3 sama dengan 0 maka P0.7 diberi logika 1 (non aktifkan buzzer) kemudian baca port 1, tetapi apabila R4 dan R3 tidak sama dengan 0 maka proses berikutnya baca port 1. Langkah selanjutnya apakah tidak ada orang masuk ? jika ya, kembali ke program utama dan ulangi perintah, jika tidak, lanjutkan ke proses berikutnya. Dengan list program :

djnz R4,SKIP ; mengurangi satu nilai R4 jika R4 tidak

sama dengan 0 loncat ke SKIP

djnz R3,SKIP ; mengurangi satu nilai R3 jika R3 tidak sama dengan 0 loncat ke SKIP

setb P0.7 ; memberikan pi P0.7 dengan bit 1

SKIP: mov A,P1 ; memasukan nilai P1 ke A

(5)

MASUK

sjmp BACK ; Loncat ke BACK

• Langkah berikutnya jika apakah ada orang masuk ? jika ya, tunggu sampai P1.1 sama dengan 0 kemudian bunyikan buzzer (isi P0.7 dengan logika 0) dan naikkan indeks data R2 dengan 1. jika tidak, apakah ada orang keluar ? jika tidak, kembali ke program utama dan ulangi perintah. Jika ya, tunggu sampai P1.0 sama dengan 0 kemudian bunyikan buzzer (isi P0.7 dengan logika 0) dan turunkan indeks data R2 dengan 1. Dengan list program : MASUK: cjne A,#0FEH,KELUAR ; Jika A tidak sama dengan 0FEH loncat ke

Keluar

TM : jb P1.0,TM ; Loncat ke TM jika P1.0 sama dengan 1 TS : jnb P1.0,TS ; Loncat ke TS jika P1.0 tdk sama dengan 1 call BUZZER

mov R4,#0H ; memasukan nilai 0H ke R4 mov R3,#0AH ; memasukan nilai AH ke R3 inc R2 ; memberikan R3 ditambah 1

call UJI_MS ; memanggil prosedur UJI_MS cjne R2,#0AH,BACK ; Jika R2 tidak sama dengan 0AH loncat ke

BACK

mov R2,#0 ; memasukan R2 dengan nilai 0 inc R1 ; memberikan R1 ditambah 1

cjne R1,#0AH,BACK ; Jika R1 tidak sama dengan 0AH loncat ke BACK

mov R1,#0 ; memasukan register 1 sama dengan 0 mov R2,#0 ; memasukan register 2 sama dengan 0 jmp BACK ; Loncat ke BACK

(6)

R1 dengan 1. Langkah berikutnya apabaila R1 tidak sama dengan -1 maka kembali program utama dan ulangi perintah, tetapi jika R1 sama dengan -1, maka isi R1 dan R2 dengan 0. Dengan list program :

KELUAR: cjne A,#0FDH,BACK ; Jika A tidak sama dengan 0FD loncat BACK

TK : jb P1.1,TK ; Loncat ke TK jika P1.1 sama dengan 1 TSL : jnb P1.1,TSL ; Loncat ke TSL jika P1.1 tdk sama dengan 1 call BUZZER

mov R4,#0H ; memasukan nilai 0H ke R4 mov R3,#0AH ; memasukan nilai AH ke R3 call UJI_KL ; memanggil prosedur UJI_KL dec R2 ; memberikan R2 dikurangi 1

cjne R2,#0FFH,BACK ; Jika R2 tidak sama dengan 0FF loncat ke BACK

mov R2,#9 ; memasukan R2 dengan nilai 9 dec R1 ; memberikan R1 dikurangi 1

cjne R1,#0FFH,BACK ; Jika R1 tidak sama dengan 0FFH loncat ke BACK

mov R1,#0 ; memasukan register 1 sama dengan 0 mov R2,#0 ; memasukan register 2 sama dengan 0

BACK : reti ; return kembali dari prosedur BUZZER : clr P0.7

call DELAY setb P0.7 ret

(7)

ret

UJI_MS : cjne R2,#1H,BALIK ; Jika R2 tdk sama dengan 1H loncat ke BALIK

cjne R1,#0H,BALIK ; Jika R1 tdk sama dengan 0H loncat ke BALIK

clr P2.5 ; memberikan bit 0 pada P2.5

jnb P3.0, KIPAS ; Loncat ke KIPAS jika P3.0 tdk sama dengan 1

ret ; retrun

KIPAS : clr P2.0 ; memberikan bit 0 pada P2.0

UJI_KL : cjne R2,#0H,BLK ; Jika R2 tidak sama dengan 0 loncat ke BLK

cjne R1,#0H,BLK ; Jika R1 tidak sama dengan 0 loncat ke BLK

setb P2.5 ; memberikan 1 bit pada P2.5 setb P2.0 ; memberikan 1 bit pada P2.0

ret ; retrun

BALIK : ret ; retrun

BLK : ret ; kembali prosedur UJI_MS ANGK : db 11000000b

(8)

4.3 Prosedur Uji Coba Rangkaian

Setelah rangkaian selesai dikerjakan maka penulis perlu melakukan pengujian terhadap rangkaian secara keseluruhan dengan bergantian.

Adapun hal-hal yang perlu penulis lakukan untuk pengujian sebagai berikut:

1. Siapkan alat atau rangkaian yang akan di uji coba.

2. Menyiapkan Catu Daya dengan arus searah (DC) sebesar +5 volt. 3. Menghubungkan rangkaian atau alat dengan catu daya sebesar +5 volt. 4. Setelah rangkaian atau alat terhubung dengan catu daya, maka alat telah

siap diuji.

5. Untuk memberikan inputan pada mikrokontroller, dengan cara memberi inputan melalui sebuah sensor infa merah. Yaitu dengan cara memutus gelombang cahaya yang di pancarkan oleh LED infa merah pada sensor tersebut, maka sensor tersebut akan menghasilkan output yang akan di berikan untuk mikrokontroller. Selain sensor phototransistor penulis juga menggunakan sensor suhu sebagai inputan untuk menggerakan kipas angin.

6. Setelah itu output yang telah didapat dari mikon maka akan dilanjutkan kembali sebagai inputan untuk buzzer dan seven segment.

7. Buzzer digunakan sebagai indikator untuk penanda ada tidaknya orang yang masuk ke dalam ruangan.

8. Sevent Segment digunakan sebagai tampilan dari berapa banyak orang yang telah masuk ke dalam ruangan.

(9)

melebihi dari suhu rata-rata maka kipas angin tersebut akan bergerak, dan jika suhu tidak melebihi dari suhu rata-rata maka kipas tidak akan bergerak.

4.4 Hasil Uji Coba Rangkaian

Pada rangkaian yang dibuat penulis perlu melakukan uji coba untuk memastikan apakah Rangkaian ini dapat berjalan dengan baik dan tidak terjadi masalah pada saat digunakan. Uji coba dilakukan dengan memberi inputan melalui sensor Phototransistor dan diteruskan kembali ke Mikrokontroller AT89S51 dan diketahui hasilnya pada 7_Segment dan Buzzer sebagai outputnya. Dari hasil uji coba yang dilakukan dapat dilihat pada tabel 4.1 :

Orang Masuk

Tampilan 7_Segment 1

Tampilan 7_Segment 2

Keadaan Buzzer

Tegangan Output

00 0 0 0 2,5 V

01 0 1 1 3,8 V

02 0 2 1 3,8 V

03 0 3 1 3,8 V

04 0 4 1 3,8 V

05 0 5 1 3,8 V

06 0 6 1 3,8 V

07 0 7 1 3,8 V

08 0 8 1 3,8 V

09 0 9 1 3,8 V

[image:9.612.132.508.325.679.2]
(10)

Dari hasil percobaan yang telah dilakukan dengan simulasi banyaknya orang yang masuk. Banyaknya orang yang masuk dibatasi sampai 99 orang saja yang dapat terhitung oleh rangkaian ini. Jika rangkaian ini dicoba dengan banyaknya orang melebihi batas yang telah ditentukan tidak akan terlihat pada tampilan 7_segment. Karena 7_segment yang digunakan hanya dua buah 7_segment.

Dari hasil percobaan yang telah dilakukan didapatkan hasil yang tertera pada tabel 4.1. Pada tabel 4.1 tersebut hanya dicantumkan sampai 9 orang saja yang masuk, karena hanya untuk simulasi dari alat yang di buat. Akan tetapi batas maksimal untuk percobaan hanya 99 orang saja yang bisa terbaca pada sevent segment.

Penulis juga melakukan uji coba rangkaian secara keseluruhan karena pada rangkaian sensor cahaya infrared, ketika sensor dalam keadaan terkena cahaya atau dalam keadaan tidak aktif maka sensor tersebut memiliki tegangan output.

Pada tabel 4.2 dapat dilihat hasil dari pengujian yang dilakukan dengan menggunakan voltmeter pada saat sensor terhalang oleh orang yang melewati sensor dan tidak terhalang oleh orang:

Sensor Infa Merah (Infrared)

Sebelum Input (V)

Setelah input (V)

Keadaan Led (Output)

Masuk 2,2 Volt 3,8 Volt Mati

Keluar 2,2 Volt 3,8 Volt Mati

[image:10.612.142.514.475.600.2]

(Sumber : Hasil Uji Coba Laboratorium, 2009)

Tabel 4.2 Hasil Uji Coba Sensor Infrared

(11)

Sensor Suhu (LM35) Output (V) Keadaan Led (Output)

Keadaan Kipas Angin

Suhu Normal 2,6 Volt Hidup Mati

Suhu Maksimum ± 5,0 Volt Mati Hidup

[image:11.612.142.513.134.261.2]

(Sumber : Hasil Uji Coba Laboratorium, 2009)

Tabel 4.3 Hasil Uji Coba Sensor Suhu LM35

Dari hasil data pengamatan yang telah diperoleh dalam uji coba sensor suhu LM35, maka diketahui cara kerja dan dapat dianalisa bahwa sensor suhu tersebut bekerja atau aktif apabila sensor mendeteksi suhu mencapai suhu maksimum yang telah ditentukan. Dan sensor tersebut akan mengaktifkan kipas angin secara otomatis. Apabila suhu di dalam ruangan kembali normal maka kipas angin akan non aktif kembali.

4.5 Kendala Rangkaian

Gambar

Gambar 4.1  Skema rangkaian Secara Detail
Gambar 4.2 Diagram Alir Program
Tabel 4.1  Hasil Uji Coba Rangkaian
Tabel 4.2  Hasil Uji Coba Sensor Infrared
+2

Referensi

Dokumen terkait

Genetic knowledge, skills, and attitudes are important for primary care physicians in providing support and management to patients and families with higher risks of

Panitia Pengadaan Barang/Jasa Dinas Tata Ruang dan Permukiman Kota Depok Tahun Anggaran 2012. PEMERINTAH

In this workshop we will discuss tips and tricks for those three basic lab methods, such as the ways to improve amount and purity of DNA extraction from blood and tissues, avoid

Cytogenetic analysis is still useful and applicable in genetic disease diagnosis, sexual assignment, and hematologic malignancy in the laboratory with minimal equipments.

Dengan ini diumumkan bahwa sebagai pemenang seleksi sederhana Pembangunan Sistem Informasi Pengelolaan Obat Dinas Kesehatan Kota Depok Tahun Anggaran 2012 adalah sebagai berikut

Hasil uji coba menunjukkan bahwa komponen Web Data Analyzer mampu memonitor dan menganalisa data aktivitas browsing pengguna serta melakukan otomatisasi terhadap fitur

[r]

130 tahun 2000, pembebasan hutang untuk debitur kecil seperti Kredit Usaha Keluarga Prasejahtera (Kukesra), Kredit Usaha Tani (KUT), Kredit untuk perumahan sangat sederhana