level water monitoring system

75
SISTEM PEMANTAUAN KETINGGIAN AIR SECARA REAL TIME BERBASIS MIKROKONTROLER AT89C2051 TUGAS AKHIR diajukan untuk melengkapi sebagian persyaratan akademik guna memperoleh gelar Sarjana Teknik Oleh: NURUL AFDHAL 0041511333 JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS SYIAH KUALA DARUSSALAM, BANDA ACEH Desember, 2006

Upload: mas-rifan-diningrat

Post on 25-Jun-2015

674 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: LEvel WAter Monitoring system

SISTEM PEMANTAUAN KETINGGIAN AIR SECARA

REAL TIME BERBASIS MIKROKONTROLER AT89C2051

TUGAS AKHIR

diajukan untuk melengkapi sebagian persyaratan akademik guna memperoleh gelar Sarjana Teknik

Oleh:

NURUL AFDHAL 0041511333

JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS SYIAH KUALA

DARUSSALAM, BANDA ACEH

Desember, 2006

Page 2: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

PERNYATAAN KEASLIAN TUGAS AKHIR

Saya menyatakan dengan sesungguhnya bahwa tugas akhir dengan judul “Sistem

Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler

AT89C2051” dibuat untuk melengkapi sebagian persyaratan menjadi Sarjana Teknik

pada Jurusan Teknik Elektro Fakultas Teknik Universitas Syiah Kuala, sejauh yang

saya ketahui bukan merupakan tiruan atau duplikasi dari tugas akhir atau karya

ilmiah yang sudah dipublikasikan oleh pihak lain, kecuali bagian yang sumber

informasinya dicantumkan sebagaimana mestinya.

Banda Aceh, 29 Desember 2006

Nurul Afdhal NIM 0041511333

Page 3: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

PENGESAHAN

Tugas Akhir dengan judul “Sistem Pemantauan Ketinggian Air Secara Real Time

Berbasis Mikrokontroler AT89C2051” dibuat untuk melengkapi sebagian

persyaratan akademik pada Jurusan Teknik Elektro, guna memperoleh gelar Sarjana

Teknik pada Fakultas Teknik Universitas Syiah Kuala.

Tugas Akhir ini telah disidangkan dihadapan dosen penguji pada dua puluh sembilan

desember dua ribu enam dan dinyatakan telah memenuhi syarat suatu tugas akhir.

Banda Aceh, 29 Desember 2006

Pembimbing I, Pembimbing II,

Yunidar, S.Si, M.T Dr. Ir. Yuwaldi Away, M.Sc NIP 132 262 249 NIP 131 878 532

Mengesahkan

Ketua Jurusan Teknik Elektro, .`` Ir. Syahrizal, M.T NIP 132 133 744

Page 4: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

KATA PENGANTAR

Rasa syukur dan pujian tertinggi hanyalah untuk Allah SWT yang telah

melimpahkan rahmat-Nya dan karunia-Nya kepada alam semesta. Shalawat dan

salam penulis ucapkan untuk Nabi Muhammad SAW yang telah menyempurnakan

kemuliaan akhlak dan melepaskan umat manusia dari segala bentuk kejahiliahan.

Alhamdulillah, penulis telah menyelesaikan penulisan Tugas Akhir yang

berjudul “Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis

Mikrokontroler AT89C2051”. Dalam penyusunan Tugas Akhir ini, penulis

mendapatkan banyak bimbingan dan bantuan dari berbagai pihak. Secara khusus,

penulis mengucapkan terima kasih kepada Ibu Yunidar, S.Si, M.T dan Bapak Dr. Ir.

Yuwaldi Away, M.Sc yang telah membimbing penulis dalam penulisan Tugas Akhir

ini. Selanjutnya penulis juga mengucapkan terima kasih kepada:

1. Ketua Jurusan Teknik Elektro Fakultas Teknik Universitas Syiah Kuala,

Bapak Ir. Syahrizal, M.T;

2. Sekretaris Jurusan Teknik Elektro Fakultas Teknik Universitas Syiah Kuala,

Bapak Tarmizi, S.T;

3. Ketua Bidang Teknik Elektronika Jurusan Teknik Elektro Fakultas Teknik

Universitas Syiah Kuala, Bapak T. Yuliar Arif, S.T, M.Kom;

4. Ketua Laboratorium Elektronika Jurusan Teknik Elektro Fakultas Teknik

Universitas Syiah Kuala, Bapak Zulhelmi, S.T;

5. Dosen Pembahas I dan II, Bapak Ir. Agus Adria, M.Sc dan Bapak Mohd.

Syaryadhi, S.T;

Penulis berharap semoga karya sederhana ini dengan segala kekurangannya dapat

memberikan manfaat bagi pembacanya.

Banda Aceh, 29 Desember 2006

Nurul Afdhal NIM 0041511333

Page 5: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

PERSEMBAHAN Bismillahirrahmanirrahim.

“..Kami tinggikan derajat orang yang Kami kehendaki; dan di atas tiap-tiap

orang yang berpengetahuan itu ada lagi Yang Maha Mengetahui”

(QS. Yusuf: 76)

Dengan ungkapan terimakasih tak terhingga atas kasih sayang yang telah

diberikan serta semua peluh dan pengorbananmu selama ini, sehingga semua

kesulitan menjadi sesuatu yang indah untuk dikenang, Tugas Akhir ini penulis

persembahkan untuk orang-orang tercinta Ayahanda M.Adan; Ibunda Nilawati;

Kakanda Nina Mardiana & Family; dan Adinda Nelly Marlinda terima kasih atas

dukungan dan pengertiannya.

Ungkapan terimakasih atas persahabatan yang tulus penulis sampaikan

kepada Pojie, Darman, C’Jan, Oelil, B’Furkan, Irfan, Dedeq, Andika, Syukur, Arie,

Tgk. Adi, Ina, Nana, r!r!, Amel, Noval, Aulia, Usoef, Oedil.

Untuk bantuan dan dukungan selama prosesi TA, penulis juga menyampaikan

ucapan terimakasih kepada Kru ELKA comunitie, Jili, syahrial, Rolix, Musyfi, Budi,

Zizan, Uman, R!kie, Cungkee, Ayi, Adam, B’Reza, Fadhli’01, Dien, T. Fauzan,

Dery, Andy, teman-teman khususnya angkatan 2000. Ucapan terimakasih juga

penulis sampaikan kepada seluruh pihak yang telah memberikan bantuan dan

namanya tidak dapat disebutkan satu persatu pada lembaran ini.

Banda Aceh, 08 Dzulhijjah 1427 H Nurul Afdhal

Page 6: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

ABSTRAK Tugas Akhir ini menjelaskan tentang bagaimana membuat suatu sistem pemantauan ketinggian air dengan memanfaatkan gelombang ultrasonik berbasis mikrokontroler AT89C2051. Hal ini perlu dilakukan mengingat banyaknya bencana alam yang disebabkan oleh air, seperti banjir dan tsunami. Sensor Ping dengan memanfaatkan prinsip pantulan suara digunakan untuk mengukur ketinggian air. Selang waktu yang diperlukan untuk memancarkan dan menerima pantulan gelombang ultrasonik dikalikan dengan cepat rambat suara dalam air guna memperoleh nilai jarak. Hal ini dilakukan oleh program assembly yang disimpan dalam memori mikrokontroler. Hasil ketinggian air yang diperoleh ditampilkan pada seven segment dan dikirim ke komputer dengan menggunakan transmisi radio FM. Komputer menampilkan nilai ketinggian air saat itu dalam bentuk grafik. Dari hasil pengujian, diperoleh sistem dapat bekerja dengan baik untuk interval pengukuran 0.10 – 2.50 meter, dengan nilai ketelitian pengukuran antara 0 – 0.05 meter, dan tingkat persentase kesalahan antara 0 % - 4 %. Kata Kunci : Sistem Pemantauan Ketinggian air, Mikrokontroler AT89C2051, Ultrasonik, Seven segment, and Komunikasi FM.

Page 7: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

ABSTRACT

This final report explains about designing a water level monitoring system that used ultrasonic wave and based on microcontroller AT89C2051. It is important to build the system because many disasters were caused by water, such as flood, tsunami, etc. Ping sensor used the echo sounder principle to detect the water level. The time duration for transmitting and receiving the ultrasonic wave is multiplied by the sound velocity in the water to get the spacing point. It is done by assembly program that was stored in microcontroller memory. The result of water level is display on seven segments and transmits to the computer use FM radio. The computer shows the real time water level in graphic mode. Based from the experiment, the system can work well for measurement range 0.10 – 2.50 metre with accuracy system for 0 – 0.05 meter, and error percentage for 0 % - 4 %. Key Word: Water Level Monitoring System, Microcontroller AT89C2051, Ultrasonic, Seven segment, and FM Communication.

Page 8: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

DAFTAR ISI JUDUL i

PERNYATAAN KEASLIAN SKRIPSI ii

PENGESAHAN iii

KATA PENGANTAR iv

PERSEMBAHAN v

ABSTRAK vi

ABSTRACT vii

DAFTAR ISI viii

DAFTAR GAMBAR xi

DAFTAR TABEL xiii

BAB 1 PENDAHULUAN 1

1.1 Latar belakang 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 2

1.4 Tujuan 2

1.5 Metodologi Perancangan 3

1.6 Sistematika Penulisan 4

BAB 2 TINJAUAN PUSTAKA 5

2.1 Gelombang Ultrasonik 5

2.1.1 Ping)))TM Ultrasonik Range Finder 7

2.2 Mikrokontroler 8

2.2.1 Gambaran Umum AT89C2051 9

2.2.2 Memori 9

2.2.2.1 Data Memory 10

2.2.2.2 Program Memory 10

2.2.3 Pin-Pin Mikrokontroler AT89C2051 11

2.2.4 Timer/ Counter 12

Page 9: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

2.2.4.1 Mode 0 – Pencacah Biner 13 Bit 14

2.2.4.2 Mode 1 – Pencacah Biner 16 Bit 15

2.2.4.3 Mode 2 – Pencacah Biner 8 Bit dengan Isi Ulang 15

2.2.4.4 Mode 3 – Gabungan Pencacah Biner 16 Bit dan

8 Bit 15

2.2.5 Port Serial 16

2.2.5.1 Register Kontrol Port Serial 17

2.3 Seven Segment 19

2.3.1 Penampil Seven Segment 19

2.3.2 Dekoder 74LS247 20

2.4 Frekuensi Modulasi 21

2.4.1 Pemancar FM 22

2.4.1.1 Osilator 22

2.4.1.2 Penyangga 23

2.4.1.3 Penguat Daya 23

2.4.2 Penerima FM 23

2.5 Antarmuka 24

2.5.1 Antarmuka dengan RS-232 25

2.5.1.1 Karakteristik Sinyal RS-232 25

2.5.1.2 Menghubungkan TTL ke RS-232 27

2.5.1.3 Konektor dan Jenis Sinyal RS-232 28

2.6 Visual Basic 29

BAB 3 PERANCANGAN SISTEM 31

3.1 Perancangan Umum Sistem 31

3.2 Perancangan Perangkat Keras 32

3.2.1 Rangkaian Sistem Minimum AT89C2051 32

3.2.2 Sensor Ping))) 33

3.2.3 Rangkaian Penampil Seven Segment 34

3.2.4 Rangkaian Pemancar FM 35

3.2.5 Penerima FM 36

3.2.6 Rangkaian Antarmuka Port Serial 37

3.3 Perancangan Perangkat Lunak 37

Page 10: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

3.3.1 Program Assembly MCS-51 38

3.3.2 Program Visual Basic 40

BAB 4 PENGUJIAN DAN PEMBAHASAN 41

4.1 Pengujian Sensor Ping))) 41

4.2 Pengujian Rangkaian Penampil Seven Segment 43

4.3 Pengujian Transmisi Data Serial 44

4.4 Pengujian Sistem Keseluruhan 47

BAB 5 PENUTUP 51

5.1 Kesimpulan 51

5.2 Saran 52

DAFTAR PUSTAKA 53

RIWAYAT HIDUP 54

LAMPIRAN A HASIL PENELITIAN

A.1 Skema Rangkaian Lengkap Sistem

A.2 Tampilan Software

A.3 Foto Alat

LAMPIRAN B DATA SHEET KOMPONEN

B.1 Data Sheet AT89C2051

B.2 Data Sheet Sensor Ping

B.3 Data Sheet Dekoder 74LS247

B.4 Data Sheet MAX 232

Page 11: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

DAFTAR GAMBAR Gambar 2.1 Beberapa Aplikasi Sensor Ultrasonik 7

Gambar 2.2 Prinsip Kerja Sensor Ping))) 7

Gambar 2.3 Timing Diagram Sensor Ping))) 8

Gambar 2.4 Konfigurasi Pin Mikrokontroler AT89C2051 11

Gambar 2.5 Susunan Bit dalam Register TMOD 12

Gambar 2.6 Susunan bit dalam register TCON 13

Gambar 2.7 Mode 0 - Pencacah Biner 13 Bit 14

Gambar 2.8 Mode 1 - Pencacah Biner 16 Bit 15

Gambar 2.9 Mode 2 - Pencacah Biner 8 Bit dengan Isi Ulang 15

Gambar 2.10 Mode 3 - Gabungan Pencacah Biner 16 Bit dan 8 Bit 16

Gambar 2.11 Susunan Bit dalam Register SCON 18

Gambar 2.12 Posisi LEDs pada seven-segment Tanpa Koma 19

Gambar 2.13 Internal Wiring (a). Common Anode (b). Common Cathode 19

Gambar 2.14 Konfigurasi Pin-Pin Dekoder 74LS247 20

