Rancangan Monitoring Sirkulasi dan Stabilitas Suhu Ruangan Menggunakan Sensor Gas dan Sensor Suhu Dengan Tampilan PC Berbasis Atmega 8535

(1)

(2)

(3)

LISTING PROGRAM

#include <mega8535.h> #include <delay.h> #include <alcd.h> #define ADC_samp 25 #define kipas PORTC.0

float suhu_total,gas_total,suhu_hasil,gas_hasil,suhu_rata,gas_rata; unsigned int x,nilai_ADC;

char input,buflcd[16];

#define DATA_REGISTER_EMPTY (1<<UDRE) #define RX_COMPLETE (1<<RXC)

#define FRAMING_ERROR (1<<FE) #define PARITY_ERROR (1<<UPE) #define DATA_OVERRUN (1<<DOR) #define RX_BUFFER_SIZE 8

char rx_buffer[RX_BUFFER_SIZE]; #if RX_BUFFER_SIZE <= 256

unsigned char rx_wr_index=0,rx_rd_index=0; #else

unsigned int rx_wr_index=0,rx_rd_index=0; #endif

#if RX_BUFFER_SIZE < 256 unsigned char rx_counter=0; #else

unsigned int rx_counter=0; #endif

// This flag is set on USART Receiver buffer overflow bit rx_buffer_overflow;

// USART Receiver interrupt service routine interrupt [USART_RXC] void usart_rx_isr(void) {

char status,data; status=UCSRA; data=UDR;

if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0)

{

rx_buffer[rx_wr_index++]=data; #if RX_BUFFER_SIZE == 256

// special case for receiver buffer size=256 if (++rx_counter == 0) rx_buffer_overflow=1;


(4)

#else

if (rx_wr_index == RX_BUFFER_SIZE) rx_wr_index=0; if (++rx_counter == RX_BUFFER_SIZE)

{ rx_counter=0; rx_buffer_overflow=1; } #endif } } #ifndef _DEBUG_TERMINAL_IO_

// Get a character from the USART Receiver buffer #define _ALTERNATE_GETCHAR_ #pragma used+ char getchar(void) { char data; while (rx_counter==0); data=rx_buffer[rx_rd_index++]; #if RX_BUFFER_SIZE != 256

if (rx_rd_index == RX_BUFFER_SIZE) rx_rd_index=0; #endif #asm("cli") --rx_counter; #asm("sei") return data; } #pragma used- #endif

// USART Transmitter buffer #define TX_BUFFER_SIZE 8 char tx_buffer[TX_BUFFER_SIZE]; #if TX_BUFFER_SIZE <= 256

unsigned char tx_wr_index=0,tx_rd_index=0; #else

unsigned int tx_wr_index=0,tx_rd_index=0; #endif

#if TX_BUFFER_SIZE < 256 unsigned char tx_counter=0; #else

unsigned int tx_counter=0; #endif


(5)

interrupt [USART_TXC] void usart_tx_isr(void) { if (tx_counter) { --tx_counter; UDR=tx_buffer[tx_rd_index++]; #if TX_BUFFER_SIZE != 256

if (tx_rd_index == TX_BUFFER_SIZE) tx_rd_index=0; #endif

} }

#ifndef _DEBUG_TERMINAL_IO_

// Write a character to the USART Transmitter buffer #define _ALTERNATE_PUTCHAR_

#pragma used+ void putchar(char c) {

while (tx_counter == TX_BUFFER_SIZE); #asm("cli")

if (tx_counter || ((UCSRA & DATA_REGISTER_EMPTY)==0)) {

tx_buffer[tx_wr_index++]=c; #if TX_BUFFER_SIZE != 256

if (tx_wr_index == TX_BUFFER_SIZE) tx_wr_index=0; #endif ++tx_counter; } else UDR=c; #asm("sei") } #pragma used- #endif

// Standard Input/Output functions #include <stdio.h>

#define ADC_VREF_TYPE ((0<<REFS1) | (1<<REFS0) | (0<<ADLAR)) unsigned int read_adc(unsigned char adc_input)

{

ADMUX=adc_input | ADC_VREF_TYPE;

// Delay needed for the stabilization of the ADC input voltage delay_us(10);

// Start the AD conversion ADCSRA|=(1<<ADSC);

// Wait for the AD conversion to complete while ((ADCSRA & (1<<ADIF))==0);


(6)

ADCSRA|=(1<<ADIF); return ADCW;

}

void main(void) {

DDRA=(0<<DDA7) | (0<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) | (0<<DDA0);

PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0);

DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) | (0<<DDB2) | (0<<DDB1) | (0<<DDB0);

PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);

DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) | (0<<DDC2) | (1<<DDC1) | (1<<DDC0);

PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);

DDRD=(0<<DDD7) | (0<<DDD6) | (1<<DDD5) | (0<<DDD4) | (0<<DDD3) | (0<<DDD2) | (0<<DDD1) | (0<<DDD0);

PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0);

TCCR1A=(1<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (1<<WGM11) | (0<<WGM10);

TCCR1B=(0<<ICNC1) | (0<<ICES1) | (1<<WGM13) | (1<<WGM12) | (0<<CS12) | (1<<CS11) | (0<<CS10);

TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x9C; ICR1L=0x3F; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization

TIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) | (0<<OCIE1A) | (0<<OCIE1B) | (0<<TOIE1) | (0<<OCIE0) | (0<<TOIE0);

UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);

UCSRB=(1<<RXCIE) | (1<<TXCIE) | (0<<UDRIE) | (1<<RXEN) | (1<<TXEN) | (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=0x67;

ADCSRA=(1<<ADEN) | (0<<ADSC) | (1<<ADATE) | (0<<ADIF) | (0<<ADIE) | (1<<ADPS2) | (1<<ADPS1) | (0<<ADPS0);


(7)

lcd_init(16); #asm("sei") OCR1A=1600; lcd_gotoxy(0,0); lcd_putsf("NOVA"); while (1) {

suhu_total = 0;gas_total=0; suhu_hasil = 0;gas_hasil=0; for (x=0; x<ADC_samp; x++) {

nilai_ADC = read_adc(1);

suhu_hasil=suhu_hasil + nilai_ADC; delay_ms(10);

nilai_ADC = read_adc(0); gas_hasil=gas_hasil + nilai_ADC; delay_ms(10);

}

suhu_rata = (float)suhu_hasil / ADC_samp; // nilai rata-rata gas_rata = (float)gas_hasil / ADC_samp; // nilai rata-rata suhu_total =(suhu_rata * 0.48825125)/10;

gas_total =(gas_rata * 0.0048825125)*100; lcd_clear(); sprintf(buflcd,"suhu:%2.2f C",suhu_total); lcd_gotoxy(0,0);lcd_puts(buflcd); sprintf(buflcd,"gas:%2.2f %",gas_total); lcd_gotoxy(0,1);lcd_puts(buflcd); printf("%dA%dB%dC%dD%dE",suhu_total,gas_total,0,0,0); input=getchar();

if(gas_total<500) OCR1A=1600; //tutup ventilasi else if(gas_total>=500) OCR1A=3250;//buka ventilasi if(input=='6') kipas=1;//hidup ventilasi

else if(input=='7') kipas=0;//tutup ventilasi }


(8)

Pengujian Rangkaian Mikrokontroller ATMega8535

Programnya adalah sebagai berikut :

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

Moving LED

CodeVisionAVR C Compiler Chip: ATMega8535

Memory Model: SMALL Data Stack Size: 128 bytes

8 LEDs are connected between the PORTC outputs and +5V using 1K current

limiting resistors .The LEDs anodes are connected to +5V

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

// I/O register definitions for ATMega8535 #include <mega8535.h>

// quartz crystal frquency [Hz] #define xtal 12000000

// moving LED frequency [Hz] #define fmove 2

// the LED on PORTC output 0 will be on unsigned char led_status=0xfe;

// TIMER1 overflow interrupt service routine // occurs every 0.5 seconds

interrupt [TIM1_OVF] void timer1_overflow(void) {

// preset again TIMER1

TCNT1=0x10000-(xtal/1024/fmove); // move the LED

led_status<<=1; led_status|=1;


(9)

if (led_status==0xff) led_status=0xfe; // turn on the LED

PORTC=led_status; }

void main(void) {

// set the I/O ports

// all PORTC pins are outputs DDRC=0xff;

// turn on the first LED PORTC=led_status; // init TIMER1

// TIMER1 is disconnected from pin OC1 // no PWM

TCCR1A=0;

// TIMER1 clock is xtal/1024 TCCR1B=5;

// preset TIMER1

TCNT1=0x10000-(xtal/1024/fmove); // clear TIMER1 interrupts flags TIFR=0;

// enable TIMER1 overflow interrupt TIMSK=0x80;

// all other interrupt sources are disabled GIMSK=0;

// global enable interrupts #asm

sei #endasm

// the rest is done by TIMER1 overflow interrupts while (1);


(10)

Program yang diisikan ke mikrokontroller untuk menampilkan karakter pada display LCD adalah sebagai berikut:

#include <mega8535.h>

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

void main(void) {

PORTA=0x00; DDRA=0x00; PORTB=0x00; DDRB=0x00; PORTC=0x00; DDRC=0x00; PORTD=0x00; DDRD=0x00; TCCR0=0x00; TCNT0=0x00; OCR0=0x00; TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; ASSR=0x00; TCCR2=0x00; TCNT2=0x00;


(11)

OCR2=0x00; MCUCR=0x00; MCUCSR=0x00; TIMSK=0x00; ACSR=0x80; SFIOR=0x00; lcd_init(16); lcd_clear(); while (1) {

// Place your code here lcd_gotoxy(6,0);

lcd_putsf("FISIKA"); delay_ms(500);

} }


(12)

Pengujian terhadap motor servo dilakukan dengan memberikan inputan pulsa melalui mikrokontroller yang telah dimasukkan program sebagai berikut :

#include <mega8535.h> #include <delay.h> #include <stdio.h> unsigned int i; void main(void) {

for (i=0;i<50;i++) {

PORTD.4=1; delay_ms(2); PORTD.4=0; delay_ms(20); }

delay_ms(1000);

for (i=0;i<50;i++) }

} }


(13)

DAFTAR PUSTAKA

Sasongko, Bagus Hari, 2012, Pemrograman Mikrokontroler dengan Bahasa C, Yogyakarta: ANDI.

Firdaus,"Wireless Sensor Network Teori dan Aplikasi",Graha Ilmu,Yogyakarta. Oktober 6,2013

Lingga, W, 2006. Belajar Sendiri Pemrograman AVR ATMega8535. Yogyakarta: Andi Offset.

Elektur, 1996,302 Rangkaian Elektronika. Penerjemahan P. Pratomo dkk. Jakarta: Percetakan PT Gramedia.

Tooley, Mike. 2002. Rangkaian Elektronik Prinsip dan Aplikasi. Edisi Ke 2 Jakarta: Erlangga. Hal 180 – 194.

