• Tidak ada hasil yang ditemukan

Alat Ukur Kualitas Udara Menggunakan Sen

N/A
N/A
Protected

Academic year: 2018

Membagikan "Alat Ukur Kualitas Udara Menggunakan Sen"

Copied!
55
0
0

Teks penuh

(1)

ALAT UKUR KUALITAS UDARA MENGGUNAKAN SENSOR

GAS MQ 135 BERBASIS MIKROKONTROLLER ATMega16A

PROJECT AKHIR 1

MAULANA UBAIDILLAH NIM : 122411005

PROGRAM STUDI D3

METROLOGI DAN INSTRUMENTASI

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

(2)

ALAT UKUR KUALITAS UDARA MENGGUNAKAN SENSOR

GAS MQ 135 BERBASIS MIKROKONTROLLER ATMega16A

PROJECT AKHIR 1

Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Ahli Madya Jurusan D3 Metrologi dan Instrumentasi Fakultas Matematika dan Ilmu Pengetahuan Alam

PROGRAM STUDI D3 METROLOGI DAN INSTRUMENTASI

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

(3)

i PERSETUJUAN

Yang bertanda tangan di bawah ini, Dosen Pembimbing Projek Akhir 1 Menyatakan bahwa Laporan projek akhir 1 :

Dengan judul:

“ALAT UKUR KUALITAS UDARA MENGGUNAKAN SENSOR GAS MQ 135

BERBASIS MIKROKONTROLLER ATMega16A”

Telah selesai diperiksa dan dinyatakan selesai, serta dapat diajukan dalam sidang pertanggung jawaban laporan projek akhir 1.

Diluluskan di Medan, 29 Januari 2015

Ketua Derpartemen Dosen Pembimbing

D3 Metrologi dan Instrumentasi Projek Akhir 1

Dr. Diana Alemin Barus M.Sc Dr. Diana Alemin Barus M.Sc NIP. 19660729 199203 2 002 NIP. 19660729 199203 2 002

(4)

ii PERNYATAAN

ALAT UKUR KUALITAS UDARA MENGGUNAKAN SENSOR GAS MQ 135 BERBASIS MIKROKONTROLLER ATMega16A

PROJECT AKHIR 1

Saya mengakui bahwa projek akhir 1 ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Februari 2015

(5)

iii

PENGHARGAAN

Alhamdulillahirabbil’alamiin,

Puji syukur Penulis panjatkan Kehadirat Allah SWT. Yang Maha Menguasai dan Maha Menggerakkan hati serta anggota tubuh setiap makhluknya, sehingga Penulis dapat menyelesaikan penulisan laporan Project Akhir 1 ini dan tidak lupa shalawat serta salam Penulis panjatkan kepada junjunan Nabi Muhammad SAW yang kita harapkan syafa’atnya di akhirat kelak.

Laporan ini disusun sebagai salah satu syarat untuk menyelesaikan pendidikan Diploma III pada program studi Metrologi dan Instrumentasi di Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara. Pada project akhir 1 ini Penulis mengambil judul :

ALAT UKUR KUALITAS UDARA MENGGUNAKAN SENSOR GAS MQ 135 BERBASIS MIKROKONTROLLER ATMega16A

Penulis sangat menyadari keterbatasan yang dimiliki, karena terselesaikannya penyusunan laporan ini tidak terlepas dari bantuan serta dukungan dari berbagai pihak kepada Penulis. Untuk itu, izinkanlah Penulis mengucapkan terima kasih yang sebesar-besarnya kepada :

1. Kedua orang tua penulis dan serta saudara kandung yang telah memberikan dukungan, bantuan moril maupun materil, semangat dan yang selalu mendo’akan penulis.

2. Ibu Dr. Diana Alemin Barus, M.Sc, selaku Ketua Program Studi D-III Metrologi dan Instrumentasi Fakultas Matematika Dan Ilmu Pengetahuan Alam serta telah menjadi dosen pembimbing dalam penulisan laporan project 1 ini.

3. Bapak Dr. Sutarman, M.Sc, selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam.

4. Bapak Dr. Marhaposan Situmorang, selaku Ketua Departeman Fisika Fakultas Matematika Dan Ilmu Pengetahuan Alam.

5. Seluruh Dosen dan Pegawai Program Studi Diploma Tiga (III) Metrologi dan Instrumentasi Departemen Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.

6. Seluruh teman-teman jurusan D3 Metrologi dan Instrumentasi angkatan 2012 yang telah membantu dan memberikan dukungan untuk menyelesaikan laporan ini.

(6)

iv Penulis menyadari sepenuhnya bahwa dalam pembuatan laporan ini masih jauh dari kesempurnaan, untuk itu penulis mengharapkan kritik dan saran dari pembaca yang bersifat membangun dalam penyempurnaan laporan ini.

Semoga laporan ini menjadi amal jariyah yang baik bagi penulis dan menjadi ilmu yang bermanfaat bagi pembaca.

Amin Yaa Rabbal’alamin

Medan, Februari 2015 Hormat Saya,

(7)

v

ABSTRAK

Polusi udara menjadi masalah penting yang dapat mengancam kehidupan manusia. Banyak aktifitas-aktifitas manusia yang menyebabkan terjadinya polusi udara. Oleh sebab itu, diperlukan suatu monitoring tingkat polusi udara untuk mengetahui indeks polusi udara di kawasan tersebut dalam rangka mempertahankan kadar polutan di bawah nilai ambang batasnya. Untuk mengetahui kadar gas polutan dengan menggunakan sensor gas MQ-135 yang peka terhadap kualitas udara. Dan untuk tampilan indeks menggunakan LCD dan secara software dengan komunikasi serial yang sebelumnya di proses oleh mikrokontroller. Sistem ini diharapkan mampu memberikan solusi terhadap masalah pencemaran udara karena biaya yang diperlukan terjangkau dibanding dengan alat dari badan lingkungan hidup. Project Akhir 1 ini dilakukan perancangan dan pembuatan alat monitoring polusi udara dengan sensor MQ-135 diimplementasikan pada sebuah miniplant berbasis mikrokontroller.

(8)

vi

ABSTRACT

Air pollution is an important problem that can threaten human life. Many human activities that cause air pollution. Therefore, we need a monitoring air pollution levels to determine the index of air pollution in the region in order to maintain the levels of pollutants below the threshold value. To determine levels of pollutant gases by using the MQ-135 gas sensors are sensitive to air quality. And to the LCD display using the previous index in the process by the microcontroller. The system is expected to provide a solution to the problem of air pollution due to the cost of the required affordable compared by means of the environmental agency. Final Project 1 is to design and manufacture of air pollution monitoring with sensor MQ-135 is implemented in a microcontroller-based miniplant.

(9)

vii

2.3.1 Konektor dan Pengaturan Jumper ... 7

2.3.2 Prinsip Kerja Sensor Gas MQ-135 ... 7

2.4Mikrokontroler ATMega 16 ... 9

2.4.1 Arsitektur ATMEGA16 ... 10

2.4.2 Konfigurasi Pin ATMega 16 ... 11

2.4.3 Sistem Clock AVR ATMega16 ... 11

2.4.4 Konfigurasi PIN ATmega16 ... 12

(10)

viii

2.10 CodeVisionAVR ... 23

BAB 3 PERANCANGAN SISTEM ... 27

3.1Diagram Blok Rangkaian ... 27

3.2Rangkaian Mikrokontroler ATMega 16 ... 27

3.3Perancangan Sensor Gas MQ-135 ... 28

3.4Pengaplikasian LCD ... 29

3.5Flowchart Sensor ... 30

BAB 4 ANALISIS DAN PENGUJIAN ... 32

4.1Pengujian Rangkaian Mikrokontroler ATMega16 ... 32

4.2Pengujian Sensor Gas MQ-135 ... 33

4.3Pengujian Rangkaian Liquid Crystal Display (LCD) 2x16 ... 35

BAB 5 KESIMPULAN DAN SARAN ... 36

5.1 Kesimpulan ... 36

5.2 Saran ... 36 DAFTAR PUSTAKA

LAMPIRAN

Lampiran 1 : Program Mikrokontroller Lampiran 2 : Foto Alat

(11)

ix

DAFTAR GAMBAR