Gambar 2.15 Modulasi FM Sinyal Digital, (a) Gelombang Pembawa (b) Sinyal

Data Digital (c) Gelombang Termodulasi FM 21

Gambar 2.16 Diagram Blok Pemancar FM 22

Gambar 2.17 Diagram Blok Penerima Radio FM 24

Gambar 2.18 Level Tegangan RS232 26

Gambar 2.19 Level Tegangan TTL 27

Gambar 2.20 Perubahan level tegangan TTL-RS232-TTL 28

Gambar 2.21 Konfigurasi Pin IC MAX 230, 232, 232A 28

Gambar 2.22 Konfigurasi Pin-Pin DB 9 29

Gambar 3.1 Blok Diagram Umum Sistem 31

Gambar 3.2 Rangkaian Sistem Minimum AT89C2051 33

Gambar 3.3 Konfigurasi Pin Sensor Ping))) 33

Gambar 3.4 Rangkaian Penampil Seven segment 34

Page 12: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Gambar 3.5 Rangkaian Transmitter FM 35

Gambar 3.6 Diagram Blok Penerima FM 36

Gambar 3.7 Rangkaian Antarmuka dengan Kanal RS-232 37

Gambar 3.8 Diagram Alir Program MCS-51 Pada Mikrokontroler 39

Gambar 3.9 Diagram Alir Program Visual Basic Pada Komputer 40

Gambar 4.1 Rangkaian Uji Sensor Ping 42

Gambar 4.2 Rangkaian Uji Penampil Seven Segment 43

Gambar 4.3 Rangkaian Pemancar FM Pada Uji Transmisi Data Serial 46

Gambar 4.4 Rangkaian Penerima FM Pada Uji Transmisi Data Serial 46

Gambar 4.5 Tampilan Hyper Terminal Pada Uji Transmisi Data Serial 47

Gambar 4.6 Diagram Blok Sistem Pada Sisi Mikrokontroler 47

Gambar 4.7 Diagram Blok Sistem Pada Sisi Komputer 48

Gambar 4.8 Grafik Perbandingan Hasil Pengujian Sistem 49

Page 13: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

DAFTAR TABEL Tabel 2.1 Kecepatan Bunyi Berbagai Macam Bahan pada Tekanan 1 atm

dan 20° C 5

Tabel 2.2 Keluarga Mikrokontroler AT89CXX 9

Tabel 2.3 Fungsi Khusus Pin Port 3 11

Tabel 2.4 Mode Kerja Timer Mikrokontroler 14

Tabel 2.5 Mode Kerja Port Serial 18

Tabel 2.6 Tabel Kebenaran Dekoder BCD to Seven-Segment 20

Tabel 2.7 Jenis Sinyal RS232 yang Umum Dipakai 29

Tabel 4.1 Kombinasi Input, Output dan Keluaran seven segment 44

Tabel 4.2 Hasil Pengujian Sistem 48

Tabel 4.3 Perbandingan Data Tampilan Pada Seven Segment dan Komputer 50

Page 14: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Page 15: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

BAB 1

PENDAHULUAN

1.1 LATAR BELAKANG

Musibah dan bencana alam yang banyak terjadi belakangan ini tidak hanya

menyebabkan kerugian material saja, tetapi juga mengakibatkan banyaknya korban

jiwa yang berjatuhan. Banyak cara untuk mengantisipasi dan meminimalisasi

kerugian dan jumlah korban, salah satunya adalah dengan menerapkan berbagai alat

pendeteksi yang digunakan sebagai referensi data maupun indikator dari suatu sistem

peringatan dini, bila terjadi fenomena alam yang tidak biasa.

Saat ini terdapat banyak detektor yang digunakan sebagai indikator sistem

peringatan dini untuk mendeteksi berbagai macam fenomena alam (fisik), seperti

perubahan iklim dan cuaca (arah dan kecepatan angin, curah hujan, temperatur, dsb),

kekuatan dan lokasi dari pusat gempa, aktivitas dari gunung berapi, ketinggian

permukaan air, dan lain sebagainya.

Ketinggian permukaan air merupakan suatu parameter yang banyak

dipantau dan dianalisa perubahannya, terutama pada musim dan keadaan tertentu.

Hal ini berkaitan erat dengan banyaknya bencana alam yang mungkin disebabkan

olehnya, seperti banjir, tsunami dan lain sebagainya. Selama ini pemantauan

ketinggian air sungai yang dilakukan masih menggunakan alat-alat manual berupa

skala ketinggian air yang diletakkan di pinggiran sungai/ jembatan. Hal ini memiliki

keterbatasan terutama terhadap penumpukan sedimen di dasar sungai, sehingga

mengurangi akurasi dari pengukuran.

Mengingat akan pentingnya pemantauan terhadap ketinggian air sungai

terutama pada daerah-daerah dengan tinggi daratan yang lebih rendah dari

permukaan laut, penulis mencoba memberikan kontribusi dengan merancang dan

membuat sistem pemantauan ketinggian air secara elektik yang dapat digunakan

untuk memantau perubahan ketinggian air secara kontinyu dan real time. Dengan

memanfaatkan sensor ultrasonik sebagai detektor guna mendeteksi jarak. Sensor ini

bekerja berdasarkan prinsip pantulan gelombang suara, dimana sensor memancarkan

gelombang suara yang kemudian menangkapnya kembali dengan perbedaan waktu

Page 16: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

sebagai dasar penginderaannya. Lamanya waktu yang diperoleh antara pancaran dan

penerimaan kembali pantulan suara tersebut berbanding lurus dengan jarak yang

diukurnya. Hasil penelitian ini diharapkan dapat menjadi suatu cara alternatif untuk

memantau ketinggian air sungai/ waduk, guna mengantisipasi terjadinya bencana

banjir.

1.2 RUMUSAN MASALAH

Dari latar belakang yang telah diungkapkan tersebut diperoleh beberapa

permasalahan, diantaranya sebagai berikut:

Bagaimana cara mengukur ketinggian air dengan menggunakan rangkaian

elektrik.

Bagaimana mengolah hasil yang didapatkan oleh sensor dan melakukan

antarmuka antara mikrokontroler dan komputer, serta transmisi data dengan

gelombang FM.

Bagaimana melakukan pemantauan terhadap perubahan ketinggian air

secara kontinyu dan real time melalui komputer.

1.3 BATASAN MASALAH

Sistem pemantauan ketinggian air yang dibahas pada penelitian ini,

merupakan prototype suatu cara alternatif untuk memantau ketinggian air dengan

memanfaatkan gelombang ultasonik (sensor Ping) dan mikrokontroler sebagai media

utamanya. Sistem ini hanya diimplementasikan pada kondisi air tawar yang jernih

dan tenang dengan ketinggian kurang dari 12 M.

1.4 TUJUAN

Adapun hal-hal yang ingin dicapai dari penelitian tugas akhir ini adalah:

Merancang perangkat keras dan perangkat lunak yang mampu menghasilkan

gelombang ultrasonik untuk mengukur ketinggian air.

Merancang perangkat lunak untuk mengolah hasil sensor guna mendapatkan

nilai real ketinggian air.

Merancang dan membuat perangkat lunak yang dapat memantau data

ketinggian air secara real time pada komputer.

Page 17: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

1.5 METODOLOGI PERANCANGAN

Perancangan tugas akhir ini terdiri atas beberapa tahapan pelaksanaan, yaitu

sebagai berikut:

Studi Literatur

Tahapan ini mempelajari teori-teori dasar yang menunjang, yaitu tentang

gelombang ultrasonik, mikrokontroler, seven segment, frekuensi modulasi,

sistem antarmuka, bahasa assembly MCS51dan bahasa visual basic.

Perancangan dan Pembuatan Hardware

Pada tahapan perancangan perangkat keras ini, dirancang rangkaian sesuai

dengan fungsi dari masing-masing blok sistem, yang terdiri atas transduser

ultrasonik (sensor Ping), mikrokontroler, penampil (seven segment), dan

sistem antarmuka dengan komputer menggunakan port serial.

Perancangan dan Pembuatan Software

Pada tahapan perancangan perangkat lunak dirancang 2 buah program yang

salah satunya akan diinputkan pada mikrokontroler dengan menggunakan

bahasa pemrograman assembly MCS51, yaitu program penghasil

gelombang ultrasonik dan mengolah hasil pantulan yang diterima menjadi

nilai jarak yang kita inginkan, serta menampikan hasilnya pada seven

segment. Program lainnya akan digunakan sebagai penampil grafik serta

penyimpan data pada komputer, dirancang dengan bahasa visual basic.

Pengujian Masing-masing Blok dan Keseluruhan Sistem

Pada tahapan ini dilakukan pengujian terhadap masing-masing blok dan

keseluruhan sistem yang diperoleh pada penelitian, yang meliputi: pengujian

sensor ping (pemancar & penerima gelombang ultrasonik), rangkaian

penampil (seven segment), transmisi data menggunakan gelombang FM,

komunikasi serial mikrokontroler dengan komputer dan pengujian

keseluruhan sistem.

Penyusunan Laporan

Tahapan ini merupakan proses akhir dari penelitian, yang meliputi

penjelasan hasil penelitian yang diperoleh sesuai dengan metode dan

prosedur yang digunakan dalam perancangan dan pengujian sistem,

penarikan kesimpulan, dan pemberian saran dalam bentuk laporan.

Page 18: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

1.6 SISTEMATIKA PENULISAN

Penulisan laporan tugas akhir ini terdiri atas beberapa bab, dengan masing-

masing bab memiliki sub bab tersendiri. Adapun sistematika penulisannya adalah

sebagai berikut: Bab 1 Pendahuluan, berisi latar belakang, rumusan masalah, batasan

masalah, tujuan, metodologi perancangan, dan sistematika penulisan; Bab 2 Tinjauan

Pustaka, berisi teori tentang gelombang ultrasonik, mikrokontroler, seven segment,

frekuensi modulasi, sistem antarmuka dan bahasa visual basic; Bab 3 Perancangan

Sistem, membahas perancangan sistem secara umum, perancangan hardware

(perangkat keras), serta perancangan software (perangkat lunak); Bab 4 Pengujian

dan Pembahasan, mengulas tentang hasil pengujian masing-masing blok dan

keseluruhan sistem yang diperoleh pada penelitian; Bab 5 Penutup, merupakan

kesimpulan dan saran terhadap hasil yang diperoleh; Daftar Pustaka, berisi daftar

buku referensi yang berhubungan dengan perancangan dan pembuatan sistem

pemantau ketinggian air secara real time; Lampiran berisi rangkaian lengkap sistem,

tampilan software hasil rancangan, foto alat yang dihasilkan, serta data sheet

komponen-komponen yang digunakan.

Page 19: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

BAB 2

TINJAUAN PUSTAKA

Bab ini akan membahas teori dasar komponen-komponen yang digunakan

dalam perancangan sistem. Agar pembahasan tidak menyimpang dari topik utama,

maka setiap komponen hanya dibahas sesuai dengan fungsinya pada masing-masing

blok sistem. Penjelasan tentang teori dasar komponen ini diharapkan dapat

memberikan pemahaman terhadap prinsip kerja dari sistem tersebut.

2.1 GELOMBANG ULTRASONIK

Bunyi merupakan suatu getaran yang berbentuk gelombang longitudinal.

Tiga aspek utama yang diperlukan untuk menghasilkan suatu bunyi, yaitu:

Sumber gelombang bunyi, yaitu suatu objek yang bergetar.

Energi yang dipindahkan dari sumber bunyi ke suatu alat pendeteksi melalui

suatu perantara (medium) berupa gelombang longitudinal.

Suatu alat penerima bunyi, seperti telinga.

Kecepatan bunyi merambat berbeda tergantung kepada medium

perambatannya. Di udara pada temperatur 0°C dan tekanan 1 atm, kecepatannya

adalah 331 m/s. Dan kecepatan tersebut akan bertambah sebesar 0,60 m/s untuk

setiap derajat Celcius dari kenaikan suhu [1]. Data kecepatan bunyi dalam berbagai

medium ditunjukkan pada tabel 2.1 berikut ini:

Tabel 2.1 Kecepatan Bunyi Berbagai Macam Bahan

pada Tekanan 1 atm dan 20° C [1]

Bahan Kecepatan (m/s)

Udara 343

Udara (0°C) 331

Helium 1005

Hidrogen 1300

Page 20: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Tabel 2.1 Kecepatan Bunyi Berbagai Macam Bahan

pada Tekanan 1 atm dan 20° C (Lanjutan 2/2) [1]

Air 1440

Air Laut 1560

Besi dan Logam 5000

Gelas 4500

Aluminium 5100

Kayu Keras 4000

Dua aspek bunyi yang mempengaruhi pendengaran manusia adalah

ketinggian dan kenyaringan. Ketinggian (nada) bunyi menunjukkan tinggi atau

rendahnya bunyi. Kuantitas fisik yang menentukan tinggi nada adalah frekuensi.

Telinga manusia dapat menerima frekuensi antara 20 Hz sampai 20.000 Hz (dengan

1 Hz adalah 1 putaran per sekon). Gelombang bunyi yang berada diluar jangkauan

frekuensi tersebut walaupun mencapai telinga, namun kita tidak sadar akan frekuensi

tersebut.

Gelombang bunyi dengan frekuensi di atas 20.000 Hz disebut ultrasonik.

Bunyi-bunyi tersebut dapat didengar oleh beberapa hewan, seperti: anjing dapat

mendengar frekuensi 50.000 Hz, dan kelelawar yang dapat mendeteksi frekuensi

sekitar 100.000 Hz. Sedangkan frekuensi di bawah 20 Hz disebut infrasonik. Suara-