Data sheet ATMega 8535 8 Bit AVR Mikrokontroler Data sheet MQ-2 Gas Sensor


(14)

BAB III

PERANCANGAN DAN PEMBUATAN

Motor Servo DRIVER

KIPAS LCD

Sensor Suhu

Sensor Gas CO

Uc ATmega 8535

KIPAS

USB-TO-TTL PC

Gambar 3.1 Diagram Block

Fungsi dari Tiap Blok :

1. Blok Sensor Suhu : Sebagai input data suhu ruangan 2. Blok Senso Gas CO : Sebagai input data kadar CO di udara 3. Blok Mikrokontroller : Mengkonversi data dari sensor 4. Blok LCD : Sebagai penampil data

5. Blok Driver Kipas : Untuk mengatur hidup/mati kipas 6. Blok Motor Servo : Sebagai Pembuka/penutup jendela

7. Blok USB-TO-TTL : Sebagai konversi data serial dari mikro ke PC

8. Blok Interface PC : Sebagai penampil data & grafik dari sensor Dari diagram blok diatas dapat dilihat bahwa sistem mempunyai dua sensor yaitu sensor suhu untuk mendeteksi suhu udara pada ruangan dan sensor gas


(15)

untuk mendeteksi jika ada gangguan atau konsentrasi gas yang terlalu berlebihan pada ruangan. Pada sensor suhu, sensor akan mendeteksi suhu pada ruangan, jika suhu yang terdeteksi melebihi suhu yang maksimum yang diset, maka kipas secara otomatis akan menyala untuk mendinginkan ruangan jika suhu telah kembali normal, maka kipas akan mati. Untuk sensor gas, sensor akan mendeteksi gas berbahaya bagi manusia terutama gas CO2, Jika konsentrasi gas CO2 sudah terlalu banyak maka sistem secara otomatis akan mengaktifkan motor untuk membuka ventilasi, sedang kipas akan bekerja untuk menyedot udara yang mengandung gas yang berbahaya untuk dilepaskan keluar ruangan. PC berfungsi untuk mengetahui status dari system kondisi sensor.

3.1. Rangkaian Mikrokontroller ATMega8535

Rangkaian sistem minimum mikrokontroler ATMEGA 8535 dapat dilihat pada gambar 3.2 di bawah ini :


(16)

Dari gambar 3.2, Rangkaian tersebut berfungsi sebagai pusat kendali dari seluruh sistem yang ada. Komponen utama dari rangkaian ini adalah IC Mikrokontroler ATMega8535. 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 30 pF. XTAL ini akan mempengaruhi kecepatan mikrokontroler ATMega8535 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.

Kaki Mosi, Miso, Sck, Reset, Vcc dan Gnd pada mikrokontroler terletak pada kaki 6, 7, 8, 9, 10 dan 11. Apabila terjadi keterbalikan pemasangan jalur ke ISP Programmer, maka pemograman mikrokontroler tidak dapat dilakukan karena mikrokontroler tidak akan bisa merespon.

3.2 Sensor Suhu LM35

Sensor yang digunakan dalam penelitian ini adalah sensor LM35. Sensor LM35 dapat mengukur dan mengontrol suhu yang terdapat disekitarnya. Sensor ini mempunya 3 pin. Masing masing Pin mempunyai fungsi yaitu:

a. +Vs (4V - 20V)

b. Vout (-55 oC - +150 oC) c. Gnd

