• Tidak ada hasil yang ditemukan

Perancangan Alat Pengendali Lampu dan Kipas Angin Dengan Jaringan Komunikasi Data Berbasis Mikrokontroler ATMega 32

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perancangan Alat Pengendali Lampu dan Kipas Angin Dengan Jaringan Komunikasi Data Berbasis Mikrokontroler ATMega 32"

Copied!
83
0
0

Teks penuh

(1)

LAMPIRAN

Gambar Alat Secara Keseluruhan

(2)
(3)

Program Pada Alat Receiver

/****************************************************** This program was created by the

CodeWizardAVR V3.12 Advanced Automatic Program Generator

(4)

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) | (0<<DDC1) | (0<<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) | (1<<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);

TCCR0=(0<<WGM00) | (0<<COM01) | (0<<COM00) | (0<<WGM01) | (0<<CS02) | (0<<CS01) | (0<<CS00);

TCNT0=0x00; OCR0=0x00;

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

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

(5)

OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; ASSR=0<<AS2;

TCCR2=(0<<PWM2) | (0<<COM21) | (0<<COM20) | (0<<CTC2) | (0<<CS22) | (0<<CS21) | (0<<CS20);

TCNT2=0x00; OCR2=0x00;

TIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) |

(0<<OCIE1A) | (0<<OCIE1B) | (0<<TOIE1) | (0<<OCIE0) | (0<<TOIE0);

MCUCR=(0<<ISC11) | (0<<ISC10) | (0<<ISC01) | (0<<ISC00); MCUCSR=(0<<ISC2);

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) | (0<<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=0x8F;

ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0); SFIOR=(0<<ACME);

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

SPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0);

// TWI disabled

TWCR=(0<<TWEA) | (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) | (0<<TWIE);

(6)

while (1)

This program was created by the CodeWizardAVR V3.12 Advanced Automatic Program Generator

(7)
(8)

#endif {

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

if (++rx_counter == 0) rx_buffer_overflow=1; #else

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

{

// Get a character from the USART Receiver buffer #define _ALTERNATE_GETCHAR_

(9)

#asm("cli")

if (PINB.4 == 0) {lcd_putsf("D"); delay_ms(300);} if (PINB.5 == 0) {lcd_putsf("C"); delay_ms(300);} if (PINB.6 == 0) {lcd_putsf("B"); delay_ms(300);} if (PINB.7 == 0) {lcd_putsf("A"); delay_ms(300);} PORTB = 0b11111101;

delay_ms(30);

if (PINB.4 == 0) {lcd_putsf("#"); delay_ms(300);} if (PINB.5 == 0) {lcd_putsf("9"); delay_ms(300);} if (PINB.6 == 0) {lcd_putsf("6"); delay_ms(300);} if (PINB.7 == 0) {lcd_putsf("3"); delay_ms(300);} PORTB = 0b11111011;

delay_ms(30);

if (PINB.4 == 0) {lcd_putsf("0"); delay_ms(300);} if (PINB.5 == 0) {lcd_putsf("8"); delay_ms(300);} if (PINB.6 == 0) {lcd_putsf("5"); delay_ms(300);} if (PINB.7 == 0) {lcd_putsf("2"); delay_ms(300);} PORTB = 0b11110111;

delay_ms(30);

(10)

if (PINB.5 == 0) {lcd_putsf("7"); delay_ms(300);} if (PINB.6 == 0) {lcd_putsf("4"); delay_ms(300);} if (PINB.7 == 0) {lcd_putsf("1"); delay_ms(300);} }

*/

void main(void) {

awal:

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);

// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T

//PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) |

(0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);

PORTB=0xff; DDRB=0x0f;

DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) | (0<<DDC2) | (0<<DDC1) | (0<<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) | (1<<DDD4) | (0<<DDD3) | (0<<DDD2) | (0<<DDD1) | (0<<DDD0);

PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) |

(11)

TCCR0=(0<<WGM00) | (0<<COM01) | (0<<COM00) | (0<<WGM01) | (0<<CS02) | (0<<CS01) | (0<<CS00);

TCNT0=0x00; OCR0=0x00;

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

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

TCNT1H=0x00;

TCCR2=(0<<PWM2) | (0<<COM21) | (0<<COM20) | (0<<CTC2) | (0<<CS22) | (0<<CS21) | (0<<CS20);

TCNT2=0x00; OCR2=0x00;

TIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) |

(0<<OCIE1A) | (0<<OCIE1B) | (0<<TOIE1) | (0<<OCIE0) | (0<<TOIE0);

MCUCR=(0<<ISC11) | (0<<ISC10) | (0<<ISC01) | (0<<ISC00); MCUCSR=(0<<ISC2);

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

UCSRB=(1<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (1<<RXEN) | (0<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);

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

(12)

UBRRL=0x8F;

ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0); SFIOR=(0<<ACME);

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

SPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0);

(13)
(14)

else if (input == 0)

This program was created by the CodeWizardAVR V3.12 Advanced Automatic Program Generator

(15)

External RAM size : 0

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) | (0<<DDC1) | (0<<DDC0);

PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) |

(0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);

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);

(16)

TCNT0=0x00; OCR0=0x00;

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

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

TCNT1H=0x00;

TCCR2=(0<<PWM2) | (0<<COM21) | (0<<COM20) | (0<<CTC2) | (0<<CS22) | (0<<CS21) | (0<<CS20);

TCNT2=0x00; OCR2=0x00;

TIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) |

(0<<OCIE1A) | (0<<OCIE1B) | (0<<TOIE1) | (0<<OCIE0) | (0<<TOIE0);

MCUCR=(0<<ISC11) | (0<<ISC10) | (0<<ISC01) | (0<<ISC00); MCUCSR=(0<<ISC2);

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

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

(17)

ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0); SFIOR=(0<<ACME);

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

SPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0);

TWCR=(0<<TWEA) | (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) | (0<<TWIE);

while (1) {

// Place your code here putchar(a);

delay_ms(100); }

(18)
(19)

DAFTAR PUSTAKA

Aji,Seno.2013.Kontrol Kipas Angin Menggunakan Bluetooth Berbasis

Arduino.[4]

Budiharto,Widodo.2005.Panduan Lengkap Belajar Mikrokontroller Perancangan

Sistem dan Aplikasi Mikrokontroller.Jakarta: PT. Alex Media Komputindo

Daryanto, 2001.Rengetahuan Praktis Teknik Radio.PT Bumi Aksara:Jakarta

Kadavi,Krisna.2010.Aplikasi Mikrokontroler AT89s51 Sebagai Basis Pada

Sistem Pengendalian Lampu Dan Pintu Dengan Menggunakan Bahasa

Bascom 8051.[3]

Kasogi,Nadila.2010. Perancangan Pengendali Lampu Ruangan

Dengan Menggunakan Komputer BerbasisMikrokontroler

ATmega8535.[2]

Sultan Setiawan, 2006. Mudah dan Menyenagkan Belajar Mikrokontroler. Andi

Offset]Rafiudin, Rahmat, 2006. Sistem Komunikasi Data Mutakhir.

Yogyakarta :Penerbit Andi Yogyakarta

Sanjaya,W.2013.Simulasi Menggunakan Cod Vision AVR dan Proteus.

Yogyakarta: Penerbit Gava Media.

Wahyono, Teguh. 2003. Prinsip Dasar dan Teknologi Komunikasi Data. Edisi

Pertama. Yogyakarta : Penerbit Graha Ilmu

Wibowo,Ari.2011.Pengaturan Kipas Dengan berbasis mikrokontroler

dengan menggunakan sensor suhu.[1]

http://elektronika-dasar.web:id/matrix-keypad-4x4-untuk mikrokontroler

diakses tanggal 22 Mei 2016, pukul 21.20 a.m