suara tersebut dapat dihasilkan oleh gempa bumi, halilintar, gunung meletus, dan

gelombang yang disebabkan oleh getaran mesin-mesin berat. Gelombang dengan

frekuensi rendah ini berbahaya, karena dapat menyebabkan kerusakan/ iritasi organ

pada tubuh manusia.

Kenyaringan (intensitas gelombang) bunyi didefinisikan sebagai energi

yang dipindahkan oleh gelombang per satuan waktu pada suatu satuan luas. Telinga

manusia dapat mendeteksi bunyi dengan intensitas antara 10—12 W/ m2 sampai

1W/m2. Tingkat intensitas tersebut biasa dinyatakan dengan menggunakan skala

logaritma dengan satuan ‘bel’ [1].

Page 21: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Sensor Ultrasonik bekerja berdasarkan prinsip pantulan gelombang suara,

dimana sensor ini memancarkan gelombang suara yang kemudian menangkap

pantulannya kembali dengan perbedaan waktu sebagai dasar penginderaannya.

Perbedaan waktu antara gelombang suara dipancarkan dengan ditangkapnya kembali

gelombang suara tersebut adalah berbanding lurus dengan jarak atau tinggi objek

yang memantulkannya. Jenis objek yang dapat diindera diantaranya adalah: objek

padat, cair, butiran maupun tekstil [12].

Gambar 2.1 Beberapa Aplikasi Sensor Ultrasonik [13]

2.1.1 PING)))™ Ultrasonic Range Finder

Parallax PING))) ultrasonic range finder merupakan sebuah sensor

pengukur jarak tanpa kontak langsung, dengan kemampuan jarak ukur 2 cm (0.8

inches) sampai 3 m (3.3 yards). Sensor ini hanya memerlukan 1 pin I/O dari

mikrokontroler untuk mengontrolnya.

Gambar 2.2 Prinsip Kerja Sensor Ping))) [14]

Adapun spesifikasinya adalah sebagai berikut:

Supply Voltage – 5 VDC

Supply Current – 30 mA typ; 35 mA max

Range – 2 cm to 3 m (0.8 in to 3.3 yrds)

Input Trigger – positive TTL pulse, 2 uS min, 5 µs typ.

Echo Pulse – positive TTL pulse, 115 uS to 18.5 ms

Page 22: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Echo Hold-off – 750 µs from fall of Trigger pulse

Burst Frequency – 40 kHz for 200 µs

Burst Indicator LED shows sensor activity

Delay before next measurement – 200 µs

Size – 22 mm H x 46 mm W x 16 mm D (0.84 in x 1.8 in x 0.6 in)

Gambar 2.3 Timing Diagram Sensor Ping))) [14]

Sensor Ping))) mendeteksi objek dengan memancarkan gelombang

ultrasonik dan menunggu pantulannya. Dengan pemicuan pulsa positif selama 3µs

dari mikrokontroler pada kaki SIG (I/O pin), sensor ping akan memancarkan

gelombang 40 KHz (ultrasonik). Gelombang tersebut merambat melalui media

perambatan (seperti: udara, air dsb), mengenai sesuatu objek dan memantul kembali

ke sensor. Kemudian sensor Ping))) mengeluarkan pulsa rendah melalui kaki SIG

(I/O pin) ke mikrokontroler. Selang waktu antara pemicuan dan pantulan inilah yang

menginformasikan jarak benda dari sensor tersebut [14].

2.2 MIKROKONTROLER

Mikrokontroler dapat diartikan sebagai sebuah pengendali yang berukuran

mikro, yang terlihat hampir sama dengan mikroprosesor, namun memilki beberapa

perbedaan diantaranya memiliki banyak komponen yang terintegrasi di dalamnya,

Page 23: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

seperti RAM, ROM, I/O Port, dan timer/ counter yang tidak dimiliki oleh

mikroprosesor. Namun mikrokontroler hanya dapat melaksanakan tugas-tugas yang

lebih spesifik dibandingkan dengan mikroprosesor yang mampu menangani

pemrosesan data input dan output dari berbagai sumber [2].

2.2.1 Gambaran Umum AT89C2051

Mikrokontroler AT89C2051 merupakan salah satu produk dari Atmel Corp.

yang memiliki 2K bytes Flash Programmable and Erasable Read-Only Memory

(PEROM), dengan 8 jalur data. Mikrokontroler ini memiliki kumpulan instruksi yang

sesuai dengan standar keluarga MCS-51 produk INTEL. AT89C2051 mempunyai

fitur standar sebagai berikut: tegangan kerja 2,7-6 Volt, kecepatan 0-24 MHz, 2K

bytes Flash, 128 bytes RAM, 15 jalur I/O, 2 timer/ counter 16-bit, 5 vektor interupsi

dua tingkat, full duplex serial port, pembanding analog presisi, on-chip oscillator,

dan rangkaian pewaktu.

Berikut ini adalah perbandingan mikrokontroler ATMEL keluarga MCS-51

yang mencakup tipe mikrokontroler, kapasitas memori program, memori data,

jumlah pewaktu 16 bit dan teknologi pembuatannya [15],[3]

Tabel 2.2 Keluarga Mikrokontroler AT89CXX [3]

Nama piranti Memori

Program

Memori Data

(byte)

Jumlah Pewaktu/

Timer 16 bit

Teknologi

AT89C1051 1K Flash 64 RAM 1 CMOS

AT89C2051 2K Flash 128 RAM 2 CMOS

AT89C51 4K Flash 128 RAM 2 CMOS

AT89C52 8K Flash 256 RAM 3 CMOS

AT89C55 20K Flash 256 RAM 3 CMOS

AT89S8252 8K Flash 256 RAM 2K

EEPROM 3 CMOS

2.2.2 Memori

Memori berfungsi untuk menyimpan suatu infomasi, baik berupa program

maupun data. Makin besar kapasitas memori yang dimiliki suatu sistem, maka

Page 24: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

kemampuannya untuk menangani suatu program yang lebih kompleks dan mengolah

data akan lebih baik.

Dalam dunia mikrokontroler dikenal dua tipe memori, yaitu data memory

dan program memory. Pemisahan ini dimaksudkan untuk mempercepat proses kerja

mikrokontroler.

2.2.2.1 Data Memory

Data memory befungsi untuk menyimpan data, terbagi 2 berdasarkan

lokasinya, yaitu internal data memory dan external data memory. Internal data

memory yang dimiliki MCS-51 sebesar 128 bytes ditambah dengan SFR sehingga

berjumlah 256 bytes. Sedangkan external data memory berupa IC RAM atau ROM

yang dapat ditambahkan hingga 64 KB.

Internal data memori terdiri atas: Register Banks, General Purpose RAM,

Bit-addressable RAM dan Special Function Registers (SFR). Register Banks

digunakan sebagai alamat untuk menampung delapan register selebar 1 bytes, yang

diberi nama R0-R7. General Purpose RAM merupakan ruang bebas untuk

menyimpan variabel atau inisialisasi Stack Pointer, yang hanya dapat diakses per

bytes. Bit-addressable RAM memiliki fungsi yang sama dengan General Purpose

RAM, tetapi dapat diakses per bytes maupun per bit. Special Function Register

(SFR) merupakan sejumlah register khusus yang mencakup: alamat port,

accumulator, register B, timer dan sejumlah register kontrol.

2.2.2.2 Program Memory

Program memory berfungsi menyimpan kode program. Kapasitas internal

program memory bervariasi, untuk 89C2051 memiliki kapasitas 2KB. Namun jika

diperlukan dapat ditambahkan IC RAM atau ROM sebagai external data memory,

yang dapat mencapai 64 KB.

Page 25: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

2.2.3 Pin-Pin Mikrokontroler AT89C2051

Gambar 2.4 Konfigurasi Pin Mikrokontroler AT89C2051 [15]

Susunan pin-pin mikrokontroler AT89C2051 diperlihatkan pada gambar 2.4

di atas. Penjelasan dari masing-masing pin adalah sebagai berikut:

VCC Tegangan Kerja (Pin 20)

GND Ground (Pin 10)

Port 1 Port 1(Pin 12-19), merupakan 8-bit I/O dua arah. P1.0 dan P1.1 juga

berfungsi sebagai masukan positif (AIN0) dan masukan negatif (AIN1)

bagi pembanding analog presisi.

Port 3 Port P3.0 sampai P3.5 & P3.7 merupakan 7 pin I/O dua arah. P3.6

merupakan input dari output pembanding. Port 3 juga memiliki fungsi

khusus, yaitu sebagai berikut:

Tabel 2.3 Fungsi Khusus Pin Port 3 [15]

Pin Port Fungsi

P3.0 RXD (Port Input Serial)

P3.1 TXD (Port Output Serial)

P3.2 INT0 (Interupsi External 0)

P3.3 INT1 (Interupsi External 1)

P3.4 T0 (Timer 0 Input External)

P.3.5 T1 (Timer 1 Input External)

RST Reset Input. Semua pin I/O akan direset menjadi 1 jika pin RST high

selama 2 machine cycle (Pin 1)

XTAL1 Input bagi penguat inverting osilator dan input untuk internal clock (Pin

5)

Page 26: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

XTAL2 Output dari penguat inverting osilator (Pin 4)

2.2.4 Timer/ Counter

Mikrokontroler AT89C2051 yang merupakan salah satu IC keluarga MCS-

51 dilengkapi dengan dua perangkat Timer/ Counter, yang masing-masing

dinamakan sebagai timer 0 dan timer 1. Pada dasarnya sarana input yang satu ini

merupakan seperangkat pencacah biner (binary counter). Jika pencacah tersebut

bekerja dengan frekuensi tetap yang sudah diketahui besarnya, maka dikatakan

sebagai timer, karena kedudukan pencacah tersebut setara dengan waktu yang bisa

ditentukan dengan pasti. Namun jika pencacah tersebut bekerja dengan frekuensi

yang tidak tetap, maka dikatakan sebagai counter, karena kedudukan pencacah

tersebut hanyalah menyatakan banyaknya pulsa yang sudah diterima pencacah.

Pencacah biner pembentuk Timer/Counter MCS51 merupakan pencacah

biner menaik (count up binary counter) yang mencacah dari $0000 sampai $FFFF,

saat kedudukan pencacah berubah dari $FFFF kembali ke $0000 akan timbul sinyal

limpahan.

Untuk mengakses Timer/ Counter tersebut, diperlukan register khusus yang

dikenal sebagai SFR di dalam memori data internal. Pencacah biner untuk Timer 0

dibentuk oleh register TL0 (Timer 0 Low Byte) dan register TH0 (Timer 0 High

Byte). Sedangkan pencacah biner untuk Timer 1 dibentuk oleh register TL1 (Timer 1

Low Byte) dan register TH1 (Timer 1 High Byte).

Selain itu untuk mengatur kerja kedua Timer/ Counter tersebut, diperlukan 2

register tambahan yang dipakai untuk inisialisai bersama oleh Timer 0 dan Timer 1.

Register tambahan tersebut adalah register TCON (Timer Control Register, memori-

data internal nomor $88, bisa dialamat secara bit) dan register TMOD (Timer Mode

Register, memori-data internal nomor $89).

Gambar 2.5 Susunan bit dalam register TMOD [4]

Page 27: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Register TMOD dibagi menjadi 2 bagian secara simetris, bit 0 sampai 3

register TMOD (TMOD lower nibble) dipakai untuk mengatur Timer 0, bit 4 sampai

7 register TMOD (TMOD upper nibble) dipakai untuk mengatur Timer 1,

pemakaiannya sebagai berikut :

Bit M0 & M1 dipakai untuk menentukan Mode Timer seperti yang terlihat

dalam Tabel di Gambar 2.4

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)

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 GATE=1 kaki INT0 (untuk Timer 0) atau

kaki INT1 (untuk Timer 1) dipakai juga untuk mengatur saluran sinyal denyut

Gambar 2.6 Susunan bit dalam register TCON [4]

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

yang diarsir dalam Gambar2.6) dipakai untuk keperluan mengatur kaki INT0 dan

INT1. Sisa 4 bit dari register TCON (bit 4…bit 7) dibagi menjadi 2 bagian secara

simetris yang dipakai untuk mengatur Timer 0/ Timer 1, sebagai berikut:

Bit TFx (yaitu TF0 atau TF1) merupakan bit penampung limpahan, TFx akan

menjadi ‘1’ setiap kali pencacah biner yang terhubung padanya melimpah

(kedudukan pencacah berubah dari $FFFF kembali menjadi $0000). Bit TFx di-

nol-kan dengan istruksi CLR TF0 atau CLR TF1. Jika sarana interupsi dari

Timer 0/ Timer 1 dipakai, TFx di-nol-kan saat MCS51 menjalankan rutin

layanan interupsi (ISR – Interupt Service Routine)

Page 28: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Bit TRx (yaitu TR0 atau TR1) merupakan bit pengatur untuk menjalankan Timer

0/ Timer 1. Bila bit ini =0 sinyal denyut tidak disalurkan ke pencacah biner

sehingga pencacah berhenti mencacah. Bila bit GATE pada register TMOD =1,

maka saluran sinyal denyut ini diatur bersama oleh TRx dan sinyal pada kaki

INT0/ INT1

Timer/ Counter dapat bekerja dalam 4 mode operasi, yang masing-

masingnya memiliki karakteristik tersendiri. Pada mode 0, 1 dan 2, Timer 0 dan

Timer 1 masing-masing bekerja sendiri, artinya bisa dibuat Timer 0 bekerja pada

mode 1 dan Timer 1 bekerja pada mode 2, atau kombinasi lainnya sesuai dengan

keperluan. Sedangkan pada mode 3 TL0, TH0 dan TH1 dipakai bersama-sama untuk