Sensor LM35 adalah sensor suhu yang cukup presisi. LM35 memiliki tingkat kelinieran yang tinggi dimana kenaikan 1°C akan menghasilkan tegangan sebesar 10mV atau 10 mVolt/°C. Sehingga VLM35 = Suhu(°C 10 mV. Jika LM35 membaca

suhu 27 °C maka tegangan keluaran LM35 sebesar 270 mV. dimana nilai tegangan LM35 akan semakin besar jika nilai suhu besar sebaliknya nilai tegangan LM35 akan semakin kecil jika nilai suhu yang dibaca kecil. Sehingga jika adanya perubahan suhu


(17)

maka nilai tegangan LM35 juga akan mengalami perubahan. Jangkau suhu yang dapat dibaca LM35 yaitu dari -55 °C sampai 150 °C. Pada rangkaian, Vout dihubungkan dengan ADC , +Vs dihubungkan ke Vcc 5V , dan gnd dihubungkan ke ground.

Gambar 3.3 Rangkaian LM35 Ke ATMEGA8535

3.3. Perancangan Sensor Gas MQ-2

Sensor MQ2 dapat mendeteksi perubahan kadar gas CO2 di lingkungan. Perubahan kadar gas karbon menyebabkan perubahan resistansi sensor MQ-2. Agar perubahan resistansi sensor dapat dibaca oleh mikrokontroler, maka diperlukan rangkaian pengkondisi sinyal.


(18)

Gambar 3.4. menunjukkan rangkaian pembagi tegangan. Perubahan resistansi sensor akan menyebabkan tegangan keluaran (Vout) berubah. Dari Gambar diatas diperoleh persamaan dengan membandingkan hasil Rs dengan tabel akan didapatkan konsentrasi gas dalam ppm.

Gambar 3.5. Grafik Perubahan Vout terhadap konsentrasi gas


(19)

3.4. Display LCD Character 2 x16

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, yang didifinisikan sebagai berikut:

PIN Nama fungsi 1 VSS Ground voltage 2 VCC +5V

3 VEE Contrast voltage 4 RS

Register Select

0 = Instruction Register 1 = Data Register

5 R/W

Read/ Write, to choose write or read mode

0 = write mode 1 = read mode

6 E

Enable

0 = start to lacht data to LCD character

1= disable

7 DB0 LSB 8 DB1 - 9 DB2 - 10 DB3 - 11 DB4 - 12 DB5 - 13 DB6 - 14 DB7 MSB

15 BPL Back Plane Light 16 GND Ground voltage


(20)

Gambar 3.7 LCD character 2x16

Modul LCD terdiri dari sejumlah memory yang digunakan untuk display. Semua teks yang kita tuliskan ke modul LCD akan disimpan didalam memory ini, dan modul LCD secara berturutan membaca memory ini untuk menampilkan teks ke modul LCD itu sendiri.

Gambar 3.8 Peta memory LCD character 2x16

Pada peta memori diatas, daerah yang berwarna biru ( 00 s/d 0F dan 40 s/d 4F) adalah display yang tampak. jumlahnya sebanyak 16 karakter per baris dengan dua baris. Angka pada setiap kotak adalah alamat memori yang bersesuaian dengan posisi dari layar. Dengan demikian dapat dilihat karakter pertama yang berada pada posisi baris pertama menempati alamat 00h. dan karakter kedua yang berada pada posisi baris kedua menempati alamat 40h

Agar dapat menampilkan karakter pada display maka posisi kursor harus terlebih dahulu diset. Instruksi Set Posisi Kursor adalah 80h. dengan demikian untuk menampilkan karakter, nilai yang terdapat pada memory harus ditambahkan dengan 80h.

Sebagai contoh, jika kita ingin menampilkan huruf “B” pada baris kedua pada posisi kolom kesepuluh.maka sesuai dengan peta memory, posisi karakter pada kolom 10 dari baris kedua mempunyai alamat 4Ah, sehingga sebelum kita menampilkan huruf “B” pada LCD, kita harus mengirim instruksi set posisi kursor, dan perintah untuk instruksi ini adalah 80h ditambah dengan alamat 80h + 4Ah =0Cah. Sehingga dengan mengirim perintah 0Cah ke LCD, akan menempatkan kursor pada baris kedua dan kolom ke 11.


(21)

Gambar 3.9 Gambar Rangkaian LCD ke Mikrokontroler

3.5. Rangkaian Driver Motor Servo

Motor servo mampu bekerja dua arah (CW dan CCW) dimana arah dan sudut pergerakan rotornya dapat dikendalikan hanya dengan memberikan pengaturan duty cycle sinyal PWM pada bagian pin kontrolnya.

Rangkaian mikrokontroler yang digunakan adalah ATmega8535 yang merupakan pusat pengolahan data dan pusat pengendali. Dalam rangkaian mikrokontroler ini terdapat empat buah port (A,B,C, D) yang dapat digunakan untuk menampung input atau output data. Port A digunakan sebagai input data,Port B.0 dan B.1 digunakan untuk mengontrol motor servo. Motor servo yang digunakan adalah motor servo standar 1800 seperti pada Gambar dibawah.


(22)

Gambar 3.10 Motor Servo 1800

Motor servo jenis ini hanya mampu bergerak dua arah (CW dan CCW) dengan defleksi masing-masing sudut mencapai 900, sehingga total defleksi sudut dari kanan–tengah–kiri adalah 1800 . Operasional motor servo dikendalikan oleh sebuah pulsa selebar ± 20 ms, dengan lebar pulsa antara 0,8 ms dan 2,2 ms menyatakan akhir dari range sudut maksimum. Apabila motor servo diberikan pulsa sebesar 1,5 ms maka mencapai gerakan 900. Bila diberikan pulsa kurang dari 1,5 ms maka posisi mendekati 00 .danbila diberikan pulsa lebih dari 1,5 ms maka posisi mendekati 1800. Motor Servo akan bekerja secara baik jika pada bagian pin kontrolnya diberikan sinyal PWM dengan frekuensi 50 Hz. Pada saat sinyal dengan frekuensi 50 Hz tersebut dicapai pada kondisi Ton duty cycle 1,5 ms, maka rotor dari motor akan berhenti tepat di tengah-tengah (sudut 00/netral). Pada saat Ton duty cycle dari sinyal yang diberikan kurang dari 1,5 ms, maka rotor akan berputar ke arah kiri dengan membentuk sudut yang besarnya linier terhadap besarnya Ton duty cycle, dan akan bertahan di posisi tersebut. Sebaliknya, jika Ton duty cycle dari sinyal yang diberikan lebih dari 1,5 ms, maka rotor akan berputar ke arah kanan dengan membentuk sudut yang linier pula terhadap besarnya Ton duty cycle, dan


(23)

bertahan di posisi tersebut. Untuk membuat servo berputar ke arah kanan, pulsa high yang diberikan adalah 1500+(derajat*10). Sebaliknya jika ingin membuat servo berputar ke arah kiri maka pulsa high yang diberikan adalah 1500– (derajat*10) dan pemberian pulsa ini harus dilakukan berulang-ulang.

Gambar 3.11 Rangkaian Motor Servo

3.6 Rangkaian Driver Kipas

Untuk mengendalikan kipas tidak dapat langsung dikendalikan mikrokontroler tetapi terlebih dahulu harus melalui driver. Driver ini pengendali dengan menggunakan relay, sehingga kipas yang dikendalikan dapat menggunakan arus AC atau DC tanpa perlu khawatir akan merusak mikrokontroler.

Keluran dari mikrokontroler akan masuk ke basis transistor NPN C945, sehingga jika keluaran mikrokontroler high mak transistor akan satu rasi, sehingga arus akan mengalir dari Vcc masuk ke kolektor dan diteruskan ke emitter. Ketika relay bekerja maka tegangan 12V DC akan disalurkan dan kipas akan menyala.


(24)

Gambar 3.12 Rangkaian Relay Pengendali Kipas

Transistor C945 dalam keadaan saturasi jika I B(sat)=15 mAmp. Keluaran dari.DATA tegangannya sebesar 5V (High). Maka I B = 4,3 mA sehingga I I B B(sat), dan transistor akan saturasi ketika data bernilai High dan arus akan mengalir pada kumparan relay, dioda IN4004 berfungsi menahan tegangan balik dari relay ketika keadaan berubah dari aktif menuju tidak aktif.

3.7 Rangkaian Komunikasi Serial

Komunikasi serial merupakan hal yang penting dalam sistem embedded, karena dengan komunikasi serial kita dapat dengan mudah menghubungkan mikrokontroler dengan devais lainnya. Port serial pada mikrokontroller terdiri atas dua pin yaitu RXD dan TXD, RXD berfungsi untuk menerima data dari komputer/perangkat lainnya, TXD berfungsi untuk mengirim data ke


(25)

Gambar 3.13 MAX232 dalam rangkaian

Standar komunikasi serial untuk komputer ialah RS-232, RS-232 mempunyai standar tegangan yang berbeda dengan serial port mikrokontroler, sehingga agar sesuai dengan RS-232 maka di butuhkan suatu rangkaian level converter, IC yang digunakan bermacam-macam, tetapi yang paling mudah dan sering digunakan ialah IC MAX232/HIN232.

3.8 Flowchart Sistem

Program akan melakukan penyetingan awal. Kemudian sistem akan melakukan pengukuran terhadap sensor suhu dan sensor gas. Lalu mikro akan mengirim hasil pengukuran suhu dan gas ke interface PC melalui komunikasi serial. Jika suhu


(26)

mengirimkan data ke mikro agar menghidupkan kipas, jika tidak maka interface akan mengecek nilai kadar asap yang dikirimkan oleh mikro. Jika kadar asap melebihi nilai batas aman maka program akan memerintahkan mikro agar membuka ventilasi. Kemudian hasil percobaan akan ditampilkan di LCD. selesai


(27)

MULAI

BACA SUHU DAN ASAP

APAKAH SUHU > BATAS AMAN?

INISIALISASI SISTEM

SELESAI

YA

KIPAS HIDUP

TAMPILKAN LCD

APAKAH ASAP > BATAS AMAN?

TIDAK


(28)

BAB IV

PENGUJIAN ALAT DAN ANALISA RANGKAIAN

4.1 Pengujian Rangkaian Mikrokontroller ATMega8535

Untuk mengetahui apakah rangkaian mikrokontroller bekerja dengan baik, maka dilakukan pengujian. Pengujian pada bagian ini dilakukan dengan

memberikan program sederhana pada mikrontroller.

Program diatas bertujuan untuk menghidupkan LED berjalan (Running LED) yang terhubung ke PortC.Kristal yang digunakan adalah Kristal 12 MHz dan frekuensi pemindahan LED adalah 2 Hz. Jika program tersebut dijalankan maka lampu LED akan hidup dan mati secara bergantian.

4.2. Pengujian Rangkaian Driver Kipas

Keluran dari mikrokontroler akan masuk ke basis transistor NPN C945, sehingga jika keluaran mikrokontroler high mak transistor akan satu rasi, sehingga arus akan mengalir dari Vcc masuk ke kolektor dan diteruskan ke emitter. Ketika relay bekerja maka tegangan 12V DC akan disalurkan dan kipas akan menyala.


(29)

Keluaran dari DATA tegangannya sebesar 5V (High). transistor akan saturasi ketika data bernilai High dan arus akan mengalir pada kumparan relay, dioda IN4004 berfungsi menahan tegangan balik dari relay ketika keadaan berubah dari aktif menuju tidak aktif.

4.3. Interfacing LCD 2x16

Bagian ini hanya terdiri dari sebuah LCD dot matriks 2 x 16 karakter yang berfungsi sebagai tampilan hasil pengukuran dan tampilan dari beberapa keterangan. LCD dihubungkan langsung ke Port 0 dari mikrokontroler yang berfungsi mengirimkan data hasil pengolahan untuk ditampilkan dalam bentuk alfabet dan numerik pada LCD.

Display karakter pada LCD diatur oleh pin EN, RS dan RW: Jalur EN dinamakan Enable. Jalur ini digunakan untuk memberitahu LCD bahwa anda sedang mengirimkan sebuah data. Untuk mengirimkan data ke LCD, maka melalui program EN harus dibuat logika low “0” dan set ( high ) pada dua jalur kontrol yang lain RS dan RW. Jalur RW adalah jalur kontrol Read/ Write. Ketika RW berlogika low (0), maka informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogika high ”1”, maka program akan melakukan pembacaan memori dari LCD. Sedangkan pada aplikasi umum pin RW selalu diberi logika low ( 0 )

Berdasarkan keterangan di atas maka kita sudah dapat membuat progam untuk menampilkan karaker pada display LCD. Adapun program yang diisikan ke mikrokontroller untuk menampilkan karakter pada display LCD . Program ini telah berjalan dengan baik dan sesuai dengan kebutuhan pada perancangan. Program di atas akan menampilkan kata “FISIKA” di baris pertama pada display LCD 2x16.

4.4. Pengujian Sensor LM35

Untuk mengukur dan mengontrol suhu , digunakan LM35 yang merupakan Perubahan tegangan yang dihasilkan sensor merupakan input bagi ADC yang akan diubah menjadi data digital. ADC pada ATmega8535 memiliki resolusi 10-bit, yang dapat memberikan keluaran 2^10 = 1024 nilai diskrit. Bila digunakan catu


(30)

memiliki resolusi output 10mV/ºC, maka resolusi termometer yang dibuat dengan ATmega8535 adalah 4.8mV/10mV ~ 0.5ºC. Proses pengubahan tegangan input dari sensor menjadi data digital, dilakukan dengan cara yang sama seperti yang telah dijelaskan sebelumnya. Pengujian pada bagian rangkaian ADC ini dapat dilakukan dengan menghubungkan rangkaian ADC yang built-in dengan mikrokontroler. Selanjutnya rangkaian mikrokontroler dihubungkan dengan LCD. Mikrokontroler diisi dengan program untuk membaca nilai yang ada pada rangkaian ADC, kemudian hasil pembacaannya ditampilkan pada display LCD. Pada tabel 4.2 berikut akan ditampilkan data yang di-output-kan oleh

Mikrokontroller untuk variasi suhu yang terukur yang diterima sensor, yang dihitung dengan cara yang sama seperti di atas.

4.5. Pengujian Sensor Gas MQ-2

Langkah awal untuk mendapatkan data hasil pengujian adalah memposisikan potensiometer ke 5 KΩ karena pada rancangan alat ini

menggunakan potensiometer 10 KΩ. Sebelum melakukan pengujian untuk mendapatkan nilai ppm yang ditampilkan pada LCD 16x2, maka harus dilakukan terlebih dahulu pengujian awal dengan menggunakan data sheet sensor MQ2 sebagai acuan dasar untuk mendapatkan rumus persamaan nilai ppm yang akan dimasukkan dalam program. Berdasarkan data sheet yang ada maka didapatkan hasil pengujian yang ditampilkan pada tabel berikut :

Tabel 4.1 Data Konversi Bilangan Desimal ke Biner Dari Output Sensor Suhu terukur

(°C) Output LM35

Tampilan Display

30 300 miliVolt 030 31 310 miliVolt 031 32 320 miliVolt 032 33 330 miliVolt 033 34 340 miliVolt 034 35 350 miliVolt 035 36 360 miliVolt 036


(31)

Tabel 4.2 Pengujian nilai ADC berdasarkan sensor gas MQ-2 data lama pengujian (detik) Vout (mV)

1 5 500

2 10 750

3 15 1250

4 20 1600

5 30 2200

6 35 2700

7 40 3000

8 50 3300

Dari tabel dapat dilihat bahwa nilai tegangan akan naik seiring naiknya konsentrasi gas yang diberikan dan secara otomatis tegangan output akan naik. Sesuai pada data sheet yang tesedia maka untuk nilai RL yang akan digunakan adalah 5 KΩ, nilai resistansi yang menghasilkan 1000 ppm untuk udar a bersih (clean air) pada saat pengkalibrasian sensor. Pada rangkaian sensor untuk nilai Rs pada hasil pengujian tersebut

4.6 Pengujian Rangkaian Motor Servo

Motor servo berputar berdasarkan inputan pulsa duty cycle yang diberikan melalui pin kontrolnya. Motor servo tidak memerlukan rangkaian eksternal untuk berputar, karena didalam motor servo sudah memiliki rangkaian control elektronik dan internal gear untuk mengendalikan pergerakan dan sudut angularnya. Cara kerja dari motor servo yaitu Motor servo dikendalikan dengan memberikan sinyal modulasi lebar pulsa (Pulse Wide Modulation / PWM) melalui kabel kontrol. Lebar pulsa sinyal kontrol yang diberikan akan menentukan posisi sudut putaran dari poros motor servo. Sebagai contoh, lebar pulsa dengan waktu 1,5 ms (mili detik) akan memutar poros motor servo ke posisi sudut 90⁰. Bila pulsa lebih pendek dari 1,5 ms maka akan berputar ke arah posisi 0⁰ atau ke kiri (berlawanan dengan arah jarum jam), sedangkan bila pulsa yang diberikan lebih lama dari 1,5


(32)

ms maka poros motor servo akan berputar ke arah posisi 180⁰ atau ke kanan (searah jarum jam).

Gambar 4.2. Sudut angular Motor Servo

Ketika lebar pulsa kendali telah diberikan, maka poros motor servo akan bergerak atau berputar ke posisi yang telah diperintahkan, dan berhenti pada posisi tersebut dan akan tetap bertahan pada posisi tersebut. Jika ada kekuatan eksternal yang mencoba memutar atau mengubah posisi tersebut, maka motor servo akan mencoba menahan atau melawan dengan besarnya kekuatan torsi yang dimilikinya (rating torsi servo). Namun motor servo tidak akan mempertahankan posisinya untuk selamanya, sinyal lebar pulsa kendali harus diulang setiap 20 ms (mili detik) untuk menginstruksikan agar posisi poros motor servo tetap bertahan pada posisinya.

4.6.1 Pengukuran dan Pengujian Modul RS232 Konverter

Pengukuran dan pengujian ini dimaksudkan untuk menguji apakah konverter tersebut bisa digunakan untuk berkomunikasi antara alat dengan komputer. Pengukuran tegangan ini dilakukan dengan menggunakan multimeter digital. Berikut ini tabel hasil pengukurannya.


(33)

Tabel 4.3. Hasil Pengukuran RS232 Konverter

Keterangan Tegangan (Volt) Logika

Pin 14 (Tx RS232) -7,2 High (RS232) Pin 13 (Rx RS232) +5,3 Low (RS232) Pin 10 (Tx TTL) 4,7 High (TTL) Pin 12 (Rx TTL) 0,3 Low (TTL)

Sedangkan pengujian dilakukan dengan menghubungkan kabel data serial dari alat menuju ke komputer, kemudian pin 10 dan pin 12 dari RS232 konverter (Max232) dihubungkan ke mikrokontroller. Pada program mikrokontroleer telah dimasukan berupa program sederhana utuk menguji rangkaian komunikasi serial RS232. Yaitu mengirimkan karakter “a” hingga karakter “z”, Setelah itu menjalankan program aplikasi Hyperterminal di windows.


(34)

Ketika dilakukan pengujian pada hyperterminal, tampilan yang dihasilkan terdapat pada gambar diatas. Dari data yang dikirimkan tersebut, semuanya berhasil diterima dengan baik sesuai dengan yang dikirimkan tanpa terjadi error data maupun kehilangan data. Sehingga dapat diambil kesimpulan bahwa rangkaian komunikasi RS232 dapat digunakan karena proses komunikasi antara PC dengan rangkaian mikrokontroler bekerja dengan baik. Rangkaian Max232 dapat bekerja sebagai mana yang diharapkan dimana Rangkaian Max232 berfungsi untuk mengkonversi tegangan level tegangan TTL ke tegangan level RS232


(35)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

1. Setelah diuji coba suhu yang terdeteksi berupa tegangan inputan analog diubah menjadi data digital. Dengan suhu terukur 300C – 360C dengan output tegangan 300 mV- 360 mV

2. Setelah diuji coba Mikrokontroler merupakan pusat pengendali dari pengontrolan sensor suhu dan sensor gas. Sensor suhu (IC LM-35) dan sensor gas MQ-2 telah diuji coba akan bekerja otomatis jika yang terdeteksi sesuai dengan yang ditentukan.

5.2 Saran

1. Sebaiknya kipas dibuat menggunakan metode pwm, agar dapat mempertahankan suhu ruangan .

2. Sebaiknya dibuat interfacenya ke tampilan menggunakan komunikasi wireless agar dapat dipantau secara jarak jauh.


(36)

BAB II

DASAR TEORI

2.1 Mikrokontroler ATMega 8535 2.1.1 Deskripsi Mikrokontroler AT8535

ATMega8535 adalah mikrokontroler CMOS 8 bit daya rendah berbasis arsitektur RISC. Instruksi dikerjakan pada satu siklus clock, ATMega8535 mempunyai throughput mendekati 1 MIPS per MHz, hal ini membuat ATMega8535 dapat bekerja dengan kecepatan tinggi walaupun dengan penggunaan daya rendah. Mikrokontroler ATmega8535 memiliki beberapa fitur atau spesifikasi yang menjadikannya sebuah solusi pengendali yang efektif untuk berbagai keperluan. ATmega8535 memiliki memori EEPROM sebesar 512 byte yang terpisah dari memori program maupun memori data. Memori EEPROM ini hanya dapat diakses dengan menggunakan register-register I/O yaitu register EEPROM Address, register EEPROM Data, dan register EEPROM Control. Untuk mengakses memori EEPROM ini diperlakukan seperti mengakses data eksternal, sehingga waktu eksekusinya relatif lebih lama bila dibandingkan dengan mengakses data dari SRAM.


(37)

2.1.2 ATMega8535 memiliki bagian struktur bagian sebagai berikut :


(38)

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

c. Tiga buah Timer/Counter dengan kemampuan perbandingan. d. CPU yang terdiri atas 32 buah register.

e. Watchdog Timer dengan osilator internal. f. SRAM sebesar 512 byte.

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

i. Port antarmuka SPI

j. EEPROM sebesar 512 byte yang dapat diprogram saat operasi. k. Antarmuka komparator analog.

l. Port USART untuk komunikasi serial

2.1.3 Peta Memori ATMega8535

ATMega8535 memilki ruang memori sebesar 8KByte. Mikrokontroller AVR ini memilki 12-bit Program Counter (PC) sehingga dapat mengalamati isi Flash Memory, untuk menghindari kerusakan pada software, pada Flash memory ruang memorinya dibagi menjadi dua bagian, yaitu Boot program dan Application program.


(39)

Gambar 2.3 Peta Memori ATMega 8535

ATMega8535 memiliki ruang memori data dan program yang terpisah. Pada ATMega8535 memori data terbagi atas tiga bagian, yaitu terdapat 32 buah register umum dan 64 buah register I/O, dan 512 byte SRAM internal. Register-register yang terdapat pada ATMega8535 tersebut menempati alamat yang bebeda-beda, untuk register keperluan umum, register ini menempati alamat memori terbawah dari $00 sampai $1F. Sementara itu, register yang digunakan untuk menangani I/O dan kontrol terhadap peripheral mikrokontroler menempati 64 alamat berikutnya, dari $20 hingga $5F, dan alamat berikutnya ditempati oleh SRAM 512 byte dari lokasi $60 sampai $25F.


(40)

Gambar 2.4 berikut menunjukkan konfigurasi memori data ATMega8535

2.2 Defenisi Sensor

Sensor adalah divais yang digunakan untuk merubah suatau besaran fisika atau kimia menjadi besaran listrik sehingga dapat dianalisa dengan rangkaian listrik tertentu. Sensor juga adalah suatu peralatan yang berfungsi untuk mendeteksi gejala-gejala atau sinyal-sinyal yang berasal dari perubahan suatu energi seperti energi listrik, energi fisiska, energi kimia, energi biologi , energi mekanika dan sebagainya, contoh kamera sebagai sensor penglihatan dan LDR (light dependent resistance) sebagai sensor cahaya.

Transducer adalah sebuah alat yang bila digerakkan oleh suatu energi di dalam sebuah sistem transmis, akan menyalurkan energi tersebut dalam bentyk


(41)

Transmisi ini bisa berupa listrik, mekanika, kimia, optik (cahaya) atau thermal (panas). Contoh generator adalah transduser yang merubah energi mekanik menjadi energi listrik, motor adalah transduser yang merubah energi listrik menjadi energi mekanik, dan sebagainya.

2.2.1 Persyaratan Umum

Dalam memilih peralatan sensor dan tranduser yang tepat dan sesuai dengan sistem yang akan disensor maka perlu diperhatikan persyaratan umum sensor berikut ini:

a. Linearitas

Ada banyak yang menghasilkan sinyal keluaran yang berubah secara kontinyu sebagai tanggapan terhadap masukan yang berubah secara kontinyu. Sebagai contoh, sebuah sensor panas dapat menghasilkan tegangan sesuai dengan panas yang dirasakannya. Dalam kasus seperti ini, biasanya diketahui secara tepat bagaimana perubahan keluaran dibandingkan dengan masukannya. b. Sensitivitas

Sensitivitas menunjukkan seberapa jauh kepekaan sensor terhadap kuantitas yang diukur. Sensitivitas sering juga adinyatakan dengan bilangan yang menunjukkan “perubahan keluaran dibandingkan unit perubahan masukan.” Beberapa sensor panas dapat memiliki kepekaan yang dinyatakan dengan “satu volt per derajat”, yang berarti perubahan satu derajat pada masukan akan menghasilkan perubahan satu volt pada keluarannya. Sensor panas lainnya dapat saja memiliki kepekaan “dua volt per derajat”, yang berarti memiliki kepekaan dua kali dari sensor yang pertama. Liniearitas sensor juga mempengaruhi sensitivitas dari sensor. Apabila tanggapannya linier, maka sensitivitasnya juga akan sama untuk jangkauan pengukuran keseluruhan. c. Tanggapan Waktu

Tanggapan waktu pada sensor menunjukkan seberapa cepat tanggapannya terhadap perubahan masukan. Ada bermacam cara untuk menyatakan tanggapan frekuensi sebuah sensor. Misalnya “satu millivolt pada 500 Hertz”.


(42)

Tanggapan frekuensi dapat pula dinyatakan dengan decibel (db), membandingkan daya keluaran pada frekuensi tertentu dengan daya keluaran pada frekuensi referensi.

2.2.2 Jenis Sensor dan Transducer

Sensor dapat diklasifikasikan sesuai dengan jenis tranfer energi yang dapat dideteksi yaitu:

− Thermal, contoh : Sensor temperatur dan sensor panas (bolometer,calorimeter).

− Electromagnetic , contoh : ohmeter, galvanometer, voltmeter, metal detector, RADAR).

