You are on page 1of 85

44

DAFTAR ISI LEMBAR PENGESAHAN-1 LEMBAR PENGESAHAN-2 KATA PENGANTAR ABSTRAK DAFTAR ISI DAFTAR GAMBAR DAFTAR TABEL

BAB I PENDAHULUAN A. Latar Belakang........................................................................................... 1 B. Rumusan Masalah..................................................................................... 2 C. Tujuan dan Manfaat................................................................................... 2 D. Teknik Pengumpulan data......................................................................... 3 E. Sistematika Pembahasan........................................................................... 3

BAB II DASAR TEORI A. Mikrokotroler AT89C51............................................................................ 4 1. Pena-pena Mikrokontroler................................................................... 7 2. Perangkat Lunak Mikrokontroler .......................................................11 a. b. c. d. Instruksi Transfer Data .............................................................................11 Instruksi Aritmatik ....................................................................................12 Instruksi Logika ........................................................................................12 Instruksi Transfer Kendali ........................................................................13

44

3. 4. 5. 6. 7.

Interupsi ...................................................................................................15 Organisasi memory ..................................................................................16 I/O Port ....................................................................................................17 Timer/Counter ..........................................................................................19 sistem Interupsi ........................................................................................20 B. Pesawat Telepon Jenis DTMF ..................................................................21 C. Schmitt Trigger .........................................................................................23 D. Relay .........................................................................................................24 E. IC MT8870 ...............................................................................................25 F. Transistor sebagai Sakelar ........................................................................28 G. Photo Transistor ........................................................................................29 H. Telepon Nirkabel (Cordless Phone) ..........................................................31 1. Base ......................................................................................................33 2. Handset .................................................................................................34 I. Transistor sebagai Penguat .......................................................................36 J. Laser ..........................................................................................................38 K. Induktor Selenoida ....................................................................................39 L. Limit Swicth .............................................................................................42

BABA III PERANCANGAN DAN REALISASI A. Perancangan Diagram Blok ......................................................................42 B. Perancangan Hardware .............................................................................45 1. 2. Rangkaian Sensor Switch ........................................................................46 Rangkaian Relay dan Selenoid .................................................................46

44

3. 4. 5.

Rangkaian Tone Decoder .........................................................................49 Rangkaian Pemancar dan Penerima Laser ...............................................50 Rangkaian Sistem minimum AT89C51 ....................................................52

BAB IV PENGUJIAN DAN ANALISA RANGKAIAN A. Pengujian Sistem secara Hardware...........................................................54 1. 2. 3. 4. 5. 6. Pengujian Rangkaian Selenoid .................................................................54 Pengujian Rangkaian Sensor Switch ........................................................55 Pengujian Rangkaian Tone decoder .........................................................56 Pengujian Pemancar dan penerima Laser .................................................57 Pengujian Rangkaian Sistem Minimum AT89C51 ..................................58 Pengujian Rangkaian Sistem secara Keseluruhan ....................................61

BAB V KESIMPULAN DAN SARAN A. Kesimpulan ...............................................................................................62 B. Saran .........................................................................................................62

44

LEMBAR PENGESAHAN-1

Yang bertanda tangan dibawah ini, Panitia Ujian Program Diploma III, Program Studi Teknik Telekomunikasi, Jurusan Teknik Elektro Politeknik Negeri Medan, menyatakan bahwa laporan Tugas Akhir dari : Nama : Lailan Aziza Nim : 022306155

Dengan judul : PERANCANGAN DAN PEMBUATAN SISTEM SECURITY PAGAR DENGAN MEDIA LASER BERBASIS MIKROKONTROLER AT89C51 telah diketahui dan disetujui oleh: Medan, September 2005 Dosen Pembimbing,

Budi Harianto, ST NIP 132 014 276 Kepala Program Studi Ketua Jurusan Teknik Elektro

Junaidi, ST NIP 131 788 339

Drs. Ansharuddin,SST NIP : 131 815 341

44

LEMBAR PENGESAHAN-2

Yang bertanda tangan dibawah ini, Panitia Ujian Program Diploma III, Program Studi Teknik Telekomunikasi, Jurusan Teknik Elektro Politeknik Negeri Medan, menyatakan bahwa laporan Tugas Akhir dari : Nama : Lailan Aziza Nim : 02306157

Dengan judul : PERANCANGAN DAN PEMBUATAN SISTEM SECURITY PAGAR DENGAN MEDIA LASER BERBASIS MIKROKONTROLER AT89C51 telah selesai diujiankan pada tanggal 03 September 2005 oleh panitia ujian :

Penguji I,

Penguji II,

Wiwinta Sutrisno,ST NIP: 132 256 187

Julham, ST NIP: 132 295 983

Koordinator Sidang,

Sangap Mulyadi, ST NIP :132 299 662

44

KATA PENGANTAR

Assalamualaikum Wr.Wb Syukur Alhamdulillah penulis ucapkan kepada Allah SWT, Karena atas berkat rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan laporan tugas akhir ini dengan baik hingga batas waktu yang telah ditentukan. Laporan tugas akhir ini diberi judul PERANCANGAN DAN PEMBUATAN SISTEM SECURITY PAGAR DENGAN MEDIA LASER BERBASIS MICROCONTROLER AT89C51 yang disusun sebagai syarat untuk menyelesaikan Program Pendidikan Diploma III, Jurusan Teknik Elektro, Program Studi Teknik Telekomunikasi Politeknik Negeri Medan. Dalam proses pembuatan Laporan Tugas Akhir ini, penulis banyak mendapat bantuan, bimbingan dan pengarahan dari berbagai pihak baik berupa material,spiritual, informasi maupun segi administrasi. Oleh karena itu sudah selayaknya penulis mengucapkan terima kasih kepada: 1. 2. 3. Bapak Zulkifli Lubis, MI.Kom, Direktur Politeknik Negeri Medan. Bapak Drs. Ansharuddin, SST, Kepala Jurusan Teknik Elektro. Bapak Junaidi, ST, Kepala Program Studi Teknik Telekomunikasi. 4. Bapak Budi Heryanto, ST, sebagai dosen pembimbing yang telah banyak mengluangkan waktu, tenaga dan pemikiran dalam membantu

menyelesaikan Tugas Akhir ini. 5. 6. Bapak Waldemar Banurea, ST, Dosen Wali TK-6C. Staf dan pegawai Politeknik Negeri Medan.

44

7. Teristimewa untuk Buya (Drs.M.K.Nawal Hrp), Ummi (Rosmawati Lbs) yang selalu memberikan dorongan baik moril maupun spiritual serta doa untuk kesuksesan penulis dalam berbagai bidang yang pada akhirnya tersiapkan laporan tugas akhir ini, serta adinda tercinta Biendha Hrp dan Rozi Hrp. 8. Spesial buat Hendra yang telah memberikan dorongan dan motivasi guna keberhasilan penulis menyelesaikan laporan tugas akhir ini. 9. Teman-teman sekelas TK-6C, Lailan, Imbryan, Edi, Tejo, Boim Lebon, Shatan Maniz,Putra Aja, Rindu, Fitri, Linda dan yang lainnya yang tidak disebutkan satu persatu. Senang punya sahabat seperti kalian. Makasih buat kebersamaan dan waktu-waktu indah yang kita lewati bersama dan makasih juga atas support yang kalian beri. You always in my heart Guys. 10. Teman-teman mesin Anwar, Rasyid, Jhon, Syafii, Yogi, Edi, Rudi, Hendrik, Thanks ya buat kebersamaan kita selama ini.

Medan,

September 2005

Hormat saya penulis,

Ika Nursaidah Hrp NIM : 022306155

44

ABSTRAK Dengan pesatnya perkembangan ilmu teknologi telah banyak diciptakan sistem security canggih yang dikontrol melalui sistem komputerisasi, hal ini menginspirasikan kami untuk merancang sebuah sistem security yang berguna untuk sistem proteksi pada sebuah berlian. Selain dapat menjaga dan mengamankan suatu benda-benda berharga baik diperusahaan, rumah tangga, dan sarana hiburan dapat juga bertujuan untuk menciptakan sistem proteksi terhadap gangguan ataupun ancaman dari luar yang dapat menyebabkan terjadinya kerugian. Perancangan alat Sistem security pagar dengan media laser berbasis microcontroller AT89C51 ini membuat sistem pengamanan berlian dengan menggunakan sinar laser untuk memagari keliling berlian. Apabila jika ada orang yang melewati pagar laser akan hidup sebuah alarm peringatan. Laser dibuat dengan memanfaatkan dioda laser sebagai pemancar dan photo transistor sebagai penerima. Selain itu alat ini juga menggunakan wireless phone yang dapat menginput dari jarak jauh sesuai kemampuan wireless phone. Untuk perancangan software dan hardware meliputi pembuatan blok, pembuatan Flowchart, diagram, skematis, lay out PCB serta menggunakan bahasa pemrograman Assembly.

44

BAB I PENDAHULUAN A. Latar Belakang Masalah Sistem security telah banyak di ciptakan dengan memiliki jenis dan bentuk yang beragam sesuai dengan lokasi dan kondisi lapangan. Sistem security sangat dibutuhkan untuk proteksi terhadap bendabenda berharga misalnya barang-barang antik yang mahal, penyimpanan berlian, mahkota, emas, dan lukisan yang diletakkan ditempat-tempat penyimpanan. Kecenderungan manusia adalah menginginkan segala pekerjaan yang dapat dilakukan dengan cepat dan tepat, dengan suatu alat yang sederhana namun berkemampuan tinggi. Selaras dengan perkembangan ilmu teknologi terutama di bidang ilmu elektronika , maka hal tersebut dapat di wujudkan dalam suatu alat elektronika. Atas dasar permasalahan ini maka penulis tertarik untuk membuat suatu sistem security yang berguna untuk sistem proteksi terhadap berlian, dengan menggunakan sinar laser untuk memagari keliling berlian tersebut, sehingga melewati pagar laser tadi akan hidup sebuah alarm peringatan. Alat ini di buat menggunakan microkontroler jenis MCS51 yaitu AT89C51, pagar di bangun memanfaatkan dioda laser sebagai pemancar dan photo transistor sebagai penerima, serta di lengkapi dengan wireless phone yang berfungsi untuk media input. Agar tidak terjadi pemalsuan sinar laser yang dipancarkan dari sumber sinar laser lain penulis merancang suatu sistem security pagar laser dengan menggunakan frekuensi dan penerimaan dilengkapi dengan penghitung frekuensi

44

B. Rumusan Masalah Mengingat luasnya permasalahan yang muncul dari perancangan dan pembuatan proyek ini, maka untuk mempermudah pemahaman dalam membaca laporan ini penulis membatasi masalah pada : 1. Telepon yang digunakan adalah telepon jenis wireless dengan batas jarak 50m.. 2. Bagaimana cara kerja mikrokontroler dalam mengaktifkan sinar laser dengan frekuensi 30 Hz. 3. Membatasi kode password yang digunakan hanya dengan 4 digit dan diakhiri dengan menekan tanda(*) pada keypad wireless phone.

C. Tujuan Dan Manfaat Adapun tujuan dari pembahasan tugas akhir ini adalah sebagai berikut : 1. 2. Membuat sistem security pagar dengan media laser. Mengaplikasikan pengamanan teknologi dengan untuk membuat suatu sinar alat laser sistem berbasis

berlian

menggunakan

mikrokontroler AT89C51 dengan pemrograman Assembly.

44

BAB II DASAR TEORI A. Mikrokontroller AT89C51 Mikrokontroler merupakan pengembangan dari mikroprosesor dimana mikrokontroler merupakan kombinasi dari Central Processing Unit (CPU), Memory (RAM maupun ROM), Timer/Counter, dan Input/Output (I/O) yang disatukan dalam chip tunggal. Kombinasi inilah yang membedakan