Gambar 2.1 (a) Sensor MQ-135 dan (b) Skematik Sensor MQ-135 ... 3

Gambar 2.2 Cara Kerja Kendali ON/OFF Sensor Gas ... 8

Gambar 2.3 Blok Diagram ATMega 16 ... 11

Gambar 2.4 Pin-pin Pada ATMega 16 ... 12

Gambar 2.5 Peta Memori ATMega16 ... 14

Gambar 2.6 ADC Control and Status Register A – ADCSRA ... 15

Gambar 2.7 ADC Multiplexer ... 16

Gambar 2.8 Register SFIOR ... 16

Gambar 2.9 LCD (Liquid Crystal Display) ... 18

Gambar 2.10 Pengiriman huruf A tanpa bit paritas ... 20

Gambar 2.11 Port Serial ... 20

Gambar 2.12 Konfigurasi Pin IC MAX232 ... 22

Gambar 2.13 Tampilan Layout Schematic Eagle 6.5.0 ... 23

Gambar 2.14 CodeVisionAVR ... 25

Gambar 3.1 Diagram Blok Sistem ... 27

Gambar 3.2 Rangkaian Keseluruhan Sistem Minimum ... 27

Gambar 3.3 Rangkaian Mikrokontroler ATMega16 ... 28

Gambar 3.4 Rangkaian Sistim minimum dengan sensor Gas ... 28

Gambar 3.5 Rangkaian skematik dari LCD ke Mikrokontroller ... 29

Gambar 3.6 Rangkaian skematik konektor yang dihubungkan dari LCD ... 29

Gambar 3.7 Flowchart Sensor ... 30

(12)

x

DAFTAR TABEL

Tabel 2.1 Komposisi Udara Bersih ... 5

Tabel 2.2 Udara Bersih dan Udara Tercemar Menurut WHO ... 5

Tabel 2.2 Konektor dan Pengaturan Jumper ... 7

Tabel 2.3 Fungsi Khusus Port B ... 12

Tabel 2.4 Fungsi Khusus Port C ... 13

Tabel 2.5 Fungsi Khusus Port D ... 13

Tabel 2.6 Peta memory data ATMega 16 ... 14

Tabel 2.7 Konfigurasi Clock ADC ... 16

Tabel 2.8 Pemilihan sumber picu ADC ... 17

Tabel 2.9 Deskripsi Pin Pada LCD ... 18

Tabel 2.10 Konfigurasi Port Serial ... 20

Tabel 2.11 Fungsi IC MAX232 ... 22

Tabel 3.1 Susunan Keterangan LED ... 31

Tabel 4.1 Data Pendeteksian Gas CO2 di Udara ... 33

Tabel 4.2 Data Pendeteksian Asap Rokok ... 33

(13)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Pencemaran udara dewasa ini semakin menampakkan kondisi yang sangat memprihatinkan. Sumber pencemaran udara dapat berasal dari berbagai kegiatan antara lain industri, transportasi, perkantoran, dan perumahan. Berbagai kegiatan tersebut merupakan kontribusi terbesar dari pencemar udara yang dibuang ke udara bebas. Sumber pencemaran udara juga dapat disebabkan oleh berbagai kegiatan alam, seperti kebakaran hutan, gunung meletus, gas alam beracun, dan lain-lain. Dampak dari pencemaran udara tersebut adalah menyebabkan penurunan kualitas udara, yang berdampak negatif terhadap kesehatan manusia. Pertumbuhan pembangunan seperti industri, transportasi, dan lain-lain disamping memberikan dampak positif namun disisi lain akan memberikan dampak negatif dimana salah satunya berupa pencemaran udara dan kebisingan baik yang terjadi didalam ruangan (indoor) maupun di luar ruangan (outdoor) yang dapat membahayakan kesehatan manusia dan terjadinya penularan penyakit. Udara sendiri adalah salah satu kebutuhan manusia, selain makanan, sandang, rumah, dan sebagainya. Udara sangat berpengaruh pada kesehatan manusia, terutama udara di luar ruangan; kualitas udara yang buruk dapat menyebabkan penyakit pada manusia. Kualitas udara yang buruk dapat ditemui di kawasan industri atau jalan raya yang padat. Oleh karena itu, diperlukan kegiatan yaitu pengukuran kualitas udara.

1.2 Rumusan Masalah

Pada laporan project ini membahas tentang pendeteksian kadar udara yang terdiri sensor gas MQ-135, Mikrokontroler ATMega 16 sebagai pengontrolnya beserta software pemrogramannnya, LCD sebagai display hasil pengukuran dan display GUI dengan komputer.

1.3 Tujuan Penulisan

Penulisan laporan proyek ini adalah untuk :

1. Sebagai salah satu syarat untuk dapat menyelesaikan program Diploma Tiga (D-III) Metrologi dan Instrumentasi FMIPA Universitas Sumatera Utara.

(14)

2 3. Merancang suatu alat pengukuran kualitas udara dan kemudian ditampilkan pada LCD

dengan menggunakan Mikrokontroler ATMega 16.

4. Penulis ingin memberikan penjelasan tentang penggunaan dan cara kerja alat ukur kualitas udara menggunakan sensor gas MQ-135 yang Berbasis Mikrokontroler ATMega16.

1.4 Batasan Masalah

Dalam penulisan Laporan Project Akhir 1 ini, dibuat suatu batasan-batasan dengan maksud memudahkan analisis yng dibutuhkan dalam rangka pemecahan masalah. Adapun batasannya yaitu sebagai berikut :

1. Sensor gas MQ-135 hanya digunakan untuk mendeteksi kualitas udara.

2. Perancangan perangkat keras (hardware) yang terdiri dari mikrokontroler ATMega 16, sensor gas MQ-135, dan LCD 16x2 karakter.

3. Bahasa pemrograman yang digunakan pada mikrokontroler adalah bahasa C.

4. Display atau penampil nilai data menggunakan LCD (liquid crystal display) dan GUI. 5. Mikrokontroler yang digunakan adalah ATMega 16.

1.5 Sistematika Penulisan

Dalam penyusunan Laporan Project Akhir 1 ini, pembahasan mengenai sistem alat yang dibuat dibagi menjadi lima bab dengan sistematika sebagai berikut :

BAB I : PENDAHULUAN

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

BAB II : TINJAUAN PUSTAKA

Dalam bab ini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan dan cara kerja dari rangkaian teori pendukung itu antara lain tentang Mikrokontroler ATMega 16, sensor gas MQ-135 dan prinsip kerjanya, software pendukung dan bahasa program yang digunakan.

BAB III : PERANCANGAN SISTEM

(15)

3 BAB IV : ANALISIS DAN PENGUJIAN

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

BAB V : PENUTUP

KESIMPULAN DAN SARAN

Berisi kesimpulan yang diperoleh dari pembuatan laporan project akhir 1 ini dan saran-saran untuk pengembangannya.

DAFTAR PUSTAKA

(16)

4

BAB II

TINJAUAN PUSTAKA

2.1 Pencemaran Lingkungan

Pencemaran lingkungan merupakan masalah yang sangat serius bagi seluruh penduduk di dunia. Karena, banyak dampak yang akan diperoleh akibat tidak terpeliharanya lingkungan hidup. Pencemaran lingkungan dapat menyebabkan penurunan kualitas udara, penyakit akibat tercemarnya udara, perubahan iklim atau cuaca di lingkungan tertentu yang jika dibiarkan pada akhirnya dapat berujung dengan kematian massal.

Polusi atau pencemaran lingkungan sendiri dapat diartikan masuknya atau dimasukkannya makhluk hidup, zat energi, dan atau komponen lain ke dalam lingkungan, atau berubahnya tatanan lingkungan oleh kegiatan manusia atau oleh proses alam sehingga kualitas lingkungan turun sampai ke tingkat tertentu yang menyebabkan lingkungan menjadi kurang atau tidak dapat berfungsi lagi sesuai dengan peruntukannya. (Undang-undang Pokok Pengelolaan Lingkungan Hidup No. 4 Tahun 1982).