menyusun sistem timer yang terpadu (khusus).

Tabel 2.4 Mode Kerja Timer Mikrokontroler [3]

M1 M0 Mode Operasi Keterangan

0 0 0 Timer/ Counter 13 bit

0 1 1 Timer/ Counter 16 bit

1 0 2 Timer/ Counter 8 bit auto reload

1 1 3 Split Timer Mode untuk Timer/ Counter 0 Timer/ Counter 1 berhenti

2.2.4.1 Mode 0 – Pencacah Biner 13 Bit

Gambar 2.7 Mode 0 - Pencacah Biner 13 Bit [4]

Dalam mode 0 timer yang dibentuk adalah timer 13 bit. Pencacah biner ini

dibentuk oleh TLx (TL0 atau TL1) sebagai pencacah biner 5 bit, limpahan dari

pencacah biner 5 bit ini dihubungkan ke THx (TH0 atau TH1) membentuk sebuah

untaian pencacah biner 13 bit, limpahan dari pencacah 13 bit ini ditampung di TFx

(TF0 atau TF1) yang ada di dalam register TCON. Pada saat terjadi limpahan dari

1FFFH ke 0000H maka (TFx) akan diset 1.

Page 29: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

2.2.4.2 Mode 1 – Pencacah Biner 16 Bit

Gambar 2.8 Mode 1 - Pencacah Biner 16 Bit [4]

Mode 1 ini sama dengan mode 0, hanya saja register TLx dipakai

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

terbentuk adalah 16 bit, seiring dengan sinyal detak, kondisi pencacah biner 16 bit ini

dimulai dari 0000H sampai FFFFH, kemudian kembali menjadi 0000H pada saat ini

terjadi sinyal limpahan atau over flow pada bit TFx.

2.2.4.3 Mode 2 – Pencacah Biner 8 Bit dengan Isi Ulang

Gambar 2.9 Mode 2 - Pencacah Biner 8 Bit dengan Isi Ulang [4]

Timer mode 2 adalah timer 8 bit dengan kemampuan isi ulang. TLx dipakai

sebagai pencacah biner 8 bit, sedangkan THx dipakai untuk menyimpan nilai yang

diisikan ulang ke TLx setiap kali terjadi limpahan atau perubahan dari FFH menjadi

00H. Dengan cara ini bisa diperoleh sinyal over flow yang frekuensinya bisa

ditentukan oleh nilai yang disimpan dalam THx.

2.2.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 fasilitas

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

Page 30: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

limpahan. Pencacah biner ketiga adalah TH0 yang dipakai sebagai pencacah biner 8

bit dengan TF1 sebagai sarana pemantau limpahan [4].

Gambar 2.10 Mode 3 – Gabungan Pencacah Biner 16 Bit dan 8 Bit [4]

2.2.5 Port Serial

Komunikasi serial adalah komunikasi data yang dilakukan dengan

mentrasmisikan data bit per bit secara berurutan. Cara ini menyebabkannya lebih

lambat dibandingkan dengan komunikasi secara paralel. Namun kelebihan

komunikasi serial, hanya dibutuhkkan 2 jalur saja sehingga lebih hemat, dan jaraknya

pun lebih jauh dibandingkan dengan komunikasi secara paralel.

Berdasarkan sinyal detak yang digunakannya, komunikasi serial terbagi dua

yaitu synchronous serial dan asynchronous serial. Pada synchronous serial, hanya

salah satu pihak (pengirim/ penerima) saja yang menghasilkan clock, dan

mengirimkannya bersama data. Sedangkan pada asynchronous serial, hanya data saja

yang dikirimkan sedangkan clock nya dihasilkan oleh masing-masing pihak

(pengirim dan penerima) [3].

Port serial AT89C2051 dapat digunakan untuk komunikasi data secara

sinkron maupun asinkron. Pengiriman data serial asinkron diawali dengan start bit

dan diakhiri dengan stop bit. Sinyal clock yang merupakan baud rate dari

komunikasi data ini dibangkitkan masing-masing oleh penerima maupun pengirim

data dengan frekuensi yang sama. Penerima hanya perlu mendeteksi adanya start bit

sebagai awal pengiriman, selanjutnya komunikasi data terjadi antara dua buah shift

register yang ada pada pengirim dan penerima. Setelah data 8 bit diterima maka

penerima akan menunggu adanya stop bit sebagai tanda bahwa 1 byte data telah

terkirim [5].

Page 31: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Port serial pada AT89C2051 bersifat full duplex, artinya port serial tersebut

bisa menerima dan mengirim data pada waktu yang bersamaan. Selain itu juga

memiliki penyangga penerima, sehingga port serial mulai bisa menerima byte yang

kedua sebelum byte yang pertama dibaca oleh register penerima. Penerimaan dan

pengiriman data port serial melalui register SBUF.

Port serial AT89C2051 bisa digunakan dalam 4 mode kerja. Salah satu

mode-nya bekerja secara sinkron dan 3 lainnya bekerja secara asinkron, keempat

mode kerja tersebut adalah:

Mode 0 Bekerja secara sinkron, data serial dikirim dan diterima melalui kaki

P3.0 (RxD). Sedangkan kaki P3.1 (TxD) digunakan untuk

menyalurkan clock. Data dikirim dan diterima 8 bit sekaligus, mulai

dari bit yang bobotnya paling rendah (bit 0) sampai bit yang bobotnya

paling besar (bit 7). Kecepatan pengirimannya (baud rate) adalah 1/12

frekuensi kristal yang digunakan

Mode 1 Data serial yang dikirim/ diterima secara asinkron 10 bit sekaligus,

diawali dengan 1 bit start, disusul 8 bit data dan diakhiri oleh 1 bit

stop. Kecepatan pengiriman data (baud rate) bisa diatur melalui Timer

1 sesuai dengan keperluan

Mode 2 Data dikirim/ diterima 11 bit sekaligus secara asinkron, dengan

diawali 1 bit start, disusul 8 bit data, kemudian bit 9 yang bisa diatur

lebih lanjut, dan diakhiri dengan 1 bit stop. Kecepatan pengiriman

data bisa dipilih antara 1/32 atau 1/64 frekuensi kristal yang

digunakan

Mode 3 Mode ini sama dengan mode 2, hanya saja kecepatan pengiriman data

bisa diatur melalui Timer 1 sesuai dengan keperluan, seperti pada

mode 1.

2.2.5.1 Register Kontrol Port Serial

Register yang digunakan untuk mengatur komunikasi serial terdapat pada

Serial Control (SCON), memori-data internal nomor $98, yang berisi kontrol dan

status Port Serial. Register ini berisi bit-bit pemilihan mode kerja port serial, bit data

Page 32: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

ke-9 pengiriman dan penerimaan (TB8 dan RB8) serta bit-bit interupsi port serial (TI

dan RI).

Gambar 2.11 Susunan Bit dalam Register SCON [3]

Penjelasan dari masing-masing bit SCON tersebut adalah sebagai berikut:

SM0 & SM1, digunakan untuk menentukan mode kerja port serial seperti

ditunjukkan dalam tabel 2.5

SM2, pada kondisi set digunakan untuk mengaktifkan komunikasi multiprosesor

pada mode 2 dan 3

REN (Receive Enabel), pada kondisi set mengaktifkan kemampuan port serial

untuk menerima data. Bit ini di set dan di clear oleh perangkat lunak

TB8, merupakan bit ke-9 yang dikirim pada mode 2 atau 3. pada mode 1 bit ini

berfungsi sebagai pengiriman bit stop

RB8, merupakan bit ke-9 yang diterima pada mode 2 atau 3. pada mode 1 bit ini

berfungsi sebagai penerima bit stop, dan pada mode 0 bit ini tidak digunakan

TI (Transmit Interrupt Flag), bit yang akan di set pada akhir pengiriman data, bit

ini di set oleh perangkat keras dan di clear oleh perangkat lunak

RI (Receive Interrupt Flag), bit yang akan di set pada akhir penerimaan data, bit

ini di set oleh perangkat keras dan di clear oleh perangkat lunak [3].

Tabel 2.5 Mode Kerja Port Serial [3]

SM0 SM1 Mode Keterangan Baud Rate

0 0 0 Register geser 8-bit Frek. Osilator/12

0 1 1 UART 8-bit Variabel

1 0 2 UART 9-bit Frek. Osilator/64, atau Frek. Osilator/32

1 1 3 UART 9-bit Variabel

Page 33: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

2.3 SEVEN SEGMENT

Light-Emitting Diodes (LEDs) merupakan suatu bahan semikonduktor yang

memiliki karakteristik sama dengan dioda biasa, tetapi LED juga memancarkan

cahaya ketika bekerja. Dalam operasi normal, dioda hanya akan menghantar bila

tegangan positif diberikan antara kaki anoda dan katoda-nya (forward biased).

Sebaliknya bila tegangan negatif yang diberikan antara kaki anoda dan katoda

(reverse biased), maka dioda tidak akan menghantar.

LEDs tersedia dalam beberapa variasi warna, yaitu merah, hijau, kuning,

dan biru, dan juga tersedia dalam range infra merah (untuk keperluan remote

kontrol). Semuanya diproduksi dalam kemasan yang berbeda, seperti lampu berjalan,

"bar graph", displays, dan seven segment displays, yang digunakan untuk

menampilkan angka numerik.

2.3.1 Penampil Seven Segment

Penampil seven-segment memiliki 7 LEDs dalam satu paket penampil

angka. Setiap LED dapat diaktifkan masing-masing untuk menunjukkan segment dari

suatu digit. Secara umum segment ditandai dengan huruf a-g. Terdapat dua tipe

penampil seven-segment, yaitu common anode dan common cathode. Masing-masing

diperlihatkan pada gambar 2.13(a) & (b)

Gambar 2.12 Posisi LEDs pada seven-segment Tanpa Koma

(a) (b)

Gambar 2.13 Internal wiring (a). common anode (b). common cathode

Page 34: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

2.3.2 Dekoder 74LS247

Dalam banyak kasus, kita harus menampilkan bilangan desimal pada seven-

segment dari bermacam sistem bilangan agar mudah dipahami pengamat. Karenanya

diperlukan suatu dekoder yang berfungsi untuk menyandikan nilai dari berbagai

sistem bilangan menjadi bentuk bilangan yang dipahami oleh seven-segment.

74LS247 merupakan suatu dekoder BCD (Binary Code Decimal) ke seven-

segment. Dekoder ini mempunyai 4 jalur masukan dan 7 jalur keluaran dalam

keadaan aktif rendah (LOW). Gambar 2.14 menunjukkan konfigurasi pin-pin dari

dekoder 74LS247 [16].

Gambar 2.14 Konfigurasi Pin-Pin Dekoder 74LS247 [16]

Tabel 2.6 Tabel kebenaran dekoder BCD to seven-segment [16]

Page 35: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

2.4 FREKUENSI MODULASI

Metode untuk menumpangkan sinyal informasi (berupa suara, percakapan,

musik maupun data) pada sinyal radio disebut modulasi. Sistem modulasi yang

sering dipakai adalah modulasi amplitudo (AM – Amplitude Modulation), modulasi

frekuensi (FM – Frequency Modulation) dan modulasi fasa (PM – Phase

Modulation). Sedangkan metode modulasi lainnya merupakan kombinasi dari tiga

metode modulasi ini.

Modulasi frekuensi adalah suatu proses modulasi dimana sinyal audio

dengan frekuensi yang lebih rendah dan amplitudo yang tetap, ditumpangkan pada

sinyal radio dengan frekuensi yang lebih tinggi [6]. Gambar 2.15 menunjukkan

modulasi FM untuk sinyal digital.

(a)

(b)

(c)

Gambar 2.15 Modulasi FM sinyal digital, (a) Gelombang pembawa (b) Sinyal data

digital (c) Gelombang termodulasi FM [7]

Gambar tersebut menunjukkan bahwa gelombang sinyal pembawa (RF)

berubah frekuensinya sesuai dengan sinyal data digital (AF) yang ditumpangkan

padanya, akan tetapi amplitudonya tetap. Jadi dalam sistem FM, sinyal modulasi

(yang ditumpangkan) akan menyebabkan frekuensi dari gelombang pembawa

berubah-ubah sesuai perubahan frekuensi dari sinyal modulasi.

Pada interval amplitudo maksimum yaitu logika 1, gelombang termodulasi

yang dihasilkan lebih rapat. Hal ini menunjukkan bahwa pada saat amplitudo sinyal

data digital maksimum memiliki frekuensi yang tertinggi. Dan sebaliknya selama

sinyal data digital berada pada amplitudo minimum, gelombang yang dihasilkan

Page 36: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

lebih renggang. Yang menunjukkan bahwa sinyal data digital pada waktu amplitudo

minimum berada pada frekuensi terendah [7].

2.4.1 Pemancar FM

Tujuan dari pemancar FM adalah untuk merubah satu atau lebih sinyal input

yang berupa frekuensi audio (AF) menjadi gelombang termodulasi dalam sinyal RF

(Radio Frekuensi) yang dimaksudkan sebagai output daya yang kemudian

diumpankan ke sistem antena untuk dipancarkan [17].

Gambar 2.16 Diagram Blok Pemancar FM [6]

2.4.1.1 Osilator

Osilator merupakan inti dari sebuah pemancar. Osilator yang sempurna

sangat diperlukan untuk membangun suatu sistem komunikasi yang baik. Pada

sistem komunikasi, osilator menghasilkan gelombang sinus yang dipakai sebagai

sinyal pembawa. Sinyal informasi kemudian ditumpangkan pada sinyal pembawa

dengan proses modulasi.

Osilator dengan frekuensi yang bisa dirubah disebut VFO (Variable

Frequency Oscillator). VFO memiliki kelebihan pada jangkauan frekuensinya yang