mikrokontroller dengan chip mikroprosessor. Keuntungan mikrokontroler tidak menggunakan memori dan I/O eksternal untuk aplikasi yang sederhana, karena sudah cukup dengan yang ada dalam chip mikrokontroler. Mikrokontroller AT89C51 merupakan keluarga MCS-51 yang terdiri atas CPU 8-bit dan beberapa peripheral pendukungnya seperti diperlihatkan pada gambar 2.1. Mikrokontroler AT89C51 adalah prosesor 8-bit dimana data diolah per 8bit. AT89C51 adalah mikrokontroler keluaran Atmel dengan 4Kbyte Flash PEROM (Programmable and Erasable Read Only Memory). AT89C51 merupakan memori dengan nonvolatile memory, isi memory dapat diisi ulang atau dihapus berkali-kali. Memori ini bisa digunakan untuk menyimpan instruksi (perintah) standar kode MCS-51 sehingga memungkinkan mikrokontroler dapat bekerja dalam single chip operation (mode operasi keping tunggal) yang tidak memerlukan external memory (memori luar) untuk menyimpan source kode .

44

Gambar diagram blok IC microkontroler AT89C51 secara lengkap dapat dilihat pada gambar 2.1. Dari diagram blok tersebut terlihat bahwa terdapat beberapa blok yaitu : 1. ALU ( Aritmatik Logik Unit ) ALU adalah suatu unit yang melaksanakan proses aritmatika dan logika seperti penjumlahan, pengurangan, pembagian, and, or, x or, rotasi clear dan komplemen operasi percabangan. 2. Akumulator Akumulator adalah merupakan register aritmatika yang berfungsi sebagai penampung data sebelum atau sesudah diproses. Sebagian besar instruksi pemrosesan data pada AT89C51 menggunakan akumulator sebagai operand sumber atau operand tujuan pengiriman data dari dan ke port. 3. Register B Register B digunakan selama operasi perkalian/pembagian 8 bit dan dapat juga digunakan sebagai register operand sumber atau operand tujuan. 4. Stack Pointer Stack Pointer berfungsi sebagai tempat penyimpanan variabel data yang ditindih dalam memori atau sebagai register penunjuk. 5. RAM (Random Acces Memory) RAM adalah memori yang dapat di baca atau di tulis . Data dalam RAM akan terhapus atau bersifat volatile bila catu daya di hilangkan. Karena sifat RAM yang volatile maka program mikrokontroler tidak disimpan dalam RAM. RAM digunakan untuk menyimpan data sementara, yaitu data yang tidak

44

begitu penting bisa hilang akibat aliran daya terputus. RAM pada IC ini mempunyai kapasitas sebesar 128 byte x 8 bit. 6. TMP1/TMP2 TMP1/TMP2 adalah timer/counter 16 bit yang terangkai secara internal. Program Address Register Program Addres Register merupakan alamat register dari program. 7. BUFFER Dilihat dari fungsinya Buffer pada IC ini merupakan penyangga agar data yang dipindahkan dari suatu register ke register lain tetap atau tidak berantakan. 8. RAM ADDRES REGISTER RAM Addres Register merupakan register sebagai jalan masuk menuju RAM Semua pengolahan data yang menuju RAM harus terlebih dahulu melewati RAM Addres Register.

44

0.0 P0.7

P2.0 P2.7 Port 0 drivers Port 0 drivers

Vcc Gnd RAM ADDR REGISTER RAM Port 0 Latch Port 2 Latch Flash

B Register

ACC

Stack pointer

Program address regiter

TMP2

TMP1 Buffer

Alu PC incrementer

psw PSEN ALE/PROG EA/Vpp RST

Interupt,serial Port and timer bolcks

Program cunter

Timing And cntrol

Instruction register

DPTR

Port 1 latch

Port 3 latch

OSC

Port 1 drivers P1.0 P1.7

Port 3 drivers P3.0 P3.7

Gambar 2.1 Diagram Blok IC89C51

1. Pena-Pena Mikrokontroller Susunan pena-pena mikrokontroler AT89C51 diperlihatkan pada gambar 2.2. Sedangkan penjelasan dari masingmasing pena adalah sebagai berikut: A. Pena 1 sampai 8 (port 1) merupakan port keluaran/masukan (I/O) bertipe open drain bidirectional yang biasa menerima low order address byte selama pada saat Flash Programming. Port ini mempunyai internal pull up dan berfungsi

44

sebagai input dengan memberikan logika 1. Sebagai output port ini dapat memberikan output sink keempat buah input TTL. Jika 1 diberikan pada kaki-kaki port 1, maka masing-masing kaki akan di-pulled high dengan pull up internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki port 1 dihubungkan ke ground (di pulled-low), maka masing-masing kaki akan memberikan arus (source) karena di pulled-high secara internal. B. Pena 9 (reset) adalah masukan reset (aktif tinggi). Reset akan aktif dengan memberikan input high selama 2 cycle. C. Pena 10 sampai 17 (port 3) adalah port parallel 8-bit dua arah yang dilengkapi dengan pull up internal. Port ini mempunyai fungsi spesial yaitu meliputi TXD (Transmit data), RXD (Receive data), INT0 (interrupt 0), INT1 (Interrupt 1), T0 (Timer 0), T1(Timer 1), WR (Write), dan RD (Read). Jika diberikan logika 1 ke kakikaki port 3, maka masing-masing kaki akan di-pulled high dengan pull up internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki port 3 dihubungkan ke ground (di-pulled low), maka masing-masing kaki akan memberikan arus (source) karena di-pulled high secara internal. Bila fungsi spesial tidak dipakai maka port ini dapat digunakan sebagai port paralel 8 bit serbaguna. D. Pena 18 (XTAL 1) adalah pin masukan ke rangkaian osilator internal. Sebuah osilator kristal atau sumber osilator luar dapat digunakan. E. Pena 19 (XTAL 2) adalah pin keluaran ke rangkaian osilator internal. Pena ini dipakai bila menggunakan osilator kristal. F. Pena 20 (Ground) dihubungkan ke Vss atau Ground.

44

G. Pena 21 sampai 28 (port 2) adalah port paralel input/output (I/O) 8 bit dwiarah yang dilengkapi dengan pull up internal. Jika diberikan 1 ke kaki-kaki port ini maka masing-masing kaki akan di pulled high dengan pull up internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki port 2 dihubungkan ke Ground (di-pulled low), maka masing-masing kaki akan memberikan arus (source) karena di-pulled high secara internal. Port 2 akan memberikan byte alamat tinggi selama pengambilan instruksi dari memori program eksternal dan selama pengaksesan memori data eksternal yang menggunakan perintah dengan alamat 16-bit. H. Pena 29 adalah pena PSEN (Program Strobe Enable) yang merupakan sinyal baca untuk memori program eksternal. Saat mikrokontroler menjalankan program dari memori eksternal, PSEN akan diaktifkan dua kali setiap cycle kecuali dua aktivasi PSEN dilompati saat mengakses memori data eksternal. I. Pena 30 adalah pena ALE (Address Latch Enable) yang me-latch low byte address pada saat mengakses memori eksternal. Sedangkan pada saat Flash Programming (PROG) berfungsi sebagai pulse input. Pada operasi normal ALE akan mengeluarkan sinyal clock sebesar 1/16 frekuensi osilator kecuali pada saat mengakses memori eksternal. Sinyal clock pada pena ini dapat pula didisable dengan men-set bit 0 dari Special Funtion Register di alamat 8Eh. ALE hanya akan aktif pada saat mengakses memori eksternal. J. Pena 31 (EA) akan menjalankan program yang ada pada eksternal memori setelah sistem di reset pada kondisi low. Jika berkondisi high maka pena ini berfungsi untuk menjalankan program yang ada pada internal memori.

44

K. Pena 32 sampai 39 (port 0) merupakan port paralel 8 bit bertipe open drain bidirectional. Port 0 berfungsi sebagai I/O biasa, low order multiplex address/data ataupun menerima kode byte pada saat Flash Programming. Pada I/O port berfungsi memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai input dengan memberikan logika 1 pada port tersebut. Pada fungsi sebagai low order multiplex address/data port ini akan mempunyai internal pull up L. Pena 40 (Vcc) dihubungkan ke (+5Volt).
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 RST (RXD) P3.0 (TXD) P3.1 (INT0) P3.2 (INT1) P3.3 (T0) P3.4 (T1) P3.5 (WR) P3.6 (RD) P3.7 XTAL2 XTAL1 GND 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 Vcc P0.0 (AD0) P0.1 (AD1) P0.2 (AD2) P0.3 (AD3) P0.4 (AD4) P0.5 (AD5) P0.6 (AD6) P0.7 (AD7) EA/PP ALE/PROG PSEN P2.7 (A15) P2.6 (A14) P2.5 (A13) P2.4 (A12) P2.3 (A11) P2.2 (A10) P2.1 (A9) P2.0 (A8)

Gambar 2.2 Pena-Pena Mikrokontroller AT89C51

2. Perangkat lunak mikrokontroler Perangkat lunak adalah seperangkat instruksi yang disusun menjadi sebuah program untuk memerintahkan komputer melakukan pekerjaan. Sebuah instruksi

44

selalu berisi kode pengoperasian (op-code), kode pengoperasian inilah yang disebut dengan bahasa mesin yang dapat dimengerti oleh komputer. Instruksiinstruksi yang digunakan dalam memprogram suatu program diisikan pada IC AT89C51 adalah instruksi bahasa pemrograman assembler atau sama dengan instruksi pemrograman pada IC mikrokontroler 8031 dan MCS-51. a. Instruksi Transfer Data (Perintah Pemindahan Data)

Instruksi transfer data terbagi menjadi dua kelas yaitu : Transfer data utama (general purpose transfer) yaitu : MOV,PUSH dan POP. Transfer spesifik akumulator (Accumulator Specific transfer) yaitu : XCH, XCHD dan MOVC. Instruksi transfer data adalah instruksi pemindahan/pertukaran data antara operand sumber dengan operand tujuan, operandnya dapat berupa register, memori atau lokasi suatu memori. Deskripsi instruksi transfer data tersebut dijelaskan dibawah ini : MOV PUSH : Transfer bit atau byte dari operand sumber ke operand tujuan. : Transfer byte dari operand sumber ke suatu lokasi dalam stack yang alamatnya ditunjuk oleh register penunjuk (stack pointer). POP XCH XCHD : Transfer byte dari dalam stack ke operand tujuan. : Pertukaran data antara operand akumulator dengan operand sumber. : Pertukaran nibble orde rendah antara RAM internal (lokasinya ditunjukkan oleh R0 dan R1). b. Instruksi aritmatik (Instruksi perhitungan) Operasi dasar aritmatik seperti penjumlahan, pengurangan, perkalian dan pembagian dimiliki oleh mikrokontroler AT89C51 dengan mnemonic : INC,

44

ADD, ADDC, DA, SUBB, DEC, MUL, dan DIV. Deskripsi operasi mnemonic tersebut dijelaskan sebagai berikut : INC : Menambah satu isi sumber operand dan menyimpan hasilnya ke operand tersebut. ADD : Penjumlahan antara akumulator dengan sumber operand dan hasilnya di simpan di akumulator. ADDC : Hasil dari instruksi ADD ditambah satu bila cy diset SUBB : Pengurangan akumulator dengan sumber operand, lalu dikurangi satu bila cy diset dan hasilnya disimpan dalam operand tersebut. DEC : Mengurangi sumber operand dengan satu dan hasilnya disimpan dalam operand tersebut. MUL DIV : Perkalian antara akumulator dengan register B. : Pembagian antara akumulator dengan register B dan hasilnya disimpan dalam akumulator, sisanya diregister B.