Perubahan iklim merupakan salah satu dampak akibat adanya pencemaran lingkungan. Pencemaran lingkungan merupakan salah satu masalah penting yang sedang dihadapi oleh penduduk di dunia dan Indonesia saat ini, dimana permasalahan tersebut semakin meningkat sejalan dengan peningkatan jumlah penduduk, pertumbuhan ekonomi dan pertukaran penduduk di kota-kota besar.

Dampak negatif akibat menurunnya kualitas udara cukup berat terhadap lingkungan terutama kesehatan manusia yaitu dengan menurunnya fungsi paru, peningkatan penyakit pernapasan, dampak karsinogen dan beberapa penyakit lainnya. Selain itu pencemaran udara dapat menimbulkan bau, kerusakan materi, gangguan penglihatan dan dapat menimbulkan hujan asam yang merusak lingkungan.

(17)

5 2.2 Sumber Daya Udara

Udara merupakan salah satu unsur alam yang pokok bagi makhluk hidup yang ada di muka bumi terutama manusia. Tanpa udara yang bersih maka manusia akan terganggu terutama kesehatannya yang pada akhirnya dapat menyebabkan kematian. Udara dikatakan normal dan dapat mendukung kehidupan manusia apabila komposisinya seperti tersebut dalam table di bawah ini. Sedangkan apabila terjadi penambahan gas-gas lain yang menimbulkan gangguan serta perubahan komposisi tersebut, maka dikatakan udara sudah tercemar/terpolusi.

Kualitas udara ambien dari suatu daerah ditentukan oleh daya dukung alam daerah tersebut serta jumlah sumber pencemaran atau beban pencemaran dari sumber yang ada di daerah tersebut. Zat-zat yang dikeluarkan oleh sumber pencemar ke udara dan dapat mempengaruhi kualitas udara antara lain gas Nitrogen Oksida (NOx), Sulfur Dioksida (SO2), debu serta kandungan Timah Hitam (Pb) dalam debu.

Tabel 2.1 Komposisi Udara Bersih Jenis gas Formula Konsentrasi

(% volume) Ppm

Sumber : Environmental Chemistry, Air and Water Pollution Tabel 2.2 Udara Bersih dan Udara Tercemar Menurut WHO

Parameter Udara Bersih Udara Tercemar

(18)

6 ADC (analog-to-digital converter) di mikrokontroler / pin analog input Arduino dengan menambahkan satu buah resistor saja (berfungsi sebagai pembagi tegangan / voltage divider).

Gambar 2.1 Sensor Gas MQ-135 Spesifikasi Sensor MQ-135 :

1. Sumber catu daya menggunakan tegangan 5 Volt. 2. Menggunakan ADC dengan resolusi 10 bit. 3. Tersedia 1 jalur output kendali ON/OFF.

4. Pin Input/Output kompatibel dengan level tegangan TTL dan CMOS. 5. Dilengkapi dengan antarmuka UART TTL dan I2C.

6. Signal instruksi indikator output;

7. Output Ganda sinyal (output analog, dan output tingkat TTL);

8. TTL output sinyal yang valid rendah; (output sinyal cahaya rendah, yang dapat diakses mikrokontroler IO port)

9. Analog Output dengan meningkatnya konsentrasi, semakin tinggi konsentrasi, semakin tinggi tegangan;

10.Memiliki umur panjang dan stabilitas handal; 11.karakteristik pemulihan respon cepat.

2.3.1 Konektor dan Pengaturan Jumper

Tabel 2.3 Konektor dan Pengaturan Jumper

Pin Nama Fungsi

1 GND Titik referensi untuk catu daya input

2 VCC Terhubung ke catu daya (5 V)

3 RX TTL Input serial level TTL ke modul Sensor 4 TX Output serial level TTL ke modul Sensor 5 SDA I2C-bus data input / output

(19)

7 2.3.2 Prinsip Kerja Sensor Gas MQ-135

Pada modul sensor gas MQ-135 terdapat 2 buah LED indikator yaitu LED indikator merah dan LED indikator hijau. Pada saat power-up, LED merah akan berkedip sesuai dengan alamat I2C modul. Jika alamat I2C adalah 0xE0 maka LED indikator akan berkedip 1 kali. Jika alamat I2C adalah 0xE2 maka LED indikator akan berkedip 2 kali. Jika alamat I2C adalah 0xE4 maka LED indikator akan berkedip 3 kali dan demikian seterusnya sampai alamat I2C 0xEE maka LED indikator akan berkedip 8 kali.

Pada saat power-up, LED hijau akan berkedip dengan cepat sampai kondisi pemanasan sensor dan hasil pembacaan sensor sudah stabil. Waktu yang diperlukan untuk mencapai kondisi stabil berbeda-beda untuk tiap sensor yang digunakan tergantung pada kecepatan respon sensor dan kondisi heater pada sensor. Jika kondisi stabil sudah tercapai, maka LED hijau akan menyala tanpa berkedip. Pada kondisi operasi normal (setelah kondisi power-up), LED merah akan menyala atau padam sesuai dengan hasil pembacaan sensor dan mode operasi yang dipilih. Sedangkan selama hasil pembacaan sensor stabil, LED hijau akan tetap menyala dan hanya berkedip pelan (tiap 1 detik) jika ada perubahan konsentrasi gas.

Modul sensor juga memiliki 1 pin output open collector yang status logikanya akan berubah-ubah, sesuai dengan hasil pembacaan sensor gas dan batas atas serta batas bawah yang telah ditentukan. Pin output ini dapat dihubungkan dengan aktuator (exhaust atau alarm) sehingga modul ini dapat berfungsi sebagai pemonitor konsentrasi gas secara mandiri. Modul ini akan membaca nilai konsentrasi gas secara otomatis, membandingkan dengan batas-batas nilai yang telah diatur dan kemudian mengubah status logika pin output kendali ON/OFF sesuai dengan mode operasi yang digunakan.

Ada 2 mode operasi yang dapat tersedia, yaitu mode operasi Hysterisis :

(20)

8 Pada mode operasi Window:

1. Jika nilai sensor hasil konversi ADC lebih kecil dari pada batas bawah, maka pin output akan On (Transistor Open Collector berada pada keadaan Saturasi dan LED indikator merah menyala).

2. Jika nilai sensor hasil konversi ADC lebih besar dari pada batas atas, maka pin output akan On (Transistor Open Collector berada pada keadaan Saturasi dan LED indikator merah menyala).

3. Jika nilai sensor hasil konversi ADC sama dengan atau berada di antara batas atas dan batas bawah, maka logika pin output akan Off (Transistor Open Collector berada pada keadaan Cut-off dan LED indikator merah tidak menyala).

Jika sumber nilai batas yang dipilih adalah menggunakan variabel resistor pada modul sensor, maka mode operasi yang bisa berlaku hanya mode operasi Hysterisis. Nilai variabel resistor akan digunakan sebagai nilai batas atas. Sedangkan nilai batas bawah akan selalu bernilai 50 poin di bawah nilai batas atas. Jika sumber nilai batas yang dipilih adalah menggunakan nilai yang tersimpan pada EEPROM modul sensor, maka mode operasi yang bisa berlaku adalah mode operasi Hysterisis dan modeoperasi Window. Nilai batas atas, nilai batas bawah, dan mode operasi, dapat diatur melalui antarmuka UART TTL atau I2C dengan menggunakan bahasa pemrograman.

Berikut ini ilustrasi cara kerja kendali ON/OFF menggunakan modul sensor gas dengan nilai batas atas sebesar 450 dan nilai batas bawah sebesar 350.

Gambar 2.2 Cara Kerja Kendali ON/OFF Sensor Gas

2.4 Mikrokontroler ATMega 16

(21)

9 digunakan untuk pengontrolan otomatis dan manual pada perangkat elektronika. Mikrokontroler adalah suatu IC dengan kepadatan yang sangat tinggi, dimana semua bagian yang diperlukan untuk suatu kontroler sudah dikemas dalam satu keping, biasanya terdiri dari CPU, RAM, EEPROM, I/O, TIMER, dan lain-lain.

