PROJECT AKHIR 1
MAULANA UBAIDILLAH
NIM : 122411005
PROJECT AKHIR 1
Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Ahli Madya Jurusan
D3 Metrologi dan Instrumentasi Fakultas Matematika dan Ilmu Pengetahuan Alam
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
D3 Metrologi dan Instrumentasi
Dosen Pembimbing
Projek Akhir 1
PERNYATAAN
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.
MAULANA UBAIDILLAH
122411005
ii
PENGHARGAAN
Alhamdulillahirabbilalamiin,
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 syafaatnya 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
1. Kedua orang tua penulis dan serta saudara kandung yang telah memberikan dukungan,
bantuan moril maupun materil, semangat dan yang selalu mendoakan 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.
7.
Seluruh pihak yang membantu penulis dalam menyelesaikan laporan ini yang tidak dapat
disebutkan seluruhnya.
iii
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 Rabbalalamin
Penulis
iv
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
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 MQ135 diimplementasikan pada sebuah miniplant berbasis mikrokontroller.
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.
Keyword: Gas Sensor MQ-135, Microcontroller ATMega16, LCD.
vi
DAFTAR ISI
PERSETUJUAN .............................................................................................................. i
PENYATAAN .................................................................................................................. ii
PENGHARGAAN ........................................................................................................... iii
ABSTRAK ........................................................................................................................ v
ABSTRACT ..................................................................................................................... vi
BAB 1 PENDAHULUAN ................................................................................................ 1
1.1 Latar Belakang ........................................................................................................... 1
1.2 Rumusan Masalah ...................................................................................................... 1
1.3 Tujuan Penulisan ........................................................................................................ 1
1.4 Batasan Masaalah ...................................................................................................... 2
1.5 Sistematika Penulisan ................................................................................................ 2
BAB 2 TINJAUAN PUSTAKA ...................................................................................... 4
2.1 Pencemaran Lingkungan ............................................................................................ 4
2.2 Sumber Daya Udara ................................................................................................... 5
2.3 Sensor Gas MQ-135 ................................................................................................... 6
2.3.1
2.3.2
2.4.2
2.4.3
2.4.4
2.4.5
2.4.6
2.4.7
2.4.8
viii
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
Gambar 4.1 Pengujian Mikrokontroler ........................................................................... 32
ix
DAFTAR TABEL
BAB I
PENDAHULUAN
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.
LCD
software
komputer.
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.
BAB I
: PENDAHULUAN
Berisi latar belakang permasalahan, batasan masalah, tujuan pembahasan, metodologi
pembahasan, sistematika penulisan dan relevansi dari penulisan laporan ini.
pendukung
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 V : PENUTUP
KESIMPULAN DAN SARAN
Berisi kesimpulan yang diperoleh dari pembuatan laporan project akhir 1 ini dan
saran-saran untuk pengembangannya.
DAFTAR PUSTAKA
Pada bagian ini akan dipaparkan tentang sumber-sumber literatur yang digunakan
dalam pembutan laporan project akhir 1 ini.
BAB II
TINJAUAN PUSTAKA
1.
2.
3.
4.
5.
6.
7.
8.
Ppm
780,800
209,500
9,340
314
18
5
2
1
Udara Bersih
0,01 0,02 mg/m3
0,003 0,02 ppm
< 1 ppm
0,003 0,02 ppm
310 330 ppm
< 1 ppm
Udara Tercemar
0,07 0,7 mg/m3
0,02 2 ppm
5 200 ppm
0,02 0,1 ppm
350 0,1 ppm
1 20 ppm
Nama
GND
VCC
RX TTL
TX
SDA
SCL
Fungsi
Titik referensi untuk catu daya input
Terhubung ke catu daya (5 V)
Input serial level TTL ke modul Sensor
Output serial level TTL ke modul Sensor
I2C-bus data input / output
I2C-bus clock input
dengan mikroprosesor, mikrokontroler menyediakan memori dalam serpih yang sama dengen
prosesornya (in chip).
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
10
11
mikrokontroler kita memerlukan sistem clock, sistem ini bisa di bangun dari clock eksternal
maupun clock internal.
Fungsi Khusus
SCK (SPI Bus Serial Clock)
MISO (SPI Bus Master Input/ Slave Output)
MOSI (SPI Bus Master Output/ Slave Input)
SS (SPI Slave Select Input)
AIN1 (Analog Comparator Negative Input)
OC0 (Timer/Counter0 Output Compare Match Output)
AIN0 (Analog Comparator Positive Input)
INT2 (External Interrupt 2 Input)
T1 (Timer/ Counter1 External Counter Input)
T0 (Timer/Counter External Counter Input)
XCK (USART External Clock Input/Output)
12
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
PC7
PC6
PC5
PC4
PC3
PC2
PC1
PC0
Fungsi khusus
TOSC2 ( Timer Oscillator Pin2)
TOSC1 ( Timer Oscillator Pin1)
TDI (JTAG Test Data In)
TDO (JTAG Data Out)
TMS (JTAG Test Mode Select)
TCK (Joint Test Action Group Test Clock)
SDA ( Two-wire Serial Bus Data Input/Output Line)
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
PD7
PD6
PD5
PD4
PD3
PD2
PD1
PD0
Fungsi khusus
OC2 (Timer/Counter Output Compare Match Output)
ICP (Timer/Counter1 Input Capture Pin)
OC1A (Timer/Counter1 Output Compare A Match
Output)
OC1B (Timer/Counter1 Output Compare B Match
Output)
INT1 (External Interrupt 1 Input)
INT0 (External Interrupt 0 Input)
TXD (USART Output Pin)
RXD (USART Input Pin)
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.
14
R0
R1
R2
R29
R30
R31
I/O Registers
$0000
$0001
$0002
$000D
$000E
$000F
$00
$01
$02
$3D
$3E
$3F
$0020
$0021
$0022
$005D
$005E
$005F
Internal SRAM
$0060
$0061
$045E
$045F
Proses inisialisasi ADC meliputi proses penentuan clock, tegangan referensi, formal data
keluaran, dan modus pembacaan. Register-register yang perlu diatur adalah sebagai berikut:
ADCS
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
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
0
0
0
0
1
1
1
1
ADPS1
0
0
1
1
0
0
1
1
ADPS0
0
1
0
1
0
1
0
1
Division Factor
2
2
4
8
16
32
64
128
ADC Multiplexer-ADMUX
REFS 0, 1
00
: Vref = Aref
01
10
ADPS1
0
0
1
1
0
0
1
1
ADPS0
0
1
0
1
0
1
0
1
Trigger source
Free Running Mode
Analog Comparator
External Interrupt Request 0
Timer/Counter0 Compare Match
Timer/Counter0 Overflow
Timer/Counter Compare Match B
Timer/Counter1 Overflow
Timer/Counter1 Capture Event
: 1. ADC high speed mode enabled. Untuk operasi ADC, bit ACME, PUD,
PSR2 dan PSR10 tidak diaktifkan.
17
Deskripsi
Ground
Vcc
Pengatur kontras
RS Instruction/Register Select
R/W Read/Write LCD Registers
EN Enable
Data I/O Pins
Vcc
Ground
18
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.
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.
20
Nama Sinyal
Direction
DCD
In
2
3
4
5
6
7
8
9
RxD
TxD
DTR
GND
DSR
RTS
CTS
RI
In
Out
Out
In
Out
In
In
Keterangan
Data Carrier Detect/Receive Line Signal
Detect
Receive Data
Transmit Data
Data Terminal Ready
Ground
Data Set Ready
Request to Send
Clear to Send
Ring Indicator
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.
Maxim232 berfungsi sebagai perantara antara mikrokontroler dengan port serial, karena
mikrokontroler tidak dapat mengirim data begitu saja maka diperlukan maxim232. di dalam
IC terdapat charge pump yang akan membangkitkan +10 Volt dan -10 Volt dari sumber +5
Volt tunggal dalam IC DIP (Dual in-line Package) 16 pin (8 pin x 2baris) ini terdapat 2 buah
21
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.
No.
1
2
3
4
5
6
7, 14
8, 13
9, 12
10, 11
15
16
Type
Keterangan
0
0
0
1
0
1
-
2.9 Bahasa C
Bahasa C adalah bahasa pemrograman yang dapat dikatakan berada antara bahasa tingkat
rendah (bahasa yang berorientasi pada mesin) dan bahasa tingkat tinggi (bahasa yang
berorientasi pada manusia). Seperti yang diketahui, bahasa tingkat tinggi mempunyai
kompatibilitas antara platform. Karena itu, amat mudah untuk membuat program pada
berbagai mesin. Berbeda halnya dengan menggunakan bahasa mesin, sebab setiap perintahnya
sangat bergantung pada jenis mesin.
22
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.
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:
-
2.10 CodeVisionAVR
CodeVisionAVR merupakan sebuah cross-compiler C, Integrated Development
Environtment (IDE), dan Automatic Program Generator yang didesain untuk mikrokontroler
buatan Atmel seri AVR. CodeVisionAVR dapat dijalankan pada sistem operasi Windows 95,
23
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:
Real-Time Clock: PCF8563, PCF8583 dari Philips, DS1302 dan DS1307 dari
Maxim/Dallas Semiconductor
SPI
Power Management
Delay
juga
mempunyai
Automatic
Program
Generator
bernama
CodeWizardAVR, yang mengujinkan Anda untuk menulis, dalam hitungan menit, semua
instruksi yang diperlukan untuk membuat fungsi-fungsi berikut:
24
Inisialisasi Timer/Counter
Inisialisasi Watchdog-Timer
Inisialisasi UART (USART) dan komunikasi serial berbasis buffer yang digerakkan
oleh interupsi
Inisialisasi ADC
Inisialisasi Bus I2C, Sensor Suhu LM75, Thermometer/Thermostat DS1621 dan RealTime Clock PCF8563, PCF8583, DS1302, dan DS1307
25
BAB III
PERANCANGAN SISTEM
3.1 Diagram Blok Rangkaian
CATU DAYA
DETEKSI
GAS
SENSOR GAS
MQ-135
ATMEGA 16
MAX 232
USB to DB9
PC
DISPLAY
LCD
4. Blok ATmega 16
5. Blok Display
6. Blok Serial
7. Blok PC
26
27
28
PC1, Pin Vcc dihubungkan ke kaki 10 sebagai Vcc dan Pin GND dihubungkan ke kaki 11
sebagai Ground.
PA4
PA2
PA1
PA0
PA5
PA7
PA6
5V
ATMEGA16A
29
SISTEM AKTIF
INISIALISASI
SENSOR
MODE SENSITIVITAS
TINGGI
PEMBACAAN
SENSOR
APAKAH UDARA
TERCEMAR?
YA
TIDAK
UDARA BERSIH
POLUSI UDARA
BERHENTI
30
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
Digunakan sebagai penunjuk tingkat kualitas udara, yang nyalanya diatur oleh
mikroprosesor, tampilan LED akan menunjukkan kondisi udara saat ini.
31
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);
}
pemrograman menggunakan
mode
ISP
(In
System
Satuan (ppm)
325
314
330
Waktu
LED Indikator
Status
10
Hijau
Bersih
314
15
Hijau
Bersih
299
314
20
Hijau
Bersih
323
314
25
Hijau
Bersih
324
314
30
Hijau
Bersih
Rata-Rata
(menit)
318,8 ppm
Satuan (ppm)
Waktu (sekon)
LED Indikator
Status
744
Merah
Tercemar
740
10
Merah
Tercemar
643
15
Merah
Tercemar
632
20
Merah
Tercemar
521
25
Merah
Tercemar
Rata-rata
656 ppm
Satuan (ppm)
Waktu (sekon)
LED Indikator
Status
760
Merah
Tercemar
750
10
Merah
Tercemar
737
15
Merah
Tercemar
722
20
Merah
Tercemar
717
25
Merah
Tercemar
Rata-rata
737,2 ppm
Dari hasil pengujian (tabel 4.1) yang telah dilakukan, dapat dilihat bahwa kualitas udara
dari beberapa pengujian berbeda-beda. ini dibuktikan dengan satuan ppm (part per million).
Pembacaan sensor juga dipengaruhi oleh waktu kerja sensor tersebut. Sensor akan
membutuhkan waktu yang relatif untuk menyetabilkan tegangan dan kondisi sensor.
33
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%
325 314
x 100 % = 3,58 %
314
% kesalahan =
330 314
x 100 % = 5,09 %
314
% kesalahan =
299 314
x 100 % = 4,77 %
314
% kesalahan =
323 314
x 100 % = 2,86 %
314
% kesalahan =
324 314
x 100 % = 3,18 %
314
x 100 %
3,58+5,09+4,77+2,86+3,18
5
x 100 %
= 6,49 %
tertampilnya
teks
yang dibuat
35
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.
3. Alat ini dapat dikembangkan dengan menambahkan alarm detector jika gas yang dideteksi
berbahaya/berpolusi.
36
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
[11]. http://staff.uny.ac.id/sites/default/files/pendidikan/ZainalArifin,Dr.M.T/BukuPPK.doc
Diakses pada : 5 Desember 2014
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
Project :
Version :
Date : 11/12/2013
Author : user
Company : free
Comments:
Chip type
: ATmega16
Program type
: Application
AVR Core Clock frequency: 8,000000 MHz
Memory model
: Small
External RAM size
:0
Data Stack size
: 128
*****************************************************/
#include <mega16a.h>
#include <delay.h>
// Alphanumeric LCD functions
#include <alcd.h>
#include <i2c.h>
#include <stdio.h>
#include <stdlib.h>
// Declare your global variables here
unsigned int bacaNilaiSensorI2C(unsigned char alamatI2C) {
unsigned int sensor;
i2c_start();
i2c_write(alamatI2C);
i2c_write(0x41);
i2c_stop();
delay_us(10);
i2c_start();
i2c_write(alamatI2C|0x01);
sensor = i2c_read(1);
sensor = sensor*256 + i2c_read(0);
i2c_stop();
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
// 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
ACSR=0x80;
SFIOR=0x00;
// ADC initialization
// ADC disabled
ADCSRA=0x00;
// SPI initialization
// SPI disabled
SPCR=0x00;
// TWI initialization
// TWI disabled
TWCR=0x00;
// Alphanumeric LCD initialization
// Connections are specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTA Bit 7
// RD - PORTA Bit 6
// EN - PORTA Bit 5
// D4 - PORTA Bit 4
// D5 - PORTA Bit 2
// D6 - PORTA Bit 1
// D7 - PORTA Bit 0
// Characters/line: 16
i2c_init();
lcd_init(16);
lcd_gotoxy(0,0);
lcd_putsf("maulana Metrologi");
delay_ms(3000);
lcd_clear();
while (1)
{
// Place your code here
sensor = bacaNilaiSensorI2C(0xE0);
lcd_gotoxy(0,0);
lcd_putsf("Data = ");
lcd_putchar(sensor/1000 %10 + 0x30);
lcd_putchar(sensor/100 %10 + 0x30);
lcd_putchar(sensor/10 %10 + 0x30);
lcd_putchar(sensor %10 + 0x30);
delay_ms(500);
// printf("data=%.2d",sensor);
printf("%d \n\r",sensor);
}
}
LAMPIRAN 2
FOTO ALAT
LAMPIRAN 3