lebar. Untuk menghasilkan frekuensi 88MHz – 108MHz dapat dipakai VFO.

Kestabilan VFO sangat tergantung dari kestabilan nilai induktor dan kapasitornya,

karena pada VFO induktor dan kapasitor dipakai sebagai penentu frekuensinya.

Komponen-komponen pada VFO yang mudah terpengaruh oleh suhu menyebabkan

VFO mempunyai kestabilan yang rendah.

VFO yang frekuensinya bisa berubah karena diberi besaran tegangan

tertentu pada inputnya disebut sebagai VCO (Voltage Controlled Oscillator). VCO

paling banyak dipakai pada rangkaian osilator FM karena sinyal suara langsung

dapat dimasukkan pada input VCO. Osilator jenis lain memakai kristal sebagai

Page 37: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

komponen penentu frekuensinya. Osilator ini memiliki kestabilan frekuensi yang

sangat tinggi. Hal itu membuat osilator kristal menjadi sulit untuk diterapkan pada

metode modulasi frekuensi.

2.4.1.2 Penyangga

Penyangga dibutuhkan oleh semua jenis osilator. Penyangga berfungsi

untuk menstabilkan frekuensi dan amplitudo osilator akibat dari pembebanan tingkat

selanjutnya. Biasanya penyangga terdiri dari 1 atau 2 tingkat penguat transistor yang

dibias sebagai kelas A.

Dengan penguat kelas A akan didapatkan penguatan dan linearitas yang

tinggi meskipun demikian penguat kelas A memiliki efisiensi yang paling rendah

dibandingkan kelas yang lain. Osilator yang dilengkapi dengan penyangga biasanya

disebut sebagai exciter, dan sebenarnya sudah bisa dipakai sebagai pemancar FM

dengan daya yang relatif kecil.

2.4.1.3 Penguat Daya

Sinyal yang didapat dari exciter masih relatif lemah. Untuk mendapatkan

daya yang lebih besar dibutuhkan penguat daya frekuensi radio, biasanya penguat

daya ini terdiri dari rangkaian penguat kelas C. Pada penguat kelas C, transistor tidak

dibias sama sekali sehingga transistor akan menghantar hanya pada saat ada separuh

gelombang positif pada basisnya (transistor NPN). Walaupun demikian keluaran

penguat kelas C masih dapat menghasilkan gelombang sinus yang utuh karena

adanya induktor pada kolektor akan menghasilkan setengah gelombang.

Selain pemancar itu sendiri, bagian lainnya yang penting dari sistem

pemancar FM adalah antena dan saluran transmisi [6].

2.4.2 Penerima FM

Diagram blok dari penerima FM seperti yang terlihat pada gambar 2.17.

Dari diagram blok FM superheterodyne tersebut, dapat dijelaskan jalannya sinyal

pada rangkaian tersebut adalah sebagai berikut: antena menerima gelombang sinyal

elektromagnetik dari sebuah pesawat pemancar kemudian diperkuat oleh rangkaian

penguat RF. Selanjutnya sinyal dicampurkan di rangkaian pencampur (mixer)

Page 38: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

dengan sinyal frekuensi tinggi yang berasal dari osilator. Frekuensi osilator diatur

untuk menggantikan gelombang pembawa (wave carrier) yang ditekan antara 88 –

108 MHz. selanjutnya keluaran audio dari mixer ini diteruskan ke penguat audio

(AF) untuk diumpankan ke loudspeaker.

Gambar 2.17 Diagram Blok Penerima Radio FM [8]

Sinyal IF kemudian dikuatkan melalui penguat tala IF, sedangkan detector

AGC befungsi untuk menstabilkan amplitudo sinyal IF, yang telah dikuatkan oleh

blok penguat tala IF, amplitudo sinyal yang sudah distabilkan kemudian dibatasi

permukaan amplitudo sinyal yang dianggap lebih besar, oleh blok penguat pembatas

IF, biasanya pada blok pembatas amplitudo, diatur agar mempunyai satu ambang

permukaan kira-kira 1 mV, kemudian sinyal radio dengan amplitudo yang telah

dibatasi masuk ke blok deskriminator untuk memisahkan antara sinyal pembawa

dengan sinyal informasi, dalam blok ini telah diperoleh sinyal informasi yang

sebenarnya, sinyal informasi ini kemudian masuk ke blok de empasis untuk

dilemahkan frekuensi yang tinggi dari sinyal informasi [8].

2.5 ANTARMUKA

Antarmuka atau Interface merupakan suatu rangkaian yang difungsikan

untuk menyesuaikan antara peranti peripheral dengan komputer. Hal ini diperlukan

karena umumnya piranti-piranti peripheral memiliki karakteristik besaran yang

berbeda dengan komputer, seperti besaran tegangan, arus, daya dan terutama

kecepatan pengolahan datanya.

RF AMP

Mixer IF AMP

IF LIMITE AMP

Decriminator

AFC De

Empasis

Detektor AGC

Local Osilator Trimmer Varactor

Volume

AudioSpeaker

Page 39: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Produsen mikrokomputer menyediakan standar antarmuka khusus untuk

masing-masing tipe prosesornya, agar para prosuden peripheral (seperti printer,

plotter, dsb) dapat menghasilkan suatu sistem yang kompetibel. Standar yang paling

terkenal adalah antarmuka V-24 (RS-232C), bus IEC-625/ bus IEC (IEEE-488), dan

antarmuka Centronics. Antarmuka tersebut merupakan standar untuk printer yang

banyak digunakan pada komputer pribadi.

Pada antarmuka V-24 data diteruskan secara serial, atau bit per bit.

Sedangkan pada antarmuka IEC data diteruskan byte per byte setiap hadir pulsa

clock. Transmisi serial memerlukan jumlah saluran yang lebih sedikit, tetapi pada

frekuensi clock yang sama diperlukan waktu yang lebih lama untuk trasmisi data

dibandingkan dengan transmisi paralel yang memerlukan lebih banyak saluran tetapi

lebih cepat dalam trasmisi data.

2.5.1 Antarmuka dengan RS-232

Antarmuka RS 232 hanya dapat dipakai untuk menghubungkan dua

peralatan untuk komunikasi data yaitu: DTE, Data Terminal Equipment (seperti

komputer, printer dsb), dengan DCE, Data Communication Equipment (modem).

Jarak antara kedua peralatan tersebut tidak boleh melebihi 15 meter (data tepatnya

dapat diperoleh pada CCITT-Recommendations V2.8) [9].

Ada 3 hal pokok yang diatur standard RS232, antara lain adalah:

1. Bentuk sinyal dan level tegangan yang dipakai

2. Penentuan jenis sinyal dan konektor yang dipakai

3. Penentuan tata cara pertukaran informasi antara komputer dan alat-alat

pelengkapnya.

2.5.1.1 Karakteristik Sinyal RS-232

Karakteristik sinyal yang diatur terdiri atas level tegangan sinyal, kecuraman

perubahan tegangan (slew rate) dari level tegangan ‘0’ menjadi ‘1’ dan sebaliknya,

serta impedansi dari saluran yang dipakai.

RS232 dibuat pada tahun 1962, jauh sebelum IC TTL populer, maka level

tegangan yang ditentukan untuk RS232 jauh berbeda dengan level tegangan TTL.

Page 40: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Dalam standard RS232, tegangan antara +3 sampai +15 Volt pada Input Line

Receiver dianggap sebagai level tegangan ‘0’, dan tegangan antara –3 sampai

–15 Volt dianggap sebagai level tegangan ‘1’

Tegangan Output Line Driver antara +5 sampai +15 Volt untuk menyatakan

level tegangan ‘0’, dan tegangan antara –5 sampai –15 Volt untuk menyatakan

level tegangan ‘1’

Beda tegangan sebesar 2 Volt ini disebut sebagai noise margin dari RS232

Gambar 2.18 Level Tegangan RS232 [10]

Untuk mengurangi kemungkinan terjadinya gangguan ‘cross talk’ antara

kabel saluran sinyal RS232, maka kecuraman perubahan tegangan sinyal dibatasi

tidak melebihi 30 Volt/mikro-detik. (Makin besar kecuraman sinyal, makin besar

pula kemungkinan terjadi ‘cross talk’). Di samping itu ditentukan pula kecepatan

transmisi data seri tidak boleh lebih besar dari 20 KiloBit/Detik.

Impedansi saluran dibatasi antara 3 Kilo-Ohm sampai 7 Kilo-Ohm, dalam

standard RS232 yang pertama ditentukan pula panjang kabel tidak melebihi 15 Meter

(50 feet), tapi ketentuan ini sudah di-revisi pada standard RS232 versi ‘D’. Dalam

ketentuan baru tidak lagi ditentukan panjang kabel maksimum, tapi ditentukan nilai

kapasitansi dari kabel tidak boleh lebih besar dari 2500 pF, sehingga dengan

menggunakan kabel kualitas baik bisa dicapai jarak yang lebih dari 50 feet.

Page 41: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

2.5.1.2 Menghubungkan TTL ke RS-232

IC digital, termasuk mikrokontroler, umumnya bekerja pada level tegangan

TTL, yang dibuat atas dasar tegangan catu daya +5 Volt.

Rangkaian input TTL menganggap tegangan kurang dari 0,8 Volt sebagai level

tegangan ‘0’ dan tegangan lebih dari 2.0 Volt dianggap sebagai level tegangan

‘1’. Level tegangan ini sering dikatakan sebagai level tegangan TTL

Untuk menjamin output bisa diumpankan ke input dengan baik, tegangan output

TTL saat level ‘0’ dijamin lebih rendah dari 0,4 Volt, atau 0,4 lebih rendah dari

tegangan yang dituntut oleh input TTL. Sedangkan tegangan output TTL pada

saat level ‘1’ dijamin lebih tinggi dari 2,4 Volt, atau 0,4 Volt lebih tinggi dari

tegangan yang dituntut oleh input TTL

Beda tegangan sebesar 0,4 Volt ini disebut sebagai noise margin dari TTL.

Gambar 2.19 Level Tegangan TTL [10]

Hampir semua komponen digital bekerja pada level tegangan TTL, dengan

demikian untuk membentuk saluran komunikasi RS232 diperlukan penyesuaian level

tegangan timbal balik antara TTL-RS232 seperti terlihat dalam Gambar 2.20 IC

MC1488 adalah RS232 Line Driver, berfungsi mengubah level tegangan TTL ke

level tegangan RS232, sedangkan IC MC1489 adalah RS232 Line Receiver,

berfungsi mengubah level tegangan RS232 ke level tegangan TTL. Agar bisa bekerja

pada level tegangan –12 Volt sampai + 12 Volt, tegangan catu daya untuk kedua IC

ini adalah –12 Volt dan +12 Volt, hal ini dirasakan sangat merepotkan. IC MAX232

Page 42: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

dirancang guna mengatasi kerepotan catu daya tersebut. IC ini terdiri atas 2 buah

RS232 Line Driver dan 2 buah RS232 Line Receiver, dan di dalamnya dilengkapi

pula dengan pengganda tegangan DC, sehingga meskipun catu daya untuk IC

MAX232 hanya +5 Volt, tapi sanggup melayani level tegangan RS232 antara –10

Volt sampai +10 Volt.

Gambar 2.20 Perubahan level tegangan TTL-RS232-TTL [10]

Gambar 2.21 Konfigurasi Pin IC MAX 230, 232, 232A [18]

2.5.1.3 Konektor dan Jenis Sinyal RS-232

Selain mendeskripsikan level tegangan seperti yang dibahas di atas, standard

RS232 menentukan pula jenis-jenis sinyal yang dipakai mengatur pertukaran

informasi antara DTE dan DCE, semuanya terdapat 24 jenis sinyal tapi yang umum

dipakai hanyalah 9 jenis sinyal. Konektor yang dipakai pun ditentukan dalam

Page 43: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

standard RS232, untuk sinyal yang lengkap dipakai konektor DB25, sedangkan

konektor DB9 hanya bisa untuk 9 sinyal yang umum dipakai.

Sinyal-sinyal tersebut ada yang menuju ke DCE ada pula yang berasal dari

DCE. Bagi sinyal yang menuju ke DCE artinya DTE berfungsi sebagai output dan

DCE berfungsi sebagai input, misalnya sinyal TD, pada sisi DTE kaki TD adalah

output, dan kaki ini dihubungkan ke kaki TD pada DCE yang berfungsi sebagai

input. Kebalikan sinyal TD adalah RD, sinyal ini berasal dari DCE dan dihubungkan

ke kaki RD pada DTE yang berfungsi sebagai output.

Susunan sinyal RS232 pada konektor DB9 dan konektor DB25 berlainan,

susunan kaki ini dan bahasan di atas semuanya diringkas dalam Tabel 2.7 [10].

Gambar 2.22 Konfigurasi Pin-pin DB 9

Tabel 2.7 Jenis sinyal RS232 yang umum dipakai [10]

2.6 VISUAL BASIC

Basic (Beginners All-purpose Sysmbolic Instruction Code) merupakan suatu

bahasa pemrograman tingkat tinggi yang sangat mudah untuk digunakan, karenanya

banyak programmer profesional memilih Bahasa Basic sebagai bahasa pemrograman

pertamanya. Bahasa Basic sangat mudah untuk dipelajari karena tidak memiliki

aturan-aturan yang terlalu mengikat dalam hal penulisan source programnya.

Page 44: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Sebagai bahasa permrograman, Basic telah mengalami perkembangan yang

cukup pesat, dimulai dari Basic interpreter yang dijalankan pada Personal Computer

XT sampai Turbo Basic dan Quick Basic yang dapat digunakan pada Personal