digilib.polban.ac.id/files/disks1/73/frekuensi radio 315 Mhz

(20)

BAB 3

PERANCANGAN SISTEM

3.1 Diagram Blok Sistem

Adapun diagram blok dari sistem yang dirancang adalah seperti yang

diperlihatkan pada gambar 3.1 berikut ini :

ATMega

Gambar 3.1. Diagram Blok Sistem

3.1.1 Fungsi Tiap Blok

1. Blok Mikrokontroler 1 : Sebagai memproses data untuk dikirim

2. Blok Mikrokontroler 2 : Sebagai memproses data yang diterima

dan di bandingkan untuk mengontrol kipas

dan lampu

3. Blok Keypad : Sebagai alat control on/of lampu dan kipas

4. Blok Power Suplay : Sebagai penyedia tegangan ke system

(21)

6. Blok Resever RF : Menerima data dari transmiter

7. Blok LCD : Sebagai display

8. Blok Kipas : Sebagai beban listrik yang dikontrol

9. Blok Lampu : Sebagai beban listrik yang dikontrol

10.Blok driver : Sebagai rangkaian pengendali

3.2 Rangkaian Mikrokontroler ATMega32

Rangkaian sistem minimum mikrokontroler ATMega32 dapat ‘dilihat pada gambar 3.2 di bawah ini :

Gambar 3.2 Rangkaian mikrokontroler ATMega32

Dari gambar 3.2, Rangkaian tersebut berfungsi sebagai pusat kendali dari seluruh

sistem yang ada. Komponen utama dari rangkaian ini adalah IC Mikrokontroler

ATMega32. Semua program diisikan pada memori dari IC ini sehingga rangkaian

dapat berjalan sesuai dengan yang dikehendaki. Pin 12 dan 13 dihubungkan ke

XTAL 11.0952 MHz dan dua buah kapasitor 30 pF. XTAL ini akan

(22)

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 Jack 10 Pin

header 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.3. Rangkaian LCD (Liquid Crystal Display)

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 5 KΩ untuk mengatur kontras karakter yang tampil.

Gambar 3.3 berikut merupakan gambar rangkaian LCD yang dihubungkan ke

mikrokontroler.

(23)

Dari gambar 3.3, rangkaian ini terhubung ke PB.0... 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

Mikrokontroller ATMega32.

3.4. Rangkaian Power Suplay

Rangkaian ini berfungsi untuk mensupplay tegangan ke seluruh rangkaian yang

ada. Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12

volt, keluaran 5 volt digunakan untuk mensupplay tegangan ke seluruh rangkaian,

sedangkan keluaran 12 volt digunakan untuk mensuplay tegangan ke motor dan

kipas 12 V DC. Rangkaian power supplay dapat ditunjukkan pada gambar 3.4

seperti dibawah ini.

(24)

3.5 Rangkaian radio freakuensi 315 Mhz

(a) (b)

Gambar 3.5. Rangkaian radio frekuensi (a) transmitter dan (b) receiver

Paket 315 Mhz RF link kit terdiri dari pemancar (Tx) dan penerima (Rx), yang

secara umum digunakan untuk remote control. Jenis atau model pada gambar

adalah WLS107B4B, dengan berat sekitar 5 g, dengan frekuensi sebesar 315 Mhz,

Modulasi ASK, keluaran data penerima : tinggi - 1/2 Vcc, rendah - 0.7v,

Tegangan masukkan transmisi : 3-12V (semakin tegangan masukannya tinggi

maka kekuatan transmisi juga lebih baik, Tegangan masukkan penerima : 3.3-6V

(semakin tegangan masukannya tinggi maka kekuatan penerimaan juga semakin

baik).

3.6. Rangkaian Keypad 4 x 4

Keypad Matriks adalah tombol-tombol yang disusun secara maktriks (baris x

kolom) sehingga dapat mengurangi penggunaan pin input. Sebagai contoh,

Keypad Matriks 4×4 cukup menggunakan 8 pin untuk 16 tombol. Proses

pengecekkan dari tombol yang dirangkai secara maktriks adalah dengan teknik

scanning, yaitu proses pengecekkan yang dilakukan dengan cara memberikan

umpan-data pada satu bagian dan mengecek feedback (umpan-baliknya) pada

bagian yang lain. Dalam hal ini, pemberian umpan-data dilakukan pada bagian

baris dan pengecekkan umpan-balik pada bagian kolom. Pada saat pemberian

umpan-data pada satu baris, maka baris yang lain harus dalam kondisi inversi-nya.

(25)

Gambar 3.6 rangkaian keypad 4x4

3.7. Rangkaian Kipas dan Lampu

Gambar 3.7 rangkaian kipas dan lampu

Rangkaian lampu ini memanfaatkan transistor bd139 yang tegangan/arus basisnya

dapat diatur untuk mendaptakan tegangan kolektor yang variatif kaki basis

dihubungkan ke out PWM mikrokontroler melalui resistor 4k7 untuk menghindari

kerusakan pada mikrokontroler, kaki kolektor dihubungkan ke negative motor

atau lampu dan positif dihubungkan ke 12 volt, kemudian emitter dihubungkan ke

GND. Resistansi kolektor ke emitor akan mendekati tak terhingga pada saat

(26)

3.8. Flowcart Transmiter

Start

inisialisasi

Input keypad

Terima data proses

Kirim data sistem

Selesai

(27)

3.9 Flowchart Receiver

(28)

BAB IV

HASIL DAN PEMBAHASAN

4.1. Pengujian Rangkaian Power Supply

Pengujian rangkaian power supply ini bertujuan untuk mengetahui tegangan yang

dikeluarkan oleh rangkaian tersebut, dengan mengukur tegangan keluaran dari

power supply menggunakan multimeter digital. Setelah dilakukan pengukuran

maka diperoleh besarnya tegangan keluaran sebesar 4,96 volt. Dengan begitu

dapat dipastikan apakah terjadi kesalahan terhadap rangkaian atau tidak. Jika

diukur, hasil dari keluaran tegangan tidak murni sebesar +5 Volt Hasil tersebut

dikarenakan beberapa faktor, diantaranya kualitas dari tiap-tiap komponen yang

digunakan nilainya tidak murni.Selain itu, tegangan jala-jala listrik yang

digunakan tidak stabil. Pada pengujian Power Suplay, tegangan yang kita

butuhkan sebesar 5 volt, pertama masuk tegangan AC sebesar 220 volt dari PLN,

kemudian disalaurkan ke travo sehingga tegangan menjadi 12 volt AC, disaring

lagi ke diode sehingga menjadi 12 volt DC, kemudian di hubungkan dengan IC

7805 sehingga tegangan menjadi 5 volt DC.

(29)

4.2. Pengujian Rangkaian Mikrokontroler ATMega32

Karena 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 ATMega32.

Gambar 4.2. Informasi Signature Mikrokontroler

ATMega32 menggunakan kristal dengan frekuensi 11,0592 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 rangkain LCD

Bagian ini hanya terdiri dari sebuah LCD dot matriks 2 x 16 karakter yang

(30)

keterangan. LCD dihubungkan langsung ke Port C 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 adalah sebagai

(31)

Program di atas akan menampilkan kata “LAMPU” di baris pertama pada display LCD 2x16. .

Gambar 4.3 Pengujian LCD

4.4 Pengujian Keypad Matriks 4 X 4

Untuk pengujian keypad ada beberapa tahap. Tentukan terlebih dahulu kolom

sebagai output dari mikrokontroler sedangkan baris sebagai input

kemikrokontroler.

Langkah pertama (Scanning kolom 1 PB0)

keluarkan output ke kolom 1(PB0)

kemudian deteksi penekanan baris1 (PB4)

kemudian deteksi penekanan baris2 (PB5)

kemudian deteksi penekanan baris3 (PB6)

kemudian deteksi penekanan baris4 (PB7)

Langkah kedua (Scanning kolom 2 PB1)

keluarkan output ke kolom 2 (PB1)

kemudian deteksi penekanan baris1 (PB4)

kemudian deteksi penekanan baris2 (PB5)

kemudian deteksi penekanan baris3 (PB6)

kemudian deteksi penekanan baris4 (PB7)

Langkah ketiga (Scanning kolom 3 PB2)

keluarkan output ke kolom 3 (PB2)

kemudian deteksi penekanan baris1 (PB4)

kemudian deteksi penekanan baris2 (PB5)

(32)

kemudian deteksi penekanan baris4 (PB7)

Langkah kempat (Scanning kolom 4 PB3)

keluarkan output ke kolom 4 (PB3)

kemudian deteksi penekanan baris1 (PB4)

kemudian deteksi penekanan baris2 (PB5)

kemudian deteksi penekanan baris3 (PB6)

kemudian deteksi penekanan baris4 (PB7)

Untuk pengujian matriks 4 x 4 dapat digunakan program sebagai berikut:

#include <stdio.h>

void tekan_keypad_tampil_lcd() //penekanan keypad kemudian ditampilkan di

LCD

{PORTB = 0b11111110;

if (PINB.4 == 0){data=16;}

else if (PINB.5 == 0){data=15;}

else if (PINB.6 == 0){data=14;}

else if (PINB.7 == 0){data=13;}

(33)

else if (PINB.5 == 0) {data=7;}

else if (PINB.6 == 0) {data=4;}

else if (PINB.7 == 0) {data=1;}

}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);