Mikrokontroler merupakan sistem komputer yang seluruh atau sebagian besar elemennya dikemas dalam satu chip IC (Intergrated Circuit) sehingga sering juga disebut single chip microcomputer, yang masuk dalam katagori embedded komputer. Suatu kontroler digunakan untuk mengontrol suatu proses atau aspek-aspek dari lingkungan. Satu contoh aplikasi dari mikrokontroler adalah untuk memonitor rumah. Ketika suhu naik kontroler membuka jendela dan sebaliknya. Pada masanya, kontroler dibangun dari komponen-komponen logika secara keseluruhan, sehingga menjadikannya besar dan berat. Setelah itu barulah dipergunakan mikroprosesor sehingga keseluruhan kontroler masuk kedalam PCB yang cukup kecil. Hingga saat ini masih sering kita lihat kontroler yangdikendalikan oleh mikroprosesor biasa (Zilog Z80, Intel 8088, Motorola 6809, dsb).

Salah satu mikrokontroler yang saat ini banyak digunakan adalah mikrokontroler AVR. AVR adalah mikrokontroler RISC (Reduce Instruction Set Compute) 8 bit berdasarkan arsitektur Harvard, yang dibuat Atmel pada tahun1996. AVR yang mempunyai kepanjangan Advanced Versatile RISC atau Alf and Vegard’s Processor yang berasal dari nama dua mahasiswa Norwegian Institute of Technology (NTH), yaitu Alf-Egil Bogen dan Vegard Wollan.

AVR memiliki keunggulan dibandingkan dengan mikrokontroler lain, keunggulan mikrokontroler AVR yaitu AVR memiliki kecepatan eksekusi program yang lebih cepat dikarenakan sebagian besar instruksi dieksekusi dalam 1 siklus clock, lebih cepat dibandingkan dengan mikrokontroler MCS51 yang memiliki arsitektur CISC (Complex Instruction Set Compute) dimana mikrokontroler MCS51 membutuhkan 12 siklus clock untuk mengeksekusi 1 instruksi. Selain itu, mikrokontroler AVR memiliki fitur yang lengkap (ADC Internal, EEPROM Internal, Timer/Counter, Watchdog Timer, PWM, Port I/O, Komunikasi Serial, Komparator, I2C, dan lain-lain), sehingga dengan fasilitas yang lengkap ini, programmer dan desainer dapat menggunakannya untuk berbagai aplikasi sistem elektronika seperti robot, otomasi industri, peralatan telekomunikasi, dan berbagai keperluan lain. Secara umum mikrokontroler AVR dapat dikelompokkan menjadi 3 kelompok, yaitu keluarga AT90Sxx, ATMega, dan Attiny.

(22)

10 dengan mikroprosesor, mikrokontroler menyediakan memori dalam serpih yang sama dengen prosesornya (in chip).

2.4.1 Arsitektur ATMEGA16

Mikrokontroler ini menggunakan arsitektur Harvard yang memisahkan memori program dari memori data, baik bus alamat maupun bus data, sehingga pengaksesan program dan data dapat dilakukan secara bersamaan (concurrent). Secara garis besar mikrokontroler ATMega16 terdiri dari :

1. Arsitektur RISC dengan throughput mencapai 16 MIPS pada frekuensi 16MHz. 2. Memiliki kapasitas Flash memori 16Kbyte, EEPROM 512 Byte, dan SRAM 1Kbyte 3. Saluran I/O 32 buah, yaitu Port A, Port B, Port C, dan Port D.

4. CPU yang terdiri dari 32 buah register 5. User interupsi internal dan eksternal

6. Bandar antarmuka SPI dan Bandar USART sebagai komunikasi serial 7. Fitur Peripheral

 Dua buah 8-bit timer/counter dengan prescaler terpisah dan mode compare

 Satu buah 16-bit timer/counter dengan prescaler terpisah, mode compare, dan mode capture

 Real time counter dengan osilator tersendiri

 Empat kanal PWM dan Antarmuka komparator analog

 8 kanal, 10 bit ADC

 Byte-oriented Two-wire Serial Interface

(23)

11 Gambar 2.3 Blok Diagram ATMega 16

2.4.2 Konfigurasi Pin ATMega 16

Konfigurasi pin mikrokontroler Atmega16 dengan kemasan 40-pin dapat dilihat pada Gambar 2.2. Dari gambar tersebut dapat terlihat ATMega16 memiliki 8 pena untuk masing-masing Port A, Port B, Port C, dan Port D.

2.4.3 Sistem Clock AVR ATMega16

(24)

12 mikrokontroler kita memerlukan sistem clock, sistem ini bisa di bangun dari clock eksternal maupun clock internal.

2.4.4 Konfigurasi PIN ATmega16

Gambar 2.4 Pin-pin Pada ATMega 16

Konfigurasi pin ATMega 16 dengan kemasan 40 pin DIP (Dual Inline Package) dapat dilihat pada Gambar 2.1. Dari gambar diatas dapat dijelaskan fungsi dari masing-masing pin ATMega 16 sebagai berikut :

1. VCC merupakan pin yang berfungsi sebagai masukan catu daya. 2. GND merupakan pin Ground

3. Port A (PA0 – PA7) merupakan pin input/output dua arah (full duplex) dan selain itu merupakan pin masukan ADC

4. Port B (PB0 – PB7) merupakan pin input/output dua arah (full duplex) dan selain itu merupakan pinkhusus, seperti dapat dilihat pada tabel dibawah ini.

Tabel 2.4 Fungsi Khusus Port B

Pin Fungsi Khusus

PB7 SCK (SPI Bus Serial Clock)

PB6 MISO (SPI Bus Master Input/ Slave Output) PB5 MOSI (SPI Bus Master Output/ Slave Input) PB4 SS (SPI Slave Select Input)

PB3 AIN1 (Analog Comparator Negative Input)

OC0 (Timer/Counter0 Output Compare Match Output) PB2 AIN0 (Analog Comparator Positive Input)

INT2 (External Interrupt 2 Input)

PB1 T1 (Timer/ Counter1 External Counter Input) PB0 T0 (Timer/Counter External Counter Input)

(25)

13 5. Port C (PC0 – PC7) merupakan pin input/output dua arah (full duplex) dan selain itu

merupakan pinkhusus, seperti dapat dilihat pada tabel dibawah ini. Tabel 2.5 Fungsi Khusus Port C

Pin Fungsi khusus

PC2 TCK (Joint Test Action Group Test Clock)

PC1 SDA ( Two-wire Serial Bus Data Input/Output Line) PC0 SCL ( Two-wire Serial Bus Clock Line)

6. Port D (PD0 – PD7) merupakan pin input/output dua arah (full duplex) dan selain itu merupakan pinkhusus, seperti dapat dilihat pada tabel dibawah ini.

Tabel 2.6 Fungsi Khusus Port D

Pin Fungsi khusus

PD7 OC2 (Timer/Counter Output Compare Match Output) PD6 ICP (Timer/Counter1 Input Capture Pin)

PD5 OC1A (Timer/Counter1 Output Compare A Match Output)

PD4 OC1B (Timer/Counter1 Output Compare B Match Output)

PD3 INT1 (External Interrupt 1 Input) PD2 INT0 (External Interrupt 0 Input) PD1 TXD (USART Output Pin) PD0 RXD (USART Input Pin)

7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler. 8. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal

9. AVCC merupakan pin masukan tegangan untuk ADC 10. AREF merupakan pin masukan tegangan referensi ADC.

2.4.5 Peta Memori ATMega16

(26)

14 program bootdan aplikasi seperti terlihat pada di bawah. Bootloader adalah program kecil yang bekerja pada saat sistem dimulai yang dapat memasukkan seluruh program aplikasi ke dalam memori prosesor.

Gambar 2.5 Peta Memori ATMega16

2.4.6 Memori Data (SRAM)

(27)

15 Tabel 2.7 Peta memory data ATMega 16

Register file Data address space dari memori ini, ketika catu daya dimatikan, data terakhir yang ditulis pada memori EEPROM masih tersimpan pada memori ini, atau dengan kata lain memori EEPROM bersifat nonvolatile. Alamat EEPROM mulai dari $000 sampai $1FF.

2.4.8 Analog To Digital Converter