c.

Instruksi Logika Mikrokontroler AT89C51 Dapat melakukan operasi logika bit maupun

operasi logika byte, operasi logika tersebut dibagi atas dua bagian yaitu : 1. Operasi logika operand tunggal yang terdiri dari CLR, SETB, CPL, RL, RLC, RR, RRC, dan SWAB. 2. Operasi logika dua operand seperti ANL, ORL dan XRL. Operasi yang dilakukan oleh AT89C51 dengan pembacaan instruksi logika tersebut dapat dijelaskan sebagai berikut : CLR : Menghapus bit atau byte menjadi satu.

44

SETB : Mengeset bit atau byte menjadi satu. CPL RL RR RLC : Mengkomplemenkan akumulator. : Rotasi akumulator 1 bit kekiri dan bit 1 digeser melalui carry flag. : Rotasi akumulator 1 bit kekanan. : Rotasi akumulator 1 bit kekanan dan bit 1 digeser melalui flag carry.

SWAB : Pertukaran nibble orde tinggi. ANL ORL XRL : Operasi logika AND dan hasilnya disimpan dalam operand pertama. : Operasi logika OR dan hasilnya disimpan dalam operand pertama. : Operasi logika XOR dan hasilnya disimpan dalam operand pertama.

d.

Instruksi Transfer Kendali Instruksi transfer kendali (control transfer) terdiri dari 3 kelas operasi yaitu 1. Lompatan tidak bersyarat (unconditional jump) seperti ACALL,AJMP, LJMP, SJMP, JMP @A+DPTR. 2. Lompatan bersyarat (conditional jump) seperti JZ, JNZ, JB, CJNE, dan DJNZ. 3. Interupsi seperti RET1 dan RET. Deskripsi instruksi transfer kendali dijelaskan sebagai berikut lompatan untuk percabangan maksimum 2 kbyte untuk : ACALL : Instruksi pemanggilan subrutin bila alamat subrutin tidak lebih dari 2 kbyte. LCALL : Pemanggilan subrutin yang mempunyai alamat antara 2 kbyte sampai 64 kbyte. AJMP : Lompatan untuk percabangan maksimum 2 kbyte.

44

LJMP

: Lompatan untuk percabangan maksimum 64 kbyte.

JMP@ + DPTR : Instruksi percabangan ke suatu lokasi yang ditunjuk oleh DPTR + isi akumulator. JNB JZ JNZ JC CJNE : Percabangan bila bit tidak diset. : Percabangan akan dilakukan jika akumulator adalah 0. : Percabangan akan dilakukan jika akumulator tidak 0 : Percabangan terjadi jika cy diset 1. : Operasi perbandingan operand pertama dengan operand kedua, jika tidak sama akan dilakukan percabangan. DJNZ : Mengurangi isi operand sumber dan percabangan akan dilakukan apabila isi operand tersebut tidak 0. RET : Kembali ke subrutin.

RET 1 : Instruksi kembali ke program interupsi utama. Sebagai operand dari perlengkapan instruksi dapat dijelaskan sebagai berikut : Rn Data : Register Ro R7 yang dipilih dari kumpulan register. : Lokasi alamat data internal 8 bit, yang dilokasikan pada data RAM internal (0-127) SFR pada 128 -255 (I/O port, register pengontrol, register status). @R1 : Data RAM internal lokasi 0-255 8 bit, yang dialamati secara tidak langsung melalui Ro dan register R1. #data 8 : Pengisian data kedalam instruksiadalah 8 bit.

#data 16 : Pengisian data kedalam instruksi adalah 16 bit.

44

Addr

: Untuk tujuan alamat 16 bit. Digunakan pada operasi LCALL dan LJMP yang dapat dilakukan dimana saja dalam 64 kbyte daerah alamat program memori.

Addr11

: 11 bit alamat tujuan dipakai oleh opersai ACALL dan AJMP. Percabangan dapat dilakukan dimana saja dalam 2 kbyte daerah program.

3. Interupsi Mikrokontroler AT89C51 menyediakan 4 sumber interupsi yaitu 2 interupsi eksternal dan dua interupsi timer. Interupsi external INT0 dan INT1 masing-masing dapat diaktifkan berdasarkan level atau transisi, tergantung pada bit IT0 dan IT1 dalam TCON (timer control). Flag yang menghasilkan interupsi ini adalah bit dalam IE0 dan IE1 dari TCON. Apabila mikrokontroler AT89C51 sedang melaksanakan suatu program, program tersebut dapat dihentikan untuk sementara dengan meminta interupsi. Apabila mikrokontroler ini mendapat permintaan interupsi, maka perangkat/komponen akan melaksanakan secara rutin interupsi mulai dari alamat interupsi sampai selesai dilaksanakan, kemudian akan kembali kepelaksanaan program utama sebelumnya. Proses pengambilan dan pengiriman data oleh IC AT89C51 dapat dilihat pada gambar 2.3 berikut :

44

INSTRUKTION ALE

2 txlxl

CLOCK

txHOX
W RITE TO SBUF

txHOX 0 tXHDV
valid valid valid valid valid valid valid

2 tXHDX

7
SET TI

OUTPUT DATA C LEAR RI

valid

SET RI
INPUT DATA

Gambar 2.3 Proses pengambilan dan pengiriman data Organisasi Memori Semua mikrokontroler dalam keluarga MCS memiliki pembagian ruang, alamat atau addres space (untuk memori program dan memori data). Pemisahan memori program dan memori data membolehkan memori data untuk diakses oleh alamat 8-bit. Demikian juga alamat data memori 16-bit dapat dihasilkan memori register DPTR.(Data Pointer Register). RAM 128-byte tertinggi mempunyai alamat yang sama dengan 128-byte SFR (Spesial Function Register = Pemetaan Addres Memori pada chip). Random Acces Memori dalam chip AT89C51 adalah memori data, yaitu memori yang dipakai untuk menyimpan data yang terdiri dari 256 byte dinomori dengan $00 sampai $FF sedangkan Flash PEROM merupakan penampung program pengendali yang disebut sebagai memori program, dimana memori ini dinomori sendiri mulai dari $0000 sampai $0FFF.

44

Tabel 2.1 Pemetaan memori AT89C51


0F8H 0F0H 0E8H 0E0H 0D8H 0D0H 0C8H 0C0H 0B8H 0B0H 0A8H 0A0H 98H 90H 88H 80H SCON 00000000 PI 11111111 TCON 00000000 TMOD 0000000 0 SP 0000011 1 TL0 0000000 0 DPL 0000000 0 TL1 0000000 0 DPH 0000000 0 TH0 0000000 0 TH1 0000000 0 TCON 0XXX0000 IP XXX00000 P3 11111111 IE 0XX00000 PSW 00000000 ACC 00000000 B 00000000 0FFH 0F7H 0EFH 0E7H 0DFH 0D7H 0CFH 0C7H 0BFH 0B7H 0AFH 0A7H 9FH 97H 8FH 87H

5. I/O Port One chip mikrokontroler ini memiliki 32 jalur port yang dibagi menjadi 4 buah port 8 bit. Masing-masing port ini bersifat bidirectional sehingga dapat digunakan sebagai input port atau output port. Pada blok diagram AT89C51 dapat dilihat latch tiap bit pada keempat port: port 0, port 1, port 2, port 3. Masingmasing jalur port terdiri dari latch, output driver dan input buffer. Port 0 dan port 2 dapat digunakan sebagai saluran data, sedangkan port 2 sebagai saluran data dan alamat sekaligus yang dimultipleks. Untuk mengakses memori ekternal, port 0 akan mengeluarkan alamat bawah memori eksternal yang dimultipleks dengan data yang dibaca dan ditulis. Sedangkan port 2 mengeluarkan data bagian atas memori eksternal sehingga total alamat semuanya 16 bit.

44

Khusus port 3 mempunyai fungsi selain diluar sebagai port. Fungsi ini membedakan tiap-tiap kaki dengan urutan sebagai berikut: 1. Port 3.0: port input serial, RXD 2. port 3.1: port output serial, TXD 3. port 3.2: input intrupsi eksternal, INT0 4. port 3.3: input intrupsi internal, INT1 5. port 3.4: input eksternal untuk timer/counter 0, T0 6. port 3.5: input eksternal untuk timer/counter 1, T1 7. port 3.6: sinyal tulis eksternal untuk memori eksternal, WR 8. port 3.7: sinyal baca memori eksternal, RD Latch yang digunakan dapat dipersentasikan dengan D flip-flip. Data dari bus internal di latch saat CPU memberi sinyal tulis ke latch dan output latch diberikan ke bus internal sebagai respon dari sinyal baca pin dari CPU. Beberapa instruksi yang berfungsi membaca port mengaktifkan sinyal baca latch dan yang lain mengaktifkan sinyal latch dan sebagian lagi mengaktifkan sinyal baca pin. Port 1, port 2 dan port 3 mempunyai pull up internal, sedangkan port 0 dengan output open drain, masing-masing jalur I/0 dapat digunakan sebagai input atau output. Bila digunakan sebagai input, port latch harus 1. Untuk port 1, 2 dan 3 pin-pin akan dipull up tinggi oleh pull up internal, dan bisa juga di pull up rendah dengan sumber eksternal. Port 0 tidak mempunyai pull up internal. Pull up fet hanya akan digunakan saat akses eksternal memori. Jika isi latch diatur pada keadaan 1 maka port ini akan berfungsi sebagai impedensi tinggi dan jika sebagai output akan bersifat open drain. Demikian halnya dengan port 2 yang digunakan untuk multipleks data

44

dan alamat 16 bit sebesar 16 Kbyte mempunyai konfigurasi yang sama dengan yang dimiliki port 0. Sedangkan pada port 3 yang bisa dimanfaatkan untuk kaki kontrol mempunyai pengaturan fungsi output saja. Pada port ini dilengkapi dengan rangkaian pull up internal. Penggunaan port 3 dapat dialami langsung sebagai kontrol langsung pada suatu tugas yang dilakukan oleh fungsi yang dimiliki oleh port ini.

6. Timer/ Counter One chip mikrokontroler memiliki 2 timer yang dapat dikonfigurasikan beroperasi sebagai timer atau counter. Saat berfungsi sebagai timer, isi register timer ditambah 1 untuk tiap siklus mesin, sedangkan untuk fungsi counter isi register akan bertambah 1 setiap ada transisi sinyal pada pin input eksternal. Pada pemanfaatan sebagai counter sinyal input yang dimaksudkan dapat berupa low level. Counter akan mencacah setiap masukan yang ada sesuai inisialisasi harga awal dari counter pada nilai hitungan untuk tiap sampling. Inisalisasi harga awal ini berupa nilai preset negatif counter yang diatur sebelum counter dijalankan. Demikian halnya dengan pemanfatan timer yang memerlukan inisialisasi awal berupa konstanta waktu yang menentukan sampai berapa lama akan terjadi roll over. Penentuan harga preset ini berhubungan dengan penggunaan frekuensi clock dari sistem penentu waktu sampling dari counter untuk mencacah masukan dari luar dengan memanfaatkan control interupsi yang ada serta pengaturan program. Sebagai tambahan pada pemilihan counter/timer, Timer 0 dan Timer 1 mempunyai 4 buah modul yang dapat dipilih dengan menentukan pasangan bit

44

