Anda di halaman 1dari 73

DESAIN PENGATURAN OTOMATIS POMPA AIR LISTRIK BERBASIS MIKROKONTROLLER

AT89S51

HALAMAN JUDUL SKRIPSI

Untuk memenuhi sebagian persyaratan

Mencapai derajat Sarjana S-1

memenuhi sebagian persyaratan Mencapai derajat Sarjana S-1 Diajukan oleh : MARSUDI 06519038 PROGRAM STUDI TEKNIK

Diajukan oleh :

MARSUDI

06519038

PROGRAM STUDI TEKNIK ELEKTRO

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS MERCU BUANA

YOGYAKARTA

2009

i

HALAMAN P ERSETUJUAN

Skripsi

Desain Pengaturan Otomatis

Pompa Air Listrik Berbasis Mikrokontroller AT89S51

Dipersiapkan dan disusun oleh

Marsudi (06519038)

Telah dipertahankan di depan tim Penguji

Pada tanggal

Juni 2009

Dosen Pembimbing I

Supatman, S.T., M.T.

Susunan Tim Penguji

Dosen Pembimbing II

Yudianingsih, S.T., M.T.

Penguji

Nama Penguji Skripsi ini telah diterima sebagai salah satu persyaratan Untuk memperoleh gelar Sarjana Teknik

Dekan Fakultas Teknik dan Ilmu Komputer,

Dr. Ir. Sasongko Pramono Hadi, DEA.

ii

HALAMAN PERSEMBAHAN

Persembahanku… Aku Bersembah sujud hanya kepada-Mu Hanya Engkau yang patut disembah… Allah SWT

Untukmu… Ayah dan Ibunda tercinta

yang

selalu mengasihi dan menyanyangiku

iii

HALAMAN MOTO
HALAMAN MOTO

Tingkatan ilmu seseorang Dapat dilihat dari perilakunya Bukan dari kata-katanya

Bangkit dan lakukanlah Karena kewajiban kita adalah tanggungjawab kita Bukan orang lain

Dimana ada usaha Di situ pasti ada jalan Hambatan bukanlah sesuatu yang harus kita hindari Melainkan tantangan yang harus kita hadapi

iv

INTI SARI

Kemajuan ilmu pengetahuan dan teknologi berperan mewujudkan kehidupan yang lebih baik. Teknologi elektronika merupakan salah satu teknologi yang telah melekat di dalam kehidupan manusia, berbagai alat elektronika praktis dan fleksibel telah banyak diciptakan sehingga membantu memudahkan manusia dalam memenuhi kebutuhannya. Berbagai macam peralatan dengan sistem pengoperasian secara manual semakin ditinggalkan beralih pada peralatan yang serba otomatis, sehingga peralatan otomatis lebih mendominasi dalam kehidupan manusia. Alat bantu Desain Pengaturan Otomatis Pompa Air Listrik Berbasis Mikrokontroller AT89S51didesain dengan operasional yang sederhana sehingga mudah pengoperasiannya Setelah kabel konektor AC dihubungkan ke jala-jala listrik 220Volt AC maka alat ini akan bekerja yaitu mengendalikan secara otomatis mesin listrik pompa air. Alat ini berfungsi untuk menghidupkan atau mematikan mesin listrik pompa air, jika air pada bak penampung kosong maka alat ini akan menghidupkan mesin listrik pompa air dan jika air pada bak penampung airnya penuh maka alat ini akan mematikan mesin listrik pompa air. Dengan alat yang merupakan Desain Pengaturan Otomatis Pompa Air Listrik Berbasis Mikrokontroller AT89S51diharapkan mesin listrik pompa air dapat bekerja secara otomatis. Alat ini dilengkapi dengan saklar Full Half, jika saklar pada posisi Full maka mesin listrik pompa air akan mengisi air sampai bak penampung penuh, jika saklar pada posisi Half maka mesin listrik pompa air akan mengisi bak penampung air 50% saja, hal ini diperlukan pada saat musim kemarau yang biasanya debit air menurun.

Kata Kunci : mikrokontroller, otomatis, pompa air

v

KATA PENGANTAR

KATA PENGANTAR Alhamdulillah, puji syukur penulis panjatkan ke hadirat Allah SWT yang telah melimpahkan Rahmat dan

Alhamdulillah, puji syukur penulis panjatkan ke hadirat Allah SWT yang

telah

melimpahkan

Rahmat

dan

Karunia-Nya

sehingga

penulis

dapat

melaksanakan dan menyusun laporan Tugas Akhir Skripsi dengan judul Desain

Pengaturan Otomatis Pompa Air Listrik Berbasis Mikrokontroller AT89S51

dengan baik.

Skripsi ini merupakan salah satu syarat untuk menyelesaikan pendidikan

program S-1 di Fakultas Teknik dan Ilmu Komputer Universitas Mercu Buana

Yogyakarta.

Dalam penulisan laporan proyek akhir ini, penulis mendapatkan banyak

bantuan dan bimbingan serta saran dari berbagai pihak, maka pada kesempatan ini

penulis mengucapkan banyak terima kasih kepada :

1. Bapak Prof. Dr. Djoko Wahyono, M.Si., Apt., selaku Rektor Universitas

Mercu Buana Yogyakarta.

2. Bapak Dr. Ir.Sasongko Pramono Hadi, DEA., selaku Dekan Fakultas Teknik

dan Ilmu Komputer Universitas Mercu Buana Yogyakarta.

3. Bapak

Supatman, S.T., M.T.

selaku dosen pembimbing utama Fakultas

Teknik dan Ilmu Komputer Universitas Mercu Buana Yogyakarta.

4. Ibu Yudianingsih, ST., MT. selaku dosen pembimbing pendamping Fakultas

Teknik dan Ilmu Komputer Universitas Mercu Buana Yogyakarta.

vi

5.

Seluruh Dosen dan karyawan pada Fakultas Teknik dan Ilmu Komputer

Universitas Mercu Buana Yogyakarta.

6. Dan tidak lupa semua rekan mahasiswa pada Fakultas Teknik dan Ilmu

Komputer Universitas Mercu Buana Yogyakarta, yang telah memberikan

dukungan dan motivasi kepada penulis.

7. Semua pihak yang tidak mampu penulis sebutkan, yang telah membantu

dalam penelitian dan dalam penyusunan skripsi.

Penulis menyadari bahwa dalam penyusunan laporan ini tidak lepas dari

kesalahan dan kekurangsempurnaan, maka kritik dan saran yang konstruktif dari

semua pihak, akan penulis terima dengan senang hati untuk kesempurnaan

laporan ini. Akhirnya penulis berharap semoga laporan ini bermanfaat bagi

penulis dan semua pihak yang membutuhkan serta dapat menjadi amal ibadah

yang diterima di sisi-Nya. Amien.

vii

Yogyakarta,

Mei 2009

Penulis

DAFTAR ISI

HALAMAN JUDUL

 

i

HALAMAN

PERSETUJUAN

ii

HALAMAN PERSEMBAHAN

 

iii

HALAMAN MOTO

iv

INTI SARI

v

KATA PENGANTAR

vi

DAFTAR ISI

viii

DAFTAR GAMBAR

xi

DAFTAR TABEL

xii

DAFTAR LAMPIRAN

xiii

BAB I PENDAHULUAN

1

1.1.

Latar Belakang Masalah

1

1.1.1.

Permasalahan

2

1.1.2.

Keaslian Penelitian

2

1.2.

Batasan Masalah

3

1.3.

Manfaat yang Diharapkan

3

1.4.

Tujuan Penelitian

4

1.5.

Sistematika Penulisan

4

BAB II TINJAUAN PUSTAKA

6

2.1.

Tinjauan Pustaka

6

2.2.

Landasan Teori

7

2.2.1.

Mikrokontroller

7

2.2.1.1.

Hardware Mikrokontroller

8

2.2.1.2.

Instruksi MCS-51

11

2.2.1.3.

Sistem Interupsi AT89S51

14

2.2.1.4.

Sistem Timer AT89S51

15

2.2.2.

Saklar dan

Rile

20

viii

2.2.2.1.

Saklar

20

2.2.2.2.

Rile

21

2.2.3.

LED

24

2.2.4.

Transistor Sebagai Saklar

25

2.2.5.

Flow Chart

27

2.3.

Hipotesis

28

BAB III METODOLOGI PENELITIAN

29

3.1.

Bahan dan Alat Penelitian

29

3.1.1.

Bahan Penelitian

29

3.1.1.1.

Sistem Minimum Mikrokontroller AT89S51

29

3.1.1.2.

Transistor

29

3.1.1.3.

Saklar

29

3.1.1.4.

Rile

30

3.1.1.5.

Pompa Air

30

3.1.1.6.

Catu Daya Teregulasi

30

3.1.2.

Alat Penelitian

30

3.1.2.1.

Komputer

30

3.1.2.2.

Kabel ISP Programmer

31

3.1.2.3.

Multimeter

31

3.2.

Langkah Penelitian

32

3.2.1.

Perancangan Alat

32

3.2.1.1.

Perancangan Hardware

32

3.2.1.2.

Perancangan Software

40

3.2.2.

Realisasi Sistem

44

BAB IV PENGUJIAN DAN PEMBAHASAN

45

4.1.

Hasil Pengujian

45

4.1.1.

Sistem Minimum AT89S51 dan Output Rile

45

4.1.2.

Water level Sensor

46

4.1.3.

Saklar Mode

46

4.1.4.

Pengujian Sistem

47

4.2.