AVR ATMega16 merupakan tipe AVR yang telah dilengkapi dengan 8 saluran ADC internal dengan resolusi 10 bit. Dalam mode operasinya, ADC dapat dikonfigurasi, baik single endedinput maupun differentialinput. Selain itu, ADC ATMega16 memiliki konfigurasi pewaktuan, tegangan referensi, mode operasi, dan kemampuan filter derau (noise)yang amat fleksibel sehingga dapat dengan mudah disesuaikan dengan kebutuhan dari ADC itu sendiri. ADC pada ATMega16 memiliki fitur-fitur antara lain :

 Resolusi mencapai 10-bit

 Akurasi mencapai ± 2 LSB

 Waktu konversi 13-260µs

(28)

16

 Jangkauan tegangan input ADC bernilai dari 0 hingga VCC

 Disediakan 2,56V tegangan referensi internal ADC

 Mode konversi kontinyu atau mode konversi tunggal

 Interupsi ADC complete

 Sleep Mode Noise canceler

Proses inisialisasi ADC meliputi proses penentuan clock, tegangan referensi, formal data keluaran, dan modus pembacaan. Register-register yang perlu diatur adalah sebagai berikut:

 ADC Control and Status Register A – ADCSRA

Gambar 2.6 ADC Control and Status Register A – ADCSRA ADEN : 1 = adc enable, 0 = adc disable

ADCS : 1 = mulai konversi, 0 = konversi belum terjadi

ADATE : 1 = auto trigger diaktifkan, trigger berasal dari sinyal yang dipilih (set pada trigger SFIOR bit ADTS). ADC akan start konversi pada edge positif sinyal trigger.

ADIF : diset ke 1, jika konversi ADC selesai dan data register ter-update. Namun ADC Conversion Complete Interrupt dieksekusi jika bit ADIE dan bit-I dalam register SREG diset.

ADIE : diset 1, jika bit-I dalam register SREG di-set.

ADPS[0..2] : Bit pengatur clock ADC, faktor pembagi 0 … 7 = 2, 4, 8, 16, 32, 64, 128. Tabel 2.8 Konfigurasi Clock ADC

ADPS2 ADPS1 ADPS0 Division Factor

0 0 0 2

(29)

17 REFS 0, 1 : Pemilihan tegangan referensi ADC

00 : Vref = Aref

01 : vref = AVCC dengan eksternal capasitor pada AREF

10 : vref = internal 2.56 volt dengan eksternal kapasitor pada AREF ADLAR : Untuk setting format data hasil konversi ADC, default = 0

• Special Function IO Register-SFIOR

SFIOR merupakan register 8 bit pengatur sumber picu konversi ADC, apakah dari picu eksternal atau dari picu internal, susunannya seperti yang terlihat pada gambar berikut :

Gambar 2.8 Register SFIOR

ADTS[0...2] : Pemilihan trigger (pengatur picu) untuk konversi ADC, bit-bit ini akan berfungsi jika bit ADATE pada register ADCSRA bernilai 1. Konfigurasi bit ADTS[0...2] dapat dilihat pada Tabel di bawah ini.

Tabel 2.9 Pemilihan sumber picu ADC

ADPS2 ADPS1 ADPS0 Trigger source

0 0 0 Free Running Mode PSR2 dan PSR10 tidak diaktifkan.

2.5 LCD (Liquid Crystal Display)

LCD (Liquid Crystal Display) adalah suatu jenis media tampil yang menggunakan kristal cair sebagai penampil utama. LCD sudah digunakan diberbagai bidang misalnya alal–alat elektronik seperti televisi, kalkulator, ataupun layar komputer. Pada bab ini aplikasi LCD yang dugunakan ialah LCD dot matrik dengan jumlah karakter 2 x 16. LCD sangat berfungsi sebagai penampil yang nantinya akan digunakan untuk menampilkan status kerja alat. Adapun fitur yang disajikan dalam LCD ini adalah :

(30)

18 2. Mempunyai 192 karakter tersimpan

3. Terdapat karakter generator terprogram 4. Dapat dialamati dengan mode 4-bit dan 8-bit 5. Dilengkapi dengan back light.

6. Tersedia VR untuk mengatur kontras.

7. Pilihan konfigurasi untuk operasi write only atau read/write. 8. Catu daya +5 Volt DC.

9. Kompatibel dengan DT-51 dan DT-AVR Low Cost Series serta sistem mikrokontroler/mikroprosesor lain.

Gambar 2.9 LCD (Liquid Crystal Display) Tabel 2.10 Deskripsi Pin Pada LCD

Pin Deskripsi

1 Ground

2 Vcc

3 Pengatur kontras

4 “RS” Instruction/Register Select 5 “R/W” Read/Write LCD Registers

6 “EN” Enable

7-14 Data I/O Pins

15 Vcc

16 Ground

2.5.1 Cara kerja LCD (Liquid Crystal Display)

Pada aplikasi umumnya RW diberi logika rendah “0”. Bus data terdiri dari 4-bit atau 8-bit. Jika jalur data 4-bit maka yang digunakan ialah DB4 sampai dengan DB7. Sebagaimana terlihat pada table diskripsi, interface LCD merupakan sebuah parallel bus, dimana hal ini sangat memudahkan dan sangat cepat dalam pembacaan dan penulisan data dari atau ke LCD. Kode ASCII yang ditampilkan sepanjang 8-bit dikirim ke LCD secara 4-bit atau 8 bit pada satu waktu.

(31)

19 Jalur kontrol EN digunakan untuk memberitahu LCD bahwa mikrokontroller mengirimkan data ke LCD. Untuk mengirim data ke LCD program harus menset EN ke kondisi high “1” dan kemudian menset dua jalur kontrol lainnya (RS dan R/W) atau juga mengirimkan data ke jalur data bus.

Saat jalur lainnya sudah siap, EN harus diset ke “0” dan tunggu beberapa saat (tergantung

pada datasheet LCD), dan set EN kembali ke high “1”. Ketika jalur RS berada dalam kondisi

low “0”, data yang dikirimkan ke LCD dianggap sebagai sebuah perintah atau instruksi

khusus (seperti bersihkan layar, posisi kursor dll). Ketika RS dalam kondisi high atau “1”, data yang dikirimkan adalah data ASCII yang akan ditampilkan dilayar. Misal, untuk

menampilkan huruf “A” pada layar maka RS harus diset ke “1”. Jalur kontrol R/W harus

berada dalam kondisi low (0) saat informasi pada data bus akan dituliskan ke LCD. Apabila R/W berada dalam kondisi high “1”, maka program akan melakukan query (pembacaan) data dari LCD.

Instruksi pembacaan hanya satu, yaitu Get LCD status (membaca status LCD), lainnya merupakan instruksi penulisan. Jadi hampir setiap aplikasi yang menggunakan LCD, R/W selalu diset ke “0”. Jalur data dapat terdiri 4 atau 8 jalur (tergantung mode yang dipilih pengguna), DB0, DB1, DB2, DB3, DB4, DB5, DB6 dan DB7. Mengirim data secara parallel baik 4-bit atau 8-bit merupakan 2 mode operasi primer. Untuk membuat sebuah aplikasi interface LCD, menentukan mode operasi merupakan hal yang paling penting.

Mode 8-bit sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah aplikasi dan setidaknya minimal tersedia 11 pin I/O (3 pin untuk kontrol, 8 pin untuk data).Sedangkan mode 4 bit minimal hanya membutuhkan 7-bit (3 pin untuk kontrol, 4 pin untuk data). Bit RS digunakan untuk memilih apakah data atau instruksi yang akan ditransfer antara mikrokontroller dan LCD. Jika bit ini di set (RS = 1), maka byte pada posisi kursor LCD saat itu dapat dibaca atau ditulis. Jika bit ini di reset (RS = 0), merupakan instruksi yang dikirim ke LCD atau status eksekusi dari instruksi terakhir yang dibaca.

2.6 Mode Transmisi Port Serial

Ada 2 macam cara komunikasi data serial yaitu Sinkron dan Asinkron. Pada komunikasi data serial sinkron, clock dikirimkan bersama sama dengan data serial, tetapi clock tersebut dibangkitkan sendiri-sendiri baik pada sisi pengirim maupun penerima. Sedangkan pada komunikasi serial asinkron tidak diperlukan clock karena data dikirimkan dengan kecepatan tertentu yang sama baik pada pengirim/penerima.

(32)