Computer AT bahkan komputer Pentium seperti sekarang ini.

Microsoft Visual Basic 6.0 merupakan versi terakhir bahasa pemrograman

Basic yang dijalankan dibawah kendali sistem operasi berbasis Windows 9x,

Windows NT, Windows XP, bahasa pemrograman Microsoft Visual Basic

dikhususkan untuk membangun aplikasi yang beroperasi secara stand alone dan

aplikasi yang yang dioperasikan dalam jaringan lokal (Local Area Network).

Microsoft Visual Basic juga merupakan suatu bahasa pemrograman yang mudah dan

menyenangkan untuk digunakan sebagai sarana untuk membuat suatu aplikasi,

karena sifat bahasa pemrograman ini yang berorientasi pada objek (Object Oriented

Programming). Microsoft Visual Basic menyediakan banyak sekali tools dan

kontrol-kontrol, sehingga mendesain aplikasi dengan Microsoft Visual Basic jauh

lebih cepat, lebih mudah dan menyenangkan bila dibandingkan penulisan program

dengan bahasa Basic yang dioperasikan dibawah kendali sistem operasi MS-DOS

sebagai pendahulunya.

Visual Basic merupakan perangkat lunak pemrograman yang banyak

digunakan untuk pengolahan database, desain grafis, sains dan lain-lain. Visual Basic

memiliki tampilan yang jauh lebih baik dibandingkan dengan peranti lunak pengolah

database under DOS, fasilitas yang lebih lengkap, syntax perintah yang mudah

dipahami dan lain-lain.

Page 45: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

SIG

P1.0-P1.5

P3.4

P3.1 Com 2

BAB 3

PERANCANGAN SISTEM

3.1 PERANCANGAN UMUM SISTEM

Blok diagram sistem secara umum pada perancangan ini terdiri dari dua

bagian utama yang terpisah, yaitu sisi mikrokontroler dan sisi komputer. Pada sisi

mikrokontroler terdiri atas rangkaian mikrokontroler AT89C2051, transduser

(pemancar dan penerima) ultrasonik, penampil seven segment, dan pemancar FM.

Sedangkan pada sisi komputer terdapat rangkaian penerima FM, dan antarmuka port

serial dengan komputer. Skema lengkapnya dapat dilihat pada gambar 3.1.

Gambar 3.1 Blok Diagram Umum Sistem

Prinsip kerja umum sistem adalah sebagai berikut, yaitu pin P3.4

mikrokontroler AT89C2051 mengirimkan sinyal pulsa positif selama 3µs ke kaki

SIG (I/O pin) sensor ping. Pemicuan oleh mikrokontroler ini, menyebabkan sensor

ping akan memancarkan gelombang suara 40 KHz (ultrasonik), yang kemudian

merambat melalui air. Gelombang suara ini akan menghasilkan pantulan setelah

mengenai dasar air dan kembali ke sensor. Selama waktu pemancaran sinyal suara

ini, kita lakukan penundaan pada mikrokontroler agar tidak langsung menerima

interferensi sinyal yang dipancarkan, sekaligus menyiapkan mikrokontroler untuk

menerima sinyal informasi pantulan dari sensor. Selanjutnya bila sensor menerima

sinyal pantulan, maka ia akan mengirimkan pulsa rendah melalui kaki SIG (I/O pin)

ke mikrokontroler. Mikrokontroler akan menghitung, selang waktu antara

Transduser Ultrasonik

(Ping sensor)

Mikro

kontroler

AT89C2051

Tx

Seven Segment

Page 46: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

pemancaran dan pantulan sinyal ini, kemudian dikalikan dengan nilai cepat rambat

suara di air, guna memperoleh jarak dasar air dari sensor tersebut (ketinggian air).

Hasilnya ditampilkan pada penampil seven segment di lapangan dan juga dikirimkan

melalui gelombang radio FM, dan diteruskan melalui port serial ke komputer di

ruang pemantauan.

3.2 PERANCANGAN PERANGKAT KERAS

Pada sub bab ini akan dijelaskan tentang bagian dari perangkat keras yang

digunakan dalam perancangan sistem ini. Perangkat keras ini merupakan bagian dari

tiap-tiap blok diagram sistem yang saling mendukung satu dengan yang lainnya.

3.2.1 Rangkaian Sistem Minimum AT89C2051

Dalam perancangan ini digunakan mikrokontroler AT89C2051, karena

mikrokontroler tersebut memiliki 15 bit I/O (port 1 dan 3), dengan kemampuan

komunikasi serial melalui port 3. Hal ini cukup mewakili kebutuhan dari

perancangan sistem, yang hanya memerlukan 7 bit output (salah satunya untuk

komunikasi serial) dan 1 bit input/ ouput (bidirectional).

Sistem minimum AT89C2051 merupakan komponen utama yang digunakan

sebagai pemicu sensor ping untuk membangkitkan gelombang ultrasonik, pengolah

data jarak yang diukur, mengontrol tampilan seven segment dan pengiriman data

serial ke komputer. Rangkaian ini hanya terdiri atas single chip mikrokontroler

AT89C2051, sebuah osilator dan dua buah kapasitor yang berfungsi untuk

menstabilkan frekuensi. Mikrokontroler ini memiliki osilator on-chip yang dapat

digunakan sebagai sumber detak (clock) ke CPU. Untuk mengaktifkannya harus

dipasang sebuah resonator (kristal) diantara kaki-kaki X1 dan X2 pada

mikrokontroler dan dua buah kapasitor yang dihubungkan ke ground. Gambar 3.2

menunjukkan Skema dari rangkaian tersebut.

Mikrokontroler AT89C2051 memiliki dua buah port I/O dua arah yaitu P1

dan P3. Dalam perancangan ini port-port yang digunakan adalah port P1.0 – P1.5

yang dihubungkan ke rangkaian penampil seven segment, port P3.1 terhubung ke

rangkaian pemancar FM, dan port P3.4 terhubung ke rangkaian sensor ping

(pemancar dan penerima gelombang ultrasonik). Pin reset terhubung ke rangkaian

Page 47: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

reset sistem. Rangkaian sistem minimum ini menggunakan osilator kristal 12 MHz

yang berfungsi membangkitkan sinyal clock internal. Jadi setiap satu instruksi MCS-

51 akan dilaksanakan dalam waktu 1 mikro detik.

P30 (RX)P31 (TX)P32 (INT0) P33 (INT1)P34 (T0)P35 (T1)

P37XTAL-1XTAL-2RST

P10

P12P11

P13P14P15P16P17

236789

11541

1213141516171819

Vcc12 MHz

33pF 33pF 10k

10uF

TO PING

TX FMTO SEVENSEGMENT

AT89C2051

Gambar 3.2 Rangkaian Sistem Minimum AT89C2051

3.2.2 Sensor Ping)))

Transduser ultrasonik dipilih sensor Ping))) buatan Parallax. Inc, karena

sensor tersebut sudah dipabrikasi dan dikemas dengan baik, sehingga dapat

mengurangi inteferensi sinyal yang dipancarkan dan diterima. Selain itu sensor

tersebut juga cukup murah dan sangat mudah digunakan, karena hanya menggunakan

1 pin I/O sebagai pemicu dan penerima informasi sinyal pantulan yang dihubungkan

ke mikrokontroler.

Gambar 3.3 Konfigurasi Pin Sensor Ping)))

Page 48: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Gambar blok rangkaian pemancar dan penerima gelombang ultrasonik tidak

dibahas secara detail, karena rangkaian tersebut sudah merupakan suatu kesatuan

dari hasil pabrikasi. Konfigurasi pin sensor ping seperti terlihat pada gambar 3.3.

Sensor ini memiliki 3 pin, yang masing-masingnya dihubungkan ke Ground, Vcc

(5V) dan pin ketiga merupakan pin I/O (SIG) dihubungkan ke P3.4 mikrokontroler.

3.2.3 Rangkaian Penampil Seven Segment

Rangkaian penampil seven segment menggunakan IC dekoder 74LS247.

Chip ini merupakan dekoder BCD (Binary Code Decimal) ke seven segment. IC

74LS247 mempunyai 4 pin masukan dan 7 pin keluaran, dengan keluaran aktif

rendah (LOW). Keluaran dari port 1 mikrokontroler sebagian dihubungkan ke pin 1,

2, 6, dan 7 dari dekoder dan sebagian lagi dihubungkan ke transistor yang berfungsi

sebagai saklar untuk menghidupkan seven segment.

Gambar 3.4 Rangkaian Penampil Seven segment

Seven segment yang digunakan dalam perancangan ini merupakan

konfigurasi common anode. Hal ini dilakukan guna menyesuaikan dengan logika

keluaran IC 74LS247 yang berlogika rendah. Sedangkan trasnsistor yang digunakan

untuk mengaktifkan seven segment dipilih transistor tipe PNP C9012. Transistor ini

disesuaikan dengan kemampuan mikrokontroler yang aktif low. Penggunaan IC

74LS247 yaitu untuk memudahkan proses mencetak angka dari format BCD yang

D C CM1 BA

E F CM2 GP

D C CM1 BA

E F CM2 GP

LT

C

B1/RB0

B

RB1

D

A

e

c

f

b

g

d

aP1.0

P1.5

P1.4

P1.3P1.2P1.1

Port 1 Mikrokontroler 74LS247

Seven Segmen

Seven Segmen

2K2

2K2

330

330

Vcc

PNP9012

Page 49: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

dipahami mikrokontroler ke format desimal yang digunakan seven segment, dan

lebih mudah dipahami oleh pemantau. Selain itu dapat minimalisasi pemanfaatan pin

pada mikrokontroler, karena proses untuk mencetak nilai jarak yang diukur pada dua

buah display seven segment hanya menggunakan enam buah pin mikrokontroler.

3.2.4 Rangkaian Pemancar FM

Untuk komunikasi dengan komputer digunakan port serial, karena

kemampuan tranmisinya yang lebih jauh dan lebih hemat dalam penggunaan pin

(hanya 1 bit untuk memancarkan informasi). Sedangkan jalur transmisi radio FM

digunakan untuk memisahkan (wireless) antara sensor di lapangan dengan pemantau

di ruang kontrol. Penggunaan pemancar FM karena noise yang dihasilkan kecil.

Pada perancangan ini, hanya dibuat blok exciter saja yang terdiri dari blok

osilator dan blok penyangga (buffer) yang memiliki standar transmitter daya

rendah. Sedangkan blok penguat daya (booster) tidak dirakit dalam perancangan ini,

hal ini dimaksudkan agar pemancar FM yang digunakan nantinya tidak terlalu

mempengaruhi gelombang FM dari stasiun pemancar lain yang juga berada di jalur

frekuensi komersial (88-108 MHz). Gambar 3.5 menunjukkan rangkaian transmitter

FM yang digunakan.

5K6

47uF/10V

5K6

15K 220pF10pF

C9018

1K 10pF

10pF

33pF 100nF 47K

47K

C930

C93068pF 68pF

Vcc

To P3.1 uC

Osilator Buffer

Exciter Gambar 3.5 Rangkaian Transmitter FM

Dari rangkaian pemancar FM tersebut dapat dilihat bahwa yang menjadi inti

dari sebuah pemancar adalah osilator. Data serial keluaran dari pin TXD (P3.1)

Page 50: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

sistem minimum diumpankan ke jalur masukan pemancar. Kemudian pada bagian

modulator data serial ini dimodulasikan dengan gelombang pembawa yang

dihasilkan oleh blok osilator. Proses modulasi sinyal digital dilakukan dengan

menumpangkan sinyal data digital ke sinyal analog yang dibangkitkan oleh osilator.

Sinyal analog yang dihasilkan adalah sinyal sinus yang merupakan bentuk sinyal

pembawa dengan frekuensi yang berbeda. Perubahan frekuensi sinyal pembawa ini

terjadi karena dikendalikan oleh tegangan sinyal yang diinputkan ke jalur pemancar,

karena rangkaian pemancar ini tergolong jenis VCO (Voltage Controlled Oscillator),

dimana input tegangan dc dapat mengendalikan frekuensi keluaran osilator

3.2.5 Penerima FM

Untuk rangkaian penerima dalam perancangan ini digunakan receiver FM

yang banyak dijual di pasaran. Pemanfaatan rangkaian receiver yang sudah jadi ini

dilakukan untuk mendapatkan kemudahan dalam proses pembuatan sistem

perancangan keseluruhan, dikarenakan perancangan sistem yang akan dibuat ini

menggunakan media transmisi gelombang radio pada jalur FM komersial (88-108

MHz). Dalam hal ini penulis tidak membahas mengenai rangkaian dan jalur sistem

penerimaan data secara keseluruhan, karena rangkaian yang digunakan adalah

rangkaian radio tuner FM. Berikut ini adalah diagram blok dari rangkaian penerima

radio FM.

Gambar 3.6 Diagram Blok Penerima FM

Dari diagram blok dapat dilihat gelombang radio ditangkap oleh antena.

Kegunaan antena adalah sebagai bagian yang dapat menangkap radiasi gelombang

Penala Mixer IF

Osilator

Detektor Rangkaian Antarmuka

Serial

Page 51: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

radio, dan juga mampu meradiasikan gelombang radio ke segala arah. Kemudian

oleh penala, sinyal yang ditangkap antena ditentukan frekuensinya.

Selanjutnya frekuensi radio dimasukkan ke blok mixer guna mendapatkan

frekuensi IF sebesar 10,7 MHz, dimana mixer mendapatkan masukan pula dari blok

osilator. Osilator berfungsi untuk menghasilkan frekuensi yang besarnya Ftala-10,7

MHz, kemudian keluaran mixer yang merupakan frekuensi IF (menengah) dikuatkan