Pembahasan

48

ix

4.2.1.

Analisis Perangkat Keras

48

4.2.1.1.

Sistem Minimum dan Output Rile

48

4.2.1.2.

Water Level Sensor dan Saklar Mode

48

4.2.2.

Analisis

Program

49

4.2.3.

Analisis

Sistem Keseluruhan

53

BAB V KESIMPULAN

55

5.1. Kesimpulan

55

5.2. Saran

55

DAFTAR PUSTAKA

56

x

DAFTAR GAMBAR

Gambar 2.1. Diagram Blok Mikrokontroller AT89S51

9

Gambar 2.2. Konfigurasi Pena AT89S51 (40-lead PDIP)

10

Gambar 2.3. Denah susunan bit dalam register TMOD

18

Gambar 2.4. Denah susunan bit dalam register TCON

19

Gambar 2.5. (a) Simbol push button saat OFF dan (b) Simbol push button saat OFF ON

20

Gambar 2.6. Bentuk fisik salah satu saklar push button

21

Gambar 2.7. Simbol Saklar

21

Gambar 2.8. Bentuk fisik salah satu Saklar

21

Gambar 2.9. Simbol dan Prinsip Kerja Rile SPDT

23

Gambar 2.10. Simbol dan Prinsip Kerja Rile DPDT

23

Gambar 2.11. Bentuk fisik dan simbol lampu LED Gambar 2.12. (a) Transistor pada daerah saturasi. (b) Ekuivalen transistor

24

 

sebagai saklar on

(Malvino, 1985: 123)

26

Gambar 2.13. Transistor pada daerah cut off (Malvino, 1985:124)

26

Gambar 2.14. Simbol-simbol Flow Chart

27

Gambar 3.1. Diagram Blok Pemanfaatan Mikrokontroller AT89S51

32

Gambar 3.2. Rangkaian regulator Catu Daya +12V dan +5V

33

Gambar 3.3.

Water level Sensor

34

Gambar 3.4. Saklar Mode Pengisian (Full / Half)

35

Gambar 3.5.

Rangkaian Output Rile

35

Gambar 3.6.

Rangkaian reset

37

Gambar 3.7.

Sistem Minimum AT89S51

37

Gambar 3.8.

Sistem Kontrol Pemanfaatan Mikrokontrol AT89S51 Sebagai

Pengendali Otomatis Mesin Listrik Pompa Air

39

Gambar 3.9.

Bentuk Program Assembler

41

Gambar 3.10. Flow Chart Program Pengatur Otomatis Pompa Air Listrik

 

Berbasis Mikrokontroller AT89S51

42

xi

DAFTAR TABEL

Tabel 4.1. Titik Kerja Transistor Sensor 1 Q1

46

Tabel 4.2. Titik Kerja Transistor Sensor 2 Q2

46

Tabel 4.3. Titik Kerja Transistor Sensor 3 Q3

46

Tabel 4.4. Kebenaran Kontrol Pompa Air Otomatis { f(input) = output }

49

xii

DAFTAR LAMPIRAN

Lampiran 1. Gambar Rangkaian Sistem Kontrol

57

Lampiran 2. Lay out Komponen dan PCB Sistem Kontrol

58

Lampiran 3. Source Code Program Assembly Mikrokontroller AT89S51

59

Lampiran 5. Datasheet AT89S51

60

xiii

BAB I

PENDAHULUAN

1.1. Latar Belakang Masalah

Kebutuhan teknologi tepat guna dan sepadan tidak hanya di industri.,

tetapi juga pada alat-alat rumah tangga. Pada implementasinya teknologi yang

sederhana sudah banyak merambah pada alat-alat rumah tangga, alat bantu dalam

rumah tangga biasanya sangat sederhana, dengan sentuhan teknologi sedikit alat

yang sangat sederhana bisa mempunyai kemampuan yang sangat besar, misalnya

dengan menambahkan sistem otomasi pada alat tersebut.

Pada mesin listrik pompa air yang digunakan untuk mengambil air tanah

dalam sumur, biasanya dioperasikan secara manual, dengan menghidupkan dan

mematikan

saklar

manual.

Proses

ini

tentu

cukup

merepotkan

disamping

memerlukan tenaga juga membutuhkan waktu, kemungkinan air yang dimasukkan

dalam bak penampung dapat tumpah karena melebihi kapasitas.

Mesin listrik pompa air ini sebenarnya bisa dioperasikan secara otomatis

dengan sedikit sentuhan teknologi, dengan menggunakan peralatan yang otomatis

dan sederhana dalam mengoperasikan, sehingga dapat

meringankan tenaga dan

menghemat waktu untuk memenuhi kebutuhan air dalam rumah tangga.

Kebutuhan peralatan yang dapat dioperasikan secara otomatis sangat

diperlukan dalam rumah tangga, seiring dengan kemajuan teknologi, maka perlu

diusahakan suatu alat Penerapan Mikrokontroller AT89S51 sebagai pengendali

otomatis mesin listrik pompa air.

1

2

1.1.1. Permasalahan

Berdasarkan

latar belakang di atas permasalahan yang dapat dirumuskan

adalah :

1. Kebanyakan mesin listrik pompa air yang ada di pasaran dioperasikan

secara manual.

2. Mesin listrik pompa air yang dioperasikan secara manual untuk mengambil

air tanah, dalam memenuhi kebutuhan rumah tangga kadang-kadang pada

saat dibuka kran air tidak mengalir. Hal ini dikarenakan bak penampungan

air kosong, sehingga harus menghidupkan mesin listrik pompa air terlebih

dahulu sebelum menggunakan air. Untuk

waktu dan tenaga.

keperluan tersebut diperlukan

3. Mesin listrik pompa air yang dioperasikan secara manual jika dihidupkan

akan

mengisi

bak

penampung

air

secara

terus

menerus.

Jika

bak

penampung sudah tidak mempu menampung air dan mesin tidak segera

dimatikan

maka

pemborosan.

air

akan

meluap,

hal

ini

termasuk

dalam

kategori

4. Di pasaran belum ada alat yang menerapkan mikrokontroller AT89S51

sebagai pengendali otomatis pompa air.

1.1.2. Keaslian Penelitian Desain Pengaturan Otomatis Pompa Air Listrik Berbasis Mikrokontroller

AT89S51yang akan dilaksanakan belum pernah dilakukan, kecuali sumber lain

yang digunakan sebagai referensi terdapat dalam daftar pustaka.

3

1.2. Batasan Masalah

Batasan masalah dari penelitian ini adalah :

1. Perancangan perangkat keras pada penerapan mikrokontroller AT89S51

sebagai pengendali otomatis mesin listrik pompa air

2. Perancangan perangkat lunak pada penerapan mikrokontroller AT89S51

sebagai pengendali otomatis mesin listrik pompa air

1.3. Manfaat yang Diharapkan

Jika penelitian ini berhasil dengan baik dan dikembangkan, manfaat yang

bias diharapkan adalah sebagai berikut :

1. Untuk ilmu pengetahuan dan teknologi, keberhasilan penelitian Penerapan

Mikrokontroller

AT89S51

sebagai

pengendali

otomatis

mesin

listrik

pompa air, dapat digunakan sebagai salah satu bahan referensi dalam

perancangan peralatan otomatis berbasis mikrokontrol, untuk alat bantu

rumah tangga dan industri kecil.

2. Untuk

pembangunan

negara,

Penerapan

Mikrokontroller

AT89S51

sebagai pengendali otomatis mesin listrik pompa air, dapat digunakan

sebagai salah satu bahan pembelajaran bagi para mahasiswa dan siswa

dalam

perancangan

peralatan

otomatis

berbasis

mikrokontrol

untuk

industri kecil, menengah dan industri rumah tangga.

4

1.4. Tujuan Penelitian

Penelitian ini bertujuan untuk :

1. Mengetahui

unjuk kerja

secara manual.

proses pengoperasian mesin listrik pompa air

2. Mengetahui proses pengoperasian mesin listrik pompa air menggunakan

peralatan yang otomatis akan berpengaruh terhadap penyediaan kebutuhan

air dalam rumah tangga.

1.5. Sistematika Penulisan

Pembahasan

berikut :

skripsi

ini

menggunakan

sistematika

penulisan

sebagai

BAB I

:

PENDAHULUAN

 

Pada bagian ini membahas, latar belakang, permasalahan, keaslian

penelitian, faedah yang dapat diharapkan, tujuan penelitian, batasan

masalah, metodologi, dan sistematika penulisan.

BAB II

:

TINJAUAN PUSTAKA

Pada bagian ini membahas, teori penunjang yang berkaitan dengan

pembuatan alat dan teori mikrokontrol AT89S51.

BAB III :

PERENCANAAN DAN PEMBUATAN ALAT

Pada bagian ini membahas, pembuatan perangkat keras dan pembuatan

perangkat lunak.

5

BAB IV : PENGUJIAN DAN ANALISA

Pada bagian ini membahas, pengujian alat secara keseluruhan yang

meliputi

perangkat

pengujian alat.

keras,

perangkat

lunak

dan

BAB V : KESIMPULAN DAN SARAN

menganalisa

data

Pada bagian ini membahas berdasarkan hasil pengujian dan analisa

data kemudian diambil kesimpulan dari kinerja alat tersebut.

BAB II

TINJAUAN PUSTAKA

2.1. Tinjauan Pustaka

Penelitian yang dilakukan oleh Djunanda Mieke pada tahun 2003 dengan

judul

Sistem

Pengendalian

