Perancangan Alat Ukur Ketinggian Air Menggunakan Sensor HCRS Berbasis Mikrokontroler AtMega8535

(1)

PERANCANGAN ALAT UKUR KETINGGIAN AIR MENGGUNAKAN SENSOR HC-SR04 BERBASIS MIKROKONTROLER ATMega8535

TUGAS AKHIR

Diajukan untuk melengkapi dan memenuhi syarat memperoleh

Ahli Madya

FAKHRUNNISA

112411047

PROGRAM STUDI D3 METROLOGI DAN INSTRUMENTASI

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN

ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN


(2)

PERSETUJUAN

Judul : PERANCANGAN ALAT UKUR KETINGGIAN AIR MENGGUNAKAN SENSOR HCSR BERBASIS

MIKROKONTROLER ATMega8535 Kategori : TUGAS AKHIR

Nama : FAKHRUNNISA No.Induk Mahasiswa : 112411047

Program Studi : D3 METROLOGI DAN INSTRUMENTASI Departemen : FISIKA

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di Medan, Juli 2014

Diketahui/Disetujui Oleh

Ketua Program Studi D3 Metrologi Pembimbing dan Instrumentasi

(Dr. Diana A. Barus, M.Sc) (Dr. Kerista Sebayang, MS) NIP. 196607291992032002 NIP.195800231980011001


(3)

PERNYATAAN

PERANCANGAN ALAT UKUR KETINGGIAN AIR MENGGUNAKAN SENSOR HCSR BERBASIS MIKROKONTROLER ATMega8535

TUGAS AKHIR

Saya mengakui bahwa laporan Tugas Akhir ini adalah hasil kerja saya

sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing

disebutkan sumbernya.

Medan, Juli 2014

FAKHRUNNISA

112411047


(4)

PENGHARGAAN

Alhamdulillahirobbil’alamin,

Segala puji dan syukur bagi Allah Subhanahuwata’ala yang telah melimpahkan barokah, rahmat, hidayah-Nya dan menganugerahkan kemudahan serta kelancaran sehingga penulis dapat menyelesaikan Laporan Tugas Akhir ini sesuai waktu yang telah ditetapkan. Sholawat dan salam semoga senantiasa tercurahkan kepada Rasulullah Sallallahu’alaihiwassalam sang pembawa petunjuk dan selalu menjadi inspirasi dan teladan bagi penulis, serta doa dan bimbingan selalu dari kedua Orang Tua tercinta yang telah diberikan kepada penulis selama dalam penyusunan Laporan Tugas Akhir ini hingga selesai. Laporan Tugas Akhir ini merupakan slah satu syarat yang harus di penuhi untuk menyelesaikan pendidikan D3 pada Program Studi D3 Metrologi dan Instrumentasi Fakultas Matematika dan Ilmu Pengetahuan Alam (FMIPA).

Penulis menyadari bahwa tersusunnya Tugas Akhir ini juga di bantu dari Do’a, perhatian, bimbingan, motivasi dan dukungan berbagai pihak, sehingga dengan keikhlasan dan kerendahan hati pada kesempatan ini penulis mengucapkan terima kasih yang sebesar-besarnya kepada :

1. Bapak Dr.Sutarman,Msc selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan alam Universitas Sumatera Utara.

2. Ibu Dr. Diana A. Barus, M.Sc, selaku Ketua Program Studi D3 Metrologi dan Instrumentasi Fakultas Matematika Dan Ilmu Pengetahuan Alam. 3. Ibu Dra,Ratna Askiah Simatupang,M.Si selaku Sekretaris Program Studi

D3 Metrologi dan Instrumentasi Fakultas Matematika Dan Ilmu Pengetahuan Alam.

4. Bapak Dr.Kerista Sebayang , M.S selaku dosen pembimbing penulis, yang dengan penuh kesabaran telah membimbing dan membantu penulis dalam meyelesaikan tugas akhir ini.

5. Seluruh Dosen dan Karyawan Program Studi D3 Metrologi dan Instrumentasi Departemen Fisika Fakultas Matematika dan Ilmu


(5)

Pengetahuan Alam Universita Sumatera Utara yang telah membantu penulis dalam menyelsaikan tugas akhir ini.

6. Seluruh Abang dan Kakak Robotik Sikonek USU terutama kepada Bg Oki,Bg Budi,Bg Teguh,Bg Reza dan anggota UKM yang lainnya yang telah memberikan masukkan-masukkan,saran-saran dan ide-ide kreatif kepada penulis dalam menunjang penyusunan tugas ahir.

7. Serta tidak lupa kepada teman-teman D3 Metrologi & Instrumentasi angkatan 2011,semuanya yang telah memberikan konstribusinya untuk membantu penulis dalam penyusunan tugas akhir.

Penulis menyadari sepenuhnya bahwa dalam pembuatan Projek Akhir 1 ini masih jauh dari kesempurnaan, untuk itu penulis mengharapkan kritik dan saran dari pembaca yang bersifat membangun dalam penyempurnaan Tugas Projek ini. Semoga laporan ini menjadi ibadah yang baik bagi penulis dan menjadi ilmu yang bermanfaat bagi pembaca.

Amin Yaa Rabbal’alamin.

Medan, Juni 2014 Hormat Kami,

Penulis


(6)

ABSTRAK

Air Adalah kebutuhan yang penting,sehingga ketersedian air tetap harus selalu ada baik dirumah tangga,perkantoran atau industri.Ini menyebabkan peran penampung air menjadi penting untuk menjamin ketersediaan air secara pasti. Mekanisme pengukur ketinggian permukaan air secara otomatis diperlukan untuk menjaga ketersedian air ini dan diperlukan suatu mekanisme pengukuran untuk mengetahui ketersedian air pada wadah air tersebut.Mekanisme tersebut masih berupa cara-cara manual,misalnya dengan mendatangi,melihat pengukuran langsung pada tempat penampung air tersebut.Cara ini merupakan cara yang gampang dan murah,tetapi akan sedikit sulit jika misalnya letak penampungan air tersebut jatuh dan sulit dijangkau.Untuk mengatasi keadaan ini diperlukan peralatan pengukuran ketinggian air secara otomatis,misalnya dengan membuat semacam peralatan pengukuran ketinggian air memakai display digital dengan pengendalian secara otomatis dari mikrokontroler.


(7)

DAFTAR ISI

PERSETUJUAN i

PERNYATAAN ii

PENGHARGAAN iii

ABSTRAK v

DAFTAR ISI vi

DAFTAR TABEL viii

DAFTAR GAMBAR ix

BAB I PENDAHULUAN 1

1.1. Latar Belakang Masalah 1

1.2. Rumusan Masalah 2

1.3. Tujuan Penulisan 2

1.4. Batasan Penulisan 3

1.5. Sistematika Penulisan 3

BAB II LANDASAN TEORI 5

2.1 Dasar Teori 5

2.2. Sensor Jarak HC-SR04 7

2.2.1 Prinsip Kerja 8

2.3 Mikrokontroler ATMega8535 12

2.3.1 Konfigurasi ATMega8535 16 2.3.2 Port-Port Pada ATMega 8535 17

2.4 Peta Memory ATMega8535 19

2.4.1 Program Memory 19

2.4.2 Data Memory 20

2.4.3 EEPROM Data Memory 20

2.4.4 Status Register 21

2.5 Liquid Cristas Display (LCD) 23

2.6 Relay 25


(8)