− Mekanik, contoh: sensor tekanan (altimeter,barometer dan pressure gauge), gas and liquid flow sensor (anemometer, flometer, gas meter, water meter), mechanical sensor (acceleration sensor, position sensor, strain gauge)

− Kimiawi, contoh: sensor oksigen, ion-selective electrodes, Ph glass electrodes, redox electrodes dan carbon monoxide detectors.

− Radiasi optik, contoh: photodetectors, photodiode, CCD dan sesnor image, sensor infra merah, scintillometers.

− Radiasi Ionisasi, contoh : geiger counter, dosimeter, scintilation counter, neutron detection, particle counter, scintillator, bubble chamber.

Berdasarkan fungsi dan penggunaanya sensor dapat dikelompokkan menjadi tiga, yaitu sensor thermal (panas), sensor mekanis, dan sensor optik (cahaya). Sensor thermal adalah sensor yang akan digunakan untuk mendeteksi gejala perubahan panas/temperatur/ suhu pada suatau dimensi benda atau dimensi ruang tertentu. Contohnya bimetal, termistor, termokopel, RTD, photo transistor, poto dioda, photo multiplier, photovoltaik, infrared pyrometer, hygrometer, dsb.


(43)

2.3 Sensor Suhu (IC LM – 35)

IC LM 35 sebagai sensor suhu yang teliti dan terkemas dalam bentuk Integrated Circuit (IC), dimana output tegangan keluaran sangat linear berpadanan dengan perubahan suhu. Sensor ini berfungsi sebagai pengubah dari besaran fisis suhu ke besaran tegangan. IC LM 35 ini tidak memerlukan pengkalibrasian atau penyetelan dari luar karena ketelitiannya sampai lebih kurang seperempat derajat celcius pada temperature ruang. Sensor suhu IC LM 35 merupkan chip IC produksi Natioanal Semiconductor yang berfungsi untuk mengetahui temperature suatu objek atau ruangan dalam bentuk besaran elektrik, atau dapat juga di definisikan sebagai komponen elektronika yang berfungsi untuk mengubah perubahan temperature yang diterima dalam perubahan besaran elektrik. Sensor suhu IC LM35 dapat mengubah perubahan temperature menjadi perubahan tegangan pada bagian outputnya. Sensor suhu IC LM35 membutuhkan sumber tegangan DC +5 volt dan konsumsi arus DC sebesar 60 µA dalam beroperasi. Bentuk fisik sensor suhu LM 35 merupakan chip IC dengan kemasan yang berfariasi, pada umumnya kemasan sensor suhu LM35 adalah kemasan TO-92 seperti terlihat pada gambar dibawah.