oleh blok IF dan frekuensi IF yang masih mengandung sinyal informasi ini

dimasukkan ke blok detektor guna memisahkan sinyal informasi dengan gelombang

pembawa. Selanjutnya sinyal informasi diinputkan ke rangkaian antarmuka serial,

sebelum masuk ke komputer.

3.2.6 Rangkaian Antarmuka Port Serial

Rangkaian ini dibutuhkan untuk menyesuaikan level tegangan logika antara

saluran komunikasi serial dengan komputer agar dapat terjadinya komunikasi. Pin

RXD dari Max 232 dihubungkan dengan output dari rangkaian detektor sinyal radio

FM. Pin 7 (T2out) dihubungkan dengan pin 2 (RXD) dari DB 9. Sedangkan pin 8

(R2in) dihubungkan ke pin 3 (TXD) dari DB 9.

Gambar 3.7 Rangkaian Antarmuka dengan Kanal RS-232

3.3 PERANCANGAN PERANGKAT LUNAK

Perancangan perangkat lunak (software) dalam penelitian ini diperlukan

agar sistem yang direncanakan dapat bekerja dengan baik. Dalam penelitian ini

diperlukan dua perangkat lunak, yaitu: Program pertama yang akan diinputkan pada

Page 52: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

mikrokontroler, guna mengontrol pemancaran dan penerimaan gelombang ultrasonik

pada sensor ping, perhitungan ketinggian air berdasarkan informasi dari sensor,

menampilkan hasilnya pada seven segment, dan mengirimkan informasinya ke

komputer melalui port serial dan transmisi radio FM. Program ini dibuat dengan

bahasa assembly MCS-51 dan dimasukkan ke dalam Flash PEROM mikrokontroler.

Sedangkan program yang kedua menggunakan bahasa Visual Basic 6.0, digunakan

pada komputer guna menampilkan informasi ketinggian air dalam bentuk grafik, juga

menyimpan datanya ke dalam tabel.

3.3.1 Program Assembly MCS-51

Diagram Alir Program MCS-51 yang diinputkan pada Mikrokontroler

AT89C2051 dapat dilihat pada gambar 3.8. program tersebut diinputkan ke dalam

memori flash PEROM mikrokontroler dengan menggunakan downloader. Tetapi

sebelumnya harus dilakukan pengkonversian ke dalam bahasa mesin (heksadesimal)

agar dimengerti oleh mikrokontroler.

Program diawali dengan menginisialisasikan register-register kontrol

mikrokontroler yang diperlukan untuk mengaktifkan timer dan melakukan

komunikasi serial. Selanjutnya timer 1 di-clear dan diaktifkan guna melaksanakan

komunikasi serial dengan komputer. Timer 1 mikrokontroler difungsikan sebagai

penghasil baud rate pada komunikasi serial. Selanjutnya mikrokontroler me-reset pin

sensor ping, dilanjutkan dengan memicu sensor dengan logika high (1) selama 3µs

agar sensor memancarkan gelombang ultrasonik. Setelah itu dikirimkan kembali

logika low (0) kepada sensor ping dan dilakukan penundaan selama 750µs untuk

menyiapkan sensor ping menerima pantulan gelombang ultrasonik. Selanjutnya timer

0 diaktifkan, sambil menunggu pantulan dari gelombang ultrasonik. Bila nilai timer 0

melimpah (TF0 =1) maka program akan melakukan prosedur perhitungan. Kondisi

ini dianggap jarak yang diukur di luar kapasitas sensor. Tetapi bila timer 0 tidak

melimpah dan sensor ping mengirimkan logika low (0) kepada mikrokontroler,

berarti sensor telah menerima pantulan gelombang. Timer 0 dihentikan, dan

dilakukan perhitungan berdasarkan informasi tersebut untuk menentukan jarak antara

dasar air dan sensor. Selanjutnya informasi jarak yang diperoleh ditampilkan pada

seven segment di lapangan, dan diteruskan ke komputer melalui komunikasi serial

Page 53: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

wireless dengan menggunakan transmisi radio FM, untuk selanjutnya disimpan dan

ditampilkan dalam bentuk grafik.

Gambar 3.8 Diagram Alir Program MCS-51 Pada Mikrokontroler

Tampilkan ke Seven Segment

Kirim ke Komputer

End

Ya

Start

Inisialisasi Timer & Serial

CLR & AktifkanTimer 1

Tunda 750 µs

TF0 = 1?

TR0 = 1

Ping = 0

SET P3.4Selama 3µs

CLR TR0

Hit Jarak

Tdk

P3.4= 0?

Page 54: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

3.3.2 Program Visual Basic

Pada sisi komputer data yang diperoleh dari penerima radio FM, selanjutnya

diinputkan ke port serial komputer melalui konektor DB 9, setelah terlebih dahulu

disesuaikan level tegangannya dengan TTL. Program Visual Basic pada komputer,

diawali dengan pengenalan port serial komputer kepada program. Selanjutnya setiap

menit, program akan mengambil data yang ada di register buffer serial komputer.

Data tersebut kemudian disimpan dan bila diperlukan dapat ditampilkan dalam

bentuk grafik yang lebih mudah dipahami oleh pemantau di pusat. Diagram alir

program Visual Basic di komputer dapat dilihat pada gambar 3.9

Gambar 3.9 Diagram Alir Program Visual Basic Pada Komputer

.

Start

Inisialisasi Serial

Ambil Data / menit

Tampilkan sebagai grafik

Simpan Data

End

Page 55: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

BAB 4

PENGUJIAN DAN PEMBAHASAN

Bab ini berisi penjelasan tentang metode dan prosedur pengujian yang

dilakukan serta hasil yang diperoleh dari masing-masing blok sistem tersebut.

Pengujian dan pembahasan dilakukan untuk mengetahui kesesuaian antara

perancangan awal sistem terhadap alat yang akan dihasilkan, dapat bekerja dengan

baik atau tidak. Pengujian yang dilakukan secara bertahap per blok-blok sistem dari

keseluruhannya. Pengujian dimulai dengan memastikan setiap komponen yang

digunakan dalam kondisi bagus (dapat bekerja dengan baik), kemudian mengecek

setiap jalur yang terhubung dengan komponen yang digunakan diatas papan PCB

telah terkoneksi, dimana rangkaiannya disesuaikan dengan gambar skematiknya.

Pengujian yang dilakukan meliputi pengujian sensor ping sebagai rangkaian

pemancar dan penerima ultrasonik, sistem minimum AT89C2051, penampil seven

segment, komunikasi data serial antara mikrokontroler dengan komputer dan

pengujian sistem secara keseluruhan.

4.1 PENGUJIAN SENSOR PING)))

Sensor ping diuji dengan bantuan mikrokontroler untuk memicunya selama

3 µs, dan setelah menerima sinyal pantulan, mikrokontroler menghidupkan lampu

led di port 1 sesuai dengan nilai timer 0 nya. Gambar rangkaiannya dapat dilihat pada

gambar 4.1, dan pada mikrokontroler diinputkan listing progran sebagai berikut:

ORG 00H PANCAR: MOV TMOD,#01H CLR P3.4 MOV TH0,#00H MOV TL0,#00H SETB P3.4 NOP NOP CLR P3.4 MOV R0,#5

Page 56: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

TUNDA: MOV R1,#37 DJNZ R1,$ DJNZ R0,TUNDA SETB P3.4 SETB TR0 TUNGGU: JB P3.4,$ CLR TR0 HIDUP: MOV A,TL0 MOV P1,A CALL DELAY CALL DELAY CALL DELAY MOV P1,0FFH CALL DELAY RET DELAY: MOV R2,#8 DELAY1: MOV R3,#0FFH DELAY2: MOV R4,#0FFH DJNZ R4,$ DJNZ R3,DELAY2 DJNZ R2,DELAY1 RET END

Gambar 4.1 Rangkaian Uji Sensor Ping

Page 57: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Pengujian dilakukan dengan cara menggerakan sensor ping mendekati dan

menjauhi suatu penghalang (tembok), dan diperoleh nyala led yang berubah-ubah

sesuai dengan nilai byte rendah (bit TL0) dari timer 0. Hal ini menunjukkan bahwa

sensor ping (dengan bantuan mikrokontroler) telah berfungsi dengan baik, karena

perubahan jarak yang dilakukan terhadap sensor direspon dengan perubahan nyala

led (nilai timer 0). Namun dari pengujian ini kita tidak dapat menentukan jaraknya,

karena belum dilakukan perhitungan. Sensor Parallax Ping memiliki jarak

pengukuran maksimum 12 meter, untuk medium perambatan air yang memiliki

cepat rambat 1440 m/s.

4.2 PENGUJIAN RANGKAIAN PENAMPIL SEVEN SEGMENT

Rangkaian penampil seven segment diuji bersamaan dengan IC 74LS247

dengan menggunakan rangkaian seperti pada gambar 4.2. Input A, B, C, dan D dari

IC 74LS247 diberikan kombinasi nilai seperti yang ditunjukkan pada tabel 4.1.

Sedangkan kedua basis transistor dihubungkkan ke ground sehingga kedua display

seven segment dapat hidup secara bersamaan dan menunjukkan bilangan yang sama.

Rangkaian diuji untuk menampilkan nilai 0 sampai 9. kombinasi input, output dan

keluaran seven segment secara lengkap dapat dilihat pada tabel 4.1

Gambar 4.2 Rangkaian Uji Penampil Seven Segment

Page 58: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Tabel 4.1 Kombinasi Input, Output dan Keluaran seven segment

Angka D C B A a b c d e f g 7- Seg

0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 1 1 1 1 2 0 0 1 0 0 0 1 0 0 1 0 3 0 0 1 1 0 0 0 0 1 1 0 4 0 1 0 0 1 0 0 1 1 0 0 5 0 1 0 1 0 1 0 0 1 0 0 6 0 1 1 0 1 1 0 0 0 0 0 7 0 1 1 1 0 0 0 1 1 1 1 8 1 0 0 0 0 0 0 0 0 0 0 9 1 0 0 1 0 0 0 1 1 0 0

4.3 PENGUJIAN TRANSMISI DATA SERIAL

Pengujian transmisi data serial dilakukan dengan menggabungkan beberapa

blok rangkaian secara bersamaan. Diantaranya adalah sistem minimum AT89C2051,

rangkaian pemancar dan penerima FM dan rangkaian antarmuka serial. Sebelum

dilakukan transmisi data serial dengan menggunakan gelombang radio FM, baik

pemancar maupun penerima radio harus di set (tune) terlebih dahulu pada frekuensi

yang sama, agar di dapatkan hasil yang akurat

Pengesetannya dilakukan dengan cara memutar inti ferit pada koker (bagian

pemancar) atau memutar bagian penala frekuensi (tuning) pada pesawat penerima

radio FM. Frekuensi yang matching antar pesawat pemancar dan penerima ditandai

dengan timbulnya suara dengung yang keras pada pesawat penerima radio bila

dihubungkan dengan loudspeaker.

Pengujian awal diakukan terhadap jarak transmisi FM. Hal ini dilakukan

dengan memberikan data/ informasi berupa suara pada rangkaian transmiter FM.

Kemudian dengan menggunakan sebuah receiver radio FM dilakukan pengamatan

terhadap jarak maksimun yang dapat ditempuh sinyal dengan kualitas suara yang

masih baik. Pada pengujian ini diperoleh jarak maksimum dari pemancar FM ini

adalah 15M. Hal ini karena pemancar yang digunakan berdaya rendah, sehingga

jarak yang dicapai pun tidak terlalu jauh.

Page 59: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Selanjutnya pengujian dilakukan dengan memberikan sinyal digital yang

dibangkitkan oleh mikrokontroler. Mikrokontroler mengirimkan bilangan 0 (30H) –

9 (39H). Mikrokontroler di program dengan listing program berikut ini.

ORG 00H MULAI: MOV TMOD,#21H MOV TH1,#0F3H MOV SCON,#40H SETB TR1 MOV R0,#10H MOV A,#30H SIMPAN: MOV @R0,A INC R0 INC A CJNE A, #3AH, SIMPAN MOV R0,#10H SERIAL: MOV A,@R0 INC R0 MOV SBUF,A CALL DELAY JNB TI,$ CLR TI CJNE A, #3AH, SERIAL SJMP MULAI DELAY: MOV R1,#8 DELAY1: MOV R2,#0FFH DELAY2: MOV R3,#0 DJNZ R3,$ DJNZ R2,DELAY2 DJNZ R1,DELAY1 RET END Dari pengujian ini didapatkan bahwa komunikasi serial (mikrokontroler,

transmiter & receiver FM, dan rangkaian antarmuka) telah berjalan dengan baik, hal

ini terlihat dengan ditampilkannya bilangan 0 – 9 pada program hyper terminal pada

komputer. Gambar 4.3 dan 4.4 menunjukkan rangkaian pemancar FM dan penerima

Page 60: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

FM pada pengujian transmisi data serial. Tampilan yang diperoleh pada komputer

melalui program Hyper Terminal seperti yang diperlihatkan pada gambar 4.5

Gambar 4.3 Rangkaian Pemancar FM Pada Uji Transmisi Data Serial

Gambar 4.4 Rangkaian Penerima FM Pada Uji Transmisi Data Serial

Page 61: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Gambar 4.5 Tampilan Hyper Terminal Pada Uji Transmisi Data Serial

4.4 PENGUJIAN SISTEM KESELURUHAN

Pengujian sistem secara keseluruhan yaitu melakukan pengujian terhadap

seluruh sistem dari perancangan yang telah dibuat, pengujian keseluruhan ini

dilakukan setelah pengujian terhadap masing-masing blok sistem selesai. Dalam

