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
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
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
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
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
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.
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.
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
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
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
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
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
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
Sistem Pemantauan Ketinggian Air Secara Real Time
Berbasis Mikrokontroler AT89C2051
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
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.
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.
Sistem Pemantauan Ketinggian Air Secara Real Time
Berbasis Mikrokontroler AT89C2051
1.6 SISTEMATIKA PENULISAN
Penulisan laporan tugas akhir ini terdiri atas beberapa bab, dengan masingmasing
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.
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
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. Suarasuara
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].
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
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,
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
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.
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)
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, memoridata
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]
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 dinol-
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)
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 masingmasingnya
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.
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
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].
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
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
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
Sistem Pemantauan Ketinggian Air Secara Real Time
Berbasis Mikrokontroler AT89C2051
2.3.2 Dekoder 74LS247
Dalam banyak kasus, kita harus menampilkan bilangan desimal pada sevensegment
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 sevensegment.
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]
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
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
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)
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
Decrim
inator
AFC
De
Empasis
Detektor
AGC
Local
Osilator
Trimmer
Varactor
Volume
Speaker Audio
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.
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.
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
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
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.
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.
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
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
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)
P37
XTAL-1
XTAL-2
RST
P10
P12
P11
P13
P14
P15
P16
P17
236789
11
541
12
13
14
15
16
17
18
19
12 MHz Vcc
33pF 33pF 10k
10uF
TO PING
TX FM
TO SEVEN
SEGMENT
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)))
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
B
A
E F
CM2
G P
D C
CM1
B
A
E F
CM2
G P
LT
C
B1/RB0
B
RB1
D
A
e
c
f
b
g
d
P1.0 a
P1.5
P1.4
P1.3
P1.2
P1.1
Port 1 Mikrokontroler
74LS247
Seven Segmen
Seven Segmen
2K2
2K2
330
330
Vcc
PNP
9012
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 220pF
10pF
C9018
1K 10pF
10pF
33pF 100nF 47K
47K
C930
C930
68pF 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)
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
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
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
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 & Aktifkan
Timer 1
Tunda 750 μs
TF0 = 1?
TR0 = 1
Ping = 0
SET P3.4
Selama 3μs
CLR TR0
Hit Jarak
Tdk P3.4= 0?
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
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
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
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
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.
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
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
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
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
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.
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
0.1 0.25 0.3 0.5 1.05 1.3 1.5 2 2.5
Ketinggian (m)
% Kesalahan
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.
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.
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).
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.
Sistem Pemantauan Ketinggian Air Secara Real Time
Berbasis Mikrokontroler AT89C2051
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/pemancarfm/
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-SEVENSEGMENT
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
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 : nurul.afdhal@gmail.com
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
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
Sistem Pemantauan Ketinggian Air Secara Real Time
Berbasis Mikrokontroler AT89C2051
LAMPIRAN A
HASIL PENELITIAN
LAMPIRAN A.1 Skema Rangkaian Lengkap Sistem
LAMPIRAN A.2. Tampilan Software
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
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
Tidak ada komentar:
Posting Komentar