BAB III
PERANCANGAN DAN PEMBUATAN
3.1.Diagram Blok Sistem
Atmega 8 Drive Supply
LCD
Sensor 2
Tombol set Sensor 1
Kipas
HC-05 AndroidAndroid
Gambar 3.1 Diagram blok system
3.1.1.Fungsi-fungsi diagram blok
1. Blok sensor 1 sebagai pendeteksi suhu atas
2. Blok sensor 2 sebagai input / pendeteksi suhu bawah
3. Blok Tombol set sebagai input / pengatur suhu sesuai yang diinginkan
4. Blok Supply sebagai sumber tegangan.
5. Blok LCD dan Android sebagai tampilan.
6. Blok kipas sebagai output.
3.2.Rangkaian Regulator 7805
Gambar 3.2 Rangkaian Regulator 7805
Mikrokontroler, sensor dan komponen komponen elektonika, kebanyakan
menggunakan tegangan 5v untuk menstabilkan tegangan dapat menggunakan
ICLM7805, yang berfungsi sebagai penstabil tegangan, dan mempertahankan
output tetap 5 volt.
3.3.Rangkaian Mikrokontroler Atmega8
Rangkaian mikrokontroller merupakan pusat pengendalian dari bagian
input dan keluaran serta pengolahan data. Pada sistem ini digunakan
mikrokontroller jenis Atmega8 yang memiliki spesifikasi sebagai berikut:
a.Kristal 8 MHz, yang berfungsi sebagai pembangkit clock.
b.Kapasitor 22 pF pada pin XTAL1 dan XTAL2.
c.Resistor 10 kΩ dan kapasitor 10 nF pada pin reset.
d.Port masukan dan keluaran yang digunakan yaitu :
1.PortC.0 digunakan sebagai Penerima data dari remote (receiver)
2.PortA.1, PortB.1 -PortB.4 digunakan sebagai data input basis transistor
Skema rangkaian sistem minimum mikrokontroller dapat dilihat pada
gambar berikut :
Gambar 3.3 Rangkaian Mikrokontroler Atmega8
3.4. Rangkaian HC-05
Penerima data dari android pada system ini menggunakan Bluetooth yang
dapat tehubung langsung dengan menggunakan modul HC 05. Jangkauan
maksimum 10 sampai 20 meter.
3.5.Rangkaian LCD
Pada alat ini, display yang digunakan adalah LCD (Liquid Crystal
Display) 16 x 2. Untuk blok ini tidak ada komponen tambahan karena
mikrokontroler dapat memberi data langsung ke LCD, pada LCD Hitachi - M1632
sudah terdapat driver untuk mengubah data ASCII output mikrokontroler menjadi
tampilan karakter. Pemasangan potensio sebesar 10 KΩ untuk mengatur kontras
karakter yang tampil. Gambar 3.4 berikut merupakan gambar rangkaian LCD
yang dihubungkan ke mikrokontroler.
Gambar 3.5. Rangkaian LCD
Dari gambar 3.4, rangkaian ini terhubung ke PB.1 - PB.7, yang merupakan
pin I/O dua arah dan pin fungsi khusus, yaitu sebagai Timer/Counter, komperator
analog dan SPI mempunyai fungsi khusus sebagai pengiriman data secara serial.
Sehingga nilai yang akan tampil pada LCD display akan dapat dikendalikan oleh
3.6.Rangkaian Sensor LM35
Gambar 3.6.Rangkaian Sensor LM35
Sensor LM35 memiliki tegangan kerja 5 Volt namun outputnya hanya
antara 0.01 Volt sampai 1.00 Volt mengingat LM35 yang digunakan adalah seri
DZ sehingga range pengukuran hanya berkisar antara 0 – 100°C dengan
perubahan sebesar 10mV/1°C. Dengan ketelitian yang dimiliki maka sensor
tersebut dapat diterapkan langsung dengan Mikrokontroller AVR ATmega8535
yang memiliki ADC internal 10 bit. Pada gambar diatas output dari LM35 dapat
3.7.Flowchat Sistem
start
inisialisasi
Set suhu
Sensor baca suhu
Kipas mati
Kipas hidup
selesai
If Suhu > set
BAB IV
PENGUJIAN DAN HASIL
4.1.Pengujian Rangkaian Regulator 7805
Voltage regulator IC adalah IC yang digunakan untuk mengatur tegangan
.IC 7805 adalah Regulator 5V, Voltage yang membatasi output tegangan 5V dan
menarik 5V diatur power supply. Pengujian rangkaian regulator ini biasanya
menggunakan volt meter, rangkaian ic7805 ini akan mengeluarkan tegangan 5
volt dengan inputan diatas 6 volt sampai dengan 35 Volt.
4.2.Pengujian Rangkaian Mikrokontroler
Pemrograman menggunakan mode ISP (In System Programming)
mikrokontroler harus dapat diprogram langsung pada papan rangkaian dan
rangkaian mikrokontroler harus dapat dikenali oleh program downloader.
Pada pengujian ini berhasil dilakukan dengan dikenalinya jenis mikrokontroler
oleh program downloader yaitu Atmega8.
Atmega8 menggunakan kristal dengan frekuensi 8 MHz, apabila Chip
Signature sudah dikenali dengan baik dan dalam waktu singkat, bisa dikatakan
rangkaian mikrokontroler bekerja dengan baik dengan mode ISP-nya.
4.3. Pengujian HC-05
Komunikasi modul HC-05 yang digunakan dengan pengiriman serial RXD
dan TXD, langsung dihubungkan ke mikrokontroler atmega8 yaitu pada
PORTD.0 dan PORTD.1, pada port tesebut sudah tersedia pengiriman serial dan
sudah ada librarynya user tinggal menggunakannya saja. Pengujian rangkian
Bluetooth ini dengan menggunakan Bluetooth terminal pada android, dibawah ini
adalah data yang dikirim dari android kemudian di terima oleh mikrokontroler.
4.4. Pengujian Rangkaian LCD (Liquid Crystal Display)
Di bawah ini dalah data pengujian LCD dengan mengukur setiap pin pada
LCD dari pin 1 sampai dengan pin 16 dapat dilihat pada Tabel 4.1.
Tabel 4.1. Pengukuran Pin IC LCD
PIN SIMBOL NILAI FUNGSI Tegangan keluaran
(Volt)
1 Vss – Power supply 0 volt (ground) 0,0
2 Vdd/Vcc – Power supply Vcc 4,95
3 Vee – Seting kontras 1,39
4 RS 0/1 0: intruksi input / 1: data input 3,96
5 R/W 0/1 0: tulis ke LCD / 1: membaca dari LCD 3,96
PIN SIMBOL NILAI FUNGSI Tegangan keluaran
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 B 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
melakukan pembacaan memori dari LCD. Sedangkan pada aplikasi umum pin
RW selalu diberi logika low ( 0 )
4.5. Pengujian Rangkaian Sensor LM35
Sensor ini bekerja dengan sangat baik, sesuai dengan datasheet yang
dikeluarkan pihak pabrikan. Sensor ini sudah menjadi sensor standar internasional
karena telah dipakai pada kejuaraan- kejuaraan robot pemadam api tingkat dunia.
Tegangan keluarannya linier dengan perubahan sebesar 10mV untuk setiap
kenaikan atau penurunan sebesar 1C.
Melalui pengujian pada suhu ruangan maupun air yang didinginkankan
dan dipanaskan, data keluaran hampir dikatakan sangat baik karena misalnya
ketika suhu pada saat kalibrasi dengan termometer alkohol sebesar 23C maka
keluaran dari rangkaian LM35 adalah sebesar 0,23V, dan nilai antara keluaran
dengan suhu yang terbaca dari termometer sangatlah akurat. Berikut adalah
programnya
#include <mega8.h>
#include <delay.h>
#include <mega8.h>
#include <stdlib.h>
#define pb1 PINB.2
#define pb2 PINB.4
char data;
int set=30;
float temp;
char buff[20];
int pwm;
int count;
// Alphanumeric LCD functions
#include <alcd.h>
// Declare your global variables here
// Standard Input/Output functions
#include <stdio.h>
// Voltage Reference: AREF pin
#define ADC_VREF_TYPE ((0<<REFS1) | (0<<REFS0) | (0<<ADLAR))
// Read the AD conversion result
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);
ADCSRA|=(1<<ADIF);
return ADCW;
void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization
// Port B initialization
// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=Out Bit0=In
DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) |
(0<<DDB2) | (1<<DDB1) | (0<<DDB0);
// State: Bit7=T Bit6=T Bit5=T Bit4=P Bit3=T Bit2=P Bit1=0 Bit0=T
PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (1<<PORTB4) |
(0<<PORTB3) | (1<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);
// Port C initialization
// Function: Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In
DDRC=(0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) | (0<<DDC2) |
(0<<DDC1) | (0<<DDC0);
// State: Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T
PORTC=(0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) |
(0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);
// Port D initialization
// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In
DDRD=(0<<DDD7) | (0<<DDD6) | (0<<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);
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
TCCR0=(0<<CS02) | (0<<CS01) | (0<<CS00);
TCNT0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 8000,000 kHz
// Mode: Fast PWM top=0x00FF
// OC1A output: Non-Inverted PWM
// OC1B output: Disconnected
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer Period: 0,032 ms
// Output Pulse(s):
// OC1A Period: 0,032 ms Width: 0 us
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=(1<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) |
TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (1<<WGM12) |
(0<<CS12) | (0<<CS11) | (1<<CS10);
TCNT1H=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0<<AS2;
TCCR2=(0<<PWM2) | (0<<COM21) | (0<<COM20) | (0<<CTC2) | (0<<CS22) |
(0<<CS21) | (0<<CS20);
TCNT2=0x00;
OCR2=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) | (0<<OCIE1A) |
(0<<OCIE1B) | (0<<TOIE1) | (0<<TOIE0);
// INT0: Off
// INT1: Off
MCUCR=(0<<ISC11) | (0<<ISC10) | (0<<ISC01) | (0<<ISC00);
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 9600
UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) |
(0<<UPE) | (0<<U2X) | (0<<MPCM);
UCSRB=(0<<RXCIE) | (0<<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=0x33;
// Analog Comparator initialization
// Analog Comparator: Off
// The Analog Comparator’s positive input is
// connected to the AIN0 pin
// The Analog Comparator’s negative input is
ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) |
(0<<ACIC) | (0<<ACIS1) | (0<<ACIS0);
// ADC initialization
// ADC Clock frequency: 1000,000 kHz
// ADC Voltage Reference: AREF pin
ADMUX=ADC_VREF_TYPE;
ADCSRA=(1<<ADEN) | (0<<ADSC) | (0<<ADFR) | (0<<ADIF) | (0<<ADIE) |
(0<<ADPS2) | (1<<ADPS1) | (1<<ADPS0);
SFIOR=(0<<ACME);
// SPI initialization
// SPI disabled
SPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) |
(0<<CPHA) | (0<<SPR1) | (0<<SPR0);
// TWI initialization
// TWI disabled
TWCR=(0<<TWEA) | (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) |
(0<<TWIE);
// Alphanumeric LCD initialization
// Connections are specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS – PORTB Bit 0
// RD – PORTD Bit 7
// EN – PORTD Bit 6
// D5 – PORTD Bit 4
// D6 – PORTD Bit 3
// D7 – PORTD Bit 2
// Characters/line: 16
4.6. Hasil Pengujian Keseluruhan
Tabel 4.2. Hasil Pengujian Keseluruhan
430 25
440 25
450 25
460 25
470 25
480 25
490 25
500 25
510 25
520 24
530 24
540 24
550 24
560 24
570 24
580 24
590 24
BAB V PENUTUP
5.1.Kesimpulan
Setelah melakukan tahap perancangan dan pembuatan sistem yang
kemudian dilanjutkan dengan tahap pengujian dan analisa maka dapat diambil
kesimpulan sebagai berikut :
1. Prinsip Kerja pada Sensor LM35 adalah mengubah besaran suhu menjadi
besaran tegangan.
2. Dalam aplikasi alat kontrol suhu ruangan ini dapat disimpukan bahwa ketika
sensor mendeteksi perubahan suhu pada ruangan, Maka Mikrokontroler
akan menampilkan data ke LCD dan juga ke andorid yang telah tersambung
dengan HC-05, Jika suhu mencapai 24 0C maka kecepatan kipas akan
menurun secara otomatis dan sebaliknya apabila suhu melebihi 24 0C maka
kecepatan kipas akan meningkat secara otomatis yang dikontrol
menggunakan android.
5.2.Saran
Dari hasil Laporan Tugas Akhir ini masih terdapat beberapa kekurangan
dan dimungkinkan untuk pengembangan lebih lanjut. Oleh karenanya penulis
merasa perlu untuk memberi saran sebagai berikut:
1. Pada Laporan Tugas Akhir ini dengan menggunakan Alat kontrol suhu
ruangan, Agar lebih teliti lagi dalam mengambil data agar data yang di