• Tidak ada hasil yang ditemukan

Perancangan Sistem Multi Locker Dengan Penyandian Berbasis Mikrokontroler Atmega 8 Menggunakan Android Phone

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perancangan Sistem Multi Locker Dengan Penyandian Berbasis Mikrokontroler Atmega 8 Menggunakan Android Phone"

Copied!
74
0
0

Teks penuh

(1)

LAMPIRAN 1

PROGRAM PADA ALAT

*****************************************************

This program was produced by the

CodeWizardAVR V2.04.9 Evaluation

Automatic Program Generator

© Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l.

http://www.hpinfotech.com

Project :

Version :

Date : 11/03/2016

Author : Freeware, for evaluation and non-commercial use only

Company :

Comments:

Chip type : ATmega8

Program type : Application

AVR Core Clock frequency: 11,059200 MHz

(2)
(3)

}

void Open_Lock3(void){ //rutin menjalankan motor step buka locker 1

(4)

void Close_Lock3(void){

// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out

Func1=Out Func0=Out

// State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0

PORTB=0x00;

DDRB=0xFF;

// Port C initialization

// Func6=In Func5=In Func4=In Func3=Out Func2=Out Func1=Out Func0=Out

// State6=P State5=P State4=P State3=0 State2=0 State1=0 State0=0

PORTC=0x00;

DDRC=0x3F;

// Port D initialization

// Func7=In Func6=In Func5=In Func4=Out Func3=Out Func2=Out Func1=Out

(5)

// State7=P State6=P State5=P State4=0 State3=0 State2=0 State1=0 State0=T

PORTD=0xE0;

DDRD=0x1E;

// USART initialization

// Communication Parameters: 8 Data, 1 Stop, No Parity

// USART Receiver: On

(E=='1'){Open_Lock1();x = 0;goto XT;}}}}}x++;}//buka locker 1 jika password

(6)

if (Data == '*') {I = 0;if (A=='4'){if (B=='3'){if (C=='2'){if (D=='1'){if

(E=='2'){Open_Lock2();x = 0;goto XT;}}}}}x++;}

if (Data == '*') {I = 0;if (A=='5'){if (B=='2'){if (C=='3'){if (D=='1'){if

(E=='3'){Open_Lock3();x = 0;goto XT;}}}}}x++;}

if (Data == '*') {I = 0;if (A=='3'){if (B=='2'){if (C=='4'){if (D=='1'){x =

0;goto XT;}}}}}

if (Data == '*') {I = 0;if (A=='5'){if (B=='2'){if (C=='1'){Close_Lock1();x

= 0;}}}} // kunci locker 1 dgn perintah 1 diikuti *

if (Data == '*') {I = 0;if (A=='7'){if (B=='3'){if (C=='2'){Close_Lock2();x

= 0;}}}}

if (Data == '*') {I = 0;if (A=='8'){if (B=='1'){if (C=='3'){Close_Lock3();x

= 0;}}}}

I++;} //naikkan hitungan I setiap data serial masuk

if (x > 6) {PORTC.4 = 1; delay_ms(200);PORTC.4 = 0; delay_ms(200);}

}

(7)

LAMPIRAN 2

(8)

LAMPIRAN 3

GAMBAR ALAT

Gambar 3.1 Foto Alat dari Depan

(9)

Gambar 3.3 Foto Sistem Rangkaian Alat

(10)

Gambar 3.5 Foto Pintu Locker 1 saat Terbuka

(11)

Gambar 3.7 Foto Pintu Locker 3 saat Terbuka

(12)

Gambar 3.9 Foto Pintu Locker 2 saat Tertutup

(13)
(14)
(15)

DAFTAR PUSTAKA

Ahmad, Hamzah dkk. 1996. Kamus Pintar Bahasa Indonesia. Surabaya: Fajar

Mulya

Albert, Paul. 1989. Prinsip-prinsip Elektronika. Yogyakarta: Penerbit Andi

Budiharto, Widodo. 2004. Interfacing Komputer dan Mikrokontroler. Jakarta: PT

Elex Media Komputindo

Budiharto, Widodo. 2005. Perancangan Sistem dan Aplikasi Mikrokontroler.

Jakarta : PT.Elex Media Komputindo.

Hartono, Jogiyanto . 2005. Analisis dan Desain Sistem Informasi. Yogyakarta :

Penerbit Andi

Hartono, Jogiyanto . 1999. Pengenalan Komputer . Yogyakarta : Penerbit Andi

Kurniawan Dayat . 2009. ATMega 8 dan Aplikasinya . Jakarta : Penerbit PT. Elex

Media Komputindo.

Nurcahyo Sidik. 2012.Aplikasi dan Teknik Pemrograman Mikrokontroller AVR

Atmel . Yogyakarta: Penerbit Andi .

Malvino, Albert Paul.2000. Prinsip-prinsip elektronika jilid 1. Jakarta : Erlangga

Mulyanta, Edi S. 2005. Kupas Tuntas Telepon Seluler Anda. Edisi Ketiga.

Yogyakarta : Penerbit Andi

Sasongko, Bagus Hari. 2012.Pemrograman Mikrokontroller dengan Bahasa C.

Yogyakarta: Penerbit Andi .

Soebhakti, Hendawan. 2009. Pengenalan Code Vision AVR. Surabaya : ITS

Suyadhi, Taufiq Dwi Septian. 2010. Buku Pintar Robotika Edisi I. Yogyakarta :

Penerbit Andi

Syarkawi. 2007. Pengenalan Motor Stepper. Jakarta : Erlangga

Winarno, Edy.2012. Membuat Sendiri Aplikasi Android Untuk Pemula.

Palembang : Elex Media Komputindo