Aquarium

Berbasis

Mikrokontroler

Dengan

Menggunakan

SMS

dari

Hand

Phone.

Memelihara

ikan

dalam

aquarium

merupakan hal yang biasa dan mudah, tetapi akan memerlukan waktu khususnya

bagi orang yang sibuk tetapi mempunyai hobi memelihara ikan terutama dalam

proses perawatan ikan mulai dari pemberian makan, mengganti air, menjaga suhu

air dan lain-lain. Oleh karena itu dikembangkan metode pemeliharaan ikan dalam

aquarium dari jarak jauh yang dapat dikontrol melalui SMS dari Hand Phone.

Sistem ini memberi keuntungan

memelihara ikan dalam aquarium.

bagi mereka yang sibuk bekerja namun senang

Penelitian yang dilakukan oleh Samsu Rizal pada tahun 2005 dengan judul

Pemanfaatan

Mikrokontroler

AT89C51

Sebagai

PLC

(Programable

Logic

Controller) salah satu aplikasi yang merupakan perpaduan antara perangkat keras

dan parangkat lunak. Rangkaian elektronik yang berbasis mikrokontroler adalah

perangkat kerasnya, sedang Bahasa Pemrograman Assembler sebagai perangkat

lunaknya.

Penelitian

yang dilakukan oleh

Imron Muhammad pada tahun 2007

dengan

judul

Sistem

Pengamanan

Tambak

Ikan

Berbasis

Mikrokontroler

merupakan suatu peralatan pengamanan yang digunakan untuk mengamankan

6

7

tambak ikan. Peralatan sistem ini terdiri dari detektor atau sensor, Rile dan alarm

yang dihubungkan ke mikrokontroler. LDR yang merupakan komponen detektor

cahaya ditempatkan di sekeliling tambak, jika ada obyek yang melewati detektor

pada

waktu

tertentu

maka

mikrokontroler

akan

mengaktifkan

rile

yang

dihubungkan ke lampu dan alarm sehingga lampu akan menyala dan alarm akan

berbunyi.

Mikrokontroler

yang

merupakan

rangkaian

utama

pada

alat

ini

dihubungkan ke telepon seluler yang akan mengirim teks singkat kepada pemilik

tambak. Hasil yang didapat menunjukkan bahwa alat ini dapat bekerja dengan

baik, sehingga alat ini dapat menjadi sistem pengamanan yang efektif

2.2. Landasan Teori

sebagai

Untuk

membuat

suatu

pengendali

otomatis

sistem

mesin

pemanfaatan

listrik

pompa

mikrokontroller AT89S51

air,

diperlukan

beberapa

komponen elektronika seperti LED, transistor, saklar, rile dan mikrokontroler.

Berikut ini merupakan teori dasar dari masing-masing komponen yang diperlukan.

2.2.1. Mikrokontroller

Mikrokontroller merupakan perkembangan dari mikroprosesor. Dalam

sebuah chip mikrokontroller telah terintegrasi memori, CPU dan I/O. Hal tersebut

membuat mikrokontroller dapat langsung dibuat sistem dengan menambahkan

sedikit

peripheral

lain.

Sifat

mikrokontroller

yang

mampu

diprogram

(programmable) menyebabkan mikrokontroller mempunyai kemampuan aplikasi

yang sangat luas.

8

2.2.1.1. Hardware Mikrokontroller

2.2.1.1.1. Spesifikasi

AT89S51 adalah salah satu jenis

mikrokontroller buatan Atmel dan

merupakan keluarga MCS-51. AT89S51 merupakan mikrokontroller 8-bit dengan

spesifikasi sebagai berikut :

1)

Kompatibel dengan produk MCS-51

2)

8 Kbytes memori flash internal yang dapat diprogram ulang sampai 1000

kali tulis/hapus.

3)

Cakupan tegangan operasi 4,0Volt 5,5Volt

4)

Beroperasi secara penuh pada frekuensi 0 sampai 33 MHz

5)

Memiliki tiga tahap penguncian program.

6)

256 X 8-bit RAM internal.

7)

Memiliki jalur I/O 32 bit yang dapat diprogram.

8)

Dua buah 16 bit Timer/Couters.

9)

Memiliki delapan sumber interupsi.

10)

Memiliki serial UART yang dapat diprogram.

11)

Pengembalian interupt dari mode daya rendah

12)

Memiliki Watchdog Timer.

13)

Mempunyai 2 data pointer

14)

Power-Off flag

15)

Pemrograman yang cepat

9

9 Gambar 2.1. Diagram Blok Mikrokontroller AT89S51 ( http://www.atmel.com )

Gambar 2.1. Diagram Blok Mikrokontroller AT89S51 (http://www.atmel.com)

10

2.2.1.1.2. Konfigurasi Pin

10 2.2.1.1.2. Konfigurasi Pin Gambar 2.2. Konfigurasi Pena AT89S51 (40-lead PDIP) ( http://www.atmel.com ) 1) Port

Gambar 2.2. Konfigurasi Pena AT89S51 (40-lead PDIP) (http://www.atmel.com)

1)

Port 0.0/AD0 port 0.7/AD7 (kaki 32-39). Pada perancangan komponen

minimum, port ini dapat digunakan untuk port I/O tujuan umum. Untuk

perancangan yang lebih besar (dengan memori luar), port ini menjadi bus

data dan alamat multipleks.

2)

Port 1 (kaki 1-8). Port ini dipakai untuk port I/O. Pin-pin ini dirancang

sebagai P1.0 - P1.7 untuk antarmuka dengan peralatan luar dan jalur

Flash-Programer pada P1.5 (MOSI), P1.6 (MISO), dan P1.7 (SCK).

3)

Port 2.0/A8 port 2.7/A15 (kaki 21-28). Port ini dipakai untuk I/O atau

sebagai bus byte tinggi alamat untuk rancangan dengan memori luar.

4)

Port 3 (kaki 10-17). Port ini dipakai untuk I/O tujuan umum atau untuk

fungsi khusus.

11

5)

PSEN (Program store enable, kaki 29). PSEN merupakan keluaran untuk

sinyal

kendali

yang

mengijinkan

memori

program

(kode)

luar

dan

biasanya

dihubungkan

dengan

kaki

(Output

Enable)

EPROM

yang

mengijinkan pembacaan byte-byte program.

 

6)

ALE (Address Latch Enable, kaki 30). Sinyal keluaran ALE untuk

demultiplexing bus data dan alamat. Jika port 0 digunakan sebagai bus

data dan bus byte rendah alamat, ALE mengunci alamat ke register luar

selama setengah pertama siklus memori. Selanjutnya selama setengah

kedua siklus memori, jalur-jalur port 0 disediakan untuk data masukan

atau keluaran ketika perpindahan data sedang dilakukan.

 

7)

EA (External Access, kaki 31). Untuk eksekusi program dari memori luar

maka kaki ini harus diberi tegangan rendah.

 

8)

RST (Reset, kaki 9). Jika diberikan tegangan tinggi selama paling sedikit

2 siklus mesin, maka register internal akan diisi dengan harga tertentu

untuk kondisi awal sistem.

2.2.1.2. Instruksi MCS-51

Seperti

pada

mikrokontroller

pada

umumnya,

AT89S51

mempunyai

instruksi MCS-51 dan beberapa fasilitas yang berguna untuk pemrograman.

Secara keseluruhan MCS-51 memiliki 255 macam instruksi yang dibagi menjadi 5

kelompok meliputi: instruksi aritmatika, instruksi logika, instruksi transfer data,

instruksi

manipulasi

bit

variabel

dan

instruksi

percabangan.

kelompok akan dijelaskan sebagai berikut:

Masing-masing

12

2.2.1.2.1. Kelompok Instruksi Aritmatika

Kelompok perintah ini dipakai untuk melakukan operasi aritmatika yang

meliputi

penjumlahan

(kode

operasi

ADD),

penjumlahan

dengan

menyertai

sisa/carry

(kode

operasi

ADDC),

pejumlahan

satu

(kode

operasi

INC),

pengurangan

dengan

menyertai

pinjaman/borrow

(kode

operasi

SUBB),

pengurangan satu (kode operasi DEC), penyetelan desimal pada akumulator (kode

operasi DA), perkalian (kode operasi MUL) dan pembagian (kode operasi DIV).

2.2.1.2.2. Kelompok Instruksi Logika

Kelompok perintah ini dipakai untuk melakukan operasi logika. Operasi

logika yang dapat dilakukan adalah operasi OR (kode operasi ORL), operasi AND

(kode operasi ANDL), operasi Exclusive OR (kode operasi XRL), menghapus

akumulator

(kode

operasi

CLR),

negasi

akumulator

(kode

operasi

CPL),

pergeseran bit akumulator (kode operasi RL, RLC, RR, RRC dan SWAP).

2.2.1.2.3. Kelompok Instruksi Transfer Data

Kelompok

perintah

ini

dipakai

untuk

memindahkan

dan

penukaran

(exchange)

data.

Operasi

pemindahan

data

yang

dapat

dilakukan

adalah

pemindahan data antara register dengan register (kode operasi MOV), memori

dengan memori (kode operasi MOV), register dengan memori (kode operasi

MOV),

memori

eksternal

dengan

akumulator

(kode

operasi

MOVX)

dan

pemindahan data langsung (direct byte) ke stack/tumpukan (PUSH dan POP).

Operasi penukaran data yang dapat dilakukan adalah penukaran data antara

akumulator dengan register (kode operasi XCH) , antara akumulator dengan