BAB III PERANCANGAN DAN SISTEM KERJA RANGKAIAN 27

3.1. Diagram Blok Rangkaian 27

3.2.Rangkaian Sistem Minimum Mikrokontroler ATMega8535 28

3.3. Rangkaian Power Supply 29

3.4. Rangkaian LCD 30

3.5. Rangkaian Relay 31

3.6. Flowchart 33

BAB IV PENGUJIAN DAN ANALISA PROGRAM 34

4.1. Umum 34

4.2. Pengujian Sesor HCSR-04 34

4.3. Pengujian Rangkaian Mikrokontroler ATMega8535 34 4.4. Pengujian Rangkaian PSA 35

4.5. Pengujian LCD 35

4.6. Pengujian Rangkaian Relay 36

BAB V KESIMPULAN DAN SARAN 39

5.1. Kesimpulan 39

5.2. Saran 39

DAFTAR PUSTAKA 40


(9)

DAFTAR TABEL

Tabel 2.1 Pin dari LCD 16 X 2 23


(10)

DAFTAR GAMBAR

Gambar 2.1. Sensor Jarak HC-SR04 7

Gambar 2.2. Prinsip Kerja Sensor HC-SR04 9 Gambar 2.3. Rangkaian Pemancar Gelombang Ultrasonik 9 Gambar 2.4. Rangkaian Penerima Gelombang Ultrasonik 11 Gambar 2.5. Block Diagram ATMega8535 14 Gambar 2.6. Konfigurasi Pin ATMega8535 16

Gambar 2.7. Peta Memory Program 20

Gambar 2.8. Peta Memory Data 20

Gambar 2.9. EEPROM Data Memory 21

Gambar 2.10. Status Register ATMega8535 21

Gambar 2.11. LCD 16X2 24

Gambar 2.12. Relay 26

Gambar 3.1. Diagram Blok 27

Gambar 3.2. Rangkaian Sistem Minimum Mikrokontroler ATMega8535 28

Gambar 3.3. Rangkaian Power Supplay 29

Gambar 3.4.Rangkaian Skematik LCD 30

Gambar 3.5. Rangkaian Skematik Relay 31 Gambar 3.6. Diagram Alir (flowchart) 33


(11)

ABSTRAK

Air Adalah kebutuhan yang penting,sehingga ketersedian air tetap harus selalu ada baik dirumah tangga,perkantoran atau industri.Ini menyebabkan peran penampung air menjadi penting untuk menjamin ketersediaan air secara pasti. Mekanisme pengukur ketinggian permukaan air secara otomatis diperlukan untuk menjaga ketersedian air ini dan diperlukan suatu mekanisme pengukuran untuk mengetahui ketersedian air pada wadah air tersebut.Mekanisme tersebut masih berupa cara-cara manual,misalnya dengan mendatangi,melihat pengukuran langsung pada tempat penampung air tersebut.Cara ini merupakan cara yang gampang dan murah,tetapi akan sedikit sulit jika misalnya letak penampungan air tersebut jatuh dan sulit dijangkau.Untuk mengatasi keadaan ini diperlukan peralatan pengukuran ketinggian air secara otomatis,misalnya dengan membuat semacam peralatan pengukuran ketinggian air memakai display digital dengan pengendalian secara otomatis dari mikrokontroler.


(12)

BAB 1

PENDAHULUAN

1.1Latar belakang

Air Adalah kebutuhan yang penting,sehingga ketersedian air tetap harus selalu ada baik dirumah tangga,perkantoran atau industri.Ini menyebabkan peran penampung air menjadi penting dan diperlukan suatu mekanisme pengukuran untuk mengetahui ketersedian air pada wadah air tersebut.Mekanisme tersebut masih berupa cara-cara manual,misalnya dengan mendatangi,melihat pengukuran langsung pada tempat penampung air tersebut.Cara ini merupakan cara yang gampang dan murah,tetapi akan sedikit sulit jika misalnya letak penampungan air tersebut jatuh dan sulit dijangkau.Untuk mengatasi keadaan ini diperlukan peralatan pengukuran ketinggian air secara otomatis,misalnya dengan membuat semacam peralatan pengukuran ketinggian air memakai display digital dengan pengendalian secara otomatis dari mikrokontroler.

Perubahan ketinggian air atau cairan dengan mekanisme tertentu akan memutar wiper atau trimer resistor variabel.Putaran pada wiper ini akan menghasilkan perubahan tegangan yang merupakan masukan analog.

Keluaran atau output digital dari ADC akan dimasukkan ke port mikrokontroler ATMega8535 yang selanjutnya diolah untuk ditampilkan berupa ketinggian air pada display LCD.Rangkaian ini juga delengkapi dengan pompa air yang hidup matinya diatur dari mikrokontroler yaitu pompa akan mati jika bak


(13)

penampung hampir kosong dan hidup kembali saat bak penampungan hampir penuh,atau bisa dilakukan secara manual.

Peralatan yang bisa membantu mengetahui ketinggian air atau zat cair lainnya lebih mudah dan cepat berupa tampilan pada LCD.Pompa air pun bisa bekerja untuk memompa air ke dalam bak penampungan sesuai dengan kondisi ketersediaan airnya. Dari sini kita bisa mengatur pemanfaatan air sehingga bisa lebih efiesien dan tersedia saat kita butuhkan.

Berdasarkan uraian diatas penulis bermaksud membuat alat ukur yang berjudul “PERANCANGAN ALAT UKUR KETINGGIAN AIR MENGGUNAKAN SENSOR HC-SR04 BERBASIS MIKROKONTROLER ATMega8535”.

1.2 Rumusan Masalah

Berdasarkan latar belakang yang ada,maka perumusan masalah dari penelitian ini adalah :

- Bagaimana merancangan suatu alat ukur yang dapat memberikan penelitian terhadap besaran fisis dari ketinggian air yang di ukur dengan menggunakan sensor HC-SR04,Mikrokontroler ATMega8535 sebagai sistem kendalinya LCD sebagai tampilnya.

1.3 Tujuan Penelitian

Maksud dari penulisan projek akhir II ini antara lain guna mempermudah dalam pengukuran volume air yang lebih akurat dan jauh dari kesalahan, sehingga dapat diaplikasikan didalam segala aspek pengukuran air yang suatu hari nanti


(14)

dapat dikembangkan lagi masalah-masalahnya beserta cara yang lebih praktis dalam melakukan kegiatan pengukuran.

Tujuan dari Projek Akhir II ini adalah : 1. Merancang alat ukur volume air.

2. Mengembangkan sistem pengukuran jarak menjadi pengukuran volume air berbasis Mikrokontroler ATmega 8535 menggunakan sensor HC-SR04.

1.4Batasan Masalah

.Menggunakan HC-SR04 Berbasis Mikrokontroler 8535 dengan batasan-batasan sebagai berikut :

1. Mikrokontroler yang digunakan adalah ATmega 8535. 2. Sensor jarak yang digunakan adalah HC-SR04.

3. Standart alat ukur volume ini hanya bisa menampung 2 Liter air. 4. Pengujian alat hanya menggunakan media air.

Wadah yang digunakan dengan ukuran yang sudah ditentukan

1.5Sistematika Penulisan

Sistematika penulisan Tugas Akhir ini terdiri dari 5(lima) bab yang masing-masing dirincikan dalam beberapa sub bab yaitu:


(15)

BAB I : PENDAHULUAN

