• Tidak ada hasil yang ditemukan

Simulasi Alat Kontrol Atap Otomatis Berbasis Mikrokontroler AT89S51.

N/A
N/A
Protected

Academic year: 2016

Membagikan "Simulasi Alat Kontrol Atap Otomatis Berbasis Mikrokontroler AT89S51."

Copied!
61
0
0

Teks penuh

(1)

SIMULASI ALAT KONTROL ATAP OTOMATIS BERBASIS

MIKROKONTROLER AT89S51

LAPORAN TUGAS AKHIR

WIWIK SARASWATI

072408043

PROGRAM STUDI D3 FISIKA INSTRUMENTASI DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

(2)

SIMULASI ALAT KONTROL ATAP OTOMATIS BERBASIS

MIKROKONTROLER AT89S51

LAPORAN TUGAS AKHIR

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh Ahli Madya

WIWIK SARASWATI

072408043

PROGRAM STUDI D3 FISIKA INSTRUMENTASI DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : SIMULASI ALAT KONTROL ATAP OTOMATIS

BERBASIS MIKROKONTROLER AT89S51

Kategori : LAPORAN PROYEK

Nama : WIWIK SARASWATI

Nomor Induk Mahasiswa : 072408043

Program Studi : D3 FISIKA INSTRUMENTASI

Departemen : FISIKA

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN

ALAM UNIVERSITAS SUMATERA UTARA

Medan, Juni 2010

Diketahui oleh :

Ketua Program Studi

D3 Fisika Instrumentasi Pembimbing

Drs.Syahrul Humaidi,M.Sc

(4)

PERNYATAAN

SIMULASI ALAT KONTROL ATAP OTOMATIS BERBASIS MIKROKONTROREL AT89S51

TUGAS AKHIR

Saya mengakui bahwa laporan proyek ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan disumbernya.

Medan, Juni 2010

WIWIK SARASWATI

072408043

(5)

Puji dan syukur penulis panjatkan kehadirat Allah SWT atas berkat dan

karunia-Nya serta perlindungan-Nya penulis dapat menyelesaikan Laporan Tugas

Akhir ini.Dan tak lupa pula shalawat dan salam kepada Nabi besar Muhammad SAW.

Laporan Tugas Akhir ini merupakan hasil kerja dari Proyek yang penulis buat

dengan judul SIMULASI ALAT KONTROL ATAP OTOMATIS BERBASIS

MIKROKONTROLER AT89S51, meskipun dalam proses penulisan banyak menemui

hambatan dan rintangan namun dengan usaha maksimal yang dilakukan penulis serta

bantuan dari berbagai pihak, akhirnya laporan Tugas Akhir ini dapat selesai.

Pada kesempatan ini penulis mengucapkan terima kasih kepada :

1. Bapak Prof. Dr. Eddy Marlianto, M.Sc , Dekan Fakultas Matematika dan Ilmu

Pengetahuan Alam, Universitas Sumatera Utara Medan.

2. Bapak Dr. Sutarman, M.Sc , Pudek I Fakultas Matematika dan Ilmu Pengetahuan

Alam, Universitas Sumatera Utara Medan.

3. Bapak Dr. Marhaposan Situmorang, M.Sc , Ketua Departemen Fisika Universitas

Sumatera Utara Medan.

4. Bapak Drs. Syahrul Humaidi, M.Sc , Ketua Program Studi D3 Fisika

Instrumentasi Universitas Sumatera Utara Medan.

5. Bapak Ir. Junaidi selaku Dosen Pembimbing Proyek ini yang banyak memberi

masukan baik dalam pembuatan proyek maupun dalam penyusunan laporan ini.

6. Seluruh Dosen yang telah memberikan ilmu pengetahuan selama perkuliahan,

yang membuka cakrawala berfikir.

7. Ayahanda Gondo Winarno dan kakanda Sarmiaty yang telah banyak memberikan

dorongan baik moriil maupun materi.

8. Rekan – rekan di Fisika Instrumentasi, Sri Wulandari Ritonga, Andika Siregar

yang telah banyak membantu dalam penyelesaian laporan Tugas Akhir ini.

9. Ibu Toeti Tjiptono dan Seluruh keluarga yang telah memberikan penulis tempat

(6)

Penulis Menyadari bahwa dalam penulisan laporan ini masih banyak kekurangan,.

Oleh karena itu penulis mengharapkan kritik dan saran yang membangun guna

kesempurnaan laporan ini.

Akhir kata semoga laporan ini dapat bermanfaat dan menambah wawasan yang

berguna bagi pembaca.

Medan, Juni 2010

(7)

ABSTRAK

Kemajuan ilmu pengetahuan dan teknologi telah mendorong manusia untuk

berusaha mengatasi segala permasalaha yang timbul di sekitarnya serta meringankan

pekerjaan yang ada. Salah satu teknologi yang berkembang saat ini adalah

mikrokontroler. Mikrokontroler merupakan keluarga mikroprosesor yaitu sebuah chip

yang dapat melakukan pemrosesan data secara digital sesuai dengan perintah bahasa

assembly yang diberikan. Dengan memanfaatkan mikrokontroler ini dapat diciptakan

suatu alat secerdas komputer tetapi dengan biaya yang relatife lebih murah daripada

komputer. Seiring dengan berkembangnya mikrokontroler, maka saat inni

mikrokontroler banyak diaplikasikan pada instrument – instrument yang berhubungan

dengan kehidupan sehari – hari. Salah satunya digunakan pada simulasi alat kontrol

atap buka tutup otomatis berbasis mikrokontroler AT89S51 yang difungsikan sebagai

tempat penjemuran pakaian otomatis. Pada simulasi alat kontrol atap otomatis ini

selain menggunakan mikrokontroler AT89S51 juga menggunakan sensor air dan

sensor LDR. Sensor air digunakan untuk mendeteksi air atau hujan. Apabila sensor air

terkena air maka atap akan tertutup dan atap terbuka kembali setelah sensor kering.

(8)

sekitar. Ketika sensor LDR menerima sedikit cahaya maka atap akan tertutup dan atap

(9)

DAFTAR ISI

Halaman

Persetujuan

Pernyataan

Penghargaan……… I

Abstrak……… III

Daftar Isi………... IV

Daftar Tabel……… VII

Daftar Gambar……… VIII

BAB I PENDAHULUAN

1.1.Latar Belakang Masalah……...………... 1

1.2.Rumusan Masalah………... 1

1.3.Tujuan Penulisan….…..……….. 2

1.4.Batasan Masalah..………..……….. 2

1.5.Sistematika Penulisan……...………... 2

BAB II LANDASAN TEORI 2.1. Perangkat Keras………... 4

2.1.1. Mikrokontroler AT89S51...……….. 4

(10)

2.1.3. SFR (Register Fungsi Khusus)Keluarga 51……….….… 7

2.1.4. Gambar IC Mikrokontroler AT89S51………...…… 9

2.2. Perangkat Lunak……….. 12

2.2.1. Instruksi – Instruksi AT89S51……… 12

2.2.2. Software 8051 Editor, Assembler,Simulator (IDE)….……… 15

2.2.3. Software Downloader……….…….. 16

2.3. Komponen……… 17

2.3.1. Transistor……….………. 17

2.3.2. Light Dependent Resistance ……….….... 17

2.3.3. Dioda……… 20

2.3.4. Relay……….……… 22

2.3.5. Transformator (Trafo)………... 22

2.3.6. Sensor Air……… ………... 23

2.3.7. IC (Integrated Circuit)…………...………. 24

2.3.8. Motor Stepper………. 24

BAB III PERANCANGAN ALAT DAN PROGRAM 3.1. Diagram Blok………..……… 27

3.2. Rangkaian Power Supplay (PSA)…….……….…………. 28

3.3. Rangkaian Driver Motor Stepper………...………. 28

3.4. Rangkaian Saklar (Keypad)………..……….. 30

(11)

3.6. Rangkaian Sensor Cahaya………..……… 32

3.7 Rangkaian Sensor Air………. 33

3.8. Flowchart………...……… 35

BAB IV PENGUJIAN ALAT DAN PROGRAM 4.1. Pengujian Rangkaian Power Supplay (PSA)………. 37

4.2. Pengujian Rangkaian Driver Motor Stepper……….. 37

4.3. Pengujian Rangkaian Mikrokontroler AT89S51……… 39

4.4. Pengujian Rangkaian Tombol………...………..… 41

4.5. Pengujian Program………..……….... 42

BAB V KESIMPULAN DAN SARAN 5.1. Kesimpulan……….… 45

5.2. Saran……….……... 45

(12)

DAFTAR TABEL

(13)

DAFTAR GAMBAR

Gambar 2.1. Diagram Blok Mikrokontroler ………... 5

Gambar 2.2. IC Mikrokontroler AT89S51.………. 10

Gambar 2.3. Editor 8051 Editor,Assembler,Simulator……… 15

Gambar 2.4. ISP_Flash Programmer 3.a……….. 16

Gambar 2.5. Transistor sebagai Switching.……….. 17

Gambar 2.6. Simbol LDR ……… 19

Gambar 2.7. Grafik LDR ………. 20

Gambar 2.8. Putaran motor dengan satu pulsa ……… 25

Gambar 2..9. Putaran motor dengan banyak pulsa ……….……. 25

Gambar 2.10. Variable reluctance ……… 26