M0 dan M1 pada register TMOD. Untuk pemilihan timer/counter dikontrol dengan bit C/T di TMOD. 1. Mode 0 Pada Mode 0 ini timer register dikonfigurasi sebagai register 13 bit. Ke-13 bit register tersebut terdiri dari 8 bit TH1 dan 5 bit TL1. Selama perhitungan roll over dari semua 1 ke semua 0, TF1 (Timer interrupt flag) di set. Pada dasarnya operasi Mode 0 sama untuk Timer 0 dan Timer 1. 2. Mode 1 Mode 1 adalah timer register 16 bit dan dapat generator baud rate. Operasi mode 1 sama dengan mode 0. 3. Mode 2 Mode 2 adalah timer register dengan konfigurasi 8 bit counter (TL1) auto reload. Overflow dari TL1 tidak hanya menset TF1 tapi juga mereload TL1 dengan isi TH1. Setelah reload isi TH1 tidak akan berubah. Operasi mode ini juga sama dengan timer/counter 0. 4. Mode 3 Pada mode ini timer tidak bekerja. Sedangkan timer 0 menjadi dua counter yang terpisah. TL0 digunakan sebagai bit kontrol untuk timer 0; C/T, GATE, TR0, INT0, dan TF0 seolah-olah mengatur timer 1.

7. Sistem Interupsi Mikrokontroler AT89C51 mempunyai 5 sumber interupsi. Dua sumber merupakan sumber eksternal INT0 dan INT1. Kedua interupsi eksternal dapat aktif level atau aktif transisi tergantung isi IT0 dan IT1 pada register TCON.

44

Iterupsi timer 0 dan timer 1 aktif pada saat timer yang sesuai mengalami roll over.Interupsi serial dibangkitkan dengan melakukan operasi OR dan RI dan TI. Tiap-tiap sumber interupsi dapat enable atau disable secara software. Tingkat prioritas semua sumber interupsi dapat diprogram sendiri-sendiri dengan set atau clear bit pada SFR IP (Interrupt Priority). Interupsi tingkat rendah dapat di interupsi oleh interupsi yang mempunyai tingkat lebih tinggi, tetapi tidak sebaliknya. Walaupun demikian interupsi yang mempunyai tingkat lebih tinggi tidak bisa menginterupsi yang lain.

B. Pesawat Telepon Jenis DTMF ( Dual Tone Multi Frequency ) Pada pesawat telepon jenis tone saat menekan tombol yang dituju dihasilkan nada dengan frekuensi ganda yang yang berbeda yang disebut dengan sinyal DTMF (Dual Tone Multi Frequency). Untuk LBF : 697 Hz , 770 Hz , 852 Hz , 941 Hz , dan HBF : 1209 Hz , 1336 Hz , 1477 Hz , 1633 Hz .Untuk pengkodean tombol frekuensi DTMF dapat dilihat pada gambar 2.4 berikut:
Kelompok Nada Tinggi

H1 1209 Hz L1 697 Hz

H2 1336 Hz

H2 1447 Hz

H2 1633 Hz

1 4 7 *

2 5 8 0

3 6 9 #

A B C D

L2 720 Hz

L3 852 Hz

L4 943 Hz

Gambar 2.4 Keypad pada DTMF

44

Dari format di atas dapat dilihat, bahwa untuk penekanan satu tombol, akan dihasilkan dua buah frekuensi yaitu frekuensi rendah dan frekuensi tinggi. Sehingga untuk keseluruhan, akan dipergunakan delapan buah frekuensi yang berbeda. Misalnya tombol 4 ditekan, maka penekanan ini akan dihasilkan dua buah frekuensi yaitu : 1209 dan 770 Hz. Hubungan tombol dan frekuensi sinyal DTMF ini ditunjukkan pada Tabel 2.2 Tabel 2.2 Tombol dan Sinyal DTMF yang digunakan
TOMBOL 1 2 3 4 5 6 7 8 9 0 * # A B C D 697 697 697 770 770 770 852 852 852 941 941 941 697 770 852 941 FREKUENSI (Hz) Rendah Tinggi 1209 1336 1477 1209 1336 1477 1209 1336 1477 1336 1209 1477 1633 1633 1633 1633

C. Schmitt Trigger

44

Apabila suatu sinyal digital dikirim kemudian diterima oleh pihak yang lain, maka sinyal tersebut akan mengalami gangguan baik itu oleh derau, noise, attenuasi (pelemahan maupun faktor lain). Agar sinyal yang dikirim dapat diterima dengan baik, maka digunakan komponen Schmitt Trigger yang menanggapi bentuk gelombang yang mengalami transisi yang cepat pada keluarannya. Dengan adanya komponen ini, jika diberikan input sinyal sinus, segitiga maupun bentuk gelombang segi empat dengan sisi turun sangat tajam (hampir vertikal), dan lepas dari bentuk gelombang lainnya. Dua kondisi (tinggi dan rendah) yang sangat cepat dibutuhkan karena rangkaian digital bekerja dengan masukan salah satu dari dua kondisi tersebut. Komponen Schmitt Trigger ini telah dikemas dalam bentuk IC, baik itu IC TTL maupun IC CMOS yaitu IC 7414 yang merupakan heksa inverter yang berarti dalam satu kemasan terdapat enam buah inverter Schmitt trigger. Sesuai dengan standard IC TTL yang dapat dilihat pada lembar data dimana jika Vdd = 5 Volt, maka Vp=2,70 ; Vn=2,44 dan Vh=0,26

IN IN OUTPUT

OUTPUT

Gambar 2.5 Simbol inverter Schmitt trigger dan sinyal outputnya

Saat gelombang melampaui 4,43 V maka oleh karena adanya inverse, keluaran akan bepindah dari tinggi ke rendah dan keadaan ini akan dipertahankan

44

l input turun di bawah 4,05V. Gambar diatas memperlihatkan simbol inverter Schmitt trigger dan bentuk sinyal input dan outputnya.

D. Relay Relay adalah suatu rangkaian switching magnetik yang bekerja bila mendapat catu dari rangkaian trigger. Relay memiliki tegangan dan arus nominal yang harus dipenuhi output rangkaian pendrivernya/pengemudinya. Arus yang digunakan pada rangkaian adalah arus DC. Konstruksi dalam suatu relay terdiri dari lilitan kawat (Coil) yang dililitkan pada inti besi lunak. Jika lilitan kawat mendapatkan arus, inti besi lunak menghasilkan medan magnet dan menarik switch kontak. Switch kontak mengalami gaya tarik magnet sehingga berpindah posisi ke kutub lain atau terlepas dari kutub asalnya. Keadaan ini akan bertahan selama arus mengalir pada kumparan relay. Dan relay akan kembali ke posisi semula yaitu normally-off, bila tidak ada lagi arus yang mengalir padanya. Posisi normal relay tergantung pada jenis relay yang digunakan. Dan pemakaian jenis relay tergantung pada keadaan yang diinginkan dalam suatu rangkaian/sistem. Menurut kerjanya relay dapat dibedakan menjadi : - Normaly Open (NO) - Normaly Close (NC) - Change Over (CO) : saklar akan tertutup bila dialiri arus : saklar akan terbuka bila dialiri arus. : relay ini mempunyai saklar tunggal yang

normalnya tertutup yang mana bila kumparan 1 dialiri arus maka saklar akan terhubung ke terminal A, sebaliknya bila kumparan 2 dialiri arus maka saklar akan terhubung ke terminal B.

44

Analogi rangkaian relay yang digunakan adalah saat basis transistor di aliri arus maka transistor dalam keadaan tertutup dapat menghubungkan arus dari kolektor ke emiter yang mengakibatkan relay terhubung. Sedangkan fungsi dioda disini adalah untuk melindungi transistor dari tegangan induksi bisa mencapai 100 sampai 150 volt dimana tegangan dapat merusak transistor. Simbol relay dan pemakaian relay secara umum sebagai driver yang dikendalikan transistor. Jika transistor pada basis tidak ada arus maju, transistor cutt-off (terbuka) sehingga arus tidak mengalir dari kolektor ke emiter, relay tidak bekerja karena tidak ada arus yang mengalir pada gulungan kawat.
NO NC
1 A B 2 C

5V

CO

(1)

(2)

Gambar 2.6 Rangkaian Relay 1) Simbol Relay 2) Rangkaian Relay dengan Driver E. IC MT 8870 IC MT 8870 merupakan salah satu tipe IC tone decoder berfungsi sebagai penghasil sinyal biner 4 bit yang menggambarkan karakter yang dikirim melalui sinyal DTMF. Tone decoder merupakan suatu rangkaian yang berfungsi untuk mengubah sinyal dengan frekuensi tertentu ke logika 1 atau 0. Komponen luar yang diperlukan sedikit dan merupakan pelengkap dari chip. Chip terdiri dari

44

beberapa input yaitu amplifier, clock osilator dan Interface There State Data. IC didesain dengan ukuran kemasan kecil, penggunaan daya yang rendah dan untuk kerja tinggi. Tegangan VDD yang diberikan cukup rendah yaitu 5 Volt DC dan dapat bekerja normal pada temperatur 40C sampai + 80C. Arsitekturnya terdiri dari bagian filter yang berfungsi untuk memisahkan sinyal kelompok nada tinggi dan rendah, kemudian diikuti oleh bagian decoder untuk memeriksa keabsahan frekuensi dan rangkaian driver memeriksa lamanya nada yang sah sebelum mendaftarkan sepasang nada yang telah dikodekan.

1 2 3 4 5 6 7 8 9

IN + IN GS VREF INH PWDN OSC 1 OSC 2 VSS c8 c7

VDD ST / GT EST STD Q4 Q3 Q2 Q1 TOE 7

18 17 16 15 14 13 12 11 10

Gambar 2.7 IC MT 8870

Keterangan : IN + = input non inverting Opamp

44

IN GS VRef INH

= input inverting Opamp = Gain Select = Output tegangan referensi = (Input) inhibit

PWDN = (Input) power down OSC 1 OSC 2 VSS TOE = (Input) clock = (Output) clock = (Input) negative power supply = (Output) There State Output Enable, logika high mengenablekan output Q1, Q2, Q3, Q4 Q1 Q4 = Output There State data STD = (Output) delayed steering, menunjukkan logika High saat diterima sepasang nada yang telah didaftar EST = (Output) Early Steering, menunjukkan logika High saat diterima sepasang nada valid ST / GT = (Output) Steering input/ Guard Time Bidirectional, mendeteksi pasangan nada dan menerima sepasang nada baru VDD = (Input) positive power supply

Tabel 2.3 Fungsi decoder MT 8870


Digit TOE INH Est Q4 Q3 Q2 Q1

44

Any 1 2 3 4 5 6 7 8 9 0 * # A B C D

L H H H H H H H H H H H H H H H H

X L L L L L L L L L L L L L L L L

H H H H H H H H H H H H H H H H

Z 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0

Z 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0

Z 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0

Z 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0

F. Transistor Sebagai Saklar Dengan fungsinya sebagai saklar, transistor dioperasikan hanya pada dua titik kerjanya yaitu pada daerah saturasi (jenuh) dan pada daerah cut-off. Pada saat transistor dalam keadaan saturasi maka resistansi antara kolektor dan emiter akan kecil maka transistor akan berfungsi sebagai saklar yang tertutup.Kondisi ini menyebabkan Vcc sama dengan 0, tetapi pada kenyataannya Vcc pada saat saturasi mempunyai harga sekitar 0 sampai 0,3 volt. Pada saat cut-off transistor berada pada daerah cut-off. Hal ini dikarenakan resistansi antara kolektor emitter sangat besar, maka transistor berfungsi sebagai saklar terbuka. Kondisi ini menyebabkan Vcc sama dengan Vcc (tegangan kolektor) sehingga arus tidak mengalir.Tetapi kenyataannya Vcc pada saat cut off kurang dari tegangan sumber, karena terdapat arus bocor antara kolektor dan emiter. Diagram rangkaian dasar transistor yang dioperasikan sebagai saklar serta kurva karakteristik transistor ditunjukkan pada Gambar 2.8.