20 kecepatan pengiriman data dan fase clock pada sisi transmitter dan sisi receiver harus sinkron. Untuk itu diperlukan sinkronisasi antara transmitter dan receiver. Hal ini dilakukan oleh bit

“Start” dan bit “Stop”. Ketika saluran transmisi dalam keadaan idle, output UART adalah

dalam keadaan logika “1”.

Ketika transmitter ingin mengirimkan data, output UART akan diset dulu ke logika “0” untuk waktu satu bit. Sinyal ini pada receiver akan dikenali sebagai sinyal “Start” yang

digunakan untuk mensinkronkan fase clock-nya sehingga sinkron dengan fase clock transmitter. Selanjutnya data akan dikirimkan secara serial dari bit yang paling rendah (bit0)

sampai bit tertinggi. Selanjutnya akan dikirimkan sinyal “Stop” sebagai akhir dari pengiriman

data serial. Sebagai contoh misalnya akan dikirimkan data huruf “A” dalam format ASCII atau sama dengan 41 hexa.

Gambar 2.10 Pengiriman huruf A tanpa bit paritas

Kecepatan transmisi (baud rate) dapat dipilih bebas dalam rentang tertentu. Baud rate yang umum dipakai adalah 110, 135, 150, 300, 600, 1200, 2400, dan 9600 (bit/perdertik). Dalam komunikasi data serial, baud rate dari kedua alat yang berhubungan harus diatur pada kecepatan yang sama. Selanjutnya harus ditentukan panjang data (6,7 atau 8 bit), paritas (genap, ganjil, atau tanpa paritas) dan jumlah bit “Stop” (1, 1 ½ , atau 2 bit). Berikut ini adalah karakteristik sinyal port serial, flow control dan konfigurasi port serial.

2.7 Konfigurasi Port Serial

Konektor DB-9 pada bagian belakang komputer adalah port serial RS232 yang biasa dinamai dengan COM1 dan COM2.

(33)

21 Tabel 2.11 Konfigurasi Port Serial

Pin Nama Sinyal Direction Keterangan

1 DCD In Data Carrier Detect/Receive Line Signal Detect

Berikut ini keterangan mengenai fungsi saluran RS232 pada konektor DB-9:

1. Received Line Signal Detect, dengan saluran ini DCE memberitahukan ke DTE bahwa pada terminal masukan ada data masuk.

2. Receive Data, digunakan DTE untuk menerima data dari DCE. 3. Transmit Data, digunakan DTE untuk mengirimkan data ke DCE.

4. Data Terminal Ready, pada saluran ini DTE memberitahukan kesiapan terminalnya. 5. Signal Ground, saluran ground

6. DCE ready adalah sinyal aktif pada saluran ini menunjukkan bahwa DCE sudah siap. 7. Request to Send, dengan saluran ini DCE diminta mengirim data oleh DTE.

8. Clear to Send, dengan saluran ini DCE memberitahukan bahwa DTE boleh mulai mengirim data.

9. Ring Indicator, pada saluran ini DCE memberitahukan ke DTE bahwa sebuah stasiun menghendaki hubungan dengannya.

2.8 IC MAX232

Untuk dapat berhubungan dengan PC, mikrokontroler harus membutuhkan komponen tambahan baik komunikasi paralel maupun serial. Pada pembuatan project akhir 1 ini yang digunakan adalah komunikasi serial. Pada mikrokontroler sendiri terdapat buffer yang dapat digunakan sebagai pendukung proses komunikasi tersebut. Pada saat ini banyak komponen yang dapat digunakan untuk pendukung proses komunikasi tersebut, salah satu contohnya adalah maxim232.

(34)

22 transmiter dan dua buah receiver. Jadi IC ini berfungsi sebagai perantara karena maxim232 hanya menerima data dari mikrokontroler untuk kemudian dikirim ke pc melalui DB9. Maxim232 mempunyai 16 kaki yang terdiri untuk keperluan port serial, komunikasi mikrokontroler dengan maxim. Letak dari masing-masing port diperlihatkan pada gambar di bawah ini.

Gambar 2.12 Konfigurasi Pin IC MAX232

Tabel 2.12 Fungsi IC MAX232 Pin

Type Keterangan

Nama No.

C1+ 1 - Positive lead of C1 capacitor

V+ 2 0 Positive charge pump output for storage capacitor only

C1- 3 - Negative lead of C1 capacitor

C2+ 4 - Positive lead of C2 capacitor

C2- 5 - Negative lead of C2 capacitor

V- 6 0 Negative charge pump output for storage capacitor only

T2OUT, T1OUT 7, 14 0 RS232 line data output (to remote RS232 system)

R2IN, R1IN 8, 13 1 RS232 line data input (from remote RS232 system)

R2OUT, R1OUT 9, 12 0 Logic data output (to UART)

T2IN, T1IN 10, 11 1 Logic data input (to UART)

GND 15 - Ground

Vcc 16 - Supply Voltage, Connect to external 5V power supply

2.9 Bahasa C

(35)

23 Pembuat bahasa C adalah Brian W. Kernighan dan Dennis M. Ritchie pada tahun 1972. C adalah bahasa pemrograman terstruktur, yang membagi program dalam bentuk blok. Tujuannya untuk memudahkan dalam pembuatan dan pengembangan program. Program yang ditulis dengan bahasa C mudah sekali dipindahkan dari satu jenis program ke bahasa program lain. Hal ini karena adanya standarisasi bahasa C yaitu berupa standar ANSI (American National Standar Institut) yang dijadikan acuan oleh para pembuat kompiler.jenis mesin. Pembuat bahasa C adalah Brian W. Kernighan dan Dennis M. Ritchie pada tahun 1972. C adalah bahasa pemrograman terstruktur, yang membagi program dalam bentuk blok. Tujuannya untuk memudahkan dalam pembuatan dan pengembangan program. Program yang ditulis dengan bahasa C mudah sekali dipindahkan dari satu jenis program ke bahasa program lain. Hal ini karena adanya standarisasi bahasa C yaitu berupa standar ANSI ( American National Standar Institut) yang dijadikan acuan oleh para pembuat kompiler.

Kelebihan Bahasa C:

- Bahasa C tersedia hampir di semua jenis computer.

- Kode bahasa C sifatnya adalah portable dan fleksibel untuk semua jenis computer. - Bahasa C hanya menyediakan sedikit kata-kata kunci. hanya terdapat 32 kata

kunci.

- Proses executable program bahasa C lebih cepat - Dukungan pustaka yang banyak.

- C adalah bahasa yang terstruktur

- Bahasa C termasuk bahasa tingkat menengah

Penempatan ini hanya menegaskan bahwa c bukan bahasa pemrograman yang berorientasi pada mesin. yang merupakan ciri bahasa tingkat rendah. melainkan berorientasi pada obyek tetapi dapat dinterprestasikan oleh mesin dengan cepat. secepat bahasa mesin. inilah salah satu kelebihan c yaitu memiliki kemudahan dalam menyusun programnya semudah bahasa tingkat tinggi namun dalam mengesekusi program secepat bahasa tingkat rendah.

Kekurangan Bahasa C:

- Banyaknya operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai.

- Bagi pemula pada umumnya akan kesulitan menggunakan pointer.

2.10 CodeVisionAVR

(36)

24 98, Me, NT4, 2000, dan XP. Cross-compiler C mampu menerjemahkan hampir semua perintah dari bahasa ANSI C, sejauh yang diijinkan oleh arsitektur dari AVR, dengan tambahan beberapa fitur untuk mengambil kelebihan khusus dari arsitektur AVR dan kebutuhan pada sistem embedded.

File object COFF hasil kompilasi dapat digunakan untuk keperluan debugging pada tingkatan C, dengan pengamatan variabel, menggunakan debugger Atmel AVR Studio. IDE mempunyai fasilitas internal berupa software AVR Chip In-System Programmer yang memungkinkan Anda untuk melakukan transfer program kedalam chip mikrokontroler setelah sukses melakukan kompilasi/asembli secara otomatis. Software In-System Programmer didesain untuk bekerja dengan Atmel STK500/AVRISP/AVRProg, Kanda Systems STK200+/300, Dontronics DT006, Vogel Elektronik VTEC-ISP, Futurlec JRAVR dan MicroTronics ATCPU/Mega2000 programmers/development boards.