(44)

Karakteristik Sensor suhu IC LM35 adalah : Memiliki sensitivitas suhu, dengan faktor skala linier antara tegangan dan suhu 10 mVolt/ºC, sehingga dapat dikalibrasi langsung dalam celcius. Memiliki ketepatan atau akurasi kalibrasi yaitu 0,5ºC pada suhu 25 ºC seperti terlihat pada gambar 2.2. Memiliki jangkauan maksimal operasi suhu antara -55 ºC sampai +150 ºC. Bekerja pada tegangan 4 sampai 30 volt. Memiliki arus rendah yaitu kurang dari 60 µA. Memiliki pemanasan sendiri yang rendah (low-heating) yaitu kurang dari 0,1 ºC pada udara diam. Memiliki impedansi keluaran yang rendah yaitu 0,1 W untuk beban 1 mA. Memiliki ketidaklinieran hanya sekitar ± ¼ ºC.

2.4 Sensor Gas (MQ – 2)

MQ-2 Semiconductor Sensor untuk Gas mudah terbakar materi sensitif dari MQ-2 Sensor gas SnO2, yang dengan konduktivitas rendah di udara bersih. Ketika menargetkan gas yang mudah terbakar ada, konduktivitas sensor lebih higher bersama dengan konsentrasi gas kenaikan. Silakan gunakan electroc sederhana EMUTUS, Convert perubahan conductivity untuk sesuai sinyal output Konsentrasi gas. Sensor MQ-2 gas memiliki sensitivitas tinggi untuk LPG, Propane dan Hidrogen, juga dapat digunakan untuk metana dan uap yang mudah terbakar lainnya, adalah dengan rendah biaya dan cocok untuk aplikasi yang berbeda.

2.4.1 Karakter Konfigurasi

* Sensitivitas yang baik untuk gas mudah terbakar di berbagai * Sensitivitas tinggi untuk LPG, Propane dan Hidrogen * Panjang hidup dan biaya rendah

* Drive sirkuit Sederhana

2.4.2 Aplikasi

* Detektor kebocoran gas domestik * Detektor gas mudah terbakar Industri * Detektor gas portabel


(45)

2.5 Kipas

Exhaust fan berfungsi untuk menghisap udara di dalam ruang untuk dibuang ke luar, dan pada saat bersamaan menarik udara segar di luar ke dalam ruangan. Selain itu exhaust fan juga bisa mengatur volume udara yang akan disirkulasikan pada ruang. Supaya sehat setiap ruang butuh sirkulasi udara berbeda sesuai dengan fungsinya. Misalnya, ruang tidur butuh pergantian udara 2 – 4 kali per jam, kamar mandi 6 – 10 kali, dan dapur 10 – 15 kali. Untuk ruangan ber-AC, exhaust fan adalah pasangan yang saling melengkapi. Yang satu menyejukkan, yang lain mengurangi kelembaban ruangan. Exhaust fan dipasang pada ruangan yang sirkulasi udara alaminya dianggap kurang memadai. Jadi, pemasangan merupakan upaya mekanik untuk mengoptimalkan pergantian udara di ruangan. Ada beberapa tipe exhaust fan menurut pemasangannya: yang dipasang di dinding (wall mount), jendela kaca (window mount), dan plafon (ceiling mount).

2.6 Codevision AVR

CodeVisionAVR adalah sebuah compiler C yang telah dilengkapi dengan fasilitas Integrated Development Environment (IDE) dan didesain agar dapat menghasilkan kode program secara otomatis untuk mikrokontroler Atmel AVR. Program ini dapat berjalan dengan menggunakan sistem operasi Windows® XP, Vista, Windows 7, dan Windows 8, 32-bit dan 64-bit. Integrated Development Environment (IDE) telah dilengkapi dengan fasilitas pemrograman chip melalui metode In-System Programming sehingga dapat secara otomatis mentransfer file program ke dalam chip mikrokontroler AVR setelah sukses dikompilasi.

CodeVisionAVR dapat menghasilkan kode program secara otomatis melalui fasilitas CodeWizardAVR Automatic Program Generator. Dengan adanya fasilitas ini maka penulisan program dapat dilakukan dengan cepat dan lebih efisien. Seluruh kode dapat diimplementasikan dengan fungsi sebagai berikut:

• Identifikasi sumber reset


(46)

• Inisialisasi port input/output

• Inisialisasi interupsi eksternal

• Inisialisasi timer/counter dan watchdog timer

• Inisialisasi USART dan interupsi buffer untuk komunikasi serial

• Inisialisasi komparator analog dan ADC

• Inisialisasi interface SPI dan two wire interface (TWI)

• Inisialisasi interface CAN

• Inisialisasi I2C Bus, sensor suhu LM75, thermometer/thermostat DS1621, dan real time clock PCF8563, PCF8583, DS1302, DS1307

• Inisialisasi 1 wire bus dan sensor suhu DS1820/DS18S20

• Inisialisasi modul LCD

2.7 Bahasa C

Program C adalah berisi sekumpulan fungsi-fungsi. Eksekusi program akan diawali dengan mengeksekusi fungsi main(). Program bahasa C di compile menggunakan C Compiler. Compiler akan membaca seluruh source code dan mengkonversi kedalam object code (hasil translasi source code suatu program ke dalam bentuk yang dapat dieksekusi secara langsung oleh komputer). Source code sudah tidak digunakan setelah dilakukan kompilasi oleh compiler. object code juga sering disebut dengan binary code atau machine code. Bahasa C merupakan bahasa yang biasa digunakan untuk keperluan pemrograman sistem, antara lain untuk membuat: 1. Assembler 2. Interpreter 3. Compiler 4. Sistem Operasi 5. Program bantu (utility) 6. Editor 7. Paket program aplikasi Beberapa program paket yang beredar seperti dBase dibuat dengan menggunakan bahasa C, bahkan sistem operasi UNIX juga dibuat dengan menggunakan bahasa C. Bahasa C sesungguhnya merupakan bahasa pemrograman yang serbaguna dan pemakaiannya tidak terbatas untuk pemrograman sistem, namun juga dapat digunakan untuk aplikasi bisnis, matematis maupun games, bahkan untuk aplikasi kecerdasan buatan. Dalam beberapa literatur, bahasa C digolongkan sebagai bahasa tingkat menengah (medium level language). Penggolongan ini bukan berarti bahasa C kurang ampuh atau lebih sulit dibandingkan dengan bahasa


(47)

tingkat tinggi (high level language - seperti Pascal, Basic, Fortran, Java, dan lain-lain), namun untuk menegaskan bahwa bahasa C bukanlah bahasa yang berorientasi pada pada mesin yang merupakan ciri dari bahasa tingkat rendah (low level language), yaitu bahasa mesin dan assembly. Pada kenyataannya, bahasa C mengkombinasikan elemen dalam bahasa tingkat tinggi dan bahasa tingkat rendah, yaitu kemudahan dalam membuat program yang ditawarkan pada bahasa tingkat tinggi dan kecepatan eksekusi dari bahasa tingkat rendah.

Bahasa pemrograman C sama seperti bahasa pemrograman lainnya yang memiliki kerangka dasar. Kerangka Dasar Bahasa C adalah sebagai berikut : 1. Fungsi main(). Fungsi main merupakan fungsi utama yang wajib ada pada saat kita membuat program dengan bahasa C. Dalam sebuah project hanya boleh ada 1 buah fungsi main() saja. Namun dalam bahasa C, tidak membatasi hanya boleh 1 fungsi saja, melainkan kita juga diperbolehkan untuk membuat fungsi-fungsi lain selain fungsi main() yang bisa mempermudah kita dalam membuat sebuah program. 2. Deklarasi variabel Pendeklarasian variabel ini dilakukan untuk mendaftarkan variabel apa saja yang akan kita gunakan dalam program yang kita buat. Pendeklarasian variabel ini biasanya sekaligus dengan mencantumkan tipe data dari variabel tersebut. 3. Perintah (statement) Perintah merupakan deretan program yang kita buat dalam sebuah project. 4. Akses library Digunakan untuk mengakses library apa saja yang kita perlukan dalam pembuatan sebuah program. 5. Komentar Komentar merupakan sebuah kalimat yang biasanya dicantumkan oleh seorang programer sebagai sebuah catatan kecil yang mana komentar ini tidak akan ikut di compile atau diproses. Kelebihan dan Kekurangan Bahasa Pemrograman C Bahasa C mempunyai beberapa kelebihan dibanding dengan bahasa pemrograman yang lain, yaitu: KELEBIHAN 1. C mempunyai operator yang lengkap untuk memanipulasi data. 2. Berbagai struktur data dan pengendalian proses disediakan dalam C, sehingga memungkinkan dibuat program yang terstruktur, bahkan program yang berorientasi pada objek (OOP = Object Orientied Programming). 3. Dibanding dengan bahasa mesin atau rakitan (assembly), C jauh lebih mudah dipahami dan pemrogram tidak perlu tahu detail mesin komputer yang digunakan sehingga tidak menyita waktu dalam


(48)

berorientasi pada permasalahan (objek), dan bukan berorientasi pada mesin. 4. Kecepatan eksekusi C mendekati kecepatan eksekusi program yang dibuat dengan bahasa tingkat rendah, namum kemudahan dalam memprogram setara dengan bahasa tingkat tinggi. 5. C memungkinkan memanipulasi data dalam bentuk bit maupun byte secara efisien. Disamping itu juga memungkinkan untuk melakukan manipulasi alamat dari suatu data yang dalam C dinamakan pointer. KEKURANGAN Adapun kelemahan --atau lebih tepatnya kesulitan bahasa pemrograman C terutama yang dirasakan oleh pemrogram pemula diantaranya adalah: 1. Banyaknya operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai, yang jika belum familiar akan menimbulkan masalah. 2. Para pemrogram C tingkat pemula umumnya belum pernah mengenal pointer dan tidak terbiasa menggunakannya, padahal keampuhan bahasa C justru terletak pada pointer.

2.8 PC (Preprocessor Compiler)

Salah satu kemudahan dalam membuat program dengan bahasa c adalah fasilitas preprocessor compiler. Preprocessor compiler mempersiapkan tahap awal sebelum kompilasi. Preprocessor diawali dengan simbol “#” dan diikuti kata khusus untuk mengarahkan compiler yang diadakan oleh tiap compiler.

Berikut preprocessor compiler yang umum dan perlu kita tahu :

#include

Pengarah compiler ini digunakan untuk memberitahu compiler agar menyalin isi suatu file ke dalam program. Deklarasi file header (*.h) dilakukan dengan pengarah compiler ini. File dengan ekstensi lainpun dapat disertakan dalam program dengan menggunakan #include.

#define


(49)

1. Menetapkan nama pengganti dari konstanta yang sering dipakai. 2. Menggantikan nama variabel, port,tipe, data dan operator.