44

IC - ( m A)
IB = 200

VCC Ic RC

VCC RL

35 30 25

IB = 180 IB = 160 IB = 140 IB = 120 IB = 100 IB = 80 IB = 60

VB

RB Ib Ie

20 15 10 5 0 C

IB = 40

IB = 20

Tc = 25

10

20

30

40

Vce (v)

(1) Gambar 2.8 (1) Transistor sebagai saklar

(2)

(2) Kurva karakteristik sebagai saklar

G. Photo Transistor Sebuah photo transitor sama dengan transitor bipolar biasa, bedanya tidak terdapat terminal basis. Sebagai pengganti arus, input transistor di berikan dalam bentuk cahaya.
9&&

5F

I CE = I CBO

Gbr 2.9 Arus basis dalam transistor bila terminal basis Arus basis ( ICBO) bertindak sebagai arus basis. Karena IC = dc x IB + (dc+1) (ICBO) dalam hal ini Ic = Icco, arus bocor kolektor emitor dengan basis

44

terbuka. Hal yang sama ICBO dalam photo transistor naik bila hubungan basis kolektor diterangi. Bila ICBO dinaikkan arus kolektor (+1) ICBO juga naik, maka untuk sejumlah penyinaran yang sempit, photo transistor lebih peka dari photo dioda. Beberapa photo transistor lain memiliki basis, sinar yang datang untuk membangkitkan arus basis. Komponen transistor dikemas dalam logam, yang digunakan dalam proyek ini. Susunan beberapa photo transistor dan photo dioda sering digunakan sebagai photo detector. Untuk kuat penyinaran tertentu terdapat arus output yang lebih besar pada photo transistor dari pada photo dioda. Tetapi photo dioda mempunyai respon yang lebih cepat dalam switching kurang dari nano detik, sedangkan photo transistor dalam micro detik.
9&&

Ic (m A ) 8 6
5 N 9

4 0 m W m2 /c 3 0 m W m2 /c 2 0 m W m2 /c 1 0 m W m2 /c

4 2 V
9FH

Gambar 2.10 Rangkaian Photo transistor dan garis beban searah (dc Load Line)

Untuk menghasilkan arus output yang lebih besar digunakan photo transistor yang dihubungkan secara darlington dengan transistor lain.

H. Telepon Nirkabel (Cordless Phone)

44

Telepon

nirkabel

merupakan

kombinasi

telepon

dan

radio

pemancar/penerima. Masalah utama pada telepon nirkabel yang tidak ditemui pada telepon biasa: 1. 2. Jarak handset dengan base. Kualitas suara yang dipengaruhi oleh jarak sinyal radio informasi dipancarkan 3. dan interferensi.

Keamanan pembicaraan, dimana sinyal radio handset ke base sebagai penerima dipancarkan melalui udara terbuka sehingga memungkinkan untuk disadap oleh telepon nirkabel yang lain atau oleh scanner radio. FCC (Federal Communication Comission) menetapkan lebar pita

frekuensi telepon nirkabel sebagai berikut: 1. Lebar pita 43-50 MHz pada telepon nirkabel produk pertama dengan model berbiaya murah. Jarak jangkauan pendek (kira-kira 330 m), kualitas suara terendah dan mudah disadap oleh scanner radio. 2. Lebar pita 900-928 MHz merupakan frekuensi telepon nirkabel akhir-akhir ini. Jarak jangkauan lebih jauh yaitu 1500 m hingga 2100 m dan kualitas suara lebih baik. Namun, sinyal 900 MHz masih dapat disadap dengan mudah oleh scanner radio. 3. Lebar pita 2,4 GHz atau 5,8 GHz yang dibuka oleh FCC pada tahun 1998 dengan jarak terjauh dan pembicaraan lebih terjamin daripada telepon nirkabel dengan model frekuensi rendah. Pada teknologi analog (yang lazim digunakan pada telepon nirkabel dengan model yang berharga murah) cenderung sinyal analognya lebih banyak

44

noise atau mudah terinterferensi sehingga mempengaruhi kualitas suara yang dihasilkan. Sedangkan teknologi digital memberikan suara yang jernih. Selanjutnya, pada sinyal digital pembicaraan lebih terjamin. Pada tahun 1995, DSS (Digital Spread Sprectum) diperkenalkan pada telepon nirkabel yang membuatnya hampir tidak mungkin pembicaraan dapat disadap oleh orang lain. Telepon nirkabel mempunyai dua bagian utama yaitu base dan handset: a. Base dimana saluran telepon dapat disambungkan. Base menerima panggilan masuk dalam bentuk sinyal listrik lewat saluran telepon, kemudian diubah menjadi sinyal radio dan dipancarkan. b. Handset, menerima sinyal radio dari base, lalu mengubahnya menjadi sinyal listrik dan mengirimkannya ke speaker, dimana sinyal listrik telah diubah menjadi suara. Ketika pelanggan pemanggil berbicara pada handset, ia memancarkan sinyal suara yang telah dikonversikan ke sinyal listrik oleh base dan saluran telepon mengirimkannya ke pelanggan yang dipanggil. Base dan handset beroperasi pada suatu pasangan frekuensi yang diperkenankan kepada pelanggan untuk berbicara dan mendengar pada waktu bersamaan disebut frekuensi duplex.

Contoh Frekuensi duplex Base: 44,32 MHz transmitter 49,28 MHz receiver Handset: 49,28 MHz transmitter 44,32 MHz receiver

44

Salah satu contoh telepon nirkabel yaitu GE (General Electric) yang dibuat pada tahun 1993 dan beroperasi di lebar pita 43-50 MHz. 1. Base Blok diagram unit base ditunjukkan pada gambar 2.11 Power Phone jack

Power components

Phone-line interface

Battery charger

Radio Components Key pad buttons indicators (LED, LCD) Audio amplifier

Transmitter Receiver

Antena
Gambar 2.11 Blok diagram Base

Komponen-komponen pada base: 1. Interface saluran telepon, merupakan penerima panggilan masuk dan pengirim panggilan keluar serta penerima dan pengirim perubahan arus listrik pada saluran telepon dari ke komponen radio pada base.

44

2.

Komponen radio. Penguat sinyal dari dan ke interface saluran telepon.

Pemancar dan penerima sinyal radio dari dan ke handset melalui antena. Penerima arus listrik dari saluran telepon dan dari pengontrolan oleh pemakai (keypad).

Komponen

radio

menggunakan

kristal

quartz,

satu

untuk

mengirimkan sinyal dan satu lagi untuk menerima sinyal. Disamping komponen di atas, base juga mempunyai keypad untuk mendial, LCD (Liquid Crystal Display) penunjuk identitas pemanggil dan LED sebagai indicator power dan indicator pengisian baterai. 2. Handset Handset dapat dibawa sepanjang rumah atau di luar rumah dalam jarak jangkauan sinyal yang dapat diterima dan dipancarkan oleh base. Handset mempunyai semua peralatan telepon standard (speaker, mikropon, keypad), ditambahkan peralatan pemancar dan penerima radio FM.

44

Radio Components Battery charger

Audio amplifier Antena Transmitter Receiver

Key pad buttons indicators (LED, LCD)

Ringer or buzzer

Microphone

Speaker

Gambar 2.12 Blok diagram handset Komponen-komponen pada handset: 1. Speaker, pengubah sinyal listrik dari komponen radio menjadi suara yang dapat didengar oleh pemanggil. 2. Mikrofon, penangkap suara pemanggil dan mengubahnya menjadi sinyal listrik yang dikirimkan ke penguat audio pada komponen radio. Mikrofon pada dasarnya merupakan speaker dengan prinsip kerja yang berlawanan. 3. Keypad, untuk mendial nomor. Keypad mengubah penekanan ujung jari yang tepat pada tombol menjadi sinyal listrik yang dikirimkan ke komponen radio. Di bawah tombol karet elastis keypad terdapat material hitam yang mampu mengalirkan arus listrik. Keypad bekerja seperti sebuah remote control. 4. Buzzer atau ringer, yang memberitahukan adanya panggilan datang. Ketika komponen radio handset menerima sinyal ringing tone, kemudian

44

mengirimkan sinyal listrik ke buzzer. Buzzer mengubah sinyal listrik tersebut menjadi suara seperti yang dilakukan oleh speaker. 5. Komponen radio Penguat sinyal listrik dari dan ke mikrofon atau speaker. Pengirim dan penerima frekuensi radio FM dari dan ke base. Komponen radio handset menerima sinyal radio pada frekuensi yang sama dengan frekuensi kristal pemancar dari base, mengubahnya ke sinyal listrik dan mengirimkan ke speaker atau buzzer (ringer). 6. LED Kebanyakan handset mempunyai satu atau lebih LED (Light Emitting Diodes) sebagai indikator berbagai hal, seperti ketika handset tidak terhubung ke base atau ketika baterai lemah. 7. Baterai Merupakan penyuplai tegangan ke seluruh rangkaian elektronik handset. Semua handset telepon nirkabel memakai baterai yang dapat diisi ulang (seperti nickel-cadmium, nickel-netral, hydride atau lithium). I. Transistor Sebagai Penguat Transistor adalah suatu monokristal semikonduktor dimana terjadi dua pertemuan P-N, dari sini dapat dibuat dua rangkaian yaitu : 1. 2. Transistor P-N-P Transistor N-P-N

Dalam keadaan kerja normal, transistor harus diberi polaritas sebagai berikut :

44

1. Pertemuan Emitter-Basis diberi polaritas dari arah maju seperti ditunjukkan pada gambar 2.13 (a). 2. Pertemuan Basis-kolektor diberi polaritas dalam arah mundur seperti ditunjukkan pada gambar 2.13 (b).
C B E (a) B E (b) C

Gambar 2.13 Dasar Polaritas Transistor Transistor merupakan komponen yang dapat dirangkai untuk menaikkan amplitudo suatu sinyal, bila dimasukkan isyarat ac yang lebih besar daripada isyarat masukannya dengan frekuensi yang sama. Agar operasi transistor tetap linier, emiter harus lebih dibias forward dan kolektor selalu dibias balik (reverse). Transistor pada rangkaian ini dipakai sebagai penguat. Dalam sistem tingkat bagian akhir adalah penguat sinyal besar (large signal), dimana penekanan adalah pada penguatan daya. Transistor yang digunakan dalam penguat sinyal kecil disebut transistor sinyal kecil dan yang digunakan dalam penguat daya disebut penguat daya. Biasanya transistor sinyal kecil mempunyai disipasi daya kurang dari setengah watt dan transistor daya lebih dari setengah watt.

44

J. Laser Laser ( Light Amplification bye Stimulated Emission of Radiation) dengan prinsip dalam bidang gelombang mikro dikembangkan ke dalam bidang cahaya adalah sejenis osilator dengan menggunakan perubahan energi kuantum mekanis. Laser masih dalam tingkat penelitian dan pengembangan. Pada rangkaian sistem security ini jenis laser yang digunakan adalah Laser Semiconductor. Laser Semiconductor mempunyai level spectrum osilasi yang lebih besar dan mempunyai sifat koheren lebih rendah daripada jenis lainnya,tetapi mempunyai keuntungan bahwa efisiensi pengubahan energi input ke sinar output lebih tinggi, modulasi dapat dilakukan dengan pengontrolan arus dan elemennya lebih kecil. Cara penyaluran laser dilakukan dengan pemantulan sinar laser memanfaatkan cermin secara berulang kali. Gelombang yang terpancar kembali dipantulkan oleh cermin.

Lensa