13

internal RAM (kode operasi XCH), nible rendah (D0D3) akumulator dengan

nible rendah (D0D3) internal RAM (kode operasi XCHD).

2.2.1.2.4. Kelompok Instruksi Manipulasi Bit

Operasi manipulasi bit yang dapat dilakukan adalah menghapus carry dan

bit

(kode

operasi

CLR),

mengeset

carry

dan

bit

(kode

operasi

SETB),

mengkomplemen carry dan bit (kode operasi CPL), operasi AND antara carry dan

bit (kode operasi ANL), operasi OR antara carry dan bit (kode operasi ORL), dan

memindahkan data dari bit ke carry atau sebaliknya (kode operasi MOV).

2.2.1.2.5. Kelompok Intruksi Percabangan

Instruksi ini dapat digunakan saat program yang sedang dilaksanakan akan

melompat ke suatu alamat tertentu. Instruksi percabangan dapat dibedakan atas

percabangan bersyarat dan percabangan tanpa syarat.

1)

2)

Instruksi percabangan bersyarat, yang termasuk kelompok ini adalah:

CJNE @R n ,#data,alamat kode CJNE A,#data,alamat kode CJNE A,alamat data,alamat kode CJNE R n ,#data,alamat kode DJNZ R n ,alamat kode DJNZ alamat data,alamat kode JB alamat bit,alamat kode JNB alamat bit,alamat kode JBC alamat bit,alamat kode JC alamat kode JNC alamat kode JZ alamat kode JNZ alamat kode

Instruksi percabangan tanpa syarat, yang termasuk kelompok ini adalah:

ACALL alamat kode LCALL alamat kode SJMP alamat kode AJMP alamat kode LJMP alamat kode JMP @A+DPTR RET RETI

14

2.2.1.3. Sistem Interupsi AT89S51

 

Setiap

mikrokontroller

biasanya

memiliki

saluran

interupsi.

Interupsi

adalah

peristiwa

perangkat

keras

yang

dipakai

untuk

mengatur

kerja

dari

perangkat lunak mikrokontroller. AT89S51 mempunyai 8 sumber interupsi, yakni

Interupsi Eksternal (External Interrupt) yang berasal dari kaki INT0, INT1 dan T2

Ext, Interupsi Pewaktu (Timer Interrupt) yang berasal dari Timer 0 , Timer 1,

maupun Timer 2, Interupsi Port Seri (Serial Port Interrupt) yang berasal dari

bagian penerima dan bagian pengirim Port Seri.

Semua sumber permintaan interupsi yang dibahas di atas, masing-masing

bisa diaktifkan atau di-nonaktifkan secara tersendiri lewat bit-bit yang ada dalam

register IE (Interrupt Enable Register).

Bit EX0 dan EX1 untuk mengatur interupsi eksternal INT0 dan INT1,

sedangkan bit ET0 dan ET1 untuk mengatur interupsi timer 0 dan timer 1, bit ES

untuk mengatur interupsi port seri. Di samping itu ada pula bit EA yang bisa

dipakai untuk mengatur semua sumber interupsi sekaligus.

Setelah reset, semua bit dalam

interupsi

dalam

keadaan

non-aktif.

register IE bernilai “0”, artinya sistem

Untuk

mengaktifkan

salah

satu

sistem

interupsi, bit pengatur interupsi bersangkutan diaktifkan dan juga EA yang

mengatur

semua

sumber

interupsi.

Misalnya

instruksi

mengaktifkan interupsi ekternal INT0 adalah SETB EX0

EA.

yang

dipakai

untuk

disusul dengan SETB

Saat AT89S51 menanggapi permintaan interupsi, Program Counter diisi

dengan sebuah nilai yang dinamakan sebagai vektor interupsi. Vektor interupsi

15

merupakan nomor awal dari memori-program yang menampung ISR (Interrupt

Service Routine) untuk melayani permintaan interupsi tersebut. Vektor interupsi

itu dipakai untuk melaksanakan instruksi LCALL, ACALL, AJMP atau LJMP

yang diaktifkan secara perangkat keras.

Vektor interupsi untuk interupsi eksternal INT0 adalah 0003H, untuk

interupsi timer 0 adalah 000BH, untuk interupsi ekternal INT1 adalah 0013H,

untuk interupsi timer 1 adalah 001BH dan untuk interupsi port seri adalah 0023H.

Jarak vektor interupsi satu dengan lainnya sebesar 8, atau hanya tersedia 8

byte untuk setiap ISR. Jika sebuah ISR memang hanya pendek saja, tidak lebih

dari 8 byte, maka ISR tersebut bisa langsung ditulis pada memori-program yang

disediakan untuknya. ISR yang lebih panjang dari 8 byte ditulis ditempat lain, tapi

pada memori-program yang ditunjuk oleh vektor interupsi diisikan instruksi

JUMP ke arah ISR bersangkutan.

2.2.1.4. Sistem Timer AT89S51

Timer 0 dibentuk dengan register TL0 (timer 0 low byte, alamatnya pada

RAM internal adalah 6AH) dan register TH0 (timer 0 high byte, alamatnya 6BH).

Sedangkan timer 1 dibentuk dengan register TL1 (timer 1 low byte, alamatnya

6CH) dan register TH1 (timer 1 high byte, alamatnya 6DH).

Untuk mengatur kerja timer/counter dipakai 2 register tambahan yang

dipakai bersama oleh timer 0 dan timer 1. Register tambahan tersebut adalah

register TCON (timer control register, alamatnya 88H dan bisa dialamat secara

bit) dan register TMOD (timer mode register, alamatnya adalah 89H).

16

TLO, THO, TL1 dan TH1 merupakan SFR (Special Function Register)

yang dipakai untuk membentuk pencacah biner Timer 0 dan Timer 1. Kapasitas

keempat register tersebut masing-masing 8 bit, bisa disusun menjadi 4 macam

mode (mode 0, mode 1, mode 2 dan mode3) pencacah biner.

Pada Mode 0, Mode 1 dan Mode 2 Timer 0 dan Timer 1 masing-masing

bekerja sendiri, artinya bisa dibuat Timer 0 bekerja pada Mode I dan Timer 1

bekerja pada Mode 2, atau kombinasi mode lainnya sesuai dengan keperluan.

Pada Mode 3 TLO, THO, TL1 dan TH1 dipakai bersama-sama untuk

menyusun sistem timer yang tidak bisa dikombinasi lain. Susunan TLO, THO,

TL1 dan TH1 pada masing-masing mode sebagai berikut:

2.2.1.4.1. Mode 0 Pencacah Biner 13 bit

Pencacah biner dibentuk dengan TLX (maksudnya bisa TLO atau TL1)

sebagai pencacah biner 5 bit (meskipun kapasitas sesungguhnya 8 bit), limpahan

dan pencacah biner 5 bit ini dihubungkan ke THx (maksudnya bisa THO atau

TH1) membentuk sebuah untaian pencacah biner 13 bit, limpahan dan pencacah

13 bit ini ditampung di flip-flop TFX (maksudnya bisa TFO atau TF1) yang

berada di dalam register TCON.

Mode ini meneruskan sarana timer yang ada pada mikrokontroller MCS48

(mikrokontroller pendahulu MCS51), dengan maksud rancangan alat yang dibuat

dengan MCS48 bisa dengan mudah diadaptasikan ke MCS5 1. Mode ini tidak

banyak dipakai lagi.

17

2.2.1.4.2. Mode 1 Pencacah Biner 16 bit

Mode

ini

sama

dengan

Mode

0,

hanya

saja

register

TLX

dipakai

sepenuhnya sebagai pencacah biner 8 bit, sehingga kapasitas pencacah biner yang

tersbentuk adalah 16 bit. Seiring dengan sinyal denyut, kedudukan pencacah biner

16 bit ini akan bergerak dari 0000H (biner 0000 0000 0000 0000), 0001H, 0002H

sampai FFFFH (biner 1111 1111 1111 1111), kemudian melimpah kembali

menjadi 0000H.

2.2.1.4.3. Mode 2 Pencacah Biner 8 bit dengan isi ulang

TLx dipakai sebagai pencacah biner 8 bit, sedangkan THx dipakai untuk

menyimpan

nilai

yang

diisikan

ulang

ke

TLx

setiap

kali

kedudukan

TLx

melimpah (berubah dan FFH menjadi 00H). Dengan cara ini bisa didapatkan

sinyal limpahan yang frekuensinya ditentukan oleh nilai yang disimpan dalam

TH0.

2.2.1.4.4.

Mode 3 Gabungan Pencacah Biner 16 bit dan 8 bit

Pada Mode 3 TL0, TH0, TL1 dan TH1 dipakai untuk membentuk 3

untaian pencacah. Yang pertama adalah untaian pencacah biner 16 bit tanpa

fasiltas pemantau sinyal limpahan yang dibentuk dengan TL1 dan TH1. Yang

kedua adalah TL0 yang dipakai sebagai pencacah biner 8 bit dengan TF0 sebagai

sarana pemantau limpahan. Pencacah biner ketiga adalah TH0 yang dipakai

sebagai pencacah biner 8 bit dengan TF1 sebagai sarana pemantau limpahan.

18

Register TMOD dan register TCON merupakan register pembantu untuk

mengatur kerja Timer 0 dan Timer 1, kedua register ini dipakai bersama oleh

Timer 0 dan Timer 1.

a. TMOD (Timer Mode Register)

Register TMOD dibagi menjadi 2 bagian secara simetris, bit

