Anda di halaman 1dari 9

TEKNIK ANTARMUKA MIKROKONTROLER

Dosen Pembimbing : AMPERAWAN, S.T , M.KOM

OLEH :

NAMA : Dicky Astra Yudha

NIM : 0615403411837

KELAS : 4 ELB

JURUSAN TEKNIK ELEKTRO

PROGRAM STUDI KONSENTRASI MEKATRONIKA

POLITEKNIK NEGERI SRIWIJAYA PALEMBANG

2017
Alat ukur tinggi badan berbasis arduino adalah alat ukur yang menggunakan sensor
ultrasonic sebagai penangkap sinyalnya serta atmega8535 sebagai mikrokontrolernya.
Dengan berdiri di bawah sensor tersebut, kita dapat mengetahui tinggi badan kita secara
otomatis yang ditampilkan pada layar LCD. Sensor ini menangkap sinyal dari ujung kepala
kita.

Gambar Konfigurasi Kaki Mikrokomputer ATMega8535

1. Mikrokontroler Atmega8535
Mikrokontroler AVR memiliki arsitektur RISC 8 Bit, sehingga semua intruksi dikemas dalam
kode 16-bit (16-bit) dan sebagian besar intruksi dieksekusi dalam satu siklus intruksi clock.
Dan ini yang membedakan dengan intruksi MCS-51 (Berarsitektur CISC) yang
membutuhkan siklus 12 clock. RISC adalah Reduced Instruction Set Computing sedangkan
CISC adalah Complex Instruction Set Computing.
A. Spesifikasi Atmega8535
Spesifikasi sebuah mikrokontroler Atmega8535 adalah seperti berikut:
Saluran I/O sebanyak 32 buah, yaitu port A, port B, port C, dan port D. Kecepatan maksimal
16 MHz ADC (Analog to Digital Converter) 10 bit sebanyak 8 channel Tiga buah
Timer/counter dengan kemampuan membandingkan. CPU yang terdiri dari 32 buah
register.Watchdog Timer dengan isolator internal SRAM sebesar 512 byte. Memori Flash
sebesar 8Kb dengan kemampuan Read While Write. Unit interupsi internal dan eksternal.
Port antarmuka SPI. EEPROM sebesar 512 byte yang dapat diprogram saat operasi

B. Fungsi masing-masing pin


Ada pun fungsi masing masing pin Atmega8535 adalah sebagai berikut :

1) VCC Berfungsi sebagai sumber tegangan +5V.