Gambar 2.14 Diagram dari berkas waveguide

44

Tabel 2.4 Frekuensi laser


Panjang Frekuensi Gelombang 3 x 1018 Hz 3 x 1017 Hz 3 x 1016 Hz 3 x 1015 Hz 300 THz 30 THz 3 THz 300 GHz 30 GHz 3 GHz 300 MHz 30 MHz 3 MHz 1A 10 A 100 A 0.1 1 10 100 1 mm UHF 1 cm 10 cm 1m 10 m 100 m MF VHF HF bandfrekuensi Sinar- Sinar-X Sinar Ultra ungu Sinar cahaya
R aman S o lid Gas S e m i k o n d u kto r

Penamaan dalam Laser & gelombang radio

Sinar infra merah Gelombang sub-mili EHF SHF Panjang gelombang ditentukan oleh frekuensi radio sebagaimana tercantum dalam peraturan radio yang berlaku

K. Induktor Selenoida Arus listrik yang melewati kabel, jalur-jalur pcb dalam suatu rangkain berpotensi untuk menghasilkan medan induksi. Ini yang sering menjadi pertimbangan dalam mendesain pcb supaya bebas dari efek induktansi terutama jika multilayer. Tegangan emf akan menjadi penting saat perubahan arusnya fluktuatif. Efek emf menjadi signifikan pada sebuah induktor, karena perubahan arus yang melewati tiap lilitan akan saling menginduksi. Ini yang dimaksud dengan self-induced. Secara matematis induktansi pada suatu induktor dengan jumlah lilitan sebanyak N adalah akumulasi flux magnet untuk tiap arus yang melewatinya :
L= N induktansi ........................................................................... (1) i

44

Fungsi utama dari induktor di dalam suatu rangkaian adalah untuk melawan fluktuasi arus yang melewatinya. Aplikasinya pada rangkaian dc salah satunya adalah untuk menghasilkan tegangan dc yang konstan terhadap fluktuasi beban arus. Pada aplikasi rangkaian ac, salah satu gunanya adalah bisa untuk meredam perubahan fluktuasi arus yang tidak dinginkan. Akan lebih banyak lagi fungsi dari induktor yang bisa diaplikasikan pada rangkaian filter, tuner dan sebagainya. Dari pemahaman fisika, elektron yang bergerak akan menimbulkan medan elektrik di sekitarnya. Berbagai bentuk kumparan, persegi empat, setegah lingkaran ataupun lingkaran penuh, jika dialiri listrik akan menghasilkan medan listrik yang berbeda. Penampang induktor biasanya berbentuk lingkaran, sehingga diketahui besar medan listrik di titik tengah lingkaran adalah : B = m moni Medan listrik....................................................................... (2) Jika dikembangkan, n adalah jumlah lilitan N relatif terhadap panjang induktor l. Secara matematis ditulis :
n= N Lilitan per-meter................................................................(3) l

Lalu i adalah besar arus melewati induktor tersebut. Ada simbol m yang dinamakan permeability dan mo yang disebut permeability udara vakum. Besar permeability m tergantung dari bahan inti (core) dari induktor. Untuk induktor tanpa inti (air winding) m = 1. Jika rumus-rumus di atas di subsitusikan maka rumus induktansi (rumus 3) dapat ditulis menjadi :
L= mmoN l
2

Induktansi Induktor................................................... (4)

44

Gambar 2.15 Induktor selenoida dengan inti (core) L = induktansi dalam H (Henry) m = permeability inti (core) mo = permeability udara vakum mo = 4p x 10-7 N = jumlah lilitan induktor A = luas penampang induktor (m2) l = panjang induktor (m) Inilah rumus untuk menghitung nilai induktansi dari sebuah induktor. Tentu saja rumus ini bisa dibolak-balik untuk menghitung jumlah lilitan induktor jika nilai induktansinya sudah ditentukan.

L.

Limit Switch

44

Limit switch adalah saklar batas yang biasanya digunakan untuk mendeteksi batas gerakan suatu objek, hal ini dilakukan dengan menyentuhkan lidah dari limit switch ke objek yang akan dideteksi. Kemudian gerakan lidah menggerakkan switch. Limit switch tersedia dalam bermacam tipe tergantung dari objek yang akan dideteksi.
+5V

4K7

Output 1 = 4,6V 0=0V

Gambar 2.16 Limit Switch

44

BAB III PERANCANGAN DAN PEMBUATAN SOFTWARE

Perancangan dan pembuatan sistem security pagar laser dengan menggunakan IC AT89C51 berfungsi sebagai sistem proteksi terhadap bendabenda berharga antara lain barang antik, berlian, mahkota emas, lukisan dan lainlain. Dengan menggunakan IC AT89C51 maka rangkaian menjadi lebih sederhana dan penggunaan komponen lebih hemat dibanding apabila

menggunakan sistem komputer atau PLC. Perancangan sistem security ini dibagi menjadi 2 bagian, yaitu perancangan secara Hardware dan Software. Untuk perangkat keras (Hardware), yaitu : 1. Rangkaian sensor switch; 2. Rangkaian relay dan solenoid; 3. Rangkaian Tone decoder; 4. Rangkaian pemancar dan penerima laser; 5. Rangkaian sistem minimum mikrokontroller AT89C51. Untuk perangkat lunak (Software), yaitu:

44

1. Perancangan diagram blok 2. Menggunakan bahasa Assembly 3. Perancangan flowchart 4. Penulisan program

A. Perancangan Diagram Blok Diagram blok merupakan penyederhanaan rangkaian yang menyatakan hubungan berurutan dari satu atau lebih rangkaian yang memiliki kesatuan kerja tersendiri. Diagram blok dibuat untuk mempermudah pembuatan dan pemahaman sistem. Dimana tiap-tiap blok saling berhubungan satu sama lain. Blok-bloknya terdiri dari rangkaian sensor switch, rangkaian relay dan solenoid, rangkain tone dekoder, rangkaian pemancar dan penerima laser, dan rangkaian mikrokontroler AT89C51. Diagram blok secara keseluruhan ditunjukkan pada gambar 3.1

Buzzer & Alarm

Sensor Pintu

Mikrokontroler

Driver

Pemancar

Driver

Penerima

Driver

Tone dekoder

Selenoid

44

Gambar 3.1 Diagram Blok Sistem Kerja dari sistem security pagar dengan media laser pada gambar 3.1 dapat dijelaskan sebagai berikut : Pada keadaan awal blok mikrokontroler akan membangkitkan frekuensi 50 Hz menggunakan software lalu dikirimkan ke blok driver untuk disampaikan ke blok pemancar, setelah itu blok microcontroler akan membaca data yang diterima oleh blok penerima melalui blok driver dan menghitung frekuensinya, jika masih 50 Hz maka proses diulang terus tetapi jika frekuensi yang diterima bukan 50 Hz maka telah terjadi sabotase dan blok alarm akan diaktifkan. Selain proses di atas blok mikrokontroler juga akan selalu mendeteksi kondisi pintu dan input blok tone decoder, pembacaan blok tone decoder akan dibandingkan dengan tabel password yang terdapat di software pada blok mikrokontroler. Adapun contoh tabel password yang digunakan seperti di bawah ini: Tabel 3.1 Kode Password No 1 2 3 4 5 6 Kode 3333* 4444* 2222* 1111* 5555* 6666* Keterangan Aktifkan pagar laser Nonaktifkan pagar laser Buka kunci pintu Kunci pintu Aktifkan semua Nonaktifkan semua

Dengan menggunakan tabel kode di atas maka pemilik atau yang berhak dapat mengontrol penuh sistem ini. Karena input menggunakan wireless phone maka dapat dilakukan dari jarak jauh sesuai kemampuan wireless phone tersebut.

B. Fungsi Masing-masing Blok Adapun fungsi dari diagram blok diatas adalah sebagai berikut :

44

1. Rangkaian tone decoder Rangkaian tone decoder berfungsi untuk mengubah sinyal DTMF menjadi kode biner.

2. Rangkaian Relay dan solenoid Rangkaian relay dan solenoid berfungsi sebagai pemutus arus listrik yang dikontrol dengan memberikan tegangan dan arus tertentu pada kumparannya. 3. Rangkaian Sensor Switch Rangkaian sensor switch berfungsi untuk mendeteksi keadaan pintu terbuka dan tertutup. 5. Rangkaian sistem minimum Mikrokontroler AT89C51 Rangkaian ini berfungsi untuk pengendali/pengontrol semua cara kerja dari peralatan.

C. Perancangan Software Didalam perancangan software, penulis memakai mikrokontroler

AT89C51 karena IC ini lebih besar kapasitas memorinya (4 Kbyte Flash PEROM) dan mempunyai jumlah kaki yang lebih banyak (40 kaki) sehingga aplikasiaplikasi yang dapat dihubungkan dengan IC ini menjadi lebih banyak. Mikrokontroler ini menggunakan bahasa assembly didalam penulisan programnya dan hasil programnya dinamakan assembly listing dan tersimpan dalam file dengan ekstensi LST. Proses pengisian program ke IC mikrokontroler AT89C51 dengan menggunakan EFROM.

44

Dengan kapasitas memory yang besar, penulis memanfaatkannya untuk merancang program dari perancangan alat sistem security pagar dengan media laser ini yang banyak memakai port-portnya untuk aplikasi-aplikasi tertentu.

1. Bahasa Assembly Bahasa assembly merupakan salah satu bahasa pemrograman dari sekian banyak bahasa. Pada pembuatan proyek ini penulis menggunakan bahasa assembler dikarenakan instruksi-instruksinya lebih sederhana dan mudah dipahami. Selain itu juga sangat kompatibel untuk IC yang digunakan disebabkan IC ini menggunakan EPROM yang mudah dihapus dan ditulis sebanyak seribu kali. Berikut ini akan diberikan penggalan-penggalan program perancangan bahasa assembly untuk sistem security ini: data tone decoder P0.1-P0.3 std tone decoder P0.4 sensor pintu (1 = tertutup, 0 = terbuka) penerima laser P3.7 Pemancar laser P3.6 selenoid P3.5 Buzzer P3.4 Program diatas adalah program inisialisasi port yang berfungsi untuk memberikan alamat-alamat pada port-port yang dipakai. Untuk led port P1.0, buzzer laser bit b.1 dan buzzer pintu bit b.0 dengan kode alarm laser dan pintu

44

1 alarm akan aktif dan 0 alarm non aktif. Untuk laser bit b.2 dengan laser in bit P3.7, laser out bit P3.6. Sensor bit menggunakan P0.5, Std bit menggunakan P0.4, selenoid menggunakan P3.5, Buzzer menggunakan P3.4 dan Switch out menggunakan P0.6.

memory hasil tone decoder 30h memory password 20h-2Fh

2. Perancangan Flowchart Flowchart merupakan langkah-langkah yang diperlukan untuk

mempermudah dalam pembuatan program. Adapun flowchart dari perancangan alat sistem security ini dapat dilihat pada gambar.

44

Start

Inisialisasi

Aktifkan pemancar laser

Ada sinar laser ?

Tidak

Ya nonaktifkan pemancar laser

Ada sinar laser ?

Ya Aktifkan Alarm

Tidak
P.0.4(STD)=High ?

Ya

Ambil data

Tidak

Bandingkan data dengan tabel kode

Ada yang sama ?

Ya

Melakukan proses pengkodean

Tidak

P0.5(Sensor pintu )= High ?

Ya

Aktifkan alarm Tidak

Tidak

End

Gambar 3.2 Flowchart

44

Proses

inisialisasi

Kode =3333 * ?

Ya

Aktifkan Laser

Tidak Ya

Kode =4444 * ?

Nonaktifkan Laser

Tidak Ya