Berisi latar belakang permasalahan,batasan masalah,tujuan masalah,metodologi pembahasan,sistematika penulisan dan relevansi dari penulisan tugas akhir ini.

BAB II : LANDASAN TEORI

Dalam bab ini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan dan prinsip kerja dari rangkaian teori pendukung itu antara lain tentang Mikrokontroler ATMega8535,sensor HCSR, serta komponen pendukung.

BAB III : SISTEM KERJA RANGKAIAN

Membahas tentang perancangan dan pembutan sistem secara keseluruhan.

BAB IV : ANALISA DAN PENGUJIAN RANGKAIAN

Berisi tentang uji coba alat yang telah dibuat,pengoperasian dan spesifikasi alat dan lain-lain.

BAB V : KESIMPULAN DAN SARAN

Merupakan kesimpulan dari pembahasan pada bab-bab sebelumnya dan pengembangan alat.


(16)

BAB II

LANDASAN TEORI

2.1 Dasar Teori

Air merupakan faktor penting dalam pemenuhan kebutuhan vital bagi mahluk hidup diantaranya sebagai air minum atau keperluan rumah tangga lainnya. Air yang digunakan harus bebas dari kuman penyakit dan tidak mengandung bahan beracun. Sumber air minum yang memenuhi syarat sebagai air baku air minum jumlahnya makin lama makin berkurang sebagai akibat ulah manusia sendiri baik sengaja maupun tidak disengaja.

Air adalah zat atau materi atau unsur yang penting bagi semua bentuk kehidupan yang diketahui sampai saat ini di bumi, tetapi tidak di planet lain. Air menutupi hampir 71% permukaan bumi. Terdapat 1,4 triliun kubik (330 juta mil³) tersedia di bumi.

Air yang bersih sangat penting bagi kehidupan manusia dan alam sekitar, Di banyak tempat di dunia terjadi kekurangan persediaan air. Selain di bumi, sejumlah besar air juga diperkirakan terdapat pada kutub utara dan selatan planet Mars, serta pada bulan-bulan Eropa dan Enceladus. Air dapat berwujud padatan (es), cairan (air) dan gas (uap air). Air merupakan satu-satunya zat yang secara alami terdapat di permukaan bumi dalam ketiga wujudnya tersebut.

Air sebagai materi esensial dalam kehidupan tampak dari kebutuhan terhadap air untuk keperluan sehari-hari di lingkungan rumah tangga ternyata berbeda-beda di setiap tempat, setiap tingkatan kehidupan atau setiap bangsa dan


(17)

negara. Semakin tinggi taraf kehidupan seseorang semakin meningkat pula kebutuhan manusia akan air. Jumlahpenduduk dunia setiap hari bertambah, sehingga mengakibatkan jumlah kebutuhan air (Suriawiria,1996: 3).

Berdasarkan Keputusan Menteri Kesehatan Republik Indonesia Nomor 1405/menkes/sk/xi/2002 tentang Persyaratan Kesehatan Lingkungan Kerja Perkantoran dan industri terdapat pengertian mengenai Air Bersih yaitu air yang dipergunakan untuk keperluan sehari-hari dan kualitasnya memenuhi persyaratan kesehatan air bersih sesuai dengan peraturan perundang-undangan yang berlaku dan dapatdiminum apabila dimasak.

Bagi manusia kebutuhan akan air sangat mutlak karena sebenarnya zat pembentuk tubuh manusia sebagian besar terdiri dari air yang jumlahnya sekitar 73% dari bagian tubuh. Air di dalam tubuh manusia berfungsi sebagai pengangkut dan pelarut bahan-bahan makanan yang penting bagi tubuh. Sehingga untuk mempertahankan kelangsungan hidupnya manusia berupaya mendapatkan air yang cukup bagi dirinya (Suharyono, 1996). Dalam menjalankan fungsi kehidupan sehari-hari manusia amat tergantung pada air, karena air dipergunakan pula untuk mencuci, membersihkan peralatan, mandi, dan lain sebagainya. Manfaat lain dari air berupa pembangkit tenaga, irigasi, alat transportasi, dan lain sebagainya yang sejenis dengan ini. Semakin maju tingkat kebudayaan masyarakat maka penggunaan air makin meningkat.

Kebutuhan air yang paling utama bagi manusia adalah air minum. Menurut ilmu kesehatan setiap orang memerlukan air minum hidup 2-3 minggu tanpa makan tetapi hanya dapat bertahan 2-3 hari tanpa air minum (Suripin, 2002).


(18)

2.2 Sensor HC-SR04

HCSR adalah seri dari sensor jarak dengan gelombang ultrasonic, dimana didalam sensor terdapat dua bagian yaitu receiver dan transmitter yang mempunyai fungsi sebagai penghasil gelombang dan penerima gelombang. Sensor Ultrasonik memiliki range 2cm-400cm, kisaran akurasi mencapai 3mm. Sensor ini biasanya dipakai untuk mengukur jarak, dalam alat ini sensor ini dipakai untuk mengukur jarak ketinggian antara wadah dan air lalu diprogram untuk mencari volumenya.[6]

Gambar 2.1. Sensor HC-SR04

Disamping merupakan bentuk fisik dari sensor ultrasonic, HC-SR04 yang mempunyai 4 pin. Satu pin VCC sebagai pin masukan tegangan dan di imbangi pin GND untuk grounding, sedangkan dua pin sisanya adalah trigger dan echo pin yang akan mempengaruhi gelombang ultrasonic itu sendiri, berikut empat pin tersebut :

1. 5V supply

2. Trigger Pulse Output 3. Echo Pulse Input 4. 0V ground


(19)

Untuk menghubungkan sensor HC-SR04 cukup menghubungkan pin VCC dan GND ke +5 V dan GND arduino serta pin Trigger dan Echo terhubung dengan pin digital arduino.[6]

2.2.1 Prinsip Kerja

1. Masukan trigger dibutuhkan untuk memulai perhitungan jarak. Pada pin

trigger digunakan untuk memberikan sinyal level tinggi selama 10uS high level signal.

2. Maka modul ini akan mengirim pulsa burst sebanyak 8 cycle atau 40 kHz

dan menunggu sinyal kembali di pin echo.

3. Pin echo digunakan untuk mendeteksi sinyal yang kembali dan

menyatakan jarak sensor terhadap objek yang proporsional antara jarak dengan lebar pulsa.

4. Jarak dikalkulasikan antara interval waktu dengan signal trigger yang dikirim dan signal echo yang diterima.

Gelombang ultrasonik adalah gelombang dengan besar frekuensi diatas frekuensi gelombang suara yaitu lebih dari 20 KHz. Seperti telah disebutkan bahwa sensor ultrasonik terdiri dari rangkaian pemancar ultrasonik yang disebut transmitter dan rangkaian penerima ultrasonik yang disebut receiver. Sinyal ultrasonik yang dibangkitkan akan dipancarkan dari transmitter ultrasonik. Ketika sinyal mengenai benda penghalang, maka sinyal ini dipantulkan dan diterima oleh receiver ultrasonik. Sinyal yang diterima oleh rangkaian receiver dikirimkan ke rangkaian mikrokontroler untuk selanjutnya diolah untuk menghitung jarak terhadap benda di depannya (bidang pantul).[6]


(20)

Prinsip kerja dari sensor HC-SR04 dapat ditunjukkan dalam gambar dibawah ini :

Gambar 2.2. Prinsip Kerja Sensor HC-SR04