PORTB=0xff;

DDRB=0x0f;

DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) |

(0<<DDC2) | (0<<DDC1) | (0<<DDC0);

PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) |

(0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);

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);

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

| (0<<U2X) | (0<<MPCM);

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

(34)

}

}

Gambar 4.4 Pengujian Keypad Matriks

4.5 Pengujian Radio Frekuensi 315 MHZ

Pengujian radio frekuensi 315 Mhz ini bertujuan untuk mengetahui keadaan alat

tersebut. Alat tersebut digunakan untuk mengirim data secara nirkabel atau tanpa

(35)
(36)

unsigned char tx_counter=0;

if (tx_rd_index == TX_BUFFER_SIZE) tx_rd_index=0;

#endif

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

(37)

#asm("sei")

}

#pragma used-

#endif

Program diatas mengirimkan carekter hello ketansmiter. Data tersebut dikirim

dengan jenis data char. Kemudian untuk receiver yaitu dengan memasukan

(38)

unsigned int rx_counter=0;

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;

#else

if (rx_wr_index == RX_BUFFER_SIZE) rx_wr_index=0;

if (++rx_counter == RX_BUFFER_SIZE)

(39)

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

Dari program diatas data yang diterima dari transmiter berupa char. Dan pada

program ini di konversi kedalam bilangan hexa.

4.6 Pengujian Alat Keseluruhan

Gambar 4.6 Pengujian Alat

Pada pengujian ini, merupakan pengujian alat secara keselurahan. Pada pengujian

(40)

menggunakan gelombang radio untuk mengontrol lampu dan kipas secara jarak

jauh, pada bagian transmiter (remote) terdiri dari keypad, mikrokontroler dan

gelombang frekuensi 315Mhz. dari keypad data akan dikirim ke transmiter secara

wireless (tanpa kabel). Kemudian pada receiver data diterima dan diolah

kemudian dibandingkan dengan data yang telah ditentukan pada program sebagai

pengontrolan. Pada alat ini, jika pada transmiter ditekan 1, maka Kipas akan hidup

dengan kecepatan 25% , ditekan 2 kipas dengan kecepatan 50%, ditekan 3 kipas

dengan kecepatan 75% dan jika ditekan 4 kipas akan bergerak dengan kecepatan

100%. Begitu juga dengan lampu, jika ditekan 5 lampu akan hidup 25%, ditekan 6

akan hidup 50%,ditekan 7 akan hidup 75% dan jika ditekan 8 lampu akan hidup

100%. Jika ditekan. Untuk mematikan lampu dan kipas ditekan 0. Untuk

mematikan lampu ditekan C, mematikan kipas ditekan B. Berikut tabel hasil

pengujian alat:

Tabel 4.6 Pengujian Alat Keseluruhan Data yang di

kirim

( keypad)

Vbasis Vcolector Status Kipas Status Lampu

(41)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari hasil perancangan alat hingga pengujian dan pembahasan sistem maka

penulis dapat menarik kesimpulan, antara lain :

1. Telah berhasil dirancang sebuah alat yang dapat mengendalikan atau

mengontrol lampu dan kipas angin sesuai dengan input yang diinginkan

melalui tombol keypad yang tersedia dengan jarak jauh.

2. Berdasarkan pengujian yang telah dilakukan pada alat ini komunikasi

jarak jauh dapat dilakukan dengan menggunakan radio frekuensi, dimana

radio frekuensi transmiter sebagai pengirim dan radio frekuensi receiver

sebagai penerima.

3. Setelah pengujian alat kita dapat mengatur kecepatan kipas dan terang

lampu sesuai yg diingkan, dimana jika kita input 1 dari keypad maka

kecepatan kipas 25%, input 2 kecepatan kipas 50%, input 3 kecepatan

kipas 75%, input 4 kecepatan kipas maksimal 100%, input 5 terang

lampu 25 %, input 6 terang lampu 50%, input 7 terang lampu 75%, input

8 terang lampu maksimal 100%, dan untuk mematikan nya kita input 0.

5.2 Saran

Setelah melakukan penelitian, diperoleh beberapa hal yang dapat dijadikan

saran untuk dilakukan penelitian lebih lanjut yaitu :

1.Untuk pengembangan lebih lanjut, perlunya dilakukan penambahan lampu

dan kipas sehingga lebih banyak yang dikontrol.

2.Untuk pengembangan lebih lanjut, perlu dibuat alat yang lebih besar

sehinngga dapat lebih berguna untuk kehidupan sehari-hari.

3.Untuk pengembangan lebih lanjut perlu dibuat feedback antara Receiver

(42)

BAB 2

TINJAUAN PUSTAKA

2.1 Mikrokontroler

Mikrokontroler adalah sebuah chip yang berfungsi sebagai pengontrol rangkaian

elektronik dan umumnya dapat menyimpan program didalamnya. Mikrokontroler

umumnya terdiri dari CPU (Central Unit Processing Unit), memori, I/O tertentu

dan unit pendukung seperti Analog-to-Digital Converter (ADC) yang sudah

terintegrasi di dalamnya.kelebihan utama dari mikrokontroler adalah tersedianya

RAM dan peralatan I/O pendukung sehingga ukuran board mikrokontroler

menjadi sangat ringkas. Mikrokontroler juga merupakan chip cerdas yang menjadi

tren dalam pengendalian dan otomatisas serta memiliki port sebagai input dan

output. Dengan banyak jenis keluarga,kapasitas memori, dan berbagai figure,

mikrokontroler menjadi pilihan dalam aplikasi prosesor mini untuk pengendalian

skala kecil. Setelah mengalami perkembangan, teknologi mikroprosesor dan

mikrokontroler mengalami peningkatan yang terjadi pada tahun 1996 s/d 1998.

ATMEL mengeluarkan teknologi mikrokontroler terbaru berjenis AVR (Alf and Vegard’s Risc processor) yang menggunakan teknologi RISC (Reduce Instruction Set Computer) dengan keunggulan lebih banyak yang dibandingkan

pendahulunya, yaitu mikrokontroler jenis MCS. Mikrokontroler jenis MCS