Kode =2222 * ?

Aktifkan kunci pintu

Tidak Ya

Kode =1111 * ?

Nonaktifkan pintu

Tidak Ya

Kode =5555 * ?

Aktifkan Security

Tidak Ya

Kode =6666 * ?

Nonaktifkan Security

Tidak

RET

44

3. Penulisan Program ================== Program Utama Init: mov b,#0ffh mov 31h,#0 ;kode jumlah text = 0 mov P0,#0ffh mov P3,#0ffh clr laser_out clr buzzer acall tunda setb buzzer acall tunda clr buzzer acall tunda setb buzzer acall tunda start:jb sensor,lsr jnb bz_pintu,lsr clr buzzer lsr: jnb laser,ls clr laser_out acall tun jb laser_in,ls jnb bz_laser,key clr buzzer setb laser_out acall tun jb laser_in,key mov b,kode jnb bz_laser,key clr buzzer

;matikan buzzer ;jika pintu tertutup jmp ke lsr ;jika kode high jmp ke lsr ;jika kode low aktifkan buzzer ;deteksi kode laser ;hidupkan laser ;jika sinar laser ada jmp ke ls

ls:

;matikan laser ;detksi apkh sinar lasr tdk ada

key:

jnb std,ryan;jk tdk ada tombol ditkn jmp ke lnjut jnb laser,ky clr laser_out jb sensor,k;jk pintu terttp(sewktu tombol di tkn) jnb bz_pintu,kk clr buzzer jb laser_in,ks; deteksi apakah sinar lasertdk ada jnb bz_laser,ks clr buzzer

ky:

kk:

44

ks:

setb led jb std,ky acall ambil_dtmf

ryan: sjmp start ;===================Utama end pengambilan data dari tone dekoder dan di proses ambil_dtmf: lps: jb std,lps clr led mov a,P0 anl a,#0fh mov 30h,a null: ; tunggu sampai tombol di lepas

cjne a,#0Ah,pagar ;jika bukan nol jmp ke pagar mov a,#0 sjmp save ;jika bukan pagar jmp ke star

pagar: cjne a,#0Ch,star acall beeb acall tunda acall beeb acall tunda sjmp ambil_end star:

cjne a,#0Bh,save ;jika bukan bintang jmp ke save acall beeb acall beeb acall beeb acall tunda acall compare acall reset_mem sjmp ambil_end ;simpan ke memory

save: acall geser ambil_end: ret reset_mem: mov r0,#20h

; isi r0 dengan data 20h

rst: mov @r0,#0ffh;isi almt yang di tnjuk oleh r0 dgn ffh inc r0 ; tambah isi r0 dengan 1 cjne r0,#30h,rst ;jk isi r0 belum 30h ulang ke rst ret

44

compare: lock: mov a,27h cjne a,#1,unlock mov a,26h cjne a,#1,unlock mov a,25h cjne a,#1,unlock mov a,24h cjne a,#1,unlock setb selenoid setb bz_pintu acall tunda ljmp pare_end unlock: mov a,27h cjne a,#2,laser_on mov a,26h cjne a,#2,laser_on mov a,25h cjne a,#2,laser_on mov a,24h cjne a,#2,laser_on clr selenoid clr bz_pintu acall tunda ljmp pare_end laser_on: mov a,27h cjne a,#3,laser_off mov a,26h cjne a,#3,laser_off mov a,25h cjne a,#3,laser_off mov a,24h cjne a,#3,laser_off setb laser clr laser_out setb bz_laser ljmp pare_end laser_off:mov a,27h cjne a,#4,all_on mov a,26h cjne a,#4,all_on mov a,25h cjne a,#4,all_on

44

mov a,24h cjne a,#4,all_on setb laser_out clr bz_laser clr laser sjmp pare_end all_on: mov a,27h cjne a,#5,all_off mov a,26h cjne a,#5,all_off mov a,25h cjne a,#5,all_off mov a,24h cjne a,#5,all_on clr laser_out setb selenoid setb bz_pintu setb bz_laser setb laser acall tunda acall tunda acall tunda acall tunda acall tunda sjmp pare_end all_off: mov a,27h cjne a,#6,pass_err mov a,26h cjne a,#6,pass_err mov a,25h cjne a,#6,pass_err mov a,24h cjne a,#6,pass_err setb buzzer setb laser_out clr selenoid clr bz_pintu clr bz_laser clr laser sjmp pare_end beeb beeb beeb tunda

pass_err: acall acall acall acall

44

pare_end: ret Geser: mov mov mov mov mov mov mov mov ret beeb: 20h,21h 21h,22h 22h,23h 23h,24h 24h,25h 25h,26h 26h,27h 27h,a

clr led acall tunda1 setb led acall tunda1 ret mov 40h,#0ffh ;ff mov 41h,#50h ;50 djnz 41h,td1 djnz 40h,tnd1 ret mov 40h,#0ffh ;ff mov 41h,#0ffh ;ff djnz 41h,td djnz 40h,tnd ret mov 40h,#0ffh ;ff mov 41h,#3 ;3 djnz 41h,tt djnz 40h,tn ret end

tunda1: tnd1: td1:

tunda: tnd: td:

tun: tn: tt:

44

Pada permulaan pemrograman dengan menentukan port-port yang digunakan yang merupakan initialisasi atau persiapan awal program di jalankan. Pada initialisasi di lakukan pendefinisian memory dan register akan di gunakan juga nilainilai awal yang merupakan nilai standard. org 000h led bit P1.0 b.1 b.0 b.2 P3.7 ; kode alarm laser, 1= alarm aktif, 0=alarm non aktif ; kode alarm pintu, 1= alarm aktif, 0=alarm non aktif

bz_laser bit bz_pintu bit laser bit

Laser_in bit

Laser_out bit P3.6 Sensor bit Std bit P0.5 P0.4 P3.5 P3.4 P0.6

Selenoid bit Buzzer bit Sw_outbit

Init: mov b,#0ffh mov 31h,#0 mov P0,#0ffh mov P3,#0ffh clr laser_out clr buzzer ; kode jumlah text = 0

44

acall tunda setb buzzer acall tunda ; matikan buzzer

Program utama di bawah merupakan badan program dari seluruh program yang di lakukan kesemua aktifitas dari alat ini, seperti mendeteksi kondisi pintu, mendeteksi sensor sinar laser, penguncian pintu, hanya saja masih banyak subrutinsubrutin khusus yang di buat di luar badan program ini dengan maksud agar lebih terblok untuk penjelasannya. Pada saat program utama di jalankan maka perintahnya adalah mendeteksian kondisi pintu dalam keadaan terbuka atau tertutup, jika dalam keadaan terbuka maka buzzer akan di hidupkan. Selanjutnya di lakukan pendeteksian sinar laser dengan cara menghidupkan pemancar laser kemudian mendeteksinya melalui penerima laser. Jika pemancar laser di aktifkan namun pada penerima tidak mendeteksi adanya sinar laser berarti sinar laser terhalang oleh sesuatu sehingga buzzer akan di hidupkan. Selain itu juga di lakukan pendeteksian pemancar palsu dengan cara mematikan pemancar laser kemudian deteksi penerima laser, jika ternyata terdeteksi adanya sinar laser ketika pemancar laser di non aktifkan berarti pada penerima laser terdapat sinar palsu sehingga alarm akan di hidupkan. Selain itu juga di lakukan pendeteksian penekanan tombol dari telepon wireless. Hal ini di lakukan dengan memanggil sub rutin ambil_dtmf yang akan di bahas secara terpisah.

44

start: jb sensor,lsr jnb bz_pintu,lsr clr buzzer lsr: jnb laser,ls clr laser_out acall tun jb laser_in,ls jnb bz_laser,key clr buzzer ls: setb laser_out acall tun jb laser_in,key mov b,kode jnb bz_laser,key clr buzzer key: jnb std,ryan jnb laser,ky clr laser_out ky: jb sensor,kk jnb bz_pintu,kk clr buzzer kk: jb laser_in,ks jnb bz_laser,ks clr buzzer

; jika pintu tertutup jmp ke lsr ; jika kode high jmp ke lsr ; jika kode low aktifkan buzzer ; deteksi kode laser ; hidupkan laser ; ; jika sinar laser ada jmp ke ls

; matikan laser ; ; deteksi apakah sinar laser tdk ada

;jk tdk ada tombol ditekan jmp ke lanjut

; jika pintu tertutup (sewaktu tombol di tekan)

; deteksi apakah sinar laser tdk ada

44

ks:

setb led jb std,ky acall ambil_dtmf

ryan: sjmp start Dibawah ini adalah sub rutin untuk penanganan pengambilan data melalui rangkaian tone decoder, dimana pengambilan data di ambil melalui port 0. Pengambilan data di lakukan dengan dengan cara mendeteksi pin std. Ketika pin std berlogika high maka program akan menunggu sampai std berlogika low baru kemudian data di ambil. Setelah data di ambil maka data di bandingkan untuk di deteksi dan di proses. ambil_dtmf: lps: jb std,lps clr led mov a,P0 anl a,#0fh mov 30h,a null: cjne a,#0Ah,pagar mov a,#0 sjmp save ; jika bukan nol jmp ke pagar ; tunggu sampai tombol di lepas

pagar: cjne a,#0Ch,star

;jika bukan pagar jmp ke star

44

;acall beeb ;acall tunda ;acall beeb ;acall tunda sjmp ambil_end

star: cjne a,#0Bh,save ;acall beeb ;acall beeb ;acall beeb ;acall tunda acall compare acall reset_mem sjmp ambil_end

;jika bukan bintang jmp ke save

save: acall geser ambil_end: ret

; simpan ke memory

Subrutin ini berfungsi untuk mengosongkan isi di dalam memory reset_mem: mov r0,#20h rst: mov @r0,#0ffh inc r0 ; isi r0 dengan data 20h

; isi alamat yang di tunjuk oleh r0 dgn ffh

; tambah isi r0 dengan 1

cjne r0,#30h,rst ; jika isi r0 belum 30h ulang ke rst ret

44

Sub rutin compare di bawah ini di aktifkan ketika terdeteksi tombol save di tekan, fungsi utama dari sub rutin ini adalah membandingkan nomor password yang di masukkan melalui tone decoder dengan nomor password sudah ditentukan di program. Suatu proses akan di laksanakan ketika terdeteksi password yang benar, proses yang di jalankan adalah menghidupkan dan mematikan alarm, kunci, dan laser. compare: lock: mov a,27h cjne a,#1,unlock mov a,26h cjne a,#1,unlock mov a,25h cjne a,#1,unlock mov a,24h cjne a,#1,unlock setb selenoid setb bz_pintu acall tunda acall tunda

ljmp pare_end

unlock: mov a,27h cjne a,#2,laser_on

44

mov a,26h cjne a,#2,laser_on mov a,25h cjne a,#2,laser_on mov a,24h cjne a,#2,laser_on clr selenoid clr bz_pintu acall tunda acall tunda

ljmp pare_end

laser_on: mov a,27h cjne a,#3,laser_off mov a,26h cjne a,#3,laser_off mov a,25h cjne a,#3,laser_off mov a,24h cjne a,#3,laser_off setb laser clr laser_out setb bz_laser

44

ljmp pare_end

laser_off: mov a,27h cjne a,#4,all_on mov a,26h cjne a,#4,all_on mov a,25h cjne a,#4,all_on mov a,24h cjne a,#4,all_on setb laser_out clr bz_laser clr laser sjmp pare_end

all_on: mov a,27h cjne a,#5,all_off mov a,26h cjne a,#5,all_off mov a,25h cjne a,#5,all_off mov a,24h cjne a,#5,all_on clr laser_out

44