a. Pemancar Ultrasonik (Transmitter)

Pemancar Ultrasonik ini berupa rangkaian yang memancarkan sinyal sinusoidal berfrekuensi di atas 20 KHz menggunakan sebuah transducer transmitter ultrasonik


(21)

Prinsip kerja dari rangkaian pemancar gelombang ultrasonik tersebut adlah sebagai berikut :

1. Sinyal 40 kHz dibangkitkan melalui mikrokontroler.

2. Sinyal tersebut dilewatkan pada sebuah resistor sebesar 3kOhm untuk pengaman ketika sinyal tersebut membias maju rangkaian dioda dan transistor.

3. Kemudian sinyal tersebut dimasukkan ke rangkaian penguat arus yang merupakan kombinasi dari 2 buah dioda dan 2 buah transistor.

4. Ketika sinyal dari masukan berlogika tinggi (+5V) maka arus akan melewati dioda D1 (D1 on), kemudian arus tersebut akan membias transistor T1, sehingga arus yang akan mengalir pada kolektotr T1 akan besar sesuai dari penguatan dari transistor.

5. Ketika sinyal dari masukan berlogika tinggi (0V) maka arus akan melewati dioda D2 (D2 on), kemudian arus tersebut akan membias transistor T2, sehingga arus yang akan mengalir pada kolektotr T2 akan besar sesuai dari penguatan dari transistor.

6. Resistor R4 dan R6 berfungsi untuk membagi tengangan menjadi 2,5 V. Sehingga pemancar ultrasonik akan menerima tegangan bolak – balik dengan Vpeak-peak adalah 5V (+2,5 V s.d -2,5 V).[7]

b. Penerima Ultrasonik (Receiver)

Penerima Ultrasonik ini akan menerima sinyal ultrasonik yang dipancarkan oleh pemancar ultrasonik dengan karakteristik frekuensi yang sesuai. Sinyal yang diterima tersebut akan melalui proses filterisasi frekuensi dengan menggunakan


(22)

rangkaian band pass filter (penyaring pelewat pita), dengan nilai frekuensi yang dilewatkan telah ditentukan. Kemudian sinyal keluarannya akan dikuatkan dan dilewatkan ke rangkaian komparator (pembanding) dengan tegangan referensi ditentukan berdasarkan tegangan keluaran penguat pada saat jarak antara sensor kendaraan mini dengan sekat/dinding pembatas mencapai jarak minimum untuk berbelok arah. Dapat dianggap keluaran komparator pada kondisi ini adalah high (logika ‘1’) sedangkan jarak yang lebih jauh adalah low (logika’0’). Logika-logika biner ini kemudian diteruskan ke rangkaian pengendali (mikrokontroler).[7]

Gambar 2.4. Rangkaian Penerima Gelombang Ultrasonik

Prinsip kerja dari rangkaian pemancar gelombang ultrasonik tersebut adalah sebagai berikut :

1. Pertama – tama sinyal yang diterima akan dikuatkan terlebih dahulu oleh rangkaian transistor penguat Q2.


(23)

2. Kemudian sinyal tersebut akan di filter menggunakan High pass filter pada frekuensi > 40kHz oleh rangkaian transistor Q1.

3. Setelah sinyal tersebut dikuatkan dan di filter, kemudian sinyal tersebut akan disearahkan oleh rangkaian dioda D1 dan D2.

4. Kemudian sinyal tersebut melalui rangkaian filter low pass filter pada frekuensi < 40kHz melalui rangkaian filter C4 dan R4.

5. Setelah itu sinyal akan melalui komparator Op-Amp pada U3.