Gambar 3.1. Diagram Blok Rangkaian……… 27

Gambar 3.2. Rangkaian Power Supplay (PSA)……….…... 28

Gambar 3.3. Rangkaian Driver Motor Stepper………...….. 29

Gambar 3.4. Rangkaian Sakelar (keypad)…...……….. 30

Gambar 3.5. Rangkaian Mikrokontroler AT89S51………... 32

Gambar 3.6. Rangkaian Sensor Cahaya……….………... 32

Gambar 3.7. Rangkaian Sensor Air……….…….……….... 33

Gambar 3.8. Bentuk Sensor Air pada PCB………….………. 34

(14)

ABSTRAK

Kemajuan ilmu pengetahuan dan teknologi telah mendorong manusia untuk

berusaha mengatasi segala permasalaha yang timbul di sekitarnya serta meringankan

pekerjaan yang ada. Salah satu teknologi yang berkembang saat ini adalah

mikrokontroler. Mikrokontroler merupakan keluarga mikroprosesor yaitu sebuah chip

yang dapat melakukan pemrosesan data secara digital sesuai dengan perintah bahasa

assembly yang diberikan. Dengan memanfaatkan mikrokontroler ini dapat diciptakan

suatu alat secerdas komputer tetapi dengan biaya yang relatife lebih murah daripada

komputer. Seiring dengan berkembangnya mikrokontroler, maka saat inni

mikrokontroler banyak diaplikasikan pada instrument – instrument yang berhubungan

dengan kehidupan sehari – hari. Salah satunya digunakan pada simulasi alat kontrol

atap buka tutup otomatis berbasis mikrokontroler AT89S51 yang difungsikan sebagai

tempat penjemuran pakaian otomatis. Pada simulasi alat kontrol atap otomatis ini

selain menggunakan mikrokontroler AT89S51 juga menggunakan sensor air dan

sensor LDR. Sensor air digunakan untuk mendeteksi air atau hujan. Apabila sensor air

terkena air maka atap akan tertutup dan atap terbuka kembali setelah sensor kering.

(15)

sekitar. Ketika sensor LDR menerima sedikit cahaya maka atap akan tertutup dan atap

(16)

BAB I

PENDAHULUAN

1.1. Latar Belakang Masalah

Bagi sebagian orang, pekerjaan merupakan suatu prioritas yang tidak dapat

ditinggalkan. Hal ini dapat kita lihat pada karyawan yang bekerja di kantor yang tidak

dapat mengontrol keadaan rumahnya.

Dengan memanfaatkan mikrokontroler ini dapat diciptakan suatu alat secerdas

komputer tetapi dengan biaya yang relatife lebih murah daripada komputer. Pada

umumnya orang sering disibukkan dengan pekerjaannya biasanya akan lupa dengan

apa yang ada dirumahnya dan akan merasa tidak tenang saat hujan tiba-tiba saja turun

karena tidak ada yang mengangkat pakaiannya yang dijemur diluar rumah. Oleh

karena itu, simulasi alat kontrol atap otomatis akan sangat membantu. Dengan alat ini

kita bisa meninggalkan jemuran pakaian kita tanpa takut apabila tiba-tiba hujan turun.

Karena simulasi alat ini akan membuka dan menutup atap secara otomatis sesuai

dengan keadaan lingkungan sekitar.

1.2. Rumusan Masalah

Berdasarkan uraian diatas, penulis tertarik untuk mengangkat dan merancang

sebuah simulasi alat kontrol atap otomatis yang diaplikasikan sebagai tempat untuk

penjemuran pakaian yang berbasis mikrokontroler AT89S51. Dimana pada

perancangan ini akan dirumuskan masalah:

1. Bagaimana prinsip kerja alat kontrol atap buka tutup otomatis ini bekerja.

2. Program apa yang diberikan untuk dapat membuka atau menutup atap

secara otomatis.

3. Bagaimana sensor air mengubah tegangan menjadi suatu nilai rendah atau

tinggi yang bisa dibaca oleh mikrokontroler.

4. Bagaimana prinsip,kerja motor driver.

(17)

1. Sebagai salah satu syarat untuk dapat menyelesaikan program Diploma tiga

(D3) Fisika Instrumentasi FMIPA Universitas Sumatera Utara.

2. Mengaplikasikan berbagai teori pendukung yang telah didapat di bangku

perkuliahan menjadi sebuah karya nyata berupa sebuah alat.

3. Memanfaatkan mikrokontroler AT89S51 sebagai tempat pemrosesan data

untuk mengontrol atap otomatis.

1.4. Batasan Masalah

Mengingat keterbatasan kemampuan penulis dan waktu pelaksanaan

pembuatan proyek, maka dibuat batasan masalah sebagai berikut :

1. Membahas tentang Mikrokontroler AT89S51 sebagai basis dalam

rangkaian.

2. Membahas tentang LDR sebagai sensor intensitas cahaya.

3. Membahas tentang sensor air sebagai sensor pendeteksi hujan.

4. Membahas tentang bahasa assembly sebagai pemrograman alat.

1.5. Sistematika Penulisan

Untuk memudahkan pembahasan dan pemahaman maka penulis membuat

sistematika pembahasan bagaimana sebenarnya prinsip perancangan atap otomatis ini.

BAB I. PENDAHULUAN

Dalam bab ini berisikan mengenai latar belakang, rumusan masalah,

tujuan penulisan, batasan masalah, serta sistematika penulisan.

BAB II. LANDASAN TEORI

Dalam bab ini dijelaskan tentang teori pendukung yang digunakan

untuk pembahasan cara kerja dari rangkaian teori pendukung itu antara

lain komponen, perangkat keras, perangkat lunak.

BAB III. PERANCANGAN ALAT DAN PROGRAM

Pada bab ini akan dibahas perancangan dari alat, yaitu diagram blok

dari rangkaian, skematik dari masing – masing rangkaian.

BAB IV. ANALISA RANGKAIAN DAN SISTEM KERJA ALAT

Pada bab ini akan dibahas hasil analisa dari rangkaian dan sistem kerja

(18)

BAB V. KESIMPULAN DAN SARAN

Bab ini berisi tentang mengenai kesimpulan yang didapat setelah

merakit proyek ini dan saran yang diberikan demi kesempurnaan dan

(19)

BAB II

LANDASAN TEORI

2.1 Perangkat Keras

2.1.1 Mikrokontroler AT89S51

Mikrokontroler sebagai suatu terobosan teknologi mikrokontroler dan

mikrokomputer hadir memenuhi kebutuhan pasar (market need) dan teknologi baru.

Sebagai teknologi baru, yaitu teknologi semikonduktor dengan kandungan transistor

yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi

secara massal (dalam jumlah banyak) sehingga harga menjadi lebih murah