setb selenoid setb bz_pintu setb bz_laser setb laser acall tunda acall tunda sjmp pare_end

all_off: mov a,27h cjne a,#6,pass_err mov a,26h cjne a,#6,pass_err mov a,25h cjne a,#6,pass_err mov a,24h cjne a,#6,pass_err setb buzzer setb laser_out clr selenoid clr bz_pintu clr bz_laser clr laser sjmp pare_end

44

pass_err: acall beeb acall beeb acall beeb acall tunda pare_end: ret

Program ini berfungsi untuk menggeser data yang di dapat dari tone decoder ke memory program. Geser: mov 20h,21h mov 21h,22h mov 22h,23h mov 23h,24h mov 24h,25h mov 25h,26h mov 26h,27h mov 27h,a ret

Fungsi sub rutin di bawah ini adalah untuk menghidupkan buzzer sesaat. beeb: clr led acall tunda1

44

setb led acall tunda1 ret

tunda1: mov 40h,#0ffh ;ff tnd1: td1: mov 41h,#50h ;50 djnz 41h,td1 djnz 40h,tnd1 ret

tunda: mov 40h,#0ffh ;ff tnd: td: mov 41h,#0ffh ;ff djnz 41h,td djnz 40h,tnd ret

tun: mov 40h,#0ffh ;ff tn: tt: mov 41h,#3 ;3 djnz 41h,tt djnz 40h,tn ret

end

44

Sub Rutin tone decoder

Std= high Tidak Acc--- P0

Ya

Acc dan 0fh

Mem 30h--- Acc

Flowchart diatas adalah potongan flowchart untuk perancangan rangkaian tone decoder, program akan mendeteksi logika std jika dalam keadaan high maka proses diulang, std berlogika high artinya tombol dalam keadaan ditekan, jika tombol sudah tidak ditekan maka proses selanjutnya adalah pengambilan data dari P.0 ke Acc, kemudian data tersebut akan diseleksi dan disimpan ke memory 30h.

44

BAB IV PENGUJIAN SOFTWARE

A. Pengujian Software Untuk melakukan pengujian software atau program yang telah dibuat, maka dapat dilakukan dengan cara sebagai berikut : 1. Menjalankan program yang dibuat pada perancangan untuk program Assembler MCS-51 dengan menggunakan editor ALDS. 2. Menjalankan program langsung pada AT89C51 setelah diuji dengan baik. Pada pengujian ini dilakukan pada simulator MCS-51 sehingga jika terjadi kesalahan, maka dapat segera diketahui dan program dapat segera diperbaiki. Pengujian dengan simultan ini hanya menguji subrutin-subrutin yang

menghasilkan perubahan pada register dan memori tidak dapat menghasilkan output pada keluaran port, sehingga setelah pengujian subrutin dilaksanakan harus diuji pada sistem yang sebenarnya.

1. Pengujian Rangkaian Relay dan Selenoid Pengujian rangkaian relay dan selenoid di lakukan dengan merakit rangkaian blok di bawah ini

44

Pastikan rangkaian di atas sudah di rakit dengan baik dan selenoid sudah terpasang ke miniatur. Langkah selanjutnya adalah membuat program pengujian di bawah ini.

Start: Clr

P1.0

Acall Delay SetB P1.0 Acall Delay Sjmp start

Delay: mov R3,#0ffh Dly: Dl: mov R4,#0ffh djnz R4,dl Djnz R3,Dly

44

Ret

Jika program diatas di jalankan maka yang terjadi adalah pengiriman logika low dan high secara bergantian ke basis transistor, sehingga relay akan aktif dan non aktif secara bergantian, ketika relay aktif maka catu daya selenoid disambungkan sehingga selenoid juga akan aktif. Aktifnya selenoid

mengakibatkan pintu tidak terkunci, sebalikanya ketika basis transistor ,menerima logika low maka transistor tidak aktif sehingga relay juga tidak aktif, hal ini menyebabkan catu datya selenoid terputus dan kondisi pintu jadi terkunci. Pengujain dinyatakan berhasil jika pintu terkunci dan tidak terkunci secara bergantian sesuai data yang di kirim oleh mikrokontroler.

2. Pengujian program Tone Decoder

Pengujian program tone decoder di lakukan dengan merakit blok rangkaian di bawah ini.

Jika blok rangkaian di atas sudah di rakit maka jalankan program pengujian di bawah ini.

44

Init:Mov P0,#0ffh Start : jnb P0.4,start Tg: jb P0.4,tg Mov acc,P0 Anl acc,#0f0h Mov p1,acc Sjmp start End

Program di atas akan membaca status std, jika tombol belum di tekan maka data tidak akan di ambil tetapi jika tombol telephone di tekan dan pin std berubah menjadi high maka terdeteksi terjadinya penekanan tombol telephone, selanjutnya akan di lakukan pendeteksian pelepasan tombol telephone. Jika tombol di lepas maka data akan di ambil da di seleksi baru kemudian di kirim ke port1. Pengujian dinyatakan berhasil apabila setelah program dan rangkaian sudah di rakit dan di jalankan kemudian tombol pesawat telepon yang di tekan akan di tampilkan kode binernya melalui led yang terpasang pada port 1. Untuk bentuk kode biner yang sesuai dengan tombol telepon dapat di lihat di dasar teori MT8870.

44

3. Pengujian Program Limit Switch Pengujian di lakukan dengan merakit rangkaian blok di bawah ini

Kemudian jalankan program di bawah ini. Init: Mov P0,#0ffh

Start: jb P0.0,Start SetB P1.0 Acall Delay Clr P1.0 Acall Delay Sjmp Start

Delay: mov R3,#0ffh Dly: Dl: mov R4,#0ffh djnz R4,dl Djnz R3,Dly Ret

44

Jika program pengujian di atas di jalankan maka ketika pintu di buka rangkaian limit switch akan mengirim logika low ke mikrokontroler, kemudian led yang terpasang pada Port 1.0 akan berkedip, sebalikanya ketika pintu tertutup maka led akan padam. Pengujaian di nyatakan berhjasil jika ketika pintu terbuka maka led akan berkedip dan jika pintu tertutup led akan padam.

3. Pengujian program Pemancar dan penerima laser

Pengujian pemancar dan pemerima laser di lakukan dengan merakit rangkaian blok diagram di bawah ini.

Setelah rangkaian blok di atas di rakit maka program di bawah ini di gunakan sebagai pengujian.

Init: On:

Mov P0,#0ffh SetB P1.0

; Buat mode input ; aktifkan pemancar

44

Acall Delay Jb P0.0,On SetB P1.3

; tunda sesaat ; jika laser tidak terdeteksi jmp ke On ; jika terdeteksi maka hidupkan led

Off:

Clr P1.0 Acall Delay Jnb P0.0,Off Clr P1.3 Sjmp On

; matikan pemancar ; tunda sesaaat ; jika laser masih terdeteksi maka jmp ke Off ; jika sudah tdk terdeteksi maka matikan led ; kembali ke start

Delay: mov R3,#0ffh Dly: Dl: mov R4,#0ffh djnz R4,dl Djnz R3,Dly Ret

Jika program di atas di jalankan maka proses pengujian di lakukan dengan memperhatikan led yang terpasang pada port 1.3, Ketika pemancar di aktifkan melalui program maka cahaya laser akan di pantulkan dan mengenai sensor laser sehingga sensor laser akan mengirim logika low ke port 0.0, di program jika port 0.0 menerima logika low maka led akan di hidupkan begitu juga ketika pemancar di matikan dan pada laser terdeteksi tidak ada sinar laser maka led akan di padamkan, karena di program di rancang program yang berulang maka pengujian

44

di nyatakan berhasil apabila led pada P1.3 akan berkedip yang menandakan pemancaran dan penerimaan sinar laser dapat di proses.

4. Analisa dan pengujian rangkaian sistem minimum AT89C2051 Sistem minimum AT89C2051 adalah system minimum yang paling sedikit menggunakan komponen external, hanya sebuah resistor, sebuah kristal, dan tiga buah kapasitor. Rangkaian resistor 4.7K dan kapasitor 100 f akan membentuk rangkaian power on reset, artinya setelah catu daya di hidupkan rangkaian ini langsung mereset Mikrokontroller.

Gambar 4.1 Power On reset Kaki reset Mikrokontroller AT89C2051 adalah aktif High, artinya jika pin ini diberi logika High, maka Mikrokontroller akan direset, ketika tegangan catu diberikan, kaki negatif kapasitor (yang terhubung ke pin reset Mikrokontroller ) akan berlogika 0, dalam waktu kira kira 1/10 detik, kapasitor akan terisi hingga penuh dan kaki negatifnya akan mengeluarkan logika high, logika high inilah yang akan mereset Mikrokontroller . Untuk dapat bekerja dengan baik, setiap Mikrokontroller harus memiliki osilator internal atau external, demikian juga Mikrokontroller AT 89C2051 yang kita pakai dalam proyek ini, Mikrokontroller AT89C2051 memiliki osilator

44

internal yang mampu bekerja dari 1 MHZ sampai 24 MHZ, (dalam proyek ini penulis menggunakan Frekwensi 12 MHZ). Untuk menggunakan osilator internal ini, kita harus menghubungkan kaki 4 dan 5 dengan sebuah Crystal yang

memiliki Frekwensi tertentu, misalnya 3.5 MHZ atau lebih dan menghubungkan pin 4 dan 5 tersebut ke Ground yang diseri dengan kapsitor 30 pf sebagaimana gambar berikut :

Gambar 4.2 Osilator Internal Nilai Capasitor boleh saja diganti dengan nilai yang lain, tapi tidak boleh lebih besar dari 100 PF. Frekwensi maximum Crystal yang dapat di gunakan adalah 24 MHZ

Rangkaian system minimum ini sebelelum digunakan harus diuji terlebih dahulu, apakah dapat digunakan atau tidak, untuk melakukan pengujian tersebut penulis menghubungkan port 1.0 s/d P1.7 Mikrokontroller AT 89C2051 dengan bebepara LED, selanjutnya penulis memasukkan program kecil seperti berikut :

44

Start:

NOP Clr P1 SetB P1.0 SetB P1.1 SetB P1.2 SetB P1.3 SetB P1.4 SetB P1.5 SetB P1.6 SetB P1.7 Jmp Start

; ; ; ; ; ; ; ; ; ; ;

No Operation Nolkan keluaran P1 Aktifkan P1.0 Aktifkan P1.1 Aktifkan P1.2 Aktifkan P1.3 Aktifkan P1.4 Aktifkan P1.5 Aktifkan P1.6 Aktifkan P1.6 Lompat Ke Start

Setelah program dimasukkan kedalam Mikrokontroller AT 89C2051 dengan bantuan Eprom Programmer T2001, selanjutnya rangkaian system

minimum dihubungkan dengan catu daya +5V, jika rangkaian dalam kondisi baik, seharusnya semua lampu LED akan menyala, jika ada salah satu atau lebih lampu LED yang tidak menyala, berarti masih ada kesalahan dalam rangkaian, misalnya solderan pada PCB mungkin ada yang kurang baik atau ada komponen yang rusak.

44

DAFTAR PUSTAKA Malvino, Barmawi. Prinsip-prinsip Elektronika. Jilid ke-1, Edisi ke-3, Jakarta :Penerbit Erlangga, 1999. Suhata,ST. Aplikasi Mikrokontroler Sebagai Pengendali Peralatan Elektronika via Line Telepon. Jakarta : Penerbit PT Elex Media Komputindo, 2005. Suhana, Ir. Shigeki Shoji. Buku Pegangan Teknik Teloekomunikasi. Jakarta: Penerbit PT Pradnya Paramita, 1994. www. Alldatasheet.com

You might also like