6. Jadi ketika ada sinyal ultrasonik yang masuk ke rangkaian, maka pada komparator akan mengeluarkan logika rendah (0V) yang kemudian akan diproses oleh mikrokontroler untuk menghitung jaraknya.[7

Perhitungan Jarak HCSR punya rumus L X C

Dimana : L : Ukuran Jarak

C : Kecepatan gelombang Ultrasonik T : Waktu referensi relatifnya

2.3 Mikrokontroler ATmega8535

Mikrokontroler sesuai namanya adalah suatu alat atau komponen pengontrol atau pengendali yang berukuran mikro atau kecil. Sebelum ada mikrokontroler telah ada terlebih dahulu mikroprosesor.Bila dibandingkan dengan mikroprosesor,mikrokontroler jauh lebih unggul karena terdapat berbagai alasan diantaranya :


(24)

a. Tersedia I/O

I/O dalam mikrokontroler sudah tersedia PORT input dan output b. Memori Internal

Memori merupakan media untuk menyimpan program dan data sehingga mutlak harus ada. Mikroprosesor belum memiliki memori internal sehingga memerlukan IC memori eksternal. Dengan kelebihan-kelebihan di atas, ditambah dengan harganya yang relative murah sehingga banyak penggemar elekronika yang kemudian beralih kemikrokontroler.Namun demikian masih memiliki berbagai kelemahan , mikroprosesor tetap digunakan sebagai dasar dalam mempelajari mikrokontroler.Inti kerja dari keduanya adalah sama , yakni sebagai pengendalu suatu sistem.

Mikrokontroler adalah suatu sistem elektronika seperti hanya mikroprosesor sebagai otak komputer. Namun mikrokontroler memiliki nilai tambah karena didalamnya sudah terdapat memori dan sistem input/output dalam suatu kemasan IC. Mikrokontroler AVR (Alf and Vegard’s RISC processor) standar memiliki arsitektur 8-bit dimana semua instruksi dikemas dalam kode 16bit dan sebagaian besar instruksi dieksekusi dalam satu siklus clock. Berbeda dengan instruksi MCS-51 yang membutuhkan 12 siklus clock karena memiliki arsitektur CISC (seperti komputer).


(25)

(26)

Dari gambar tersebut dapat dilihat bahwa ATmega8535 memiliki spesifikasi sebagai berikut :

1. Saluran I/O sebanyak 32 buah, yaitu Port A, Port B , Port C , Port D. 2. ADC 10bit sebanyak 8 saluran.

3. Tiga buah Timer/Counter dengan kemampuan pembandingan. 4. CPU yang terdiri atas 32 buah register

5. Watchdog Timer dengan osilator internal. 6. SRAM sebesar 512 byte.

7. Memori Flash sebesar 8 kb dengan kemampuan Read While Write. 8. Unit interupsi internal dan eksternal.

9. Port antarmuka SPI.

10.EEPROM sebesar 512 byte yang dapat deprogram saat operasi. 11.Antarmuka komparator analog.

12.Port USART untuk komunikasi serial.

Secara umum,AVR dapat dikelompokkan menjadi 4 kelas, yaitu keluarga ATTinya, keluarga AT90Sxx, keluarga ATmega dan AT89RFxx.Pada dasarnya yang membedakan masing-masing kelas adalah memori, peripheral , dan fungsinya. Dari segi arsitektur dan intruksi yang digunakan, mereka bisa dikatakan hamper sama. Oleh karena itu, dipergunakan salah satu AVR produk Atmel, yaitu ATmega8535.Selain mudah didapatkan dan lebih murah ATmega8535 juga memiliki fasilitas yang lengkap.Untuk tipe AVR ada 3 jenis yaitu ATTiny, AVR klasik , dan ATmega.Perbedaanya hanya pada fasilitas dan I/O yang tersedia serta fasilitas lain seperti ADC,EEPROM, dan lain sebagainya. Salah satu


(27)

contoh adalah ATmega8535. Memiliki teknologi RISC dengan kecepatan maksimal 16 MHz membuat ATmega8535 lebih cepat bila dibandingkan dengan varian MCS51. Dengan fasilitas yang lengkap tersebut menjadikan ATmega8535 sebagai mikrokontroler yang powerfull.Adapun blok diagramnya sebagai berikut:

2.3.1 Konfigurasi ATMega8535

Gambar 2.6 Konfigurasi Pin ATMega8535

Mikrokontroler Atmega8535 mempunyai jumlah pin sebanyak 40 buah, dimana 32 pin digunakan untuk keperluan port I/O yang dapat menjadi pin input/output sesuai konfigurasi. Pada 32 pin tersebut terbagi atas 4 bagian (port), yang masing-masingnya terdiri atas8 pin. Pin-pin lainnya digunakan untuk keperluan rangkaian osilator, supply tegangan, reset, serta tegangan referensi


(28)

untuk ADC.Untuk lebih jelasnya, (konfigurasi pin Atmega8535 dapat dilihat pada gambar 2.5.

Berikut ini adalah susunan pin-pin dari Atmega8535;

• VCC merupakan pin yang berfungsi sebagai pin masukkan catu daya

• GND merupakan pin ground

• Port A (PA0..PA7) merupakan pin I/O dua arah dan pin masukan ADC

• Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu Timer/Counter, Komparator Analog, dan SPI

• Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu TWI, Komparator Analog, dan Timer Oscilator

• Port D (PD0..PD7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu Komparator Analog, Interupsi Iksternal dan komunikasi serial USART

• Reset merupakan pin yang digunakan untuk mereset mikrokontroler

• XTAL1 dan XTAL2 merupakan pin masukkan clock eksternal (osilator menggunakan kristal, biasanya dengan frekuensi 11,0592 MHz).

2.3.2. Port-Port Pada ATMega8535 Dan Fungsinya o Port A

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port A dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port A (DDRA) harus disetting terlebih dahulu sebelum Port A


(29)

digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan pin-pin port A yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, kedelapan pin port A juga digunakan untuk masukan sinyal analog bagi A/D converter.

o Port B

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port B dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port B (DDRB) harus disetting terlebih dahulu sebelum Port B digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pin-pin port B yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Pin-pin port B juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut.

o Port C

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port C dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port C (DDRC) harus disetting terlebih dahulu sebelum Port C digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pin-pin port C yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, dua pin port C (PC6 dan PC7) juga memiliki fungsi alternatif sebagai oscillator untuk timer/counter 2.


(30)

o Port D

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port D dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port D (DDRD) harus disetting terlebih dahulu sebelum Port D digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan pin-pin port D yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, pin-pin port D juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut

2.4 Peta Memori ATMega8535

ATMega8535 memiliki dua jenis memori yaituProgram Memory dan Data Memoryditambah satu fitur tambahan yaitu EEPROMMemory untuk penyimpan data.

2.4.1. Program Memory

ATMEGA 8535 memiliki On-Chip In-System Reprogrammable Flash

Memory untuk menyimpan program.Untuk alasan keamanan, program memory

dibagi menjadi dua bagian, yaitu Boot Flash Section dan Application Flash Section.Boot Flash Section digunakan untuk menyimpan program Boot Loader, yaitu program yang harus dijalankan pada saat AVR reset atau pertama kali diaktifkan.

Application Flash Section digunakan untuk menyimpan program aplikasi yang dibuat user. AVR tidak dapat menjalakan program aplikasi ini sebelum menjalankan program Boot Loader. Besarnya memori Boot Flash Section dapat


(31)

deprogram dari 128 word sampai 1024 word tergantung setting pada konfigurasi bit di register BOOTSZ. Jika Boot Loader diproteksi, maka program pada Application Flash Section juga sudah aman.

2.4.2 Data Memory

Gambar berikut menunjukkan peta memori SRAM pada ATMEGA 8535. Terdapat 608 lokasi address data memori. 96 lokasi address digunakan untuk Register File dan I/O Memory sementara 512 likasi address lainnya digunakan untuk internal data SRAM. Register file terdiri dari 32 general purpose working register, I/O register terdiri dari 64 register.

Gambar 2.8 Peta Memori Data Gambar 2.7 Peta Memori Program


(32)

2.4.3. EEPROM Data Memory

ATMEGA 8535 memiliki EEPROM 8 bit sebesar 512 byte untuk menyimpan data. Loaksinya terpisah dengan system address register, data register dan control register yang dibuat khusus untuk EEPROM. Alamat EEPROM dimulai dari $000 sampai $1FF.

Gambar 2.9 EEPROM Data Memory

2.4.4. Status Register (SREG)

Status register adalah register berisi status yang dihasilkan pada setiap operasi yangdilakukan ketika suatu instruksi dieksekusi. SREG merupakan bagian dari inti CPUmikrokontroler.


(33)

Bit 7 – I : Global Interrupt Enable

Jika bit Global Interrupt Enable diset, maka fasilitas interupsi dapat dijalankan. Bit ini akanclear ketika ada interrupt yang dipicu dari hardware, setelah program interrupt dieksekusi,maka bit ini harus di set kembali dengan instruksi SEI.

Bit 6 – T : Bit Copy Storage

Instruksi bit copy BLD dan BST menggunakan bit T sebagai sumber atau tujuan dalamoperasi bit.

Bit 5 – H: Half Carry Flag

Bit 4 – S : Sign Bit

Bit S merupakan hasil exlusive or dari Negative Flag N dan Two’s Complement OverflowFlag V.

Bit 3 – V : Two’s Complement Overflow Flag Digunakan dalam operasi aritmatika

Bit 2 – N : Negative Flag

Jika operasi aritmatika menghasilkan bilangan negatif, maka bit ini akan set.

Bit 1 – Z : Zero Flag

Jika operasi aritmatika menghaslkan bilangan nol, maka bit ini akan set.

Bit 0 – C : Carry Flag


(34)

2.5 LCD

Liquid Crystal Display (LCD) merupakan sebuah alat yang digunakan untuk menampilkan data berupa tulisan dan karakter. Kegunaan LCD dalam perancangan suatu sistem yang menggunakan mikrokontroler untuk menampilkan suatu nilai hasil sensor, menampilkan teks, atau menampilkan menu pada aplikasi mikrokontroler. LCD yang digunakan adalah jenis LCD M1632. LCD ini memiliki 16x2 karakter yang artinya LCD tersebut terdiri dari 16 kolom dan 2 baris karakter (tulisan). Didalam alat ukur ini LCD dihubungkan dengan Arduino UNO sebagai tampilan. Berikut adalah pin dari LCD 16 X 2

Tabel 2.1. Pin dari LCD 16x2

No Kaki/Pin Nama Keterangan

1 VCC +5V

2 GND 0V

3 VEE Tegangan Kontras LCD 4 RS Register Select

5 R/W 1 = Read, 0 = Write 6 E Enable Clock LCD 7 D0 Data Bus 0

8 D1 Data Bus 1 9 D2 Data Bus 2 10 D3 Data Bus 3 11 D4 Data Bus 4


(35)

12 D5 Data Bus 5 13 D6 Data Bus 6 14 D7 Data Bus 7

15 Anoda Tegangan backlight positif 16 Katoda tegangan backlight Negatif

Pin LCD nomor 4 (RS) merupakan Register Selector yang berfungsi untuk memilih Register Kontrol atau Register Data. Register kontrol digunakan untuk mengkonfigurasi LCD. Register Data digunakan untuk menulis data karakter ke memori display LCD. Pin LCD nomor 5 (R/W) digunakan untuk memilih aliran data apakah READ ataukah WRITE. Karena kebanyakan fungsi hanya untuk membaca data dari LCD dan hanya perlu menulis data saja ke LCD, maka kaki ini dihubungkan ke GND (WRITE). Pin LCD nomor 6 (ENABLE) digunakan untuk mengaktifkan LCD pada proses penulisan data ke Register Kontrol dan Register Data LCD.

Gambar 2.11. LCD 2x16


(36)

Menyambungkan LCD dengan Board Arduino

• Pin RS (kaki 4) di sambungkan dengan pin arduino digital pin 12

• Pin E (kaki 6) di sambungkan dengan pin arduino digital pin 11

• Pin D4 (kaki 11) di sambungkan dengan pin arduino digital pin 5

• Pin D5 (kaki 12) di sambungkan dengan pin arduino digital pin 4

• Pin D6 (kaki 13) di sambungkan dengan pin arduino digital pin 3

• Pin D7 (kaki 14) di sambungkan dengan pin arduino digital pin 2

• sambungkan potensio 10 KOhm ke +5v dan GND , dan Pin LCD 3 ke potensio

• Pin 5 (R/W) ke Ground.[5]

2.6 Relay

Relay adalah saklar yang diaktifkan secara elektris.Ada tiga macam relay yaitu relay mekanis,relay reed,relay solid state. Relay solid state adalah piranti yang dibuat untuk berubah state dengan memberikan tegangan eksternal pada persambungan semikonduktif tipe p dan tipe n.Umumnya relay mekanik didesain untuk arus yang besar (biasanya 2-15 A ) dan pensak larannya relative lambat (biasanya 10-100ms). Relay reed didesain untuk arus yang besarnya sedang (500 mA-1A) dengan waktu pensak laran sedang (0.2-2 ms).Relay solid state mempunyai jangkauan arus yang besar ( yaitu beberapa mikro ampere sampai dengan 100 A untuk daya besar ) dan mempunyai kecepatan pensak laran yang tinggi (1-100ns)


(37)

2.6.1 Prinsip Kerja Relay

2.12 Rela

cocok untuk pensaklaran dengan beban daya besar.


(38)

BAB III

PERANCANGAN ALAT SECARA SISTEM

3.1. Diagram Blok

Secara garis besar, perancangan alat ukur pengisian air di wadah secara semi otomatis menggunakan sensor HC-SR04 ini terdiri dari Mikrokontroler ATMega 8535, LCD shield 16x2, Sensor HC-SR04,wadah tempat ukur air (standar) dan Wadah Penampungan. Diagram blok dari perancangan alat ukur pengisian air di tangki secara semi otomatis ini menggunakan sensor HC-SR04 ditunjukkan pada gambar berikut :

Gambar 3.1. Diagram Blok

Dari diagram blok diatas dapat dijelaskan bahwa mikrokontroler ATmega 8535 merupakan sistem kendali dari seluruh rangkaian dan akan mengambil data yang dikirimkan oleh Sensor HC-SR04. Sensor HC-SR04 berfungsi sebagai pengukur ketinggian antara air dengan wadah yang digunakan untuk mengukur air. Sinyal yang dipancarkan kedalam air kemudian akan merambat sebagai sinyal suara ultrasonic. Sinyal suara ultrasonic sebesar 40 kHz tersebut kemudian akan dipantulkan akan melalui transmitter sensor jarak HC-SR04 dan receiver akan menerima sinyal suara kembali dengan lama waktu yang dibutuhkan sinyal untuk

Atmega 8535

Sensor Ultrasonik Relay Pompa

LCD Power Supplay


(39)

propagasi di udara, waktu perambatan tersebut yang akan dikonversi ke dalam bentuk jarak. Kemudian data akan diolah menggunakan ATmega8535 yang akan ditampilkan pada LCD 16x2. Jika perintah secara manual diberikan dari luar atau pengguna, maka air akan dapat keluar dari pompa. Tangki Penampungan Air berfungsi untuk menampung air yang dikeluarkan dari pompa.

3.2 Rangkaian Sistem Minimum Mikrokontroler ATMega8535

Gambar 3.2. Rangkaian Sistem Minimum Mikrokontroler ATMega8535 Dari gambar 3.2, Rangkaian tersebut berfungsi sebagai pusat kendali dari seluruh sistem yang ada. Komponen utama dari rangkaian ini adalah IC Mikrokontroler ATMega16. Semua program diisikan pada memori dari IC ini sehingga rangkaian dapat berjalan sesuai dengan yang dikehendaki. Pin 12 dan 13 dihubungkan ke XTAL 12 MHz dan dua buah kapasitor 22 pF. XTAL ini akan


(40)

mempengaruhi kecepatan mikrokontroler ATMega16 dalam mengeksekusi setiap perintah dalam program.

Pin 9 merupakan masukan reset (aktif rendah). Pulsa transisi dari tinggi ke rendah akan me-reset mikrokontroler ini. Untuk men-download file heksadesimal ke mikrokontroler, Mosi, Miso, Sck, Reset, Vcc dan Gnd dari kaki mikrokontroler dihubungkan ke RJ45. RJ45 sebagai konektor yang akan dihubungkan ke ISP Programmer. Dari ISP Programmer inilah dihubungkan ke komputer melalui port paralel.

3.3. Rangkaian Power Supply

Gambar 3.3 Rangkaian Power Supplay (PSA)

Gambar 3.3 menunjukkan rangkaian PSA yang dibuat terdiri dari 12 volt pemasukan dan menghubungkan ke regulator IC7805 dan menghasilkan keluaran 5 volt digunakan untuk mensupplay tegangan ke seluruh rangkaian, termasuk ke LCD ,Mikrokontroller,Power supply. kemudian trafo melewati jembatan dioda menghasilkan Arus DC masuk IC LM 7805 sehingga menghasilkan tegangan fix


(41)

5 Volt sedangkan ground dari trafo menjadi satu dengan ground pada regulator.LED hanya sebagai indikator apabila PSA dinyalakan.

Tegangan 12 volt DC langsung diambil dari keluaran dioda bridge penyearah. IC LM7805 membutuhkan tegangan ±7.5 V dan arus ±100 mA. Jadi dipakai resistor 100 Ω dimana tegangan dari trafo stepdown sebesar 12 V, namun sebuah dioda dapat menurunkan tegangan sebesar 0.6 V. Jadi jika empat dioda digunakan maka tegangan dapat diturunkan menjadi 2,4 V.Perhitungannya adalah sebagai berikut :

Vtrafo = 12V – 2,4 V = 9,6 V

Sehingga bila dipakai resistor 100Ω maka, I = V/R = 9,6 V/ 100Ω = 0.096 A = 96 mA

Untuk menghidupkan LED yang arusnya 1.5 mA maka

R= Vout 7805/1,5 mA = 333.33 Ω (Ralat : masih salah belum diperbaikan

3.4 Rangkaian LCD


(42)

Pada rangkaian LCD, kaki-kaki LCD di hubungkan ke pin 14 sampai 20 pada rangkaian sistem minimum Mikrokontroler ATMega16. Display LCD 2x16 berfungsi sebagai penampil nilai kecapatan refferensi dan kecepatan aktual yang dikirim dari mikrokontroler. LCD yang digunakan pada alat ini mempunyai lebar display 2 baris 16 kolom atau biasa disebut sebagai LCD Character 2x16, dengan 16 pin konektor

3.4Rangkaian Relay

Relay berfungsi sebagai saklar elektronik yang dapat menghidupkan atau mematikan peralatan elektronik (dalam hal sirinai). Rangkaian relay pengendali pompa aquarium tampak seperti gambar 3.4 berikut :

3.5Rangkaian Skematik Relay Relay merupakan salah satu komponen elektronik yang terdiri dari lempengan logam sebagai saklar dan kumparan yang berfungsi untuk menghasilkan medan magnet. Pada rangkaian ini digunakan relay 12 volt.

Pada rangkaian ini untuk mengaktipkan atau menon-aktipkan relay digunakan transistor tipe NPN. Dari gambar dapat dilihat bahwa negatip relay dihubungkan ke kolektor dari transistor NPN (C945) dan positif relay


(43)

dihubungkan pada tegangan 12 volt., ini berarti jika transistor dalam keadaan aktip maka kolektor akan terhubung ke emitor dimana emitor langsung terhubung ke ground yang menyebabkan tegangan di kolektor menjadi 0 volt, keadaan ini akan mengakibatkan relay aktip. Disaat relay aktif maka kaki-kaki relay yang berfungsi sebagai Normali Close sudah mendapatkan tegangan 12 volt. Sementara kaki-kaki relay yang berfungsi sebagai Normali open masih belum mendapatkan tegangan 12 volt sebelum ada inputan (inputan berupa logika high atau 5 volt). Sebaliknya jika transistor tidak aktip, maka kolektor tidak terhubung ke emitor, sehingga tegangan pada kolektor menjadi 12 volt, keadaan ini menyebabkan relay tidak aktip. Resistor didalam rangkaian berfungsi sebagai pull up untuk menaikkan tegangan agar inputan mikrokontroler sanggup mengaktifkan relay. Dioda dihubungkan secara terbalik untuk mengantisipasi sentakan listrik yang terjadi pada saat relay berganti posisi dari on ke off agar tidak merusak komponen di sekitarnya, sentakan itu hanya terjadi ketika relay dinonaktipkan, pada saat ini arus akan terus mengalir melalui kumparan dan arus ini akan dialirkan ke dioda. Tanpa adanya dioda sentakan listrik itu akan mengalir ke transistor, yang mengakibatkan kerusakan pada transistor.


(44)

3.6 Diagram Alir (flowchart) Algoritma dari Alat Ukur


(45)

BAB IV

ANALISA DAN PENGUJIAN ALAT

4.1. Umum

Pada Bab 4 ini akan ditampilkan hasil pengujian dan analisa alat ukur ketinggian air yang menggunakan sensor jarak HC-SR04 berbasis Mikrokontroler.

4.2. Pengujian Sensor HC-SR04

Pada pengujian ini dilakukan pembacaan nilai dari sensor jarak HC-SR04 yang akan dikonversikan kedalam nilai jarak. Pengujian ini dilakukan dengan membaca data dari sensor dan nilai akan ditampilkan pada LCD.

4.3 Pengujian Rangkaian Mikrokontroller ATMega8535

Pengujian pada rangkaian mikrokontroler ATMega8535 ini dapat dilakukan dengan menghubungkan rangkaian ini dengan power supplay sebagai sumber tegangan. Kaki 40 dihubungkan dengan sumber tegangan 5 volt, sedangkan kaki 20 dihubungkan dengan ground. Kemudian tegangan pada kaki 40 diukur dengan menggunakan voltmeter. Dari hasil pengujian didapatkan tegangan pada kaki 40 sebesar 4,9 volt. Langkah selanjutnya adalah memberikan program sederhana pada mikrokontroler ATMega8535. Program di atas akan mengubah logika yang ada pada P3.7 selama selang waktu tunda. Jika logika pada P3.7 high maka aka diubah menjadi low, demikian juga sebaliknya jika ligika pada P3.7 low maka akan diubah ke high, demikian seterusnya. Logika low akan mengaktifkan transistor sehingga LED akan menyala dan logika high akan menonaktifkan


(46)

transistor, sehingga LED padam. Dengan demikian program ini akan membuat LED berkedip terus menerus. Jika LED telah berkedip terus – menerus sesuai dengan program yang diinginkan, maka rangkaian mikrokontroler telah berfungsi dengan baik. Jika program tersebut diisikan ke mikrokontroler ATMega8535, kemudian mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian minimum mikrokontroller ATMega8535 telah bekerja dengan baik.

4.4 Pengujian Rangkaian Power Supplay (PSA)

Pengujian pada bagian rangkaian catu daya ini dapat dilakukan dengan mengukur tegangan keluaran dari rangkaian ini dengan menggunakan volt meter digital. dari hasil pengujian diperoleh tegangan keluaran pertama sebesar + 5,0 volt. Sedangkan tegangan keluaran kedua adalah sebesar +12,3 volt. Power Supply bertugas merubah tegangan listrik AC menjadi tegangan listrik DC yang stabil sampai suatu arus maksimum yang ditentukan oleh design. Pengujian dilakukan dengan memberikan tegangan 5 volt .

4.5 Pengujian LCD

Pada tahap ini dilakukan percobaan untuk mengaktifkan LCD sistem. Pengaktifan LCD ini dilakukan dengan cara menampilkan beberapa karakter pada LCD.


(47)

Untuk menampilkan beberapa karakter tersebut digunakan listing program sebagai berikut:

LCD:

#include <mega8535.h>

#include <delay.h>

// Alphanumeric LCD Module functions

#asm

equ __lcd_port=0x12 ;PORTD //Port D berfungsisebagai output ke LCD

#endasm

#include <lcd.h>

lcd_init(16)

lcd_gotoxy(0,0); // kolom 0 bariske 0

lcd_putsf("MIKROKONTROLLER "); //16 karaktertermasukspasi

lcd_gotoxy(0,1);


(48)

4.6 Pengujian Rangkaian Relay

Jika diinputkan logika high (dari mikro) maka relay akan aktif dan mengeluarkan tegangan 12 Volt. Saat diinputkan logika low dari mikro, maka relay tidak aktif dan tidak mengeluarkan tegangan.

Listing programnya adalah sebagai berikut:

#include <mega8535.h>

#include <delay.h>

void main(void)

{

PORTD=0×00; //port D sebagai output

DDRD=0×00; //status awal portd tidak mengeluarkan tegangan (0 volt)

while (1) //program akan terus looping terus

{

PORTD.7=1; //portD.7 diberi logika satu atau mengekuarkan tegangan 5 volt

delay_ms(2); // program berhenti beroperasi selama 2 milisecond

PORTD.7=0; //portD.7 diberi logika 0 atau tegangan 0 volt


(49)

Tabel 4.1 Hasil Pengujian dari Ketinggian Maksimal ke Minimal

Pegujian

Jarak Sebenarnya

27,5 cm 22 cm 17 cm 20 cm

1 30cm 24cm 18cm 13cm

2 29cm 23cm 18cm 13cm

3 28cm 23cm 18cm 13cm

4 28cm 23cm 18cm 12cm

5 28cm 23cm 18cm 12cm

Pengujian sistem secara keseluruhan ini dilakukan dengan menggabungkan semua peralatan ke dalam sebuah system yang terintegrasi. Tujuannya untuk mengetahui bahwa rangkaian yang dirancang telah bekerja sesuai yang diharapkan, lalu diberi arus melalui rangkaian power supply, keluaran dari power supply berupa tegangan sebesar 5 volt diteruskan ke rangkaian system minimum dan sensor

Data hasil pengukuran Pada data ini terdapat perbedaan antara data yang didapat dari nilai yang tertera dengan data yang dihasilkan oleh alat, dimana data yang dihasilkan oleh alat memiliki % deviasi


(50)

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari pembahasan yang telah diuraikan,maka dapat ditarik simpulan sebagai berikut:

1. Sistem secara umum sudah dapat bekerja sesuai dengan yang diharapkan, berjalan sesuai dengan rancangan yang dibuat terhadap ketinggian air. 2. Sensor HC-SR04 terbukti dapat digunakan sebagai sensor jarak untuk

mengukur jarak permukaan air.

3. Semakin tinggi nilai jarak yang di baca oleh sensor HC-SR04 maka ketinggian air yang di dapat akan semakin kecil,sehingga jarak berbanding terbalik dengan volume yang didapatkan

5.2 Saran

Setelah melakukan penulisan ini diperoleh beberapa hal yang dapat dijadikan saran untuk dapat dilakukan perancangan lebih lanjut, yaitu

1. Agar dilakukan peningkatan kemampuan pada alat ini, sehingga semakin cerdas dengan mengkombinasikan dengan komponen lain, sehingga sistem kerjanya akan lebih baik lagi

2.

Untuk dimasa yang akan datang, agar alat ini dapat ditingkatkan dan dikembangkan yang dilengkapi dengan tampilan LCD yang lebih canggih. 3. Wadah penampungan air seharusnya diperbesar karena sensor HC-SR04


(51)

DAFTAR PUSTAKA

Freden, Jacob. 2003. Handbook Of Modren Sensor, Physics, Designs, and Applications, Springer, San Diego USA

Isn R, Sinclair.1998. Sensor and Tranduser A Guide for Technicians. Great Britian. Newres

Andrianto,Heri. 2013. Pemrograman Mikrokontroler AVR ATMega8535. Informatika Bandung.


(52)

LAMPIRAN

////file yang asli///

/***************************************************** This program was produced by the

CodeWizardAVR V2.05.3 Standard Automatic Program Generator

© Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com

Project : Version :

Date : 20/05/2014 Author : user Company : free Comments:

Chip type : ATmega8535 Program type : Application

AVR Core Clock frequency: 1,000000 MHz Memory model : Small

External RAM size : 0 Data Stack size : 128


(53)

*****************************************************/

#include <mega8535.h> #include <delay.h> #include <stdio.h>

// Alphanumeric LCD functions #include <alcd.h>

#define SIG_out PORTA.1 #define SIG_in PINA.1 #define SIG_dir DDRA.1

// Declare your global variables here unsigned int jarak,jarak1,jarak2,i,tinggi; unsigned char data[16];

void main(void) {

// Declare your local variables here

// Input/Output Ports initialization // Port A initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In


(54)

PORTA=0x00; DDRA=0x00;

// Port B initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00;

DDRB=0x00;

// Port C initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;

DDRC=0x00;

// Port D initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00;


(55)

// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=0xFF // OC0 output: Disconnected TCCR0=0x00;

TCNT0=0x00; OCR0=0x00;

// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off

// Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00;

TCCR1B=0x00; TCNT1H=0x00;


(56)

TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00;

// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected ASSR=0x00;

TCCR2=0x00; TCNT2=0x00; OCR2=0x00;

// External Interrupt(s) initialization // INT0: Off

// INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00;


(57)

// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;

// USART initialization // USART disabled UCSRB=0x00;

// Analog Comparator initialization // Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;

SFIOR=0x00;

// ADC initialization // ADC disabled ADCSRA=0x00;

// SPI initialization // SPI disabled SPCR=0x00;

// TWI initialization // TWI disabled TWCR=0x00;


(58)

// Alphanumeric LCD initialization // Connections are specified in the

// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu: // RS - PORTD Bit 0

// RD - PORTD Bit 1 // EN - PORTD Bit 2 // D4 - PORTD Bit 3 // D5 - PORTD Bit 4 // D6 - PORTD Bit 5 // D7 - PORTD Bit 6 // Characters/line: 16 lcd_init(16);

lcd_gotoxy(0,0);

lcd_putsf("nisa system"); lcd_gotoxy(0,1);

lcd_putsf("water heigh"); delay_ms(1000);

while (1) {

// Place your code here*/

SIG_dir = 1; // set SIG pin as output SIG_out = 0; //


(59)

delay_us(20); // send start pulse SIG_out = 1; //

SIG_dir = 0; // set SIG pin as input TCNT1=0;

while (SIG_in); // wait for return pulse

TCCR1B=0x02; // start timer (timer period = 2uS)

while ((!SIG_in) && !(TIFR & 0x80)); // timing the return pulse TCCR1B=0x00; // stop timer

jarak = TCNT1; // untuk menhitung jaraknya // jarak1=jarak1+jarak;

// i++;

// jarak2=jarak1/5; // jarak1=0; i=0; // jarak2=jarak2/20; // tinggi=193-jarak2;

sprintf(data,"jarak=%.2d cm",jarak); lcd_gotoxy(0,0);

lcd_puts(data); delay_ms(100); }


(60)

(61)

(1)

TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00;

// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected ASSR=0x00;

TCCR2=0x00; TCNT2=0x00; OCR2=0x00;

// External Interrupt(s) initialization // INT0: Off

// INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00;


(2)

// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;

// USART initialization // USART disabled UCSRB=0x00;

// Analog Comparator initialization // Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;

SFIOR=0x00;

// ADC initialization // ADC disabled ADCSRA=0x00;

// SPI initialization // SPI disabled SPCR=0x00;

// TWI initialization // TWI disabled TWCR=0x00;


(3)

// Alphanumeric LCD initialization // Connections are specified in the

// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu: // RS - PORTD Bit 0

// RD - PORTD Bit 1 // EN - PORTD Bit 2 // D4 - PORTD Bit 3 // D5 - PORTD Bit 4 // D6 - PORTD Bit 5 // D7 - PORTD Bit 6 // Characters/line: 16 lcd_init(16); lcd_gotoxy(0,0); lcd_putsf("nisa system"); lcd_gotoxy(0,1); lcd_putsf("water heigh"); delay_ms(1000); while (1) {

// Place your code here*/

SIG_dir = 1; // set SIG pin as output SIG_out = 0; //


(4)

delay_us(20); // send start pulse SIG_out = 1; //

SIG_dir = 0; // set SIG pin as input TCNT1=0;

while (SIG_in); // wait for return pulse

TCCR1B=0x02; // start timer (timer period = 2uS)

while ((!SIG_in) && !(TIFR & 0x80)); // timing the return pulse TCCR1B=0x00; // stop timer

jarak = TCNT1; // untuk menhitung jaraknya // jarak1=jarak1+jarak;

// i++;

// jarak2=jarak1/5; // jarak1=0; i=0; // jarak2=jarak2/20; // tinggi=193-jarak2;

sprintf(data,"jarak=%.2d cm",jarak); lcd_gotoxy(0,0);

lcd_puts(data); delay_ms(100); }


(5)

(6)