(dibandingkan mikroprosesor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk

memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat – alat

bantu dan mainan yang lebih canggih.

Ilustrasi yang mungkin bisa memberikan gambaran yang jelas dalam

penggunaan mikrokontroler adalah aplikasi mesin tiket dalam arena permainan yang

saat ini terkenal di Indonesia. Jika kita sudah selesai bermain, maka akan diberikan

suatu nilai, nilai inilah yang menentukan berapa jumlah tiket yang bisa diperoleh dan

jika dikumpulkan dapat ditukar dengan berbagai macam hadiah. Sistem tiket ini

ditangani dengan mikrokontroler, karena tidak mungkin menggunakan PC yang harus

dipasang disamping atau dibelakang mesin permainan yang bersangkutan.

Selain sistem tiket, kita juga dapat menjumpai aplikasi mikrokontroler dalam

bidang pengukuran jarak jauh atau yang dikenal dengan sistem telemetri. Misalnya

pengukuran disuatu tempat yang membahayakan manusia, maka akan lebih nyaman

jika dipasang suatu sistem pengukuran yang bisa mengirimkan data lewat pemancar

dan diterima oleh stasiun pengamatan dari jarak yang cukup aman dari sumbernya.

Sistem pengukuran jarak jauh ini jelas membutuhkan suatu sistem akuisisi data

sekaligus sistem pengiriman data secara serial (melalui pemancar), yang semuanya itu

(20)

Tidak seperti sistem komputer, yang mampu menangani berbagai macam

program aplikasi (misalnya pengolahan kata, pengolahan angka dan lain sebagainya),

mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan

lainnya terletak pada perbandingan RAM dan ROM-nya. Pada sistem komputer RAM

dan ROM-nya besar. Sedangkan pada mikrokontroler ROM dan RAM-nya terbatas.

Pada mikrokontroler AT89S51 ROM atau flash PEROM berukuran 2 kilo byte,

sedangkan RAM-nya berukuran 128 byte.

Mikrokontroler AT89C51/52 mempunyai 40 kaki, 32 kaki diantaranya adalah

untuk keperluan port paralel. Satu port paralel terdiri dari 8 kaki, dengan demikian 32

kaki tersebut membentuk 4 buah port, yang masing-masing dikenal sebagai port 0,

port 1, port 2, port 3. Data dapat dengan mudah dimasukkan diolah dan dikeluarkan

dari port-port tersebut dengan instruksi-instruksi yang sederhana

Secara umum arsitektur mikrokontroler AT89C51/52 seperti pada blok gambar

dibawah ini, Mikrokontroler 89C51 adalah mikrokontroler dengan arsitektur MCS51

seperti 8031 dengan memori Flash PEROM (Programmable and Erasable Read Only

Memory)

Gambar 2.1 diagram blok mikrokontroler

(21)

Mikrokontroler AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor

dan 1 kristal serta catu daya 5 volt. Kapasitor 10 mikroFarad dan resistor 10 kilo Ohm

dipakai untuk membentuk rangkaian reset. Dengan adanya rangkaian reset ini

AT89S51 otomatis direset begitu rangkaian menerima catu daya. Kristal dengan

frekuensi maksimum 24 MHz dan kapasitor 30 pikoFarad dipakai untuk melengkapi

rangkaian oscillator pembentuk clock yang menentukan kecepatan kerja

mikrokontroler.

Memori merupakan bagian yang sangat penting pada mikrokontroler.

Mikrokontroler memiliki dua macam memori yang sifatnya berbeda. Read Only

Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu daya. Sesuai

dengan keperluannya, dalam susunan MCS-51 memori penyimpanan program ini

dinamakan sebagai memori program. Random Access Memori (RAM) isinya akan

sirna begitu IC kehilangan catu daya, dipakai untuk menyimpan data pada saat

program bekerja. RAM yang dipakai untuk menyimpan data ini disebut sebagai

memori data.

Ada berbagai jenis ROM. Untuk mikrokontroler dengan program yang sudah

baku dan diproduksi secara manual, program diisikan ke dalam ROM pada saat IC

mikrokontroler dicetak di pabrik IC. Untuk keperluan tertentu mikrokontroler

menggunakan ROM yang dapat diisi ulang atau Programable-Eraseable ROM yang

disingkat menjadi PEROM atau PROM. Dulu banyak dipakai UV-EPROM (Ultra

Violet Eraseable Programble ROM) yang kemudian dinilai mahal dan ditinggalkan

setelah ada flash PEROM yang harganya jauh lebih murah.

Jenis memori yang dipakai untuk Memori Program AT89S51 adalah Flash

PEROM, program untuk mengendalikan mikrokontroler diisikan ke memori itu lewat

bantuan alat yang dinamakan sebagai AT89S51 Flash PEROM Programmer.

Memori data yang disediakan dalam chip AT89S51 sebesar 128 byte,

meskipun hanya kecil saja tapi untuk banyak keperluan memori kapasitas itu sudah

cukup. Sarana Input/Output yang disediakan cukup banyak dan bervariasi. AT89S51

mempunyai 32 jalur Input/Output paralel dikenal sebagai Port 1 (P1.0 … P1.7) dan

(22)

AT89S51 dilengkapi UART (Universal Asyncronous Receiver/Transmitter)

yang biasa dipakai untuk komunikasi data secara seri. Jalur untuk komunikasi data seri

(RXD dan TXD) diletakkan berhimpitan dengan P3.0 dan P3.1 di kaki nomor 10 dan

11, sehingga kalau sarana input/output yang bekerja menurut fungsi waktu. Clock

penggerak untaian pencacah ini bisa berasal dari oscillator Kristal atau clock yang

diumpan dari luar lewat T0 dan T1. T0 dan T1 berhimpitan dengan P3.4 dan P3.5,

sehingga P3.4 dan P3.5 tidak bisa dipakai untuk jalur input/output paralel kalau T0

dan T1 dipakai.

AT89S51 mempunyai enam sumber pembangkit interupsi, dua diantaranya

adalah sinyal interupsi yang diumpankan ke kaki INT0 dan INT1. Kedua kaki ini

berhimpitan dengan P3.2 dan P3.3 sehingga tidak bisa dipakai sebagai jalur

input/output paralel kalau INT0 dan INT1 dipakai untuk menerima sinyal interupsi.

Port 1 dan 2, UART, Timer 0, Timer 1 dan sarana lainnya merupakan register

yang secara fisik merupakan RAM khusus, yang ditempatkan di Speciall Function

Register (SFR).

2.1.3 SFR (Register Fungsi Khusus) pada keluarga 51

Tidak semua alamat pada SFR digunakan, alamat – alamat yang tidak

digunakan diimplementasikan pada chip. Jika dilakukan usaha pembacaan pada

alamat – alamat yang tidak terpakai tersebut akan menghasilkan data acak dan

penulisannya tidak menimbulkan efek sama sekali. Penggunaan perangkat lunak

sebaiknya jangan menuliskan ‘1’ pada lokasi – lokasi ‘tak bertuan’ tersebut, karena

dapat digunakan untuk mikrokontroler generasi selanjutnya.Dengan demikian,nilai–

nilai reset atau nonaktif dari bit–bit baru ini akan selalu ‘0’ dan nilai aktifnya ‘1’.

Akumulator

ACC atau akumulator yang menempati lokasi E 0h digunakan sebagai register

untuk penyimpanan data sementara, dalam program, instruksi mengacunya sebagai

register A (bukan ACC). Digunakan dalam Operasi Aritmatik (Add A,#05H), Operasi

Logika (Anl A,#05H), Akses Memori Eksternal (Movx A,@DPTR)dan digunakan

(23)

Register B

Register B (lokasi D 0h) digunakan selama operasi perkalian dan pembagian,

untuk instruksi lain dapat diperlakukan sebagai register scratch pad (“papan

coret-coret”) lainnya.

Program status word (PSW)

Register psw (lokasi D 0h) mengandung informasi status program.

Stack Pointer

Register SP atau Stack pointer (lokasi 8 1h) merupakan register dengan

panjang 8-bit, digunakan dalam proses simpan menggunakan instruksi PUSH dan

CALL. Walau Stack bisa menempati lokasi dimana saja dalam RAM, register SP akan

selalu diinisialisasikan ke 07h setelah adanya reset, hal ini menyebabkan stack

berawal di lokasi 08h.

Data pointer

Register data pointer atau DPTR mengandung DPTR untuk byte tinggi (DPH)

dan byte rendah (DPL) yang amsing – masing berada dilokasi 83h dan 82h, bersama –

sama membentuk register yang mampu menyimpan alamat 16-bit. Dapat

dimanipulasikan sebagai register 16-bit atau ditulis dari/ke port, untuk masing –

masing Port 0, Port 1, Port 2 dan Port 3.

Serial data Buffer

SBUF atau serial Data Buffer (lokasi 99h) sebenarnya terdiri dari dua register

yang terpisah, yaitu register penyangga pengirim (transmit buffer ) dan penyangga

penerima (receive buffer). Pada saat data disalin ke SBUF, maka data sesungguhnya

dikirim ke penyangga pengirim dan sekaligus mengawali transimisi data serial.

Sedangkan pada saat data disalin dari SBUF, maka sebenarnya data tersebut berasal

(24)

Time Register

Pasangan register (TH0, TL0) dilokasi 8Ch dan 8Ah (TH1,TL1) dilokasi 8Dh

dan 8Bh serta (TH2,TL2) dilokasi CDh dan CCh merupakan register – register

pencacah 16-bit untuk masing – masing Timer 0, Timer 1 dan Timer 2.

Capture register

Pasangan register (RCAP2H, RCAP21) yang menempati lokasi CBh dan CAh

merupakan register capture untuk mode Timer 2 capture. Pada mode ini, sebagai

tanggapan terjadinya suatu transisi sinyal di kaki (pin) T2EX (pada AT89S52/55),

TH2 dan TL2 disalin masing – masing ke RCAP2H dan RCAP2L. timer 2 juga

memiliki mode isi ulang – otomatis 16-bit dan RCAP2H serta RCAP2L digunakan

untuk menyimpan nilai isi-ulang tersebut.

Kontrol Register

Register – register IP, IE, TMOD, TCON,T2CON,T2MOD,SCON dan PCON

berisi bit – bit control dan status untuk sistem interupsi, pencacah/pewaktu dan port

serial.

Berikut ini merupakan spesifikasi dari IC AT89S51 :

1. Kompatible dengan produk MCS-51

2. Empat Kbyte In-Sistem Reprogammable Flash Memory

3. Daya tahan 1000 kali baca/tulis

4. Tegangan kerja 4,0 volt sampai 5,5 volt

5. Fully Static Operation : 0 Hz sampai 33 MHz

6. Tiga level kunci memori program

7. 128 x 8 – bit RAM internal

8. 32 jalur input/output (I/O)

9. Dua 16 bit Timer/Counter

10.Enam sumber interrupt

11.Jalur serial dengan UART

2.1.4 Gambar IC Mikrokontroler AT89S51

(25)

Gambar 2.2. IC Mikrokontroler AT89S51

Deskripsi pin – pin pada mikrokontroler AT89S51 :

Vcc (Pin 40)

suplai tegangan

GND (pin 20)

Ground

Port 0 (Pin 39 – Pin 32)

Port 0 dapat berfungsi sebagai I/O biasa, low order multiplex address/data

ataupun penerima kode byte pada saat flash programming. Pada fungsi sebagai I/O

biasa port ini dapat memberikan output sink ke delapan buah TTL 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. Pada saat

flash programming diperlukan eksternal pull up, terutama pada saat verifikasi

program.

Port 2 (pin 21 – Pin 28)

Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat

mengakses memori secara 16 bit. Pada saat mengakses memori 8 bit, port ini akan

mengelurkan isi dari P2 special function register. Port ini mempunyai internal pull up

dan berfungsi sebagai input dengan memberikan logika 1. Sebagai output, port ini

dapat memberikan output sink ke keempat buah input TTL.

Port 3 (pin 10 – pin 17)

Port 3 merupakan 8 bit port I/O dua arah dengan internal pull-up. Port 3 juga

(26)

Table 2.1 Fungsi pin pada Port 3

Nama pin Fungsi

P3.0 (pin 10) RXD (Port input serial)

P3.1 (pin 11) TXD (Port output serial)

P3.2 (pin 12) INT0 (interrupt 0 eksternal)

P.3.3 (pin 13) INT1 (interrupt 1 eksternal)

P3.4 (pin 14) T0 (input eksternal timer 0)

P3.5 (pin 15) T1 (input eksternal timer 1)

P3.6 (pin 16) WR (menulis untuk eksternal data

memori)

P3.7 (pin 17) RD (untuk membaca eksternal data

memori)

RST (Pin 9)

Reset akan aktif dengan meberikan input high selama 2 cycle.

ALE/PROG (Pin 30)

Address latch Enable adalah pulsa output untuk me-latch byte bawah dari

alamat selama mengakses memori eksternal. Selain itu, sebagai pulsa input program

(PROG) selama memprogram Flash.

PSEN (Pin 29)

Program store enable digunakan untuk mengakses memori program eksternal.

EA (Pin 31)

Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan

menjalankan program yang ada pada memori eksternal setelah sistem direset. Jika

kondisi high, pin akan berfungsi untuk menjalankan program yang ada pada memori

internal. Pada saat flash programming, pin ini akan mendapat tegangan 12 volt.

Xtal1 (Pin 19)

Input untuk clock internal

Xtal2 (Pin 18)

(27)

Konfigurasi pin AT89S51 berbentuk kemasan DIP (Dual In-line Package).

mikrokontroler dipacu pada frekuensi 12 MHz dengan memasang rangkaian osilator

dengan kristal 12 MHz melalui kapasitor 33 pf pada kaki 18 (XTAL 1) dan kaki 19

(XTAL 2). Osilator yang digunakan adalah rangkaian osilator yang sudah terdapat

pada mikrokontroler,dan hanya menambahkankristal dan kapasitor sebagai penentu

frekuensi yang digunakan. Kristal yang digunakan adalah 12 Mhz.

Karena Frekuensi Kristal = 12MHz

T = 1/f

T = 1/12MHz = 8,333333333-8

T= 8,333333333 - 8 x 1000000 = 0,083333333 µdetik

sehingga satu periode gelombang kotak adalah :

satu periode =0,083333333/2 = 0,04166 µdetik

2.2 Perangkat Lunak

2.2.1 Instruksi – Instruksi AT89S51

Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S51 adalah

bahasa assembly untuk MCS-51 merupakan jumlah instruksi, pada bahasa ini hanya

ada 51 instruksi. Dari instruksi, yang sering digunakan orang hanya 10 instruksi,

instruksi tersebut adalah :

1. Instruksi MOV

Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau

register tertentu. Pengisian nilai dapat secara langsung atau tidak langsung.

Contoh pengisian nilai secara langsung

MOV R0,#20h

Perintah diatas 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

…………

…………

(28)

Perintah diatas 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.

meneruskan ke perintah pada baris berikutnya.

3. Instruksi ACALL

Instruksi ini berfungsi untuk memangggil suatu rutin tertentu.

Contoh :

Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke

rutin pemanggil setelah instruksi ACALL dilaksanakan.

(29)

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 melompat ke alamat tertentu,

jika pin yang dimaksud berlogika high (1).

Contoh :

Loop:

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 CJNE (COMPARE JUMP IF NOT EQUEL)

Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register

dengan suatu nilai tertentu.

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

(30)

9. Instruksi DEC (DECREMENT)

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 (INCREMENT)

Instruksi ini merupakan perintah untuk menambahkan nilai register

yang dimaksud dengan 1.

Contoh:

MOV R0,#20h R0 = 20h

………….

INC R0 R0 = R0 + 1

………….

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.

(31)

Setelah program selesai ditulis, kemudian di save dan kemudian di assembler

(dicompile). 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 ini berfungsi untuk mengubah program yang kita tuliskan ke dalam

bilangan heksadesimal inilah yang akan dikirimkan ke mikrokontroler.

2.2.3 Software Downloader

Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroler

digunakan software ISP-Flash Programer 3.0a yang dapat di download dari internet.

Tampilannya seperti gambar di bawah ini.

Gambar 2.4 ISP-Flash Programmer 3.a

Cara menggunakannya adalah dengan meng klik open file untuk mengambil

file heksadesimal dari hasil kompilasi 8051 IDE, kemudian klik write untuk

(32)

2.3. KOMPONEN 2.3.1. Transistor

Semua transistor memiliki 3 buah kaki sambungan atau terminal. Transistor

daya rendah dibuat dengan kemasan dari bahan plastik atau logam. Dimana kemasan

transistor yang terbuat dari plastik memiliki salah satu sisi permukaaan yang

berbentuk datar, sedangkan yang terbuat dari logam memiliki sebuah tonjolan (tag)

pada pinggiran bawah nya (rim). Fitur – fitur ini dimaksudkan untuk membantu

pemakai mengidentifikasikan kaki – kaki terminal. Terminal – terminal nya diberi

label c, b, dan e yang merukan singkatan dari collector, basis dan emitor. Ada 2 jenis

transistor berdasarkan arus inputnya (BJT) dan tegangan inputnya (FET).

Berikut ulasan 2 transistor tersebut:

1. BJT (Bipolar junction Transistor)

Transistor jenis ini merupakan transistor yang mempunyai 2 dioda,

terminal positif dan negatife nya berdempet sehingga ada 3 terminal.

Perubahan arus listrik dalam jumlah kecil pada terminal basis dapat

menghasilkan perubahan arus listrik dalam jumlah besar pada terminal

kolektor. Prinsip inilah yang mendasari penggunaan transistor sebagai penguat

elektronik.

2. FET (Field Effect Transistor)

Transistor FET dibagi menjadi 2 macam, yaitu junction FET

(JFET)dan Insulated Gate FET (IGFET) atau juga dikenal dengan sebutan

metal oxide silikon FET (MOSFET). Berbeda dengan MOSFET terminal gate

dalam JFET membentuk sebuah dioda dengan kanal (materi semiconductor

antara Source dengan drain). Dari sebuah fungsi, hal ini membuat N-chanel

JFET menjadi sebuah versi solid state dari tabung vakum yang juga

membentuk sebuah dioda antara grade dan katode.

Untuk menggunakan sebuah BJT kita harus menyambungkan nya sedemikian rupa

sehingga:

1. Terminal emitter BJT adalah terminal dengan polaritas paling negatife.

(33)

3. Terminal basis lebih positif 0,7 volt atau sedikit lebih besar dari terminal

emitor nya.

Dengan kondisi – kondisi ini kita dapat mengetahui bahwa :

1. Arus yang relatife kecil mengalir menuju basis.

2. Arus dengan nilai yang jauh lebih besar mengalir menuju kolektor.

3. Arus basis dan arus kolektor mengalir keluar dari transistor melalui emitor.

Transistor sebagai switching

Disamping sebagai penguat, transistor juga sering digunakan sebagai

switching untuk mengontrol suatu beban dengan arus kecil,medium, atau arus besar

dengan aplikasi – aplikasi industri.

Gambar 2.5 Transistor sebagai Switching

Pada penggunaan transistor sebagai switching tegangan nol volt pada Vbe

transistor jenis NPN berarti mengaktifkan transistor tersebut sebagai saklar dengan

keadaan terbuka, sedangkan memberi tegangan ≥0,7 volt untuk transistor silikon dan

≥ 0,3 volt untuk transistor germanium pada Vbe transistor akan memfungsikan transistor itu sebagai saklar dengan keadaan tertutup. Sedangkan pada transistor jenis

PNP tegangan nol justru akan membuat transistor tersebut bekerja sebagai saklar

dalam keadaan tertutup. Pada keadaan transistor sebagai saklar tertutup maka arus Ic

dari transistor itu akan mengalir melalui Rc melalui ground, sedangkan pada keadaan

(34)

2.3.2 LDR (light dependent resistor)

Adalah jenis resistor yang berubah hambatannya karena pengaruh

cahaya. Bila cahaya gelap,nilai tahanannya semakin besar, sedangkan bila

cahayanya terang nilainya menjadi semakin kecil. Sebuah LDR terdiri dari

sebuah piringan bahan semikonduktor dengan dua buah elektroda pada

permukaannya. Dalam gelap atau dibawah cahaya yang redup, bahan piringan

hanya mengandung elektron bebas dalam jumlah yang relatife sangat kecil.

Hanya tersedia sedikit elektron bebas untuk mengalirkan muatan listrik, hal ini

berarti bahwa bahan bersifat sebagai konduktor yang buruk untuk arus listrik.

Dengan kata lain nilai tahanan bahan sangat tinggi. Dibawah cahaya cukup

terang,lebih banyak elektron dapat melepaskan diri dari atom-atom bahan

semikonduktor ini. Terdapat lebih banyak elektron bebas yang dapat

mengalirkan muatan listrik. Dalam keadaan ini,bahan bersifat sebagai

konduktor yang baik. Tahanan listrik bahan rendah. Semakin terang cahaya

yang mengenai bahan, semakin banyak elektron bebas yang tersedia, dan

semakin rendah pula tahanan listrik bahan. Sensor Cahaya light dependent

resistors (LDR) merupakan komponen elektronik yang peka terhadap

pencahayaan. Jika mendapat cahaya terang maka nilai tahanannya mengecil

sebesar (+ 250kΩ), jika mendapat cahaya yang gelap maka nilai tahanannya

akan membesar sebesar (+ 1MΩ) atau bisa mencapai beberapa mega ohm.

(35)

Gbr 2.7. Bentuk grafik LDR

2.3.3 Dioda

Dioda merupakan sambungan bahan p-n yang berfungsi sebagai penyearah.

Komponen ini memberikan resistansi yang sangat rendah terhadap aliran arus pada

satu arah dan resistansi yang tinggi terhadap aliran arus, pada arah yang berlawanan.

Karakteristik ini memungkinkan dioda untuk digunakan dalam aplikasi yang menuntut

rangkaian untuk memberikan tanggapan yang berbeda sesuai dengan arah arus yang

mengalir didalamnya.

Sebuah dioda ideal akan melewatkan arus tak terhingga pada satu arah dan

sama sekali tidak melewatkan arus pada arah yang sebaliknya. Sebagai tambahan,

dioda akan mulai mengalirkan arus apabila tegangan terkecil sekalipun diberikan.

Jika bahan semikonduktor tipe p dijadikan lebih positif daripada bahan tipe n

melampaui nilai ambang tegangan majunya (sekitar 0,6 volt jika bahannya silikon dan

0,2 volt jika bahannya germanium). Dioda akan melewatkan arus dengan bebas. Jika

sebaliknya, bahan tipe p dijadikan lebih negatife daripada bahan tipe n, tidak akan ada

arus yang mengalir kecuali tegangan yang diberikan melebihi tegangan maksimum

atau breakdown yang dapat diterima oleh perangkat.

Bahan tipe p menjadi sisi katoda sedangkan bahan tipe n menjadi sisi anoda.

Tanpa potensial eksternal, elektron-elektron dari bahan tipe n akan menyeberang ke

dalam daerah tipe p dan mengisi sebagian dari hole-hole yang kosong. Tindakan ini

(36)

tidak terdapat pembawa muatan bebas. Zona ini dikenal dengan daerah serapan

(deplesion religion). Dalam kondisi bias maju, dioda akan melewatkan arus dengan

bebas, diode bertindak seperti sakelar yang tertutup. Dalam kondisi bias mundur,

dioda melewatkan arus dalam jumlah yang dapat diabaikan,dioda bertindak seperti

sebuah sakelar yang terbuka.

Fungsi paling umum dari dioda adalah untuk memperbolehkan arus listrik

mengalir dalam suatu arah (disebut kondisi bias maju) dan untuk menahan arus dari

arah sebaliknya (disebut kondisi bias mundur). Karenanya, dioda dapat dianggap

sebagai versi elektronik dari

menunjukkan kesearahan hidup-mati yang sempurna (benar-benar menghantar saat

bias maju dan menyumbat pada bias mundur), tetapi dioda mempunyai karakteristik

listrik tegangan-arus taklinier kompleks yang bergantung pada teknologi yang

digunakan dan kondisi penggunaan. Kebanyakan dioda digunakan karena karakteristik

satu arah yang dimilikinya. Beberapa jenis dioda juga mempunyai fungsi yang tidak

ditujukan untuk penggunaan penyearahan.

Jenis-jenis dioda dibagi menjadi lima jenis berdasarkan fungsinya, yaitu :

1. Dioda penyearah

Dioda yang difungsikan sebagai penyearah tegangan bolak balik

menjadi tegangan searah dan biasanya digunakan pada rangkaian power

supplay.

2. Dioda foto (fotovoltage)

Digunakan untuk mengubah energi cahaya menjadi energi listrik searah.

3. Dioda laser

Digunakan untuk membangkitkan sinar laser tahap rendah, dan cara

kerjanya mirip LED.

4. Dioda pemancar cahaya (LED)

Adalah dioda yang memancarkan cahaya bila dipanjar maju. Led

dibuat dari semikonduktor campuran seperti gallium arsenide fosfida (GaAsP)

,gallium fosfida (GAP), gallium indium fosfida dan gallium aluminium

arsenide. Dioda pemancar cahaya menghasilkan cahaya ketika arus

melewatinya. Led dapat digunakan sebagai indikator serba guna. Sebuah led

(37)

kecerahan maksimum meskipun arus sekecil 5A pun masih bisa menghasilkan

cahaya yang jelas nampak. Jatuh tegangan maju sebuah led rata-rata adalah

1,5volt, sehingga pasokan tegangan 2volt dapat menyalakan sebagian besar led

dengan kecerahan maksimum. Sebuah led yang tipikal memiliki kemasan

berbentuk kubah yang terbuat dari bahan plastik, dengan pinggiran yang

menonjol (rim) pada bagian bawah kubah. Terdapat dua buah kaki terminal

dibagian bawah kubah. Biasanya kaki katoda lebih pendek dari kaki anoda.

Cara lain untuk membedakan kaki katoda dengan anoda adalah dengan

memperhatikan bagian rim. Rim dibuat berbentuk datar pada sisi yang

berdekatan dengan kaki katoda.

5. Dioda zener

Dioda zener digunakan untuk regulasi tegangan

2.3.4 Relay

Relay adalah sebuah saklar yang dikendalikan oleh arus. Relay memiliki

sebuah kumparan tegangan rendah yang dililitkan pada sebuah inti. Relay biasanya

hanya sebuah kumparan akan tetapi memiliki beberapa kontak. Relay elektromekanis

berisi kontak diam dan kontak bergerak yang dipasangkan pada plunger. Kontak

ditujuk sebagai normaly open (NO) dan normaly close (NC). Kontak normaly open

akan membuka ketika tidak ada arus mengalir pada kumparan, tetapi tertutup

secepatnya setelah kumparan menhantarkan arus atau diberi tenaga. Kontak normaly

close akan tertutup ketika kumparan tidak diberi daya dan terbuka ketika kumparan

diberi daya. Masing-masing kontak biasanya digambarkan sebagai kontak yang

nampak dengan kumparan yang tidak diberi daya.

2.3.5 Transformator (trafo)

Transformator atau trafo adalah komponen yang digunakan untuk mentransfer

sumber energi atau tenaga dari suatu rangkaian AC ke rangkaian lainnya. Perpindahan

atau transfer energi tersebut bisa menaikkan atau menurunkan energi yang ditransfer,

hal ini disesuaikan dengan kebutuhan. Untuk menaikkan tegangan dibutuhkan

(38)

step-down. Tanpa transformator, distribusi daya listrik yang luas menjadi tidak praktis.

Transformator dapat membangkitkan daya pada tegangan yang cocok, menaikkan

sampai tegangan yang sangat tinggi untuk transmisi jarak jauh dan kemudian

menurunkan pada distribusi yang praktis.prinsip kerja transformator didasarkan pada

induksi bersama. Dimana induksi bersama terjadi ketika medan magnet disekitar satu

penghantar memotong melintang penghantar yang lain, yang menginduks ikan

tegangan didalamnya. Efek ini dapat ditingkatkan untuk membentuk penghantar –

penghantar menjadi lilitan dan kumparan pada inti magnet bersama.

Trafo daya biasanya menunjuk pada transformator yang lebih besar yang

digunakan untuk merubah level tegangan dan arus untuk memenuhi persyaratan

rangkaian. Sebagian besar transformator daya dirancang beroperasi pada frekuensi 50

Hz sampai dengan 60 Hz. Transformator ini berfungsi sebagai pensupply daya untuk

mengubah tegangan jala – jala menjadi tegangan lain yang dibutuhkan.

Menurut pemakaiannya trafo dapat dibagi menjadi 3 jenis yaitu:

1. Trafo filter berfungsi memfilter atau menyaring sinyal.

2. Trafo MF biasa terdapat pada pesawat radio berfungsi sebagai kopel atau

menghubungkan antar frekuensi.

3. Trafo daya atau trafo input/output digunakan untuk menyesuaikan impedansi.

2.3.6 Sensor Air

Sensor air yang dibuat sebenarnya merupakan PCB yang jalurnya dirancang

sedemikian rupa sehingga letak jalur-jalurnya rapat. Ketika air jauh ke atas sensor,

maka resistor di basis transistor akan mendapat tegangan 5V. Hal ini akan

menyebabkan transistor C945 akan aktif. Ketika transistor ini aktif, logika outputnya

yang dihubungkan pada input IC 7408 (merupakan IC dengan 4 gerbang AND) akan

menjadi 0. Sebaliknya ketika sensor air dalam keadaan kering, maka 5V tidak

terhubung pada resistor di basis transistor. Sehingga basis transistor tidak mendapat

tegangan. Hal ini menyebabkan transistor tidak aktif (transistor akan aktif bila

tegangan di basisnya lebih besar dari 0,6V). Karena transistor ini tidak aktif, maka

(39)

Keempat output dari sensor air ini dihubungkan ke sebuah IC 7408. Dengan

demikian, ketika salah satu saja sensornya menghasilkan logika 0, maka ouput dari IC

7408 akan 0. Logika ini akan dikirimkan ke mikrokontroler untuk mengindikasikan

adanya air pada sensor air. IC 7408 ini dapat menghemat penggunaan pin ada

mikrokontroler dan mempermudah program yang dibuat.

2.3.7 IC (Integrated Circuit)

IC adalah rangkain elektronik lengkap yang dimasukkan dalam 1 chip silikon.

Didalam 1 buah Ic bisa berisi puluhan, ratusan bahkan ribuan komponen elektronika

(transistor, diode, resistor, kapasitor dan lainnya) yang bersama – sama sebagai

penghantar listrik yang bekerjanya disesuaikan dengan fungsi IC tersebut.

Berikut jenis IC dari segi bentuk dan fungsinya dalam peralatan elektronika.

1. IC power Adaptor atau regulator

IC jenis ini digunkan sebagai komponen utama pada rangkaian power

adaptor pada sub rangkaian regulator. Fungsi dari IC ini adalah untuk

menstabilkan tegangan.

2. IC Digital

IC digital merupakan IC yang banyak digunakan dalam elektronika. I

jenis ini memiliki suatu titik elektronis yang berupa kaki IC. IC jenis ini

memiliki dua keadaan logika, yaitu logika nol (rendah) atau logika satu

(tinggi). Suatu titik elektronis mewakili satu binary digit atau biasa disingkat

dengan bit. Binary berarti sistem bilangan yang mengenal dua angka yaitu nol

dan satu.

2.3.8 Motor Stepper

Motor stepper adalah motor listrik yang dikendalikan dengan pulsa-pulsa

digital, bukan dengan memberikan tegangan yang terus-menerus. Deretan pulsa

(40)

pulsa yang ditentukan. Satu pulsa menghasilkan satu kenaikan putaran atau step, yang

merupakan bagian dari satu putaran penuh. Oleh karena itu, perhitungan jumlah pulsa

dapat diterapkan untuk mendapatkan jumlah putaran yang diinginkan. Perhitungan

pulsa secara otomatis menujukkan besarnya putaran yang telah dilakukan, tanpa

memerlukan informasi balik(feedback).

Gbr 2.8. Putaran motor dengan satu pulsa

Gbr 2.9. Putaran motor dengan banyak pulsa

Ketepatan kontrol gerak motor stepper terutama dipengaruhi oleh jumlah step

tiap putaran; semakin banyak jumlah step, semakin tepat gerak yang dihasilkan. Untuk

ketepatan yang lebih tinggi, beberapa driver motor stepper membagi step normal

menjadi setengah step(half step) atau mikro step. Pada motor stepper umumnya

tertulis spesifikasi Np (= pulsa / rotasi). Sedangkan kecepatan pulsa diekspresikan

sebagai pps (= pulsa per second) dan kecepatan putar umumnya ditulis sebagai ω (=

rotasi / menit atau rpm). Kecepatan putar motor stepper (rpm) dapat diekspresikan

menggunakan kecepatan pulsa (pps) sebagai berikut.

Oleh karena 1 rotasi = 360°, maka tingkat ketelitian motor stepper dapat diekspresikan

(41)

Variable Reluctance (VR) motor stepper jenis ini memiliki bentuk rotor yang

unik yaitu berbentuk silinder dan pada semua unitnya memiliki gerigi yang memiliki

hubungan dengan kutub-kutub stator. Rotor pada magnet tipe ini tidak menggunakan

magnet permanent. Stator terlilit oleh lilitan sehingga pada saat teraliri arus, stator

akan menghasilkan kutub magnet. Jumlah gerigi pada rotor akan menentukan langkah

atau step motor. Perbedaan motor stepper berjenis PM dengan VR yaitu motor

berjenis VR memiliki torsi yang relatif lebih kecil dibanding dengan motor stepper

berjenis PM. Hal lain yang dapat dilihat adalah sisa kemagnetan sangat kecil sehingga

pada saat motor stepper tidak dialiri arus maka ketika diputar tidak ada torsi yang

melawan. Sudut langkah motor stepper berjenis VR ini bervariasi yaitu sekitar sampai

dengan 30°. Motor stepper berjenis VR ini memiliki torsi yang kecil. Sering

ditemukan pada printer dan instrumen-instrumen pabrik yang ringan yang tidak

membutuhkan torsi yang besar.

Gbr 2.10. Variable Reluctance

Seperti pada gambar diatas, motor mempunyai 3 pasang kutub stator (A, B, C)

yang diset terpisah 15 derajat. Arus dialirkan ke kutub A melalui lilitan motor yang

menyebabkan tarikan magnetik yang menyejajarkan gigi rotor kekutub A. jika kita

memberi energi kekutub B maka akan menyebabkan rotor berputar 15 derajat sejajar

kutub B. proses ini akan berlanjut kekutub C dan kembali kekutub A searah dengan

(42)

BAB III

PERANCANGAN ALAT DAN PROGRAM

3.1.Diagram Blok

Secara garis besar, digram blok rangkaian dari “ Simulasi Alat Kontrol Atap

Otomatis” ini adalah sebagai berikut :

Gambar 3.1. Diagram blok Rangkaian

Pada alat ini terdapat empat buah sensor air yang masing-masing dihubungkan

ke P0.0, P0.1, P0.2, P0.3. selain itu, terdapat juga LDR yang digunakan sebagai sensor

cahaya yang dihubungkan ke P0.4. sementara itu, terdapat juga tiga tombol, antara

lain : tombol auto dihubungkan P1.7, tombol buka manual dihubungkan ke P1.3 dan

tombol tutup manual dihubungkan ke P1.5. Tombol-tombol ini digunakan sebagai

input instruksi agar alat dapat membuka atau menutup atap baik itu secara otomatis

maupun manual, sesuai dengan keinginan si pengguna. Sementara itu, pada P2.4,

P2.5, P2.6, P2.7 dihubungkan rangkaian driver motor yang akan menggerakkan motor

Tombol auto

Driver motor Motor stepper

(43)

Vreg

stepper untuk menutup ataupun membuka atap sesuai dengan hasil pengolahan data

yang dilakukan mikrokontroler AT89S51.

3.2.Rangkaian Power Supplay (PSA)

Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12 volt,

keluaran 5 volt digunakan untuk menghidupkan seluruh rangkaian, sedangkan

keluaran 12 volt digunakan untuk menghidupkan motor stepper. Rangkaian tampak

seperti gambar di bawah ini,

Gambar 3.2 Rangkaian Power Supplay (PSA)

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.

3.3.Rangkaian Driver Motor Stepper

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 ini dihubungkan ke port 2 dari

(44)

high secara bergantian ke port 2. Sedangkan untuk memutar motor ke arah sebaliknya,

maka logika high yang diberikan secara bergantian tersebut harus berlawanan arah

dengan sebelumnya. Dengan demikian maka rangkaian ini sudah dapat dikendalikan

oleh mikrokontroler AT89S51.

Gambar 3.3 Rangkaian Driver Motor Stepper

Pada rangkaian diatas, apabila salah satu rangkaian I dihubungkan ke

mikrokontroler diberi logika high dan input pada rangkaian lain diberi logika low,

maka kedua transistor tipe PNP TIP 122 pada rangkaian I akan aktif. Hal ini akan

membuat kolektor dari kedua transistor tipe PNP TIP 122 pada rangkaian I akan

mendapat tegangan 0 volt dari ground. Kolektor dari transistor tipe PNP TIP 122 yang

berada di sebelah kiri atas diumpankan ke basis dari transistor tipe PNP TIP 122

sehingga basis dari transistor TIP 122 mendapatkan tegangan 0 volt yang

menyebabkan transistor aktif (transistor tipe PNP akan aktif jika tegangan pada basis

lebih kecil dari 4,34 volt). Aktifnya transistor PNP TIP 122 ini akan mengakibatkan

kolektornya terhubung ke emitor sehingga kolektor mendapatkan tegangan 15 volt

dari Vcc.

Kolektor dari transistor TIP 122 dihubungkan ke kumparan akan mendapatkan

tegangan 6 volt. Hal ini akan mengakibatkan kumparan menimbulkan medan magnet.

Medan magnet inilah yang akan menarik motor untuk mengubah kea rah kumparan

yang menimbulkan medan magnet tersebut. Sedangkan rangkaian II, III dan IV karena

pada inputnya diberi logika low, maka kumparannya tidak menimbulkan medan

magnet, sehingga motor tidak tertarik oleh kumparan – kumparan tersebut.

Demikian seterusnya untuk menggerakkan motor agar berputar maka harus

(45)

masing rangkaian. Dengan demikian perputaran motor stepper sudah dapat

dikendalikan melalui mikrokontroler, sehingga proses buka dan tutup atap dapat diatur

melalui program yang ada pada mikrokontroler.

3.4.Rangkaian Sakelar (Keypad)

Pada alat ini dipakai dua jenis sakelar yaitu limit switch dan touch switch

(tombol). Limit switch digunakan sebagai pemberi informasi posisi atap, sedangkan

touch switch (tombol) digunakan sebagai tombol operasional alat. Gambar dari

rangkaian sakelar ini adalah sebagai berikut:

P1.3

P1.5

P1.7

P0.6

P0.7

Gambar 3.4 Rangkaian saklar

Ketika sakelar terbuka, P1.3 s.d. p1.7 akan bernilai 1 (high). Sedangkan ketika

sakelar tertutup, pin akan terhubung langsung dengan ground yang akan

mengakibatkan tegangannya menjadi 0 V. Ini akan memberikan logika 0 (low) pada

mikrokontroler.

3.5.Rangkaian Minimum AT89S51

Rangkaian ini berfungsi sebagai pusat kendali dari seluruh system yang ada.

Kompoen utama dari rangkaian ini adalah IC mikrokontroler AT89S51. Pada IC inilah

semua program diisikan, sehingga rangkaian dapat berjalan sesuai dengan yang

(46)

Gambar 3.5 Rangkaian mikrokontroller AT89S51

Pin 31 External Access Enable (EA) diset high (H). Ini dilakukan karena

mikrokontroller AT89S51 tidak menggunakan memori eskternal. Pin 18 dan 19

dihubungkan ke XTAL 12 MHz dan capasitor 30 pF. XTAL ini akan mempengaruhi

kecepatan mikrokontroller AT89S51 dalam mengeksekusi setiap perintah dalam

program. Pin 9 merupakan masukan reset (aktif tinggi). Pulsa transisi dari rendah ke

tinggi akan me-reset mikrokontroller ini. Pin 32 sampai 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. Pin 1 sampai 8 adalah port 1. Pin 21 sampai 28 adalah port 2. Dan Pin 10

sampai 17 adalah port 3. Pin 17 yang merupakan P3.7 dihubungkan dengan transistor

dan sebuah LED. Ini dilakukan hanya untuk menguji apakan rangkaian minimum

mikrokontroller AT89S51 sudah bekerja atau belum. Dengan memberikan program

sederhana pada mikrokontroller tersebut, dapat diketahui apakah rangkaian minimum

tersebut sudah bekerja dengan baik atau tidak. Jika LED yang terhubug ke Pin 17

sudah bekerja sesuai dengan perintah yang diberikan, maka rangkaian minimum

tersebut telah siap digunakan. Pin 20 merupakan ground dihubungkan dengan ground

pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan

(47)

3.6. Rangkaian Sensor Cahaya

Gambar 3.6 Rangkaian sensor cahaya

LDR atau Light Dependent Resistor adalah salah satu jenis resistor yang nilai

hambatannya dipengaruhi oleh cahaya yang diterima olehnya. LDR dibuat dari

Cadmium Sulfida yang peka terhadap cahaya. Seperti yang telah diketahui bahwa

cahaya memiliki dua sifat yang berbeda yaitu sebagai gelombang elektromagnetik dan

foton/partikel energi (dualisme cahaya). Saat cahaya menerangi LDR, foton akan

menabrak ikatan Cadmium Sulfida dan melepaskan elektron. Semakin besar intensitas

cahaya yang dating, semakin banyak electron yang terlepas dari ikatan. Sehingga

hambatan LDR akan turun saat cahaya meneranginya.

LDR akan mempunyai hambatan yang sangat besar saat tak ada cahaya yang

mengenainya (gelap). Dalam kondisi ini hambatan LDR mampu mencapai 1 M Ohm.

Akan tetapi saat terkena cahaya, hambatan LDR akan turun secara drastis, hingga

kira-kira 250 Ohm.

Pada saat LDR dikenai cahaya, besar tegangan yang diumpankan ke transistor

adalah:

��= 100�Ω

250Ω+ 100�Ω× 5� = 4,98 ����

Tegangan tersebut akan mengaktifkan transistor C945. Pada saat aktif,

kolektornya akan mendapatkan tegangan 0 Volt dari ground. Tegangan 0 volt inilah

yang merupakan sinyal low (0) yang diumpankan ke mikrokontroler AT89S51.

(48)

Pada saat tidak ada cahaya yang mengenai LDR, tegangan yang diumpankan

ke transistor adalah:

Tegangan tersebut belum dapat mengaktifkan transistor C945. Dengan

demikian tegangan kolektor-emitornya berkisar antara 4,5 V – 5 V. Tegangan inilah

yang merupakan sinyal high (1) yang diumpankan pada mikrokontroler AT 89S51.

3.7.Rangkaian Sensor Air

Sensor air yang dibuat sebenarnya merupakan PCB yang jalurnya dirancang

sedemikian rupa sehingga letak jalur-jalurnya rapat. Sehingga ketika tetesan air

mengenai jalur-jalur tersebut, jalur tersebut akan terhubung layaknya sebuah sakelar.

Ketika air jauh ke atas sensor, maka resistor di basis transistor akan mendapat

tegangan 5V. Hal ini akan menyebabkan transistor C945 akan aktif. Ketika transistor

ini aktif, logika outputnya yang dihubungkan pada input IC 7408 (merupakan IC

dengan 4 gerbang AND) akan menjadi 0. Sebaliknya ketika sensor air dalam keadaan

kering, maka 5V tidak terhubung pada resistor di basis transistor. Sehingga basis

transistor tidak mendapat tegangan. Hal ini menyebabkan transistor tidak aktif

(transistor akan aktif bila tegangan di basisnya lebih besar dari 0,6V).

(49)

Karena transistor ini tidak aktif,outputnya akan bernilai 1. Keempat output dari

sensor air ini dihubungkan ke sebuah IC 7408. Dengan demikian, ketika salah satu

saja sensornya menghasilkan logika 0, maka ouput dari IC 7408 akan 0.Logika ini

akan dikirimkan ke mikrokontroler untuk mengindikasikan adanya air pada sensor air.

Gambar 3.8 Bentuk sensor air pada PCB

Ketika tetesan air mengenai jalur tersebut, basis transistor akan mendapat

tegangan sekitar 4,5 V – 5 V. Hal ini akan mengakibatkan transistor aktif. Ketika

aktif, transistor tersebut akan memberikan logika 0 (low) pada mikrokontroler.

Sebaliknya, dalam keadaan kering jalur – jalur tembaga pada PCB tersebut tidak

terhubung. Hal ini akan meng-off kan transistor dan akan mengirimkan logika 1(high)

(50)

3.8.Flowchart

aktif tidak tertekan ditekan

tidak tertekan tidak tertekan tidak tertekan

ditekan ditekan tertekan

tidak ditekan tidak ditekan

(51)

Program diawali dengan start, yang berarti bahwa rangkaian diaktifkan.

Selanjutnya program akan mengecek kondisi hujan (sensor air), jika tidak ada sinyal

dari sensor ini, maka program akan mengecek sensor cahaya, seterusnya program akan

terus mengecek kondisi dari semua sensor.

Jika salah satu dari keadaan hujan, keadaan gelap. Keadaan terang mengirim

sinyal ke mikrokontroler, maka program akan memerintahkan motor untuk berputar

membuka atap. Dan jika salah satu dari ke 5 sensor berada pada keadaan hujan dan

gelap maka sensor akan mengirimkan sinyal, maka program akan memerintahkan

motor untuk berputar menutup atap. Selanjutnya program akan kembali ke rutin awal

untuk kembali mengecek kondisi dari masing – masing sensor. Hal ini dapat kita lihat

(52)

BAB IV

PENGUJIAN ALAT 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 voltmeter

digital. Dari hasil pengujian diperoleh tegangan keluaran pertama sebesar 5,1 volt.

Tegangan ini dipergunakan untuk mensupplay tegangan ke seluruh rangkaian.

Mokrokontroler AT89S51 dapat bekerja pada tegangan 4,0 sampai dengan 5,5 volt,

sehingga tegangan 5,1 volt ini cukup untuk mensupplay tegangan ke mikrokontroler

AT89S51. Dengan demikian rangkaian ini sudah dapat bekerja dengan baik.

Sedangkan tegangan keluaran kedua adalah sebesar 12,3 volt.

4.2. Pengujian Rangkaian Driver Motor Stepper

Pengujian pada rangkaian jembatan H ini dilakukan dengan menghubungkan

input rangkaian driver motor stepper ini dengan rangkaian mikrokontroler At89S51

dan menghubungkan output dari rangkaian driver motor stepper ini dengan motor

stepper, kemudian memberikan program sebagai berikut :

mov a,#11h

buka:

jb limit_buka,bukalagi

ret

bukalagi:

(53)

rl a

acall delay

sjmp buka

Program diawali dengan memberikan nilai 11h pada accumulator (a),

kemudian program akan memasuki rutin buka atap. Nilai a diisikan ke port 0,

sehingga sekarang nilai port 0 adalah 11h. ini berarti P0.0 dan p0.4 mendapatkan

logika high sedangkan yang lainnya logika low, seperti table di bawah ini.

P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0

0s 0 0 1 0 0 0 1

Progarm dilanjutkan dengan memanggil rutin tunda. Lamanya tunda akan

mempengaruhi kecepatan perputaran motor. Semakin lama tunda, maka perputaran

motor akan semakin lambat. Perintah berikutnya adalah Rl a, perintah ini akan

memutar nilai yang ada pada accumulator (a), seperti tampak pada table di bawah ini,

0 0 0 1 0 0 0 1

Rl

0 0 1 0 0 0 1 0

Dst………

Nilai pada accumulator (a) yang awalnya 11h, setelah mendapat perintah Rl a,

maka nilai pada accumulator (a) akan berubah menjadi 22h. kemudian program akan

melihat apakah kondisi sensor buka atap dalam keadaan high (1) atau low (0). Jika

high (1), nilai yang ada pada accumulator (a), akan kembali diisikan port 0, maka nilai

di port 0 akan berubah menjadi 22h, ini berarti P0.1 dan P0.5 mendapatkan logika

high sedangkan yang lainnya mendapatkan logika low, seperti table di bawah ini,

(54)

0 0 1 0 0 0 1 0

Sebelumnya telah dibahas bahwa P0.0, P0.1, P0.2, dan P0.3 dihubungkan ke

masukan driver motor stepper, dengan program diatas maka P0.0, P0.1, P0.2, dan P0.3

akan mendapatkan nilai high (1). Hal ini menyebabkan motor stepper akan berputar

membuka atap. Hal yang sama juga berlaku ketika motor berputar kearah sebaliknya,

perbedaannya hanya pada perintah rotate. Jika pada perintah berlawanan arah jarum

jam digunakan rotate left (Rl), maka pada perintah searah jarum jam digunakan

perintah rotate right (Rr). Perputaran perintah rr diperlihatkan pada table berikut ,

1 0 0 0 1 0 0 0

Rr

0 1 0 0 0 1 0 0

Dst…………..

4.3. Pengujian Rangkaian Mikrokontroler AT89S51

Untuk mengetahui apakah rangkaian mikrokontroler AT89S51 telah bekerja

dengan baik, maka dilakukan pengujian. Pengujian bagian ini dilakukan dengan

memberikan program sederhana pada mikrokontroler AT89S51. Programnya adalah

sebagai berikut :

tutuplagi:

mov p0,a

rr a

acall delay

sjmp tutup

(55)

mov r7,#40

tnd:

mov r6,#150

djnz r6,$

djnz r7,tnd

ret

Program diatas bertujuan untuk menutup atap yang terhubung ke P3.1 selama

± 0,012 detik. Perintah mov p0,a akan menyebabkan driver motor bergerak. Perintah

rr a menyebabkan motor menggerakkan atap ke kanan. Acall delay akan menyebabkan

atap ini menutup selama beberapa saat. Perintah Sjmp tutup akan menjadikan program

tersebut berulang.

Lamanya waktu tunda dapat dihitung dengan perhitungan sebagai berikut :

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

waktu = 12 / 12 Mhz = 1 mikrodetik

Mnemonic Siklus Waktu Eksekusi

Mov Rn,#data 2 2 x 1 �� = 2 ��

Djnz 2 2 x 1 �� = 2 ��

Ret 1 1 x 1 �� = 1 ��

delay:

mov r7,#40

tnd:

(56)

djnz r6,$ 150 x 2 = 300 x 40 =1200 + 4 + 3 = 1207 ��

djnz r7,tnd

ret

Jadi waktu yang dibutuhkan untuk mengerjakan program diatas adalah 1207

mikrodetik atau 0,012007 detik dan dapat dibulatkan menjadi 0,012 detik.

Jika program tersebut diisikan ke mikrokontroler AT89S51, kemudian

mikrokontroler dapat berjalan sesuai dengan program yang diisikan, maka rangkaian

minimum mikrokontroler AT89S51 telah bekerja dengan baik.

4.4. Pengujian Rangkaian Tombol

Pengujian rangkaian ini dapat dilakukan dengan menekan tombol, kemudian

mengukur tegangan output dari rangkaian tersebut. Dari hasil pengujian didapatkan

pada saat tombol tidak ditekan, maka output dari rangkaian ini adalah 4,9 volt. Ketika

terjadi penekanan tombol, maka output dari rangkaian ini adalah 0 volt. Dengan

demikian rangkaian ini telah berfungsi dengan baik.

Pengujian selanjutnya adalah dengan menghubungkan rangkaian tombol ini

dengan rangkaian mikrokontroler yang telah diberi program sebagai berikut :

Jb p3.0

Setb p3.7

...

Program di atas akan menungu adanya sinyal low yang dikirimkan tombol,

dimana tombol tersebut dihubungkan dengan P3.0. program akan terus menunggu

sampai ada sinyal low yang dikirimkan oleh tombol dan sensor. Jika ada sinyal low

yang dikirimkan oleh tombol dan sensor, maka program akan menghidupkan LED

(57)

4.5. Pengujian Program

Limit_buka bit p3.0 ;limit_buka terhubung ke P3.0

Limit _tutup bit p3.1 ;limit_tutup terhubung ke P3.1

Sak_buka bit p3.2 ; sak_buka terhubung ke P3.2

Sak_tutup bit p3.3 ; sak_tutup terhubung ke P3.3

Status bit p3.4 ; status terhubung ke P3.4

Merah bit p3.7 ; merah terhubung ke P3.7

Hijau bit p3.6 ; hijau tehubung ke P3.6

Cek_status: ; label

Jb status,manual ; tombol status ditekan?jka tidak ke manual

Auto: ; label

Mov r0,p0 ; isikan nilai 0h ke p0

Hujan_terang: ; label

Cjne r0,#00h,cerah ;

Acall tutuplimit ; panggil routine tutuplimit

Sjmp cek_status ; kembali ke routine cek_status

Cerah: ; label

Cjne r0,#01h,hjan_gelap ;

Acall bukalimit ; panggil routine bukalimit

Sjmp cek_status ; kembali ke routine cek_status

Hujan_gelap: ; label

Cjne r0,#02h,mendung ;

Acall tutuplimit ; panggil routine tutuplimit

Sjmp cek_status ; kembali ke routine cek_status

Mendung: ; label

Cjne r0,#03h,cek_status ;

Acall tutuplimit ; panggil routine tutplimit

(58)

Manual: ; label

Jb sak_buka,cek_tutup ; tombol sak_buka ditekan? Jika tidak ke routine

cek_tutup

Acall buka ; panggil routine buka

Sjmp cek_status ; kembali ke routine cek_status

Cek_tutup: ; label

Jb sak_tutup,cek_status ;tombol sak_tutp ditekan?jka tidak ke routine

cek_status

Acall tutup ; panggil routine tutup

Sjmp cek_status ; kembali ke routine cek_status

Bukalimit: ; label

Setb hijau ; atur buffer hijau

Clr merah ; kosongkan merah

Mov p0,#00h ; isikan nilai 00h ke p0

Mov a,#11h ; isikan nilai 11h ke a

Buka: ; label

Jb limit_buka,bukalagi ;tombol limit_buka ditekan?jika tidak ke routine

bukalagi

Ret ;kembali ke routine pemanggil

Bukalagi: ;label

Mov p0,a ; isikan nilai a ke p0

Rl a ; putar kiri nilai pada alamat a

Acall delay ; panggil routine delay

Sjmp buka ; kembali ke routine buka

Tutuplimit: ; label

Setb merah ; atur buffer merah

Clr hijau ; kosongkan hijau

(59)

Mov a,#11h ; isika 11h ke a

Tutup: ; label

Jb limit_tutup,tutuplagi ;tombol limit_tutup ditekan?jka tidak kembali ke routine

tutuplagi

Ret ; kembali ke routine pemanggil

Tutuplagi: ; label

Mov p0,a ; isikan nilai a dengan p0

Rr a ;putar kanan nilai pada alamat a

Acall delay ; panggil routine delay

Sjmp tutup ; kembali ke routine tutup

Delay: ; label

Mov r7,#40 ; isikan nilai 40h ke r7

Dly: ; label

Mov r6,#150 ; isikan nilai 150h ke r6

Djnz r6,$ ; kurangi nilai pada r6 sampai 0

Djnz r7,Dly ; jika r6 = 0 kurangi 1 nilai pada r7 dan kembali kurangi

r6 sampai 0

Ret ; kembali ke routine pemanggil

Gambar

Gambar 2.2. IC Mikrokontroler AT89S51
Gambar 2.3.  8051 Editor, assembler, simulator
Gambar 2.4  ISP-Flash Programmer 3.a
Gambar 2.5 Transistor sebagai Switching
+7

Referensi

Dokumen terkait

Dimulai dengan mengolah data asli yag didapat dari survei dengan memasukannya ke database, kemudian mengolahnya dengan RStudio dengan menggunakan metode WMA ( Weighted

Pelaksana Pengadaan Tanah melakukan musyawarah dengan Pihak yang Berhak dalam waktu paling lama 30 hari kerja sejak hasil penilaian dari Penilai disampaikan kepada Ketua

Berdasarkan pertimbangan dari hakim MA, terbukti bahwa Pasal 11 dan Pasal 12 Peraturan Menteri Hukum dan Hak Asasi Manusia Nomor 1 Tahun 2018 tentang Paralegal

(3) Hasil evaluasi disampaikan oleh gubernur sebagai wakil Pemerintah Pusat kepada bupati/walikota paling lama 15 (lima belas) hari terhitung sejak diterimanya rancangan

Pengikat O2 dan CO2 ini dilakukan oleh hemoglobin yang telah bersenyawa dengan O2 disebut oksihemoglobin yang telah bersenyawa dengan O2 disebut oksi hemoglobin (Hb+ O2  HbO 2)

[r]

simulasi yang dilakukan pada aplikasi “Sistem Pakar Pendeteksi Kerusakan Mesin Mobil Daihatsu Zebra Espass S91”, penulis dapat mengambil kesimpulan:. Sebuah software

SDIT AL uswah Surabaya is one unified Islamic elementary school that has problems ranging from frequent mistake inputting data, loss of data that has been collected, the data is not