memiliki kecepatan kerja 1/12 kali frekuensi osilator yang digunakan sedangkan

pada kecepatan frekuensi kerja AVR sama dengan kecepatan frekuensi kerja

osilator yang digunakan. Jadi apabila menggunakan frekuensi osilator yang sama,

maka AVR mempunyai kecepatan kerja 12 kali lebih cepat dibanding dengan

MCS. Dalam perancangan alat ini mikrokontroler yang digunakan adalah

ATmega32 yang merupakan produksi ATMEL yang berjenis AVR.

2.2 Mikrokontroler ATMega 32

Mikrokontroler merupakan sebuah single chip yang didalamya telah dilengkapi

dengan CPU (Central Prosessing Unit); RAM ( RandomAcces Memory); ROM

(43)

spesifik digunakan untuk aplikasi –aplikasi control dan buka aplikasi serbaguna. Mikrokontroler umumnya bekerja pada frekuensi 4MHZ-40MHZ. Perangkat ini

sering digunakan untuk kebutuhan kontrol tertentu seperti pada sebuah penggerak

motor. Read only Memory (ROM) yang isinya tidak berubah meskipun IC

kehilangan catu daya. Sesuai dengan keperluannya, sesuai dengan susunan

MCS-51. Memory penyimpanan program dinamakan sebagai memory program.

Random Acces Memory (RAM) isinya akan begitu sirna IC kehilangan catudaya

dipakai untuk menyimpan data pada saat program bekerja. RAM yang dipakai

untuk menyimpan data ini disebut sebagai memori data.

Mikrokontroler biasanya dilengkapi dengan UART (Universal

Asychoronous Receiver Transmitter) yaitu port serial komunikasi serial asinkron,

USART (Universal Asychoronous\Asy choronous Receiver Transmitter) yaitu

port yang digunakan untuk komunikasi serial asinkron dan asinkron yang

kecepatannya 16 kali lebih cepat dari Uart, SPI ( Serial Port Interface), SCI (

Serial Communication Interface ), Bus RC ( Intergrated circuit Bus ) merupakan

2 jalur yang terdapat 8 bit, CAN ( Control Area Network ) merupakan standard

pengkabelan SAE (Society of Automatic Enggineers).

Pada system computer perbandingan RAM dan ROM-nya besar, artinya

program-program pengguna disimpan dalam ruang RAM yang relatif

besar,sedangkan rutin-rutin antar muka pernagkat keras disimpan dalm ruang

ROM yang kecil. Sedangkan pada mikrokontroler, perbandingan ROM dan

RAM-nya yang besar artiRAM-nya program control disimpan dalam ROM yang ukuranRAM-nya

relative lebih besar, sedangkan RAM digunakan sebagai tempat penyimpanan

sedrhana sementara, termasuk register-register yang digunakan pada Microctroller

yang bersangkutan.

2.2.1 Arsitektur ATMega 32

Fitur-fitur yang dimiliki ATmega32 sebagai berikut:

1. Frekuensi clock maksimum 16 MHz.

2. Jalur I/O 32 buah, yang terbagi dalam PortA, PortB, PortC dan PortD.

3. Analog to Digital Converter 10 bit sebanyak 8 input, 4 chanel PWM.

(44)

5. CPU 8 bit yang terdiri dari 32 register.

6. Watchdog Timer dengan osilator internal.

7. SRAM sebesar 2K Byte.

8. Memori Flash sebesar 32K Byte dengan kemampuan read while write.

9. Interrupt internal maupun eksternal.

10.Port komunikasi SPI.

11.EEPROM sebesar 512 byte yang dapat diprogram saat operasi.

12.Analog Comparator.

13. Komunikasi serial standar USART dengan kecepatan maksimal 2,5 Mbps

(45)

2.2.2 Konfigurasi ATMega 32

Mikrokontroler merupakan suatu device yang di dalamnya sudah terintegrasi

dengan I/O port,RAM,ROM,sehingga dapat digunakan untuk berbagai keperluan

kontroler .Mikrokontroler AVR ATmega32 merupakan low power CMOS

mikrokontroler 8 bit yang di kembangkan oleh atmel dengan arsitektur

RISC(Reduced Instruction SET Computer) sehingga dapat mencapai troughput

eksekusi instruksi 1 MIPS(Million Instruction Per Second).Mikrokontroler AVR

dapat dikelompokkan menjadi 4 kelas yaitu kelas ATtiny,kelas AT90xx,keluarga

ATmega,dan kelas AT86RFxx.pada dasarnya yang membedakan masing-masing

kelas adalah memori,peripheral,spedd.operasi tegangan dan fungsinya sedangkan

dari segi arsitektur dan instruksi yang di gunakan bisa di katakan hampir sama.

Penjelasan konfigurasi pin pada mikrokontroler AVR ATmega32 secara umum:

a. Pin 1 sampai 8 (port B) merupakan port paralel 8 bit dua arah (bidirectional),

yang dapat di gunakan untuk general purpose dan special feature.

b. Pin 9 (riset) jika terdapat minimum pulse pada saat active low.

c. Pin 10 (VCC) di hubungkan ke Vcc (2,7-5,5 Volt).