Untuk keperluan debugging sistem embedded, yang menggunakan komunikasi serial, IDE mempunyai fasilitas internal berupa sebuah Terminal. Selain library standar C, CodeVisionAVR juga mempunyai library tertentu untuk:

 Modul LCD alphanumeric

 Bus I2C dari Philips

 Sensor Suhu LM75 dari National Semiconductor

 Real-Time Clock: PCF8563, PCF8583 dari Philips, DS1302 dan DS1307 dari Maxim/Dallas Semiconductor

 Protokol 1-Wire dari Maxim/Dallas Semiconductor

 Sensor Suhu DS1820, DS18S20, dan DS18B20 dari Maxim/Dallas Semiconductor

 Termometer/Termostat DS1621 dari Maxim/Dallas Semiconductor

 EEPROM DS2430 dan DS2433 dari Maxim/Dallas Semiconductor

 SPI

 Power Management

 Delay

 Konversi ke Kode Gray

CodeVisionAVR juga mempunyai Automatic Program Generator bernama CodeWizardAVR, yang mengujinkan Anda untuk menulis, dalam hitungan menit, semua instruksi yang diperlukan untuk membuat fungsi-fungsi berikut:

 Set-up akses memori eksternal

 Inisialisasi port input/output

(37)

25

 Inisialisasi Timer/Counter

 Inisialisasi Watchdog-Timer

 Inisialisasi UART (USART) dan komunikasi serial berbasis buffer yang digerakkan oleh interupsi

 Inisialisasi Pembanding Analog

 Inisialisasi ADC

 Inisialisasi Antarmuka SPI

 Inisialisasi Antarmuka Two-Wire

 Inisialisasi Antarmuka CAN\

 Inisialisasi Bus I2C, Sensor Suhu LM75, Thermometer/Thermostat DS1621 dan Real-Time Clock PCF8563, PCF8583, DS1302, dan DS1307

 Inisialisasi Bus 1-Wire dan Sensor Suhu DS1820, DS18S20

 Inisialisasi modul LCD

(38)

26

MQ-135 ATMEGA 16 MAX 232 USB to DB9 PC

DISPLAY LCD CATU DAYA

Gambar 3.2 Diagram Blok Sistem Fungsi Tiap Blok :

1. Blok Deteksi Gas : Sebagai elemen yang diukur 2. Blok Sensor Gas MQ-135 : Sebagai input/data gas yang diukur 3. Block Catu daya : Sebagai sumber tegangan

4. Blok ATmega 16 : Sebagai pengkonversi data dari sensor 5. Blok Display : Sebagai penampil hasil pengukuran 6. Blok Serial : Port serial sebagai interface ke PC 7. Blok PC : Penampil hasil/ data yang terakhir

3.2 Rangkaian Mikrokontroler ATMega16

(39)

27 Apabila terjadi keterbalikan pemasangan jalur ke ISP Programmer, maka pemograman mikrokontroler tidak dapat dilakukan karena mikrokontroler tidak akan bisa merespon. Port I/O yang digunakan untuk projek ini terdiri dari : Port A digunakan untuk interfacing LCD 16x2, dan Pin PC1 dan PC0 untuk interfacing sensor gas MQ 135.

3.3 Desain PCB dengan Software Eagle 6.5.0

Untuk mendesain PCB dapat digunakan software EAGLE 6.5.0 yang dapat di-download di internet secara gratis. Cara menggunakan software ini terlebih dahulu yang dikerjakan adalah mendesain skematik rangkaian, setelah itu memindahkannya ke dalam bentuk board dan mendesain tata letak komponen sesuai keinginan tetapi harus sesuai jalur rangkaiannya agar rangkaian dapat berfungsi sesuai dengan skematiknya. Setelah itu didesain layout PCB nya, barulah siap di-print dan di-transfer ke PCB. Pada proses pentransferan layout ke PCB dapat digunakan kertas Transfer Paper.

(40)

28 Gambar 3.3 Rangkaian Mikrokontroler ATMega16

3.4 Perancangan Sensor Gas MQ-135

Perancangan sensor dengan mikrokontroller ATMega16 dapat di lihat pada gambar dibawah ini :

Gambar 3.4 Rangkaian Sistim minimum dengan sensor Gas

(41)

29 PC1, Pin Vcc dihubungkan ke kaki 10 sebagai Vcc dan Pin GND dihubungkan ke kaki 11 sebagai Ground.

3.5 Pengaplikasian LCD

Rangkaian skematik konektor yang dihubungkan dari LCD (liquid crystal display) ke mikrokontroler dapat dilihat pada gambar dibawah ini.

ATMEGA16A

Gambar 3.5 Rangkaian skematik dari LCD ke Mikrokontroller

(42)

30 3.6 Flowchart Sensor

SISTEM AKTIF

INISIALISASI SENSOR

MODE SENSITIVITAS TINGGI

PEMBACAAN SENSOR

APAKAH UDARA TERCEMAR?

UDARA BERSIH POLUSI UDARA

BERHENTI TIDAK

YA

(43)

31 Penjelasan Flowchart :

 Pada gambar 3.6 :

1. Inisialisasi Sensor (Sensor Warm-up)

Pada saat power-on maka rangkaian akan berada dalam kondisi warm-up dengan waktu kurang lebih 3-5 menit untuk menyetabilkan tegangan dan kondisi sensor. 2. Mode Sensitivitas Tinggi (Initial High-Sensitive Operation)

Rangkaian bekerja dengan sensitivitas yang lebih tinggi dari keadaan normalnya selama kurang lebih 3 menit setelah periode warm-up dan sensor lebih peka.

3. Operasi Normal

Dalam keadaan ini sistem bekerja normal. Jika terdeteksi adanya polusi maka sistem akan mengeluarkan sinyal yang diterjemahkan ke dalam nyala LED. Mikroprosesor terus memantau perubahan dari sensor gas dan perubahan pada tombol – tombol pilihan mode. Input didapat dari sensor gas sebagai pendeteksi kualitas udara. Mikroprosesor akan memproses lebih lanjut input tegangan yang didapat dari sensor dan kemudian akan memutuskan apakah kondisi udara saat ini bersih atau terpolusi. Tampilan LED akan menunjukkan tingkat polusi udara saat ini.

4. Indikator LED

(44)

32

BAB IV

ANALISIS DAN PENGUJIAN

4.1 Pengujian Rangkaian Mikrokontroler ATMega16

Pengujian pada rangkaian mikrokontroler ATMega16 ini dapat dilakukan dengan menghubungkan rangkaian ini dengan rangkaian power supply sebagai sumber tegangan atau baterai 9V. 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,85 volt. Langkah selanjutnya adalah memberikan program sederhana pada mikrokontroler ATMega16, program yang diberikan adalah sebagai berikut:

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

while (1)

{

// Place your code here PORTC=0x00;

Delay_ms(1000); PORTC=0xFF; Delay_ms(1000);

}

Pada pengujian ini dikarena pemrograman menggunakan mode ISP (In System Programming) mikrokontroler harus dapat diprogram langsung pada mikrokontroler dan

rangkaian mikrokontroler harus dapat dikenali oleh program downloader. Pada pengujian ini berhasil dilakukan dengan dikenalinya jenis mikrokontroler oleh program downloader yaitu ATMega16A dan pemrograman dapat berjalan dengan baik, seperti contoh berikut ini :

(45)

33 4.2Pengujian Sensor Gas MQ-135

Rangkaian sensor ini telah diuji di beberapa tempat yang menunjukkan tingkat kualitas udara di daerah tersebut. Pengujian dilakukan dengan pendeteksian gas CO2 di udara. Data yang di peroleh adalah sebagai berikut :

Tabel 4.1. Data Pendeteksian Gas CO2 di Udara No. Satuan (ppm) CO2 ref (ppm)

Waktu

(menit) LED Indikator Status

1 325 314 10 Hijau Bersih

Tabel 4.2 Data Pendeteksian Asap Rokok

No. Satuan (ppm) Waktu (sekon) LED Indikator Status

1 744 5 Merah Tercemar

Tabel 4.3 Data Pendeteksian Kertas yang dibakar