3. Membuat nama alias dari suatu ekpresi. Defenisi untuk menggantikan pernyataan atau ekpresi biasa disebut MAKRO.

4. Membuat makro untuk menggantikan satu baris pernyataan atau lebih. 5. Menentukan bagian-bagian dari program yang ikut compile.

2.9 Karbondioksida (CO2)

Karbon dioksida adalah senyawa kimia yang terdiri dari dua atom oksigen terikat

kovalen dengan atom karbon. Berbentuk gas pada temperatur dan tekanan standar dan berada di atmosfer. Konsentrasi karbon dioksida di atmosfer bumi ± 387 pp.Tetapi jumlah bervariasi tergantung lokasi dan waktu. Karbon dioksida adalah gas rumah kaca yang penting karena mampu menyerap gelombang inframerah. Karbon dioksida diproduksi oleh hewan, tumbuh-tumbuhan, fungi, dan mikroorganisme dalam respirasi dan dipergunakan tanaman pada fotosintesis. Sehingga karbon dioksida termasuk komponen yang penting dalam siklus karbon. Karbon dioksida juga dihasilkan dari pembakaran bahan bakar fosil. Karbon dioksida anorganik dikeluarkan dari gunung berapi dan proses geotermal lainnya seperti pada mata air panas. Karbon diambil dari atmosfer dengan berbagai

cara:

1. Ketika matahari bersinar

karbon dioksida menjadi Proses ini akan lebih banyak menyerap karbon pada hutan dengan tumbuhan yang baru saja tumbuh atau hutan yang sedang mengalami pertumbuhan yang cepat.

2. Pada permukaan laut ke arah kutub, air laut menjadi lebih dingin dan CO2

akan lebih mudah larut. Selanjutnya CO2 yang larut tersebut akan terbawa