d. Pin 11 dan 31 (GND di hubungkan ke Vssatau ground.

e. Pin 12 (XTAL 2) adalah pin masukan ke rangkaian osilator internal. Sebuah

osilator kristal atau sumber osilator luar dapat di gunakan.

f. Pin 13 (XTAL 1) adalah pin keluaran ke rangkaian osilator internal.pin ini di

pakai bila menggunakan osilator kristal.

g. Pin 14 sampai 21 (port D) adalah 8 bit dua arah (bi-directional I/O) port

dengan internal pull-up resistors di gunaka untuk general purpose dan special

feature.

h. Pin 22 sampai 29 (port C) adalah 8 bit dua arah (bi-directional I/O) port

dengan internal pull-up resistors di gunaka untuk general purpose dan special

feature.

i. Pin 30 adalah Avcc pin penyuplai daya untuk port A dan A/D converter dan di

hubungkan ke Vcc.jika ADC di gunakan maka pin ini di hubungkan ke Vcc.

j. Pin 32 adalah A REF pin yang berfungsi sebagai referensi untuk pin analog

jika A/D converter di gunakan.

(46)

dengan internal pull-up resistors di gunaka untuk general purpose.

Gambar 2.2 Pin-pin ATMega32

Secara fungsional konfigurasi pin ATMega32 adalah sebagai berikut:

1. VCC

Sumber Tegngan

2. GND

(Ground)

Ground

3. Port A (PA7 – PA0)

Port A adalah 8-bit port I/O yang bersifat bi-directional dan setiap pin

memilki internal pull-up resistor. Output buffer port A dapat mengalirkan

arus sebesar 20 mA. Ketika port A digunakan sebagai input dan di pull-up

secara langsung, maka port A akan mengeluarkan arus jika internal pull-up

resistor diaktifkan. Pin-pin dari port A memiliki fungsi khusus yaitu dapat

berfungsi sebagai channel ADC (Analog to Digital Converter) sebesar 10

bit. Fungsi-fungsi khusus pin-pin port A dapat ditabelkan seperti yang

tertera pada table.

Tabel 2.1 Fungsi khusus port A

Port Alternate Function

(47)

PA6 ADC6 (ADC input channel 6)

PA5 ADC5 (ADC input channel 5)

PA4 ADC4 (ADC input channel 4)

PA3 ADC3 (ADC input channel 3)

PA2 ADC2 (ADC input channel 2)

PA1 ADC1 (ADC input channel 1)

PA0 ADC0 (ADC input channel 0)

4. Port B (PB7 – PB0)

Port B adalah 8-bit port I/O yang bersifat bi-directional dan setiap pin

mengandung internal pull-up resistor. Output buffer port B dapat

mengalirkan arus sebesar 20 mA. Ketika port B digunakan sebagai input

dan di pull-down secara external, port B akan mengalirkan arus jika

internal pull-up resistor diaktifkan.

Pin-pin port B memiliki fungsi-fungsi khusus, diantaranya :

a.SCK port B, bit 7

Input pin clock untuk up/downloading memory.

b.MISO port B, bit 6

Pin output data untuk uploading memory.

c.MOSI port B, bit 5

Pin input data untuk downloading memory.

(48)

Tabel 2.2 Fungsi khusus port B

Port Alternate Function

PB7 SCK (SPI Bus Serial Clock)

PB6 MISO (SPI Bus Master Input/Slave Output)

PB6 MOSI (SPI Bus Master Output/Slave Input)

PB5 SS (SPI Slave Select Input)

PB3

AIN1 (Analog Comparator Negative Input)

OCO (Timer/Counter0 Output Compare Match Output)

PB2

AIN0 (Analog Comparator Positive Input)

INT2 (External Interrupt 2 Input)

PB1 T1 (Timer/Counter1 External Counter Input)

PB0

T0 (Timer/Counter External Counter Input) XCK

(USART External Clock Input/Output)

5. Port C (PC7 – PC0)

Port C adalah 8-bit port I/O yang berfungsi bi-directional dan setiap pin

memiliki internal pull-up resistor. Output buffer port C dapat mengalirkan

arus sebesar 20 mA. Ketika port C digunakan sebagai input dan di pull-down

secara langsung, maka port C akan mengeluarkan arus. Fungsi-fungsi khusus

(49)

Tabel 2.3 Fungsi khusus port C

Port Alternate Function

PC7 TOSC2 (Timer Oscillator Pin 2)

PC6 TOSC1 (Timer Oscillator Pin 1)

PC6 TD1 (JTAG Test Data In)

PC5 TD0 (JTAG Test Data Out)

PC3 TMS (JTAG Test Mode Select)

PC2 TCK (JTAG Test Clock)

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

PC0 SCL (Two-wire Serial Bus Clock Line)

6. Port D (PD7 – PD0)

Port D adalah 8-bit port I/O yang berfungsi bi-directional dan setiap pin

memiliki internal pull-up resistor. Output buffer port D dapat mengalirkan

arus sebesar 20 mA. Ketika port D digunakan sebagai input dan di pull-down

secara langsung, maka port D akan mengeluarkan arus jika internal pull-up

resistor diaktifkan. Fungsi-fungsi khusus pin-pin port D dapat ditabelkan

seperti yang tertera pada tabel dibawah ini.

Tabel 2.4 Fungsi khusus port D

Port Alternate Function

(50)

PD7 ICP1 (Timer/Counter1 Input Capture Pin)

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

PD6 TD0 (JTAG Test Data Out)

PD3 INT1 (External Interrupt 1 Input)

PD2 INT0 (External Interrupt 0 Input)

PD1 TXD (USART Output Pin)

PD0 RXD (USART Input Pin)

2.2.3 Arsitektur CPU ATMega32

Fungsi utama CPU adalah memastikan pengeksekusian instruksi dilakukan

dengan benar. Oleh karena itu CPU harus dapat mengakses memori, melakukan

kalkulasi, mengontrol peripheral, dan menangani interupsi. Ada 32 buah General

Purpose Register yang membantu ALU bekerja. Untuk operasi aritmatika dan

logika, operand berasal dari dua buah general register dan hasil operasi ditulis

kembali ke register. Status and Control berfungsi untuk menyimpan instruksi

aritmatika yang baru saja dieksekusi. Informasi ini

berguna untuk mengubah alur program saat mengeksekusi operasi kondisional.

Instruksi di jemput dari flash memory. Setiap byte flash memory memiliki alamat

masing-masing. Alamat instruksi yang akan dieksekusi senantiasa disimpan

Program Counter. Ketika terjadi interupsi atau pemanggilan rutin biasa, alamat di

Program Counter disimpan terlebih dahulu di stack. Alamat interupsi atau rutin

kemudian ditulis ke Program Counter, instruksi kemudian dijemput dan

dieksekusi. Ketika CPU telah selesai mengeksekusi rutin interupsi atau rutin

(51)

2.2.4 Program Memori

ATMega 32 memiliki 32 KiloByte flash memori untuk menyimpan

program.Karena lebar intruksi 16 bit atau 32 bit maka flash memori dibuat

berukuran 16K x 16. Artinya ada 16K alamat di flash memori yang bisa dipakai

dimulai dari alamat 0 heksa sampai alamat 3FFF heksa dan setiap alamatnya

menyimpan 16 bit instruksi.

2.2.5 SRAM Data Memori

ATMega 32 memiliki 2 KiloByte SRAM. Memori ini dipakai untuk menyimpan

variabel. Tempat khusus di SRAM yang senantiasa ditunjuk register SP disebut

stack. Stack berfungsi untuk menyimpan nilai yang dipush.

2.2.6 EEPROM Data Memori

ATMega 32 memiliki 1024 byte data EEPROM. Data di EEPROM tidak akan

hilang walaupun catuan daya ke sistem mati. Parameter sistem yang penting

disimpan di EEPROM. Saat sistem pertama kali menyala paramater tersebut

dibaca dan system diinisialisasi sesuai dengan nilai parameter tersebut.

2.2.7 Interupsi

Sumber interupsi ATMega 32 ada 21 buah. Tabel 2 hanya menunjukkan 10 buah

interupsi pertama. Saat interupsi diaktifkan dan interupsi terjadi maka CPU

menunda instruksi sekarang dan melompat ke alamat rutin interupsi yang terjadi.

Setelah selesai mengeksekusi intruksi-instruksi yang ada di alamat rutin interupsi

CPU kembali melanjutkan instruksi yang sempat tertunda.

2.2.8 Status register (SREG)

Status register adalah Status Register berisi informasi tentang hasil yang paling

baru-baru ini dieksekusi aritmatika instruksi. Informasi ini dapat digunakan untuk

mengubah aliran program untuk melakukan operasi bersyarat. Perhatikan bahwa

Register Status diperbarui setelah semua operasi ALU, sebagai ditentukan dalam

(52)

untuk menggunakan didedikasikan membandingkan instruksi, sehingga lebih

cepat dan lebih kompak kode. Status Register tidak secara otomatis disimpan

ketika memasuki rutin interupsi dan dipulihkan ketika kembali dari interupsi. Ini

harus ditangani oleh perangkat lunak.

Gambar 2.3 Status Register ATMega 32 • Bit 7 - I: Dunia Interrupt Enable

Global Interrupt Enable bit harus ditetapkan untuk menyela harus diaktifkan .

Individu interrupt memungkinkan kontrol selanjutnya dilakukan dalam register

kontrol terpisah . Jika Global Interrupt Enable Daftar dibersihkan , tidak ada

interupsi diaktifkan independen dari interrupt individu mengaktifkan

pengaturan . The I- bit dihapus oleh hardware setelah interupsi telah terjadi ,

dan diatur oleh instruksi RETI untuk mengaktifkan interupsi berikutnya . The

I- bit juga dapat diatur dan dibersihkan oleh aplikasi dengan SEI dan CLI

instruksi, seperti yang dijelaskan dalam referensi set instruksi . • Bit 6 - T : Bit Copy Storage

The Bit Copy instruksi BLD ( Bit Load) dan BST ( Bit Store) menggunakan T

- bit sebagai sumber atau tujuan untuk bit yang dioperasikan . Sedikit dari

register dalam Daftar file dapat disalin ke T oleh Instruksi BST , dan sedikit di

T dapat disalin ke dalam sedikit dalam register dalam Daftar file oleh Instruksi

BLD .

• Bit 5 - H : Half Carry Flag

The Half Carry Flag H menunjukkan setengah carry dalam beberapa operasi

aritmatika . Half Carry berguna dalam BCD aritmatika. • Bit 4 - S : Sign Bit , S = N ⊕ V

(53)

Overflow Flag V.

• Bit 3 - V : Two Complement Overflow Flag

The Two Complement Overflow Flag V mendukung dua itu aritmatika

komplemen.

• Bit 2 - N : Negative Flag

Negatif Flag N menunjukkan hasil negatif dalam aritmatika atau operasi logika • Bit 1 - Z : Nol Flag Zero Flag Z

mengindikasikan hasil nol dalam aritmatika atau operasi logika . • Bit 0 - C : Carry Flag The Carry Flag C

mengindikasikan carry dalam aritmatika atau operasi logika.

2.3 Frekuensi Radio

Frekuensi Radio adalah sinyal arus berfrekuensi tinggi yang berubah-ubah yang

melewati konduktor tembaga yang panjang dan kemudian diradiasikan ke udara

melalui sebuah antenna. Sebuah antenna mentranformasikan sinyal kabel ke

sinyal wireless dan sebaliknya. Ketika sinyal AC berfrekuensi tinggi diradiasikan

ke udara,akan membentuk gelombang radio. Gelombang radio tersebut berpindah

dari sumber (antenna) pada sebuah garis lurus semuanya bersamaan. Mengerti

tingkah laku dari panyebaran gelombang RF adalah bagian penting untuk

mengerti mengapa dan bagaimana wireless LAN berfungsi.

Tanpa dasar pengetahuan tersebut,seorang administrator tidak mampu

menentukan lokasi instalasi dari perlengkapan dan tidak akan mengerti

bagaimana memecahkanmasalah wireless LAN.Penyerapan terjadi ketika sinyal

RF merambat objek dan terserap dalam material objek dengan cara tidak

menembusnya, memantul, atau mengitari objek. Frekuensi Radio merupakan

suatu gelombang elektromagnetik yang memiliki spektrum radiasi

elektromagnetik pada rangefrekuensi antara 9 kHz-300 GHz. Gelombang

elektromagnetik dihasilkan dari arus AC yang diberikan pada suatu konduktor

atau antena. Antena tersebut akan meradiasikan suatu medan elektromagnetik

melalui udara. Panjang gelombang dari frekuensi radio berbanding terbalik

(54)

dengan λ = panjang gelombang (m)

c = kecepatan cahaya (3x108 m/s)

f = frekuensi (Hz)

Frekuensi Radio ini digunakan sebagai media pengiriman data dari transmitter ke

receiver.

2.3.1 Transmitter

Transmitter adalah rangkaian pengirim data yang mengirimkan data ke receiver

Transmitter ini terdiri dari modul RF transmitter dan Antena.

RF Transmiter INPUT

Antena

Gambar 2.4 Diagram Blok RangkaianTransmitter

Transmitter ini digunakan sebagai pengirim data antar device . Pada proyek akhir

ini modul RF transmitter yang digunakan yaitu tipe TLP 315 sudah tersedia dan

dapat dibeli dengan mudah dipasaran. Modul RF transmitter.

Modul RF Transmitter TLP 315 adalah modul pengirim data dengan media

pengiriman data melalui gelombang radio yang frekuensi kerjanya telah

(55)

Gambar 2.5 Bentuk Fisik dan Konfigurasi Kaki Transmitter

Keterangan : 1. GND

2. Data Out

3. VCC

4. Antena

2.3.2 Receiver

Receiver adalah rangkaian penerima data yang menerima data dari Transmitter.

Receiverini terdiri dari modul RF receiver, decoder, dan Antena.

Berikut ini adalah Diagram Blok dari receiver.

OUTPUT RF

Receiver Antena

Gambar 2.6 Diagram Blok Rangkaian Receiver

Receiver ini digunakan sebagai penerima data yang dikirim dari transmitter

sebagai sebuah input bagi mikrokontroler Atmega 32.

Modul RF Receiver

Pada proyek Akhir ini modul RF receiver yang digunakan yaitu tipe RLP 315

(56)

315 adalah modul penerima data yang menerima data dari modul RF transmitter

TLP 315 dengan frekuensi 315 MHz. Data yang diterima adalah data serial,

kemudian data ini diubah oleh decoder.

Gambar 2.7 Bentuk Fisik dan Konfigurasi Kaki Receiver Keterangan :

1. GND

2. Data Out Digital

3. Linear Output

4. VCC

5. VCC

6. GND

7. GND

8. Antena

2.4 Liquid Crystal Display (LCD)

Fungsi display dalam suatu aplikasi mikrokontroler sangat penting sekali

diantaranya yaitu :

 Mematikan data yang kita input valid  Mengetahui hasil suatu proses

 Memonitoring suatu proses  Mendebug program

 Menampilkan pesan

LCD berfungsi menampilkan suatu nilai hasil sensor, menampilkan teks,

(57)

adalah jenis LCD M1632. LCDM1632 merupakan modul LCD dengan tampilan

16 x 2 baris dengan konsumsi daya rendah. M1632 adalah merupakan modul LCD

dengan tampilan 16 x 2 baris dengan konsumsi daya yang rendah. Kegunaan LCD

banyak sekali dalam perancangan suatu sistem dengan menggunakan

mikrokontroler. LCD dapat berfungsi untuk menampilkan suatu nilai hasil sensor,

menampilkan teks, atau menampilkan menu pada aplikasi mikrokontroler.

Gambar 2.12 berikut ini adalah Pin LCD M1632:

Tabel 2.5 Fungsi pin pada Liquid Crystal Display

Sebagaimana terlihat pada kolom deskripsi (symbol and functions), interface LCD

merupakan sebuah parallel bus, dimana hal ini sangat memudahkan dan sangat

cepat dalam pembacaan dan penulisan data dari atau ke LCD. Kode ASCII yang

ditampilkan sepanjang 8 bit dikirim ke LCD secara 4 atau 8 bit pada satu waktu.

Jika mode 4 bit yang digunakan, maka 2 nibble data dikirim untuk membuat

(58)

EN setiap nibblenya). Gambar 2.12 berikut adalah contoh LCD (2×16) yang

