ALAT PENGERING TANGAN OTOMATIS BERBASIS ATMEGA8535
Program Studi Teknik Elektronika Jurusan Teknik Elektro
Politeknik Negeri Semarang
Jln. Prof. H. Sudarto, S.H., Tembalang, Semarang, Jawa Tengah, Indonesia. 50275.
Telp. (024)7473417, Website :www.polines.ac.id, email : mailto:sekretariat@polines.ac.id
Kelompok A1:
1. Achmad Ferryanto (01)
2. Giga Fajar S (12)
3. Haidar Taqy (13)
4. Syahrul Naufal H (24)
5. Wawang Wibowo (15)
I
PENDAHULUAN
1.1 LATAR BELAKANG
Di berbagai tempat sering dijumpai wastafel atau tempat untuk mencuci tangan. Bersama dengan wastafel itu sendiri biasanya diletakkan juga lap untuk mengeringkan tangan/ membersihkan tangan. Merupakan contoh yang sederhana memang, tetapi akan menjadi masalah jika terlalu banyak pemakai yang menggunakan lap tersebut maka tangan tidak akan kering dengan sempurna. Dari contoh yang sederhana itu, maka dibutuhkan suatu alat pengganti lap yang prinsip kerjanya mengalirkan udara panas untuk mengeringkan tangan
Dari latar belakang diatas, diperoleh rumusan masalah sebagai berikut.
- Bagaimanakah cara membuat hand dryer berbasis ATMega 8535?
- Komponen apa sajakah yang digunakan dalam pembuatan hand dryer berbasis ATMega 8535?
- Bagaimanakah rangkaiannya?
- Bagaimanakah program yang akan diisikan pada IC ATMega 8535?
- Bagaimana cara kerja hand dryer berbasis ATMega 8535?
1.3 TUJUAN
Tujuan dari dibuatnya hand dryer berbasis ATMega 8535 :
- Dapat merancang sebuah bangun alat hand dryer berbasis ATMega 8535
- Dapat mengetahui komponen apa saja yang digunakan
- Dapat memahami cara kerja alat tersebut
- Dapat mengetahui dan menerapkan program untuk menjalankan alat tersebut
II
TINJAUAN PUSTAKA
Penjelasan dan uraian teori penunjuang yang digunakan dalam membuat alat ini diperlukan untuk mempermudah pemahaman tentang cara kerja rangkaian maupun dasar-dasar perencanaan alat.
A. MIKROKONTROLER ATMEGA8535
Mikrokontroller AVR memiliki arsitektur 8 bit, dimana semua instruksi dikemas dalam kode 16-bit dan sebagian besar instruksi dieksekusi dalam 1 siklus clock atau dikenal dengan teknologi RISC (Reduced Instruction Set Computing). Secara umum, AVR dapat dikelompokan ke dalam 4 kelas, yaitu keluarga AT90Sxx, keluarga ATMega dan AT86RFxx. Pada dasarnya yang membedakan masing-masing adalah kapasitas memori, peripheral dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hampir sama. Berikut ini gambar Mikrokontroler Atmega8535.
Sensor inframerah adalah komponen elektronika yang dapat mengidentifikasi cahaya infra merah (infra red, IR). Sensor infra merah atau detektor infra merah saat ini ada yang dibuat khusus dalam satu modul dan dinamakan sebagai IR Detector Photomodules. IR Detector Photomodules merupakan sebuah chip detektor inframerah digital yang di dalamnya terdapat fotodiode dan penguat (amplifier).
LCD 16x2 adalah media tampilan yang paling mudah untuk diamati karena menghasilkan tampilan karakter yang baik dan cukup banyak.pada lcd 16x2 dapat ditampilkan 32 karakter dimana 16 karakter pada baris atas dan 16 karakter pada baris bawah.
D. SAKLAR
Saklar Pengalih adalah saklar yang digerakan oleh tuas atau toggle yang miring ke salah satu posisi dari dua posisi atau lebih untuk menghubungkan atau memutuskan aliran listrik
Prinsip kerjanya motor listrik dc atau dc motor adalah suatu perangkat yang mengubah energi listrik menjadi energi kinetik atau gerakan motion motor dc ini juga dapat disebut sebagai motor arus searah. Motor dc atau motor arus searah sebagaimana namanya menggunakan arus langsung dan tidak langsung direct unidirectional.
F. RESISTOR
Resistor merupakan komponen elektronik yang memiliki dua pin dan didesain untuk mengatur tengangan listrik dan arus listrik. Resistor mempunyai nilai resistansi (tahanan) tertentu yang dapat memproduksi tegangan listrik di antara kedua pin dimana nilai tegangan terhadap resistansi tersebut berbanding lurus dengan arus yang mengalir.
G. RELAY
Relay adalah Saklar (Switch) yang dioperasikan secara listrik dan merupakan komponen Electromechanical (Elektromekanikal) yang terdiri dari 2 bagian utama yakni Elektromagnet (Coil) dan Mekanikal (seperangkat Kontak Saklar/Switch). Relay menggunakan Prinsip Elektromagnetik untuk menggerakkan Kontak Saklar sehingga dengan arus listrik yang kecil (low power) dapat menghantarkan listrik yang bertegangan lebih tinggi.
III
PERANCANGAN ALAT
3.1 Perangkat Keras Dan Rangkaian Elektronika
Komponen yang di gunakan dalam pembuatan apengerin tangan otomatisr ini diantaranya:
- Mikrokontroler ATMEGA8535
- Sensor Infrared
- Relay
- Saklar
- LCD
- Kipas DC 12V
/*******************************************************
Pemrogram :
Kelompok EK-2A/01
1.01-Achmad
Ferryanto NIM:3.32.20.0.01
2.12-Giga Fajar
Saptanto NIM:3.32.20.0.12
3.13-Haidar Taqy
Maulana NIM:3.32.20.0.13
4.24-Syahrul
Naufal Huda NIM:3.32.20.0.24
5.25-Wawang
Wibowo NIM:3.32.20.0.25
Tanggal Pembuatan : Rabu, 15 Juni 2022
==================================================================================
Chip type
: ATmega8535
Program type
: Application
AVR Core Clock frequency: 12,000000 MHz
Memory model
: Small
External RAM size
: 0
Data Stack size
: 128
*******************************************************/
#include <mega8535.h>
#include <delay.h>
// Alphanumeric LCD functions
#include <alcd.h>
// Declare your global variables here
void main(void)
{
#define sensor PINA.0
#define button PORTA.1
#define motor PORTD.0
#define lcd PINB
// Declare your local variables here
// Input/Output Ports initialization
// Port A initialization
// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In
Bit2=In Bit1=In Bit0=In
DDRA=(0<<DDA7) | (0<<DDA6) | (0<<DDA5)
| (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) |
(0<<DDA0);
// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T
Bit1=T Bit0=T
PORTA=(0<<PORTA7) | (0<<PORTA6) |
(0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) |
(0<<PORTA1) | (0<<PORTA0);
// Port B initialization
// Function: Bit7=Out Bit6=Out Bit5=Out Bit4=Out
Bit3=Out Bit2=Out Bit1=Out Bit0=Out
DDRB=(1<<DDB7) | (1<<DDB6) | (1<<DDB5)
| (1<<DDB4) | (1<<DDB3) | (1<<DDB2) | (1<<DDB1) |
(1<<DDB0);
// State: Bit7=0 Bit6=0 Bit5=0 Bit4=0 Bit3=0 Bit2=0
Bit1=0 Bit0=0
PORTB=(0<<PORTB7) | (0<<PORTB6) |
(0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) |
(0<<PORTB1) | (0<<PORTB0);
// Port C initialization
// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In
Bit2=In Bit1=In Bit0=In
DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5)
| (0<<DDC4) | (0<<DDC3) | (0<<DDC2) | (0<<DDC1) |
(0<<DDC0);
// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T
Bit1=T Bit0=T
PORTC=(0<<PORTC7) | (0<<PORTC6) |
(0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) |
(0<<PORTC1) | (0<<PORTC0);
// Port D initialization
// Function: Bit7=Out Bit6=Out Bit5=Out Bit4=Out
Bit3=Out Bit2=Out Bit1=Out Bit0=Out
DDRD=(1<<DDD7) | (1<<DDD6) | (1<<DDD5)
| (1<<DDD4) | (1<<DDD3) | (1<<DDD2) | (1<<DDD1) |
(1<<DDD0);
// State: Bit7=0 Bit6=0 Bit5=0 Bit4=0 Bit3=0 Bit2=0
Bit1=0 Bit0=0
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
// Mode: Normal top=0xFF
// OC0 output: Disconnected
TCCR0=(0<<WGM00) | (0<<COM01) |
(0<<COM00) | (0<<WGM01) | (0<<CS02) | (0<<CS01) | (0<<CS00);
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=0xFFFF
// OC1A output: Disconnected
// OC1B output: Disconnected
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
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;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=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<<WGM20) | (0<<COM21) |
(0<<COM20) | (0<<WGM21) | (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<<OCIE0) | (0<<TOIE0);
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=(0<<ISC11) | (0<<ISC10) |
(0<<ISC01) | (0<<ISC00);
MCUCSR=(0<<ISC2);
// USART initialization
// USART disabled
UCSRB=(0<<RXCIE) | (0<<TXCIE) |
(0<<UDRIE) | (0<<RXEN) | (0<<TXEN) | (0<<UCSZ2) |
(0<<RXB8) | (0<<TXB8);
// 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
// connected to the AIN1 pin
ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) |
(0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) |
(0<<ACIS0);
SFIOR=(0<<ACME);
// ADC initialization
// ADC disabled
ADCSRA=(0<<ADEN) | (0<<ADSC) |
(0<<ADATE) | (0<<ADIF) | (0<<ADIE) | (0<<ADPS2) |
(0<<ADPS1) | (0<<ADPS0);
// 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 - PORTB Bit 1
// EN - PORTB Bit 2
// D4 - PORTB Bit 4
// D5 - PORTB Bit 5
// D6 - PORTB Bit 6
// D7 - PORTB Bit 7
// Characters/line: 40
lcd_init(16);
while (1)
{
// Place
your code here
button = lcd
;
button =
motor;
button =
sensor;
if
(sensor==1){
motor=1;
lcd_clear();
lcd_gotoxy(11,0);
lcd_putsf("Hand Dryer Otomatis");
lcd_gotoxy(11,1);
lcd_putsf("Alat Sedang Bekerja");
delay_ms(100);
}
if
(sensor==0){
motor=0;
lcd_gotoxy(11,0);
lcd_putsf("Hand Dryer Otomatis");
lcd_gotoxy(8,1);
lcd_putsf("Dekatkan Tangan ke Sensor");
delay_ms(100);
}
}
}
Cara kerja dari alat Pengering tangan otomatis berbasis ATMega8535 yaitu : mendekatkan tangan yang basah ke sensor infrared yang telah terpasang ke alat. Ketika sensor infrared mendeteksi adanya tangan, data dari sensor kemudian dikirimkan ke mikrokontroler ATMega8535 untuk diproses. Kemudian mikrokontroler akan mengirim data ke relay sebagai output, untuk menggerakan kipas DC 12V. Kipas terus berputar selama masih terdeteksi tangan. Selang waktu beberapa menit, tangan akan kering.
IV
PENUTUP
4.1 Kesimpulan
Dari Hasil pengujian alat yang dilakukan maka dapat disimpulkan sebagai berikut :
- Hasil pengujian menunjukan bahwa alat dapat bekerja sesuai dengan rancangan
- Alat Pengering Tangan Otomatis berfungsi dengan baik pada saat mendeteksi tangan
- LCD dapat menampilkan perintah untuk meletakkan tangan pada alat tersebut
- Dengan adanya tombol,alat dapat dimatikan ataupun dinyalakan
Komentar
Posting Komentar