0 sampai 3 register TMOD (TMOD bit 0 s.d. TMOD bit 3) dipakai

untuk mengatur Timer 0, bit 4 sampai 7 register TMOD (TMOD bit 4

s.d. TMOD bit 7) dipakai untuk mengatur Timer 1.

bit 4 s.d. TMOD bit 7 ) dipakai untuk mengatur Timer 1. Gambar 2.3. Denah susunan

Gambar 2.3. Denah susunan bit dalam register TMOD (http://alds-stts.edu/digital/timer.htm)

Pemakaian dari register TMOD adalah:

1)

Bit M0/M1 dipakai untuk menentukan Mode timer seperti yang

terlihat dalam tabel.

2)

Bit C/T* dipakai untuk mengatur sumber sinyal denyut yang

diumpankan ke pencacah biner. Jika C/T* = 0 sinyal denyut

diperoleh dari osilator kristal yang frekuensinya sudah dibagi 12,

sedangkan jika C/T* = 1 maka sinyal denyut diperoleh dari kaki T0

(untuk Timer 0) atau kaki T1 (untuk Timer 1).

3)

Bit GATE merupakan bit pengatur saluran sinyal denyut. Bila bit

GATE = 0 saluran sinyal denyut hanya diatur oleh bit TRx

(maksudnya adalah TR0 atau TR1 pada register TCON). Bila bit

19

GATE = 1 kaki INT0 (untuk Timer 0) atau kaki INTl (untuk Timer

1) dipakai juga untuk mengatur saluran sinyal denyut.

b. TCON (Timer Control Register)

Register TCON dibagi menjadi 2 bagian, 4 bit pertama (bit 0

s.d. bit 3) dipakai untuk keperluan mengatur kaki INT0 dan INT1.

bit 3) dipakai untuk keperluan mengatur kaki INT0 dan INT1. Gambar 2.4. Denah susunan bit dalam

Gambar 2.4. Denah susunan bit dalam register TCON (http://alds-stts.edu/digital/timer.htm)

Sisa 4 bit dari register TCON (bit 4 s.d. bit 7) dibagi menjadi

2 bagian secara simetris yang dipakai untuk mengatur Timer 0 dan

Timer 1, sebagai berikut:

1)

Bit

TFx

(maksudnya

adalah

TF0

atau

TF1)

merupakan

bit

penampung limpahan, TFx akan menjadi „1‟ setiap kali pencacah

biner yang terhubung padanya melimpah (kedudukan pencacah

berubah dari FFFFH kembali menjadi 0000H). Bit TFx dinolkan

dengan instruksi CLR TFO atau CLR TF1. Jika sarana interupsi

dari interupsi dari

Timer 0/Timer 1 dipakai, TRx dinolkan saat

MCS51

menjalankan

rutin

layanan

interupsi

(ISR

Interupt

Service Routine).

 

2)

Bit

TRx

(maksudnya

adalah

TR0

atau

TR1)

merupakan

bit

pengatur saluran sinyal denyut, bila bit ini = 0 sinyal denyut tidak

disalurkan

ke

pencacah

biner

sehingga

pencacah

berhenti

20

mencacah. Bila bit GATE pada register TMOD = 1, maka saluran

sinyal denyut ini diatur bersama oleh TRx dan sinyal pada kaki

INT0/INTl.

2.2.2. Saklar dan Rile

2.2.2.1. Saklar

Saklar adalah piranti elektronika yang berfungsi untuk menghidupkan

atau

mematikan

sumber

(ON/OFF)

dengan

efek

mekanik,

didalam

ilmu

elektronika, 2 macam jenis saklar push button, antara lain :

1. Push On

Saklar ini apabila ditekan maka akan menghasilkan pulsa 1, dan kemudian

apabila dilepaskan maka akan kembali nol.

2. Push Off

Saklar ini apabila ditekan maka akan menghasilkan pulsa 0, dan kemudian

apabila di lepaskan maka akan kembali 1.

Konstruksi dari saklar ini adalah dengan menghubungkan pegas yang

terdapat didalam saklar tersebut. Pegas tersebut apabila dilepaskan maka akan

kembali ke posisi semula.

apabila dilepaskan maka akan kembali ke posisi semula. (a) (b) Gambar 2.5. (a) Simbol push button

(a)

(b)

Gambar 2.5. (a) Simbol push button saat OFF dan (b) Simbol push button saat OFF ON

21

21 Gambar 2.6. Bentuk fisik salah satu saklar push button Selain saklar di atas juga masih

Gambar 2.6. Bentuk fisik salah satu saklar push button

Selain saklar di atas juga masih ada lagi skalar ON/OFF berbentuk

switch. Prinsip dari saklar ini adalah saklar yang jika ditekan akan berubah

keadaan dari OFF menjadi ON, dan untuk mengembalikan keadaan menjadi OFF

lagi perlu dilakukan penekanan lagi.

keadaan menjadi OFF lagi perlu dilakukan penekanan lagi. Gambar 2.7. Simbol Saklar Gambar 2.8. Bentuk fisik

Gambar 2.7. Simbol Saklar

perlu dilakukan penekanan lagi. Gambar 2.7. Simbol Saklar Gambar 2.8. Bentuk fisik salah satu Saklar 2.2.2.2.

Gambar 2.8. Bentuk fisik salah satu Saklar

2.2.2.2. Rile

Rile adalah saklar magnetis

yang dapat menghubungkan rangkaian

beban ON dan OFF dengan memberi energi elektromagnetis, yang akan membuka

atau menutup kontak pada rangkaian, rile mempunyai variasi aplikasi yang luas

baik pada rangkaian listrik maupun elektronis. (Frank D Petruzella 2001:371).

Sewaktu arus kontrol melewati kumparan, inti besi lunak akan dimagnetisasi.

22

Armature

ditarik

oleh

inti

yang

dimagnetisasi.

Gerakan

armature

ini

akan

menutup kontak 3 dan 4 dan akan membuka kontak 3 dan 5. dengan kata lain

gerakan

armature

tadi

telah

mengubah

posisi

kontak

3

(lihat

gambar

2.9

dibawah). Kontakkontak ini dapat digunakan mengontrol arus yang lebih besar

dalam rangkaian. Pada pengoperasian dari rile ini tidak membutuhkan tegangan

dan arus yang besar apabila tidak disertai beban. Fungsi utama rile adalah

mengontrol arus yang lebih besar dalam rangkaian dengan arus kecil yang

melewati kumparan. Simbol rile terdiri atas sebuah kumparan dan 2 set kontak,

dalam rile mempunyai 2 keadaan yaitu pada saat terbuka (Normally Open atau

NO) dan tertutup (Normally Close atau NC). Sewaktu arus lewat kumparan,

kontak

NO

2001:372).

tertutup,

sebaliknya

kontak

NC

terbuka.