(http://syarkawi.wordpress.com/2010/04/09/Pengenalan-Motor-Stepper/,

(16)

BAB 3

PERANCANGAN SISTEM

3.1Diagram Blok

Adapun diagram blok dari sistem yang dirancang adalah seperti yang

diperlihatkan pada gambar 3.1 berikut ini :

(17)

3.2Rangkaian Mikrokontroler ATMega 8

Rangkaian sistem minimum mikrokontroler ATMEGA 8 dapat dilihat pada

gambar 3.2 di bawah ini :

Gambar 3.2 Rangkaian Sistem Minimum ATMega 8

Kontroler AT mega 8 berfungsi sebagai pengendali utama dari sebuah system

locker dimana tugas kontroler tersebut adalah menerima data password dari user

kemudian verifikasi password dan mengakses locker sesuai password atau

perintah yang diberikan. Input kontroler berasal dari masukkan serial yaitu

masukkan dari user yang dikirim melalui ponsel android sebagai perantara atau

interface ponsel dengan rangkaian digunakan sebuah adapter Bluetooth yaitu

HC-05. Output adapter dihubungkan pada masukkan serial kontroler pada pin 2 atau

PD.0 yang merupakan masukkan serial, sedangkan output kontroler diprogram

pada beberapa Port yaitu Port B, sebagian Port C dan Port D. Seperti diketahui

sebuah motor stepper dibutuhkan minimal 4 bit sehingga untuk 3 buah motor

rancangan membutuhkan 12 bit dari keluaran mikrokontroler. Untuk motor pada

pintu locker pertama diprogram pada Port B yaitu PB.0 sampai PB.3, sedangkan

untuk motor pada pintu locker kedua diprogram pada Port C yaitu PC.0 sampai

PC.3 dan untuk motor pada pintu locker ketiga ada pada Port D yang dimulai dari

(18)

output tersebut deprogram pada PC.5 pada pin 28. Masukkan Kristal dihubungkan

pada pin 9 dan 10 yang merupakan masukkan system pembangkit clock.

3.3Rangkaian Media Komunikasi Bluetotth HC-05

3.3Rangkaian Adapter Bluetooth HC-05

Untuk menghubungkan (communication links) mikrokontroler dengan adapter

Bluetooth pada android diperlukan komunikasi Bluetooth HC-05, Rangkaian ini

berfungsi untuk mengirim password antara android ponsel dengan adapter

Bluetooth seperti ditunjukkan pada Gambar 3.4 berikut:

(19)

Komunikasi antara ponsel dengan rangkaian dilakukan melalui jaringan

Bluetooth yaitu gelombang radio frekuensi tinggi dengan protokol Bluetooth.

Sebagai perantara atau interface digunakan sebuah adapter Bluetooth yaitu

HC-05, keluaran adapter dihubungkan pada PD.0 dari kontroler. PD.0 merupakan pin

I/O dua arah dan pin fungsi khusus yaitu interupsi eksternal dan komunikasi

serial. Data yang dikirim oleh ponsel diterima oleh adapter Bluetooth kemudian

disalurkan ke kontroler melalui pin keluaran. Dari Bluetooth adapter keluar TXD

yang berfungsi untuk mengirimkan data dari modul ke mikrokontroler, dan

masuk ke mikrokontroler menjadi RXD yang berfungsi untuk menerima data dari

Bluetooth HC-05.

3.4Rangkaian Motor Stepper

Pada alat ini rangkaian motor stepper sebagai penggerak untuk membuaka dan

mengunci pintu locker. Gambar 3.5 berikut merupakan gambar prinsip kerja

rangkaian motor stepper:

Gambar 3.5 Rangkaian Prinsip Kerja Motor Stepper

Motor stepper digunakan sebagai penggerak locker yaitu mengunci atau

membuka. Jenis motor stepper yang digunakan adalah jenis unipolar 4 fasa. Motor

stepper bergerak secara step demi step (langkah demi langkah) terdapat 4 buah

kumparan untuk sebuah motor stepper jenis ini memiliki 4 langkah untuk satu

(20)

3.5Rangkaian Driver Motor Stepper

Gambar 3.6 Rangkaian Driver Motor Stepper

Driver motor stepper adalah penguat arus rangkaian terbuat dari 4 buah transistor.

Gambar 3.7 berikut merupakan gambar rangkaian skema driver motor stepeer

yang berhubungan dengan mikrokontroler.

Gambar 3.7 Rangkaian Driver Motor Stepper Pada Alat

Dari gambar diatas yang disebut driver motor stepper adalah sebuah rangkaian

penguat arus rangkian terbuat dari 4 buah transistor NPN, dimana transistor

dikendalikan oleh kontroler masing-masing kumparan motor stepper dengan

transistor adalah dengan cara mengatur arus kumparan melalui transistor. Tipe

(21)

jika diberi tegangan positif akan ON dan sebaliknya jika tegangan nol diberikan,

akan menyebabkan transistor dalam keadaan OFF. Berdasarkan sifat tersebut

kontroler mengendalikan transistor dan motor. Tipe transistor yang digunakan

adalah BD 139 yaitu transistor NPN dengan arus kerja 1 Ampere. Selain penguat

untuk motor transistor juga digunakan untuk mengendalikan buzzer. Akan tetapi

dengan tipe yang lebih kecil yaitu BC 546 yang terhubung pada pin 28. Pada

rangkaian driver motor stepper diatas tidak digunakan resistor karena fan out

mikrokontroler sudah cukup mengaktifkan transistor tanpa adanya resistor.

3.6Rangkaian Catu Daya

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 mencatu IC kontroler adapter Bluetooth

sedangkan tegangan 12 volt digunakan untuk menggerakkan motor dan buzzer,

seperti pada gambar 3.8:

Catu daya system dirancang dengan mengguanakan sebuah trafo step down

penyearah dan regulator. Trafo yang digunakan memiliki besaran output 12 volt

CT dan arus 1 Ampere. Output trafo disearahkan menjadi arus searah kemudian

diregulasi oleh sebuah IC regulator yaitu AN 7805 sehingga keluaran dari

(22)

kontroler adapter Bluetooth, sedangkan 12 volt digunakan untuk menggerakkan

motor dan buzzer.

3.7 Rangkaian Lengkap

Berdasarkan uraian-uraian yang telah diterangkan pada bagian sebelumnya,

maka dibuat rangkaian lengkap dari peralatan. Adapun rangkaian lengkap dari

(23)
(24)
(25)

Flow chart diatas menjelaskan aliran proses system yang ditentukan oleh program

yang dibuat. Dimulai dari inisialisasi dan nilai awal, kemudian program akan

mulai membaca input yaitu input serial dari user melalui Bluetooth adapter. Jika

terdapat masukan, maka program akan verifikasi password tersebut. Jika

password benar maka locker akan dibuka sesuai kode yang diberikan. Sedangkan

jika salah, program akan cek jumlah kesalahan, bila mencapai lebih 3 kali maka

buzzer akan diaktifkan. Jika belum mencapai 3 lebih maka counter akan

ditambahkan. Proses mengunci kembali locker yang telah dibuka cukup dengan

mengirim tanda # tanpa disertai password. Flow chart diatas memberikan aliran 1

(26)
(27)
(28)
(29)

BAB 4

PENGUJIAN ALAT DAN PROGRAM

4.1Pengujian Rangkaian Mikrokontroler ATMega 8

Pengujian mikrokontroler dilakukan dengan memprogram kontroler untuk

mengeluarkan output pada PORT kontroler. Berikut ini adalah perintah pengujian

mikrokontroler:

PORTB=0x00;

DDRB=0xFF;

// Port C initialization

// Func6=In Func5=In Func4=In Func3=Out Func2=Out Func1=Out Func0=Out

// State6=P State5=P State4=P State3=0 State2=0 State1=0 State0=0

PORTC=0x00;

DDRC=0x1F;

// Port D initialization

// Func7=In Func6=In Func5=In Func4=Out Func3=Out Func2=Out Func1=Out

Func0=In

// State7=P State6=P State5=P State4=0 State3=0 State2=0 State1=0 State0=T

PORTD=0xE0;

DDRD=0x1E;

Setelah program diunduh ke dalam IC kemudian dilakukan pengukuran

dengan volt meter masing-masing PORT hasil pengukuran pada PORT B untuk

bit 0 hingga bit 7 adalah 0 Volt. Untuk PORT C 6 bit yaitu bit 0 hingga bit 5

berlogika 0, sedangkan bit 6 dan bit 7 dalam keadaan seven state yaitu 2,5 Volt.

Dan untuk PORT D 3 bit pertama yaitu D.0 sampai D.2 akan berlogika 0

(30)

Volt. Setelah diukur akan dibandingkan dengan program, maka dapat

dibandingkan apakah data program sama dengan data pengukuran. Jika terjadi

perbedaan ada indikasi kesalahan, tetapi jika tidak dapat dinyatakan kontroler

bekerja dengan baik.

4.2 Pengujian Motor Stepper

Pengujian dilakukan dengan memprogram kontroler dengan rutin yang disajikan

pada program dibawah ini:

Setelah program diunduh, kontroler dijalankan pemanggilan open lock 1

akan membuat motor step bergerak searah jarum jam. Pada awalnya pengujian

motor tidak begerak teratur dan hanya bergetar, setelah diperiksa ternyata urutan

kabel salah satunya terbalik. Setelah dilakukan perbaikan dan dijalankan kembali

motor akan berputar searah jarum jam sebanyak 1,5 putaran. Pengujian dilakukan

juga untuk arah kebalikan yaitu berlawanan jarum jam dengan rutin seperti yang

diberikan pada program berikut:

void Close_Lock1(void)

{

(31)

PORTB.3 = 8 ;delay_ms(200);

Putaran motor akan bergerak berlawanan jarum jam sebanyak 1,5 putaran.

Setelah itu pengujian dilakukan untuk motor kedua dan motor ketiga. Hasil

pengujian final menyatakan bahwa semua motor bekerja dengan baik.

4.3 Pengujian Bluetooth Adapter HC-05

Pengujian adapter dilakukan dengan program berikut:

{XT: if ((UCSRA & (1<<RXC))){

Data = UDR;

Jika adapter bekerja dan membaca 1 data dari user kontroler akan

membunyikan buzzer selama 15 milidetik. Setelah program diunduh dan

dijalankan pengujian dapat dilakukan dengan mengaktifkan Bluetooth dari ponsel

android. Setelah itu dilakukan paring atau koneksi, setelah Bluetooth adapter

terhubung dengan ponsel pengujian dilakukan dengan mengaktifkan program atau

aplikasi Bluetooth serial dalam ponsel. Pada aplikasi tersebut di klik maka ponsel

akan mengirim 1 karakter ASCII dan bila data tersebut diterima oleh Bluetooth

adapter akan menyebabkan bunyi buzzer dengan durasi pendek tiap kali tombol di

klik buzzer tersebut akan tetap berbunyi. Dengan demikian pengujian tersebut

dinyatakan berhasil karena Bluetooth adapter telah terkoneksi dengan ponsel dan

(32)

4.4Pengujian Alat Secara Keseluruhan

Progam pengujian alat secara keseluruhan diperlihatkan berikut ini:

(33)

Program bekerja membaca masukan dari user kemudian verifikasi

password dan menggerakkan locker sesuai nomor yang diberikan setelah program

terunduh ke kontroler kemudian dijalankan. Pada kondisi awal semua locker

dalam keadaan terkunci setelah itu input diberikan oleh user dengan kondisi

koneksi Bluetooth telah tersambung. User dapat memasukkan password dari

keypad yang ada pada aplikasi Bluetooth serial. Pertama-tama dimasukkan

sembarang password sebanyak 4 digit dan 1 digit nomor pintu. Setelah

dimasukkan password yang salah lebih dari 3 kali maka akan terjadi bunyi buzzer

sehingga harus dinonaktifkan, untuk menonaktifkan buzzer harus dimasukkan

password yang benar dimana password bisa pada angka 3241 setelah ditekan

password tersebut buzzer akan berhenti berbunyi. Kemudian dicoba untuk

membuka pintu locker 1 dengan dengan memasukkan kode 3241 1 pintu locker 1

akan terbuka. Setelah itu dicoba pintu locker 2 dengan kode 4321 2 demikaian

juga dengan pintu locker 3 dengan kode 5231 3. Untuk mengunci kembali tidak

membutuhkan password hanya memberikan nomor pintu dan kode mengunci

yaitu 52 1 untuk pintu 1, 73 2 untuk pintu 2 dan 81 3 untuk pintu 3. Pada awal

pengujian masih banyak terjadi kesalahan misalnya macet pada pintu 2 dan 3

selain itu password sulit dibaca, setelah dilakukan perbaikan maka secara

keseluruhan system bekerja sempurna sesuai dengan kode password yang

(34)

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 menyimpan barang

dengan system multi locker menggunakan android berbasis

mikrokontroler ATmega 8.

2. Rancang bangun dapat diterapkan pada system multi locker dengan

single password.

3. System bekerja cukup efektif dan praktis sebagai akses pintu locker

tanpa kunci.

5.2 Saran

Setelah melakukan penelitian, diperoleh beberapa hal yang dapat dijadikan

saran untuk dilakukan penelitian lebih lanjut yaitu :

1. Pengembangan system dibutuhkan dalam hal mekanisme multi locker

elektronik.

2. Pengembangan pada softwere dan hardwere agar system dapat

(35)

BAB 2

LANDASAN TEORI

2.1 Pengertian Sistem

Berdasarkan kutipan buku yang berjudul Analisis dan Desain Sistem Informasi karangan Jogiyanto HM (2005,1) : ”Suatu sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan,berkumpul

bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran yang tertentu”. Sebuah sistem dapat terdiri dari sistem-sistem bagian (subsistem) masing-masing dapat terdiri dari subsistem-subsistem yang lebih

kecil lagi atau terdiri dari komponen-komponen yang saling berinteraksi dan

saling berhubungan membentuk suatu ksesatuan sehingga tujuan atau sasaran

sistem dapat tercapai.

2.2 Locker

Locker atau lemari barang barang adalah benda. Lemari adalah

perkakas rumah, tempat menyimpan pakaian dan sebagainya (Hamzah

Ahmad, Nanda Santoso:1996:44, 222). Merujuk dari referensi tersebut, maka

penulis menyimpulkan bahwa lemari barang adalah perkakas rumah yang

memiliki fungsi untuk menyimpan benda.

2.3 Android

(36)

Android adalah sistem operasi untuk handphone yang berbasis linux.

Android menyediakan platform terbuka bagi para pengembang untuk menciptakan

aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak.

Android merupakan salah satu sistem operasi yang banyak digunakan saat ini.

Hal ini didukung dengan support-nya beberapa vendor besar, seperti

Samsung, HTC, LG yang menggunkan system opersai ini. Sehingga menjadikan

andoid lebih cepat popular dibandingkan system operasi smartphone lainnya. “(Winarno, Edy & Zaki, Ali :2012) Android adalah sistem operasi untuk telepon seluler yang berbasis Linux. Android menyediakan platform terbuka bagi para

pengembang buat menciptakan aplikasi mereka sendiri untuk digunakan oleh

bermacam peranti bergerak. Awalnya, Google Inc. membeli Android Inc.,

pendatang baru yang membuat 8 peranti lunak untuk ponsel. Kemudian

untuk mengembangkan Android, dibentuklah Open Handset Alliance,

konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi,

termasuk Google, HTC, Intel, Motorola,Qualcomm, T-Mobile, dan Nvidia.

Pada saat perilisan perdana Android, 5 November 2007, Android bersama

di dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang

mendapat dukungan penuh dari Google atau Google Mail Services (GMS) dan

kedua adalah yang benar–benar bebas distribusinya tanpa dukungan langsung

Google atau dikenal sebagai Open Handset Distribution (OHD).

2.3.1 Karakteristik Android

Andorid merupakan subset perangkat lunak untuk perangkat mobile yang

meliputi sistem operasi, middleware, dan aplikasi unit yang di-release oleh

Google. Pada tulisan sebelumnya, kita mengenal SDK (Software

Development Kit). SDK adalah suatu tools dan API yang diperlukan untuk

mengembangkan aplikasi pada platform atau linkungan Android. Pengembangan

aplikasi Android menggunakan bahasa pemrograman Java. Seperti kita

ketahui, SDK ini dikembangkan oleh OHA (Open Handsate Alliance).

Organisasi OHA ini terdiri atas Googl, Intel, Motorola, Qualcomm, T-Mobile, dan

NVIDIA. SDK dapat kita gunakan pada beberapa IDE (Integrated

(37)

akan tetapi, pada tulisan selanjutnya, penulis akan menggunakan Eclipse

karena OHA secara resmi membuat plugin untuk IDE Eclipse.

2.4 Buzzer

Buzzer adalah suatu alat yang dapat mengubah sinyal listrik menjadi

sinyal suara. Pada umumnya buzzer digunakan untuk alarm, karena

penggunaannya cukup mudah yaitu dengan memberikan tegangan input maka

buzzer akan mengeluarkan bunyi. Frekuensi suara yang di keluarkan oleh buzzer

yaitu antara 1-5 KHz. (Albert Paul, Prinsip-prinsip Elektronika, 1989 hal: 134).

Gambar 2.2 Simbol dan Fisik Buzzer

Rangkaian Buzzer atau yang biasa disebut sebagai rangkaian alarm pengingat

pesan dan tanda pastinya sudah sering ditemukan di beberapa perangkat

elektronik di pasar. Pada era teknologi modern ini, pastinya alarm sudah tersedia

di beberapa perangkat elektronik seperti ponsel dan juga jam memiliki alarm

sebagai tanda peringatan. Rangkaian alarm atau tanda pengingat ini sudah

menjadi salah satu penunjang penting dan tidak dapat dipisahkan di beberapa

perangkat elektronik tersebut. Rangkaian tanda pengingat ini berfungsi untuk

mendeteksi gerakan dan juga cahaya yang bisa membantu Anda mencegah kasus

(38)

2.5 Mikrokontroler Atmega8

Gambar 2.3 Bentuk Fisik ATmega 8

AVR merupakan salah satu jenis mikrokontroler yang di dalamnya terdapat

berbagai macam fungsi. Perbedaannya pada mikro yang pada umumnya

digunakan seperti MCS51 adalah pada AVR tidak perlu menggunakan oscillator

eksternal karena di dalamnya sudah terdapat internal oscillator. Selain itu

kelebihan dari AVR adalah memiliki Power-On Reset, yaitu tidak perlu ada

tombol reset dari luar karena cukup hanya dengan mematikan supply, maka secara

otomatis AVR akan melakukan reset. Untuk beberapa jenis AVR terdapat

beberapa fungsi khusus seperti ADC, EEPROM sekitar 128 byte sampai dengan

512 byte. AVR ATmega8 adalah mikrokontroler CMOS 8-bit berarsitektur AVR

RISC yang memiliki 8K byte in-System Programmable Flash.

Mikrokontroler dengan konsumsi daya rendah ini mampu mengeksekusi

instruksi dengan kecepatan maksimum 16MIPS pada frekuensi 16MHz. Jika

dibandingkan dengan ATmega8L perbedaannya hanya terletak pada besarnya

tegangan yang diperlukan untuk bekerja. Untuk ATmega8 tipe L, mikrokontroler

ini dapat bekerja dengan tegangan antara 2,7 - 5,5 V sedangkan untuk ATmega8

(39)

2.6 Bluetooth Module HC-05

Gambar 2.4 Bentuk Fisik Bluetooth HC-05

Bluetooth Module HC-05 merupakan module komunikasi nirkabel pada frekuensi

2.4 GHz dengan pilihan koneksi bisa sebagai slave, ataupun sebagai master.

Sangat mudah digunakan dengan mikrokontroler untuk membuat aplikasi

wireless. Interface yang digunakan adalah serial RXD, TXD, VCC dan GND.

Built in LED sebagai indikator koneksi bluetooth. Modul BT ini terdiri dari dua

jenis yaitu Master dan Slave. Seri modul BT HC bisa dikenali dari nomor serinya,

jika nomer serinya genap maka modul BT tersebut sudah diset oleh pabrik,

bekerja sebagai slave atau master dan tidak dapat diubah mode kerjanya, contoh

adalah HC-06-S. Modul BT ini akan bekerja sebagai BT Slave dan tidak bisa

diubah menjadi Master, demikian juga sebaliknya misalnya HC-04M. Default

mode kerja untuk modul BT HC dengan seri genap adalah sebagai Slave.

Sedangkan modul BT HC dengan nomer seri ganjil, misalkan HC-05, kondisi

default biasanya diset sebagai Slave mode, tetapi pengguna bisa mengubahnya

menjadi mode Master dengan AT Command tertentu.

Penggunaan utama dari modul BT ini adalah menggantikan komunikasi serial via

kabel, sebagai contoh:

1. Jika akan menghubungkan dua sistem mikrokontroler agar bisa

berkomunikasi via serial port maka dipasang sebuah modul BT Master

pada satu sistem dan modul BT Slave pada sistem lainnya. Komunikasi

(40)

Koneksi via bluetooth ini menyerupai komunikasi serial biasa, yaitu

adanya pin TXD dan RXD.

2. Jika sistem mikrokontroler dipasangi modul BT Slave maka ia dapat

berkomunikasi dengan perangkat lain semisal PC yang dilengkapi adapter

BT ataupun dengan perangkat ponsel, smartphone dan lain-lain

3. Saat ini banyak perangkat seperti printer, GPS modul dan lain-lain yang

bekerja menggunakan media bluetooth, tentunya sistem mikrokontroler

yang dilengkapi dengan BT Master dapat bekerja mengakses

device-device tersebut

Pemakaian module BT pada sistem komunikasi baik antar dua sistem

mikrokontrol maupun antara suatu sistem ke device lain tidak perlu menggunakan

driver, tetapi komunikasi dapat terjadi dengan dua syarat yaitu :

1. Komunikasi terjadi antara modul BT Master dan BT Slave, komunikasi

tidak akan pernah terjadi jika kedua modul sama Master atau

sama-sama Slave, karena tidak akan pernah pairing diantara keduanya

2. Password yang dimasukkan cocok

Modul BT yang banyak beredar di sini adalah modul HC-06 atau

sejenisnya dan modul HC-05 dan sejenisnya. Perbedaan utama adalah

modul HC-06 tidak bisa mengganti mode karena sudah diset oleh pabrik,

selain itu tidak banyak AT Command dan fungsi yang bisa dilakukan pada

modul tersebut. Diantaranya hanya bisa mengganti nama, baud rate dan

password saja.

Sedangkan untuk modul HC-05 memiliki kemampuan lebih yaitu bisa

diubah mode kerjanya menjadi Master atau Slave serta diakses dengan

lebih banyak AT Command, modul ini sangat direkomendasikan, terutama

(41)

2.7 Motor Stepper Unipolar

Gambar 2.5 Bentuk Fisik Motor Stepper Unipolar

Motor stepper adalah motor yang digunakan sebagai penggerak/pemutar.

Prinsip kerja motor stepper mirip dengan motor DC, sama-sama dicatu dengan

tegangan DC untuk memperoleh medan magnet. Bila motor DC memiliki magnet

tetap pada stator, motor stepper mempunyai magnet tetap pada rotor. Motor

stepper dinyatakan dengan spesifikasi : “berapa phasa “, “berapa derajat perstep”, “berapa volt tegangan catu untuk tiap lilitan” dan ”berapa ampere/miliampere arus yang dibutuhkan untuk tiap lilitan”. Motor stepper tidak dapat bergerak sendirinya, tetapi bergerak secara per-step sesuai dengan spesifikasinya, dan

bergerak dari satu step ke step berikutnya memerlukan waktu, serta menghasilkan

torsi yang besar pada kecepatan rendah. Motor stepper juga memiliki karakteristik

yang lain yaitu torsi penahan, yang memungkinkan menahan posisinya. Hal ini

sangat berguna untuk aplikasi dimana suatu sistem memerlukan keadaan start dan

stop (Syarkawi, 2007).

Motor stepper tidak merespon sinyal clock dan mempunyai beberapa

lilitan dimana lilitan-lilitan tersebut harus dicatu (tegangan) dahulu dengan suatu

urutan tertentu agar dapat berotasi. Membalik urutan pemberian tegangan tersebut

akan menyebabkan putaran motor stepper yang berbalik arah. Jika sinyal

kontrol tidak terkirim sesuai dengan perintah maka motor stepper tidak akan

berputar secara tepat, mungkin hanya akan bergetar dan tidak bergerak. Untuk

mengontrol motor stepper digunakan suatu rangkaian driver yang menangani

(42)

Karakteristik dari motor stepper menurut Trianto adalah sebagai berikut:

1. Tegangan

Tiap motor stepper mempunyai tegangan rata-rata yang tertulis pada tiap

unitnya atau tercantum pada datasheet masing-masing motor stepper.

Tegangan rata-rata ini harus diperhatikan dengan seksama karena bila

melebihi dari tegangan rata-rata ini akan menimbulkan panas yang

menyebabkan kinerja putarannya tidak maksimal atau bahkan motor

stepper akan rusak dengan sendirinya.

2. Resistansi

Resistansi per lilitan adalah karakteristik yang lain dari motor stepper.

Resistansi ini akan menentukan arus yang mengalir, selain itu juga akan

mempengaruhi torsi dan kecepatan maksimum dan motor stepper.

3. Derajat per step

Derajat per step adalah faktor terpenting dalam pemilihan motor stepper

sesuai dengan aplikasinya. Tiap-tiap motor stepper mempunyai spesifikasi

masing-masing, antara lain: 0.72° per step, 1.8° per step, 3.6° per step, 7.5°

per step, 15° per step, dan bahkan ada yang 90° per step. Dalam

pengoperasiannya kita dapat menggunakan 2 prinsip yaitu full step atau

half step. Dengan full step berarti motor stepper berputar sesuai dengan

spesifikasi derajat per stepnya, sedangkan half step berarti motor stepper

berputar setengah derajat per step dari spesifikasi motor stepper tersebut.

Motor stepper dibedakan menjadi dua kategori besar yaitu: magnet

permanen dan reluktansi variabel. Tipe magnet permanen terbagi menjadi dua

motor stepper yaitu motor stepper unipolar dan bipolar.

Motor stepper unipolar sangat mudah untuk dikontrol dengan menggunakan rangkaian counter „-n‟. Motor stepper unipolar mempunyai karakteristik khusus yaitu berupa lilitan center-tapped dan 1 lilitan sebagai

common. Lilitan common akan mencatu tegangan pada center-tapped dan sebagai

ground adalah rangkaian drivernya.

Motor stepper unipolar dapat dikenali dengan mengetahui adanya lilitan

(43)

koilnya. Umumnya pada motor stepper unipolar terdapat dua buah koil (Syarkawi,

2007).

Gambar 2.6 Susunan Koil Motor Stepper Unipolar

Tabel 2.1 Pola 1-Phase Putaran Motor Stepper Unipolar

Pada prinsipnya ada dua macam cara kerja motor stepper unipolar, yaitu full-step

dan half-step. Terlihat pada Tabel 2.2 dan Tabel 2.3

Tabel 2.2 Pemberian Tegangan Untuk Operasi Full-Step

FULLSTEP

Tegangan yang diberikan pada lilitan

Arah putar searah jarum jam Arah putar melawan jarum jam

L3 L2 L1 L0 L3 L2 L1 L0

1 1 0 0 0 0 0 0 1

2 0 1 0 0 0 0 1 0

3 0 0 1 0 0 1 0 0

(44)

Pada full step, suatu titik pada sebuah kutub magnet di rotor akan kembali

mendapat tarikan medan magnet stator pada lilitan yang sama setelah step ke 4,

dan berikutnya dapat diberikan lagi mulai dari step 1. Setiap step, rotor bergerak

searah atau berlawanan dengan jarum jam sebesar spesifikasi derajat per step dan

motor stepper. Setiap step hanya menarik sebuah kutub saja. Tegangan „1‟ adalah

menunjukkan logika dalam level Transistor Transistor Logic (TTL). Besar

tegangan sesungguhnya diatur dengan spesifikasi motor stepper yang dipakai,

misalnya dengan menggunakan buffer.

Tabel 2.3 Pemberian Tegangan Untuk Operasi Half-Step

HALFSTEP

Tegangan yang diberikan pada lilitan

Arah putar searah jarum jam Arah putar melawan jarum jam

L3 L2 L1 L0 L3 L2 L1 L0

berikutnya kembali mulai step 1. Setiap step posisi rotor berubah sebesar setengah

derajat dan spesifikasi derajat per step motor stepper.

Berbeda dengan motor stepper unipolar, motor stepper bipolar sangat sulit

dalam pengontrolannya. Motor stepper jenis ini memerlukan rangkaian driver

yang kompleks. Keuntungan motor stepper bipolar adalah ukurannya yang besar

(45)

stepper bipolar di desain dengan koil yang terpisah yang akan di catu dan dua arah

(polaritas harus dibalik selama pencatuan). Motor stepper bipolar menggunakan logika yang sama seperti motor stepper unipolar yaitu hanya „0‟ dan „1‟ untuk merespon koilnya.

2.7.1 Prinsip Kerja Motor Stepper

Prinsip kerja motor stepper adalah mengubah pulsa-pulsa input menjadi gerakan

mekanis diskrit. Oleh karena itu untuk menggerakkan motor stepper diperlukan

pengendali motor stepper yang membangkitkan pulsa-pulsa periodik.

Berikut ini adalah ilustrasi struktur motor stepper sederhana dan pulasa yang

dibutuhkan untuk menggerakkannya :

Gambar 2.7 Prinsip Kerja Motor Stepper Unipolar

Gambar diatas memberikan ilustrasi dari pulsa keluaran pengendali motor stepper

dan penerpan pulsa tersebut pada motor stepper untuk menghasilkan arah putaran

yang bersesuaian dengan pulsa kendali.

2.7.2 Driver Motor Stepper Unipolar

Secara teoritis, sebuah motor stepper dapat digerakkan langsung oleh

mikrokontroller (Syarkawi, 2007). Dalam kenyataannya, arus dan tegangan yang

dikeluarkan oleh mikrokontroller terlalu kecil untuk menggerakkan sebuah motor

stepper. Gerbang-gerbang Transistor Transistor Logic (TTL) mikrokontroller

hanya mampu mengeluarkan arus dalam orde mili-ampere dan tegangan antara 2

sampai 2,5 Volt. Sementara itu untuk menggerakkan motor stepper diperlukan

(46)

Volt. Untuk mengatasi masalah tersebut, diperlukan sebuah piranti tambahan yang

memenuhi kebutuhan arus dan tegangan yang cukup besar. Rangkaian driver motor stepper merupakan rangkaian “open collector”, dimana output rangkaian ini terhubung dengan ground untuk mencatu lilitan-lilitan motor stepper.

Gambar 2.8 Skema Rangkaian Driver Motor Stepper

Arus keluaran mikrokontroler tidak dapat menggerakkan motor stepper. Maka

diperlukan driver untuk mencatu arus motor stepper.

Motor stepper terdiri rotor dan stator yang bekerja berdasar sifat magnet,

dimana magnet sejenis tolak menolak dan yang berlawanan tarik menarik.

Kumparan pada stator membentuk medan magnet saat diberi arus, sehingga motor

yang menggunakan magnet akan bergerak untuk mencari kestabilan agar kutub

magnet bersesuaian dengan medan magnet yang terjadi. Arah puran motor stepper

ditentukan oleh arah urutan arus yang diberikan pada input motor stepper. Motor

stepper mempunyai 4 input dan satu input tegangan. Motor stepper dapat berputar

kekiri maupun kekanan sesuai dengan input yang diberikan. Untuk perputaran

kearah kiri dengan memberikan input ring counter dengan arah kekiri dan untuk

berputar kekanan dengan memberikan input ring counter dengan arah kekanan.

Motor stepper bergerak setiap satu langkah dengan besar sudut 1,8º jadi untuk

berputar satu putaran penuh membutuhkan 200 step. Dengan motor stepper kita

dapat memutar motor sesuai dengan yang diinginkan. Kecepatan motor stepper

juga dapat diubah sesuai dengan kebutuhan. Dengan mengubah waktu

(47)

2.8 Bahasa Pemograman C

Struktur bahasa pemograman C (Andrian, 2013):

1. Header File

Header File adalah berkas yang berisi prototype fungsi, definisi konstanta

dan definisi variable. Fungsi adalah kumpulan kode C yang diberi nama

dan

ketika nama tersebut dipanggil maka kumpulan kode tersebut dijalankan.

Contoh : stdio.h, math.h, conio.h

2. Preprosesor Directive

Preprosesor directive adalah bagian yang berisi pengikutsertaan file atau

berkas-berkas fungsi maupun pendefinisian konstanta.

Contoh: #include <stdio.h>, #include phi 3.14

3. Void

Void artinya fungsi yang mengikutinya tidak memiliki nilai kembalian

(return).

4. Main ( )

Fungsi main ( ) adalah fungsi yang pertama kali dijalankan ketika program

dieksekusi tanpa fungsi main suatu program tidak d apat dieksekusi namun dapat

dikompilasi.

5. Statement

Statement adalah instruksi atau perintah kepada suatu program ketika

program itu dieksekusi untuk menjalankan suatu aksi. Setiap statement

diakhiri

dengan titik-koma (;)

2.9 Code Vision AVR

Code Vision AVR pada dasarnya merupakan perangkat lunak

(48)

komponen penting yang telah diintegrasikan dalam perangkat lunak ini:

Compiler C, IDE dan Program generator. Berdasarkan spesifikasi yang

dikeluarkan oleh perusahaan pengembangnya, Compiler C yang digunakan

hampir mengimplementasikan semua komponen standar yang ada pada bahasa C

standar ANSI (seperti struktur program, jenis tipe data, jenis operator, dan library

fungsi standar-berikut penamaannya). Tetapi walaupun demikian, dibandingkan

bahasa C untuk aplikasi komputer, compiler C untuk microcontroller ini memiliki

sedikit perbedaan yang disesuaikan dengan arsitektur AVR tempat program C

tersebut ditanamkan (embedded). Khusus untuk library fungsi, disamping library

standar (seperti fungsi-fungsi matematik, manipulasi String, pengaksesan memori

dan sebagainya), CodeVisionAVR juga menyediakan fungsi-fungsi tambahan

yang sangat bermanfaat dalam pemrograman antarmuka AVR dengan perangkat

luar yang umum digunakan dalam aplikasi kontrol. Beberapa fungsi library yang

penting diantaranya adalah fungsi-fungsi untuk pengaksesan LCD, komunikasi

I2C, IC RTC (Real time Clock), sensor suhu LM75, SPI (Serial Peripheral

Interface) dan lain sebagainya. Untuk memudahkan pengembangan program

aplikasi, CodeVisionAVR juga dilengkapi IDE yang sangat user friendly Selain

menu-menu pilihan yang umum dijumpai pada setiap perangkat lunak berbasis

Windows, Code Vision AVR ini telah mengintegrasikan perangkat lunak

downloader (in system programmer) yang dapat digunakan untuk mentransfer

kode mesin hasil kompilasi kedalam sistem memori microcontroller AVR yang

sedang deprogram.

Code Vision AVR 1.2.4.9 adalah suatu kompiler berbasis bahasa C, yang

terintegrasi untuk memprogram dan sekaligus compiler aplikasi AVR (Alf and

Vegard‟s Risc processor) terhadap mikrokontroler dengan sistem berbasis

window. Code Vision AVR ini dapat mengimplematasikan hampir semua

interuksi bahasa C yang sesuai dengan arsitektur AVR, bahkan terdapat beberapa

keunggulan tambahan untuk memenuhi keunggulan spesifikasi dari Code Vision

AVR yaitu hasil kompilasi studio debugger dari ATMEL.

Integrated Development Environtment (IDE) telah diadaptasikan pada

chip AVR yaitu In-System Programmer software, memungkinkan programmer

(49)

assembly/kompilasi berhasil. In-System Programmer software didesign untuk

bekerja dan dapat berjalan dengan perangkat lunak lain seperti AVR Dragon,

AVRISP, Atmel STK500, dan lain sebagainya.

Disamping library standar C, Code Vision AVR C compiler memiliki

Code Vision AVR juga memiliki Code Wizard AVR sebagaki generator program

otomatis, yang memungkinkan kita untuk menulis, segala bentuk pengaturan Chip

dalam waktu singkat, dan semua kode yang dibutuhkan untuk

mengimplementasikan fungsi-fungsi seperti:

1. Pengaturan akses External Memory

Untuk chip-chip AVR yang memungkinkan koneksi memori eksternal SRAM,

dapat juga mengatur ukuran memori dan wait state (tahap tunggu) dari

memori ketika memori tersebut diakses.

2. Identifikasi chip reset source

Adalah suatu layanan dimana kita dapat membuat kode secara otomatis yang

dapat mengidentifikasi kondisi yang menyebabkan chip di reset.

3. Inisialisasi port input/output

Pengaturan port-port yang kan dijadikan gerbang masukan dan keluaran dapat

secara otomatis digenerate codenya. Yang kita lakukan hanya memilih

port-port yang akan digunakan sebagai input atau output.

4. Inisialisasi Interupsi external

Pengaturan interupsi eksternal yang nantinya akan digunakan untuk

menginterupsi program utama

5. Inisialisasi timers/counters

Pengaturan timers yang berfungsi untuk mengatur frekwensi yang nantinya

(50)

6. Inisialisasi timer watchdog

Pengaturan timers yang berfungsi untuk mengatur frekwensi yang nantinya

digunakan pada interupsi, sehingga interupsi akan dilayani oleh suatu fungsi

wdt_timeout_isr.

7. Inisialisasi UART(USART) dan komunuikasi serial

Pengaturan komunikasi serial sebagai penerima atau pengirim data.

8. Inisialisasi komparasi analog

Pengaturan yang berkaitan dengan masukan data yang digunakan dalam

aplikasi yang membutuhkan komparasi pada ADC nya.

9. Inisialisasi ADC

Pengaturan ADC(Analog-Digital Converter) yang berfungsi untuk merubah

format analog menjadi format digital untuk diolah lebih lanjut.

10.Inisialisasi antarmuka SPI

Pengaturan chip yang berkaitan dengan Clock rate, Clock Phase, dan lainnya.

11.Inisialisasi antarmuka Two Wire BUS

Pengaturan Chip yang berhubungan dengan pola jalur komunikasi antara

register yang terdapat pada chip AVR.

12.Inisialisasi antarmuka CAN

Pengaturan chip yang lebih kompleks, yang dapat mengatur interupsi,

transmisi data, timers, dan lainnya.

13.Inisialisasi sensor temperatur, thermometer, dan lainnya

Pengaturan yang berhubungan dengan sensor temperatur one wire bus,

memiliki fungsi-fungsi yang ada pada librari CodeVisionAVR.

14.Inisialisasi one wire bus

Pengaturan yang berhubungan dengan sensor temperatur yang memiliki

fungsi-fungsi yang ada pada librari CodeVisionAVR. Seperti Maxim/Dallas

Semiconductor.

15.Inisialisasi modul LCD

Pengaturan port-port yang kan digunakan sebagai penghubung dengan LCD

(51)

Contoh cara kerja sebelum melakukan pemograman di AVR, dimana contoh

disini adalah contoh pengaturan program agar mikrokontroler dapat

berkomunikasi dengan komputer:

a. Memilih project baru dan melakukan penyetingan komponen yang

digunakan pada board.

b. Pengaturan IC/Chip, pada chip yang kita harus dilakukan adalah IC

apa yang kita gunakan, dalam hal ini ATMEGA8535l dengan

Clock 16 MHz. Clock ini harus di atur dengan ukuran 16 MHz,

karena pada komponen oksilator yang digunakan sebesar 16 MHz.

c. Pengaturan ADC, pada ADC ini ada beberapa pilihan yang harus

dipilih. diantaranya ADC Enable di check list(v), Use 8 bit di

check list(v), high speed di check list (v) dan Volt Ref dipilih „AVCC PIN‟. AVCC PIN berguna sebagai referensi tegangan pada ADC untuk nilainya sebesar 5 volt.

d. Pengaturan USART, usart ini yang nantinya menghubungkan

rangkaian mikrokontroler dengan PC (komputer).

Langkah-langkah yang dilakukan dengan adanya pilihan Receiver di check

list(v) dan Transmitter di check list(v). Pengaturan receiver

berfungsi apakah serial itu sebagai penerima data, sedangkan

transmitter berfungsi serial bisa digunakan sebagai pengiriman

data.

Untuk lebih jelas tampilan pengaturan yang disediakan oleh AVR dapat

dilihat pada gambar dibawah ini :

(52)

Selain bentuk konfigurasi hadware yang nantinya secara otomatis akan

membentuk sebuah instruksi layaknya perintah program ke IC/Chip, adapula

perintah program yang kita ketik sendiri. Selain itu, Code Vision AVR juga

menyediakan sebuah tool yang dinamakan dengan Code Generator atau Code

Wizard AVR. Secara praktis, tool ini sangat bermanfaat membentuk sebuah

kerangka program (template), dan juga memberi kemudahan bagi programmer

dalam peng-inisialisasian register-register yang terdapat pada microcontroller

AVR yang sedang diprogram. Dinamakan Code Generator, karena perangkat

lunak CodeVision ini akan membangkitkan kode-kode program secara otomatis

setelah fase inisialisasi pada jendela Code Wizard AVR selesai dilakukan. Secara

teknis, penggunaan tool ini pada dasarnya hampir sama dengan application wizard

pada bahasa-bahasa pemrograman Visual untuk komputer (seperti Visual C,

Borland Delphi, dan sebagainya). Disamping versi yang komersil, Perusahaan

Pavel Haiduc juga mengeluarkan CodeVisionAVR versi Demo yang dapat

didownload dari internet secara gratis. Dalam versi ini, memori flash yang dapat

diprogram dibatasi maksimal 2K, selain itu tidak semua fungsi library yang

tersedia dapat dipanggil secara bebas. Seperti halnya belajar pemrograman

komputer, agar mendapatkan pemahaman yang kuat dalam pemrograman

microcontroller AVR, anda sebaiknya mencoba langsung membuat aplikasi

program pada microcontroller tersebut. Untuk tujuan latihan, perangkat lunak

Code vision AVR versi demo pada dasarnya adalah sarana yang cocok dan telah

cukup memenuhi kebutuhan minimal anda. Gambar 2.15 berikut memperlihatkan

diagram blok yang mengilustrasikan alur pemrograman microcontroller AVR

dengan Code vision AVR yang dapat anda lakukan :

(53)

Seperti terlihat pada gambar 2.10, Code vision AVR pada dasarnya telah

mengintegrasikan komponen-komponen penting dalam pemrograman

microcontroller AVR: Editor,Compiler C, assembler dan ISP (In System

Programmer). Khusus dengan ISP, ada beberapa jenis perangkat keras

programmer dongle (berikut papan pengembangnya) yang telah didukung oleh

perangkat lunak Code vision AVR ini, salah satu diantaranya adalah Kanda

System STK 200/300 produk Perusahaan Kanda yang terhubung pada saluran

antarmuka port Paralel Komputer.

2.10 Mikrokontroler AVR Dan Bahasa C

Tidak dapat disangkal, dewasa ini penggunaan bahasa pemrograman aras

tinggi (seperti C, Basic, Pascal dan sebagainya) semakin populer dan banyak

digunakan untuk memprogram sistem microcontroller. Berdasarkan sifatnya yang

sangat fleksibel dalam hal keleluasaan pemrogram untuk mengakses perangkat

keras, Bahasa C merupakan bahasa pemrograman yang paling cocok

dibandingkan bahasa-bahasa pemrograman aras tinggi lainnya.

Dikembangkan pertama kali oleh Dennis Ritchie dan Ken Thomson pada

tahun 1972, Bahasa C merupakan salah satu bahasa pemrograman yang paling

populer untuk pengembangan program-program aplikasi yang berjalan pada

sistem microprocessor (komputer). Karena kepopulerannya, vendor-vendor

perangkat lunak kemudian mengembangkan compiler C sehingga menjadi

beberapa varian berikut: Turbo C, Borland C, Microsoft C, Power C, Zortech C

dan lain sebagainya. Untuk menjaga portabilitas, compiler-compiler C tersebut

menerapkan ANSI C (ANSI: American National Standards Institute) sebagai

standar bakunya. Perbedaan antara compiler-compiler tersebut umumnya hanya

terletak pada pengembangan fungsi-fungsi library serta fasilitas IDE (Integrated

Development Environment)–nya saja. Relatif dibandingkan dengan bahasa aras

tinggi lain, bahasa C merupakan bahasa pemrograman yang sangat fleksibel dan

tidak terlalu terikat dengan berbagai aturan yang sifatnya kaku. Satu-satunya hal

yang membatasi penggunaan bahasa C dalam sebuah aplikasi adalah semata-mata

(54)

sebuah bilangan bulat (misal „2‟), dimana hal yang sama tidak mungkin dapat dilakukan dengan menggunakan bahasa aras tinggi lainnya. Karena sifatnya ini,

seringkali bahasa C dikatagorikan sebagai bahasa aras menengah (mid level

language).

Dalam kaitannya dengan pemrograman microcontroller, Tak pelak lagi

bahasa C saat ini mulai menggeser penggunaan bahasa aras rendah assembler.

Penggunaan bahasa C akan sangat efisien terutama untuk program microcontroller

yang berukuran relatif besar. Dibandingkan dengan bahasa assembler,

penggunaan bahasa C dalam pemrograman memiliki beberapa kelebihan berikut:

Mempercepat waktu pengembangan, bersifat modular dan terstruktur, sedangkan

kelemahannya adalah kode program hasil kompilasi akan relative lebih besar (dan

sebagai konsekuensinya hal ini terkadang akan mengurangi kecepatan eksekusi).

Khusus pada microcontroller AVR, untuk mereduksi konsekuensi negative diatas,

Perusahaan Atmel merancang sedemikian sehingga arsitektur AVR ini efisien

dalam mendekode serta mengeksekusi instruksi-instruksi yang umum

dibangkitkan oleh compiler C (Dalam kenyataannya, pengembangan arsitektur

AVR ini tidak dilakukan sendiri oleh perusahaan Atmel tetapi ada kerja sama

dengan salah satu vendor pemasok compiler C untuk microcontroller tersebut,

yaituI ARC). Seperti halnya compiler C untuk sistem microprocessor, di pasaran

ada beberapa varian compiler C untuk memprogram sistem microcontroller AVR.

Dengan beberapa kelebihan yang dimilikinya, saat ini Code Vision AVR produk

Perusahaan Pavel Haiduc merupakan compiler C yang relative banyak digunakan

dibandingkan compiler-compiler C lainnya. Bahasa C telah dikritisi secara

meluas, dan banyak orang dengan cepat menemukan masalahnya. Tapi sebagai

bahasa yang telah hadir, C tetap tak tersentuh. Code Vision AVR adalah salah

satu yang memanfaatkan keunggulan C dalam hal pemrograman mikrokontroler. Salah satu ungkapan menyatakan bahwa “jika kamu membuat perangkat lunak yang akan tetap layak suatu hari nanti, jangan belajar bahasa yang popular saat ini, pelajarilah C”. C tidak membatasi pandangan orang mengenai sebuah bahasa pemrograman. C tidak object oriented, tetapi kita dapat menerapkan konsep objek

oriented padanya. Bukan juga bahasa fungsional, tetapi kita dapat dapat

(55)

LISP dan skema interpreters-interpreters/kompiler-kompiler ditulis dengan

menggunakan C. kita dapat memproses list menggunakan C, meski tak semudah

menggunakan LISP. C juga memiliki fitur-fitur tambahan seperti rekursi, prosedur

sebagai tipe data kelas pertama, dan banyak lagi. Banyak orang yang merasakan

C kekurangan akan kemudahan seperti JAVA, atau C++. Padahal C adalah bahasa

yang sederhana. Tapi karena kesederhanaan ini dianggap kurang memadai

sehingga membuat C diadaptasi sebagai perkenalan pertama ke tahap bahasa

tingkat tinggi yang kompleks yang memungkinkan kita mengontrol dengan baik

apa yang kita program tanpa fitur yang disembunyikan. Compiler tidak akan

melakukan apapun sampai kita memerintahkan untuk melakukan sesuatu. Bahasa

yang ada adalah transparan, bahkan jika beberapa fitur dari JAVA seperti garbage

collection diikutsertakan pada implementasi C yang akan digunakan. Sebagai

bahasa pemrograman, C tetap ada. Ini adalah inti dari development dilingkungan

system operasi UNIX. Dan juga inti dari revolusi mikrokomputer, diantara C++,

Delphi, JAVA dan lainnya, C masih tetap bertahan,dengan karakteristiknya

(56)

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Perkembangan ilmu pengetahuan dan teknologi pada dewasa ini

mendorong manusia untuk terus melakukan inovasi-inovasi baru diberbagai

bidang. Pada dasarnya semakin berkembangnya ilmu pengetahuan dan teknologi

maka semakin berkembang juga pola dan gaya hidup manusianya.

Perkembangan teknologi salah satunya berpengaruh pada bidang

keamanan, hal ini terlihatdari kenyataan yang ada bahwa manusia membutuhkan

kemanan dan kenyamanan dari lingkungan sekitarnya seperti keamanan tempat

penyimpanan barang. Saat ini kita telah dapat menikmati begitu banyak alat

pengontrol keamanan yang penggunaannya ditujukan untuk memantau keamanan

lingkungan sekitarnya secara full time. Dengan pengembangan aplikasi

micorocontroller dan softwere yang ada maka penulis mencoba membuat suatu

alat yang mampu pengaman penyimpanan barang pada multi locker menggunakan

penyandian oleh android phone secara full time dari pencurian.

Penyandian melalui android untuk membuka dan menutup pintu locker

dan juga buzzer sebagai sumber suara jika terjadi kesalahan dalam penyandian.

Atas dasar pemikiran tersebut maka penulis mencoba membuat sebuah alat

yang mampu menyatukan fungsi kerja keduanya dengan demikaian diharapkan

alat yang mampu menyatukan fungsi kerja keduanya dengan demikian diharapkan

alat yang akan dirancang oleh penulis dapat lebih menyempurnakan system

pengamanan locker yang telah ada sebelumnya, maka dibuatlah tugas akhir

(57)

1.2 Rumusan Masalah

Permasalahan yang akan diselesaikan dari latar belakang diatas, maka penulis

merumuskan masalah perancangan multi locker. Diantaranya:

1. Bagaimana merancang system multi locker pintu dengan motor stepper.

2. Bagaimana merancang rangkaian pengendali sistem dan program agar

dapat bekerja dengan baik.

3. Bagaimana merancang rangkaian pengendali sistem dan program agar

dapat bekerja dengan baik.

1.3 Batasan Masalah

Untuk membatasi masalah-masalah yang ada maka pada Tugas Akhir ini

penulis membatasi ruang lingkup masalah sebagai berikut:

1. Rancangan menggunakan motor stepper sebagai penggerak mekanis multi

locker.

2. Rancangan menggunakan mikrokontroller ATmega 8 sebagai pengendali

utama dan pemrograman C pada code vision AVR versi 2.0.4.9.

3. Rancangan menggunakan media Bluetooth sebagai komunikasi antara

ponsel dengan rangkaian.

1.4 Tujuan Penelitian

Tujuan dilakukan tugas akhir ini adalah sebagai berikut:

1. Merancang system mekanis multi locker menggunakan motor stepper.

2. Merancang rangkaian Kontroler dan program untuk mengendalikan multi

locker via android.

3. Merancang algoritma penyandian atau password agar system multi locker

(58)

1.5 Manfaat Penelitian

Adapun manfaat yang diperoleh dari penelitian ini adalah:

1. Dengan menggunakan ponsel untuk mengakses sebuah locker pintu akan

menambah tingkat keamanan dari pintu tersebut.

2. Penggunaan lebih praktis dari system akses ponsel karena tidak perlu

membawa kunci konvensional.

3. Dapat dibuat multi locker yang dapat diakses hanya dengan satu ponsel.

1.6Metode Penelitian

Penelitian diawali dengan studi literature yakni mencari materi dalam buku

dan e-book tentang pengetahuan locker instrumentasi. Metode yang dilaksanakan

pada penelitian ini adalah metode eksperimen.

1.7Sistematika Penulisan

Untuk mengetahui uraian singkat yang memuat gambaran singkat secara

keseluruhan isi masing-masing bab, maka dibuat sistematika penulisan sebagai

berikut:

BAB I : PENDAHULUAN

Bab ini berisikan gambaran umum tentang penulisan skripsi

ini seperti hal-hal yang melatar belakangi penulisan skripsi

ini, rumusan maslah, batasan masalah, tujuan penelitian,

dan sitematika penulisan.

BAB II : DASAR TEORI

Bab ini berisikan tentang definisi-definisi dan teori-teori

yang berkaitan dengan skripsi ini yang di ambil dari

beberapa sumber, baik dari buku referensi, jurnal-jurnal

(59)

BAB III : METODOLOGI PENELITIAN

Bab bagian ini akan dibahas rincian metode penelitian

karakteritasi ATmega 8 sebagai pengendali multi locker,

diagram blog, dan flow chart.

BAB IV : HASIL DAN PEMBAHASAN

Bab ini akan dibahas tentang hasil analisa karakteritasi dari

ATmega 8 sebagai pengendali multi locker serta rangkaian

dan system kerja alat.

BAB V : KESIMPULAN DAN SARAN

Bab ini merupakan penutup yang meliputi kesimpulan dari

pembahasan dan tujuan penelitian beserta sebagai acuan

untuk dikembangkan pada penelitian yang akan datang.

(60)

PERANCANGAN SISTEM MULTI LOCKER DENGAN PENYANDIAN BERBASIS MIKROKONTROLER ATmega 8 MENGGUNAKAN

ANDROID PHONE

ABSTRAK

Telah dirancang suatu alat multi locker dengan penyandian berbasis mikrokontroler ATmega 8 menggunakan android phone. Alat ini terdiri dari mekanis pintu locker, motor stepper, android phone, buzzer, dan Bluetooth HC-05 yang berfungsi untuk mengirim password antara android ponsel dengan adapter Bluetooth yang akan digunakan sebgai system kendali dari jarak dekat maupun jauh. Softwere pada alat ini menggunakan bahasa pemrograman Bascom AVR. Alat ini digunakan untuk mempermudah penyimpanan dan meningkatkan system keamanan penyimpan barang. Prinsip kerja rangkaian secara umum adalah system minimum dihubungkan ke sumber tegangan PLN dengan menggunakan adaptor, Setelah system diaktifkan maka berdasarkan program yang diunduh pada IC mikrokontroller. Program akan menerima perintah dari user melalui ponsel android dengan jaringan Bluetooth HC-05. Ponsel akan mengirim kode password dari pengguna melalui android dengan Bluetooth modul HC-05 sebagai perantara dengan mikrokontroler. Jika password benar mikrokontroler akan menggerakkan motor untuk membuka atau mengunci locker.

Kata kunci: Locker, Mikrokontroler ATmega 8, Bluetooth HC-05, Android

(61)

LOCKER MULTI SYSTEM DESIGN WITH CODING USING MICROCONTROLLER ATmega 8 ANDROID PHONE

ABSTRACT

Has designed a multi tool locker with ATmega 8 microcontroller based encryption using android phone. This device consists of a mechanical door locker, stepper motors, android phone, buzzer, and Bluetooth HC-05 that serves to send a password between android phone with a Bluetooth adapter that will be used sebgai control system from near and far. Softwere on this instrument using Bascom AVR programming language. This tool is used to facilitate storage and improve system security storage of goods. The working principle of the circuit in general is the minimum system connected to a voltage source PLN by the adapter, after the system is activated then the downloaded program based on IC microcontroller. The program will accept commands from the user via android phone with Bluetooth network HC-05. The phone sends a password code from the user via android with HC-05 Bluetooth module as an intermediary by the microcontroller. If the password is correct microcontroller will drive the motor to open or lock locker.

(62)

PERANCANGAN SISTEM MULTI LOCKER DENGAN PENYANDIAN BERBASIS MIKROKONTROLER ATmega 8 MENGGUNAKAN

ANDROID PHONE

SKRIPSI

ROI SUGARA SIANIPAR 120801001

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

(63)

PERANCANGAN SISTEM MULTI LOCKER DENGAN PENYANDIAN BERBASIS MIKROKONTROLER ATmega 8 MENGGUNAKAN

ANDROID PHONE

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Sains

ROI SUGARA SIANIPAR 120801001

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

(64)

PERSETUJUAN

Judul : Perancangan Sistem Multi Locker Dengan Penyandian Berbasis Mikrokontroler Atmega 8 Menggunakan Android Phone Kategori : Skripsi

Nama : Roi Sugara Sianipar Nomor Induk Mahsiswa : 120801001

Program Studi : Sarjana (S1) Fisika Departemen : FISIKA

Fakultas : Matematika Dan Ilmu Pengetahuan Alam Universitas Sumatera Utara

Disetujui di Medan, Juni 2016

Komisi Pembimbing :

Pembimbing 2, Pembimbing 1,

(Drs. Takdir Tamba, M.Eng, Sc) (Dr. Bisman Perangin-angin M.Eng, Sc) NIP. 196006031986011002 NIP. 195609181985031002

Disetujui Oleh

Departemen Fisika FMIPA USU Ketua,

(65)

PERNYATAAN

PERANCANGAN SISTEM MULTI LOCKER DENGAN PENYANDIAN BERBASIS MIKROKONTROLER ATmega 8 MENGGUNAKAN

ANDROID PHONE

SKRIPSI

Saya mengakui bahwa ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan

dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Juni 2016

ROI SUGARA SIANIPAR

(66)

PENGHARGAAN

Segala Puji syukur penulis ucapkan kepada Allah Bapa atas segala berkat, kasih karunia dan penyertaan-Nya selama penulis melaksanakan studi hingga

menyelesaikan skripsi ini sesuai dengan waktu yang telah ditetapkan. Selama

kuliah sampai penyelesaian tugas akhir ini, penulis mendapatkan banyak bantuan

dalam moril, materi, dorongan, serta bimbingan dari berbagai pihak oleh karena

itu dengan sepenuh hati, penulis mengucapkan terimakasih yang

sebesar-besarnya:

1. Kepada Bapak Dr. Bisman Perangin-angin, M.Eng. Sc dan Bapak Drs. Takdir

Tamba, M.Eng. Sc selaku Dosen Pembimbing yang telah meluangkan waktu

untuk membimbing, mengarahkan dan memberikan kepercayaan kepada

penulis dalam melaksanakan penelitian hingga penyelesaian penulisan skripsi

ini.

2. Kepada Bapak Dr. Marhaposan Situmorang selaku Ketua Departemen Fisika,

dan Drs. Syahrul Humaidi, M,Sc selaku Sekretaris Departemen Fisika

FMIPA USU, Bang Johaidin, Kak Tini dan Kak Yuspa selakui staff

Departemen Fisika, seluruh dosen, staff dan pegawai Departemen Fisika

FMIPA USU yang telah membantu dan membimbing dalam menyelesaikan

skripsi ini. Dan juga kepada semua staff, pegawai dan dosen-dosen

Universitas Sumatera Utara mulai dari staff tertinggi hingga terendah dimana

penulis menimba ilmu selama ini.

3. Kepada kedua orang tua penulis, kepada Ayahanda tersayang H. Sianipar, ini

semua penulis persembahkan kepada Bapak penulis. Dan Ibunda Sinta

Sitompul yang telah mendidik dan membesarkan penulis. Yang menjadi

penyemangat dan inspirasi bagi penulis. Yang telah berjuang bersusah payah,

hingga penulis bisa melanjutkan studi dan menyelesaikan penulisan skripsi

ini serta memberikan dorongan, material, perhatian dan doa yang tak

(67)

4. Kepada abang dan kakak Penulis tercinta Renol Sianipar, Kristina Sianipar,

Alm. Natalina Sianipar, Natalia Sianipar, Rika Sianipar dan keluarga yang

telah memberikan dukungan, doa dan memberikan semangat kepada penulis.

5. Kepada teman-teman Seperjuangan PHYSIC ON FIRE (Fisika 2012) :

Andrianus Sembiring, Sulistra Simamora, Jekson Siahaan, Mutia Lubis, Ivan

Anggia Sitohang, Frisanto S, Cyndi Rointan P, Melpa Simamora, Zefanya

Pardosi, Santa Simanjuntak, Fransisco Purba, Marta Nainggolan, Komting,

Eni Sinaga, Wils O B, Rina Bukit, Franky S, Betaria Siahaan, Eko G T,

Sijabat, Eduardo Silalahi, Novia Ginting, Firman Lamsyah, M Taufik,

Rahmad S N, Kartika, Lyana, Sri hani, Leonardo.

6. Kepada teman-teman Asisten Laboratorium Elektronika Dasar : Zefanya

Pardosi, Benget Lasido Hutagaol, Frisanto Simbolon, Eni Indriani Sinaga atas

dukungan dan kerjasamanya selama ini.

dukungan dan doa dalam penulisan skripsi ini.

Penulis menyadari bahwa skripsi ini masih jauh dari sempurna, untuk itu

penulis mengharapkan saran dan kritik yang membangun demi penyempurnaan isi

dan analisa yang disajikan. Akhir kata, semoga tulisan ini bermanfaat bagi yang

(68)

PERANCANGAN SISTEM MULTI LOCKER DENGAN PENYANDIAN BERBASIS MIKROKONTROLER ATmega 8 MENGGUNAKAN

ANDROID PHONE

ABSTRAK

Telah dirancang suatu alat multi locker dengan penyandian berbasis mikrokontroler ATmega 8 menggunakan android phone. Alat ini terdiri dari mekanis pintu locker, motor stepper, android phone, buzzer, dan Bluetooth HC-05 yang berfungsi untuk mengirim password antara android ponsel dengan adapter Bluetooth yang akan digunakan sebgai system kendali dari jarak dekat maupun jauh. Softwere pada alat ini menggunakan bahasa pemrograman Bascom AVR. Alat ini digunakan untuk mempermudah penyimpanan dan meningkatkan system keamanan penyimpan barang. Prinsip kerja rangkaian secara umum adalah system minimum dihubungkan ke sumber tegangan PLN dengan menggunakan adaptor, Setelah system diaktifkan maka berdasarkan program yang diunduh pada IC mikrokontroller. Program akan menerima perintah dari user melalui ponsel android dengan jaringan Bluetooth HC-05. Ponsel akan mengirim kode password dari pengguna melalui android dengan Bluetooth modul HC-05 sebagai perantara dengan mikrokontroler. Jika password benar mikrokontroler akan menggerakkan motor untuk membuka atau mengunci locker.

Kata kunci: Locker, Mikrokontroler ATmega 8, Bluetooth HC-05, Android

Gambar

Gambar 3.2 Foto Alat dari Belakang
Gambar 3.5 Foto Pintu Locker 1 saat Terbuka
Gambar 3.7 Foto Pintu Locker 3 saat Terbuka
Gambar 3.10 Foto Pintu Locker 3 saat Tertutup
+7

Referensi

Dokumen terkait

Pembuatan alat adalah dengan observasi mengenai program chip Mikrokontroler ATMega 8 yang bersumber dari media internet dan dipadukan menjadi sebuah fungsi

Dalam metode pengujian alat meliputi pengujian rangkaian catu daya, rangkaian sistem minimum mikrokontroler ATmega 16 sebagai rangkaian pengendali, motor servo sebagai

SEPEDA MOTOR BERBASIS MIKROKONTROLER ATMEGA 16 MENGGUNAKAN RFID (Radio Frequency Indentification) ” dapat terwujudkan, yang digunakan sebagai salah satu persyaratan

APLIKASI SENSOR ULTRASONIK SRF 05 PADA ROBOT VACUUM CLEANER MENGGUNAKAN KENDALI ANDROID BERBASIS.. MIKROKONTROLER

Alat pendeteksi kerusakan IC berbasis mikrokontroler ATmega 8 merupakan alat pendeteksi ic mikrokontorler jenis AVR yang dibuat dengan sistem digital dan berfungsi

Penggunaan basis data dengan aplikasi Xampp untuk menyimpan indentitas unik dari pengguna locker sehingga kita dapat menerapkan teknologi RFID pada sistem keamanan

Menerapkan kontroler PI (Proporsional Integral) pada plant pengendalian suhu yang digunakan pada sistem pemanas bearing secara trial and error dengan mikrokontroler ATmega 8535

Maka dari itu, dirancang suatu peralatan instrumentasi berupa alat pendeteksi tingkat kekeruhan air pada kamar mandi berbasis mikrokontroler ATMega 8535 dengan menggunakan