ole berat ke kedalaman laut atau interior laut (lihat bagia


(50)

3. Di laut bagian atas (upper ocean), pada daerah dengan produktivitas yang tinggi, organisme membentuk jaringan yang mengandung karbon, beberapa organisme juga membentuk cangkang karbonat dan bagian-bagian tubuh lainnya yang keras. Proses ini akan menyebabkan aliran karbon ke bawah (lihat bagi

4. Pelapukan batuan silikat. Tidak seperti dua proses sebelumnya, proses ini tidak memindahkan karbon ke dalam reservoir yang siap untuk kembali ke atmosfer. Pelapukan batuan karbonat tidak memiliki efek netto terhadap CO2

atmosferik karena ion bikarbonat yang terbentuk terbawa ke laut dimana selanjutnya dipakai untuk membuat karbonat laut dengan reaksi yang sebaliknya (reverse reaction).

Karbon dapat kembali ke atmosfer dengan berbagai cara pula, yaitu:

1. Melalui pernafasan (respirasi) oleh tumbuhan dan binatang. Hal ini merupakan glukosa (atau molekul organik lainnya) menjadi karbon dioksida dan air. 2. Melalui pembusukan binatang dan tumbuha

mengurai senyawa karbon pada binatang dan tumbuhan yang mati dan mengubah karbon menjadi karbon dioksida jika tersedia oksigen, atau menjadi

3. Melalui

terkandung menghasilkan karbon dioksida (juga yang lainnya seperti asap). Pembakaran perminyaka sudah tersimpan selama jutaan tahun di dalam geosfer. Hal inilah yang merupakan penyebab utama naiknya jumlah karbon dioksida di atmosfer.

4. Produksi

gamping yang akan menghasilkan juga karbon dioksida dalam jumlah yang banyak.

5. Di permukaan laut dimana air menjadi lebih hangat, karbon dioksida terlarut dilepas kembali ke atmosfer.


(51)

6. Erupsi vulkanik atau ledakan gunung berapi akan melepaskan gas ke atmosfer. Gas-gas tersebut termas Jumlah karbon dioksida yang dilepas ke atmosfer secara kasar hampir sama dengan jumlah karbon dioksida yang hilang dari atmosfer akibat pelapukan silikat; Kedua proses kimia ini yang saling berkebalikan ini akan memberikan hasil penjumlahan yang sama dengan nol dan tidak berpengaruh terhadap jumlah karbon dioksida di atmosfer dalam skala waktu yang kurang dari 100.000 tahun.


(52)

BAB I

PENDAHULUAN

1.1 Latar Belakang

Kipas angin merupakan suatu alat elektronik yang sangat umum digunakan dalam kehidupan manusia. Beragam fungsinya secara umum diantaranya yaitu sebagai pendingin udara, penyegar udara, ventilasi (exhaust fan), pengering (umumnya memakai komponen penghasil panas). Kipas angin juga ditemukan di mesin penyedot debu dan berbagai ornamen untuk dekorasi ruangan. Fungsi kipas angin sebagai ventilasi (exhaust fan) banyak sekali penggunaannya untuk membantu mengatur sirkulasi udara dalam ruangan. Exhaust fan juga sering ditemukan dalam ruangan tertutup, seperti ruangan yang bebas asap rokok dan bebas asap polusi.

Gas sisa pembakaran biasanya berupa gas karbon dioksida. Karena inilah hasil gas emisi pada kendaraan bermotor kebanyakan juga mengandung gas karbon dioksida. Begitu juga dengan proses pembakaran lain yang menghasilkan gas karbon dioksida. Gas karbon dioksida merupakan gas yang terjadi akibat pengikatan unsur karbon dan oksigen. Gas karbon ini memiliki karakter berbentuk hitam pekat, berbau, dan sesak ketika dihirup. Gas ini sangat mudah ditemukan di jalan raya terutama pada kendaraan bermotor yang mesinnya melakukan pembakaran yang kurang sempurna. Gas ini berpotensi mengganggu kesehatan ketika dihirup terutama bagi saluran pernafasan. Gas karbon dioksida ini bersifat polutan mampu merusak jaringan pernafasan. Alat yang dibuat dalam skripsi ini digunakan untuk mensirkulasikan udara dan menstabilkan kembali udara di dalam ruangan tertutup agar udara tetap bersih. Udara yang terdapat asap nya akan disedot keluar dan akan digantikan dengan udara yang baru. Gas karbon dioksida yang yang masuk kedalam ruangan sangat mempengaruhi kesehatan manusia jika berlebihan, maka dibuatlah sebuah alat untuk menstabilkan suhu dengan mensetting nilai titik suhu tertinggi dan terendah dan menampilkan nya di PC. Sistem kontrolnya menggunakan mikrokontroler ATMega8535 dan konverter serial to USB sebagai perangkat lunak, sedangkan sensor gas type MQ ini


(53)

digunakan untuk mendeteksi gas karbon dioksida. Dari uraian yang dijelaskan diatas maka penulis tertarik menulis skripsi dengan judul :

“RANCANGAN MONITORING SIRKULASI DAN STABILITAS SUHU RUANGAN MENGGUNAKAN SENSOR GAS DAN SENSOR SUHU DENGAN TAMPILAN PC BERBASIS ATMEGA 8535”.

1.2 Rumusan Masalah

1. Bagaimana membuat software menggunakan bahasa pemrograman C agar dapat melakukan pengontrolan secara otomatis pada ventilasi.

2. Bagaimana merancang tata letak sensor suhu dan sensor gas agar benda tersebut sebagai alat sirkulasi udara.

3. Bagaimana mengatur pemrosesan dan karbon CO2 dalam model ruangan yang

hasil perhitungannya ditampilkan melalui PC.

1.3 Batasan Masalah

Perancangan dan pembuatan alat ini didetteksi dengan :

1. Mikrokontroler yang digunakan adalah mikrokontroler ATMega 8535.

2. Sensor yang digunakan pada perancangan alat monitoring suhu ruangan ini yaitu sensor suhu LM35.

3. Output pada monitoring berupa tampilan LCD, kipas dan ventilasi.

4. Sistem dikontrol oleh sebuah mikrokontroler AVR yang diprogram dengan bahasa C dengan Software Codevision.

1.4 Tujuan Penelitian

Adapun tujuan penulisan ini adalah sebagai berikut : 1. Mendeteksi suhu di dalam model ruangan.


(54)

sebagai pendeteksi dan pengontrol kondisi sensor suhu dan sensor gas dalam ruangan.

1.5 Manfaat Penelitian

Penulisan proposal ini diharapkan bermanfaat bagi :

1. Mahasiswa untuk menambah wawasan kelulusan akademik.

2. Dapat menghirup udara segar tanpa ada pencemaran udara didalam ruangan. 3. Dapat menetralisir udara dengan cara membuka ventilasi udara dengan

menggantikan udara yang baru.

1.6 Metodelogi Penelitian

Dapat menjelaskan konsep dasar dan penelitian, arti dan guna data informasi, perumusan masalah, pengumpulan pengelolaan data dan analisa data.

1.7 Sistematika Penelitian

Untuk mempermudah pembahasan dan pemahaman maka penulis membuat sistematika pembahasan bagaimana sebenarnya prinsip kerja dari alat yang dapat mensirkulasikan dan mestabilkan udara dan sensor suhu dan sensor gas yang sudah diatur kadar nya, memanfaatkan mikrokontroler 8535 dan konverter serial to USB. Maka penulis menuis laporan ini sebagai berikut :

BAB 1 PENDAHULUAN

Dalam bab ini berisikan latar belakang, rumusan masalah, batasan masalah, tujuan penulisan, manfaat penulisan, metodologi

penulisan dan sistematika penulisan.

BAB 2 DASAR TEORI

Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan dan cara kerja dari rangkaian. Teori pendukung itu antara lain Mikrokontroler ATMega 8535 dan bahasa pemrograman yang digunakan.


(55)

BAB 3 PERANCANGAN DAN PEMBUATAN

Pada bagian ini akan dibahas perancangan dari alat, yaitu diagram blok dari rangkaian dan sistem kerja alat dari keseluruhan

BAB 4 PENGUJIAN RANGKAIAN

Pada bab ini dibahas hasil analisa dari rangkaian dan sistem kerja alat, penjelasan mengenai program-program yang digunakan untuk mengaktifkan rangkaian, penjelasan megenai program yang diiskan ke mikrokontroler ATMega 8535.

BAB 5 KESIMPULAN DAN SARAN

Bab ini merupakan penutup yang meliputi tentang kesimpulan yang dilakukan dari laporan proposal ini serta saran apakah rangkaian ini dapat dibuat lebih efisien dan dikembangkan perakitannya pada suatu metode lain yang mempunyai sistem kerja yang sama.


(56)

RANCANGAN MONITORING SIRKULASI DAN STABILITAS SUHU RUANGAN MENGGUNAKAN SENSOR GAS DAN SENSOR SUHU

DENGAN TAMPILAN PC BERBASIS ATMEGA 8535.

ABSTRAK

Penelitian ini bertujuan untuk mensirkulasikan dan menstabilkan suhu agar tetap bersih dan mendeteksi C02 didalam model ruangan. Sistem ini dikembangkan

menggunakan rancangan monitoring yang dilengkapi dengan Mikrokontroler ATMega 8535 sebagai pusat kendali dari seluruh sistem yang ada, Sistem ini meliputi beberapa perangkat pendukung seperti Sensor Suhu (LM-35) sebagai mengukur dan mengontrol suhu yang terdapat disekitarnya. Sistem mempunyai dua sensor yaitu sensor suhu untuk mendeteksi suhu udara pada ruangan dan sensor gas untuk mendeteksi jika ada gangguan atau konsentrasi gas yang terlalu berlebihan pada ruangan. Telah diuji coba pada sensor suhu, sensor akan mendeteksi suhu pada ruangan, jika suhu yang terdeteksi melebihi suhu yang maksimum yang diset, maka kipas secara otomatis akan menyala untuk mendinginkan ruangan jika suhu telah kembali normal, maka kipas akan mati. Untuk sensor gas, sensor akan mendeteksi gas berbahaya bagi manusia terutama gas CO2. Jika konsentrasi gas CO2 sudah terlalu banyak maka sistem secara

otomatis akan mengaktifkan motor untuk membuka ventilasi, sedang kipas akan bekerja untuk menyedot udara yang mengandung gas yang berbahaya untuk dilepaskan keluar ruangan. PC berfungsi untuk mengetahui status dari system kondisi sensor. Sistem yang dihasilkan mengukur suhu 30oC – 36oC dengan Output tegangan 300 mV – 360 Mv. Sensor suhu (IC-LM35) dan sensor gas (MQ-2) telah diuji coba akan bekerja otomatis jika yang terdeteksi sesuai dengan yang ditentukan.


(57)

DRAFT MONITORING CIRCULATION AND STABILITY USING ROOM TEMPERATURE SENSOR AND GAS TEMPERATURE SENSOR WITH

A VIEW PC BASED ATMEGA 8535

ABSTRACT

This research is aims to circulate and stabilize the temperature to keep them clean and detect C02 in the model room. This system was developed using a monitoring

plan that comes with Microcontroller ATMEGA 8535 as the central control of the entire system. This system includes several devices such as temperature sensors (LM-35) as a measure and control the temperature there is around. The system has two sensors are temperature sensors to detect air at room temperature and gas sensors to detect if there is interference or excessive concentration of gas in the room. The temperature of sensor has been tested, and the sensor will detect the temperature in the room, if the detected temperature exceeds the maximum temperature is set, then the fan will automatically turn on to cool the room if the temperature has returned to normal, then the fan will die. For a gas sensor, the sensor will detect gases harmful to humans, especially CO2. If the concentration

of CO2 is already too much then the system will automatically activate the motor

to open the vents, while the fan will work to suck air containing harmful gas to be released out of the room. PC serves to determine the status of the sensor system conditions. The resulting system produced measures the temperature of 30oC – 36oC with output voltage of 300 mV - 360 Mv. The temperature sensor (IC-LM35) and gas sensors (MQ-2) was tested will work automatically if detected in accordance with the specified.


(58)

RANCANGAN MONITORING SIRKULASI DAN STABILITAS

SUHU RUANGAN MENGGUNAKAN SENSOR GAS DAN

SENSOR SUHU DENGAN TAMPILAN PC BERBASIS

ATMEGA 8535

SKRIPSI

NOVA AVRILIA SIMANJUNTAK

140821012

PROGRAM STUDI FISIKA EKSTENSI

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

2016


(59)

RANCANGAN MONITORING SIRKULASI DAN STABILITAS

SUHU RUANGAN MENGGUNAKAN SENSOR GAS DAN

SENSOR SUHU DENGAN TAMPILAN PC BERBASIS

ATMEGA 8535

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh gelar Sarjana

NOVA AVRILIA SIMANJUNTAK

140821012

PROGRAM STUDI FISIKA EKSTENSI

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

2016


(60)

PERSETUJUAN

Judul : RANCANGAN MONITORING SIRKULASI DAN STABILITAS SUHU RUANGAN MENGGUNAKAN SENSOR GAS DAN SENSOR SUHU DENGAN TAMPILAN PC BERBASIS ATMEGA 8535

Kategori : SKRIPSI

Nama : NOVA AVRILIA SIMANJUNTAK Nomor Induk Mahasiswa : 140821012

Program Studi : S-1 (Sarjana) FISIKA EKSTENSI Departemen : FISIKA

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

Diluluskan di

Medan, Agustus 2016

Disetujui Oleh

Departemen Fisika FMIPA USU Pembimbing,

Dr. Marhaposan Situmorang Dr. Bisman P, M.Eng, Sc NIP : 1955103011980031003 NIP : 195609181985031002


(61)

PERNYATAAN

RANCANGAN MONITORING SIRKULASI DAN STABILITAS

SUHU RUANGAN MENGGUNAKAN SENSOR GAS DAN

SENSOR SUHU DENGAN TAMPILAN PC BERBASIS

ATMEGA 8535

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Agustus 2016

Nova Avrilia Simanjuntak 140821012


(62)

PENGHARGAAN

Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Pemurah dan Maha Penyayang , dengan limpah karunia-Nya Penulis dapat menyelesaikan penyusunan Skripsi ini dengan judul Rancangan Monitoring Sirkulasi dan Stabilitas Suhu Ruangan Menggunakan Sensor Gas dan Sensor Suhu Dengan Tampilan PC Berbasis ATMega 8535. Terimakasih penulis sampaikan kepada

1. Bapak, Ibu dan keluarga yang selama ini memberikan bantuan dan dorongan yang diperlukan. Semoga Tuhan Yang Maha Esa akan membalasnya.

2. Dr. Bisman Perangin- angin,M.Eng. Sc selaku pembimbing yang telah meluangkan waktunya selama penyusunan skripsi ini.

3. Bapak Dr. Marhaposan Situmorang selaku ketua Departemen Fisika FMIPA – USU dan Bapak Drs. Syahrul Humaidi, M.Sc selaku Sekretaris Jurusan Fisika.

4. Abangda Oki Handinata, S.Si yang telah ikut serta membantu dan meluangkan waktu nya untuk memberikan masukan dalam penyusunan laporan Seminar Hasil.


(63)

RANCANGAN MONITORING SIRKULASI DAN STABILITAS SUHU RUANGAN MENGGUNAKAN SENSOR GAS DAN SENSOR SUHU

DENGAN TAMPILAN PC BERBASIS ATMEGA 8535.

ABSTRAK

Penelitian ini bertujuan untuk mensirkulasikan dan menstabilkan suhu agar tetap bersih dan mendeteksi C02 didalam model ruangan. Sistem ini dikembangkan

menggunakan rancangan monitoring yang dilengkapi dengan Mikrokontroler ATMega 8535 sebagai pusat kendali dari seluruh sistem yang ada, Sistem ini meliputi beberapa perangkat pendukung seperti Sensor Suhu (LM-35) sebagai mengukur dan mengontrol suhu yang terdapat disekitarnya. Sistem mempunyai dua sensor yaitu sensor suhu untuk mendeteksi suhu udara pada ruangan dan sensor gas untuk mendeteksi jika ada gangguan atau konsentrasi gas yang terlalu berlebihan pada ruangan. Telah diuji coba pada sensor suhu, sensor akan mendeteksi suhu pada ruangan, jika suhu yang terdeteksi melebihi suhu yang maksimum yang diset, maka kipas secara otomatis akan menyala untuk mendinginkan ruangan jika suhu telah kembali normal, maka kipas akan mati. Untuk sensor gas, sensor akan mendeteksi gas berbahaya bagi manusia terutama gas CO2. Jika konsentrasi gas CO2 sudah terlalu banyak maka sistem secara

otomatis akan mengaktifkan motor untuk membuka ventilasi, sedang kipas akan bekerja untuk menyedot udara yang mengandung gas yang berbahaya untuk dilepaskan keluar ruangan. PC berfungsi untuk mengetahui status dari system kondisi sensor. Sistem yang dihasilkan mengukur suhu 30oC – 36oC dengan Output tegangan 300 mV – 360 Mv. Sensor suhu (IC-LM35) dan sensor gas (MQ-2) telah diuji coba akan bekerja otomatis jika yang terdeteksi sesuai dengan yang ditentukan.


(64)

DRAFT MONITORING CIRCULATION AND STABILITY USING ROOM TEMPERATURE SENSOR AND GAS TEMPERATURE SENSOR WITH

A VIEW PC BASED ATMEGA 8535

ABSTRACT

This research is aims to circulate and stabilize the temperature to keep them clean and detect C02 in the model room. This system was developed using a monitoring

plan that comes with Microcontroller ATMEGA 8535 as the central control of the entire system. This system includes several devices such as temperature sensors (LM-35) as a measure and control the temperature there is around. The system has two sensors are temperature sensors to detect air at room temperature and gas sensors to detect if there is interference or excessive concentration of gas in the room. The temperature of sensor has been tested, and the sensor will detect the temperature in the room, if the detected temperature exceeds the maximum temperature is set, then the fan will automatically turn on to cool the room if the temperature has returned to normal, then the fan will die. For a gas sensor, the sensor will detect gases harmful to humans, especially CO2. If the concentration

of CO2 is already too much then the system will automatically activate the motor

to open the vents, while the fan will work to suck air containing harmful gas to be released out of the room. PC serves to determine the status of the sensor system conditions. The resulting system produced measures the temperature of 30oC – 36oC with output voltage of 300 mV - 360 Mv. The temperature sensor (IC-LM35) and gas sensors (MQ-2) was tested will work automatically if detected in accordance with the specified.


(65)

DAFTAR ISI

Halaman

Persetujuan ... ii

Pernyataan ... iii

Penghargaan ... iv

Abstrak ... v

Abstract ... vi

Daftar Isi... vii

Daftar Tabel ... ix

Daftar Gambar ... x

Bab 1 Pendahuluan 1.1. Latar Belakang ... 1

1.2. Rumusan Masalah ... 2

1.3. Batasan Masalah ... 2

1.4. Tujuan Penelitian ... 2

1.5. Manfaat Penelitian ... 3

1.6. Metedologi Penelitian ... 3

1.7. Sistematika Penelitian ... 3

Bab 2 Dasar Teori 2.1. Mikrokontroler ATMega 8535 ... 5

2.1.1 Deskripsi Mikrokontroler AT8535... 5

2.1.2 Struktur bagian ATMega 8535 ... 6

2.1.3 Peta Memori ATMega 8535 ... 7

2.2 Defenisi Sensor ... 9

2.2.1 Persyaratan Umum ... 10

2.2.2 Jenis Sensor dan Transducer ... 11

2.3 Sensor Suhu (IC-LM 35) ... 12

2.4 Sensor Gas MQ – 2 ... 13

2.4.1 Karakter Konfigurasi ... 13

2.4.2 Aplikasi ... 13

2.5 Kipas ... 15

2.6 Codevision AVR ... 15

2.7 Bahasa C ... 15

2.8 PC (Preprocessor Compiler) ... 17

2.9 Karbondioksida (CO2) ... 18

Bab 3 Perancangan Dan Pembuatan 3.1 Rangakaian Mikrokontroler ATMega 8535 ... 22

3.2 Sensor Suhu LM35 ... 23

3.3 Perancangan Sensor Gas MQ-2 ... 24


(66)

3.5 Rangkaian Driver Motor Servo ... 28

3.6 Rangkaian Driver Kipas ... 30

3.7 Rangkaian Komunikasi Serial ... 31

3.8 Flowchart ... 32

Bab 4 Analisa Data 4.1 Pengujian Rangkaian Mikrokontroler ATMega8535 ... 35

4.2 Pengujian Rangkaian Driver Kipas ... 35

4.3 Interfacing LCD ... 36

4.4 Pengujian Sensor LM35 ... 36

4.5 Pengujian Sensor Gas MQ-2 ... 37

4.6 Pengujian Rangkaian Motor Servo ... 38

4.6.1 Pengukuran dan Pegujian Modul RS232 Konverter . ... 39

Bab 5 Kesimpulan Dan Saran 5.1 Kesimpulan ... 42

5.2 Saran ... 42

DAFTAR PUSTAKA ... 43

LAMPIRAN Rangkaian Keseluruhan ... 44

Listing Program ... 45

Pengujian Mikrokontroler ATMega 8535 ... 50

Program Mikrokontroler ke LCD... 52


(67)

DAFTAR TABEL

Nomor Judul Halaman Tabel

3.1 Fungsi pin LCD character 2x16...26 4.1 Data Konversi Bilangan Desimal ke Biner dari Output

Sensor...37 4.2 Pengujian Nilai ADC berdasarkan sensor

gas MQ-2 ...38 4.3 Hasil Pengukuran RS232 Konverter...40


(68)

DAFTAR GAMBAR

Nomor Judul Halaman Gambar

2.1 Mikrokontroler ATMega 8535... 5

2.1.2 Struktur ATMega 8535...6

2.3 Peta Memori...8

2.4 Konfigurasi Memori Data ATMega 8535...9

2.5 Gambar IC LM-35...12

3.1 Diagram Block...21

3.2 Rangkaian Sistem Minimum Mikrokontroler ATMega8535...22

3.3 Rangkaian LM35 ke ATMega 8535...24

3.4 Sensor MQ-2... 24

3.5 Grafik Perubahan Vout Terhadap Konsentrasi Gas...25

3.6 Rangkaian Sensor MQ-2 ke AtMega 8535………….25

3.7 LCD character 2x16... 27

3.8 Peta Memori LCD character 2x16...27

3.9 Gambar Rangkaian LCD ke Mikrokontroler...28

3.10 MotorServo……….29

3.11 Rangkaian Motor Servo………..30

3.12 Rangkaian Relay Pengendali Kipas………31

3.13 MAX232 dalam Rangkaian………32

4.1 Rangkaian Relay Pengendali Kipas………35

4.2 Sudut Angular Motor Servo……….…..39


(1)

RANCANGAN MONITORING SIRKULASI DAN STABILITAS SUHU RUANGAN MENGGUNAKAN SENSOR GAS DAN SENSOR SUHU

DENGAN TAMPILAN PC BERBASIS ATMEGA 8535.

ABSTRAK

Penelitian ini bertujuan untuk mensirkulasikan dan menstabilkan suhu agar tetap bersih dan mendeteksi C02 didalam model ruangan. Sistem ini dikembangkan

menggunakan rancangan monitoring yang dilengkapi dengan Mikrokontroler ATMega 8535 sebagai pusat kendali dari seluruh sistem yang ada, Sistem ini meliputi beberapa perangkat pendukung seperti Sensor Suhu (LM-35) sebagai mengukur dan mengontrol suhu yang terdapat disekitarnya. Sistem mempunyai dua sensor yaitu sensor suhu untuk mendeteksi suhu udara pada ruangan dan sensor gas untuk mendeteksi jika ada gangguan atau konsentrasi gas yang terlalu berlebihan pada ruangan. Telah diuji coba pada sensor suhu, sensor akan mendeteksi suhu pada ruangan, jika suhu yang terdeteksi melebihi suhu yang maksimum yang diset, maka kipas secara otomatis akan menyala untuk mendinginkan ruangan jika suhu telah kembali normal, maka kipas akan mati. Untuk sensor gas, sensor akan mendeteksi gas berbahaya bagi manusia terutama gas CO2. Jika konsentrasi gas CO2 sudah terlalu banyak maka sistem secara

otomatis akan mengaktifkan motor untuk membuka ventilasi, sedang kipas akan bekerja untuk menyedot udara yang mengandung gas yang berbahaya untuk dilepaskan keluar ruangan. PC berfungsi untuk mengetahui status dari system kondisi sensor. Sistem yang dihasilkan mengukur suhu 30oC – 36oC dengan Output tegangan 300 mV – 360 Mv. Sensor suhu (IC-LM35) dan sensor gas (MQ-2) telah diuji coba akan bekerja otomatis jika yang terdeteksi sesuai dengan yang ditentukan.

Kata Kunci : Sensor Suhu LM-35, Sensor Gas MQ-2, ATMega 8535.


(2)

DRAFT MONITORING CIRCULATION AND STABILITY USING ROOM TEMPERATURE SENSOR AND GAS TEMPERATURE SENSOR WITH

A VIEW PC BASED ATMEGA 8535

ABSTRACT

This research is aims to circulate and stabilize the temperature to keep them clean and detect C02 in the model room. This system was developed using a monitoring

plan that comes with Microcontroller ATMEGA 8535 as the central control of the entire system. This system includes several devices such as temperature sensors (LM-35) as a measure and control the temperature there is around. The system has two sensors are temperature sensors to detect air at room temperature and gas sensors to detect if there is interference or excessive concentration of gas in the room. The temperature of sensor has been tested, and the sensor will detect the temperature in the room, if the detected temperature exceeds the maximum temperature is set, then the fan will automatically turn on to cool the room if the temperature has returned to normal, then the fan will die. For a gas sensor, the sensor will detect gases harmful to humans, especially CO2. If the concentration

of CO2 is already too much then the system will automatically activate the motor

to open the vents, while the fan will work to suck air containing harmful gas to be released out of the room. PC serves to determine the status of the sensor system conditions. The resulting system produced measures the temperature of 30oC – 36oC with output voltage of 300 mV - 360 Mv. The temperature sensor (IC-LM35) and gas sensors (MQ-2) was tested will work automatically if detected in accordance with the specified.


(3)

DAFTAR ISI

Halaman

Persetujuan ... ii

Pernyataan ... iii

Penghargaan ... iv

Abstrak ... v

Abstract ... vi

Daftar Isi... vii

Daftar Tabel ... ix

Daftar Gambar ... x

Bab 1 Pendahuluan 1.1. Latar Belakang ... 1

1.2. Rumusan Masalah ... 2

1.3. Batasan Masalah ... 2

1.4. Tujuan Penelitian ... 2

1.5. Manfaat Penelitian ... 3

1.6. Metedologi Penelitian ... 3

1.7. Sistematika Penelitian ... 3

Bab 2 Dasar Teori 2.1. Mikrokontroler ATMega 8535 ... 5

2.1.1 Deskripsi Mikrokontroler AT8535... 5

2.1.2 Struktur bagian ATMega 8535 ... 6

2.1.3 Peta Memori ATMega 8535 ... 7

2.2 Defenisi Sensor ... 9

2.2.1 Persyaratan Umum ... 10

2.2.2 Jenis Sensor dan Transducer ... 11

2.3 Sensor Suhu (IC-LM 35) ... 12

2.4 Sensor Gas MQ – 2 ... 13

2.4.1 Karakter Konfigurasi ... 13

2.4.2 Aplikasi ... 13

2.5 Kipas ... 15

2.6 Codevision AVR ... 15

2.7 Bahasa C ... 15

2.8 PC (Preprocessor Compiler) ... 17

2.9 Karbondioksida (CO2) ... 18

Bab 3 Perancangan Dan Pembuatan 3.1 Rangakaian Mikrokontroler ATMega 8535 ... 22

3.2 Sensor Suhu LM35 ... 23

3.3 Perancangan Sensor Gas MQ-2 ... 24

3.4 Display LCD Character 2x16 ... 26


(4)

3.5 Rangkaian Driver Motor Servo ... 28

3.6 Rangkaian Driver Kipas ... 30

3.7 Rangkaian Komunikasi Serial ... 31

3.8 Flowchart ... 32

Bab 4 Analisa Data 4.1 Pengujian Rangkaian Mikrokontroler ATMega8535 ... 35

4.2 Pengujian Rangkaian Driver Kipas ... 35

4.3 Interfacing LCD ... 36

4.4 Pengujian Sensor LM35 ... 36

4.5 Pengujian Sensor Gas MQ-2 ... 37

4.6 Pengujian Rangkaian Motor Servo ... 38

4.6.1 Pengukuran dan Pegujian Modul RS232 Konverter . ... 39

Bab 5 Kesimpulan Dan Saran 5.1 Kesimpulan ... 42

5.2 Saran ... 42

DAFTAR PUSTAKA ... 43

LAMPIRAN Rangkaian Keseluruhan ... 44

Listing Program ... 45

Pengujian Mikrokontroler ATMega 8535 ... 50

Program Mikrokontroler ke LCD... 52


(5)

DAFTAR TABEL

Nomor Judul Halaman Tabel

3.1 Fungsi pin LCD character 2x16...26 4.1 Data Konversi Bilangan Desimal ke Biner dari Output

Sensor...37 4.2 Pengujian Nilai ADC berdasarkan sensor

gas MQ-2 ...38 4.3 Hasil Pengukuran RS232 Konverter...40


(6)

DAFTAR GAMBAR

Nomor Judul Halaman

Gambar

2.1 Mikrokontroler ATMega 8535... 5

2.1.2 Struktur ATMega 8535...6

2.3 Peta Memori...8

2.4 Konfigurasi Memori Data ATMega 8535...9

2.5 Gambar IC LM-35...12

3.1 Diagram Block...21

3.2 Rangkaian Sistem Minimum Mikrokontroler ATMega8535...22

3.3 Rangkaian LM35 ke ATMega 8535...24

3.4 Sensor MQ-2... 24

3.5 Grafik Perubahan Vout Terhadap Konsentrasi Gas...25

3.6 Rangkaian Sensor MQ-2 ke AtMega 8535………….25

3.7 LCD character 2x16... 27

3.8 Peta Memori LCD character 2x16...27

3.9 Gambar Rangkaian LCD ke Mikrokontroler...28

3.10 MotorServo……….29

3.11 Rangkaian Motor Servo………..30

3.12 Rangkaian Relay Pengendali Kipas………31

3.13 MAX232 dalam Rangkaian………32

4.1 Rangkaian Relay Pengendali Kipas………35

4.2 Sudut Angular Motor Servo……….…..39