(

Frank

D

Petruzella

Rile terdiri dari kawat penghantar yang digulung pada silinder berinti.

Jangkar atau armatur bertumpu pada sebuah batang yang ujungnya tajam dan

dengan bantuan sebuah pegas ringan dan baut, sehingga jangkar dapat bertahan

pada tumpuannya. Apabila kumparan dialiri arus maka akan menimbulkan medan

magnet. Gaya magnetis akan menarik jangkar untuk mendekati inti. Ujung

jangkar yang lain akan mendorong pegas kontak sehingga kontak terhubung. Bila

kemudian arus menghilang dari kumparan, jangkar akan dilepas dan kontak

terputus.

Terdapat beberapa variasi rile baik bentuk, ukuran maupun konfigurasi

pensaklaran (kontak). Penggunaan rile disesuaikan dengan keperluan. Konfigurasi

atau tipe pensaklaran diidentifikasi sesuai jumlah kutub (p, pole) dan banyaknya

23

posisi saklar (T, throw). Jumlah kutub dan posisi ini dapat didahului dengan huruf

(S, untuk single dan D untuk double) atau dengan angka.

Secara umum ada dua buah konfigurasi rile yaitu :

1. SPDT (satu kutub dua posisi) yaitu rile yang mempunyai dua posisi

kontak. Tipe ini mempunyai hubungan kontak

kaki 3 dengan kaki 5 dan

ketika kumparan diberi arus, hubungan kontak akan berpindah ke kaki 3

dengan kaki 4.

hubungan kontak akan berpindah ke kaki 3 dengan kaki 4. Gambar 2.9. Simbol dan Prinsip Kerja

Gambar 2.9. Simbol dan Prinsip Kerja Rile SPDT

2. DPDT (dua kutub dua posisi) yaitu tipe rile yang mempunyai dua kontak

terpisah dari tipe pemindah hubungan (kontak), dan digerakkan oleh

jangkar melalui batang isolator.

dan digerakkan oleh jangkar melalui batang isolator. Gambar 2.10. Simbol dan Prinsip Kerja Rile DPDT Tegangan

Gambar 2.10. Simbol dan Prinsip Kerja Rile DPDT

Tegangan kerja kumparan rile biasanya 6V, 12V, 24V. Tegangan

tersebut menunjukkan kerja yang diperlukan untuk menggerakkan rile.

24

2.2.3.

LED

LED (Light Emitting Diode) merupakan sebuah lampu yang mempunyai

daya kecil dan biasanya digunakan sebagai lampu indikator. Daya yang kecil

inilah yang menjadi alasan mengapa LED digunakan sebagai lampu indikator

pada modul mikrokontroller. LED ini digunakan sebagai indikator keluaran pada

pemrograman

mikrokontroller.

Sebenarnya

keluaran

juga

bisa

dilihat

pada

simulator

ketika melakukan simulasi program, tetapi kelemahan simulator adalah

tidak bisa dilihat secara langsung hasilnya, karena antara hasil praktik dengan

teori jauh berbeda. Artinya

bahwa program belum tentu jalan ketika dimasukan

ke dalam memori mikrokontroller walaupun telah disimulasikan dengan baik, hal

ini bisa juga disebabkan karena hardware yang dibuat ada kesalahan.

juga disebabkan karena hardware yang dibuat ada kesalahan. Gambar 2.11. Bentuk fisik dan simbol lampu LED
juga disebabkan karena hardware yang dibuat ada kesalahan. Gambar 2.11. Bentuk fisik dan simbol lampu LED

Gambar 2.11. Bentuk fisik dan simbol lampu LED

Bentuk-bentuk lampu LED bermacam-macam warnanya dan ukurannya.

Tujuannya adalah untuk memenuhi kebutuhan baik mengenai warna, ukurannya

maupun dayanya. Bahkan sekarang ini telah muncul beberapa lampu LED yang

dapat menampilkan nyala yang berwarna-warni. Warna ini disebabkan oleh bahan

pembuatnya.

25

Untuk menyalakan LED diperlukan arus yang cukup. Besarnya arus yang

melewati LED menentukan intensitasnya. Umumnya arus yang mengalir pada

LED sebesar 2 sampai 20 mA. Sedangkan penurunan tegangan LED sebesar 1,2 V

sampai 2,4 V. Di bawah ini adalah rumus untuk menentukan peggunaan resistor

sebagai pembatas tegangan.

Dimana :

V

V

CC

Led

I Led

R =

Vcc V

led

I led

= Sumber tegangan

= Tegangan kerja LED

= Arus kerja Led

R = Nilai resistansi

2.2.4. Transistor Sebagai Saklar

(Persamaan 2. 1)

Transistor adalah salah satu komponen yang dapat digunakan sebagai

saklar elektronik. Komponen ini memiliki impedansi yang tinggi saat bersifat

sebagai penghantar. Transistor ini bekerja pada daerah jenuh (saturasi) sebagai

saklar tertutup (on) dan daerah mati (cut off) sebagai sklar terbuka (off). Pada

daerah saturasi arus mengalir tanpa halangan dari terminal kolektor menuju emitor

(V CE = 0) dan arus kolektor jenuh

menyerupai

saklar

mekanik

dalam

I C

sat

=

keadaan

V CC

/

tertutup

R C

Kondisi seperti ini

(on).

Untuk

membuat

transistor induksi diperlukan arus basis yang minimal besarnya I B > I C / .

26

26 (a) (b) Gambar 2.12. (a) Transistor pada daerah saturasi . (b) Ekuivalen transistor sebagai saklar

(a)

(b)

Gambar 2.12. (a) Transistor pada daerah saturasi. (b) Ekuivalen transistor sebagai saklar on (Malvino, 1985: 123)

pada saat transistor bersifat bukan penghantar (cut off) berlaku ketentuan

V CE

= V CC , I C = 0. dalam hal ini transistor menyerupai saklar mekanik dalam

keadaan terbuka (off). Kondisi demikian dapat direalisasikan dengan memberikan

bias basis I B = 0 atau pada terminal basis diberi tegangan mundur terhadap emitor.

pada terminal basis diberi tegangan mundur terhadap emitor. Gambar 2.13. Transistor pada daerah cut off (Malvino,

Gambar 2.13. Transistor pada daerah cut off (Malvino, 1985:124)

Analisis perhitungan untuk kondisi saklar secara teori adalah sebagai

berikut :

Kondisi cut off

V CE = V CC I C . R C karena I C = 0

Maka V VE = V CC

(Persamaan 2. 2)

Besar arus basis I B adalah : I B = I C / karena I C = 0, maka I B = 0 A

27

Kondisi saturasi (jenuh)

V CE = V CC I C . R C

(Persamaan 2. 3)

karena V CE = 0,

maka I C = V CC / R C

(Persamaan 2. 4)

Besar tahanan basis R B untuk mendapatkan arus basis I B pada kondisi benar-

benar saturasi adalah :

R B = (V BB V BE ) / I B sat

adalah

. I B > I C atau I B sat > I C /

2.2.5. Flow Chart

(Persamaan 2. 5)

Flow Chart atau diagram alir adalah suatu cara yang sangat sederhana

untuk mensistemkan aliran proses sebuah program. Untuk menyajikan jenis

operasi sebuah program digunakan simbol-simbol. Ada delapan simbol yang

sering digunakan untuk menyusun Flow Chart.

PROSES

SUB ROUTIN KEPUTUSAN
SUB ROUTIN
KEPUTUSAN

KONEKTOR

INPUT START
INPUT
START

TERMINAL

PROSES SUB ROUTIN KEPUTUSAN KONEKTOR INPUT START TERMINAL KONEKTOR AKHIR HALAMAN Gambar 2.14. Simbol-simbol Flow Chart

KONEKTOR AKHIR

HALAMAN

Gambar 2.14. Simbol-simbol Flow Chart

28

2.3. Hipotesis

Berdasarkan

tinjauan

pustaka dan

landasan

teori,

maka

pemanfaatan

mikrokontroller AT89S51 sebagai pengendali otomatis mesin pompa air dapat

diambil hipotesis sebagai berikut :

1. Mikrokontroller

dapat

listrik pompa air.

digunakan

sebagai

pengendali

otomatis

mesin

2. Penggunaan peralatan yang otomatis akan memudahkan manusia terhadap

proses pengisian tangki air.

BAB III

METODOLOGI PENELITIAN

3.1. Bahan dan Alat Penelitian

Pada penelitian yang berjudul Pemanfaatan Mikrokontroller AT89S51

Sebagai Pengendali Otomatis Mesin Listrik Pompa Air ini memerlukan beberapa

bahan dan alat pendukung yang digunakan, antara lain :

3.1.1.

Bahan Penelitian

3.1.1.1.

Sistem Minimum Mikrokontroller AT89S51

Sistem minimum Mikrokontroller AT89S51 digunakan untuk pengendali

utama dari alat ini. Fungsi utama adalah mengolah data dari hasil pembacaan

water level sensor untuk mengatur rile.

3.1.1.2.

Transistor

Transistor

pada

rangkaian

ini

digunakan

sebagai

saklar

untuk

mengendalikan rile dan sensor water level. Transistor yang digunakan adalah

transistor D400 berjenis NPN.

3.1.1.3. Saklar

Saklar digunakan untuk pemilihan mode pengisian, yaitu mode full dan

half. Saklar yang digunakan adalah saklar dip switch.

29

30

3.1.1.4. Rile

Rile

SPDT

(satu

kutub

dua

posisi)

DC

12

Volt

berfungsi

sebagai

penghubung atau pemutus tegangan 220V AC dengan mesin listrik pompa air.

3.1.1.5. Pompa Air

Pompa air aquarium AC 220V digunakan untuk memompa air ke dalam

tangki penampungan air. Pompa air inilah yang dikendalikan secara otomatis oleh

alat yang dibuat.

3.1.1.6. Catu Daya Teregulasi

Catu daya teregulasi digunakan sebagi sumber tegangan untuk mencatu

rangkaian. Tegangan yang diperlukan adalah +5V dan +12V, digunakan catu daya

teregulasi menggunakan IC LM7805 dan LM7812

yang stabil.

3.1.2.

Alat Penelitian

3.1.2.1.

Komputer

sehingga diperoleh tegangan

Komputer digunakan untuk perancangan sistem meliputi desain rangkaian,

PCB, dan Program Pemanfaatan Mikrokontroller AT89S51 Sebagai Pengendali

Otomatis Mesin Pompa Air.

Spesifikasi :

a. Processor AMD Athlon X2

b. RAM (Random Acces Memory ) 1 Gbyte

31

d. Sistem Operasi Windows XP

e. Tersedia DB-25 Parallel Port

Text Editor

Text editor berfungsi sebagai media penulisan teks program yang akan

dimasukkan ke dalam mikrokontroller AT89S51. Text editor ini telah tersedia

pada fasilitas yang disediakan Windows berupa notepad.

Compiller Assembler kompatible ASM51

Compiller Assembler adalah software untuk mengubah set instruksi dalam

bahasa assembly

( *.asm ) menjadi bahasa mesin ( *.hex ). Software yang

digunakan adalah MCS51.

Program Downloader

Program downloader adalah Software untuk mentransfer program dalam

bahasa mesin ( *.hex )

dari komputer ke mikrokontroller. Software yang

digunakan adalah Aec_ISP.

3.1.2.2. Kabel ISP Programmer

Kabel programmer

digunakan untuk menghubungkan antara komputer

dan rangkaian Mikrokontroller AT89S51. Mikrokontroller diprogram secara in

system

programming

sehingga

program

dapat

langsung

rangkaian tanpa menggunakan programmer.

3.1.2.3. Multimeter

didownload

pada

Multimeter Sanwa YX-360TRE digunakan untuk menguji komponen dan

mengukur tegangan dari rangkaian baik catu daya maupun rangkaian pengendali.

32

3.2. Langkah Penelitian

Penelitian terdiri dari perancangan alat, realisasi sistem, dan pengujian.

Secara prinsip alat Pemanfaatan Mikrokontroller AT89S51 Sebagai Pengendali

Otomatis Mesin Pompa Air dapat dipisahkan menjadi beberapa bagian yaitu :

Rangkaian input berupa water level sensor dan switch mode pengisian, rangkaian

kontrol utama berupa mikrokontroller AT89S51, dan rangkaian output berupa rile

untuk mengatur hidup dan matinya pompa air. Untuk lebih jelasnya dapat dilihat

pada diagram blok dibawah ini.

Water level

Sensor

AC 220V Pompa Air Output M Relay Catu Daya Teregulasi
AC 220V
Pompa Air
Output
M
Relay
Catu Daya
Teregulasi

Sistem Minimum

AT89S51

(Kontrol Utama)

Daya Teregulasi Sistem Minimum AT89S51 (Kontrol Utama) Mode Pengisian Gambar 3.1. Diagram Blok Pemanfaatan
Daya Teregulasi Sistem Minimum AT89S51 (Kontrol Utama) Mode Pengisian Gambar 3.1. Diagram Blok Pemanfaatan

Mode

Pengisian

Sistem Minimum AT89S51 (Kontrol Utama) Mode Pengisian Gambar 3.1. Diagram Blok Pemanfaatan Mikrokontroller AT89S51
Sistem Minimum AT89S51 (Kontrol Utama) Mode Pengisian Gambar 3.1. Diagram Blok Pemanfaatan Mikrokontroller AT89S51

Gambar 3.1. Diagram Blok Pemanfaatan Mikrokontroller AT89S51 Sebagai Pengendali Otomatis Mesin Pompa Air

3.2.1. Perancangan Alat

3.2.1.1. Perancangan Hardware

Perancangan hardware adalah penentuan rangkaian yang akan digunakan

dalam alat Pemanfaatan Mikrokontroller AT89S51 Sebagai Pengendali Otomatis

Mesin

Listrik

Gambar.3.1.

Pompa

Air.

Perancangan

sesuai

dengan

diagram

blok

pada

33

3.2.1.1.1. Catu Daya Teregulasi

Rangkaian

Pemanfaatan

Mikrokontrol

AT89S51

sebagai

Pengendali

Otomatis Mesin Listrik Pompa Air ini tentu saja membutuhkan sumber tegangan.

Untuk menghasilkan tegangan yang stabil, maka catu daya-nya menggunakan IC

regulator seri LM 7812 dan LM 7805. IC LM 7812 berfungsi untuk menghasilkan

tegangan output sebesar 12 Volt untuk mencatu rile sehingga dapat bekerja. IC

LM 7805 berfungsi untuk menghasilkan tegangan output sebesar 5V hal ini

dikarenakan pada sistem mikrokontroller membutuhkan tegangan kerja antara 4V

5,5

V.

Agar

tidak

terjadi

perubahan

tegangan

yang

dapat

merugikan

mikrokontroller AT89S51. Untuk lebih jelasnya dapat dilihat pada rangkaian

dibawah ini :

lebih jelasnya dapat dilihat pada rangkaian dibawah ini : Gambar 3.2. Rangkaian regulator Catu Daya +12V

Gambar 3.2. Rangkaian regulator Catu Daya +12V dan +5V

Sebelum tegangan AC 220V AC masuk ke rangkaian regulator, terlebih

dahulu tegangan AC 220V AC diturunkan menjadi 12 V dengan menggunakan

transformator step down kemudian disearahkan dengan menggunakan dioda

bridge

(jembatan),

tegangan

ripple

akan

kapasitor polar (2200uF/25V).

diratakan

dengan

menggunakan

34

U2 LM 7812 adalah IC regulator tegangan 12V DC dan U3 LM 7805

adalah IC regulator (penstabil) tegangan 5 VDC tegangan kerja yang dibutuhkan

oleh mikrokontroller.

3.2.1.1.2. Water level Sensor

Water level sensor adalah rangkaian untuk mendeteksi ketinggian air

dalam tangki. Sensor didesain untuk mendeteksi tiga level ketinggian air yaitu

kosong (empty), setengah (half), dan penuh (full) sehingga diperlukan tiga buah

sensor. Sensor water level tersusun dari tiga buah transistor yang difungsikan

sebagai saklar. Pada dasar air diberi tegangan +12V DC sebagai tegangan sumber,

sedangkan basis dari masing-masing diletakan pada titik titik tertentu (dasar,

tengah dan atas) pada tangki.

diletakan pada titik – titik tertentu (dasar, tengah dan atas) pada tangki. Gambar 3.3. Water level

Gambar 3.3. Water level Sensor

35

Output sensor satu dihubungkan ke Port 1.0 sebagai sensor level atas

(full). Output sensor dua dihubungkan dengan Port 1.1 sebagai sensor level tengah

(half). Output sensor tiga dihubungkan dengan Port 1.2 sebagai sensor dasar

tangki (empty).

3.2.1.1.3. Saklar Mode Pengisian

Saklar

mode

pengisian,

berfungsi

untuk

mengatur

jika

diinginkan

pengisian setengah tangki atau penuh. Saklar dihubungkan ke Port 1.3.

tangki atau penuh. Saklar dihubungkan ke Port 1.3. Gambar 3.4. Saklar Mode Pengisian ( Full /

Gambar 3.4. Saklar Mode Pengisian (Full / Half)

3.2.1.1.4. Output Rile

Rangkaian output rile berfungsi sebagai saklar pompa air. Menggunakan

prinsip transistor sebagai saklar dihubungkan dengan P0.0.

pompa air. Menggunakan prinsip transistor sebagai saklar dihubungkan dengan P0.0. Gambar 3.5. Rangkaian Output Rile

Gambar 3.5. Rangkaian Output Rile

36

3.2.1.1.5. Sistem Minimum AT89S51

Mikrokontroller AT89S51 digunakan sebagai pengendali utama motor

listrik pompa air. Penggunaan AT89S51 pada sistem ini karena mikrokontroller

jenis ini banyak beredar di pasaran dan harganya relatif lebih murah dari

mikrokontroller jenis lainnya. Hal ini sesuai dengan hukum ekonomi, dimana

semakin banyak barang yang beredar di pasar, maka semakin murah harga barang

tersebut. Selain hal tersebut juga dikarenakan pemrogramannya mudah serta

tersedianya alat (emulator) yang digunakan untuk mengisikan (up-load) program

ke dalam flash memori-nya.

Sistem minimum mikrokontroller AT89S51 mempunyai 4 buah port yang

dapat digunakan sebagai masukan atau keluaran. Agar dapat bekerja, AT89S51

membutuhkan sinyal detak (clock) yang dalam rangkaian ini memanfaatkan

osilator internal. Rangkaian ini dapat menggunakan kristal 0 MHz33 MHz dan 2

buah kapasitor

30 pF. Untuk perancangan sistem ini menggunakan kristal

11,0592 MHz dan 2 buah kapasitor 30 pF yang terhubung ke pin 18 (XTAL2) dan

pin 19 (XTAL1).

Untuk rangkaian power on reset ini diperlukannya 1 buah resistor 10 kΩ,

1 buah kapasitor 10 µF elektrolit dan tombol berupa mikroswitch yang dipasang

paralel dengan kapasitornya dan Vcc. Tombol reset ini dihubungkan ke kaki RST

( pin 9 ). Untuk menanggapi reset tersebut, pada pin 9 menerima pulsa transisi

dari rendah ke tinggi, sehingga jika saklar ditekan maka rangkaian akan memberi

interupsi reset untuk kembali ke keadaan awal.

37

VCC

Vc + 10 uF Vrst Reset R1 10 K Gambar 3.6. Rangkaian reset RESET
Vc
+
10 uF
Vrst
Reset
R1
10 K
Gambar 3.6. Rangkaian reset
RESET

Tegangan reset minimal adalah sebesar 0,7 Vcc atau sebesar 3,5 Volt,

sehingga diperoleh besarnya waktu reset, yaitu :

Vcc

5 V

Vc

Vc

1,5

1,5

=

=

=

=

=

=

Vc + Vrst Vc + 3,5 V 1,5 V

 

t

/

RC

4

t /10 .10

10 t

1

e 51 e

v

51 e

5

1,5

5

e

e

10

10 t t

=

=

=

=

5

5 e

10

t

3,5

0,7

ln 0,7

-10 t

-10 t

t = 35,667 ms

= -0,35667

Jadi waktu tunda yang dibutuhkan untuk pengosongan kapasitor adalah sebesar

35,667 ms.

Jadi waktu tunda yang dibutuhkan untuk pengosongan kapasitor adalah sebesar 35,667 ms. Gambar 3.7. Sistem Minimum

Gambar 3.7. Sistem Minimum AT89S51

38

Perancangan sistem ini menggunakan 3 buah port, yaitu :

a. Port 0 digunakan untuk output rile terhubung dengan P0.0

b. Port

1

digunakan

untuk

input

water

level

sensor

dan

saklar

mode

pengisian. P1.0 dihubungkan dengan ouput sensor 1, P1.1 dihubungkan

dengan ouput sensor 2 , P1.2 dihubungkan dengan ouput sensor 3, dan

P1.3 dihubungkan dengan saklar mode pemilih.

3.2.1.1.6. Sistem Keseluruhan

Dari semua bagian diatas disusun menjadi dua buah rangkaian, yaitu :

Rangkaian

kontrol

utama

dan

rangkaian

catu

daya

teregulasi.

Gambar

3.8

menunjukkan

rangkaian

keseluruhan

dari

sistem

kontrol

pemanfaatan

mikrokontrol AT89S51 sebagai pengendali otomatis mesin listrik pompa air.

39

39 Gambar 3.8. Sistem Kontrol Pemanfaatan Mikrokontrol AT89S51 Sebagai Pengendali Otomatis Mesin Listrik Pompa Air

Gambar 3.8. Sistem Kontrol Pemanfaatan Mikrokontrol AT89S51 Sebagai Pengendali Otomatis Mesin Listrik Pompa Air

40

3.2.1.2. Perancangan Software

Perangkat lunak adalah program yang diperlukan untuk mengatur sistem

kerja dari perangkat keras (Hardware). Program merupakan urutan instruksi untuk

melaksanakan

tugas

tertentu.

Dalam

pembuatan

program

pemanfaatan

mikrokontrol AT89S51 sebagai kendali otomatis mesin listrik pompa air ini

menggunakan metode Douglas, yaitu menggunakan empat langkah sbb :

a. Pendefinisian permasalahan

Langkah pertama yang harus dilakukan adalah memikirkan secara cermat

permasalahan yang ingin diselesaikan menggunakan program. Dalam hal

ini permasalahan yang akan diselesaikan adalah membuat program untuk

mengendalikan mesin listrik pompa air sehingga dapat digunakan untuk

mengisi tangki air secara otomatis.

b. Representasi kerja program

Sekuen atau formula kerja yang digunakan untuk mengendalikan mesin

listrik pompa air sehingga dapat digunakan untuk mengisi tangki air secara

otomatis ini disebut Algoritma program. Algoritma berisi urutan-urutan

pekerjaan yang harus dijalankan sehingga tujuan dari pembuatan program

dapat tercapai dengan baik.

Flow Chart atau diagram alir adalah cara yang sangat sederhana untuk

menunjukkan aliran proses sebuah program. urutan proses yang dijalankan

dituliskan

dalam

bentuk-bentuk

grafis

sehingga

lebih

mudah

dalam

melihat urutan proses yang harus dijalankan.

41

d. Penulisan program

Program yang dimengerti oleh mikrokontroller dan dieksekusi secara

langsung adalah program bahasa mesin. Instruksi ditulis dalam bahasa assembly

MCS-51. Instruksi tersebut di-compile kedalam bentuk bilangan hexa-decimal

yang disebut op-code (operation code).

hexa-decimal yang disebut op-code (operation code). Gambar 3.9. Bentuk Program Assembler Mikrokontroller

Gambar 3.9. Bentuk Program Assembler

Mikrokontroller memiliki bahasa assembler khusus, dengan bentuk umum

semua instruksinya adalah :

1. Label,

merupakan

suatu

simbol

dapat

berupa

mensistemkan nama dari suatu alamat.

suatu

tanda

yang

2. Mnemonic, merupakan simbol operasi dari suatu instruksi.

3. Operand, merupakan penyedia informasi yang dibutuhkan operasi untuk

melakukan fungsinya.

4. Comment, merupakan pemberi keterangan pada instruksi program.

Program

pada

perancangan

rangkaian

AT89S51

sebagai

pengendali

otomatis

mesin

Pemanfaatan

listrik

pompa

mikrokontrol

air

merupakan

program yang menjalankan fungsi mikrokontroller AT89S51 sebagai pengendali

utama. Alur berpikirnya adalah sebagai berikut :

42

a. Algoritma

Step 1.

Start

Step 2.

Seting kondisi awal (default)

Step 3.

Baca Water level Sensor dan Saklar Mode Pengisian

Step 4.

Apakah semua sensor tidak terendam

Step 5.

Jika ya lompat ke step 13

Step 6.

Apakah Mode Half, dan semua sensor tidak terendam

Step 7.

Jika ya, lompat ke step 13

Step 8.

Apakah semua sensor terendam

Step 9.

Jika ya lompat ke step 15

Step 10. Apakah Mode Half, dan sensor bawah dan sensor tengah terendam

Step 11. Jika ya, Lompat ke step 15 Step 12. Kembali ke step 3 Step 13. Hidupkan Pompa Air Step 14. Kembali ke step 3 Step 15. Matikan Pompa Air Step 16. Stop

b. Flow Chart

START P 0.0 = RELAY BACA P1 SIMPAN DI REG A AND KAN DENGAN 00001111
START
P 0.0 = RELAY
BACA P1 SIMPAN DI REG A
AND KAN DENGAN 00001111
Y
Y
Y
Y
A ≠ 00001111
A ≠ 00000111
A ≠ 00001001
A ≠ 00000000
N
N
N
N
HIDUPKAN RELAY
MATIKAN RELAY
STOP

Gambar 3.10. Flow Chart Program Pengatur Otomatis Pompa Air Listrik Berbasis Mikrokontroller AT89S51

43

c. Source Code

;=====================================================

;

PEMANFAATAN MIKROKONTROLLER AT89S51

;

SEBAGAI PENGENDALI OTOMATIS MESIN LISTRIK POMPA AIR

;

OLEH : MARSUDI

;=====================================================

;-----------------------------------------------------

; INISIALISASI PIN - PIN IC

;-----------------------------------------------------

RILE

BIT P0.0

; AKTIF HIGH

;-----------------------------------------------------

;SETING KONDISI AWAL (DEFAULT)

;-----------------------------------------------------

ORG 00H

MATIKAN:

CLR RILE

; MATIKAN RILE

;------------------------------------------------------

;PROGRAM UTAMA

;------------------------------------------------------

START:

MOV A,P1 ANL A,#00001111B

CEK1: CJNE A, #00001111B, CEK2 SJMP HIDUPKAN

CEK2: CJNE A, #00000111B, CEK3 SJMP HIDUPKAN

CEK3: CJNE A, #00000000B, CEK4 SJMP MATIKAN

CEK4: CJNE A, #00001001B, START SJMP MATIKAN

;-------------------------------------------------------

;FUNGSI MENGHIDUPKAN POMPA AIR

;-------------------------------------------------------

HIDUPKAN:

SETB RILE

SJMP START

END

44

3.2.2. Realisasi Sistem

Dalam penyelesaiannya rancang bangun Pemanfaatan Mikrokontroller

AT89S51 Sebagai Pengendali Otomatis Mesin Listrik Pompa Air ini melalui

beberapa langkah kerja sebagai berikut :

1. Merancang layout pada komputer menggunakan PCB Designer 1.5

2. Mencetak layout yang telah dirancang ke transparasi

3. Membuat layout dalam PCB dengan menggunakan setrika

4. Melarutkan tembaga PCB dengan menggunakan larutan Ferry Clorida

5. Mengumpulkan komponen dan bahan-bahan yang diperlukan

6. Pengujian komponen komponen yang diperlukan

7. Pengeboran PCB, pemasangan, penyolderan, dan pengawatan

8. Membuat software (program) dengan bahasa assembly

9. Uji coba tiap blok rangkaian untuk mengetahui karakeristik fungsinya

10. Uji coba keseluruhan alat untuk kinerja alat sampai sesuai dengan yang

diharapkan.

11. Pemasangan rangkaian ke dalam box.

12. Mengamati cara kerja rangkaian

13. Manganalisa hasil pengujian

14. Membuat laporan

BAB IV

PENGUJIAN DAN PEMBAHASAN

4.1. Hasil Pengujian

4.1.1. Sistem Minimum AT89S51 dan Output Rile

Pengujian sistem minimum dengan memberi program sederhana pada

mikrokontroller berupa flip-flop untuk mengatur rile yang terhubung dengan P0.0.

Pengujian output rile dilakukan dengan mengontrol lama hidup dan lama mati

pompa air. Adapun program dalam mikrokontroller sebagai berikut :

;-----------------------------------------------------------------

; PROGRAM UJI RILE

;-----------------------------------------------------------------

ORG

MULAI:

0H

SETB P0.0

CALL DELAY

CLR P0.0

CALL DELAY

JMP

MULAI

DELAY:MOV

R0,#10

DEL1 : MOV

R1,#255

DEL2 : MOV

R2,#255

DJNZ

R2,$

DJNZ

R1,DEL2

DJNZ RET

R0,DEL1

Setelah program dijalankan pada mikrokontroller maka rangkaian output

rile yang terhubung dengan pompa air aquarium menyala selama beberapa saat

kemudian

mati

beberapa

saat.

Dari

hasil

pengujian

itu

telah

didapatkan

kesimpulan rangkaian sistem minimum AT89S51 dan output rile dapat digunakan

untuk mengendalikan pompa air.

45

46

4.1.2. Water level Sensor

Water level sensor memanfaatkan transistor sebagai saklar, sehingga untuk

melakukan pengujian sensor ini harus dilakukan pengukuran titik kerja masing-

masing transistor.

Tabel 4.1. Titik Kerja Transistor Sensor 1 Q1

Kondisi

VB

VRC

VC

IC

V

out

Menggantung

0

V

0,5 V

11,5 V

0,05 mA

4

V

Terendam

2

V

11,5 V

0,5 V

1,15 mA

0,0 V

 

Tabel 4.2. Titik Kerja Transistor Sensor 2 Q2

 

Kondisi

VB

VRC

VC

IC

V

out

Menggantung

0

V

0,5 V

11,5 V

0,05 mA

4

V

Terendam

2

V

11,5 V

0,5 V

1,15 mA

0,0 V

 

Tabel 4.3. Titik Kerja Transistor Sensor 3 Q3

 

Kondisi

VB

VRC

VC

IC

V

out

Menggantung

0

V

0,5 V

11,5 V

0,05 mA

4

V

Terendam

2

V

11,5 V

0,5 V

1,15 mA

0,0 V