pengujian ini sistem perancangan terdiri dari dua modul.

Pertama modul yang berada pada sisi mikrokontroler, berfungsi sebagai

pemancar dan penerima gelombang ultrasonik, penghitung jarak ketinggian air,

menampilkannya pada seven segment dan mengirimkan hasil tersebut ke komputer

melalui transmisi data serial. Sedangkan modul kedua yaitu sisi komputer berfungsi

sebagai alat penampil hasil pemantauan ketinggian air secara real time di lapangan

dalam bentuk grafik, dan menyimpan data tersebut untuk keperluan selanjutnya.

Skema rangkaian lengkapnya dapat dilihat pada lembar lampiran A.1. Berikut ini

adalah blok diagram dari sistem keseluruhan yang terbagi atas dua buah modul.

Gambar 4.6 Diagram Blok Sistem Pada Sisi Mikrokontroler

Transduser Ultrasonik

Mikro

kontroler

AT89C2051

Tx

Seven Segment

Page 62: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Gambar 4.7 Diagram Blok Sistem Pada Sisi Komputer

Pertama kali setiap sub blok sistem diberi tegangan catu sebesar 12V untuk

rangkaian transmitter dan receiver radio FM, sedangkan sistem minimum

mikrokontroller, sensor ping dan seven segment diberi tegangan 5V. Kemudian

dilakukan penempatan lokasi frekuensi yang akan dipergunakan sebagai jalur

transmisi data, jalur frekuensi yang dipilih haruslah jalur frekuensi yang masih

kosong, agar tidak terjadinya bentrok frekuensi dengan pemancar lainnya, yang juga

memanfaatkan jalur frekuensi FM.

Untuk pengujian sistem secara keseluruhan ini dilakukan pada lokasi air

tawar yang jernih dengan permukaan yang cenderung stabil (tidak bergelombang).

Adapun hasil pengujian yang telah dilakukan dapat dilihat pada tabel 4.2.

Tabel 4.2 Hasil Pengujian Sistem

Metoda pengukuran yang dilakukan (Meter)

Elektrik Manual

X1 X2 X3 XRataan %Kesalahan

0.10 0.08 0.11 0.12 0.10 0.00

0.25 0.27 0.25 0.26 0.26 4.00

0.30 0.30 0.33 0.29 0.31 3.33

0.50 0.52 0.49 0.51 0.51 2.00

1.05 1.07 1.06 1.00 1.04 0.95

1.30 1.28 1.30 1.28 1.29 0.77

1.50 1.50 1.45 1.52 1.49 0.67

2.00 2.05 2.03 1.99 2.02 1.00

2.50 2.50 2.47 2.51 2.49 0.40

Rx

Page 63: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Data yang ditampilkan pada tabel 4.2 tersebut merupakan data tampilan

pada komputer yang menampilkan 4 digit data (2 digit desimal). Sedangkan tampilan

sistem yang digunakan di lapangan (seven segment) hanya menggunakan satu digit

untuk satuan dan satu digit untuk desimal, maka resolusi yang dapat ditampilkan di

lapangan adalah 0.1 m. Dari hasil pengujian tersebut dapat dilihat bahwa nilai

ketelitian pengukuran antara 0 – 0.05 m, dengan tingkat persentase kesalahan antara

0 % - 4 %. Nilai ini dianggap cukup mewakili keandalan sistem guna memantau

ketinggian air. Karena ketinggian air merupakan parameter yang tidak cepat berubah

dengan signifikan.

00.5

11.5

22.5

33.5

44.5

0.1 0.25 0.3 0.5 1.05 1.3 1.5 2 2.5

Ketinggian (m)

% K

esal

ahan

Manual X1 X2 X3 XRataan %Kesalahan

Gambar 4.8 Grafik Perbandingan Hasil Pengujian Sistem

Namun proses pengiriman data digital melalui transmisi gelombang radio

sekali-kali juga mengalami kegagalan penerimaan data oleh rangkaian receiver, ini

disebabkan karena terjadinya noise atau bergesernya lokasi penempatan frekuensi

antara transmitter dan receiver, karena pada rangkaian transmitter proses pengaturan

frekuensinya menggunakan induktor, yang sekali-kali bisa terjadinya pergeseran

frekuensi modulasi.

Terjadinya noise atau bergesernya penempatan frekuensi ini bisa

disebabkan oleh terlalu banyaknya media yang melewati daerah jalur transmisi

gelombang radio FM, atau juga oleh penempatan posisi antena yang kurang baik,

sehingga receiver tidak bisa menerima data dari transmitter dengan baik (bersih).

Disamping itu rangkaian pemancar yang tergolong pemancar dengan daya kecil, juga

sangat rentan terhadap gangguan frekuensi lain dengan daya yang lebih besar.

Page 64: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Tabel 4.3 Perbandingan data tampilan pada seven segment dan komputer

Tampilan

7-Segment Komputer

0.1 00.10

0.2 00.28

0.3 00.30

0.5 00.70

1.0 01.05

1.3 01.00

1.5 01.50

2.0 03.20

2.5 02.50

Dari tabel 4.3 tersebut dapat kita lihat bahwa sering terjadinya kesalahan

pengiriman data dengan menggunakan media transmisi radio FM, hal ini disebabkan

karena kurang stabilnya rangkaian osilator yang dirancang sehingga seringnya

terjadinya pergeseran frekuensi. Sehingga diterimanya data yang salah oleh

rangkaian penerima FM dan komputer.

Page 65: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

BAB 5

PENUTUP

5.1 KESIMPULAN

Berdasarkan hasil penelitian dan pengamatan yang telah dilakukan terhadap

aplikasi sistem pemantauan ketinggian air secara real time berbasis mikrokontroler

AT89C2051, maka dapat ditarik beberapa kesimpulan diantaranya:

1. Ketinggian air dapat diukur secara elektrik dengan memanfaatkan

transduser ultrasonik, mikrokontroler dan beberapa komponen pendukung

lainnya.

2. Transduser ultrasonik mendeteksi jarak suatu benda dengan menggunakan

prinsip pantulan suara (echo sounder).

3. Pemantauan ketinggian air secara real time dapat dilakukan dengan

menggunakan mikrokontroler untuk mengkalkulasikan jarak serta komputer

untuk menampilkan dan menyimpan data.

4. Komunikasi antara mikrokontroler dan komputer melalui port serial dapat

dilakukan dengan menggunakan rangkaian antarmuka MAX 232.

5. Sistem yang dirancang dan dibuat dalam penelitian ini dapat bekerja cukup

baik untuk nilai pengukuran 0.10 – 2.50 meter, dengan nilai ketelitian

pengukuran antara 0 – 0.05 meter, dan tingkat persentase kesalahan antara

0 % - 4 %.

5.2 SARAN

Adapun masukan-masukan yang dapat diberikan untuk pengembangan

sistem ini ke depan adalah sebagai berikut:

1. Sensor dengan daya pancar yang lebih baik dan tahan terhadap air, (seperti

sensor sonar) dapat digunakan untuk pengukuran ketinggian air untuk hasil

pengukuran yang lebih optimal.

2. Guna memperoleh jarak transmisi yang lebih jauh, pada rangkaian pemancar

FM dapat ditambahkan rangkaian penguat daya (Booster).

Page 66: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

3. Sistem transmisi data sebaiknya dapat menggunakan media transmisi

wireless lainnya yang memiliki kemampuan lebih baik dan jarak pancar

yang lebih jauh, sehingga sistem dapat lebih realistis untuk diterapkan.

4. Sebaiknya untuk pengembangan ke depan dapat ditambahkan sensor-sensor

lain sehingga sistem dapat lebih efektif bila difungsikan sebagai sistem

peringatan dini akan bencana alam.

5. Sebaiknya dipikirkan sumber catu daya alternatif lainnya, yang dapat

bekerja lebih optimal dan tidak terlalu memerlukan perawatan (seperti solar

cell) sehingga sistem dapat lebih mandiri untuk diterapkan sebagai sistem

pemantau.

Page 67: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

Page 68: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

DAFTAR PUSTAKA [1] Giancoli, Douglas C, Physic, Prentice Hall Inc, 1996. [2] Christanto, D & Pusporini, K, Panduan Dasar Mikrokontroller Keluarga MCS-

51, Innovative Electronics, Surabaya, 2004 [3] Putra, Agfianto E, Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi,

Penerbit Gava Media, Yogyakarta, 2004 [4] Sutanto, B, “Timer dan Counter dalam MCS51”, Tabloid Mingguan

Komputer, Elektronika & Teknologi (KOMPUTEK), [Online]. Available: http://alds.stts.edu/Timer dan Counter.htm, 2001

[5] Nalwan, Andi P, Teknik Antarmuka dan Pemrograman Mkrokontroller AT89C51, PT. Elex Media Komputindo, Jakarta, 2003

[6] Hartanto, D, “Pemancar FM 12 Watt Bagian (I)”, [Online]. Available: http://www.bogor.net/idkf/idkf-1/community-broadcasting/pemancar-fm/Pemancar FM 12 Watt bagian I.htm, 2001

[7] Langley, Graham, Prinsip Dasar Telekomunikasi, PT Multimedia, Jakarta,1986 [8] Aksin, M, Desain Elektronika Seri Radio Frekuensi, Effhar, Semarang, 2004 [9] Link, Wolfgang, Pengukuran, Pengendalian, dan Pengaturan Dengan PC, PT

Elex Media Komputindo, Jakarta, 1993 [10] Sutanto, B, Teknik Interface5-Komunikasi Seri Asinkron(D) ‘RS232 dan

Modem’, Tabloid Mingguan Komputer, Elektronika & Teknologi (KOMPUTEK), [Online]. Available: http://alds.stts.edu/DIGITAL /Interface.htm, 2001

[11] Carr, Joseph J, Sensor and Circuits: Sensors, transducers, and supporting circuits for electronic instrumentation, measurement, and control, PTR Prentice Hall, New Jersey, 1993

[12] Caltron Indonesia, “Mengenal Sensor dan Actuator”, [Online]. Available: http://www.caltron.co.id/, 2006

[13] Senix Corporation Non-Contact Ultrasonic Distance Sensors, [Online]. Available: http://www.ultrasonicsensors.com/applications.htm, 2005

[14] Parallax, Inc, “PING)))™ Ultrasonic Range Finder (#28015)”, [Online]. Available: http://www.parallax.com/dl/docs/prod/acc/PingDocs.pdf , 2005

[15] Atmel Corporation, “8-bit Microcontroller with 2K Bytes Flash’ AT89C2051’”, [Online]. Available: www.atmel.com/literature , 2006

[16] Texas Instruments Incorporated, SN5446A, ’47A, ’48, SN54LS47, ’LS48, ’LS49, SN7446A, ’47A, ’48, SN74LS47, ’LS48, ’LS49, BCD-TO-SEVEN-SEGMENT DECODERS/DRIVERS, 1999

[17] RTC-UI Team, “Pemancar FM, Elektro Indonesia”, [Online]. Available: http://www.elektroindonesia.com/elektro/elek29.html, 2000

[18] Maxim Integrated Products, “+5V-Powered, Multichannel RS-232 Drivers/Receivers”, 2001

Page 69: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

DAFTAR RIWAYAT HIDUP

DATA PRIBADI

Nama : Nurul Afdhal

NIM : 0041511333

Tempat/Tanggal Lahir : Banda Aceh, 28 Januari 1982

Jenis Kelamin : Laki-laki

Alamat : Jl. Punge Blang Cut No.12

Kota : Banda Aceh

Telepon/Handphone : 081360332726

Email : [email protected]

Nama Orangtua : M.Adan / Nilawati

Alamat : Jl. Punge Blang Cut No.12

Kota : Banda Aceh

Telepon : (0651) 40195

AKADEMIK

Tahun Nama Institusi Pendidikan

2000 – 2006 Teknik Elektro UNSYIAH - NAD

1997 – 2000 SMUN 2 Modal Bangsa - Aceh Besar

1994 – 1997 SMPN 1 - Banda Aceh

1988 – 1994 SDN 2 - Banda Aceh

PENGALAMAN KERJA

Tahun Jenis Pekerjaan

2002 – 2006 Asisten Laboratorium Elektronika, Jurusan Teknik

Elektro UNSYIAH

2005 Data Entry Pada Departement Kesehatan IRC-CARDI

2004 Job Training di PT. Semen Andalas Indonesia

Page 70: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

PENGALAMAN PELATIHAN / KURSUS

Tahun Nama Kegiatan

2006 Instruktur Pelatihan Pengenalan dan Aplikasi

Mikrokontroler, di Lab. Elektronika Teknik Elektro

UNSYIAH

2003 Instruktur Pelatihan Protel dan Perancangan PCB, di

Lab. Elektronika Teknik Elektro UNSYIAH

PENGALAMAN ORGANISASI

Tahun Nama Organisasi

2002 Himatektro Unsyiah

Page 71: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

LAMPIRAN A HASIL PENELITIAN

Page 72: LEvel WAter Monitoring system

LAMPIRAN A.1 Skema Rangkaian Lengkap Sistem

Page 73: LEvel WAter Monitoring system

LAMPIRAN A.2. Tampilan Software

Page 74: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

LAMPIRAN A.3. Foto Alat

Foto Sistem Keseluruhan

Foto Pada Sisi Komputer

Foto Pada Sisi Mikrokontroler

Page 75: LEvel WAter Monitoring system

Sistem Pemantauan Ketinggian Air Secara Real Time Berbasis Mikrokontroler AT89C2051

LAMPIRAN B DATA SHEET KOMPONEN

Data Sheet AT89C2051 Data Sheet Sensor Ping Data Sheet Dekoder 74LS247 Data Sheet MAX 232