umum digunakan :

Gambar 2.8 LCD M1632

Jalur kontrol EN digunakan untuk memberitahu LCD bahwa mikrokontroller

mengirimkan data ke LCD. Untuk mengirim data ke LCD program harus menset

EN ke kondisi high (1) dan kemudian menset dua jalur kontrol lainnya (RS dan

R/W) atau juga mengirimkan data ke jalur data bus. Saat jalur lainnya sudah siap,

EN harus diset ke 0 dan tunggu beberapa saat (tergantung pada datasheet LCD),

dan set EN kembali ke high (1). Ketika jalur RS berada dalam kondisi low (0),

data yang dikirimkan ke LCD dianggap sebagai sebuah perintah atau instruksi

khusus (seperti bersihkan layar, posisi kursor dll). Ketika RS dalam kondisi high

atau 1, data yang dikirimkan adalah data ASCII yang akan ditampilkan dilayar.

Misal, untuk menampilkan huruf pada layar maka RS harus diset ke 1.

Jalur kontrol R/W harus berada dalam kondisi low (0) saat informasi pada data

bus akan dituliskan ke LCD. Apabila R/W berada dalam kondisi high (1), maka

program akan melakukan query (pembacaan) data dari LCD. Instruksi pembacaan

hanya satu, yaitu Get LCD status (membaca status LCD), lainnya merupakan

instruksi penulisan. Jadi hampir setiap aplikasi yang menggunakan LCD, R/W