2) GND`Berfungsi sebagai pertanahan atau grounding.
3) PORT A(PORTA0-7) Port A merupakan I/O dua arah dan memiliki fungsi khusus
sebagai pin masukan ADC.
4) PORT B(PORTB0-7) Port B merupakan pin I/O dua arah dan memiliki fungsi
khusus sebagai pin Timer/Counter, komparator dan SPI.
5) PORT C(PORTC0-7) Port C merupakan pin I/O dua arah dan memiliki fungsi
khusus, yaitu TWI, komparator analog, dan Timer Osilator.
6) PORT D(PORTD0-7) Port D merupakan pin I/O dua arah dan memiliki fungsi
khusus, yaitu komparator analog, interupsi eksternal dan komunikasi serial.
7) RESET Merupakan pin yang digunakan untuk me-reset Mikrokontroler.
8) XTAL 1 dan XTAL 2 Sebagai pin masukan clock eksternal. Suatu mikrokontroler
membutuhkan sumber detak (clock) agar dapat mengeksekusi intruksi yang ada di
memori. Semakin tinggi nilai kristalnya, maka semakin cepat mikrokontroler tersebut.
9) AVCC Sebagai pin masukan tegangan untuk ADC.
10) AREF Sebagai pin masukan untuk tegangan referensi eksternal ADC.
Gambar 4.1 Bentuk Fisik Sensor Ultrasonic HC-SR04

2. Sensor Ultrasonic
Yaitu suatu alat yang berfungsi mengukur besaran jarak dan kecepatan dan sensor ini tidak
langsung dapat masuk ke mikrokontroller karena perlu pentesuaian besaran tegangan dan
lain-lainnya maka dikondisikan dulu sinyalnya dibagian pengkondisi sinyal (signal
conditioner), sehingga levelnya sesuai atau dapat dimengerti oleh bagian input
mikrokontroller atau prosseor lainnya.

A. Karakteristik fisik gelombang Ultrasonik


Gelombang ultrasonik adalah gelombang yang timbul akibat getaran mekanik dengan
freukwensi diatas batas ambang pendengaran manusia yakni diatas 20Khz.

B. Prinsip kerja ultrasonic

Ultrasonic modul ini bekerja dengan cara menghasilkan gelombang suara pada
frekuensi tinggi, yang kemudian dipancarkan oleh bagian transmitter. Pantulan gelombang
suara yang mengenai benda di depannya akan ditangkap oleh bagian receiver. Dengan
mengetahui lamanya waktu antara dipancarkannya gelombang suara sampai ditangkap
kembali, kita dapat menghitung jarak benda yang ada di depan modul tersebut. Kita
mengetahui kecepatan suara adalah 340m/detik. Lamanya waktu tempuh gelombang suara
dikalikan kecepatan suara, kemudian dibagi 2 akan menghasilkan jarak antara ultrasonic
modul dengan benda didepannya.

3.LCD (Liquid Cristal Display)


Gambar Konfigurasi Pin LCD 16X

LCD adalah lapisan dari campuran organik antara lapisan kaca bening dengan elektroda
transparan indium oksida dalam bentuk tampilan seven-segment dan lapisan elektroda pada
kaca belakang. Ketika elektroda diaktifkan dengan medan listrik (tegangan), molekul organik
yang panjang dan silindris menyesuaikan diri dengan elektroda dari segmen. Lapisan
sandwich memiliki polarizer cahaya vertikal depan dan polarizer cahaya horisontal belakang
yang diikuti dengan lapisan reflektor. Cahaya yang dipantulkan tidak dapat melewati
molekul-molekul yang telah menyesuaikan diri dan segmen yang diaktifkan terlihat menjadi
gelap dan membentuk karakter data yang ingin ditampilkan.

Memori yang digunakan microcontroler internal LCD adalah :

A) DDRAM (Display Data Random Access Memory) merupakan memori tempat


karakter yang akan ditampilkan berada.
B) CGRAM (Character Generator Random Access Memory) merupakan memori untuk
menggambarkan pola sebuah karakter dimana bentuk dari karakter dapat diubah-ubah
sesuai dengan keinginan.
C) CGROM (Character Generator Read Only Memory) merupakan memori untuk
menggambarkan pola sebuah karakter dimana pola tersebut merupakan karakter dasar
yang sudah ditentukan secara permanen oleh pabrikan pembuat LCD (Liquid Cristal
Display) tersebut sehingga pengguna tinggal mangambilnya sesuai alamat memorinya
dan tidak dapat merubah karakter dasar yang ada dalam CGROM.

Pin, kaki atau jalur input dan kontrol dalam suatu LCD (Liquid Cristal Display) diantaranya
adalah :

A) Pin data adalah jalur untuk memberikan data karakter yang ingin ditampilkan
menggunakan LCD (Liquid Cristal Display) dapat dihubungkan dengan bus data dari
rangkaian lain seperti mikrokontroler dengan lebar data 8 bit.
B) Pin RS (Register Select) berfungsi sebagai indikator atau yang menentukan jenis data
yang masuk, apakah data atau perintah. Logika low menunjukan yang masuk adalah
perintah, sedangkan logika high menunjukan data.
C) Pin R/W (Read Write) berfungsi sebagai instruksi pada modul jika low tulis data,
sedangkan high baca data. Pin E (Enable) digunakan untuk memegang data baik masuk
atau keluar. Pin VLCD berfungsi mengatur kecerahan tampilan (kontras) dimana pin ini
dihubungkan dengan trimpot 5 Kohm, jika tidak digunakan dihubungkan ke ground,
sedangkan tegangan catu daya ke LCD senilai 5 Volt.

Blok diagram pengukur tinggi badan otomatis

alat pengukur tinggi badan ini terdiri atas tiga bagian yaitu piranti masukan, mikrokontroler
dan piranti keluaran. Pada piranti masukan terdapat sensor yang merupakan sumber perintah
bagi mikrokontroler tersebut. Adapun jenis sensor yang dipakai yaitu sensor ultrasonik DT-
SENSE USIRR. Sedangkan pada piranti keluaran adalah LCD 16x2 untuk menampilkan hasil
pengukuran tinggi badan.

4.Rangkaian Keseluruhan Sistem


Rangkaian keseluruhan dari alat pengukur tinggi badan otomatis dapat dibagi menjadi 3
bagian utama yaitu bagian minimum sistem mikrokontroler, bagian input dan bagian output.
Bagian minimum sistem mikrokontroler merupakan bagian dimana input dari sensor
ultrasonik akan diproses sesuai program yang digunakan kemudian diteruskan ke bagian
output. Bagian input terdiri dari sebuah sensor ultrasonik jenis DTSENSE USIRR yang
digunakan sebagai pengambil data tinggi badan orang. Sedangkan bagian outputnya berupa
LCD 16x2 untuk mengetahui hasil dari pengukuran tinggi badan.

5.Rangkaian skematik alat pengukur tinggi badan


Program
$regfile = "m8535.dat"
$crystal = 8000000
$baud = 9600

Dim Flag As Bit , I As Byte


Dim Jarak As Single
Dim Jarak2 As Integer

Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E =
Portc.2 , Rs = Portc.0
Config Lcd = 16 * 2

Cursor Off
Cls
Locate 1 , 1
Lcd "^^Sensor Tinggi"
Locate 2 , 1
Lcd "Badan^^"
Print "Sensor Tinggi Badan"
Waitms 1000
Cls
Lcd "Tinggi Badan = "
Ddrb = &B01010101
Config Timer1 = Timer , Prescale = 8
On Timer1 Jarak_over
Enable Interrupts

Do
Gosub Ukur_s1
Locate 2 , 1
Lcd Jarak2 ; "cm "
Print "Tinggi = " ; Jarak2 ; "cm"
Waitms 800
Loop
End

Ukur_s1:
Flag = 1
Waitus 100
Portb.0 = 1
Waitus 15
Portb.0 = 0
Waitus 100
Enable Timer1
Timer1 = 0
Bitwait Pinb.1 , Set
Start Timer1
While Flag = 1
If Pinb.1 = 0 Then
Stop Timer1
Jarak = Timer1
Flag = 0
End If
Wend
Jarak = Jarak / 116
Jarak = Jarak * 2
Jarak2 = Jarak
Return

Jarak_over:
Flag = 0
Stop Timer1
Timer1 = 0
Jarak = 0
Return

Anda mungkin juga menyukai