No. Satuan (ppm) Waktu (sekon) LED Indikator Status

1 760 5 Merah Tercemar

(46)

34 Berdasarkan pada tabel 2.1 komposisi udara bersih (Sumber : Environmental Chemistry, Air and Water Pollution) dapat dilihat bahwa untuk menentukan suatu lingkungan berstatus bersih ambien untuk gas CO2 sebesar 314 ppm. Sedangkan pada hasil pengujian pada tabel 4.2 dan tabel 4.3, dapat dilihat bahwa konsentrasi asap rata-rata sebesar 737,2 ppm dan konsentrasi asap rokok rata-rata sebesar 656 ppm dengan kondisi LED merah yang menyatakan udara tercemar. Maka, dapat disimpulkan bahwa asap dari kertas yang dibakar lebih berbahaya dibandingkan dengan asap rokok.

Cara kerja sensor :

Dapat di simpulkan bahwa cara kerja sensor ini mendeteksi gas yang akan menimbulkan tegangan berbentuk sinyal selanjutnya di baca oleh mikrokontroller guna di konversi ke kode ASCII selanjutnya data di kirim ke PC melalui serial port dan di tampilkan di LCD.

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 baterai 9V yang dihubungkan ke IC regulator sehingga menghasilkan 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 = hal ini dapat dilihat dari hasil analisis yang diperoleh :

% kesalahan = ∣ 𝐷𝑎𝑡𝑎𝑡𝑒𝑟𝑢𝑘𝑢𝑟 −𝐷𝑎𝑡𝑎 𝑅𝑒𝑓𝑒𝑟𝑒𝑛𝑠𝑖

𝐷𝑎𝑡𝑎 𝑅𝑒𝑓𝑒𝑟𝑒𝑛𝑠𝑖 100%

(47)

35

% kesalahan = 324 −314

314 x 100 % = 3,18 %

Rata - rata kesalahan = persen total keseluruhan

𝑡𝑜𝑡𝑎𝑙 𝑝𝑒𝑛𝑔𝑢𝑗𝑖𝑎𝑛 x 100 % = 3,58+5,09+4,77+2,86+3,18

5 x 100 %

= 6,49 %

4.3 Pengujian Rangkaian Liquid Crystal Display (LCD) 2x16

Pengetesan ini bertujuan untuk mengetahui LCD tersebut dapat berfungsi menampilkan pesan-pesan sesuai dengan proses yang dibuat.

Listing program pengetesan LCD : lcd_gotoxy(0,0);

lcd_putsf("maulana Metrologi");

delay_ms(3000);

lcd_clear();

(48)

36 BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Setelah dilakukan pengujian hasil pengukuran kualitas udara dengan sensor MQ-135, maka dapat diambil beberapa kesimpulan:

1. Sistem memerlukan tegangan yang stabil. Sehingga harus membutuhkan waktu yang relatif lebih lama untuk mencapai kestabilan.

2. Dari pengujian yang telah dilakukan, rata-rata pendeteksian gas CO2 sebesar 318,8 ppm, asap rokok sebesar 656 ppm, dan kertas yang dibakar sebesar 737,2 ppm.

3. Mikroprosesor mempunyai sistem pemrosesan sinyal yang baik sehingga tidak memerlukan rangkaian kompensasi untuk mengatasi gangguan sensor terhadap temperatur dan kelembaban udara luar.

4. Sensor ini hanya dapat mendeteksi perubahan kualitas udara

5. Berdasarkan hasil pengujian yang telah dilakukan, maka rata-rata kesalahan alat tersebut sebesar 6,49 %.

6. Rangkaian sensor kualitas udara ini dapat dimanfaatkan sebagai kontrol ventilasi ruangan dengan penggunaan yang mudah dan hasil yang baik.

5.2 Saran

Beberapa tambahan yang diperlukan dalam meningkatkan kemampuan alat ini adalah: 1. Perlu pendalaman lebih lanjut mengenai pemrosesan sinyal jika kita ingin membuat

sendiri rangkaian sensor kualitas udara.

2. Diperlukan pengkalibrasian alat lebih lanjut agar pengukuran terhadap kualitas udara lebih akurat.

(49)

DAFTAR PUSTAKA

[1]. Bejo, Agus. 2005. C & AVR Rahasia Kemudahan Bahasa C dalam Mikrokontroler ATMega8535 . Edisi Pertama. Yogyakarta: Penerbit Gava Media.

[2]. Agfianto Eko Putra, Teknik antar muka computer : konsep & aplikasi, Penerbit Graha Ilmu, Yogyakarta, 2002

[3]. Charles L. Philips, Royce D. Harbor, Sistem Kontrol, Penerbit PT Prenhallindo, Jakarta, [4]. Arisman, Dr., MB, Gizi dalam daur kehidupan, Penerbit Buku kedokteran EGC, DEPKES, 1996

[5]. Retna Prasetia dan Catur Edi Widodo,Teori dan Praktek Interfacing Port Parallel & Port Serial Komputer dengan VB 6.0, Penerbit Andi Yogyakarta

[6]. Suhata, ST, VB Sebagai Pusat Kendali Peralatan Elektronik, Penerbit Elex Media Komputindo, Jakarta, 2005.

[7]. Budiharto, Widodo. 2005. Panduan Lengkap Belajar Mikrokontroler Perancangan Sistem dan Aplikasi Mikrokontroler.PT Elex media Komputindo, Jakarta. [8]. http://innovativeelectronics.com. Diakses pada : 20 Desember 2014

[9]. http://biologyeastborneo.com/wp-content/uploads/2011/09/Indeks-Kualitas-Udara.ppt Diakses pada : 23 Januari 2015

[10]. http://sir.stikom.edu/569/5/BAB%20II.pdf. Diakses pada 23 Januari 2015

(50)

LAMPIRAN 1

Program Mikrokontroller

/***************************************************** 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

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

// Declare your global variables here

(51)

return sensor; }

void main(void) {

// Declare your local variables here unsigned int sensor;

// Input/Output Ports initialization // Port A 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 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;

DDRD=0x00;

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

(52)

// Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF

// Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);

UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);

UBRRH=0x00; UBRRL=0x47;

// Analog Comparator initialization // Analog Comparator: Off

(53)

ACSR=0x80; // Connections are specified in the

(54)

LAMPIRAN 2

(55)

LAMPIRAN 3

Gambar

Tabel 2.2 Udara Bersih dan Udara Tercemar Menurut WHO
Gambar  2.1  Sensor Gas MQ-135
Gambar  2.2  Cara Kerja Kendali ON/OFF Sensor Gas
Gambar   2.3  Blok Diagram ATMega 16
+7

Referensi

Dokumen terkait

Berdasarkan hasil penelitian mengenai kompetensi profesional Guru BK di MtsS Alwashliyah Tembung dalam aspek Sikap dapat dikatakan bahwa Terdapat Guru BK yang sangat hangat dan

―Belajar bahasa Arab menggunakan KITAB FAHIMNA bagi orang yang baru belajar bahasa Arab lebih mudah. Karena susunan materinya yang ringan

Dari penelitian yang telah dilakukan dapat disimpulkan bahwa semua sampel sosis dari penjual di Sekolah Dasar Negeri Kecamatan Boyolali dengan pengujian

Peneliti menelusuri lebih jauh bahwa tidak semua mata kuliah menggunakan media teknologi dalam proses pembelajaran karena dosen yang mengampuh mata kuliah tersebut tidak

Waktu panen daun pada umur 3 bulan menghasilkan minyak nilam dan patchouli alkohol lebih tinggi dibandingkan daun yang dipanen pada umur 6 bulan dan 9 bulan

 Akumulasi Ni pada Salvinia molesta lebih banyak terdapat dalam akar dibandingkan pada organ non akar (batang dan daun).  Hal ini disebabkan

Tindak Lanjut Rapat Dewan Komisaris yang Menyertakan Direksi (Rakomdir) sampai dengan bulan Januari 2019.. Evaluasi Hasil Usaha Perseroan, Laporan Progress Kinerja per

Karena fungsi harmonik merupakan solusi persamaan Laplace maka peneliti ingin mengetahui bagaimana penerapan persamaan Laplace dalam menyelesaikan pemasalahan nilai batas