selalu diset ke 0. Jalur data dapat terdiri 4 atau 8 jalur (tergantung mode yang

dipilih pengguna), mereka dinamakan DB0, DB1, DB2, DB3, DB4, DB5, DB6

dan DB7. Mengirim data secara parallel baik 4 atau 8 bit merupakan 2 mode

operasi primer.

Untuk membuat sebuah aplikasi interface LCD, menentukan mode operasi

merupakan hal yang paling penting. Mode 8 bit sangat baik digunakan ketika

kecepatan menjadi keutamaan dalam sebuah aplikasi dan setidaknya minimal

(59)

minimal hanya membutuhkan 7 bit (3 pin untuk kontrol, 4 untuk data). Aplikasi

dengan LCD dapat dibuat dengan mudah dan waktu yang singkat, mengingat

koneksi parallel yang cukup mudah antara kontroller dan LCD.

2.5 Keypad Matriks

Keypad matrix 4x4 adalah keypad yang digunakan penulis pada alat ini yang

berfungsi sebagai interface antara perangkat (mesin) elektronik dengan manusia

atau dikenal dengan istilah HMI (Human Machine Interface). Matrix keypad 4×4

memiliki konstruksi atau susunan yang simple dan hemat dalam penggunaan port

mikrokontroler. Konfigurasi keypad dengan susunan bentuk matrix ini bertujuan

untuk penghematan port mikrokontroler karena jumlah key (tombol) yang

dibutuhkan banyak pada suatu sistem dengan mikrokontroler. Konstruksi matrix

keypad 4×4 untuk mikrokontroler dapat dibuat seperti pada gambar berikut:

Gambar 2.9 Konstruksi Matrix Keypad 4×4

Konstruksi matrix keypad 4×4 diatas cukup sederhana, yaitu terdiri dari 4 baris

dan 4 kolom dengan keypad berupas saklar push buton yang diletakan disetiap

persilangan kolom dan barisnya. Rangkaian matrix keypad diatas terdiri dari 16

saklar push buton dengan konfigurasi 4 baris dan 4 kolom. 8 line yang terdiri dari

4 baris dan 4 kolom tersebut dihubungkan dengan port mikrokontroler 8 bit. Sisi

baris dari matrix keypad ditandai dengan nama Row1, Row2, Row3 dan Row4

kemudian sisi kolom ditandai dengan nama Col1, Col2, Col3 dan Col4.

Sisi input atau output dari matrix keypad 4×4 ini tidak mengikat, dapat

dikonfigurasikan kolom sebagi input dan baris sebagai output atau sebaliknya

tergantung programernya. Keypad Matriks 4×4 cukup menggunakan 8 pin untuk

(60)

adalah dengan teknik scanning, yaitu proses pengecekkan yang dilakukan dengan

cara memberikan umpan-data pada satu bagian dan mengecek feedback

(umpan-baliknya) pada bagian yang lain. Dalam hal ini, pemberian umpan-data dilakukan

pada bagian baris dan pengecekkan umpan-balik pada bagian kolom. Pada saat

pemberian umpan-data pada satu baris, maka baris yang lain harus dalam kondisi

inversi-nya.

2.5.1 Proses Scanning Matrix 4×4 Untuk Mikrokontroler

Proses scaning untuk membaca penekanan tombol pada matrix keypad 4×4 untuk

mikrokontroler diatas dilakukan secara bertahap kolom demi kolom dari kolom

pertama sampai kolom ke 4 dan baris pertama hingga baris ke 4. Program untuk

scaning matrix keypad 4×4 dapat bermacam-macam, tapi pada intinya sama.

Misal kita asumsikan keyapad aktif LOW (semua line kolom dan baris dipasang

resistor pull-up) dan dihubungkan ke port mikrokontrolr dengan jalur kolom

adalah jalur input dan jalur baris adalah jalur output maka proses scaning matrix

keypad 4×4 diatas dapat dituliskan sebagai berikut:

 Mengirimkan logika Low untuk kolom 1 (Col1) dan logika HIGH untuk

SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada

tombol pada kolom pertama yang di tekan maka data pembacaan baris

(61)

tombol pada kolom pertama yang di tekan maka data pembacaan baris

SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada

tombol pada kolom pertama yang di tekan maka data pembacaan baris

SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada

tombol pada kolom pertama yang di tekan maka data pembacaan baris

akan 1111.

2.6 PWM (Pulse Width Modulation)

Pulse Width Modulation (PWM) secara umum adalah sebuah cara memanipulasi

lebar sinyal yang dinyatakan dengan pulsa dalam satu periode, untuk

mendapatkan tegangan rata-rata yang berbeda. Aplikasi PWM berbasis

mikrokontroller biasanya berupa pengendalian kecepatan motor DC, pengendalian

motor servo, dan pengaturan nyala terang LED. Oleh karena itu diperlukan

pemahaman terhadap konsep PWM itu sendiri. Cara pengaturan kecepatan yang

digunakan adalah dengan menggunakan teknik PWM ( Pulse Width

(62)

Dengan menggunakan PWM kita dapat mengatur kecepatan yang diinginkan

dengan mudah. Teknik PWM untuk pengaturan kecepatan motor adalah,

pengaturan kecepatan motor dengan cara merubah-rubah besarnya duty

cycle pulsa. Pulsa yang yang berubah ubah duty cycle-nya inilah yang menentukan

kecepatan motor. Besarnya amplitudo dan frekuensi pulsa adalah tetap, sedangkan

besarnya duty cycle berubah-ubah sesuai dengan kecepatan yang diinginkan,

semakin besar duty cylce maka semakin cepat pula kecepatan motor, dan

sebaliknya semakin kecil duty cycle maka semakin pelan pula kecepatan motor.

Sebagai contoh: Bentuk pulsa yang dikirimkan adalah seperti pada gambar 2.10,

pulsa kotak dengan duty cycle pulsa 50%. Sedangkan sebagai contoh bentuk pulsa

PWM adalah seperti pada gambar 2.11.

Gambar 2.10 Pulsa dengan Duty Cycle 50%

Dengan mengatur besarnya duty cycle pulsa kotak yang dikirimkan, kita dapat

mengatur banyaknya logika high yang diberikan pada motor, dengan kata lain

mengatur lamanya waktu motor untuk berputar dalam satu periode pulsa. Jika

lamanya waktu motor untuk berputar dalam satu periode pulsa ini berubah maka

kecepatan purtaran motor juga akan berubah, sesuai dengan duty cycle atau waktu

motor untuk berputar dalam satu periode pulsa.

2.6.1 Konsep Dasar PWM

Sinyal PWM pada umumnya memiliki amplitude dan frekuensi dasar yang tetap,

namun memiliki lebar pulsa yang bervariasi. Lebar pulsa PWM berbanding lurus

dengan amplitude sinyal asli yang belum termodulasi. Artinya, sinyal PWM

(63)

hingga 100%. Secara analog setiap perubahan PWM-nya sangat halus, sedangkan

secara digital setiap perubahan PWM dipengaruhi oleh resolusi PWM itu sendiri.

Resolusi adalah jumlah variasi perubahan nilai dalam PWM tersebut. Misalkan

suatu PWM memiliki resolusi 8 bit, berarti PWM ini memiliki variasi perubahan

nilai sebanyak 256 variasi mulai dari 0 – 225 perubahan nilai yang mewakili duty cycle 0% – 100% dari keluaran PWM tersebut. A pulse-width modulation sinyal dimulai dengan tegangan yang naik dan turun berulang kali. Metode klasik

menciptakan osilasi adalah dengan sirkuit resistor-kapasitor (RC). Sirkuit ini

menggunakan RC waktu dengan twist dioda untuk mengubah rasio on-pulsa

(64)

BAB 1

PENDAHULUAN

1.1Latar Belakang

Perkembangan ilmu pengetahuan dan teknologi informasi dijaman yang

modern ini sangat berkembang dengan sangat pesat. Perkembangan tersebut

membuat orang banyak semakin kreatif dalam mengembangkan teknologi yang

lebih canggih. Pengaruh perkembangan teknologi ini juga dapat diciptakan alat

yang dapat mempermudah pekerjaan manusia, baik itu di dunia industri, pertanian,

ekonomi bahkan dalam rumah tangga.

Dengan dibutuhkannya teknologi dalam kehidupan maka sangat banyak

penemuan bahkan perkembangan yang dilakukan untuk lebih meningkatkan

teknologi yang lebih canggih .Sistem akuisisi data, mikrokontroler, sistem

jaringan dan komunikasi data merupakan merupakan beberapa jenis tekhnologi

yang banyak berkembang saat ini dalam dunia.

Komunikasi data merupakan suatu tekhnologi yang dapat membawa data

atau informasi dari suatu tempat ke tempat lain dengan media kabel, maupun

nirkabel, tekhnolgi yang banyak berkembang saat ini merupakan komunikasi data

nirkabel yang memiliki lebih banyak keuntungan penggunaan nya disbanding

tekhnologi menggunakan kabel, ada beberapa jenis tekhnolgi nirkabel diantara

nya menggunakan wifi, frekuensi radio, infrared, dll, terkhnolgi ini mendukung

untuk pengiriman atau penerimaan data yang cukup jauh, agar konsumen yang

menggunakan tekhnolgi ini dapat berkomunikasi ataupun mengendalikan suatu

alat atau benda dari tempat yang cukup jauh.

Banyak penelitian telah dilakukan untuk mengembnagkan teknologi

seperti pada peneliatian sebelumnya yakni mengatur kipas dengan sensor suhu[1],

mengendalikan lampu dengan computer[2], mengendalikan lampu ruang dengan

bahasa bascom[3],control kipas angin dengan bluetoot berbasis arduino[4].

Dengan penelitian yang sudah ada maka penulis mencoba membuat suatu

rancangan alat berteknologi yang menggabungkan system jaringan data,

(65)

jarak jauh untuk mengendalikan peralatan atau beban listrik dari suatu tempat,

dimana untuk mengendalikan beban listrik tersebut penulis menggunakan remote

dengan tujuan sebagai alat pengontrol beban listrik tersebut.

Dalam hal ini penulis mengembangkan teknologi jaringan komunikasi data

untuk membuat suatu alat pengendali lampu dan kipas angin. Penulis juga

menggunakan jaringan komunikasi data yaitu Radio Frekuensi sebagai

komunikasi data yang dihubungkan dengan mikrokontroler.

1.2 Rumusan Masalah

Berdasarkan uraian latar belakang yang telah dijelaskan, secara umum dapat

dirumuskan masalah sebagai berikut :

1. Bagaimana merancang dan membuat alat pengendali lampu dan kipas

dengan menggunkana system jaringan komunikasi data berbasis

mikrokontroler AT mega32 .

2. Bagaimana merancang program kontrol system dapat bekerja sesuai

fungsinya.

1.3Batasan Masalah

Pembatasan masalah dalam penyusunan skripsi ini mencakup masalah – masalah sebagai berikut :

1. Komunikasi data Radio Frekuensi sebagai input output komunikasi data

yang mengirim data pada mikrokonroler.

2. Mikrokontroler yang digunakan merupakan mikrokontroler ATMega32.

3. Dalam penelitian ini mengaplikasikan program bahasa C dalam

memprogram keypad matrix yang akan digunakan sebagai pengendali

(66)

1.4 Tujuan Penelitian

Adapun tujuan dari penelitian ini adalah :

1. Membuat suatu alat yang berfungsi sebagai pengendali peralatan listrik

lampu dan kipas dengan menggunakan mikrokontroler sehingga dapat

dikendalikan dari suatu tempat.

2. Merancang rangkaian berbasis mikrokontroler ATMega32 untuk

mengendalikan lampu dan kipas via jaringan.

3. Merancang program control agar system dapat bekerja sesuai dengan

fungsinya.

1.5Manfaat Penelitian

Adapun manfaat yang diperoleh dari penelitian ini adalah :

1. Mempermudah kita mengendalikan lampu dan kipas dalam rumah tangga.

2. Mempermudah dan menyederhanakan pekerjaan baik dalam rumah,

kantor,pabrik dalam mengendalikan beban listrik khususnya lampu dan

kipas pada tempat tersebut.

1.6Sistematika Penulisan

Untuk mempermudah pembahasan dan pemahaman maka penulis membuat

sistematika dalam penulisan skripsi ini sebagai berikut :

BAB I PENDAHULUAN

Dalam bab ini berisi mengenai latar belakang, rumusan masalah,

batasan masalah, tujuan penelitian, manfaat penelitian serta

sistematika penulisan.

BAB II LANDASAN TEORI

Dalam bab ini menjelaskan tentang teori pendukung yang

digunakan untuk pembahasan dan system kerja dari rangkaian.

Teori pendukung seperti cara kerja dan instruksi dari

(67)

315 Mhz, transmitter dan receiver ,keypad matriks dan prinsip

kerja LCD.

BAB III PERANCANGAN ALAT

Bab ini membahas tentang perancangan dari alat, yaitu diagram

blok dari rangkaian, skematik dan diagram alir dari penelitian

tersebut.

BAB IV PENGUJIAN ALAT DAN PROGRAM

Dalam bab ini dibahas meliputi hasil pengujian alat, analisa data,

serta penjelasan mengenai program yang sudah digunakan.

BAB V KESIMPULAN DAN SARAN

Bagian penutup yang berisikan kesimpulan dan saran dari

(68)

PERANCANGAN ALAT PENGENDALI LAMPU DAN KIPAS

ANGIN DENGAN JARINGAN KOMUNIKASI DATA

BERBASIS MIKROKONTROLER ATMEGA32

ABSTRAK

Telah dirancang suatu alat pengendali lampu dan kipas angin dengan menggunakan mikrokontroler ATMega32. Alat ini terdiri dari keypad, LCD, lampu dan kipas yang dikendalikan serta Radio Frekuensi yang akan digunakan sebagai komunikasi data jarak jauh. Software pada alat ini menggunakan bahasa pemrograman Cod Vision AVR. Prinsip kerja alat ini adalah menggunakan gelombang radio untuk mengontrol lampu dan kipas pada jarak jauh, pada bagian transmitter (remote) terdiri dari keypad, mikrokontroler dan gelombang frekuensi 315Mhz. dari keypad data akan dikirim ke transmiter secara wireless (tanpa kabel). Kemudian pada receiver data diterima dan diolah kemudian dibandingkan dengan data yang telah ditentukan pada program sebagai pengontrolan. Pada alat ini, jika pada transmiter di tekant 1, maka kipas akan hidup dengan kecepatan 25% , ditekan 2, kipas dengan kecepatan 50%, ditekan 3, kipas dengan kecepatan 75% dan jika ditekan 4, kipas akan bergerak dengan kecepatan 100%. Untuk menghidupkan lampu maka di tekan 5, maka lampu akan menyala dengan terang 25%,di tekan 6, terangnya 50%, ditekan 7, terangnya 75% dan jika ditekan 8 lampu akan menyala dengan terang maksimum yaitu 100%. Untuk mematikan lampu ditekan C, mematikan kipas ditekan B dan untuk mematikan lampu dan kipas ditekan 0.

Gambar

Gambar Alat  Pada Keadaan Mati
Gambar Alat Pada Keadaan Menyala
gambar 3.2 di bawah ini :
Gambar 3.3 berikut merupakan gambar rangkaian LCD yang dihubungkan ke
+7

Referensi

Dokumen terkait